-
Notifications
You must be signed in to change notification settings - Fork 269
Add new upstream routers #1728
Copy link
Copy link
Closed
Labels
Component: MainComposing the core Shadow executableComposing the core Shadow executableType: EnhancementNew functionality or improved designNew functionality or improved design
Milestone
Description
Each host currently has a "downstream" router object that accepts packets and applies CoDel on flows while modulating the flow of packets into the host's network interface. We want to create a similar "upstream" router object with the same sort of function for outgoing packets.
The scope of work for this issue is:
Upstream direction:
- The network interface checks with all sockets for data, creates packets according to the socket protocol, and sends them up to the upstream router.
- The upstream router finds the latency between the sending host and receiving host, and schedules the packet to arrive at the receiving host's downstream router.
Downstream direction:
- When the downstream router receives the packets, it functions the same way as now.
(This could be implemented as two router objects that don't care about if they are upstream or downstream routers, or it could be a single router objects that has separate functions for the upstream and downstream directions.)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Component: MainComposing the core Shadow executableComposing the core Shadow executableType: EnhancementNew functionality or improved designNew functionality or improved design