ネットワークプログラミング相談室 Port28
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2012/04/18(水) 17:15:34.85Programming 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辺り
足りなかったら適当に付け足してね
前スレ
ネットワークプログラミング相談室 Port26
http://hibari.2ch.net/test/read.cgi/tech/1269343909/
関連スレ
ネットワークプログラミング雑談
http://hibari.2ch.net/test/read.cgi/tech/1235800707/
Java ネットワークプログラミング 【教えて!】
http://hibari.2ch.net/test/read.cgi/tech/1086238859/
0232デフォルトの名無しさん
2012/06/14(木) 12:32:32.97いや、IPパケットの分割そのものはTCPで必須だから、どのアナライザでも見えるはずなんだよ
でも、「UDPデータグラムの分割(=断片化)」というのは常識的には想定されていないグレーゾーンだから、
アナライザ側での対応も解析可否を即答できる人はかなり限定されるんじゃまいかと
どうしても知りたいのならフリーならフォーラムへ有償ならベンダーへ問い合わせしたほうがいいと思う
自分なら最も素朴で実績のあるアナライザである、UNIX(Linux or Mac)のtcpdumpを使うけどね
最悪、-xオプションで全フレームを16進ダンプして自力で解析プログラムを組むことも考える
0233229
2012/06/14(木) 14:27:54.70・パケットアナライザーも使えません
いうことありません
0234デフォルトの名無しさん
2012/06/14(木) 20:10:26.38昔、TCPサーバアプリを作る時に過去スレ全部見たな〜
おかげで初めて作ったTCPアプリだったが何年も何の問題もなく動いている。
0235デフォルトの名無しさん
2012/06/14(木) 20:35:16.980236デフォルトの名無しさん
2012/06/14(木) 20:48:20.36IPフラグメントの話で、なんで上位層のTCPとかUDPとかが出てくるんだろう?
0237デフォルトの名無しさん
2012/06/14(木) 21:06:58.41何、言ってんのか、わからんのだけど
0238デフォルトの名無しさん
2012/06/14(木) 21:36:05.26この意味がわからん。
0239デフォルトの名無しさん
2012/06/14(木) 22:09:52.82このスレで紹介されているサイトや スティーヴンスの本も読んだよ。
ここは90%以上ゴミレスだけど時々神が降臨されるのさ。
0240デフォルトの名無しさん
2012/06/14(木) 23:16:42.70ソースは?
0241デフォルトの名無しさん
2012/06/15(金) 00:51:01.82>>181が馬鹿な回答するから、質問者を混乱させてるんじゃないか。
0242デフォルトの名無しさん
2012/06/15(金) 01:17:59.73http://wiki.wireshark.org/IP_Reassembly
0243デフォルトの名無しさん
2012/06/15(金) 01:26:17.48データを保証しないといけないからね
IPとして処理される段階ではMTUとかに合わせたサイズになっとる
0244デフォルトの名無しさん
2012/06/15(金) 08:56:02.26何年も前の話がループしてるのか
0245デフォルトの名無しさん
2012/06/15(金) 14:31:37.40>>205
何年も前どころか二日前の話がループしている。
0246デフォルトの名無しさん
2012/06/15(金) 17:34:02.50> TCPの送信段階で分割したような動作になってるだけでしょ
> データを保証しないといけないからね
あのね、UDPの話で始まってるのよ。
状況とTCP/IPの仕様をちゃんと把握してないのに適当にレスする奴多すぎw
>>232とか斜めすぎて意味がわからん。
0247デフォルトの名無しさん
2012/06/15(金) 18:04:05.680248デフォルトの名無しさん
2012/06/15(金) 18:18:00.800249デフォルトの名無しさん
2012/06/15(金) 18:23:39.72・IP層の断片化 (途中経路でも起きる。only IPv4)
・TCP層のセグメント分割 (peerのみで行われる)
を区別できてないだけ。
どちらもMTUが絡むから、初級者によくある混同で、それほど意味不明でもない。
ただしUDPについて推測で発言しているから、相当おかしい内容になってるけれども。
0250デフォルトの名無しさん
2012/06/16(土) 17:25:18.62インターネットに流すならルータがめんどくさいなって思ったら容赦なく捨ててるから届かないって感じだ。
今はicmpで通知しても安物ブロードバンドルータが捨ててしまうからねえ。
送る側で小さくしてみてどのくらいなら通るって試行錯誤しながら送るしかない。ファイルベースなら512バイトずつ読んでるはずだから、512バイト読んでそのまま送ればいいんじゃ無い。
2セクタ読んで1024バイト送ってみてどのくらいパフォーマンス上がるかも環境次第だしねえ。
lteとかwimaxとかで帯域制限された/混雑時の送信ノウハウなんてのも必要なのかもしれない。128kbps制限とかされたらまず送ってもエラーだしね。
0251デフォルトの名無しさん
2012/06/16(土) 17:30:18.320252デフォルトの名無しさん
2012/06/16(土) 17:33:23.120253デフォルトの名無しさん
2012/06/16(土) 17:40:39.59そういう話じゃねーよ。>>181>>232は明らかに仕様を理解してない。
0254デフォルトの名無しさん
2012/06/16(土) 19:27:39.93バカの長文乙
0255デフォルトの名無しさん
2012/06/16(土) 19:31:50.890256デフォルトの名無しさん
2012/06/16(土) 19:35:34.910257デフォルトの名無しさん
2012/06/16(土) 19:40:30.380258デフォルトの名無しさん
2012/06/16(土) 19:40:35.09人に作ってもらって喜んでるガキレベルかもね
0259デフォルトの名無しさん
2012/06/16(土) 21:26:02.57本質ってなに? ちょっとここに書いてみて
0260デフォルトの名無しさん
2012/06/16(土) 21:55:39.820261デフォルトの名無しさん
2012/06/16(土) 22:32:04.03資料あっても必要なとこも探さない読めない系の人が増えてる?
0262デフォルトの名無しさん
2012/06/16(土) 22:54:28.18229,233
0263デフォルトの名無しさん
2012/06/16(土) 23:19:49.73(ill-functionalなhostは経路上にいないと仮定しても)
そしてTCPスタックが馬鹿だと、自分では解決しづらいことがある。
どういう時に起きうるかというと、
ルータの次の経路のMTUが極端に小さいのに、
fragmentationの実装は必須でないので実装してない場合。
(reassemblyの実装は必須)
まあ要するに十分小さいパケットを送っていれば気にする必要はない。
TCPスタックが行なっている解決方法は、
"Fragmentation Considered Harmful"を。
UDPプログラマはこの程度の内容は知っておくべき。
LAN内でしか使わないなら、なんちゃってプログラミングでいいと思うが。
0264デフォルトの名無しさん
2012/06/16(土) 23:27:01.08それがキミの考える「本質」なの?
0265デフォルトの名無しさん
2012/06/16(土) 23:45:24.49君の答えは?
0266デフォルトの名無しさん
2012/06/16(土) 23:48:14.14人に説明を求めて解答が常に得られると思っている蒙昧な者も多い
0267262
2012/06/16(土) 23:52:49.670268デフォルトの名無しさん
2012/06/16(土) 23:56:16.24( ‘д‘)
⊂彡☆))Д´) >>267
0269デフォルトの名無しさん
2012/06/17(日) 00:02:38.85ここで言う「本質」が何を指しているかわからんから、この文自体が
何を言っているかわからないというだけだろ?
別に何か意味があるわけじゃなくて、なんとなくもっともらしい台詞を
書いただけなのかも知れんが。
0270267
2012/06/17(日) 00:06:22.970271デフォルトの名無しさん
2012/06/17(日) 00:06:24.02って言いたいだけだろ。
ここまでのレスで内容が具体的に書かれてないところ見ると、本当かどうかは
かなり疑わしいから、普通にスルーでいいんじゃね?
0272デフォルトの名無しさん
2012/06/17(日) 00:13:53.84君は質問者か?
0273デフォルトの名無しさん
2012/06/17(日) 00:20:41.170274デフォルトの名無しさん
2012/06/17(日) 00:24:37.070275デフォルトの名無しさん
2012/06/17(日) 00:25:28.46そんな事は、その具体的なレス番を示してから言うことだよ。
0276デフォルトの名無しさん
2012/06/17(日) 00:28:58.56スルーしたレス番を示してみな?
0277デフォルトの名無しさん
2012/06/17(日) 00:47:14.93>>273 理解できないからスルーしたんだろ
俺) 内容書いてあるレス番書きなよ
>>275 スルーしたレス番示せ
ひょっとして、馬鹿なの?
まあ、やっぱ脳内レスでしたというオチなんだろうな。
0278デフォルトの名無しさん
2012/06/17(日) 00:55:55.40スルーしたレス番を示してみな?
0279デフォルトの名無しさん
2012/06/17(日) 01:55:08.65それがわかれば十分、相手にした俺が馬鹿だったよ。
0280デフォルトの名無しさん
2012/06/17(日) 03:52:26.83udp要らないじゃない。
まあインターネットでudpで送ってもまず届かないから、lanやネットワーク管理者の管理下にある社内lan程度に留めとけってのは分かるけど。
0281デフォルトの名無しさん
2012/06/17(日) 08:44:55.63途中のreouterであえてUDPをブロックしたり優先度を下げているとかじゃなけりゃ。
0282デフォルトの名無しさん
2012/06/17(日) 10:18:43.710283デフォルトの名無しさん
2012/06/17(日) 10:32:45.220284デフォルトの名無しさん
2012/06/17(日) 10:35:48.730285デフォルトの名無しさん
2012/06/17(日) 10:37:13.45283=281?
0286デフォルトの名無しさん
2012/06/17(日) 15:21:18.06どのあたりが馬鹿なのか、解説してみろ。
0287デフォルトの名無しさん
2012/06/17(日) 15:59:09.14君のレス番は?
0288デフォルトの名無しさん
2012/06/17(日) 16:14:10.70>>281
0289デフォルトの名無しさん
2012/06/17(日) 17:04:23.57そこだけつっこんもしょうがねーだろ
馬鹿の壁
0290デフォルトの名無しさん
2012/06/17(日) 17:20:45.61馬鹿にはできない突っ込みの手本というものを見せてくれ。
0291デフォルトの名無しさん
2012/06/17(日) 17:37:32.280292デフォルトの名無しさん
2012/06/17(日) 17:42:04.990293デフォルトの名無しさん
2012/06/17(日) 17:53:30.34くやしいから何か言い返したくて「馬鹿」と言っているだけ。
0294デフォルトの名無しさん
2012/06/17(日) 21:00:40.40昔はFreeBSDの方が1.1倍いいと言われていたが
0295デフォルトの名無しさん
2012/06/17(日) 21:10:13.68今はFreeBSDの1.2倍いい
ちなみにWindowsは33倍いい
0296デフォルトの名無しさん
2012/06/17(日) 21:12:21.64根拠はある?
0297デフォルトの名無しさん
2012/06/18(月) 12:00:30.440298デフォルトの名無しさん
2012/06/23(土) 22:14:47.790299デフォルトの名無しさん
2012/07/17(火) 10:20:52.610300デフォルトの名無しさん
2012/07/20(金) 13:11:51.43ポートを開放しているPC-Aとポート未開放のPC-Bがあるとき、
1)B→Aに送信
2)Aは受信後、送信元(B)に送信
3)Bが受信
としたとき、2〜3番のA→BについてもUDPホールパンチングによって可能となった
と考えていいのかな?
0301デフォルトの名無しさん
2012/07/20(金) 14:21:42.490302デフォルトの名無しさん
2012/07/20(金) 14:38:36.30(1)についてもUDPホールパンチングによって可能となったと考えているのか?
0303デフォルトの名無しさん
2012/07/20(金) 14:57:51.74>>302
「も」は一般的に例に挙げられるポート未開放のクライアント同士の通信に対しての「も」だよ
0304デフォルトの名無しさん
2012/07/20(金) 17:37:03.54> UDPホールパンチングの説明ってポートを開放していないクライアント同士の例ばっかりだけど、
でないことが分かる。
0305デフォルトの名無しさん
2012/07/29(日) 23:11:40.41IPMsgみたいなことをやりたくて、
1.A機種でServerSocketを待受て、AからUDP送信
2.B、C、D機種で受信
3.B、C、Dで受信したパケットオブジェクトから、Aのアドレスを取得して、
各機種からAのServerSocketめがけてTCP接続
→ エラー発生(することがある)
結果、
・B、C、Dすべてで、応答成功
・B、CはAへ応答を返せたのに、DでだけNo route to hostが出る
・Dは成功したが、B、CでNo ry〜
みたいな症状が出ています
タイミング的なもんか?とは思うんですが、なんかよくわからん
・No ry〜が出るときは、DからAへのpingコマンドでnetwork unreachable、
・AからDへpingすると、接続が回復する(ように見える。次回アプリ実行時にNo ry〜が出ない)
・Dからarp who-hasのブロードキャストが出ているが、Aで受信せず、B、Cでは受信できている
stackoverflow.comでAndroid + No route to hostって質問がいくつかあるけど、
結局解決してないように見える
なので、2chで解決するべ
0306デフォルトの名無しさん
2012/07/31(火) 00:43:37.010307デフォルトの名無しさん
2012/08/05(日) 11:23:49.49ジャッチメント(規律委員)は全員しておくこと 1円でしておくこと
最新情報 大金をすべてしておくこと
下に、無限超を数字にして、沢山書いて、数十枚、数百枚、数千万枚、数千京京京にして、銀行や松井証券など
に提出、FAXすればいいよ。上に京万枚と書いておくこと
最新情報 大金
http://sky.geocities.jp/mannga9999/keizai2.txt
経営板で、アイスクリーム屋と、クリーニングの板見ればいい。
ほい。
http://yuzuru.2ch.net/test/read.cgi/sakura/1158988790/
あとは、財閥の登記するだけ。kore
これノウハウ。教えていってたから、教えたおん。よ。
まーちゃんに、募金すること
突っ張りすぎて、中国の元が無価値になっぞ。実態のない経済は滅ぶ 今、元はマイナス。
http://blogs.yahoo.co.jp/mymymy90jp/2857425.html
これ改造して、大富豪ソフト作れない?金のレートが下がる時は、レートも下がるので、落ちる角度を計算してMその前にもどす機能があると、世界不況のときにも、できる。
http://www.vector.co.jp/soft/dl/win95/business/se312001.html
探せば、ソフトあるよ。瀬谷貴文が完成させている。
絶対命令
http://yuzuru.2ch.net/test/read.cgi/sakura/1158988790/
http://yuzuru.2ch.net/test/read.cgi/sakura/1158988790/
http://yuzuru.2ch.net/test/read.cgi/sakura/1158988790/
http://yuzuru.2ch.net/test/read.cgi/sakura/1158988790/
http://yuzuru.2ch.net/test/read.cgi/sakura/1158988790/
http://yuzuru.2ch.net/test/read.cgi/sakura/1158988790/
masaの分もやっておくこと
depend on 銀行、matuisyouken monex
最後に、福祉財団、貧しい人を助ける財団をつくること
絶対命令 DC
0308デフォルトの名無しさん
2012/08/05(日) 14:13:01.430309デフォルトの名無しさん
2012/08/07(火) 11:42:50.66送信間隔は50msくらいなんですけどたまにパケットがロストします
特にsendtoはエラーを吐くわけでもなく普通に通信を続行してます
1時間に0から2回程度ロストする現象が起きます
このようなことはUDP通信では普通なのでしょうか?
なんとかロストしない方法があったら教えてください
0310デフォルトの名無しさん
2012/08/07(火) 11:52:18.15ロストしたらもう一度送ればいいと思います
0311デフォルトの名無しさん
2012/08/07(火) 12:17:29.49パケットヘッダのチェエクサムってのはルータを通るたびに変わるんですかい?
他にルータを経由してパケっどヘッダの中身で変わる可能性があるのは
Type of Service, TTL, Header Checksum, Option であってます?
0312デフォルトの名無しさん
2012/08/07(火) 12:32:14.800313デフォルトの名無しさん
2012/08/07(火) 12:50:16.33UDPはロストするもんです嫌ならTCPを使いましょう。
1:1の通信でUDPを使うメリットは殆どないと思いますけど。
0314デフォルトの名無しさん
2012/08/07(火) 12:58:17.65ど素人がアドバイスするのは100年早いですよ。
0315デフォルトの名無しさん
2012/08/07(火) 13:00:13.80NATとかフラグメントとか考えれば
もっといろいろ書き変わるけど。
0316デフォルトの名無しさん
2012/08/07(火) 13:00:39.69マルチキャスト/ブロードキャストよりユニキャストの方が圧倒的に
多く使われている。
0317デフォルトの名無しさん
2012/08/07(火) 13:02:56.60STREAMとDATAGRAMの差も理解できないバカですか?
0318デフォルトの名無しさん
2012/08/07(火) 13:05:05.69TCP(ストリームベース だけど、リトライ等である程度保障)
中間の SCTP ってのがあるけど… まだまだ普及してない印象
ある程度保障されたデータグラムのやり取り という用途は悩ましい
UDP でリトライ機構を考えるか, TCPでデータグラム単位に切り出す機構を考えるか
0319デフォルトの名無しさん
2012/08/07(火) 13:08:55.69>>313の一行目はいいと思う。
2行目は間違い。
0320デフォルトの名無しさん
2012/08/07(火) 13:10:46.780321デフォルトの名無しさん
2012/08/07(火) 13:12:24.73いいえ、50ms間隔で送信という要件が出てきた時点で
TCPが候補に挙がることはあり得ません。
1行目も誤りです。TCPの再送機構にだけ目が行き、
それによってどのようなパケットフローになるかがまったく
考慮されていません。
0322デフォルトの名無しさん
2012/08/07(火) 13:14:44.08逆に言うと
そのあたりがなければTOSとTTLくらいってことですか
ありがとうございました。
0323デフォルトの名無しさん
2012/08/07(火) 13:17:53.52全く解決できてないしw
0324デフォルトの名無しさん
2012/08/07(火) 13:18:27.96PSHフラグあるがな。
0325デフォルトの名無しさん
2012/08/07(火) 13:18:40.660326デフォルトの名無しさん
2012/08/07(火) 13:19:24.85> なんとかロストしない方法があったら教えてください
そりゃこれが直結しない限り解決不能だし。
0327デフォルトの名無しさん
2012/08/07(火) 13:26:23.22すごい結果が待ってる気がするw
0328デフォルトの名無しさん
2012/08/07(火) 13:26:27.330329デフォルトの名無しさん
2012/08/07(火) 13:29:51.9450msがTCPじゃだめでUDPならOKという判断がどこから出てくるのかと
0330デフォルトの名無しさん
2012/08/07(火) 13:31:20.43> なんとかロストしない方法があったら教えてください
の要件で
0331309
2012/08/07(火) 13:31:25.94直結でやってますけど1時間に1回くらいでる頻度を
3時間に1回とかもっと頻度を減らすことは無理ですか?
■ このスレッドは過去ログ倉庫に格納されています