首页 > 编程知识 正文

bgp4协议,bgp是哪一层的协议

时间:2023-05-03 10:32:18 阅读:176256 作者:702

一个朋友问,明明有BGP,为什么需要OSPF和RIP这样的IGP呢?

这个问题……就像为什么会有局域网,以及是否需要广域网一样。

而且,这个问题其实我可以从两个角度来论证。 历史发展角度技术角度。 以下各受访者各有角度,但总体上是这两个方向。

淡淡的金鱼想做一点补充,稍微降低一下理解这个问题的门槛。 毕竟,当这些名词放在一起时,bzdfh有很大概率变得无知。 淡淡的金鱼先帮你理清关系。

乍一看,这个问题是BGP和IGP能否二选一,对吧?

但事实上:

IGP (内部网关协议)对应于EGP外部网关协议,它是相同的订单,并且可以进行比较。

因为边界网关协议(BGP )是外部网关协议(EGP )的最新版本,所以可以对它们进行比较。

在这个过程中,又必须采用AS自主系统(autonomous system )这个新名词。 这就是IGP和BGP这些孩子们的游乐场。 没有它,他们俩就不会辛苦,也就没有取舍的问题。

所以,先弄清楚这三种玩法是什么,然后我们再往下分析。

1、什么是自治系统(AS )

AS的全名是自动系统。 从英文名中可以看出,自治系统是由为互联网执行通用路由策略的管理机构(如运营商)管理的整个路由器和网络组。

移动、联通、电信三大巨头,他们各自有自治系统,他们之间相互独立,但各自运营商的自治系统内部按照一定的规则稳定运行。

这样的自治系统有很多。 像一个个的大型局域网一样,自治系统内部需要按照规则进行管理,外部也只有通过手段相互连接才能自由通信。

也就是说,对于互联网来说,一个AS是独立的整体网络。

在内部管理和外部沟通的双重目标下,出现了IGP和EGP两种“管理措施”,以保证运行顺畅。

2、什么是IGP?

互联网路由协议(IGP )是指在自主系统(AS )内部使用的路由协议,一般分为距离向量路由协议和链路状态路由协议两种。

其中,问题中涉及的OSPF和RIP位于此处。

一个AS中有多个路由器可以管理多个网络,并且需要路由信息才能了解每个路由器之间子网的可用性信息。 IGP负责管理这些内部路由,IGP中最典型的代表是RIP和OSPF。

RIP是谣言路由,主要动作是记录从离自己最近的路由器发送来的现成路由表。 这些路由条目不需要自己计算,而且机制非常简单,因此可以很容易地学习错误的路由。

只需倾听邻居的话,并将邻居用作到无直接连接的网络的下一跳。

OSPF是最佳路由,主要操作是收集网络中的各种信息,独立构建拓扑图,通过自己的独立计算到达目标。

运行OSPF的路由器知道网络的拓扑后,会根据拓扑计算路由。

乍一看OSPF很好,但唇语有点愚蠢,对吧?

其实这两个人在运用过程中都有自己的优点和缺点:

唇构成简单方便,容易买到,但唇的明显缺陷是容易学习错误路由,再加上唇收敛时间长,也是卡点。

OSPF的信息收集确实很细致,每个细节都不放过,但同时太大了,我很累。

3、什么是BGP?

边界网关协议(BGP )是运行在自制系统之间的路由协议,主要用作域间路由协议。 这可以说是网上核心的去中心化自主路由协议。 其目的是为了达成各网络的自治而进行中心化。

因为BGP是外部网关协议(EGP )发展20多年后的最新成果,可以与IGP (内部网关协议)进行呼应和对比。

IGP是自己的性格,BGP可以理解为社交手段。 必要时需要采取强硬手段震慑敌军,以便我们的国家始终对人温和谦虚。 这是两种方法,但目的是为了更好地运行自己。

BGP是APP应用层协议,传输层使用TCP,缺省端口号为179。 BGP是使用TCP作为传输层的唯一路由协议,并且其他路由协议可能不能返回至传输层。

因为是APP应用层协议,所以连接被认为是可靠的,不需要考虑fragment、确认、重发等基本任务。

因此,BGP是最复杂的路由协议,可以说根据所接收的信息判断决策,应用于路由表。

在基于EGP发展起来的当前,BGP被分为两种类型:外部BGP (外部BGP )不同的AS之间的BGP连接)和ibgp (边界BGP )相同的AS之间的连接。

关键是,这个IBGP明确表示可以适用于AS内部,所以会不会和IGP有冲突呢?

所以,为什么需要IBGP? 为什么IGP还在使用呢?

4、既然有BGP,为什么还要OSPF/RIP呢?

>

不同的性格有着不同的优势,就像铲子和汤勺,筷子和叉子,都是餐具,但使用场景不同,效果不同。

你吃意面用筷子吃也不是不行,但你用叉子卷着吃速度更快;有的时候用筷子夹汤圆吃也不是不行,但勺子吃更方便。所以,各类的路由协议也有自己的优势和短板,这是IGP没有被替换掉的原因。

IBGP和IGP一定是2选1吗?显然不是。

那作为同样都应用于AS内部的协议,为什么不能只选其中一个来用呢?

传统的解释看着累赘,我们简化一下理解。

我们来假设一下,如果没有IGP,只有IBGP的话,会变成什么样子:

IBGP是通过TCP连接的,IBGP·1号和IBGP·2号之间很可能没有实际的物理链路,如果没有IGP来提供路由,那么IBGP就毫无用处。

我们再来假设一下,如果没有IBGP,只有IGP,会变成什么样子:

IGP在内部好用是好用,但是处理路由的条目有限,路由表的数量一旦超过某个极限值,IGP就无法处理了。

再加上按照IGP那么“死板”的处理原则,只要其中有一条路由出现问题,那用IGP的这台路由器就要全部重新路由,10条可以,100条可以,10万条呢?

别说路由器受不受得住,带宽占用率也要哀嚎了。

而有IBGP就可以解决这个问题。

举个例子:

现在AS50/60/70里各有300台路由器,那这个时候AS50想要把其中的20000+路由传递到AS70之中,和AS60没有太大关系。

如果这时候没有IBGP的话,这20000+的路由都会被送到AS60的IGP之中去;如果时候有IBGP的话,那就只有AS70可以收到这20000+路由,提高效率不说,也突出了IBGP的路由控制能力。

你从这个例子里也可以看出,IBGP突出的能力其实是基于大基数的数据量来看的。BGP对于路由的学习,是比较特殊的适用于大型企业网。所以一般用于在各个企业网之间使用。

如果是一些小型网络,操作简单快捷才是最重要的,那这时候IGP里的其中一员猛将OSPF,OSPF的设备要比支持BGP的要多,选它不是更好吗?

具体问题具体分析,因地制宜制定策略,才可以高效行事。

全部都用BGP不是不行,理论上是ok的,只是本身设计时就是为了大型网络而设的,你小型网非要用,负荷那么大,不必强撑。

听点话,大家都这么用当然都是有自己的道理。

杀鸡焉用牛刀?但你非要用也不是不行,用呗,咱够豪横(手动狗头)

原创: 淡然的金鱼丨8年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。