RFC7540 #310
RFC7540
RFC 7540 - Hypertext Transfer Protocol Version 2 (HTTP/2)
というわけでHTTP/2の仕様です。これを読み始めました。(研究の関連で)
英語のお勉強もしなきゃならないのは山々なのですが、今回は以下の日本語訳に頼りました。翻訳者の方に感謝…。
まだ冒頭のHTTP/2の開始の部分を読み終えたくらいの進捗度合いなのですが、とっても面白い仕様を見つけてニヤニヤしてました。
HTTP/2のコネクションを確立するタイミングでHTTP/2コネクションプリフェイスというものをサーバーとクライアントが双方に送信する必要があって、その際に送信されるのが
PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n
という文字列なのですが、なんでこんな変な文字列が送信されるのか調べたところ、以下の記事に当たりました。
なるほど、HTTP/2に対応していないクライアントに送信されたときに素早くコネクションを切るために考えられた文字列、ということらしいです。
よく考えられてるなぁと感心しました。
このような工夫を盛り込んで互換性を保っているのだなぁ。
雑談
今の所HTTPはずっと互換性を保ってバージョンアップを繰り返しているらしいのですが、これをいつか切るというタイミングが来たりするんでしょうかね?