SCTP. Stream Control Transmission Protocol. François Buntschu. Ecole d Ingénieurs et d Architectes de Fribourg HES-SO

Similar documents
Transport of (Legacy) Signaling over IP. Summary of course scope

Reliability and Availability in Stream Control Transport Protocol (SCTP)

SCTP: An innovative transport layer protocol for the web

TSIN02 - Internetworking

Outline. History Introduction Packets Association/ Termination Data Transmission concepts Multihoming Streams

TSIN02 - Internetworking

Stream Control Transmission Protocol - Wikipedia, the free encyclopedia

Effect of SCTP Multistreaming over Satellite Links

An SCTP-Protocol Data Unit with several chunks

TCP/IP Protocol Suite 1

Stream Control Transmission Protocol (SCTP)

Chapter 24. Transport-Layer Protocols

SCTP: A new networking protocol for super-computing. Mohammed Atiquzzaman Shaojian Fu Department of Computer Science University of Oklahoma.

Performance Evaluation of the Stream Control Transmission Protocol

Transport Layer. The transport layer is responsible for the delivery of a message from one process to another. RSManiaol

Video Streaming with the Stream Control Transmission Protocol (SCTP)

Performance Analysis of Stream Control Transmission Protocol

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

TSIN02 - Internetworking

Transport Layer. Gursharan Singh Tatla. Upendra Sharma. 1

Analysis of FTP over SCTP and TCP in Congested Network

UNIT IV TRANSPORT LAYER

Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP

Computer Network Programming

MULTIHOMING AND MULTISTREAM PROTOCOL IN COMPUTER NETWORKS

Stream Control Transmission Protocol

Intro to LAN/WAN. Transport Layer

Computer Network Programming. The Transport Layer. Dr. Sam Hsu Computer Science & Engineering Florida Atlantic University

Internet Layers. Physical Layer. Application. Application. Transport. Transport. Network. Network. Network. Network. Link. Link. Link.

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

SCTP STREAM CONTROL TRANSMISSION PROTOCOL INTRODUCTION TO SCTP, A GENERAL PURPOSE TRANSPORT PROTOCOL SUITED FOR HIGH RELIABILITY APPLICATIONS

CC-SCTP: Chunk Checksum of SCTP for Enhancement of Throughput in Wireless Network Environments

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

The Transmission Control Protocol (TCP)

TSIN02 - Internetworking

6. The Transport Layer and protocols

Page 1. Goals for Today" Discussion" Example: Reliable File Transfer" CS162 Operating Systems and Systems Programming Lecture 11

Guide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16

TCP/IP Transport Layer Protocols, TCP and UDP

User Datagram Protocol

Introduction to TCP/IP networking

Master Course Computer Networks IN2097

CSCI-GA Operating Systems. Networking. Hubertus Franke

Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP 23.1

Simulation of the SCTP Failover Mechanism

TSIN02 - Internetworking

Topics in Computer Networking Switch SS7 PSTN/ISDN. Gatekeeper/ Proxy Server. Topics in Computer Networking Н.

Unix Network Programming

OSI Transport Layer. objectives

The Transport Layer. Part 1

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1

ICS 351: Networking Protocols

Introduction to Networks and the Internet

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP)

TCP /IP Fundamentals Mr. Cantu

SCTP s Reliability and Fault Tolerance

Protocol Layers & Wireshark TDTS11:COMPUTER NETWORKS AND INTERNET PROTOCOLS

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 25, 2018

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005

Business Data Networks and Security 10th Edition by Panko Test Bank

Structured Streams: A New Transport Abstraction

Transport Layer (TCP/UDP)

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

TSIN02 - Internetworking

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Lecture (11) OSI layer 4 protocols TCP/UDP protocols

Computer Networks and Data Systems

CSC 634: Networks Programming

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology

Your Name: Your student ID number:

NT1210 Introduction to Networking. Unit 10

ECE 435 Network Engineering Lecture 15

Internet and Intranet Protocols and Applications

A Survey of the Stream Control Transmission Protocol

Need For Protocol Architecture

Need For Protocol Architecture

Evaluation of Emulab as Experimental Platform by Comparing TCP and SCTP

STEVEN R. BAGLEY PACKETS

CSCI 466 Midterm Networks Fall 2013

Just enough TCP/IP. Protocol Overview. Connection Types in TCP/IP. Control Mechanisms. Borrowed from my ITS475/575 class the ITL

UDP, TCP, IP multicast

Randall Stewart, Cisco Systems Phill Conrad, University of Delaware

Sirindhorn International Institute of Technology Thammasat University

Transport Layer TCP / UDP

05 Transmission Control Protocol (TCP)

9th Slide Set Computer Networks

TSIN02 - Internetworking

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

EE 122: IP Forwarding and Transport Protocols

Design and Evaluation of a Kernel-Level SCTP Implementation

Chapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control

Summary of last time " " "

EE 610 Part 2: Encapsulation and network utilities

Unit 2.

CS 640: Introduction to Computer Networks. Today s Lecture. Page 1

Linux Networking: tcp. TCP context and interfaces

CS 4390 Computer Networks. Transport Services and Protocols

Introduction to Networking. Operating Systems In Depth XXVII 1 Copyright 2017 Thomas W. Doeppner. All rights reserved.

SCTP performance and security

Transcription:

SCTP Stream Control Transmission Protocol François Buntschu Ecole d Ingénieurs et d Architectes de Fribourg HES-SO SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 1 / 32

Agenda Introduction Protocol specifications Measurements Use of SCTP Conclusions SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 2 / 32

Introduction TCP is the main transport protocol in the Internet protocol suite Original TCP performed poorly in the following topics: Redondancy Security Transport of small messages IETF developing SCTP for PSTN signaling over IP SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 3 / 32

Introduction (con t) SCTP = Stream Control Transmission Protocol Transport Protocol (Layer 4 of the OSI Model), transparent to IPv4 or IPv6 SIGTRAN Working Group (IETF) Since October 2000: RFC 2960 Actors : Cisco, IBM, Motorola, UNI Essen, Siemens, Sun Microsystems, Layer 5-7 FTP, Telnet, Layer 4 TCP, UDP, SCTP Layer 3 IP Layer 2 Ethernet, IEE802.2/802.3 Layer 1 SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 4 / 32

Protocol Specifications SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 5 / 32

Key features Works in client / server mode, creation of so called «associations» Reliable: Retransmission of lost packets, acknowledgment of packets Non-duplicated service: uses sequence numbers Data transmission in ordered and non-ordered mode Multistreaming : multiple data stream per association Multihoming : multiple addresses per host Grouping of Data Chunks within the same datagram Selective Acknowledgment Increased security IP Network SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 6 / 32

SCTP Association SCTP Node A SCTP Node B Appl. 1 Appl. 2 Appl. 1 SCTP Transport Service Port 1 Port 2 IP Network Service @IP1 @IP2 @IP3 NIC1 NIC2 NIC3 Port 1 SCTP Transport Service @IP1 NIC1 IP Network Service @IP2 NIC2 IP Network SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 7 / 32

Frame format 0 Payload Data (DATA) 1 Initiation (INIT) 2 Initiation Acknowledgement (INIT ACK) 3 Selective Acknowledgement (SACK) 7 Shutdown (SHUTDOWN) 8 Shutdown Acknowledgement (SHUTDOWN ACK) 10 State Cookie (COOKIE ECHO) 11 Cookie Acknowledgement (COOKIE ACK)... Chunk type Chunk type 32 bits Chunk flags Chunk Data Chunk flags Chunk Data Chunk length Chunk length Chunk 1 Chunk 2 Chunk type Chunk flags Chunk Data Chunk length Chunk n 32 bits Source port number Destination port number Verification Tag CRC-32c checksum SCTP Packet Header Data >= 20 octets IPv4 or IPv6 Packet Header Data SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 8 / 32

Streams One association could transport multiple streams Data are transported within Data Chunk Data Chunks could be ordered or non-ordered Advantages : Only one SCTP port number used per association Multiple stream per association of different kind of data Grouping of small messages into one packet (multistreaming) IP Network SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 9 / 32

Multistreaming Data Chunks are grouped within a datagram in order to reach the Maximum Transmission Unit (MTU) Advantage : better use of the bandwith Data to transmit DATA Chunk 16 bytes SCTP 12 bytes TCP 20 bytes max ~ 1500 bytes IP 20 bytes TCP Ethernet 26 bytes SCTP SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 10 / 32

Multihoming Multiple IP addresses per host per association One application could use at the same time more than one network connection Advantage : reliability, redundancy, performance IP Network 1 IP Network 2 SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 11 / 32

Selective Acknowledgment Acknowledgment of Data Chunks received out of order Data transmitted in non-ordered mode are also acknowledged Duplicated Data chunks are also announced Advantage : avoid head-of-line blocking (HOL), only corrupted data are retransmitted IP Network SACK...... SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 12 / 32

Increased security Establishment phase in 4 steps Concept of cookie Advantage : avoid SYN attack (Denial of Service) by delegating the saving of the resources to the network Cookie Parameters INIT INIT-ACK............. COOKIE-ECHO COOKIE-ACK ESTABLISHED ESTABLISHED DATA SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 13 / 32

Congestion Control Similar to TCP congestion control Enables seamless introduction of SCTP into IP networks SCTP is rate adaptive similar to TCP Slow start, Congestion Avoidance, Fast Retransmit SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 14 / 32

Measurements SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 15 / 32

Test platform at EIA-FR Functionalities measurements Performance measurements Real network simulation delay loss/duplication of packets 2 Linux terminals 2 FreeBSD terminals 2 network emulator: NISTNet 2 LAN switches: Cisco 2950 4 Network analyzer: Agilent Analyzer (time synchronized) Agilent Advisor SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 16 / 32

Developped software Allows SCTP transmission between client and server Most parameters are configurable (data size, amount of streams, ordered and non-ordered mode, ) Automatic bandwidth measurement Deliver a transmission report Use a SCTP Daemon to access the IP layer Daemon SCTP Application UDP IP SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 17 / 32

Measurement results 4 steps, 3 steps Parameters exchange Measure Establishment closing Data exchange Selective Acknowledgment Multihoming Results Performance increase due to the data concatenation of DATA Chunks Performance increase due to the retransmission of the corrupted Redondancy Data when Chunks the only primary path is out of order Performance comparison with TCP/UDP Daemon version SCTP : 9-12 Mbps TCP : 25 Mbps SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 18 / 32

Theoretical throughput 100.0 90.0 80.0 70.0 Débit [Mb/s] 60.0 50.0 40.0 30.0 20.0 10.0 0.0 50 100 150 200 250 300 350 400 450 500 550 600 Taille des données (D) [bytes] 650 700 750 800 850 900 950 1000 1050 1100 1150 1200 1250 1300 1350 1400 1450 V D (1) = 2.8 MB V D (2) = 28 KB SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 19 / 32 TCP (1) UDP (1) SCTP (1) TCP (2) UDP (2) SCTP (2)

Theoretical efficiency 100.0 90.0 80.0 70.0 Rendement [%] 60.0 50.0 40.0 30.0 20.0 10.0 0.0 50 100 150 200 250 300 350 400 450 500 550 600 Taille des données (D) [bytes] 650 700 750 800 850 900 950 1000 1050 1100 1150 1200 1250 1300 1350 1400 1450 SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 20 / 32 SCTP TCP UDP

Measured throughput 100000 100.00% 90000 90.00% 80000 80.00% 70000 70.00% Débit [kb/s] 60000 50000 40000 merlin AN-1 AN-2 L 1 L 2 NI-1 morgan 60.00% 50.00% 40.00% Rendement [%] 30000 perceval NI-2 camelot 20000 10000 0 100 200 500 800 1000 1400 1470 30.00% L 3 L 4 AD-1 AD-2 20.00% 10.00% 0.00% Débit SCTP Débit TCP Débit UDP Rendement SCTP Rendement TCP Rendement UDP Data Size [bytes] SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 21 / 32

Multihoming and errors 14 12 Chunk type on L3 Chunk type on L1 AN-1 AN-2 L 1 L 2 merlin NI-1 morgan perceval NI-2 camelot 10 L 3 L 4 AD-1 AD-2 8 6 A 4 2 C C 0 23.852 24.153 24.554 24.955 25.356 26.257 28.358 30.005 30.810 32.563 32.865 33.266 33.667 34.969 35.270 35.671 36.972 37.274 37.678 38.080 38.481 38.882 39.283 39.684 40.585 42.686 42.987 43.389 43.790 44.191 44.596 44.997 45.398 46.699 47.000 47.402 47.803 48.204 49.104 49.305 49.706 50.107 50.512 51.413 51.614 53.514 57.615 57.917 58.318 58.719 59.120 Chunk Type # B D C C C C C C C Relative Time [s] SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 22 / 32

Use of SCTP SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 23 / 32

Existing commercial platform Cisco: ITP (IP Transfer Point) http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122newft/122t/122t8/ft_sctp2.pdf Adax: APS-SCTP/T http://www.adax.com/aps_sctp.html Compaq: Compaq Tru63 UNIX Alpha http://www.compaq.com/products/software/in7/spd_sctp.pdf Siemens: SURPASS his (Signaling Transfer Point and Signaling Gateway) SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 24 / 32

Existing free implementation Essen University Siemens http://www.sctp.de/sctp.html Linux Kernel SCTP (lksctp project) http://sourceforge.net/projects/lksctp KAME Project http://www.kame.net/ OpenSS7 http://www.openss7.org/ SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 25 / 32

Use of SCTP example 1 SG SS7 SG SCTP MG + MGC IP network MG + MGC MGCP Media Gateway Control Protocol MG Media Gateway MGC Media gateway controller SG Signalling Gateway SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 26 / 32

Use of SCTP example 2 Latest changes to SCTP new RFCs: draft-ahmed-lssctp-00.txt (load sharing), RFC 3436 (TLS over SCTP), draft-sjkoh-sctp-mobility-02.txt (IP Mobility support for SCTP), web server (Apache) + web browser (Mozilla) using SCTP IP network Apache SCTP+TCP Mozilla + FTPClient SCTP WU-FTP SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 27 / 32

Conclusions SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 28 / 32

Conclusions Positive characteristics of TCP are included in SCTP and negative characteristics (or weakness) of TCP have been removed or redesigned Future for this protocol SS7 migration to IP network Use of SCTP for streaming applications (audio and video) Use of SCTP for web applications (HTTP, FTP, RealPlayer, ) Will be a major actor in the Internet in the future!! SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 29 / 32

Conclusions (con t) F.Buntschu wrote: And my latest question is concerning the future of SCTP, do you think this protocol will be a major actor on internet with TCP and UDP? Some constructor like Cisco use this protocol for ITP, but do you know if there is emerging software/application using SCTP? Randall Stewart s answer (Author of the RFC 2960): Yes, but like anything it takes time to migrate. The UNIX Network Programming 3rd edition will have a lot of coverage of SCTP. This will help.. also I think as slowly apps are pushed out (such as netflow, IUA and others) and SCTP gets more support.. so will follow applications that use it.. But it will be some time yet I am afraid.. SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 30 / 32

Thanks for your attention! francois.buntschu@eif.ch HES-SO / EIA-FR SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 31 / 32

Further informations Further information François Buntschu (+41 26 429 65 79) francois.buntschu@eif.ch These slidea are available at www.eif.ch/~buntschu SCTP Stream Control Transmission Protocol EIA-FR, F.Buntschu August 2003 32 / 32