Networks & Protocols INF566 - X2010 - 2012 Lecture 3 - - - PowerPoint PPT Presentation

networks protocols
SMART_READER_LITE
LIVE PREVIEW

Networks & Protocols INF566 - X2010 - 2012 Lecture 3 - - - PowerPoint PPT Presentation

Networks & Protocols INF566 - X2010 - 2012 Lecture 3 - Enterprise Grade Routing - OSPF thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/ 1 Intro, kick-off, objectives and motivation (Thomas)


slide-1
SLIDE 1

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Networks & Protocols

INF566 - X2010 - 2012 Lecture 3 - Enterprise Grade Routing - OSPF

1

slide-2
SLIDE 2

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

1 9/1 Intro, kick-off, objectives and motivation (Thomas) “What Makes For A Successful Protocol?” (Mark) 2 16/1 “Bufferbloat & the Broken Internet” (Thomas & Mark) 3 23/1 “Carrier-Grade Routing” (Thomas) 4 30/1 “Peering” (Thomas & Mark) 5 6/2 RPKI (Mark) 6 13/2 "Indirection, Encapsulation, and Obfuscation" (Mark & Thomas) 7 20/2 SDOs: the ITU, IETF, ... - Guest Lecture by Elliot Lear 8 27/2 "Homenetworking and The Curse of the End-2-End Model" (Mark) 9 ??? Presentations by buddy-teams (Thomas + Mark)

2

slide-3
SLIDE 3

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

1 9/1 Intro, kick-off, objectives and motivation (Thomas) “What Makes For A Successful Protocol?” (Mark) 2 16/1 “Bufferbloat & the Broken Internet” (Thomas & Mark) 3 23/1 “Carrier-Grade Routing” (Thomas) 4 30/1 “Peering” (Thomas & Mark) 5 6/2 RPKI (Mark) 6 13/2 "Indirection, Encapsulation, and Obfuscation" (Mark & Thomas) 7 20/2 SDOs: the ITU, IETF, ... - Guest Lecture by Elliot Lear 8 27/2 "Homenetworking and The Curse of the End-2-End Model" (Mark) 9 ??? Presentations by buddy-teams (Thomas + Mark)

2

slide-4
SLIDE 4

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Objectives

  • The transition from “academic algorithm”

into “real-world deployment” of routing

  • Scalability, hierarchical routing
  • (Intentional) Obfuscation
  • Familiarize yourself with “the basics” of

OSPF - the (preferred) IGP on the Internet

3

slide-5
SLIDE 5

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

4

slide-6
SLIDE 6

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

4

slide-7
SLIDE 7

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table

4

slide-8
SLIDE 8

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table
  • Poor decisions when links, routers fail

4

slide-9
SLIDE 9

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table
  • Poor decisions when links, routers fail
  • Bellman-Ford

4

slide-10
SLIDE 10

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table
  • Poor decisions when links, routers fail
  • Bellman-Ford
  • Link-State Routing

4

slide-11
SLIDE 11

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table
  • Poor decisions when links, routers fail
  • Bellman-Ford
  • Link-State Routing
  • Global knowledge: state = network graph

4

slide-12
SLIDE 12

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table
  • Poor decisions when links, routers fail
  • Bellman-Ford
  • Link-State Routing
  • Global knowledge: state = network graph
  • Require all routers to have consistent

network graph

4

slide-13
SLIDE 13

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table
  • Poor decisions when links, routers fail
  • Bellman-Ford
  • Link-State Routing
  • Global knowledge: state = network graph
  • Require all routers to have consistent

network graph

  • Good local decisions when links, routers fail

4

slide-14
SLIDE 14

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Distance

Vector Routing

  • Local knowledge only: state = routing table
  • Poor decisions when links, routers fail
  • Bellman-Ford
  • Link-State Routing
  • Global knowledge: state = network graph
  • Require all routers to have consistent

network graph

  • Good local decisions when links, routers fail
  • Dijkstra

4

slide-15
SLIDE 15

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

5

slide-16
SLIDE 16

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles

5

slide-17
SLIDE 17

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors

5

slide-18
SLIDE 18

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors
  • establish relationship “adjacency”

5

slide-19
SLIDE 19

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors
  • establish relationship “adjacency”
  • 2. Flood link-state through network

5

slide-20
SLIDE 20

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors
  • establish relationship “adjacency”
  • 2. Flood link-state through network
  • generate LSAs (Link ID, state, cost, neighbors)

5

slide-21
SLIDE 21

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors
  • establish relationship “adjacency”
  • 2. Flood link-state through network
  • generate LSAs (Link ID, state, cost, neighbors)
  • 3. Learn complete network topology

5

slide-22
SLIDE 22

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors
  • establish relationship “adjacency”
  • 2. Flood link-state through network
  • generate LSAs (Link ID, state, cost, neighbors)
  • 3. Learn complete network topology
  • Link State Database (LSDB)

5

slide-23
SLIDE 23

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors
  • establish relationship “adjacency”
  • 2. Flood link-state through network
  • generate LSAs (Link ID, state, cost, neighbors)
  • 3. Learn complete network topology
  • Link State Database (LSDB)
  • 4. Run local path selection algorithm

5

slide-24
SLIDE 24

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

  • Link State Principles
  • 1. Know links to neighbors
  • establish relationship “adjacency”
  • 2. Flood link-state through network
  • generate LSAs (Link ID, state, cost, neighbors)
  • 3. Learn complete network topology
  • Link State Database (LSDB)
  • 4. Run local path selection algorithm
  • Dijkstra

5

slide-25
SLIDE 25

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

Received LSAs IP Routing Table Dijkstra’s Algorithm Link State Database LSAs are flooded to other interfaces

6

slide-26
SLIDE 26

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Background Recap from INF557

Initialization: R = {s} ∀v ∈ V |c(s,v) ≠ ∞ : d(v) ← c(s,v) ∀v ∈ V |c(s,v) = ∞ : d(v) ← ∞ Repeat: (v, w) ← (v ∈ R, w ∈ V\R)|c(v,w) is minimum p(w) ← v R = R ∪ {w} ∀u ∈ V |c(w,u) ≠ ∞ : d(u) ← min(d(u), d(w + c(w,u))) Until: ¬∃u ∈ R, v ∈ V \ R|c(u,v) ≠ ∞

Dijkstra’s Algorithm

7

slide-27
SLIDE 27

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Basics

Open Shortest-Path First

  • Most successful link-state protocol on the

Internet

  • As you know, successful doesn’t mean best....
  • Significant complexity; Mark has colleagues

spending a lifetime specializing in small parts

  • f OSPF..... [51 RFCs and counting....]
  • We’ll go over the basics.....

8

slide-28
SLIDE 28

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF

Open Shortest-Path First

  • History:

1989 - RFC 1131 - OSPF version 1 1991 - RFC 1247 - OSPF version 2 1994 - RFC 1583 - OSPF version 2 (revision 1) 1997 - RFC 2178 - OSPF version 2 (revision 2) 1998 - RFC 2328 - OSPF version 2 (revision 3) 1999 - RFC 2740 - OSPF version 3 (for IPv6)

9

slide-29
SLIDE 29

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

10

slide-30
SLIDE 30

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

10

slide-31
SLIDE 31

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses 10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6

10

slide-32
SLIDE 32

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses 10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 Links

10

slide-33
SLIDE 33

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses 10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24 Links Address

10

slide-34
SLIDE 34

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24 Links Address Cost - called “Metric”

10

slide-35
SLIDE 35

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24 Links Address Cost - called “Metric” Metric in range [0 , 216] (Metric can be asymmetric)

10

slide-36
SLIDE 36

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24 Links Address Cost - called “Metric” Metric in range [0 , 216] (Metric can be asymmetric) Interfaces

.1 .2 .2 .4 .4 .6 .1 .3 .3 .3 .2 .4 .6 .5 .5 .5

10

slide-37
SLIDE 37

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24 Links Address Cost - called “Metric” Metric in range [0 , 216] (Metric can be asymmetric) Interfaces Address

.1 .2 .2 .4 .4 .6 .1 .3 .3 .3 .2 .4 .6 .5 .5 .5

10

slide-38
SLIDE 38

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24 Links Address Cost - called “Metric” Metric in range [0 , 216] (Metric can be asymmetric) Interfaces Address From the “link prefix”

.1 .2 .2 .4 .4 .6 .1 .3 .3 .3 .2 .4 .6 .5 .5 .5

10

slide-39
SLIDE 39

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Some Taxonomy

Router IDs selected independent of interface addresses

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24 Links Address Cost - called “Metric” Metric in range [0 , 216] (Metric can be asymmetric) Interfaces Address From the “link prefix” In this case, all .X are the same

.1 .2 .2 .4 .4 .6 .1 .3 .3 .3 .2 .4 .6 .5 .5 .5

10

slide-40
SLIDE 40

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24

.1 .2 .2 .4 .4 .6 .1 .3 .3 .3 .2 .4 .6 .5 .5 .5

11

slide-41
SLIDE 41

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

12

slide-42
SLIDE 42

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

13

slide-43
SLIDE 43

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

  • LSA of router 10.10.10.1:

13

slide-44
SLIDE 44

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

  • LSA of router 10.10.10.1:

Link State ID:

10.10.10.1 = Router ID

13

slide-45
SLIDE 45

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

  • LSA of router 10.10.10.1:

Link State ID:

10.10.10.1 = Router ID

Advertising Router:

10.10.10.1 = Router ID

13

slide-46
SLIDE 46

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

  • LSA of router 10.10.10.1:

Link State ID:

10.10.10.1 = Router ID

Advertising Router:

10.10.10.1 = Router ID

Number of links:

3 = 2 links plus router itself

13

slide-47
SLIDE 47

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

  • LSA of router 10.10.10.1:

Link State ID:

10.10.10.1 = Router ID

Advertising Router:

10.10.10.1 = Router ID

Number of links:

3 = 2 links plus router itself

Description of Link 1: Link ID = 10.1.1.1, Metric = 4 Description of Link 2: Link ID = 10.1.2.1, Metric = 3 Description of Link 3: Link ID = 10.10.10.1, Metric = 0

13

slide-48
SLIDE 48

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

  • LSA of router 10.10.10.1:

Link State ID:

10.10.10.1 = Router ID

Advertising Router:

10.10.10.1 = Router ID

Number of links:

3 = 2 links plus router itself

Description of Link 1: Link ID = 10.1.1.1, Metric = 4 Description of Link 2: Link ID = 10.1.2.1, Metric = 3 Description of Link 3: Link ID = 10.10.10.1, Metric = 0 Other stuff: checksum, sequence number, ....

13

slide-49
SLIDE 49

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Link State Advertisements

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

  • LSA of router 10.10.10.1:

Link State ID:

10.10.10.1 = Router ID

Advertising Router:

10.10.10.1 = Router ID

Number of links:

3 = 2 links plus router itself

Description of Link 1: Link ID = 10.1.1.1, Metric = 4 Description of Link 2: Link ID = 10.1.2.1, Metric = 3 Description of Link 3: Link ID = 10.10.10.1, Metric = 0 Other stuff: checksum, sequence number, ....

Each router sends its LSA to all routers in the network (using a method called reliable flooding)

13

slide-50
SLIDE 50

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

3 4 2 5 2

10.10.10.1 10.10.10.2 10.10.10.3 10.1.1/24 10.1.4/ 10.1.5/ 10.1.2/24 10.1.3/24

.1 .2 .2 .1 .3 .3 .3 .2

LSDB

14

slide-51
SLIDE 51

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSDB

3 4 2 5 1 1 3 2

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 10.1.1/24 10.1.4/24 10.1.7/24 10.1.5/24 10.1.8/24 10.1.2/24 10.1.3/24 10.1.6/24

.1 .2 .2 .4 .4 .6 .1 .3 .3 .3 .2 .4 .6 .5 .5 .5

Each router has a database which contains the LSAs from all other routers

15

slide-52
SLIDE 52

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSDB

  • The collection of all LSAs is called the link-state

database

  • Each router has and identical link-state database
  • Useful for debugging: complete network description
  • When neighboring routers discover each other for the

first time, they will exchange their link-state databases

  • The link-state databases are synchronized using reliable

flooding

16

slide-53
SLIDE 53

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Packet Format

Destination IP: neighbor’s IP address or 224.0.0.5 (ALLSPFRouters) or 224.0.0.6 (AllDRouters) TTL: set to 1 (in most cases) OSPF packets are not carried as UDP payload! OSPF has its own IP protocol number: 89

17

slide-54
SLIDE 54

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Header Format

18

slide-55
SLIDE 55

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Header Format

2: current version is OSPF V2

18

slide-56
SLIDE 56

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Header Format

2: current version is OSPF V2

Message types: 1: Hello (tests reachability) 2: Database description 3: Link Status request 4: Link state update 5: Link state acknowledgement

18

slide-57
SLIDE 57

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Header Format

2: current version is OSPF V2

Message types: 1: Hello (tests reachability) 2: Database description 3: Link Status request 4: Link state update 5: Link state acknowledgement ID of the Area from which the packet originated

18

slide-58
SLIDE 58

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Header Format

2: current version is OSPF V2

Message types: 1: Hello (tests reachability) 2: Database description 3: Link Status request 4: Link state update 5: Link state acknowledgement ID of the Area from which the packet originated Standard IP checksum taken

  • ver entire packet

18

slide-59
SLIDE 59

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Header Format

2: current version is OSPF V2

Message types: 1: Hello (tests reachability) 2: Database description 3: Link Status request 4: Link state update 5: Link state acknowledgement ID of the Area from which the packet originated Standard IP checksum taken

  • ver entire packet

0: no authentication 1: Cleartext password 2: MD5 checksum (added to end packet)

18

slide-60
SLIDE 60

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Header Format

2: current version is OSPF V2

Message types: 1: Hello (tests reachability) 2: Database description 3: Link Status request 4: Link state update 5: Link state acknowledgement ID of the Area from which the packet originated Standard IP checksum taken

  • ver entire packet

0: no authentication 1: Cleartext password 2: MD5 checksum (added to end packet) Authentication passwd = 1: 64 cleartext password Authentication passwd = 2: 0x0000 (16 bits) KeyID (8 bits) Length of MD5 checksum (8 bits) Nondecreasing sequence number (32 bits)

Prevents replay attacks

18

slide-61
SLIDE 61

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF LSA Format

LSA Header Link 1 Link 2

19

slide-62
SLIDE 62

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Know Thy Neighbors

20

slide-63
SLIDE 63

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

  • Routers multicasts OSPF Hello packets on all OSPF-

enabled interfaces.

Know Thy Neighbors

20

slide-64
SLIDE 64

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

  • Routers multicasts OSPF Hello packets on all OSPF-

enabled interfaces.

  • If two routers share a link, they can become neighbors,

and establish an adjacency

Know Thy Neighbors

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 Scenario: Router 10.1.10.2 restarts

20

slide-65
SLIDE 65

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

  • Routers multicasts OSPF Hello packets on all OSPF-

enabled interfaces.

  • If two routers share a link, they can become neighbors,

and establish an adjacency

Know Thy Neighbors

  • After becoming adjacent, routers exchange their link

state databases

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.1.10.2 restarts

20

slide-66
SLIDE 66

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Database Exchange

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.1.10.2 restarts

21

slide-67
SLIDE 67

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Database Exchange

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.10.10.2 restarts

22

slide-68
SLIDE 68

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Database Exchange

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.10.10.2 restarts

Discovery of adjacency After neighbors are discovered the nodes exchange their databases

22

slide-69
SLIDE 69

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Database Exchange

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.10.10.2 restarts

Discovery of adjacency After neighbors are discovered the nodes exchange their databases

Database Description: Sequence = X Send empty Database Description

22

slide-70
SLIDE 70

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Database Exchange

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.10.10.2 restarts

Discovery of adjacency After neighbors are discovered the nodes exchange their databases

Database Description: Sequence = X Send empty Database Description Database Description: Sequence = X, 5 LSA Headers = { Router-LSA, 10.10.10.1, 0x80000006 Router-LSA, 10.10.10.3, 0x80000007 Router-LSA, 10.10.10.4, 0x8000003a Router-LSA, 10.10.10.5, 0x80000038 Router-LSA, 10.10.10.6, 0x80000005 } Sends database description. (description only contains LSA headers)

22

slide-71
SLIDE 71

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Database Exchange

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.10.10.2 restarts

Discovery of adjacency After neighbors are discovered the nodes exchange their databases

Database Description: Sequence = X Send empty Database Description Database Description: Sequence = X, 5 LSA Headers = { Router-LSA, 10.10.10.1, 0x80000006 Router-LSA, 10.10.10.3, 0x80000007 Router-LSA, 10.10.10.4, 0x8000003a Router-LSA, 10.10.10.5, 0x80000038 Router-LSA, 10.10.10.6, 0x80000005 } Database Description: Sequence = X+1 1 LSA Headers = { Router-LSA, 10.10.10.2, 0x80000005 } Sends database description. (description only contains LSA headers) Database Description of 10.10.10.2

22

slide-72
SLIDE 72

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Database Exchange

10.10.10.2 10.10.10.1 OSPF HELLO OSPF HELLO: I heard 10.10.10.2 DBx Scenario: Router 10.10.10.2 restarts

Discovery of adjacency After neighbors are discovered the nodes exchange their databases

Database Description: Sequence = X Send empty Database Description Database Description: Sequence = X, 5 LSA Headers = { Router-LSA, 10.10.10.1, 0x80000006 Router-LSA, 10.10.10.3, 0x80000007 Router-LSA, 10.10.10.4, 0x8000003a Router-LSA, 10.10.10.5, 0x80000038 Router-LSA, 10.10.10.6, 0x80000005 } Database Description: Sequence = X+1 1 LSA Headers = { Router-LSA, 10.10.10.2, 0x80000005 } Database Description: Sequence = X+1 Sends database description. (description only contains LSA headers) Database Description of 10.10.10.2 Acknowledges receipt of description

22

slide-73
SLIDE 73

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Regular LSA Exchange

10.10.10.2 10.10.10.1

23

slide-74
SLIDE 74

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Regular LSA Exchange

10.10.10.2 10.10.10.1

Link State Reequest packets, LSAs = { Router-LSA, 10.10.10.1, Router-LSA, 10.10.10.3, Router-LSA, 10.10.10.4, Router-LSA, 10.10.10.5, Router-LSA, 10.10.10.6, } 10.10.10.2 explicitly requests each LSA from 10.10.10.1

23

slide-75
SLIDE 75

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Regular LSA Exchange

10.10.10.2 10.10.10.1

Link State Reequest packets, LSAs = { Router-LSA, 10.10.10.1, Router-LSA, 10.10.10.3, Router-LSA, 10.10.10.4, Router-LSA, 10.10.10.5, Router-LSA, 10.10.10.6, } Link State Update Packet, LSAs = { Router-LSA, 10.10.10.1, 0x80000006, LSA... Router-LSA, 10.10.10.3, 0x80000007, LSA... Router-LSA, 10.10.10.4, 0x8000003a, LSA... Router-LSA, 10.10.10.5, 0x80000038, LSA... Router-LSA, 10.10.10.6, 0x80000005, LSA.... } 10.10.10.1 sends requested LSAs 10.10.10.2 explicitly requests each LSA from 10.10.10.1

23

slide-76
SLIDE 76

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Regular LSA Exchange

10.10.10.2 10.10.10.1

Link State Reequest packets, LSAs = { Router-LSA, 10.10.10.1, Router-LSA, 10.10.10.3, Router-LSA, 10.10.10.4, Router-LSA, 10.10.10.5, Router-LSA, 10.10.10.6, } Link State Update Packet, LSAs = { Router-LSA, 10.10.10.1, 0x80000006, LSA... Router-LSA, 10.10.10.3, 0x80000007, LSA... Router-LSA, 10.10.10.4, 0x8000003a, LSA... Router-LSA, 10.10.10.5, 0x80000038, LSA... Router-LSA, 10.10.10.6, 0x80000005, LSA.... } Link State Update Packet, LSAs = { Router-LSA, 10.10.10.6, 0x80000006, LSA.... } 10.10.10.1 sends requested LSAs 10.10.10.2 explicitly requests each LSA from 10.10.10.1 10.10.10.2 has more recent value for 10.10.1.6 and sends it to 10.10.10.1 (with higher sequence number)

23

slide-77
SLIDE 77

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Routing Data Distribution

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6

24

slide-78
SLIDE 78

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Routing Data Distribution

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6

24

slide-79
SLIDE 79

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Routing Data Distribution

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6

24

slide-80
SLIDE 80

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Routing Data Distribution

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6

24

slide-81
SLIDE 81

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Routing Data Distribution

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 Update database

24

slide-82
SLIDE 82

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Routing Data Distribution

10.10.10.1 10.10.10.2 10.10.10.3 10.10.10.4 10.10.10.5 10.10.10.6 Update database

24

slide-83
SLIDE 83

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Updates

  • Triggered by local topology or link cost changes
  • A received LSA that contains no new information

is suppressed

  • Exception: very infrequent (every 30 min)

flooding

  • Acknowledgement:
  • explicit ACK
  • implicit via reception of LSA Update

25

slide-84
SLIDE 84

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Question

  • What is the role of the Database Description

packets?

26

slide-85
SLIDE 85

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

OSPF Autonomous System

  • A region of the Internet administered by a single

entity.

  • Examples of autonomous regions are:
  • X’s campus network
  • Frees backbone network
  • Routing is done differently within an autonomous

system (intradomain routing) and between autonomous system (interdomain routing).

27

slide-86
SLIDE 86

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Large OSPF nets

  • Large link-state table
  • Each router maintains a LSDB for all links
  • The LSDB requires the use of memory
  • Frequent SPF calculations
  • Topology changes; re-run Dijkstra
  • Flapping links
  • Large routing table
  • Solution: Divide the network into multiple areas

28

slide-87
SLIDE 87

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Area OSPF

  • A flapping link will affect only an area
  • Dijkstra only when changes within that area
  • Complete topology only for that area

➡Separate large network into smaller ➡Hierarchical routing ➡Area == Isolation of “problems”

29

slide-88
SLIDE 88

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area 0 / Backbone Area Area 1 Area 2 Ext. AS

30

slide-89
SLIDE 89

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area 0 / Backbone Area Area 1 Area 2 Ext. AS Internal Routers

30

slide-90
SLIDE 90

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area 0 / Backbone Area Area 1 Area 2 Ext. AS Internal Routers Backbone Routers

30

slide-91
SLIDE 91

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area 0 / Backbone Area Area 1 Area 2 Ext. AS Internal Routers Backbone Routers Area Border Router

30

slide-92
SLIDE 92

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area 0 / Backbone Area Area 1 Area 2 Ext. AS Internal Routers Backbone Routers Area Border Router AS Border Router

30

slide-93
SLIDE 93

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area 0 / Backbone Area Area 1 Area 2 Ext. AS Internal Routers Backbone Routers Area Border Router AS Border Router

30

slide-94
SLIDE 94

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router

31

slide-95
SLIDE 95

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router Routers with all their interfaces within the same area Routers with at least one interface connected to area 0 Routers that have at least one interface connected to an another autonomous system Routers with interfaces attached to multiple areas within the same autonomous system

32

slide-96
SLIDE 96

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router Routers with at least one interface connected to area 0 Routers that have at least one interface connected to an another autonomous system Routers with interfaces attached to multiple areas within the same autonomous system

32

slide-97
SLIDE 97

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router Routers that have at least one interface connected to an another autonomous system Routers with interfaces attached to multiple areas within the same autonomous system

32

slide-98
SLIDE 98

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router Routers with interfaces attached to multiple areas within the same autonomous system

32

slide-99
SLIDE 99

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router

32

slide-100
SLIDE 100

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router

33

slide-101
SLIDE 101

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router

34

slide-102
SLIDE 102

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router LSA Type 1 - Router LSA

Generated by each router for each area it belongs to. Describes the states of the routers links to that area Flooded only within this particular area

34

slide-103
SLIDE 103

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Internal Routers Backbone Routers Area Border Router AS Border Router LSA Type 1 - Router LSA

Generated by each router for each area it belongs to. Describes the states of the routers links to that area Flooded only within this particular area

LSA Type 2 - Network LSA

Generated by Designated Router in multiaccess link Describe et of routers attached to that link Flooded only within the area containing that link

34

slide-104
SLIDE 104

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3/4 - Summary LSA

Generated by Area Border Router Describe links between Area Border Router and internal routers of local area Flooded through backbone area

Internal Routers Backbone Routers Area Border Router AS Border Router LSA Type 1 - Router LSA

Generated by each router for each area it belongs to. Describes the states of the routers links to that area Flooded only within this particular area

LSA Type 2 - Network LSA

Generated by Designated Router in multiaccess link Describe et of routers attached to that link Flooded only within the area containing that link

34

slide-105
SLIDE 105

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 5 - AS External LSA

Generated by AS Border Router Describe routes to destinations external to AS Flooded through an OSPF AS (Except for stub and totally stubby areas)

LSA Type 3/4 - Summary LSA

Generated by Area Border Router Describe links between Area Border Router and internal routers of local area Flooded through backbone area

Internal Routers Backbone Routers Area Border Router AS Border Router LSA Type 1 - Router LSA

Generated by each router for each area it belongs to. Describes the states of the routers links to that area Flooded only within this particular area

LSA Type 2 - Network LSA

Generated by Designated Router in multiaccess link Describe et of routers attached to that link Flooded only within the area containing that link

34

slide-106
SLIDE 106

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 5 - AS External LSA

Generated by AS Border Router Describe routes to destinations external to AS Flooded through an OSPF AS (Except for stub and totally stubby areas)

LSA Type 3/4 - Summary LSA

Generated by Area Border Router Describe links between Area Border Router and internal routers of local area Flooded through backbone area

Internal Routers Backbone Routers Area Border Router AS Border Router LSA Type 1 - Router LSA

Generated by each router for each area it belongs to. Describes the states of the routers links to that area Flooded only within this particular area

LSA Type 2 - Network LSA

Generated by Designated Router in multiaccess link Describe et of routers attached to that link Flooded only within the area containing that link

34

slide-107
SLIDE 107

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area Types

Area 0 / Backbone Area Stub Area Totally Stubby Area

Does not accept External LSAs Accept all LSAs Does not accept External or Summary LSAs

35

slide-108
SLIDE 108

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Area Types

Area 0 / Backbone Area Stub Area Totally Stubby Area

Does not accept External LSAs Accept all LSAs Does not accept External or Summary LSAs

Areas serve to contain traffic, reduce size of LSDB in routers within area limit impact of topology changes make routing decisions lighter

36

slide-109
SLIDE 109

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 1: Router LSAs

  • We’ve already seen those

37

slide-110
SLIDE 110

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 2: Network LSAs

  • We’ll get to those in a bit, when talking

multi-access networks

38

slide-111
SLIDE 111

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

  • Originated by the ABR
  • Describes links between ABR and Internal

Routers of the area of the ABR

  • Flooded throughout the backbone (Area 0)

(thus, to other ABRs)

  • Routes learned via LSA type 3s are denoted

Inter-Area routes

39

slide-112
SLIDE 112

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area

40

slide-113
SLIDE 113

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area

40

slide-114
SLIDE 114

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area

41

slide-115
SLIDE 115

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

LSA3 Area 0 / Backbone Area Stub Area Totally Stubby Area

41

slide-116
SLIDE 116

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area

41

slide-117
SLIDE 117

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

LSA3 Area 0 / Backbone Area Stub Area Totally Stubby Area

42

slide-118
SLIDE 118

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

LSA3 Area 0 / Backbone Area Stub Area Totally Stubby Area

43

slide-119
SLIDE 119

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area

43

slide-120
SLIDE 120

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

LSA3 Area 0 / Backbone Area Stub Area Totally Stubby Area

44

slide-121
SLIDE 121

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area

44

slide-122
SLIDE 122

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area

45

slide-123
SLIDE 123

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area LSA3

45

slide-124
SLIDE 124

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area LSA3

46

slide-125
SLIDE 125

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 3: Summary LSAs

Area 0 / Backbone Area Stub Area Totally Stubby Area LSA3

46

slide-126
SLIDE 126

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 1+3:

  • Routers only see the topology of own area
  • When a link in one area changes, the adjacent routers
  • riginate in LSA 1‘s; flood them within the area,

causing intra-area (internal) routers to re-run the Dijkstra

  • ABRs do not announce topological information

between areas.

  • ABRs only inject routing information into other areas

47

slide-127
SLIDE 127

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 1+3:

  • ABRs calculate intra-area routes for directly attached

areas; announce them to all other areas as inter-area routes, using LSA Type 3

  • ABRs announces inter-area routes that were learned

from the backbone/area 0.

  • Backbone/area 0 serves as a repository for inter-area

routes.

  • This keeps OSPF safe from routing loops.

48

slide-128
SLIDE 128

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 5: AS External LSA

  • Originated by the ASBR
  • Describes destination networks, external to

this AS

  • Flooded throughout the backbone (Area 0)

(thus, to other ABRs) and all other areas except stub and totally stubby areas

49

slide-129
SLIDE 129

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Stub Area Totally Stubby Area

50

slide-130
SLIDE 130

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Stub Area Totally Stubby Area LSA5

50

slide-131
SLIDE 131

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Stub Area Totally Stubby Area LSA5 LSA5 LSA5

51

slide-132
SLIDE 132

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Stub Area Totally Stubby Area LSA5 LSA5 LSA5

52

slide-133
SLIDE 133

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Stub Area Totally Stubby Area LSA5

52

slide-134
SLIDE 134

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Stub Area Totally Stubby Area

53

slide-135
SLIDE 135

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area

53

slide-136
SLIDE 136

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area

54

slide-137
SLIDE 137

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area LSA5

54

slide-138
SLIDE 138

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area LSA5 LSA5 LSA5

55

slide-139
SLIDE 139

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area LSA5 LSA5 LSA5

56

slide-140
SLIDE 140

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area LSA5 LSA5 LSA5 LSA5

56

slide-141
SLIDE 141

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area LSA5 LSA5 LSA5

56

slide-142
SLIDE 142

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area LSA5 LSA5

57

slide-143
SLIDE 143

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Ext. AS Area 0 / Backbone Area Totally Stubby Area LSA5 LSA5 LSA4

57

slide-144
SLIDE 144

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

LSA Type 4: ASBR Summary-LSA

  • Originated by ABRs when an ASBR is

present to let other areas know where the ASBR is.

  • Handled just like summary-LSAs (Type 3)

58

slide-145
SLIDE 145

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

59

slide-146
SLIDE 146

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

59

slide-147
SLIDE 147

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

E.g. Ethernet: create n(n-1)/2 adjacencies! Consider flooding process: lots of unnecessary LSAs

59

slide-148
SLIDE 148

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

Elect Designated Router to represent network segment

60

slide-149
SLIDE 149

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

Elect Designated Router to represent network segment

60

slide-150
SLIDE 150

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

Elect Designated Router to represent network segment

60

slide-151
SLIDE 151

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Designated Router

  • Represent the LAN segment
  • Elected as part of HELLO protocol
  • Send Network LSAs
  • List all local routers
  • Synchronizes (DB Exchange) with all local

routers

61

slide-152
SLIDE 152

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Designated Router

  • The only router on segment sending LSAs to

the rest of the network

62

slide-153
SLIDE 153

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

Backup Designated Router - as .... backup

63

slide-154
SLIDE 154

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

Backup Designated Router - as .... backup

63

slide-155
SLIDE 155

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Multi-Access Media

Backup Designated Router - as .... backup

63

slide-156
SLIDE 156

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Backup and Designated Router

  • All routers establish adjacency to DR, BDR
  • BDR also establish adjacency to DR
  • Only DR sends LSAs, still, BDR is just there

if the DR fails

64

slide-157
SLIDE 157

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

DR and BDR Election

  • Starts if HELLO packets received do not list

DR/BDR

  • If DR/BDR already chosen, new router

(even with higher priority) does not change election

  • Yes, boot-up sequence matters ;)

65

slide-158
SLIDE 158

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

DR and BDR Election

66

slide-159
SLIDE 159

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Autonomous Systems

  • A region of the Internet administered by a single

entity.

  • Examples of autonomous regions are:
  • X’s campus network
  • Frees backbone network
  • Routing is done differently within an autonomous

system (intradomain routing) and between autonomous system (interdomain routing).

67

slide-160
SLIDE 160

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

68

slide-161
SLIDE 161

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

Intradomain routing

  • Internals of an AS never revealed outside AS
  • An EGP such as BGP does therefore not

seek optimal paths, but just any path

  • Intradomain routing is another, large,

subject; we will touch on that when we talk peering at Lecture 7 ....

69

slide-162
SLIDE 162

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

So what did we do?

  • Dijkstra is fine, but scaling world-wide is big:
  • ASes, IGB, EGP
  • Even ASes can become big:
  • Areas, different LSA types, area types
  • Some (flooding? topology?) reduction for

broadcast links

70

slide-163
SLIDE 163

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

So what will we do?

  • We saw some (flooding? topology?)

reduction for broadcast links (DR, BDR)

  • The exercises for this afternoon are simple:
  • Understand OSPF behavior well enough to

conceive of a modus operandi over non- transitive non-broadcast links.

71

slide-164
SLIDE 164

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

What Haven’t We Covered .....

  • Not So Stubby Areas (NSSAs)
  • Virtual Links
  • Non-Broadcast Multiple Access (NBMA)

links

  • Multicast
  • Security
  • ......

72

slide-165
SLIDE 165

thomas@thomasclausen.org http://www.thomasclausen.org mark@townsley.net http://www.townsley.net/

73