计算机网络 | 网络层
计算机网络 | 网络层
- 计算机网络 | 网络层
- 功能概述
- SDN(Software-Defined Networking)
- 路由算法与路由协议
- IPv4
- IPv4 分组
- IPv4 分组的格式
- IPv4 数据报分片
参考视频:王道计算机考研 计算机网络
参考书:《2022年计算机网络考研复习指导》
计算机网络 | 网络层
功能概述
网络层:向上提供简单的、无连接的、尽最大努力交付的数据报服务。
- 功能一:路由选择与分组转发:让数据在路由器之间走最佳的路径。
- 功能二:异构网络互联:让不同的设备(手机、电脑、平板等)都能正常连接。
- 功能三:拥塞控制
- 开环控制(静态):在拥塞之前就提前设计解决。
- 闭环控制(动态):在拥塞时自动调整解决问题。
拥塞:在通信子网中,因出现过量的分组而引起网络性能下降的现象。
数据在各层的传输形式:
OSI参考模型 | 各层次的传输单元 |
---|---|
应用层 | 报文 |
传输层 | 报文段 |
网络层 | IP数据报,分组(如果IP数据报太大就切割成分组) |
数据链路层 | 帧 |
物理层 | 比特流 |
SDN(Software-Defined Networking)
数据平面:用于控制数据处理过程中各种具体处理转发过程。处理时间短,在路由器中用硬件实现。
控制平面:用于控制、管理网络协议的运行,比如 OSPF 协议、RIP 协议、BGP 协议。处理时间长,在路由器中用软件实现。
分为两种:
- 每路由器法
- SDN 法
每路由器法:
SDN 法:
注:上面的交换机实际上是路由器。
SDN 控制器的三个层次:
- 对于网络控制应用程序的接口:SDN 控制器通过“北向接口”与网络控制应用程序交互,该 API 允许网络控制应用程序在状态管理层之间读写网络状态。
- 网络范围状态管理层:由 SDN 控制平面作出的最终控制决定,将要求控制器具有有关网络的主机、链路等最新状态信息。
- 通信层:负责 SDN 控制器与受控网络设备之间的通信(OpenFlow 协议),包含“南向接口”。
例题:
小结:
路由算法与路由协议
路由算法的分类:
层次路由:
- 内部网关协议(IGP):也称域内路由选择。
- 外部网关协议(EGP):也称域间路由选择。
示例:
IPv4
IPv4 分组
IPv4 分组的格式
一个 IP 分组由首部和数据部分组成:
- 首部:固定长度为 20 比特, 是所有 IP 分组必需的。后面是一些可选字段,长度可变,用来提供错误检测及安全等机制。
- 数据部分:TCP、UDP段。
IP 数据报格式:
名称 | 英文 | 注释 | 大小 |
---|---|---|---|
版本 | Version | ipv4或者ipv6 | 4位 |
首部长度 | IHL | 此处数值再乘以4才是真正大小,同时因为IP数据报固定长度为20字节,所以此处最小值为5,即二进制的0101 | 4位 |
区分服务 | DSCP + ECN | 希望获得哪种服务,用的比较少 | 8位 |
总长度 | Total Length | 首部+数据的长度,最大为216-1=65535B | 16位 |
标识 | Identification | 用来表示是哪一个数据报的分片,不同的分片标识各不相同 | 8位 |
标志 | Flags | 用来表示是否分片和分片是否结束 | 3位,但实际有用的只有后两位 |
片偏移 | Fragment Offset | 用来标记分片之后,该分片在原来的数据报的位置,以8字节为单位 | 13位 |
生存时间 | Time To Live 即TTL | 每经过一个路由器TTL-1,0时自动放弃,根据系统不同默认的TTL不同 | 8位 |
协议 | Protocol | 用来标记协议名的字段值,如TCP、UDP、ICMP等 | 8位 |
首部检验和 | Header Checksum | 检验首部的字段是否出错,出错就丢弃此数据报 | 8位 |
源地址 | Source IP Address | 发送方ip地址 | 32位 |
目的地址 | Destination IP Address | 接收方ip地址 | 32位 |
可选字段 | Options | 用来排错等安全检测 | 未知,可在0-40位之间 |
填充 | 将数据报对齐成4字节的整数倍,数值全部为0 | 未知,根据可选字段来定 |
注:总长度单位是 1B,片偏移单位是 8B,首部长度单位是 4B。
IPv4 数据报分片
最大传送单元(MTU):一个数据链路层数据报能承载的最大数据量。
以太网的 MTU 是 1500 字节。
如果 IP 分组超过了某链路的 MTU 值?
IP 数据报分片。
例题:
相关文章:

计算机网络 | 网络层
计算机网络 | 网络层 计算机网络 | 网络层功能概述SDN(Software-Defined Networking)路由算法与路由协议IPv4IPv4 分组IPv4 分组的格式IPv4 数据报分片 参考视频:王道计算机考研 计算机网络 参考书:《2022年计算机网络考研复习指…...

21GA-ELM,遗传算法优化ELM预测,并和优化前后以及真实数值进行对比,确定结果,基于MATLAB平台,程序已经调通,可以直接运行,需要直接拍下。
GA-ELM,遗传算法优化ELM预测,并和优化前后以及真实数值进行对比,确定结果,基于MATLAB平台,程序已经调通,可以直接运行,需要直接拍下。 21matlab时间序列预测极限学习遗传优化算 (xiaohongshu.co…...

287_C++_TaskQueue管理任务队列和定时器(头文件.h)
#ifndef TASKQUEUE_H #define TASKQUEUE_H#include <sys/types.h> #include <stdlib.h> #include <pthread.h>...

Hadoop+Zookeeper+HA错题总结(一)
题目3: 下列哪项通常是hadoop集群运行时的最主要瓶颈?() [单选题] A、CPU B、网络 C、磁盘 IO D、内存 【参考答案】: C 【您的答案】: D 这道题的答案取决于集群的性能,一般来说运行时的主要瓶颈是网络。但是如果集群的磁盘IO性能较差&am…...

React高级特性之context
例1: createContext // 跨组件通信Context引入createContext import React, { createContext } from react// App传数据给组件C App -- A -- C// 1. 创建Context对象 const { Provider, Consumer } createContext()function SonA () {return (<div>我是…...

【OS】操作系统课程笔记 第五章 并发性——互斥、同步和通信
并发性:并发执行的各个进程之间,既有独立性,又有制约性; 独立性:各进程可独立地向前推进; 制约性:一个进程会受到其他进程的影响,这种影响关系可能有3种形式: 互斥&am…...

RabbitMQ概述原理
RabbitMQ是一种消息队列中间件,其主要作用是在应用程序之间传输数据。它基于AMQP(高级消息队列协议)实现,可以用于不同语言和不同操作系统之间的通信。 RabbitMQ的工作原理是生产者将消息发送到队列中,消费者从队列中接…...

8.Covector Transformation Rules
上一节已知,任意的协向量都可以写成对偶基向量的线性组合,以及如何通过计算基向量穿过的协向量线来获得协向量分量,且看到 协向量分量 以 与向量分量 相反的方式进行变换。 现要在数学上确认协向量变换规则是什么。 第一件事:…...

RustDay04------Exercise[21-30]
21.使用()对变量进行解包 // primitive_types5.rs // Destructure the cat tuple so that the println will work. // Execute rustlings hint primitive_types5 or use the hint watch subcommand for a hint.fn main() {let cat ("Furry McFurson", 3.5);// 这里…...

OpenAI科学家谈GPT-4的潜力与挑战
OpenAI Research Scientist Hyung Won Chung 在首尔国立大学发表的一场演讲。 模型足够大,某些能力才会显现,GPT-4 即将超越拐点并在其能力上实现显着跳跃。GPT-3 和 GPT-4 之间的能力仍然存在显着差距,并且尝试弥合与当前模型的差距可能是无…...

Java电子病历编辑器项目源码 采用B/S(Browser/Server)架构
电子病历(EMR,Electronic Medical Record)是用电子技术保存、管理、传输和重现的数字化的病人的医疗记录,取代手写纸张病历,将医务人员在医疗活动过程中,使用医疗机构管理系统生成的文字、符号、图表、图形、数据、影像等数字化内…...

使用 AWS DataSync 进行跨区域 AWS EFS 数据传输
如何跨区域EFS到EFS数据传输 部署 DataSync 代理 在可以访问源 EFS 和目标 EFS 的源区域中部署代理。转至AWS 代理 AMI 列表并按 AWS 区域选择您的 AMI。对于 us-west-1,单击 us-west-1 前面的启动实例。 启动实例 2. 选择您的实例类型。AWS 建议使用以下实例类型之…...

设计模式~解释器模式(Interpreter)-19
解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。这种模式被用在 SQL 解析、符号处理引擎等。 【俺有一个《泡MM真经》&#x…...

对象混入的实现方式
对象混入(Object mixins)是一种在面向对象编程中用于组合和重用代码的技术。它允许你将一个对象的属性和方法混合(或合并)到另一个对象中,从而创建一个具有多个来源的对象,这些来源可以是不同的类、原型或其…...

Mac 远程 Ubuntu
1. Iterm2 添加ssh 参考:https://www.javatang.com/archives/2021/11/29/13063392.html 2. Finder 添加远程文件管理 2.1 ubuntu 配置 安装samba sudo apt-get install samba配置 [share]path /home/USER_NAME/shared_directoryavailable yesbrowseable ye…...

黑豹程序员-h5前端录音、播放
H5支持页面中调用录音机进行录音 H5加入录音组件,录音后可以进行播放,并形成录音文件,其采样率固化48000,传言是google浏览器的BUG,它无法改动采样率。 大BUG,目前主流的支持16000hz的采样率。 录音组件 …...

Leetcode622.设计循环队列
本专栏内容为:leetcode刷题专栏,记录了leetcode热门题目以及重难点题目的详细记录 💓博主csdn个人主页:小小unicorn ⏩专栏分类:Leetcode 🚚代码仓库:小小unicorn的代码仓库🚚 &…...

二十二、【形状工具组】
文章目录 基础图形多边形直线工具自定义形状工具 形状工具组画的图形是矢量图形,在放大和缩小后像素不变看起来不会模糊,位图和矢量图形的存储方式不一样,位图的存储方式是按各个像素的数据来进行存储的,而矢量图形是根据算法来进…...

设计模式~迭代器模式(Iterator)-20
目录 迭代器模式(Iterator) (1)优点 (2)缺点 (3)使用场景 (4)注意事项 (5)应用实例: 代码 迭代器模式(Iterator) 迭代器模式(…...

亳州市的自然风光与旅游资源:欣赏安徽省中部的壮丽景色
亳州市是中国安徽省的一个地级市,位于该省的中部。 亳州市辖区包括谯城区、涡阳县、蒙城县和利辛县等地。亳州市拥有悠久的历史和丰富的文化遗产,同时也以其独特的自然风光而闻名。 首先,让我们来了解一下亳州的历史和景点。亳州的历史可以…...

windows安装nvm以及解决yarn问题
源代码 下载 下一步一下步安装即可 检查是否安装成功 nvm出现上面的代码即可安装成功 常用命令 查看目前安装的node版本 nvm list [available]说明没有安装任何版本,下面进行安装 nvm install 18.14使用该版本 node use 18.14.2打开一个新的cmd输入node -…...

【TA 挖坑04】薄膜干涉 镭射材质 matcap
镭射材质,相对物理的实现? 万物皆可镭射,个性吸睛的材质渲染技术 - 知乎 (zhihu.com) 薄膜干涉材质,matcap更trick的方法?matcapremap, MatCap原理介绍及应用 - 知乎 (zhihu.com) 庄懂的某节课也做了mat…...

OpenCV13-图像噪声:椒盐噪声和高斯噪声
OpenCV13-图像噪声:椒盐噪声和高斯噪声 1.噪声种类2.椒盐噪声3.高斯噪声 1.噪声种类 图像噪声是指图像中的随机或非随机的不希望的视觉扰动。它可以出现在数字图像中的各种形式,例如颗粒状噪声、条纹、斑点、模糊、失真等。图像噪声可能是由于图像采集过…...

天堂2服务器基本设置
[system] server_nameLocal Server ——〉服务器名称 server_rulesPvP http_host127.0.0.1 ——〉HTTP注册页面(需先搭建IIS服务器) http_port8080 rs_host127.0.0.1——〉填你IP rs_port3724 ws_host127.0.0.1 ——〉填你的IP就对啦 ws_port8085 wor…...

如何解决网站被攻击的问题
在当今数字化时代,网站攻击已经成为互联网上的一个常见问题。这些攻击可能会导致数据泄漏、服务中断和用户信息安全问题。然而,我们可以采取一些简单的措施来解决这些问题,以确保网站的安全性和可用性。 使用强密码和多因素认证 密码是保护网…...

python爬虫入门详细教程-采集云南招聘网数据保存为csv文件
python爬虫之User-Agent大全、随机获取User-Agent 网站地址数据提取技术介绍采集目标流程分析python代码实现 网站地址 https://www.ynzp.com/ 这个网址特别适合新手拿来练习,你采集多了还有个验证码页面,验证码是4位数字,很清晰,…...

1.13.C++项目:仿muduo库实现并发服务器之TcpServer模块的设计
文章目录 一、LoopThreadPool模块二、实现思想(一)管理(二)流程(三)功能设计 三、代码 一、LoopThreadPool模块 TcpServer模块: 对所有模块的整合,通过 tcpserver 模块实例化的对象&…...

Spring(17) AopContext.currentProxy() 类内方法调用切入
目录 一、简介二、代码示例2.1 接口类2.2 接口实现类2.3 AOP切面类2.4 启动类(测试)2.5 执行结果 一、简介 背景: 在之前 Spring 的 AOP 用法中,只有代理的类才会被切入。例如:我们在 Controller 层调用 Service 的方式…...

自己的类支持基于范围的for循环 (深入探索)
自己的类支持基于范围的for循环 (深入探索) 编译器实际运行伪代码为: auto && __range range_expression; auto __begin begin_expr; auto __end end_expr; for (; __begin ! __end; __begin) {range_declaration *__begin;loop_statement }观察伪代码࿰…...

Multi Scale Supervised 3D U-Net for Kidney and Tumor Segmentation
目录 摘要1 引言2 方法2.1 预处理和数据增强2.2 网络的体系结构2.3 训练过程2.4 推理与后处理 3 实验与结果4 结论与讨论 摘要 U-Net在各种医学图像分割挑战中取得了巨大成功。一些新的、带有花里胡哨功能的架构可能在某些数据集中在使用最佳超参数时取得成功,但它们…...