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