Introduction to Multicast Routing Protocols

Slides:



Advertisements
Similar presentations
Computer Networking A Top-Down Approach Chapter 4.7.
Advertisements

Introduction 1 Lecture 22 Network Layer (Broadcast and Multicast) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
Multicasting 1. Multicast Applications News/sports/stock/weather updates Distance learning Configuration, routing updates, service location Pointcast-type.
1  Changes in IPv6 – Expanded addressing capabilities (32 to 128 bits), anycast address – A streamlined 40-byte header – Flow labeling and priority –
Multicast on the Internet CSE April 2015.
Multicast Routing: Problem Statement r Goal: find a tree (or trees) connecting routers having local mcast group members m tree: not all paths between routers.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 12 Multicasting And Multicast.
1 Internet Networking Spring 2004 Tutorial 7 Multicast Routing Protocols.
1 Internet Networking Spring 2006 Tutorial 7 DVMRP.
TCP/IP Protocol Suite 1 Chapter 15 Upon completion you will be able to: Multicasting and Multicast Routing Protocols Differentiate between a unicast, multicast,
Network Layer4-1 Spanning trees r Suppose you have a connected undirected graph m Connected: every node is reachable from every other node m Undirected:
COS 420 Day 18. Agenda Group Project Discussion Program Requirements Rejected Resubmit by Friday Noon Protocol Definition Due April 12 Assignment 3 Due.
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.
Internet Networking Spring 2002
1 IP Multicasting. 2 IP Multicasting: Motivation Problem: Want to deliver a packet from a source to multiple receivers Applications: –Streaming of Continuous.
EE689 Lecture 12 Review of last lecture Multicast basics.
1 CSE 401N:Computer Network LECTURE-14 MULTICAST ROUTING.
Delivery, Forwarding, and Routing
MULTICASTING Network Security.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Chapter 14 Multicasting And Multicast Routing Protocols.
Multicasting  A message can be unicast, multicast, or broadcast.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
22.1 Chapter 22 Network Layer: Delivery, Forwarding, and Routing Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
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.
Multicast Sources: Kurose and Ross cast/addresstranslation_01.html.
Network Layer introduction 4.2 virtual circuit and datagram networks 4.3 what’s inside a router 4.4 IP: Internet Protocol  datagram format  IPv4.
AD HOC WIRELESS MUTICAST ROUTING. Multicasting in wired networks In wired networks changes in network topology is rare In wired networks changes in network.
CSC 600 Internetworking with TCP/IP Unit 8: IP Multicasting (Ch. 17) Dr. Cheer-Sun Yang Spring 2001.
1 Chapter 16b Multicasting. Chapter 16b Multicasting 2 Multicasting Applications Multimedia Multimedia –television, presentations, etc. Teleconferencing.
CS 5565 Network Architecture and Protocols Godmar Back Lecture 22.
Broadcast and Multicast. Overview Last time: routing protocols for the Internet  Hierarchical routing  RIP, OSPF, BGP This time: broadcast and multicast.
Multicast Routing Algorithms n Multicast routing n Flooding and Spanning Tree n Forward Shortest Path algorithm n Reversed Path Forwarding (RPF) algorithms.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Chapter 15 Multicasting and Multicast Routing
Multicast Routing Protocols. The Need for Multicast Routing n Routing based on member information –Whenever a multicast router receives a multicast packet.
IPv6. r Initial motivation: 32-bit address space soon to be completely allocated. r Additional motivation: m header format helps speed processing/forwarding.
© J. Liebeherr, All rights reserved 1 Multicast Routing.
Broadcast and multicast routing. R1 R2 R3R4 source duplication R1 R2 R3R4 in-network duplication duplicate creation/transmission duplicate Broadcast Routing.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
Network Layer4-1 Chapter 4 roadmap 4.1 Introduction and Network Service Models 4.2 Routing Principles 4.3 Hierarchical Routing 4.4 The Internet (IP) Protocol.
1 IP Multicasting Relates to Lab 10. It covers IP multicasting, including multicast addressing, IGMP, and multicast routing.
©The McGraw-Hill Companies, Inc., 2000© Adapted for use at JMU by Mohamed Aboutabl, 2003Mohamed Aboutabl1 1 Chapter 14 Multicasting 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 21 Multicast Routing
Network Layer4-1 Chapter 4 roadmap 4.1 Introduction and Network Service Models 4.2 Routing Principles 4.3 Hierarchical Routing 4.4 The Internet (IP) Protocol.
Multicast Communications
Spring 2006CS 3321 Multicast Outline Link-state Multicast Distance-vector Multicast Protocol Independent Multicast.
1 Protocol Independent Multicast (PIM) To develop a scalable protocol independent of any particular unicast protocol –ANY unicast protocol to provide routing.
CS4500CS4500 Dr. Clincy1 Continuing Chapter 11 Unicast Routing Protocols (RIP, OSPF, BGP) (How the routers’ tables are filled in) Lecture 6.
2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.
Internet Multicasting Routing: DVMRP r DVMRP: distance vector multicast routing protocol, RFC1075 r flood and prune: reverse path forwarding, source-based.
Communication Networks Recitation 11. Multicast & QoS Routing.
1 Group Communications: Reverse Path Multicast Dr. Rocky K. C. Chang 19 March, 2002.
TCP/IP Protocol Suite 1 Multicasting and Multicast Routing Protocols Differentiate between a unicast and a multicast message Understand multicast link.
22.1 Network Layer Delivery, Forwarding, and Routing.
Application Layer 2-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A.
Multicasting protocols
Multicast Outline Multicast Introduction and Motivation DVRMP.
(How the routers’ tables are filled in)
UNIT III ROUTING.
Multicasting and Multicast Routing Protocols
IP Multicast COSC /5/2019.
Chapter 12 Multicasting And Multicast Routing Protocols
Implementing Multicast
Optional Read Slides: Network Multicast
Presentation transcript:

Introduction to Multicast Routing Protocols

Shortest Path Trees Optimal Routing: Shortest Path Trees The process of intradomain routing attempts to find the shortest path between a router and another destinations resulting in shortest path tree (SPT) The root of the tree is the source and the leafs are the potential destinations However, the number of trees and the formation of the trees in unicasting and multicast routing are different

Shortest Path Trees in Unicast In unicast routing, when a router receives a packet to forward, it needs to find the shortest path to the destination of the packet The next-hop entry in the routing table corresponding to the destination is the start of the shortest path tree Each line of the routing table is a shortest path; the whole routing table is a shortest path Each router needs only one shortest path tree to forward a packet; however, each router has its own shortest path tree

Unicast Routing (cont.)

Shortest Path Trees in Multicast In a multicast routing, a multicast packet may have destinations in more than one network Forwarding of a single packet to members of a group requires a shortest path tree If we have n groups, we may need n shortest path trees Two approaches have been used to solve the problem: source based trees and group-shared trees

Concept of Multicast Routing The concept of multicast routing can be described from the broadcast routing in the network The broadcast routing algorithm can be based on different strategies such as uncontrolled flooding and controlled flooding

Uncontrolled Flooding A router receives a broadcast packet and sends it out from every interface except the one from which it was received However, uncontrolled flooding create loops which means a packet that has left the router may come back again from another interface or the same interface and be forwarded again If a router is connected to more than two other routers, it will create and forward multiple copies of the broadcast packet, each of which will create multiple copies of itself at other routers with more than two neighbors, and so on  Broadcast Storm

Controlled Flooding The key to avoiding a broadcast storm is for a router to choose when to flood a packet and when not to flood a packet In sequence-number-controlled flooding, a source puts its address and sequence number into a broadcast packet Each router maintains a list of the source address and sequence number of each broadcast packet it has already received, duplicated, and forwarded

Controlled Flooding (cont.) When a router receives a broadcast packet, it first checks whether the packet is in the list If so, the packet is dropped; if not, the packet is duplicated and forwarded to all the neighbors (The Gnutella protocol uses this strategy to broadcast queries in its overlay network at the application layer level)

Reverse Path Forwarding (RPF) RPF is another controlled flooding strategy In RPF, a router forwards only the copy arrived on the link that is on its own shortest path back to the source of packet To find this copy, A router consults its unicast routing table as though it wants to send a packet to the source address Since the routing table tells the router the next hop router address, if the packet has just come from the address defined it means the packet has traveled the shortest path from the source

Reverse Path Forwarding (RPF) (cont.)

Spanning-Tree Broadcast While sequence-number-controlled flooding and RPF avoid broadcast storms, they don’t completely avoid the transmission of redundant broadcast packets The solution is spanning tree—a tree that contains each and every node in a graph When a source node wants to send a broadcast packet, it sends the packet out on all of the incident links that belong to the spanning tree

Spanning-Tree Broadcast (cont.) A node receiving the packet then forwards the packet to all its neighbors in the spanning tree

Construction of a Spanning Tree The main complexity associated with the spanning-tree approach is the creation and maintenance of it One simple algorithm is using center-based approach in which a center node is defined and routers then send unicast tree-join message addressed to the center node A tree-join message is forwarded using unicast routing until it either arrives at a router that already belongs to the spanning tree or arrives at the center

Construction of a Spanning Tree (cont.) In either case, the path that the tree-join message has followed defines the branch of the spanning tree between the edge router that initiated the tree-join message and the center One can think of this new path as being grafted onto the existing spanning tree

Construction of a Spanning Tree (cont.)

Multicast Routing Algorithm As mentioned that two approaches have been used to solve the problem: source based trees and group-shared trees, both of which we have studied in the context of broadcast routing The two approaches differ according to whether a single group-shared tree is used to distribute the traffic for all senders in the group, or whether a source-specific routing tree is constructed for each individual sender

Group-Shared Tree In this approach, instead of each router having m shortest path trees, only one designated router called the center core or rendezvous router takes the responsibility of distributing multicast traffic as a center-based approach The core has m shortest path trees in its routing table but the rest of the routers in the domain have none If a router receives a multicast packet, it encapsulates the packet in a unicast packet and sends it to the core The core router removes the multicast packet from its capsule, and consults its routing table to route the packet

Group-Shared Tree

Source-Based Tree In the source-based tree approach, a multicast routing tree is constructed for each source in the multicast group In practice, an RPF algorithm (with source node x) is used to construct a multicast forwarding tree for multicast originating at source x However, the RPF broadcast algorithm requires a bit of modifying for use in multicast by introducing pruning and grafting

Reverse Path Forwarding: example S: source R1 R4 LEGEND router with attached group member R2 router with no attached group member R5 datagram will be forwarded R3 Notes: 3.3 Network Layer: Multicast Routing Algorithms 3-14 R6 R7 datagram will not be forwarded

Pruning in PRF In pruning, a multicast router that receives multicast packets and has no attached node joined to that group will send a prune message to its upstream router If a router receives prune message from each of its downstream routers, then it can stop sending multicast packets for this group through that interface If this router receives prune messages from all down stream routers, it in turn sends a prune message to its upstream router

Reverse Path Forwarding: pruning forwarding tree contains subtrees with no multicast group members no need to forward datagrams down subtree “prune” msgs sent upstream by router with no downstream group members LEGEND S: source R1 router with attached group member R4 router with no attached group member R2 Notes: 3.3 Network Layer: Multicast Routing Algorithms 3-15 P P R5 prune message P links with multicast forwarding R3 R6 R7

Grafting in RPF What if a leaf router has sent a prune message but later on realizes that one of its node is again interested in receiving the multicast packet It can send a graft message which forces the upstream router to resume sending the multicast message

Multicast Routing Protocols in the Internet During the last few decades, several multicast routing protocols in the Internet have emerged Some of these protocols are extensions of unicast routing protocols; some are totally new

Multicast Link State Routing Multicast link state routing is a direct extension of unicast routing and uses a source-based tree approach Each router advertises every group which has any loyal member on the link and the information about the group comes from IGMP When a router receives all advertisements, it creates n (n is the number of groups) topologies, from which n shortest path trees are made using Dijkstra’s algorithm

Multicast Link State Routing (cont.) The only problem with this protocol is the time and space needed to create and save the many shortest path trees The solution is to create the trees only when needed and the result can be cached in case there are additional packets for that destinations

Multicast Open Shortest Path First (MOSPF) MOSPF protocol is an extension of the OSPF protocol that uses multicast link state routing to create source-based trees The protocol requires a new link state update packet to associate the unicast address of a host with the group address This packet is called the group- membership LSA MOSPF is a data-driven protocol; the first time an MOSPF router sees a datagram with a given source and group address

Distance Vector Multicast Routing (DVMRP) DVMRP implements source-based trees with RPF, pruning, and grafting DVMRP uses a distance vector algorithm that allows each router to compute the outgoing link (next hop) that is on its shortest path back to each possible source The information is then used in the RPF algorithm as discussed In addition to computing next-hop information, DVMRP also computes a list of dependent downstream routers for pruning purposes

Distance Vector Multicast Routing (DVMRP) (cont.) A DVMRP prune message contains a prune lifetime (a default value is two hours) that indicates how long a pruned branch will remain pruned before being automatically restored DVMRP graft messages are sent by a router to its upstream neighbor to force a previously pruned branch to be added back on to the multicast tree

Core-Based Tree (CBT) Protocol The CBT protocol is a group-shared protocol that uses a core as the root of the tree The autonomous system is divided into regions an a core (center router or rendezvous router) is chosen for each region There is a procedure in this protocol Selecting the Rendezvous Router Formation of the Tree Sending Multicast Packets

Formation of the Tree After the rendezvous point is selected, every router is informed of the unicast address of the selected router Each router then sends a unicast join message to show that it wants to join the group This message passes through all routes that are located between the sender and the rendezvous router Each intermediate router extracts the necessary information from the message, such as the unicast address of the sender and the interface, and forwards the message to the next router in the path When the rendezvous router has received all join messages from every member of the group, the tree is formed

Formation of the Tree (cont.) Now every router knows its upstream router (the router that leads to the root) and the downstream router (the router that leads to the leaf) If a router wants to leave the group, it sends a leave message to its upstream router The upstream router removes the links to that router from the tree and forwards the message to its upstream router, and so on

Sending Multicast Packets After formation of the tree, any source can send a multicast packet to all members of the group It simply sends the packet to the rendezvous router, using the unicast address of the rendezvous router; the rendezvous router distributes the packet to all members of the group

Summary to CBT In CBT, a packet is sent from the source to members of the group following this procedure: The source, which may or may not be part of the tree, encapsulates the multicast packet inside a unicast packet with the unicast destination address of the core and sends it to the core The core decapsulates the unicast packet and forwards it to all interested interfaces Each router that receives the multicast packet, in turn, forwards it to all interested interfaces

Protocol Independent Multicast (PIM) PIM is the name given to two independent multicast routing protocols: PIM, Dense Mode (PIM-DM) and PIM, Sparse Mode (PIM-SM)

PIM-DM PIM-DM is used when there is a possibility that each router is involved in multicasting (dense mode) In this environment, the use of a protocol that broadcasts the packet is justified because almost all routers are involved in the process PIM-DM is a source-based tree routing protocol that uses RPF and pruning/grafting strategies for multicasting Its operation is like DVMRP; however, it does not depend on a specific unicating protocol

PIM-SM PIM-SM is used when there is a slight possibility that each router is involved in multicasting (sparse mode) In this environment, the use of a protocol that broadcasts the packet is not justified; a protocol such as CBT that uses a group-shared tree is more appropriate PIM-SM is a group-shared tree routing protocol that has a rendezvous point (RP) as the source of the tree Its operation is like CBT; however, it is simpler because it does not require acknowledgement from a join message In addition, it creates a backup set of RPs for each region to cover RP failures

PIM-SM (cont.) One of the characteristics of PIM-SM is that it can switch from a group-shared tree strategy to a source-based tree strategy when necessary This can happen if there is a dense area of activity far from the RP. That area can be more efficiently handled with a source-based tree strategy instead of a group-shared tree strategy

How to Evaluate a Multicast Routing Protocol? Scalability. What is the amount of state required in the routers by a multicast routing protocol? How does the amount of state change as the number of groups, or number of senders in a group, change? Reliance on underlying routing. To what extent does a multicast protocol rely on information maintained by an underlying unicast routing protocol? We have seen solutions that range from reliance on one specific underlying unicast routing protocol (MOSPF), to a solution that is completely independent (PIM), to a solution that implements much of the same distance vector functionality (DVMRP)

How to Evaluate a Multicast Routing Protocol? (cont.) Excess (un-needed) traffic received. We have seen solutions where a router receives data only if it has an attached node in the multicast group (MOSPF, PIM-SM) to solution where the default is for a router to receive all traffic for all multicast groups (DVMRP, PIM-DM) Traffic concentration. The group-shared tree approach tends to concentrate traffic on a smaller number of links (those in the single tree), whereas source-specific trees tend to distribute multicast traffic more evenly

Delivery of Multicast Packets at Data Link Layer Most LANs support physical multicast addressing and Ethernet is one of them An Ethernet physical address is 48 bits long. If the first 25 bits in an Ethernet address are 00000001 00000000 01011110 0, this identifies a physical multicast address for the TCP/IP protocol The remaining 23 bits can be used to define a group by which the multicast router extracts the lease significant 23 bits of a multicast IP address and inserts them into multicast Ethernet address

Mapping class D to Ethernet physical address

LAN Switches with Multicast Packets Switches that cannot understand multicast addresses will broadcast traffic sent to a multicast group to all the members of a LAN; in this case the system's network card (and operating system) has to filter the packets sent to multicast groups they are not subscribed to There are switches that listen to multicast traffic and maintain a state table of which network systems are subscribed to a given multicast group This table is then used to forward traffic destined to a given group only to a limited set of hosts (ports); this is done through the use of IGMP snooping

LAN Switches with Multicast Packets (cont.) Additionally, some switches with layer 3 capabilities can act as an IGMP querier In networks where there is no router present (or enabled) to act as a multicast router a switch might be used to generate the needed IGMP messages to get users to subscribe to multicast traffic

WLAN with Multicast Packets An 802.11 wireless local area network will handle multicast traffic differently, depending on the configuration of 802.11 power-save mode, DTIM (Delivery Traffic Indication Message), and beacon interval settings If power-save mode is disabled, then access points will deliver multicast traffic after each beacon (default interval = 100ms, but it can be adjusted)

WLAN with Multicasting (cont.) If power-save mode is enabled, the access point will deliver multicast traffic after each DTIM, which by default is every 1,2, or 3 beacon intervals in most access points As a result, the DTIM and beacon interval settings should be adjusted for optimum performance when implementing multicast in wireless networks

Network with No Multicast Support Most WANs do not support physical multicast address, thus to send a multicast packet through these networks, a process called tunneling is used In tunneling, the multicast packet is encapsulated in a unicast packet and sent through the network, where it emerges from the other side as a multicast packet