トップページ⇒tech
1001コメント317KB

ネットワークプログラミング相談室 Port5

レス数が1000を超えています。これ以上書き込みはできません。
0001UnknownNGNG
主にソケットに関しての質疑応答スレです。

Programming UNIX Socket FAQ (日本語訳)
http://www.kt.rim.or.jp/~ksk/sock-faq/indexj.html

Winsock Programmer's FAQ
http://tangentsoft.net/wskfaq/

過去スレ:
ネットワークプログラミング相談室
 http://pc.2ch.net/tech/kako/970/970344582.html
ネットワークプログラミング相談室 Port2
 http://pc.2ch.net/tech/kako/1006/10062/1006258198.html
ネットワークプログラミング相談室 Port3
 http://pc3.2ch.net/test/read.cgi/tech/1023359282/
ネットワークプログラミング相談室 Port4
 http://pc3.2ch.net/test/read.cgi/tech/1034236536/
0002UnknownNGNG
図書コーナー!

UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTI
http://www.amazon.co.jp/exec/obidos/ASIN/4894712059/ref=pd_bxgy_text_2/249-2677107-1089124
詳解TCP/IP〈Vol.1〉プロトコル
http://www.amazon.co.jp/exec/obidos/ASIN/4894713209/ref=pd_sim_dp_3/249-2677107-1089124
The Implementation (TCP/IP Illustrated, Volume 2)
http://www.amazon.co.jp/exec/obidos/ASIN/020163354X/ref=pd_sim_dp_4/249-2677107-1089124
Linuxソケットプログラミング―ネットワークプログラミングにおける実践技法
http://www.amazon.co.jp/exec/obidos/ASIN/4894714671/qid=1034258224/sr=1-4/ref=sr_1_2_4/249-2677107-1089124
0003ナナシNGNG
2ちゃんねるに書き込むで、サーバーに送る内容はこれでよろしいでしょうか?
HTTPでサーバーに接続します。

POST http://game2.2ch.net/test/bbs.cgi HTTP/1.1
Host: game2.2ch.net
Content-Type: application/x-www-form-urlencoded
Content-Length: %
Accept: text/*

"Cookie: submit=%s&bbs=%s&key=%s&time=%lu&MESSAGE=%s&FROM=%s&mail=%s",UrlEncode("書き込む"),"ghard","1037285423",ltime,UrlEncode("kakikomi"),UrlEncode("aaa"),UrlEncode("aaa")
0004デフォルトの名無しさんNGNG
IEとかの送信内容をtcpdumpすればいいのに。
0005デフォルトの名無しさんNGNG
>>3
荒しツール作成ご苦労さん
0006デフォルトの名無しさんNGNG
あきまへん。
0007ナナシNGNG
>>4
してますよ。
INETSPYで。

でも、サーバーに転送しても、返信がこないんですよ・・・。
サーバーには接続できていますし、送信もできていますが。

もちろん、私の送っているヘッダー&クッキーに問題があるのはわかってますが・・・。

詳しい方いませんか?
0008ナナシNGNG
>>5
失礼な・・・。
ネットワークの勉強に2ちゃんねるビューワーが良いと思っているだけです。

あと、パケットキャプチャーの内容で出たままを送っても駄目ですよね。

POST http://game2.2ch.net/test/bbs.cgi HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Referer: http://game2.2ch.net/ghard/index.html
Accept-Language: ja
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Q312461)
Host: game2.2ch.net
Content-Length: 376
Proxy-Connection: Keep-Alive
Pragma: no-cache
0009デフォルトの名無しさんNGNG
2ちゃん以外のサイトで試してみた?
0010デフォルトの名無しさんNGNG
>>3
ねえ、まだ 3 なんだから、ちょっと上見りゃ...

> 主にソケットに関しての質疑応答スレです。

って、書いてあるんだけど、見えない ?

さっさと、http://www.monazilla.org/ に行けよ。
0011デフォルトの名無しさんNGNG
>ネットワークの勉強に2ちゃんねるビューワーが良いと思っているだけです。

たしかに、2chの、とくに書き込みは規制がひどすぎて、ある意味勉強にナルナ。
まあ、勉強とかいいつつ、RFCも見ない香具師の云うことなど信用しないが。
0012ナナシNGNG
>>10
そのMONAZILLAには、HTTP転送に関する記述は無いですから。

まぁ、必死に勉強中です。
0013デフォルトの名無しさんNGNG
monazilla Part 3
http://pc3.2ch.net/test/read.cgi/tech/1012544484/
もあるのにね。
ここでの話題ははソケットのみ、では無いけど、特定サーバの話なら
どう考えてもそのサーバの話題を扱ってるスレに行った方が有益だと思う。
0014デフォルトの名無しさんNGNG
RFC1035によるとドメイン名のラベルは数字で始まっては
いけないようですが、実際には 2ch.net のように数字で
始まるドメイン名も登録されています。
どこかでRFCが改訂されたのでしょうか?
0015デフォルトの名無しさんNGNG
> > 主にソケットに関しての質疑応答スレです。
>
> って、書いてあるんだけど、見えない ?

にしては、スレタイがそぐわないと思う。
0016デフォルトの名無しさんNGNG

perlでメール送信するプログラムを書いています。
Net::SMTPを使用して、

$smtp = Net::SMTP->new('127.0.0.1');
$smtp->mail("info\@test.com");
$smtp->to("$To");
$smtp->data();
$smtp->datasend("Content-Transfer-Encoding: 7bit\n");
$smtp->datasend("Content-Type: text/plain; charset=\"iso-2022-jp\"\n");
$smtp->datasend("From:\"$Name\"\n");
$smtp->datasend("To:$To\n");
$smtp->datasend("Subject:$Sub\n");
$smtp->datasend("\n");
$smtp->datasend("$Value\n");
$smtp->dataend();
$smtp->quit;

このようにしているのですが、$Nameに"東西新聞"などと入れておくと、
メーラーのほうには
From: "東西新聞"@mail1.test.com
という風に差出人の名前の下にメールサーバのアドレスがついてしまいます。
これを消すにはどうしたらよいのでしょうか?
またReturn-Pathを変更したいと思い
$smtp->mail("info\@test.com");の
[email protected]の部分をいろいろ変えてみるのですが、
送れるときと送れない時があります。
これはどういった現象だと思われますでしょうか?
できたらここに自由にメールアドレスを設定できるようにしたいのです。
0017デフォルトの名無しさんNGNG
>>16
From 偽装した SPAM でも送りたいのですか?
0018デフォルトの名無しさんNGNG
        ▄██     ▀▄             █▄
  ▀█▄
  ▄▄▄████▀       █ 
▄ ▄███▄      █▄   
▀▄
   █▀  █  ▄▄   █▄██ 
█▀  ▀█   ▄   █ 
▄████▄▄
   █▄▄████▀      
█▀█▀    █   
██▄██▀▀    ▀██
   █▀▀ ▀▄       ▄██      
█    ▀▀ █       █▀
   █    █▄  █   ██   
▄████       ▀█   
▀██▀
   █▄▄█▀ █▄██  █ 
█   █   ██▄      █▄
  ███▀    ██▀    █   
▀███▀ ▀▄      ██
0019デフォルトの名無しさんNGNG
ウシですか?
0020デフォルトの名無しさんNGNG
>>1
http://www.kt.rim.or.jp/~ksk/wskfaq-ja/
Winsock Programmer's FAQ も日本語訳があるじゃん。
0021デフォルトの名無しさんNGNG
>>20
おお、比較的最近公開されたんだね。
読んだことなかったよ。ありがとう。
0022デフォルトの名無しさんNGNG
>>20
Thanks!
0023デフォルトの名無しさんNGNG
>16
そういうことです。
Fromを偽造して
メールは一括してこちらから代行送信しますが、
返信は各メールアドレスに返せるようにしたいのです
0024デフォルトの名無しさんNGNG
>>23
返信先を変えたいだけなら、Fromを偽造せんでもReply-Toでいいんじゃないの?
0025デフォルトの名無しさんNGNG
現在、勉強のためにLANを組んで通信ソフトを作っています。
Linuxにサーバーソフトを置いて、Winでクライアントを動かしていますが、
ときおり、サーバーマシン(Linux)でハードディスクへのアクセスが発生して、
数秒間通信がストップしてしまいます。(頻度は1〜2分に一回くらい)
これは原因は何が考えられるでしょうか?

サーバープログラムとクライアントプログラムを両方Winで動かして、
ローカルで通信をした場合は、この現象が起こらないので、プログラムの
バグではないと思います。

それとLinux板で下のページを教えてもらって、書いてある通りに設定を
したのですが、直りませんでした。
http://www.zdnet.co.jp/help/tips/linux/l0366.html
0026名無しさん@XEmacsNGNG
>>25
余分なdaemonやprogramは終了して試してみれ。singleで立ち上げたりさ。
正直、板違いだと思うので、続きはLinux版で。
# しかし1〜2分に一度数秒間とはひどいの〜。
0027デフォルトの名無しさんNGNG
>>26
アドバイスありがとうございます。
そうしてみます。

サーバーにpingを打ったり、送られてきたデータを返すだけの軽いサーバー
プログラムを作ったりしたときは、こういう現象は起こらないので、
最初はプログラムのせいかと思ったのですが、Winで動かすと、そういう
現象は起こらないし、なんだかよく分からない状況です。
0028デフォルトの名無しさんNGNG
自PCのIP取得って
レジストリから取得するって
マジなんですか?
0029デフォルトの名無しさんNGNG
>>28
http://support.microsoft.com/default.aspx?scid=kb;ja;171320
> Windows Sockets の gethostbyname API は、コンピュータに割り当てられた IP アドレスを取得するために使用できます。

検索したら、こう書いてあったよ。
0030デフォルトの名無しさんNGNG
○.plという実行ファイルを./○.plと実行するときに文字列をその実行ファイルに渡したいのですが、./○.pl"スペース"文字列で出来ると思ったんですがどのようにやるのが良いのでしょうか?
このようにするとプログラムの中の$STDINというところにその文字列が入るんだと言われたんです、どうもうまくいってないようです。
他の人に./○ < 文字列という形が標準入力だと言われたんですが、その方法では実行するとそのようなファイルやディレクトリはありませんとエラーが出てしまいます。
どのようにやるのがよいのでしょうか?
よろしくおねがいします。
003130NGNG
付け足しなのですが、実行コマンドと一緒に打った文字列を○.plのなかでprint <SOCK> $STDINとしてサーバー側に送りたいのですが。
宜しくお願いします。
0032デフォルトの名無しさんNGNG
>>30
$echo '文字列' > hoge
$○.pl < hoge

ってことか?
003330NGNG
>>32
ありがとうございます。
1かいの操作では出来ないのでしょうか?
ブラウザに表示するHTMLを書き出すPERLのプログラムから`./○.pl`として外部のプログラムを実行して、その実行するときに変数も一緒に渡したいのですが。
どのようにしたらよいのでしょうか?
0034デフォルトの名無しさんNGNG
>>30
激しくスレ違い
0035デフォルトの名無しさんNGNG
WindowsでDNSを解決するにはどのAPIを使えばいいですか?
0036デフォルトの名無しさんNGNG
> 1かいの操作では出来ないのでしょうか?

cat '文字列' | ○.pl

> ブラウザに表示するHTMLを書...

引き数でもなんでも使えばよかろう。

だいたいここでする話じゃない。
もう来るなYO!
0037デフォルトの名無しさんNGNG
>>35
>>29

別にWin専用じゃないけどな。
0038デフォルトの名無しさんNGNG
Win標準では、nslookup、ということになるな。

俺はdnsipとかをつかってるが。
0039デフォルトの名無しさんNGNG
nslookupってAPIだったのか
0040デフォルトの名無しさんNGNG
WINDOWSで、プログラムからマシンに設定されてるゲートウェイアドレスはどうやったらわかるんでし
ょうか?
0041デフォルトの名無しさんNGNG
(´-`).。oO(PC初心者板で聞けよ
0042デフォルトの名無しさんNGNG
>>40
プログラム中で標準入力から読み込む処理を入れて、
管理者に毎回入力してもらう。
0043名無しさん@XEmacsNGNG
冬休み始ったのかな…
0044デフォルトの名無しさんNGNG
TransmitFileの進捗状況を、だいたいでも取る方法ってありますか?
0045デフォルトの名無しさんNGNG
WindowsのIPHelperAPIについての質問です。

GetIfTableとか、そういったAPIを使えば
MIB-IIインターフェースの様々な情報を得ることが出来ますが、
その中で、特定のインターフェースを通じて送られた・受け取ったパケット数が
わかる模様です。

この情報を他のライブラリを使用して知るにはどうすれば出来ますか?
0046デフォルトの名無しさんNGNG
APIスレの人?
いずれにしろ、目的不明の質問だな
0047デフォルトの名無しさんNGNG
YAHOO!オークションについてなんですが、商品の詳細な残り時間(秒単位まで)
をjavaで取得することは可能なのでしょうか?よろしければ教えてください。
よろしくお願いします。
0048もうヤフオクの質問はお腹いっぱいNGNG
もうヤフオクの質問はお腹いっぱい
0049名無しさん@EmacsNGNG
Perlネットワークプログラミング 発売age
0050名無しさん@EmacsNGNG
>>49
書評キボンヌ
0051名無しさん@EmacsNGNG
(・∀・)ジサクジエンデシタ
0052デフォルトの名無しさんNGNG
age
0053デフォルトの名無しさんNGNG
文字列がIPかどうかチェックする関数、APIなどありますか?
IPとして妥当かを判定する。
○"192.168.1.1"
×"xyz.168.1.1",".192.168.1","aiueo"...

0054デフォルトの名無しさんNGNG
inet_addr
0055デフォルトの名無しさんNGNG
>>53
お前は2度とプログラム書くな。
0056デフォルトの名無しさんNGNG
>>53
"192.168.1"ってのはIPv4の正当なアドレスですが、何か?
0057デフォルトの名無しさんNGNG
正当かどうか知らんが
ふつー妥当じゃないだろ。
0058デフォルトの名無しさんNGNG
>>56
私もそう思ったが、よく見ると、妥当でない例のほうには
最初にピリオドが入っているぞ。
0059デフォルトの名無しさんNGNG
WinSock1.1でBSDなソケットライブラリを使う場合、
Windows98とXP/2kで挙動が変わったりしますか?
Win98ではなぜかselect内部で例外が発生してしまいます。
0060デフォルトの名無しさんNGNG
winsock1にselectあったっけ?

win98はwinsock2対応している筈。
できる限りwinsock2を使ったほうがいいと思う。
006159NGNG
>>60
BSD互換は1.1からだったと思います。
2.2にしてみましたが状況変わらずです。
0062デフォルトの名無しさんNGNG
初期化時のバージョン指定も2にしたかい?
0063デフォルトの名無しさんNGNG
IriaやIrvine,regetなど便利で高速なダウンロードツールってどうやって高速化しているのでしょうか?
高速なだけでなく、失敗したら再開しますね。
高速化と冗長化(?いい言葉浮かばなかった)の方法について教えて下さい。
またそれらのアルゴリズムはダウンロードのみに有効でしょうか?
アップロードにも同様でしょうか?
0064デフォルトの名無しさんNGNG
>>63
再開については、タイムアウトの条件を細かく設定しているだけ。

高速にダウンロードといっても、普通に作ってもいいんでないかな。
光回線でなければ差はでない気がする。

多数のコネクションを捌くサーバーはそれこそいろんな工夫があるけど。
0065デフォの名無しさんNGNG
http://www.netperf.org/にあるnetperfというネットワークベンチマークツールを
使ってるんですが、実行後に表示されるのUDPの送信パケット数が、実行前後で
ifconfigを使って差分をとった値とあきらかに違うんだけど、原因は何が
考えられるでしょうか。

ソースを見たんだけど送信パケット数messages_sentが送信処理のとこで
使われてて、以下の様にあるんだけど、Netperfに問題があるようには
思えなかった。カーネルで落としてるの?それとも別の理由?

while (!times_up) {
略
if ((len=send(data_socket,
send_ring->buffer_ptr,
send_size,
0)) != send_size) {
if ((len >= 0) || (errno == EINTR))
break;
if (errno == ENOBUFS) {
failed_sends++;
continue;
}
perror("dg_send: data send error");
exit(1);
}
messages_sent++;
略
send_ring = send_ring->next;
}

長くてスマソ
0066065NGNG
一応補足。
netperfは2台のホストで動作させるもので、受信側マシンで受信用サーバを
立ち上げといて、送信側でコマンドラインから実行するものなのね。

で、UDPの場合だとNetperfの実行結果には、送信側の送信数と受信側の受信数が
両方表示されるんだけど、その受信側の受信数は、
送信側マシン上で実行前後のifconfigでのTX Packetsの差分をとった値と
一致してまふ。
0067デフォルトの名無しさんNGNG
もしそのOSがLinuxだったら、Linuxカーネルがウンコだからというのが答。
BSDのドライバで言うところのOACTIVEに相当する処理が(まだ)ないのよねえ。
0068デフォルトの名無しさんNGNG
>>63 (&>>64)
Range指定してるんでしょ?
0069デフォルトの名無しさんNGNG
SMB氏はもう来ないの?
0070デフォルトの名無しさんNGNG
SMB=沢村
0071デフォルトの名無しさんNGNG
>>69
実装が終了したに -1500 SMB。
0072065NGNG
>>67
Thanks!
そのとおりOSはLinuxでし。書く情報少なすぎ<自分
ちなみに2台のPCの接続形態はFastEther対応のスイッチングHUBで、
パケットサイズは64です。

OACTIVEって何?って思ってググってみたら
http://mail-index.netbsd.org/current-users/1995/01/18/0010.html
とか見ると、カードのバッファが溢れたらOACTIVEってのをsend()の
返り値として返すってこと?

つことはLinuxカーネルでぼろぼろ落としててそれがどこにも
値として残らないってこと?それはあんまり鴨。
ちなみに65のソースのfailed_sendsは実行後0で、
ifconfigのエラー関係の統計は送信側も受信側も全部0でつ。
(errors:0 dropped:0 overruns:0 carrier:0)
007367NGNG
> カードのバッファが溢れたらOACTIVEってのをsend()の返り値として返すっ
> てこと?

なかなか鋭いな。実際には、OACTIVE っていうのはインターフェースの状態に
過ぎず、パケット送信処理が動作中だからさらに送信処理を駆動する必要がな
いってことを上位層に伝えているだけなんだけどね。

OACTIVE だからといって send() はすぐにエラーを返すわけじゃなくて、
setsockopt() の SO_SNDBUF で指定した送信量まではカーネルでバッファリン
グしてくれるから send() は成功するんだ。もし、それ以上送信しようとした
場合は、ノンブロッキング・モードなら send() は EAGAIN (EWOULDBLOCK) を
返す。あるいはブロッキング・モードなら、送信処理が進むまで、send() の
中でスリープするから、送信は(おそらく)成功する。

だから、Linux に OACTIVEに相当する処理がないっていう前の書き込みは、語
弊があったかな。正確には、UDP の場合、SO_SNDBUF によるカーネル内での流
量制御が行なわれず、溢れた分を捨てて知らんぷりするって言った方がよかっ
たな。

> つことはLinuxカーネルでぼろぼろ落としててそれがどこにも
> 値として残らないってこと?

少なくともアプリケーションの側からは、送信されずにカーネル内部で捨てら
れてしまっいることはさっぱり分からない。アプリケーションで送信したパケッ
ト数と、システム全体で送信した UDP パケットの総数の差をとれば、だいた
いどれくらい捨てられたか分からなくもないが、まあ、そんなことしてもあま
り意味ないしな。
0074デフォルトの名無しさんNGNG
>>65
単に他のアプリケーションがUDPを送受信しただけじゃないの?
そんな簡単にパケット捨てられてたまるかよ。
0075デフォルトの名無しさんNGNG
>>74
UDP は捨てられても不思議じゃない。
Windows はちょっと CPU 付加が高いと平気で捨てるし。
0076デフォルトの名無しさんNGNG
実際に捨てられるかどうかは置いておくとしても
UDPは確実に届く保証が無いことを前提にしてプログラムすべき
0077デフォルトの名無しさんNGNG
ドロップ率の話では?
0078デフォルトの名無しさんNGNG
>>65
なんか、数字が違うとか、言葉で説明されてもよくわからん。
実際の数字を見せれ。
多いのか少ないのかもよくわからんし。
0079デフォルトの名無しさんNGNG
>少なくともアプリケーションの側からは、送信されずにカーネル内部で捨てら
>れてしまっいることはさっぱり分からない。

ENOBUFSでわかるんちゃうの?
0080デフォルトの名無しさんNGNG
UDPは黙ってdropしてもいいことになってるから
ENOBUFS返すかどうかは実装依存なんでは・・・

つかENOBUFSってシステムリソースが不足したときにしか
見たことないや。freebsdだとmbufが枯渇したとか。
0081デフォルトの名無しさんNGNG
linuxだったら返すでしょ。たぶん、確認したこと無いけど。
udp.cのudp_sendmsgにそれらしい記述がある。

netperfでfailed_sendsがゼロであるにもかかわらず、数字が違うとは
よくわからん話やな。
他のアプリが送受信しただけだと思いたいけど。
0082デフォルトの名無しさんNGNG
Linux で、100BASE-T の NIC を使って UDP で netperf 実行してみ。
送信側は 500Mbps などという (100Mbps 以上の) 値が出るから。
line speed 以上のデータなんて当然送れるわけないから、これらは
みんなカーネルの中で黙って捨てられてるってことなのねん。
Linux 以外の UNIX だと、100Mbps を越える値にはならない。黙って
勝手に捨てるなんてことはしないから当たり前だが。

>>79,81
こういう場合、Linux では ENOBUFS なんて返さん。もし返すなら、
65のソースでmessages_sentが加算されることなんてない筈だろ。
ちゃんとソース読め。
>>81
その udp_sendmsg の ENOBUFS 返す処理は、このケースじゃなくて、
カーネルの中でリソースが枯渇した時じゃないのか?

つーか、Linux 使ってるヤシにとって、これくらい常識だと思ってたん
だけど、そうじゃないのか? ネットワーク・ベンチマークしてみればすぐ
分かる話なんだが、おまえら性能評価ってやりませんか、そうですか。
0083デフォルトの名無しさんNGNG
> おまえら性能評価ってやりませんか、そうですか。

ハァ?ここは2ちゃんねるですよ?
馬鹿は休み休みにおながいします。あ、学生はもう休みですが。
0084デフォルトの名無しさんNGNG
>>82
お前のソースの読み方が間違ってるw
0085デフォルトの名無しさんNGNG
>>83
学生==馬鹿ってこと?
0086デフォルトの名無しさんNGNG
>>82
もしかして、ローカルに接続してないか?w
うち、10MのNICだけど、9.4mってでたぞ。ちゃんと。2つの端末間で。
0087デフォルトの名無しさんNGNG
|-`).。oO(利口な学生なんて見たことないな)
0088デフォルトの名無しさんNGNG
>>87
人口少ないけど、居るには居るよ。
ただし、彼らはここに来ない。
0089デフォルトの名無しさんNGNG
>>84
65のソースを、インデントつきで再引用してあげよう。

01:while (!times_up) {
02:    if ((len = send(data_socket, send_ring->buffer_ptr, send_size, 0))
03:      != send_size) {
04:        if ((len >= 0) || (errno == EINTR))
05:            break;
06:        if (errno == ENOBUFS) {
07:            failed_sends++;
08:            continue;
09:        }
10:        perror("dg_send: data send error");
11:        exit(1);
12:    }
13:    messages_sent++;
14:    略
15:    send_ring = send_ring->next;
16:}

このソースで、send()がENOBUFSエラーで終る場合に、messages_sentが
増えると主張するわけですね。
おそれいりました。とりあえず、8行めのcontinueから、どうやって
13行目に飛ぶのか説明しる。

>>86
netperfの標準スクリプトを一式走らせているので、間違ってもそれはない
(TCPでは、納得のいく値が出ている)。
0090デフォルトの名無しさんNGNG
>>89
ご苦労さんw

>send()がENOBUFSエラーで終る場合に、messages_sentが
>増えると主張するわけですね。
誰もそんなこと言ってません。

>Linux では ENOBUFS なんて返さん。
ソース見ただけで、これはわからんだろ?
冷静に考えろよw

こういう場合とか、このケースとかどういう場合、ケースなのよ?
そして、netperfの結果を教えて欲しいわ。正確な奴。
0091デフォルトの名無しさんNGNG
うわ。ごめん、160Mでたw
もう、よくわからんわ
0092デフォルトの名無しさんNGNG
>>89-90
典型的Linux厨だなお前ら。
自分の知識が否定された程度で本気で切れるな。

お前らごときの知識・スキルが社会で役に立つことなんてねえ…
0093デフォルトの名無しさんNGNG
>>92
横からしゃしゃり出てきて、お説教ですか?
ご苦労様です。
0094デフォルトの名無しさんNGNG
このスレの奴ら、性格暗い・・・
0095デフォルトの名無しさんNGNG
>>88 == 真実
0096デフォルトの名無しさんNGNG
>>94
ネットワーク系はみんなそうだよ
0097デフォルトの名無しさんNGNG
質問です。ルータ越えのブロードキャストってどうやったら出来ますか。

255.255.255.255だとlimited broadcastで同一ネット内ですよね。
ルータにでもお願いするのでしょうか。
0098デフォルトの名無しさんNGNG
>>97
(゚Д゚)ハァ?
そこまで知ってて特定ネットワークのブロードキャストアドレスというのは思いつかんのか?
directed broadcastで調べてみ。
009997NGNG
>>98
direct broadcastって
別ネットのネットワークアドレス指定 + ... + .255
でしか?

だと、ブロードキャストしてくれないみたいです。ルータの仕様かも。
フルでIP指定すると届くネットなんですけど。
0100デフォルトの名無しさんNGNG
> >Linux では ENOBUFS なんて返さん。
> ソース見ただけで、これはわからんだろ?

ソースと、72の結果(failed_sendsが0)を見比べれば、わかります。

> そして、netperfの結果を教えて欲しいわ。正確な奴。

自分の手元で試してみることをお勧めするけど、まあいいや、
以下は netperf の udp_stream_script の結果。

./netperf -l 60 -H 192.168.0.4 -i 10,2 -I 99,10 -t UDP_STREAM -- -m 1024 -s 32768 -S 32768
UDP UNIDIRECTIONAL SEND TEST to 192.168.0.4 : +/-5.0% @ 99% conf.
Socket Message Elapsed Messages
Size Size Time Okay Errors Throughput
bytes bytes secs # # 10^6bits/sec

131070 1024 59.99 4088743 0 558.32
131070 59.99 683564 93.34

この結果が示してるのは、100BASE-T のネットークに対して 1 度の
エラーもなく 558.32Mbps で送信が成功していることと、受信側では
そのうちの 93.34Mbps 分のパケットを受けとってるってことですね。
ちなみにこれは、この2ホストのみからなるprivateなLANで実験した
結果なので、コリジョンとかそういう問題はありえません。
すなわち送信側のLinuxカーネルは、少なくとも 458.32Mbps、おそらく
464.98Mbps 分のデータを、エラーも示さず、ネットワークに送出する
こともなく握り潰してるってことになりますね。

65だけじゃなくて、86=91のところでも同様な結果になったみたいね。
0101デフォルトの名無しさんNGNG
>>99

> 別ネットのネットワークアドレス指定 + ... + .255
> でしか?

255とはかぎらないが。
ホストアドレスがオール1。

> だと、ブロードキャストしてくれないみたいです。ルータの仕様かも。
> フルでIP指定すると届くネットなんですけど。

どっちかつーと普通蹴るだろ。smurf攻撃対策だしな。
必要ならルータの設定汁。
010297NGNG
>どっちかつーと普通蹴るだろ。smurf攻撃対策だしな。

やっぱりそうですか。別ネットにはbroadcastしないことにします。
0103デフォルトの名無しさんNGNG
>>100
>ソースと、72の結果(failed_sendsが0)を見比べれば、わかります。

本当にfailed_sendsがゼロだったのでは?
上のスレで、数字が違うとか言ってるというだけで、異様に帯域が広いとか、
そんなこといってないし。パケット数が違うと言ってただけだし。
他のアプリがUDP使ってるかもしれないことを考慮に入れると、
断定はできませんよね。
0104デフォルトの名無しさんNGNG
> 本当にfailed_sendsがゼロだったのでは?
カーネルがぼろぼろ落しているわけではなく、send()は全て
成功して確かに全てのパケットが送出されていたが、
netperfと関係ない別のアプリがUDPパケットを送信していた
から一致しない... という推測も可能だって言ってますか?

でも66を読んだ時点で、その推測は誤りだと気づく筈。
66では、ifconfig の TX Packets の差分と、netperf
の受信側の値が一致していると言っていますからね。
つまり、66を読めば、
● send()が成功を返した回数と、実際にNICから送信された
 パケット数(==受信側netperfが受信できたパケット数)が
 一致していない
● これは別のアプリのせいではない。
 別アプリによるUDPパケット送出はゼロで、TX Packets の差分
は全てnetperfの送信によるもの
だというところまでは判る筈。
そしてさらに72まで読めば、
● send()がENOBUFSのようなエラーを返しているわけでもない
● Ethernetレベルでの送信エラーも生じてない
ということも確認可能。
俺には、65,66,72の結果だけで、Linuxカーネルに問題があると
いう結論が導き出せると思うんだが、もし問題ないという推論が
可能ならば、どういう論理でそれが可能になるかを教えて欲しい。

> 異様に帯域が広いとか、そんなこといってないし。
82で、異常に大きなバンド幅が出るって言ってますけど...
先入観が邪魔して、66をちゃんと読めてなかったってことかな。
まあ、俺だって同じようなミスを犯すことは、ままあるかもナー。
0105デフォルトの名無しさんNGNG
>>104
66の文はよんでたが、netperfを勘違いしてた。
受信側の受信すうってのは、実験相手側の受信数だったんか。
てっきり、自分に送られてきたパケットのことだと思ってたわ。
お互いにパケット送信してはかるみたいな実験だと思ってた。
2つの端末で同じ実験してるんだから、ifconfigで差分取った値と同じだろうなぁ
と…。
いま、netperf落として確認しましたw。

わざわざ解説させてすんまそん。

FreeBSDとかだと、こんなことは起こらないのか?
放っておいても別に関係ない問題なの?
まだネットワークプログラミング始めたばかりなので、よくわからんが、
UDPでも一応、ちゃんとネットワークに送出したかしないかくらいは、教えて欲しい
んじゃないのか?やっぱり。
0106デフォルトの名無しさんNGNG
> FreeBSDとかだと、こんなことは起こらないのか?

FreeBSD に限らず、普通のUNIXでは73にあるような仕組みでスリープ
して待つので、こういう現象は起きない筈。

> 放っておいても別に関係ない問題なの?

Internet で現在広く使われているプロトコルで、1対1通信をしている
限りなら、この問題の影響を受けることは、普通ないと思う。だから
こういう実装のままになっているんだと思うけど、大量のUDPパケット
を送信するような状況、例えばUDPを使うプロトコルの大規模なサーバー
を、Linuxマシンで構成するような場合、この問題のおかげでパケット
損失率が増えて、性能上の問題が起きる可能性があると思う。

> UDPでも一応、ちゃんとネットワークに送出したかしないかくらいは、
> 教えて欲しいんじゃないのか?やっぱり。

うん。そう思うよ。
0107名無しさん@XEmacsNGNG
正直、ベンチマークか、閉じた環境(switchに2台だけで特殊なUDPアプリなど)
でしか問題にならないんじゃないかね?
0108デフォルトの名無しさんNGNG
影響があると断言できるのは、確かにそういう場合だと思う。

でも、サーバー1対クライアント多数で通信している場合、
たまたま多数のクライアントへ短い時間に集中して返答を
返すようなことが起きると、パケット損失が大量に出る
ような気がしない?

勝手に捨てたりせずにスリープするような実装なら、
そういう場合もそれほど損失は出ない筈。

再送などの機構によって、どちらの場合でも最終的に通信が
できることには変わりないけど、効率はだいぶ違う可能性が
あるんじゃないか。
0109メモNGNG
http://jbpe.tripod.com/rfcj/rfc1036.j.sjis.txt
http://www.goto.info.kanagawa-u.ac.jp/~horiyuki/rfc/rfc1036-j.euc
0110デフォルトの名無しさんNGNG
>>107
高bitrateのストリーム配信とかやる時はまずそうだけど、あんまり
やらんかな。
0111名無しさん@XEmacsNGNG
>>110
レートが安定する、可能な限り帯域を稼ぎたい必要があれば、
・UDPは使わない。
・UDP使ってても帯域制御の機構を上位レイヤーに持つ。
でしょ? RTP/RTCP, TCP, RSVP, その他。
0112デフォルトの名無しさんNGNG
負荷の非常に高いDNSサーバーでも、ヤバいような気が。
0113名無しさん@XEmacsNGNG
ROOT-SERVERS.NETはチョト考えた。
実際どうなんだろう?
0114デフォルトの名無しさんNGNG
>>111
??
TCPなんか使ってたら転送レートの予測は無茶だと思うんだが?
0115デフォルトの名無しさんNGNG
>>114
細かいことは良いじゃないか。UDPの上位レイヤでTCP使ったって良いじゃないか。
0116111NGNG
>>115
> UDPの上位レイヤでTCP使ったって良いじゃないか。

いや、流石にそれは(w

>>114
転送レートの予測をしたい時にTCPを使え、とは書いてません。
んじゃ。
0117デフォルトの名無しさんNGNG
>>114
なぜ?
0118デフォルトの名無しさんNGNG
何故なんだぁぁぁぁぁっ!!
0119デフォルトの名無しさんNGNG
Windowsでサーバプログラム作ってるんですが
acceptって、どこら辺に書けば良いのですか?
listenまでの手順はWN_CREATEの時に行っているのですが
acceptをどこに置けば良いか悩んでます。
0120デフォルトの名無しさんNGNG
>>119
たいていはコンソールアプリで作ると思うんだが
0121デフォルトの名無しさんNGNG
>>120
質問に答えろよ、デコ助野郎が。
0122デフォルトの名無しさんNGNG
じじいはドリフでも見てろ
0123デフォルトの名無しさんNGNG
コンソールで動くものを作ったのちにGUIを(必要あれば)実装する。
最近の若いもんは、みたいなこと思っちゃうな。
ドリフ知ってるアンタも。。。

アンタも好きねぇ〜(意味なし。つ、つい)
0124デフォルトの名無しさんNGNG
>>121
そうか。これじゃ気を障ったか。

アプリがどのタイミングで接続を受け取りたいか考えて、
メッセージループの中でも別スレッドでも、ここだと思うとこに置けや。

自分のこの場合だとメッセージループに該当するか。
0125119NGNG
>>120
やはり、GUIだとログ見たりするのが楽ですから。

>>123
コンソールで動くものを作るのは簡単だったんですけど
イベントドリブンだと、どこに置いて良いか分からないんです。

>>124
メッセージループって、WinMainの中ですか?
あそこに書くのは不味いような・・・。
やはりWM_CREATEが来た時に、accept用のスレッド作れば良いのかな。
でも、複数の接続要求が来た場合、またそこからread用の別スレッド作って
平気なんですかね。難しい。
あ、ちなみに>>121は私ではありませんので。
0126デフォルトの名無しさんNGNG
平気ですし、普通です。
0127デフォルトの名無しさんNGNG
つーかGUIならWSAAsyncSelect使えばメッセージでイベント
拾えるでそ?
まぁ別スレッド起こすのでもいいけど。
0128デフォルトの名無しさんNGNG
>>125
今気づいたけど、メッセージループに書くとメッセージが飛んできたときは、
処理がそっちに流れるからacceptを実行する間隔が一定しないという問題があったね。
だからこそサーバプロセスはコンソールで、管理ツールはGUIで別プログラムとして作ったりしてたが・・・

スレッドを大量につくるのも1つの方法として普通にあります。
0129デフォルトの名無しさんNGNG
>>125
124の実装前提をかいてなかったね、すまん。

ソケットはノンブロック、メッセージループはPeekMessage(であってたっけ?)でメッセージ非到着の時はacceptを常に実行。
接続がきたら処理用のスレッドを走らせてそっちで処理、WinMainは直ちにacceptを続行する。
スレッドは処理が終わって切断したら終了して廃棄。

もちろん127みたいにイベントスタイルで組みたいのであれば124、このの遣り方は合わないよ。
0130デフォルトの名無しさんNGNG
Winsockのサンプルプログラムではソケットのバージョンに1.1を使っている物が
多いですが、敢えて1.1を使う理由は古いOSでも使えるようにするためですか?
2kやXPで使うことを前提のプログラムならもっと新しいバージョンを使うべき?
0131デフォルトの名無しさんNGNG
>>130
使うべきというかどっちでもいい。
Winsock2.0が標準で入ってる環境のみをターゲットとしているなら
Winsock2実装でいいんじゃねーの?
・・・で、君は1.1と2.0の違いは分かってるの?
0132デフォルトの名無しさんNGNG
シビアなサーバアプリでもなければ1.1で十分なような
0133デフォルトの名無しさんNGNG
おめーら、あけましておめでとうございます。
0134デフォルトの名無しさんNGNG
>>131
130ではないけれど、Winsock2.0と1.1の違いって何ですか?
0135デフォルトの名無しさんNGNG
>>134
まずは今自分が知っている範囲内で1.1と2.0の違いを述べよ。
0136デフォルトの名無しさんNGNG
Linux上でCでsend関数使ってUDPの通信させようとしてんだけど、
send関数を実行して処理結果が戻ってくるまでの時間って
宛先がlocalhostの場合と他ノードの場合とでは違うのかね?

パケットを連続送信させようとしてるんだけどさ、
パケット間隔ってこの場合どう決まるのかなと思って。
0137デフォルトの名無しさんNGNG
>>136
ストップウォッチ・・・
0138デフォルトの名無しさんNGNG
>>136
知る限りでは変わらなかったよ
0139 NGNG
これあってますか?
Win系でたとえばTCPとUDPのソケットを両方備えたプログラムって
TCPは
 ソケット作って→バインドして→ソケットをスレッドにして
 recvでまつ、セッションが完了したら終わり
 ほんでまた、すれっど 作る recvでまつ
UDPは
 ソケット作って→バインドして
 recvfromでまつ、
 プログラムが終了するまでとにかくrecvfromをまわし続ける
0140デフォルトの名無しさんNGNG
win系だろうとunix系だろうと基本は同じでは。
スレッド作るかどうかはデザインや制約次第だけど。
0141デフォルトの名無しさんNGNG
>>139
非同期なAPI使え。
0142デフォルトの名無しさんNGNG
>>139
TCPだと
WSAStartup()
socket()
bind()
listen()
accept()
recv()
[ send() ]
shutdown()
closesocket()
WSACleanup()
ですね。
0143139NGNG
>>140
WINDOWSではfork()が弱いと聞きました
 まだ実験してないですがマルチプロセスがWINでどうよわいのか、、

>>141
 >非同期なAPI使え。
 調べてみます、ソケット関数以外ですね、、、

>>142
 TCPの場合listen()とaccept()が不要ということも聞きました
 実際なしでも動いています。1セッションのみ
 TCPで複数のセッションを管理するPGはつくったことないですが
 ほんとにいらないのですか?
0144デフォルトの名無しさんNGNG
>TCPの場合listen()とaccept()が不要ということも聞きました
UDPの間違いではないでしょうか?
あるいはクライアント側とか。
ちょっと聞いたことありません。
もっともWinsockは詳しくありませんが。
0145139NGNG
>>144
訂正します
TCPの場合 → ×
TCPでもUDPでもです
0146デフォルトの名無しさんNGNG
WSAAsyncSelect()を使ってもlisten()とaccept()は必要だった
と思います。
どんな環境で実行されているのか

それとスレ違いかも知れませんが、
>Windows XP のスレッド生成は、Windows 2000 よりも改善
>されましたが、それでもLinuxの60%にすぎません。
>また、Windows XP のプロセス生成はWindows 2000 よりも
>格段に遅く、Windows 2000 のプロセス生成はLinux より
>も遅いものとなっています。
だそうです。
0147デフォルトの名無しさんNGNG
詳解TCP/IP vol2買った人いますか?
0148139NGNG
>>146
WindowsXP ProとVC++でws2_32.libを使用しています
>WSAAsyncSelect()を使っても
いまそれでつまってるんです
非ブロック関数を使用したら固まらないみたいで、、
GUI環境でサーバスタートをボタンにしたら処理が帰ってこない
のです。Borlandだとsocket()関数のパラメタが異なるので
悩んでいます。BorlandとMicrosoftのws2_32.libは仕様が異なる
のだろうか_?

UNIXはライブラリやAPIが素直らしいのではやくやってみたいです^^;

0149デフォルトの名無しさんNGNG
> UNIXはライブラリやAPIが素直らしい

そうでもないよ...
0150デフォルトの名無しさんNGNG
>悩んでいます。BorlandとMicrosoftのws2_32.libは仕様が異なる
使用されている環境ではそれはないと思います。

話がよく見えないのですが、サーバプログラムなのでしょうか?
ひとまずlisten()とaccept()を使ってみた方が良いとおもいます。
WSAAsyncSelectを使っている様なので
socket->WSAAsyncSelect(FD_ACCEPTを忘れずに)->bind->listen
で、
FD_ACCEPTのハンドラでrecv前にacceptしてみれば良いかと。
0151136NGNG
実はさ、このスレの最初の方でも出てきたnetperfを使ってたんだけど、
UDPってフロー制御していないはずなのに、netperfのUDPは
localhost宛てと他ノード宛てで送信レートが違ったんだよ。
で、ソース見てみたら時間がくるまでsend繰り返しているだけ
だったからsendの処理が終わるまでの時間が違う?と思ったんだけど・・・。

どないでっしゃろ?
0152デフォルトの名無しさんNGNG
>>136
どれぐらい違ったのですか?
興味ありますね。
0153デフォルトの名無しさんNGNG
ARPキャッシュのリフレッシュとかローカルノードかそうでないか
影響うけるんじゃないかな?

0154151=136NGNG
>>153
うーん、ARPキャッシュにしちゃ、差がありすぎる気がするんだよねえ。
以下の通り。

>>152
試しに以下のコマンドでやってみますた。
netperf -H localhost -t UDP_STREAM -- -m 1460
(または他ノード)

Windows上でlocalhost宛:送 249.90Mbps、受 249.90Mbps
Linux端末宛:送 8.81Mbps、受 8.81Mbps

Linux上でlocalhost宛 :送 3611.88Mbps、受 2040.15Mbps
    Windows端末宛:送 9.60Mbps、受 9.60Mbps

※1 Windows端末とLinux端末の間は10Base-Tです。たぶん。
※2 2台の端末間で伝送レートが違うのはソケットサイズに依存してる為です。

WindowsにしろLinuxにしろ、
localhost宛は何故か送信レート自体が速いです。。
なのに他ノード宛だと受信レート(=実際の伝送レート)くらいまで
送信レートが小さくなっている。
ナゼダ-?
0155デフォルトの名無しさんNGNG
NICから外に出ないだけだろ
0156デフォルトの名無しさんNGNG
>>154
localhostってlocal node上に存在する他のhostのことでは
無かったのですネ
ハズカシイィ
0157デフォルトの名無しさんNGNG
そもそも node ってのは...
0158デフォルトの名無しさんNGNG
内の内
0159デフォルトの名無しさんNGNG
2つのPC間(Linux,Win2k)でファイル転送を行うperlのプログラムを書きたいのですが、ftpやrcpを使わずに出来ないでしょうか?
0160デフォルトの名無しさんNGNG
tcpのストリームでデータを垂れ流せ
0161デフォルトの名無しさんNGNG
UDPで一方的に投げつけろ
0162デフォルトの名無しさんNGNG
SMTPで送りつけろ
0163デフォルトの名無しさんNGNG
httpで(ry
0164159NGNG
>>163
ネットワークプログラミングが始めてなのですが、ファイル転送
の際にHTTPを利用してメタデータ(ユーザー名、プロジェクト名
、ファイル名、更新状況など)
のやりとりも行なうことは出来ますか?

このスレの過去ログを拝見したところ、以前にも書き込みがあった質問ですが
アプリケーションプロトコルについて堀下げて教えてもらえないでしょうか?
0165!163NGNG
>>164
やりたいことが今一分からんが、
HTTPでやるならマルチパートなデータをPOSTすればいいんでない?

>アプリケーションプロトコルについて堀下げて教えてもらえないでしょうか?
RFCが良い。主要なものは和訳もあるよ。
0166デフォルトの名無しさんNGNG
>>165
RFCの和訳はコチラで合ってますか?
http://rfc-jp.nic.ad.jp/rfc-jp-index.html
HTTPの和訳ないようですが...
0167164 NGNG
>やりたいことが今一分からんが、
アップロード:サーバーのどこのディレクトリに保存するか?
ダウンロード:どのファイルをクライアントに保存させるか?
という事をクライアント側で考がえる事なく、サーバー側で自動で判別させたいのです。オペミスと作業量の低減を 考がえています。
0168163NGNG
160-162の流れで半分冗談のつもりで書いたんだが…
ようするに中身を自分で規定すれば何に載せようが
かまわないじゃんってこった

それだけじゃあんまりなんでほれRFC 2616ja
http://www.studyinghttp.net/rfc_ja/2616/rfc2616_ja.html
0169デフォルトの名無しさんNGNG
>>167
適当なヘッダー作って、それを参照したら?
0170デフォルトの名無しさんNGNG
HTTPに載せるならWebDAVという手もあるな
159の要求をすべて満たすかどうかは知らんが
0171デフォルトの名無しさんNGNG
それぞれ別のFW内にあるPC同士でTCP/IP通信を行うには
どうすればいいですか?
ネットゲームなどでよくある、ロビーサーバ的なものはありません。
FWの設定を変更して、ポートを空けることはできます。
0172デフォルトの名無しさんNGNG
>>171
ポート開けられるなら何の問題があるのかと、小1時間・・・
0173デフォルトの名無しさんNGNG
NATがあるんでないの。
0174デフォルトの名無しさんNGNG
なっとう
0175デフォルトの名無しさんNGNG
お前ら、UDPの通信でsendtoでなくsendで送信を行うことはありますか?
それはどのような場合ですか?
教えてたもれ。
0176デフォルトの名無しさんNGNG
>>175
connectする時
0177デフォルトの名無しさんNGNG
便乗だけど、FW内のマシンのwindows共有にアクセスしたい場合、
ポートはどこを空ければいいの?
0178デフォルトの名無しさんNGNG
133〜135
0179177NGNG
>>178
それって何のポート??
0180初心者NGNG
javaで、MulticastSocketを使ったプログラムを
windows上で使うとエラーになります。
(BindException)
ちなみに、Unix上だとちゃんとうごいたんですが、、、
どうしてですか?
0181デフォルトの名無しさんNGNG
>>180
そのBindExceptionの付加情報として何かメッセージ出てんじゃないの?
0182デフォルトの名無しさんNGNG
$ java MulticastChat
java.net.BindException: Cannot assign requested address: Cannot bind
at java.net.PlainDatagramSocketImpl.bind(Native Method)
at java.net.DatagramSocket.bind(DatagramSocket.java:331)
at java.net.MulticastSocket.<init>(MulticastSocket.java:147)
at MulticastChat.<init>(MulticastChat.java:28)
at MulticastChat.main(MulticastChat.java:66)
これでした。
0183デフォルトの名無しさんNGNG
で、アドレス何にしてんの?
0184IP記録実験NGNG
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/

1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。

27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?

38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。

73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0185デフォルトの名無しさんNGNG
まあ記録されてるとは言っても、ののたんのおまんこ裂きたいよね
0186デフォルトの名無しさんNGNG


パート2まだ〜?

0187デフォルトの名無しさんNGNG
2ちゃんねる が衰退していく

あるネット関連会社の社長は、
「いずれにしても2ちゃんねるは資金が底をつけば終わり。
あまり知られていないことだが、2ちゃんねる内部関係者によると今、
大手通信会社系が調査費名目で資金提供している。
だが、それが止まれば続けてはいけないだろう」
と証言する。
2ちゃんねるが判決によって力を失った場合、
資金提供の打ち切りも予想される。

http://ascii24.com/news/reading/causebooks/2002/07/01/636911-000.html
0188デフォルトの名無しさんNGNG
さぁて、どうなることやら
0189デフォルトの名無しさんNGNG
■「ある発言が名誉毀損かどうかを管理人では判断できない。
  法廷で判断されてからでもいいではないか」
今回、次のような発言は動物病院にとっては「社会通念上、名誉毀損と容易に推測できるはず」
とされています。
ブラックリスト、過剰診療,誤診,詐欺,知ったかぶり、えげつない病院、ヤブ医者、
精神異常、精神病院に通っている、動物実験はやめて下さい、テンパー、責任感のかけらも無い、
不潔、氏ね、被害者友の会、腐敗臭、ホント酷い所だ、ずる賢い、臭い
  
0190デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 138720人 発行日:2003/1/9

年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。

そんなわけで、年末に予告したIP記録ですが実験を開始しています。

「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0191デフォルトの名無しさんNGNG
qb
削除整理、削除要請、削除議論、批判要望

live2
ニュース速報

tmp
ニュース極東、バカニュース、ちくり裏事情、違反の潰し方、薬・違法
少年犯罪、政治思想、ゴーマニズム、ペット苦手、download
ロビー、なんでもあり、厨房、最悪、学歴、人権問題
0192デフォルトの名無しさんNGNG
>>551
「コテハン戦隊ラウンジャー」に鑑定依頼してきますた
0193デフォルトの名無しさんNGNG
>>148
へぇー、結構多いね
0194デフォルトの名無しさんNGNG
IP取ってる板

>>148 + >>15(>>150)
0195デフォルトの名無しさんNGNG
ttp://www.cs.wustl.edu/~schmidt/ACE.html

これ使ったことあるヤシいるか?
感想キボンヌ
0196初心者NGNG
>>183
"235.159.23.21"
0197デフォルトの名無しさんNGNG
なんかスッゲーすっきりしたよ、ありがとう
0198デフォルトの名無しさんNGNG
■基礎知識■

■「言論の自由はどうなった!」
言論の自由は、名誉毀損には適用されません。
批評・批判といった言論だと証明するのは、発言者の責任です。

■「最高裁があるじゃないか! 高裁差し戻しだ! 反訴しろ!」
最高裁は憲法に絡まない限り、受理してもらえません。今回の件では不受理はほぼ確定でしょう。
高裁差し戻しの可能性はひじょうに低いのはひろゆきも承知で、だから、最高裁にもっていこうとしています。
反訴についても、誰を訴えるかという特定が困難。これまた不受理。
0199デフォルトの名無しさんNGNG
Yahoo!トピックス

2ちゃんねるがアクセスログ記録を始めましたが、あなたの考えは?
2003年1月9日より 計180票

匿名性に絡む問題なので反対 32% 58 票
サイトのためになるから賛成 50% 90 票
利用しないから関係ない 8% 15 票
2ちゃんねるってなに? 3% 6 票
アクセスログってなに? 6%

0200デフォルトの名無しさんNGNG

あげる方だけどあげたくないので行かない方
0201デフォルトの名無しさんNGNG

君は結構面白い発言をするね。
日本語ワカリマスカ?


西の所へ逝け
0202デフォルトの名無しさんNGNG
ソケットをリード/ライトする時、標準入出力系の関数使ってる人いる?
もしいたら使っていて困ったことがあった場合とか知りたいんだけど教えてくれない?
0203デフォルトの名無しさんNGNG
inetd 起動するプログラムを調べてみたら?
0204デフォルトの名無しさんNGNG
UNIX流の、「sockhandleに直接write、readを発行するやりかた」、やないの?
0205デフォルトの名無しさんNGNG
その、IPというものを僕に売ってください!!!!
0206デフォルトの名無しさんNGNG
ヤフーが取り上げますた。
http://dailynews.yahoo.co.jp/fc/computer/2channel/
0207デフォルトの名無しさんNGNG
俺は晒す自身がないな。。。
0208デフォルトの名無しさんNGNG
ところで掲示板のS/N比が上がるように、との理由付けが成されているが、
IP記録されると明言されているにも関わらず糞スレは毎日嫌と言うほど立つよね。。
0209デフォルトの名無しさんNGNG
我ながら好き勝手にほざいてしまいますた・・(汗
もし実現しても回線細そうですしね。。。

0210デフォルトの名無しさんNGNG
嘘言うな!
0211デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 139038人 発行日:2003/1/10

なにやら、連日メルマガだしてるひろゆきです。

そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。

重くなって落ちたりしてもご愛嬌ってことで。。。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0212デフォルトの名無しさんNGNG
Wiinsockを使ってTCP/IPの非同期通信を行うC/Sプログラムで、
クライアントからサーバへconnectするときWSAAsyncSelectにFD_CONNECTを
指定してからconnectすると、接続に成功するとFD_CONNECTのイベントが
発生すると思いますが、サーバへ接続できなかった場合ってのはどうやって調べる
のでしょうか?connectを呼び出してからのタイムアウトの時間などを自分で設定し
時間内に反応が無ければ接続出来なかったと判断するしかないのでしょうか?
0213デフォルトの名無しさんNGNG
312 :ひろゆき ◆3SHRUNYAXA :03/01/10 19:59 ID:jWxHxvti
全部にいれてみた。

http://qb.2ch.net/test/read.cgi/accuse/1042131034/312

前スレ
http://news2.2ch.net/test/read.cgi/newsplus/1042202364/
0214デフォルトの名無しさんNGNG
1 :ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ :03/01/08 17:13 ID:???
   そんなわけで、qbサーバでIPの記録実験をはじめましたー。

11 :ひろゆき ◆3SHRUNYAXA :03/01/08 17:16 ID:rLfxQ17l
   全レスです。

22 :ひろゆき ◆3SHRUNYAXA :03/01/08 17:19 ID:rLfxQ17l
   家族構成と小学校時代の恥ずかしかった思い出も記録されます。

73 :ひろゆき ◆3SHRUNYAXA :03/01/08 17:27 ID:rLfxQ17l
   >ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
   ・今までより、サーバが重くなる。
   ・裁判所や警察からの照会があった場合にはIPを提出することがある。

   こんなところでしょうか。

89 :ひろゆき ◆3SHRUNYAXA :03/01/08 17:29 ID:rLfxQ17l
   >一般人からも見れるところ? 〉記録所
   既存のdatとは別に保存してるので、サーバがクラックされない限りはみれません。

   ただ、既存のdatと別なので、書きこみあたりの保存容量がほぼ2倍。
0215デフォルトの名無しさんNGNG
わーい!期待しとくよ。
0216デフォルトの名無しさんNGNG
なじぇ〜
0217デフォルトの名無しさんNGNG
実行されたらネオ麦を超えるんじゃない?
0218デフォルトの名無しさんNGNG
厨房板の荒らしは削除されたようだ
いつか全板で強制表示になるのだろうか?
スクリプトくめばどこの板だって荒らせるだろうし
0219デフォルトの名無しさんNGNG
実際にある人物になんかあった場合、
その人物になんかしたい、と書き込んだ人間についての情報は
おれがもし警察だったら、一応知ろうと努力はする。
なかにはそうとうエグいのもあるし。
0220202NGNG
>>204
標準入出力系だとバッファリングしてくれるので、自分でやるよりそういう
ライブラリのほうがこなれてるだろうって思って。
ただそれが悪く働くこともあるかなと。で実際にそういう経験をした人がいたら
はなし聞いてみたいと思ったの。
0221デフォルトの名無しさんNGNG
バッファリングってことは
read()/write()じゃなくてfread()/fwrite()の話か?
そういう使い方は見たことないなー
0222デフォルトの名無しさんNGNG
スポ2鯖だけはIP非保存だったりする。
0223デフォルトの名無しさんNGNG
【予告】小学生の登校を狙って・・・

1 名前:キラー ◆cbkujpH7is [] 投稿日:03/01/08 23:10 ID:gsrD4Baw
明日の朝、登校途中の小学生を狙って大量殺人を実行します。実際
には大量とは言っても、刺せるのは15人程度、即死や死亡は10人程
度になってしまうとは思うけど。
住んでるのが北陸なので、適当に車で目標となる場所を探します。
その前に、車で小学生に突っ込むことも計画してます。
目的?そんなものなんかないよ。
人はいつかは死ぬんだ。ちょっと早いかどうかの差だろ?
人の死を作り出せる人は神である。俺は神になるよ。
0224デフォルトの名無しさんNGNG
ふぁーすと
せかんど
さーど
ふぉんど
ふぁいぶんど
0225デフォルトの名無しさんNGNG
>>221
Winsockしか知らないんだね。
Unix系だとfdopen(3)でソケットも使える。

なんか前にも似たような話題出てたな〜
0226デフォルトの名無しさんNGNG
>225
Winsock知らないんだね。
0227202NGNG
>>221
>>225

ごめんターゲットの処理系書いてなかったね。
そうUNIX系です。
0228デフォルトの名無しさんNGNG
>>226
WinSockのsocket handleでfdopen() or 類似の事できたっけか?
ReadFile(), WriteFile()は使えるけどさ。
0229デフォルトの名無しさんNGNG
1人のヤブ医者発言に毎回400万円払えるか?
2ちゃんを残すだけでもひろとしは偉いと思うよ。
まぁ、それだけ儲かるのかも知れないが。
0230デフォルトの名無しさんNGNG
>>220
Cでは、fdopenしてstdioを、C++では、fstreamしてiostreamを、
socketに対して普通に使っています。バッファリングもいいけど、
フォーマッティングで、sprintfやstrstream使わないですむから楽。
C++はiteratorも使えるし。
0231デフォルトの名無しさんNGNG
>>195
ACE本出てるじゃん。C++ in depthシリーズで。
0232デフォルトの名無しさんNGNG
Winsockを使って特定のポートに来るパケットを盗み見るためには、
どうすればよいのでしょうか?
0233デフォルトの名無しさんNGNG
   ,.´ / Vヽヽ
    ! i iノノリ)) 〉
    i l l.´ヮ`ノリ <先生!こんなのがありました!
    l く/_只ヽ    
  | ̄ ̄ ̄ ̄ ̄|
http://muryou.gasuki.com/saitama/
0234デフォルトの名無しさんNGNG
>>232
盗み見るも何も、ポートあけて受信しろ
0235デフォルトの名無しさんNGNG
>>231
本が出てるのはわかった。で、あんたの感想・使用感は?ぷりーず。
0236デフォルトの名無しさんNGNG
その具体的な理由として社長は、こう話す。
「2ちゃんねるはボランティアの削除人が書き込みをチェックして、
好ましくない書き込みを一所懸命削除している、
ということになっているが、あれはウソ。
削除人には給料が支払われ、その給料の原資となっているのが、
まずいことを書き込まれた企業が削除要求とともに渡す裏金。
これはまさに、総会屋の構図そのものだ。
これまで裁判になっているのは金額で折り合えなかったり、
裏金を出さない強い態度の企業とだけだ」
0237デフォルトの名無しさんNGNG
>>228
ReadFileできるってことは
_open_osfhandleでいけるんじゃないの
0238デフォルトの名無しさんNGNG
>>232
http://winpcap.polito.it/
0239デフォルトの名無しさんNGNG
>>235
良く出来ているけど、うざい。
結局自分でclassを書いた。かなり参考になった。いじょ
0240山崎渉NGNG
(^^)
0241デフォルトの名無しさんNGNG
UNIXネットワークプログラミングを組んでるのですが、
現在
/*-------------------------------include-------------------------------*/
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>



/*-------------------------------define--------------------------------*/
#define PORT 8765

main()
{
/*------------------------------変数---------------------------------*/
int fd;//ファイルディスクリプタ
int ret;//readの返し値

struct sockaddr_in addr;//サーバー構造体

char buf[1024];

fd_set r_fd;

0242241NGNG
/*----------------------通信相手(サーバー)のアドレスを設定---------*/
bzero((char *)&addr, sizeof(addr));
addr.sin_family = AF_INET;
addr.sin_port = htons(PORT);
addr.sin_addr.s_addr = inet_addr("IPアドレス");

/*----------------------------接続-----------------------------------*/
fd = socket(AF_INET, SOCK_STREAM, 0);
connect(fd, (struct sockaddr *)&addr, sizeof(addr));
0243241NGNG
/*----------------------------セレクトの設定-------------------------*/
FD_ZERO(&r_fd);//r_fdを初期化
while (1) { //メインループ
FD_SET(0, &r_fd);//キーボードをr_fdに追加
FD_SET(fd, &r_fd);//fdをr_fdに追加

select(fd+1, &r_fd, NULL, NULL, NULL);

/*-------------------------キーボードからの読み込み-----------------*/
if(FD_ISSET(0, &r_fd)){
memset(buf, 0, sizeof(buf));
ret = read(0, buf, 100);
write(fd, buf, ret);
}

0244241NGNG
/*--------------------------サーバーからのデータ受信-----------------*/
if(FD_ISSET(fd, &r_fd)){
memset(buf, 0, sizeof(buf));
ret = read(fd, buf, 100);

if(ret == 0){
break;
}
/* コンソールへの出力 */
write(1, buf, ret);
}
}
close(fd);
exit(0);
}
こんなかんじのプログラムを組んでみたのですが、ここからゲーム部分に移るべく現在拡張子が.cなのですが
.cppに変えたいのですが、そうするとinet_addr();read();write();close();でコンパイルエラーが
出てきてしまうのですが、代わりになるような関数ってありますか?それとも大幅に変更を変える必要
が出てくるのでしょうか?
0245デフォルトの名無しさんNGNG
プロトタイプ宣言がないってエラーでしょ?
man 2 write もしくは man -s 2 write
などとやって、その関数に必要なヘッダを include してるか、
確認してみては? たぶん、#include <unistd.h> あたり...

てーか、なんか、それ以前に根本的なスキル上の問題を感じるんだが...
0246241NGNG
>>245
サンクス。無事コンパイル通りました。
スキルあったら一々聞いたりしてないから触れないで
0247デフォルトの名無しさんNGNG
cygwinのおかげで、gccだとUNIXネットワークプログラム
ちょうど、上の奴みたいのはコンパイルできるのですが、
諸事情で、bccでコンパイルする必要があるのですが、
可能ですか?
0248247NGNG
sys/socket.hとかのヘッダーファイルを
bccのincludeフォルダに読み込ませればできるのでは、
と勝手に思ってるんですけど、そもそも検索しても
そのヘッダーファイルらがひっかからなかったんで、
どなたか、教えてください。
0249デフォルトの名無しさんNGNG
ヘッダファイルは魔法でもおまじないでもないんですから、それだけじゃ無理ですな
ちゃんとbccで動作するように作りましょう。
0250デフォルトの名無しさんNGNG
recvでデータ受信しているのですが、受信終了時に
返り値として0が返されますが、この0が返されるまでの
時間が長すぎて困っています。

例えば、2ちゃんねるのこの板のsubject.txtを読み終わるまでに
実際のデータはすぐに読み込めるのですが、0が返されるまでに
10秒くらいかかります。
この時間を短縮する方法はありませんか?
0251250NGNG
環境はWindowsでWinsock2.2を使用しています。
0252デフォルトの名無しさんNGNG
> 受信終了時に返り値として0が返されますが

そうだっけ?
0253デフォルトの名無しさんNGNG
>250
RFC2616を読みなさい
0254253NGNG
persistent connectionのところね
0255デフォルトの名無しさんNGNG
スレ違いだと思いますが教えてください。
プログラムは今までやったことがないのですが、
この間C言語入門という本を買ってきて一通り読み理解しました。
そこで無謀にもネットワークプログラムなんか面白そうだなと
思って、図書館でリチャードスティーブンスという人の
unixネットワークプログラム という本を借りてきたのですが、
少し読んでみたのはいいですが、何がかいてあるのかさっぱり
わかりませんでした。

そこで、また本屋にいって初級よりちょっと上のレベルの本を
読んでみたのですが、このネットワークプログラムの本を理解
するほどの内容が書いてありませんでした。このネットワークプログラム
を理解するにはどのような本を読めば理解できるのでしょうか?
Cを勉強して半年ですが、がんばって理解したいと思うので
マジレスお願いします。
0256デフォルトの名無しさんNGNG
>>255
1.Linux,FreeBSDなどでWebサーバをたててみる。
2.ファイアウォールの設定をする。
3.パケットキャプチャーして眺めてみる。
4. 1でたてた鯖のアクセス数が10000HITいく頃には読めるようになってる。
0257デフォルトの名無しさんNGNG
>>255
サーバとホストの違いを把握する
0258デフォルトの名無しさんNGNG
httpサーバーを動かしているPCで、他のサイトを見ると、
サーバーがサーバーを見ていることになりホストがなくなる。
ホストは必須ではない。

またWindowsのファイル共有では勝手にホストがサーバーに変わったり
サーバーがホストに変わったりする。
0259デフォルトの名無しさんNGNG
志が高いようだから、この本から勉強し直せ。

TCP/IPによるネットワーク構築〈Vol.1〉原理・プロトコル・アーキテクチャ
Douglas E. Comer (著), 村井 純 (翻訳), 楠本 博之 (翻訳)
http://www.amazon.co.jp/exec/obidos/ASIN/432012054X/

読了後、まだ橋渡しが欲しければ、
http://www.amazon.co.jp/exec/obidos/ASIN/4320028007/
http://www.amazon.co.jp/exec/obidos/ASIN/4894714671/
あたり。

続きは推薦図書スレで。
0260デフォルトの名無しさんNGNG
>>257,258
(´-`).。oO(クライアントのことなのかな…

(・∀・)イズレ ニセヨ >>258ハ アフォ!
client/serverは、マシンだけに有効な概念ではない。
Network entityという概念を理解せよ。

0261デフォルトの名無しさんNGNG
UNIXネットワークプログラミングで組んだサーバーと
Winsockで書いたクライアントで通信ってできますか?
UNIX..でクライアントも書いたのですが、bccでコンパイルが
通らなかったので。。
gccはcygwinを入れたときに入ったのでUNIXプログラムもコンパイルできるのですが、
素直にWinsockでクライアントを書くのと、bccでこのプログラムを
コンパイルできるようにするのと、どっちが楽ですかね。
正直、あんまり時間ないので短時間でできる奴のほうがいいのですが。。
0262デフォルトの名無しさんNGNG
「そのためのTCP/IPです」
0263261NGNG
>>262
つまりできるってことでよろしいですよね?
0264デフォルトの名無しさんNGNG
>263
LinuxのApacheにWindowsのIEで観覧できますか?と同じような話かと
0265デフォルトの名無しさんNGNG
>>261
既にCygwinのgccで通るプログラムがあるならそのままやる方が
楽は楽だろうけど、作ったプログラムを配布しようと思ったら
cygwin1.dllも配布しなきゃとかGPLだから〜とかあるんで、最終的
にどっちでやるかは自分で判断しる。
0266デフォルトの名無しさんNGNG
> GPLだから〜

詳しくないんだがcygwin関連でそういう制約あったっけ?
0267デフォルトの名無しさんNGNG
/*--------------------------WinSockの初期化を行う----------------------------*/
wVersionRequested = MAKEWORD(2, 0); //バージョン 1.1 を要求する
nErrorStatus = WSAStartup(wVersionRequested, &wsaData);

if (atexit((void (*)(void))(WSACleanup))) {//終了時にWinSockのリソースを解放するようにしておく
fprintf(stderr,"atexit(WSACleanup)失敗\n");
exit(-1);
}
if ( nErrorStatus != 0 ) {
fprintf(stderr,"WinSockの初期化失敗\n");
exit(-1);
}

/*-----------------------sdにソケットを作成します----------------------------*/
sd = socket(PF_INET, SOCK_STREAM, 0); //TCPで通信
if(sd == INVALID_SOCKET){
fprintf(stderr,"ソケット作成失敗\n");
}
0268デフォルトの名無しさんNGNG
/*----------------------------サーバの設定-----------------------------------*/
sv_sockaddr.sin_family = AF_INET;//インターネットの場合
sv_sockaddr.sin_addr.s_addr = inet_addr("169.254.185.85");//サーバのIPアドレス
sv_sockaddr.sin_port = htons(PORT);//ポート番号
memset(sv_sockaddr.sin_zero,(int)0,sizeof(sv_sockaddr.sin_zero));

/* 指定のソケットでサーバへコネクトします */
if(connect(sd,(struct sockaddr *)&sv_sockaddr,sizeof(sv_sockaddr)) == SOCKET_ERROR){
fprintf(stderr,"サーバへの接続失敗\n");
}

FD_ZERO(&r_fd);//r_fdを初期化
while(1){
FD_SET(0, &r_fd);//キーボードをr_fdに追加
FD_SET(sd, &r_fd);//fdをr_fdに追加

select(sd+1, &r_fd, NULL, NULL, NULL);

if(send(sd, buf, lstrlen(buf), 0) == SOCKET_ERROR){
fprintf(stderr,"サーバへの送信失敗\n");
}

if(FD_ISSET(0, &r_fd)){
memset(buf, 0, sizeof(buf));
fgets(buf, RECVSIZE - 1, stdin);
send(sd, buf, lstrlen(buf), 0);
}
0269デフォルトの名無しさんNGNG
if(FD_ISSET(sd, &r_fd)){
memset(buf, 0, sizeof(buf));
buf_len = recv(sd, buf, RECVSIZE - 1, 0);

if(buf_len == 0){
break;
}
buf[buf_len] = '\0';
printf("%s",buf);
}



if (buf_len == SOCKET_ERROR ){
fprintf(stderr,"サーバからの受信失敗\n");
}else{
buf[buf_len] = '\0';/* 受信したバッファの後ろにNULLを付加する */
}
}
closesocket(sd);
exit(0);
}
0270デフォルトの名無しさんNGNG
こんなプログラムを組んだのですが、コネクトした時点ですでに
bufにゴミみたいのがまざってしまうのですが、何故でしょうか?
ちなみに、間違ってip書いちゃったけど、気にしないでください。。
0271デフォルトの名無しさんNGNG
connectした時にすでにおかしいと言いながら全文載せるとは何事か
0272デフォルトの名無しさんNGNG
>>270
なんかめちゃくちゃだよ?
selectの後のsendは何?
if (buf_len == SOCKET_ERROR ){
fprintf(stderr,"サーバからの受信失敗\n");
}else{
buf[buf_len] = '\0';/* 受信したバッファの後ろにNULLを付加する */
}
の場所はそこなの?
0273デフォルトの名無しさんNGNG
>>266
cygwin1.dllはGPL。
続ける場合はGPLスレかUnix板のCygwinスレにでも移動して。
0274デフォルトの名無しさんNGNG
>>270
WinSockで

FD_SET(0, &r_fd);
select(sd+1, &r_fd, NULL, NULL, NULL);
if(FD_ISSET(0, &r_fd)){
 memset(buf, 0, sizeof(buf));
 fgets(buf, RECVSIZE - 1, stdin);
 send(sd, buf, lstrlen(buf), 0);
}

これ(標準入力をselectで待つ)できたっけ?
Cygwinのgccならその辺エミュレートしてるから動くだろうが、その場合
WSAStartupとかやる必要ないし。なんかUnix流のやり方とWinSockの
やり方がごっちゃになってるような…
0275デフォルトの名無しさんNGNG
>>274
できない(WSAENOTSOCKを食らう)
0276デフォルトの名無しさんNGNG
ファイルをHTTPで転送するルーチン作ったんだけど、
ファイルをすべて on memory でもっていて転送したとしても、
TransmitFile を使って行うファイル転送にかなわない。
(両方の場合も非同期転送でやってます。)

どうしてこんなに効率いいんだ? > TransmitFile
どんな魔法を使っているんだYO
おまえら、TransmitFileに自作転送ルーチンで勝てた人いらっしゃいますか?
0277デフォルトの名無しさんNGNG
ダブル バッファリングを行わずに、ディスクからファイルを直接転送します。
0278デフォルトの名無しさんNGNG
ユーザーランドへのコピーが一度でも起こると
パフォーマンス的には厳しい。
linuxにもsendfileってのがあるね。
0279278NGNG
>>277
転送したい内容は既にメモリ上でもっているんですが(w

>>278
そうですねよ。。。
究極の回答はLANのデバイスドライバ作ってそこにファイル転送ルーチン仕込めということなのでしょうか?
それともユーザランドでカーネルレベルでのメモリ確保を行って、
そこから転送すればよいのでしょうか? それができるかどうかはなぞですが(w
0280278NGNG
>>279
あう、間違えた 276 です。ごめんなさい。
鬱だ、気晴らしに sim city4でもやろう
0281デフォルトの名無しさんNGNG
> それともユーザランドでカーネルレベルでのメモリ確保を行って、
> そこから転送すればよいのでしょうか?

つまるところそれを肩代わりするのがTransmitFileやsendfile
なのでは?
0282デフォルトの名無しさんNGNG
>>276
非同期転送って、WriteFileExやWSASendのコールバックでやってる?
それで負けるんならお手上げだよなぁ・・・。
0283デフォルトの名無しさんNGNG
HTTPで、BODYだけGETする方法ってありますか?
0284デフォルトの名無しさんNGNG
GET / HTTP/0.9
0285デフォルトの名無しさんNGNG
>>284
0.9でBODYだけ取得できるのは知ってましたが
それって問題無いんですか?
0286デフォルトの名無しさんNGNG
いや・・・0.9をサポートしてるかどうかを心配したほうが・・・
0287276NGNG
>>282
WSASendの非同期でやっています。
Athlon1G Memory512MB の環境で150KB程度のファイルを転送させて、
apache benchで 5クライト1000アクセスで測定した結果、
TransmitFileと自作の転送ルーチンの差が 秒間10アクセス程度の差がでています。
0288282NGNG
>>287
いや、重複I/Oでもイベント使うのとコールバックの二種類あって、
イベントの方だとWaitFor〜のオーバーヘッド分遅いだろうなって思って。
0289デフォルトの名無しさんNGNG
>>288

FAQだけど、socket buffer は大きくしてる?
http://www.asahi-net.or.jp/~vz4h-sruz/memo/ffftp-hack.html
とかが参考になるかも。
0290276NGNG
>>289
知りませんでした(w
で、やってみました。
転送レートが 秒間3〜10ぐらい伸びました。感動しました。

で、結果からなんですが、転送レートにばらつきがあるのが疑問点です。
自宅LANなので他人が回線を使っているわけでないのでほぼ一定でなければおかしいような気がします。
そーゆーものなんでしょうか?

気づいたことは、
通常は 75〜85% ぐらいの負荷なのですが、
転送率が良くなるときにきまってサーバの CPU使用率が 100%振り切っています。

何かOS側、もしくはLANカードのドライバ(カニさん(w) が関係しているのでしょうか。
もう少し検証してみます。。。
0291デフォルトの名無しさんNGNG
カニさんは高負荷時に挙動不審になるとか
linuxのドライバ書きの外人がボヤいてた気がする
0292デフォルトの名無しさんNGNG
どこでCPU使ってるのか、profileしてみたら?
0293デフォルトの名無しさんNGNG
カニさんは自作板で、叩かれてたような気がする
0294デフォルトの名無しさんNGNG
カニって、CPUを使って転送するのか...
0295デフォルトの名無しさんNGNG
カニってうまいよな。
あんなにうまくなければ乱獲されずに済んだのに。
0296デフォルトの名無しさんNGNG
>>290

もし、TransmitFile の場合に、そういう現象が起きてないなら、
作りの問題かもね。
あらかじめ、ワーカスレッドを何十個か必要なだけ作っておいて、
accept後、そいつらに同期send+closeさせてみると多少マシになるかも?
0297276NGNG
>>296
>もし、TransmitFile の場合に、そういう現象が起きてないなら、
>作りの問題かもね。
うわーん(w

>あらかじめ、ワーカスレッドを何十個か必要なだけ作っておいて、
>accept後、そいつらに同期send+closeさせてみると多少マシになるかも?
スレッドプールはすでに導入済みです。
0298276NGNG
ネットワークとは関係ないですが、
ワークメモリを FileMapping してみたら、ちょっとだけ効率が上がりました。
カーネルに(近いレベルで)取得したメモリから
ソケット(カーネル)に書き出せるからかな?

昨日やった実験で少しパフォーマンスが向上したのでご報告。。。
0299276NGNG
>カニさんは自作板で、叩かれてたような気がする
どこでもカニはたたかれますよね。
実は、転送効率を測定するためにベンチを走らせたり、
自作のクラッシャーで攻撃すると Windows OS 自体がクラッシュしたりする
なぞの現象になやんでいたりします。一説にはドライバがくさっているとか。。。

とりあえず、Intel のカード買ってくる予定です(w
これでダメならメモリがやばいかもしれない。。

プログラムと関係ないので sage
0300デフォルトの名無しさんNGNG
その次はTransmitFileのような・・・
0301デフォルトの名無しさんNGNG
>>276
ネットワークプログラムを最近始めたものですが、HTTP転送によるファイル転送(WebDAVじゃなく)を調べているのですが、参考にされたWebサイトありませんか?
また、TransmitFileはWin固有でしょうか?
0302デフォルトの名無しさんNGNG
linuxにもあるよ。名前違うけど
0303デフォルトの名無しさんNGNG
>>299
本当にドライバが腐ってるだけなら
とっくに誰かが安定したものに書き直してるでしょう
おそらく腐ってるのはドライバではなく仕様だと思われ
0304デフォルトの名無しさんNGNG
mmapか。勉強になるのお。
0305276NGNG
>>301
クライアント側でしょうか?
おいらはサーバ作っているんでちょっと違いがあるかもしれないけど、
とりあえず有名どころで、
http://www.studyinghttp.net/index.html
あとは、 RFC とか、そこら辺に転がっているソースとか、
高速化のところは apache2 とか参考にしています。

近々このソースも公開する予定なので、もしよろしければ参考にしてください(w
0306301NGNG
>>305 私もC/Sで考えてます。ありがとう
0307301NGNG
>>305 私もC/Sで考えてます。ありがとう
0308301NGNG
>>305 私もC/Sで考えてます。ありがとう
0309デフォルトの名無しさんNGNG
メモリ上の送信より、mmapの方が早いってのは、理屈から考えるとヘン。
(メモリがswap outされていたとか以外に考えにくい)
メモリを物理メモリにロックした場合と比較してみては?
あと、ソケットにTCP_NODELAY指定はしてあるんだっけ?
0310デフォルトの名無しさんNGNG
>>309
メモリへ載せるための転送も計算に入れてる?
0311デフォルトの名無しさんNGNG
>>309
速い時はCPU利用率が100%になっていると言っているのだから、
copy from memory to memoryがボトルネックになりつつあるのは明らかだが…

Libraryやkernelの中身まで考えたことないんだろうな、>>309は。
データのメモリアライメントも考えたことないのだろうし。
0312デフォルトの名無しさんNGNG
そ、言えば、最近trailer protocolってあんまり聞かないね。
http://deesse.univ-lemans.fr:8003/Connected/RFC/1122/21.html
DMA転送する前にalignmentを調整する必要がないように考えられたのだが。
0313デフォルトの名無しさんNGNG
>>311
>速い時はCPU利用率が100%
ってのは、ドライバがカニだからじゃないの?
よほど小さな単位でsendしてるのでないかぎり、
(普通にmalloc等で確保した領域を使っての)send部分が原因で
CPU使用率が100%になるなんて、見たことないけど?
0314デフォルトの名無しさんNGNG
だからmallocでメモリ確保したらコピーが1回余計に増えるでしょ
0315デフォルトの名無しさんNGNG
あれ?
今回は、ReadFile()の(mallocした領域への)読み込みは、起動直後に
完了していて、転送時の計測のカウントに入らないんじゃなかったの?
0316デフォルトの名無しさんNGNG
socketへの書き込みから始って、networkに流れるまでにも、copyが行なわれる。
それを防ぐために、TransmitFileなんてものがある。
0317デフォルトの名無しさんNGNG
>>316

通常のsocketの TCP->IP->Ether、なんてプロトコルスタックを下るような
動作をせずにショートカットしてるの?

ま、それはともかく、今は、mmap領域とmalloc(中身はGlobalAllocとかだ
よね?)領域を sendした場合の動作の違いについての話なので、
TransmitFileの話は無関係だよね?
0318デフォルトの名無しさんNGNG
>>317
>>314は無視
0319276NGNG
>>309
>あと、ソケットにTCP_NODELAY指定はしてあるんだっけ?
してません。
で、設定してみたところ、あんまりかわらないか、現状以下の数字しか出なかったです。

長いので次の書き込みでベンチを貼り付けます。

0320276NGNG
指定あり
Document Length: 165142 bytes
Concurrency Level: 5
Time taken for tests: 187.694 seconds
Complete requests: 10000
Failed requests: 0
Broken pipe errors: 0
Total transferred: 1653547960 bytes
HTML transferred: 1651457542 bytes
Requests per second: 53.28 [#/sec] (mean)
Time per request: 93.85 [ms] (mean)
Time per request: 18.77 [ms] (mean, across all concurrent requests)
Transfer rate: 8809.81 [Kbytes/sec] received
Connnection Times (ms)
min mean[+/-sd] median max
Connect: 0 7 29.7 6 2948
Processing: 19 87 144.3 82 9093
Waiting: 18 86 144.3 82 9092
Total: 19 93 147.2 89 9106
0321276NGNG
指定なし
Document Length: 165142 bytes
Concurrency Level: 5
Time taken for tests: 177.813 seconds
Complete requests: 10000
Failed requests: 0
Broken pipe errors: 0
Total transferred: 1653637020 bytes
HTML transferred: 1651546184 bytes
Requests per second: 56.24 [#/sec] (mean)
Time per request: 88.91 [ms] (mean)
Time per request: 17.78 [ms] (mean, across all concurrent requests)
Transfer rate: 9299.87 [Kbytes/sec] received
Connnection Times (ms)
min mean[+/-sd] median max
Connect: 0 8 3.5 7 24
Processing: 18 81 40.3 80 3103
Waiting: 17 80 40.3 80 3102
Total: 18 88 40.3 88 3113

あ、これは ab の結果です。。
0322276NGNG
>>313
>よほど小さな単位でsendしてるのでないかぎり、
ソケットのバッファ長は伸ばしているので小さい値で send していないと思います。
それでも、 CPU 70〜80は余裕で行きます。

apache2も同じように CPU を使用するのでそーゆーものなのではないのでしょうか?
なお、IISは速度こそapache2と同じですが、CPU使用率が 50%前後という恐ろしい結果を
出してくれます。 ゲイツマジックの予感。
0323デフォルトの名無しさんNGNG
>>322

指定なしの場合にすでに、ほぼ理論値近い値(NICはGbitとかじゃないよね?)
でてるから、いいんでないの?
CPU使用率問題は、ある程度はカニが原因っぽいから、NIC交換後に再計測
してみるとか。
0324276NGNG
>>323
それが違うんです。。。

apache2 で同じファイルを転送したときの結果
Concurrency Level: 5
Time taken for tests: 159.725 seconds
Complete requests: 10000
Failed requests: 0
Broken pipe errors: 0
Total transferred: 1654330095 bytes
HTML transferred: 1651559264 bytes
Requests per second: 62.61 [#/sec] (mean)
Time per request: 79.86 [ms] (mean)
Time per request: 15.97 [ms] (mean, across all concurrent requests)
Transfer rate: 10357.36 [Kbytes/sec] received
Connnection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.3 0 11
Processing: 25 79 4.6 78 104
Waiting: 24 78 4.6 77 103
Total: 25 79 4.6 78 104

で、理論地をオーバーするような結果がえられるんですよ。。。なぞです。
0325276NGNG
いまさらなんですが、さっきあらためて貼り付けたベンチを見て思ったんですが、

Connnection Times の値の max がオイラのやつはめちゃくちゃでかいですね。
min は apache2 より小さいのに何かある条件かでガクンとひっかかるような
処理が行われているような気がしていました。
ひとつ思い当たる節があるので調査してきまうす。
0326デフォルトの名無しさんNGNG
>>324

>Transfer rate: 10357.36 [Kbytes/sec] received

のことだったら、理論値オーバーには、なってないよね。
100Mbps = 100000000bps = 12207KB
ヘッダその他、オーバーヘッドがあるから、これよりは若干落ちるけれど。
0327デフォルトの名無しさんNGNG
>>326
理論値超えてるって。もうちょっとEthernetプロトコルのお勉強してから書き込もうね。
0328276NGNG
とりあえず、成果物を公開します。。。
http://pc3.2ch.net/test/read.cgi/tech/1043275721/

いまだにカクと処理が落ちるなぞは良くわからないのですが、
ソースや作りたちものを出さずしてなかなか説明しづらいところがあるので、
αテストということで。。。
0329デフォルトの名無しさんNGNG
>>327

超えてないよ。
>>327の理論値って幾つ?いってごらん。嗤ってやるから。
0330デフォルトの名無しさんNGNG
>>327

余計な部分(file I/Oなど)を削ぎ落としての実測をしたことがない?
0331デフォルトの名無しさんNGNG
>>328

とりあえず、アドバイスはこんな感じかな?

細かくWSASend()を発行しない。
(なるべく、ヘッダと本体をあわせて1回のWSASendで送ってしまう)

ソケットバッファを大きくすると、closesocket() でのバッファの
flush 完了待ちが長くなるので、ワーカスレッド側で、closesocket()
まで面倒を見る。
0332デフォルトの名無しさんNGNG
>>331

mmap してる場合は、ヘッダとファイルデータを連続させることは難しいから、
WSASendでWSABUF配列を2つ以上並べる必要があるかもね。
0333デフォルトの名無しさんNGNG
パケットUDPで他PCとデータをやり取りするソフトを作っているのですが
サーバー側はクライアント側からデータが来たってわかる方法はありますか?
recvfromでずっと待ってるわけにはいかないですよね?
0334デフォルトの名無しさんNGNG
何故まっているわけにはいかないのか小一時間問いつめたい。
0335デフォルトの名無しさんNGNG
スレッドを知らないからに1024パケット
0336デフォルトの名無しさんNGNG
>>333

select か WSAAsyncSelect()を使う。
0337デフォルトの名無しさんNGNG
>>334
アプリが固まるから
>>335
知らんから聞いてる
>>336
非同期って奴ですよね?
ちょっとためしてみます。
0338デフォルトの名無しさんNGNG
スレッドを知らないレベルの人間に非同期処理を行わせるのと、
マルチスレッド+同期APIを教えるのはどちらが現実的なんだろうな。
0339デフォルトの名無しさんNGNG
>>338
教える気がないカス野郎はとっとと首吊って下さい。ウザイです。
0340デフォルトの名無しさんNGNG
>>339
教わる気がないカス野郎はとっとと首吊って下さい。ウザイです。
0341デフォルトの名無しさんNGNG
頭がぬるぽなカス野郎はとっとと首吊って下さい。ウザイです。
0342デフォルトの名無しさんNGNG
>>341 ガッ
0343ネタニマジレスNGNG
>>339
質問所と相談室を混同するなよ。
スレルールのどこに 「ぼやき NG」 と書いてある?
0344デフォルトの名無しさんNGNG
>>343
1をよく読みましょうね。
貴様みたいな馬鹿は字も読めないのですか?
ここに来る前に幼稚園から始めて下さい。
0345デフォルトの名無しさんNGNG
>>344
> 貴様みたいな馬鹿は字も読めないのですか?
微妙な日本語・・・。
0346デフォルトの名無しさんNGNG
>>343
つーか、お前の存在がネタだろ、負け犬(w
0347デフォルトの名無しさんNGNG
>>346
正解
0348山崎渉NGNG
(^^)
0349343NGNG
ふ、漏れの崇高な精神はおまいらには理解できなかったようだな。
0350デフォルトの名無しさんNGNG
ネットワークプログラムを今やるなら、CかC++のどちらを
やっていたほうがいいのでしょうか?
0351デフォルトの名無しさんNGNG
そうだな、どっちかというとsocketかな。
javaや.netのはちょっと隠されすぎ。
0352デフォルトの名無しさんNGNG
winsockでもエラーは負って決め打ちしてもいいの?
0353デフォルトの名無しさんNGNG
ヘルプ読めませんか?
0354デフォルトの名無しさんNGNG
>>350
ソケットの勉強をしたい  だ け  なら C でもいいと思われ。
それ以外なら C++ をお勧めします。

>>352
良くない。
詳しくは >>353 の言うようにヘルプを読んで下さい。
0355デフォルトの名無しさんNGNG
結局BSDソケットプログラムは全面的に書きなおさないとwinsockへの移植は無理(逆も無理)
ってことですか。残念。
0356デフォルトの名無しさんNGNG
>>349
理解できないので二度と来ないでください。
0357デフォルトの名無しさんNGNG
>>354

今ならCよりC++を勉強したほうがいいんですね。
Cならリチャードスティーブンスのネットワークプログラム本が
ありますが、C++ではどの本がおすすめでしょうか?
本スレよりネットワーク専門でやってる人の方が詳しそうなので
教えてください、お願いします。
0358デフォルトの名無しさんNGNG
推薦図書/必読書のためのスレッド PART 8
http://pc3.2ch.net/test/read.cgi/tech/1041595397/l50
0359デフォルトの名無しさんNGNG
>>355
APIには互換があるのでソケット以外の部分の絡みでなければ
書き直す必要は無い
0360デフォルトの名無しさんNGNG
>>357
はあ?「Cならリチャードスティーブンスのネットワークプログラム本がある」んなら
C++でも↑でいいじゃん。頭大丈夫?
0361デフォルトの名無しさんNGNG
馬鹿が威勢のいいこといってるな藁
0362デフォルトの名無しさんNGNG
(・∀・)ゲハハハ
0363デフォルトの名無しさんNGNG
元気なのはいいことだ。それさえ無かったら、あいつはきっと
カマキリを食べてしまっていただろう。
さみしいような気もするけど、馬鹿って貴重なようでいて実は
そうではないのだ。というか工場は何処なのだろう? 止めろよ。
0364デフォルトの名無しさんNGNG
百済ねえ事であげんなヴぉけ
0365デフォルトの名無しさんNGNG
(・∀・)ゲハハハハ
0366デフォルトの名無しさんNGNG
蟷螂ってうまいの?
0367デフォルトの名無しさんNGNG
>>366
あるプログラムが動くかどうか判断するには→実際に動かす。
0368デフォルトの名無しさんNGNG
>>367
目を離した瞬間、中の人が発狂するかも知れないわけだが。
0369デフォルトの名無しさんNGNG
中 の 人 な ど い な い
0370あるプログラムの中の人NGNG
発狂しそうです。。。
0371デフォルトの名無しさんNGNG
俺の菊座も発狂しそうです。
0372デフォルトの名無しさんNGNG
中の人があまりにたくさん発狂したのでニュースになりました。
0373デフォルトの名無しさんNGNG
浣腸かってこようかなー
0374デフォルトの名無しさんNGNG
>>360
アタマ大丈夫な人は2chで質問なんかしません。
0375デフォルトの名無しさんNGNG
>>374
0376デフォルトの名無しさんNGNG
localhostにUDPパケット投げる場合は、暗号化しなくても
既に汚染されている場合を除いて他のマシンに覗きみされる事はないですよね。
0377デフォルトの名無しさんNGNG
>>376
まあそうだね。念の為、localhostの名前解決を自力で行えること
を保証できるように /etc/hosts に書くか(まともなら普通は書い
ていると思うけど)、127.0.0.1をじかに書いて解決の必要がないよ
うにしておく方がいいんじゃない。



0378 NGNG
www2ch.net から recv したデータが

HTTP/1.1 200 OK
Date: Wed, 29 Jan 2003 12:56:13 GMT
Server: Apache/1.3.26 (Unix) AuthMySQL/2.20 PHP/4.1.2 mod_gzip/1.3.19.1a mod_ssl/2.8.9 OpenSSL/0.9.6g
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html

53e
// ここに データが書かれてあります。
0

となっているのですが、最初の 53e ってのと最後の 0\r\n\r\n は何なのか分かりません。
意味を教えてください。
それから、データ本体を取り出す簡単な方法は無いでしょうか?
0379デフォルトの名無しさんNGNG
粋がってHTTP/1.1なぞでリクエストせずに、HTTP/1.0にしときなされ。
53eの意味が知りたいなら、rfc2616のchunked encodingを調べなされ。
0380デフォルトの名無しさんNGNG
どう考えてもネタだろ >>378
0381デフォルトの名無しさんNGNG
どうか助言おねがいします。
今win2000でTCPで送受信してます。
通信相手はgethostbynameでパソコン名を指定してとってます。
プログラムの中でサーバーポート番号とパソコン名を直接書くと動いたんですが
テキストファイルからサーバーポート番号とパソコン名を読みこむようにすると
なぜかSOCKET()のところで10093エラーがでてしまいます。これはWINSOCK初期化エラーみたいなんですが、どこがわるいのでしょう?
(前)
#define serverport 7000
charshost[]="NAME";

(後)
intrightport;
charshost[10];
charbuf[256];
char *a;

a=fgets(buf,256,fp);
sscanf(buf,"%s %d",shost,&rightport);


としてます
テキストファイルには

NAME 7000

としてます

0382デフォルトの名無しさんNGNG
WinSockシステムが初期化されていない。
WinSock関数を実行しようとしたが、WSAStartup()が正常に実行されていないため機能しない。
0383デフォルトの名無しさんNGNG
>>381
読み込んだ文字列の終端に\0無いんじゃねえの?
0384デフォルトの名無しさんNGNG
読み込んだ値をprintfでもいいから確認汁!
0385デフォルトの名無しさんNGNG
ここで聞く前になぜ
printf("%s %d",shost,rightport);
を試さない?
0386385NGNG
>>384
ケコーン
0387デフォルトの名無しさんNGNG
>>385
低脳だから。
0388デフォルトの名無しさんNGNG
レスどもです。
printfで確認したらきちんとよみとれてるんですが、なぜか実行時エラーがでてしまいます。
そこでもう一度、プログラムに直接書き込んだものでやってみるとやはりうまくいきました。
んでやはりこの部分がわるいのかなと
0389デフォルトの名無しさんNGNG
>>388
>printfで確認したらきちんとよみとれてるんですが
うそだろ。
0390デフォルトの名無しさんNGNG
まったく違う場所で間違い発見しました。
ご迷惑かけました、もうしわけないです
0391デフォルトの名無しさんNGNG
>>390
俺に謝られてもなぁ・・・
ただの通りがかりだし・・・
0392デフォルトの名無しさんNGNG
UDPパケットが経路途中で分割されたとしても、受信するときはrecvfrom()一回で
パケット全体が所得できるんですよね?

Programming UNIX Sockets in C FAQ にはUDPの先頭しか届かない場合がある
みたいなことが書いてますが、どういう場合にそうなるんでしょうか?
0393デフォルトの名無しさんNGNG
http://www.ibrado.com/sock-faq/#faq61

・経路上の最小MTUを越えるpacketを送ろうとした時
・そこで必須でないIP fragmentが実装されてない時

だね。ただ、今やRFC1122では、
0394(つづき)NGNG

| | | | |S| |
| | | | |H| |F
| | | | |O|M|o
| | |S| |U|U|o
| | |H| |L|S|t
| |M|O| |D|T|n
| |U|U|M| | |o
| |S|L|A|N|N|t
| |T|D|Y|O|O|t
FEATURE |SECTION | | | |T|T|e
-------------------------------------------------|--------|-|-|-|-|-|--
REASSEMBLY and FRAGMENTATION: | | | | | | |
Able to reassemble incoming datagrams |3.3.2 |x| | | | |
At least 576 byte datagrams |3.3.2 |x| | | | |
EMTU_R configurable or indefinite |3.3.2 | |x| | | |
Transport layer able to learn MMS_R |3.3.2 |x| | | | |
Send ICMP Time Exceeded on reassembly timeout |3.3.2 |x| | | | |
Fixed reassembly timeout value |3.3.2 | |x| | | |
| | | | | | |
Pass MMS_S to higher layers |3.3.3 |x| | | | |
Local fragmentation of outgoing packets |3.3.3 | | |x| | |
Else don't send bigger than MMS_S |3.3.3 |x| | | | |
Send max 576 to off-net destination |3.3.3 | |x| | | |
All-Subnets-MTU configuration flag |3.3.3 | | |x| | |

なんだけどね。(don't send bigger)
0395デフォルトの名無しさんNGNG
>>394
0396デフォルトの名無しさんNGNG
>>395==>>394
0397デフォルトの名無しさんNGNG
>>396
ハズレ
0398デフォルトの名無しさんNGNG
>>393, >> 394
えーと、つまり経路の末端(送信するマシンと受信するマシン)が十分な長さの
IPフラグメント組み立てを実装してればOKのはず、って事?
0399デフォルトの名無しさんNGNG
悪いことは言わないから、
UDPで500byte(目安)以上送信するのは止めとけ
0400デフォルトの名無しさんNGNG
IdHTTPでGetしてタイムアウトした時、タイムアウトはどうやって検知すればいいのでしょうか?
0401INETNGNG
ダウンロードの進行状況(受信バイト数
どうやってしらべるの?
どの言語を例にしてもらってもいいのでよろしくおながい!
0402□□■週間盗撮ベストランキング■□□NGNG
浜崎あ●み 盗撮ランキング1位
http://www.sagisou.sakura.ne.jp/~ippi/himitu/rank/ranklink.cgi?id=fish
松浦○や 盗撮ランキング2位
http://friends.rank.ne.jp/in.cgi?account=arifish
安倍な●み 盗撮ランキング3位
http://www.pvranking.com/in.asp?ID=6854
藤本●貴 盗撮ランキング4位
http://sagisou.sakura.ne.jp/~deai2/cgi/rank.cgi?arifish
後藤○希 盗撮ランキング5位
http://it.sakura.ne.jp/~www/www/ranklink.cgi?id=arifish

02年間ランキングベスト1はこの人!!!
http://www.candy.squares.net/mayonaka/sougo/cgi-bin/ranklink/ranklink.cgi?action=rank&id=fish
0403385NGNG
>>401
調べるも何も受信したサイズそのままだろ
何を聞きたいのかさっぱり分からん
足し算も出来ないのか?
0404デフォルトの名無しさんNGNG
>>328

結局、高速化できたの?
0405デフォルトの名無しさんNGNG
ある特定のアプリケーションの通信を優先させるようなことはできますでしょうか?
OSはWindowsです。
0406デフォルトの名無しさんNGNG
Win鯖なら、QoSがある
0407デフォルトの名無しさんNGNG
ServerじゃないとQoSって使えないの?
XPにもあったと思うが
0408デフォルトの名無しさんNGNG
http://www.agemasukudasai.com/bloom/
0409デフォルトの名無しさんNGNG
LinuxにもQoSあるよ
0410デフォルトの名無しさんNGNG
DoS?
0411デフォルトの名無しさんNGNG
= Denial of Service
0412401NGNG
>>403
バッファからとりだすとき、バッファになにもないという事態を避ける方法…まあいいや。ありがとよ…
0413デフォルトの名無しさんNGNG
このスレには QoS(Quality of Service) と DoS を混同してるヤシがいるのか?
0414デフォルトの名無しさんNGNG
>>413
Windows Server には、QoSよりDoSがお似合い、と揶揄しただけでしょ。
0415デフォルトの名無しさんNGNG
そのQosはプログラムから制御できるのですか?
0416デフォルトの名無しさんNGNG
QoSってQoS用のプロトコルで制御するもんなんじゃないの?
そりゃ遡ればどっかでAPIみつかるだろうけど。
0417デフォルトの名無しさんNGNG
サーバにあるワードファイルをバッチ(サーバに置いてある)で、
指定したクライアントPCのワードで読み込み(ワード起動)をしたいのですが

バッチにどのように書けばいいのでしょうか。
共有はされています。
初心者なので、申し訳ございませんができる限りわかりやすくしていただければ幸いです。
宜しくお願いします。

\\PC-SERVER2000\test.doc サーバのワードの場所です。
0418417NGNG
プログラムでクライアント側のIPアドレス等は取得し、書きますので
クライアント側のPC名は気にしないで下さい。

宜しく、おねがいします。
0419デフォルトの名無しさんNGNG
>>417
スレ、というか板違いだよ。それはネットワークプログラミングとは違う。
どこが適切かわからんけど、多分Windows板とかPC初心者とかで聞いたほうがいいよ。
0420デフォルトの名無しさんNGNG
マルチですよ
0421デフォルトの名無しさんNGNG
>>417
start \\PC-SERVER2000\test.doc
と書けばいいですよ
0422デフォルトの名無しさんNGNG
>>417
\\PC-SERVER2000\test.doc はありえない。
鯖名とシェア名とパス名が必要だ。
0423デフォルトの名無しさんNGNG
データをrecvとかrecvfromとかで受信する部分を関数として切り出し、
そこへの引数として相手のソケットを渡すようにします。その時、この関数の
中で、渡されたソケット(ディスクリプタ)が有効かどうかをチェックするように
したいのですが、良い方法がありますか?
0424デフォルトの名無しさんNGNG
「有効」の定義は何?
それがsocket()で作られたかどうか、ということ?
現在通信可能かどうか、ということ?
0425デフォルトの名無しさんNGNG
>>417
例えマルチでも礼くらい書け!ヴォケ
0426デフォルトの名無しさんNGNG
>>425
サーバー側のバッチ処理でサーバー上のDOCをクライアント側で開かせたいと言っているのだから
回答も見当違いでは?
自分でバックドアを開けないと無理だろう
virusでも作る気か?
0427デフォルトの名無しさんNGNG
>>426
そのバッチすら、サーバーで実行するとは書いてないわけだが。
0428デフォルトの名無しさんNGNG
今ネットワークプログラミングの練習にと簡単なFTPクライアントを作っているのですが、
とりあえずsocket()→bind()→listen()→accept()とやってFTPサーバに接続して、
データコネクションを一本張ったのはいいんですが、2回目以降データコネクションが張れません。
そこで質問です。
FTPクライアントプログラムでデータコネクションを複数回張りたい時
(例えばファイルリストを取得し、そこからファイルを選んでダウンロードしたいとき)
は、socket()→bind()→listen()→accept()の流れを繰り返す以外無いのでしょうか?
0429デフォルトの名無しさんNGNG
つうか、なんでクライアントなのにlisten()accept()しているのか小一時間(ry
0430428NGNG
>>429
あ、一応コマンド等送るためのソケットは別に確立してあるんです。
FTPはデータ通信用(表現おかし)ソケットが必要だって話なんですが。
ファイルリストとかファイルそのものを送受信するソケットです。
0431デフォルトの名無しさんNGNG
>>429
プ
0432デフォルトの名無しさんNGNG
>>431
ま、そんなに突っ込まないであげようよ。
ftpの設計がタコだった部分なんだし。

とはいえ、それに対して、passiveって解決もいまひとつ綺麗じゃない気がする...
0433デフォルトの名無しさんNGNG
C#のリモーティングに関して質問するのはスレ違いでしょうか?
なんか生ソケットとWinSockの話ばっかりなんで・・・
0434デフォルトの名無しさんNGNG
みんな、スティーブンス本は持ってすかね?
0435デフォルトの名無しさんNGNG
↑
X

◎ 持ってるんすかね
0436デフォルトの名無しさんNGNG
423

>>424
UDP socketにbindされた開放ポートを想定してます。
そして、それを通信可能かどうか事前にチェックしたいのですが。
(例えばポート開放に失敗したものがチェックされずにそのまま
渡されてしまったケース等を事前にエラーとして跳ねたいのです。)
0437デフォルトの名無しさんNGNG
>>433
C#相談室
0438デフォルトの名無しさんNGNG
>>436
なんだか状況がよく掴めないのですが (漏れって頭わる〜)、
socket() 〜 bind() あたりまでの一連の処理を一つにして、
途中でエラーが発生したらそのソケットは閉じてしまう…という方法では駄目?

 if((s = socket(…)) == エラー)
   エラー処理
 else if(bind(s, …) == エラー)
   ソケット s のクローズとエラー処理
 else
   正常にソケットを作る事ができた時の処理

こんな感じで…。

そうでもしない限り「中途半端にしか使用できないソケットで溢れかえる」
という状況になる気がしますが。

そういう事をしたいのではなく、あくまでソケットが有効かどうかを直前に調べたい
というのであれば、getsockname() あたりでソケットの情報が正しく
取り出せるかどうかをその都度チェックするしかないのではないでしょうか?

長文スマソ。
0439デフォルトの名無しさんNGNG
>>436
sendto/recvfromのたびに一々そういうチェックをするというのは実際的ではない
し、性能の面から云ってもあまりよろしいとは思えないし、そもそもそれが
必要になる状況が思いつかないんだが。。。

もしユーザ向けに提供するライブラリのようなものを書いていて、より
フールプルーフにしたい、といったことを考えているのであれば、生の
socket fdをユーザコードとやりとりせずに、それをラップするデータ構造を
用いる方向で考えたらどうか。それに状態フラグみたいなものを
持たせておいて、その値を信頼することにするわけだ。
0440デフォルトの名無しさんNGNG
win2kについてくるQoSって、
・両端がQoS対応のソフトでしか有効でない
ようなのばっかりみたいなんですが、そうなんでしょうか?

altqのWindows版みたいなのはどっかにないものでしょうか?
0441デフォルトの名無しさんNGNG
すいません、いきなりですが、質問します。

サーバーにGET要求するとき、”If-Modified-Since: Sat, 21 Dec 2002 05:08:58 GMT”と更新された最終日を教えますが、
その”Sat, 21 Dec 2002 05:08:58 GMT”はどのように、生成していますか?皆さん。
プログラム上でのその指定する日付の作成方法をしりたいのですが、教えていただけないでしょうか?
0442デフォルトの名無しさんNGNG
サーバーから来た文字列をそのまま返すんじゃなかったかな。
0443デフォルトの名無しさんNGNG
>>441
キャッシュする時に一緒に更新時刻の情報を保存するか、
保存した実ファイルの更新時刻を変更しとけばいい。

ブラウザやプロキシの場合は前者、普通のアプリなら後者かな?
時刻を書式化する方法を聞いているなら、各言語のスレでどうぞ。
0444デフォルトの名無しさんNGNG
ちなみに、wininet使ってりゃInternetTimeFromSystemTimeか。
0445デフォルトの名無しさんNGNG
ちょっと質問。
winsockで
POP3サーバーに LISTコマンドを送って得られるメールサイズと
実際にrecvで読みこんだバイト数 ( recvの戻り値 ) が違っていて
recvを終わらせるタイミングが取れません。
今は ".\r\n"がバッファに入っていれば、ループから抜けるようにしています。
なにか良い方法をご教授下さい。
0446デフォルトの名無しさんNGNG
LISTで正しいサイズ貰える。
受信した文字をよ〜く見れば おのずから原因が導き出せるとみた。
0447デフォルトの名無しさんNGNG
UDPのデータグラムサイズの最大長は、
IPのパケット長フィールドの長さ(16ビット)のみに依存しているとすれば
65535バイトなんだけど、
「詳解TCP/IP」によると

 UDPソケットにとってアプリケーションが読み書きできる最大サイズ

と直接関係する、とある。

ぶっちゃけ、LinuxとかだとUDPデータグラムの最大長はいくつにできるのでしょうか?
(あとでIP層でフラグメントされても構わないものとします。)

よろしこ。
0448デフォルトの名無しさんNGNG
> (あとでIP層でフラグメントされても構わないものとします。)
UDPのことぜんぜんわかってないだろ
0449447NGNG
>>448
>UDPのことぜんぜんわかってないだろ
あっ、そうだ。
すまんすまん。
これおかしいな。
0450デフォルトの名無しさんNGNG
ん?
どのあたりがおかしいの?
0451デフォルトの名無しさんNGNG
IPv4のUDPならフラグメント化はありえるよなあ
0452447NGNG
> IPのパケット長フィールドの長さ(16ビット)のみに
> 依存しているとすれば 65535バイト

訂正
 65535 −> 65535 - 20(IPヘッダ) = 65515

0453デフォルトの名無しさんNGNG
>>452
IPフラグメントのこと書いてるのに、IPヘッダサイズは関係ないってわからない?
0454デフォルトの名無しさんNGNG
UDPサイズは、IPヘッダではなく、UDPヘッダのパケット長フィールドで決まる。
2バイト。ただし、データ部+UDPヘッダ(8byte)込みのサイズをあらわす。
0455452NGNG
>>453
間違ってたのは分かった。
そこらへんはちゃんと考えずに適当に書いただけだから勘弁しろ。

>>454
IPヘッダにしろ、UDPヘッダにしろ、
パケット長フィールドには”結果”としての値が入るだけなので
そこから逆算したとして話をしたからまずかったな。スマソ。

要するに、UDPデータグラムのサイズの制限について
ソケットのどーのこーのというところが不明な点があるので
お前ら知ってたら教えてください、ということです。
0456デフォルトの名無しさんNGNG
ブロードキャストパケットを除けば、普通は 64KB近くまで可能な実装が多いはず、少なくとも UNIX系は。
つーか、ためしてみればいいのに。

ただ、多数にフラグメントしてる場合、パケットロスが無くても、ルータなどが勝手に破棄することがある。
せいぜい、8KB程度までにしとくのが無難。
0457デフォルトの名無しさんNGNG
ソケットで画像転送するのはやっぱり画像データをしこしこと送るってことですか。
0458デフォルトの名無しさんNGNG
別にワッシワッシと送ってもらっても結構ですよ
0459デフォルトの名無しさんNGNG
漏れはギュワーンって送ってるけど。
0460デフォルトの名無しさんNGNG
漏れはボトボトと送ってるな。
0461デフォルトの名無しさんNGNG
ワシは頻尿ぎみに送ってる。
0462デフォルトの名無しさんNGNG
だらだらと垂れ流してる
0463デフォルトの名無しさんNGNG
どこかで、多数のルーターをまたいでインターネット経由でたくさんUDPパケットを
同じホスト間で送る場合はTCPよりも遅くなるって話を聞いたんですが、何が原因で
こうなるんですか?
0464デフォルトの名無しさんNGNG
UNIX Socket FAQにあった、「ヨーロッパ方面では、X.25が云々」という話か?
0465デフォルトの名無しさんNGNG
>>463
UDPには輻輳制御機構がないから、何も考えずにやると、経路上のボトル
ネックとなる区間の帯域を溢れるようなパケットを送出してしまい、
パケット損失が大きくなる結果、実質的に、そういう結果になる。
もっとも、その経路の帯域が十分広く、かつ空いていて、さらに遅延が
非常に大きい場合には、逆の結果が出ることもないわけではないが、
通常、空いているかどうかの保証なんてできないから、ある程度以上の
量のデータを送る場合には TCP を使う方が無難。

ストリーミング系のアプリケーションだと、ある程度のパケットの損失
は OK で、かつ TCPの再送機構がリアルタイム性の邪魔になるので、TCP
を使わず UDP その他のプロトコルを使うが、この場合、損失率が増えたら
送信レートを下げるような作りこみが、アプリケーションレベルで必要になる。

>>464
それって、もう過去の話だよな。

0466デフォルトの名無しさんNGNG
>>464
「ヨーロッパ方面では」ってヨーロッパ方面で昔はなんか特殊事情でもあったの?
0467デフォルトの名無しさんNGNG
>>466
X.25が大変普及してました。

>>447
まあ、自分のmachineのinterfaceのMTUを越えないのがいいでしょう。
こだわるのであれば、Path MTU Discovery(RFC1191)を。
0468pthread_create()が...NGNG
質問、エラーが出てしまいます。
pthread_create: Error 0
どのようにやるのがよいのでしょうか?
よろしくおねがいします。


void *function(void *sock) {
...
}
main()
{
pthread_t tid;
pthread_attr_t attr;
...
newsockfd = accept(sockfd, (struct sockaddr *)&cli_addr, &clilen);
if(pthread_create(&tid, &attr, function, (void *)newsockfd) != 0) {
perror ("pthread_create");
exit(1);
}
}
0469デフォルトの名無しさんNGNG
それはネットワークプログラミングの質問なのか?
0470pthread_create()が... NGNG
gcc foo.c -lpthread
で大丈夫でした。

multithreaded server、
pthread に関してはどこで質問した方がよいの?
0471デフォルトの名無しさんNGNG
>>470
マルチスレッドプログラミング相談室 その2
http://pc2.2ch.net/test/read.cgi/tech/1037636153/
0472デフォルトの名無しさんNGNG
あー
> multithreaded server
についてはここでもいいかな。
0473pthread_create()が...NGNG
>471
Thanks.
0474デフォルトの名無しさんNGNG
perlでtelnetのようなものを作りたいのですが、
httpの場合空行を送った時に返信が返ってきて、
smtpの場合一行ごとに返信が返ってきますよね。
それをその都度STDOUTに表示させたいのですがどうしたらいいでしょう。
0475デフォルトの名無しさんNGNG
> httpの場合空行を送った時に返信が返ってきて、
> smtpの場合一行ごとに返信が返ってきますよね。

へ?
0476474NGNG
>>475
httpの場合も正しくないデータを送ったら返信が返ってきますね。
$buf = <SOCKET> みたいにすると返信を待って、永久に止ってしまうので
どうしたらいいのかなあと思ったんです。
0477デフォルトの名無しさんNGNG
>>474
stdin --> your perl client --(TCP/IP)--> server
stdout <-- your perl client <-(TCP/IP)-- server

のような二本のパイプラインを扱う単純なecho clientのような
ものを作りたい、ということかな?
パイプラインが2本なので、シングルプロセス・シングルスレッドで
I/Oの多重化を行わなければデッドロックする場合があるのは当たり前。
1) select, pollなどを用いてI/Oの多重化を行う。
2) connect後にforkしてそれぞれのプロセスに一つのパイプラインを扱わせる
のどちらかを行えばいいだろう。

0478デフォルトの名無しさんNGNG
(・∀・)ニヤニヤ
0479474NGNG
>>477
そういったことをしないといけないんですね。
調べてみます。ありがとうございました。
0480デフォルトの名無しさんNGNG
GETでRangeが不可なときはどんなステータスコードが帰ってくるのか知りたい
0481デフォルトの名無しさんNGNG
レスポンスに想定されたレンジが入ってなければ不可とみなす
しかないんじゃないかなあ。
0482デフォルトの名無しさんNGNG
listenってselectできるんですか?
0483デフォルトの名無しさんNGNG
>>480  開始場所がファイルサイズを超えて要求した場合は
416 Requested Range Not Satisfiable 食らう。
あとサーバーがRangeに対応してない時は知らん。
0484デフォルトの名無しさんNGNG
RFC2616に準拠した鯖だと416が返る。
ただ、416が返る時でも、Content-Lengthが0の場合と
*/nnnのnnn(Content-Range: */nnnのnnn)の場合の両方あったような。

RFC2068準拠だと200が返る(Rangeは無視される)
0485デフォルトの名無しさんNGNG
>>482
それはブロックしないと思うが・・
0486480NGNG
レスくれた方どうも。 例外処理の参考になりそうです。
0487デフォルトの名無しさんNGNG
>>482,485
たぶん、TCP状態遷移の「LISTEN状態」から、
SYNを受けた後の「SYN RCVD状態」への遷移を、
select(2)で検知できるか、と聞きたいんじゃないのかな?
つまりaccept(2)する代りにselect(2)していいか、と。

FAQだけども、
答え: よい。readのmaskが立つからその後にaccept(2)すればいい。
0488デフォルトの名無しさんNGNG
P2Pだと、IPが相手に知られてしまう。これを防ぐには
マッチングサーバを介して接続すれば良い。

…という記述を本で読み、これだ!と快哉を叫んだのですが、
よくよく考えると、どうやったって繋がっている以上
相手のIPなんてnetstatでも打てば、まる分かりな気もします。

本当にマッチングサーバを介した場合は、匿名性を維持できるのでしょうか?
0489デフォルトの名無しさんNGNG
すいません、age忘れ
0490デフォルトの名無しさんNGNG
>489
P2Pじゃ、間に受け皿でもない限り、どうやっても匿名にはならない。
MXやnyみたいなのが匿名と言われてるのは、IPとかじゃなくて、
その上で流れるデータの所在。
スイス銀行のマネーロンダリングみたいな物?
繋がっているのは特定のIPでも、流れているファイル自体は
そいつの所有物とはかぎらない、とか。
繋げている以上、相手のIPは同類の犯罪者なわけだけど。
クライアントにトロイ仕掛けてIP情報逆流させるなりで、
繋げてる奴全員列挙できれば丸ごとしょっ引かれるかも。
実際はおれも素人なのでわからんです。
間違ってたらフォローお願いします。
0491488NGNG
>>490
素人なんてとんでもない、大変勉強になります。

MXは聞いたことありますが、nyってのは初耳でした。
MXってP2Pなんですか…知らなかった…。

質問とは関係ないのですが、マッチングサーバに負荷をかけない方法を
模索してまして…MXのやり方は参考になりそうですねぇ…。資料探してみます。

そして、IPを隠すことはやはり不可能なんですね。罪のないチャットソフトとかなら
そこまで匿名性を考慮しなくても良さそうですが、チャット話がこじれて報復に
ポートスキャンとか…。うーん、どこまで責任を持てばいいのだろう…。

つまらない質問にレスありがとうございました。もちっと悩んできます。
0492デフォルトの名無しさんNGNG
ハイブリッドP2Pね。
0493デフォルトの名無しさんNGNG
>>491
>MXは聞いたことありますが、nyってのは初耳でした。
>MXってP2Pなんですか…知らなかった…。
とかいってるヤシが、
>ポートスキャンとか…。うーん、どこまで責任を持てばいいのだろう…。
責任どうのと言える立場なの?わかってねぇな。
てめーは、狼煙の火付け係程度なんだよ。

集落と集落を道でつないだら、伝染病のリスクが増したが交易で栄えた、ってころから
再ベンキョしろ。ばかレオパルドでも知ってたことだぞ。
0494488NGNG
>>492
キーワードのご教授、ありがとうございます。
思ったより資料多いですねぇ…助かりました。
0495デフォルトの名無しさんNGNG
マルチキャストパケットの Listen に入るとき、マシンがネットワークに
接続していないと (ネットワークインターフェースがローカルループバック
しかないと) ソケットのオープンに失敗するんですが、そういうものなので
しょうか? こういう場合はケーブルが接続されるまで Sleep & Retry する
しかない?
0496デフォルトの名無しさんNGNG
各種ダウンローダーにある機能「帯域制限」って、どうやって実装してるの?
0497デフォルトの名無しさんNGNG
適当にウェイト入れてるだけでしょ
0498デフォルトの名無しさんNGNG
厨房ですいませんでWinSockを使ったとき、インターネットに自動に
繋げるにはどうしたらよいのですか。
0499デフォルトの名無しさんNGNG
>>498
RASじゃなかったかな
0500デフォルトの名無しさんNGNG
connectやgethostbynameで勝手につながると思ったが
0501デフォルトの名無しさんNGNG
勝手すぎてlocalhost内とかLAN内で完結してるのに
ダイヤルアップのダイアログを出されて困ったり
0502デフォルトの名無しさんNGNG
>>501
明示することはできるよ
0503デフォルトの名無しさんNGNG
Winsock2とUnix(Linux)のsocketは繋がるんでしょうか?
0504デフォルトの名無しさんNGNG
>>503
深い意味はないよね?
繋がるよ。
0505デフォルトの名無しさんNGNG
Linuxで動いてるApacheにMS製品が繋がるんですか?という質問みたいだな、、、
0506デフォルトの名無しさんNGNG
>>505
日経しか読んでないオヤジ連中ならそう考えるだろうねえ・・・
繋がる、のレベルにもよるが
0507デフォルトの名無しさんNGNG
>>503
繋がらない
なぜなら「Unix(Linux)」こんな訳の分からないもの実在しないから
0508デフォルトの名無しさんNGNG
訳が分からないっていうのは単に勉強不足なだけじゃないの?
winsock 自体、もともと UNIX の BSD socket をベースにした
仕様だし、別にそんなに変なものじゃないよ。
まあ、winsock2 は結構機能が増えてるけど。

答は504で合ってるでしょ。
0509385NGNG
socketとTCP/IPをごっちゃにしている人間がいるようだが、
繋がるかどうかはそこで使用されるプロトコルの問題であって、
socketが繋がるわけではない
よってsocketは繋がらないが正解
それとLinuxはUNIXではない
0510デフォルトの名無しさんNGNG
日経オヤジ的に繋がるというと、運用環境が整っていることまで
含んでいるから注意な。
0511デフォルトの名無しさんNGNG
>>509
そういう意味では、BSDだってUNIXじゃないでそ。
つっこむならBSDもLinuxもUNIXじゃないってつっこんでYO!
0512デフォルトの名無しさんNGNG
BSDやLinuxやUnixの区別が重要なコンテキスト以外で区別したがる
ヤシは、経験上はUnixを勉強したてで他人に蘊蓄を語りたくて
仕方がないか、文脈の判断もできないか、脊髄反射でレスつけてる
だけのDQNが多いな。

0513デフォルトの名無しさんNGNG
>>511
きちんと調べてから書き込め
UNIXではないBSDはライセンスにひっかかるコードを削除したBSDLite系から
Socketの源流は4.4BSDなのでUNIXのライセンスが存在する
0514デフォルトの名無しさんNGNG
>>513
微妙にヘンなこと言ってませんか?
0515デフォルトの名無しさんNGNG
513は、UNIXという言葉を、旧AT&T→USL→ノベル→SCOからUNIXのライセンスを
得たソフトウェアであるという意味で定義したいようでつね。その意味でいうと、
オリジナルのsocket仕様を作った4.1aBSDは、UNIXですが、現代の全てのBSDの
元である4.4BSD-Liteは、裁判沙汰からの和解の結果、現SCOの持つUNIXのライ
センスを必要としないと確定していまつ。ですから、4.4BSD-Lite以降のOS、
すなわち現代の全てのBSDは全てUNIXではないでつ。
513の言いたいことは、たぶん、こういうことでしょう。

しかし、現時点での、UNIXという単語の公式な定義は、Single UNIX Specification
に適合したソフトウェアであることでつ。従って、SUS に適合しっこない
4.1/4.2BSDは、そういう現代的な意味でのUNIXではないでつ。
513のUNIXの定義よりも、こちらのUNIXの定義を選ぶのが、現時点では正式でそ。
というわけで、513よりも511の方が、現代的UNIXの定義の上からは、正しいでつ。
0516日経オヤジNGNG
>>515
そういうややこしいことは、顧問の紺猿に任せてあるから。
0517デフォルトの名無しさんNGNG
MACもUNIXですか?
0518デフォルトの名無しさんNGNG
まあ、AF_UNIXなソケットはつながらない訳だが。
0519デフォルトの名無しさんNGNG
>>517

Lite以降のBSDや、Linuxのことを指して(UNIX互換OSという意味で)
UNIXと呼ぶことがある (例えばLite系のBSDスレは、UNIX板にある。
そういう意味では、MacOS X は UNIX。
Mac は、OS じゃなくてハードウェアの名前だから、UNIXじゃない。
あと、NT系のカーネルを持つWindowsはPOSIX.1互換機能を持つが、
それだけだと互換度が全然足らんのでUNIXとは普通呼ばれない。

勿論511や513の言ってる意味では、MacOS XはUNIXじゃない。
511や513の言ってる意味でのBSDでは、ある。

>>518

それ言うなら、PF_NSが繋がらないUNIXも沢山ありそうだぞ。
0520デフォルトの名無しさんNGNG
ネットワークプログラムのデバッグってできるの?
0521デフォルトの名無しさんNGNG
できるよ。
0522デフォルトの名無しさんNGNG
できない奴もいるよ。
0523デフォルトの名無しさんNGNG
少なくとも俺はできないよ
0524385NGNG
デバッグにもいろいろな方法があるがそれが出来なと言うことは
バグが出たら二度と直せないことになるが?
0525デフォルトの名無しさんNGNG
>>524
絶対バグは作りこまないと言う方法もある。
0526デフォルトの名無しさんNGNG
>>525
それは現実的ではない。
ましてや「デバッグ出来ない」と明言してしまうような人間にとっては。
0527デフォルトの名無しさんNGNG
ネタニマジレス


  _n
 ( l    _、_
  \ \ ( <_,` )
   ヽ___ ̄ ̄  )   カコイイ!!
     /    /
0528523NGNG
バグが出ても仕様と言い張って、絶対に直さないよ。
そのうち誰かが直してくれるし。
0529523NGNG
ネットワークプログラミングの良いところは、
C/Sのどちらかがバグってても、もう一方が頑張れば
なんとなく誤魔化せて動いてるように見えるってことかな。
0530デフォルトの名無しさんNGNG
デバッグ゙不能って…釣りだよね。
0531523NGNG
描き方が不味かったようですね。
"できない"ではなく"する必要がない"に近いでしょう。
0532デフォルトの名無しさんNGNG
直す必要が無いバグばっかりでもあるまい。
直さなくていい類のものなら放置もアリだろうけど、
>>絶対に直さないよ。
とか
>>そのうち誰かが直してくれるし。
という言葉は何なのだ…ヤパーリ釣り?
0533デフォルトの名無しさんNGNG
>>532
> という言葉は何なのだ…ヤパーリ釣り?

それ以外に何があるのかと...。
0534デフォルトの名無しさんNGNG
POP before SMTP対応のクライアントを作っています。

1.110番ポートへアクセス
2.USER xxxxxxxx
3.PASS xxxxxxxx
4.QUIT
5.切断
6.25番ポートへアクセス
7.HELO
8.MAIL FROM:xxxxx@xxxxxxxx
以下略

と連続でやっているのですが、
時々rcpthostsにIPアドレスが反映される前に
SMTPでメイル送信しようとしてエラーになってしまいます。

POPとSMTPの間にsleepかなんか入れて間隔をあけたほうがよいのでしょうか?
もしくは、POPのSTATかなんかも行ってみるか...
0535デフォルトの名無しさんNGNG
何故エラーの内容を書かないのか、エラーの内容が知られてはいけないのか謎だ
0536534NGNG
エラーはこんな感じです。
553 sorry,that domain isn't in my list of allowed rcpthosts (#5.7.1)
0537デフォルトの名無しさんNGNG
>>534
サーバからのレスポンス ( 200 xxx is welcome など ) を確認してから
QUIT してクローズしてみたらどうでしょうか。
0538534NGNG
>>537
POPサーバのレスポンスは確認しています。
+OK
という応答メッセージが返ってきます。

普段はうまく動いているのですが
時々エラーが出ています。
もしかしたら、サーバに負荷がかかっていると
rcpthostsの反映に時間が掛かってしまうのかな?
と思っているのですが...
0539bloomNGNG
http://www.agemasukudasai.com/bloom/
0540デフォルトの名無しさんNGNG
pop が +ok で、smtp が not allowed になるのでしたら、
やはり、お考えのように sleep でタイミングを取るか、
retry するように実装することになるでしょうか。

rfc にはそのあたりの記述はなさそうですし。
0541デフォルトの名無しさんNGNG
>>538
どうしてじゃーゴラァ
とISPに聞くのが一番ではないかと。
0542デフォルトの名無しさんNGNG
一般的なメーラーは待ち時間が設定できるようになっているが、そうしない理由は?
0543デフォルトの名無しさんNGNG
>>542
一般的なメーラーってたとえば?

俺の知ってるメイルクライアントにはそんな設定機能はついてなかったが。
一般的じゃないのかな?
MS製品とBecky!とShurikenだけど。
...確かに一般的じゃないかもシレソ
0544デフォルトの名無しさんNGNG
>>538
clientは、直前のPOPのauth.に成功した確信があるんだから、

> 553 sorry,that domain isn't in my list of allowed rcpthosts (#5.7.1)

をみたら、sleepしてretryが一番素直な仕様なんじゃない?
retryを、6-8のどこから始めるべきなのかはしらんけど。
# 時間、回数(>=0)が指定できればなおよし。
0545デフォルトの名無しさんNGNG
HTTPのHEADだけで
Web上のコンテンツが更新されているかどうかというのを完璧に
チェックすることってできますか?
0546デフォルトの名無しさんNGNG
> 完璧に

サーバーが嘘ついたら無理
0547デフォルトの名無しさんNGNG
>>543
少なくともBeckyは指定できるがきちんと確認したのか?
0548デフォルトの名無しさんNGNG
>サーバーが嘘ついたら無理
じゃあ、よくあるリンクチェッカーみたいなものは
毎回GETして以前キャッシュしたものと比べてるのかなぁ。
0549デフォルトの名無しさんNGNG
>>548
サーバは嘘をつかないという前提のもとに(ry
0550デフォルトの名無しさんNGNG
>>548
読解力、理解力の無い奴だな。
0551デフォルトの名無しさんNGNG
誰かおせーて。

bindって自分のホストのアドレス、ポートを設定するって本に書いてあるんだけど、
sin_addr.s_addr = htonl(INADDR_ANY)
の時も、する必要があるの?

なんか、bindの存在理由がよくわからないっす。

NIC2枚差しで、どちらか一方のNICでのみ通信の時しか活躍しない?
0552デフォルトの名無しさんNGNG
>>551
IPアドレスが複数ある時の問題であって
NICの数は関係ない
0553デフォルトの名無しさんNGNG
>>552
なるほど。
レスありがとです。
0554デフォルトの名無しさんNGNG
>>551
サーバー側はlistenするポート(とアドレス)を設定せにゃならんから、必須だって事はわかるよね?
クライアント側でも使用するポートやアドレスを自分で決めたい場合があるんだよ。

例えば、サーバーが特権ポートから接続されることを要求してるとか、
サーバーに対して複数の経路から接続できる場合に、どの経路を使うかを自分で決めたいとか。

bind(2)せずにconnect(2)した場合に適当な設定(INADDR_ANY、空いてる非特権ポート)を
使わずにエラーとするのはsocketの仕様としか言いようが無い。
ようするに、お行儀よくbind(2)しろってこった。
0555デフォルトの名無しさんNGNG
bindってDNSデーモンのことだと思ってしまった
0556デフォルトの名無しさんNGNG
バークレイリケットでマルチキャストのプログラムって
作れます?
0557デフォルトの名無しさんNGNG
>>555 このスレでソレはナイだろ(w
0558デフォルトの名無しさんNGNG
MSNメッセンジャースレあるじゃん。
あれ見て、なかなか面白そうだなぁと思って、
Linuxのコンソールで動くメッセクローンを作り始めてみた。

かなりいい勉強になるし、
やっぱりプログラムって楽しいね。

ところで、Cである文字列からIPアドレスを抜き出すのってどうやると効率的なの?

今、かなり無理矢理抜いてるんだけど、諸兄のご助言お願いします。
0559デフォルトの名無しさんNGNG
それは、たとえば2chのスレの中から、IPアドレスを検出する、という話か?
0560デフォルトの名無しさんNGNG
ある文字列というのがどういうものなのか説明せずに
回答者にエスパーであることを望むお前はどちらの何様?
0561558NGNG
言葉足らずでスマソ。

まずC言語です。
ある文字列とはたとえば、
char *string="hogehoge 192.168.0.1 hogehoge"
みたいな文字列です。
0562デフォルトの名無しさんNGNG
数字を見つけて数字が終わるまでにピリオドが3つある文字列
0563デフォルトの名無しさんNGNG
を検索する
0564デフォルトの名無しさんNGNG
>>1
板違い
WebProg板行けよボケが
0565デフォルトの名無しさんNGNG
>>564
気違い
電波板逝けよボケが
0566デフォルトの名無しさんNGNG
香ばしくなってまいりました
0567デフォルトの名無しさんNGNG
釣れた
0568558NGNG
>>562
とりあえず、それでやってみます。
0569デフォルトの名無しさんNGNG
>>556
出来るよ。sf.netに幾らでもサンプルが転がってるよ。

ところで、
>>554
> bind(2)せずにconnect(2)した場合に適当な設定(INADDR_ANY、空いてる非特権ポート)
> を使わずにエラーとするのはsocketの仕様としか言いようが無い。

これ何? IPアドレスを複数持っていると明示的にbind(2)しないといけない、
実装があるということ? 仕様ではないと思うけども。
0570デフォルトの名無しさんNGNG
>>569じゃないけど、
IP Aliasを使う場合の事を言ってるのかな?

そうじゃなくて、例えばループバックで127.0.0.1と、NICに192.168.0.1
みたいな場合だって、ある意味IPアドレスを複数持ってる事になるの?
0571デフォルトの名無しさんNGNG
パソ初心者板から誘導されました。よろしくおねがいします。

ネットワークがわかる偉い皆様、助けてください。
会社で、仕事中に2ちゃんねるしてる時に限って、画面が上下にいきなり揺れます。
前の会社では、システム課が別にあって、CP関係で分からないことがあって電話すると
向こうから私の画面をいじって説明してくれたりしてたんです。これもネットワーク
ならではですよね?
で、今の会社も、掲示板とかあるのでネットワークは組まれてるのですが
画面の監視までされてるのかどうか、どこを見たらわかりますか?
ネットワークアイコンからは、みんなのデスクトップやマイドキュメントの
「フォルダ」は見れたけど、画面って見れるの?
たまにはこんな初心者も相手してやってください・・・・
0572571NGNG
あ、ちなみに揺れるというのは、
スクロールバーをつかんで上下にゆすった感じ。
思い込みかもしれないけど、いかにも「見てるぞ」って告知みたいで
腹立たしいんです・・・・・腹たてれる立場じゃないけど。
0573デフォルトの名無しさんNGNG
誘導した奴を殴って来い
0574デフォルトの名無しさんNGNG
先輩!すごい新人が来ますた!
0575デフォルトの名無しさんNGNG
ネタとしてはなかなかオモロイな(w
0576571NGNG
>573
殴りたいッスよ・・・・さすが初心者板、分からないようでした。
先輩、たのみます、ネタじゃないから悲しいっすよ・・・
0577デフォルトの名無しさんNGNG
>>571
どのスレの何番からきましたか?
教えてください。
0578571NGNG
「パソコン初心者板総合質問スレッド」というところです。ただ、私がそこに
縋ったのが2月中旬に、会社からだったのですが、そこは今すでにVol.329 で
今日たった板のようです。私が行った時VOL何だったのかは覚えてません。
そこと、「くだらねぇ質問はここに書きこめ」という所です。
二箇所で聞いたらマルチなんですよね、知らなくて。
「プログラムとかネットワーク板にいけヴォケ」扱いでした・・・・
0579デフォルトの名無しさんNGNG
>>571
ウソはもう少しうまくつこうね。
ウソの上塗りは傷口を広げるだけですよ。
0580571NGNG
あーあもう・・・・
探せるもんなら探してるよ過去ログ・・・
0581デフォルトの名無しさんNGNG
/etc/hostsで
127.0.0.1 localhost
192.168.0.1 hoge
としているのに gethostbyaddrで 127.0.0.1 のホスト名を調べると hoge が返ってくるのは
どうしてですか?
0582デフォルトの名無しさんNGNG
>>580
> あーあもう・・・・
> 探せるもんなら探してるよ過去ログ・・・
このスレを読んで、いいかげん、スレ違いだということに気づいたらどうなの?
0583デフォルトの名無しさんNGNG
571は透明あぼーんしました
0584デフォルトの名無しさんNGNG
ついでに574も透明あぼーんしました
0585デフォルトの名無しさんNGNG
>>571
とりあえずウイルスチェックしろ
0586デフォルトの名無しさんNGNG
>>581
OSもライブラリもわかんねーんであれなんだけど、とりあえず、
$ ltrace getent hosts 127.0.0.1
$ strace getent hosts 127.0.0.1
とかやってみれば? で続きはそのOSの板かライブラリのスレで。
0587デフォルトの名無しさんNGNG
hostsの設定じゃなくてそのマシン自体の名前を返しているのでは?
0588デフォルトの名無しさんNGNG
>>571
あんた監視されてるんだよ(w
http://www.beyou.to/usr/mithras/
0589デフォルトの名無しさんNGNG
>>588
ワロタ
PCの画面を盗聴(?)するアプリの存在は知ってたが、
商品として売り出すとは。
商魂たくましい会社だな(w
0590デフォルトの名無しさんNGNG
>>571
LANとは別に画面キャプする方法もあるよ
見慣れない装置が繋がったりしてないか?
0591581NGNG
>>571みたいなスレ違いな質問にはみんな答えるのに
>>581には誰も答えてくれない (´・ω・`)ショボーン
0592デフォルトの名無しさんNGNG
あれ?2ちゃんって質問にはちゃんと答えるのが義務だったんだ。ふーん、初耳。
で、>>586は無視?
0593デフォルトの名無しさんNGNG
>>581
hostent.h_addr_listには何が入ってますか?
0594デフォルトの名無しさんNGNG
>>591
>>571はいじるのが面白そうだから反応した人が多かったかと。。
0595デフォルトの名無しさんNGNG

0596デフォルトの名無しさんNGNG
>>591
>>587で答えたんだけど・・・
0597デフォルトの名無しさんNGNG
全銀TCP/IPってなんなのでしょうか?
TCP/IPやSNAとかと並ぶ物?
HTTPやFTPと並ぶ物?
それとも全くの別物なんでしょうか。

調べてみると、ライブラリが販売されているようで、
TCP/IP上で動くような感じがするので、HTTPや
FTPと並列の物のような気もするんだけど、
ホストとも通信出来るらしいので別物のような気もします。
みんななら、ライブラリ使わなくても1から実装出来ちゃうんですか?
0598デフォルトの名無しさんNGNG
ライブラリって何を指して言ってる?
ちなみにソケットライブラリさえあれば俺みたいな素人でも色々できる。
0599デフォルトの名無しさんNGNG
>>597
全銀プロトコル(通称) over TCP/IPのことでしょ。
http://www.net.intap.or.jp/INTAP/information/journal/no.49/intro49.htm

> ホストとも通信出来るらしいので別物のような気もします。

そりゃ、over TCP/IPじゃなくて、半二重ベーシック手順の昔のやつ。
こっちはJISに規格票があるんじゃなかったかな。

> みんななら、ライブラリ使わなくても1から実装出来ちゃうんですか?

時間もったいないから、んなことは止めた方がいいよ。

0600デフォルトの名無しさんNGNG
プログラム勉強するなら何から始めればいいか誰か漏れに教えてください
0601デフォルトの名無しさんNGNG
>>600
スレ選び
0602デフォルトの名無しさんNGNG
>>600
勉強する方法を人に聞かないで自分で考え試行錯誤することから
でも、もう聞いちゃったので無理
諦めるしかない
0603デフォルトの名無しさんNGNG
あーあ
0604597NGNG
>>598
こんな感じのものを考えてます。
http://www.msol.co.jp/senet/emulator/ZentcpDOWN.html
http://www.intercom.co.jp/bw/tcp/middleware.html

>>599
over TCP/IPなんすね。教えてもらったページを読めば
下位レイヤーにTCP/IP使っているのはよーくわかりました。
さすがに、ゴリゴリと1から作る奴はいないですよね。
もし、そーいう話が来たら上のような既存品を上手く
流用しようと思います。

そんでは。
0605デフォルトの名無しさんNGNG
個人で作ることを前提として。
俺ならこんなのに金払うのはバカらしいから自分で作る。
0606599NGNG
>>600
推薦図書スレに行け。

>>604
> さすがに、ゴリゴリと1から作る奴はいないですよね。

いや、俺は10年以上前、学生バイトでover TCP/IPに相当するものを造らされた。
単にTCP/IP経路をイントラネットのtunnelingに使うだけなので、
layer 3より上に立ち入る必要はない、と主張したのだが、
layer 7 gatewayを作ることになった。(何の変換もなし(藁)

状態遷移させるだけなので簡単だけど、
糞プロトコルだから、得るところが何もない。
なるほどと思えるプロトコル設計がまるでない。手間がかかるだけのやっつけ仕事。

既存のライブラリ使って、後でライブラリを入れ替えられるような
ライブラリwrappingの設計を真面目にやった方がいいよ。

over TCP/IPの版、TCP使ってるのに2048byteが上限なのが笑えるよな。
どうしても上限付けたいなら、前と同じにしておけば下位互換性も持つのに。アフォ
0607デフォルトの名無しさんNGNG
Windowsでウィンドウを持たないアプリなので、winsock2のイベントオブジェクトを使おうとしています。
で、質問なのですが
WSAAsyncGetHostByNameのイベントオブジェクト版ってのはあるのでしょうか?
0608デフォルトの名無しさんNGNG
>>599
>> ホストとも通信出来るらしいので別物のような気もします。
> そりゃ、over TCP/IPじゃなくて、半二重ベーシック手順の昔のやつ。

最近のホストは、LAN インターフェースぐらい持ってるから、over TCP/IP なんかも直接繋げる。
0609デフォルトの名無しさんNGNG
>>607
スレッド生成して、gethostbyname() から結果が返ってくればイベントをセットすればいいだけかと...。
0610デフォルトの名無しさんNGNG
>>609
TerminateProcess以外の手段で問い合わせをキャンセルできますか?
0611デフォルトの名無しさんNGNG
もといTerminateThread
どっちにしてもかなり最後の手段なのであまり使いたくない
0612デフォルトの名無しさんNGNG
>>607
イベント版は無いので、API用にダミーウィンドウを動作させるしかないかと。
0613デフォルトの名無しさんNGNG
>>607
イベントを利用するだけならウインドウは必要ないが、
いったい何のために作るの?
0614デフォルトの名無しさんNGNG
自分でDNS鯖に投げれ。
0615デフォルトの名無しさんNGNG
hostsがどうとかNISがこうとかWinならlmhostsやNetBIOSやWINSが
ああとかややこしそうなので車輪の再発明は避けたい
0616デフォルトの名無しさんNGNG
フレッツADSLを利用しているのですが、ルータの外側NICにグローバルIPを割り振られて
内側はIPマスカレードにしています。
このような環境でルータの外側NICのIPアドレスを取得したいのですがどのような方法が
あるのでしょうか?
0617デフォルトの名無しさんNGNG
>>616
公開IRCサーバにでも繋げて自分の情報をとれば?
0618デフォルトの名無しさんNGNG
やっぱり無理みたいですね。
0619デフォルトの名無しさんNGNG
ルータからPPPの情報を取り出せればいいんだろうけど、
あんまりそういう話は聞かないねえ
0620デフォルトの名無しさんNGNG
UPnPが使えればなんとかなるかも
0621デフォルトの名無しさんNGNG
>>616
CheckIP でググれば、アクセスしてきたホストの IP アドレスを返してくれるサーバーがいっぱいある。
(DDNS のために提供してらしい。)

例えば、http://dynamic.zoneedit.com/checkip.html
0622デフォルトの名無しさんNGNG
>>621
あっ、ありがとうございます。
さすがこのスレの人はレベル高いですねー
0623デフォルトの名無しさんNGNG
>616
透過串が刺さってたらどうする?
0624デフォルトの名無しさんNGNG
>>616
ルーターは何使ってるんだろ?
ほとんどのADSLのルータって、ウェブの管理インターフェース持ってると
思うし、その管理画面上から WAN側の IP 情報を取得できると思うので、
perl かなんかで自動的にルータにアクセスするスクリプトでも書いたら
どうだろう?オレは前はメルコのルータ使ってたときはそうやって自動取得
してたよ。 今は Aterm を使っていて、Atermは syslog の機能を持っている
ので、他のマシンに syslog 飛ばしてそっちでメッセージ解釈させて IP を
取得してるけどね。
0625デフォルトの名無しさんNGNG
>>623
透過串ってなんですか?直接>>621のサイトにconnectしても透過串のアドレスになってしまいますか?

>>624
atermです。そんな機能があったんですね。
でも>>621のサイトにアクセスするほうが簡単そうですね。
0626デフォルトの名無しさんNGNG
>>621のやつ、XMLで返してくれるともっと嬉しいんだけどな。
0627UNIX使いNGNG
>>616
$ traceroute -m 2 pc2.2ch.net(適当なIPアドレスでもいい)

Windowsだとtracertだっったかな?
同じ事するコードを(例えばCで)書くのも簡単だよね。
0628UNIX使いNGNG
>>627
あ、これhop count増やさないstealth routerだと駄目。
0629デフォルトの名無しさんNGNG
>>626
それがまさにUPnP
0630デフォルトの名無しさんNGNG
>>624
俺、そうしている
てかそーゆー常駐ツール作って使ってる
いちいちブラウザ立ち上げるのメンドイし、接続状態の把握とかに使用
0631デフォルトの名無しさんNGNG
>>600
http://cruel.org/freeware/hacker.html
0632デフォルトの名無しさんNGNG
趣味程度で1ヶ月程度しかまだネットワークの勉強してない者ですが、質問です。
過去ログに合った場合はすんませんです。一応確認したのですが。

Winsockを使用したプログラムを作ってまして。
で、一応、LAN、イントラネット内では回線は繋がるんですが(会社の回線勝手に使用)、
ADSL等の、まぁ家庭で使用している、回線類ではまったくもって繋がらんのですが何故?
目指す所としては、P2P回線を構築したいのですが。
初心者なりに考えた予想では、接続先のIPが違うのかなぁとか思ってるのですが。
>>621 にある、 http://dynamic.zoneedit.com/checkip.html 等で記述された
IPを使用してるんですが、これって全然違うんですかね?ひょっとして。
初心者ですんませんです。ちなみに、自宅→自宅って感じでテストをしています。
それとも、acceptで、接続待ちを行っていますが、ここで何らかの処置を行うのでしょうか?
もう分からんです。サッパリ。とりあえずうんこして寝ます。
0633デフォルトの名無しさんNGNG
>>632
情報不足だ。
繋がらん、とはどんな状態だよ。
0634デフォルトの名無しさんNGNG
多分ルータに接続しようとしてる。
192.168.*.*とかのLAN内にサーバ勃てた場合、WANからは入れないよ。
0635デフォルトの名無しさんNGNG
>>633
サーバー側は待ち状態になっていて、
クライアント側はconectした状態のままな状態です。
ちなみに、非同期通信で繋がった場合はプロシージャーから
winsockのメッセージを取得するようになってます。
繋がるとメッセージを送信するプログラムになってるのですが、来ない。
これは完全に繋がってない状態だと思われますです。
0636デフォルトの名無しさんNGNG
>>634
ああ、それっぽいです。サーバー側のIPの設定をローカルの設定にしとりました。
ただ、上記に書いた方法でIPを登録して、bindをすると生成に失敗します。
取得してるIPがやはり違うんでしょうか?
0637デフォルトの名無しさんNGNG
>>636
LANの仕組を知る事が先決では。
0638デフォルトの名無しさんNGNG
>>637
了解しました。精進します。
0639デフォルトの名無しさんNGNG
    [internet]
       ┃
     h.o.g.e
     [router]
    192.168.0.1
  ┏━━┻━━┓
 [client]    [server]
192.168.0.3  192.168.0.2

として、キミが取得してるのはinternet側のh.o.g.e。
clientがh.o.g.eにリクエスト出してもserverには届かないよね。
0640デフォルトの名無しさんNGNG
>>638
それよりも、ADSLルータについて勉強しろ。
そうすればどうすればいいかわかる。

ダイヤルアップで接続してから同じことすれば
うまくいくはずだけど。
0641デフォルトの名無しさんNGNG
ちょっと気になったのですが。

アップローダーが出来るなら、
HPを表示しただけでHD内のファイルを転送できませんか?
0642デフォルトの名無しさんNGNG
>>641
出来るなら誰かやってるだろう
0643デフォルトの名無しさんNGNG
ファイル名を
c:\windows\user.dat
にして、HPを開いた時に送信ボタンを押した事にすれば
可能だと思うのですが。
なんで出来ないのですか?
0644デフォルトの名無しさんNGNG
>>643
>HPを開いた時に送信ボタンを押した事にすれば
どうやって?
0645デフォルトの名無しさんNGNG
じゃ、ユーザーにクリックさせればあらかじめ指定したファイルを
HDから盗めるの?

「押してみ」ってボタンを載せて。
0646デフォルトの名無しさんNGNG
この板はプログラムを作る人のための板です。

あらゆる質問はまずすれ立てるまでもない質問はここでスレにしてください。

その他、お勉強ページへのリンクスレ、
推薦図書・必読書スレ
もあります。

プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。
Javascript は Web 制作板、CGI は Web プログラミング板へ。
業界談義、愚痴はプログラマ板へどうぞ。
ゲーム関係の話題はゲーム製作板へどうぞ。
ネタ、板とは関係の無い話題はご遠慮ください。
0647デフォルトの名無しさんNGNG
>>643
おまえは馬鹿か?
そこまで書いてわからんのか?
0648デフォルトの名無しさんNGNG
UDPで通信をするソフトを作っているのですが
受信バッファーをフラッシュする方法を教えて下さい。
0649デフォルトの名無しさんNGNG
>>648
あなたの環境がまったくわからないのに、どう答えろと?
0650デフォルトの名無しさんNGNG
>>649
これは失礼しました。
WindowsXPです。
該当するAPI等があれば教えて下さい。
0651あぼーんNGNG
あぼーん
0652デフォルトの名無しさんNGNG
>>650
意味がないんじゃないの?フラッシュしても。
UDPでしょ?相手に届く保証も無い(欠けてる事もある)し、何バイト単位で送信というわけでもないし。
ヘッダやフッダとかデータ区切りつけて送信してるんでしょ?区切りまで
空読みしては?
0653デフォルトの名無しさんNGNG
>>652
ハンドシェイクを行っているんですよ
それで稀に同期がずれることがあるみたいで
シリアルでは送信前にPurgeCommをしてバッファを空にしてたんですが
UDPにもこれ相当のAPIがあれば便利かなあと思いまして、
今はとりあえず空読みして回避しています。
0654デフォルトの名無しさんNGNG
sambaがインストールされていないマシンから winpopupメッセージを送りたいのですが、
smbclient等で使われている winpopupのプロトコルはrfcで規定されているんでしょうか?
rfc1001や rfc1002を winpopupで検索して見ましたがヒットしませんでした。
0655デフォルトの名無しさんNGNG
>>653
素人はUDPを使うべきじゃない。考慮すべき事が多すぎる。
0656デフォルトの名無しさんNGNG
>>655
それじゃ一生使えないでしょが・・
で、>>653に対して何も返答できない言い訳でつか?
知らないならレスするなよな
0657デフォルトの名無しさんNGNG
UDP自体もう要らないんじゃないの?
0658デフォルトの名無しさんNGNG
>>657
UDPはトランスポート層を担うプロトコルとして、
## host内のentityをport番号で区別する。
リアルタイム系のプロトコルを支えているし、
DNSをTCPにすると、
SYN →
  ← SYN/ACK
ACK/req. →
  ← SYN/res.
となるから、かかる時間が倍になってしまう。

しかし、素人がUDP使って設計するとろくなことにならんので、素人は禁止(w
MTU discoveryとかしらんだろうし。
0659デフォルトの名無しさんNGNG
誰も>>658のような返答を期待してはいない
0660デフォルトの名無しさんNGNG
TCP_NODELAY とか
上手くいくかどうかは非常にあやしいが

0661デフォルトの名無しさんNGNG
ってUDPには関係無いや
0662デフォルトの名無しさんNGNG
知ったかぶりだったんか・・
0663デフォルトの名無しさんNGNG
up2dateみたいなアップデートシステムを簡単に作るには
どのソースを使いまわすのが良さげですか?
0664デフォルトの名無しさんNGNG
up2dateじゃない?
0665デフォルトの名無しさんNGNG
winsockのacceptをcallするトリガになるようなメッセージとかって無いすか?
CSocketのOnAcceptみたいな。
0666デフォルトの名無しさんNGNG
>>653
>ハンドシェイクを行っているんですよ
>それで稀に同期がずれることがあるみたいで
ハンドシェイクにタイムアウト実装しないヤシはペケ。
>>652 が
>UDPでしょ?相手に届く保証も無い(欠けてる事もある)し、何バイト単位で送信というわけでもないし。
と書いてるだろ。*届く保証が無い*んだから、「来ないこともある」という前提で
ハンドシェイクを久米。
ソケットがどうとか、UDPがどうとかいう以前の問題とケテーイ。
そのハンドシェイクがシリアルで動いてるとしても*運がよいだけ*と認識汁。この度素人が。
0667デフォルトの名無しさんNGNG
つーか、
>ハンドシェイクを行っているんですよ
>それで稀に同期がずれることがあるみたいで
って何言ってるつもりなの?

オーメン(>>666)分かるなら解説してくれ。
「ハンドシェイク自体に失敗する」ことを「同期がずれる」と称しているのか?
0668666オメーンNGNG
>>667
>「ハンドシェイク自体に失敗する」ことを「同期がずれる」と称しているのか?
まったくの推測であるが、
STX -> ACKとか ENQ -> ETXとかそういうことをシリアルであってた経験に
うぬぼれて、そのハンドシェイク(プロトコルと呼ぶべきか)をそのまま
イーサに持ってこようとしているのでは?
たぶん、PC<--->装置だろ。装置は計装関係あたりだろ。
・・・漏れって思い込み禿げしすぎるかも・・・
0669666オメーンNGNG
>>668
スマヌスマヌ。>>667 への回答になってなかった。
>「ハンドシェイク自体に失敗する」ことを「同期がずれる」と称しているのか?
結局、漏れが想定してるようなヤシだったら、プロトコルが思ったとおりに動かない、
ときどきこける、あるいはハンドシェイクの周期がずれる、などを
ひっくるめて、「同期がずれる」と言ってるんだろうよ。
プロトコルは穴だらけでタイミング検証もできてない実装だろうよ。たぶんな。
0670デフォルトの名無しさんNGNG
ネットワークスペシャリスト持ってますか?
0671デフォルトの名無しさんNGNG
パスワードのパケットをそのまま投げてなにがどう問題になるの?
0672デフォルトの名無しさんNGNG
他の人に読まれていいのであれば。
0673667NGNG
>>669
やっぱそうなんかな。
そうだとすると、奴はdatagram通信って何なのか理解出来てないな。

UDP datagramがlostしているだけの話で、
期待している奴の次のdatagramが来る→同期がずれるって言ってんだろう、
とも思ったが、そんな時PurgeCommは何も解決してくれないし…
0674デフォルトの名無しさんNGNG
次はTCP上で独自なSTXとかACKとか飛ばすのかな
0675デフォルトの名無しさんNGNG
なんでそんなに叩いてるの?
0676デフォルトの名無しさんNGNG
656、659等の発言を見よ。
0677デフォルトの名無しさんNGNG
ああ。

なにも知らないくせに他人を推測で批判しやがって。
漏れはお前みたいな素人と違ってちゃんとUDP理解してるし、
その上で面倒がおきるから使うなと言ってんだバカヤロウ。
味噌汁で顔を洗って出直して故意。(゚д゚)ペッ!

っつーワケですな。
まぁ、聞くほうは答えが出揃うまでは謙虚にしていろっつーことだ罠。
利根川先生もそう仰っている。
0678デフォルトの名無しさんNGNG
http://www.kt.rim.or.jp/~ksk/wskfaq-ja/articles/lame-list.html
0679666オメーンNGNG
>>676
PurgeCommみたいなのWinsockには、無い。他は知らん。

ioctlsocket/WSAIoctlでFIONREAD/FIONREAD , SIO_FLUSH
あたりを嫁ってか。
んなもん使ったらドライバ依存しまくりだろ。
PurgeCommがまともに動くのは、シリアルドライバがMS純正だからだろ。
サードパーティ製シリアルボードではハマリまくるぞ。<-逆もあり

漏れは胃ガンぽいヤシが胃薬を買いにきたら、「早く医者へ行けヴォケ」と言いたいけどなぁ。
0680デフォルトの名無しさんNGNG
お前等口だけだね(´,_ゝ`)
0681デフォルトの名無しさんNGNG
>>680
丸2日かけて浮かんだカキコがソレ?
0682デフォルトの名無しさんNGNG
socket通信くらいで何いばってんの?
0683デフォルトの名無しさんNGNG
>>648はどこいったんだ?

仕様変更できるなら、TCPにしとけよ〜!
0684デフォルトの名無しさんNGNG
そのsocketもまともに使えない奴が何言ってるの?
0685デフォルトの名無しさんNGNG
(´Д`;)ヘコム・・・
0686デフォルトの名無しさんNGNG
トゲトゲしなさんな。
相談しずらくなる。
0687デフォルトの名無しさんNGNG
相談しづらくなる
0688デフォルトの名無しさんNGNG
>>686
日本語もまともに使えない奴が何言ってるの?
0689BSDソケ子NGNG
(・∀・)ニヤニヤ
0690デフォルトの名無しさんNGNG
なぁ〜んか知ったかぶりの厨房が何かほざいてますねぇ
0691デフォルトの名無しさんNGNG
知ったかぶりはプログラマとして最低限必要な技術です
それが出来ない人間はプログラマとしての適性はありません
0692デフォルトの名無しさんNGNG
>>691のような勘違い君は上げですな
0693デフォルトの名無しさんNGNG
HSPスレかと思った
0694デフォルトの名無しさんNGNG
粘 着 U z eeeeeeeeeeee
0695デフォルトの名無しさんNGNG
CAsyncSocketの派生クラスCSocketAを作り、
CSocketA* m_p1;
CSocketA* m_p2;
とし、別々の場所(同じスレッド内)からそれぞれ
m_p1 = new CSocketA;
m_p2 = new CSocketA;
としてインスタンスを作って使用すると、sockcore.cppの513行目のアサートが発生します。
別々のインスタンスなので大丈夫だと思ったのですが、このような使い方は間違っているのでしょうか?
これを回避するにはどうすればよいのでしょうか?
0696デフォルトの名無しさんNGNG
CSocket Considered Harmful
http://www.kt.rim.or.jp/~ksk/wskfaq-ja/articles/csocket.html
0697デフォルトの名無しさんNGNG
>>696
そこに載っていることとは関係無いと思うんですけど・・・
0698デフォルトの名無しさんNGNG
>>695
コンパイラもライブラリバージョンも書かず、513行目と言われても
なんのことやら
0699デフォルトの名無しさんNGNG
>>698
VC++6です。
0700デフォルトの名無しさんNGNG
【使用すると】の部分が問題じゃなくて?
0701デフォルトの名無しさんNGNG
それぞれCreateしてConnectしてCAsyncSocket派生クラス内のOnSendやOnReceiveを
オーバーライドしてるだけなんですけどね・・・
OnSendやOnReceiveの中身をすべてコメントアウトして、
一方のCreate、Connectの両方をコメントアウトすると(つまり一方のインスタンスは
newしてdeleteするだけ)アサートしません。
しかし、Createして実行するとアサートします。
0702701NGNG
テスト用のダイアログベースのプロジェクト作って確認してみました。
CAsyncSocketの派生クラスCTestSockを作り、OnSendをオーバーライドして
 CString strCmd = "GET / HTTP/1.0\r\n\r\n";
 Send(strCmd, strCmd.GetLength());
とする。
ダイアログのメンバ変数として
 CTestSock* m_pSock1;
 CTestSock* m_pSock2;
を宣言。これらはダイアログのコンストラクタでNULLで初期化します。
次にダイアログにボタンを二つ作り、一方に
if(m_pSock1 != NULL){
  delete m_pSock1;
  m_pSock1 = NULL;
}
m_pSock1 = new CTestSock;
m_pSock1->Create();
m_pSock1->Connect("www.yahoo.com", 80);
とし、他方に
// 先のm_pSock1をm_pSock2に換えただけ。
if(m_pSock2 != NULL){
  delete m_pSock2;
  m_pSock2 = NULL;
}
m_pSock2 = new CTestSock;
m_pSock2->Create();
m_pSock2->Connect("www.yahoo.com", 80);
とします。
後はボタンを交互に連続で何回か押せばアサートが起きます。
0703701NGNG
>>702のソースから、Send呼び出しの1行をコメントアウトするとアサートは起きません。
0704デフォルトの名無しさんNGNG
MFCソースを見ればわかるかとは思うけど、
たぶん、Create直後にAttachHandleしとけばいい
0705デフォルトの名無しさんNGNG
>>704
AttachHandleするとはどういうことでしょうか?
CAsyncSocketメンバ関数にAttachというのはありますが、これではないですよね。
0706デフォルトの名無しさんNGNG
CAsyncSocket::AttachHandle(pSocket->m_hSocket, pSocket, FALSE);
0707デフォルトの名無しさんNGNG
FTPクライアントを作ってみてるんですけど、ファイルをダウンロードする処理で
perlだとwhile(<SOCK>){}で全データダウンロードできますが
Cの場合、どのように全データダウンロードできたということを判定したら
よいでしょうか?
0708デフォルトの名無しさんNGNG
ソケットが切れたら完了
0709デフォルトの名無しさんNGNG
>>708
recvの戻り値が0ってことですか?
0710デフォルトの名無しさんNGNG
recvの戻り値は関係ない
接続が切れたら終了
0711デフォルトの名無しさんNGNG
>>710
接続が切れたことはrecvの戻り値が0かどうかで判断すると思ったのですが。
あっ。とりあえずselectは使ってない場合です。あとでつける予定です。
以前データより先にcloseのパケットが先に到着するような話題があったと思うので
ちょっと心配。
0712BSDソケ斗NGNG
>>707
OSは何なの?
recvなんか使わずに、fread使いなさいよ。fdopenしてさ。
Win9xのWinsockは、socketがfile handleじゃないから駄目だけど。
0713デフォルトの名無しさんNGNG
>>712
OSはWinです。9x系もありです。スマソ
0714デフォルトの名無しさんNGNG
>>710
> recvの戻り値は関係ない
> 接続が切れたら終了

アフォか?

>>711
> 以前データより先にcloseのパケットが先に到着するような話題があったと思うので
> ちょっと心配。

TCP はストリーム型通信だから、そんなことはあり得ない。
実際に順序が逆転してパケットが到着したとしても、
アプリケーションにはちゃんと順番通りに通知されるから、
安心しろ。
0715デフォルトの名無しさんNGNG
>>714
thx
安心しますた。

selectもいれて一通りできるようになりました。
たぶん、closeパケットうんぬんはwinsock2で非同期ソケットの
場合のMS独自のバグみたいなものだったかもしれません。うるおぼえでスマソ
0716デフォルトの名無しさんNGNG
それはちょっと安心しすぎ。closeの後にreadが到着する可能性はあると
MSDNには書かれてる。
> FD_CLOSE should only be posted after all data is read from a
> socket, but an application should check for remaining data upon
> receipt of FD_CLOSE to avoid any possibility of losing data.
CAsyncSocketがこの可能性を考慮してくれるのか
自分でやる必要があるのかまでは知らないけど
0717デフォルトの名無しさんNGNG
>>716
それは、アプリケーションがソケットをクローズした後で
データが到着する可能性がある、って話だろ?
>>711 が言ってるのは、相手からの FIN が相手からのデータ
を追い越して来ちゃうかもしれない、って話だろ?
ごっちゃにするな。
0718デフォルトの名無しさんNGNG
>>717
カコ(・∀・)イイ!!
0719デフォルトの名無しさんNGNG
>>706
Createの直後にそれやると今度はsockcore.cppの408行目でアサートしますが・・・
0720デフォルトの名無しさんNGNG
すでにclosesocketしたハンドルをもう一度closesocketしてもよいでしょうか?
0721デフォルトの名無しさんNGNG
>>720
良い悪い以前に、そんなこと必要ないだろ?
0722デフォルトの名無しさんNGNG
>>721
エラーが出たら全部クローズしたいんですけど。だめですか?
0723山崎渉NGNG
(^^)
0724デフォルトの名無しさんNGNG
保守age
0725デフォルトの名無しさんNGNG
>>722
エラーが出たらクローズするのはいいけどそれが>>720にどう関わってるん?
0726デフォルトの名無しさんNGNG
716の解釈は、
「WSAAsyncSelect などを使った場合に、コネクションが閉じられたら、FD_CLOSE が飛んでくる。
だが、その時点で、まだソケットバッファにデータが溜まったままになってることがあるから、
データロストしたくなかったら、ソケットバッファをチェック(recvなどで)しといた方がいいよ。」
ってことじゃないかな?

あと、前スレの912も見ておいたほうがいいかも。
0727702NGNG
http://support.microsoft.com/default.aspx?scid=http://www.microsoft.com/japan/support/kb/articles/417/0/91.asp
概要からこれかもしれませんが、まだ解決法は無いみたいです。
0728BSDソケ斗NGNG
>>726
つーか、>>716に引用された文の前後読んでも、
何故に「but an application should check for remaining data
upon receipt of FD_CLOSE to avoid any possibility of losing data.」
なのかサパーリわからんよね。(むしろ必要がないと帰結できる説明がなされている)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/wsaasyncselect_2.asp

しかし「やれ(should)」と言っている以上やるのが賢明ですわねえ。
「Win32 APIやMSDNで解釈に迷ったら、悲観的な立場をとれ(w」
0729BSDソケ斗NGNG
>>727
同URLより、
> 解決方法: クライアントからのデータ送信を行う際に Sleep API などにより
> 間隔を空けることで回避可能な場合があります。
ぷ 「解決方法:〜場合があります」だってさ。
0730デフォルトの名無しさんNGNG
>>725
複数ソケットをオープンしてて、ソケットを閉じるタイミングが違うじゃないっすか?
エラーがでたとき、いちいち開いてるのだけクローズするのって面倒じゃないですか。
0731デフォルトの名無しさんNGNG
プログラム組むとき、いちいちエラー処理するのって面倒じゃないですか。
0732デフォルトの名無しさんNGNG
>>730
UNIX のソケットしか知らないんだけど、あるソケットをクローズしたら、
そのソケットディスクリプタを格納する変数に、-1 を放り込んでおいて、
何らかのエラー発生時には、値が -1 以外のものをクローズする、ってのは
どう? よくやる手法だと思うんだけど。

クローズ時。

 close(s);
 s = -1;

エラーで全部をクローズする時。

 if (s >= 0) close(s);
0733デフォルトの名無しさんNGNG
>>731
面倒なので極力しないようにしてまつ。

>>732
(・∀・)イイ!!
なるほどねー
いただきます。
0734BSDソケ斗NGNG
>>732
つーか、UNIXだと、
#define MAX_FD (システムごとに違う)
for (int i=0;i<MAX_FD;i++) { (void)close(i); }
こんな乱暴なのもしばしばだわな。

Winsockだと、 二回目はWSAENOTSOCKつーエラーになるだけのはずだけど、
Winsockは油断ならんから、ジェントルにプログラミングしといた方がいいよ。
SO_LINGERしているなら、MSDN参照な。
0735デフォルトの名無しさんNGNG
FTPならファイルリストからサイズを取得して
そのサイズまで達していなかったらリトライ
転送中に切れることまで考慮するのならそうすべき
0736デフォルトの名無しさんNGNG
エラー処理くらい入れとけよ・・・
最悪assert程度でもいいからさ
0737デフォルトの名無しさんNGNG
>>735
うわー
それは気づかなかった。
0738デフォルトの名無しさんNGNG
ちょっと質問
if( (OpenHandle = :InternetOpen( "title", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0 )) != NULL ){
  DWORD wk = 5000;
  :InternetSetOption( OpenHandle, INTERNET_OPTION_CONNECT_TIMEOUT, &wk, sizeof(wk) );
  ConnectHandle = :InternetConnect( OpenHandle, pServer, INTERNET_DEFAULT_FTP_PORT, pUser, pPass, INTERNET_SERVICE_FTP, 0, 2000 );
}
↑のようにタイムアウトを5000msに設定して存在しないサーバーにコネクトすると
1分くらい後に:InternetConnectから抜けてくるのですが
タイムアウトの設定どこがいけないのでしょうか?
0739デフォルトの名無しさんNGNG
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q176/4/20.ASP&NoWebContent=1
0740デフォルトの名無しさんNGNG
>>739
げっ、ひょっとして意味無いってことですかねこれを見る限りでは
では、これに代わってタイムアウトを設定する方法ってあるのでしょうか?
0741デフォルトの名無しさんNGNG
>>740
unix なら alarm。winsock だと。。。よくわかんない。
てかよく見ると work around が 739 のリンク先に書いてあるじゃん。
0742デフォルトの名無しさんNGNG
assertってabortを呼ぶから嫌い。exit(1)にしてくれればよかったのに。
0743デフォルトの名無しさんNGNG
>>742
自分用のassertを書けばいいじゃん
#define MY_ASSERT(e) ((e)?(void)0:my_assert(__FILE__,__LINE__))
あとはお好きに。
0744デフォルトの名無しさんNGNG
>>742
デバッグ用だし別にいーじゃん。
まさかリリース時に有効にしたまま納品してないよな?
0745デフォルトの名無しさんNGNG
リリース後も継続して品質を向上する気ならリリース版にも(my)assertは必要だな。
0746デフォルトの名無しさんNGNG
assertって何ですか?
0747デフォルトの名無しさんNGNG
Cスレ逝け
0748デフォルトの名無しさんNGNG
>745
assertをソースから消せって話じゃないだろ。
リリース版ではNDEBUGを定義しとけと。
0749デフォルトの名無しさんNGNG
>>742
abort()を呼ばずに何のasert()だ?
コア吐いてくれなきゃ意味ねーじゃん。
以上、UNIXバカより。
0750デフォルトの名無しさんNGNG
>>748
バグが見付かったら積極的にクラッシュさせて、報告して
もらおうって話でしょ?
0751デフォルトの名無しさんNGNG
>>750
エラーメッセージ表示させれ
0752デフォルトの名無しさんNGNG
>>744
そんな阿呆なことするか。
0753デフォルトの名無しさんNGNG
>>752
じゃあどうするんだ?
明らかにエラーなのになんとなく動作させたほうがいいのか?
0754デフォルトの名無しさんNGNG
よくまぁスレ違いな議論を長々と
0755BSDソケ斗NGNG
やっぱり、このスレ的には、
assertの動作は、bug情報をE-mailか、httpでPOSTでしょう。
もちろんちゃんとお客にはそれを教えといてね。
0756デフォルトの名無しさんNGNG
だからassertって何?
0757デフォルトの名無しさんNGNG
てか内部エラーが発生しても再起動しないで動き続けるようなサーバが
今も稼動してるってことか?(((( ;゚Д゚)))ガクガクブルブル
0758デフォルトの名無しさんNGNG
このマクロの目的は、プログラマーがプログラムのバグを発見する手助けを することである。"assertion failed in file foo.c, function do_bar(), line 1287" というメッセージは
ユーザーには何の助けにもならない。
0759デフォルトの名無しさんNGNG
内部エラーを一体どう伝えればユーザーの助けになるのかと(略
0760デフォルトの名無しさんNGNG
>>759
そのためにIEなんかにはフィードバック送信メニューがついてる。
ユーザーにはエラーが起きたことを通知すればよい。
エラーの内容はこっちにフィードバックされればよい。
0761デフォルトの名無しさんNGNG
>>760
素人はWindows板へカエレ
0762デフォルトの名無しさんNGNG
あーあ、早く別スレ行ってくれねーかな
0763デフォルトの名無しさんNGNG
自作ソフトを別マシンで動かしてて、飛ぶと「MSに報告しますか」とか聞かれる
激しく意味がない
0764デフォルトの名無しさんNGNG
>>759
エラーが発生したので終了します。
エラー内容を開発元へ送るには送信ボタンを押してください。
      [送信] [閉じる]
0765デフォルトの名無しさんNGNG
>>763
MSがデバッグしてくれるだろうよ。






有償で。
0766山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0767デフォルトの名無しさんNGNG
DirectPlayってやっぱり遅いんですかね?
0768デフォルトの名無しさんNGNG
>>767
さあ、どうでしょう?
0769デフォルトの名無しさんNGNG
変わらないに600000万ペソ
0770デフォルトの名無しさんNGNG
でも仮に遅かったとして、将来速くなる可能性もある事を忘れてはならない。
また、消えてしまう可能性も(ry
0771BSDソケ斗NGNG
逆に、あまりレベルの高くないプログラマでも、
DirectPlayのフレームワークに添って書けば、スケールするようにできてるんじゃないの?
じゃないと、コールバックモデルのフレームワークの意味がないし。
0772デフォルトの名無しさんNGNG
最近のDirectPlayはUPnPを自動的に使ってくれるしな
0773デフォルトの名無しさんNGNG
>>772
UPnP対応じゃないルータって
どのくらいあるかな?
0774デフォルトの名無しさんNGNG
かなり
0775デフォルトの名無しさんNGNG
なんでDebianですらUPnP関連のソフトをパッケージにしてくれないのかな
ってスレ違いか。
0776デフォルトの名無しさんNGNG
「してくれない」ではない
必要なら自分でやって、それを提供せよ
0777デフォルトの名無しさんNGNG
プログラムが動いているマシンのグローバルIPアドレスを求めるには
どうすればよいのでしょうか。
0778デフォルトの名無しさんNGNG
>>777
ルータにリクエスト飛ばす。(当然ルータに依存する。)
少なくとも俺はそうしてる。
または、外部に中継サーバ置いて、IPアドレスを返してもらう。
0779777NGNG
なるほど、、
ルータで場合わけするのは大変そうなので
レンタルサーバーにCGIを設置して取得してみます。

ありがとうございました
0780デフォルトの名無しさんNGNG
それならREMOTE_ADDRを取得すればよさそうな・・・
おそらくグローバルIPアドレスが割り当てられているだろうし。
0781780NGNG
REMOTEじゃない(^_^;)
SERVER_ADDRだったかな。
0782デフォルトの名無しさんNGNG
>>779
> レンタルサーバーにCGIを設置して取得してみます。

こう言うところを利用させてもらうのもいいかも。

http://checkip.dyndns.org
0783BSDソケ斗NGNG
>>777
これって、NATされてる場合の話なの?
少なくとも>>778-782はそう受け取っているように見えるが…

もしそうだとすると>>616-630のリフレインだよね。
0784621=782NGNG
>>783
おおそうだ、なんか最近似たようなこと書いた気がしてたんだよ。
0785デフォルトの名無しさんNGNG
質問です。
いま、情報管理部にいて、各部署の端末にファイルを転送して転送後にメッセージを表示する
アプリケーションを社内用に開発(簡単なユーティリティとして)しています。

listboxで端末を選択後、別のlistboxにドラッグドロップされたファイル名を
拾い、SHFileOperationでファイルコピーしています。ログオンはAdministrator
のパスワードをアプリに持っており(外部xmlファイル内にdesで暗号化して)、
WNetAddConnection2A apiで送信先端末にログオンした後ファイル送信(コピー)、
NetMessageBufferSendでメッセージを送信、接続切断。という間抜けな処理
をしています。

これをログオンせずにWNetAddConnection2A apiなしでソケットを使って
行うにはどのようにすればいいのでしょうか?
上の方法では送信先にサーバアプリケーションが無くても一方的にファイル送信後
メッセージ表示ができて便利なんですが、メッセンジャーサービスで表示させるため
受信メッセージをテキストで残す事が出来ません。

IPメッセンジャーのようなことがしたいのです。しかし会社ではIPメッセンジャーの
インストール許可がおりません。作れと言われました。

よろしくご指導願います。言語はC#です。
0786デフォルトの名無しさんNGNG
>>785はマルチコピペなので放置
C♯相談室 Part9
http://pc2.2ch.net/test/read.cgi/tech/1039646808/847
0787785NGNG
>>786
こっちは下げときます。

複数のスレに書き込んで申し訳ないです。
しかし、何の助言もなくいきなり放置しなくてもいいと思うんですが......
何か嫌な感じです。

以下のリンクで何とかなりそうです。お騒がせしました。
http://www.expresscomputeronline.com/20030303/techspace2.shtml
http://www.c-sharpcorner.com/Network/RealTimeAppJP.asp


0788デフォルトの名無しさんNGNG
マルチがいかに嫌われているか、知らないヤツが情報管理部ねぇ…。
例えばこのスレ見るだけでも、お前の同類は見事にこんなヤツばかりだ>>417 >>571

両方のスレで、それぞれ別の人が
知らずに一生懸命、同じ事を答えてくれたらどうよ。
お前は2人分の労力使わせるほど偉いのか?
0789デフォルトの名無しさんNGNG
開発時に、ネットワークのパフォーマンスやネットワーク上を流れるデータの中身等を
調べたりする必要が出てくるシーンが多々あると思うのですが、その際に使用する
モニタリングソフト(?)で定番の物って無いですか?
有料・無料はとりあえず気にしません。無料であれば尚うれしいですが・・・
0790デフォルトの名無しさんNGNG
>>789
OSはなによ?
0791789NGNG
重要なことを書き忘れていました。
OSはWin2000と赤帽8.0です。
0792デフォルトの名無しさんNGNG
UNIXならtcpdumpが定番。
http://www.tcpdump.org/

Winの定番はわかりません。すんまそん。
0793デフォルトの名無しさんNGNG
まー何て言うか・・>>788は痛すぎだねぇ
何でこいつこんなに偉そうなの?何勘違いしてんの?アフォ?って感じ
0794デフォルトの名無しさんNGNG
わかりやすく本人が煽ってるね。
0795デフォルトの名無しさんNGNG
仮にも大人なんだろうし・・・。
0796785NGNG
>>788
>お前は2人分の労力使わせるほど偉いのか?
今まで質問した事項は別のMLやBBSに投げることはせずにいましたが、2chでは
少し甘えがありました。上のレスにちょっとむかつきました(K.橋本さんかと思いました)が、
落ち着いて考えるとやはり質問に回答した方としては別のスレッドで解決したまま
放置されると面白くないですよね。

私としては回答する人にも勉強になっていいと思っていたんですが......申し訳ない。
今後2度とマルチポストはしません。

結局以下のコードを参考にして解決に至りました。
http://www.c-sharpcorner.com/Code/2002/Mar/Peer2PeerChatAsynchSocket.asp
0797デフォルトの名無しさんNGNG
やっぱり本人だったね。
0798785NGNG
誤)K.橋本
正)K.山本
0799789NGNG
>792
了解です。ありがとう。
0800デフォルトの名無しさんNGNG
>>789
お金が出せるならsniffer。
フリーならetherealとか。
0801デフォルトの名無しさんNGNG
2ちゃんだから何やってもいい、か。そういうアフォが逮捕されてるんだよな。
0802デフォルトの名無しさんNGNG
ネットワークモニタとか?
これしか使ったことないかも。
w2kとかについてたから。
0803デフォルトの名無しさんNGNG
ネットワークの質問かわかんないんですけど、WinNT系で、
ネットワークのインターフェース名(?)("ローカル エリア接続"とか)を
WindowsのAPIで取り出す方法ってありますか?
0804デフォルトの名無しさんNGNG
>>789
http://homepage2.nifty.com/spw/hint/PacketDump.html
これを好きなように改造すればとても使いやすい
0805デフォルトの名無しさんNGNG
GetIfEntry
0806デフォルトの名無しさんNGNG
それWinのAPIでなくない?
0807BSDソケ斗NGNG
>>789
> ネットワークのパフォーマンスを調べる

ってどういうことをいわんとしているの?

pathchar: ネットワーク経路の特性調査
 ftp://ftp.ee.lbl.gov/pathchar/
pchar: pathcharから派生
 http://www.employees.org/~bmah/Software/pchar/

mrtg: 帯域利用のロギング
 http://people.ee.ethz.ch/~oetiker/webtools/mrtg/
cricket: 帯域利用のロギング
 http://cricket.sourceforge.net/
rrdtools: 帯域利用のロギング
 http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/

とか?

>>792
tcpdumpのWindows版がWindump
 http://netgroup-serv.polito.it/netgroup/tools.html
0808BSDソケ斗NGNG
あ、帯域利用のロギングは、
portごとのSNMP統計取れるHUBと組み合わせて使うのがよいです。

// プログラミングと直接関係ないからsageとくべきだったかな?
0809デフォルトの名無しさんNGNG
>>796
> 私としては回答する人にも勉強になっていいと思っていたんですが

ワラタ、不遜もここまで来るとすごいな
0810789NGNG
>800 >802 >804 >807
をを、続々と情報が・・・
皆様本当にありがとう。それぞれ使って色々試してみます。

>807
今の段階では、クライアント-サーバ間でどれだけの量のデータが
流れたかを調べる程度です。
0811デフォルトの名無しさんNGNG
>>810
私は ethereal を愛用してますが、統計情報なら、それぞれのホストで、
netstat -s やら netstat -in でもいいかもね。

ethereal や tcpdump などのソフトウェアスニファだと、通信量が多い
場合、取りこぼしが発生するので、その点は注意してね。
0812本7 ◆HON7/awDa. NGNG
Windows用telnetサーバをDelphiで作ってます。

Socket.SendText(#13#10+'Command Not Found');
Socket.SendText(#13#10+'>'+#13);
           ↓要するに
\r\nCommand Not Found\r\n>\r

と送信したら、クライアントで

Command Not Found
>
と表示させて">"の横にプロンプトを持って来たいんですがWIN98標準の
telnet.exeでは">"のあとに改行してからしかプロンプトが来ません。
どうすれば格好よくなるでしょうか?
0813動画直リンNGNG
http://homepage.mac.com/hitomi18/
0814デフォルトの名無しさんNGNG
共有フォルダに誰がアクセスしているか知る方法はないですか?
0815デフォルトの名無しさんNGNG
>>814
勘違い君は、PC初心者板にでも行ってね♥
0816デフォルトの名無しさんNGNG
>805さん
803です。ありがとう。
でもGetIfEntryで取ってきた構造体のWCHARで定義されているやつが
インタフェース名なんですよね?
printf("%S\n", pIfInfo->wszName);
でデータとれます?
こりゃネットワークの質問じゃないな、もぅ。笑
0817デフォルトの名無しさんNGNG
setlocaleを忘れてると、printfはwchar_tで日本語が出ない罠があるが。
0818デフォルトの名無しさん NGNG
>>815
無知を晒すだけだよ(w
0819デフォルトの名無しさんNGNG
だから814は早くPC初心者板に逝けってことだね
0820デフォルトの名無しさんNGNG
soudane
0821デフォルトの名無しさんNGNG
このスレのレベルは大変低くて結構結構
0822デフォルトの名無しさん NGNG
ソケットでルーターを超えるにはどうすればいいの?
0823デフォルトの名無しさんNGNG
え?
0824デフォルトの名無しさんNGNG
>>822
ソケットといっても何のプロトコルを使っているかにもよるが、
独自のプロトコルでカプセル化でもしているのか?
0825デフォルトの名無しさんNGNG
>>822 使うポートを開放する
0826デフォルトの名無しさんNGNG
>>825
アホ?
ソケット自体にはポートという概念など無い
0827デフォルトの名無しさんNGNG
>>826
お前の50%ぐらいのアホ
0828デフォルトの名無しさんNGNG
まずプロトコルが何か明示しないと話が進まない
082947NGNG
プロトコルってなんですか?
0830デフォルトの名無しさんNGNG
釣りでいちいち上げるな
0831動画直リンNGNG
http://homepage.mac.com/hitomi18/
0832デフォルトの名無しさんNGNG
sageを知ってちゃ初心者っぽく見えないじゃないか
0833デフォルトの名無しさんNGNG
2chのdatを直読みできるソフトを作ろうとちょっと調べてみたんだけど
なんか・・お金を払わないとダメ?
0834デフォルトの名無しさんNGNG
>>833
んなこたーない
0835デフォルトの名無しさんNGNG
>833
http://members.jcom.home.ne.jp/monazilla/document/index.html
0836某起業家セイテンカーンNGNG
私は、完全性転換したネットワークスペシャリストを目指し、学習必死!
0837621=782NGNG
>>833-835
HTML 化以前の過去ログのことじゃないのか ?
だったら、有料だよ。
0838833NGNG
>>834-837
あ、スマソ。そうHTML 化以前の過去ログのこと。
やっぱり有料か・・
0839デフォルトの名無しさんNGNG
あの、Windowsでのネットワークプログラミングの入門書って
どんなのがあるでしょうか?
テンプレにあるのは上級者用って書いてあったので・・・

環境はBCC+Windows98です
0840デフォルトの名無しさんNGNG
>>838
見たいだけならどっかに過去ログを上げてくれるスレがあったはず。
0841デフォルトの名無しさんNGNG
>>839
入門だけならネットで検索すれば色々出てくるからそれで勉強した方が良いかもしんない。
0842本7 ◆HON7/awDa. NGNG
サーバ作るときにコマンドやGETなどののメッセージを解釈して処理するには
WinのCServerSocketならSoket.Readの所で処理すればよいのでしょうか?
みなさんはどこの位置で処理されるのでしょうか?

あとGET等を解釈するには1文字ずつ取り出して解釈するのでしょうか?
0843デフォルトの名無しさんNGNG
>>842
君には一生かけても作れないから忘れたほうがいい。
0844モーニング娘TSクラブNGNG
ネットワークエンジニアを目指しているプログラミング初心者です。
VBのでAPI関数使用してPGする事でネットワークコントロールも可能ですか?
解るところまでで構いませんから教えて下さい。
0845デフォルトの名無しさんNGNG
まず、お前の質問が意味不明だということが解った。
0846モーニング娘TSクラブNGNG
845>>
What?
どういうこと?
0847845ではないがNGNG
自分の書いた文章を読み返すこともしないのか。

VBので
PGする事で
ネットワークコントロール

最近こんなのばっか。日本語腐りすぎ。
俺はたかが掲示板で敬語云々などと言うつもりは全くないから
言葉使いなどはどうでもいいが、勝手に自分で略語を創造するな。
返答を求めるなら、意図が正確に伝わるよう努力はすべきだ。

推敲しろとまでは言わないが、せめて一度読み直せ。
0848デフォルトの名無しさんNGNG
847が(・∀・)イイこと言った
0849デフォルトの名無しさんNGNG
ネットワークコントロールってなんでしょう?
情報社会における新たな世界征服をもくろんでるんですか?
0850モーニング娘TSクラブNGNG
ネットワークを利用した、ソフトウェア開発の意味で書き込んだつもりですが・・・
0851デフォルトの名無しさんNGNG
具体的に何だよ。ソケット使えれば満足なのか?それ以下の層をいじりたいのか?もっと上位で十分なのか?
0852デフォルトの名無しさんNGNG
> 情報社会における新たな世界征服

いいなこれ。
確かにネットワークをコントロールできれば
世界は無理でも練馬ぐらいなら征服できるかもしれん。
0853デフォルトの名無しさんNGNG
「インターネットが画面一杯に」
0854デフォルトの名無しさんNGNG
>>844
ネットワークエンジニアを目指しているならとりあえずプログラミングより
ネットワークを勉強しろよ。
0855デフォルトの名無しさんNGNG
ネットワークエンジニアって普段どんなことする仕事なの?
0856デフォルトの名無しさんNGNG
LANケーブルと戯れる
0857デフォルトの名無しさんNGNG
LANケーブルで慰める
0858621=782NGNG
>>852
電話回線を使った世界制服なら、星新一の小説にあったぞ。
「声の網」だったかな。

>>857
CAT5 より CAT5E のやつの方が具合はいいのですか ?
0859デフォルトの名無しさんNGNG
>>852
いや、無理だ
練 馬 に は オ レ が い る

板橋にしとけ
0860デフォルトの名無しさんNGNG
>855
社内と社外のネットワークの境目となる部署で、手作業でパケットを
仕分けするのがネットワークエンジニアの主な仕事です。
LANケーブル上を流れる電気信号を読み取る人間離れした視力、
それを脳内でビット列に変換しIPヘッダを読み取り、あて先のネット
ワークへ素早くパケットを送り出す超人的な筋力が必要です。
並みの人間には決して勤まらない、プロフェッショナルな仕事です。
0861デフォルトの名無しさんNGNG
>>860
うちではアンプにつないで音で聞き分けてる人が多いね。自分は
いまだにテープにパンチして見分けてる下っ端ですが。ショボーーン
0862デフォルトの名無しさんNGNG
俺はパケットを食べて、ケツから出すときに勢いを変えるようにしてるよ。
0863programming関係ないやん!NGNG
>>862
僕、次のルータなんですけど…
0864デフォルトの名無しさんNGNG
> 僕、次のルータなんですけど…
そっかごめんね、僕は新米のProxyなんだ
次は誤送しないように気をつけるよ

というレスを返すスレかとおもた
0865デフォルトの名無しさんNGNG
>>862-863
ルーター間で相性問題発生!
0866デフォルトの名無しさんNGNG
http://yahooo.s2.x-beat.com/linkvp/linkvp.html
0867デフォルトの名無しさんNGNG
リアル人間によるIPネットワーク構築の為のRFCを考えるスレはここでヨイですか?
っていうか、鳩ネットワークもあるくらいだから、ひょっとしてもうある?
0868621=782NGNG
リアル人間は伝書鳩より高機能なんだけど、信頼性がないから誤り制御が大変だよ。

鳩ネットは ping が通る所までいったらしいね。
0869デフォルトの名無しさんNGNG
そういえば、Yoshinoyaプロトコルはどうなったんだろうか…
0870名無しさん@そうだ選挙にいこうNGNG
ここ、質問する香具師もレスする香具師もノータリンしかいないね。
俺もだけど。
0871デフォルトの名無しさんNGNG
数千クライアントがぶら下がるようなサーバをLinuxで書く場合
fork,select,非同期のどれがよさそうですか?
0872デフォルトの名無しさんNGNG
POSIX realtime signalsを使えばよいでしょう。
0873デフォルトの名無しさんNGNG
>>871
ここ読め。コードがあるから盗め。
http://www.kegel.com/c10k.html
ここのベンチマークが参考になる。
http://www.kegel.com/dkftpbench/Poller_bench.html

select系の中でもselect()は最悪の選択であることが分かるだろう。
# select系全般が悪いわけじゃないので念のため。
0874本7 ◆HON7/awDa. NGNG
wwwサーバの作成でソケットの勉強してます。
サーバ、ブラウザともローカルでテストしています。
ブラウザの要求に対してヘッダと本データは送れたのですが接続が終了せずに
タイムアウトまで時間かかってしまします。鯖の送信メッセージは

HTTP/1.1 200 OK Date: 03/04/29 13:13:47 ETag: "480ccf-26ee-3ead744e" Accept-Rang
es: bytes Content-Length: 571 Content-Type: text/html
\r\n
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=x-sjis">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title>これはテストページです。</title>
</head>
<body bgcolor="#FFFFFF">
<p align="center"><font color="#0000A0" size="6">これはテストページです。</font>
</p><p align="center"> </p><p align="center"> </p><p align="center">見えますか?
</p><p align="center"> </p><p align="center"> </p><p align="center"><font size="4">
<em>Patche Web Sever Ver 0.1</em></font></p>
</body>
</html>
\r\n
Connection closed by foreign host.\r\n
\r\n


です
0875621=782NGNG
>>874
> Connection closed by foreign host.\r\n

ネタだよね。
0876本7 ◆HON7/awDa. NGNG
>>875
取っても同じでした。すんみません。

流れとしては
ブラウザの要求>ヘッダ送信>本データ送信

で、そのごメッセージを送信するんですか?Deplhiなんですが今の所は
データ送信後にSocket.Destroyして無理やり切ってます。
これであってるんでしょうか
0877デフォルトの名無しさんNGNG
ネットワークプログラミングをするなら
せめてRFC位は読んで欲しいものだ。
さもないと周囲に迷惑をかける。
http://www.google.co.jp/search?q=http%2F1.1+%E3%82%BF%E3%82%A4%E3%83%A0%E3%82%A2%E3%82%A6%E3%83%88+rfc&ie=UTF-8&oe=UTF-8&hl=ja&lr=lang_ja
0878デフォルトの名無しさんNGNG
>>877 同意。
相手のあることなので、適当な実装を相手に試して大丈夫なんて思うと
害悪を垂れ流すことになる。
0879デフォルトの名無しさんNGNG
>>871
どの戦略でも動くように書いて、実験すればいいじゃん。
当然、サーバのやる仕事の種類とか、応答性とスループットの
トレードオフで、答えが変わって来るわけで。
0880デフォルトの名無しさんNGNG
>>876
ということで、HTTP/1.1のRFC読んでね。
そのあたりきっちり決まりが書いてあるから。
0881デフォルトの名無しさんNGNG
>>879
>>873のPollerつーのがそういう目的のclassですわ。

>>847
Protocolの要件に合うserverを、RFC読まずに作るのは100%不可能。
ソケットの勉強のためだけなら、あなたのtiny HTTP仕様に準じて作ればいいのでは?

>>876
> で、そのごメッセージを送信するんですか?Deplhiなんですが今の所は
> データ送信後にSocket.Destroyして無理やり切ってます。
> これであってるんでしょうか

server側だったら、clientの要求によるけど、
まあ、勉強用のserverならそれでいいんじゃないの?
1 request/connectionということで。
0882本7 ◆HON7/awDa. NGNG
ローカルでテストしてるんですが・・
0883本7 ◆HON7/awDa. NGNG
いろいろ調べて試したらなんとか動き出しました。
WWWに限らずでも結構なんですが鯖が複数のクライアントを切り盛り
する場合はDelphiでもスレッドのよる処理をするのでしょうか?それとも
各クライアントのリモホを配列か何かに格納しておいてソケット番号を参
照し動作毎に応答や切断をするのでしょうか?
0884デフォルトの名無しさんNGNG
好きなようにすればいい
絶対にこうしなければいけないなんてものはない
0885デフォルトの名無しさんNGNG
複数の子プロセスをつくるとか。
0886デフォルトの名無しさんNGNG
スレッド使うと、一つが死ぬとみんな死ぬというイメージがあるんですが、
実際の所どうなんでしょう?
スレッドで切り盛りしてるアプリケーションってありますか?
一昔前のIEはデスクトップまで巻きこんで死んだり酷かったですよね。
0887デフォルトの名無しさんNGNG
>>886
> スレッドで切り盛りしてるアプリケーションってありますか?

apache2, http://www.apache.org

全く別のアプローチ(>>872)が、http://www.zabbo.net/phhttpd/

スレッドうんぬんはスレッドスレで、IEうんぬんはWindows板で。
0888デフォルトの名無しさんNGNG
>>883
とりあえず>>2の「Linuxソケットプログラミング―ネットワークプログラミングにおける実践技法」
膨大なコネクションでのパフォーマンスが気になってきたら>>873

Windowsはフレームワーク使うから、基本的なところから学ぶ書籍は少ないな。
マルチスレッド関係の本が参考になると思うが。
0889本7 ◆HON7/awDa. NGNG
>>888
ありがとうございます。そしておめでとうございます。
web検索ではサーバのおおまかなアルゴリズムについてこちらの思いに的を射
て書かれたページが見つからず困ってました。apacheぐらい信頼性のあるアプ
リを目指してがんばります。

0890デフォルトの名無しさんNGNG
Apacheって信頼性は高いのだろうか。
0891本7 ◆HON7/awDa. NGNG
少なくとも俺の作った鯖よりはましかと。
AN HTTPDな物を夢見て
0892デフォルトの名無しさんNGNG
>>889
> apacheぐらい信頼性のあるアプリを目指してがんばります。

え、そんなもん目指すの?
とりあえずprotocolに適合してなければ信頼性はゼロだから、RFC読むか、最低でも、
Webプロトコル詳解―HTTP/1.1、Webキャッシング、トラフィック特性分析
http://www.amazon.co.jp/exec/obidos/ASIN/4894715414
は読みなよ。というか読まんなら世間にそのサーバを公開するな。

> web検索ではサーバのおおまかなアルゴリズムについてこちらの思いに的を射
> て書かれたページが見つからず困ってました。

>>2にあるStevensの本全部読め。Vol.3にHTTP載ってる。
0893デフォルトの名無しさんNGNG
Pingすると、Replyが平均で約1,000msでパケットロスも25%あるような状態の
端末間でまともなアプリケーションを構築できるのでしょうか?
0894美人OLNGNG
みんな良い店みつけたよあまりの安さにびっくりしたぜ!
看護婦、スッチ、OL、人妻、DVD買ってしまった。
http://www.net-de-dvd.com/
0895621=782NGNG
>>893
その「まともなアプリケーション」とやらの要求仕様による。
例えば、その回線で VoIP したいとか言うなら無理だし、ファイル転送で転送速度の要求が厳しくなければ大丈夫かもしれない。
0896デフォルトの名無しさんNGNG
>>893
十年以上前はそんな環境がざらでしたが、
DNSもFTPもTELNETもSMTPも問題なく運用されてました。
HTTPはまだ普及してませんでした。
0897デフォルトの名無しさんNGNG
>>893
AirH"ですか?
0898893NGNG
>895
 確かにそうですね・・・
 大まかな内容としては、携帯端末からのデータベースへのアクセスです。
 今のところ、リモートアクセス時の通信部分に関してはDBの機能に依存しているので、
どの程度の通信品質が必要なのかがわからないのが痛いです。
 回線の状態が悪い(?)ときは、数百バイトのデータをSELECTするだけで10分近く掛かっ
ているような状態デス・・・

>896
そうなんですか〜。

>897
おしいです。Dopaです。
300msで100%Replyが来る時もあれば、1000msオーバーで50%ロスする時も
あったりと結構不安定です・・・
tracertで追いかけると、ドキュモのネットワークと携帯端末間が異常に時間が
掛かっているようです。いちおドキュモに確認しましたが、「ちゃんと繋がってます」
という答えしか返ってきませんでした・・・
0899デフォルトの名無しさんNGNG
ドキュモってw
0900デフォルトの名無しさんNGNG
>>898
AirH"にしたほうがよいです。
0901893NGNG
>900
残念ながら、使用する携帯端末がDopa内蔵型でCFスロットにも
空きが無いのでDopa以外の選択肢が無いのです(泣
回線もクローズドなLAN型接続だし・・・

AirH''は安定してるんですか?
0902デフォルトの名無しさんNGNG
質問です。ネットワークプログラミングは初めてなんですけど、
インターネットヘッダのContent-typeとかAcceptとかRefererってどういう意味なんですか?
解説サイト教えてください。めんどくさくなかったら、直々におながいします。
馬鹿みたいな質問でごめんなさい。
0903デフォルトの名無しさんNGNG
>>902
http://www.studyinghttp.net/rfc_ja/2616/rfc2616_ja.html
0904デフォルトの名無しさんNGNG
>>903
さんすこ!
0905デフォルトの名無しさんNGNG
インターネットヘッダ……

プログラム書く前にインターネットの基礎から勉強すれ。
0906デフォルトの名無しさんNGNG
>>902
秋葉原のお店で、「インターネット、一つください」とか言ったことのある人?
0907デフォルトの名無しさんNGNG
インターネット=HTTPだと思っているわけだ
0908デフォルトの名無しさんNGNG
OSIモデルから勉強すれ
0909本7 ◆HON7/awDa. NGNG
Yahooって何て読むんですか?
0910デフォルトの名無しさんNGNG
>>909
ググルことも知らんのか...

http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=%22Yahoo%E3%81%AE%E8%AA%AD%E3%81%BF%E6%96%B9%22&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=

つーか、今時球場の名前にもなってんだから、常識だべ。

あとスレ違いだから、もう来ないように。
0911本7 ◆HON7/awDa. NGNG
一人だけか
0912モーニング娘TSネットワークNGNG
OSI基本参照モデル(ネットワーク編の基本中の基本)

第7層 アプリケーション層/応用層
第6層 プレゼンテーション層
第5層 セクション層
第4層 トランスポート層
第3層 ネットワーク層
第2層 データリンク層
第1層 物理層

ネット通信に必要不可欠なプロトコル、TCP/IPのTCPが第4層のトランスポート層(伝送路確保)
IPが第3層のネットワーク層(伝送路選択)に属する。
ftpやhttp等は、アプリケーソン層に属する
0913デフォルトの名無しさんNGNG
"セクション"はネタなのかどうか
"ネット通信に必要不可欠"はどうか
0914デフォルトの名無しさんNGNG
(・∀・)セクションソウ!!
0915本7 ◆HON7/awDa. NGNG
TCP/IP使って応答/要求コマンド決めたらそれでいいだけだろうが
0916デフォルトの名無しさんNGNG
OSI 参照モデルってあってないようなもんだよね。
つーか事実上意味ないし。
0917デフォルトの名無しさんNGNG
(・∀・)セクション♪
0918デフォルトの名無しさんNGNG
(・∀・)セックスィョン♪
0919デフォルトの名無しさんNGNG
シャンソン層
0920デフォルトの名無しさんNGNG
>912
そういう時は、
ttp://www5e.biglobe.ne.jp/~aji/3min/
を紹介するほうが早いで。
0921621=782NGNG
>>913
「アプリケーソン層に属する」には突っ込まなくていいのか ?
0922デフォルトの名無しさんNGNG
>>916
OSI は消滅し、参照モデルだけが生き残った...
いまどきは、「OSI?あ、ISOの参照モデルのやつでしょ?」

といいつつ、俺自身もOSI自体なんぞ、ほとんど知らないんだけどさ。
0923デフォルトの名無しさんNGNG
Ultima作ったとこだろ
0924デフォルトの名無しさんNGNG
the X/Open Transport Interface (XTI) はかなりOSIくさかったね。
0925デフォルトの名無しさんNGNG
>ftpやhttp等は、アプリケーソン層に属する
誤字はともかくこれ大間違い
0926デフォルトの名無しさんNGNG
間違ってないが?
0927デフォルトの名無しさんNGNG
L4だろ
0928ヽ(´ー`)ノNGNG
(・∀・)ニヤニヤ
0929デフォルトの名無しさんNGNG
httpやftpは5,6,7層にまたがっている
単独の層にいるわけではない
よって間違い
0930デフォルトの名無しさんNGNG
会社に所属したらスポーツクラブに所属していけないわけではないが…
0931デフォルトの名無しさんNGNG
TCP/IPは後付けてOSI参照モデルに当てはめてるから
必ずしも一対一で対応しないんだな
どーでもいーがセクション層じゃなくてセッション層だ
0932デフォルトの名無しさんNGNG
>>912
CCNAなんかで上辺だけ分かった気になって、
内容をろくに理解せずに他人に吹聴して失笑を買うタイプだな

4層以下は対応関係を定義できるが、
5層以上は規格がお互いが関連しあっているため、
プロトコルが複数の層にまたがることになる
だからOSI参照モデルは現実には見合わないと言われている

HTTPのRFCを読めば分かるが、
接続手順からデータ定義、コマンドとその応答まで、
層をまたがる形で一つのプロトコルとして定義されている
0933デフォルトの名無しさんNGNG
アップセットねデブ
0934デフォルトの名無しさんNGNG
>>931
どーでもいーがセッション層じゃなくてセション層だ

ttp://cgi3.tky.3web.ne.jp/~yutakakn/about/book/software15_book.html
とかな。
0935621=782NGNG
>>934
Google でオーディエンスしてみた。

セッション: 2,070件
セション層: 505件

世間的には、セッション層で通るようだな。
0936デフォルトの名無しさんNGNG
TCPは4層からなる
0937デフォルトの名無しさんNGNG
>>935
なかなか的を得た指摘ですな
0938デフォルトの名無しさんNGNG
的は(
0939デフォルトの名無しさんNGNG
金的を撲つ
0940デフォルトの名無しさんNGNG
ここはプログラミング版だが、基礎知識ってことでいいかな…

>>932
> だからOSI参照モデルは現実には見合わないと言われている

Roseの"The Open Book"読むと、大変手軽に、
7階層まじめにやると"悲惨だな"と主張する資格を得られます(w

>>932
> HTTPのRFCを読めば分かるが、
> 接続手順からデータ定義、コマンドとその応答まで、
> 層をまたがる形で一つのプロトコルとして定義されている

SNMPだとASN.1使ってるし、SOAPなんかもXMLを使ってるから、
もうちょっと分離が進んでるね。Sun RPCも。
けど、階層モデルじゃあないね。プレゼンテーション層・ヘッダとかないもんね。

参照モデルとしては、なかなか良く出来たと思いますが。
0941デフォルトの名無しさんNGNG
>>934
そんなのは発音のマップの違い
「セクション」は完全に誤りだろ
0942デフォルトの名無しさんNGNG
馬鹿正直に7層実装したらプロトコルオーバーヘッドがすごい罠。
0943934NGNG
>>935,937,941
一般にセッション層が使われるからってそれが
正しいというわけではない。
通じはするけどね。

発音のマップって何?っていうのはおいといて
正しい言葉は「セション層」。

覚えておいて損はないと思いまつ。
セッション層は本当は違うんだよーとうんちくをたれれ。
俺みたいにな(w
0944デフォルトの名無しさんNGNG
正しくは「session layer」だろ
カタカナで完璧な発音は表せない
0945デフォルトの名無しさんNGNG
「セション」なんて言って英語圏の人に通じるわけ無いのにバカだねぇ
0946デフォルトの名無しさんNGNG
>>944
禿げ同


テレビのことも

正しい言葉は「テレビジョン」。

って言いはるんでしょうw
もちろん正しい言葉は「television」だがな
0947946NGNG
ちなみにGoo国語辞典によると、
http://dictionary.goo.ne.jp/search.php?MT=%A5%BB%A5%B7%A5%E7%A5%F3&jn.x=26&jn.y=11&jn=%B9%F1%B8%EC&kind=jn&mode=0
http://dictionary.goo.ne.jp/search.php?MT=%A5%BB%A5%C3%A5%B7%A5%E7%A5%F3&jn.x=30&jn.y=4&jn=%B9%F1%B8%EC&kind=ej&mode=0
sessionに対応する正しい日本語は「セッション」らしい。他の辞書は知らん。
0948デフォルトの名無しさんNGNG
日本語化したものは、日本語でいいと思うけどな
セッションは微妙だが、テレビは正しく言ってもテレビだろ。
0949デフォルトの名無しさんNGNG
あ、>>946のtelevisionに対してね。テレビジョンの方じゃなくて。
0950934NGNG
>>944-949
アフォたちよ、sessionがセッションかセションかなんて関係ないんだが?

OSI参照モデルの第5層のことをセション層というんだよ。ボケ!
セッション層で通そうとするのは単なる無知かひねくれもの。プッ(w

どうしても認めんというならセション層に決めたやつを恨むんだな。
0951デフォルトの名無しさんNGNG
セッションだと間違いな理由は?
0952デフォルトの名無しさんNGNG
>>950
かなりのアフォと見た。
OSI参照モデルを制定したのは国際標準化機構(ISO)だ。
その文書に「セション層」と書いてあるのか?
ISOは日本の団体か?
0953デフォルトの名無しさんNGNG
その文書にsessionと書いてあるなら、それに対応する日本語は「セッション」だ。
それが例え正しい発音でなかったとしても、そもそも正しい発音を日本語で表現するのは無理。
正しい言葉は何があっても「session」であり、それを日本語にすると「セッション」になる。
0954デフォルトの名無しさんNGNG
>>950
>セション層に決めたやつ
って誰?
0955934NGNG
>>951-953
はいはい。
ISOが日本語訳でもしましたか?見てみたいですな。(w
情報処理試験の勉強してみてね。
お国の方針(?)ではセション層というみたいですが。

まぁ情報処理試験のテキストでもセッション層とかかいてある
クソなものはありますが、試験にセッション層という言葉は
出てこないですな。
0956934NGNG
>>954
残念ながら個人名までは自分も知らん。スマソ

>>955の通り情報処理試験ではセション層といわれてます。
0957デフォルトの名無しさんNGNG
ちょっとググってみたところ、日本語訳は

規格名称:JIS X5003 開放型システム間相互接続の基本参照モデル

で記述されてるのかな?
0958デフォルトの名無しさんNGNG
>>953
副詞の「たとえ」を「例え」と書くのはまちがっていますね。
0959デフォルトの名無しさんNGNG
IPAはセッション層って言ってるみたいですが
0960デフォルトの名無しさんNGNG
>>955
情報処理試験はもうほとんど取るものはありませんが、何か?
情報処理技術者試験センターは規格を制定した団体ではありませんが、何か?
0961デフォルトの名無しさんNGNG

         だんだん934が苦し紛れになってきますた!

0962954NGNG
>>956
別に個人名を聞いてるわけじゃないよ。
どの団体が*セション層*だと*制定*したのかを聞いてるんだけど。

>>959
これかい?
http://www.ipa.go.jp/cgi-bin/namazu.cgi?query=%A5%BB%A5%C3%A5%B7%A5%E7%A5%F3%C1%D8&whence=0&max=20&result=normal&sort=score
http://www.ipa.go.jp/cgi-bin/namazu.cgi?query=%A5%BB%A5%B7%A5%E7%A5%F3%C1%D8&whence=0&max=20&result=normal&sort=score

情報処理技術者試験センターの言うことが100%正しいのに
情報処理振興事業協会の言うことは完全に間違ってるということですか?>>934
0963デフォルトの名無しさんNGNG
で、「セッション」か「セション」のどちらが正しいかわかったら
ネットワークプログラミングになんか役に立つんですか?

ちなみに、IMEの第一変換候補「セッション」と「背ション」でした。
Solaris 9 についてたATOKでも「セッション」と「背ション」でした。
0964954NGNG
>>943
自分が正しいと思ってるならIPAに「セッション層は本当は違うんだよーとうんちくをたれ」てみてはいかが?
それでIPAが認めたらあなたの言う通りなのでしょう。
しかしそれが認められない、もしくはあなたが異議申し立てをできないなら
あなたの主張はただの自己満足です。
0965デフォルトの名無しさんNGNG
>>963
正直なとこ,パケットいじるような人にしか役に立たないかも
0966デフォルトの名無しさんNGNG
>>965
えっ?
パケットいじるような人は
「セッション」と「セション」の違いって重要なの?
0967デフォルトの名無しさんNGNG
「セッション」などと言う言葉はこの世に存在しない。
sessionは「セション」だ。
違いもなにも、存在するものとしないものを比較すること自体おかしいだろう。
0968デフォルトの名無しさんNGNG
('A`)ノ マンドクセ
2ch的に、セショーンでいいじゃん?
0969デフォルトの名無しさんNGNG
>>968
2ch的セショーンを直すとセッションになってしまうわけだが・・・
0970デフォルトの名無しさんNGNG
>>969
変換規則を教えてください
0971デフォルトの名無しさんNGNG
>>970
普通 -> 2ch的
AッBC -> AB-C

例)
マッタリ -> マターリ
コッソリ -> コソーリ
セッション -> セショーン
0972デフォルトの名無しさんNGNG
なるほど。
助かりました。
0973デフォルトの名無しさんNGNG
ここは小学校ですか?
0974誠に糞レスではあるが、NGNG
>>971
>>969はセショーン→セッションを主張しているのであって、
セッション→セショーンを主張しているのではない。

ところが>>969に従えばヨカーン→ヨッカンとなってしまう。

逆も真とは限らない。プログラマの皆様はお気をつけ遊ばせ。
0975969NGNG
>>974
誠にごもっともである。ヨカーンのことをすっかり忘れていた。スマソ
0976デフォルトの名無しさんNGNG
次スレ立てれ
0977デフォルトの名無しさんNGNG
そう言えばsambaはどうなった?
0978デフォルトの名無しさんNGNG
次スレではこんな糞トークやめてね。
0979本7 ◆HON7/awDa. NGNG
HTTP2.0作ってください
0980デフォルトの名無しさんNGNG
>>977
糞トークがなければ後1ヶ月はもつ
0981デフォルトの名無しさんNGNG
>>934はどこいった
0982デフォルトの名無しさんNGNG
goo和英辞書
http://dictionary.goo.ne.jp/

セッション
session.


セション
検索結果に該当するものが見当たりません。
キーワードを変更して再度検索をしてみてください。



0983e-wordsNGNG
http://e-words.jp/?w=%u30BB%u30B7%u30E7%u30F3

「セション」の検索結果

お探しの単語は 「セッション」 ですか?
0984デフォルトの名無しさんNGNG
サラシアゲ
0985デフォルトの名無しさんNGNG
>>983

Microsoft OLE DB Provider for ODBC Drivers エラー '8007000e'

[Microsoft][ODBC Microsoft Access Driver] テンポラリ ファイル用の空き容量が不足しています。

D:\INETPUB\E-WORDS_JP\..\engine.inc, 行 177


ワラタ
0986デフォルトの名無しさんNGNG
お前ら、暇なんだな。
0987デフォルトの名無しさんNGNG
934=986
0988デフォルトの名無しさんNGNG
>>987
いちいち言わなくてもみんな分かってる。可哀相だからヤメレ
0989デフォルトの名無しさんNGNG
単なるコピペ修正ですが、テンプレ用意してみました。
うちのホストじゃ暫く立てられないラシイので誰かヨロ。

ネットワークプログラミング相談室 Port6
------------キリトリ線-----------------------
主にソケットに関しての質疑応答スレです。

Programming UNIX Socket FAQ (日本語訳)
http://www.kt.rim.or.jp/~ksk/sock-faq/indexj.html

Winsock Programmer's FAQ
http://tangentsoft.net/wskfaq/

過去スレ:
Port1 http://pc.2ch.net/tech/kako/970/970344582.html
Port2 http://pc.2ch.net/tech/kako/1006/10062/1006258198.html
Port3 http://pc3.2ch.net/test/read.cgi/tech/1023359282/
Port4 http://pc3.2ch.net/test/read.cgi/tech/1034236536/
Port5 http://pc2.2ch.net/test/read.cgi/tech/1040220302/

関連リンクは>>2-10辺り
------------キリトリ線-----------------------
続く
0990デフォルトの名無しさんNGNG
続き
------------キリトリ線-----------------------
図書コーナー!

UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTI
http://www.amazon.co.jp/exec/obidos/ASIN/4894712059/ref=pd_bxgy_text_2/249-2677107-1089124
詳解TCP/IP〈Vol.1〉プロトコル
http://www.amazon.co.jp/exec/obidos/ASIN/4894713209/ref=pd_sim_dp_3/249-2677107-1089124
The Implementation (TCP/IP Illustrated, Volume 2)
http://www.amazon.co.jp/exec/obidos/ASIN/020163354X/ref=pd_sim_dp_4/249-2677107-1089124
Linuxソケットプログラミング―ネットワークプログラミングにおける実践技法
http://www.amazon.co.jp/exec/obidos/ASIN/4894714671/qid=1034258224/sr=1-4/ref=sr_1_2_4/249-2677107-1089124
------------キリトリ線-----------------------
足りなかったら適当に付け足してね
0991セション層NGNG
次スレ
http://pc2.2ch.net/test/read.cgi/tech/1052106444/
0992デフォルトの名無しさんNGNG
オツカレー
0993986NGNG
ん? 俺はこのスレ初書き込みだぞ。
単なる暇な学生だよ。
0994デフォルトの名無しさんNGNG
>>993
えーっと、
    必 死 だ な (´,_ゝ`)プッ
0995デフォルトの名無しさんNGNG
>>994を晒しあげ
0996デフォルトの名無しさんNGNG
http://www.yahoo2003.com/betu/linkvp2/linkvp.html
0997デフォルトの名無しさんNGNG
997
0998デフォルトの名無しさんNGNG
998 
0999デフォルトの名無しさんNGNG
999  
1000デフォルトの名無しさんNGNG
1000   
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。