K V G COLLEGE OF ENGINEERING, SULLIA, D.K.
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING
ASSIGNMENT – II
Course Name: Network Programming Course Code: MSCS203
Semester/Section: II M.Tech Date of Assignment: 01-08-2025
Academic Year: 2025 Due date: 08-08-2025
Faculty in-
Prof.Naseema C A
charge:
Q.No. Questions Marks RBT CO
What is a socket timeout, and why is it important in network
1
programming?
10 L2 CO4
How do you set a timeout for socket operations like recv() and
send() in a Unix-based system?
What is the difference between SO_RCVBUF and
2 06 L2 CO4
SO_SNDBUF socket options?
What is the purpose of the recv() function in socket
3
programming?
10 L2 CO4
What are the different flags that can be used with the recv()
function and how do they modify its behavior?
How would you handle multiple client connections in a Unix
4 06 L2 CO4
Domain Stream server using select() or poll()?
Explain the roles of socket(), bind(), listen(), accept(), connect()
5
in TCP server/client programs.
10 L2 CO5
What are some potential drawbacks of creating a new process
6 06 L2 CO5
per client connection?
Design a simple TCP concurrent server using fork(). What key
7
considerations must be made regarding signal handling?
10 L2 CO5
What is the best approach to handle thousands of concurrent
8 10 L2 CO5
connections on a single server? Justify your choice.
Write and explain a simple TCP Echo Server that uses select() to
9
handle multiple client connections.
08 L2 CO3
Compare select(), poll(), and pselect() in terms of:
10 10 L2 CO3
• Portability
• Scalability
• Timeout handling
• Signal safety