浏览器的一个请求从发送到返回经历了什么

client与server通过http协议传输数据。


浏览器的一个请求从发送到返回经历了什么

http(Hyper Text Transfer Protocol)协议是无状态协议,基于tcp协议,属于应用层协议。

DNS(Domain Name System 域名系统)主要的功能就是将不容易记住的“IP Address”(IP地址)转换成易于记忆的“DomainName”(域名)。

SSL(Secure Socket Layer 安全套接字协议)/TSL是保护计算机网络通讯安全的加密协议。在传输层上给非安全的应用层协议提供加密保护,例如把http协议保护成https协议。

tcp(Transmission Control Protocol 传输控制协议)属于传输层协议。

OSPF(Open Shortest Path First 优先开放最短路径)是基于链路状态的自治系统内部路由协议,进行路由转发。

ARP(Address Resolution Protocol 地址解析协议)属于网络层协议,工作内容在链路层,ARP解决的是同一个局域网上的主机或者路由器的IP地址和硬件地址的映射问题。如果要找的主机和源主机不在一个局域网,则要通过ARP协议找到一个位于本局域网上的某个路由器的硬件地址。然后把该分组发送给这个路由器。这个路由器再把分组转发给下一个网络。

RARP(Reverse Address Resolution Protocol 反向地址转换协议)负责将局域网中主机的物理地址转换为ip地址。

浏览器发出请求,①进行数据封包。②数据链路层arp解析ip与mac地址映射。③OSPF路由转发。④DNS获取目标IP。⑤http数据交换。⑥servlet服务端doPost(),getGet()请求接收转发;或者springmvc中的前端控制器DispatcherServlet接收请求。⑦DispatcherServlet调用handleMapping处理器映射器生成处理器对象、处理器拦截器并返回。⑧调用handleAdapter处理器适配器并执行对应的Controller控制器。⑨调用viewResolver视图解析器对Controller返回的ModelAndView对象进行解析并对解析后的具体view进行渲染。完成后返回给客户端。