内部网关协议RIP-路由选择协议

rip · 浏览次数 : 0

小编点评

路由信息协议(RIP)是一种内部网关协议(IGP),用于在自治系统(AS)内的路由器之间交换路由信息。RIP通过距离向量(D-V)算法,维护从每个路由器到其他所有网络的距离记录。RIP允许一条路径最多包含15个路由器,当距离等于16时,表示网络不可达。RIP不适合大型互联网,因为它只考虑跳数作为度量。 好的路由被认为是到达目的网络路径最短的路由,即通过路由器数量最少的路由。等价负载均衡允许在多条“距离相等”的路由之间进行负载均衡。 RIP的工作原理包括: 1. 路由器仅与相邻路由器交换信息。 2. 交换的信息是当前路由表。 3. 按照固定时间间隔(周期性)交换路由信息。 RIP的路由条目更新规则包括: - 发现新网络时,添加到达目的网络,不同下一跳,新路由优势。 - 更新到达目的网络,不同下一跳,等价负载均衡。 - 更新到达目的网络,相同下一跳,最新消息。 - 不更新到达目的网络,不同下一跳,新路由劣势。 RIP存在的“坏消息传播得慢”问题可能导致路由环路或距离无穷计数问题。为减少这个问题,可以限制最大路径距离为15,立即发送路由更新,而不是周期性发送,并采用水平分割技术。

正文


路由信息协议RIP(Routing Information Protocol)是内部网关协议IGP中最先得到广泛使用的协议,其相关标准文档为RFC1058。


一、RIP基本工作原理

  • RIP要求自治系统AS内的每一个路由器都要维护从它自己到AS内其他每一个网络的距离记录。这是一组距离,称为“距离向量D-V(Distance-Vector)
  • RIP使用跳数(Hop Count)作为度量(Metric)来衡量到达目的网络的距离
    • 路由器到直连网络的距离定义为1
    • 路由器到非直连网络的距离定义为所经过的路由器数加1image.png
    • 允许一条路径最多只能包含15个路由器。“距离”等于16时相当于不可达因此,RIP只适用于小型互联网。

二、好的路由和等价负载均衡

(一)好的路由

  RIP认为好的路由就是“距离短”的路由,也就是所通过路由器数量最少的路由。 image.png

(二)等价负载均衡

  当到达同一目的网络有多条“距离相等”的路由时,可以进行等价负载均衡 image.png


三、RIP 的三个要点

(1)仅和相邻的路由器交换信息

(2)路由器交换的信息是自己现在的路由表

(3)按照固定的时间间隔(周期性)交换路由信息

image.png


四、RIP 的基本工作过程

image.png


五、RIP 的路由条目更新规则

  1. 发现了新的网络,添加
  2. 到达目的网络,不同下一跳,新路由优势,更新
  3. 到达目的网络,不同下一跳,等价负载均衡
  4. 到达目的网络,相同下一跳,最新消息,更新
  5. 到达目的网络,不同下一跳,新路由劣势,不更新

示例 1

image.png

示例 2

image.png


六、RIP存在“坏消息传播得慢”的问题

  “坏消息传播得慢”又称为路由环路距离无穷计数问题,这是距离向量算法的一个固有问题。

  可以采取多种措施减少出现该问题的概率或减小该问题带来的危害,如下:

  • 限制最大路径距离为15(16表示不可达)。
  • 当路由表发生变化时就立即发送更新报文(即“触发更新”),而不仅是周期性发送。
  • 让路由器记录收到某特定路由信息的接口,而不让同一路由信息再通过此接口向反方向传送(即“水平分割”。

 

image.pngimage.png


 

与内部网关协议RIP-路由选择协议相似的内容:

内部网关协议RIP-路由选择协议

路由信息协议RIP(Routing Information Protocol)是内部网关协议IGP中最先得到广泛使用的协议,其相关标准文档为RFC1058。 一、RIP基本工作原理 RIP要求自治系统AS内的每一个路由器都要维护从它自己到AS内其他每一个网络的距离记录。这是一组距离,称为“距离向量D

6. 用Rust手把手编写一个wmproxy(代理,内网穿透等), 通讯协议源码解读篇

用Rust手把手编写一个wmproxy(代理,内网穿透等), 通讯协议源码解读篇 项目 ++wmproxy++ gite: https://gitee.com/tickbh/wmproxy github: https://github.com/tickbh/wmproxy 事件模型的选取 OS线程,

5. 用Rust手把手编写一个Proxy(代理), 通讯协议建立, 为内网穿透做准备

wmproxy, 通讯协议的定义, 粘包拆包的解决方案, 代理的网络的拓扑图, 协议的分类, 消息的包头, 消息类型的定义

Python使用socket的UDP协议实现FTP文件服务

用Python的socket,使用UDP协议实现一个FTP服务端、FTP客户端,用来实现文件的传输。在公司内网下,可以不适用U盘的情况下,纯粹使用网络,来实现文件服务器的搭建,进而实现文件的网络传输。同时用来理解Python的socket使用。

影片自由,丝滑流畅,Docker容器基于WebDav协议通过Alist挂载(百度网盘/阿里云盘)Python3.10接入

使用过NAS(Network Attached Storage)的朋友都知道,它可以通过局域网将本地硬盘转换为局域网内的“网盘”,简单理解就是搭建自己的“私有云”,但是硬件和网络成本都太高了,有点可望而不可及的意思。Alist开源库则可以满足我们,它能将公共网盘反过来变成一种联网的本地硬盘,使用We

驱动开发:内核封装TDI网络通信接口

在上一篇文章`《驱动开发:内核封装WSK网络通信接口》`中,`LyShark`已经带大家看过了如何通过WSK接口实现套接字通信,但WSK实现的通信是内核与内核模块之间的,而如果需要内核与应用层之间通信则使用TDK会更好一些因为它更接近应用层,本章将使用TDK实现,TDI全称传输驱动接口,其主要负责连接`Socket`和协议驱动,用于实现访问传输层的功能,该接口比`NDIS`更接近于应用层,在早期W

详解神经网络基础部件BN层

摘要:在深度神经网络训练的过程中,由于网络中参数变化而引起网络中间层数据分布发生变化的这一过程被称为内部协变量偏移(Internal Covariate Shift),而 BN 可以解决这个问题。 本文分享自华为云社区《神经网络基础部件-BN层详解》,作者:嵌入式视觉 。 一,数学基础 1.1,概率

[转帖]Linux性能优化(九)——Kernel Bypass

Linux性能优化(九)——Kernel Bypass https://blog.51cto.com/u_9291927/2594168 一、Linux内核协议栈性能瓶颈 在x86体系结构中,接收数据包的传统方式是CPU中断方式,即网卡驱动接收到数据包后通过中断通知CPU处理,然后由CPU拷贝数据并

Nginx命令(查询nginx配置文件)

Nginx命令(查询nginx配置文件) Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。 Nginx常用命令 1.查看Ngin

Docker 安装 Redis 单机&集群总结

前言 Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于 内存 、 分布式 、可选持久性的键值对( Key-Value )存储数据库 redis版本:redis:6.2.13 作者:易墨 安装单机版 安装源:DockerHub 默认配置文件:配置文件示例 6.