두 대의 컴퓨터가 있는데 둘 다 10Gbps 네트워크 카드 속도를 가지고 있습니다.
- 두 시스템 간의 인바운드 대역폭은 10Gbps이고 아웃바운드 대역폭은인터넷 대역폭500Mpbs입니다.
- 두 시스템 모두 공용 및 개인 네트워크에서 공용 IP 주소를 사용합니다.
- 두 머신 모두 Nginx의 포트 80에서 전송하고 연결하며, 머신 B는 Youtube 스트리밍 비디오와 같은 스트리밍 미디어에 사용됩니다.
iperf
From 유틸리티를 사용하여 전송 속도를 확인했습니다.기계 A도착하다기계 B:
# iperf -c 0.0.0.2 -p 8777
------------------------------------------------------------
Client connecting to 0.0.0.2, TCP port 8777
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 3] local 0.0.0.1 port 38895 connected with 0.0.0.2 port 8777
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.8 sec 528 KBytes 399 Kbits/sec
머신 B의 현재 연결:
# netstat -an|grep ":8777"|awk '/tcp/ {print $6}'|sort -nr| uniq -c
2072 TIME_WAIT
28 SYN_RECV
1 LISTEN
189 LAST_ACK
139 FIN_WAIT2
373 FIN_WAIT1
3381 ESTABLISHED
34 CLOSING
기계 A네트워크 카드 정보:
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 100baseT/Full
1000baseT/Full
10000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 10000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: external
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
기계 B네트워크 카드 정보:
Settings for eth2:
Supported ports: [ FIBRE ]
Supported link modes: 10000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: No
Advertised link modes: 10000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 10000Mb/s
Duplex: Full
Port: Direct Attach Copper
PHYAD: 0
Transceiver: external
Auto-negotiation: off
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
ifconfig
기계 A:
eth0 Link encap:Ethernet HWaddr 00:25:90:ED:9E:AA
inet addr:0.0.0.1 Bcast:0.0.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1202795665 errors:0 dropped:64334 overruns:0 frame:0
TX packets:2313161968 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:893413096188 (832.0 GiB) TX bytes:3360949570454 (3.0 TiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:2207544 errors:0 dropped:0 overruns:0 frame:0
TX packets:2207544 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:247769175 (236.2 MiB) TX bytes:247769175 (236.2 MiB)
ifconfig
기계 B:
eth2 Link encap:Ethernet HWaddr 00:25:90:82:C4:FE
inet addr:0.0.0.2 Bcast:0.0.0.2 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39973046980 errors:0 dropped:1828387600 overruns:0 frame:0
TX packets:69618752480 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3013976063688 (2.7 TiB) TX bytes:102250230803933 (92.9 TiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:1049495 errors:0 dropped:0 overruns:0 frame:0
TX packets:1049495 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:129012422 (123.0 MiB) TX bytes:129012422 (123.0 MiB)
질문
유틸리티에서 볼 수 있듯이 iperf
시스템 A에서 시스템 B로의 전송 속도가 매우 느립니다. 머신 B에서 네트워크 서비스를 다시 시작하면 머신 A로의 전송이 최고 속도로 진행되다가 2분 후에는 속도가 매우 느려집니다.
속도 저하 문제를 해결하고 머신 B에서 수정하려면 어떻게 해야 합니까?
참고: 문제 해결에 도움이 될 수 있도록 더 많은 정보를 얻기 위해 두 시스템 중 하나에서 실행해야 하는 다른 명령이 있는 경우 의견을 통해 알려주시기 바랍니다.