Written Assignment Unit 7, Communications and Networking

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Written Assignment Unit 7

University of the People

CS 2204-01- AY 2023-T5: Communications and Networking


Instructor Dr. Sarika Arora
August 01, 2023
1. Why does the maximum packet lifetime have to be large enough to ensure that not only the
packet but also its acknowledgments have disappeared?

Waiting ensures that both the FIN packet and its acknowledgment have left the network,
avoiding confusion with new connections that may reuse the same port. In general, 2MSL
protects the integrity of the TCP connection and prevents problems during termination
​(“Everything You Always Wanted to Know About TCP but Too Afraid to Ask,” 2023).

2. Give one potential disadvantage when Nagle's algorithm is used on a badly congested
network.

The interaction between Nagle's algorithm and the delayed ACK strategy can cause delays
and temporary deadlocks in some TCP-based systems, especially where HTTP/1.1
implementations use persistent connections. Disabling the Nagle algorithm in this case may
be a solution to improve performance and avoid these issues (Minshall, 2016).

3. Give two examples of cases where TCP sends data-less packets on an established
connection.

- Keepalive packets: If a TCP connection has no data transmission for a long time,
these intermediate nodes can reset the connection. To prevent this from happening,
TCP Keep-Alves periodically sends packets over the TCP connection to indicate its
activity and keep the connection alive.

The initial setup and decision to switch to the SMC protocol is done over a TCP
connection. However, once the decision is made, the TCP connection will continue to
work, but only with a kill message if necessary. The actual application socket data is
sent out-of-band using the Remote Direct Memory Access (RDMA) or Intersystem
Memory (ISM) protocol, which means it bypasses the standard TCP data stream and
uses an alternative, more efficient data transfer method (IBM Documentation, n.d.).

- TCP flow control sliding window: The TCP flow control mechanism maintains a
balanced data transmission between the sending and receiving systems. This is done
by controlling the amount of data transferred based on the availability of space in the
receiver's buffer. Receive windows are used by receivers to communicate the status of
their buffers to the sender system. Therefore, the sending system adjusts its
transmission rate accordingly, ensuring a reliable and efficient data exchange process
(IBM Documentation, n.d.-b).

4. Exercise 5.0 from section 12.24 of the textbook:

a) Suppose you see multiple TCP connections on your workstation in state


FIN_WAIT_1. What is likely going on? Whose fault is it?
FIN_WAIT_1 means that the remote computer has ended the connection, but the local
application connected to it has not yet acknowledged the connection.
A large number of pins in the FIN_WAIT state may indicate a connectivity issue between the
two systems or a problem with the native software (OPC Support, n.d.).

b) What might be going on if you see connections languishing in state FIN_WAIT_2?

FIN_WAIT_2 means that the local computer has ended the connection, but the remote
computer has not acknowledged it. This status can also indicate a loss of connectivity
between the two systems (OPC Support, n.d.).
References

Everything You Always Wanted to Know About TCP But Too Afraid to Ask. (2023, June

22). ByteByteGo. Retrieved August 1, 2023, from

https://blog.bytebytego.com/p/everything-you-always-wanted-to-know

IBM Documentation. (n.d.-a).

https://www.ibm.com/docs/en/zos/2.3.0?topic=functions-tcp-keepalive

IBM Documentation. (n.d.-b).

https://www.ibm.com/docs/en/tsmfsan/7.1.0?topic=SSSQZW_7.1.0/com.ibm.itsm.per

f.doc/c_network_sliding_window.htm

Minshall, G. (2016). Rethinking the TCP Nagle algorithm. www.academia.edu.

https://www.academia.edu/21709654/Rethinking_the_TCP_Nagle_algorithm

OPC Support. (n.d.).

https://www.opcsupport.com/s/article/PATUsing-netstat-reveals-lots-of-sockets-open-i

n-state-FINWAIT1-or-FINWAIT2KB350#:~:text=FIN_WAIT_1%20indicates%20that

%20the%20remote,computer%20has%20not%20acknowledged%20it.

You might also like