2020-04-11

路由那些事

路由器根据路由表(Routing Table)转发数据包。路由控制分为静态路由和动态路由。静态路由是管理员事先设定好路由信息的方式。动态路由需要路由器进行通信,再根据路由协议得到路由表。

路由协议分为两大类

  • 外部网关协议(Exterior Gateway Protocol)
  • 内部网关协议(Interior Gateway Protocol)

EGP和IGP的关系类似于IP地址网络部分和主机部分的关系。根据EGP在区域网络之间进行路由选择,根据IGP在网络内部进行路由选择。

最具代表性的路由算法有两种

  • 距离向量(Distance-Vector)
    路由器之间互换各自网络的方向及位置的信息,并以这些信息为基础制作路由表。这种方法处理简单,但容易发生路由循环。
  • 链路状态(Link-State)
    通过信息同步,路由器了解网络的整体连接状态/网络拓扑,并根据该图确定通往目标网络的路径。能够保证路由信息的准确性和最优性,但是处理复杂巨大的网络时要付出计算代价。

常见的内部网关协议有 RIP和 OSPF,外部网关协议有 BGP。

RIP(Routing Information Protocol)

RIP广泛应用与LAN。路由器将信息每隔30s向周围的路由器进行广播,广播的内容是自己与某个网络的最短距离。(如果等到6次都没有收到某个路由器的信息,那么就断开与它的连接。)

RIP基于距离向量决定路径。距离的单位为“跳数”,即经过路由器的个数。如果一个网络有两条路径,那么就选择距离较短的。

RIP协议存在一些问题,比如循环广播导致无限计数,难以处理环路中突发故障的情况。为此,RIP采用如下几种方法:

  • 最长距离不超过16
  • 水平分割(split horizon):路由器不再把受到的路由消息返还给发送端。
  • 毒性逆转(poisoned reverse):当网络中发生链路断开的情况,不是不再发送这个消息,二是将这个无法通信的消息传播出去。即,发生一个距离为16的消息。
  • 触发更新(triggered update):当路由信息发生变化时,不等待30秒而是立即发送出去。

使用RIP协议,在一个具有众多环路的复杂的网络中,想要达到一个稳定的状态也是需要花一段时间的,并且,哪怕网络处在稳定的状态,还是要定期交换路由信息,一定程度上是对网络资源的浪费。

OSPF(Open Shortest Path First)

OSPF是链路状态型路由协议。路由器之间交换链路状态生成网络拓扑信息,然后再根据拓扑信息生成路由控制表。支持子网掩码。

RIP的路由选择,要求途中经过的路由器个数越少越好。与之相比,OSPF可以给每一条链路赋予一个权重(每条链路可以具有不同的带宽),并始终选择一个权重最小的路径。

RIP的包,只有一种类型,一边确认是否连接了网络,一边传送网络信息。而在OSPF中,根据作用的不同可以分为5种:

类型 功能
1 问候(HELLO) 确认向量路由器
2 数据库描述(Database Description) 链路状态数据库的摘要信息
3 链路状态请求(Link State Request) 请求从数据库中获取链路状态信息
4 链路状态更新(Link State Update) 更新链路状态数据库中的链路状态信息
5 链路状态确认应答(Link State Acknowlegment) 链路状态信息更新的确认应答

通过上述不同类型的包,OSPF不仅可以大大减少网络流量,还可以达到迅速更新路由信息的目的。

当网络规模越来越大时,OSPF为了减少计算负荷,引入了区域的概念。区域将若干个网络和主机划分为一个小组,成为一个“自治系统”(AS)。每个区域设置若干个边界路由器与外界相连。

BGP(Border Gateway Protocol)

BGP 是连接不同组织机构的一种协议,因此属于外部网关协议,主要用于连接不同ISP。

ISP、区域网络等会将每个网络编配成一个个自治系统(AS)进行管理。每个自治系统拥有一个16比特的 AS 编号。有了 AS 编号的域,相当于一个“国家”。两个自治系统要想直接通信必须架设专线,不然就要通过其他 AS 进行中转。

BGP是路径向量协议。根据BGP交换路由信息的路由器叫做BGP扬声器。RIP和OSPF基于最短路径进行数据包转发,而BGP基于 AS 之间的合约进行数据包转发,一般选择 AS 数最少的路径,不过仍然要遵守各个 AS 之间的约定进行路由选择。

MPLS(Multi Protocol Label Switching)

MPLS是一种新技术,叫做标记交换,它对每个 IP 包做上标记,然后根据这个标记进行转发。

标记的转发无法在传统的路由器上进行,在MPLS网络中实现标记交换功能的路由器叫做标记交换路由器(LSR,Label Switching Router),与外部网络连接的那部分 LSR 叫做标记边缘路由器(LER,Label Edge Router)。

MPLS 会给每个数据包的 IP 首部追加32比特的标记,这个标记能决定数据转发的路径。

MPLS 有着极高的转发速度,处理比传统的路由协议更加简单,可以通过高速的硬件实现转发。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容