Ch3. Transport Layer

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/16

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

17 Terms

1
New cards

What is the responsibility of the transport layer?

Provide reliable data transfer from a process on the source host to a process on the destination host

2
New cards

What services does the transport layer provide to the upper layers?

Provide efficient, reliable data transmission to users (Programs running at layer 5)

Allows programs on layer 5 to run on a variety of networks, isolating the app layer from the underlying network layer

3
New cards

What are the transport layer primitives that apps can call for TCP services?

Listen, connect, send, receive, disconnect

4
New cards

What is a socket?

Sockets are a way to connect two programs to communicate and exchange data. They can send and receive data bi-directionally at any moment

5
New cards

What are the socket primitives?

Socket, bind, listen, accept, connect, send, receive, close

6
New cards

What are the basic steps of a socket server program?

Create a socket, bind it to an IP address and port, then listen for CRs, send and receive data, then close connection

7
New cards

What are the basic steps of a socket client program?

Create a socket, connect to the server’s IP address and port, send and receive data, then close connection

8
New cards

When an app wishes to set up a connection to another app running on a remote host, how does it know which one to connect to?

A transport address (or port)

9
New cards

How does an app in the application layer access the services in the transport layer?

The transport layer provides primitives to access TCP services

10
New cards

What are the default ports for HTTP, HTTPS, SSH, and FTP?

80, 443, 22, 20/21

11
New cards

What are the approaches TCP uses to ensure reliability?

Lost/corrupt packets are handled with ARQ and checksums

Delayed/duped packets are handled with TCP sequence numbers

12
New cards

What is a TCP sequence number?

TCP Seq num identifies a TCP segment’s place in the byte stream

It keeps track of data up to which byte number the sender has sent

13
New cards

What is an acknowledgement number?

It is used by the receiver to tell the sender that the data up to a certain byte number has been successfully received

14
New cards

How does the TCP 3-way handshake work?

15
New cards

What is the key problem to ensure reliability while releasing a TCP connection?

Timer and retransmission

16
New cards

What are the three failure cases in connection release that can be handled by timer and retransmission?

The final ACK is lost, Host 2 times out

A lost DR causes retransmissions

Many lost DRs cause both hosts to time out

17
New cards

How to organize the buffer pool for TCP flow control?

Receiver can notify sender of its available window buffer