2013-01-01から1年間の記事一覧

Webを支えるプロトコル

Web

若者のプロトコル離れが叫ばれて久しいが、最近プロトコルは非常にホットな分野である。 目まぐるしく進化するWebに合わせ、プロトコルの世界も着実に進化している。 今までブラウザでは出来なかった事が出来るようになり、Webサービスをより安全に使えるよ…

HTTP2.0ミニハッカソンに参加してきました

12月15日、VOYAGE GROUP様の会議室で http2.0 ミニハッカソン #2が行われました。恐れ多くも参加してきましたが、端っこのほうでひっそりしていました。 議論は最新仕様についての知識共有と、実装方法の話がメインだったかと思います。 よくプロトコル実装…

HTTP2.0本をC74で出しますー

コミケ 3日目(8/12)の東ペ-01a「アトリエのどか」さんのスペースに、HTTP2.0本を置かせて頂くことになりました。30P程度の薄い本になります。 500円で頒布予定です。内容は、以下な感じになっています。 一応draft04に沿った内容になっておりまして、おおま…

HTTP/2.0 Header Compressionの個人的メモ

この文書は古くなっています。 HTTP/2のヘッダ圧縮の仕組みはHPACKとしてRFC 7541で標準化されました。下記説明と大分違うものです。 SPDY/3のコピーから始まったHTTP2.0だが、ヘッダの圧縮についても大きく変更が加えられた。 SPDYでは辞書付きのdeflate圧…

HTTP2.0 draft04が公開されました + その他

7月8日に5つめとなるHTTP2.0 draft 04が公開されました。 http://tools.ietf.org/html/draft-ietf-httpbis-http2-04 今までの非常にざっくりした流れはこのようになっています。 仕様の中でも触れられている通り、出すとしていたimplementation draftと呼ば…

Web+DB Press vol.75献本頂きました

恐れ多くも、Jxckさんが執筆された「SPDY/HTTP2.0 特集」をレビューさせて頂きました。 WEB+DB PRESS Vol.75作者: 栗林健太郎,柴田博志,はまちや2,常松伸哉,黒田良,川添貴生,安宅啓,松下雅和,桑野章弘,Jxck,伊藤直也,佐藤鉄平,登尾徳誠,中川勝樹,奥野幹也,近…

mod_pagespeedを用いたSPDYにおけるページ最適化

現在無料で読める「High Performance Browser Networking」(URL)の13章に「Optimizing for HTTP 2.0」という項があります。 そこでHTTP1.xにおけるWebページの最適化が逆効果になる事が述べられている。 例えば以下の様な最適化が挙げられる ドメイン・シャ…

HTTP2.0 draft03が公開されました + その他

HTTP2.0 draft03 5月29日にHTTP2.0のdraft03が公開されました。 4月3日に公開されたdraft02より何点か変更が加わっています。 HEADERSフレームのフラグに、「CONTINUES」を追加。情報が継続することを示す "セッション"を"コネクション"に変更(クッキーのよ…

「High Perfomance Browser Networking」の12章 HTTP2.0 を読んで

High Perfomance Browser Networking オライリーのサイトで、「High Perfomance Browser Networking」のEarly Release版が無料で読める(URL)。 ネットワークの観点で、Webのパフォーマンスについて書かれた本である。 その12章にHTTP2.0の話が書かれているの…

今週のSPDY/4の話。

この記事は古いです コチラを御覧ください:http://d.hatena.ne.jp/ASnoKaze/20140415/1397573422 最近、SPDYの方も結構活発なようです。 SPDY/4の仕様に関すること GoogleでSPDYの仕事をしているWilliam Chan氏が、spdy-devにSPDY/4に関する投稿をしていま…

ChromeでSPDY/4の試験実装が始まった

Chromeの開発版でSPDY/4の試験実装が始まった。 SPDY/4を有効にする 実際「chrome://flags/」より機能を有効にできる。 機能を有効にし、googleにアクセスすると実際にspdy/4a1で通信していることが確認できる。 SPDY/4の変更内容と今後...? しかし、変更点(…

HTTP2.0 draft02が公開された

4月3日にHTTP2.0のdraft02が公開された(URL)draft01より多くの変更点が加えられており、前回の記事「HTTP2.0のdraft01からの変更点について」に加え以下の変更が行われた PUSH_PROMISEフレームの変更 「IANA Considerations」の項目の追加 フレームヘッダの…

HTTP2.0のdraft01からの変更点について

HTTP2.0の仕様は現在githubで編集されており,誰でも最新版を閲覧できる。(URL) SPDY draft03のコピーから開始されたHTTP2.0の策定だが、最新版ではHTTP2.0 draft01(URL)より何点か変更されている。(現在の最新版"March 29, 2013"で説明します。) 全てを追い…

openssl s_clientとs_serverでNPNを指定する方法

alpnはこちら「openssl s_clientとs_serverでalpnを指定する方法」 OpenSSL 1.0.1からNPNに対応している。openssl s_clientやs_serverでもハンドシェイク時のネゴシエーションが指定できる。 ネゴシエーション時の簡単な挙動を確認したいときは手軽である。 …

chromeに実装されたSPDY/3.1について

Chrome Canary BuildでSPDY/3.1が実装された。 SPDY/3.1を試してみる Chromeの起動オプションで「--enable-spdy31」を指定することで、SPDY/3.1が有効になる。 openssl s_serverでNPNにspdy/3.1を設定して通信すると、ちゃんとSPDY/3.1で通信してることが、c…

chromeのAlternate Protocol Mappingsを編集・削除する

chromeはAlternate-Protocolヘッダを受け取り、記憶してアクセスする際にそのプロトコルを使用する。 現在記憶しているAlternate Protocol一覧はアドレスバーに「chrome://net-internals/#spdy」入力することで確認できる。 このAlternate Protocol Mappings…

HTTP2.0におけるヘッダ圧縮 Binary Optimized Header Encoding

この記事は古いです。 HTTP2は、HPACKというヘッダ圧縮方式が採用されています。(2016/06/24) HTTP2.0におけるヘッダ圧縮 HTTP2.0の大きなテーマとしてヘッダ圧縮が挙げられる。HTTP1のヘッダには非効率な点が二つる 同一のヘッダを何回も送信する(User-Age…

DNSを用いたHTTP2.0対応の確認方法、SRVレコードとSVCINFOレコード

20180201追記 asnokaze.hatenablog.com HTTP2.0では通信を開始する前に、HTTP1.1で通信するかHTTP2.0で通信するかネゴシエーションする必要がある。DNSレコードを利用してサーバがHTTP2.0に対応しているか確認する方法が提案されている。 SRVレコード SRVレ…

TLS上でのプロトコルネゴシエーションの仕組み、NPNとALPN

(この記事は古いため、HTTP2.0と表記していますが、正しくはHTTP/2です) (HTTP ConnectメソッドのALPNヘッダは「ALPN HTTP Headerとは」) TLS-NPN(Next Protocol Negotiation) SPDYはHTTPSと同一ポートで接続を受け付けるため、SPDYの通信を開始する前にどち…

HTTPBis WGのTokyo interim meetingの議事録

1/30日から2/1まで行われたHTTPbis WGのミーティングにてHTTP2.0について議論された。 ミーティングの議事録については https://github.com/http2/tmp_minutes/blob/master/interim.md にて公開されている。主なテーマとしては以下のものがある Upgrade Head…

HTTP2.0のdraft01について

2012年 11/28 にSPDY draft#3をコピーすることで始まったHTTP2.0の仕様であるが、draft01で ちゃんとHTTP2.0の仕様らしくなった。Hypertext Transfer Protocol version 2.0 http://tools.ietf.org/html/draft-ietf-httpbis-http2-01draft00との差分は タイト…

HTTP/2.0仕様策定に向けて議論されるテーマ

SPDYの仕様をコピーすることから始まったHTTP2.0だが、いくつかの点で議論が行われている。1/30〜2/1にかけて行われるミーティングで議論されるのだろうが、それに合わせてアジェンダが公開された(URL)。そこには以下の5つが書かれている Upgrade Header Co…

HTTP2.0におけるネゴシエーションの仕組み

HTTP1.0とHTTP1.1は同じメッセージ形式をしていたので問題なかったが、HTTP2.0とHTTP1.xではメッセージの形式が異なるため通信を行えない。 そのため、どちらで通信するかネゴシエーションする必要がある。httpbis wgでは幾つかの方法が提案されている DNSの…

HTTP2.0の情報源サイト

HTTP2.0の仕様策定が行われている段階であるが、個人でその情報を得るためにはどこら辺のサイトを見ていればいいか... 個人的に追っかけてるサイト一覧。 httpbis wgのサイト http://tools.ietf.org/wg/httpbis/ 仕様策定を行なっているhttpbis wgのサイト。…