Title: CS 4594 Broadband
1CS 4594 Broadband
2PNNI
- PNNI Private Network to Network Interface
- Can be used for both public and private networks
3Two Parts of PNNI
- Topology Distribution Protocol Establish
structure on an unstructured network - Signaling Protocol Establish a connection in a
network
4PNNI 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.
5Functions 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.
6Hello 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 nodes 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.
7Example Network No Hierarchical Structure
C.1
C.2
B.1.1
B.2.1
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
8Structure
- 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.
9The Network Structured
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 96
A.3.3
Level 104
A.1.2
A.3.4
A.3.1
Level 96
Level 96
10Some Uplinks
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 96
A.3.3
Level 104
A.1.2
A.3.4
A.3.1
Level 96
Level 96
11The Logical Links are Supported by Uplinks
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
12Problem Establish a Route
- Given Source and Destination and Network as it
is known at each node. - Establish a route.
13The Source and Destination
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
14Possible Route 1A
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
15Possible Route 1B
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
16Possible Route 2A
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
17Yet Another Route (3A)
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
18Basic 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.
19Some 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.
20The Network with Problems
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 96
A.3.3
Level 104
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
21Begin at the Source, Use Route 1
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
22Find Route Through A and A.1
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
23Call SETUP Begins
- SETUP Message saved at A.2.1
- Message forwarded to next node.
24Push Route from A to B
Level 64
A
C
B
Source A.1.2.x
A.2
A.1
A.1.1
A.3
A.1.2
Level 72
25Push Route Through A
- DTL A.1, A.2, A.3, pointer-1
- DTL A, B, pointer-1
Level 64
A
C
B
Source A.1.2.x
A.2
A.1
A.1.1
A.3
A.1.2
Level 72
26Push 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
Level 64
A
C
B
Source A.1.2.x
A.2
A.1
A.1.1
A.3
A.1.2
Level 72
27Move 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
Level 64
A
C
B
Source A.1.2.x
A.2
A.1
A.1.1
A.3
A.1.2
Level 72
28Pop DTL Stack and Move to A.2
- DTL A.1, A.2, A.3, pointer-2
- DTL A, B, pointer-1
Level 64
A
C
B
A.2
A.1
A.3
Level 72
29Push 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
Level 64
A
C
B
A.2
A.2.1
A.1
A.3
A.2.2
A.2.3
Level 72
Level 96
30Call SETUP saved at node
- New route, so save SETUP message at node A.2.2.
31Move 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
Level 64
A
C
B
A.2
A.2.1
A.1
A.3
A.2.2
A.2.3
Level 72
Level 96
32Route Through A.2
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
33Pop DTL Stack and Move to A.3
- DTL A.1, A.2, A.3, pointer-3
- DTL A, B, pointer-1
Level 64
A
C
B
A.2
A.1
A.3
Level 72
34Push 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
Level 64
A
C
B
A.2
A.3.2
A.1
A.3.3
A.3
A.3.4
A.3.1
Level 72
Level 96
35Save Call SETUP
- New route, so save SETUP message at A.3.4.
36Move 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
Level 64
A
C
B
A.2
A.3.2
A.1
A.3.3
A.3
A.3.4
A.3.1
Level 72
Level 96
37Go 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
Level 64
A
C
B
A.2
A.3.2
A.1
A.3.3
A.3
A.3.4
A.3.1
Level 72
Level 96
38Pop DTL Stack
- DTL A.1, A.2, A.3, pointer-3
- DTL A, B, pointer-1
Level 64
A
C
B
A.2
A.1
A.3
Level 72
39Pop DTL Stack, Look for B
Level 64
A
C
B
40Call is Blocked
- At this point the call is blocked A.3.3 finds
it cannot use the connection to B.1.2
41Route 1 is Blocked into B
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
42Crankback begins at A.3.3
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
43Crankback
- It cranks back to A.3.4 which attempts alternate
routing.
44Crankback to A.3.4
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
45Crankback
- A.3.4 cannot find a route.
- It cranks back to A.1.2 which then attempts
alternate routing. - RELEASE message.
46Crankback to A.1.2
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
47Find an Alternate Route from A.1.2 to B
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 104
Level 96
A.3.3
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96
48Push 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
Level 64
A
C
B
Source A.1.2.x
A.2
A.1
A.1.1
A.3
A.1.2
Level 72
49Pop A.1 and Move to A.2
- DTL A.1, A.2, pointer-1
- DTL A, B, pointer-1
Level 64
A
C
B
Source A.1.2.x
A.2
A.1
A.1.1
A.3
A.1.2
Level 72
50Push 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
Level 64
A
C
B
A.2
A.2.1
A.1
A.3
A.2.2
A.2.3
Level 72
Level 96
51Pop A.2
- DTL A.1, A.2, pointer-2
- DTL A, B, pointer-1
Level 64
A
C
B
A.2
A.2.1
A.1
A.3
A.2.2
A.2.3
Level 72
Level 96
52Pop A.2
Level 64
A
C
B
53Continue the Path Into B
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 96
A.3.3
Level 104
A.1.2
A.3.4
A.3.1
Level 96
Level 96
54Push 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
Level 64
A
C
B
Level 80
B.1.1
B.1
B.2
B.3
B.1.2
B.1.3
Level 96
55The Path Continues through B.1
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 96
A.3.3
Level 104
A.1.2
A.3.4
A.3.1
Level 96
Level 96
56Pop 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
Level 64
A
C
B
Level 80
B.1
B.2
B.3
B.2.1
B.2.3
B.2.2
57Move 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
Level 64
A
C
B
Level 80
B.1
B.2
B.3
B.2.1
B.2.3
B.2.2
58The Path Continues through B.2
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 96
A.3.3
Level 104
A.1.2
A.3.4
A.3.1
Level 96
Level 96
59Pop 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
Level 64
A
C
B
B.3.2
B.3.1
Level 80
B.1
B.2
B.3
B.3.3
B.3.4
B.3.5
Level 104
60Move 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
Level 64
A
C
B
B.3.2
B.3.1
Level 80
B.1
B.2
B.3
B.3.3
B.3.4
B.3.5
Level 104
61Pop the Stack
- Pop B.3
- Pop B
- At the destination
- Now stack is empty and we are done.
62Send back CONNECT message
63The Path Is Established
Level 64
A
C
B
A.2
Level 96
Level 80
C.1
C.2
B.1
B.2
B.3
A.1
A.3
B.1.1
B.2.1
Level 72
B.1.2
B.2.3
B.2.2
B.3.2
Source A.1.2.x
B.1.3
A.2.1
B.3.1
B.3.3
B.3.4
Level 96
Level 96
A.2.2
A.2.3
B.3.5
A.1.1
A.3.2
Level 96
A.3.3
Level 104
A.1.2
Destination B.3.3.y
A.3.4
A.3.1
Level 96
Level 96