• A dictionary compressor / deduplication algorithm based on the proven algorithm developed for the industry-standard rsync program and extended to improve performance and throughput.
  • Support for zlib-based stream compression inaddition to or instead of the dictionary deduplication for maximum data reduction.
  • A general-purpose TCP point-to-point proxying mechanism, which can listen at your home or remote site on any TCP port and compress and forward data to and from a remote proxy, file server or other TCP-based service. This makes WANProxy especially useful when combined with leading cache technology like Squid and Varnish.
  • A SOCKS4 and SOCKS5 proxy server to allow you to easily tunnel all Internet use through WANProxy.
  • Written in C++ and developed and tested on a variety of standard Unix and Unix-like platforms, with preliminary support for Windows. WANProxy doesn't depend on any unusual operating system features and should be portable to other platforms with minimal effort.
  • Licensed under a 2-clause BSD license, making it suitable for inclusion in both commercial and free software, as well as for individual and professional use, all with no requirement to make modifications or source available, and with no restrictions on redistribution.
  • IPv4 and IPv6 support.
  • Support for SSH optimization.
  • A library, libuinet, which provides a TCP/IP stack suitable for transparent proxying in userland.
  • Support for both persistent on-disk and in-memory storage of previously-sent data, configurable into user-specified cache hierarchies.

Future goals

  • An HTTP proxy server mode, minimal like the SOCKS support.
  • More compression algorithms suitable for network streaming.
  • A comprehensive CLI that provides central configuration and management of WANProxy and other services, including at least one host OS, making it even easier to deploy WANProxy as network infrastructure equipment.
  • UDP and SCTP support.

For more specific development goals, see the TODO file in the WANProxy source distribution.

Additional Tools

Also included in the source distribution are some related tools using the same algorithms and frameworks that WANProxy uses. Some of these are used for testing, others are purely utilitarian. More will likely be added in the future. Any program meant to be run (as opposed to unit tests and simple example code) is in the programs subdirectory.

Copyright © 2008-2015 WANProxy.org.