Course Notes
Download
Report
Transcript Course Notes
CEG-4188
Lecture 2:
Internetworking and
the Internet Protocol (IP)
Prof. Gregor v. Bochmann
SITE - University of Ottawa
These course notes are based on slides prepared by Drs. Makrakis and
Shirmohammadi
Fall 2010
CEG 4188
2-1
Network Layer
Provides the upper layers with
independence from the data
transmission and physical
networking technologies.
Responsible for sending data
from source to destination.
This includes the nodes inbetween (and therefore it is
not end-to-end)
Responsible for requesting
network facilities, such as
priority, bit-rate, etc…
Responsible for routing.
Fall 2010
CEG 4188
Application Layer
Presentation Layer
Session Layer
Transport Layer
Network Layer
Data Link Layer
Physical Layer
2-2
Basic network functions
• Data transfer (in packet switching mode)
• Two modes of transfer:
– Connection-oriented (end-to-end connection must be
established before data transfer can occur)
– Connection-less
• Addressing
– Address identifies destination
– Multicasting (broadcasting only over small networks)
• Additional features:
– Ordered delivery
– Flow control
– Error control
Fall 2010
CEG 4188
2-3
Connection-oriented vs.
Connection-less
• Debate in the 1970ies
• The connection-less IP protocol was adopted
– Simpler to realize, especially for inter-networking
– Cannot provide ordered delivery, flow control and error
control (if this is required by application, TCP must be
used)
• Circuit-switched networks favor connectionoriented service. Also in optical networks,
technology favors connection-orientation.
However, IP is expected to remain the main
internetworking protocol.
Fall 2010
CEG 4188
2-4
Internetworking
Internetworking is a scheme for
interconnecting multiple networks of not
identical technologies
Uses both hardware and software
• Extra hardware positioned between networks
• Software on each attached computer
System of interconnected networks is
called an internetwork or an internet
Fall 2010
CEG 4188
2-5
TCP/IP Protocol Suite vs. OSI
Fall 2010
CEG 4188
2-6
Internetworking architecture
Fall 2010
CEG 4188
2-7
Autonomous System (AS)
• AS is a set of routers and networks
managed by a single organization.
• AS consists of a group of routers
exchanging information via a common
routing protocol.
• Claiming that an AS is “connected”, means
that (excluding times of failures) there is
always a “path” between any pair of nodes.
Fall 2010
CEG 4188
2-8
Example: A 2-AS formed Internet
Fall 2010
CEG 4188
2-9
A “possible” Internet Architecture(1)
Fall 2010
CEG 4188
2-10
A “possible” Internet Architecture(3)
AS-5
AS-4
AS-1
AS-2
Fall 2010
AS-3
CEG 4188
2-11
Routing
• Autonomous System
(AS): set of networks
and routers operated
by a single
organization.
• Interior Router
Protocol (IRP):
passing routing
information within
and AS.
• Exterior Router
Protocol (ERP):
passing routing
information
between different
ASs.
Fall 2010
CEG 4188
2-12
Routing Approaches
• Distance Vector Routing: each node exchanges
information with its neighboring nodes; e.g.
Routing Information Protocol (RIP).
• Link-state Routing: sends link costs of each of its
network interfaces to all routers (not just
neighboring). Typically used with a Dijksterabased algorithm; e.g., Open Shortest Path First
(OSPF).
• Path-vector Routing: router provides information
about which networks can be reached by a given
router and the ASs that must be crossed; e.g.
Border Gateway Protocol (BGP).
Fall 2010
CEG 4188
2-13
Internet Protocol (IP) v4
• defined in RFC 791
• part of TCP/IP suite
• will (eventually) be replaced by IPv6
Fall 2010
CEG 4188
2-14
IP Header
Fall 2010
CEG 4188
2-15
IP Header Fields
• Version (4 bits): currently 4
• Internet Header Length (4 bits)
– Minimum is 5, for 20 octets
– Header may include options and padding
• Type of Service (8 bits)
– rarely used, for differentiated services and congestion notification
• Total Length (16 bits) of datagram, in octets (header & data)
• Identification (16 bits)
– Sequence number
– Together with addresses and user protocol, this field identifies the
datagram uniquely (used for fragmentation)
• Flags (3 bits)
– Only 2 bits used for fragmentation: More bit, and Don’t Fragment
bit
Fall 2010
CEG 4188
2-16
IP Header Fields (…)
• Fragmentation offset ( 13 bits)
• Time to Live (8 bits)
• Protocol (8 bits)
– Next higher layer to receive data field at destination
• Header Checksum (16 bits)
– Re-verified and recomputed at each router
– 16 bit ones-complement sum of all 16 bit words in the header
• Source Address (32 bits)
• Destination Address (32 bits)
• Options (Security, timestamp, …)
• Padding, to fill to multiple of 32 bits long
Following the header: Data field (contains user data): maximum
lengths 65 535 octets
Fall 2010
CEG 4188
2-17
Internetworking Requirements
Are they satisfied by IP ?
Design requirements: accommodate differences in
constituting sub-networks:
1.
2.
3.
4.
5.
Different maximum packet size
Different addressing schemes
Different network access mechanism
Different maximum packet lifetime
Different transmission modes (connection-oriented,
connectionless)
6. Error control
7. Flow control
Fall 2010
CEG 4188
2-18
(1) Fragmentation and Reassembly: Why?
• Main reason: Different maximal packet sizes
– Lower-level protocols may need to break data up into
smaller blocks, an action called fragmentation
– Each network only accepts blocks of a certain size, or it has a minimum
and maximum limit for the allowed size of data blocks (e.g.
• ATM: 53 bytes cell size (48 payload + 5 control)
• Ethernet frames: minimum size = 72 bytes; maximum size = 1526 bytes
• Other reasons
–
–
–
–
more efficient error control & smaller retransmission units
fairer access to shared facilities
Less waiting times of packets of higher priority in queues
smaller buffers
• Disadvantages
– more bandwidth wasted in overhead related data
– more interrupts & processing time
Fall 2010
CEG 4188
2-19
PDUs and Fragmentation
Fall 2010
CEG 4188
2-20
Fragmentation Example
Fall 2010
CEG 4188
2-21
(2) Different Addressing Schemes
• Introduce IP address as a global address
• All hosts on the Internet must have a unique
IP address
– Exception: techniques such as NAT (network
address translation) allow private IP addresses
that might be duplicated somewhere else.
– NAT is very common (because IP v4 does not
have enough address space)
Fall 2010
CEG 4188
2-22
IP Address
Each IP address is divided into a prefix
and a suffix
• prefix identifies the network to which the computer is
attached
• suffix identifies the computer within that network
• we allocate some bits for prefix, some for suffix (total of
32 bits)
» large prefix, small suffix - many networks, few hosts per
network
» small prefix, large suffix - few networks, many hosts per
network
Network numbers are unique
• assignment of network numbers must be coordinated
globally; assignment of host addresses can be managed
locally
Fall 2010
CEG 4188
2-23
IP Address format
32
8
0
netid
hostid
Class A
16
10
32
netid
hostid
Class B
24
110
netid
32
hostid
Class C
32
1110
Fall 2010
multicast
CEG 4188
Class D
2-24
IP Address format
11110
Address Class
Reserved for future use
No. of Networks
No. of Hosts
Class E
Comments
A
126
16777214
Very Large Networks
B
16384
65534
Medium Size Network
C
2097151
254
Large number of
small networks
Host id 0 is never assigned to an individual host. It refers to the network itself.
Fall 2010
CEG 4188
2-25
Example
Class A
Class B
Class C
Fall 2010
CEG 4188
2-26 26
Subnets and Subnet Masks
• Allow arbitrary complexity of internetworked LANs within
organization.
• Insulate overall internet from growth of network numbers
and routing complexity.
• To rest of internet, site looks like single network.
Fall 2010
CEG 4188
2-27
Routing Using Subnets
Fall 2010
CEG 4188
2-28
Address Mapping (ARP)
• Sometimes, in order to reach a destination,
there is no need to go through an IP router.
– E.g.?
• In that case, the physical address can be
used directly.
Fall 2010
CEG 4188
2-29
ARP
(Address Resolution Protocol)
Fall 2010
CEG 4188
2-30
(4) Different maximum packet lifetime
Why limiting the maximum packet lifetime ?
• Datagrams could loop indefinitely
– Consumes resources
– Transport protocol may need upper bound on datagram lifetime
Solution proposed for IP:
– Time To Live (TTL) field in IP header
• the value represents the maximum hop count
• It is decremeted each time the packet passes through a router
– When the value of TTL becomes zero, the datagram is discarded (not
forwarded)
– Note: This does not solve the problem of the Transport protocol, since
the time waiting in a router is not bounded, so there is no enforced
maximum lifetime, only a maximum hop count.
Fall 2010
CEG 4188
2-31
Internetworking Requirements
Design requirements: accommodate differences in
constituting networks:
1. Different maximum packet size
2. Different addressing schemes
3. Different network access mechanism (implemented in
each router, as required)
4. Different maximum packet lifetime
5. Different transmission modes (connection-oriented,
connectionless)
6. Error control (not provided by IP)
7. Flow control (not provided by IP)
Fall 2010
CEG 4188
2-32
IP v6
Why Change IP ?
• Address space exhaustion (this is the main reason)
– growth of networks and the Internet
• Requirements for new types of services
– new addressing features
– flow identification
– features for resource allocation
• New header structure for more efficient processing
Fall 2010
CEG 4188
2-33
IPv6 Enhancements (1)
• Expanded IP address: 128 bit address space
– increase of address space by a factor of 296
– allows (on the order of) 6 1023 unique addresses per square
meter of the surface of the earth, which seems inexhaustible.
• Improved (flexible) option mechanism
– options are placed in separate optional headers ( between IPv6
header & transport- layer header).
– most optional headers are not examined/processed by any internet
router on the packet's path.
– simplifies and speeds up IPv6 (vs. IPv4) packet routing
processing.
– Easier to add additional options.
Fall 2010
CEG 4188
2-34
IPv6 Enhancements (2)
• dynamic address assignment (using address auto-configuration)
• Increased addressing flexibility
– includes anycast & multicast
– anycast: packet is delivered to just one of a set of nodes.
– scalability of multicast routing is improved by adding scope field to
multicast addresses.
• Support for resource allocation
– labelled packet flows
– distinguishes different flows coming from the same (IP address) source
(e.g. can identify a Video over IP or Voice over IP session (having realtime constraints) from a file transfer or web browsing session (which are
fine with best effort treatment).
Fall 2010
CEG 4188
2-35