ページ 11

Winsockについて

Posted: 2011年2月14日(月) 22:20
by Ciel
お世話になります。

Winsockを使って、UDPで通信しようと思ってるんですが、TCPと違って、自分でデータの損失とかチェックして
対応しなければならないので、その辺勉強しようと思ってるんですが、
データの損失のチェックや再送などに対応したサンプル等があるサイトってどこかありますでしょうか?

通常のデータの損失等を考えないUDP通信ならできるので、その辺を対応してるサンプルが載ってるサイトでお願いします。
UDP通信について詳しい書籍があれば、書籍でも構いません。

それと、もう一つ質問なのですが、
Winsockを使って、HTTPサーバにGET / HTTP/1.0\r\n\r\nなどのコマンドを送信して、
データを受け取って色々やろうと思ってるんですが、
どのサイトに対して行っても、特に問題はないのでしょうか?

ここでいう問題とは、不正アクセス等で問題になり、事情を聞かれるような事態にならないかと
心配しているってことです。
winsockでアクセスするのと、普通にブラウザでアクセスするのとでは特に変わらないと思ってるのですが、
どうなのでしょう?(アクセスしすぎは問題だとは思いますが)

バカな質問だとは思いますがよろしくお願い致します。

Re: Winsockについて

Posted: 2011年2月14日(月) 22:58
by softya(ソフト屋)
うーーん。UDPはパケットロスするから意味(高速性)があるですけどね。

「TCPとUDP/両プロトコルの相違」
http://win.kororo.jp/archi/tcp_ip/tcp_udp.php
TCPの良い所だけを取りいれば良いと思います。
ただ、全部を取り入れたらTCPを使うほうが早いでしょう。

>どのサイトに対して行っても、特に問題はないのでしょうか?

基本的には問題はずですが、内容については著作権があるので再利用に付いては制限されます。
あと、書かれているようにF5アタックのようなサーバ負荷のかかる行為も禁止ですね。

Re: Winsockについて

Posted: 2011年2月14日(月) 23:09
by YuO
Ciel さんが書きました:ここでいう問題とは、不正アクセス等で問題になり、事情を聞かれるような事態にならないかと
心配しているってことです。
winsockでアクセスするのと、普通にブラウザでアクセスするのとでは特に変わらないと思ってるのですが、
どうなのでしょう?(アクセスしすぎは問題だとは思いますが)
クロールするのであれば,1req/s程度に抑えておくことと,robots.txtに従っておくことだと思います。
ただし,この速度でやってサーバーのバグを踏んで逮捕された事例 (Librahack事件) もあるので500 Internal Server Errorが出たら打ち切ることも必要かと思います。
# 先行事例としてLibrahack事件の各種まとめを読んでおくのもいいかもしれません。

Re: Winsockについて

Posted: 2011年2月14日(月) 23:40
by Ciel
softya(ソフト屋) さんが書きました:うーーん。UDPはパケットロスするから意味(高速性)があるですけどね。

「TCPとUDP/両プロトコルの相違」
http://win.kororo.jp/archi/tcp_ip/tcp_udp.php
TCPの良い所だけを取りいれば良いと思います。
ただ、全部を取り入れたらTCPを使うほうが早いでしょう。

>どのサイトに対して行っても、特に問題はないのでしょうか?

基本的には問題はずですが、内容については著作権があるので再利用に付いては制限されます。
あと、書かれているようにF5アタックのようなサーバ負荷のかかる行為も禁止ですね。
ありがとうございます。
少しでもパケットロスしてしまうと、再送が必要になってくると思うので、
その対策をしているコードを一度見たかったんですよねぇ。
ちょっと色々やってみます。

YuO さんが書きました:
Ciel さんが書きました:ここでいう問題とは、不正アクセス等で問題になり、事情を聞かれるような事態にならないかと
心配しているってことです。
winsockでアクセスするのと、普通にブラウザでアクセスするのとでは特に変わらないと思ってるのですが、
どうなのでしょう?(アクセスしすぎは問題だとは思いますが)
クロールするのであれば,1req/s程度に抑えておくことと,robots.txtに従っておくことだと思います。
ただし,この速度でやってサーバーのバグを踏んで逮捕された事例 (Librahack事件) もあるので500 Internal Server Errorが出たら打ち切ることも必要かと思います。
# 先行事例としてLibrahack事件の各種まとめを読んでおくのもいいかもしれません。
ありがとうございます。
Librahack事件のまとめ読みました。
めったにない事例だとは思いますが、気をつけておきます。
さすがに一日2000回はないと思いますw

Re: Winsockについて

Posted: 2011年2月14日(月) 23:56
by softya(ソフト屋)
Ciel さんが書きました: ありがとうございます。
少しでもパケットロスしてしまうと、再送が必要になってくると思うので、
その対策をしているコードを一度見たかったんですよねぇ。
ちょっと色々やってみます。
そこを考えるのが面白かったりするんですけどね。

UDP/IPプロトコルを参考に載せておきます。
「ダウンロードサービスの違いと通信プロトコル」
http://www.atmarkit.co.jp/fmobile/kaise ... col.html#2

「図解で学ぶネットワークの基礎 - 図解で学ぶネットワークの基礎:IP編:ITpro」 UDP編を順番に。
http://itpro.nikkeibp.co.jp/article/COL ... selfup#udp

色々UDP関係は特許申請されているらしく「UDP パケット ロス」で検索すると特許が結構引っかかります。
なので、独自コードのつもりで発表して特許に引っかかるオチも考えられるのでコードを載せるのはリスキーなのかも知れません。
大学の論文があまり引っかからないのもその関係?

Re: Winsockについて

Posted: 2011年2月15日(火) 00:23
by Ciel
softya(ソフト屋) さんが書きました:
Ciel さんが書きました: ありがとうございます。
少しでもパケットロスしてしまうと、再送が必要になってくると思うので、
その対策をしているコードを一度見たかったんですよねぇ。
ちょっと色々やってみます。
そこを考えるのが面白かったりするんですけどね。

UDP/IPプロトコルを参考に載せておきます。
「ダウンロードサービスの違いと通信プロトコル」
http://www.atmarkit.co.jp/fmobile/kaise ... col.html#2

「図解で学ぶネットワークの基礎 - 図解で学ぶネットワークの基礎:IP編:ITpro」 UDP編を順番に。
http://itpro.nikkeibp.co.jp/article/COL ... selfup#udp

色々UDP関係は特許申請されているらしく「UDP パケット ロス」で検索すると特許が結構引っかかります。
なので、独自コードのつもりで発表して特許に引っかかるオチも考えられるのでコードを載せるのはリスキーなのかも知れません。
大学の論文があまり引っかからないのもその関係?
何度もありがとうございます!

UDPのコードがあまり載ってないのはそういうこともあったんですね。
自分で頑張るしかなさそうですね。

教えていただいたサイトは非常に参考になります!
なんとなくですが、少しイメージが湧きました。
何度も読んで自分で対応できるように頑張ります!

自分が頑張るしかないので、解決と致します。

Re: Winsockについて

Posted: 2011年2月15日(火) 00:25
by Ciel
解決マークが付かないのでもう一度。

最近、解決マークが付かないの多い気が・・・