IP Multicast CS 5248 NUS SOC CS 5248
- Slides: 103
IP Multicast CS 5248 NUS. SOC. CS 5248 Ooi Wei Tsang
You are Here Encoder Decoder Middlebox Receiver Sender Network NUS. SOC. CS 5248 OOI Wei Tsang
Communication Models sender receiver Traditional Applications: One-to-One NUS. SOC. CS 5248 OOI Wei Tsang
Communication Models sender receivers Media Applications: One-to-Many NUS. SOC. CS 5248 OOI Wei Tsang
Communication Models Media Applications: Many-to-Many NUS. SOC. CS 5248 OOI Wei Tsang
Naïve Solution n Create M unicast connection for M clients NOT Scalable! NUS. SOC. CS 5248 OOI Wei Tsang
Famous Example n Victoria’s Secret Spring Fashion Show n Live Broadcast in 1999 n Video bit-rate: 28 Kbps n Number of viewers: 1. 5 Millions NUS. SOC. CS 5248 OOI Wei Tsang
IP Multicast NUS. SOC. CS 5248 Ooi Wei Tsang
New Model: IP Multicast sender receivers NUS. SOC. CS 5248 OOI Wei Tsang
Group and Members NUS. SOC. CS 5248 OOI Wei Tsang
Sending to a Group NUS. SOC. CS 5248 OOI Wei Tsang
Joining and Leaving NUS. SOC. CS 5248 OOI Wei Tsang
Anyone can Send NUS. SOC. CS 5248 OOI Wei Tsang
Multicast Address n Group ID or “Multicast address” n 224. 0. 0. 0 – 239. 255 NUS. SOC. CS 5248 OOI Wei Tsang
Unicast S A B C Router A Router C NUS. SOC. CS 5248 OOI Wei Tsang B
Multicast S G A Router C NUS. SOC. CS 5248 OOI Wei Tsang B
Multicast S A G Router G C NUS. SOC. CS 5248 OOI Wei Tsang Router B
Multicast G S A Router G Router C NUS. SOC. CS 5248 OOI Wei Tsang B
Question 1 should I forward this packet to my subnet? Router ? NUS. SOC. CS 5248 OOI Wei Tsang G
Question 2 which neighbors should I forward this packet? Router NUS. SOC. CS 5248 OOI Wei Tsang
Group Management NUS. SOC. CS 5248 Ooi Wei Tsang
Group Management n Routers maintain “local host group membership table” n “which group has a member in my subnet ? ” NUS. SOC. CS 5248 OOI Wei Tsang
IGMP v 1. 0 n JOIN message A : “I want to join group G. ” n QUERY message R : “Which group have you joined ? ” NUS. SOC. CS 5248 OOI Wei Tsang
IGMP v 1. 0 n MEMBERSHIP Report A : “I am a member of group G” A : “I am a member of group H” B : “I am a member of group G” NUS. SOC. CS 5248 OOI Wei Tsang
Avoiding Implosion n Select random delay t n After time t, if nobody belongs to the same group, send membership report. n Resend the report after some delay just to be safe. NUS. SOC. CS 5248 OOI Wei Tsang
Leave n If no one in group G after a few query messages, remove G from local host membership table. n Problem: Long leave latency (minutes) NUS. SOC. CS 5248 OOI Wei Tsang
IGMP v 2. 0 n LEAVE message “I want to leave group G” n Group-Specific Query “Anybody else belongs to group G ? ” NUS. SOC. CS 5248 OOI Wei Tsang
IGMP v 3. 0 n Group-Source Inclusion “I want to listen to S from group G” n Group-Source Exclusion “I do not want to listen to S from group G” NUS. SOC. CS 5248 OOI Wei Tsang
Question 2 which neighbors should I forward this packet? Router NUS. SOC. CS 5248 OOI Wei Tsang
Routing Protocols NUS. SOC. CS 5248 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 OOI Wei Tsang
Shortest Path Tree n One tree for each source for each group NUS. SOC. CS 5248 OOI Wei Tsang
Shared Tree n One tree for each group NUS. SOC. CS 5248 OOI Wei Tsang
Routing Protocols n DVMRP n CBT n PIM NUS. SOC. CS 5248 OOI Wei Tsang
DVMRP Distance Vector Multicast Routing Protocol NUS. SOC. CS 5248 Ooi Wei Tsang
From S to G Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
Is R on the shortest path to S ? Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
If no. . ignore the packet Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
If yes. . continue Where should I forward it to ? Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
Forward to subnet? Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
Truncation n Router checks local host membership table. n Duplicate the packets only if there is a member in the subnet. NUS. SOC. CS 5248 OOI Wei Tsang
Truncation Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
Forward to Neighbors? R NUS. SOC. CS 5248 OOI Wei Tsang ? Q ? T P
Observation n If neighbor is going to ignore my packets, don’t need to send the packets to it. NUS. SOC. CS 5248 OOI Wei Tsang
Exchanging Routing Tables R Dest Next Hop Cost S P 4 A T 3 B P 2 Q P T NUS. SOC. CS 5248 OOI Wei Tsang
Flooding n Default : Always send to neighboring routers, unless told otherwise. NUS. SOC. CS 5248 OOI Wei Tsang
Pruning n Routers who received a “useless” packet send a prune message back. “Don’t send me packets addressed to G anymore !” NUS. SOC. CS 5248 OOI Wei Tsang
Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
Q R P PRUNE NUS. SOC. CS 5248 OOI Wei Tsang T
Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
Q R P GRAFT NUS. SOC. CS 5248 OOI Wei Tsang T
Q R P T NUS. SOC. CS 5248 OOI Wei Tsang
Q PRUNE R P T NUS. SOC. CS 5248 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 OOI Wei Tsang
Periodically Rebuild Tree n DVMRP periodically forget about everything it learned n Why? n To clean-up “left-over” states for groups that are no longer active. NUS. SOC. CS 5248 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 OOI Wei Tsang
CBT Core-based Tree NUS. SOC. CS 5248 Ooi Wei Tsang
Core Based Tree n One tree per group n Pick a router as core n Identity of core can be preconfigured or computing using some multicast address to core address mapping. NUS. SOC. CS 5248 OOI Wei Tsang
A Shared Tree U Q NUS. SOC. CS 5248 OOI Wei Tsang W R core P V
V Joins G U W R JOIN Q NUS. SOC. CS 5248 OOI Wei Tsang core P V
V Joins G U W R JOIN Q NUS. SOC. CS 5248 OOI Wei Tsang core P V
V Joins G U W R ACK Q NUS. SOC. CS 5248 OOI Wei Tsang core P V
V Joins G U W R ACK Q NUS. SOC. CS 5248 OOI Wei Tsang core P V
V Joins G U Q NUS. SOC. CS 5248 OOI Wei Tsang W R core P V
U Joins G U W R JOIN NUS. SOC. CS 5248 OOI Wei Tsang Q core P V
U Joins G U W R ACK Q intercept! NUS. SOC. CS 5248 OOI Wei Tsang core P V
Echo U Q NUS. SOC. CS 5248 OOI Wei Tsang W R core P V
Flush! U Q NUS. SOC. CS 5248 OOI Wei Tsang W R X core P V
Send (on Tree) U Q NUS. SOC. CS 5248 OOI Wei Tsang W R core P V
Send (Not on Tree) U Q NUS. SOC. CS 5248 OOI Wei Tsang W R core P V
CBT Strengths n Scalable n O(|G|) states n No flooding n No exchange of states NUS. SOC. CS 5248 OOI Wei Tsang
CBT Weaknesses n Core placement matters n Single point of failure n Core can become bottleneck NUS. SOC. CS 5248 OOI Wei Tsang
SPT vs. ST NUS. SOC. CS 5248 Ooi Wei Tsang
Experiment 1 n “Shared tree has worst delay than shortest path tree. How much worst? ” n Generate 500 random networks, 50 nodes each, 10 -member groups NUS. SOC. CS 5248 OOI Wei Tsang
Experimental Results Delay Ratio (CBT/SPT) ~1. 4 1 NUS. SOC. CS 5248 OOI Wei Tsang Node Degree
Experiment 2 n “CBT causes traffic to concentrate on a set of links. How bad is this concentration? ” n Generate 500 random networks, 50 nodes, 300 groups, 40 members, 32 senders NUS. SOC. CS 5248 OOI Wei Tsang
Experimental Results Max Number of Flows/Link 9 K CBT SPT 6 K NUS. SOC. CS 5248 OOI Wei Tsang Node Degree
PIM Protocol Independent Multicast NUS. SOC. CS 5248 Ooi Wei Tsang
PIM n Get the best of both world : n dense mode : shortest path n sparse mode : shared tree NUS. SOC. CS 5248 OOI Wei Tsang
PIM-DM n Similar to DVMRP, except n send to neighbors even if they will ignore my packets NUS. SOC. CS 5248 OOI Wei Tsang
PIM-SM n Similar to CBT except n links are uni-directional U Q NUS. SOC. CS 5248 OOI Wei Tsang W R core P V
Join R P NUS. SOC. CS 5248 OOI Wei Tsang Q join core
Send (SM) S R P NUS. SOC. CS 5248 OOI Wei Tsang Q core
Switch (Join S) S R switch P NUS. SOC. CS 5248 OOI Wei Tsang Q core
Switch S switch P NUS. SOC. CS 5248 OOI Wei Tsang Q R core
Prune S R P NUS. SOC. CS 5248 OOI Wei Tsang Q prune core
Summary n What is IP Multicast? n How to route packets n IGMP n DVMRP/CBT/PIM NUS. SOC. CS 5248 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 OOI Wei Tsang
System Design Considerations or “What I learned from Multicast Routing Protocols” NUS. SOC. CS 5248 Ooi Wei Tsang
Practical Issues n Money matters n Security matters NUS. SOC. CS 5248 OOI Wei Tsang
Scalability n Minimize states n Avoid implosion n random timer n Avoid hot spot NUS. SOC. CS 5248 OOI Wei Tsang
Robustness n Periodically forget (soft-states) n Echo messages (alive messages) NUS. SOC. CS 5248 OOI Wei Tsang
Minimize Interface /Coupling n do not assume unicast routing protocol NUS. SOC. CS 5248 OOI Wei Tsang
Middle Ground n If you have two schemes with different pros/cons, think “middle ground” NUS. SOC. CS 5248 OOI Wei Tsang
Possible Survey and Project Topics NUS. SOC. CS 5248 Ooi Wei Tsang
Application-Level Multicast NUS. SOC. CS 5248 OOI Wei Tsang
Single Source Multicast n Most media applications do not require many-to-many communication. n Single Source Multicast protocols have been proposed NUS. SOC. CS 5248 OOI Wei Tsang
Transport Layer NUS. SOC. CS 5248 Ooi Wei Tsang
TCP vs UDP n TCP offers n packet ordering n reliability n flow control n UDP n just send! NUS. SOC. CS 5248 OOI Wei Tsang
TCP vs UDP n Continuous media uses UDP n Retransmission may not be useful n Flow control makes throughput unpredictable n Multicast + TCP has problems NUS. SOC. CS 5248 OOI Wei Tsang
UDP Header struct { short } NUS. SOC. CS 5248 OOI Wei Tsang UDPHeader src_port; dst_port; length; checksum;
Is UDP Enough? n Who sent this packet? n How do I interpret this packet? n When was this packet generated? n Which packets come first? NUS. SOC. CS 5248 OOI Wei Tsang
RTP n “Real-Time Transport Protocol” (not really a transport protocol) n Provides n source identification n sequence number n time stamping n payload identification NUS. SOC. CS 5248 OOI Wei Tsang
- Soc 3 vs soc 2
- Nus soc ffmpeg
- Nus soc course schedule
- Nus soc ffmpeg
- Nus soc ffmpeg
- Nus proxy
- Nus soc ffmpeg
- Nus soc ffmpeg
- Unicast vs multicast vs broadcast
- L
- Multicast
- Multicast
- Broadcasting
- Unicast vs multicast
- Mvpns
- Request reply protocol in distributed system
- Bimodal multicast
- Multicast
- Order of events
- Apa itu multicast
- Multicast
- Multicast vs anycast
- Overlay multicast
- Protocolo igmp
- Calico multicast
- Broadcast vs unicast vs multicast
- What is multicast communication in distributed system
- Gggsg
- Unicast multicast broadcast address example
- Unicast multicast and broadcast
- Bier multicast
- Broadcast and multicast routing
- Nus euromonitor
- Cs2100 nus
- Ben leong medium
- Nus library portal
- Ivle nus
- Aaron tan nus
- Nus
- Nus digital library
- Poll everywhere nus
- Cs1010 nus
- Enhance life
- Aadyaa maddi
- Codecrunch nus
- C j koh law library
- Earth rotates from west to east
- Central library rbr
- Nus lecture
- Poll everywhere nus
- Cs-1101
- Anagram list
- Aaron tan nus
- Nus temperature declaration
- Nus entrepreneurship centre
- Nus temperature declaration
- Aaron tan nus
- Nus high school timetable
- Nus bza curriculum
- Soc 106
- Soc 402
- Xilinx soc
- Tan tock seng rehabilitation centre
- "security operations center"
- Socijalna dubrava
- Sớc sin
- Mẫu lập kế hoạch chăm sóc
- Soc
- 1960’s greaser fashion
- Ihss max hours per month
- Fortify soc
- Soc 402
- Modern siem
- Gpio 4
- Mag paed soc
- Professional.diabetes. org/standards
- 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
- để nguyên nước chấm cổ truyền
- J ceram soc jpn
- Soc cissp
- Soc 224
- Itrs roadmap
- Dss-soc
- Workday soc report
- Soc tea
- Webreg uci
- Soc
- Que es allo que tothom pren i ningu no les emporta
- Soc 2022
- Next generation soc
- Soc croatia
- Thuốc phn
- Sơc sin
- Ics prerequisite clearing
- Siov soc