IP Library Granted Patent US 9,311,073
Granted Patent B2
US 9,311,073 · App. 13/972,199 · Granted Apr 12, 2016

Upgrading nodes using leader node appointment

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,311,073
App. No.
13/972,199
Granted
Apr 12, 2016
Kind
B2
Abstract

Method, apparatus and computer program product for use in the upgrade of nodes in a group of nodes in a data communications network. One or more nodes in the group to which a given upgrade is yet to be applied are identified. A given node is selected from amongst the identified one or more nodes to which the given upgrade is yet to be applied as the leader node for the group. Data is transmitted indicating the selection of the given node as the leader node. The upgrade proceeds with the given node as the leader node.

Claims (37)

1. A method for use in the upgrade of nodes in a group of nodes in a data communications network, wherein the nodes in the group of nodes comprise telephony equipment, the method comprising:

selecting a coordinator node from the group of nodes based at least in part on the selected coordinator node having one or more properties that makes the selected coordinator node more suitable for being the coordinator node than the one or more other nodes in the group of nodes, wherein the coordinator node is responsible for selecting a leader node for the group of nodes on behalf of the group;

receiving data, by the coordinator node, relating to at least one node in the group, wherein the received data comprises one or more predetermined parameters indicating that a given upgrade has already been applied to the at least one node in the group or the given upgrade is yet to be applied to the at least one node in the group;

identifying, by the coordinator node, one or more nodes in the group to which the given upgrade is yet to be applied, wherein the identification of the one or more nodes to which the given upgrade is yet to be applied is based at least in part on the received data;

identifying, by the coordinator node, one or more further nodes to which the given upgrade has already been applied, wherein the identification of the one or more nodes to which the given upgrade has already been applied is based at least in part on the received data;

selecting a given node, by the coordinator node, from amongst the identified one or more nodes to which the given upgrade is yet to be applied as the leader node for the group, wherein the identified one or more further nodes to which the given upgrade has already been applied are disregarded for the purposes of said selecting the given node as the leader node for the group; and

transmitting data, by the coordinator node, indicating that the given node has been selected as the leader node, wherein the upgrade proceeds with the given node as the leader node.

2. A method according to claim 1 , comprising receiving the data in response to the given upgrade having been applied to one or more nodes in the group.

3. A method according to claim 1 , comprising receiving the data in response to one or more changes to membership of the group.

4. A method according to claim 1 , wherein the given upgrade comprises one or more of:

a software upgrade,

a hardware upgrade,

a change of data format, and

a change of data protocol.

5. A method according to claim 1 , wherein data communicated by a node to which the given upgrade is yet to be applied can be understood by a node to which the given upgrade has been applied.

6. A method according to claim 5 , wherein data communicated by a node to which the given upgrade has been applied cannot be understood by a node to which the given upgrade has not yet been applied.

7. A method according to claim 1 , wherein data communicated by a node to which the given upgrade has been applied cannot be understood by a node to which the given upgrade has not yet been applied.

8. A method according to claim 1 , comprising deciding whether a different node in the group of nodes should be selected as the leader node based at least in part on detecting one or more predetermined triggers.

9. A method according to claim 8 , wherein the one or more detected predetermined triggers comprise the given node no longer being a member of the group of nodes.

10. A method according to claim 8 , wherein the one or more detected predetermined triggers comprise failure of the given node.

11. A method according to claim 8 , comprising maintaining the selection of the given node as the leader node at least temporarily for a given time period after detection of the one or more predetermined triggers.

12. A method according to claim 8 , comprising, in response to detecting the one or more predetermined triggers, selecting a node to which the given upgrade has already been applied as the leader node if the given node was the last remaining node to which the given upgrade had not yet been applied.

13. A method according to claim 12 , comprising, after selecting the node to which the given upgrade has already been applied as the leader node, excluding the given node from being a member of the group of nodes until the given upgrade has been applied to the given node.

14. Apparatus for use in the upgrade of nodes in a group of nodes in a data communications network, wherein the nodes in the group of nodes comprise telephony equipment, the apparatus comprising at least one processor and computer program code stored in at least one memory, the at least one memory and the computer program code being configured to, with the at least one processor, cause the apparatus to:

select a coordinator node from the group of nodes based at least in part on the selected coordinator node having one or more properties that makes the selected coordinator node more suitable for being the coordinator node than the one or more other nodes in the group of nodes, wherein the coordinator node is responsible for selecting a leader node for the group of nodes on behalf of the group;

receive data, by the coordinator node, relating to at least one node in the group, wherein the received data comprises one or more predetermined parameters indicating whether a given upgrade has already been applied to the at least one node in the group or the given upgrade is yet to be applied to the at least one node in the group;

identify, by the coordinator node, one or more nodes in the group to which the given upgrade is yet to be applied, wherein the identification of the one or more nodes to which the given upgrade is yet to be applied is based at least in part on the received data;

identify, by the coordinator node, one or more further nodes to which the given upgrade has already been applied, wherein the identification of the one or more nodes to which the given upgrade has already been applied is based at least in part on the received data;

select a given node, by the coordinator node, from amongst the identified one or more nodes to which the given upgrade is yet to be applied as the leader node for the group, wherein the identified one or more further nodes to which the given upgrade has already been applied are disregarded for the purposes of said selecting the given node as the leader node for the group; and

transmit data, by the coordinator node, indicating that the given node has been selected as the leader node, wherein the upgrade proceeds with the given node as the leader node.

15. A computer program product comprising a non-transitory computer-readable storage medium having computer readable instructions stored thereon, the computer readable instructions being executable by a computerized device to cause the computerized device to perform a method for use in the upgrade of nodes in a group of nodes in a data communications network, wherein the nodes in the group of nodes comprise telephony equipment, the method comprising:

selecting a coordinator node from the group of nodes based at least in part on the selected coordinator node having one or more properties that makes the selected coordinator node more suitable for being the coordinator node than the one or more other nodes in the group of nodes, wherein the coordinator node is responsible for selecting a leader node for the group of nodes on behalf of the group;

receiving data, by the coordinator node, relating to at least one node in the group, wherein the received data comprises one or more predetermined parameters indicating whether a given upgrade has already been applied to the at least one node in the group or the given upgrade is yet to be applied to the at least one node in the group;

identifying, by the coordinator node, one or more nodes in the group to which the given upgrade is yet to be applied, wherein the identification of the one or more nodes to which the given upgrade is yet to be applied is based at least in part on the received data;

identifying, by the coordinator node, one or more further nodes to which the given upgrade has already been applied, wherein the identification of the one or more nodes to which the given upgrade has already been applied is based at least in part on the received data;

selecting a given node, by the coordinator node, from amongst the identified one or more nodes to which the given upgrade is yet to be applied as the leader node for the group, wherein the identified one or more further nodes to which the given upgrade has already been applied are disregarded for the purposes of said selecting the given node as the leader node for the group; and

transmitting data, by the coordinator node, indicating that the given node has been selected as the leader node, wherein the upgrade proceeds with the given node as the leader node.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2026
From: MICROSOFT TECHNOLOGY LICENSING, LLC
To: ALIANZA, INC.
Reel/Frame 075645/0892 →
CHANGE OF NAME Recorded May 13, 2026
From: ALIANZA, INC.
To: ALIANZA, LLC
Reel/Frame 075646/0037 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2026
From: METASWITCH NETWORKS LTD.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 075578/0155 →
SECURITY INTEREST Recorded May 6, 2025
From: ALIANZA, INC.; METASWITCH NETWORKS LTD
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 071191/0228 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2015
From: HOTHAM, DAVID; ROWLAND, JON
To: METASWITCH NETWORKS LTD
Reel/Frame 036926/0633 →