Transport Layer I Flashcards
(9 cards)
Transport services and protocols
provide logical communication
between application processes
running on different hosts
transport protocols actions in end
systems:
* sender: breaks application messages
into segments, passes to network layer
- receiver: reassembles segments into
messages, passes to application layer
▪two well known transport protocols
available to Internet applications
*TCP, UDP
Transport vs. network layer services and protocols
transport layer:
communication between
processes
* relies on, enhances, network
layer services
network layer:
communication between
hosts
Transport Layer Actions
Sender:
▪ is passed an application
layer message
▪ determines segment
header fields values
▪ creates segment
▪ passes segment to IP
Receiver:
▪extracts application-layer
message
▪checks header values
▪receives segment from IP
▪demultiplexes message up to application via socket
Multiplexing/demultiplexing
multiplexing as sender:
handle data from multiple
sockets, add transport header (later used for demultiplexing)
demultiplexing as receiver:
use header info to deliver
received segments to correct sockets
Connectionless demultiplexing
when receiving host receives
UDP segment:
* checks destination port # in segment
* directs UDP segment to
socket with that port #
IP/UDP datagrams with same dest. port #, but different source IP
addresses and/or source port numbers will be directed to same
socket at receiving host
Two principal Internet transport protocols
▪TCP: Transmission Control Protocol
* reliable, in-order delivery
*congestion control
* flow control
*connection setup
UDP: User Datagram Protocol
* unreliable, unordered delivery
* no-frills extension of “best-effort” IP
▪services not available:
*delay guarantees
*bandwidth guarantees
UDP: User Datagram Protocol
UDP: User Datagram Protocol
▪ “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→ Reduced RTT
* each UDP segment handled
independently of others
What it does:
Sends data from one device to another
Very simple and fast
🔹 What it does NOT do:
❌ No guaranteed delivery
❌ No error checking or correction
❌ No ordering (data may arrive out of order)
❌ No connection setup (sends data immediately)
Connection-oriented demultiplexing
TCP socket identified by
4-tuple:
* source IP address
* source port number
* dest IP address
* dest port number
demux: receiver uses all
four values (4-tuple) to
direct segment to
appropriate socket
▪ server may support many
simultaneous TCP sockets:
* each socket identified by its
own 4-tuple
* each socket associated with
a different connecting client
Internet checksum
Goal: detect errors (i.e., flipped bits) in transmitted segment
sender:
▪treat contents of UDP
segment (including UDP header
fields and IP addresses) as
sequence of 16-bit integers
▪checksum: addition (one’s
complement sum) of segment
content
▪checksum value put into
UDP checksum field
receiver:
▪compute checksum of received
segment
▪check if computed checksum equals
checksum field value:
* not equal - error detected