sctp an innovative transport layer protocol for the web
play

SCTP: An innovative transport layer protocol for the web (Position - PowerPoint PPT Presentation

SCTP: An innovative transport layer protocol for the web (Position paper) P. Natarajan, J. Iyengar, P. Amer, & R. Stewart 1 HTTP over TCP Transmission Control Protocol (TCP) has been the default transport for HTTP. HTTP/TCP


  1. SCTP: An innovative transport layer protocol for the web (Position paper) P. Natarajan, J. Iyengar, P. Amer, & R. Stewart 1

  2. HTTP over TCP • Transmission Control Protocol (TCP) has been the default transport for HTTP. • HTTP/TCP Concerns – Head-of-line (HOL) blocking – Vulnerability to network failures – Vulnerability to SYN DoS attacks 2

  3. HOL blocking in TCP delivered to application HOL BLOCK ! 6 5 4 3 2 1 objects in send buffer receive buffer 6 5 4 3 2 1 6 5 4 3 2 1 retransmission TCP Connection 5 2 6 4 3 2 1 loss Web client Web server 3

  4. SCTP multistreaming avoid HOL blocking delivered to application 6 5 4 3 2 1 objects in send buffer 6 5 4 3 2 1 receive buffer retransmission 6 5 4 3 2 1 SCTP Association Stream 1 1 Stream 2 loss 2 2 Stream 3 3 Stream 4 4 Stream 5 5 Stream 6 6 Stream 1 Web client Web server 4

  5. TCP work-around to mitigate HOL blocking • How? – Multiple persistent TCP connections to transfer independent web objects • Problems – Possible HOL blocking within one TCP connection – No shared sequence space => Less robust to loss detection and recovery – Increased load on web server – Increased connection establishment latency during SYN losses. – Aggressive behavior during congestion 5

  6. TCP: Network fault-(In)tolerance � � � � ISP ISP Internet � � ISP � � ISP Web client Web server 6

  7. SCTP: Transport layer multihoming � � � � ISP ISP Internet � � ISP � � ISP Web client Web server SCTP Association: ({A 1 , A 2 }, {B 1 , B 2 }) SCTP Failure Detection & Failover 7

  8. TCP SYN Flooding Attack Process SYN Spoofed SYNs TCP web server SYN 130.2.4.15 128.3.4.5 TCB TCB SYN 228.3.14.5 Internet 192.10.2.8 SYN 190.13.4.1 221.3.5.10 TCB Flooded!! 8

  9. SCTP Association setup avoids SYN flooding attack Process INIT Spoofed INITs SCTP web server INIT 130.2.4.15 128.3.4.5 INIT 228.3.14.5 Internet 192.10.2.8 INIT 190.13.4.1 221.3.5.10 9

  10. SCTP: Four-way Association setup INIT INIT–ACK (StateCookie) NO TCB COOKIE–ECHO ( S t a t e C o o k i e ) ; D A T A TCB COOKIE–ACK; SACKs DATA 10

  11. HTTP/SCTP streams: Design HTTP Server HTTP Client “HTTP REQUEST” “HTTP REQUEST” “HTTP RESPONSE” “HTTP RESPONSE” on stream m Write Write ( to stream m ) ( to stream m ) Read Read SCTP SCTP SCTP Association Stream ID: m Stream ID: m Stream m Stream m Stream ID: m “HTTP REQ” “HTTP RESP” Stream ID: m Stream ID: m “HTTP REQ” Stream ID: m “HTTP REQ” “HTTP RESP” “HTTP RESP” 11

  12. HTTP/SCTP Implementation • Apache 2.0.55 • Firefox 1.6a 12

  13. It Works ! HTTP over TCP HTTP over SCTP (multistreaming) ���������� ���������� time � time � 13

  14. Other SCTP features • Preservation of Message Boundaries • Partial Reliability Extension (PR-SCTP) – Timed reliability: Attempt for reliable transmission only within a time period. – Example: Online game client use PR-SCTP to transmit player’s coordinates. Old coordinates discarded when newer ones available. • Unordered data delivery – 1 SCTP association to transmit both ordered and unordered data – Vs. UDP: Unordered data transmitted reliably. • SCTP shim layer – Between application and transport layer. – No code change to app. Transparently converts app’s TCP calls to corresponding SCTP calls. 14

  15. Current status • Home: IETF TSVWG �������� ��� ������������ (Transport Services Working Group) Munich 6/00 12 Research Triangle Park 10/00 22 Sophia Antipolis 4/01 19 – IETF recognizes broader scope San Jose (Connectathon) 2/02 6 – Proposed Standard - RFC2960 U of Essen (Germany) 9/02 20 U of Delaware 6/03 11 U of Muenster (Germany) 7/04 14 • Supported by industry: Vancouver 8/06 ?? – Participation in Inerops : ADAX - Cisco - HP/Compaq - Data Connection - DataKinetics - Ericsson - Hughes Software - IBM - Motorola - Netbricks - Nokia - Open SS7 - Performance Technologies - RadiSys - Siemens - Artesan - Sun Microsystems - Telesoft Technologies - Toshiba - Ulticom – Wipro – Implementations : AIX, FreeBSD, NetBSD, DragonFly BSD, Linux, QNX, Solaris, True64, IOS (Cisco Routers), Mac OS, Windows (user space), more… 15

  16. References - RFCs • RFC 2960 – Stream Control Transmission Protocol • RFC 3257 – SCTP Applicability Statement • RFC 3286 – An introduction to SCTP • RFC 3309 – SCTP Checksum Change • RFC 3436 – Transport Layer Security over SCTP • RFC 3554 – On the Use of SCTP with IPsec • RFC 3758 – SCTP Partial Reliability Extension • RFC 4460 – SCTP Specification Errata and Issues 16

  17. References – Internet Drafts • SCTP (BIS) – draft-ietf-tsvwg-2960bis-01.txt • Sockets API Extensions for SCTP – draft-ietf-tsvwg-sctpsocket-12.txt • SCTP Dynamic Address Reconfiguration (Add-IP) – draft-ietf-tsvwg-addip-sctp-14.txt • SCTP Packet Drop Reporting (Pkt-Drop) – draft-stewart-sctp-pktdrprep-04.txt • Authenticated Chunks for SCTP (Auth) – draft-tuexen-sctp-auth-chunk-02.txt 17

  18. References - Books • Stream Control Transmission Protocol (SCTP); A Reference Guide , Randall R. Stewart, Qiaobing Xie, Addison Wesley, 2002, ISBN 0-201-72186-4 • UNIX Network Programming; The Sockets Networking API, Vol. 1, 3 rd ed, W. Richard Stevens, Bill Fenner, Andrew M. Rudoff, Addison-Wesley, 2004, ISBN 0-13-141155-1 – chapter 2: The Transport Layer: TCP, UDP, and SCTP – chapter 9: Elementary SCTP Sockets – chapter 10: SCTP Client/Server Example – chapter 23: Advanced SCTP Sockets TCP/IP Protocol Suite, 3 rd ed, Behrouz A. Forouzan. • McGraw Hill, 2006, ISBN 0-07-296772-2 – chapter 13: SCTP 18

  19. References - Papers • Caro Jr. et al, “SCTP: A Proposed Standard for Robust Internet Data Transport”, IEEE Computer 36(11), 11/03 • Stewart & Amer, Internet Society Brief 17 • Univ of Delaware Protocol Engineering Lab (PEL) 19

  20. References – Online • http://www.sctp.org – Also reachable with HTTP over SCTP! • http://www.ietf.org/html.charters/tsvwg-charter.html – All current work on SCTP is done in the IETF TSVWG • sctp-impl on mailer.cisco.com – Note for Cisco audience: this is an external list 20

  21. Questions 21

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend