Stephen Deering is a former Fellow at Cisco Systems, where he worked on the development technologies, including multicast routing, mobile internetworking, scalable addressing, and support for multimedia applications over the Internet.
Table of contents
- Multicast IP Address to MAC address mapping
- Stephen Deering
- IPv4 Multicast Address Space Registry
Switches would not know if receivers were still there. Delaying queries on those access ports having active senders would reduce the problem but not solve it. A switch must either: 1 temporarily take down connections and throttle multicast flows to check for membership; or 2 assume membership remains and send out flows that are no longer wanted. One way to avoid this problem is to have the IP protocol field distinguish IGMP packets, as part of its flow identifier connection key.
Then, a source can recognize its own packets. Sniffing walks the multicast connection table and, for any connection having that inport, substitutes the host control port for the outport s , before sending out an IGMP query on the port. Existing sender flows arriving on the sniffed port are forwarded through the CPU central processing unit on the switch rather than switched in hardware. If a new sender appears on a sniffed port the Senders' Present announcement is made to all other switches and the senders's multicast packets are forwarded by the CPU.
Should membership to a given group be reported on the sniffed port, sniffed connections for that group are immediately restored to their original outports. If a multicast router exists there is a contention as to whether the router or the switch is the designated querier. If hosts also exist on this port which may respond to queries from the router, the switch must not allow host membership reports to be switched through it—this would silence other receivers of that group from responding to local queries on their access ports.
The problem could be avoided by a topology restriction—no multicast senders allowed on links with multicast routers—enforced by the switch accepting only PIM or DVMRP group packets in on such a link. However, another solution is not to restrict topology. If the switch hears an active router it defers querying to the router; when a switch hears the query from a router it sniffs that port. This mechanism would appear to leave a window whereby a membership report could slip through before a congested switch hears the query. This is generally not a problem in practice because IGMP specifies host membership reports are delayed at least 1 second and multiple queries must go unanswered before group membership is lost on a port.
Each switch keeps a database of senders in a multicast connection table, each active local sender being represented with at least a filter connection, and each switch also keeps a database of local receiver ports in a table.
Senders are discovered when they send and are removed through age out. This database does not require replication nor highly dynamic refresh because the initial appearance of both senders and receivers is reliably announced to all switches, and if the switch resets its senders and receivers reappear and are reannounced.
- Bite the bytes: Multicast in Ethernet LANs.
- festplatte auf ssd klonen mac!
- Multicast on the LAN | Interdomain Multicast Fundamentals | InformIT?
- petit frere paroles mac tyer!
- create photo cards on mac.
Of course a switch cannot announce the disappearance of its senders and receivers if it reboots. Because of this and possible topology changes that could occur during physical wire changes or on busy or resetting switches, it is possible to form a hole or loop.
- Navigation menu?
- Quick Links.
- Blog Archive?
- Multicast on the LAN | Interdomain Multicast Fundamentals | InformIT.
- Post navigation;
- Table of Contents;
- Steve Deering.
Aging mechanisms take care of holes. A switch detects a loop by receiving a multicast flow packet on a port other than the connection inport. Although these mechanisms clean up bad connections, rerouting around such problems may require that information held locally in the multicast database be distributed again to reset connections. Thus each switch reannounces its database every few minutes. Each switch maintains knowledge of its local senders. This database see Table 1 is indexed by multicast group and host source address and holds the sources that have appeared on this switch and the inport on which the source host appeared with the create time of the entry.
This information is periodically reannounced in a Senders Present message in case any potential receivers initially failed to connect. Each switch maintains knowledge of its local receivers. The IGMP query state machine builds in each switch a local database Table 2 of multicast groups which exist on each interface of that switch.
Alternately, group membership may be statically configured. When group membership initially occurs on a switch, this information is distributed to all other switches by sending an SP Switch Join announcement and it is periodically reannounced for all groups joined at that switch in a Groups Present message. Router-attached switches maintain knowledge of all groups in the domain. Groups joined at any switch in the domain must be known to any switch with attached multicast routers to permit joining these groups up to the router.
This is done by answering IGMP queries generated by the router with a membership report for each group known in the domain. When a switch first joins a group or leaves a group, it announces this on the signal channel to all switches.
Periodically this information is reannounced—the Groups Present message. This is necessary so the switches with attached multicast routers remember this information to continue joining or to stop joining up to the router when the last switch leaves the group. It then announces a Senders Present message on the signal channel. Note: a Senders Present message may also be sent directly to a switch which later joins the multicast group, in response to the Switch Join announcement.
Multicast IP Address to MAC address mapping
This Senders Present message contains the group, the source host, and the source switch identity. Any switch having local receivers for that group attempts to set up a connection to the source host. Such a switch, although it is a call-originating switch, is an egress switch for the connection. To set up the connection it retrieves the precalculated shortest path toward the ingress switch from the LSP database. The call-originating switch then reliably delivers a Map connection set-up message one hop up the path's upstream link toward the ingress switch.
This Map message contains the full path. The receiving switch named as the next hop on the path processes the Map. If it has no connection for that group, source it sets one up and forwards the Map up the path. If it already has a connection it simply adds in the outport on which it received the Map message and does not forward the Map.
The final result of this process is a point-to-multipoint connection rooted at the source host out to all receiver active links. If a switch detects through IGMP a group joining on a new access port and there are already connections installed to the group, the switch adds that port to these connections. These connections could source from local senders on its other access ports, or remote senders on a network inport.
If a switch hears a Senders Present announcement for a group it has not joined it disregards the message. If there is no existing connection it sets one.
IPv4 Multicast Address Space Registry
It uses the LSP database to get the inport, which is the link on the path to the sending switch, and gets outports from the multicast receivers database. Then it initiates a connection set up Map message upstream on that path. In the multicast tree being formed, some switches lie along branches and some switches are located at branch points of the tree. First consider a switch which lies along a branch, on a link with only one peer.
The switch installs a new connection for its point of the path, with the inport being its upstream path link and the outport being the port on which the set-up message was received. It then forwards the Map up the path toward the next switch. If there is no error, the message arrival port is added to the outports in this existing connection and the set-up process terminates.
There is however special handling if a switch receives the message on a link on which it has multiple peers.
A switch which receives the Map message but is not included on the path in the message, and does not have the requested connection already installed, installs a filter connection. This is important for switches on multi-switch links such as FDDI loops since uninvolved switches i. This is one reason the set-up message is broadcast hop-by-hop upstream, rather than simply unicast to the next peer switch on the path. When more than two switches exist on the same link, whether an FDDI or ethernet link, a mechanism is necessary to prevent sending duplicate packets downstream.
This problem is rare, but could occur when receivers, connecting up toward a given multicast source ask for LSP paths at different times, and the LSP paths returned name different switches as sender on a shared link. A similar problem would exist if different redundant links between the same switch pair were chosen for the connect up paths. A mechanism must assure that only one switch forwards on to the common link for a given tree. This problem also occurs in the legacy world among multicast routers.
This exchange determines the lowest IP addressed router on the shared link which is then designated to be the sole multicast sender on that link. Switches require similar protocol; the question is what basis should be used to designate the sole sender. It is arbitrary to choose simply lowest or highest address sender, and protocol would be required anyway among the subset of requested senders.