[過去ログ]
ネットワークプログラミング相談室 (956レス)
ネットワークプログラミング相談室 http://mevius.5ch.net/test/read.cgi/tech/970344582/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
1: 名無しさん@お腹いっぱい。 [] 2000/10/01(日) 05:09 主にソケットに関してのFAQ http://mevius.5ch.net/test/read.cgi/tech/970344582/1
857: デフォルトの名無しさん [sage] 01/10/19 16:44 >>856 もう一声! http://mevius.5ch.net/test/read.cgi/tech/970344582/857
858: デフォルトの名無しさん [sage] 01/10/19 16:52 getsockopt SO_MAX_MSG_SIE http://mevius.5ch.net/test/read.cgi/tech/970344582/858
859: デフォルトの名無しさん [sage] 01/10/19 16:53 追加(Stream) SO_RCVBUF SO_SNDBUF http://mevius.5ch.net/test/read.cgi/tech/970344582/859
860: デフォルトの名無しさん [sage] 01/10/19 17:06 >>858, >>859 これ、どう使えばいいんですか? http://mevius.5ch.net/test/read.cgi/tech/970344582/860
861: デフォルトの名無しさん [sage] 01/10/19 21:18 >>860 調子に乗るな、いい加減にしろ http://mevius.5ch.net/test/read.cgi/tech/970344582/861
862: デフォルトの名無しさん [sage] 01/10/19 21:27 >>861 なーんだ、知らないんだー http://mevius.5ch.net/test/read.cgi/tech/970344582/862
863: デフォルトの名無しさん [sage] 01/10/19 22:21 >>862 さようなら、そしてもう来るな http://mevius.5ch.net/test/read.cgi/tech/970344582/863
864: デフォルトの名無しさん [sage] 01/10/19 22:35 >>863 プログラマーはすぐ怒るんだから。こわっ http://mevius.5ch.net/test/read.cgi/tech/970344582/864
865: デフォルトの名無しさん [] 01/10/23 16:19 ポート番号10000って、何に使われる事が多いですか? 使わない方がよいですか? http://mevius.5ch.net/test/read.cgi/tech/970344582/865
866: デフォルトの名無しさん [sage] 01/10/23 16:23 問題ない、良きに計らえ http://mevius.5ch.net/test/read.cgi/tech/970344582/866
867: デフォルトの名無しさん [sage] 01/10/23 16:33 厨房よ、無知をさらけだして みっともない恥じをカクコト莫れ すっこめウンこ厨房 http://mevius.5ch.net/test/read.cgi/tech/970344582/867
868: デフォルトの名無しさん [sage] 01/10/23 17:58 FAQ スレで厨房に説教タレル工房発見 http://mevius.5ch.net/test/read.cgi/tech/970344582/868
869: デフォルトの名無しさん [] 01/10/24 01:32 >>865 > ポート番号10000って、何に使われる事が多いですか? > 使わない方がよいですか? http://www.iana.org/assignments/port-numbers読め。最後の部分もな。 > 何に使われる事が多いですか? 「多い」とか「多くない」の問題じゃないよ。自由に使っていいport番号は決まってる。 お前がICQ.comの馬鹿技術者なら別だけど。 http://mevius.5ch.net/test/read.cgi/tech/970344582/869
870: デフォルトの名無しさん [sage] 01/10/25 00:57 >>863 けっきょくマニュアルに載っていること以外は答えられないのね. http://mevius.5ch.net/test/read.cgi/tech/970344582/870
871: デフォルトの名無しさん [] 01/10/26 00:59 初心者なんですが、socket()-bind()、sendto()-recvfrom()の ソケット通信を行うプログラムでWindows98とNTでの違いはあるんでしょうか? 実は98上で動いたものがNT上で動かなくて困ってるんですが...。 http://mevius.5ch.net/test/read.cgi/tech/970344582/871
872: デフォルトの名無しさん [sage] 01/10/26 01:07 >>870 つか、マニュアルの読み方くらい覚えてから来い。 そこから教えてたんじゃ玉欄。 http://mevius.5ch.net/test/read.cgi/tech/970344582/872
873: デフォルトの名無しさん [sage] 01/10/26 09:20 >>870 これだけヒントをもらった上に、偉く時間が経っているにも関わらず、 未だに道に迷ってうろついている方向音痴のあなたに乾杯! 永久に遭難していた方が世のため人のため。 http://mevius.5ch.net/test/read.cgi/tech/970344582/873
874: デフォルトの名無しさん [] 01/10/30 12:51 質問です。 「UNIXネットワークプログラミング」で紹介されている socketやconnect等のラッパー関数であるSocketやConnect関数は どこかにソースがあるのですか? あるのだとしたらどのディレクトリの中にあるのか教えてください。 お願いします。 http://mevius.5ch.net/test/read.cgi/tech/970344582/874
875: デフォルトの名無しさん [sage] 01/10/30 14:54 >>874 11ページを見よ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/875
876: デフォルトの名無しさん [sage] 01/10/30 16:19 >>875 どうもどうも。 http://mevius.5ch.net/test/read.cgi/tech/970344582/876
877: デフォルトの名無しさん [] 01/11/01 22:50 netstat -e で取得できる送受信バイト数と同様な値をプログラムから取得したいのです。 SNMPを使う事まではわかるんですが具体的な手順を教えてください。 あ、Win9xとWin2000のVC6です。 http://mevius.5ch.net/test/read.cgi/tech/970344582/877
878: デフォルトの名無しさん [sage] 01/11/02 00:12 netstat逆汗しれ http://mevius.5ch.net/test/read.cgi/tech/970344582/878
879: デフォルトの名無しさん [sage] 01/11/02 15:23 >>877 http://www.sysinternals.com/files/netstatp.zip http://mevius.5ch.net/test/read.cgi/tech/970344582/879
880: 877 [sage] 01/11/02 19:48 >>879 サンクスね あと、Google検索で色々調べてたら見つかりました。 http://www.codeguru.com/mfc/comments/26225.shtml http://www.zdnet.co.jp/help/howto/linux/0007master/06/ 何とか目的の物が出来ました。 http://mevius.5ch.net/test/read.cgi/tech/970344582/880
881: デフォルトの名無しさん [] 01/11/02 23:55 php覚えやすい言語だけど索引もろくに使えないようなへたくそな本などが多くて無駄手間がかかる。 学生(20歳) http://mevius.5ch.net/test/read.cgi/tech/970344582/881
882: デフォルトの名無しさん [sage] 01/11/03 00:09 >>881 板違い? http://pc.2ch.net/php/ WEBプログラミング@2ch掲示板 http://mevius.5ch.net/test/read.cgi/tech/970344582/882
883: kevin hikinik [] 01/11/04 17:31 マジで聞きます。 tracertがUDPを利用してるとかICMPを利用してるとか・・・ どゆこと? プロトコルに基づいてる!? コードになりゃみんないっしょじゃんか・・・。 用はソケットなりストリームなりを使えばいいだけじゃん。 システムが全治2週間ほどあるんで、見ようにも見れんし。 プロトコル専用のヘッダやライブラリがあるわじゃないっしょ? プロトコルに基づいて実装するってどゆこと? http://mevius.5ch.net/test/read.cgi/tech/970344582/883
884: デフォルトの名無しさん [sage] 01/11/04 17:36 >>883 マジなのか? もう少し勉強してから質問したほうがいいぞ。 それか、質問する時の言葉遣いを覚えろ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/884
885: kevin hikinik [] 01/11/04 17:46 すみません、先敗どの! 勉強いっぱいしました。 実装してないだけだい! 頼むから教えろ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/885
886: デフォルトの名無しさん [] 01/11/04 23:22 winsockの非同期で、sendで送信中のデータ数をリアルタイムで 知るにはどうしたらいいの? http://mevius.5ch.net/test/read.cgi/tech/970344582/886
887: デフォルトの名無しさん [] 01/11/04 23:35 >>886 小出しにして送信できたバイト数をカウントしなさいYO! http://mevius.5ch.net/test/read.cgi/tech/970344582/887
888: デフォルトの名無しさん [sage] 01/11/05 00:15 >>883 プロトコルをプログラミング言語か何かだと誤解してるような。 http://mevius.5ch.net/test/read.cgi/tech/970344582/888
889: デフォルトの名無しさん [sage] 01/11/05 01:05 >>883 プロトコルという言葉の意味を考えてみよう。 http://mevius.5ch.net/test/read.cgi/tech/970344582/889
890: デフォルトの名無しさん [] 01/11/05 03:48 >>887 小出しにすると送信速度遅くならない? http://mevius.5ch.net/test/read.cgi/tech/970344582/890
891: デフォルトの名無しさん [sage] 01/11/05 10:23 >>885 「PGなのに知らなかった事を潔く質問してみるスレ」で解決できたんじゃないの? http://pc.2ch.net/test/read.cgi/prog/1002086817/643-656 http://mevius.5ch.net/test/read.cgi/tech/970344582/891
892: デフォルトの名無しさん [] 01/11/05 10:28 UNPを理解していれば旧ネスペも簡単? 本当は資格の勉強なんかしたくないんだけど簡単なら取っちゃおうかなと思ってるのですが・・ http://mevius.5ch.net/test/read.cgi/tech/970344582/892
893: ( メ ´Д`)<893 ◆HHJeUSD6 [] 01/11/11 16:26 893get http://mevius.5ch.net/test/read.cgi/tech/970344582/893
894: 質問。 [] 01/11/12 15:44 TCP転送で、sendの方の文字列の大きさとして、 recvの方を固定サイズにした場合、2回以上send すると正しい文字列でrecvできませんよね? これを正しく受信するにはどうしたらよいですか?? 場合わけしようにもかなりあるような気がして。 send回数は1〜何回でも連続でするものとします。 http://mevius.5ch.net/test/read.cgi/tech/970344582/894
895: デフォルトの名無しさん [sage] 01/11/12 15:51 >>894 可変長のデータをやりとりしたい時は、 最初に長さを送るのが簡単だとおもいます。 それか受けとった後に'\0'を探して… http://mevius.5ch.net/test/read.cgi/tech/970344582/895
896: 質問。 [] 01/11/12 16:03 >>895 ありがとうございます。でも、 他の方法ってありますか? http://mevius.5ch.net/test/read.cgi/tech/970344582/896
897: デフォルトの名無しさん [] 01/11/12 16:07 数値計算のプログラムをCで書いてるのですが、 結果をグラフで逐次表示したいんですが何か良い方法を 教えて下さい。 http://mevius.5ch.net/test/read.cgi/tech/970344582/897
898: デフォルトの名無しさん [sage] 01/11/12 16:34 >>897 それはネットワークプログラミングと、どのような関係がありますか? http://mevius.5ch.net/test/read.cgi/tech/970344582/898
899: デフォルトの名無しさん [sage] 01/11/12 16:47 >>894 いまいち言いたいことが分からんけど。 (1)相手が1回目のデータをすべて受信できたことを確認してから2回目のデータを送る (2)データサイズを固定長にしておく (3)データを見ればどこで切れるか分かる構造にしておく(データサイズを送る、データを\0で区切る、など) の、どれか。 http://mevius.5ch.net/test/read.cgi/tech/970344582/899
900: 質問。 [] 01/11/12 17:06 >>899 説明不足ですみません。 sendする文字サイズは文字の長さなので可変長です。 recvする文字サイズは固定長です。 んでもって、sendとrecvが1:1に同期しながら 動かしているんで・・・。(^^; ありがとうございました。 http://mevius.5ch.net/test/read.cgi/tech/970344582/900
901: デフォルトの名無しさん [sage] 01/11/12 17:46 >>899 sendとrecvが1:1に同期しながら動く? それは、そもそも無理では? 1回のsendで送ったデータが、2回以上のrecvに分割されるかもしれない。 2回のsendで送ったデータが、1回のrecvで受け取れるかもしれない。 このへんは何も保証されないので、データサイズを送信するなりしなければ、解決になりません。 http://mevius.5ch.net/test/read.cgi/tech/970344582/901
902: 901 [sage] 01/11/12 17:47 ↑ >>900 の間違い http://mevius.5ch.net/test/read.cgi/tech/970344582/902
903: デフォルトの名無しさん [sage] 01/11/12 18:14 >>898 きっと、計算プログラムとグラフプログラムがあって、その間を ネットワークで繋いで逐次表示させたいんだよ。だけど、tcp/ipか udp/ipか、HTTP tunnelingか、RPCかDCOMかの何を使えばいいかで 迷っていたりするんだよ(ワラ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/903
904: デフォルトの名無しさん [sage] 01/11/13 00:38 >>903 UDP/IP っていう言い方、あんまし聞かないな・・・ とりあえず TCP でいいんじゃない? http://mevius.5ch.net/test/read.cgi/tech/970344582/904
905: 905 [sage] 01/11/13 00:49 はい、質問! 通信対戦っぽいソフト作ってるんですが、 HTTPプロキシを通して出来ないかと試してみたら、 POSTが効かなかったり、バッファリングしたりしやがりまして、 なかなか上手くいかないんです。 なんか良い方法をご存じの方いらっしゃらないでしょーか? 1回データをやりとりするたびに HTTPを繋いだり切ったりするしかないんでしょーか? http://mevius.5ch.net/test/read.cgi/tech/970344582/905
906: デフォルトの名無しさん [] 01/11/13 15:28 パフォーマンスの要求されるsocketアプリケーションをPCで開発・運用する場合、最も高速なOSは何でしょうか? とりあえずWin+cygwin/Winsockを考えているのですが。 http://mevius.5ch.net/test/read.cgi/tech/970344582/906
907: デフォルトの名無しさん [] 01/11/13 17:24 >>906 OSが高速でも、ネットワーク回線自体の伝送速度で制限を受けるので、意味ないです。 10Mbps の回線では、どんなOSを使っても 10Mbps しか出ないのです。 ・・・それとも、ネットワークとは関係なく、単にCPUパワーを得たいだけ? http://mevius.5ch.net/test/read.cgi/tech/970344582/907
908: デフォルトの名無しさん [sage] 01/11/13 21:56 >>906 Windows2000Server+Winsock2+完了I/Oポートを使って組むやり方が Windowsだと最もパフォーマンスが高い。 マルチプロセッサ対応もさせやすいのでCPU毎に得意な処理を分散可能だ。 ただしライセンス料もべらぼうに高い(w http://mevius.5ch.net/test/read.cgi/tech/970344582/908
909: 908 [sage] 01/11/13 22:09 スマン、ただしサーバ用途に限ってのこと。 クライアントサイドなら組み方を問題にするべきでOSはなんでもいいと思うが http://mevius.5ch.net/test/read.cgi/tech/970344582/909
910: デフォルトの名無しさん [] 01/11/13 22:49 >Windows2000Server+Winsock2+完了I/Oポートを使って組むやり方が >Windowsだと最もパフォーマンスが高い。 これをUNIXでやる場合、各ポートをselectでチェックする処理を ループでぐるぐる回すの?なんか遅そうだな... http://mevius.5ch.net/test/read.cgi/tech/970344582/910
911: デフォルトの名無しさん [sage] 01/11/13 23:19 >>911 なんかミスリーディングな言い方してるけど、 selectすると一度に全部のポートがチェックできるよ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/911
912: デフォルトの名無しさん [sage] 01/11/13 23:57 でもselectって、ソケット数に限界なかった? あれがイヤ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/912
913: デフォルトの名無しさん [sage] 01/11/14 01:05 じゃあ最もパフォーマンスの高いPC用サーバOSってなによ? http://mevius.5ch.net/test/read.cgi/tech/970344582/913
914: 無党派さん [] 01/11/14 02:57 >>912 固定の奴でも128〜4096はあるし、変更できるUNIXもあるが… http://mevius.5ch.net/test/read.cgi/tech/970344582/914
915: デフォルトの名無しさん [] 01/11/14 03:06 >>913 MacOS X http://mevius.5ch.net/test/read.cgi/tech/970344582/915
916: デフォルトの名無しさん [sage] 01/11/14 03:14 >>915 それだけは絶対にない http://mevius.5ch.net/test/read.cgi/tech/970344582/916
917: 908 [sage] 01/11/14 03:17 >>913 自分がMSマンセーなのでWindows2000/XP むしろUnix系は良く知らんので判断できん。 >>911 私未だにselectの使い方がよく判らんのですが。 複数のソケットをチェックできても、どのソケットが反応したのか 調べる効率的な方法があるんでしょか ちなみに完了I/OポートではなくてI/O完了ポートAPIだった。 http://mevius.5ch.net/test/read.cgi/tech/970344582/917
918: デフォルトの名無しさん [sage] 01/11/14 03:39 >>910 パラメータはtimeslot以外ほとんどNULLにすればいいんじゃない。 ブロッキングをいちいち気にしてられないよ。 selectってようはエラーがないか調べるだけでしょ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/918
919: デフォルトの名無しさん [sage] 01/11/14 09:36 selectって何するものなの? http://mevius.5ch.net/test/read.cgi/tech/970344582/919
920: デフォルトの名無しさん [sage] 01/11/14 11:27 >>919 複数のソケットに対する、普通は受信を待つために、使うもの。 http://mevius.5ch.net/test/read.cgi/tech/970344582/920
921: デフォルトの名無しさん [sage] 01/11/14 14:33 >>920 ソケットに限らない http://mevius.5ch.net/test/read.cgi/tech/970344582/921
922: デフォルトの名無しさん [] 01/11/14 14:43 完了IOポートAPI使うんならselectは関係ないんじゃない? つうかselectを使わないための完了IOポートでしょ? http://mevius.5ch.net/test/read.cgi/tech/970344582/922
923: デフォルトの名無しさん [sage] 01/11/14 14:55 マルチスレッドがまだなかったころに非同期処理を実装するための 苦肉の策 http://mevius.5ch.net/test/read.cgi/tech/970344582/923
924: デフォルトの名無しさん [sage] 01/11/14 16:05 >>913 Solarisちがうかな? >>923 マルチスレッド使うときと使えないときで、非同期処理はどう違うのさ? http://mevius.5ch.net/test/read.cgi/tech/970344582/924
925: デフォルトの名無しさん [sage] 01/11/14 17:09 マルチスレッドあり → 受信専用スレッドを作って select で待ち マルチスレッドなし → メッセージループでメッセージ待ち http://mevius.5ch.net/test/read.cgi/tech/970344582/925
926: デフォルトの名無しさん [] 01/11/14 17:16 >925 つか、そのマルチスレッド有りは「非同期」やなく「同期」やとおもうんだが。 http://mevius.5ch.net/test/read.cgi/tech/970344582/926
927: デフォルトの名無しさん [] 01/11/14 23:40 >>926 dispatcherに専用threadがいるだけで、 その先はportにbindされた非同期methodをpoolされていたthreadに実行させる、 って実装を想定しているんじゃないかな? 実際、I/O完了ポートAPIだって、kernel/dll内threadがdispatchしているわけでしょう? >>920 file, socket, diviceなどの複数のstreamが、 readableか、writableか、例外が起きてないか調べます。 真であるstreamがあれば復帰して、bit maskが1になります。 acceptで受けるような接続要求も検知できます。(inetdで使っている) >>923 そんなことはない。 素朴にどんどんthreadを生成すると、SunOS 5の様に強力なthreadをsupportするOSでも bottle neckになるから、複数のstream待ちを、何本かのselect/dispatcherにまとめて、 別のthreadに管理させる、ってのは、highly multi-threadedなprogrammingの常套手段。 まあ、普通のprogrammerは、滅多にそういうsystem設計する機会ないと思うけど、 知らないし、bottle neckを調べられから、hardwareを増強させて逃げるdesignerも多い。 http://mevius.5ch.net/test/read.cgi/tech/970344582/927
928: デフォルトの名無しさん [sage] 01/11/15 00:32 >>927 横文字使いすぎでみっともない http://mevius.5ch.net/test/read.cgi/tech/970344582/928
929: 908 [sage] 01/11/15 01:23 非同期要求が完了したコールバックをAPI呼出したプライマリスレッドではなく、 プールしておいたいくつかのワーカスレッドに対して行うって事で良いのかな? これによって平行動作するスレッドの数を制限する事には賛成。 無制限にスレッド作りつづけるとWindowsならいづれブルースクリーンだ。 つまりこの実装を強力にサポートするI/O完了ポートがあるWindows最高(w http://mevius.5ch.net/test/read.cgi/tech/970344582/929
930: デフォルトの名無しさん [] 01/11/16 00:35 Winsock2でrecvfromでUDPデータを受けるプログラムを動かしているのですが、 およそ18Kバイト分のパケットを受信したあたりからデータが所々おかしくなって しまいます。虫食い状態です。recvfromで受けた直後でデータを見てみたのですが その時点で既におかしいってことは、あとはどこらへんを調べていったらいいんで しょうか?はまってます。(泣) (ちなみにLinuxで問題なく動いていたものをWinsock2(Windows)に移植 したものです。) http://mevius.5ch.net/test/read.cgi/tech/970344582/930
931: デフォルトの名無しさん [sage] 01/11/16 00:36 >>930 ちなみにrecvfromの受信バッファの大きさは十分大きくしたり毎回0リセットしてみたり 色々やってみましたが症状変わりませんでした。 http://mevius.5ch.net/test/read.cgi/tech/970344582/931
932: デフォルトの名無しさん [sage] 01/11/16 00:56 >>930 送信側はだいじょぶ? http://mevius.5ch.net/test/read.cgi/tech/970344582/932
933: デフォルトの名無しさん [sage] 01/11/16 01:16 >>932 同じサーバに対してLinuxからアクセスした場合は問題ないんです。(とほほ) VisualC++6.0なんですが、昔recvfromでSin_Zeroに誤ったデータを書いてしまう バグがあったようなのですが、パッチのSP2は既にあてているので環境は問題無さ気 なんですけどね。ここの皆さんはそういう経験は無いでしょうか?やっぱこんなの 俺だけかな(藁 http://mevius.5ch.net/test/read.cgi/tech/970344582/933
934: デフォルトの名無しさん [] 01/11/16 12:33 >930 単にUDPの制限(仕様)とかやなくて? >927 http://state-threads.sourceforge.net/docs/st.html つまり、こういうこと?(/.でみつけた。) http://mevius.5ch.net/test/read.cgi/tech/970344582/934
935: デフォルトの名無しさん [sage] 01/11/16 23:58 >>934 その後色々調べて見たところサーバからは正しいパケットが送信されている事が モニターツールにより分かりました。つまりクライアント側の問題であると…。 さらに、クライアント側のイーサーのインターフェースをモニタリングするとなんと UDPでなくIPパケットとしか認識されてませんでした。何故だぁ…(怒) IPパケットが山のように見えます。(藁 ちなみにTCP,ARPのレイヤーはちゃんと見えてます。また他のUDPを使うソフト で試しに通信してみるとUDPはちゃんと通りますのでUDPが通らないという事では ないみたいです。クライアントソフトの問題ということになるのかな…謎 http://mevius.5ch.net/test/read.cgi/tech/970344582/935
936: デフォルトの名無しさん [] 01/11/17 02:27 >>935 つーかよ、 > また他のUDPを使うソフトで試しに通信してみるとUDPはちゃんと通りま > すのでUDPが通らないという事ではないみたいです。 の時によ、 > さらに、クライアント側のイーサーのインターフェースをモニタリングするとなんと > UDPでなくIPパケットとしか認識されてませんでした。何故だぁ…(怒) すると、どうなるんだ? 「UDPパケット」と表示されるのか? 「IPパケット」と表示されるのか? どうせ、「他のUDPを使うソフト」でも「IPパケット」と表示されていて、 単に、UDPパケットだから、Winが破棄しちゃう事があるだけだろ。 そのプログラムにパケットの再送機構は含まれているわけ? なければ、たまには虫食いになるのが正しい動作。 http://mevius.5ch.net/test/read.cgi/tech/970344582/936
937: デフォルトの名無しさん [sage] 01/11/17 14:28 >>930 パケットが途中で失せたり、順序がごっちゃになったりしても UDPは関知しない(ので、対策は上位レイヤーでしろや)、 ちゅうUDPの仕様を理解した上で、UDPを利用してる? つーかさ、なんでUDPなわけ?TCPの方がいいと思うが >データが所々おかしくなって CRCでもつけて、おかしいところを再送するように書けや。 http://mevius.5ch.net/test/read.cgi/tech/970344582/937
938: デフォルトの名無しさん [sage] 01/11/17 21:02 >>936 >>937 状況がきちんと説明できてなかったのでちょっとあれなんですが、 ご指摘ごもっともです。たしかにTCPでやっちまえってのもそうなん ですが、今回の症状の原因が知りたくて。あとUDPの特性はベスト エフォートってことで分かって使ってます。モニターツールで見てると 受け側のマシンのイーサ?までは正しいパケットが正しい順番で来 ているのです。それをrecvfromでソケットから取り出した後データが おかしくなってる。なんだかVC++の環境やライブラリの問題?の ような気がしてきました。いずれにせよくだらん質問にレス頂いて感 謝しています。 http://mevius.5ch.net/test/read.cgi/tech/970344582/938
939: 938 [sage] 01/11/17 21:15 >>938 >なんだかVC++の環境やライブラリの問題 えっとソケットライブラリのバグパッチがちゃんと当たってない のかもという意味です。その変もちっと調べてみます。それでは。 http://mevius.5ch.net/test/read.cgi/tech/970344582/939
940: デフォルトの名無しさん [sage] 01/11/17 23:26 >>938 べつにイーサまで正しいパケットが来てて、 それがプロトコルスタックで破棄されてもUDPなら問題ではないと思いますが… >>937もそういうことを言ってるのだと… http://mevius.5ch.net/test/read.cgi/tech/970344582/940
941: デフォルトの奈々氏さん [sage] 01/11/19 01:42 ご存知の方、教えてください。 WinNT4.0でnetstatを実行してるんですが、TIME_WAIT状態になったソケットって 1000コまでしか表示されないようなんですが、何かの仕様でしょうか? #ちなみにESTABLISHED状態とかのソケットは1000以上でも表示される。 SnmpExtensionXXX()系のAPIを叩いてソケットの状態を表示するnetstatもどきを 作ってみたんですが、同じ結果になってしまいました。 http://mevius.5ch.net/test/read.cgi/tech/970344582/941
942: デフォルトの名無しさん [] 01/11/20 11:10 レス数が900を超えています。1000を超えると表示できなくなるよ。 http://mevius.5ch.net/test/read.cgi/tech/970344582/942
943: デフォルトの名無しさん [] 01/11/20 19:43 WndProc 内であるメッセージが来たら send するようなプログラムを作っています ここで、send の呼ばれる間隔が短すぎると、 送信するデータが 1 つのパケットにまとめられてしまうのですが、 これを避ける方法はないでしょうか? 具体的には、 「4 バイトデータのパケット送信 -> 4 バイトデータのパケット送信 -> 4 バイトデータのパケット送信」 となって欲しいところが 「12 バイトデータのパケット送信」 となってしまいます ブロッキングするようにすると、send の返り値にはちゃんと 4 が入るのですが、 パケットフィルタして確認すると、12 バイトなどにまとめられて送信されています Java では flush という関数がありましたが、 WinSock には内部バッファを明示的に送信するような手段はないのでしょうか どなたかご存知でしたら、ご教授よろしくお願いします http://mevius.5ch.net/test/read.cgi/tech/970344582/943
944: デフォルトの名無しさん [] 01/11/20 20:43 >>943 setsockopt(TCP_NODELAY) http://mevius.5ch.net/test/read.cgi/tech/970344582/944
945: デフォルトの名無しさん [sage] 01/11/20 20:48 でもストリームだと受け取る側から見たら変わらんのじゃないの? 4バイトだろうが12バイトにまとめられようが http://mevius.5ch.net/test/read.cgi/tech/970344582/945
946: 943 [sage] 01/11/20 21:08 >>944 おおおお!できました!ありがとうございます! 今日一日中悩んでたのに・・・、思いきって質問して良かったです お礼にお団子どうぞ! -○○○- >>945 たしかにその通りなんですが・・・ タイミングが重要だったので、バッファに溜められると困るのです http://mevius.5ch.net/test/read.cgi/tech/970344582/946
947: デフォルトの名無しさん [sage] 01/11/20 21:10 次スレ立てておきました。 ネットワークプログラミング相談室 Port2 http://pc.2ch.net/test/read.cgi/tech/1006258198/ http://mevius.5ch.net/test/read.cgi/tech/970344582/947
948: デフォルトの名無しさん [] 01/12/21 12:26 UDPプログラミングサンプル等が参照できるサイトを 教えていただきたいのですが。 http://mevius.5ch.net/test/read.cgi/tech/970344582/948
949: Disca ◆NAfP6znE [networksolutions@mail.goo.ne.jp] 01/12/23 01:23 >>948 http://www.ccad.sccs.chukyo-u.ac.jp/manualc/prgrm/dialogbase/media/network/ WSAStartupも知らなかったのに、見つけたYO。 すべてのログ見るのに疲れた(はぁ〜 http://mevius.5ch.net/test/read.cgi/tech/970344582/949
950: foovar [age] 02/01/07 17:06 すみませんが、どなたか教えてください。 select()を使わずに、ファイルディスクリプタの指すストリームが ファイルなのかソケットなのかを判断する方法って無いですか。 ストリームからデータを読み出して加工するルーチンがあって、 内部でファイルディスクリプタがファイルを指す場合とソケットの 場合で分けたいのです。 で、最初からselect()を意識した作りではないので、select()を用 いた仕様に作りかえるのがわずらわしいのです。 http://mevius.5ch.net/test/read.cgi/tech/970344582/950
951: デフォルトの名無しさん [sage] 02/01/07 20:27 getsockopt() http://mevius.5ch.net/test/read.cgi/tech/970344582/951
952: foovar [sage] 02/01/07 20:49 >>951 うひょー、有難うございます。 http://mevius.5ch.net/test/read.cgi/tech/970344582/952
953: 初心者 [] 02/01/08 20:37 一つのパケットを送るとACKが返ってくると思いますが、 そのACKが返ってきたときの時刻が知りたい場合、どの 関数の戻り値を知ればいいでしょうか? それとも他にいい方法があるでしょうか? http://mevius.5ch.net/test/read.cgi/tech/970344582/953
954: デフォルトの名無しさん [ sage] 02/01/08 21:17 recvした直後に、time()で取るとか。 ‥‥そういうことではなくて? http://mevius.5ch.net/test/read.cgi/tech/970344582/954
955: デフォルトの名無しさん [] 02/01/11 12:49 WinInetでmms://~のファイルを読むことはできますか? っていうか、mmsとか関係ないですか? http://mevius.5ch.net/test/read.cgi/tech/970344582/955
956: デフォルトの名無しさん [sage] 02/01/11 15:17 新しいスレに移りましょう ネットワークプログラミング相談室 Port2 http://pc.2ch.net/test/read.cgi/tech/1006258198/ http://mevius.5ch.net/test/read.cgi/tech/970344582/956
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.178s*