タグ

networkに関するono_matopeのブックマーク (32)

  • C10K問題の今と未来 - geniee’s tech blog

    唐突ですが、一回目の記事を書きます! 今回は、主にウェブサーバー、具体的にはLinuxのSO_REUSEPORT(プログラミング言語としてはC言語)の話題になります。背景として、弊社では、広告配信がいわゆるネイティブアプリケーションであるため、ウェブサーバーの開発を行っているといったことが挙げられます。そもそも今回の記事を書いたきっかけは、弊社でSO_REUSEPORTを使用し始めており、それについて紹介したいと考えたからです。 特にC10K問題については TheC10kProblem - 「C10K問題」(クライアント1万台問題)とは、ハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする問題のこと が詳しいので今回は説明を省略します。 また、Linux(正確にはKernel 3.9以降)におけるSO_REUSEPORTについては、 或るプログラマ

    C10K問題の今と未来 - geniee’s tech blog
    ono_matope
    ono_matope 2015/01/07
    GoのHTTPサーバは図2の形だけど、今後は図4の形になってくのかな
  • mTCP - Scalable User-level TCP Stack

    What is mTCP? mTCP is a high-performance user-level TCP stack for multicore systems. Scaling the performance of short TCP connections is fundamentally challenging due to inefficiencies in the kernel. mTCP addresses these inefficiencies from the ground up - from packet I/O and TCP connection management all the way to the application interface. Besides adopting well-known techniques, our mTCP stack

  • Ethernetの受信処理

    Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)NTT DATA Technology & Innovation

    Ethernetの受信処理
  • TCP Fast Open – Webを速くするためにGoogleがやっていること Make the Web Faster 4 –

    TCP Fast Open – Webを速くするためにGoogleがやっていること Make the Web Faster 4 – Jxck HTTPは、その下層にあたるトランスポートレイヤーのプロトコルとして、通常TCPを使用します。 したがって、TCPのレイヤで速度が改善することは、そのままWebの高速化につながる可能性があるといえます。 GoogleはWebを速くするための活動として、TCPのようなプロトコルレイヤの改善にも取り組んでいます。 今回はその中の一つ、TCP Fast Openを取り上げ、解説と動作検証、簡単なベンチマークを行います。 検証環境等は最下部に記載します. Make the Web Faster: TCP Fast Open 3 Way Handshake TCPは、「正確、確実にデータを届ける」ことを重視した設計になっています。 特に接続確立時には、双方の状

    TCP Fast Open – Webを速くするためにGoogleがやっていること Make the Web Faster 4 –
  • TCP高速化プロキシ「AccelTCP」を公開しました : DSAS開発者の部屋

    昨年末からずっとこんなことをしてまして、この時期になってようやく今年初のブログ記事です。 進捗的なアレがアレでごめんなさい。そろそろ3年目に突入の @pandax381です。 RTT > 100ms との戦い 経緯はこのへんとか見ていただけるとわかりますが「日海外の間を結ぶ長距離ネットワーク(いわゆるLong Fat pipe Network)において、通信時間を削減するにはどうしたらいいか?」ということを、昨年末くらいからずっとアレコレやっていました。 送信したパケットが相手に到達するまでの時間(伝送遅延)を削減するのは、光ファイバーの効率の研究とかしないと物理的に無理なので、ここで言う通信時間とは「TCP通信」における一連の通信を完了するまでの時間です。 伝送遅延については、日国内のホスト同士であれば、RTT(往復遅延時間)はだいたい10〜30ms程度ですが、日・北米間だと10

    TCP高速化プロキシ「AccelTCP」を公開しました : DSAS開発者の部屋
  • ファイルをTCPの30倍で転送――独自プロトコルによる高速通信「クラウド コネクト」

    TCPと比較して約20~30倍の速度でグローバル間ファイル転送を行えるという高速通信サービス「クラウド コネクト」をデータホテルが開始。「Winny」開発者の金子勇氏が設立したSkeedが共同開発した。 NHN Japan子会社のデータホテルとSkeedは6月12日、グローバル間のデータ転送を高速化させるクラウドサービス「データホテル クラウド コネクト」を発表した。Skeedが独自開発した通信プロトコル「Skeed Silver Bullet Protocol」(SSBP)の採用で、標準プロトコルのTCPと比較して約20~30倍の速度でグローバル間ファイル転送を行えるという。同日からβ提供を開始し、今夏に正式サービスとしてリリースする予定。 データホテル クラウド コネクトは、米国、ブラジル、アイルランド、韓国、オーストラリア、日の6カ国10カ所に設置されたデータホテルの通信拠点を仮想

    ファイルをTCPの30倍で転送――独自プロトコルによる高速通信「クラウド コネクト」
  • AVATAR製作時、その超巨大データはどのように大陸間転送されたか? - Wataru's blog

    3D映画として現在大ヒットを飛ばしているAVATAR。私の周りでも凄く話題になっていて、IMAXを持つ映画館に近いうちに見に行きたいと思っています。 日は、AVATAR製作時に使われたITシステムの話を、ご紹介したいと思います。 34ラックという、驚きの超巨大システム AVATARのデータ総容量は、何と、3PB(ペタバイト)!もの大きさだったそうです。毎週、ときには日ごとに数TB(テラバイト)ものデータが出来る上に、それらを色々なフォーマットで保存しなければならないためだそうです。 これだけのデータを処理するために、ITシステムのラック総数は何と34、そして各ラックには32台のサーバが搭載され、プロセッサ総数は40,000、メモリ合計は104TBに達したそうです。しかも、全てのサーバが10GbEで接続されていたとのこと。 とてつもなく巨大なシステムですね。ここまで来ると小規模なスパコン

    AVATAR製作時、その超巨大データはどのように大陸間転送されたか? - Wataru's blog
  • TCP/IP環境に革新もたらすZeroConfネットワーク「Bonjour」~概要と仕組等~

    INDEX(Topページ) | News & Topics | Glossary | Column List | GuestBook | Link & Profile 第13回 TCP/IP環境に革新もたらすZeroConfネットワーク「Bonjour」~概要と仕組等~ 「Mac OS X 10.2 Jaguar」リリース時における目玉機能の一つとして多大な期待を集めながら、現時点でもそのメリットが見えづらい存在となっているZeroConfネットワーク「Bonjour」(リリース当初は「Rendezvous(ランデブー)」と称されていたが、商標上の問題にて「Mac OS X 10.4 Tiger」より名称変更)について、その概要や基的な仕組等を紹介したいと思います。 ●ZeroConfをベースとして設定不要なネットワーク構築を実現 今回紹介しているインスタントネットワーキングテクノロジ「

    ono_matope
    ono_matope 2011/11/21
    わかりやすい
  • DNSラウンドロビン - Wikipedia

    DNSラウンドロビン (DNS round robin)とは、一つのドメイン名に複数のIPアドレスを割り当てる負荷分散技術の一つである。 概要[編集] トラフィック負荷を複数のIPアドレスに振り分けることにより、例えばHTTPサーバに対するアクセスをほぼ同量ずつ複数のサーバマシンに分配することができる。これはBIND等DNSサーバのゾーン設定により容易に実現できる負荷分散方式である。 アクセス数に応じた負荷分散のほか、通信量、サーバの負荷(CPUやメモリの使用率)、応答時間で負荷分散をすることができる。 後述するような問題点があることに加え、主にIPv6における宛先アドレス選択アルゴリズムとして定義された「RFC3484」では、DNSが同一サーバ名に対し複数のIPアドレスを持つ場合に「自分のアドレスに近いアドレスを優先的に選択する」ことを定めており[1]、Windows Vistaなどマイ

    ono_matope
    ono_matope 2010/12/10
    IPv6のRFC3484が「自分のアドレスに近いアドレスを優先的に選択する」と定めているので最近のWinやLinuxは複数IPを受け取ってもソートしてしまってDNSランドロビンできない、/etc/gae.confで調整出来る、へぇ〜。
  • yebo blog: ソフトウェア・ルータで40Gbpsを達成

    2010/08/24 ソフトウェア・ルータで40Gbpsを達成 Gizmodoによると、韓国の研究者Sue Moon氏らがソフトウェアベースのルータで40Gbpsでデータを転送する事に成功したそうだ[technology review]。彼女の学生らが、GPUを利用してパケット転送を処理するPacketShader [pdf]と呼ばれるソフトウェアを開発したとの事だ。PacketShaderに詳しい Intel LabsのエンジニアGianluca Iannaccone氏は、RouteBricksとクラスタベースのスケーラブルなルータを研究しているが、将来は専用ルータを必要としなくなるかもと語っている。専用ルータに負けない処理速度が得られるようになれば、新しいプロトコルの実験やユニークなルータを構築する事ができるかも知れない。 投稿者 zubora 投稿時間 05:20 ラベル: Rout

    ono_matope
    ono_matope 2010/08/24
    PacketShader。。。サーバーにnVidiaの高級グラボ積む時代が来るのか。
  • Wireless access point - Wikipedia, the free encyclopedia

    This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Wireless access point" – news · newspapers · books · scholar · JSTOR (August 2019) (Learn how and when to remove this template message) Cisco Aironet wireless access point [1][2] In computer networking,

    Wireless access point - Wikipedia, the free encyclopedia
  • 第7章リモートアクセスとVPN----7.8 SOCKS

    SOCKS(RFC1928)は、ソケットプログラムを利用しアプリケーションプロトコルに依存せずに、トランスポート層上でアクセス制御を行うためのセキュリティプロトコルです。SOCKSサーバーにコネクションリクエストを渡すと、SOCKSサーバーはクライアントを認証してからコネクションを確立します。 当初SOCKSは、UDPアプリケーションをサポートしていませんでしたが、バージョン5になり、UDPベースのアプリケーションをサポートするようになりました。 SOCKSは「Sockd」というプログラムを介して、プロキシサーバーとクライアントの通信を行う仕組みになっています。この図で説明するとSockdにFTPやtelnetをカプセル化して通信を行おうとするクライアントAは内部ネットワークの資源を利用できますが、直接telnetを使って通信を試みるクライアントBはプロキシーサーバーによって通信を拒否され

    第7章リモートアクセスとVPN----7.8 SOCKS
  • [CentOS]ネットワークカード(NIC)に複数のIPアドレスを付与する

    メインのIPアドレス(192.168.0.150)の情報は以下の様になっています。 ファイル名: /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=static BROADCAST=192.168.0.255 IPADDR=192.168.0.150 NETMASK=255.255.255.0 NETWORK=192.168.0.0 ONBOOT=yes

  • TCPで通信するクライアントをデバッグするとき - suztomoのはてなダイアリー

    特定の内容のレスポンスをサーバからもらうようなクライアントをデバッグするときに使えるコマンド. while true; do (cat data.bin | nc -l 8080); doneMacのzshで動作を確認.MacLinuxnetcat(nc)コマンドの引数が違うのでご注意.

    TCPで通信するクライアントをデバッグするとき - suztomoのはてなダイアリー
  • 特集 : ブロードバンド・ルータ徹底攻略ガイド(4/7) - @IT

    特集 ブロードバンド・ルータ徹底攻略ガイド 3.IPアドレス/ポート変換機能 --IPマスカレード/NAT-- デジタルアドバンテージ 島田広道 2001/06/28 インターネット接続に利用されるブロードバンド・ルータにとって基かつ必須といえるのが、IPマスカレードあるいはNAT(正確にはNAPT)と呼ばれる機能だ。IPマスカレードとは、2つのネットワーク間(WAN/LAN)でIPアドレスやTCP/UDPのポート番号を変換して、限られたIPアドレス資源を有効に使うための技術である(詳細はICD:IPマスカレードとNATを参照していただきたい)。この機能の呼び方はメーカーによって異なり、「ENAT(拡張NAT)」、「アドバンストNAT」、「SUA(Single User Account)」などとも呼ばれているが、基の動作原理はどれも同じである。 この図では、LAN側にプライベートIPア

  • 3 Minutes Networking

    インター博士(通称:博士) 某所の某大学にて、情報処理技術を教える博士。専門はネットワーク。 たった一人しかいないゼミ生であるネット君をこきつかう。 わかりやすい授業を行うが、毒舌家で、黒板に大量に書く授業をするため、評判が悪い。 ネット助手(通称:ネット君) インター博士のただ1人のゼミ生。ネットワークについては全くの素人。 インター博士のゼミに入ったのは、評判の悪い博士から知識を奪い取り、いずれ取って代わろうという策略から。 なんていうか、いじめられっ子。

  • Kozupon.com - ハブの構造と動作!

    現在のEthernetの主流は、1000BASE-Tや100BASE-TXだ。しかし、ここでは少し昔の10BASE-Tや100BASE-TXについて話してみたい。なぜなら、筆者個人が未だに10BASE-Tや100BASE-TXを使っているからである。Ethernetの規格は、リピータハブ(共有ハブ)やスイッチングハブを使った星型、スター型のネットワーク構成でPCはハブが備えているPortと一対一で接続される。リピータハブとスイッチングハブとでは、Ethernetの動作が違う。ここでは、リピータハブとスイッチングハブ の動作の違いについて説明する。 1.リピータハブ(共有ハブ) このハブは、またの名を「馬鹿ハブ」とも言われている。名前のように決して馬鹿ではないが、ネットワークを共有するためのタダの中継器である。構造が比較的簡単で値段も安い。PCから信号を受け取り、その信号を自分(送信元)

  • スイッチングハブ - wiki@nothing

    Last-modified: 2019-05-22 (水) 16:38:35 / Short URL: http://wiki.nothing.sh/299.html / - users /

  • はやいTCPサーバの書き方 - nyaxtのPC作業ログ

    cagra高速化にあたってのノウハウを一部公開してみます。また明日校正/更新します。つっこみ待ちです。 select(2)の代わりにepoll_wait(2), kqueue, /dev/epoll等を使う 他に山ほど解説ページがあるので略 大量のディスクリプタを処理するようなサーバの場合、多少効果があるかもしれません。しかし、クライアント数が少ない場合、劇的な性能の向上は見込めないとおもいます。クライアント数が多い場合は、1セッション1スレッドなモデルではOS側のタスクスイッチングのオーバーヘッドが効いてくることも多いです。クライアント数を増やすには複数のセッションを1スレッドで処理できるようにすると良いです。実装にあたっては、non-blocking ioを活用すると効果的です。 TCP_NODELAYを設定する Nagleアルゴリズムをオフにします。多少応答性が良くなります。 これっ

    はやいTCPサーバの書き方 - nyaxtのPC作業ログ
  • Geekなぺーじ : Mac OS Xネットワークプログラミング

    Mac OS Xでのネットワークプログラミングを勉強しながら、少しずつ公開していくコーナー。 コードを書く前の準備 まず、gccを使える状態にしないといけません。 Mac OS Xを普通にインストールしただけでは開発環境は入りません。 Xcodeを含むMac OS X開発環境はOS DVDなどに入っています。 次に、エディタが必要になります。 標準開発環境であるXcodeを利用して書くことができます。 一方で、UNIXやLinuxなどで一般的なエディタであるmule、emacs、xemacsなどを利用することも可能です。 個人的にはviが好きです。 Cocoa ファイル単体をそのままコピペしてgccでコンパイルできるCUIとして書いているので多少特殊な書き方をしている気がします。 GUIを使う場合はNSRunLoopではなく、NSApplicationMainを使ったりするのでご注意下さい

    ono_matope
    ono_matope 2008/11/13
    時間を見て必修したい。