multicast routing in datagram internetworks and extended lans stephen e. deering and david r....

13
Multicast Routing in Datagram Multicast Routing in Datagram Internetworks and Extended Internetworks and Extended LANs LANs Stephen E. Deering and David R. Stephen E. Deering and David R. Cheriton Cheriton ACM Trans. On Cpt. System, vol 8, no. ACM Trans. On Cpt. System, vol 8, no. 2 2

Upload: myron-palmer

Post on 19-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Multicast Routing in Datagram Multicast Routing in Datagram Internetworks and Extended LANsInternetworks and Extended LANs

Stephen E. Deering and David R. CheritonStephen E. Deering and David R. Cheriton

ACM Trans. On Cpt. System, vol 8, no. 2ACM Trans. On Cpt. System, vol 8, no. 2

Multicast Routing in Datagram Multicast Routing in Datagram Internetworks and Extended LANsInternetworks and Extended LANs

Stephen E. Deering and David R. CheritonStephen E. Deering and David R. Cheriton

ACM Trans. On Cpt. System, vol 8, no. 2ACM Trans. On Cpt. System, vol 8, no. 2

Multicast RoutingMulticast RoutingMulticast RoutingMulticast RoutingDistribute information from a source to Distribute information from a source to multiple destinations (multicast group)multiple destinations (multicast group)

Enabling Services such as web seminar, Enabling Services such as web seminar, meetings, distance learning, van multicast meetings, distance learning, van multicast services.services.

MBONE (Internet Multicast BackBone) is an MBONE (Internet Multicast BackBone) is an example of its usage.example of its usage.

Few offering across the internetwork.Few offering across the internetwork.

Proposed extensions to distance vector Proposed extensions to distance vector routing and link state routing to support routing and link state routing to support low-delay datagram multicasting beyond a low-delay datagram multicasting beyond a single LAN.single LAN.

Modification to single spanning tree Modification to single spanning tree algorithm used by link-layer bridges.algorithm used by link-layer bridges.

Distribute information from a source to Distribute information from a source to multiple destinations (multicast group)multiple destinations (multicast group)

Enabling Services such as web seminar, Enabling Services such as web seminar, meetings, distance learning, van multicast meetings, distance learning, van multicast services.services.

MBONE (Internet Multicast BackBone) is an MBONE (Internet Multicast BackBone) is an example of its usage.example of its usage.

Few offering across the internetwork.Few offering across the internetwork.

Proposed extensions to distance vector Proposed extensions to distance vector routing and link state routing to support routing and link state routing to support low-delay datagram multicasting beyond a low-delay datagram multicasting beyond a single LAN.single LAN.

Modification to single spanning tree Modification to single spanning tree algorithm used by link-layer bridges.algorithm used by link-layer bridges.

Multicast 2chow

Benefit of Multicast Benefit of Multicast ServiceServiceBenefit of Multicast Benefit of Multicast ServiceServiceEfficient multidestination delivery:Efficient multidestination delivery:

Reduce transmission overhead/time taken for Reduce transmission overhead/time taken for all to receive. all to receive.

updating all copies of replicated files/databaseupdating all copies of replicated files/database

Multimedia conferencesMultimedia conferences

Disseminating intermediate results to participants in a Disseminating intermediate results to participants in a distributed computation.distributed computation.

Robust unknown destination delivery:Robust unknown destination delivery:Reach uses with unknown address or address Reach uses with unknown address or address changes over time, called changes over time, called Logical Logical addressing/location-independent addressing.addressing/location-independent addressing.

Query distributed databases (with unknown locations)Query distributed databases (with unknown locations)

Locating instance of network services; name/time Locating instance of network services; name/time services.services.

Report sensor readings Report sensor readings to self-selected, changeable to self-selected, changeable set of monitoring stations.set of monitoring stations.

Efficient multidestination delivery:Efficient multidestination delivery:Reduce transmission overhead/time taken for Reduce transmission overhead/time taken for all to receive. all to receive.

updating all copies of replicated files/databaseupdating all copies of replicated files/database

Multimedia conferencesMultimedia conferences

Disseminating intermediate results to participants in a Disseminating intermediate results to participants in a distributed computation.distributed computation.

Robust unknown destination delivery:Robust unknown destination delivery:Reach uses with unknown address or address Reach uses with unknown address or address changes over time, called changes over time, called Logical Logical addressing/location-independent addressing.addressing/location-independent addressing.

Query distributed databases (with unknown locations)Query distributed databases (with unknown locations)

Locating instance of network services; name/time Locating instance of network services; name/time services.services.

Report sensor readings Report sensor readings to self-selected, changeable to self-selected, changeable set of monitoring stations.set of monitoring stations.

Multicast 3chow

Related Research/ProblemRelated Research/ProblemRelated Research/ProblemRelated Research/ProblemMulticast is supported by LAN/Ethernet. Multicast is supported by LAN/Ethernet. Section of MAC address is reserved for Section of MAC address is reserved for multicasting.multicasting.

Link-layer bridges flood multicasts to every Link-layer bridges flood multicasts to every attached segment.attached segment.

Multicast is supported by LAN/Ethernet. Multicast is supported by LAN/Ethernet. Section of MAC address is reserved for Section of MAC address is reserved for multicasting.multicasting.

Link-layer bridges flood multicasts to every Link-layer bridges flood multicasts to every attached segment.attached segment.

Multicast 4chow

How to Multicast to the GroupHow to Multicast to the GroupHow to Multicast to the GroupHow to Multicast to the Group

Assume C and B and two sendersAssume C and B and two senders

Other shaded nodes interested in such Other shaded nodes interested in such multicastingmulticasting

Assume C and B and two sendersAssume C and B and two senders

Other shaded nodes interested in such Other shaded nodes interested in such multicastingmulticasting

Multicast 5chow

Multicast 6chow

Multicast 7chow

TTL field in Multicast TTL field in Multicast MsgMsgTTL field in Multicast TTL field in Multicast MsgMsgBy using a very small TTL value, a sender may limit By using a very small TTL value, a sender may limit

the “scope” of a multicast packet to reach nearby the “scope” of a multicast packet to reach nearby group members only.group members only.

——It is called “expanding ring searching” in Boggs’ It is called “expanding ring searching” in Boggs’ dissertation “internet broadcasting”.dissertation “internet broadcasting”.

Environment for Internetwork Environment for Internetwork MulticastingMulticasting

Multi-access networks (LAN, satellite networks) Multi-access networks (LAN, satellite networks) interconnected in an arbitrary topology by interconnected in an arbitrary topology by packet switching nodes (bridges or routers)packet switching nodes (bridges or routers)

Additional point-to-point links (fibers or X.25 Additional point-to-point links (fibers or X.25 links) connect switching nodes.links) connect switching nodes.

Assume the globally-unique internetwork Assume the globally-unique internetwork multicast addresses can be mapped to multicast addresses can be mapped to corresponding LAN multicast addresses (one on corresponding LAN multicast addresses (one on one basis).one basis).

By using a very small TTL value, a sender may limit By using a very small TTL value, a sender may limit the “scope” of a multicast packet to reach nearby the “scope” of a multicast packet to reach nearby group members only.group members only.

——It is called “expanding ring searching” in Boggs’ It is called “expanding ring searching” in Boggs’ dissertation “internet broadcasting”.dissertation “internet broadcasting”.

Environment for Internetwork Environment for Internetwork MulticastingMulticasting

Multi-access networks (LAN, satellite networks) Multi-access networks (LAN, satellite networks) interconnected in an arbitrary topology by interconnected in an arbitrary topology by packet switching nodes (bridges or routers)packet switching nodes (bridges or routers)

Additional point-to-point links (fibers or X.25 Additional point-to-point links (fibers or X.25 links) connect switching nodes.links) connect switching nodes.

Assume the globally-unique internetwork Assume the globally-unique internetwork multicast addresses can be mapped to multicast addresses can be mapped to corresponding LAN multicast addresses (one on corresponding LAN multicast addresses (one on one basis).one basis).

Multicast 8chow

Single-Spanning-Tree Single-Spanning-Tree Multicast RoutingMulticast RoutingSingle-Spanning-Tree Single-Spanning-Tree Multicast RoutingMulticast RoutingRadia Perlman’s distributed spanning tree algorithm Radia Perlman’s distributed spanning tree algorithm

is run by bridges to compute a spanning tree that is run by bridges to compute a spanning tree that is used to restrict packet traffic and avoid looping.is used to restrict packet traffic and avoid looping.

• Packet is forwarded to all incident branch of the Packet is forwarded to all incident branch of the tree except the arrival one.tree except the arrival one.

• The packet is delivered to a segment exactly The packet is delivered to a segment exactly once.once.

• Only forward multicast message to branches led Only forward multicast message to branches led to group members.to group members.

If group members periodically send membership-If group members periodically send membership-report msgs with group address in src field,report msgs with group address in src field,

then the bridge can apply learning algorithm to then the bridge can apply learning algorithm to know which branches led to group members.know which branches led to group members.

Radia Perlman’s distributed spanning tree algorithm Radia Perlman’s distributed spanning tree algorithm is run by bridges to compute a spanning tree that is run by bridges to compute a spanning tree that is used to restrict packet traffic and avoid looping.is used to restrict packet traffic and avoid looping.

• Packet is forwarded to all incident branch of the Packet is forwarded to all incident branch of the tree except the arrival one.tree except the arrival one.

• The packet is delivered to a segment exactly The packet is delivered to a segment exactly once.once.

• Only forward multicast message to branches led Only forward multicast message to branches led to group members.to group members.

If group members periodically send membership-If group members periodically send membership-report msgs with group address in src field,report msgs with group address in src field,

then the bridge can apply learning algorithm to then the bridge can apply learning algorithm to know which branches led to group members.know which branches led to group members.Multicast 9chow

SST Multicast ExampleSST Multicast ExampleSST Multicast ExampleSST Multicast ExampleAssume B is all-bridge group which consists of all Assume B is all-bridge group which consists of all

bridges.bridges.

Each host of Group G report its membership to Each host of Group G report its membership to bridges by sending a membership reporting bridges by sending a membership reporting packet with source address G, destination address packet with source address G, destination address B.B.

Assume B is all-bridge group which consists of all Assume B is all-bridge group which consists of all bridges.bridges.

Each host of Group G report its membership to Each host of Group G report its membership to bridges by sending a membership reporting bridges by sending a membership reporting packet with source address G, destination address packet with source address G, destination address B.B.

Multicast 10chow

Overhead in StorageOverhead in StorageOverhead in StorageOverhead in StorageExtra space in the look-up table of learning Extra space in the look-up table of learning

bridgesbridges

unicast entry (address, outgoing-branch, unicast entry (address, outgoing-branch, age)age)

multicast entry (address, (outgoing-branch, multicast entry (address, (outgoing-branch, age), (outgoing-branch, age),...)age), (outgoing-branch, age),...)

The age fields in these different entries are The age fields in these different entries are interpreted differently.interpreted differently.

unicast msg is forwarded to all outgoing unicast msg is forwarded to all outgoing branches (except the incoming one) if age branches (except the incoming one) if age field expired.field expired.

multicast msg is forwarded to non-expired multicast msg is forwarded to non-expired branches. Those expired branches are branches. Those expired branches are considered no longer having group considered no longer having group members.members.

Extra space in the look-up table of learning Extra space in the look-up table of learning bridgesbridges

unicast entry (address, outgoing-branch, unicast entry (address, outgoing-branch, age)age)

multicast entry (address, (outgoing-branch, multicast entry (address, (outgoing-branch, age), (outgoing-branch, age),...)age), (outgoing-branch, age),...)

The age fields in these different entries are The age fields in these different entries are interpreted differently.interpreted differently.

unicast msg is forwarded to all outgoing unicast msg is forwarded to all outgoing branches (except the incoming one) if age branches (except the incoming one) if age field expired.field expired.

multicast msg is forwarded to non-expired multicast msg is forwarded to non-expired branches. Those expired branches are branches. Those expired branches are considered no longer having group considered no longer having group members.members.

Multicast 11chow

Membership Reporting Membership Reporting OverheadOverheadMembership Reporting Membership Reporting OverheadOverheadLet the membership reporting interval be Let the membership reporting interval be

Treport,Treport,

The expiry threshold for bridge table The expiry threshold for bridge table entries, Texpire, should be a multiple of entries, Texpire, should be a multiple of Treport to avoid rare msg loss. Longer Treport to avoid rare msg loss. Longer Texpire is not particular serious.Texpire is not particular serious.

To avoid low join latency (due to msg loss), To avoid low join latency (due to msg loss), issue several membership reports in close issue several membership reports in close session when one first joins the group.session when one first joins the group.

If spanning tree changes, revert back to If spanning tree changes, revert back to broadcasting style forwarding for a period broadcasting style forwarding for a period of Texpire.of Texpire.

Let the membership reporting interval be Let the membership reporting interval be Treport,Treport,

The expiry threshold for bridge table The expiry threshold for bridge table entries, Texpire, should be a multiple of entries, Texpire, should be a multiple of Treport to avoid rare msg loss. Longer Treport to avoid rare msg loss. Longer Texpire is not particular serious.Texpire is not particular serious.

To avoid low join latency (due to msg loss), To avoid low join latency (due to msg loss), issue several membership reports in close issue several membership reports in close session when one first joins the group.session when one first joins the group.

If spanning tree changes, revert back to If spanning tree changes, revert back to broadcasting style forwarding for a period broadcasting style forwarding for a period of Texpire.of Texpire.

Multicast 12chow

Continue on Continue on Continue on Continue on http://cs.uccs.edu/~cs622/doc/MulticastRouting.pdf Page 9... Page 9...

http://cs.uccs.edu/~cs622/doc/MulticastRouting.pdf Page 9... Page 9...

Multicast 13chow