METHOD AND DEVICE IN A PACKET SWITCHED NETWORK

Abstract: A method in a packet switched network of obtaining the link having the lowest cost to a certain destination comprises the steps of: for each link to the destination , calculating the link cost based on at least two parameters; and selecting the link having the lowest link cost. The calculated link costs are stored in a routing table. The parameters used comprise the maximum cell transfer delay (CTD), the peak-to-peak Cell Delay Variation (CDV), the Available Cell Rate (AvCR), the Maximum Cell Rate (MCR) and the Cell Loss Ratio (CLR). An Administrative Weight (AW) may also be included. In a preferred embodiment, each parameter is weighted by a weighting factor (k1, k2,..., k6) and scaled by an exponent ( alpha , beta , gamma , delta , epsilon ). The sum of link costs and certain non-additive parameters is used to calculate path costs.

Description: Method and device in a packet switched network Technical Field The present invention relates to the routing of connections in a telecommunications network, and especially to routing in packet switched networks. Background A common type of packet switched network today is the Asynchronous Transfer Mode (ATM) network. The ATM technology is connection-oriented, that is, re- sources are allocated in the network during to the establishment of a connection between two or more users of the network. Each ATM connection has a traffic contract specifying the capacity, behaviour and quality of service of the connection. The traffic contract is specified when a con- nection is requested by a calling user and is maintained for the lifetime of the connection. Thus, the consequences of an inefficient routing decision will affect a connection for as long as the connection remains open. Thus, the path through the network should be selected carefully to ensure that the traffic contract can be met as long as the connection exists. In a private Asynchronous Transfer Mode (ATM) network the PNNI function, as specified by the ATM Forum will probably become the chosen function for resource management with respect to routing .and signalling, and other functions. A part of the PNNI is a so called dynamic routing protocol, meaning that a node in the net- work will announce and update information regarding its own identity, the resources on its outgoing links and in the node, and address reachability, to all neighbouring nodes. This way, in the end all nodes in the network will have a complete hierarchical view of the topology of the network, including its available resources. The PNNI protocol is defined for use between private ATM switches and between private ATM networks. The abbreviation PNNI stands for either Private Network Node Interface or Private Network-to-Network Interface, reflecting these two areas of use. PNNI routing is used in a private network of ATM switching systems. PNNI includes a routing protocol for distribution of topology information between switches and groups of switches. The functions of the PNNI routing protocol include, among other things: discovery of neighbours and link and node status, synchronization of topology databases, construction of the routing hierarchy, transmission of PNNI topology state elements from each node to all other nodes. A topology state parameter is a generic term that refers to either a link state parameter or a nodal state parameter. Topology state parameters fall into two categories: topology metric and topology attribute. A topology metric is a topology state parameter that requires the values of the state parameters of all links and node along a given path to be combined in an additive manner to determine whether the path is acceptable and/or desirable for carrying a given connection. A topology attribute is a topology state parameter that is considered individually to determine whether a given link or node is acceptable and/or desirable for carrying a given connection. In this document the word parameter is used to cover both metrics and attributes. Two basic routing techniques .are used in networking: source routing and hop-by- hop routing. In source routing, the originating switching system selects the path to the destination based on its local knowledge of the network topology. Other systems along the path obey the routing instructions from the source. In hop-by-hop routing each system independently selects the next hop, which results in a progress toward the destmation provided the decisions made at each hop are sufficiently consistent. This technique has some serious disadvantages in a packet switched network. Routing loops may be created, and the processing cost associated with path selection increases for each hop. To avoid the problems of hop-by-hop routing PNNI uses source routing for all con- nection setup requests. The first node in a peer group selects the entire path across that peer group .and across all other peer groups for the purpose of reaching the destination. The path is encoded as a set of Designated Transit Lists (DTLs) explicitly included in the connection setup request. The DTLs specify every node used in transit across the peer group .and may also specify the logical links to be used be- tween the nodes. If a node along the path is unable to follow the DTL for a specific connection setup request the node must perform a so called crankback, that is, return the connection setup request to the node in which the DTL was created. In general, all links between nodes and all nodes have available resources .assigned to them. The available resources in a node are specified for every pair of ports in the node. This is normally done by specifying a default resource for the node .and deviations from the default resource for each pair of ports. An exception to the above is the simple node, in which infinite resources .are available, and which is therefore not associated with any costs. A least-cost route is the route with the highest resource margin requiring the minimum allocation of resources comp∑ired to other routes, considering both the links between the nodes .and the links within the nodes. The resources of the network .are nodes and links with their associated available relative capacity and quality of serv- ice. As resources are allocated along the least-cost route it may as a result cease to be the least cost route. Another route will then become the least cost route. To rebuild routing tables, the link cost function must be used first to be able to compute the least-cost route. In this document, the word link is taken to mean either a link between nodes or a path through a node, between two ports of the node. There are two main types of links through nodes: spokes and bypasses. A spoke is a connection in a logical node representation between an interior reference point of the logical node referred to as the nucleus, and a port representing links to other nodes. A bypass is a connection between two ports that does not pass through the nucleus. A routing algorithm should be able to adapt to a network operator's routing policy, which may change over time. A cost function can be made to match the operator's requirements, which will normally be for maximum call throughput combined with other specific requirements. Normally routing is not carried out for each call setup request. Instead, a routing table is built, comprising information about possible routes to all destinations mat may be reached through the network. One known routing algorithm commonly used today is the Dijkstra algorithm. This and other known .algorithms are capable of routing based on one constraint, for example, to minimize the number of hops or the delay. In other words: given a net- work topology .and a single parameter associated with each link in the graph, Dijkstra' s algorithm can quickly find the path between two points minimizing the sum of link parameters in the path. This method is not adequate for the ATM service category real time Variable Bit Rate (rt-VBR), in which multiple constraints must be considered. Routing for connections with multiple perform.ance constr.aints complicates the problem in two ways. First, each link must be described in terms of multiple parameters. Second, the ability of a link to participate in a path depends on the requirements of the connection being routed. Having full topology information and status about actual network resources and capacity is necessary to be able to com- pare different link costs with each other in order to build least-cost routes to every other destination in the network. The PNNI distributes complete routing information to all nodes, making it desirable to use Dijkstra' s algorithm- which, however can only optimize on one parameter. For example, the path for which the delay is minimized may very well have an unacceptably low bandwidth or high delay variation, or vice versa. One solution to the problem could be to run Dijkstra once for each different type of parameter in the network. Then every parameter would be optimized separately. This would lead to a set of overlapping routes where every route is optimized with regard to only one parameter constraint. From the set of overlapping routes, then the shortest path could be selected as the route having the largest number of overlapping routes. This algoriti m is probably inefficient for large networks. Another solution could be to use the Dijkstra algorithm and optimize only one topology state parameter, under the condition that every topology state parameter will fulfil the host's requirements regarding transmission performance. To ensure that every topology state parameter will fulfil the host's requirements, a generic connection admission control would have to be performed, considering a unique host's re- quirement directly. To use this solution routing would have to be performed for each incoming call request. This algorithm cannot be used to build routing tables, because every host's specific requirements cannot be considered when building routing tables, as the table would then become too big. Also, the requirements of one particular host may not be satisfactory to all other hosts. Summary of the Invention It is .an object of the present invention to create least cost routes from every node in the network to every destination that is reachable from that node. It is another object of the present invention to enable the selection of a link, or a whole path, in an ATM network with multiple constraints. It is yet another object to enable the routing of rt- VBR connections. It is another object to enable the routing of all types of connections with one .algorithm. It is yet another object of the invention to enable the building of routing tables based on multiple constraints. It is another object to achieve a method for path cost or link cost computation reflecting the resource margin, and the resources that must be allocated, in such a way that the higher the resource margin, the lower the path cost or link cost. These objects are achieved by the present invention by a method in a packet switched network of obtaining the link having the lowest cost to a certain destination comprising the steps of for each link to the destination, calculating the link cost based on at least two pa- rameters; and selecting the link having the lowest link cost. According to a preferred embodiment, the calculated link costs are stored in a routing table. The parameters used comprise the maximum cell transfer delay (CTD), the peak-to- peak Cell Delay Variation (CDV), the Available Cell Rate (AvCR), the Maximum Cell Rate (MCR) and the Cell Loss Ratio (CLR). An Administrative Weight (AW) may also be included. These parameters are specified in the PNNI routing specifi- cation, agreed by the ATM Forum, and will be explained in somewhat more detail below. In a preferred embodiment, each parameter is weighted by a weighting factor (kl, k2,...,k6) and scaled by an exponent (α, β, γ, δ, ε). A method in a packet switched network of obtaining the path having the lowest cost to a certain destination, is also disclosed, comprising the steps of for each link in the path, calculating the link cost according to any one of the pre- ceding claims; Adding the link costs of each path to the destination, to form the path costs; Selecting the path having the lowest path cost. A cost depending on the number of hops performed along the path, may be added to the path cost of each path. Certain non-additive parameters may also be added to the path cost. A node in a packet switched network is also disclosed, said node being adapted to communicate the available resources of all its links, spokes and bypasses to all its neighbouring nodes; receive information about available resources from all neighbouring nodes; for each link, spoke and bypass about which it h.as information, calculate the link cost based on at least two parameters; store the calculated information in a routing table. The invention offers the following advantages: The routing with respect to multiple constraints in a PNNI network environment specifically addressing the traffic contracts of the rt-VBR service categories is enabled. The multiple parameters to be considered are reduced to one single entity by the algorithm. It is adaptable to dynamic routing policies, giving different parameters different pri- ority depending on the actual traffic characteristic and optimization criteria. The link cost and path cost functions can be tailored according to the requirements of the network operator regarding resource utilization, routing performance, call setup throughput and other parameters, and can be changed as the requirements change. The scalability and flexibility of the network .are kept. Brief Description of the Figures Figure 1 shows schematically a packet switch network with two hierarchical levels according to the PNNI protocol. Figure 2 is a schematic representation of the packet switch network shown in Figure 1, as seen from one node in the network. Detailed Description of Embodiments Figure 1 is a schematic representation of a packet switch network comprising a number of logical nodes and with two hierarchical levels. The lowest level of the PNNI hierarchy comprises the logical nodes, that are organized into peer groups. The nodes in a peer group exchange information with the other nodes in the group, so that all nodes in the group have an identical view of the group and of other peer groups. Each logical node sees all nodes in its own peer group, but sees every other peer group only as a single node. If three hierarchical levels are included, each node sees all the nodes on its own level that belong to the same peer group. The other peer groups that belong to the same higher order group are seen as nodes, and the remaining higher order groups are seen as nodes. In a similar way, any number of hierarchical levels may be included, in dependence of the size of the network. In Figure 1, the actu^ network is shown in solid lines and comprises a first peer group 10 comprising four ATM nodes 11, 12, 13, 14, a second peer group 20 comprising three ATM nodes 21, 22, 23, a third peer group 30 comprising three ATM nodes 31, 32, 33. The first node 11 of the first group 10 is connected to the second 12 and the fourth 14 node of the first group, and to the first node 21 of the second group. The second node 12 of the first group 10 is connected to all three other nodes 11, 13, 14 in the first group 10. Each node comprises a nucleus, but only the one 1 la of the first node 1 1 of the first peer group 10 is shown. A first 1 lb and a second l ie spoke are shown between the nucleus 1 la and d e port connected to the second node 12 and between the nucleus 1 la and the port connected to the first node 21 of the second peer group 20, respectively. A bypass 1 Id is shown between the port connected to die fourth node 14 and the port connected to the first node 21 of d e second peer group 20. Of course, diere .are other spokes and bypasses in this and otfier nodes; tiiese .are left out for clarity. In the second group 20 the first node 21 is connected to the second 22 .and die third 23 node. The second 22 and d e third 23 node are connected to die first 31 node of die third group 30. All tiiree nodes 31, 32, 33 of d e tiiird group 30 are interconnected. Figure 2 is a schematic representation of die network shown in Figure 1, as seen from any of die nodes in d e first peer group 10. Each node 11, 12, 13, 14 has in- formation about all other nodes in this peer group but only sees the second peer group 20 as one logical node and die third peer group 30 as anotiier logical node, widiout seeing the nodes witi in d e peer groups. There may be further hierarchical levels on which, for example the tiiree peer groups 10, 20, 30 shown may form one peer group in a larger network. Links going from a lower level node to one on a higher level, for example die link from me first node 11 of d e first group 10 to die second group 20, are called uplinks. In PNNI, links are advertised unidirectionally, in die outgoing direction, but connections are always bidirectional, botii directions using die same route. Therefore, the associated total link cost of a bidirectional link takes the network resources allocated botii directions into consideration when computing the link cost. Denominations: The following parameters are used in die document: COStiink is a bidirectional link cost function COStpath is die total cost of a path, comprising the costs of all links in the path. As mentioned before a link can be either between two nodes, or dirough a node CDV is die peak to peak Cell Delay Variation. The CDV is die variation in cell delay, specified in microseconds. CTD is die maximum Cell Transfer Delay. The CTD is die sum of die fixed delay component across d e link and die cell delay variation. AvCR is d e absolute Available Cell Rate. The AvCR is a measure of the available capacity for the CBR, rt-VBR and non-rt-VBR. For the ABR service category, AvCR is a measure of the capacity available for the minimum cell rate reservation. MCR is the Maximum Cell Rate. The MCR is the maximum capacity that may be used by connections belonging to die specified service category. CLR is die Cell Loss Ratio, defined as die ratio of die number of cells that do not make it across die link to die tot.al number of cells transmitted across die link or node. AW is d e Administrative Weight that is, a parameter that can be set by the operator, for example, to direct traffic to certain links ratiier th.an other ones. AvCR/MCR is the relative Available Cell Rate All the above mentioned parameters may be seen as independent of each otiier, that is they do not affect each otiier. Link Cost Function The general link cost function is given as cost,,., = Ω(CTD) + Ω(CDV) + D(CLR) + f4(AvCR,MCR) + f5(AW) (1) in which the functions fl, £2,..., f5 are arbitrarily selected functions. An embodiment of e function is shown in equation (2): cost l l m in k k + k5* AW £ (2) I kl, k2,...,k5 being freely selectable constants. As will be obvious to the skilled person, other parameters can easily be added to the equation as found suitable. This function applies both to links between nodes and to the spokes and bypasses within a logical group node. The selection of die weight constants kl. k2 k5 and d e scaling factors α. β. γ, δ and ε is made according to the routing criteria tiiat die network operator wishes to optimize on. The weight constants kl, k2,...,k5 are used to set die weight of a par- ticular parameter. The values of die weight constants are based on die traffic characteristics and are selected in such a way as to satisfy the desired behaviour of die routing algorithm. The scaling factors α, β, γ, δ and ε are set to give each parameter a suitable priority and to choose die interval in which a change in each parameter will contribute the most to a change in die function. The scaling factors α. β, γ, δ and ε enable a network operator to change both the sensitivity and the priority for a topology state parameter and die interval in which the parameter will be given the highest priority. As will be understood by me skilled person, any of the weight constants kl. k2, ..., k5 may be set to zero, to omit one or more of the parameters CTD, CDV, CLR. AvCLR/MCR and AW. The costi mk function may also be applied when routing connections of all otiier service categories. For non-real time Variable Bit Rate, the constants kl an k2 may be set to zero. In one embodiment of die link cost function, all scaling factors α, β, γ, δ and ε, and d e parameter MCR, are set to 1, giving the equation cost lιnk = k 1* CTD + k2 * CDV + k3 * CLR + + k5 * A W (3 ) The weight constants k3 and k4 are negative. These simplifications reduce the computation time of the algorithm as the number of arithmetic operations to be carried out has been reduced. This equation requires the following number of arithmetic operations: 5 multiplications 4 additions The scaling factors α, β, γ, δ and ε being set to zero makes a change in a parameter equally important over the whole range of the parameter interval. In another embodiment, the weight constants k3 and k4 are still negative, die scaling factor α=2, the other scaling factors β, γ, δ and ε are all set to 1 and MCR≠O. This gives the following equation: cost . . = k 1* CTD + k2* CDV + k3 * CLR + k4* [ -^^ | + k5* AW (4) lmk UCRJ ' Thus the CTD is considered die most important parameter, that should influence d e link cost the most. The relative weight of die otiier parameters, CDV, CLR, AvCR/MCR and AW are controlled by die weight constants k2, k3, k4, k5, respectively. This equations requires the following number of arithmetic operations: 6 multiplications 1 division 4 additions To determine the link having the lowest cost to a certain destination, the link cost function, as given by equation (1) is minimized. Patii Cost Function One embodiment of a general path cost function is found by adding the costs of all links comprised in the path and adding a cost for each hop in the network. The hop parameter is used to increase the patii cost of a route tiiat allocates many network resources. A hop is equal to a link between two nodes being traversed. ∞^p u, = ∑ cost,,^ +/6(Hop) (5) links in which cost| ink is given by equation (1). In another embodiment, die non-additive parameters ACR and CLR are not included in the costlink function for each link. Instead, d e minimum value (ACR/MCR) min and die maximum value CLR max are used, giving the following equation: cost psth To determine the route having the lowest cost to a certain destination, the path cost function, as given by equation (5) or (6) is minimized. Normally, the calculations are not carried out each time a connection is to be set up. Ratiier, the calculations are carried out once and the result is stored in a routing table. Each node has its own routing table comprising information about all nodes in die same peer group and all die other peer groups. To build a routing table in each node, each node determines its available resources and transmits this information to all neighbouring nodes. Each node also forwards information received from otiier nodes, so that in the end each node has information about all other nodes. Based on this information, equation (1) is used to calculate the link costs of all links, and equation (5) or (6) is used to calculate the path cost of all paths to all reachable destinations. The least cost path, or paths, to every desti- nation may then be stored in the routing table. An arbitrary number of paths may be stored. Referring to Figure 1, for example, if the second node 12 in die first peer group 10 wishes a connection to die second node 32 in the third peer group 30, it selects the link to the first node in its own peer group, that is node 11, die link from this node to die second peer group 20 and the link from the second peer group 20 to die third peer group 30, but has no information about die actu route through tiiese peer groups. The routing to the second node 32 in die tiiird peer group is carried out by d e node 31 in this peer group 30 that is connected to die second peer group, tiiat is, the first node 31. A routing table is updated when die available resources of a node or link is changed or when die address reachability in the network is changed. If the cost of a link changes, all routes using ti is link have to be recalculated as well as every node tiiat is reachable from these routes, and so on. If sometiiing changes far away from the switching system, not very much will ch.ange, whereas a change in the immediate neighbourhood is likely to affect all routes.

Claims: Claims 1. A method in a packet switched network of obtaining die link having the lowest cost to a certain destination comprising die steps of for each link to the destination, calculating die link cost based on at least two parameters; and selecting die link having the lowest link cost. 2. A method according to claim 1, characterized by storing die calculated link costs in a routing table. 3. A method according to any one of the claims 1 and 2, characterized in tiiat the parameters used comprise the maximum cell transfer delay (CTD). 4. A metiiod according to any one of the preceding claims, characterized in tiiat d e parameters used comprise d e peak-to-peak Cell Delay Variation (CDV). 5. A method according to any one of die preceding claims, characterized in tiiat die parameters used comprise the Available Cell Rate (AvCR), die Maximum Cell Rate (MCR). 6. A metiiod according to any one of the preceding claims, characterized in that the parameters used comprise die Cell Loss Ratio (CLR). 7. A metiiod according to any one of the preceding claims, characterized in that the parameters used comprise and die Administrative Weight (AW). 8. A metiiod according to any one of the preceding claims, characterized in that each parameter is weighted by a weighting factor (kl, k2,...,k6). 9. A method according to any one of die preceding claims, characterized in tiiat each parameter is scaled by an exponent (α, β, γ, δ, ε). 10. A method in a packet switched network of obtaining die path having the lowest cost to a certain destination, comprising the steps of for each link in the patii, calculating die link cost according to any one of the preceding claims; Adding the link costs of each patii to the destination, to form the path costs; Selecting the patii having die lowest path cost. 11. A method according to claim 10, characterized by the step of adding a cost depending on the number of hops performed along the path, to the path cost of each path. 12. A method according to claim 10 or 11, characterized by the step of adding a cost for at least one non-additive parameter to the path cost. 13. A node in a packet switched network characterized in that it is adapted to communicate the available resources of all its links, spokes and bypasses to all its neighbouring nodes; receive information about available resources from all neighbouring nodes; for each link, spoke and bypass about which it has information, calculate the link cost based on at least two parameters; store the calculated information in a routing table.

Inventors: HASSEL KARL-HENRIK, JOHNSSON MARTIN, HASSEL, KARL-HENRIK, JOHNSSON, MARTIN
Applicants: ERICSSON TELEFON AB L M, TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Application year: 1998
Main classification: H04L12
IPC codes: H04L12, H04Q11