网络层协议及IP编址与IP路由基础华为ICT网络赛道
目录
4.网络层协议及IP编址
4.1.网络层协议
4.2.IPv4地址介绍
4.3.子网划分
4.4.ICMP协议
4.5.IPv4地址配置及基本应用
5.IP路由基础
5.1.路由概述
5.2.静态路由
5.3.动态路由
5.4.路由高阶特性
4.网络层协议及IP编址
4.1.网络层协议
IPv4(Internet Protocol Version4)协议族是TCP/IP协议族中最为核心的协议族。它工作在TCP/IP协议栈的网络层,该层与OSI参考模型的网络层相对应。
网络层提供了无连接数据传输服务,即网络在发送数据报文时不需要先建立连接,每个IP数据报文独立发送。
网络层
网络层经常被称为IP层。但网络层协议并不只是IP协议,还包括ICMP(Internet Control Message Protocol)协议、IPX(Internet Packet Exchange)协议等。
IP协议
IP是Internet Protoc的缩写。Internet Protocol本身是一个协议文件的名称,该协议文件的内容非常少,主要是定义并阐述了IP报文的格式。
经常被提及的IP,一般不是特指Internet Protocol这个协议文件本身,而是泛指直接或间接与IP协议相关的任何内容。
数据封装
IPv报文格式
数据包分片
将报文分割成多个片段的过程叫做分片。
网络中转发的IP报文的长度可以不同,但如果报文长度超过了数据链路所支持的最大长度,则报文就需要分割成若干个较小的片段才能够在链路上传输。
4.2.IPv4地址介绍
IP地址在网络中用于标识一个节点(或者网络设备的接口)。
IP地址用于IP报文在网络中的寻址。
一个IPv4地址符32bit。
IPv4地址通常采用“点分十进制”表示。
IP地址寻址
网络部分:用来标识一父网络,代表P地址所属网络。
主机部分:用来区分一个网络内的不同主机,能唯一标识网段上的某台设备。
IP地址分类(有类编址)
我们通常把一个网络号所定义的网络范围称为一个网段
网络地址:更于标识一个网络。
广播地址:用于向该网络中的所有主机发送数据的特殊地址。
可用地址:可分配给网络中的节点或网络设备接口的地址。
IP地址计算
私网IP地址
特殊IP地址
IPv4 vs IPv6
由全球IP地址分配机构,IANA(Internet Assigned Numbers Authority)管理的IPv4地址,于2011年完全用尽。随着最后一个IPv4公网地址分配完毕,加上接入公网的用户及设备越来越多,IPv4地址枯竭的问题日益严重,这是当前IPv6替代IPv4的最大源动力。
4.3.子网划分
原网段分析
向主机借位
计算子网广播地址
4.4.ICMP协议
Internet控制消息协议ICMP(Internet Control Message Protocol)是IP协议的辅助协议
ICMP重定向
ICP重定向报文是ICMP控制报文中的一种。在特定的情况下,当路由器检测到一台机器使用非最优路由的时候,它会向该主机发送一个ICMP重定向报文,请求主机改变路由。
ICMP差错检测
ICMP Echo消息常用于诊断源和目的地之间的网络连通性,同时还可以提供其他信息,如报文往返时间等。
ICMP错误报告
ICP定义了各种错误消息,用于诊断网络连接性问题;根据这些错误消息,源设备可以判断出数据传输失败的原因。如:当网络设备无法访问目标网络时,会自动发送ICP目的不可达报文到发送端设备。
4.5.IPv4地址配置及基本应用
IP地址的基础配置命令
网络IP地址规划
P地址规划要和网络结构、路由协议、流量规划、业务规则等结合起来考虑。P地址的规划应尽可能和网络层次相对应,应该是自顶向下的一种规划。
总得来说:IP地址规划的目标是:易管理、易扩展、利用率高。
参考规划原则:
唯一性、连续性、扩展性结构化、业务相关性。
在IP网络上,如果用户要将一台计算机连接到Internet.上,就需要向因特网服务提供方ISP(Internet Service Provider)申请一个IP地址。
5.IP路由基础
5.1.路由概述
在一个典型的数据通信网络中,往往存在多个不同的IP网段,数据在不同的P网段之间交互是需要借助三层设备的,这些设备具备路由能力,能够实现数据的跨网段转发。
路由是数据通信网络中最基本的要素。路由信息是指导报文转发的路径信息,路由过程就是报文转发的过程。
网段间通信
路由
路由是指导报文转发的路径信息,通过路由可以确认转发IP报文的路径。
路由设备是依据路由转发报文到目的网段的网络设备,最常见的路由设备:路由器。
路由设备维护着一张路由表,保存着路由信息。
路由信息介绍
路由表
直连路由
直连路由指向本地直连网络的路由,由设备自动生成。
当路由器为路由转发的最后一跳路由器时,IP报文匹配直连路由,路由器转发IP报文到目的主机。
使用直连路由进行路由转发时,报文的目的IP和路由器接口IP在一个网段之中。
并不是所有接口生成的直连路由都会出现在路由表中,直连路由出现在路由表中的前提是该接口的物理状态、协议状态都为UP。
查看IP路由表
display ip routing-table
每一个路由都有相应的网段、下一跳和初接端口
路由表中各个内容的含义
Destination/Mask 表示此路由的目的网络地址与网络掩码。将目的地址和子网掩码“逻辑与”后可得到目的主机或路由器所在网段的地址。例如:目的地址为1.1.1.1,掩码为255.255.255.0的主机或路由器所在网段的地址为1.1.1.0。
Proto(Protocol):该路由的协议类型,也即路由器是通过什么协议获知该路由的。
Pre(Preference):表示此路由的路由协议优先级。针对同一目的地,可能存在不同下一跳、出接口等多条路由,这些不同的路由可能是由不同的路由协议发现的,也可以是手工配置的静态路由。优先级最高(数值最小)者将成为当前的最优路由。
Cost:路由开销。当到达同一目的地的多条路由具有相同的路由优先级时,路由开销最小的将成为当前的最优路由。
NextHop:表示对于本路由器而言,到达该路由指向的目的网络的下一跳地址。该字段指明了数据转发的下一个设备。
Interface:表示此路由的出接口。指明数据将从本路由器的哪个接口转发出去。
路由优先级 - 基本概念
-
当路由器从多种不同的途径获知到达同一个目的网段的路由(这些路由的目的网络地址及网络掩码均相同)时,路由器会比较这些路出的优先级,优先级值最小的路由。
-
路由来源的优先级值(Preference)越小代表加入路由表的优先级越高。
-
拥有最高优先级的路由将被添加进路由表。
路由度量值表示到达这条路由所指目的地址的代价。
一些常用的度量值有:跳数、带宽、时延、代价、负载、可靠性等。
度量值数值越小越优先,度量值最小路由将会被添加到路由表中。
度量值很多候被称为开销(Cost)。
最长匹配原则
当路由器收到一个P数据包时,会将数据包的目的P地址与自己本地路由表中的所有路由表项进行逐位(Bit-By-Bit)比对,直到找到匹配度最长的条目,这就是最长前缀匹配机制。
当路由器从多种不同的途径获知到达同一个目的网段的路由(这些路由的目的网络地址及网络掩码均相同)时,会选择路由优先级值最小的路由:如果这些路由亭习自相同的路由协议,则优选度量值最优的。总之,最优的路由加入路由表。
当路由器收到一个数据包时,会在自己的路由表中查询数据包的目的P地址。如果能够找到匹配的路表项,则依据表项所指示的出接口及下一跳来转发数据:如果没有匹配的表项,则丢弃该数据包。
路由器的行为是逐跳的,数据包从源到目的地沿路径每个路由器都必须有关于目标网段的路由,否则就会造成丢包。
数据通信往往是双向的,因此要关注流量的往返(往返路由)。
5.2.静态路由
静态路由由网络管理员手动配置,配置方便,对系统要求低,适用于拓扑结构简单并且稳定的小型网络。
缺点是不能自动适应网络拓扑的变化,需要人工干预。
RTA上转发目的地址属于20.1.1.0/24的报文,在只有直连路由的情况下没有路由匹配。此时可以通过手动配置静态路由,使RTA发送前往20.1.1.0/24网段的报文交给下一跳10.0.0.2转发。
静态路由配置
在创建静态路由时,可以同时指定出接口和下一跳。对于不同的出接口类型,也可以只指定出接口或只指定下一跳。
对于点到点接口(如串口),必须指定出接口。
对于广接口(如以太网接口)和VT(Virtual-template)接口,必须指定下一跳。
缺省路由
缺省路由是一种特殊的路由,当报文没有在路由表中找到匹配的具体路由表项时才使用的路由。如果报文的目的地址不能与路由表的任何耳的地址相匹配,那么该报文将选取缺省路由进行转发。
缺省路由在路由表中的形式均0.0.0.0/0,缺省路由也被叫做默认路由。
5.3.动态路由
动态路由概述
动态路由分类
5.4.路由高阶特性
路由递归
路由必须有直连的下一跳才能够指导转发,但是路由生成时下一跳可能不是直连的,因此需要计算出一个直连的下一跳和对应的出接口,这个过程就叫做路由递归。
路由递归也被称为路由迭代。
等价路由
浮动路由
静态路由支持配置时手动指定优先级,可以通过配置目的地址/掩码相同、优先级不同、下一跳不同的静态路由,实现转发路径的备份。
浮动路由是主用路由的备份,保证链路故障时提供备份路由。主用路由下一跳可达时该备份路由不会出现在路由表。
相关文章:
网络层协议及IP编址与IP路由基础华为ICT网络赛道
目录 4.网络层协议及IP编址 4.1.网络层协议 4.2.IPv4地址介绍 4.3.子网划分 4.4.ICMP协议 4.5.IPv4地址配置及基本应用 5.IP路由基础 5.1.路由概述 5.2.静态路由 5.3.动态路由 5.4.路由高阶特性 4.网络层协议及IP编址 4.1.网络层协议 IPv4(Internet Protocol Versi…...
基于stm32f4的蓝牙控制小车
1. 引言 蓝牙的创始人是瑞典爱立信公司,蓝牙技术是一种无限数据与语音通信的开放性全球规范,它以低成本的近距离无线连接为基础,为固定与移动设备通信环境建立一个特别连接。手机之间通过蓝牙实现数据共享成为常理,将手机变为遥…...
基于BP神经网络的租金预测
目录 摘要 BP神经网络参数设置及各种函数选择 参数设置 训练函数 传递函数 学习函数 性能函数 显示函数 前向网络创建函数 BP神经网络训练窗口详解 训练窗口例样 训练窗口四部详解 基于BP神经网络的租金预测 代码下载:基于BP神经网络的租金预测(代码完整,数据齐全)资源-CS…...
C语言学习记录—进阶作业(通讯录文件版本)
通讯录 1. 添加一个函数,在退出通讯录的时候把信息到保存到文件中 2. 添加一个函数,在通讯录打开的时候,可以把文件中的信息加载到通讯录中 contact.h文件 #pragma once #include <string.h> #include <stdio.h> #include <…...
深度学习笔记(四)——TF2构建基础网络常用函数+简单ML分类网络实现
文中程序以Tensorflow-2.6.0为例 部分概念包含笔者个人理解,如有遗漏或错误,欢迎评论或私信指正。 截图和程序部分引用自北京大学机器学习公开课 TF2基础常用函数 1、张量处理类 强制数据类型转换: a1 tf.constant([1,2,3], dtypetf.floa…...
GPT function calling v2
原文:GPT function calling v2 - 知乎 OpenAI在2023年11月10号举行了第一次开发者大会(OpenAI DevDays),其中介绍了很多新奇有趣的新功能和新应用,而且更新了一波GPT的API,在1.0版本后的API调用与之前的0.…...
【Golang】IEEE754标准二进制字符串转为浮点类型
IEEE754介绍 IEEE 754是一种标准,用于表示和执行浮点数运算的方法。在这个标准中,单精度浮点数使用32位二进制表示,分为三个部分:符号位、指数位和尾数位。 符号位(s)用一个位来表示数的正负,0表示正数,1表…...
【开源项目】轻量元数据管理解决方案——Marquez
大家好,我是独孤风。 又到了本周的开源项目推荐。最近推荐的元数据管理项目很多,但是很多元数据管理平台的功能复杂难用。 那么有没有轻量一点的元数据管理项目呢? 今天为大家推荐的开源项目,就是一个轻量级的元数据管理工具。虽然…...
dirty file page
转自:https://www.cnblogs.com/zhiminyu/p/17330763.html 0.前言 Linux 内核Page Cache 和Buffer Cache 关系及演化历史 一文中讲过Linux 2.4之后将Page Cache和Buffer Cache 进行了融合,在buffer_head 中添加了b_page,很容易就能找到缓存的…...
HTAP(Hybrid Transactional/Analytical Processing)系统之统一存储的实时之道
文章目录 HTAP与时俱进LASER中的存储关键知识LSM(Log-Structured Merge Tree)SkipList(跳表)CDC(Changed Data Capture)SST(Sorted Sequence Table) 特性列组(Column Gro…...
【linux】tcpdump 使用
tcpdump 是一个强大的网络分析工具,可以在 UNIX 和类 UNIX 系统上使用,用于捕获和分析网络流量。它允许用户截取和显示发送或接收过网络的 TCP/IP 和其他数据包。 一、安装 tcpdump 通常是默认安装在大多数 Linux 发行版中的。如果未安装,可…...
数字图像处理常用算法的原理和代码实现详解
本专栏详细地分析了常用图像处理算法的数学原理、实现步骤。配有matlab或C实现代码,并对代码进行了详细的注释。最后,对算法的效果进行了测试。相信通过这个专栏,你可以对这些算法的原理及实现有深入的理解! 如有疑问…...
Pandas实战100例 | 案例 26: 检测异常值
案例 26: 检测异常值 知识点讲解 在数据分析中,检测和处理异常值(或离群值)是一个重要的步骤。异常值可能会影响数据的整体分析。一种常用的方法是使用四分位数和四分位数间距(IQR)来识别异常值。 四分位数和 IQR: …...
C语言学习NO.11-字符函数strlen,strlen函数的使用,与三种strlen函数的模拟实现
(一)strlen函数的使用 strlen函数的演示 #include <stdio.h> #include <string.h>int main() {char arr1[] "abcdef";char arr2[] "good";printf("arr1 %d,arr2 %d",strlen(arr1),strlen(arr2));return …...
Vue3+ts获取props的值并且定义props值的类型的方法。
1.引入withDefaults模块,给defineProps绑定默认值。 import { withDefaults } from vue2.定义Props传输值的类型。 interface Props {// 类型type: string;name: string;id: number; }3.给props的值设置默认值。 const props withDefaults(defineProps<Prop…...
EasyExcel 不使用科学计数发并以千分位展示
EasyExcel 不使用科学计数发并以千分位展示 不使用科学计数法 不使用科学计数法 BigDecimalStringConverter 将 BigDecimal 类型的数值转换为字符串类型,并将其导出到 Excel 文件中。在 convertToExcelData 方法中,我们将 BigDecimal 转换为字符串&…...
【Python机器学习】SVM——调参
下面是支持向量机一个二维二分类数据集的训练结果: import mglearn import matplotlib.pyplot as plt from sklearn.svm import SVCplt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False X,ymglearn.tools.make_handcrafted_dataset()…...
网络传输(TCP)
前言 我们tcpdump抓包时会看到除报文数据外,前面还有一段其他的数据,这段数据分为两部分,ip包头(一般20字节)和tcp包头(一般20字节),一般这两个头长度和为40,我们直接跳…...
MFC模拟消息发送,自定义以及系统消息
在MFC框架下,有很多系统已经定义好的消息,例如ON_WM_LBUTTONDOWN()、ON_WM_MBUTTONDOWN()等等。我们在使用的时候只需要声明并调用就可以了,最简单的用法。 提升了一点难度的用法就是自己设置自定义消息,再提升一点难度的就是如何…...
并发,并行,线程与UI操作
并行和并发是计算机领域中两个相关但不同的概念。 并行(Parallel)指的是同时执行多个任务或操作,它依赖于具有多个处理单元的系统。在并行计算中,任务被分成多个子任务,并且这些子任务可以同时在不同的处理单元上执行…...
react 6种方式编写样式
在React中,编写样式主要有以下几种方式: 1. 内联样式: 直接在React组件中使用style属性来定义样式。这种方式比较适合定义动态的样式,因为它允许你将JavaScript表达式作为样式的值。 2. 外部样式表 :通过创建外部的…...
计算机找不到msvcr100.dll的多种解决方法分享,轻松解决dll问题
msvcr100.dll作为系统运行过程中不可或缺的一部分,它的主要功能在于提供必要的运行时支持,确保相关应用程序能够顺利完成编译和执行。因此,当操作系统或应用程序在运行阶段搜索不到该文件时,自然会导致各类依赖于它的代码无法正常…...
系分笔记数据库反规范化、SQL语句和大数据
文章目录 1、概要2、反规范化3、大数据4、SQL语句5、总结 1、概要 数据库设计是考试重点,常考和必考内容,本篇主要记录了知识点:反规范化、SQL语句及大数据。 2、反规范化 数据库遵循范式的设计,使得多表查询和连接表查询较多的时…...
php实现支付宝商户转账
目录 一:背景介绍 一:准备工作 三:代码实现 一:背景介绍 最近工作中,要用到支付宝的商家转账功能,用php代码实现,网上找的内容,有些是老版本的实现,有些是调用sdk&am…...
并发编程(十一)
性能测试的常用命令 1、Netstat是在内核中访问网络连接状态及其相关信息的程序,它能够显示协议统计和当前TCP/IP的网络连接。 Netstat命令的常用格式如下: netstat -a:显示所有网络连接和侦听端口。 netstat -b:显示在创建网络…...
vue3 指令详解
系列文章目录 TypeScript 从入门到进阶专栏 文章目录 系列文章目录前言一、v-model (双向绑定功能)二、v-bind(用于将一个或多个属性绑定到元素的属性或组件的 prop)三、v-if、v-else、v-else-if(用于根据条件选择性地渲染元素)四、v-show(根…...
数据科学竞赛平台推荐
✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。 🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心&…...
安全防御之安全审计技术
安全防御中的安全审计技术是保障信息系统安全的重要手段之一。其主要目标是对信息系统及其活动进行记录、审查和评估,以确保系统符合安全策略、法规要求,并能够及时发现潜在的安全风险和异常行为。通过安全审计,可以对系统中的各种活动进行记…...
C#多窗口那些事儿
目录 1、调用窗体与被调用窗体 2、窗体的本质 3、调用窗体访问被调用窗体内部对象 4、被调用窗体访问调用窗体 (1)被动方式,也就是调用窗体主动给被调用窗体一个“接口” i.调用窗体定义“静态”变量,并将开放的变量复制 ii.在被调用窗体中,使用:调用窗体名.静态变…...
记一次 Redis 数据库迁移
笔者通过一个 Redis 数据库迁移的例子,介绍了迁移脚本的执行思路。 作者:马文斌,MySQL/Redis 爱好者~ 爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 本文约 500 字,预计阅…...
做淘宝客网站要备案吗/seo高级优化技巧
1、 Float1、 浮动的定义Float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。CSS 的 Float(浮动)使元素脱…...
电子元器件外贸网站建设/网页设计首页制作
转载于:https://blog.51cto.com/dl5174887/1586335...
广州公司建设网站/做网络推广怎么收费
为什么其他人都是插值套插值啊,,,,就我是XJB做的吗2333 k次多项式的前缀和可以表示成k1次多项式,用两次这个玩意就可以发现g可以表示成一个k2次多项式。 然后我的做法是把g用拉格朗日插值暴力多项式乘法乘出来…...
dedecms网站后台管理系统/国家免费技能培训平台
Apache http安装 下载地址Apache Haus Downloads 选择自己系统的Apache版本下载安装。 1. 设置根目录或端口 1.1 进入zip解压后的目录,打开conf目录下的httpd.conf文件; 1.2 修改目录: Define SRVROOT "/Apache24"; 修改主配置文件&…...
网站建设 成都/免费推广产品的网站
大家都知道,少林寺有七十二项绝技,每个绝技都很厉害。 可以设想某通天彻地的武林盟主克隆了一个少林寺出来,要原始少林寺和克隆少林寺之间来比这七十二项绝技,两家都好不容易网罗了72个练武奇才,同时开始连这七十二…...
兴义做网站的公司/网络营销做得好的公司
本文以tokio为例简单介绍Rust异步编程相关的一些知识。首先让我们看看为什么使用rust来进行异步编程。这里tokio官方给出了一个性能测试的对比,可以看到tokio是性能最好,实际上运行这个基准测试的时候,tokio性能更好的2.0版本尚未发布&#x…...