网络层:路由选择协议

news/2024/10/17 14:27:01/

1.网络层:路由选择协议

笔记来源:
湖科大教书匠:路由选择协议概述
湖科大教书匠:路由信息协议RIP的基本工作原理
湖科大教书匠:开放最短路径优先OSPF的基本工作原理
湖科大教书匠:边界网关协议(BGP)的基本工作原理

声明:该学习笔记来自湖科大教书匠,笔记仅做学习参考

1.1 路由选择协议概述

静态路由选择
人工配置的网络路由、默认路由、特定主机路由、黑洞路由等都属于静态路由。
动态路由选择
路由器通过路由选择协议自动获取路由信息。

路由选择协议的主要特点

因特网采用分层次的路由选择协议
路由选择协议分为内部和外部路由协议
外部网关协议EGP / 外部路由协议ERP(路由选择的分类名称,不是具体的路由选择协议)
内部网关协议IGP / 内部路由协议IRP(路由选择的分类名称,不是具体的路由选择协议)

EGP(分类名称)采用的具体协议为:边界网关协议(BGP)
IGP(分类名称)采用的具体协议为:路由信息协议(RIP)、开放式最短路径优先(OSPF)

常见路由选择协议


路由器基本结构
路由选择部分:路由选择处理机
分组转发部分:一组输入端口、交换结构、一组输出端口

若路由器交换机构收到的分组为普通数据分组,则其处理过程如下图

若路由器交换机构收到的分组为路由报文,则其处理过程如下图

1.2 路由信息协议(RIP)的基本工作原理



RIP(属于内部网关协议这个分类)要求自治系统AS内每一个路由器都维护自身到AS内其他所有网络的距离记录,即距离向量D-V,使用跳数(Hop Count)作为度量来衡量到达目的网络的距离


注意:距离为16时相当于不可达,Hop ≤ \leq 15
路由器到非直连网络的距离 = 所经过的路由器数 +1,为什么要+1?例:N1是R1的直连网络,则R2到达非直连网络N1需要2段路,也就是经过的路由器数+1

好路由被认为是所通过路由器数量最少的路由


RIP三个要点

RIP基本工作过程

RIP的路由条目的更新规则
RC给RD发送给自己的路由表,RD对该路由表进行改造,所有距离+1,下一跳改为RC,改造完成后对比RD自己的路由表进行更新,将改造后的C路由表中距离和下一跳替换D中路由表相应内容。若改造后的C路由表中有的而在D中没有,则在D中添加这个条目,由此D完成路由表的更新


例子:

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

R1与直连网络N1间存在故障,R2将到达N1的路由条目距离更改为16(N1不可达),等待RIP发送信息给R2。在发送信息前,R2的路由条目仍然是可通过R1到达N1,若R2的这个路由条目先到达R1,R1收到这个条目后误认为可以通过R2经过2跳到达N1

R1更新自己的条目,由R2经过3跳可到达N1,更新后的条目发送给R2,R2认为通过R1经过4条可达N1,如此循环,直到跳数到达16(表示不可达)

坏消息传的慢又称路由环路或距离无穷计数问题,这是距离向量算法的固有问题

可以采取的措施来减小发生问题的概率

1.3 开放最短路径优先(OSPF)的基本工作原理


开放:公开发表、最短路径:Dijkstra最短路径算法
链路状态:本路由器与哪些路由器相邻,以及链路代价
代价表示费用、距离、时延、带宽等

OSPF相邻路由器之间通过交互问候(Hello)分组,建立和维护邻居关系


使用OSPF的每个路由器都会产生链路状态通告LSA:直连网络的链路状态信息、邻居路由器的链路状态信息



OSPF五种分组类型

OSPF基本工作过程

OSPF在多点接入网络中路由器邻居关系的建立
相邻路由器太多时,使得发送的问候分组过多,为减少发送问候分组的数量,采用选举指定路由器DR和备用指定路由器BDR,所有的非DR/BDR只与DR/BDR建立邻居关系,非DR/BDR之间并不能直接交换信息,必须通过DR/BDR交换信息

为了使OSPF能够用于规模很大的网络,OSPF把一个自治系统再划分为若干个更小的范围,叫做区域。

1.4 边界网关协议(BGP)的基本工作原理



在不同自治系统内,度量路由的“代价”(距离,带宽,费用等)可能不同。
因此,对于自治系统之间的路由选择,使用“代价”作为度量来寻找最佳路由是不行的。

自治系统之间的路由选择必须考虑相关策略(政治,经济,安全等)


BGP只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由

BGP适用于多级结构的因特网

BGP-4四种报文(被封装在TCP报文段中进行传输)


http://www.ppmy.cn/news/411590.html

相关文章

MySQL常见问题

优化慢查询 慢查询可能出现的情况: 聚合查询多表查询表数据量过大深度分页查询 表象:页面加载过慢,接口压测响应时间过长(超过1s) 如何定位慢查询? 方案一:开源工具 可以使用相应的调试工具&a…

Dalamud 插件开发白皮书 P1 - Getting started

文章目录 从哪里开始 How do I get started?Dalamud 插件例子Dalamud 底层探究XIVLauncher 启动器 在哪里寻找帮助 Where do I ask for help?如何热重载插件 How do I hot-reload my plugin?如何调试插件,甚至游戏?如何在编码过程中使用 How do I use…

MidJourney使用教程:二 初识Prompts

最近AIGC这么火,除了chatGPT以外,这种图像类的产品也是非常有意思,其中就有MidJourney和Stable Diffusion这俩个比较出圈。这里我先选择MidJourney来体验并整理出一个教程。一方面MidJourney最简单,能当路Discord,注册…

【瑞萨RA_FSP】DAC —— 输出正弦波

文章目录 一、DAC简介二、DAC的结构框图1. 参考电压2. 触发源3. DAC数据寄存器4. 转换的过程5. 同步转换 三、生成正弦波数据表四、DAC程序设计1. 硬件设计2. 软件设计①文件结构②FSP配置③DAC初始化函数④设置DAC输出电压函数⑤DAC输出正弦波⑥ hal_entry入口函数 一、DAC简介…

【2023】华为OD机试真题Java CC++ Python JS Go-题目0247-恢复数字序列

题目0247-恢复数字序列 题目描述 对于一个连续正整数组成的序列,可以将其拼接成一个字符串,再将字符串里的部分字符打乱顺序。如序列8 9 10 11 12,拼接成的字符串为89101112,打乱一部分字符后得到90811211。注意打乱后原来的正整数可能被拆开,比如在90811211中,原来的正…

stable diffusion webui 安装部署(linux系统)

文中部署stable diffusion webui所使用的机器是腾讯云服务器linux系统,centos7 一 环境准备 在这里使用anaconda安装,优势就是可以方便地安装和管理软件包,同一系统上可以同时使用不同版本的 Python 和第三方软件包。如果你需要安装多个系统…

android ios 传视频播放器,推荐用于iOS / Android全面格式的视频播放器|手机最强大的播放器...

几天前,一个朋友以ts格式下载了一些高清电视剧,但是无法在iPad上播放,因此我想在计算机上将其转换为MP4格式. 花了时间和精力,结果并不令人满意. 事实上手机上的万能播放器,所有平台现在都具有支持完整格式的播放器. 播…

7款很棒的 HTML5 视频播放器

作为下一代的网页语言,HTML5 拥有很多让人期待已久的新特性,其中之一就是 video 标签,让开发者可以在网页中和添加图片一样简单的方式添加视频。在这篇文章中,我收集了7个很棒的HTML5视频播放器,你可以很容易的应用到你…