The Netlib API covers the two part needed for (anonymous) communication:
While the motivation of the first part is quite clear, the motivation of the second is usually not obvious: One important point in anonymous communication is to control DNS request. It is important that DNS requests related to the anonymous communication are NOT sent to the local DNS server - otherwise these unsecured DNS requests could be used to analyse the anonymous communication.
Top : [Netlib], Next : [Netlib NetLayer]
Wiki: Netlib Architecture
Wiki: Netlib Direct API Usage
Wiki: Netlib HTTP
Wiki: Netlib Status
Wiki: Netlib Tools
Wiki: Netlib