传输数据的方法和装置与流程

文档序号:17548417发布日期:2019-04-30 18:02阅读:137来源:国知局
传输数据的方法和装置与流程

本申请涉及通信技术领域,特别涉及一种传输数据的方法和装置。



背景技术:

现在的以太场景中,存在高速以太网端口和低速以太网端口,可以统称为以太网端口,都是使用以太网来进行数据传输,以太网是局域网中最常用的一种通信协议标准,逻辑上可以划分为多个层,从上向下依次是链路控制层、媒体访问控制(mediaaccesscontrol,mac)层和物理层,物理层中从上到下又可以划分为物理编码子层(physicalcodingsub-layer,pcs)、物理媒体附加层(physicalmediumattachment,pma)和物理媒体关联层(physicalmediadependent,pmd),pcs中还包括编解码层和扰码层等。

在通过以太网出端口进行向外传输数据时,通过mac层接收到多路业务数据流时,通过仲裁的方式对多路业务数据流进行仲裁,决定哪路业务数据流先发送至物理层进行发送,例如,优先级高的业务数据流先进行发送,或者数据量小的业务数据流先进行发送等。

在实现本申请的过程中,发明人发现现有技术至少存在以下问题:

当前通过以太网出端口的mac层仲裁到第一业务数据流先进行发送,在传输第一业务数据流的过程,通过mac层接收到第二业务数据流,第二业务数据流的优先级要高于第一业务数据流的优先级,但是此时没有多余的传输带宽用于传输第二业务数据流,所以只能等第一业务数据流传输完毕,才能传输第二业务数据流。这样,如果第一业务数据流的数据量非常大,会导致第二业务数据流等待传输时长比较长,进而会导致数据传输时延比较大,无法满足工业以太网中数据传输时延比较高的业务的业务需求。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种传输数据的方法和装置。所述技术方案如下:

第一方面,提供了一种传输数据的方法,该方法包括:

获取多路编码块流;

基于预设的复用序列,对所述多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流;

对所述一路编码块流进行分段封装处理,生成至少一个帧。

本发明实施例所示的方案,预设的复用序列中包含多个时隙,主机或交换机有数据通过以太网出端口向外发送时,可以获取该数据的多路编码块流,然后基于预设的复用序列,将多路编码块流按照时隙,将多路编码块流分发多对应的时隙,这样就得到一路编码块流,然后对这一路编码块流进行分段,将分段后的编码块流,进行封装处理,得到一路编码块流,这样,多路编码块流就实现了时分复用,多路编码块流之间的传输不会相互影响,可以数据传输降低时延。

在一种可能的实现方式中,根据预设的复用序列中的时隙与编码块流的对应关系,将所述多路编码块流中的编码块分发至对应的时隙,其中,每个复用序列包括n个时隙,n为正整数。

本发明实施例所示的方案,技术人员可以预设复用序列中的时隙与编码块流的对应关系,这样,可以直接使用该对应关系,对多路编码块流分发至对应的时隙上,得到一路编码块流。

在一种可能的实现方式中,根据预设的复用序列中的时隙与获取接口的对应关系,以及所述多路编码块流的获取接口,将所述多路编码块流中的编码块分别分发至对应的时隙。

本发明实施例所示的方案,技术人员可以预设复用序列中时隙与获取接口的对应关系,对于每一路编码块流都有获取接口,可以使用编码块流的获取接口,将编码块流分发至对应的时隙上,得到一路编码块流。

在一种可能的实现方式中,接收一路业务数据流;按照预设的数据编码方式对所述一路业务数据流进行编码,得到多路编码块流中的任意一路编码块流。

本发明实施例所示的方案,对于多路编码块流中的任意一路编码块流的来源可以是:接收到一路业务数据流后,按照预设的数据编码方式对一路业务数据流进行编码,得到一路编码块流。

在一种可能的实现方式中,接收至少一路业务数据流和至少一路编码块流;

按照预设的数据编码方式对每路业务数据流进行编码,得到至少一路编码块流;

获取编码得到的至少一路编码块流和接收到的至少一路编码块流。

本发明实施例所示的方案,接收到至少一路业务数据流和至少一路编码块流后,可以按照预设的数据编码方式,分别对至少一路业务数据流进行编码,得到至少一路编码块流。然后可以获取编码得到的至少一路编码块流和接收到的至少一路编码块流。这样,提供了一种获取编码块流的方法。

在一种可能的实现方式中,接收多路业务数据流;

按照预设的数据编码方式对每路业务数据流进行编码,得到多路编码块流。

本发明实施例所示的方案,接收到多路业务数据流,可以按照预设的数据编码方式,分别对多路业务数据流进行编码,得到多路编码块流。这样,提供了一种获取编码块流的方法。

在一种可能的实现方式中,所述按照预设的数据编码方式对每路业务数据流进行编码,包括:

对于每路业务数据流,将所述业务数据流编码成由四个数据域和至少一个标识域组成的编码块,并在每个编码块的标识域中为所述编码块设置第一指示标识,所述第一指示标识有第一状态或第二状态,其中,所述第一状态用于指示所述编码块的四个数据域均是业务数据,所述第二状态用于指示所述编码块中的四个数据域中至少有一个数据域是控制数据,四个数据域中至少有一个数据域是控制数据的编码块的标识域中还设置有第二指示标识,所述第二指示标识用于指示所述编码块中的业务数据与控制数据的位置。

本发明实施例所示的方案,对于每路业务数据流,可以将业务数据流编码成由四个数据域和至少一个标识域组成的编码块,四个数据域都是业务数据,有一个标识域,第一指示标识设置于标识域中,为第一状态,四个数据域中至少有一个数据域是控制数据,四个数据域至少一个数据域是控制数据,有两个标识域,第一指示标识设置于第一个标识域中,为第二状态,第二指示标识设置于第二个标识域中。这样,通过这种数据编码方式,可以增加有效使用带宽。

在一种可能的实现方式中,所述预设的数据编码方式为8b/9b、64b/66b和256b/257b中任意一种。

在一种可能的实现方式中,所述方法应用于交换机的以太网出端口;

从所述交换机的以太网入端口获取多路编码块流;

基于预设的复用序列中的以太网出端口的时隙与以太网入端口的时隙的对应关系、以及所述多路编码块流中的编码块的以太网入端口的时隙,将获取到的多路编码块流中的编码块分别分发至对应的以太网出端口的时隙,其中,每个复用序列包括n个时隙,n为正整数。

本发明实施例所示的方案,如果是交换机的以太网出端口,可以从交换机的以太网入端口获取到多路编码块流,然后使用基于预设的复用序列中的以太网出端口的时隙与以太网入端口的时隙的对应关系,将多路编码块流,分发至以太网出端口的时隙上,得到一路编码块流,这样,可以将编码块在交换机中从以太网入端口,交互至以太网出端口,从而可以提高数据传输效率。

在一种可能的实现方式中,基于预设的帧长度,对所述一路编码块流进行分段封装处理,生成至少一个帧。

本发明实施例所示的方案,技术人员预设了帧长度,所以可以将一路编码块流,分成编码块流,然后进行封装,使封装后的帧的长度等于预设的帧长度。这样,每个帧的长度都是一样的,便于分发。

在一种可能的实现方式中,对所述一路编码块流进行分段插入帧头字段处理,生成至少一个帧;或者,

对所述一路编码块流进行分段插入帧头字段和帧尾字段处理,生成至少一个帧。

本发明实施例所示的方案,可以对编码块流分段插入帧头字段和帧尾字段,或者,插入帧头字段,得到至少一个帧,提供了一种封装的形式。

在一种可能的实现方式中,所述至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列,每个复用序列中包含第二预设数目个时隙;或者,

所述至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列和帧尾字段,每个复用序列中包含第二预设数目个时隙。

在一种可能的实现方式中,所述方法应用于以太网出端口;

对所述一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段的处理,生成至少一个帧;或者,

对所述一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,生成至少一个帧。

本发明实施例所示的方案,目的mac地址为任意mac地址,源mac地址为以太网出端口的mac地址,以太网类型字段用于标识得到的帧为以太网类型的帧。这样,不会改变封装格式。

在一种可能的实现方式中,所述至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段和第三预设数目个复用序列,每个复用序列中包含第四预设数目个时隙;或者,

所述至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段、第三预设数目个复用序列和帧尾字段,每个复用序列中包含第四预设数目个时隙。

在一种可能的实现方式中,所述帧头字段为前导码,所述帧尾字段为循环冗余校验码(cyclicredundancycheck,crc)字段。

第二方面,提供了一种传输数据的方法,该方法包括:

接收至少一个帧;

对所述至少一个帧中每个帧进行解封装处理,得到一路编码块流;

基于预设的复用序列,对所述一路编码块流进行解复用处理,得到多路编码块流。

本发明实施例所示的方案,交换机或主机的以太网入端口接收到一个帧后,可以对接收到的帧进行解封装处理,得到一路编码块流,一路编码块流中每个编码块都对应有时隙。然后使用预设的复用序列中的时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流。

在一种可能的实现方式中,所述得到多路编码块流之后,按照预设的数据解码方式,对所述多路编码块流中的每个编码块进行解码。

本发明实施例所示的方案,此处预设的数据解码方式与上述第一方面的数据编码方式相对应。

在一种可能的实现方式中,对所述至少一个帧中每个帧进行删除帧头字段和帧尾字段处理,得到一路编码块流;或者,

对所述至少一个帧中每个帧进行删除帧头字段处理,得到一路编码块流。

在一种可能的实现方式中对所述至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,得到一路编码块流;或者,

对所述至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址和以太网类型字段的处理,得到一路编码块流。

第三方面,提供了一种传输数据的装置,该装置包括处理器,其中:

所述处理器,用于获取多路编码块流;

所述处理器,用于基于预设的复用序列,对所述多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流;

所述处理器,用于对所述一路编码块流进行分段封装处理,生成至少一个帧。

在一种可能的实现方式中,所述处理器,用于:

根据预设的复用序列中的时隙与编码块流的对应关系,将所述多路编码块流中的编码块分发至对应的时隙,其中,每个复用序列包括n个时隙,n为正整数。

在一种可能的实现方式中,所述处理器,用于:

根据预设的复用序列中的时隙与获取接口的对应关系,以及所述多路编码块流的获取接口,将所述多路编码块流中的编码块分别分发至对应的时隙。

在一种可能的实现方式中,所述处理器,用于:

接收至少一路业务数据流和至少一路编码块流;

按照预设的数据编码方式对每路业务数据流进行编码,得到至少一路编码块流;

获取编码得到的至少一路编码块流和接收到的至少一路编码块流。

在一种可能的实现方式中,所述处理器,用于:

接收多路业务数据流;

按照预设的数据编码方式对每路业务数据流进行编码,得到多路编码块流。

在一种可能的实现方式中,所述处理器,用于:

对于每路业务数据流,将所述业务数据流编码成由四个数据域和至少一个标识域组成的编码块,并在每个编码块的标识域中为所述编码块设置第一指示标识,所述第一指示标识有第一状态或第二状态,其中,所述第一状态用于指示所述编码块的四个数据域均是业务数据,所述第二状态用于指示所述编码块中的四个数据域中至少有一个数据域是控制数据,四个数据域中至少有一个数据域是控制数据的编码块的标识域中还设置有第二指示标识,所述第二指示标识用于指示所述编码块中的业务数据与控制数据的位置。

在一种可能的实现方式中,所述预设的数据编码方式为8b/9b、64b/66b和256b/257b中任意一种。

在一种可能的实现方式中,所述装置应用于交换机的以太网出端口;

所述处理器,用于:

从所述交换机的以太网入端口获取多路编码块流;

所述处理器,用于:基于预设的复用序列中的以太网出端口的时隙与以太网入端口的时隙的对应关系、以及所述多路编码块流中的编码块的以太网入端口的时隙,将获取到的多路编码块流中的编码块分别分发至对应的以太网出端口的时隙,其中,每个复用序列包括n个时隙,n为正整数。

在一种可能的实现方式中,所述处理器,用于:

基于预设的帧长度,对所述一路编码块流进行分段封装处理,生成至少一个帧。

在一种可能的实现方式中,所述处理器,用于:

对所述一路编码块流进行分段插入帧头字段处理,生成至少一个帧;或者,

对所述一路编码块流进行分段插入帧头字段和帧尾字段处理,生成至少一个帧。

在一种可能的实现方式中,所述至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列,每个复用序列中包含第二预设数目个时隙;或者,

所述至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列和帧尾字段,每个复用序列中包含第二预设数目个时隙。

在一种可能的实现方式中,所述装置应用于以太网出端口;

所述处理器,用于:

对所述一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段的处理,生成至少一个帧,其中,所述目的mac地址为任意mac地址,所述源mac地址为所述以太网出端口的mac地址,所述以太网类型字段用于标识所述帧为以太网类型的帧;或者,

对所述一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,生成至少一个帧,其中,所述目的mac地址为任意mac地址,所述源mac地址为所述以太网出端口的mac地址,所述以太网类型字段用于标识所述帧为以太网类型的帧。

在一种可能的实现方式中,所述至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段和第三预设数目个复用序列,每个复用序列中包含第四预设数目个时隙;或者,

所述至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段、第三预设数目个复用序列和帧尾字段,每个复用序列中包含第四预设数目个时隙。

在一种可能的实现方式中,所述帧头字段为前导码,所述帧尾字段为循环冗余校验码crc字段。

第四方面,提供了一种传输数据的装置,该装置包括处理器,其中:

所述处理器,用于接收至少一个帧;

所述处理器,用于对所述至少一个帧中每个帧进行解封装处理,得到一路编码块流;

所述处理器,用于基于预设的复用序列,对所述一路编码块流进行解复用处理,得到多路编码块流。

在一种可能的实现方式中,所述处理器,还用于:

按照预设的数据解码方式,对所述多路编码块流中的每个编码块进行解码。

在一种可能的实现方式中,所述处理器,用于:

对所述至少一个帧中每个帧进行删除帧头字段和帧尾字段处理,得到一路编码块流;或者,

对所述至少一个帧中每个帧进行删除帧头字段处理,得到一路编码块流。

在一种可能的实现方式中,所述处理器,用于:

对所述至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,得到一路编码块流,其中,所述目的mac地址为任意mac地址,所述源mac地址为所述以太网出端口的mac地址,所述以太网类型字段用于标识所述帧为以太网类型的帧;或者,

对所述至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址和以太网类型字段的处理,得到一路编码块流,其中,所述目的mac地址为任意mac地址,所述源mac地址为所述以太网出端口的mac地址,所述以太网类型字段用于标识所述帧为以太网类型的帧。

第五方面,提供了一种传输数据的装置,该装置包括至少一个模块,该至少一个模块用于实现上述第一方面所提供的传输数据的方法。

第六方面,提供了一种传输数据的装置,该装置包括至少一个模块,该至少一个模块用于实现上述第二方面所提供的传输数据的方法。

第七方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有指令,当所述计算机可读存储介质在传输数据的装置上运行时,使得装置执行上述第一方面和第二方面所提供的传输数据的方法。

第八方面,提供了一种包含指令的计算机程序产品,当其在传输数据的装置上运行时,使得装置执行上述第一方面和第二方面所提供的传输数据的方法。

本发明实施例提供的技术方案带来的有益效果是:

本发明实施例中,获取多路编码块流,基于预设的复用序列,对多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流,对一路编码块流进行分段封装处理,生成至少一个帧。这样,通过以太网出端口向外发送数据时,可以对多路编码块流按照时隙进行分发处理,实现时分复用,多路编码块流之间的传输不会相互影响,所以会降低编码块流等待传输时长,进而会降低数据传输时延,可以满足工业以太网中数据传输时延比较高的业务的业务需求。

附图说明

图1(a)是本发明实施例提供的一种以太网的层次示意图;

图1(b)是本发明实施例提供的一种以太网的层次示意图;

图2(a)是本发明实施例提供的一种以太网的层次示意图;

图2(b)是本发明实施例提供的一种以太网的层次示意图;

图3是本发明实施例提供的一种主机的结构示意图;

图4是本发明实施例提供的一种交换机的结构示意图;

图5是本发明实施例提供的一种传输数据的方法的流程示意图;

图6是本发明实施例提供的一种多路编码块流分发处理的示意图;

图7是本发明实施例提供的一种帧的示意图;

图8(a)是本发明实施例提供的一种编码的定义的示意图;

图8(b)是本发明实施例提供的一种编码的定义的示意图;

图8(c)是本发明实施例提供的一种四个数据域都是业务数据的示意图;

图8(d)是本发明实施例提供的一种四个数据域中至少有一个是控制数据的示意图;

图9是本发明实施例提供的一种传输数据的方法的流程示意图;

图10是本发明实施例提供的一种传输数据的方法的流程示意图;

图11是本发明实施例提供的一种传输数据的方法的流程示意图;

图12是本发明实施例提供的一种传输数据的装置的结构示意图;

图13是本发明实施例提供的一种传输数据的装置的结构示意图;

图14是本发明实施例提供的一种传输数据的装置的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

本发明实施例提供了一种传输数据的方法,应用于高速以太网出端口或低速以太网出端口(后续统称为以太网出端口),该方法的执行主体可以是交换机或主机,该交换机可以是对原有交换机的物理层或mac层的硬件进行升级得到的,进行物理层或mac层的硬件升级可以是在物理层使用新的芯片,或者刷入新代码,同样,对于该主机,可以是对主机中原有网卡的物理层或mac层的硬件进行升级得到的,进行物理层或mac层的硬件升级可以是在物理层使用新的芯片,或者刷入新代码。

如图1(a)所示,通过对主机的网卡的物理层的硬件升级,以太网出端口的以太网层次从上往下可以分为链路控制层、mac控制层、mac层、虚拟交织子层(virtualinterleavingsub-layer,vis)和物理层,相当于在原有的层次中的mac层之下、物理层之上增加了虚拟交织子层。或者,如图1(b)所示,通过对主机的网卡的mac层的硬件升级,以太网出端口的以太网层次从上往下可以分为链路控制层、mac控制层、虚拟交织子层、mac层和物理层,相当于在原有的层次中的mac层之上、链路控制层之下增加了虚拟交织子层。

如图2(a)所示,通过对交换机的物理层的硬件升级,以太网出端口的以太网层次从上往下可以分为mac层、虚拟交织子层和物理层,相当于在原有的层次中的mac层之下、物理层之上增加了虚拟交织子层。或者,如图2(b)所示,通过对交换机的mac层的硬件升级,以太网出端口的以太网层次从上往下可以分为虚拟交织子层、mac层和物理层,相当于在原有的层次中的mac层之上、链路控制层之下增加了虚拟交织子层。

另外,上述虚拟交织子层,也可以被称为是复用层。

图3示出了本发明实施例中主机的结构框图,该主机至少可以包括收发器301、处理器302和存储器303。其中,收发器301可以用于实现数据的接收和发送,存储器303可以用于存储软件程序以及模块,处理器302通过运行存储在存储器303中的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器303可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据主机的使用所创建的数据等。此外,存储器303可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器303还可以包括存储器控制器,以提供处理器302和收发器301对存储器303的访问。处理器302是主机的控制中心,利用各种接口和线路连接整个主机的各个部分,通过运行或执行存储在存储器303内的软件程序和/或模块,以及调用存储在存储器303内的数据,执行主机的各种功能和处理数据,从而对主机进行整体监控。

可选的,处理器302可包括一个或多个处理核心;优选的,处理器302可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器302中。

图4示出了本发明实施例中交换机的结构框图,该交换机至少可以包括收发器401、处理器402和存储器403。其中,收发器401可以用于实现数据的接收和发送,存储器403可以用于存储软件程序以及模块,处理器402通过运行存储在存储器403中的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器403可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据交换机的使用所创建的数据等。此外,存储器403可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器403还可以包括存储器控制器,以提供处理器402和收发器401对存储器403的访问。处理器402是交换机的控制中心,利用各种接口和线路连接整个交换机的各个部分,通过运行或执行存储在存储器403内的软件程序和/或模块,以及调用存储在存储器403内的数据,执行交换机的各种功能和处理数据,从而对交换机进行整体监控。

可选的,处理器402可包括一个或多个处理核心;优选的,处理器402可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器402中。

如图5所示,本发明实施例以执行主体为主机为例进行方案的详细说明,传输数据的方法的处理流程可以包括如下的步骤:

步骤501,主机获取多路编码块流。

在实施中,虚拟交织子层设置在mac层和物理层之间,主机有数据要向外传输时,一般是通过链路控制层将数据发送至mac层,然后通过mac层将数据发送至虚拟交织子层,主机可以通过虚拟交织子层从mac层,获取到多路编码块流。多路编码块流可以属于同一业务,也可以属于不同业务。

虚拟交织子层设置在mac层和链路控制层之间,主机有数据要向外传输时,主机可以通过虚拟交织子层从链路控制层,获取到多路编码块流。多路编码块流可以属于同一业务,也可以属于不同业务。

步骤502,主机基于预设的复用序列,对多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流。

其中,预设的复用序列可以由技术人员预设,并且存储至主机中,预设的复用序列中可以包括n个交织的时隙。预设的复用序列也可以称为预设的分发序列。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过虚拟交织子层获取到多路编码块流后,可以将多路编码块流中的编码块按照所属的时隙进行分发处理,分发到对应的时隙,这样就形成了一路编码块流,实现时分复用。

虚拟交织子层设置在mac层和链路控制层之间,通过虚拟交织子层获取到多路编码块流后,可以将多路编码块流中的编码块按照所属的时隙进行分发处理,分发到对应的时隙,这样就形成了一路编码块流,实现时分复用。然后通过虚拟交织子层,将一路编码块流发送至mac层。

可选的,按照时隙进行分发处理的过程可以如下:

根据预设的复用序列中的时隙与编码块流的对应关系,将所述多路编码块流中的编码块分发至对应的时隙。

在实施中,预设的复用序列中包括n个时隙,每个时隙与编码块流相对应,可以是编码块流的编号与时隙的编号相对应,可以通过虚拟交织子层,将多路编码块流中的编码块,分别分发至对应的时隙上。

可选的,对于虚拟交织子层设置在mac层和物理层之间的情况,还可以使用复用序列中的时隙与获取接口的对应关系,按照时隙进行分发处理,相应的处理可以如下:

根据预设的复用序列中的时隙与获取接口的对应关系,以及所述多路编码块流的获取接口,将所述多路编码块流中的编码块分别分发至对应的时隙。

其中,复用序列中的时隙与获取接口的对应关系,可以是时隙的编号与获取接口的编号的对应关系,如表一所示:

表一

在实施中,mac层有多个获取接口,分别用于传输不同路的编码块流,通过虚拟交织子层接收到任一路编码块流后,可以确定获取该路编码块流的mac层的获取接口,然后使用复用序列中的时隙与获取接口的对应关系,将该路编码块流中的编码块,分发至对应的时隙上。如图6所示,获取接口的编号为1,对应的时隙的编号为1、3等,可以将从编号为1的获取接口接收到的第一个编码块分发至编号为1的时隙,将从编号为1的获取接口接收到的第2个编码块分发至编号为3的时隙,获取接口的编号为2,对应的时隙的编号为2等,可以将从编号为2的获取接口接收到的第一个编码块分发至编号为2的时隙等。

需要说明的是,本发明实施例中提到的时隙是指,该时隙上传输的编码块的传输时长。不同时隙可以用于传输同一路编码块流中的编码块,也可以用于传输不同路编码块流中的编码块。

步骤503,主机对一路编码块流进行分段封装处理,生成至少一个帧。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过虚拟交织子层,将多路编码块流形成一路编码块流后,对该一路编码块流,进行分段,然后进行封装处理,生成至少一个帧,该帧也可以称为是以太网帧,该帧也可以称为是vis帧,也可以称为复用帧。将生成的帧发送至物理层,进行处理,然后发出。另外,为了防止帧溢出,还可以通过虚拟交织子层在相邻两个帧之间插入帧间隙,也可以是插入包间隙等。

虚拟交织子层设置在mac层和链路控制层之间,通过mac层接收到一路编码块流后,可以通过mac层对该一路编码块流,进行分段,然后进行封装处理,生成至少一个帧,该帧也可以称为是以太网帧,该帧也可以称为是vis帧,也可以称为复用帧。将生成的帧发送至物理层,进行处理,然后进行发送。另外,为了防止帧溢出,还可以通过mac层在相邻两个帧之间插入帧间隙,也可以是插入包间隙。

可选的,可以使用帧长度,对一路编码块流进行分段封装处理,相应的处理可以如下:

基于预设的帧长度,对一路编码块流进行分段封装处理,生成至少一个帧。

其中,预设的帧长度可以由技术人员进行预设,预设的帧长度可以是m个复用序列。例如,如图7所示,m为100,复用序列包括88个时隙,预设的帧长度也就是8800个时隙。

在实施中,虚拟交织子层设置在mac层和物理层之间,对于一路编码块流,通过虚拟交织子层分成编码块流,然后进行封装,使封装后的帧的长度等于预设的帧长度,这样,通过虚拟交织子层将每m个复用序列生成一个帧。例如,m为100,复用序列包括88个时隙,一个帧中包括8800个时隙。

虚拟交织子层设置在mac层和链路控制层之间,对于一路编码块流,通过mac层分成编码块流,然后进行封装,使封装后的帧的长度等于预设的帧长度,这样,通过虚拟交织子层将每m个复用序列生成一个帧。

可选的,虚拟交织子层设置在mac层和物理层之间,在进行分段封装处理时,有多种封装方式,以下给出两种可行的方式:

方式一:对一路编码块流进行分段插入帧头字段处理,生成至少一个帧。

在实施中,通过虚拟交织子层,对一路编码块流,进行分段后,在每段的开始位置处插入帧头字段,用于界定帧的起始,这样,就得到多个帧,该帧头字段可以是前导码。

相应的,至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列,每个复用序列中包含第二预设数目个编码块。其中,第一预设数目和第二预设数目可以由技术人员预设,第一预设数目可以是上述提到的m,第二预设数目可以是上述提到的n。

方式二:对一路编码块流进行分段插入帧头字段和帧尾字段处理,生成至少一个帧。

在实施中,通过虚拟交织子层,对一路编码块流,进行分段后,在每段的开始位置处插入帧头字段,并且在结束位置处插入帧尾字段,同样,帧头字段用于界定帧的起始,帧尾字段用于检测帧是否损坏,该帧头字段可以是前导码,该帧尾字段可以是crc字段。

相应的,至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列和帧尾字段,每个复用序列中包含第二预设数目个时隙。其中,第一预设数目和第二预设数目可以由技术人员预设,第一预设数目可以是上述提到的m,第二预设数目可以是上述提到的n。

可选的,虚拟交织子层设置在mac层和链路控制层之间,在进行分段封装处理时,有多种封装方式,以下给出两种可行的方式:

方式一:对一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段的处理,生成至少一个帧。

其中,目的mac地址为技术人员预设的任意mac地址,不用于作为寻址,源mac地址为以太网出端口的mac地址,以太网类型字段用于标识帧为以太网类型的帧,可以是技术人员预设的字段。

在实施中,通过虚拟交织子层,对一路编码块流,进行分段后,在每段的开始位置处顺序插入帧头字段、目的mac地址、源mac地址、以太网类型字段,帧头字段用于界定帧的起始,以太网字段用于标识该帧为以太网帧,该帧头字段可以是前导码。

相应的,至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段和第三预设数目个复用序列,每个复用序列中包含第四预设数目个时隙。

方式二:对一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,生成至少一个帧。

其中,目的mac地址为技术人员预设的任意mac地址,不用于作为寻址,源mac地址为以太网出端口的mac地址,以太网类型字段用于标识帧为以太网类型的帧,可以是技术人员预设的字段。

在实施中,通过虚拟交织子层,对一路编码块流,进行分段后,在每段的开始位置处顺序插入帧头字段、目的mac地址、源mac地址、以太网类型字段,并在每段的结束位置处插入帧尾字段,帧头字段用于界定帧的起始,以太网字段用于标识该帧为以太网帧,帧尾字段用于检测帧是否损坏,该帧头字段可以是前导码,该帧尾字段可以是crc字段。

相应的,至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段、第三预设数目个复用序列和帧尾字段,每个复用序列中包含第四预设数目个时隙。

上述提到的第三预设数目可以和前面提到的n相同,第四预设数目可以和前面提到的m相同。

针对前面这个实施例,本申请中还提供了步骤501中获取多路编码块流的下位处理方式:

接收一路业务数据流,按照预设的数据编码方式对一路业务数据流进行编码,得到多路编码块流中的任意一路编码块流。

在实施中,对于多路编码块流中的任意一路编码块流的来源可以是:接收到一路业务数据流后,按照预设的数据编码方式对一路业务数据流进行编码,得到一路编码块流。除这一路编码块流之外,其它路编码块流的来源可以是:直接接收到至少一路编码块流,或者,也可以是接收到至少一路业务数据流,对该至少一路业务数据流进行编码,得到至少一路编码块流,其它路编码块流为编码得到的至少一路编码块流,对该至少一路编码块流进行编码所采用的数据编码方式可以相同,也可以不同,或者,还可以是接收到至少一路业务数据流和至少一路编码块流,对该至少一路业务数据流进行编码,得到至少一路编码块流,这样,其它路编码块流为编码得到的至少一路编码块流和接收到的至少一路编码块流,对该至少一路编码块流进行编码所采用的数据编码方式可以相同,也可以不同。

针对前面这个实施例,本申请中还提供了步骤501中获取多路编码块流的两种下位处理方式,相应的处理过程可以如下:

方式一,接收至少一路业务数据流和至少一路编码块流,按照预设的数据编码方式对每路业务数据流进行编码,得到至少一路编码块流,获取编码得到的至少一路编码块流和接收到的至少一路编码块流。

其中,预设的数据编码方式可以是由技术人员预设,并且存储至主机中。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过虚拟交织子层,从mac层接收到至少一路业务数据流和至少一路编码块流后,可以对这每路业务数据流按照预设的数据编码方式进行编码,得到至少一路编码块流,进而可以获取接收到的至少一路编码块流和编码得到的至少一路编码块流,得到多路编码块流。

虚拟交织子层设置在mac层和链路控制层之间,通过虚拟交织子层,从链路控制层接收到至少一路业务数据流和至少一路编码块流后,可以对这每路业务数据流按照预设的数据编码方式进行编码,得到至少一路编码块流,进而可以获取接收到的至少一路编码块流和编码得到的至少一路编码块流,得到多路编码块流。

这样,如果接收到业务数据流,可以对业务数据流进行编码得到编码块流,对于接收到的编码块流,则不需要进行处理。

方式二,接收多路业务数据流,按照预设的数据编码方式对每路业务数据流进行编码,得到多路编码块流。

其中,预设的数据编码方式可以是由技术人员预设,并且存储至主机中。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过虚拟交织子层,从mac层接收到多路业务数据流后,可以对这每路业务数据流按照预设的数据编码方式进行编码,得到多路编码块流。

虚拟交织子层设置在mac层和链路控制层之间,通过虚拟交织子层,从链路控制层接收到多路业务数据流后,可以对这每路业务数据流按照预设的数据编码方式进行编码,得到多路编码块流。

需要说明的是,上述方式一和方式二中,可以是多个编码模块分别对多路业务数据流进行编码,也可以是一个编码模块,对多路业务数据流进行编码。

另外,还需要说明的是,上述方式一和方式二中,对每路业务数据流都采用预设的数据编码方式进行编码,在实际处理中,不同路的业务数据流,也可以采用不同的数据编码方式进行编码。

可选的,预设的数据编码方式为8b/9b、64b/66b和256b/257b中任意一种。

在实施中,64b/66b和256b/257b的数据编码方式是现有技术中常用的数据编码方式,此处不再赘述。

对于8b/9b的数据编码方式,将每路业务数据流编码成由一个数据域组成的编码块,每个数据域为9比特,最高位[8]的1比特用于进行指示,最高位[8]的1比特为0时,表示数据块,最高位[8]的1比特为1时,表示数据块,剩下8位[7:0]占用8比特,用于存放业务数据或控制数据。例如,如图8(a)所示,最高位[8]的1比特为1,剩下8位[7:0]是16进制的00,占用8比特,这8比特的控制数据用于表示闲置状态;最高位[8]的1比特为1,剩下8位[7:0]是16进制的01,占用8比特,这8比特的控制数据用于表示进入低功率;最高位[8]的1比特为1,剩下8位[7:0]是16进制的5a,占用8比特,这8比特的控制数据用于表示帧的开始;最高位[8]的1比特为1,剩下8位[7:0]是16进制的a5,占用8比特,这8比特的控制数据用于表示帧的结束;最高位[8]的1比特为0,剩下8位[7:0]是16进制的00~ff,占用8比特,这8比特的是业务数据。

按照8b/9b的数据编码方式进行编码,可见每9比特中,就有1比特用于指示是控制数据还是业务数据,所以假如有1gbps的带宽,通过上述编码方式进行编码后,实际有效数据带宽为1gbps*(8/9)=0.89gbps。

可选的,在8b/9b的数据编码方式的基础上,进行改进,有以下数据编码方式:

对于每路业务数据流,将业务数据流编码成由四个数据域和至少一个标记域组成的编码块,并在每个编码块中的标记域为编码块设置第一指示标识,第一指示标识有第一状态或第二状态。

其中,数据域中是控制数据与业务数据,标记域是为了设置第一指示标识和第二指示标识,四个数据域都是业务数据,仅有一个标记域,四个数据域中至少有一个数据域是控制数据,有两个标记域,一个用于放置第一指示标识,一个用于放置第二指示标识。

在实施中,在8b/9b的数据编码方式的基础上,对数据域重新定义如图8(b)所示,最高位[8]的1比特用于指示,也就是第一指示标识,第一指示标识占用1比特,第一指示标识有第一状态或第二状态,第一状态可以用0表示,第二状态可以用1表示,剩下8位[7:0]占用8比特,最高位[8]的1比特为1,剩下8位[7:0]是16进制的0,占用4比特,这4比特的控制数据用于表示闲置状态;最高位[8]的1比特为1,剩下8位[7:0]是16进制的1,占用4比特,这4比特的控制数据用于表示进入低功率;最高位[8]的1比特为1,剩下8位[7:0]是16进制的2,占用4比特,这4比特的控制数据用于表示帧的开始;最高位[8]的1比特为1,剩下8位[7:0]是16进制的3,占用4比特,这4比特的控制数据用于表示帧的结束;最高位[8]的1比特为0,剩下8位[7:0]是16进制的00~ff,占用8比特,这8比特的是业务数据。

经过对数据域的重新定义,数据域是控制数据时,[7:0]的[7:4]的4比特是没有使用,所以对于每路业务数据流,在进行数据编码时,将每四个数据域和至少一个控制域组成一个编码块,在每个编码块中的标识域中为该编码块设置第一指示标识,这种情况下只有一个标识域,如图8(c)所示,有一个标识域和四个数据域,标识域中设置有第一指示标识,为第一状态,占用1比特,四个数据域均是业务数据,并且每个数据域占用8比特。第一指示标识为第二状态时,表示四个数据域中至少有一个数据域是控制数据,如果四个数据域中至少有一个数据域是控制数据的编码块的标识域中还设置有第二指示标识,第二指示标识占用4比特,用于指示编码块中业务数据与控制数据的位置,也就是用于指示那个数据域是控制数据,哪个数据域是业务数据,四个数据域中第一个控制数据占用4比特(这是由于有4比特借给第二指示标识使用),其余三个数据域,无论是控制数据还是业务数据,均占用8比特,这种情况下,有两个标识域,第一个标识域用于设置第一指示标识,第二个标识域用于设置第二指示标识。例如,如图8(d)所示,有两个标识域和四个数据域,两个标识域中第一个标识域是第一指示标识,为第二状态,占用1比特,第二个标识域是第二指示标识,占用4比特,四个数据域中有两个数据域是控制数据,第一和第三个数据域是业务数据,第二和第四个数据域是控制数据,第二个数据域中的控制数据占4比特。

这样,通过改进的编码方式,可以减小控制数据的指示位的开销,假如有1gbps的带宽,通过上述数据编码方式进行编码后,实际有效数据带宽为1gbps*(32/33)=0.9846gbps,确实比8b/9b的数据编码方式的有效带宽多。

需要说明的是,上述数据域也可以称为是字段。第二指示标识所占用的标识域也可以称为是地图(map)域。

如图9所示,本发明另一实施例以执行主体为交换机为例进行方案的详细说明,传输数据的方法的处理流程可以包括如下的步骤:

步骤901,交换机获取多路编码块流。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过交换机的以太网入端口的物理层接收到任意一个帧后,通过该物理层对该帧进行处理后,传输至该以太网入端口的虚拟交织子层,通过该虚拟交织子层,对该帧进行解封装处理,得到一路编码块流,该一路编码块流中的每个编码块都对应有时隙,通过预设的复用序列中的时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流。然后对多路编码块流中的编码块,按照预设的数据解码方式进行解码,得到多路业务数据流,然后通过虚拟交织子层,将多路业务数据流发送至以太网入端口的mac层。交换机可以通过以太网入端口的mac层,将多路业务数据流分别传输至对应的以太网出端口的mac层,通过以太网出端口的mac层接收到多路业务数据流后,可以通过以太网出端口的mac层将多路业务数据流发送至虚拟交织子层,通过虚拟交织子层,分别对接收到的业务数据流进行编码(数据编码方式见图5所示的实施例中的描述),得到多路编码块流。

或者,虚拟交织子层设置在mac层和物理层之间,通过交换机的以太网入端口的物理层接收到任意一个帧后,通过物理层对该帧进行处理后,传输至虚拟交织子层,通过虚拟交织子层,对该帧进行解封装处理,得到一路编码块流,该一路编码块流中的每个编码块都对应有时隙,通过预设的复用序列中的时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流。然后通过以太网入端口的虚拟交织子层,将多路编码块流发送至交换机中的交换模块,交换机通过交换模块,根据以太网入端口的时隙与以太网出端口的对应关系,将多路编码块流分别发送至对应的以太网出端口的虚拟交织子层,通过以太网出端口的虚拟交织子层,接收到多路编码块流。

虚拟交织子层设置在mac层和链路控制层之间,通过交换机的以太网入端口的物理层接收到任意一个帧后,通过物理层对该帧进行处理后,传输至该以太网入端口的mac层,通过该mac层,对该帧进行解封装处理,得到一路编码块流,然后通过该mac层将一路编码块流发送至该以太网入端口的虚拟交织子层。通过该虚拟交织子层,根据预设的复用序列中的时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流。然后通过该以太网入端口的虚拟交织子层,将多路编码块流发送至交换机中的交换模块,交换机通过交换模块,根据以太网入端口的时隙与以太网出端口的对应关系,将多路编码块流分别发送至对应的以太网出端口的虚拟交织子层,通过以太网出端口的虚拟交织子层,接收到多路编码块流。

步骤902,交换机基于预设的复用序列,对多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流。

其中,预设的复用序列可以由技术人员预设,并且存储至主机中,预设的复用序列中可以包括n个交织的时隙。预设的复用序列也可以称为预设的分发序列。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过虚拟交织子层获取到多路编码块流后,可以将多路编码块流中的编码块按照所属的时隙进行分发处理,分发到相应的时隙,这样就形成了一路编码块流,实现时分复用。然后通过虚拟交织子层,将一路编码块流发送至物理层。

虚拟交织子层设置在mac层和链路控制层之间,通过虚拟交织子层获取到多路编码块流后,可以将多路编码块流中的编码块按照所属的时隙进行分发处理,分发到相应的时隙,这样就形成了一路编码块流,实现时分复用。然后通过虚拟交织子层,将一路编码块流发送至mac层。

可选的,不管虚拟交织子层设置在mac层和物理层之间,还是虚拟交织子层设置在mac层和链路控制层之间,按照时隙进行分发处理有两种处理方式:

方式一:根据预设的复用序列中的时隙与编码块流的对应关系,将所述多路编码块流中的编码块分发至对应的时隙。

其中,预设的复用序列可以由技术人员预设,包括n个时隙,每个时隙与编码块流相对应。

在实施中,通过以太网出端口的虚拟交织子层获取到多路编码块流后(由于一个交换机中,不仅有一个以太网入端口,所以通过以太网出端口可以接收到多个以太网入端口传输的编码块流),可以通过虚拟交织子层,根据预设的复用序列中的时隙与编码块流的对应关系,将多路编码块流中的编码块,分别发送至对应的时隙上,这样,就将多路编码块流分发成一路编码块流,实现时分复用。

方式二:基于预设的复用序列中的以太网出端口的时隙与以太网入端口的时隙的对应关系、以及多路编码块流中的编码块的以太网入端口的时隙,将获取到的多路编码块流中的编码块分别分发至对应的以太网出端口的时隙。

其中,预设的复用序列可以由技术人员预设,包括n个时隙。

在实施中,通过以太网出端口的虚拟交织子层,接收到多路编码块流后(由于一个交换机中,不仅有一个以太网入端口,所以通过以太网出端口可以接收到多个以太网入端口传输的编码块流),可以按照预设的复用序列中的以太网出端口的时隙与以太网入端口的时隙的对应关系,将多路编码块流中的编码块分别分发至对应的以太网出端口的时隙,这样,就将多路编码块流分发成一路编码块流,实现时分复用。

步骤903,交换机对一路编码块流进行分段封装处理,生成至少一个帧。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过以太网出端口的虚拟交织子层得到一路编码块流后,可以通过该虚拟交织子层对该一路编码块流,进行分段,然后进行封装处理,生成至少一个帧,该帧也可以称为是以太网帧,该帧也可以称为是vis帧,也可以称为复用帧。将生成的帧发送至物理层,进行处理,然后进行发送。另外,为了防止帧溢出,还可以通过虚拟交织子层在相邻两个帧之间插入帧间隙,也可以是插入包间隙。

虚拟交织子层设置在mac层和链路控制层之间,通过以太网出端口的虚拟交织子层得到一路编码块流后,可以通过该虚拟交织子层将该一路编码块流发送至以太网出端口的mac层,通过该mac层接收到一路编码块流后,可以对该一路编码块流,进行分段,然后进行封装处理,生成至少一个帧,该帧也可以称为是以太网帧,该帧也可以称为是vis帧,也可以称为复用帧。将生成的帧发送至物理层层,进行处理,然后进行发送。另外,为了防止帧溢出,还可以通过mac层在相邻两个帧之间插入帧间隙,也可以是插入包间隙。

可选的,进行分段封装处理的过程可以参见图5所示的实施例中的处理过程,此处不再赘述。

图5和图9所示的实施例中,在以太网出端口,通过将虚拟交织子层设置在mac层和物理层之间,或者将虚拟交织子层设置在mac层和链路控制层之间,都不会涉及到在物理层的pcs中插入flexeshim,从而与以太网出端口的物理层中pcs无关,从而与以太网出端口的物理层中pcs的编码调制方式无关,通用性比较好。

本发明实施例中,获取多路编码块流,基于预设的复用序列,对多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流,对一路编码块流进行分段封装处理,生成至少一个帧。这样,通过以太网出端口向外发送数据时,可以对多路编码块流按照时隙进行分发处理,实现时分复用,多路编码块流之间的传输不会相互影响,会降低编码块流等待传输时长,进而会降低数据传输时延,可以满足工业以太网中数据传输时延比较高的业务的业务需求。

另外,基于相同的技术构思,本发明实施例提供了一种传输数据的方法,应用于高速以太网入端口或低速以太网入端口(后续统称为以太网入端口),该方法的执行主体可以是交换机或主机,该交换机可以是对原有交换机的物理层或mac层的硬件进行升级得到的,进行物理层或mac层的硬件升级可以是在物理层使用新的芯片,或者刷入新代码,同样,对于该主机,可以是对主机中原有网卡的物理层或mac层的硬件进行升级得到的,进行物理层或mac层的硬件升级可以是在物理层使用新的芯片,或者刷入新代码。

如图1(a)所示,通过对主机的网卡的物理层的硬件升级,以主机的以太网入端口的层次从上往下可以分为链路控制层、mac控制层、mac层、虚拟交织子层和物理层,相当于在原有的层次中的mac层之下、物理层之上增加了虚拟交织子层。或者,如图1(b)所示,通过对主机的网卡的mac层的硬件升级,主机的以太网入端口的层次从上往下可以分为链路控制层、mac控制层、虚拟交织子层、mac层和物理层,相当于在原有的层次中的mac层之上、链路控制层之下增加了虚拟交织子层。

如图2(a)所示,通过对交换机的物理层的硬件升级,交换机的以太网入端口的层次从上往下可以分为mac层、虚拟交织子层和物理层。通过对交换机的mac层的硬件升级,以太网入端口的层次从上往下可以分为虚拟交织子层、mac层和物理层。或者,如图2(b)所示,通过对交换机的mac层的硬件升级,交换机的以太网入端口的层次从上往下可以分为虚拟交织子层、mac层和物理层。

另外,上述虚拟交织子层,也可以被称为是复用层。

如图10所示,本发明另一实施例以执行主体为主机为例进行方案的详细说明,传输数据的方法的处理流程可以包括如下的步骤:

步骤1001,主机接收至少一个帧。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过主机的以太网入端口的物理层接收到至少一个帧后,通过该物理层对该至少一个帧进行处理后,传输至该以太网入端口的虚拟交织子层。

虚拟交织子层设置在mac层和链路控制层之间,通过主机的以太网入端口的物理层接收到至少一个帧后,通过该物理层对该至少一个帧进行处理后,传输至该以太网入端口的mac层。

步骤1002,主机对至少一个帧中每个帧进行解封装处理,得到一路编码块流。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过以太网入端口的虚拟交织子层接收到至少一个帧后,对至少一个帧中每个帧进行解封装处理,得到一路编码块流,此过程为图5所示的实施例中步骤503的逆过程。另外,如果相邻帧之间有帧间隙,在对帧进行解封装处理之前,还会对帧进行删除帧间隙处理。

虚拟交织子层设置在mac层和链路控制层之间,通过以太网入端口的mac层接收到至少一个帧后,对至少一个帧中每个帧进行解封装处理,得到一路编码块流,传输至该以太网入端口的虚拟交织子层,此过程为图5所示的实施例中步骤503的逆过程。

步骤1003,主机基于预设的复用序列,对一路编码块流进行解复用处理,得到多路编码块流。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过以太网入端口的虚拟交织子层得到一路编码块流后,可以使用预设的复用序列中的时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流,然后通过该虚拟交织子层,将得到的多路编码块流传输至mac层,通过mac层对多路编码块流进行处理后,传输至链路控制层,进行处理。

虚拟交织子层设置在mac层和链路控制层之间,通过以太网入端口的虚拟交织子层接收到一路编码块流后,可以使用预设的复用序列的时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流,然后通过该虚拟交织子层,将得到的多路编码块流,传输至链路控制层,进行处理。

可选的,在步骤1003中,得到多路编码块流后,可以对多路编码块流中的编码块进行解码,再进行发送,相应的处理可以如下:

按照预设的数据解码方式,对多路编码块流中的每个编码块进行解码。

其中,预设的数据解码方式可以由技术人员预设,与图5所示的实施例中描述的数据编码方式相对应。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过以太网入端口的虚拟交织子层,将得到的多路编码块流中的编码块,按照预设数据解码方式进行解码后,得到多路业务数据流,将多路业务数据流传输至mac层,通过mac层对多路业务数据流进行处理后,传输至链路控制层,进行处理。

虚拟交织子层设置在mac层和链路控制层之间,通过以太网入端口的虚拟交织子层,将得到的多路编码块流中的编码块,按照预设数据解码方式进行解码后,得到多路业务数据流,将得到的多路业务数据流,传输至链路控制层,进行处理。

可选的,虚拟交织子层设置在mac层和物理层之间,可以使用以下方式对帧进行解封装处理,相应的步骤1002的处理可以如下:

对至少一个帧中每个帧进行删除帧头字段和帧尾字段处理,得到一路编码块流,或者,对至少一个帧中每个帧进行删除帧头字段处理,得到一路编码块流。

在实施中,如果至少一个帧中的任一帧包括帧头字段和帧尾字段,则通过以太网入端口的虚拟交织子层,对该帧进行删除帧头字段和帧尾字段的处理,得到一路编码块流,如果至少一个帧中的任一帧仅包括帧头字段,通过以太网入端口的虚拟交织子层,对该帧进行删除帧头字段的处理,得到一路编码块流。

可选的,虚拟交织子层设置在mac层和链路控制层之间,可以使用以下方式对帧进行解封装处理,相应的步骤1302的处理可以如下:

对至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,得到一路编码块流;或者,对至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址和以太网类型字段的处理,得到一路编码块流。

在实施中,如果至少一个帧中的任一帧包括帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段,则通过以太网入端口的mac层,对该帧进行删除帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,得到一路编码块流,如果至少一个帧中的任一帧仅包括帧头字段、目的mac地址、源mac地址和以太网类型字段,通过以太网入端口的mac层,对该帧进行删除帧头字段、目的mac地址、源mac地址和以太网类型字段的处理,得到一路编码块流。

如图11所示,本发明另一实施例以执行主体为交换机为例进行方案的详细说明,传输数据的方法的处理流程可以包括如下的步骤:

步骤1101,交换机接收至少一个帧。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过交换机的以太网入端口的物理层接收到至少一个帧后,通过该物理层对该至少一个帧进行处理后,传输至该以太网入端口的虚拟交织子层。

虚拟交织子层设置在mac层和链路控制层之间,通过交换机的以太网入端口的物理层接收到至少一个帧后,通过该物理层对该至少一个帧进行处理后,传输至该以太网入端口的mac层。

步骤1102,交换机对至少一个帧中每个帧进行解封装处理,得到一路编码块流。

在实施中,虚拟交织子层设置在mac层和物理层之间,通过以太网入端口的虚拟交织子层接收到至少一个帧后,对至少一个帧中每个帧进行解封装处理,得到一路编码块流,此过程为图9所示的实施例中步骤903的逆过程。

虚拟交织子层设置在mac层之和链路控制层之间,通过以太网入端口的mac层接收到至少一个帧后,对至少一个帧中每个帧进行解封装处理,得到一路编码块流,传输至该以太网入端口的虚拟交织子层,此过程为图9所示的实施例中步骤903的逆过程。

另外,解封装的处理可以参见图11所示的实施例中的描述。

步骤1103,交换机基于预设的复用序列,对一路编码块流进行解复用处理,得到多路编码块流。

在实施中,虚拟交织子层设置在mac层和物理层之间,或者虚拟交织子层设置在mac层之和链路控制层之间,通过以太网入端口的虚拟交织子层得到一路编码块流后,可以使用预设的复用序列中时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流,然后通过该虚拟交织子层,将多路编码块流发送至交换机中的交换模块,交换机通过交换模块,根据以太网入端口的时隙与以太网出端口的对应关系,将得到的多路编码块流分别传输至对应的以太网网出端口。

或者,虚拟交织子层设置在mac层和物理层之间,通过以太网入端口的虚拟交织子层得到一路编码块流后,可以使用预设的复用序列中时隙与编码块流的对应关系,以及一路编码块流中每个编码块对应的时隙,将与同一编码流对应的时隙上的多个编码块组成同一编码块流,这样,就得到多路编码块流,然后通过该虚拟交织子层,将得到的多路编码块流中的编码块,按照预设数据解码方式进行解码后,得到多路业务数据流,然后将多路业务数据流发送至交换机中的交换模块,交换机通过交换模块,根据以太网入端口的时隙与以太网出端口的对应关系,将得到的多路编码块流分别发送至对应的以太网出端口。

需要说明的是,上述各实施例中,虚拟交织子层设置在mac层和物理层之间,mac层是通过x媒体无关接口(mediaindependentinterface,mii)将编码块流或者业务数据流发送虚拟交织子层,x媒体无关接口为各种以太网端口速率或各种斑斑的mii接口类型的统称。

图10和图11所示的实施例中,在以太网入端口,通过将虚拟交织子层设置在mac层和物理层之间,或者将虚拟交织子层设置在mac层和链路控制层之间,从而与以太网出端口的物理层中pcs的编码调制方式无关,通用性比较好。

本发明实施例中,获取多路编码块流,基于预设的复用序列,对多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流,对一路编码块流进行分段封装处理,生成至少一个帧。这样,通过以太网出端口向外发送数据时,可以对多路编码块流按照时隙进行分发处理,实现时分复用,多路编码块流之间的传输不会相互影响,会降低编码块流等待传输时长,进而会降低数据传输时延,可以满足工业以太网中数据传输时延比较高的业务的业务需求。

图12是本发明实施例提供的传输数据的装置的结构图。该装置可以通过软件、硬件或者两者的结合实现成为装置中的部分或者全部。本发明实施例提供的装置可以实现本发明实施例图5和图9所述的流程,该装置包括:获取模块1210、分发模块1220和封装模块1230,其中:

获取模块1210,用于获取多路编码块流,具体用于实现上述步骤501、步骤901、步骤1001和步骤1101的获取功能,以及其它隐含步骤;

分发模块1220,用于基于预设的复用序列,对所述多路编码块流中的编码块按照时隙进行分发处理,形成一路编码块流,具体用于实现上述步骤502、步骤902、步骤1002和步骤1102的分发功能,以及其它隐含步骤;

封装模块1230,用于对所述一路编码块流进行分段封装处理,生成至少一个帧,具体用于实现上述步骤503、步骤903、步骤1003和步骤1103的封装功能,以及其它隐含步骤。

可选的,所述分发模块1220,用于:

根据预设的复用序列中的时隙与编码块流的对应关系,将所述多路编码块流中的编码块分发至对应的时隙,其中,每个复用序列包括n个时隙,n为正整数。

可选的,所述分发模块1220,用于:

根据预设的复用序列中的时隙与获取接口的对应关系,以及所述多路编码块流的获取接口,将所述多路编码块流中的编码块分别分发至对应的时隙。

可选的,所述获取模块1210,用于:

接收一路业务数据流;

按照预设的数据编码方式对所述一路业务数据流进行编码,得到多路编码块流中的任意一路编码块流。

可选的,所述获取模块1210,用于:

接收至少一路业务数据流和至少一路编码块流;

按照预设的数据编码方式对每路业务数据流进行编码,得到至少一路编码块流;

获取编码得到的至少一路编码块流和接收到的至少一路编码块流。

可选的,所述获取模块1210,用于:

接收多路业务数据流;

按照预设的数据编码方式对每路业务数据流进行编码,得到多路编码块流。

可选的,所述获取模块1210,用于:

对于每路业务数据流,将所述业务数据流编码成由四个数据域组成的编码块,并在每个编码块中为所述编码块设置第一指示标识,所述第一指示标识有第一状态或第二状态,其中,所述第一状态用于指示所述编码块的四个数据域均是业务数据,所述第二状态用于指示所述编码块中的四个数据域中至少有一个数据域是控制数据,四个数据域中至少有一个数据域是控制数据的编码块中还设置有第二指示标识,所述第二指示标识用于指示所述编码块中的业务数据与控制数据的位置。

可选的,所述预设的数据编码方式为8b/9b、64b/66b和256b/257b中任意一种。

可选的,所述装置应用于交换机的以太网出端口;

所述获取模块1210,用于:

从所述交换机的以太网入端口获取多路编码块流;

所述分发模块1220,用于:

基于预设的复用序列中的以太网出端口的时隙与以太网入端口的时隙的对应关系、以及所述多路编码块流中的编码块的以太网入端口的时隙,将获取到的多路编码块流中的编码块分别分发至对应的以太网出端口的时隙,其中,每个复用序列包括n个时隙,n为正整数。

可选的,所述封装模块1230,用于:

基于预设的帧长度,对所述一路编码块流进行分段封装处理,生成至少一个帧。

可选的,所述封装模块1230,用于:

对所述一路编码块流进行分段插入帧头字段处理,生成至少一个帧;或者,

对所述一路编码块流进行分段插入帧头字段和帧尾字段处理,生成至少一个帧。

可选的,所述至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列,每个复用序列中包含第二预设数目个时隙;或者,

所述至少一个帧中帧的帧格式为帧头字段、第一预设数目个复用序列和帧尾字段,每个复用序列中包含第二预设数目个时隙。

可选的,所述装置应用于以太网出端口;

所述封装模块1230,用于:

对所述一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段的处理,生成至少一个帧,其中,所述目的mac地址为任意mac地址,所述源mac地址为所述以太网出端口的mac地址;或者,

对所述一路编码块流进行分段插入帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,生成至少一个帧,其中,所述目的mac地址为任意mac地址,所述源mac地址为所述以太网出端口的mac地址。

可选的,所述至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段和第三预设数目个复用序列,每个复用序列中包含第四预设数目个时隙;或者,

所述至少一个帧中帧的帧格式为帧头字段、目的mac地址、源mac地址、以太网类型字段、第三预设数目个复用序列和帧尾字段,每个复用序列中包含第四预设数目个时隙。

可选的,所述帧头字段为前导码,所述帧尾字段为循环冗余校验码crc字段。

需要说明的是,上述获取模块1210、分发模块1220和封装模块1230,可以由处理器302或402来实现。

图13是本发明实施例提供的传输数据的装置的结构图。该装置可以通过软件、硬件或者两者的结合实现成为装置中的部分或者全部。本发明实施例提供的装置可以实现本发明实施例图10和图11所述的流程,该装置包括:接收模块1310、解封装模块1320和解封装模块1330,其中:

接收模块1310,用于接收至少一个帧;

解封装模块1320,用于对所述至少一个帧中每个帧进行解封装处理,得到一路编码块流;

解复用模块1330,用于基于预设的复用序列,对所述一路编码块流进行解复用处理,得到多路编码块流。

可选的,如图14所示,所述装置还包括:

解码模块1340,用于按照预设的数据解码方式,对所述多路编码块流中的每个编码块进行解码。

可选的,所述解复用模块1320,用于:

对所述至少一个帧中每个帧进行删除帧头字段和帧尾字段处理,得到一路编码块流;或者,

对所述至少一个帧中每个帧进行删除帧头字段处理,得到一路编码块流。

可选的,所述解复用模块1320,用于:

对所述至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址、以太网类型字段和帧尾字段的处理,得到一路编码块流;或者,

对所述至少一个帧中每个帧进行删除帧头字段、目的mac地址、源mac地址和以太网类型字段的处理,得到一路编码块流。

需要说明的是,上述接收模块1310、解封装模块1320和解封装模块1330,可以由处理器302或402来实现。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在主机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴光缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是主机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(如软盘、硬盘和磁带等),也可以是光介质(如数字视盘(digitalvideodisk,dvd)等),或者半导体介质(如固态硬盘等)。

以上所述仅为本申请的一个实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1