消息處理方法及網(wǎng)絡設備的制作方法
【專利摘要】本發(fā)明提供一種消息處理方法及網(wǎng)絡設備。方法包括:根據(jù)預設的消息匹配項對第一消息進行消息匹配;如果消息匹配的結果為匹配中順序調(diào)整策略,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息;對所述第二消息進行處理。采用本發(fā)明技術方案可以解決不同網(wǎng)絡設備之間消息字節(jié)順序不一致的問題,提高通信系統(tǒng)的運行效率。
【專利說明】消息處理方法及網(wǎng)絡設備
【技術領域】
[0001]本發(fā)明涉及通信技術,尤其涉及一種消息處理方法及網(wǎng)絡設備。
【背景技術】
[0002]在無線通信系統(tǒng)中,存在多種網(wǎng)絡設備,例如基站控制器(Base StationController,簡稱為BSC)、移動交換中心(Mobile Switching Centre,簡稱為MSC)和基站收發(fā)臺(Base Transceiver Station,簡稱為BTS)等。各網(wǎng)絡設備通過協(xié)議規(guī)定的標準消息進行通信。然而,由于不同設備廠商對協(xié)議理解可能存在不一致,或者協(xié)議有不完善的地方,或者設備廠商對標準消息實現(xiàn)錯誤,或者不同網(wǎng)絡設備使用的模式等,都會導致不同網(wǎng)絡設備所使用的消息不一致。
[0003]為了實現(xiàn)不同網(wǎng)絡設備之間消息的兼容,需要對消息進行修改和丟棄處理?,F(xiàn)有技術通過匹配項對消息進行修改和丟棄,其中,在根據(jù)匹配項對消息進行修改時只能對消息的內(nèi)容進行修改。但是,在實際應用中,網(wǎng)絡設備的中央處理器(Central ProcessingUnit,簡稱為CPU)存在大端和小端兩個模式,對多字節(jié)信元的編解碼處理也就存在兩個模式,對于數(shù)字0x1234,CPU模式為大端時,在內(nèi)存中的順序從低到高為0x12,0x34 ;CPU模式為小端時,在內(nèi)存中的順序從低到高為0x34,0x12。由此可見,不同網(wǎng)絡設備使用的消息除了內(nèi)容會不一致之外,字節(jié)順序也可能會發(fā)生錯誤,而現(xiàn)有通過匹配項對消息進行修改和丟棄的處理方式無法解決該問題,這將影響通信系統(tǒng)的運行效率。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例提供一種消息處理方法及網(wǎng)絡設備,用以解決不同網(wǎng)絡設備之間消息字節(jié)順序不一致的問題,提高通信系統(tǒng)的運行效率。
[0005]第一方面提供一種消息處理方法,包括:
[0006]根據(jù)預設的消息匹配項對第一消息進行消息匹配;
[0007]如果消息匹配的結果為匹配中順序調(diào)整策略,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息;
[0008]對所述第二消息進行處理。
[0009]在第一方面的第一種可能的實現(xiàn)方式中,所述根據(jù)預設的消息匹配項對第一消息進行消息匹配包括:根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容;判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配;如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略;如果判斷結果為否,確定所述第一消息未匹配中所述消息匹配項對應的處理策略。
[0010]結合第一方面或第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,所述順序調(diào)整策略包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。
[0011]結合第一方面的第二種可能的實現(xiàn)方式,在第一方面的第三種可能的實現(xiàn)方式中,所述根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息包括:如果所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié),根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息;如果所述順序調(diào)整策略中的調(diào)整單位類型指示為比特,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
[0012]結合第一方面或第一方面的第一種可能的實現(xiàn)方式或第一方面的第二種可能的實現(xiàn)方式或第一方面的第三種可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式中,所述對所述第二消息進行處理包括:將所述第二消息發(fā)送出去。
[0013]結合第一方面或第一方面的第一種可能的實現(xiàn)方式或第一方面的第二種可能的實現(xiàn)方式或第一方面的第三種可能的實現(xiàn)方式,在第一方面的第五種可能的實現(xiàn)方式中,所述根據(jù)預設的消息匹配項對第一消息進行消息匹配之前包括:接收所述第一消息。
[0014]第二方面提供一種網(wǎng)絡設備,包括:
[0015]匹配模塊,用于根據(jù)預設的消息匹配項對第一消息進行消息匹配;
[0016]順序調(diào)整模塊,用于在所述匹配模塊進行消息匹配的結果為匹配中順序調(diào)整策略時,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息;
[0017]處理模塊,用于對所述第二消息進行處理。
[0018]在第二方面的第一種可能的實現(xiàn)方式中,所述匹配模塊具體用于根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容,判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配,如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略,如果判斷結果為否,確定所述第一消息未匹配中所述消息匹配項對應的處理策略。
[0019]結合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,所述順序調(diào)整策略包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。
[0020]結合第二方面的第二種可能的實現(xiàn)方式,在第二方面的第三種可能的實現(xiàn)方式中,所述順序調(diào)整模塊具體用于在所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié)時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息,或者在所述順序調(diào)整策略中的調(diào)整單位類型指示為比特時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
[0021]結合第二方面或第二方面的第一種可能的實現(xiàn)方式或第二方面的第二種可能的實現(xiàn)方式或第二方面的第三種可能的實現(xiàn)方式,在第二方面的第四種可能的實現(xiàn)方式中,所述處理模塊具體用于將所述第二消息發(fā)送出去。
[0022]結合第二方面或第二方面的第一種可能的實現(xiàn)方式或第二方面的第二種可能的實現(xiàn)方式或第二方面的第三種可能的實現(xiàn)方式,在第二方面的第五種可能的實現(xiàn)方式中,所述網(wǎng)絡設備還包括:接收模塊,用于在所述匹配模塊對所述第一消息進行消息匹配之前,接收所述第一消息。
[0023]第三方面提供一種網(wǎng)絡設備,包括:
[0024]存儲器,用于存放程序;
[0025]處理器,用于執(zhí)行所述程序,以用于:根據(jù)預設的消息匹配項對第一消息進行消息匹配,如果消息匹配的結果為匹配中順序調(diào)整策略,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息,并對所述第二消息進行處理。
[0026]在第三方面的第一種可能的實現(xiàn)方式中,所述處理器用于根據(jù)預設的消息匹配項對第一消息進行消息匹配包括:所述處理器具體用于根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容,判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配,如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略,如果判斷結果為否,確定所述第一消息未匹配中所述消息匹配項對應的處理策略。
[0027]結合第三方面或第三方面的第一種可能的實現(xiàn)方式,在第三方面的第二種可能的實現(xiàn)方式中,所述順序調(diào)整策略包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。
[0028]結合第三方面的第二種可能的實現(xiàn)方式,在第三方面的第三種可能的實現(xiàn)方式中,所述處理器用于根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息包括:所述處理器具體用于在所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié)時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息,或者在所述順序調(diào)整策略中的調(diào)整單位類型指示為比特時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
[0029]結合第三方面或第三方面的第一種可能的實現(xiàn)方式或第三方面的第二種可能的實現(xiàn)方式或第三方面的第三種可能的實現(xiàn)方式,在第三方面的第四種可能的實現(xiàn)方式中,所述網(wǎng)絡設備還包括:發(fā)送器;所述處理器用于對所述第二消息進行處理包括:所述處理器具體用于將所述第二消息發(fā)送給所述發(fā)送器,以使所述發(fā)送器將所述第二消息發(fā)送出去。
[0030]結合第三方面或第三方面的第一種可能的實現(xiàn)方式或第三方面的第二種可能的實現(xiàn)方式或第三方面的第三種可能的實現(xiàn)方式,在第三方面的第五種可能的實現(xiàn)方式中,所述網(wǎng)絡設備還包括:接收器,用于在所述處理器對所述第一消息進行消息匹配之前,接收所述第一消息。
[0031]本發(fā)明實施例提供的消息處理方法及網(wǎng)絡設備,根據(jù)不同網(wǎng)絡設備之間消息的字節(jié)順序的差異,配置消息匹配項和用于對消息進行字節(jié)序轉換處理的順序調(diào)整策略,可以調(diào)整消息的字節(jié)順序,以便于網(wǎng)絡設備對消息進行后續(xù)處理,克服了不同網(wǎng)絡設備之間消息的字節(jié)順序不一致的問題,提高了不同網(wǎng)絡設備之間的兼容性,有利于提高通信系統(tǒng)的運行效率。
【專利附圖】
【附圖說明】
[0032]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0033]圖1為本發(fā)明實施例提供的一種消息處理方法的流程圖;
[0034]圖2為本發(fā)明實施例提供的一種網(wǎng)絡設備的結構示意圖;
[0035]圖3為本發(fā)明實施例提供的另一種網(wǎng)絡設備的結構示意圖?!揪唧w實施方式】
[0036]為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0037]圖1為本發(fā)明實施例提供的一種消息處理方法的流程圖。如圖1所示,本實施例的方法包括:
[0038]步驟101、根據(jù)預設的消息匹配項對第一消息進行消息匹配。
[0039]步驟102、如果消息匹配的匹配結果為匹配中順序調(diào)整策略,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息。
[0040]步驟103、對所述第二消息進行處理。
[0041]在本實施例中,根據(jù)相互連接的網(wǎng)絡設備之間消息的字節(jié)順序的差異,配置相應的消息匹配項和用于對消息進行字節(jié)轉換處理的順序調(diào)整策略。
[0042]在此說明,在本實施例中,除了為網(wǎng)絡設備配置順序調(diào)整策略和對應的消息匹配項之外,還可以根據(jù)網(wǎng)絡設備之間消息的其他差異性,為網(wǎng)絡設備配置其他處理策略,例如修改策略和丟棄策略等,以及相應的消息匹配項。其中,一個處理策略對應一個消息匹配項。
[0043]可選的,管理員可以通過配置臺為網(wǎng)絡設備配置消息匹配項和處理策略等。網(wǎng)絡設備可以通過數(shù)據(jù)庫(Data Base,簡稱為DB)來管理各消息匹配項目和各處理策略?;诖?,管理員可以通過配置臺將消息匹配項和對應的處理策略配置到網(wǎng)絡設備的數(shù)據(jù)庫中,以便網(wǎng)絡設備獲得消息匹配項和對應的處理策略。
[0044]在本實施例中,網(wǎng)絡設備在獲得第一消息后,可以使用預先配置的消息匹配項對第一消息進行消息匹配,如果第一消息匹配中某個處理策略,網(wǎng)絡設備根據(jù)該處理策略對第一消息進行處理。本發(fā)明各實施例將重點以第一消息匹配中順序調(diào)整策略為例進行說明。
[0045]其中,網(wǎng)絡設備可以是BSC、MSC或BTS等。
[0046]在本實施例中,網(wǎng)絡設備可以通過索引對消息匹配項進行管理,例如,每增加一條消息匹配項就為新增的消息匹配項分配一個索引,該索引可以唯一標識一條消息匹配項。網(wǎng)絡設備可以設定索引范圍,表示其所能支持的消息匹配項的個數(shù),例如該索引范圍可以是0-49,表不網(wǎng)絡設備最大支持50條消息匹配項。
[0047]在本實施例中,消息匹配項包括至少一個匹配條件和匹配條件對應的匹配內(nèi)容?;诖?,網(wǎng)絡設備根據(jù)預設的消息匹配項對第一消息進行消息匹配的過程包括:
[0048]網(wǎng)絡設備根據(jù)消息匹配項中的匹配條件,從第一消息中獲取與匹配條件對應的待匹配內(nèi)容;然后,判斷獲取的待匹配內(nèi)容與消息匹配項中的匹配內(nèi)容是否匹配,如果判斷結果為是,則確定第一消息匹配中該條消息匹配項對應的處理策略;如果判斷結果為否,則確定第一消息未匹配中該條消息匹配項對應的處理策略。
[0049]舉例說明,一條消息匹配項包括的匹配條件以及匹配條件對應的匹配內(nèi)容可以如下:[0050]1、MsgCapturePos:用于表示第一消息是發(fā)送方消息還是接收方消息,在一定程度上也可以表示對第一消息的匹配處理是在發(fā)送的時候進行還是在接收的時候進行。如果第一消息是發(fā)送方消息,說明第一消息是將要被發(fā)送的消息;如果第一消息是接收方消息,說明第一消息是接收到的消息。預先設置的MsgCapturePos的取值為該匹配條件對應的匹配內(nèi)容,例如取值為O,表不發(fā)送方消息。
[0051]2、SenderPid:發(fā)送方的標識,用于標識發(fā)送第一消息的網(wǎng)絡設備。預先設置的SenderPid的取值為該匹配條件對應的匹配內(nèi)容。
[0052]3、ReceiverPid:接收方的標識,用于標識接收第一消息的網(wǎng)絡設備。預先設置的ReceiverPid的取值為該匹配條件對應的匹配內(nèi)容。
[0053]上述第1-3條屬于消息匹配項中固定的匹配條件,記為第一類匹配條件,除此之夕卜,一條消息匹配項還包括第二類匹配條件,其中第二類匹配條件可以為多個。其中,第一類匹配條件一般是針對第一消息的消息頭中的信息設置的,而第二類匹配條件一般是針對第一消息中消息頭之后的內(nèi)容設置的。
[0054]4、MatchCount:第二類匹配條件的個數(shù),用于標識該條消息匹配項需要滿足的第二類匹配條件的個數(shù),其取值范圍是從O到第二類匹配條件的最大個數(shù),例如可以是從O到5。
[0055]5、MatchFieldOffset:第二類匹配條件的匹配內(nèi)容的起始位置,是指相對于第一消息中消息頭后面的第一個字節(jié)的地址的偏移量。其中,第一消息中消息頭后面的第一個字節(jié)的偏移量是0,后面字節(jié)的偏移量依次遞增。
[0056]6、MatchLen:第二類匹配條件的匹配內(nèi)容的長度。
[0057]7、MatchContent:第二類匹配條件的匹配內(nèi)容。
[0058]在此說明,如果第二類匹配條件為多個,則第5-7條匹配條件就需要重復設置多組,每組對應一個第二類匹配條件。
[0059]舉例說明,假設網(wǎng)絡設備按照上述舉例的消息匹配項中的匹配條件對第一消息進行消息匹配,具體的,網(wǎng)絡設備根據(jù)消息匹配項中的MsgCapturePos這一匹配條件,從第一消息中獲取標識第一消息是發(fā)送方消息還是接收方消息的信息,然后判斷獲取的該信息是否與消息匹配項中的MsgCapturePos的取值相同;網(wǎng)絡設備根據(jù)消息匹配項中的SenderPid這一匹配條件,從第一消息中獲取發(fā)送第一消息的發(fā)送方的標識,并判斷獲取的發(fā)送方的標識是否與消息匹配項中的SenderPid的取值相同;網(wǎng)絡設備根據(jù)消息匹配項中的ReceiverPid這一匹配條件,從第一消息中獲取接收第一消息的接收方的標識,判斷獲取的接收方的標識是否與消息匹配項中的ReceiverPid的取值相同;網(wǎng)絡設備確定消息匹配項中設置的第二類匹配條件的個數(shù),然后將第一消息與第二類匹配條件逐個進行比較,以判斷第一消息是否滿足第二類匹配條件的要求;以其中一個第二類匹配條件為例進行說明,網(wǎng)絡設備根據(jù)該第二類匹配條件的匹配內(nèi)容的起始位置和該第二類匹配條件的匹配內(nèi)容的長度,從第一消息中獲取待匹配內(nèi)容,然后將待匹配內(nèi)容與第二匹配條件的匹配內(nèi)容進行比較,判斷兩者是否匹配。這里的匹配主要是指相同。舉例JiSMatchFieldOffset=O,MatchLen=2, MatchContent=H' 5678, char*pucBuff=第一消息的消息頭后的第一個字節(jié)的地址。如果第一消息的OpucBuff) ==0x56并且O(pucBuff+l))==0x78,貝U說明第一消息匹配中該第二類匹配條件。當上述所有匹配條件的匹配結果均為相同時,確定第一消息匹配中該條消息匹配項對應的處理策略。如果該處理策略為順序調(diào)整策略,則網(wǎng)絡設備根據(jù)順序調(diào)整策略對第一消息進行字節(jié)序轉換。
[0060]在本實施例中,網(wǎng)絡設備上配置的處理策略通常包括以下參數(shù):
[0061]a、MsgCapturePos:用于表示第一消息是發(fā)送方消息還是接收方消息,在一定程度上也可以表示對第一消息的匹配處理是在發(fā)送的時候進行還是在接收的時候進行。
[0062]b、MsgOpType:處理類型,包括丟棄,修改內(nèi)容,修改字節(jié)順序。
[0063]c、ModifyFieldOffset:要處理內(nèi)容的起始位置,是指相對于第一消息中消息頭后面的第一個字節(jié)的地址的偏移量。其中,第一消息中消息頭后面的第一個字節(jié)的偏移量是0,后面字節(jié)的偏移量依次遞增。
[0064]d、ModifyUnitType:要處理內(nèi)容的單位的類型,包括字節(jié)(BYTE)和比特(bit)。
[0065]e> ModifyLen:要處理內(nèi)容的長度,單位由ModifyUnitType確定。
[0066]f、ModifyContent:要處理的內(nèi)容。
[0067]在此說明,如果處理策略的類型為丟棄,則第一消息就完全被丟棄,不會進行進一步處理。如果處理策略的類型為丟棄,則MsgCapturePos只能配置為接收方。
[0068]如果處理策略的類型為修改內(nèi)容,則ModifyUnitType只能配置為字節(jié),ModifyContent只能配置字符串,且需要以H’開頭,H’后面的數(shù)據(jù)以字節(jié)為單位。例如:如果 ModifyContent=H' 12345678,則 *(UINT8*) ((UINT8*)ModifyFieldOffset+Ο)的值被修改為 12 (十六進制),* (UINT8*) ((UINT8*)ModifyFieldOffset+Ι)的值被修改為 34 (十六進制),依此類推。
[0069]在本實施例中,處理策略的類型除了是丟棄和修改內(nèi)容之外,還增加了修改字節(jié)順序,即該處理策略可以為順序調(diào)整策略。在本實施例中,順序調(diào)整策略至少包括:順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。其中,順序調(diào)整指示,用于指示該處理策略為順序調(diào)整策略,例如,順序調(diào)整指示可以是對上述MsgOpType參數(shù)的取值進行擴展來實現(xiàn);例如,MsgOpType取O表示丟棄策略,取I表示修改內(nèi)容,取2表示順序調(diào)整策略。調(diào)整單位類型指示,表示調(diào)整過程中的最小調(diào)整單位,例如可以是字節(jié)或比特;調(diào)整單位類型指示可以是上述的ModifyUnitType參數(shù)。調(diào)整規(guī)則,用于表示如何對調(diào)整內(nèi)容進行調(diào)整,例如調(diào)整規(guī)則可以對上述ModifyContent參數(shù)進行擴展實現(xiàn)。
[0070]如果匹配中的處理策略為順序調(diào)整策略,則網(wǎng)絡設備根據(jù)所述順序調(diào)整策略對第一消息進行字節(jié)序轉換,獲得第二消息的過程包括:
[0071]如果所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié),根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息;
[0072]如果所述順序調(diào)整策略中的調(diào)整單位類型指示為比特,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消
肩、O
[0073]舉例說明,假設順序調(diào)整策略中的參數(shù)為:MSg0pType=修改字節(jié)順序,ModifyUnitType=字節(jié),ModifyContent=H' 03020100 ;其中,ModifyContent=H' 03020100 表示把下標是3的字節(jié)放到下標是O的字節(jié)的存儲位置,將下標是2的字節(jié)放到下標是I的字節(jié)的存儲位置,將下標是I的字節(jié)放到下標是2的字節(jié)的存儲位置,下標是O的字節(jié)放到下標是3的字節(jié)的存儲位置。
[0074]假設第一消息如下:
[0075]*(UINT8*)((UINT8*)ModifyFieldOffset+O)=Oxaa
[0076]*(UINT8*)((UINT8*)ModifyFieldOffset+1)=Oxbb
[0077]* (UINT8*)((UINT8*)ModifyField0ffset+2) =Oxcc
[0078]*(UINT8*)((UINT8*)ModifyField0ffset+3)=Oxdd
[0079]則根據(jù)上述順序調(diào)整策略進行字節(jié)調(diào)整后,得到的第二消息如下:
[0080]*(UINT8*)((UINT8*)ModifyFieldOffset+O)=Oxdd[0081 ] *(UINT8*)((UINT8*)ModifyFieldOffset+1)=Oxcc
[0082]*(UINT8*)((UINT8*)ModifyField0ffset+2)=Oxbb
[0083]* (UINT8*)((UINT8*)ModifyField0ffset+3)=Oxaa
[0084]舉例說明,假設順序調(diào)整策略中的參數(shù)為:MSg0pType=修改字節(jié)順序,ModifyUnitType=比特,ModifyContent=H' 03020100 ;ModifyContent=H’ 03020100 表不把下標是3的比特放到下標是O的比特的存儲位置,將下標是2的比特放到下標是I的比特的存儲位置,將下標是I的比特放到下標是2的比特的存儲位置,下標是O的比特放到下標是3的比特的存儲位置。
[0085]假設第一消息如下:
[0086]ModifyFieIdOffset+Ο (單位是 bit)的值是 I
[0087]ModifyFieIdOffset+Ι (單位是 bit)的值是 O
[0088]ModifyFieIdOffset+2 (單位是 bit)的值是 I
[0089]ModifyFieIdOffset+3 (單位是 bit)的值是 I
[0090]則根據(jù)上述順序調(diào)整策略進行比特調(diào)整后,得到的第二消息如下:
[0091]ModifyFieIdOffset+Ο (單位是 bit)的值是 I
[0092]ModifyFieIdOffset+Ι (單位是 bit)的值是 I
[0093]ModifyFieIdOffset+2 (單位是 bit)的值是 O
[0094]ModifyFieIdOffset+3 (單位是 bit)的值是 I
[0095]由上述可見,采用本發(fā)明實施例可以解決不同網(wǎng)絡設備之間的消息字節(jié)順序不一致的問題,提高了不同網(wǎng)絡設備之間的兼容性,有利于提高通信系統(tǒng)的運行效率。
[0096]可選的,本實施例的網(wǎng)絡設備可以是第一消息的發(fā)送方,則網(wǎng)絡設備對所述第二消息進行處理的過程包括:將第二消息發(fā)送出去。即網(wǎng)絡設備在發(fā)送消息之前,先對待發(fā)送消息進行消息匹配,然后根據(jù)匹配中的順序調(diào)整策略進行字節(jié)序轉換,以使稍后發(fā)送出去的消息滿足接收方的要求,然后再將轉換后的消息發(fā)送出去。
[0097]可選的,本實施例的網(wǎng)絡設備也可以第一消息的接收方,則網(wǎng)絡設備在根據(jù)預設的消息匹配項對第一消息進行消息匹配之前,需要先接收第一消息。其中,接收到的第一消息會存儲在內(nèi)存中。網(wǎng)絡設備接收到消息之后,首先對消息進行消息匹配,然后根據(jù)匹配中的順序調(diào)整策略對接收到的消息進行字節(jié)序轉換,然后再對消息進行處理,克服了不同網(wǎng)絡設備之間的消息字節(jié)序列的差異。
[0098]圖2為本發(fā)明實施例提供的一種網(wǎng)絡設備的結構示意圖。如圖2所示,本實施例的網(wǎng)絡設備包括:匹配模塊21、順序調(diào)整模塊22和處理模塊23。[0099]匹配模塊21,用于根據(jù)預設的消息匹配項對第一消息進行消息匹配。
[0100]順序調(diào)整模塊22,與匹配模塊21連接,用于在匹配模塊21進行消息匹配的結果為匹配中順序調(diào)整策略時,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第
二消息。
[0101 ] 處理模塊23,與順序調(diào)整模塊22連接,用于對順序調(diào)整模塊22獲得的第二消息進行處理。
[0102]在一可選實施方式中,匹配模塊21具體可用于根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容,判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配,如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略,如果判斷結果為否,確定所述第一消息未匹配中所述消息匹配項對應的處理策略。
[0103]在一可選實施方式中,順序調(diào)整策略至少包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。
[0104]基于上述,順序調(diào)整模塊22具體可用于在所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié)時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息,或者在所述順序調(diào)整策略中的調(diào)整單位類型指示為比特時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
[0105]在一可選實施方式中,處理模塊23具體可用于將所述第二消息發(fā)送出去。
[0106]在一可選實施方式中,如圖2所示,本實施例的網(wǎng)絡設備還包括:接收模塊24。接收模塊24,用于在匹配模塊21對所述第一消息進行消息匹配之前,接收所述第一消息。接收模塊24與匹配模塊21連接,用于向匹配模塊21提供第一消息。
[0107]本實施例提供的網(wǎng)絡設備可以是BSC、MSC或BTS等。
[0108]本實施例提供的網(wǎng)絡設備的各功能模塊可用于執(zhí)行圖1所示方法實施例的流程,其具體工作原理不再贅述,詳見方法實施例的描述。
[0109]本實施例提供的網(wǎng)絡設備,根據(jù)預先配置的消息匹配項和用于對消息進行字節(jié)序轉換處理的順序調(diào)整策略,可以調(diào)整消息的字節(jié)順序,然后再對消息進行后續(xù)處理,克服了不同網(wǎng)絡設備之間消息的字節(jié)順不一致的問題,提高了不同網(wǎng)絡設備之間的兼容性,有利于提高通信系統(tǒng)的運行效率。
[0110]圖3為本發(fā)明實施例提供的另一種網(wǎng)絡設備的結構示意圖。如圖3所示,本實施例的網(wǎng)絡設備包括:存儲器31和處理器32。
[0111]存儲器31,用于存放程序。具體地,程序可以包括程序代碼,所述程序代碼包括計算機操作指令。存儲器31可能包含高速RAM存儲器,也可能還包括非易失性存儲器(non-volatile memory),例如至少一個磁盤存儲器。
[0112]處理器32,用于執(zhí)行存儲器31存放的程序,以用于:根據(jù)預設的消息匹配項對第一消息進行消息匹配,如果消息匹配的匹配結果為匹配中順序調(diào)整策略,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息,并對所述第二消息進行處理。
[0113]處理器32可能是一個中央處理器(Central Processing Unit,簡稱為CPU),或者是特定集成電路(Application Specific Integrated Circuit,簡稱為ASIC),或者是被配置成實施本發(fā)明實施例的一個或多個集成電路。
[0114]在一可選實施方式中,處理器32用于根據(jù)預設的消息匹配項對第一消息進行消息匹配包括:
[0115]處理器32具體用于根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容,判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配,如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略,如果判斷結果為否,確定所述第一消息未匹配中所述消息匹配項對應的處理策略。
[0116]在一可選實施方式中,所述順序調(diào)整策略包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則?;诖耍幚砥?2用于根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息包括:
[0117]處理器32具體用于在所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié)時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息,或者在所述順序調(diào)整策略中的調(diào)整單位類型指示為比特時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
[0118]如圖3所示,本實施例的網(wǎng)絡設備還可以包括:發(fā)送器33,負責將本實施例網(wǎng)絡設備的消息發(fā)送出去。
[0119]如果本實施例的網(wǎng)絡設備為第一消息的發(fā)送方,則處理器32用于對所述第二消息進行處理包括:處理器32具體用于將所述第二消息發(fā)送給發(fā)送器33,以使發(fā)送器33將所述第二消息發(fā)送出去。相應的,發(fā)送器33可用于將所述第二消息發(fā)送出去。
[0120]如圖3所示,本實施例的網(wǎng)絡設備還可以包括:接收器34,主要用于接收其他設備發(fā)送給本實施例網(wǎng)絡設備的消息。
[0121]如果本實施例的網(wǎng)絡設備為第一消息的接收方,則接收器34,用于在處理器32對所述第一消息進行消息匹配之前,接收所述第一消息。
[0122]可選的,在具體實現(xiàn)上,如果存儲器31、處理器32、發(fā)送器33和接收器34獨立實現(xiàn),則存儲器31、處理器32、發(fā)送器33和接收器34可以通過總線相互連接并完成相互間的通信。所述總線可以是工業(yè)標準體系結構(Industry Standard Architecture,簡稱為ISA)總線、外部設備互連(Peripheral Component,簡稱為PCI)總線或擴展工業(yè)標準體系結構(Extended Industry Standard Architecture,簡稱為 EISA)總線等。所述總線可以分為地址總線、數(shù)據(jù)總線、控制總線等。為便于表示,圖3中僅用一條粗線表示,但并不表示僅有一根總線或一種類型的總線。
[0123]可選的,在具體實現(xiàn)上,如果存儲器31、處理器32、發(fā)送器33和接收器34集成在一塊芯片上實現(xiàn),則存儲器31、處理器32、發(fā)送器33和接收器34可以通過內(nèi)部接口完成相同間的通信。
[0124]本實施例提供的網(wǎng)絡設備可以是BSC、MSC或BTS等。
[0125]本實施例提供的網(wǎng)絡設備可用于執(zhí)行圖1所示方法實施例的流程,其具體工作原理不再贅述,詳見方法實施例的描述。
[0126]本實施例提供的網(wǎng)絡設備,根據(jù)預先配置的消息匹配項和用于對消息進行字節(jié)序轉換處理的順序調(diào)整策略,可以調(diào)整消息的字節(jié)順序,然后再對消息進行后續(xù)處理,克服了不同網(wǎng)絡設備之間消息的字節(jié)順不一致的問題,提高了不同網(wǎng)絡設備之間的兼容性,有利于提高通信系統(tǒng)的運行效率。
[0127]本領域普通技術人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括:R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0128]最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質(zhì)脫離本發(fā)明各實施例技術方案的范圍。
【權利要求】
1.一種消息處理方法,其特征在于,包括: 根據(jù)預設的消息匹配項對第一消息進行消息匹配; 如果消息匹配的結果為匹配中順序調(diào)整策略,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息; 對所述第二消息進行處理。
2.根據(jù)權利要求1所述的消息處理方法,其特征在于,所述根據(jù)預設的消息匹配項對第一消息進行消息匹配包括: 根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容; 判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配; 如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略; 如果判斷結果為否,確定所述第一消息未匹配中所述消息匹配項對應的處理策略。
3.根據(jù)權利要求1或2所述的消息處理方法,其特征在于,所述順序調(diào)整策略包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。
4.根據(jù)權利要求3所述的消息處理方法,其特征在于,所述根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息包括: 如果所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié),根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息;如果所述順序調(diào)整策略中的調(diào)整單位類型指示為比特,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
5.根據(jù)權利要求1-4任一項所述的消息處理方法,其特征在于,所述對所述第二消息進行處理包括: 將所述第二消息發(fā)送出去。
6.根據(jù)權利要求1-4任一項所述的消息處理方法,其特征在于,所述根據(jù)預設的消息匹配項對第一消息進行消息匹配之前包括: 接收所述第一消息。
7.—種網(wǎng)絡設備,其特征在于,包括: 匹配模塊,用于根據(jù)預設的消息匹配項對第一消息進行消息匹配; 順序調(diào)整模塊,用于在所述匹配模塊進行消息匹配的結果為匹配中順序調(diào)整策略時,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息; 處理模塊,用于對所述第二消息進行處理。
8.根據(jù)權利要求7所述的網(wǎng)絡設備,其特征在于,所述匹配模塊具體用于根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容,判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配,如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略,如果判斷結果為否,確定所述第一消息未匹配中所述消息匹配項對應的處理策略。
9.根據(jù)權利要求7或8所述的網(wǎng)絡設備,其特征在于,所述順序調(diào)整策略包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。
10.根據(jù)權利要求9所述的網(wǎng)絡設備,其特征在于,所述順序調(diào)整模塊具體用于在所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié)時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息,或者在所述順序調(diào)整策略中的調(diào)整單位類型指示為比特時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
11.根據(jù)權利要求7-10任一項所述的網(wǎng)絡設備,其特征在于,所述處理模塊具體用于將所述第二消息發(fā)送出去。
12.根據(jù)權利要求7-10任一項所述的網(wǎng)絡設備,其特征在于,還包括: 接收模塊,用于在所述匹配模塊對所述第一消息進行消息匹配之前,接收所述第一消肩、O
13.—種網(wǎng)絡設備,其特征在于,包括: 存儲器,用于存放程序; 處理器,用于執(zhí)行所述程序,以用于:根據(jù)預設的消息匹配項對第一消息進行消息匹配,如果消息匹配的結果為匹配中順序調(diào)整策略,根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息,并對所述第二消息進行處理。
14.根據(jù)權利要求13所述的網(wǎng)絡設備,其特征在于,所述處理器用于根據(jù)預設的消息匹配項對第一消息進行消息匹配包括: 所述處理器具體用于根據(jù)所述消息匹配項中的匹配條件,從所述第一消息中獲取與所述匹配條件對應的待匹配內(nèi)容,判斷所述待匹配內(nèi)容與所述消息匹配項中的匹配內(nèi)容是否匹配,如果判斷結果為是,確定所述第一消息匹配中所述消息匹配項對應的處理策略,如果判斷結果為否,確定所述第一`消息未匹配中所述消息匹配項對應的處理策略。
15.根據(jù)權利要求13或14所述的網(wǎng)絡設備,其特征在于,所述順序調(diào)整策略包括順序調(diào)整指示、調(diào)整單位類型指示和調(diào)整規(guī)則。
16.根據(jù)權利要求15所述的網(wǎng)絡設備,其特征在于,所述處理器用于根據(jù)所述順序調(diào)整策略對所述第一消息進行字節(jié)序轉換,獲得第二消息包括: 所述處理器具體用于在所述順序調(diào)整策略中的調(diào)整單位類型指示為字節(jié)時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各字節(jié)在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息,或者在所述順序調(diào)整策略中的調(diào)整單位類型指示為比特時,根據(jù)所述順序調(diào)整策略中的調(diào)整規(guī)則,對所述第一消息中的各比特在內(nèi)存中的存儲位置進行調(diào)整,獲得所述第二消息。
17.根據(jù)權利要求13-16任一項所述的網(wǎng)絡設備,其特征在于,還包括:發(fā)送器; 所述處理器用于對所述第二消息進行處理包括: 所述處理器具體用于將所述第二消息發(fā)送給所述發(fā)送器,以使所述發(fā)送器將所述第二消息發(fā)送出去。
18.根據(jù)權利要求13-16任一項所述的網(wǎng)絡設備,其特征在于,還包括: 接收器,用于在所述處理器對所述第一消息進行消息匹配之前,接收所述第一消息。
【文檔編號】H04L29/06GK103535006SQ201280004560
【公開日】2014年1月22日 申請日期:2012年11月28日 優(yōu)先權日:2012年11月28日
【發(fā)明者】習燕, 魯連奎, 吳駿濤 申請人:華為技術有限公司