Automatically upgrading a license to reduce traffic interruptions within a network

IN603712BActive Publication Date: 2026-09-23CIENA CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
IN202011028793
Authority / Receiving Office
IN · IN
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-07-07
Publication Date
2026-09-23
Estimated Expiration
2040-07-07

AI Technical Summary

Technical Problem

Conventional network licensing systems fail to automatically restore traffic with minimal human intervention when alternative paths exceed the reach constraints of existing licenses, leading to traffic interruptions and low Quality of Experience for users.

Method used

The system automatically upgrades the license from a restrictive to a less-restrictive agreement, allowing communication paths to adapt dynamically by analyzing communication paths and upgrading licenses in real-time to accommodate changes, ensuring uninterrupted traffic flow without manual operator intervention.

Benefits of technology

This solution mitigates the risk of traffic interruption by enabling real-time license upgrades, allowing communication to continue uninterrupted and improving network resilience by automatically adapting to changes in communication paths, thereby enhancing user experience and reducing the need for manual operations.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

Systems and methods for automatically upgrading a license in a communication network are provided. In one embodiment, a method includes analyzing (72) a communication path (16) between a first node (12A) and a second node (12B) of a communication system (10), analyzing (74) a first license agreement having a first set of constraints regarding communication between the first and second nodes (12A, 12B), and, responsive to determining (76) that the communication path (16) is not allowable under the first set of constraints of the first license agreement, upgrading (78) the first license agreement to a second license agreement having a second set of constraints that are less-restrictive than the first set of constraints regarding communication between the first and second nodes (12A, 12B).
Need to check novelty before this filing date? Find Prior Art

Description

[0001] The present disclosure generally relates to networking systems and methods. Moreparticularly, the present disclosure relates to licenses having constraints for limiting the operatingcharacteristics of network elements and further relates to processes for automatically upgradingthe license to a higher class in a control plane in order to maintain traffic resiliency, such as whena fault is detected in a primary path.BACKGROUND

[0002] Licenses are typically used in a communication system to allow nodes to communicatewithin certain constraints. For example, one set of constraints may include a maximum optical“reach” (i.e., the maximum distance that signals may be transmitted along a communication pathbetween neighboring nodes). Although two nodes may usually communicate over a primary path,occasionally this primary path may become unavailable (e.g., due to a fiber break or other fault inthe primary path) and the nodes may attempt to restore communication along alternative routes.However, at times, these alternative routes may not meet the constraints already established forcommunication along the primary path with a current license.

[0003] In the event that a reach violation is detected, which may result in an alarm being sentto a network operator, the traffic may be blocked along all paths between the two nodes. Thus, ifa fault is detected on a primary path and all other alternative paths have a reach that extends beyondthe allowable reach constraints according to the current license, the network operator may thenneed to manually acquire a new license from a license server and manually change the reach ofeach modem after acquiring the new license with an extended reach. However, during the processof manually acquiring the new license, traffic is usually stopped between these nodes, which mayresult in a low Quality of Experience (QoE) for users. Another shortcoming of the conventionallicensing systems is that there are currently no provisions to have a shared pool of licenses forincreased traffic resiliency on the photonic layer for Subnetwork Connections (SNCs) in an opticalcontrol plane. Therefore, there is a need in the field of network licensing to improve theconventional systems to be able to restore traffic automatically with little or no human interactionand to overcome the other shortcomings of the conventional systems. Page 3 of 24BRIEF SUMMARY

[0004] The present disclosure is directed to systems, methods, and non-transitory computerreadable media for automatically upgrading a license that restricts certain transmissioncharacteristics associated with a transmission link or communication path between twoneighboring nodes or Network Elements (NEs). According to one embodiment, a network devicein communication with a license server includes a processing device and a memory deviceconfigured to store a computer program. The computer program includes instructions that, whenexecuted, cause the processing device to analyze a communication path between first and secondnodes of a communication system and analyze a first license agreement having a first set ofconstraints regarding communication between the first and second nodes. Furthermore, responsiveto determining that the communication path is not allowable under the first set of constraints ofthe first license agreement, the instructions further cause the processing device to upgrade the firstlicense agreement to a second license agreement having a second set of constraints that are lessrestrictive than the first set of constraints regarding communication between the first and secondnodes.

[0005] According to another embodiment of the present disclosure, a non-transitory computerreadable medium is configured to store computer logic having instructions that, when executed,cause one or more processing devices to perform certain functions. For example, the computerlogic causes the one or more processing devices to analyze a communication path between firstand second nodes of a communication system and analyze a first license agreement having a firstset of constraints regarding communication between the first and second nodes. Responsive todetermining that the communication path is not allowable under the first set of constraints of thefirst license agreement, the instructions further cause the one or more processing devices toupgrade the first license agreement to a second license agreement having a second set of constraintsthat are less-restrictive than the first set of constraints regarding communication between the firstand second nodes.

[0006] According to yet another embodiment, a method includes the steps of analyzing acommunication path between first and second nodes of a communication system and analyzing afirst license agreement having a first set of constraints regarding communication between the firstand second nodes. Responsive to determining that the communication path is not allowable under Page 4 of 24the first set of constraints of the first license agreement, the method also includes the step ofupgrading the first license agreement to a second license agreement having a second set ofconstraints that are less-restrictive than the first set of constraints regarding communicationbetween the first and second nodes.BRIEF DESCRIPTION OF THE DRAWINGS

[0007] The present disclosure is illustrated and described herein with reference to the variousdrawings. Like reference numbers are used to denote like components / steps, as appropriate.Unless otherwise noted, components depicted in the drawings are not necessarily drawn to scale.

[0008] FIG. 1 is a diagram illustrating a portion of a communication system, according tovarious embodiments of the present disclosure.

[0009] FIG. 2 is a block diagram illustrating one of the nodes of the communication system ofFIG. 1, according to various embodiments.

[0010] FIG. 3 is a table illustrating an example of specifications of different license classes,according to various embodiments.

[0011] FIG. 4 is a block diagram illustrating a computing system configured to automaticallyupgrade a license for transmitting signals with a network, according to various embodiments.

[0012] FIG. 5 is a flow diagram illustrating a generalized process for automatically upgradinga license within a communication system, according to various embodiments.

[0013] FIG. 6 is a flow diagram illustrating a process for operating the license server shownin FIG. 1, according to various embodiments.DETAILED DESCRIPTION

[0014] The present disclosure relates to systems and methods for establishing flexiblelicensing in a communication network. As such, a license can be upgraded as needed while thecommunication network is in operation to account for changes in the communication network.Therefore, by allowing the flexibility to automatically upgrade the license, the risk of traffic Page 5 of 24interruption can be mitigated. By upgrading in real time, traffic can continue uninterrupted withoutrequiring a network operator to manually conduct license upgrade procedures.

[0015] The systems and methods may include analyzing communication paths between pairsof nodes or Network Elements (NEs) within a communication system. The systems and methodsalso analyze a license that is currently in place for restricting the communication between the pairsof nodes or NEs. For example, one restriction may be a “reach” between the pair ofcommunicating elements. The term “reach” as described in the present disclosure may refer to adistance that signals optically travel between the pair of nodes along the length of a specificcommunication line or link. It may be noted that different communication links between the pairof nodes may have different reaches. In some cases, a primary path between a pair of nodes maybe able to meet the reach restrictions set by the current license.

[0016] For example, an optical modem, transceiver, or transponder includes physicalhardware, software, and firmware configured to enable the transmission and reception of opticallymodulated signals over fiber optic links. This device can include coherent modulation, ForwardError Correction (FEC), non-linear impairment compensation, dispersion compensation,configurable baud rate, etc. Of note, modules with this device may be deployed with physicalhardware that may support all configurations from short reach up to 1000’s of kilometers overterrestrial networks and up to over 10,000 kilometers in submarine networks. That is, an opticalmodule can include digital circuitry, such as Digital Signal Processors (DSPs), etc. capable of allof these and other functions, but limited by the applied license.

[0017] In the situation where an alternative path may be used, the present disclosure isconfigured to determine if that alternative path also meets the current license restrictions (e.g., ifthe alternative path has a length within the designated reach of the current license). If thealternative path is longer than the designated reach, then a new license for operating over thisalternative path may be required. The systems and methods of the present disclosure areconfigured to allow the communication system to automatically upgrade the license to a levelwhere the length of the alternative path is within the specific reach of the new license.

[0018] There has thus been outlined, rather broadly, the features of the present disclosure inorder that the detailed description may be better understood, and in order that the presentcontribution to the art may be better appreciated. There are additional features of the various Page 6 of 24embodiments that will be described herein. It is to be understood that the present disclosure is notlimited to the details of construction and to the arrangements of the components set forth in thefollowing description or illustrated in the drawings. Rather, the embodiments of the presentdisclosure may be capable of other implementations and configurations and may be practiced orcarried out in various ways. Also, it is to be understood that the phraseology and terminologyemployed are for the purpose of description and should not be regarded as limiting.

[0019] As such, those skilled in the art will appreciate that the inventive conception, uponwhich this disclosure is based, may readily be utilized as a basis for the designing of otherstructures, methods, and systems for carrying out the several purposes described in the presentdisclosure. Those skilled in the art will understand that the embodiments may include variousequivalent constructions insofar as they do not depart from the spirit and scope of the presentinvention. Additional aspects and advantages of the present disclosure will be apparent from thefollowing detailed description of exemplary embodiments which are illustrated in theaccompanying drawings.

[0020] FIG. 1 is a diagram illustrating an embodiment of a portion of a communication system10 that enables a pair of nodes 12 to communicate with each other by way of a network 14. Thenodes 12 may also be referred to as Network Elements (NEs), end points, originating / terminatingnodes, source / destination nodes, etc. It should be noted that the communication system 10 mayinclude any number of nodes interconnected by links in any suitable configuration (e.g., meshnetwork). However, for illustrative purposes, only two nodes are shown in FIG. 1. In thisembodiment, a first node 12A (Node A) is configured to communicate with a second node 12B(Node B) via a plurality of communication paths 16-1, 16-2, …, 16-n (e.g., optical links, fiberoptic cable, etc.) of the network 14. The network 14 may allow the transmission of data packets,optical packets, etc. for communicating in Layer 0 (i.e., the photonic layer) of the network 14. Forexample, Layer 0 may include a control plane for communicating signals related to control,management, maintenance, etc. In some embodiments, the network 14 may include optical SNCsmanaged by a control plane.

[0021] The communication paths 16 may be defined in a Designated Transit List (DTL) forspecifying which paths are used by the nodes 12A and 12B for communicating with each other.As known in the art, a DTL in a control plane is a list of nodes and links for a particular connection Page 7 of 24to traverse. For example, a first communication path 16-1 may be designated as a home path (orprimary path) and may be the normal path along which the nodes 12A and 12B communicate.There may also be one or more additional secondary paths (e.g., communication paths 16-2 – 16-n), whereby one of these secondary paths may be selected for use as an alternative path if a faultis detected along the primary communication path 16-1. The secondary communication paths 16-2 – 16-n may be referred to as restoration paths, recovery paths, protection paths, etc.

[0022] For example, compared to the other paths, the primary communication path 16-1 mayrepresent a path that has a smaller path distance (shorter length) between the nodes 12A and 12Band may also represent a path that has a lower cost for transmitting signals. Also, in particular,nodes 12A and 12B may operate within the limitations of a predefined license by communicatingalong the primary communication path 16-1. However, if a fault is detected along the primarycommunication path 16-1 and the nodes 12A and 12B switch to a secondary path (i.e., one ofcommunication paths 16-2 – 16-n), an issue may arise with respect to whether or not the newsecondary path is an acceptable path within the agreed-upon license limitations.

[0023] As an example, suppose that the nodes 12A and 12B agree to operate under a licensefor operation within a maximum reach of 1000km and the primary communication path 16-1 isless than 1000km and therefore within the license regulations. However, suppose that a fault isdetected on the primary communication path 16-1 and the nodes attempt to switch to a secondarypath (i.e., one of communication paths 16-2, … 16-n), but each of these secondary paths is greaterthan 1000km. In this case, switching to one of the secondary paths would not be acceptable underthe current license agreement. Thus, the embodiments of the present disclosure may allow anautomatic upgrade from the present license (i.e., up to a 1000km reach) to a new class of licensethat allows a greater reach (e.g., up to 2000km or higher).

[0024] A license server 18 may be connected to the nodes 12A, 12B for controlling and / orcoordinating license changes with the nodes 12A, 12B. In some embodiments, the license server18 may be connected to multiple nodes for controlling and / or coordinating license changes withany suitable pairs of nodes in direct communication with each other. The license server 18 maybe configured to initially set a starting license (or initial license agreement) for the pair of nodes12A, 12B to operate over the primary communication path 16-1.Page 8 of 24

[0025] During operation, however, a situation may arise when the nodes 12A, 12B decide toswitch to another path. Reasons for such a switch may include a) when a fault is detected on theprimary communication path 16-1, b) when new communication paths 16 are added to thecommunication system 10, c) when traffic on the primary communication path 16-1 is congested,and / or d) other reasons. Before switching to the alternative path, the license server 18 may beutilized to determine if the new path meets the license agreement already in place. If so, then theswitch can be made. Otherwise, the license server 18 may be configured to enable an upgrade ofthe license to a new license that allows communication along the secondary (alternative)communication path 16. For example, if the original license allows for a reach of up to 1000km,but the alternative path is about 1500km, then the license server 18 may automatically upgrade toa higher class license that allows communication for a longer reach (e.g., up to 2000km).

[0026] In addition to reach constraints, the license server 18 may be configured to track costsof operating over the various communication paths 16. The costs may be a monetary cost foroperating over the paths, a delay cost (e.g., latency) for operating over the paths, licensing costsfor upgrading to a higher level class of license, and / or other various costs. According to someembodiments, a network operator utilizing the license server 18 may be able to enter various preapproved costs that may acceptably be incurred while operation is in progress. Thus, if an upgradein a license is able to meet the additional cost criteria, then the upgrade can be performedautomatically.

[0027] According to one example, a “reach class” may be configured at nodes 12A, 12B for“Terrestrial Base” with “Terrestrial license class 1,” which may be defined as allowing operation“up to 1000 km.” For instance, this reach class is shown in the exemplary table 40 of FIG. 3. Inthis example, the capacity may be 200G. For the following, it may be assumed that the firstDesignated Transit List (DTL) cost in this case may be less than 1000km and a second DTL costmay be greater than 1000km, but less than 2000km. The DTL may include a complete path acrossa peer group. This example may have a number of prerequisites, including, for instance, that anetwork operator (e.g., administrator, user, planner, etc.) may have access to a profile map thatdefines reach, capacity, administrator weights, costs, etc. Another prerequisite may include anautomatic upgrade flag that is switched on to enable the automatic license upgrading feature onthe Layer 0 control plane or SNC. Yet another prerequisite may include transponders of the Page 9 of 24photonic system 24 configured with higher reach capability (e.g., based on licenses). Thefollowing highlighted points, among others, may result from this example:

[0028] 1) Layer 0 SNC may work fine initially on the first DTL (e.g., DTL1). The originating / terminating NEs gather the information regarding supported reach types on the nodes 12A, 12Bby any possible means (e.g., Service and Photonic Layer Interoperability (SPLI)) which is a termin a control plane used for adjacency discovery, transponder information discovery, and photonicsparameter provisioning) and the terminating NE (e.g., node 12B) passes on this information tooriginating node (e.g., node 12A) as a part of “connect” message for future path computationvalidations.

[0029] 2) On DTL1 failure, a newly suggested path computation logic checks if there areavailable protect paths for SNC meeting the configured cost / reach / capacity criteria. In thisexample, the initial path computation fails to return the protect paths since available mesh path(e.g., DTL2) is greater than 1000km.

[0030] 3) The originating NE queries the reach / cost profile map for configured line capacityto check if there are other paths available with higher cost that may require upgrade in reach licenseand do not violate the Optical Signal to Noise Ratio (OSNR) vs distance consideration for theconfigured capacity. In this example, the DTL2 is available which may be less than 2000km buthigher than 1000km. This distance may be good for 200G capacity but may require an upgrade tothe class 2 license (see FIG. 3) at both ends of the communication path 16 (e.g., at the nodes 12A,12B).

[0031] 4) The originating NE queries the shared license server 18 if there are licensesavailable for class 2 license upgrade on both nodes 12A, 12b. In this example, it is assumed thatthere are one or more available upgrades.

[0032] 5) The originating NE (e.g., node 12A) returns the new pre-computed path whichrequires license upgrade and conveys the same to the terminating node (e.g., node 12B) throughnotify message, which may be carried on a new path for upgrading license before “setup” isinitiated.

[0033] 6) On receiving a request from SPLI, the nodes 12A, 12B can automatically request thelicense server 18 to get upgraded licenses from a license pool (e.g., stored in database 60 shown Page 10 of 24in FIG. 4), after licenses are upgraded, based on notify feedback NE sets the SNC on the new route.With the upgraded license, the SNC traffic comes up fine in the new path with a higher reach.

[0034] 7) (optional) The SNC may store the base license and upgraded license information inits database (e.g., database 60), whenever the path is available and meets the base license criteria.This may occur during a next mesh event and may revert back to the base license configuration onthe nodes. At this point, the higher license may be released, and the system may revert back to thelicense server for other services to use.

[0035] FIG. 2 is a block diagram illustrating an embodiment of a node 12 (e.g., the first node12A or Node A) of the communication system 10 of FIG. 1. In this embodiment, the node 12includes a modulator / demodulator or modem 22 and a photonic system 24. The modem 22 maybe any gateway device that connects a local network to the network 14. The modem 22 includesa service channel interface 26 and a transceiver 28. The transceiver 28 is configured tocommunicate optical signals to one or more of the communication paths 16-1, 16-2, …, 16-n ofthe photonic system 24. The service channel interface 26 is configured to communicate with thelicense server 18 to upgrade one or more licenses (e.g., reach class license, etc.) as needed. Again,a license may need to be upgraded if there is a fault along the primary communication path 16-1and if any cost increase meets the pre-established cost criteria (if any). As described herein, thetransceiver 28 is referenced for the physical hardware enabling optical communication based onthe license. Those skilled in the art recognize other terms for transceiver include transponder,transmitter / receiver, etc., and each is contemplated herein. That is, the present disclosure can beused on any hardware device in the node 12 that operates based on a license, and the aspect ofdistance is merely presented for illustration purposes.

[0036] FIG. 3 is a table 40 illustrating an example of specifications of different license classes.Again, this use case illustrates reach as the example of the license class, but other aspects are alsocontemplated. In an embodiment, the modem 22 at each node 12 may be separated into one of twoclasses, that is, a “terrestrial” modem for communication over land and a “submarine” modem forcommunication under water. Each of these classes can then be separated into any number ofdifferent reach classes, whereby each reach class can be defined with respect to the allowable reach(i.e., distance along a communication path 16) for operating within that specific reach class. Thelicense needed for each reach class shows the maximum distance (in kilometers) that are supported Page 11 of 24by that license. According to other embodiments, various classes of license may pertain to otherconditions, such as costs (e.g., license upgrade cost, transmission costs, delay costs, etc.), channelbandwidth characteristics, and / or other signal transmission characteristics and communication linkcharacteristics.

[0037] FIG. 4 is a block diagram illustrating an embodiment of a computing system 50 thatmay be configured to operate in the communication system 10. The computing system 50 mayrepresent the license server 18 shown in FIG. 1, the modem 22 of one of the nodes 12, a networkdevice in communication with the license server 18, or another device within the communicationsystem 10. In the illustrated embodiment, the computing system 50 may be a digital computerthat, in terms of hardware architecture, generally includes a processing device 52, a memory device54, Input / Output (I / O) interfaces 56, an external interface 58, and a database 60. The memorydevice 54 may include a data store, database (e.g., database 60), or the like. It should beappreciated by those of ordinary skill in the art that FIG. 4 depicts the computing system 50 in asimplified manner, where practical embodiments may include additional components and suitablyconfigured processing logic to support known or conventional operating features that are notdescribed in detail herein. The components (i.e., 52, 54, 56, 58, 60) are communicatively coupledvia a local interface 62. The local interface 62 may be, for example, but not limited to, one ormore buses or other wired or wireless connections. The local interface 62 may have additionalelements, which are omitted for simplicity, such as controllers, buffers, caches, drivers, repeaters,receivers, among other elements, to enable communications. Further, the local interface 62 mayinclude address, control, and / or data connections to enable appropriate communications among thecomponents 52, 54, 56, 58, 60.

[0038] The processing device 52 is a hardware device adapted for at least executing softwareinstructions. The processing device 52 may be any custom made or commercially availableprocessor, a Central Processing Unit (CPU), an auxiliary processor among several processorsassociated with the computing system 50, a semiconductor-based microprocessor (in the form ofa microchip or chip set), or generally any device for executing software instructions. When thecomputing system 50 is in operation, the processing device 52 may be configured to executesoftware stored within the memory device 54, to communicate data to and from the memory device54, and to generally control operations of the computing system 50 pursuant to the softwareinstructions.Page 12 of 24

[0039] It will be appreciated that some embodiments of the processing device 52 describedherein may include one or more generic or specialized processors (e.g., microprocessors, CPUs,Digital Signal Processors (DSPs), Network Processors (NPs), Network Processing Units (NPUs),Graphics Processing Units (GPUs), Field Programmable Gate Arrays (FPGAs), and the like). Theprocessing device 52 may also include unique stored program instructions (including both softwareand firmware) for control thereof to implement, in conjunction with certain non-processor circuits,some, most, or all of the functions of the methods and / or systems described herein. Alternatively,some or all functions may be implemented by a state machine that has no stored programinstructions, or in one or more Application Specific Integrated Circuits (ASICs), in which eachfunction or some combinations of certain of the functions are implemented as custom logic orcircuitry. Of course, a combination of the aforementioned approaches may be used. For some ofthe embodiments described herein, a corresponding device in hardware and optionally withsoftware, firmware, and a combination thereof can be referred to as “circuitry” or “logic” that is“configured to” or “adapted to” perform a set of operations, steps, methods, processes, algorithms,functions, techniques, etc., on digital and / or analog signals as described herein for the variousembodiments.

[0040] The I / O interfaces 56 may be used to receive user input from and / or for providingsystem output to one or more devices or components. User input may be provided via, for example,a keyboard, touchpad, a mouse, and / or other input receiving devices. The system output may beprovided via a display device, monitor, Graphical User Interface (GUI), a printer, and / or other useroutput devices. I / O interfaces 56 may include, for example, one or more of a serial port, a parallelport, a Small Computer System Interface (SCSI), an Internet SCSI (iSCSI), an AdvancedTechnology Attachment (ATA), a Serial ATA (SATA), a fiber channel, InfiniBand, a PeripheralComponent Interconnect (PCI), a PCI eXtended interface (PCI-X), a PCI Express interface (PCIe),an InfraRed (IR) interface, a Radio Frequency (RF) interface, and a Universal Serial Bus (USB)interface.

[0041] The external interface 58 may be used to enable the computing system 50 tocommunicate over a network, such as the network 14, the Internet, a Wide Area Network (WAN),a Local Area Network (LAN), and the like. The external interface 58 may include, for example,an Ethernet card or adapter (e.g., 10BaseT, Fast Ethernet, Gigabit Ethernet, 10GbE) or a WirelessLAN (WLAN) card or adapter (e.g., 802.11a / b / g / n / ac). The external interface 58 may include Page 13 of 24address, control, and / or data connections to enable appropriate communications on the network14.

[0042] The memory device 54 may include volatile memory elements (e.g., Random AccessMemory (RAM)), such as Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Static RAM(SRAM), and the like, nonvolatile memory elements (e.g., Read Only Memory (ROM), hard drive,tape, Compact Disc ROM (CD-ROM), and the like), and combinations thereof. Moreover, thememory device 54 may incorporate electronic, magnetic, optical, and / or other types of storagemedia. The memory device 54 may have a distributed architecture, where various components aresituated remotely from one another, but can be accessed by the processing device 52. The softwarein memory device 54 may include one or more software programs, each of which may include anordered listing of executable instructions for implementing logical functions. The software in thememory device 54 may also include a suitable Operating System (O / S) and one or more computerprograms. The O / S essentially controls the execution of other computer programs, and providesscheduling, input-output control, file and data management, memory management, andcommunication control and related services. The computer programs may be configured toimplement the various processes, algorithms, methods, techniques, etc. described herein.

[0043] The memory device 54 may include a data store used to store data. In one example,the data store may be located internal to the computing system 50 and may include, for example,an internal hard drive connected to the local interface 62 in the computing system 50. Additionally,in another embodiment, the data store may be located external to the computing system 50 andmay include, for example, an external hard drive connected to the Input / Output (I / O) interfaces 56(e.g., SCSI or USB connection). In a further embodiment, the data store may be connected to thecomputing system 50 through a network and may include, for example, a network attached fileserver.

[0044] Moreover, some embodiments may include a non-transitory computer-readable storagemedium having computer readable code stored in the memory device 54 for programming thecomputing system 50 or other processor-equipped computer, server, appliance, device, circuit, etc.,to perform functions as described herein. Examples of such non-transitory computer-readablestorage mediums include, but are not limited to, a hard disk, an optical storage device, a magneticstorage device, a Read Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM Page 14 of 24(EPROM), and Electrically Erasable PROM (EEPROM), Flash memory, and the like. Whenstored in the non-transitory computer-readable medium, software can include instructionsexecutable by the processing device 52 that, in response to such execution, cause the processingdevice 52 to perform a set of operations, steps, methods, processes, algorithms, functions,techniques, etc. as described herein for the various embodiments.

[0045] For example, in some embodiments, the memory device 54 may be configured to storean automatic license upgrading module 64, configured as computer software or logic for enablingthe processing device 52 to perform certain functions with respect to automatically upgrading alicense agreement in the communication system 10. For example, the automatic license upgradingmodule 64 may be configured to perform the processes described with respect to FIGS. 5 and 6and may be configured to execute other functions related to automatically upgrading a licenseagreement within a network as described throughout the present disclosure.

[0046] FIG. 5 is a flow diagram illustrating an embodiment of a generalized process 70 forautomatically upgrading a license within a communication system. The process 70 includesanalyzing a communication path between first and second nodes of a communication system, asindicated in block 72. The process 70 also includes analyzing a first (e.g., initial) license agreementhaving a first set of constraints regarding communication between the first and second nodes, asindicated in block 74. The process 70 is configured to determine, as indicated in decision diamond76, whether or not the communication path is allowable under the first set of constraints of the firstlicense agreement. If not, the process 70 proceeds to block 78 and performs the step of upgradingthe first license agreement to a second license agreement having a second set of constraints thatare less-restrictive than the first set of constraints regarding communication between the first andsecond nodes.

[0047] At this point, the process 70 may return to decision diamond 76 to determine if theupdated license agreement is sufficient. For example, the steps represented by diamond 76 andblock 78 may be repeated any number of times until the communication path is allowable underthe presently-analyzed set of constraints of the presently-upgraded license agreement. The licensemay be upgraded any number of times, up to a point where the highest available class of licensesis obtained. Responsive to determining (in decision diamond 76) that the communication path isnot allowable under the second (or subsequent) set of constraints of the second license agreement, Page 15 of 24the instructions further cause the processing device to upgrade the second (or subsequent) licenseagreement to a third (or subsequent) license agreement having a third (or subsequent) set ofconstraints, and so on.

[0048] The process 70 may also include enabling communication along the communicationpath, as indicated in block 80, in response to determining (in decision diamond 76) that thecommunication path is allowable under the first set of constraints of the first license agreement.Block 80 may also represent enabling communication along the communication path after anynumber of iterations of the decision diamond 76 to obtain a license having a high enough class toallow operation over the communication path. The first, second, third, etc. sets of constraints arerelated to at least a reach class that defines a maximum allowable transmission distance along thecommunication path.

[0049] The communication path may be a restoration path, secondary path, protection path,etc. for use when a fault is detected on a primary path between the first and second nodes of thecommunication system. The process 70 may also include the step of obtaining one or more costconditions from a network operator, estimate an additional cost to switch from the primary path tothe restoration path, and upgrade the first license agreement to the second license agreement whenthe additional cost meets the one or more cost conditions. The one or more cost conditions mayinclude one or more of a maximum allowable increase in a transmission cost and a maximumallowable increase in a delay cost.

[0050] The first node may be referred to as an originating node and the second node may bereferred to as a terminating node. The process 70 may further include the step of sending a requestto a first transponder of the originating node for upgrading from the first license agreement to thesecond license agreement. Upon receipt of an acknowledgement that the first transponder hasupgraded from the first license agreement to the second license agreement, the process 70 mayfurther include sending a notify message to a second transponder of the terminating node. In someembodiments, the process 70 may be implemented by the license server 18 shown in FIG. 1 or anetwork device in communication with the license server 18. As such, the license server (ornetwork device) may further include a database (or an interface in communication with thedatabase) configured to store a shared pool of licenses available for upgrade. The shared pool oflicenses may include at least the first and second license agreements.Page 16 of 24

[0051] FIG. 6 is a flow diagram illustrating an embodiment of a process 90 for operating thelicense server 18 or for operating a network device (e.g., one of nodes 12) in communication withthe license server 18. The process 90 may be referred to as a decision flow for the originatingnode or NE (e.g., node 12A) for enhancing path computation. In this embodiment, the process 90includes a first step of performing a path computation procedure. If an attempt to find a path usingthe path computation procedure fails, as indicated in block 92, the process 90 proceeds to decisiondiamond 94, which indicates a step of determining if a dynamic cost adjustment is enabled. If thedynamic cost adjustment is not enabled, then the process goes to block 96, which includes backingoff and returning to block 92 to retry the path computation procedure.

[0052] If it is determined in decision diamond 94 that dynamic cost adjustment is enabled, thenthe process 90 proceeds to decision diamond 98, which includes the step of determining if thelicense has already reached its highest reach class. If the highest reach class has already beenreached and there is no available higher reach class available for licensing, then the process 90goes to block 96. Otherwise, if a higher reach class is available, the process 90 proceeds to block100. The process 90 includes adjusting the allowed route computation cost / delay to one level upin a profile map, as indicated in block 100.

[0053] At this point, the process 90 includes determining if a path is available, as indicated indecision diamond 102. If no path is available, the process 90 goes to decision diamond 98 todetermine if a higher level reach class is available. However, if it is determined in decisiondiamond 102 that a path is available, then the process 90 proceeds to block 104. As indicated inblock 104, the process 90 includes requesting an originating transponder to increase the reachclass. Decision diamond 106 includes the step of determining if a license acquisition hassucceeded. If not, then the process 90 returns back to decision diamond 98 to increase the reachclass (if a higher reach class is available). If it is determined in decision diamond 106 that thelicense acquisition has succeeded, then the process 90 proceeds to block 108.

[0054] The process 90 includes sending a control plane “notify” message to upgrade thelicense, as indicated in block 108. The notify message is sent to the terminating node for requestinglicense acquisition on the terminating node and waits for a response from the terminating node.Decision diamond 110 includes the step of determining if a notify response has been successfullyreceived from the terminating node, indicating that the terminating node has upgraded its license Page 17 of 24to correspond to the license on the originating node. If a response is received indicating that theterminating node has not successfully upgraded the license, then the process 90 returns to decisiondiamond 98 for raising the license class. However, if it is determined that the terminating nodesuccessfully upgrades its license, then the process 90 goes on to block 112, which includes the stepof setting up a new path under the new license.

[0055] The systems and methods of the present disclosure may be configured to allow acustomer to allocate a lower reach license when a longer reach is not needed immediately. Thesystems can be enhanced by upgrading the license class once the requirement of the customersystem changes. The present systems and methods provide advantages over conventional systems,whereby conventional transponders or modems connected to Layer 0 may have a “reach class”license that is configured in a static, inflexible manner, in that the license can only be provisionedby manual actions of a user or network operator. However, in the event of mesh restoration inphotonics networks, if a modem line port detects that the measured link distance of a new path isgreater than the provisioned reach class, traffic restoration fails in the conventional systems and areach violation alarm is raised. On the other hand, the present disclosure provides systems andmethods that can keep a “shared pool” of licenses available (in database 60) for automaticupgradation for N services in case they are at risk of resiliency failure.

[0056] The database 60 may also be configured in the Layer 0 control plane to keep a mappingof Reach vs Allowed Cost on paths for the configured line capacity. If a path computation failureis caused by a cost constraint not being met, based on originating and terminating drop transpondercapability and available licenses in shared pool, the computing system 50 may evaluate if it coulddynamically propose a path with higher cost than configured reach where SNC can come up afterupgrading the reach class licenses of modem lines at originating and terminating nodes. Thecomputing system 50 can upgrade the license “reach class “(in tandem on the transceiver 28 of thenodes 12A, 12B according to photonics control plane cost criteria). This may be done proactivelyfor the secondary communication paths 16-2 – 16-n in response to protect path computation failureor reactively in response to a failure to find a working path.

[0057] The originating and terminating NEs (e.g., nodes 12A, 12B) may need to determine alist of supported reach lengths for the drop transponders of the photonic system 24 to potentiallymeet any adjustments to the license agreement. The information in this case could be user-Page 18 of 24configured as part of a provisioning process (either per connection or per port). This may be moreapplicable for foreign transponders. The information could be negotiated by an internal protocol(e.g., SPLI) to include additional attributes. Alternatively, protocols for management, controlling,and planning could be used to fetch the information and feed it to originating NE (e.g., node 12A),which may be similar to a user configuration from the standpoint of the NE. A terminating NE(e.g., node 12B) may need to pass this capability to the originating NE as part of a CONNECTmessage.

[0058] The originating node (e.g., node 12A) would need a preconfigured map or profile ofReach vs Cost Metrics for a configured line rate capacity. This may be a new Managed Objectwhich would contain mapping of what should be configured route computation cost for each reachvalue. This could be populated as per configured mapping generated by one planner / user wherelonger links would need to be configured with higher cost (e.g., where cost vs reach would needto be correlated).

[0059] In some embodiments, the systems and methods of the present disclosure may have aprovision to release long reach licenses back to a shared pool whenever the SNC runs on anupgraded reach license line. When a next mesh event is observed, a path computation may confirmfrom a reach / cost metrics profile that a new path can come up on a lower reach license. The SNCmay acquire the lower reach license and release the longer reach license back to the license server18 for other SNCs to use.

[0060] The systems and methods of the present disclosure are considered to include featuresthat are novel with respect to conventional systems. For example, the present embodiments mayinclude path computation using dynamic cost constraints on the basis of a transponder reachlicense capability. Also, some embodiments may provide dynamic upgradation / acquisition ofreach licenses by “coherent” modem lines. In addition, the present disclosure may provide controlplane triggering license upgrading procedures on the modem 22 via SPLI or other management,control, and planning schemes. The present disclosure also may be able to automatically relinquisha license when a lower reach path is available.

[0061] Thus, the present disclosure may provide numerous benefits with respect to theconventional systems. For example, with the flexibility of the present disclosure, the reporting ofand / or providing alarms for license violations can be reduced, which will require less human Page 19 of 24interaction. Also, data traffic can be more resilient and may have less down time by implementingthe systems and methods of the present disclosure to automatically acquire licenses (if available)and restore paths appropriately with fewer interruptions. Also, a vendor may be able to sellupgraded license pools for automated use. Another advantage is that it may be helpful forcustomers having higher reach modems that are currently configured with lower licenses formonetary savings.

[0062] The modems 22 of the nodes 12A, 12B may be configured with a single ordering code(e.g., PEC) for all applications. The modems 22 may include modem-class and reach-classlicensing for managing applications and reach and may be based on the line port facility parametersincludes a modem class and a reach class. The modems 22 may also include capacity licensingfor managing constraints regarding capacity.

[0063] If a line port detects a mismatch of a modem class between the two ends of the link(e.g., communication path 16), traffic is blocked, but communication along a GeneralCommunication Channel (GCC) is not. A “Modem Class Mismatch” alarm may be raised. Themodem class license may be released when the line port of the modem 22 is deleted.

[0064] If a line port detects that the measured link distance is greater than the provisionedreach class, the traffic is blocked, the communication on the GCC is not. A “Reach Violation”alarm may be raised. The reach class license may be released when the line port of the modem 22is deleted.

[0065] The line port may be configured to validate the capacity license when a user attemptsto cross-connect a client port to the line port via ENT-CRS-ODUCTP TL1. The command maybe rejected if there is a capacity license violation detected against the request. Also, the capacitylicense may be released when deletion of cross-connection occurs.

[0066] Although the present disclosure has been illustrated and described herein with referenceto exemplary embodiments providing various advantages, it will be readily apparent to those ofordinary skill in the art that other embodiments may perform similar functions, achieve like results,and / or provide other advantages. Modifications, additions, or omissions may be made to thesystems, apparatuses, and methods described herein without departing from the spirit and scope ofthe present disclosure. All equivalent or alternative embodiments that fall within the spirit and Page 20 of 24scope of the present disclosure are contemplated thereby and are intended to be covered by thefollowing claims.

Claims

What is claimed is:

1. A method comprising:analyzing (72) a communication path (16) between a first node (12A) and a second node(12B) of a communication system (10),analyzing (74) a first license agreement having a first set of constraints regardingcommunication between the first and second nodes (12A, 12B), andresponsive to determining (76) that the communication path (16) is not allowable under thefirst set of constraints of the first license agreement, upgrading (78) the first license agreement toa second license agreement having a second set of constraints that are less-restrictive than the firstset of constraints regarding communication between the first and second nodes (12A, 12B).

2. The method as claimed in claim 1, comprisingenabling communication (80) along the communication path (16) in response todetermining (76) that the communication path (16) is allowable under the second set of constraintsof the second license agreement.

3. The method as claimed in any of claims 1 to 2, comprisingsecond set of constraints of the second license agreement, upgrading (78) the second licenseagreement to a third license agreement having a third set of constraints.

4. The method as claimed in any of claims 1 to 3, wherein the first and second sets ofconstraints are related to at least a reach class that defines a maximum allowable transmissiondistance along the communication path (16).

5. The method as claimed in any of claims 1 to 4, wherein the communication path(16) is a restoration path (16-2) for use when a fault is detected on a primary path (16-1) betweenthe first and second nodes (16A, 16B) of the communication system (10).Page 22 of 246. The method as claimed in claim 5, comprisingobtaining (100) one or more cost conditions available in the communication system (10),estimating an additional cost to switch from the primary path (16-1) to the restoration path(16-2), andupgrading (104) the first license agreement to the second license agreement when theadditional cost meets the one or more cost conditions.

7. The method as claimed in claim 6, wherein the one or more cost conditions includeone or more of a maximum allowable increase in a transmission cost and a maximum allowableincrease in a delay cost.

8. The method as claimed in any of claims 1 to 7, wherein the first node (12A) is anoriginating node and the second node (12B) is a terminating node, and comprisingsending a request (104) to a first transceiver (28) of the originating node (12A) forupgrading from the first license agreement to the second license agreement, andupon receipt of an acknowledgement (106) that the first transceiver (28) has upgraded fromthe first license agreement to the second license agreement, sending (108) a notify message to asecond transceiver of the terminating node (12B).

9. The method as claimed in any of claims 1 to 8, comprising communicating with adatabase that is configured to store a shared pool of license agreements available for upgrade,wherein the shared pool of license agreements includes at least the first and second licenseagreements.

10. An apparatus (50) comprising a processing device (52) and a memory device (54)configured to store a computer program (64) having instructions that, when executed, cause theprocessing device (52) to execute the method as claimed in any of claims 1 to 9.