HTTP请求(request)以及响应(response)过程

//以在浏览器输入www.taobao.com为例

客户端:

层名所含协议
应用层DNS HTTP
传输层UDP TCP
网络层ARP IP
数据链路层以太网 无线LAN
物理层

路由器:

层名所含协议
网络层ARP IP
数据链路层以太网 无线LAN
物理层

运营商:

DNS服务器IP

服务器端:

层名所含协议
应用层DNS HTTP
传输层UDP TCP
网络层ARP IP
数据链路层以太网 无线LAN
物理层

正文:

用户在浏览器中输入网址-->浏览器开始解析域名[看看有没有DNS缓存
(有的话直接拿到服务器端IP地址,没有的话会到本地host文件查看
是否有配置)]
//这里插一句:本地配置开发环境的时候需要在本地的host文件中
//添加相应的域名配置 比如:127.0.0.1  www.xxx.com
没有的话会在客户端的应用层发起一个DNS请求,然后应用层调用
传输层的接口,DNS调用UDP协议进行传输-->传输层向网络层请求ip
-->传到数据链路层[在数据链路层会添加一个自己的Mac头
(从网络层的ARP获取到)]-->通过客户端物理层到达路由器物理层-->
到达数据链路层(会检查是否有Mac地址存在 存在就解析 不存在就舍弃
)-->到达网络层(会查找存放到下一个路由器的地址,然后通过运营商的
网络接口传到运营商的路由器上)-->运营商有一个自己的DNS服务器
(会找对应的域名拿到对应的ip地址然后原理返回到客户端的应用层
找DNS拿到请求报文进行HTTP协议传输)
客户端应用层 HTTP+参数-->传输层TCP-->网络层ip(+ip头)-->
数据链路层(+数据链路的头)-->客户端物理层-->路由器-->运营商
(找服务器的ip地址)-->服务器环境
服务器端物理层-->数据链路层(核对数据是否存在)-->网络层
(核对ip是否是服务器的ip)-->传输层(解析UDPTCP的一些端口)
-->应用层(通过端口号找到对应的应用程序,然后应用程序拿到我们
客户端的请求报文之后进行解析然后在服务器端构造一个HTTP响应
报文)-->一层一层解析传回客户端
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值