Table Of Contents
Configuring IP Multicast over Unidirectional Links
Contents
Prerequisites for UDLR
Information About UDLR
UDLR Overview
UDLR Tunnel
IGMP UDLR
How to Route IP Multicast over Unidirectional Links
Configuring a UDLR Tunnel
Prerequisite
Configuring IGMP UDLR
Distance for the Default RPF Interface Determines Which Path Is Used
Prerequisites
Configuration Examples for UDLR
UDLR Tunnel: Example
IGMP UDLR: Example
Integrated UDLR Tunnel, IGMP UDLR, and IGMP Proxy: Example
Additional References
Related Documents
MIBs
Technical Assistance
Feature Information for Configuring IP Multicast over Unidirectional Links
Configuring IP Multicast over Unidirectional Links
IP multicast requires bidirectional communication, yet some networks include broadcast satellite links, which are unidirectional. Unidirectional link routing (UDLR) provides three mechanisms for a router to emulate a bidirectional link to enable the routing of unicast and multicast packets over a physical unidirectional interface, such as a broadcast satellite link. The mechanisms are a UDLR tunnel, Internet Group Management Protocol (IGMP) UDLR, and IGMP proxy. This document describes a UDLR tunnel and IGMP UDLR. IGMP proxy is described in the "Customizing IGMP" module. The three mechanisms may be used independently or in combination.
Module History
This module was first published on May 2, 2005, and last updated on May 2, 2005.
Finding Feature Information in This Document
Use the "Feature Information for Configuring IP Multicast over Unidirectional Links" section to find information about feature support and configuration.
Contents
•
Prerequisites for UDLR
•
Information About UDLR
•
How to Route IP Multicast over Unidirectional Links
•
Configuration Examples for UDLR
•
Additional References
•
Additional References
•
Feature Information for Configuring IP Multicast over Unidirectional Links
Prerequisites for UDLR
This module assumes you have met the following prerequisites:
•
You understand the concepts in the "IP Multicast Technology Overview" module.
•
You have IP multicast configured in your network. Refer to the "Configuring Basic IP Multicast" module.
Information About UDLR
Before you configure unidirectional link routing, you should understand the following concepts:
•
UDLR Overview
•
UDLR Tunnel
•
IGMP UDLR
UDLR Overview
Both unicast and multicast routing protocols forward data on interfaces from which they have received routing control information. This model requires a bidirectional link. However, some network links are unidirectional. For networks that are unidirectional (such as broadcast satellite links), a method of communication that allows for control information to operate in a unidirectional environment is necessary. (Note that IGMP is not a routing protocol.)
Specifically, in unicast routing, when a router receives an update message on an interface for a prefix, it forwards data for destinations that match that prefix out that same interface. This is the case in distance vector routing protocols. Similarly, in multicast routing, when a router receives a Join message for a multicast group on an interface, it forwards copies of data destined for that group out that same interface. Based on these principles, unicast and multicast routing protocols cannot be supported over UDLs without the use of UDLR. UDLR is designed to enable the operation of routing protocols over UDLs without changing the routing protocols themselves.
UDLR enables a router to emulate the behavior of a bidirectional link for IP operations over UDLs. UDLR has three complementary mechanisms for bidirectional link emulation, which are described in the following sections:
•
UDLR Tunnel—A mechanism for routing unicast and multicast traffic.
•
Internet Group Management Protocol (IGMP) UDLR—Mechanism for routing multicast traffic. This method scales well for many broadcast satellite links.
•
IGMP Proxy—Mechanism for routing multicast traffic.
You can use each mechanism independently or in conjunction with the others. IGMP proxy is described in the "Customizing IGMP" module.
UDLR Tunnel
The UDLR tunnel mechanism enables IP and its associated unicast and multicast routing protocols to treat the unidirectional link (UDL) as being logically bidirectional. A packet that is destined on a receive-only interface is picked up by the UDLR tunnel mechanism and sent to an upstream router using a generic routing encapsulation (GRE) tunnel. The control traffic flows in the opposite direction of the user data flow. When the upstream router receives this packet, the UDLR tunnel mechanism makes it appear that the packet was received on a send-only interface on the UDL.
The purpose of the unidirectional GRE tunnel is to move control packets from a downstream node to an upstream node. The one-way tunnel is mapped to a one-way interface (that goes in the opposite direction). Mapping is performed at the link layer, so the one-way interface appears bidirectional. When the upstream node receives packets over the tunnel, it must make the upper-layer protocols act as if the packets were received on the send-capable UDL.
A UDLR tunnel supports the following functionality:
•
Address Resolution Protocol (ARP) and Next Hop Resolution Protocol (NHRP) over a UDL
•
Emulation of bidirectional links for all IP traffic (as opposed to only control-only broadcast/multicast traffic)
•
Support for IP GRE multipoint at a receive-only tunnel
Note
A UDL router can have many routing peers (for example, routers interconnected via a broadcast satellite link). As with bidirectional links, the number of peer routers a router has must be kept relatively small to limit the volume of routing updates that must be processed. For multicast operation, we recommend using the IGMP UDLR mechanism when interconnecting more than 20 routers.
IGMP UDLR
In addition to a UDLR tunnel, another mechanism that enables support of multicast routing protocols over UDLs is using IP multicast routing with IGMP, which accommodates UDLR. This mechanism scales well for many broadcast satellite links.
With IGMP UDLR, an upstream router sends periodic queries for members on the UDL. The queries include a unicast address of the router that is not the unicast address of the unidirectional interface. The downstream routers forward IGMP reports received from directly connected members (on interfaces configured to helper forward IGMP reports) to the upstream router. The upstream router adds the unidirectional interface to the (*, G) outgoing interface list, thereby enabling multicast packets to be forwarded down the UDL.
In a large enterprise network, it is not possible to be able to receive IP multicast traffic via satellite and forward the traffic throughout the network. This limitation exists because receiving hosts must be directly connected to the downstream router. However, you can use the IGMP proxy mechanism to overcome this limitation. Refer to the "Customizing IGMP" module for more information on this mechanism.
How to Route IP Multicast over Unidirectional Links
This section includes the following procedures. You can do either or both in your network. If you want to configure IGMP Proxy, refer to the "Customizing IGMP" module.
•
Configuring a UDLR Tunnel (optional)
•
Configuring IGMP UDLR (optional)
Configuring a UDLR Tunnel
To configure a UDLR tunnel, perform the task in this section. The tunnel mode defaults to GRE. You need not assign an IP address to the tunnel (you need not use the ip address or ip unnumbered commands). You must configure the tunnel endpoint addresses.
You must configure both the upstream and downstream routers to meet the following conditions:
•
On the upstream router, where the UDL can only send, you must configure the tunnel to receive. When packets are received over the tunnel, the upper-layer protocols treat the packet as though it is received over the unidirectional, send-only interface.
•
On the downstream router, where the UDL can only receive, you must configure the tunnel to send. When packets are sent by upper-layer protocols over the interface, they will be redirected and sent over this GRE tunnel.
Prerequisite
Before configuring UDLR tunnel, ensure that all routers on the UDL have the same subnet address. If all routers on the UDL cannot have the same subnet address, the upstream router must be configured with secondary addresses to match all the subnets that the downstream routers are attached to.
SUMMARY STEPS
On the Upstream Router:
1.
enable
2.
configure terminal
3.
interface type number
4.
interface tunnel number
5.
tunnel udlr receive-only type number
6.
tunnel source {ip-address |type number}
7.
tunnel destination {hostname | ip-address}
8.
Move to the downstream router.
On the Downstream Router:
9.
enable
10.
configure terminal
11.
interface type number
12.
interface tunnel number
13.
tunnel udlr send-only type number
14.
tunnel source {ip-address |type number}
15.
tunnel destination {hostname | ip-address}
16.
tunnel udlr address-resolution
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
• Do this step on the upstream router.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
interface type number
Example:
Router(config)# interface ethernet 0
|
Configures the unidirectional send-only interface.
|
Step 4
|
interface tunnel number
Example:
Router(config-if)# interface tunnel 0
|
Configures the receive-only tunnel interface.
|
Step 5
|
tunnel udlr receive-only type number
Example:
Router(config-if)# tunnel udlr receive-only
ethernet 0
|
Configures the UDLR tunnel.
• Use the same type and number values as the unidirectional send-only interface type and number values specified with the interface type number command in Step 3.
|
Step 6
|
tunnel source {ip-address | type number}
Example:
Router(config-if)# tunnel source 10.3.4.5
|
Configures the tunnel source.
|
Step 7
|
tunnel destination {hostname | ip-address}
Example:
Router(config-if)# tunnel destination 11.8.2.3
|
Configures the tunnel destination.
|
Step 8
|
Move to the downstream router.
|
—
|
Step 9
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
|
Step 10
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 11
|
interface type number
Example:
Router(config)# interface ethernet 0
|
Configures the unidirectional receive-only interface.
|
Step 12
|
interface tunnel number
Example:
Router(config-if)# interface tunnel 0
|
Configures the send-only tunnel interface.
|
Step 13
|
tunnel udlr send-only type number
Example:
Router(config-if)# tunnel udlr send-only
ethernet 0
|
Configures the UDLR tunnel.
• Use the same type and number values as the unidirectional receive-only interface type and number values specified with the interface type number command in Step 3.
|
Step 14
|
tunnel source {ip-address | type number}
Example:
Router(config-if)# tunnel source 11.8.2.3
|
Configures the tunnel source.
|
Step 15
|
tunnel destination {hostname | ip-address}
Example:
Router(config-if)# tunnel destination 10.3.4.5
|
Configures the tunnel destination.
|
Step 16
|
tunnel udlr address-resolution
Example:
Router(config-if)# tunnel udlr
address-resolution
|
Enables the forwarding of ARP and NHRP.
|
Configuring IGMP UDLR
To configure an IGMP UDL, you must configure both the upstream and downstream routers. You need not specify whether the direction is sending or receiving; IGMP learns the direction by the nature of the physical connection.
When the downstream router receives an IGMP report from a host, the router sends the report to the IGMP querier associated with the UDL interface identified in the ip igmp helper-address command.
Distance for the Default RPF Interface Determines Which Path Is Used
By default, the distance for the default reverse path forwarding (RPF) interface is 15. Any explicit sources learned by routing protocols will take preference if their distance is less than the distance configured by the ip multicast default-rpf-distance command. Use this command on downstream routers if you want some sources to use RPF to reach the UDLR link and others to use the terrestrial paths.
•
If you want IGMP to prefer the UDL, set the distance to be less than the distances of the unicast routing protocols.
•
If you want IGMP to prefer the non-UDL, set the distance to be greater than the distances of the unicast routing protocols.
Prerequisites
Before configuring IGMP UDLR, ensure that the following conditions exist:
•
All routers on the UDL have the same subnet address. If all routers on the UDL cannot have the same subnet address, the upstream router must be configured with secondary addresses to match all the subnets that the downstream routers are attached to.
•
Multicast receivers are directly connected to the downstream routers.
SUMMARY STEPS
On the Upstream Router:
1.
enable
2.
configure terminal
3.
interface type number
4.
ip igmp unidirectional-link
5.
Move to the downstream router.
On the Downstream Router:
6.
enable
7.
configure terminal
8.
ip multicast default-rpf-distance distance
9.
interface type number
10.
ip igmp unidirectional-link
11.
ip igmp helper-address udl type number
12.
exit
13.
show ip igmp udlr [group-name | group-address | type number]
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
• Begin on the upstream router.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
interface type number
Example:
Router(config)# interface ethernet 0
|
Configures the interface.
|
Step 4
|
ip igmp unidirectional-link
Example:
Router(config-if)# ip igmp unidirectional-link
|
Configures IGMP on the interface to be unidirectional.
|
Step 5
|
Move to the downstream router.
|
—
|
Step 6
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
• Begin on the upstream router.
|
Step 7
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 8
|
ip multicast default-rpf-distance distance
Example:
Router# ip multicast default-rpf-distance 10
|
(Optional) Sets the distance for the default RPF interface.
|
Step 9
|
interface type number
Example:
Router(config)# interface ethernet 0
|
Configures the interface.
|
Step 10
|
ip igmp unidirectional-link
Example:
Router(config-if)# ip igmp unidirectional-link
|
Configures IGMP on the interface to be unidirectional.
|
Step 11
|
ip igmp helper-address udl type number
Example:
Router(config-if)# ip igmp helper-address udl
ethernet 0
|
Configures the interface to be an IGMP helper.
• Use this command on every downstream router, on every interface to specify the type and number values that identify the UDL interface.
|
Step 12
|
exit
Example:
Router(config-if)# exit
|
Exits configuration mode and returns to EXEC mode.
|
Step 13
|
show ip igmp udlr [group-name | group-address |
type number]
Example:
Router(config)# show ip igmp udlr
|
(Optional) Displays UDLR information for directly connected multicast groups on interfaces that have a UDL helper address configured.
|
Configuration Examples for UDLR
This section includes the following examples:
•
UDLR Tunnel: Example
•
IGMP UDLR: Example
•
Integrated UDLR Tunnel, IGMP UDLR, and IGMP Proxy: Example
UDLR Tunnel: Example
The following example shows how to configure a UDLR tunnel. In the example, Router A (the upstream router) is configured with Open Shortest Path First (OSPF) and PIM. Serial interface 0 has send-only capability. Therefore, the UDLR tunnel is configured as receive only, and points to serial 0.
Router B (the downstream router) is configured with OSPF and PIM. Serial interface 1 has receive-only capability. Therefore, the UDLR tunnel is configured as send-only, and points to serial 1. The forwarding of ARP and NHRP is enabled. Figure 1 illustrates the example.
Figure 1 UDLR Tunnel Example
Router A Configuration
! Serial0 has send-only capability
ip address 10.1.0.1 255.255.0.0
! Configure tunnel as receive-only UDLR tunnel.
tunnel destination 11.0.0.2
tunnel udlr receive-only serial 0
network 10.0.0.0 0.255.255.255 area 0
Router B Configuration
! Serial1 has receive-only capability
ip address 10.1.0.2 255.255.0.0
! Configure tunnel as send-only UDLR tunnel.
tunnel destination 11.0.0.1
tunnel udlr send-only serial 1
tunnel udlr address-resolution
network 10.0.0.0 0.255.255.255 area 0
IGMP UDLR: Example
The following example shows how to configure IGMP UDLR. In this example, uplink-rtr is the local upstream router and downlink-rtr is the downstream router. Figure 2 illustrates the example.
Both routers are also connected to each other by a back channel connection. Both routers have two IP addresses: one on the UDL and one on the interface that leads to the back channel. The back channel is any return route and can have any number of routers.
Note
Configuring PIM on the back channel interfaces on the uplink router and downlink router is optional.
All routers on a UDL must have the same subnet address. If all routers on a UDL cannot have the same subnet address, the upstream router must be configured with secondary addresses to match all the subnets that the downstream routers are attached to.
Figure 2 IGMP Unidirectional Link Routing Example
Uplink Router (uplink-rtr) Configuration
! Interface that source is attached to
description Typical IP multicast enabled interface
ip address 12.0.0.1 255.0.0.0
description Back channel which has connectivity to downlink-rtr
ip address 11.0.0.1 255.0.0.0
description Unidirectional to downlink-rtr
ip address 10.0.0.1 255.0.0.0
ip igmp unidirectional-link
Downlink Router (downlink-rtr) Configuration
! Interface that receiver is attached to, configure for IGMP reports to be
! helpered for the unidirectional interface.
description Typical IP multicast-enabled interface
ip address 14.0.0.2 255.0.0.0
ip igmp helper-address udl serial 0
description Back channel that has connectivity to downlink-rtr
ip address 13.0.0.2 255.0.0.0
description Unidirectional to uplink-rtr
ip address 10.0.0.2 255.0.0.0
ip igmp unidirectional-link
Integrated UDLR Tunnel, IGMP UDLR, and IGMP Proxy: Example
The following example shows how to configure UDLR tunnels, IGMP UDLR, and IGMP proxy on both the upstream and downstream routers sharing a UDL.
Upstream Configuration
ip address 9.1.89.97 255.255.255.252
tunnel mode gre multipoint
tunnel udlr receive-only Ethernet2/3
ip address 9.1.89.1 255.255.255.240
ip rsvp bandwidth 1000 100
ip address 9.1.95.1 255.255.255.240
! physical send-only interface
ip address 9.1.92.100 255.255.255.240
ip igmp unidirectional-link
ip rsvp bandwidth 1000 100
network 9.1.92.96 0.0.0.15 area 1
ip route 9.1.90.0 255.255.255.0 9.1.92.99
Downstream Configuration
ip address 9.1.90.161 255.255.255.252
ip igmp helper-address udl Ethernet2/3
ip address 9.1.90.97 255.255.255.252
tunnel destination 9.1.89.97
tunnel udlr send-only Ethernet2/3
tunnel udlr address-resolution
ip address 9.1.90.1 255.255.255.240
ip igmp mroute-proxy Loopback0
ip address 9.1.95.3 255.255.255.240
! physical receive-only interface
ip address 9.1.92.99 255.255.255.240
ip igmp unidirectional-link
network 9.1.90.0 0.0.0.255 area 1
network 9.1.92.96 0.0.0.15 area 1
ip route 0.0.0.0 0.0.0.0 9.1.95.1
! set rpf to be the physical receive-only interface
ip mroute 0.0.0.0 0.0.0.0 9.1.92.96
ip pim rp-address 9.1.90.1
! permit ospf, ping and rsvp, deny others
access-list 120 permit icmp any any
access-list 120 permit 46 any any
access-list 120 permit ospf any any
Additional References
The following sections provide references related to UDLR.
Related Documents
MIBs
MIB
|
MIBs Link
|
• None
|
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:
http://www.cisco.com/go/mibs
|
Technical Assistance
Description
|
Link
|
Technical Assistance Center (TAC) home page, containing 30,000 pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content.
|
http://www.cisco.com/public/support/tac/home.shtml
|
Feature Information for Configuring IP Multicast over Unidirectional Links
Table 1 lists the features in this module and provides links to specific configuration information. Only features that were introduced or modified in Cisco IOS Releases 12.2(1) or later appear in the table.
Not all commands may be available in your Cisco IOS software release. For details on when support for specific commands was introduced, see the command reference documents.
Cisco IOS software images are specific to a Cisco IOS software release, a feature set, and a platform. Use Cisco Feature Navigator to find information about platform support and Cisco IOS software image support. Access Cisco Feature Navigator (http://www.cisco.com/go/fn). You must have an account on Cisco.com. If you do not have an account or have forgotten your username or password, click Cancel at the login dialog box and follow the instructions that appear.
Table 1 Feature Information for Configuring IP Multicast over Unidirectional Links
Feature Name
|
Releases
|
Feature Configuration Information
|
This table is intentionally left blank because no features were introduced or modified in Cisco IOS Release 12.2(1) or later. This table will be updated when feature information is added to this module.
|
—
|
—
|
Any Internet Protocol (IP) addresses used in this document are not intended to be actual addresses. Any examples, command display output, and figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses in illustrative content is unintentional and coincidental.
© 2007 Cisco Systems, Inc. All rights reserved.