Small group multicast in a computer network
First Claim
1. A method of performing multicast transmission in a computer network, comprising:
- receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet;
receiving, by said source router, data packets transmitted by said multicast source end station;
transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention solves the problem of overloading intermediate routers with state information as the number of multicast groups increases to millions of groups. The invention places multicast delivery tree information in the header of an encapsulated multicast packet, thereby relieving the routers from maintaining any state information about the multicast groups. The encapsulated packet is referred to as a small group multicast packet, or SGM packet. Routers which are neither branch points of the delivery tree nor destination routers will also need to do no additional forwarding processing other than that needed for standard unicast forwarding. A protocol designation field in the Layer 3 header informs the router that the packet is a SGM packet, and that the router is therefore instructed to parse the packet for route information. The router parses the SGM packet header and determines the next hop address of routers in the multicast delivery tree. The standard unicast forwarding tables are then consulted to determine the next packet destination addresses, and the router then rewrites the SGM packet and routes it to the next hop router. The routing tables also instruct the router as to which outbound port to route the packet.
-
Citations
37 Claims
-
1. A method of performing multicast transmission in a computer network, comprising:
-
receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; receiving, by said source router, data packets transmitted by said multicast source end station; transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of performing multicast transmission in a computer network, comprising:
-
receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; receiving, by said source router, data packets transmitted by said multicast source end station; transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets; establishing said source router as separated from said multicast source end station by more than one router hop by a second router placing a data portion of a trace packet received by said second router into a data portion of an ICMP echo request packet having a destination address set to the group IP address, and a ICMP echo request identifier set to a protocol type assigned a SGM type; receiving an ICMP echo response packet from said multicast source end station in response to receipt of said echo request packet by said multicast source end station; and
,establishing, in response to receipt of said ICMP response packet by said second router, said second router as said source router. - View Dependent Claims (13)
-
-
14. A method of performing multicast transmission in a computer network, comprising:
-
receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; receiving, by said source router, data packets transmitted by said multicast source end station; transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets; and setting a non-fragmentation bit in a trace packet so that a data portion of said SGM packet will not be separated from a SGM header portion of said trace packet by fragmentation.
-
-
15. A method of performing multicast transmission in a computer network, comprising:
-
receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; receiving, by said source router, data packets transmitted by said multicast source end station; transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets; and transmitting a group membership notification (GMN) packet by a destination router containing a list of current group membership, said group membership including destination end stations receiving said multicast group transmissions, and placing only source information in trace packets and no group membership information in trace packets.
-
-
16. An apparatus to perform multicast transmission in a computer network, comprising:
-
means for receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; means for receiving, by said source router, data packets transmitted by said multicast source end station; means for transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A router to perform multicast transmission in a computer network, comprising:
-
a receiver to receive trace packets, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet, and to receive data packets transmitted by said multicast source end station; a transmitter to transmit small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets.
-
-
32. A computer readable media, comprising:
-
said computer readable media having instructions for execution on a processor written thereon for, receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; receiving, by said source router, data packets transmitted by said multicast source end station; transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets.
-
-
33. A computer network having electromagnetic signals propagating thereon, said electromagnetic signals carrying instructions which when executed by a processor cause the processor to perform the steps comprising:
-
receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; receiving, by said source router, data packets transmitted by said multicast source end station; transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets.
-
-
34. A method of performing multicast transmission in a computer network, comprising:
-
receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; receiving, by said source router, data packets transmitted by said multicast source end station; transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets; and transmitting a group membership notification (GMN) packet by a destination router containing a list of current group membership, said group membership including destination end stations receiving said multicast group transmissions. - View Dependent Claims (35)
-
-
36. An apparatus to perform multicast transmission in a computer network, comprising:
-
means for receiving trace packets by a source router, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet; means for receiving, by said source router, data packets transmitted by said multicast source end station; means for transmitting by said source router small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets; and means for transmitting a group membership notification (GMN) packet by a destination router containing a list of current group membership, said group membership including destination end stations receiving said multicast group transmissions.
-
-
37. A router to perform multicast transmission in a computer network, comprising:
-
a receiver to receive trace packets, said trace packets transmitted in response to an end station requesting to join a multicast group having a multicast source end station, said trace packets containing an address list of intermediate routers which routed said trace packet, and to receive data packets transmitted by said multicast source end station; said receiver also to receive group membership notification (GMN) packets from a destination router, said GMN packets containing a list of current group membership, said group membership including destination end stations receiving said multicast group transmissions; and a transmitter to transmit small group multicast packets (SGM packets) having a multicast distribution tree written into a header of said SGM packets, said multicast distribution tree constructed by said source router in response to said address list contained in said trace packets, and said SGM packets containing in a data field, data read from said data packets.
-
Specification