报文处理方法、装置、网络设备及机器可读存储介质与流程

文档序号:13363014阅读:124来源:国知局
本发明涉及计算机网络
技术领域
,特别是涉及一种报文处理方法、装置、网络设备及机器可读存储介质。
背景技术
:随着网络技术的不断发展,网络设备所要处理的报文的数量越来越多,并且针对不同的报文进行处理的方式也各不相同。对于网络设备而言,预先对报文的处理方式进行配置,然后可以根据特征信息与配置的处理方式的对应关系,对报文进行处理。然而,网络设备在接收到报文时,并不知道报文的特征信息,只有通过对报文的分析得到报文的字段信息后,根据该字段信息去特征库中进行匹配,得到报文的特征信息,然后再根据特征信息与配置的处理方式的对应关系,对报文进行处理。基于上述报文处理方法,网络设备在每接收到一个报文时,都需要到特征库中匹配特征信息,再对报文进行处理,由于特征库的内存量巨大,每次都要进行特征匹配使得网络设备的处理速度受到影响,导致网络设备的处理性能下降。技术实现要素:本发明实施例的目的在于提供一种报文处理方法、装置、网络设备及机器可读存储介质,以提高网络设备的处理性能。具体技术方案如下:第一方面,本发明实施例提供了一种报文处理方法,所述方法包括:获取待处理报文的地址信息,所述地址信息包括:源ip地址和目的ip地址;若会话表中已存在与所述地址信息对应的会话表项,则判断特征表中是否存在与所述会话表项对应的第一特征表项;若所述特征表中存在所述第一特征表项,且所述待处理报文与所述第一特征表项中的第一特征信息匹配,则基于所述第一特征信息,对所述待处理报文进行处理。第二方面,本发明实施例提供了一种报文处理装置,所述装置包括:第一获取模块,用于获取待处理报文的地址信息,所述地址信息包括:源ip地址和目的ip地址;判断模块,用于若会话表中已存在与所述地址信息对应的会话表项,则判断特征表中是否存在与所述会话表项对应的第一特征表项;处理模块,用于若所述特征表中存在所述第一特征表项,且所述待处理报文与所述第一特征表项中的第一特征信息匹配,则基于所述第一特征信息,对所述待处理报文进行处理。第三方面,本发明实施例提供了一种网络设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现第一方面所述的方法步骤。第四方面,本发明实施例提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第一方面所述的方法步骤。本发明实施例提供的一种报文处理方法、装置、网络设备及机器可读存储介质,若会话表中已存在与待处理报文的地址信息对应的会话表项,通过判断特征表中是否存在会话表项对应的第一特征表项,若存在第一特征表项,且待处理报文与该第一特征表项中的第一特征信息匹配,则基于该第一特征信息,对待处理报文进行处理。这样,针对特征表中已存在与会话表项对应的第一特征表项的情况,则可以在待处理报文与第一特征表项中的第一特征信息匹配时,直接对待处理报文进行处理,而不需要到特征库中进行特征匹配,节省了网络设备的资源,从而提高了网络设备的处理性能。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例的报文处理方法的一种流程示意图;图2为本发明实施例的报文处理方法的另一种流程示意图;图3为本发明实施例的报文处理方法的实际组网结构示意图;图4为本发明实施例的报文处理装置的一种结构示意图;图5为本发明实施例的报文处理装置的另一种结构示意图;图6为本发明实施例的报文处理装置的再一种结构示意图;图7为本发明实施例的报文处理装置的再一种结构示意图;图8为本发明实施例的网络设备的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为了提高网络设备的处理性能,本发明实施例提供了一种报文处理方法、装置、网络设备及机器可读存储介质。下面首先对本发明实施例所提供的一种报文处理方法进行介绍。本发明实施例所提供的一种报文处理方法的执行主体可以为一种网络设备,根据业务功能的不同,该网络设备可以为防火墙设备或者dpi(deeppacketinspection,深度报文检测)设备等网络安全设备,也可以为路由器、交换机等数据交换设备。实现本发明实施例所提供的一种报文处理方法的方式可以为设置于执行主体中的软件、硬件电路和逻辑电路中的至少一种。如图1所示,本发明实施例所提供的一种报文处理方法,可以包括如下步骤:s101,获取待处理报文的地址信息。其中,地址信息可以包括:源ip地址和目的ip地址。待处理报文中一般会携带该报文的基础信息,例如发送该待处理报文的源地址、接收该待处理报文的目的地址等,源地址可以为源ip地址或者源端口地址,目的地址可以为目的ip地址或者目的端口地址。这些基础信息存储在待处理报文的各字段中,可以通过对报文的字段进行提取,得到相应的基础信息的具体内容。s102,若会话表中已存在与该地址信息对应的会话表项,则判断特征表中是否存在与该会话表项对应的第一特征表项。在网络设备上,针对携带有业务数据的报文,通常在接收该报文之前已创建对应的会话表项,该会话表项记录了报文的五元组信息,即报文的源ip地址、目的ip地址、源端口地址、目的端口地址以及传输报文的传输协议。为了能够快速查找待处理报文的特征信息,本实施例中,建立了特征表,该特征表中包含多个特征表项,各特征表项表示了会话表项的标识信息与特征信息的对应关系,或者会话表中的源地址和/或目的地址与特征信息的对应关系。例如,特征表的具体形式可以如表1所示,特征表中每一行代表一个特征表项,表征了源地址、目的地址和特征信息的对应关系,即一个源地址、目的地址对应的一种特征信息,例如,源地址为192.168.1.11,目的地址为33.33.33.33的待处理报文的特征信息为某网络电视的名称。可以通过判断特征表中是否存在与对会话表项中的源地址、目的地址相同的特征表项,判断特征表中是否存在与会话表项对应的第一特征表项。还可以给会话表项配置一个标识信息,通过判断特征表中是否存在与会话表项的标识信息相匹配的特征表项,判断特征表中是否存在与会话表项对应的第一特征表项。表1源地址目的地址特征信息s103,若特征表中存在第一特征表项,且待处理报文与第一特征表项中的第一特征信息匹配,则基于第一特征信息,对待处理报文进行处理。如果特征表中存在第一特征表项,则需要将待处理报文与第一特征表项中的第一特征信息进行匹配,如果能够匹配,则网络设备可以基于第一特征信息对应的处理方式对待处理报文进行处理。应用本实施例,若会话表中已存在与待处理报文的地址信息对应的会话表项,通过判断特征表中是否存在会话表项对应的第一特征表项,若存在第一特征表项,且待处理报文与该第一特征表项中的第一特征信息匹配,则基于该第一特征信息,对待处理报文进行处理。这样,针对特征表中已存在与会话表项对应的第一特征表项的情况,则可以在待处理报文与第一特征表项中的第一特征信息匹配时,直接对待处理报文进行处理,而不需要到特征库中进行特征匹配,节省了网络设备的资源,从而提高了网络设备的处理性能。基于图1所示实施例,如图2所示,本发明实施例提供了另一种报文处理方法,该报文处理方法可以包括如下步骤:s201,获取待处理报文的地址信息。本实施例中的待处理报文为携带有业务数据的业务报文。s202,若会话表中已存在与待处理报文的地址信息对应的会话表项,则判断特征表中是否存在与会话表项对应的第一特征表项,若是则执行s205,否则执行s203至s204。由于会话表项中包含了报文的五元组信息,则根据待处理报文的地址信息,直接在会话表中利用会话表项的五元组信息与待处理报文的地址信息一一进行比较,如果相同,则确定会话表中存在与待处理报文的地址信息对应的会话表项;如果不存在相同的,则确定会话表中不存在与待处理报文的地址信息对应的会话表项。如果会话表中不存在与待处理报文的地址信息对应的会话表项,则丢弃该报文。第一特征表项中包括第一特征信息。由于会话表项与特征表项之间具有对应关系,即利用会话表项中的地址信息,在特征表中查找具有该地址信息的特征表项,如果查找到具有该地址信息的特征表项,则说明特征表中存在与会话表项对应的第一特征表项。或者,给会话表项分配有对应的标识信息,如果查找到具有该标识信息的特征表项,则说明特征表中存在与会话表项对应的第一特征表项。s203,从特征库中获取与待处理报文匹配的第二特征信息。s204,基于第二特征信息,对待处理报文进行处理。如果特征表中不存在与会话表项对应的第一特征表项,则说明之前未存储地址信息或标识信息对应的特征信息,可以从特征库中提取与待处理报文匹配的第二特征信息。并且为了应对后续再接收到基于该会话表项对应的会话发送的待处理报文,减少到特征库获取第二特征信息的步骤,可以在从特征库中获取到与待处理报文匹配的第二特征信息之后,在特征表中添加会话表项对应的第二特征表项。其中,第二特征表项中包括第二特征信息。如果接收到基于该会话发送的待处理报文,可以直接从对应的特征表项中提取特征信息,而不需要再去特征库中匹配、提取,从而提高网络设备的处理性能。s205,判断待处理报文与第一特征表项中的第一特征信息是否匹配,若是则执行s206,否则执行s207至s208。如果特征表中存在与会话表项对应的第一特征表项,需要进一步判断待处理报文与该第一特征表项中的第一特征信息是否匹配,可以通过待处理报文中的用于表示特征信息的指定字段与第一特征信息是否相匹配进行判断。s206,基于第一特征信息,对待处理报文进行处理。为了能够节省存储会话表项的存储资源,在满足以下条件时,可以从特征表中删除相应的特征表项,具体可以为:在距离上一次接收到待处理报文的时长达到预设时长时,从特征表中删除第一特征表项;或者,在监测到发送待处理报文的用户处于离线状态时,从特征表中删除第一特征表项;或者,在存储多个会话表项的存储空间的剩余容量小于预设阈值时,从特征表中删除预设数量个特征表项。如果距离上一次接收到待处理报文的时长达到预设时长,例如预设时长为2小时,如果上一次接收到待处理报文的时长达到了2小时,则说明该待处理报文的活跃度极低,长时间未再接收该待处理报文,则可以从特征表中删除第一特征表项;或者,如果监测到发送待处理报文的用户处于离线状态,则说明该用户在近段时间内不会向网络设备发送报文,则可以从特征表中删除第一特征表项;或者,如果存储会话表项的存储空间的剩余容量小于预设阈值,例如,剩余容量只剩下总容量的5%,即说明存储空间即将用完,则需要对存储空间作以释放,可以从特征表中删除预设数量个特征表项。s207,从特征库中获取与待处理报文匹配的第三特征信息。s208,基于第三特征信息,对待处理报文进行处理。如果待处理报文与第一特征表项中的第一特征信息不相匹配,则需要获取该待处理报文的特征信息,具体可以从特征库中获取。并且为了应对后续再接收到基于该会话发送的待处理报文,减少到特征库中获取第三特征信息的步骤,可以在从特征库中获取与待处理报文匹配的第三特征信息之后,将第一特征表项中的第一特征信息替换为第三特征信息。应用本实施例,若会话表中已存在与待处理报文的地址信息对应的会话表项,通过判断特征表中是否存在会话表项对应的第一特征表项,若存在第一特征表项,且待处理报文与该第一特征表项中的第一特征信息匹配,则基于该第一特征信息,对待处理报文进行处理。这样,针对特征表中已存在与会话表项对应的第一特征表项的情况,则可以在待处理报文与第一特征表项中的第一特征信息匹配时,直接对待处理报文进行处理,而不需要到特征库中进行特征匹配,节省了网络设备的资源,从而提高了网络设备的处理性能。并通过从特征表中删除特征表项,节省存储会话表项的存储资源。为了便于理解,下面结合具体实例对本发明实施例的报文处理方法进行介绍。如图3所示,公司对终端301使用p2p(peer-to-peer,点对点)网络电视的流量进行限制,因此,在防火墙302的特征库中配置p2p网络电视对应的特征信息(称为特征信息1),并配置防火墙302在接收到匹配特征信息1的报文时进行限速的处理。防火墙302在接收到终端301用于请求与p2p网络电视服务器303建立连接的握手报文时,在确定终端301与服务器303成功建立连接后(即会话创建成功后,该会话称为会话a),创建会话表项a,该会话表项a中包括该握手报文的五元组信息。该五元组信息中包括的源地址为终端301的ip地址(192.168.1.11),目的地址为服务器303的ip地址(33.33.33.33)。之后,防火墙302在接收到终端301基于会话a发送的业务报文1时,查找到与该业务报文1对应的会话表项a。由于在此之前未对基于会话a发送的业务报文进行过特征匹配,所以特征表中不存在与会话表项a对应的特征信息,因此,需要从特征库中获取与该业务报文1匹配的特征信息,并且根据从特征库中匹配的特征信息对应的处理方式,处理该业务报文1。基于上述对防火墙302中的特征库及防火墙302的配置,此处该业务报文1匹配的特征信息为特征信息1,对该业务报文1需要进行限速处理。防火墙302可以在特征表中添加与会话表项a对应的特征信息1,具体的,可以将会话表项a包括的五元组信息中的源地址、目的地址与特征信息1的对应关系作为特征表项a存储于特征表中,如表2所示,其为防火墙302存储的特征表。这样,防火墙302在接收到基于会话a发送的其它业务报文,可以直接从与会话表项a对应的特征表项a中提取特征信息,而不需要再去特征库中匹配、提取,从而提高防火墙302的处理性能。表2源地址目的地址特征信息192.168.1.1133.33.33.33特征信息1防火墙302在接收到终端301基于会话a发送的业务报文2(业务报文2晚于业务报文1到达防火墙302)时,查找到与该业务报文2对应的会话表项a。此时,特征表中已存在与会话表项a对应的特征信息1(即存在特征表项a),防火墙302直接判断业务报文2是否与特征信息1匹配,如果匹配,则对该业务报文1进行限速处理。由此可以看出,防火墙302可以直接从与会话表项a对应的特征表项a中提取特征信息,而不需要再去特征库中匹配、提取。除此之外,假设业务报文2与特征信息1不匹配,则需要从特征库中获取与该业务报文2匹配的特征信息,并且根据从特征库中匹配的特征信息对应的处理方式,处理该业务报文2。假设与该业务报文2匹配的特征信息为特征信息2,则说明之前匹配的特征信息可能有误,因此将特征表项a中的特征信息1替换为特征信息2,以纠正错误,使防火墙302后续可以直接从与会话表项a对应的特征表项a中提取特征信息,而不需要再去特征库中匹配、提取。本方案中,通过查找特征表中存在的与会话表项对应的特征表项,在待处理报文与该特征表项中的特征信息匹配时,基于该特征信息,对待处理报文进行处理。这样,针对特征表中存在与会话表项对应的特征表项的情况,可以通过对待处理报文与该特征表项中的特征信息进行匹配判断,如果匹配,则直接基于该特征信息,对待处理报文进行处理,而不需要到特征库中进行特征匹配,节省了网络设备的资源,从而提高了网络设备的处理性能。基于上述方法实施例,如图4所示,本发明实施例还提供了一种报文处理装置,该报文处理装置可以包括:第一获取模块410,用于获取待处理报文的地址信息,所述地址信息包括:源ip地址和目的ip地址;判断模块420,用于若会话表中已存在与所述地址信息对应的会话表项,则判断特征表中是否存在与所述会话表项对应的第一特征表项;处理模块430,用于若所述特征表中存在所述第一特征表项,且所述待处理报文与所述第一特征表项中的第一特征信息匹配,则基于所述第一特征信息,对所述待处理报文进行处理。基于图4所示实施例,如图5所示,本发明实施例还提供了另一种报文处理装置,该报文处理装置可以包括:第一获取模块510,用于获取待处理报文的地址信息,所述地址信息包括:源ip地址和目的ip地址;判断模块520,用于若会话表中已存在与所述地址信息对应的会话表项,则判断特征表中是否存在与所述会话表项对应的第一特征表项;第二获取模块530,用于若所述特征表中不存在所述第一特征表项,则从特征库中获取与所述待处理报文匹配的第二特征信息;添加模块540,用于在所述特征表中添加所述会话表项对应的第二特征表项,所述第二特征表项中包括所述第二特征信息;处理模块550,用于若所述特征表中存在所述第一特征表项,且所述待处理报文与所述第一特征表项中的第一特征信息匹配,则基于所述第一特征信息,对所述待处理报文进行处理;所述处理模块550,还可以用于基于所述第二特征信息,对所述待处理报文进行处理。基于图4所示实施例,如图6所示,本发明实施例还提供了再一种报文处理装置,该报文处理装置可以包括:第一获取模块610,用于获取待处理报文的地址信息,所述地址信息包括:源ip地址和目的ip地址;判断模块620,用于若会话表中已存在与所述地址信息对应的会话表项,则判断特征表中是否存在与所述会话表项对应的第一特征表项;第二获取模块630,还可以用于若所述特征表中存在所述第一特征表项,且所述待处理报文与所述第一特征表项中的第一特征信息不相匹配,则从特征库中获取与所述待处理报文匹配的第三特征信息;替换模块640,用于将所述第一特征表项中的第一特征信息替换为所述第三特征信息;处理模块650,用于若所述特征表中存在所述第一特征表项,且所述待处理报文与所述第一特征表项中的第一特征信息匹配,则基于所述第一特征信息,对所述待处理报文进行处理;所述处理模块650,还可以用于基于所述第三特征信息,对所述待处理报文进行处理。基于图4所示实施例,如图7所示,本发明实施例还提供了再一种报文处理装置,该报文处理装置可以包括:第一获取模块710,用于获取待处理报文的地址信息,所述地址信息包括:源ip地址和目的ip地址;判断模块720,用于若会话表中已存在与所述地址信息对应的会话表项,则判断特征表中是否存在与所述会话表项对应的第一特征表项;处理模块730,用于若所述特征表中存在所述第一特征表项,且所述待处理报文与所述第一特征表项中的第一特征信息匹配,则基于所述第一特征信息,对所述待处理报文进行处理;删除模块740,用于在距离上一次接收到所述待处理报文的时长达到预设时长时,从所述特征表中删除所述第一特征表项;或者,在监测到发送所述待处理报文的用户处于离线状态时,从所述特征表中删除所述第一特征表项;或者,在存储多个会话表项的存储空间的剩余容量小于预设阈值时,从特征表中删除预设数量个特征表项。应用本实施例,若会话表中已存在与待处理报文的地址信息对应的会话表项,通过判断特征表中是否存在会话表项对应的第一特征表项,若存在第一特征表项,且待处理报文与该第一特征表项中的第一特征信息匹配,则基于该第一特征信息,对待处理报文进行处理。这样,针对特征表中已存在与会话表项对应的第一特征表项的情况,则可以在待处理报文与第一特征表项中的第一特征信息匹配时,直接对待处理报文进行处理,而不需要到特征库中进行特征匹配,节省了网络设备的资源,从而提高了网络设备的处理性能。并通过从特征表中删除特征表项,节省存储会话表项的存储资源。本发明实施例还提供了一种网络设备,如图8所示,网络设备800,包括处理器810和机器可读存储介质820,所述机器可读存储介质820存储有能够被所述处理器810执行的机器可执行指令,所述处理器810被所述机器可执行指令促使实现本发明实施例提供的报文处理方法。上述机器可读存储介质可以包括ram(randomaccessmemory,随机存取存储器),也可以包括nvm(non-volatilememory,非易失性存储器),例如至少一个磁盘存储器。可选的,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。上述的处理器可以是通用处理器,包括cpu(centralprocessingunit,中央处理器)、np(networkprocessor,网络处理器)等;还可以是dsp(digitalsignalprocessor,数字信号处理器)、asic(applicationspecificintegratedcircuit,专用集成电路)、fpga(field-programmablegatearray,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。本实施例中,该网络设备的处理器通过读取存储器中存储的计算机程序,并通过运行该计算机程序,能够实现:若会话表中已存在与待处理报文的地址信息对应的会话表项,通过判断特征表中是否存在会话表项对应的第一特征表项,若存在第一特征表项,且待处理报文与该第一特征表项中的第一特征信息匹配,则基于该第一特征信息,对待处理报文进行处理。这样,针对特征表中已存在与会话表项对应的第一特征表项的情况,则可以在待处理报文与第一特征表项中的第一特征信息匹配时,直接对待处理报文进行处理,而不需要到特征库中进行特征匹配,节省了网络设备的资源,从而提高了网络设备的处理性能。并通过从特征表中删除特征表项,节省存储会话表项的存储资源。另外,相应于上述实施例所提供的报文处理方法,本发明实施例提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序被处理器执行时,实现本发明实施例提供的报文处理方法。本实施例中,计算机可读存储介质存储有在运行时执行本申请实施例所提供的报文处理方法的应用程序,因此能够实现:若会话表中已存在与待处理报文的地址信息对应的会话表项,通过判断特征表中是否存在会话表项对应的第一特征表项,若存在第一特征表项,且待处理报文与该第一特征表项中的第一特征信息匹配,则基于该第一特征信息,对待处理报文进行处理。这样,针对特征表中已存在与会话表项对应的第一特征表项的情况,则可以在待处理报文与第一特征表项中的第一特征信息匹配时,直接对待处理报文进行处理,而不需要到特征库中进行特征匹配,节省了网络设备的资源,从而提高了网络设备的处理性能。并通过从特征表中删除特征表项,节省存储会话表项的存储资源。对于网络设备以及计算机可读存储介质实施例而言,由于其所涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1