在通信过程中, 只会有一个TCP连接存在, 承载了任意数量的全双工数据流. 一个数据流都一个唯一标识符和可选的优先级. HTTP/2.x将一个请求或者回应分成了两个帧, HEADERS帧和DATA帧, 这组成了一个完整的消息. 帧是最小的通信单位, 来自不同数据流的帧可以交错发送, 然后再根据每个帧头的数据流标识符重新组装.
在HTTP/2.0中, 客户端请求一个资源, 服务端会把相关的资源也一起发给客户端. 这样客户端就不需要再次发起请求了. 例如客户端请求page.html页面, 服务端就会把script.js和style.css等与之相关的资源也一起发回来.
HTTP/2.0要求客户端和服务端维护首部字段表, 只需要渐进式更新表中内容, 免去了每次都要发送重复信息. 同时HTTP/2.0通过霍夫曼编码对首部字段进行了压缩.