0% found this document useful (0 votes)
62 views16 pages

Chapter 3: Transport Layer: (PART 1)

This document discusses the transport layer and reliable data transfer. It describes two transport layer protocols: TCP, which provides reliable, in-order delivery, and UDP, which provides unreliable, unordered delivery. It then discusses principles of reliable data transfer over unreliable channels, including using checksums, acknowledgments, negative acknowledgments, sequence numbers, and retransmissions. It also covers topics like pipelining data transfer using protocols like Go-Back-N and Selective Repeat.

Uploaded by

sylinx
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
62 views16 pages

Chapter 3: Transport Layer: (PART 1)

This document discusses the transport layer and reliable data transfer. It describes two transport layer protocols: TCP, which provides reliable, in-order delivery, and UDP, which provides unreliable, unordered delivery. It then discusses principles of reliable data transfer over unreliable channels, including using checksums, acknowledgments, negative acknowledgments, sequence numbers, and retransmissions. It also covers topics like pipelining data transfer using protocols like Go-Back-N and Selective Repeat.

Uploaded by

sylinx
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

55490005

Chapter 3: Transport Layer


(PART 1)

Computer Networking: A Top Down


Approach 6th Edition
1 Jim Kurose, Keith Ross
2

Outline
 Transport Layer Services
 Connectionless Transport: UDP
 Principles of Reliable Data Transfer
3

Transport Layer Services


 Transport layer provides logical communication
between application processes
 Transport protocols run in end systems
 There are two transport layer protocols
 TCP
 UDP
4

Transport Layer Services


 TCP
 Reliable, in-order delivery
 Congestion control
 Flow control
 Connection setup
 UDP
 Unreliable, unordered delivery
 No extension of best-effort IP

 Delay guarantees and bandwidth guarantees arenat


available on TCP and UDP
5

Connectionless Transport: UDP


 UDP
 Best effort service
 UDP segments may be lost, or delivered out of order to
applicaiton
 Connectionless
 No handshaking between UDP sender and receiver
 UDP is used by:
 Streaming Multimedia
 DNS
 SNMP
6

Connectionless Transport: UDP


 Why UDP?
 No connection establishment (which can add delay)
 Simple: No connection state at sender or receiver
 Small header size
 No congestion control: (can blast away as fast as desired)
7

Connectionless Transport: UDP


 UDP Checksum
 Used to detect errors in transmitted segment
 Sender:
 Treatsegment contents as a sequence of 16 bit integers
 Checksum: addition of segment contents
 Sender puts checksum value into UDP checksum field
8

Connectionless Transport: UDP


 UDP Checksum
 Used to detect errors in transmitted segment
 Receiver:
 Compute checksum of received segment
 Check the computed checksum whether it is equal to
checksum field value or not
 NO: error detected
 YES: no error detected
9

Principles of Reliable Data Transfer


 Reliable data transfer is important in applicaiton,
transport and link layers
 The complexity of reliable data transfer protocol is
related to the characteristics of unreliable channel
 Incrementally reliable data transfer protocol will be
developed.
 Only unidirectional data transfer will be considered.
10

Principles of Reliable Data Transfer


 Rdt 1.0 reliable data transfer over a reliable channel
 No bit errors
 No loss of packets
 Rdt 2.0 channel with bit errors
 Channel may flip bits in packet
 Checksum
 Acknowledgements (ACKs)
 Negative Acknowledgements (NAKs)
11

Principles of Reliable Data Transfer


 Rdt 2.0 channel has a big problem
 What happens if ACK/NAK corrupted? (RDT 2.1 sender
handles garbled ACK/NAKs)
 Can not just retransmit: possible duplicate
 Handling duplicates:
 Sender retransmits current paket if ACK/NAK corrupted
 Sender adds sequence number to each paket
 Receiver discards duplicate paket
12

Principles of Reliable Data Transfer


 Rdt 2.2 NAK-free protocol
 Same functionality as rdt 2.1 using ACKs only
 Instead of NAK receiver sends ACK for last paket received
OK
 Duplicate ACK at sender results in same action as NAK:
retransmit current paket
13

Principles of Reliable Data Transfer


 Rdt 3.0 channels with errors and loss
 Underlying channel can also lose packets (data or ACKs)
 Sender waits reasonable amount of time for ACK
 Retransmits if no ACK received in this time
 Requires countdown timer
14

Principles of Reliable Data Transfer


 Pipelined protocols
 Pipelining: Sender allows multiple in flight yet to be
acknowledged pakets
 Range of sequence numbers should be increased
 Buffering
 Two generic forms of pipelined protocols:
 Go-Back-N
 Selective Repeat
15

Principles of Reliable Data Transfer


 Go-back-N
 Sender can have up to N unacked packets in pipeline
 Receiver only sends cumulative ACKs
 Sender has timer for oldest unacked packet
16

Principles of Reliable Data Transfer


 Selective Repeat
 Sender can have up to N unacked packets in pipeline
 Receiver sends individual ACK for each packet
 Sender maintains timer for each unacked packet

You might also like