タグ

socketに関するthichのブックマーク (2)

  • TCPSocket練習 - 三次元日誌

    webrickプロキシに乗せるための試作httpクライアント。 前にNet::BufferedIO(内部用と書いてあるのを勝手に使っている)を流用していた部分がどうにも使い勝手がよろしくないので自作することにした。 TCPSocketを使えば楽ちん。 一挙に全データをreadしないという要件(動画などの巨大データを逐次で送る)のため、httpヘッダを捌く部分がこんなんになってしまった。 #!/usr/bin/ruby # coding: utf-8 require 'uri' require 'socket' module HTTP # HTTPヘッダを行毎に読み込む補助クラス # よろしくないので書き直し # class SocketReader # def initialize(tcp_socket) # @tcp_socket=tcp_socket # @lines=[] # @li

    TCPSocket練習 - 三次元日誌
  • コネクション型通信プログラム

    以降では、TCPを利用した通信プログラムの作成方法を説明していきます。 コネクション型通信であるTCPは、コンピュータ間に仮想的な通信路を作って 通信をします。この仮想的な通信路は水道管のようなものであり、入口から流 し込んだ順番に出口から出てきます。つまり、データは送信した順番で受信さ れますし、通信失敗時には再送信などが自動的に行われます。従って、WWWや メールなどの多くのインターネット上の通信は、このTCPにより実現されてお り、インターネットの通信の基礎となる通信方法であるといえます。 TCPを利用した通信では前述のソケットを利用します。ソケットは、ファイル の出力・入力プログラムと同じやり方でコンピュータ間のデータの送信・受信 プログラムを書けるようするものです。ただし、ソケットを使うためには、ま ず準備作業として(1)ソケットの生成と、(2)そのソケットを通信相手のソケッ ト

  • 1