ネットワークプログラミング相談室 Port29
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2012/10/31(水) 17:05:08.29Programming UNIX Socket FAQ (日本語訳)
http://www.kt.rim.or.jp/~ksk/sock-faq/indexj.html
Winsock Programmer's FAQ (日本語訳)
http://www.kt.rim.or.jp/~ksk/wskfaq-ja/
関連リンクは>>2-10辺り
足りなかったら適当に付け足してね
前スレ
ネットワークプログラミング相談室 Port28
http://toro.2ch.net/test/read.cgi/tech/1334736934/
関連スレ
ネットワークプログラミング雑談
http://toro.2ch.net/test/read.cgi/tech/1235800707/
0991デフォルトの名無しさん
2014/10/30(木) 23:19:41.98ID:LEQ9Vqbzくっつくことあるんだ……
必ずくっつかないという前提のコード結構見るけど
あれ間違いなのか
0992デフォルトの名無しさん
2014/10/30(木) 23:44:21.63ID:vmfUc9wPUDP の 1) のケース "1234" "5678" は、recv 操作が必ず2回必要という意味だよ
つまり、たとえ1回目の recv 操作の時点ですでに2つの論理メッセージが到着していたとしても、
必ず "1234" だけが返される
そして2回目の recv 操作で、ようやく "5678" が返される
対して TCP では1回の recv 操作の時点で2つの論理メッセージが到着していれば、
それらを「くっつけて」"12345678" が返されることがある
だから、もし「必ずくっつかないという前提のコード」があれば、
それらは実行環境によっては動かなくなる可能性がある
言い換えると、アプリケーション層のプロトコルで
論理メッセージ間の境界を表現する仕様(たとえば CR/LF")を定義し、
アプリケーション層を実装するコードでは
その境界を意識した受信処理を実装しなければならない(MUST)
とは言っても、実際には >>980,983 が解説してくれているように、
多くの開発環境ではソケットと受信バッファ制御をカプセル化したモジュールが提供されているから、
それらを利用すればユーザアプリケーションのコードで境界を意識した実装の手間は最小限で済む
(おそらく質問者の >>935 にとっては、この一連の議論の中で、
>>983 のレスが最も役に立ったのではないかと思われる)
0993デフォルトの名無しさん
2014/10/31(金) 00:27:35.82ID:H/kqMfAT> たとえば送信側アプリが "123" と "456" という論理メッセージの送信を UDP へ要求した場合、
> 1) 正常な転送 : "1234" "5678"
送ってもない 78 を受信しちゃうとか、アホの考えることはわからんわ w
逆転するケースも書いてないし、マジで知らん奴が見たら混乱するからアホは書くなよ
>>991
ID:vmfUc9wP は間違いだらけだし、わざとかどうかは知らんけど IP の話を混ぜてるから、スルーした方がいい
0994デフォルトの名無しさん
2014/10/31(金) 00:42:53.89ID:uqHhdnYmまず最初にしょうもないタイプミスから
X:たとえば送信側アプリが "123" と "456" という論理メッセージの送信を
O:たとえば送信側アプリが "1234" と "5678" という論理メッセージの送信を
また、受信アプリのパターンに漏れがあったので、以下を追加する
5) 逆転した転送 : "5678" "1234"
0995デフォルトの名無しさん
2014/10/31(金) 05:19:26.68ID:mpqowuw20996デフォルトの名無しさん
2014/10/31(金) 07:12:06.80ID:p/Rkb0jtレイヤーの概念も理解できてないのか
本人がバカなのはいいけど、どや顔で間違ったこと書かれるのは迷惑でしかない
0997デフォルトの名無しさん
2014/10/31(金) 07:19:05.04ID:H/kqMfAT0998デフォルトの名無しさん
2014/10/31(金) 07:36:43.50ID:PyU9LtcS建てれなかった…
0999デフォルトの名無しさん
2014/10/31(金) 07:59:10.66ID:2NZQQB6uネットワークプログラミング相談室 Port30
http://peace.2ch.net/test/read.cgi/tech/1414709836/
1000デフォルトの名無しさん
2014/10/31(金) 08:21:00.63ID:PyU9LtcS乙です
1000
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。