Вопрос: pf замедляет трафик


Я запускаю веб-сервер и почтовый сервер на FreeBSD 9.1. Система установлена ​​на KVM vServer. Все работает нормально - пока я не включу pf (4). Мой блог неудержимо замедляется. Так же как и весь другой трафик, но это не так раздражает.

Так что было бы здорово, если кто-нибудь скажет мне, где может быть проблема.

Заранее спасибо!

Тест с критериями / iperf возвращает следующие результаты:

Отключено pf:

Client connecting to 109.193.XXX.XXX, TCP port 5001
TCP window size: 32.5 KByte (default)
------------------------------------------------------------
[  3] local 46.38.XXX.XXX port 31302 connected with 109.193.XXX.XXX port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  15.1 MBytes  12.6 Mbits/sec

Включено pf:

------------------------------------------------------------
Client connecting to 109.193.XXX.XXX, TCP port 5001
TCP window size: 32.5 KByte (default)
------------------------------------------------------------
[  3] local 46.38.XXX.XXX port 61377 connected with 109.193.XXX.XXX port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-18.1 sec   128 KBytes  58.1 Kbits/sec

Это мой pf.conf:

### INTERFACES ###
if = "{ em0 }"

### SETTINGS ###
set block-policy drop

### PORTS ###
tcp_pass = "{ 25 80 465 993}"
udp_pass = "{ 25 80 465 993}"
icmp_types = "echoreq"

### NORMALISATION ###
scrub in all
antispoof for $if

### RULES ###
block all
pass in on $if proto tcp from any to any port $tcp_pass flags S/SA keep state
pass in on $if proto udp to any port $udp_pass keep state
pass out quick all keep state

# PING #
pass in on $if inet proto icmp all icmp-type $icmp_types keep state

# TRACEROUTE #
pass in on $if inet proto udp from any to any port 33433 >< 33626 keep state

Это rc.conf:     ...     pf_enable = "ДА"     pf_rules = "/ и т.д. / pf.conf"     pflog_enable = "ДА"     pflog_logfile = "/ Var / Журнал / pflog"     ...


6
2018-06-07 08:26


Источник


Включили ли вы свои драйверы virtio (4)? - Michael Hampton♦
Да, они включены. Найденное решение, проблема заключалась в разгрузке сегментации TCP. ifconfig em0 - также решена проблема. - Steffen
@Steffen: Где правило для включения остальных ICMP? ICMP - это требование к интернет-хосту. TCP предполагает, что он работает. - David Schwartz


Ответы:


Сектор 9.0, по-видимому, особенно чувствителен к нечетным конфигурациям, в которых задействован TCP Segmentation Offload. Это можно «исправить», отключив TSO:

ifconfig em0 -tso

5
2018-06-07 13:09



У меня похожие проблемы в 10.2 - seo