Transport Layer Flashcards
What are the four primary functions of the Transport Layer
Addressing and Packetisation
Connection(less) Service
Reliable Data Transfer
Flow and Congestion Control
Does the Transport Layer work with IP addresses or URLs? How do sender processes address other processes? What does the Transport Layer do in terms of packetisation?
IP addresses
Through their socket addresses
Multiplexing and Demultiplexing
What do socket addresses include?
The IP address and port numbers
What is transport layer multiplexing?
The receiving of data from sender processes AND
their encapsulation into transport layer segments by adding transport layer headers to them
AND
the passing of these segments to the network layer
What is transport layer demultiplexing?
The segments are passed back from the network layer to the transport layer
AND
data is extracted fromt hese
AND directed to their respective destination process
What values can a port number take? What is ICANN? Which port numbers are reserved from applications such as FTP, HTTP, SMTP?
Any value between 0 and 65535
The authority that reserves oprt numbers to various applications
0-1023
Can multiple processes listen on the same port number?
Yes, as, for example, a web server can run multiple processes listening on port number 80, and when a segment with destination port number 80 arrives to this server, the extracted data is sent to one of these web server processes.
Can there be multiple network sockets per process?
Yes, there can, each with a unique identifier
Can a destination process receive packets from multiple source hosts on a single socket?
Yes, this is possible with UDP, but not with TCP.
What does the transport layer depend on for process-to-process data delivery?
The host-to-host delivery service of the network layer, which in turn depends on the node-to-node data delivery service of the data link layer
What is the primary function of the “Connection(less) Service” of the Transport Layer?
What two mechanisms does it have in place for this?
What do connection services involve that connectionless services do not?
What do connectionless services involve that connection services do not?
Ensuring that the packets arrive at the receiving process in the same order that they were sent
Buffering and Reordering
The establishing of private connections between nodes.
Sending of messages individually and in any order.
What is buffering?
The temporary storage of data packets by the Transport Layer to manage the flow and ensure efficient delivery
What is reordering?
The rearranging of data packets by the Transport Layer to correct sequence discrepancies and ensure proper delivery
What is another important property of connection-oriented services?
That they are stateful, i.e., remember details such as the order in which the packets are sent and the list of packets already received
What is an example of a connection-oriented transport layer protocol?
TCP
What is the Three Way Handshake? What its steps? How does a connection termination procedure differ?
A message exchange procedure used to establish a connection between processes
- Host A sends a connection request to Host B
- Host B sends an acknowledgement
- Host B sends a connection request to Host A
- Host A sends an acknowledgement
It is the same only that instead of connection requests, there are connection release requests.
What is an important property for connectionless services?
They are stateless
What is an example of a connectionless transport layer protocol?
UDP
What is UDP? What services does it provide?
A connectionless transport layer protocol
Only multiplexing and demultiplexing
What are some of its advantages?
Small header sizes due to simplicity, leading to very small communication overhead
No congestion control, meaning that UDP applications can utilise the full speed of the communication channel
What are UDP sockets identified by?
Pair of destination IP address and destination port number
What is a word?
a fixed-length sequence of bits, with the length chosen according to the unit of computation in a certain computer architecture
What is the UDP packet format?
Header, has 8 bytes of data, and is followed by the data
What four things does the Header contain, and how many bits do each of them have?
Source Port Number, Destination Port Number, Total Length, Checksum
16 bits each
What do the 16 bits of Total Length in the header show?
the length of the entire UDP datagram, including the header and data
What is the checksum used for? How is it computed? How can it be used to check whether a segment is corrupt?
A check of integrity, i.e., whether there are bit errors or not
The pseudo IP header, UDP header, and payload are considered as a sequence of 16-bit integers. These sequences of 16-bit integers are added together, and then the complement of the sum is taken. The resulting checksum value is placed in the checksum field of the UDP header.
Checksum value calculated by receiver and if it differs from the value in the UDP header, then the segment is condluded to be corrupt.