Structs§
- Recv
State - ソケットのうち、受信側状態機械が読み書きする部分だけを抜き出したもの。
- Segment
- 受信した 1 セグメントのうち、状態遷移の判断に必要な情報だけを抜き出したもの。
- Segment
Outcome on_segmentの結果として呼び出し側が行うべき副作用。
Enums§
Constants§
Functions§
- acked_
through posまで ACK 済みか(snd_una >= pos、周回を考慮。posはsnd_nxt以下であること)。- advance_
snd_ una - 受信した ACK 番号で「相手が受け取り済みの位置」(
snd_una)を進める。snd_una < ack <= snd_nxt(32bit の周回を考慮)のときだけ進め、それ以外(古い ACK・ まだ送っていない位置への ACK)は無視する。戻り値は新しいsnd_una。 - close_
wait_ budget_ ms - こちらから FIN を送った後、相手の応答(FIN/ACK)を待つ上限(ミリ秒)。
- find_
free_ slot - next_
ephemeral_ port - エフェメラルポートカウンタの次の値を、既存の生きたソケットと衝突しない ところまで進めて返す(純粋ロジック)。
- on_
segment - 受信セグメント 1 個を状態機械へ適用する。
- seq_gt 🔒
- RFC 1982 準拠のシリアル番号比較:
aがbより新しければ true。 単純なa > bでは 2^32 の折り返し(wraparound)で誤判定するため必須。 - tcp_
state_ name