协议即方法论

认知

STP和OSPF教给我的不是配交换机,而是怎么组织知识

STPOSPF认知隐喻网络工程

后来我学了STP。它叫生成树协议。它是个二层防环路协议。那一刻的震惊很难描述。STP做的事情,和我关于图与树的思考几乎是一个模型。

在现实网络拓扑中,为了冗余,我们会在设备之间拉很多条链路。这是图结构。有环路的。STP的作用,就是把这些多余链路逻辑上去激活。让它们处于待命状态,但不参与转发。从而把一张图变成一棵树。流量只走树上的路径。环被打破了。

STP是在一九八五年,由拉迪亚·帕尔曼发明的。一九九零年,它被标准化为IEEE 802.1D。它的核心算法就是图论中的生成树算法。在连通图中选取无环子图。保留全部顶点但只保留必要边。这不是一个比喻。这是同一个原理在两个不同领域里的独立存在。一个是数学。一个是网络工程。一个是学习方法。

接着我学了OSPF和RIP。这两个协议做的事情比STP更微妙。它们把物理层面的图拓扑结构,在逻辑上转化成树形结构来管理。这个缩写的展开后是Open Shortest Path First。该协议由RFC 2328在一九九八年定义。它使用Dijkstra算法,计算最短路径树。所有节点互为邻居关系。但只是逻辑上的邻居。实际上它们之间的物理连接仍然存在。只是根据管理距离或cost来选路。流量只走某一条边。其他边不通。

管理距离和cost是不同层级的概念。管理距离解决的,是不同路由协议冲突时听谁的问题。Cisco路由器上,OSPF的管理距离是110。RIP是120。Cost解决的,是同一个协议内部走哪条路的问题。光缆链路带宽高。cost低。铜缆带宽低。cost高。流量自动走光缆。这和我做选择题时的思维方式完全一致。面对多个选项,按照某种优先级排序。找出最优的那条路。把其他的路逻辑关断。

我学STP的时候不是为了找学习方法。我是为了考网络工程师证书。我想系统性学习这部分内容。因为工作中也会用到。那不如趁现在有时间先把证明拿到手。越早投入就越早积累。我没有想到的是,技术学完了。收获最大的却是一个认知框架。

从STP到OSPF,技术在教我同一件事。冗余是好的。但你需要在冗余之上建立一棵树。环路必须打破。不然流量会永远在里面打转。注意力会永远在里面打转。理解力会永远在里面打转。

参考文献

  1. Perlman, R. (1985). An algorithm for distributed computation of a spanning tree in an extended LAN. ACM SIGCOMM Computer Communication Review, 15(4), 44-53. https://doi.org/10.1145/318951.319004
  2. IEEE 802.1D-2004. IEEE Standard for Local and Metropolitan Area Networks: Media Access Control (MAC) Bridges. https://doi.org/10.1109/IEEESTD.2004.94569
  3. Moy, J. (1998). RFC 2328: OSPF Version 2. Internet Engineering Task Force. https://www.rfc-editor.org/rfc/rfc2328
  4. Dijkstra, E. W. (1959). A note on two problems in connexion with graphs. Numerische Mathematik, 1, 269-271. https://doi.org/10.1007/BF01386390