CN109862044B - 一种转换装置、网络设备及数据传输方法 - Google Patents

一种转换装置、网络设备及数据传输方法 Download PDF

Info

Publication number
CN109862044B
CN109862044B CN201910251463.8A CN201910251463A CN109862044B CN 109862044 B CN109862044 B CN 109862044B CN 201910251463 A CN201910251463 A CN 201910251463A CN 109862044 B CN109862044 B CN 109862044B
Authority
CN
China
Prior art keywords
data
interface
main control
control board
type
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.)
Active
Application number
CN201910251463.8A
Other languages
English (en)
Other versions
CN109862044A (zh
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.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201910251463.8A priority Critical patent/CN109862044B/zh
Publication of CN109862044A publication Critical patent/CN109862044A/zh
Priority to PCT/CN2020/081750 priority patent/WO2020200113A1/zh
Application granted granted Critical
Publication of CN109862044B publication Critical patent/CN109862044B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)

Abstract

本申请提供一种转换装置、网络设备及数据传输方法,转换装置包括:报文处理单元、判定单元、循环计数器、连续读操作单元。报文处理单元,用于接收第一数据报文,从第一数据报文中获取决策参数,将决策参数输出给判定单元;判定单元,用于当决策参数为第一决策参数时,向连续读操作单元输出第一命令;循环计数器,用于存储数据读取次数N;连续读操作单元,用于在接收到第一命令后,从循环计数器中读取数据读取次数N,并向接口板发送N个读操作命令,以使接口板返回N个数据;报文处理单元,用于获取所述N个数据的数据信息,将数据信息封装成第二数据报文,将第二数据报文发送给主控板。通过本申请的技术方案,节约主控板资源。

Description

一种转换装置、网络设备及数据传输方法
技术领域
本申请涉及通信领域,尤其是一种转换装置、网络设备及数据传输方法。
背景技术
网络设备(如路由器、交换机、防火墙等)包括主控板和接口板,主控板可以包括PCI-E(Peripheral Component Interconnect Express,外设部件互连标准快速)接口,接口板也可以包括PCI-E接口,基于此,主控板可以通过PCI-E总线与接口板连接,也就是说,该PCI-E总线的两侧均为PCI-E接口。
在某些应用场景下,接口板不具有PCI-E接口,而是具有低速接口(如本地总线接口),为了使主控板与接口板交互,则需要在主控板与接口板之间部署转换装置,该转换装置具有PCI-E接口和低速接口,主控板通过PCI-E总线与转换装置连接,接口板通过低速总线(如本地总线)与转换装置连接。
在上述应用场景下,为了从接口板读取数据1-数据10,则主控板向转换装置发送读取命令,由转换装置从接口板读取数据1,将数据1返回给主控板。主控板在获取到数据1后,向转换装置发送读取命令,由转换装置从接口板读取数据2,将数据2返回给主控板,以此类推,直到成功读取数据1-数据10。
上述数据读取操作需要耗费较长的时间,在这段时间内,主控板始终被占用,主控板无法处理其它任务,即其它任务只能等待,浪费了主控板的资源。
发明内容
本申请提供一种转换装置,所述转换装置应用于网络设备,所述网络设备还包括主控板和接口板,所述转换装置通过第一类接口与所述主控板连接,所述转换装置通过第二类接口与所述接口板连接,其中:所述转换装置包括:报文处理单元、判定单元、循环计数器、连续读操作单元;
所述报文处理单元,用于接收来自所述主控板的第一数据报文,从所述第一数据报文中获取决策参数,并将所述决策参数输出给判定单元;
所述判定单元,用于当所述决策参数为第一决策参数时,向连续读操作单元输出第一命令;
所述循环计数器,用于存储数据读取次数N,N为大于1的正整数;
所述连续读操作单元,用于在接收到所述第一命令后,从所述循环计数器中读取所述数据读取次数N,并向所述接口板发送N个读操作命令,以使所述接口板根据所述N个读操作命令返回N个数据;
所述报文处理单元,用于获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
本申请提供一种网络设备,所述网络设备包括主控板、接口板和转换装置,其特征在于,所述转换装置通过第一类接口与所述主控板连接,所述转换装置通过第二类接口与所述接口板连接;其中:
所述主控板,用于向所述转换装置发送第一数据报文;
所述转换装置,用于在接收到所述第一数据报文后,从所述第一数据报文中获取决策参数;当所述决策参数为第一决策参数时,则获取数据读取次数N,N为大于1的正整数,并向所述接口板发送N个读操作命令;
所述接口板,用于在接收到所述N个读操作命令后,返回N个数据;
所述转换装置,还用于获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
本申请提供一种数据传输方法,应用于网络设备,所述网络设备包括主控板、接口板和转换装置,其特征在于,所述转换装置通过第一类接口与主控板连接,所述转换装置通过第二类接口与接口板连接,所述方法包括:
所述转换装置接收来自所述主控板的第一数据报文,并从所述第一数据报文中获取决策参数;
当所述决策参数为第一决策参数时,所述转换装置获取数据读取次数N,N为大于1的正整数,并向所述接口板发送N个读操作命令,以使所述接口板根据所述N个读操作命令返回N个数据;
所述转换装置获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
基于上述技术方案,本申请实施例中,转换装置可以从接口板读取N个数据,N为大于1的正整数,而不是从接口板读取一个数据,从而一次就读取N个数据,将N个数据发送给主控板。这样,可以减少数据读取操作所耗费的时间,避免主控板长期被数据读取操作占用,节约主控板资源,提高带宽利用率,提高主控板获取数据的效率,提高网络设备的整体性能,降低主控板的占用率,节省主控板的占用时间,提高数据获取效率,占用转换装置的逻辑资源较少。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的网络设备的硬件结构图;
图2A-图2E是本申请一种实施方式中的转换装置的硬件结构图;
图3是本申请一种实施方式中的数据传输方法的流程图。
具体实施方式
在本申请使用的术语,仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或者所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”,或者,“当……时”,或者,“响应于确定”。
本申请实施例中提出一种网络设备(如路由器、交换机、防火墙、服务器等),该网络设备可以包括主控板、接口板和转换装置。参见图1所示,为该网络设备的结构示意图,该网络设备可以包括但不限于:主控板10、转换装置20、接口板30和接口板40。其中,主控板10可以与接口板40连接,主控板10还可以与转换装置20连接,且转换装置20可以与接口板30连接。
在一个例子中,转换装置20与主控板10可以部署在同一个单板,也就是说,一个单板同时包括转换装置20与主控板10。或者,转换装置20可以部署在单独的单板,即转换装置20与主控板10部署在不同的单板。当然,上述只是两个示例,对此转换装置20的位置不做限制。例如,转换装置20还可以与接口板30部署在同一个单板,或者,针对包括主控板、网板和接口板的网络设备,转换装置20还可以与网板部署在同一个单板,对此不做限制。
参见图1所示,以转换装置20部署在单独的单板为例进行说明。
其中,主控板10包括基于SOC(System on Chip,系统芯片)实现的CPU(CentralProcessing Unit,中央处理器),由CPU与接口板30/接口板40通信,即向接口板30/接口板40写入数据,并从接口板30/接口板40读取数据。
在一个例子中,某些接口板(如接口板40)具有高速接口(如PCI-E接口、SGMII(Serial Gigabit Media Independent,串行千兆介质无关)接口等,图1中以PCI-E接口为例进行说明),由于主控板10具有PCI-E接口,因此,主控板10与接口板40直接连接,也就是说,主控板10与接口板40可以通过高速总线(如PCI-E总线、SGMII总线等,图1中以PCI-E总线为例进行说明)连接。
在另一个例子中,某些接口板(如接口板30)可以具有低速接口(如本地总线接口、TDM(Time Division Multiplexing,时分复用)接口等,在图1中以本地总线接口为例进行说明),但是不具有PCI-E接口,由于主控板10具有PCI-E接口,但是不具有本地总线接口,因此,主控板10可以通过转换装置20与接口板30连接,也就是说,主控板10不是与接口板30直接连接。
进一步的,转换装置20可以具有PCI-E接口和本地总线接口,因此,转换装置20可以通过PCI-E接口与主控板10连接,也就是说,转换装置20与主控板10可以通过PCI-E总线连接。此外,转换装置20可以通过本地总线接口与接口板30连接,也就是说,转换装置20与接口板30可以通过低速总线(如本地总线、TDM总线等,在图1中以本地总线为例进行说明)连接。
在上述应用场景下,针对主控板10与接口板40之间的通信过程,可以包括:主控板10通过PCI-E总线向接口板40写入数据,主控板10通过PCI-E总线从接口板40读取数据,对此数据写入过程和数据读取过程,不再赘述。
针对主控板10与接口板30之间的通信过程,可以包括:主控板10通过PCI-E总线将数据发送给转换装置20,转换装置20通过本地总线向接口板30写入数据,对此数据写入过程不再赘述。主控板10通过PCI-E总线向转换装置20发送读取命令,转换装置20通过本地总线从接口板30读取数据,并通过PCI-E总线将数据返回给主控板10,在后续实施例中,介绍这个数据读取过程。
在传统方式中,为了从接口板30读取数据,主控板10向转换装置20发送读取命令,转换装置20通过本地总线从接口板30读取数据,由于本地总线的数据位宽为8比特,因此,转换装置20只从接口板30读取8比特的数据,将数据发送给主控板10。主控板10在接收到8比特的数据之后,若主控板10当前未读取到所有数据,则继续向转换装置20发送读取命令,以此类推。
假设接口板30包括80个比特的数据,则主控板10需要发送10次读取命令,转换装置20从接口板30读取10次数据,转换装置20向主控板10发送10次数据。显然,数据读取操作需要耗费较长的时间,在这段时间内,主控板10始终被占用,无法处理其它任务,其它任务只能等待,浪费主控板10的资源。
针对上述发现,本申请实施例中,主控板10向转换装置20发送读取命令,转换装置20通过本地总线从接口板30读取数据,且连续读取N次数据,假设N为5,则转换装置20连续从接口板30读取5次数据。由于本地总线的数据位宽为8比特,因此,转换装置20每次从接口板30读取8比特的数据,且5次读取40比特的数据,将40比特的数据发送给主控板10。主控板10再次向转换装置20发送读取命令,转换装置20从接口板30连续读取N次数据,以此类推。
假设接口板30包括80个比特的数据,则主控板10需要发送2次读取命令,转换装置20从接口板30读取10次数据,转换装置20向主控板10发送2次数据。显然,与传统方式相比,主控板10发送读取命令的次数显著降低,转换装置20向主控板10发送数据的次数显著降低,从而减少数据读取操作耗费的时间,节约主控板10的资源,提高带宽利用率,提高网络设备的整体性能。
为了实现上述功能,本申请实施例中提出一种转换装置,该转换装置可以应用于网络设备,该网络设备还可以包括主控板(如具有第一类接口的主控板)和接口板(如具有第二类接口的接口板),转换装置可以包括第一类接口和第二类接口,转换装置通过该第一类接口与主控板连接,转换装置通过该第二类接口与接口板连接。其中,该第一类接口可以为高速接口(如PCI-E接口、SGMII接口等,图1中以PCI-E接口为例进行说明),该第二类接口可以为低速接口(如本地总线接口、TDM接口等,图1中以本地总线接口为例进行说明)。
参见图2A所示,为转换装置20的结构示意图,转换装置20包括但不限于:报文处理单元21、判定单元22、连续读操作单元23、循环计数器24。
在一个例子中,报文处理单元21,用于接收来自主控板10的第一数据报文,从该第一数据报文中获取决策参数,并将该决策参数输出给判定单元22。判定单元22,用于当决策参数为第一决策参数时,向连续读操作单元23输出第一命令。循环计数器24,用于存储数据读取次数N,N为大于1的正整数。连续读操作单元23,用于在接收到该第一命令后,从循环计数器24中读取数据读取次数N,并向接口板30发送N个读操作命令,以使接口板30根据N个读操作命令返回N个数据。报文处理单元21,还用于获取所述N个数据的数据信息,并将所述数据信息封装成第二数据报文,将第二数据报文发送给主控板10。
可选的,在一个例子中,报文处理单元21,还用于从第一数据报文中获取数据读取次数,并将该数据读取次数发送给循环计数器24,以使循环计数器24存储该数据读取次数。或者,报文处理单元21,还用于根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数,并将该数据读取次数发送给循环计数器24,以使循环计数器24存储该数据读取次数。
其中,报文处理单元21根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数时具体用于:获取第一类接口的接口类型,并确定与第一类接口的接口类型对应的第一数据承载长度;获取第二类接口的接口类型,并确定与第二类接口的接口类型对应的第二数据承载长度;然后,可以根据所述第一数据承载长度和所述第二数据承载长度确定数据读取次数。
可选的,参见图2B所示,转换装置20还可以包括:多组数据组装单元25。多组数据组装单元25,用于接收接口板30返回的N个数据,并将所述N个数据组成载荷数据,并将该载荷数据发送给报文处理单元21。这样,报文处理单元21可以接收该载荷数据,并将该载荷数据封装成第二数据报文。
参见上述实施例,报文处理单元21用于获取N个数据的数据信息,并将所述数据信息封装成第二数据报文。具体的,若转换装置20未包括多组数据组装单元25,则N个数据的数据信息就是接口板返回的N个数据本身,报文处理单元21可以获取到接口板返回的N个数据,将所述N个数据组成载荷数据,并将该载荷数据封装成第二数据报文。若转换装置20包括多组数据组装单元25,则N个数据的数据信息就是多组数据组装单元25发送的载荷数据,报文处理单元21可以获取到该载荷数据,并将该载荷数据封装成第二数据报文。
可选的,参见图2C所示,转换装置20还可以包括:单次读操作单元26。判定单元22,还用于在当决策参数为第二决策参数时,向单次读操作单元26输出第二命令。单次读操作单元26,用于在接收到该第二命令后,向接口板30发送一个读操作命令,以使接口板30根据一个读操作命令返回一个数据。报文处理单元21,还用于获取所述一个数据的数据信息,将该数据信息封装成第三数据报文,并将该第三数据报文发送给主控板10。
可选的,参见图2D所示,转换装置20还可以包括:单组数据组装单元27。单组数据组装单元27,用于接收接口板30返回的一个数据,并将所述一个数据组成载荷数据,并将该载荷数据发送给报文处理单元21。这样,报文处理单元21可以接收该载荷数据,并将该载荷数据封装成第三数据报文。
参见上述实施例,报文处理单元21用于获取一个数据的数据信息,并将所述数据信息封装成第三数据报文。具体的,若转换装置20未包括单组数据组装单元27,则一个数据的数据信息就是接口板返回的一个数据本身,报文处理单元21可以获取到接口板返回的一个数据,将所述一个数据组成载荷数据,并将该载荷数据封装成第三数据报文。若转换装置20包括单组数据组装单元27,则一个数据的数据信息就是单组数据组装单元27发送的载荷数据,报文处理单元21可以获取到该载荷数据,并将该载荷数据封装成第三数据报文。
可选的,参见图2E所示,转换装置20还可以包括:中断处理单元28。中断处理单元28,用于在接收到接口板30发送的中断时,将该中断发送给主控板10,以使主控板10发送上述第一数据报文。基于此,报文处理单元21可以接收来自主控板10的第一数据报文,继而通过各单元的配合实现数据传输。
可选的,在上述实施例中,当数据读取地址中的决策标识为第一数值时,则所述决策参数为第一决策参数;当数据读取地址中的决策标识为第二数值时,则所述决策参数为第二决策参数。
基于上述技术方案,本申请实施例中,转换装置从接口板读取N个数据,N为大于1的正整数,而不是从接口板读取一个数据,从而一次就读取N个数据,将N个数据发送给主控板。这样,可以减少数据读取操作所耗费的时间,避免主控板长期被数据读取操作占用,节约主控板资源,提高带宽利用率,提高主控板获取数据的效率,提高网络设备的整体性能,降低主控板的占用率,节省主控板的占用时间,提高数据获取效率,占用转换装置的逻辑资源较少。
以下结合图2E所示的应用场景,对上述技术方案进行详细说明。
参见图2E所示,转换装置20可以包括:报文处理单元21、判定单元22、连续读操作单元23、循环计数器24、多组数据组装单元25、单次读操作单元26、单组数据组装单元27和中断处理单元28。其中,连续读操作单元23、循环计数器24和多组数据组装单元25属于加速逻辑通道,用于实现加速读取,即针对接口板30的每个读取命令,从接口板30读取多次数据。此外,单次读操作单元26和单组数据组装单元27属于非加速逻辑通道,不需要实现加速读取,即针对接口板30的每个读取命令,从接口板30读取一次数据。
在一个例子中,转换装置20可以包括但不限于逻辑芯片,例如,FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、CPLD(ComplexProgrammableLogic Device,复杂可编程逻辑器件)、ASIC(Application SpecificIntegratedCircuit,专用集成电路)等,对此转换装置20的类型不做具体限制。
在一个例子中,当接口板30存在待读取数据(即需要发送给主控板10的数据)时,接口板30通过中断通道向转换装置20的中断处理单元28发送中断,中断处理单元28在接收到中断后,通过中断通道向主控板10转发该中断。
主控板10在接收到中断后,确定需要从接口板30读取数据。为了从接口板30读取数据,则主控板10可以向转换装置20的报文处理单元21发送第一数据报文,该第一数据报文可以为TLP(Transaction Layer Interface,事务层接口)报文。当然,该第一数据报文也可以为其它类型报文,对此不做限制。
与传统数据报文不同的是,本实施例中,第一数据报文可以携带决策参数,该决策参数表示是否对数据读取操作进行加速处理。例如,若主控板10确定对数据读取操作进行加速处理,在第一数据报文中添加需要对数据读取操作进行加速处理的第一决策参数;若主控板10确定不对数据读取操作进行加速处理,在第一数据报文中添加不需要对数据读取操作进行加速处理的第二决策参数。
可选的,主控板10可以根据待读取数据的数据类型确定是否对数据读取操作进行加速处理。例如,若待读取数据的数据类型为业务类数据,则主控板10可以确定对数据读取操作进行加速处理,即,第一数据报文可以携带第一决策参数;或者,若待读取数据的数据类型为控制类数据,则主控板10可以确定不对数据读取操作进行加速处理,即,第一数据报文可以携带第二决策参数。
其中,针对控制类数据(如接口板30的某个状态寄存器的状态值),控制类数据通常比较小,如8个比特,通过一次或者少数几个读取过程,就可以完成控制类数据的读取,因此,若待读取数据的数据类型为控制类数据,则主控板10确定不对数据读取操作进行加速处理。针对业务类数据(如其它网络设备发送给接口板30的数据等),业务类数据通常比较大,如几万个比特,通过多次读取过程,才可以完成业务类数据的读取,因此,若待读取数据的数据类型为业务类数据,则主控板10确定对数据读取操作进行加速处理。
综上所述,针对控制类数据不进行加速处理,针对业务类数据进行加速处理,使得控制类数据和业务类数据互不影响,可以保障控制类数据获取的高效性,并保障业务类数据获取的高效性,大大提高业务类数据的读取效率。
在一个例子中,主控板10向转换装置20的报文处理单元21发送第一数据报文后,报文处理单元21接收第一数据报文。由于第一数据报文携带决策参数,因此,报文处理单元21从第一数据报文中获取决策参数,并将该决策参数输出给判定单元22,该决策参数可以为第一决策参数或者第二决策参数。
进一步的,判定单元22在接收到该决策参数后,若该决策参数为第一决策参数,则判定单元22向连续读操作单元23输出第一命令。若该决策参数为第二决策参数,则判定单元22向单次读操作单元26输出第二命令。
可选的,针对第一数据报文包括的决策参数,可以采用如下方式实现:
方式一、在第一数据报文的指定字段携带决策标识。当决策标识为第一数值时,表示对数据读取操作进行加速处理的第一决策参数,当决策标识为第二数值时,表示不对数据读取操作进行加速处理的第二决策参数。基于此,若该决策标识为第一数值,则判定单元22可以确定决策参数为第一决策参数;若该决策标识为第二数值,则确定决策参数为第二决策参数。
针对方式一,主控板10确定对数据读取操作进行加速处理时,则主控板10在第一数据报文的指定字段添加第一数值。主控板10确定不对数据读取操作进行加速处理时,则主控板10在第一数据报文的指定字段添加第二数值。
其中,指定字段可以是第一数据报文的任意字段,对此不做限制。例如,第一数据报文可以包括数据字段(即data字段),在主控板10向转换装置20发送第一数据报文时,第一数据报文中的数据字段未被使用,因此,本实施例中,可以通过第一数据报文的数据字段来携带决策标识。
方式二、通过第一数据报文中的数据读取地址携带决策标识。当数据读取地址中的决策标识为第一数值时,表示对数据读取操作进行加速处理的第一决策参数,当数据读取地址中的决策标识为第二数值时,表示不对数据读取操作进行加速处理的第二决策参数。基于此,若数据读取地址中的决策标识为第一数值,则判定单元22可以确定决策参数为第一决策参数;若数据读取地址中的决策标识为第二数值,则判定单元22可以确定决策参数为第二决策参数。
在一个例子中,在第一数据报文中可以携带数据读取地址,表示需要从这个数据读取地址读取数据。本实施例中,主控板在发送第一数据报文时,可以通过第一数据报文中的数据读取地址携带决策标识。例如,通过数据读取地址的最高位,来表示决策标识。或者,通过数据读取地址的第二位,来表示决策标识,对此不做限制,后续以数据读取地址的最高位表示决策标识为例。
例如,数据读取地址“10FFFH”中的最高位1,可以表示决策标识。当决策标识为数值1(假设数值1为第一数值)时,则表示第一决策参数。
又例如,数据读取地址“20FFFH”中的最高位2,可以表示决策标识。当决策标识为数值2(假设数值2为第二数值)时,则表示第二决策参数。
此外,10FFFH中的数值0,表示针对槽位0的接口板,10FFFH中的“FFF”,表示需要从这个地址读取数据。同理,20FFFH中的数值0,表示针对槽位0的接口板,20FFFH中的“FFF”,表示需要从这个地址读取数据。
当然,上述只是数据读取地址的示例,对此数据读取地址不做限制。
当然,上述方式一和方式二只是决策参数的两个示例,对此不做限制。
在一个例子中,循环计数器24用于存储数据读取次数,将数据读取次数记为N,N为大于1的正整数。循环计数器24存储数据读取次数,采用如下方式:
方式1、主控板10在向转换装置20的报文处理单元21发送第一数据报文时,该第一数据报文可以携带数据读取次数N。报文处理单元21可以从第一数据报文中获取数据读取次数N,并将数据读取次数N发送给循环计数器24。循环计数器24在接收到数据读取次数N后,可以存储数据读取次数N。
其中,主控板10可以确定数据读取次数N,对此确定方式不做限制。例如,主控板10可以获取第一类接口的接口类型,并确定与第一类接口的接口类型对应的第一数据承载长度;获取第二类接口的接口类型,并确定与第二类接口的接口类型对应的第二数据承载长度;然后,根据第一数据承载长度和第二数据承载长度确定数据读取次数N,并将数据读取次数N添加到第一数据报文中。
方式2、报文处理单元21根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N,并将数据读取次数N发送给循环计数器24,以使循环计数器24存储该数据读取次数N。具体的,可以获取第一类接口的接口类型,并确定与第一类接口的接口类型对应的第一数据承载长度;获取第二类接口的接口类型,并确定与第二类接口的接口类型对应的第二数据承载长度;根据第一数据承载长度和第二数据承载长度确定数据读取次数。
其中,报文处理单元21在接收到第一数据报文后,若第一数据报文携带数据读取次数N,则报文处理单元21可以从第一数据报文中获取数据读取次数N,并将数据读取次数N发送给循环计数器24。若第一数据报文未携带数据读取次数N,则报文处理单元21可以根据第一类接口的数据承载长度和第二类接口的数据承载长度确定数据读取次数N,将数据读取次数N发送给循环计数器24。
方式3、根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N,并将数据读取次数N配置到循环计数器24。例如,用户可以根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N,并将数据读取次数N配置到循环计数器24。
在方式1、方式2和方式3中,均可以根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N,只是执行主体不同。此外,可以预先配置第一类接口的接口类型与第一数据承载长度的对应关系、第二类接口的接口类型与第二数据承载长度的对应关系,对此不做限制。
其中,转换装置20通过PCI-E接口与主控板10连接,即转换装置20通过PCI-E接口向主控板10发送数据报文,该数据报文的数据承载长度为已知,如32个比特,也就是说,转换装置20向主控板10发送数据报文时,该数据报文最多承载32个比特的数据,即第一类接口的接口类型对应的第一数据承载长度。
此外,转换装置20通过本地总线接口与接口板30连接,即转换装置20通过本地总线接口从接口板30读取数据,待读取数据的数据承载长度为已知,如8个比特,也就是说,转换装置20在从接口板30读取数据时,一次最多只能读取8个比特的数据,即第二类接口的接口类型对应的第二数据承载长度。
综上所述,可以对(第一类接口的接口类型对应的第一数据承载长度/第二类接口的接口类型对应的第二数据承载长度)向下取值,而向下取值后的数值就是数据读取次数N。例如,对(32/8)向下取值,得到数据读取次数N为4。
基于此,转换装置20的连续读操作单元23可以连续从接口板30读取4次数据,每次读取8个比特,这样,4个读取过程一共读取32个比特,由于数据报文最多承载32个比特的数据,因此,可以将读取的所有数据(即32个比特的数据)均添加到数据报文中,并将数据报文发送给主控板10。显然,基于上述方式,能够充分利用数据报文的数据带宽,提高数据传输的效率。
在上述实施例中,第一数据承载长度和第二数据承载长度,是指载荷数据的长度,而不包括报文头的长度。也就是说,数据承载长度是在数据报文中承载的载荷数据的长度,而不包括在数据报文中承载的报文头的长度。
当然,上述只是确定数据读取次数N的一个示例,对此确定方式不做限制。而且,在实际应用中,还可以根据不同情况对数据读取次数N进行动态调整。
在一个例子中,连续读操作单元23在接收到第一命令后,从循环计数器24中读取数据读取次数N,并向接口板30发送N个读操作命令,以使接口板30根据N个读操作命令向多组数据组装单元25返回N个数据。
具体的,连续读操作单元23连续向接口板30发送N个读操作命令,即对接口板30连续读取N次数据。接口板30每接收到一个读操作命令,就通过本地总线接口向多组数据组装单元25返回一个数据(如8比特的数据)。由于接口板30可以接收到N个读操作命令,因此,接口板30通过本地总线接口向多组数据组装单元25返回N个数据。这样,多组数据组装单元25可以接收到N个数据,并将N个数据组成载荷数据(即payload),例如,按照每个数据的顺序将N个数据组成载荷数据,然后,将该载荷数据发送给报文处理单元21。
在一个例子中,转换装置20可以包括一个buffer(缓冲区),这个buffer可以采用FIFO(First Input First Output,先进先出)方式存储数据。多组数据组装单元25每次接收到一个数据时,就将当前接收的一个数据存储到buffer中,然后,判断buffer中的数据数量是否达到N个。如果未达到,则等待下一次接收数据。如果已经达到,就从buffer中获取N个数据,将N个数据组成载荷数据,将该载荷数据发送给报文处理单元21,并从buffer中删除这N个数据。
报文处理单元21在接收到该载荷数据(即N个数据组成的载荷数据,如32个比特的载荷数据)后,将该载荷数据封装成第二数据报文(如TLP报文,是基于PCI-E接口的数据报文),并将该第二数据报文发送给主控板10。
在另一个例子中,单次读操作单元26在接收到第二命令后,向接口板30发送一个读操作命令,以使接口板30根据一个读操作命令向单组数据组装单元27返回一个数据,如返回8比特的数据。
具体的,单次读操作单元26可以只向接口板30发送一个读操作命令,接口板30在接收到该读操作命令后,可以通过本地总线接口向单组数据组装单元27返回一个数据,单组数据组装单元27接收到一个数据后,将一个数据组成载荷数据(即payload),然后,将该载荷数据发送给报文处理单元21。
报文处理单元21在接收到该载荷数据(即一个数据组成的载荷数据,如8个比特的载荷数据)后,将该载荷数据封装成第三数据报文(如TLP报文,是基于PCI-E接口的数据报文),并将该第三数据报文发送给主控板10。
基于上述技术方案,本申请实施例中,主控板发送第一数据报文的次数显著降低,转换装置向主控板发送第二数据报文的次数显著降低,从而充分利用第二数据报文的有效带宽(如第二数据报文承载32个比特的数据,而不是承载8个比特的数据,即,将需要几次传输的数据承载到一个第二数据报文),减少数据读取操作耗费的时间,避免主控板长期被数据读取操作占用,节约主控板的资源,提高带宽利用率,提高数据获取效率,降低主控板的占用率,节省主控板的占用时间,提高网络设备的整体性能,占用转换装置的逻辑资源较少。
本申请实施例中还提出一种网络设备,所述网络设备可以包括主控板、接口板和转换装置,所述转换装置可以通过第一类接口与所述主控板连接,所述转换装置可以通过第二类接口与所述接口板连接;其中:
所述主控板,用于向所述转换装置发送第一数据报文;
所述转换装置,用于在接收到所述第一数据报文后,从所述第一数据报文中获取决策参数;当所述决策参数为第一决策参数时,则获取数据读取次数N,N为大于1的正整数,并向所述接口板发送N个读操作命令;
所述接口板,用于在接收到所述N个读操作命令后,返回N个数据;
所述转换装置,还用于获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
所述转换装置,还用于当所述决策参数为第二决策参数时,向所述接口板发送一个读操作命令;
所述接口板,还用于在接收到所述一个读操作命令后,返回一个数据;
所述转换装置,还用于获取所述一个数据的数据信息,将该数据信息封装成第三数据报文,并将所述第三数据报文发送给所述主控板。
在一个例子中,所述转换装置与所述主控板可以部署在同一个单板;或者,所述转换装置可以部署在单独的单板。
可选的,在一个例子中,当数据读取地址中的决策标识为第一数值时,所述决策参数为第一决策参数;当数据读取地址中的决策标识为第二数值时,则所述决策参数为第二决策参数。
可选的,在一个例子中,所述转换装置获取数据读取次数N时具体用于:从所述第一数据报文中获取数据读取次数N;或者,根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N。
可选的,在一个例子中,所述转换装置根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N时具体用于:获取第一类接口的接口类型,确定与第一类接口的接口类型对应的第一数据承载长度;获取第二类接口的接口类型,确定与第二类接口的接口类型对应的第二数据承载长度;根据所述第一数据承载长度和所述第二数据承载长度确定数据读取次数。
可选的,在一个例子中,所述转换装置获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文时具体用于:接收所述接口板返回的N个数据,将所述N个数据组成载荷数据,将所述载荷数据封装成第二数据报文。
其中,网络设备中各部件的功能,可以参见上述实施例,在此不再赘述。
基于与上述网络设备、转换装置同样的申请构思,本申请实施例还提出一种数据传输方法,可以应用于网络设备,所述网络设备包括主控板、接口板和转换装置,所述转换装置通过第一类接口与主控板连接,所述转换装置通过第二类接口与接口板连接,参见图3所示,该方法可以包括:
步骤301,所述转换装置接收来自所述主控板的第一数据报文,并从所述第一数据报文中获取决策参数。
步骤302,当所述决策参数为第一决策参数时,所述转换装置获取数据读取次数N,N为大于1的正整数,并向所述接口板发送N个读操作命令,以使所述接口板根据所述N个读操作命令返回N个数据。
步骤303,所述转换装置获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
可选的,在一个例子中,所述转换装置从所述第一数据报文中获取决策参数之后,所述方法还包括:当所述决策参数为第二决策参数时,所述转换装置向所述接口板发送一个读操作命令,以使所述接口板根据所述一个读操作命令返回一个数据;所述转换装置获取所述一个数据的数据信息,将该数据信息封装成第三数据报文,并将所述第三数据报文发送给所述主控板。
可选的,在一个例子中,当数据读取地址中的决策标识为第一数值时,所述决策参数为第一决策参数;当数据读取地址中的决策标识为第二数值时,则所述决策参数为第二决策参数。
可选的,在一个例子中,所述转换装置获取数据读取次数N,可以包括:从所述第一数据报文中获取数据读取次数N;或者,根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N。
可选的,在一个例子中,所述转换装置根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数N,可以包括:获取第一类接口的接口类型,确定与第一类接口的接口类型对应的第一数据承载长度;获取第二类接口的接口类型,确定与第二类接口的接口类型对应的第二数据承载长度;根据所述第一数据承载长度和所述第二数据承载长度确定数据读取次数。
可选的,在一个例子中,所述转换装置获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,可以包括:接收所述接口板返回的N个数据,将所述N个数据组成载荷数据,将所述载荷数据封装成第二数据报文。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种转换装置,其特征在于,所述转换装置应用于网络设备,所述网络设备还包括主控板和接口板,所述转换装置通过第一类接口与所述主控板连接,所述转换装置通过第二类接口与所述接口板连接,其中:所述转换装置包括:报文处理单元、判定单元、循环计数器、连续读操作单元;
所述报文处理单元,用于接收来自所述主控板的第一数据报文,从所述第一数据报文中获取决策参数,并将所述决策参数输出给判定单元;
所述判定单元,用于当所述决策参数为第一决策参数时,向连续读操作单元输出第一命令;其中,所述第一决策参数表示需要对数据读取操作进行加速处理,且所述决策参数是根据待读取数据的数据类型确定的;
所述循环计数器,用于存储数据读取次数N,N为大于1的正整数;
所述连续读操作单元,用于在接收到所述第一命令后,从所述循环计数器中读取所述数据读取次数N,并向所述接口板发送N个读操作命令,以使所述接口板根据所述N个读操作命令返回N个数据;
所述报文处理单元,用于获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
2.根据权利要求1所述的转换装置,其特征在于,
所述转换装置还包括:单次读操作单元;
所述判定单元,还用于当所述决策参数为第二决策参数时,向所述单次读操作单元输出第二命令;
所述单次读操作单元,用于在接收到所述第二命令后,向所述接口板发送一个读操作命令,以使所述接口板根据所述一个读操作命令返回一个数据;
所述报文处理单元,还用于获取所述一个数据的数据信息,将该数据信息封装成第三数据报文,并将所述第三数据报文发送给所述主控板。
3.根据权利要求2所述的转换装置,其特征在于,当数据读取地址中的决策标识为第一数值时,所述决策参数为第一决策参数;当数据读取地址中的决策标识为第二数值时,则所述决策参数为第二决策参数。
4.根据权利要求1所述的转换装置,其特征在于,
所述报文处理单元,还用于从所述第一数据报文中获取数据读取次数,将所述数据读取次数发送给所述循环计数器,以使所述循环计数器存储所述数据读取次数;或者,
所述报文处理单元,还用于根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数,并将所述数据读取次数发送给所述循环计数器,以使所述循环计数器存储所述数据读取次数。
5.根据权利要求4所述的转换装置,其特征在于,
所述报文处理单元根据第一类接口的数据承载长度和第二类接口的数据承载长度,确定数据读取次数时具体用于:获取第一类接口的接口类型,并确定与所述第一类接口的接口类型对应的第一数据承载长度;获取第二类接口的接口类型,并确定与所述第二类接口的接口类型对应的第二数据承载长度;根据所述第一数据承载长度和所述第二数据承载长度确定数据读取次数。
6.根据权利要求1所述的转换装置,其特征在于,
所述转换装置还包括:多组数据组装单元;
所述多组数据组装单元,用于接收所述接口板返回的N个数据,将所述N个数据组成载荷数据,并将所述载荷数据发送给所述报文处理单元,以使所述报文处理单元将所述载荷数据封装成第二数据报文。
7.一种网络设备,其特征在于,所述网络设备包括主控板、接口板和转换装置,其特征在于,所述转换装置通过第一类接口与所述主控板连接,所述转换装置通过第二类接口与所述接口板连接;其中:
所述主控板,用于向所述转换装置发送第一数据报文;
所述转换装置,用于在接收到所述第一数据报文后,从所述第一数据报文中获取决策参数;当所述决策参数为第一决策参数时,则获取数据读取次数N,N为大于1的正整数,并向所述接口板发送N个读操作命令;其中,所述第一决策参数表示需要对数据读取操作进行加速处理,且所述决策参数是根据待读取数据的数据类型确定的;
所述接口板,用于在接收到所述N个读操作命令后,返回N个数据;
所述转换装置,还用于获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
8.根据权利要求7所述的网络设备,其特征在于,
所述转换装置,还用于当所述决策参数为第二决策参数时,向所述接口板发送一个读操作命令;
所述接口板,还用于在接收到所述一个读操作命令后,返回一个数据;
所述转换装置,还用于获取所述一个数据的数据信息,将该数据信息封装成第三数据报文,并将所述第三数据报文发送给所述主控板。
9.根据权利要求7或8所述的网络设备,其特征在于,所述转换装置与所述主控板部署在同一个单板;或者,所述转换装置部署在单独的单板。
10.一种数据传输方法,其特征在于,应用于网络设备,所述网络设备包括主控板、接口板和转换装置,其特征在于,所述转换装置通过第一类接口与主控板连接,所述转换装置通过第二类接口与接口板连接,所述方法包括:
所述转换装置接收来自所述主控板的第一数据报文,并从所述第一数据报文中获取决策参数;
当所述决策参数为第一决策参数时,所述转换装置获取数据读取次数N,N为大于1的正整数,并向所述接口板发送N个读操作命令,以使所述接口板根据所述N个读操作命令返回N个数据;其中,所述第一决策参数表示需要对数据读取操作进行加速处理,且所述决策参数是根据待读取数据的数据类型确定的;
所述转换装置获取所述N个数据的数据信息,将所述数据信息封装成第二数据报文,并将所述第二数据报文发送给所述主控板。
CN201910251463.8A 2019-03-29 2019-03-29 一种转换装置、网络设备及数据传输方法 Active CN109862044B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910251463.8A CN109862044B (zh) 2019-03-29 2019-03-29 一种转换装置、网络设备及数据传输方法
PCT/CN2020/081750 WO2020200113A1 (zh) 2019-03-29 2020-03-27 网络设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910251463.8A CN109862044B (zh) 2019-03-29 2019-03-29 一种转换装置、网络设备及数据传输方法

Publications (2)

Publication Number Publication Date
CN109862044A CN109862044A (zh) 2019-06-07
CN109862044B true CN109862044B (zh) 2021-04-27

Family

ID=66902670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910251463.8A Active CN109862044B (zh) 2019-03-29 2019-03-29 一种转换装置、网络设备及数据传输方法

Country Status (2)

Country Link
CN (1) CN109862044B (zh)
WO (1) WO2020200113A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109862044B (zh) * 2019-03-29 2021-04-27 新华三技术有限公司 一种转换装置、网络设备及数据传输方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108733482A (zh) * 2018-03-27 2018-11-02 华为技术有限公司 信息获取的方法、处理器以及通信装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103186223B (zh) * 2011-12-27 2016-03-02 英业达股份有限公司 计算机装置及外接子板的侦测方法
CN103856364A (zh) * 2012-12-04 2014-06-11 鸿富锦精密工业(深圳)有限公司 总线信号监测装置及方法
CN106528474A (zh) * 2016-11-02 2017-03-22 中国电子科技集团公司第五十研究所 基于桥接芯片构建RapidIO和PCI‑E互联系统
US10572434B2 (en) * 2017-02-27 2020-02-25 International Business Machines Corporation Intelligent certificate discovery in physical and virtualized networks
CN109862044B (zh) * 2019-03-29 2021-04-27 新华三技术有限公司 一种转换装置、网络设备及数据传输方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108733482A (zh) * 2018-03-27 2018-11-02 华为技术有限公司 信息获取的方法、处理器以及通信装置

Also Published As

Publication number Publication date
CN109862044A (zh) 2019-06-07
WO2020200113A1 (zh) 2020-10-08

Similar Documents

Publication Publication Date Title
CN105511954B (zh) 一种报文处理方法及装置
US9462091B2 (en) Information processing apparatus, communication method and storage medium
CN108647104B (zh) 请求处理方法、服务器及计算机可读存储介质
CN104503728A (zh) 一种硬件加速器及芯片
CN103873550A (zh) 用于ecu和/或测量设备之间的数据传输的方法
US11671678B2 (en) Method and device, equipment, and storage medium for data processing
WO2020142867A1 (zh) 一种流量整形方法及相关设备
CN106330741B (zh) 一种报文传输方法和装置
CN111290979B (zh) 数据传输方法、装置及系统
CN109862044B (zh) 一种转换装置、网络设备及数据传输方法
CN102984083A (zh) 队列管理方法及装置
CN114244915A (zh) 一种支持多种协议的数据传输方法、装置及存储介质
US9128771B1 (en) System, method, and computer program product to distribute workload
CN102170401B (zh) 一种数据的处理方法和设备
CN111431921A (zh) 一种配置同步方法
CN117499351A (zh) 报文转发装置及方法、通信芯片及网络设备
CN110830386A (zh) 报文保序的方法、装置和系统
CN113626221B (zh) 一种消息入队方法及装置
CN114897532A (zh) 操作日志处理方法、系统、装置、设备和存储介质
US8793698B1 (en) Load balancer for parallel processors
CN114079634A (zh) 一种报文转发方法、装置及计算机可读存储介质
CN114428684A (zh) 一种基于分布式的消息推送方法、装置和系统
CN111078619A (zh) 一种转换装置、网络设备及数据传输方法
CN205249177U (zh) 一种硬件逻辑资源复用模块
CN117278505B (zh) 一种raid卡节点之间的消息传输方法、系统、设备以及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant