This will be a low level desing.
The design should describe a tunnel which rout all incoming TCP connection through the other side of the connection.
The Tunnel will have three Application Parts:
Client Application, Server Application and Manage Application.
There will be one Client, several Server Applications and one Manage Application. The Client connects to one Server and every Server has a connection to the Manage Server. This will be a three way tunnel which connects form the client over the Server to the Manage Server. The end points of the tunnel are the Client and the Manage Server.
The Client will only connect to one single Server. It should be possible to change the destination (Server Application) of the Client without losing any established TCP connection.
Further there are several Features required e.g.
-Encryption of the Https connection (e.g. AES)
-Destination IP of the Tunnel should be changeable, to change all connections to another Server immediately without losing any TCP connection
-Simulation of valid Https requests from the Client Application to the Server Application
-Tunnel hiding: Limited time and traffic since a new connection will be established
-Additional Proxy settings for the Client Application