Transcript module_52

Module 5.2: Internet Protocol
•
•
•
•
CO vs. CL protocols
IP Features
– Fragmentation
– Routing
IP Datagram Format
IPv6
K. Salah
1
CO vs. CL
•
CO – Connection Oriented
– Modeled after the telephone system
– When PDU are sequenced, I.e. logical connection
•
CL – Connectionless
– Modeled after the postal system
– When PDUs are not sequenced. Each PDU is treated independently from each
other.
•
•
•
IP is a CL protocol!
Advantages
– Flexibility
– Robust
– Smaller Buffers Needed
– No unnecessary overhead
Unreliable
– Not guaranteed delivery
 packets can be lost, duplicated, damaged.
– Not guaranteed order of delivery
 Packets can take different routes
– Reliability is responsibility of next layer up (e.g. TCP)
K. Salah
2
IP Features
•
IP has two primary responsibilities:
– Routing:
 Providing CL, best-effort delivery of datagrams through an
internetwork; and
– Fragmentation:
 Providing fragmentation and reassembly of datagrams to support
data links with different maximum transmission unit (MTU) sizes.
K. Salah
3
Routing
•
•
•
•
•
•
•
•
IP relies on two tools to help it route datagrams:
– Subnet mask
– IP routing table
If source and destination network and subnet parts are the same, then the
destination host is in the same network and the routing is direct.
The datagram is wrapped in a frame and transmitted directly to its destination on
the local LAN.
The destination address that is placed in the frame header must be the physical
address of the destination.
ARP (Address Resolution Protocol) will be used to find the physical address of
the destination.
If destination is not on the local subnet, IP must consult its local routing table.
In such a case, the datagram is sent to the router specified in the routing table.
If no router (or default gateway) is found in the routing table, report error.
K. Salah
4
Fragmentation
•
•
•
•
•
Each LAN and WAN technology imposes a different size limit on its
frames.
– For example, the maximum frame size of the ethernet (MTU)
is 1500 bytes, which is far below the maximum size of an IP
datagram.
16
– Maximum IP packet size is (65537) or 2 bytes.
IP solves the size problem by chopping the datagram into several
smaller datagrams called fragments. Fragmentation is performed
by routers and hosts.
It is up to IP in the destination host to gather up the incoming
fragments and rebuild the original datagram, before passing it to
the upper layer.
Fragmentation most often is performed in a router.
Fragmentation is a performance killer.
K. Salah
5
Fragmentation (Cont.)
•
•
When to re-assemble
– At destination
 Results in packets getting smaller as data traverses
internet
– Intermediate re-assembly
 Need large buffers at routers
 Buffers may fill with fragments
 All fragments must go through same router
 Inhibits dynamic routing
IP re-assembles at destination only
K. Salah
6
Fragmentation (Cont.)
•
Uses fields in header
– Data Unit Identifier (ID)
 Identifies end system originated datagram
 Source and destination address
 Protocol layer generating data (e.g. TCP)
 Identification supplied by IP layer
– Data length
 Length of user data in octets
– Offset
 Position of fragment of user data in original datagram
 In multiples of 64 bits (8 octets)
– More flag
 Indicates that this is not the last fragment
K. Salah
7
Fragmentation Example
K. Salah
8
Dealing with Failure
•
•
•
•
Re-assembly may fail if some fragments get lost
Need to detect failure
Re-assembly time out
– Assigned to first fragment to arrive
– If timeout expires before all fragments arrive, discard partial
data
Use packet lifetime (remaining time to live in IP)
– If time to live runs out, kill partial data
K. Salah
9
IP: Datagram format
K. Salah
10
Header Fields (1)
•
•
•
•
•
Version
– Currently 4
– IP v6 - see later
Internet header length (HLEN)
– In 32 bit words
– Including options
Type of service
Total length
– Of datagram (header+data) in octets
Identification
– unique integer
– Used with addresses and user protocol to identify datagram
uniquely
– This parameter is needed for reassembly and error reporting.
K. Salah
11
Header Fields (2)
•
Flags (only 2 bits used)
– More bit
– Don’t fragment
 If a node does not know how to reassemble
 Useful in bootstrapping. The node initially has a lightweight IP
stack
•
•
•
Fragmentation offset
Time to live
Protocol
– Next higher layer to receive data field at destination
K. Salah
12
Header Fields (3)
•
•
•
•
•
•
Header checksum
– Reverified and recomputed at each router
– 16 bit ones complement sum of all 16 bit words in header
– Set to zero during calculation
Source address
Destination address
Options (variable)
Padding (variable)
– Used to ensure that the IP header is a multiple of 32 bits in
length.
Data (variable)
– Must be an integer multiple of 8 bits in legth
– The maximum length of datagram (data+header) is 65,535
bytes
K. Salah
13
Type of Service
•
•
•
•
•
Precedence
– Measurement of packet’s relative importance.
– 8 levels
Reliability
– Try not to drop the packet.
Delay
– Try to minimize the delay for this packet.
Throughput
– Choose a network with high bandwidth.
Cost
– Choose a network with least cost
K. Salah
14
Options
•
•
•
•
•
Security
– Attach classified information level to packet. For DOD
military application. RFC 1108.
Source routing
– List of all routers.
Route recording
– List of routers visited.
Stream identification
– For special handling of voice and data
Timestamping
– Add a timestamp at each router
K. Salah
15
IPv6
•
•
•
•
•
IP v 1-3 defined and replaced
IP v4 - current version
IP v5 - streams protocol
IP v6 - replacement for IP v4
– During development it was called IPng
– Next Generation
Why Change IP?
– Address space exhaustion
 232 different addresses gives over 4 billion addresses is not
enough!
 Due to growth of wireless, PDA, and Internet.
– Other enhancements
K. Salah
16
IPv6 vs. IPv4
•
The
–
–
–
–
–
–
K. Salah
changes from IPv4 to IPv6 are primarily in:
expanded addressing capabilities;
header format simplification;
flow labeling capability;
Support for resource allocation
improved support for extensions, options, and QoS;
Support for more authentication and security.
17
IPv6 Format
K. Salah
18
Comparison
•
•
•
•
•
•
•
•
The header length field is eliminated.
The service type field is eliminated in IPv6.
The total length field is eliminated.
The identification, flag, and offset fields are eliminated.
The TTL field is called hop limit.
The protocol field is replaced by the next header field.
The header checksum is eliminated.
The option fields in IPv4 changed to extension headers.
K. Salah
19
Extension Headers
K. Salah
20
Extension Headers
K. Salah
21
Status of IPv6
•
•
•
•
Smooth transition is key factor in success of IPv6:
– Dual stack
– IPv6 Tunneling for IPv4 packets.
– Header translation
In reality, we have a slow adoption of IPv6. This is due to the
invention of NAT.
NAT may work only with certain styles of applications, but not
adequate for say IP telephony. Also, it does not scale very well.
The urge is not there yet, but surely growing!
K. Salah
22