CN100477639C - 一种无线网络节点缓冲数据包处理方法 - Google Patents

一种无线网络节点缓冲数据包处理方法 Download PDF

Info

Publication number
CN100477639C
CN100477639C CNB2005101262286A CN200510126228A CN100477639C CN 100477639 C CN100477639 C CN 100477639C CN B2005101262286 A CNB2005101262286 A CN B2005101262286A CN 200510126228 A CN200510126228 A CN 200510126228A CN 100477639 C CN100477639 C CN 100477639C
Authority
CN
China
Prior art keywords
length
packet
waterline
input
bag
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.)
Expired - Fee Related
Application number
CNB2005101262286A
Other languages
English (en)
Other versions
CN1980184A (zh
Inventor
张天乐
刘敏
邓辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
G Cloud Technology Co Ltd
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CNB2005101262286A priority Critical patent/CN100477639C/zh
Publication of CN1980184A publication Critical patent/CN1980184A/zh
Application granted granted Critical
Publication of CN100477639C publication Critical patent/CN100477639C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种无线网络节点缓冲数据包处理方法,包括:1)对输入包按照数据长度作降序排列,并初始化水位线t的值;2)判断输入包集合是否为空,若为空则结束操作,否则执行下一步;3)判断当前的输入包集合中是否有输入包,使得输入包的数据长度之和恰好等于水位线t的值;若存在,则执行步骤4),否则执行步骤5);4)将输入包拼接成一个长度为L的输出数据包,拼接成功后,存储拼接得到的输出包,并将已拼接的输入数据包删除,并重新执行步骤2);5)将水位线t的值下降一个单位,然后转到步骤2)重新执行。本发明方法代码空间小,求解速度快,拼接效率高,非常适合在无线网络节点实施。

Description

一种无线网络节点缓冲数据包处理方法
技术领域
本发明涉及无线网络,特别涉及无线网络节点缓冲数据包处理方法。
背景技术
有效使用能源,提高传输性能是无线网络面临的重要问题。而数据包是网络的基本操作对象,数据包的数据量、长度、数量等都直接影响传输的功耗。通过对数据包进行处理,优化传输性能,可以显著减少能量消耗。在通常的数据包分发和处理研究中,所针对的研究对象是完全连接的网络拓扑,都假设至少存在一条从源到目的节点的完整路径。如图1所示,在分簇的无线网络中,每个簇具有一个簇首领,簇内的节点将产生的数据发送给簇首领。簇首领通常不会立刻转发,而是将数据包放入缓冲区。缓冲区汇集不同长度数据包,当数据积累到一定程度,再由簇首领转发出去。而在实际使用中,无线网络通常是具有间歇连接特性的网络。所谓间歇连接的网络是指网络中,节点由于节能、故障、干扰等因素,不能一直在线,而是以间歇的方式工作,因此源和目的节点之间的完整路径可能不存在。如图2所示,对于间歇连接的网络,由于网络中源和目的节点之间必然存在一条完整的路径这一前提被打破,网络存在若干暂时非连通的分簇,传输路径随时可能断开。因此对于能够适用于间歇连接的网络路由来讲,必须能够缓存数据,容忍数据包在源节点或者中间节点逗留。
在间歇连接的网络中,当数据要发送时,网络正好处于被隔离成几个部分的状态,节点间的端到端的应用就被破坏,只能采用异步的方式传递数据,允许更大的缓冲时间和包的端延迟。因此,间歇连接的网络中,节点经常会缓冲大量数据包。研究证明,如果在发送前对数据包进行处理,能够有效的降低传输开销。
关于数据包的处理方法有很多种,在数据量方面,参考文献1Shu Lei,S.Y.Lee,Yang Jie“ETRI:A Dynamic Packet Scheduling Algorithm for Wireless SensorNetworks”提出了两层缓冲区模型按照数据的价值和重要性对数据包进行区分和过滤,优化传输效率;参考文献2“Bhaskar Krishnamachari,Deborah Estrin,StephenWicker,“Modeling Data-Centric Routing in Wireless Sensor Networks”,proceedings of6th international workshop on Modeling analysis and simulation of wireless and mobilesystems,2003”以及参考文献3“Huseyin Ozgur Tan and Ibrahim Korpeoglu,“PowerEfficient Data Gathering and Aggregation in Wireless Sensor Networks”,SIGMOD/PODS volume 32,number 4,December 2003”提出了以数据为中心的数据融合方法,减少数据内容的冗余,显著降低了传输量。
在数据量一定的情况下,数据包长度的选择会影响网络性能和功耗。较长的数据包会产生较大的丢包率,而小数据包包头开销大,需要做出折衷选择。在参考文献4“Y.Sankarasubramaniam,I.F.Akyildiz and S.W.McLaughlin,″Energy Efficiencybased Packet Size Optimization in Wireless Sensor Networks″in Proc.of the First IEEEInternational Workshop on Sensor Network Protocols and Applications,Anchorage,Alaska,2003”以及参考文献5“Eytan Modiano,“An adaptive algorithm for optimizingthe packet size used in wireless ARQ protocols”ACM-Baltzer Journal of WirelessNetworks 5,pp279-286,1999”给出了最优化包长度的计算方法,提出不同的情况下存在能量效率最高的数据包长度。
通过数据融合、调度处理,数据量得到有效的控制,在此基础上,包长度的选择成为重要问题,同时它也决定了网络上数据包的数量。在实际的网络中,往往存在大量小于优化长度的碎片数据包,影响了传输的效率。这些碎片数据包在每一跳都要付出路由开销,转发时发送电路的启动瞬变电流也会带来额外功耗,因此,降低碎片数据包的数量是有效的节能途径。
发明内容
本发明的目的是为了降低碎片数据包对网络传输效率的影响,提供一种将碎片数据包拼接成指定长度数据包的方法。
为了实现上述目的,本发明提供了一种无线网络节点缓冲数据包处理方法,用于将不同长度的输入数据包拼接成唯一长度的输出数据包,包括:
1)、对输入包集合中的各个输入包按照数据长度作降序排列,并初始化水位线t的值,将水位线的值定为输出包的长度值L;
2)、判断输入包集合是否为空,若为空则结束操作,否则执行下一步;
3)、判断当前的输入包集合中是否有一个或一个以上的输入包,使得这些输入包的数据长度之和等于水位线t的值;若存在这样的输入包,则执行步骤4),否则执行步骤5);
4)、将输入包拼接成一个长度为L的输出数据包,若t的值小于L,则将输出数据包中的不足部分填充0,拼接成功后,存储拼接得到的输出包,并将已拼接的输入数据包从输入数据包集合中删除,并重新执行步骤2);
5)、将水位线t的值下降一个单位,然后转到步骤2)重新执行。
本发明还提供了一种无线网络节点缓冲数据包处理方法,用于将不同长度的输入数据包拼接成多种不同长度的输出数据包,包括:
a)、对输入包集合中的各个输入包按长度做降序排列;
b)、根据输出包集合中不同长度输出包的种类数,设定水位线的数目,一条水位线对应一种长度的输出包,然后初始化各条水位线的值和全局下限的值,在初始化时,水位线的值与其对应的输出包的长度相同,全局下限的值为100%;最后选取一条水位线及其对应的输出包;
c)、判断输入包集合是否为空,若为空,结束操作,否则,执行下一步;
d)、判断当前的输入包集合中是否有一个或一个以上的输入包,使得这些输入包的数据长度之和等于当前水位线的值;若存在这样的输入包,则执行步骤e),否则执行步骤f);
e)、将输入数据包拼接成一个与当前水位线对应的输出包,若水位线的值小于输出包的长度,则将输出包中的不足部分填充0,拼接成功后,存储拼接得到的输出包,并将已拼接的输入数据包从输入数据包集合中删除,然后重新执行步骤c);
f)、判断输出包集合中是否存在其他长度的输出包,使得该输出包所对应的水位线的值与该输出包长度的比值高于全局下限的值,若存在,则用该输出包对应的水位线代替当前水位线,并转到步骤c),若不存在,执行步骤g);
g)、降低当前水位线的值,并将降低后的水位线的值与该水位线对应的输出包长度作比较,若它们的比值高于或等于全局下限的值,则跳转到步骤c),否则,将全局下限更新为该比值,然后跳转到步骤c)中继续执行。
在所述的输入饱和输出包都增加一个额外包接头的情况下,所述的无线网络节点缓冲数据包处理方法适用于输出包和输入包具有额外包头的情况。
本发明的优点在于:
1、本发明的无线网络节点缓冲数据包处理方法的代码空间小,求解速度快,非常适合在无线网络节点实施。
2、本发明的无线网络节点缓冲数据包处理方法采用的多水位线启发搜索方法,对传输过程做了全局优化,拼接的利用率较高。
3、本发明的无线网络节点缓冲数据包处理方法对数据包进行拼接处理,会牺牲计算资源、响应时间等,但是换取了传输开销和路由开销的降低,较为适用于某些强调网络节省传输功耗而对实时性要求比较低的环境。
附图说明
图1为完全连接的无线网络的拓扑结构示意图;
图2为间歇连接的无线网络的拓扑结构示意图;
图3为多水位线控制拼接示意图;
图4为本发明的无线网络节点缓冲数据包处理方法将不同长度的输入数据包拼接成唯一长度的输出数据包时的流程图;
图5为本发明的无线网络节点缓冲数据包处理方法将不同长度的输入数据包拼接成不同长度的输出数据包时的流程图。
具体实施方式
下面结合附图和具体实施方式,对本发明的方法作进一步的描述。
本发明的无线网络节点缓冲数据包处理方法是要将大量具有不同长度的数据包拼接成优化目标长度的数据包。在做数据包的拼接时,把某个节点汇集的若干数据包,称为输入包,把拼接后产生的包,称为输出包。其中,输入包的长度取决于节点的采集数据长度,每种长度的包数量不限,输出包的长度在有限几个固定长度中取值,每种长度的包数量不限。如果输入包拼接后小于输出包长度,则需要添加0,以简化发送接收过程。输入包拼接成输出包会有额外包头开销,用于到达目的节点后的包解封装。
下面结合实施例,对本发明的方法作详细说明。
实施例1:输出包长度固定的拼接方法。
当输出包长度固定时,要实现数据包的拼接就是要求解将n个输入包,全部拼接成长度为L的输出包的最优拼接方案。在本发明的方法中,采用利用率作为数据拼接效果的评判标准。所述的利用率是输入包数据的总长度与输出包数据的总长度之间的比值,利用率越高,显然拼接方案的效果越佳。
对于这种数据包的拼接问题,可以采用一般的贪婪算法求解,即每次将当前最大的输入包拼接入输出包,当该输出包不能再容纳,则拼接入另外一个新的输出包,直到所有输入包处理完毕。这种方法虽然简单,但可能会由于选择了局部最优,而错过最优解,数据总长度增加过多,造成带宽浪费。
为了提高拼接效率,本实施例中,可采用单水位线方法。所述的水位线表示在进行拼接尝试时的扫描位置。用t表示水位线,定义水位线为从输出包长度L到0的整数,水位线t从L开始递减进行扫描。具体实施步骤如下:
步骤11、对输入包集合中的各个输入包按照数据长度作降序排列,并初始化水位线t的值,将水位线的值定为输出包的长度值L;
步骤12、判断输入包集合是否为空,若为空则结束操作,否则执行下一步;
步骤13、判断当前的输入包集合中是否有一个或一个以上的输入包,使得这些输入包的数据长度之和恰好等于水位线t的值;若存在这样的输入包,则执行步骤14,否则执行步骤15;
步骤14、将这些输入数据包拼接成一个长度为L的输出数据包,若t的值小于L,则将输出数据包中的不足部分填充0,拼接成功后,存储拼接得到的输出包,并将已拼接的输入数据包从输入数据包集合中删除,并重新执行步骤12;
步骤15、将水位线t得值下降一个单位,然后转到步骤12重新执行。
上述方法的算法实现如下:
用PDisc表示输入包,包的结构如下:
struct PDisc{
   int len  :包的长度
   int count:该长度的包数量
   PDisc*next:下一种包描述
}
设P为以PDisc为元素的链表,表示各类长度的输入包,对包做降序排列。R为PDisc为元素的链表,表示一个拼接方案。从P列表的第一个元素p开始求解。t为水位线,cn为当前尝试的输入包使用的次数,初始为0。求解一个完美拼接方案的函数为Perfect(p,t),方法如下:
1、先尝试将一个p类包拼接入t;
2、如果p->len恰等于t,则找到一个完美拼接,生成一个R列表元素,r->len=t,r->count=1,返回;
3、如果t小于p->len,p包不可能拼接成t,则求解Perfect(p->next,t),返回;
4、如果p->c-cn=1,p类包恰好用完,则cn置0,将一个p类包拼接入t,求解Perfect(p->next,L-t);
5、如果p->count-cn>1,则cn加1,求解Perfect(p,L-t);
6、如果5中的方案包含p类包,则判断其使用的次是否超出可用数量,如超出,则将方案中p类包的使用次数加1,返回;如果超过,则丢弃这个方案,返回;
7、如果P列表非空或者未找到方案R,p=p->next,转到1;
8、如果找到一个方案,则说明一个p类包,以及t-p->len长度的包拼接方案中的包恰好可以拼接成t,将p类包添加到方案列表R头部。
下面结合实例对上述方法进行说明。
假设有一个按降序排列的输入包集合{8,7,6,5,4,3,2,1,1},在该集合中的数字表示各个输入包的数据长度,而输出包的固定长度为10。利用单水位线方法对数据包做处理时,根据步骤10,首先将水位线的长度定为10,然后检查输入包集合中是否有一个或一个以上数据包的长度等于10,显然的,输入包长度为3和7的两个包相加后为10,将这两个输入包拼接得到新的输出包,可计为a,然后将这两个输入包从集合中删除,得到的输入包集合为{1,1,5,6,8,4,2}。然后对输入包集合中的剩余输入包作检查,看是否还有输入包的长度为10。同样的,可以得到长度为8和2的两个输入包,以及长度为6和4的两个输入包。将这些数据包分别拼接后得到的两个输出包分别记为b和c,最后剩余的输入包集合为{1,1,5}。利用长度为10的水位线已经不能对剩余的输入包作拼接,需要对水位线的长度作递减。将水位线的长度减少一个单位,变为9,依然不能对剩余输入包作拼接,因此,继续递减,直到水位线的长度变为7,此时,可将输入包集合中长度为1、1和5的三个输入包作拼接得到输出包的d,在该输出包中,不足部分添加0。最后,输入包集合{1,1,3,5,6,8,4,7,2}中的9个输入包得到4个输出包,它的总利用率为92.5%。
实施例2:具有多种输出包长度的拼接方法。
将输入包拼接成输出包的方法中,输出包长度可能不是唯一的,而是有多种可选的输出包长度。当具有多种输出包长度可以选择时,需要综合考虑将输入包拼接到不同长度的输出包中的可能组合,因此也就存在多个搜索分支。搜索的方式有两种:深度优先遍历和广度优先遍历。深度优先,是在一种长度的输出包完全扫描结束,才转到下一种。而广度优先则是按照一定的切换规则在各种长度的输出包上并行的轮流扫描。本发明采用多水位线启发搜索算法,如图3所示,多水位线启发搜索算法是一种广度优先方式。该方法设置一个全局下限,用输出包的拼接利用率表示,所述的拼接利用率是将输入包的总长度与拼接后的输出包长度的比值。水位线初始定为第一个输出包的长度,对应于每个输出包都记录一个水位线。判断当前水位线是否恰好可以容纳某些输入包,如果存在则输出;如果不存在则继续搜索。水位线在对应输出包上扫描,每次搜索后水位线减1,并重新计算利用率,当利用率低于全局下限,则转到下一个输出包上扫描,当前水位线变更为新的输出包的水位线。这样,通过全局下线作为水位线变化控制的依据,使得每个输出包的水位线都按照同样的比例变化,具有全局统一性,更能够找到全局最优解。具体实现步骤如下:
步骤21、对输入包集合中的各个输入包按长度做降序排列;
步骤22、根据输出包集合中不同长度输出包的种类数,设定水位线的数目,一条水位线对应一种长度的输出包,然后初始化各条水位线的值和全局下限的值,在初始化时,将水位线的值定为与其对应的输出包的长度,将全局下限的值定为100%;并选取一条水位线及其对应的输出包;
步骤23、判断输入包集合是否为空,若为空,结束操作,否则,执行下一步;
步骤24、判断当前的输入包集合中是否有一个或一个以上的输入包,使得这些输入包的数据长度之和恰好等于该水位线的值;若存在这样的输入包,则执行步骤25,否则执行步骤26;
步骤25、将这些输入数据包拼接成一个与当前水位线对应的输出包,若水位线的值小于输出包的长度,则将输出包中的不足部分填充0,拼接成功后,存储拼接得到的输出包,并将已拼接的输入数据包从输入数据包集合中删除,并重新执行步骤23;
步骤26、判断输出包集合中是否存在其他长度的输出包,使得该输出包所对应的水位线的值与该输出包长度的比值高于全局下限的值,若存在,则用该输出包对应的水位线代替当前水位线,并转到步骤23,若不存在,执行步骤27;
步骤27、降低当前水位线的值,并将降低后的水位线的值与该水位线对应的输出包长度作比较,若它们的比值高于或等于全局下限的值,则跳转到步骤23,否则,将全局下限更新为该比值,然后跳转到步骤23中继续执行。
上述的具有多种输出包长度的拼接方法的算法描述如下:
设定输入包列表P,输出包列表Q,两个列表都是以PDisc为元素的链表,链表中的元素按照包长度的降序排列。
初始化:当前扫描对象为列表Q的第一个输出包元素q,当前水位线t为第一种输出包长度q->len。全局下限为当前利用率:当前水位线/当前输出包长度=100%。
1、当P列表为空,则退出,否则对q当前输出包进行扫描,t为对应该输出包保存的水位线值,求解Perfect(p,t);
2、如果方案非空,则将对应的输入包拼接成一个长度为q->len的输出包,从P中去掉对应的输入包;
3、如果方案空,且t小于输入包列表中最大包和最小包长度之和,且t是所有水位线中最大的,则为这种最大长度的包选择一种最短的输出包,完成封装;
4、当前水位线t递减一个单位,保存该对象的水位线。
5、如果t/q->len高于或者等于全局下限,则转到1;
如果低于全局下限,则重新计算当前利用率,更新全局下限,更换扫描对象,使q=q->next,转到1;
结合实例,对上述描述进行说明。
假设有一个按降序排列的输入包集合{18,16,16,9,9,7,6,5,5,4,3,3,2,1},假设在输出包集合中有两种长度的输出包,分别为10和20。由于输出包有两种不同的长度,因此,有两条水位线,分别记为t1和t2,其中,t1对应长度为10的输出包,t2对应长度为20的输出包。在初始时,全局下限为100%。
首先选取水位线t2及其对应的长度为20的输出包,通过查找,可知在输入包集合中有长度为18和2,16和4,16、3和1,9、6和5的输入包可拼接成输出包,得到输出包A、B、C、D,将相应的输入包从输入包集合中删除,剩余的输入包集合为{7,3,9,5}。由于当前的水位线无法再找到新的拼接方案,改变当前的水位线,选取水位线t1及其对应的长度为10的输出包。在输入包集合中的长度为7和3的输入包可拼接成输出包,得到输出包E,剩余的输入包集合为{9,5}。降低水位线t1的值到9,9/10=90%,小于当前的全局下限,将全局下限降低到90%。然后再降低水位线t1的值到9,此时可将长度为9的输入包送到输出包中,剩余的输入包集合为{5}。再次降低全局下限直到50%,并降低水位线t1的值到5,将它送入输出包中。输入包集合中的所有输入包拼接完毕,则整个缓冲数据的处理过程亦结束,总利用率为94.55%。
在上述实例中,只选用了有两种输出包长度的情况,对于具有两种以上输出包长度的情况,本发明的方法也同样适用。下面针对有四种输出包长度的情况进行说明。
假设有一个按降序排列的输入数据包集合{19,16,15,13,12,10,9,8,6,5,4,2,2,1},假设输出包的长度为20,15,10,5。由于输出包的长度有四种,因此有四条不同的水位线,分别标记为t3,t4,t5,t6。在初始时,全局下限为100%。首先选取t3,它所对应的输出包的长度为20。通过查找,可知19和1,16和4,15和5,12和8,10、6、2和2拼接为长度为20的输入包,剩余的输入包集合为{13,9}。然后选取t4,它所对应的输出包的长度为15,不存在可拼接的输入包。再选取t5,它所对应的输出包的长度为10,同样不存在可拼接的输入包。最后选取t6,它所对应的输出包长度为5,也不存在可拼接的输入包。此时,输入包集合尚不为空,需要降低水位线的长度,在降低水位线的同时,需要检查全局下限值。将t5的长度下降到9时,输入包可拼接到输出包中,此时的全局下限值为90%。当t4的长度值为13时,长度为13的输入包可拼接到输出包中,此时的全局下限值为86.7%。
在前面的描述中,没有考虑数据拼接中所产生的额外的计算开销以及额外包头,添加额外包头处理会使算法会变得复杂,可采用一种包长修正的方法来解决。将输入包和输出包的长度都增加一个额外包接头的长度,可以将考虑额外包头的情况等价转化为不考虑额外包头的情况。
证明:
准则1:当考虑额外包头,长度为c,对于一个长度为K1,K2...Kn的包序列,如果(K1+c)+(K2+c)......+(Kn-1+c)+Kn=K,则称这个包序列在考虑额外包头时可以拼接到K长度的包中。
准则2:当不考虑额外包头,对于一个长度为K1,K2...Kn的包序列,如果K1+K2......+Kn-1+Kn=K,则称这个包序列在不考虑额外包头时可以拼接到K长度的包中。
当考虑额外包头,对于输入包长度分别为L1,L2...Ln的包序列,判断是否能够拼接成长度为L的输出包,需要应用准则1。通过包长度调整:将输入包调整为L1+c,L2+c...Ln-1+c,Ln+c,输出长度调整为L+c,分别记作:A1,A2...An,以及输出长度A。当不考虑额外包头时,对上述调整后的长度应用准则2,如果满足,则A1+A2...+An=A,即(L1+c)+(L2+c)...(Ln-1+c)+Ln+c=L+c,即(L1+c)+(L2+c)...(Ln-1+c)+Ln=L,说明L1,L2...Ln也满足准则1。并且这个过程是可逆的。因此有:
准则3:
对于一个长度为K1,K2...Kn的包序列以及输出包长度K,如果当进行包长度调整后,不考虑额外包头时满足准则2,等价于考虑额外包头时满足准则1。反之亦然。因此,通过包长度的调整,不考虑额外包头时的算法运算结果等价于考虑额外包头时的算法运算结果。因此按照上述调整后的包长度,按照不考虑额外包头时的本发明的方法也同样适用于考虑额外包头的情况。

Claims (3)

1、一种无线网络节点缓冲数据包处理方法,用于将不同长度的输入数据包拼接成同一长度的输出数据包,包括:
1)、对输入包集合中的各个输入包按照数据长度作降序排列,并初始化水位线t的值,将水位线的值定义为从输出包的长度值L到0的整数,水位线从L开始递减进行扫描;
2)、判断输入包集合是否为空,若为空则结束操作,否则执行下一步;
3)、判断当前的输入包集合中是否有一个以上的输入包,所述输入包的数据长度之和等于水位线t的值;若存在这样的输入包,则执行步骤4),否则执行步骤5);
4)、将输入包拼接成一个长度为L的输出数据包,若t的值小于L,则将输出数据包中的不足部分填充0,拼接成功后,存储拼接得到的输出包,并将已拼接的输入数据包从输入数据包集合中删除,并重新执行步骤2);
5)、将水位线t的值下降一个单位,然后转到步骤2)重新执行。
2、一种无线网络节点缓冲数据包处理方法,用于将不同长度的输入数据包拼接成不同长度的输出数据包,包括:
a)、对输入包集合中的各个输入包按长度做降序排列,将水位线的值定义为从输出包的长度值L到0的整数;
b)、根据输出包集合中不同长度输出包的种类数,设定水位线的数目,一条水位线对应一种长度的输出包,然后初始化各条水位线的值和全局下限的值,在初始化时,水位线的值与其对应的输出包的长度相同,全局下限的值为100%;最后选取一条水位线及其对应的输出包;
c)、判断输入包集合是否为空,若为空,结束操作,否则,执行下一步;
d)、判断当前的输入包集合中是否有一个以上的输入包,所述输入包的数据长度之和等于当前水位线的值;若存在这样的输入包,则执行步骤e),否则执行步骤f);
e)、将输入数据包拼接成一个与当前水位线对应的输出包,若水位线的值小于输出包的长度,则将输出包中的不足部分填充0,拼接成功后,存储拼接得到的输出包,并将已拼接的输入数据包从输入数据包集合中删除,然后重新执行步骤c);
f)、判断输出包集合中是否存在其他长度的输出包,使得该输出包所对应的水位线的值与该输出包长度的比值高于全局下限的值,若存在,则用该输出包对应的水位线代替当前水位线,并转到步骤c),若不存在,执行步骤g);
g)、降低当前水位线的值,并将降低后的水位线的值与该水位线对应的输出包长度作比较,若它们的比值高于或等于全局下限的值,则跳转到步骤c),否则,将全局下限更新为该比值,然后跳转到步骤c)中继续执行。
3、根据权利要求1或2所述的无线网络节点缓冲数据包处理方法,其特征在于,在所述的输入包和输出包都增加一个额外包接头的情况下,所述的无线网络节点缓冲数据包处理方法适用于输出包和输入包具有额外包头的情况。
CNB2005101262286A 2005-11-30 2005-11-30 一种无线网络节点缓冲数据包处理方法 Expired - Fee Related CN100477639C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101262286A CN100477639C (zh) 2005-11-30 2005-11-30 一种无线网络节点缓冲数据包处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101262286A CN100477639C (zh) 2005-11-30 2005-11-30 一种无线网络节点缓冲数据包处理方法

Publications (2)

Publication Number Publication Date
CN1980184A CN1980184A (zh) 2007-06-13
CN100477639C true CN100477639C (zh) 2009-04-08

Family

ID=38131197

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101262286A Expired - Fee Related CN100477639C (zh) 2005-11-30 2005-11-30 一种无线网络节点缓冲数据包处理方法

Country Status (1)

Country Link
CN (1) CN100477639C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103475451A (zh) * 2013-09-10 2013-12-25 江苏中科梦兰电子科技有限公司 一种适合前向纠错和加密应用的数据报网络传输方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1412984A (zh) * 2002-05-27 2003-04-23 华为技术有限公司 网络设备中基于接口的数据报类型报文的发送方法
US20030126188A1 (en) * 2001-12-27 2003-07-03 Zarlink Semiconductor V.N. Inc. Generic header parser providing support for data transport protocol independent packet voice solutions
CN1464703A (zh) * 2002-06-19 2003-12-31 华为技术有限公司 一种提高ip报文转发速度的方法
CN1464755A (zh) * 2002-06-28 2003-12-31 华为技术有限公司 无线通信***内基站间的通信方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030126188A1 (en) * 2001-12-27 2003-07-03 Zarlink Semiconductor V.N. Inc. Generic header parser providing support for data transport protocol independent packet voice solutions
CN1412984A (zh) * 2002-05-27 2003-04-23 华为技术有限公司 网络设备中基于接口的数据报类型报文的发送方法
CN1464703A (zh) * 2002-06-19 2003-12-31 华为技术有限公司 一种提高ip报文转发速度的方法
CN1464755A (zh) * 2002-06-28 2003-12-31 华为技术有限公司 无线通信***内基站间的通信方法

Also Published As

Publication number Publication date
CN1980184A (zh) 2007-06-13

Similar Documents

Publication Publication Date Title
Sankar et al. Maximum lifetime routing in wireless ad-hoc networks
US6778532B1 (en) Packet relaying apparatus and high speed multicast system
CN100505692C (zh) 高性能路由器bgp路由协议分布并行实现方法
CN102098740B (zh) 链路聚合选路方法及装置
CN101604261B (zh) 超级计算机的任务调度方法
CN101741705A (zh) 一种并行处理路由更新报文的方法及装置
CN101883055B (zh) 路由转发表容量扩展实现方法、装置及交换设备
US20080244089A1 (en) Interface for a delay-tolerant network
JP5520369B2 (ja) コンピュータ・システム、方法及びプログラム
CN101341692B (zh) 基于以太网的接入网络中使用备份链路的接纳控制
CN102081675A (zh) 支持Top K查询的自动服务组合方法及***
CN102420797A (zh) 一种拓扑映射方法及***
CN100477639C (zh) 一种无线网络节点缓冲数据包处理方法
CN102594650B (zh) 处理多播报文的方法和交换接入装置
CN101420357B (zh) 一种反射路由的处理方法和路由反射设备
CN102087665A (zh) 支持持续查询的自动服务组合方法与***
CN101355448B (zh) 上载比较方法和装置
CN101179419A (zh) 有效使用网络资源的保护路径获取方法
Xia et al. Distributed resource management and admission control of stream processing systems with max utility
CN101989946B (zh) 一种通信设备路由转发表的压缩方法
CN103999435B (zh) 用于高效的网络地址转换和应用层网关处理的装置和方法
Oikonomou et al. Scalable service migration in general topologies
CN110011938B (zh) 一种应用于片上网络中级数可变的重排序电路及方法
CN106341331A (zh) 基于2D mesh网络的路由多播方法及***
CN101645852A (zh) 一种网络包分类的设备和方法

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
ASS Succession or assignment of patent right

Owner name: G-CLOUD TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: INSTITUTE OF COMPUTING TECHNOLOGY, CHINESE ACADEMY OF SCIENCES

Effective date: 20130123

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100080 HAIDIAN, BEIJING TO: 523808 DONGGUAN, GUANGDONG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20130123

Address after: 523808 Guangdong province Dongguan City Songshan Lake Science and Technology Industrial Park Building No. 14 Keyuan pine

Patentee after: G-CLOUD TECHNOLOGY Co.,Ltd.

Address before: 100080 Haidian District, Zhongguancun Academy of Sciences, South Road, No. 6, No.

Patentee before: Institute of Computing Technology, Chinese Academy of Sciences

CP02 Change in the address of a patent holder

Address after: 523808 19th Floor, Cloud Computing Center, Chinese Academy of Sciences, No. 1 Kehui Road, Songshan Lake Hi-tech Industrial Development Zone, Dongguan City, Guangdong Province

Patentee after: G-CLOUD TECHNOLOGY Co.,Ltd.

Address before: 523808 No. 14 Building, Songke Garden, Songshan Lake Science and Technology Industrial Park, Dongguan City, Guangdong Province

Patentee before: G-CLOUD TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090408

CF01 Termination of patent right due to non-payment of annual fee