With respect to a TCP connection between a client and a server, which one of the
following statements is true?
Eliminate the wrong options one at a time using what you know about TCP's connection state machine.
Option A claims a two-way handshake sets up the connection. TCP actually needs three segments - SYN from the client, SYN plus ACK from the server, and a final ACK from the client - so this is wrong; it is a three-way handshake.
Option B claims the server cannot close first. Since TCP treats the two directions of data flow independently, either endpoint owns the right to send a FIN whenever it has no more data to send, regardless of the peer's state, so the server can absolutely initiate the close.
Option C calls TCP half-duplex, meaning only one side could send at a time. This contradicts the very design of TCP, which supports simultaneous, independent data flow in both directions - it is full-duplex, not half-duplex.
That leaves the correct statement: because both endpoints can independently decide to stop sending data and issue a FIN, nothing prevents both the client and the server from doing so around the same instant. The TCP state machine has a dedicated CLOSING state exactly to handle this simultaneous-close case.
So the true statement is that the client and server can initiate closing of the connection at the same time, Option D.