SlideShare a Scribd company logo
1 of 57
CSE 390 – Advanced
Computer Networks
Lecture 5: Network Layer
(Putting the Net in Internet)
Based on slides from D. Choffnes Northeastern
U. Revised Fall 2014 by P. Gill
Reminders/logistics
2
 Assignment 1 due today. Submit in class or bring
to my office.
 Assignment 2 coming soon…
 Expect more information about assignment
environment by Friday
 1 VM per student; Brian Tria will coordinate with you
by Friday.
Network Layer
3
 Function:
 Route packets end-to-end on a
network, through multiple hops
 Key challenge:
 How to represent addresses
 How to route packets
 Scalability
 Convergence
Applicatio
n
Presentatio
n
Session
Transport
Network
Data Link
Physical
Routers, Revisited
4
 How to connect
multiple LANs?
 LANs may be
incompatible
 Ethernet, Wifi, etc…
 Connected networks
form an internetwork
 The Internet is the
best known example
Routers
Structure of the Internet
5
 Ad-hoc interconnection of networks
 No organized topology
 Vastly different technologies, link capacities
 Packets travel end-to-end by hopping through networks
 Routers “peer” (connect) different networks
 Different packets may take different routes
Network 2
Network 1
Network 3
Network 4
Internetworking Issues
6
 Naming / Addressing
 How do you designate hosts?
 Routing
 Must be scalable (i.e. a switched Internet won’t work)
 Service Model
 What gets sent?
 How fast will it go?
 What happens if there are failures?
 Must deal with heterogeneity
 Remember, every network is different
Internet Service Model
• Best-effort (i.e. things may break)
• Store-and-forward datagram network
Lowest common denominator
 Addressing
 Class-based
 CIDR
 IPv4 Protocol Details
 Packed Header
 Fragmentation
 IPv6
Outline
7
Possible Addressing Schemes
8
 Flat
 e.g. each host is identified by a 48-bit MAC address
 Router needs an entry for every host in the world
 Too big
 Too hard to maintain (hosts come and go all the time)
 Too slow (more later)
 Hierarchy
 Addresses broken down into segments
 Each segment has a different level of specificity
Example: Telephone Numbers
9
1-617-373-1234
West Village H
Room 256
Very General
Very Specific
West Village G
Room 1234
3278
Updates are Local
Binary Hierarchy Example
10
1**
10*
11*
100
101
110
111
0**
00*
01*
000
001
010
011
Datagram,
Destination = 101
IP Addressing
11
 IPv4: 32-bit addresses
 Usually written in dotted notation, e.g. 192.168.21.76
 Each number is a byte
 Stored in Big Endian order
11000000
C0
192
10101000
A8
168
00010101
15
21
01001100
4C
76
Decimal
Hex
Binary
0 8 16 24 31
IP Addressing and Forwarding
12
 Routing Table Requirements
 For every possible IP, give the next hop
 But for 32-bit addresses, 232 possibilities!
 Too slow: 48GE ports and 4x10GE needs 176Gbps
bandwidth
DRAM: ~1-6 Gbps; TCAM is fast, but 400x cost of DRAM
 Hierarchical address scheme
 Separate the address into a network and a host
Host
Network
Pfx
0 31
Known by
all routers
Known by edge
(LAN) routers
Classes of IP Addresses
13
 Class A Host
Ntwk
0
0 31
1 8
Example: MIT
18.*.*.*
1-126
 Class B Host
Network
10
0 31
2 16
Example: NEU
129.10.*.*
128-191
8
 Class C Host
Network
110
0 31
3 24
Example:
216.63.78.*
192-223
8
16
16
24
24
How Do You Get IPs?
14
 IP address ranges controlled by IANA
 Internet Assigned Number Authority
 Roots go back to 1972, ARPANET, UCLA
 Today, part of ICANN
 IANA grants IPs to regional authorities
 ARIN (American Registry of Internet Numbers) may grant
you a range of IPs
 You may then advertise routes to your new IP range
 There are now secondary markets, auctions, …
Two Level Hierarchy
15
…
…
Host
Network
Subtree size
determined by
network class
Pfx
Class Sizes
16
Class Prefix
Bits
Network
Bits
Number of Classes Hosts per Class
A 1 7 27 – 2 = 126
(0 and 127 are reserved)
224 – 2 = 16,777,214
(All 0 and all 1 are reserved)
B 2 14 214 = 16,398 216 – 2 = 65,534
(All 0 and all 1 are reserved)
C 3 21 221 = 2,097,512 28 – 2 = 254
(All 0 and all 1 are reserved)
Total: 2,114,036
Too many
network IDs
Too small to
be useful
Way too big
Subnets
17
 Problem: need to break up large A and B classes
 Solution: add another layer to the hierarchy
 From the outside, appears to be a single network
 Only 1 entry in routing tables
 Internally, manage multiple subnetworks
 Split the address range using a subnet mask
Host
Ntwk
Pfx Subnet
11111111 11111111 11000000 00000000
Subnet Mask:
Subnet Example
18
 Extract network:
 Extract host:
10110101 11011101 01010100 01110010
IP Address:
& 11111111 11111111 11000000 00000000
Subnet Mask:
10110101 11011101 01000000 00000000
Result:
10110101 11011101 01010100 01110010
IP Address:
& ~(11111111 11111111 11000000 00000000)
Subnet Mask:
00000000 00000000 00010100 01110010
Result:
N-Level Subnet Hierarchy
19
…
…
Host
Network
Pfx
Subtree size
determined by length
of subnet mask
Subnet
…
• Tree does not have a fixed depth
• Increasingly specific subnet masks
Example Routing Table
20
Address Pattern Subnet Mask Destination Router
0.0.0.0 0.0.0.0 Router 4
18.0.0.0 255.0.0.0 Router 2
128.42.0.0 255.255.0.0 Router 3
128.42.128.0 255.255.128.0 Router 5
128.42.222.0 2555.255.255.0 Router 1
 Question: 128.42.222.198 matches four rows
 Which router do we forward to?
 Longest prefix matching
 Use the row with the longest number of 1’s in the mask
 This is the most specific match
Subnetting Revisited
21
 Question: does subnetting solve all the problems
of class-based routing?
NO
 Classes are still too coarse
 Class A can be subnetted, but only 126 available
 Class C is too small
 Class B is nice, but there are only 16,398 available
 Routing tables are still too big
 2.1 million entries per router
Classless Inter Domain Routing
22
 CIDR, pronounced ‘cider’
 Key ideas:
 Get rid of IP classes
 Use bitmasks for all levels of routing
 Aggregation to minimize FIB (forwarding information
base)
 Arbitrary split between network and host
 Specified as a bitmask or prefix length
 Example: Northeastern
 129.10.0.0 with netmask 255.255.0.0
 129.10.0.0 / 16
Aggregation with CIDR
23
 Original use: aggregating class C ranges
 One organization given contiguous class C ranges
 Example: Microsoft, 207.46.192.* – 207.46.255.*
 Represents 26 = 64 class C ranges
 Specified as CIDR address 207.46.192.0/18
11001111
CF
207
00101110
2E
46
11xxxxxx
C0
192
xxxxxxxx
00
0
Decimal
Hex
Binary
0 8 16 24 31
18 Bits Frozen By Netmask 14 Arbitrary Bits
Example CIDR Routing Table
24
Address Netmask Third Byte Byte Range
207.46.0.0 19 000xxxxx 0 – 31
207.46.32.0 19 001xxxxx 32 – 63
207.46.64.0 19 010xxxxx 64 – 95
207.46.128.0 18 10xxxxxx 128 – 191
207.46.192.0 18 11xxxxxx 192 – 255
Hole in the Routing Table: No coverage for 96 – 127
207.46.96.0/19
Size of CIDR Routing Tables
25
 From www.cidr-report.org
 CIDR has kept IP routing table sizes in check
 Currently ~500,000 entries for a complete IP routing table
 Only required by backbone routers
We had a special day this
summer!
26
 512K day – August 12, 2014
 Default threshold size for IPv4 route data in older
Cisco routers  512K routes
 Some routers failed over to slower memory
 RAM vs. CAM (content addressable memory)
 Some routes dropped
 Cisco issues update in May anticipating this issue
 Reallocated some IPv6 space for IPv4 routes
 http://cacm.acm.org/news/178293-internet-routing-failures-bring-
architecture-changes-back-to-the-table/fulltext
Causes and solutions
27
 Traffic engineering
 Sometimes I want to announce different prefixes to
different neighbors (e.g., use multiple longer prefixes)
 Security
 E.g., announce two /9s in addition to a /8 to help prevent
dark-space hijacks
 New markets
 New networks in regions like Africa, Middle East, etc. with
their own prefixes
 Solutions
 Stop-gap: update router to reallocate IPv6 memory
 Route aggregation/prefix filtering
 Upgrade routers with more memory ($$$$)
Takeaways
28
 Hierarchical addressing is critical for scalability
 Not all routers need all information
 Limited number of routers need to know about changes
 Non-uniform hierarchy useful for heterogeneous
networks
 Class-based addressing is too course
 CIDR improves scalability and granularity
 Implementation challenges
 Longest prefix matching is more difficult than schemes
with no ambiguity
 Addressing
 Class-based
 CIDR
 IPv4 Protocol Details
 Packed Header
 Fragmentation
 IPv6
Outline
29
IP Datagrams
30
 IP Datagrams are like a letter
 Totally self-contained
 Include all necessary addressing information
 No advanced setup of connections or circuits
Version HLen DSCP/ECN Datagram Length
0 8 16 24 31
4 12 19
Identifier Flags Offset
TTL Protocol Checksum
Source IP Address
Destination IP Address
Options (if any, usually not)
Data
IP Header Fields: Word 1
31
 Version: 4 for IPv4
 Header Length: Number of 32-bit words (usually 5)
 Type of Service: Priority information (unused)
 Datagram Length: Length of header + data in bytes
Version HLen DSCP/ECN Datagram Length
0 8 16 24 31
4 12 19
Identifier Flags Offset
TTL Protocol Checksum
Source IP Address
Destination IP Address
Options (if any, usually not)
Data
Limits
packets to
65,535 bytes
IP Header Fields: Word 3
32
 Time to Live: decremented by each router
 Used to kill looping packets
 Protocol: ID of encapsulated protocol
 6 = TCP, 17 = UDP
 Checksum
Version HLen DSCP/ECN Datagram Length
0 8 16 24 31
4 12 19
Identifier Flags Offset
TTL Protocol Checksum
Source IP Address
Destination IP Address
Options (if any, usually not)
Data
Used to
implement
trace route
IP Header Fields: Word 4 and 5
33
 Source and destination address
 In theory, must be globally unique
 In practice, this is often violated
Version HLen DSCP/ECN Datagram Length
0 8 16 24 31
4 12 19
Identifier Flags Offset
TTL Protocol Checksum
Source IP Address
Destination IP Address
Options (if any, usually not)
Data
Problem: Fragmentation
34
 Problem: each network has its own MTU
 DARPA principles: networks allowed to be heterogeneous
 Minimum MTU may not be known for a given path
 IP Solution: fragmentation
 Split datagrams into pieces when MTU is reduced
 Reassemble original datagram at the receiver
MTU = 2000
MTU = 4000 MTU = 1500
Datagram Dgram1 Dgram2 1 2 3 4
IP Header Fields: Word 2
35
 Identifier: a unique number for the original datagram
 Flags: M flag, i.e. this is the last fragment
 Offset: byte position of the first byte in the fragment
 Divided by 8
Version HLen TOS Datagram Length
0 8 16 24 31
4 12 19
Identifier Flags Offset
TTL Protocol Checksum
Source IP Address
Destination IP Address
Options (if any, usually not)
Data
Fragmentation Example
36
MTU = 2000
MTU = 4000 MTU = 1500
Data
Data
Data
IP Hdr
IP
IP
Length = 3820, M = 0
3800
20
Length = 2000, M = 1
Offset = 0
Length = 1840, M = 0
Offset = 1980
1980
20
1820
20
1980
+ 1820
= 3800
Fragmentation Example
37
MTU = 2000 MTU = 1500
Data
Data
IP
IP
Data
Data
IP
IP
Length = 2000, M = 1
Offset = 0
Length = 1840, M = 0
Offset = 1980
1980
20
1820
20
20
20 1480
500
Length = 520, M = 1
Offset = 1480
Length = 1500, M = 1
Offset = 0
Data
Data
IP
IP
20
20 1480
340
Length = 360, M = 0
Offset = 3460
Length = 1500, M = 1
Offset = 1980
1480
+ 500
= 1980
IP Fragment Reassembly
38
 Performed at destination
 M = 0 fragment gives us
total data size
 360 – 20 + 3460 = 3800
 Challenges:
 Out-of-order fragments
 Duplicate fragments
 Missing fragments
 Basically, memory
management nightmare
Data
IP
20 1480
Data
IP
20 500
Length = 520, M = 1, Offset = 1480
Length = 1500, M = 1, Offset = 0
Data
IP
20 1480
Data
IP
20 340
Length = 360, M = 0, Offset = 3460
Length = 1500, M = 1, Offset = 1980
Fragmentation Concepts
39
 Highlights many key Internet characteristics
 Decentralized and heterogeneous
 Each network may choose its own MTU
 Connectionless datagram protocol
 Each fragment contains full routing information
 Fragments can travel independently, on different paths
 Best effort network
 Routers/receiver may silently drop fragments
 No requirement to alert the sender
 Most work is done at the endpoints
 i.e. reassembly
Fragmentation in Reality
40
 Fragmentation is expensive
 Memory and CPU overhead for datagram reconstruction
 Want to avoid fragmentation if possible
 MTU discovery protocol
 Send a packet with “don’t fragment” bit set
 Keep decreasing message length until one arrives
 May get “can’t fragment” error from a router, which will
explicitly state the supported MTU
 Router handling of fragments
 Fast, specialized hardware handles the common case
 Dedicated, general purpose CPU just for handling
fragments
 Addressing
 Class-based
 CIDR
 IPv4 Protocol Details
 Packed Header
 Fragmentation
 IPv6
Outline
41
The IPv4 Address Space Crisis
42
 Problem: the IPv4 address space is too small
 232 = 4,294,967,296 possible addresses
 Less than one IP per person
 Parts of the world have already run out of addresses
 IANA assigned the last /8 block of addresses in 2011
Region
Regional Internet
Registry (RIR) Exhaustion Date
Asia/Pacific APNIC April 19, 2011
Europe/Middle East RIPE September 14, 2012
North America ARIN 13 Jan 2015 (Projected)
South America LACNIC 13 Jan 2015 (Projected)
Africa AFRINIC 17 Jan 2022(Projected)
IPv6
43
 IPv6, first introduced in 1998(!)
 128-bit addresses
 4.8 * 1028 addresses per person
 Address format
 8 groups of 16-bit values, separated by ‘:’
 Leading zeroes in each group may be omitted
 Groups of zeroes can be omitted using ‘::’
2001:0db8:0000:0000:0000:ff00:0042:8329
2001:0db8:0:0:0:ff00:42:8329
2001:0db8::ff00:42:8329
IPv6 Trivia
44
 Who knows the IP for localhost?
 127.0.0.1
 What is localhost in IPv6?
 ::1
IPv6 Header
45
 Double the size of IPv4 (320 bits vs. 160 bits)
Version DSCP/ECN Flow Label
0 8 16 24 31
4 12 19
Datagram Length Next Header Hop Limit
Source IP Address
Destination IP Address
Version = 6 Groups
packets into
flows, used
for QoS
Same as IPv4 Same as
Protocol in
IPv4
Same as TTL
in IPv4
Same as IPv4
Differences from IPv4 Header
46
 Several header fields are missing in IPv6
 Header length – rolled into Next Header field
 Checksum – was useless, so why keep it
 Identifier, Flags, Offset
 IPv6 routers do not support fragmentation
 Hosts are expected to use path MTU discovery
 Reflects changing Internet priorities
 Today’s networks are more homogeneous
 Instead, routing cost and complexity dominate
Performance Improvements
47
 No checksums to verify
 No need for routers to handle fragmentation
 Simplified routing table design
 Address space is huge
 No need for CIDR (but need for aggregation)
 Standard subnet size is 264 addresses
 Simplified auto-configuration
 Neighbor Discovery Protocol
 Used by hosts to determine network ID
 Host ID can be random!
Additional IPv6 Features
48
 Source Routing
 Host specifies the route to wants packet to take
 Mobile IP
 Hosts can take their IP with them to other networks
 Use source routing to direct packets
 Privacy Extensions
 Randomly generate host identifiers
 Make it difficult to associate one IP to a host
 Jumbograms
 Support for 4Gb datagrams
Deployment Challenges
49
 Switching to IPv6 is a whole-Internet upgrade
 All routers, all hosts
 ICMPv6, DHCPv6, DNSv6
 2013: 0.94% of Google traffic was IPv6, 2.5%
IPv4
TCP, UDP, ICMP
HTTP, FTP, SMTP, RTP, IMAP, …
Ethernet, 802.11x, DOCSIS, …
Fiber, Coax, Twisted Pair, Radio, …
Transitioning to IPv6
50
 How do we ease the transition from IPv4 to IPv6?
 Today, most network edges are IPv6 ready
 Windows/OSX/iOS/Android all support IPv6
 Your wireless access point probably supports IPv6
 The Internet core is hard to upgrade
 … but a IPv4 core cannot route IPv6 traffic
Core
Internet
Business
Network
Home
Network
IPv6
Ready
IPv6
Ready
IPv4
Only :(
IPv6 Packets
Transition Technologies
51
 How do you route IPv6 packets over an IPv4
Internet?
 Transition Technologies
 Use tunnels to encapsulate and route IPv6 packets
over the IPv4 Internet
 Several different implementations
 6to4
 IPv6 Rapid Deployment (6rd)
 Teredo
 … etc.
6to4 Basics
52
 Problem: you’ve been assigned an IPv4 address,
but you want an IPv6 address
 Your ISP can’t or won’t give you an IPv6 address
 You can’t just arbitrarily choose an IPv6 address
 Solution: construct a 6to4 address
 6to4 addresses always start with 2002::
 Embed the 32-bit IPv4 inside the 128-bit IPv6 address
20 02:
207.
CF 2E:
46.
C0 00:
192.
0000
0
IPv4:
IPv6:
IPv4
Internet
Dest: 16.79.8.0
Routing from 6to4 to 6to4
53
IPv4 – 207.46.192.0
IPv6 – 2002:CF2E:C000::
IPv4 – 16.79.8.0
IPv6 – 2002:104F:0800::
Dest: 2002:104F:0800::
 How does a host using 6to4 send a packet to
another host using 6to4?
IPv4 – 192.88.99.1
IPv6 – 2002:: /16
IPv4
Internet
IPv6
Internet
Dest: 192. 88.99.1
Routing from 6to4 to Native IPv6
54
IPv4 – 207.46.192.0
IPv6 – 2002:CF2E:C000::
IPv6 – 1893:92:13:99::
Dest: 1893:92:13:99::
Special, anycasted
IPv4 address for
6to4 Relay Routers
Many ISPs
provide 6to4
relay routers
Routing from Native IPv6 to 6to4
55
IPv4 – 192.88.99.1
IPv6 – 2002:: /16
IPv4
Internet
IPv6
Internet
Dest: 207.46.192.0
IPv4 – 207.46.192.0
IPv6 – 2002:CF2E:C000::
IPv6 – 1893:92:13:99::
Dest: 2002:CF2E:C000::
Use normal IPv6
routing to reach a
6to4 relay router
Problems with 6to4
56
 Uniformity
 Not all ISPs have deployed 6to4 relays
 Quality of service
 Third-party 6to4 relays are available
 …but, they may be overloaded or unreliable
 Reachability
 6to4 doesn’t work if you are behind a NAT
 Possible solutions
 IPv6 Rapid Deployment (6rd)
 Each ISP sets up relays for its customers
 Does not leverage the 2002:: address space
 Teredo
 Tunnels IPv6 packets through UDP/IPv4 tunnels
 Can tunnel through NATs, but requires special relays
Consequences of IPv6
57
 Beware unintended consequences of IPv6
 Example: IP blacklists
 Currently, blacklists track IPs of spammers/bots
 Few IPv4 addresses mean list sizes are reasonable
 Hard for spammers/bots to acquire new IPs
 Blacklists will not work with IPv6
 Address space is enormous
 Acquiring new IP addresses is trivial

More Related Content

What's hot

IP Configuration
IP ConfigurationIP Configuration
IP Configuration
Stephen Raj
 
Midterm review questions ans(networking)
Midterm review questions ans(networking)Midterm review questions ans(networking)
Midterm review questions ans(networking)
welcometofacebook
 

What's hot (20)

Day 2.2 ip addressing
Day 2.2 ip addressingDay 2.2 ip addressing
Day 2.2 ip addressing
 
ip addressing & routing
 ip addressing & routing ip addressing & routing
ip addressing & routing
 
Ip addressing
Ip addressingIp addressing
Ip addressing
 
IPv4 Addressing
 IPv4 Addressing   IPv4 Addressing
IPv4 Addressing
 
IPv4
IPv4IPv4
IPv4
 
Cn ipv4 addressing
Cn ipv4 addressingCn ipv4 addressing
Cn ipv4 addressing
 
IPv4 Addressing Architecture
IPv4 Addressing ArchitectureIPv4 Addressing Architecture
IPv4 Addressing Architecture
 
Basic Understanding about TCP/IP Addressing system
Basic Understanding about TCP/IP Addressing systemBasic Understanding about TCP/IP Addressing system
Basic Understanding about TCP/IP Addressing system
 
IPv4 addressing and subnetting
IPv4 addressing and subnettingIPv4 addressing and subnetting
IPv4 addressing and subnetting
 
IP addressing
IP addressingIP addressing
IP addressing
 
network Addressing
network Addressingnetwork Addressing
network Addressing
 
IP Addressing (Subnetting, VLSM, Supernetting)
IP Addressing (Subnetting, VLSM, Supernetting)IP Addressing (Subnetting, VLSM, Supernetting)
IP Addressing (Subnetting, VLSM, Supernetting)
 
IP Addressing and Subnetting
IP Addressing and SubnettingIP Addressing and Subnetting
IP Addressing and Subnetting
 
Addressing
AddressingAddressing
Addressing
 
Ip address
Ip addressIp address
Ip address
 
IP Addressing & subnetting strategy
IP Addressing & subnetting strategyIP Addressing & subnetting strategy
IP Addressing & subnetting strategy
 
Lesson1: Introduction To Networking Concepts
Lesson1: Introduction To Networking ConceptsLesson1: Introduction To Networking Concepts
Lesson1: Introduction To Networking Concepts
 
IP Configuration
IP ConfigurationIP Configuration
IP Configuration
 
IP addressing and Subnetting PPT
IP addressing and Subnetting PPTIP addressing and Subnetting PPT
IP addressing and Subnetting PPT
 
Midterm review questions ans(networking)
Midterm review questions ans(networking)Midterm review questions ans(networking)
Midterm review questions ans(networking)
 

Similar to Network

6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...
6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...
6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...
ZahouAmel1
 
210202021018701 suratNetworkSecurity.ppt
210202021018701 suratNetworkSecurity.ppt210202021018701 suratNetworkSecurity.ppt
210202021018701 suratNetworkSecurity.ppt
jayvagasiya136
 

Similar to Network (20)

Network.pptx
Network.pptxNetwork.pptx
Network.pptx
 
Ramakant tyagi presentation on ip addressing
Ramakant tyagi presentation on ip addressingRamakant tyagi presentation on ip addressing
Ramakant tyagi presentation on ip addressing
 
Lecture 03 networking
Lecture 03 networkingLecture 03 networking
Lecture 03 networking
 
Chap2. ipv4-arp-icmp
Chap2. ipv4-arp-icmpChap2. ipv4-arp-icmp
Chap2. ipv4-arp-icmp
 
Lecture 06
Lecture 06Lecture 06
Lecture 06
 
Ccna pres
Ccna presCcna pres
Ccna pres
 
Ip Addressing Basics
Ip Addressing BasicsIp Addressing Basics
Ip Addressing Basics
 
TCP IP Addressing
TCP IP AddressingTCP IP Addressing
TCP IP Addressing
 
6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...
6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...
6-LEC- 6.pptx Network Layer. Addressing Subnetting Mask (default and subnet) ...
 
CN 5151(15) Module II part 2 13082020.pdf
CN 5151(15) Module II part 2 13082020.pdfCN 5151(15) Module II part 2 13082020.pdf
CN 5151(15) Module II part 2 13082020.pdf
 
network-addressing.pptx
network-addressing.pptxnetwork-addressing.pptx
network-addressing.pptx
 
Subnetting class C
Subnetting class CSubnetting class C
Subnetting class C
 
Networking basics
Networking basicsNetworking basics
Networking basics
 
210202021018701 suratNetworkSecurity.ppt
210202021018701 suratNetworkSecurity.ppt210202021018701 suratNetworkSecurity.ppt
210202021018701 suratNetworkSecurity.ppt
 
computerNetworkSecurity.ppt
computerNetworkSecurity.pptcomputerNetworkSecurity.ppt
computerNetworkSecurity.ppt
 
IP and CIDR ipv6 addressing.ppt
IP and CIDR ipv6 addressing.pptIP and CIDR ipv6 addressing.ppt
IP and CIDR ipv6 addressing.ppt
 
module03-ipaddr.ppt
module03-ipaddr.pptmodule03-ipaddr.ppt
module03-ipaddr.ppt
 
Network_Layer_and_Internet_Protocols_IPv.pptx
Network_Layer_and_Internet_Protocols_IPv.pptxNetwork_Layer_and_Internet_Protocols_IPv.pptx
Network_Layer_and_Internet_Protocols_IPv.pptx
 
Module3
Module3Module3
Module3
 
Networking Brush Up for Amazon AWS Administrators
Networking Brush Up for Amazon AWS AdministratorsNetworking Brush Up for Amazon AWS Administrators
Networking Brush Up for Amazon AWS Administrators
 

More from wacasr12

More from wacasr12 (6)

Edmodo pt1
Edmodo pt1Edmodo pt1
Edmodo pt1
 
Edmodo powerpoint
Edmodo powerpointEdmodo powerpoint
Edmodo powerpoint
 
Rupak lms
Rupak lmsRupak lms
Rupak lms
 
Subnetting supernetting
Subnetting supernettingSubnetting supernetting
Subnetting supernetting
 
Thelmas grocery store Inventory & POS
Thelmas grocery store Inventory & POSThelmas grocery store Inventory & POS
Thelmas grocery store Inventory & POS
 
Dll empowerment technologies
Dll empowerment technologiesDll empowerment technologies
Dll empowerment technologies
 

Recently uploaded

VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
nilamkumrai
 

Recently uploaded (20)

Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
 
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
 
Real Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts ServiceReal Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts Service
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirt
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
VVIP Pune Call Girls Mohammadwadi WhatSapp Number 8005736733 With Elite Staff...
VVIP Pune Call Girls Mohammadwadi WhatSapp Number 8005736733 With Elite Staff...VVIP Pune Call Girls Mohammadwadi WhatSapp Number 8005736733 With Elite Staff...
VVIP Pune Call Girls Mohammadwadi WhatSapp Number 8005736733 With Elite Staff...
 
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft DatingDubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
 
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
Russian Call Girls in %(+971524965298  )#  Call Girls in DubaiRussian Call Girls in %(+971524965298  )#  Call Girls in Dubai
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
 
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls DubaiDubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
 

Network

  • 1. CSE 390 – Advanced Computer Networks Lecture 5: Network Layer (Putting the Net in Internet) Based on slides from D. Choffnes Northeastern U. Revised Fall 2014 by P. Gill
  • 2. Reminders/logistics 2  Assignment 1 due today. Submit in class or bring to my office.  Assignment 2 coming soon…  Expect more information about assignment environment by Friday  1 VM per student; Brian Tria will coordinate with you by Friday.
  • 3. Network Layer 3  Function:  Route packets end-to-end on a network, through multiple hops  Key challenge:  How to represent addresses  How to route packets  Scalability  Convergence Applicatio n Presentatio n Session Transport Network Data Link Physical
  • 4. Routers, Revisited 4  How to connect multiple LANs?  LANs may be incompatible  Ethernet, Wifi, etc…  Connected networks form an internetwork  The Internet is the best known example Routers
  • 5. Structure of the Internet 5  Ad-hoc interconnection of networks  No organized topology  Vastly different technologies, link capacities  Packets travel end-to-end by hopping through networks  Routers “peer” (connect) different networks  Different packets may take different routes Network 2 Network 1 Network 3 Network 4
  • 6. Internetworking Issues 6  Naming / Addressing  How do you designate hosts?  Routing  Must be scalable (i.e. a switched Internet won’t work)  Service Model  What gets sent?  How fast will it go?  What happens if there are failures?  Must deal with heterogeneity  Remember, every network is different Internet Service Model • Best-effort (i.e. things may break) • Store-and-forward datagram network Lowest common denominator
  • 7.  Addressing  Class-based  CIDR  IPv4 Protocol Details  Packed Header  Fragmentation  IPv6 Outline 7
  • 8. Possible Addressing Schemes 8  Flat  e.g. each host is identified by a 48-bit MAC address  Router needs an entry for every host in the world  Too big  Too hard to maintain (hosts come and go all the time)  Too slow (more later)  Hierarchy  Addresses broken down into segments  Each segment has a different level of specificity
  • 9. Example: Telephone Numbers 9 1-617-373-1234 West Village H Room 256 Very General Very Specific West Village G Room 1234 3278 Updates are Local
  • 11. IP Addressing 11  IPv4: 32-bit addresses  Usually written in dotted notation, e.g. 192.168.21.76  Each number is a byte  Stored in Big Endian order 11000000 C0 192 10101000 A8 168 00010101 15 21 01001100 4C 76 Decimal Hex Binary 0 8 16 24 31
  • 12. IP Addressing and Forwarding 12  Routing Table Requirements  For every possible IP, give the next hop  But for 32-bit addresses, 232 possibilities!  Too slow: 48GE ports and 4x10GE needs 176Gbps bandwidth DRAM: ~1-6 Gbps; TCAM is fast, but 400x cost of DRAM  Hierarchical address scheme  Separate the address into a network and a host Host Network Pfx 0 31 Known by all routers Known by edge (LAN) routers
  • 13. Classes of IP Addresses 13  Class A Host Ntwk 0 0 31 1 8 Example: MIT 18.*.*.* 1-126  Class B Host Network 10 0 31 2 16 Example: NEU 129.10.*.* 128-191 8  Class C Host Network 110 0 31 3 24 Example: 216.63.78.* 192-223 8 16 16 24 24
  • 14. How Do You Get IPs? 14  IP address ranges controlled by IANA  Internet Assigned Number Authority  Roots go back to 1972, ARPANET, UCLA  Today, part of ICANN  IANA grants IPs to regional authorities  ARIN (American Registry of Internet Numbers) may grant you a range of IPs  You may then advertise routes to your new IP range  There are now secondary markets, auctions, …
  • 15. Two Level Hierarchy 15 … … Host Network Subtree size determined by network class Pfx
  • 16. Class Sizes 16 Class Prefix Bits Network Bits Number of Classes Hosts per Class A 1 7 27 – 2 = 126 (0 and 127 are reserved) 224 – 2 = 16,777,214 (All 0 and all 1 are reserved) B 2 14 214 = 16,398 216 – 2 = 65,534 (All 0 and all 1 are reserved) C 3 21 221 = 2,097,512 28 – 2 = 254 (All 0 and all 1 are reserved) Total: 2,114,036 Too many network IDs Too small to be useful Way too big
  • 17. Subnets 17  Problem: need to break up large A and B classes  Solution: add another layer to the hierarchy  From the outside, appears to be a single network  Only 1 entry in routing tables  Internally, manage multiple subnetworks  Split the address range using a subnet mask Host Ntwk Pfx Subnet 11111111 11111111 11000000 00000000 Subnet Mask:
  • 18. Subnet Example 18  Extract network:  Extract host: 10110101 11011101 01010100 01110010 IP Address: & 11111111 11111111 11000000 00000000 Subnet Mask: 10110101 11011101 01000000 00000000 Result: 10110101 11011101 01010100 01110010 IP Address: & ~(11111111 11111111 11000000 00000000) Subnet Mask: 00000000 00000000 00010100 01110010 Result:
  • 19. N-Level Subnet Hierarchy 19 … … Host Network Pfx Subtree size determined by length of subnet mask Subnet … • Tree does not have a fixed depth • Increasingly specific subnet masks
  • 20. Example Routing Table 20 Address Pattern Subnet Mask Destination Router 0.0.0.0 0.0.0.0 Router 4 18.0.0.0 255.0.0.0 Router 2 128.42.0.0 255.255.0.0 Router 3 128.42.128.0 255.255.128.0 Router 5 128.42.222.0 2555.255.255.0 Router 1  Question: 128.42.222.198 matches four rows  Which router do we forward to?  Longest prefix matching  Use the row with the longest number of 1’s in the mask  This is the most specific match
  • 21. Subnetting Revisited 21  Question: does subnetting solve all the problems of class-based routing? NO  Classes are still too coarse  Class A can be subnetted, but only 126 available  Class C is too small  Class B is nice, but there are only 16,398 available  Routing tables are still too big  2.1 million entries per router
  • 22. Classless Inter Domain Routing 22  CIDR, pronounced ‘cider’  Key ideas:  Get rid of IP classes  Use bitmasks for all levels of routing  Aggregation to minimize FIB (forwarding information base)  Arbitrary split between network and host  Specified as a bitmask or prefix length  Example: Northeastern  129.10.0.0 with netmask 255.255.0.0  129.10.0.0 / 16
  • 23. Aggregation with CIDR 23  Original use: aggregating class C ranges  One organization given contiguous class C ranges  Example: Microsoft, 207.46.192.* – 207.46.255.*  Represents 26 = 64 class C ranges  Specified as CIDR address 207.46.192.0/18 11001111 CF 207 00101110 2E 46 11xxxxxx C0 192 xxxxxxxx 00 0 Decimal Hex Binary 0 8 16 24 31 18 Bits Frozen By Netmask 14 Arbitrary Bits
  • 24. Example CIDR Routing Table 24 Address Netmask Third Byte Byte Range 207.46.0.0 19 000xxxxx 0 – 31 207.46.32.0 19 001xxxxx 32 – 63 207.46.64.0 19 010xxxxx 64 – 95 207.46.128.0 18 10xxxxxx 128 – 191 207.46.192.0 18 11xxxxxx 192 – 255 Hole in the Routing Table: No coverage for 96 – 127 207.46.96.0/19
  • 25. Size of CIDR Routing Tables 25  From www.cidr-report.org  CIDR has kept IP routing table sizes in check  Currently ~500,000 entries for a complete IP routing table  Only required by backbone routers
  • 26. We had a special day this summer! 26  512K day – August 12, 2014  Default threshold size for IPv4 route data in older Cisco routers  512K routes  Some routers failed over to slower memory  RAM vs. CAM (content addressable memory)  Some routes dropped  Cisco issues update in May anticipating this issue  Reallocated some IPv6 space for IPv4 routes  http://cacm.acm.org/news/178293-internet-routing-failures-bring- architecture-changes-back-to-the-table/fulltext
  • 27. Causes and solutions 27  Traffic engineering  Sometimes I want to announce different prefixes to different neighbors (e.g., use multiple longer prefixes)  Security  E.g., announce two /9s in addition to a /8 to help prevent dark-space hijacks  New markets  New networks in regions like Africa, Middle East, etc. with their own prefixes  Solutions  Stop-gap: update router to reallocate IPv6 memory  Route aggregation/prefix filtering  Upgrade routers with more memory ($$$$)
  • 28. Takeaways 28  Hierarchical addressing is critical for scalability  Not all routers need all information  Limited number of routers need to know about changes  Non-uniform hierarchy useful for heterogeneous networks  Class-based addressing is too course  CIDR improves scalability and granularity  Implementation challenges  Longest prefix matching is more difficult than schemes with no ambiguity
  • 29.  Addressing  Class-based  CIDR  IPv4 Protocol Details  Packed Header  Fragmentation  IPv6 Outline 29
  • 30. IP Datagrams 30  IP Datagrams are like a letter  Totally self-contained  Include all necessary addressing information  No advanced setup of connections or circuits Version HLen DSCP/ECN Datagram Length 0 8 16 24 31 4 12 19 Identifier Flags Offset TTL Protocol Checksum Source IP Address Destination IP Address Options (if any, usually not) Data
  • 31. IP Header Fields: Word 1 31  Version: 4 for IPv4  Header Length: Number of 32-bit words (usually 5)  Type of Service: Priority information (unused)  Datagram Length: Length of header + data in bytes Version HLen DSCP/ECN Datagram Length 0 8 16 24 31 4 12 19 Identifier Flags Offset TTL Protocol Checksum Source IP Address Destination IP Address Options (if any, usually not) Data Limits packets to 65,535 bytes
  • 32. IP Header Fields: Word 3 32  Time to Live: decremented by each router  Used to kill looping packets  Protocol: ID of encapsulated protocol  6 = TCP, 17 = UDP  Checksum Version HLen DSCP/ECN Datagram Length 0 8 16 24 31 4 12 19 Identifier Flags Offset TTL Protocol Checksum Source IP Address Destination IP Address Options (if any, usually not) Data Used to implement trace route
  • 33. IP Header Fields: Word 4 and 5 33  Source and destination address  In theory, must be globally unique  In practice, this is often violated Version HLen DSCP/ECN Datagram Length 0 8 16 24 31 4 12 19 Identifier Flags Offset TTL Protocol Checksum Source IP Address Destination IP Address Options (if any, usually not) Data
  • 34. Problem: Fragmentation 34  Problem: each network has its own MTU  DARPA principles: networks allowed to be heterogeneous  Minimum MTU may not be known for a given path  IP Solution: fragmentation  Split datagrams into pieces when MTU is reduced  Reassemble original datagram at the receiver MTU = 2000 MTU = 4000 MTU = 1500 Datagram Dgram1 Dgram2 1 2 3 4
  • 35. IP Header Fields: Word 2 35  Identifier: a unique number for the original datagram  Flags: M flag, i.e. this is the last fragment  Offset: byte position of the first byte in the fragment  Divided by 8 Version HLen TOS Datagram Length 0 8 16 24 31 4 12 19 Identifier Flags Offset TTL Protocol Checksum Source IP Address Destination IP Address Options (if any, usually not) Data
  • 36. Fragmentation Example 36 MTU = 2000 MTU = 4000 MTU = 1500 Data Data Data IP Hdr IP IP Length = 3820, M = 0 3800 20 Length = 2000, M = 1 Offset = 0 Length = 1840, M = 0 Offset = 1980 1980 20 1820 20 1980 + 1820 = 3800
  • 37. Fragmentation Example 37 MTU = 2000 MTU = 1500 Data Data IP IP Data Data IP IP Length = 2000, M = 1 Offset = 0 Length = 1840, M = 0 Offset = 1980 1980 20 1820 20 20 20 1480 500 Length = 520, M = 1 Offset = 1480 Length = 1500, M = 1 Offset = 0 Data Data IP IP 20 20 1480 340 Length = 360, M = 0 Offset = 3460 Length = 1500, M = 1 Offset = 1980 1480 + 500 = 1980
  • 38. IP Fragment Reassembly 38  Performed at destination  M = 0 fragment gives us total data size  360 – 20 + 3460 = 3800  Challenges:  Out-of-order fragments  Duplicate fragments  Missing fragments  Basically, memory management nightmare Data IP 20 1480 Data IP 20 500 Length = 520, M = 1, Offset = 1480 Length = 1500, M = 1, Offset = 0 Data IP 20 1480 Data IP 20 340 Length = 360, M = 0, Offset = 3460 Length = 1500, M = 1, Offset = 1980
  • 39. Fragmentation Concepts 39  Highlights many key Internet characteristics  Decentralized and heterogeneous  Each network may choose its own MTU  Connectionless datagram protocol  Each fragment contains full routing information  Fragments can travel independently, on different paths  Best effort network  Routers/receiver may silently drop fragments  No requirement to alert the sender  Most work is done at the endpoints  i.e. reassembly
  • 40. Fragmentation in Reality 40  Fragmentation is expensive  Memory and CPU overhead for datagram reconstruction  Want to avoid fragmentation if possible  MTU discovery protocol  Send a packet with “don’t fragment” bit set  Keep decreasing message length until one arrives  May get “can’t fragment” error from a router, which will explicitly state the supported MTU  Router handling of fragments  Fast, specialized hardware handles the common case  Dedicated, general purpose CPU just for handling fragments
  • 41.  Addressing  Class-based  CIDR  IPv4 Protocol Details  Packed Header  Fragmentation  IPv6 Outline 41
  • 42. The IPv4 Address Space Crisis 42  Problem: the IPv4 address space is too small  232 = 4,294,967,296 possible addresses  Less than one IP per person  Parts of the world have already run out of addresses  IANA assigned the last /8 block of addresses in 2011 Region Regional Internet Registry (RIR) Exhaustion Date Asia/Pacific APNIC April 19, 2011 Europe/Middle East RIPE September 14, 2012 North America ARIN 13 Jan 2015 (Projected) South America LACNIC 13 Jan 2015 (Projected) Africa AFRINIC 17 Jan 2022(Projected)
  • 43. IPv6 43  IPv6, first introduced in 1998(!)  128-bit addresses  4.8 * 1028 addresses per person  Address format  8 groups of 16-bit values, separated by ‘:’  Leading zeroes in each group may be omitted  Groups of zeroes can be omitted using ‘::’ 2001:0db8:0000:0000:0000:ff00:0042:8329 2001:0db8:0:0:0:ff00:42:8329 2001:0db8::ff00:42:8329
  • 44. IPv6 Trivia 44  Who knows the IP for localhost?  127.0.0.1  What is localhost in IPv6?  ::1
  • 45. IPv6 Header 45  Double the size of IPv4 (320 bits vs. 160 bits) Version DSCP/ECN Flow Label 0 8 16 24 31 4 12 19 Datagram Length Next Header Hop Limit Source IP Address Destination IP Address Version = 6 Groups packets into flows, used for QoS Same as IPv4 Same as Protocol in IPv4 Same as TTL in IPv4 Same as IPv4
  • 46. Differences from IPv4 Header 46  Several header fields are missing in IPv6  Header length – rolled into Next Header field  Checksum – was useless, so why keep it  Identifier, Flags, Offset  IPv6 routers do not support fragmentation  Hosts are expected to use path MTU discovery  Reflects changing Internet priorities  Today’s networks are more homogeneous  Instead, routing cost and complexity dominate
  • 47. Performance Improvements 47  No checksums to verify  No need for routers to handle fragmentation  Simplified routing table design  Address space is huge  No need for CIDR (but need for aggregation)  Standard subnet size is 264 addresses  Simplified auto-configuration  Neighbor Discovery Protocol  Used by hosts to determine network ID  Host ID can be random!
  • 48. Additional IPv6 Features 48  Source Routing  Host specifies the route to wants packet to take  Mobile IP  Hosts can take their IP with them to other networks  Use source routing to direct packets  Privacy Extensions  Randomly generate host identifiers  Make it difficult to associate one IP to a host  Jumbograms  Support for 4Gb datagrams
  • 49. Deployment Challenges 49  Switching to IPv6 is a whole-Internet upgrade  All routers, all hosts  ICMPv6, DHCPv6, DNSv6  2013: 0.94% of Google traffic was IPv6, 2.5% IPv4 TCP, UDP, ICMP HTTP, FTP, SMTP, RTP, IMAP, … Ethernet, 802.11x, DOCSIS, … Fiber, Coax, Twisted Pair, Radio, …
  • 50. Transitioning to IPv6 50  How do we ease the transition from IPv4 to IPv6?  Today, most network edges are IPv6 ready  Windows/OSX/iOS/Android all support IPv6  Your wireless access point probably supports IPv6  The Internet core is hard to upgrade  … but a IPv4 core cannot route IPv6 traffic Core Internet Business Network Home Network IPv6 Ready IPv6 Ready IPv4 Only :( IPv6 Packets
  • 51. Transition Technologies 51  How do you route IPv6 packets over an IPv4 Internet?  Transition Technologies  Use tunnels to encapsulate and route IPv6 packets over the IPv4 Internet  Several different implementations  6to4  IPv6 Rapid Deployment (6rd)  Teredo  … etc.
  • 52. 6to4 Basics 52  Problem: you’ve been assigned an IPv4 address, but you want an IPv6 address  Your ISP can’t or won’t give you an IPv6 address  You can’t just arbitrarily choose an IPv6 address  Solution: construct a 6to4 address  6to4 addresses always start with 2002::  Embed the 32-bit IPv4 inside the 128-bit IPv6 address 20 02: 207. CF 2E: 46. C0 00: 192. 0000 0 IPv4: IPv6:
  • 53. IPv4 Internet Dest: 16.79.8.0 Routing from 6to4 to 6to4 53 IPv4 – 207.46.192.0 IPv6 – 2002:CF2E:C000:: IPv4 – 16.79.8.0 IPv6 – 2002:104F:0800:: Dest: 2002:104F:0800::  How does a host using 6to4 send a packet to another host using 6to4?
  • 54. IPv4 – 192.88.99.1 IPv6 – 2002:: /16 IPv4 Internet IPv6 Internet Dest: 192. 88.99.1 Routing from 6to4 to Native IPv6 54 IPv4 – 207.46.192.0 IPv6 – 2002:CF2E:C000:: IPv6 – 1893:92:13:99:: Dest: 1893:92:13:99:: Special, anycasted IPv4 address for 6to4 Relay Routers Many ISPs provide 6to4 relay routers
  • 55. Routing from Native IPv6 to 6to4 55 IPv4 – 192.88.99.1 IPv6 – 2002:: /16 IPv4 Internet IPv6 Internet Dest: 207.46.192.0 IPv4 – 207.46.192.0 IPv6 – 2002:CF2E:C000:: IPv6 – 1893:92:13:99:: Dest: 2002:CF2E:C000:: Use normal IPv6 routing to reach a 6to4 relay router
  • 56. Problems with 6to4 56  Uniformity  Not all ISPs have deployed 6to4 relays  Quality of service  Third-party 6to4 relays are available  …but, they may be overloaded or unreliable  Reachability  6to4 doesn’t work if you are behind a NAT  Possible solutions  IPv6 Rapid Deployment (6rd)  Each ISP sets up relays for its customers  Does not leverage the 2002:: address space  Teredo  Tunnels IPv6 packets through UDP/IPv4 tunnels  Can tunnel through NATs, but requires special relays
  • 57. Consequences of IPv6 57  Beware unintended consequences of IPv6  Example: IP blacklists  Currently, blacklists track IPs of spammers/bots  Few IPv4 addresses mean list sizes are reasonable  Hard for spammers/bots to acquire new IPs  Blacklists will not work with IPv6  Address space is enormous  Acquiring new IP addresses is trivial

Editor's Notes

  1. If time, show correlation between lookup speed and maximum line rate