计算机网络 笔记 网络层1
网络层功能概述
主要的任务是把分组从源端传输到目的端,为分组交换网上的不同主句提供通信服务,网络层的传输单位是数据报。
主要的功能;
1,路由选择:路由选择指网络层根据特定算法,为数据包从源节点到目的节点选择最佳传输路径。(控制平面:各种协议,用于控制和管理,长时,软件)
2,分组转发:传输层交付的报文通常较长,网络层会将其分割成较小的数据包(分组),并为每个数据包添加首部,包含源 IP 地址、目的 IP 地址等信息,以实现数据包独立传输与路由。(数据平面:对于数据处理过程中各种具体处理转发的过程,短时,硬件)
3,异构网络互联:不同网络(如以太网、令牌环网、无线局域网等)在传输介质、数据格式、传输速率等方面存在差异,网络层负责连接这些异构网络,实现不同网络间通信。
4,拥塞控制(开环控制,闭环控制):网络层实时监测网络流量与资源利用情况,判断是否发生拥塞。一旦检测到拥塞,网络层采取相应措施缓解,如:限制发送方发送速率;丢弃不重要数据包,为重要数据包腾出空间;调整路由,将部分流量引导到其他较空闲路径。
5,差错控制
网络层的两大平面 :
数据平面和逻辑平面
控制平面:
(传统、每路由器法):
路由选择算法会运行在每台路由器中,并且每个路由器都包含转发和路由选择两个功能
(SDN方法):
路控制平面和路由器分离,路由器仅仅实现转发,远程控制器通过计算和分发转发表来给路由器使用(这是一个可编程的一个软件)

SDN控制器可以去:1维护网络状态信息。2为网络控制应用程序提供信息
SDN的三个层次:

(1)北向API:和网络控制应用程序的接口,实现二者交互,让网络控制应用程序在状态管理层自检实现读写网络状态
(2)网络范围状态管理层:由SDN控制平面做出的最终控制决定,将要求控制器具有有关网络的主机,链路等状态信息(就是一个维护网络状态信息的层次)
(3)通信层:SDN控制器与受控网络设备之间的通信 (包括了南向API和通信协议)
网络控制应用程序:根据SDN控制器提供的方法,监控,编程,控制下面的网络设备(路由器)
数据平面:
完成转发,位于路由器中
路由算法:
静态路由算法(非自适应路由算法)管理员手动配置路由信息
优点:简便、可靠,在负荷稳定、拓扑变化不大的网络中运行效果很好,广泛用于高度安全性的军事网络和较小的商业网络。
缺点:路由更新慢,不适合大规模网络
动态路由算法(自适应路由算法):路由器之间相互交换信息,按照路由优化算法算出路由项表
优点:路由更新快,适用大型网络,及时响应链路费用或网络拓扑变化。
缺点:算法复杂,增加网络负担。
动态路由算法分为 OSPF(全局性路由算法,使用的链路状态。适合大规模网络)和 RIP(分散性路由算法,使用的距离向量,适合小规模网络)
自治系统AS:在单一的技术管理下的一组路由器,而这些路由器使用一种AS内部的路由选择协议和共同的度量以确定分组在该AS内的路由,同时还使用一种AS之间的路由协议以确定在AS之间的路由。(因为部分单位不想过多的暴露自身协议)
在一个AS内,所有的路由器都必须联通
所以根据这个可以分为内部网关协议(IGP):RIP,OSPF 和 外部网关协议 (BGP)
RIP协议:
一种分布式的基于距离向量的路由选择协议,是因特网的协议标准,最大优点是简单。
RIP协议要求网络中每一个路由器都维护从它自己到其他每一个目的网络的唯一最佳距离记录(即一组距离)
距离:通常为“跳数”,即从源端口到目的端口所经过的路由器个数,经过一个路由器跳数+1。特别的,从一路由器到直接连接的网络距离为1。RIP允许一条路由最多只能包含15个路由器,因此距离为16表示网络不可达
RIP协议规定
路由器之和相邻的路由器交换信息
交换的信息只回交换自己的路由表(包括距离和下一跳的信息)
每30s回交换一次路由信息,当3分钟没有说到邻居路由器的通告,就会默认邻居没了,从途中删除掉邻居后重新更新路由信息
当各个节点更新完成后的状态叫做 :收敛
算法过程
1.修改相邻路由器发来的RIP报文中所有表项对地址为X的相邻路由器发来的RIP报文,修改此报文中的所有项目:把“下一跳”字段中的地址改为X,并把所有的“距离”字段+1。
2.对修改后的RIP报文中的每一个项目,进行以下步骤:
(1)R1路由表中若没有Net3,则把该项目填入R1路由表
(2)R1路由表中若有Net3,则查看下一跳路由器地址:
若下一跳是X,则用收到的项目替换源路由表中的项目
若下一跳不是X,原来距离比从X走的距离远则更新,否则不作处理。
3.若180s还没收到相邻路由器X的更新路由表,则把X记为不可达的路由器,即把距离设置为16。
4,返回
RIP报文:
首部部分:
命令字段:占 1 字节,用于指示报文的类型。常见取值有 1 和 2 ,1 表示请求报文,用于向相邻路由器请求其路由表信息;2 表示响应报文,用于向请求方或其他路由器发送路由信息。
版本字段:占 1 字节,标识 RIP 协议的版本,目前常用版本为 RIP v2,相比 RIP v1,它支持更多的功能,如子网掩码、认证等。
必须为 0 字段:占 2 字节,该字段在 RIP 报文中必须设置为 0,保留未用。
路由部分:
地址族标识符):占 2 字节,用于标识网络地址的类型,常见值为 2,表示 IP 地址。如果是 0xFFFF,则表示该路由条目用于宣告默认路由。
路由标记:占 2 字节,在 RIP v2 中可用于区分不同来源的路由,比如在引入外部路由时可设置特定的标记。
IP 地址:占 4 字节,指明该路由条目所对应的目的网络的 IP 地址。
子网掩码:占 4 字节,用于指定目的网络的子网掩码,在 RIP v1 中,该字段通常被忽略,因为 RIP v1 不支持可变长子网掩码。
下一跳:占 4 字节,指出去往目的网络的下一跳路由器的 IP 地址。如果该字段为 0.0.0.0,则表示下一跳就是发送该 RIP 报文的路由器。
度量值:占 4 字节,用于表示到达目的网络的距离,RIP 使用跳数作为度量值,取值范围为 1 到 15,16 表示目的网络不可达。
一个报文最多出线25个,RIP报文会塞入到UDP报文的用户数据部分
慢收敛:因为故障导致的路由器自己找不到自己的情况
OSPF协议:
结合SPF算法计的一个协议
基本原理
1.链路状态的感知与通告:OSPF 路由器会收集其周围网络的链路状态信息,包括与哪些路由器相连、链路的带宽、延迟等特性。每台路由器将这些信息封装成链路状态通告LSA,并向自治系统内的其他所有路由器进行泛洪。(广播)
2.构建链路状态数据库(LSDB):每台路由器接收来自其他路由器的 LSA 后,会将其存储在本地的链路状态数据库中。这个数据库实际上是对整个自治系统网络拓扑的完整映射。所有路由器的 LSDB 在稳定状态下应该是一致的.
3.最短路径计算:路由器基于 LSDB,使用 Dijkstra 算法来计算到达每个目的网络的最短路径。以自身为根节点,计算到其他所有节点的最短路径,从而构建出路由表。比如,在一个复杂的网络拓扑中,路由器通过 Dijkstra 算法找到前往各个子网的最优路径,并将这些路径信息添加到路由表中。
只有当链路发生变化后,才会交换信息
算法过程:
1,知道有哪些邻居(发现邻居节点,[HELLO]问候分组,其网络地址)
2,设置和邻居之间的距离
3,构造[DD数据库描述分组],向邻居发送自己的链路状态项目的信息
4 如果无需更新,就不做处理;如果需要更新or自己没有这些节点信息,就会发送[LSR链路状态请求分组],请求更新
5,收到[LSR链路状态请求分组],会发送对应的[LSU链路状态更新分组]
6,更新完毕就要返回确认信息[LSAck链路状态确认分组]
7,Dji更新自己这个节点到其他节点的最短路
当一个路由器的链路状态发生变化,就会
1,泛洪发送[LSU链路状态更新分组]让邻居进行更新
2,其他的节点返回[LSAck链路状态确认分组]
3,Dji更新
OSPF的区域:虽然是自治系统,但是OSPF会对自己这个区域进行划分,一个区域中最多200个
区域分为主干区域(0.0.0.0)和其他区域
路由器的划分:
1.主干路由器,在主干区域的路由器
2.区域边界路由器
(主干路由器和其他区域连接的既是主干路由器,也是区域边界路由器)
3,区域内部路由器
4,自治系统边界路由器,和其他自治系统连接的路由器
OSPF的分组时靠IP数据报发送的
其他特点:
1.每隔30min,要刷新一次数据库中的链路状态。
2.由于一个路由器的链路状态只涉及到与相邻路由器的连通状态,因s而与整个互联网的规模并无直接关系。因此当互联网规模很大时,OSPF协议要比距离向量协议 RIP好得多。
3.OSPF不存在坏消息传的慢的问题,它的收敛速度很快
BGP协议:
1.和其他的AS邻站发言人交换信息
2.交换的信息是网络可达性的信息:
BGP所交换的网络可达性的信息就是要到达某个网络所要经过的一系列AS。当 BGP 发言人互相交换了网络可达性的信息后,各 BGP发言人就根据所采用的策略从收到的路由信息中找出到达各 AS 的较好路由。(也就是交换的路径向量)
3.网络发生变化的时候交换信息
一个BGP发言人要与其他自治系统交换信息的时候要先建立TCP连接.通过TCP传送,在TCP连接上交换BGP报文来建立一个BGP会话,利用BGP会话交换信息
BGP特点
1,BGP 支持 CIDR,因此 BGP的路由表也就应当包括目的网络前缀、下一跳路由器,以及到达该目的网络所要经过的各个自治系统序列。
2,在 BGP刚刚运行时,BGP的邻站是交换整个的 BGP路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销都有好处。
BGP -4的四种报文
1.OPEN(打开)报文:用来与相邻的另一个BGP发言人建立关系,并认证发送方。
2.UPDATE(更新)报文:通告新路径或撤销原路径。
3.KEEPALIVE(保活)报文:在无UPDATE时,周期性证实邻站的连通性;也作为OPEN的确认。
4.NOTIFICATION(通知)报文:报告先前报文的差错:也被用于关闭连接。
三种协议的总结:
RIP是一种分布式的基于距离向量的内部网关路由选择协议,通过广播UDP报文来交换路由信息。
OSPF是一个内部网关协议,要交换的信息量较大,应使报文的长度尽量短,所以不使用传输层协议(如UDP或TCP),而是直接采用IP.
BGP是一个外部网关协议,在不同的自治系统之间交换路由信息,由于网络环境复杂,需要保证可靠传输,所以采用TCP。
相关文章:
计算机网络 笔记 网络层1
网络层功能概述 主要的任务是把分组从源端传输到目的端,为分组交换网上的不同主句提供通信服务,网络层的传输单位是数据报。 主要的功能; 1,路由选择:路由选择指网络层根据特定算法,为数据包从源节点到目…...
【论文笔记】多个大规模数据集上的SOTA绝对位姿回归方法:Reloc3r
abstract 视觉定位旨在确定查询图像相对于姿势图像数据库的相机姿势。 近年来,直接回归相机姿势的深度神经网络由于其快速推理能力而受到欢迎。 然而,现有方法很难很好地推广到新场景或提供准确的相机姿态估计。 为了解决这些问题,我们提出了…...
springMVC---常用注解
目录 一、创建项目 1.依赖 2.web.xml 3.spring-mvc.xml 二、RequestParam注解 1.作用 2.属性 3.代码 DeptController类 启动tomcat 三、RequestBody注解 1.作用 2.属性 3.代码 (1)DeptController类 (2)index.jsp (3)启动tomcat 四、P…...
青龙面板脚本开发指南:高效自动化任务的实现
青龙面板脚本开发指南:高效自动化任务的实现 青龙面板(Qinglong Panel)是一款强大的任务管理平台,支持多种语言的脚本开发和执行。通过在青龙面板中编写和管理脚本,用户可以轻松实现自动化任务,提高工作效…...
深入详解DICOM医学影像定位线相关知识:理解定位线的概念、定位线的作用以及定位线显示和计算原理
DICOM医学影像中的定位线(Localization Line) 在医学影像学中,DICOM是用于存储和交换医学影像的标准格式。定位线(Localization Line)在医学影像的显示和分析中起着重要作用,它帮助医生和医学专业人员在影像中精确地标定重要的解剖结构、区域或特征,辅助进行定位、治疗计…...
网络应用技术 实验七:实现无线局域网
一、实验简介 在 eNSP 中构建无线局域网,并实现全网移动终端互相通信。 二、实验目的 1 、理解无线局域网的工作原理; 2 、熟悉无线局域网的规划与构建过程; 3 、掌握无线局域网的配置方法; 三、实验学时 2 学时 四、实…...
kubeneters-循序渐进Cilium网络(一)
文章目录 概要传统网络不同的网络(或子网)之间通信Kubernetes 中的网络在同一栋大楼内的公寓之间通信跨大楼的通信总结 概要 本文通过“封包追踪”方法,深入解析 Kubernetes 网络通信过程。基于 eBPF 的 Cilium 工具,直观展示了数…...
elasticsearch中IK分词器
1、什么是IK分词器 ElasticSearch 几种常用分词器如下: 分词器分词方式StandardAnalyzer单字分词CJKAnalyzer二分法IKAnalyzer词库分词 分词∶即把一段中文或者别的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,会把数据库…...
Qt之http客户端类
一、HTTP客户端类功能: 1、POST请求发送: 支持发送JSON格式的数据自动处理请求头设置提供上传进度监控、 2、GET请求发送: 简单的GET请求实现支持下载进度监控 3、状态监控: 通过信号槽机制监控上传/下载进度错误处理和状态回调 /…...
18.C语言文件操作详解:指针、打开、读取与写入
目录 1.文件指针2.fopen3.标准流4.fclose5.EOF6.freopen()7.fgetc与getc8. fputc与putc9.fprintf10.fscanf11.fgets12.fputs13.fwrite14.fread15.feof16.fseek17.ftell18.rewind19.fgetpos()与fsetpos20.ferror与clearerr21.remove22.rename 1.文件指针 本篇原文为:…...
深入浅出 OpenResty
1. 引言 1.1. OpenResty简介 OpenResty 是一个基于 Nginx 的高性能 Web 平台,它集成了大量模块,并原生支持 Lua 脚本。这使得开发者能够以非常灵活的方式实现复杂的逻辑,而无需重新编译或扩展 Nginx 核心。OpenResty 的主要特点包括&#x…...
在 .NET 9 中使用 Scalar 替代 Swagger
前言 在.NET 9发布以后ASP.NET Core官方团队发布公告已经将Swashbuckle.AspNetCore(一个为ASP.NET Core API提供Swagger工具的项目)从ASP.NET Core Web API模板中移除,这意味着以后我们创建Web API项目的时候不会再自动生成Swagger API文档了…...
ue5 蒙太奇,即上半身动画和下半身组合在一起,并使用。学习b站库得科技
本文核心 正常跑步动画端枪动画跑起来也端枪 正常跑步动画 端枪动画的上半身 跑起来也端枪 三步走: 第一步制作动画蒙太奇和插槽 第二步动画蓝图选择使用上半身动画还是全身动画,将上半身端枪和下半身走路结合 第三步使用动画蒙太奇 1.开始把&a…...
多活架构的实现原理与应用场景解析
一、多活架构为何如此重要? 企业的业务运营与各类线上服务紧密相连,从日常的购物消费、社交娱乐,到金融交易、在线教育等关键领域,无一不依赖于稳定可靠的信息系统。多活架构的重要性愈发凸显,它宛如一位忠诚的卫士,为业务的平稳运行保驾护航。 回想那些因系统故障引发的…...
一 rk3568 Android 11固件开发环境搭建 (docker)
一 目标 搭建 rk3568 android 系统内核 及固件开发编译调试环境, 支持开发环境导出分享 基于荣品 rk3568 核心板 系统环境: ubuntu22.04 /ubuntu20.04 64位桌面版 编译环境: docker + ubuntu20.04 , 独立的容器隔离环境,不受系统库版本冲突等影响,无性能损耗, 可…...
小结:华为路由器常用的操作指令
以下是华为路由器常用的操作指令(适用于华为企业级路由器,基于VRP操作系统): 1. 基本操作命令 进入用户视图模式 <Huawei> (默认进入用户视图) 进入系统视图模式 <Huawei> system-view [Huawe…...
旅游网站设计与实现
文末附有完整项目代码 在当今数字化时代,旅游网站成为人们获取旅游信息的重要途径。本文将详细介绍旅游网站的设计与实现,让你轻松了解其中的技术奥秘! 一、项目背景 随着社会经济的发展,人们对精神消费愈发重视,旅游…...
【AI大模型】BERT GPT ELMo模型的对比
目录 🍔 BERT, GPT, ELMo之间的不同点 🍔 BERT, GPT, ELMo各自的优点和缺点 🍔 小结 学习目标 理解BERT, GPT, ELMo相互间的不同点理解BERT, GPT, ELMo相互比较下的各自优点和缺点 🍔 BERT, GPT, ELMo之间的不同点 关于特征提取…...
qt 快捷功能 快速生成 setter getter 构造函数 父类虚函数重写 成员函数实现 代码框架 查看父类及父类中的虚函数
qt 快速生成 setter getter 构造函数 父类虚函数重写 成员函数实现 代码框架 1、找到要实现的头文件 2、鼠标移动到在头文件中的类定义的类名上,右键进行选择。 这是插入父类虚函数(父类虚函数重写) 选项弹出来的结果。可以查看到所有父类及父类中的所有的虚函数...
【计算机网络】深入浅出计算机网络
第一章 计算机网络在信息时代的作用 计算机网络已由一种通信基础设施发展成一种重要的信息服务基础设施 CNNIC 中国互联网网络信息中心 因特网概述 网络、互联网和因特网 网络(Network)由若干结点(Node)和连接这些结点的链路…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
【分享】推荐一些办公小工具
1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由:大部分的转换软件需要收费,要么功能不齐全,而开会员又用不了几次浪费钱,借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...
全面解析数据库:从基础概念到前沿应用
在数字化时代,数据已成为企业和社会发展的核心资产,而数据库作为存储、管理和处理数据的关键工具,在各个领域发挥着举足轻重的作用。从电商平台的商品信息管理,到社交网络的用户数据存储,再到金融行业的交易记录处理&a…...
