CN107483369B - 一种报文处理方法及虚拟交换机 - Google Patents

一种报文处理方法及虚拟交换机 Download PDF

Info

Publication number
CN107483369B
CN107483369B CN201710824735.XA CN201710824735A CN107483369B CN 107483369 B CN107483369 B CN 107483369B CN 201710824735 A CN201710824735 A CN 201710824735A CN 107483369 B CN107483369 B CN 107483369B
Authority
CN
China
Prior art keywords
message
processed
network card
target
header
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
CN201710824735.XA
Other languages
English (en)
Other versions
CN107483369A (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201710824735.XA priority Critical patent/CN107483369B/zh
Publication of CN107483369A publication Critical patent/CN107483369A/zh
Application granted granted Critical
Publication of CN107483369B publication Critical patent/CN107483369B/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
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]

Abstract

本发明实施例公开了一种报文处理方法及虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法包括:接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器。从本发明实施例可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。

Description

一种报文处理方法及虚拟交换机
技术领域
本发明涉及通信技术领域,尤其涉及一种报文处理方法及虚拟交换机。
背景技术
在网络虚拟化场景中,虚拟交换机用于为公众网络用户提供虚拟PBX(PrivateBranch Exchange,PBX)服务,虚拟交换机的种类有很多,其中一种为open vswitch,在openvswitch中通常应用虚拟扩展局域网VxLan(Virtual Extensible Local Area Network,VxLan)以实现相同和不同网段内设备的通信。
相关技术中,应用VxLan的open vswitch在发送待处理报文时,通常需要通过Vxlan端口将待处理报文封装成用户数据报协议(User Datagram Protocol,UDP)报文,并通过open vswitch所在的主机协议栈获取路由信息,然后通过主机协议栈根据获取的路由信息将UDP报文发送出去。
然而,由于主机协议栈中的协议非常多,在具体执行的过程中,主机协议栈还自发强制地对待处理报文做了例如报文预处理等许多冗余处理,因此造成了报文的转发路径过长,导致了open vswitch的报文转发性能差。
发明内容
为了解决上述技术问题,本发明提供一种报文处理方法及虚拟交换机,能够极大程度地缩短报文的转发路径,提高交换机的转发性能。
为了达到本发明目的,本发明提供了一种报文处理方法,应用于虚拟交换机,所述虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法包括:
接收计算机发送的第一待处理报文;其中,所述第一待处理报文为需要经过所述目标端口的报文;
对所述第一待处理报文进行封装;
通过所述目标网卡将完成封装的所述第一待处理报文发送给服务器。
所述目标网卡上配置有互联网协议地址和端口号,所述对第一待处理报文进行封装,包括:
通过所述目标端口为所述第一待处理报文封装第一用户数据报协议报文头和虚拟扩展局域网报文头,以完成对所述第一待处理报文的封装;其中,所述第一用户数据报协议报文头包括第一源互联网协议地址、第一源端口号、第一目的互联网协议地址和第一目的端口号,所述虚拟扩展局域网报文头包括所述目标网卡的互联网协议地址和端口号。
所述通过目标网卡将完成封装的第一待处理报文发送给服务器,包括:
通过所述目标网卡根据所述第一目的互联网协议地址和第一目的端口号将完成封装的所述第一待处理报文发送给所述服务器。
所述将完成封装的第一待处理报文发送给服务器之后,所述方法还包括:
接收所述服务器发送的第二待处理报文;其中,所述第二处理报文包括第二用户数据报协议报文头和所述虚拟扩展局域网报文头,所述第二用户数据报协议报文头包括第二源互联网协议地址、第二源端口号、第二目的互联网协议地址和第二目的端口号;
对所述第二待处理报文进行解封装;
将完成解封装的所述第二待处理报文发送给发送所述第一待处理报文的计算机。
所述接收服务器发送的第二待处理报文,包括:
通过所述网卡接收所述服务器发送的所述第二待处理报文;
所述对第二待处理报文进行解封装,包括:
通过所述目标端口剥离所述第二待处理报文的第二用户数据报协议报文头和虚拟扩展局域网报文头,以完成对所述第二待处理报文的解封装。
所述通过目标端口剥离第二待处理报文的用户数据报协议报文头和虚拟扩展局域网报文头,包括:
通过所述目标端口判断所述目标网卡的信息中的互联网协议地址是否是所述目标网卡的互联网协议地址,且所述目标网卡的信息中的端口号是否是所述目的网卡的端口号;
若所述目标网卡的信息中的互联网协议地址是所述目标端口的互联网协议地址,并且所述目标网卡的信息中的端口号是所述目标端口的端口号,通过所述目标端口剥离所述第二待处理报文中的第二用户数据报协议报文头和虚拟扩展局域网报文头。
所述将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机,包括:
根据所述第二目的互联网协议地址和第二目的端口号将完成解封装的所述第二待处理报文发送给发送所述第一待处理报文的计算机。
本发明还提供了一种虚拟交换机,所述虚拟交换机上部署有与所述目标端口建立连接的目标网卡,所述交换机包括:
接收模块,用于接收计算机发送的第一待处理报文;其中,所述第一待处理报文为需要经过所述目标端口的报文;
封装模块,用于对所述第一待处理报文进行封装;
发送模块,用于通过所述目标网卡将完成封装的所述第一待处理报文发送给服务器。
所述目标网卡上配置有互联网协议地址和端口号,所述封装模块,具体用于通过所述目标端口为所述第一待处理报文封装第一用户数据报协议报文头和虚拟扩展局域网报文头,以完成对所述第一待处理报文的封装;其中,所述第一用户数据报协议报文头包括第一源互联网协议地址、第一源端口号、第一目的互联网协议地址和第一目的端口号;所述虚拟扩展局域网报文头包括所述目标网卡的互联网协议地址和端口号。
还包括:解封装模块,用于对第二待处理报文进行解封装;其中,所述第二处理报文包括第二用户数据报协议报文头和所述虚拟扩展局域网报文头,所述第二用户数据报协议报文头包括第二源互联网协议地址、第二源端口号、第二目的互联网协议地址和第二目的端口号;
所述接收模块,还用于接收所述服务器发送的所述第二待处理报文;
所述发送模块,还用于将完成解封装的所述第二待处理报文发送给发送所述第一待处理报文的计算机。
与现有技术相比,本发明提供的报文处理方法应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,无需再通过自身所在的主机协议栈获取路由信息并根据获取的路由信息转发报文,而是直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例提供的一种报文处理方法的流程示意图;
图2为本发明实施例提供的另一种报文处理方法的流程示意图;
图3为本发明实施例提供的又一种报文处理方法的流程示意图;
图4为本发明实施例提供的又一种报文处理方法的流程示意图;
图5为本发明实施例提供的又一种报文处理方法的流程示意图;
图6为现有技术的报文转发示意图;
图7为本发明实施例提供的报文转发示意图;
图8为本发明实施例提供的一种虚拟交换机的结构示意图;
图9为本发明实施例提供的另一种虚拟交换机的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
本发明实施例提供一种报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,如图1所示,该方法包括:
步骤101、接收计算机发送的第一待处理报文。
其中,所述第一待处理报文为需要经过所述目标端口的报文。
需要说明的是,交换机会收到很多待处理报文,这些报文中有一些是需要经过目标端口的,因此这一部分报文才是第一待处理报文。
还需要说明的是,本发明中所有实施例提供的报文处理方法的执行主体均为虚拟交换机。
步骤102、对第一待处理报文进行封装。
步骤103、通过目标网卡将完成封装的第一待处理报文发送给服务器。
具体的,由于虚拟交换机上存在于目标端口建立连接的目标网卡,因此,经由目标端口处理的报文都可以不再依赖主机协议栈,而由虚拟交换机通过目标网卡发出。
需要说明的是,现有技术中网卡可能有很多个,这样要实现报文的转发需要获取路由信息(即具体是由哪个网卡承担转发任务的),而本发明提供的报文处理方法中,目标网卡与目标端口建立连接,说明目标网卡是专门配置给目标端口的,因此无需再通过自身所在的主机协议栈获取路由信息并根据获取的路由信息转发报文,而所有需要经过目标端口处理的报文都可以通过目标网卡以实现直接的转发。
本发明实施例所提供的报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
本发明实施例提供另一种报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,目标网卡上配置有互联网协议(Internet Protocol,IP)地址和端口号,如图2所示,该方法包括:
步骤201、接收计算机发送的第一待处理报文。
其中,第一待处理报文为需要经过目标端口的报文。
步骤202、通过目标端口为第一待处理报文封装第一UDP报文头和Vxlan报文头,以完成对第一待处理报文的封装。
其中,第一UDP报文头包括第一源IP地址、第一源端口号、第一目的IP和第一目的端口号,VxLan报文头包括目标网卡的IP地址和端口号。
需要说明的是,目标端口可以是VxLan,当目标端口是VxLan是,虚拟交换机可以是open vswitch。
还需要说明的是,因为虚拟交换机通过目标网卡进行报文转发,当报文发送回来时,需要首先发送到目标网卡上,因此需要为第一待处理报文封装VxLan报文头。
具体的,第一源IP地址和第一源端口号分别指的是发送第一待处理报文的最原始发送方的IP地址和端口号,第一目的IP地址和第一目的端口号分别指的是第一待处理报文最终接收方的IP地址和端口号;具体来说,第一源IP地址和第一源端口号分别是发送第一待处理报文的计算机的IP地址和端口号,第一目的IP地址和第一目的端口号分别是处理第一待处理报文的服务器的IP地址和端口号。
步骤203、通过目标网卡将完成封装的第一待处理报文发送给服务器。
具体的,该步骤可以通过通过目标网卡根据第一目的IP地址和第一目的端口号将完成封装的第一待处理报文发送给服务器实现。
本发明实施例所提供的报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
本发明实施例提供又一种报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,目标网卡上配置有IP地址和端口号,如图3所示,该方法包括:
步骤301、接收计算机发送的第一待处理报文。
其中,第一待处理报文为需要经过目标端口的报文。
步骤302、通过目标端口为第一待处理报文封装第一UDP报文头和VxLan报文头,以完成对第一待处理报文的封装。
其中,第一UDP报文头包括第一源IP地址、第一源端口号、第一目的IP地址和第一目的端口号,VxLan报文头包括目标网卡的IP地址和端口号。
步骤303、通过目标网卡根据第一目的IP地址和第一目的端口号将完成封装的第一待处理报文发送给服务器。
步骤304、接收服务器发送的第二待处理报文。
其中,第二处理报文包括第二UDP报文头和VxLan报文头,第二UDP报文头包括第二源IP地址、第二源端口号、第二目的IP地址和第二目的端口号。
步骤305、对第二待处理报文进行解封装。
步骤306、将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机。
本发明实施例所提供的报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
本发明实施例提供又一种报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,目标网卡上配置有IP地址和端口号,如图4所示,该方法包括:
步骤401、接收计算机发送的第一待处理报文。
步骤402、通过目标端口为第一待处理报文封装第一UDP报文头和VxLan报文头,以完成对第一待处理报文的封装。
其中,第一UDP报文头包括第一源IP地址、第一源端口号、第一目的IP地址和第一目的端口号,VxLan报文头包括目标网卡的IP地址和端口号。
步骤403、通过目标网卡根据第一目的IP地址和第一目的端口号将完成封装的第一待处理报文发送给服务器。
步骤404、通过网卡接收服务器发送的第二待处理报文。
其中,第二处理报文包括第二UDP报文头和VxLan报文头,第二UDP报文头包括第二源IP地址、第二源端口号、第二目的IP地址和第二目的端口号。
需要说明的是,第一待处理报文和第二待处理报文不同,第一待处理报文不携带任何报文头,而第二待处理报文携带UDP报文头和VxLan报文头。
步骤405、通过目标端口剥离第二待处理报文的第二UDP报文头和VxLan报文头,以完成对第二待处理报文的解封装。
步骤406、将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机。
本发明实施例所提供的报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器;接收服务器发送的第二待处理报文;对第二待处理报文进行解封装;将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发;当虚拟交换机接收到服务器发送的第二待处理报文时,直接通过目标端口判断是否是从自身发送出去的报文,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
本发明实施例提供又一种报文处理方法,应用于虚拟交换机,虚拟交换机上部署有目与目标端口建立连接的目标网卡,目标网卡上配置有IP地址和端口号,如图5所示,该方法包括:
步骤501、接收计算机发送的第一待处理报文。
步骤502、通过目标端口为第一待处理报文封装第一UDP报文头和VxLan报文头,以完成对第一待处理报文的封装。
其中,第一UDP报文头包括第一源IP地址、第一源端口号、第一目的IP地址和第一目的端口号,VxLan报文头包括目标网卡的IP地址和端口号。
步骤503、通过目标网卡根据第一目的IP地址和第一目的端口号将完成封装的第一待处理报文发送给服务器。
步骤504、通过网卡接收服务器发送的第二待处理报文。
其中,第二处理报文包括第二UDP报文头和VxLan报文头,第二UDP报文头包括第二源IP地址、第二源端口号、第二目的IP地址和第二目的端口号。
步骤505、通过目标端口判断目标网卡的信息中的IP地址是否是目标网卡的IP地址,且目标网卡的信息中的端口号是否是目的网卡的端口号。
步骤506、若目标网卡的信息中的IP地址是目标端口的IP地址,并且目标网卡的信息中的端口号是目标端口的端口号,通过目标端口剥离第二待处理报文中的第二UDP报文头和VxLan报文头,以完成对第二待处理报文的解封装。
步骤507、将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机。
需要说明的是,现有技术的报文转发示意图可以如图6所示,报文的转发需要依赖主机协议栈,本发明提供的报文转发示意图可以如图7所示,报文的转发不需要依赖主机协议栈。
本发明实施例所提供的报文处理方法,应用于虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器;接收服务器发送的第二待处理报文;对第二待处理报文进行解封装;将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发;当虚拟交换机接收到服务器发送的第二待处理报文时,直接通过目标端口判断是否是从自身发送出去的报文,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
本发明实施例提供一种虚拟交换机,虚拟交换机上部署有与目标端口建立连接的目标网卡,如图8所示,该虚拟交换机6包括:
接收模块61,用于接收计算机发送的第一待处理报文;其中,所述第一待处理报文为需要经过所述目标端口的报文。
封装模块62,用于对第一待处理报文进行封装。
发送模块63,用于通过网卡将完成封装的第一待处理报文发送给服务器。
本发明实施例所提供的虚拟交换机,部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
进一步,目标网卡上配置有互联网协议地址和端口号,封装模块62,具体用于通过目标端口为第一待处理报文封装第一UDP报文头和VxLan报文头,以完成对第一待处理报文的封装;其中,第一UDP报文头包括第一源IP地址、第一源端口号、第一目的IP地址和第一目的端口号,VxLan报文头包括目标网卡的IP地址和端口号。
进一步,在图8对应的实施例的基础上,本发明实施例提供另一种虚拟交换机,如图9所示,该虚拟交换机6还包括:
解封装模块64,用于对第二待处理报文进行解封装;其中,第二处理报文包括第二UDP报文头和VxLan报文头,第二UDP报文头包括第二源IP地址、第二源端口号、第二目的IP地址和第二目的端口号。
接收模块61,还用于接收服务器发送的第二待处理报文。
发送模块63,还用于将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机。
进一步,发送模块63,具体还用于通过网卡接收服务器发送的第二待处理报文。
解封装模块64,具体用于通过目标端口剥离第二待处理报文的第二UDP报文头和VxLan报文头,以完成对第二待处理报文的解封装。
进一步,解封装模块64,具体还用于:
通过目标端口判断目标网卡的信息中的IP地址是否是目标网卡的IP地址,且目标网卡的信息中的端口号是否是目的网卡的端口号。
若目标网卡的信息中的IP地址是目标端口的IP地址,并且目标网卡的信息中的端口号是目标端口的端口号,通过目标端口剥离第二待处理报文中的第二UDP报文头和VxLan报文头,以完成对第二待处理报文的解封装。
本发明实施例所提供的虚拟交换机,部署有与目标端口建立连接的目标网卡,该方法至少包括接收计算机发送的第一待处理报文;对第一待处理报文进行封装;通过目标网卡将完成封装的第一待处理报文发送给服务器;接收服务器发送的第二待处理报文;对第二待处理报文进行解封装;将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机。从本发明提供的技术方案可见,由于虚拟交换机上部署有与目标端口建立连接的独立网卡,因此,当虚拟交换机接收到计算机发送的待处理报文时,直接将报文封装并通过目标网卡将完成封装的待处理报文进行转发;当虚拟交换机接收到服务器发送的第二待处理报文时,直接通过目标端口判断是否是从自身发送出去的报文,从而极大程度地缩短了报文的转发路径,提高了虚拟交换机的转发性能。
在实际应用中,所述接收模块61、封装模块62、发送模块63和解封装模块64均可由位于虚拟交换机的中央处理器(Central Processing Unit,CPU)、微处理器(MicroProcessor Unit,MPU)、数字信号处理器(Digital Signal Processor,DSP)或现场可编程门阵列(Field Programmable Gate Array,FPGA)等实现。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (8)

1.一种报文处理方法,其特征在于,应用于虚拟交换机,所述虚拟交换机上部署有与目标端口建立连接的目标网卡,所述目标网卡上配置有互联网协议地址和端口号,所述方法包括:
接收计算机发送的第一待处理报文;其中,所述第一待处理报文为需要经过所述目标端口的报文;
通过目标端口为第一待处理报文封装第一用户数据报协议报文头和虚拟扩展局域网报文头,以完成对第一待处理报文的封装;其中,所述第一用户数据报协议报文头包括第一源互联网协议地址、第一源端口号、第一目的互联网协议和第一目的端口号,所述虚拟扩展局域网报文头包括所述目标网卡的IP地址和端口号;
通过所述目标网卡将完成封装的所述第一待处理报文发送给服务器。
2.根据权利要求1所述的方法,其特征在于,所述通过目标网卡将完成封装的第一待处理报文发送给服务器,包括:
通过所述目标网卡根据所述第一目的互联网协议地址和第一目的端口号将完成封装的所述第一待处理报文发送给所述服务器。
3.根据权利要求1或2所述的处理方法,其特征在于,所述将完成封装的第一待处理报文发送给服务器之后,所述方法还包括:
接收所述服务器发送的第二待处理报文;其中,所述第二待处理报文包括第二用户数据报协议报文头和所述虚拟扩展局域网报文头,所述第二用户数据报协议报文头包括第二源互联网协议地址、第二源端口号、第二目的互联网协议地址和第二目的端口号;
对所述第二待处理报文进行解封装;
将完成解封装的所述第二待处理报文发送给发送所述第一待处理报文的计算机。
4.根据权利要求3所述的处理方法,其特征在于,所述接收服务器发送的第二待处理报文,包括:
通过所述网卡接收所述服务器发送的所述第二待处理报文;
所述对第二待处理报文进行解封装,包括:
通过所述目标端口剥离所述第二待处理报文的第二用户数据报协议报文头和虚拟扩展局域网报文头,以完成对所述第二待处理报文的解封装。
5.根据权利要求4所述的处理方法,其特征在于,所述通过目标端口剥离第二待处理报文的用户数据报协议报文头和虚拟扩展局域网报文头,包括:
通过所述目标端口判断所述目标网卡的信息中的互联网协议地址是否是所述目标网卡的互联网协议地址,且所述目标网卡的信息中的端口号是否是所述目的网卡的端口号;
若所述目标网卡的信息中的互联网协议地址是所述目标端口的互联网协议地址,并且所述目标网卡的信息中的端口号是所述目标端口的端口号,通过所述目标端口剥离所述第二待处理报文中的第二用户数据报协议报文头和虚拟扩展局域网报文头。
6.根据权利要求4或5所述的处理方法,其特征在于,所述将完成解封装的第二待处理报文发送给发送第一待处理报文的计算机,包括:
根据所述第二目的互联网协议地址和第二目的端口号将完成解封装的所述第二待处理报文发送给发送所述第一待处理报文的计算机。
7.一种虚拟交换机,其特征在于,所述虚拟交换机上部署有与目标端口建立连接的目标网卡,所述目标网卡上配置有互联网协议地址和端口号,所述交换机包括:
接收模块,用于接收计算机发送的第一待处理报文;其中,所述第一待处理报文为需要经过所述目标端口的报文;
封装模块,用于通过所述目标端口为所述第一待处理报文封装第一用户数据报协议报文头和虚拟扩展局域网报文头,以完成对所述第一待处理报文的封装;其中,所述第一用户数据报协议报文头包括第一源互联网协议地址、第一源端口号、第一目的互联网协议地址和第一目的端口号,所述虚拟扩展局域网报文头包括所述目标网卡的IP地址和端口号;
发送模块,用于通过所述目标网卡将完成封装的所述第一待处理报文发送给服务器。
8.根据权利要求7所述的虚拟交换机,其特征在于,还包括:
解封装模块,用于对第二待处理报文进行解封装;其中,所述第二待处理报文包括第二用户数据报协议报文头和所述虚拟扩展局域网报文头,所述第二用户数据报协议报文头包括第二源互联网协议地址、第二源端口号、第二目的互联网协议地址和第二目的端口号;
所述接收模块,还用于接收所述服务器发送的所述第二待处理报文;
所述发送模块,还用于将完成解封装的所述第二待处理报文发送给发送所述第一待处理报文的计算机。
CN201710824735.XA 2017-09-13 2017-09-13 一种报文处理方法及虚拟交换机 Active CN107483369B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710824735.XA CN107483369B (zh) 2017-09-13 2017-09-13 一种报文处理方法及虚拟交换机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710824735.XA CN107483369B (zh) 2017-09-13 2017-09-13 一种报文处理方法及虚拟交换机

Publications (2)

Publication Number Publication Date
CN107483369A CN107483369A (zh) 2017-12-15
CN107483369B true CN107483369B (zh) 2020-09-08

Family

ID=60585359

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710824735.XA Active CN107483369B (zh) 2017-09-13 2017-09-13 一种报文处理方法及虚拟交换机

Country Status (1)

Country Link
CN (1) CN107483369B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110912825B (zh) * 2018-09-18 2022-08-02 阿里巴巴集团控股有限公司 一种报文的转发方法、装置、设备及系统
CN113783910B (zh) * 2020-06-09 2024-02-13 阿里巴巴集团控股有限公司 一种数据转发的方法、装置及系统
CN113411200B (zh) * 2021-05-08 2022-07-15 中国科学院计算技术研究所 一种基于仿真网络封装、解封及传输虚拟流量的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916314A (zh) * 2013-12-26 2014-07-09 杭州华为数字技术有限公司 报文转发控制方法和相关装置及物理主机
CN105162674A (zh) * 2015-10-16 2015-12-16 上海斐讯数据通信技术有限公司 一种物理机访问虚拟网络的方法及网卡
CN105207873A (zh) * 2015-08-31 2015-12-30 华为技术有限公司 一种报文处理方法和装置
CN106330779A (zh) * 2015-06-23 2017-01-11 联想企业解决方案(新加坡)有限公司 服务器、物理交换机以及通信系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105227498B (zh) * 2014-06-27 2018-03-02 国际商业机器公司 叠加网络交换机及其使用的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916314A (zh) * 2013-12-26 2014-07-09 杭州华为数字技术有限公司 报文转发控制方法和相关装置及物理主机
CN106330779A (zh) * 2015-06-23 2017-01-11 联想企业解决方案(新加坡)有限公司 服务器、物理交换机以及通信系统
CN105207873A (zh) * 2015-08-31 2015-12-30 华为技术有限公司 一种报文处理方法和装置
CN105162674A (zh) * 2015-10-16 2015-12-16 上海斐讯数据通信技术有限公司 一种物理机访问虚拟网络的方法及网卡

Also Published As

Publication number Publication date
CN107483369A (zh) 2017-12-15

Similar Documents

Publication Publication Date Title
CN107070691B (zh) Docker容器的跨主机通信方法和系统
CN109361606B (zh) 一种报文处理系统及网络设备
EP3782336B1 (en) Multi-vrf universal device internet protocol address for fabric edge devices
US11689501B2 (en) Data transfer method and virtual switch
US10432578B2 (en) Client address based forwarding of dynamic host configuration protocol response packets
CN107483369B (zh) 一种报文处理方法及虚拟交换机
CN107645433B (zh) 报文转发方法及装置
CN110855568B (zh) 报文转发方法及系统
US10454882B2 (en) DHCP in layer-3 overlay with anycast address support and network address transparency
CN107948077B (zh) 一种数据报文的转发方法及装置
CN113271245B (zh) 报文处理方法、装置、网卡及计算机可读存储介质
US8472420B2 (en) Gateway device
CN112929419B (zh) 一种数据包传输方法、装置、电子设备及可读存储介质
CN106507414B (zh) 报文转发方法及装置
CN104796338A (zh) 虚拟机迁移方法及装置
US9172775B2 (en) Network communication system, device, and method for reducing a network addressing header
CN108259298A (zh) 一种报文转发方法及装置
CN112866206A (zh) 一种单向数据传输方法及装置
CN104579973A (zh) 一种虚拟集群中的报文转发方法和装置
CN108259297B (zh) 一种报文处理方法及装置
CN111464879B (zh) 一种数据通信的方法及装置
CN110351394B (zh) 网络数据的处理方法及装置、计算机装置及可读存储介质
CN108471374B (zh) 数据报文的转发方法及装置
CN109525479B (zh) 一种报文处理方法及设备
CN108156066B (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200723

Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province

Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd.

Address before: 450018 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601

Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant