강력한 Linux 서버에서 네트워크 폐기

강력한 Linux 서버에서 네트워크 폐기

저는 매우 강력한 Linux 서버를 보유하고 있습니다. Dell PowerEdge R6515에는 AMD Epyc CPU를 사용하는 x64 코어가 포함되어 있습니다.

또한 전용 LAN PCI도 있습니다.

lspci | grep 10G
41:00.0 Ethernet controller: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ (rev 02)
41:00.1 Ethernet controller: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ (rev 02)

Strongswan 서버의 VPN 서버로 사용하고 있습니다. 문제는 ~500Mmb 암호화된 RX 트래픽에 대해 상당히 많은 인터페이스 폐기가 발생한다는 것입니다. ~30,000개의 패킷 인터페이스 중 퍼센트가 약 30개 정도 떨어집니다. 이는 삭제된 패킷의 약 0.1%를 차지합니다. 그다지 중요하지는 않지만 개선할 여지가 있습니다. 유일한 네트워크 관련 구성은 네트워크 처리량으로 설정된 tunedadm 모드입니다.

ifconfig p3p1
p3p1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::faf2:1eff:fed9:dc80  prefixlen 64  scopeid 0x20<link>
        ether f8:f2:1e:d9:dc:80  txqueuelen 1000  (Ethernet)
        RX packets 2637785997  bytes 1724447946355 (1.5 TiB)
        RX errors 0  **dropped 1342892**  overruns 0  frame 0
        TX packets 2943486813  bytes 1844888609689 (1.6 TiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

센토스 7.9를 사용하고 있습니다.

또한 일정한 소프트 인터럽트 수는 ~130k입니다. 물론 다른 사이트에서는 코어가 12개뿐인 PowerEdge R340을 사용하는 이유와 동일하게 코어 간의 로드 밸런싱이 이루어지지 않습니다. 이 PowerEdge R340은 폐기 및 인터럽트 측면에서 더 나은 성능을 발휘합니다.

나는 이 행동이 큰 코어 수와 상당히 관련이 있다고 생각합니다. 개선할 수 있는 것이 있나요? 튜닝 가능성은 많지만 개인적인 경험으로 볼 때 거의 모든 곡에는 몇 가지 단점이 있습니다.

관련 정보