Software Defined Naval Network for Satellite Communications (SDN-SAT) Sobhan Nazari, Pengyuan Du, Mario Gerla, Ceilidh Hoffmann, Jae H. Kim, Antonio Caponet Department of Computer Science, UCLA, USA
Outline Introduction Contribution SDN-SAT Framework Performance Evaluation Conclusion
Outline Introduction Contribution SDN-SAT Framework Performance Evaluation Conclusion
Introduction Naval Surface Fleet Communications Ship-to-ship, ship-to-shore, ship-to-aircraft Military or commercial satellite systems GEO LEO
Introduction Capacity is underutilized Current Shipboard Network Clients are served by a predefined satellite system Configuration is fixed at service routers Ship Capacity is underutilized Dynamic reconfiguration is limited (manual)
Contribution Software-Defined Networking framework for naval SATellite networks (SDN-SAT) Dynamic flow reallocation Multipath routing Quality of Service (QoS) Multipath TCP (MPTCP) Improved data transport via multiple paths Failover
Outline Introduction Contribution SDN-SAT Framework Performance Evaluation Conclusion
SDN-SAT Control plane SDN controller Shipboard SDN switch (supports flow tables) Control channels are embedded in satellite systems
SDN-SAT SDN controller Satellite controllers Resides on the ground or ship Uses satellite controllers to allocate resources Satellite controllers One dedicated controller for each SATCOM
SDN-SAT SDN Controller Architecture
SDN-SAT Data plane LAN SDN switch SATCOM channels Ship
SDN-SAT SDN-SAT Architecture
SDN-SAT Multipath TCP for SDN-SAT LAN users are allowed to maintain several subflows Possible even with one IP
Performance Evaluation Simulation setup Linux Ubuntu 14.04 Mininet emulator Floodlight remote controller Kernel MPTCP v0.90 Path manager: fullmesh, num_flows=2
Performance Evaluation Scenario
Performance Evaluation Multi path vs Single path Three satellite systems with 1.544Mbps, 1.544Mbps, 2.048Mbps, RTT=500ms
Performance Evaluation Multi path failover MPTCP with SDN The satellite system with 1.544Mbps fails
Performance Evaluation MPTCP with three paths on three satellites variable delays Equal path delay: 500ms Non-uniform delays 1: 500ms, 200ms, 100ms Non-uniform delays 2: 1000ms, 500ms, 200ms
Performance Evaluation Case 1. Three MPTCP sessions Case 2. Three single path TCP sessions
Conclusion SDN-SAT solution to Naval Satellite Communications Flexible configuration of satellite services Multipath transmission Multipath TCP Improve bandwidth utilization Automatic failover Future work Larger naval satellite network Resource allocation at SDN controller
Thanks! Q&A
Simulation Results Throughput of MPTCP without SDN
MPTCP Congestion Control Coupled congestion control [1] Goal 1. Be fair to other TCP Goal 2. Load balancing Goal 3. Compensate different RTTs across sub-flows [1]Raiciu, Costin, Damon Wischik, and Mark Handley. "Practical congestion control for multipath transport protocols." University College London, London/United Kingdom, Tech. Rep (2009). [2]Khalili, Ramin, et al. "MPTCP is not pareto-optimal: performance issues and a possible solution." Proceedings of the 8th international conference on Emerging networking experiments and technologies. ACM, 2012. [3] Peng, Qiuyu, Anwar Walid, and Steven H. Low. "Multipath TCP algorithms: theory and design." ACM SIGMETRICS Performance Evaluation Review41.1 (2013): 305-316.
Satellite SDN Architecture Bao, Jinzhen, et al. "OpenSAN: a software-defined satellite network architecture." ACM SIGCOMM Computer Communication Review. Vol. 44. No. 4. ACM, 2014.
Related Work High Bandwidth Delay Product TCP [1] Hybla Cubic Westwood Multipath TCP (MPTCP) [2] Improve throughput Soft handover [3] [1] Caini, Carlo, Rosario Firrincieli, and Daniele Lacamera. "Comparative performance evaluation of tcp variants on satellite environments." ICC. IEEE, 2009. [2] Ford, Alan, et al. Architectural guidelines for multipath TCP development. No. RFC 6182. 2011. [3] Paasch, Christoph, et al. "Exploring mobile/WiFi handover with multipath TCP." CellNet. ACM, 2012.
Related Work MPTCP is an extension to TCP which lets you use multiple paths simultaneously Path manager, scheduler To manage a Multipath TCP connection that uses several paths TCP subflows To transport data Congestion control To control congestion over multiple paths
MPTCP socket Multipath TCP TCP1 TCP2 TCPn ... Application Application Transport TCP1 TCP2 TCPn Network ... Datalink Physical
MPTCP Data transmission ABCDEF socket socket Multipath TCP Two levels of sequence numbers ABCDEF socket socket Multipath TCP Multipath TCP Data sequence # TCP1 TCP1 TCP1 sequence # TCP2 TCP2 sequence # TCP2
MPTCP in Satellite Network The idea in [1] The circled number 1-4 indicates the order of 4 handovers occurred to each sub-flow. [1] Du, Pengyuan, Xiao Li, You Lu, and Mario Gerla. "Multipath TCP over LEO satellite networks.“ IWCMC. IEEE, 2015.
MPTCP in Satellite Network On-demand Multipath Source Routing (OMSR) Distributed protocol => control overhead Lacks of inter-satellite signaling => route conflict Devise a more sophisticated scheme => onboard processing The circled number 1-4 indicates the order of 4 handovers occurred to each sub-flow. [1] Du, Pengyuan, Xiao Li, You Lu, and Mario Gerla. "Multipath TCP over LEO satellite networks.“ IWCMC. IEEE, 2015.
Motivation Replace OMSR with Software-defined Networking (SDN) [1] SDN splits the control and data plane Centralize the design logic Minimize onboard processing Easier computation of disjoint paths Contribution MPTCP+SDN framework for LEO system [1] Kreutz, Diego, et al. "Software-defined networking: A comprehensive survey." Proceedings of the IEEE 103.1 (2015): 14-76.