Привет! Я заметил до 10% потерь пакетов у гостевых систем Ubuntu 12.04 LTS с сетевым адаптером virtio. Гостевая система Ubuntu 10.04 вроде бы не затронута этой проблемой. Похоже, что это известный баг: .
Кто-нибудь ещё сталкивался с этой проблемой? Есть ли какие-то решения или обходные пути?
auto bond0.2 iface bond0.2 inet manual vlan-raw-device bond0
auto vmbr1 iface vmbr1 inet manual bridge_ports bond0.2 bridge_stp off bridge_fd 0
Спасибо, Steven
gimecoffee
Guest
0
20.11.2013 21:12:00
У меня такая же проблема уже больше года, и я надеялся, что вчерашние обновления её решат, но, к сожалению, нет. Также заметил, что проблема возникает только при статическом IP у гостя. Если оставить гостя на DHCP, то ни одного потерянного пакета нет. Мне это кажется очень странным, а IP должен быть фиксированным. Потеря пакетов вроде не мешает локальному трафику, но я направляю HTTP/HTTPS трафик из Интернета, и там возникают проблемы с подключением или его стабильностью. Не понимаю ситуацию до конца, потому что у некоторых клиентов всё нормально, а у других проблемы заметные. Перезагрузка гостя (или сброс сети на госте) временно решает проблему, но со временем сбои возвращаются. DHCP у нас раздаёт роутер Cisco, и я думаю, что, возможно, есть какой-то конфликт между Cisco и гостевой системой на Ubuntu 12, когда при DHCP что-то настраивается на одной из сторон, чего не происходит при статическом IP. Есть мысли? Rois Cannon
mir
Guest
0
21.11.2013 01:22:00
Некоторые замечания: vlan-raw-device теперь не нужен, это было свойственно Debian Squeeze. bond_xmit_hash_policy 1 может быть причиной вашей проблемы, так как такого значения не существует: ()
xmit_hash_policy — выбирает политику хэширования передачи для выбора подчинённого устройства в режимах balance-xor и 802.3ad. Возможные значения:
layer2 — использует XOR аппаратных MAC-адресов для генерации хэша. Формула такова:
Этот алгоритм направляет весь трафик к определённому сетевому узлу через одного и того же подчинённого. Он соответствует стандарту 802.3ad.
layer3+4 — эта политика использует информацию протоколов верхних уровней, если она доступна, для генерации хэша. Это позволяет трафику к одному сетевому узлу распределяться между несколькими подчинёнными, хотя одно соединение не будет одновременно работать на нескольких. Эта политика призвана имитировать поведение некоторых коммутаторов, особенно Cisco с PFC2, а также некоторых продуктов Foundry и IBM.
По моему мнению, для bridged-сетей в proxmox и режима bond 4 (802.3ad) необходима политика xmit_hash_policy layer3+4 в сложных случаях (например, с продвинутым VLAN).
Если подытожить, я бы переписал вашу сетевую конфигурацию так:
auto vmbr1 iface vmbr1 inet manual bridge_ports bond0.2 bridge_stp off bridge_fd 0
gimecoffee
Guest
0
21.11.2013 02:23:00
Спасибо, что посмотрели. Надо было сразу добавить немного больше информации о конфигурационном файле моих интерфейсов хоста. Я не использую bonding, как svacaroaia. Только мост.
Код: auto lo iface lo inet loopback
iface eth0 inet manual
auto vmbr0 iface vmbr0 inet static address 192.168.5.10 netmask 255.255.255.0 gateway 192.168.5.1 bridge_ports eth0 bridge_stp off bridge_fd 0
Есть идеи, почему DHCP-гостя не отключается, когда задан статик в такой ситуации? Спасибо, Rois
mir
Guest
0
21.11.2013 03:18:00
Какое название и версия вашей сетевой карты (Intel, Realtek и т.д.)?
gimecoffee
Guest
0
21.11.2013 17:49:00
Похоже, это "2x Intel® 82576 Dual-Port Gigabit Ethernet Controllers (4 порта)" из этого SuperMicro:
dmesg для драйвера igb
Код: root@vhost3:/proc# dmesg | grep igb igb 0000:05:00.0: power state changed by ACPI to D0 igb 0000:05:00.0: power state changed by ACPI to D0 igb 0000:05:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 igb 0000:05:00.0: setting latency timer to 64 igb 0000:05:00.0: irq 55 for MSI/MSI-X igb 0000:05:00.0: irq 56 for MSI/MSI-X igb 0000:05:00.0: Intel® Gigabit Ethernet Network Connection igb 0000:05:00.0: eth0: (PCIe:2.5GT/s:Width x4) igb 0000:05:00.0: eth0: MAC: 00:25:90:54:d2:fc igb 0000:05:00.0: eth0: PBA No: FFFFFF-0FF igb 0000:05:00.0: LRO is disabled igb 0000:05:00.0: Using MSI-X interrupts. 1 rx queue(s), 1 tx queue(s) igb 0000:05:00.1: power state changed by ACPI to D0 igb 0000:05:00.1: power state changed by ACPI to D0 igb 0000:05:00.1: PCI INT B -> GSI 17 (level, low) -> IRQ 17 igb 0000:05:00.1: setting latency timer to 64 igb 0000:05:00.1: irq 57 for MSI/MSI-X igb 0000:05:00.1: irq 58 for MSI/MSI-X igb 0000:05:00.1: Intel® Gigabit Ethernet Network Connection igb 0000:05:00.1: eth1: (PCIe:2.5GT/s:Width x4) igb 0000:05:00.1: eth1: MAC: 00:25:90:54:d2:fd igb 0000:05:00.1: eth1: PBA No: FFFFFF-0FF igb 0000:05:00.1: LRO is disabled igb 0000:05:00.1: Using MSI-X interrupts. 1 rx queue(s), 1 tx queue(s) igb 0000:06:00.0: power state changed by ACPI to D0 igb 0000:06:00.0: power state changed by ACPI to D0 igb 0000:06:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 igb 0000:06:00.0: setting latency timer to 64 igb 0000:06:00.0: irq 59 for MSI/MSI-X igb 0000:06:00.0: irq 60 for MSI/MSI-X igb 0000:06:00.0: Intel® Gigabit Ethernet Network Connection igb 0000:06:00.0: eth2: (PCIe:2.5GT/s:Width x2) igb 0000:06:00.0: eth2: MAC: 00:25:90:54:d2:fe igb 0000:06:00.0: eth2: PBA No: FFFFFF-0FF igb 0000:06:00.0: LRO is disabled igb 0000:06:00.0: Using MSI-X interrupts. 1 rx queue(s), 1 tx queue(s) igb 0000:06:00.1: power state changed by ACPI to D0 igb 0000:06:00.1: power state changed by ACPI to D0 igb 0000:06:00.1: PCI INT B -> GSI 17 (level, low) -> IRQ 17 igb 0000:06:00.1: setting latency timer to 64 igb 0000:06:00.1: irq 61 for MSI/MSI-X igb 0000:06:00.1: irq 62 for MSI/MSI-X igb 0000:06:00.1: Intel® Gigabit Ethernet Network Connection igb 0000:06:00.1: eth3: (PCIe:2.5GT/s:Width x2) igb 0000:06:00.1: eth3: MAC: 00:25:90:54:d2:ff igb 0000:06:00.1: eth3: PBA No: FFFFFF-0FF igb 0000:06:00.1: LRO is disabled igb 0000:06:00.1: Using MSI-X interrupts. 1 rx queue(s), 1 tx queue(s) igb 0000:05:00.0: DCA enabled igb 0000:05:00.1: DCA enabled igb 0000:06:00.0: DCA enabled igb 0000:06:00.1: DCA enabled igb: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX