Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Multicast Routing Algorithms Multicast routing Flooding and Spanning Tree Forward Shortest Path algorithm Reversed Path Forwarding (RPF) algorithms Steiner Tree (ST) algorithm Shared tree algorithms Multicast Routing IPMC 1 Internet IPMC 2 IPMC 3 IPMC 4 Multicast routing protocol IGMP protocol Subnetwork attached to a router Construction of Distribution Tree in Case of Many Sources For forwarding multicast packets across internet, we should use multicast protocols Several algorithms may be used by the protocols In case of many sources the multicast routing algorithms can handle the distribution of the packets in three ways: Primitive methods – Flooding – Spanning Tree Source Based Tree – Forward Shortest Path – (Reverse Path Forwarding (RPF) algorithms – not detailed) – Steiner Trees (ST) Shared Tree – Center Based Trees (CBT) Primitive Methods These do not take into account: – the multicast traffic refers to different multicast groups – which group member is sender and which is receiver Such are the Flooding and the Spanning Tree algorithms These are regarded as basic procedures – They are used as building blocks of the more sophisticated algorithms regarding construction of distribution tree Flooding When the router receives a multicast packet first it checks whether it has already met with this If this is the first occasion, the router forwards it to its all interfaces, except that from which the packet arrived If it has already met with that packet, the router will drop it out In such a way all router will get the packet once at least Its disadvantages: – It generates high number multiplied packets – It wastes network bandwidth – Every router must maintain table of the lately arrived packets, which requires a huge memory Flooding When a router receives a packet, the router will determine whether it’s the first time it receives the packet. If so, the packet will be delivered to all interfaces except the one on which it arrived, otherwise the packet will be discarded. No routing tables needed Inefficient use of bandwidth The Operation of the Flooding Source Legend router IP connection A branch of distribution tree C D group-member host B F E non group-member host multicast data subnetwork Spanning Tree Only one active path connects any two of routers The multicast packets will not loop and reach all routers May not provide the most efficient path between the source subnetwork and group members Spanning Tree B Legend C S=A branch E F D H router with an attached subnet G I connection J K M N group member host L P O non group-member host The Operation of the Spanning Tree Algorithm Source Legend router IP connection A branch of the distribution tree C D group member host B non group memeber F E multicast data subnet Multicast Routing Algorithms—Characteristics Distribution trees – Source tree Uses more memory O(NS x NG) but you get optimal paths from source to all receivers, minimizes delay – Shared tree Uses less memory O(NG) but you may get suboptimal paths from source to all receivers, may introduce extra delay Source Based Tree Each source creates its own distribution tree The advantages of such a kind of algorithms are – the higher end-to-end power » E.g., smaller delay – sharing the traffic load coming from each source on the network Disadvantage is that each router must generate large routing table, since one routing item is needed for each source and each group Forward Shortest Path In case of link-state unicast routing algorithms every router know the whole network topology – Thus they can calculate the shortest path form the source to the receivers This tree is different from the reverse shortest path (later) if the links are nonsymmetrical Reverse Path Forwarding What is RPF? –A router forwards a multicast datagram if received on the interface used to send unicast datagrams to the source Unicast C B Receiver A Source F D E Multicast Reverse Path Forwarding If the RPF check succeeds, the datagram is forwarded If the RPF check fails, the datagram is typically silently discarded When a datagram is forwarded, it is sent out each interface in the outgoing interface list Packet is never forwarded back out the RPF interface! Shortest Path or Source Distribution Tree Source Notation: (S, G) S = Source G = Group A B C Receiver 1 D F E Receiver 2 The Reverse Path Forwarding (RPF) Algorithm-Family These forward packet on their output interfaces if and only if the packet arrived on the interface, which is on the shortest path to the source The “reverse path” naming is originated from the fact that after the multicast tree was built, the routers have to listen to the reverse path to the multicast source – If a packet arrive in an other interface, which is not in the shortest path to the source, the packet will be dropped out by the router Finding the Shortest Path If a packet comes and another packet has already arrived on a shorter way from the sender, then the new packet will be dropped out But if the new packet arrived in the shorter path, from this point its path is the current shortest path It is important, since the packet must carry the IP addresses of the routers along the path, and in case of longer path the size of the packet increases This algorithm does not need any additional method to prevent against the packet multiplication, e.g., automatic hop count limiting mechanism, since the algorithm automatically limits the path of the packets to the shortest path The RPF Tree Rooted in the Router A Source Legend router A IP connection shortest path C D group member host B non group member host F E subnet The RPF Tree Rooted in the Router C Legend router A IP connection C D B shortest path Source F E group member host non group member host subnet The Different Reverse Path Forwarding (RPF) Algorithms Reverse Path Forwarding/Flooding/Broadcast (RPF) (Sophisticated/Extended) Reverse Path Broadcast (RPB) Truncated Reverse Path Broadcast (TRPB) Reverse Path Multicast (RPM) Reverse Path Forwarding/Flooding/Broadcast (RPF) Source Legend router IP connection A brach of tree parent link C D B group member host F E non group member host multicast data subnet RPF A local router only accepts packets from the ‘nearest’ source (parent), otherwise the packets are discarded. Accepted packets will be forwarded to all interfaces except the source It does not take into account multicast group membership when building the distribution tree, so packets may be forwarded to non-membership subnetwork (Sophisticated/Extended) Reversed Path Broadcast (RPB) (S1, G1) S1 Source R2 R3 parent link child link G1 I1 I4 child link R5 Legend G2 router multicast data G4 I2 G2 G1 I3 IP connection R4 distribution tree I5 G1 child link G2 G5 G1 group member host non group member host subnet R6 G1 R8 R7 G2 G1 G3 G5 The RPB Tree Source Legend router IP connection A branch of the tree (shortest path) C D group member host B non group member host F E multicast data subnet Truncated Reverse Path Broadcast (TRPB) (S1, G1) S1 Source R2 R3 parent link child link G1 I1 I4 child link R5 Legend G2 router multicast data G4 I2 G2 G1 I3 IP connection R4 distribution tree I5 truncation child link G1 G2 G5 member of group G1 non group member subnet R6 R8 R7 truncation G1 G2 G1 G3 G5 Truncated Reverse Path Broadcasting (TRPB) It’s an enhancement of RPB With the help of IGMP, multicast routers determine the group membership on each leaf subnetwork, thus avoiding forwarding packets to nonmembers Eliminates unnecessary traffic on leaf subnetworks , but does not consider group memberships when building the branches of the distribution tree Source, G1 G3 G1 G2 Truncated TRPB Based Multicast Delivery Source Legend router IP connection A branch of the tree group member host C D B non group member host F E multicast data subnet Reverse Path Multicasting (RPM) RPM creates a delivery tree that spans only • Subnetworks with group members, and • Routers along the shortest path to subnetworks with group members First packet will be sent to all interfaces except the source. If none of the subnetworks connected to the leaf router have group members, the leaf router may transmit a "prune" message on its parent link informing the upstream router not to forward packets in this group to the leaf In RPM, ‘first packet’ still needs to be forwarded throughout the network. Each router has to maintain state information for all groups. It will be impossible as the number of groups and sources increases. Reversed Path Multicast (RPM) Legend Source router IP connection A branch of the tree truncated branch C D group member host B non group member host F E multicast data prune message subnet Building The Distribution Tree using RPM Steiner Trees (ST) Source Legend router IP connection A branch of the tree group member host C D B non group member host F E multicast data subnet Shared Tree The all sources sends the packet to the same tree The same tree distributes the all packets This algorithm concentrates the traffic to the small set of the network connections This algorithm is not optimal if all sources are active in the same time – E.g., distributed interactive simulation application This algorithm works well, when the source operates alternatively – E.g., audio-conference Its advantage is that it needs one item per group, only Such algorithm is e.g., Center Based Trees Center Based Trees (CBT) If a host wants to join one group, it has to send a unicast “join request” message to the core. Compared to previous algorithms, CBT can use bandwidth and router resources more efficiently CBT may result in traffic concentration and bottlenecks near core routers since traffic from all sources traverses the same set of links as it approaches the core A single shared tree may create trees not as optimal as source-trees Operation of the Center Based Trees (CBT) Algorithm Source Legend router core router A IP connection branch of the tree C D group member host B non group member F E multicast data unicast data subnet Shared Distribution Tree Source 1 Notation: (*, G) * = All Sources G = Group Source 2 A B C Receiver 1 D (Shared Root) F E Receiver 2 Center Based Multicast Distribution Tree Incoming multicast packet to the group Legend router core router connection CBT backbone path of the multicast packets Comparison of the properties related to the construction of the distribution tree Property Taking into account the existence of various multicast groups (different distribution path for each group) Different distribution paths for each source Building distribution tree (instead of forwarding on the whole network topology, in such a way avoiding the duplicated packets) Avoiding the flooding in the first step Taking into account the group membership of the host Usage of multicast routing tables Flooding Span. RPF RPB TRPB RPM Trees ST CBT No No Yes Yes Yes Yes Yes Yes No No Yes Yes Yes Yes No No No Yes No Yes Yes Yes Yes Yes No No No No No No No Yes No No No No Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes Comparison of the properties related to the traffic on the tree Property Omitting the routers that are not necessary for multicast delivery Forwarding that packets, only, which arrived in the shortest path Forwarding the packet on the shortest path, only Using that paths, only, which have the smallest hop-count or cost Avoiding the whole concentration of the traffic Avoiding the concentration of the traffic of each group Flooding Span. trees No No No No No No No Yes Yes No No No No No Yes Yes RPF RPB TRPB RPM ST CBT Yes Yes Yes Yes Yes No No Yes Yes Yes No No No No No No Yes No No Yes Yes Yes Yes Yes Yes No Yes Yes Yes Yes No No