Internet DRAFT - draft-he-msnip-igmp-proxy-ext
draft-he-msnip-igmp-proxy-ext
Internet Engineering Task Force Haixiang He
INTERNET-DRAFT Nortel Networks
Expire: January, 2002 July, 2001
MSNIP Extension for IGMP Proxying
<draft-he-msnip-igmp-proxy-ext-00.txt>
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC 2026.
Internet Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
IGMP Proxying can be used to forward multicast data traffic in
certain network topologies. Due to the limitation of the IGMP
Proxying, a Proxy has to forward multicast packets received from
downstream interfaces to upstream interface. In this document, we
proposed a solution to solve this inefficiency by using an extension
to MSNIP.
1. Introduction
IGMP Proxying [1][2] can be used by IPv4 system to forward multicast
traffic in certain network topologies. A device (Proxy) performing
He [Page 1]
Internet Draft MSNIP Extension for IGMP Proxying January, 2002
IGMP Proxying has a single upstream interface and one or more
downstream interface(s). It performs IGMP host portion on its
upstream interface and IGMP router portion on its downstream
interfaces.
MSNIP(Multicast Source Notification of Interest Protocol)[3] is an
extension to IGMPv3 [4]. It is proposed to enable multicast sources
to avoid the work of sending packets when there are no receivers.
In IGMP Proxying, a Proxy has to forward packets received on any
downstream interface to the upstream interface. This is because the
Proxy lacks the abilities to find out whether there is any receiver
that is interested in receiving the packets through the upstream
interface. This is inefficient for the Proxy.
In this document, we proposed a solution to improve the inefficiency
of IGMP Proxying by using an extension to MSNIP.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119.
2. Packets Forwarding to Upstream Issues and Solutions
In IGMP Proxying, a Proxy forwards every multicast packet received
from downstream interfaces to upstream interface even there is no
receiver upstream. From the upstream network point of view, a Proxy
behaves like a system that wishes to source multicast traffic.
Compared to multicast sources, the only difference here is that the
packets' source addresses are not the address of the Proxy's upstream
interface. Same as other systems that wish to source multicast
traffic, there are inefficiencies for the Proxy as well as the
upstream link if there are no receiver upstream.
The same concept of MSNIP can also be used here between the Proxy and
the upstream router to remove the inefficiency. Like any multicast
source that uses MSNIP, when a Proxy first receives packets from
downstream interfaces, it forwards them to upstream interface. Then
when the Proxy is informed by MSNIP that there is no receiver
upstream, it stop forwarding packets to upstream interface. It will
resume forwarding packets when it is informed by upstream router.
But the current MSNIP specification has to be extended to accommodate
the communication of receiver membership information between the
Proxy and the upstream router. This is because the Proxy is not the
original source of the multicast packets. So the current MSNIP
specification won't work in that the receiver membership information
He [Page 2]
Internet Draft MSNIP Extension for IGMP Proxying January, 2002
is unicast to the original multicast source directly. Also a Proxy
cannot use the current MSNIP specification to solicit interest of
receiver membership information for specific multicast sources.
We proposed two new MSNIP messages to accommodate the communication.
The new messages allow a Proxy to solicit its interest of receiver
membership information for specific sources. And they also enable a
multicast router to send the receiver membership information for
specific sources to a Proxy that interests in receiving this
information instead of the original multicast source.
A Proxy MUST have the ability to know the source address of the
packets it forwards to upstream interface. The upstream router should
follow the requirements for first hop router specified in MSNIP [3].
We define that SOURCE is a system that source multicast packets. We
also define that PROXY is a device that forwards multicast packets. A
device can be both a PROXY and a SOURCE.
3. New MSNIP Messages
The two new MSNIP messages are Source Interest Solicitation message
and Source Group Membership Report message. Like other MSNIP
messages, these two new messages should follows the requirements
specified in [3].
The new message types are:
+-------------------+-----------------------------------------+
| Type Number (hex) | Message Name |
+-------------------+-----------------------------------------+
| 0x26 | Source Interest Solicitation |
+-------------------+-----------------------------------------+
| 0x27 | Source Group Receiver Membership Report |
+-------------------+-----------------------------------------+
3.1. Source Interest Solicitation Packet
Like Interest Solicitation, the Source Interest Solicitation packet
is also periodically multicast by MSNIP capable systems. But it is
used by PROXYs to solicit interest in Receiver Membership Reports for
specific multicast source(s) from multicast router on the link.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
He [Page 3]
Internet Draft MSNIP Extension for IGMP Proxying January, 2002
| Type = 0x26 | Reserved | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Holdtime | GenID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Count | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source-Address-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Source Count
The number of source addresses presented in the message.
Source-Address-1
The first multicast source address in the message.
Other fields
Same as described in [3].
3.2. Source Group Membership Report Packet
The Group Membership Report message is unicast by the first-hop
multicast routers, in this document upstream routers, to communicate
the existence or not of receivers for specific source and group
pairs. The destination address is the IP address of a system that has
interest of receiving the information.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 0x27 | Source Count | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group-Count-1 | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source-Address-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Record-Type-1-1| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group-Address-1-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Source Count
He [Page 4]
Internet Draft MSNIP Extension for IGMP Proxying January, 2002
The number of source records present in the packet.
Group-Count-1
The number of group records present in the first source record.
Source-Address-1
The multicast source address for the first source record in the
message.
Record-Type-1-1
The type of the first group record of the first source record.
Valid values are the same as in MSNIP specification [3].
Group-Address-1-1
The multicast group address of the first group record in the
first source record.
4. MSNIP Extension Description
A PROXY and an upstream router still follow the behavior of the Group
Range Negotiation to communicate a range of MSNIP managed groups as
specified in [3].
4.1. Source Interest Solicitation
PROXYs periodically transit Source Interest Solicitation messages
following the requirements to transit Interest Solicitation messages.
The upstream routers that receive an Source Interest Solicitation
message maintain a system interest record of the form:
(destination address, holdtime timer, source address list)
where the destination address is the IP address of the upstream
interface of a PROXY and each source address s in the source address
list is one of the multicast source that a PROXY forwards its packets
and it has interest to receive its membership report information.
The upstream routers may also choose to maintain a system interest
record per multicast source of the form:
(source address, destination address, holdtime timer)
where the source address is the multicast source and the destination
address is the address of a PROXY that has interest to receive
membership report information for this source. Which form of record
to use is an implementation issue.
He [Page 5]
Internet Draft MSNIP Extension for IGMP Proxying January, 2002
The router responds to the Source Interest Solicitation message with
a Source Group Membership Report Message described in section 3.2.
The message contains a TRANSMIT group record for each of the group
addresses within the MSNIP managed range for which the routing
protocol indicates there are receivers for source(s) in the source
list.
4.2. Source Group Membership Reports
When receiving a Source Interest Solicitation message, or when the
receiver membership status changes for a specific source and group,
routers send Source Group Membership Reports. Such reports are only
sent if the group is managed by MSNIP and the source address is
interested by a PROXY.
The receiver membership information is unicast to the PROXY that has
interest of the information. The destination address is the IP
address of the upstream interface of the PROXY. It can be acquired
through the system interest record maintained by the upstream router.
When a PROXY receives a Source Group Membership Report message, for
each of the TRANSMIT source group records listed in the message, it
creates or updates a source group record of the form:
(interface, router address, src, group address, holdtime timer)
where the src is the multicast source address and other fields are
the same as in MSNIP specification. For each of the HOLD source group
records in the message, the PROXY deletes the relevant source group
record from its state.
4.3. Upstream Router State Information
To maintain only one format of the system interest record, the
upstream routers that receive an Interest Solicitation message MAY
maintain a record for a SOURCE system like below:
(IP address(des), holdtime timer, IP address(src))
or
(IP address(src), IP address(des), holdtime timer)
where IP address is the SOURCE's IP address.
In this case, when the routers needs to send the receiver membership
He [Page 6]
Internet Draft MSNIP Extension for IGMP Proxying January, 2002
information for a specific source address, the source address is used
to search the system records. If the source address is find in the
source lists or source fields, then the corresponding destination
address is retrieved. If the destination address equals the source
address, then the Group Membership Report message is sent. Otherwise,
the Source Group Membership Report message is sent.
4.4. Proxy's State Information
A Proxy can be a PROXY that forwards multicast packets and it can
also be a SOURCE that sends multicast packets. If a Proxy is both a
PROXY and a SOURCE, it uses both Interest Solicitation and Source
Interest Solicitation messages. It may use just Source Interest
Solicitation message with its upstream interface IP address as one of
the source address in the message.
To maintain just one format of the record, when it receives an
Interest Solicitation message, it also maintain a record as described
in section 4.2. The source address is the IP address of the upstream
interface.
5. Changes of API for Request Membership Notification
If the IGMP Proxying is considered an application to MSNIP and uses
the APIs to request membership notification, the current MSNIP APIs
need to be modified. The new API must support the following operation
or any logical equivalent:
IPMulticastSourceRegister(socket, if, source-addr, multicast-addr)
IPMulticastSourceDeregister(socket, if, source-addr, multicast-addr)
In addition the IGMP Proxying or other applications must provide the
following API for receiving notifications:
IPMulticastSourceStart(socket, if, source-addr, multicast-addr)
IPMulticastSourceStop(socket, if, source-addr, multicast-addr)
where:
source-addr
is the IP multicast source address to which the request
pertains. If transmission to more than one source address on a
given interface is desired, IPMulticastSourceRegister is invoked
separately for each desired source address.
Other fields are the same as described in MSNIP specification.
He [Page 7]
Internet Draft MSNIP Extension for IGMP Proxying January, 2002
6. Membership Information Relay
The PROXY may choose to relay the membership report information to
downstream sources. In this case, the MSNIP should be performed
between downstream interface(s) and the downstream IP systems (direct
source or others). How and to what degree to relay the membership
information is beyond the scope of this document.
7. Security Considerations
Security considerations will be provided later.
References
[1] Fenner, W., "IGMP-based Multicast Forwarding ("IGMP Proxying")",
<draft-ietf-idmr-igmp-proxy-00.txt>, April, 2001.
[2] He, H., Haberman, B., and Sandick, H., "IGMP Mixed Version
Proxying", <draft-he-mixed-igmp-proxy-00.txt>, February, 2001.
[3] Fenner, W., Holbrook, H., and Kouvelas, I., "Multicast Source
Notification of Interest Protocol (MSNIP)", <draft-ietf-idmr-
msnip-00.txt>, February, 2001.
[4] Cain, B., Deering, S., Fenner, W., Kouvelas, I., Thyagarajan, A.,
"Internet Group Management Protocol, Version 3", <draft-ietf-
idmr-igmp-v3-07.txt>, March, 2001.
Author's Address:
Haixiang He
Nortel Networks
600 Technology Park Drive
Billerica, MA 01821
Phone: 978-288-7482
Email: haixiang@nortelnetworks.com
He [Page 8]