EP1515477B1

System and method for managing multicast group membership

Abstract

This record has no abstract on file.

EP1515477B1, drawing sheet 1
Sheet 1 of 3

Term

Term ended

Expired 2 September 2024, 2.1 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

10 claims: 4 independent, 6 dependent

  1. 1
    A computer-implemented method of adding a new node to a network multicast group, the new node having a specified group membership status, wherein members of a corresponding routing tree are configured to route multicast messages among members of the group, the method comprising:selecting a minimum spanning tree of the network (200);selecting the new node as the current node (200);examining the routing tree membership status of nodes that are linked to the current node by links included in the minimum spanning tree (204);until said examining is halted, selecting a peer node of the current node as the current node and repeating said examining, wherein a peer node is a node connected to the current node by one hop (206);halting the examining when the selected node is examined if: (214) the selected node is a Full member of the routing tree, that is a node that receives and forwards messages;or (216) the selected node is a SendOnly member of the routing tree, that is a node that receives and forwards messages from nodes that are SendOnly members of the routing tree, and the specified group membership status of the new node is SendOnly, that is a node that initiates, but does not consume messages, wherein the selected node that halts the examining is referred to as the final node;for each node from the new node to the final node, setting the routing tree membership status of the node equal to the specified group membership status of the new node (222);and turning on or off ports of the nodes linked to the new node dependent on the specified group membership status of the new node (222).
  2. 5
    A computer-implemented method of removing a first node from a network multicast group, wherein members of a corresponding routing tree are configured to route multicast messages among members of the group, the method comprising:queuing (300) the first node in a queue;until (302) the queue is empty, repeating the following, in order: (a) removing (304) the most recently queued node to serve as the current node;(b) returning (306) to (a) if the group membership status of the current node is Full, that is a node that initiates and consumes messages;(c) identifying (308) a number of local ports of the current node that are on;(d) returning (310) to (a) if the number is greater than one;(e) if (312) the number of local ports that are on is equal to zero: (e1) for each peer node having a local port to the current node on, turning off (314) said peer node's local port to the current node and adding said peer node to the queue;and (e2) setting (316) the routing tree membership status of the current node to None, that is a node that does not receive or forward messages;and (f) if (316) the number of local ports that are on is equal to one: (f1) on a sole peer node coupled to the one local port, turning off (318) the sole peer node's local port to the current node if the sole peer's local port to the current node is on;(f2) adding (318) the sole peer node to the queue;(f3) if (320) zero peer nodes have local ports to the current node on and the group membership status of the current node is None, that is a node that does not initiate or consume messages: turning off (322) the one local port of the current node that is on;and setting (322) the routing tree membership status of the current node to None;and (f4) otherwise, setting (324) the routing tree membership status of the current node to SendOnly, that is a node that receives and forwards messages from nodes that are SendOnly members of the routing tree.
  3. 7
    A system for managing membership in a multicast group and a corresponding routing tree for routing multicast messages within the multicast group, the system being configured to provide the method of any one of claims 1 to 6, the system comprising:a network node coupling the apparatus to a network;a subnet administrator (114) configured to receive requests to change the membership of nodes of the multicast group;a subnet manager (112) configured to update network nodes' routing tables when the routing tree is modified in response to a change in membership of the multicast group;and a subnet management coordinator (116) configured to: make a non-member into a Full or SendOnly member of the multicast group;make a Full or SendOnly member into a non-member of the multicast group;and update the membership of the routing tree in response to a change in the membership of the multicast group.
  4. 9
    A computer program or programs comprising instructions that, when executed by a computer, cause the computer to perform the method of any one of claims 1 to 6.