这几天在写一个OSPF的自动报文工具,生成LSA时,需要计算校验和,不然设备不会处理LSU报文。各处查找校验和生成的方法,未果!
只知道LSA的校验和是叫Fletcher Checksum, http://en.wikipedia.org/wiki/Fletcher%27s_checksum。刚开始没看懂,后来查了其他blog, 就是
出自RFC905:
ISO Transport Protocol Specification ISO DP 8073,附录B,摘录如下:
ANNEX B - CHECKSUM ALGORITHMS
(This annex is provided for information for implementors and is
not an integral part of the body of the standard.)
B.1 SYMBOLS ----用到的变量
The following symbols are used:
C0 variables used in the algorithms ----存储校验码
C1
<

本文介绍了OSPF LSA(链路状态通告)的Fletcher校验和计算方法,包括RFC905中描述的生成和检查校验和的算法步骤。虽然理解过程遇到困难,但通过参考Zebra实现和实验已知报文,逐步接近正确计算。

3673

被折叠的 条评论
为什么被折叠?



