Self-scaling network
AssigneeInternational Business Machines Corporation
InventorVenkata Guruprasad
Life of this patent
Estimating the term…
Abstract
According to an embodiment of the present invention, a method is provided for automatic aggregation of a plurality of virtual paths emanating from a first switch. The method includes automatically discovering and identifying portions of the virtual paths that run parallel to one another, e.g., through the same set of switches up to a common terminating switch at which the paths diverge or terminate, as a candidate path set for aggregation, constructing a tunnel path along this set of paths all the way between the first switch and the terminating switch, and aggregating the parallel portions identified by the path set into the tunnel.
Claims19
A method for the automatic aggregation of a plurality of virtual paths emanating from a first switch, comprising the steps of:
- discovering, automatically, portions of the virtual paths that run parallel to one another;
- constructing a first tunnel along parallel virtual paths between the first switch and a terminating switch;
- and
- aggregating the parallel virtual paths into the first tunnel,
- wherein the step of discovering further comprises,
- selecting, at the first switch, an initial set of paths emanating from the first switch to a common second switch,
- issuing an association signal at the first switch to the second switch, including a list of indices of the paths included in the initial set of paths,
- propagating the association signal at the second switch and each of zero or more successive switches commonly traversed by the set of paths until at least a specified minimum number of paths diverge from the initial set of paths, and
- identifying a remainder of the set of paths as a candidate set and a final switch reached as the terminating switch for the set of paths.
A method for automatic release of aggregated paths from a tunnel path upon determining at a tunnel entry switch that each intermediate switch traversed by the tunnel path has path table space for accommodating each of the aggregated paths individually, comprising the steps of:
- initiating at the tunnel entry switch a release signal including a list of outgoing indices of virtual paths that are initially redirected to the tunnel path at the entry switch;
- propagating the release signal successively to each switch along the tunnel path;
- allocating at each of the successive switches a path table entry for each index listed in the release signal and setting the outgoing index and next switch for that entry with the listed index and the next switch on the tunnel path, respectively;
- returning an acknowledgment signal to a preceding switch from which the release signal was received, the acknowledgment signal comprising the received list together with the list of indices of the allocated path table entries in the same order;
- and
- replacing, at the preceding switch, the outgoing index for each path table entry identified by a first list in the received acknowledgment with the corresponding index from a second list in the acknowledgment signal.
A method for automatic release of aggregated paths from a tunnel path, upon determining at a tunnel exit switch that each intermediate switch traversed by the tunnel path has path table space to accommodate each of the aggregated paths individually, comprising the steps of:
- initiating at the tunnel exit switch a reverse release signal comprising a list of incoming path indices for virtual paths emerging from the tunnel;
- propagating the reverse release signal successively to each preceding switch along the tunnel path;
- and
- allocating at each of the preceding switches except the tunnel entry switch a path table entry for each index listed in the reverse release signal and setting the outgoing index and next switch for that entry with the listed index and the next switch on the tunnel path, respectively.
A method for the automatic aggregation of a plurality of virtual paths emanating from a first switch, comprising the steps of:
- discovering, automatically, portions of the virtual paths that run parallel to one another;
- constructing a first tunnel along parallel virtual paths between the first switch and a terminating switch;
- and
- aggregating the parallel virtual paths into the first tunnel, wherein the step of constructing the first tunnel further comprises,
- allocating a path table entry for the first tunnel at the terminating switch,
- composing, at the terminating switch, an aggregation signal including a final forward hop count and a list of path indices received in an association signal, a list of outgoing path indices corresponding to the list of path indices, and a reverse hop count initialized to zero, and
- propagating the aggregating signal in reverse through each preceding switch in succession until reaching the first switch.
Dependencies are inferred from the claim text.