TCP Checksum Offload
2012年6月4日 (月) 02:35時点におけるimported>Administratorによる版
TCP Checksum Offload(TCO, てぃーしーぴー・ちぇっくさむ・おふろーど)とは、TCP/IPのパケットに付加されるチェックサムの計算を、CPUではなく、ネットワークカード(NIC)に任せることをいう。
負荷軽減(オフロード、off=軽減 load=負荷)手法のひとつであり、NIC上の専用ハードウェアで高速に処理することができ、かつCPUの負荷が下がる。
ただし、NICが外部にパケット送信するギリギリまで(プログラム→OS→NICの間)、TCPパケットにチェックサムが付加されていない状態(一見するとぶっ壊れている風)になるため、Wireshark(旧Ethereal)などで正常にパケットキャプチャーができなくなる(ぶっ壊れてるエラーがでまくる)。通常はNICのドライバー経由でチェックサムオフロードを使うか使わないかの設定ができるので、パケットキャプチャを使いたい場合は切っておこう。
2000年くらいの頃は一部のサーバー用の高級品にしか付いていなかった機能であったが最近では安物NICでもほぼ付いている。 TCP/IPに限らず、UDP/IPやIPに対してチェックサムオフロード機能を提供しているネットワークカードも増えてきており、それらはUDPチェックサム・オフロード やIPチェックサム・オフロードと呼ばれる。なお安物のネットワークカードではIPv4のみチェックサムオフロードに対応し、IPv6には対応していないという製品も多い。
関連項目
参考文献