Week 9 - Transport Layer Part 2 Flashcards

(32 cards)

1
Q

What type of communication does TCP provide at the Transport Layer?

A

TCP provides point-to-point communication between two devices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How does TCP ensure reliable data transfer?

A

TCP uses sequence numbers, acknowledgements (ACKs), and timeouts to guarantee reliable data delivery.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What does it mean that TCP is “connection-oriented”?

A

TCP uses a handshaking process to initialise sender and receiver states before any data exchange, establishing a reliable connection.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What additional features does TCP provide for managing data transfer?

A

TCP supports in-order byte-stream delivery, pipelining, and flow and congestion control to prevent the receiver from being overwhelmed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

In TCP, what is implicitly numbered?

A

Each byte of data is assigned a sequence number, not just each segment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

If a file size is 500,000 bytes and the Maximum Segment Size (MSS) is 1000 bytes, how many segments will TCP create?

A

TCP will create 500 segments (500,000 ÷ 1000 = 500).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What would be the sequence number for the first few TCP segments?

A
  • Segment 1: Sequence number = 0
  • Segment 2: Sequence number = 1000
  • Segment 3: Sequence number = 2000
  • Segment 500: Sequence number = 500000
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How are sequence numbers used in TCP segments?

A

Sequence numbers allow TCP to keep track of where each piece of data fits into the original data stream, ensuring reliable, in-order delivery.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What does a TCP segment’s ACK number represent?

A

It is the sequence number of the next byte the receiver expects from the sender, indicating cumulative acknowledgement.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is a cumulative ACK in TCP?

A

It means the receiver acknowledges all bytes up to (but not including) the byte indicated by the ACK number.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does TCP handle segments received out-of-order?

A

The TCP specification doesn’t require a specific behavior — it’s up to the application (but usually, out-of-order segments are kept for reordering).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

When does TCP start the retransmission timer?

A

TCP starts the retransmission timer when sending a segment if the timer is not already running.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does the TCP retransmission timer track?

A

It tracks the oldest unacknowledged (unACK’d) segment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What happens when TCP receives an ACK?

A

TCP updates the record of what data has been ACK’d and restarts the timer if there are still unACK’d segments.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What happens if the TCP retransmission timer times out?

A

TCP retransmits the segment that caused the timeout and restarts the timer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

n a TCP timeout scenario, what happens to a segment that was already acknowledged (e.g., Segment #100)?

A

A segment that has already been ACK’d (like Segment #100) is not retransmitted, even if a timeout occurs.

17
Q

During a TCP timeout, which segment is retransmitted?

A

Only the oldest unACK’d segment is retransmitted when the timeout occurs.

18
Q

What ensures that TCP doesn’t unnecessarily retransmit already ACK’d data?

A

TCP keeps track of ACKs, and only retransmits unACK’d segments, avoiding duplicate data transmission.

19
Q

Why is avoiding unnecessary retransmissions important in TCP?

A

It improves efficiency, saves bandwidth, and prevents network congestion.

20
Q

What is a cumulative ACK in TCP?

A

A cumulative ACK acknowledges all bytes up to (but not including) the next expected byte, confirming receipt of multiple segments at once.

21
Q

In a TCP timeout with cumulative ACKs, why might Segment #92 not be retransmitted?

A

Because Segment #92 was already covered by the cumulative ACK, meaning it was received correctly, even if later segments timeout.

22
Q

How does a longer timeout help in TCP retransmission with cumulative ACKs?

A

A longer timeout allows TCP to receive and acknowledge multiple segments without retransmitting ones that were already successfully delivered.

23
Q

What is the advantage of using cumulative ACKs during retransmission timeouts?

A

It reduces unnecessary retransmissions, making TCP more efficient and reducing congestion on the network.

24
Q

Why does TCP require a handshake before data exchange?

A

Because TCP is connection-oriented; sender and receiver must establish a connection first.

25
What happens during the TCP handshake?
The sender and receiver agree on connection parameters, such as initial sequence numbers.
26
What type of handshake does TCP use to establish a connection?
TCP uses a 3-Way Handshake to establish a connection.
27
What type of handshake does TCP use to close a connection?
TCP uses a 4-Way Handshake to close the connection properly.
28
Why does TCP need flow control?
To prevent the receiver’s buffer from overflowing by limiting how much data the sender transmits.
29
How does the TCP receiver control the flow of data from the sender?
By altering the window size using the window_size (rwnd) parameter in the TCP header.
30
What does the TCP window size represent?
It is the amount of unACK’d (in-flight) data the sender is allowed to send at any time.
31
What happens when the receiver decreases the window size?
It reduces the amount of data the sender can send, limiting incoming traffic to avoid buffer overflow.
32