タグ

tcpに関するrin51のブックマーク (10)

  • 40年越しにTCPの仕様(RFC793)が改訂される RFC9293 - ASnoKaze blog

    2022/08/09 追記 「RFC 9293 Transmission Control Protocol (TCP)」として正式なRFCが出ました TCPのコア部分の仕様は1981年に発行された「RFC793 TRANSMISSION CONTROL PROTOCOL」で標準化されています。 この、RFC793の改訂版となる「Transmission Control Protocol (TCP) Specification」は、2013年からIETFのTCPM WGで議論されてきましたが、4月4日にIESGによって承認されました(参考URL)。現在はRFC出版の準備に入っています(新しいRFC番号はこの後正式に決まります) www.ietf.org 改めてTCPの仕様を読みたい場合はこのドキュメントを読むのが良さそう。 概要 この改訂版の仕様(通称 rfc793bis)は、RFC793が

    40年越しにTCPの仕様(RFC793)が改訂される RFC9293 - ASnoKaze blog
    rin51
    rin51 2022/04/13
  • Can I use tcpdump to get HTTP requests, response header and response body?

    I am using tcpdump to get HTTP data by executing the below command: sudo tcpdump -A -s 1492 dst port 80 The result of above command: Headers, I think request and response headers. Unreadable data. The url GET /modules/mod_news_pro_gk1/cache/stories.ilbalad.ajayeb.strange-tractor.jpg. I need a more clear result, for example, readable request > response header > response body etc. How can I filter m

    Can I use tcpdump to get HTTP requests, response header and response body?
    rin51
    rin51 2020/12/21
    「GETメソッドやPOSTメソッドはマジックナンバーでフィルタすればおk」なかなかしんどい
  • ソケットプログラミングのTips

    概要 ソケットプログラミングに関するTipsをメモレベルで記載する。 切断検知と経路切断 TCPコネクションの切断検出 対向がclose()、shuttdown()、プログラム終了等をしたときの切断検出について。 OSをシャットダウンさせた場合も通常はアプリケーションの終了処理が走り、正常な切断が動く。 受信側の切断検出は、recv()がlength==0で返ってきたとき、または、errno==ECONNRESETとなる。(ECONNRESETはRSTによって切断された場合) 送信側の切断検出は、切断された後2回目のsend()がエラーとなる。 ※相手がclose()→こちらがsend()→相手にパケットが飛ぶが待ち受けプログラムがいないためRST応答が来る→もう1度send()→エラー ※send()自体はカーネルの送信バッファにデータコピーするだけなので、TCPレベルの応答(送信完了)

    ソケットプログラミングのTips
    rin51
    rin51 2020/12/16
    切断を検出する処理
  • netstatコマンドを使いこなす @IT:Windows TIPS -- Tips:

    TCP/IP関連のトラブルシューティングを行う場合に、必ずといってよいほど使うコマンドとして「netstat」コマンドがある(実行ファイル名はnetstat.exe)。このコマンドは、主にTCPの通信状態を調べるためには必須であり、ぜひともその使い方をマスターしておきたい。 netstatの基――通信中のTCPコネクションの調査 netstatコマンドの最も基的な使い方は、通信中のTCPコネクション(TCP接続)の状態を表示させることである。このコマンドを実行すると、ローカルPCのTCP/IPプロトコルスタック上において、現在アクティブになっているTCP通信の状態を表示できる。 ●「TCP」とは? 「コネクション」とは? TCPとは、2つのアプリケーション間で、信頼性のある通信路(コネクション)を開設し、お互いにデータなどをやりとりするための機能である。通信するアプリケーションは、同一

    netstatコマンドを使いこなす @IT:Windows TIPS -- Tips:
  • ぜんぶTIME_WAITのせいだ! - Qiita

    課題 突然キャンペーンとかの高トラフィックが来る!とか言われると色々困ることはあるものの、今のご時世クラウドだからスペック上げときゃなんとかなるでしょ。ってとりあえずCPUとかメモリあげて見たものの、キャンペーンが始まったら意外と早くブラウザからつながらない!!とか言われたりする。 CPUもメモリもそんなに負荷は特に高くもない。調べてみたらTIME_WAITが大量にあった。 とりあえず何とかしたい TIME_WAIT数をコマンドで確認 $ netstat -anp|grep TIME_WAIT __(snip)__ tcp 0 0 192.168.1.1:80 192.97.67.192:56305 TIME_WAIT - tcp 0 0 192.168.1.1:80 192.63.64.145:65274 TIME_WAIT - tcp 0 0 192.168.1.1:80 192.39

    ぜんぶTIME_WAITのせいだ! - Qiita
  • net.ipv4.tcp_tw_recycle は廃止されました ― その危険性を理解する - Qiita

    Disclaimer 私はネットワークの勉強もちゃんとしたことないし、Linux のソース読むのもはじめてな素人です。 何かおかしなところなどあれば、遠慮なくコメント欄でまさかりをお願いいたします。 ソースコードの引用に関して 文中で Linux のコード/ドキュメントを引用している箇所がありますが、すべてタグ v4.11 のものです。また、日語のコメント・翻訳文は筆者が入れたものです。 TL; DR Linux のカーネルパラメータ net.ipv4.tcp_tw_recycle は、バージョン4.12から廃止されました。 今後はこの設定は行わないようにしましょう(というかできません)。 一方、net.ipv4.tcp_tw_reuse は安全であり、引き続き利用できます。 …というだけの話なのですが、自分用にメモがてら経緯・背景などを記録しておきます。 なんで気がついたか このパラ

    net.ipv4.tcp_tw_recycle は廃止されました ― その危険性を理解する - Qiita
  • TCPを(少しは)理解しておくべきその理由 | POSTD

    この記事はTCPの 全て を理解する、あるいは 『TCP/IP Illustrated』 (訳注:日語版: 『詳解TCP/IP〈Vol.1〉プロトコル』 )を読破しようとか、そういうことではありません。ほんの少しのTCPの知識がどれほど欠かせないものなのかについてお話します。まずはその理由をお話しましょう。 私が Recurse Center で働いているとき、PythonでTCPスタックを書きました( またPythonでTCPスタックを書いたらどうなるかについても書きました )。それはとても楽しく、ためになる経験でした。またそれでいいと思っていたんです。 そこから1年ぐらい経って、仕事で、誰かが「NSQへメッセージを送ったんだが、毎回40ミリ秒かかる」とSlackに投稿しているのを見つけました。私はこの問題についてすでに1週間ほど考え込んでいましたが、さっぱり答えがでませんでした。 こ

    TCPを(少しは)理解しておくべきその理由 | POSTD
  • ncコマンドとbashの/dev/tcpで通信 - suztomoのはてなダイアリー

    netcatコマンドとbashの/dev/tcpを使って通信をする。 Reverse Shell with Bashを実行してみました。 bashはtcpの通信を/dev/tcp/host/portというファイルへの入出力に見せかけることができる。 これを使ってサーバとクライアントで通信をして、遠隔操作をしてみる、サーバとクライアントを用意するけれど、この例では接続してきたクライアントをサーバ側で操作するというもの。 まずnc(netcat)コマンドをサーバで実行する。-lでlisten mode.ここではtcpの8080番ポートで待ち受けることにした。*1 次に、クライアントではbashにシェルを変更して、ファイルディスクリプタの5番を/dev/tcp/[サーバのアドレス]/[サーバが待ち受けてるポート]にむすびつける。*2 うまく繋るとサーバ側に繋った旨が表示された。 クライアント側で

    ncコマンドとbashの/dev/tcpで通信 - suztomoのはてなダイアリー
  • VMwareとTCP Segmentaion Offload (TSO) - 銀の鍵

    Hearing I ask from the holy races, From Heimdall's sons, both high and low; Thou wilt, Valfather, that well I relate Old tales I remember of men long ago. The Wise-Woman's Prophecy, THE POETIC EDDA ---------- すべての尊い氏族、身分の高下を問わず、ヘイムダルの子らに聞いてもらいたい。 戦士らの父よ、あなたは私に思い出せるだけの古い昔の話を みごと語ってみせよと仰せられる。 巫女の予言 歌謡エッダ VMwareのホストOSとゲストOS間のネットワーク通信が非常に遅いことがあるそうな。私はホスト・ゲスト間で大量にデータのコピーをしないので今のところ気づ

    rin51
    rin51 2011/05/20
    TCP Segmentation Offload
  • TSOが原因でさくらVPSへのウェブアクセスが異常に遅くなるトラブルに遭遇 - 橙工房 Atelier Laranjeiras

    自宅のネット環境から都道府県別統計とランキングで見る県民性 [とどラン]を運営している、さくらVPSへのアクセスが異常に遅くなるトラブルに遭遇した。 現象としては ブラウザ経由のアクセス、ftpクライアント経由のアクセス速度が異常に遅くなる。(数バイト/秒程度) 小さいパケットだと問題ないので、pingやtracerouteでは異常が発見されない。 自宅ネット環境はDHCPでIPがふられているが、特定のIP,ゲートウェイのセットでのみ発生する。 職場の別回線ではそのようなトラブルは一切発生しない。 複数のWindowsXPで発生したが、Linuxデスクトップ(Debian)では発生しない。 この件について自宅のプロバイダともやりとりをしたが、原因が見つからなかった。そこでさくらインターネットに問い合わせたところ、すぐに対策法が送られてきて問題は解決した。 サーバー側でTSO(TCP Seg

    TSOが原因でさくらVPSへのウェブアクセスが異常に遅くなるトラブルに遭遇 - 橙工房 Atelier Laranjeiras
    rin51
    rin51 2011/05/20
    TCP Segmentation Offload
  • 1