Skip to content

Add new upstream routers #1728

@robgjansen

Description

@robgjansen

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.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Component: MainComposing the core Shadow executableType: EnhancementNew functionality or improved design

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions