基于Windows套接字编程的网络编码仿真实现
2012-04-16沈明蒲保兴唐彬
沈明 蒲保兴 唐彬
摘 要:针对网络编码数据传输技术,采用Windows套接字编程工具,提出了一种仿真实现方法。在局域网内选取若干个终端模拟网络节点,逻辑上构成一个单源组播网络,各终端上采用socket套接字编程方法,按照网络编码数据传输策略进行收发数据。给出的例子是典型的蝴蝶网络,但容易扩充到一般的单源组播网络。与已有的网络编码仿真器相比,提出的方法具有简便、易于掌握的特点。
关键词:线性网络编码;蝴蝶网络;套接字编程;仿真实现
中图分类号:TP393.09文献标识码:aDoI: 10.3969/j.issn.1003-6970.2012.02.004
Simulation Implementation of Network Coding Based on Windows Socket Programming
SHEN Ming,PU Bao-xing*,TANG Bin
(Department of Information engineering, Shaoyang College, Shaoyang 422001,Hunan, China)
【Abstract】By use of windows socket programming, a method of simulation implementation of network coding is proposed. In a local area network, some terminals are selected to simulate the network nodes logically to form a single source multicast network. with adopting socket programming, the terminals send or receiver data according to the data transmission strategy of network coding. the illustrated example is a typical butterfly network, but can easily extend to general single source multicast network. Comparing with the existing network coding simulator, the proposed method is simple, convenient and easily to be mastered.
【Key words】linear network coding; butterfly network; socket programming ;simulation implementation
0 引 言
网络仿真在网络技术的教学和科研中具有重要意义,它为理解网络理论、研究和应用网络技术提供了方便的分析工具,同时也是一种有效研究方法。网络编码[1]是一种新型的数据传输技术,它是传统路由传输技术的扩展:节点不仅进行信息转发与复制,还可以进行信息编码。因网络编码具有能提升网络的吞吐量,增加网络的安全性和鲁棒性等优点[2,3],从而得到了深入广泛的研究。对于网络编码研究过程中的实验环节和仿真实现,目前通常采用自编模拟程序的方式[4,5],但该方式不直观,且不利于对实验结果的分析比较,同时,对某些应用性能存在争议[6];还有一些学者选择NS这一网络仿真平台[7],但NS本身只支持节点的路由传输,而不支持节点的编码传输,从而必须对其进行扩展,由于NS的复杂性,扩展具有一定的难度;此外,还可以采用硬件的方法构造实验平台实现[8,9],但必须采用特殊的硬件,实现起来较麻烦。……