【因特网中自治系统内部的路由选择,RIP 进程处理 OSPFOSPF(Open Shortest Path First)最短路径优先协议】

文章目录

  • 因特网中自治系统内部的路由选择
    • RIP(Routing Information Protocol)内部网关协议
    • RIP通告(advertisements)
    • RIP: 链路失效和恢复
    • RIP 进程处理
    • OSPF(Open Shortest Path First)最短路径优先协议
    • OSPF “高级” 特性(在RIP中的没有的)
    • 层次化的OSPF路由:划分为若干区域,限制泛洪区域/数量
    • 层次性的OSPF路由
    • 层次路由
    • 层次路由的优点
    • 互联网AS间路由:BGP
    • BGP基础

因特网中自治系统内部的路由选择

RIP(Routing Information Protocol)内部网关协议

  • Distance vector 算法
    • 距离矢量:每条链路cost=1,# of hops (max = 15 hops) 跳数
    • DV每隔30秒和邻居交换DV,通告
    • 每个通告包括:最多25个目标子网

RIP通告(advertisements)

  • DV:在邻居之间每30秒交换通告报文
    • 定期,而且在改变路由的时候发送通告报文
    • 在对方的请求下可以发送通告报文
  • 每一个通告: 至多AS内部的25个目标网络的DV
    • 目标网络+跳数

RIP: 链路失效和恢复

如果180秒没有收到通告信息–>邻居或者链路失效

  • 发现经过这个邻居的路由已失效
  • 新的通告报文会传递给邻居
  • 邻居因此发出新的通告 (如果路由变化的话)
  • 链路失效快速地在整网中传输
  • 使用毒性逆转(poison reverse)阻止ping-pong回路 (不可达的距离:跳数无限 = 16 段)

RIP 进程处理

  • RIP 以应用进程的方式实现:route-d (daemon)
  • 通告报文通过UDP报文传送,周期性重复
  • 网络层的协议使用了传输层的服务,以应用层实体的方式实现

OSPF(Open Shortest Path First)最短路径优先协议

  • 使用LS算法
    • LS 分组在网络中(一个AS内部)分发
    • 全局网络拓扑、代价在每一个节点中都保持
    • 路由计算采用Dijkstra算法
  • OSPF通告信息中携带:每个邻居路由器一个表项
  • 通告信息会传遍AS全部(通过泛洪)
    • 在IP数据报上直接传送OSPF报文 (而不是通过UDP和TCP)

OSPF “高级” 特性(在RIP中的没有的)

  • 安全: 所有的OSPF报文都是经过认证的 (防止恶意的攻击)
  • 允许有多个代价相同的路径存在 (在RIP协议中只有一个)
  • 在大型网络中支持层次性OSPF

层次化的OSPF路由:划分为若干区域,限制泛洪区域/数量

在这里插入图片描述

层次性的OSPF路由

  • 2个级别的层次性: 本地, 骨干
    • 链路状态通告仅仅在本地区域Area范围内进行(通告只有在本地区域进行)
    • 每一个节点拥有本地区域的拓扑信息(其他区域只知道它的方向)
  • 区域边界路由器: “聚集”到自己区域内网络的距离,向其它区域边界路由器通告(汇集并做通告)
  • 骨干路由器:仅在骨干区域,运行OSPF路由
  • 边界路由器:连接其他的AS

层次路由

  • 一个平面的路由
    • 一个网络中的所有路由器的地位一样
    • 通过LS, DV,或者其他路由算法,所有路由器都要知道其他所有路由器(子网)如何走
    • 所有路由器在一个平面
  • 平面路由的问题
    • DV距离矢量很大,且不能够收敛
    • LS几百万个节点和LS分组泛洪传输,存储以及最短路径算法
  • 管理问题:
    • 不同的网络所有者希望按照自己的方式管理网络
    • 希望对外隐藏网络细节
      层次路由将互联网分成一个个AS(路由器区域)
  • 路由器变成了:2个层次路由
    • 自治区域内部
    • 自治区域之间

层次路由的优点

  • 解决了规模问题
    • 内部网关协议解决:AS内部数量有限的路由器互相到达
    • AS之间的路由器的规模问题
      • 每个自治区在自治区的路由上表现为1个点,为数非常少的点。
  • 解决了管理问题:
    • 各个AS可以运行不同的内部网关协议

互联网AS间路由:BGP

  • BGP(Border Gateway Protocol):自治区域路由协议
    在这里插入图片描述
  • BGP 提供给每个AS以以下方法:
    • eBGP: 从相邻的ASes那里获得子网可达信息
    • iBGP: 将获得的子网可达信息传遍到AS内部的所有路由器
    • 根据子网可达信息和策略来决定到达子网的“好”路径

BGP基础

  • BGP 会话: 2个BGP路由器(“peers”)在一个半永久的TCP连接上
    交换BGP报文:
    在这里插入图片描述

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

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

相关文章

用20行python写一个最简单的网站

先安装flask框架,cmd命令行 pip install flask,或pycharm -> setting -> project -> python interpreter 搜索安装 # 引入Flask框架 from flask import Flask# 实例化Flask应用 app Flask(__name__)# 定义一个路由,当用户访问网站…

SEO之高级搜索指令(三)

初创企业需要建站的朋友看这篇文章,谢谢支持: 我给不会敲代码又想搭建网站的人建议 新手上云 (接上一篇。。。。) 11、link: link:也是SEO 常用的指令,用来搜索某个url的反向链接,既包括内部链接&#xf…

面试:CopyOnWriteArrayList

问题: ArrayList 是线程不安全的,同一时间写和读会造成线程不安全,怎么解决呢? 答:可以使用CopyOnWriteList。 CopyOnWriteList特点 CopyOnWriteArrayList是Java中的一种并发集合类,它实现了List接口&am…

【C++11新特性】lambda表达式和应用场景

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

【过生日,函数运用,找闰年】

小明出生在一个闰年&#xff0c;他想知道什么时候可以过生日&#xff0c;你能告诉他吗&#xff1f; 给你一个正整数Y&#xff0c;表示起始年份&#xff0c;和一个正整数N&#xff0c;你的任务是告诉小明从Y年开始第N个闰年是哪一年。 注意&#xff1a;如果Y就是闰年&#xff0c…

力扣每日一题112:路径总和

题目 简单 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径&#xff0c;这条路径上所有节点值相加等于目标和 targetSum 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 叶子节点 是…

java入门1.1.1版本

前言&#xff1a; 上面的内容是1.0.0~1.1的内容总结 秉持着先做再定义的理念&#xff0c;这里会带着大家先体验一下类与对象 第一步&#xff1a;新建一个java文件 鼠标右键 → 新建 → 文本文档 → 右键 → 点击重名 → 全选 → hello.java 第二步&#xff1a;用笔记本打开 …

Java 面试题整理

Java 基础 Java 自动装箱、拆箱(编译器自动处理) 装箱: Jdk1.5 之后提供的功能、将包装类型自动转换为基本数据类型拆箱: Jdk1.5 之后提供的功能、将基本数据类型自动转换为包装类型 Jdk 与 Jre 的 区别 Jdk 是 Java 开发工具、包含了Jre 和 开发工具包JRE 是 Java 运行时环境 …

C++进阶:map与set简单自实现

目录 1. map与set封装红黑树的方式1.1 大概实现思路1.2 红黑树模板抽象1.3 红黑树的迭代器 2. 红黑树模板的实现2.1 结点结构的定义2.2 红黑树迭代器的实现2.2.1 迭代器的结构2.2.2 迭代器的方法实现 2.3 树结构的定义2.4 红黑树接口实现2.4.1 插入2.4.2 查找2.4.3 迭代器相关 …

pytest + yaml 框架 - 参数化读取文件路径优化

针对小伙伴提出参数化时读取外部文件&#xff0c;在项目根路径运行没问题&#xff0c;但是进入到项目下子文件夹运行用例&#xff0c;就会找不到文件问题做了优化。 关于参数化读取外部文件相关内容参考前面这篇pytest yaml 框架 -25.参数化数据支持读取外部文件txt/csv/json/…

随手笔记-GNN(朴素图神经网络)

自己看代码随手写的一点备忘录&#xff0c;自己看的&#xff0c;不喜勿喷 GNN (《------ 代码) 刚开始我还在怀疑为什么没有加weigth bias&#xff0c;已经为什么权重才两个&#xff0c;原来是对node_feats进行的network的传播&#xff0c;而且自己内部直接进行了。 下面是一…

【api接口开通教程】YouTube Data API v3申请流程

一、背景调查 1.1 API接口介绍 采集youtube数据&#xff0c;大体分为两种方案&#xff1a;一种是基于爬虫&#xff0c;一种是基于API接口。 说人话就是&#xff1a;爬虫相当于走后门、爬窗户&#xff08;利用技术手段窃取&#xff0c;人家没说给&#xff0c;但我硬拿&#x…

ssrf漏洞学习——基础知识

一、SSRF是什么&#xff1f; SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。 一般情况下&#xff0c;SSRF攻击的目标是从外网无法访问的内部系统。&#xff08;正是因为它是由服务端发起的&#xff0c;所以它能…

java项目-导入https证书三种方式

1、导入证书到jdk&#xff08;linux虚拟机过程类似&#xff09; 1.1 确认jre的目录&#xff0c;通过查看path环境变量&#xff0c;查看JAVA_HOME %JAVA_HOME\jre\lib\security\目录即为keytool证书路径 1.2 安装证书到jre的路径 进入到jre路径 cd C:\Program Files\Java\jdk…

leetcode每日一题第七十二天

class Solution { public:TreeNode* searchBST(TreeNode* root, int val) {if(!root) return root;if(root->val val) return root;else if(root->val > val) return searchBST(root->left,val);else return searchBST(root->right,val);} };

日志打印传值 传引用 右值引用性能测试(Linux/QNX)

结论 Linux平台和qnx平台优化后传值性能都是比传引用的差&#xff0c;也比传右值的差&#xff0c;因此传参时有必要传递引用。 测试代码 #include <cstdint> #include <ctime> #include <string>#ifdef __linux__#define ITERATIONS 10000000 #else#defin…

(七)JSP教程——session对象

浏览器和Web服务器之间的交互通过HTTP协议来完成&#xff0c;HTTP协议是一种无状态的协议&#xff0c;服务器端无法保留浏览器每次与服务器的连接信息&#xff0c;无法判断每次连接的是否为同一客户端。为了让服务器端记住客户端的连接信息&#xff0c;可以使用session对象来记…

STM32--4G DTU 及 阿里云

模块概述 ATK-IDM750C/IDM751C 是正点原子(ALIENTEK)团队开发的一款高性能 4G Cat1 DTU 产品&#xff0c; 支持移动 4G、联通 4G 和电信 4G 手机卡。它以高速率、低延迟和无线数传作为核心功能&#xff0c; 可快速解决应用场景下的无线数传方案。 它支持 TCP/UDP/HTTP/MQTT/DN…

Scala基础学习-循环

一、流程控制 循环结构、选择结构、循环结构 1、循环结构 从上至下&#xff0c;从左至右&#xff0c;依次执行&#xff0c;系统默认结构 2.选择结构 分类&#xff1a;单分支、双分支、多分支 (1)、单分支 object xuexi {def main(args: Array[String]): Unit {val a 20…

【Python】JSON数据的使用

一、JSON JSON是什么&#xff1a; JSON&#xff08;JavaScript Object Notation&#xff09;是一种轻量级的数据交换格式&#xff0c;它以易于理解和生成的文本格式来描述数据对象。JSON最初是由Douglas Crockford在2001年提出的&#xff0c;它的设计受到了JavaScript对象字面量…