Self-configuring communication network
First Claim
1. A method for configuring a tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a second boundary device via N intermediate devices, where N is a positive integer, the method comprising:
- (a) on a first boundary device, generating and forwarding to a first intermediate device a first tag allocation request including a logical group identifier;
(b) if N is greater than one, on an (N−
M)th intermediate device, in response to an (N−
M)th tag allocation request, generating and forwarding to an (N−
M+1)th intermediate device an (N−
M+1)th tag allocation request including said logical group identifier, where M is initially equal to N−
1;
(c) if N is greater than one, repeating step (b) for each integral value of M between N−
1 and zero, excluding N−
1 and zero; and
(d) on an Nth intermediate device, in response to an Nth tag allocation request, generating and forwarding to a second boundary device an (N+1)th tag allocation request including said logical group identifier, wherein tag values associated with said logical group identifier are allocated and transmitted between said devices in relation to number of tag allocation requests; and
wherein said tag values are applied to establish a tagged virtual connection for transmitting end-user messages destined to one or more of a plurality of destination stations belonging to a logical group identified by said logical group identifier.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods for configuring, maintaining connectivity in and utilizing an ATM network. Neighboring switches share topology information and enable links to neighboring switches for tag switching. Point-to-point tagged virtual connections are established between switches on the best and next-best paths learned from topology information. Point-to-multipoint tagged virtual connections are established on the spanning tree path. Multiple tag allocation requests are included in a single message to preserve bandwidth. Next-best paths are established to reduce latency in event of link failure. Forwarding operations may be performed in hardware to reduce latency during message forwarding.
-
Citations
42 Claims
-
1. A method for configuring a tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a second boundary device via N intermediate devices, where N is a positive integer, the method comprising:
-
(a) on a first boundary device, generating and forwarding to a first intermediate device a first tag allocation request including a logical group identifier;
(b) if N is greater than one, on an (N−
M)th intermediate device, in response to an (N−
M)th tag allocation request, generating and forwarding to an (N−
M+1)th intermediate device an (N−
M+1)th tag allocation request including said logical group identifier, where M is initially equal to N−
1;
(c) if N is greater than one, repeating step (b) for each integral value of M between N−
1 and zero, excluding N−
1 and zero; and
(d) on an Nth intermediate device, in response to an Nth tag allocation request, generating and forwarding to a second boundary device an (N+1)th tag allocation request including said logical group identifier, wherein tag values associated with said logical group identifier are allocated and transmitted between said devices in relation to number of tag allocation requests; and
wherein said tag values are applied to establish a tagged virtual connection for transmitting end-user messages destined to one or more of a plurality of destination stations belonging to a logical group identified by said logical group identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for configuring a tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a second boundary device via N intermediate devices, where N is a positive integer, the method comprising:
-
(a) on each of a first boundary device and N intermediate devices, determining an nth best path to a second boundary device for a plurality of logical groups, where n is a positive integer;
(b) on said first boundary device, generating and forwarding to a first intermediate device on the nth best path for a first logical group from said first boundary device to said second boundary device a first tag allocation request;
(c) if N is greater than one, on an (N−
M)th intermediate device, in response to an (N−
M)th tag allocation request, generating and forwarding to an (N−
M+1)th intermediate device on the nth best path for said first logical group from said (N−
M)th intermediate device to said second boundary device an (N−
M+1)th tag allocation request, where M is initially equal to N−
1;
(d) if N is greater than one, repeating step (c) for each integral value of M between N−
1 and zero, excluding N−
1 and zero; and
(e) on an Nth intermediate device, in response to an Nth tag allocation request, generating and forwarding to said second boundary device on the nth best path for said first logical group from said Nth intermediate device to said second boundary device, an (N+1)th tag allocation request. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A method for configuring a point-to-multipoint tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a set of second boundary devices on a plurality of different paths, wherein each path has N intermediate devices and wherein N is an integer whose value may differ between paths, the method comprising:
-
(a) on a first boundary device, generating and forwarding to a set of intermediate devices on a set of paths between said first boundary device and a set of second boundary devices a set of tag allocation requests including a logical group identifier;
(b) for each path in said set for which N is greater than one, on an (N−
M)th intermediate device, in response to an (N−
M)th tag allocation request, generating and forwarding to an (N−
M)th intermediate device an (N−
M+1)th tag allocation request including a logical group identifier, where M is initially equal to N−
1;
(c) for each path in said ser for which N is greater than one, repeating step (b) for each integral value of M between N−
1 and zero, excluding N−
1 and zero; and
(d) for each path in said set, on an Nth intermediate device, in response to an Nth tag allocation request, generating and forwarding to said second boundary device an (N+1)th tag allocation request and said logical group identifier, wherein tag values associated with said logical group identifier are allocated and transmitted between said devices in relation to number of tag allocation requests; and
wherein said tag values are applkied to establish a tagged virtual connection for transmitting end-user messages destined to a plurality of destination stations belonging to a logical group identified by said logical group identifier. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
-
25. Method for forwarding an end-user message on a tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a second boundary device via N intermediate devices, where N is a positive integer, the method comprising:
-
(a) on a first boundary device, receiving an end-user message;
(b) on said first boundary device, associating said end-user message with a virtual network;
(c) on said first boundary device, determining a first tag value for said end-user message in accordance with said virtual network;
(d) on said first boundary device, encoding said end-user message with said first tag value and forwarding said end-user message to a first intermediate device;
(e) if N is greater than one, on an (N−
M)th intermediate device, in response to receiving said end-user message encoded with an (N−
M)th tag value, encoding said end-user message with an (N−
M+1)th tag value and forwarding said end-user message to an (N−
M+1)th intermediate device, where M is initially equal to N×
1;
(f) if N is greater than one, repeating step (e) for each integral value of M between N−
1 and zero, excluding N−
1 and zero; and
(g) on an Nth intermediate device, in response to receiving said end-user message encoded with an Nth tag value, encoding said end-user message with an (N+1)th tag value and forwarding said end-user message to a second boundary device. - View Dependent Claims (26, 27)
-
-
28. A method for forwarding an end-user message on a tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a second boundary device via one or more intermediate devices, the method comprising:
-
(a) receiving an end-user message on a first boundary device;
(b) determining a tag value for said end-user message in accordance with information regarding the best path for a logical group from said first boundary device to a second boundary device under present network conditions, wherein the determination is made from among a plurality of different tag values associated with different paths for said logical group from said first boundary device to said second boundary device;
(c) encoding said end-user message with said determined tag value; and
(d) forwarding said end-user message from said first boundary device to a first intermediate device. - View Dependent Claims (29, 30, 31)
-
-
32. A method for configuring a tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a second boundary device via N intermediate devices, where N is a positive integer, the method comprising:
-
(a) exchanging first tag allocation information including a first tag value and a logical group identifier between a first boundary device and a first intermediate device;
(b) if N is greater than one, in response to the exchange of (N−
M)th tag allocation information, exchanging (N−
M+1)th tag allocation information including an (N−
M+1)th tag value and said logical group identifier between an (N−
M)th intermediate device and an (N−
M+1)th intermediate device, where M is initially equal to N−
1;
(c) if N is greater than one, repeating step (b) for each integral value of M between N−
1 and zero, excluding N−
1 and zero; and
(d) in response to the exchange of Nth tag allocation information, exchanging (N+1)th tag allocation information including an (N+1)th tag value and said logical group identifier between an Nth intermediate device and a second boundary device, wherein tag values associated with said logical group identifier are allocated and transmitted between said devices in relation to number of tag allocation requests; and
wherein said tag values are applied to establish a tagged virtual connection for transmitting end-user messages destined to one or more of a plurality of destination stations belonging to a logical group identified by said logical group identifier. - View Dependent Claims (33, 34)
-
-
35. A method for configuring a tagged virtual connection in a communication network, said virtual connection interconnecting a first boundary device with a second boundary device via N intermediate devices, where N is a positive integer, the method comprising:
-
(a) on each of a first boundary device, determining an nth best path to a second boundary device for a plurality of logical groups, where n is a positive integer;
(b) on said first boundary device, generating and forwarding to a first intermediate device on the nth best path for a first logical group a first tag allocation request;
(c) if N is greater than one, on an (N−
M)th intermediate device, in response to an (N−
M)th tag allocation request, generating and forwarding to an (N−
M+1)th intermediate device on the nth best path for said first logical group, an (N−
M+1)th tag allocation request, where M is initially equal to N−
1;
(d) if N is greater than one, repeating step (c) for each integral value of M between N−
1 and zero, excluding N−
1 and zero; and
(e) on an Nth intermediate device, in response to an Nth tag allocation request, generating and forwarding to said second boundary device on the nth best path for said first logical group, an (N+1)th tag allocation request. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42)
-
Specification