Traffic Engineering with Host-Based SDN
Software-defined networking (SDN) lets a centralized controller decide how traffic is forwarded and prioritized—for example, to avoid congestion or pass through a firewall. Conventional switch-based SDNs enforce these decisions through per-flow rules in switches. This provides fine-grained control, but can require hardware upgrades and places growing demands on limited switch flow-table memory.
Host-based SDNs move per-flow rule enforcement into endpoint software. However, controlling a host’s packets is not the same as controlling their path through the network. This project investigates how endpoints can provide traffic engineering using ordinary managed switches rather than SDN-capable hardware.
Our approach uses VLAN-specific spanning trees to provide alternative forwarding paths. The controller configures the switches’ VLANs and trunk ports, selects a path and VLAN for each flow, and installs corresponding rules at the endpoint. The endpoint agent matches outgoing packets and applies the selected VLAN tag; switches then forward the frames along that tree.
This separates per-flow decisions from switch forwarding: endpoints maintain fine-grained rules, while switches use existing VLAN functionality. Different tags can select different paths for the two directions of a connection, as illustrated. Header rewriting also enables traffic prioritization through the switches’ existing quality-of-service features.
Project resources: Paper (NoF 2020) — Best Paper Award · Original host-based SDN project at WPI.
Related Android SDN work: Connecting user-interface actions to network flows for context-aware access control. Journal version (IET Communications, 2025) · Conference version (NoF 2023).
Related endpoint-sensor verification: CHOSE (SecureComm 2019) correlates endpoint and network observations to detect missing or inconsistent sensor reports.