INTERNET AND INTERNET PROTOCOL VERSION 4 (IPv4) Outline A bit of - - PowerPoint PPT Presentation
INTERNET AND INTERNET PROTOCOL VERSION 4 (IPv4) Outline A bit of - - PowerPoint PPT Presentation
INTERNET AND INTERNET PROTOCOL VERSION 4 (IPv4) Outline A bit of history The TCP/IP protocol architecture IPv4 General Features The protocol A BIT OF HISTORY A Research Project Its the 7Os DARPA
Outline
à A bit of history à The TCP/IP protocol architecture à IPv4 General Features à The protocol
A BIT OF HISTORY
A Research Project
à It’s the 7O’s à DARPA (Defense Advanced Research Project Agency) à Stanford University and BBN (Bolt, Beranek and Newman)
A VERY INNOVATIVE Network
à Packet switching à Heterogeneous computers à For US research institutions
à Arpanet network, at first a research network, later becomes
The Internet
The Internet Protocol Suite
à Completed by the end
- f the 7O’s
à The two main protocols are: à IP: Internet Protocol à TCP: Transmission Control Protocol à Often called the TCP/IP protocol suite
Internet
à It’s the largest computer network à A “network of networks” à Extremely high growth rate
THE TCP/IP PROTOCOL ARCHITECTURE
Features
à Several other protocols à UDP (User Datagram Protocol) à NFS (Network File System) à ARP (Address Resolution Protocol)
à A public domain standard à Vendor independent à RFC (Request For Comment)
Architectural Model
TCP ¡ UDP ¡ RPC ¡ XDR ¡ NFS ¡ RTP ¡ SNMP ¡ Telnet ¡ FTP ¡ SMTP ¡ HTTP ¡ ¡ ¡ ¡ ¡ IP ¡ Data ¡link ¡ Network ¡ Transport ¡ Session ¡ Presenta;on ¡ Applica;on ¡
ICMP ¡ ARP ¡ Rou;ng ¡ ¡ Protocols ¡ IGMP ¡
Encapsula;on ¡
UDP ¡ IP ¡ MAC ¡ Data ¡ Data ¡ UDP ¡ Data ¡ IP ¡ UDP ¡ Data ¡ UDP ¡ IP ¡ MAC ¡ Data ¡ Data ¡ UDP ¡ Data ¡ IP ¡ UDP ¡ Data ¡
Network
Layers 1 and 2
TCP ¡ UDP ¡ RPC XDR NFS ¡ RTP ¡ SNMP ¡ Telnet ¡ FTP ¡ SMTP ¡ HTTP ¡ ¡ ¡ ¡ ¡ IP ¡ Data ¡link ¡ Network ¡ Transport ¡ Session ¡ Presenta;on ¡ Applica;on ¡
ICMP ¡ ARP ¡ Rou;ng ¡ ¡ Protocols ¡ IGMP ¡
Not ¡specified ¡(any ¡can ¡be ¡used) ¡
Hierarchy ¡
H2 ¡ H3 ¡
IP ¡net ¡ ¡1 ¡ IP ¡net ¡3 ¡ IP ¡net ¡6 ¡ IP ¡net ¡ 7 ¡ IP ¡net ¡ 9 ¡ ATM ¡ CDN ¡
H4 ¡
Ethernet ¡
R1 ¡ R2 ¡ R5 ¡ R4 ¡ R3 ¡
xDSL ¡ xDSL ¡
Ethernet ¡ WIFI ¡
IPV4 GENERAL FEATURES
IP: Internet Protocol
TCP ¡ UDP ¡ RPC ¡ XDR ¡ NFS ¡ RTP ¡ SNMP ¡ Telnet ¡ FTP ¡ SMTP ¡ HTTP ¡ ¡ ¡ ¡ ¡ IP ¡
ICMP ¡ ARP ¡ Rou;ng ¡ Protocols ¡ IGMP ¡
Data ¡link ¡ Network ¡ Transport ¡ Session ¡ Presenta;on ¡ Applica;on ¡
IP: Internet Protocol
à Packet based à Connectionless (datagram) service
à Old protocol ... à ... but not yet obsolete Today: IPv4 Tomorrow: (finally …) IPv6 à Not a reliable service
Datagram vs Connection Oriented
à Packets travel independently of each
- ther
à Possibly on different paths
à Possible out of order delivery à Bandwidth Management is difficult
à Lower complexity à Heard that before? à Robust à It can naturally adapt to traffic and topology changes (faults) à Suitable to “data” (bursty) traffic
On the Other Hand
à Problematic when realizing carrier grade services à Quality of service à Fast fault recovery
Internet Protocol
à Packet format à Segmentation and reassembly à Addressing à Routing à Service classes
PACKET FORMAT
IPv4 Header Format
OpCons ¡ PAD ¡ DesCnaCon ¡Address ¡ Source ¡Address ¡ TTL ¡ Protocol ¡ Checksum ¡(on ¡header) ¡ IdenCfier ¡ Flag ¡ Fragment ¡ ¡ Offset ¡ VER ¡ HLEN ¡ ToS ¡ Total ¡Length ¡
32 bits
Options
à TLV (type-length-value) format à E.g., Source Routing, Route Recording, Timestamp à PAD: padding
FRAGMENTATION AND REASSEMBLY
Fragmenta;on ¡
Needed ¡when ¡links ¡have ¡different ¡ MTU ¡(Maximum ¡Transmission ¡Unit) ¡
Net ¡1 ¡ MTU=1500 ¡
R1 ¡ R2 ¡
Net ¡2 ¡ MTU=620 ¡ Net ¡3 ¡ MTU=1500 ¡
R1 ¡Fragments ¡Packets ¡
Payload ¡ Header ¡
20 bytes 1480 bytes First ¡600 ¡bytes ¡ Another ¡600 ¡bytes ¡ Last ¡280 ¡ bytes ¡ Header ¡
Header ¡ Header ¡
Fragmentation
à (Almost) original header
- n each fragment
à Fragments might get to the destination out of order à Added complexity in reassembly
Reassembly
à At the final destination
- r at an intermediate
router (unlikely) à Reassembly timer is started on first fragment
- f packet
à Fragments of same packet have same fragment identifier à Discarded if not complete by timer expiration
Fragmentation Fields
à Flag
à O: set to O à DF: Don’t Fragment à MF: More Fragments
à O on last fragment à Fragment Offset à In 8 byte multiples
IdenCfier ¡ Flag ¡ Fragment ¡ ¡ Offset ¡
R1 ¡Fragments ¡Packets ¡
Payload ¡ Header ¡
20 bytes 1480 bytes First ¡600 ¡bytes ¡ Another ¡600 ¡bytes ¡ Last ¡280 ¡ bytes ¡ Header ¡
Offset=0 ¡ MF=1 ¡
Header ¡
- ffset=75 ¡
MF=1 ¡
Header ¡
- ffset=150 ¡
MF=0 ¡