Transport Layer Flashcards

1
Q

What is the transport layer for?

A

Logical end to end connection between applications running on 2 hosts

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

What is TCP?

A

Transmission Control Protocol
Reliable and in-order
Connection oriented
Congestion and flow control

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

How does the sender work in the transport layer?

A

Receives and breaks up application layer message
Determines segment header fields creates segment
Passes segment to IP

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

How does the receiver work in the transport layer?

A

Receives segment from IP
Checks header values
Extracts application layer message
Demuxes message up to application via socket

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

What is UDP?

A

User datagram protocol

Unreliable and unordered

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

How does de-multiplexing work?

A

Delivering data as it arrives to transport layer
From network layer below to multiple sockets above
Destination host receives IP datagrams
Host uses IP addresses and port no. to direct segment to socket

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

How does multiplexing work?

A

Gathering data from multiple sockets above

Passing as a stream of segments to network layer below

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

How does TCP use connection oriented de-muxing?

A

TCP socket identified by 4-tuple: source IP, source port no, dest IP, dest Port no
Receiver uses 4 values to direct segment to socket
Server may support many simultaneous TCP sockets (different connecting clients)

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

How does UDP use conectionless demuxing?

A

UDP socket associated with source IP and port no
Creates packet specifying dest IP and dest port no
Receiving host receives UDP segment on destination transport layer
Checks destination port no
Directs data in that segment to socket with that port no
Received on destination application layer

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

How is data lost?

A

Packet loss due to congestion
Corrupted packets/dropped packets at receiver due to bugs
Undeliverable packets due to hardware
Different order due to delay/loss/retransmission

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

What is the UDP checksum?

A

Detects errors in transmitted segment

Sender: treat contents of UDP as 16 bit integer sequences
Compute checksum addition
Place value in checksum field

Receiver: compute checksum of received segment
Check = to field value

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

How do we ensure reliable data transfer in a reliable channel?

A

Separate FSMs for sender and receiver

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

How do we ensure reliable data transfer in a channel with bit errors?

A

Acknowledgements: receiver tells sender packet received fine

Negative acks = receiver tells sender packet has errors

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

How do we ensure reliable data transfer in a channel with errors and loss?

A

Wait for certain time for acks

No acks = restransmits packets

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

What is the channel utility formula?

A

Channel utility = time sender is busy sending / total time

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

What is a go back n sender?

A

Reliable pipeline transmission over unreliable channel
Sender can transmit multiple packets without waiting for acks
Constrained to have no more than n unacknowledged packets in pipeline
Receiver sends ack for correctly received packet with highest seq no so far

17
Q

What is network congestion and how do we stop it?

A

Network node receives too much traffic

  • routers use store forward
  • multiple incoming links can saturate outgoing
  • slower outgoing can be saturated by incoming
  • try to send as fast as slowest link
18
Q

What is selective repeat?

A

Reliable pipelined transmission over unreliable channel
Receiver individually acknowledges all correctly received packets
Times out/retransmits for unacknowledged packets individually

19
Q

How does congestion control work in TCP?

A

Packet loss due to congestion not error
Sender maintains 2 windows: receiver window and congestion control
Use smaller of 2 windows

20
Q

How do we close TCP connection?

A

Client and server each close their side
Send TCP segment with FIN bit = 1
Respond with ack
4-way handshake

21
Q

How does a TCP sender work?

A

Create segment with sequence no
Start timer
Ack received = ack previously unack segments with lowest sequence no in order

22
Q

What is sequence number?

A

Byte stream number of 1st byte in segment data

23
Q

What is the acknowledgement no?

A

Sequence number of next byte expected from other side