◎正当な理由による書き込みの削除について: 生島英之 とみられる方へ:ネットワークプログラミング相談室 Port30 [転載禁止]©2ch.net	YouTube動画>3本 ->画像>1枚  
動画、画像抽出    || 
この掲示板へ   
類似スレ   
掲示板一覧  人気スレ  動画人気順 
 このスレへの固定リンク: http://5chb.net/r/tech/1414709836/ ヒント: http ://xxxx.5chb .net/xxxx のようにb を入れるだけでここでスレ保存、閲覧できます。
 主にソケットに関しての質疑応答スレッドです。 
   Programming UNIX Socket FAQ (日本語訳)  
http://www.kt.rim.or.jp/ ~ksk/sock-faq/indexj.html 
 Winsock Programmer's FAQ (日本語訳)  
http://www.kt.rim.or.jp/ ~ksk/wskfaq-ja/   
 関連リンクは
>>2-10 辺り 
 足りなかったら適当に付け足してね   
 前スレ 
 ネットワークプログラミング相談室 Port28  
http://toro.2ch.net/test/read.cgi/tech/1334736934/   ネットワークプログラミング相談室 Port29  
http://peace.2ch.net/test/read.cgi/tech/1351670708/     関連スレ 
 ネットワークプログラミング雑談  
http://toro.2ch.net/test/read.cgi/tech/1235800707/                  ノ      ゚.ノヽ  , /}      ... >>1 乙じゃなくて   NFCに関するプログラミングの相談ですが、ここで良いでしょうか? 
 IDmあたりならWinSCard.dllなどで探した方がサンプル多いんじゃないかな 
 >>11   PC/SCを使ったサンプルがあったのでそちらで実装しました 
 対応していない古いデバイスだとNGですが 
 今回の動作環境が比較的新しかったので問題なく動きました 
  22:00 -(24:30)28:30 
 基本的な質問で申し訳ないですが何故プロキシを使って書きこむと 
 >>15   俺はプロキシだ!っていちいち名乗るからです。 
  >>15   状況がちっともわからんがHTTPでも勉強してね 
  >>15   HTTPヘッダで判断するのが基本だけど、ポートを叩いてみてproxyと判断するとこもある。2chもやってなかったっけ。 
  C言語でネットワークプログラミングを勉強しているのですが質問があります。 
 >>19   パケットを盗み見てダンプすることと、 
 書き換えて転送することはまるで違う。 
 自分がブリッジとしてネットワークに割って入るなら書き換えは可能。 
  OSにもよるんじゃないの 
 ブリッジしないと無理だとおもうよ〜専用ハードを作ったらうれるだろうか? 
 >>22   ブリッジやゲートウェイじゃなかったら、元のパケットはどうやって遮断するの? 
  >>23   転送容量が100Gbpsくらいあるハードつくれば 
 結構売れると思うよ。 
  >>24   「RAWソケットで」という条件付なら無理だけど 
 パケットを操作するためのシステムインターフェースは存在するでしょって事 
 カーネルモジュール作る必要あるだろうけど 
 極端な話、ネットワークドライバでやれば何でも出来るわけだし 
  >極端な話、ネットワークドライバでやれば何でも出来るわけだし  
 >>27   ネットワークドライバを特定の目的向けに書き換えることを言ってるんだよ 
 そうすれば自分のインターフェースに入ってきたパケットなら 
 消すことも書き換えることも出来るし、存在しないパケットを生成する事だって何でも出来る 
 当たり前のことを言ってるだけだ 
 特にLinuxとかならドライバのソースが公開されていることが多いから、やる気にさえなればそんなに大変なことじゃないよ 
  >>28   そうですか。わかりましたので独り言は他所でやってください。 
  >>29   ブリッジじゃなきゃ出来ないというのを否定されたからってそんな反応しなくても 
 そもそもブリッジにしたって同じ問題があるだろ。RAWソケットじゃ出来ない 
 ネットワークドライバ書き換えは極端な話として書いただけで、そこまでしなくても方法はあるよ 
 iptablesとかがやってることだし 
  >>30   bpfでもpcapでもいいのに、ドライバ書き換えるとか言い出すバカは 
 相手にできないということですよ? 
  >>30   それと 
 >ブリッジじゃなきゃ出来ないというのを否定   
 否定したつもりなんですか? 
 ブリッジじゃないとできませんよ。 
 究極のおバカさんですか? 
  Thunderbirdってメールアドレスとパスワードを入れるだけで 
 >>37   >正攻法ならMXレコード引けば  
 リンク参考になりました。 
 dnsjavaでMXレコードが使えるそうなのでやってみます。 
 回答ありがとうございます。 
  成功率をどれくらい期待してるかによるけど、 
 >>19   乗っ取り合い相手が同じセグメントにあるなら 
 proxy-arp が古典的な方法 
  初心者なのですが質問させてください 
 ・12バイトしか送信してないつもりだけど実際には28バイト送っていた 
 >>44   どうも1番目のようでした。有難う御座いました。   
 通信の区切りをバイト数で切っていたつもりが、次の送信分まで読み取っていたみたいです。 
 通信の区切りは何を基準にやるのが良いのでしょうか・・・ 
  余分に読み取ったデータを捨てずに残しておいて次の処理に回せばいい 
 素人さんにもわかりやすい例で言えばhttpの成功があるじゃないか。 
 httpが成功したのは1リクエスト、1レスポンスのシンプルさじゃないのか。今となっては酷いものだが。 
 メールアドレスの@以降を使ってAレコードを引いて 
 ちゃんと勉強してからやれ。その程度の知識じゃあ周りに迷惑かける。 
 メールアドレスならMXレコード引かなきゃダメじゃね? 
 digとかnslookupでなくて、いきなりプログラミングしてる時点でお察しください。 
 >>53   MXレコードとかAレコードとか今回初めて知りました。 
 正直メール関連に限らずネットワークの知識はあまりないです。   
 メールクライアント作ろうとしている知り合いがいて、 
 私も興味を持ってその人とは別に自分なりにやって 
 たまにその人が作るのを手伝ってみてる感じです。 
 ちなみに、その人は私よりネットワークやプログラミングの知識がないです。 
 Thunderbirdはデータベース使っているらしいですけど、 
 メールアドレスとパスワードで送受信の設定ができたら楽だと思いまして。 
 その人には以前 
 「MXレコードを引けば@以下から受信サーバー名わかるらしいよ。 
 けど私もぜんぜんわかってないし、まずクライアントできてからだね。 
 こういうこともできたらいいなくらいな感じかな。」 
 なんてことを言ってました。 
 一応受信サーバー名とユーザー名とパスワードを使ってメールを受信したりすることはできてます。    
>>54   MXレコード引いて出るのはName Server名ですよね? 
 それ出しても利用方法がわからす、 
 「mxレコード メール」で調べてみたところ 
 メールアドレスはAレコードかAAAAレコードに情報があるとか見て、 
 ためしに引いてみたら
>>52 の通りでした。 
 AAAAレコードはどれもNullPointerExceptionでした。 
 pingで調べてみたら大学のアドレスの場合 
 ドメインのIPと送受信サーバー(送信も受信もサーバー名が同じです)のIPが同じでした。 
 Aレコードがうまく行ったのもこれのためなのかもしれませんね。    
>>55   digやnslookupは知りませんでした。 
 そもそもあまりコマンド知らないもので。 
 すいません。 
  ネットワークだけでなく普通のプログラミングも怪しいから 
 やめさせるなんてとんでもない 
 対応表でもない限り@以降から受信サーバーの情報は取ってこれないようなのであきらめます。 
 TCPって1バイト未満のデータが届いたときは1バイト以上のデータが届くまで待ってSocketに現す? 
 TCPはsequence numberで送受信の制御を行う 
 じゃあ各Socketの末端に現れるのは完全に1バイト単位ってことでおk? 
 君は軽佻浮薄だな 
 >>65 に書いてあるのはウソかもわからんぞ 
 ちゃんとRFCを読みたまえ 
 >1バイト未満のデータ 
 パケット単位で開封されるから半端ビットってものが存在しないのか 
 量子通信の絡みで半ビット対策が議論されてるけど、有効な手段はないようです。 
 >>72   なにがそんなに楽しいのか・・・   
 通信関係の低レイヤやったら半ビットなんて当たり前に出てくる単語だぞ? 
  >>74   ネットワークプログラミングの話しかでてないような…? 
  >>75   だからどの規格で、参照実装はなにで、プログラミング言語はなんなんだよwww 
  >>72   RFCに入るには10年くらいかかるか、あるいは入らないかもしれませんね。 
 この分野はサムソンの動向次第だと思います。   
 サムソンの考えによっては、RFC自体が尊重されないようになるかもしれません。 
 その場合、サムソンがRFCに代わる規格を発行するようになるのでしょう。 
  「半ビット対策」でググってもヒット0件だったので何の話だかわけがわからんけど、どこらへんの分野の話なの? 
 量子通信でググっても、Wikipediaで 
 RS232Cの ストップビット1.5 とは無関係な話? 
 ハーフビットの概念が理解できない奴が騒いでるだけだから 
 ネットワークプログラムで半ビットとか出てこなくね? 
 ネットワークときいてRFCの範囲しか思いつかない奴が何人かいるね 
 誰か
>>87 の友達ネットワーク構築計画の相談に乗ってやれよ。 
 1バイト未満のデータがどうたらこうたらの話だったのに、 
 量子通信しってまーす、そりゃよかったね、ちゃんちゃん 
 普通にスレ読めば、TCPで1バイト未満の送信があるかというのが量子通信がどうのとなってる 
 一番の元凶は
>>71 がTCPの話もまともにできないのに、本人に興味があったからかなんだか知らないが、 
 量子通信とか持ちだしたから 
 オクテット単位未満をサポートする通信規格なんて存在するの? 
 >>104   RFCに乗るレベルのルールでは見たことないな 
 もし知ってたら教えて 
  >>104   だから
>>93 は「オクテット」と言ってるんだと思うが・・・    
>>105   RFCは8bit以外の処理系に対しても考慮されてるよ。 
 というか、RFC 821とか初期のものはむしろ7bitしか考慮してない。 
  8bit長のかたまりを オクテット と呼んで、 
 >>109   35年前には既に一般化した常識すら知らないってのは恥ずかしいだろ 
  >>112   自分が常識知らないからって 
 一般人をバカにし始めるのは見てて痛々しい 
  >>113   >一般人 
 一般人は知らないだろうwww 
  >>116   いや、
>>109 曰く一般化したらしいからそれに合わせてやっただけ。 
  Protocol Buffers, MessagePack, Apache Thrift 
 TCPみたいなUDPってなんだっけ? 
 すぐちねって言ったらダメだよってお母さんに教えられなかったの? 
 高度なネットワークとは自己増殖するネットワークのことか? 
 SSLの自己証明書って用途がよくわからないんですが、どういうことですか? 
 >>143   >SSLの自己証明書って用途がよくわからないんですが、どういうことですか? 
 >ようはオレオレ証明書っていうものですよね? 
 >接続先は証明できないけど暗号化できるからやるとかそういうものなんでしょうか?   
 主にそう。   
 >最終的に知りたいのは、 
 >自分が開発したアプリから自分が製作したwebページにアクセスするときに証明できるのか? 
 >っていう所です。   
 出来る。 
 自分で作るアプリならその証明書(正確には証明書を発行したCA=自分自身)を信頼することが可能。   
 大雑把に言うと、証明書を信頼できるのはプリインストールされたルート証明書という形で信用するCAを決めているだけなので。 
 ルート証明書はCAの公開鍵の自己証明書に過ぎません。 
  自分が開発したアプリがシステムのコンポーネント使うときに 
 TCPでセッションを張っていて、データが途中のままセッションが切れたとします。 
 JavaやCなどでTCPを使ってノンブロッキングSocketプログラミングをするとき、 
 中身のプロトコルを決めてそれで終了判断するのがお気楽かと 
 ブロッキングだろうがノンブロッキングだろうが 
 TCPの順番が約束されてるってのは 
 それじゃhttpとかのリクエストが全部届いてるかどうかっていうのはどう判断されてるんですか? 
 >>153   時間が過ぎたらアウトにします。 
 HTTPプロトコルバージョンは有れば事実上固定長です。 
  ゴーストプロトコルが発令されました。今後当局は一切関わりありません。 
 >>152   データの並びが送信側を同じになるってだけ   
 送信側 [ABC]送信 続いて [abcd]送信 と送った場合   
 最終的に ABCabcd が得られることは保証するけど 
 1回の recv でやってくる塊がどうなるかは保障していない   
 全て分断で7回の recv: [A] [B] [C] [a] [b] [c] [d]  
 連結された1回の recv: [ABCabcd] 
 分断と部分連結で2回の recv: [AB] [Cabcd] 
 これら全てが起きえます 
  >分断と部分連結で2回の recv: [AB] [Cabcd] 
 おっと 
 >>158   ありがとう 
 ・先頭記号や終端記号が分割された場合 
 ・固定長のヘッダが分割された場合 
 それぞれどうするのがセオリー? 
  固定長のヘッダハ固定長なんだから 
 >>160   先頭記号や終端記号は分割されないように1オクテットにするのが簡単 
 ユニークな記号なら複数オクテットでも処理できるけどね 
  ありがとう 
   >>161   俺がバカだった    
>>162   TCPの場合どれだけ分割が起こっても最小単位は1オクテットって事かな 
 >>163   そう 
 8ビット未満に分割されることはあり得ない 
  CでDNSリゾルバを作っているのですが、テスト用のアドレスでlookupすると 
 ip-address : host name = 1 : 1な世界にいるのか 
 linux C++な人はやぱsocket系はclibなので 
 超音波テロの被害にあっています。 
 世の中のどれだけの音の振動源・発信源が 
 人や社会が襲われ、罪もない人が超音波で襲われ、 
 超音波による物理的な力で、 
 「見続けるのがいやだから、殺して終わる」、 
 PF_PACKET, SOCK_RAWで作ったrawソケットでパケットを受信しているのですが, rawソケットで受信したパケットを上位レイヤーには渡さないような設定は可能でしょうか? 
 対象のプロトコルがなんなのかってのと上位層に渡したくない理由にもよると思うんだけど、 
 >>180   対象はDHCPです。 
 ある条件の場合だけ、 
 rawソケットを使用しているプロセスで 
 DHCPサーバー処理をさせようとしています。この際もともと動作しているDHCPサーバーは停止させたくありません。 
 iptablesも検討していますがrawソケットの設定で可能であればそれを使用したいです。 
  >>182   >>183   やっぱりできませんか。 
 iptablesで対応したいと思います。 
 ちなみに、カーネルをいじるとしたら 
 net/core/dev.c 辺りでしょうか。 
  受ける会社大丈夫? 
 サーブレットについて教えてください。 
 ソケットを使ったプログラムを組んでいるのだけど、 
 まあイミフだね。強いて聞くなら 
 クライアントの相互通信をしたいが 
 スイッチングハブで接続されているパソコンA,B,Cがあり 
 マスタリングの入門編読んだんだけど仕組みは分かっても実際どうプログラムしてるのかが分からなかった 
 Linux Programing Interface  ちょと重いか 
 >>208   在庫と値段的にちょっと厳しいかな    
>>209   ああなるほどlinuxから入ってネットワークに行くってのもありかー 
 linux本としてもいいなら買っちゃおっかな 
  マルチスレッドでTCPのacceptしたときnetstatのステータスはどう変化するんですか? 
 以下のようにVBSでURIで指定したサイトからデータ取得するものを作っています。 
 Win10 Home、Borland C++で 
 >>218   やはり10の問題でしょうか・・・。   
 セキュリティ会社に出向することになったんで、ollydbgでこういった動きで漏洩させるプログラムをデバッグで追っかける 
 準備として自分のメールアドレスにテストメールを送るEXEを作りたいだけなんですけどね。 
 これが10の問題なら逆にMAPIではできないというのを知れたのでよかったのかな・・・・。 
  Thunderbirdです。 
 変わらずでした。 
 MAPI っつったら Outlook 一択だろ常考。 
 mapi32.dllって64ビット環境でもちゃんと存在してちゃんと動くのか? 
 >セキュリティ会社に出向することになったんで 
 ここで適当に同業他社の名前出しとけばライバル蹴落とせるなw 
 ソケットの勉強をしようと思いクライアント側のプログラムを作成しているのですがなぜ 
 closeしなかったらプログラム終了時にシステムが自動的にcloseするというだけ 
 shutdownも必要ではなかったか? 
 libevが分からない 
 1つのネットワークカードに2つ以上のipアドレスを割り当てて、1つのサーバにその割り当てた別々のipアドレスで同時接続は可能? 
 横道にそれるけど 
 >>247 、
>>248   可能 
 WindowsでもLinuxでも出来ない理由はない 
  よくよく読んだら 複数クライアントが 1つのサーバーに接続 
 受信は問題ない 
 >>247-248   どっちも可能 
 ただし当たり前だけどアプリケーションで Listen するアドレスやポートを指定できる必要がある    
>>251   受けたアドレスと異なるアドレスに送る TCP スタックなんて見たことない 
  多重にクライアントを動かせない理由は何なのだろう・・・ 
 同じサブネットなのか違うセグメントなのかでも変わるな 
 >>256   何を根拠にそんなことを言うのかなあ 
 セグメントが違えば通信できないならインターネットなんて全然成り立たないわw 
  1枚のNICに2つのセグメント振る香具師なんているのか? 
 メンテ用の機器繋いだ時一時的に振ったことあるなあ 
 vmwareとか使えば、見かけ上は別のものとして扱えるけど 
 >>253   ん? 
 クライアントは普通に多重で動かせる奴も多いぞ 
 少なくともネットワークの制限で動かせないケースはほとんどないと思うが 
  >>261   >>247  に至った理由が何だろうね?って疑問だったわけで、深い意味はないです 
  >>257   ピントずれすぎ w 
 1つの NIC の話だから同一物理ネットワーク上に複数のセグメントを置く話 
 できない理由はないけど実験的にやるとか 
>>259  みたいに一時的にやるとか以外でそんな構成にすることはほとんどないと思う 
  >>262   >>247  はサーバーの話 
 1つの NIC では同一IPかつ同一ポート番号で待ち受け(Listen)できるのは基本1つだけだから複数のIPを振りたいって言う要求が出てくる 
  >>264   てっきり クライアントの話かと思った 
 IP分けるよりListenポート分けるほうが簡単だし刹那的にそうするもんだと早合点 
  ん?
>>247 は   
 1つのネットワークカードに異なる2つのIPを割り当てて(IP1とIP2) 
 同じアプリを2個起動して(AとB) 
 1つのサーバーに同時接続(AがIP1で、BがIP2で接続)   
 だからクライアントじゃないの? 
 数は説明上2つに変えた 
 1枚のNICに複数IPの指定は出来るという事ではまずはお茶しましょう。 
 二つのIP与えて、アパシェのIPベースバーチャルホストなんてのもやりました。  
http://good-stream.com/goodstream/server/apache/tips/ipbasevhost.htm   フル 
 >>263   ネットワークが絡んだ開発の仕事が多い俺は1つのNICに複数のセグメント 
 を割り当てるなんてごく普通にやってるんだが 
  ボンディングとかやぱ二枚刺しでルーターとかフィルターとかフィアオルをやる 
 >>266   あひゃ、改めて 
>>247  を読み直したら確かにクライアントの話だったわ 
 早合点は俺だった... orz 
 アプリが送信元IPアドレスを指定できれば可能だな 
  >>268   実運用環境でやってるなら単なるバカ 
 実験やテストでやってるならたいして珍しくもない 
  >>271   俺は開発環境でやってるけど 
 トポロジによっては実運用環境でも便利なケースはあると思うよ 
  >>271   顧客がやれと言ったから設定した 
 それだけのことさ 
 警告はした 
  そもそも警告したくなるような問題が発生しそうなケースが思いつかないんだが 
 >>271 は単に「バカ」という言葉を発したたかっただけだろ 
 そう言っちゃう人もいる事を理解して、無視してあげましょう。 
 >>273   ああ、作業者にはなんの責任もないから言われた通り作業してくれればいいです    
>>272   > トポロジによっては実運用環境でも便利なケースはあると思うよ   
 その便利なケースとやらを説明してみ 
  「問題ない」をなんで「問題ない」のか説明させようとするって典型的なアレだからな 
 なんだ説明できないのかよ w 
 パッと思いつくケースだと 
 >>282   各セグメントは閉じてるのに 
 わざわざ混在させるのか 
 バカの発想って面白いな w 
  バカって書いてる理由を書いてあるだろ? 
 バカはお前だよ。見た事ないんだろ。貧乏な現場とか、どうしようなない状況。 
 貧乏ならいちいちセグメントなんて分けるなよ w 
 元質問からの疑問 
 >>285   あのね俺が書いた例は独立して機能してる2つのセグメントを「混在」させるわけじゃないから 
 WindowsもLinuxも(その他大概のOSも)1つのNICに複数セグメントを割り当てることが出来るのに 
 その機能を使うのは「バカ」だって言うならその理由を書いてくれな  
 使える機能を使えるところで使わない方がバカでしょ 
  >>290   ありがとう 
 (bind ってそういうことだったのか。 漫然と使ってた) 
  >>291   ちなみにアドレス0.0.0.0にbindするというのは「どのアドレス宛でも受け付けますよ」という約束事。  
  どいつもこいつもしったかばっかだし 
 >>293   おーけーじゃあしったかを指摘して訂正してくれ 
 できないならお前もしったかだよな 
  >>289   バカには見えないのかな? 
 念のためにもう一度書いとくよ   
 > そもそも何かの目的があってセグメント分けてるのにそれをわざわざ混在させるなんて実運用でやるわけないだろ 
  ID:QrmkumON  の想定は 
 すんません「バカ」連呼したいだけのアホに餌を与えちゃいました 
 >>295   "混在"はしない 
 "共存"(相乗りでもいいや)できるんだけど 
 もしかして君にはそれが判らないの? 
  >>296   各々のセグメントに繋ぐ度にケーブル刺し変えてるってこと? 
 DNS とかも全く使わないならいいのかも知れないけど普通はバッチファイルとかで切り替えた方がいいと思うけど    
>>297   >>279  の内容すら理解できてない素人乙    
>>298   > "共存"(相乗りでもいいや) 
 の定義書いてくれ 
 オレオレ用語で話されても困るから 
  md5とかいう機能を利用すると、 
 ダウンロードしたファイルをプロはいちいちチェックしてるのでしょうか? 
 >>304   ダウンロードだけに限ればチェックが必要な怪しい所からはダウンロードしません 
  >>304   rpmとかyumとかがチェックしてくれる 
  リポジトリを信用するしかないから、もうyumにお任せですね。 
 >>308   > 先輩見ててもサイトから落としたファイルのハッシュチェックなどせず 
  あのねここはプログラミングのスレなの 
 >>309   ハッシュのチェックをするのは、出自が怪しいかどうかじゃなくて、 
 途中で壊れてないかを確認するためだろう? 
  >>311   そのどっちかではなく両方   
 元の
>>304 には「そのままインストールしています。」とあるから実行ファイルが前提 
 壊れてるならそもそもチェックなんてしなくても実行不可 
  だよね 
 >>312   もとの話につっこんだんじゃなくて、
>>305 につっこんだんだけどなあ。 
 まあいいや。 
  >>314   元の
>>304 に突っ込んだ
>>305 に突っ込んでんだからその前提ぶっ壊すのはアスペのみ 
  論破されると、相手をアスペだといい出すのは、2chではいつものことだが、 
 >>316 はアスペの意味を分かってるんだろうか。 
 >>317   「
>>305 につっこんだ」 
 →いや
>>305 も
>>304 の前提引き継いでるから 
 こういう流れが分からない奴 
 これがアスペの全てというわけでもないが一部 
  くわしいひとがいるみたいなので聴くけど 
 >>320   それハッシュ関係無い 
 そういうのは自分で調べるもんだし自己責任の範疇 
  TCPで書いたデータが相手に届いたか知る方法ってある? 
 ある 
 相手のソケットライブラリには届いていても 
 アプリに届いたかが重要なデータならアプリレベルで応答確認するしかないよ 
 SMPT や POP3 とかそう(プロトコルで応答を返すルール)だよね 
 そういえば 
 何を気にしてる?TCPでコネクトできたら届いてるでしょ 
 なのよねw 
 サーバー側の指定ディレクトリにあるファイル一覧をクライアント側で表示したいのですがヒントください! 
   サーバー  
http://ideone.com/fPQ4mZ     クライアント  
http://ideone.com/QZQMXY     サーバーではsizeof(ent->d_name)分渡しているのですが、クライアントでsizeof(filename) 256byte分受け取っちゃっているのでここをどうしたら良いのか分かりません。 
 あらかじめどんな名前のファイルが来るのかわかっていればそのサイズ指定すれば良いと思うのですが。。。 
 あとサーバー側ではwhile((ent = readdir(dir)) != NULL)でループの終わりを告げれるんですが、クライアント側でソケットに流したファイル名を全て取得したあとの終わり方の告げ方が分かりません。 
 >>335   分割で届いたりもありえるから 
 データ先頭にデータサイズ格納させて 
 その分だけ受信するようにしないといけない   
 このデータ先頭の情報をヘッダと言う 
 情報は1つだけじゃなく複数でも自分が必要な分だけ自分で決めた構造で送る 
  >>335   ftp プロトコル辺りを調べたらいいかも 
  >>337   >>338   できました。有難うございます 
  write 1回で送ったものは 1回のread で得られる保障はなく 
 APレベルで送受信するときはヘッダをつけてシーケンス番号を送って、肯定応答を返すのも常識だろう。 
 どんな常識だよ w 
 応答で正否返すのは当然だがシーケンス番号は普通要らない気が。 
 むしろシーケンス番号つけて順番どうりに送るのはtcpの役割でしょ 
 TCPとsocketの区別がつかないアホ
>>346   TCP上でアプリレベルの到達確認するのは特別な場合のみだな 
 本当にクリティカルな場面ではアプリレベルの到達確認さえも役に立たない場合さえあるし 
 同期通信なら、到達確認というか応答受信は入れるな。 
 まあ
>>335 のケースならヘッダもシーケンス番号も到達確認も必要ないな 
 送信側でデリミタ付けて受信側が対応すれば良い 
 >>357   悪いけどお前のレスからはニワカ臭しかしないんだわ 
 自慢じゃないけどこっちは通信絡みの設計しだしてから言うのが恥ずかしいくらいの年月経てるから 
 負荷試験?当たり前だろwwwそれをドヤ顔で言う時点であーあーあのタイプかってなるんだわ 
  tcpでデータ受信失敗するときって 
 >>362   ただデータが来ないだけなのか 
 相手が切断(通知が来ないような異常な切断)してるのかの判断って事でいいん?    
>>363   (大口叩いておいて何も言えねぇ) 
  アプリ側ってどのことか不明確だけど 
 >>362   >後者はアプリ側でタイムアウト時間が不明なときどう判断すりゃええの 
 そういう場合はアプリレベルでのキープアライブをするのが定石だな 
 ・相手(あるいはハブ)の電源が切れた 
 ・ケーブル切れた 
 の様な場合はメッセージに対する到達確認だけでは検出できないし 
  習作じゃなけりゃselect系(pollやlibevent)つかうしな。 
 >>352   rfc-959とかrfc-2616とかrfc-5321とか特殊な例なんだ 
 へー、そーだったんだ 
 わー、びっくりだわ 
  他はよく知らんがhttpのは到達確認っていうのか 
 実際に物(ファイルとかメールとか)をやり取りすろときの物の到達確認をするのと通信そのものの確認は別物だよなあ 
 通信レベルの到達確認したところであんま意味ない。 
 人をバカ呼ばわりする前に正しく使おうな 
 今度は「確認応答」とか言いだしたぞ 
 このスレではって本気で言ってるのかw 
 なんかスレを荒らしたようですみません。 
 >>377   外野が勝手に盛り上がってるだけだから気にしなくていいよ 
  >>377   気にすんな 
 バカどもが自爆しただけだから   
 本日のバカトップ3はミスリードの先頭を切ったID:8pLXigSN、 
 到達確認とか言いだしたID:AB8Qragb、 
 意味不明の戯言垂れ流してるID:aGg7Z+yHだな 
  >373 
 >>379   自分がしたレスを速攻忘れてるのかな?  
>>373  > 到達確認 
  >>381   お前バカ過ぎる 
 小学校低学年レベルの読解力 w 
  >>382   本題で反論できなかったら無理してレスしなくていいから 
  >>380   3バカにミスリードされて本質を理解できなかった知恵遅れのID:eJoj7htqには敢闘賞を上げよう 
  >>383   「言い出した」って言葉わかるかな? w 
  >>351   socket とか言ってるのはアホしかいないと言う現実 w 
  >>379   ミスリードとほざくなら TCP 上でシーケンス番号振ってるメジャーな例をよろしく 
  >>387   ひょっとしてタイムアウトとかキープアライブって理解できなかったのか? 
  3バカが誤解して勝利宣言してるようだから言っとくけどID:q6sk5dsoはオレじゃないから 
 ID:q6sk5dsoが無回答と言って勝利宣言しないように    
>>388   IMAPのtagとかsshのchannel numberかな 
 >>390   お前が誰かなんて知らんよ 
 どうでもいいし  
>>365-366  で回答出てるからもう要らんだろって話だ   
 > IMAPのtagとかsshのchannel numberかな   
 IMAP の tag はまだ微妙だが ssh の channel は違うだろ 
  >>392   技術系のスレでそんなことしか書けないならレスしなきゃいいのに... 
  >>389   ん?
>>389 はID:q6sk5dsoなのか? 
 違うなら反応しなくてよくね? 
 それとも自演してるのを忘れて自爆?    
>>390   違うなら反応しなくてよくね? 
  >>394   3バカの上を行くバカが現れたか 支離滅裂 
  ちゃんと質問しないと相手にされない「それ系のML」 
 アンドロイドスマフォとRaspaiとをLANでIOTのデータやり取りをしたいのだが、一般的 
 HTTPで要件満たすならそれでいいんじゃない? 
 俺はラズパイ上にwebサーバー立ててwebアプリから操作できるようにしてる 
 >410 
 なんか「サーバー」というものに対して根本的な勘違いをしているような... 
 >412 
 「webサーバーを立てて」といわれるとかなり大層なものを立ち上げることをイメージ 
 うおー調べてみたら結構たいへんだな。「WEBサーバー立てる」でも「メールサーバー 
 馬鹿はどうしようもない、踏み台を作って他の人に迷惑をかけるw 
 >>419   チャット クライアント サーバー プログラミング 
 くらいで調べてみたらどうなるんだ 
 こんなんでできんの?とか思うんだろうな 
  コピペで終わり。300万。というわけにはいかんか? 
 >421 
 ちょっと質問 
 候補 
 >>423   仕様(RFC7252)を読めよ。eclipseのプロジェクトは実装例。RESTFUL(HTTP)でもできるしUDPでもセキュアにできる  
http://coap.technology/    おっと、送信失敗したら何回かリトライするんだろ普通、TCPも同じだろ 
 >>423   お前の知識の信頼性の方がない、
>>426 ,427はお前には無理なのでスルーしていいぞ 
  >427 
 This protocol  provides  a procedure  for application  programs  to send 
 データグラムでロストや順序の入れ替わりは判るけど ペイロードが壊れてるってあるの? 
 グダグダ言ってないで424にさっさと答えろよ。タコ 
 >>440   いいですねその強気 
 一匹狼にはぴったりです 
  えええ、そういう意味なの? webサーバー=httpサーバーってことなの 
 「UDP」だけでどうやってデータを送信すんだ? 
 >444 
 えええ、そういう意味なの? webサーバー=httpサーバーってことなの 
 coapってLinuxなんかが動かず、TCPを実装する余裕がないような 
 >451 
 >452 
 HTTPサーバを実装するのは結構大変、あっ「WEBサーバー」ていうのかw 
 お前ら10年前からだろ。W 
 GPSを成立するためには相対背理論(特殊)を使わなければならない事を説明してください 
 UDPってパケットの消失や重複や順序入れ替えが起こり得るって事になってますけど、 
 こんなの見つけた 
 http://stackoverflow.com/questions/9196791/duplicate-udp-packets-how-often-it-happens     >>472   PCからPLC相手の通信をやってて、通信するパケットに採番する訳にもいかない 
 状況です。 
 消失は許容するとして、 
 順序入れ替え→1秒以上前の「古い」パケットと入れ替わる訳でもなさそう 
 重複→定期的にPC側のポート番号を変更(クローズ→再オープン)   
 …で逃げれるといいなぁ。 
 番号ふれない云々からするとMCプロトコルの1Eか? 
 予めタイムアウトゼロ秒でrecv()して読み捨てれば重複しても排除出来るか。 
   >>475   横河のFA-M3です。PLCに送る(PLCの)コマンドに任意の番号とかを付加出来ないん 
 ですよ(同社の新しめのやつだと付加出来るらしいけど)。 
 固定のIPとポートって事は無いです(ネットワーク関係はBSD由来だそうで)。 
 UDPは、自ホスト以外で使わない方がいいと思う。 
 >>471   あまりにも様々な条件が絡むので誰も答えられないし誰も保証してくれません 
 送信側、ハブ、受信側のどこでもパケット落ちが発生し得ます 
 それがIPプロトコルというものです 
 そもそもEthernetは100%伝送を保証していません 
  >>478   自ホスト内だと、自ホスト内でCPUその他のリソースの奪い合いになり、 
 結果としてリミッタとして働くのも利点ですね。    
>>480   順序が保証されない事を積極的に利用したネットワークスタックがあったら 
 やだなぁw 
  ウインドーズとリナックスで動くCで書くネットワークアプリは 
 >>483   俺は#ifdefで場合分けするけど 
 BSDソケット関数の範囲で使うなら全然大変じゃないよ 
  select使うのがアホと言ってるやつがアホなんだよなあ 
 大筋では似通ってるけどスレッドもOSの方言がきついな 
 質問です。 
 shutdownとcloseについて色々調べていたところ  
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13105844663   ここで回答者が(意訳すると) 
 「socketをcloseせず、shutdownしただけなら、再度セッション張りなおすこともできるよ」 
 と答えているのですが、いくら調べてもその方法が見つけられません。   
 やり方が分かる方は、教えていただけると助かります。   
 (例えば)httpサーバを作る時に、クライアントのshutdown(s, SHUT_WR)をサーバで検知してリクエストの区切りを検知。 
 返送とshutdown(s, SHUT_RD);でレスポンスの終了位置を検知させる。 
 なんてことができるといいなぁと考えています。 
 >>494   TCPなら 
 socket() -- close() 
 connect() -- shutdown() 
 の関係。 
 shutdownした後にconnectが成功するTCP/IPのプロトコルスタックは見たことないけど。 
 AF_UNIXとかならうまくいくかもね。 
  >>494   その回答者がバカなだけ。
>>498 も同類のバカ。 
 そもそもcloseとshutdownはそいつらが言っているような関係ではない。 
  >>494   質問の前半と後半の関係がよくわからんが... 
 前半は何かいい手があるのかもしれないけどそんなことが必要になったことがないのでよくわからん   
 > (例えば)httpサーバを作る時に、クライアントのshutdown(s, SHUT_WR) をサーバで検知してリクエストの区切りを検知。 
 これは普通に read() のバイト数 
 = 0 で検出できる   
 > 返送とshutdown(s, SHUT_RD);でレスポンスの終了位置を検知させる。 
 サーバー側で shutdown(s, SHUT_WR) するか普通に close() すればいいだけ 
 shutdown(s, SHUT_RD) はあまり使う機会がない 
  後半で言いたいことは、TCPって基本ストリームで切れ目が無いから 
 >>504   そういう場合はTCP_NODELAYで制御しろよ 
  >>509   TCP_NODELAYが何だか知らないならそういえばいいのにw 
  >>510   もしかして、そのフラグ立てたらネットワーク遅延や再送が回避できるとか思ってる? 
  >>513   どこをどう斜めによむとそういう妄想が出てくるのかな? 
  >>514   TCPのストリームがくっつく理由を理解できてない馬鹿がいるから 
  >>515   ああ、TCPのPSHの動作をしらないんだw 
  >>516   もしかして、そのフラグ立てたらネットワーク遅延や再送が回避できるとか思ってる? 
  >>517   どこをどう斜めによむとそういう妄想が出てくるのかな? 
 どうせお前の頭の中じゃ、遅延したらバッファにたまってPSHをつけても 
 くっつく、この程度のバカ認識なんだろ? 
  >>518   実装次第だけど、少なくともくっつけてはいけないという意味のフラグでは無い。 
 で、くっつける実装はよくある 
  話にならんなw 
 >>521   TCPの実装やソケットの実装触ったこと無い素人だろ?お前 
 妄想で話するから逃げるしか無くなるんだよ 
  技術的な要素を何一つ書きもしないで罵倒を繰り返してるクズに言われても、 
 TCP_NODELAY、PSHでどう解決するんだ? 
 blocking i/oで常時readかけてれば、PSHで送られたパケットはくっつくことなくreadできるよ。 
 >>525   PSHするならパケットの中身をTLVにでもすればリクエストの区切りなんて簡単に 
 検知するだろ馬鹿か。もっと単純な方法だってある。 
 ストリームを読みきったところが次のリクエストの途中かもしれない、という可能性が 
 一番の問題なのだから、PSHすれば丸ごと解決。 
  どうでもいいけど、TLVならまずヘッダだけ読んでヘッダの中の長さ分読めば、 
 httpサーバーを その実装で は色々問題ありそうだけど 
 >>529   初心者が陥りやすい罠だなw 
 TCPストリームではTLVのヘッダ長分読めるとは限らないだろ。 
 ヘッダが読めても残りの長さ分読めるとは限らない。 
  無駄なこと 
 >>524  > 技術的な要素を何一つ書きもしないで罵倒を繰り返してるクズ   
 命中率の高いブーメランですね 
  HTTPサーバでTCP_NODELAY? 
 >>535   そんなマシな話じゃないよ 
 >(例えば)httpサーバを作る時に 
 意図も理解できずにここだけ拾って、HTTPだぁ!\r\nが区切りでなきゃダメだ!って 
 思考停止してる馬鹿が騒いでいるだけの話w 
  >>537   でなきゃダメなんて誰も言ってないから・・・ 
  >>539   お前らが一人なのか何人なのか知らんが、 
 まともに代案を出して俺と技術で議論することすらできなかった時点で 
 お話にならないんだよ馬鹿がw 
  >>540   お前の間違いが余りにも馬鹿すぎて一斉にツッコまれただけ 
  >>540   とりあえず落ち着いて自分のレスを読み返してみろ 
  TCP_NODELAY、PSHでくっつかなくなるとか一番やばいタイプの勘違い 
 TCP_NODELAY も PSH もどっちかって言うとタイミングの指示だからねえ 
 >>494 にはOSの指定が無い。突っ込み所漫才でした。 
  TCP/IPストリームに実データとして区切りを書き込まずに、 
 TCP_NODELAYで1024バイトを2つsendして、そのあとのタイミングで 
 TCP_NODELAYで、一発のsendで送ったものが2度以上のrecvに分かれるなんて普通に起こるんだが 
 >>551   とりあえずWin10でwinsock2で 
 TCP_NODELAYかけたソケットに5バイトのsendを4回行って 
 recv1024バイトで受け止めたら一発で20バイトとれたぞ   
 お前がいるのはあの世か?   
 というか一発でとれなかったらTCPの受信効率悪すぎてヤバイから実験するまでもないことなんだがな・・・ 
  >>551   とりあえず
>>517 を理解することから始めろ 
  struct sockaddr* を引数にするライブラリを書いているんだけど 
 単純にsocketを使ってTCP/lPでクライアントとサーバーで通信するプログラムをLinuxのC言語で作っています。 
 select呼んでるのに待ちが発生とか 
 connectがEINPROGRESSになった後、本当にエラーになってるんじゃないか? 
 select(2)  第3引数を NULL でやってたり?  
 >>570   何言ってるかわからん。きちんと説明できない馬鹿なの? 
  >>579   横からだけど
>>570 ってかなり分かりやすいと思うんだけど 
 とりあえずクライアント側でメッセージの取りこぼしが無いかどうか見直してみたら 
  横からだけど「パケットをダンプ」が出来ないんだろう 
 >>570 さん自演はやめてください。みっともないですよ。 
  "!"!"!MOHYO!"!"!"2" 
   1.[[[HUn≒MUL=POSI≠MAHO+Set*HUGE=SAGE=LOGE=NOISIA=0≒1]]]   
 2-[[[[[[[E=RAT%2^10%SPELAn!%]&!TOWA&!PEG#!NOLNOL8!#!HYAGO!2#]1*2=1]U]S]0]O]!#PAL!   
 3--->PAGODOL7&!@17,2222734.15&[[[%%RENRAK6,9,99"^10"]#$11.2%}]KAIJ]{   
   41.2SSS =  RALQI2.β{{{RA4,0,238^97,1,$.S.L.E.I.L."Q5352.15Q"JOL"5*3>
>>41 .3q}}}>1.2<0 
      .3φTALHOSI"0">
>>105 .10<1.235<1.2>51≠52===55.632>V="E=0.835"of"1.32","632",0.683,1.end   
 { 
 本当におかしくなったようだ。 
 >>570 程度のことが理解できなくて、悔しいんだろうなあ。 
 ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の 
 諸先輩型、お知恵拝借したく…。 
 >>590   590です。 
 自己解決しました。 
 IE11上ではJavaScriptのWebsocketは使用できないと思い込んでいたのですが、使用できることに気付き、解決できました。 
 ※IE9互換を強制していたのが原因でした(汗   
 大変お騒がせしました。 
  8バイトしかデータを送らない時に着信するまでに20秒くらいかかるのは 
 TCP_NODELAY以前になんかおかしいと思う。 
 >>595   まずWireSharkとかでパケットがちゃんとでてるかから見てみよう 
  >>595   20秒かかるならまずは名前解決を疑ってみろよ 
 resolv.confを窓から投げ捨てろ 
  >>596   有難う、別の理由っぽいですけどまだ特定できていません    
>>598   wiresharkの使い方が分からずまだよく分かっていない状態です 
 一応通信しようとした時にパケットは出ているような    
>>601   特定の部分を通った時に起こる現象のようで、全て20秒かかるわけではないです 
 プログラム内部でIPとポートも取れていますので名前解決ではなさそうです   
 特定の部分というのも殆ど何もしていないような感じなのでよくわからない状態です 
  selectの使い方がおかしくて、他のイベントひろうまで受信していないように 
 そういや、Linuxならwireshrak使うまでもなくtcpdumpでよかろう。 
 >>608   自前プログラムを2つ作ってloでつなげています   
 Libev++を使っているのですが、その使い方が悪いのかも知れません 
 AとBのプログラムがあるとしてBがAに接続した時にそれぞれのプログラムで 
 Libev++のコールバックをev:READで仕掛けています 
 何か通信する時は横から開始する合図をコマンドみたいな形で送っています 
 お互いに送信するだけなら問題ないのですが、送受信した後短い通信をすると 
 20秒位反応しなくなるようです 
 連続して送受信しても症状が出ないし、症状が出ても待っていれば通信は完了するようです   
 長文失礼しました 
  まずどこで20秒掛かってるか調べたの?straceですぐ分かるでしょ 
 不足してるのはどの知識でしょうか? 
 質問なんですが、 
 やってみればいいじゃない。 
 いやそれが3秒に2回くらいcurlでファイル取ってくる処理をずっと動かしてても枯渇する様子がなくって 
 実装依存をわかっていてなぜ聞くのか、めんどくせー奴 
 リソースの見方が分からないという質問かな、誰か教えてやれ 
 Linuxだと枯渇するよ。 
 処のところの 5ch が重かったり鯖落ちしたりというのは  
 TLSのハンドシェイクを鯖で行っているなら5ch運営が究極の馬鹿ということになるが。 
 やっぱりか、やたらメモリアクセスエラーが起きている 
 ちょっと質問させてください 
 仕掛けはいろいろあるから、画面なりユーザーI/Fを決めると、シーケンスがわかって 
 初心者の質問スレ辺りで聞けよ、QZと言う親切な奴がコーディングしてくれよ。 
 ゲームとかパフォーマンスにシビアなことしないんだっら、通常はhttpにjsonなりxmlでデータやり取りすりゃいいんじゃないかな。 
 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方 
 C#のSocketを使って一度の接続で複数の特定長バイト配列を受信するプログラムを考えています。 
 GetStreamでストリームを取得して好きにすればいいんじゃないの 
 送信側が "123456" と1回で send しても 
 ありがとうございます。 
 教えてください。OSはLinuxです。 
 単に"http"というものわかっていないのか 
 それともvhostの関係で指定が足りないのか   
 それ以前に 
http://127.0.0.1/  や
http://localhost/  で見れるのかどうか 
 struct hostent *host; 
 >>652   いちおう、手元のパソコンで一般のWebブラウザ(FirefoxやChrome)を使えば、 
 自分のパソコンからローカルホストのページや自作htmlを 
 見に行ける状態には、なっています。 
  ここの人かω 
 http://2chb.net/r/tech/1588339011/   86   
 背伸びしすぎωω 
 とめないけどωωω 
 がんがれ 
 gethostname() と gethostbyname() の違いが分からない。 
 libcurl使ったら?サンプルをちょっといじるくらいでできるよ。 
 getaddrinfo ってのを使わないとダメなの? 
 RTFMなんだが,, 
 >>660   了解。 
 gethostbyname と gethostname は違うんですね。 
  >>660   マニュアルを読んでも経緯が分からないから聞いています。   
 警告: implicit declaration of function ‘gethostbyname’; did you mean ‘gethostname’?    
 と表示される理由は関数の仕様を見ても書いてないですし。 
  それ調べるなら警告を出しているコンパイラのマニュアルの方だろうが、 
 man見りゃ書いてあるだろ。 
 man 3 gethostbyname すると 
 >>666   それならインクルードしてある。 
 原因は判明して、単にプログラムにエラーがあっただけっぽい。   
 コンパイラが気をきかして、 gethostname の警告を出してただけっぽい。   
 struct hostent *host; 
 host = gethostbyname("localhost");     
 printf("正式名: %s\n", host->h_name); 
 printf("別名 :  %s\n", host->h_aliases[0]);   
 で動くようになった。 
 ここから先が分からない。   
 ためしに 
 host = gethostbyname("localhost/dample.html");   
 とやってもダメだったし。 
  無能すぎてlibcurl使うのすら無理そうだから、 
 >>668   どういう開発手法がいいかは聞いていません。 
 apacheのローカルホストにあるhtmlにソケットプログラミングでアクセスする方法について聞いています。 
 もし説明が長くなるなら、原理の要点だけでもいいので、質問している事に解答してください。 
  >>670   初心者の質問に解答しないなら、なんで掲示板にいるんですか?   
 少なくとも、私がいま質問してる事は、市販の書籍には書いてない内容ですよ? 
 市販の理工書の専門書を読んでも、TCP/IP一般の解説書は売ってても、それをどうソケットプログラミングするかの書籍は、 
 いまは絶版・休刊ですよね?(2001年頃には売ってましたが、いまは無いです)   
 それすらも、あらかじめネットのブログを読みあさってから質問しないといけないんですか? 
  わからないところ一箇所二箇所質問するくらいならいいけど、この調子だと 
 >>672   >それすらも、あらかじめネットのブログを読みあさってから質問しないといけないんですか?   
 そうだよ。わかってるじゃん。 
  >>672   中古本や電子書籍なら、古い本も購入できるのかもしれませんが、 
 その場合でもバージョン違いが生じるので、現在のOSにはそのままでは適用できないので、 
 結局、ネットのマニュアルに頼るか、ネットの掲示板で先人に聞くしかないと思います。 
 ネットの公式マニュアルでは、全体像や経緯が分かりません。すでにある程度わかっている人が、細かい仕様を確認する場合にしか、使えません。   
 2001年ぐらいとは状況が違い、いまは出版市場にC言語ソケットプログラミングの書籍はありません(これはアマゾンで以前に調べました)。 
  >>675   > 2001年ぐらいとは状況が違い、いまは出版市場にC言語ソケットプログラミングの書籍はありません(これはアマゾンで以前に調べました)。   
 その代わり、ネットにくさるほど情報が転がってる 
  2001年くらいから何も変わってないから、 
 >>673   何十回も質問されて、何が嫌なんですか? 
 よく分かりません。 
 「同じことを質問されたら嫌」なら分かりますが?   
 出版市場にソケットの解説書が無い以上、 
 掲示板のソケット関連のスレは質問される運命にあると思います。 
 (それが嫌なら、本を出版してください。) 
  べつに質問するのは勝手だよ?答える気が無くなるというだけで。 
 > (それが嫌なら、本を出版してください。) 
 >>678   あっちのスレではWinSockなのに 
 環境はLinux? 
  エラー処理も知らない度素人なんだら虐めるなよ(爆笑)RFCを調べて見る(大爆笑) 
 相手するから居着くんだろ 
 >>667   うーーーん   
 >ためしに  
 >host = gethostbyname("localhost/dample.html");  
 >とやってもダメだったし。    
 この時点でsocketプログラムの流れとか関数の意味が理解できていないことは 
 わかるんだけんど、みんなが言うとおり親切に説明してくれているページとか 
 読んでもう少し基礎知識付けた方が良いと思うよ   
 たとえば  
https://www.geekpage.jp/programming/linux-network/   なんかは割りと親切に書いてあってサンプルも載っているし 
 あ、LinuxじゃなくてWindowsでVSだとか言われるとまた話がややこしくなるけど 
 ここにそのものズバリHTTPのクライアントサンプルとかも載っているんで 
 読んでみたらどうかな 
  >>684   メアド送って二人でやってくんないかなあ 
  場外の人間に限って「外野が喚く事ではない」というね 
 相談でもなんでもないけど落とし穴に落ちたんで聞いとくれ(落とし穴というより自損事故) 
 笑いどころはどこ? 
 >>693   自分にリダイレクトじゃなく、誤URLに永続的リダイレクトだよ   
 ブラウザによるかもしれないけど、301が返るとリダイレクト先を記憶 
 そのアドレスへのアクセスはブラウザ内でリダイレクト先に書き換えられる 
 結果としてブラウザ側でのリセットが必要 
  ああ、chromeだな。 
 だから、それも含めてミスったって言ってるんだろ 
 >>695   すごいな、一発でブラウザ特定されたw 
 ブラウザの特性って頭に叩き込まれてるのか   
 あ、じゃ質問 
 デカイサイズのチャンクでのレスポンスを返した時に、chromeとedgeがコネクションを切断するんで、書き込みがWSAECONNABORTED(10053)でエラーになるんだ 
 試した中ではfirefoxだけ問題ないんだけど、 
 レスポンスの実装を失敗していてfirefoxがザルなのかな? 
  ちなみにvideoタグからのgetでサイズは21MBほど 
 [NGID:of4pwmcJ]>>/dev/null 
 >>702   何様も何も、ここって本来は質疑応答スレだから
>>1   であるなら、ブラウザの特性に詳しそうな人がいたら、質問を投げるのは普通じゃないかと 
 フレンドリーな書き方が気に障ったならご免なさい 
 教えろとか強要しないからセーフだと思ったんだ 
  socketと主張するつもりかも知れないがスレチ 
 webクライアントの話、アプリの話、関係ない、クロームのスレへ行け 
 >>697   コネクションを切断することが正しいかという話ならsocketの話じゃないから 
 ここで聞いてもダメかな   
 cromeとedgeがコネクションを切断すると「WSAECONNABORTED」になるのが 
 問題ならば、コネクションを切断しにきているのを知らせるエラーが返ってきて 
 いるってことなのでエラーハンドラを書きましょうって話かな 
  >>707   そうなのですか   
 コネクションを切断してくるのは相手なので、レスポンスのヘッダに何か特定の指定が必要なのかと 
 送信データが残っているのにブラウザがチャンク受信を打ち切って切断する 
 というHTTPプロトコル上の問題だと思っていました 
 で、プロトコルならばネットワークプログラミングの範疇だとばかり   
 エラーハンドリングは入っているのですが、一々ログに出てしまっていて、対処できるならばしたいという理由でした 
  意味不明なローカールサーバのことを聞かれても分からんわw 
 ローカル内部だとインターネット層を通さないだろ? 
 あ、いやここで最初に書いたときはリダイレクトで掘った墓穴ネタだったから無駄な情報だった! 
 >問題を考えてもらう上で意味を持った条件 
 >>710   ローカル通信でも、AF_INETのソケットを使った通信ならば 
 きちんとソケットからプロトコルスタックに出力されて、 
 経路を引いた上で、ローカルの場合はループバックに出力し帰ってきて、 
 自分自身の別のソケットで受信する。 
 即ち正しくインターネット層の通信が行われる。 
  >>717   えっ、知らなかったありがとう 
 インタフェース層以前でバイパスされるんだと思い込んでた 
  708 
 >>708   プロトコルはネットワークじゃないとか原理主義者どもにはすまんが(煽り)   
 URLを叩いてファイルとしてダウンロードするとエラーにはならずファイルは一致 
 ということは送信側ではなくchromeとedgeのvideoタグの実装がどこかおかしい 
 ウィルス対策ソフトが何か悪さしてる可能性はダウンロードが成功することからかなり低い 
  三菱電機とかNECはウイルス対策ソフトが悪さをしたので 
 SMTPサーバでメールを送ろうとしています 
 すいません、そんなこともわからない人は 
 ほんそれ 
 MXレコードで回答されるホストではSMTP動いていないみたいだよ 
 >>728   OB25くらい理解してからレスしてほしいです。 
  OSCで複数のパスに複数のデータを送信するのって、処理負荷重くなりますか? 
 >>731   重いからHTTP2が出てきた、と理解してる 
  要求順に処理される必然があるからHTTPパイプラインでいいんじゃない。 
 UDPでも保証されると思っているのか 
 UDPでパケットを投げた順に処理してもらうには 
 …… もしかしてOSIと言いたかった? 
 OSCも知らない生きている価値のない究極のごみクズ。 
 仕様、実装、レイヤーを区別できない素人はレスしないようにw 
 有識者の方、ご教示ください。Win10 64bit/cygwin64(gcc 7.4.0)環境で、C言語によるUDPポートチェックを試みています。UDPソケットでsendto()を要求した後、タイムアウト付きのselect()でICMPソケットのreadfdsを監視しています。目的のUDPポートは閉じているため、Wiresharkでは期待どおり"port unreachable"の受信を確認しています。しかし、readfdsがreadyにならずにselect()ではタイムアウトが生じ、UDPポートは空いていると判断してしまいます。どうもICMP受信をアプリケーションに返却してない(?)ようです。何か情報をお持ちではないでしょうか?以下コードの抜粋。 
 アドバイス 
 wsl2やらコンテナ全盛の昨今でもsygwinやらmingwやらって需要あったんだなビックリ 
 仕方なくPHPかJavaScriptどっちか勉強しなければいけなくなったんだけど 
 javascriptでネットワークプログラミング(笑) 
 PHPでネットワークプログラミングって方が辛そうな気がするが 
 WindowsのTCP/IP実装に複数の重大な脆弱性、今月のセキュリティパッチはかならず適用を 
 http://2chb.net/r/newsplus/1613138346/   WindowsのTCP/IP実装に複数の重大な脆弱性、今月のセキュリティパッチはかならず適用を 
 ブルースクリーンが引き起こされるサービス拒否(DoS)脆弱性はすぐに攻撃が出回る可能性 
 2021/02/10  
https://forest.watch.impress.co.jp/docs/news/1305583.html   誰か居ますか・・・質問なのですが、 
 なお、現状ではhttpレスポンスヘッダーのLast-Modifiedを利用する方法でも 
 メールのPOP3でも同じようなことやってるし 
 HTTP の GET の代わりに HEAD でもだめって話なら 
 人が居た・・・ありがとうございます 
   >>783-786   この場合、HEADでやってて問題ない感じですかね 
 今時はWebSocketでPUSHが普通みたいですが、レガシーな環境では改造コストが高すぎて 
 ロングポーリングにたどり着いた次第です(クライアント側の改造だけで済みそうに思えたので)   
 本件は特にシビアなレスポンスは必要ではなく数秒くらいラグがあってもいい(10秒を超えるとう〜んですが) 
 ので、HEADで問題ないようであればこれでいきます   
 どうもありがとうございました 
 >>787   サーバ側の仕様が分からんので分からんと書いたのだ、他人に説明する努力をしろ 
  >>788   仕様と言ってもよくあるレン鯖で apache 2.4.x、nginx 位しか分かりません 
 鯖側に自前システムを入れることが可能かどうかということですか? 
  ロングポーリングを、ただポーリングする間隔を伸ばしただけとか思ってそうだな 
 >>790   もちろんそのような感覚を持っていたのは確かですが、その辺の具体的なところは全く分かっていない故の質問です 
 頻繁すぎるポーリングでWEBサーバーに怒られたこともあるので、いい対策はないかというのが本筋ではあります 
  だから、環境はどうでサーバ側はどこまで変更できるんだと 
 >>792   AWSのようなクラウドサービスではなく、安価な共用レンタルサーバーです 
 多分サーバー側は何も弄れません   
 質問の要点は最初の
>>781 に書いている通り、 
 >そもそもwinsock2・クライアント側のみの修正で実現可能でしょうか? 
 と書いていますので、通常ポーリング以外はサーバー側の対応・変更が必須なので 
 不可能という結論でしょうか? 
  >>793   そもそも何をしたいのか、何をしたらいいのかわからないようであればお前には無理 
  >>793   それ以上の説明ができないような理解度なら 
 その結論でOK 
  環境がどうと、何を聞かれてるのか自分にとっては大ざっぱすぎて分からないのですが 
 そのレンタルサーバーの機能一覧でいいのですか?CPUですか?OSですか?   
 今自分が動作確認で使っているところはこれですが、どこのレンタルサーバーを使うのか、どのプランを使うのか 
 それはユーザー次第の話です  
https://www.xserver.ne.jp/functions/     サーバーに何が必要だと書いてもらえると話は早いと思うのですが 
 無理なのは分かりましたが、そちらが環境を聞いているのでしたら逆に必要な環境があるのでしょうから書けるでしょ? 
 あなたが自分で聞いておいて書けないんですから、そりゃダメでしょうね 
 COMETならこうSSEならこうWebSocketならこう〜みたいな話になるかと思ったら環境マウンターしか居なくて草 
 回答最初から出て解決してるんだから終わっときゃいいんだよ 
 適切なアドバイスが出来るんなら必要環境がある前提で○○しろって一行書くだけなのに 
 勘違いしとった、ファイルサーバね、よくわからんがwebサーバを使うならhttpプロトコルなので 
 ファイルサーバーをポーリングで監視してる話として延々と環境聞いてたのか? 
ID:tGLlBodXのレス一覧:  >>104   RFCに乗るレベルのルールでは見たことないな 
 もし知ってたら教えて 
  >>104   だから
>>93 は「オクテット」と言ってるんだと思うが・・・    
>>105   RFCは8bit以外の処理系に対しても考慮されてるよ。 
 というか、RFC 821とか初期のものはむしろ7bitしか考慮してない。 
  8bit長のかたまりを オクテット と呼んで、 
 >>109   35年前には既に一般化した常識すら知らないってのは恥ずかしいだろ 
  >>112   自分が常識知らないからって 
 一般人をバカにし始めるのは見てて痛々しい 
  >>113   >一般人 
 一般人は知らないだろうwww 
  >>116   いや、
>>109 曰く一般化したらしいからそれに合わせてやっただけ。 
  Protocol Buffers, MessagePack, Apache Thrift 
 TCPみたいなUDPってなんだっけ? 
 すぐちねって言ったらダメだよってお母さんに教えられなかったの? 
 高度なネットワークとは自己増殖するネットワークのことか? 
 SSLの自己証明書って用途がよくわからないんですが、どういうことですか? 
 >>143   >SSLの自己証明書って用途がよくわからないんですが、どういうことですか? 
 >ようはオレオレ証明書っていうものですよね? 
 >接続先は証明できないけど暗号化できるからやるとかそういうものなんでしょうか?   
 主にそう。   
 >最終的に知りたいのは、 
 >自分が開発したアプリから自分が製作したwebページにアクセスするときに証明できるのか? 
 >っていう所です。   
 出来る。 
 自分で作るアプリならその証明書(正確には証明書を発行したCA=自分自身)を信頼することが可能。   
 大雑把に言うと、証明書を信頼できるのはプリインストールされたルート証明書という形で信用するCAを決めているだけなので。 
 ルート証明書はCAの公開鍵の自己証明書に過ぎません。 
  自分が開発したアプリがシステムのコンポーネント使うときに 
 TCPでセッションを張っていて、データが途中のままセッションが切れたとします。 
 JavaやCなどでTCPを使ってノンブロッキングSocketプログラミングをするとき、 
 中身のプロトコルを決めてそれで終了判断するのがお気楽かと 
 ブロッキングだろうがノンブロッキングだろうが 
 TCPの順番が約束されてるってのは 
 それじゃhttpとかのリクエストが全部届いてるかどうかっていうのはどう判断されてるんですか? 
 >>153   時間が過ぎたらアウトにします。 
 HTTPプロトコルバージョンは有れば事実上固定長です。 
  ゴーストプロトコルが発令されました。今後当局は一切関わりありません。 
 >>152   データの並びが送信側を同じになるってだけ   
 送信側 [ABC]送信 続いて [abcd]送信 と送った場合   
 最終的に ABCabcd が得られることは保証するけど 
 1回の recv でやってくる塊がどうなるかは保障していない   
 全て分断で7回の recv: [A] [B] [C] [a] [b] [c] [d]  
 連結された1回の recv: [ABCabcd] 
 分断と部分連結で2回の recv: [AB] [Cabcd] 
 これら全てが起きえます 
  >分断と部分連結で2回の recv: [AB] [Cabcd] 
 おっと 
 >>158   ありがとう 
 ・先頭記号や終端記号が分割された場合 
 ・固定長のヘッダが分割された場合 
 それぞれどうするのがセオリー? 
  固定長のヘッダハ固定長なんだから 
 >>160   先頭記号や終端記号は分割されないように1オクテットにするのが簡単 
 ユニークな記号なら複数オクテットでも処理できるけどね 
  ありがとう 
   >>161   俺がバカだった    
>>162   TCPの場合どれだけ分割が起こっても最小単位は1オクテットって事かな 
 >>163   そう 
 8ビット未満に分割されることはあり得ない 
  CでDNSリゾルバを作っているのですが、テスト用のアドレスでlookupすると 
 ip-address : host name = 1 : 1な世界にいるのか 
 linux C++な人はやぱsocket系はclibなので 
 超音波テロの被害にあっています。 
 世の中のどれだけの音の振動源・発信源が 
 人や社会が襲われ、罪もない人が超音波で襲われ、 
 超音波による物理的な力で、 
 「見続けるのがいやだから、殺して終わる」、 
 PF_PACKET, SOCK_RAWで作ったrawソケットでパケットを受信しているのですが, rawソケットで受信したパケットを上位レイヤーには渡さないような設定は可能でしょうか? 
 対象のプロトコルがなんなのかってのと上位層に渡したくない理由にもよると思うんだけど、 
 >>180   対象はDHCPです。 
 ある条件の場合だけ、 
 rawソケットを使用しているプロセスで 
 DHCPサーバー処理をさせようとしています。この際もともと動作しているDHCPサーバーは停止させたくありません。 
 iptablesも検討していますがrawソケットの設定で可能であればそれを使用したいです。 
  >>182   >>183   やっぱりできませんか。 
 iptablesで対応したいと思います。 
 ちなみに、カーネルをいじるとしたら 
 net/core/dev.c 辺りでしょうか。 
  受ける会社大丈夫? 
 サーブレットについて教えてください。 
 ソケットを使ったプログラムを組んでいるのだけど、 
 まあイミフだね。強いて聞くなら 
 クライアントの相互通信をしたいが 
 スイッチングハブで接続されているパソコンA,B,Cがあり 
 マスタリングの入門編読んだんだけど仕組みは分かっても実際どうプログラムしてるのかが分からなかった 
 Linux Programing Interface  ちょと重いか 
 >>208   在庫と値段的にちょっと厳しいかな    
>>209   ああなるほどlinuxから入ってネットワークに行くってのもありかー 
 linux本としてもいいなら買っちゃおっかな 
  マルチスレッドでTCPのacceptしたときnetstatのステータスはどう変化するんですか? 
 以下のようにVBSでURIで指定したサイトからデータ取得するものを作っています。 
 Win10 Home、Borland C++で 
 >>218   やはり10の問題でしょうか・・・。   
 セキュリティ会社に出向することになったんで、ollydbgでこういった動きで漏洩させるプログラムをデバッグで追っかける 
 準備として自分のメールアドレスにテストメールを送るEXEを作りたいだけなんですけどね。 
 これが10の問題なら逆にMAPIではできないというのを知れたのでよかったのかな・・・・。 
  Thunderbirdです。 
 変わらずでした。 
 MAPI っつったら Outlook 一択だろ常考。 
 mapi32.dllって64ビット環境でもちゃんと存在してちゃんと動くのか? 
 >セキュリティ会社に出向することになったんで 
 ここで適当に同業他社の名前出しとけばライバル蹴落とせるなw 
 ソケットの勉強をしようと思いクライアント側のプログラムを作成しているのですがなぜ 
 closeしなかったらプログラム終了時にシステムが自動的にcloseするというだけ 
 shutdownも必要ではなかったか? 
 libevが分からない 
 1つのネットワークカードに2つ以上のipアドレスを割り当てて、1つのサーバにその割り当てた別々のipアドレスで同時接続は可能? 
 横道にそれるけど 
 >>247 、
>>248   可能 
 WindowsでもLinuxでも出来ない理由はない 
  よくよく読んだら 複数クライアントが 1つのサーバーに接続 
 受信は問題ない 
 >>247-248   どっちも可能 
 ただし当たり前だけどアプリケーションで Listen するアドレスやポートを指定できる必要がある    
>>251   受けたアドレスと異なるアドレスに送る TCP スタックなんて見たことない 
  多重にクライアントを動かせない理由は何なのだろう・・・ 
 同じサブネットなのか違うセグメントなのかでも変わるな 
 >>256   何を根拠にそんなことを言うのかなあ 
 セグメントが違えば通信できないならインターネットなんて全然成り立たないわw 
  1枚のNICに2つのセグメント振る香具師なんているのか? 
 メンテ用の機器繋いだ時一時的に振ったことあるなあ 
 vmwareとか使えば、見かけ上は別のものとして扱えるけど 
 >>253   ん? 
 クライアントは普通に多重で動かせる奴も多いぞ 
 少なくともネットワークの制限で動かせないケースはほとんどないと思うが 
  >>261   >>247  に至った理由が何だろうね?って疑問だったわけで、深い意味はないです 
  >>257   ピントずれすぎ w 
 1つの NIC の話だから同一物理ネットワーク上に複数のセグメントを置く話 
 できない理由はないけど実験的にやるとか 
>>259  みたいに一時的にやるとか以外でそんな構成にすることはほとんどないと思う 
  >>262   >>247  はサーバーの話 
 1つの NIC では同一IPかつ同一ポート番号で待ち受け(Listen)できるのは基本1つだけだから複数のIPを振りたいって言う要求が出てくる 
  >>264   てっきり クライアントの話かと思った 
 IP分けるよりListenポート分けるほうが簡単だし刹那的にそうするもんだと早合点 
  ん?
>>247 は   
 1つのネットワークカードに異なる2つのIPを割り当てて(IP1とIP2) 
 同じアプリを2個起動して(AとB) 
 1つのサーバーに同時接続(AがIP1で、BがIP2で接続)   
 だからクライアントじゃないの? 
 数は説明上2つに変えた 
 1枚のNICに複数IPの指定は出来るという事ではまずはお茶しましょう。 
 二つのIP与えて、アパシェのIPベースバーチャルホストなんてのもやりました。  
http://good-stream.com/goodstream/server/apache/tips/ipbasevhost.htm   フル 
 >>263   ネットワークが絡んだ開発の仕事が多い俺は1つのNICに複数のセグメント 
 を割り当てるなんてごく普通にやってるんだが 
  ボンディングとかやぱ二枚刺しでルーターとかフィルターとかフィアオルをやる 
 >>266   あひゃ、改めて 
>>247  を読み直したら確かにクライアントの話だったわ 
 早合点は俺だった... orz 
 アプリが送信元IPアドレスを指定できれば可能だな 
  >>268   実運用環境でやってるなら単なるバカ 
 実験やテストでやってるならたいして珍しくもない 
  >>271   俺は開発環境でやってるけど 
 トポロジによっては実運用環境でも便利なケースはあると思うよ 
  >>271   顧客がやれと言ったから設定した 
 それだけのことさ 
 警告はした 
  そもそも警告したくなるような問題が発生しそうなケースが思いつかないんだが 
 >>271 は単に「バカ」という言葉を発したたかっただけだろ 
 そう言っちゃう人もいる事を理解して、無視してあげましょう。 
 >>273   ああ、作業者にはなんの責任もないから言われた通り作業してくれればいいです    
>>272   > トポロジによっては実運用環境でも便利なケースはあると思うよ   
 その便利なケースとやらを説明してみ 
  「問題ない」をなんで「問題ない」のか説明させようとするって典型的なアレだからな 
 なんだ説明できないのかよ w 
 パッと思いつくケースだと 
 >>282   各セグメントは閉じてるのに 
 わざわざ混在させるのか 
 バカの発想って面白いな w 
  バカって書いてる理由を書いてあるだろ? 
 バカはお前だよ。見た事ないんだろ。貧乏な現場とか、どうしようなない状況。 
 貧乏ならいちいちセグメントなんて分けるなよ w 
 元質問からの疑問 
 >>285   あのね俺が書いた例は独立して機能してる2つのセグメントを「混在」させるわけじゃないから 
 WindowsもLinuxも(その他大概のOSも)1つのNICに複数セグメントを割り当てることが出来るのに 
 その機能を使うのは「バカ」だって言うならその理由を書いてくれな  
 使える機能を使えるところで使わない方がバカでしょ 
  >>290   ありがとう 
 (bind ってそういうことだったのか。 漫然と使ってた) 
  >>291   ちなみにアドレス0.0.0.0にbindするというのは「どのアドレス宛でも受け付けますよ」という約束事。  
  どいつもこいつもしったかばっかだし 
 >>293   おーけーじゃあしったかを指摘して訂正してくれ 
 できないならお前もしったかだよな 
  >>289   バカには見えないのかな? 
 念のためにもう一度書いとくよ   
 > そもそも何かの目的があってセグメント分けてるのにそれをわざわざ混在させるなんて実運用でやるわけないだろ 
  ID:QrmkumON  の想定は 
 すんません「バカ」連呼したいだけのアホに餌を与えちゃいました 
 >>295   "混在"はしない 
 "共存"(相乗りでもいいや)できるんだけど 
 もしかして君にはそれが判らないの? 
  >>296   各々のセグメントに繋ぐ度にケーブル刺し変えてるってこと? 
 DNS とかも全く使わないならいいのかも知れないけど普通はバッチファイルとかで切り替えた方がいいと思うけど    
>>297   >>279  の内容すら理解できてない素人乙    
>>298   > "共存"(相乗りでもいいや) 
 の定義書いてくれ 
 オレオレ用語で話されても困るから 
  md5とかいう機能を利用すると、 
 ダウンロードしたファイルをプロはいちいちチェックしてるのでしょうか? 
 >>304   ダウンロードだけに限ればチェックが必要な怪しい所からはダウンロードしません 
  >>304   rpmとかyumとかがチェックしてくれる 
  リポジトリを信用するしかないから、もうyumにお任せですね。 
 >>308   > 先輩見ててもサイトから落としたファイルのハッシュチェックなどせず 
  あのねここはプログラミングのスレなの 
 >>309   ハッシュのチェックをするのは、出自が怪しいかどうかじゃなくて、 
 途中で壊れてないかを確認するためだろう? 
  >>311   そのどっちかではなく両方   
 元の
>>304 には「そのままインストールしています。」とあるから実行ファイルが前提 
 壊れてるならそもそもチェックなんてしなくても実行不可 
  だよね 
 >>312   もとの話につっこんだんじゃなくて、
>>305 につっこんだんだけどなあ。 
 まあいいや。 
  >>314   元の
>>304 に突っ込んだ
>>305 に突っ込んでんだからその前提ぶっ壊すのはアスペのみ 
  論破されると、相手をアスペだといい出すのは、2chではいつものことだが、 
 >>316 はアスペの意味を分かってるんだろうか。 
 >>317   「
>>305 につっこんだ」 
 →いや
>>305 も
>>304 の前提引き継いでるから 
 こういう流れが分からない奴 
 これがアスペの全てというわけでもないが一部 
  くわしいひとがいるみたいなので聴くけど 
 >>320   それハッシュ関係無い 
 そういうのは自分で調べるもんだし自己責任の範疇 
  TCPで書いたデータが相手に届いたか知る方法ってある? 
 ある 
 相手のソケットライブラリには届いていても 
 アプリに届いたかが重要なデータならアプリレベルで応答確認するしかないよ 
 SMPT や POP3 とかそう(プロトコルで応答を返すルール)だよね 
 そういえば 
 何を気にしてる?TCPでコネクトできたら届いてるでしょ 
 なのよねw 
 サーバー側の指定ディレクトリにあるファイル一覧をクライアント側で表示したいのですがヒントください! 
   サーバー  
http://ideone.com/fPQ4mZ     クライアント  
http://ideone.com/QZQMXY     サーバーではsizeof(ent->d_name)分渡しているのですが、クライアントでsizeof(filename) 256byte分受け取っちゃっているのでここをどうしたら良いのか分かりません。 
 あらかじめどんな名前のファイルが来るのかわかっていればそのサイズ指定すれば良いと思うのですが。。。 
 あとサーバー側ではwhile((ent = readdir(dir)) != NULL)でループの終わりを告げれるんですが、クライアント側でソケットに流したファイル名を全て取得したあとの終わり方の告げ方が分かりません。 
 >>335   分割で届いたりもありえるから 
 データ先頭にデータサイズ格納させて 
 その分だけ受信するようにしないといけない   
 このデータ先頭の情報をヘッダと言う 
 情報は1つだけじゃなく複数でも自分が必要な分だけ自分で決めた構造で送る 
  >>335   ftp プロトコル辺りを調べたらいいかも 
  >>337   >>338   できました。有難うございます 
  write 1回で送ったものは 1回のread で得られる保障はなく 
 APレベルで送受信するときはヘッダをつけてシーケンス番号を送って、肯定応答を返すのも常識だろう。 
 どんな常識だよ w 
 応答で正否返すのは当然だがシーケンス番号は普通要らない気が。 
 むしろシーケンス番号つけて順番どうりに送るのはtcpの役割でしょ 
 TCPとsocketの区別がつかないアホ
>>346   TCP上でアプリレベルの到達確認するのは特別な場合のみだな 
 本当にクリティカルな場面ではアプリレベルの到達確認さえも役に立たない場合さえあるし 
 同期通信なら、到達確認というか応答受信は入れるな。 
 まあ
>>335 のケースならヘッダもシーケンス番号も到達確認も必要ないな 
 送信側でデリミタ付けて受信側が対応すれば良い 
 >>357   悪いけどお前のレスからはニワカ臭しかしないんだわ 
 自慢じゃないけどこっちは通信絡みの設計しだしてから言うのが恥ずかしいくらいの年月経てるから 
 負荷試験?当たり前だろwwwそれをドヤ顔で言う時点であーあーあのタイプかってなるんだわ 
  tcpでデータ受信失敗するときって 
 >>362   ただデータが来ないだけなのか 
 相手が切断(通知が来ないような異常な切断)してるのかの判断って事でいいん?    
>>363   (大口叩いておいて何も言えねぇ) 
  アプリ側ってどのことか不明確だけど 
 >>362   >後者はアプリ側でタイムアウト時間が不明なときどう判断すりゃええの 
 そういう場合はアプリレベルでのキープアライブをするのが定石だな 
 ・相手(あるいはハブ)の電源が切れた 
 ・ケーブル切れた 
 の様な場合はメッセージに対する到達確認だけでは検出できないし 
  習作じゃなけりゃselect系(pollやlibevent)つかうしな。 
 >>352   rfc-959とかrfc-2616とかrfc-5321とか特殊な例なんだ 
 へー、そーだったんだ 
 わー、びっくりだわ 
  他はよく知らんがhttpのは到達確認っていうのか 
 実際に物(ファイルとかメールとか)をやり取りすろときの物の到達確認をするのと通信そのものの確認は別物だよなあ 
 通信レベルの到達確認したところであんま意味ない。 
 人をバカ呼ばわりする前に正しく使おうな 
 今度は「確認応答」とか言いだしたぞ 
 このスレではって本気で言ってるのかw 
 なんかスレを荒らしたようですみません。 
 >>377   外野が勝手に盛り上がってるだけだから気にしなくていいよ 
  >>377   気にすんな 
 バカどもが自爆しただけだから   
 本日のバカトップ3はミスリードの先頭を切ったID:8pLXigSN、 
 到達確認とか言いだしたID:AB8Qragb、 
 意味不明の戯言垂れ流してるID:aGg7Z+yHだな 
  >373 
 >>379   自分がしたレスを速攻忘れてるのかな?  
>>373  > 到達確認 
  >>381   お前バカ過ぎる 
 小学校低学年レベルの読解力 w 
  >>382   本題で反論できなかったら無理してレスしなくていいから 
  >>380   3バカにミスリードされて本質を理解できなかった知恵遅れのID:eJoj7htqには敢闘賞を上げよう 
  >>383   「言い出した」って言葉わかるかな? w 
  >>351   socket とか言ってるのはアホしかいないと言う現実 w 
  >>379   ミスリードとほざくなら TCP 上でシーケンス番号振ってるメジャーな例をよろしく 
  >>387   ひょっとしてタイムアウトとかキープアライブって理解できなかったのか? 
  3バカが誤解して勝利宣言してるようだから言っとくけどID:q6sk5dsoはオレじゃないから 
 ID:q6sk5dsoが無回答と言って勝利宣言しないように    
>>388   IMAPのtagとかsshのchannel numberかな 
 >>390   お前が誰かなんて知らんよ 
 どうでもいいし  
>>365-366  で回答出てるからもう要らんだろって話だ   
 > IMAPのtagとかsshのchannel numberかな   
 IMAP の tag はまだ微妙だが ssh の channel は違うだろ 
  >>392   技術系のスレでそんなことしか書けないならレスしなきゃいいのに... 
  >>389   ん?
>>389 はID:q6sk5dsoなのか? 
 違うなら反応しなくてよくね? 
 それとも自演してるのを忘れて自爆?    
>>390   違うなら反応しなくてよくね? 
  >>394   3バカの上を行くバカが現れたか 支離滅裂 
  ちゃんと質問しないと相手にされない「それ系のML」 
 アンドロイドスマフォとRaspaiとをLANでIOTのデータやり取りをしたいのだが、一般的 
 HTTPで要件満たすならそれでいいんじゃない? 
 俺はラズパイ上にwebサーバー立ててwebアプリから操作できるようにしてる 
 >410 
 なんか「サーバー」というものに対して根本的な勘違いをしているような... 
 >412 
 「webサーバーを立てて」といわれるとかなり大層なものを立ち上げることをイメージ 
 うおー調べてみたら結構たいへんだな。「WEBサーバー立てる」でも「メールサーバー 
 馬鹿はどうしようもない、踏み台を作って他の人に迷惑をかけるw 
 >>419   チャット クライアント サーバー プログラミング 
 くらいで調べてみたらどうなるんだ 
 こんなんでできんの?とか思うんだろうな 
  コピペで終わり。300万。というわけにはいかんか? 
 >421 
 ちょっと質問 
 候補 
 >>423   仕様(RFC7252)を読めよ。eclipseのプロジェクトは実装例。RESTFUL(HTTP)でもできるしUDPでもセキュアにできる  
http://coap.technology/    おっと、送信失敗したら何回かリトライするんだろ普通、TCPも同じだろ 
 >>423   お前の知識の信頼性の方がない、
>>426 ,427はお前には無理なのでスルーしていいぞ 
  >427 
 This protocol  provides  a procedure  for application  programs  to send 
 データグラムでロストや順序の入れ替わりは判るけど ペイロードが壊れてるってあるの? 
 グダグダ言ってないで424にさっさと答えろよ。タコ 
 >>440   いいですねその強気 
 一匹狼にはぴったりです 
  えええ、そういう意味なの? webサーバー=httpサーバーってことなの 
 「UDP」だけでどうやってデータを送信すんだ? 
 >444 
 えええ、そういう意味なの? webサーバー=httpサーバーってことなの 
 coapってLinuxなんかが動かず、TCPを実装する余裕がないような 
 >451 
 >452 
 HTTPサーバを実装するのは結構大変、あっ「WEBサーバー」ていうのかw 
 お前ら10年前からだろ。W 
 GPSを成立するためには相対背理論(特殊)を使わなければならない事を説明してください 
 UDPってパケットの消失や重複や順序入れ替えが起こり得るって事になってますけど、 
 こんなの見つけた 
 http://stackoverflow.com/questions/9196791/duplicate-udp-packets-how-often-it-happens     >>472   PCからPLC相手の通信をやってて、通信するパケットに採番する訳にもいかない 
 状況です。 
 消失は許容するとして、 
 順序入れ替え→1秒以上前の「古い」パケットと入れ替わる訳でもなさそう 
 重複→定期的にPC側のポート番号を変更(クローズ→再オープン)   
 …で逃げれるといいなぁ。 
 番号ふれない云々からするとMCプロトコルの1Eか? 
 予めタイムアウトゼロ秒でrecv()して読み捨てれば重複しても排除出来るか。 
   >>475   横河のFA-M3です。PLCに送る(PLCの)コマンドに任意の番号とかを付加出来ないん 
 ですよ(同社の新しめのやつだと付加出来るらしいけど)。 
 固定のIPとポートって事は無いです(ネットワーク関係はBSD由来だそうで)。 
 UDPは、自ホスト以外で使わない方がいいと思う。 
 >>471   あまりにも様々な条件が絡むので誰も答えられないし誰も保証してくれません 
 送信側、ハブ、受信側のどこでもパケット落ちが発生し得ます 
 それがIPプロトコルというものです 
 そもそもEthernetは100%伝送を保証していません 
  >>478   自ホスト内だと、自ホスト内でCPUその他のリソースの奪い合いになり、 
 結果としてリミッタとして働くのも利点ですね。    
>>480   順序が保証されない事を積極的に利用したネットワークスタックがあったら 
 やだなぁw 
  ウインドーズとリナックスで動くCで書くネットワークアプリは 
 >>483   俺は#ifdefで場合分けするけど 
 BSDソケット関数の範囲で使うなら全然大変じゃないよ 
  select使うのがアホと言ってるやつがアホなんだよなあ 
 大筋では似通ってるけどスレッドもOSの方言がきついな 
 質問です。 
 shutdownとcloseについて色々調べていたところ  
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13105844663   ここで回答者が(意訳すると) 
 「socketをcloseせず、shutdownしただけなら、再度セッション張りなおすこともできるよ」 
 と答えているのですが、いくら調べてもその方法が見つけられません。   
 やり方が分かる方は、教えていただけると助かります。   
 (例えば)httpサーバを作る時に、クライアントのshutdown(s, SHUT_WR)をサーバで検知してリクエストの区切りを検知。 
 返送とshutdown(s, SHUT_RD);でレスポンスの終了位置を検知させる。 
 なんてことができるといいなぁと考えています。 
 >>494   TCPなら 
 socket() -- close() 
 connect() -- shutdown() 
 の関係。 
 shutdownした後にconnectが成功するTCP/IPのプロトコルスタックは見たことないけど。 
 AF_UNIXとかならうまくいくかもね。 
  >>494   その回答者がバカなだけ。
>>498 も同類のバカ。 
 そもそもcloseとshutdownはそいつらが言っているような関係ではない。 
  >>494   質問の前半と後半の関係がよくわからんが... 
 前半は何かいい手があるのかもしれないけどそんなことが必要になったことがないのでよくわからん   
 > (例えば)httpサーバを作る時に、クライアントのshutdown(s, SHUT_WR) をサーバで検知してリクエストの区切りを検知。 
 これは普通に read() のバイト数 
 = 0 で検出できる   
 > 返送とshutdown(s, SHUT_RD);でレスポンスの終了位置を検知させる。 
 サーバー側で shutdown(s, SHUT_WR) するか普通に close() すればいいだけ 
 shutdown(s, SHUT_RD) はあまり使う機会がない 
  後半で言いたいことは、TCPって基本ストリームで切れ目が無いから 
 >>504   そういう場合はTCP_NODELAYで制御しろよ 
  >>509   TCP_NODELAYが何だか知らないならそういえばいいのにw 
  >>510   もしかして、そのフラグ立てたらネットワーク遅延や再送が回避できるとか思ってる? 
  >>513   どこをどう斜めによむとそういう妄想が出てくるのかな? 
  >>514   TCPのストリームがくっつく理由を理解できてない馬鹿がいるから 
  >>515   ああ、TCPのPSHの動作をしらないんだw 
  >>516   もしかして、そのフラグ立てたらネットワーク遅延や再送が回避できるとか思ってる? 
  >>517   どこをどう斜めによむとそういう妄想が出てくるのかな? 
 どうせお前の頭の中じゃ、遅延したらバッファにたまってPSHをつけても 
 くっつく、この程度のバカ認識なんだろ? 
  >>518   実装次第だけど、少なくともくっつけてはいけないという意味のフラグでは無い。 
 で、くっつける実装はよくある 
  話にならんなw 
 >>521   TCPの実装やソケットの実装触ったこと無い素人だろ?お前 
 妄想で話するから逃げるしか無くなるんだよ 
  技術的な要素を何一つ書きもしないで罵倒を繰り返してるクズに言われても、 
 TCP_NODELAY、PSHでどう解決するんだ? 
 blocking i/oで常時readかけてれば、PSHで送られたパケットはくっつくことなくreadできるよ。 
 >>525   PSHするならパケットの中身をTLVにでもすればリクエストの区切りなんて簡単に 
 検知するだろ馬鹿か。もっと単純な方法だってある。 
 ストリームを読みきったところが次のリクエストの途中かもしれない、という可能性が 
 一番の問題なのだから、PSHすれば丸ごと解決。 
  どうでもいいけど、TLVならまずヘッダだけ読んでヘッダの中の長さ分読めば、 
 httpサーバーを その実装で は色々問題ありそうだけど 
 >>529   初心者が陥りやすい罠だなw 
 TCPストリームではTLVのヘッダ長分読めるとは限らないだろ。 
 ヘッダが読めても残りの長さ分読めるとは限らない。 
  無駄なこと 
 >>524  > 技術的な要素を何一つ書きもしないで罵倒を繰り返してるクズ   
 命中率の高いブーメランですね 
  HTTPサーバでTCP_NODELAY? 
 >>535   そんなマシな話じゃないよ 
 >(例えば)httpサーバを作る時に 
 意図も理解できずにここだけ拾って、HTTPだぁ!\r\nが区切りでなきゃダメだ!って 
 思考停止してる馬鹿が騒いでいるだけの話w 
  >>537   でなきゃダメなんて誰も言ってないから・・・ 
  >>539   お前らが一人なのか何人なのか知らんが、 
 まともに代案を出して俺と技術で議論することすらできなかった時点で 
 お話にならないんだよ馬鹿がw 
  >>540   お前の間違いが余りにも馬鹿すぎて一斉にツッコまれただけ 
  >>540   とりあえず落ち着いて自分のレスを読み返してみろ 
  TCP_NODELAY、PSHでくっつかなくなるとか一番やばいタイプの勘違い 
 TCP_NODELAY も PSH もどっちかって言うとタイミングの指示だからねえ 
 >>494 にはOSの指定が無い。突っ込み所漫才でした。 
  TCP/IPストリームに実データとして区切りを書き込まずに、 
 TCP_NODELAYで1024バイトを2つsendして、そのあとのタイミングで 
 TCP_NODELAYで、一発のsendで送ったものが2度以上のrecvに分かれるなんて普通に起こるんだが 
 >>551   とりあえずWin10でwinsock2で 
 TCP_NODELAYかけたソケットに5バイトのsendを4回行って 
 recv1024バイトで受け止めたら一発で20バイトとれたぞ   
 お前がいるのはあの世か?   
 というか一発でとれなかったらTCPの受信効率悪すぎてヤバイから実験するまでもないことなんだがな・・・ 
  >>551   とりあえず
>>517 を理解することから始めろ 
  struct sockaddr* を引数にするライブラリを書いているんだけど 
 単純にsocketを使ってTCP/lPでクライアントとサーバーで通信するプログラムをLinuxのC言語で作っています。 
 select呼んでるのに待ちが発生とか 
 connectがEINPROGRESSになった後、本当にエラーになってるんじゃないか? 
 select(2)  第3引数を NULL でやってたり?  
レス:1-200  201-400  401-600  601-800  801-1000  ALL  
このスレへの固定リンク: http://5chb.net/r/tech/1414709836/ ヒント: http ://xxxx.5chb .net/xxxx のようにb を入れるだけでここでスレ保存、閲覧できます。TOPへ  TOPへ   
 
	  
全掲示板一覧  この掲示板へ  人気スレ  | 
	Youtube  動画  
	>50  
	>100  
	>200  
	>300  
	>500  
	>1000枚  
	新着画像 ↓「ネットワークプログラミング相談室 Port30 [転載禁止]©2ch.net	YouTube動画>3本 ->画像>1枚 」 を見た人も見ています:・ネットワークプログラミング相談室 Port31  (3) ネットワークプログラミング雑談 マルチスレッドプログラミング相談室 その9 Bitcoin Core ビットコインコアの重大なプログラミング欠陥  Bitcoin Core ビットコインコアの重大なプログラミング欠陥 	 マルチプラットフォーム プログラミング言語 haXe WPF(.NET4.x, .NET Core) GUIプログラミング Part24 	 子供向けプログラミング言語ビスケット  サウンドプログラミング5 七行プログラミング part6 プログラミング言語 Rust 4 	 サウンドプログラミング6 	 プログラミング用フォント  プログラミングのお題スレ Part22  プログラミングのお題スレ Part7   プログラミングのお題スレ Part21  プログラミングのお題スレ Part17  プログラミングのお題スレ Part20  プログラミングのお題スレ Part10 	 プログラミングのお題スレ Part12 	 プログラミングのお題スレ Part14 	 プログラミングのお題スレ Part16 	 42Tokyo【プログラミング学校】 	 なんJプログラミング&電子工作部 Part.2  最も美しいプログラミング言語は? Part6 プログラミング言語 Rust 4【ワッチョイ】 	 Gtkプログラミング on Windows!!! プログラミング言語 Kuin Part 16#01 	 Mathematicaプログラミング質問箱その2  関数型プログラミング言語Haskell Part32	 関数型プログラミング言語Haskell Part34  関数型プログラミング言語Haskell Part31	 プログラミング学習サイトについて語るスレ  【マック】Macintoshプログラミング質問箱 関数型プログラミング言語Haskell Part30 	 【アラビア】RTLプログラミング【ヘブライ】 プログラミング言語ランキング総合【TIOBE】 	 WPF(.NET, WinUI) GUIプログラミング Part31  WPF(.NET, WinUI) GUIプログラミング Part26  Matplotlib でグラフプログラミング【Python】 WPF(.NET, WinUI) GUIプログラミング Part33  WPF(.NET, WinUI) GUIプログラミング Part29  WPF(.NET, WinUI) GUIプログラミング Part30  【マウスだけで】Scratch【プログラミング】その1 JavaScriptライブラリ使わずプログラミングする技術  WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part21  WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part19   WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part22 	 【IT】女子小学生「プログラミングという言葉も知らない」44.7% 	 Nintendo Switchにプログラミングツールが登場。Switch上でスイッチ用ゲームを作ることが可能に 	 プログラミング業界に異変、SwiftとJavaが不人気、スマホアプリ開発までJavaScriptという時代に 	 【IT】DeNA、小学生向けプログラミングアプリに“ゲーム作り”が学べる新コンテンツ 	 【IT】bitFlyerが競技プログラミングコンテスト「codeFlyer」を開催 〜年俸1,200万円オファーの可能性も 	 日本のフリーランスプログラミング言語案件ランキング 「Python」がシェア拡大、ブロックチェーンや機械学習などの需要増で 	  【AI】テスラのAI部門長が語る「Software 2.0」。ディープラーニングは従来のプログラミング領域を侵食 	 【IT】統合開発環境人気は1位はVisual Studio、2位はEclipse。プログラミング言語専用の開発環境に人気の兆し 	 ゲーミングPC 相談/雑談スレ Part.64  ゲーミングPC 相談/雑談スレ Part.65  ゲーミングPC 相談/雑談スレ Part.27  ゲーミングPC 相談/雑談スレ Part.98  ゲーミングPC 相談/雑談スレ Part.26  ゲーミングPC 相談/雑談スレ Part.114  【パワハラ】パワーハラスメント相談スレ part8   
  
    
  
 
 15:52:55 up 9 days,  6:15,  0 users,  load average: 67.33, 74.78, 80.43
in 0.098683834075928 sec
@[email protected]  on 110104