CSCD58 W INTER 2018 W EEK 6 - N ETWORK L AYER P ART 1 Brian - - PowerPoint PPT Presentation

cscd58 w inter 2018
SMART_READER_LITE
LIVE PREVIEW

CSCD58 W INTER 2018 W EEK 6 - N ETWORK L AYER P ART 1 Brian - - PowerPoint PPT Presentation

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6 CSCD58 W INTER 2018 W EEK 6 - N ETWORK L AYER P ART 1 Brian Harrington University of Toronto Scarborough February 13, 2018 Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP


slide-1
SLIDE 1

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

CSCD58 WINTER 2018

WEEK 6 - NETWORK LAYER PART 1 Brian Harrington

University of Toronto Scarborough

February 13, 2018

slide-2
SLIDE 2

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

ADMIN

  • Assignments
  • Midterm after reading week (Feb 27)
  • In class
  • Covering everything up-to transport layer (i.e., not this

week’s material)

  • No lecture or tutorials that week
slide-3
SLIDE 3

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

CONNECTION VS CONNECTION-LESS

  • Recall: In Transport layer we had 2 options:
  • UDP: Connectionless - just send data out
  • TCP: Connection-oriented: establish a connection first
  • In Network Layer, we also have 2 options:
  • Datagram: Let the data find its own way
  • Virtual Circuit (VC): Establish end-to-end pathway first
  • Actually... we don’t have any choice. Network is either

Datagram or VC, implemented in network core.

slide-4
SLIDE 4

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

VIRTUAL CIRCUIT NETWORKS

  • Try to emulate behaviour of circuit switched network
  • Set up call before (tear down after)
  • Each VC path segment has unique number
  • Packet only has to hold VC number (not source or dest)
  • Routers keep state of each VC
  • Can allocate resources (bandwidth, buffers, etc) to each

VC = predictable, reliable circuit-switching-like performance

  • Example
slide-5
SLIDE 5

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

VIRTUAL CIRCUIT

slide-6
SLIDE 6

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

DATAGRAM

  • No call setup
  • Routers don’t need to keep any state info
  • At each point, packets are forwarded using host address
  • Routers can’t know all 4 billion + IP addresses
  • List range instead
  • Example
slide-7
SLIDE 7

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

DATAGRAM EXAMPLE

  • 11001000 00010111 00010110 10100001
  • 11001000 00010111 00011000 10101010
  • 11001000 00010111 00001011 00110101
slide-8
SLIDE 8

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

DATAGRAM OR VC?

  • VC
  • Smart network core, dumb end systems
  • Complexity inside network
  • Can provide timing, reliability guarantees
  • Used in Asynchronous Transfer Mode (ATM) networks
  • Network World 2001: “I give Ethernet six months before the

whole thing is gone”... “This is just not going to work, ATM is going to dominate”

  • Datagram
  • Smart end systems, dumb core
  • “Complexity at the edge”
  • Elastic/flexible
  • Most importantly? Cheap!
  • Internet standard
slide-9
SLIDE 9

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

FORMAT OF IP DATAGRAM

slide-10
SLIDE 10

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

FORMAT OF IP DATAGRAM

slide-11
SLIDE 11

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IP FRAGMENTATION

  • Not everyone can carry packets of the same size
  • Ethernet: 1500 bytes
  • WLAN (802.11): 7891 bytes
  • Some WANs: 576 bytes
  • Sometimes we’ll need to fragment packets and put them

back together later

slide-12
SLIDE 12

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IP FRAGMENTATION

slide-13
SLIDE 13

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IP FRAGMENTATION

slide-14
SLIDE 14

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IP: INTERNET PROTOCOL

  • Note: Focusing on IP v4 (we’ll discuss IPv6 later)
  • Each interface identified by 32-bit number
  • Interface: connection between host/router and physical link
  • routers usually have many interfaces
  • hosts usually have 1-2 (e.g,. ethernet + wifi)
  • 223.1.2.1 = 11011111 00000001 00000010 00000001
slide-15
SLIDE 15

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

SUBNETS

  • subnet: group of device interfaces with same higher order

part of IP address

  • interfaces on a subnet can talk to each other without

intervening router

slide-16
SLIDE 16

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

SUBNETS

  • subnet: group of device interfaces with same higher order

part of IP address

  • interfaces on a subnet can talk to each other without

intervening router

slide-17
SLIDE 17

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

SUBNETS

  • Pop quiz: how many subnets? What are their masks?
slide-18
SLIDE 18

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

DHCP: DYNAMIC HOST CONFIGURATION PROTOCOL

  • Hosts should be mobile
  • Want to dynamically obtain IP address from local network

server when you join a network

  • Each host leases an address (can renew periodically)
  • Allows reuse of addresses (when lease expires, address is

up-for-grabs

slide-19
SLIDE 19

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

DHCP

  • Basic Steps:
  • host broadcasts: DHCP discover [optional]
  • DHCP server responds: DHCP offer [optional]
  • host requests: DHCP request
  • DHCP server sends: DHCP ack
slide-20
SLIDE 20

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

DHCP

  • 255.255.255.255 = broadcast to entire subnet
slide-21
SLIDE 21

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

slide-22
SLIDE 22

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

CIDR: CLASSLESS INTERDOMAIN ROUTING

  • So how do we get IP addresses in the first place?
  • ISP gets allocated a block by ICANN (Internet Corporation

for Assigned Names and Numbers) http://www.icann.org/

  • Organization (could also be ISP) gets a sub-block

ISP’s block 11001000 00010111 00010000 00000000 200.23.16.0/20 Organization 0 11001000 00010111 00010000 00000000 200.23.16.0/23 Organization 1 11001000 00010111 00010010 00000000 200.23.18.0/23 Organization 2 11001000 00010111 00010100 00000000 200.23.20.0/23 ... ... ... Organization 7 11001000 00010111 00011110 00000000 200.23.30.0/23

slide-23
SLIDE 23

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

CIDR

  • Hierarchical Addressing
  • Allows efficient advertising of routing information
  • But what if an organization wants to move?
slide-24
SLIDE 24

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

CIDR

  • No problem, just go with whoever has the most specific

route

slide-25
SLIDE 25

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

  • Not every interface needs a unique IP
  • Not enough addresses to go around
  • IPv4 - 232 ∼ 4.2 billion addresses
  • Too much work to keep track of every update
  • Solution: “hide” network behind a single ISP
  • To the rest of the world: whole network has 1 address
  • Inside network: We’ve got loads of room
slide-26
SLIDE 26

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

slide-27
SLIDE 27

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

slide-28
SLIDE 28

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

  • Benefits of NAT
  • Only need 1 IP address from ISP
  • Can change addresses of local devices without notifying
  • utside world
  • Can change ISPs without affecting local network
  • Devices inside network not directly accessible/visible to
  • utside world (good for security)
slide-29
SLIDE 29

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

  • Idea: Translate each local IP + port number into public port

number

  • Outgoing:

nat_sourceip +nat_sourceport → externalip +externalport

  • Incoming:

externalip +externalport → nat_sourceip +nat_sourceport

slide-30
SLIDE 30

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

slide-31
SLIDE 31

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

slide-32
SLIDE 32

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

slide-33
SLIDE 33

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

slide-34
SLIDE 34

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

NAT: NETWORK ADDRESS TRANSLATION

slide-35
SLIDE 35

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

ICMP: INTERNET CONTROL MESSAGE PROTOCOL

  • Simple messages sent at

network level

  • Sort of like a pseudo-layer

between Transport and Network layers

  • Useful for a lot of low-level

functions

Type Code description echo reply (ping) 3

  • dest. network unreachable

3 1 dest host unreachable 3 2 dest protocol unreachable 3 3 dest port unreachable 3 6 dest network unknown 3 7 dest host unknown 4 source quench (congestion control - not used) 8 echo request (ping) 9 route advertisement 10 router discovery 11 TTL expired 12 bad IP header

slide-36
SLIDE 36

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

ICMP & TRACEROUTE

  • Traceroute is implemented in ICMP
  • Less overhead to use bandwidth/mess up timings
  • Idea: use TTL field
  • When TTL expires, router sends back ICMP 11-0:

TTL expired, with router info attached

  • Send out UDP segment with TTL = 1, get info of first router
  • Send out UDP segment with TTL = 2, get info of second

router

  • Eventually, reach destination, pick unlikely port#. Host will

send back ICMP 3-3: Dest port unreachable

slide-37
SLIDE 37

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IPV6

  • IPv4’s 32-bit address space “soon to be” used up
  • (actually practically exhausted in 2011)
  • Updated header format to improve speed
  • Better processing, faster forwarding, get rid of unused fields
  • Can add QoS info
slide-38
SLIDE 38

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IPV6

  • fixed length header
  • no fragmentation allowed
  • datagrams form a flow
  • Not really well defined
  • No checksum (let TCP handle that)
  • Options indicated by next_hdr field (held inside data)
  • Major difference: 128bit addressing = 2128 ≈ 3.4x1028

addresses

slide-39
SLIDE 39

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IPV6

slide-40
SLIDE 40

Admin VC vs Datagram IP DHCP Break CIDR NAT ICMP IPv6

IPV6

  • 1996 - defined (RFC 1883)
  • 2011 - IPv4 exhausted, plans for IPv6 to take over bulk of

networking traffic by the end of the year

  • 2017 - We’ve finally reached a milesone...
  • (of 20% adoption)