Multicast routing in ad-hoc networks
AssigneeNokia Networks Oy
InventorsJose J. Garcia-Luna-Aceves, Marcelo Spohn
Life of this patent
Estimating the term…
Abstract
Multicast routing in ad-hoc networks by exchange of multicast group update information and routing tree information among neighboring routers is disclosed. A router propagates multicast group update information based on the update information and the routing tree information. A router also determines whether to forward multicast data packets based on control information in the multicast data packets and the routing tree information.
Claims32
A method for communicating multicast group membership information in a network between a plurality of routers in a multicast group, the method comprising:
- reporting routing tree information from each of the plurality of routers reports to other routers of said plurality of routers, wherein the routing tree information comprises a source tree for a unicast routing protocol;
- receiving update information at a second router in the network from a first router, said update information comprising update information on a multicast group and a network address of said first router;
- using said update information to indicate that said first router is becoming a member of said multicast group;
- determining, based at least in part on said update information and the routing tree information reported by said first router, whether said second router is to transmit said update information so that all members of said multicast group remain connected, by determining if said source tree reported by said first router has said second router as a root of a subtree from which said first router is excluded, and if at least one neighbor router of said second router in said subtree is not a member of said multicast group;
- and
- in response to a positive determination, transmitting said update information from said second router to said at least one neighbor router of said second router.
A method for forwarding multicast packets in a network comprising a plurality of routers in a multicast group, the method comprising:
- reporting routing tree information from each of the plurality of routers to other routers of said plurality of routers;
- receiving a multicast packet at a second router from a first router, said multicast packet comprising control information, wherein a multicast packet is from a selected source and for a selected multicast group;
- determining, based at least in part on said control information and the routing tree information reported by said first router, if said multicast packet is to be forwarded by said second router, wherein said routing tree information comprises a source tree for a unicast routing protocol;
- and
- in response to a positive determination that said multicast packet is to be forwarded,
- forwarding said multicast packet from said second router to at least a third router,
- creating an entry in a multicast forwarding cache, wherein said entry indicates that a multicast packet from said selected source and said selected multicast group is to be forwarded from said second router, and
- maintaining by said second router a multicast packet-forwarding cache, wherein said multicast packet-forwarding cache comprises an entry indicating each multicast packet recently forwarded by said second router,
- wherein said determining comprises determining whether said first router is a next hop in a shortest path from said second router to the source of the multicast packet according to said source tree.
The method of claim, 12, further comprising:
- configuring said multicast packet to comprise an address of the multicast group.
A method for forwarding multicast packets in a network comprising a plurality of routers in a multicast group, the method comprising:
- reporting routing tree information from each of the plurality of routers to other routers of said plurality of routers;
- receiving a multicast packet at a second router from a first router, said multicast packet comprising control information, wherein a multicast packet is from a selected source and for a selected multicast group;
- determining, based at least in part on said control information and the routing tree information reported by said first router, if said multicast packet is to be forwarded by said second router;
- and
- in response to a positive determination that said multicast packet is to be forwarded,
- forwarding said multicast packet from said second router to at least a third router,
- creating an entry in a multicast forwarding cache, wherein said entry indicates that a multicast packet from said selected source and said selected multicast group is to be forwarded from said second router, and
- configuring the routing tree information reported by said first router to comprise a source tree for a unicast routing protocol,
- wherein said determining comprises determining if said first router is a next hop in a shortest path from said second router to the source of the multicast packet according to said source tree, and if said source tree has said second router in a subtree with at least one router in said subtree being a member of the multicast group.
An apparatus, comprising:
- a plurality of routers in a multicast group configured to communicate multicast group membership information in a network to other routers of said plurality of routers, wherein each of the plurality of routers reports routing tree information to other routers of said plurality of routers, wherein the routing tree information comprises a source tree for a unicast routing protocol;
- a first router;
- and
- a second router,
- wherein said first router is configured to receive update information transmitted from said second router and comprises update information on a multicast group and an indication that said second router is becoming a member of said multicast group,
- wherein said first router is configured to determine, based at least in part on said update information and the routing tree information reported by said second router, whether said first router is to transmit said update information to at least one neighbor router of said first router, by determining if said source tree reported by said second router has said first router as a root of a subtree from which said second router is excluded, and at least one neighbor router of said first router in said subtree is not a member of said multicast group, so that all members of said multicast group remain connected, and
- wherein said first router, in response to a positive determination that said first router is to transmit said update information, is configured to transmit said update information to said at least one neighbor router.
An apparatus, comprising:
- a plurality of routers in a multicast group configured to forward multicast packets in a network, wherein each of the plurality of routers reports control information including routing tree information to other routers of said plurality of routers, wherein said routing tree information comprises a source tree for a unicast routing protocol;
- a first router;
- a second router;
- and
- a third router, wherein said first router comprises a multicast forwarding cache and is configured to receive a multicast packet from said second router in said network, wherein said multicast packet is from a selected source and for a selected multicast group,
- wherein said first router is configured to determine, based at least in part, on said control information and the routing tree information reported by said second router to said first router, if said multicast packet is to be forwarded by said first router and to determine whether said first router is a next hop in a shortest path from said second router to the source of the multicast packet according to said source tree, and
- wherein said first router, in response to a positive determination that said multicast packet is to be forwarded, is configured to forward said multicast packet to at least said third router,
- wherein said first router is configured to create an entry indicating that a multicast packet from said selected source and said selected multicast group are to be forwarded after making a positive determination that said multicast packet is to be forwarded,
- wherein said first router comprises a multicast packet-forwarding cache, and
- wherein said multicast packets forwarding cache comprises an entry indicating each multicast packet recently forwarded by said first router.
The apparatus of claim, 28, wherein said multicast packet comprises a time value, wherein said time value is used to limit the time said multicast packet is allowed to remain in the system.
An apparatus, comprising:
- a plurality of routers in a multicast group configured to forward multicast packets in a network, wherein each of the plurality of routers reports control information including routing tree information to other routers of said plurality of routers;
- a first router;
- a second router;
- and
- a third router, wherein said first router comprises a multicast forwarding cache and is configured to receive a multicast packet from said second router in said network, wherein said multicast packet is from a selected source and for a selected multicast group,
- wherein said first router is configured to determine, based at least in part, on said control information and the routing tree information reported by said second router to said first router, if said multicast packet is to be forwarded by said first router, and
- wherein said first router, in response to a positive determination that said multicast packet is to be forwarded, is configured to forward said multicast packet to at least said third router, and
- wherein said first router is configured to create an entry indicating that a multicast packet from said selected source and said selected multicast group are to be forwarded after making a positive determination that said multicast packet is to be forwarded,
- wherein the routing tree information reported by said second router comprises a source tree for a unicast routing protocol, and
- wherein said first router is further configured to determine if said second router is a next hop in a shortest path from said first router to the source of the multicast packet according to said source tree, and if said source tree has said first router in a subtree with at least one router in said subtree being a member of the multicast group.
Dependencies are inferred from the claim text.