事実上すべてのFreeBSDネットワークチューニングドキュメントで私は見つけることができます:
# /boot/loader.conf
net.inet.tcp.tcbhashsize=4096
これは通常、「TCP制御ブロックハッシュテーブルのチューニング」や「これを適切な値に設定する」などの役に立たないステートメントとペアになります。man 4 tcp
どちらもあまり役に立ちません:
tcbhashsize Size of the TCP control-block hash table (read-only). This may be tuned using the kernel option TCBHASHSIZE or by setting net.inet.tcp.tcbhashsize in the loader(8).
この不思議なことに触れた唯一のドキュメントは、FreeBSD IPとTCP Stackの最適化の Transport Layerの下にあるProtocol Control Block Lookupサブセクションですが、その説明はそれを使用する際の潜在的なボトルネックについての詳細です。新しいTCPセグメントをリスニングソケットに一致させることに関連しているようですが、方法はわかりません。
正確に何のために使用されるTCP制御ブロックですか?ハッシュサイズを4096または他の特定の数値に設定する理由は何ですか?
inpcb
のみ利用可能です。