一篇理解网络分层原理

一、网络分层的必要性。

在这里插入图片描述
如图是一个数据的传输过程,在这个途中会有很多的原因导致数据丢失,网络分层就要可以很大程度的避免这个现象。
网络分层的必要性体现在以下几个方面:

  • 抽象复杂度:网络分层将网络功能按照不同的层次进行分解和抽象,每个层次负责特定的网络功能。这种抽象能够使得网络变得简单易懂,便于设计、实现和维护。
  • 提高互操作性:网络分层可以使得不同的设备和系统之间进行互操作。通过定义好每个层次之间的接口和协议,不同的设备和系统可以使用相同的方法来进行数据交换。
  • 促进标准化:网络分层有助于制定和推广通用标准,以便于不同厂商和组织之间的合作和协作。例如,TCP/IP和OSI参考模型定义了通用的网络分层结构和协议,为网络通信提供了通用标准,促进了网络技术的发展和应用。
  • 改善网络性能:网络分层可以优化网络性能。例如,物理层可以选择合适的物理介质和传输方式,网络层可以选择合适的路由算法和IP地址,传输层可以选择合适的传输协议等。这些选择可以使得网络更加高效和可靠。

二、两种网络分层。

在这里插入图片描述
常用的是五层网络分层:

  • 应用层(Application Layer):应用层是最高层,为用户提供各种网络应用服务。它包括HTTP、FTP、SMTP、DNS等协议,用于实现Web浏览、文件传输、电子邮件和域名解析等功能。
  • 传输层(Transport Layer):传输层负责提供端到端的可靠数据传输,并将数据分割成适合下层传输的数据单元。它使用TCP协议来提供可靠的连接导向的传输服务,或使用UDP协议来提供无连接的传输服务。
  • 网络层(Network Layer):网络层负责进行数据的路径选择和路由,以便将数据从源主机发送到目标主机。它使用IP协议进行寻址和路由选择,通过建立和维护路由表来进行数据转发。
  • 数据链路层(Data Link Layer):数据链路层负责将数据分割成帧(Frame),并在物理链路上传输。它通过错误检测和纠正机制来确保数据的可靠传输,并进行数据的成帧、流量控制和访问控制。
  • 物理层(Physical Layer):物理层是最底层的一层,负责传输比特流,将数据从一个节点传输到另一个节点。它处理物理介质、电缆的连接方式、编码和解码等细节。

三、通过一个http请求了解网络分层工作原理。

在这里插入图片描述
浏览器首先会将输入的URL进行解析,提取出其中的协议(例如HTTP、HTTPS)、主机名(例如www.example.com)和路径等信息。现在需要通过域名确定IP地址,就会进行DNS解析。
DNS解析的基本过程是:

  • 客户端向本地DNS服务器(通常由互联网服务提供商(ISP)提供)发送DNS查询请求。本地DNS服务器查看其缓存,如果找到与该域名相关的IP地址,则直接返回响应给客户端。如果本地DNS服务器的缓存中没有找到对应的IP地址,则它会作为一个DNS递归解析器,向根域名服务器发送DNS查询请求。根域名服务器返回下一级顶级域名服务器的IP地址给本地DNS服务器。本地DNS服务器向下一级顶级域名服务器发送DNS查询请求。这个查询过程会依次向下进行,直到找到负责管理目标域名的授权域名服务器。授权域名服务器将域名所对应的IP地址返回给本地DNS服务器。本地DNS服务器将该IP地址保存在缓存中,并将响应返回给客户端,同时将该记录在本地缓存中以备将来使用。

  • 在DNS查询的过程中,通常使用UDP协议进行传输。这是因为DNS查询通常是简短的请求和响应,并且需要快速完成。UDP相对于TCP具有较低的延迟和较小的开销,适合用于实时性要求较高的应用场景。

  • DNS服务器是什么?

DNS服务器(Domain Name System Server)是一种特殊的服务器,用于解析域名和IP地址之间的映射关系。它的主要功能是将用户输入的域名转换为对应的IP地址,以便用户能够访问目标网站或服务。
在互联网中,每个设备都被分配了一个唯一的IP地址,例如如 “192.168.0.1”。然而,人们往往更容易记住具有可读性的域名(例如www.example.com)。这就需要通过DNS服务器来实现域名到IP地址的转换。
DNS服务器存储了一个大型的域名系统数据库,其中包含了许多域名及其对应的IP地址。当用户在浏览器中输入一个域名时,操作系统会向配置的DNS服务器发送一个查询请求,以获取该域名对应的IP地址。
DNS服务器进行查询处理时,会根据域名的层次结构,逐级向上进行查找。它首先查询本地缓存,如果找到了对应的IP地址,则直接返回给操作系统。如果缓存中没有找到,它会向顶级域名服务器(根域名服务器)发送查询请求,获取下一级的区域域名服务器的地址。
此后,DNS服务器会持续向下查询,直到找到负责管理这个域名的权威域名服务器。权威域名服务器会返回该域名对应的IP地址给DNS服务器,然后DNS服务器将此结果缓存,并将其返回给操作系统。操作系统最终将IP地址提供给应用程序或浏览器,以建立与目标主机的连接。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/127833.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自动定时删除磁盘文件的脚本(从文件日期最早的开始删)

#!/bin/bash# 指定的挂载点 MOUNTPOINT"/media/vm/MyDisk512GB"# 设置磁盘大小的限制 (例如:800G) LIMIT$((800 * 1024 * 1024)) # 单位是KB# 获取挂载点的已使用空间 USED_SPACE$(df -kP "$MOUNTPOINT" | tail -1 | awk {print $3})echo &quo…

golang gin——文件上传(单文件,多文件)

文件上传 单文件上传 从form-data获取文件 package uploadimport ("github.com/gin-gonic/gin""net/http" ) // 单文件上传,多文件上传 func Upload(c *gin.Context) {file, _ : c.FormFile("file") // file为字段名dst : "…

Excel·VBA使用ADO读取工作簿工作表数据

目录 查询遍历写入数组查询整体写入数组查询工作簿所有工作表名称查询工作簿所有工作表数据 不打开工作簿读取数据,以下举例都为《ExcelVBA合并工作簿》中 7,合并子文件夹同名工作簿中同名工作表,纵向汇总数据所举例的工作簿,使用…

【Java 进阶篇】HTML介绍与软件架构相关知识详解

HTML(Hypertext Markup Language)是一种用于创建网页的标记语言。它是互联网上信息传递和展示的基础,无论是在浏览器中查看网页还是在移动设备上浏览应用程序,HTML都扮演着关键角色。本文将向您介绍HTML的基础知识,并探…

钡铼BL124EC实现EtherCAT转Ethernet/IP的优势

钡铼技术的BL124EC是一款用于将EtherCAT从站转换为Ethernet/IP从站的网关设备。它是钡铼技术开发的高性能、可靠的工业自动化通信解决方案之一。 添加图片注释,不超过 140 字(可选) BL124EC网关可以应用于多种工业自动化场景,以下…

12P4375X042-233C KJ2005X1-BA1 CE3007 EMERSON servo controller

12P4375X042-233C KJ2005X1-BA1 CE3007 EMERSON servo controller 我们提供三种不同类别的EDGEBoost I/O模块供选择,以实现最大程度的I/O定制: 数字和模拟输入/输出网络和连接边缘人工智能和存储 利用EDGEBoost I/O实现变革性技术 EBIO-2M2BK EBIO-2M2BK载板支持…

深度学习笔记之线性代数

深度学习笔记之线性代数 一、向量 在数学表示法中,向量通常记为粗体小写的符号(例如,x,y,z)当向量表示数据集中的样本时,它们的值具有一定的现实意义。例如研究医院患者可能面临的心脏病发作风…

常用排序算法详解

1.冒泡排序原理示例代码实现 2.快速排序原理示例代码实现 3.插入排序原理示例代码实现 4.希尔排序原理示例代码实现 5.选择排序原理示例代码实现 6.堆排序原理示例代码实现 7.归并排序原理示例代码实现 本文讲述了常见的排序算法的执行过程,有详细实现过程举例 1.冒…

21.6 CSS 弹性布局

1. 弹性盒子 CSS弹性盒子(Flexbox)是一种布局模型, 用于创建灵活的, 自适应的网页布局. 它的目的是在不同屏幕尺寸和设备上实现一致的布局效果.引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列, 对齐和分配空白空间.弹性容器通过设置display…

左值、右值、左值引用和右值引用

左值、右值和左值引用,在C11之前,我们都很熟悉也都很好理解。左值(LValue)就是有名字能够寻址的对象的值类型,右值就是在内存上没有名字的数值的值类型,左值引用就是指向左值的引用。 C11引入了右值引用,从而可以去读…

STM32 CubeMX ADC采集(HAL库)

STM32 CubeMX ADC采集(HAL库) STM32 CubeMX STM32 CubeMX ADC采集(HAL库)ADC介绍ADC主要特征最小识别电压值:2.4/4096≈0.6mv(不考虑误差)一、STM32 CubeMX设置二、代码部分三,单通道…

泛微OA e-office平台uploadify.php任意文件上传漏洞

泛微OA e-office平台uploadify.php任意文件上传漏洞复现 0x01 前言 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的…