网页从输入网址到渲染完成经历了哪些过程:

1. 输入网址

2. 发送到DNS服务器

  由DNS服务器来将域名解析成对应服务器的IP地址

3. 建立TCP连接

tcp三次握手连接, 建立起TCP/IP网络连接

4. 浏览器向服务器发送HTTP请求

  与服务器建立连接之后,就可以向服务器发送请求了,请求需要遵循http协议

5. 服务器响应HTTP请求

  被请求的服务器解析用户请求的有哪些资源,通过服务器返回数据给客户端

6. 浏览器渲染

  浏览器拿到请求页面的代码,将其解析渲染出来。解析和渲染的过程主要由浏览器的渲染引擎实现

 

 

TCP三次握手四次挥手

三次握手:

所谓的三次握手即TCP连接的建立。这个连接必须是一方主动打开,另一方被动打开的。(过程中都会携带:标记位为SYN、序号为Seq)

1. 首先客户端向服务器端发送一段TCP报文,请求建立新连接

2. 服务器端接收到来自客户端的TCP报文之后,返回一段TCP报文,告诉客户端,服务器收到了你的数据,并同意创建新连接

3.客户端接收到来自服务器端的确认收到数据的TCP报文之后,返回最后一段TCP报文,告诉服务器,我知道你收到我发的数据了

四次挥手:

所谓的四次挥手即TCP连接的释放(解除)。连接的释放必须是一方主动释放,另一方被动释放

1. 首先客户端想要释放连接,向服务器端发送一段TCP报文

2. 服务器端接收到从客户端发出的TCP报文之后,确认了客户端想要释放连接,并返回一段TCP报文

前"两次挥手"既让服务器端知道了客户端想要释放连接,也让客户端知道了服务器端了解了自己想要释放连接的请求。于是,可以确认关闭客户端到服务器端方向上的连接了

3. 服务器端做好了释放服务器端到客户端方向上的连接准备,再次向客户端发出一段TCP报文

4. 客户端收到从服务器端发出的TCP报文,确认了服务器端已做好释放连接的准备,并向服务器端发送一段报文