我正在学习HTTP/2。我知道有RFC7540这个规范,它是HTTP/2的规范。但是我被实现页面上显示的“协议ID”一词所困惑。有h2、h2c、h2-14、h2-15、h2-16、h2-17、h2c-17(不确定是否列出了全部)。 这些协议ID是什么?它们与RFC7540之间的关系是什么? 如果某个HTTP/2服务器实现声称支持某个协议ID,这意味着什么?
RFC7540于2015年5月发布。它描述了h2和h2c。在发布之前,共有17个草案版本: 2015年2月11日 - 草案17 2014年11月29日 - 草案16 2014年10月27日 - 草案15 2014年7月30日 - 草案14 ... 一些Web服务器从某个草案版本开始支持HTTP2。一些Web服务器仍然支持协议的初步版本,并同时支持最终版本。名称h2-17、h2c-17、h2-16、h2c-16等用于指定对应草案规范中的h2或h2c。