|
|
This chapter introduces Private Network-to-Network Interface (PNNI) routing and switching, and describes commands you can use to manage PNNI operation and routes.
The PNNI protocol includes a source-rooting protocol. In a source-rooting protocol, the originating node is responsible for routing. Defined PNNI routes, composed of one or more Designated Transit Lists (DTLs), can only be changed by the node that generated that DTL.
It is useful to remember that a PNNI node routes in detail through it's peer group, but in general through the world. This becomes important if a hierarchal topology multiple peer group (MPG) becomes available.
![]() |
Note This software release supports only the single peer group (SPG) architecture. |
Originating nodes calculate a WAN's PNNI routing tables. If the called party address is locally attached, the call is then routed to the local port. If the called party address matches an address advertised through the PNNI network, the call is then routed to the remote destination.
To determine the routing path to the destination node, the originating node first searches pre-computed tables. If that search fails, the node bases routing paths on-demand criteria. The following sections describe these routing methods.
The number of precomputed routing tables depends on the combined number of class-of-service (CoS) PTSEs that a node generates and receives from the network. The minimum number of tables is zero, and the maximum is 10. After the calculating node generates or receives CoS based traffic metrics, the tables split as shown in Table 5-1, up to a maximum of 10.
| Traffic Metrics | QoS-Based Routing Paths |
|---|---|
Administrative Weight (AW) | CBR, rtVBR, nrtVBR, ABR, UBR |
Cell Transfer Delay (CTD) | CBR, rtVBR, nrtVBR |
Cell Delay Variation (CDV) | CBR, rtVBR |
Each routing table is maintained as a shortest path tree (SPT) and each SPT is constructed based on the optimization of a particular traffic metric. An SPT maintains the shortest path tree to each reachable destination node located in the same PNNI routing domain as based on the traffic metric.
An on demand routing path is selected directly from the PNNI routing tables on the basis of the configured modeeither first fit or best fit.
Other characteristics are:
An originating node looks up the routing tables to determine the DTL for a call or connection.
The command dsppnni-routing-policy displays the routing policy. The following example shows the report for this command:
Geneva.7.PXM.a > dsppnni-routing-policy SPT epsilon......... 0 Load balance........ random SPT holddown time... 1 On demand routing... best fit SPT path holddown time 2 AW Background Table on CTD Background Table on CDV Background Table on Geneva.7.PXM.a >
As a switching protocol, PNNI supports Quality of Service.
This section explains the ATM service categories, metrics and attributes, and the signalling mechanism called crankback.
The MGX 8850 switch supports the service categories shown in Table 5-2.
| CBR | constant bit rate | Use to limit connections to a static amount of bandwidth that is continuously available until the connection is torn down. The amount of bandwidth is characterized by Peak Cell Rate (PCR) value. |
| rtVBR | real-time variable bit rate | Use for real-time applications that require tightly constrained delay and delay variation (voice/video applications). Category characterized in terms of a Peak Cell Rate (PCR), Sustainable Cell Rate (SCR), and Maximum Burst Size (MBS). |
| nrtVBR | non-real-time variable bit rate | Use for non-real-time applications with bursty traffic. Category is characterized in terms of a PCR, SCR, and MBS. |
| ABR | available bit rate | Use to allow ATM layer transfer characteristics provided by the network to change after the connection is established. Flow control mechanism is specified. |
| UBR | unspecified bit rate | Use for unspecified bit-rate ranges. This setting provides only maximum bit-rate configurationno bit rate is guaranteed. |
| Class Of Service | AW | maxCR | AvCR | maxCTD | CDV | CLR0 | CLR0+1 | CRM | VF |
|---|---|---|---|---|---|---|---|---|---|
| CBR | required | optional | required | required | required | required | required | n/a | n/a |
| rtVBR | required | optional | required | required | required | required | required | optional | optional |
| nrtVBR | required | optional | required | required | n/a | required | required | optional | optional |
| ABR | required | required | required | n/a | n/a | n/a | n/a | n/a | n/a |
| UBR | required | required | n/a | n/a | n/a | n/a | n/a | n/a | n/a |
During call setup, if the configured line or trunk attributes do not support the QoS requested, PNNI excludes that line or trunk from consideration when it selects a path.
At any time, the following parameters can be configured on a per-node or per-link basis to improve network performance. The tunable parameters described in this section are:
The Administrative Weight (AW) for a path is the sum of the individual weights of the links on the path. The AW is a key element when selecting optimal routes. The assignment of administrative weights to links and nodes affects which paths PNNI selects in routing.
Tuning the AW on interfaces impacts the distribution of SPVCs and SVCs over the network.
You can use AW to exclude links from routing, such as a secondary link that is used only when the primary link is congested or failed.
Available cell rate (AvCR) is the effective available capacity for CBR, rtVBR, and nrtVBR. For ABR, AvCR is the capacity available for minimum cell rate (MCR) reservation. AvCR is the most dynamic metric in PNNI; AvCR is the link-capacity unused by traffic which can be used by additional calls. You can configure AvCR to reflect the equivalent bandwidth that is available on the link or node. PNNI uses AvCR to decide if a link or node can carry a call, as measured in calls per second (cps).
The per-service-class based AvCR on each link is advertised by PNNI routing protocol after the overbooking factor is applied. Tuning bandwidth overbooking impacts the results of the G-CAC during the routing path selection process. Aggressive overbooking allows more SVCs and SPVCs to share the same set of network resources, though QoS can then be compromised. For example, user-compliant traffic may be discarded when congestion occurs.
Bandwidth overbooking may be configured on a per-interface or per-service-class basis.
The maximum Cell Transfer Delay (CTD) is used in for route-optimization as well as meeting QoS signaling requirements. Tuning the CTD on interfaces impacts distribution of SPVCs and SVCs over the network.
CTD includes processing and queueing delays plus propagation delay, as measured in cells per second (cps).
The Cell Delay Variation (CDV) is defined by service class on an interface. CDV is used for route-optimization as well as for meeting QoS signaling requirements. Tuning the CDV on interfaces impacts the distributions of SPVCs and SVCs over the network. CDV is measured peak-to-peak, in microseconds.
When multiple links connect two PNNI nodes, the link selection parameter prioritizes routing across one link when an SVC or SPVC is setup.
The link selection options are:
Link selection may be used in the network design to layout the traffic behavior on parallel links between nodes or peer groups.
Cell loss ratio for CLP0 traffic. (CLR0) is the maximum cell loss ratio for CLP0 traffic over a link or node.
Cell loss ratio for CLP0+1 traffic. (CLR0+1) is the maximum cell loss ratio for CLP0+1 traffic over a link or node.
PNNI only advertises significant changes. The network overhead would be too high if PNNI advertised minor parameter changes.
Changes in CDV, MaxCTD, or AvCR are measured by proportional deltas from the last advertised value. A proportional multiplier threshold expressed as a percentage provides flexible control over the definition of significant change.
For some parameters, such as AW, any change in value is considered significant.
Crankback is a PNNI signaling mechanism that triggers rerouting if call-setup encounters a failure, such as a broken line or resource unavailability. If call setup encounters such a failure, Crankback passes rerouting responsibility back to the last node which generated a designated transit list (DTL). The release carries a specific log of the problem. The rerouting node considers the logged problem and substitutes a DTL that avoids the blocked link or node. If the substituted DTL fails, PNNI initiates further crankback of the call to a node that has an alternate route to the destination.
Tranversion of any peer group requires a border node from that peer group to create a new DTL, and a node can change only a DTL that it created. Therefore, routing can change only within a peer group, unless call setup cranks back to the originating node.
In an SPG, crankback must always return rerouting responsibility to the source-node.
The following sections describe commands that display PNNI configuration information.
Once a PNNI node is configured, enter the command dsppnni-node to show the WAN's nodal table. The node list is displayed in ascending order of each node's node index, all with one setting the node to the lowest PNNI hierarchy.
The significant information that will display is
The following example shows the report for this command:
Geneva.7.PXM.a > dsppnni-node node index: 1 node name: Geneva Level............... 56 Lowest.............. true Restricted transit.. off Complex node........ off Branching restricted on Admin status........ up Operational status.. up Non-transit for PGL election.. off Node id...............56:160:47.0091810000000030ff0fef38.0030ff0fef38.01 ATM address...........47.0091810000000030ff0fef38.0030ff0fef38.01 Peer group id.........56:47.00.9181.0000.0000.0000.0000.00 Geneva.7.PXM.a >
The command dsppnsysaddr is more specific; it displays the following list of addresses from the System Address Table:
The following example shows the report for this command:
Geneva.7.PXM.a > dsppnsysaddr 47.0091.8100.0000.0030.ff0f.ef38.0000.010b.180b.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0000.010b.1816.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0000.010b.1820.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0000.010b.1821.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0000.010d.1820.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0000.010d.1821.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0000.010d.1822.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0000.010d.180b.00/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0030.ff0f.ef38.01/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.0030.ff0f.ef38.99/160 Type: host Port id: 17251106 47.0091.8100.0000.0030.ff0f.ef38.1111.1101.0001.01/160 Type: host Port id: 17251106 47.0091.8100.0000.0050.0fff.e0b8/104 Type: static Port id: 17635339 39.6666.6666.6666.6666.6666.6666.6666.6666.6666/152 Type: uni Port id: 17504267 Geneva.7.PXM.a >
The command dsppnni-intf displays the service category-based administrative weight and aggregation token parameters. The following example shows the report for this command:
Geneva.7.PXM.a > dsppnni-intf 11:2.2:22 Physical port id: 11: 2.2:22 Logical port id: 17504278 Aggr token.......... 0 AW-NRTVBR........... 5040 AW-CBR.............. 5040 AW-ABR.............. 5040 AW-RTVBR............ 5040 AW-UBR.............. 5040 Geneva.7.PXM.a >
The command dsppnni-link shows the PNNI link table.
If you specify:
The final option allows you to overview all communication lines in the PNNI network.
The following example shows the report for this command:
Geneva.7.PXM.a > dsppnni-link
node index : 1
Local port id: 17504278 Remote port id: 17176597
Local Phy Port Id: 11:2.2:22
Type. lowestLevelHorizontalLink Hello state....... twoWayInside
Derive agg........... 0 Intf index........... 17504278
SVC RCC index........ 0 Hello pkt RX......... 17937
Hello pkt TX......... 16284
Remote node name.......Paris
Remote node id.........56:160:47.00918100000000107b65f27c.00107b65f27c.01
Upnode id..............0:0:00.000000000000000000000000.000000000000.00
Upnode ATM addr........00.000000000000000000000000.000000000000.00
Common peer group id...00:00.00.0000.0000.0000.0000.0000.00
node index : 1
Local port id: 17504288 Remote port id: 17045536
Local Phy Port Id: 11:2.1:32
Type. lowestLevelHorizontalLink Hello state....... twoWayInside
Derive agg........... 0 Intf index........... 17504288
SVC RCC index........ 0 Hello pkt RX......... 18145
Type <CR> to continue, Q<CR> to stop:
Hello pkt TX......... 19582
Remote node name.......SanJose
Remote node id.........56:160:47.00918100000000309409f1f1.00309409f1f1.01
Upnode id..............0:0:00.000000000000000000000000.000000000000.00
Upnode ATM addr........00.000000000000000000000000.000000000000.00
Common peer group id...00:00.00.0000.0000.0000.0000.0000.00
node index : 1
Local port id: 17504289 Remote port id: 17045537
Local Phy Port Id: 11:2.1:33
Type. lowestLevelHorizontalLink Hello state....... twoWayInside
Derive agg........... 0 Intf index........... 17504289
SVC RCC index........ 0 Hello pkt RX......... 17501
Hello pkt TX......... 18877
Remote node name.......SanJose
Remote node id.........56:160:47.00918100000000309409f1f1.00309409f1f1.01
Upnode id..............0:0:00.000000000000000000000000.000000000000.00
Upnode ATM addr........00.000000000000000000000000.000000000000.00
Common peer group id...00:00.00.0000.0000.0000.0000.0000.00
The command dsppnni-routing-policy displays the routing policies used for background routing tables generation. The following example shows the report for this command:
Geneva.7.PXM.a > dsppnni-routing-policy SPT epsilon......... 0 Load balance........ random SPT holddown time... 1 On demand routing... best fit SPT path holddown time 2 AW Background Table on CTD Background Table on CDV Background Table on Geneva.7.PXM.a >
The command dsppnni-svcc-rcc-timer displays SVCC-based RCC variables. The following example shows the report for this command:
Geneva.7.PXM.a > dsppnni-svcc-rcc-timer node index: 1 Init time........... 4 Retry time.......... 30 Calling party integrity time... 35 Called party integrity time.... 50 Geneva.7.PXM.a >
The command dsppnni-timer displays the routing policy parameters. The following example shows the report for this command:
Geneva.7.PXM.a > dsppnni-timer node index: 1 Hello holddown(100ms)... 10 PTSE holddown(100ms)... 10 Hello int(sec).......... 15 PTSE refresh int(sec).. 1800 Hello inactivity factor. 5 PTSE lifetime factor... 200 Retransmit int(sec)..... 5 AvCR proportional PM.... 50 CDV PM multiplier...... 25 AvCR minimum threshold.. 3 CTD PM multiplier...... 50 Peer delayed ack int(100ms)................... 10 Logical horizontal link inactivity time(sec).. 120 Geneva.7.PXM.a >
All MGX 8850 switch CLI commands are explained in detail in the Cisco MGX 8850 Routing Switch Command Reference guide.
Configure the following nodal attributes with the command cnfpnni-node:
-atmaddress | Node's ATM address. |
-level | PNNI hierarchical level. This must remain identical on all SPG nodes. |
-nodeid | Node's identifier. Once assigned, you may only change it while the node's administrative status is disabled (while the node is disabled). |
-pgid | Node's peer group ID. Once assigned, you may only change it while the node's administrative status is disabled (while the node is disabled). |
-enable | Node's administrative status, either enable or disable. |
-transitRestricted | Specifies if node is a restricted transit node. |
-complexNode | Specifies if the node is a complex node (complex nodes are not supported by MGX 8850, Release 2.0.10 software image). |
-branchingRestricted | Specifies if node supports additional point-to-multipoint branches. |
-pglNoTransit | |
nodeName | Node's name. |
Configure SVCC-based RCC variables with the command cnfpnni-svcc-rcc-timer. This defines a node's initial PNNI SVCC-based variables, as follows:
node-index | Node's index. |
-inittime | Time (in seconds) that the node delays initiating establishment of an SVCC to a neighbor with a numerically lower ATM address, after determining that such an SVCC should be established. |
-retrytime | Time (in seconds) that the node delays before attempting to re-establish an SVCC-based RCC after the RCC is unexpectedly torn down. |
-callingintegritytime | Time (in seconds) that the node waits for a sent SVCC to become fully established before giving up and tearing it down. |
-calledintegritytime | Time (in seconds) that the node waits for a received SVCC to become fully established before giving up and tearing it down. |
Configure the routing policies used for background routing tables generation with the command cnfpnni-routing-policy.
-epsilon Indicates the node's policy in determining equal-cost path during routes calculation. -holddown Defines the node's minimum time interval between two consecutive calculations for generating routing tables. -bnpathholddown Defines the minimum time interval between two consecutive calculations for generating border node path in a peer group for a complex node representation at the next higher level. (complex nodes are not supported by MGX 8850, Release 2.0.10 software image) -loadBalance Defines the node's load balancing rule if alternative equal-lose routes exist for the call request. -onDemand Defines the node's on-demand routing rule, either to: firstfit = select a route that is the first it can find Default = firstfit -awBgTable Enable or disable administrative weight for the background routing table. -ctdBgTable Enable or disable c t d for the background routing table. -cdvBgTable Enable or disable c d v for the background routing table.
bestfit = select the best route
Default = off
Default = off
Default = off
Configure a PNNI interface service category-based administrative weight and aggregation token with the command cnfpnni-intf.
-token | This is a 32-bit number used for link aggregation purpose. When an interface is added, the default is 0. |
-aw | This is a 24-bit number that configures administrative weight on this interface. It is applied to all QoS service classes if -awall is specified, otherwise it is only applied to the single service class. Default = 5040 maximum value = 24-bit unsigned integer. |
-awall | This is a 24-bit number that configures administrative weight on this interface. maximum value = 24-bit unsigned integer. |
-awcbr | This is a 24-bit number that configures administrative weight used for cbr on this interface. maximum value = 24-bit unsigned integer. |
-awrtvbr | This is a 24-bit number that configures administrative weight used for rtvbr on this interface. maximum value = 24-bit unsigned integer. |
-nrtvbr | This is a 24-bit number that configures administrative weight used for nrtvbr on this interface. maximum value = 24-bit unsigned integer. |
-awabr | This is a 24-bit number that configures administrative weight used for abr on this interface. maximum value = 24-bit unsigned integer. |
-awubr | This is a 24-bit number that configures administrative weight used for ubr on this interface. maximum value = 24-bit unsigned integer. |
Configure the PNNI timers with the command cnfpnni-timer. You can define the initial PNNI timer values and significant change thresholds of a PNNI logical node.
nodeindex | Logical node's node index. |
-ptseholddown | The number is used as a multiplier of the Hello interval of the peer neighbor: the product is the max time length that the neighbor is considered to be alive without the reception of its Hello packets. Range: (0.1 through 10) second |
-helloholddown | Value for the Hello hold down timer that limits the rate at which it sends Hellos. |
-hellointerval | Initial value for the Hello timer. |
-helloinactivityfactor | Inactivity time factor on a horizontal link between two logical nodes. |
-ptserefreshinterval | Time allowed for the PTSE to re-originate. |
-ptselifetimefactor | Value for the lifetime multiplier, expressed as a percentage. The product of it and the ptserefreshinterval is sets the remaining lifetime of a self-originated PTSE. |
-retransmitinterval | Period between retransmissions of unacknowledged DS, PTSE request, and PTSP. |
-ptsedelayedackinterval | Minimum time allowed between transmissions of delayed PTSE acknowledgment packets. |
-avcrpm | Proportional multiplier used in the algorithms that determines significant change for AvCR parameters. |
-avcrmt | Minimum threshold used in the algorithms that determine significant change for AvCR parameters. |
-cdvpm | Proportional multiplier used in the algorithms that determine significant change for CDV parameters. |
-ctdpm | Proportional multiplier used in the algorithms that determine significant change for CTD parameters. |
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Thu Sep 14 18:57:17 PDT 2000
Copyright 1989-2000©Cisco Systems Inc.