transport layer 3-1 chapter 4 network layer computer networking: a top down approach 6 th edition...
TRANSCRIPT
![Page 1: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/1.jpg)
Transport Layer 3-1
Chapter 4Network Layer
Computer Networking: A Top Down Approach
6th edition Jim Kurose, Keith RossAddison-Wesley
Chapter4_2
![Page 2: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/2.jpg)
Network Layer 4-2
Two key network-layer functions
Forwarding: Move packets on the router from input port to
appropriate output port All ports have input/output capability Essentially, a network within a router!
Routing: Determine route taken by packets from source to
destination
Routing algorithms
• Link State
• Distance Vector
![Page 3: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/3.jpg)
Network Layer 4-3
Network service modelExample Services: Guaranteed delivery Guaranteed delivery with bounded delay In-order packet delivery Guaranteed minimum bandwidth Guaranteed maximum jitter Security services
None of these provided by Network layer Some provided by Transport layer Network layer: “Best-effort service”
![Page 4: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/4.jpg)
Network Layer 4-4
Datagram networks No call setup at network layer Routers: no state about end-to-end
connections No network-level concept of “connection”
Packets forwarded using destination host address Routing algorithms used to update forwarding
tables
1. send datagrams
applicationtransportnetworkdata linkphysical
applicationtransportnetworkdata linkphysical
2. receive datagrams
![Page 5: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/5.jpg)
Network Layer 4-5
Two key network-layer functions
Forwarding: Move packets on the router from input port to
appropriate output port All ports have input/output capability Essentially, a network within a router!
Routing: Determine route taken by packets from source to
destination
Routing algorithms
• Link State
• Distance Vector
![Page 6: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/6.jpg)
Network Layer 4-6
1
23
0111
value in arrivingpacket’s header
routing algorithm
local forwarding tableheader value output link
0100010101111001
3221
Interplay between routing and forwarding
routing algorithm determinesend-end-path through network
forwarding table determineslocal forwarding at this router
![Page 7: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/7.jpg)
Network Layer 4-7
Switching fabrics Transfer packet from input buffer to
appropriate output buffer Switching rate:
Rate at which packets can be transfer from inputs to outputs
Often measured as multiple of input/output line rate N inputs: switching rate N times line rate desirable
Three types of switching fabrics
memory
memory
bus crossbar
![Page 8: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/8.jpg)
Network Layer 4-8
ver length
32 bits
data (variable length,typically a TCP
or UDP segment)
16-bit identifier
header checksum
time tolive
32 bit source IP address
head.len
type ofservice
flgsfragment
offsetupper layer
32 bit destination IP address
options (if any)
IP datagram formatIP protocol version
numberheader length
(bytes)
upper layer protocolto deliver payload to
total datagramlength (bytes)
“type” of data forfragmentation/reassemblymax number
remaining hops(decremented at
each router)
e.g. timestamp,record routetaken, specifylist of routers to visit.
how much overhead? 20 bytes of TCP 20 bytes of IP = 40 bytes + app
layer overhead
![Page 9: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/9.jpg)
Network Layer 4-9
4.1 introduction4.2 virtual circuit and datagram networks4.3 what’s inside a router4.4 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
4.7 broadcast and multicast routing
Chapter 4: outline
![Page 10: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/10.jpg)
Network Layer 4-10
IP addressing: introduction
IP address: 32-bit identifier for host, router interface
interface: connection between host/router and physical link router’s typically
have multiple interfaces
host typically has one or two interfaces (e.g., wired Ethernet, wireless 802.11)
IP addresses associated with each interface
223.1.1.1
223.1.1.2
223.1.1.3
223.1.1.4 223.1.2.9
223.1.2.2
223.1.2.1
223.1.3.2223.1.3.1
223.1.3.27
223.1.1.1 = 11011111 00000001 00000001 00000001
223 1 11
![Page 11: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/11.jpg)
Network Layer 4-11
IP addressing: introduction
Q: how are interfaces actually connected?
223.1.1.1
223.1.1.2
223.1.1.3
223.1.1.4 223.1.2.9
223.1.2.2
223.1.2.1
223.1.3.2223.1.3.1
223.1.3.27
A: wired Ethernet interfaces connected by Ethernet switches
A: wireless WiFi interfaces connected by WiFi base station
For now: don’t need to worry about how one interface is connected to another (with no intervening router)
![Page 12: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/12.jpg)
Network Layer 4-12
SubnetsIP address:
subnet part - high order bits
host part - low order bits
What’s a subnet ?
Logical, visible subdivision of a larger IP network
Hosts can physically reach each other without intervening router
• How?
network consisting of 3 subnets
223.1.1.1
223.1.1.3
223.1.1.4 223.1.2.9
223.1.3.2223.1.3.1
subnet
223.1.1.2
223.1.3.27223.1.2.2
223.1.2.1
![Page 13: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/13.jpg)
Network Layer 4-13
To determine the subnets, detach each interface from its host or router, creates islands of isolated networks
Each isolated network is called a subnet
subnet mask: /24
Subnets223.1.1.0/24
223.1.2.0/24
223.1.3.0/24
223.1.1.1
223.1.1.3
223.1.1.4 223.1.2.9
223.1.3.2223.1.3.1
subnet
223.1.1.2
223.1.3.27223.1.2.2
223.1.2.1
![Page 14: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/14.jpg)
Network Layer 4-14
223.1.1.1
223.1.1.3
223.1.1.4
223.1.2.2223.1.2.1
223.1.2.6
223.1.3.2223.1.3.1
223.1.3.27
223.1.1.2
223.1.7.0
223.1.7.1
223.1.8.0223.1.8.1
223.1.9.1
223.1.9.2
Subnets
223.1.4.2223.1.4.1
223.1.4.6
223.1.6.0223.1.6.1
How many subnets?
![Page 15: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/15.jpg)
Network Layer 4-15
IP addressing IP address (IPv4):
32 bits 232 = ~4 billion possible IP addresses
• Enough addresses? Written in dotted-decimal notation
• 4 bytes, separated by dot Ex: 192.168.1.110
• 11000000 10101000 00000001 01101110 4 octets, range: 28 or 256 values
• 0 – 255• 00000000 – 11111111
Interfaces on every host and router on the Internet must have a globally unique IP address.• Except interfaces behind NAT routers
![Page 16: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/16.jpg)
Network Layer 4-16
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
11001000 00010111 00010000 00000000
subnetpart
hostpart
200.23.16.0/23
![Page 17: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/17.jpg)
Network Layer 4-17
IP addressing: CIDR In the example below, the first 23 bits are
common for all devices in the subnet How many unique interfaces (router interfaces
and hosts)? 32 bits – 23 bits: 9 bits 29 = 512 unique interfaces
IP range: 200.23.16.0 – 200.23.17.255 11001000 . 00010111 . 00010000 . 00000000 – 11001000 . 00010111 . 00010001 . 11111111
11001000 00010111 00010000 00000000
subnetpart
hostpart
200.23.16.0/23
![Page 18: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/18.jpg)
Network Layer 4-18
IP addressing: Subnet Masking Subnet Mask: Shares IP address format
• Is not an IP address Used together with interface IP address to
determine subnet Ex:
• 192.168.1.110• Subnet: a.b.c.d/24• Subnet mask: 255.255.255.0• Perform bit-wise logical AND:11111111 11111111 11111111 0000000011000000 10101000 00000001 0110111011000000 10101000 00000001
Interface/host 192.168.1.110 belongs to subnet 192.168.1/24
![Page 19: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/19.jpg)
Network Layer 4-19
IP addresses: how to get one?Q: How does a host get IP address?
hard-coded by system admin in a file Windows: 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”
![Page 20: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/20.jpg)
Network Layer 4-20
DHCP: Dynamic Host Configuration ProtocolGoal: Allow hosts to dynamically obtain an IP address from
network server when it joins network Host can renew address in use Allows reuse of addresses in pool
Ex: DHCP IP range, 200.1.1.10 – 200.1.1.150 Support for mobile users who want to join network
DHCP overview: Host broadcasts “DHCP discover” DHCP server responds with “DHCP offer” Host requests IP address: “DHCP request” DHCP server sends address: “DHCP ACK”
![Page 21: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/21.jpg)
Network Layer 4-21
DHCP client-server scenario
223.1.1.0/24
223.1.2.0/24
223.1.3.0/24
223.1.1.1
223.1.1.3
223.1.1.4 223.1.2.9
223.1.3.2223.1.3.1
223.1.1.2
223.1.3.27223.1.2.2
223.1.2.1
DHCPserver
arriving DHCPclient needs address in thisnetwork
![Page 22: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/22.jpg)
Network Layer 4-22
DHCP server: 223.1.2.5 arriving client
DHCP discover
src : 0.0.0.0, 68 dest.: 255.255.255.255,67
yiaddr: 0.0.0.0transaction ID: 654
DHCP offer
src: 223.1.2.5, 67 dest: 255.255.255.255, 68
yiaddrr: 223.1.2.4transaction ID: 654lifetime: 3600 secs
DHCP request
src: 0.0.0.0, 68 dest:: 255.255.255.255, 67
yiaddrr: 223.1.2.4transaction ID: 655lifetime: 3600 secs
DHCP ACK
src: 223.1.2.5, 67 dest: 255.255.255.255, 68
yiaddrr: 223.1.2.4transaction ID: 655lifetime: 3600 secs
DHCP client-server scenario
Broadcast: is there a DHCP server out
there?
Broadcast: I’m a DHCP server! Here’s an IP
address you can use
Broadcast: OK. I’ll take that IP address!
Broadcast: OK. You’ve got that IP address!
![Page 23: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/23.jpg)
Network Layer 4-23
DHCP: more than IP addressesDHCP can return more than just allocated
IP address on subnet: Address of first-hop router for client Name and IP address of DNS sever Subnet mask
![Page 24: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/24.jpg)
Network Layer 4-24
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 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
![Page 25: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/25.jpg)
Network Layer 4-25
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
• How many unique IP addresses?• 32bits – 20bits: 12, so 212 unique addresses for ISP
• ~4096 IP addresses
![Page 26: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/26.jpg)
Network Layer 4-26
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
Organization 0 11001000 00010111 00010000 00000000 200.23.16.0/23
• How many unique IP addresses?• 32bits – 23bits: 9, so 29 unique addresses for Organization 0
• ~512 IP addresses
![Page 27: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/27.jpg)
Network Layer 4-27
Hierarchical addressing: route aggregation
“Send me anythingwith addresses beginning 200.23.16.0/20”
200.23.16.0/23
200.23.18.0/23
200.23.30.0/23
Fly-By-Night-ISP
Organization 0
Organization 7Internet
Organization 1
ISPs-R-Us“Send me anythingwith addresses beginning 199.31.0.0/16”
200.23.20.0/23Organization 2
...
...
hierarchical addressing allows efficient advertisement of routing information:
![Page 28: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/28.jpg)
Network Layer 4-28
ISPs-R-Us has a more specific route to Organization 1
“Send me anythingwith addresses beginning 200.23.16.0/20”
200.23.16.0/23
200.23.18.0/23
200.23.30.0/23
Fly-By-Night-ISP
Organization 0
Organization 7Internet
Organization 1
ISPs-R-Us“Send me anythingwith addresses beginning 199.31.0.0/16or 200.23.18.0/23”
200.23.20.0/23Organization 2
...
...
Hierarchical addressing: more specific routes
![Page 29: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/29.jpg)
Network Layer 4-29
IP addressing: the last word...
Q: how does an ISP get block of addresses?
A: ICANN: Internet Corporation for Assigned
Names and Numbers http://www.icann.org/ Allocates addresses Manages DNS root servers Assigns domain names, resolves
disputes
![Page 30: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/30.jpg)
Network Layer 4-30
NAT: network address translation
10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
138.76.29.7
local network(e.g., home network)
10.0.0/24
rest ofInternet
datagrams with source or destination in this networkhave 10.0.0/24 address for source, destination (as usual)
all datagrams leaving localnetwork have same single source NAT IP address: 138.76.29.7different source port numbers
![Page 31: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/31.jpg)
Network Layer 4-31
motivation: Local network uses just one IP address as far as
outside world is concerned: range of addresses not needed from ISP:
just one IP address 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)
NAT: network address translation
![Page 32: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/32.jpg)
Network Layer 4-32
Implementation: Outgoing data:
• 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 address
NAT translation table:• Every (source IP address, port #) translated to
(NAT IP address, new port #)
Incoming datagrams: • replace (NAT IP address, new port #) of every
incoming datagram with corresponding (source IP address, port #) stored in NAT table
NAT: network address translation
![Page 33: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/33.jpg)
Network Layer 4-33
10.0.0.1
10.0.0.2
10.0.0.3
S: 10.0.0.1, 3345D: 128.119.40.186, 80
1
10.0.0.4
138.76.29.7
1: host 10.0.0.1 sends datagram to 128.119.40.186, 80
NAT translation tableWAN side addr LAN side addr
138.76.29.7, 5001 10.0.0.1, 3345…… ……
S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4
S: 138.76.29.7, 5001D: 128.119.40.186, 802
2: NAT routerchanges datagramsource addr from10.0.0.1, 3345 to138.76.29.7, 5001,updates table
S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3
3: reply arrives dest. address: 138.76.29.7, 5001
4: NAT routerchanges datagramdest addr from138.76.29.7, 5001 to 10.0.0.1, 3345
NAT: network address translation
![Page 34: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/34.jpg)
Network Layer 4-34
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
violates end-to-end argument• NAT possibility must be taken into
account by app designers, e.g., P2P applications
address shortage should instead be solved by IPv6
NAT: network address translation
![Page 35: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/35.jpg)
Network Layer 4-35
NAT traversal problem External client wants to
connect to internal server with address 10.0.0.1 Server address 10.0.0.1 local to
LAN External client can’t use it as
destination address Only one externally visible NAT
address: 138.76.29.7
Solution1: Statically configure NAT to
forward incoming connection requests at given port to internal server Ex: (123.76.29.7, port 2500) always forwarded to 10.0.0.1
port 25000
10.0.0.1
10.0.0.4
NAT router
138.76.29.7
client
?
![Page 36: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/36.jpg)
Network Layer 4-36
NAT traversal problem Solution 2: Universal Plug and Play (UPnP)
Internet Gateway Device (IGD) Protocol.
Allows NATed host to: learn public IP address
(138.76.29.7) add/remove port mappings (with
lease times)
Automate static NAT port map configuration
10.0.0.1
NAT router
IGD
![Page 37: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/37.jpg)
Network Layer 4-37
Generally bundled with Ethernet and Wi-Fi interfaces Ethernet interface:
• 100 Mbps or 1Gbps• How this affects LAN throughput• Using internal switches
Wi-Fi interface:• 802.11b/g/n/a/ac• Throughput• MIMO
Demilitarized Zone (DMZ):• Less restrictive zone/host/subnet which allows hosts
outside the private network to communicate easily• Accomplished by modifying iptable rules on NAT router
NAT: things to consider
![Page 38: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/38.jpg)
Network Layer 4-38
4.1 introduction4.2 virtual circuit and datagram networks4.3 what’s inside a router4.4 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
4.7 broadcast and multicast routing
Chapter 4: outline
![Page 39: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/39.jpg)
Network Layer 4-39
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 plus first 8 bytes of IP datagram causing error
Type Code description0 0 echo reply (ping)3 0 dest. network unreachable3 1 dest host unreachable3 2 dest protocol unreachable3 3 dest port unreachable3 6 dest network unknown3 7 dest host unknown4 0 source quench (congestion control - not used)8 0 echo request (ping)9 0 route advertisement10 0 router discovery11 0 TTL expired12 0 bad IP header
![Page 40: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/40.jpg)
Network Layer 4-40
Traceroute and ICMP source sends series
of UDP segments to dest first set has TTL =1 second set has TTL=2,
etc. unlikely port number
when nth set of datagrams arrives to nth router: router discards
datagrams and sends source ICMP
messages (type 11, code 0)
ICMP messages includes name of router & IP address
when ICMP messages arrives, source records RTTs
stopping criteria: UDP segment
eventually arrives at destination host
destination returns ICMP “port unreachable” message (type 3, code 3)
source stops3 probes
3 probes
3 probes
![Page 41: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/41.jpg)
Network Layer 4-41
IPv6: motivation Initial motivation:
32-bit address space soon to be completely allocated.
Additional motivation: Header format helps speed
processing/forwarding Header changes to facilitate QoS
IPv6 datagram format: Fixed-length 40 byte header No fragmentation allowed
![Page 42: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/42.jpg)
Network Layer 4-42
IPv6 datagram format
priority: identify priority among datagrams in flowflow Label: identify datagrams in same “flow.” (concept of“flow” not well defined).next header: identify upper layer protocol for data
data
destination address(128 bits)
source address(128 bits)
payload len next hdr hop limitflow labelpriver
32 bits
![Page 43: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/43.jpg)
Network Layer 4-43
Other changes from IPv4
checksum: removed entirely to reduce processing time at each hop Not needed since checksumming already
occurs at Layer 4 and Layer 2 ICMPv6: new version of ICMP
Additional message types, e.g. “Packet Too Big”
Multicast group management functions
![Page 44: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/44.jpg)
Network Layer 4-44
Transition from IPv4 to IPv6
Not all routers can be upgraded simultaneously No “flag days” How will network operate with mixed IPv4
and IPv6 routers? Tunneling:
IPv6 datagram carried as payload in IPv4 datagram among IPv4 routers
IPv4 source, dest addr IPv4 header fields
IPv4 datagram
IPv6 datagram
IPv4 payload
UDP/TCP payload
IPv6 source dest addrIPv6 header fields
![Page 45: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/45.jpg)
Network Layer 4-45
Tunneling
physical view:
IPv4 IPv4
A B
IPv6 IPv6
E
IPv6 IPv6
FC D
logical view:
IPv4 tunnel connecting IPv6 routers
E
IPv6 IPv6
FA B
IPv6 IPv6
![Page 46: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/46.jpg)
Network Layer 4-46
flow: Xsrc: Adest: F
data
A-to-B:IPv6
Flow: XSrc: ADest: F
data
src:Bdest: E
B-to-C:IPv6 inside
IPv4
E-to-F:IPv6
flow: Xsrc: Adest: F
data
B-to-C:IPv6 inside
IPv4
Flow: XSrc: ADest: F
data
src:Bdest: E
physical view:A B
IPv6 IPv6
E
IPv6 IPv6
FC D
logical view:
IPv4 tunnel connecting IPv6 routers
E
IPv6 IPv6
FA B
IPv6 IPv6
Tunneling
IPv4 IPv4
![Page 47: Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Chapter4_2](https://reader036.vdocuments.us/reader036/viewer/2022062300/56649e245503460f94b127f9/html5/thumbnails/47.jpg)
Network Layer 4-47
IPv6: adoption
US National Institutes of Standards estimate [2013]: ~3% of industry IP routers ~11% of US gov’t routers
Long (long!) time for deployment, use 20 years and counting! Think of changes in last 20 years: WWW,
Facebook, Netflix, Cloud computing, Internet of things, …
Why?• Network layer protocols extremely difficult to change• Fundamental protocols for data exchange over the
Internet