【计算机网络】第四章 网络层(一)
文章目录
- 第四章 网络层
- 4.1 网络层概述
- 4.2 网络层提供的两种服务
- 4.2.1 小结

第四章 网络层
网络层是计算机网络体系结构中的一个关键层,位于传输层上方、数据链路层下方。它负责将传输层提供的数据分割成适当大小的数据包,并在不同网络之间进行路由选择和转发,以实现数据的可靠传输和跨网络的通信。
网络层的主要功能包括:
数据包分段和重组:网络层将从传输层接收到的数据按照适当的大小进行分割,以便在网络中传输。同时,从网络接收到的数据包也需要经过重组,重新组合成完整的数据。
路由选择:网络层根据目标地址和网络拓扑信息,选择合适的路径和下一跳节点,以确保数据包能够按照最佳路径达到目标主机。
路由转发:将数据包从一个网络接口转发到另一个网络接口的过程。路由器是网络层的主要设备,负责执行路由转发功能。
路由器间通信协议:网络层定义了路由器之间的通信协议,例如Internet中常用的Internet协议(IP),用于在不同网络之间进行数据的传输和路由选择。
逻辑地址分配:网络层负责为主机分配逻辑地址,以便在网络中唯一标识和定位不同的主机。
路由器管理和配置:网络层还涉及路由器的管理和配置,包括路由表维护、网络拓扑发现、路由协议的学习和更新等。
网络层在不同的网络体系结构中可能有不同的实现方式和协议,例如在Internet中,网络层使用IP协议来完成上述功能。不同的网络层协议可以提供不同的服务和性能特性,以满足各种网络通信需求。
4.1 网络层概述
网络层的主要工作是 实现网络互连,进而实现数据包在各网络之间的传输。so, 需要解决以下三个问题:
- 网络层向运输层提供怎样的服务(可靠传输 还是 不可靠传输)
- 网络层寻址问题
- 路由选择问题
因特网是目前世界上用户最多数量最多的互联网,它使用的是 TCP/IP 协议栈。
由于 TCP/IP 协议栈 的网络层使用 网际协议IP,它是整个协议栈的核心协议,因此在 TCP/IP 协议栈 中网络层常被称为 网际层。
综上:我没通过 TCP/IP 协议栈 的网际层 来学习网络层的理论知识和实践技术。
4.2 网络层提供的两种服务
- 面向连接的虚电路服务


- 无连接的数据报服务



4.2.1 小结
网络层是OSI模型中的第三层,主要负责实现不同网络之间的互连和数据传输。在网络层中,主要提供以下两种服务:
无连接服务(Connectionless Service):无连接服务是指在传输数据前,发送方和接收方之间不需要建立长期的、预先配置的连接。每个数据包(数据单元)都是独立处理的,根据目的地址进行路由选择。IPv4和IPv6协议是常见的提供无连接服务的协议,如Internet使用的IP协议。
链路服务(Connection-Oriented Service):链路服务是指在传输数据前,发送方和接收方之间需要建立和维护一个可靠的连接。这种连接通常包括连接建立、数据传输和连接释放等过程。链路服务通过提供错误检测、重传丢失的数据包、有序传输等功能,确保数据的可靠性。例如,传输控制协议(TCP)就是提供链路服务的协议,在Internet中广泛使用。
这两种服务可以根据网络需求和应用场景来选择。无连接服务通常用于对延迟要求较高、可靠性要求较低的应用,例如实时音视频传输。而链路服务则适用于对数据可靠性和有序性要求较高的应用,比如文件传输和Web浏览等。
网络层不仅提供服务,还负责实现数据包的路由选择和转发等功能,确保数据在不同网络之间正确传输。不同的网络层协议提供不同的服务和功能,以满足各种网络需求。

相关文章:
【计算机网络】第四章 网络层(一)
文章目录 第四章 网络层4.1 网络层概述4.2 网络层提供的两种服务4.2.1 小结 第四章 网络层 网络层是计算机网络体系结构中的一个关键层,位于传输层上方、数据链路层下方。它负责将传输层提供的数据分割成适当大小的数据包,并在不同网络之间进行路由选择和…...
Elasticsearch删除文档
根据id删除 例如删除id为110的文档 DELETE /ffbf/_doc/110返回信息 {"_index" : "ffbf","_type" : "_doc","_id" : "110","_version"...
MySQL数据库如何实现AX规范
本文我们来讨论 MySQL 的 XA 规范有哪些应用相关的内容。 MySQL 为我们提供了分布式事务解决方案,在前面的内容中 聊一聊分布式事务的解决方案 提到过 binlog 的同步,其实是 MySQL XA 规范的一个应用,那么 XA 规范是如何定义的,具…...
mac安装nvm
如果安装过node,须得卸载 sudo npm uninstall npm -gsudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*sudo rm -rf /usr/local/include/node /Users/$USER/.npmsudo rm /usr/local/bin/nodesudo rm /usr/local/share/m…...
使用 ckeditor gem
安装 1.vim Gemfile 对于基本用法,只需包含 ckeditor gem: gem ckeditor gem paperclip 2. 运行 $ bundle install 3. 运行 $ rails generate ckeditor:install --ormactive_record --backendpaperclip 4. 在config/initializers/assets.rb: Ra…...
Windows环境下Node.js二进制版安装教程
文章目录 前言一 下载Node.js二 设置环境变量三 配置全局安装和缓存路径四 设置仓库 前言 新版的Node.js已自带npm,就在Node.js下载完成解压后的文件内,的node_modules包中。 npm的作用:是对Node.js依赖的包进行管理,类似maven。…...
Spring中的注解装配
1.关于Spring中的注解装配的作用 Spring中的注解装配简化了xml中bean的配置,大大提高了开发效率。 原本我们想在spring容器中使用某个类需要先在xml中配置该类的bean。使用注解后可以直接通过包扫描的方式自动在我们调用类时自动装配。 例如: 当我们想…...
深度优先搜索|130, 200
深度优先搜索|130. 被围绕的区域, 200. 岛屿数量 被围绕的区域岛屿数量 被围绕的区域 这个题应该是从外到里做,我们应该去找和外圈的’O’相通的所有’O’,而不是去找内圈被包围的’O’。 所以我们做的就是从边界的’O’出发,把和他相连的所…...
go-resty
一. go-resty一个优秀的 HTTP 客户端库 go-resty超时控制示例 go-resty自动重示例 go-resty TLS示例 go-resty 与连接池 go-resty 与代理 go-resty 与认证 总结go-resty中提供的API 一. go-resty一个优秀的 HTTP 客户端库 在 Golang 标准库中提供了net/http 具体参考该文档 这…...
香港服务器速度不稳定的原因有哪些
香港服务器速度不稳定的原因有哪些 网络连接的稳定性和速度对于个人和企业来说至关重要。然而,许多用户经常遇到香港服务器速度不稳定的问题,有时候快,有时候慢,这给他们的在线体验和工作效率带来了困扰。本文将探讨香港服务器速…...
企业架构NOSQL数据库之MongoDB
目录 一、背景描述及其方案设计 (一)业务背景描述 (二)模拟运维设计方案 二、Mongodb介绍 (一)nosql介绍 (二)产品特点 1、存储性 2、 效率性 3、结构 三、安装和配置 (一)…...
鸟哥马哥共叙Linux发展
导读北京时间3月28日,由51CTO学院和人民邮电出版社信息技术分社联合举办的[开放见远]“鸟哥”大陆行Linux技术沙龙在位于北京市西三环久凌大厦的51CTO学院举行。 台湾著名Linux网站——“鸟哥的Linux私房菜”站长蔡德明,51CTO学院讲师马哥教育创始人马永…...
OpenCV中常用算子
一、图像运算 Mat src, src1, src2, dst;// 图像运算 加 减 乘 除cv::add(src1, src2, dst); // 相加:src1src2cv::scaleAdd(src1, 1.0, src2, dst); // 相加:1.0*src1src2cv::addWeighted(src1, 0.3, src2, 0.7,…...
Android 11.0 系统限制上网系列之iptables用IOemNetd实现app某个时间段禁止上网的功能实现
1.前言 在11.0的系统rom定制化开发中,对于系统限制网络的使用,在system中netd网络这块的产品需要中,会要求设置app某个时间段禁止上网的功能, liunx中iptables命令也是比较重要的,接下来就来在IOemNetd这块实现app某个时间段禁止上网的的相关功能,就是在 系统中只能允许…...
【JavaSE】面向对象编程思想之继承
【本节目标】 1. 继承 2. 组合 目录 1. 为什么需要继承 2. 继承概念 3. 继承的语法 4. 父类成员访问 4.1 子类中访问父类的成员变量 4.2 子类中访问父类的成员方法 5. super关键字 6. 子类构造方法 7. super和this 8. 再谈初始化 9. protected 关键字 10. 继承方式…...
Golang make和new的区别
make 和 new new函数 作用 分配内存设置零值返回指针 eg: type Student struct{name stringage int }func main(){//new 一个内建类型num : new(int)fmt.Println(*num) //打印:0//new一个自定义类型s : new(Student)s.name "yx"fmt.Prin…...
(前后端交互式)Ajax上传图片 + 更换背景图片
前后端交互图片文件 上传-图片 注意1:上传的图片必须在2MB以内 注意2:服务器端oss(阿里云对象存储)为了安全性,图片url网址不能直接在浏览器地址栏访问 请用img/背景图方式进行使用 上传图片的代码实现 \* 目标&#…...
自媒体常见玩法
有声小说转成视频 题材来源 喜马拉雅 工具 https://trace.moe/ 33台词找台词 文字转视频 题材来源 小说类APP书籍 音乐转视频...
【react】react生命周期钩子函数:
文章目录 一、生命周期概念:二、生命周期:三、挂载阶段(constructor > render > componentDidMount):四、更新阶段(render > componentDidUpdate):五、卸载阶段(componentWillUnmount …...
CRM系统哪些功能可以个性化定制?
不同的企业有着不同的业务流程和需求,因此在选型时就需要一款可以个性化定制的CRM系统。下面说说可以个性化定制的CRM系统的功能和优势。 如何实现个性化定制? Zoho CRM支持个性化定制,您可以创建自定义功能模块、字段以及业务流程…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...
无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...
群晖NAS如何在虚拟机创建飞牛NAS
套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...
Spring Boot + MyBatis 集成支付宝支付流程
Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例(电脑网站支付) 1. 添加依赖 <!…...
