TCP Flashcards

1
Q

True/False - The transport layer runs in end systems

A

True

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

What are the units in TCP

A

TCP - Segments, UDP - Datagrams

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

True/False - UDP does not provide error control only error checking

A

True

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

In UDP what happens to datagrams with errors

A

They are dropped

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

True/False - In UDP when datagrams are dropped there are gaps at the application level

A

True

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

True/False - neither TCP nor UDP provides for guaranteed delay or guaranteed bandwidth

A

True

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

True/False - IP does not provide for full delivery

A

True

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

Describe UDP

A

Connectionless (no handshake), unreliable

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

Describe TCP

A

Connection oriented (Handshake), reliable. used for services that cannot tolerate loss, byte oriented (no msg boundary)

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

In the TCP header, what is the purpose of the sequence number

A

To identify the number of the 1st byte in the payload

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

In the TCP header, what is the purpose of ack acknowledgment field

A

To provide the number of the next byte expected to be rx’d

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

In the TCP header, what is the purpose of the rx window size field

A

To specify the number of bytes the rx’er is willing to accept (space in buffer)

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

Describe the TCP 3-way Handshake process

A
  • The initiator selects a random initial sequence number
  • The initiator sends a segment with the Syn byte flagged and the ISN
  • The rx’er selects a random initial sequence number
  • The rx’er sends a segment with the the Syn and Ack bytes flagged and it’s ISN along with an ACK of the next seq number expected and its window size
  • The connection is opened on the initiator side
  • The initiator sends the next segment with the Ack byte flagged, The ACk with the next expected seq number from the rx’er and its window sz.
  • The connection is opened on the rx’er side
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

True/False - The final Ack of the TCP three way handshake can contain data

A

True

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

Describe piggy backing in the TCP data transfer phase

A

The an ack is embedded with a data segment

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

True/False - When the connection is to be closed the fin bit is set, there is no payload and 1 seq number is consumed

A

True

17
Q

True/False - There is only 1 Retransmission timer which is for the oldest segment when multiple segments are sent. When the oldest segment is acknowledged the timer gets set to the next oldest segment

A

True

18
Q

In TCP, what two things trigger retransmission

A

T/O expiration and 3 duplicate acknowledgements

19
Q

True/False - The rx’er may wait for up to 500 ms for more possible segments to arrive and use a cumulative acknowledgement

A

True

20
Q

Why does TCP consider T/O to be more serious than 3 dupes

A

Because dupes mean that other segments are getting through so the network congestion must have just been for a short time

21
Q

True/False - If the rx’er gets duplicates or already acknowledged segments it drops them

A

True

22
Q

True/False - If the rx’er has its own data to send it will not wait the 500ms for more segments

A

True

23
Q

In TCP flow control what is the rx’er window spare room

A

rx’er buffer - [ seq # last byte rx’d - seq # last byte read into app ]

24
Q

In TCP flow control what is the sender window size

A

Advertised Rx’er Window Size - [ Seq # last byte sent - seq # last byte ack’d ]

25
Q

True/False - IP does not provide any mechanism for congestion Control

A

True

26
Q

In TCP congestion control what is the max # of bytes that can be sent

A

min{advertised rx win sz, congestion window}

27
Q

True/False - In the TCP Tahoe implementation T/O and 3 Dup acks are weighed equally

A

True

28
Q

Describe the TCP Tahoe Flow

A

(Slow Start Phase)
- Start by setting congestion win to 1 MSS
- Each time the sender rx an ACK it increases congestion window by 1
(Congestion Avoidance)
- Upon reaching slow start threshold Congestion Window is increased by 1 for each RTT
(Congestion Control)
- Upon detecting t/o or 3 dupes, the slow start threshold is set to 1/2 what it was (min{Wa, Wc}) and the congestion window is set to 1 MSS
- The slow start phase starts again

29
Q

True/False - In the TCP Reno implementation T/O is weight more severely than 3 Dupes

A

True

30
Q

Describe the TCP Reno Flow

A

(Slow Start Phase)
- Start by setting Wc to 1 MSS
- increase Wc by 1 for each ACK rx’d
- Upon reaching ss thresh inc Wc by 1 for each RTT
- Upon T/O reduce SS thresh to 1/2 current Wc (min{Wc,Wa}) and reduce Wc to 1 MSS
- Upon 3 Dupes reduce Wc to current SS thresh

31
Q

Describe the TCP AIMD approach

A
  • Inc Wc by 1 for every RTT until a loss is detected then cut Wc by half and start again