发明内容
本发明针对现有技术存在的单信道传输模式带宽低、可靠性差、单个网络覆盖区域小,信道的分配机制、数据的分包策略、数据的接收处理策略及接收状况的反馈机制,难于有效协调的问题,提供了一种基于多个网络模式的多信道同步工作方法。
为了解决上述技术问题,本发明通过下述技术方案得以解决:
一种基于多个网络模式的多信道同步工作方法,包括下列步骤如下:
一种基于多个网络模式的多信道同步工作方法,其特征在于:包括下列步骤如下:
第一步:数据分道:数据发送端根据当前所处网络的信号强弱、单位时间内信道数据到达的时延值、单位时间内信道数据传输的误码率获取一个信道的权重值,为每一份数据指配通道,让权重高的信道多传输数据或多传输重要的数据,让权重低的信道少传输数据或少传输重要的数据;
第二步:数据分包:将要发送的数据按照信道的权重值、数据类型、数据的长度进行分包处理,是关键帧的,先按照4个信道的数据进行发送,不足4个信道的,取可用信道的最大值,如果不是关键帧的,权重高的信道分配的数据多,权重低的信道分配的数据较少;
第三步:数据标识:数据分包后,为每一个数据包添加排序标识、组标识及发送的时间值,再对每一个数据包做奇偶校验处理,最后由信道分别发送出去;
第四步:数据接收处理:数据接收端根据在分包时加入的排序标识,将陆续收到的数据包排列起来,根据奇偶校验码判断数据包内容的正确性,发生错包则做丢包处理,以此将关键帧和普通帧数据分别提取出来,根据排序结果还原成原始数据流;
第五步:数据反馈:数据接收端根据数据发送端发送的数据包内的发送时间值与接收到的时间差值计算出平均时延值,再根据前一个包或者后一个包,得到丢失的包从哪个通道发送,从而统计每个信道发送的数据包个数,再统计丢包和错包的个数,得到单位时间内的误码率,再每隔3秒钟,数据接收端将统计获得的时延值和误码率发送给数据发送端,数据发送端根据反馈的数据实时调整信道的权重和发送策略。
作为优选,在数据分包步骤中,将关键帧数据做循环冗余校验处理时,首先对分包数据进行处理,有4个信道可供使用时,将要发送的数据段分成3个分包,并且对3个分包的数据做循环冗余校验并得出1个单位的校验码,然后将3个分包的传输数据和1个单位的冗余数据分别置入到4个信道中进行发送。
作为优选,所述数据接收处理步骤中,分包组是关键帧包的,经过循环冗余校验处理后产生的几个数据包,通过组标识,将同一个组的数据包找出做逆校验运算得到原始的数据,出现丢包时,根据其他三个包的每个位数据,利用奇偶校验算出另外一个包的位数据,连贯在一起得到整个数据包内容;分包组是没有包含冗余校验码普通数据的,发生丢包后,则丢弃处理,并将丢包的记录在信道的误码率参数内。
按照本发明的技术方案,解决了传统的单信道传输模式带宽低、可靠性差、单个网络覆盖区域小等缺点,有效达到了高数的传输性能,有效统筹的协调了信道的分配机制、数据的分包策略、数据的接收处理策略及接收状况的反馈机制。
具体实施方式
下面结合具体实施方式对本发明作进一步详细描述:
实施例1
一种基于多个网络模式的多信道同步工作方法,如图1所示,包括下列步骤如下:
第一步:数据分道:数据发送端根据当前所处网络的信号强弱、单位时间内信道数据到达的时延值、单位时间内信道数据传输的误码率获取一个信道的权重值,为每一份数据指配通道,让权重高的信道多传输数据或多传输重要的数据,让权重低的信道少传输数据或少传输重要的数据;
第二步:数据分包:将要发送的数据按照信道的权重值、数据类型、数据的长度进行分包处理,是关键帧的,先按照4个信道的数据进行发送,不足4个信道的,取可用信道的最大值,如果不是关键帧的,权重高的信道分配的数据多,权重低的信道分配的数据较少;
第三步:数据标识:数据分包后,为每一个数据包添加排序标识、组标识及发送的时间值,再对每一个数据包做奇偶校验处理,最后由信道分别发送出去;
第四步:数据接收处理:数据接收端根据在分包时加入的排序标识,将陆续收到的数据包排列起来,根据奇偶校验码判断数据包内容的正确性,发生错包则做丢包处理,以此将关键帧和普通帧数据分别提取出来,根据排序结果还原成原始数据流;
第五步:数据反馈:数据接收端根据数据发送端发送的数据包内的发送时间值与接收到的时间差值计算出平均时延值,再根据前一个包或者后一个包,得到丢失的包从哪个通道发送,从而统计每个信道发送的数据包个数,再统计丢包和错包的个数,得到单位时间内的误码率,再每隔3秒钟,数据接收端将统计获得的时延值和误码率发送给数据发送端,数据发送端根据反馈的数据实时调整信道的权重和发送策略。
其中,在数据分包步骤中,将关键帧数据做循环冗余校验处理时,首先对分包数据进行处理,有4个信道可供使用时,将要发送的数据段分成3个分包,并且对3个分包的数据做循环冗余校验并得出1个单位的校验码,然后将3个分包的传输数据和1个单位的冗余数据分别置入到4个信道中进行发送。
另外,所述数据接收处理步骤中,分包组是关键帧包的,经过循环冗余校验处理后产生的几个数据包,通过组标识,将同一个组的数据包找出做逆校验运算得到原始的数据,出现丢包时,根据其他三个包的每个位数据,利用奇偶校验算出另外一个包的位数据,连贯在一起得到整个数据包内容;分包组是没有包含冗余校验码普通数据的,发生丢包后,则丢弃处理,并将丢包的记录在信道的误码率参数内。
上述方法解决了传统的单信道传输模式带宽低、可靠性差、单个网络覆盖区域小等缺点,有效达到了高数的传输性能,有效统筹的协调了信道的分配机制、数据的分包策略、数据的接收处理策略及接收状况的反馈机制。
实施例2
鉴于传统的单信道传输模式带宽低、可靠性差、单个网络覆盖区域小等缺点,为了有效达到高数的传输性能、多信道、多网络的同步使用成为必然的趋势,因此,我们的立足点在于研究多网络的多信道同步传输工作技术,包括信道的分配机制、数据的分包策略、数据的接收处理策略及接收状况的反馈机制,如图1所示,分下列步骤:
1.信道的分配机制
信道是数据传输过程中的通道,信道的分配,就是为每一份数据指配通道,按照一定的次序发送出去。信道分配的目的,是为了让数据能够有序的发送,让接收端能够有序的接收,能够让接收端了解丢包或者错包的数据错处的信道,信道的合理分配,是接下去几个工作步骤的基础。
决定信道分配的重要依据,是信道的权重。信道的权重,是用来衡量每个信道的网络传输状态的数值。我们为数据分配传输信道的依据,就是信道权重。
信道的权重,是根据以下三方面来获取的。一是当前所处网络的信号强弱(p),这是从无线传输模块的路由标识来获取的,二是单位时间内,信道数据到达的时延值(t)。时延是指信道数据从发送端出发,达到接收端的时间平均值,它是反映网络速度的重要数据。三,是单位时间内信道数据传输的误码率(u),这个值,是指数据在传输过程中的损耗率。它反映了网络的稳定性。根据以上三项数值,我们来计算获取一个信道的权重值:Ex=f(p,t,u);
我们获取的信道权重,是一个动态变化的值,上述的p,t,u都是随着时间动态变化的,所以,信道的权重也随着动态的变化,用于动态的调整信道的分配策略。信道权重对于信道分配的影响:我们传输数据时,采用“能者多劳“的机制,即让权重高的信道,多传输数据,让权重低的信道,少传输数据,并且尽量让重要的数据,由权重高的信道来传输,这样才能达到高效高速的传输效果。信道分配的过程描述:当***启动的时候,我们首先认为接入***的每一个信道,都具有一样的权重,我们采用相同的信道权重来分配和发送数据,同时,我们根据影响信道权重的三个参数,来动态调整信道权重。其中信道传输的时延值,以及信道的误码率,是接收方在接受数据后,经过统计获取的,每经过一段时间,它都会将接收状况反馈发送给发送端,这样,信道的权重就能发生及时的变化,我们的信道分配机制就能做出相应的发送策略调整。
2.数据的分包策略
数据发送,并不是将整个数据一起传输,而是要将整块的数据拆分以后,通过多个信道发送出去,所以信道分配策略确定以后,我们将要发送的数据,按照一定的规则分包,分别归入不同的信道。
影响数据分包策略的重要有三点,1是信道的权重,即当前数据段分配到哪几个信道发送,2是数据类型,是否是重要数据,比如关键帧。3是数据的长度。
分包的过程:当数据的某一段,确定发送的信道以后,我们根据以下几个步骤对数据进行分包:先将数据归类,是否关键帧;即是否按重要数据方式处理。如果是关键帧,先选定信道,一般关键帧按照4个信道的数据进行发送,如果不足4个信道,则取可用信道的最大值。将关键帧数据做循环冗余校验处理:我们首先对分包数据进行处理,如果有4个信道可供使用,我们将要发送的数据段分成3个分包,并且对3个分包的数据做循环冗余校验并得出1个单位的校验码。然后将3个分包的传输数据和1个单位的冗余数据分别置入到4个信道中进行发送;这4个分包,被称之为一个分包组,详见附图2所示:其中4条圆柱分别表示信道1,2,3,4,每一个颜色的圆柱图代表一个数据段。我们首先做A段,分成3个数据段,并生成校验段Ap,然后压入到信道中去,顺序为A1,A2,A3,Ap;在做B段的时候,也是用同样的方式,但是在压入信道的顺序,发生了变化,即B1,B2,Bp,B3,这样一直循环下去直到数据处理完。这样做的目的,是让校验冗余码分散在各个信道,如果发送过程中发生信道的数据丢包或者错包,可通过其他三个信道的数据计算出丢包的内容。如果不是关键帧,则根据信道的权重,按比例的分配数据。即权重高的信道分配的数据多,权重低的信道分配的数据较少。数据的长度,一般是用数据分包的大小来控制的。数据包分好以后,需要为每一个包添加一些包的信息数据,这是为了接收端能够获得发送端数据发送的状况,主要包含数据包的排序标识,组标识,以及发送的时间值。
A.排序标识:是一个整形数值,每发一个包,就自动增长1。,接收端在接收到数据后,根据这个标识能够有效的排序。
B.组标识,组标识也是一个整形数值,每个分包组都有一个唯一的序列号,也是数据是否做过循环冗余的标识,如果有这个标识,就是关键帧数据,并且已经经过循环冗余处理。
C.时间值:数据发送的时间值,为了客户端接收时统计时延。
最后,我们对每一个数据包,做奇偶校验处理,这个是为了让接收端判断接收到的数据是否正确。
经过这些步骤,数据已经完成了分包。由信道分别发送出去。
3.数据的接收处理策略
接收端收到的数据,是由多个信道传输过来的,接收过来的数据包并不能直接使用,需要组合在一起进行排序,将经过特殊处理的数据还原,进可能的回复丢包和错包,形成数据流,才能投入使用。处理步骤如下:
排序:各个数据的接收时间是无序的,所以不能够按照接收时间的先后来排列数据包,我们是根据在分包时加入的排序标识,就可以将陆续收到的数据包排列起来。
错包处理:每个包都有奇偶校验码,我们根据校验码来判断包内容的正确性,如果发生错包,则做丢包处理。
组合并:分包组是关键帧包,经过循环冗余校验处理后产生的几个数据包,我们通过组标识,将同一个组的数据包找出来,做逆校验运算得到原始的数据,如果出现丢包,可根据其他三个包的每个位数据,利用奇偶校验算出另外一个包的位数据,连贯在一起得到整个数据包内容。
普通数据的丢包处理:普通数据就是没有经过组处理的传输数据,即非重要数据,这些数据没有包含冗余校验码,如果发生丢包,则做简单哦丢弃处理,并将丢包的记录在信道的误码率参数内。
通过上述步骤,已经将关键帧和普通帧数据都提取出来了,根据排序结果还原成原始数据流。
4.数据接收状况的反馈机制
网络状况实时变化,为了让多信道传输能够实时的适应网络状态,必须将接收端的接收状况反馈给发送端,以便发送端能够实时调整发送策略。
统计时延值:时延是指数据从发送端发出,到客户端接收的时间间隔平均值。
我们根据数据包内的发送时间值,与接收到的时间差值平均来计算平均时延。这个值是用来相对比较每个信道的数据传输数率,所以不需要精确的时延值,只要每个信道的相对时延正确就可以了,所以不需要发送端和接收端的时刻统一。统计丢包误码率:根据前一个包或者后一个包,得到丢失的包是哪个通道发送的,统计每个信道发送的数据包个数,再统计丢包和错包的个数,得到单位时间内(3秒)的误码率。每隔3秒钟,数据接收端将统计获得的时延值和误码率发送给数据发送端。数据发送端根据反馈的数据实时调整信道的权重和发送策略。
多信道同步工作技术与单信道传输模式应用相比,前后有明显的效果,具体见下表:
|
单信道传输模式 |
多信道传输模式 |
上行带宽 |
160~170kbps(浙江地区) |
500~650kbps(浙江地区) |
信号覆盖 |
视无线网络运营商的覆盖范围而定 |
多家网络运营商的覆盖范围并集,范围显著提高 |
信号稳定 |
视单个网络的稳定而定 |
根据多个网络的稳定效果而定,大大提高稳定性 |
总之,以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所作的均等变化与修饰,皆应属本发明专利的涵盖范围。