1

よく知られているサーバーを使用して、単純なUDPP2Pチャットプログラムを作成しています。クライアントは、単一のIdUDPServerを介してサーバーとクライアントからデータを送受信します。

現在のところ、クライアントはログインとログアウトができます。つまり、サーバーにデータを送信できます。サーバーがデータを送信するたびに、wiresharkから通知された埋め込みIPヘッダーチェックサムが0x00であるため、ノードのNIC側でドロップされます。

IdUDPServer設定(クライアント/サーバー)

アクティブ:True

バインディング:

放送:誤り

BufferSize:8192

DefaultPort:10000

IPVersion:Id_IPv4

ThreadedEvent:False

使用したコマンド

内で使用されるコマンドは1つだけです

UDPServer.SendBuffer(ED_Host.Text、StrToInt(ED_Port.Text)、Buffer);

同様の構成が私の別のプログラムで完全に機能しています。

4

1 に答える 1

1

最近では、OS ネットワーク スタックの代わりに、ほとんどの NIC がチェックサムの検証と生成を実行します。これはパフォーマンスを向上させるためのもので、チェックサムのオフロードとして知られています。そのため、wireshark はチェックサムが欠落しているという事実をエラーとして報告しますが、通常は無視するか、wire shark 設定でエラーをオフにすることができます。

一部の NIC ドライバーでは、チェックサムのオフロードを無効にすることができます。これを試して、コードを再テストしてください

于 2012-12-30T12:19:10.730 に答える