department of computer and it engineering university of kurdistan computer networks ii
DESCRIPTION
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. - PowerPoint PPT PresentationTRANSCRIPT
Department of Computer and IT EngineeringDepartment of Computer and IT EngineeringUniversity of KurdistanUniversity of Kurdistan
Computer Networks IIMulticasting
By: Dr. Alireza AbdollahpouriBy: Dr. Alireza Abdollahpouri
2
یکی از مهمترین دالیل استفاده از چندپخشی، صرفه جویی در
پهنای باند است
یکی از مهمترین دالیل استفاده از چندپخشی، صرفه جویی در
پهنای باند است
Multicast vs. Unicast
3
IP multicast
DVMRP,PIM, MOSPF IGMP
Multicast routing protocols
Group management protocol
4
دسترسی به پایگاه داده •های توزیع شده
انتشار اطالعات و اخبار••Teleconferencingآموزش از راه دور••IPTVبازيهای چندنفره•
Some applications of multicasting
Multicast Applications
ConferenceXP: An Example of Multicast application
Video ConferenceDistance Learning
5
Multicast Issues
Naming and addressing (IP class D) (نحوه آدرسدهی)
Membership Management (IGMP)(نحوه مدیریت گروههای چندپخشی)
Routing (DVMRP, PIM, MOSPF, …)(نحوه هدایت بسته های چندپخشی)
7
Network multicast Router actively participate in
multicast, making copies of packets as needed and forwarding towards multicast receivers
Multicastrouters (red) duplicate and
forward multicast datagrams
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
چندپخشی در الیه ) )شبکه
چندپخشی در الیه ) (شبکه
8
In network-layer multicasting, the router may forward the received
packet through several of its interfaces.
Note:Note:
9
Application-layer multicast end systems involved in
multicast copy and forward unicast datagrams among themselves
Multicast: one sender to many receivers
چندپخشی در الیه ) )کاربرد
چندپخشی در الیه ) (کاربرد
10
Multicast groups
class D Internet addresses reserved for multicast:
host group semantics:o anyone can “join” (receive) multicast groupo anyone can send to multicast groupo no network-layer identification to hosts of members
needed: infrastructure to deliver mcast-addressed datagrams to all hosts that have joined that multicast group
11
تحویل بسته های چند پخشی در الیه پیوند داده
12
Change the multicast IP address 230.43.14.7 to an Ethernet multicast physical address.
SolutionWe 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:
Example
13
Group management protocol (IGMP)
DVMRP,PIM, MOSPF IGMP
Multicast routing protocols
Group management protocol
14
IGMP is a group management protocol. It helps a multicast router
create and update a list of loyal members related to each router
interface.
NoteNote::
15
IGMP message types
16
Encapsulation of IGMP packet
و IP در قالب بسته های ICMPبسته بندی پیغامهایسپس فریمهای الیه پایینتر
و IP در قالب بسته های ICMPبسته بندی پیغامهایسپس فریمهای الیه پایینتر
17
IGMP message format
8 bytes8 bytes
ثانیه( در 1/0حداکثر زمان پاسخ )بر حسب Query پیغامهای
ثانیه( در 1/0حداکثر زمان پاسخ )بر حسب Query پیغامهای
18
IGMP type field
Type Value
General or special query 0x11 or 00010001
Membership report 0x16 or 00010110
Leave report 0x17 or 00010111
19
IGMP operation
20
Membership report
21
Leave report
No Response
22
The general query message does not define a particular group.
NoteNote::
23
General query message
No Response
24
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.
25
Solution
The events occur in this sequence:
1. 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.
2. 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.
3. 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.
4. 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.
26
Multicast routing protocols
DVMRP,PIM, MOSPF IGMP
Multicast routing protocols
Group management protocol
27
In unicast routing, each router in the domain has a table that defines a
shortest path tree to possible destinations.
Note:Note:
28
Shortest path tree in unicast routing
29
In multicast routing, each involved router needs to construct a tree for
each group.
Note:Note:
30
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
Shortest Path Tree
mcast forwarding tree: tree of shortest path routes from source to all receivers Dijkstra’s algorithm
R1
R2
R3
R4
R5
R6 R7
21
6
3 45
i
router with attachedgroup member
router with no attachedgroup member
link used for forwarding,i indicates order linkadded by algorithm
LEGEND
S: source
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
• result is a source-specific reverse SPT– may be a bad choice with asymmetric
links
R1
R2
R3
R4
R5
R6 R7
router with attachedgroup member
router with no attachedgroup member
datagram will be forwarded
S: source
datagram will not be forwarded
Multicast Forwarding
RPF Check Fails!
Unicast Route TableUnicast Route Table
NetworkNetwork Interface Interface
151.10.0.0/16151.10.0.0/16 S1S1
198.14.32.0/24198.14.32.0/24 S0S0
204.1.16.0/24204.1.16.0/24 E0E0
A closer look: RPF Check Fails RPF Check Fails
Packet Arrived on Wrong Interface!
E0
S1
S0
S2
S1S1
Multicast Packet fromSource 151.10.3.21
XDiscard Packet!
Multicast Forwarding
A closer look: RPF Check SucceedsRPF Check Succeeds
RPF Check Succeeds!
Unicast Route TableUnicast Route Table
NetworkNetwork Interface Interface
151.10.0.0/16151.10.0.0/16 S1S1
198.14.32.0/24198.14.32.0/24 S0S0
204.1.16.0/24204.1.16.0/24 E0E0
E0
S1
S0
S2
Multicast Packet fromSource 151.10.3.21
Packet Arrived on Correct Interface!S1S1
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
R1
R2
R3
R4
R5
R6 R7
router with attachedgroup member
router with no attachedgroup member
prune message
S: source
links with multicastforwarding
P
P
P
38
Problem with RPF
39
RPF versus RPB
برای اینکه هر شبکه یک کپی از بسته چندپخشی را دریافت کند برای آن یک روتر به عنوان والد تعریف می کنیم.
برای اینکه هر شبکه یک کپی از بسته چندپخشی را دریافت کند برای آن یک روتر به عنوان والد تعریف می کنیم.
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
R2
R3
R4
R5
R6 R7
router with attachedgroup member
router with no attachedgroup member
path order in which join messages generated
21
3
1
42
Group-shared tree with rendezvous router
43
Sending a multicast packet to the rendezvous router
44
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.
Note:Note:
45
Taxonomy of common multicast protocols
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 برای ایجاد شاخه جدید در درخت
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
48
PIM
Protocol Independent Multicast (PIM) is the Protocol Independent Multicast (PIM) is the name given to two independent multicast name given to two independent multicast routing protocols: routing protocols:
Protocol Independent Multicast, Dense Mode Protocol Independent Multicast, Dense Mode (PIM-DM) and (PIM-DM) and
Protocol Independent Multicast, Sparse Protocol Independent Multicast, Sparse Mode (PIM-SM). Mode (PIM-SM).
49
PIM-DM is used in a dense multicast environment, such as a LAN.
Note:Note:
50
PIM-DM uses RPF and pruning/grafting strategies to handle
multicasting.
However, it is independent from the underlying unicast protocol.
Note:Note:
51
PIM-SM is used in a sparse multicast environment such as a WAN.
Note:Note:
PIM-SM is similar to CBT but uses a simpler procedure.
52
MBONE
A multicast router may not find another A multicast router may not find another multicast router in the neighborhood to multicast router in the neighborhood to forward the multicast packet. A solution forward the multicast packet. A solution for this problem is tunneling. We make a for this problem is tunneling. We make a multicast backbone (MBONE) out of these multicast backbone (MBONE) out of these isolated routers using the concept of isolated routers using the concept of tunneling.tunneling.
53
Logical tunneling
54
MBONE
55QuestionsQuestionsQuestionsQuestions