ホストとネットワークのエンディアンが異なる可能性があることは知っていますが、なぜバイトオーダーが重要なのですか?
私は2つの理由があると思います:
1 ルーターが IP ヘッダー (アドレスなど) をチェックするため、ルーターはビッグエンディアン順 (ネットワーク バイト順) のみを認識します 2 受信ホストがパケットのバイト順を認識するため。受信ホストは送信ホストのバイト オーダーを知らないため、バイト オーダーがネットワーク バイト オーダーに変換されない場合、パケットのバイト オーダーはわかりません。
私は正しいですか?
次のフィールドについては、バイトオーダーに変換する必要がありますが、その理由は何ですか?
1 TCP/UDP Header options, like MSS, timestamps
2 TCP/UDP header checksum
3 TCP sequence number
4 UDP/TCP data fields