Broadcast Routing. Multicast. Flooding. In-network duplication. deliver packets from source to all other nodes source duplication is inefficient:

Similar documents
DATA COMMUNICATOIN NETWORKING

Exercises to Communication Systems

Review. Some slides are in courtesy of J. Kurose and K. Ross

Multicast Communications

Lecture 6. TCP/IP Network Layer (4)

Network Layer II. Getting IP addresses. DHCP client-server scenario. DHCP client-server scenario. C compiler. You writing assignment 2

CSCE 463/612 Networks and Distributed Processing Spring 2018

Advanced Networking. Multicast

Master Course Computer Networks IN2097

Multicast Communications. Slide Set were original prepared by Dr. Tatsuya Susa

Computer Networks. Wenzhong Li. Nanjing University

What is Multicasting? Multicasting Fundamentals. Unicast Transmission. Agenda. L70 - Multicasting Fundamentals. L70 - Multicasting Fundamentals

Why multicast? The concept of multicast Multicast groups Multicast addressing Multicast routing protocols MBONE Multicast applications Conclusions

Advanced Network Training Multicast

ITEC310 Computer Networks II

Topic: Multicast routing

Chapter 4 roadmap. CS555, Spring /14/2005. WMU-CS, Dr. Gupta 1. Multicast Routing: Problem Statement. Approaches for building mcast trees

Internet Multicast Routing

CSE 123A Computer Networks

List of groups known at each router. Router gets those using IGMP. And where they are in use Where members are located. Enhancement to OSPF

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

Broadcast and Multicast Routing

Multicast service model Host interface Host-router interactions (IGMP) Multicast Routing Distance Vector Link State. Shared tree.

ETSF10 Internet Protocols Routing on the Internet

Multicast. Midterm. EECS 122: Lecture 16. University of California Berkeley. Exam was not meant to be easy

Data Communications & Networks. Session 7 Main Theme Networks: Part II Circuit Switching, Packet Switching, The Network Layer

Exercises to Communication Systems

ETSF10 Internet Protocols Routing on the Internet

ICS 351: Today's plan. routing protocol comparison encapsulation network dynamics multicasting in general IP multicasting IGMP PIM

Multicast EECS 122: Lecture 16

Hierarchical Routing. Our routing study thus far - idealization all routers identical network flat not true in practice

ETSF10 Internet Protocols Routing on the Internet

IP Multicast Technology Overview

IP Multicast. What is multicast?

IP Multicast Routing Protocols

IP Multicast. Falko Dressler Regionales Rechenzentrum Grundzüge der Datenkommunikation IP Multicast

Multicast routing protocols

DD2490 p IP Multicast routing. Multicast routing. Olof Hagsand KTH CSC

PIM Configuration. Page 1 of 9

The Internet network layer

Contents. Overview Multicast = Send to a group of hosts. Overview. Overview. Implementation Issues. Motivation: ISPs charge by bandwidth

Multicast Technology White Paper

Configuring IP Multicast Routing

IP Multicast Technology Overview

IP MULTICAST EXPLAINED

MULTICAST EXTENSIONS TO OSPF (MOSPF)

Table of Contents 1 PIM Configuration 1-1

Multicast overview. Introduction to multicast. Information transmission techniques. Unicast

Distributed Core Multicast (DCM): a multicast routing protocol for many groups with few receivers

Configuring IP Multicast Routing

Distributed Core Multicast (DCM): a multicast routing protocol for many groups with few receivers

Developing IP Muiticast Networks

Configuring IP Multicast Routing

Deliver packets from srce to all other nodes Source duplication is inefficient: creation/transmission. in-network duplication

CS 268: IP Multicast Routing

Internet2 Multicast Workshop

Table of Contents 1 Multicast VPN Configuration 1-1

IPv6 PIM-DM configuration example 36 IPv6 PIM-SM non-scoped zone configuration example 39 IPv6 PIM-SM admin-scoped zone configuration example 42 IPv6

PIM-SM Multicast Routing

Advanced Networking. Multicast

Chapter 4: Network Layer. Chapter 4: Network Layer

Configuring IP Multicast Routing

Multicast overview. Introduction to multicast. Information transmission techniques. Unicast

IP Multicast: PIM Configuration Guide, Cisco IOS Release 12.4T

IPv6 PIM. Based on the forwarding mechanism, IPv6 PIM falls into two modes:

IP Multicast. Overview. Casts. Tarik Čičić University of Oslo December 2001

ASM. Engineering Workshops

Multicast as an ISP service

Lecture 19: Multicast. CSE 123: Computer Networks Stefan Savage

Ahmed Helmy Assistant Professor of Computer Engineering University of Southern California.

KR_4. Strato di rete

Chapter 4 Network Layer

Chapter 4 Network Layer

Module 7 Implementing Multicast

IP Multicast: PIM Configuration Guide, Cisco IOS Release 15S

Chapter 19 Network Layer: Logical Addressing

FSOS Multicast Configuration Guide

COMPUTER NETWORKS CHAP 4 : NETWORK LAYER

Multicast routing Draft

Chapter 4: Network Layer. Chapter 4 Network Layer. Chapter 4: Network Layer. Network layer

Muhammad Jaseemuddin Dept. of Electrical & Computer Engineering Ryerson University Toronto, Canada

Analysis of Performance of Core Based Tree and Centralized Mode of Multicasting Routing Protocol

Multicast Communications. Tarik Čičić, 4. March. 2016

Chapter 4 Network Layer

Chapter 4 Network Layer

Lecture 6: Multicast

Integrated Services - Overview

Fundamentals of IP Multicast

An overview of how packets are routed in the Internet

CMPT 371: Data Communications and Networking. Chapter 4: Network Layer

IP Multicasting: Explaining Multicast Cisco Systems, Inc. All rights reserved. Cisco Academy

IP Multicast: PIM Configuration Guide, Cisco IOS Release 15SY

IP Multicast: PIM Configuration Guide, Cisco IOS Release 15M&T

4.2 Multicast IP supports multicast to support one-to-many (radio, news, IP multicast was originally a many-to-many (any source MC or

Multicast H3C Low-End Ethernet Switches Configuration Examples. Table of Contents

Table of Contents Chapter 1 Multicast Routing and Forwarding Configuration

HP 5500 HI Switch Series

Configuring multicast VPN

IP Multicast: PIM Configuration Guide, Cisco IOS XE Release 3S

Acknowledgments. Part One - Introduction to the TCP/IP Protocol

Transcription:

Broadcast Routing Multicast deliver packets from source to all other nodes source duplication is inefficient: duplicate duplicate creation/transmission duplicate source duplication in-network duplication source duplication: how does source determine recipient addresses? In-network duplication flooding: when node receives brdcst pckt, sends copy to all neighbors Problems: cycles & broadcast storm controlled flooding: node only brdcsts pkt if it hasn t brdcst same packet before Node keeps track of pckt ids already brdcsted Or reverse path forwarding (RPF): only forward pckt if it arrived on shortest path between node and source spanning tree No redundant packets received by any node Flooding flooding: when node receives brdcst pckt, sends copy to all neighbors EXCEPT the one from which the pckt was received Problems: cycles & broadcast storm 1 3 2

Flooding Flooding flooding: when node receives brdcst pckt, sends copy to all neighbors Problems: cycles & broadcast storm flooding: when node receives brdcst pckt, sends copy to all neighbors Problems: cycles & broadcast storm 1 3 2 E ricominciamo come nella prima situ Bisogna saper distinguere tra quando mandiamo un nuovo messaggio e quan stiamo ritrasmettendo qualcosa che abbiamo già visto Sequence numbers! Broacast storm Broacast storm

Broacast storm Controlled flooding Node keeps track of pckt ids already brdcsted - use <node id, msg id> to identify packets Reverse path forwarding (RPF): only forward pckt (on all links but the one from which the packet was received) if it arrived on shortest path between node and source Reverse Path Forwarding Spanning Tree c A B First construct a spanning tree Nodes forward copies only along spanning tree F E D G c A B c A B F E D F E D G (a) Broadcast initiated at A (b) Broadcast initiated at D G

Spanning Tree: Creation Center node Each node sends unicast join message to center node Message forwarded until it arrives at a node already belonging to spanning tree F 1 c A 4 E 3 2 B D (a) Stepwise construction of spanning tree 5 G F c A E B D (b) Constructed spanning tree G Multicasting Applications Multimedia television, presentations, etc. Teleconferencing voice and video Database replication and updates Distributed computing and real-time workgroup exchange of results, files, graphics, messages, etc. Multicast: one sender to many receivers Multicast: act of sending datagram to multiple receivers with single transmit operation analogy: one teacher to many students Question: how to achieve multicast Multicast: one sender to many receivers Multicast: act of sending datagram to multiple receivers with single transmit operation analogy: one teacher to many students Question: how to achieve multicast Multicast via unicast Network multicast routers forward unicast datagrams source sends N unicast datagrams, one addressed to each of N receivers multicast receiver (red) not a multicast receiver (red) Multicast routers (red) duplicate and forward multicast datagrams Router actively participate in multicast, making copies of packets as needed and forwarding towards multicast receivers

Multicast: one sender to many receivers Multicast: act of sending datagram to multiple receivers with single transmit operation analogy: one teacher to many students Question: how to achieve multicast Application-layer multicast end systems involved in multicast copy and forward unicast datagrams among themselves Internet Multicast Service Model 128.119.40.186 128.59.16.12 multicast group 226.17.30.197 multicast group concept: use of indirection 128.34.108.63 128.34.108.60 hosts addresses IP datagram to multicast group routers forward multicast datagrams to hosts that have joined that multicast group Multicast groups class D Internet addresses reserved for multicast: host group semantics: o anyone can join (receive) multicast group o anyone can send to multicast group o no network-layer identification to hosts of members needed: infrastructure to deliver mcast-addressed datagrams to all hosts that have joined that multicast group Joining a mcast group: two-step process local: host informs local mcast router of desire to join group: IGMP (Internet Group Management Protocol) wide area: local router interacts with other routers to receive mcast datagram flow many protocols (e.g., DVMRP, MOSPF, PIM) IGMP wide-area multicast routing IGMP IGMP

IGMP: Internet Group Management Protocol host: sends IGMP report when application joins mcast group IP_ADD_MEMBERSHIP socket option host need not explicitly unjoin group when leaving router: sends IGMP query at regular intervals host belonging to a mcast group must reply to query IGMP router: Host Membership Query msg broadcast on LAN to all hosts host: Host Membership Report msg to indicate ship randomized delay before responding implicit leave via no reply to Query group-specific Query Leave Group msg last host replying to Query can send explicit Leave Group msg router performs group- specific query to see if any hosts left in group Introduced in RFC 2236 IGMP v4: current version query report IGMPv4 Message Format RFC 2236 Type Membership Query: learn s on network Membership Report: declare ship Leave Group: declare departure from group Max Response Time in Membership Query only max time before sending response in 1/10 second units Checksum: 16-bit ones complement Group Address: IP multicast address (zero in request message) 23 Multicast Routing: Problem Statement Goal: find a tree (or trees) connecting routers having local mcast s tree: not all paths between routers used source-based: different tree from each sender to rcvrs shared-tree: same tree used by all s Shared tree Source-based trees

Approaches for building mcast trees Approaches: source-based tree: one tree per source shortest path trees reverse path forwarding group-shared tree: group uses one tree minimal spanning (Steiner) center-based trees we first look at basic approaches, then specific protocols adopting these approaches Shortest Path Tree mcast forwarding tree: tree of shortest path routes from source to all receivers Dijkstra s algorithm S: source 1 3 4 R6 2 6 R7 5 R5 LEGEND i router with attached router with no attached link used for forwarding, i indicates order link added by algorithm Source-Based Trees with Reverse Path Forwarding rely on router s knowledge of unicast shortest path from it to sender each router has simple forwarding behavior: if (mcast datagram received on incoming link on shortest path back to center) then flood datagram onto all outgoing links else ignore datagram Reverse Path Forwarding: example S: source R6 R7 R5 LEGEND result is a source-specific reverse SPT router with attached router with no attached datagram will be forwarded datagram will not be forwarded may be a bad choice with asymmetric links

Reverse Path Forwarding: pruning forwarding tree contains subtrees with no mcast s S: source no need to forward datagrams down subtree prune msgs sent upstream by router with no downstream s R6 P P R7 R5 LEGEND P router with attached router with no attached prune message links with multicast forwarding Shared-Tree: Steiner Tree Steiner Tree: minimum cost tree connecting all routers with attached group members problem is NP-complete excellent heuristics exists not used in practice: computational complexity information about entire network needed monolithic: rerun whenever a router needs to join/leave Center-based trees single delivery tree shared by all one router identified as center of tree to join: edge router sends unicast join-msg addressed to center router join-msg processed by intermediate routers and forwarded towards center join-msg either hits existing tree branch for this center, or arrives at center path taken by join-msg becomes new branch of tree for this router Center-based trees: an example Suppose R6 chosen as center: 1 3 R6 2 R7 R5 LEGEND 1 router with attached router with no attached path order in which join messages generated

Multicast Routing Algorithms DVMRP: distance vector source-based with RPF/RPM, based on RIP MOSPF: link-state source-based, extension of OSPF CBT: core-based tree PIM-DM: protocol independent, dense PIM-SM: protocol independent, sparse MBONE: tunneling via backbone Chapter 16b 3 Distance-Vector Multicast Routing Protocol (DVMRP) The first and, arguably, most widely-deployed multicast routing algorithm used in the Internet Straightforward implementation of source- based trees flood and prune: reverse path forwarding, source-based tree RPF tree based on DVMRP s own routing tables constructed by communicating DVMRP routers no assumptions about underlying unicast initial datagram to mcast group flooded everywhere via RPF routers not wanting group: send upstream prune DVMRP: continued soft state: DVMRP router periodically (1 min.) forgets branches are pruned: mcast data again flows down unpruned branch downstream router: reprune or else continue to receive data routers can quickly regraft to tree following IGMP join at leaf odds and ends commonly implemented in commercial routers Mbone routing done using DVMRP Works well in small autonomous domains Problem with RPF RPF does not guarantee that each network receives only one copy a network may receive two or more copies. The reason is that RPF is not based on the destination address (a group address); forwarding is based on the source address.

DVMRP: Strategies (cont) Reverse path broadcasting: RPB creates a shortest path broadcast tree from the source to each destination. It guarantees that each destination receives one and only one copy of the packet To eliminate duplication, we must define only one parent router for each network. We must have this restriction: A network can receive a multicast packet from a particular source only through a designated parent router. the router sends the packet only out of those interfaces for which it is the designated parent. The designated parent router can be the router with the shortest path to the source. If more than one router qualifies, the router with the smallest IP address is selected. DVMRP: Strategies Reverse path multicasting: RPM adds pruning and grafting to RPB to create a multicast shortest path tree that supports dynamic membership changes Computer Networks 22-37 Computer Networks 22-38 Multicast Extensions to OSPF Direct extension to OSPF unicast routing MOSPF is designed to operate within a single AS to generate source-specific, pre-pruned, pruned, least- cost trees for each multicast group Multicast spanning trees calculated on demand using Dijkstra s algorithm Routers periodically flood ship information to all other routers in its area added to the link-state advertisements that are used with OSPF Chapter 16b 3 Protocol Independent Multicast (PIM) More general solution to multicast routing Key assumption: members of any given multicast group are few and widely-dispersed Independent of underlying unicast routing algorithm Uses multiple shortest-path unicast routing approach Two modes of operation (actually, two separate algorithms): dense mode: intra-as sparse mode: inter-as Chapter 16b 4

Consequences of Sparse-Dense Dichotomy: Dense Sparse: ship by no membership until routers assumed until routers explicitly join routers explicitly prune receiver- driven data-driven construction construction of mcast on mcast tree (e.g., RPF) bandwidth and nongroup-router processing profligate tree (e.g., center-based) bandwidth and non-grouprouter processing conservative PIM- Dense Mode flood-and-prune RPF, similar to DVMRP but underlying unicast protocol provides RPF info for incoming datagram less complicated (less efficient) downstream flood than DVMRP reduces reliance on underlying routing algorithm has protocol mechanism for router to detect it is a leaf-node router PIM - Sparse Mode PIM - Sparse Mode center-based approach Group router(s) sends join msg to rendezvous point (RP) intermediate routers update state and forward join after joining via RP, router can switch to source-specific tree increased performance: less concentration, shorter paths join join all data multicast from rendezvous point R6 join R5 R7 rendezvous point sender(s): unicast data to RP, which distributes down RP-rooted tree RP can extend mcast tree upstream to source RP can send stop msg if no attached receivers no one is listening! join join all data multicast from rendezvous point R6 join R5 R7 rendezvous point

PIM-SM continued What if source is located in remote domains? PIM-SM requires group-rp mappings to be advertised to all PIM-SM domains Use Multicast Source Discovery Protocol, functionality is similar to BGP Inter-domain multicast to be managed by Border Gateway Multicast Protocol (BGMP)

MBONE To enable multicasting, we make a multicast backbone (MBONE) out of isolated routers, using of the concept of tunneling small fraction of Internet routers are multicast routers a multicast router may not find another multicast router in the neighborhood to forward the multicast packet. Logical Tunneling A logical tunnel is established by encapsulating the multicast packet inside a unicast packet The multicast packet becomes the payload (data) of the unicast packet So far the only protocol supporting MBONE and tunneling is DVMRP solution to this problem is tunneling : The multicast routers may not be connected directly, but they are connected logically. To enable multicasting, we make a multicast backbone (MBONE) out of these isolated routers by using the concept of tunneling. Mbone (IP in IP tunneling) RFC 1853, Simpson, October 1995 Method by which an IP datagram may be encapsulated (carried as payload) within an IP datagram. Encapsulation is suggested as a means to alter the normal IP routing for datagrams, by delivering them to an intermediate destination that would otherwise not be selected based on the IP Destination Address field in the original IP header. Once the encapsulated datagram arrives at this intermediate destination node, it is decapsulated, yielding the original IP datagram, which is then delivered to the destination indicated by the original Destination Address field. The encapsulator and decapsulator are considered to be the "endpoints" of the tunnel.