割り込みスマソ。
今TCPでプログラム組んでます。
send()の直前でsetsockopt()でTCPヘッダのDSCP値を
変更してパケット出力をするプログラム書いてるのですが、
etherealでパケット確認すると、TCPヘッダのチェックサム値が
エラーとなってます。
受信先ではきちんとデータ取れてるんですが・・・。で、質問なんですが、

1.チェックサムの計算って誰がやるの?NIC?OS?ソケット?
2.チェックサムが異常のパケットって破棄されると思ってたんですが、
  受け取れるのはなぜ?(recv()もエラーになってない。)実は破棄
  されない?

全くもってわからず困ってます。どなたか俺の神飛行機を受け取って
助けてくださいorz。