Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Readme.md

Homework – Chat Application

1. Implement a Chat Application (5 points)

  • Clients connect to the server using the TCP protocol.
  • The server receives messages from each client and broadcasts them to all other clients (include the client’s ID/nickname with each message).
  • The server must be multithreaded – each client connection should have its own thread.
  • Pay attention to proper thread management.

2. Add an Additional UDP Channel (3 points)

  • The server and each client should open an additional UDP channel (use the same port number as for TCP).
  • After entering the command U on the client side, a message is sent via UDP to the server, which then forwards it to the other clients.
  • The message should simulate multimedia data (for example, you can send ASCII Art).

3. Implement the Above Feature Using Multicast (2 points)

  • This should not replace the UDP channel, but should be available as an alternative option (use the command M).
  • Multicast should send the message directly to all clients using a group address (the server may, but does not have to, receive the message).