发明内容
本发明实施例的目的在于针对现有技术存在的问题,提出一种VoIP包的传输方法、系统、发送接收装置及终端,以进一步减少VoIP业务中控制信令的开销。
为实现上述目的,本发明实施例提出了一种VoIP包的传输方法,包括:
将VoIP组划分为多个VoIP子组;
生成各VoIP子组的子资源比特图,所述子资源比特图为VoIP子组的资源比特图;
向所述VoIP组的终端组播VoIP组信息,所述VoIP组信息包括资源位置大小、VoIP组号GroupID、VoIP子组的个数中的任意一个;
向终端组播所属VoIP子组内的所有终端的终端标识符信息;
传输相应的子资源比特图及VoIP子组中的VoIP包;
其中,传输相应的子资源比特图及VoIP子组中的VoIP包具体为:
根据所述VoIP组中VoIP子组的个数以及VoIP子组的标识确定各VoIP子组的传输时隙;
根据确定的传输时隙传输相应的子资源比特图及VoIP子组的VoIP包。
为实现上述目的,本发明实施例还提出了一种VoIP包的接收方法,包括:
读取所属VoIP子组对应的子资源比特图,所述子资源比特图为VoIP子组的资源比特图;
根据所述子资源比特图确定VoIP包的位置,所述VoIP包的位置为根据子资源比特图确定的VoIP包在组资源中所在的位置;
解析所述位置的VoIP包。
为实现上述目的,本发明实施例还提出了一种VoIP包的发送装置,包括:划分模块、生成模块、组播模块、子组组播模块及传输模块;其中,划分模块用于将VoIP组划分为多个VoIP子组;生成模块用于生成各VoIP子组的子资源比特图,所述子资源比特图为VoIP子组的资源比特图;组播模块用于向VoIP组的终端组播VoIP组信息,所述VoIP组信息包括资源位置大小、VoIP组号GroupID、VoIP子组的个数中的任意一个;子组组播模块用于向终端组播所属VoIP子组内的所有终端的终端标识符信息;传输模块用于传输相应的子资源比特图及VoIP子组中的VoIP包。
为实现上述目的,本发明实施例还提出了一种VoIP包的接收装置,包括:读取模块、定位模块及解析模块,其中,读取模块用于读取终端所属VoIP子组对应的子资源比特图,所述子资源比特图为VoIP子组的资源比特图;定位模块用于根据所述读取模块读取的子资源比特图确定VoIP包的位置,所述VoIP包的位置为根据子资源比特图确定的VoIP包在组资源中所在的位置;解析模块用于解析所述定位模块确定位置的VoIP包。
为实现上述目的,本发明实施例还提出了一种用于传输VoIP包的终端,该终端中设置有:读取模块、定位模块及解析模块,其中,读取模块用于读取终端所属VoIP子组对应的子资源比特图,所述子资源比特图为VoIP子组的资源比特图;定位模块用于根据所述读取模块读取的子资源比特图确定VoIP包的位置,所述VoIP包的位置为根据子资源比特图确定的VoIP 包在组资源中所在的位置;解析模块用于解析所述定位模块确定位置的VoIP包。
为实现上述目的,本发明实施例还提出了一种VoIP包的传输系统,包括:划分模块、生成模块、组播模块、子组组播模块、传输模块、读取模块、定位模块及解析模块;其中,划分模块用于将VoIP组划分为多个VoIP子组;生成模块用于生成各VoIP子组的子资源比特图,所述子资源比特图为VoIP子组的资源比特图;组播模块用于向VoIP组的终端组播VoIP组信息,所述VoIP组信息包括资源位置大小、VoIP组号GroupID、VoIP子组的个数中的任意一个;子组组播模块用于向终端组播所属VoIP子组内的所有终端的终端标识符信息;传输模块用于传输相应的子资源比特图及VoIP子组中的VoIP包;读取模块用于读取终端所属VoIP子组对应的子资源比特图;定位模块用于根据所述读取模块读取的子资源比特图确定VoIP包的位置,所述VoIP包的位置为根据子资源比特图确定的VoIP包在组资源中所在的位置;解析模块用于解析所述定位模块确定位置的VoIP包;
其中,所述传输模块包括:
确定模块,用于根据所述VoIP组中VoIP子组的个数以及VoIP子组的标识确定各VoIP子组的传输时隙;
传输子模块,用于根据确定的传输时隙传输相应的子资源比特图及VoIP子组的VoIP包。
上述技术方案通过将VoIP组划分为VoIP子组,生成子资源比特图,大大减小了VoIP数据传输过程中控制信令的开销。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
具体实施方式
实际VoIP业务中,帧长一般为5ms,甚至更小,而VoIP业务20ms产生一个新包,将VoIP组划分为2个VoIP子组,则组内终端每隔10ms便有一次调度机会,而加上终端可能重传VoIP包,因此,将VoIP组划分为2个甚至更多个VoIP子组,能够保证VoIP终端用户的服务质量(QoS)要求。
方法实施例一
图1为本发明VoIP包的传输方法实施例一的流程图,以某一VoIP组为例,该VoIP组中有L个终端,传输该VoIP组中终端发出的VoIP包具体包括以下内容:
步骤11、将VoIP组划分为N个VoIP子组,每个VoIP子组有L/N个终端,这样,各个VoIP子组中的终端相隔N-1帧才有一次调度机会,换句话说,对于每一次调度,时隙组资源只被一个VoIP子组中的终端使用,能够实现VoIP组内的时分复用;并且,由于一次最多有L/N个终端被激活,因此,每个VoIP子组的资源能够用长度为L/N的资源比特图(bitmap)进行指配,从而减小了指配信令bitmap的开销;通过为每个终端分配一个VoIP子组标识,将各终端划入相应的VoIP子组,并在该VoIP子组里得到调度。
根据终端标识符(CID)将各VoIP子组中的终端进行排序,生成各VoIP子组的资源比特图,为区别于VoIP组的资源比特图,将VoIP子组的资源比特图称为子资源比特图(subbitmap),并且为subbitmap设置与VoIP子组标识相对应的图符,将VoIP子组与subbitmap一一对应;图2为VoIP组划分为两个VoIP子组时subbitmap生成示意图,bitmap50将终端70、71、...715进行排序,各终端对应的位置中标示的值0,表示无数据传输给该位置的终端,从bitmap50可以看出,终端71、73、74、76-78、711-714均无数据传输;值为1表示该位置的终端被激活,有数据传输给该终端,bitmap50中,终端30、72、75、79、710及715有数据要接收,按序被bitmap50指配到VoIP组资源60中的相应位置;VoIP组分为两个VoIP子组后,bitmap50相应的划分为subbitmap51、52,其中,终端70、71、75、77、78、711、714、715组成的一个VoIP子组,由subbitmap51指配组资源;终端72、73、74、76、79、710、712、713组成的另一VoIP 子组,由subbitmap52指配组资源;如图2所示,subbitmap的开销远远小于bitmap,并且,subbitmap能够进行跳频,取得频率分集,即不同的subbitmap每次传输可以随机占用不同的频带,从而能够增强bitmap信令的可靠性。
通过上层信令组资源信息元(Group Resource IE)向VoIP组的终端组播VoIP组信息,如资源位置大小、VoIP组号GroupID、VoIP子组的个数等,使得各终端能够获取VoIP包所占用的资源位置信息,确定要接收VoIP包所在的VoIP子组;
通过组终端标识符分配信息元(Group CID Allocation IE)向终端组播所属VoIP子组内的所有终端的CID信息,这样,VoIP子组内的终端便能够知道在subbitmap中的位置,从而获得VoIP包在VoIP子组资源中的位置;并且,当一个VoIP子组动态改变时,如增加新的用户或删除已有的用户,只需要向本VoIP子组内的终端重新组播一次Group CIDAllocation IE,减小了前向信令或者VoIP组动态维护信令的开销。
步骤12、根据VoIP子组的个数以及子组标识,确定各VoIP子组的传输时隙或传输帧;子组标识为k的VoIP子组中,终端的VoIP包在帧k、k+N、k+2N......内传输,例如,当N=4时,子组标识为0的VoIP子组中,终端的VoIP包在帧0、4、8......内传输,子组标识为1的VoIP子组中,终端的VoIP包在帧1、5、9......内传输,依此类推。对于同一VoIP子组,各基站也可在上述确定传输时隙或传输帧的基础上,随意配置一个偏置值(offset),得到一个新的传输时隙或传输帧k+offset、k+offset+N、k+offset+2N......,间隔时间与上述传输时隙或传输帧的周期相同,增加了基站传输的灵活性。
步骤13、根据确定的传输时隙,传输相应的subbitmap及VoIP子组中的VoIP包。其中,VoIP包由本子组的subbitmap指配资源。
上述实施例通过将VoIP组划分为VoIP子组,从而将bitmap减小为长度 只有L/N的subbitmap,大大减小了传输VoIP包的控制信令的开销。
进一步地,如图3所示,VoIP包的传输方法还包括:
步骤14、VoIP子组内的终端读取本子组内的subbitmap;
步骤15、通过判断subbitmap中对应位置的值是否是1,来判断是否有自己的业务,即是否有VoIP包要接收;若是,执行步骤16,否则,结束;
步骤16、根据subbitmap确定VoIP包在组资源中所在的位置;
步骤17、解析该位置的VoIP包。
方法实施例二
由于对于每一次调度,时隙组资源只被一个VoIP子组中的终端使用,这样一个VoIP组划分的子组越多,即N的取值越大,时延越长控制信令开销越小;N越小,控制信令开销越大,但时延越短,因此,可通过灵活配置N的取值满足不同终端的QoS要求。这样,还可将VoIP组中QoS要求较高的部分终端划分到多个VoIP子组中,以增大这部分终端的调度频率,减小VoIP包的时延。假设N为6,VoIP组中终端1和终端2的QoS要求较高,这时将终端1划分到子组标识为0、3、4的VoIP子组,将终端2划分到子组标识为2、5的VoIP子组,则终端1的VoIP包在帧0、3、4、6、9、10、...0+6n、3+6n、4+6n、...内传输,终端2的VoIP包在帧2、5、8、11、...2+6n、5+6n、...内传输,而对于其他的终端,相隔6帧才能有一次调度机会,这样,VoIP子组的划分满足了不同QoS要求。
下面以一个终端分配到子组标识为k、1的VoIP子组为例进行详细说明。如图4所示,包括以下步骤:
步骤21、为该终端分配子组标识为k、1的VoIP子组,并在业务连接建立过程中告知该终端;
步骤22、根据VoIP子组的个数N和及子组标识k、1确定该终端的调度时隙,在帧k、N+k、2N+k、...,以及帧1、N+1、2N+1、...内传输该终端的VoIP包;
步骤23、VoIP子组内的终端读取子组标识为k、1的subbitmap;
步骤24、判断是否有自己的业务,若是,执行步骤25,否则,结束。
步骤25、根据subbitmap确定VoIP包在组资源中的位置;
步骤26、解析该位置的VoIP包。
发送装置实施例
如图5所示,VoIP包的发送装置包括:划分模块31、生成模块32、组播模块33、子组组播模块34及传输模块35,其中,划分模块31用于将VoIP组划分为多个VoIP子组;生成模块32用于生成各VoIP子组的子资源比特图;组播模块33用于向VoIP组的终端组播VoIP组信息;子组组播模块34用于向终端组播所属VoIP子组内的所有终端的终端标识符信息;传输模块35用于传输相应的子资源比特图及VoIP子组中的VoIP包。
传输模块还包括:确定模块和传输子模块,其中,确定模块用于根据所述VoIP组中VoIP子组的个数以及VoIP子组的标识确定各VoIP子组的传输时隙;传输子模块用于根据确定的传输时隙传输相应的子资源比特图及VoIP子组的VoIP包。
接收装置实施例
如图6所示,VoIP包的接收装置包括:读取模块41、定位模块42及解析模块43,其中,读取模块41用于读取终端所属VoIP子组对应的子资源比特图;定位模块42用于根据所述读取模块41读取的子资源比特图确定VoIP包的位置;解析模块43用于解析所述定位模块确定位置的VoIP包。
上述接收装置实施例提供的VoIP包的接收装置还设于终端中,使得终端具有接收通过将VoIP组划分为VoIP子组传输的VoIP包。
传输系统实施例
上述装置实施例提供的VoIP包发送装置及VoIP包接收装置还组合在一起形成一个VoIP包的传输系统,包括:划分模块、生成模块、组播模 块、子组组播模块、传输模块、读取模块、定位模块及解析模块,实现通过将VoIP组划分为VoIP子组进行VoIP包的发送、接收,大大减小了控制信令的开销。
本发明上述方法实施例,通过将VoIP组划分为VoIP子组,大大减小了控制信令的开销。装置、系统实施例通过划分、生成等模块,能够实施上述VoIP包的传输方法。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。