lab course “routerlab” - tu berlin · lab course “routerlab” ospf - open shortest path...
TRANSCRIPT
![Page 1: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/1.jpg)
Lab Course “RouterLab”
OSPF - Open Shortest Path First(RFC 2328)
1
Some of the slides come from: http://www.ietf.org/proceedings/07dec/slides/IDRTut-0.pdf
![Page 2: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/2.jpg)
OSPF
Miscellaneous • Anything that needs discussion?
2
![Page 3: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/3.jpg)
OSPF
Internet Routing• Distance Vector
- I tell you all my “best” routes for all destinations that I know and you tell me yours.
- Build simplified topology from local perspective
- E.g. RIP
3
• Link State- I announce to everyone
about my links and the addresses I originate on each link and listen to everyoneʼs announcement.
- Build full topology- E.g. OSPF
![Page 4: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/4.jpg)
OSPF
OSPF (Link State)• I tell everyone about all my connections(links), with link
up/down announcements
• I tell everyone about the addresses I originate on each link
• I listen to everyone elseʼs link announcements
• I build a topology of every link (map)
• Then I compute the shortest path to every address
• I assume (trust) that everyone else has assembled the same map and performed the same path selection
4
![Page 5: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/5.jpg)
OSPF
• Is an instantiation of the Dijkstra Algorithm1. Set: and for 2. Compute:3. Select:4. Update:5. If stop, otherwise go to 2
OSPF (Link State)
5
Wait for an announce
Recompute Map
Issue periodic announcement
Recompute shortest-paths tree
i = 0, S0 = {u0 = s}, L (u0) = 0, L (v) =!, v != u0
!v " (V \ Si) L (v) = min{L (v) , L (ui) + duiv }
ui+1 = v! : L (v!) = min"v#(V \Si){L (v)}
Si+1 = Si ! ui+1, i = i + 1i =| V | !1
![Page 6: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/6.jpg)
OSPF
OSPF• Is more complex
- (RFC 2328 is 244 pages, RIP is 39!)
• Converges extremely quickly • Should be loop-free at all times• Does not guarantee consistency of outcomes• Relies on a “full disclosure” model across the
whole domain• Can be organized in several “areas”• Still canʼt scale
6
![Page 7: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/7.jpg)
OSPF
OSPF Components• Hello Protocol:
- Builds and maintains adjacencies
• Link State Announcements• Database Synchronization:
- Ensure consistency of the Database among neighbors- Reliable Flooding
• Shortest-Path Tree Computation- Based on the Routing Database
7
![Page 8: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/8.jpg)
OSPF
OSPF Packets • OSPF runs directly over IP
- Protocol Number: 89
• Packetsʼ Type1. Hello - Discover/Maintain neighbors2. Database Description - Summarize database contents3. Link State Request - Database download4. Link State Update - Database update5. Link State Ack - Flooding Acknowledgement
8
![Page 9: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/9.jpg)
OSPF
Hello Protocol• Task:
- Discover/Maintain neighbor relationship - Discover bi-directionality- Negotiate capabilities (HelloInterval, Netmask, RouterDeadInterval)
• Method:- Periodical multicasting of Hello Packets containing:‣ List of routers whose Hello Packets have been seen recently
• Target:- Establish Adjacencies- Adjacent routers sync the link-state database
9
![Page 10: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/10.jpg)
OSPF
LSA - LS Announcements• Router-LSA
- Flooded- States of the links
• Network-LSA- Flooded by Designated Router‣ Routers use an ID (usually an IP
address on the loopback)
- Describes all routers attached to it
• The set of LSA form the Database
10
R1
R3
R2
N1
R4
1
3
9
7
Router-LSARouter-LSARouter-LSAFrom To Cost
R2 N1 1R2R3 9
Network-LSANetwork-LSANetwork-LSAFrom To Cost
N1R1 3
N1 R2 7N1R3 1
![Page 11: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/11.jpg)
OSPF
Database Sync
11
• Ideally all routers have to sync their Database
• In practice in OSPF only adjacent routers Sync their Database
• Types of Sync:- Initial Sync ‣ when establishing adjacencies
- Continuous Sync ‣ when adjacencies are already established
DatabaseR1
R3
R2
N1
R4
1
3
9
7
1
3
9
7
![Page 12: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/12.jpg)
OSPF
Initial Database Sync
12
• Routers perform “Database Exchange Process”- State Machine
• Database Description Packets - Contains summaries of LS data
• DD are explicitly acknowledged• More recent LS Data can be explicitly requested
(Link State Request)• Process ends with adjacency establishment
![Page 13: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/13.jpg)
OSPF
Sync Example
13
RT1 RT2
DD
Hello
Hello
DD
DD
LS-Request
LS-Request
DD
DD
LS-Update
LS-Update
Down Down
ExStartInit
Loading
Exchange
Full
ExStart
Exchange
Full
![Page 14: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/14.jpg)
OSPF
Continuous Database Sync• Reliable Flooding• LSA are generated
‣ periodically if nothing changes (30 minutes)‣ upon specific events if they change the content of the LSA
• If a newer LSA is received by a router it is put in the database and a route computation is triggered
• The LSA is sent to all adjacencies which have to explicitly acknowledge it
14
![Page 15: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/15.jpg)
OSPF
Shortest-Path Tree
15
R1
1
R5
R4
R3
R2
R6
2
5
2
2
3
34
Destination Cost Next-Hop
R1
R2
R3
R5
R4
R6
0 *
1 link
2 link
4 R3
6 R2
7 R3
1. Added Destination = <R1,0>; Candidate Destination List = <R2,1> <R3,2>2. Added Destination = <R2,1>; Candidate Destination List = <R3,2> <R5,5> <R4,6>3. Added Destination = <R3,2>; Candidate Destination List = <R5,4> <R4,6> 4. Added Destination = <R5,4>; Candidate Destination List = <R4,6> <R6,7>5. Added Destination = <R4,6>; Candidate Destination List = <R6,7>6. Added Destination = <R6,7>; Candidate Destination List = 7. Done!
![Page 16: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/16.jpg)
OSPF
Hierarchical OSPF• Why?
- Reduce routing overhead- Increase scalability- Speed up convergence- Confine routing instabilities in contained areas
16
![Page 17: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/17.jpg)
OSPF
Hierarchical OSPF• How
- Inside Areas full OSPF- Flooding is limited to Areas- Area Border Routers
summarize information‣ LSA-Summary
- Area 0 (backbone mandatory)- Inter-area communication only
through Area 0- No loops allowed among areas- Only 2 levels hierarchy allowed
17
10.1.2.0/24
10.1.128.0/24
10.1.3.0/24
LSA-summary10.3.0.0/16
![Page 18: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/18.jpg)
OSPF
Worksheet 4• Use same VLANs topology like in Question 1
Work Sheet 2• Target: logical networks communicate using
OSPF• Readings:
‣ Cisco RIP‣ Juniper RIP‣ RFC 2328
18
![Page 19: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/19.jpg)
OSPF
New Schedule!• Deadline Worksheet 4: 29th May 2009• No debriefings/Tutorials in the week from 19th to
22nd May• Debriefing Worksheet 3 (RIP) will be held on
27th May• Tutorial on BGP will be held on Thursday 28th
May
19
![Page 20: Lab Course “RouterLab” - TU Berlin · Lab Course “RouterLab” OSPF - Open Shortest Path First (RFC 2328) 1 Some of the slides come from:](https://reader030.vdocuments.us/reader030/viewer/2022021802/5b7973687f8b9a703b8da9a4/html5/thumbnails/20.jpg)
OSPF
Any other Question?
20