3: Transport Layer Flashcards
What is the transport layer?
The layer in the layered model responsible for providing an abstraction over end-end communications between applications running on different hosts.
What is connection management?
The methods by which network connections are opened and maintained in such a manner to ensure they are suitable for data transmission.
What are message segments?
The discrete units that messages are split into before they are passed to the network layer, which provides logical communication between hosts (but not applications on hosts - that is the job of the transport layer).
What is the difference between the network and transport layers?
The network layer provides logical communication between hosts, whereas the transport layer provides logical communication between applications on hosts.
What is reliable data transfer?
The concept of providing integrity and certain delivery to data transmission.
What is the concept of fairness?
Every TCP connection going through a bottleneck link should have equal shares of its rate.
When may a 2-way handshake fail?
If client times out and retransmits but the server didn’t timeout and the connection is established, then the retransmitted connection reaches the server after the true connection closes, and there could also be data lagging as well that could interfere with state too.
What is pipelining?
When you send multiple packets between acknowledgements, rather than 1 at a time in stop-and-wait.
What are acknowledgements?
Specialised messages specifying that certain other messages and packets were received successfully.
What is connectionless demultiplexing?
With UDP, no connection in sockets so you may have multiple sockets at the same IP and port number when you demultiplex an Internet signal at a host.
What is connection-oriented demultiplexing?
With TCP, there are connections in sockets so you have a dedicated pipe between two IP addresses and port numbers. You therefore only get datagrams from one other socket to a socket on a host when demultiplexing TCP signals.
How are TCP sockets uniquely identified?
IP address and port.
What is the structure of a TCP segment?
Header of source and dest port and IP address, seq no, checksum, etc. Then payload.
Why is UDP used?
It removes the overhead from TCP that provides reliability so can be faster for some uses.
What are sender events?
A point in the control flow of a networking app in a sender which necessitates action being taken; they include receiving data from a network app to send, timeouts for acks, and receiving acks.
How can you implement reliable data transfer over an unreliable channel?
Using handshakes, acknowledgements, sequence numbers, handshakes and ECCs.
How can you recover from channels with bit errors?
Use ECCs to correct them or detect with parity bets and checksums, and request retransmissions with negative acknowledgements.
What are negative acknowledgements?
Specialised messages specifying that certain other messages and packets were received unsuccessfully, with errors.