タグ

TCPに関するiwwのブックマーク (107)

  • The Cable Guy - October 2006

    This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support. Explicit Congestion Notification (ECN) for TCP/IP By The Cable Guy When routers become congested to the point in which their incoming packet buffers fill and they begin dropping packets, the effect on the network is reduced bandwidth, an impact on loss o

    The Cable Guy - October 2006
    iww
    iww 2014/01/06
  • wiresharkでTCP制御フラグを指定してパケットを表示する方法(Display Filter) - Eiji James Yoshidaの記録

    個人的にはあまり使わないwiresharkのDisplay Filterだが、知ってると便利な場合もあるのでメモ。 SYNフラグが設定されたパケットの表示 tcp.flags.syn==1 SYNフラグが設定されていないパケットの表示 tcp.flags.syn==0 SYNフラグのみ設定されたパケットの表示 tcp.flags==2 ACKフラグが設定されたパケットの表示 tcp.flags.ack==1 ACKフラグが設定されていないパケットの表示 tcp.flags.ack==0 ACKフラグのみ設定されたパケットの表示 tcp.flags==16 ACKフラグとSYNフラグが設定されたパケットの表示 tcp.flags.syn==1 && tcp.flags.ack==1 ACKフラグとSYNフラグのみ設定されたパケットの表示 tcp.flags==18 ACKフラグかSYNフラグ

    wiresharkでTCP制御フラグを指定してパケットを表示する方法(Display Filter) - Eiji James Yoshidaの記録
  • TCP 3-way handshakeのレイテンシ軽減のためのTCP_DEFER_ACCEPTソケットオプション - ゆううきブログ

    2013/10/22 追記した. Starletのコード読んでてlistening socketにTCP_DEFER_ACCEPTとかいうオプション渡してたので、これ何だって思って調べた. TCPに特に詳しいわけではないので理解に誤りがあるかもしれない. package Starlet::Server; ... # set defer accept if ($^O eq 'linux') { setsockopt($self->{listen_sock}, IPPROTO_TCP, 9, 1) # 9がTCP_DEFER_ACCEPTを表す and $self->{_using_defer_accept} = 1; } ... TCP_DEFER_ACCEPTはLinux 2.4から導入されている. Linux 2.6.32から挙動が若干変わっているらしい. (linux の TCP_DE

    TCP 3-way handshakeのレイテンシ軽減のためのTCP_DEFER_ACCEPTソケットオプション - ゆううきブログ
  • SPDYやQUIC登場の背景。Webの進化がプロトコルを変えつつある。HTML5 Conference 2013

    SPDYやQUIC登場の背景。Webの進化がプロトコルを変えつつある。HTML5 Conference 2013 Webをより速くしようと、HTTPよりも優れたプロトコルとして提案されたSPDY(スピーディ)。しかしそのSPDYによって、下位レイヤであるTCPの制限が顕著に見えるようになってしまい、そのことでTCP以外のプロトコルとしてQUICをGoogleが提案しています。 Webの進化は、インターネットのプロトコルにまで影響を与えようとしている、という非常に興味深い話が、HTML5のコミュニティ「html5j」主催のイベント「HTML Conference 2013」で行われた小松健作氏のセッション「最新Webプロトコル、傾向と対策」で行われました。 その内容をダイジェストで紹介しましょう。 最新Webプロトコル、傾向と対策 小松です。所属はNTTコミュニケーションズでHTML5の研究

    SPDYやQUIC登場の背景。Webの進化がプロトコルを変えつつある。HTML5 Conference 2013
  • 2chの書き込み規制のしくみを調べてみた - このブログはURLが変更になりました

    規制されてないのに2chに書き込めない原因判明 スレを読み進めていくと、どうやら 206.223.144.0/20 207.29.224.0/19 からのTCPポート 443 995 1723 へのアクセスをフィルタすれば書き込めるらしい。 書き込むたびにTCPポートスキャンをしているの?と興味が湧いたので調べてみた。 ちなみに元記事には情報源スレッドのURLが記載されているが、読み方がわからなかったので読んでない。 Twitterに全部書いたので再掲 2ch側からTCPポートスキャンがされる件を検証してみた。「書き込む」のボタンを押したらすぐにポートスキャンきた。207.29.225.225からTCPポート443、995、1723にSYNきた。クッキーを持ってない場合に届く模様。クッキー削除したらまたきた。— └('-'└)└)└)<matsuu (@matsuu) November 2

    2chの書き込み規制のしくみを調べてみた - このブログはURLが変更になりました
  • socatを使ってみる | FUture REal LOcation

    複数台のWebサーバ(Apache)が動作している環境で、 アクセスログを簡単に集約できないか調べていた。 アクセスログを、netcat(ncコマンド)を利用して、UDPパケットとしてブロードキャストに投げ、 それをログ収集サーバが受け取ることができないか調べていたが、CentOS付属のnetcatでは出来なかった。 ※詳しくは調べていないが、UDPで待ちうけるように設定した場合、一回通信が開始されると、その待受けポートがなくなってしまう模様。 代わりのものを調べていたら、socatというnetcatの高機能版のようなツールがあった。 TCP/UDPだけではなく、IP,SCTP,PTY,EXEC等多数のプロトコルを扱える。 EPELにsocatパッケージとして登録されている。 # yum install --enablerepo=epel socat ●利用方法 サーバ側は以下のようにして

  • socat メモ

    ■UDPで待受 # socat UDP-LISTEN:10000,fork,reuseaddr STDOUT ■TCPで待受 # socat TCP4-LISTEN:10000,fork,reuseaddr STDOUT ■受信したデータをファイルへ保存 # socat TCP4-LISTEN:10000,fork,reuseaddr OPEN:output.txt,creat=1 ■コマンドサーバ(受信したデータを入力としてコマンドを実行し、結果を返す) echoサーバ # socat TCP4-LISTEN:10000 SYSTEM:cat 時間を返す # socat TCP4-LISTEN:10000,fork,reuseaddr SYSTEM:"date +%s" ■UDPで送信 # socat STDIN UDP-SENDTO:192.168.128.xxx:10000 ■TCP

  • Geekなぺーじ : TCP vs RTP:何故RTPが必要なのか?

    インターネットを流れるトラフィックのほとんどがTCP(Trasmission Control Protocol)によるものです。 TCPは、全てのデータが正しく相手に伝わることを保証するため品質の高いデータ通信が実現できます。 また、どのパケットが受け取れなくて、どれが受け取れたかなどをわざわざ考えなくても良いので、プログラムを書くのも簡単です。 では、何故、わざわざRTPというものが必要だったのでしょうか? ここでは、まず最初に何故RTPはTCPではなく、UDPの上に存在しているのかを説明したいと思います。 (もちろん、TCPの上に作ることはRTPの規約上は可能ですが、現実的にはUDPの上でしか実装がないと思います。) その後、何故、UDPの上に共通のRTPというものを構築したのかを説明したいと思います。 RTPは、名前にもある通り、「リアルタイム」なデータを転送するためのプロトコルです

  • Loading...

    iww
    iww 2013/09/06
    クライアント同士はP2Pなのであまり意味はないかも
  • OpenVPNをインストールしよう

    OpenVPNの特徴としては、 1.巷を賑わせたSoftEther同様、最近流行のSSL VPNの一種 2.L2トンネリングであり、Broadcast も転送可能 3.オープンソースソフトウェアであるが、Windowsに対してはインストーラパッケージが用意される等、 とっても親切 # マニュアルは分かりにくくてしゃ~ないけど 4.Windows版でのインストール/アンインストールには再起動が不要 と、この時点で「その道」の人でないと既に(; ̄▽ ̄)<ハァ? かも。 そこで、も~バキバキ噛み砕いて説明することにします(正確さは有る程度犠牲にしますた)。 ※ かなりざっくりの説明なんで、テストとかレポートに書かないように( ̄▽ ̄;)<怒られても知らんよ~ [VPNとは] 「Virtual Private Network」の略。日では「仮想専用線」なんて訳もあるみたいです。 物理的に離れたネッ

    iww
    iww 2013/07/22
  • Delayed ACK - Cube Lilac

    これも研究関連で,遅延ACK(Delayed ACK)を無効にした状態でデータ通信をする必要がありまして. 今まではFreeBSDのPCで実験を行っていたのでsysctlで一発で無効にできたのですが,Linux系ではどうやらその方法では無理な模様. それで,JM projectで調べた所どうやらsetsockopt()を用いてquickackモードを有効にすれば良いらしいとの事なので,早速コードを修正して走らせて見たのですが・・・tcpdumpで見てる限り,思いっきり遅延ACKが動作してるぽいんですよね. 試行錯誤したところ,結局↓の説明が曲者だったようで・・・ TCP_QUICKACK 設定されていると quickack モードを有効にし、クリアされると無効にする。通常の TCP 動作では ack は必要に応じて遅延されるのに対し、 quickack モードでは ack はすぐに送信され

    Delayed ACK - Cube Lilac
  • Note - 遅延ACKオプションに関するメモ

    研究に関連する実験で,遅延ACK(Delayed ACK)オプションを無効にした状態で, データ通信をする必要があったのですが,その時に陥ってしまった事例. 今まではFreeBSDのPCで実験を行っていたため,sysctlで簡単に無効にすることができたのですが, どうやらLinux系ではその方法では無効にできないようです.そこで, JM Projectで調べたところ,setsockopt()を用いてquickackモードを有効にすれば良い, という記述を発見したので,早速コードを修正してテストしてみたのですが・・・tcpdump で観察している限り,遅延ACKオプションは有効になったままの様子. 試行錯誤した結果,どうやら以下の記述が問題となっていたようです. TCP_QUICKACK ・・・(中略)・・・ このフラグは永続的なものではなく、 quickack モードから/モードへ切り替え

  • 富士通研究所、ソフトウェアだけで通信性能を大幅に改善する新技術を開発

    iww
    iww 2013/01/30
    パケットロス時の再送がすごく効率良くできるよ という話っぽい。 日米間で30倍以上のスループットとか言うけど、普段はどんだけパケットロスしてるんだろう
  • TCPやUDPにおけるポート番号の一覧 - Wikipedia

    この記事には複数の問題があります。改善やノートページでの議論にご協力ください。 出典がまったく示されていないか不十分です。内容に関する文献や情報源が必要です。(2021年8月) 古い情報を更新する必要があります。(2021年11月) 出典検索?: "TCPやUDPにおけるポート番号の一覧" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL 項ではTCPやUDPにおけるポート番号の一覧を示す。 コンピュータネットワークにおいて、インターネット・プロトコル・スイートのトランスポート層にあたるTransmission Control Protocol (TCP) やUser Datagram Protocol (UDP) では、他のプロトコル同様、ホスト間通信のエンドポイントを指定する際に数字の識別子が用い

  • localhost の特別扱い - どさにっき

    2012年10月2日(火) ■ localhost の特別扱い _ localhost というのはローカルなホストであって外部のホストではない。はず。なので、デフォルトで特別扱いしているアプリというのがたまにある、というのがちらっと近所で話題になって思い出したことを。 _ MySQL。サーバではなくクライアント側のライブラリ。この手の特別扱いでとびぬけておかしな挙動をしやがる。接続先ホストとして localhost を指定すると、127.0.0.1 でも ::1 でもなく、接続先を勝手に UNIX ドメインソケットに変更してつなぎにいきやがる。 詳細。ライブラリが勝手にやってるので、それを利用するアプリはすべてこのような挙動になる。localhost で待ち受けているのが自ホストmysql サーバではなく、他ホストで動いている mysql に接続するために掘ったトンネルだったりするとこ

  • RSTを受信したときの挙動: じーくゎい

  • ucspi-tcp

    ucspi-tcp のインストール ucspi-tcp の以前のバージョンからのアップグレード tcpserver プログラム tcprules プログラム tcprulescheck プログラム argv0 プログラム fixcrio プログラム recordio プログラム rblsmtpd プログラム tcpclient プログラム who@ プログラム date@ プログラム finger@ プログラム http@ プログラム tcpcat プログラム mconnect プログラム addcr プログラムと delcr プログラム TCP 環境変数 それは何か? tcpserver と tcpclient は TCP クライアント・サーバ・アプリケーションを構築するための使いやすいコマンドラインツールです。 tcpserver は入ってくる接続を待ち、各々の接続に対して、好みのプロ

  • ssコマンドのちょっといい所見てみたい。のでネットワーク統計情報がどの程度見られるか試してみた。 - 256bitの殺人メニュー

    netstatさんが時代遅れだって!? netstat使ってるのは小学生までだよねー。 キャハハk(ry 、、、というのは冗談ですが、これからはssコマンドらしいって聞いたので、どんな感じで使えるか使ってみた。 ssコマンド netstatの代替コマンドらしく、現在の通信状況の確認に使えるコマンドです。 メリットはsocketのrawでのsocketの扱いができる点かなと。 と、ipv6に強いところのようです。 でもあんまりipv6環境ってないですし、普段使いで代替になるかなーと思って見てみました。 基的な使い方 netstatと似た感じっすよ。これ。 netstat # netstat -naot (snip) tcp 0 0 192.168.100111:50271 192.168.10131:27218 ESTABLISHED keepalive (215.43/0/0) tcp

    ssコマンドのちょっといい所見てみたい。のでネットワーク統計情報がどの程度見られるか試してみた。 - 256bitの殺人メニュー
    iww
    iww 2012/05/15
  • サーバにおけるTCPのチューニング (/etc/sysctl.conf) - Humanity

    自分には早いような気がするけどメモ。 大量の接続がやってきた!ヤァ!ヤァ!ヤァ! - 元RX-7乗りの適当な日々 こういった大量のTIME_WAITがある状況でtcp_tw_recycleを有効にするとソケットの再利用を有効にする、らしい。 tcp_tw_recycle (Boolean; default: disabled; Linux 2.4 以降) TIME_WAIT ソケットの素早い再利用を有効にする。 このオプションを有効にすると、 NAT (ネットワークアドレス変換) を用いていると問題が生じるので、 あまり推奨しない。 F's Garage @fshin2000 :tcp_tw_recycle=1にすると、今でもソフトバンク携帯で障害が起きる。 しかしtcp_tw_recycleを有効にすると、過去モバツイでsoftbank携帯で接続できない問題が起きたらしい。 どさにっき

    サーバにおけるTCPのチューニング (/etc/sysctl.conf) - Humanity
  • TCP socketではwriteの後すぐにcloseしてはいけない

    TCP socketではwriteの後すぐにcloseしてはいけない。 相手側に全てのデータが届いてからcloseする必要がある。 shutdown で書き込み側だけハーフクローズするとよい。 相手側がcloseしてから、こちらをcloseする。相手側がcloseしたことは、readを呼んでブロックさせておくと、読み込みバイト数==0 つまりEOFになったことでわかる。

    TCP socketではwriteの後すぐにcloseしてはいけない
    iww
    iww 2012/04/04
    面倒くさくていつもやってないな