40
Multicast Routing Wed. 28 MAY. 2003

Multicast Routing

Embed Size (px)

DESCRIPTION

Multicast Routing. Wed. 28 MAY. 2003. Introduction. based on number of receivers of the packet or massage: “A technique for the efficient distribution of identical packet streams to groups of selected workstations on one or more LANs.” (Penn State network and systems administrators). - PowerPoint PPT Presentation

Citation preview

Page 1: Multicast Routing

Multicast Routing

Wed. 28 MAY. 2003

Page 2: Multicast Routing

Introduction based on number of receivers of the packet or

massage:

“A technique for the efficient distribution of identical packet streams to groups of selected workstations on one or more LANs.” (Penn State network and systems administrators)

Page 3: Multicast Routing

Implementation» Multiple unicast Wast Network bandwidth,

Registering mechanism.

» Multiple addresses in a packet Can be only one instance(why Can?),

Limited size of packet limits the max number of recipient Much more processing in a router(List of Addresses) Only partially help in the bandwidth wasting problem of the

previous method

» Multicast address The sender does not need to know the recipients,

Must use connectionless UDP on top of IP

Page 4: Multicast Routing

Implementation (Cont’s)• Saving the network link bandwidth is left to the routers,• the group does not have any physical or geographical

boundaries.• Hosts that are interested in receiving data flowing to a

particular group must join the group using IGMP.

Page 5: Multicast Routing

Unicast/Multicast

Host

Router

Unicast

Host

Router

Multicast

CISCO Systems

Page 6: Multicast Routing

Internet Group Management Protocol• IGMP provides the means for a host to inform its attached router • Given that, the scope of IGMP interaction is limited to a host and its

attached router • Another protocol is clearly required to coordinate the multicast-

router throughout the internet, that accomplished by the network-layered multicast routing algorithms such as PIM, DVMRP and MOSPT.

• Router queries the local hosts for m-cast group membership info

• Hosts respond with membership reports: actually, the first host which responds, speaks for all

Page 7: Multicast Routing

IGMP protocol• IGMPv1, there are just two different type of IGMP message:

Membership QUERY and Membership REPORT

When there is no reply to three consecutive IGMP membership queries, the router times out group an stops forwarding traffic directed toward group.

• IGMPv2, there are four types.basically the same as version 1. the main difference: 1) The hosts communicate to the local multicast router when

intention to leave the group. 2) The router then sends out a group-specific query and

determines whether there are any remaining host.

Page 8: Multicast Routing

IP Multicast Addresses• Multicast addresses specify an arbitrary group of IP hosts that

have joined the group and want to receive traffic sent to this group.

• The Internet Assigned Numbers Authority (IANA) controls the assignment of IP multicast addresses.

• all IP multicast group addresses will fall in the range of 224.0.0.0 to 239.255.255.255.(IPv4 D-classful) 224.0.0.0 - 244.0.0.255 link local scope 224.0.1.0 - 238.255.255.255 global scope

239.0.0.0 - 239.255.255.255 Reserved for local scope 239.192.0.0 - 239.194.255.255 organization local scope

239.253.0.0 - 239.255.255.255 site local scope

Page 9: Multicast Routing

Routing protocol Multicast• Problem: find the best (e.g., min cost) tree which

interconnects all the members

Page 10: Multicast Routing

Multicast Tree Option• GROUP SHARED TREE: single tree for all

senders(entire multicast group); bidirectional links

• SOURCE BASED TREE: each source is the root of its own tree connecting to all members; thus separate

trees for different senders

Page 11: Multicast Routing

Group Shared Tree• Uses a single common root placed at some chosen point in the

network (rendezvous point).

• Source must send their traffic to the root, and then the traffic is forwarded down the shared tree to reach all receivers.

• Message are replicated only where the tree branch

• Member can any time join or leave, so the distribution trees must be dynamically update.(Prune,graft)

• finding a minimum cost tree is known as the Steiner tree problem(NP-complete)

• Alternate: Center-based approach - under some circumstances,the paths might not be the optimal paths - Network designers must carefully consider the placement of the

RP when implementing an environment with only shared trees.

Page 12: Multicast Routing

Source-based Tree• Source is the root of the multicast tree and whose branches form

a spanning tree through the network to the receivers.

• Also known as Short Path Tree(SPT) because tree uses the shortest path through the network.

• SPT creating the optimal path between the source and receivers.

This guarantees the minimum amount of network latency.

• Routers must maintain the state of each link (link-state)

• A simpler multicasting routing algorithm,need much less link state information, is the Reverse Path Forwarding(RPF).

Page 13: Multicast Routing

Reverse Path forwarding• RPF makes use of the existing unicast routing table

• A router forwards a multicast packet only if it is received on the up stream interface.

Page 14: Multicast Routing

Multicast Routing Algorithms and Protocols • Flooding a router that receives a packet with multicast

destination address, simply sends to all interfaces, expect the interface where the packet came to the router.

Challenge: Routing Loops

News: uses a article path history OSPF: uses link state database

Using a list of last seen packets would need a lot of memory in current high speed routers and the checking if the packet is in the list would slow down the router.

IP TTL is usually the best way to take care of this problem.

Page 15: Multicast Routing

TTLlocal host……………. 0

local network segment.. 1

site…………………… 15

region………………… 31

country………………..48

continent(Europe)……. 63

world ………………... 127

Page 16: Multicast Routing

Multicast Routing Alg.s and Prot.s (Cont’s)• Spanning tree Building a logical network on top of the real network by

creating a loopless graph between all nodes resolves the looping problem in flooding .

bandwidth waster but robust and simple to implement

• Reverse-path forwarding,RPF The basic idea is to generate an implicit spanning tree for

each source in the network starting from the source to other nodes.

using shortest paths gives the fastest possible delivery, not concentrate the traffic on some network links. Do not really use the group membership information, so waste bandwidth.

Page 17: Multicast Routing

Multicast Routing Alg.s and Prot.s (Cont’s)

• RPF and Prunes When the first packet in a multicast transmission

reaches the end leaves in the routing tree, the leaf router sends a pruning message upstream if it does not have any group members attached to it. Likewise, if a any router in the tree receives a prune message from all of its downstream interfaces it sends a prune message upstream. The purpose of the prune message is to prevent sending unneeded following packets in that group to the pruned branch.

There is still a one bad point the first packet in a group is always flooded in the whole network.

Page 18: Multicast Routing

Multicast Routing Alg.s and Prot.s (Cont’s)

• Steiner trees The idea of steiner trees is to build an overlay network

that connects all nodes in a group with minimum total number of links

It is not usually suitable in real networks The computing of the tree is hard and it must be done

again each time a node joins or leaves a group.

• Core-based trees Each multicast group has a core, The traffic of one group concentrates on certain links.

There is not that first flood message in a group

Page 19: Multicast Routing

Routing protocol Multicast• Intra domain - MOSPF

- DVMRP (Flood & Prune) - PIM - Sparse mode - Dense mode

• Inter domain - MBGP + MSDP Currently used

- BGMP + MASC

Page 20: Multicast Routing

Protocol Independent Multicast(PIM)Why independent? Independent of the underlying unicast routing protocol

EIGRP, OSPF, BGP, or static routes.• Dense mode many or most of routers in the area need to be involved in

routing multicast datagram.

• Sparse mode the number of routers with attached group members is small

with respect to total number of routers.

Page 21: Multicast Routing

Dense Mode PIM ExampleSource

Receiver 2Receiver 1

DD FF

II

BB

CC

AA

EE

GG

HH

Link

Data

Control

Page 22: Multicast Routing

Dense Mode PIM Example

Initial Flood of Dataand Creation of State

Source

Receiver 2Receiver 1

DD FF

II

BB

CC

AA

EE

GG

HH

Page 23: Multicast Routing

Dense Mode PIM Example

Prune to Non-RPF Neighbor

Source

Prune

Receiver 2Receiver 1

DD FF

II

BB

CC

AA

EE

GG

HH

Page 24: Multicast Routing

Dense Mode PIM Example

C and D Assert to DetermineForwarder for the LAN, C Wins

Source

Asserts

Receiver 2Receiver 1

DD FF

II

BB

CC

AA

EE

GG

HH

Page 25: Multicast Routing

Dense Mode PIM Example

I Gets PrunedE’s Prune is Ignored

G’s Prune is Overridden

Source

Prune

Receiver 2Receiver 1

Join Override

Prune

DD FF

II

BB

CC

AA

EE

GG

HH

Page 26: Multicast Routing

Dense Mode PIM ExampleSource

Graft

Receiver 2Receiver 3

Receiver 1

New Receiver, I Sends Graft

DD FF

II

BB

CC

AA

EE

GG

HH

Page 27: Multicast Routing

Dense Mode PIM ExampleSource

Receiver 2Receiver 3

Receiver 1

DD FF

II

BB

CC

AA

EE

GG

HH

Page 28: Multicast Routing
Page 29: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A D

Source

C

Receiver 2

RP

Link

Data

Control

Page 30: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A D

Source Receiver 1 Joins Group GC Creates (*, G) State, Sends

(*, G) Join to the RP

C

Receiver 2

RP

Join

Page 31: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source RP Creates (*, G) State

C

Receiver 2

Page 32: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source Source Sends DataA Sender Registers to the

RP

C

Receiver 2

Register

Page 33: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source RP de-encapsulates RegistersForwards Data Down the Shared Tree

Sends Joins Towards the Source

C

Receiver 2

Join Join

Page 34: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source RP Sends Register-Stop Once

Data Arrives Natively

C

Receiver 2

Register-Stop

Page 35: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source C Sends (S, G) Joins to Join the

Shortest Path (SPT) Tree

C

Receiver 2

)S, G (Join

Page 36: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source When C Receives Data Natively,It Sends Prunes Up the RP tree for

the Source. RP Deletes (S, G) OIF andSends Prune Towards the Source

C

Receiver 2

)S, G (RP Bit Prune

)S, G (Prune

Page 37: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source New Receiver 2 JoinsE Creates State and Sends (*, G) Join

C

Receiver 2

,*)G (Join

Page 38: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source C Adds Link Towards E to the OIFList of Both (*, G) and (S, G)

Data from Source Arrives at E

C

Receiver 2

Page 39: Multicast Routing

Sparse Mode PIM Example

Receiver 1

B

E

A RP D

Source New Source Starts SendingD Sends Registers, RP Sends Joins

RP Forwards Data to Receiversthrough Shared Tree

C

Receiver 2

Source 2

Register

Page 40: Multicast Routing

Hope be useful Thanks

Hassan Salmani