US2020358697A1PendingUtilityA1

Deadlock-Free Traffic Rerouting in Software-Defined Networking Networks

54
Assignee: AT & T IP I LPPriority: Dec 18, 2017Filed: Jul 27, 2020Published: Nov 12, 2020
Est. expiryDec 18, 2037(~11.4 yrs left)· nominal 20-yr term from priority
H04L 41/0896H04L 45/22H04L 45/28H04L 47/2441H04L 45/42H04L 47/122H04L 45/56H04L 45/50H04L 45/38H04L 45/64H04L 41/145H04L 47/11
54
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Concepts and technologies disclosed herein are directed to deadlock-free traffic rerouting in software-defined networking (“SDN”) networks. According to one aspect of the concepts and technologies disclosed herein, a centralized SDN controller can determine that a packet flow along a path within at least a portion of a network is to be rerouted from the path to a new path. The centralized SDN controller can initiate a reroute of the packet flow to the new path. The centralized SDN controller can request a bandwidth for the new path. The bandwidth can be determined such that bandwidth oversubscription on the new path is avoided. In response to the packet flow settling on the new path, the centralized SDN controller can adjust a requested bandwidth of the packet flow to a desired value to complete the reroute of the packet flow from the path to the new path.

Claims

exact text as granted — not AI-modified
1 . A software-defined network comprising:
 a plurality of network nodes that, in various combinations, form a plurality of network links, each of which has a specific bandwidth capacity; and   a software-defined networking controller comprising
 a processor, and 
 memory having instructions stored thereon that, when executed by the processor, cause the processor to perform operations comprising
 determining that a portion of the plurality of network links is in a congested state, wherein the congested state comprises the specific bandwidth capacity of the portion of the plurality of network links being exceeded by a bandwidth demand of a path, 
 determining, based upon the congested state, that the path is to be rerouted to a new path, 
 determining that the path cannot be rerouted to the new path due to a deadlock condition, 
 initiating, due to the deadlock condition, a reroute of the path to the new path by requesting a requested bandwidth comprising a bandwidth value of the bandwidth demand of the path, and 
 completing the reroute by adjusting the requested bandwidth from the bandwidth value to a desired bandwidth value. 
 
   
     
     
         2 . The software-defined network of  claim 1 , wherein the operations further comprise:
 determining that a further portion of the plurality of network links is in the congested state, wherein the congested state further comprises the specific bandwidth capacity of the further portion of the plurality of network links being exceeded by a further bandwidth demand of a further path;   determining, based upon the congested state, that the further path is to be rerouted to a further new path;   determining that the further path cannot be rerouted to the further new path due to the deadlock condition;   initiating, due to the deadlock condition, a further reroute of the further path to the further new path by requesting a further requested bandwidth comprising a further bandwidth value of the further bandwidth demand of the further path; and   completing the further reroute by adjusting the requested bandwidth from the bandwidth value to a desired bandwidth value.   
     
     
         3 . The software-defined network of  claim 2 , wherein the operations for initiating the reroute, completing the reroute, initiating the further reroute, and completing the further reroute are based upon at least one routing model. 
     
     
         4 . The software-defined network of  claim 3 , wherein initiating the reroute, completing the reroute, initiating the further reroute, and completing the further reroute each comprises generating commands directed to at least one network node of the plurality of network nodes, and sending the commands to the at least one network node. 
     
     
         5 . The software-defined network of  claim 2 , wherein the bandwidth value comprises a proportionally small bandwidth, and wherein the further bandwidth value comprises a further proportionally small bandwidth. 
     
     
         6 . The software-defined network of  claim 2 , wherein the further bandwidth value comprises a further percentage of a total bandwidth, and wherein the further desired bandwidth value comprises the total bandwidth. 
     
     
         7 . The software-defined network of  claim 1 , wherein the bandwidth value comprises a percentage of a total bandwidth, and wherein the desired bandwidth value comprises the total bandwidth. 
     
     
         8 . A computer-readable storage medium comprising computer-executable instructions that, when executed by a processor, causes the processor to perform operations comprising:
 determining that a portion of a plurality of network links is in a congested state, wherein the congested state comprises a specific bandwidth capacity of the portion of the plurality of network links being exceeded by a bandwidth demand of a path;   determining, based upon the congested state, that the path is to be rerouted to a new path;   determining that the path cannot be rerouted to the new path due to a deadlock condition;   initiating, due to the deadlock condition, a reroute of the path to the new path by requesting a requested bandwidth comprising a bandwidth value of the bandwidth demand of the path; and   completing the reroute by adjusting the requested bandwidth from the bandwidth value to a desired bandwidth value.   
     
     
         9 . The computer-readable storage medium of  claim 8 , wherein the operations further comprise:
 determining that a further portion of the plurality of network links is in the congested state, wherein the congested state further comprises the specific bandwidth capacity of the further portion of the plurality of network links being exceeded by a further bandwidth demand of a further path;   determining, based upon the congested state, that the further path is to be rerouted to a further new path;   determining that the further path cannot be rerouted to the further new path due to the deadlock condition;   initiating, due to the deadlock condition, a further reroute of the further path to the further new path by requesting a further requested bandwidth comprising a further bandwidth value of the further bandwidth demand of the further path; and   completing the further reroute by adjusting the requested bandwidth from the bandwidth value to a desired bandwidth value.   
     
     
         10 . The computer-readable storage medium of  claim 9 , wherein the operations for initiating the reroute, completing the reroute, initiating the further reroute, and completing the further reroute are based upon at least one routing model. 
     
     
         11 . The computer-readable storage medium of  claim 10 , wherein initiating the reroute, completing the reroute, initiating the further reroute, and completing the further reroute each comprises generating commands directed to at least one network node of the plurality of network nodes, and sending the commands to the at least one network node. 
     
     
         12 . The computer-readable storage medium of  claim 9 , wherein the bandwidth value comprises a proportionally small bandwidth, and wherein the further bandwidth value comprises a further proportionally small bandwidth. 
     
     
         13 . The computer-readable storage medium of  claim 9 , wherein the further bandwidth value comprises a further percentage of a total bandwidth, and wherein the further desired bandwidth value comprises the total bandwidth. 
     
     
         14 . The computer-readable storage medium of  claim 8 , wherein the bandwidth value comprises a percentage of a total bandwidth, and wherein the desired bandwidth value comprises the total bandwidth. 
     
     
         15 . A method comprising:
 determining, by a software-defined networking controller, that a portion of the plurality of network links is in a congested state, wherein the congested state comprises a specific bandwidth capacity of the portion of the plurality of network links being exceeded by a bandwidth demand of a path;   determining, by the software-defined networking controller, based upon the congested state, that the path is to be rerouted to a new path;   determining, by the software-defined networking controller, that the path cannot be rerouted to the new path due to a deadlock condition;   initiating, by the software-defined networking controller, due to the deadlock condition, a reroute of the path to the new path by requesting a requested bandwidth comprising a bandwidth value of the bandwidth demand of the path; and   completing, by the software-defined networking controller, the reroute by adjusting the requested bandwidth from the bandwidth value to a desired bandwidth value.   
     
     
         16 . The method of  claim 15 , comprising:
 determining that a further portion of the plurality of network links is in the congested state, wherein the congested state further comprises the specific bandwidth capacity of the further portion of the plurality of network links being exceeded by a further bandwidth demand of a further path;   determining, based upon the congested state, that the further path is to be rerouted to a further new path;   determining that the further path cannot be rerouted to the further new path due to the deadlock condition;   initiating, due to the deadlock condition, a further reroute of the further path to the further new path by requesting a further requested bandwidth comprising a further bandwidth value of the further bandwidth demand of the further path; and   completing the further reroute by adjusting the requested bandwidth from the bandwidth value to a desired bandwidth value.   
     
     
         17 . The method of  claim 16 , wherein initiating the reroute, completing the reroute, initiating the further reroute, and completing the further reroute are based upon at least one routing model. 
     
     
         18 . The method of  claim 16 , wherein initiating the reroute, completing the reroute, initiating the further reroute, and completing the further reroute each comprises generating commands directed to at least one network node of the plurality of network nodes, and sending the commands to the at least one network node. 
     
     
         19 . The method of  claim 15 , wherein the bandwidth value comprises a proportionally small bandwidth. 
     
     
         20 . The method of  claim 15 , wherein the further bandwidth value comprises a proportionally small bandwidth.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.