CN104731711A - 一种网络设备写表方法及装置 - Google Patents

一种网络设备写表方法及装置 Download PDF

Info

Publication number
CN104731711A
CN104731711A CN201310717789.8A CN201310717789A CN104731711A CN 104731711 A CN104731711 A CN 104731711A CN 201310717789 A CN201310717789 A CN 201310717789A CN 104731711 A CN104731711 A CN 104731711A
Authority
CN
China
Prior art keywords
kernel spacing
space
user
memory address
memory
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.)
Withdrawn
Application number
CN201310717789.8A
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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201310717789.8A priority Critical patent/CN104731711A/zh
Priority to PCT/CN2014/079890 priority patent/WO2014180446A1/zh
Publication of CN104731711A publication Critical patent/CN104731711A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)

Abstract

本发明公开了一种网络设备写表方法及装置。其中,该方法包括:内核空间预先申请内存,将内核空间内存映射到用户空间,得到用户空间内存地址;用户空间向内核空间申请内核空间内存,得到对应的用户空间内存地址;将用户空间内存地址和消息大小记录在buffer描述符中传递给内核空间;内核空间将用户空间内存地址转换为内核空间内存地址,通过DMA控制器将消息写入芯片。通过本发明,解决了相关技术中网络设备写表方法对CPU的负担较大的问题,内核驱动和芯片之间的消息传递采用DMA机制,减少了CPU的负担。在网络设备驱动层面大量发送写表消息的应用中,可以极大提高写表性能,有效改进Linux下设备驱动的写表效率。

Description

一种网络设备写表方法及装置
技术领域
本发明涉及通信领域,特别是涉及一种网络设备写表方法及装置。
背景技术
现今网络发展速度惊人,网络流量的增长及新业务的出现,需要网络设备具有线速和灵活的处理能力。目前网络芯片包括集成电路(Application SpecificIntegrated Circuit,简称为ASIC)和NP(网络处理器)两大类。
网络芯片***接口非常丰富,如静态随机存储器(Static RAM,简称为SRAM)、三态内容寻址存储器(ternary content addressable memory,简称为TCAM)、同步动态随机存储器(Synchronous Dynamic Random Access Memory,简称为SDRAM)等,这些存储器存放着各种业务表项,如端口表、介质访问控制(medium access control,简称为MAC)表、路由表等;另外,芯片内部包括大量的寄存器。
网络设备运行过程中,控制层软件会频繁的与芯片进行交互,比如下发业务配置等。对芯片而言,主要就是读写芯片存储器和内部寄存器。目前很多网络设备表项、寄存器配置是通过CPU(中央处理器)与芯片进行消息交互实现的。
目前Linux操作***广泛应用于网络设备驱动中,Linux***分为用户态和内核态两个层面。芯片驱动层次如图1所示的Linux***设备驱动软件层次示意图,目前网络设备驱动发送消息的通常做法是用户态申请内存并将消息填充到用户态内存中,由于实际与芯片交互的是内核层,因此必须将消息从用户态的内存拷贝到内核态的内存中,然后从内核态的内存通过总线写入硬件芯片中。
由于网络交换设备中消息交互非常频繁,极限情况每秒钟可能有上万条消息发送,因此这涉及了大量的内存申请,以及用户态、内核态的拷贝操作。这对网络设备的CPU是一个很大的负担,影响了网络设备的写表效率。
针对相关技术中网络设备写表方法对CPU的负担较大的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中网络设备写表方法对CPU的负担较大的问题,本发明提供了一种网络设备写表方法及装置,用以解决上述技术问题。
根据本发明的一个方面,本发明提供了一种网络设备写表方法,其中,该方法包括:内核空间预先申请内存,将内核空间内存映射到用户空间,得到用户空间内存地址;上述用户空间向上述内核空间申请上述内核空间内存,得到对应的用户空间内存地址;将上述用户空间内存地址和消息大小记录在缓冲区buffer描述符中传递给上述内核空间;上述内核空间将上述用户空间内存地址转换为内核空间内存地址,通过直接内存存取(Direct Memory Access,简称为DMA)控制器将消息写入芯片。
优选地,内核空间将内核空间内存映射到用户空间,得到用户空间内存地址之后,上述方法还包括:内核空间根据上述用户空间内存地址,计算上述用户空间内存地址相对于内核空间内存地址的偏移量;其中,上述偏移量=内核空间内存地址-用户空间内存地址。
优选地,用户空间向内核空间申请上述内核空间内存,得到上述用户空间内存地址,包括:用户空间向内核空间申请内核空间内存,得到其内核空间内存地址;用户空间根据上述偏移量和上述内核空间内存地址,计算得到用户空间内存地址。
优选地,内核空间通过上述DMA控制器将消息写入芯片,包括:内核空间将上述内核空间内存地址和上述消息大小,传递给上述DMA控制器,内核空间的驱动通过上述DMA控制器将消息写入芯片。
优选地,用户空间将待释放的用户空间内存地址,记录到上述buffer描述符中传递给内核空间;内核空间根据上述偏移量和上述用户空间内存地址,计算得到内核空间内存地址;内核空间将上述内核空间内存地址传递给内核空间的驱动;内核空间的驱动释放上述buffer描述符。
优选地,内核空间将上述内核空间内存映射到用户空间,包括:内核空间将上述内核空间内存,通过mmap映射到用户空间。
根据本发明的另一方面,本发明还提供了一种网络设备写表装置,应用于内核空间,其中,该装置包括:内存申请模块,用于预先申请内存,将内核空间内存映射到用户空间,得到用户空间内存地址;消息写入模块,用于在接收到用户空间传递的用户空间内存地址后,将上述用户空间内存地址转换为内核空间内存地址,通过直接内存存取DMA控制器将消息写入芯片。
优选地,上述装置还包括:释放模块,用于根据用户空间通过缓冲区buffer描述符传递的用户空间内存地址,得到内核空间内存地址;将该内核空间内存地址传递给内核空间的驱动,以使上述驱动释放上述buffer描述符。
根据本发明的另一方面,本发明还提供了一种网络设备写表装置,应用于用户空间,其中,该装置包括:申请内存模块,用于向内核空间申请内核空间内存,得到对应的用户空间内存地址;描述符传递模块,用于将上述用户空间内存地址和消息大小记录在缓冲区buffer描述符中传递给内核空间。
优选地,上述申请内存模块包括:第一处理单元,用于向内核空间申请内核空间内存,得到其内核空间内存地址;第二处理单元,用于根据偏移量和上述内核空间内存地址,计算得到用户空间内存地址;其中,上述偏移量是上述用户空间内存地址相对于内核空间内存地址的偏移量,上述偏移量=内核空间内存地址-用户空间内存地址。
通过本发明,预先申请内核态内存,并利用零拷贝技术,将内核态的内存映射到用户态,用户态发送消息时,直接通过buffer描述符获得用户态内存地址,这样可以避免用户态申请内存,而且用户态、内核态之间只需要传递一个很小的buffer描述符,省去了大量的内存拷贝操作。解决了相关技术中网络设备写表方法对CPU的负担较大的问题,内核驱动和芯片之间的消息传递采用DMA机制,减少了CPU的负担。在网络设备驱动层面大量发送写表消息的应用中,可以极大提高写表性能,有效改进Linux下设备驱动的写表效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
图1是根据相关技术的Linux***设备驱动软件层次示意图;
图2是根据本发明实施例的网络设备写表方法的流程图;
图3是根据本发明实施例的软件层次示意图;
图4是根据本发明实施例的open***调用流程图;
图5是根据本发明实施例的用户空间和内核空间内存单元内存映射示意图;
图6是根据本发明实施例的消息发送流程图;
图7是根据本发明实施例的应用于内核空间的网络设备写表装置的结构框图;
图8是根据本发明实施例的应用于用户空间的网络设备写表装置的结构框图。
具体实施方式
为了解决现有技术中网络设备写表方法对CPU的负担较大的问题,本发明提供了一种网络设备写表方法及装置,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
本实施例提供了一种网络设备写表方法,图2是根据本发明实施例的网络设备写表方法的流程图,如图2所示,该方法包括以下步骤(步骤S202-步骤S206):
步骤S202,内核空间预先申请内存,将内核空间内存映射到用户空间,得到用户空间内存地址。优选地,内核空间将内核空间内存,通过mmap映射到用户空间。在此之后,内核空间根据用户空间内存地址,计算用户空间内存地址相对于内核空间内存地址的偏移量;其中,偏移量=内核空间内存地址-用户空间内存地址。
步骤S204,用户空间向内核空间申请内核空间内存,得到对应的用户空间内存地址;将用户空间内存地址和消息大小记录在缓冲区buffer描述符中传递给内核空间。
在该步骤中,用户空间向内核空间申请内核空间内存,得到用户空间内存地址,可以通过以下优选实施方式实现:用户空间向内核空间申请内核空间内存,得到其内核空间内存地址;用户空间根据偏移量和内核空间内存地址,计算得到用户空间内存地址。
步骤S206,内核空间将用户空间内存地址转换为内核空间内存地址,通过直接内存存取DMA控制器将消息写入芯片。具体地,内核空间将内核空间内存地址和消息大小,传递给DMA控制器,内核空间的驱动通过DMA控制器将消息写入芯片。
本实施例还提供了一种优选实施方式,来介绍内存释放过程,即用户空间将待释放的用户空间内存地址,记录到buffer描述符中传递给内核空间;内核空间根据偏移量和用户空间内存地址,计算得到内核空间内存地址;内核空间将内核空间内存地址传递给内核空间的驱动;内核空间的驱动释放buffer描述符。
图3是根据本发明实施例的软件层次示意图,内核空间预先申请内核态内存,并利用零拷贝技术,将内核态的内存映射到用户态,用户态发送消息时,直接通过buffer描述符获得用户态内存地址,这样可以避免用户态申请内存,而且用户态、内核态之间只需要传递一个很小的buffer描述符,省去了大量的内存拷贝操作。解决了相关技术中网络设备写表方法对CPU的负担较大的问题,内核驱动和芯片之间的消息传递采用DMA机制,减少了CPU的负担。在网络设备驱动层面大量发送写表消息的应用中,可以极大提高写表性能,有效改进Linux下设备驱动的写表效率。
下面对芯片驱动程序的具体操作进行介绍。
芯片驱动程序为字符设备驱动,即驱动程序将芯片作为文件进行操作,用户态驱动程序和内核态驱动程序通过文件流进行交互。芯片驱动首先要为芯片初始化file_operation结构,该结构包括该字符设备的打开(open)、关闭(close)、写(write)、控制(ioctl)、映射(mmap)方法。具体地讲,
1、映射(mmap)方法:
提供将内核空间内存映射到用户空间内存的接口;
2、打开(open)方法:
申请内核态内存,并通过mmap映射将内存块映射到用户空间,并且分割内存块为N个内存单元buf。该操作过程如图4所示的open***调用流程图,如图4所示,该流程包括以下步骤(步骤S402-步骤S410)。
步骤S402,申请内核内存块,内核态内存起始地址为K。
步骤S404,调用mmap接口将内核空间内存映射到用户空间,得到的用户态内存起始地址为U。
步骤S406,计算用户空间地址相对于内核空间地址的偏移量O。O=K-U。通常的,内核空间地址范围为3G~4G,用户空间地址范围为0~3G。
步骤S408,内存块分割。
由于Linux为多进程操作***,同一时刻可能有多个进程进行写表,为了提升内核内存的利用率及写表性能,将内核内存块分割成一个一个小的buffer(buf0、buf1,…bufN)。由内核驱动程序管理维护这些buffer单元。
步骤S410,结束。
经过open***调用后,用户空间得到了与内核空间相关联shadow映射。如图5所示的用户空间和内核空间内存单元内存映射示意图,内核空间每个buffer单元在用户空间都有唯一确定的一个用户空间地址。
3、关闭(close)方法:
释放软件资源,将内核态申请的内存释放。
4、控制(ioctl)方法:
为用户态程序提供申请、释放内存的接口。入参为buffer描述符。Buffer描述符包括两个信息,用户态地址和消息大小。
申请内存时,向内核驱动程序“申请”空闲buffer单元,得到其内核态地址Addr_kernel,根据用户空间地址和内核空间地址偏移量O,计算得到其用户空间地址Addr_usr=Addr_kernel–O,并将Addr_usr记录到buffer描述符返回给用户空间。
释放内存,用户空间将待释放的用户空间地址通过buffer描述符传递给内核空间。内核空间根据地址偏移量O计算得到相应的内核空间地址Addr_kernel=Addr_usr+O。将Addr_kernel传递给内核驱动程序,内核驱动负责“释放”该buffer单元。
注:
这里的“申请”、“释放”只是为了便于理解使用的说法,并不是真实的向操作***申请释放内存,而是内核驱动程序为了管理内核buffer单元,记录每个buffer单元的是否在使用中的一个状态。实际上,内存的申请、释放只会发生在设备的打开、关闭调用中。
5、写(write)方法:
用户程序将用户空间地址及消息大小通过buffer描述符传递给内核空间。内核空间将用户地址转换成内核空间地址(Addr_kernel=Addr_usr+O),将Addr_kernel和消息大小传递给DMA控制器,内核驱动通过DMA将消息快速写入芯片。
写表消息发送接口借助ioctl和write两个***调用实现,这两个***调用都通过一个buffer描述符传递用户空间地址及消息长度。由于采用了mmap映射,用户空间不需要申请内存,只需要调用ioctl接口申请内核空间的空闲buffer,将消息内容填写到与内核buffer地址映射的用户空间地址。填写完成,调用write接口,内核态程序将用户空间地址进行转换得到内核态地址,从而通过DMA写入芯片,如图6所示的消息发送流程图,该流程包括以下步骤(步骤S602-步骤S610)。
步骤S602,内存申请。通过IOCTL接口申请内核态内存单元,获取相应的用户空间地址。
步骤S604,消息填充。将消息内容拷贝到用户空间地址中,并将消息大小和用户空间地址填到buffer描述符中
步骤S606,消息发送。通过write接口,将buffer描述符传递给内核空间。
内核驱动将用户空间地址和消息大小传递给DMA控制器,通过DMA快速写入芯片
步骤S608,内存释放。通过IOCTL接口释放内核态内存单元,记录内核空间中相应buffer单元为可用状态。
步骤S610,结束。
对应于上述实施例介绍的网络设备写表方法,本实施例提供了一种网络设备写表装置,该装置可以应用于内核空间,用以实现上述实施例。图7是根据本发明实施例的应用于内核空间的网络设备写表装置的结构框图,如图7所示,该装置包括:内存申请模块10和消息写入模块12。下面对该结构进行详细介绍。
内存申请模块10,用于预先申请内存,将内核空间内存映射到用户空间,得到用户空间内存地址;
消息写入模块12,连接至内存申请模块10,用于在接收到用户空间传递的用户空间内存地址后,将用户空间内存地址转换为内核空间内存地址,通过直接内存存取DMA控制器将消息写入芯片。
优选地,该装置还包括:释放模块,用于根据用户空间通过缓冲区buffer描述符传递的用户空间内存地址,得到内核空间内存地址;将该内核空间内存地址传递给内核空间的驱动,以使驱动释放buffer描述符。
对应于上述实施例介绍的网络设备写表方法,本实施例提供了一种网络设备写表装置,该装置可以应用于用户空间,用以实现上述实施例。图8是根据本发明实施例的应用于用户空间的网络设备写表装置的结构框图,如图8所示,该装置包括:申请内存模块20和描述符传递模块22。下面对该结构进行详细介绍。
申请内存模块20,用于向内核空间申请内核空间内存,得到对应的用户空间内存地址;
描述符传递模块22,连接至申请内存模块20,用于将用户空间内存地址和消息大小记录在缓冲区buffer描述符中传递给内核空间。
优选地,上述申请内存模块10包括:第一处理单元,用于向内核空间申请内核空间内存,得到其内核空间内存地址;第二处理单元,用于根据偏移量和内核空间内存地址,计算得到用户空间内存地址;其中,偏移量是用户空间内存地址相对于内核空间内存地址的偏移量,偏移量=内核空间内存地址-用户空间内存地址。
从以上的描述中可以看出,本发明实施例预先在内核空间申请内存,并划分为一个个的内存单元,通过mmap建立用户空间虚拟地址和内核空间内存地址的映射关系。这样用户空间和内核空间都不需要在消息过程中申请内存,并且避免了内存空间内存和内核空间内存的大量拷贝操作。内核驱动和芯片之间的消息传递采用DMA机制,减少了CPU的负担。在网络设备驱动层面大量发送写表消息的应用中,可以极大提高写表性能。
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

Claims (10)

1.一种网络设备写表方法,其特征在于,所述方法包括:
内核空间预先申请内存,将内核空间内存映射到用户空间,得到用户空间内存地址;
所述用户空间向所述内核空间申请所述内核空间内存,得到对应的用户空间内存地址;将所述用户空间内存地址和消息大小记录在缓冲区buffer描述符中传递给所述内核空间;
所述内核空间将所述用户空间内存地址转换为内核空间内存地址,通过直接内存存取DMA控制器将消息写入芯片。
2.如权利要求1所述的方法,其特征在于,内核空间将内核空间内存映射到用户空间,得到用户空间内存地址之后,所述方法还包括:
内核空间根据所述用户空间内存地址,计算所述用户空间内存地址相对于内核空间内存地址的偏移量;其中,所述偏移量=内核空间内存地址-用户空间内存地址。
3.如权利要求2所述的方法,其特征在于,用户空间向内核空间申请所述内核空间内存,得到所述用户空间内存地址,包括:
用户空间向内核空间申请内核空间内存,得到其内核空间内存地址;
用户空间根据所述偏移量和所述内核空间内存地址,计算得到用户空间内存地址。
4.如权利要求1所述的方法,其特征在于,内核空间通过所述DMA控制器将消息写入芯片,包括:
内核空间将所述内核空间内存地址和所述消息大小,传递给所述DMA控制器,内核空间的驱动通过所述DMA控制器将消息写入芯片。
5.如权利要求2所述的方法,其特征在于,所述方法还包括:
用户空间将待释放的用户空间内存地址,记录到所述buffer描述符中传递给内核空间;
内核空间根据所述偏移量和所述用户空间内存地址,计算得到内核空间内存地址;
内核空间将所述内核空间内存地址传递给内核空间的驱动;
内核空间的驱动释放所述buffer描述符。
6.如权利要求1所述的方法,其特征在于,内核空间将所述内核空间内存映射到用户空间,包括:
内核空间将所述内核空间内存,通过mmap映射到用户空间。
7.一种网络设备写表装置,应用于内核空间,其特征在于,所述装置包括:
内存申请模块,用于预先申请内存,将内核空间内存映射到用户空间,得到用户空间内存地址;
消息写入模块,用于在接收到用户空间传递的用户空间内存地址后,将所述用户空间内存地址转换为内核空间内存地址,通过直接内存存取DMA控制器将消息写入芯片。
8.如权利要求7所述的装置,其特征在于,所述装置还包括:
释放模块,用于根据用户空间通过缓冲区buffer描述符传递的用户空间内存地址,得到内核空间内存地址;将该内核空间内存地址传递给内核空间的驱动,以使所述驱动释放所述buffer描述符。
9.一种网络设备写表装置,应用于用户空间,其特征在于,所述装置包括:
申请内存模块,用于向内核空间申请内核空间内存,得到对应的用户空间内存地址;
描述符传递模块,用于将所述用户空间内存地址和消息大小记录在缓冲区buffer描述符中传递给内核空间。
10.如权利要求9所述的装置,其特征在于,所述申请内存模块包括:
第一处理单元,用于向内核空间申请内核空间内存,得到其内核空间内存地址;
第二处理单元,用于根据偏移量和所述内核空间内存地址,计算得到用户空间内存地址;其中,所述偏移量是所述用户空间内存地址相对于内核空间内存地址的偏移量,所述偏移量=内核空间内存地址-用户空间内存地址。
CN201310717789.8A 2013-12-23 2013-12-23 一种网络设备写表方法及装置 Withdrawn CN104731711A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310717789.8A CN104731711A (zh) 2013-12-23 2013-12-23 一种网络设备写表方法及装置
PCT/CN2014/079890 WO2014180446A1 (zh) 2013-12-23 2014-06-13 一种网络设备写表方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310717789.8A CN104731711A (zh) 2013-12-23 2013-12-23 一种网络设备写表方法及装置

Publications (1)

Publication Number Publication Date
CN104731711A true CN104731711A (zh) 2015-06-24

Family

ID=51866826

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310717789.8A Withdrawn CN104731711A (zh) 2013-12-23 2013-12-23 一种网络设备写表方法及装置

Country Status (2)

Country Link
CN (1) CN104731711A (zh)
WO (1) WO2014180446A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105323184A (zh) * 2015-10-08 2016-02-10 盛科网络(苏州)有限公司 节约ram资源实现流量统计的方法及装置
CN106775462A (zh) * 2016-11-30 2017-05-31 郑州云海信息技术有限公司 一种读写过程中减少内存拷贝的方法和装置
CN112272111A (zh) * 2020-10-16 2021-01-26 苏州浪潮智能科技有限公司 一种snmp数据的处理方法、***及装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110069422B (zh) * 2018-01-23 2021-06-18 普天信息技术有限公司 基于mips多核处理器的内存缓冲区回收方法
CN109688058B (zh) * 2018-12-19 2021-03-02 迈普通信技术股份有限公司 报文处理方法、装置及网络设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090092057A1 (en) * 2007-10-09 2009-04-09 Latis Networks, Inc. Network Monitoring System with Enhanced Performance
CN102082698A (zh) * 2009-11-26 2011-06-01 上海大学 基于改进型零拷贝技术的高性能内核的网络数据处理***
CN102467473A (zh) * 2010-11-03 2012-05-23 Tcl集团股份有限公司 一种在用户空间和内核之间传输数据的方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102375789B (zh) * 2010-08-09 2014-05-28 中标软件有限公司 一种通用网卡非缓存的零拷贝方法及零拷贝***
CN103391256B (zh) * 2013-07-25 2016-01-13 武汉邮电科学研究院 一种基于Linux***的基站用户面数据处理优化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090092057A1 (en) * 2007-10-09 2009-04-09 Latis Networks, Inc. Network Monitoring System with Enhanced Performance
CN102082698A (zh) * 2009-11-26 2011-06-01 上海大学 基于改进型零拷贝技术的高性能内核的网络数据处理***
CN102467473A (zh) * 2010-11-03 2012-05-23 Tcl集团股份有限公司 一种在用户空间和内核之间传输数据的方法和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105323184A (zh) * 2015-10-08 2016-02-10 盛科网络(苏州)有限公司 节约ram资源实现流量统计的方法及装置
CN106775462A (zh) * 2016-11-30 2017-05-31 郑州云海信息技术有限公司 一种读写过程中减少内存拷贝的方法和装置
CN112272111A (zh) * 2020-10-16 2021-01-26 苏州浪潮智能科技有限公司 一种snmp数据的处理方法、***及装置

Also Published As

Publication number Publication date
WO2014180446A1 (zh) 2014-11-13

Similar Documents

Publication Publication Date Title
CN105677597A (zh) 数据写入方法及装置
CN104731711A (zh) 一种网络设备写表方法及装置
CN102629240B (zh) 一种串口通信方法与装置
CN102880573B (zh) 一种基于Linux***的串行RapidIo数据传输方法
CN105302739A (zh) 一种内存管理方法和装置
US9584332B2 (en) Message processing method and device
CN103412841B (zh) VxWorks操作***下CPCI总线RS422通信模块的驱动器及驱动方法
CN102457442A (zh) 一种消息发送和读取方法、装置及中间件***
US11989588B2 (en) Shared memory management method and device
CN107870879A (zh) 一种数据搬移方法、加速器板卡、主机及数据搬移***
CN109739668A (zh) 一种虚拟机间数据传输的方法、***及设备
EP4258597A1 (en) Packet processing method, device, system, and storage medium
CN104572411A (zh) 一种日志数据的处理方法及装置
CN105808219A (zh) 一种内存空间分配方法及装置
CN111984370B (zh) 一种多磁盘虚拟机在线迁移到不同存储池的方法及装置
CN112698789B (zh) 数据缓存方法、装置、设备及存储介质
CN103324532A (zh) 虚拟机的动态迁移方法及***
US9836338B2 (en) Method and apparatus for message interactive processing
CN104951370B (zh) 一种内存管理方法及装置
CN101425960B (zh) 实现负载均分的方法和设备
CN104753814A (zh) 基于网卡的报文分流处理方法
CN104317747A (zh) 一种网格接收机的数据缓存与发送装置及方法
CN102495987B (zh) 一种电子信息本地防泄密访问的方法和***
CN101615136A (zh) linux环境下快速转换调用堆栈地址的***及方法
CN111813333B (zh) 在存储器内异步复制数据的方法、***和介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20150624