2024-03-10 22:01:54 +08:00
|
|
|
|
<h3>Плагин коррекции траффика 3proxy</h3>
|
2016-01-14 04:53:18 +08:00
|
|
|
|
Как известно, 3proxy считает траффик не сетевой, а прикладной.
|
|
|
|
|
Обычно прикладной траффик немного меньше (примерно на 10%) чем сетевой,
|
|
|
|
|
однако в некоторых случаях, например когда пользователи сети играют в
|
|
|
|
|
игры, сетевой траффик может превысить прикладной в 4-5 раз. Это довольно неприятно,
|
|
|
|
|
так как получается, что они за это не платят.
|
|
|
|
|
<p>
|
|
|
|
|
Происходит это потому, что в каждом посланом пакете есть заголовок+данные. Заголовок
|
|
|
|
|
весит порядка 50-60 байт а количество данных может меняться от 15-20 байт (что характерно для игр)
|
|
|
|
|
до 800-900 байт (у IE). Также количество данных в пакете зависит от загрузки сети,
|
|
|
|
|
удалённости сервера и прочих причин.
|
|
|
|
|
<p>
|
|
|
|
|
Данный плагин может исправить такую ситуацию. Он может умножать счётчик траффика
|
|
|
|
|
при окончании соединения на некоторый коэффициент либо добавлять к данным размеры заголовков пакетов,
|
|
|
|
|
которые прошли по сети.
|
|
|
|
|
<h4>Использование</h4>
|
|
|
|
|
<ol>
|
|
|
|
|
<li>Извлечь TrafficPlugin.dll в каталог с 3proxy.exe
|
|
|
|
|
<li>Стартовать плагин в 3proxy.cfg
|
|
|
|
|
<pre>
|
|
|
|
|
plugin TrafficPlugin.dll start
|
|
|
|
|
</pre>
|
|
|
|
|
<li>Добавить правила:
|
|
|
|
|
<br>
|
|
|
|
|
ДЛЯ РЕЖИМА ДОМНОЖЕНИЯ ТРАФФИКА НА ЧИСЛО:
|
|
|
|
|
<pre>
|
|
|
|
|
trafcorrect m <сервис> <исходящий порт> <коэффициент>
|
|
|
|
|
</pre>
|
|
|
|
|
где: <сервис> может быть proxy, socks4, socks45, socks5, tcppm, udppm, pop3p
|
|
|
|
|
если сервис указан неверно то считается, что это может быть любой сервис.
|
|
|
|
|
можно использовать *, тогда правило будет считаться для любого сервиса.
|
|
|
|
|
<br> <исходящий порт> - порт, к которому подключается прокси сервер. * - любой
|
|
|
|
|
<коэффициент> - число на каоторое домнажается траффик. Обязательный параметр.
|
|
|
|
|
Должен быть от больше 0 и меньше 100
|
|
|
|
|
<br>
|
|
|
|
|
ДЛЯ РЕЖИМА С УЧЁТОМ РАЗМЕРА ЗАГОЛОВКОВ ПАКЕТОВ:
|
|
|
|
|
<pre>
|
|
|
|
|
trafcorrect p <сервис> <tcp/udp> <исходящий порт> [размер пустого пакета]
|
|
|
|
|
</pre>
|
|
|
|
|
<tcp/udp> - протокол, по которому осуществляется соединение.
|
|
|
|
|
[размер пакета] - средний размер пустого пакета. Можно определить захватив
|
|
|
|
|
данные при помощи такой утилиты как Ethereal. Параметр необязателен. Если отсутствует,
|
|
|
|
|
то размер пакета будет считаться равным 66 байт.
|
|
|
|
|
<br>Режимы можно смешивать.
|
|
|
|
|
Следует учитывать, что плугин создаёт список всех правил изменения траффика.
|
|
|
|
|
Когда происходит окончание соединения выполняется первое подходящее правило.
|
|
|
|
|
</ol>
|
|
|
|
|
Подсчет трафика в любом режиме не является точным, это некоторая аппроксимация
|
|
|
|
|
позволяющаяподсчитать трафик с точностью до нескольких процентов.
|
|
|
|
|
|
|
|
|
|
<h4>Пример:</h4>
|
|
|
|
|
<pre>
|
|
|
|
|
plugin "TrafficPlugin.dll" start
|
|
|
|
|
trafcorrect m socks5 6112 4.5
|
|
|
|
|
trafcorrect m socks5 * 1.1
|
|
|
|
|
</pre>
|
|
|
|
|
следующее неверно:
|
|
|
|
|
<pre>
|
|
|
|
|
plugin "TrafficPlugin.dll" start
|
|
|
|
|
trafcorrect m socks5 * 1.1
|
|
|
|
|
trafcorrect m socks5 6112 4.5
|
|
|
|
|
</pre>
|
|
|
|
|
Вторая строчка выполнена никогда не будет, т.к. правило 1 содержит *.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h4>Загрузить:</h4>
|
|
|
|
|
<ul>
|
|
|
|
|
<li>Плагин включен в дистрибутив 3proxy 0.6
|
|
|
|
|
</ul>
|