Linuxゲートウェイで応答が無い、応答が遅い場合がある
質問
NIC (LANカード) の TSO (TCP Segmentation Offload) オプションが有効な場合、サーバからの応答がない、又は、応答が遅いことがあります。
また、パケットキャプチャ結果に以下のエラーが発生し、直前のパケットのサイズがMTU (通常 1500 程度) より大きいです。
Destination unreachable (Fragmentation needed)
NIC の TSO オプションが有効な場合、dmesg (診断情報の system/dmesg.txt) に以下の
ようなメッセージが表示されます。
eth0: ... TSO ON
回答
[原因]
NIC の TSO が正常に動作していない可能性があります。
[対応]
以下の手順で TSO を無効にして動作するかご確認ください。
1. TSOを無効にし、エラーが表示されないことを確認する。
# /sbin/ethtool -K eth0 tso off
(TSO機能がサポートされていない場合、以下のエラーが表示されます。)
(Cannot set device tcp segmentation offload settings: Operation not supported)
2. 起動時に無効にするため、以下のコマンドを/etc/rc.d/rc.localに追加する
# /sbin/ethtool -K eth0 tso off
3. サーバを再起動し、dmesgコマンドにて以下のようにTSOが無効になって
いることを確認する。
例: eth0: ... TSO OFF
0 Like