网络编码

网络编码(Network Coding):

传统的通信网络传送数据的方式是存储转发,即除了数据的发送节点和接收节点以外的节点只负责路由,而不对数据内容做任何处理,中间节点扮演着转发器的角色。长期以来,人们普遍认为在中间节点上对传输的数据进行加工不会产生任何收益,然而R Ahlswede等人[1]于2000年提出的网络编码理论彻底推翻了这种传统观点。

网络编码是一种融合了路由和编码的信息交换技术,它的核心思想是在网络中的各个节点上对各条信道上收到的信息进行线性或者非线性的处理,然后转发给下游节点,中间节点扮演着编码器或信号处理器的角色。根据图论中的最大流-最小割定理[2],数据的发送方和接收方通信的最大速率不能超过双方之间的最大流值(或最小割值),如果采用传统多播路由的方法,一般不能达到该上界。R Ahlswede等人以蝴蝶网络的研究为例,指出通过网络编码,可以达到多播路由传输的最大流界,提高了信息的传输效率,从而奠定了网络编码在现代网络通信研究领域的重要地位。

网络编码技术自七年前诞生以来,可以说基本上藏身于各大学和实验室中而鲜为人知。这是一种编码算法,支持者们声称它可以将现有的网络吞吐量提高一倍,同时还能改善网络的可靠性和防范攻击的能力。网络编码技术最热心的支持者们说,该技术将会引发网络的下一代革命;其他人则认为,网络编码技术更有可能会潜移默化地改变目前基于路由的网络架构。

基于网络编码在无线网络通信的应用

2013-03-21 11:05 bica 论文联盟 字号:T | T

无线网络作为一种新型的便捷性网络资源,正在日益普及,尤其是在当前网络技术快速发展的今天显得尤为重要。

AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验

引言

无线网络作为一种新型的便捷性网络资源,正在日益普及,尤其是在当前网络技术快速发展的今天显得尤为重要。

在无线通信网络技术应用中,网络编码是当前通信应用中的关键技术之一,网络编码在网络节点处对网络信息进行有效处理,经处理后的数据进行转存或传输,其实质都是都过对传输数据编码操作实现的,在一定程度上节省了网络资源消耗,提高频谱资源利用率,网络编码在频谱资源有限的条件下,能发送更多的数据传输,大大提高了通信信道的传输容量,节省了网络宽带资源等优点。由于无线网络数据传输的特殊性,使得网络编码改善网络性能,优化结构和协议上进行了新的突破,具有很大应用前景。

1.网络编码

1.1网络编码简介

传统的通信网络中,网络节点所起到的作用只是对所传网络数据进行存储或转发功能,对中间网络数据不做任何处理和加工,只是作为中间路由的责任,只做中间转发器的角色。一直以来人们普遍认为中间节点对于网络数据加工不会产生其他效益,直到2000年,R.Ahlswede等人在IEEE trans-IT上发表了一篇题为“网络信息流”的文章,提出了网络编码的概念,彻底改观了这一传统观点。

从数据通信理论观点研究,节点不仅仅只做存储转发功能,可以对收到的相关信息进行线性或非线性编码操作,经过处理后的编码数据再直接传输出去,中间起着编码信息的作用,网络编码正是根据这一思想应运而生,在网络目标末端接收节点上,再把编码信息重新编码译出,然后发送给最终的接收端。

1.2工作原理

网络编码融合了路由和编码两种信息技术的结合,其核心思想是对网络数据传输过程中的各个节点上的信息进行处理,然后传输给下游节点,中间节点扮演者编码或处理信号的角色,然后在最后节点处对网络数据进行演绎还原,中间减少传输复制过程,大大提高了传输效率。

1.3网络编码优点

(1)使组播传输速率达到最小割最大流决定的网络容量的上限。

(2)节省网络带宽资源消耗。

(3)均衡网络负载。

(4)提高网络鲁棒性。

2.网络编码应用无线网络技术分析

2.1网络编码技术与传统网络的相比

传统的网络数据传输需要经过路由器进行传输,路由器将依照网络目标地址将数据包向各个链路传输,由于缺乏时序的安排,常常会出现链路堵塞现象,需要排队等候,将大大制约了网络传输的效率。网络编码技术的出现有效解决了传统的计算机网络传输过程中路由器不能及时发送数据的问题,数据拥塞现象得到及时解决,从而有效提高了数据的传输速度。

2.2网络编码传输更具有安全性

网络编码在无线网络安全应用方面具有一定可靠性,在无线网络数据传播过程中,传统的检测方法是基于消息认证码或数字签名的方式对数据包的恶意修改进行检测。

基于网络编码产生了一种数据包的随机网络编码检测策略,这种方法计算量小,而且检测概率可以根据通信控制开销、网络编码复杂程度和检测时间这些因素进行调控。这种方法亦存在不足现象,主要是要求接收节点需要预先获得至少一个没有被恶意修改过的数据包,并且数据包的内容不能被攻击者知晓,在数据传输过程抗攻击性效果很差。

2.3无线网络中的编码感知路由协议

当前的无线网络中的编码协议,基本上都是被动的等待编码机会,在网络传输中处于被动状态,大大影响了网络编码性能的发挥和利用,这种被动的策略控制方式一定程度上限制了网络编码吞吐量的能力,为进一步提高网络编码的技术特性,需在节点上创造出更多的编码机会,从而有效提高整个无线网络的吞吐量能力,体现出网络编码的技术优势特色。

如图1编码感知路由机制所示,有两个网络流,分别为从A到E以及从F到A。传统的数据传输方式采用(a)最短路径路由方式传输,可知其路径传输方式为A→B→C→E以及F→D→B→A,数据传输过程中无编码机会。如果传输路径选择(b)编码感知路由机制则出现了编码机会,F到A的数据传输路径为F→E→C→B→A,尽管在传输路径上比(a)多了一个节点,在节点B和C处创造了编码机会,可有效提高网络传输的吞吐量。

s试图向{\displaystyle t_{1},t_{2}}组播两条消息x,y。线路cd上会需要同时传输x,y,一般的传输方案行不通。

2.4网络编码应用于无线网络的优势

网络编码理论在无线网络与有线网络中的实际应用有着显著的区别,主要归结于无线网络结构的特殊性。网络编码非常适宜于无线网络环境领域的应用,网络编码正是针对无线链路的不可靠性和物理层广播特性,可解决传统网络路由、跨层设计等技术无法解决的问题,进一步推广了网络编码在无线网络领域的广泛应用。

网络编码具有路由和编码相结合的技术特色,不仅是链路中的节点具有存储和转发功能,同时使网络节点具有编码的作用,可以解决传统路由、跨层设计等技术无法解决的问题,提高网络性能。和传统网络编码机制相比,无线网络中的网络编码能够大大提升单播流的吞吐量,主要得益于无线介质的广播特性。

3.网络编码在无线网络的应用

随之网络编码的研究,网络编码的优点显而易见,网络编码通过与其他应用技术相结合的创新应用给当前无线网络技术带来前所未有的变化,网络编码应用目的是达到有线网络的组播容量,从网络编码的应用技术分析,从其应用领域的发展状况表明网络编码不仅提高了现有网络的吞吐量,并且还改变了网络结构及协议的设计方法,优化了网络传输性能,网络编码的应用很大程度上提高了网络性能,相应的网络设计及可行性实现的复杂性也随之增加,如何在考虑经济成本的情况下实现现实网络环境编码是将来更深入的研究方向。

3.1网络编码与信道编译码的结合应用

网络编码与信道的编译码技术相结合的核心实质是利用网络编码的冗余信息协助信道编码,利用中继传输的冗余度来获得分集增,通过对相关联合编码的几个方案分析,研究结果显示联合编码在多种指标上的充分体现了其固有的性能优势,如信道容量、能量消耗、误码率等方面体现的较为完美。

可以降低无线网络中的能量消耗,这对以电池为能源供给的无线网络来说,是至关重要的;从而获得好的抗噪性能,达到最大的信道容量,有效降低了编码复杂度以及由信道噪声带来的失真。

3.2网络编码与协作分集技术的结合应用

网络编码与协作分集技术相互结合是在多用户环境下,每一个天线用户在完成自身信息的同时也为其自身的协作伙伴传输信息,通过编码感知路由机制路径上的节点相互协作,整个信息传输过程形成虚拟天线系统,这样相互之间就获得较多的分集增益,从一定程度上克服了信道衰落,在协作分集的基础上进行网络编码可以同时获得分集增益和网络编码增益。

实现以网络的最大流传输信息。在传输数据协作过程中,为提高数据传输速率,可在数据传输的节点和终端节点放置中继器,可有效改善无线通信系统抗衰落性能,大大提高网络资源利用率。

4.结语

网络编码是近年来新兴起的一个研究领域,正在引起更多人们的关注,网络编码在传输速率、负载消耗、负载均衡、鲁棒性等方面带来的优势有待于进一步深入研究,由于无线通信网的网络架构复杂多变性,数据包在传输过程中容易丢失,网络编码技术的出现可作为是一种协作通信的模式口,与其他技术相结合可以优化网络性能,改善网络结构,促进网络协议发展。

总之网络编码技术的应用在无线网络数据传输中起到了关键作用,具有很广阔的应用前景。

时间: 2024-08-05 06:13:05

网络编码的相关文章

网络编码(Network Encoding)与多径路由(Multi-path routing)

传统的网络编码研究在以一个简单的例子阐述网络编码方案可以比传统的单路径多传输1.5比特.虽然要了解网络编码的现有研究成果需要概率论.信息论.图论等方面的知识,但感觉似乎这些还没有达到实用程度? 下面几个问题如何解决: 1.如何不知道网络拓扑的情况下"探测"之,并应用一个最佳的网络编码方案? 2.网络编码仅目前提出的那几种方案吗? 3.多源传输信道有何实际意义?既然"多源",这些源之间如何保证一致性和同步?难道应用量子纠缠的特性吗? 如果不考虑编码性能的最优,倒是可以

网络编码概述

网络编码概述  网络编码,是指一种融合了路由和编码的信息交换技术,其核心思想,是在网络中的各个节点上,对各条信道上收到的信息进行线性或者非线性的处理,然后转发给下游节点,中间节点扮演着编码器或信号处理器的角色.网络编码已经被证明可以极大地提高网络的吞吐量和可靠性,可以分为流内网络编码与流间网络编码两类.其中,流间网络编码是指网络节点将不同的数据包编码进行收集和整理组合,之后通过广播的形式发送出去,从而有效提高数据包单次传输时的信息量,减少信息的传输次数,从而提高网络吞吐量:流内网络编码是指网络节

网络编码 GB2312、GBK与UTF-8的区别

GB2312.GBK与UTF-8的区别 这是一个异常经典的问题,有无数的新手站长每天都在百度这个问题,而我,作为一个“伪老手”站长,在明白这个这个问题的基础上,有必要详细的解答一下. 首先,我们要明白,GB2312.GBK和UTF-8都是一种字符编码,除此之外,还有好多字符编码.只是对于我们中国人的网站来说,用这三种编码 比较多.简单的说一下,为什么要用编码,在计算机内,储存文本信息用ASC II码,每一个字符对应着唯一的ASCII码.最初计算机是由美国发明的,他们也用的是键盘和上面的字母,所以

Retrofit网络框架

JDK 7以上 Android 2.3以上 自动实现json到javabean的装换,是对OKHttp的增强版,底层包装了Gson框架,但是必须new 一个Gson对象 主要掌握注解 @GET("home")  @Query("index")  @FormUrlEncoded  @Field("username")等 自己的思路步骤: 1,创建retrofit对象,并设置retrofit的参数 和转换的Gson 2,提取工程所需要的网络请求方法

网络传输中文编码问题

以下文章复制自http://blog.sina.com.cn/s/blog_7a3510120100xt5b.html 1.要解决中文乱码问题,首先得了解什么是字符编码 计算机要处理各种字符,就需要将字符和二进制内码对应起来,这种对应关系就是字符编码.要制定字符编码首先要确定字符集,并将 字符集内的字符排序,然后和二进制数字对应起来,根据字符集内字符的多少,确定几个字节来编码. 2.常用的字符编码 ASCII 编码是目前计算机中常用的最广泛地 字符集及其编码.ISO-8859-1可以表示的是西欧

网络编程:Http通信与Socket通信

http://note.youdao.com/share/?id=f14d304548003f65e34255d3ddf9df31&type=note 网络编程:Http通信与Socket通信(移动互联核心) 知识点概述: 1.Socket通信:面向连接(TCP)和无连接的(UDP) 2.HttpURLConnection 接口:Get和Post方式 3.HttpClient接口:Get和Post方式 知识点详述: 1 Socket通信 Socket称为”套接字“,用于描述IP地址和端口,它是支

网络 解决外网与内网或内网之间的通信,NAT穿透

在网络编码中会发现程序在局域网中是可以适用的,但是在外网与内网之间和内网与内网之间就不可行.问题就在于NAT.首先介绍下NAT. NAT的作用NAT(Network Address Translator),网络地址转换.顾名思义,它是一种把内部私有网络IP地址翻译成公有网络IP地址的技术,如图5-1所示.NAT是在IP地址日益缺乏的情况下产生的,它的主要目的是使地址能够重用[9].  图5-1 NAT模型  IP地址分为五类:A类,B类,C类,D类,E类(这里不考虑保留的IP地址).A.B.C类

从原理上搞定编码(一)-- 初识编码

编码问题一直都伴随着程序猿从不间断,刚开始学编程的时候好多次遇到编码问题,解决了文件读取的编码问题,又遇到了网络编码问题,解决了网络编码问题又遇到了数据库编码问题.总结一下无非就是编码原理没搞清楚,希望本文能从原理上让菜鸟们理解编码,遇到问题可以从原理上搞定编码. 一.编码 人类先有了自己的语言,交流了若干个世纪,然后出现了计算机.可惜计算机只认0和1,人类只能认文字,双方都不能妥协,那就必须要有一个从文字到0.1的映射了.从文字到0.1的映射称为编码,反过来从0.1到文字叫解码. 具体什么是编

android 三种网络通信接口及各个接口的代码示例

第一部分 Android网络基础 Android平台浏览器采用了WeBKit引擎,这款名为Chorme Lite的Web浏览器拥有强大扩展特性,每个开发者都以为编写自己的插件,使得浏览器的功能更加完善. 目前Android平台有3种网络接口. 第一种 java.net.*(标准java接口) 此接口提供与联网有关的类,包括流和数据包套接字.Internet协议.常见HTTP处理.如:创建URL以及URLConnection/HttpURLConnection对象.设置连接参数.连接服务器.向服务