NUS.SOC.CS5248 Ooi Wei Tsang IP Multicast CS5248.

Slides:



Advertisements
Similar presentations
1April 16, 2002 Layer 3 Multicast Addressing IP group addresses – “Class D” addresses = high order bits of “1110” Special reserved.
Advertisements

Introduction 1 Lecture 22 Network Layer (Broadcast and Multicast) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
Multicast on the Internet CSE April 2015.
Multicasting CSE April Internet Multicast Service Model Multicast group concept: use of indirection a host “sends” IP datagrams to multicast.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Protocols.
COS 420 Day 15. Agenda Assignment 3 Due Assignment 4 Posted Chap Due April 6 Individual Project Presentations Due IEPREP - Jeff MANETS - Donnie.
School of Information Technologies Internet Multicasting NETS3303/3603 Week 10.
COS 420 Day 18. Agenda Group Project Discussion Program Requirements Rejected Resubmit by Friday Noon Protocol Definition Due April 12 Assignment 3 Due.
TDC375 Winter 2002John Kristoff - DePaul University1 Network Protocols IP Multicast.
Chapter 4 IP Multicast Professor Rick Han University of Colorado at Boulder
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
1 IP Multicasting. 2 IP Multicasting: Motivation Problem: Want to deliver a packet from a source to multiple receivers Applications: –Streaming of Continuous.
TDC375 Autumn 03/04 John Kristoff - DePaul University 1 Network Protocols Multicast.
EE689 Lecture 12 Review of last lecture Multicast basics.
Multicast Networking 2 References Multicast Networking and Applications Miller, C. Kenneth Addison-Wesley, 1999 Computer Networking:
MULTICASTING Network Security.
Spanning Tree and Multicast. The Story So Far Switched ethernet is good – Besides switching needed to join even multiple classical ethernet networks Routing.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Application-Level Multicast.
1 Computer Networks IP Multicast. 2 Recall Unicast Broadcast Multicast sends to a specific group.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
Computer Networks 2 Lecture 1 Multicast.
Multicasting  A message can be unicast, multicast, or broadcast.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
Multicast Routing Protocols NETE0514 Presented by Dr.Apichan Kanjanavapastit.
Network Layer4-1 R1 R2 R3R4 source duplication R1 R2 R3R4 in-network duplication duplicate creation/transmission duplicate Broadcast Routing r Deliver.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Protocols.
NUS.SOC.CS2105 Ooi Wei Tsang Application Transport Network Link Physical you are here.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Protocols.
Broadcast and Multicast. Overview Last time: routing protocols for the Internet  Hierarchical routing  RIP, OSPF, BGP This time: broadcast and multicast.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Multicast Routing Protocols. The Need for Multicast Routing n Routing based on member information –Whenever a multicast router receives a multicast packet.
Multicast Outline Multicast Introduction and Motivation RIP-based and Protocol Independent Multicast Routing.
© J. Liebeherr, All rights reserved 1 Multicast Routing.
Multicast Routing, Error Control, and Congestion Control.
IP Multicast COSC Addressing Class D address Ethernet broadcast address (all 1’s) IP multicast using –Link-layer (Ethernet) broadcast –Link-layer.
Multicast 1 Spencer Tsai Mobile Communication & Broadband Network Lab CSIE Fu-Jen Catholic University Introduction to Multicast.
CS 4396 Computer Networks Lab IP Multicast - Fundamentals.
Introduction to Multicast Routing Protocols
© J. Liebeherr, All rights reserved 1 IP Multicasting.
1 © 2000, Cisco Systems, Inc _05_2000_c2 Server Router Unicast Server Router Multicast Unicast vs. Multicast.
IP multicast Advisor: Prof. Wanjiun Liao Instructor: De-Nian Yang
NUS.SOC.CS5248 Ooi Wei Tsang Course Matters. NUS.SOC.CS5248 Ooi Wei Tsang Deadlines 11 Oct: Survey Paper Due 18 Oct: Paper Reviews Due.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 21: Multicast Routing Slides used with.
NUS.SOC.CS5248 Ooi Wei Tsang Application-Level Multicast.
1 IP Multicasting Relates to Lab 10. It covers IP multicasting, including multicast addressing, IGMP, and multicast routing.
4: Network Layer4-1 Chapter 4: Network Layer Last time: r Internet routing protocols m RIP m OSPF m IGRP m BGP r Router architectures r IPv6 Today: r IPv6.
Multicasting  A message can be unicast, multicast, or broadcast. Let us clarify these terms as they relate to the Internet.
Chapter 9: Multicast Sockets
Multicast Communications
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #09: SOLUTIONS Shivkumar Kalyanaraman: GOOGLE: “Shiv.
1 Protocol Independent Multicast (PIM) To develop a scalable protocol independent of any particular unicast protocol –ANY unicast protocol to provide routing.
2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.
NUS.SOC.CS5248 Ooi Wei Tsang Protocols. NUS.SOC.CS5248 Ooi Wei Tsang You are Here Network Encoder Sender Middlebox Receiver Decoder.
Multicast & Multimedia CS731 Wei Tsang Ooi. Overview What is Multicast ? Group Management (IGMP) Routing Protocols (DVMRP, MOPSF, CBT, PIM-DM, PIM-SM)
Multicasting EECS June Multicast One-to-many, many-to-many communications Applications: – Teleconferencing – Database – Distributed computing.
Communication Networks Recitation 11. Multicast & QoS Routing.
DMET 602: Networks and Media Lab Amr El Mougy Yasmeen EssamAlaa Tarek.
DMET 602: Networks and Media Lab
Protocols.
Multicast Outline Multicast Introduction and Motivation DVRMP.
Protocols.
CMPE 252A: Computer Networks
Multicast Outline Multicast revisited
IP Multicast COSC /5/2019.
EE 122: Lecture 13 (IP Multicast Routing)
Implementing Multicast
Optional Read Slides: Network Multicast
Presentation transcript:

NUS.SOC.CS5248 Ooi Wei Tsang IP Multicast CS5248

NUS.SOC.CS5248 OOI Wei Tsang You are Here Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI Wei Tsang Communication Models Traditional Applications: One-to-One receiversender

NUS.SOC.CS5248 OOI Wei Tsang Communication Models Media Applications: One-to-Many sender receivers

NUS.SOC.CS5248 OOI Wei Tsang Communication Models Media Applications: Many-to-Many

NUS.SOC.CS5248 OOI Wei Tsang Naïve Solution Create M unicast connection for M clients NOT Scalable!

NUS.SOC.CS5248 OOI Wei Tsang Famous Example Victoria’s Secret Spring Fashion Show Live Broadcast in 1999 Video bit-rate: 28 Kbps Number of viewers: 1.5 Millions

NUS.SOC.CS5248 Ooi Wei Tsang IP Multicast

NUS.SOC.CS5248 OOI Wei Tsang New Model: IP Multicast sender receivers

NUS.SOC.CS5248 OOI Wei Tsang Group and Members

NUS.SOC.CS5248 OOI Wei Tsang Sending to a Group

NUS.SOC.CS5248 OOI Wei Tsang Joining and Leaving

NUS.SOC.CS5248 OOI Wei Tsang Anyone can Send

NUS.SOC.CS5248 OOI Wei Tsang Multicast Address Group ID or “Multicast address” –

NUS.SOC.CS5248 OOI Wei Tsang Unicast Router A B C S A B C

NUS.SOC.CS5248 OOI Wei Tsang Multicast Router A B C S G

NUS.SOC.CS5248 OOI Wei Tsang Multicast Router A B C S G G

NUS.SOC.CS5248 OOI Wei Tsang Multicast Router A B C S G G

NUS.SOC.CS5248 OOI Wei Tsang Question 1 Router G ? should I forward this packet to my subnet?

NUS.SOC.CS5248 OOI Wei Tsang Question 2 Router which neighbors should I forward this packet?

NUS.SOC.CS5248 Ooi Wei Tsang Group Management

NUS.SOC.CS5248 OOI Wei Tsang Group Management Routers maintain “local host group membership table” “which group has a member in my subnet ?”

NUS.SOC.CS5248 OOI Wei Tsang IGMP v1.0 JOIN message A : “I want to join group G.” QUERY message R : “Which group have you joined ?”

NUS.SOC.CS5248 OOI Wei Tsang IGMP v1.0 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.CS5248 OOI Wei Tsang Avoiding Implosion Select random delay t After time t, if nobody belongs to the same group, send membership report. Resend the report after some delay just to be safe.

NUS.SOC.CS5248 OOI Wei Tsang Leave If no one in group G after a few query messages, remove G from local host membership table. Problem: Long leave latency (minutes)

NUS.SOC.CS5248 OOI Wei Tsang IGMP v2.0 LEAVE message “I want to leave group G” Group-Specific Query “Anybody else belongs to group G ?”

NUS.SOC.CS5248 OOI Wei Tsang IGMP v3.0 Group-Source Inclusion “I want to listen to S from group G” Group-Source Exclusion “I do not want to listen to S from group G”

NUS.SOC.CS5248 OOI Wei Tsang Question 2 Router which neighbors should I forward this packet?

NUS.SOC.CS5248 Ooi Wei Tsang Routing Protocols

NUS.SOC.CS5248 OOI Wei Tsang Routing Protocols Generic Methods : Form a tree to all routers with members Deliver the packets along the tree

NUS.SOC.CS5248 OOI Wei Tsang Shortest Path Tree One tree for each source for each group

NUS.SOC.CS5248 OOI Wei Tsang Shared Tree One tree for each group

NUS.SOC.CS5248 OOI Wei Tsang Routing Protocols DVMRP CBT PIM

NUS.SOC.CS5248 Ooi Wei Tsang DVMRP Distance Vector Multicast Routing Protocol

NUS.SOC.CS5248 OOI Wei Tsang From S to G RP Q T

NUS.SOC.CS5248 OOI Wei Tsang RP Q T Is R on the shortest path to S ?

NUS.SOC.CS5248 OOI Wei Tsang RP Q T If no.. ignore the packet

NUS.SOC.CS5248 OOI Wei Tsang RP Q T If yes.. continue Where should I forward it to ?

NUS.SOC.CS5248 OOI Wei Tsang RP Q T Forward to subnet?

NUS.SOC.CS5248 OOI Wei Tsang Truncation Router checks local host membership table. Duplicate the packets only if there is a member in the subnet.

NUS.SOC.CS5248 OOI Wei Tsang RP Q T Truncation

NUS.SOC.CS5248 OOI Wei Tsang RP Q T ? ? Forward to Neighbors?

NUS.SOC.CS5248 OOI Wei Tsang Observation If neighbor is going to ignore my packets, don’t need to send the packets to it.

NUS.SOC.CS5248 OOI Wei Tsang RP Q T Exchanging Routing Tables DestNext HopCost SP4 AT3 BP2

NUS.SOC.CS5248 OOI Wei Tsang Flooding Default : Always send to neighboring routers, unless told otherwise.

NUS.SOC.CS5248 OOI Wei Tsang Pruning Routers who received a “useless” packet send a prune message back. “Don’t send me packets addressed to G anymore !”

NUS.SOC.CS5248 OOI Wei Tsang RP Q T

NUS.SOC.CS5248 OOI Wei Tsang RP Q T PRUNE

NUS.SOC.CS5248 OOI Wei Tsang RP Q T

NUS.SOC.CS5248 OOI Wei Tsang RP Q T GRAFT

NUS.SOC.CS5248 OOI Wei Tsang RP Q T

NUS.SOC.CS5248 OOI Wei Tsang RP Q T PRUNE

NUS.SOC.CS5248 OOI Wei Tsang A router needs to remember.. If it has any member for group G in its subnet Where to forward packets from source S to group G Which neighbors will not throw my packets away Which sub-trees are pruned

NUS.SOC.CS5248 OOI Wei Tsang Periodically Rebuild Tree DVMRP periodically forget about everything it learned Why? To clean-up “left-over” states for groups that are no longer active.

NUS.SOC.CS5248 OOI Wei Tsang Problems of DVMRP Not Scalable O(|S||G|) Not Efficient Flooding initially Periodically exchange routing tables

NUS.SOC.CS5248 Ooi Wei Tsang CBT Core-based Tree

NUS.SOC.CS5248 OOI Wei Tsang Core Based Tree One tree per group Pick a router as core Identity of core can be pre- configured or computing using some multicast address to core address mapping.

NUS.SOC.CS5248 OOI Wei Tsang A Shared Tree core P Q R U V W

NUS.SOC.CS5248 OOI Wei Tsang V Joins G core P Q R U V JOIN W

NUS.SOC.CS5248 OOI Wei Tsang V Joins G core P Q R U V JOIN W

NUS.SOC.CS5248 OOI Wei Tsang V Joins G core P Q R U V ACK W

NUS.SOC.CS5248 OOI Wei Tsang V Joins G corePQ R U V ACK W

NUS.SOC.CS5248 OOI Wei Tsang V Joins G corePQ R U V W

NUS.SOC.CS5248 OOI Wei Tsang U Joins G corePQ R U V JOIN W

NUS.SOC.CS5248 OOI Wei Tsang U Joins G corePQ RU V ACK W intercept!

NUS.SOC.CS5248 OOI Wei Tsang Echo corePQ RU V W

NUS.SOC.CS5248 OOI Wei Tsang Flush! corePQ RU V X W

NUS.SOC.CS5248 OOI Wei Tsang Send (on Tree) corePQ RU V W

NUS.SOC.CS5248 OOI Wei Tsang Send (Not on Tree) corePQ RU V W

NUS.SOC.CS5248 OOI Wei Tsang CBT Strengths Scalable O(|G|) states No flooding No exchange of states

NUS.SOC.CS5248 OOI Wei Tsang CBT Weaknesses Core placement matters Single point of failure Core can become bottleneck

NUS.SOC.CS5248 Ooi Wei Tsang SPT vs. ST

NUS.SOC.CS5248 OOI Wei Tsang Experiment 1 “Shared tree has worst delay than shortest path tree. How much worst?” Generate 500 random networks, 50 nodes each, 10-member groups

NUS.SOC.CS5248 OOI Wei Tsang Experimental Results Node Degree Delay Ratio (CBT/SPT) 1 ~1.4

NUS.SOC.CS5248 OOI Wei Tsang Experiment 2 “CBT causes traffic to concentrate on a set of links. How bad is this concentration?” Generate 500 random networks, 50 nodes, 300 groups, 40 members, 32 senders

NUS.SOC.CS5248 OOI Wei Tsang Experimental Results Node Degree Max Number of Flows/Link 6K 9K CBT SPT

NUS.SOC.CS5248 Ooi Wei Tsang PIM Protocol Independent Multicast

NUS.SOC.CS5248 OOI Wei Tsang PIM Get the best of both world : dense mode : shortest path sparse mode : shared tree

NUS.SOC.CS5248 OOI Wei Tsang PIM-DM Similar to DVMRP, except send to neighbors even if they will ignore my packets

NUS.SOC.CS5248 OOI Wei Tsang PIM-SM Similar to CBT except links are uni-directional corePQ RU V W

NUS.SOC.CS5248 OOI Wei Tsang Join PcoreQ R join

NUS.SOC.CS5248 OOI Wei Tsang Send (SM) PcoreQ R S

NUS.SOC.CS5248 OOI Wei Tsang Switch (Join S) PcoreQ R S switch

NUS.SOC.CS5248 OOI Wei Tsang Switch PcoreQ R S switch

NUS.SOC.CS5248 OOI Wei Tsang Prune PcoreQ R S prune

NUS.SOC.CS5248 OOI Wei Tsang Summary What is IP Multicast? How to route packets IGMP DVMRP/CBT/PIM

NUS.SOC.CS5248 OOI Wei Tsang So, why can’t we multicast? Who assign multicast address? Who pay for multicast traffic? How to inter-operate between protocols? How can we prevent DoS?

NUS.SOC.CS5248 Ooi Wei Tsang System Design Considerations or “What I learned from Multicast Routing Protocols”

NUS.SOC.CS5248 OOI Wei Tsang Practical Issues Money matters Security matters

NUS.SOC.CS5248 OOI Wei Tsang Scalability Minimize states Avoid implosion random timer Avoid hot spot

NUS.SOC.CS5248 OOI Wei Tsang Robustness Periodically forget (soft-states) Echo messages (alive messages)

NUS.SOC.CS5248 OOI Wei Tsang Minimize Interface /Coupling do not assume unicast routing protocol

NUS.SOC.CS5248 OOI Wei Tsang Middle Ground If you have two schemes with different pros/cons, think “middle ground”

NUS.SOC.CS5248 Ooi Wei Tsang Possible Survey and Project Topics

NUS.SOC.CS5248 OOI Wei Tsang Application-Level Multicast

NUS.SOC.CS5248 OOI Wei Tsang Single Source Multicast Most media applications do not require many-to-many communication. Single Source Multicast protocols have been proposed

NUS.SOC.CS5248 Ooi Wei Tsang Transport Layer

NUS.SOC.CS5248 OOI Wei Tsang TCP vs UDP TCP offers packet ordering reliability flow control UDP just send!

NUS.SOC.CS5248 OOI Wei Tsang TCP vs UDP Continuous media uses UDP Retransmission may not be useful Flow control makes throughput unpredictable Multicast + TCP has problems

NUS.SOC.CS5248 OOI Wei Tsang UDP Header struct UDPHeader { short src_port; short dst_port; short length; short checksum; }

NUS.SOC.CS5248 OOI Wei Tsang Is UDP Enough? Who sent this packet? How do I interpret this packet? When was this packet generated? Which packets come first?

NUS.SOC.CS5248 OOI Wei Tsang RTP “Real-Time Transport Protocol” (not really a transport protocol) Provides source identification sequence number time stamping payload identification