340 likes | 404 Views
Transporting Voice by using IP. Chapter 2. The IP Protocol Suite. IP is a routed protocol for passing data packets Other protocols invoke IP for the purpose of getting these data packets from origin to destination
E N D
Transporting Voice by using IP Chapter 2
The IP Protocol Suite • IP is a routed protocol for passing data packets • Other protocols invoke IP for the purpose of getting these data packets from origin to destination • So IP must work with higher layer protocols for any application to work properly • Remember the OSI 7-Layer model?
Internet Standards • The Internet Society : Non-profit body with overall objectives to keep the internet alive and growing • The Internet Architecture Board (IAB): Technical advisory group of the Internet Society. • The Internet Engineering Task Force (IETF): Volunteers who cooperate in the development on Internet standards; equipment vendors, network operators, research institutions.
Internet Standards ctd ... • Internet Engineering Steering Group (IESG): Manages and controls IETF’s activities, can approve a particular specification. • Internet Assigned Number Authority (IANA): Responsible for unique numbers, parameter values and meanings.
Internet Standards Process • Begins life as an Internet draft • Once it is considered complete it can be published as an RFC (Request for comments) • The RFC is given a number and becomes a draft standard. • To achieve this it must have at least 2 independent successful implementations and interoperability must have been demonstrated.
Routed vs Routing Protocols • Routed: IP, IPX, Novell IPX, Open Standards Institute networking protocol, DECnet, Appletalk, Banyan Vines, Xerox Network System (XNS). • Routing: • Routing Information Protocol (RIP and RIP II) • Open Shortest Path First (OSPF) • Intermediate System to Intermediate System (IS-IS) • Interior Gateway Routing Protocol (IGRP) • Cisco's Enhanced Interior Gateway Routing Protocol (EIGRP) • Border Gateway Protocol (BGP)
Transmission Control Protocol (TCP) • Ensures that packets are delivered to destination in sequence • Primary function is to overcome the limitations of IP through an end-to-end confirmation • Port Numbers: Is a means of identifying a specific instance of a given application. • Other header fields?
User Datagram Protocol (UDP) • Passes data from and application to IP to be routed to the far end. • At the far end it simply passes incoming data from IP to the application. • Provides no acknowledgement functionality • What happens if a UDP packet is lost? • Checksum simply checks that received data is error free
Voice over UDP, not TCP • Speed is more important than loss of data • Voice packets are smaller so drop of a few will not be noticeable in the overall context. • Packet loss of about 5% is generally acceptable • Provided that loss is fairly evenly divided • What happens if they arrive out of sequence? • QOS techniques can involve establishing a set pattern through the network
Real Time Protocol (RTP) • A Transport Protocol for Real Time Applications • Sits on top of UDP • Helps address some of the problems associated with UDP in terms of packet loss • RTP contains a companion protocol (RTCP) • RTCP provides exchange of messages between sessions to ensure some sort of reliability
You Video Conferencing Streaming Audio Movies ? Fast-forward to the Year 2021 • Director of Development for MME, Inc. Common Service
Two Goals of RTP’s Common Service • General enough to be truly “common” • Who knows what applications are coming? • Throughout history, communication has changed: • Oral (traditions passed between generations) • Written • Visual • Specific enough to actually be useful
RTP can deliver • Multimedia applications requirements • RTP architecture • RTP details • RTP does meet the requirements
Requirements (1) • Timing • Time-stamping for buffered playback • to minimize jitter • Synchronization of multiple streams • Dynamic frame boundaries • Video: frame length varies due to compression • Audio: “talkspurts”
Requirements (2) • Network issues • Dealing with packet loss • Dealing with congestion • Even with multicast • Bandwidth utilization • Minimize header bits
Requirements (3) • Miscellaneous • Interoperability • Encoding • Compression • ID of source • To whom am I listening? • Useful especially in video-conferencing
Requirements Summary • This is not TCP! • Who cares if we lose a packet or two? • Who cares if we have jitter? • Calls for a different protocol...
RTP Architecture“ALF” and “ILP” • Application-level framing: • The application best knows its own needs • May not ask for retransmission, but for lower resolution • Integrated Layer Processing • Tightly coupled layers • Keeps data presentation from being the bottleneck • Gives the app. access to the data ASAP!
RTP: Summary • A very thin protocol • Usually built into application • No hard QOS guarantees • Designed for soft real-time apps • Depends on underlying network • Can run over ATM • Two components: • Media(data) transport: RTP • Control: RTCP
RTP Concepts • Port numbers for both RTP and RTCP • Participant IP addresses • Strength is multicast • Relays • Mixers • Translators
RTCP • ID of sender • Provides various reports for use in: • QoS and congestion control • so an app can change resolution or compression strategies • Session size and scaling • conferencing
Mixers • Mixer: An application that enable multiple media streams from different sources to be combined into one overall RTP stream • Could receive and combine various sources in an effort to reduce bandwidth
Translators • Used to manage communications between entities that do not support the same media formats or bit rates: e.g. TDM to STDM • Keeps incoming sources separate • To transform to a lower quality format to broadcast on lower-speed networks • To send through firewalls
Compression • Can use various types • JPEG • MPEG • H.261 • Provided by application • Negotiated using RTCP
Calculation Round-Trip Time (RTT) • This is another function of RTCP • Useful metric when measuring voice quality • T1, T2, T3 and T4 • RTT = T4 - T3 + T2 - T1 • or T4 - (T3 - T2) - T1
Calculation Jitter • Jitter is defined as the mean deviation of the difference in packet spacing at the receiver compared to packet spacing at the sender for a pair of packets. • If Si is timestamp for packet i and Ri is the time of arrival in RTP timestamp units for packet i then for 2 packets i and j the deviation in transmit time D is given by: • D(i,j) = (Rj-Ri) – (Sj-Si) = (Rj-Sj) – (Ri-Si)
IP Multicast • An example of this with VoIP is a conference call • Send a packet to a single destination address associated with all listeners • 224.0.0.1 All hosts on a local subnet • 224.0.0.2 All routers on a local subnet • 224.0.0.5 All routers supporting OSPF • 224.0.0.9 All routers supporting RIP v2
Summary • Multimedia applications have much different needs than http or ftp! • RTP meets those needs: • Minimized jitter • Synchronized sources • Dynamic, payload-specific frame length • Adaptation in the face of congestion • Interoperability • Effective use of bandwidth • Support for video-conferencing (multicast, IDs)