1 Enhancements to CRTP draft-koren-avt-crtp-enhance-01.txt T. Koren, S. Casner, P. Ruddy, B. Thompson, A. Tweedly, D. Wing Cisco Systems John Geevarghese.

Slides:



Advertisements
Similar presentations
Robust Header Compression Mikael Degermark Co-chair, ROHC WG (to be) University of Arizona/ Ericsson Research.
Advertisements

IPv4 - The Internet Protocol Version 4
IP Header compression in UMTS network Thesis Work Presentation Author: Jukka Raunio Supervisor: Prof. Raimo Kantola Instructor: M. Sc. Antti.
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
© 2006 Cisco Systems, Inc. All rights reserved. Optimizing Converged Cisco Networks (ONT) Module 2: Cisco VoIP Implementations.
UDP & TCP Where would we be without them!. UDP User Datagram Protocol.
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
BZUPAGES.COM 1 User Datagram Protocol - UDP RFC 768, Protocol 17 Provides unreliable, connectionless on top of IP Minimal overhead, high performance –No.
Chapter 20 Network Layer: Internet Protocol Stephen Kim 20.1.
Requirements for IP/UDP/RTP header compression To become Editor: Mikael Degermark Input: Charter, 3GPP requirements, contribution from 3G.IP, Editors central.
Zero byte ROHC RTP1Lars-Erik Jonsson, Zero-byte ROHC RTP Background, requirements, current status and proposed way forward Lars-Erik Jonsson.
Roke Manor Research 1 Generating New Profiles for ROHC Richard Price
1 K. Salah Module 5.2: Internet Protocol CO vs. CL protocols IP Features –Fragmentation –Routing IP Datagram Format IPv6.
Network Layer Packet Forwarding IS250 Spring 2010
CS294-9 :: Fall 2003 ALF and RTP Ketan Mayer-Patel.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #2 Header Compression.
Activities in the field of header compression. Center for TeleInFrastructure 2 ROHC working group RFC 3095 ROHC (Framework + RTP. UDP, ESP, uncompressed)
© 2006 Cisco Systems, Inc. All rights reserved. 2.3: Encapsulating Voice Packets for Transport.
Internet Networking Spring 2004
Header Compression Schemes. Center for TeleInFrastructure 2 Different Header Compression schemes  Compressed TCP – Van Jacobsen RFC 1144  only for TCP/IP.
CSc 461/561 CSc 461/561 Multimedia Systems Part C: 1. RTP/RTCP.
1 Internet Networking Spring 2006 Tutorial 14 Header Compression.
1 © NOKIA ace ppt/ Marchr, 2000 / KL ACE: A Robust and Efficient IP/UDP/RTP Header Compression Scheme March 31, 2000 Khiem Le, Christopher Clanton,
CS335 Principles of Multimedia Systems Multimedia Over IP Networks -- II Hao Jiang Computer Science Department Boston College Nov. 8, 2007.
K. Salah 1 Chapter 28 VoIP or IP Telephony. K. Salah 2 VoIP Architecture and Protocols Uses one of the two multimedia protocols SIP (Session Initiation.
Internet Command Message Protocol (ICMP) CS-431 Dick Steflik.
RTP: A Transport Protocol for Real-Time Applications
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Gursharan Singh Tatla Transport Layer 16-May
Cisco Public © 2013 Cisco and/or its affiliates. All rights reserved. 1.
CS 218 F 2003 Nov 3 lecture:  Streaming video/audio  Adaptive encoding (eg, layered encoding)  TCP friendliness References: r J. Padhye, V.Firoiu, D.
CIS679: RTP and RTCP r Review of Last Lecture r Streaming from Web Server r RTP and RTCP.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Network Layer ICMP and fragmentation.
Rhys W. Robinson TerreStar Sourabh Gupta DBSD North America.
1 Extensions to CRTP RTP Multiplexing using Tunnels Bruce Thompson Tmima Koren Cisco Systems Inc.
Computer Networks: Multimedia Applications Ivan Marsic Rutgers University Chapter 3 – Multimedia & Real-time Applications.
A Unified Header Compression Framework for Low-Bandwidth Links Jeremy Lilley Jason Yang Hari Balakrishnan Srinivasan Seshan MIT Laboratory for Computer.
TCP Lecture 13 November 13, TCP Background Transmission Control Protocol (TCP) TCP provides much of the functionality that IP lacks: reliable service.
1 Lecture 17 – March 21, 2002 Content-delivery services. Multimedia services Reminder  next week individual meetings and project status report are due.
E Multimedia Communications Anandi Giridharan Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India Multimedia.
Robust Header Compression (ROHC)‏ An introduction Jonathan Shufelt
1 RTP Multiplexing using Tunnels (TCRTP) Bruce Thompson Tmima Koren Cisco Systems Inc.
Source: Qualcomm Incorporated Contact: Ravindra Patwardhan, Jun Wang, George Cherian June Page 1 xHRPD Header Removal Support Notice © All.
Header Compression over Cellular LinksLars-Erik Jonsson, Header Compression for IP-Telephony over Cellular Links Lars-Erik Jonsson (Ericsson.
1 MPLS/IP Header Compression (draft-berger-mpls-hdr-comp-00.txt) MPLS/IP Header Compression over PPP (draft-berger-mpls-hdr-comp-over-ppp-00.txt) Lou Berger.
CS 4396 Computer Networks Lab
Overview of ROHC framework
THE CLASSIC INTERNET PROTOCOL (RFC 791) Dr. Rocky K. C. Chang 20 September
An Extensible RTCP Control Framework for Large Multimedia Distributions Paper by: Julian Chesterfield Eve M. Schooler Presented by: Phillip H. Jones.
1 Header Compression over IPsec (HCoIPsec) Emre Ertekin, Christos Christou, Rohan Jasani {
1 0-Byte Header Reduction Mechanism Fundamentals.
1-D Interleaved Parity FEC draft-begen-fecframe-interleaved-fec-scheme-00 IETF 72 – July 2008 Ali C. Begen
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
RTP: A Transport Protocol for Real-Time Applications
IP - The Internet Protocol
IP Header compression in UMTS network
RTP: A Transport Protocol for Real-Time Applications
5. End-to-end protocols (part 1)
Transport Layer.
RTP – Real-time Transport Protocol
IP - The Internet Protocol
Transport Layer Our goals:
IP - The Internet Protocol
IP - The Internet Protocol
IETF 50, Minneapolis Zero-byte ROHC RTP Background, requirements, current status and proposed way forward Lars-Erik Jonsson Ericsson Research, Luleå.
Chapter 15. Internet Protocol
IP - The Internet Protocol
The Transport Layer Chapter 6.
IP - The Internet Protocol
Transport Layer 9/22/2019.
Presentation transcript:

1 Enhancements to CRTP draft-koren-avt-crtp-enhance-01.txt T. Koren, S. Casner, P. Ruddy, B. Thompson, A. Tweedly, D. Wing Cisco Systems John Geevarghese Motorola India

2 Why Enhance CRTP CRTP does not perform well on links with packet loss and long round trip delaysCRTP does not perform well on links with packet loss and long round trip delays –Packet loss causes context invalidation –CRTP error recovery mechanism using CONTEXT_STATE messages is not efficient due to the long round trip delay. The suggested enhancements make CRTP more robust and resilient to packet loss, which in turn will reduce context invalidation.The suggested enhancements make CRTP more robust and resilient to packet loss, which in turn will reduce context invalidation.

3 Packet Loss and Context Invalidation When will a lost packet cause context invalidation?When will a lost packet cause context invalidation? –Packet includes changes to context state fields New delta valueNew delta value –Significant packet: its loss causes context invalidation

4 Example Audio Stream Sample sent every 10 msSample sent every 10 ms The first talk spurt is 1 second long.The first talk spurt is 1 second long. Then there are 2 seconds silenceThen there are 2 seconds silence Then another talk spurt.Then another talk spurt.

5 Shortcuts FH - FULL_HEADER CR - COMPRESSED_RTP CU - COMPRESSED_UDP CS - CONTEXT_STATE T, dT - RTP timestamp (absolute and delta) S, dS - RTP seq# (absolute and delta) I, dI - IP ID (absolute and delta) pt - RTP payload type CC - Number of CSRC identifiers

6 ‘Classic’ CRTP Sequence seq# Time pkt type 1 10 FH x 2 20 CR+ dI dT=10 x 3 30 CR 4 40 CR CR CR+ dT=2010 x CR+ dT=10 x CR CR...

7 Remove Dependency seq# Time pkt type CR CR+ dT=2010 x CR+ dT=10 x CR Replace 101, CR ?? T=3010 dT= ?? T=3020 dT=10 x CR

8 Express change in one packet seq# Time pkt type CR CR+ dT=2010 x CR+ dT=10 x CR Replace 101, CR ?? T=3010 x CR

9 Enhanced CU: CU+ lsb of context ID Delta IPv4 ID UDP data (uncompressed RTP header) CRTP seq # dI000 lsb of context ID UDP Checksum “RANDOM” fields Delta IPv4 ID UDP data (uncompressed RTP header) Delta RTP timestamp CRTP seq # dI0dT msb of context ID IP ID CUCU+ UDP Checksum “RANDOM” fields I

10 Enhanced CU: CU* (CR style) CC ptMST lsb of context ID UDP Checksum “RANDOM” fields Delta IPv4 ID Delta RTP timestamp CRTP seq # dI1dT msb of context ID IP ID RTP Seq# RTP Timestamp RTP Payload Type CSRC List RTP Header Extension RTP Data I

11 Using CU* with ‘T’ and ‘dT’ seq# Time pkt type CR CR+ dT=2010 x CR+ dT=10 x CR Replace 101, CR CU* T=3010 dT= CU* T=3020 dT=10 x CR

12 Using CU* with flag ‘T’ seq# Time pkt type CR CR+ dT=2010 x CR+ dT=10 x CR Replace 101, CR CU* T=3010 x CR

13 The N Scheme: Repeat When to use:When to use: –At most N adjacent packets may get lost How to useHow to use –Repeat change N+1 times

14 Using the N scheme (T, dT) seq# Time pkt type CR CU* T=3010 dT= CU* T=3020 dT=10 x CR N= CR CU* T=3010 dT= CU* T=3020 dT=10 b CU* T=3030 dT=10 b CR

15 Using the N scheme (T) seq# Time pkt type CR CU* T=3010 x CR N= CR CU* T=3010 b CU* T=3020 b CR

16 N Can Be Learned Increase / decrease N according to the number of invalidated contextsIncrease / decrease N according to the number of invalidated contexts

17 The ACK Scheme: Repeat until ACK’d When to use:When to use: –Avoid context invalidation How to useHow to use –Repeat change until ACK’d

18 ACK Packet Format Context Count RTP Sequence # Type code=4: ACK, 8-bit CID Session Context ID RTP Sequence # Session Context ID...

19 ACK Packet Format Context Count RTP Sequence # Type code=5: ACK, 16-bit CID RTP Sequence #... Session Context ID

20 Using the ACK Scheme (T,dT) seq# Time pkt type CR CU* T=3010 dT= CU* T=3020 dT=10 x CR ACK Scheme CR CU* T=3010 dT= CU* T=3020 dT=10 Receive: ACK CU* T=3030 dT=10 Receive: ACK CR

21 Using the ACK Scheme (T) seq# Time pkt type CR CU* T=3010 x CR ACK Scheme CR CU* T= CU* T=3020 Receive: ACK CR

22 Bandwidth Overhead when using the N scheme ‘Classic’ : CR+ dT=2010 x CR+ dT=10 x Enhanced with (T, dT) : 2*5 + N*6 overhead CU* T=3010 dT= CU* T=3020 dT=10 b CU* T=3030 dT=10 b Enhanced with (T) : 5 + N*5 overhead CU* T=3010 b CU* T=3020 b

23 Bandwidth Overhead when using the N scheme Enhanced CRTP with N schemeEnhanced CRTP with N scheme –(T, dT) transition: 10 + N*6 bytes –(T) transition: 5 + N*5 bytes Average talk spurt length: 1 secondAverage talk spurt length: 1 second

24 Bandwidth Overhead when using the ACK scheme Calculate same as in N scheme, select: N = round trip delay (ms) / sample length (ms)Calculate same as in N scheme, select: N = round trip delay (ms) / sample length (ms) ACK packet size: 6 bytesACK packet size: 6 bytes

25 Refresher Packet (CU+ Usage) seq# Time pkt type N= CR CU* T=3010 dT= CU* T=3020 dT=10 b CU* T=3030 dT=10 b CR … CU+ I dI dT=10 <-- refresh all context state parameters

26 The Random IP ID (CU* Usage) dI is not constantdI is not constant Either dI or I must be included in each packetEither dI or I must be included in each packet –If dI is included in each packet, each lost packet invalidates the context –Conclusion: it’s better to include I Use CU* with I flag instead of CR+Use CU* with I flag instead of CR+

27 Sequence with changing dI seq# Time pkt type 1 10 FH x 2 20 CR+ dI dT=10 x 3 30 CR+ dI x 4 40 CR+ dI x... Enhanced sequence: 1 10 FH x 2 20 CU* I dT=10 x 3 30 CU* I 4 40 CU* I

28 Including IP ID in the UDP Checksum UDP checksum is used to verify validity of reconstructed packetsUDP checksum is used to verify validity of reconstructed packets Reconstructed IP ID cannot be verifiedReconstructed IP ID cannot be verified Include IP ID in UDP checksumInclude IP ID in UDP checksum

29 Including IP ID in the UDP Checksum (cont.) When UDP checksum is present (nonzero)When UDP checksum is present (nonzero) –The compressor will 1's complement subtract the IP ID value from the UDP checksum before compression –The decompressor will 1's complement add the IP ID value to the UDP checksum after any validation operations and before delivering the packet further downstream.

30 Headers Checksum UDP Checksum used to validate reconstructed packets, especially when ‘twice’ was usedUDP Checksum used to validate reconstructed packets, especially when ‘twice’ was used When UDP checksum is not present, CRTP may add Headers Checksum (HDRCKSUM)When UDP checksum is not present, CRTP may add Headers Checksum (HDRCKSUM)

31 HDRCKSUM HDRCKSUM includes:HDRCKSUM includes: –Pseudo-IP Header –UDP Header –Fixed part of RTP Header (first 12 bytes) –IP ID Does not include:Does not include: –The extended part of the RTP header –RTP data

32 HDRCKSUM (cont.) Calculated in the same way as a UDP checksumCalculated in the same way as a UDP checksum Placed in the COMPRESSED_UDP or COMPRESSED_RTP packets where a UDP checksum would have beenPlaced in the COMPRESSED_UDP or COMPRESSED_RTP packets where a UDP checksum would have been The decompressor MUST zero out the UDP checksum field in the reconstructed packetsThe decompressor MUST zero out the UDP checksum field in the reconstructed packets

33 NON-RTP stream flag Notifies the decompressor that this stream is not an RTP streamNotifies the decompressor that this stream is not an RTP stream Decompressor can enter flow in negative cache without RTP compression attemptsDecompressor can enter flow in negative cache without RTP compression attempts Less CID thrashingLess CID thrashing Useful for application nodes where compressor has hints from application layer.Useful for application nodes where compressor has hints from application layer.

34 NON-RTP stream flag in the FULL_HEADER packet CID 0 Generation 01 U New FULL_HEADER length fields format: For 8-bit context ID: For 16-bit context ID: Seq # CID Generation 11U 0 Set U = 1 to indicate a non-RTP stream

35 Rejecting a new compressed stream Decompressor implementations may share resources across multiple linksDecompressor implementations may share resources across multiple links Decompressor may over commit decompression resources in RFC 2509 negotiationDecompressor may over commit decompression resources in RFC 2509 negotiation Decompressor may REJECT a compressed steam when out of resourcesDecompressor may REJECT a compressed steam when out of resources

36 session context ID Reject packet (Using CONTEXT_STATE opcode ) context count CRTP seq# =CS, Reject 8-bit CID session context ID generation 00 context count CRTP seq # =CS, Reject 16-bit CID generation 00 CID, CRTP sequence# and generation are taken from the FULL_HEADER

37 Negotiating usage of enhanced-CRTP and ACK scheme RFC 2509 specifies how the use of CRTP is negotiated on PPP links using the IP Compression Protocol option of IPCP:RFC 2509 specifies how the use of CRTP is negotiated on PPP links using the IP Compression Protocol option of IPCP: –IPCP option 2: IP compression protocol –protocol 0x61 indicates RFC 2507 header compression –sub-option 1 enables use of COMPRESSED_RTP, COMPRESSED_UDP and CONTEXT_STATE as specified in RFC 2508

38 Negotiating usage of enhanced-CRTP and ACK scheme (cont.) For the enhancements defined in this document, two new sub-options are added:For the enhancements defined in this document, two new sub-options are added: –sub-option 2 (length=2) : enables use of all CRTP enhancements except for the ACK scheme –sub-option 3 (length=2) : enables use of all CRTP enhancements including the ACK scheme

39 END