输入URL的那一瞬间浏览器做了什么?

1.DNS解析

DNS解析互联网上的一种基础网络服务,它将域名和IP地址相互映射,提供了将人类可读的域名转换为计算机可识别的IP地址的功能。DNS的作用类似于电话簿,它将域名与IP地址相对应,使得用户可以通过域名来访问网站,而不需要记住复杂的IP地址,在互联网上,每个网站都有一个唯一的域名,例如www.baidu.com。这个域名是便于人们记忆和识别的,但在实际通信中,计算机需要使用IP地址来定位和连接服务器。DNS就是通过将域名解析为对应的IP地址,从而使用户能够通过域名来访问网站。

DNS解析的过程通常包括以下几个步骤:

①用户输入一个域名,例如www.example.com。

② 本地计算机的DNS客户端会首先查询本地缓存,检查是否已经解析过该域名。

③ 如果本地缓存中没有对应的记录,DNS客户端会向本地网络中的DNS服务器发送查询请求。

④.如果本地DNS服务器中没有对应的记录,它会向更高级别的DNS服务器发送查询请求,逐级向上查询,直到找到对应的域名解析记录。

⑤找到对应的域名解析记录后,DNS服务器将IP地址返回给本地DNS客户端。

⑥本地DNS客户端将IP地址返回给用户的计算机,用户的计算机可以使用这个IP地址来建立与服务器的连接,访问网站。

2.建立TCP链接(三次握手四次挥手)

第一次握手:客户端向服务器发送连接请求当客户端想要与服务器建立连接时,它会发送一个SYN(同步)包给服务器。这个SYN包包含了客户端的初始序列号(sequence number),用于后续数据传输的顺序标记。

第二次握手:服务器回应客户端的请求服务器收到客户端的SYN包后,会回应一个SYN ACK(同步确认)包。这个包包含了服务器的初始序列号以及客户端的序列号加一。服务器将这些信息发送给客户端,表示它已经接受了连接请求,并准备好进行数据传输。

第三次握手:客户端确认服务器的回应客户端收到服务器发送的SYN ACK包后,会发送一个ACK(确认)包给服务器。这个ACK包的序列号会加一,表示客户端已经成功接收到服务器的回应。服务器收到这ACK包后,也会对序列号进行加一操作,表示服务器已经确认客户端的回应。至此,TCP三次握手完成,连接建立成功。在这个过程中,每一方都会发送一个SYN包,同时也会接收到对方发送的SYN包,并回应一个ACK包。通过这种方式,双方能够确定彼此都已经准备好建立连接,从而确保通信的可靠性。TCP 三次握手的过程中,每一次握手都是为了确认对方的状态并同步序列号,以确保双方能够正常通信。如果其中一方在握手过程中没有收到对方的回应,它会尝试重新发送SYN包,直到收到对方的回应或达到最大重试次数。

第四次挥手:客户端接收到服务器的FIN报文段后,会发送一个带有确认号的ACK报文段,确认号是服务器发出的FIN报文段的序列号加上1。客户端进入TIME_WAIT状态,等待足够的时间(通常是2MSL,即最大生存时间)后,最终进入CLOSED状态,完成四次挥手。

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱在 旅途

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

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值