mirror of
https://github.com/3proxy/3proxy.git
synced 2025-02-23 18:45:40 +08:00
.. | ||
Changelog.txt | ||
Makefile | ||
Makefile.inc | ||
ReadMe.txt | ||
TrafficPlugin.c |
======================================================================== 3proxy traffic plugin ======================================================================== Как известно 3proxy считает траффик не сетевой, а прикладной. Обычно прикладной траффик немного меньше (примерно на 10%) чем сетевой, однако в некоторых случаях, например когда пользователи сети играют в игры, сетевой траффик может превысить прикладной в 4-5 раз. Это довольно неприятно, так как получается, что они за это не платят. Происходит это потому, что в каждом посланом пакете есть заголовок+данные. Заголовок весит порядка 50-60 байт а колличество данных может меняться от 15-20 байт (что характерно для игр) до 800-900 байт (у IE). Также колличество данных в пакете зависит от загрузки сети, удалённости сервера и прочих причин. Данный плагин может исправить такую ситуацию. Он может умножать счётчик траффика при окончании соединения на некоторый коэффициент либо добавлять к данным размеры заголовков пакетов, которые прошли по сети. Как использовать плагин: загрузка плагина: plugin "TrafficPlugin.dll" start Далее недоходимо добавить правила: ДЛЯ РЕЖИМА ДОМНОЖЕНИЯ ТРАФФИКА НА ЧИСЛО: trafcorrect m <сервис> <исходящий порт> <коэффициент> где: <сервис> может быть proxy, socks4, socks45, socks5, tcppm, udppm, pop3p если сервис указан неверно то считается, что это может быть любой сервис. можно использовать *, тогда правило будет считаться для любого сервиса. <исходящий порт> - порт, к которому подключается прокси сервер. * - любой <коэффициент> - число на каоторое домнажается траффик. Обязательный параметр. Должен быть от больше 0 и меньше 100 ДЛЯ РЕЖИМА С УЧЁТОМ РАЗМЕРА ЗАГОЛОВКОВ ПАКЕТОВ: trafcorrect p <сервис> <tcp/udp> <исходящий порт> [размер пустого пакета] <tcp/udp> - протокол, по которому осуществляется соединение. [размер пакета] - средний размер пустого пакета. Можно определить захватив данные при помощи такой утилиты как Ethernal. Параметр необязателен. Если отсутствует, то размер пакета будет считаться равным 66 байт. Режимы можно смешивать. Следует учитывать, что плугин создаёт список всех правил изменения траффика. Когда происходит окончание соединения выполняется первое подходящее правило. Пример: plugin "TrafficPlugin.dll" start trafcorrect m socks5 6112 4.5 trafcorrect m socks5 * 1.1 следующее неверно: plugin "TrafficPlugin.dll" start trafcorrect m socks5 * 1.1 trafcorrect m socks5 6112 4.5 Вторая строчка выполнена никогда не будет. Так как 1 имеет более широкое назначение. РЕЖИМ ОТЛАДКИ ПРАВИЛ: 1. Запускает прокси в оконном режиме (чтобы видеть stdout). 2. Загрузка плагина должна выглядеть сл. образом: plugin "TrafficPlugin.dll" start debug 3. В окне прокси сервера будет написана информация о прохождении правил коррекции траффика. Правила нумеруются с 1. ///////////////////////////////////////////////////////////////////////////// Copyright: (c) Maslov Michael aka Flexx(rus) All rights reserved. Plugin was writen on Visual C++ 6.0 SP5 Using structures.h from 3proxy distr.