Mul$path Networking OpenFlow and MPTCP Friend or Foe? Benno Overeinder, Ronald van der Pol, SURFnet
The Problem (or Challenge) Mul;path networking for resilience (think of mul;- homing) for load balancing and u;liza;on for speed (bundling paths for bandwidth) In Mul;path Networking RoN project combine layer 2 and layer 4 mul;path networking: OpenFlow & MPTCP study interac;on of OpenFlow load balancing and MPTCP conges;on
Layer 2 Mul$path: OpenFlow OpenFlow SDN protocol to control the forwarding behavior of Ethernet switches header fields counter ac$on priority if ingress port == 2 drop packet 32768 if IP_addr == 129.79.1.1 rewrite to 10.0.1.1, forward port 3 32768 if Eth_addr == 00:34:88: add VLAN id 110, forward port 2 32768 if ingress port == 4 forward port 5, 6 32768 if Eth_type == ARP forward CONTROLLER 32768 if ingress port == 2 && Eth_type == ARP forward NORMAL 40000
Layer 4 Mul$path: MPTPC Mul;path TCP use several IP addresses/interfaces simultaneously balance data traffic across subflows offer regular TCP interface to applica;on Applica;on Applica;on Transport Network Data link Physical socket Mul;path TCP TCP1 TCP2... TCPn
OPENFLOW LOAD BALANCING
OLiMPS OpenFlow Controller CERN/Caltech project by Michael Bredel OLiMPS is based on FloodLight OpenFlow controller OLiMPS Pathfinder and Mul;path Forwarding calculate mul;ple link- disjoint paths per flow mul;- pathing reac;ve flow handling
OLiMPS Flow Load Balancing Reac;ve flow handling (cont d) new flow new path calcula;on flows are mapped to capacity weighted paths flow rules are pushed to all switches on the paths On the roadmap intelligent path selec;on, e.g. based on measurements in- network load balancing QoS policies, e.g. rate limits per path
MPTCP LOAD BALANCING
Evolu$on of Conges$on Control Cwnd Fast retransmit Fast retransmit Threshold Threshold Slow- start exponen;al increase of cwnd Conges;on avoidance linear increase of cwnd Time
Conges$on Control for MPTCP Naive approach with independent conges;on windows Threshold Threshold Threshold
Independent Conges$on Windows Problem 12Mbps
MPTCP Conges$on Control Split traffic equally among all subflows MPTCP conges;on control 12Mbps addi;ve increase 12Mbps mul;plica;ve decrease 12Mbps max( cwnd i (rtt cwin r = cwin r + min( i ) ) 2, cwnd ( i ) 2 rtt i for each loss on path r, cwin r =cwin r /2 i 1 cwnd r ) D. Wischik, C. Raiciu, A. Greenhalgh, and M. Handley, Design, implementa;on and evalua;on of conges;on control for mul;path TCP, NSDI'11: Proceedings of the 8th USENIX conference on Networked systems design and implementa;on, 2011.
FRIEND OR FOE?
OpenFlow and MPTCP Load Balancing OLiMPS flow load balancing reac;ve flow handling new flow new path calcula;on, proac;ve flow handling measurement, load balancing, QoS, MPTCP conges;on control reac;ve adapts to available bandwidth and (disjoint) paths
OpenFlow and MPTCP Load Balancing (cont d) Both mechanisms do influence each other MPTCP conges;on OLiMPS measurements, etc. OLiMPS flow handling MPTCP subflow conges;on Mechanisms act on different ;mescales Study interplay between both mechanisms OLiMPS WAN management of OpenFlow islands (connected by non- OpenFlow switches) MPTCP conges;on control high bandwidth inter- con;nental fibers elephant flows
OPENFLOW MPTCP TNC 2013 DEMO
StarLight, Chicago USLHCnet MAN LAN, New York ESnet The Good Gbit/s 20 15 10 Live demo near the Expo Foyer MPTCP throughput over two 10GE paths ACE OpenFlow Controller transatlantic 100G SURFnet, Internet2, NORDUnet, ESnet, CANARIE, GEANT SURFnet7 NetherLight, Amsterdam USLHCnet SURFnet7 5 11:40:40 11:40:50 11:41:00 11:41:10 11:41:20 3x 40GE TNC, Maastricht Partners:
The Bad But Fun!
Christoph Paasch - Université Catholique de Louvain (Belgium) Jim Chen, Joe Mambretti icair (USA) are increasing rapidly in size and number. A single 10G path is not sufficient anymore. In are using a combination of 10G and 100G The WAN links and Ugly multiple 40GE NICs in the erred from Maastricht to Chicago over all available paths simultaneously. Several Pica8 e placed in the network. The OpenFlow controller discovers the topology of the network es between the switches and an OpenFlow application calculates and configures multiple vers. Multipath TCP (MPTCP) is used to distribute the load across all paths. MPTCP uses each path and takes care of sending traffic on the least congested paths. StarLight, Chicago USLHCnet MAN LAN, New York ESnet ACE transatlantic 100G SURFnet, Internet2, NORDUnet, ESnet, CANARIE, GEANT NetherLight, Amsterdam USLHCnet ar the Expo Foyer Problems with Internet2 ESnet link OpenFlow Controller
Status & Outlook 2013Q1- Q2 MPTCP & OpenFlow testbed opera;onal testbed Amsterdam Geneva TNC2013 testbed Maastricht Chicago 2013Q3- Q4 test OLiMPS OpenFlow load balancing study interplay OpenFlow MPTCP load balancing evaluate (and develop?) alterna;ve conges;on control mechanisms for elephant flows on dedicated paths