CN117041379B - 同时监听用户态协议栈和内核态协议栈新建连接的方法及装置 - Google Patents

同时监听用户态协议栈和内核态协议栈新建连接的方法及装置 Download PDF

Info

Publication number
CN117041379B
CN117041379B CN202310841658.4A CN202310841658A CN117041379B CN 117041379 B CN117041379 B CN 117041379B CN 202310841658 A CN202310841658 A CN 202310841658A CN 117041379 B CN117041379 B CN 117041379B
Authority
CN
China
Prior art keywords
connection
kernel
protocol stack
user
socket
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
CN202310841658.4A
Other languages
English (en)
Other versions
CN117041379A (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.)
Yusur Technology Co ltd
Original Assignee
Yusur Technology 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 Yusur Technology Co ltd filed Critical Yusur Technology Co ltd
Priority to CN202310841658.4A priority Critical patent/CN117041379B/zh
Publication of CN117041379A publication Critical patent/CN117041379A/zh
Application granted granted Critical
Publication of CN117041379B publication Critical patent/CN117041379B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

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

Abstract

本发明提供一种同时监听用户态协议栈和内核态协议栈新建连接的方法及装置,包括:当用户模块调用用户态协议栈的listen函数监听通配地址的新建连接请求时,同时调用内核协议栈的listen函数;内核模块检查内核态套接字的接收队列中是否有新建连接,若有,则将新建连接标记为内核连接,***用户态套接字接收缓冲区;用户模块检查用户态套接字接收缓冲区,判断新建连接是用户连接还是内核连接;若为用户连接,则在用户模块中进行处理;若为内核连接,则调用内核协议栈的accept函数,在内核模块中进行处理。本发明提供的方法能够在监听用户态协议栈新建连接的同时,监听来自内核协议栈的新建连接。

Description

同时监听用户态协议栈和内核态协议栈新建连接的方法及 装置
技术领域
本发明涉及智能加速网卡技术领域,尤其涉及一种同时监听用户态协议栈和内核态协议栈新建连接的方法及装置。
背景技术
用户态协议栈和内核态协议栈是指在计算机网络通信过程中,协议栈(也称为网络协议栈)运行的两种模式。
用户态协议栈是一种以用户程序的方式运行的协议栈。在这种模式下,网络协议栈的功能被实现为用户空间中的软件库,而不是内核的一部分。用户态协议栈通过与网卡的交互来接收和发送网络数据包。它直接使用网卡提供的驱动程序或者API,绕过操作***内核,以用户空间程序的方式直接与网卡进行数据包的传输和处理。这种方式可以减少不必要的内核态切换和***调用,从而提高网络数据包的处理性能。
内核态协议栈是一种在操作***内核中运行的协议栈。在这种模式下,内核态协议栈通过操作***内核提供的网络协议栈功能来与网卡进行交互,网络协议栈的功能由操作***内核负责处理,包括协议解析、数据包转发等。内核态协议栈可以通过操作***提供的***调用接口,使用中断和硬件设备直接交互,具有较高的稳定性和安全性。
当一台设备同时装载智能加速网卡和普通网卡时,在使用用户态极速协议栈进行消息处理时,针对智能加速网卡收到的消息:用户态协议栈可以直接与智能加速网卡进行交互,利用网卡的硬件加速能力,将数据包通过用户态极速协议栈进行处理。由于智能加速网卡具有更高级的硬件功能,用户态协议栈可以充分利用这些功能来提高性能,并且无需借助内核的支持。针对普通网卡收到的消息:由于普通网卡没有智能加速功能,用户态协议栈无法直接利用其硬件加速能力。因此,当普通网卡收到消息时,由于用户态协议栈无法直接操作网卡,必须将消息传递给内核态协议栈处理。
发明内容
鉴于此,本发明实施例提供了一种同时监听用户态协议栈和内核态协议栈新建连接的方法及装置,以消除或改善现有技术中存在的一个或更多个缺陷,解决现有技术中当使用用户态协议栈监听所有网络接口时,只能处理来自智能加速网卡的连接,对于通过普通网卡接收的连接只能由内核协议栈处理,即无法处理来自普通网卡的连接,从而导致无法满足实际场景需求的问题。
一方面,本发明提供一种同时监听用户态协议栈和内核态协议栈新建连接的方法,其特征在于,所述方法在用户模块和内核模块执行,所述方法包括以下步骤:
在所述内核模块中,当所述用户模块调用用户态协议栈的listen函数监听通配地址的新建连接请求时,同时调用内核协议栈的listen函数进行监听;检查内核态套接字的接收队列中是否有新建连接,若有新建连接,则将所述新建连接标记为内核连接,并***用户态套接字接收缓冲区;
在所述用户模块中,检查所述用户态套接字接收缓冲区,并获取各新建连接的连接信息;根据所述连接信息判断所述新建连接是用户连接还是内核连接;若为所述用户连接,则在所述用户模块中对相应的用户连接进行处理;
若为所述内核连接,则调用所述内核协议栈的accept函数,在所述内核模块中对相应的内核连接进行处理。
在本发明的一些实施例中,所述内核模块设有定时器,按照预设时间段检查所述内核态套接字在所述内核协议栈是否有新建连接;若有新建连接,所述内核态套接字的接收队列中存在相应的新建连接请求。
在本发明的一些实施例中,若有新建连接,则将所述新建连接标记为内核连接,还包括:
获取所述新建连接对应的套接字结构体,在类别属性中进行设置,以将所述新建连接标记为内核连接;所述类别包括用户连接和内核连接。
在本发明的一些实施例中,若有新建连接,则将所述新建连接标记为内核连接,并***用户态套接字接收缓冲区,还包括:
获取所述用户态套接字接收缓冲区的偏移量,以确定所述用户态套接字接收缓冲区的队尾位置;将所述新建连接的连接信息***至所述用户态套接字接收缓冲区的队尾位置,以供所述用户模块提取。
在本发明的一些实施例中,所述连接信息至少包括源地址和端口、目标地址和端口、类别标记、连接状态、协议信息。
在本发明的一些实施例中,在所述用户模块中对相应的用户连接进行处理,还包括:
调用所述用户态协议栈的accept函数,接收连接请求,并返回一个新的套接字,用于与客户端建立通信;
调用所述用户态协议栈的recv函数,从已建立连接的套接字中接收并存储数据;
调用所述用户态协议栈的send函数,向已建立连接的套接字发送预设应用程序提供的数据;
调用所述用户态协议栈的close函数,关闭已建立的套接字连接。
在本发明的一些实施例中,在所述内核模块中对相应的内核连接进行处理,还包括:
调用所述内核态协议栈的accept函数,接收连接请求,并返回一个新的套接字和内核文件描述符,用于与客户端建立通信;
调用所述内核态协议栈的recv函数,从已建立连接的套接字中接收并存储数据;
调用所述内核态协议栈的send函数,向已建立连接的套接字发送预设应用程序提供的数据;
调用所述内核态协议栈的close函数,关闭已建立的套接字连接。
另一方面,本发明提供一种同时监听用户态协议栈和内核态协议栈新建连接的装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如上文中任一项所述同时监听用户态协议栈和内核态协议栈新建连接的方法的步骤。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上文中任一项所述同时监听用户态协议栈和内核态协议栈新建连接的方法的步骤。
本发明的有益效果至少是:
本发明提供一种同时监听用户态协议栈和内核态协议栈新建连接的方法及装置,包括:当用户模块调用用户态协议栈的listen函数监听通配地址的新建连接请求时,同时调用内核协议栈的listen函数;内核模块检查内核态套接字的接收队列中是否有新建连接,若有,则将新建连接标记为内核连接,***用户态套接字接收缓冲区;用户模块检查用户态套接字接收缓冲区,判断新建连接是用户连接还是内核连接;若为用户连接,则在用户模块中进行处理;若为内核连接,则调用内核协议栈的accept函数,在内核模块中进行处理。本发明提供的方法将由智能加速网卡收到的新建连接分类为用户连接,普通网卡收到的新建连接分类为内核连接,从而能够在监听用户态协议栈新建连接的同时,监听来自内核协议栈的新建连接,提升数据传输与通信效率。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例中同时监听用户态协议栈和内核态协议栈新建连接的方法的步骤示意图。
图2为本发明一实施例中同时监听用户态协议栈和内核态协议栈新建连接的方法的流程图。
图3为本发明一实施例中用户模块和内核模块中新建连接的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连接,也可以表示存在中间物的间接连接。
在下文中,将参考附图描述本发明的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
这里需要强调的是,在下文中提及的各步骤标记并不是对各步骤先后顺序的限定,而应当理解为可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
为了解决现有技术中当使用用户态协议栈监听所有地址时,只能处理来自智能加速网卡的连接,对于通过普通网卡接收的连接只能由内核协议栈处理,即无法处理来自普通网卡的连接,从而导致无法满足实际场景需求的问题,本发明提供一种同时监听用户态协议栈和内核态协议栈新建连接的方法,如图1所示,该方法包括以下步骤S101~S105:
在内核模块中:
步骤S101:当用户模块调用用户态协议栈的listen函数监听通配地址的新建连接请求时,同时调用内核协议栈的listen函数进行监听。
步骤S102:检查内核态套接字的接收队列中是否有新建连接。
步骤S103:若有新建连接,则将新建连接标记为内核连接,并***用户态套接字接收缓冲区。
在用户模块中:
步骤S104:检查用户态套接字接收缓冲区,并获取各新建连接的连接信息;根据连接信息判断新建连接是用户连接还是内核连接;若为用户连接,则在用户模块中对相应的用户连接进行处理。
步骤S105:若为内核连接,则调用内核协议栈的accept函数,在内核模块中对相应的内核连接进行处理。
如图2所示,为同时监听用户态协议栈和内核态协议栈新建连接的方法的流程图。
在步骤S101中,当用户模块调用用户态协议栈的listen函数监听通配地址的新建连接请求时,同时调用内核协议栈的listen函数进行监听。其中,listen函数用于在服务端监听预设地址,并相应地创建一个监听套接字,指示套接字开始接收连接请求,即,将套接字设置为被动模式,等待客户端的连接请求。通配地址又称通配符地址,指0.0.0.0地址,在网络编程中,将0.0.0.0用作地址参数表示监听所有可用的网络接口,即,用户模块指定一个套接字监听所有可用的网络接口上的连接请求。
在步骤S102中,检查内核态套接字的接收队列中是否有新建连接。
在一些实施例中,内核模块设有定时器,利用定时器设定时间段,并按照设定的时间段定期的去检查用于监听的内核态套接字在内核协议栈是否有新建连接。如果有新建连接,内核态套接字的接收队列中存在相应的新建连接请求。
在步骤S103中,根据步骤S102所述的方法判断内核态套接字的接收队列中是否有新建连接之后,若没有检查到新建连接,则返回步骤S102重新进行检查;若检查到有新建连接,则将该新建连接标记为内核连接,并***用户态套接字接收缓冲区。
在一些实施例中,若检查到有新建连接,则获取该新建连接的连接信息,将连接信息按照预设规则***用户态套接字接收缓冲区。
在一些实施例中,连接信息至少包括源地址和端口、目标地址和端口、类别标记、连接状态、协议信息等。
在一些实施例中,获取用户态套接字接收缓冲区的偏移量,以确定用户态套接字接收缓冲区的队尾位置;将新建连接的连接信息***至用户态套接字接收缓冲区的队尾位置,以供用户模块提取。其中,可以使用预设函数获取用户态套接字接收缓冲区的大小以及用户态套接字接收缓冲区内当前数据的大小,两者作差得到偏移量。同时,将新建连接的连接信息***至用户态套接字接收缓冲区的队尾位置,支持先进先出(First-in,First-out,FIFO)的处理方法,先到达的新建连接会被先处理,后到达的新建连接会被放在队列的末尾,等待处理,即,当调用accept函数时,用户态协议栈从用户态套接字接收缓冲区头部取出一个新建连接进行处理。
在一些实施例中,类型标记形式为:获取新建连接对应的套接字结构体,套接字结构体是用来存储套接字相关信息的数据结构,在其类别属性中进行设置,以将新建连接标记为内核连接。其中,类别包括用户连接和内核连接。
在步骤S104中,检查用户态套接字接收缓冲区,并获取各新建连接的连接信息;根据连接信息判断新建连接是用户连接还是内核连接;若为用户连接,则在用户模块中对相应的用户连接进行处理。
具体的,根据连接信息及其类别标记可以判断新建连接是用户连接还是内核连接,如果是用户连接,则直接在用户模块中进行处理。
在一些实施例中,在用户模块中对相应的用户连接进行处理,包括以下步骤:
调用用户态协议栈的accept函数,接收连接请求,并返回一个新的套接字,用于与客户端建立通信。
调用用户态协议栈的recv函数,从已建立连接的套接字中接收数据。其中,接收到的数据可以存储在指定的缓冲区中。
调用用户态协议栈的send函数,向已建立连接的套接字发送预设应用程序提供的数据,并会返回实际发送的字节数。
调用用户态协议栈的close函数,关闭已建立的套接字连接。
在步骤S105中,若判断为内核连接,则调用内核协议栈的accept函数,在内核模块中对相应的内核连接进行处理。
在一些实施例中,在内核模块中对相应的内核连接进行处理,包括以下步骤:
调用内核态协议栈的accept函数,接收连接请求,并返回一个新的套接字和内核文件描述符(FileDescriptor,FD),用于与客户端建立通信。
调用内核态协议栈的recv函数,从已建立连接的套接字中接收并存储数据。其中,接收到的数据可以存储在指定的缓冲区中。
调用内核态协议栈的send函数,向已建立连接的套接字发送预设应用程序提供的数据,并会返回实际发送的字节数。
调用内核态协议栈的close函数,关闭已建立的套接字连接。
在一些实施例中,如图3所示,内核模块调用内核协议栈的accept函数,接收连接请求,创建一个新的套接字,生成相应的内核文件描述符,并通过调用上文所述的recv函数、send函数、close函数等在内核模块进行处理。最终将内核文件描述符返回至用户模块,再由用户模块将内核文件描述符返回至客户端。
本发明还提供一种同时监听用户态协议栈和内核态协议栈新建连接的装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现同时监听用户态协议栈和内核态协议栈新建连接方法的步骤。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现同时监听用户态协议栈和内核态协议栈新建连接方法的步骤。
与上述方法相应地,本发明还提供了一种设备,该设备包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该设备实现如前所述方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述边缘计算服务器部署方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、软盘、硬盘、可移动存储盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
综上所述,本发明提供一种同时监听用户态协议栈和内核态协议栈新建连接的方法及装置,包括:当用户模块调用用户态协议栈的listen函数监听通配地址的新建连接请求时,同时调用内核协议栈的listen函数;内核模块检查内核态套接字的接收队列中是否有新建连接,若有,则将新建连接标记为内核连接,***用户态套接字接收缓冲区;用户模块检查用户态套接字接收缓冲区,判断新建连接是用户连接还是内核连接;若为用户连接,则在用户模块中进行处理;若为内核连接,则调用内核协议栈的accept函数,在内核模块中进行处理。本发明提供的方法将由智能加速网卡收到的新建连接分类为用户连接,普通网卡收到的新建连接分类为内核连接,从而能够在监听用户态协议栈新建连接的同时,监听来自内核协议栈的新建连接,提升数据传输与通信效率。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、***和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种同时监听用户态协议栈和内核态协议栈新建连接的方法,其特征在于,所述方法在用户模块和内核模块执行,所述方法包括以下步骤:
在所述内核模块中,当所述用户模块调用用户态协议栈的listen函数监听通配地址的新建连接请求时,同时调用内核协议栈的listen函数进行监听;检查内核态套接字的接收队列中是否有新建连接,若有新建连接,则将所述新建连接标记为内核连接,并***用户态套接字接收缓冲区;
在所述用户模块中,检查所述用户态套接字接收缓冲区,并获取各新建连接的连接信息;根据所述连接信息判断所述新建连接是用户连接还是内核连接;若为所述用户连接,则在所述用户模块中对相应的用户连接进行处理;其中,处理步骤包括调用所述用户态协议栈的accept函数,接收连接请求,并返回一个新的套接字,用于与客户端建立通信;调用所述用户态协议栈的recv函数,从已建立连接的套接字中接收并存储数据;调用所述用户态协议栈的send函数,向已建立连接的套接字发送预设应用程序提供的数据;调用所述用户态协议栈的close函数,关闭已建立的套接字连接;
若为所述内核连接,则调用所述内核协议栈的accept函数,在所述内核模块中对相应的内核连接进行处理;其中,处理步骤包括调用所述内核态协议栈的accept函数,接收连接请求,并返回一个新的套接字和内核文件描述符,用于与客户端建立通信;调用所述内核态协议栈的recv函数,从已建立连接的套接字中接收并存储数据;调用所述内核态协议栈的send函数,向已建立连接的套接字发送预设应用程序提供的数据;调用所述内核态协议栈的close函数,关闭已建立的套接字连接。
2.根据权利要求1所述的同时监听用户态协议栈和内核态协议栈新建连接的方法,其特征在于,所述内核模块设有定时器,按照预设时间段检查所述内核态套接字在所述内核协议栈是否有新建连接;若有新建连接,所述内核态套接字的接收队列中存在相应的新建连接请求。
3.根据权利要求1所述的同时监听用户态协议栈和内核态协议栈新建连接的方法,其特征在于,若有新建连接,则将所述新建连接标记为内核连接,还包括:
获取所述新建连接对应的套接字结构体,在类别属性中进行设置,以将所述新建连接标记为内核连接;所述类别包括用户连接和内核连接。
4.根据权利要求1所述的同时监听用户态协议栈和内核态协议栈新建连接的方法,其特征在于,若有新建连接,则将所述新建连接标记为内核连接,并***用户态套接字接收缓冲区,还包括:
获取所述用户态套接字接收缓冲区的偏移量,以确定所述用户态套接字接收缓冲区的队尾位置;将所述新建连接的连接信息***至所述用户态套接字接收缓冲区的队尾位置,以供所述用户模块提取。
5.根据权利要求1所述的同时监听用户态协议栈和内核态协议栈新建连接的方法,其特征在于,所述连接信息至少包括源地址和端口、目标地址和端口、类别标记、连接状态、协议信息。
6.一种同时监听用户态协议栈和内核态协议栈新建连接的装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如权利要求1至5中任一项所述方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至5中任一项所述方法的步骤。
CN202310841658.4A 2023-07-10 2023-07-10 同时监听用户态协议栈和内核态协议栈新建连接的方法及装置 Active CN117041379B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310841658.4A CN117041379B (zh) 2023-07-10 2023-07-10 同时监听用户态协议栈和内核态协议栈新建连接的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310841658.4A CN117041379B (zh) 2023-07-10 2023-07-10 同时监听用户态协议栈和内核态协议栈新建连接的方法及装置

Publications (2)

Publication Number Publication Date
CN117041379A CN117041379A (zh) 2023-11-10
CN117041379B true CN117041379B (zh) 2024-04-19

Family

ID=88636273

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310841658.4A Active CN117041379B (zh) 2023-07-10 2023-07-10 同时监听用户态协议栈和内核态协议栈新建连接的方法及装置

Country Status (1)

Country Link
CN (1) CN117041379B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117395329B (zh) * 2023-12-13 2024-02-06 井芯微电子技术(天津)有限公司 收发以太二层协议报文的方法、装置及存储介质
CN118101739A (zh) * 2024-04-25 2024-05-28 麒麟软件有限公司 网络连接重置信息获取方法、装置及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102971723A (zh) * 2011-06-28 2013-03-13 华为技术有限公司 一种分布式多进程通信方法和装置
CN110535813A (zh) * 2018-05-25 2019-12-03 网宿科技股份有限公司 内核态协议栈与用户态协议栈并存处理方法和装置
CN112422453A (zh) * 2020-12-09 2021-02-26 新华三信息技术有限公司 一种报文处理的方法、装置、介质及设备
CN115334156A (zh) * 2021-04-26 2022-11-11 深信服科技股份有限公司 报文的处理方法、装置、设备、存储介质
WO2023030178A1 (zh) * 2021-08-31 2023-03-09 华为技术有限公司 一种基于用户态协议栈的通信方法及相应装置
CN116383175A (zh) * 2023-03-21 2023-07-04 康键信息技术(深圳)有限公司 一种数据加载方法、装置、设备及计算机可读介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102971723A (zh) * 2011-06-28 2013-03-13 华为技术有限公司 一种分布式多进程通信方法和装置
CN110535813A (zh) * 2018-05-25 2019-12-03 网宿科技股份有限公司 内核态协议栈与用户态协议栈并存处理方法和装置
CN112422453A (zh) * 2020-12-09 2021-02-26 新华三信息技术有限公司 一种报文处理的方法、装置、介质及设备
CN115334156A (zh) * 2021-04-26 2022-11-11 深信服科技股份有限公司 报文的处理方法、装置、设备、存储介质
WO2023030178A1 (zh) * 2021-08-31 2023-03-09 华为技术有限公司 一种基于用户态协议栈的通信方法及相应装置
CN116383175A (zh) * 2023-03-21 2023-07-04 康键信息技术(深圳)有限公司 一种数据加载方法、装置、设备及计算机可读介质

Also Published As

Publication number Publication date
CN117041379A (zh) 2023-11-10

Similar Documents

Publication Publication Date Title
CN117041379B (zh) 同时监听用户态协议栈和内核态协议栈新建连接的方法及装置
EP2552081B1 (en) Interrupt management
WO2023284699A1 (zh) 基于Linux***的协议栈数据传输方法、计算机设备和存储介质
US7515596B2 (en) Full data link bypass
US7577707B2 (en) Method, system, and program for executing data transfer requests
CN102075389B (zh) 一种调试方法和设备
CN112532538A (zh) 流量的控制方法、装置、电子设备及计算机可读存储介质
US7987307B2 (en) Interrupt coalescing control scheme
US20040213243A1 (en) Transmission components for processing VLAN tag and priority packets supported by using single chip's buffer structure
EP1931061B1 (en) Managing the connection status of wireless communication
CN107800663B (zh) 流量离线文件的检测方法及装置
US9069592B2 (en) Generic transport layer mechanism for firmware communication
US9621633B2 (en) Flow director-based low latency networking
EP3633494A1 (en) Graceful out-of-band power control of remotely-managed computer systems
US20050097226A1 (en) Methods and apparatus for dynamically switching between polling and interrupt to handle network traffic
US6742075B1 (en) Arrangement for instigating work in a channel adapter based on received address information and stored context information
JP5655533B2 (ja) 情報処理装置の制御方法、情報処理装置、及び情報処理装置の制御プログラム
CN115941809A (zh) 一种用于dcim的多种物联网终端协议的聚合处理方法及***
CN114124568A (zh) 一种连接控制方法及***
CN114430392A (zh) 一种Intel网卡连接Switch拓展网口的方法与终端
KR101446280B1 (ko) 인터미디어트 드라이버를 이용한 변종 악성코드 탐지 및 차단 시스템 및 그 방법
US9948533B2 (en) Interrupt management
US20100005197A1 (en) Network device and active control card detecting method
CN110875910B (zh) 一种获取网络传输信息的方法、装置及***
CN112929197A (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
GR01 Patent grant
GR01 Patent grant