赞
踩
URL输入
建立TCP连接
当浏览器获取到服务器的ip地址后,浏览器会用一个随机的端口号向服务器80端口发起tcp链接,请求。
三次握手(三次握手的机制是为了保证能建立一个安全可靠的连接)
1.客户端发送syn数据包向服务端发起请求链接
2.当服务端收到这个报文之后就知道客户端要和我建立一个新的连接,于是服务端就向客户端发送syn和ack确认消息包,并发起对客服端端连接请求
以上两次握手之后,对于客户端而言:已经明确了我既能给服务端成功发消息,也能成功收到服务端的响应。但是对于服务端而言:两次握手是不够的,因为到目前为止,服务端只知道一件事,客户端发给我的消息我能收到,但是我响应给客户端的消息,客户端能不能收到我是不知道的。所以,还需要进行第三次握手
3.客户端收到服务端发送的ack确认响应报文之后,还要给服务端进行回应,此时才能百分百确认建立连接
通过三次握手,保证客户端知道两方面都可以进行,服务端也知道两方面都可以进行(双工)
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步 序列编号(Synchronize Sequence Numbers)。 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK 包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进 入ESTABLISHED(TCP连接成功)状态,完成三次握手。
发送HTTP/HTTPS请求
服务器处理相关请求,并返回响应请求
浏览器解析渲染页面
HTTP请求结束,断开TCP连接
四次挥手
四次挥手机制也是由客户端首先发起的,客户端会发送一个报文。当服务端收到这个报文之后,就知道了客户端想要和我断开连接。但是此时服务端不一定能做好准备,因为客户端发起断开连接的消息的时候,对于服务端而言,它极可能有未发送完的消息,它还要继续发送。所以此时对于服务端只能进行一个消息确认,就是告诉客户端我知道你要跟我断开连接了,但是我还没有做好准备,你需要等我一会。稍过片刻,服务端会继续发送一个断开连接的报文。这个报文表示服务端已经做好了要断开连接的准备。客户端收到后继续发送一个消息确认的报文。通过以上四次握手,不管是客户端还是服务端,都已经做好了要断开连接的准备,连接就可以被断开了。
因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来应答的,SYN报文 是用来同步的。但是关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭SOCKET,所以只能先回复一个ACK 报文,告诉Client端,“你发的FIN报文我收到了”。只有等到我Server端所有的报文都发送完了,我才能发送FIN报文, 因此不能一起发送。
b站相关优秀老师详解视频
蛋蛋老师详解浏览器输入一个地址到请求返回,经历的过程
小邱老师详解浏览器输入一个地址到请求返回,经历的过程
HTTP协议是超文本传输协议,是一个基于请求响应,无状态的,作用于tcp/ip应用层的协议之上的协议,它规定了浏览器与服务端之间数据交互的格式设计,HTTP的初衷是为了提供一种发布和接收HTML页面的方法。绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。从WEB服务器传输超文本标记语言(HTML)到本地浏览器的传送协议。以明文的方式传输内容,数据都是未加密的,安全性较差,端口80。
https协议是ssl+http协议构建的加密传输协议, 是一种通过计算机网络进行安全通信的传输协议,数据传输过程是加密的,安全性较好。HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。端口443
HTTP特点:
(1)无状态:协议对客户端没有状态存储,对事物处理没有“记忆”能力,比如访问一个网站需要反复进行登录操作
(2)无连接:HTTP/1.1之前,由于无状态特点,每次请求需要通过TCP三次握手四次挥手,和服务器重新建立连接。比如某个客户机在短时间多次请求同一个资源,服务器并不能区别是否已经响应过用户的请求,所以每次需要重新响应请求,需要耗费不必要的时间和流量。
(3)基于请求和响应:基本的特性,由客户端发起请求,服务端响应
(4)简单快速、灵活
(5)通信使用明文、请求和响应不会对通信方进行确认、无法保护数据的完整性
HTTPS特点:
(1)基于HTTP协议,通过SSL或TLS提供加密处理数据、验证对方身份以及数据完整性保护
(2)内容加密:采用混合加密技术,中间者无法直接查看明文内容
(3)验证身份:通过证书认证客户端访问的是自己的服务器
(4)保护数据完整性:防止传输的内容被中间人冒充或者篡改
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。