2017-12-05 12 views
-1

2つのホストAとBがTCPを使用して通信しています。シーケンス番号フィールドは0から始まり、受信機は累積ACKを使用すると仮定する。 Aは、Bによっても承認された465バイトのデータを正常に送信しました。Aが現在サイズ110,40,60の3セグメントを送信していたと仮定します。 3番目のセグメントにはどのようなシーケンス番号が入りますか?シーケンス番号計算TCP

+0

こんにちはMdJadu、とスタックオーバーフローへようこそ。申し訳ありませんが、あなたの質問はプログラミングに関するものではなく、実際にこのサイトに属していません。 StackExchangeネットワークの別のサイトが適しているかもしれません。しかし、StackExchange上の任意のサイトに対する質問は、あなたが助けを求める前にあなた自身で問題を解決しようと試みたことを示す必要があります。 –

答えて

0

これは非常に簡単で、宿題のように聞こえます。私は通常これに答えませんが、...

最初のSYNは接続で1バイトを消費することに注意してください。これは、シーケンス番号がゼロの初期SYNが1とACKされることを意味します。

ここで465バイトを転送します。これは、ACKedの最後のシーケンス番号が466になり、466がAからBへのシーケンス番号として現れることを意味します。

ここで110バイトを送信します。パケット内のシーケンス番号は466であり、データペイロードは110である.ACKは576である。

これに続いて、40バイトが送信される。これは、40バイトのペイロードを伴うパケット内のシーケンス番号576を有し、ACKは616用である。

これは、最後のセグメントをもたらす。セグメントのシーケンス番号は616でなければなりません。私が頭で正しく数式を実行していれば、これはあなたが求めているパケットのシーケンス番号です。そのためのACKは676です。

関連する問題