CS6250 Computer Networks Exam 1-
Actual Complete Questions And
Verified Answers 2026
What is multiplexing, and why is it necessary? - correct-answer -Multiplexing is
the ability for a host to run multiple applications using the network
simultaneously. It's necessary to ensure multi-tasking with the host.
Multiplexing essentially combines multiple signals into one with 1 IP and multiple
ports, where each application binds itself to a port. Allow multiple apps to
communicate to different servers with 1 IP address
Describe the two types of multiplexing/demultiplexing. - correct-answer -1.
Connectionless Multiplexing/Demultiplexing: Uses the UDP socket that consists of
a two-tuple made up of a destination IP address and port. Transport layer
identifies port from receiverd datagram that includes the port.
2. Connection Oriented Multiplexing/Demultiplexing: Uses the TCP socket and is a
four-tuple that consists of IP address, source port, destination IP address,
destination port.
What are the differences between UDP and TCP? - correct-answer -UDP is A.) an
unreliable protocol as it lacks the mechanism that TCP has in place. B.) a
1
, 2
connectionless protocol that does not require the establishment of a connection
(example: three way handshake) before sending packets. Some benefits to UDP
are: A.) no congestion control or similar mechanisms. B.) No connection
management overhead. The UDP packet structure is a 64 bits header consisting:
1.) Source and destination ports. 2.) Length of the UDP segment (header and
data). 3.) Checksum (an error checking mechanism). Since there is no guarantee
for link-by-link reliability, we need a basis mechanism in place for error checking.
The UDP sender adds the src port, the dest port and the packet length. Then it
takes the sum and performs an 1s complement (all 0s are turned to 1 and all 1s
are turned to 0s). If during the sum there is an overflow, it's wrapped around. The
receiver adds all the four 16-bit words (including the checksum). The result should
be all 1s unless an error has occurred.
To detect errors, the receiver adds the four words (the three original words and
the checksum). If the sum contains a zero, the receiver knows there has been an
error. While all one-bit errors will be detected, but two-bit errors can be
undetected (e.g., if the last digit of the first word is converted to a 0 and the last
digit of the second word is converted to a 1).
TCP is a protocol consisting of a three-way handshake and a connection teardown:
3-way Handshake:
Step 1: The TCP client sends a special segment, (containing no data) and with SYN
bit set to 1. The Client also generates an initial sequence number (client_isn) and
includes it in this special TCP SYN segment.
Step 2: The Server upon receiving this packet, allocates the required resources for
the connection and sends back the special 'connection-granted' segment which
we call
2
, 3
When would an application layer protocol choose UDP over TCP? - correct-answer
-When developers need just a simple mechanism for transmission control.
Typically, use UDP in applications where speed is more critical than reliability. For
example, it may be better to use UDP in an application sending data from a fast
acquisition where it is acceptable to lose some data points. You can also use UDP
to broadcast to any machine(s) listening to the server.
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000P9ZLSA0#:~:t
ext=Typically%2C%20use%20UDP%20in%20applications,s)%20listening%20to%20t
he%20server.
Explain the TCP Three-way Handshake. - correct-answer -3-way Handshake:
Step 1: The TCP client sends a special segment, (containing no data) and with SYN
bit set to 1. The Client also generates an initial sequence number (client_isn) and
includes it in this special TCP SYN segment.
Step 2: The Server upon receiving this packet, allocates the required resources for
the connection and sends back the special 'connection-granted' segment which
we call SYNACK. This packet has SYN bit set to 1, ack field containing (client_isn+1)
value and a randomly chosen initial sequence number in the sequence number
field.
Step 3: When the client receives the SYNACK segment, it also allocates buffer and
resources for the connection and sends an acknowledgment with SYN bit set to 0.
Explain the TCP connection teardown. - correct-answer -Teardown:
3
, 4
Step 1: When client wants to end the connection, it sends a segment with FIN bit
set to 1 to the server.
Step 2: Server acknowledges that it has received the connection closing request
(FIN-ACK) and is now working on closing the connection.
Step 3: The Server then sends a segment with FIN bit set to 1, indicating that
connection is closed.
Step 4: The Client sends an ACK for it to the server. It also waits for sometime to
resend this acknowledgment in case the first ACK segment is lost.
What is Automatic Repeat Request or ARQ? - correct-answer -An error-control
method for data transmission that uses acknowledgements (messages sent by the
receiver indicating that it has correctly received a packet) and timeouts (specified
periods of time allowed to elapse before an acknowledgment is to be received) to
achieve reliable data transmission over an unreliable communication channel. If
the sender does not receive an acknowledgment before the timeout, it usually re-
transmits the packet until the sender receives an acknowledgment or exceeds a
predefined number of retransmissions.
https://en.wikipedia.org/wiki/Automatic_repeat_request
What is Stop and Wait ARQ? - correct-answer -also referred to as alternating bit
protocol, is a method in telecommunications to send information between two
connected devices. It ensures that information is not lost due to dropped packets
4