用户访问一个网站的过程步骤

步骤:DNS–>TCP–>http

利用DNS协议进行域名解析   -->   建立tcp协议三次握手过程   --> 
客户端发出访问网站相应页面请求(发出http协议请求报文)   -->  
服务端发出相应访问页面的请求信息(发出http)   -->   断开tcp协议四次挥手过程

过程:假设:第一次访问百度网页

1)浏览器先尝试从hosts文件中获取百度对应的IP地址

2)如果访问不到,用DNS协议

在DNS协议中,PC会向你的本地DNS服务器求助(一般是路由器),希望从本地DNS服务器那里得到百度的IP,得到就好,得不到还得向更高层次的DNS服务器求助,最终总能得到百度的IP。

3)TCP建立连接(三次握手)

在TCP协议中,建立TCP需要与百度服务器握手三次,你先告诉服务器你要给服务器发东西(SYN),服务器应答你并告诉你它也要给你发东西(SYN、ACK),然后你应答服务器(ACK),总共来回了3次,称为3次握手。

4)为了将消息从你的PC上传到服务器上,需要用到IP协议、ARP协议和OSPF协议。

我们都知道,你的PC和百度服务器之间一般会有许多路由器之类的东西,IP协议指定了出发地(你的PC)和目的地(服务器);你的数据会经过一个又一个路由器,OSPF决定了会经过那些路由器(用一种叫路由算法的玩意,找出最佳路径);从一个路由器怎么传给下一个路由器?这是ARP协议的JOB,ARP负责求下一个节点的地址(我们不止是要目的地,还要中间节点的地址)。IP协议使用的是IP地址,整个发送过程中只涉及出发地和目的地2个IP地址,而ARP协议使用的是MAC地址,整个发送过程中涉及到每一个节点的MAP

5)HTTP请求网页内容

建立连接后,发送请求报文,想看什么数据。 输入www.baidu.com时,默认请求的是index.html首页文件

请求报文结构:

  1. 请求行:

①. 请求的方法(get post)

②. 请求的数据信息(默认请求index.html首页文件)

③. 请求http协议版本

    tcp协议分为长连接(http1.1)和短连接(http1.0)

2.请求头:

3.空行:

4.请求主体:get方法没有请求主体内容 post方法会有请求主体信息

6)服务器发出相应的访问请求页面的信息(发出http 响应报文)

1.起始行(响应行)

①. HTTP协议版本信息

②. 响应的状态码信息(请求成功状态码 200)

③. 响应状态码说明信息

2.响应头部:

3.空行:

4.响应主体内容:一般为html css js 等等代码信息

7)断开tcp 协议四次握手过程

当客户端和服务器通过三次握手建立了TCP连接以后,当数据传送完毕,肯定是要断开TCP连接的啊。那对于TCP的断开连接,这里就有了神秘的“四次挥手”。

  • 1
    点赞
  • 10
    收藏
  • 打赏
    打赏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

yangxiaoyan12

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值