WebTP
Five-Month Plan
(till End-of-summer '2000)
by
Jeng, Wilson, Ye, and Yogesh
20 March, 2000.
Eventual Goal:
Show the performance difference
between Web/TCP and Web/WebTP
|
I. Roles of Individuals
Each person attacks a smaller sub-problem.
(a) Jeng's Focus: Congestion Control
-
Rate-based and window-based congestion control depending on transfer size
(interactive vs. non-interactive bulk)
-
Deliverable:
-
Modified Slow-Start based on bandwidth estimation
-
Simulation to show performance results
(c) Ye's Focus: Performance Analysis
-
Analytical study of TCP and RED performance. Treat TCP as a control
problem.
-
Deliverable:
-
Good congestion control algorithms
-
Good model for TCP
(b) Yogesh's Focus: Scheduler
-
Scheduler for scheduling different types of flows in WebTP
-
Deliverable:
-
User interface for instantiating scheduler
-
ns implementation of the scheduler
-
theoretical results such as delay bounds (optimistic)
(d) Wilson's Focus: Implementation
-
Lead and coordinate implementation efforts of various components.
This includes the software architecture and actual coding.
-
Deliverables:
-
A composable transport protocol where in-order delivery, reliability, and
duplicate removal can be turned on/off individually.
-
Demo Transfer a file over WebTP over the Internet
(e) David's Focus: Web Caching
-
Consistent and efficient Web Caching Algorithm
Summary of roles of each student:
Component
|
People
|
Demo (Browsers + Proxies)
|
Wilson
|
Interface exposed to Application Programmers
|
Everyone
|
Various Control Algorithms
|
Ye
|
Scheduler
|
Yogesh
|
Network Measurements / Congestion Control
|
Jeng
|
II. Execution Plan
1. Each person has 2 tasks:
-
Each individual has one relatively theoretical and specific sub-problem
to work on.
-
At the same time, everyone is reponsible for implementation of their own
module which requires each of us to learn (rougly) how a transport protocol
is implemented in UNIX.
2. Implementation Plan
Several types of implementation of WebTP are possible.
-
Ns version of WebTP to allow simulation and interaction with TCP
-
Skeleton WebTP over UDP (major features only, not optimized)
-
Detailed version of WebTP over UDP (still user level, no integrated
congestion control across different users and apps)
-
Full version of WebTP over IP directly (in-kernel, with integrated congestion
control)
(Note: Skeleton WebTP over UDP with major features such as Retransmission,
Packetization, and simple Congestion Control are feasible by the end of
summer. In-kernel implementation might not be worthwhile due to its
complexity. Most features can be implemented in user level.)
3. Implementation / Integration Schedule
Mar / April
|
May
|
June
|
July
|
mid-Aug |
Weekly (or even bi-weekly) learning sessions to understand TCP implementaion
in Linux
+
Design meetings to discuss our own software architecture
|
Data Structure and API Definition |
Implementation
+
Weekly Code Review Sessions |
Implementation
+
Weekly Code Review Sessions
+
Integration |
Major Features Done
+
Writing Demos |