本發(fā)明涉及網(wǎng)絡(luò)通信
技術(shù)領(lǐng)域:
,尤其涉及一種報文轉(zhuǎn)發(fā)方法及裝置。
背景技術(shù):
:分布式網(wǎng)關(guān)設(shè)備(以下簡稱網(wǎng)關(guān)設(shè)備)通常由接口板和業(yè)務(wù)板組成。接口板接收內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文(可稱為正向報文),并基于報文的源、目的地址進(jìn)行哈希,根據(jù)哈希結(jié)果選擇業(yè)務(wù)板對報文進(jìn)行NAT(NetworkAddressTranslation,網(wǎng)絡(luò)地址轉(zhuǎn)換)轉(zhuǎn)換,然后,再由接口板將NAT轉(zhuǎn)換后的報文發(fā)往外網(wǎng)。當(dāng)接口板接收到外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文(可稱為反向報文)時,基于報文的源、目的地址進(jìn)行哈希,根據(jù)哈希結(jié)果選擇處理該報文的業(yè)務(wù)板。由于外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文的目的地址為NAT轉(zhuǎn)換后的地址,因此,哈希結(jié)果很有可能與內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文的哈希結(jié)果不同,導(dǎo)致外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文無法上送到處理內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文的業(yè)務(wù)板上。為了解決該問題,目前普遍采用板間透傳的方法,將外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文透傳給處理內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文的業(yè)務(wù)板上,但是,該處理方法使得業(yè)務(wù)板間需要透傳的報文過多,處理效率較低。技術(shù)實現(xiàn)要素:本發(fā)明的目的在于提供一種報文轉(zhuǎn)發(fā)方法及裝置,用以減少板間透傳報文的數(shù)量。為實現(xiàn)上述發(fā)明目的,本發(fā)明提供了如下技術(shù)方案:本發(fā)明提供一種報文轉(zhuǎn)發(fā)方法,應(yīng)用于網(wǎng)關(guān)設(shè)備包括的接口板,所述網(wǎng)關(guān)設(shè)備還包括業(yè)務(wù)板,所述方法包括:所述網(wǎng)關(guān)設(shè)備的接口板接收報文;若所述報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文,則所述接口板查找源地址信息與所述報文的源地址信息匹配的引流表項;若所述報文為外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文,則所述接口板查找替換后的源地址信息與所述報文的目的地址信息匹配的引流表項;所述引流表項包括:源地址信息和替換后的源地址信息;所述引流表項保存于所述網(wǎng)關(guān)設(shè)備的所有接口板上;所述接口板利用所述引流表項中的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果確定處理所述報文的業(yè)務(wù)板,并將所述報文發(fā)送至確定的業(yè)務(wù)板。本發(fā)明還提供一種報文轉(zhuǎn)發(fā)裝置,所述裝置應(yīng)用于網(wǎng)關(guān)設(shè)備包括的接口板,所述網(wǎng)關(guān)設(shè)備還包括業(yè)務(wù)板;所述裝置包括:接收單元,用于接收報文;查找單元,用于若所述報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文,則查找源地址信息與所述報文的源地址信息匹配的引流表項;若所述報文為外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文,則查找替換后的源地址信息與所述報文的目的地址信息匹配的引流表項;所述引流表項包括:源地址信息和替換后的源地址信息;所述引流表項保存于所述網(wǎng)關(guān)設(shè)備的所有接口板上;確定單元,用于利用所述引流表項中的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果確定處理所述報文的業(yè)務(wù)板,并將所述報文發(fā)送至確定的業(yè)務(wù)板。由以上描述可以看出,由于引流表項中包括源地址信息和替換后的源地址信息,因此,當(dāng)接口板基于內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文的源地址信息匹配引流表項中的源地址信息,基于外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文的目的地址信息匹配引流表項中的替換后的源地址信息時,可匹配到同一引流表項,基于同一引流表項的源地址信息得到的哈希結(jié)果相同,基于相同哈希結(jié)果選擇的業(yè)務(wù)板相同,因此,保證了內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文和外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文發(fā)送到同一塊業(yè)務(wù)板處理。整個過程中,無需業(yè)務(wù)板間報文透傳,提高了處理效率。附圖說明圖1是本發(fā)明實施例示出的一種報文轉(zhuǎn)發(fā)方法流程圖;圖2是本發(fā)明實施例示出的一種組網(wǎng)示意圖;圖3是本發(fā)明實施例示出的網(wǎng)關(guān)設(shè)備包括的接口板的結(jié)構(gòu)示意圖;圖4是本發(fā)明實施例示出的一種報文轉(zhuǎn)發(fā)裝置的結(jié)構(gòu)示意圖。具體實施方式這里將詳細(xì)地對示例性實施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本發(fā)明相一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。在本發(fā)明使用的術(shù)語是僅僅出于描述特定實施例的目的,而非旨在限制本發(fā)明。在本發(fā)明和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”是指并包含一個或多個相關(guān)聯(lián)的列出項目的任何或所有可能組合。應(yīng)當(dāng)理解,盡管在本發(fā)明可能采用術(shù)語第一、第二、第三等來描述各種信息,但這些信息不應(yīng)限于這些術(shù)語。這些術(shù)語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離本發(fā)明范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時”或“當(dāng)……時”或“響應(yīng)于確定”。分布式網(wǎng)關(guān)設(shè)備通常由接口板和業(yè)務(wù)板組成。屬于同一會話的內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文和外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文必須引流到同一塊業(yè)務(wù)板處理。本發(fā)明實施例提出一種報文轉(zhuǎn)發(fā)方法,該方法由接口板在接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文時,基于報文的源地址信息匹配引流表項中的源地址信息;在接收到外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文時,基于報文的目的地址信息匹配引流表項中的替換后的源地址信息,其中,該引流表項中包括源地址信息和替換后的源地址信息,接口板基于匹配到的引流表項的源地址信息進(jìn)行哈希,再根據(jù)哈希結(jié)果選擇處理報文的業(yè)務(wù)板,并將報文轉(zhuǎn)發(fā)至確定的業(yè)務(wù)板。參見圖1,為本發(fā)明報文轉(zhuǎn)發(fā)方法的一個實施例流程圖,該實施例對報文轉(zhuǎn)發(fā)過程進(jìn)行描述。步驟101,所述網(wǎng)關(guān)設(shè)備的接口板接收報文。步驟102,若所述報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文,則所述接口板查找源地址信息與所述報文的源地址信息匹配的引流表項。步驟103,若所述報文為外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文,則所述接口板查找替換后的源地址信息與所述報文的目的地址信息匹配的引流表項。參見表1,為引流表項示例。源地址信息替換后的源地址信息196.1.1.6:1000202.1.1.10:1234表1該引流表項包括:源地址信息和替換后的源地址信息,其中,替換后的源地址信息為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文的源地址信息經(jīng)NAT(NetworkAddressTranslation,網(wǎng)絡(luò)地址轉(zhuǎn)換)轉(zhuǎn)換后的地址信息。由表1可知,內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文的源地址信息為196.1.1.6:1000(本發(fā)明中地址信息采用IP地址:端口號的形式表示),替換后的源地址信息為202.1.1.10:1234。當(dāng)接口板接收到源地址信息為196.1.1.6:1000的內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文時,匹配到表1所示引流表項;當(dāng)接口板接收到目的地址為202.1.1.10:1234的外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文時,同樣匹配到表1所示引流表項,即保證屬于同一會話的內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文和外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文匹配到同一引流表項。需要補充說明的是,該引流表項保存于網(wǎng)關(guān)設(shè)備的所有接口板上,以保證既使通過不同的接口板接收到報文都可以匹配到引流表項。步驟104,所述接口板利用所述引流表項中的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果確定處理所述報文的業(yè)務(wù)板,并將所述報文發(fā)送至確定的業(yè)務(wù)板。由于內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文和外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文可以匹配到同一引流表項,因此,基于同一引流表項的源地址信息得到的哈希結(jié)果相同,選擇的業(yè)務(wù)板相同,保證了內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文和外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文引流到同一業(yè)務(wù)板處理。此外,本發(fā)明的引流表項中還包含目的地址信息和表項ID,參見表2,為包含目的地址信息和表項ID的引流表項。表項ID源地址信息替換后的源地址信息目的地址信息1196.1.1.6:1000202.1.1.10:123410.1.10.6:80表2當(dāng)步驟102中接口板接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文時,查找源地址信息與報文的源地址信息匹配、目的地址信息與報文的目的地址信息匹配的引流表項。步驟104根據(jù)匹配到的引流表項的源地址信息進(jìn)行哈希,并根據(jù)哈希結(jié)果確定處理報文的業(yè)務(wù)板,具體可通過如下方式實現(xiàn):在一種實施方式中,接口板利用匹配到的引流表項中的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果與該引流表項中的表項ID及網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理報文的業(yè)務(wù)板。例如,可通過公式(1)表示:M=(H1+I)%N公式(1)其中,H1為基于源地址信息進(jìn)行哈希的哈希結(jié)果;I為表項ID;N為業(yè)務(wù)板數(shù)量;%為取余運算符;M為最終計算結(jié)果。本發(fā)明基于預(yù)設(shè)的M與業(yè)務(wù)板的對應(yīng)關(guān)系,確定處理報文的業(yè)務(wù)板,例如,預(yù)設(shè)M與業(yè)務(wù)板的對應(yīng)關(guān)系為:M=0時,將報文發(fā)送給業(yè)務(wù)板1處理。在另一種實施方式中,接口板利用匹配到的引流表項中的源地址信息和表項ID進(jìn)行哈希,再根據(jù)哈希結(jié)果及網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理報文的業(yè)務(wù)板。例如,可通過公式(2)表示:M=H2%N公式(2)其中,H2為基于源地址信息和表項ID進(jìn)行哈希的哈希結(jié)果;N為業(yè)務(wù)板數(shù)量;%為取余運算符;M為最終計算結(jié)果。同理,基于預(yù)設(shè)的M與業(yè)務(wù)板的對應(yīng)關(guān)系,確定處理報文的業(yè)務(wù)板。由于基于報文的源地址信息和目的地址信息匹配引流表項,相同源地址信息的報文可能匹配到不同的引流表項,因此,基于不同引流表項的表項ID得到的最終結(jié)果不同,可將相同源地址信息的內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文引流到不同的業(yè)務(wù)板處理,從而起到負(fù)載分擔(dān)的作用。當(dāng)網(wǎng)關(guān)設(shè)備的業(yè)務(wù)板異常(例如,故障或被拔出)時,接口板接收主控板發(fā)送的業(yè)務(wù)板異常通告,確定發(fā)生異常的業(yè)務(wù)板,同時,進(jìn)行如下處理:在一種實施方式中,當(dāng)接口板接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文,且根據(jù)哈希結(jié)果確定處理該報文的業(yè)務(wù)板為主控板通告的異常業(yè)務(wù)板時,修改該報文匹配的引流表項的表項ID,根據(jù)修改后的引流表項中的源地址信息和表項ID以及網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理報文的業(yè)務(wù)板。如果重新確定的業(yè)務(wù)板正常,則將報文發(fā)送至重新確定的業(yè)務(wù)板處理,同時,將修改后的引流表項同步給其它接口板。在另一種實施方式中,當(dāng)接口板根據(jù)哈希結(jié)果確定處理該報文的業(yè)務(wù)板為主控板通告的異常業(yè)務(wù)板時,接口板根據(jù)預(yù)設(shè)的哈希補償策略更新哈希結(jié)果,例如,在基于引流表項得到的哈希結(jié)果基礎(chǔ)上加一或減一得到新的哈希結(jié)果,根據(jù)更新后的哈希結(jié)果重新確定處理報文的業(yè)務(wù)板,并將報文發(fā)送至重新確定的業(yè)務(wù)板。此外,若通過步驟101接收的報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文且本地不存在源地址信息與該報文的源地址信息匹配的引流表項,則接口板建立第一引流表項,其中,該第一引流表項包括源地址信息,且該第一引流表項包括的源地址信息為報文的源地址信息。接口板利用報文的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果確定處理該報文的第一業(yè)務(wù)板,并將報文發(fā)送至第一業(yè)務(wù)板。第一業(yè)務(wù)板對報文進(jìn)行NAT轉(zhuǎn)換,并將報文的轉(zhuǎn)換后的源地址信息發(fā)送至接口板。接口板將報文的轉(zhuǎn)換后的源地址信息作為第一引流表項的替換后的源地址信息添加至第一引流表項,并將添加了替換后的源地址信息的第一引流表項同步至網(wǎng)關(guān)設(shè)備的其它接口板。在一種較優(yōu)的實施方式中,接口板可基于報文的源地址信息和目的地址信息匹配引流表項,若接收的報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文且本地不存在源地址信息與該報文的源地址信息匹配、目的地址信息與該報文的目的地址信息匹配的引流表項,則接口板建立第一引流表項,該第一引流表項包括源地址信息、目的地址信息以及為該第一引流表項分配的表項ID,其中,該第一引流表項包括的目的地址信息為報文的目的地址信息。當(dāng)接口板利用報文的源地址信息進(jìn)行哈希,并根據(jù)哈希結(jié)果確定處理報文的第一業(yè)務(wù)板時,具體可通過如下方式實現(xiàn):接口板利用報文的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果與為第一引流表項分配的表項ID及網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理報文的第一業(yè)務(wù)板;或者,接口板利用報文的源地址信息和為第一引流表項分配的表項ID進(jìn)行哈希,然后,根據(jù)哈希結(jié)果及網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理報文的第一業(yè)務(wù)板。從上述描述可以看出,本發(fā)明利用包含源地址信息和替換后的源地址信息的引流表項,使內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文和外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文匹配到同一引流表項,進(jìn)而基于該匹配的引流表項將內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文和外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文引流到同一塊業(yè)務(wù)板處理,避免業(yè)務(wù)板間報文透傳,提高處理效率?,F(xiàn)以圖2所示組網(wǎng)為例,詳細(xì)介紹報文轉(zhuǎn)發(fā)過程。圖2所示網(wǎng)關(guān)設(shè)備包括兩塊接口板(接口板1和接口板2)和三塊業(yè)務(wù)板(業(yè)務(wù)板1~業(yè)務(wù)板3);PC1為內(nèi)網(wǎng)設(shè)備;PC2、PC3為外網(wǎng)設(shè)備。PC1的IP地址為100.1.1.1;PC2的IP地址為20.1.1.100;PC3的IP地址為30.1.1.100。假設(shè),當(dāng)前接口板1和接口板2中均存在表3所示引流表。表項ID源地址信息替換后的源地址信息目的地址信息1100.1.1.1:400018.1.1.1:500020.1.1.100:80表3若接口板1接收到PC1發(fā)往PC2的報文(記為packet1),在表3中查找源地址信息與packet1的源地址信息100.1.1.1:4000相同且目的地址信息與packet1的目的地址信息20.1.1.100:80相同的引流表項,再根據(jù)查找到的引流表項(即表項ID為1的引流表項)的源地址信息100.1.1.1:4000進(jìn)行哈希,假設(shè),哈希結(jié)果為10,加上表項ID1,然后,對業(yè)務(wù)板數(shù)量3取余,得到最終結(jié)果M=(10+1)%3=2,根據(jù)M=2將packet1引流到業(yè)務(wù)板3處理(本發(fā)明預(yù)設(shè)M與業(yè)務(wù)板的引流關(guān)系:M為0,引流到業(yè)務(wù)板1;M為1,引流到業(yè)務(wù)板2;M為2,引流到業(yè)務(wù)板3)。若接口板2接收到PC2發(fā)往PC1的報文(記為packet2),在表3中查找目的地址信息與packet2的源地址信息20.1.1.100:80相同且替換后的源地址信息與packet2的目的地址信息18.1.1.1:5000相同的引流表項,再根據(jù)查找到的引流表項(即表項ID為1的引流表項)的源地址信息100.1.1.1:4000進(jìn)行哈希,哈希結(jié)果為10,加上表項ID1,然后,對業(yè)務(wù)板數(shù)量3取余,得到最終結(jié)果M=2,根據(jù)M=2將packet1引流到業(yè)務(wù)板3處理。若接口板1接收到PC1發(fā)往PC3的報文(記為packet3),在表3中查找源地址信息與packet3的源地址信息100.1.1.1:4000相同且目的地址信息與packet3的目的地址信息30.1.1.100:80相同的引流表項,基于表3可知,表3中不存在源地址信息與packet3的源地址信息100.1.1.1:4000相同且目的地址信息與packet3的目的地址信息30.1.1.100:80相同的引流表項,則新建引流表項,參見表4。表項ID源地址信息替換后的源地址信息目的地址信息1100.1.1.1:400018.1.1.1:500020.1.1.100:802100.1.1.1:4000---30.1.1.100:80表4表4中第二條引流表項為新建引流表項,該引流表項的表項ID為2?;趐acket3的源地址信息100.1.1.1:4000進(jìn)行哈希,哈希結(jié)果為10,加上表項ID2,然后,對業(yè)務(wù)板數(shù)量3取余,得到最終結(jié)果M=(10+2)%3=0,將packet3引流到業(yè)務(wù)板1處理。業(yè)務(wù)板1對packet3進(jìn)行NAT轉(zhuǎn)換,轉(zhuǎn)換后的源地址信息為18.1.1.10:5000,將該轉(zhuǎn)換后的源地址信息18.1.1.10:5000發(fā)送給接口板1。接口板1將18.1.1.10:5000作為表4中第二條引流表項的替換后的源地址信息添加至第二引流表項,并將添加了替換后的源地址信息的第二條引流表項同步至接口板2。同步后,接口板1和接口板2中的引流表如表5所示。表項ID源地址信息替換后的源地址信息目的地址信息1100.1.1.1:400018.1.1.1:500020.1.1.100:802100.1.1.1:400018.1.1.10:500030.1.1.100:80表5若接口板2接收到PC3發(fā)往PC1的報文(記為packet4),在表5中查找目的地址信息與packet4的源地址信息30.1.1.100:80相同且替換后的源地址信息與packet4的目的地址信息18.1.1.10:5000相同的引流表項,根據(jù)查找到的引流表項(即表項ID為2的引流表項)中的源地址信息100.1.1.1:4000進(jìn)行哈希,哈希結(jié)果為10,加上表項ID2,然后,對業(yè)務(wù)板數(shù)量3取余,得到最終結(jié)果M=(10+2)%3=0,將packet4引流到業(yè)務(wù)板1處理。若業(yè)務(wù)板3被拔出,當(dāng)接口板1接收到PC1發(fā)往PC2的packet1,在表5中查找源地址信息與packet1的源地址信息100.1.1.1:4000相同且目的地址信息與packet1的目的地址信息20.1.1.100:80相同的引流表項,再根據(jù)查找到的引流表項(即表項ID為1的引流表項)的源地址信息100.1.1.1:4000進(jìn)行哈希,哈希結(jié)果為10,加上表項ID1,然后,對業(yè)務(wù)板數(shù)量3取余,得到最終結(jié)果M=(10+1)%3=2,根據(jù)M=2確定將packet1引流到業(yè)務(wù)板3處理。但是,由于業(yè)務(wù)板3已被拔出,不能使用,因此,接口板1更新表5中該查找到的引流表項的表項ID為3,再基于源地址信息100.1.1.1:4000進(jìn)行哈希,哈希結(jié)果為10,加上表項ID3,然后,對業(yè)務(wù)板數(shù)量3取余,得到最終結(jié)果M=(10+3)%3=1,根據(jù)M=1將packet1引流到業(yè)務(wù)板2處理,同時,將該更新表項ID后的引流表項同步至接口板2。同步后,接口板1和接口板2中的引流表如表6所示。表6若接口板2再接收到PC2發(fā)往PC1的報文packet2時,在表6中查找目的地址信息與packet2的源地址信息20.1.1.100:80相同且替換后的源地址信息與packet2的目的地址信息18.1.1.1:5000相同的引流表項,根據(jù)查找到的引流表項(即表項ID為3的引流表項)中的源地址信息100.1.1.1:4000進(jìn)行哈希,哈希結(jié)果為10,加上表項ID3,然后,對業(yè)務(wù)板數(shù)量3取余,得到最終結(jié)果M=(10+3)%3=1,根據(jù)M=1將packet2引流到業(yè)務(wù)板2處理。通過本例可知,該報文轉(zhuǎn)發(fā)方法,可將正反向報文發(fā)送至同一業(yè)務(wù)板進(jìn)行處理,并且可將相同源地址信息的正向報文引流到不同的業(yè)務(wù)板處理,從而起到負(fù)載分擔(dān)的作用。與前述報文轉(zhuǎn)發(fā)方法的實施例相對應(yīng),本發(fā)明還提供了報文轉(zhuǎn)發(fā)裝置的實施例。本發(fā)明報文轉(zhuǎn)發(fā)裝置的實施例可以應(yīng)用在網(wǎng)關(guān)設(shè)備包括的接口板上。裝置實施例可以通過軟件實現(xiàn),也可以通過硬件或者軟硬件結(jié)合的方式實現(xiàn)。以軟件實現(xiàn)為例,作為一個邏輯意義上的裝置,是通過其所在接口板的處理器運行存儲器中對應(yīng)的計算機程序指令形成的。從硬件層面而言,如圖3所示,為本發(fā)明報文轉(zhuǎn)發(fā)裝置所在接口板的一種硬件結(jié)構(gòu)圖,除了圖3所示的處理器以及非易失性存儲器之外,實施例中裝置所在的接口板通常根據(jù)該接口板的實際功能,還可以包括其他硬件,對此不再贅述。請參考圖4,為本發(fā)明一個實施例中的報文轉(zhuǎn)發(fā)裝置的結(jié)構(gòu)示意圖。該報文轉(zhuǎn)發(fā)裝置包括接收單元401、查找單元402以及確定單元403,其中:接收單元401,用于接收報文;查找單元402,用于若所述報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文,則查找源地址信息與所述報文的源地址信息匹配的引流表項;若所述報文為外網(wǎng)發(fā)往內(nèi)網(wǎng)的報文,則查找替換后的源地址信息與所述報文的目的地址信息匹配的引流表項;所述引流表項包括:源地址信息和替換后的源地址信息;所述引流表項保存于所述網(wǎng)關(guān)設(shè)備的所有接口板上;確定單元403,用于利用所述引流表項中的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果確定處理所述報文的業(yè)務(wù)板,并將所述報文發(fā)送至確定的業(yè)務(wù)板。進(jìn)一步地,所述裝置還包括:建立單元,用于若所述報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文且本地不存在源地址信息與所述報文的源地址信息匹配的引流表項,則建立第一引流表項;所述第一引流表項包括源地址信息,所述第一引流表項包括的源地址信息為所述報文的源地址信息;所述確定單元403,還用于利用所述報文的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果確定處理所述報文的第一業(yè)務(wù)板,并將所述報文發(fā)送至所述第一業(yè)務(wù)板,以使所述第一業(yè)務(wù)板,用于對所述報文進(jìn)行網(wǎng)絡(luò)地址轉(zhuǎn)換NAT轉(zhuǎn)換,并將所述報文的轉(zhuǎn)換后的源地址信息發(fā)送至所述接口板;添加單元,用于將所述報文的轉(zhuǎn)換后的源地址信息作為所述第一引流表項的替換后的源地址信息添加至第一引流表項,并將添加了替換后的源地址信息的第一引流表項同步至所述網(wǎng)關(guān)設(shè)備的其它接口板。進(jìn)一步地,所述建立單元,具體用于若所述報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文且本地不存在源地址信息與所述報文的源地址信息匹配、目的地址信息與所述報文的目的地址信息匹配的引流表項,則所述接口板建立第一引流表項;所述第一引流表項包括源地址信息、目的地址信息以及為所述第一引流表項分配的表項ID,所述第一引流表項包括的目的地址信息為所述報文的目的地址信息;所述確定單元403,具體用于利用所述報文的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果與為所述第一引流表項分配的表項ID及所述網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理所述報文的第一業(yè)務(wù)板;或者,利用所述報文的源地址信息和為所述第一引流表項分配的表項ID進(jìn)行哈希,根據(jù)哈希結(jié)果及所述網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理所述報文的第一業(yè)務(wù)板。進(jìn)一步地,所述查找單元402,具體用于若所述報文為內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文,則所述接口板查找源地址信息與所述報文的源地址信息匹配、目的地址信息與所述報文的目的地址信息匹配的引流表項;所述確定單元403,具體用于利用所述引流表項中的源地址信息進(jìn)行哈希,根據(jù)哈希結(jié)果與所述引流表項中的表項ID及所述網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理所述報文的業(yè)務(wù)板;或者,利用所述引流表項的源地址信息和表項ID進(jìn)行哈希,根據(jù)哈希結(jié)果及所述網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理所述報文的業(yè)務(wù)板。進(jìn)一步地,所述裝置還包括:異常處理單元(圖4中未示出),用于當(dāng)業(yè)務(wù)板異常時,接收主控板發(fā)送的業(yè)務(wù)板異常通告;當(dāng)接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報文,且根據(jù)哈希結(jié)果確定處理該報文的業(yè)務(wù)板為主控板通告的異常業(yè)務(wù)板時,修改所述報文匹配的引流表項的表項ID,將修改后的引流表項同步給其它接口板;所述確定單元403,用于根據(jù)修改后的引流表項中的源地址信息和表項ID以及所述網(wǎng)關(guān)設(shè)備中業(yè)務(wù)板的數(shù)量,確定處理所述報文的業(yè)務(wù)板。進(jìn)一步地,所述裝置還包括:異常處理單元(圖4中未示出),用于當(dāng)業(yè)務(wù)板異常時,接收主控板發(fā)送的業(yè)務(wù)板異常通告;當(dāng)根據(jù)哈希結(jié)果確定處理所述報文的業(yè)務(wù)板為主控板通告的異常業(yè)務(wù)板時,根據(jù)預(yù)設(shè)的哈希補償策略更新哈希結(jié)果;所述確定單元403,用于根據(jù)更新后的哈希結(jié)果重新確定處理所述報文的業(yè)務(wù)板,并將所述報文發(fā)送至重新確定的業(yè)務(wù)板。上述裝置中各個單元的功能和作用的實現(xiàn)過程具體詳見上述方法中對應(yīng)步驟的實現(xiàn)過程,在此不再贅述。對于裝置實施例而言,由于其基本對應(yīng)于方法實施例,所以相關(guān)之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上。可以根據(jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本發(fā)明方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。當(dāng)前第1頁1 2 3