May 26, 2018
Framework for proxying network connections in many ways
A NetProxy object represents a proxy that accepts connections and then relays the data transfered between the source and the destination. The goal of this module is to abstract the different methods used to connect from the proxy to the destination. A proxy is a program that transfer data across a network boundary between a client and a server. NetProxy introduces the concept of “connectors” implemented as NetProxyConnector subclasses, which abstract the server part connected to the client and the client part connected to the server of the proxy. This architecture makes it easy to implement specific techniques to cross a given network boundary, possibly by using a proxy on one side of the network fence, and a reverse-proxy on the other side of the fence.