计算机网络面试高频:输入域名会发生那些操作,开放性回答

这篇具有很好参考价值的文章主要介绍了计算机网络面试高频:输入域名会发生那些操作,开放性回答。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

计算机网络面试高频:输入域名会发生那些操作,开放性回答,互联网大厂面试,计算机网络,面试,职场和发展

更多大厂面试内容可见 -> http://11come.cn

计算机网络面试高频:输入域名会发生那些操作,开放性回答

输入域名之后,会发生哪些操作?

当在浏览器中输入www.baidu.com并按下回车键时,会触发一系列复杂的网络过程,包括DNS解析、TCP连接建立、HTTP请求和响应等。以下是这个过程中发生的详细步骤,分层次地说明每一个环节,

域名 www.baidu.com 其实最后还有一个点,即 www.baidu.com. ,域名级别从右到左递减,根域名为 . ,顶级域名为 .com ,二级域名为 baidu ,三级域名为 www

1、首先会经过通过 DNS 解析 将域名解析为对应的 IP 地址

在 DNS 解析之前 ,浏览器会先检查是否存在 DNS 缓存,存在则返回

如果没有,之后会检查操作系统是否存在 DNS 缓存,存在则返回(Linux 中可以通过 /ets/hosts 文件设置,可以将域名解析到任意能够访问的 IP 地址)

如果都没有,则会向本地 DNS 服务器发送域名解析请求

DNS 服务器解析过程: 首先,客户端发送一个 DNS 解析请求给【本地 DNS 服务器】,如果本地 DNS 服务器中存在域名与 IP 的映射,就直接返回

如果没有,本地 DNS 服务器会去请求【根域名服务器】解析 www.baidu.com,根域名服务器发现顶级域名为 .com ,于是将 .com 的顶级域名服务器地址返回

接下来,本地 DNS 服务器会再去请求 .com 的【顶级域名服务器】解析 www.baidu.com,顶级域名服务器会返回 baidu.com 域名服务器的地址

接下来,本地 DNS 服务器会再去请求 baidu.com 的【权威域名服务器】,该权威域名服务器就会返回 www.baidu.com 域名对应的 IP 地址

计算机网络面试高频:输入域名会发生那些操作,开放性回答,互联网大厂面试,计算机网络,面试,职场和发展

经过 DNS 域名解析,客户端就拿到了域名对应的 IP 地址,接下来双方就可以建立 TCP 连接进行通信了

2、双方建立 TCP 连接

客户端拿到了域名对应的 IP 地址,就可以向该 IP 地址发送 TCP 连接建立的请求了,通过 三次握手 双方建立了 TCP 连接,之后就可以进行网络通信了

3、数据传输

计算机网络面试高频:输入域名会发生那些操作,开放性回答,互联网大厂面试,计算机网络,面试,职场和发展

当客户端需要发送数据的时候,应用层会发起 HTTP 请求,接下来到了 传输层 ,HTTP 请求的数据就会被封装在 TCP报文 中,并且添加上 TCP 头信息(包含了源、目的端口号、序列号、确认号等信息)

接下来到了 网络层 ,TCP 报文会被封装在 IP 报文 中,并添加上 IP 头信息(包含了源 IP、目的 IP 等信息)

接下来到了 数据链路层 ,IP 报文会被封装在 MAC 报文 中,并添加上 MAC 头信息(包含了源 MAC、目的 MAC 等信息)

接下来到了 物理层 ,到了物理层会将数字信息转为电信号,电信号通过网线进行传输,完成数据发送的功能,这一步通过网卡来完成,即网卡收到数据包之后,将数据转为电信号通过网线发送出去,之后电信号到达了 交换机 ,交换机通过 MAC 报文 头部的 MAC 地址进行数据的转发,之后到达了 路由器 ,路由器会根据 IP 报文 头部的 IP 地址进行数据的转发

之后数据包抵达服务器,服务器对数据包进行一层一层拆分,先将 MAC 报文 的头部拿出来,判断 MAC 地址等信息是否符合,之后将 IP 报文 的头部拿出来,判断 IP 地址等信息是否符合,之后将 TCP 报文 的头部拿出来,判断序列号、端口号等信息是否符合,如果都符合就将这个数据包发送给服务端监听这个端口的应用进程,这就完成了一次请求数据的传递了

当双方数据传输完毕之后,通过 四次挥手 断开双方的 TCP 连接即可

扩展:可以再添加上 HTTPS 中的 TLS 握手阶段

如果使用 HTTPS 通信的话,在 TCP 握手建立 TCP 连接之后,还需要通过 TLS 握手来协商双方加密的 对称密钥 ,可以将 TLS 握手阶段给说一下

那么 TLS 握手的过程总共包含了 4 次通信 ,在 4 次通信之后,TLS 协议也就建立成功了,可以进行 HTTPS 通信了,TLS 握手过程中的 4 次通信如下:

1、第一次通信 ClientHello :客户端向服务端发送加密请求,主要是协商 TLS 版本、随机数(生成后续的对称密钥)

2、第二次通信 ServerHello :服务端向客户端回复,主要协商 TLS 版本、随机数(生成后续的对称密钥)、数字证书(包含公钥)

3、第三次通信 客户端回应 :取出数字证书的公钥,将用于通信的 对称密钥 通过公钥加密发送给服务端

4、第四次通信 服务端最后回应 :使用自己本地的密钥进行解密,得到用于通信的 对称密钥

通过 TLS 握手阶段,双方就可以拿到对称密钥,之后双方就可以使用这个 对称密钥 进行加密通信了文章来源地址https://www.toymoban.com/news/detail-860942.html

到了这里,关于计算机网络面试高频:输入域名会发生那些操作,开放性回答的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机网络篇之域名

    一个域名是一个由点分割的字符串序列,用于标识一组IP地址或互联网上的计算机,域名用于在因特网上标识和定位特定的网站或服务 域名由两个主要部分组成:顶级域和二级域,顶级域是域名的最高级别,例如.com、.org、.net等,而二级域是在顶级域的基础上创建的更具体的

    2024年02月09日
    浏览(42)
  • 计算机网络笔记:域名系统(DNS)

    域名系统概述 :互联网使用的命名系统,用来将便于人们使用的机器名字转换为IP地址。 域名系统的使用情况 : 直接使用 :许多应用层软件经常直接使用域名系统; 间接使用 :计算机用户虽然是通过间接的方式使用域名系统,但是域名系统却为互联网的各种网络应用提供

    2024年02月08日
    浏览(39)
  • [计算机网络] 当输入网址到网页

    HTTP 首先,对URL进行解析,URL包含了 Web服务器 和对应的 文件 (文件路径)         URL是请求服务器中的文件资源 通过Web服务器和对应文件来生产HTTP包(超文本传输协议) DNS 根据域名查询对应的 IP地址 域名的 层级         根DNS服务器         顶级域DNS服务器        

    2024年04月13日
    浏览(33)
  • 【面试题】计算机网络面试实战

    version:1.8【新增DNS,GET,POST请求,修改部分语言表述】 version:1.0

    2024年02月06日
    浏览(53)
  • 计算机网络面试题

    物理层:实现相邻节点间比特流的透明传输,尽可能屏蔽传输介质和物理设备的差异。 数据链路层:将网络层交下来的 IP 数据报组装成帧,在两个相邻节点间的链路上传送帧。交换机 网络层:选择合适的路由和交换结点,确保数据及时传送。IP协议,路由器 传输层:负责向

    2023年04月27日
    浏览(54)
  • 计算机网络 - 面试

    IP地址(Internet Protocol Address)是一组数字,用于识别计算机网络上的主机,类似于电话号码一样。IP地址分为IPv4和IPv6两种,IPv4由32个比特位组成,通常表示为四个十进制数,用点分十进制法表示,如192.168.0.1;而IPv6由128个比特位组成,表示形式更加复杂。 IP地址的主要作用是

    2023年04月20日
    浏览(85)
  • 计算机网络——面试问题

    1. 先检查 浏览器缓存 ⾥是否有缓存该资源,如果有直接返回;如果没有进⼊下⼀ 步 ⽹络请求 。 2. ⽹络请求前,进⾏ DNS 解析 ,以获取请求域名的 IP地址 。 3. 浏览器与服务器IP 建⽴TCP连接 。 如果请求协议是 HTTPS ,那么还需要 建⽴ TLS 连接。 连接建⽴后,向服务器 构建请

    2024年01月22日
    浏览(48)
  • iOS面试:1.计算机网络

    一、HTTP 1.1 HTTP介绍 HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种用于传输超文本数据(如 HTML 文档、图片、视频等)的应用层协议,是互联网上应用最为广泛的协议之一。HTTP协议建立在TCP协议之上,通过在客户端和服务器之间传输数据来实现通信。 以下是 HTTP 协议

    2024年02月22日
    浏览(48)
  • 计算机网络面试八股文

    计算机网络体系大致分为三种,OSI七层模型、TCP/IP四层模型和五层模型。一般面试的时候考察比较多的是五层模型。最全面的Java面试网站:最全面的Java面试网站 五层模型 :应用层、传输层、网络层、数据链路层、物理层。 应用层 :为应用程序提供交互服务。在互联网中的

    2024年02月06日
    浏览(54)
  • 前端面试常考 HTTP/计算机网络面试题

    HTTP协议是基于TCP/IP通信协议来传输数据,如HTML文件,图像等,即是一个客户端和服务端进行请求和响应的协议 无连接,限制每次连接只处理一个请求,服务端完成客户端请求就断开连接 无状态,没有记忆能力,每次请求都是独立的,不记录客户端的任何行为。优点是解放服

    2024年02月21日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包