introduction to network protocols kang li
Post on 07-Jan-2016
44 Views
Preview:
DESCRIPTION
TRANSCRIPT
CSx760 Computer Networks 1
Introduction to Network Protocols
Kang Li
CSx760 Computer Networks 2
Outline
Administrative trivia’s TA Class Account
cs4760@odin.cs.uga.edu
TA Individual Contact Information Arsham Mesbah <arsham@uga.edu> Yingfeng Wang <ywang802@gmail.com>
What is a network protocol?
CSx760 Computer Networks 3
What is a Network Protocol?
A network protocol is about Format Data Format Routine (Action) Format
A network protocol defines the format and the order of messages exchanged between two or more communicating entities, as well as the actions taken on the transmission and/or receipt of a message or other event.
CSx760 Computer Networks 4
The Protocol Stack and Ways to Traverse It
Protocol stack collection of protocols
implementing a series of layers
Traverse Bottom-up Top-down
CSx760 Computer Networks 5
Internet
Top-down by examples
Your computer www.google.com?
What happens when you type in a web page
CSx760 Computer Networks 6
Application Layer
Your computer
Turn the typed in URL into HTTP Get Request
Get http://www.google.com HTTP 1.1Host: www.google.comConnection: keep-alive…
CSx760 Computer Networks 7
Application Layer (cont.)Finding the right IP address: DNS
Local Domain Name Server
(129.95.50.2)
What’s the IP address for www.google.com?
Your computer(129.95.50.53)
Oh, it is 216.239.53.100
What if the local DNS server doesn’t know?
Where is www.google.com?
CSx760 Computer Networks 8
Transport Layer (TCP)
Your computer
Break message into packets (TCP segments),and deliver them (in order and reliably)
Get http://www.google.com HTTP 1.1Host: www.google.comConnection: keep-alive…
Get htt1p://ww2
w.goog3
CSx760 Computer Networks 9
Network Layer (IP)
Address each packet so that it can traverse the network from the sender to the destination.
Get htt1216.239.51.100 128.192.4.122
Your computer(128.192.4.122)
www.google.com(216.239.51.100)
Destination source data
CSx760 Computer Networks 10
Network Layer (cont.)Getting to the Campus backbone (static routing)
Local router
(128.192.4.1)
Please send my packet to 216.239.51.100
Your computer(128.192.4.122)
UGA
Default route
CSx760 Computer Networks 11
Network Layer (cont.)Getting to the Internet (intra-domain routing)
UGA Campus Network
Peach Net
CS department
Each router forward packets toward the destination
CSx760 Computer Networks 12
Level3
Network Layer (cont.)Getting through the Internet (inter-domain routing)
Qwest
Sprint
Exodus
PeachNet
CSx760 Computer Networks 13
Link Layer
Your computer(128.192.4.122)
UGA
Hardware Address (08:00:20:9D:01:1E)
Hardware Address(00:03:E4:3D:A8:00)
Local router
(128.192.4.122)
Address each IP packet with hardware address so that it be deliver to the next hop
IP PacketDst MAC Src MAC
How to know the next hop’s hardware address?
CSx760 Computer Networks 14
Link and Physical Layer
OC-3
CSx760 Computer Networks 15
Summary of the Example
Top-down Traverse of 5 layers Application: HTTP
turn the typed in URL into Get Request
Transport: TCP break message into segments,
make in-order and reliable delivery Network: IP
routing of datagram from source to destination
Link: Ethernet/Wavelan data transfer between neighboring
network elements Physical:
bits “on the wire”
CSx760 Computer Networks 16
What’s inside
Network Protocols are about format and the order of messages exchanged.
What are the challenge of designing protocols?
Or, why some protocols are complicated?
You need to know why a particular format or order is chosen.
Here is the same example …
CSx760 Computer Networks 17
What if the Data gets Lost?
InternetGET index.html
Problem: Lost Data
InternetGET index.html
Solution: Timeout and Retransmit
GET index.htmlGET index.html
CSx760 Computer Networks 18
Problem: Packet size
What if the Data Doesn’t Fit?
On Ethernet, max IP packet is 1.5kbytes Typical web page is 10kbytes
Solution: Fragment data across packets
GETindex.html
GET index.html
CSx760 Computer Networks 19
Problem: Out of Order
What if the Data is Out of Order?
GETx.thindeml
GET x.thindeml
Solution: Add Sequence Numbers
GET index.html
ml 4 inde 2 x.th 3 GET 1
CSx760 Computer Networks 20
What if receiver has no resources (flow control)?
InternetPUT remix.mp3
Problem: Overflowing receiver buffers
Internet
Solution: Receiver advertised window
PUT remix.mp3
16KB free
CSx760 Computer Networks 21
What if Network is Overloaded?
Problem: Network Overload
Short bursts: buffer What if buffer overflows?
Packets dropped and retransmitted Sender adjusts rate until load = resources
Solution: Buffering and Congestion Control
CSx760 Computer Networks 22
What if the Data gets Corrupted?
InternetGET windex.htmlGET index.html
Problem: Data Corruption
Solution: Add a checksum
0,9 9 6,7,8 21 4,5 7 1,2,3 6X
CSx760 Computer Networks 23
Questions?
top related