cs 4594 broadband
DESCRIPTION
CS 4594 Broadband. PNNI Signaling. PNNI. PNNI = Private Network to Network Interface Can be used for both public and private networks. Two Parts of PNNI. Topology Distribution Protocol: Establish structure on an unstructured network Signaling Protocol: Establish a connection in a network. - PowerPoint PPT PresentationTRANSCRIPT
CS 4594 Broadband
PNNI Signaling
PNNI
• PNNI = Private Network to Network Interface
• Can be used for both public and private networks
Two Parts of PNNI
• Topology Distribution Protocol: Establish structure on an unstructured network
• Signaling Protocol: Establish a connection in a network
PNNI – ATM Forum
From the ATM Forum af-pnni-0055.000: PNNI consists of: A protocol is defined for distributing topology information between
switches and clusters of switches. This information is used to compute paths through the network. A hierarchy mechanism ensures that this protocol scales well for large world-wide ATM networks. A key feature of the PNNI hierarchy mechanism is its ability to automatically configure itself in networks in which the address structure reflects the topology. PNNI topology and routing is based on the well-known link-state routing technique.
A second protocol is defined for signaling, that is message flows used to establish point-to-point and point-to-multipoint connections across the ATM network. This protocol is based on the ATM Forum UNI signaling, with mechanisms added to support source routing, crankback, and alternate routing of call setup requests in case of connection setup failure.
Functions of the PNNI routing protocol
• Discovery of neighbors and link status.
• Election of PGLs. (Peer Group Leader)
• Construction of the routing hierarchy.
• Synchronization of topology databases.
Hello – establishes local topology
• Each node exchanges Hello packets with its immediate neighbors and thereby determines its local state information. This state information includes the identity and peer group membership of the node’s immediate neighbors, and the status of its links to the neighbors. Each node then bundles its state information in “PNNI Topology State Elements” (PTSEs), which are reliably flooded throughout the peer group.
Example Network – No Hierarchical Structure
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2
Level 96
Level 96
SourceA.1.2.x
DestinationB.3.3.y
Structure
• Peer Groups are determined by addressing.• Address levels are determined by how many bits
are allocated to the peer group part of the address.• Peer Group Leaders are determined by election.• Reachability information is determined by
exchange of information among nodes.• Uplinks are established using physical links
between members of different peer groups.
The Network Structured
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
Some Uplinks
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
The Logical Links are Supported by Uplinks
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Problem: Establish a Route
• Given: Source and Destination and Network as it is known at each node.
• Establish a route.
The Source and Destination
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Possible Route 1A
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Possible Route 1B
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Possible Route 2A
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Yet Another Route (3A)
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Basic Concepts
• Designated Transit List (DTL)– DTLs map out routes.– DTLs work at different levels.– A stack keeps track of the levels.
• Call SETUP Message– is passed to next node.– is saved at nodes that add new routes.
Some Problems
• The link between A.3.3 and B.1.2 is blocked (even though PNNI routing says it is OK)
• The link between A.3.3 and B.2.3 cannot support the high peak cell rate requested.
The Network with Problems
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Begin at the Source, Use Route 1
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Find Route Through A and A.1
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Call SETUP Begins
• SETUP Message saved at A.2.1
• Message forwarded to next node.
Push Route from A to B
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.1.1
A.1.2
SourceA.1.2.x
Push Route Through A
• DTL: [A.1, A.2, A.3], pointer-1
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.1.1
A.1.2
SourceA.1.2.x
Push Route Through A.1
• DTL: [A.1.2, A.1.1], pointer-1
• DTL: [A.1, A.2, A.3], pointer-1
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.1.1
A.1.2
SourceA.1.2.x
Move to Next Node in top DTL
• DTL: [A.1.2, A.1.1], pointer-2
• DTL: [A.1, A.2, A.3], pointer-1
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.1.1
A.1.2
SourceA.1.2.x
Pop DTL Stack and Move to A.2
• DTL: [A.1, A.2, A.3], pointer-2
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
Push a Route through A.2
• DTL: [A.2.2, A.2.3], pointer-1
• DTL: [A.1, A.2, A.3], pointer-2
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72A.2.3
A.2.1
A.2.2
Level 96
Call SETUP saved at node
• New route, so save SETUP message at node A.2.2.
Move through A.2
• DTL: [A.2.2, A.2.3], pointer-2
• DTL: [A.1, A.2, A.3], pointer-2
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72A.2.3
A.2.1
A.2.2
Level 96
Route Through A.2
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Pop DTL Stack and Move to A.3
• DTL: [A.1, A.2, A.3], pointer-3
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
Push a Route through A.3
• DTL: [A.3.4, A.3.2, A.3.3], pointer-1• DTL: [A.1, A.2, A.3], pointer-3• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.3.1
A.3.2
A.3.3
A.3.4
Level 96
Save Call SETUP
• New route, so save SETUP message at A.3.4.
Move to next node
• DTL: [A.3.4, A.3.2, A.3.3], pointer-2• DTL: [A.1, A.2, A.3], pointer-3• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.3.1
A.3.2
A.3.3
A.3.4
Level 96
Go to end of A.3
• DTL: [A.3.4, A.3.2, A.3.3], pointer-3• DTL: [A.1, A.2, A.3], pointer-3• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.3.1
A.3.2
A.3.3
A.3.4
Level 96
Pop DTL Stack
• DTL: [A.1, A.2, A.3], pointer-3
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
Pop DTL Stack, Look for B
• DTL: [A, B], pointer-2
A CB
Level 64
Call is Blocked
• At this point the call is blocked – A.3.3 finds it cannot use the connection to B.1.2
Route 1 is Blocked into B
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Crankback begins at A.3.3
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Crankback
• It cranks back to A.3.4 which attempts alternate routing.
Crankback to A.3.4
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Crankback
• A.3.4 cannot find a route.
• It cranks back to A.1.2 which then attempts alternate routing.
• RELEASE message.
Crankback to A.1.2
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Find an Alternate Route from A.1.2 to B
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
SourceA.1.2.x
DestinationB.3.3.y
Push DTLs Through A and A.1
• DTL: [A.1.2, A.1.1], pointer-2
• DTL: [A.1, A.2], pointer-1
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.1.1
A.1.2
SourceA.1.2.x
Pop A.1 and Move to A.2
• DTL: [A.1, A.2], pointer-1
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72
A.1.1
A.1.2
SourceA.1.2.x
Push Route through A.2
• DTL: [A.2.2, A.2.1], pointer-2
• DTL: [A.1, A.2], pointer-2
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72A.2.3
A.2.1
A.2.2
Level 96
Pop A.2
• DTL: [A.1, A.2], pointer-2
• DTL: [A, B], pointer-1
A CB
Level 64
A.1
A.2
A.3
Level 72A.2.3
A.2.1
A.2.2
Level 96
Pop A.2
• DTL: [A, B], pointer-2
A CB
Level 64
Continue the Path Into B
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
Push DTLs Through B and B.1
• DTL: [B.1.1, B.1.3], pointer-2
• DTL: [B.1, B.2, B.3], pointer-1
• DTL: [A, B], pointer-2
B.1.2B.1.1
B.1.3
Level 96
A CB
Level 64
B.1 B.2 B.3Level 80
The Path Continues through B.1
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
Pop B.1, Push Through B.2
• DTL: [B.2.2, B.2.1, B.2.3], pointer-2
• DTL: [B.1, B.2, B.3], pointer-2
• DTL: [A, B], pointer-2
A CB
Level 64
B.1 B.2 B.3Level 80
B.2.1
B.2.2
B.2.3
Move to End of B.2
• DTL: [B.2.2, B.2.1, B.2.3], pointer-2
• DTL: [B.1, B.2, B.3], pointer-2
• DTL: [A, B], pointer-2
A CB
Level 64
B.1 B.2 B.3Level 80
B.2.1
B.2.2
B.2.3
The Path Continues through B.2
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
Pop B.2, Push Through B.3
• DTL: [B.3.4, B.3.1, B.3.3], pointer-2
• DTL: [B.1, B.2, B.3], pointer-3
• DTL: [A, B], pointer-2
A CB
Level 64
B.1 B.2 B.3Level 80
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
Level 104
Move to End of B.3
• DTL: [B.3.4, B.3.1, B.3.3], pointer-2
• DTL: [B.1, B.2, B.3], pointer-3
• DTL: [A, B], pointer-2
A CB
Level 64
B.1 B.2 B.3Level 80
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
Level 104
Pop the Stack
• Pop B.3
• Pop B
• At the destination
• Now stack is empty and we are done.
Send back CONNECT message
The Path Is Established
A.3.1
A.2.3
B.1.2
A.1.1
A.1.2
A.2.1
A.2.2
A.3.2
C.1
A.3.3
A.3.4
B.1.1
B.1.3
B.2.1
B.2.2
B.2.3
B.3.5
B.3.3
B.3.2
B.3.1
B.3.4
C.2B.1 B.2A.1
A.2
A.3B.3
A CB
Level 96
Level 96
Level 96
Level 96 Level 96
Level 104
Level 96Level 80
Level 72
Level 64
DestinationB.3.3.y
SourceA.1.2.x