CN102904954B - 一种基于网络编码的6LoWPAN分片可靠传输方法 - Google Patents
一种基于网络编码的6LoWPAN分片可靠传输方法 Download PDFInfo
- Publication number
- CN102904954B CN102904954B CN201210389431.2A CN201210389431A CN102904954B CN 102904954 B CN102904954 B CN 102904954B CN 201210389431 A CN201210389431 A CN 201210389431A CN 102904954 B CN102904954 B CN 102904954B
- Authority
- CN
- China
- Prior art keywords
- coding
- 6lowpan
- packet
- burst
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000005540 biological transmission Effects 0.000 title claims abstract description 19
- 239000013598 vector Substances 0.000 claims abstract description 18
- 230000008030 elimination Effects 0.000 claims description 6
- 238000003379 elimination reaction Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 4
- 239000012634 fragment Substances 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 238000005265 energy consumption Methods 0.000 abstract 1
- 238000006062 fragmentation reaction Methods 0.000 description 4
- 238000013467 fragmentation Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于网络编码的6LoWPAN分片可靠传输技术,其中所述6LoWPAN网络包含发送节点和接收节点,由发送节点的“编码与发送方法”和接收节点的“解码方法”两部分组成,发送节点对所要发送的IPv6数据进行分片,利用网络编码对多个分片编码形成多个编码包,再将这些编码包及其编码向量发送给接收节点,接收节点通过解码获得原来的数据分片,并将之还原成原来的IPv6数据包。本发明的有益效果主要表现在:在链路不可靠的低功耗无线个域网中,发送节点无须重发数据包,可以提高传输数据包的可靠性,也可以降低6LoWPAN网络节点的传输能耗。
Description
技术领域
本发明涉及低功耗无线个域网络与互联网Internet的互联互通方法,更具体地涉及一种基于网络编码的6LoWPAN分片可靠传输方法。
背景技术
为了充分利用现有的Internet技术,IETF(Internet Engineering Task Force)工作组在2007年制定了6LoWPAN(IPv6 over Low Power Wireless Personal Area Networks)协议,使得基于IEEE 802.15.4标准的低功耗无线个域网WPAN即Wireless Personal Area Network可以与Internet互联互通。
目前,Internet广泛使用IPv6协议。在IPv6协议中,网络层数据包最小传输单元MTU即Minimum Transmission Unit为1280字节。然而,在基于IEEE 802.15.4标准的无线个域网WPAN中,MAC帧的最大长度为127字节,而且MAC帧的头部需要放置协议控制域、源地址、目的地址、帧检验序列等内容。因此,在一个MAC帧中可以用于运载网络层数据包的有效载荷即Payload只有102个字节左右。于是,6LoWPAN协议引入了一个适应层即Adaptation Layer,它完成对IPv6数据包的分片/组装即Fragment/Assemble功能。也就是说,一个IPv6数据包在发给位于无线个域网WPAN内的一个节点之前,必须把它进行分割以产生多个分片,然后把各个分片逐一发送给目的节点;目的节点在收到所有分片之后,再将所接收到的分片组装成原来的IPv6数据包,再将这个拼装完成的数据包交给协议栈的上一层,即运输层。
在6LoWPAN协议中,假如有一个分片未能被目的节点正确接收,则目的节点丢弃原先已经正确接收的分片。这样,一个IPv6数据包的任一分片丢失均导致发送节点需要重新发送所有的分片。由于IEEE 802.15.4标准主要面向无线个域网络,其节点无线发射器的数据传输速率和发射功率都非常有限,因而,通信质量不高,丢包非常普遍。为了提高可靠性,IEEE 802.15.4的MAC层采用重传与确认机制,发送节点MAC层重传次数由IEEE 802.15.4标准中属性macMaxFrameRetries的值确定,这个值的缺省值为3,被现有文献1所公开:IEEE Computer Society. “IEEE 802.15.4 Standard for Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low-Rate Wireless Personal Area Networks (WPANs)”,2006,即IEEE计算机学会,“IEEE 802.15.4标准 ––低速率无线个域网络介质接入控制与物理层规范”,2006年。
现有技术中,CN101959276A公开了“一种6LoWPAN的嵌套移动网络路由优化方法”;2010年11月23日,常熟理工学院王晓楠申请了专利“一种6LoWPAN无线传感器网络路由方法”;CN102148756A公开了“一种基于6LoWPAN邻居发现的树状路由方法”;2011年8月10日,北京邮电大学黄小红等人申请专利“6LoWPAN网络面向HTTP协议的TCP首部压缩方法”。上述现有技术所提出的方法主要是解决路由问题,即把数据包从一个节点传递到另一个节点的问题。
发明内容
为了解决现有技术中存在的上述技术问题,本发明利用网络编码即Network Coding技术,让发送节点利用编码向量对所要发送的所有数据分片分成多个组分别进行线性网络编码,保证接收方以充分大的概率收到足以解码的数据包,通过解码还原出原来的IPv6数据包。
所述的基于网络编码的6LoWPAN分片可靠传输方法,所述的6LoWPAN网络包含发送节点和接收节点,由发送节点的编码与发送步骤和接收节点的解码步骤两部分组成,其中,所述的发送节点的编码与发送步骤包括以下步骤:
步骤1. 根据IEEE 802.15.4标准中MAC帧的有效载荷,将一个IPv6数据包分成n片;
步骤2. 在有限域GF(216)上,选择m个不同的元素1, 2, …, m,组成N个编码向量v1, v2, …, vm如下:
(1)
其中mn,确定m和N值的具体方法,在步骤5之后给出;
步骤3. 将m个分片:K1, K2, …, Km进行线性网络编码,生成N个编码包,,…, 如下:
(2)
步骤4. 向接收方发送N个数据包,每个数据包由编码包及其编码向量组成,即每个数据包包含: 和vk, 其中,k=1, 2, …, N;
步骤5. 结束;
在所述的发送节点的编码与发送步骤中,所述确定m和N算法由4个步骤确定m和N的值:
步骤1. 置M为尚未发送的分片数,并置m=1;
步骤2. 如果m=M, 则转到步骤5,否则,置m=m+1;
步骤3. 如果成立,则转到步骤2,否则,转到步骤4;
步骤4. 取 ,其中表示最小整数上界,参数p是发送节点和接收节点之间无线链路传递数据包的成功率;
步骤5. 结束;
特殊地,在p0.5时,取m=4;
所述接收方的解码步骤包含以下步骤:
步骤1. 将接收到的来自同一个IPv6数据包的m个分片所组成的数据包的编码向量组成一个mm矩阵,采用高斯消元法求解一个m个方程m个未知数的方程组,进而得出m个数据分片,接收方接收到以下m个数据包,它们包含编码包及其编码向量:和vk, 其中,k=1, 2, …, m,则接收方得到以下线性方程组:
通过高斯消元法可得原来的m个数据分片K1, K2, …, Km如下:
步骤2. 在获得n个分片组成原来的IPv6数据之后,向发送方发送一个确认数据包;
步骤3. 结束。
进一步的,所述参数p取值为发送节点和接收节点之间的无线链路的ETX(Expected Transmission Count)值的倒数。
具体实施方式
下面对本发明作进一步说明。
本发明的基于网络编码的6LoWPAN分片可靠传输方法,由发送方即发送节点的“编码与发送方法”和接收方即接收节点的“解码方法”组成。
如前所述,一个IPv6数据包至少有1280字节,而基于IEEE 802.15.4标准的无线个域网MAC帧的最大长度为127字节,因此,节点在发送一个IPv6数据包给无线个域网节点时,需要进行分片。设发送方将要发送的一个IPv6数据包分割成n个分片:K1, K2, …, Kn;设发送方与接收方之间通信链路传递数据包的成功率为p,则发送方平均发送1/p次,才能将一个数据分片成功发送给接收方。
发送方在发送n个数据分片时,与6LoWPAN协议采用逐片发送且在发送失败时采用重传的方法不同,本发明不需要发送方重传,而是让发送方反复采用以下“编码与发送方法”直到所有分片发送完毕。
“编码与发送方法”:
步骤1. 根据IEEE 802.15.4标准中MAC帧的有效载荷,将一个IPv6数据包分成n片;
步骤2. 在有限域GF(216)上,选择m个不同的元素:1,2,…,m,组成N个编码向量:
(1)
其中mn,确定m和N值的具体方法,由下文给出。
步骤3. 将m个分片:K1,K2,…,Km进行线性网络编码,生成以下N个编码包:
(2)
步骤4. 向接收方发送N个数据包,每个数据包由编码包及其编码向量组成,即每个数据包包含:和vk, 其中,k=1,2,…,N。
步骤5. 结束。
在上述“编码与发送方法”中,为了使接收方接收到m个编码包,发送方至少需要发送m/p个编码包。而且,式(3)中最大编码系数mN-1必须在有限域GF(216)上,即mN-1 216 -1=65535。因此,选取N满足条件:N=m/p,mN-1 65535。于是,
(3)
因此,发送方执行以下算法,称为“确定m和N算法”,以确定“编码与发送方法”中m和N的值:
步骤1. 置M为尚未发送的分片数,并置m=1;
步骤2. 如果m=M, 则转到步骤5,否则,置m=m+1;
步骤3. 如果式(3)中即成立,则转到步骤2,否则,转到步骤4;
步骤4. 取 ,其中表示最小整数上界;
步骤5. 结束。
特殊地,在p0.5时,本发明取m=4,此时式(3)成立。
一旦接收方收到m个数据包,则它采用以下“解码方法”:
步骤1. 将接收到的m个数据包的编码向量组成一个mm矩阵,采用高斯消元法求解一个m个方程m个未知数的方程组,进而得出m个数据分片。例如,接收方接收到以下m个数据包,它们包含编码包及其编码向量:和vk, 其中,k=1, 2, …, m,则接收方得到以下线性方程组:
即
这样,通过高斯消元法可得:
这样,就获得原来的m个数据分片K1, K2, …, Km。
步骤2. 在获得n个分片组成原来的IPv6数据之后,向发送方发送一个确认数据包。
步骤3. 结束。
发送方将要发送的IPv6数据包分割成n个分片,使得每个分片包括产生一个编码包所使用的编码向量所占的字节数小于IEEE 802.15.4的MAC帧的有效载荷。
节点每发送一个数据包,就计算所使用的无线链路的ETX即Expected Transmission Count,然后取参数p为该链路的ETX的倒数。
当p0.5时,取m=4,并取N为m/p的最小整数上界。否则,以前述“确定m和N算法”确定m和N的值。
发送方根据前述“编码与发送方法”编制N个编码包,并向接收方发送N个数据包,每个数据包携带编码包及其所使用的编码向量。所发送的数据包头部格式按照6LoWPAN协议而定,而数据包的数据域格式由三部分组成:1)编码包包含的分片个数m,占1字节;2)编码向量,占2m字节;3)编码包,所包含的字节数与单个分片大小相同。
接收方在收到一个数据包之后,按照6LoWPAN协议,根据数据包头部内容确定数据域所在位置,从该位置读出数据包数据域的第一部分即m的值。然后,读出数据域第二部分即读出2m字节,每2个字节组成编码向量的一个元素;再读出数据域的第三部分,即编码包内容。
一旦接收方接收到m个编码包,它就按照前述“解码方法”解出原来的m个数据分片。如果所获得的数据分片可以组装成一个IPv6数据包,则接收方就向发送方回复一个确认包。
以上所述及图中所示的仅是本发明的优选实施方式。应当指出,对于本领域的普通技术人员来说,在不脱离本发明的原理的前提下,还可以作出若干变型和改进,这些也应视为属于本发明的保护范围。
Claims (2)
1.一种基于网络编码的6LoWPAN分片可靠传输方法,6LoWPAN网络包含发送节点和接收节点,其特征在于:由发送节点的编码与发送步骤和接收节点的解码步骤两部分组成,其中,所述的发送节点的编码与发送步骤包括以下步骤:
步骤1. 根据IEEE 802.15.4标准中MAC帧的有效载荷,将一个IPv6数据包分成n片;
步骤2. 在有限域GF(216)上,选择m个不同的元素1, 2, …, m,组成N个编码向量v1, v2, …, vN如下:
(1)
其中mn,确定m和N值的具体方法,在步骤5之后给出;
步骤3. 将m个分片:K1, K2, …, Km进行线性网络编码,生成N个编码包,,…, 如下:
(2)
步骤4. 向接收方发送N个数据包,每个数据包由编码包及其编码向量组成,即每个数据包包含: 和vk, 其中,k=1, 2, …, N;
步骤5. 结束;
在所述的发送节点的编码与发送步骤中,所述确定m和N算法由4个步骤确定m和N的值:
步骤一. 置M为尚未发送的分片数,并置m=1;
步骤二. 如果m=M, 则转到步骤五,否则,置m=m+1;
步骤三. 如果成立,则转到步骤二,否则,转到步骤四;
步骤四. 取 ,其中表示最小整数上界,参数p是发送节点和接收节点之间无线链路传递数据包的成功率;
步骤五. 结束;
在p0.5时,取m=4;
所述接收方的解码步骤包含以下步骤:
步骤1. 将接收到的来自同一个IPv6数据包的m个分片所组成的数据包的编码向量组成一个mm矩阵,采用高斯消元法求解一个m个方程m个未知数的方程组,进而得出m个数据分片,接收方接收到以下m个数据包,它们包含编码包及其编码向量:和vk, 其中,k=1, 2, …, m,则接收方得到以下线性方程组:
通过高斯消元法可得原来的m个数据分片K1, K2, …, Km如下:
步骤2. 在获得n个分片组成原来的IPv6数据之后,向发送方发送一个确认数据包;
步骤3. 结束。
2.如权利要求1所述的基于网络编码的6LoWPAN分片可靠传输方法,其特征在于:所述参数p取值为发送节点和接收节点之间的无线链路的ETX(Expected Transmission Count)值的倒数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210389431.2A CN102904954B (zh) | 2012-10-15 | 2012-10-15 | 一种基于网络编码的6LoWPAN分片可靠传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210389431.2A CN102904954B (zh) | 2012-10-15 | 2012-10-15 | 一种基于网络编码的6LoWPAN分片可靠传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102904954A CN102904954A (zh) | 2013-01-30 |
CN102904954B true CN102904954B (zh) | 2015-05-06 |
Family
ID=47576989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210389431.2A Active CN102904954B (zh) | 2012-10-15 | 2012-10-15 | 一种基于网络编码的6LoWPAN分片可靠传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102904954B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103533079B (zh) * | 2013-10-23 | 2016-08-17 | 杭州箭源电子有限公司 | 一种基于Zigbee的ESL图片更新方法及系统 |
CN104811265B (zh) * | 2014-01-29 | 2018-12-18 | 上海数字电视国家工程研究中心有限公司 | 基带帧的封装方法及解封装方法 |
CN104270685B (zh) * | 2014-10-17 | 2018-03-27 | 阿纳克斯(苏州)轨道系统有限公司 | 一种有轨电车中多媒体信号的传输方法 |
JP2019041182A (ja) * | 2017-08-23 | 2019-03-14 | 株式会社東芝 | 無線通信装置および無線通信方法 |
CN112714070B (zh) * | 2019-10-24 | 2024-01-09 | 北京华为数字技术有限公司 | 通信方法、装置、系统及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148756A (zh) * | 2011-01-26 | 2011-08-10 | 武汉邮电科学研究院 | 一种基于6LoWPAN邻居发现的树状路由方法 |
CN102711211A (zh) * | 2012-05-30 | 2012-10-03 | 浙江工业大学 | 一种基于6LoWPAN的无线传感器网络节能数据传递方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101588887B1 (ko) * | 2009-02-09 | 2016-01-27 | 삼성전자주식회사 | 멀티-홉 기반의 인터넷 프로토콜을 사용하는 네트워크에서 이동 노드의 이동성 지원 방법 및 그 네트워크 시스템 |
-
2012
- 2012-10-15 CN CN201210389431.2A patent/CN102904954B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148756A (zh) * | 2011-01-26 | 2011-08-10 | 武汉邮电科学研究院 | 一种基于6LoWPAN邻居发现的树状路由方法 |
CN102711211A (zh) * | 2012-05-30 | 2012-10-03 | 浙江工业大学 | 一种基于6LoWPAN的无线传感器网络节能数据传递方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102904954A (zh) | 2013-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104243096B (zh) | 一种基于喷泉码的深空多文件传输方法 | |
CN102904954B (zh) | 一种基于网络编码的6LoWPAN分片可靠传输方法 | |
CN103152359B (zh) | 一种端到端无线传输控制协议线性网络编码的改进方法 | |
US8958375B2 (en) | Framing for an improved radio link protocol including FEC | |
CN107547436A (zh) | 基于网络编码的传输控制协议的编译码方法 | |
US20120208580A1 (en) | Forward error correction scheduling for an improved radio link protocol | |
CN101841479B (zh) | 一种基于网络编码的高误码率长时延网络自适应传输方法 | |
CN102170332A (zh) | 基于喷泉码和网络编码的机会路由协议数据分发方法 | |
CN107634823A (zh) | 基于网络编码的传输控制协议的数据传输方法 | |
Mohammadi et al. | Optimal frame length to maximize energy efficiency in IEEE 802.15. 6 UWB body area networks | |
CN103607264A (zh) | 基于3g网络的带内数据传输方法 | |
CN104009830B (zh) | 基于有限集合网络编码arq的大规模接收端数据广播方法 | |
Zhu et al. | Network coding-based reliable IPv6 packet delivery over IEEE 802.15. 4 wireless personal area networks | |
CN103944674B (zh) | 适合物理层无速率编码传输的数据拆分封装方法 | |
Gómez et al. | Reliable communications over lossy wireless channels by means of the combination of UDP and random linear coding | |
CN102711211B (zh) | 一种基于6LoWPAN的无线传感器网络节能数据传递方法 | |
Ayadi et al. | TCP over low-power and lossy networks: tuning the segment size to minimize energy consumption | |
CN107645700B (zh) | 一种基于ussd协议的移动通信数据传输方法 | |
CN105391518B (zh) | 一种面向深空网络的文件传输方法 | |
CN106954242A (zh) | 一种基于网络编码的卫星分布式动态多径路由方法 | |
US8665794B2 (en) | Frame concatenation in wireless UWB devices | |
CN116347510A (zh) | 基于物理层跨技术通信的联合编码方法 | |
CN107426768B (zh) | 一种无线自组织网络数据传输方法 | |
KR20100081901A (ko) | 랜덤선형부호화를 사용한 데이터 송수신 방법 | |
Bao et al. | TCP VON: joint congestion control and online network coding for wireless networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |