Networking Layers Heterogeneity: Abstraction: Flexibility: - - PowerPoint PPT Presentation

networking layers
SMART_READER_LITE
LIVE PREVIEW

Networking Layers Heterogeneity: Abstraction: Flexibility: - - PowerPoint PPT Presentation

Networking Layers Heterogeneity: Abstraction: Flexibility: Multiple link-types App is link-type agnostic E.g. multiple Transports, e2e hidden by L3 Application Application Transp. Transp. Transp. Transp. Network Network Network


slide-1
SLIDE 1

Networking Layers

Application Network

ATM Ethernet

Network

Avian Carrier

Application Transp. Network

TokenRing Abstraction: App is link-type agnostic Heterogeneity: Multiple link-types “hidden” by L3 Flexibility: E.g. multiple Transports, e2e

Transp.

  • Transp. Transp.

Link Link Link Link Link Link

1

slide-2
SLIDE 2

Shortest Path Routing

u v x y z w 1 2 2 3 5 5 1 1 3 2 Find “good” paths from source to destination router

2

slide-3
SLIDE 3

Destination-Based Forwarding

1 2 3

Dst Egress Link A 1 B 2 C 3 D 1 E 3

A B C D E F

Dst Egress Link F 2 B 1 C 2 D 1 E 1

1 2

3

slide-4
SLIDE 4

4

Mark Townsley

Tunnels

4

slide-5
SLIDE 5

Objectives

  • Understand how and why tunnels are used in the Internet
  • Understand the basic components of a tunneling protocol
  • Walk through the specific case of tunneling PPP

5

slide-6
SLIDE 6

We build them…

When and where we think we need them for specific purposes

6

slide-7
SLIDE 7

What goes in should come out..

Tunnels act like the layer below that which they are carrying Often not perfectly, but “good enough” for a specific purpose IP tunnels act like Data Link Layers

7

slide-8
SLIDE 8

They provide us a Layer of Indirection

All problems in computer science can be solved by another level of indirection… …except for the problem of too many levels of indirection

  • David Wheeler

8

slide-9
SLIDE 9

They have a

9

slide-10
SLIDE 10

Tunneling Protocol Components

  • Identifying and synchronizing the endpoints

IP address, Session ID, etc. Control Protocols, mapping algorithms, manual config

  • Bits on the wire and forwarding

Typically involves encapsulation, but encapsulation != tunneling

  • Also: Troubleshooting, diagnostics, etc…

10

slide-11
SLIDE 11

Tunneling Protocol Components

  • Identifying and synchronizing the endpoints

IP address, Session ID, etc. Control Protocols, mapping algorithms, manual config

  • Bits on the wire and forwarding

Typically involves encapsulation, but encapsulation != tunneling

  • Also: Troubleshooting, diagnostics, etc…

“MAP”

10

slide-12
SLIDE 12

Tunneling Protocol Components

  • Identifying and synchronizing the endpoints

IP address, Session ID, etc. Control Protocols, mapping algorithms, manual config

  • Bits on the wire and forwarding

Typically involves encapsulation, but encapsulation != tunneling

  • Also: Troubleshooting, diagnostics, etc…

“MAP” +

10

slide-13
SLIDE 13

Tunneling Protocol Components

  • Identifying and synchronizing the endpoints

IP address, Session ID, etc. Control Protocols, mapping algorithms, manual config

  • Bits on the wire and forwarding

Typically involves encapsulation, but encapsulation != tunneling

  • Also: Troubleshooting, diagnostics, etc…

“MAP” “ENCAP” +

10

slide-14
SLIDE 14

Tunnels – always a tradeoff

  • Indirection

Good: Scalability, “Mobility”, “Traffic Engineering”, etc. Bad: Managing when and where to indirect to (mapping)

  • Adaptation

Good: Overlays allow transition to new technologies, sunsetting old Bad: Layer violation, introduces emulation artifacts

  • Obfuscation

Good: The “P” in VPNs Bad: Breaks Deep Packet Inspection, Netflow, SPF, etc.

11

slide-15
SLIDE 15

Indirection – Mobile IP

12

slide-16
SLIDE 16

Indirection – RSVP-TE

13

slide-17
SLIDE 17

Indirection – RSVP-TE

14

slide-18
SLIDE 18

Indirection – RSVP-TE

15

slide-19
SLIDE 19

16

Label Exp S TTL

MPLS Encapsulation (Labels)

Label Exp S TTL Label Exp S TTL Label Exp S TTL

MPLS PDU (IP packet, L2-Frame, etc) Data Link (Ethernet, PPP, Sonet, etc..)

16

slide-20
SLIDE 20

Adaptation – IPv4 in IPv6

  • While incompatible on the wire, IPv4 and

IPv6 are both still “philosophically” IP

17

slide-21
SLIDE 21

IPv4-Only Network IPv4-Only Network IPv4-Only Users

NAT

NAT

IPv6-Only IPv6-Only Users

CE

Dual Stack Network Dual-Stack Users

PE PE

CE

Dual Stack Transition Leap

18

slide-22
SLIDE 22

IPv4-Only Network IPv4-Only Network IPv4-Only Users

NAT

NAT

IPv6-Only Dual Stack Network IPv6-Only Users

CE

6↔4

Dual Stack Network IPv4 Only Dual-Stack Users Dual-Stack Users IPv6 Only Dual Stack Network Dual Stack Network Dual-Stack Users

PE PE

CE CE CE

Transition Steps Instead of Leaps…

19

slide-23
SLIDE 23

Evolution of MAP in the IETF

20

slide-24
SLIDE 24

21

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 Ve Versio Version rsion IHL IHL IHL TO TOS TOS S Tota Total len tal length length th Iden Identifica entification ication ion Flags Flags Flags Frag Fragme ragment o ment offse t offset set TTL TTL TTL Pro Protoco Protocol ==

  • col == 0x2

l == 0x2F == 0x2F (GR F (GRE) RE) Hea Header eader che er checksu checksum cksum m Sou Source Source IP rce IP add P address dress (Lo ss (Local (Local add cal address ddress on ss on PE n PE rou PE router) uter) r) Desti Destinati stination I ation IP ad IP addre address (L ress (Loca ss (Local ad cal addre address o ress on PE ss on PE ro PE route PE router) ter)

Tunnel IP

C R K S s Recur Flags Version Protocol (0x800 for IP) Checksum (O cksum (Optional) Offset (Optional) Key (Opt y (Optional) Sequ Sequence Numb Number (Optional) Routing : uting ::: (Variable riable length, Optional)

GRE

Address Family SRE Offset SRE Length Routing Information (V tion (Variable length) :::

Adaptation - Generic Routing Encapsulation (GRE)

21

slide-25
SLIDE 25

22

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 Ve Versio Version rsion IHL IHL IHL TO TOS TOS S Tota Total len tal length length th Iden Identifica entification ication ion Flags Flags Flags Frag Fragme ragment o ment offse t offset set TTL TTL TTL Pro Protoco Protocol ==

  • col == 0x2

l == 0x2F == 0x2F (GR F (GRE) RE) Hea Header eader che er checksu checksum cksum m Sou Source Source IP rce IP add P address dress (Lo ss (Local (Local add cal address ddress on ss on PE n PE rou PE router) uter) r) Desti Destinati stination I ation IP ad IP addre address (L ress (Loca ss (Local ad cal addre address o ress on PE ss on PE ro PE route PE router) ter)

Tunnel IP MPLS PDU

GRE Label Exp S TTL

MPLS VPN Label

MPLS over GRE

MPLS PDU (IP packet for RFC 2547)

Rec = 0 Flags = 0 Ver = 0 Protocol = 0x8847 22

slide-26
SLIDE 26

23

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 Ve Versio Version rsion IHL IHL IHL TO TOS TOS S Tota Total len tal length length th Iden Identifica entification ication ion Flags Flags Flags Frag Fragme ragment o ment offse t offset set TTL TTL TTL Pro Protoco Protocol == col == MPL == MPLS MPLS (TBD MPLS (TBD) (TBD) Hea Header eader che er checksu checksum cksum m Sou Source Source IP rce IP add P address dress (Lo ss (Local (Local add cal address ddress on ss on PE n PE rou PE router) uter) r) Desti Destinati stination I ation IP ad IP addre address (L ress (Loca ss (Local ad cal addre address o ress on PE ss on PE ro PE route PE router) ter)

Tunnel IP MPLS PDU

Label Exp S TTL

MPLS VPN Label

MPLS over IP

MPLS PDU (IP packet for RFC 2547)

23

slide-27
SLIDE 27

PPP

24

slide-28
SLIDE 28

PPP Link Phases as “Layers”

25

slide-29
SLIDE 29

PPP Link Phases

26

slide-30
SLIDE 30

PPP State

27

slide-31
SLIDE 31

PPP Configuration Negotiation Messages

  • Configure-Request

“The system sending Configure-Request is telling the peer system that it is willing to receive data sent with the enclosed options enabled.”

  • Configure-Ack

“if all of the options are acceptable, the peer then responds with Configure-Ack with exactly the same option list as given in the Configure-Request to indicate that all of the enclosed

  • ptions were acceptable and that all are now enabled.”
  • Configure-Nak

“If some of the options were recognized but unacceptable with the supplied parameters, the peer would then respond with a Configure-Nak containing only the offending options and a suggested modified value for the parameters (called a hint). The receiver of the Configure- Nak then should decide if the hinted value is acceptable and, if so, send a new Configure- Request reflecting the requested changes plus the original values for the unchanged options.”

  • Configure-Reject

“If the peer does not recognize (or administratively prohibits) one or more of the options in the Configure-Request message, it must return just these options in a Configure- Reject message and the original sender must then remove the options from sub- sequent Configure-Request messages.”

28

slide-32
SLIDE 32

PPP Negotiation Example

29

slide-33
SLIDE 33

30

slide-34
SLIDE 34

6rd

30

slide-35
SLIDE 35

6rd

L2TP UDP IP

30

slide-36
SLIDE 36

30

slide-37
SLIDE 37

L2TP

30

slide-38
SLIDE 38

L2TP

30

slide-39
SLIDE 39

L2TP – “Voluntary Tunneling”

http://www.interpeak.com/files/l2tp.pdf

31

slide-40
SLIDE 40

L2TP – “Compulsory Tunneling”

http://www.interpeak.com/files/l2tp.pdf

32

slide-41
SLIDE 41

L2TP

Scale Purpose

Non-PPP IPv6 Trans Access/ISP decoupling “L2F replacement” Client VPNs “PPTP replacement” Broadband

33

slide-42
SLIDE 42

5218 Case Study: L2TP

Factor L2TP Incremental deployability Yes Positive net value Yes No close competitors No – L2F, PPTP, IPsec Good technical design Average Threats sufficiently mitigated No (only with Ipsec) Restriction-free Yes Open spec availability Yes Open maintenance process Yes Extensible Yes (TLVs, L2TPv3) No scalability bound No (64K sessions within a Tunnel)

34

slide-43
SLIDE 43

Obfuscation - IPSec

  • IPsec is a suite of protocols for securing network

connections.

  • Network layer security for both IPv4 and IPv6

datagrams

  • Provides confidentiality, data integrity, access control,

and data source authentication to IP datagrams.

  • Two encapsulations are used in IPSec AH and ESP
  • IKE (Internet Key Exchange) provides tunnel setup,

key exchange, etc. (not discussed in depth today)

35

slide-44
SLIDE 44

Thanks to Steve Friedl for the Graphics!

36

slide-45
SLIDE 45

37

slide-46
SLIDE 46

Transport Mode Tunnel Mode

38

slide-47
SLIDE 47

39

slide-48
SLIDE 48

40

slide-49
SLIDE 49

IPsec AH and NAT?

41

slide-50
SLIDE 50

IPsec AH and NAT?

41

slide-51
SLIDE 51

IPsec AH and NAT?

41

slide-52
SLIDE 52

AH Loses,

But! This still requires an IPsec “ALG” in your NAT!

42

slide-53
SLIDE 53

43

slide-54
SLIDE 54

44

slide-55
SLIDE 55

44

slide-56
SLIDE 56

45

slide-57
SLIDE 57

45

slide-58
SLIDE 58

http://www.cisco.com/image/gif/paws/14370/vpn3k_ipsec_tcp.pdf

46

slide-59
SLIDE 59

Tunnels – always a tradeoff

  • Indirection

Good: Scalability, Mobility, etc. Bad: Managing where to indirect to and when (mapping)

  • Adaptation

Good: Overlays allow transition to new technologies, sunsetting old Bad: Layer violation, introduces emulation artifacts

  • Obfuscation

Good: The “P” in VPNs Bad: Breaks Deep Packet Inspection, Netflow, SPF, etc.

  • Indirection

MPLS-TE, Mobile IP, LISP, ILNP, …

  • Adaptation

6rd, MAP, Pseudowires, L2TP, PPTP

  • Obfuscation

IPsec, MPLS VPNs

47

slide-60
SLIDE 60

Objectives

  • Understand how and why tunnels are used in the Internet

Need-driven, not a fundamental part of the Internet Architecture VPNs, Emulation, Transition, Mobilty, etc.

  • Understand the basic components of a tunneling protocol

Endpoints + Forwarding (MAP + ENCAP), State Sync, etc.

  • Walk through the specific case of tunneling PPP

PPP – Link phases, Configuration negotiation L2TP and PPTP - Compulsory vs. Voluntary tunneling 5218 - Was L2TP Successful?

48