Using SCTP to Improve QoS and Network Fault- Tolerance of DRE Systems OOMWorks LLC BBN Technologies LM ATL Metuchen, NJ Cambridge, MA Camden, NJ Yamuna.

Slides:



Advertisements
Similar presentations
By: Saba Ahsan Supervisor: Prof. Jörg Ott
Advertisements

CE363 Data Communications & Networking Chapter 7 Network Layer: Internet Protocol.
Giảng viên : Ts. Lê Anh Ngọc Học viên: Trịnh Hồng Điệp Nguyễn Minh H ư ớng 1.
IPv4 - The Internet Protocol Version 4
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
SCTP v/s TCP – A Comparison of Transport Protocols for Web Traffic CS740 Project Presentation by N. Gupta, S. Kumar, R. Rajamani.
Camarillo / Schulzrinne / Kantola November 26th, 2001 SIP over SCTP performance analysis
Transmission Control Protocol (TCP)
Guide to TCP/IP, Third Edition
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli University of Calif, Berkeley and Lawrence Berkeley National Laboratory SIGCOMM.
TCP/IP Protocol Suite 1 Chapter 13 Upon completion you will be able to: Stream Control Transmission Protocol Be able to name and understand the services.
Stream Control Transmission Protocol Special thanks to Dr. Paul Amer Presented by – Viren Mahajan November 20, 2007.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
Stream Control Transmission Protocol 網路前瞻技術實驗室 陳旻槿.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
1 K. Salah Module 6.1: TCP Flow and Congestion Control Connection establishment & Termination Flow Control Congestion Control QoS.
1 Summer Report Reporter : Yi-Cheng Lin Data: 2008/09/02.
1 © 2005 Cisco Systems, Inc. All rights reserved. Cisco Public IP Telephony Introduction to VoIP Cisco Networking Academy Program.
Process-to-Process Delivery:
1 Transport Layer Computer Networks. 2 Where are we?
TELE202 Lecture 9 Internet Protocols (1) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »Congestion control »Source: chapter 12 ¥This Lecture »Internet.
Presentation on Osi & TCP/IP MODEL
Experiences in Design and Implementation of a High Performance Transport Protocol Yunhong Gu, Xinwei Hong, and Robert L. Grossman National Center for Data.
Adaptive Failover Mechanism Motivation End-to-end connectivity can suffer during net failures Internet path outage detection and recovery is slow (shown.
BBN Technologies Craig Rodrigues Gary Duzan QoS Enabled Middleware: Adding QoS Management Capabilities to the CORBA Component Model Real-time CCM Meeting.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
TCP Throughput Collapse in Cluster-based Storage Systems
1 Using Quality Objects (QuO) Middleware for QoS Control of Video Streams BBN Technologies Cambridge, MA Craig.
TCP/IP Essentials A Lab-Based Approach Shivendra Panwar, Shiwen Mao Jeong-dong Ryoo, and Yihan Li Chapter 5 UDP and Its Applications.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 29 – Buffer Management (Part 2) Klara Nahrstedt Spring 2012.
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
CS332, Ch. 26: TCP Victor Norman Calvin College 1.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Transport Layer: UDP, TCP
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 21 – Case Studies for Multimedia Network Support (Layer 3) Klara Nahrstedt Spring 2009.
1 Applying Adaptive Middleware, Modeling, and Real-Time CORBA Capabilities to Ensure End-to- End QoS Capabilities of Video Streams BBN Technologies Cambridge,
03/11/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Streaming 1.
Considerations of SCTP Retransmission Delays for Thin Streams Jon Pedersen 1, Carsten Griwodz 1,2 & Pål Halvorsen 1,2 1 Department of Informatics, University.
4.1.4 multi-homing.
1 Component-Based Dynamic QoS Adaptation Praveen Sharma, George Heinman, Joseph Loyall, Prakash Manghwani, Matthew Gillen, Jianming Ye, Krishnakumar Balasubramanian.
1 BBN Technologies Quality Objects (QuO): Adaptive Management and Control Middleware for End-to-End QoS Craig Rodrigues, Joseph P. Loyall, Richard E. Schantz.
SCTP: A new networking protocol for super-computing Mohammed Atiquzzaman Shaojian Fu Department of Computer Science University of Oklahoma.
Teacher:Quincy Wu Presented by: Ying-Neng Hseih
Ph.D Unurkhaan Esbold, Computer Science and Management School, Mongolian University of Science and Technology “InfoSec Mongolia 2006” conference, Ulaanbaatar,
Networks, Part 2 March 7, Networks End to End Layer  Build upon unreliable Network Layer  As needed, compensate for latency, ordering, data.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
Peer-to-Peer Networks 13 Internet – The Underlay Network
Performance Evaluation of L3 Transport Protocols for IEEE (2 nd round) Richard Rouil, Nada Golmie, and David Griffith National Institute of Standards.
2: Transport Layer 11 Transport Layer 1. 2: Transport Layer 12 Part 2: Transport Layer Chapter goals: r understand principles behind transport layer services:
Ch 3. Transport Layer Myungchul Kim
SCTP (Stream Control Transmission Protocol) Chanmin Park ( 박 찬 민 ) CARES lab.
Ch23 Ameera Almasoud 1 Based on Data Communications and Networking, 4th Edition. by Behrouz A. Forouzan, McGraw-Hill Companies, Inc., 2007.
4.1.5 multi-homing.
Long-haul Transport Protocols
Transport Protocols over Circuits/VCs
SCTP v/s TCP – A Comparison of Transport Protocols for Web Traffic
Transport Layer Unit 5.
SCTP: Stream Control Transport Protocol
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Stream Control Transmission Protocol (SCTP)
SCTP-based Middleware for MPI
27/02/2019 Improving retransmission delays for thin streams Andreas Petlund Simula Research Laboratory and University of Oslo Andreas Petlund 2007.
ITIS 6167/8167: Network and Information Security
Computer Networks Protocols
Presentation transcript:

Using SCTP to Improve QoS and Network Fault- Tolerance of DRE Systems OOMWorks LLC BBN Technologies LM ATL Metuchen, NJ Cambridge, MA Camden, NJ Yamuna Krishnamurthy Craig Rodrigues Gautam Thaker Irfan Pyarali Prakash Manghwani Real-Time and Embedded Systems Workshop July 12-15, 2004 Reston, Virginia, USA

Transport Protocol Woes in DRE Systems UDPTCP Unreliable data deliveryNon-Deterministic Congestion control Unordered data delivery No control over key parameters like retransmission timeout No Network Fault-Tolerance

IP based transport protocol originally designed for telephony signaling SCTP supports features found to be useful in TCP or UDP –Reliable data transfer (TCP) –Congestion control (TCP) –Message boundary conservation (UDP) –Path MTU discovery and message fragmentation (TCP) –Ordered (TCP) and unordered (UDP) data delivery Additional features in SCTP –Multi-streaming: multiple independent data flows within one association –Multi-homed: single association runs across multiple network paths –Security and authentication: checksum, tagging and a security cookie mechanism to prevent SYN-flood attacks Multiple types of service –SOCK_SEQPACKET – message oriented, reliable, ordered/unordered –SOCK_STREAM – TCP like byte oriented, reliable, ordered –SOCK_RDM – UDP like message oriented, reliable, unordered Control over key parameters like retransmission timeout and number of retransmissions Stream Control Transport Protocol (SCTP)

Integration of SCTP in DRE Systems Issues with integrating SCTP directly –Possible re-design of the system –Accidental and Incidental errors –Evolving API –Multiple SCTP implementations Solution –Integrate SCTP via COTS Middleware –SCTP was added as a Transport Protocol for GIOP messages (SCIOP) –OMG TC Document mars/ Bound recovery time of CORBA objects after a network failure –SCTP was added as a Transport Protocol to CORBA Audio/Video Streaming Service Proof of concept: Integration of SCTP in UAV Application –UAV is a reconnaissance image data streaming DRE application

Distributed UAV Image Dissemination Mission Requirements Command/Control Require high fidelity imagery Piloting Requires an out-of-the-window view of imagery Surveillance Must not lose any important imagery CPU management Scheduling Reservation CPU management Scheduling Reservation Network management Diffserv Reservation Network management Diffserv Reservation Data management Filtering Tiling, compression Scaling Data management Filtering Tiling, compression Scaling Load balancing Migrating tasks to less loaded hosts Load balancing Migrating tasks to less loaded hosts Adaptation Strategies

CORBA AVStreams Overview StreamCtrl –controlling the stream MMDevice –interface for logical or physical device StreamEndPoint –network specific aspects of a stream Vdev –properties of the stream

AVStreams Pluggable Protocol Framework SCTP added as a transport protocol

Experiments

Protocol Analysis and Comparisons Several different experiments were performed –Paced invocations –Throughput tests –Latency tests Several different protocols were used –TCP based IIOP -ORBEndpoint iiop://host:port –UDP based DIOP -ORBEndpoint diop://host:port –SCTP based SCIOP -ORBEndpoint sciop://host1+host2:port

Primary Configuration Both links are up at 100 Mbps 1 st link has 1% packet loss Systematic link failures –Up 4 seconds, down 2 seconds –One link is always available Host configuration –RedHat 9 with OpenSS7 SCTP in kernel (BBN-RH9-SS7-8) –RedHat 9 with LKSCTP in kernel (BBN-RH9-LKSCTP-3) –Pentium III, 850 MHz, 1 CPU, 512 MB RAM –ACE+TAO+CIAO version –gcc version 3.2.2

Secondary Configuration Results as expected: –Roundtrip latency about doubled –Throughput more or less the same –Little effect on paced invocations SCTP failures on Distributor –Maybe related to 4 network cards –Maybe related to the inability to specify addresses for local endpoints Sender, Distributor, and Receiver were normal CORBA applications Similar results were also obtained when AVStreaming was used to transfer data between these components

Modified SCTP Parameters ParameterDefaultOpenSS7LKSCTP RTO initial RTO min RTO max Heartbeat interval30110 SACK delay max2000? Path retrans max500 Association retrans max1025 Initial retries825 LKSCTP was less reliable, had higher latency and lower throughput relative to OpenSS7 in almost every test Also had errors when sending large frames

Paced Invocations Emulating rate monotonic systems and audio/visual applications Three protocols: IIOP, DIOP, SCIOP Frame size was varied from 0 to 64k bytes –DIOP frame size was limited to a maximum of 8k bytes Invocation Rate was varied from 5 to 100 Hertz IDL interface –one-way void method(in octets payload) Experiment measures –Maximum inter-frame delay at the server –Number of frames that were received at the server

Protocol = DIOP, Experiment = Paced Invocations Network = Both links are up Since network capacity was not exceeded, no DIOP packets were dropped Cannot measure missed deadlines when using DIOP because the client always succeeds in sending the frame, though the frame may not reach the server

Protocol = DIOP, Experiment = Paced Invocations Network = Both links are up Very low inter-frame delay DIOP good choice for reliable links Also good when low latency is more desirable then reliable delivery Drawback: Frame size limited to about 8k

Protocol = IIOP, Experiment = Paced Invocations Network = Both links are up Under normal conditions, no deadlines were missed

Protocol = IIOP, Experiment = Paced Invocations Network = Both links are up Very low inter-frame delay IIOP good choice in most normal situations

Protocol = SCIOP, Experiment = Paced Invocations Network = Both links are up Under normal conditions, very comparable to DIOP and IIOP

Protocol = SCIOP, Experiment = Paced Invocations Network = Both links are up Under normal conditions, very comparable to DIOP and IIOP

Summary of Experiments under Normal Network Conditions Under normal conditions, performance of DIOP, IIOP, and SCIOP is quite similar No disadvantage of using SCIOP under normal conditions

Protocol = DIOP, Experiment = Paced Invocations Network = 1% packet loss on 1st link Packet loss introduced at Traffic Shaping Node causes frames to be dropped 1% to 7% frames were dropped – higher loss for bigger frames

Protocol = DIOP, Experiment = Paced Invocations Network = 1% packet loss on 1st link Increase in inter-frame delay due to lost frames Slowest invocation rate has highest inter-frame delay

Protocol = IIOP, Experiment = Paced Invocations Network = 1% packet loss on 1st link Packet loss did not have significant impact on smaller frames or slower invocation rates since there is enough time for the lost packets to be retransmitted Packet loss did impact larger frames, specially the ones being transmitted at faster rates – 6% of 64k bytes frames at 100 Hz missed their deadlines

Protocol = IIOP, Experiment = Paced Invocations Network = 1% packet loss on 1st link IIOP does not recover well from lost packets 720 msec delay for some frames (only 13 msec under normal conditions)

Protocol = SCIOP, Experiment = Paced Invocations Network = 1% packet loss on 1st link SCIOP was able to use the redundant link during packet loss on the primary link No deadlines were missed

Protocol = SCIOP, Experiment = Paced Invocations Network = 1% packet loss on 1st link Inter-frame delay in this experiment is very comparable to the inter-frame delay under normal conditions (26 msec vs. 14 msec)

Summary of Experiments under 1% packet loss on 1 st link Client was able to meet all of its invocation deadlines when using SCIOP DIOP dropped up to 7% of frames IIOP missed up to 6% of deadlines

Protocol = DIOP, Experiment = Paced Invocations Network = Systemic link failure Link was down for 33% of the time 33% of frames were dropped

Protocol = DIOP, Experiment = Paced Invocations Network = Systemic link failure Link was down for 2 seconds Inter-frame delay was about 2 seconds

Protocol = IIOP, Experiment = Paced Invocations Network = Systemic link failure Link failure has significant impact on all invocation rates and frame sizes Impact is less visible for smaller frames at slower rates because IIOP is able to buffer packets thus allowing the client application to make progress Up to 58% deadlines are missed for larger frames at faster rates

Protocol = IIOP, Experiment = Paced Invocations Network = Systemic link failure IIOP does not recover well from temporary link loss Maximum inter-frame delay approaching 4 seconds

Protocol = SCIOP, Experiment = Paced Invocations Network = Systemic link failure SCIOP was able to use the redundant link during link failure No deadlines were missed

Protocol = SCIOP, Experiment = Paced Invocations Network = Systemic link failure Inter-frame delay never exceeded 40 msec

Summary of Experiments under Systemic link failure Client was able to meet all of its invocation deadlines when using SCIOP DIOP dropped up to 33% of frames IIOP missed up to 58% of deadlines

Throughput Tests Emulating applications that want to get bulk data from one machine to another as quickly as possible Two protocols: IIOP, SCIOP –DIOP not included because it is unreliable Frame size was varied from 1 to 64k bytes Client was sending data continuously IDL interface –one-way void method(in octets payload) –void twoway_sync() Experiment measures –Time required by client to send large amount of data to server

Experiment = Throughput Network = Both links are up IIOP peaks around 94 Mbps SCIOP is up to 28% slower for smaller frames SCIOP is able to utilize both links for a combined throughput up to 122 Mbps

Experiment = Throughput Network = 1% packet loss on 1st link 1% packet loss causes maximum IIOP bandwidth to reduce to 87 Mbps (8% drop) IIOP outperforms SCIOP for smaller frames SCIOP maintains high throughput for larger frames, maxing out at 100 Mbps

Experiment = Throughput Network = Systemic link failure Link failure causes maximum IIOP throughput to drop to 38 Mbps (60% drop) SCIOP outperforms IIOP for all frame sizes SCIOP maxes out at 83 Mbps

Latency Tests Emulating applications that want to send a message and get a reply as quickly as possible Two protocols: IIOP, SCIOP –DIOP not included because it is unreliable Frame size was varied from 0 to 64k bytes Client sends data and waits for reply IDL interface –void method(inout octets payload) Experiment measures –Time required by client to send to and receive a frame from the server

Experiment = Latency Network = Both links are up Mean IIOP latency comparable to SCIOP For larger frames, maximum latency for SCIOP is 15 times maximum latency for IIOP

Experiment = Latency Network = 1% packet loss on 1st link 1% packet loss causes maximum IIOP latency to reach about 1 second SCIOP outperforms IIOP for both average and maximum latencies for all frame sizes

Experiment = Latency Network = Systemic link failure Link failure causes maximum IIOP latency to reach about 4 seconds SCIOP outperforms IIOP for both average and maximum latencies for all frame sizes

Experiments Summary PACED INVOCATIONS DIOPIIOPSCIOP Maximum Delay (msec) Dropped Frames (%) Maximum Delay (msec) Missed Deadlines (%) Maximum Delay (msec) Missed Deadlines (%) Normal Conditions % Packet Loss Link Failure THROUGHPUT DIOPIIOPSCIOP Normal Conditions % Packet Loss87100 Link Failure3883 LATENCY DIOPIIOPSCIOP AverageMaxAverageMaxAverageMax Normal Conditions % Packet Loss Link Failure

Conclusions SCTP combines best features of TCP and UDP and adds several new features SCTP can be used to improve network fault tolerance and improve QoS Under normal network conditions, SCTP compares well with TCP and UDP –In addition, it can utilize redundant links to provide higher effective throughput Under packet loss and link failures, SCTP provides automatic failover to redundant links, providing superior latency and bandwidth relative to TCP and UDP Integrating SCTP as a pluggable protocol into middleware allows effortless and seamless integration for DRE applications SCTP is available when using ACE, TAO, CIAO and AVStreaming Continue to use other network QoS mechanisms such as DiffServ and IntServ with SCTP Both OpenSS7 and (specially) LKSCTP implementations need improvement –Crashes during failover –Differences in conformance to SCTP specification –Limited technical support Emulab provides an excellent environment for testing SCTP Future work –Load-sharing in SCTP – Concurrent multipath data transfer –Adaptive Failover –Ongoing research at Protocol Engineering Laboratory, University of Delaware