並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 243件

新着順 人気順

TCPの検索結果81 - 120 件 / 243件

  • Amazon.co.jp: Linuxで動かしながら学ぶTCP/IPネットワーク入門: もみじあめ: Digital Ebook Purchas

      Amazon.co.jp: Linuxで動かしながら学ぶTCP/IPネットワーク入門: もみじあめ: Digital Ebook Purchas
    • Rustで始めるTCP自作入門:ひつじ技研

      # この本について 本書では近年話題のプログラミング言語であるRustを用いて,自作TCP実装,その名も「ToyTCP」を作成します.完全な実装を作るのはハードルが高いので,なるべく機能をシンプルにしつつ,しっかりと動くものを目指します.ただTCPを作るだけでは面白くないので,次のようなToyTCPを利用する2つのアプリケーションも同時に作成します. - エコーサーバ,エコークライアント - 文字列のやりとりを行う - サーバは複数のクライアントを同時にハンドリングする - ファイルサーバ,クライアント - アップロード機能のみ - クライアントから数MBのファイルをサーバにアップロードする - 少しくらいパケットがロスしても問題なく完了する TCPの仕様が記述されているRFC793は全部で85ページとかなりのボリュームがあるため,本質的な部分だけを選んで実装していきます.作成する機能は主

        Rustで始めるTCP自作入門:ひつじ技研
      • 何もツールがなくてもコンテナの中のTCP通信の状態を見たい - ローファイ日記

        完全に消費税に負けた... 今日も小ネタです。 一般に、以下のようなことを調べる時 netstat や ss などのツールは便利です。 あるポートがリッスンされているか知りたい あるコネクションに実際に通信があるか知りたい MySQLサーバなど外部プロセス/サーバにコネクションが貼られているか知りたい でもコンテナ環境では、そんな余計なツールは入っていない!!!ことも多い。 そんな時でも、 /proc ファイルシステムはほぼ間違いなくマウントされているはずです。 なのでそこを直接見ることも検討しましょう。 /proc/net/tcp(6) を眺める コンテナのネットワークに直接入るには、 nsenter などを使うことができます。今回はすぐ用意できる環境があったので Haconiwa ですが、 Docker などで置き換えて試してください。 $ ps auxf ... root 13252

          何もツールがなくてもコンテナの中のTCP通信の状態を見たい - ローファイ日記
        • GitHub - kffl/speedbump: TCP proxy for simulating variable, yet predictable network latency :globe_with_meridians::hourglass_flowing_sand:

          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

            GitHub - kffl/speedbump: TCP proxy for simulating variable, yet predictable network latency :globe_with_meridians::hourglass_flowing_sand:
          • Network performance regressions from TCP SACK vulnerability fixes

            Unified governance for all data, analytics and AI assets

              Network performance regressions from TCP SACK vulnerability fixes
            • RFC 9401: The Addition of the Death (DTH) Flag to TCP

              Stream: Independent Submission RFC: 9401 Category: Informational Published: 1 April 2023 ISSN: 2070-1721 Author: RFC 9401 The Addition of the Death (DTH) Flag to TCP Abstract This memo specifies the incorporation of Death (DTH) flag to TCP, including DTH's use of one bit in the TCP header. The flag is designed to make TCP session narratives smooth and attractive.¶ Status of This Memo This document

              • zeke | tcp-proxy

                home A TCP Proxy in 30 lines of Rust Jul 2021 TCP proxies accept connections from one computer and forward them to another. AWS Global Accelerator and Cloudflare Spectrum are examples of TCP proxies you can pay to use in the wild. TCP proxies can be quite simple. Here we’ll write one in 30 some lines of Rust. After we write it we’ll demonstrate the proxy’s functionality by proxying traffic from lo

                • GitHub - pandax381/microps: An implementation of a small TCP/IP protocol stack for learning.

                  Abstraction Layer Physical device abstraction Define structure for physical device abstraction (struct net_device) Support multiple link protocols and physical devices Logical interface abstraction Define structure for logical interface abstraction (struct net_iface) Support multiple address family and logical interfaces Devices Null Loopback Ethernet TUN/TAP (Linux) PF_PACKET (Linux) Protocols Et

                    GitHub - pandax381/microps: An implementation of a small TCP/IP protocol stack for learning.
                  • AWS LambdaのNode.jsランタイムでTCP接続を使いまわそう!(AWS_NODEJS_CONNECTION_REUSE_ENABLED) | DevelopersIO

                    Node.js のHTTP/HTTPS エージェントはデフォルトで keepalive が無効化されているため、新しいリクエストがあるたびに新しい TCP 接続を作成します。 AWS Lambda の Node.js ランタイムを利用している場合、環境変数で AWS_NODEJS_CONNECTION_REUSE_ENABLED=1 を設定することでkeepaliveが有効になり、TCP 接続を再利用してより効率的に通信するようになります。 この動作を確認してみます。 背景 Node.js のHTTP/HTTPS エージェントはデフォルトで keepalive が無効化されています。 keepAlive Keep sockets around even when there are no outstanding requests, so they can be used for futur

                      AWS LambdaのNode.jsランタイムでTCP接続を使いまわそう!(AWS_NODEJS_CONNECTION_REUSE_ENABLED) | DevelopersIO
                    • LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 1編 | NHN Cloud Meetup

                      1.はじめに ネットワークのパフォーマンスを決定付ける最も重要な要素は、最終的にはアプリケーションにあるでしょう。ただ、ワークロードの特性によっては、デフォルト設定されたTCPカーネルパラメータが制約となり、パフォーマンスを発揮できないときもありますね。 非常にたくさんのカーネルパラメータがありますが、本文では、ネットワーク帯域幅(bandwidth)のカーネルパラメータ、ネットワーク容量(capacity)のカーネルパラメータを主に扱います。 2.準備 Linuxはsysctlコマンドで簡単にカーネルパラメータを実行時に変更できます。 次のようなコマンドを使用すると、現在のカーネルパラメータ設定値の全体を閲覧できます。 $ sysctl -a ここで取り上げるネットワークは、特にTCPのcapacityとbandwidthなどを調整(tuning)できるカーネルパラメータのごく一部を紹介

                        LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 1編 | NHN Cloud Meetup
                      • 4567/TCPポートに対する「Miraiボット」のアクセス増加、警察庁が注意喚起

                          4567/TCPポートに対する「Miraiボット」のアクセス増加、警察庁が注意喚起 
                        • Linux 5.17 To Boast A Big TCP Performance Optimization - Phoronix

                          Show Your Support: This site is primarily supported by advertisements. Ads are what have allowed this site to be maintained on a daily basis for the past 19+ years. We do our best to ensure only clean, relevant ads are shown, when any nasty ads are detected, we work to remove them ASAP. If you would like to view the site without ads while still supporting our work, please consider our ad-free Phor

                            Linux 5.17 To Boast A Big TCP Performance Optimization - Phoronix
                          • LinuxでTCP/UDPコネクション状態にプロセス情報を紐付ける方法 - ゆううきメモ

                            Linuxでは、/proc/net/*やNetlinkソケットを通じて、TCP/UDPのコネクション情報を取得できる。 しかし、ここで取得したコネクション情報は、コネクションを保有するプロセスに関する情報(pidなど)を含んでいない。 ssコマンドの--extendedオプションは、inode番号を表示することから、inode番号からプロセス情報を辿ることを考える。 当該プロセスのpidがわかっていれば、/proc/<pid>/fd以下から、次のようにsocket inode番号を知ることができる。 ubuntu@yuukidev01:~$ sudo readlink /proc/21326/fd/6 socket:[16801] しかし、inode番号からそのinodeを保持しているpidを直接知ることはおそらくできない。 そこで、次のようなTCP/UDPのコネクションリストとプロセスリ

                              LinuxでTCP/UDPコネクション状態にプロセス情報を紐付ける方法 - ゆううきメモ
                            • OSI参照モデルとは?TCP/IPとの違いを図解で解説 | ITコラム|アイティーエム株式会社

                              サーバやネットワーク機器の監視やシステム全体の運用・監視など、24時間365日体制で統合的にお客さまのシステム環境をサポートするサービスです。

                                OSI参照モデルとは?TCP/IPとの違いを図解で解説 | ITコラム|アイティーエム株式会社
                              • TCP SYN/ACK リフレクション攻撃の観測 (2019年10月) – IIJ Security Diary

                                2019年10月下旬に大規模な TCP SYN/ACK リフレクション攻撃を複数観測しました。本記事では IIJ のマルウェア活動観測プロジェクト MITF のハニーポットの観測結果から、今回の DDoS 攻撃の発生状況について紹介します。 TCP SYN/ACK リフレクション攻撃 リフレクション攻撃 (リフレクター攻撃、アンプ攻撃とも呼ぶ) は、送信元アドレスを偽装した IP パケットを踏み台となる多数の機器 (リフレクター) に大量に送信することにより、その応答パケットを利用して攻撃する DDoS 攻撃手法の一つです。この場合、偽装された送信元アドレスがターゲットとなる被害者ということになります。真の発信元である攻撃者のアドレスを隠蔽するとともに、リフレクターからの応答パケットのサイズが大きくなる増幅効果を狙う攻撃です。UDP と比較すると増幅効果のあまり大きくない TCP によるリ

                                  TCP SYN/ACK リフレクション攻撃の観測 (2019年10月) – IIJ Security Diary
                                • FIN -> FIN/ACK -> ACK という TCP の幻想 - kawasin73のブログ

                                  掴んで離さぬコネクション。どうも、かわしんです。しがみつかずに適切なタイミングで離しましょう。 この1週間で RFC を読みながら TCP/IP プロトコルスタックを自作した 1 のですが、その時にコネクションの終了処理でハマったので後学のために書き残しておきます。 一言でまとめると FIN -> FIN/ACK -> ACK は間違っていて、正しくは FIN/ACK -> FIN/ACK -> ACK であったという話です。 ちなみに、僕が自作した TCP/IP プロトコルスタックはこれです。 github.com 現象 それは TCP のリスナーと close 処理が出来上がってコネクション管理のテストをしていた時のことでした。 自作 TCP スタックでポートを Listen して Accept したらすぐにサーバ側からコネクションを切断するというテストコードを書いて実行し、Linux

                                    FIN -> FIN/ACK -> ACK という TCP の幻想 - kawasin73のブログ
                                  • 分散アプリケーションの依存発見に向いたTCP/UDPソケットに基づく低負荷トレーシング - ゆううきブログ

                                    この記事は、分散アプリケーションを構成するネットワークサービス間の依存関係マップを構築するための基礎技術の改善提案をまとめたものである。第8回WebSystemArchitecture研究会での発表と同等の内容であり、そのときのスライドを以下に掲載しておく。 また、本手法のプロトタイプと評価実験のためのコードを次のGitHubリポジトリに公開している。 1. はじめに クラウドの普及により、サービス事業者は機能追加やアクセス増加への対応が容易となっている。その一方で、クラウド上に展開される分散アプリケーション内の構成要素の個数と種類が増加しているため、構成要素の依存関係が複雑化している。そのため、システム管理者が、システムを変更するときに、変更の影響範囲を特定できず、想定よりも大きな障害につながりうる。よって、システム管理者の手によらず、ネットワークサービス(ネットワーク通信するOSプロセ

                                      分散アプリケーションの依存発見に向いたTCP/UDPソケットに基づく低負荷トレーシング - ゆううきブログ
                                    • tcpの仕様上、接続先がコネクションをcloseしているかはパケットを一度は実際に送るまでわからないよという話 - Qiita

                                      tcpの仕様上、接続先がコネクションをcloseしているかはパケットを一度は実際に送るまでわからないよという話CTCP はじめに サーバがコネクションをclose後しばらくして、クライアントがwriteしました。関数呼び出しの結果はエラーでしょうか? 上記の正解は「何事もなく、成功する」です。この挙動が理解できている方はこの記事を読む必要はないかもしれません。 自分は「接続先がcloseしたソケットにwriteした場合はプロセスがSIG-PIPEを受け取るかシグナルをハンドリングしていた場合はEPIPEが返ってくる」と思っていました。 それは、Linuxのマニュアルに以下の記載があるためです。 EPIPE fd is connected to a pipe or socket whose reading end is closed. When this happens the writin

                                        tcpの仕様上、接続先がコネクションをcloseしているかはパケットを一度は実際に送るまでわからないよという話 - Qiita
                                      • Docker Compose で複数コンテナの準備完了を TCP / HTTP で待機できる「dockerize」を試した - kakakakakku blog

                                        Docker Compose を使って複数コンテナを起動するときに,タイミングによっては接続エラーになってしまう場合がある.具体的な例としては「データベースコンテナ」の起動が遅いために「アプリケーションコンテナ」が接続エラーになってしまうことが挙げられる. depends_on とは Docker Compose には depends_on という設定項目があり,複数コンテナの「起動順序」を制御できるようになっている.しかし,あくまでこれは「起動順序」となり,必ずしも「準備完了」を保証するものではない.ドキュメントにも「開始 (start)」と「準備完了 (ready)」は異なると書いてあり,depends_on を使っても接続エラーは発生する可能性がある.機能不足と考えるのではなく,アプリケーション側でリトライ機構を用意するなど,レジリエンス(回復性)を考慮する必要がある. docs.d

                                          Docker Compose で複数コンテナの準備完了を TCP / HTTP で待機できる「dockerize」を試した - kakakakakku blog
                                        • DNSクエリでTCPを使うことが増えている? 6月23日開催の「DNS Summer Day 2023」で調査報告&考察 参加申し込み受付中、オンライン配信も~無料

                                            DNSクエリでTCPを使うことが増えている? 6月23日開催の「DNS Summer Day 2023」で調査報告&考察 参加申し込み受付中、オンライン配信も~無料
                                          • TCP/IP スタックを自作する - かーねるさんとか

                                            最近、TCP/IP スタックを自作しており、少し動くようになってきたので、それについて記事にしてみようと思いました。 主に、ポータブル(特定の CPU、NIC、OS、ライブラリ、コンパイラ機能に依存しない)かつマルチコア環境で利用できる実装があればいいなと思ったことが、モチベーションになっています。 まだ実装の途中ではありますが、ソースコードは GitHub に置いてありますので、よろしければお試しください。 GitHub - yasukata/iip: iip: an integratable TCP/IP stackgithub.com モチベーション TCP/IP スタック実装はインターネット上でいくつか見つけることができるのですが、それらの多くが可搬性についてあまり意識されておらず、込み入ったことをしようと思うと取り回しが良くない、というような印象を持っていました。 具体的には、既

                                              TCP/IP スタックを自作する - かーねるさんとか
                                            • TCP/IPをわかりやすく - 通信プロトコルの基礎知識を図解で学ぼう - エンジニアHub|Webエンジニアのキャリアを考える!

                                              TCP/IPをわかりやすく - 通信プロトコルの基礎知識を図解で学ぼう 現在のインターネットを支える技術であるTCP/IPについて、基礎となるプロトコル群と、TCPの基本機能を丸田一輝さん、 中山悠さんに解説していただきました。 今からおよそ50年前、パケット交換方式による世界初のコンピュータネットワークであるARPANETが構築されました。それ以来、TCP/IP(Transmission Control Protocol / Internet Protocol)は通信を実現する基盤技術として使われ続けています。今ではパソコンに限らず、スマートフォンやゲーム機、センサー、最近では自動車など、無線通信機能を持ったさまざまな端末も含めコンピュータネットワークは構成されています。 その中でも「通信の信頼性を確保する」役割を担っているTCPは、その性質上、多くの機能を備えています。加えて、時代とと

                                                TCP/IPをわかりやすく - 通信プロトコルの基礎知識を図解で学ぼう - エンジニアHub|Webエンジニアのキャリアを考える!
                                              • Mallet - a TCP tunnel like VPN

                                                I've developed a TCP tunnel, called "Mallet", that works like VPN. It depends on jpillora/chisel for TCP tunneling. You just need to run a chisel server in a machine that you would like to get traffic through. Mallet configures iptables (Linux) or pf (macOS) to redirect traffic to the TCP tunnel. Features No admin privilege required in a server. You just need SSH as a normal user. You still need s

                                                  Mallet - a TCP tunnel like VPN
                                                • TCP/IP技術入門——プロトコルスタックの基礎×実装[HTTP/3, QUIC, モバイル, Wi-Fi, IoT]

                                                  この本の概要 社会インフラとなったインターネットを動かす技術群「TCP/IP」にスポットを当て,長く役立つ基本を主軸に,先端の開発/ 研究動向の観点を盛り込んだ入門書。 本書では「プロトコルスタックの基礎」を理論× 実践のアプローチで丁寧に解説し,とくに, Wi-Fiやセルラーネットワークをはじめ 無線通信による通信量の爆発的増加 TCP/UDP/QUICのトランスポート層における スピードと信頼性のトレードオフ HTTP/3やWebTransport, IoTなど 進化する上位レイヤー関連プロトコル といった「インターネットの今」を支える技術ポイントを押さえた点が特徴です。 既存仕様に生じる限界の顕在化とそれらを解決する新たなテクノロジーの開発とが絶え間なく続いていく,そんなネットワークの世界が見えてくる1冊です。 ※本書の4章/5章は,『TCP技術入門』(安永 遼真/中山 悠/丸田 一

                                                    TCP/IP技術入門——プロトコルスタックの基礎×実装[HTTP/3, QUIC, モバイル, Wi-Fi, IoT]
                                                  • IoT向けの新技術を既存のTCP/IPと共存、国内発の技術が国際規格に承認

                                                    経済産業省は2021年2月22日、ICN(Information Centric Network:情報指向ネットワーク)技術を既存のTCP/IPネットワークと共存できるようにするための仕組みが、「ISO/IEC 30161-1 Data exchange platform for IoT services - Part 1:General requirements and architecture」として2020年11月27日に正式に国際規格として発行されたと発表した。 ICN技術は、データやコンテンツに付けられた「名前」を基に、ネットワーク上にキャッシュされた情報を取得する技術。相手のIPアドレスを指定して通信するTCP/IPとは異なる。ICN技術では、データのヘッダを軽量化できる点で、小さいデータを大量にやりとりするIoT(Internet of Things)アプリケーションと相性が

                                                      IoT向けの新技術を既存のTCP/IPと共存、国内発の技術が国際規格に承認
                                                    • TCP技術入門 ――進化を続ける基本プロトコル

                                                      2019年7月6日紙版発売 2019年7月1日電子版発売 安永遼真,中山悠,丸田一輝 著 A5判/288ページ 定価2,948円(本体2,680円+税10%) ISBN 978-4-297-10623-2 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 5G(第5世代移動通信),IoT(Internet of Things),自動運転をはじめ,ネットワークにまつわるサービスは飛躍的な発展を遂げつつあります。 通信の高速化,端末の爆発的な増加,クラウドによる遠隔送受信をはじめとした大きな変化のなか,通信の信頼性や効率性を担うTCPの存在感が増してきました。 本書では,

                                                        TCP技術入門 ――進化を続ける基本プロトコル
                                                      • TCPとUDPの違いとは?~Ethernet接続におけるオーバーヘッド削減ノウハウ~ | ハートランド・ザ・ワールド

                                                        TCPとUDPの違いは何?と聞かれると実は答えに困ってしまうという方もいるのではないでしょうか。弊社の動的テストツールDT10(以下、DT10)はEthernet経由でログを出力できますが、「TCPとUDPのどちらを使用すればよいのか?」というご相談もよく受けます。 そこで今回は、そもそもTCPとUDPはどういったプロトコルでどういった特長があるのかをおさらいし、DT10ではどちらを選ぶべきかを解説します。また、その特長を活かしたオーバーヘッドの削減方法も紹介します。 オーバーヘッドって何?という方はコチラ↓もどうぞ! オーバーヘッド って何なんだ!!!? ~ソフトの動的解析に付きまとう余計な処理時間を何とかしたい~ ソフトウェアの検証を考えるうえでゼッタイ避けては通れないオーバーヘッドについて、組込み機器をアレコレいじってきたエンジニアが、とりあえず思いの丈をまとめてみました。 続きを読

                                                          TCPとUDPの違いとは?~Ethernet接続におけるオーバーヘッド削減ノウハウ~ | ハートランド・ザ・ワールド
                                                        • Python入門ガイド: ネットワークプログラミングの基礎と応用【TCP/IPから仮想化まで解説】|Yuu's Memo

                                                          TCP/IP TCP/IP(Transmission Control Protocol/Internet Protocol)は、インターネットにおいて広く標準的に利用されている通信プロトコルです。 TCPとIPの2つを組み合わせたもので、私たちがパソコンやスマートフォンなどでWebサイトやホームページを見るときにも利用されています。 ソケット ソケットはネットワーキングにおいて重要な役割を果たすツールです。Pythonでは、socketモジュールを使用してソケットプログラミングを行うことができます。 socketモジュール Pythonのsocketモジュールは、ネットワーク通信を行うための機能を提供します。このモジュールは、TCPやUDPなどのプロトコルを使用してデータの送受信を行うためのソケットオブジェクトを作成し、操作するための関数やメソッドを提供します。以下では、socketモジュ

                                                            Python入門ガイド: ネットワークプログラミングの基礎と応用【TCP/IPから仮想化まで解説】|Yuu's Memo
                                                          • It's always TCP_NODELAY. Every damn time. - Marc's Blog

                                                            About Me My name is Marc Brooker. I've been writing code, reading code, and living vicariously through computers for as long as I can remember. I like to build things that work. I also dabble in machining, welding, cooking and skiing. I'm currently an engineer at Amazon Web Services (AWS) in Seattle, where I work on databases, serverless, and serverless databases. Before that, I worked on EC2 and

                                                            • YAMAMOTO Masaya on Twitter: "3月に開催したプロトコルスタック自作キャンプの講義資料を公開しました。1週間でTCP/IPのプロトコルスタックを自作してUDPやTCPで通信するアプリケーションを動かすという内容で300ページくらいのスライドです。これがあれば一人… https://t.co/36rMXOOFkT"

                                                              3月に開催したプロトコルスタック自作キャンプの講義資料を公開しました。1週間でTCP/IPのプロトコルスタックを自作してUDPやTCPで通信するアプリケーションを動かすという内容で300ページくらいのスライドです。これがあれば一人… https://t.co/36rMXOOFkT

                                                                YAMAMOTO Masaya on Twitter: "3月に開催したプロトコルスタック自作キャンプの講義資料を公開しました。1週間でTCP/IPのプロトコルスタックを自作してUDPやTCPで通信するアプリケーションを動かすという内容で300ページくらいのスライドです。これがあれば一人… https://t.co/36rMXOOFkT"
                                                              • Go言語を使ったTCPクライアントの作り方 - Qiita

                                                                この記事は Go Advent Calendar 2020 の10日目の記事です。 こんにちは、辻です。最近はクラウドからMCプロトコルというプロトコルを用いてスマート工場のPLCを操作するTCPクライアントを実装しています。TCPクライアントの実装は future-architect/go-mcprotocol として公開しています。 本記事では高速で信頼できるTCPクライアントをGoで実装するための知見を共有します。TCPとソケットプログラミングはざっと概要だけ触れておきます。 TCPとは? TCPとはRFC793で仕様が定められているプロトコルです。特徴を簡単におさらいしておくと、 非構造化ストリーム 全二重通信 コネクション管理 高信頼性 シーケンス番号 再送制御 順序制御 輻輳制御 チェックサム といった特徴があります。TCPのヘッダーフォーマットは以下のようになっていました。T

                                                                  Go言語を使ったTCPクライアントの作り方 - Qiita
                                                                • 第一回 KLab Expert Camp「TCP/IPプロトコルスタック自作開発」を開催しました : DSAS開発者の部屋

                                                                  KLab Expert Camp というイベントを8/26~29の4日間で開催しました。 KLab Expert Camp とは KLab Expert Camp は、技術的に深いテーマに取り組んでいる学生の発掘・育成を目的とした KLab の新しい取り組みです。 記念すべき第1回のテーマは「TCP/IPプロトコルスタック自作開発」で、以下のような触れ込みで開催しました。 「OSを作ってみたい」「コンパイラを作ってみたい」と思う人が多いように「プロトコルスタックを作ってみたい」と思う人も多いのではないでしょうか。今回の KLab Expert Camp のテーマは、そんな皆さんにピッタリの「TCP/IPプロトコルスタック自作開発」です。担当講師が開発している教育用のプロトコルスタック(https://github.com/pandax381/microps)を教材に、Ethernetフレー

                                                                    第一回 KLab Expert Camp「TCP/IPプロトコルスタック自作開発」を開催しました : DSAS開発者の部屋
                                                                  • LinuxのTCP Keep-Aliveを確認する - CLOVER🍀

                                                                    これは、なにをしたくて書いたもの? TCPのKeep-Aliveについて、なんとなく知ってはいたものの、自分でちゃんと確認したことがなかったので1度見てみようかなと 思いまして。 TCP Keep-Alive Keep-Aliveという言葉は、その言葉が適用される文脈で変わったりしますが、今回はTCPのKeep-Aliveを対象とします。 TCPのKeep-Aliveは、アクティブなTCPソケットに対して、通信相手がまだ健在か確認するためのものです(Keep-Alive)。 Keep-Aliveについては、RFCが存在します。 RFC 1122 - Requirements for Internet Hosts - Communication Layers Requirements for Internet Hosts -- Communication Layers TCP通信時にTCPソ

                                                                      LinuxのTCP Keep-Aliveを確認する - CLOVER🍀
                                                                    • 会社のテックブログに記事を書きました: ペパボ トラブルシュート伝 - TCP: out of memory -- consider tuning tcp_mem の dmesg から辿る 詳解 Linux net.ipv4.tcp_mem - hibomaの日記

                                                                      以下の記事です。 tech.pepabo.com TCP our of memory memory pressure モード net.ipv4.tcp_mem 以上の三つの詳細を扱ったエントリです。TCP で大規模なトラフィックを扱っているサーバを扱われている場合、問題がないかどうかを確かめてみるとよいかと思います。 本文長いです。何に気をつけたらいいんでしょう? プラクティカルな話だけをまとめると、以下の4行です。 memory pressure モードに入ってしまうと warning です TCP out of memory が出てしまうと critical です 監視は /proc/ 以下のファイルを見ましょう チューニングは net.ipv4.tcp_mem で行いましょう LVS はどうなの? LVS でロードバランシングしている場合は、TCP スタックを通らないため TCP o

                                                                        会社のテックブログに記事を書きました: ペパボ トラブルシュート伝 - TCP: out of memory -- consider tuning tcp_mem の dmesg から辿る 詳解 Linux net.ipv4.tcp_mem - hibomaの日記
                                                                      • Kubernetes クラスタ内の別ノード再起動によるTCP接続タイムアウト

                                                                        はじめに GKE クラスタを運用中に、WebSocket の接続が定期的に同時に 4000 近く送信タイムアウトが発生して切断される、という障害に遭遇しました。クライアントからみると WebSocket の再接続をすれば済むと思うかもしれませんが、この切断は TCP 経路中のネットワーク遮断によるものなので、これを通信の両端が検知するまでにはどうやっても時間がかかるため、その間の WebSocket 経由のメッセージのやり取りに支障が発生することは避けられません。また、WebSocket 接続の終了処理リクエストとその後の再接続に伴う確立処理リクエストのスパイクは予期せぬバックエンドの負荷につながります。 障害の原因は特定して コンテナ ネイティブの負荷分散に切り替えることで解消されました。このエントリーでは、障害の発生条件・原因・対応策を簡単にまとめます。GKE に限定して書きますがそれ

                                                                          Kubernetes クラスタ内の別ノード再起動によるTCP接続タイムアウト
                                                                        • Linux 6.8 Network Optimizations Can Boost TCP Performance For Many Concurrent Connections By ~40% - Phoronix

                                                                          Linux 6.8 Network Optimizations Can Boost TCP Performance For Many Concurrent Connections By ~40% Written by Michael Larabel in Linux Networking on 9 January 2024 at 02:23 PM EST. 76 Comments Beyond the usual new wired/wireless network hardware support and the other routine churn in the big Linux networking subsystem, the Linux 6.8 kernel is bringing some key improvements to the core networking co

                                                                            Linux 6.8 Network Optimizations Can Boost TCP Performance For Many Concurrent Connections By ~40% - Phoronix
                                                                          • LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 3編 | NHN Cloud Meetup

                                                                            連載 LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ- 1編 LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ- 2編 5. TIME_WAIT socket TIME_WAIT状態のソケットは、利用可能なlocal port数を軽減させて同時に保有できるクライアントソケットの数を制限します。 5.1 TIME_WAIT socketとは? TIME_WAIT状態のソケットは、いつ発生するでしょうか? まず、TCPソケットの状態フローを見てみましょう。 上図から分かるように、active closingするソケットの最後の終着地がTIME_WAITの状態です。 言い換えれば、クライアントソケットであれ、サーバーソケットであれ、close()システムコールを先に呼び出した側(active closing)が最終的にそうなり

                                                                              LinuxサーバーのTCPネットワークのパフォーマンスを決定するカーネルパラメータ – 3編 | NHN Cloud Meetup
                                                                            • mTCP TCP/IP applications for DOS PCs

                                                                              TCP/IP applications for your PC compatible retro-computers Current version: March 31st, 2023 2023-12-10: Good news everyone! mTCP NetDrive is available! mTCP NetDrive lets you connect to a remote drive image (floppy or hard disk) using a local drive letter. Add network attached storage to your machine nearly instantly! The device driver works on all versions of DOS starting with DOS 2.0 and requir

                                                                              • 基本から学ぶ TCPと輻輳制御 ……押さえておきたい輻輳制御アルゴリズム 記事一覧 | gihyo.jp

                                                                                運営元のロゴ Copyright © 2007-2023 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

                                                                                  基本から学ぶ TCPと輻輳制御 ……押さえておきたい輻輳制御アルゴリズム 記事一覧 | gihyo.jp
                                                                                • 新たにカーネルでTCPオプションヘッダに書き込んだ情報をTCPセッション確立時にユーザランドでどう取得すべきか - 人間とウェブの未来

                                                                                  追記:2020-06-05 このエントリの背景が雑だったので以下に補足記事を書きました。先にこちらに目を通していただいた方が良いかもしれません。 https://hb.matsumoto-r.jp/entry/2020/06/05/110709 speakerdeck.com 今tcprivというソフトウェアを開発しているのだが、細かい内容については上記のスライドを見てもらうとして、やりたいことは、TCPセッションを確立するプロセスのオーナ情報を接続先のプロセスで透過的に検証するという処理である。 github.com 以下ではその実装の概要を紹介しつつ、今検討していることについてお話したい。 接続元プロセスは一般ユーザを想定しており、脆弱性などによって悪意のあるユーザにのっとられることもありうるし、とあるプロセスが利用する認証情報も漏れることがあることを想定している。 しかし、情報が漏れ

                                                                                    新たにカーネルでTCPオプションヘッダに書き込んだ情報をTCPセッション確立時にユーザランドでどう取得すべきか - 人間とウェブの未来