私はDebian 11を実行しているLinuxマシンを持っており、これはエッジにあるデバイスとホストマシンの間のルーターとして機能しています。curl
ファイルをダウンロードするコマンドを実行しているときに、エッジに面しているインターフェースrx_crc_errors
散発的にだが継続的に蓄積し始める- カウントは平均して 1 秒あたり 1 回か 2 回、急激に増加します。その結果、このcurl
コマンドはルーターとその背後にあるホスト マシンの両方で非常に低速で実行され、回線で利用可能な速度のほんの一部でダウンロードされます (同じエッジ デバイスを通過する他のルーターとサーバーで確認したところ、より高速で実行され、rx_crc_errors は蓄積されませんでした)。
エッジ ルーター (これらの rx_crc_errors を蓄積しているマシン/インターフェイスのゲートウェイ) は、pfSense 22.01 (最新) を実行している NetGate 1537 です。
これまで試したこと:
- ケーブルを交換しました
- SFPアダプタを交換しました
- 別のスイッチポートを使用
- ホストマシン全体を同じ構成のものに置き換えた
これらはいずれも動作を変えなかったので、私の知る限り、問題の原因がハードウェアにあることは考えられません。
エッジ マシンから実行するとcurl https://dl.google.com/go/go1.18.1.linux-amd64.tar.gz --output t.dat
約 1 秒で完了します。rx_crc_errors のあるルーターからは 17 秒、その背後のホストからは 21 秒かかります。
エラーはアップリンク インターフェイスに次のように表示されます。
...
2: enp3s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 10:1f:74:35:fc:94 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped missed mcast
1609100899 1250023 508 0 0 2534
TX: bytes packets errors dropped carrier collsns
20574398 206727 0 0 0 0
...
そして、ethtoolを使用すると、CRCエラーを示す追加の詳細を取得できます(rx_crc_errors: 508
)
ethtool -S enp3s0f0
NIC statistics:
rx_bytes: 1609111223
rx_error_bytes: 0
tx_bytes: 20588905
tx_error_bytes: 0
rx_ucast_packets: 1245869
rx_mcast_packets: 2554
rx_bcast_packets: 1687
tx_ucast_packets: 202770
tx_mcast_packets: 4038
tx_bcast_packets: 0
tx_mac_errors: 0
tx_carrier_errors: 0
rx_crc_errors: 508
rx_align_errors: 0
tx_single_collisions: 0
tx_multi_collisions: 0
tx_deferred: 0
tx_excess_collisions: 0
tx_late_collisions: 0
tx_total_collisions: 0
rx_fragments: 22
rx_jabbers: 0
rx_undersize_packets: 0
rx_oversize_packets: 0
rx_64_byte_packets: 1823
rx_65_to_127_byte_packets: 9084
rx_128_to_255_byte_packets: 2371
rx_256_to_511_byte_packets: 585
rx_512_to_1023_byte_packets: 80
rx_1024_to_1522_byte_packets: 1236167
rx_1523_to_9022_byte_packets: 0
tx_64_byte_packets: 0
tx_65_to_127_byte_packets: 200168
tx_128_to_255_byte_packets: 5659
tx_256_to_511_byte_packets: 370
tx_512_to_1023_byte_packets: 230
tx_1024_to_1522_byte_packets: 381
tx_1523_to_9022_byte_packets: 0
rx_xon_frames: 0
rx_xoff_frames: 0
tx_xon_frames: 0
tx_xoff_frames: 0
rx_mac_ctrl_frames: 0
rx_filtered_packets: 33361
rx_ftq_discards: 0
rx_discards: 0
rx_fw_discards: 0
私がチェックした他のマシン上の他のすべてのインターフェースのエラーはすべてゼロであることに注意してください。
この時点で、次に何をチェックすればよいのか困惑しています。この問題は何らかの形でエッジ ルーターに関連していると思われますが、このエッジ ルーターに接続されている他のルーターでは同じ問題が発生しません。ある時点で、エッジ ルーターからスイッチへの VLAN トランキング (802.1q タグ付け) を使用していましたが、これを無効にし、MTU を 4 バイト増やして 1504 にしてみましたが、どちらも目に見える変化はなく、rx_crc_errors は依然として蓄積され、上記のようにパフォーマンスが低下しています。
これらの rx_crc_errors の原因を診断するための他のアイデアはありますか?