从大致上来讲经历了
客户端获取URL - > DNS把域名解析成IP地址 - > TCP连接 - >发送HTTP请求 - >服务器处理请求 - >返回报文 - >浏览器解析渲染页面 - > TCP断开连接
客户端:
1.客户端获取URL
2.然后通过DNS把域名解析成IP地址,再根据HTT协议生成HTTP请求报文(应用层),
3.传输层根据TCP协议建立客户端和服务端的连接,并且TCP协议再把请求报文按序号分割成多个报文段。
4.网络层把传输层的每一个数据段增加 源IP地址和目标IP地址得到数据包,并根据IP协议(传输数据),ARP协议(获取MAC地址),OSPF协议(选择最优路径),搜索服务器地址,一边中转一边传输数据。
5.数据链路层把每个数据包加上MAC地址变成数据帧;
6.物理层把数据帧变成数字信号(bit流)。
服务端:
1.服务端收到bit流后,数据链路层发现MAC地址是自己的,去掉MAC地址给它的网络层,网络层去掉它的IP地址给出传输层,传输层把数据给应用层,应用层把各个数据拼接起来。最后处理这段请求,返回报文。
按照相同的通信过程,客户端接收报文,在浏览器解析渲染页面,通信结束后TCP通过四次挥手断开连接。