计算机网络:网络层 —— 边界网关协议 BGP

文章目录

    • 路由选择协议
      • 动态路由协议
      • 边界网关协议 BGP
        • BGP 的基本概念
        • BGP-4 的四种报文

路由选择协议

因特网是全球最大的互联网,它所采取的路由选择协议具有以下三个主要特点:

  • 自适应:因特网采用动态路由选择,能较好地适应网络状态的变化。

  • 分布式:因特网中的各路由器通过相互间的信息交互,共同完成路由信息的获取和更新

  • 分层次:将整个因特网划分为许多较小的自治系统(AutonomousSystem,AS)在自治系统内部(域内路由选择)和外部(域间路由选择)采用不同类别的路由选择协议,分别进行路由选择。

![[自治系统.png]]

  • 自治系统内部使用内部网关协议 IGP ,自治系统之间使用外部网关协议 EGP

  • 外部网关协议 EGP 和内部网关协议 IGP 只是路由选择协议的分类名称,而不是具体的路由选择协议。

  • 外部网关协议和内部网关协议名称中使用的是“网关”这个名词,是因为在因特网早期的 RFC 文档中,没有使用“路由器”而使用的是“网关”这一名词。

动态路由协议

动态路由协议分为距离矢量路由协议链路状态路由协议

  • 距离矢量路由协议(Distance Vector Routing Protocols)

    • 通过向相邻路由器定期通告自己的路由表,逐跳传递路由信息。
    • 典型协议:RIP(Routing Information Protocol)。
    • 优点:实现简单。
    • 缺点:收敛慢,容易产生路由环。
  • 链路状态路由协议(Link State Routing Protocols)

    • 每个路由器通过广播链路状态信息构建整个网络的拓扑图,使用 Dijkstra 算法计算最短路径。
    • 典型协议:OSPF(Open Shortest Path First)、IS-IS(Intermediate System to Intermediate System)。
    • 优点:收敛快,路由精确。
    • 缺点:实现复杂,资源消耗大。
  • 路径矢量路由协议(Path Vector Routing Protocols)

    • 主要用于大型互联网络(如互联网),通过通告路径信息,避免路由环。
    • 典型协议:BGP(Border Gateway Protocol)。
    • 优点:适用于大规模网络,避免路由环。
    • 缺点:实现复杂,路由策略灵活。

边界网关协议 BGP

路由信息协议 RIP 和 开放最短路径优先 OSPF 都属于内部网关协议,用于自治系统内部的路由选择。

计算机网络:网络层 —— 路由信息协议 RIP

计算机网络:网络层 —— 开放最短路径优先 OSPF

边界网关协议(Border Gateway Protocol,BGP)属于外部网关协议 EGP 这个类别,用于自治系统 AS 之间的路由选择协议。

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

![[代价不统一.png]]

并且,AS 之间的路由选择还必须考虑相关策略(政治、经济、安全等)

![[相关策略.png]]

自治系统之间的路由选择协议应当允许使用多种路由选择策略。这些策略包括政治、经济、安全等,它们都是由网络管理人员对每一个路由器进行设置的。但这些策略并不是自治系统之间的路由选择协议本身。

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

BGP 的基本概念
  • 在配置 BGP 时,每个 AS 的管理员要选择至少一个路由器作为该 AS 的“BGP发言人

  • 一般来说,两个 BGP 发言人都是通过一个共享网络连接在一起的,而 BGP 发言人往往就是 BGP 边界路由器

  • 不同自治系统的 BGP 发言人要交换路由信息,首先必须建立 TCP 连接端口号为 179在此 TCP 连接上交换 BGP 报文,以建立 BGP 会话。利用 BGP 会话,交换路由信息,如增加新的路由或撤销过时的路由、报告出错的情况等。

![[BGP发言人交换路由信息.png]]

  • 使用 TCP 连接交换路由信息的两个 BGP 发言人,彼此称为对方的邻站(neighbor)或对等站(peer)

  • BGP 发言人除了运行 BGP 协议外,还必须运行自己所在AS所使用的内部网关协议IGP,例如 RIPOSPF

  • BGP 发言人交换网络可达性的信息,也就是要到达某个网络所要经过的一系列自治系统

  • 当 BGP 发言人相互交换了网络可达性的信息后,各 BGP 发言人就根据所采用的策略,从收到的路由信息中,找出到达各自治系统的较好的路由,也就是构造出树形结构且不存在环路的自治系统连通图

BGP 适用于特别适合于处理大型、复杂且具有多级结构的互联网环境,即多级结构的因特网

![[BGP适用于多级结构的因特网.png]]

BGP-4 的四种报文

BGP-4 是目前使用得最多的版本,在 [RFC4271] 中规定了 BGP-4 的四种报文:

  1. 打开OPEN)报文:用来与相邻的另一个 BGP 发言人建立关系,使通信初始化。

  2. 保活KEEPALIVE)报文:用来周期性地证实邻站的连通性

  3. 更新UPDATE)报文:用来通告某一条路由的信息,以及列出要撤销的多条路由。

  4. 通知NOTIFICATION)报文:用来发送检测到的差错。

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

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

相关文章

风力发电并网系统的相关控制策略

风电作为一种可再生资源,具有低污染、储量大等优点。随着近年来**绿色发展战略的深入实施,我国风力发电技术取得重大进展。风力发电总装机容量机并网规模呈逐年增长趋势,为**工农业生产及居民生活提供了大量电力能源。然而,风力发…

uni-app跨域set-cookie

set-cookie的值是作为一个权限控制的 首先,无论什么接口都会返回一个set-cookie,但未登录时,set-cookie是没有任何权限的 其次,登录接口请求时会修改set-cookie,并且在后续其他接口发起请求时,会在请求头…

【RabbitMQ】03-交换机

1. 交换机 2. Fanout交换机 广播。生产者向exchange发消息 SpringBootTest public class SpringAmqpTest {Autowiredpublic RabbitTemplate rabbitTemplate;Testvoid testSimple() {String exchangName "hmall.fabout";rabbitTemplate.convertAndSend(exchangName…

基于python构造电影neo4j知识图谱

使用pandas构造neo4j电影知识谱图 实现效果 电影知识图谱构造过程 实现过程 import pandas as pd from tqdm import tqdmfrom config import graph, cnndef delete_all():graph.run("MATCH(n) DETACH DELETE(n)")# 创建带属性的节点 def createNode(node, row):try…

曲速磨-干法研磨机、超细研磨机、节能细磨

曲速磨在涂料粉体中的应用广泛,主要体现在提高涂料粉体的品质、生产效率以及适应特殊工艺需求等方面。 1.提高涂料粉体品质 细化颗粒:曲速磨通过研磨媒体(如锆珠)的高速运动,对涂料粉体进行强烈的碰撞、摩擦和剪切作用,从而有效地…

加锁失效,非锁之过,加之错也|京东零售供应链库存研发实践

本文导读 从事京东零售供应链库存业务,库存数量操作增减十分频繁,并且项目开发中会常常遇到各种并发情况,一旦库存数量操作有误,势必给前台销售产生损失影响,因此需要关注对库存数量并发操作下的一致性问题。 大部分…

FileLink如何帮助医疗行业实现安全且高效的跨网文件交换

在当今数字化时代,医疗行业在快速发展的同时,也面临着数据安全和信息流转效率的双重挑战。患者的健康记录、影像数据、检查报告等大量敏感信息需要在不同医院、诊所、实验室和保险公司之间高效、迅速地传递。然而,传统的邮件、传真和纸质文件…

Nginx:我自己的网站

一、Nginx的简介 Nginx是一款轻量的级的HTTP服务器,也是一款邮箱代理服务器,同时具备反向代理,通用TCP/UDP代理功能。 Nginx可以运行在x86、ARM等多种平台上,同时支持Linux、windows等主流的操作系统 二、Nginx的特点 1、支持高并…

qt QDropEvent详解

1、概述 QDropEvent是Qt框架中用于处理拖放释放事件的一个类。它允许开发者在用户界面中更好地管理和处理拖放操作,从而实现交互式和响应式的应用程序。QDropEvent类提供了处理拖放释放事件所需的方法和信号,使得开发者能够轻松地实现拖放功能&#xff…

数据中台一键大解析!

自从互联玩企业掀起了数据中台风,数据中台这个点马上就火起来了,短短几年数据中台就得到了极高的热度,一大堆企业也在跟风做数据中台,都把数据中台作为企业数字化转型的救命稻草,可是如果我告诉你数据中台并不是万能钥…

C++设计模式结构型模式———组合模式

文章目录 一、引言二、组合模式三、总结 一、引言 组合模式是一种结构型设计模式, 可以使用它将对象组合成树状结构, 并且能像使用独立对象一样使用它们。代码实现中涉及了递归调用。组合模式与传统上的“类与类之间的组合关系”没有关联,不…

Maven项目的基础配置:利用IDEA将SpringBoot的项目打包成war文件

文章目录 引言Maven项目的聚合与继承(依赖管理)把项目打包成war包其他打包配置引言 利用IDEA将SpringBoot的项目打包成war文件Maven项目的聚合与继承(依赖管理)Maven项目的聚合与继承(依赖管理) 把项目打包成war包 利用IDEA将SpringBoot的项目打包成war文件:要配置启动…

基于vue框架的的奶茶店预约订单系统3fb55(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:用户,奶茶分类,奶茶信息 开题报告内容 开题报告 题目:基于Vue框架的奶茶店预约订单系统开发 一、研究背景与意义 背景 随着饮品市场的蓬勃发展,奶茶店作为其中的重要组成部分,其业务量和顾客需求持…

Interpreter 解释器模式

1 意图 给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示》解释语言中的句子。 2 结构 AbstactExpression 声明一个程序的解释操作,这个接口为抽象语法树中所有的结点所共享。TemminalExpression 实…

【数据结构】哈希思想详解

目录 前言1. unordered系列关联式容器1.1 unordered_map1.1.1 unordered_map介绍1.1.2 接口说明 1.2 unordered_set 2. 哈希概念3. 哈希冲突4. 哈希函数5. 哈希冲突解决5.1 闭散列5.1.1 闭散列的概念5.1.2 闭散列代码实现 5.2 开散列5.2.1 开散列概念5.2.2 开散列代码实现5.2.3…

变异凯撒(Crypto)

目录 解题思路 题目设计原理 总结 解题思路 从题目可以看出,这是凯撒密码,原理应该还是整体偏移,但是变异了。 凯撒密码只有字母的横移,而通过观察我们可知,加密密文包含大小写字母、特殊字符,于是猜想大…

光伏无人机踏勘,照亮光伏未来!

光伏电站选址地分散在各地,想要精准获取该地的地形特点与屋顶面积等信息,传统的人工踏勘耗时耗力且精度无法保证,难以满足现代光伏项目的规模快发发展需求。光伏无人机踏勘,照亮光伏未来! 在光伏无人机智能踏勘设计系统…

Nvidia突袭AI江湖!悄悄发布新模型,完爆OpenAI和Anthropic?

你以为Nvidia只会造芯片?太天真了!这家GPU巨头刚刚在AI语言模型领域上演了一出惊天逆袭,让OpenAI和Anthropic都措手不及。 没有轰轰烈烈的发布会,没有铺天盖地的宣传,Nvidia就这么静悄悄地在Hugging Face平台上扔出了一…

一. nginx学习笔记 又长又臭篇幅

目录 引言 Nginx 简介 Nginx 的特点和优势 适用场景 安装 Nginx 在 Windows 上安装 Nginx 在 Linux (CentOS)上安装 Nginx 基本配置 Nginx 配置文件结构 启动、停止和重载 Nginx 基本的服务器块配置 处理静态文件 设置文档根目录 配置 MIM…

go中Println和Printf的区别

Don’t worry , just coding! 内耗与overthinking只会削弱你的精力,虚度你的光阴,每天迈出一小步,回头时发现已经走了很远。 go中Println和Printf的区别 package mainimport ( "fmt" )//TIP To run your code, right-click the c…