我有一个使用 Berkeley 套接字用 C++ 编写的 Web HTTP/1.1 服务器实现。我正在考虑实现对 HTTP/2.0(或 SPDY)的支持,它允许请求和响应多路复用:
HTTP/2.0 中的二进制帧层支持完整的请求和响应多路复用,允许客户端和服务器将 HTTP 消息分解为独立的帧,交错它们,然后在另一端重新组合它们。
我的问题如下;如何启用 HTTP/2.0(或 SPDY)类型的请求和响应多路复用与使用 Berkeley Socket API 编写的现有 HTTP/1.1 程序?也许前面提到的 HTTP/2.0(或 SPDY)支持的帧复用已经被 TCP/IP 堆栈中的现有机制处理了,或者?
澄清:
我对使用单个连接并行传递多个请求和响应的多路复用部分特别感兴趣,我从规范中不明白这是如何在应用程序级协议中实现的?有任何想法吗?