USB-이더넷 어댑터에 설명할 수 없는 핑 지연이 발생함

USB-이더넷 어댑터에 설명할 수 없는 핑 지연이 발생함

저는 Huawei HiSilicon ARM Hi3536 칩을 사용하는 맞춤형 보드에서 이전 커널 3.10으로 Linux를 실행하고 있습니다. 보드에는 2개의 동일한 USB 2.0 포트가 포함되어 있습니다. 하드웨어 엔지니어에 따르면 PCB의 두 포트와 칩 자체 사이에는 단순한 와이어만 있을 뿐 아무 것도 없습니다.

저는 AX88178 칩과 함께 USB-이더넷 어댑터 "USB2-E100"을 사용하고 있습니다. 이 동글이 사용하는 USB 드라이버는 asix.ko, usbnet.ko 및 커널의 정적 usbcore 모듈입니다.

저는 노트북을 "USB-이더넷" 동글에 직접 연결합니다(그 사이에 라우터, 스위치 등 없음). 매우 이상한 동작을 경험하고 있습니다.

첫 번째 USB 포트에 ping을 실행했을 때 왕복 시간(RTT)이 1ms 미만으로 매우 안정적이었습니다.

lrwxrwxrwx    1 root     root             0 Feb 16 17:49 1-1 -> ../../../devices/platform/hiusb-ehci.0/usb1/1-1
lrwxrwxrwx    1 root     root             0 Feb 16 17:49 1-1:1.0 -> ../../../devices/platform/hiusb-ehci.0/usb1/1-1/1-1:1.0

C:\>ping -t 172.20.20.20

Pinging 172.20.20.20 with 32 bytes of data:
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64

그러나 두 번째 USB 포트에 ping을 실행하면 각 ping에 대한 RTT가 상당히 길어집니다.

lrwxrwxrwx    1 root     root             0 Feb 16 17:42 1-2 -> ../../../devices/platform/hiusb-ehci.0/usb1/1-2
lrwxrwxrwx    1 root     root             0 Feb 16 17:42 1-2:1.0 -> ../../../devices/platform/hiusb-ehci.0/usb1/1-2/1-2:1.0

C:\>ping -t 172.20.20.20

Pinging 172.20.20.20 with 32 bytes of data:
Reply from 172.20.20.20: bytes=32 time=873ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time=866ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time=855ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time=841ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time=835ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time=827ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64
Reply from 172.20.20.20: bytes=32 time=812ms TTL=64
Reply from 172.20.20.20: bytes=32 time<1ms TTL=64

이 이상한 동작의 원인이 무엇인지 말해 줄 수 있는 사람이 있나요? 동일한 드라이버, 동일한 구성 레지스터, 모두 동일한 USB 허브에 연결되어 있습니다. 미리 감사드립니다.

関連情報