CN109496409A - 一种数据传送的方法和虚拟交换机 - Google Patents

一种数据传送的方法和虚拟交换机 Download PDF

Info

Publication number
CN109496409A
CN109496409A CN201780040463.2A CN201780040463A CN109496409A CN 109496409 A CN109496409 A CN 109496409A CN 201780040463 A CN201780040463 A CN 201780040463A CN 109496409 A CN109496409 A CN 109496409A
Authority
CN
China
Prior art keywords
data message
virtual switch
message
data
characteristic information
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.)
Granted
Application number
CN201780040463.2A
Other languages
English (en)
Other versions
CN109496409B (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN109496409A publication Critical patent/CN109496409A/zh
Application granted granted Critical
Publication of CN109496409B publication Critical patent/CN109496409B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • 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/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • 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/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • 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/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种数据传送的方法和虚拟交换机。虚拟交换机接收数据报文时,提取数据报文的特征信息,根据提取的数据报文的特征信息,确定数据报文所属的数据流是否配置了加速转发规则。若数据报文所属的数据流配置了加速转发规则,虚拟交换机绕过Linux网桥,直接向接收端发送所述第一数据报文,从而减少了数据报文在内核态和用户态之间的切换次数,提高数据报文转发的效率。

Description

一种数据传送的方法和虚拟交换机
技术领域
本发明涉及信息技术领域,尤其涉及一种数据传送的方法和虚拟交换机。
背景技术
公有云场景下,各种应用和服务都在同一个平台上运行,这对网络安全提出了较高的要求。对数据流的网络安全验证,可通过在Linux网桥中配置IPTABLES规则来实现。如图1所示,第一虚拟机100向第二虚拟机130发送数据流时,数据流在到达虚拟交换机120并由虚拟交换机120转发之前,首先进入Linux网桥110,在Linux网桥110中利用IPTABLES规则来实现安全验证。在Linux网桥110中通过安全验证的数据流被导入虚拟交换机进行流量转发,而未通过安全验证的数据流在Linux网桥110中被丢弃。
在Linux网桥中配置的IPTABELS规则可以实现丰富的网络安全功能,然而,IPTABLES为了考虑兼容性以及丰富的功能,有些安全验证的实现会导致数据流转发性能的下降。同时,由于Linux网桥中的安全验证在内核态进行,虚拟交换机对数据流的转发在用户态进行,那么每次数据流经虚拟机交换机转发的过程,都要经过由内核态至用户态的切换。而内核态至用户态的切换会导致缓存的污染,从而进一步导致数据流转发效率的下降。
发明内容
本发明提供了一种数据传送的方法和虚拟交换机,本发明中,部分数据报文可以绕过安全验证模块,直接由虚拟交换机转发,减少了数据流转发过程中数据报文在用户态和内核态间的切换次数,提高了虚拟交换机转发数据流的效率。
本发明的第一方面提供一种数据传送方法,该方法包括:虚拟交换机接收第一数据报文,提取该第一数据报文的特征信息后,根据提取的该第一数据报文的特征信息,确定该第一数据报文所属的数据流是否配置了加速转发规则。该加速转发规则指示该第一数据报文所属的数据流中的第二数据报文已经经过安全验证模块的验证且验证结果为安全。若该第一数据报文所属的数据流配置了加速转发规则,该虚拟交换机绕过该安全验证模块向接收端发送该第一数据报文。该安全验证模块包括但不限于是Linux网桥,用于验证该第一数据报文是否安全。
在本实现方式中,发送端经该虚拟交换机向接收端发送数据报文时,所属数据流配置了加速转发规则的数据报文可以绕过安全验证模块,不经安全验证,直接由虚拟交换机转发,减少了数据报文在内核态和用户态之间的切换次数,提高数据报文转发的效率。
结合第一方面,在第一方面的第一种实现方式中,该安全验证模块验证该第一数据报文是否安全,如果该第一数据的验证结果为安全,该安全验证模块将该第一数据报文转发给接收端,如果不安全,该安全验证模块丢弃该第一数据报文。本实现方式提供了在不能通过安全验证的情况下,该第一数据报文的走向。
结合第一方面或第一方面的第一种实现方式,在第一方面的第二种实现方式中,若该第一数据报文所属的数据流未配置加速转发规则,该虚拟交换机将该第一数据报文转发到该安全验证模块。本实现方式提供了所属的数据流未配置加速转发规则的数据报文的走向,为其提供了安全验证模块中的安全验证,保证了所有转发的数据流的安全。
结合第一方面或第一方面的第一种实现方式,在第一方面的第三种实现方式中,该虚拟交换机提取该第一数据报文的特征信息之前,确定该第一数据报文是否经过安全验证,若该第一数据报文未经过安全验证提取该第一数据报文的特征信息的步骤。本实现方式补充了本发明数据传送的方法,使得方法更加完整。
结合第一方面的第三种实现方式,在第一方面的第四种实现方式中,若该虚拟交换机确定该第一数据报文经过安全验证,则该虚拟交换机提取该第一数据报文的特征信息,根据该第一数据报文的特征信息建立该第一数据报文所属的数据流的加速转发规则,并向该接收端发送所述第一数据报文。本实现方式进一步补充了本发明数据传送的方法,为第一数据报文所属的数据流配置加速转发规则,使得该数据流中的第二数据报文经该虚拟交换机转发时,可以绕过该安全验证模块,进一步提高了数据流转发的效率。
结合第一方面的第四种实现方式,在第一方面的第五种实现方式中,若该虚拟交换机确定该第一数据报文经过安全验证,该虚拟机确定该第一数据报文不是基于网络互连协议(Internet Protocol,IP)协议的报文,该虚拟机向该接收端发送所述第一数据报文。本实现方式补充了当虚拟交换机接收的数据报文中有非IP协议的特殊报文时,虚拟交换机转发数据报文的方法,使得方法更加完整。
结合第一方面的第三种实现方式,在第一方面的第六种实现方式中,在该虚拟交换机确定该第一数据报文未经过安全验证之后,以及提取该第一数据报文的特征信息之前,该虚拟交换机确定该第一数据报文是否为IP协议的报文,如果是,该虚拟交换机执行该提取所述第一数据报文的特征信息的步骤。本实现方式进一步补充了当虚拟交换机接收的数据报文中有非IP协议的特殊报文时,虚拟交换机转发数据报文的方法,使得方法更加完整。
结合第一方面的第六种实现方式,在第一方面的第七种实现方式中,若该虚拟交换机确定该第一数据报文为非基于IP协议的报文,该虚拟交换机将该第一数据报文转发到该安全验证模块。本实现方式进一步补充虚拟交换机转发非IP协议的特殊报文的方法,使得方法更加完整。
结合第一方面、第一方面的第一至七中任一种实现方式,在第一方面的第八种实现方式中,该特征信息包括IP五元组信息,该五元组信息包括:向该虚拟交换机发送该第一数据报文的发送端的IP地址、该接收端的IP地址、该发送端的端口号、该接收端的端口号和该第一数据报文的传输层协议;该加速转发规则中包括所述IP五元组信息。本实现方式进一步补充了本发明数据传送的方法,使得方法更加完整。
本发明的第二方面提供一种数据传送方法,该方法包括:虚拟交换机接收第一数据报文,提取该第一数据报文的特征信息后,根据提取的该第一数据报文的特征信息,确定该第一数据报文所属的数据流是否配置了加速转发规则。该加速转发规则指示该第一数据报文所属的数据流中的第二数据报文已经经过安全验证模块的验证且验证结果为安全。若该第一数据报文所属的数据流配置了加速转发规则,该虚拟交换机绕过该安全验证模块向接收端发送该第一数据报文。该安全验证模块包括但不限于Linux网桥,用于验证该第一数据报文是否安全。
在该实现方式中,发送端经该虚拟交换机向接收端发送数据报文时,所属数据流配置了加速转发规则的数据报文可以绕过安全验证模块,不经安全验证,直接由虚拟交换机转发,减少了数据报文在内核态和用户态之间的切换次数,提高数据报文转发的效率。
结合第二方面,在第二方面的第一种实现方式中,该安全验证模块验证该第一数据报文是否安全,如果该第一数据的验证结果为安全,该安全验证模块将该第一数据报文转发给接收端,如果不安全,该安全验证模块丢弃该第一数据报文。本实现方式提供了该第一数据报文不能在安全验证模块中通过安全验证的情况下,该第一数据报文的走向。
结合第二方面或第二方面的第一种实现方式,在第二方面的第二种实现方式中,若该第一数据报文所属的数据流未配置加速转发规则,该虚拟交换机将该第一数据报文转发到该安全验证模块。本实现方式提供了所属的数据流未配置加速转发规则的数据报文的走向,为其提供了安全验证模块中的安全验证,保证了所有转发的数据流的安全。
结合第二方面,在第二方面的第三种实现方式中,在该虚拟交换机提取该第一数据报文的特征信息之前,该虚拟交换机确定该第一数据报文是否为基于IP协议的报文,如果是,该虚拟交换机执行该提取该第一数据报文的特征信息的步骤。本实现方式补充了当虚拟交换机接收的数据报文中有非IP协议的特殊报文时,虚拟交换机转发数据报文的方法,使得方法更加完整。
结合第二方面的第三种实现方式,在第二方面的第四种实现方式中,若该虚拟交换机确定该第一数据报文为非基于IP协议的报文,该虚拟交换机确定该第一数据报文是否经过安全验证,若该第一数据报文未经过安全验证,将该第一数据报文转发到该安全验证模块。本实现方式进一步补充了当虚拟交换机接收的数据报文中有非IP协议的特殊报文时,虚拟交换机转发数据报文的方法,使得方法更加完整。
结合第二方面的第四种实现方式,在第二方面的第五种实现方式中,若该虚拟交换机确定该第一数据报文为非基于IP协议的报文,且该第一数据报文经过安全验证,该虚拟交换机向接收端转发该第一数据报文。本实现方式进一步补充了当虚拟交换机接收的数据报文中有非IP协议的特殊报文时,虚拟交换机转发数据报文的方法,使得方法更加完整。
结合第二方面的第三种实现方式,在第二方面的第六种实现方式中,在该虚拟交换机确定该第一数据报文为基于IP协议的报文之后,提取该第一数据报文的特征信息之前,该虚拟交换机确定该第一数据报文是否经过安全验证,若该第一数据报文未经过安全验证,该虚拟交换机执行该提取该第一数据报文的特征信息的步骤。本实现方式进一步补充了本发明数据传送的方法,使得方法更加完整。
结合第二方面的第六种实现方式,在第二方面的第七种实现方式中,若该虚拟交换机确定该第一数据报文经过安全验证,该虚拟交换机提取该第一数据报文的特征信息,根据该第一数据报文的特征信息建立该第一数据报文所属的数据流的加速转发规则,并向接收端转发该第一数据报文。本实现方式进一步补充了本发明数据传送的方法,为数据报文所属的数据流配置加速转发规则,使得该数据流中的第二数据报文经该虚拟交换机转发时,可以绕过该安全验证模块,进一步提高了数据流转发的效率。
结合第二方面、第二方面的第一至七中任一种实现方式,在第二方面的第八种实现方式中,该特征信息包括IP五元组信息,该五元组信息包括:向该虚拟交换机发送该第一数据报文的发送端的IP地址、该接收端的IP地址、该发送端的端口号、该接收端的端口号和该第一数据报文的传输层协议;该加速转发规则中包括该IP五元组信息。本实现方式进一步补充了本发明数据传送的方法,使得方法更加完整。
第三方面,本发明提供了一种虚拟交换机,该虚拟交换机包括接口单元、转发单元和判断单元,其中该转发单元和该判断单元用于执行本发明第一方面中的任一项方法。
第四方面,本发明提供了一种虚拟交换机,该虚拟交换机包括接口单元、转发单元和判断单元,其中该转发单元和该判断单元用于执行本发明第二方面中的任一项方法。
第五方面,本发明还提供了计算机程序产品和非易失性计算机可读存储介质,其中计算机程序产品和非易失性计算机可读存储介质中包含计算机指令,处理器执行计算机指令实现本发明第一方面中的任一项方法。
第六方面,本发明还提供了计算机程序产品和非易失性计算机可读存储介质,其中计算机程序产品和非易失性计算机可读存储介质中包含计算机指令,处理器执行计算机指令实现本发明第二方面中的任一项方法。
第六方面,本发明还提供一种计算设备,该计算设备包括处理器和存储器,其中,所述存储器用于存储执行指令,当该计算设备运行时,该处理器执行该存储器存储的该执行指令,以使该计算设备执行第一方面中任一项的方法。
第七方面,本发明还提供一种计算设备,该计算设备包括处理器和存储器,其中,所述存储器用于存储执行指令,当该计算设备运行时,该处理器执行该存储器存储的该执行指令,以使该计算设备执行第二方面中任一项的方法。
附图说明
图1为现有技术中数据流进入虚拟交换机前在Linux网桥进行安全验证的示意图;
图2(a)为同一计算节点上的两个虚拟机之间数据传送的示意图;
图2(b)为不同计算节点上的两个虚拟机之间数据传送的示意图;
图2(c)为虚拟机与裸机之间数据传送的示意图;
图3为本发明实施例提供的一种虚拟交换机与Linux网桥、发送端及接收端的连接关系的示意图;
图4为本发明实施例提供的一种主机的示意图;
图5为本发明实施例提供的一种数据传送的流程示意图;
图6为本发明实施例提供的另一种数据传送的流程示意图;
图7为本发明实施例提供的一种虚拟交换机的示意图。
具体实施方式
两个虚拟机之间、以及虚拟机与裸机之间的数据传送都需要虚拟交换机的参与。进行数据传送的两个虚拟机可能在同一计算节点上的虚拟机,也可能在不同计算节点的上。也就是说,发送端和接收端都可以是虚拟机或者裸机。发送端向接收端转发数据流或者数据报文的过程包括第一虚拟机向第二虚拟机或裸机发送数据流或数据报文的过程,以及第一虚拟机从第二虚拟机或裸机接收数据流或数据报文的过程。具体如下:
如图2(a),第一计算节点上的第一虚拟机201与第二虚拟机202之间数据传送时,第一虚拟机211转发数据报文的过程为:第一虚拟交换机211从第一虚拟机201接收数据报文,并转发给第二虚拟交换机212;第二虚拟机接212收数据报文的过程为:第二虚拟交换机212从第一虚拟交换机211接收该数据报文,并转发给第二虚拟机202。如图2(b),第一计算节点上的第一虚拟机201与第二计算节点上的第三虚拟机203之间数据传送时,数据报文需经过物理交换机220:第一虚拟机201转发数据报文的过程为:第一虚拟交换机211从第一虚拟机201接收数据报文,并转发物理交换机220,物理交换机220再将该数据报文转发给第三虚拟交换机203;第三虚拟机203接收数据报文的过程为:第三虚拟交换机213从物理交换机220接收该数据报文,并转发给第三虚拟机203。第一虚拟机201与裸机204数据传送时,数据报文需经过物理交换机220。图2(b)中,物理交换机220也可以替换为若干物理交换机组,则此时负责虚拟交换机211与虚拟交换机213之间数据转发的,即为物理交换机组。如图2(c),第一虚拟机201向裸机204转发数据报文的过程为:第一虚拟交换机201从第一虚拟机201接收数据报文,并转发物理交换机220,物理交换机220再将该数据报文转发给裸机204;第一虚拟机201接收裸机204的数据报文的过程为:第一虚拟交换机机211从物理交换机220接收来自裸机204的数据报文,并转发给第一虚拟机201。图2(c)中,物理交换机220也可以替换为若干物理交换机组,则此时负责虚拟交换机211与裸机204之间数据转发的,即为物理交换机组。该物理交换机组可以包括网关。
数据流或者数据报文在两个虚拟机或者虚拟机以及裸机之间进行报文转发时,需要验证数据流或者数据报文是否安全。两个虚拟机或虚拟机与裸机之间进行数据传送时,传送的数据流可以包含若干数据报文。具有相同特征信息的数据报文属于一个数据流。对数据流的安全验证即为对数据流的数据报文的安全验证。数据流的安全验证即通过对该数据流包含的数据报文进行安全验证来实现,若数据报文的验证结果为安全,则认为该数据报文所属的数据流是安全的,那么该数据报文所属的数据流的其他数据报文也被认为是安全的。若虚拟交换机无法对接收到的数据报文的安全进行验证,虚拟交换机需要将数据报文转发至安全验证模块,使得数据报文在安全验证模块中进行验证。安全验证模块的具体实施方式包括但不限于Linux网桥。Linux网桥中配置的IPTABLES可以完成数据流或者数据报文的安全验证。本实施例中的安全验证模块,可以是验证模块、安全校验模块、报文检测模块等任何能够对数据流或者数据报文进行安全验证的模块。
本发明提出一种实施例,使得发送端向接收端转发的部分数据流在经虚拟交换机转发时,不进入安全验证模块,直接由虚拟交换机转发,从而提高数据的传输效率,另外也减少的用户态与内核态之间切换的次数,提高数据流转发的性能。
在本发明的实施例中,如图2所示,虚拟交换机120分别与安全验证模块140、发送端300和接收端310相连接。当发送端300通过虚拟交换机120向接收端310转发第一数据报文,发送端300发送的第一数据报文,绕过安全验证模块140,进入虚拟交换机120。虚拟交换机120识别接收发送端300发送的第一数据报文所属的数据流是否配置了加速转发规则。若第一数据报文所属额数据流配置了加速转发规则,虚拟交换机120将其转发至接收端310。
加速转发规则指示第一数据报文所属的数据流的第二数据报文已经经过安全验证模块的验证且验证结果为安全。若第二数据报文的验证结果为安全,那么,与第二数据报文同属一个数据流的第一数据报文也被认为是安全的。也就是说,如果第一数据报文所属的数据流配置了加速转发规则,那么,认为第一数据报文是安全的,且可由虚拟交换机绕过所述安全验证模块向下一个转发节点。本发明的实施例中,确定数据报文所属的数据流是否配置加速转发规则的具体实施方式包括但不限于:根据提取的数据报文的特征信息查询连接跟踪表。由于属于同一数据流的数据报文具有相同的特征信息,因此特征信息可以用于区别数据流。那么,能够记录特征信息的连接跟踪表即可以记录配置了加速转发规则的数据流。连接跟踪表是虚拟交换机120中的表。连接跟踪表的表项包括数据流的特征信息。用提取的数据报文的特征信息来查询连接跟踪表,可以获知数据报文所属的数据流是否配置了加速转发规则。数据流的特征信息可以包括数据报文的IP五元组信息,IP五元组信息包括:发送端300的网络互联协议(Internet Protocol,IP)地址、接收端310的IP地址、发送端300的端口号、接收端310的端口号和第一数据报文的传输层协议。传输层协议可以是TCP协议,也可以是UDP协议,分别对应TCP报文和UDP报文。本实施例中的加速转发规则,可以叫做直接转发规则、直接转发识别特征等任何能够使得虚拟交换机据此识别出可直接向接收端转发的数据报文的转发规则或特征。
本发明实施例中,发送端300经虚拟交换机120向接收端310发送数据报文时,所属数据流配置了加速转发规则的数据报文可以绕过安全验证模块,不经安全验证,由虚拟交换机120转发,减少了数据报文在安全验证模块140的内核态和虚拟交换机120的用户态之间的切换次数,提高数据报文转发的效率。
若虚拟交换机接收到的第一数据报文所属的数据流未配置加速转发规则,说明第一数据报文是虚拟交换机120接收的,该数据流中的首个数据报文,且第一数据报文未经过安全验证。那么虚拟交换机120将第一数据报文转发至安全验证模块140,进行安全验证。如果第一数据报文未通过安全验证,安全验证模块140丢弃第一数据报文。如果第一数据报文通过安全验证后,安全验证模块将第一数据报文返回至虚拟交换机120,由再虚拟交换机120转发至接收端310。
也就是说,虚拟交换机120收到的数据报文可能是来自于发送端300,也可能是来自安全验证模块140,即虚拟交换机120收到的第一数据报文可能是待转发的数据报文,也可能是已在安全验证模块中通过安全验证的数据报文。因此当虚拟交换机120接收到第一数据报文后,虚拟交换机120需判断第一数据报文是否经过安全验证。若第一数据报文未经过安全验证,说明第一数据报文来自发送端300,则虚拟交换机执行所述提取第一数据报文的特征信息的步骤。若第一数据报文已经过安全验证,则虚拟交换机120向接收端310转发第一数据报文。为了使得第一数据报文所属的数据流的其他数据报文在由虚拟交换机120转发时,绕过安全验证模块,虚拟交换机120根据第一数据报文的特征信息建立该数据报文所属的数据流的加速转发规则。本实施例中,虚拟交换机120可以通过判断数据报文是否来自安全验证模块来确定数据报文是否经过安全验证。来自安全验证模块的数据报文可以认为经过安全验证的数据报文。
当发送端300经虚拟交换机120向接收端转发的第一数据报文为非IP协议的特殊报文,该特殊报文不具有IP五元组信息,则特殊报文所属的数据流无法记录在加速转发规则中,虚拟交换机120也就无法判断特殊报文所属的数据流是否匹配了加速转发规则。因此,虚拟交换机120接收的到每一条特殊报文,可由虚拟交换机120转发至安全验证模块,在安全验证模块中进行安全验证。具体如下:
虚拟交换机120提取第一数据报文的特征信息之前,若虚拟交换机120确定第一数据报文未经过安全验证,则虚拟交换机120判断第一数据报文是否为基于IP协议的报文。如果第一数据报文是基于IP协议的报文,虚拟交换机120执行提取第一数据报文的特征信息的步骤;如果第一数据报文是非IP协议的特殊报文,则虚拟交换机120将第一数据报文转发到安全验证模块。
虚拟交换机120提取第一数据报文的特征信息之前,若虚拟交换机120确定第一数据报文已经过安全验证,虚拟交换机120也可以继续判第一断数据报文是否为基于IP协议的报文。如果第一数据报文是基于IP协议的报文,则虚拟交换机120提取第一数据报文的特征信息,根据第一数据报文的特征信息建立数据报文所属的数据流的加速转发规则,并转发第一数据报文至接收端;如果第一数据报文是非IP协议的特殊报文,则虚拟交换机120直接将第一数据报文转发至接收端。
本发明实施例中,非基于IP协议的特殊报文包括但不限于IP分片报文和traceroute报文。
由上可见,在本发明的实施例中,虚拟交换机的执行步骤可以包含两个判断步骤,即,确定数据报文是否经过安全验证,和确定数据报文是否为基于IP协议的报文。上文中所述虚拟交换机120转发数据报文的方法中,虚拟交换机120首先执行确定数据报文是否经过安全验证的步骤,以下介绍先确定第一数据报文是否为基于IP协议的报文,再确定第一数据报文是否经过安全验证的具体实施方式。
发送端300发送的第一数据报文,绕过安全验证模块140,进入虚拟交换机120。虚拟交换机120识别接收发送端300发送的第一数据报文所属的数据流是否配置了加速转发规则。若第一数据报文所属额数据流配置了加速转发规则,虚拟交换机120将其转发至接收端310。
若虚拟交换机120接收到的第一数据报文所属的数据流未配置加速转发规则,则虚拟交换机120将其转发至安全验证模块140,进行安全验证。如果第一数据报文未通过安全验证,安全验证模块140丢弃数据报文。如果第一数据报文通过安全验证后,安全验证模块将第一数据报文返回至虚拟交换机120,由再虚拟交换机120转发至接收端310。
在虚拟交换机120提取第一数据报文的特征信息之前,虚拟交换机120确定第一数据报文是否为基于IP协议的报文,如果是,虚拟交换机120执行提取第一数据报文的特征信息的步骤。如果不是,虚拟交换机120确定第一数据报文是否经过安全验证。若第一数据报文未经过安全验证,将第一数据报文转发到安全验证模块。若虚拟交换机120确定第一数据报文为非基于IP协议的特殊报文,且该数据报文经过安全验证,则虚拟交换机120向接收端转发第一数据报文。
在虚拟交换机120确定第一数据报文为基于IP协议的报文之后,提取第一数据报文的特征信息之前,虚拟交换机120确定第一数据报文是否经过安全验证。若第一数据报文未经过安全验证,说明第一数据报文来自发送端300,那么,对于来自发送端300的基于IP协议的第一数据报文,虚拟交换机120执行提取第一数据报文的特征信息的步骤。若第一数据报文经过安全验证,说明基于IP协议的第一数据报文所属的数据流未配置加速转发规则,此时虚拟交换机120除了转发经过安全验证的第一数据报文之外,还可以根据第一数据报文的特征信息建立数据报文所属的数据流的加速转发规则。
本发明实施例中,虚拟交换机接收发送端转发的数据报文,以及虚拟交换机向接收端转发数据报文,都包含了发送端向接收端转发数据流或数据报文的过程中,需要虚拟交换机检查数据流或数据报文的各种情况。虚拟交换机接收发送端转发的数据报文,包括虚拟交换机从发送端接收数据报文,以及虚拟交换机经其他节点接收发送端的数据报文;虚拟交换机向接收端转发数据报文,包括向接收端转发数据报文,以及经其他节点向目接收端转发数据报文。其他节点包括但不限于物理交换机、其他虚拟交换机、网关、路由器等网络设备。本发明的实施例中,安全验证模块可以是Linux网桥。
图4为依据本发明一实施例的计算设备400的结构示意图。
如图4所示,服务器400包括处理器401,处理器401与系统内存402连接。处理器201可以为中央处理器(CPU),图像处理器(Graphics Processing Unit,GPU),现场可编程门阵列(Field Programmable Gate Array,缩写:FPGA),或数字信号处理器(英文:digitalsignal processor,DSP)等计算逻辑或以上任意计算逻辑的组合。处理器201可以为单核处理器或多核处理器。总线401用于在服务器400的各部件之间传递信息,总线403可以使用有线的连接方式或采用无线的连接方式,本申请并不对此进行限定。总线403还连接有通信接口404。通信接口404使用例如但不限于收发器一类的收发装置,来实现与其他设备或网络之间的通信,通信接口404可以通过有线或者无线的形式与网络互连。本发明实施例的方法可以由处理器401执行系统内存402中的软件代码来完成/支持
此外,图4仅仅是一个服务器400的例子,服务器400可能包含相比于图4展示的更多或者更少的组件,或者有不同的组件配置方式。同时,图2中展示的各种组件可以用硬件、软件或者硬件与软件的结合方式实施。
下面介绍本发明实施例中,虚拟交换机转发数据报文的流程。
在本发明的一个实施例中,虚拟交换机接收到数据流之后,首先判断数据流是否来自安全验证模块,之后再判断接收到的数据流是否为基于IP协议的报文。具体流程如图5所示:
s501,虚拟交换机接收数据报文。
s502,虚拟交换机确定该数据报文是否经过安全验证。具体地,虚拟交换机可以通过判断该数据报文是否来自Linux网桥来确定数据报文是否经过安全验证。
s503,虚拟交换机判断该数据报文是否为基于IP协议的报文。虚拟交换机在s502中判断该数据报文未经过安全验证后执行本步骤。具体地,通过判断该数据报文所属的数据流是否具有特征信息,即可判断该数据报文是否为基于IP协议的报文。所属的数据流具有特征信息的报文为基于IP协议的报文,否则,则为非IP协议的特殊报文。本步骤将基于IP协议的报文和非IP协议的特殊报文区分开,以实现对两种报文的不同处理方式,保证了方法流程的完整性。数据流的特征信息包括可以是数据报文的IP五元组信息,IP五元组信息包括:发送端300的网络互联协议(Internet Protocol,IP)地址、接收端310的IP地址、发送端300的端口号、接收端310的端口号和该数据报文的传输层协议。传输层协议可以是TCP协议,也可以是UDP协议,分别对应TCP报文和UDP报文。
s504,虚拟交换机提取该数据报文所属的数据流的特征信息,用于步骤s505。虚拟交换机在s503中判断该数据报文为基于IP协议的报文后执行本步骤。
s505,虚拟交换机确定该数据报文所属的数据流是否配置了加速转发规则。本步骤中,虚拟交换机确定是否可以将数据报文绕过Linux网桥,直接向接收端转发。具体地,虚拟交换机根据步骤s504中提取的特征信息查询连接跟踪表。连接跟踪表是虚拟交换机中用于记录加速转发规则的表。连接跟踪表的表项包括数据流的特征信息。用提取的数据流的特征来查询连接跟踪表可以获知该数据报文所述的数据流是否配置了加速转发规则。
s506,虚拟交换机转发该数据报文至接收端。虚拟交换机在s505中确定该数据报文所属的数据流配置了加速转发规则后,执行本步骤。
s501、s502、s503、s504、s505、s506为虚拟交换机收到所属数据流配置了加速转发规则的数据报文时,转发该数据报文的流程,其中该数据流为基于IP协议的报文。在转发基于IP协议的报文时,虚拟交换机绕过Linux网桥,直接向接收端发送所述该数据报文,从而减少了数据报文在内核态和用户态之间的切换次数,提高数据报文转发的效率。
s507,虚拟交换机将该数据报文转发至Linux网桥进行安全验证。为保证方案的完整性,若虚拟交换机收到的基于IP协议的报文所属的数据流未配置加速转发规则,或者虚拟交换机收到的数据报文为特殊报文,虚拟交换机执行本步骤,使得数据报文在Linux网桥中进行安全验证。即,若虚拟交换机收到的该数据报文未经过安全验证,且为非IP协议的特殊报文,则虚拟交换机在s502、s503、s504、s505后执行本步骤。若虚拟交换机收到的该数据报文未经过安全验证,且为基于IP协议的报文,同时,该数据报文所属的数据流未配置加速转发规则,则虚拟交换机在s502中确定该数据报文未经过安全验证,在s503中判断该数据报文不是基于IP协议的报文,执行本步骤。
s508,Linux网桥对该数据报文进行安全验证并确认其是否通过验证。Linux网桥中配置的IPTABLES可以完成数据流的安全验证。
s509,Linux网桥将该数据报文转发至虚拟交换机,使得虚拟交换机能够向接收端转发通过安全验证的数据报文。当s508中该数据报文在Linux网桥中通过安全验证,Linux网桥执行本步骤。本步骤完成之后,流程进行至s501、s502,即虚拟交换机接收该数据报文,并判断该数据报文是否经过安全验证。
s510,Linux网桥丢弃该数据报文,此时的该数据报文指的是未通过安全验证的数据报文,保证了方案的完整性。若s508中该数据报文在Linux网桥中未通过安全验证,Linux网桥执行本步骤,结束该数据报文的转发。
s511,虚拟交换机判断该数据报文是否为基于IP协议的报文。若s502中,虚拟交换机确定该数据报文已经过安全验证,则执行本步骤。本步骤区分已经过安全验证的数据报文,对基于IP协议的报文和特殊报文,分别在s512和s511中采取不同的转发流程。
s512,虚拟交换机根据该数据报文的特征信息建立该数据报文所属的数据流的加速转发规则,并向接收端发送该数据报文。本步骤在转发数据报文的同时,可以使得虚拟交换机此后转发该数据报文所述的数据流中的其他数据报文时,绕过Linux网桥。在若s511中,虚拟交换机判断该数据报文为基于IP协议的报文,执行本步骤。
s513,虚拟交换机向接收端发送该数据报文。若s511中,虚拟交换机判断该数据报文不是基于IP协议的报文,执行本步骤。
在本发明的另一个实施例中,虚拟交换机接收到数据报文之后,首先判断该数据报文是否来自Linux网桥,之后再判断该数据报文是否为基于IP协议的报文。具体流程如图6所示:
s601,虚拟交换机接收该数据报文。
s602,虚拟交换机确定该数据报文是否为基于IP协议的报文。若虚拟交换机在s602中判断该数据报文为基于IP协议的报文,执行本步骤。本步骤将基于IP协议的报文和非IP协议的特殊报文区分开,以实现对两种报文的不同处理方式,保证了方法流程的完整性。
s603,虚拟交换机确定该数据报文是否经过安全验证。本步骤将未经过Linux网桥的数据报文和已在Linux网桥中实现安全验证的数据报文区分开,保证了方案的完整性。
s604,虚拟交换机提取该数据报文的特征信息,用于步骤s605。若虚拟交换机在s603中确定该数据报文未经过安全验证,执行本步骤。
s605,虚拟交换机确定该数据报文所属的数据流是否配置了加速转发规则。具体地,虚拟交换机根据步骤s604中提取的特征信息查询连接跟踪表。本步骤中,虚拟交换机确定是否可以将数据报文绕过Linux网桥,直接向接收端转发。
s606,虚拟交换机转发该数据报文至接收端。虚拟交换机在s605中确定该数据报文所属的数据流配置了加速转发规则后,执行本步骤。
s601、s602、s603、s604、s605、s606为虚拟交换机收到所属数据流配置了加速转发规则的数据报文时,转发该数据报文的流程,其中该数据流为基于IP协议的报文。在转发基于IP协议的报文时,虚拟交换机绕过Linux网桥,直接向接收端发送所述该数据报文,从而减少了数据报文在内核态和用户态之间的切换次数,提高数据报文转发的效率。
s607,虚拟交换机确定该数据报文是否经过安全验证。若虚拟交换机在s602中判断该数据报文不是基于IP协议的报文,执行本步骤。与s603相同,本步骤将未经过Linux网桥的数据报文和已在Linux网桥中实现安全验证的数据报文区分开,保证了方案的完整性。
s608,虚拟交换机将该数据报文转发至接收端。若s607中,虚拟交换机判断该数据报文已经过安全验证,执行本步骤。若该数据报文不是基于IP协议的报文,且已经过安全验证,则直接转发该数据报文。
s609,虚拟交换机将该数据报文转发至Linux网桥进行安全验证。若虚拟交换机收到的该数据报文为非IP协议的特殊报文,且未经过安全验证,则虚拟交换机在s602中确定该数据报文不是基于IP协议的报文,并在s607中确定该数据报文未经过安全验证,执行本步骤。若虚拟交换机收到的该数据报文为基于IP协议的报文,且未经过安全验证,同时,该数据报文所属的数据流未配置加速转发规则,则虚拟交换机在s602中确定该数据报文为基于IP协议的报文,并在s603中确定该数据报文未经过安全验证,在s305确定该数据报文所属的数据流未配置了加速转发规则后,执行本步骤。
s610,Linux网桥对该数据报文进行安全验证并确认其是否通过验证。Linux网桥中配置的IPTABLES可以完成数据流的安全验证。
s611,Linux网桥将该数据报文转发至虚拟交换机,使得虚拟交换机能够向接收端转发通过安全验证的数据报文。当s610中该数据报文在Linux网桥中通过安全验证,Linux网桥执行本步骤。本步骤完成之后,流程进行至s601、s602,即虚拟交换机接收该数据报文,并确定该数据报文是否为基于IP协议的报文。
s612,Linux网桥丢弃该数据报文。若s610中该数据报文在Linux网桥中未通过安全验证,Linux网桥执行本步骤,结束该数据报文的转发。
s613,虚拟交换机根据该数据报文的特征信息建立该数据报文所属的数据流的加速转发规则,并向接收端发送该数据报文。若虚拟交换机在s603中确定该数据报文已经过安全验证,执行本步骤。
本发明的实施例还提供一种虚拟交换机700,如图7所示。虚拟交换机700包括转发单元710、判断单元720和接口单元730。
在虚拟交换机700的一种具体实施方式中,
接口单元730用于接收数据报文;
判断单元720用于:
提取该数据报文的特征信息,根据提取的该数据报文的特征信息,确定该数据报文所属的数据流是否配置了加速转发规则。
若判断单元确定该数据报文所属的数据流配置了加速转发规则,转发单元710用于:绕过安全验证模块,向接收端发送该数据报文。
同时,若判断单元720确定该数据报文所属的数据流未配置加速转发规则,转发单元710还用于:将该数据报文转发到安全验证模块。
判断单元720还用于:
提取该数据报文的特征信息之前,确定该数据报文是否经过安全验证。
若确定该数据报文未经过安全验证,则执行提取该数据报文的特征信息的步骤。
若确定该数据报文经过安全验证,转发单元710还用于:提取该数据报文的特征信息,根据该数据报文的特征信息建立该数据报文所属的数据流的加速转发规则,转发单元还用于:向接收端发送该数据报文。
在确定该数据报文未经过安全验证之后,以及提取该数据报文的特征信息之前,判断单元720还用于:确定该数据报文是否为基于IP协议的报文,如果是,判断单元720执行提取该数据报文的特征信息的步骤。
若判断单元720确定该数据报文为非基于IP协议的报文,转发单元710还用于:将该数据报文转发到安全验证模块。
在虚拟交换机700的另一种具体实施方式中,
接收单元730用于接收数据报文;
判断单元720用于:
提取该数据报文的特征信息,根据提取的该数据报文的特征信息,确定该数据报文所属的数据流是否配置了加速转发规则。
若判断单元确定该数据报文所属的数据流配置了加速转发规则,转发单元710用于:绕过安全验证模块,向接收端发送该数据报文。
同时,若判断单元720确定该数据报文所属的数据流未配置加速转发规则,转发单元710还用于:将该数据报文转发到安全验证模块。
判断单元720还用于:
在提取该数据报文的特征信息之前,确定该数据报文是否为基于IP协议的报文,如果是,则执行提取该数据报文的特征信息的步骤。
若确定该数据报文为非基于IP协议的报文,则确定该数据报文是否经过安全验证。
若判断单元确认该数据报文未经过安全验证,转发单元710还用于:将第一数据报文转发到安全验证模块。
判断单元720还用于:
在确定该数据报文为基于IP协议的报文之后,提取该数据报文的特征信息之前,确定该数据报文是否经过安全验证。
若确认该数据报文未经过安全验证,则执行提取该数据报文的特征信息的步骤。
若确定该数据报文经过安全验证,判断单元720还用于:提取该数据报文的特征信息,根据该数据报文的特征信息建立该数据报文所属的数据流的加速转发规则。
转发单元710还用于根据判断单元确定该数据报文经过安全验证的判断结果,向接收端发送该数据报文。
具体地,虚拟交换机700中的各单元可以分别由对应的硬件芯片实现。另一种实现中,两个或三个单元可以集成在一个硬件芯片上。在另一种实现中,虚拟交换机700中的各单元也可以由处理器执行计算机指令实现。本发明实施例对此不作限定。
相应的,本发明实施例提供一种包含计算机指令的非易失性存储介质和计算机程序产品,控制器执行计算机指令用于实现本发明实施例所描述的方案。
在本发明所提供的几个实施例中,应该理解到,所公开的装置、方法,可以通过其它的方式实现。例如,以上所描述的装置实施例所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的各个单元相互之间的耦合或直接耦合或通信连接可以是通过一些接口。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (34)

1.一种数据传送方法,其特征在于,包括:
虚拟交换机接收第一数据报文;
所述虚拟交换机提取所述第一数据报文的特征信息,根据提取的所述第一数据报文的特征信息,确定所述第一数据报文所属的数据流是否配置了加速转发规则,所述加速转发规则指示所述第一数据报文所属的数据流中的第二数据报文已经经过安全验证模块的验证且验证结果为安全;
若所述第一数据报文所属的数据流配置了加速转发规则,所述虚拟交换机绕过所述安全验证模块向接收端发送所述第一数据报文。
2.根据权利要求1所述的方法,其特征在于,若所述第一数据报文所属的数据流未配置加速转发规则,还包括:
所述虚拟交换机将所述第一数据报文转发到所述安全验证模块。
3.根据权利要求1所述的方法,其特征在于,所述虚拟交换机提取所述第一数据报文的特征信息之前,还包括:
所述虚拟交换机确定所述第一数据报文是否经过安全验证,若所述第一数据报文未经过安全验证,所述虚拟交换机执行所述提取所述第一数据报文的特征信息的步骤。
4.根据权利要求3所述的方法,其特征在于,若所述虚拟交换机确定所述第一数据报文经过安全验证,还包括:
所述虚拟交换机根据所述第一数据报文的特征信息建立所述第一数据报文所属的数据流的加速转发规则,并向接收端发送所述第一数据报文。
5.根据权利要求3所述的方法,其特征在于,在所述虚拟交换机确定所述第一数据报文未经过安全验证之后,以及提取所述第一数据报文的特征信息之前,还包括:
所述虚拟交换机确定所述第一数据报文是否为基于网络互连协议(InternetProtocol,IP)协议的报文,如果是,所述虚拟交换机执行所述提取所述第一数据报文的特征信息的步骤。
6.根据权利要求5所述的方法,其特征在于,若所述虚拟交换机确定所述第一数据报文为非基于IP协议的报文,还包括:
所述虚拟交换机将所述第一数据报文转发到所述安全验证模块。
7.根据权利要求1-6任意一项所述的方法,其特征在于,所述特征信息包括IP五元组信息,所述五元组信息包括:向所述虚拟交换机发送所述第一数据报文的发送端的IP地址、所述接收端的IP地址、所述发送端的端口号、所述接收端的端口号和所述第一数据报文的传输层协议;所述加速转发规则中包括所述IP五元组信息。
8.一种数据传送方法,其特征在于,包括:
虚拟交换机接收第一数据报文;
所述虚拟交换机提取所述第一数据报文的特征信息,根据提取的所述第一数据报文的特征信息,确定所述第一数据报文所属的数据流是否配置了加速转发规则,所述加速转发规则指示所述第一数据报文所属的数据流中的至少一个报文已经经过安全验证模块的验证且验证结果为安全;
若所述第一数据报文所属的数据流配置了加速转发规则,所述虚拟交换机绕过所述安全验证模块向接收端发送所述第一数据报文。
9.根据权利要求8所述的方法,其特征在于,若所述第一数据报文所属的数据流未配置加速转发规则,还包括:
所述虚拟交换机将所述第一数据报文转发到所述安全验证模块。
10.根据权利要求8所述的方法,其特征在于,在所述虚拟交换机提取所述第一数据报文的特征信息之前,还包括:
所述虚拟交换机确定所述第一数据报文是否为基于网络互连协议(INTERNETPROTOCOL,IP)协议的报文,如果是,所述虚拟交换机执行所述提取所述第一数据报文的特征信息的步骤。
11.根据权利要求10所述的方法,其特征在于,若所述虚拟交换机确定所述第一数据报文为非基于IP协议的报文,还包括:
所述虚拟交换机确定所述第一数据报文是否经过安全验证,若所述第一数据报文未经过安全验证,将所述第一数据报文转发到所述安全验证模块。
12.根据权利要求11所述的方法,其特征在于,若所述虚拟交换机确定所述第一数据报文为非基于IP协议的报文,且所述第一数据报文经过安全验证,还包括:
所述虚拟交换机向接收端转发所述第一数据报文。
13.根据权利要求10所述的方法,其特征在于,在所述虚拟交换机确定所述第一数据报文为基于IP协议的报文之后,提取所述第一数据报文的特征信息之前,还包括:
所述虚拟交换机确定所述第一数据报文是否经过安全验证,若所述第一数据报文未经过安全验证,所述虚拟交换机执行所述提取所述第一数据报文的特征信息的步骤。
14.根据权利要求13所述的方法,其特征在于,若所述虚拟交换机确定所述第一数据报文经过安全验证,还包括:
所述虚拟交换机提取所述第一数据报文的特征信息,根据所述第一数据报文的特征信息建立所述第一数据报文所属的数据流的加速转发规则,向接收端转发所述第一数据报文。
15.根据权利要求10-14任意一项所述的方法,其特征在于,所述特征信息包括IP五元组信息,所述五元组信息包括:向所述虚拟交换机发送所述第一数据报文的发送端的IP地址、所述接收端的IP地址、所述发送端的端口号、所述接收端的端口号和所述第一数据报文的传输层协议;所述加速转发规则中包括所述IP五元组信息。
16.一种虚拟交换机,其特征在于,所述虚拟交换机包括接收单元、转发单元和判断单元;
所述接收单元,用于接收第一数据报文;
所述判断单元用于:提取所述第一数据报文的特征信息,根据提取的所述第一数据报文的特征信息,确定所述第一数据报文所属的数据流是否配置了加速转发规则,所述加速转发规则指示所述第一数据报文所属的数据流的第二数据报文已经经过安全验证模块的验证且验证结果为安全;
所述转发单元用于,若所述判断单元确定所述第一数据报文所属的数据流配置了加速转发规则,则绕过所述安全验证模块,向接收端发送所述第一数据报文。
17.根据权利要求16所述的虚拟交换机,其特征在于,若所述判断单元确定所述第一数据报文所属的数据流未配置加速转发规则,所述转发单元还用于将所述第一数据报文转发到所述安全验证模块。
18.根据权利要求16所述的虚拟交换机,其特征在于,
提取所述第一数据报文的特征信息之前,所述判断单元还用于确定所述第一数据报文是否经过安全验证;
若确定所述第一数据报文未经过安全验证,则执行所述提取所述第一数据报文的特征信息的步骤。
19.根据权利要求18所述的虚拟交换机,其特征在于,
若确定所述第一数据报文经过安全验证,所述判断单元还用于提取所述第一数据报文的特征信息,根据所述第一数据报文的特征信息建立所述第一数据报文所属的数据流的加速转发规则,并向接收端发送所述第一数据报文。
20.根据权利要求18所述的虚拟交换机,其特征在于,
在所述判断单元确定所述第一数据报文未经过安全验证之后,以及提取所述第一数据报文的特征信息之前,所述判断单元还用于确定所述第一数据报文是否为基于网络互连协议(Internet Protocol,IP)协议的报文,如果是,所述判断单元执行所述提取所述第一数据报文的特征信息的步骤。
21.根据权利要求20所述的虚拟交换机,其特征在于,
若所述判断单元确定所述第一数据报文为非基于IP协议的报文,所述转发单元还用于将所述第一数据报文转发到所述安全验证模块。
22.根据权利要求16-21任意一项所述的方法,其特征在于,所述特征信息包括IP五元组信息,所述五元组信息包括:向所述虚拟交换机发送所述第一数据报文的发送端的IP地址、所述接收端的IP地址、所述发送端的端口号、所述接收端的端口号和所述第一数据报文的传输层协议;所述加速转发规则中包括所述IP五元组信息。
23.一种虚拟交换机,其特征在于,所述虚拟交换机包括接收单元、转发单元和判断单元;
所述接收单元用于接收第一数据报文;
所述判断单元用于:
提取所述第一数据报文的特征信息,根据提取的所述第一数据报文的特征信息,确定所述第一数据报文所属的数据流是否配置了加速转发规则,所述加速转发规则指示所述第一数据报文所属的数据流中的第二数据报文已经经过安全验证模块的验证且验证结果为安全;
所述转发单元用于,若所述判断单元确定所述第一数据报文所属的数据流配置了加速转发规则,则绕过所述安全验证模块,向接收端发送所述第一数据报文。
24.根据权利要求23所述的虚拟交换机,其特征在于,若所述判断单元确定所述第一数据报文所属的数据流未配置加速转发规则,所述转发单元还用于,将所述第一数据报文转发到所述安全验证模块。
25.根据权利要求23所述的虚拟交换机,其特征在于,
在提取所述第一数据报文的特征信息之前,所述判断单元还用于:确定所述第一数据报文是否为基于网络互连协议(Internet Protocol,IP)协议的报文,如果是,则执行所述提取所述第一数据报文的特征信息的步骤。
26.根据权利要求25所述的虚拟交换机,其特征在于,所述判断单元还用于:若确定所述第一数据报文为非基于IP协议的报文,则确定所述第一数据报文是否经过安全验证;
若所述判断单元确认所述第一数据报文未经过安全验证,所述转发单元还用于:将所述第一数据报文转发到所述安全验证模块。
27.根据权利要求26所述的虚拟交换机,其特征在于,所述转发单元还用于:向接收端转发所述第一数据报文。
28.根据权利要求25所述的虚拟交换机,其特征在于,所述判断单元还用于:
在确定所述第一数据报文为基于IP协议的报文之后,提取所述第一数据报文的特征信息之前,确定所述第一数据报文是否经过安全验证;
若确定所述第一数据报文未经过安全验证,则执行所述提取所述第一数据报文的特征信息的步骤。
29.根据权利要求28所述的虚拟交换机,其特征在于,所述判断单元还用于:
若确定所述第一数据报文经过安全验证,提取所述第一数据报文的特征信息,根据所述第一数据报文的特征信息建立所述第一数据报文所属的数据流的加速转发规则;
所述转发单元还用于根据所述判断单元确定所述第一数据报文经过安全验证的判断结果,向接收端发送所述第一数据报文。
30.根据权利要求23-29任意一项所述的方法,其特征在于,所述特征信息包括IP五元组信息,所述五元组信息包括:向所述虚拟交换机发送所述第一数据报文的发送端的IP地址、所述接收端的IP地址、所述发送端的端口号、所述接收端的端口号和所述第一数据报文的传输层协议;所述加速转发规则中包括所述IP五元组信息。
31.一种非易失性的计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于实现如权利要求1-7中任一项所述的方法。
32.一种非易失性的计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于实现如权利要求8-15中任一项所述的方法。
33.一种计算设备,其特征在于,所述计算设备包括处理器和存储器;
所述存储器用于存储执行指令,当所述计算设备运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述计算设备执行权利要求1-15任一项所述的方法。
34.一种计算设备,其特征在于,所述计算设备包括处理器和存储器;
所述存储器用于存储执行指令,当所述计算设备运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述计算设备执行权利要求16-22任一项所述的方法。
CN201780040463.2A 2017-12-27 2017-12-27 一种数据传送的方法和虚拟交换机 Active CN109496409B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/119103 WO2019127134A1 (zh) 2017-12-27 2017-12-27 一种数据传送的方法和虚拟交换机

Publications (2)

Publication Number Publication Date
CN109496409A true CN109496409A (zh) 2019-03-19
CN109496409B CN109496409B (zh) 2020-10-23

Family

ID=65688976

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780040463.2A Active CN109496409B (zh) 2017-12-27 2017-12-27 一种数据传送的方法和虚拟交换机

Country Status (4)

Country Link
US (1) US11689501B2 (zh)
EP (1) EP3720075B1 (zh)
CN (1) CN109496409B (zh)
WO (1) WO2019127134A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110768865A (zh) * 2019-10-23 2020-02-07 新华三信息安全技术有限公司 一种深度报文检测引擎激活方法、装置及电子设备
US20200322313A1 (en) * 2017-12-27 2020-10-08 Huawei Technologies Co., Ltd. Data Transfer Method and Virtual Switch
CN112073317A (zh) * 2019-06-10 2020-12-11 华为技术有限公司 一种发送报文流量的方法和装置
CN112398728A (zh) * 2019-08-14 2021-02-23 南京中兴新软件有限责任公司 虚拟网关平滑演进方法、网关设备及存储介质
CN114979028A (zh) * 2021-02-26 2022-08-30 中移(苏州)软件技术有限公司 一种数据包处理方法、装置以及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113556323B (zh) * 2021-06-24 2023-04-07 深圳市邦盛实时智能技术有限公司 一种应用于企业内控的旁路无侵入流量采集系统
CN115208682B (zh) * 2022-07-26 2023-12-12 上海欣诺通信技术股份有限公司 一种基于snort的高性能网络攻击特征检测方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103534991A (zh) * 2013-07-23 2014-01-22 华为技术有限公司 一种报文转发方法及设备
CN103609070A (zh) * 2012-10-29 2014-02-26 华为技术有限公司 网络流量检测方法、系统、设备及控制器
CN105262840A (zh) * 2015-11-05 2016-01-20 浪潮(北京)电子信息产业有限公司 一种数据传输中间件及广域网存储系统
CN105745886A (zh) * 2013-09-23 2016-07-06 迈克菲股份有限公司 在两个实体之间提供快速路径
US9727307B2 (en) * 2015-03-23 2017-08-08 Fortinet, Inc. Calculating consecutive matches using parallel computing
CN107396450A (zh) * 2017-07-19 2017-11-24 上海华为技术有限公司 一种跨制式的调度方法及基站

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100522138B1 (ko) * 2003-12-31 2005-10-18 주식회사 잉카인터넷 신뢰할 수 있는 프로세스를 허용하는 유연화된 네트워크보안 시스템 및 그 방법
US8789135B1 (en) * 2012-06-15 2014-07-22 Google Inc. Scalable stateful firewall design in openflow based networks
CN104243447B (zh) * 2014-07-24 2017-11-10 深圳市共进电子股份有限公司 一种基于Netfilter防火墙的数据流处理方法及装置
CN104301321B (zh) * 2014-10-22 2018-04-27 北京启明星辰信息技术股份有限公司 一种实现分布式网络安全防护的方法及系统
CN104994094B (zh) 2015-07-01 2016-11-30 北京奇虎科技有限公司 基于虚拟交换机的虚拟化平台安全防护方法、装置和系统
US10079805B2 (en) * 2016-06-13 2018-09-18 Fujitsu Limited Bypassing a firewall for authorized flows using software defined networking
EP3286900B1 (en) * 2016-06-22 2019-03-27 Huawei Technologies Co., Ltd. System and method for detecting and preventing network intrusion of malicious data flows
US10708229B2 (en) * 2017-11-15 2020-07-07 Nicira, Inc. Packet induced revalidation of connection tracker
CN109496409B (zh) * 2017-12-27 2020-10-23 华为技术有限公司 一种数据传送的方法和虚拟交换机

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103609070A (zh) * 2012-10-29 2014-02-26 华为技术有限公司 网络流量检测方法、系统、设备及控制器
CN103534991A (zh) * 2013-07-23 2014-01-22 华为技术有限公司 一种报文转发方法及设备
CN105745886A (zh) * 2013-09-23 2016-07-06 迈克菲股份有限公司 在两个实体之间提供快速路径
US9727307B2 (en) * 2015-03-23 2017-08-08 Fortinet, Inc. Calculating consecutive matches using parallel computing
CN105262840A (zh) * 2015-11-05 2016-01-20 浪潮(北京)电子信息产业有限公司 一种数据传输中间件及广域网存储系统
CN107396450A (zh) * 2017-07-19 2017-11-24 上海华为技术有限公司 一种跨制式的调度方法及基站

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JEFFREY BICKFORD: "Safe Internet Browsing using a Transparent Virtual Browser", 《2015 IEEE 2ND INTERNATIONAL CONFERENCE ON CYBER SECURITY AND CLOUD COMPUTING》 *
娄嘉鹏: "一种基于TCP协议的网络隐蔽传输方案设计", 《信息网络安全》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200322313A1 (en) * 2017-12-27 2020-10-08 Huawei Technologies Co., Ltd. Data Transfer Method and Virtual Switch
US11689501B2 (en) * 2017-12-27 2023-06-27 Huawei Cloud Computing Technologies Co., Ltd. Data transfer method and virtual switch
CN112073317A (zh) * 2019-06-10 2020-12-11 华为技术有限公司 一种发送报文流量的方法和装置
WO2020249030A1 (zh) * 2019-06-10 2020-12-17 华为技术有限公司 一种发送报文流量的方法和装置
CN112073317B (zh) * 2019-06-10 2022-01-07 华为技术有限公司 一种发送报文流量的方法和装置
CN112398728A (zh) * 2019-08-14 2021-02-23 南京中兴新软件有限责任公司 虚拟网关平滑演进方法、网关设备及存储介质
CN112398728B (zh) * 2019-08-14 2024-03-08 中兴通讯股份有限公司 虚拟网关平滑演进方法、网关设备及存储介质
CN110768865A (zh) * 2019-10-23 2020-02-07 新华三信息安全技术有限公司 一种深度报文检测引擎激活方法、装置及电子设备
CN114979028A (zh) * 2021-02-26 2022-08-30 中移(苏州)软件技术有限公司 一种数据包处理方法、装置以及存储介质
CN114979028B (zh) * 2021-02-26 2024-02-23 中移(苏州)软件技术有限公司 一种数据包处理方法、装置以及存储介质

Also Published As

Publication number Publication date
CN109496409B (zh) 2020-10-23
EP3720075B1 (en) 2023-06-21
US20200322313A1 (en) 2020-10-08
EP3720075A4 (en) 2020-11-18
WO2019127134A1 (zh) 2019-07-04
EP3720075A1 (en) 2020-10-07
US11689501B2 (en) 2023-06-27

Similar Documents

Publication Publication Date Title
CN109496409A (zh) 一种数据传送的方法和虚拟交换机
US9253062B2 (en) Byte by byte received data integrity check
CN105474602B (zh) 软件定义网络中识别攻击流的方法、装置以及设备
CN109361606B (zh) 一种报文处理系统及网络设备
CN111431758B (zh) 云网络设备的测试方法、装置、存储介质和计算机设备
CN104809816B (zh) 取件处理方法、取件执行方法、取件方法和装置及系统
JPS59501849A (ja) パケツト交換用重複ネツトワ−クアレイ及び制御装置
CN105939297A (zh) 一种tcp报文重组方法和装置
US9774710B2 (en) System and method for network protocol offloading in virtual networks
CN106936661A (zh) 一种网络监测方法、装置及系统
CN101179456A (zh) 一种网络设备测试方法及装置
CN108092913A (zh) 一种报文分流的方法和多核cpu网络设备
CN107005470A (zh) 用于创建数据分组的子流的方法
CN112152880A (zh) 一种链路健康检测方法及装置
CN108092971A (zh) 一种处理业务报文的方法及装置
CN104579973B (zh) 一种虚拟集群中的报文转发方法和装置
CN105897536A (zh) 基于重叠网的网络游戏加速系统
CN103823721B (zh) 一种进程间通信的方法及设备
CN102457421A (zh) 在两个网络间建立vpn连接的方法
CN107547505A (zh) 一种报文处理方法及装置
CN105376800B (zh) 一种微基站的组网通信方法、系统和集中控制设备
CN105991442A (zh) 报文转发方法及装置
CN104184729A (zh) 一种报文处理方法和装置
CN108989248B (zh) 传输报文的方法、网络边缘设备与报文传输系统
US20090141712A1 (en) Router device

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220223

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.