自学教程 从零学编程

GGP 协议

一、GGP 是什么

GGP(Gateway-to-Gateway Protocol,网关到网关协议),网络层路由协议,定义于RFC823,IP协议号3。

诞生于ARPANET时代,是早期互联网核心网关之间使用的内部网关协议,现已彻底淘汰。

背景:早期互联网有一组核心主干网关(core gateway),GGP专门用来在这些核心网关之间交换路由信息;非核心网关使用EGP和核心网关互通。现代互联网已经不再使用GGP,替换为BGP、OSPF、IS-IS等。

二、核心算法

GGP使用距离矢量算法,度量值为跳数,选择跳数最少的路径作为最优路由。

  • 每个核心网关维护全网所有网络的路由表;
  • 周期性向邻居网关发送路由更新报文,通告可达网络以及对应的跳数;
  • 收到路由更新后,更新本地路由表,选出最短路径。

三、GGP报文类型

  1. Echo / Echo Reply:邻居保活探测,每15秒发送Echo,探测邻居网关是否存活。收到应答判定邻居可用。
  2. Routing Update:路由更新报文,携带可达网络列表+跳数,是核心报文。
  3. Error报文:错误通知。

四、GGP工作流程

  1. 邻居网关之间周期性发送Echo探测,确认邻居可达;
  2. 网关周期性向邻居发送路由更新,告知自己能到达哪些网络、跳数;
  3. 收到路由更新,对比跳数,更新本地路由表;
  4. 路由收敛完成,IP数据包依据路由表转发。

特点:早期核心网关数量很少,所以可以全网同步完整路由。互联网规模变大后,GGP无法继续使用。

五、GGP、EGP、BGP 的关系(重点区分)

  • GGP:核心主干网关的内部路由协议(IGP),距离矢量,已废弃;用于早期ARPANET核心网关之间。
  • EGP(外部网关协议):不同自治系统AS之间交换可达性,不是路由算法,仅传递可达信息,无法自动选路,现已淘汰。
  • BGP(边界网关协议):现代不同自治系统之间的外部网关协议,替代EGP,基于路径矢量。

口诀:GGP是老核心主干IGP;EGP是早期AS间协议;BGP是现代AS间协议。

六、GGP 的缺陷(淘汰原因)

  1. 扩展性极差:要求每个核心网关保存全网全部路由,互联网规模变大后路由表膨胀,无法承载;
  2. 距离矢量协议固有问题:收敛慢,容易产生路由环路;
  3. 只支持跳数作为度量,不能考虑带宽、延迟、链路成本;
  4. 仅适用于少量核心主干网关的简单拓扑,无法支持大规模、多AS的现代互联网。

七、优缺点

✅ 优点

  1. 协议简单,距离矢量实现容易;
  2. 适合ARPANET早期小规模主干网络。

❌ 缺点

  1. 无法扩展,网络变大后路由表爆炸;
  2. 仅跳数度量,选路不灵活;
  3. 收敛慢,存在路由环路风险;
  4. 早已废弃,现代设备不再支持。

八、小结

  1. GGP网关到网关协议,网络层,IP协议号3;ARPANET早期核心网关之间的IGP,距离矢量,度量为跳数;
  2. 使用Echo保活 + Routing Update路由更新;
  3. 只适合少量主干核心网关,互联网扩容后无法继续使用,现已彻底淘汰;
  4. 区分:GGP(核心网关内部)、EGP(早期AS间)、BGP(现代AS间)。

思考题:GGP为什么无法应用在现代互联网主干?

标签:

0 条笔记