The transport layer Flashcards

1
Q

What is multiplexing?

A

In the context of a communication network, multiplexing is the idea of transmitting multiple signals over a single channel, withdemultiplexingbeing the reverse process.

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

How does multiplexing work at the physical level?

A

at the physical level we can think of optical fibres carrying multiple light signals at different angles of refraction.

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

At the transport layer, how does multiplexing take place?

A

at the Transport layer of our network communication model, this takes place through the use ofnetwork ports.

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

What is a port?

A

a port is an identifier for a specific process running on a host

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

What are ports 0-1023 use for?

A

0-1023 are well-known ports. These are assigned to processes that provide commonly used network services. For example HTTP is port 80, FTP is port 20 and 21, SMTP is port 25, and so on.

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

what are ports 1024-49151 used for?

A

1024-49151 are registered ports. They are assigned as requested by private entities. For example, companies such as Microsoft, IBM, and Cisco have ports assigned that they use to provide specific services. On some operating systems, ports in this range are also used for allocation asephemeral portson the client side

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

What are ports 49152-65535 used for?

A

49152-65535 are dynamic ports (sometimes known as private ports). Ports in this range cannot be registered for a specific use. They can be used for customized services or for allocation asephemeral ports.

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

What port would a web server using HTTP use?

A

Services running on servers will likely have a port in the well-known range assigned to them. If you want to connect via HTTP to a web-server running on a host machine, that web-server process will likely have port 80 assigned to it.

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

How are ports related to multiplexing?

A

This relates to multiplexing because the source and destination port numbers are included in the Protocol Data Units (PDU) for the transport layer.

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

What encapsulates the Transport layer PDU

A

This entire transport layer PDU is encapsulated in the data payload of the IP packet.

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

What defines socket or communication end point?

A

Together, the IP address and port number define a communication end-point or socket.

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

What is a socket?

A

At a conceptual level a socket is an abstraction for an endpoint used for inter-process communication.

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

What is a connectionless system?

A

In a connectionless system, you could have a single socket that ‘listens’ for incoming messages. It could then process incoming traffic and respond as necessary.

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

What is a connection-oriented system?

A

Here will still have a socket that listens for incoming traffic, but when a communication is received, a new socket object is instantiated which new socket object would then listen specifically for messages where all four pieces of information matched (source port, source IP, destination port, destination IP).

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

What is a four-tuple?

A

Identifying information on a segment.
source port, source IP, destination port, destination IP

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

What is the advantage of a connection oriented system?

A

The advantage of having a dedicated connection like this is that it more easily allows you to put in place rules for managing the communication such as the order of messages, acknowledgements that messages had been received, retransmission of messages that weren’t received, and so on.

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

Do ethernet & IP provide for lost data?

A

No, They include checksums for corrupt data but simply drop the packet in that case. There is no provision for enabling replacement of lost data.

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

What rules for transmission does the transport layer use to guarantee delivery?

A
  • Sender sends one message at a time, with a sequence number, and sets a timeout
  • If message received, receiver sends an acknowledgement which uses the sequence number of the message to indicate which message was received
  • When acknowledgement is received, sender sends next message in the sequence
  • If acknowledgement is not received before the timeout expires, sender assumes either the message or the acknowledgement went missing and sends the same message again with the same sequence number
  • If the recipient receives a message with a duplicate sequence number it assumes the sender never received the acknowledgement and so sends another acknowledgement for that sequence number and discards the duplicate
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is pipelining?

A

‘pipelining’ is sending a set number of packets at once and waiting for receipt.

20
Q

In the context of pipelining, what is a window?

A

the ‘window’ represents the maximum number of messages that can be in the ‘pipeline’ at any one time, once it has received the appropriate acknowledgements for the messages in the window, it moves the window on.

21
Q

What does TCP provide?

A

What TCP essentially provides is the abstraction of reliable network communication on top of an unreliable channel: data integrity, de-duplication, in-order delivery, and retransmission of lost data.

22
Q

How does TCP provide multiplexing?

A

Within a TCP segment, it is the source & destination ports that provide multiplexing capability.

23
Q

What are the PDUs of TCP?

A

Segments are the Protocol Data Unit (PDU) of TCP.

24
Q

How does TCP deal with connections?

A

TCP is a connection oriented communication protocol

25
Q

What are the important segment heads in TCP

A
  • CHECKSUM: The Checksum provides the Error Detection aspect of TCP reliability.
  • SEQUENCE NUMBER and ACKNOWLEDGEMENT NUMBER: these two fields are used together to provide for the other elements of TCP reliability such as In-order Delivery, Handling Data Loss, and Handling Duplication.
  • WINDOW SIZE field is related to Flow Control
26
Q

What is the TCP three way handshake?

A

Sender: sends SYN
receiver: sends SYN ACK
Sender: sends ACK
connection is now established

27
Q

What is the latency of establishing a TCP connection?

A

Since the sender cannot send any application data until after it has sent theACKSegment, there is an entire round-trip of latency before any application data can be exchanged.

28
Q

What is flow control? How is it implemented in TCP?

A

Since only a certain amount of data can be processed at once/ stored in buffer, Each side of a connection can let the other side know the amount of data that it is willing to accept via the WINDOW field of the TCP header. The window is dynamic and can change with changing memory use.

29
Q

What is the difference between flow control and congestion avoidance?

A

flow control prevents the sender from overwhelming the receiver, it doesn’t prevent either the sender or receiver from overwhelming the underlying network.

30
Q

What is network congestion?

A

Network Congestion is a situation that occurs when there is more data being transmitted on the network than there is network capacity to process and transmit the data. Instead of things slowing down, packets will simply be lost.

31
Q

How does TCP implement congestion avoidance?

A

TCP uses this data loss as a feedback mechanism to detect, and avoid, network congestion.

32
Q

What are the disadvantages of TCP?

A
  1. latency overhead in establishing a TCP connection due to the handshake process
  2. Head-of-Line (HOL) blocking: if a segment goes missing and needs to be retransmitted, the segments that come after it in the sequence can’t be processed, and need to be buffered until the retransmission has occurred.
33
Q

What is the PDU of UDP?

A

The Protocol Data Unit (PDU) of UDP is known as a Datagram.

34
Q

What is the difference between TCP & UDP?

A
  • provides no guarantee of message delivery
  • provides no guarantee of message delivery order
  • provides no built-in congestion avoidance or flow-control mechanisms
  • provides no connection state tracking, since it is a connectionless protocol
35
Q

What are the advantages of UDP over TCP?

A
  • lack of acknowledgements and retransmissions means that the actual data delivery itself is faster.
    • lack of a handshake also makes it faster to start sending messages
  • lack of in-order delivery also removes the issue of Head-of-line blocking (at least at the Transport layer).
  • Latency is less of an issue since without acknowledgements data essentially just flows one way: from sender to receiver.
36
Q

What do multiplexing and demultiplexing provide for?

A

Multiplexinganddemultiplexingprovide for the transmission ofmultiple signals over a single channel

37
Q

how is multiplexing enabled at the transport layer?

A

Multiplexing is enabled through the use ofnetwork ports

38
Q

What are network sockets?

A

Network sockets can be thought of as acombination of IP address and port number

39
Q

What can a socket be at an implementation level?

A

At theimplementation level, network sockets can also besocket objects

40
Q

Why do we need TCP & UDP?

A

The underlying network isinherently unreliable. If we want reliable data transport we need to implement a system of rules to enable it.

41
Q

What is TCP?

A

TCPis aconnection-orientedprotocol. It establishes a connection using theThree-way-handshake

42
Q

What does TCP provide?

A

TCP provides reliability throughmessage acknowledgementandretransmission, andin-order delivery. TCP also providesFlow ControlandCongestion Avoidance

43
Q

What are TCPs main downsides?

A

The maindownsides of TCPare thelatency overhead of establishing a connection, and the potentialHead-of-line blockingas a result of in-order delivery.

44
Q

What does UDP provide?

A
  • UDPis a very simple protocol compared to TCP. It providesmultiplexing, but no reliability, no in-order delivery, and no congestion or flow control.
  • UDPisconnectionless, and so doesn’t need to establish a connection before it starts sending data
45
Q

What is the advantage of UDP?

A

Although it is unreliable, theadvantage of UDPisspeedandflexibility.