CN101594301A - 一种报文处理方法和装置 - Google Patents
一种报文处理方法和装置 Download PDFInfo
- Publication number
- CN101594301A CN101594301A CNA2009100875163A CN200910087516A CN101594301A CN 101594301 A CN101594301 A CN 101594301A CN A2009100875163 A CNA2009100875163 A CN A2009100875163A CN 200910087516 A CN200910087516 A CN 200910087516A CN 101594301 A CN101594301 A CN 101594301A
- Authority
- CN
- China
- Prior art keywords
- message
- table entry
- received
- packet
- service table
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 6
- 238000000034 method Methods 0.000 claims abstract description 24
- 230000032683 aging Effects 0.000 claims description 43
- 238000001514 detection method Methods 0.000 description 8
- 101000961042 Pseudopleuronectes americanus Ice-structuring protein A Proteins 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种报文处理方法和装置,其中,该方法包括:步骤A,网络设备接收到入报文时,记录接收到该入报文的接口信息;步骤B,网络设备接收到回程报文时,通过已记录的接收到该回程报文对应的入报文的接口信息对应的接口发送该回程报文。采用本发明,能够实现利用接收入报文的接口转发与该入报文对应的回程报文的操作。
Description
技术领域
本发明涉及网络技术,特别涉及一种报文处理方法和装置。
背景技术
在网络技术中,两个网络之间可以通过网络设备实现业务信息交互。参见图1,图1为现有技术中网络设备处理业务的示意图。如图1所示,假如当前有一来自网A、并需要访问网C的业务,则网A首先将业务信息承载在IP报文中发送给网络设备,其中,该IP报文中携带了源地址信息和目的地址信息,具体地,源地址信息为网A中发送该IP报文的设备的地址信息,目的地址信息为网C中需要接收该IP报文的设备的地址信息。
如图1所示,当网络设备中的接口1接收到网A发送的IP报文后,网络设备根据该IP报文中携带的源地址信息和目的地址信息从存储的转发数据库(FIB)中确定转发该IP报文的出接口信息,其中,该FIB是根据路由协议建立的,其包含多个路由表项(每一路由表项中至少包含出接口信息),之后,根据确定出的出接口信息转发该IP报文给网C。
如此,网C中与上述确定的出接口信息对应的设备即可接收到网络设备发送的IP报文,根据该IP报文承载的业务信息进行相应地业务处理,当完成业务处理后,通过网络设备返回处理后的IP报文给网A。
其中,该处理后的IP报文与网络设备接收的来自网A的IP报文为两个不同的报文,为便于描述,可将上述网络设备接收的来自网A的IP报文描述为入报文,而将根据该入报文承载的业务信息进行业务处理后得到的处理后的IP报文描述为与该入报文对应的回程报文。这里,回程报文中也携带了源地址信息和目的地址信息,由于回程报文是从网C返回给网A的,因此,回程报文中的源地址信息为网C中发送该回程报文的设备的地址信息,目的地址信息为网A中接收该回程报文的设备的地址信息。当网络设备接收到网C返回的与所述入报文对应的回程报文后,根据该回程报文携带的源地址信息和目的地址信息从存储的FIB中确定出转发该回程报文的出接口信息;这里,确定出的出接口信息为图1所示的网络设备中的接口2的信息,之后,通过接口2转发该回程报文。
可以看出,现有提供的方法中,网络设备仅是根据已存储的FIB确定用于转发与入报文对应的回程报文的出接口信息,比如,在图1中,网络设备根据已存储的FIB确定用于转发与自身通过接口1接收的入报文对应的回程报文的出接口信息,其中,该出接口信息为接口2的信息。可以看出现有提供的方法中会出现网络设备转发与入报文对应的回程报文的接口与接收到该入报文的接口不一致的问题。而目前随着运营商和企业流量监控规则的不断规范,往往要求网络设备接收入报文的接口和转发与该入报文对应的回程报文的接口一致,即利用网络设备中接收入报文的接口转发与该入报文对应的回程报文。然而现有技术中尚没有一种利用网络设备接收入报文的接口转发与该入报文对应的回程报文的方法。
发明内容
本发明提供了一种报文转发方法和装置,以便实现利用网络设备接收入报文的接口转发与该入报文对应的回程报文的操作。
一种报文处理方法,包括:
步骤A,网络设备接收到入报文时,记录接收到该入报文的接口信息;
步骤B,网络设备接收到回程报文时,通过已记录的接收到该回程报文对应的入报文的接口信息对应的接口发送该回程报文。
一种报文处理装置,包括:判断单元、记录单元和转发单元;其中,
所述判断单元用于在接收到报文后,在判断出所述报文是入报文时,发送记录通知给所述记录单元;在判断出所述报文是回程报文时,发送转发通知给所述转发单元;
所述记录单元用于接收所述记录通知,记录接收到该入报文的接口信息;
所述转发单元用于接收所述转发通知,通过已记录的接收到该回程报文对应的入报文的接口信息对应的接口转发所述回程报文。
由以上技术方案可以看出,本发明提供的报文转发方法和装置中,网络设备接收到报文后,如果所述报文是入报文,则记录接收到该入报文的接口信息;如果确定所述报文是回程报文,则通过已记录的接口信息中与该回程报文对应的入报文的接口信息对应的接口转发该回程报文。如此,实现了利用网络设备接收入报文的接口转发与该入报文对应的回程报文的操作。
附图说明
图1为现有技术中网络设备处理业务的示意图;
图2为本发明实施例提供的第一详细流程图;
图3为本发明实施例提供的第二详细流程图;
图4为本发明实施例提供的对应图3所示的应用实施例的示意图
图5为本发明实施例提供的报文处理装置结构图。
具体实施方式
本发明实施例主要包括:网络设备接收到报文后,如果确定接收的报文是入报文,则记录接收到该入报文的接口信息;如果确定接收的报文是回程报文,则通过已记录的接口信息中与该回程报文对应的入报文的接口信息对应的接口转发该回程报文。如此,实现了利用网络设备接收入报文的接口转发与该入报文对应的回程报文的操作。
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
参见图2,图2为本发明实施例提供的第一详细流程图。如图2所示,该流程可包括以下步骤:
步骤201,网络设备判断接收的报文是否为入报文;如果是,执行步骤202;否则,执行步骤205。
这里,网络设备判断接收的报文是否为入报文的操作在具体实现时有多种实现形式,其中一种实现形式为:
根据接收的报文携带的报文标识信息判断接收的报文是否为入报文,具体包括:判断所述报文是否满足预设的报文匹配规则,如果是,确定接收的报文为入报文;其中,该预设的报文匹配规则具体为预设的源地址信息、预设的目的地址信息、预设的源端口号、预设的目的端口号和预设的协议号的任意一个或者任意两个以上的组合;比如,预设的报文匹配规则为预设的源地址信息,则判断所述报文是否满足预设的报文匹配规则具体为判断所述报文携带的源地址信息是否为预设的源地址信息,如果是,确定接收的报文为入报文;否则,执行步骤205。
另一种实现形式为:
预先根据业务需求直接设置网络设备中的一个或者多个接口为入接口,并将通过该入接口接收的报文确定为入报文;如此,上述网络设备判断接收的报文是否为入报文的操作具体包括:判断当前接收到报文的接口是否为预设的入接口,如果是,确定该报文为入报文,执行步骤202;否则,执行步骤205。
需要说明的是,本实施例为避免对携带相同报文标识信息的入报文重复执行生成业务表项操作,可在通过上述操作确定出入报文后,进一步根据该报文携带的报文标识信息来确定当前是否存在对应的业务表项,如果否,执行步骤202;否则,按照现有流程处理该报文。
步骤202,生成与该入报文对应的包含接收到该入报文的接口信息的业务表项。
这里,生成的与入报文对应的业务表项以该入报文携带的报文标识信息为关键字,其中,报文标识信息具体有多种形式,比如包含源地址信息和目的地址信息;或者包含源地址信息、目的地址信息和报文协议号等,这里以报文标识信息包含源地址信息、目的地址信息、报文协议号、源端口号和目的端口号为例。
本实施例中,为便于及时在业务表项老化时删除该业务表项,以便节省存储资源,还可为该业务表项设置老化单元,其中,该老化单元具体可为定时器或者计数器等。若该老化单元为计数器,则当步骤202中生成业务表项时,可将该计数器的值从0开始加1;若该老化单元为定时器,可设置该定时器的更新时间为N秒,其中,N为正整数,当步骤202中生成业务表项时,可设置该定时器的时间为最大值N秒,之后,慢慢递减。
步骤203,网络设备生成与上述业务表项相关联的路由表项,并根据生成的路由表项,更新已存储的FIB。
这里,步骤203生成的路由表项中包含了以接收的入报文中的源地址信息为目的地址信息、接收到入报文的接口信息为出接口信息的路由信息。
优选地,步骤203中根据生成的路由表项,更新已存储的FIB,具体为网络设备将生成的路由表项添加到自身已存储的FIB中。其中,网络设备已存储的FIB是按照与现有技术相同的流程建立的,这里不再赘述。
通常,网络设备存储的FIB所包含的路由表项只包含目的地址信息和出接口信息,并不包含源地址信息、报文协议号、源端口号和目的端口号,本实施例为便于区分该生成的路由表项与按照现有流程建立的FIB中的路由表项,可使步骤203中生成的路由表项中携带源地址信息、报文协议号、源端口号和目的端口号,其中,源地址信息为该入报文携带的目的地址信息、报文协议号为该入报文携带的报文协议号、源端口号为该入报文携带的目的端口号,目的端口号为该入报文携带的源端口号。
在网络传输过程中,TCP和UDP协议为TCP/IP传输层两个常用的传输协议,若步骤201接收的报文为遵从TCP协议的TCP报文,则步骤203生成的路由表项具体包含:以步骤201接收的TCP报文中的TCP源地址信息为目的地址信息、以接收到该TCP报文的接口信息为出接口信息的路由信息,并且,该路由表项中还携带了源地址信息、源端口号、目的端口号和TCP协议号,其中,源地址信息为该TCP报文中的目的地址信息、源端口号为该TCP报文中的目的端口号,目的端口号为该TCP报文的源端口号,TCP协议号为该TCP报文中的TCP协议号。若步骤201接收的报文为UDP协议下的UDP报文,则步骤203生成的路由表项具体包含:以步骤201接收的UDP报文中的UDP源地址信息为目的地址信息、以接收到UDP报文的接口信息为出接口信息的路由信息,并且,该路由表项中还携带了源地址信息、源端口号、目的端口号和UDP协议号,其中,源地址信息为该UDP报文中的目的地址信息、源端口号为该UDP报文携带的目的端口号、目的端口号为该UDP报文携带的源端口号、UDP协议号为该UDP报文携带的UDP协议号。
需要说明的是,步骤203生成的路由表项实质上为一静态路由表项,为保证该静态路由表项能够及时更新,本实施例中,可当执行删除该业务表项的操作时,进一步删除与该业务表项相关联的路由表项。
步骤204,根据该入报文携带的源地址信息和目的地址信息转发该入报文,结束本流程。
这里,网络设备将接收的入报文转发的操作与现有技术类似,如背景技术中的图1所示,若步骤201中接收的入报文为来自网A,且需要访问网C的报文,则网络设备根据该入报文携带的源地址信息和目的地址信息从存储的FIB中确定转发该入报文的出接口,通过确定的出接口转发该入报文给网C。如此,网C接收到网络设备发送的入报文后,根据该入报文承载的业务信息执行相应的业务处理,当完成处理后,得到处理后的报文。之后,网C通过网络设备返回处理后的报文给网A。
步骤205,根据该报文携带的报文标识信息在当前存储的FIB中查找用于转发该报文的路由表项,若查找到,则执行步骤206;否则,执行现有的通过查找FIB进行报文转发的操作。
这里,步骤205中的用于转发报文的路由表项具体为查找接收到与该报文对应的入报文时所生成的与该入报文对应的业务表项相关联的路由表项,并非为FIB包含的现有流程中常用的路由表项。
这里之所以根据该报文携带的报文标识信息在当前存储的FIB中查找用于转发报文的路由表项主要是为了查找接收到与该报文对应的入报文时,所生成的与该入报文对应的业务表项相关联的路由表项,以实现后续利用接收入报文的接口转发与该入报文对应的回程报文的操作。
这里,当根据该报文携带的报文标识信息在当前存储的FIB中查找到用于转发该报文的路由表项时,由于该路由表项具体为接收到与该报文对应的入报文时所生成的与该入报文对应的业务表项相关联的路由表项,如此,可直接确定该报文为回程报文。
步骤206,通过该路由表项中的出接口信息对应的接口转发该回程报文。
这里,步骤206是在步骤205查找到路由表项时执行的。根据步骤203中的描述,可以知道步骤205查找到的路由表项包含的出接口信息为接收到与该回程报文对应的入报文的接口信息,如此,通过该路由表项中的出接口信息对应的接口转发回程报文,实现了利用接收入报文的接口转发与该入报文对应的回程报文的操作。
需要说明的是,为节省存储资源,本实施例在步骤205中查找的路由表项时,可进一步更新步骤202中生成的业务表项中的老化单元的值。
这里,若步骤202生成的业务表项中的老化单元为计数器,则当上述步骤205查找到路由表项时,可使与该路由表项相关联的业务表项中的计数器的值减1。由于在生成该路由表项相关联的业务表项时,将该计数器的值加1;因此,可以看出,通过更新操作,该计数器的当前取值变为0,若本实施例中计数器的取值为0时表示其对应的(所在的)业务表项和与该路由表项相关联的路由表项老化,则可进一步执行删除查找到的路由表项和与查找到的路由表项相关联的业务表项的操作,以节省存储资源。
若步骤202生成的业务表项中的老化单元为定时器,则当上述步骤205查找到路由表项时,可使该定时器的时间重新跳到最大值N秒。可以看出,当步骤205查找到路由表项时,该定时器的时间并非为0秒,而是为最大值N秒,若本实施例中设置定时器的取值为0秒时表示其对应的(所在的)业务表项和与该路由表项相关联的路由表项老化,则根据检测策略(实时或者每隔预设时间等策略)检测定时器的取值是否表示其对应的(所在的)业务表项和与该路由表项相关联的路由表项老化,在是的情况下,删除该查找到的路由表项和与该路由表项相关联的业务表项;否则,继续按照检测策略执行检测操作。
还需要说明的是,本发明实施例可设置网络设备中的每一个接口在接收到报文时,执行图2所示的操作,为便于描述,可将该操作简称为报文转发处理操作;也可根据用户需求或者预设原则为网络设备中的一个或者多个接口配置报文转发处理操作功能,将使能了报文转发处理操作功能的接口对接收的报文执行报文转发处理操作,而其他接口对接收的报文执行现有流程。如此,在图2所示的流程中,当网络设备接收到报文后,需要判断接收到该报文的接口是否使能了报文转发处理操作功能,如果是,则执行报文转发处理操作;否则,按照现有流程处理该接收的报文。
优选地,本实施例在为网络设备中的接口配置报文转发处理操作功能时,还可进一步设置报文匹配规则,其中,该报文匹配规则用于表示具体需要针对哪些报文执行报文转发处理操作,该报文匹配规则可以为预设的源地址信息、预设的目的地址信息、预设的源端口号、预设的目的端口号和预设的协议号的任意一个或者任意两个以上的组合。如此,在上述判断出接收到报文的接口使能了报文转发处理操作功能时,还可根据该报文携带的报文标识信息,判断该报文是否满足预设的报文匹配规则,如果是,执行报文转发处理操作;否则,按照现有流程处理该接收的报文。比如,预设的报文匹配规则为预设的源地址信息;接收的报文携带的标识信息包含源地址信息,则根据该报文携带的报文标识信息,判断该报文是否满足预设的报文匹配规则具体为:判断该报文携带的源地址信息是否与预设的源地址信息相同,如果是,则确定该报文满足预设的报文匹配规则,执行报文转发处理操作,即图2所示的流程;否则,确定报文不满足预设的报文匹配规则,按照现有流程处理该接收的报文。
上述图2所示的实施例中,需要生成与入报文对应的业务表项,以及与该业务表项相关联的路由表项。其中,业务表项用于标识自身和与自身相关联的路由表项是否老化;而路由表项用于为转发报文提供路由信息。优选地,为便于本发明实施例的简单实现,也可仅建立业务表项,使该业务表项既能具有标识自身是否老化的功能,也能实现为转发报文提供路由信息的功能,具体可参见图3。参见图3,图3为本发明实施例提供的第二详细流程图。如图3所示,该流程可包括以下步骤:
步骤301,网络设备判断接收的报文是否为回程报文,如果否,执行步骤302;否则,执行步骤305。
这里,判断接收的报文是否为回程报文的操作可参见步骤303中的描述。
步骤302,判断接收的报文是否为入报文,如果是,执行步骤303;否则,按照现有流程处理该报文。
这里,步骤302具体操作可参见图2所示的步骤201,这里不再赘述。
需要说明的是,本实施例中也可不执行步骤302,而是在判断出接收的报文不是回程报文时,直接确定该接收的报文为入报文,执行步骤303,因此,图3所示的只是一种具体实例,并不限定本发明实施例的应用。
需要说明的是,步骤301和步骤302中的判断操作并没有固定的时间先后顺序,本实施例也可先执行步骤302中的判断操作,其中,该步骤302替换为:判断接收的报文是否为入报文,如果是,执行步骤303;否则,执行步骤301;步骤301替换为:判断接收的报文是否为回程报文,如果是,执行步骤305;否则,按照现有流程处理该接收的报文。
步骤303,生成与该入报文对应的包含接收到该入报文的接口信息的业务表项。
这里,生成的与入报文对应的业务表项以该入报文携带的报文标识信息为关键字,其中,报文标识信息具体有多种形式,比如包含源地址信息和目的地址信息;或者包含源地址信息、目的地址信息和报文协议号等,这里以报文标识信息包含源地址信息、目的地址信息、报文协议号、源端口号和目的端口号为例。
具体地,步骤301中的判断操作可根据接收的报文中携带的报文标识信息和当前存在的业务表项来执行,包括:判断当前是否存在满足条件的业务表项;其中,所述条件为:该业务表项包含的报文协议号与当前接收的报文携带的报文协议号相同,源地址信息与当前接收的报文携带的目的地址信息相同,目的地址信息与当前接收的报文携带的源地址信息相同,源端口号与当前接收的报文携带的目的端口号相同,和目的端口号和当前接收的报文携带的源端口号相同中的至少一个;
在判断结果为是时,确定接收的报文为回程报文,执行步骤305;否则,执行步骤302。
需要说明的是,上述判断接收的报文是否为回程报文的操作为本发明的一个具体实施例,并不限定本发明实施例的应用。本发明实施例还可采用其他方式来判断接收的报文是否为回程报文的操作,比如:设置网络设备中一个或者多个接口作为回程接口,将通过回程接口接收的报文直接确定为回程报文。这样,上述步骤301中的判断操作为:判断当前接收到报文的接口是否为预设的回程接口,如果是,确定该报文为回程报文,执行步骤305;否则,执行步骤302。本发明实施例以上述判断当前是否存在满足条件的业务表项为例来执行判断接收的报文是否为回程报文的操作。
优选地,为便于及时在业务表项老化时删除该业务表项,以便节省存储资源,本实施例还可为该业务表项设置老化单元,其中,该老化单元具体可为定时器或者计数器等。若该老化单元为计数器,则当步骤303中生成业务表项时,可将该计数器的值从0开始加1;若该老化单元为定时器,可设置该定时器的更新时间为N秒,其中,N为正整数,当步骤303中生成业务表项时,可设置该定时器的时间为最大值N秒,之后,慢慢递减。
步骤304,根据该入报文携带的源地址信息和目的地址信息转发该入报文,结束本流程。
步骤305,通过步骤303中生成的业务表项包含的接口信息对应的接口转发该接收的报文。
这里,由于业务表项是在接收到入报文时生成的,如此,当上述判断出存在满足条件的业务表项时,可确定该接收的报文为与该存在的业务表项对应的入报文具有对应关系的回程报文。由于业务表项中的接口信息为接收到入报文的接口信息,因此,步骤305具体为通过接收到入报文的接口信息对应的接口转发该入报文对应的回程报文。因此,本实施例实现了利用接收入报文的接口转发与该入报文对应的回程报文的操作。
需要说明的是,若上述以判断当前接收到报文的接口是否为预设的回程接口为例来判断当前接收的报文是否为回程报文,由于回程接口是预先设置好的,这样,就会由于业务需求或者网络延迟等因素而导致预设的回程接口接收到报文(记为回程报文)后,与该报文对应的入报文还未接收到的情况,针对这种情况,步骤305可替换为:按照预设定的策略路由,根据该回程报文携带的报文标识信息判断当前是否存在用于转发该回程报文的业务表项,其中,用于转发该报文的业务表项为接收到与该回程报文对应的入报文时所生成的业务表项;具体包括:判断当前是否存在满足条件的业务表项;其中,所述条件为:该业务表项包含的源地址信息与该当前接收的报文携带的目的地址信息相同,目的地址信息与该当前接收的报文携带的源地址信息相同,报文协议号与该当前接收的报文携带的报文协议号相同,源端口号与该当前接收的报文携带的目的端口号相同,和目的端口号与该当前接收的报文携带的源端口号相同中的至少一个;
在判断结果为是时,确定存在用于转发该报文的业务表项,通过该确定出的业务表项包含的接口信息对应的接口转发该接收的报文;否则,执行现有的通过查找FIB进行报文转发的操作。
需要说明的是,为节省存储资源,本实施例在上述判断出存在业务表项时,可进一步更新步骤303中生成的业务表项中的老化单元的值。
这里,若步骤303生成的业务表项中的老化单元为计数器,则当上述判断出存在业务表项时,可使该业务表项中计数器的值减1。由于在生成该路由表项相关联的业务表项时,将该计数器的值加1;因此,可以看出,通过更新操作,该计数器的当前取值变为0,若本实施例中计数器的取值为0时表示其对应的(所在的)业务表项老化,则可进一步执行删除该判断出存在的业务表项的操作,以节省存储资源。
若步骤303生成的业务表项中的老化单元为定时器,则当上述判断出存在业务表项时,可使该定时器的时间重新跳到最大值N秒。可以看出,当判断出存在业务表项时,该定时器的时间并非为0秒,而是为最大值N秒,若本实施例中设置定时器的取值为0秒时表示其对应的(所在的)业务表项老化,则根据检测策略(实时或者每隔预设时间等策略)检测定时器的取值是否表示其对应的(所在的)业务表项老化,在是的情况下,删除该判断出存在的业务表项;否则,继续按照检测策略执行检测操作。
如此,通过上述操作实现了本发明实施例提供的报文处理方法。
为便于本实施例更加清楚,下面举一个应用实施例来描述本发明实施例的流程。
参见图4,图4为本发明实施例提供的对应于图3所示的应用示意图。当然,对应图2的应用实施例与该应用实施例的流程类似,这里不再一一描述。在图4中,网络设备具体为网关,该网关包含第一至第三接口,假如当前有一从ISP-A过来需要访问内网的业务,则来自ISP-A的承载了该业务信息的TCP报文先到达网关,如图4所示,假如该TCP报文到达了网关的第一接口,则判断该网关接收的TCP报文是否为回程报文,其中,该判断操作具体为判断当前是否存在满足条件的业务表项;在否的情况下,确定该报文不是回程报文;继续判断接收的TCP报文是否为入报文,如果判断出入报文,则生成包含了接收到该入报文的接口信息的业务表项(具体为NAT表项),并且,该业务表项以该入报文携带的源地址信息、目的地址信息、报文协议号、源端口号和目的端口号为关键字。在该业务表项中设置用于表示该业务表项是否老化的老化单元。为便于后续与该入报文对应的回程报文的转发,可对该入报文携带的源地址信息和目的地址信息、源端口号和目的端口号进行NAT转换,得到转换后的源地址信息、目的地址信息、源端口号和目的端口号;将转换后的源地址信息、目的地址信息、源端口号和目的端口号也添加在该TCP报文对应的业务表项中。之后,网关将接收的入报文发送给内网。
当内网处理完该TCP报文后,内网通过网关将处理后的TCP报文发送给ISP-A;由于处理后的TCP报文为从内网发送给ISP-A的报文,因此,该报文携带的源地址信息为上述ISP-A通过网关发送给内网的TCP报文所携带的目的地址信息经过NAT转换后的信息、目的地址信息为上述ISP-A通过网关发送给内网的TCP报文所携带的源地址信息经过NAT转换后的信息、源端口号为上述ISP-A通过网关发送给内网的TCP报文所携带的目的端口号经过NAT转换后的信息、目的端口号为上述ISP-A通过网关发送给内网的TCP报文所携带的源端口号经过NAT转换后的信息,报文协议号为上述ISP-A通过网关发送给内网的TCP报文所携带的报文协议号(即报文协议号不变)。当网关通过第三接口接收到处理后的TCP报文后,根据处理后的TCP报文携带的报文标识信息判断当前是否存在对应的用于转发该处里后的TCP报文的业务表项,在判断出存在满足条件的业务表项时,则确定接收的报文为回程报文,通过判断出的业务表项包含的接口信息对应的接口转发该接收的报文。由于业务表项中的接口信息具体为接收到与回程报文对应的入报文的接口信息,如此,实现了网关通过接收入报文的接口转发与该入报文对应的回程报文的操作。之后,更新业务表项中老化单元的值;在检测出老化单元的当前取值表示该业务表项老化时,删除该业务表项;否则,按照检测策略继续执行该检测操作。
上述对本发明实施例提供的方法进行了详细描述,下面结合具体实施例对本发明提供的装置进行详述。
参见图5,图5为本发明实施例提供的报文处理装置结构图,如图5所示,该装置为包含两个以上网络接口的网络设备,该装置包括:判断单元501、记录单元502和转发单元503。
其中,判断单元501用于接收到报文后,在判断出所述报文是入报文时,发送记录通知给记录单元502;在判断出所述报文是回程报文时,发送转发通知给转发单元503。
记录单元502用于接收所述记录通知,记录接收到该入报文的接口信息.
转发单元503用于接收所述转发通知,通过已记录的接口信息中与该回程报文对应的入报文的接口信息对应的接口转发该回程报文。
优选地,如图5所示,记录单元502可包括:生成子单元5021和存储子单元5022。
其中,生成子单元5021用于接收所述记录通知,生成所述入报文对应的包含接收到该入报文的接口信息的业务表项,其中,该业务表项以所述入报文携带的报文标识信息为关键字;
存储子单元5022用于存储生成子单元5021生成的业务表项。
本发明实施例中,在具体实现利用网络设备接收入报文的接口转发与该入报文对应的回程报文时,可有多种实现形式:
其中一种实现形式为:
生成子单元5021生成与该业务表项相关联的路由表项;其中,该路由表项中包含的出接口信息为接收到该入报文的接口信息;将该生成的路由表项存储到数据库转发表FIB中。优选地,该数据库转发表FIB可存储在生成子单元5021中。
判断单元501判断接收的报文是否为入报文,其中,所述判断为入报文的条件为:接收到报文的接口为预设的入接口和/或接收到的报文携带的报文标识信息满足预设的报文匹配规则;
在判断结果为是时,确定接收的报文为入报文;否则,查找所述与业务表项相关联的路由表项,在查找到时,确定该报文为回程报文;
转发单元503从查找到的路由表项中获取该路由表项中的出接口信息,通过该出接口信息对应的接口发送该回程报文。如此,实现了利用网络设备接收入报文的接口转发与该入报文对应的回程报文的操作。
优选地,本实施例中,该装置还包括:第一更新单元504;
其中,第一更新单元504在生成子单元5021生成业务表项时,和查找到与该业务表项相关联的路由表项时,更新所述业务表项中设置的老化单元的取值;
判断单元501还用于判断所述老化单元的当前取值是否为预设的老化标识值,如果是,则删除该老化单元所在的业务表项以及与该业务表项相关联的路由表项。
另一种实现形式为:
判断单元501判断接收的报文是否为回程报文,其中,所述判断为回程报文的条件为:接收到报文的接口为预设的回程接口和/或存在用于转发接收的报文的业务表项;
在判断结果为是时,确定接收的报文为回程报文;否则,确定该报文为入报文。
优选地,判断单元501在判断出接收的报文不是回程报文时,可进一步断所述报文是否满足预设的入报文匹配规则,如果是,继续执行确定该报文为入报文的操作;否则,执行现有的报文处理流程。
本实施例中的报文标识信息具体可包括源地址信息、目的地址信息、源端口号、目的端口号和报文协议号;这样,所述存在用于转发接收的报文的业务表项具体为:接收到的报文和业务表项之间满足该业务表项包含的报文协议号与接收的报文携带的报文协议号相同,源地址信息与接收的报文携带的目的地址信息相同,目的地址信息与接收的报文携带的源地址信息相同,源端口号与当前接收的报文携带的目的端口号相同,和目的端口号与当前接收的报文携带的源端口号相同中的一项或多项;
所述转发单元从所述存在的业务表项中获取该业务表项中的接口信息,通过该接口信息对应的接口发送该回程报文。如此,实现了利用网络设备接收入报文的接口转发与该入报文对应的回程报文的操作。
优选地,本实施例中,该装置还包括第二更新单元505;
其中,第二更新单元505用于在判断单元501判断出存在用于转发接收的报文的业务表项时,和生成子单元5021生成该业务表项时,更新该业务表项中设置的老化单元的取值;
判断单元501还用于判断所述老化单元的当前取值是否为预设的老化标识值,如果是,则删除该老化单元所在的业务表项。
由以上技术方案可以看出,本发明提供的报文转发方法和装置中,网络设备接收到报文后,如果所述报文是入报文,则记录接收到该入报文的接口信息;如果确定所述报文是回程报文,则通过已记录的接口信息中与该回程报文对应的入报文的接口信息对应的接口转发该回程报文。如此,实现了利用网络设备接收入报文的接口转发与该入报文对应的回程报文的操作。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (16)
1、一种报文处理方法,其特征在于,该方法包括:
步骤A,网络设备接收到入报文时,记录接收到该入报文的接口信息;
步骤B,网络设备接收到回程报文时,通过已记录的接收到该回程报文对应的入报文的接口信息对应的接口发送该回程报文。
2、根据权利要求1所述的方法,其特征在于,所述步骤A中,记录接收到该入报文的接口信息具体包括:
生成所述入报文对应的包含接收到该入报文的接口信息的业务表项,其中,该业务表项以所述入报文携带的报文标识信息为关键字。
3、根据权利要求2所述的方法,其特征在于,所述生成入报文对应的业务表项的操作进一步包括:步骤A0,生成与该业务表项相关联的路由表项;其中,该路由表项中包含的出接口信息为接收到该入报文的接口信息;将该生成的路由表项存储到数据库转发表FIB中;
网络设备接收到报文时,判断接收的报文是否为入报文,其中,所述判断为入报文的条件为:接收到报文的接口为预设的入接口和/或接收到的报文携带的报文标识信息满足预设的报文匹配规则;在判断结果为是时,确定接收的报文为入报文;否则,查找所述与业务表项相关联的路由表项,在查找到时,确定该报文为回程报文;
所述步骤B包括:从查找到的路由表项中获取该路由表项中的出接口信息,通过该出接口信息对应的接口发送该回程报文。
4、根据权利要求3所述的方法,其特征在于,所述业务表项中设置老化单元;当生成业务表项时,和查找到与该业务表项相关联的路由表项时,进一步包括:更新该业务表项中设置的老化单元的取值;
该方法进一步包括:判断所述老化单元的当前取值是否为预设的老化标识值,如果是,则删除该老化单元所在的业务表项以及与该业务表项相关联的路由表项。
5、根据权利要求2所述的方法,其特征在于,网络设备接收到报文时,判断接收的报文是否为回程报文,其中,所述判断为回程报文的条件为:接收到报文的接口为预设的回程接口和/或存在用于转发接收的报文的业务表项;
在判断结果为是时,确定接收的报文为回程报文;否则,确定接收的报文为入报文。
6、根据权利要求5所述的方法,其特征在于,在判断出接收的报文不是回程报文时,进一步判断所述报文是否满足预设的入报文匹配规则,如果是,确定该报文为入报文;否则,执行现有的报文处理流程。
7、根据权利要求6所述的方法,其特征在于,所述报文标识信息包括源地址信息、目的地址信息、源端口号、目的端口号和报文协议号;
所述存在用于转发接收的报文的业务表项具体为:接收到的报文和业务表项之间满足业务表项包含的报文协议号与接收的报文携带的报文协议号相同、源地址信息与接收的报文携带的目的地址信息相同、目的地址信息与接收的报文携带的源地址信息相同、源端口号与当前接收的报文携带的目的端口号相同、和目的端口号与当前接收的报文携带的源端口号相同中的一项或多项;
所述步骤B包括:从存在的业务表项中获取该业务表项中的接口信息,通过该接口信息对应的接口发送该回程报文。
8、根据权利要求5至7任一所述的方法,其特征在于,所述业务表项中设置老化单元;当生成业务表项时,和判断出存在用于转发接收的报文的业务表项时,进一步包括:更新该业务表项中设置的老化单元的取值;
该方法进一步包括:判断所述老化单元的当前取值是否为预设的老化标识值,如果是,则删除该老化单元所在的业务表项。
9、一种报文处理装置,其特征在于,该装置包括:判断单元、记录单元和转发单元;其中,
所述判断单元用于在接收到报文后,在判断出所述报文是入报文时,发送记录通知给所述记录单元;在判断出所述报文是回程报文时,发送转发通知给所述转发单元;
所述记录单元用于接收所述记录通知,记录接收到该入报文的接口信息;
所述转发单元用于接收所述转发通知,通过已记录的接收到该回程报文对应的入报文的接口信息对应的接口转发所述回程报文。
10、根据权利要求9所述的装置,其特征在于,所述记录单元包括:
生成子单元,用于接收所述记录通知,生成所述入报文对应的包含接收到该入报文的接口信息的业务表项,其中,该业务表项以所述入报文携带的报文标识信息为关键字;
存储子单元,用于存储所述生成子单元生成的业务表项。
11、根据权利要求10所述的装置,其特征在于,所述生成子单元生成与该业务表项相关联的路由表项;其中,该路由表项中包含的出接口信息为接收到该入报文的接口信息;将该生成的路由表项存储到数据库转发表FIB中;
所述判断单元判断接收的报文是否为入报文,其中,所述判断为入报文的条件为:接收到报文的接口为预设的入接口和/或接收到的报文携带的报文标识信息满足预设的报文匹配规则;
在判断结果为是时,确定接收的报文为入报文;否则,查找所述与业务表项相关联的路由表项,在查找到时,确定该报文为回程报文;
所述转发单元从查找到的路由表项中获取该路由表项中的出接口信息,通过该出接口信息对应的接口发送该回程报文。
12、根据权利要求11所述的装置,其特征在于,该装置还包括:第一更新单元;其中,
所述第一更新单元在所述生成子单元生成业务表项时,和查找到与该业务表项相关联的路由表项时,更新所述业务表项中设置的老化单元的取值;
所述判断单元还用于判断所述老化单元的当前取值是否为预设的老化标识值,如果是,则删除该老化单元所在的业务表项以及与该业务表项相关联的路由表项。
13、根据权利要求10所述的装置,其特征在于,所述判断单元判断接收的报文是否为回程报文,其中,所述判断为回程报文的条件为:接收到报文的接口为预设的回程接口和/或存在用于转发接收的报文的业务表项;
在判断结果为是时,确定接收的报文为回程报文;否则,确定该报文为入报文。
14、根据权利要求13所述的装置,其特征在于,所述判断单元在判断出接收的报文不是回程报文时,进一步断所述报文是否满足预设的入报文匹配规则,如果是,继续执行确定该报文为入报文的操作;否则,执行现有的报文处理流程。
15、根据权利要求14所述的装置,其特征在于,所述报文标识信息包括源地址信息、目的地址信息、源端口号、目的端口号和报文协议号;
所述存在用于转发接收的报文的业务表项具体为:接收到的报文和业务表项之间满足业务表项包含的报文协议号与接收的报文携带的报文协议号相同,源地址信息与接收的报文携带的目的地址信息相同,目的地址信息与接收的报文携带的源地址信息相同,源端口号与当前接收的报文携带的目的端口号相同,和目的端口号与当前接收的报文携带的源端口号相同中的一项或多项;
所述转发单元从所述存在的业务表项中获取该业务表项中的接口信息,通过该接口信息对应的接口发送该回程报文。
16、根据权利要求13至15任一所述的装置,其特征在于,该装置还包括第二更新单元;其中,
所述第二更新单元用于在所述判断单元判断出存在用于转发接收的报文的业务表项时,和所述生成子单元生成该业务表项时,更新该业务表项中设置的老化单元的取值;
所述判断单元还用于判断所述老化单元的当前取值是否为预设的老化标识值,如果是,则删除该老化单元所在的业务表项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100875163A CN101594301B (zh) | 2009-06-23 | 2009-06-23 | 一种报文处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100875163A CN101594301B (zh) | 2009-06-23 | 2009-06-23 | 一种报文处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101594301A true CN101594301A (zh) | 2009-12-02 |
CN101594301B CN101594301B (zh) | 2012-05-23 |
Family
ID=41408755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100875163A Active CN101594301B (zh) | 2009-06-23 | 2009-06-23 | 一种报文处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101594301B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102510483A (zh) * | 2011-12-13 | 2012-06-20 | 曙光信息产业(北京)有限公司 | 一种基于fpga多视频监控终端控制策略的实现系统和方法 |
CN102724107A (zh) * | 2011-03-31 | 2012-10-10 | 百度在线网络技术(北京)有限公司 | 用于转发报文及选择报文转发装置的方法、装置和设备 |
CN105991442A (zh) * | 2015-04-30 | 2016-10-05 | 杭州迪普科技有限公司 | 报文转发方法及装置 |
CN107743122A (zh) * | 2017-09-29 | 2018-02-27 | 北京知道创宇信息技术有限公司 | 一种数据发送方法、数据接收方法及数据通信系统 |
CN108989206A (zh) * | 2018-08-22 | 2018-12-11 | 迈普通信技术股份有限公司 | 报文转发方法及装置 |
CN111953770A (zh) * | 2020-08-07 | 2020-11-17 | 平安科技(深圳)有限公司 | 一种路由转发方法、装置、路由设备及可读存储介质 |
CN117155839A (zh) * | 2023-08-14 | 2023-12-01 | 青岛港国际股份有限公司 | 一种分布式mec多路径回程路由确定方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1323524C (zh) * | 2003-04-25 | 2007-06-27 | 华为技术有限公司 | 数据在虚拟局域网中定向传播的方法 |
CN100452746C (zh) * | 2007-03-12 | 2009-01-14 | 杭州华三通信技术有限公司 | 一种确定出接口的方法及多接入宽带路由器 |
-
2009
- 2009-06-23 CN CN2009100875163A patent/CN101594301B/zh active Active
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102724107A (zh) * | 2011-03-31 | 2012-10-10 | 百度在线网络技术(北京)有限公司 | 用于转发报文及选择报文转发装置的方法、装置和设备 |
CN102510483A (zh) * | 2011-12-13 | 2012-06-20 | 曙光信息产业(北京)有限公司 | 一种基于fpga多视频监控终端控制策略的实现系统和方法 |
CN102510483B (zh) * | 2011-12-13 | 2014-07-23 | 曙光信息产业(北京)有限公司 | 一种基于fpga多视频监控终端控制策略的实现系统和方法 |
CN105991442A (zh) * | 2015-04-30 | 2016-10-05 | 杭州迪普科技有限公司 | 报文转发方法及装置 |
CN105991442B (zh) * | 2015-04-30 | 2019-10-11 | 杭州迪普科技股份有限公司 | 报文转发方法及装置 |
CN107743122A (zh) * | 2017-09-29 | 2018-02-27 | 北京知道创宇信息技术有限公司 | 一种数据发送方法、数据接收方法及数据通信系统 |
CN108989206A (zh) * | 2018-08-22 | 2018-12-11 | 迈普通信技术股份有限公司 | 报文转发方法及装置 |
CN108989206B (zh) * | 2018-08-22 | 2021-10-15 | 迈普通信技术股份有限公司 | 报文转发方法及装置 |
CN111953770A (zh) * | 2020-08-07 | 2020-11-17 | 平安科技(深圳)有限公司 | 一种路由转发方法、装置、路由设备及可读存储介质 |
CN111953770B (zh) * | 2020-08-07 | 2022-11-25 | 平安科技(深圳)有限公司 | 一种路由转发方法、装置、路由设备及可读存储介质 |
CN117155839A (zh) * | 2023-08-14 | 2023-12-01 | 青岛港国际股份有限公司 | 一种分布式mec多路径回程路由确定方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101594301B (zh) | 2012-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101594301B (zh) | 一种报文处理方法和装置 | |
US9374304B2 (en) | End-to end route tracing over a named-data network | |
EP2963873B1 (en) | System and method for managing devices over a content centric network | |
CN103067534B (zh) | 一种NAT实现系统、方法及Openflow交换机 | |
US6088720A (en) | Self-cleaning and forwarding feature for electronic mailboxes | |
US20170012880A1 (en) | Multicast message forwarding method and device | |
CN105939297B (zh) | 一种tcp报文重组方法和装置 | |
CN110636151B (zh) | 一种报文处理方法、装置、防火墙及存储介质 | |
CN109218111B (zh) | 一种处理报文的方法和转发器 | |
CN110635933A (zh) | 用于管理sdn的网络的装置、控制方法及记录介质 | |
WO2018036254A1 (zh) | 报文转发方法及装置 | |
EP3110081A1 (en) | Method and apparatus for controlling service chain of service flow | |
CN107241378B (zh) | 跨异构网络的统一数据建网的设备和方法以及存储介质 | |
CN103166846A (zh) | 一种报文转发方法和设备 | |
EP3226518A1 (en) | Content delivery across heterogeneous networks | |
CN110545243B (zh) | 一种icn报文转发方法 | |
CN103139041A (zh) | 信息过滤的方法、转发信息的处理方法、装置及系统 | |
EP2472785B1 (en) | Service linkage control system and method | |
CN107070797B (zh) | 一种报文转发的方法及系统 | |
KR100907136B1 (ko) | 통신 장치, 루팅 방법 및 프로그램을 기록한 기록 매체 | |
JP2015164295A (ja) | 情報伝送システム、情報通信装置、情報伝送装置、及びプログラム | |
JP2011130358A (ja) | 電子メールシステム及び電子メールシステムの迷惑メール判別方法 | |
JP4351368B2 (ja) | データ転送方法及びそれを用いた通信装置 | |
CN108521336B (zh) | 一种用于控制路由组网ip地址冲突的方法及装置 | |
CN106453080B (zh) | 一种链路状态清除报文的溯源方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |