429-07a-TCPIP

Download Report

Transcript 429-07a-TCPIP

The Internet Protocols
COMT 429
COMT 429
History
1969
First version of a 4 node store and forward
network, the ARPAnet
1972
Formal demonstration of ARPAnet with 20 packet
switches and 50 hosts
mid-70s UNIX distributed to academic and research sites.
DEC PDP-11 systems gain wide acceptance.
Initial research on TCP.
1980
1983
DEC VAXs appear and replace PDP-11. Berkley
UNIX provided with TCP implementation.
ARPAnet goes to TCP full-time. Sun Computers
incorporate TCP/IP.
COMT 429
Protocol Overview
E-Mail
HTTP (WWW)
File Transfer
TCP
IP
Remote Login
UDP
ICMP ARP RARP
(Auxiliary Services)
X.25 Packet
Layer
Ethernet, X.25, HDLC etc.
COMT 429
Network Hierarchy
“Backbone”
“Gateway”
COMT 429
Types of Connections
Connection-Oriented Protocols
– Requires Set-Up and Termination
– Provides Sequencing, Flow Control, Error
Handling
 Connection-Less Protocols
– Also referred to as “Datagram” or “Best
Effort” Delivery
– Typically does include Error Detection

COMT 429
Connection Types in TCP/IP
Transport Layer
TCP: Connection Oriented
UDP: Connection-less
Network Layer
Data Link Layer and Physical Network
Connection-less
Depends on the network
COMT 429
The IP Protocol
TCP/IP
COMT 429
IP Header
Version
Header Len
Class of Service
Total Length
Identification
D
M
Timeout
Fragment Position
Protocol
Header Checksum
Source Address
Destination Address
COMT 429
UDP Header
Source Port
Destination Port
Length
Checksum
COMT 429
TCP Header
Source Port
Destination Port
Sequence Number
Acknowledgement Number
misc Flags
Window (flow cntrl)
Checksum
Urgent
Options
COMT 429
Addressing
IP Addresses are 32 bits long, originally using one of three
formats:
0NNNNNNN HHHHHHHH HHHHHHHH HHHHHHHH
or
10NNNNNN NNNNNNNN HHHHHHHH HHHHHHHH
or
110NNNNN NNNNNNNN NNNNNNNN HHHHHHHH
N = Network Address Bit
H = Host Address Bit
COMT 429
Notation
Dotted Decimal:
– 192.149.89.61 =
1100 0000 1001 0101 0101 1001 0011 1101 =
C0
95
59
3D
– 132.235.75.17
 The Network:
– 192.149.89.0
 Broadcast on that network:
– 192.149.89.255

COMT 429
Routing in an Autonomous System
Assign a network class that grants enough host
addresses.
 The internet routes based on one network
number
 Do we find a host inside the autonomous
system?

OU
Internet
RTVC
132.235.0.0
CS (Morton)
COMT 429
Subnetworks
Divide the Host Section
 Network 132.235.0.0
– Use half of the host id as a subnetwork
– 10NNNNNN NNNNNNNN SSSSSSSS
HHHHHHHH
 Network Mask 255.255.255.0
 132.235.75.17
– Internet network 132.235.0.0
– Internal Network 132.235.75.0
– Host 17

COMT 429
An Example
Web Server:
www.lerc.nasa.gov
Web
Browser
“Backbone”
COMT 429
The Request

User types into the browser:

“http://www.lerc.nasa.gov/index.htm”
COMT 429
Browser Interpretation
“http://www.lerc.nasa.gov/index.htm”
 Protocol to use is HTTP (HyperText Transfer
Protocol); the transport protocol is TCP
 The requested server is named
www.lerc.nasa.gov
 The SAP address is 80
 The requested file is “index.htm”

COMT 429
Name Resolution
www.lerc.nasa.gov is not an actual address
 Make a call to the “resolver” (or, in most PCs,
the “stub resolver”) to get a numeric address.
 The answer may come from local storage, or
may itself require a network transmission using
the Domain Name System (DNS) protocols.
 The name space and the address space are
unrelated, except that they can be translated
into each other.

COMT 429
HTTP Message
The browser assembles a text message:
 First line:
– GET index.htm
 Optional additional lines:
– Browser type
– HTTP version number
– Transmission option negotiation

COMT 429
Request to TCP

Browser makes a call to TCP, asking to open a
connection to the numeric browser address
COMT 429
Request to IP
TCP creates a header with the origin and
destination SAPs
 TCP sets a “flag” (bit) to request a new
connection (SYN)
 TCP may set other parameters and options

COMT 429
Locate the Gateway
IP needs to find a way to get the TCP PDU
(called a segment) to the destination address.
 Since the destination is on a different network,
it needs a gateway.

COMT 429
Locate the Physical Gateway
Address
IP knows the global (IP) address of the gateway.
 To make a request of the data link layer, it
needs the physical (MAC - Media Access
Control) address of the gateway.
 The ARP protocol is used to broadcast a request
for the “owner” of the IP gateway address.
 The gateway responds to the broadcast; IP
learns the MAC address from the response.

COMT 429
Dispatch the SYN Packet
IP creates one or more packets (usually one in
this case).
 The header has the origin and destination IP
addresses and other options.
 The packet goes to the Ethernet driver, which
attaches the MAC (Ethernet origin and
destination), and sends the packet to the
gateway.

COMT 429
Routing
The gateway receives the packet, and
determines that it is not:
– addressed to the gateway itself (at the IP
level)
– addressed to any networks the gateway is
attached to
 The gateway examines its routing table, and
selects a circuit to send the packet out on.

COMT 429
Receipt
www.lerc.nasa.gov receives the packet.
 IP removes its headers after error-checking the
header
 TCP removes its headers, after error-checking
the entire packet.
 TCP consults the owner of SAP 80, and
determines that the web browser is willing to
create the connection.

COMT 429
Response
TCP creates an empty packet
 The packet acknowledges the receipt of the
SYN
 TCP responds to any options that may have
been requested in the SYN

COMT 429
Request Transmission
The browser is informed that the connection
has been created.
 The actual text message (the GET…) is now
handed to TCP
 TCP attaches its header and contacts IP
 IP attaches its header and uses the Ethernet
driver to send the packet to the gateway
 etc.

COMT 429
Response
The packet is received and checked by IP and
TCP; they each remove their headers.
 TCP notifies the web server
 The web server reads the GET request
 The server creates a header with responses to
the options requested by the browser
 The server adds a line to the header indicating
the format of the file (MIME)
 The header is followed by a blank line and the
actual file content.

COMT 429
Standards Setting
ISOC
IANA
IESG
IAB
IETF
Area Directors
Areas
Internet
Routing
Operations and Management
General
Security
User Services
Applications
Transport
Working Groups
COMT 429