CNE Lec2 TCPIP Reference Model
CNE Lec2 TCPIP Reference Model
Fundamental goal
Packet switching
Second level goals
Survivability in the face of failure
Multiple types of service
Varieties of networks
Connection-oriented service (Circuit
switching)
Establish a connection
Use the connection
Release the connection
Drawbacks?
Advantages?
Connectionless service (Packet
switching)
Each message carries the full destination
address
Each one is routed through the system
independent of all the others.
Drawbacks?
Advantages?
Why packet switching?
Save/make money
Example: 1Mbps link; each user requires 100Kbps when
transmitting; each user has data to send only 10% of the
time.
Circuit-switching
Packet switching
Bad implementations
Bad politics
The apocalypse of the two elephants
Data Encapsulation
The data is sent down the protocol stack
Each layer adds to the data by prepending headers
64 to 1500 Bytes
Physical layer
Representation of bits
Data Rate
Data Link Layer
Hop-to-Hop Delivery
Framing
Physical Addressing
Data Link Layer
Ethernet
Computer <-> Computer communication on same
network
Each device has unique MAC address (48-bit)
example: 00-C0-4F-48-47-93
Ethernet Frame:
Preamble Dest. Source Type Data CRC
address address
Protocol
1. ARP request broadcast on Ethernet
2. Destination host ARP layer responds
Network Layer
End-to-End Delivery
Logical Addressing
Routing
Transport Layer
Process-to-Process delivery
Port Addressing
Reliable or Unreliable Services
Application Layer
Provide services to the user
Email (SMTP), File transfer (FTP, NFS), Remote
Login(Telnet), Name manager(DNS), WWW(http)
etc.
TCP/IP Architecture
TCP protocol
TCP TCP
IP protocol IP protocol
IP IP IP
e protocol f protocol
ethernet ethernet FDDI FDDI
driver driver driver driver
ethernet FDDI
A simple TCP/IP example
Source:
www.cs.virginia.edu/~cs458/slides/module01-
exampleV2.ppt
A simple TCP/IP Example
Web request
Web page
server
HTTP server responds with HTTP response
Argon Neon
HTTP client
HTTP request HTTP server
HTTP response
HTTP Request
<HTML>
<BODY>
<H1>Internet Lab</H1>
Click <a
href="http://www.tcpip-lab.net/index.html">here</a> for the
Internet Lab webpage.
</BODY>
</HTML>
• How does the HTTP request get from Argon to Neon ?
From HTTP to TCP
running
Argon Neon
neon.tcpip-lab.edu
argon.tcpip-lab.edu
HTTP client
TCP client
Invoking the IP Protocol
The TCP client at Argon
argon.tcpip-lab.edu
sends a request to
establish a connection to TCP client
port 80 at Neon
Send an IP datagram to
This is done by asking its
128.143.71.21
local IP module to send
IP
an IP datagram to
128.143.71.21
(The data portion of the IP
datagram contains the
request to open a connection)
Sending the IP datagram to an IP
router
Argon (128.143.137.144) can deliver the IP datagram
directly to Neon (128.143.71.21), only if it is on the
same local network (“subnet”)
But Argon and Neon are not on the same local network
router137.tcpip-lab.edu router71.tcpip-lab.edu
"Router137" "Router71"
128.143.137.1 128.143.71.1
Router
argon.tcpip-lab.edu router137.tcpip-lab.edu
128.143.137.144 128.143.137.1
00:a0:24:71:e4:44 00:e0:f9:23:a8:20
Invoking the device driver
IP module
Ethernet
Sending an Ethernet frame
argon.tcpip-lab.edu router137.tcpip-lab.edu
128.143.137.144 128.143.137.1
00:a0:24:71:e4:44 00:e0:f9:23:a8:20
Forwarding the IP datagram
The IP router receives the Ethernet frame at interface
128.143.137.1, recovers the IP datagram and determines that the IP
datagram should be forwarded to the interface with name
128.143.71.1
The IP router determines that it can deliver the IP datagram directly
argon.tcpip-lab.edu neon.tcpip-lab.edu
"Argon" "Neon"
128.143.137.144 128.143.71.21
router137.tcpip-lab.edu router71.tcpip-lab.edu
"Router137" "Router71"
128.143.137.1 128.143.71.1
Router
router71.tcpip-lab.edu neon.tcpip-lab.edu
128.143.71.1 128.143.71.21
00:20:af:03:98:28
Invoking the device driver at the router
IP module
Send a frame to
00:20:af:03:98:28
Ethernet
Sending another Ethernet frame
router71.tcpip-lab.edu neon.tcpip-lab.edu
128.143.71.1 128.143.71.21
00:20:af:03:98:28
Data has arrived at Neon
Neon receives the Ethernet frame Neon.cerf.edu
The payload of the Ethernet frame is an IP
datagram which is passed to the IP HTTP server
protocol.
The payload of the IP datagram is a TCP TCP server
segment, which is passed to the TCP
server IP module
Note: Since the TCP segment is a
connection request (SYN), the TCP Ethernet
protocol does not pass data to the HTTP
program for this packet. Instead, the TCP
protocol at neon will respond with a SYN
segment to Argon.