HTTP1.0和HTTP1.1区别

1.(1)HTTP1.0规定浏览器与服务器只保持短暂的连接,浏览器的每次请求都需要与服务器建立一次TCP连接,服务器完成请求处理后立即断开TCP连接,服务器             不跟踪每个客户,也不去记录过去的请求

           HTTP1.0建立会话:

                      1.建立连接

                      2.发出请求信息

                      3.回送响应信息

                      4.关掉连接

1.(2)①HTTP1.1则支持持久连接请求流水线处理,并且默认使用persistent connection(持续连接).

        ②在同一个TCP连接中可以传递多个HTTP请求和响应,多个请求和响应可以重叠,对个请求和响应可以同时进行,

        ③更多加了请求头和响应头(比如HTTP1.0没有的host字段),HTTP1.1还提供了身份验证,状态管理和Cache缓存等机制的请求                头和响应头

         ④HTTP1.1还允许客户端不用等待上一次请求返回的就可以发出下一次请求,但是服务器必须的给出响应结果

                 HTTP1.1的持续连接,也需要增加新的请求头来帮助实现,connection请求的值为keep-Alive,客户端与服务器保持连接

                                                                                                        connection请求值为close,客户端通知服务器返回本次响应信息                                                                                                           后关闭连接

           请求流水线处理:在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟

                                      例如:一个包含许多图像的网页可以在一个连接中传输,但是不同的网页需要建立不同的连接

          HTTP1.1中的host字段:在HTTP1.0中认为每台服务器都绑定一个唯一的IP地址,因此,请求消息中的URL并没有传递主机名                                                  hostname.但是随着虚拟主机技术的发展,在一台物理服务器上可以存在多个虚拟主机,并且他们共                                                  享一个IP地址

                                                  HTTP1.1的请求消息和响应消息都支持Host头域,并且请求消息中如果没有HOST头域会报告一个                                                    错误(404 Bad Request).此外,服务器应该接受以绝对路径标记的资源请求

        HTTP1.1的100:HTTP1.1加入了新的状态码100(continue).客户端事先发送一个只带头域的请求,如果服务器因为权限拒绝                                      了请求,就回送401响应码,如果服务器接受此请求就回送100响应码,客户端就可以开旭发送带实体的完整请                                       求了.

                                    100状态码的使用,允许客户端在发request消息body之前先用request header试探server,看server要不                                         要接受request body,再决定要不要发送request body

        HTTP1.1分块传输编码:发送方将消息分割成若干个任意大小的数据块,每个数据块在发送时都会附上块的长度,最后用一个0                                            长度的块作为消息结束的标志.这种方法允许发送方只缓存消息的一个片段,避免缓冲整个消息带来过载

        HTTP1.1的cache新特性:当缓存对象的AGe超过到期时间变成陈旧对象,cache不需要抛弃陈旧对象,而是与源服务器进行重                                                  新激活

你可能感兴趣的:(计算机网络)