




























































































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
the transport layer
Typology: Study notes
1 / 111
This page cannot be seen from the preview
Don't miss anything!





























































































Computer Networking: A Top Down Approach Featuring the Internet , 3 rd^ edition. Jim Kurose, Keith Ross Addison-Wesley, July
A note on the use of these ppt slides: We’re making these slides freely available to all (faculty, students, readers). They’re in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following: (^) If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, we’d like people to use our book!) (^) If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material. Thanks and enjoy! JFK/KWR All material copyright 1996- J.F Kurose and K.W. Ross, All Rights Reserved
(^) multiplexing/demulti plexing (^) reliable data transfer (^) flow control (^) congestion control
(^) UDP: connectionless transport (^) TCP: connection-oriented transport (^) TCP congestion control
(^) provide logical communication between app processes running on different hosts (^) transport protocols run in end systems (^) send side: breaks app messages into segments, passes to network layer (^) rcv side: reassembles segments into messages, passes to app layer (^) more than one transport protocol available to apps (^) Internet: TCP and UDP
applicatio n transport network data link physical
applicatio n transport network data link physical
network data link physical
network data link physical
network data link physical
network data link data linknetwork^ physical physical
logical end-end transport
(^) relies on, enhances, network layer services
(^) segment structure (^) reliable data transfer (^) flow control (^) connection management
application
transport
network
link
physical
P1 application transport
network
link
physical
application
transport
network
link
physical
P3 (^) P1^ P2 P
host 1 host 2^ host 3
= socket = process
delivering received segments to correct socket
Demultiplexing at rcv host: gathering data from multiple sockets, enveloping data with header (later used for demultiplexing)
Multiplexing at send host:
DatagramSocket mySocket1 = new DatagramSocket(99111);
DatagramSocket mySocket2 = new DatagramSocket(99222);
(^) checks destination port number in segment (^) directs UDP segment to socket with that port number
DatagramSocket serverSocket = new DatagramSocket(6428);
Client IP:B
P
client IP: A
P3^ P1P
server IP: C
SP: 6428 DP: 9157
SP: 9157 DP: 6428
SP: 6428 DP: 5775
SP: 5775 DP: 6428
SP provides “return address”
Client IP:B
P
client IP: A
P4 P2^ P
server IP: C
SP: 9157 DP: 80
SP: 9157 DP: 80
P5 P6^ P
D-IP:C
S-IP: A D-IP:C
S-IP: B
SP: 5775 DP: 80
D-IP:C
S-IP: B
Client IP:B
P
client IP: A
P2^ P
server IP: C
SP: 9157 DP: 80
SP: 9157 DP: 80
P4 P
D-IP:C
S-IP: A D-IP:C
S-IP: B
SP: 5775 DP: 80
D-IP:C
S-IP: B
UDP: User Datagram Protocol [RFC 768]
(^) “no frills,” “bare bones” Internet transport protocol
(^) “best effort” service, UDP segments may be: (^) lost (^) delivered out of order to app
(^) connectionless:
(^) no handshaking between UDP sender, receiver (^) each UDP segment handled independently of others
(^) no connection establishment (which can add delay) (^) simple: no connection state at sender, receiver (^) small segment header (^) no congestion control: UDP can blast away as fast as desired
UDP: more
(^) often used for streaming
multimedia apps (^) loss tolerant (^) rate sensitive
(^) reliable transfer over
UDP: add reliability at application layer (^) application-specific error recovery!
source port # dest port #
32 bits
Application data (message)
UDP segment format
length checksum
Length, in bytes of UDP segment, including header
wraparound
sum checksum
(^) segment structure (^) reliable data transfer (^) flow control (^) connection management