CN115982084A - 数据传输方法及装置、通信设备、及存储介质 - Google Patents
数据传输方法及装置、通信设备、及存储介质 Download PDFInfo
- Publication number
- CN115982084A CN115982084A CN202211600020.3A CN202211600020A CN115982084A CN 115982084 A CN115982084 A CN 115982084A CN 202211600020 A CN202211600020 A CN 202211600020A CN 115982084 A CN115982084 A CN 115982084A
- Authority
- CN
- China
- Prior art keywords
- data
- core
- inter
- length
- processing
- 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
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 368
- 238000004891 communication Methods 0.000 title claims abstract description 291
- 230000006854 communication Effects 0.000 title claims abstract description 290
- 238000000034 method Methods 0.000 title claims abstract description 103
- 238000012545 processing Methods 0.000 claims abstract description 511
- 230000003044 adaptive effect Effects 0.000 claims abstract description 37
- 230000006978 adaptation Effects 0.000 claims description 15
- 230000003139 buffering effect Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004519 manufacturing process Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 235000006647 Eugenia jambos Nutrition 0.000 description 1
- 244000087016 Syzygium jambos Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供一种据传输方法,包括:在所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,所述第一处理内核基于所述第一MTU长度在所述第一传输路径上传输核间数据,所述第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,所述第一MTU长度大于所述适配通信网络的MTU长度。本申请实施例还提供一种数据传输装置、通信设备和存储介质。
Description
技术领域
本申请涉及电子技术领域,尤其涉及一种数据传输方法及装置、通信设备、存储介质。
背景技术
随着电子技术的发展,通信设备的处理器架构越来越复杂,通信设备中可以集成各种处理内核,例如、应用程序处理器(Application Processor,AP)、图形处理器(Graphics Processing Unit,GPU)、嵌入式神经网络处理器(Neural-network ProcessingUnit,NPU)、无线高保真(Wireless Fidelity)处理器、以及第4代移动通信技术(4G)/第5代移动通信技术(5G)的调制解调器(Modem)等。
目前,5G系统的峰值通信速率要求为下行20G bit/s,上行为10G bit/s,而且在上述速率应用在通信设备上时还希望通信设备功耗在可以接受的范围之内,这就成为手机芯片设计的难点之一。
发明内容
本申请实施例提供一种数据传输方法及装置、通信设备、存储介质。
本申请的技术方案是这样实现的:
第一方面,提供一种数据传输方法,应用于第一处理内核,包括:
在所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一最大传输单元(Maximum Transmission Unit,MTU)长度的核间数据的情况下,所述第一处理内核基于所述第一MTU长度在所述第一传输路径上传输核间数据,所述第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,所述第一MTU长度大于所述适配通信网络的MTU长度。
第二方面,提供一种数据传输方法,应用于第二处理内核,包括:
在第一处理内核与所述第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据的情况下,基于所述第一MTU长度在所述第一传输路径上传输核间数据;
基于适配通信网络的MTU长度卸载接收到的核间数据。
第三方面,提供一种数据传输装置,应用于第一处理内核,包括:
第一收发单元,被配置为在所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据的情况下,基于所述第一MTU长度在所述第一传输路径上传输核间数据,所述第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,所述第一MTU长度大于所述适配通信网络的MTU长度。
第四方面,提供一种数据传输装置,应用于第二处理内核,包括:
第二收发单元1501,被配置为在第一处理内核与所述第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,基于所述第一MTU长度在所述第一传输路径上传输核间数据;
卸载单元1502,被配置为基于适配通信网络的MTU长度卸载接收到的核间数据。
第五方面,提供一种处理内核,包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述处理内核的设备执行第一方面或第二方面所述的方法。
第六方面,提供一种通信设备,包括第一处理内核和第二处理内核,其中,第一处理内核用于实现如第一方面所述的方法,第二处理内核用于实现如第二方面所述的方法。
第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面或第二方面所述的方法。
附图说明
图1为本申请实施例提供的一种数据传输原理示意图;
图2为本申请实施例提供的一种数据包结构组成示意图;
图3为本申请实施例提供的一种TSO数据分段原理示意图;
图4为本申请实施例提供的一种GSO数据分段原理示意图;
图5为本申请实施例提供的一种数据接收原理示意图;
图6为本申请实施例提供的一种LRO数据接收原理示意图;
图7为本申请实施例提供的一种GRO数据接收原理示意图;
图8为本申请实施例提供的一种数据传输方法流程示意图一;
图9为本申请实施例提供的一种数据传输方法流程示意图二;
图10为本申请实施例提供的一种数据传输方法流程示意图三;
图11为本申请实施例提供的一种数据传输方法流程示意图四;
图12为本申请实施例提供的一种数据传输方法流程示意图五;
图13为本申请实施例提供的一种数据传输方法流程示意图六;
图14为本申请实施例提供的一种数据传输装置1400结构组成示意图;
图15为本申请实施例提供的一种数据传输装置1500结构组成示意图;
图16是本申请实施例提供的一种通信设备示意性结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。还应理解,在本申请的实施例中提到的“指示”可以是直接指示,也可以是间接指示,还可以是表示具有关联关系。举例说明,A指示B,可以表示A直接指示B,例如B可以通过A获取;也可以表示A间接指示B,例如A指示C,B可以通过C获取;还可以表示A和B之间具有关联关系。在本申请的实施例中提到的“预定义”或“预定义规则”可以通过在设备中预先保存相应的代码、表格或其他可用于指示相关信息的方式来实现,本申请对于其具体的实现方式不做限定。比如预定义可以是指协议中定义的。还应理解,本申请实施例中,所述“协议”可以指通信领域的标准协议,例如可以包括LTE协议、NR协议以及应用于未来的通信系统中的相关协议,本申请对此不做限定。
为便于理解本申请实施例的技术方案,以下对本申请实施例的相关技术进行说明,以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。
在应用层发送或者接收较大数据包的情况下,经过操作系统内核协议栈时,较大数据包会被分段成多个不超过最大传输单元(Maximum Transmission Unit,MTU)长度的小包。
参考图1所示的数据传输原理示意图,应用层数据经过传输控制协议(Transmission Control Protocol,TCP)协议栈会被分段成多个符合TCP处理要求的数据包,并在每个数据包前增加TCP包头;进一步地,增加了TCP包头的多个数据包经过互联协议(Internet Protocol,IP)协议栈时,也会进行分段操作,并添加IP包头。增加了IP包头的多个数据包经过以太网协议栈时会仅仅分段或合并处理,得到多个增加了以太网包头的数据包。经过上述处理后,数据包会经过网卡驱动和网卡发送给通信网络中的其他通信设备。
MTU指的是数据链路层的最大负载,由硬件网卡设置。参考图2所示,MTU通常包括IP包头和TCP包头,而不包含以太网头尾数据。可以理解的是,网卡发送数据包的大小都是限制在MTU长度内的。
结合图1可以看出,分段操作需要消耗较多的CPU资源。卸载(Offload)技术可以把这些分段和合并的工作进行优化处理。实际应用中,可以通过网卡来执行Offload操作,目前大部分电子设备都支持这种网卡Offload技术。
TCP分段(TCP Segmentation Offload,TSO)技术是一种利用网卡对大数据包进行分段,从而减小CPU负荷的一种技术。TSO需要硬件网卡支持分段功能,参考图3所示的一种TSO数据分段原理示意图,应用层数据包在经过TCP、IP、以太网协议栈可以不进行数据分段,仅执行包头添加处理。在经过硬件网卡时,网卡通过硬件功能对数据包进行分段处理。通过硬件功能执行分段处理效率较高。
另一种分段卸载技术是通用分段卸载技术(Generic Segmentation Offload,GSO),其中,GRO不需要硬件的支持就可以进行分段。参考图4所示的一种GSO数据分段原理示意图。应用层数据包在经过TCP、IP、以太网协议栈可以不进行数据分段,仅执行包头添加处理。在添加了TCP、IP、以太网包头的数据包进入网卡之前,通过网卡驱动对数据包进行分段处理。
GSO过程包括:首先查询网卡是否支持TSO功能,如果网卡支持TSO则使用网卡的硬件分段能力执行分段;如果网卡不支持TSO功能,则将分段的执行,延缓到了将数据推送到网卡的前一刻执行。也就是说,如果硬件网卡不支持分段处理,那么可以通过GSO进行分段处理。GSO可以让数据包跨过IP层,链路层,在数据离开协议栈,进入网卡驱动前进行分段。而且GRO分片在发生TCP重传时,相比TSO效率更高,不论是TCP还是UDP,都是分段的每个包都附加TCP/UDP头部,这样,当一个段丢失,不需要发送整个TCP/UDP报文。其次,路径上的CPU消耗也会减少,所以可以说GSO是对TSO的一种改良。
以上为数据包的发送过程,下面介绍数据包的接收过程。
参考图5所示的一种数据接收原理示意图,通常情况下,网卡可以将多个数据包发送给网卡驱动,网卡驱动将多个数据包转发给以太网协议栈,以太网协议栈将多个数据包的以太网包头去除,发送给IP协议栈。进而,IP协议栈拆除数据包的IP包头后,将包头拆除后的数据包发送给TCP协议栈。最后,TCP协议栈对接收到的数据包进行TCP包头拆分处理,并将拆除TCP包头的数据进行合并处理,得到完整的数据。
实际应用中,参考图6所示的一种LRO数据接收原理示意图。为了减少CPU资源消耗,网卡可以将多个数据包合并成一个大的数据包递交到高层。这合并过程可以称为大量接收卸载(Large Receive Offload,LRO)技术。LRO技术与TSO技术类似,都是通过网卡硬件执行处理。
LRO技术严重依赖网卡,并且会导致合并后的数据包出现错误。因此,引入了通用接收卸载(Generic Receive Offload,GRO)技术。参考图7所示,GRO技术可以将合并操作放到网卡驱动执行,保留了每个数据包的熵信息(例如五元组信息)。
实际应用中,通信设备内部的多个处理内核进行数据传输时,例如,摄像装置将采集的视频通过WiFi射频处理器,或者4G/5G调制解调器发送给其他通信设备时,一般使用缺省的MTU长度(例如1500字节)来传输处理内核之间的数据。因此,在Wifi峰值速率或者5G峰值速率要求较高的情况下,核间通信效率不高。例如,下行峰值速率要求为10Gbit/s,MTU为1500字节进行计算,通信设备1毫秒(ms)需要处理的数据包个数为833个左右,具体计算方式是10,000,000,000/8/1500/1000=833。如果通信方式是TCP方式,典型配置下的上行TCP反馈信息(ACK)数量为417个。因此,对于下行峰值TCP业务来说1ms需要处理的数据包个数为833+417=1250个。
目前,通信设备内部的多个处理内核都处理的是长度较小的数据,因此,通信设备1ms的时间需要处理的数据个数累计为1250*n个,n为通信设备内需要处理数据的处理内核的数量。其中,每一个数据都需要占用CPU或者软硬件加速器的处理,增加各个处理内核的处理负荷,并且超出了通信设备的最大处理能力,严重时会出现数据丢失的问题。
基于此,本申请实施例提供一种数据传输方法,可以应用于具有多核处理器的第一通信设备内的第一处理内核中,第一处理内核可以是通信设备多个处理内核的任意一个。具体地,在第一处理内核与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据的情况下,第一处理内核可以基于第一MTU长度在第一传输路径上传输核间数据,第二处理内核可以用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,第一MTU长度大于该适配通信网络的MTU长度。也就是说,在跨核通信时,可以使用大于适配通信网络的MTU长度来传输核间数据,核间数据传输到第二处理内核时才基于适配通信网络的MTU长度执行卸载操作,在一定程度上减少了数据处理负荷,同时处理性能大幅度提升,处理内核的功耗和成本随之降低。
为便于理解本申请实施例的技术方案,以下通过具体实施例详述本申请的技术方案。以上相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。本申请实施例包括以下内容中的至少部分内容。
本申请一实施例提供一种数据传输方法,参考图8所示,本申请实施例提供的数据传输方法包括以下步骤。
步骤110、在第一处理内核与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据的情况下,第一处理内核基于第一MTU长度在第一传输路径上传输核间数据,第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,第一MTU长度大于适配通信网络的MTU长度。
本申请实施例提供的数据传输方法可以应用于第一通信设备中的第一处理内核。其中,第一通信设备可以是通信网络中的一个数据传输节点,例如终端设备、可穿戴设备、基站、核心网网元、应用服务器等独立的实体设备,本申请实施例对此不做限制。
在本申请实施例中,第一通信设备可以包括多个处理内核。应理解,处理内核可以是指能生产、使用、处理、或者存储数据等功能的处理器,例如处理内核可以是图像处理器、视频处理器、GPU、NPU、AP、数据存储器、射频处理器、调制解调器等,本申请实施例对此不做限制。
处理内核按照类型可以分为数据生产内核、数据消费内核、数据收发机、数据存储器等。示例性的,数据生产内核可以包括AP。数据处理内核可以包括图像处理器、视频处理器、GPU、NPU等。数据收发机可以包括射频处理器、WiFi模块、调制解调器等,本申请实施例对此不做限制。
其中,第一通信设备可以通过数据生产内核(例如AP)产生数据,将产生的数据通过多个处理内核(例如视频处理器、NPU、GPU等)进行处理,最终存储到数据存储器中,或者最终通过数据收发机发送给其他通信设备。
除此之外,第一通信设备也可以通过数据收发机接收其他通信设备发送的数据,并将接收到的数据通过多个处理内核(例如视频处理器、NPU、GPU等)进行处理,最终存储到数据存储器中。
本申请实施例中,在多个处理内核之间传输的数据可以称为核间数据。核间数据在第一通信设备内传输时可以历经多个处理内核。示例性的,在图像采集以及图像处理场景中,可以通过AP获取图像,AP可以将获取的图像传输给图像处理器进行白平衡、过滤等不同的图像处理,经过图像处理后的图像可以传输到射频处理器,这样,射频处理器可以向通信网络中的其他通信设备发送经过图像处理后得到的图像。
其中,第一处理内核和第二处理内核可以是核间数据传输路径中任意两个不同的处理内核。核间数据在传输过程中可以历经第一处理内核和第二处理内核。应理解,核间数据从第一处理内核传输到第二处理内核,或者从第二处理内核传输到第一处理内核经过的传输路径可以是上述实施例中的第一传输路径。
需要说明的是,第一传输路径可以是核间数据传输路径中的部分路径或者全部路径,本申请实施例对此不做限制。其中,第一处理内核和第二处理内核可以是第一传输路径的起点或者终点。示例性的,在图像采集以及图像处理场景中,第一传输路径可以包括图像从AP到图像处理器,再到射频处理器之间的路径。第一传输路径也可以包括图像从射频处理器到AP之间的路径。
实际应用中,通信设备内部的多个处理内核进行数据传输时均使用缺省的MTU进行数据传输。应理解,处理内核基于缺省的MTU长度对核间数据进行卸载,会导致核间通信效率较低的问题。
本申请实施例中,在第一处理内核确定其与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据的情况下,第一处理内核可以直接以第一MTU长度向第一传输路径中的下一个处理内核发送核间传输,或者接收来自第一传输路径的核间数据。
另外,核间数据经过第一传输路径到第二处理内核,要离开第一传输路径的情况下,第二处理内核可以基于适配通信网络的MTU长度,对第一传输路径上接收到的核间数据进行数据卸载。这里的数据卸载可以是指对核间数据进行拆分和/或合并处理,例如,数据卸载可以是将较大的MTU长度的核间数据拆分为较小的MTU长度的数据包。
可选地,数据卸载可以包括GSO、GRO、TSO、LRO中的任意一种,本申请实施例对此不做限制。
第一MTU长度可以大于上述适配通信网络的MTU长度。适配通信网络的MTU长度可以是指通信网络中各个通信设备之间数据传输时所需满足的MTU长度。例如,第一通信设备与第二通信设备传输时所需满足的MTU长度。
可选地,适配通信网络的MTU长度可以是上述实施例描述的缺省的MTU长度,适配通信网络的MTU长度也可以是网络中多个通信设备均支持传输的MTU长度,本申请实施例对此不做限制。
示例性的,适配通信网络的MTU长度可以为数据有效负载为IEEE 802.3标准规定的1500字节。在第一通信设备和通信网络中的其他通信设备均支持传输某MTU长度,则适配通信网络的MTU长度可以是网络中各通信设备均支持传输的MTU长度。
需要说明的是,第一MTU长度可以是预定义的长度,例如第一MTU长度可以是应用层数据包(也可以称为IP报文)的最大长度,即65,495字节。此外,第一MTU长度也可以多个处理内核进行协商确定的长度,本申请实施例对此不做限制。
应理解,核间数据以第一MTU长度在第一传输路径中传输,可以是指在第一传输路径中传输的各个核间数据的长度不大于第一MTU长度。第一传输路径中,除了第二处理内核之外的其他处理内核,无需对第一传输路径上所传输的长度不大于第一MTU长度的核间数据进行卸载,仅第二处理内核基于适配通信网络的MTU长度对第一传输路径上传输的核间数据进行数据卸载操作。这样,离开第一传输路径的核间数据能够以适配通信网络的MTU长度进行传输,保证第一通信设备的核间数据正确传输。
需要说明的是,第一通信设备中的第二处理内核可以是数据收发机。第二处理内核可以在将核间数据真正发送出第一通信设备之前执行数据卸载操作,如此,降低了第一通信路径中的各个处理内核的负荷,提升核间通信的性能,以及降低多个处理内核的功耗和设计成本。
示例性的,在第一通信设备向第二通信设备传输采集到的视频的场景中,视频从第一通信设备的AP传输到视频处理器,再从视频处理器传输至射频处理器,最终通过射频处理器发送给第二通信设备。AP、视频处理器和射频处理器之间可以构成第一传输路径。AP、视频处理器和射频处理器之间可以基于应用层数据包的最大长度65,495字节(即第一MTU长度)传输视频。在视频真正发送出第一通信设备之前,射频处理器可以基于缺省的1500字节长度对视频进行数据卸载。如此,AP、视频处理器以及射频处理器的处理负荷有效减少,性能会得到大幅度提升,相应的功耗和成本也会降低很多。
综上所述,本申请实施例可以应用于通信设备中的跨核通信,使用大于适配通信网络的MTU长度在多个处理内核之间传递数据,这样,处理内核之间可以传递更大的数据长度,在一定程度上减少了包头的处理量,提高了核间数据的处理效率,降低处理内核的功耗和成本,同时处理内核也有更多处理能力来处理其他数据,处理性能大幅度提升。
在本申请一实施例中,第一MTU长度可以为应用层数据的最大长度。需要说明的是,应用层在使用TCP/IP作为传输协议的情况下,应用层数据的最大长度可以是65,495字节。除此之外,若应用层不使用TCP/IP作为传输协议,而使用专有协议,此时,应用层数据的长度可以不受TCP/IP的65,495字节限制,用于核间通信的第一MTU长度可以设置为更大的长度,可以进一步提高数据跨核通信的通信效率。
在本申请一实施例中,第一处理内核与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据,可以包括:第一传输路径中每个处理内核支持传输的最大MTU长度皆大于或等于第一MTU长度。
应理解,第一传输路径中每个处理内核支持传输的最大MTU长度可以不同。只要第一传输路径中每个节点支持传输的最大MTU长度均大于第一MTU长度,则可以认为第一传输路径支持传输第一MTU长度的核间数据。
在本申请一实施例中,参考图9所示,本申请实施例提供的数据传输方法还可以包括以下步骤:
步骤1001、第一处理内核接收第一传输路径上其他处理内核分别发送的能力信息,能力信息用于指示发送能力信息的处理内核支持传输的最大MTU长度;
步骤1002、第一处理内核基于能力信息确定第一MTU长度。
可以理解的是,第一通信设备中各个处理内核之间可以相互传输能力信息,每个处理内核可以通过能力信息告知其他处理内核自己支持传输的最大MTU长度。
可选地,第一通信设备中的多个处理内核可以直接连接,也可以通过通信总线连接,本申请实施例对此不做限制。处理内核之间可以直接交互各自的能力信息,也可以通过其他处理内核转发能力信息,本申请实施例对此也不做限制。
这样,第一处理内核可以根据第一传输路径上其他处理内核支持传输的最大MTU长度,来确定第一传输路径支持传输的第一MTU长度。
本申请实施例中,第一MTU长度可以是第一传输路径上所有处理内核支持传输的最大MTU长度中最小值。也就是说,第一传输路径中每个处理内核支持传输的最大MTU长度均大于第一MTU长度,则第一处理内核可以确定第一传输路径支持传输第一MTU长度。
示例性的,第一传输路径上可以包括处理内核A、处理内核B和处理内核C。处理内核A支持传输的最大MTU长度为65,495字节,处理内核B支持传输的最大MTU长度为9000字节,处理内核C支持传输的最大MTU长度为1500字节。这样,处理内核A、处理内核B和处理内核C可以确定第一传输路径支持传输的第一MTU长度为1500字节。
需要说明的是,第一传输路径上的多个处理内核可以动态更新第一MTU长度。也就是说,第一MTU长度并不是固定不变的,而是可以实时变化的。可选地,第一传输路径上的每个处理内核可以根据当前的实时负载来决定自己支持的最大MTU长度,并且,每个处理内核可以按照一定的时间周期将自己当前支持的最大MTU长度通过能力信息发送给其他处理内核。如此,第一传输路径上的多个处理内核可以根据能力信息来更新第一MTU长度。
应理解,步骤1001和步骤1002可以在步骤110之前执行,也可以在步骤110之后执行,本申请实施例对此不做限制。步骤1001和步骤1002在步骤110之后执行,可以用于更新第一传输路径支持的第一MTU长度。
需要说明的是,本申请实施例中除了根据处理内核支持的最大MTU长度来确定第一MTU长度的方式之外,还可以结合核间数据的应用场景来确定第一MTU长度。以下详细介绍基于核间数据的应用场景确定第一MTU长度的方法。
在一种可能的实现方式中,在第一处理内核的类型为数据生产内核或数据消费内核的情况下,第一处理内核可以根据核间数据的应用场景,确定第一MTU长度。
其中,应用场景可以理解为数据的使用场景。可选地,应用场景可以包括换机场景、应用程序更新场景、通话场景、直播场景、短信传输场景等,本申请实施例对此不做限制。
可选地,第一处理内核可以根据应用场景与MTU长度之间的对应关系,确定当前核间数据的应用场景对应的MTU长度,得到第一MTU长度。其中,该对应关系可以是预定义的,也可以是根据实际经验确定的。
示例性的,在换机场景中,由于需要进行传输的数据量较大,因此,在换机场景中,第一处理内核可以设置第一MTU长度为65,535字节。在应用程序更新场景中,由于需要进行传输的数据量较大,因此,在应用程序更新场景中,第一处理内核可以设置第一MTU长度为65,535字节。在通话场景和短信传输场景中,数据量较少,第一处理内核可以设置第一MTU长度为1500字节。
需要说明的是,为了保证核间数据的正常传输,第一MTU长度需要小于或等于第一传输路径上所有处理内核支持传输的最大MTU长度中最小值。基于此,在第一处理内核的类型为数据生产内核或数据消费内核的情况下,第一处理内核可以根据核间数据的应用场景,以及第一传输路径上其他处理内核分别发送的能力信息,确定第一MTU长度。
其中,第一处理内核可以根据第一传输路径上其他处理内核分别发送的能力信息,确定第一传输路径上所有处理内核支持传输的最大MTU长度中最小值。与此同时,第一处理内核可以根据核间数据的应用场景,确定第一传输路径的初始MTU长度。若初始MTU长度大于等于第一传输路径上所有处理内核支持传输的最大MTU长度中最小值,则第一处理内核可以将所有处理内核支持传输的最大MTU长度中最小值作为第一MTU长度。若初始MTU长度小于第一传输径上所有处理内核支持传输的最大MTU长度中最小值,则第一处理内核可以将初始MTU长度确定为第一MTU长度。以此保证核间数据在第一传输路径上的正常传输。
应理解,第一传输路径中的数据生产内核或数据消费内核确定出第一MTU长度之后,可以向第一传输路径中的其他处理内核发送第一配置信息,通过第一配置信息告知第一MTU长度。这样,第一传输路径中的各个处理内核可以根据第一MTU长度进行核间数据的传输。
在另一种可能的实现方式中,在第一处理内核为其他类型的处理内核的情况下,第一处理内核可以根据接收到的第一配置信息,确定第一MTU长度。
也就是说,若第一处理内核为除数据生产内核或数据消费内核之外的其他类型的处理内核,则可以接收数据生产内核或数据消费内核发送的第一配置信息,基于第一配置信息确定第一MTU长度。
应理解,发送第一配置信息的处理内核可以根据核间数据的应用场景确定对应的第一MTU长度,确定的方式与上述实施例描述的方式相同,为了简洁,此处不再赘述。
在一些实施例中,通信设备的多个处理内核可以通过第一配置信息来协商第一MTU长度。数据生产内核或数据消费内核可以根据核间数据的应用场景确定第一MTU长度。数据生产内核或数据消费内核可以将确定出的第一MTU长度通过第一配置信息发送给通信设备中其他处理内核。这样,其他内核根据自身的能力以及当前的负载,确定是否同意根据第一MTU长度进行核间数据传输。若同意该第一MTU长度,则可以向发送第一配置信息的处理内核反馈第一确认信息,指示可以使用第一MTU长度进行核间数据传输。若不同意根据该第一MTU长度进行核间数据传输,则第一处理内核可以向发送第一配置信息的处理内核发送第二确认信息或者不发送第二确认信息,以指示不支持传输第一MTU长度的核间数据。
综上所述,本申请实施例提供的数据传输方法,处理内核可以根据应用场景灵活调整核间数据传输使用的第一MTU长度,保证不同应用场景下核间数据的高速高效传输。
在本申请一实施例中,上述步骤110中第一处理内核基于第一MTU长度在第一传输路径上传输核间数据,可以通过以下步骤来实现:
第一处理内核在第一传输路径上发送第一核间数据,第一核间数据的长度不大于第一MTU长度。
需要说明的是,第一处理内核可以产生核间数据,也可以从除第一传输路径中各处理内核之外的其他处理内核接收核间数据。示例性的,若第一处理内核为数据生产者,则第一处理内核可以自主产生核间数据。若第一处理内核为其他类型的处理内核,则第一处理内核可以接收其他处理内核发送的核间数据。
本申请实施例中,将第一处理内核自己产生的核间数据或者从其他处理内核接收的核间数据记为第二核间数据。第一处理内核可以对第二核间数据进行卸载处理,将第二核间数据以第一MTU长度向第一传输路径上的处理内核进行发送。具体地,第一传输路径支持传输第一MTU长度的核间数据。因此,在第一处理内核获取到第二核间数据后,可以基于第一MTU长度,对第二核间数据进行数据卸载。也就是说,第一处理内核可以将第二核间数据进行拆分和/或合并处理,得到第一核间数据。
在本申请一实施例中,参考图10所示,步骤110中第一处理内核基于第一MTU长度在第一传输路径上传输核间数据,还可以通过以下步骤来实现:
步骤1101、第一处理内核基于每种应用的缓存处理参数和第一MTU长度,对第二核间数据中每种应用对应的数据进行数据卸载,得到第一核间数据;缓存处理参数包括缓存数据门限值和/或缓存时间门限值;
步骤1102、第一处理内核在第一传输路径上发送第一核间数据。
需要说明的是,第一MTU长度的配置需要在操作系统初始化时完成。也就是说,第一MTU长度的设置是在每次启动通信设备时完成。由于在数据处理过程中,每个处理内核都需要根据MTU长度进行传输,导致较多的数据中断操作。实际应用中,每个处理内核中均包括缓存空间,用于存储待传输的核间数据。基于此,可以为每个处理内核设置缓存处理参数。在缓存处理参数满足一定的条件时,第一处理内核从缓存中读取待传输数据并发送。
应理解,第一MTU长度为硬件设置参数,缓存处理参数为软件设置参数。硬件设置参数仅在初始化时完成设置,而软件设置参数可以实时调整。也就是说,在数据传输场景发生变化时,作为硬件设置参数的第一MTU长度无法及时作出改变,因此,本申请实施例引入了缓存处理参数,可以根据数据传输需求及时调整缓存处理参数。
本申请实施例中,缓存处理参数可以包括缓存数据门限值和/或缓存时间门限值。当缓存处理参数包括缓存数据门限值时,处理内核只有在缓存中存储的数据量超过缓存数据门限值时,才将缓存中的数据发出。当缓存处理参数仅包括缓存时间门限值时,处理内核在数据在缓存中存储的时间超过缓存时间门限值时,才将缓存中的数据发出。当缓存处理参数包括缓存数据门限值和缓存时间门限值时,在缓存数据的数据量达到缓存数据门限值,和数据存储的时间超过缓存时间门限值中任意一个被满足,处理内核即可将缓存中的数据发出。
需要说明的是,不同的应用所产生的数据具有不同的传输需求。示例性的,即时通信类的应用对数据传输的时延要求较高,需要数据及时传输。应用商城类的应用可以提供各种应用的下载和更新,应用的下载和更新对时延要求不敏感,并不需要数据及时传输。
基于此,缓存处理参数可以与应用关联,不同类型的应用缓存处理参数可以不同,每种应用可以关联一个缓存处理参数。通过为每种应用设置对应的缓存处理参数,可以满足不同应用的数据传输需求。
应理解,处理内核之间传输的核间数据可以包括不同应用的数据。因此,第一处理内核在第一传输路径上传输核间数据时,可以基于每种应用的缓存处理参数和第一MTU长度,对第二核间数据进行数据卸载处理,得到第一核间数据。
在一些实施例中,步骤1101中每种应用的缓存处理参数可以基于每种应用对传输时延的需求确定。在一种可能的实现方式中,对于对时延敏感的应用,例如通话应用或者直播应用,可以为该应用设置较小的缓存数据门限值和缓存时间门限。
示例性的,视频聊天应用对时延十分敏感,可以将视频聊天应用的缓存数据门限值设置为100字节、缓存时间门限设置为0ms。这样,在视频聊天应用产生的数据在每个处理内核中会立刻发送和接收,而不会等到达到第一MTU长度后再进行发送和接收,从而提高通信的实时性。
在另一种可能的实现方式中,对于对时延不敏感的应用,例如换机应用或者程序应用等,可以为该应用设置较大的缓存数据门限值和缓存时间门限。
示例性的,针对应用商场类的应用(对时延不敏感),可以设置缓存数据门限为大于第一MTU长度的大小。例如,缓存数据门限值可以设置为第一MTU长度的两倍。另外,针对应用商场类的应用,可以设置时间门限为1000ms或者无穷大,从而减少操作系统中断的次数、以及递交给操作系统的数据包数量等,进一步提升通信设备内部核间数据的处理效率。
在又一种可能的实现方式中,对于时延要求不高,且速率也不高的应用,缓存数据增长较慢,可以把缓存时间门限值设置为100ms,这样即使该应用的缓存数据量没有达到65,535字节,但是,处理内核会在接收到第一个数据的100ms以后及时的把数据传输给其他处理内核进行处理。
在一些实施例中,在第一处理内核为数据生产内核或数据消费内核的情况下,第一处理内核可以基于每种应用的时延需求,确定每种应用的缓存处理参数。
需要说明的是,第一处理内核确定了每种应用的缓存处理参数之后,还可以将得到的缓存处理参数发送给第一传输路径中的其他处理内核,以便于其他处理内核根据该缓存处理参数进行数据传输。
可选地,第一处理内核可以向第一传输路径中的其他处理内核发送第二配置信息,第二配置信息可以携带每种应用的缓存处理参数。也就是说,第一处理内核确定了每种应用的缓存处理参数后,通过第二配置信息将每种应用的缓存处理参数告知给第一传输路径中的其他处理内核。这样,第一传输路径中的其他处理内核可以基于每种应用的缓存处理参数处理第一传输路径上传输的核间数据。
需要说明的是,第二配置信息与上述实施例中的第一配置信息可以为同一个配置信息,也可以为不同的配置信息,本申请实施例对此不做限制。
在一些实施例中,在第一处理内核为除了数据生产内核和数据消费内核之外的其他类型的处理内核的情况下,第一处理内核可以接收其他处理内核发送的第二配置信息,根据第二配置信息确定每种应用的缓存处理参数。
在一些实施例中,步骤1101中基于每种应用的缓存处理参数和第一MTU长度,对第二核间数据中每种应用对应的数据进行数据卸载,得到第一核间数据,可以通过以下方式实现:
若每种应用对应的数据在第一处理内核缓存中存储的时间等于应用的缓存时间门限值,和/或,第一处理内核缓存中存储的每种应用对应数据的数据量等于所述缓存数据门限值,则基于第一MTU长度对每种应用对应的数据进行数据卸载,得到每种应用对应的卸载数据;第一核间数据包括多种应用中每种应用对应的卸载数据。
应理解,第二核间数据中包括多种应用对应的数据。第一处理内核可以根据每种应用的缓存时间门限值和/或缓存数据门限值,对第二核间数据中的每种应用对应的数据进行数据卸载。
需要说明的是,在某个应用对应的数据在第一处理内核的存储时间等于该应用的缓存时间门限,和/或,第一处理内核缓存中存储的该应用对应数据的数据量等于所述缓存数据门限值时,若该应用对应的数据长度大于第一MTU长度,则第一处理内核需要基于第一MTU长度对每种应用对应的数据进行卸载,使得卸载后得到的第一核间数据的长度均小于或等于第一MTU长度。另外,若该应用对应的数据长度小于或等于第一MTU长度,则第一处理内核可以直接将该应用对应的数据作为第一核间数据向第一传输路径中的其他处理内核发送。
示例性的,第一MTU长度在通信设备初始化时设置为65,535字节。其中,对于应用商城类的应用,设置缓存数据门限值为131,070字节(第一MTU长度的两倍),时间门限设置为1000ms。这样,第一处理内核可以在该类应用的缓存数据量达到131,070字节后,基于第一MTU长度将缓存数据卸载为两个65,535字节的核间数据传输给其他处理内核。如此,减少操作系统中断的次数、以及递交给操作系统的报文次数等,进一步提升内部全链路的处理效率。另外,对于直播应用,设置缓存数据门限值为1500字节,时间门限值设置为0ms。这样,第一处理内核可以在直播应用的缓存数据达到1500字节后立即向第一传输路径中的其他处理内核发送。需要说明的是,由于1500字节小于第一MTU长度,则第一处理内核可以不对缓存数据进行卸载,直接将缓存数据传输给他处理内核。从而提高通信的实时性,满足不同应用的用户体验。
基于上述实施例,在本申请一实施例中,参考图11所示,步骤110中第一处理内核基于第一MTU长度在第一传输路径上传输核间数据,还可以通过以下方式实现:
步骤1103、在第一传输路径上接收第三核间数据,第三核间数据的长度不大于第一MTU长度。
应理解,第一处理内核可以在第一传输路径上发送核间数据,也可以在第一传输路径上接收核间数据。其中,第一处理内核在第一传输路径上发送数据包详见上述实施例中的描述,为了简洁,此处不再赘述。
本申请实施例中,第一处理内核可以在第一传输路径上接收第三核间数据。应理解,由于第一传输路径可以支持传输第一MTU长度的核间数据,因此,在第一传输路径上传输的第三核间数据的长度可以小于或等于第一MTU长度。
在一些实施例中,第一处理内核和第三处理内核还可以构成第二传输路径。其中,第三处理内核与第一传输路径包括的各个处理内核均不相同。也就是说,第三处理内核不是第一传输路径中的任意一个处理内核,第一处理内核可以与第一传输路径中各个处理内核之外的其他处理内核构成第二传输路径。
示例性的,在第一通信设备接收第二通信设备发送的视频的场景中,射频处理器接收第二通信设备发送的视频,射频处理器将视频传输给视频处理器,经过视频处理器处理之后,视频传输到存储处理器中进行存储。之后,AP可以从存储处理器读取该视频,通过显示屏为用户展示。第一传输路径可以包括射频处理器、视频处理器和存储处理器。第二传输路径可以包括存储处理器和AP。
本申请实施例中,第二传输路径可以支持传输第二MTU长度的核间数据。第二传输路径支持传输第二MTU长度的核间数据是指,第二传输路径中每个处理内核支持传输的MTU长度皆大于或等于第二MTU长度。
其中,第二MTU长度可以与第一MTU长度不同,第二MTU长度可以大于第一MTU长度,也可以小于第一MTU长度,本申请实施例对此不做限制。
另外,第二MTU长度可以与上述实施例中适配通信网络的MTU长度相同,也可以与适配通信网络的MTU长度不同,本申请实施例对此不做限制。
基于上述实施例,在本申请一实施例中,参考图11所示,本申请实施例提供的数据传输方法还可以包括以下步骤:
步骤120、基于第二MTU长度对第三核间数据进行数据卸载,得到第四核间数据;
步骤130、在第二传输路径上发送第四核间数据。
应理解,第一处理内核可以将第一传输路径上接收到的核间数据通过第二传输路径发送给第三处理内核。
其中,由于第二传输路径支持传输的MTU长度为第二MTU长度,且第二MTU长度与第一传输路径支持传输的第一MTU长度不同。因此,第一节点在第一传输路径上接收到第三核间数据后,需要将第三核间数据进行数据卸载,得到符合第二传输路径要求的数据大小后,才能实现在第二传输路径上的传输。
应理解,第一处理内核接收到第三核间数据后,可以基于第二MTU长度对第三核间数据进行数据卸载,也就是说,第一处理内核可以对第三核间数据进行合并和/或拆包处理,卸载后得到的第四核间数据的长度小于或等于第二MTU长度。
示例性的,在第一通信设备接收第二通信设备发送的视频的场景中,射频处理器接收第二通信设备发送的视频,射频处理器将视频传输给视频处理器,经过视频处理器处理之后,视频传输到存储处理器中进行存储。之后,AP可以从存储处理器读取该视频,通过显示屏为用户展示该视频。第一传输路径可以包括射频处理器、视频处理器和存储处理器。其中,第一传输路径支持传输的核间数据大小为65,535字节。第一传输路径上传输的核间数据的大小均小于或等于65,535字节。另外,第二传输路径可以包括存储处理器和AP。第二传输路径支持传输的核间数据大小为1500字节。存储处理器接在第一传输路径上接收到视频数据后,可以将视频数据进行数据卸载,数据卸载后的每个视频数据大小均小于或等于1500字节。
综上所述,本申请实施例提供的数据传输方法,可以提高第一传输路径中各个节点传输的MTU长度,进一步提高CPU和各种软硬件报文加速器的处理性能,甚至可以提高处理性能增益,降低通信设备的功耗和芯片成本。
基于上述相同的发明构思,本申请另一实施例还提供一种数据传输方法,参考图12所示,本申请实施例提供的数据传输方法包括以下步骤:
步骤210、在第一处理内核与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据的情况下,第二处理内核基于第一MTU长度在第一传输路径上传输核间数据;
步骤220、基于适配通信网络的MTU长度卸载接收到的核间数据。
本申请实施例提供的数据传输方法可以应用于第一通信设备中的第二处理内核。第二处理内核可以是第一通信设备与外部通信设备的传输端口,可以理解的是,在第二处理内核接收到来自第一传输路径的核间数据后,可以将该核间数据传输给外部通信设备。
在一些实施例中,第二处理内核可以是射频处理器、WiFi模块、或者调制解调模块等数据收发机,本申请实施例对此不做限制。
本申请实施例中,核间数据经过第一传输路径到第二处理内核,要离开第一传输路径的情况下,第二处理内核可以基于适配通信网络的MTU长度,对第一传输路径上接收到的核间数据进行数据卸载。具体地,第二处理内核可以基于适配通信网络的MTU长度对接收到的核间数据进行数据卸载的分段处理,以得到至少一个数据包,并将至少一个数据包发送给外部通信设备。
其中,适配通信网络的MTU长度可以是指通信网络中各个通信设备之间数据传输时所需满足的MTU长度,或者,通信网络中各个通信设备缺省的数据传输的MTU长度,例如1500字节。
第二处理内核可以在将核间数据真正发送出第一通信设备之前执行数据卸载操作,如此,降低了第一通信路径中的各个处理内核的负荷,提升核间通信的性能,以及降低多个处理内核的功耗和设计成本。
在本申请实施例中,第一MTU长度可以为应用层数据的最大长度。需要说明的是,应用层在使用TCP/IP作为传输协议的情况下,应用层数据的最大长度可以是65,495字节。除此之外,若应用层不使用TCP/IP作为传输协议,而使用私有协议,此时,应用层数据的长度可以不受TCP/IP的65,495字节限制,用于核间通信的第一MTU长度可以设置为更大的长度,可以进一步提高数据跨核通信的通信效率。
可以理解的是,在核间通信过程中,本申请实施例提供的数据传输方法可以增大MTU长度最大到应用层最大数据包长度,并将数据卸载操作延迟到跨核后的收发机中,有效降低了在峰值速率要求下,数据收发时对内核处理能力的要求,也有效降低了处理内核的功耗和面积,有效的利用了现有收发器的峰值处理能力资源。
可选地,由于空口数据传输的限制,以及其他通信设备硬件限制,第二处理内核可以基于适配通信网络的MTU长度对第一传输路径上接收到的核间数据进行卸载处理。也就是说,本申请实施例提供的数据传输方法可以细分出内部核间通信的MTU长度(即第一MTU长度)和对外通信的MTU长度(即适配通信网络的MTU长度)。从而兼顾通信设备内部核跨核通信效率,以及兼容通信设备外部各种MTU长度的通信设备。实现了对内兼容性和对外兼容性。
在本申请一实施例中,第一传输路径中每个处理内核支持传输的最大MTU长度皆大于或等于第一MTU长度。
应理解,第一传输路径中每个处理内核支持传输的最大MTU长度可以不同。只要第一传输路径中每个节点支持传输的最大MTU长度均大于第一MTU长度,则可以认为第一传输路径支持传输第一MTU长度的核间数据。
在本申请实施例中,第二处理内核可以接收数据生产内核或数据消费内核发送的第一配置信息,第一配置信息用于指示第一MTU长度。也就是说,第二处理内核可以基于第一配置信息确定第一传输路径支持传输的第一MTU长度。以便于第二处理内核可以基于第一MTU长度在在第一传输路径上传输核间数据。
需要说明的是,第二处理内核基于第一MTU长度在第一传输路径上传输核间数据,可以是,第二处理内核基于第一MTU长度接收来自第一传输路径上的核间数据,也可以是,第二处理内核从通信网络接收网络数据包,将接收到的网络数据包以第一MTU长度通过第一传输路径传输给其他处理内核。以下详细介绍第二处理内核的数据传输。
在本申请一实施例中,第二处理内核可以在第一传输路径上接收第一核间数据,第一核间数据的长度不大于第一MTU长度。
应理解,第二处理内核可以接收第一传输路径上其他处理内核发送的第一核间数据。由于第一传输路径支持传输的MTU长度为第一MTU长度,因此,在第一传输路径上传输的第一核间数据的长度皆小于或等于第一MTU长度。
本申请实施例中,第二处理内核接收到第一核间数据后,可以将基于适配通信网络的MTU长度卸载接收到的第一核间数据。
在一些实施例中,步骤220中基于适配通信网络的MTU长度卸载接收到的核间数据,还可以通过以下方式实现:
步骤2201、基于每种应用的缓存处理参数和适配通信网络的MTU长度,对接收到的第一核间数据中每种应用对应的数据进行数据卸载,得到第一网络数据包;缓存处理参数包括缓存数据门限值和/或缓存时间门限值。
应理解,第一MTU长度为硬件设置参数,缓存处理参数为软件设置参数。硬件设置参数仅在初始化时完成设置,而软件设置参数可以实时调整。也就是说,在数据传输场景发生变化时,作为硬件设置参数的第一MTU长度无法及时作出改变,因此,本申请实施例引入了缓存处理参数,可以根据数据传输需求及时调整缓存处理参数。
本申请实施例中,缓存处理参数可以包括缓存数据门限值和/或缓存时间门限值。当缓存处理参数包括缓存数据门限值时,处理内核只有在缓存中存储的数据量超过缓存数据门限值时,才将缓存中的数据发出。当缓存处理参数仅包括缓存时间门限值时,处理内核在数据在缓存中存储的时间超过缓存时间门限值时,才将缓存中的数据发出。当缓存处理参数包括缓存数据门限值和缓存时间门限值时,在缓存数据的数据量达到缓存数据门限值,和数据存储的时间超过缓存时间门限值中任意一个被满足,处理内核即可将缓存中的数据发出。
需要说明的是,不同的应用所产生的数据具有不同的传输需求。示例性的,即时通信类的应用对数据传输的时延要求较高,需要数据及时传输。应用商城类的应用可以提供各种应用的下载和更新,应用的下载和更新对时延要求不敏感,并不需要数据及时传输。
基于此,缓存处理参数可以与应用关联,不同类型的应用缓存处理参数可以不同,每种应用可以关联一个缓存处理参数。通过为每种应用设置对应的缓存处理参数,可以满足不同应用的数据传输需求。
应理解,处理内核之间传输的核间数据可以包括不同应用的数据。因此,第一处理内核在第一传输路径上传输核间数据时,可以基于每种应用的缓存处理参数和第一MTU长度,对第二核间数据进行数据卸载处理,得到第一核间数据。
在一些实施例中,步骤2201中每种应用的缓存处理参数可以基于每种应用对传输时延的需求确定。
在一种可能的实现方式中,对于对时延敏感的应用,例如通话应用或者直播应用,可以为该应用设置较小的缓存数据门限值和缓存时间门限。
示例性的,视频聊天应用对时延十分敏感,可以将视频聊天应用的缓存数据门限值设置为100字节、缓存时间门限设置为0ms。这样,在视频聊天应用产生的数据在每个处理内核中会立刻发送和接收,而不会等到达到第一MTU长度后再进行发送和接收,从而提高通信的实时性。
在另一种可能的实现方式中,对于对时延不敏感的应用,例如换机应用或者程序应用等,可以为该应用设置较大的缓存数据门限值和缓存时间门限。
示例性的,针对应用商场类的应用(对时延不敏感),可以设置缓存数据门限为大于第一MTU长度的大小。例如,缓存数据门限值可以设置为第一MTU长度的两倍。另外,针对应用商场类的应用,可以设置时间门限为1000ms或者无穷大,从而减少操作系统中断的次数、以及递交给操作系统的数据包数量等,进一步提升通信设备内部核间数据的处理效率。
在又一种可能的实现方式中,对于时延要求不高,且速率也不高的应用,缓存数据增长较慢,可以把缓存时间门限值设置为100ms,这样即使该应用的缓存数据量没有达到65,535字节,但是,处理内核会在接收到第一个数据的100ms以后及时的把数据传输给其他处理内核进行处理。
可选地,第二处理内核可以接收数据生产内核或数据消费内核发送的第二配置信息,通过第二配置信息确定每种应用的缓存处理参数。以便于基于每种应用的缓存处理参数卸载处理接收到的第一核间数据。
需要说明的是,第二配置信息与上述实施例中的第一配置信息可以为同一个配置信息,也可以为不同的配置信息,本申请实施例对此不做限制。
在一些实施例中,步骤2201中基于每种应用的缓存处理参数和所述适配通信网络的MTU长度,对接收到的第一核间数据中每种应用对应的数据进行数据卸载,得到第一网络数据包,可以通过以下方式实现:
若每种应用对应的数据在第二处理内核缓存中存储的时间等于应用的缓存时间门限值,和/或,第二处理内核缓存中存储的每种应用对应数据的数据量等于缓存数据门限值,则基于适配通信网络的MTU长度对每种应用对应的数据进行数据卸载,得到每种应用对应的卸载数据;
第一网络数据包包括多种应用中每种应用对应的卸载数据。
应理解,第一传输路径上传输的第一核间数据中可以包括多种应用对应的数据。第二处理内核可以根据每种应用的缓存时间门限值和/或缓存数据门限值,对第一核间数据中的每种应用进行数据卸载。
需要说明的是,在某个应用对应的数据在第二处理内核的存储时间等于该应用的缓存时间门限,和/或,第一处理内核缓存中存储的该应用对应数据的数据量等于所述缓存数据门限值时,若该应用对应的数据长度大于适配通信网络的MTU长度,则第二处理内核需要基于第一MTU长度对每种应用对应的数据进行卸载,使得卸载后得到的第一网络数据包的长度均小于或等于适配通信网络的MTU长度。另外,若该应用对应的数据长度小于或等于适配通信网络的MTU长度,则第二处理内核可以直接将该应用对应的数据作为第一网络数据包。
进一步地,第二处理内核得到第一网络数据包后,可以将第一网络数据包发送给通信网络中的其他通信设备。
示例性的,适配通信网络的MTU长度设置为9000字节。其中,对于应用商城类的应用,设置缓存数据门限值为131,070字节(第一MTU长度的两倍),时间门限设置为1000ms。这样,第二处理内核可以在该类应用的缓存数据量达到131,070字节后,将缓存数据分段为8个长度不大于9000字节的第一网络数据包。如此,减少操作系统中断的次数、以及递交给操作系统的报文次数等,进一步提升内部全链路的处理效率。另外,对于直播应用,设置缓存数据门限值为1500字节,时间门限值设置为0ms。这样,第二处理内核可以在直播应用的缓存数据达到1500字节后,将1500字节的缓存数据作为第一网络数据包。需要说明的是,由于1500字节小于适配通信网络的MTU长度,则第一处理内核可以不对缓存数据进行卸载,直接将缓存数据作为第一网络数据包。从而提高通信的实时性,满足不同应用的用户体验。
在本申请一实施例中,除了上述卸载方式,第二处理内核还可以基于通信网络中的多个通信设备支持的MTU长度,来进行数据卸载,得到第一网络数据包。具体地,第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,还可以通过以下方式实现:
在第二处理内核所属的第一通信设备与第二通信设备之间的第三传输路径支持传输适配通信网络的MTU长度的数据包的情况下,第二处理内核用于基于适配通信网络的MTU长度卸载接收到的第一核间数据,得到至少一个第一网络数据包;其中,第二通信设备用于基于第三MTU长度对第三传输路径传输的至少一个数据包进行卸载;第三MTU长度小于适配通信网络的MTU长度。
应理解,适配通信网络的MTU长度可以是由通信网络中的多个设备协商得到。示例性的,第一通信设备可以接收第三传输路径上其他通信设备分别发送的能力信息,每个能力信息可以指示发送该能力信息的通信设备支持传输的最大MTU长度。同样的,第一通信设备也可以向第三传输路径上的其他通信设备发送能力信息,告知其他通信设备第一通信设备支持传输的最大MTU长度。这样,第一通信设备可以基于每个通信设备支持传输的最大MTU长度,与网络中的其他通信设备协商确定适配通信网络的MTU长度。
通信网络中,网络数据包的传输可以历经多个节点。示例性的,在蜂窝网络通信架构中,终端设备需要向某应用服务器上传视频数据时,该视频数据先由终端设备发送到基站,接着基站将该视频数据发送给核心网中的UPF网元,进而UPF网元将视频数据上传到该应用服务器中。在WiFi通信架构中,终端设备可以将视频数据发送给路由器,路由器可以将视频数据发送给外部应用服务器。
网络数据包传输过程中会历经第一通信设备和第二通信设备,网络数据包从第一通信设备传输到第二通信设备通过的路径即为第三传输路径。可以理解的是,第三传输路径中除了包括第一通信设备和第二通信设备之外,还可以包括其他通信设备。
换句话说,第三通信路径可以是网络数据包在通信网络中传输路径的部分路径或全部路径,本申请实施例对此不做限制。
本申请实施例中,在第一通信设备和第二通信之间的第三传输路径支持传输适配通信网络的MTU长度的情况下,第一通信设备中的第二处理内核可以直接基于适配通信网络的MTU长度对来自第一传输路径的第一核间数据进行数据卸载,得到至少一个第一网络数据包。每个第一网络数据包的长度均小于或等于适配通信网络的MTU长度。在第一网络数据包经过第三传输路径到达第二通信设备,将要从第二通信设备离开第三传输路径时,第二通信设备可以基于第三MTU长度对第三传输路径传输的至少一个第一网络数据包进行卸载。
需要说明的是,第三MTU可以是通信网络中缺省的MTU长度。在未协商MTU长度的情况下,通信网络中的各个通信设备可以均以该第三MTU长度进行传输。
在一些实施例中,适配通信网络的MTU长度可以大于第三MTU长度,适配通信网络的MTU长度可以PDCP层可传输报文的最大长度,适配通信网络的MTU长度也可以是巨帧(Jambo)的长度:9000字节。本申请实施例对此不做限制。
可以理解的是,第一通信设备可以在第三传输路径上直接传输较大MTU长度(即适配通信网络的MTU长度)的数据包,在第一网络数据包离开该第三传输路径之前,通过第二通信设备对第一网络数据包进行一次数据卸载,将较大MTU长度(即适配通信网络的MTU长度)的数据包卸载为较小MTU长度(即第三MTU长度)的数据包。这样,可以大幅较少包头的处理数量(例如减少终端设备应用层到基站,或者从终端设备应用层到核心网设备的包头数量),降低了在峰值速率情况下CPU处理能力要求和功耗和面积,有效的利用现有IP网络软硬件处理资源。
综上所述,第一通信设备和第二通信设备支持传输的MTU长度大于第三MTU长度的情况下,可以使用大于第三MTU长度的适配通信网络的MTU长度进行通信设备外部的数据包传输,这样,可以进一步减少收发机包头的处理数量,从而降低在峰值速率情况下处理能力要求、以及处理内核功耗和面积。
在本申请一实施例中,第一通信设备中的第二处理内核还可以接收通信网络中其他通信设备发送的网络数据包,并将接收到的网络数据包转发给第一通信设备中的其他处理内核进行处理。
可选地,本申请实施例提供的数据传输方法还可以包括以下步骤:
第二处理内核从通信网络接收第二网络数据包;
第二处理内核基于第一MTU长度,对第二网络数据包进行卸载,得到核间数据。
应理解,第二网络数据包可以是外部通信设备发送给第一通信设备的。第二处理内核作为第一通信设备与外部通信设备的传输端口,可以首先接收到外部通信设备发送的第二网络数据包,进而将第二网络数据包发送给第一通信设备中的其他处理内核进行处理或存储。其中,第二处理内核可以基于对外通信的MTU长度(即适配通信网络的MTU长度)接收第二网络数据包。也就是说,第二网络数据包的长度小于或等于适配通信网络的MTU长度。
本申请实施例中,第二处理内核可以按照第一MTU长度与第一传输路径上的其他处理内核进行通信。基于此,第二处理内核可以按照第一MTU长度,将第二第二网络数据包进行卸载处理,得到核间数据,其中,第二处理内核得到的核间数据的长度可以小于或等于第一MTU长度。
示例性的,适配通信网络的MTU长度可以被配置为9000字节,第一传输路径支持的第一MTU长度可以被配置为65,535字节。在第一通信设备接收第二通信设备发送的视频的场景中,第二通信设备给第一通信设备发送的每个视频数据包(即第二网络数据包)的长度均小于或等于9000字节。第一通信设备中的数据收发机(即第二处理内核)接收到的视频数据包后,可以将多个视频数据包进行合并,得到核间数据。每个核间数据的长度可以小于或等于65,535字节。
本申请实施例中,第二处理内核可以使用大于适配通信网络的MTU长度在多个处理内核之间传递数据,这样,处理内核之间可以传递更大的数据长度,在一定程度上减少了包头的处理量,提高了核间数据的处理效率,降低处理内核的功耗和成本,同时处理内核也有更多处理能力来处理其他数据,处理性能大幅度提升。
以下结合具体应用场景,对本申请实施例提供的数据传输方法进行详细阐述。
参考图13所示,一个通信设备内部的处理内核可以包括数据生产内核/消费内核(例如AP),核间通信加速器(例如PTA)、收发机1(例如WiFi模块)和收发机2(modem模块)。
其中,在通信设备启动时,各个处理内核可以发送能力信息,向其他处理内核通知自己支持传输的最大MTU长度。具体地,收发机1可以向核间通信加速器发送能力信息,向核间通信加速器告知收发机1支持以应用层数据包的最大长度传输核间数据,收发机2(modem模块)也可以向核间通信加速器发送能力信息,向核间通信加速器告知收发机2支持以应用层数据包的最大长度传输核间数据。另外,核间通信加速器可以向数据生产内核/消费内核发送能力信息,向数据生产内核/消费内核告知核间通信加速器支持以应用层数据包的最大长度传输核间数据。
进一步地,数据生产内核/消费内核存在核间数据传输需求时,可以先根据核间数据的应用场景,确定内部通信MTU长度(即第一MTU长度)。数据生产内核/消费内核将内部通信MTU长度,通过第一配置信息告知给核间通信加速器,以及收发机1和收发机2。
在核间数据中包括多种应用的数据的情况下,数据生产内核/消费内核还可以确定每种应用的缓存处理参数。数据生产内核/消费内核将每种应用的缓存处理参数通过第二配置信息通知给核间通信加速器,以及收发机1和收发机2。
核间通信加速器,以及收发机1和收发机2可以根据第一配置信息和/或第二配置信息,确定是否采用数据生产内核/消费内核指示的内部通信MTU长度,以及缓存处理参数。也就是说,核间通信加速器,以及收发机1和收发机2可以与数据生产内核/消费内核进行协商确定最终使用的内部通信MTU长度,以及缓存处理参数。
在上述信息确定之后,数据生产内核/消费内核可以将产生的核间数据按照内部通信MTU长度和缓存处理参数发送给核间通信加速器,以及收发机1和收发机2。
此外,收发机1和收发机2可以根据数据包传输路径上外部通信设备支持传输的最大MTU长度,确定外部MTU长度(即适配通信网络的MTU长度),通过外部MTU长度对核间数据进行数据卸载。示例性的,在通过收发机2与外部通信设备通信的情况下,数据卸载的分段操作可以延迟到收发机2进行。具体地,收发机2可以根据确定的外部MTU对接收到的核间数据进行分段处理,得到至少一个数据包。
综上所述,本申请实施例提供的数据传输方法,在处理内核之间传输数据时,不使用缺省的1500字节的MTU大小来传递核间数据,而使用应用层数据包的最大长度来传递核间数据。这样,通信设备内的各个处理内核处理的数据长度较大,将数据卸载的操作延迟到数据真正发送出通信设备前才执行,处理内核的数据包头负荷减少了43倍以上,处理性能会得到大幅度提升,相应的处理内核的功耗和成本也会降低很多。这样,处理内核也有更多处理余量来处理其他数据。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。又例如,在不冲突的前提下,本申请描述的各个实施例和/或各个实施例中的技术特征可以和现有技术任意的相互组合,组合之后得到的技术方案也应落入本申请的保护范围。
本申请一实施例还提供一种数据传输装置1400,应用于第一处理内核中,参考图14所示,该数据传输装置1400可以包括:
第一收发单元1401,被配置为在所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,基于所述第一MTU长度在所述第一传输路径上传输核间数据,所述第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,所述第一MTU长度大于所述适配通信网络的MTU长度。
可选地,所述第一MTU长度为应用层数据包的最大长度。
可选地,所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据,包括:
所述第一传输路径中每个处理内核支持传输的最大MTU长度皆大于或等于所述第一MTU长度。
可选地,所述数据传输装置1400还可以包括确定单元。其中,第一收发单元1301,还被配置为接收所述第一传输路径上其他处理内核分别发送的能力信息,所述能力信息用于指示发送所述能力信息的处理内核支持传输的最大MTU长度;
确定单元,被配置为基于所述能力信息确定所述第一MTU长度。
可选地,确定单元,还可以被配置为在所述第一处理内核的类型为数据生产内核或数据消费内核的情况下,根据所述核间数据的应用场景,确定所述第一MTU长度。
可选地,第一收发单元1401,还被配置为向所述第一传输路径中除所述第一处理内核之外的其他处理内核发送第一配置信息,所述第一配置信息用于指示所述第一MTU长度。
可选地,该确定单元,还可以被配置为在所述第一处理内核为其他类型的处理内核的情况下,根据接收到的第一配置信息,确定所述第一MTU长度。
可选地,所述第一收发单元1401,还被配置在所述第一传输路径上发送第一核间数据,所述第一核间数据的长度不大于所述第一MTU长度。
可选地,所述第一收发单元1401,还被配置为基于每种应用的缓存处理参数和所述第一MTU长度,对第一核间数据中每种应用对应的数据进行数据卸载,得到第一核间数据;所述缓存处理参数包括缓存数据门限值和/或缓存时间门限值;在所述第一传输路径上发送所述第一核间数据。
可选地,所述第一收发单元1401,还被配置为若每种应用对应的数据在所述第一处理内核缓存中存储的时间等于所述应用的缓存时间门限值,和/或,所述第一处理内核缓存中存储的每种应用对应数据的数据量等于所述缓存数据门限值,则基于所述第一MTU长度对所述每种应用对应的数据进行数据卸载,得到所述每种应用对应的卸载数据;所述第一核间数据包括所述多种应用中每种应用对应的卸载数据。
可选地,所述每种应用的缓存处理参数基于所述每种应用对传输时延的需求确定。
可选地,所述第一收发单元1401,还被配置为在所述第一传输路径上接收第三核间数据,所述第三核间数据的长度不大于所述第一MTU长度。
可选地,所述第一处理内核和第三处理内核之间的第二传输路径支持传输第二MTU长度的核间数据,所述第一收发单元1301,还被配置为基于所述第二MTU长度对所述第三核间数据进行数据卸载,得到第四核间数据;在所述第二传输路径上发送所述第四核间数据。
本领域技术人员应当理解,本申请实施例的上述数据传输装置的相关描述可以参照本申请实施例的数据传输方法的相关描述进行理解。
本申请一实施例还提供一种数据传输装置1500,应用于第二处理内核中,参考图15所示,该数据传输装置1500可以包括:
第二收发单元1501,被配置为在第一处理内核与所述第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,基于所述第一MTU长度在所述第一传输路径上传输核间数据;
卸载单元1502,被配置为基于适配通信网络的MTU长度卸载接收到的核间数据。
可选地,所述第一MTU长度为应用层数据的最大长度。
第一处理内核与所述第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据,包括:
所述第一传输路径中每个处理内核支持传输的最大MTU长度皆大于或等于所述第一MTU长度。
可选地,第二收发单元1501,还被配置为接收数据生产内核或数据消费内核发送的第一配置信息,所述第一配置信息用于指示所述第一MTU长度。
可选地,第二收发单元1501,还被配置为在所述第一传输路径上接收第一核间数据,所述第一核间数据的长度不大于所述第一MTU长度。
可选地,卸载单元1502,被配置为基于每种应用的缓存处理参数和所述适配通信网络的MTU长度,对接收到的第一核间数据中每种应用对应的数据进行数据卸载,得到第一网络数据包;所述缓存处理参数包括缓存数据门限值和/或缓存时间门限值。
可选地,卸载单元1502,还被配置为若每种应用对应的数据在所述第二处理内核缓存中存储的时间等于所述应用的缓存时间门限值,和/或,所述第二处理内核缓存中存储的每种应用对应数据的数据量等于所述缓存数据门限值,则基于所述适配通信网络的MTU长度对所述每种应用对应的数据进行数据卸载,得到所述每种应用对应的卸载数据;
所述第一网络数据包包括所述多种应用中每种应用对应的卸载数据。
可选地,所述每种应用的缓存处理参数基于所述每种应用对传输时延的需求确定。
可选地,卸载单元1502,还被配置为若在所述第二处理内核所属的第一通信设备与第二通信设备之间的第三传输路径支持传输所述适配通信网络的MTU长度的数据包的情况下,基于所述适配通信网络的MTU长度卸载接收到的第一核间数据,得到至少一个第一网络数据包;
其中,所述第二通信设备用于基于第三MTU长度对所述第三传输路径传输的所述至少一个第一网络数据包进行卸载;所述第三MTU长度小于所述适配通信网络的MTU长度。
可选地,第二收发单元1501,还被配置为从所述通信网络接收第二网络数据包;
卸载单元,还被配置为基于所述第一MTU长度,对所述第二网络数据包进行卸载,得到所述核间数据。
本领域技术人员应当理解,本申请实施例的上述数据传输装置的相关描述可以参照本申请实施例的数据传输方法的相关描述进行理解。
本申请实施例还提供一种处理内核,该处理内核包括处理器,用于从存储器中调用并运行计算机程序,使得安装有所述处理内核的设备执行本申请实施例的各个方法中由第一处理内核实现的相应流程,为了简洁,在此不再赘述。
图16是本申请实施例提供的一种通信设备1600示意性结构图。如图16所示,该通信设备1600包括第一处理内核1610和第二处理内核1620。
可选地,通信设备可以是终端设备、可穿戴设备、基站、核心网网元、应用服务器等独立的实体设备,本申请实施例对此不做限制。
其中,该第一处理内核1610可以用于实现上述方法中由第一处理内核实现的相应的功能,以及该第二处理内核1620可以用于实现上述方法中由第二处理内核实现的相应的功能为了简洁,在此不再赘述。
本申请实施例还提供了一种计算机存储介质,具体为计算机可读存储介质。其上存储有计算机指令,在计算机存储介质位于数据传输装置时,该计算机指令被处理器执行时实现本申请实施例上述数据传输方法中的任意步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以至少两个单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是:本申请实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (28)
1.一种数据传输方法,其特征在于,应用于第一处理内核,包括:
在所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,所述第一处理内核基于所述第一MTU长度在所述第一传输路径上传输核间数据,所述第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,所述第一MTU长度大于所述适配通信网络的MTU长度。
2.根据权利要求1所述的方法,其特征在于,所述第一MTU长度为应用层数据的最大长度。
3.根据权利要求1所述的方法,其特征在于,所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据,包括:
所述第一传输路径中每个处理内核支持传输的最大MTU长度皆大于或等于所述第一MTU长度。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述第一处理内核接收所述第一传输路径上其他处理内核分别发送的能力信息,所述能力信息用于指示发送所述能力信息的处理内核支持传输的最大MTU长度;
所述第一处理内核基于所述能力信息确定所述第一MTU长度。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
在所述第一处理内核的类型为数据生产内核或数据消费内核的情况下,所述第一处理内核根据所述核间数据的应用场景,确定所述第一MTU长度。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
向所述第一传输路径中除所述第一处理内核之外的其他处理内核发送第一配置信息,所述第一配置信息用于指示所述第一MTU长度。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
在所述第一处理内核为其他类型的处理内核的情况下,所述第一处理内核根据接收到的第一配置信息,确定所述第一MTU长度。
8.根据权利要求1-4任一项所述的方法,其特征在于,所述第一处理内核基于所述第一MTU长度在所述第一传输路径上传输核间数据,包括:
在所述第一传输路径上发送第一核间数据,所述第一核间数据的长度不大于所述第一MTU长度。
9.根据权利要求1-4任一项所述的方法,其特征在于,所述基于所述第一MTU长度在所述第一传输路径上传输核间数据,包括:
基于每种应用的缓存处理参数和所述第一MTU长度,对第二核间数据中每种应用对应的数据进行数据卸载,得到第一核间数据;所述缓存处理参数包括缓存数据门限值和/或缓存时间门限值;
在所述第一传输路径上发送所述第一核间数据。
10.根据权利要求9所述的方法,其特征在于,所述基于每种应用的缓存处理参数和所述第一MTU长度,对第二核间数据中每种应用对应的数据进行数据卸载,得到第一核间数据,包括:
若每种应用对应的数据在所述第一处理内核缓存中存储的时间等于所述应用的缓存时间门限值,和/或,所述第一处理内核缓存中存储的每种应用对应数据的数据量等于所述缓存数据门限值,则基于所述第一MTU长度对所述每种应用对应的数据进行数据卸载,得到所述每种应用对应的卸载数据;
所述第一核间数据包括所述多种应用中每种应用对应的卸载数据。
11.根据权利要求9所述的方法,其特征在于,所述每种应用的缓存处理参数基于所述每种应用对传输时延的需求确定。
12.根据权利要求1-4任一项所述的方法,其特征在于,所述第一处理内核基于所述第一MTU长度在所述第一传输路径上传输核间数据,包括:
在所述第一传输路径上接收第三核间数据,所述第三核间数据的长度不大于所述第一MTU长度。
13.根据权利要求12所述的方法,其特征在于,所述第一处理内核和第三处理内核之间的第二传输路径支持传输第二MTU长度的核间数据,所述方法还包括:
基于所述第二MTU长度对所述第三核间数据进行数据卸载,得到第四核间数据;
在所述第二传输路径上发送所述第四核间数据。
14.一种数据传输方法,其特征在于,应用于第二处理内核,包括:
在第一处理内核与所述第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,所述第二处理内核基于所述第一MTU长度在所述第一传输路径上传输核间数据;
基于适配通信网络的MTU长度卸载接收到的核间数据。
15.根据权利要求14所述的方法,其特征在于,所述第一MTU长度为应用层数据的最大长度。
16.根据权利要求14所述的方法,其特征在于,第一处理内核与所述第二处理内核之间的第一传输路径支持传输第一MTU长度的核间数据,包括:
所述第一传输路径中每个处理内核支持传输的最大MTU长度皆大于或等于所述第一MTU长度。
17.根据权利要求14所述的方法,其特征在于,所述方法还包括:
接收数据生产内核或数据消费内核发送的第一配置信息,所述第一配置信息用于指示所述第一MTU长度。
18.根据权利要求14所述的方法,其特征在于,所述第二处理内核基于所述第一MTU长度在所述第一传输路径上传输核间数据,包括:
在所述第一传输路径上接收第一核间数据,所述第一核间数据的长度不大于所述第一MTU长度。
19.根据权利要求14所述的方法,其特征在于,所述基于适配通信网络的MTU长度卸载接收到的核间数据,包括:
基于每种应用的缓存处理参数和所述适配通信网络的MTU长度,对接收到的第一核间数据中每种应用对应的数据进行数据卸载,得到第一网络数据包;所述缓存处理参数包括缓存数据门限值和/或缓存时间门限值。
20.根据权利要求19所述的方法,其中,所述基于每种应用的缓存处理参数和所述适配通信网络的MTU长度,对接收到的第一核间数据中每种应用对应的数据进行数据卸载,得到第一网络数据包,包括:
若每种应用对应的数据在所述第二处理内核缓存中存储的时间等于所述应用的缓存时间门限值,和/或,所述第二处理内核缓存中存储的每种应用对应数据的数据量等于所述缓存数据门限值,则基于所述适配通信网络的MTU长度对所述每种应用对应的数据进行数据卸载,得到所述每种应用对应的卸载数据;
所述第一网络数据包包括所述多种应用中每种应用对应的卸载数据。
21.根据权利要求19或20所述的方法,其特征在于,所述每种应用的缓存处理参数基于所述每种应用对传输时延的需求确定。
22.根据权利要求14-20任一项所述的方法,其特征在于,所述基于适配通信网络的MTU长度卸载接收到的核间数据,包括:
在所述第二处理内核所属的第一通信设备与第二通信设备之间的第三传输路径支持传输所述适配通信网络的MTU长度的数据包的情况下,基于所述适配通信网络的MTU长度卸载接收到的第一核间数据,得到至少一个第一网络数据包;
其中,所述第二通信设备用于基于第三MTU长度对所述第三传输路径传输的所述至少一个第一网络数据包进行卸载;所述第三MTU长度小于所述适配通信网络的MTU长度。
23.根据权利要求14-20任一项所述的方法,其特征在于,还包括:
从所述通信网络接收第二网络数据包;
基于所述第一MTU长度,对所述第二网络数据包进行卸载,得到所述核间数据。
24.一种数据传输装置,其特征在于,应用于第一处理内核,包括:
第一收发单元,被配置为在所述第一处理内核与第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,基于所述第一MTU长度在所述第一传输路径上传输核间数据,所述第二处理内核用于基于适配通信网络的MTU长度卸载接收到的核间数据,其中,所述第一MTU长度大于所述适配通信网络的MTU长度。
25.一种处理装置,其特征在于,应用于第二处理内核,包括:
第二收发单元,被配置为在第一处理内核与所述第二处理内核之间的第一传输路径支持传输第一最大传输单元MTU长度的核间数据的情况下,基于所述第一MTU长度在所述第一传输路径上传输核间数据;
卸载单元,被配置为基于适配通信网络的MTU长度卸载接收到的核间数据。
26.一种处理内核,其特征在于,包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述处理内核的设备执行如权利要求1-13中任一项所述的方法,或如权利要求14-23中任一项所述的方法。
27.一种通信设备,其特征在于,包括第一处理内核和第二处理内核,其中,所述第一处理内核用于执行如权利要求1-13中任一项所述的方法,所述第二处理内核用于执行如权利要求14-23中任一项所述的方法。
28.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-13中任一项所述的方法,或如权利要求14-23中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211600020.3A CN115982084A (zh) | 2022-12-13 | 2022-12-13 | 数据传输方法及装置、通信设备、及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211600020.3A CN115982084A (zh) | 2022-12-13 | 2022-12-13 | 数据传输方法及装置、通信设备、及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115982084A true CN115982084A (zh) | 2023-04-18 |
Family
ID=85971518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211600020.3A Pending CN115982084A (zh) | 2022-12-13 | 2022-12-13 | 数据传输方法及装置、通信设备、及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115982084A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117834570A (zh) * | 2024-03-04 | 2024-04-05 | 山东云海国创云计算装备产业创新中心有限公司 | 传输系统的数据包处理方法、装置、电子设备及存储介质 |
-
2022
- 2022-12-13 CN CN202211600020.3A patent/CN115982084A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117834570A (zh) * | 2024-03-04 | 2024-04-05 | 山东云海国创云计算装备产业创新中心有限公司 | 传输系统的数据包处理方法、装置、电子设备及存储介质 |
CN117834570B (zh) * | 2024-03-04 | 2024-06-07 | 山东云海国创云计算装备产业创新中心有限公司 | 传输系统的数据包处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110798868B (zh) | 网络切换方法、电子设备以及芯片子系统 | |
US8867354B2 (en) | Transmission control method, transmission control system, communication device and recording medium of transmission control program | |
JP5309825B2 (ja) | 通信システム、送信装置、受信装置、及び通信方法 | |
CN104704909A (zh) | 用于WiFi卸载的系统和方法 | |
RU2767321C1 (ru) | Способ и устройство для беспроводной связи | |
JP2023025025A (ja) | データ伝送方法及び装置 | |
KR102267116B1 (ko) | 패킷 전송 방법, 프록시 서버 및 컴퓨터 판독가능 저장 매체 | |
CN112584545B (zh) | 数据传输方法及装置 | |
CN114979839B (zh) | 一种传输控制协议代理方法及通信装置 | |
CN111988212A (zh) | 一种报文传输方法以及相关装置 | |
KR20230139683A (ko) | 무선 통신 시스템에서 어플리케이션 데이터를 처리하는 장치 및 방법 | |
US9949300B2 (en) | Packet transmission method and system, and station | |
JP2016026462A (ja) | 通信端末、通信システム及び通信方法 | |
CN115982084A (zh) | 数据传输方法及装置、通信设备、及存储介质 | |
CN113645189A (zh) | 一种通信方法及相关装置 | |
CN116017559A (zh) | 数据传输方法及装置、通信设备、存储介质 | |
CN107104813B (zh) | 一种信息传输方法、网关及控制器 | |
US20230078814A1 (en) | Data transmission method and related device | |
WO2018082511A1 (zh) | 一种数据包的预处理方法、装置及设备 | |
CN111917511B (zh) | 一种数据的接收方法 | |
EP3913881A1 (en) | Header compression management in a radio access network | |
CN112087778A (zh) | 一种无线数传方法及系统 | |
US20230345154A1 (en) | Service configuration method and apparatus | |
WO2024138332A1 (zh) | 一种信息传输方法和装置 | |
WO2024037423A1 (zh) | 一种带宽控制的方法和装置 |
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 |