550 likes | 718 Views
Department of Computer and IT Engineering University of Kurdistan Computer Networks II Multicasting By: Dr. Alireza Abdollahpouri. Multicast vs. Unicast. یکی از مهمترین دلایل استفاده از چندپخشی، صرفه جویی در پهنای باند است. IP multicast. IGMP. DVMRP,PIM, MOSPF.
E N D
Department of Computer and IT Engineering University of Kurdistan Computer Networks II Multicasting By: Dr. AlirezaAbdollahpouri
Multicast vs. Unicast یکی از مهمترین دلایل استفاده از چندپخشی، صرفه جویی در پهنای باند است
IP multicast IGMP DVMRP,PIM, MOSPF Multicast routing protocols Group management protocol
Some applications of multicasting • دسترسی به پایگاه داده های توزیع شده • انتشار اطلاعات و اخبار • Teleconferencing • آموزش از راه دور • IPTV • بازيهای چندنفره
Multicast Applications • ConferenceXP: An Example of Multicast application Distance Learning Video Conference
Multicast Issues • Naming and addressing (IP class D) (نحوه آدرسدهی) • Membership Management (IGMP) (نحوه مدیریت گروههای چندپخشی) • Routing (DVMRP, PIM, MOSPF, …) (نحوه هدایت بسته های چندپخشی)
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 Network multicast • Router actively participate in multicast, making copies of packets as needed and forwarding towards multicast receivers Multicast routers (red) duplicate and forward multicast datagrams (چندپخشی در لایه شبکه)
Note: In network-layer multicasting, the router may forward the received packet through several of its interfaces.
Multicast: one sender to many receivers Application-layer multicast • end systems involved in multicast copy and forward unicast datagrams among themselves (چندپخشی در لایه کاربرد)
Multicast groups • class D Internet addresses reserved for multicast: • host group semantics: • anyone can “join” (receive) multicast group • anyone can send to multicast group • no network-layer identification to hosts of members • needed: infrastructure to deliver mcast-addressed datagrams to all hosts that have joined that multicast group
تحویلبستههایچندپخشیدرلایهپیونددادهتحویلبستههایچندپخشیدرلایهپیوندداده
Example Change the multicast IP address 230.43.14.7 to an Ethernet multicast physical address. • Solution • We can do this in two steps: • 1-We write the rightmost 23 bits of the IP address in hexadecimal. This can be done by changing the rightmost 3 bytes to hexadecimal and then subtracting 8 from the leftmost digit if it is greater than or equal to 8. In our example, the result is 2B:0E:07. • 2- We add the result of part a to the starting Ethernet multicast address, which is 01:00:5E:00:00:00. The result is:
Group management protocol (IGMP) IGMP DVMRP,PIM, MOSPF Multicast routing protocols Group management protocol
Note: IGMP is a group management protocol. It helps a multicast router create and update a list of loyal members related to each router interface.
Encapsulation of IGMP packet بسته بندی پیغامهایICMP در قالب بسته های IP و سپس فریمهای لایه پایینتر
IGMP message format حداکثر زمان پاسخ (بر حسب 1/0 ثانیه) در پیغامهایQuery 8 bytes
Leave report No Response
Note: The general query message does not define a particular group.
General query message No Response
Example Imagine there are three hosts in a network, as shown in Figure below. A query message was received at time 0; the random delay time (in tenths of seconds) for each group is shown next to the group address. Show the sequence of report messages.
Solution • The events occur in this sequence: • Time 12. The timer for 228.42.0.0 in host A expires and a membership report is sent, which is received by the router and every host including host B which cancels its timer for 228.42.0.0. • Time 30. The timer for 225.14.0.0 in host A expires and a membership report is sent, which is received by the router and every host including host C which cancels its timer for 225.14.0.0. • Time 50. The timer for 251.71.0.0 in host B expires and a membership report is sent, which is received by the router and every host. • Time 70. The timer for 230.43.0.0 in host C expires and a membership report is sent, which is received by the router and every host including host A which cancels its timer for 230.43.0.0.
Multicast routing protocols IGMP DVMRP,PIM, MOSPF Multicast routing protocols Group management protocol
Note: In unicast routing, each router in the domain has a table that defines a shortest path tree to possible destinations.
Note: In multicast routing, each involved router needs to construct a tree for each group.
Multicast Routing: Problem Statement • Goal:find a tree (or trees) connecting routers having local mcast group members • tree: not all paths between routers used • source-based: different tree from each sender to rcvrs • shared-tree: same tree used by all group members 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
4 3 2 5 6 1 i Shortest Path Tree • mcast forwarding tree: tree of shortest path routes from source to all receivers • Dijkstra’s algorithm LEGEND S: source router with attached group member R1 R4 router with no attached group member R2 R5 link used for forwarding, i indicates order link added by algorithm R3 R7 R6
Reverse Path Forwarding if (mcast datagram received on incoming link on shortest path back to center) then flood datagram onto all outgoing links else ignore datagram • rely on router’s knowledge of unicast shortest path from it to sender • each router has simple forwarding behavior:
Reverse Path Forwarding: example S: source R1 R4 router with attached group member R2 router with no attached group member R5 datagram will be forwarded R3 R7 R6 datagram will not be forwarded • result is a source-specific reverse SPT • may be a bad choice with asymmetric links
Multicast Packet from Source 151.10.3.21 X Packet Arrived on Wrong Interface! Discard Packet! Multicast Forwarding A closer look: RPF Check Fails S0 RPF Check Fails! S1 S2 Unicast Route Table Network Interface 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0 E0 S1
Multicast Packet from Source 151.10.3.21 Packet Arrived on Correct Interface! Multicast Forwarding A closer look:RPF Check Succeeds S0 S1 S2 RPF Check Succeeds! E0 Unicast Route Table Network Interface 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0 S1 Forward out all outgoing interfaces.(i. e. down the distribution tree)
Reverse Path Forwarding: pruning • forwarding tree contains subtrees with no mcast group members • no need to forward datagrams down subtree • “prune” msgs sent upstream by router with no downstream group members S: source R1 router with attached group member R4 router with no attached group member R2 P P R5 prune message P links with multicast forwarding R3 R7 R6
RPF versus RPB برای اینکه هر شبکه یک کپی از بسته چندپخشی را دریافت کند برای آن یک روتر به عنوان والد تعریف می کنیم. 39
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: R1 router with attached group member R4 3 router with no attached group member R2 2 1 R5 path order in which join messages generated R3 1 R7 R6
Note: In CBT, the source sends the multicast packet (encapsulated in a unicast packet) to the core router. The core router decapsulates the packet and forwards it to all interested interfaces. 44
DVMRP • Distance Vector Multicast Routing Protocol • DV + RPF + Pruning • DV vector carries distance to multicast sources • Pruning carries a timeout (prune lifetime) • Afterwards, traffic delivery is resumed • Explicit graft message to reverse pruning • Done upon join Prune جهت هرس کردن درخت و Graft برای ایجاد شاخه جدید در درخت
MOSPF • Multicast Extensions to OSPF • Link-state advertisements include multicast group membership • Only report directly connected hosts • Compute shortest-path spanning tree rooted at source • On demand, when receiving packet from source for the first time • Forward multicast traffic along tree
PIM Protocol Independent Multicast (PIM) is the name given to two independent multicast routing protocols: Protocol Independent Multicast, Dense Mode (PIM-DM) and Protocol Independent Multicast, Sparse Mode (PIM-SM).
Note: PIM-DM is used in a dense multicast environment, such as a LAN.
Note: PIM-DM uses RPF and pruning/grafting strategies to handle multicasting. However, it is independent from the underlying unicast protocol.