Sign In to Follow Application
View All Documents & Correspondence

Method And Apparatus For Path Selecting

Abstract: The embodiments of the present application provide a method and an apparatus for selecting path in a network, the method comprising: receiving, by a PCE, a path computation element communication protocol (PCEP) message requesting a path transmitted by a Path Computation Client (PCC), wherein the PCEP message includes a tie breaking selection criteria field including a tie breaking selection criteria instructing the PCE to select a path from two or more equal cost paths; and selecting, by the PCE, the path according to the tie breaking selection criteria in the PCEP message. The method of the embodiment of the present application ensures efficient utilization of the network resource. (TO BE PUBLISHED WITH FIGURE 2 & 3)

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
21 September 2016
Publication Number
12/2018
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
cal@patentindia.com
Parent Application

Applicants

HUAWEI TECHNOLOGIES INDIA PVT. LTD.
SYNO 37, 46, 45/3, 45/4 ETC., KNO 1540, Kundalahalli Village, Bengaluru, Karnataka – 560 037, India

Inventors

1. PALLETI, Ramanjaneya Reddy
SYNO 37, 46, 45/3, 45/4 ETC., KNO 1540, Kundalahalli Village, Bengaluru, Karnataka – 560 037, India
2. KOTNI, Hari Krushna
SYNO 37, 46, 45/3, 45/4 ETC., KNO 1540, Kundalahalli Village, Bengaluru, Karnataka – 560 037, India

Specification

Claims:
1. A method for selecting a path for a communication in a network, comprising:
receiving, by a Path Computation Element (PCE), a path computation element communication protocol (PCEP) message transmitted by a Path computation Client (PCC), wherein the PCEP message is used to request a path, the PCEP message includes a tie breaking selection criteria field, the tie breaking selection criteria field comprises a tie breaking selection criteria and the tie breaking selection criteria is used to instruct the PCE to select a path from two or more equal cost paths;
selecting, by the PCE, a path according to the tie breaking selection criteria in the PCEP message.

2. The method according to claim 1, wherein the PCEP message comprises a Label Switch Path Attributes (LSPA) object field including the tie breaking selection criteria field.

3. The method according to claim 1 or 2, wherein the tie breaking selection criteria field includes a Type Length Value (TLV) field, the TLV field includes a Type (T) field, a Length (L) field and a Value (V) field, wherein the V field is used to carry the tie break selection criteria.

4. The method according to any one of claims 1 to 3, wherein the tie breaking selection criteria is based on one or more of: a bandwidth, a delay, a jitter, a packet loss, a throughput, latency and an error rate.

5. The method according to any one of claims 1 to 4, wherein the PCEP message is a path computation request (PCReq) message or a path computation reply (PCRep) message or a path computation report (PCRpt) message.

6. A method for selecting a path for a communication in a network, comprising:
generating, by a Path Computation Client (PCC), a path computation element (PCE) communication protocol (PCEP) message, wherein the PCEP message includes a tie breaking selection criteria field, the tie breaking selection criteria field comprises a tie breaking selection criteria and the tie breaking selection criteria is used to instruct the PCE to select a path from two or more equal cost paths;
transmitting, by the PCC, the PCEP message to the PCE.

7. The method according to claim 6, wherein, the PCEP message comprises a Label Switch Path Attributes (LSPA) object field and the LSPA object field comprises the tie breaking selection criteria field.

8. The method according to claim 6 or 7, wherein the tie breaking selection criteria field includes a Type Length Value (TLV) field, wherein the V field of the TLV field includes an array of units of flags numbered from the least significant bit as bit zero, where each bit represents one tie breaking criteria.

9. The method according to any one of claims 6 to 8, wherein the tie breaking selection criteria is based on one or more of: a bandwidth, a delay, a jitter, a packet loss, a throughput, latency and an error rate.

10. The method according to any one of claims 6 to 9, wherein the path is a traffic engineering label switched path (TE LSP).

11. A Path Computation Element (PCE) for selecting a path in a network, the PCE comprising:
a processor and a I/O interface coupled to the processor, wherein
the I/O interface is configured to receive a path computation element communication protocol (PCEP) message transmitted by a Path Computation Client (PCC), wherein the PCEP message includes a tie breaking selection criteria field, the tie breaking selection criteria field comprises a tie breaking selection criteria and the tie breaking selection criteria is used to instruct the PCE to select a path from two or more equal cost paths; and
the processor is configured to select a path according to the tie breaking selection criteria in the PCEP message.

12. The PCE according to claim 11, wherein, the PCEP message comprises a Label Switched Path Attributes (LSPA) object field and the LSPA comprises the tie breaking selection criteria field.

13. The PCE according to claim 11 or 12, wherein the tie breaking selection criteria field includes a Type Length Value (TLV) field, the TLV field includes a Type (T) field, a Length (L) field and a Value (V) field, wherein the V field is used to carry the tie break selection criteria.

14. The PCE according to any one of claims 11 to 13, wherein the PCEP message is a path computation request (PCReq) message or a path computation reply (PCRep) message or a path computation report (PCRpt) message.

15. A Path Computation Client (PCC) for selecting a path in a network, the PCC comprising:
a processor and a I/O interface coupled to the processor, wherein
the processor is configured to generate a path computation element communication protocol (PCEP) message, wherein the PCEP message includes a tie breaking selection criteria field the tie breaking selection criteria field comprises a tie breaking selection criteria and the tie breaking selection criteria is used to instruct the PCE to select a path from two or more equal cost paths;
the I/O interface is configured to transmit the PCEP message to the PCE.

16. The PCC according to claim 15, wherein the PCEP message comprises a Label Switched Path Attributes (LSPA) object field and the LSPA object field comprises the tie breaking selection criteria field.

17. The PCC according to claim 15 or 16, wherein the tie breaking selection criteria field includes a Type Length Value (TLV) field, the TLV field includes a Type (T) field, a Length (L) field and a Value (V) field, wherein the V field is used to carry the tie break selection criteria.

18. The PCC according to any one of claims 15 to 16, wherein the tie breaking selection criteria is based on one or more of: a bandwidth, a delay, a jitter, a packet loss, a throughput, latency and an error rate.

19. A system for selecting a path in a network, the system comprising the PCE according to any one of claims 11 to 14 and the PCC according to any one of claims 15 to 18.
, Description:TECHNICAL FIELD

This application relates to telecommunications, in particular, to a method and apparatus for path selecting in a network.

BACKGROUND

In Multi-Protocol Label Switching (MPLS) networks, data transmission occurs on Label-Switched Paths (LSPs). LSPs are identified by a sequence of labels at each and every node along the path from the source to the destination. LSPs are established either prior to data transmission (control-driven) or upon detection of a certain flow of data (data-driven). The labels may be set up through the network by a signaling protocol such as the Label Distribution Protocol (LDP) and the Resource Reservation Protocol-Traffic Engineering (RSVP-TE). Each data packet carries the labels during the packet's journey from source to destination. The paths are set up based on criteria in the Forwarding Equivalence Class (FEC). High-speed switching of data is possible because the fixed-length labels are inserted at the beginning of the packet or cell and can be used by hardware to switch packets quickly between links.

A Path Computation Element (PCE) is an entity that is capable of determining and computing a suitable route for conveying data between a source and a destination, and of applying computational constraints during the computation. The PCE entity is an application that can be located within a network node or component, on an out-of-network server, etc. For example, a PCE would be able to compute the path of a traffic engineering label switched paths(TE LSPs), by operating on the Traffic Engineering database (TED)storing the traffic engineering information, and considering the bandwidth and other constraints applicable to the TE LSP service request.

The PCE uses the path computation element communication protocol (PCEP) for communications between a Path Computation Client (PCC) and a PCE, or between two PCEs. The PCEP is a special set of rules that allows the PCC to request path computations from the PCEs. The protocol also lets the PCEs return responses. However, currently, in case of multiple equal cost paths, the PCE may choose same path for multiple LSPs which results in inefficient utilization of network resources.

The above-described deficiencies of existing communication networks/ nodes of the networks/ network devices in case of multiple equal cost paths are merely intended to provide an overview of some of the problems of conventional systems / mechanism / techniques, and are not intended to be exhaustive. Other problems with conventional systems/mechanism/techniques and corresponding benefits of the various non-limiting embodiments described herein may become further apparent upon review of the following description.

SUMMARY

The object of the present application is to provide a method, apparatus and system for path selecting, so that the PCE can select a path in case of multiple equal-cost paths available.

According to a first aspect, a method for selecting a path is provided. According to the method, a Path Computation Element (PCE) receives a path computation element communication protocol (PCEP) message transmitted by a Path Computation Client (PCC), wherein the PCEP message is used to request a path, and the PCEP message includes a tie breaking selection criteria field, the tie breaking selection criteria field includes at least one tie breaking selection criteria, the at least one tie breaking selection criteria is used to instruct the PCE to select a path from at least two equal cost paths; the PCE selects a path according to the tie breaking selection criteria in the PCEP message.

According to the method of the first aspect, in case of tie breaking, the PCE can select a path effectively based on the tie breaking selection criteria, which ensures efficient utilization of end-to-end network resources.

According to the first aspect, in a first possible implementation manner of the first aspect, wherein the PCEP message includes a Label Switch Path Attributes (LSPA) object field and the LSPA object field includes the tie breaking selection criteria field. The tie breaking selection criteria field includes a Type Length Value (TLV) field, wherein the V field of the TLV field includes an array of units of flags numbered from the least significant bit as bit zero, where each bit represents one tie breaking criteria.

According to the first aspect or the above possible implementation manners of the first aspect, in a third possible implementation manner of the first aspect, the tie breaking selection criteria to select the path for the communication is based on one or more of: a bandwidth, a delay, a jitter, a packet loss, a throughput, a latency and an error rate.

According to the first aspect or the above possible implementation manners of the first aspect, in a fourth possible implementation manner of the first aspect, the PCEP message is a path computation request (PCReq) message or a path computation reply (PCRep) message or a path computation report (PCRpt) message.

According to the second aspect, a method for selecting a path for a communication in a network is provided. According to the method, a Path Computation Client (PCC) generates a PCEP message, wherein the PCEP message includes a tie breaking selection criteria field, the tie breaking selection criteria field includes at least one tie breaking selection criteria, the at least one tie breaking selection criteria is used to instruct the PCE to select a path from at least two equal cost paths and the PCC transmits the PCEP message to the PCE.

According to the method of the second aspect, in case of tie breaking, the PCE can select a path effectively based on the tie breaking selection criteria, which ensures efficient utilization of end-to-end network resources.

According to the second aspect, in a first possible implementation manner of the second aspect, wherein the PCEP message includes a Label Switch Path Attributes (LSPA) object field and the LSPA object field includes the tie breaking selection criteria field.

According to the second aspect or the first possible implementation manner of the second aspect, in a second possible implementation manner of the second aspect, the tie breaking selection criteria field includes a Type Length Value (TLV) field, the TLV field includes a Type (T) field, a Length (L) field and a Value (V) field, wherein the V field is used to carry the tie breaking selection criteria. Optionally, the V field includes a set of bits, where each bit represents one tie breaking criteria.

According to the second aspect or the above possible implementation manners of the second aspect, in a third possible implementation manner of the second aspect, the tie breaking selection criteria to select the path for the communication is based on one or more of: a bandwidth, a delay, a jitter, a packet loss, a throughput, latency and an error rate.

According to the second aspect or the above possible implementation manners of the second aspect, in a fourth possible implementation manner of the second aspect. The path is the path of the traffic engineering label switch path (TE LSP).

According to the second aspect or the above possible implementation manners of the second aspect, in a fifth possible implementation manner of the second aspect, the PCEP message is a path computation request (PCReq) message or a path computation reply (PCRep) message or a path computation report (PCRpt) message.

In a third aspect, a Path Computation Element (PCE) for selecting a path in a network is provided. The PCE includes the modules to perform the method of the first aspect or any one of the possible implementation manners of the first aspect.

In a fourth aspect, a path Computation Client (PCC) for selecting a path in a network is provided. The PCC includes the modules to perform the method of the second aspect or any one of the possible implementation manners of the second aspect.

In a fifth aspect, a PCE for selecting a path in a network is provided. The PCE includes a memory, an I/O interface and a processor coupled to the memory and the I/O interface. The memory is configured to store instructions. The processor is configured to execute the instructions. The instructions, when executed by the processor, cause the processor to perform the method of the first aspect or any one of the possible implementation manners of the first aspect.

In a sixth aspect, a PCC for selecting a path in a network is provided. The PCC includes a memory, an I/O interface and a processor coupled with the memory and the I/O interface. The memory is configured to store instructions. The processor is configured to execute the instructions. The instructions, when executed by the processor, cause the processor to perform the method of the second aspect or any one of the possible implementation manners of the second aspect.

In a seventh aspect, a computer readable storage medium is provided. The computer readable storage medium stores program codes. The program codes comprise instructions for performing the method of the first aspect or any one of the possible implementation manners of the first aspect.

In an eighth aspect, a computer readable storage medium is provided. The computer readable storage medium stores program codes. The program codes comprise instructions for performing the method of the second aspect or any one of the possible implementation manners of the second aspect.

In contrast to the available techniques, the present application enables the PCE to select a path effectively in case of tie breaking, which ensures efficient utilization of end-to-end network resources.

The various options and preferred embodiments referred to above in relation to the first implementation are also applicable in relation to the other implementations.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

Figure 1 illustrates a schematic diagram of application scenario of the method according to the embodiment of the present application.

Figure 2 illustrates a schematic diagram of a method for selecting a path according to an embodiment of the present application.

Figure 3 illustrates a schematic diagram of a tie breaking TLV field according to an embodiment of the present application.

Figure 4 illustrates a schematic structural diagram of a Path Computation Element (PCE) for selecting a path according to an embodiment of the present application.

Figure 5 illustrates a schematic structural diagram of a Path Computation Client (PCC) for selecting a path according to an embodiment of the present application.

Figure 6 illustrates a schematic structural diagram of another Path Computation Element (PCE) for selecting a path according to an embodiment of the present application.

Figure 7 illustrates a schematic structural diagram of another Path Computation Client (PCC) for selecting a path according to an embodiment of the present application.

It is to be understood that the attached drawings are for purposes of illustrating the concepts of the application and may not be to scale.

DETAILED DESCRIPTION

The following clearly describes the technical solutions in the embodiments of the present application with reference to the accompanying drawings in the embodiments of the present application. Apparently, the described embodiments are merely a part rather than all of the embodiments of the present application. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present application without creative efforts shall fall within the protection scope of the present application.

The application can be implemented in numerous ways, as a process, an apparatus, a system, a composition of matter, a computer readable medium such as a computer readable storage medium or a computer network wherein program instructions are sent over optical or electronic communication links. In this specification, these implementations, or any other form that the application may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the application.

A detailed description of one or more embodiments of the application is provided below along with accompanying figures that illustrate the principles of the application. The application is described in connection with such embodiments, but the application is not limited to any embodiment. The scope of the application is limited only by the claims and the application encompasses numerous alternatives, modifications and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding of the application. These details are provided for the purpose of example and the application may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the application has not been described in detail so that the application is not unnecessarily obscured.

In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the application. However, it will be understood by those skilled in the art that the present application may be practiced without these specific details. In other instances, well-known methods, procedures, and components, modules, units and/or circuits have not been described in detail so as not to obscure the application.

Although embodiments of the application are not limited in this regard, discussions utilizing terms such as, for example, “processing,” “computing,” “calculating,” “determining,” “establishing”, “analyzing”, “checking”, or the like, may refer to operation(s) and/or process(es) of a computer, a computing platform, a computing system, or other electronic computing device, that manipulates and/or transforms data represented as physical (e.g., electronic) quantities within the computer's registers and/or memories into other data similarly represented as physical quantities within the computer's registers and/or memories or other information non-transitory storage medium that may store instructions to perform operations and/or processes.

Although embodiments of the application are not limited in this regard, the terms “plurality” and “a plurality” as used herein may include, for example, “multiple” or “two or more”. The terms “plurality” or “a plurality” may be used throughout the specification to describe two or more components, devices, elements, units, parameters, or the like. Unless explicitly stated, the method embodiments described herein are not constrained to a particular order or sequence. Additionally, some of the described method embodiments or elements thereof can occur or be performed simultaneously, at the same point in time, or concurrently.

Figure 1illustrates a schematic diagram of application scenario of the method according to the embodiment of the present application. As shown in figure 1, the network 100 includes a PCE 101, a PCC 102 and network devices A1-A4. The PCC 102 is ingress of the path from the PCC 102 toA4, and A4 is an egress of the path from the PCC 102 to A4. Figure 1 shows multiple paths identified by the PCE 101 for communication from the PCC 102 to A4. The paths i.e., path 1, path 2 and path 3 as shown in figure 1 have same interior gateway protocol (IGP) metrics. Further, the percentage reflects the total bandwidth reserved for the path for communication, for example, 70% for path 1, 45% for path 2, 10% for path 3. According to the conventional trend, since there is no tie breaking policy, the PCE101 may choose same path (i.e. Path1 shown in figure 1) for multiple LSPs which results in inefficient utilization of network resources. Also, the Internet Engineering Task Force (IETF) Request for Comments (RFC) 5440 does not specify any tie-breaking policy for PCE 101 to select one among them when multiple equal cost paths exist. Thus, the PCC 102cannot specify the tie breaking policy to the PCE 101.As a result, the PCE 101chooses one path based on vendor specific policy or randomly (in case of multi equal-cost paths) during path computation. In the present application, embodiments of the application are described primarily in the context of PCC and PCE in a network. However, it shall be appreciated that the application is not limited to the context of PCC and PCE, and may relate to any type of appropriate electronic apparatus having the function of path computation.

Accordingly, the present application provides a method to enable the PCE to select a path in case of multiple equal-cost paths available. The following describes the method 200 in combination with figure 3, a method 400 may be applied to the network as shown in figure 1, however the embodiments of the present invent are not limited to this.

The order in which the method is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method or alternate methods. Additionally, individual blocks may be deleted from the method without departing from the protection scope of the subject matter described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.

The method for selecting a path for a communication in the network includes the below steps:

S201: The PCC generates a path computation element communication protocol (PCEP) message.

In detail, the PCC is adapted to generate the PCEP message, the PCEP message includes a tie breaking selection criteria field, the tie breaking selection criteria field includes at least a tie breaking selection criteria and the tie breaking selection criteria is used to instruct the PCE to select a path from at least two equal cost paths.

The PCEP message may be, but not limited to, the path computation request (PCReq) messages or the path computation reply (PCRep) messages or the path computation report (PCRpt) message.

According to the present application, the PCEP message carries a tie breaking TLV, and the tie breaking TLV specifies tie breaking selection criteria. The PCE received the PCEP message selects a path according to the tie breaking selection criteria in the tie breaking TLV, in case multiple equal-cost paths exist. The PCC may specify tie breaking selection criteria to PCE for selecting a path in case multiple equal-cost paths exist based on network performance parameters. Further, the network performance parameter may include a set of parameters comprising: a bandwidth or a delay or a jitter or a packet loss or a throughput or latency or an error rate or any combination thereof.

In an implementation of the present application, the PCEP message may carry a new optional TLV (named as tie breaking TLV), the new optional TLV may be in Label Switch Path Attributes (LSPA) Object and used to specify tie breaking selection criteria to PCE for selecting a path in case multiple equal-cost paths exist.

It is well known that, according to the IETF RFC 5440, the LSPA object is optional and specifies various tunnel engineering (TE) LSP attributes to be taken into account by the PCE during path computation. The LSPA object may be carried within a PCReq message, or a PCRep message in case of unsuccessful path computation. Further, the LSPA object can also be carried within the attribute-list of a PCRpt message (as defined in section 6.1 of [ID. draft-ietf-pce-stateful-pce-14]). The detailed description of the LSPA object can be seen in Section7.11 of RFC 5440

The tie breaking TLV field may include a Type filed, a Length filed and a Value field. The V field of the TLV field includes a set of bits, i.e.an array of units of flags numbered from the least significant bit as bit zero. Each bit may represent one tie breaking criteria. The tie breaking selection criteria is based on one or more of : a bandwidth, a delay, a jitter, a packet loss, a throughput, a latency and an error rate.

In further detailed implementation, figure 3 shows a tie breaking TLV utilized for selecting a path in a network for communication. The tie breaking TLV may be inserted in the optional field of the LSPA object. The tie breaking TLV is used by the PCC to specify policy to PCE for selecting a path in case of tie breaking during path computation. The TLV may specify various tie breaking conditions based on available bandwidth, delay, jitter, packet loss or other parameters.

In further detailed implementation, the tie breaking TLV as shown in figure 5 may be used to encode in LSPA object. Tie breaking TLV is optionally carried in LSPA object.

In further detailed implementation, the TLV as shown in figure 3may include three fields such as type, length, and value. The type field specifies a tie breaking TLV type (To be assigned by Internet Assigned Numbers Authority (IANA)). The type field specifies multiple of 4 octets. The value field is used to carry the tie breaking selection criteria. Optionally, the V field may contain a set of bits, where each bit may represent one tie breaking policy. A bit may be set as 1, to enable a specific tie breaking policy corresponding to the bit. It may be understood that the multiple policies may also be set.

In still further detailed implementation, the table below shows the exemplary tie breaking policies assigned to the respective bits.

BIT TIE BREAKING POLICY
0 Random Flag (R).
Choose the path randomly
1 Least-Fill Flag (L).
Choose the path with the least-utilized links. (With the largest available bandwidth ratio).
2 Most-Fill Flag (M).
Choose the path with the most-utilized links. (With the minimum available bandwidth ratio).
Available bandwidth ratio on a link = available bandwidth / maximum reservable bandwidth.
3 Least-Delay Flag (D). Choose the path with the least delay.
4 Least-Jitter Flag (J). Choose the path with the least jitter.
5 Least-Packet Loss Flag (P). Choose the path with the least packet loss
6-31 Unassigned bits.
Table 1: Tie breaking policies assigned to the respective bits

For Table 1, unassigned bits are considered reserved. They may be set to 0 on transmission and may be ignored on receipt. If none of the bit is set, the PCE chooses path randomly. Table 1 is just an exemplary description of the V field, the persons skilled in the art can define the V field according to the requirements of the network or system or administrator.

In another implementation of the present application, the PCEP message may includes a tie breaking object, the tie breaking object is used to specify a tie breaking selection criteria. The tie breaking object may include a common object header (See RFC 5440) and an object body. The object body is used to provide the information of the tie breaking selection criteria.

Optionally, the object body may include a tie-breaking TLV and the tie-breaking TLV is used to specify one or more tie breaking selection criterion. Optionally, the tie breaking TLV includes a set of sub-TLV; each sub-TLV includes T filed, L filed and V filed. The T filed specifies a type of a tie breaking selection criteria. The V filed specifies the content according to the type defined by the T filed. Further optionally, the tie breaking TLV can be the same as the TLV shown in figure 3, see the description of the figure 3 and the table1.

It may be noted and understood by the persons skilled in the art that, the policies or rules or criteria or conditions are configurable or re-configurable and may be based on the requirement of the network or system or administrator. The policies or rules or criteria or conditions may be pre-determined, pre-defined and may be different or same on same or different network.

S202: The PCC transmits a PCEP message to the PCE.

S203: The PCE receives the PCEP message transmitted by the PCC.

S204: The PCE selects a path according to the tie breaking selection in the PCEP message.

In detail, the PCE selects a first path based at least on the tie breaking selection criteria in the PCEP message, the first path is selected from the multiple equal cost paths. The first path is a traffic engineering label switched path (TE LSP).
The tie breaking selection criteria to select the first path for the communication may be based on the network performance parameters. The network performance parameters may be selected from, but not limited to, a set of parameters comprising: a bandwidth or a delay or a jitter or a packet loss or a throughput or latency or an error rate or any combination thereof.

Thus, the present application by pre-defining the Tie breaking conditions enables PCE to select a path effectively in case of Tie breaking, which ensures efficient utilization of end-to-end network resources.

In one embodiment of the present application, to illustrate the technical effect and advancement according to the present application, referring again to figure 1 showing a topology having 3 equal cost paths available. According to the present application, in new path computation request (PCReq), if bandwidth flag (L or M) is specified in Tie Breaking TLV, path selection is as below:
• L : Choose the path with the least-utilized, i.e., Path3
• M : Choose the path with the most-utilized, i.e., Path1
• Similarly other options D, J, P will choose path based on least delay, least jitter and least packet loss respectively.
Thus, suppose if requested two LSPS with bandwidth, for the first LSP, the tie breaking condition may be to choose the path with the most utilized links, and for the second LSP, the tie breaking condition may be to choose the path with the least-utilized links. Therefore, the PCE may choose different paths for multiple LSPS when multiple equal cost paths exist. It results in efficient utilization of network resources.

An embodiment of the present application further provides a PCE400 for selecting path in a network, as stated below. As the principle for solving problems is identical to that of the method 200.The implementation of the PCE may be referred to for the implementation of the method 200 and the repeated parts shall not be described herein any further.

The embodiment of the present application provides a PCE400for selecting path in a network. Figure 4 is a schematic diagram of the PCE according to an embodiment of the present application. As shown in figure 4, the PCE 400 in this embodiment of the present application may execute the method 200 executed by the PCE in the embodiment shown in figure 2 to achieve a same beneficial effect, and details are not described herein again.

In one detailed embodiment of the present application, the PCE 400 includes a processor 402, an I/O (Input /Output) interface 404 and a memory 406 coupled with the processor 402 and the I/O interface 404. The memory 406 is configured to store instructions. The processor 402is configured to execute the instructions. The instructions, when executed by the processor402, causes the processor 402 to perform the above step 203 and 204, and cause the processor 402 to control the I/O interface 404 to receive a signal.

In one embodiment, as shown in figure 5, the PCC 500 includes a processor 502, an I/O interface504 and a memory 506, the processor 502coupled with the memory 506 and the I/O interface 504. The memory 506 is configured to store instructions. The processor 502 is configured to execute the instructions. The instructions, when executed by the processor 502, cause the processor 502 to perform the above step 201and step 202,and cause the processor 502 to control the I/O interface 504 to transmit the a signal.

The processor may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, at least one processor is configured to fetch and execute computer-readable instructions stored in the memory.

The I/O interface may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O interface can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, Local Area Network (LAN), cable, etc., and wireless networks, such as Wireless LAN (WLAN), cellular, or satellite. The I/O interface may include one or more ports for connecting a number of devices to one another or to another server.

The memory may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. The embodiment of the present application may include another PCE in a network. Figure 6 is a schematic diagram of the PCE according to an embodiment of the present application. Other parts can refer to the existing technology of PCE and not be described in the present application.

As shown in figure 6, the PCE 600 includes a receiving module 602 and a processing module 604

Wherein, the receiving module 602 is configured to receive a path computation element communication protocol (PCEP) message transmitted by a Path Computation Client (PCC). The PCEP message includes a tie breaking selection criteria field having at least a tie breaking selection criteria indicating the PCE to select a path from at least two equal cost paths

The processing module 604 is configured to select a path according to the tie breaking selection criteria in the PCEP message.

The embodiment of the present application may include another PCE in a network. Figure 7 is a schematic diagram of the PCC 700according to an embodiment of the present application. Other parts can refer to the existing technology of PCC and not be described in the present application.

As shown in figure 7, the PCC 700includes a processing module702and a transmitting module 704.

Wherein, the processing module 702 is configured to generate a path computation element communication protocol (PCEP) message, wherein the PCEP message includes a tie breaking selection criteria field having at least a tie breaking selection criteria indicating the PCE to select a path from two or more equal cost paths.

The transmitting module 704 is configured to transmit the PCEP message to the PCE.

Wherein, the PCEP message may be a path computation request (PCReq) message or a path computation reply (PCRep) message or a path computation report (PCRpt) message.

In a detailed implementation of the present application, the PCEP message comprises a Label Switch Path Attributes (LSPA) object field including the tie breaking selection criteria field.

In another detailed implementation, the tie breaking selection criteria field includes a Type Length Value (TLV) field, wherein the V field of the TLV field includes an array of units of flags numbered from the least significant bit as bit zero, where each bit represents one tie breaking criteria.

Wherein, the tie breaking selection criteria to select the path for the communication is based at least on one of network performance parameters, the network performance parameters are selected from a set of parameters comprising: a bandwidth or a delay or a jitter or a packet loss or a throughput or a latency or an error rate or any combination thereof.

A person skilled in the art may understand that any known or new algorithms by be used for the implementation of the present application. However, it is to be noted that, the present application provides a method to be used during back up operation to achieve the above mentioned benefits and technical advancement irrespective of using any known or new algorithms.

A person of ordinary skill in the art may be aware that in combination with the examples described in the embodiments disclosed in this specification, units and algorithm steps may be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether the functions are performed by hardware or software depends on the particular applications and design constraint conditions of the technical solution. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of the present application.

It may be clearly understood by a person skilled in the art that for the purpose of convenient and brief description, for a detailed working process of the foregoing system, apparatus, and unit, reference may be made to a corresponding process in the foregoing method embodiments, and details are not described herein again.

In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the described apparatus embodiment is merely exemplary. For example, the unit division is merely logical function division and may be other division in actual implementation. For example, a plurality of units or components may be combined or integrated into another system, or some features may be ignored or not performed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections may be implemented through some interfaces. The indirect couplings or communication connections between the apparatuses or units may be implemented in electronic, mechanical, or other forms.

When the functions are implemented in a form of a software functional unit and sold or used as an independent product, the functions may be stored in a computer-readable storage medium. Based on such an understanding, the technical solutions of the present application essentially, or the part contributing to the prior art, or a part of the technical solutions may be implemented in a form of a software product. The computer software product is stored in a storage medium, and includes several instructions for instructing a computer node (which may be a personal computer, a server, or a network node) to perform all or a part of the steps of the methods described in the embodiment of the present application. The foregoing storage medium includes: any medium that can store program code, such as a USB flash drive, a removable hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk, or an optical disc.

Devices that are in communication with each other need not be in continuous communication with each other, unless expressly specified otherwise. In addition, devices that are in communication with each other may communicate directly or indirectly through one or more intermediaries.

When a single device or article is described herein, it will be readily apparent that more than one device/article (whether or not they cooperate) may be used in place of a single device/article. Similarly, where more than one device or article is described herein (whether or not they cooperate), it will be readily apparent that a single device/article may be used in place of the more than one device or article or a different number of devices/articles may be used instead of the shown number of devices or programs. The functionality and/or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality/features. Thus, other embodiments of the application need not include the device itself.

Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the application be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the disclosure of the embodiments of the application is intended to be illustrative, but not limiting, of the scope of the application, which is set forth in the following claims.

With respect to the use of substantially any plural and/or singular terms herein, those having skill in the art can translate from the plural to the singular and/or from the singular to the plural as is appropriate to the context and/or application. The various singular/plural permutations may be expressly set forth herein for sake of clarity.

Although implementations for method and apparatus for path selecting have been described in language specific to structural features and/or methods, it is to be understood that the appended claims are not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as examples of implementations of the method and apparatus for path selecting.

Although a particular preferred embodiment or embodiments have been shown and the present invention has been described, it is obvious that equivalent modifications and variants are conceivable to those skilled in the art in reading and understanding the description and drawings. Especially for various functions executed by the above elements (portions, assemblies, apparatus, and compositions, etc.), except otherwise specified, it is desirable that the terms (including the reference to “device”) describing these elements correspond to any element executing particular functions of these elements (i.e. functional equivalents), even though the element is different from that executing the function of an exemplary embodiment or embodiments illustrated in the present invention with respect to structure. Furthermore, although the a particular feature of the present invention is described with respect to only one or more of the illustrated embodiments, such a feature may be combined with one or more other features of other embodiments as desired and in consideration of advantageous aspects of any given or particular application.

Documents