350 likes | 621 Views
OpenSession : SDN-Based session management Protocol for 3D Tele-immersion. Authors: Ahsan Arefin, Rehana Tabassum, Raoul Rivas, Klara Nahrstedt Presenter: Klara Nahrstedt CS 538, Fall 2014. 3D Tele-immersion (3DTI). Photo courtesy of Prof. Ruzena Bajcsy. 3D Tele-immersion ( 2 ).
E N D
OpenSession: SDN-Based session management Protocol for 3D Tele-immersion Authors: Ahsan Arefin, Rehana Tabassum, Raoul Rivas, Klara Nahrstedt Presenter: Klara Nahrstedt CS 538, Fall 2014
3D Tele-immersion (3DTI) Photo courtesy of Prof. Ruzena Bajcsy.
3D Tele-immersion (2) • Real-time Streaming Requirement • Multi-party Communication • 3D Multi-stream Dissemination C = camera A= microphone G = gateway R= renderer av display camera Internet Site -2 microphone microphone Site-1 camera R C av display C switch G A C P R C A G G switch
D C C UC Berkeley D G C G C D C G D C G D C D D UIUC G Multi-Party Communication Florida UC Davis Purdue C G service gateway D display camera
Current State • End-to-End Delay ~ 80 ms • Resource Consumption ~ 3-10mbps/stream • Advancements Mostly in Application Layer • Media Coding / Data Reduction • Efficient Reconstruction/ Rendering • No Support from Network Layer • Control Network in Run-time • Customize Network for Application
Software Defined Networking • Provides a programmable interface for network Network Controller • Lower Switch Overhead • Better Manageability • Flexible Control Traditional Switching Solution SDN-based Switching Solution
Research Question? Can we introduce a synergy between session and network layers so that application can drive network layer to support different application features to improve application performance? • What can we improve? • E2E delay • Resource Demand • Resource Utilization • Robustness • Many more …
3DTI Content Dissemination E S1A D Local Network S2A E gw-2 OpenFlow Switch S1A S2A D A gw-2 C S1A S1A S2A Internet Site-D B A Internet C S2A S1A S1A Internet Site-D Site-A Site-C S2A S1A B Internet Site-B S2A S1A Application node sends a stream if it generates the stream Application node receives a stream, if it requests the stream Site-A Site-C S2A S1A Site-B Saves Local Bandwidth Improves Resiliency
Challenges • Per-Stream Packet Differentiation • Map application overlay semantics to network layer • Use OpenFlow-defined fixed set of fields to match packets • Flow Table Optimality and Consistency • Multiple receivers of the same streams • Multiple concurrent 3DTI sessions
Challenges • Seamless View Change camera-2 camera-2 camera-1 camera-1 camera-1 camera-1 View Change By Site-C B A B A D D C C Add D-E Remove C-E Immersive users E Remove C-E Add D-E E 1) Overloading: Creating redundant path during view change 2) Dis-connectivity: Dropping all paths during view change
OpenSession • SDN to interact with network layer • Configure SDN-switch in run-time • Three layers of coordination • Global Session Controller (GSC) • Local Session Controller (LSC) • Network Controller (NC) • Orthogonal to any overlay algorithm GSC NC LSC Gateway Devices 3DTI Users
Per-Stream Differentiation • Add minimal number of rules into the switch C SRT Site-A C gw-2 Site-A gw-2 S1A S2A S1A S2A gSRT FT A A S1A @Gateway @Switch Site-C Site-C B Internet B Internet • Use match fields • Src_IP • IP ToS • Dst_Port Match Action S2A Forward to B Forward to C Site-B Site-B No Rules @Switch SRC_IP:IP ToS: DST_PORT Replace DST_IP, DST_MAC_ADDR 174.16.0.1:0000100:9876 174.16.0.1:0001000:9876
Cross-Layer Mapping SRT Site-C Site-D S1A = 1 LSC 192.168.10.13 LSC S2A = 2 Gateway Gateway S1B = 1 192.168.1.3 S2B = 2 Site-A Site-B LSC LSC SRT of B Gateway Gateway 192.168.1.2 192.168.5.6 gSRT FT Application Data Plane Network Data Plane
Seamless Route Update: Single Stream B E A B E A D C D C Gnew Gold Virtual Link B B B A A A E E E D D D C C C Packets generated from Site-A • Create rules to match packets with new signature • Update packet signature at the source switch • Use SRC_PORTto differentiate signature Source-Based Atomic Switch of Route
Route-Update: Single Stream C D D C D Drops S1A E E B B G A G A Mold Mnew F F Transform
Problem Formulation Intermediate Old New MoldSMintSMnewS Transform MoldSto MnewSso that the transformation process does not create any transient or intermediate: (1) bandwidth burst, and (2) network outage.
Seamless Route-Update Solution • Identify state(s) of each node in transformation No-Route Drop-Route E E E E E E E E Add-Route Keep-Route A Node Can be in Multiple States
Seamless Route-Update Solution • Identify state(s) of each node in transformation No-Route No Message Modify SRT (ΩSRT) Drop-Route E E E E E E E E E E E E E E E E Modify SRT, FT (ΩSRT_FT ) Add-Route Modify FT (ΩFT ) Keep-Route A Node Can be in Multiple States
Route-Update Order D Concurrent route update (Ω) C E Reply route update GSC Source route update D C B E G A B A G F F • Define DFT (Depth First Traversal) order of nodes • Create virtual links except at source node • Update source node with new signature
A Complete Example C D E B MoldS1A MnewS1A G A GoldS1A D C F E B G A F D Drops S1A GnewS1A Identify the current and new adjacency matrices
A Complete Example DFT order (i) Route Update Message State MnewS1A[i][j] MoldS1A[i][j] no-route C N/A ΩSRT_FT E add-route no-route N/A G ΩSRT_FT add-route F keep-route ΩSRT ΩFT B drop-route ΩFT A keep-route Identify the current and new adjacency matrices Identify the states of each vertex on the graph
A Complete Example 1 3 2 Order of messages D Concurrent route update C Reply route update E GSC Source route update B D C ΩSRTΩFT ΩSRT_FT G A E B A ΩFT G F F ΩSRT_FT GO BACK • Define SRC_PORT++ and DFT order of nodes • Update virtual link based on node state • Update source node FT with new SRC_PORTaction
Overhead of OpenSession Network Controller: FloodLight Switch Component: OpenFlow V1.0 • To measure controller overhead, we use cbenchtool • 1 switch at each user site, and • total participation of 10 users Packet_In processing without OpenSession = 241768 Packet_In processing with OpenSession = 225283 6%
Video Demo camera-2 camera-2 B camera-1 camera-1 camera-1 A camera-1 B A View Change By Site-C D C D C E E
Experimental Evaluation EED: 15 -20 ms BW: 2.1 Mbps/stream Office Network A C LSC NC Site-C Site-A INTERNET Gateway Campus Network Immersive Users c c Department Network c GSC Campus Network c … … … … c … … … … Site-D Site-B D c B c c 3D streams
A A C A C A C D B B B C D D D B Performance of OpenSession Site-D 22.17Mbps 8.58 Mbps 15.6% 15.89 ms Local Streams of Site-A Local Streams of Site-D Local Stream Bandwidth Remote Stream Bandwidth Network Delay Processing Overhead Relative Value (%) Site-B 22.36 Mbps 7.36 Mbps 19.53 ms 15.6% Local Streams of Site-B Local Streams of Site-C Local Stream Bandwidth Remote Stream Bandwidth Network Delay Processing Overhead
View Change Overhead View change latency=|Time of view change req. – Time of getting new streams| • OpenSession vs. No OpenSession • Max Overhead Latency ~ 50ms CDF View Change Latency (ms)
Summary of OpenSession We use OpenSession in 3D Tele-immersion to improve • End-to-end Interactive Latency • Network Resource Utilization • View Change Experience OpenSession enables a synergy between session and network layers so that application can drive network layer to support different application features
Route Update for Multi-stream s1B s1B B B B B s1A s1A s2B A A s2B A A s2B s2B C C C C S1Y C C s1A s1B C C S1Y S1X D D D D Gold Gnew Gold Gnew S1X Gnew Gnew Gold Gold Dependent Route Updates Find sequence of streams to perform multi-stream route-updates to minimize bandwidth overloading at the participating sites
Multi-stream Route Update Algorithm 2 4 1 3 Identify route update dependencies Concurrent processing for independent route updates Compute score for each route update in current overlay Route update of stream with the lowest score in the set {S1B} B B {S2C} {S1B} {S2C} A A {S2B} {S2A} {S2A, S1C} {S1C} {S1A} C C {S1A, S2B} D D Score(S2B) = 0 Score(S2A) = 0 S1B S1A S1C Score(S1C) = 1 Score(S1A) = 1 S2B S2A S2C
Multi-stream Route Update C C C C S1Y S1Y S1X Sufficient Condition: if a site drops (adds) forwarding (receiving) of SiX, it does not add (drop) forwarding (receiving) of SjYin the same route update process for any iand j where X != Y. S1X Overlay Route Update Constraints Perform Route Update of All Modified Streaming Paths in Parallel
Challenges • Multi-rate Guarantee SRT (Session Routing Table) A Forwarding Rate Match Field Forwarding Action Site-1 20 Application frame rate Network packet rate 2 packets/sec 1 frames/sec 15 10 20 2 packets/sec 0 frames/sec Frames Packets Site-2 15 Hard to detect frame boundary in switches B Scalability for multi-level forwarding Low overhead in updating switch rules 10 12