Patent ID: 7609694

Claim:
A multicast communications system for multicasting packets through a multicast tree on a network, the system comprising: (a) a transmitting device capable of moving from a first access point to a second access point in the network, the transmitting device comprising: a multicast transmitter that transmits packets while adding a sequence number to each packet to be multicast, and a trigger data generator that produces trigger data and sends the trigger data together with a location registration request when the transmitting device has moved during a multicast session, the trigger data specifying a trigger condition that initiates a change from an initial multicast tree to a new multicast tree, the trigger data including the sequence number of a particular packet as the trigger condition; (b) a network control server that handles the location registration request from the transmitting device and manages the multicast tree, the network control server comprising: a trigger data distributor that receives the trigger data from the transmitting device and forwards the trigger data to the second access point where the transmitting device is visiting, as well as sending the trigger data in encapsulated form to the first access point to which the transmitting device has previously attached; (c) a first packet routing device at the second access point, comprising: a buffer that stores packets transmitted by the transmitting device during a period between reception of the trigger data and establishment of a new multicast tree and outputs the stored packets when the new multicast tree becomes ready; (d) a second packet routing device at the first access point, comprising: a decapsulator that decapsulates the encapsulated trigger data received and sends the decapsulated trigger data to the initial multicast tree; and (e) a third packet routing device on the initial multicast tree, comprising: an update processor that finds the sequence number specified in the trigger data, maintains the initial multicast tree until a packet having the specified sequence number is received and forwarded, and replaces the initial multicast tree with the new multicast tree afterwards.