网络基础:路由路由协议

news2024/10/6 10:30:47

路由是指在计算机网络中选择路径来传输数据包的过程和机制;它包括路径选择、数据包转发、以及维持网络连接所需的各种协议和算法,路由的目标是确保数据包能够高效且可靠地从源设备传输到目标设备;常见的能够实现路由功能网络设备有:

①路由器(Router):路由器是最常见的用于实现路由功能的设备,连接多个网络并转发数据包。
②三层交换机(Layer 3 Switch):三层交换机除了传统的二层交换功能外还具备路由功能,能在第三层(网络层)进行数据包转发。
③无线网状网络(Mesh Network)设备:在无线网状网络中,每个节点都可以充当路由器,负责数据包的转发;常见于大范围无线覆盖或物联网(IoT)应用中。
④防火墙(Firewall):许多防火墙设备也具有路由功能,特别是在需要安全和网络边界保护的场景下。

路由器(具有路由功能的网络设备)连接不同的网络段或子网;它通过检查数据包的目标地址,并根据路由表来决定下一跳,将数据包转发到正确的路径上。

路由表(Routing Table)

路由表是路由器中存储路径信息的数据结构。每条记录通常包括以下信息:

目标网络地址(Destination Network Address):要到达的网络或子网的地址。
子网掩码(Subnet Mask):用于区分网络部分和主机部分的掩码。
下一跳(Next Hop):下一跳路由器的地址,数据包将被转发到这个路由器。
接口(Interface):路由器用于发送数据包的网络接口。
度量(Metric):用于表示路径的代价,常见度量包括跳数、带宽、延迟等。

查看路由器的路由表是网络管理的重要部分,不同品牌的路由器可能有不同的命令和界面;以下是查看华为、思科(Cisco)和华三(H3C)路由器路由表的方法,并分析路由表中的各个字段。

1. 华为路由器

使用以下命令查看路由表:

display ip routing-table
路由表示例及字段分析
Destination/Mask    Proto  Pre  Cost  Flags NextHop        Interface
0.0.0.0/0           Static 60   0     D     192.168.1.1    GigabitEthernet0/0/1
10.0.0.0/8          Direct 0    0     D     10.0.0.1       GigabitEthernet0/0/2
192.168.1.0/24      Direct 0    0     D     192.168.1.1    GigabitEthernet0/0/1

Destination/Mask:目标网络及其子网掩码。

Proto:路由协议(例如,Static表示静态路由,Direct表示直连路由)。

Pre:优先级。

Cost:路由开销。

Flags:路由标志(D表示动态路由)。

NextHop:下一跳地址。

Interface:出接口。

2. 思科(Cisco)路由器

查看路由表

使用以下命令查看路由表:

show ip route

路由表示例及字段分析

C    192.168.1.0/24 is directly connected, GigabitEthernet0/0
L    192.168.1.1/32 is directly connected, GigabitEthernet0/0
S    0.0.0.0/0 [1/0] via 192.168.1.254, GigabitEthernet0/1

C:直连路由(Connected)。

L:本地路由(Local)。

S:静态路由(Static)。

Destination/Mask:目标网络及其子网掩码。

[AD/Metric]:路由的管理距离(AD)和度量值(Metric)。

via:下一跳地址。

Interface:出接口。

3. 华三(H3C)路由器

查看路由表

使用以下命令查看路由表:

display ip routing-table
路由表示例及字段分析
Destination/Mask    Proto  Pre  Cost  NextHop        Interface
0.0.0.0/0           Static 60   0     192.168.1.1    GigabitEthernet1/0/1
10.1.0.0/16         Direct 0    0     10.1.0.1       GigabitEthernet1/0/2
192.168.1.0/24      Direct 0    0     192.168.1.1    GigabitEthernet1/0/1

Destination/Mask:目标网络及其子网掩码。

Proto:路由协议(例如,Static表示静态路由,Direct表示直连路由)。

Pre:优先级。

Cost:路由开销。

NextHop:下一跳地址。

Interface:出接口。

各个字段的含义:
目标网络/掩码:定义了路由器可以到达的网络。
协议(Proto):表明路由是通过哪种方式学习到的,例如静态路由、动态路由或直连路由。
优先级(Pre)和开销(Cost):这些字段用于决定路由的优先级,数值越低优先级越高。
下一跳(NextHop):数据包应该发送到哪个IP地址,以便继续前往最终目标。
出接口(Interface):数据包离开路由器的物理或逻辑接口。

在上面的路由表中都有标识该路由条目是通过什么路由协议学到的;那么这个路由协议又是什么东西呢?接下来我们就好好来说道说道。

路由协议

路由协议是网络设备之间共享路由信息并选择最佳路径的协议。不同的路由协议适用于不同的网络环境。下面是一些常见的路由协议及其特性:

1. 静态路由(Static Routing)

静态路由是手动配置的路由条目,不依赖于路由协议的自动更新。适用于小型网络或需要严格控制路由路径的环境;静态路由协议比较简单,下篇文章讲(包含配置)。

2. 动态路由协议

动态路由协议自动发现和维护路由表条目,适用于中大型网络;它们分为内部网关协议(IGP)和外部网关协议(EGP)。

①内部网关协议(IGP)
内部网关协议(IGP,Interior Gateway Protocol)是用于自治系统(AS,Autonomous System)内路由选择的协议。自治系统是由一个或多个网络组成,并由一个单一的管理实体控制,通常是一个企业或组织。IGP协议在AS内部的路由器之间交换路由信息,以确定数据包的最佳传输路径。

常用的IGP:OSPF、EIGRP、IS-IS、RIP

②外部网关协议(EGP)
外部网关协议(EGP,Exterior Gateway Protocol)用于不同自治系统(AS,Autonomous System)之间的路由选择;EGP协议负责在互联网上的多个自治系统之间交换路由信息,以确保数据包能够跨越多个AS传输到达目标目的地

常用的EGP:BGP

用一张图来标识内部网关协议和外部网关协议的关系:

自治系统(AS):AS(Autonomous System)是由一个或多个网络组成,并由单一的管理实体控制的网络集合。AS内部使用IGP进行路由选择。

此处还可以用一张图来帮助我们针对动态路由协议进行总结:

在这张总结图中也可以看到在这里我们IGP分为距离矢量路由协议和链路状态路由协议,那么距离矢量和链路状态又有什么区别呢?

①距离矢量路由协议

距离矢量路由协议是一种路由选择协议,通过每个路由器维护一张包含所有已知目的地和距离(跳数)的路由表来实现路由选择;每个路由器通过定期向其邻居广播其整个路由表来更新和传播路由信息。

距离矢量路由协议工作原理:

1.初始路由表:每个路由器初始化其路由表,只包含直连网络。
2.定期更新:每个路由器定期向其所有邻居发送其整个路由表。
3.路由更新传播:路由器接收到邻居的路由表后,更新其路由表以反映新的信息。如果发现到某个目的地的更短路径,更新其路由表并将更改传播给邻居。

上面的图片圆形为路由器,方形为网络,数字为各个路由器路由表中记录的到达对应网络的开销数值。(没写数字则标识没有对应的路由)

①路由表(初始状态):

A的路由表:N1: 直连,跳数 0、N2: 直连,跳数 1

B的路由表:N2: 直连,跳数 0、N3: 直连,跳数 1

C的路由表:N3: 直连,跳数 0、N1: 直连,跳数 1

路由更新过程:

A 向 B 和 C 发送路由表:B 接收到 A 的路由表,发现到达 N1 的路径(跳数 1)更短,更新其路由表。

C 接收到 A 的路由表,发现到达 N2 的路径(跳数 2)可用,更新其路由表。

B 向 A 和 C 发送路由表:A 接收到 B 的路由表,发现到达 N3 的路径(跳数 2)可用,更新其路由表。

C 接收到 B 的路由表,发现到达 N2 的路径(跳数 1)更短,更新其路由表。

C 向 A 和 B 发送路由表:A 接收到 C 的路由表,发现到达 N3 的路径(跳数 1)更短,更新其路由表。

B 接收到 C 的路由表,发现到达 N1 的路径(跳数 2)可用,更新其路由表。

②路由表(更新后):

A的路由表:N1: 直连,跳数 0、N2: 直连,跳数 1、N3: 通过 C,跳数 1

B的路由表:N2: 直连,跳数 0、N3: 直连,跳数 1、N1: 通过 A,跳数 1

C的路由表:N3: 直连,跳数 0、N1: 直连,跳数 1、N2: 通过 B,跳数 1

通过以上分析,我们确保了每个路由器在更新后的路由表中都包含了到达目的地的最短路径;以上就是距离矢量路由协议的工作原理分析。

②链路状态路由协议

链路状态路由协议(Link-State Routing Protocol)是一种广泛用于计算机网络中的路由协议,其主要特点是每个路由器通过交换链路状态信息来维护一个网络拓扑图,然后使用该拓扑图计算出最短路径。以下是链路状态路由协议的基本概念和工作原理:

拓扑图维护:每个路由器通过定期发送链路状态广播(LSA,Link State Advertisement)消息来描述自己的邻居和链路状态(如链路的带宽、延迟等)。这些信息被存储在路由器的链路状态数据库(Link State Database)中。

全局拓扑计算:使用收集到的链路状态信息,每个路由器构建出整个网络的拓扑图。这张拓扑图包含所有路由器和它们之间的链路状态信息。

最短路径计算:基于构建的拓扑图,每个路由器使用最短路径算法(如Dijkstra算法)计算到达网络中所有其他路由器的最短路径。这些最短路径形成了路由表,用于决定数据包的转发路径。

路由信息传播:路由器之间通过交换链路状态信息来保持拓扑图的最新状态。如果网络拓扑发生变化(如链路故障或恢复),受影响的路由器会更新链路状态信息,并重新计算路径。

常见的链路状态路由协议:OSPF、IS-IS

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

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

相关文章

期末重现题型--错题集

看书里的定义:链表是一种常见而重要的动态存储分布的数据结构。它由若干个同一结构类型的“结点”依次串联而成的。

【理解】关于正点原子i.MX6ULL LCD计算式的理解

文章目录 1 描述2 疑问3 理解 1 描述 在《【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.81.pdf》,P560页,第二十四章 RGBLCD显示实验中提到,LCD屏幕显示一行所需要的时间: t H S P W H B P H O Z V A L H F P ① t HSPW …

Leetcode - 133双周赛

目录 一,3190. 使所有元素都可以被 3 整除的最少操作数 二,3191. 使二进制数组全部等于 1 的最少操作次数 I 三,3192. 使二进制数组全部等于 1 的最少操作次数 II 四,3193. 统计逆序对的数目 一,3190. 使所有元素都…

【Python游戏】猫和老鼠

本文收录于 《一起学Python趣味编程》专栏,从零基础开始,分享一些Python编程知识,欢迎关注,谢谢! 文章目录 一、前言二、代码示例三、知识点梳理四、总结一、前言 本文介绍如何使用Python的海龟画图工具turtle,开发猫和老鼠游戏。 什么是Python? Python是由荷兰人吉多范…

【List集合排序】

List集合排序Demo import com.google.common.collect.Lists; import lombok.AllArgsConstructor; import lombok.NoArgsConstructor;import java.util.*;/*** list order demo*/ public class ListOrderDemo {public static void main(String[] args) {List<String> lis…

YOLOv5改进 | 注意力机制 | 迈向高质量像素级回归的极化自注意力【全网独家】

秋招面试专栏推荐 &#xff1a;深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转 &#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 专栏目录&#xff1a; 《YOLOv5入门 …

rocketmq简易版搭建

今天真是搭了本人六七个钟&#xff0c;太难了 首先是魔法大战镜像&#xff0c;这波大败而归&#xff0c;连上了&#xff0c;可惜没氪金&#xff0c;永远是没拉完就超时&#xff0c;魔法质量不行&#xff0c;等上班赚点米再改良一下魔法类别&#xff0c;那还得继续linux搭建 1…

电脑录屏有水印怎么办 电脑录屏出来为什么画质模糊 camtasia属于什么软件

Camtasia&#xff08;又叫喀秋莎&#xff09;&#xff0c;作为专业录屏软件&#xff0c;拥有3000多万专业人士在全球范围内使用&#xff0c;多种使用场景&#xff0c;支持更多文件格式&#xff0c;多功能特效剪辑&#xff0c;为您带来独一无二的录屏新体验&#xff01; 大家在平…

LLaMA-Factory安装

安装代码 https://github.com/echonoshy/cgft-llm/blob/master/llama-factory/README.md https://github.com/hiyouga/LLaMA-Factory/tree/mainLLaMA-Factoryhttps://github.com/hiyouga/LLaMA-Factory/tree/main 【大模型微调】- 使用Llama Factory实现中文llama3微调_哔哩…

uniapp部署服务器,uniapp打包H5部署服务器,uniapp将config.js抽离

目录 步骤一.在static文件夹下新建config.js文件 config.js文件说明 在config.js中放入使用的请求的接口地址,资源路径等 congfig.js中的变量在页面中如何使用 步骤二.manifest.json配置 1.在项目根目录(与app.vue同级)创建template.h5.html文件 2.在manifest.json配置刚刚创…

Unity扩展编辑器功能的特性

1.添加分组标题 用于在Unity的Inspector视图中为属性或变量组创建一个自定义的标题或头部&#xff0c;有助于在Inspector中组织和分类不同的属性&#xff0c;使其更易于阅读和管理。 [Header("Common Properties")] public float MouseSensitivity 5; public float…

Leetcode3192. 使二进制数组全部等于 1 的最少操作次数 II

Every day a Leetcode 题目来源&#xff1a;3192. 使二进制数组全部等于 1 的最少操作次数 II 解法1&#xff1a;遍历 由于 nums[i] 会被其左侧元素的操作影响&#xff0c;所以我们先从最左边的 nums[0] 开始思考。 分类讨论&#xff1a; 如果 nums[0]1&#xff0c;无需反…

CSS Flex弹性布局

一、传统布局与flex布局 1、传统布局 2、flex布局 二、flex布局原理 1、布局原理 2、flex布局体验 三、flex布局父项常见属性 1、常见的父项属性 2、flex-direction设置主轴的方向 3、justify-content 设置主轴上的子元素排列方式 4、flex-wrap 设置子元素是否换行 …

cv实战(一)

目录 前言一、加密解密图像1.常用的算法1.1 空间域加密技术&#xff1a;1.2 基于频域的水印技术&#xff1a;1.3 Arnold变换&#xff1a;1.4 DES与AES算法&#xff1a; 2.实验代码结果 二、数字汉字识别代码结果&#xff1a; 三 物体识别代码结果 四&#xff0c;物块追踪代码结…

【高性能服务器】服务器概述

&#x1f525;博客主页&#xff1a; 我要成为C领域大神&#x1f3a5;系列专栏&#xff1a;【C核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 本博客致力于知识分享&#xff0c;与更多的人进行学习交流 ​ 服务器概述 服…

C++ | Leetcode C++题解之第206题反转链表

题目&#xff1a; 题解&#xff1a; class Solution { public:ListNode* reverseList(ListNode* head) {if (!head || !head->next) {return head;}ListNode* newHead reverseList(head->next);head->next->next head;head->next nullptr;return newHead;} …

PD芯片OTG功能的应用 LDR6500

随着科技的飞速发展&#xff0c;智能手机、平板电脑等电子设备已经成为我们日常生活和工作中不可或缺的工具。这些设备的功能日益强大&#xff0c;应用场景也愈发广泛&#xff0c;但随之而来的是对充电和数据传输效率的高要求。在这一背景下&#xff0c;PD&#xff08;Power De…

DM 的断点续传测试

作者&#xff1a; 大鱼海棠 原文来源&#xff1a; https://tidb.net/blog/4540ae34 一、概述 DM有all、full、incremental三种数据迁移同步方式&#xff08;task-mode&#xff09;&#xff0c;在all同步模式下&#xff0c;因一些特殊情况&#xff0c;需要变更上游MySQL的数…

OFDM的基本原理

OFDM技术使用相互正交的子载波组成多载波传输数据&#xff0c;此时不存在子载波间干扰和符号间干扰。设采样间隔为 &#xff0c;正交子载波可以表示为 基带信号a(n)采用矩形脉冲&#xff0c;则OFDM信号用公式可以表示 OFDM信号的N个采样点数据 可以用IFFT简化上述计算&#xf…

(已解决)Adobe Flash Player已不再受支持

文章目录 前言解决方案 前言 一般来说&#xff0c;很少遇到官方网站使用Adobe Flash Player来进行录用名单公示了。但是&#xff0c;今天就偏偏遇到一次&#xff0c; 用谷歌浏览器打不开&#xff0c; 点了没有反应&#xff0c;用其他的浏览器&#xff0c;例如windows自带的那…