C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: UDP通信について


(過去ログ 33 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■16425 / inTopicNo.1)  UDP通信について
  
□投稿者/ アンラッキースター (1回)-(2008/04/05(Sat) 14:20:59)

分類:[VB6 以前] 

すいません質問です。

VB6.0 SP5
WINDOWS2000 SP4

パソコン内で2つのアプリケーション(仮にAとBと仮定します。)を立上げUDP通信を行います。
AからBに対して演算信号が出力されて、Bより演算終了信号がAに対して出力されます。
Aがこのとき終了信号を受け取れずタイムオーバーになってしまいます。
3回に1回は正常終了(終了信号を受信)します。

Aは、アプリケーションを立ち上げたときにポートを開け閉じていません。
Bは、終了信号を出力し続けています。

UDP通信にて、Bよりの終了信号を確実にとれるようにするには
どのような対処法があるのか教えてください。
よろしくお願いします。



引用返信 編集キー/
■16427 / inTopicNo.2)  Re[1]: UDP通信について
□投稿者/ Jitta on the way (70回)-(2008/04/05(Sat) 14:52:00)
No16425 (アンラッキースター さん) に返信
> すいません質問です。
>
> VB6.0 SP5
> WINDOWS2000 SP4
>
> パソコン内で2つのアプリケーション(仮にAとBと仮定します。)を立上げUDP通信を行います。

まずここ。
どちらもポートを開けられているの?
引用返信 編集キー/
■16428 / inTopicNo.3)  Re[1]: UDP通信について
□投稿者/ も (16回)-(2008/04/05(Sat) 15:23:11)
No16425 (アンラッキースター さん) に返信
> すいません質問です。
>
> VB6.0 SP5
> WINDOWS2000 SP4
>
> パソコン内で2つのアプリケーション(仮にAとBと仮定します。)を立上げUDP通信を行います。
> AからBに対して演算信号が出力されて、Bより演算終了信号がAに対して出力されます。
> Aがこのとき終了信号を受け取れずタイムオーバーになってしまいます。
> 3回に1回は正常終了(終了信号を受信)します。
「タイムオーバー」ってなんぞ?

追伸
そういえばローカルでUDPデータグラムのロス率が2%とかになったことがあった希ガス.
確実性を求めるならTCPが一番簡単.
引用返信 編集キー/
■16439 / inTopicNo.4)  Re[2]: UDP通信について
□投稿者/ れい (467回)-(2008/04/05(Sat) 22:28:51)
2008/04/05(Sat) 23:59:55 編集(投稿者)

> UDP通信にて、Bよりの終了信号を確実にとれるようにするには
> どのような対処法があるのか教えてください。

同じPC内で3回に1回しか正常に伝達しないというのはあきらかにおかしいです。
ループバックアダプタでパケットがロスするとは考えられません。

ネットワークの使い方を間違っていると思われます。

どのように間違ってるのかはソースを見ないとわかりません。

追記。

可能性を考えきれてませんでした。
莫大トラフィックならループバックでもあふれる可能性がありますから
当然パケット落ちもありえますね。

が、ループバックがあふれるような状況はやっぱり異常なので、
なにか間違ってると思います。

それが直ったとしても、
依然としてUDPではパケット伝達は保証できないので、
無線とか使うと落ちまくりです。

パケット伝達を保証したいならハンドシェイクを入れるしかありません。
引用返信 編集キー/
■16689 / inTopicNo.5)  Re[3]: UDP通信について
□投稿者/ bau (1回)-(2008/04/09(Wed) 16:58:34)
受取バッファーに溜まってるのか?

1バイト毎に呼んでみては?


引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -