Small group multicast in a computer network
First Claim
1. A router that is interconnected to a source end station, comprising:
- a processor; and
a memory configured to store;
a data structure including a multicast distribution tree for a multicast group, the multicast distribution tree configured to specifically identify a path through a computer network from the router that is interconnected to the source end station to a destination end station, andsoftware that, when executed by the processor of the router that is interconnected to the source end station, causes the router, upon receipt of a multicast data packet associated with the multicast group from the source end station, to encapsulate the received multi-cast data packet in a unicast data packet having a header, and to write the multicast distribution tree from the memory into the header of the encapsulating unicast data packet, to permit multicast transmission from the router to the destination end station, the multicast distribution tree represented in the header by a tree list and an address list, wherein the entries of the tree list are encoded according to a depth encoding scheme where the entries in the tree list are arranged in an order from parent to child and each of the entries of the tree list describes the depth of the network device in the multicast distribution tree, and wherein each the entries of the address list corresponds to the network device specified in one of the entries of the tree list and includes an address for the network device.
1 Assignment
0 Petitions
Accused Products
Abstract
A data structure is stored in a memory of a router, the router located along a path between a source end station and a plurality of destination end stations in a multicast distribution tree. In response to receipt of trace packets containing a listing of network devices in the multicast distribution tree, the data structure is updated. When the source end station desires to send a multicast packet, it transmits a packet to the router. The router then writes the path information stored in the data structure into the packet. Such path information may include a tree list that specifies the arrangement of network devices along the multicast distribution tree and an address list that specifies the Internet Protocol (IP) addresses of these network devices along the multicast distribution tree. By storing the complete description of the network devices of the multicast distribution tree in the packet, routing demands on the devices along the multicast path are minimized.
76 Citations
16 Claims
-
1. A router that is interconnected to a source end station, comprising:
-
a processor; and a memory configured to store; a data structure including a multicast distribution tree for a multicast group, the multicast distribution tree configured to specifically identify a path through a computer network from the router that is interconnected to the source end station to a destination end station, and software that, when executed by the processor of the router that is interconnected to the source end station, causes the router, upon receipt of a multicast data packet associated with the multicast group from the source end station, to encapsulate the received multi-cast data packet in a unicast data packet having a header, and to write the multicast distribution tree from the memory into the header of the encapsulating unicast data packet, to permit multicast transmission from the router to the destination end station, the multicast distribution tree represented in the header by a tree list and an address list, wherein the entries of the tree list are encoded according to a depth encoding scheme where the entries in the tree list are arranged in an order from parent to child and each of the entries of the tree list describes the depth of the network device in the multicast distribution tree, and wherein each the entries of the address list corresponds to the network device specified in one of the entries of the tree list and includes an address for the network device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method comprising the steps of:
-
storing a data structure in a memory of a router that is interconnected to a source end station, the data structure including a multicast distribution tree for a multicast group, the multicast distribution tree specifically identifying a path through a computer network, from the router that is interconnected to the source end station to a destination end station; receiving, by the router that is interconnected to the source end station, a multicast data packet from the source end station, the multicast data packet associated with the multi-cast group; encapsulating, by the router that is interconnected to the source end station, the received multicast data packet in a unicast data packet having a header; and writing, by the router that is interconnected to the source end station, the multicast distribution tree from the memory to the header of the encapsulating unicast data packet, the multicast distribution tree represented in the header by a tree list and an address list, wherein the entries of the tree list are encoded according to a depth encoding scheme where the entries of the tree list are arranged in an order from parent to child and each of the entries of the tree list describes the depth of the network device in the multicast distribution tree, and wherein each of the entries of the address list corresponds to the network device specified in one of the entries of the tree list and includes an address for the network device. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A router that is interconnected to a source end station having a memory, comprising:
-
means for maintaining a multicast distribution tree for a multicast group in the memory, the multicast distribution tree specifically identifying a path extending from the router that is interconnected to the source end station to a destination end station; means for receiving a multicast data packet including a multicast group number that corresponds to the multicast group; means for encapsulating the received multicast data packet in a unicast data packet having a header; and means for writing a tree list having one or more entries and an address list having one or more entries into the header of the encapsulating unicast data packet, wherein the entries of the tree list are encoded according to a depth encoding scheme where the entries of the tree list are arranged in an order from parent to child and each of the entries of the tree list describes the depth of the network device in the multicast distribution tree, and wherein each of the entries of the address list corresponds to the network device specified in one of the entries of the tree list and includes an address for the network device.
-
Specification