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
SPDYが流行っていて,複数のTCPコネクションを1つにまとめて高速化を図るらしいということは知っていた. しかし,単にTCPのコネクション数を抑えるだけならHTTP 1.1のKeep Aliveやpipeliningを使えばよいし,既存技術のどこが問題でSPDYはどう解決しているのかを調べてみた. SPDYの人でもWeb標準の人でもなんでもないので,間違いが多分含まれています. 並列TCPコネクション 並列にTCPコネクションを張る状況として,Webの世界においては以下の2つを思いつく. ブラウザがあるページをロードして,そのページに複数の画像ファイルが含まれており,それらを同時に取得するために並列にTCPコネクションを張り,HTTPリクエストを投げる. JSで非同期に複数のHTTPリクエストを投げる.1個のリクエストを投げるときに1個のTCPコネクションを張る. 並列TCPコネクション
In my article detailing the command line utilities available for configuring and troubleshooting network properties on Windows and Linux, I mentioned some Linux tools that, while still included and functional in many Linux distributions, are actually considered deprecated and therefore should be phased out in favor of more modern replacements. Specifically, the deprecated Linux networking commands
ATI Stream テクノロジー/Nvidia CUDA/OpenCLを駆使し、WPA/WPA2-PSKを突破するために必要となる巨大なデータベースを事前に作成することによって極めて高速にパスワードを解析できるのがフリーのオープンソースソフト「Pyrit」です。厳密なライセンスはGNU GPL v3となっています。 pyrit - WPA/WPA2-PSK and a world of affordable many-core platforms - Google Project Hosting http://code.google.com/p/pyrit/ 事前に巨大なデータベースを作成しておくため、ハードディスクの容量は割と必要となりますが、それとトレードオフで解析速度を高速化しようというアプローチになっており、FreeBSD・MacOS X・Linux上で動作し、MinGWを使うこ
WEBコンテンツ配信にLinuxを使うのは一般的になりましたが、CentOSやUbuntuをはじめ、大抵のディストリビューションが低スペックなマシンでも動くような初期設定になっています。 トラフィックの上限でもない CPUリソースの枯渇でもない HDDのIOが遅い問題でもない コンテンツが重くなる(接続できない) というケースで、見落としがちなLinuxのネットワーク周りのチューニングについてです。 iptables関連 iptablesを使用している場合、下記のパラメータを注意して下さい。 /proc/sys/net/ipv4/ip_conntrack_max ip_conntrackに記録できる最大値です。65536あたりが初期設定になっているかと思います。これだとパケットの取りこぼしがすぐに起きてしまいます。1コネクションあたり約350バイト消費するので、実装されているメモリに応じて
この記事の続きになる訳だが、いくらSolaris最強って言っても、大手メーカーがこぞってつつき回して性能改善したり機能追加したりしてるはずのLinuxで何も対策が打たれてない訳が無いよね。じゃあどうなってるんだろう、って話。 例によって、Linuxとか全ッ然知らないので、間違ってたらツッコミ下さい。 ポーリングとパケット処理のパス 殆どここで解説し尽くされてる。 Linuxにも動的ポーリングの実装(Solarisで言ってる動的ポーリングと同じものとは限らないが…)があって、NAPIとか呼ばれてるらしい。 NAPIを実装するドライバでは、こんな手順で受信処理を行ってる。 ハードウェア割り込みを受け、割り込みハンドラを起動 ハードウェア割り込みを禁止、ポーリングをスケジュール ソフトウェア割り込み経由でNAPIのポーリングルーチンを起動 ドライバにポーリングを指示 この時、適切な性能を確保する
さて、「サーバー構築」、「セキュリティ」ときて、ついにTCP/IPの解説に入ります。ここでは、TCP/IPの基礎的な事に絞って解説を進めていきます。というのも、TCP/IPを解説しようとしたら、いくつでもサイトができてしまいそうなほど幅が広いので、サーバーを構築するにあたって知っておいた方が良いと管理人が判断した知識に絞って解説をしていきたいと思います。 ■TCP/IPとは TCP/IP(Transmission Control Protocol/Internet Protocol)は、現在、インターネットで最も広く利用されているプロトコルの1つです。プロトコルと聞くといかにも難しいように聞こえますが、決して難しいものではなく、多少なりともコンピュータを使用したことがある方なら誰でも、プロトコルであると意識することなく、様々なプロトコルに触れているのです。ブラウザを使用してネットサーフィン
単純化するため、NIC を 1つだけ持つマシンを例として図に示そう。グリーン系のオブジェクトはネットワークインターフェイスの類で、薄い緑のものは仮想、濃い緑は実在の NIC を表す。()内の IP は 例えば のアドレスだ。Dom0 枠内のものは、仮想であれ物理であれ、dom0 の持つオブジェクト。virbr0 はブリッジあるいはルータだと書いてきたが、dom0 の持つもうひとつのネットワークインターフェイスだとも言える (※A)。 図のゲストドメイン domU#1 は、ここまでの構築例で示した通り virbr0 ("default"ネットワーク) に参加している。そこで、domU#1 が 192.168.122.y へパケット (例えば ping) を送った時には、特にアドレス変換は行われず virbr0 まで直通だ。かたや、dom0 の実IPアドレス 172.18.10.1 へ宛てて送
図解求む。 以下「プロトコル処理」と「メッセージ処理」を分けて扱っているが、この差が顕著に出るのは全文検索エンジンや非同期ジョブサーバーなど、小さなメッセージで重い処理をするタイプ。ストリーム指向のプロトコルの場合は「プロトコル処理」を「ストリーム処理」に置き換えるといいかもしれない。 シングルスレッド・イベント駆動 コネクションN:スレッド1。epoll/kqueue/select を1つ使ってイベントループを作る。 マルチコアCPUでスケールしないので、サーバーでは今時このモデルは流行らない。 クライアントで非同期なメッセージングをやりたい場合はこのモデルを使える: サーバーにメッセージを送信 イベントハンドラを登録;このときイベントハンドラのポインタを取っておく イベントハンドラ->フラグ がONになるまでイベントループを回す イベントハンドラ->結果 を返す 1コネクション1スレッ
Webブラウジングでのクライアントのレスポンスを向上するプロキシソフト「dolipo」。使い方とともに、高速化の仕組みを解説する 少しでもネットワークを高速化したいヨーロッパ圏から学ぶ こんにちは、dolipoを開発したdrikinです。dolipoの着眼点は、ネットワークの技術的な側面だけでなく、Webアプリケーションの開発時に悩むネットワーク速度の問題に対しても、面白いアプローチになっています。 僕のこの技術との出合いは偶然でした。dolipoの元となったPolipoのプログラムを発見したときその効果に感動し、何とかこの素晴らしさをより簡単にもっと多くの人に伝えたいと思いdolipoを作りました。 日本では、光ファイバなどの高速回線の普及度が高く、サービスの品質も高いため、ネットワークサービスを開発する際にも、ネットワークのスピード自体はほとんど問題ではありません。いかにクライアントや
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く