首先
http叫做超文本传输协议,用来将超文本标记语言html文档从web服务端传给另一边浏览器的客户端。因功能需求http会不断升级变化
1.0:用户每次对浏览器有请求都要与服务器端建立一次TCP连接。就是用户每次操作一下,就是一次建立连接。
服务器端不能跟踪每个客户端,操作结束,服务器也没有任何用户请求的记录
1.0和1.1区别:(1.0的)connection:close,(1.1)connection:keep-alive(长连接)
之后为啥会有1.1呢?
就是1.1有了长连接这个功能。如果还像1.0那样如果用户每隔一会就浏览或是操作一次html页面,1.0就每下操作都要重新建立和释放连接,就造成建立和释放连接的开销。因此要让其交互时保持长连接状态。客户端请求是有先后顺序的,服务器必须按照客户端请求的先后顺序,依次回送相应的结果。1.1中有一个叫做content-length的字段,它的功能用来判断当前请求的数据是否全部接收。 再强调一下,服务器不能同一时刻并行响应。
2.0:
多了数据流和数据帧的概念
数据帧对发送数据顺序标识。
数据流让服务器能够并行传输数据,通过标识的数据最后在终端按序合并。这些都是在一个TCP连接上完成的。