Title: Internet Protocols
1Internet Protocols
2ARPAnet, 1971
3Clients and Servers
download
upload
Client Computers
4IP Internet Protocol Store and Forward Switch
Router
- Router in network core receives incoming packets
and stores them in buffer (temporary storage) - Routes packets on outgoing links
- May throw packets away if buffer is full
Routing Table
5End to EndIntelligence at Edge of Network
- Routers are relatively dumb and rely on
intelligence at the edge to compensate
BEST EFFORT
6Packets
- Packet size (1.5 KB max) a compromise
- Small enough that they can be handled quickly
and with relatively low odds of being damaged - Large enough that packaging does not outweigh the
contents or payload
7IP Addresses
- IPv4 32 bits written as 4 decimal numerals less
than 256, e.g. 141.211.125.22 (UMich) - 4 billion not enough
- IPv6 128 bits written as 8 blocks of 4 hex
digits each, e.g. AF4323BCCAA10045A5B290ACFF
EE8080 - At edge, translate URLs --gt IP addresses, e.g.
umich.edu --gt 141.211.125.22 - Authoritative sites for address translation
Domain Name Server (DNS) - In the network core, IP addresses are used to
route packets using routing tables
8(No Transcript)
9But who controls the names and numbers?
- ICANN Internet Corporation for Assigned Names
and Numbers - A US nonprofit but its a long story.
10(No Transcript)
11The Internet is IP
- Routers do not know what the bits in the packets
represent - Do not know if they are email, streaming video,
html web pages - Do not know if they are encrypted or unencrypted
- You can invent your own new service adhering to
IP standards - Gain Internets best-effort service
- and possibility of undelivered packets
12Packets
- Packet size (1.5 KB max) a compromise
- Small enough that they can be handled quickly
and with relatively low odds of being damaged - Large enough that packaging does not outweigh the
contents or payload
13Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
1
2
3
4
14Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
2
3
4
1
15Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
3
4
1
2
16Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
4
1
2
3
17Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
1
2
3
4
18Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
1
2
3
4
19Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
1
2
3
4
20Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
2
3
4
1
21Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
3
4
1
2
22Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
4
1
2
3
23Striping
- Smallish packets also make better use of the
network since later packets can leave before
earlier packets arrive
1
2
3
4
24Striping Utilizes the Network
- Store and Forward delays would add up if entire
message had to be buffered at every router
1
2
3
4
25Striping Utilizes the Network
- Store and Forward delays would add up if entire
message had to be buffered at every router
1
2
3
4
26Striping Utilizes the Network
- Store and Forward delays would add up if entire
message had to be buffered at every router
1
2
3
4
27Striping Utilizes the Network
- Store and Forward delays would add up if entire
message had to be buffered at every router
1
2
3
4
28Striping Utilizes the Network
- Store and Forward delays would add up if entire
message had to be buffered at every router
1
2
3
4
29Striping Utilizes the Network
- Store and Forward delays would add up if entire
message had to be buffered at every router
1
2
3
4
30TCPTransport Control Protocol
- Creates logical connection between two machines
on the edge of the network - Connected machines seem to have a circuit
connecting them even though they do not tie up
the network - Provide reliable, perfect transport of messages,
even though IP may drop packets - Regulates the rate at which packets are inserted
into the network
31TCP, Basic Idea
32TCP, Basic Idea
1 2
33TCP, Basic Idea
1 2
3-Way Handshaking
34TCP, Basic Idea
1 2
3-Way Handshaking
35TCP, Basic Idea
1 2
3-Way Handshaking
36TCP, Basic Idea
1 2
3-Way Handshaking
37TCP, Basic Idea
1 2
3-Way Handshaking
38TCP, Basic Idea
1 2
3-Way Handshaking
39TCP, Basic Idea
1 2
3-Way Handshaking
40TCP, Basic Idea
1 2
3-Way Handshaking
41TCP, Basic Idea
1 2
3-Way Handshaking
42TCP, Basic Idea
1 2
3-Way Handshaking
43TCP, Basic Idea
1 2
3-Way Handshaking
44TCP, Basic Idea
1 2
3-Way Handshaking
45TCP, Basic Idea
1 2
3-Way Handshaking
46TCP, Basic Idea
1 2
3-Way Handshaking
47TCP, Basic Idea
1 2
3-Way Handshaking
48TCP, Basic Idea
1 2
3-Way Handshaking
49TCP, Basic Idea
1 2
3-Way Handshaking
50TCP, Basic Idea
1 2
3-Way Handshaking
51TCP, Basic Idea
1 2
Virtual Circuit now established between two
hosts though the routers in between are not aware
of it and the same path need not be followed by
all packets
52TCP, Basic Idea
1
1 2
53TCP, Basic Idea
1
1 2
54TCP, Basic Idea
1 2
1
2
55TCP, Basic Idea
1
1 2
2
56TCP, Basic Idea
1 2
1
2
57TCP, Basic Idea
1
1 2
2
58TCP, Basic Idea
1 2
2
1
ACK1
59TCP, Basic Idea
1 2
2
1
ACK1
60TCP, Basic Idea
1 2
1
2
ACK1
ACK2
61TCP, Basic Idea
1 2
1
ACK1
ACK2
62TCP, Basic Idea
1 2
1
2
ACK1
ACK2
63TCP, Basic Idea
2
1
2
ACK2
64TCP, Basic Idea
2
2
1
ACK2
65TCP, Basic Idea
2
2
1
ACK2
66TCP, Basic Idea
1
2
67TCP, Basic Idea
1
2
68Dropped Packets and Retransmission
1
1 2
69Dropped Packets and Retransmission
1
1 2
70Dropped Packets and Retransmission
1
1 2
2
71Dropped Packets and Retransmission
1 2
2
72Dropped Packets and Retransmission
1 2
2
73Dropped Packets and Retransmission
1 2
2
74Dropped Packets and Retransmission
1 2
2
75Dropped Packets and Retransmission
1 2
2
76Dropped Packets and Retransmission
TIMEOUT
1 2
1
2
77UDP User Datagram Protocol
- Used for real-time applications (e.g. streaming
audio and video) where timing is essential but
perfect delivery is not
78UDP Best Effort Delivery
2 3
1
79UDP Best Effort Delivery
3
2
1
80UDP Best Effort Delivery
3
1
2
81UDP Best Effort Delivery
3
1
2
82UDP Best Effort Delivery
3
1
83UDP Best Effort Delivery
3
1
84UDP Best Effort Delivery
3
1
85UDP Best Effort Delivery
3
1
86UDP Best Effort Delivery
3
1
87Layered Protocols
- Both TCP (guaranteed delivery) and UDP (fast
delivery, no guarantees) use the lower-level
Internet Protocol in the link layer - But TCP and UDP know nothing about links,
routing, etc. All that knowledge is embedded in IP
88An analogyPostal Mail Protocols
Higher Level Protocols
Lower Level Protocols