タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

socketに関するzyxwvのブックマーク (2)

  • Calculate size and start of TCP packet data (excluding header)

    zyxwv
    zyxwv 2020/07/12
    TCPのペイロードのサイズは、IPの全体サイズからIPのヘッダ長とTCPヘッダ長を引いて計算する(TCPの全体サイズはない)
  • PF_PACKETの仕組み - めもめも

    Software Design 2012年6月号の『「生」ネットワークプログラミング』が妙にツボにハマって面白かったのですが、さすがにあのページ数でPF_PACKETを語ると、ついていけない読者も多くて残念かも。 ということで、参考までに概要図を書いてみました。 C言語のソケットプログラミングをなんとなく勉強した方は多いと思います。ソケットは、カーネル内部のネットワークレイヤーとユーザ空間を結びつけるインターフェース(API)なわけですが、カーネル内部では、通常、上図(右側)の流れで受信パケットが処理されていきます。 物理NICが受け取ったパケットは、デバイスドライバがL2プロトコルの処理をして、さらにL3プロトコルの種類(IPv4/IPv6などの違い)の判別まで行います。 判別した結果に基づいて、適切なL3プロトコルのハンドラーが呼び出されて、L3プロトコルの処理をして、さらにL4プロト

    PF_PACKETの仕組み - めもめも
    zyxwv
    zyxwv 2020/02/20
    "PF_PACKETは、デバイスドライバがL2処理をした直後のパケットをこっそりコピーして、横流しする裏口"
  • 1