web界面请求过程

一、计算机获取IP(DHCP协议):

  1. 计算机生成DHCP报文 ,并将此报文放入UDP报文段 中(源端口68,目的端口67),此UDP报文段被放入IP数据报中(广播IP目的地址:255.255.255.255,源IP地址:0.0.0.0)
  2. IP数据报被放入以太网帧中(目的MAC地址:FF:FF:FF:FF:FF:FF,源MAC地址:计算机MAC地址),该帧将广播到与交换机连接的所有设备
  3. 路由器收到该以太网帧后,从以太网帧中抽取出IP数据报,从IP数据报中抽取UDP报文段,从UDP报文段中抽取DHCP报文,DHCP服务器收到DHCP请求报文
  4. DHCP收到请求报文后,将IP地址DNS服务器IP地址默认网关路由器Ip地址子网块(IP/掩码)放入DHCP ACK报文中
  5. 将此DHCP ACK报文放入UDP报文段中,UDP报文段放入IP数据报中(源IP:路由器IP,目的IP:255.255.255.255(为了通知其他DHCP服务器)),将该IP数据报放入以太网帧中(目的MAC地址:计算机MAC地址,源MAC地址:路由器MAC地址);
  6. 该以太网帧由路由器发送到交换机中,交换机通过"自学习"记录计算机MAC地址
  7. 计算机收到包含DHCP ACK的以太网帧,抽取IP数据报,抽取UDP报文段,抽取DHCP ACK报文,计算机记录IP地址及DHS服务器IP地址;并在IP转发表中安装默认网关;
  8. 计算机对DHCP ACK报文进行回应
  9. DCHP路由器进行确认

二、 键入URL(DNS协议/ARP协议)

  1. 在浏览器中键入URL后,计算机生成一个DNS查询报文 ,查询该URL对应的IP地址,该DNS报文放入UDP报文段 中(目的端口:53),该UDP报文段被放入IP数据报中(目的地址:DNS服务器地址,源地址:计算机地址),该IP数据报被放入以太网帧中
  2. 由于不知道网关路由器的MAC地址,计算机使用ARP协议,生成一个ARP查询报文(目的地址:网关地址,目的MAX地址:255.255.255.255),网关路由器收到包含此ARP查询报文的以太网帧后,拆包,然后进行回应,生成ARP回答,指示自己的MAC地址对应网关地址
  3. 计算机收到此ARP回答后,封装包含DNS查询报文的以太网帧,将此以太网帧发送到网关路由器
  4. 网关路由器收到此以太网帧后,拆包,抽取目的IP,根据路由转发算法,进行转发,最终发送到DNS服务器
  5. DNS服务器将该URL对应的IP地址封装到DNS回答报文,然后发送给计算机
  6. 计算机收到该DNS回答报文后,抽取出URL对应的IP地址,生成TCP套接字,进行三次握手

三、三次握手

  1. 计算机向服务器发送SYN报文段(SYN=1,sqq =client_isn)
  2. 服务器为该连接分配缓存和变量,并向计算机回复SYN ACK报文段(SYN=1, seq=server_isn,ack=client_isn+1)
  3. 计算机为该连接分配缓存和变量,并向服务器回复(SYN=0,seq=client_isn+1,ack=server_isn+1)
相关推荐
IT逆夜3 小时前
linux防火墙核心命令
网络·智能路由器
噜啦噜啦嘞好4 小时前
Linux——网络概念
linux·网络
OurBMC社区4 小时前
玩转OurBMC第二十三期:OurBMC之PCIe接口应用(下)
linux·运维·网络
初圣魔门首席弟子4 小时前
核心 Bug:客户端与服务器端口不匹配(导致请求无法送达)
linux·网络
是垚不是土4 小时前
基于Blackbox Exporter的网络服务黑盒监控体系实践
网络·数据库·安全·http·微服务·prometheus
福尔摩斯张5 小时前
TCP协议深度解析:从报文格式到连接管理(超详细)
linux·c语言·网络·c++·笔记·网络协议·tcp/ip
那我掉的头发算什么5 小时前
【javaEE】保姆级 HTTP 全解析:请求响应 + 状态码 + Fiddler 实操
网络·http·java-ee·fiddler
代码不行的搬运工5 小时前
交换机和网卡的 PFC 机制工作原理与实例解析
运维·服务器·网络·算力网络
Sleepy MargulisItG5 小时前
【Linux网络编程】UDP Socket
linux·网络·udp
一条懒鱼6665 小时前
k8s-网络
网络·容器·kubernetes