本文主要是介绍保研面试计网复习10——网页浏览过程、OSI七层协议、TCP和UDP的区别、NAT,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 一、从输入链接点击到加载页面的过程中计算机网络方面的流程
- 二、OSI七层协议
- 三、TCP和UDP的区别
- 四、NAT
- 从输入链接点击到加载页面的过程中计算机网络方面的流程是什么
- NAT相关
- OSI七层协议
- TCP和UDP的区别
一、从输入链接点击到加载页面的过程中计算机网络方面的流程
我们电脑上的浏览器作为一个软件具有一些功能,当我们输入URL时,我们的浏览器软件会执行DNS解析操作。
-
DNS解析:
- 用户输入URL,浏览器首先检查本地缓存,如果没有找到,会向DNS服务器查询该URL对应的IP地址。
- DNS服务器返回IP地址给浏览器。
-
建立TCP连接:
- 浏览器向目标服务器的IP地址发起TCP连接(三次握手过程)。
- 三次握手包括:客户端发送SYN包,服务器回应SYN-ACK包,客户端再发送ACK包确认。
-
发送HTTP请求:
- 建立连接后,浏览器向服务器发送HTTP请求,请求内容包括所需资源的路径和请求头信息。
-
服务器处理请求:
- 服务器接收到HTTP请求后,处理请求并生成响应(例如:查找请求的文件或生成动态内容)。
-
服务器发送响应:
- 服务器将响应数据通过HTTP协议返回给浏览器,这里包括响应头和响应体(如HTML文档)。
-
浏览器渲染页面:
- 浏览器接收到响应数据后,开始解析HTML文档,构建DOM树。
- 下载和解析CSS,构建CSSOM树。
- 执行JavaScript,构建渲染树,进行布局和绘制,最终在屏幕上呈现页面。
二、OSI七层协议
“物联网淑慧试用”
物 数 网 传 会 表 应
理 据 络 输 话 示 用
层 链 层 层 层 层 层
路
层
-
物理层(Physical Layer):
- 负责实际的硬件传输,包括电缆、无线电信号等。
- 传输比特流,确保比特的正确发送和接收。
-
数据链路层(Data Link Layer):
- 负责节点之间的可靠数据传输。
- 包括MAC地址、帧的创建和错误检测。
-
网络层(Network Layer):
- 负责不同网络之间的路径选择和数据包传输。
- 包括IP地址和路由选择。
-
传输层(Transport Layer):
- 负责端到端的数据传输和控制。
- 包括TCP和UDP协议。
-
会话层(Session Layer):
- 负责建立、维护和管理会话。
- 控制会话的建立和终止。
-
表示层(Presentation Layer):
- 负责数据格式的转换和加密解密。
- 确保数据在不同系统之间的兼容性。
-
应用层(Application Layer):
- 负责提供网络服务和应用接口。
- 包括HTTP、FTP、SMTP等协议。
三、TCP和UDP的区别
-
连接性:
- TCP(Transmission Control Protocol):面向连接的协议,需要在数据传输前建立连接(三次握手)。
- UDP(User Datagram Protocol):无连接的协议,不需要建立连接,直接发送数据。
-
可靠性:
- TCP:提供可靠的数据传输,保证数据包的顺序和完整性,具有重传机制和错误检测。
- UDP:不保证可靠性,数据可能丢失或乱序,没有重传机制。
-
传输效率:
- TCP:由于有连接建立和可靠性保障,传输效率较低。
- UDP:传输效率高,适用于实时应用(如视频、音频)。
-
使用场景:
- TCP:适用于需要可靠传输的应用,如网页浏览、文件传输、电子邮件。
- UDP:适用于不需要可靠传输的应用,如视频流、在线游戏、DNS查询。
Network Address Translation (NAT) 是网络工程中一个重要的概念,尤其在IP地址管理和网络安全方面起着关键作用。在面试中,关于NAT的重点知识点通常包括其基本概念、工作原理、类型、优缺点以及应用场景。以下是一些常见的NAT相关面试知识点:
四、NAT
-
NAT定义:
- Network Address Translation(网络地址转换)是将私有IP地址转换为公共IP地址的过程,允许多个设备通过一个公共IP地址访问互联网。
-
工作原理:
- 当内部网络设备(使用私有IP地址)发出互联网请求时,NAT设备(如路由器)会将私有IP地址和端口号转换为公共IP地址和一个唯一的端口号。返回的数据包则通过这个映射反向转换回私有IP地址。
-
NAT类型:
- 静态NAT(Static NAT):
- 一对一的IP地址映射。一个私有IP地址映射到一个公共IP地址。
- 动态NAT(Dynamic NAT):
- 多对多的IP地址映射。一组私有IP地址映射到一组公共IP地址。
- 端口地址转换(PAT)/ 网络地址端口转换(NAPT):
- 多对一的IP地址映射。多个私有IP地址通过不同的端口号映射到同一个公共IP地址。通常称为“多路复用”。
- 双向NAT(Bidirectional NAT):
- 双向映射,既可以将外部IP地址映射到内部IP地址,也可以将内部IP地址映射到外部IP地址。
- 静态NAT(Static NAT):
-
NAT的优点:
- 节省IP地址:允许多个设备通过一个公共IP地址访问互联网,减少公共IP地址的需求。
- 增强安全性:隐藏内部网络结构和私有IP地址,提高安全性。
- 灵活的地址管理:可以方便地重用私有IP地址。
-
NAT的缺点:
- 增加延迟:地址转换需要时间,可能会增加网络延迟。
- 某些协议不兼容:某些协议或应用程序(如需要嵌入IP地址信息的协议)可能无法正常工作。
- 端到端连接性丧失:NAT会打破IP地址的端到端可达性,某些情况下需要借助UPnP或STUN等协议来穿越NAT。
-
应用场景:
- 家庭网络和小型企业网络:使用NAT来共享单个公共IP地址,实现多个设备同时访问互联网。
- 数据中心:在数据中心内部使用私有IP地址,通过NAT与外部网络通信,节省公共IP地址。
- 虚拟专用网络(VPN):NAT可以与VPN结合使用,实现私有网络的安全互联。
-
常见面试问题:
- 什么是NAT,为什么需要NAT?
- 解释NAT的基本概念和其在节省IP地址、提高安全性方面的作用。
- NAT有几种类型?它们的区别是什么?
- 讨论静态NAT、动态NAT、PAT/NAPT和双向NAT的区别和应用场景。
- NAT的优缺点是什么?
- 分析NAT在节省IP地址和提高安全性方面的优点,以及增加延迟和某些协议不兼容等缺点。
- NAT在家庭网络中的应用是什么?
- 说明如何在家庭网络中使用NAT共享公共IP地址。
- NAT与防火墙的区别是什么?
- 解释NAT和防火墙在网络安全中的不同作用。
- 什么是NAT,为什么需要NAT?
这篇关于保研面试计网复习10——网页浏览过程、OSI七层协议、TCP和UDP的区别、NAT的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!