Transport layer Flashcards

1
Q

Where do transport protocols run?

A

End systems only

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

send side

A

breaks application messages into segments, pass them to network layer

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

receive side

A

reassembles segments into messages, passes to application layer

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

Network layer vs. Transport layer

A

Network - logical communication between hosts

Transport - logical communication between processes
relies on network layer services

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

6 functions

A
  • connection management
  • packetization and reassembly of app data
  • error control
  • reliability
  • flow control
  • congestion control
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

transport layer error/ flow control vs. DLL error/ flow controll

A
  • transport layer flow control and error control is end-to-end
  • DLL flow control and error control is per-hop
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

end-to-end flow control

A
  • assumes unreliable delivery of frames by DLL
  • works well when few errors b/t links (wastes bandwidth when there’re errors in first hop, b/c corrupted data is transmitted over following links)
  • less overhead than per-hop for high quality links
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

TCP socket identified by: (4 things)

A
  • source IP
  • source port
  • dest IP
  • dest port

Web servers have different sockets for each connecting client

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

UDP checksum

A
  • 1’s complement addition of segment contents

- receiver computes checksum of received value and compares with checksum field

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

TCP stream delivery

A
  • data from application is treated as a stream of bytes divided into segments (data boundaries ignored)
  • each byte has a sequence #, only 1st sequence # of the segment is sent
  • window sizes in bytes (instead of # of frames)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

PUSH flag

A
  • forced delivery

- if your TCP module decides a segment is still too small to send (waiting for more bytes)

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

Urgent flag

A
  • urgently deliver a part of the data stream regardless of its position in the stream
  • encapsulate urgent data into a segment with URG = 1

Urgent pointer in TCP header lets you specify where urgent data ends

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

how are connections identified in TCP?

A

by a pair of endpoints (IP address, port) pair

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

ISN

A
  • Initial sequence #
  • chosen based on current time

-should be unpredictable to defend against TCP sequence prediction attacks

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

if SYN == 1, then

A

this is the initial sequence #

SYN and FIN are 1 byte in sequence # if set

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

half closed

A

After A terminates connection, but B hasn’t yet

Data can only flow from B to A now. A HAS to keep receiving data from B and returning Acks (for what sequence # it expects next)

Officially closed when B sends last outgoing segment (FIN = 1) and gets an Ack back

17
Q

how does a sender perceive congestion?

A

a loss event (either a timeout OR 3 duplicate ACKs)

18
Q

TCP AIMD

A

Additive increase / multiplicative decrease

Increase cwnd (congestion window size) by 1 MSS (maximum segment size) every RTT in the absence of loss events

Cut cwnd in half after loss event

19
Q

fast retransmission

A

-when network doesn’t seem congested, but a packet is lost (b/c duplicate Acks)

-retransmits lost segment IMMEDIATELY after 3rd duplicate Ack
(doesn’t wait for timeout)

20
Q

Fast recovery

A

after fast retransmission, cut value of cwnd (congestion window size) in half
(skip slow start phase)

21
Q

Congestion avoidance

A

predict when congestion is about to happen and then reduce rate at which hosts send data just before packets start getting discarded

22
Q

source based congestion avoidance

A

watch for some sign from network that some router’s queue is building up, and that congestion will happen soon

-like increase in RTT for successive packets

23
Q

Random early detection congestion avoidance mechanism

A

router is programmed to monitor its own queue length, and notifies source to adjust its congestion window when it detects congestion is imminent

24
Q

flow control

A

end-to-end issue

-preventing senders from over-running the capacity of receivers

(flow control also used for receivers sending window size to sender)

25
Q

congestion control

A

preventing too much data form being injected into network

26
Q

TCP Fairness

A

if K TCP sessions share same bottleneck link of bandwidth R, each should have avg rate of R/K

27
Q

when Cwnd is above ssthresh, sender is in ______ phase.

A

congestion avoidance phase

window grows linearly

28
Q

when a timeout occurs, ssthresh is set to _____ and Cwnd is set to _____

A

ssthresh = Cwnd / 2

Cwnd = 1 MSS (maximum segment size)