返回顶部
网络编码对于广播、组播通信尤其有益。其核心在于改变传统网络中简单的“存储-转发”(store-and-forward)机制,引入在节点处对流经的数据进行处理(如编码)的概念。
在传统的路由和转发机制中,网络中各节点主要任务是接收包,存储,然后转发到下一个节点。这种机制存在一些固有的问题,网络编码旨在解决下面这些问题:
提升网络吞吐量:传统网络中传输速度和容量可能受到链接中单一路径的带宽限制。而网络编码通过允许在网络中间节点处进行信息流的编码(例如,组合来自不同源的数据包),可以创建更多的可能路径,因此在某些情况下能够提升整体网络吞吐量。
提高带宽利用率:特别是对于组播和广播通信,在传统情况下,需要为每个接收者复制和转发数据包,这样会造成大量冗余数据传输。通过网络编码,可以将信息流在网络层次进行合并和混合,相同的信息不需要在网络中多次传输,有效减少了数据冗余。
增强网络鲁棒性:网络编码可以增强对包丢失和网络动态变化的适应能力,提高网络容错能力。当网络中的某个节点或链接出现故障时,通过编码,信息流可能会经由其他路径到达目的地,减少信息损失。
减少延迟:在某些情况下,由于数据包不需要等待完整的数据到达才开始处理,网络编码可以降低延迟。
提高能效性:将数据传输和转发的次数减少到最低,可以在一定程度上节约能量,对于功率敏感的网络设施或设备(如无线传感器网络)特别重要。
简化网络协议:网络编码在设计好的系统中可能减少对复杂协议的需求,因为编码本身提供了数据恢复和检错的能力。
网络编码通常涉及代数运算(如异或操作)来编码和解码数据包,这些运算可以在数字网络传输中实时进行,可以广泛应用于有线网络、无线网络、P2P(peer-to-peer)网络及多种数据流网络。网络编码从理论提出后,已经逐渐在各种网络技术(如内容分发网络CDN、无线通信、数据存储和传输)中找到应用。