写入该路业务数据对应的缓存空间中;从具有相对延迟要求的各路业务数据分别对应的缓存空间中取出业务数据进行合并,得到合并后的一路业务数据,并发送合并后的一路业务数据。采用本发明实施例后,可以将各路具有相对延迟要求的业务数据绑定成一路业务数据进行发送,从而无需在接收端增加大容量的缓存来吸收各路业务数据之间的相对延迟,节省了接收端的缓存成本。并且,由于各路具有相对延迟要求的业务数据可以在OTN中作为一路业务数据进行传输,从而降低了各路业务数据在传输路径上的相对延迟,提高了传输可靠性。
[0118]下面结合说明书附图对本发明实施例作进一步详细描述。
[0119]实施例一
[0120]如图1所示,为本发明实施例一提供的业务数据传输方法流程图,包括以下步骤:
[0121]SlOl:将接收的每一路业务数据写入该路业务数据对应的缓存空间中。
[0122]这里,业务数据自生成端发送至光传输网OTN的发送端。在发送端,将每一路业务数据写入其对应的小缓存中,待具有相对延迟要求的各路业务数据都到达发送端后,基于S102?S103进行各路业务数据的总体调度。
[0123]S102:从具有相对延迟要求的各路业务数据分别对应的缓存空间中取出业务数据进行合并,得到合并后的一路业务数据;所述具有相对延迟要求的各路业务数据中任意两路业务数据到达客户端的时间之间的时间间隔需要低于预设时长。
[0124]具体地,将取出的各路业务数据进行字节间插后,合并成一路业务数据;其中,每一路业务数据中每个字节的相邻字节为其它路数据的字节。
[0125]在具体实施过程中,可以采用字节间插的方式进行业务数据合并,以尽量实现将各路业务数据对齐后的捆绑映射,这样,可以进一步降低各路业务数据之间的相对延迟。如图2所示,A路业务数据和B路业务数据采用字节间插的方式进行合并,其中A路业务数据的Al字节后插入B路业务数据的BI字节,接着,BI字节后插入A路业务数据的A2字节,如此,实现了两路业务数据的合并,并且两路业务数据之间只有一个字节的相对延迟。
[0126]S103:发送合并后的所述一路业务数据。
[0127]在S102?S103中,需要确定调度速率,以便于基于调度速率进行各路业务数据的总体调度(合并及发送)。也即:从具有相对延迟要求的各路业务数据分别对应的缓存空间中取出业务数据进行合并,包括:
[0128]根据所述各路业务数据分别对应的缓存空间中的数据量大小,确定调度所述各路业务数据中每一路业务数据时通用的调度速率;
[0129]根据确定的调度速率,从所述各路业务数据分别对应的缓存空间中取出业务数据进行合并。
[0130]在进行总体调度时,可以为具有相对延迟要求的各路业务数据确定一个相同的调度速率,以进一步减少各路业务数据之间的相对延迟。在具体实施中,可以预先设置三档调度速率,由高到低依次是大于各路业务数据的平均业务速率(或称接收业务数据的入口速率)的第一调度速率、等于各路业务数据的平均业务速率的第三调度速率和小于各路业务数据的平均业务速率的第二调度速率。具有相对延迟要求的各路业务数据中每一路业务数据的平均业务速率是相同的,也即它们总体的业务速率是一致的,只是有时会出现某路业务数据的突发增加或突发减少。
[0131]本发明实施例提出以下两种确定调度速率的方式:
[0132]方式一:基于对各路业务数据分别对应的缓存空间中的数据量大小与预设数据量大小的比较情况,来确定调度速率。
[0133]具体地,根据所述各路业务数据分别对应的缓存空间中的数据量大小,确定调度所述各路业务数据中每一路业务数据时通用的调度速率,包括:
[0134]当所述各路业务数据分别对应的缓存空间中的数据量大小均大于预设数据量大小,或所述各路业务数据分别对应的缓存空间中,至少一个缓存空间中的数据量大小大于预设数据量大小,其余缓存空间中的数据量大小等于预设数据量大小时,确定所述调度速率为大于所述各路业务数据的平均业务速率的第一调度速率;
[0135]当所述各路业务数据分别对应的缓存空间中的数据量大小均小于预设数据量大小,或所述各路业务数据分别对应的缓存空间中,至少一个缓存空间中的数据量大小小于预设数据量大小,其余缓存空间中的数据量大小等于预设数据量大小时,确定所述调度速率为小于所述各路业务数据的平均业务速率的第二调度速率;
[0136]当所述各路业务数据分别对应的缓存空间中的数据量大小均等于预设数据量大小时,确定所述调度速率为大于所述各路业务数据的平均业务速率的第一调度速率,或为小于所述各路业务数据的平均业务速率的第二调度速率,或为等于所述各路业务数据的平均业务速率的第三调度速率;
[0137]当所述各路业务数据分别对应的缓存空间中,至少一个缓存空间中的数据量大小大于预设数据量大小,至少一个缓存空间中的数据量大小小于预设数据量大小时,确定所述各路业务数据分别对应的缓存空间中的数据量大小与预设数据量大小之差的绝对值中的最大值,根据确定的所述最大值对应的缓存空间中的数据量大小,确定调度速率。
[0138]在该方式一下,首先比较缓存的各路业务数据的数据量大小与预设数据量大小,若缓存的各路业务数据的数据量大小都大于预设数据量大小,或者除等于预设数据量大小的业务数据外,其余都大于预设数据量大小,则采用所述第一调度速率;若缓存的各路业务数据的数据量大小都小于预设数据量大小,或者除等于预设数据量大小的业务数据外,其余都小于预设数据量大小,则采用所述第二调度速率;若缓存的各路业务数据的数据量大小都等于预设数据量大小,则采用所述第三调度速率,或者也可以采用所述第一调度速率或第二调度速率(在这种情况下,若采用第一调度速率,可能会导致各路业务数据的数据量大小都小于预设数据量大小,则再采用第二调度速率,相反,若采用第二调度速率,可能会导致各路业务数据的数据量大小都大于预设数据量大小,则再采用第一调度速率);若缓存的各路业务数据中,有的小于预设数据量大小,有的大于预设数据量大小,则根据与预设数据量大小之差的绝对值最大的一路业务数据的缓存情况来确定调度速率。
[0139]可选地,根据确定的所述最大值对应的缓存空间中的数据量大小,确定调度速率,包括:当确定的所述最大值对应的缓存空间中的数据量大小大于预设数据量大小时,确定所述调度速率为大于所述各路业务数据的平均业务速率的第一调度速率;当确定的所述最大值对应的缓存空间中的数据量大小小于预设数据量大小时,确定所述调度速率为小于所述各路业务数据的平均业务速率的第二调度速率。
[0140]在具体实施过程中,当缓存的各路业务数据中,有的小于预设数据量大小,有的大于预设数据量大小时,可以基于与预设数据量大小之差的绝对值最大的一路业务数据的缓存情况来确定调度速率,若该与预设数据量大小之差的绝对值最大的一路业务数据所缓存的数据量大小大于预设数据量大小,则采用所述第一调度速率,若该路业务数据缓存的数据量大小小于预设数据量大小,则采用所述第二调度速率。
[0141]方式二:直接通过计算各路业务数据分别对应的缓存空间中的数据量大小与预设数据量大小之差的绝对值中的最大值,来确定调度每一路业务数据通用的调度速率。
[0142]具体地,根据所述各路业务数据分别对应的缓存空间中的数据量大小,确定调度速率,包括:
[0143]确定所述各路业务数据分别对应的缓存空间中的数据量大小与预设数据量大小之差的绝对值中的最大值;
[0144]根据确定的所述最大值对应的缓存空间中的数据量大小,确定调度速率。
[0145]进一步地,根据确定的所述最大值对应的缓存空间中的数据量大小,确定调度速率,包括:当确定的所述最大值对应的缓存空间中的数据量大小大于预设数据量大小时,确定所述调度速率为大于所述各路业务数据的平均业务速率的第一调度速率;当确定的所述最大值对应的缓存空间中的数据量大小小于预设数据量大小时,确定所述调度速率为小于所述各路业务数据的平均业务速率的第二调度速率;当确定的所述最大值对应的缓存空间中的数据量大小等于预设数据量大小时,确定所述调度速率为等于所述各路业务数据的平均业务速率的第三调度速率。
[0146]在该方式二下,确定缓存的各路业务数据的数据量大小与预设数据量大小之差的绝对值中的最大值,通过比较对应该最大值的缓存空间中的数据量大小与预设数据量大小,确定调度速率。比如,若对应该最大值的缓存空间中的数据量大小等于预设数据量大小(也即该最大值为0,缓存的各路业务数据的数据量大小都等于预设数据量大小),则采用所述第三调度速率;若对应该最大值的缓存空间中的数据量大小大于预设数据量大小,则采用所述第一调度速率,若对应该最大值的缓存空间中的数据量大小小于预设数据量大小,则采用所述第二调度速率。
[0147]可选地,根据所述各路业务数据分别对应的缓存空间中的数据量大小,确定调度所述各路业务数据中每一路业务数据时通用的调度速率,包括:
[0148]若接收的所述各路业务数据中存在至少一路业务数据有损,则根据所述各路业务数据中除有损的所述至少一路业务数据之外的其它路业务数据分别对应的缓存空间中的数据量大小,确定调度所述各路业务数据中每一路业务数据时通用的调度速率。
[0149]在具体实施过程中,当具有相对延迟要求的各路业务数据中存在业务数据有损时,为了不影响其它路业务数据的正常传输,可以根据除有损的业务数据之外的其它路业务数据的数据量大小,来确定当前的调度速率。
[0150]可选地,该方法应用于光传输网OTN中的业务数据传输,所述发送合并后的所述一路业务数据,包括:
[0151]若接收的所述各路业务数据中存在至少一路业务数据有损,则通过发送的合并后的所述一路业务数据中的光信道数据单元ODUk的开销子帧区域指示有损的所述至少一路业务数据。
[0152]在OTN系统中,当存在至少一路业务数据有损时,可以在光信道数据单元(ODUk)的开销子帧区域中进行指示,以便于接收端区分出有损的业务数据,并向客户端指示业务数据有损的信息。同时,将合并后的业务数据映射到ODUk净荷区。
[0153]实施例二
[0154]该实施例二从OTN的接收端的角度对本发明实施例业务数据传输方法作进一步介绍。具体实施与上述实施例一重复之处,不再赘述。
[0155]如图3所示,为本发明实施例二提供的业务数据传输方法流程图,包括以下步骤:
[0156]S301:接收合并后的一路业务数据。
[0157]S302:将接收的合并后的一路业务数据进行拆分,得到拆分后的各路业务数据。
[0158]可选地,将接收的合并后的一路业务数据进行拆分,得到拆分后的各路业务数据,包括:
[0159]将接收的进行字节间插后合并的一路业务数据进行字节拆分,得到拆分后的各路业务数据。
[0160]S303:将拆分后的各路业务数据发送给客户端。
[0161]可选地,该方法应用于光传输网OTN中的业务数据传输,所述将拆分后的各路业务数据发送给客户端,包括:
[0162]若所述合并后的一路业务数据中的光信道数据单元ODUk的开销子帧区域中指示存在至少一路业务数据有损,则将拆分后的各路业务数据分别发送给客户端,并针对有损的所述至少一路业务数据中的每一路业务数据,向所述客户端发送指示该路业务数据有损的信息。
[0163]在具体实施过程中,接收端对接收的ODUk解映射得到其