innayashna / packets-checker

TCP based client-server applications with the proxy in the middle

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Task

  • Create simple TCP based client-server application.
  • Create a proxy application (that is in the middle).
  • Application logic:
    • Client sends data to Proxy.
    • Option1: Proxy just forwards it to the server.
    • Option2: Proxy does modifications in payload and resend them to server.

For Option2: Server must figure out that data has been changed in the middle (calculating packet checksum).

Sequence diagram of implementation

Sequence diagram

Run application

  1. Build with cmake
cmake CMakeLists.txt
  1. Build application with make
make
  1. Run (sudo usage is mandatory since raw sockets require root privileges)
sudo ./packets_checker

About

TCP based client-server applications with the proxy in the middle


Languages

Language:C++ 97.5%Language:CMake 2.5%