Protocols NUS SOC CS 5248 2007 Roger Zimmermann
- Slides: 99
Protocols NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Background NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Quality of Service (Qo. S) n Basic concepts n Quality of service n Resource reservation n End-to-end path must respond ro real-time requirements and provide a certain level of service quality NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Multimedia Systems n Qo. S n Often “quality” is subjective (e. g. , video, audio) n Real-time requirements n Hard real-time: aircraft control system n Soft real-time: e. g. video playback NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Real-time Requirements n Fault tolerance n Missed deadlines n Result: e. g. , jitter n Periodic sampling: streams n Affects scheduling policy n Bandwidth demand n Bandwidth versus quality tradeoff NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Service and Protocol Req. n Time-sensitive requirements n High data throughput requirements n Service guarantee requirements n High or partial reliability requirements n Cost-based fairness requirements NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Resource Reservation n Proper resource management helps to establish desired Qo. S (memory, bandwidth, CPU, …) n E. g. : network bandwidth n Circuit-switched versus n Packet-switched NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Resource Reservation n Rule of Thumb Shared resources can often be more (cost-) effectively used compared with dedicated resources n E. g. : In circuit-switched telephone system “silence” will consume bandwidth NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Qo. S Summary n (Networked) multimedia systems have certain requirements But, we have n Best-effort, shared network: Internet n Non real-time OS: Windows, Linux Need to find clever techniques NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
You are Here Encoder Decoder Middlebox Receiver Sender Network NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Interested ISO Layers Application Transport Network NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Interested ISO Layers RTP TCP UDP IP Multicast Network. IP NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
IP Multicast NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Communication Models sender receiver Traditional Applications: One-to-One NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Communication Models sender receivers Media Applications: One-to-Many NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Communication Models Mesh topology Media Applications: Many-to-Many NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Communication Models Example: MCU for video conferencing Star topology (client-server) (Multipoint Control Unit) Media Applications: Many-to-Many NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Traditional Solutions n Mesh n N-1 connections at each client n (N × (N-1))/2 connections total n Not scalable! n Star n 1 connection per client n Server resources become a bottleneck n Single point of failure NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Famous Example n You. Tube: client-server video distribution n Throughput: > 100 million videos per day (July 2006) n Number of users: > 20 million per month n Video bit-rate: 250 kb/s (Adobe Flash) n Cost of bandwidth: several million US$ per month NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
One Solution: IP Multicast sender receivers NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Group and Members members NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Sending to a Group NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Joining and Leaving NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Anyone can Send NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Multicast Address n Group ID or “Multicast address” n 224. 0. 0. 0 – 239. 255 NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Unicast S A B C Router A Router C NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) B
Multicast S G A Router C NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) B
Multicast S G Router A Router G C NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) Router B
Multicast S G A Router C NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) B G
Question 1 should I forward this packet to my subnet? Router ? NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) G
Group Management n Routers maintain “local host group membership table” n “which group has a member in my subnet ? ” NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Question 2 which neighbors should I forward this packet? Router NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Routing Protocols NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Routing Protocols n Generic Methods : n Form a tree to all routers with members n Deliver the packets along the tree NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Shortest Path Tree n One tree for each source for each group NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Shared Tree n One tree for each group NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Routing Protocols n DVMRP – shortest path tree n CBT – shared tree n PIM – combine both NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
DVMRP Distance Vector Multicast Routing Protocol NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
A router needs to remember. . n If it has any member for group G in its subnet n Where to forward packets from source S to group G n Which neighbors will not throw my packets away n Which sub-trees are pruned NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Problems of DVMRP n Not Scalable n O(|S||G|) n Not Efficient n Flooding initially n Periodically exchange routing tables NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
CBT Core-based Tree NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Core Based Tree n One tree per group n Pick a router as core NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
A Shared Tree U W R Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
V Joins G U W R JOIN Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
V Joins G U W R JOIN Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
V Joins G U W R ACK Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
V Joins G U W R ACK Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
V Joins G U W R Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
U Joins G U W R JOIN Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
U Joins G U W R ACK Q intercept! NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
P Sends (on Tree) U W R Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
W Sends (Not on Tree) U W R Q NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) core P V
CBT Strengths n Scalable n O(|G|) states n No flooding n No exchange of states NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
CBT Weaknesses n Core placement matters n Single point of failure n Core can become bottleneck n Paths not always shortest NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
PIM Protocol Independent Multicast NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
PIM n Get the best of both worlds: n dense mode : similar to DVMRP n sparse mode : similar to CBT NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Summary n What is IP Multicast? n How to route packets n IGMP n DVMRP/CBT/PIM NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
So, why can’t we multicast? n Who assign multicast address? n Who pay for multicast traffic? n How to inter-operate between protocols? n How can we prevent Do. S? NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Multicast Programming NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Create a UDP Socket n s = socket(PF_INET, SOCK_DGRAM, 0) n bind(s, sock_addr, sizeof(sock_addr)) NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Join a Group struct sockaddr_in group. Struct; struct ip_mreq; mreq. imr_multiaddr = … // init mcast addr setsockopt(s, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *) &mreq, sizeof(mreq)) NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Leave a Group struct sockaddr_in group. Struct; struct ip_mreq; mreq. imr_multiaddr = … // init mcast addr setsockopt(s, IPPROTO_IP, IP_DROP_MEMBERSHIP, (char *) &mreq, sizeof(mreq)) NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Transport Layer NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Interested ISO Layers RTP TCP UDP IP Multicast Network. IP NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
TCP vs UDP NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
TCP vs UDP n TCP n connection oriented n packet ordering n reliability n congestion control n UDP n just send! NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
How TCP Works (Roughly) n Sender expects packet to be ACK n If received duplicate ACKs or no ACK after RTO, assume packet lost NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
How TCP Works (Roughly) n Congestion Avoidance - Reduce sending window when packet lost, increase when packet gets through NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Conventional Wisdom n Continuous media uses UDP n Retransmission may not be useful n Congestion control makes throughput unpredictable n Multicast + TCP has problems NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
UDP Header struct UDPHeader { short src_port; short dst_port; short length; short checksum; } NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
UDP not enough n Who sent this packet? n How do I interpret this packet? n When was this packet generated? n Which packets come first? n Is this packet important? n Should I ask for retransmission? NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
UDP Challenges n “NATmare” (© Nan Chen, Atrica) n Many residential computers use network address translation (NAT) NAT device (Cable modem gateway) NAT device (DSL gateway) Peer 2 Peer 1 128. 125. 4. 204 192. 168. 0. 1 NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) 209. 7. 114. 157 192. 168. 1. 3
Application-Level Framing n Expose details to applications n Let application decides what to do with a packet, not transport protocol NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTP Real-Time Transport Protocol NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTP Packet Format RTP Header RTP Payload Header NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) RTP Payload
RTP Header n payload type: 7 bits n identify content n e. g. 14: mp 3 32: MPEG-1 NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTP Header n sequence number: 16 bits n packet sequence number NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTP Header n media timestamp: 32 bits n the instant the first byte in this packet is captured NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTP Header n SSRC: 32 bits n random, unique in a session n identify a source (not host!) NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTP Header n marker bit: n depends on payload n e. g. beginning of frame NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
On Receiving RTP packet n check SSRC n new source? n existing source? which one? n check payload type n has format been changed? n which decoder should I use? NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTCP Real-Time Transport Control Protocol NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTCP n Real-Time Control Protocol n Provides n receiver’s feedback n network conditions n time synchronization n receiver’s description NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTCP Packet Types n Sender’s Report (SR) n Receiver’s Report (RR) n Source Description (SDES) n Application Specific (APP) n BYE NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Fields in SR n NTP and RTP Timestamp n relate media timestamp to real time n Sender’s stats n byte count, packet count NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Fields in SR + RR n Reception Report n Number of lost packets n % of lost packets tdlsr n Inter-arrival jitter n Timestamp of last SR n Delay since last SR NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang) SR RR tlsr
Deducing Network Conditions n Packet Loss Rate n Interarrival Jitter n Round Trip Time NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Calculating Packet Loss Ratio n for each source, keep n first sequence number S 0 n last sequence number Slast n Expected packets = Slast – S 0 n Count how many received packets NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Calculating Interarrival Jitter n Variance in packet spacing n Define: n Pi. arrival_time n Pi. media_timestamp n Pi. transit_time NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Calculating Interarrival Jitter n Pi. transit_time = Pi. arrival_time - Pi. media_timestamp n Difference in transit time for two consecutive packets = D(i, i-1) = |Pi. transit_time – Pi-1. transit_time| NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Calculating Interarrival Jitter n Jitter after packet i = Ji n Ji = (1 -a) × Ji-1 + a × |D(i, i-1)| n RFC 1889: n Ji = Ji-1 + ( |D(i, i-1)| Ji-1)/16 NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
Calculating ? ? ? n Pi. sender_byte_count n Pi. sender_packet_count NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTSP Real-Time Streaming Protocol NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTSP n Application-level protocol for control over the delivery of data with real-time properties n Simple, text-based n RFC 2326 NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTSP Example DESCRIBE rtsp: //genesis/hackers. mov RTSP/1. 0 200 OK Server: QTSS/v 96 Cseq: Content-Type: application/sdp Content-Base: rtsp: //genesis/hackers. mov/ Content-length: 179 v=0 s=hackers. mov u=http: //genesis. usc. edu/ e=admin@genesis. usc. edu c=IN IP 4 128. 125. 163. 19 a=control: / a=range: npt=0 -3714. 90167 m=audio 0 RTP/AVP 10 a=control: track. ID=2 NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTSP Example SETUP rtsp: //genesis/hackers. mov Transport: RTP/AVP; unicast; client_port=3000 -3001 RTSP/1. 0 200 OK Server: QTSS/v 96 Cseq: Session: 4862038713701816342; timeout=6000 Transport: rtp/avp; server_port=2000 -2001; client_port=3000 -3001 PLAY rtsp: //genesis/hackers. mov Session: 4862038713701816342 RTSP/1. 0 200 OK Server: QTSS/v 96 Cseq: Session: 4862038713701816342 RTP-Info: url=hackers. mov; seq=59970; ssrc=477987946; rtptime=263102960 NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
RTSP Example … [Session plays] … TEARDOWN rtsp: //genesis/hackers. mov Session: 4862038713701816342 RTSP/1. 0 200 OK Server: QTSS/v 96 Cseq: Session: 4862038713701816342 Connection: Close NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
SIP Session Initiation Protocol NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
SIP n Application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants. n Text-based n RFC 3261 n Has been accepted as a standard for Vo. IP (Note: Skype does not use SIP) NUS. SOC. CS 5248 -2007 Roger Zimmermann (based on slides by Ooi Wei Tsang)
- Soc2 vs soc3
- Nus soc ffmpeg
- Nus soc ffmpeg
- Nus ffmpeg
- Nus soc course schedule
- Nus soc ffmpeg
- Nus soc ffmpeg
- Nus proxy
- Roger zimmermann
- Moritz zimmermann sap
- Zimmermann
- Angelika zimmermann
- Lerndokumentation zimmermann
- Knowledge graphs antoine zimmermann
- Kaido zimmermann
- Zimmerman-traxler transition state model
- Sap hybris overview
- Zimmermann telegram cartoon
- Zimmermann
- Frank zimmermann cern
- Aaron tan tuck choy
- Nus cit
- Nus grading system
- Ay 21/22 nus
- Cj koh library
- Nus cs1010
- Nus
- Nus law library
- Codecrunch nus
- Nus lecture
- Zoom meeting
- Cs-1101
- Aaron tan nus
- Aaron tan nus
- Nus entrepreneurship minor
- Nus temperature declaration
- Aaron tan nus
- Nus temperature declaration
- Nus high school timetable
- Myedu nus
- Nus market research
- Ben leong medium
- Nus linc catalogue
- Aaron tan nus
- Nus cs2100
- Nus
- Nus library booking
- Fortify soc
- Soc 402
- Https://slidetodoc.com/cc-ngun-m-c-chung-c-im-g/
- Soc tier 1
- Sonicjs
- Mag paed soc
- Mẫu lập kế hoạch chăm sóc
- đám mây lốm đốm xám như đuôi con sóc
- j
- Soc cissp
- Soc 224
- Professional.diabetes. org/standards
- Itrs roadmap
- Mình tròn thân trắng dáng hình thon thon
- Ss800-ag-man-010/p-9290
- Escala soc
- Uci web soc
- Soc
- Soc 2022
- Intelligence driven defense
- Workday soc 2 report
- Phân độ sốc
- Sơc sin
- No soc escarabat ni grill
- Ics catalogue uci
- Siov soc
- Juvenile law definition
- Soc croatia
- Soc 402
- Ang mo kio ttsh
- Ibm x-force
- Czss dubrava
- Mẫu lập kế hoạch chăm sóc
- Soc
- 1960s greasers fashion
- Xilinx soc
- Ihss max hours per month
- Nyc bls protocols
- Vaeai protocols
- Define communication protocols
- Inter vlan routing layer 3 switch
- Routing protocols administrative distance
- Pembangunan profesional dan pembelajaran profesional
- Pipelining protocol
- Therapist driven protocols
- Wireless lan protocols
- Chapter 3 network protocols and communications
- Cryptography standards and protocols
- Plc norms and protocols
- Local government service protocols
- Gsm protocol
- Proofs of work and bread pudding protocols
- Write a detailed note on unicast routing protocols