Download Lecture #14 - Wayne State University

Document related concepts

Zigbee wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

CAN bus wikipedia , lookup

Net bias wikipedia , lookup

Distributed firewall wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Deep packet inspection wikipedia , lookup

Asynchronous Transfer Mode wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

IEEE 1355 wikipedia , lookup

Computer network wikipedia , lookup

Wake-on-LAN wikipedia , lookup

List of wireless community networks by region wikipedia , lookup

Network tap wikipedia , lookup

Airborne Networking wikipedia , lookup

Internet protocol suite wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

UniPro protocol stack wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Transcript
Network Layer
Goals:
 understand principles behind network layer
services:
routing (path selection)
 dealing with scale
 how a router works
 advanced topics: IPv6, mobility

 instantiation and implementation in the
Internet
Network Layer
4-1
Topics:
 Datagram vs Virtual Circuit
 Router
 IP: Internet Protocol
 Datagram format, IPv4 addressing
 ICMP
 IPv6
 4.5 Routing algorithms
 Link state
 Distance Vector
 Hierarchical routing
 4.6 Routing in the Internet
 RIP, OSPF, BGP
Network Layer
4-2
Network layer
 transport segment from




sending to receiving host
on sending side
encapsulates segments
into datagrams
on rcving side, delivers
segments to transport
layer
network layer protocols
in every host, router
Router examines header
fields in all IP datagrams
passing through it
application
transport
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
application
transport
network
data link
physical
Network Layer
4-3
Key Network-Layer Functions
 forwarding: move
packets from router’s
input to appropriate
router output
 routing: determine
route taken by
packets from source
to dest.

analogy:
 routing: process of
planning trip from
source to dest
 forwarding: process
of getting through
single interchange
Routing algorithms
Network Layer
4-4
Interplay between routing and forwarding
routing algorithm
local forwarding table
header value output link
0100
0101
0111
1001
3
2
2
1
value in arriving
packet’s header
0111
1
3 2
Network Layer
4-5
Connection setup
 3rd important function in some network arch.:
 Virtual circuits network provides network-layer conn
service


used in ATM, frame-relay, X.25
Signaling protocols used to setup, maintain teardown VC
application
transport 5. Data flow begins
network 4. Call connected
data link 1. Initiate call
physical
6. Receive data application
3. Accept call
2. incoming call
transport
network
data link
physical
Network Layer
4-6
VC implementation
A VC consists of:
1.
2.
3.
Path from source to destination
VC numbers, one number for each link along
path
Entries in forwarding tables in routers along
path
 Packet belonging to VC carries a VC
number.
 VC number must be changed on each link.

New VC number comes from forwarding table
Network Layer
4-7
Forwarding table in VC
VC number
22
12
1
Forwarding table in
northwest router:
Incoming interface
1
2
3
1
…
2
32
3
interface
number
Incoming VC #
12
63
7
97
…
Outgoing interface
3
1
2
3
…
Outgoing VC #
22
18
17
87
…
Routers maintain connection state information!
Forwarding table is modified whenever there’s conn setup or teardown
(happen at a microsecond timescale in a tier-1 router)
Network Layer
4-8
Network service model
Q: What service model for “channel” transporting
datagrams from sender to rcvr?
a service model defines the characteristics of end-toend transport of packets between
Example services for
individual datagrams:
 guaranteed delivery
 Guaranteed delivery with
less than certain delay (e.g.
40 msec)?
Example services for a
flow of datagrams:
 In-order datagram delivery
 Guaranteed minimum
bandwidth to flow
 Restrictions on changes in
inter-packet spacing
Network Layer
4-9
Case study: ATM ABR congestion control
 two-byte ER (Explicit Rate) field in RM cell
congested switch may lower ER value in cell
 sender’ send rate thus minimum supportable rate on path across
all switches
 EFCI (Explicit Forward Congestion Indication) bit in data cells: set to
1 in congested switch to indicate congestion to destination host.
 when RM arrives at destination, if most recently received data
cell has EFCI=1, sender sets CI bit in returned RM cell

Network Layer 4-10
Network layer service models:
Network
Architecture
Internet
Service
Model
Guarantees ?
Congestion
Bandwidth Loss Order Timing feedback
best effort none
ATM
CBR
ATM
VBR
ATM
ABR
ATM
UBR
CBR: constant bit rate
VBR: variable bit rate
ABR: available bit rate
UBR: unspecified bit rate
constant
rate
guaranteed
rate
guaranteed
minimum
none
no
no
no
yes
yes
yes
yes
yes
yes
no
yes
no
no (inferred
via loss)
no
congestion
no
congestion
yes
no
yes
no
no
Network Layer
4-11
Datagram or VC network: why?
Internet
 data exchange among
VC network (e.g. ATM)
 evolved from telephony
computers
 human conversation:
 “elastic” service, no strict
 strict timing, reliability
timing req.
requirements
 “smart” end systems
 need for guaranteed
 can adapt, perform
service
control, error recovery
 “dumb” end systems
 simple inside network,
 telephones
complexity at “edge”
 complexity inside
 Additional func built in
network (e.g. networkhigher levels
assisted congestion
 many link types
control)
 different characteristics
Network Layer
 uniform service difficult
4-12
Topics:
 Router
 IP: Internet Protocol
 Datagram format, IPv4 addressing
 ICMP
 IPv6
 4.5 Routing algorithms
 Link state
 Distance Vector
 Hierarchical routing
 4.6 Routing in the Internet
 RIP, OSPF, BGP
Network Layer 4-13
Router Architecture Overview
Two key router functions:
 run routing algorithms/protocol (RIP, OSPF, BGP)
 forwarding datagrams from incoming to outgoing link
 E.g. Cisco 12K, Juniper M16, Foundry SuperX
Network Layer 4-14
Input Port Functions
Physical layer:
bit-level reception
Data link layer:
e.g., Ethernet
see chapter 5
Decentralized switching:
 given datagram dest., lookup output port
using forwarding table in input port
memory
 goal: complete input port processing at
‘line speed’
 queuing: if datagrams arrive faster than
forwarding rate into switch fabric
Network Layer 4-15
Three types of switching fabrics
Network Layer 4-16
Switching Via Memory
First generation routers:
 traditional computers with switching under direct
control of CPU
packet copied to system’s memory
 speed limited by memory bandwidth (2 bus
crossings per datagram)
Input
Port
Memory
Output
Port
System Bus
Recent development: Processors in input line cards perform lookup and
storing packets into memory:  shared mem multiprocessors
Network Layer 4-17
E.g. Cisco’s Catalyst 8500
Switching Via a Bus
 datagram from input port memory
to output port memory via a shared bus
 bus contention: switching speed
limited by bus bandwidth
 1 Gbps bus, Cisco 1900: sufficient
speed for access and enterprise
routers (not regional or backbone)
 E.g. 1Gbps bw supports up to 10 T3
(45- Mbps) links
Network Layer 4-18
Switching Via An Interconnection Network
 overcome bus bandwidth limitations
 A crossbar switch is an interconnection network
consisting of 2n buses that connect n input to n
output ports.
 Advanced design: fragmenting datagram into fixed
length cells at the input port, switch cells through
the fabric and assemble at output ports.
 Cisco 12000: switches 60 Gbps through the
interconnection network
Omega
Network Layer 4-19
Output Ports
 Buffering required when datagrams arrive from
fabric faster than the transmission rate

Queueing and Buffer management
 Scheduling discipline chooses among queued
datagrams for transmission
Network Layer 4-20
Output port queueing
 buffering when arrival rate via switch exceeds output line
speed (switching fabric speed: rate of moving pkt from inports to out-ports)
 queueing (delay) and loss due to output port buffer overflow!

Buffer size = RTT times Link Capacity
 A packet scheduler at output port must choose among
queued to transmit using FIFO or more sophisticated such
as weighted fair queuing (WFQ) that shares the outgoing
link fairly among different end-to-end connections.Network Layer
4-21
Input Port Queuing
 If fabric slower than input ports combined then queueing may
occur at input queues. It can be eliminated if the switching
fabric speed is at least n times as fast as the input line speed,
where n is the number of input ports
 Head-of-the-Line (HOL) blocking: queued datagram at front of
queue prevents others in queue from moving forward. Only
occurs at input ports. As soon as the packet arrival rate on the
input lines reaches 58% of their capacity, the input queue will
grow to unbounded length, due to HOL blocking
 queueing delay and loss due to input buffer overflow!
Network Layer 4-22
Active Queue Management
 Drop-Tail policy
 Drop arrival packets due to overflow
 Random Early Detection (RED)
 Maintain a weighted average for the length of the
output queue
 If queue length < Threshold_min, admit it
 If queue length > Threshold_max, drop it
 Otherwise, drop it with a probability (a function of
the average queue length)
 RED drops packets before the buffer is full in
order to provide congestion signals to senders
Network Layer 4-23
Router Processor
 Execute routing protocols
 Maintain the routing information and
forwarding tables
 Perform network management functions
CISCO 12000 Gigabit Router Processor (GRP)
Network Layer 4-24
Forwarding table
packets forwarded using destination host address
The tables are modified by routing alg anytime (every 1~5 minutes)
packets between same source-dest pair may take diff paths
Destination Address Range
11001000 00010111 00010000 00000000
through
11001000 00010111 00010111 11111111
Link Interface
0
11001000 00010111 00011000 00000000
through
11001000 00010111 00011000 11111111
1
11001000 00010111 00011001 00000000
through
11001000 00010111 00011111 11111111
2
otherwise
3
Network Layer 4-25
Longest prefix matching
Forwarding table with 4 entries and using longest prefix match:
Prefix Match
11001000 00010111 00010
11001000 00010111 00011000
11001000 00010111 00011
otherwise
Examples
DA: 11001000 00010111 00010110 10100001
Link Interface
0
1
2
3
Which interface?
DA: 11001000 00010111 00011000 10101010
Network Layer 4-26
Lookup in an IP Router
H
E
A
D
E
R
Incoming
Packet
Dstn
Addr
Forwarding Engine
Next Hop Computation
Next
Hop
Forwarding Table
Dstn-prefix Next Hop
-------
-------
----
----
Unicast destination address based lookup
Need to be as fast as line speed!!
e.g OC48 link runs at 2.5Gbps, packet=256bytes  1 million lookups/s
Low storage : ~100K entries
Fast updates: few thousands per second, but ideally at lookup speed
Network Layer
4-27
Route Lookup Using CAM
 Content-Address Memory: Fully associative mem: Cisco 8500
 Exact match (fixed-length) search op in a single clock cycle
Location
Prefix
Next-hop
1
0
P1
103.23.122/23
171.3.2.22
1
P2
103.23/16
171.3.2.4
2
P3
101.1/16
120.33.32.98
103.23.122.7
3
4
P4
P5
101.20/13
320.3.3.1
1
0
0
0
100/9
Priority P1
Encoder
10.0.0.111
0
5
0
6
To find the longest prefix cheaply, need to keep entries sorted in
order of decreasing prefix lengths
K. pagiamtzis, Intro to CAM pagiamtzis.com/cam/camintro.html
Network Layer 4-28
Topics:
 Router
 IP: Internet Protocol
 Datagram format, IPv4 addressing
 ICMP
 IPv6
 4.5 Routing algorithms
 Link state
 Distance Vector
 Hierarchical routing
 4.6 Routing in the Internet
 RIP, OSPF, BGP
Network Layer 4-29
The Internet Network layer
Host, router network layer functions:
Transport layer: TCP, UDP
Network
layer
IP protocol
•addressing conventions
•datagram format
•packet handling conventions
Routing protocols
•path selection
•RIP, OSPF, BGP
forwarding
table
ICMP protocol
•error reporting
•router “signaling”
Link layer
physical layer
Network Layer 4-30
IP datagram format
IP protocol version
number
header length
(bytes)
“type” of data
max number
remaining hops
(decremented at
each router)
upper layer protocol
to deliver payload to
6 for tcp, 17 for udp
how much overhead
with TCP?
 20 bytes of TCP
 20 bytes of IP
 = 40 bytes + app
layer overhead
32 bits
head. type of
Datagram length
ver
len service
fragment
16-bit identifier flgs
offset
upper
time to
Header
layer
live
checksum
total datagram
length, bytes)
for
fragmentation/
reassembly
32 bit source IP address
32 bit destination IP address
Options (if any)
data
(variable length,
typically a TCP
or UDP segment)
E.g. timestamp,
record route
taken, specify
list of routers
to visit.
Network Layer 4-31
IP Fragmentation & Reassembly
 network links have MTU
(max.transfer size) - largest
possible link-level frame.
 different link types,
different MTUs
 large IP datagram divided
(“fragmented”) within net
 one datagram becomes
several datagrams
 “reassembled” only at final
destination
 IP header bits used to
identify, order related
fragments
fragmentation:
in: one large datagram
out: 3 smaller datagrams
reassembly
Network Layer 4-32
IP Fragmentation and Reassembly
Example
 4000 byte IP datagram
 MTU = 1500 bytes
 (4000-20 bytes
header)=3980 bytes of
data to be fragmented
 3 fragments
(1480+1480+1020=3980)
 amount of data in all
but last fragment must
be multiples of 8
length ID fragflag offset
=4000 =x
=0
=0
One large datagram becomes
several smaller datagrams
length ID fragflag offset
=1500 =x
=1
=0
length ID fragflag offset
=1500 =x
=1
=185
length ID fragflag offset
=1040 =x
=0
=370
1480 bytes in
data field
offset =
1480/8
Network Layer 4-33
IP Addressing: introduction
 IP address: 32-bit
identifier for host,
router interface, in
dotted-decimal notation
 interface: connection
between host/router
and physical link



223.1.1.1
223.1.2.1
223.1.1.2
223.1.1.4
223.1.1.3
223.1.2.9
223.1.3.27
223.1.2.2
223.1.3.2
223.1.3.1
router’s typically have
multiple interfaces
host typically has one
interface
IP addresses associated 223.1.1.1 = 11011111 00000001 00000001 00000001
with each interface
223
1
1
1
Network Layer 4-34
Subnets (aka IP networks)
 IP address:
 subnet part (high order
bits)
 host part (low order
bits)
 What’s a subnet ?
 device interfaces with
same subnet part of IP
address
 can physically reach
each other without
intervening router
223.1.1.1
223.1.2.1
223.1.1.2
223.1.1.4
223.1.1.3
223.1.2.9
223.1.3.27
223.1.2.2
subnet
223.1.3.1
223.1.3.2
network consisting of 3 subnets
To determine the subnets, detach each interface from its host or
router, creating islands of isolated networks. Each isolated network
is called a subnet.
Network Layer 4-35
Subnets
223.1.1.2
How many?
223.1.1.1
223.1.1.4
223.1.1.3
223.1.9.2
223.1.7.0
223.1.9.1
223.1.7.1
223.1.8.1
223.1.8.0
223.1.2.6
223.1.2.1
223.1.3.27
223.1.2.2
223.1.3.1
223.1.3.2
Network Layer 4-36
IP addressing: CIDR
CIDR: Classless InterDomain Routing



subnet portion of address of arbitrary length
address format: a.b.c.d/x, where x is # bits in subnet
portion of address.
Notation /x is subnet mask. The high order x bits are the
network prefix.
 Before CIDR, classful addressing: A (/8), B(/16),
C(/24). Replaced by CIDRized address.
subnet
part
host
part
11001000 00010111 00010000 00000000
200.23.16.0/23
Network Layer 4-37
IP addresses: how to get one?
Q: How does host get IP address?
 hard-coded by system admin in a file
Wintel: control-panel->network->configuration>tcp/ip->properties
 UNIX: /etc/rc.config
 DHCP: Dynamic Host Configuration Protocol:
dynamically get address from as server
 “plug-and-play”

Network Layer 4-38
DHCP (Dynamic Host Configuration Protocol)
The DHCP relay agent (implemented in the IP router) records the
subnet from which the message was received in the DHCP message
header for use by the DHCP server.
5: DataLink Layer 5-39
IP addresses: how to get one?
Q: How does network get subnet part of IP
addr?
A: gets allocated portion of its provider ISP’s
address space
ISP's block
11001000 00010111 00010000 00000000
200.23.16.0/20
Organization 0
Organization 1
Organization 2
...
11001000 00010111 00010000 00000000
11001000 00010111 00010010 00000000
11001000 00010111 00010100 00000000
…..
….
200.23.16.0/23
200.23.18.0/23
200.23.20.0/23
….
Organization 7
11001000 00010111 00011110 00000000
200.23.30.0/23
Network Layer 4-40
Hierarchical addressing: route aggregation
Hierarchical addressing allows efficient advertisement of routing
information.
Organization 0
200.23.16.0/23
Organization 1
200.23.18.0/23
Organization 2
200.23.20.0/23
Organization 7
.
.
.
.
.
.
Fly-By-Night-ISP
“Send me anything
with addresses
beginning
200.23.16.0/20”
Internet
200.23.30.0/23
ISPs-R-Us
“Send me anything
with addresses
beginning
199.31.0.0/16”
Two example businesses
Network Layer 4-41
Hierarchical addressing: more specific
routes
Assume ISPs-R-Us has been acquired by FBN-ISP and Org1 be transferred
to ISPs-R-Us:
Organization 0
200.23.16.0/23
Organization 2
200.23.20.0/23
Organization 7
.
.
.
.
.
.
Fly-By-Night-ISP
“Send me anything
with addresses
beginning
200.23.16.0/20”
Internet
200.23.30.0/23
ISPs-R-Us
Organization 1
200.23.18.0/23
“Send me anything
with addresses
beginning 199.31.0.0/16
or 200.23.18.0/23”
Network Layer 4-42
IP addressing: the last word...
Q: How does an ISP get a block of addresses?
A: ICANN: Internet Corporation for Assigned
Names and Numbers: www.icann.org
 allocates address space
 Top-level domain name system management
 manages DNS root servers
 Protocol identifier assignment
 assigns domain names, resolves disputes
Network Layer 4-43
NAT: Network Address Translation
rest of
Internet
local network
(e.g., home network)
10.0.0/24
10.0.0.4
10.0.0.1
10.0.0.2
138.76.29.7
10.0.0.3
All datagrams leaving local
network have same single source
NAT IP address: 138.76.29.7,
different source port numbers
Datagrams with source or
destination in this network
have 10.0.0/24 address for
source, destination (as usual)
Network Layer 4-44
NAT: Network Address Translation
 Motivation: local network uses just one IP address as
far as outside world is concerned:
 no need to be allocated range of addresses from ISP:
- just one IP address is used for all devices
 can change addresses of devices in local network
without notifying outside world
 can change ISP without changing addresses of
devices in local network
 devices inside local net not explicitly addressable,
visible by outside world (a security plus).
Network Layer 4-45
NAT: Network Address Translation
Implementation: NAT router must:



outgoing datagrams: replace (source IP address, port
#) of every outgoing datagram to (NAT IP address,
new port #)
. . . remote clients/servers will respond using (NAT
IP address, new port #) as destination addr.
remember (in NAT translation table) every (source
IP address, port #) to (NAT IP address, new port #)
translation pair
incoming datagrams: replace (NAT IP address, new
port #) in dest fields of every incoming datagram
with corresponding (source IP address, port #)
stored in NAT table
Network Layer 4-46
NAT: Network Address Translation
2: NAT router
changes datagram
source addr from
10.0.0.1, 3345 to
138.76.29.7, 5001,
updates table
2
NAT translation table
WAN side addr
LAN side addr
1: host 10.0.0.1
sends datagram to
128.119.40.186, 80
138.76.29.7, 5001 10.0.0.1, 3345
……
……
S: 10.0.0.1, 3345
D: 128.119.40.186, 80
S: 138.76.29.7, 5001
D: 128.119.40.186, 80
138.76.29.7
S: 128.119.40.186, 80
D: 138.76.29.7, 5001
3: Reply arrives
dest. address:
138.76.29.7, 5001
3
1
10.0.0.4
S: 128.119.40.186, 80
D: 10.0.0.1, 3345
10.0.0.1
10.0.0.2
4
10.0.0.3
4: NAT router
changes datagram
dest addr from
138.76.29.7, 5001 to 10.0.0.1, 3345
Network Layer 4-47
NAT: Network Address Translation
 16-bit port-number field:

60,000 simultaneous connections with a single
LAN-side address!
 NAT is controversial:
 routers
should only process up to layer 3 but
NAT router need to change the transport port.
 violates end-to-end argument
• NAT possibility must be taken into account by app
designers, eg, P2P applications

address shortage should instead be solved by
IPv6
Network Layer 4-48
Skype through NAT
 NAT prevents a connection from being
initiated from outside.
 How can Alice call Bob, both residing behind
NAT (NAT traversal) ??
 Alice
sign-in with its super-peer (Sa)
 Bob sign-in with its super-peer (Sb)
 Alice calls Bob: Alice  SaSbBob
 If Bob takes the call, Sa and Sb select a non-NAT
super-peer for voice relay
 See chapter 2 (4th ed) for details
Network Layer 4-49
Recap: Internet Network layer
Host, router network layer functions:
Transport layer: TCP, UDP
Network
layer
IP protocol
•addressing conventions
•datagram format
•packet handling conventions
Routing protocols
•path selection
•RIP, OSPF, BGP
forwarding
table
ICMP protocol
•error reporting
•router “signaling”
Link layer
physical layer
Network Layer 4-50
ICMP: Internet Control Message Protocol
 used by hosts & routers to
communicate network-level
information
 error reporting:
unreachable host, network,
port, protocol
 echo request/reply (used
by ping)
 network-layer “above” IP:
 ICMP msgs carried in IP
datagrams
 ICMP message: type, code,
different fields depending on
the type/code. If it’s a reply
type then it would have IP
Header and first 8 bytes of
IP datagram data.
Type
0
3
3
3
3
3
3
4
Code
0
0
1
2
3
6
7
0
8
9
10
11
12
0
0
0
0
0
description
echo reply (ping)
dest. network unreachable
dest host unreachable
dest protocol unreachable
dest port unreachable
dest network unknown
dest host unknown
source quench (congestion
control - not used)
echo request (ping)
route advertisement
router discovery
TTL expired
bad IP header
Network Layer 4-51
Recap: “Real” Internet delays and
routes
 What do “real” Internet delay & loss look like?
 Traceroute program (in Unix) or Tracert (MS-
DOS): provides delay measurement from source to
router along end-end Internet path towards
destination. For all i:



sends three packets that will reach router i on path
towards destination
router i will return packets to sender
sender times interval between transmission and reply.
3 probes
3 probes
3 probes
Taxonomy 1-52
Traceroute and ICMP
 Source sends series of UDP
 When ICMP message arrives,
source calculates RTT
 Traceroute does this 3 times
 First has TTL =1
Stopping criterion
 Second has TTL=2, etc.
 Unlikely port number (depends  UDP segment eventually
arrives at destination host
on implementation)
 When nth datagram arrives to  Destination returns ICMP
“host unreachable” packet
nth router:
(type 3, code 3) if port is
 Router discards datagram
sent. When source gets this
 And sends to source an ICMP
ICMP, stops.
message (type 11, code 0
 Other Tracert implementation
which means TTL expired)
stops when ping reply is
 Message includes name of
received from destination.
router& IP address
segments to dest
Network Layer 4-53
IPv6
 Initial motivation: 32-bit address space soon
to be completely allocated.

Expanded addressing capabilities: 128 bit
 Additional motivation:
 header format helps speed processing/forwarding
• fixed-length 40 byte header
• no fragmentation allowed
 header changes to facilitate QoS
• Flow label and priority
These are also three most important changes
Network Layer 4-54
IPv6 Header (Cont)
Priority (8-bits): identify priority among datagrams in flow
Flow Label (20-bits): identify datagrams in same “flow.” (concept of“flow” not well
defined).
Next header (8-bits): identify upper layer protocol for data (similar to Upper-layer
protocol in IPv4)
Traffic Class is similar to Type Of Service in IPv4
Similar to TTL in IPv4 (8-bits)
Network Layer 4-55
Other Changes from IPv4
 Checksum: removed entirely to reduce
processing time at each hop
 Options: allowed, but outside of header,
indicated by “Next Header” field
 ICMPv6: new version of ICMP
additional message types, e.g. “Packet Too Big”
 multicast group management functions

Network Layer 4-56
Transition From IPv4 To IPv6
 Not all routers can be upgraded simultaneous
no “flag days”
 How will the network operate with mixed IPv4 and
IPv6 routers?

 Two proposed solutions:
 Dual-stack approach: IPv6 to IPv4 and vice versa
translation of datagrams at routers that can
understand IPv6 and IPv4. Some fields data will be
lost.
 Tunneling: IPv6 carried as payload in IPv4
datagram among IPv4 routers
Network Layer 4-57
Tunneling
Logical view:
Physical view:
A
B
IPv6
IPv6
A
B
C
IPv6
IPv6
IPv4
Flow: X
Src: A
Dest: F
data
A-to-B:
IPv6
E
F
IPv6
IPv6
D
E
F
IPv4
IPv6
IPv6
tunnel
Src:B
Dest: E
Src:B
Dest: E
Flow: X
Src: A
Dest: F
Flow: X
Src: A
Dest: F
data
data
B-to-C:
IPv6 inside
IPv4
D-to-E:
IPv6 inside
IPv4
Flow: X
Src: A
Dest: F
data
E-to-F:
IPv6
Network Layer 4-58
Summary
 Network Layer Services:
 forwarding, routing and connection setup in some networks
 Best effort network Service Models
 Router Architecture Overview
 Input/Output ports and queuing
 Switching via Memory/Bus/Interconnected network
 Network Layer Functions:
 forwarding via routing protocols, routing via IP error reporting via ICMP
 IP Datagram Format
 IP Fragmentation and Reassembly
 IP Addressing: subnets, CIDR, assignments, Hierarchical addressing
 Network Address Translation (NAT)
 Internet Control Message Protocol (ICMP) usage
 IPv6 motivation, datagram format and transition to IPv4 through
Tunneling
Network Layer 4-59