Среда, 2024-05-01, 10:27 AM
Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
Пиринговые сети
Форма входа

Главное меню

Календарь

Друзья сайта
Программы
Блог KAD.DHT
Торренты eMule
Торрент трекер НТК
Компьютеры и сети
"25-й КАДР"

Рекламный блок


Статистика
Rambler's Top100 Адресная книга Интернет. Желтые страницы.

Рейтинг сайтов smarttop.info
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Статьи » Мои статьи

Multicast Routing and Forwarding Introduction

Multicast Routing and Forwarding Introduction

Introduction to Multicast Routing and Forwarding

In multicast implementations, multicast routing and forwarding are implemented by three types of tables:

l           Each multicast routing protocol has its own multicast routing table, such as PIM routing table.

l           The information of different multicast routing protocols forms a general multicast routing table.

l           The multicast forwarding table is directly used to control the forwarding of multicast packets.

A multicast forwarding table consists of a set of (S, G) entries, each indicating the routing information for delivering multicast data from a multicast source to a multicast group. If a router supports multiple multicast protocols, its multicast routing table will include routes generated by multiple protocols. The router chooses the optimal route from the multicast routing table based on the configured multicast routing and forwarding policy and installs the route entry into its multicast forwarding table.

RPF Mechanism

When creating multicast routing table entries, a multicast routing protocol uses the reverse path forwarding (RPF) mechanism to ensure multicast data delivery along the correct path.

The RPF mechanism enables routers to correctly forward multicast packets based on the multicast route configuration. In addition, the RPF mechanism also helps avoid data loops caused by various reasons.

I. Implementation of the RPF mechanism

Upon receiving a multicast packet that a multicast source S sends to a multicast group G, the router first searches its multicast forwarding table:

1)         If the corresponding (S, G) entry exists, and the interface on which the packet actually arrived is the incoming interface in the multicast forwarding table, the router forwards the packet to all the outgoing interfaces.

2)         If the corresponding (S, G) entry exists, but the interface on which the packet actually arrived is not the incoming interface in the multicast forwarding table, the multicast packet is subject to an RPF check.

l           If the result of the RPF check shows that the RPF interface is the incoming interface of the existing (S, G) entry, this means that the (S, G) entry is correct but the packet arrived from a wrong path. The packet is to be discarded.

l           If the result of the RPF check shows that the RPF interface is not the incoming interface of the existing (S, G) entry, this means that the (S, G) entry is no longer valid. The router replaces the incoming interface of the (S, G) entry with the interface on which the packet actually arrived and forwards the packet to all the outgoing interfaces.

3)         If no corresponding (S, G) entry exists in the multicast forwarding table, the packet is also subject to an RPF check. The router creates an (S, G) entry based on the relevant routing information and using the RPF interface as the incoming interface, and installs the entry into the multicast forwarding table.

l           If the interface on which the packet actually arrived is the RPF interface, the RPF check is successful and the router forwards the packet to all the outgoing interfaces.

l           If the interface on which the packet actually arrived is not the RPF interface, the RPF check fails and the router discards the packet.

II. RPF check

The basis for an RPF check is a unicast route or a multicast static route. A unicast routing table contains the shortest path to each destination subnet, while a multicast static routing table lists the RPF routing information defined by the user through static configuration. A multicast routing protocol does not independently maintain any type of unicast route; instead, it relies on the existing unicast routing information or multicast static routes in creating multicast routing entries.

When performing an RPF check, a router searches its unicast routing table and multicast static routing table at the same time. The specific process is as follows:

1)         The router first chooses an optimal route from the unicast routing table and multicast static routing table:

l           The router automatically chooses an optimal unicast route by searching its unicast routing table, using the IP address of the "packet source” as the destination address. The outgoing interface in the corresponding routing entry is the RPF interface and the next hop is the RPF neighbor. The router considers the path along which the packet from the RPF neighbor arrived on the RPF interface to be the shortest path that leads back to the source.

l           The router automatically chooses an optimal multicast static route by searching its multicast static routing table, using the IP address of the "packet source” as the destination address. The corresponding routing entry explicitly defines the RPF interface and the RPF neighbor.

2)         Then, the router selects one from these two optimal routes as the RPF route. The selection is as follows:

l           If configured to use the longest match principle, the router selects the longest match route from the two; if these two routes have the same mask, the route selects the route with a higher priority; if the two routes have the same priority, the router selects the multicast static route.

l           If not configured to use the longest match principle, the router selects the route with a higher priority; if the two routes have the same priority, the router selects the multicast static route.

 

&  Note:

The above-mentioned "packet source” can mean different things in different situations:

l      For a packet traveling along the shortest path tree (SPT) from the multicast source to the receivers or the source-based tree from the multicast source to the rendezvous point (RP), "packet source” means the multicast source.

l      For a packet traveling along the rendezvous point tree (RPT) from the RP to the receivers, "packet source” means the RP.

l      For a bootstrap message from the bootstrap router (BSR), "packet source” means the BSR.

 

Assume that unicast routes exist in the network and no multicast static routes have been configured on Router C, as shown in Figure 1. Multicast packets travel along the SPT from the multicast source to the receivers.

Figure 1 RPF check process

l           A multicast packet from Source arrives on POS 5/0 of Router C, and the corresponding forwarding entry does not exist in the multicast forwarding table of Router C. The Router C performs an RPF check, and finds in its unicast routing table that the outgoing interface to 192.168.0.0/24 is POS 5/1. This means that the interface on which the packet actually arrived is not the RPF interface. The RPF check fails and the packet is discarded.

l           A multicast packet from Source arrives on POS 5/1 of Router C, and the corresponding forwarding entry does not exist in the multicast forwarding table of Router C. The router performs an RPF check, and finds in its unicast routing table that the outgoing interface to 192.168.0.0/24 is the interface on which the packet actually arrived. The RPF check succeeds and the packet is forwarded.

Multicast Static Routes

If the topology structure of a multicast network is the same as that of a unicast network, receivers can receive multicast data via unicast routes. However, the topology structure of a multicast network may differ from that of a unicast network, and some routers may support only unicast but not multicast. In this case, you can configure multicast static routes to provide multicast transmission paths that are different from those for unicast traffic. Note the following two points:

l           A multicast static route only affects RPF checks, and not guides multicast forwarding, so it is also called an RPF static route.

l           A multicast static route is effective on the multicast router on which it is configured, and will not be broadcast throughout the network or injected to other routers.

A multicast static route is an important basis for RPF checks. With a multicast static route configured on a router, the router searches the unicast routing table and the multicast static routing table simultaneously in a RPF check, chooses the optimal unicast RPF route and the optimal multicast static route respectively from the routing tables, and uses one of them as the RPF route after comparison.

Figure 2 Multicast static route

As shown in Figure 2, when no multicast static route is configured, Router C’s RPF neighbor on the path back to Source is Router A and the multicast information from Source travels along the path from Router A to Router C, which is the unicast route between the two routers; with a static route configured on Router C and Router B as Router C’s RPF neighbor on the path back to Source, the multicast information from Source travels from Router A to Router B and then to Router C.

Application of GRE Tunnel in Multicast Forwarding

There may be routers that do not support multicast protocols in a network. As multicast traffic from a multicast source is forwarded hop by hop by multicast routers along the forwarding tree, when the multicast traffic is forwarded to a next-hop router that does not support IP multicast, the forwarding path is blocked. In this case, you can enable multicast traffic forwarding across the unicast subnet where the non-multicast-capable router resides by establishing a generic routing encapsulation (GRE) tunnel between the routers at both ends of the unicast subnet.

For details about GRE tunneling, refer to GRE Configuration in the VPN Volume.

Figure 3 Multicast data transmission through a GRE tunnel

As shown in Figure 3, with a GRE tunnel established between Router A and Router B, Router A encapsulates multicast data in unicast IP packets, which are then forwarded by unicast routers to Router B across the GRE tunnel. Then, Router B strips off the unicast IP header and continues forwarding the multicast data down towards the receivers.

However, if unicast static routes are configured across the tunnel, any unicast packet can be transmitted through the tunnel. If you wish the tunnel to be dedicated to multicast traffic delivery, you can configure a multicast static route across the tunnel, so that unicast packets cannot be transmitted through this tunnel.

Multicast Traceroute

The multicast traceroute utility is used to trace the path that a multicast stream passes from the multicast source to the last-hop router.

I. Concepts in multicast traceroute

1)         Last-hop router: If a router has one of its interfaces connecting to the subnet the given destination address is on, and if the router is able to forward multicast streams from the given multicast source onto that subnet, that router is called last-hop router.

2)         Fist-hop router: the router directly connects to the multicast source.

3)         Querier: the router requesting the multicast traceroute.

II. Introduction to multicast traceroute packets

A multicast traceroute packet is a special IGMP packet, which differs from common IGMP packets in that its IGMP Type field is set to 0x1F or 0x1E and that its destination IP address is a unicast address. There are three types of multicast traceroute packets:

l           Query, with the IGMP Type field set to 0x1F,

l           Request, with the IGMP Type field set to 0x1F, and

l           Response, with the IGMP Type field set to 0x1E.

III. Process of multicast traceroute

1)         The querier sends a query to the last-hop router.

2)         Upon receiving the query, the last-hop router turns the query packet into a request packet by adding a response data block containing its interface addresses and packet statistics to the end of the packet, and forwards the request packet via unicast to the previous hop for the given multicast source and group.

3)         From the last-hop router to the multicast source, each hop adds a response data block to the end of the request packet and unicast it to the previous hop.

4)         When the first-hop router receives the request packet, it changes the packet type to indicate a response packet, and then sends the completed packet via unicast to the multicast traceroute querier.

Download

Multicast Routing and Forwarding.pdf

Источник: http://pro-net.ru
Категория: Мои статьи | Добавил: netnsk7072 (2009-10-05) W
Просмотров: 1485 | Рейтинг: 0.0/0
Всего комментариев: 0

Copyright www.netnsk.ru © 2024
Сделать бесплатный сайт с uCoz