Debian 8.3 서버를 실행 중이고 uname 출력이 있습니다.
Linux x 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17) x86_64 GNU/Linux
KVM을 사용하여 CentOS 7.2.1511이 포함된 가상 머신을 실행하고 있습니다. 호스트에 두 개의 네트워크 인터페이스가 있고 브리지와 virt-io를 사용하여 게스트에 두 개의 네트워크 인터페이스가 있습니다.
네트워크 인터페이스 중 하나가 멀티캐스트(약 300mbps, 호스트의 eth1 장치에서 수신)를 수신하고 있으며 패킷 손실이 있어 삭제된 패킷이 호스트의 "vnet1" 인터페이스에 표시됩니다. 인터페이스의 txqueuelen을 늘렸고 드롭 카운터는 더 이상 증가하지 않지만 패킷은 여전히 손실됩니다.
나는 virt-io, e1000 및 rtl8139 드라이버와 macvtap(패스트루 모드)을 사용해 보았지만 모두 어느 정도 패킷 손실이 발생했으며 이는 멀티캐스트의 큰 문제입니다. 서버 CPU 사용량이 낮습니다.
가상 네트워크를 올바르게 작동시키는 방법.
답변1
일부 네트워크 카드 오프로드 기능(,,, ethtool -k/-K tso
등) 을 비활성화해 보십시오.gro
sg
문제에 대한 해결책을 찾았습니다여기.