The present disclosure is related to the path computation element protocol (PCEP) and, in particular, to PCEP extensions to support flexi-grid optical networks.
PCEP allows a path computation client (PCC) to make a request to a path computation element (PCE) for a path or set of paths through a network. The PCE returns a response to the request to the PCC. The PCE has access to the set of paths currently in use, and uses this information in determining the path or paths to assign to the requesting PCC.
Flexi-grid optical networks allow for dynamic allocation of spectrum to channels. As a result, the bandwidth assigned to nominal central channel frequencies can be dynamically adjusted. PCEP does not currently support this dynamic bandwidth allocation.
Various examples are now described to introduce a selection of concepts in a simplified form that are further described below in the detailed description. The Summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
According to one aspect of the present disclosure, there is provided a computer-implemented method of requesting a path on a flexi-grid network that comprises: sending, by a path computation client (PCC), a request for a path to a path computation element (PCE), the request including: a label that identifies spectrum to be restricted from use in the path; and a channel spacing field; and receiving, by the PCC and from the PCE, a response to the request, the response including an identifier of an assigned path on the flexi-grid network.
Optionally, in any of the preceding aspects, the request for the path includes a spectrum assignment method field.
Optionally, in any of the preceding aspects, the method further comprises: by the PCC, sending a second request for a second path to the PCE, the second request including a second spectrum assignment method field; receiving, by the PCC and from the PCE, a second response to the second request, the second response including an error condition that indicates that the second path could not be allocated.
Optionally, in any of the preceding aspects, the spectrum assignment method field indicates that the PCE should assign a lowest-indexed available spectrum.
Optionally, in any of the preceding aspects, the spectrum assignment method field indicates that the PCE should randomly select available spectrum.
Optionally, in any of the preceding aspects, the spectrum assignment method field indicates that the PCE may use any method of assigning available spectrum.
Optionally, in any of the preceding aspects, the request for the path includes an asymmetry field that indicates that the PCE should use the same spectrum for both directions of the path.
Optionally, in any of the preceding aspects, the request for the path includes an asymmetry field that indicates that the PCE may use different spectrum for each direction of the path.
Optionally, in any of the preceding aspects, the request for the path includes a central frequency granularity field, the central frequency granularity field to be used by the PCE in conjunction with the channel spacing field to determine spectrum for the path.
Optionally, in any of the preceding aspects, the request for the path includes a minimum slot width field to be used by the PCE in conjunction with the central frequency granularity field and the channel frequency field to determine spectrum for the path.
According to one aspect of the present disclosure, there is provided a path computation client (PCC) device that comprises: a memory storage comprising instructions; one or more processors in communication with the memory storage, wherein the one or more processors execute the instructions to perform: sending a request for a path to a path computation element (PCE), the request including: a label that identifies spectrum to be restricted from use in the path; and a channel spacing field; and receiving, from the PCE, a response to the request, the response including an identifier of an assigned path on a flexi-grid network.
Optionally, in any of the preceding aspects, the request for the path includes a spectrum assignment method field.
Optionally, in any of the preceding aspects, the PCC device further comprises: sending a second request for a second path to the PCE, the second request including a second spectrum assignment method field; receiving, from the PCE, a second response to the second request, the second response including an error condition that indicates that the second path could not be allocated.
Optionally, in any of the preceding aspects, the spectrum assignment method field indicates that the PCE should assign a lowest-indexed available spectrum.
Optionally, in any of the preceding aspects, the spectrum assignment method field indicates that the PCE should randomly select available spectrum.
Optionally, in any of the preceding aspects, the spectrum assignment method field indicates that the PCE may use any method of assigning available spectrum.
Optionally, in any of the preceding aspects, the request for the path includes an asymmetry field that indicates that the PCE should use the same spectrum for both directions of the path.
Optionally, in any of the preceding aspects, the request for the path includes an asymmetry field that indicates that the PCE may use different spectrum for each direction of the path.
Optionally, in any of the preceding aspects, the request for the path includes a central frequency granularity field, the central frequency granularity field to be used by the PCE in conjunction with the channel spacing field to determine spectrum for the path.
According to one aspect of the present disclosure, there is provided a non-transitory computer-readable medium that stores computer instructions for requesting a path on a flexi-grid network that, when executed by one or more processors, cause the one or more processors to perform steps of: sending a request for a path to a path computation element (PCE), the request including: a label that identifies spectrum to be restricted from use in the path; and a channel spacing field; and receiving, from the PCE, a response to the request, the response including an identifier of an assigned path on a flexi-grid network.
Any one of the foregoing examples may be combined with any one or more of the other foregoing examples to create a new embodiment within the scope of the present disclosure.
In the following description, reference is made to the accompanying drawings that form a part hereof, and in which are shown, by way of illustration, specific embodiments which may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the inventive subject matter, and it is to be understood that other embodiments may be utilized and that structural, logical, and electrical changes may be made without departing from the scope of the present disclosure. The following description of example embodiments is, therefore, not to be taken in a limiting sense, and the scope of the present disclosure is defined by the appended claims.
The functions or algorithms described herein may be implemented in software, in one embodiment. The software may consist of computer-executable instructions stored on computer-readable media or a computer-readable storage device such as one or more non-transitory memories or other types of hardware-based storage devices, either local or networked. The software may be executed on a digital signal processor, application-specific integrated circuit (ASIC), programmable data plane chip, field-programmable gate array (FPGA), microprocessor, or other type of processor operating on a computer system, such as a switch, server, or other computer system, turning such a computer system into a specifically programmed machine.
Existing versions of PCEP allocate bandwidth on fixed channels and thus are unable to take advantage of the variable frequency size features of flexi-grid networks. As used herein, flexi-grid networks are networks based on the standards defined by the telecommunication standardization sector of the International Telecommunication Union (ITU-T) publications G.694.1 and G.872, each of which is hereby incorporated by reference in its entirety. Flexi-grid networks include a new dense wavelength division multiplexing (DWDM) grid by defining a set of nominal central frequencies, channel spacings, and frequency slots. Flexi-grid allows for a data-plane connection based on allocated, variable-sized frequency ranges within the optical spectrum, creating a flexible grid.
As disclosed herein, PCEP is extended to include new type-level-value (TLV) elements and objects that support requesting and allocating variable amounts of spectrum. As one example, a path computation request by a PCC may include a spectrum assignment object. The path computation request is defined by Internet Engineering Task Force (IETF) request for comments (RFC) 5440, hereby incorporated by reference in its entirety. Through use of these elements and objects, the modified version of PCEP is able to make use of the features of flexi-grid networks.
One example computing device in the form of a computer 200 (also referred to as computing device 200 and computer system 200) may include a processor 205, memory storage 210, removable storage 215, non-removable storage 220, input interface 225, output interface 230, and communication interface 235, all connected by a bus 240. Although the example computing device is illustrated and described as the computer 200, the computing device 200 may be in different forms in different embodiments. For example, the computing device 200 may instead be a smartphone, a tablet, a smartwatch, or another computing device including elements the same as or similar to those illustrated and described with regard to
The memory storage 210 may include volatile memory 245 and non-volatile memory 250, and may store a program 255. The computer 200 may include—or have access to a computing environment that includes—a variety of computer-readable media, such as the volatile memory 245, the non-volatile memory 250, the removable storage 215, and the non-removable storage 220. Computer storage includes random-access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM) and electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD ROM), digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium capable of storing computer-readable instructions.
The computer 200 may include or have access to a computing environment that includes input interface 225, output interface 230, and a communication interface 235. The output interface 230 may be an interface to a display device, such as a touchscreen, that also may serve as an input device. The input interface 225 may be an interface to one or more of a touchscreen, a touchpad, a mouse, a keyboard, a camera, one or more device-specific buttons, one or more sensors integrated within or coupled via wired or wireless data connections to the computer 200, and other input devices. The computer 200 may operate in a networked environment using the communication interface 235 to connect to one or more remote computers, such as database servers. The remote computer may include a personal computer (PC), server, router, network PC, peer device or other common network node, or the like. The communication interface 235 may include a local area network (LAN), a wide area network (WAN), a cellular network, a WiFi network, a Bluetooth network, or other networks.
Computer-readable instructions stored on a computer-readable medium (e.g., the program 255 stored in the memory 210) are executable by the processor 905 of the computer 200. A hard drive, CD-ROM, and RAM are some examples of articles including a non-transitory computer-readable medium such as a storage device. The terms “computer-readable medium” and “storage device” do not include carrier waves to the extent that carrier waves are deemed too transitory. “Computer-readable non-transitory media” includes all types of computer-readable media, including magnetic storage media, optical storage media, flash media, and solid-state storage media. It should be understood that software can be installed in and sold with a computer. Alternatively, the software can be obtained and loaded into the computer, including obtaining the software through a physical medium or distribution system, including, for example, from a server owned by the software creator or from a server not owned but used by the software creator. The software can be stored on a server for distribution over the Internet, for example.
The program 255 may implement the method 800 (discussed below with respect to
The routing module 260 determines a route through a network in response to a request. For example, a request may indicate a source and a destination and the routing module 260 may determine a series of reconfigurable optical add drop multiplexers (ROADMs) that provide a route through the network that allows data to be transferred to the destination from the source.
The spectrum assignment module 265 assigns spectrum in a flexi-grid network to a route determined by the routing module 260. For example, the frequency slot 120 or the frequency slot 130 may be assigned to the route.
As described in IETF RFC 5440, the format of a path computation request (also referred to as a PCReq message), is below. Each of the referenced element types not defined below is defined in IETF RFC 5440.
In some example embodiments, the <request> is redefined to additionally include a <Spectrum Assignment> object, described below with respect to
Any of the machines or devices shown in
The asymmetry field 410 bit is set to 0 to indicate that the same spectrum is required in both directions of the path (i.e., from the source to the destination and from the destination to the source). The asymmetry field 410 bit is set to 1 to indicate that different spectrum may be used in each direction of the path.
The spectrum assignment (SA) method field 420 has a range of 0-128, as a 7-bit value. An SA method of 0 indicates that the PCE may use any method of spectrum assignment.
An SA method of 1 indicates a request that the PCE use the lowest-indexed spectrum available. For example, the PCE may maintain a table that maps an index to each channel of
An SA method value of 2 instructs the PCE to choose available spectrum randomly. Other values of the SA method may produce undefined results or be treated as a value of 0. When the spectrum selection TLV 400 is not present, the PCE may allocate spectrum as if an S value of 1 and an SA method of 0 were provided.
The four-bit action field 510 indicates whether the spectrum restriction TLV 500 indicates spectrum to be included or excluded when the PCE selects spectrum to allocate and indicates whether the spectrum will be identified as a list or as a range.
The twelve-bit number of labels field 520 indicates the number of label TLVs supplied as additional fields. In some example embodiments, each label TLV indicates a frequency value. Thus, two labels may be used to define a range, or 0-4095 labels may be used in a list of frequency values, depending on the value of the action field.
The sixteen-bit length field 530 indicates the total number of octets of the spectrum restriction TLV. The nine fixed fields occupy 12 octets, so the valid range of the length field is 12-65535.
The four-bit channel spacing field 540 indicates the spacing between channels. The channel spacing field 540 has valid values defined by IETF RFC 6205 and IETF RFC 7699, each of which are hereby incorporated by reference in their entireties. For flexi-grid, a channel spacing value of five, indicating a channel spacing of 6.25 GHz is used. The central frequency of a channel is 193.1 THz+n×channel spacing, where n is the channel number.
The eight-bit CFG field 550 indicates the multiple of the channel spacing to be used for central frequency granularity. For example, when the CFG is one, the central frequencies may be separated by the channel spacing. When the CFG is larger than one, the central frequencies are spaced farther apart.
The eight-bit SWG field 560 indicates the multiple of double the channel spacing to be used for slot width granularity. For example, when the SWG is one and the channel spacing is 6.25 GHz, slots will be a multiple of 12.5 GHz in size.
The sixteen-bit minimum slot width field 580 indicates the minimum slot width as a multiple of the SWG. The two reserved fields consume twelve and sixteen bits, respectively, and should be set to 0.
As indicated above with respect to the number of labels field, additional label fields 595 (defined using the Generic Label TLV of IETF RFC 3036, which is hereby incorporated by reference in its entirety) are appended to the spectrum restriction TLV to indicate the spectrum affected by the action.
The spectrum restriction TLV may be used in a spectrum restriction constraint object, described as:
The fifteen-bit length field 620 contains the number of octets of the spectrum allocation TLV. The link identifier field 640 contains one or more 32-bit identifiers. Each 32-bit identifier identifies a link along the allocated route.
The one-bit explicit label control mode field 630 is set if the PCE should calculate an explicit assignment of the label that will be used for each node of the path. The explicit label control mode field 630 is cleared if the PCE should return the result of the label list from which each node along the path chooses as it fits.
The allocated spectrum field 650 contains one or more 32-bit identifiers. Each 32-bit identifier identifies spectrum allocated to the corresponding link. For example, the first spectrum identifier in the list of allocated spectrum values corresponds to the first link identifier in the list of link values.
The spectrum selection TLV 740 identifies a spectrum allocation method suggestion by the PCC to the PCE. The PCE may use the suggested spectrum allocation method to allocate spectrum in response to a spectrum assignment request comprising the spectrum assignment object 700. The spectrum restriction TLV 750 identifies one or more spectrum restrictions (e.g., due to tunable laser or other management restrictions). For example, the TLV 750 may include one or more labels (as indicated by the number of labels field 520), each label included as an additional label field 595, and identifying a frequency to be allocated or excluded from allocation (e.g., based on the value of the action field 510). In some example embodiments, a pair of labels identifies a range of frequencies to be allocated or excluded from allocation.
In operation 810, the PCC sends a request for a path to a PCE, wherein the request includes a label that identifies spectrum to be restricted from use in the path and a channel spacing field. For example, the spectrum assignment object 700, may be sent as part of a path computation request by the PCC. As described above with respect to
In operation 820, the PCC receives a response to the request, wherein the response includes an identifier of an assigned path on a flexi-grid network. For example, the spectrum allocation TLV 600 may be sent from the PCE to the PCC, wherein at least one of the link identifiers 640 identifies a link on a flexi-grid network (e.g., the flexi-grid network of
If the PCC is not capable of processing the request for the path due to insufficient memory, the PCE sends a PCEP error message (defined by IETF RFC 5440) with a PCEP-ERROR object (also defined by IETF RFC 5440) and an Error-value (e.g., 1). The PCE stops processing the request. In response to the PCEP error message, the PCC cancels the request for the path.
If the PCC is not capable of processing the request for the path because it is not enabled to perform spectrum allocation, the PCE sends a PCEP error message with a PCEP-ERROR object and a different Error-value (e.g., 2). The PCE stops processing the request. In response to the PCEP error message, the PCC cancels the request for the path.
In some example embodiments, the PCEP error message includes a NO-PATH object (defined by IETF RFC 5440) to communicate one or more reasons for not being able to perform spectrum allocation for the request for the path. The NO-PATH object may include a NO-PATH-VECTOR TLV (also defined by IETF RFC 5440) to provide additional information about why the request for the path could not be successfully handled by the PCE. The NO-PATH-VECTOR TLV includes 32-bits, each of which can be used to identify a specific cause of the failure to generate a path. As defined by the IETF RFC 5440, only bits 29-31 have assigned meanings, with the remaining 28 bits available for future assignments. In some example embodiments, one of the 28 bits is assigned to indicate that no feasible route was found that meets all of the constraints (e.g., spectrum restrictions) associated with the request for the path.
Devices and methods disclosed herein may enable the use of PCEP on flexi-grid networks. Devices and methods disclosed herein may also result in improved allocation of network resources, resulting in improved throughput and quality of service. By enabling clients to make a flexi-grid specific path computation that is not tied with a fixed frequency, the effective bandwidth for the path can be flexibly increased. Furthermore, when the bandwidth desired by a client is greater than the fixed slot width that would be granted by prior art PCEP, the devices and methods disclosed herein enable the client to request a path with the desired bandwidth.
Although a few embodiments have been described in detail above, other modifications are possible. For example, the logic flows depicted in the figures do not require the particular order shown, or sequential order, to achieve desirable results. Other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Other embodiments may be within the scope of the following claims.
This application claims the benefit of priority under 35 U.S.C. § 119(e) to U.S. Provisional Patent Application Ser. No. 62/474,249, filed Mar. 21, 2017, which provisional application is incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
20080298805 | Lee et al. | Dec 2008 | A1 |
20090110402 | Bernstein | Apr 2009 | A1 |
20120207467 | Lee | Aug 2012 | A1 |
20140328587 | Magri | Nov 2014 | A1 |
Number | Date | Country |
---|---|---|
2804353 | Nov 2014 | EP |
2858312 | Apr 2015 | EP |
Entry |
---|
Lee et al., “PCEP Extension for WSON Routing and Wavelength Assignment”, IETF, Feb. 2016 (Year: 2016). |
Bernstein et al., RFC 7689, “Signaling Extensions for Wavelength Switched Optical Networks”, IETF, 2015 (Year: 2015). |
Farrel et al., RFC 7699, “Generalized Labels for the Flexi-Grid in Lambda Switch Capable (LSC) Label Switching Routers”, IETF, Nov. 2015 (Year: 2015). |
“International Application Serial No. PCT/CN2018/079797, International Search Report dated Jun. 11, 2018”, 4 pgs. |
“International Application Serial No. PCT/CN2018/079797, Wriiten Opinion dated Jun. 11, 2018”, 4 pgs. |
Farrel, A., et al., “Generalized Labels for the Flexi-Grid in Lambda Switch Capable (LSC) Label Switching Routers”, RFC 7699, Internet Engineering Task Force (IETF), (Nov. 2015), 14 pgs. |
Lee, Y., et al., “PCEP Extension for Flexible Grid Networks”, PCE Working Group. [online]. Retrieved from the Internet: <URL: https://tools.ietf.org/pdf/draft-lee-pce-flexible-grid-01.pdf>, (Dec. 27, 2017), 20 pgs. |
“European Application No. 18772606.2, Extended European Search Report dated Oct. 31, 2019”, (dated Oct. 31, 2019), 8 pgs. |
Munoz, R., et al., “Dynamic differential delay aware RMSA for elastic multi-path provisioning in GMPLS Flexi-grid DWDM networks”, OFC 2014, OSA,9 Mar. 2014, pp. 1?3, (Mar. 9, 2014), 3 pgs. |
Thyagaturu, Akhilesh S., et al., “Software Defined Optical Networks (SDONs): A Comprehensive Survey”, EEE Communications Surveys and Tutorials, vol. 18, No. 4, (Nov. 18, 2016), 2738-2786. |
Number | Date | Country | |
---|---|---|---|
20180278458 A1 | Sep 2018 | US |
Number | Date | Country | |
---|---|---|---|
62474249 | Mar 2017 | US |