CN107707477A - 报文的处理方法及装置、计算机可读存储介质 - Google Patents
报文的处理方法及装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN107707477A CN107707477A CN201710897532.3A CN201710897532A CN107707477A CN 107707477 A CN107707477 A CN 107707477A CN 201710897532 A CN201710897532 A CN 201710897532A CN 107707477 A CN107707477 A CN 107707477A
- Authority
- CN
- China
- Prior art keywords
- network number
- node
- network
- subtree
- address
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种报文的处理方法及装置、计算机可读存储介质,该方法可以包括:获取接收到的报文的IP地址;根据所述IP地址在所述二叉树中匹配相应的网络号;根据匹配命中的网络号对应的策略处理接收到的报文。在本申请的技术方案中,通过同一二叉树来表示各个网段,使得各个网段均记录在同一二叉树中,从而后续匹配网段时仅需要遍历该二叉树即可。同时,由于IP地址的二进制位的数量较少,那么表示各个网段的二叉树的结点数量也较少,一方面占用的存储资源较少;另一方面匹配网段的效率较高。
Description
技术领域
本申请涉及通讯技术领域,尤其涉及一种报文的处理方法及装置、计算机可读存储介质。
背景技术
网段一般指一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器等)能够直接通讯的那一部分。例如,从192.168.0.1到192.168.255.255之间就是一个网段。针对不同的网段配置相应的策略,可以实现对网络设备的批量管理。当网络设备接收到报文时,提取其中包含的IP地址并匹配该IP地址对应的网段,从而采用该网段对应的策略处理该接收到的报文。
在相关技术中,网段存储于链表中;当匹配任一IP地址对应的网段时,需要遍历链表中存储的网段直到匹配命中。然而,遍历链表中存储的网段使得匹配的效率低下,从而降低了对网络设备的管理效率。
发明内容
有鉴于此,本申请提供一种报文的处理方法及装置、计算机可读存储介质,可以提高匹配网段的效率,从而提高对报文的处理效率。
为实现上述目的,本申请提供技术方案如下:
根据本申请的第一方面,提出了一种报文的处理方法,应用于转发设备,所述转发设备中配置的各个网段的网络号记录于同一二叉树中;所述方法包括:
获取接收到的报文的IP地址;
根据所述IP地址在所述二叉树中匹配相应的网络号;
根据匹配命中的网络号对应的策略处理接收到的报文。
根据本申请的第二方面,提出了一种报文的处理装置,应用于转发设备,所述转发设备中配置的各个网段的网络号记录于同一二叉树中;所述装置包括:
获取单元,获取接收到的报文的IP地址;
匹配单元,根据所述IP地址在所述二叉树中匹配相应的网络号;
第一处理单元,根据匹配命中的网络号对应的策略处理接收到的报文。
根据本申请的第三方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述技术方案中任一项所述方法的步骤。
由以上技术方案可见,本申请通过同一二叉树来表示各个网段,使得各个网段均记录在同一二叉树中,从而后续匹配网段时仅需要遍历该二叉树即可。同时,由于IP地址的二进制位的数量较少(比如IPv4中的IP地址为32位),那么表示各个网段的二叉树的结点数量也较少,一方面占用的存储资源较少;另一方面匹配网段的效率较高。
附图说明
图1是本申请一示例性实施例示出的一种报文的处理方法的流程图。
图2是本申请一示例性实施例示出的二叉树的结点的结构示意图。
图3是本申请一示例性实施例示出的创建二叉树的流程图。
图4是本申请一示例性实施例示出的二叉树的结构示意图。
图5是本申请一示例性实施例示出的匹配网段的流程图。
图6是本申请一示例性实施例示出的一种电子设备的结构示意图。
图7是本申请一示例性实施例示出的一种报文的处理装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
针对不同的网段配置相应的策略,可以实现对网络设备的批量管理。在相关技术中,网段存储于链表中;当匹配任一IP地址对应的网段时,需要遍历链表中存储的网段直到匹配命中。
举例而言,假定某公司有研发部(网段A:10.10.0.0/16)、销售部(网段B:10.11.0.0/16)以及技术支持部(网段C:10.12.0.0/16)三个部门组成。其中,规定技术支持部的员工的PC可以访问内网和外网;研发部的员工的PC可以访问内网;销售部的员工的PC可以访问外网。那么,该公司的转发设备需要分别针对上述三个部门对应的网段内的PC进行访问控制,管理员可以在该转发设备中配置如表1所示的策略:
网段A | 10.10.0.0/16 | 允许访问内网 |
网段B | 10.11.0.0/16 | 允许访问外网 |
网段C | 10.12.0.0/16 | 允许访问内网和外网 |
表1
由于网段A、B、C存储于同一链表中,当转发设备接收到报文并提取其中的IP地址(例如,源IP地址)进行网段的匹配时,需要遍历整条链表中的网段直到匹配命中,导致对网段的匹配效率低下。尤其是当链表中存储的网段较多时,匹配网段将花费大量的时间。例如,当链表中存储了1024个网段时,转发设备可能最多需要遍历1024个网段(即遍历至链表中最后一个网段)才能匹配命中提取的IP地址对应的网段。
因此,本申请通过对存储网段以及匹配网段的方式予以改进,以解决上述相关技术中提到的技术问题,下面结合实施例进行详细说明。
请参见图1,图1是本申请一示例性实施例示出的一种报文的处理方法的流程图,该方法应用于转发设备,所述转发设备中配置的各个网段的网络号记录于同一二叉树中;该方法可以包括以下步骤:
步骤102,获取接收到的报文的IP地址。
步骤104,根据所述IP地址在所述二叉树中匹配相应的网络号。
在本实施例中,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应。例如,指向为左(即左子树的指向)对应于二进制位的数值“0”,指向为右(即右子树的指向)对应于二进制位的数值“1”;或者,指向为左对应于二进制位的数值“1”,指向为右对应于二进制位的数值“0”。当然,本申请并不对此进行限制。
各个网络号的最后一个二进制位对应的子树指向的结点中存储有预设标识。该预设标识用于表明当前匹配命中了网络号。例如,可以通过在结点中存储flag并根据flag的取值来表明当前是否匹配命中网络号。比如,当flag的取值为1时,表明当前匹配命中网络号;当flag的取值为0时,表明当前未匹配命中网络号。
基于上述对二叉树的配置,可以根据子树的指向与各个二进制位的对应关系,依次匹配与所述IP地址的二进制位对应的子树指向的结点;当匹配到的结点中存储有预设标识时,确定匹配到的结点对应的网络号为所述IP地址相匹配的网络号。在匹配IP地址所处的网段时,一方面由于各个网段的网络号均记录于同一二叉树中,那么仅需在二叉树中匹配与该IP地址对应的网络号即可确定该IP地址所处的网段,从而提高了匹配的效率。另一方面,仅需要依次匹配二叉树中对应的结点直到结点中存储有预设标识即可,而由于IP地址的二进制位的数量较少(比如IPv4中的IP地址为32位),那么表示各个网段的二叉树的结点数量也相应的较少,从而可以提升匹配网段的效率。
在本实施例中,当匹配命中多个网络号时,可以选取二进制位最多的网络号作为最终匹配命中的网络号。基于上述“最长匹配”的机制,可以在二叉树中存在一个网段包含另一网段的情况下,最终匹配命中其中范围更小的网段(即被包含的网段),从而提高了匹配网段的准确性。
当未匹配命中网络号时,可以采取默认策略处理接收到的报文。
步骤106,根据匹配命中的网络号对应的策略处理接收到的报文。
在本实施例中,各个网络号的最后一个二进制位对应的子树指向的结点中存储有各自所属网段对应的策略索引。那么,可以先确定匹配命中的网络号的最后一个二进制位对应的子树指向的结点中存储的策略索引,并根据确定出的策略索引读取相应的策略,再根据读取到的策略处理接收到的报文。
由以上技术方案可见,本申请通过同一二叉树来表示各个网段,使得各个网段均记录在同一二叉树中,从而后续匹配网段时仅需要遍历该二叉树即可。同时,由于IP地址的二进制位的数量较少,那么表示各个网段的二叉树的结点数量也较少,一方面占用的存储资源较少;另一方面匹配网段的效率较高。
为了便于理解,下面结合附图对本申请的技术方案进行详细说明。而在实现基于本申请的技术方案时,可以分为两个阶段的处理过程:1)第一阶段:创建二叉树;2)第二阶段:匹配网段。下面分别对这两个阶段进行详细描述。
1、创建二叉树
请参见图2,二叉树的结点的结构如图2所示:结点由四个部分组成,分别是flag、策略索引、left和right。
flag的取值用于表明当前是否匹配命中网络号,flag的取值为0或1。其中,当结点中的flag=0时,表示该结点不存在对应的网络号;同理,当结点中的flag=1时,表示该结点存在对应的网络号。
策略索引:用于指向该结点相应的网络号所属网段对应的策略。比如,可以存储策略的指针地址。
left:左子树指针,存储左子树结点的地址以匹配下一结点。
right:右子树指针,存储右子树结点的地址以匹配下一结点。
基于上述结点的结构,下面对创建二叉树存储网段的过程进行举例说明。假定转发设备配置了如表2所示的五个网段:
网段 | 网段对应的策略 |
8.x.x.x/8 | 策略A |
16.x.x.x/7 | 策略B |
32.x.x.x/6 | 策略C |
64.x.x.x/5 | 策略D |
68.x.x.x/6 | 策略E |
其中,“x”表示不限制该二进制位的取值。网段中子网掩码的取值(以k表示)表示当某一IP地址的前k位与该网段中IP地址的前k位相同时,该IP地址属于该网段。例如,网段8.x.x.x/8,当某一IP地址的前8位与8.x.x.x的二进制形式的前8位(即00001000)相同时,该IP地址属于网段8.x.x.x/8。
那么,如图3所示,创建二叉树的过程可以包括以下步骤:
步骤302,根据子网掩码确定网络号。
在本实施例中,将网段的IP地址和子网掩码(取值为k)进行与运算并取运算结果的前k位,得到该网段的网络号。以网段8.x.x.x/8为例,0000 1000-xxxx xxxx-xxxx xxxx-xxxx xxxx与1111 1111-0000 0000-0000 0000-0000 0000进行与运算,得到的运算结果为0000 1000-0000 0000-0000 0000-0000 0000,取前8位得到网络号00001000。类似的,可以得到表2中其他网段的网络号依次为0001000、001000、01000、010001。
步骤304,按照从左至右的顺序依次匹配/创建与网络号的各个二进制位取值对应的结点。
步骤306,判断当前匹配/创建的结点对应的二进制位是否为网络号的末位二进制位;若是,则转入步骤308,否则转入步骤304。
步骤308,结束匹配/创建结点的操作。
在本实施例中,当二进制位取0时,匹配左子树下的结点;当二进制位取1时,匹配右子树下的结点。当子树(左子树或右子树)下不存在结点时,创建相应的结点。在创建结点时,若该创建的结点对应的二进制位为步骤302得到的网络号的最后一位,则将该结点中存储的flag置1,并存储该网络号所属网段对应的策略索引;否则,将该结点中存储的flag置0。
如图4所示,以网段8.x.x.x/8为例,首先从左至右查看网络号00001000的二进制位,得到第一个二进制位0,再查看首个结点(即根结点)的left是否存在,若不存在则创建结点(由于该二进制位不是网络号的最后一位,该结点中的flag置0)。类似的,当查看至第五个二进制位1时,查看当前结点(即结点w)的right是否存在,若不存在则创建结点。以此类推,直到当查看至最后一个二进制位0时,将创建结点a(由于该二进制位是网络号的最后一位,该结点中的flag置1,并存储策略A的索引)并结束操作。
而记录表2中其他网段的过程与上述类似,在此不再赘述。综上,对应于网段8.x.x.x/8,结点a中存储有策略A的索引,且结点a的flag置1;对应于网段16.x.x.x/7,结点b中存储有策略B的索引,且结点b的flag置1;对应于网段32.x.x.x/6,结点c中存储有策略C的索引,且结点c的flag置1;对应于网段64.x.x.x/5,结点d中存储有策略D的索引,且结点d的flag置1;对应于网段68.x.x.x/6,结点e中存储有策略E的索引,且结点e的flag置1。同时,图4中除结点a-e以外的其他所有结点的flag置0。
由此可见,一方面由于各个网段的网络号均记录于同一二叉树中,那么后续仅需在二叉树中匹配与IP地址对应的网络号即可确定该IP地址所处的网段,从而提高了匹配的效率。另一方面,仅需要依次匹配二叉树中对应的结点直到结点中存储有预设标识即可,而由于IP地址的二进制位的数量较少(比如IPv4中的IP地址为32位),那么表示各个网段的二叉树的结点数量也相应的较少,从而可以提升匹配网段的效率。
2、匹配网段
请参见图5,图5是本申请一示例性实施例示出的匹配网段的流程图。如图5所示,匹配过程可以包括以下步骤:
步骤502,获取接收到报文的IP地址。
在本实施例中,根据策略的不同,获取到的IP地址也不同。例如,可以获取目的IP地址或源IP地址。
步骤504,根据子树的指向与各个二进制位的对应关系,依次匹配与IP地址的二进制位对应的子树指向的结点。
步骤506,判断当前匹配的结点中的flag是否等于1,若等于1则转入步骤508,否则返回步骤504。
在本实施例中,由上述“创建二叉树”的过程可知,当某一结点中的flag=0时,说明匹配至该结点时匹配命中了相应的网络号(即匹配命中网段),该结点中存储了相应的策略的索引。
当匹配命中多个网络号(即匹配到了多个结点中的flag=0)时,可以选取二进制位最多的网络号作为最终匹配命中的网络号。基于上述“最长匹配”的机制,可以在二叉树中存在一个网段包含另一网段的情况下,最终匹配命中其中范围更小的网段(即被包含的网段),从而提高了匹配网段的准确性。
步骤508,根据结点中存储的策略索引读取相应的策略。
步骤510,根据读取到的策略处理接收到的报文。
承接于上述举例,下面以在上述创建的二叉树中匹配IP地址68.2.2.2对应的网段为例,对步骤502-510进行详细说明。将IP地址换算成二进制为:0100 0100-0000 0010-0000 0010-0000 0010-0000 0010。然后根据该IP地址的二进制位按照从左至右的顺序遍历二叉树,其遍历的路径为:0(left)->1(right)->0(left)->0(right)->0(left,命中,记录)->1(right,命中,记录)->0(left不存在,停止遍历)。
根据上述路径,返回的结果为两个网段:64.x.x.x/5和68.x.x.x/6。当匹配命中多个网段时,可以按照“最长匹配”的机制选取网段,即匹配到的二进制位最多的网段。例如,可以选取网段68.x.x.x/6,并根据结点e中存储的索引读取策略E,以及根据策略E处理接收到的报文。当然,也可以按照“最短匹配”的机制选取网段,即匹配到的二进制位最少的网段,本申请并不对此进行限制。
在本实施例中,当未匹配命中相应的网段时,可以采取默认策略处理接收到的报文。例如,当从报文中获取到IP地址1.1.1.1时,按照上述步骤502-506并未匹配命中网段,则按照预先配置的默认策略处理该报文。
由以上技术方案可见,本申请通过同一二叉树来表示各个网段,使得各个网段均记录在同一二叉树中,从而后续匹配网段时仅需要遍历该二叉树即可。同时,由于IP地址的二进制位的数量较少,那么表示各个网段的二叉树的结点数量也较少,一方面占用的存储资源较少;另一方面匹配网段的效率较高。
图6示出了根据本申请的一示例性实施例的电子设备的结构示意图。请参考图6,在硬件层面,该电子设备包括处理器602、内部总线604、网络接口606、内存608以及非易失性存储器610,当然还可能包括其他业务所需要的硬件。处理器602从非易失性存储器610中读取对应的计算机程序到内存608中然后运行,在逻辑层面上形成报文的处理装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图7,在软件实施方式中,该报文的处理装置应用于转发设备,所述转发设备中配置的各个网段的网络号记录于同一二叉树中,该报文的处理装置可以包括获取单元701、匹配单元702和第一处理单元703。其中:
获取单元701,获取接收到的报文的IP地址;
匹配单元702,根据所述IP地址在所述二叉树中匹配相应的网络号;
第一处理单元703,根据匹配命中的网络号对应的策略处理接收到的报文。
可选的,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有预设标识;所述匹配单元702具体用于:
根据子树的指向与各个二进制位的对应关系,依次匹配与所述IP地址的二进制位对应的子树指向的结点;
当匹配到的结点中存储有预设标识时,确定匹配到的结点对应的网络号为所述IP地址相匹配的网络号。
可选的,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有各自所属网段对应的策略索引;所述第一处理单元703具体用于:
确定匹配命中的网络号的最后一个二进制位对应的子树指向的结点中存储的策略索引,并根据确定出的策略索引读取相应的策略;
根据读取到的策略处理接收到的报文。
可选的,还包括:
选取单元704,当匹配命中多个网络号时,选取二进制位最多的网络号作为最终匹配命中的网络号。
可选的,还包括:
第二处理单元705,当未匹配命中网络号时,采取默认策略处理接收到的报文。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由报文的处理装置的处理器执行以完成上述方法,该方法可以包括:
获取接收到的报文的IP地址;
根据所述IP地址在所述二叉树中匹配相应的网络号;
根据匹配命中的网络号对应的策略处理接收到的报文。
可选的,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有预设标识;所述根据所述IP地址在所述二叉树中匹配相应的网络号,包括:
根据子树的指向与各个二进制位的对应关系,依次匹配与所述IP地址的二进制位对应的子树指向的结点;
当匹配到的结点中存储有预设标识时,确定匹配到的结点对应的网络号为所述IP地址相匹配的网络号。
可选的,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有各自所属网段对应的策略索引;所述根据匹配命中的网络号对应的策略处理接收到的报文,包括:
确定匹配命中的网络号的最后一个二进制位对应的子树指向的结点中存储的策略索引,并根据确定出的策略索引读取相应的策略;
根据读取到的策略处理接收到的报文。
可选的,还包括:
当匹配命中多个网络号时,选取二进制位最多的网络号作为最终匹配命中的网络号。
可选的,还包括:
当未匹配命中网络号时,采取默认策略处理接收到的报文。
其中,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等,本申请并不对此进行限制。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (11)
1.一种报文的处理方法,其特征在于,应用于转发设备,所述转发设备中配置的各个网段的网络号记录于同一二叉树中;所述方法包括:
获取接收到的报文的IP地址;
根据所述IP地址在所述二叉树中匹配相应的网络号;
根据匹配命中的网络号对应的策略处理接收到的报文。
2.根据权利要求1所述的方法,其特征在于,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有预设标识;所述根据所述IP地址在所述二叉树中匹配相应的网络号,包括:
根据子树的指向与各个二进制位的对应关系,依次匹配与所述IP地址的二进制位对应的子树指向的结点;
当匹配到的结点中存储有预设标识时,确定匹配到的结点对应的网络号为所述IP地址相匹配的网络号。
3.根据权利要求1所述的方法,其特征在于,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有各自所属网段对应的策略索引;所述根据匹配命中的网络号对应的策略处理接收到的报文,包括:
确定匹配命中的网络号的最后一个二进制位对应的子树指向的结点中存储的策略索引,并根据确定出的策略索引读取相应的策略;
根据读取到的策略处理接收到的报文。
4.根据权利要求1所述的方法,其特征在于,还包括:
当匹配命中多个网络号时,选取二进制位最多的网络号作为最终匹配命中的网络号。
5.根据权利要求1所述的方法,其特征在于,还包括:
当未匹配命中网络号时,采取默认策略处理接收到的报文。
6.一种报文的处理装置,其特征在于,应用于转发设备,所述转发设备中配置的各个网段的网络号记录于同一二叉树中;所述装置包括:
获取单元,获取接收到的报文的IP地址;
匹配单元,根据所述IP地址在所述二叉树中匹配相应的网络号;
第一处理单元,根据匹配命中的网络号对应的策略处理接收到的报文。
7.根据权利要求6所述的装置,其特征在于,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有预设标识;所述匹配单元具体用于:
根据子树的指向与各个二进制位的对应关系,依次匹配与所述IP地址的二进制位对应的子树指向的结点;
当匹配到的结点中存储有预设标识时,确定匹配到的结点对应的网络号为所述IP地址相匹配的网络号。
8.根据权利要求6所述的装置,其特征在于,所述二叉树中各个结点的子树的指向依次与网络号的各个二进制位的数值相对应;各个网络号的最后一个二进制位对应的子树指向的结点中存储有各自所属网段对应的策略索引;所述第一处理单元具体用于:
确定匹配命中的网络号的最后一个二进制位对应的子树指向的结点中存储的策略索引,并根据确定出的策略索引读取相应的策略;
根据读取到的策略处理接收到的报文。
9.根据权利要求6所述的装置,其特征在于,还包括:
选取单元,当匹配命中多个网络号时,选取二进制位最多的网络号作为最终匹配命中的网络号。
10.根据权利要求6所述的装置,其特征在于,还包括:
第二处理单元,当未匹配命中网络号时,采取默认策略处理接收到的报文。
11.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-5中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710897532.3A CN107707477A (zh) | 2017-09-28 | 2017-09-28 | 报文的处理方法及装置、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710897532.3A CN107707477A (zh) | 2017-09-28 | 2017-09-28 | 报文的处理方法及装置、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107707477A true CN107707477A (zh) | 2018-02-16 |
Family
ID=61174551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710897532.3A Pending CN107707477A (zh) | 2017-09-28 | 2017-09-28 | 报文的处理方法及装置、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107707477A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875006A (zh) * | 2018-06-15 | 2018-11-23 | 泰康保险集团股份有限公司 | 确定ip地址所属地区的方法及装置 |
CN109194536A (zh) * | 2018-07-27 | 2019-01-11 | 北京奇虎科技有限公司 | 一种网络流量过滤方法、装置及终端 |
CN109194638A (zh) * | 2018-08-23 | 2019-01-11 | 新华三技术有限公司合肥分公司 | 报文处理方法、装置、交换设备及计算机可读存储介质 |
CN109743745A (zh) * | 2019-02-19 | 2019-05-10 | 北京三快在线科技有限公司 | 移动网络接入类型识别方法、装置、电子设备及存储介质 |
CN109905413A (zh) * | 2019-04-30 | 2019-06-18 | 新华三信息安全技术有限公司 | 一种ip地址的匹配方法及装置 |
CN109951495A (zh) * | 2019-03-29 | 2019-06-28 | 新华三信息安全技术有限公司 | 网段查找方法及装置 |
CN110012124A (zh) * | 2019-03-29 | 2019-07-12 | 新华三信息安全技术有限公司 | 一种对网络地址范围段进行拆分的方法及装置 |
CN110071871A (zh) * | 2019-03-13 | 2019-07-30 | 国家计算机网络与信息安全管理中心 | 一种大模式集ip地址匹配方法 |
CN110120942A (zh) * | 2019-04-17 | 2019-08-13 | 新华三信息安全技术有限公司 | 安全策略规则匹配方法及装置、防火墙设备及介质 |
CN110290117A (zh) * | 2019-06-06 | 2019-09-27 | 新华三信息安全技术有限公司 | 一种匹配ip地址的方法及装置 |
CN110808963A (zh) * | 2019-10-17 | 2020-02-18 | 新华三信息安全技术有限公司 | 安全策略规则匹配方法、装置及防火墙设备 |
CN110958334A (zh) * | 2019-11-25 | 2020-04-03 | 新华三半导体技术有限公司 | 报文处理方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005051649A (ja) * | 2003-07-31 | 2005-02-24 | Nippon Telegr & Teleph Corp <Ntt> | Vpn用テーブル検索装置 |
CN102739520A (zh) * | 2012-05-31 | 2012-10-17 | 华为技术有限公司 | 查找方法及装置 |
WO2014047863A1 (en) * | 2012-09-28 | 2014-04-03 | Hewlett-Packard Development Company, L. P. | Generating a shape graph for a routing table |
CN104780103A (zh) * | 2015-04-14 | 2015-07-15 | 杭州华三通信技术有限公司 | 报文转发方法及装置 |
CN105635343A (zh) * | 2016-02-02 | 2016-06-01 | 中国互联网络信息中心 | 应用于dns查询的ip地址列表存储和查询方法 |
CN106100998A (zh) * | 2016-08-23 | 2016-11-09 | 杭州迪普科技有限公司 | 一种路由过滤规则的组织方法和装置 |
CN106302177A (zh) * | 2016-08-23 | 2017-01-04 | 杭州迪普科技有限公司 | 一种路由过滤规则的组织方法和装置 |
CN106803809A (zh) * | 2016-12-29 | 2017-06-06 | 杭州迪普科技股份有限公司 | 一种报文转发的方法和装置 |
CN106850432A (zh) * | 2017-01-04 | 2017-06-13 | 杭州迪普科技股份有限公司 | 一种报文转发的方法及装置 |
CN107169054A (zh) * | 2017-04-26 | 2017-09-15 | 四川长虹电器股份有限公司 | 基于前缀森林的ip索引方法 |
-
2017
- 2017-09-28 CN CN201710897532.3A patent/CN107707477A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005051649A (ja) * | 2003-07-31 | 2005-02-24 | Nippon Telegr & Teleph Corp <Ntt> | Vpn用テーブル検索装置 |
CN102739520A (zh) * | 2012-05-31 | 2012-10-17 | 华为技术有限公司 | 查找方法及装置 |
WO2014047863A1 (en) * | 2012-09-28 | 2014-04-03 | Hewlett-Packard Development Company, L. P. | Generating a shape graph for a routing table |
CN104780103A (zh) * | 2015-04-14 | 2015-07-15 | 杭州华三通信技术有限公司 | 报文转发方法及装置 |
CN105635343A (zh) * | 2016-02-02 | 2016-06-01 | 中国互联网络信息中心 | 应用于dns查询的ip地址列表存储和查询方法 |
CN106100998A (zh) * | 2016-08-23 | 2016-11-09 | 杭州迪普科技有限公司 | 一种路由过滤规则的组织方法和装置 |
CN106302177A (zh) * | 2016-08-23 | 2017-01-04 | 杭州迪普科技有限公司 | 一种路由过滤规则的组织方法和装置 |
CN106803809A (zh) * | 2016-12-29 | 2017-06-06 | 杭州迪普科技股份有限公司 | 一种报文转发的方法和装置 |
CN106850432A (zh) * | 2017-01-04 | 2017-06-13 | 杭州迪普科技股份有限公司 | 一种报文转发的方法及装置 |
CN107169054A (zh) * | 2017-04-26 | 2017-09-15 | 四川长虹电器股份有限公司 | 基于前缀森林的ip索引方法 |
Non-Patent Citations (1)
Title |
---|
户根勤: "《网络是怎么连接的》", 31 January 2017 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875006A (zh) * | 2018-06-15 | 2018-11-23 | 泰康保险集团股份有限公司 | 确定ip地址所属地区的方法及装置 |
CN109194536A (zh) * | 2018-07-27 | 2019-01-11 | 北京奇虎科技有限公司 | 一种网络流量过滤方法、装置及终端 |
CN109194638A (zh) * | 2018-08-23 | 2019-01-11 | 新华三技术有限公司合肥分公司 | 报文处理方法、装置、交换设备及计算机可读存储介质 |
CN109194638B (zh) * | 2018-08-23 | 2021-04-06 | 新华三技术有限公司合肥分公司 | 报文处理方法、装置、交换设备及计算机可读存储介质 |
CN109743745B (zh) * | 2019-02-19 | 2021-01-22 | 北京三快在线科技有限公司 | 移动网络接入类型识别方法、装置、电子设备及存储介质 |
CN109743745A (zh) * | 2019-02-19 | 2019-05-10 | 北京三快在线科技有限公司 | 移动网络接入类型识别方法、装置、电子设备及存储介质 |
CN110071871A (zh) * | 2019-03-13 | 2019-07-30 | 国家计算机网络与信息安全管理中心 | 一种大模式集ip地址匹配方法 |
CN110012124B (zh) * | 2019-03-29 | 2021-10-29 | 新华三信息安全技术有限公司 | 一种对网络地址范围段进行拆分的方法及装置 |
CN109951495A (zh) * | 2019-03-29 | 2019-06-28 | 新华三信息安全技术有限公司 | 网段查找方法及装置 |
CN110012124A (zh) * | 2019-03-29 | 2019-07-12 | 新华三信息安全技术有限公司 | 一种对网络地址范围段进行拆分的方法及装置 |
CN109951495B (zh) * | 2019-03-29 | 2021-10-12 | 新华三信息安全技术有限公司 | 网段查找方法及装置 |
CN110120942A (zh) * | 2019-04-17 | 2019-08-13 | 新华三信息安全技术有限公司 | 安全策略规则匹配方法及装置、防火墙设备及介质 |
CN110120942B (zh) * | 2019-04-17 | 2022-01-25 | 新华三信息安全技术有限公司 | 安全策略规则匹配方法及装置、防火墙设备及介质 |
CN109905413A (zh) * | 2019-04-30 | 2019-06-18 | 新华三信息安全技术有限公司 | 一种ip地址的匹配方法及装置 |
CN110290117A (zh) * | 2019-06-06 | 2019-09-27 | 新华三信息安全技术有限公司 | 一种匹配ip地址的方法及装置 |
CN110290117B (zh) * | 2019-06-06 | 2021-11-05 | 新华三信息安全技术有限公司 | 一种匹配ip地址的方法及装置 |
CN110808963A (zh) * | 2019-10-17 | 2020-02-18 | 新华三信息安全技术有限公司 | 安全策略规则匹配方法、装置及防火墙设备 |
CN110808963B (zh) * | 2019-10-17 | 2022-05-24 | 新华三信息安全技术有限公司 | 安全策略规则匹配方法、装置及防火墙设备 |
CN110958334A (zh) * | 2019-11-25 | 2020-04-03 | 新华三半导体技术有限公司 | 报文处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107707477A (zh) | 报文的处理方法及装置、计算机可读存储介质 | |
US10680961B2 (en) | Using headerspace analysis to identify flow entry reachability | |
KR102291842B1 (ko) | 파일 공유를 위한 기술들 | |
CN103902653B (zh) | 一种构建数据仓库表血缘关系图的方法和装置 | |
CN103886667B (zh) | 一种投票信息处理方法、装置及系统 | |
Beckett et al. | FALCON: a software package for analysis of nestedness in bipartite networks | |
CN107633016A (zh) | 数据处理方法及装置和电子设备 | |
CN107015853A (zh) | 多阶段任务的实现方法和装置 | |
CN104866576B (zh) | 一种Data Vault模型数据仓库自动构建的方法及装置 | |
CN106936781A (zh) | 一种用户操作行为的判定方法及装置 | |
TW201423447A (zh) | 動態資料遮罩方法以及資料庫系統 | |
CN101819551B (zh) | 记录企业信息系统的服务交互数据的方法和系统 | |
CN106815226A (zh) | 文本匹配方法和装置 | |
CN104021219B (zh) | 一种数据模板的生成方法及装置 | |
CN106997367A (zh) | 程序文件的分类方法、分类装置和分类系统 | |
CN107908432A (zh) | 应用程序的配置方法及装置、终端设备及可读存储介质 | |
CN106251122A (zh) | 一种工作流处理方法和装置 | |
CN108255719A (zh) | 一种应用程序dump文件获取方法、装置及电子设备 | |
CN109242458A (zh) | 基于区块链的信息管理方法及相关设备 | |
CN107330009A (zh) | 主题词分类模型创建方法、创建装置及存储介质 | |
CN111107181B (zh) | Nat规则匹配方法、装置、电子设备及存储介质 | |
CN107608873A (zh) | 软件测试方法和系统及测试平台 | |
CN104007938A (zh) | 在存储网络中的键值生成方法及装置 | |
CN108710662A (zh) | 语言转换方法和装置、存储介质、数据查询系统和方法 | |
CN105978868A (zh) | Ip地址权限的查找方法及装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180216 |