一、为什么IP数据报的二层,三层,四层都有校验和?
(一)首先知道什么是校验和,校验和是干什么的呢?
就我所学习过的计算机网络安全书上的,循环冗余校验码(Cyclic Redundancy Check),它是一个算法,用它能知道比特流在传输过程中有没有丢失(为什么会丢失,电信号在传播过程中很容易受到干扰,比如磁干扰,电线周围有金属等),说的书面点就是数据在数据链路上传输的差错检测。
(二)现在来说为什么二层,三层,四层都有校验和,这样不是多余了吗?
答案很简单,因为呢IP数据报的设计由很多的团队设计,一个团队只负责其中的一层,他们为了保证这一层的数据不出错就得设计校验和,最后造成了每层都有校验和,每层都有校验和就会增加IP数据报的长度,也就增加了延时,因为在设备上运行校验算法需要消耗时间和硬件资源。
多说一嘴:我们网络上的各种协议等都是通过软件实现的,通过软件来实现各种算法当然会划分模块、层次,分工明确,各司其职,最后大家把各自负责的模块综合到一起形成一个系统。