Sir、 TCPソケットを使用して文字列を別のシステムに送信しています。私は8つのボタンを取った。各ボタンをクリックすると、同じ文字列が同じソケットを使用して同じIPとPORTに送信されます。ソケットは起動時に一度指定されたIPに接続されます。今、2番目のシステムでパケットを分析しています(パケットアナライザを使用しています)が、データを正しく見つけることができませんでした。 問題:1つのボタンをクリックしてパケットを分析しても問題ありません。私はパケットとデータ部分が別々に見つかった。その罰金をやめた。ちょうど1つのヘッダー部分がある間、私が3つまたは4つのボタンをクリックした後、パケットアナライザでパケットを分析すると、データ部分の下に接続されたすべての文字列(クリックされたボタンから)が見つかりました。クリックごとに異なるパケットが必要です。つまり、各文字列を別のパケットにカプセル化する必要があります。 何が問題なのですか? 返信してください...ありがとう.....tcpパケットを適切にキャプチャする際の問題
0
A
答えて
2
いいえ、tcpはストリームプロトコルです。データを片方のチャンクに入れますが、データがリモートエンドに到着すると、これらのチャンクの境界は消えてしまいがちです。
tcpを使用する必要がある場合は、いくつかの選択肢があります。
- データの長さを含むヘッダーを各チャンクに付加し、送信キューをフラッシュし、リモートエンドでヘッダーだけを読み取り、それを使用してさらにデータを読み取ります。
- 基本的なhttpプロトコルのように、すべてのパケットに対して新しいtcp接続を作成します。
- すべてのチャンクを同じサイズ(40バイト)とし、リモートエンドでそれをexaxctly読み込みます。
ところで、おそらく、ソケットあたり1つの書き込みスレッドしかないようにする必要があります。
関連する問題
- 1. tcp/ipパケットをキャプチャする方法
- 2. SQLで適切なトリガータイプを定義する際の問題
- 3. Ajax.ActionLinkで適切なHTTP削除を行う際の問題
- 4. zxingを使用して適切なqrコードを生成する際の問題
- 5. Android:Androidのカメラで画像をキャプチャする際の問題
- 6. アクティブウィンドウの変更イベントをキャプチャする際の問題
- 7. ScrollView内でシングル/ダブルタップをキャプチャする際の問題
- 8. パケットをキャプチャする方法
- 9. ハンドシェイク後のTCPパケット
- 10. 空のUDPパケットとTCPパケットのサイズ?
- 11. netfilterでパケットをキャプチャするには?
- 12. TCPクライアントサーバー問題
- 13. TCPパケット送信エラー
- 14. Linux TCP:パケット分割?
- 15. Scapy show2()パケットの問題
- 16. TCPパケット損失の部分
- 17. C#:アウトオブオーダーのTCPパケットを扱うには?
- 18. iPhoneで画像をキャプチャする際に問題がありますか?
- 19. 崇高なテキストのソーダテーマを適用する際の問題2
- 20. パケットをキャプチャしてからパケットIPSシステムをドロップする
- 21. 不適切に公開されたオブジェクトの問題を示す
- 22. ファイルポインターを使用してTCP経由でファイルを転送する際の問題
- 23. WPF UserControlでスタイルを適用する際の問題
- 24. ソケットを介してsmtp電子メールサーバーのリターンコードをキャプチャする際の問題
- 25. 'else if'ステートメントに適切な条件を設定して、Androidでクエリを実行する際の問題
- 26. 適切な時間を取得することの問題
- 27. SWFパケットをキャプチャする方法は?
- 28. SharpPcapでHTTPパケットをキャプチャする方法
- 29. tsharkの:フィルタを適用することはできませんキャプチャしたパケット
デバイスに接続されているため、パケットごとに新しいTCp接続がデバイスをダンプする可能性があります。私はヘッダーを先頭に付けたすべてのパケットを送信する必要があるとは思わない。データをパケットにカプセル化するOSの義務。そして、もう一方の端でそれを抽出します。 – himanshu
各データチャンクはレイヤーごとカプセル化されなければならず、もう一方の端で抽出を実行する必要があります。だから私はpacktアナライザを使用する場合、私は、ヘッダー、データ....ヘッダー、データ、ヘッダー、データ...各パケットの表示する必要があります。 – himanshu
は、標準サイズのTCPパケットにデータ部分が固定されていると考えているのと同じサイズです。 TCPパケットのDATA PARTの長さに応じて文字列(バイト)を分割することはOSの義務です。 – himanshu