计算机网络:网络层 —— 边界网关协议 BGP
文章目录
- 路由选择协议
- 动态路由协议
- 边界网关协议 BGP
- BGP 的基本概念
- BGP-4 的四种报文
路由选择协议
因特网是全球最大的互联网,它所采取的路由选择协议具有以下三个主要特点:
-
自适应:因特网采用动态路由选择,能较好地适应网络状态的变化。
-
分布式:因特网中的各路由器通过相互间的信息交互,共同完成路由信息的获取和更新。
-
分层次:将整个因特网划分为许多较小的自治系统(AutonomousSystem,AS)在自治系统内部(域内路由选择)和外部(域间路由选择)采用不同类别的路由选择协议,分别进行路由选择。
![![[自治系统.png]]](https://i-blog.csdnimg.cn/direct/728ab9a0f1254d259d18ee7b2a1020ed.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]]](https://i-blog.csdnimg.cn/direct/74a5abe64f634322b0ac2a4be29a2ad0.png)
并且,AS 之间的路由选择还必须考虑相关策略(政治、经济、安全等)
![![[相关策略.png]]](https://i-blog.csdnimg.cn/direct/15d29f34b08a41d59255a900d0804c80.png)
自治系统之间的路由选择协议应当允许使用多种路由选择策略。这些策略包括政治、经济、安全等,它们都是由网络管理人员对每一个路由器进行设置的。但这些策略并不是自治系统之间的路由选择协议本身。
BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(即不能兜圈子),而并非要寻找一条最佳路由。
BGP 的基本概念
-
在配置 BGP 时,每个 AS 的管理员要选择至少一个路由器作为该 AS 的“BGP发言人”
-
一般来说,两个 BGP 发言人都是通过一个共享网络连接在一起的,而 BGP 发言人往往就是 BGP 边界路由器。
-
不同自治系统的 BGP 发言人要交换路由信息,首先必须建立 TCP 连接,端口号为 179,在此 TCP 连接上交换 BGP 报文,以建立 BGP 会话。利用 BGP 会话,交换路由信息,如增加新的路由或撤销过时的路由、报告出错的情况等。
![![[BGP发言人交换路由信息.png]]](https://i-blog.csdnimg.cn/direct/e93e0c61332d4ba9a845a0aa81171256.png)
-
使用
TCP连接交换路由信息的两个 BGP 发言人,彼此称为对方的邻站(neighbor)或对等站(peer) -
BGP 发言人除了运行 BGP 协议外,还必须运行自己所在AS所使用的内部网关协议IGP,例如
RIP或OSPF -
BGP 发言人交换网络可达性的信息,也就是要到达某个网络所要经过的一系列自治系统。
-
当 BGP 发言人相互交换了网络可达性的信息后,各 BGP 发言人就根据所采用的策略,从收到的路由信息中,找出到达各自治系统的较好的路由,也就是构造出树形结构且不存在环路的自治系统连通图。
BGP 适用于特别适合于处理大型、复杂且具有多级结构的互联网环境,即多级结构的因特网:
![![[BGP适用于多级结构的因特网.png]]](https://i-blog.csdnimg.cn/direct/40435dc3396f47b8af4ffc0fdd3f9622.png)
BGP-4 的四种报文
BGP-4 是目前使用得最多的版本,在 [RFC4271] 中规定了 BGP-4 的四种报文:
-
打开(OPEN)报文:用来与相邻的另一个 BGP 发言人建立关系,使通信初始化。
-
保活(KEEPALIVE)报文:用来周期性地证实邻站的连通性
-
更新(UPDATE)报文:用来通告某一条路由的信息,以及列出要撤销的多条路由。
-
通知(NOTIFICATION)报文:用来发送检测到的差错。
相关文章:
计算机网络:网络层 —— 边界网关协议 BGP
文章目录 路由选择协议动态路由协议边界网关协议 BGPBGP 的基本概念BGP-4 的四种报文 路由选择协议 因特网是全球最大的互联网,它所采取的路由选择协议具有以下三个主要特点: 自适应:因特网采用动态路由选择,能较好地适应网络状态…...
Python数据可视化seaborn
产品经理在做数据分析时可能需要通过可视化来分析。seaborn官网 1. relplot 散点图 https://seaborn.pydata.org/examples/scatterplot_sizes.html import pandas as pd import seaborn as sns df pd.DataFrame({x: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],y: [8, 6, 7, 8, 4, 6,…...
Java继承练习
构建Person类(属性:名字、年龄、工作岗位),创建三个对象,并且根据对象的年龄或名字长度来进行冒泡排序 package chapter08.homework.test01;public class homework01 {public static void main(String[] args) {Perso…...
Excel怎么转换成word?分享两种方法!
Excel文件想要转换成word文档中,直接粘贴复制的话,可能会导致表格格式错乱,那么如何转换才能够保证表格不错乱?今天分享两个方法,excel表格转换为word文件。 方法一: 首先打开excel表格,将表格…...
nignx代理获取真实地址request.getRequestURL()
# 反向代理配置到后端接口 location /prod-api/ { # proxy_set_header Host $proxy_host; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarde…...
登录注册窗口(二)
登录注册窗口(二) 前言 在上一集我们就完成了整个登录注册窗口的布局,我们为了能够点击那两个特殊的按钮,我们就要去连接他们的槽函数。那么我们就开始这一集的内容吧。 需求分析 为了能够切换手机号与用户名的注册登录以及注…...
go channel 通道
一、底层实现 1、数据结构 type hchan struct {qcount uint // total data in the queuedataqsiz uint // size of the circular queuebuf unsafe.Pointer // points to an array of dataqsiz elementselemsize uint16closed uint32timer *t…...
论文阅读:Computational Long Exposure Mobile Photography (二)
这篇文章是谷歌发表在 2023 ACM transaction on Graphic 上的一篇文章,介绍如何在手机摄影中实现长曝光的一些拍摄效果。 Abstract 长曝光摄影能拍出令人惊叹的影像,用运动模糊来呈现场景中的移动元素。它通常有两种模式,分别产生前景模糊或…...
基于SSM+小程序的高校寻物平台管理系统(失物1)
👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1、项目介绍 本基于微信小程序的高校寻物平台有管理员,用户以及失主三个角色。 1、管理员功能有个人中心,用户管理,失主管理,寻物启示管理,拾…...
gerrit 搭建遇到的问题
1、启动Apache,端口被占用 : AH00072: make sock: could not bind to address (0S 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。: AH00072: make sock: could not bind to address 0.0.0.:443 a AH00451: no listening sockets available, shutti…...
UBUNTU查看CPU核心数
UBUNTU查看CPU核心数 前言一、使用lscpu命令1. 执行命令2. 查看输出 二、使用/proc/cpuinfo文件1. 查看文件2. 解释输出 三、使用nproc命令1. 执行命令2. 查看输出 四、使用htop或top工具1. 使用htop2. 使用top 五、使用inxi命令1. 执行命令2. 查看输出 六、使用图形界面工具1.…...
【JS】声明提升与块级作用域
我是目录 引言声明提升声明提升的理解函数表达式声明提升总结代码生成与查找变量的过程代码生成词法分析( Tokenizing/Lexing)语法分析( Parsing)代码生成生成代码总结查找变量不同版本中的执行上下文不同版本对执行上下文的定义let/constlet特点const特点let/const声明的变…...
Flink的流、批处理
Flink的数据流处理,是持续流模型,数据不会落地,上游和下游的Task同时启动,等待数据的到达,Flink的批处理还是用的MapReduce计算模型,先处理map端,再执行reduce端。 flink的流处理(STREAMING)&a…...
学习方法该升级了,AI时代的弯道超车:【心流学习法】行动与意识合一的巅峰进化
你是否曾感到内心如荒漠般干涸,面对浩瀚的知识海洋,热情逐渐消磨殆尽? 你是否渴望忘却时间的流逝,心无旁骛,与知识展开一场纯粹而深邃的对话? 在AI时代,智能体处理数据、知识迭代的速率让人…...
【大模型LLM面试合集】大语言模型架构_chatglm系列模型
chatglm系列模型 1.ChatGLM 1.1 背景 主流的预训练框架主要有三种: autoregressive自回归模型(AR模型):代表作GPT。本质上是一个left-to-right的语言模型。通常用于生成式任务,在长文本生成方面取得了巨大的成功&a…...
深入理解 Kafka:分布式消息队列的强大力量
一、引言 在现代分布式系统中,消息队列扮演着至关重要的角色,而 Kafka 作为其中的佼佼者,以其高吞吐量、可扩展性和持久性等特点被广泛应用。无论是处理海量的日志数据、实时的用户交互信息,还是复杂的微服务间通信,Ka…...
LabVIEW 离心泵机组故障诊断系统
开发了一套基于LabVIEW图形化编程语言设计的离心泵机组故障诊断系统。系统利用先进的数据采集技术和故障诊断方法,通过远程在线监测与分析,有效提升了离心泵的预测性维护能力,保证了石油化工生产的连续性和安全性。 项目背景及意义 离心泵作…...
GEE土地分类——土地分类的原始remap转化原始的土地分类名称
简介 GEE土地分类——土地分类的原始remap转化原始的土地分类名称 函数 first(image2) Selects the value of the first value for each matched pair of bands in image1 and image2. If either image1 or image2 has only 1 band, then it is used against all the bands…...
一些关于云电脑与虚拟化东西
前言 好久没有更新了,在进行自我校准。 云计算是什么? 云计算是一种模型,它使得用户能够随时随地、方便地、按需访问共享的可配置计算资源池(例如,网络、服务器、存储、应用程序和服务),这些资…...
Java实现图片转pdf
该方法可以选择多个图片是否合并为一个pdf输出,也可以选择图片为横向或者纵向输出,也可以选择pdf页面为A3或者A4 第一步 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version…...
【文档翻译】QNX Neutrino RTOS 7.1用户手册 - 第五章 文件操作
本文翻译自BlackBerry官方提供的QNX Neutrino RTOS User’s Guide,仅供学习参考使用 第五章 文件操作 文章目录第五章 文件操作文件类型文件名和路径名绝对路径和相对路径点和点点目录没有硬盘字母以点开头的路径名扩展名路径空间映射文件名规则所有内容的存储位置…...
英语长期没进步?大多是学习方式错了
很多人英语学了很久却毫无起色,归根结底,都栽在了同一个核心问题上。前阵子整理电脑文件,我翻出了早年的英语学习笔记。厚厚几十页的单词汇总、密密麻麻的语法批注,收藏夹里囤了上百个教学视频,还有曾经热血满满给自己…...
ChatGPT开源实现全景图:从RLHF原理到主流项目实战指南
1. 项目概述:一份给开发者的ChatGPT开源实现全景图最近几个月,ChatGPT的火爆程度无需多言。作为一名长期关注自然语言处理和开源生态的技术从业者,我观察到社区里涌现出了一大批旨在复现或探索ChatGPT技术路径的开源项目。这背后反映的&#…...
Blender 3MF插件:实现CAD到3D打印的无缝转换完整指南
Blender 3MF插件:实现CAD到3D打印的无缝转换完整指南 【免费下载链接】Blender3mfFormat Blender add-on to import/export 3MF files 项目地址: https://gitcode.com/gh_mirrors/bl/Blender3mfFormat 在3D打印和数字制造领域,3D Manufacturing F…...
Supervisely完整指南:5步打造AI视觉标注神器
Supervisely完整指南:5步打造AI视觉标注神器 【免费下载链接】supervisely Supervisely SDK for Python - convenient way to automate, customize and extend Supervisely Platform for your computer vision task 项目地址: https://gitcode.com/gh_mirrors/su…...
中性点不接地系统或中性点经消弧线圈接地系统的小电流接地故障仿真研究(Simulink仿真实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 🎁…...
云飞云 + SolidWorks服务器 = 10人研发共享方案,附硬件配置清单
10人研发团队用SolidWorks搞设计,是中小制造企业最常见的场景——模型要画、装配要搭、渲染要跑、图纸要存,每天8小时高强度运转。传统模式下每台工作站动辄2~3万元,10台就是25万起步;软件授权10套License,年费轻松30~…...
python拼装模型商城销售管理系统
目录同行可拿货,招校园代理 ,本人源头供货商项目概述核心功能技术栈特色亮点适用场景项目技术支持源码获取详细视频演示 :同行可合作点击我获取源码->获取博主联系方式->进我个人主页-->同行可拿货,招校园代理 ,本人源头供货商 项目概述 Python拼装模型商…...
怎么区分储能PACK线源头工厂和中间商?
在储能 PACK 自动化产线行业深耕多年,我见过不少新能源企业踩了中间商的坑。有的客户花了高于市场价两成的预算,拿到的却是套用通用模板的产线,防静电、防爆设计不到位,投产没多久就频繁故障;还有的后期出问题…...
在昇腾NPU上写NumPy代码是种什么体验?asnumpy实战踩坑全记录
前言 最近项目需要在昇腾NPU上跑一些数值计算,不是训练模型,就是纯算东西——矩阵分解、特征值、随机采样之类的。一开始我想,NumPy代码直接跑不就行了? 不行。NumPy跑在CPU上,数据要从NPU搬回CPU才能算,…...
