DOBON.NETプログラミング道掲示板
(現在 過去ログ2 を表示中)
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
[
最新記事及び返信フォームをトピックトップへ
]
[ トピック内全5記事(1-5 表示) ] <<
0
>>
■33704
/ inTopicNo.1)
「UDP」65535byteを超える画像データの送信
▼
■
□投稿者/ RIZE
一般人(1回)-(2017/10/17(Tue) 15:32:16)
環境/言語:[OS : Windows 7 / 言語 : C# / .NET Framework : 3.5]
分類:[.NET]
【解決したい問題】
2台のPC間で、片方のPCで描かれた画像データを別のPCでリアルタイム表示するアプリケーションを検討しています。
アプリのイメージは、ペイントツールのようなアプリで描かれた画像データを、別のPCでリアルタイム表示するアプリとなります。
当初、画像データ(bitmap)をバイト配列化し、UDPで送信し、受け取り側でbmp化しなおして表示しようかと思っておりましたが、上限の65535を超える画像も想定されるため、どうしようか悩んでおります。
以下前提条件です。
・5MBを超える画像データも存在する
・とにかくリアルタイムで表示させたい(高速性を重視)
・UDPの特性の順番が変わったり、パケットロスするのは問題ない(あくまでモニタ表示のため)
インターネットプロトコルをipv6にすれば、上記上限はなくなるため、
問題ないかと思っていましたが、System.Net.Sockets.UdpClientで作成したサンプルで試してみると、やはり上限が65535のようで、うまくいきませんでした。(ipv6のサンプルは本サイトを参考にし作成)
また、データを分割して送れば出来そうかなとは思いましたが、その場合、受け取り側で受け取り順番の考慮や、パケットロスを考慮する必要があるかと思いますが、これを極力簡単にしたいと思っており、ほかの方法がないか検討しています。
こういった場合、どういった方法が考えられますでしょうか?
引用返信
削除キー/
編集
削除
■33712
/ inTopicNo.2)
Re[1]: 「UDP」65535byteを超える画像データの送信
▲
▼
■
□投稿者/ shu
大御所(480回)-(2017/10/19(Thu) 11:55:07)
■
No33704
に返信(RIZEさんの記事)
送り側
・画像を送信可能サイズに分割
・ID+データ種別(1)+総数を送信
・ID+データ種別(2)+分割番号+分割データ郡をそれぞれ送信
受け側
・同一IDのデータがそろったら画像を復元して表示
・違うIDが届いたらそれまでのデータを破棄
基本的にはこんな感じだと思います。
引用返信
削除キー/
編集
削除
■33715
/ inTopicNo.3)
Re[2]: 「UDP」65535byteを超える画像データの送信
▲
▼
■
□投稿者/ RIZE
一般人(2回)-(2017/10/19(Thu) 14:56:57)
■
No33712
に返信(shuさんの記事)
返信ありがとうございます。
やはりそういうプロトコルにするしかなさそうですね。
ipv6であれば、65535バイトの制限がないとの認識でしたが、あっておりますでしょうか?
引用返信
削除キー/
編集
削除
■33718
/ inTopicNo.4)
Re[3]: 「UDP」65535byteを超える画像データの送信
▲
▼
■
□投稿者/ shu
大御所(481回)-(2017/10/20(Fri) 07:02:49)
■
No33715
に返信(RIZEさんの記事)
> ■
No33712
に返信(shuさんの記事)
> 返信ありがとうございます。
> やはりそういうプロトコルにするしかなさそうですね。
>
> ipv6であれば、65535バイトの制限がないとの認識でしたが、あっておりますでしょうか?
>
UDPの仕様としては可能みたいですが、
https://ja.wikipedia.org/wiki/User_Datagram_Protocol
UdpClientで同一制限がかかるのは何か指定が足りないか、不可能なのだと思います。さらに低レベルのSocketを使うと出来るかもしれません。
引用返信
削除キー/
編集
削除
■33725
/ inTopicNo.5)
Re[4]: 「UDP」65535byteを超える画像データの送信
▲
▼
■
□投稿者/ RIZE
一般人(4回)-(2017/10/25(Wed) 23:56:14)
■
No33718
に返信(shuさんの記事)
> ■
No33715
に返信(RIZEさんの記事)
>>■
No33712
に返信(shuさんの記事)
> UdpClientで同一制限がかかるのは何か指定が足りないか、不可能なのだと思います。さらに低レベルのSocketを使うと出来るかもしれません。
返信ありがとうございます。
今回は分割送信のプロトコルを作ることにします。
ありがとうございました。
解決
済
み!
引用返信
削除キー/
編集
削除
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
過去ログには書き込み不可
Mode/
通常管理
表示許可
Pass/
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
-
Child Tree
-