网络层协议及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)协议等。

1699371815564

IP协议

IP是Internet Protoc的缩写。Internet Protocol本身是一个协议文件的名称,该协议文件的内容非常少,主要是定义并阐述了IP报文的格式。

经常被提及的IP,一般不是特指Internet Protocol这个协议文件本身,而是泛指直接或间接与IP协议相关的任何内容。

1699371959666

数据封装

1699372345744

IPv报文格式

1699372908412

数据包分片

将报文分割成多个片段的过程叫做分片。

网络中转发的IP报文的长度可以不同,但如果报文长度超过了数据链路所支持的最大长度,则报文就需要分割成若干个较小的片段才能够在链路上传输。

1699373035608

4.2.IPv4地址介绍

IP地址在网络中用于标识一个节点(或者网络设备的接口)。

IP地址用于IP报文在网络中的寻址。

1699373513404

一个IPv4地址符32bit。

IPv4地址通常采用“点分十进制”表示。

IP地址寻址

网络部分:用来标识一父网络,代表P地址所属网络。

主机部分:用来区分一个网络内的不同主机,能唯一标识网段上的某台设备。

IP地址分类(有类编址)

1699374157175

1699374476141

我们通常把一个网络号所定义的网络范围称为一个网段

网络地址:更于标识一个网络。

广播地址:用于向该网络中的所有主机发送数据的特殊地址。

可用地址:可分配给网络中的节点或网络设备接口的地址。

IP地址计算

1699376324794

私网IP地址

1699376524284

特殊IP地址

1699376840361

IPv4 vs IPv6

由全球IP地址分配机构,IANA(Internet Assigned Numbers Authority)管理的IPv4地址,于2011年完全用尽。随着最后一个IPv4公网地址分配完毕,加上接入公网的用户及设备越来越多,IPv4地址枯竭的问题日益严重,这是当前IPv6替代IPv4的最大源动力。

4.3.子网划分

1699377795515

原网段分析

1699378462651

向主机借位

1699378619945

计算子网广播地址

1699379059811

4.4.ICMP协议

Internet控制消息协议ICMP(Internet Control Message Protocol)是IP协议的辅助协议

1699404260609

ICMP重定向

ICP重定向报文是ICMP控制报文中的一种。在特定的情况下,当路由器检测到一台机器使用非最优路由的时候,它会向该主机发送一个ICMP重定向报文,请求主机改变路由。

1699404631960

ICMP差错检测

ICMP Echo消息常用于诊断源和目的地之间的网络连通性,同时还可以提供其他信息,如报文往返时间等。

1699404742543

ICMP错误报告

ICP定义了各种错误消息,用于诊断网络连接性问题;根据这些错误消息,源设备可以判断出数据传输失败的原因。如:当网络设备无法访问目标网络时,会自动发送ICP目的不可达报文到发送端设备。

1699404884052

4.5.IPv4地址配置及基本应用

IP地址的基础配置命令

1699405133656

网络IP地址规划

P地址规划要和网络结构、路由协议、流量规划、业务规则等结合起来考虑。P地址的规划应尽可能和网络层次相对应,应该是自顶向下的一种规划。

总得来说:IP地址规划的目标是:易管理、易扩展、利用率高。

参考规划原则

唯一性、连续性、扩展性结构化、业务相关性。

1699405741446

在IP网络上,如果用户要将一台计算机连接到Internet.上,就需要向因特网服务提供方ISP(Internet Service Provider)申请一个IP地址。

5.IP路由基础

5.1.路由概述

在一个典型的数据通信网络中,往往存在多个不同的IP网段,数据在不同的P网段之间交互是需要借助三层设备的,这些设备具备路由能力,能够实现数据的跨网段转发。

路由是数据通信网络中最基本的要素。路由信息是指导报文转发的路径信息,路由过程就是报文转发的过程。

网段间通信

1699406114471

路由

路由是指导报文转发的路径信息,通过路由可以确认转发IP报文的路径。

路由设备是依据路由转发报文到目的网段的网络设备,最常见的路由设备:路由器。

路由设备维护着一张路由表,保存着路由信息。

1699407197557

路由信息介绍

1699407283103

路由表

1699407380832

直连路由

1699407722184

直连路由指向本地直连网络的路由,由设备自动生成。

当路由器为路由转发的最后一跳路由器时,IP报文匹配直连路由,路由器转发IP报文到目的主机。

使用直连路由进行路由转发时,报文的目的IP和路由器接口IP在一个网段之中。

1699407765746

并不是所有接口生成的直连路由都会出现在路由表中,直连路由出现在路由表中的前提是该接口的物理状态、协议状态都为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:表示此路由的出接口。指明数据将从本路由器的哪个接口转发出去。

路由优先级 - 基本概念

1699422459430

  1. 当路由器从多种不同的途径获知到达同一个目的网段的路由(这些路由的目的网络地址及网络掩码均相同)时,路由器会比较这些路出的优先级,优先级值最小的路由。

  2. 路由来源的优先级值(Preference)越小代表加入路由表的优先级越高。

  3. 拥有最高优先级的路由将被添加进路由表。

1699422575129

路由度量值表示到达这条路由所指目的地址的代价。

一些常用的度量值有:跳数、带宽、时延、代价、负载、可靠性等。

度量值数值越小越优先,度量值最小路由将会被添加到路由表中。

度量值很多候被称为开销(Cost)。

最长匹配原则

当路由器收到一个P数据包时,会将数据包的目的P地址与自己本地路由表中的所有路由表项进行逐位(Bit-By-Bit)比对,直到找到匹配度最长的条目,这就是最长前缀匹配机制。

1699422968926

当路由器从多种不同的途径获知到达同一个目的网段的路由(这些路由的目的网络地址及网络掩码均相同)时,会选择路由优先级值最小的路由:如果这些路由亭习自相同的路由协议,则优选度量值最优的。总之,最优的路由加入路由表。

当路由器收到一个数据包时,会在自己的路由表中查询数据包的目的P地址。如果能够找到匹配的路表项,则依据表项所指示的出接口及下一跳来转发数据:如果没有匹配的表项,则丢弃该数据包。

路由器的行为是逐跳的,数据包从源到目的地沿路径每个路由器都必须有关于目标网段的路由,否则就会造成丢包。

数据通信往往是双向的,因此要关注流量的往返(往返路由)。

5.2.静态路由

1699423592927

静态路由由网络管理员手动配置,配置方便,对系统要求低,适用于拓扑结构简单并且稳定的小型网络。

缺点是不能自动适应网络拓扑的变化,需要人工干预。

RTA上转发目的地址属于20.1.1.0/24的报文,在只有直连路由的情况下没有路由匹配。此时可以通过手动配置静态路由,使RTA发送前往20.1.1.0/24网段的报文交给下一跳10.0.0.2转发。

静态路由配置

在创建静态路由时,可以同时指定出接口和下一跳。对于不同的出接口类型,也可以只指定出接口或只指定下一跳。

对于点到点接口(如串口),必须指定出接口。

对于广接口(如以太网接口)和VT(Virtual-template)接口,必须指定下一跳。

缺省路由

缺省路由是一种特殊的路由,当报文没有在路由表中找到匹配的具体路由表项时才使用的路由。如果报文的目的地址不能与路由表的任何耳的地址相匹配,那么该报文将选取缺省路由进行转发。

缺省路由在路由表中的形式均0.0.0.0/0,缺省路由也被叫做默认路由。

1699423909442

5.3.动态路由

动态路由概述

1699424149938

动态路由分类

1699424109673

5.4.路由高阶特性

路由递归

路由必须有直连的下一跳才能够指导转发,但是路由生成时下一跳可能不是直连的,因此需要计算出一个直连的下一跳和对应的出接口,这个过程就叫做路由递归。

路由递归也被称为路由迭代。

1699424577473

等价路由

1699424956330

浮动路由

静态路由支持配置时手动指定优先级,可以通过配置目的地址/掩码相同、优先级不同、下一跳不同的静态路由,实现转发路径的备份。

浮动路由是主用路由的备份,保证链路故障时提供备份路由。主用路由下一跳可达时该备份路由不会出现在路由表。

1699425303989

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

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

相关文章

第二百六十二回

文章目录 概念介绍使用方法示例代码使用扩展 我们在上一章回中介绍了flutter_screenutil包相关的内容,本章回中将介绍dart中的setter/getter方法.闲话休提,让我们一起Talk Flutter吧。 概念介绍 我们在这里介绍的setter/getter方法属于编程语言中的知识…

Android MediaCodec 简明教程(一):使用 MediaCodecList 查询 Codec 信息,并创建 MediaCodec 编解码器

系列文章目录 文章目录 系列文章目录前言一、MediaCodecList 是什么?二、MediaCodecList 使用方法1. 获取 MediaCodecList 实例2. 列出设备上支持的编解码器3. 获取编解码器详细信息4. 判断设备是否支持某种编解码器5. 查询默认的编解码器 三、通过 MediaCodecList …

【Java 设计模式】设计原则之开放封闭原则

文章目录 1. 定义2. 好处3. 应用4. 示例结语 在软件开发中,设计原则是创建灵活、可维护和可扩展软件的基础。 这些原则为我们提供了指导方针,帮助我们构建高质量、易理解的代码。 ✨单一职责原则(SRP) ✨开放/封闭原则&#xff08…

69、python - 利用向量内积来优化卷积运算

上一节介绍了利用 python 实现的原始卷积版本性能很差的原因,不知道各位同学有尝试的么? 这一节介绍下如何对卷积的乘累加进行一次优化:我们利用 np.dot 来进行优化。 np.dot np.dot 是 numpy 库提供的一个函数,用来计算两个向量的点积,或者叫内积。那什么是内积呢? …

Pygame程序的屏幕显示

不同对象的绘制与显示过程 在Pygame中,需要将所有需要在屏幕上显示的内容都绘制在一个display surface上。该Surface通常称为screen surface,它是pygame.display.set_mode()函数返回的Surface对象。 在绘制不同对象时,可以使用不同的绘制方…

AI绘画软件Stable Diffusion模型/Lora/VAE文件存放位置

型下载说明(下载模型后输入对应参数即可生成) 建议直接去civitai.com找模型,如果无法找到可以在幕后模型区找也可以去, 下载好后放入对应的文件夹。进入127.0.0.1:7680 左上角刷新即可看到新的模型。 模型种类 大模型 大模型特…

计算机找不到msvcr100.dll的多种解决方法分享,轻松解决dll问题

msvcr100.dll作为系统运行过程中不可或缺的一部分,它的主要功能在于提供必要的运行时支持,确保相关应用程序能够顺利完成编译和执行。因此,当操作系统或应用程序在运行阶段搜索不到该文件时,自然会导致各类依赖于它的代码无法正常…

C语言学习记录—进阶作业(通讯录动态版本)

动态版本通讯录 1. 通讯录默认能够存放3个人的信息。 2. 如果空间不够&#xff0c;就增加空间&#xff0c;每次增加2个人的空间。 contact.h文件 #pragma once #include <string.h> #include <stdio.h> #include <assert.h> #include <stdlib.h>#de…

C语言基础语法跟练 day3

31、不使用累计乘法的基础上&#xff0c;通过移位运算&#xff08;<<&#xff09;实现2的n次方的计算。 #include <stdio.h> int main() {int i 0;scanf("%d",&i);printf("%d",1<<i);return 0; } 32、问题&#xff1a;一年约有 3.…

L1-023 输出GPLT(Java)

给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序&#xff0c;按GPLTGPLT....这样的顺序输出&#xff0c;并忽略其它字符。当然&#xff0c;四种字符&#xff08;不区分大小写&#xff09;的个数不一定是一样多的&#xff0c;若某种字符已经输出完&…

c#多线程中使用SemaphoreSlim

SemaphoreSlim是一个用于同步和限制并发访问的类&#xff0c;和它类似的还有Semaphore&#xff0c;只是SemaphoreSlim更加的轻量、高效、好用。今天说说它&#xff0c;以及如何使用&#xff0c;在什么时候去使用&#xff0c;使用它将会带来什么优势。 代码的业务是&#xff1a…

档案数字化怎样快速整理资料

对于机构和组织来说&#xff0c;档案数字化是一个重要的信息管理和保护措施。要快速整理资料进行档案数字化&#xff0c;可以遵循以下步骤&#xff1a; 1. 准备工具和设备&#xff1a;确保有一台计算机、扫描仪和相关软件。 2. 分类和组织资料&#xff1a;先将资料分类&#xf…

【linux】利用echo命令实现不换行的倒计时

1、实现5秒倒计时 #!/bin/shfor i in `seq 5`doecho -ne "$i\b"sleep 1 done 2、实现“时:分:秒”格式的倒计时 这个脚本会从5小时开始,每秒更新一次,以时:分:秒的格式显示倒计时,实现一个从5小时倒计时到0的功能。echo -ne "\r"会将光标移动到当前行…

代码随想录Day.31 | 455. 分发饼干、376. 摆动序列、53. 最大子序和

455. 分发饼干 1. LeetCode链接 455. 分发饼干 - 力扣&#xff08;LeetCode&#xff09; 2. 题目描述 3. 解法 贪心法&#xff0c;首先想到的是&#xff0c;局部最优&#xff1a;让每个孩子尽可能拿能拿到的最小饼干尺寸。为了方便查找&#xff0c;这就要求至少饼干尺寸是从…

简单易懂深入PyTorch中RNN、LSTM和GRU使用和理解

目录 torch.nn子模块Recurrent Layers nn.RNNBase RNNBase 类描述 RNNBase 类的功能和作用 flatten_parameters() 方法 示例代码 nn.RNN RNN 类描述 RNN 类的功能和作用 RNN 类的参数 输入和输出 注意事项 示例代码 nn.LSTM LSTM 类描述 LSTM 类的功能和作用 …

MySQL的Windows系统安装

一、MySQL的Windows系统安装 1、下载MySQL安装包 打开如下链接地址&#xff0c;下载安装包 2、安装并配置 双击下载好的安装包进行安装&#xff0c;出现如下界面&#xff1a; 选择【 Full 】选项&#xff0c;然后单击【 Next 】按钮。 出现如下界面&#xff0c;单击【 Execute…

Halcon经典的边缘检测算子Sobel/Laplace/Canny

Halcon经典的边缘检测算子 文章目录 Halcon经典的边缘检测算子1. Sobel算子2. Laplace 算子3. Canny 算子4. 总结 关于边缘检测&#xff0c;有许多经典的算子&#xff0c;各大图形处理库都有各自的边缘检测算子&#xff0c;这里简要介绍几种。 1. Sobel算子 Sobel算子结合了高…

【野火i.MX6NULL开发板】挂载 NFS 网络文件系统

0、前言 参考资料&#xff1a; &#xff08;误人子弟&#xff09;《野火 Linux 基础与应用开发实战指南基于 i.MX6ULL 系列》PDF 第22章 参考视频&#xff1a;&#xff08;成功&#xff09; https://www.bilibili.com/video/BV1JK4y1t7io?p26&vd_sourcefb8dcae0aee3f1aab…

JVM 11 调优指南:如何进行JVM调优,JVM调优参数

JVM 11的优化指南&#xff1a;如何进行JVM调优&#xff0c;以及JVM调优参数有哪些”这篇文章将包含JVM 11调优的核心概念、重要性、调优参数&#xff0c;并提供12个实用的代码示例&#xff0c;每个示例都会结合JVM调优参数和Java代码 本文已收录于&#xff0c;我的技术网站 dd…

Jmeter Linux环境压测Lottery接口

1、把Dubbo插件放到Linux中Jmeter的lib/ext目录下 2、参数化 3、设置线程数 4、把测试计划中的Dubbo路径替换成Linux中的路径 /home/apache-jmeter-5.5/lib/ext 5、上传压测脚本到压力机 6、执行压测&#xff0c;观察是否有消息积压 ①Jmeter中执行压测脚本 ②检查mq控制台是…