CN116506360A - 一种发送数据单元的方法、装置及系统 - Google Patents

一种发送数据单元的方法、装置及系统 Download PDF

Info

Publication number
CN116506360A
CN116506360A CN202210074452.9A CN202210074452A CN116506360A CN 116506360 A CN116506360 A CN 116506360A CN 202210074452 A CN202210074452 A CN 202210074452A CN 116506360 A CN116506360 A CN 116506360A
Authority
CN
China
Prior art keywords
data unit
information
communication device
port
transmitting
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.)
Pending
Application number
CN202210074452.9A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210074452.9A priority Critical patent/CN116506360A/zh
Publication of CN116506360A publication Critical patent/CN116506360A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0062Network aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请实施例提供了一种发送数据单元的方法、装置及系统。第一通信装置获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;所述第一通信装置获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元;所述第一通信装置根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。通过本申请的方案,降低了网络中数据单元的乱序,输出装置接收到所述第一数据单元和所述第二数据单元后,不需要在缓存中保存或者只需在缓存中保存较短时间,降低了输出装置的缓存资源。

Description

一种发送数据单元的方法、装置及系统
技术领域
本申请涉及通信技术领域,尤其涉及一种发送数据单元的方法、装置及系统。
背景技术
支持电交换的设备(简称“电交换设备”),例如交换机、路由器等设备的功耗很大,导致使用这些设备的成本较高。光交换技术能有效的降低电交换设备的功耗。而支持光交换的设备(简称“光交换设备”)中没有缓存,不能吸收突发流量,也就是说,在同一时刻,对于一个光交换设备来说,不能传输两个及两个以上发往同一个输出端口的流量。
在支持光交换的网络(简称“光交换网络”)中,数据单元(data unit)(简称data)到达输入设备后,输入设备根据负载均衡算法选择输出端口,然后将数据单元保存在与输出端口对应的缓存空间中。输入设备在收到时隙许可信息之后发送对应的数据单元,可能会导致输入设备乱序发送数据单元。例如,数据单元1、2是来自同一输入设备的同一个输入端口,发往同一个输出设备的同一个输出端口的连续数据单元,可能会出现数据单元1在时隙2发送,数据单元2在时隙1发送的情况。输出设备收到数据单元后,需要将数据单元存储下来,等到该数据单元的前序数据单元到达之后再依次发送,例如,输出设备在时隙1收到数据单元2后,不能立即转发,需要将数据单元2存储下来,在数据单元1到达之后依次发送,这样就会大量消耗输出设备的缓存资源。
发明内容
有鉴于此,本申请实施例提供了一种发送数据单元的方法、装置及系统,有助于避免报文乱序和节省缓存资源。
第一方面,本申请提供了一种发送数据单元方法,所述方法包括,第一通信装置获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;所述第一通信装置获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元;所述第一通信装置根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
基于实施例提供的方案,所述第一通信装置按序发送所述第一数据单元和所述第二数据单元,降低了网络中数据单元的乱序,那么输出装置接收到所述第一数据单元和所述第二数据单元后,不需要在缓存中保存或者只需在缓存中保存较短时间,降低了输出装置的缓存资源。
在一种可能的实现方式中,所述第一信息包括用于发送所述第一数据单元的第一时隙,所述第二信息包括用于发送所述第二数据单元的第二时隙,所述第一时隙早于所述第二时隙。
在一种可能的实现方式中,所述第一通信装置获得第一信息和第二信息,包括:所述第一通信装置接收与所述第一数据单元对应的第二通信装置发送的所述第二信息;所述第一通信装置接收与所述第二数据单元对应的第三通信装置发送的所述第一信息。
在一种可能的实现方式中,所述方法还包括:述第一通信装置根据所述第一信息,确定用于发送所述第一数据单元的第一端口;所述第一通信装置根据所述第二信息,确定用于发送所述第二数据单元的第二端口。
在一种可能的实现方式中,所述第一通信装置根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元,包括:所述第一通信装置按序通过所述第一端口和所述第二端口,分别发送所述第一数据单元和所述第二数据单元。
在一种可能的实现方式中,所述第一通信装置根据所述第一信息,确定用于发送所述第一数据单元的第一端口,包括:所述第一通信装置根据接收所述第一信息的第三端口,确定与所述第三端口对应的所述第一端口。
在一种可能的实现方式中,所述第一通信装置根据所述第二信息,确定用于发送所述第二数据单元的第二端口,包括:所述第一通信装置根据接收所述第二信息的第四端口,确定与所述第四端口对应的所述第二端口。
在一种可能的实现方式中,所述第一信息还包括第一指示信息,所述第一通信装置根据所述第一信息,确定用于发送所述第一数据单元的第一端口,包括:所述第一通信装置根据所述第一指示信息,确定与所述第一指示信息对应的所述第一端口。
在一种可能的实现方式中,所述第二信息还包括第二指示信息所述第一通信装置根据所述第二信息,确定用于发送所述第二数据单元的第二端口,包括:所述第一通信装置根据所述第二指示信息,确定与所述第二指示信息对应的所述第二端口。
在一种可能的实现方式中,所述方法还包括:所述第一通信装置向第二通信装置发送第一请求,所述第一请求用于请求分配发送资源;所述第一通信装置向第三通信装置发送第二请求,所述第二请求用于请求分配发送资源。
在一种可能的实现方式中,所述第二通信装置和所述第三通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
在一种可能的实现方式中,所述方法应用于支持光交换的网络或支持电交换的网络。
在一种可能的实现方式中,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
第二方面,本申请提供了一种发送数据单元方法,所述方法包括,第二通信装置向第一通信装置发送第二信息,所述第二信息用于指示第一通信装置发送第二数据单元。
在一种可能的实现方式中,所述指示信息包括用于发送第二数据单元的时隙。
在一种可能的实现方式中,所述第一信息与所述第一数据单元对应。
在一种可能的实现方式中,所述第二信息,用于所述第一通信装置确定发送所述第二数据单元的第二端口。
在一种可能的实现方式中,所述第二信息,用于所述第一通信装置根据接收所述第二信息的第四端口,确定与所述第四端口对应的所述第二端口。
在一种可能的实现方式中,所述第二信息还包括第二指示信息,所述第二指示信息用于所述第一通信装置确定与所述第二指示信息对应的所述第二端口。
在一种可能的实现方式中,所述方法还包括:所述第二通信装置接收所述第一通信装置发送的第一请求,所述第一请求用于请求分配发送资源。
在一种可能的实现方式中,所述方法应用于支持光交换的网络或支持电交换的网络。
在一种可能的实现方式中,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
在一种可能的实现方式中,所述第二通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
第三方面,本申请提供了一种发送数据单元方法,所述方法包括,第三通信装置向第一通信装置发送第一信息,所述第一信息用于指示第一通信装置发送第一数据单元。
在一种可能的实现方式中,所述第一信息包括用于发送所述第一数据单元的第一时隙。
在一种可能的实现方式中,所述第一信息与所述第二数据单元对应。
在一种可能的实现方式中,所述第一信息,用于所述第一通信装置确定发送所述第一数据单元的第一端口。
在一种可能的实现方式中,所述第一信息,用于所述第一通信装置根据接收所述第一信息的第三端口,确定与所述第三端口对应的所述第一端口。
在一种可能的实现方式中,所述第一信息还包括第一指示信息,所述第一指示信息用于所述第一通信装置确定与所述第一指示信息对应的所述第一端口。
在一种可能的实现方式中,所述方法还包括:所述第三通信装置接收所述第一通信装置发送的第二请求,所述第二请求用于请求分配发送资源。
在一种可能的实现方式中,所述方法应用于支持光交换的网络或支持电交换的网络。
在一种可能的实现方式中,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
在一种可能的实现方式中,所述第三通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
第四方面,本申请提供了一种第一通信装置,包括:收发单元和处理单元。其中,
所述处理单元,用于获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;所述处理单元,还用于获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元;所述收发单元,用于根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
在一种可能的实现方式中,所述第一信息包括用于发送所述第一数据单元的第一时隙,所述第二信息包括用于发送所述第二数据单元的第二时隙,所述第一时隙早于所述第二时隙。
在一种可能的实现方式中,所述收发单元,用于:接收与所述第一数据单元对应的第二通信装置发送的所述第二信息;接收与所述第二数据单元对应的第三通信装置发送的所述第一信息。
在一种可能的实现方式中,所述处理单元,还用于:根据所述第一信息,确定用于发送所述第一数据单元的第一端口;根据所述第二信息,确定用于发送所述第二数据单元的第二端口。
在一种可能的实现方式中,所述收发单元还用于按序通过所述第一端口和所述第二端口,分别发送所述第一数据单元和所述第二数据单元。
在一种可能的实现方式中,所述处理单元用于根据接收所述第一信息的第三端口,确定与所述第三端口对应的所述第一端口。
在一种可能的实现方式中,所述处理单元用于根据接收所述第二信息的第四端口,确定与所述第四端口对应的所述第二端口。
在一种可能的实现方式中,所述第一信息还包括第一指示信息,所述处理单元用于根据所述第一指示信息,确定与所述第一指示信息对应的所述第一端口。
在一种可能的实现方式中,所述第二信息还包括第二指示信息,所述处理单元用于根据所述第二指示信息,确定与所述第二指示信息对应的所述第二端口。
在一种可能的实现方式中,所述收发单元还用于:向第二通信装置发送第一请求,所述第一请求用于请求分配发送资源;向第三通信装置发送第二请求,所述第二请求用于请求分配发送资源。
在一种可能的实现方式中,所述第二通信装置和所述第三通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
在一种可能的实现方式中,所述第一通信装置应用于支持光交换的网络或支持电交换的网络。
在一种可能的实现方式中,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
第五方面,本申请提供了一种第二通信装置,包括:收发单元和处理单元。其中,所述收发单元,用于向第一通信装置发送第二信息,所述第二信息用于指示第一通信装置晚于所述第一数据单元发送所述第二数据单元。
在一种可能的实现方式中,所述第二信息包括用于发送所述第二数据单元的第二时隙,所述第二时隙晚于第三通信装置向所述第一通信装置发送的第一信息中的第一时隙。
在一种可能的实现方式中,所述第二信息与所述第一数据单元对应。
在一种可能的实现方式中,所述第二信息,用于所述第一通信装置确定发送所述第二数据单元的第二端口。
在一种可能的实现方式中,所述第二信息,用于所述第一通信装置根据接收所述第二信息的第四端口,确定与所述第四端口对应的所述第二端口。
在一种可能的实现方式中,所述第二信息还包括第二指示信息,所述第二指示信息用于所述第一通信装置确定与所述第二指示信息对应的所述第二端口。
在一种可能的实现方式中,所述收发单元用于接收所述第一通信装置发送的第一请求,所述第一请求用于请求分配发送资源。
在一种可能的实现方式中,所述方法应用于支持光交换的网络或支持电交换的网络。
在一种可能的实现方式中,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
在一种可能的实现方式中,所述第二通信装置和所述第三通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
第六方面,本申请提供了一种第三通信装置,包括:收发单元和处理单元。其中,所述收发单元,用于向第一通信装置发送第一信息,所述第一信息用于指示第一通信装置早于所述第二数据单元发送所述第一数据单元。
在一种可能的实现方式中,所述第一信息包括用于发送所述第一数据单元的第一时隙,所述第一时隙早于第二通信装置向所述第一通信装置发送的第二信息中的第二时隙。
在一种可能的实现方式中,所述第一信息与所述第二数据单元对应。
在一种可能的实现方式中,所述第一信息,用于所述第一通信装置确定发送所述第一数据单元的第一端口。
在一种可能的实现方式中,所述第一信息,用于所述第一通信装置根据接收所述第一信息的第三端口,确定与所述第三端口对应的所述第一端口。
在一种可能的实现方式中,所述第一信息还包括第一指示信息,所述第一指示信息用于所述第一通信装置确定与所述第一指示信息对应的所述第一端口。
在一种可能的实现方式中,所述收发单元用于接收所述第一通信装置发送的第二请求,所述第二请求用于请求分配发送资源。
在一种可能的实现方式中,所述方法应用于支持光交换的网络或支持电交换的网络。
在一种可能的实现方式中,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
在一种可能的实现方式中,所述第三通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
第七方面,本申请提供了一种通信装置,所述通信装置包括存储器和处理器;所述存储器,用于存储程序代码;所述处理器,用于运行所述程序代码中的指令,使得所述通信装置执行以上任一方面以及任一方面任一可能的实现方式中所述的方法。例如:第七方面所述的通信装置作为第一通信装置执行第一方面所述的方法时,所述处理器执行所述指令,使得所述通信装置用于:获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元;根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
第八方面,本申请提供了一种通信装置,所述通信装置包括通信接口和处理器,所述通信接口用于执行前述任一方面所述的方法以及任一方面的任一可能的实现方式中所涉及的收发操作,所述处理器用于执行以上任一方面所述的方法以及任一方面的任一可能的实现方式中所涉及的除收发操作之外的其它操作。例如,第八方面所述的通信装置作为第一通信装置执行第一方面所述的方法时,所述处理器用于获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;所述处理器还用于获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元。所述通信接口用于根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
第九方面,本申请提供了一种通信系统,该通信系统包括:第一通信装置、第二通信装置和第三通信装置,该第一通信装置可以是第四方面、第七方面或者第八方面任一项所述的通信装置,用于执行前述任一方面以及任一可能的实现方式中由所述第一通信装置所执行的部分或全部操作;所述第二通信装置可以是第五方面、第七方面或者第八方面所述的通信装置,用于执行前述任一方面以及任一可能的实现方式中由所述第二通信装置所执行的部分或全部操作;所述第三通信装置可以是第六方面至第八方面任一项所述的通信装置,用于执行前述任一方面以及任一可能的实现方式中由所述第三通信装置所执行的部分或全部操作。
第十方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在处理器上运行时,使得处理器执行前述任一方面所述的方法以及前述任一方面的任一可能的实现方式中所包括的部分或全部操作。
第十一方面,本申请提供了一种计算机程序产品,所述计算机程序产品包含指令,当其在处理器上运行时,使得处理器执行前述任一方面所述的方法以及前述任一方面的任一可能的实现方式中所包括的部分或全部操作。
第十二方面,本申请提供了一种芯片,包括:存储器、处理器以及计算机程序,所述计算机程序存储在所述存储器中,所述处理器运行所述计算机程序执行前述任一方面所述的方法以及前述任一方面的任一可能的实现方式中所包括的部分或全部操作。
基于实施例提供的方案,所述第一通信装置按序发送所述第一数据单元和所述第二数据单元,降低了网络中数据单元的乱序,那么输出装置接收到所述第一数据单元和所述第二数据单元后,不需要在缓存中保存或者只需在缓存中保存较短时间,降低了输出装置的缓存资源。
附图说明
图1为本申请实施例的一种应用场景示意图;
图2为本申请实施例的另一种应用场景示意图;
图3为本申请实施例的一种发送数据单元方法流程图;
图4为本申请实施例的又一种发送数据单元方法流程图;
图5为本申请实施例的又一种发送数据单元方法流程图;
图6为本申请实施例的一种通信装置的结构示意图;
图7为本申请实施例的另一种通信装置的结构示意图;
图8为本申请实施例的又一种通信装置的结构示意图;
图9为本申请实施例的又一种通信装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。
在描述本申请实施例之前,对本申请所涉及的一些技术术语进行简单说明。
数据单元是在网络中传输的、承载数据的单元。数据单元可以是主机发送的1个报文,也可以是多个报文,还可以是1个报文切割成的信元(cell),或者其他的形式,本申请不对数据单元的形式加以限定。
支持电交换的设备是用电信号转发的网络设备,例如交换机、路由器等设备。
支持光交换的设备是用光信号转发的网络设备,不经过任何光/电转换,在光域直接将输入端口光信号交换到不同的输出端口的设备。
支持光交换的网络:在本申请中,将网络分成接入层和交换层,位于交换层的设备如果是支持光交换的设备,就称网络为支持光交换的网络。
支持电交换的网络:在本申请中,将网络分成接入层和交换层,位于交换层的设备如果是支持电交换的设备,就称网络为支持电交换的网络。
图1示出了本申请实施例的一种应用场景。下面具体介绍图1示出的场景,在图1中,包括:输入层装置,交换层装置,输出层装置以及调度装置。其中,输入层装置,交换层装置,输出层装置具有转发功能,例如可以但不限于包括:交换机或路由器等。输入层装置和输出层装置的功能还可能集成在1个转发装置上,本申请并不对输入层装置和输出层装置是1个装置还是多个装置加以限制。输入层装置根据调度装置分配的时隙,将数据单元输入到交换层装置,例如在数据中心中,输入层装置是机架交换机(top of rack,TOR),在图1中,装置101和装置102是输入层装置。交换层装置从输入层装置接收数据单元,然后将数据单元转发到输出层装置。每个交换层装置还可以连接任意其他数量的交换层装置,即交换平面包括多个相互连接的交换层装置。交换平面分别与输入层装置和输出层装置连接以传输数据单元。例如在数据中心中,交换层装置可以是汇聚(spine)交换机或路由器,还可以是包括上行spine-核心core-下行spine交换机或路由器的交换平面。交换层装置可以是支持光交换的转发装置,也可以是支持电交换的转发装置。在图1中,装置111和装置112是交换层装置。输出层装置接收交换层装置输出的数据单元,在图1中,装置121和装置122是输出层装置。调度装置负责接收输入设备发送的时隙请求信息,为每个时隙请求信息分配许可的时隙,避免交换层装置的流量冲突。调度装置可以通过硬件、软件或者软硬件结合的方式来实现。调度装置例如可以但不限于包括:调度装置、控制器、以及具有分配时隙功能的其他形态的设备。在图1中,装置131和装置132是调度装置。每个调度装置对应一个交换层装置,负责接收通过对应的交换层装置发送数据单元的请求并分配时隙。例如,调度装置装置131与交换层装置111对应,负责接收向装置111发送数据单元的时隙请求信息,并分配时隙。示例性的,图1示出了一种连接方式,其中,输入层装置与交换层装置之间、交换层装置与输出层装置之间、以及输入层装置与调度装置之间通过通信链路全连接,例如装置101分别与装置111,装置112通过通信链路连接。应理解,在本申请中的通信链路不仅包括有线链路,还包括无线链路。在图1中,仅示例性的示出了2个输入层装置,2个交换层装置,2个输出层装置,以及2个调度装置,该网络可以包括任意其他数量的输入层装置,交换层装置,输出层装置,以及调度装置,本申请实施例对此不做限制。
应理解,图1中的输入层装置、交换层装置、输出层装置以及调度装置可以如上所述对应不同的网络设备,例如输入层装置对应TOR,交换层装置对应spine,输出层装置对应TOR,也可以集成在同一个设备中,例如集成在框式路由器中,那么输入层装置例如可以是框式路由器中的线卡,交换层装置例如可以是框式路由器中的网板,输出层装置例如可以是框式路由器中的线卡,调度装置例如可以是框式路由器中的一个具有分配时隙功能的模块,本申请实施例对图1中的各个装置由多个设备实现还是1个设备实现并不做限制。
图2示出了本申请实施例的另一种应用场景,下面具体介绍图2示出的场景,在图2中,包括:输入层装置,交换层装置,输出层装置以及调度装置。其中,输入层装置,交换层装置,输出层装置,以及这三种装置的连接方式与图1所示的场景相同,在此不再赘述。在图2中,存在1个集中调度装置,即装置131,负责接收向所有的交换层装置发送数据单元的时隙请求信息,并分配时隙。在图2中,所有的输入层装置都通过通信链路与集中调度装置连接。应理解,在图2中,仅示例性的示出了2个输入层装置,2个交换层装置以及2个输出层装置,该网络可以包括任意其他数量的输入层装置,交换层装置,输出层装置,本申请实施例对此不做限制。同样的,本申请实施例对图2中的各个装置由多个设备实现还是1个设备实现并不做限制。
下面以图1示出的场景中,传输2个数据单元为例,介绍一种传统的发送数据单元的方法。装置101上有2个向装置121发送的待发送数据单元,分别为data1、data2,data2位于data1之后,装置101通过负载均衡算法分别为2个数据单元确定了不同的出端口,其中,data1的出端口是端口1,将data1保存到端口1对应的缓存中,并向对应的调度装置,即装置131发送时隙请求(request,req)信息req1,data2的出端口是端口2,将data1保存到端口2对应的缓存中,并向对应的调度装置,即装置132发送时隙请求信息req2。装置131为req1分配的时隙(timeslot,slot)是slot2,装置132为req2分配的时隙是slot1。装置101按照对应的时隙发送数据单元,即在slot1发送data2,在slot2发送data1,也就是说,装置101乱序发送2个数据单元,装置121在slot1接收data2之后,需要保存到缓存中,直到在slot2接收data1,才能将data1、data2按序发送给目的主机。
可以看出,在传统的发送数据单元的方法中,由于调度装置之间并不互相协商时隙如何分配,输入层装置收到的时隙许可信息中的许可时隙和数据单元的顺序可能不一致,导致输入层装置乱序发送数据单元,输出层装置收到数据单元后,需要将乱序的数据单元存储下来,等到乱序数据单元的前序数据单元到达之后再依次发送,大量消耗了输出设备的缓存资源。
有鉴于此,为了解决上述技术问题,本申请实施例提供了一种发送数据单元的方法300,如图3所示,方法300可以应用于图1-图2所示的场景中,下面仍以图1的场景为例,介绍方法300。其中,图3所示的输入层装置例如可以是图1中的装置101,图3所示的输出层装置例如可以是图1中的装置121,图3所示的交换层装置1例如可以是图1中的装置111,图3所示的交换层装置2例如可以是图1中的装置112,图3所示的调度装置1例如可以是图1中的装置131,图3所示的调度装置2例如可以是图1中的装置132。所述方法300包括S301-S309。
S301、输入层装置获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后。
输入层装置有以下2种方式获得所述第一数据单元和所述第二数据单元。
方式1:输入层装置接收1个或多个第一报文,所述1个或多个第一报文作为所述第一数据单元。输入层装置接收1个或多个第二报文,所述1个或多个第二报文作为所述第二数据单元。所述第二数据单元的获取时刻晚于所述第一数据单元的获取时刻。
方式2:输入层装置接收第一报文,将第一报文切割成信元,获得所述第一数据单元和所述第二数据单元。所述第二数据单元在所述第一报文中的排序位于所述第一数据单元在所述第一报文中的排序之后。
在一个具体的实现方式中,所述输入层装置将所述第一数据单元和第二数据单元保存在上行缓存、集中缓存或者外挂的缓存中。所述输入层装置在接收调度装置发送的时隙后,从上述缓存中获取所述第一数据单元和所述第二数据单元。
S302、输入层装置向调度装置1发送第一请求,输入层装置向调度装置2发送第二请求,所述第一请求和所述第二请求均用于请求分配时隙。
其中,所述第一请求与第一数据单元对应,所述第二请求与第二数据单元对应。
在一个具体的实现方式中,输入层装置有以下2种方式确定所述第一请求和所述第二请求的出端口。
方式1、输入层装置确定发送第一请求和第二请求的出端口,然后通过对应的出端口,向调度装置1发送第一请求,向调度装置2发送第二请求。
输入层装置使用负载均衡算法确定发送第一请求和第二请求的出端口。所述负载均衡算法可以为轮询算法,输入层装置根据轮询策略,确定所述出端口。当然,本实施例不对负载均衡算法加以限定,除以上方法外,也可以采用其他可行的方式实现负载均衡。本申请实施例并不限定使用负载均衡方法确定发送第一请求和第二请求的出端口,输入层装置也可以使用其他可行的方式确定发送第一请求和第二请求的出端口。
方式2、输入层装置首先确定与第一数据单元和第二数据单元对应的连接交换层装置端口,然后根据所述端口确定发送第一请求和第二请求的出端口。
输入层装置上保存有连接交换层装置的端口与连接调度装置的端口的对应关系,所述对应关系的具体实现形式可以是对应关系表,也可以是配置的指令,本申请并不对此加以限定,输入层装置首先通过负载均衡算法确定与第一数据单元和第二数据单元对应的连接交换层装置的端口,所述负载均衡算法可以为哈希算法,将数据单元的信息,例如五元组(源互联网协议(Internet Protocol,IP)地址,目的IP地址,源端口号,目的端口号,协议类型),通过哈希函数的映射确定与所述数据单元对应的连接交换层装置出端口。然后通过所述对应关系,确定对应的连接调度装置的端口作为发送请求的出端口。所述负载均衡算法还可以参考方式1的相关描述,此处不再赘述,本申请实施例并不限定使用负载均衡方法确定与第一数据单元和第二数据单元对应的连接交换层装置的端口,输入层也可以使用其他可行的方式确定与第一数据单元和第二数据单元对应的连接交换层装置的端口。
在一个具体的实现方式中,第一请求和第二请求可以承载在报文中发送,也可以是一种指令,本申请并不对第一请求和第二请求的发送方式加以限定。
在一个具体的实现方式中,以第一请求为例,第一请求中至少但不限于包括如下信息:请求的数据量和输出层装置的信息。其中,当请求的数据量大于交换层装置1一个时隙的传输能力时,调度装置1会针对1个第一请求回复多个第二信息,每个第二信息中包括1个时隙,允许发送不超过一个时隙的传输能力的数据量。当请求的数据量小于或等于交换层装置1一个时隙的传输能力时,调度装置1会回复1个第二信息,那么,如果输入层装置后续收到发往同一个目的输出层装置的数据单元,可以利用此第二信息中的时隙,将两个数据单元一起发送。输出层装置的信息与输出层装置一一对应,用于调度装置1根据所述输出层装置的信息,汇总所有发送给所述输出层装置的请求,然后分配时隙。第二请求包括的信息可以参考第一请求的相关描述,此处不再赘述。
S303、调度装置2接收第二请求,向输入层装置发送第一信息。
其中,调度装置2接收第二请求,所述第二请求与第二数据单元对应,调度装置2根据第二请求向输入层装置发送第一信息,第一信息也与第二数据单元对应。
在一个具体的实现中,第一信息可以承载在报文中发送,也可以是一种指令,本申请并不对第一信息的发送方式加以限定。
在一个具体的实现中,第一信息中包括第一时隙、以及输出层装置信息,其中,输出层装置信息与第二请求中的输出层装置信息相同,用于输入层装置根据所述输出层装置信息,确定发送给对应的输出层装置的第一数据单元。
可选地,第一信息包括许可数据量,并且许可数据量大于1个时隙交换层装置2可以传输的数据量,所述许可数据量指示输入层装置在第一时隙可以连续发送许可数据量的数据。
S304、调度装置1接收第一请求,向输入层装置发送第二信息。
其中,调度装置1接收第一请求,所述第一请求与第一数据单元对应,调度装置1根据第一请求向输入层装置发送第二信息,第二信息也与第一数据单元对应。
S304的具体实现方式可以参考S303的相关描述,所述第二信息中包括的第二时隙晚于所述第一信息中包括的第一时隙。
对于S303和S304,调度装置2基于第二请求分配的第一信息所包括的时隙早于调度装置1基于第一请求分配的第二信息所包括的时隙。在传统的方法中,基于请求分配的时隙是用来对请求对应的数据单元进行发送的,因此才会出现数据单元乱序的问题。本申请提供的实施例中,即便基于不同的数据单元向相应的调度装置进行了时隙请求,本申请实施例的输入层装置会根据所请求的时隙的先后顺序和数据单元的顺序,优先发送排序靠前的数据单元。
S305、输入层装置接收第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元。
在一个具体的实现方式中,输入层装置接收第一信息和第二信息,输入层装置根据第一信息和第二信息中携带的输出层信息相同,确定第一信息和第二信息对应发往相同输出层装置的第一数据单元和第二数据单元,由于第一信息中的第一时隙早于第二信息中的第二时隙,输入层装置根据第一信息确定先于所述第二数据单元发送所述第一数据单元,输入层装置根据第二信息确定晚于所述第一数据单元发送所述第二数据单元。
S306、输入层装置根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
在一个具体的实现中,输入层装置有以下2种方式确定发送数据单元的端口。
方式1、输入层装置根据接收第一信息的第三端口,确定与所述第三端口对应的所述第一端口。
输入层装置上保存有连接交换层装置的端口与连接调度装置的端口的对应关系,所述对应关系的具体实现形式可以是对应关系表,也可以是配置的指令,本申请并不对此加以限定,输入层装置根据接收第一信息的第三端口和上述对应关系,确定对应的连接交换层装置2的端口作为发送第一数据单元的第一端口。输入层装置根据接收所述第二信息的第四端口,确定与所述第四端口对应的所述第二端口的实现可以参考上述过程。
方式2、第一信息包括对应的交换层装置信息,输入层装置根据所述交换层装置信息,确定与所述交换层装置对应的所述第一端口。
输入层装置接收第一信息之后,根据所述第一信息携带的交换层装置2信息,确定连接所述交换层装置2的端口作为发送第一数据单元的第一端口,输入层装置根据第二信息确定发送第二数据单元的第二端口的实现可以参考上述过程。
可选地,第一信息包括许可数据量,并且许可数据量大于1个时隙交换层装置2可以传输的数据量,输入层装置在发送所述第一数据单元之后,还可以继续通过所述第一端口,发送其他的待发送数据单元,其中,其他的待发送数据单元的目的输出层装置与根据所述第一信息携带的输出层装置的标识确定的输出层装置相同,并且其他的待发送数据单元承载的数据量小于许可的数据量。当第二信息包括许可数据量,并且许可数据量大于1个时隙交换装置3可以传输的数据量时,输入层装置的实现可以参考上述过程。
S307、交换层装置1接收并转发第二数据单元。
交换层装置1接收输入层装置发送的第二数据单元,根据上述介绍可知,第二数据单元按照调度装置1分配的第二时隙发送,所以在交换层装置1上,对于同一个输出端口,不会存在冲突。S308、交换层装置2接收并转发第一数据单元。
S308的具体实现可以参考S307的相关描述。
S309、输出层装置在第一时隙接收第一数据单元,在第二时隙接收第二数据单元,将第一数据单元和第二数据单元发送给目的主机。
在一个具体的实现中,输出层装置在第一时隙接收第一数据单元,根据第一数据单元中携带的序列号标识判断是按照顺序到达的数据单元,输出层装置将第一数据单元直接发送给目的主机,输出层装置在第二时隙接收第二数据单元,根据第二数据单元中携带的序列号标识判断是按照顺序到达的数据单元,输出层装置将第二数据单元直接发送给目的主机。
在如上所述的方法300所描述的发送数据单元的方法中,输入层装置获得第一信息和第二信息,第一信息中的第一时隙早于第二信息中的第二时隙,输入层装置根据第一信息发送顺序在前的第一数据单元,根据第二信息,发送顺序在后的第二数据单元,也就是说,输入层装置顺序发送第一数据单元和第二数据单元,输出层装置接收到第一数据单元和第二数据单元后,不需要在缓存中保存数据单元或者只需要在缓存中保存较短的时间,降低了输出层装置的缓存资源。
以上描述了本申请提供的一种发送数据单元的方法300,下面结合图4,对本申请提供的一种发送数据单元的方法400进行描述。所述方法400可以应用到图1-图2所示的场景中,当方法400应用于图1所示的场景中时,方法400中的第一通信装置对应图1中的输入层装置,例如装置101,方法400中的第二通信装置对应图1中的调度装置,例如装置131,方法400中的第三通信装置对应图1中的调度装置,例如装置132。所述方法400具体可以用于实现所述方法300,当方法400用于实现方法300时,第一通信装置相当于方法300中的输入层装置,第二通信装置相当于方法300中的调度装置1,第三通信装置相当于方法300中的调度装置2。方法400包括S401-S403。
S401、第一通信装置获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后。
S401的实现方式可以参考S301的相关描述,此处不再赘述。
S402、所述第一通信装置获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元。
所述第一通信装置有以下2种方式获得第一信息和第二信息。
方式1、所述第一通信装置接收第二通信装置发送的第二信息,接收第三通信装置发送的第一信息。
此方式的具体实现可以参考S305的相关描述。
可选地,所述第一通信装置接收第二通信装置发送的所述第二信息之前,向第二通信装置发送第一请求,所述第一请求用于请求分配发送资源,所述第一通信装置接收第三通信装置发送的所述第一信息之前,向第三通信装置发送第二请求,所述第二请求用于请求分配发送资源。所述发送资源可以是时隙,所述第一通信装置根据所述时隙发送数据单元,此时,此可选步骤的具体实现可以参考S302的相关描述,应理解,所述发送资源还可以是与发送顺序相关的其他资源,例如,发送数据单元的许可,又例如,带宽资源,本申请实施例并不对发送资源的形式进行限制。
方式2、所述第一通信装置是分配时隙的装置,即第一通信装置集成了第二通信装置和第三通信装置分配时隙的功能,那么第一通信装置可以获得本装置分配的第一信息和第二信息。
应理解,还有其他可行的实现方式获取第一信息和第二信息,本申请实施例并不对所述第一通信装置获取第一信息和第二信息的方式进行限制。
S403、所述第一通信装置根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
此方式的具体实现可以参考S306的相关描述,此处不再赘述。
如上所述的方法400所描述的发送数据单元方法中,输入层装置获得第一信息和第二信息,第一信息中的第一时隙早于第二信息中的第二时隙,输入层装置根据第一信息发送顺序在前的第一数据单元,根据第二信息,发送顺序在后的第二数据单元,也就是说,输入层装置顺序发送第一数据单元和第二数据单元,输出层装置接收到第一数据单元和第二数据单元后,不需要在缓存中保存数据单元或者只需要在缓存中保存较短的时间,降低了输出层装置的缓存资源。
下面结合图5,对本申请提供的一种发送数据单元的方法500进行描述。所述方法500可以应用到图1-图2所示的场景中,当方法500应用于图1所示的场景中时,方法500中的第一通信装置对应图1中的输入层装置,例如装置101,方法500中的第二通信装置对应图1中的调度装置,例如装置131或装置132。所述方法500具体可以用于实现所述方法300,当方法500用于实现方法300时,第一通信装置相当于方法300中的输入层装置,第二通信装置相当于方法300中的调度装置1或调度装置2。方法500包括S501-S502。
S501、第二通信装置接收第一通信装置发送的第一请求,所述第一请求用于请求分配发送资源。
其中,发送资源指时隙,第一通信装置发送第一请求,请求第二通信装置分配时隙,然后,第一通信装置按照分配的时隙,发送对应的数据单元。
S501的具体实现方式可以参考S302的相关描述,当第二通信装置对应调度装置1时,所述第一请求对应S302中的第一请求,当第二通信装置对应调度装置2时,所述第一请求对应S302中的第二请求。
S502、第二通信装置向第一通信装置发送第二信息,所述第二信息用于指示第一通信装置发送第二数据单元。
S502中的第二通信装置对应调度装置1时,具体实现方式可以参考S304的相关描述,此处不再赘述。
S502中的第二通信装置对应调度装置2时,具体实现方式可以参考S303的相关描述,此处不再赘述。
当第一请求中的请求的数据量大于交换层装置一个时隙的传输能力时,第二通信装置会针对1个第一请求回复多个第二信息,每个第二信息中包括1个时隙,允许发送不超过一个时隙的传输能力的数据量,也就是说,S501是一个可选的步骤。当请求的数据量小于或等于交换层装置一个时隙的传输能力时,第二通信装置针对每个第一请求都会回复1个第二信息,此时,S501是一个必选的步骤。
此外,本申请实施例还提供了一种通信装置600,参见图6所示。图6是本申请实施例的通信装置600的结构示意图。图6所示的通信装置600包括收发单元601、处理单元602。该通信装置600可以用于执行以上实施例中的方法300、方法400或方法500。
在一个示例中,所述通信装置600可以执行以上实施例中的方法300,当通信装置600用于执行以上实施例中的方法300时,通信装置600相当于方法300中的输入层装置。通信装置600可以应用于图1-图2所示的应用场景中,例如可以是图1所示场景中的装置101。所述收发单元601用于执行方法300中由输入层装置执行的收发操作。所述处理单元602,用于执行方法300中由输入层装置执行的除收发操作之外的操作。例如,所述收发单元601用于向调度装置1发送第一请求。所述收发单元601还用于向调度装置2发送第二请求。所述收发单元601还用于接收第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元。所述收发单元601还用于根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元所述处理单元602用于将第一报文切割成信元,获得所述第一数据单元和所述第二数据单元。
在一个示例中,所述通信装置600可以执行以上实施例中的方法300,当通信装置600用于执行以上实施例中的方法300时,通信装置600相当于方法300中的调度装置1。通信装置600可以应用于图1-图2所示的应用场景中,例如可以是图1所示场景中的装置131。所述收发单元601用于执行方法300中由调度装置1执行的收发操作。所述处理单元602,用于执行方法300中由调度装置1执行的除收发操作之外的操作。例如,所述收发单元601用于调度装置1接收第一请求,还用于发送第二信息。所述处理单元602用于获得第二信息中的第二时隙。
在一个示例中,所述通信装置600可以执行以上实施例中的方法400,当通信装置600用于执行以上实施例中的方法400时,通信装置600相当于方法400中的第一通信装置。通信装置600可以应用于图1-图2所示的应用场景中,例如可以是图1所示场景中的装置101。所述收发单元601用于执行方法300中由第一通信装置执行的收发操作。所述处理单元602,用于执行方法300中由第一通信装置执行的除收发操作之外的操作。例如,所述收发单元601用于接收第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元。所述收发单元601还用于根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。所述处理单元602用于获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后。
在一个示例中,所述通信装置600可以执行以上实施例中的方法500,当通信装置600用于执行以上实施例中的方法500时,通信装置600相当于方法500中的第二通信装置。通信装置600可以应用于图1-图2所示的应用场景中,例如可以是图1所示场景中的装置131。所述收发单元601用于执行方法500中由第二通信装置执行的收发操作。所述处理单元602,用于执行方法500中由第二通信装置执行的除收发操作之外的操作。例如,所述收发单元601用于接收第一通信装置发送的请求,所述请求用于请求分配发送资源。所述收发单元601还用于向第一通信装置发送信息,所述信息用于指示第一通信装置发送对应的数据单元。
需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。本申请实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。例如,上述实施例中,收发单元601和处理单元602可以是同一个单元,也可以是不同的单元。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
此外,本申请实施例还提供了一种通信装置700,参见图7所示,图7是本申请实施例的通信装置700的结构示意图。该通信装置700包括通信接口701和与通信接口701连接的处理器702。通信接口例如为收发器一类的装置。该通信装置700可以用于执行以上实施例中的方法300、方法400或方法500。具体来说,该通信装置700可以作为输入层装置执行方法300中由输入层装置执行的操作,通信装置700可以作为调度装置执行方法300中由调度装置1或调度装置2执行的操作。其中,通信接口701用于执行方法300中由所述输入层装置、调度装置1或调度装置2所执行的收发操作。处理器702用于执行方法300中由所述输入层装置、调度装置1或调度装置2所执行的收发操作以外的操作。通信装置700可以作为第一通信装置执行方法400中由第一通信装置执行的操作,通信装置700可以作为第二通信装置执行方法500中由第二通信装置执行的操作。其中,通信接口701用于执行方法400中由所述第一通信装置或方法500中由第二通信装置所执行的收发操作。处理器702用于执行方法400中由所述第一通信装置或方法500中由第二通信装置所执行的收发操作以外的操作。例如,当通信装置700作为第一通信装置执行方法400时,通信接口701用于根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。所述处理器702用于获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元。
此外,本申请实施例还提供了一种通信装置800,参见图8所示,图8为本申请实施例提供的一种通信装置的结构示意图。如图8所示,通信装置800可以包括处理器810,与所述处理器810耦合连接的存储器820,收发器830。收发器830例如可以是通信接口,光模块等。处理器810可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。处理器还可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic,缩写:GAL)或其任意组合。处理器810可以是指一个处理器,也可以包括多个处理器。存储器820可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器820还可以包括上述种类的存储器的组合。存储器820可以是指一个存储器,也可以包括多个存储器。在一个实施方式中,存储器820中存储有计算机可读指令,所述计算机可读指令包括多个软件模块,例如发送模块821,处理模块822和接收模块823。处理器810执行各个软件模块后可以按照各个软件模块的指示进行相应的操作。在本实施例中,一个软件模块所执行的操作实际上是指处理器810根据所述软件模块的指示而执行的操作。可选地,处理器810也可以存储执行本申请方案的程序代码或指令,在这种情况下处理器810不需要到存储器820中读取程序代码或指令。
该通信装置800可以用于执行以上实施例中的方法300、方法400或方法500。具体来说,该通信装置800可以作为输入层装置执行方法300中由输入层装置执行的操作,通信装置800可以作为调度装置执行方法300中由调度装置1或调度装置2执行的操作。通信装置800可以作为第一通信装置执行方法400中由第一通信装置执行的操作,通信装置800可以作为第二通信装置执行方法500中由第二通信装置执行的操作。例如,当通信装置800作为第一通信装置执行方法400时,所述处理器810用于执行所述存储器820中的相关指令,使得通信装置800用于:获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元;根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
此外,本申请实施例还提供了一种通信装置900,参见图9所示,图9是本申请实施例提供的一种通信装置900的结构示意图,通信装置900可以集成前述实施例中第一通信装置、第二通信装置、第三通信装置的功能,或方法300中输入层装置、调度装置1、调度装置2、交换层装置1、交换层装置2、输出层装置的功能。
通信装置900包括:主控板910和接口板930。
主控板910也称为主处理单元(main processing unit,MPU)或路由处理卡(routeprocessor card),主控板910对通信装置900中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板910包括:中央处理器911和存储器912。
接口板930也称为线路接口单元卡(line processing unit,LPU)、线卡(linecard)或业务板。接口板930用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(Packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(Flexible Ethernet Clients,FlexE Clients)。接口板930包括:中央处理器931、网络处理器932、转发表项存储器934和物理接口卡(ph8sical interface card,PIC)933。
接口板930上的中央处理器931用于对接口板930进行控制管理并与主控板910上的中央处理器911进行通信。
网络处理器932用于实现报文的转发处理。网络处理器932的形态可以是转发芯片。具体而言,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。
物理接口卡933用于实现物理层的对接功能,原始的流量由此进入接口板930,以及处理后的报文从该物理接口卡933发出。物理接口卡933包括至少一个物理接口,物理接口也称物理口,物理接口卡933对应于系统架构200中的FlexE物理接口204。物理接口卡933也称为子卡,可安装在接口板930上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器932处理。在一些实施例中,接口板903的中央处理器931也可执行网络处理器932的功能,比如基于通用CPU实现软件转发,从而物理接口卡933中不需要网络处理器932。
可选地,通信装置900包括多个接口板,例如通信装置900还包括接口板940,接口板940包括:中央处理器941、网络处理器942、转发表项存储器944和物理接口卡943。
可选地,通信装置900还包括交换网板920。交换网板920也可以称为交换网板单元(switch fabric unit,SFU)。在通信装置有多个接口板930的情况下,交换网板920用于完成各接口板之间的数据交换。例如,接口板930和接口板940之间可以通过交换网板920通信。
主控板910和接口板930耦合。例如。主控板910、接口板930和接口板940,以及交换网板920之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板910和接口板930之间建立进程间通信协议(inter-process communication,IPC)通道,主控板910和接口板930之间通过IPC通道进行通信。
在逻辑上,通信装置900包括控制面和转发面,控制面包括主控板910和中央处理器931,转发面包括执行转发的各个组件,比如转发表项存储器934、物理接口卡933和网络处理器932。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器932基于控制面下发的转发表对物理接口卡933收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器934中。在一些实施例中,控制面和转发面可以完全分离,不在同一设备上。
通信装置900中,接口板,例如接口板930集成了第一通信装置的功能,中央处理器931用于获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元。。网络处理器932用于触发物理接口卡933根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
主控板910集成了第二通信装置的功能,中央处理器911用于接收第一通信装置发送的请求,所述请求用于请求分配发送资源,并向第一通信装置发送信息,所述信息用于指示第一通信装置发送对应的数据单元。
应理解,本申请实施例中接口板940上的操作与接口板930的操作一致,为了简洁,不再赘述。应理解,本实施例的通信装置900可对应于上述各个方法实施例中的第一通信装置或第二通信装置,该通信装置900中的主控板910、接口板930和/或接口板940可以实现上述各个方法实施例中的第一通信装置或第二通信装置所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
应理解,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,通信装置的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,通信装置可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,通信装置可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的通信装置的数据接入和处理能力要大于集中式架构的设备。可选地,通信装置的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等通信装置)。具体采用哪种架构,取决于具体的组网部署场景。
应理解,上述各种产品形态的通信装置,分别具有上述方法实施例中第一通信装置或第二通信装置的任意功能,此处不再赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在处理器上运行时,使得处理器执行前述实施例中任一实施例所述的方法(例如,方法300、方法400或方法500)中任意一个或多个操作。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,当其在处理器上运行时,使得处理器执行前述实施例中任一实施例所述的方法(例如,方法300、方法400或方法500)中任意一个或多个操作。
本申请实施例还提供一种通信系统,包括第一通信装置和第二通信装置,第一通信装置和第二通信装置的结构如图6-图9对应的任一通信装置。上述通信系统用于实现图3-图5对应的实施例中所述的方法300、方法400或方法500中任意一方法中的部分或全部操作。
本申请实施例还提供了另一种通信系统,包括至少一个存储器和至少一个处理器,该至少一个存储器存储有指令,该至少一个处理器执行所述指令,使得所述通信系统实现本申请前述实施例中任一实施例所述的方法300、方法400或方法500中任意一方法中的部分或全部操作。
本申请实施例还提供一种芯片系统,包括处理器和接口电路,接口电路,用于接收指令并传输至处理器;所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现本申请前述实施例中任一实施例所述的方法300、方法400或方法500中任意一个方法中的部分或全部操作。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是FPGA,可以是ASIC,还可以是系统芯片(system onchip,SoC),还可以是CPU,还可以是NP,还可以是数字信号处理电路(digital signalprocessor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑业务划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各业务单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件业务单元的形式实现。
集成的单元如果以软件业务单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的业务可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些业务存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已。
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (30)

1.一种发送数据单元的方法,其特征在于,包括:
第一通信装置获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;
所述第一通信装置获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元;
所述第一通信装置根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
2.如权利要求1所述的方法,其特征在于,所述第一信息包括用于发送所述第一数据单元的第一时隙,所述第二信息包括用于发送所述第二数据单元的第二时隙,所述第一时隙早于所述第二时隙。
3.如权利要求1或2所述的方法,其特征在于,所述第一通信装置获得第一信息和第二信息,包括:
所述第一通信装置接收与所述第一数据单元对应的第二通信装置发送的所述第二信息;
所述第一通信装置接收与所述第二数据单元对应的第三通信装置发送的所述第一信息。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
所述第一通信装置根据所述第一信息,确定用于发送所述第一数据单元的第一端口;
所述第一通信装置根据所述第二信息,确定用于发送所述第二数据单元的第二端口。
5.如权利要求4所述的方法,其特征在于,所述第一通信装置根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元,包括:
所述第一通信装置按序通过所述第一端口和所述第二端口,分别发送所述第一数据单元和所述第二数据单元。
6.如权利要求4或5所述的方法,其特征在于,所述第一通信装置根据所述第一信息,确定用于发送所述第一数据单元的第一端口,包括:
所述第一通信装置根据接收所述第一信息的第三端口,确定与所述第三端口对应的所述第一端口。
7.如权利要求4或5所述的方法,其特征在于,所述第一通信装置根据所述第二信息,确定用于发送所述第二数据单元的第二端口,包括:
所述第一通信装置根据接收所述第二信息的第四端口,确定与所述第四端口对应的所述第二端口。
8.如权利要求4或5所述的方法,其特征在于,所述第一信息还包括第一指示信息,所述第一通信装置根据所述第一信息,确定用于发送所述第一数据单元的第一端口,包括:
所述第一通信装置根据所述第一指示信息,确定与所述第一指示信息对应的所述第一端口。
9.如权利要求4或5所述的方法,其特征在于,所述第二信息还包括第二指示信息,所述第一通信装置根据所述第二信息,确定用于发送所述第二数据单元的第二端口,包括:
所述第一通信装置根据所述第二指示信息,确定与所述第二指示信息对应的所述第二端口。
10.如权利要求3所述的方法,其特征在于,所述方法还包括:
所述第一通信装置向第二通信装置发送第一请求,所述第一请求用于请求分配发送资源;
所述第一通信装置向第三通信装置发送第二请求,所述第二请求用于请求分配发送资源。
11.如权利要求3至10任一所述的方法,其特征在于,所述第二通信装置和所述第三通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
12.如权利要求1至11任一所述的方法,其特征在于,所述方法应用于支持光交换的网络或支持电交换的网络。
13.如权利要求1至12任一所述的方法,其特征在于,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
14.一种第一通信装置,其特征在于,包括收发单元和处理单元,其中,
所述处理单元,用于获得第一数据单元和第二数据单元,所述第二数据单元位于所述第一数据单元之后;
所述处理单元,还用于获得第一信息和第二信息,所述第一信息用于指示先于所述第二数据单元发送所述第一数据单元,所述第二信息用于指示晚于所述第一数据单元发送所述第二数据单元;
所述收发单元,用于根据所述第一信息和所述第二信息,按序发送所述第一数据单元和所述第二数据单元。
15.如权利要求14所述的第一通信装置,其特征在于,所述第一信息包括用于发送所述第一数据单元的第一时隙,所述第二信息包括用于发送所述第二数据单元的第二时隙,所述第一时隙早于所述第二时隙。
16.如权利要求14或15所述的第一通信装置,其特征在于,所述收发单元用于:
接收与所述第一数据单元对应的第二通信装置发送的所述第二信息;
接收与所述第二数据单元对应的第三通信装置发送的所述第一信息。
17.如权利要求16所述的第一通信装置,其特征在于,所述处理单元还用于:
根据所述第一信息,确定用于发送所述第一数据单元的第一端口;
根据所述第二信息,确定用于发送所述第二数据单元的第二端口。
18.如权利要求17所述的第一通信装置,其特征在于,所述收发单元还用于按序通过所述第一端口和所述第二端口,分别发送所述第一数据单元和所述第二数据单元。
19.如权利要求17或18所述的第一通信装置,其特征在于,所述处理单元用于根据接收所述第一信息的第三端口,确定与所述第三端口对应的所述第一端口。
20.如权利要求17或18所述的第一通信装置,其特征在于,所述处理单元用于根据接收所述第二信息的第四端口,确定与所述第四端口对应的所述第二端口。
21.如权利要求17或18所述的第一通信装置,其特征在于,所述第一信息还包括第一指示信息,所述处理单元用于根据所述第一指示信息,确定与所述第一指示信息对应的所述第一端口。
22.如权利要求17或18所述的第一通信装置,其特征在于,所述第二信息还包括第二指示信息,所述处理单元用于根据所述第二指示信息,确定与所述第二指示信息对应的所述第二端口。
23.如权利要求16所述的第一通信装置,其特征在于,所述收发单元还用于:
向第二通信装置发送第一请求,所述第一请求用于请求分配发送资源;
向第三通信装置发送第二请求,所述第二请求用于请求分配发送资源。
24.如权利要求16至23所述的方法,其特征在于,所述第二通信装置和所述第三通信装置是具有调度能力的设备或支持电交换的框式设备中的调度模块。
25.如权利要求14至24任一所述的第一通信装置,其特征在于,所述第一通信装置应用于支持光交换的网络或支持电交换的网络。
26.如权利要求14至25任一所述的第一通信装置,其特征在于,所述第一通信装置是支持电交换的设备或支持电交换的框式设备中的线卡。
27.一种第一通信装置,其特征在于,包括:
存储器,该存储器包括计算机可读指令;
与该存储器相连的处理器,所述计算机可读指令被所述处理器执行时,使得所述第一通信装置执行权利要求1至13任一所述的方法。
28.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当该指令在处理器上运行时,使得所述处理器执行权利要求1至13中任一所述的方法。
29.一种包含指令的计算机程序产品,当其在处理器上运行时,使得处理器执行权利要求1至13任一所述的方法。
30.一种芯片,其特征在于,包括:存储器、处理器以及计算机程序,所述计算机程序存储在所述存储器中,所述处理器运行所述计算机程序执行如权利要求1至13任一所述的方法。
CN202210074452.9A 2022-01-21 2022-01-21 一种发送数据单元的方法、装置及系统 Pending CN116506360A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210074452.9A CN116506360A (zh) 2022-01-21 2022-01-21 一种发送数据单元的方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210074452.9A CN116506360A (zh) 2022-01-21 2022-01-21 一种发送数据单元的方法、装置及系统

Publications (1)

Publication Number Publication Date
CN116506360A true CN116506360A (zh) 2023-07-28

Family

ID=87325436

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210074452.9A Pending CN116506360A (zh) 2022-01-21 2022-01-21 一种发送数据单元的方法、装置及系统

Country Status (1)

Country Link
CN (1) CN116506360A (zh)

Similar Documents

Publication Publication Date Title
JP6841918B2 (ja) フレキシブルイーサネットに基づいてサービスフローを送信するための方法および装置、ならびに通信システム
CN102016804B (zh) 数据处理布置
US10476697B2 (en) Network-on-chip, data transmission method, and first switching node
US20120188873A1 (en) Communication system, communication method, receiving apparatus, and transmitting apparatus
US8553708B2 (en) Bandwith allocation method and routing device
CN111107586B (zh) 一种bbu前传数据的处理方法及系统
CN112953803B (zh) 机载冗余网络数据传输方法
WO2021189994A1 (zh) 基于FlexE传输业务流的方法及设备
EP3522463A1 (en) Method and software-defined networking (sdn) controller for providing multicast service
CN111371694B (zh) 一种分流方法、装置和系统、处理设备和存储介质
US11799576B2 (en) Data sending method and apparatus, and FlexE switching system
US20240022501A1 (en) Data Packet Sending Method and Device
CN114157600A (zh) 一种转发报文的方法、设备和系统
WO2008106879A1 (fr) Procédé et dispositif de traitement de transfert de données
KR20170015000A (ko) 온칩 네트워크 및 이의 통신방법
CN112073319B (zh) 一种路径切换方法及系统
CN116506360A (zh) 一种发送数据单元的方法、装置及系统
CN107995315B (zh) 业务板间信息的同步方法、装置、存储介质及计算机设备
CN114827781B (zh) 网络协同方法、装置、设备及存储介质
CN116962161A (zh) 路径检测方法、装置、系统及计算机可读存储介质
CN112804166B (zh) 一种报文收发方法、装置及存储介质
Guo et al. Experimental Demonstration of SDN-enabled Reconfigurable Disaggregated Data Center Infrastructure
CN111400238B (zh) 一种数据处理方法及装置
CN109150747B (zh) 一种变更业务带宽的方法、装置及计算机可读存储介质
CN101060487B (zh) 一种数据转发系统和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication