專利名稱:一種ir接口控制和管理消息的監(jiān)聽方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實(shí)施例涉及通信技術(shù)領(lǐng)域,特別是涉及一種IR接口控制和管理消息的監(jiān)聽方法和系統(tǒng)。
背景技術(shù):
IR (Interface between the RRU and the BBU)接口 為分布式基站系統(tǒng)中基帶單元(Base band Unit, BBU)和射頻遠(yuǎn)端單元(Radio Remote Unit, RRU)之間通信的標(biāo)準(zhǔn)接口??刂坪凸芾?Control&Management,C&M)消息是承載于IR接口上的應(yīng)用層消息,有詳細(xì)的IR接口規(guī)范進(jìn)行定義。各廠家的BBU和RRU在C&M消息上均需要符合IR接口規(guī)范才能互聯(lián)互通。目前,在對不同廠家的BBU和RRU進(jìn)行接口聯(lián)調(diào)時(shí),主要是通過在BBU側(cè)或RRU側(cè)利用調(diào)試手段抓取C&M消息,然后進(jìn)行分析,最終確定BBU和RRU在C&M消息上是否符合IR接口規(guī)范。但是,由于上述只是通過單側(cè)分析得到,如果分析結(jié)果得出C&M消息不符合IR接口規(guī)范,在判斷具體是哪一側(cè)出現(xiàn)問題時(shí),可能存在判斷錯(cuò)誤的情況,因此判斷結(jié)果公信力不夠。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例所要解決的技術(shù)問題是提供一種IR接口控制和管理消息的監(jiān)聽方法和系統(tǒng),以解決目前單側(cè)分析方法的判斷結(jié)果不準(zhǔn)確,公信力不夠的問題。為了解決上述問題,本發(fā)明公開了一種IR接口控制和管理消息的監(jiān)聽方法,其特征在于,包括:在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流;分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流;從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息。可選地,通過分光器分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流。可選地,所述從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息,包括:從所述TCP數(shù)據(jù)流中提取初始控制和管理消息;從所述初始控制和管理消息中檢測心跳幀;判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確;當(dāng)正確時(shí),將所述數(shù)據(jù)幀確定為有效的控制和管理消息;當(dāng)不正確時(shí),繼續(xù)從所述初始控制和管理消息中檢測心跳幀??蛇x地,所述從所述初始控制和管理消息中檢測心跳幀,包括:檢測所述初始控制和管理消息中是否收到心跳幀編號;
當(dāng)收到心跳幀編號時(shí),檢測是否收到心跳幀固定長度;當(dāng)收到心跳幀固定長度時(shí),確定所述幀編號對應(yīng)的幀為心跳幀。可選地,所述判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確,包括:檢測在所述心跳幀后是否收到正確的數(shù)據(jù)幀的幀編號;當(dāng)收到正確的數(shù)據(jù)幀的幀編號時(shí),檢測是否依次收到數(shù)據(jù)幀的長度、RRU ID和BBUID、以及光口號和流水號;當(dāng)依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號時(shí),檢測是否收到正確的IE標(biāo)志;當(dāng)收到正確的IE標(biāo)志時(shí),檢測是否收到正確的IE長度;當(dāng)收到正確的IE長度時(shí),等待IE數(shù)據(jù)狀態(tài),并比較IE長度與數(shù)據(jù)幀的長度;當(dāng)IE長度等于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式正確;當(dāng)數(shù)據(jù)幀的幀編號不正確,或者IE標(biāo)志不正確,或者IE長度不正確,或者IE長度大于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式不正確??蛇x地,所述分別從第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流,包括:分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包;對所述IP數(shù)據(jù)包進(jìn)行IP重組,從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包;對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流??蛇x地,所述分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包,包括:通過現(xiàn)場可編程門陣列分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取控制和管理通道中的以太數(shù)據(jù)包;通過以太驅(qū)動(dòng)從所述以太數(shù)據(jù)包中提取IP數(shù)據(jù)包。可選地,所述IP數(shù)據(jù)包包括分片的IP數(shù)據(jù)包和未分片的IP數(shù)據(jù)包,每個(gè)IP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號,所述對所述IP數(shù)據(jù)包進(jìn)行IP重組,從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包,包括:直接從未分片的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;分配用于存儲IP數(shù)據(jù)包的IP包緩沖池;所述IP包緩沖池包括多個(gè)IP緩沖鏈表,每個(gè)IP緩沖鏈表包括各自對應(yīng)的IP地址和端口號;將分片的IP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述分片的IP數(shù)據(jù)包具有相同的IP地址和端口號的IP緩沖鏈表上;判斷每個(gè)IP緩沖鏈表在預(yù)設(shè)的第一時(shí)間內(nèi)是否收到完整的IP數(shù)據(jù)包;當(dāng)收到時(shí),從所述IP緩沖鏈表上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;當(dāng)未收到時(shí),丟棄所述IP緩沖鏈表上的IP數(shù)據(jù)包??蛇x地,每個(gè)TCP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號,所述對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流,包括:分配用于存儲TCP數(shù)據(jù)包的TCP包緩沖池;所述TCP包緩沖池包括多個(gè)TCP緩沖鏈表,每個(gè)TCP緩沖鏈表包括各自對應(yīng)的IP地址和端口號;將所述TCP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述TCP數(shù)據(jù)包具有相同的IP地址和端口號的TCP緩沖鏈表上;
判斷每個(gè)TCP緩沖鏈表在預(yù)設(shè)的第二時(shí)間內(nèi)是否收到連續(xù)的TCP數(shù)據(jù)包;當(dāng)收到時(shí),將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流;當(dāng)未收到時(shí),用零補(bǔ)充未收到的TCP數(shù)據(jù)包,并將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流。另一方面,本發(fā)明還公開了一種IR接口控制和管理消息的監(jiān)聽系統(tǒng),其特征在于,包括:分離模塊,用于在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流;數(shù)據(jù)流解析模塊,用于分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流;消息解析模塊,用于從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息??蛇x地,所述分離模塊通過分光器分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流??蛇x地,所述消息解析模塊包括:初始消息提取子模塊,用于從所述TCP數(shù)據(jù)流中提取初始控制和管理消息;心跳幀檢測子模塊,用于從所述初始控制和管理消息中檢測心跳幀;格式判斷子模塊,用于判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確;有效消息確定子模塊,用于當(dāng)格式判斷子模塊的判斷結(jié)果為正確時(shí),將所述數(shù)據(jù)幀確定為有效的控制和管理消息;所述心跳幀檢測子模塊還用于當(dāng)格式判斷子模塊的判斷結(jié)果為不正確時(shí),繼續(xù)從所述初始控制和管理消息中檢測心跳中貞??蛇x地,所述心跳幀檢測子模塊包括:第一編號檢測子單元,用于檢測所述初始控制和管理消息中是否收到心跳幀編號;長度檢測子單元,用于當(dāng)編號檢測子單元的檢測結(jié)果為收到心跳幀編號時(shí),檢測是否收到心跳幀固定長度;心跳幀確定子單元,用于當(dāng)長度檢測子單元的檢測結(jié)果為收到心跳幀固定長度時(shí),確定所述幀編號對應(yīng)的幀為心跳幀。可選地,所述格式判斷子模塊包括:第二編號檢測子單元,用于檢測在所述心跳幀后是否收到正確的數(shù)據(jù)幀的幀編號;依次檢測子單元,用于當(dāng)?shù)诙幪枡z測子單元的檢測結(jié)果為收到正確的數(shù)據(jù)幀的幀編號時(shí),檢測是否依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號;IE標(biāo)志檢測子單元,用于當(dāng)依次檢測子單元的檢測結(jié)果為依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號時(shí),檢測是否收到正確的IE標(biāo)志;IE長度檢測子單元,用于當(dāng)IE標(biāo)志檢測子單元的檢測結(jié)果為收到正確的IE標(biāo)志時(shí),檢測是否收到正確的IE長度;比較子單元,用于當(dāng)IE長度檢測子單元的檢測結(jié)果為收到正確的IE長度時(shí),等待IE數(shù)據(jù)狀態(tài),并比較IE長度與數(shù)據(jù)幀的長度;
格式確定子單元,用于當(dāng)IE長度等于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式正確;當(dāng)數(shù)據(jù)幀的幀編號不正確,或者IE標(biāo)志不正確,或者IE長度不正確,或者IE長度大于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式不正確??蛇x地,所述數(shù)據(jù)流解析模塊包括:IP數(shù)據(jù)包獲取子模塊,用于分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包;TCP數(shù)據(jù)包獲取子模塊,用于對所述IP數(shù)據(jù)包進(jìn)行IP重組,從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包;生成子模塊,用于對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流。可選地,所述IP數(shù)據(jù)包獲取子模塊包括:以太數(shù)據(jù)包獲取子單元,用于通過現(xiàn)場可編程門陣列分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取控制和管理通道中的以太數(shù)據(jù)包;IP數(shù)據(jù)包提取子單元,用于通過以太驅(qū)動(dòng)從所述以太數(shù)據(jù)包中提取IP數(shù)據(jù)包??蛇x地,所述IP數(shù)據(jù)包包括分片的IP數(shù)據(jù)包和未分片的IP數(shù)據(jù)包,每個(gè)IP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號, 所述TCP數(shù)據(jù)包獲取子模塊包括:直接提取子單元,用于直接從未分片的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;IP包緩沖池分配子單元,用于分配用于存儲IP數(shù)據(jù)包的IP包緩沖池;所述IP包緩沖池包括多個(gè)IP緩沖鏈表,每個(gè)IP緩沖鏈表包括各自對應(yīng)的IP地址和端口號;IP數(shù)據(jù)包掛入子單元,用于將分片的IP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述分片的IP數(shù)據(jù)包具有相同的IP地址和端口號的IP緩沖鏈表上;IP完整判斷子單元,用于判斷每個(gè)IP緩沖鏈表在預(yù)設(shè)的第一時(shí)間內(nèi)是否收到完整的IP數(shù)據(jù)包;第一處理子單元,用于當(dāng)IP完整判斷子單元的判斷結(jié)果為收到時(shí),從所述IP緩沖鏈表上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;當(dāng)IP完整判斷子單元的判斷結(jié)果為未收到時(shí),丟棄所述IP緩沖鏈表上的IP數(shù)據(jù)包。可選地,每個(gè)TCP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號,所述生成子模塊包括:TCP包緩沖池分配子單元,用于分配用于存儲TCP數(shù)據(jù)包的TCP包緩沖池;所述TCP包緩沖池包括多個(gè)TCP緩沖鏈表,每個(gè)TCP緩沖鏈表包括各自對應(yīng)的IP地址和端口號;TCP數(shù)據(jù)包掛入子單元,用于將所述TCP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述TCP數(shù)據(jù)包具有相同的IP地址和端口號的TCP緩沖鏈表上;TCP連續(xù)判斷子單元,用于判斷每個(gè)TCP緩沖鏈表在預(yù)設(shè)的第二時(shí)間內(nèi)是否收到連續(xù)的TCP數(shù)據(jù)包;第二處理子單元,用于當(dāng)TCP連續(xù)判斷子單元的判斷結(jié)果為收到時(shí),將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流;當(dāng)TCP連續(xù)判斷子單元的判斷結(jié)果為未收到時(shí),用零補(bǔ)充未收到的TCP數(shù)據(jù)包,并將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流。與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例包括以下優(yōu)點(diǎn):本發(fā)明實(shí)施例可以在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出BBU向RRU發(fā)送的第一數(shù)據(jù)流、以及RRU向BBU發(fā)送的第二數(shù)據(jù)流,并且可以分別對這兩個(gè)方向的數(shù)據(jù)流進(jìn)行分析,最后解析出有效的控制和管理消息。由于其中包括了兩個(gè)方向的控制和管理消息,因此,當(dāng)?shù)贸隹刂坪凸芾硐⒉环螴R接口規(guī)范時(shí),通過對這兩個(gè)方向的控制和管理消息進(jìn)行分析,可以更加準(zhǔn)確地判斷出具體是BBU側(cè)還是RRU側(cè)出現(xiàn)了問題。
圖1是本發(fā)明實(shí)施例一所述的一種IR接口控制和管理消息的監(jiān)聽方法的流程圖;圖2是本發(fā)明實(shí)施例二所述的一種IR接口控制和管理消息的監(jiān)聽方法的整體過程的示意圖;圖3是本發(fā)明實(shí)施例二所述的IP重組過程的示意圖;圖4是本發(fā)明實(shí)施例二所述的TCP重組過程的示意圖;圖5是本發(fā)明實(shí)施例二所述的控制和管理消息的結(jié)構(gòu)示意圖;圖6是本發(fā)明實(shí)施例二所述的從初始控制和管理消息中解析有效的控制和管理消息的不意圖;圖7是本發(fā)明實(shí)施例三所述的一種IR接口控制和管理消息的監(jiān)聽系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施例方式為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。本發(fā)明實(shí)施例可以在BBU和RRU通信的過程中,分離出兩個(gè)方向的C&M消息,通過對這兩個(gè)方向的C&M消息進(jìn)行分析,可以更加準(zhǔn)確地判斷出BBU和RRU在通信過程中的問題。實(shí)施例一:C&M消息是承載于IR接口上的應(yīng)用層消息,有詳細(xì)的IR接口規(guī)范進(jìn)行定義。各廠家的BBU和RRU在C&M消息上均需要符合IR接口規(guī)范才能互聯(lián)互通。目前,在對不同廠家的BBU和RRU進(jìn)行接口聯(lián)調(diào)時(shí),主要是通過在BBU側(cè)或RRU側(cè)利用調(diào)試手段抓取C&M消息,然后進(jìn)行分析,最終確定BBU和RRU在C&M消息上是否符合IR接口規(guī)范。但是,由于上述只是通過單側(cè)分析得到,如果分析結(jié)果得出C&M消息不符合IR接口規(guī)范,在判斷具體是哪一側(cè)出現(xiàn)問題時(shí),可能存在判斷錯(cuò)誤的情況,因此判斷結(jié)果公信力不夠。為了解決上述問題,本發(fā)明實(shí)施例提出了一種IR接口控制和管理消息的監(jiān)聽方法,該方法可以實(shí)現(xiàn)在BBU和RRU通信的過程中監(jiān)聽雙向的C&M消息,從而提高判斷的準(zhǔn)確性。參照圖1,示出了本發(fā)明實(shí)施例所述的一種IR接口控制和管理消息的監(jiān)聽方法,所述方法可以包括:步驟100,在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流。本發(fā)明實(shí)施例可以在BBU和RRU通過IR接口通信的過程中,分別將BBU向RRU發(fā)送的數(shù)據(jù)流和RRU向BBU發(fā)送的數(shù)據(jù)流分離出來,后續(xù)即可對這兩個(gè)方向的數(shù)據(jù)流進(jìn)行分析。本發(fā)明實(shí)施例中,可以通過分光器分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流。分光器是一種無源器件,它不需要外部能量,只要有輸入光即可。分光器由入射和出射狹縫、反射鏡和色散元件組成,其作用是將所需要的共振吸收線分離出來。因此,可以通過分光器在數(shù)據(jù)通過光纖傳輸后將數(shù)據(jù)復(fù)制一份供監(jiān)控用。當(dāng)然,本領(lǐng)域技術(shù)人員還可以根據(jù)實(shí)際經(jīng)驗(yàn)采用其他方法分離出第一數(shù)據(jù)流和第二數(shù)據(jù)流,本發(fā)明實(shí)施例對此并不加以限制。步驟102,分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流。在得到第一數(shù)據(jù)流和第二數(shù)據(jù)流之后,可以分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出傳輸控制協(xié)議(Transmission Control Protocol, TCP)數(shù)據(jù)流,所述TCP數(shù)據(jù)流中包括了 C&M消息。因此通過對TCP數(shù)據(jù)流進(jìn)行分析,即可得出所需的C&M消息。需要說明的是,本發(fā)明實(shí)施例可以從第一數(shù)據(jù)流和第二數(shù)據(jù)流中分別解析出TCP數(shù)據(jù)流,即獲取的TCP數(shù)據(jù)流也為兩個(gè)方向的TCP數(shù)據(jù)流,因此可以包括兩個(gè)方向的C&M消肩、O步驟104,從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息。在TCP數(shù)據(jù)流中的C&M消息可能有一部分為有效的C&M消息,可以根據(jù)這部分消息進(jìn)行分析、問題定位并調(diào)試。因此,本發(fā)明實(shí)施例中還可以進(jìn)一步從所述TCP數(shù)據(jù)流中解析出兩個(gè)方向上的有效的C&M消息。對于上述各個(gè)步驟的具體過程,將在下面的實(shí)施例中詳細(xì)論述。本發(fā)明實(shí)施例可以在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出BBU向RRU發(fā)送的第一數(shù)據(jù)流、以及RRU向BBU發(fā)送的第二數(shù)據(jù)流,并且可以分別對這兩個(gè)方向的數(shù)據(jù)流進(jìn)行分析,最后解析出有效的控制和管理消息。由于其中包括了兩個(gè)方向的控制和管理消息,因此,當(dāng)?shù)贸隹刂坪凸芾硐⒉环螴R接口規(guī)范時(shí),通過對這兩個(gè)方向的控制和管理消息進(jìn)行分析,可以更加準(zhǔn)確地判斷出具體是BBU側(cè)還是RRU側(cè)出現(xiàn)了問題。實(shí)施例二:在本發(fā)明實(shí)施例二中,將對IR接口控制和管理消息的監(jiān)聽方法進(jìn)行詳細(xì)描述。參照圖2,示出了本發(fā)明實(shí)施例二所述的一種IR接口控制和管理消息的監(jiān)聽方法的整體過程的示意圖。從圖2可以看出,本發(fā)明實(shí)施例所述的IR接口 C&M消息的監(jiān)聽方法主要可以包括以下幾個(gè)過程:分離數(shù)據(jù)流、現(xiàn)場可編程門陣列(Field Programmable Gate Array, FPGA)處理、IP重組(IP是英文Internet Protocol (網(wǎng)絡(luò)之間互連的協(xié)議)的縮寫)、TCP重組、C&M消息解析和應(yīng)用界面展現(xiàn)。下面,分別對上述幾個(gè)過程進(jìn)行描述。1、分離數(shù)據(jù)流首先,在BBU和RRU之間正常通信的過程中,可以通過分光器分離出BBU向RRU發(fā)送的第一數(shù)據(jù)流和RRU向BBU發(fā)送的第二數(shù)據(jù)流。該過程可以對應(yīng)實(shí)施例一中的步驟100。
對于具體的分離過程,本領(lǐng)域技術(shù)人員根據(jù)實(shí)際經(jīng)驗(yàn)進(jìn)行相關(guān)處理即可,本發(fā)明實(shí)施例在此不再詳細(xì)論述。2、FPGA 處理在分離出第一數(shù)據(jù)流和第二數(shù)據(jù)流之后,可以進(jìn)一步從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包。本發(fā)明實(shí)施例中,F(xiàn)PGA主要完成光纖信號(即第一數(shù)據(jù)流和第二數(shù)據(jù)流)的解析,獲取以太數(shù)據(jù)包,然后再通過以太驅(qū)動(dòng)獲取IP數(shù)據(jù)包。因此,上述分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包的步驟(步驟A)可以包括:al,通過現(xiàn)場可編程門陣列分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取控制和管理通道中的以太數(shù)據(jù)包;a2,通過以太驅(qū)動(dòng)從所述以太數(shù)據(jù)包中提取IP數(shù)據(jù)包。對于上述FPGA和以太驅(qū)動(dòng)的具體數(shù)據(jù)處理過程,本領(lǐng)域技術(shù)人員根據(jù)實(shí)際經(jīng)驗(yàn)進(jìn)行相關(guān)處理即可,本發(fā)明實(shí)施例在此不再詳細(xì)論述。3、IP 重組本發(fā)明實(shí)施例中,IP重組過程主要是完成對分片數(shù)據(jù)的重組,還原出分片前的數(shù)據(jù)包,然后交給TCP層。上述得到的IP數(shù)據(jù)包可以包括分片的IP數(shù)據(jù)包和未分片的IP數(shù)據(jù)包。本發(fā)明實(shí)施例中,IP數(shù)據(jù)包是否為分片的IP數(shù)據(jù)包可以通過該IP數(shù)據(jù)包的大小進(jìn)行設(shè)定。例如,可以設(shè)定大于或等于1000字節(jié)的IP數(shù)據(jù)包作為未分片的IP數(shù)據(jù)包,設(shè)定小于1000字節(jié)的IP數(shù)據(jù)包作為分片的IP數(shù)據(jù)包,本發(fā)明實(shí)施例對此并不加以限制。其中,每個(gè)IP數(shù)據(jù)包可以包括各自對應(yīng)的IP地址、端口號和標(biāo)識號,等等。該過程中可以根據(jù)所述IP數(shù)據(jù)包對對應(yīng)的IP地址、端口號和標(biāo)識號對所述IP數(shù)據(jù)包進(jìn)行IP重組,并從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包(步驟B)。如圖3所示,是本發(fā)明實(shí)施例二所述的IP重組過程的示意圖。從圖中可以看出,本發(fā)明實(shí)施例可以針對分片的IP數(shù)據(jù)包和未分片的IP數(shù)據(jù)包執(zhí)行不同的操作。從以太驅(qū)動(dòng)得到的IP數(shù)據(jù)包中,沒有分片的IP數(shù)據(jù)包將直接進(jìn)行TCP重組處理,分片的IP數(shù)據(jù)包分配IP緩沖池存儲,所述IP包緩沖池可以包括多個(gè)IP緩沖鏈表,可以并根據(jù)分片的IP數(shù)據(jù)的IP地址、端口號和標(biāo)識號掛入單獨(dú)的IP緩沖鏈表中。掛入后檢查IP數(shù)據(jù)包是否完整,完整則轉(zhuǎn)交TCP重組處理,否則繼續(xù)等待新的IP數(shù)據(jù)包,超時(shí)未收到缺少的分片則將整個(gè)IP鏈表上的IP數(shù)據(jù)包丟棄。具體的,上述步驟B可以包括:bl,直接從未分片的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;本發(fā)明實(shí)施例中,可以直接從沒有分片的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包,并進(jìn)行TCP重組過程。b2,分配用于存儲IP數(shù)據(jù)包的IP包緩沖池;對于分片的IP數(shù)據(jù)包,首先可以分配用于存儲IP數(shù)據(jù)包的IP包緩沖池,所述IP包緩沖池可以包括多個(gè)IP緩沖鏈表,每個(gè)IP緩沖鏈表包括各自對應(yīng)的IP地址和端口號。圖3中每個(gè)分片通道可以對應(yīng)一個(gè)IP緩沖鏈表。b3,將分片的IP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述分片的IP數(shù)據(jù)包具有相同的IP地址和端口號的IP緩沖鏈表上;每個(gè)IP數(shù)據(jù)包都包括一個(gè)標(biāo)識號,每個(gè)IP數(shù)據(jù)包的標(biāo)識號之間是有順序關(guān)系的。例如,每個(gè)IP數(shù)據(jù)包的大小為100字節(jié),則第一個(gè)IP數(shù)據(jù)包的標(biāo)識號可以為1,那么第二個(gè)IP數(shù)據(jù)包的標(biāo)識號為101,依次類推,第三個(gè)IP數(shù)據(jù)包的標(biāo)識號為201,等等。本發(fā)明實(shí)施例在將分片的IP數(shù)據(jù)包掛入IP緩沖鏈表上時(shí),是按照分片的IP數(shù)據(jù)包的標(biāo)識號從小到大的順序掛入的,并且將每個(gè)分片的IP數(shù)據(jù)包掛入與所述分片的IP數(shù)據(jù)包具有相同的IP地址和端口號的IP緩沖鏈表上。b4,判斷每個(gè)IP緩沖鏈表在預(yù)設(shè)的第一時(shí)間內(nèi)是否收到完整的IP數(shù)據(jù)包;b5,當(dāng)收到時(shí),從所述IP緩沖鏈表上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;b6,當(dāng)未收到時(shí),丟棄所述IP緩沖鏈表上的IP數(shù)據(jù)包。針對每個(gè)IP緩沖鏈表,可以判斷在預(yù)設(shè)的第一時(shí)間是否收到完整的IP數(shù)據(jù)包。如圖3所示,可以包括以下3種情況:(I)順序加入順序到達(dá)該種情況表明在所述第一時(shí)間內(nèi),與IP緩沖鏈表I (即分片通道I)的IP地址和端口號相同的分片的IP數(shù)據(jù)包是按照標(biāo)識號的順序加入順序到達(dá)的,并且在所述第一時(shí)間內(nèi)收到了完整的IP數(shù)據(jù)包。此時(shí),即可從IP緩沖鏈表I上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包,并進(jìn)行TCP重組處理。(2)亂序到達(dá)該種情況表明在所述第一時(shí)間內(nèi),與IP緩沖鏈表2 (即分片通道2)的IP地址和端口號相同的分片的IP數(shù)據(jù)包并不是完全按照標(biāo)識號的順序加入的,在這種情況下,IP重組可以自動(dòng)按照標(biāo)識號的順序?qū)y序到達(dá)的IP數(shù)據(jù)包插入對應(yīng)的位置。例如,收到的第一個(gè)IP數(shù)據(jù)包的標(biāo)識號為1,第二個(gè)IP數(shù)據(jù)包的標(biāo)識號為201,那么如果第三個(gè)IP數(shù)據(jù)包的標(biāo)識號為101,則可以自動(dòng)將標(biāo)識號為101的IP數(shù)據(jù)包插入到標(biāo)識號為I和標(biāo)識號為201的IP數(shù)據(jù)包之間。如果在所述第一時(shí)間內(nèi)收到了完整的IP數(shù)據(jù)包,此時(shí),即可從該IP緩沖鏈表2上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包,并進(jìn)行TCP重組處理。(3)接收超時(shí)該種情況表明在所述第一時(shí)間內(nèi),沒有收到完整的與IP緩沖鏈表3 (即分片通道3)的IP地址和端口號相同的IP數(shù)據(jù)包,此時(shí)可以丟棄所述IP緩沖鏈表3上的IP數(shù)據(jù)包。針對接收超時(shí)的情況,可以是IP緩沖鏈表I上的順序加入順序到達(dá)的情況,也可以是IP緩沖鏈表2上的亂序到達(dá)的情況,本發(fā)明實(shí)施例對此并不加以限制。上述方法主要是依據(jù)時(shí)間判斷的,例如,可以設(shè)置所述第一時(shí)間為ls,則可以判斷在Is內(nèi)是否收到完整的IP數(shù)據(jù)包。當(dāng)然,本發(fā)明實(shí)施例還可以通過其他方法進(jìn)行判斷。例如依據(jù)分片個(gè)數(shù),具體的,可以設(shè)置分片個(gè)數(shù)為1000個(gè),則可以判斷在后續(xù)的1000個(gè)分片的IP數(shù)據(jù)包內(nèi),IP緩沖鏈表是否收到完整的分片的IP數(shù)據(jù)包。本發(fā)明實(shí)施例中可以根據(jù)IP數(shù)據(jù)包的大小判斷是否完整。例如,可以預(yù)先設(shè)置大小為1000字節(jié)的IP數(shù)據(jù)包為一個(gè)完整的IP數(shù)據(jù)包,如果每個(gè)分片的IP數(shù)據(jù)包的大小為100字節(jié),則可以判斷當(dāng)IP緩沖鏈表上的IP數(shù)據(jù)包的大小為1000字節(jié)時(shí)(即收到10個(gè)分片的IP數(shù)據(jù)包),即為收到了完整的IP數(shù)據(jù)包。當(dāng)然,還可以通過其他方式判斷IP數(shù)據(jù)包是否完整,本發(fā)明實(shí)施例對此并不加以限制。4、TCP 重組本發(fā)明實(shí)施例中,在從上述IP重組中獲得TCP數(shù)據(jù)包之后,TCP層主要是完成對TCP數(shù)據(jù)包的重組,并進(jìn)行丟失的數(shù)據(jù)的處理,最大限度的得到TCP數(shù)據(jù)流,然后進(jìn)行C&M消息解析處理。其中,每個(gè)TCP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號,等等。該過程中可以根據(jù)所述TCP數(shù)據(jù)包對應(yīng)的IP地址、端口號和標(biāo)識號對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流(步驟C)。如圖4所示,是本發(fā)明實(shí)施例二所述的TCP重組過程的示意圖。從IP重組中獲得TCP數(shù)據(jù)包之后,可以分配TCP包緩沖池存儲TCP數(shù)據(jù)包,所述TCP包緩沖池可以包括多個(gè)TCP緩沖鏈表,可以把TCP數(shù)據(jù)包掛在相應(yīng)的TCP緩沖鏈表上,并完成丟失數(shù)據(jù)的補(bǔ)O填充。將恢復(fù)好的TCP數(shù)據(jù)流放進(jìn)環(huán)形先入先出隊(duì)列(First InputFirst Output, FIFO)中給后續(xù)的C&M消息解析處理。具體的,上述步驟C可以包括:Cl,分配用于存儲TCP數(shù)據(jù)包的TCP包緩沖池;對于TCP數(shù)據(jù)包,首先可以分配用于存儲TCP數(shù)據(jù)包的TCP包緩沖池,所述TCP包緩沖池可以包括多個(gè)TCP緩沖鏈表,每個(gè)TCP緩沖鏈表包括各自對應(yīng)的IP地址和端口號。圖4中每個(gè)通道可以對應(yīng)一個(gè)TCP緩沖鏈表。c2,將所述TCP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述TCP數(shù)據(jù)包具有相同的IP地址和端口號的TCP緩沖鏈表上;每個(gè)TCP數(shù)據(jù)包都包括一個(gè)標(biāo)識號,每個(gè)TCP數(shù)據(jù)包的標(biāo)識號之間是有順序關(guān)系的。例如,每個(gè)TCP數(shù)據(jù)包的大小為100字節(jié),則第一個(gè)TCP數(shù)據(jù)包的標(biāo)識號可以為1,那么第二個(gè)TCP數(shù)據(jù)包的標(biāo)識號為101,依次類推,第三個(gè)TCP數(shù)據(jù)包的標(biāo)識號為201,等等。本發(fā)明實(shí)施例在將TCP數(shù)據(jù)包掛入TCP緩沖鏈表上時(shí),是按照TCP數(shù)據(jù)包的標(biāo)識號從小到大的順序掛入的,并且將每個(gè)TCP數(shù)據(jù)包掛入與所述TCP數(shù)據(jù)包具有相同的IP地址和端口號的TCP緩沖鏈表上。c3,判斷每個(gè)TCP緩沖鏈表在預(yù)設(shè)的第二時(shí)間內(nèi)是否收到連續(xù)的TCP數(shù)據(jù)包;c4,當(dāng)收到時(shí),將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流;c5,當(dāng)未收到時(shí),用零補(bǔ)充未收到的TCP數(shù)據(jù)包,并將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流。針對每個(gè)TCP緩沖鏈表,可以判斷在預(yù)設(shè)的第二時(shí)間是否收到連續(xù)的TCP數(shù)據(jù)包。如圖4所示,可以包括以下3種情況:( i )順序加入順序到達(dá)該種情況表明在所述第二時(shí)間內(nèi),與TCP緩沖鏈表I (即通道I)的IP地址和端口號相同的TCP數(shù)據(jù)包是按照標(biāo)識號的順序加入順序到達(dá)的,并且在所述第二時(shí)間內(nèi)收到了連續(xù)的TCP數(shù)據(jù)包。此時(shí),即可將所述TCP緩沖鏈表I上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流,并進(jìn)行C&M消息解析處理。
(ii)亂序到達(dá)該種情況表明在所述第二時(shí)間內(nèi),與TCP緩沖鏈表2 (即通道2)的IP地址和端口號相同的TCP數(shù)據(jù)包并不是完全按照標(biāo)識號的順序加入的,在這種情況下,TCP重組可以自動(dòng)按照標(biāo)識號的順序?qū)y序到達(dá)的TCP數(shù)據(jù)包插入對應(yīng)的位置。例如,收到的第一個(gè)TCP數(shù)據(jù)包的標(biāo)識號為1,第二個(gè)TCP數(shù)據(jù)包的標(biāo)識號為201,那么如果第三個(gè)TCP數(shù)據(jù)包的標(biāo)識號為101,則可以自動(dòng)將標(biāo)識號為101的TCP數(shù)據(jù)包插入到標(biāo)識號為I和標(biāo)識號為201的TCP數(shù)據(jù)包之間。如果在所述第二時(shí)間內(nèi)收到了的TCP數(shù)據(jù)包是連續(xù)的,此時(shí),即將所述TCP緩沖鏈表2上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流,并進(jìn)行C&M消息解析處理。(iii)接收超時(shí)該種情況表明在所述第二時(shí)間內(nèi),沒有收到連續(xù)的與TCP緩沖鏈表3 (即通道3)的IP地址和端口號相同的TCP數(shù)據(jù)包,此時(shí)可以用零補(bǔ)充未收到的TCP數(shù)據(jù)包,并將所述TCP緩沖鏈表3上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流。本發(fā)明實(shí)施例中,每次加入新的TCP數(shù)據(jù)包之后,可以檢查該TCP緩沖鏈表上的TCP數(shù)據(jù)包的標(biāo)識號是否連續(xù),如果連續(xù),則可以說明該TCP緩沖鏈表收到了連續(xù)的TCP數(shù)據(jù)包。例如,在第二時(shí)間內(nèi)TCP緩沖鏈表I上收到的TCP的標(biāo)識號依次為I和101,則為連續(xù)的TCP數(shù)據(jù)包;在第二時(shí)間內(nèi)TCP緩沖鏈表2上收到的TCP的標(biāo)識號依次為1、101和201,其中,101是在收到201之后收到的,則TCP重組將自動(dòng)將其插入I和201之間,因此也為連續(xù)的TCP數(shù)據(jù)包;在第二時(shí)間內(nèi)TCP緩沖鏈表3上收到的TCP的標(biāo)識號依次為1、101和301,但是在第二時(shí)間內(nèi)沒有收到完整的201,此時(shí)即可以用O補(bǔ)充未收到的TCP數(shù)據(jù)包201,并將該TCP數(shù)據(jù)包201插入101和301之間。需要說明的是,如果上述IP重組和TCP重組的過程中,某一個(gè)分片的IP數(shù)據(jù)包在掛入IP緩沖鏈表時(shí),或者某一個(gè)TCP數(shù)據(jù)包在掛入TCP緩沖鏈表時(shí),IP緩沖鏈表或者TCP緩沖鏈表的IP地址和標(biāo)識號均與該分片的IP數(shù)據(jù)包或者TCP數(shù)據(jù)包的IP地址和標(biāo)識號不同,則IP包緩沖池或者TCP包緩沖池可以自動(dòng)生成與該分片的IP數(shù)據(jù)包或者TCP數(shù)據(jù)包的IP地址和標(biāo)識號相同的IP緩沖鏈表或者TCP緩沖鏈表。上述步驟A、步驟B和步驟C可以對應(yīng)于實(shí)施例一中的步驟102。5、C&M消息解析在獲取到TCP數(shù)據(jù)流之后,即可從所述TCP數(shù)據(jù)流中解析出有效的C&M消息。本發(fā)明實(shí)施例是對C&M消息進(jìn)行監(jiān)聽,在監(jiān)聽模式下不能保證接收到完整的TCP數(shù)據(jù)流,因此,本發(fā)明實(shí)施例可以從不完整的TCP數(shù)據(jù)流中獲取C&M消息。本發(fā)明實(shí)施例可以針對心跳幀進(jìn)行檢測。C&M消息中心跳幀是一個(gè)比較有特點(diǎn)的幀,幀編號171或181,長度是定值一一 OxOOOOOOOF。根據(jù)這個(gè)8個(gè)連續(xù)的字節(jié)可以初步判定心跳幀的幀頭。在判定幀頭后,按照C&M消息的格式進(jìn)行檢查,如果正確將該消息發(fā)送給應(yīng)用界面。如果發(fā)現(xiàn)錯(cuò)誤,則認(rèn)為同步丟失,再次進(jìn)入心跳幀檢測的狀態(tài)。具體的,所述從所述TCP數(shù)據(jù)流中解析出有效的C&M消息的步驟可以包括:dl,從所述TCP數(shù)據(jù)流中提取初始控制和管理消息;本發(fā)明實(shí)施例中,首先可以從上述TCP數(shù)據(jù)流中提取初始C&M消息,之后再對初始C&M消息進(jìn)行檢測,解析出其中有效的C&M消息。d2,從所述初始控制和管理消息中檢測心跳幀;d3,判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確;d4,當(dāng)正確時(shí),將所述數(shù)據(jù)幀確定為有效的控制和管理消息;d5,當(dāng)不正確時(shí),繼續(xù)從所述初始控制和管理消息中檢測心跳幀。本發(fā)明實(shí)施例中,可以根據(jù)C&M消息的結(jié)構(gòu)進(jìn)行檢測,如圖5所示,是C&M消息的結(jié)構(gòu)示意圖。具體的解析方法可以參照圖6,所述解析過程可以包括:步驟601,等待心跳幀編號171或181狀態(tài);首先,可以檢測所述初始控制和管理消息中是否收到心跳幀編號(即171或181),如果收到所述心跳幀編號,則執(zhí)行步驟602。步驟602,等待心跳幀固定長度狀態(tài)。當(dāng)收到心跳幀編號時(shí),可以進(jìn)一步檢測是否收到心跳幀固定長度(即OxOOOOOOOF),如果收到心跳幀固定長度,則可以確定所述幀編號對應(yīng)的幀為心跳幀,并執(zhí)行步驟603。上述步驟601-步驟602可以對應(yīng)d2中從所述初始控制和管理消息中檢測心跳幀的過程。檢測出心跳幀之后,可以通過步驟603-步驟611判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確(d4),該判斷過程即為根據(jù)圖5所示的結(jié)構(gòu)進(jìn)行的判斷。步驟603,等待幀編號狀態(tài)。該步驟主要是檢測在所述心跳幀后是否收到正確的數(shù)據(jù)幀的幀編號。如果收到正確的數(shù)據(jù)幀的幀編號,則可以執(zhí)行步驟604 ;如果收到的幀編號不正確(例如幀編號不在正常范圍內(nèi)),則可以確定該數(shù)據(jù)幀的格式不正確,并返回步驟601。步驟604,等待長度狀態(tài)。如果收到數(shù)據(jù)幀的長度,則執(zhí)行步驟605,否則繼續(xù)等待。步驟605,等待RRU ID狀態(tài)。如果收到RRU ID,則執(zhí)行步驟606,否則繼續(xù)等待。步驟606,等待BBU ID狀態(tài)。如果收到BBU ID,則執(zhí)行步驟607,否則繼續(xù)等待。步驟607,等待光口號狀態(tài)。如果收到光口號,則執(zhí)行步驟608,否則繼續(xù)等待。步驟608,等待流水號狀態(tài)。如果收到流水號,則執(zhí)行步驟609,否則繼續(xù)等待。步驟609,等待IE標(biāo)志狀態(tài)。當(dāng)收到正確的數(shù)據(jù)幀的幀編號時(shí),檢測是否依次收到數(shù)據(jù)幀的長度、RRU ID和BBUID、以及光口號和流水號。當(dāng)依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號時(shí),可以檢測是否收到正確的IE標(biāo)志。如果收到正確的IE標(biāo)志,則可以執(zhí)行步驟610 ;如果收到的IE標(biāo)志不正確(例如IE標(biāo)志不在正常范圍內(nèi)),則可以確定該數(shù)據(jù)幀的格式不正確,并返回步驟601。步驟610,等待IE長度狀態(tài)。
當(dāng)收到正確的IE標(biāo)志時(shí),可以進(jìn)一步檢測是否收到正確的IE長度。如果收到正確的IE長度,則可以執(zhí)行步驟611 ;如果收到的IE長度不正確(例如IE長度不在正常范圍內(nèi)),則可以確定該數(shù)據(jù)幀的格式不正確,并返回步驟601。步驟611,等待IE數(shù)據(jù)狀態(tài)。當(dāng)收到正確的IE長度時(shí),可以等待IE數(shù)據(jù)狀態(tài),并比較IE長度與數(shù)據(jù)幀的長度。從圖5可以看出,每個(gè)數(shù)據(jù)幀中可以包括η個(gè)IE。當(dāng)IE長度小于數(shù)據(jù)幀的長度時(shí),可以返回步驟609檢測下一個(gè)IE ;當(dāng)IE長度等于數(shù)據(jù)幀的長度時(shí)(即所有的IE均檢測完,并且最后一個(gè)IE的長度正好等于數(shù)據(jù)幀的長度),確定所述數(shù)據(jù)幀的格式正確,并且返回步驟603檢測下一個(gè)數(shù)據(jù)幀;當(dāng)IE長度大于數(shù)據(jù)幀的長度時(shí),可以確定所述數(shù)據(jù)幀的格式不正確,并返回步驟601。對于上述各個(gè)正常范圍,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際經(jīng)驗(yàn)進(jìn)行相關(guān)處理,本發(fā)明實(shí)施例對具體的數(shù)值并不加以限制。6、應(yīng)用界面展現(xiàn)對于檢測出的格式正確的數(shù)據(jù)幀,可以將其確定為有效的控制和管理消息,并提供給應(yīng)用界面進(jìn)行展現(xiàn)。在應(yīng)用界面中,可以很直觀的展現(xiàn)C&M消息,并且,如果發(fā)現(xiàn)出現(xiàn)錯(cuò)誤,則可以進(jìn)行告警提示。例如,如果BBU發(fā)送給RRU的消息為A,RRU應(yīng)該返回給BBU的消息為B,而實(shí)際返回的消息為C,此時(shí)即出現(xiàn)錯(cuò)誤,可以進(jìn)行告警。并且,可以根據(jù)監(jiān)聽的C&M消息判斷出是RRU側(cè)存在問題,因此可以對RRU進(jìn)行維護(hù)。最后,需要說明的是,上述的以太數(shù)據(jù)包、IP數(shù)據(jù)包、TCP數(shù)據(jù)包、以及C&M消息是分別從第一數(shù)據(jù)流和第二數(shù)據(jù)流中得到的,它們均包括了兩個(gè)方向的數(shù)據(jù)。由于對于兩個(gè)方向的數(shù)據(jù)的處理過程相同,本發(fā)明實(shí)施例只是從整體進(jìn)行了介紹,但是應(yīng)該明晰其實(shí)際上是分別對兩個(gè)方向的數(shù)據(jù)進(jìn)行上述各種處理。本發(fā)明實(shí)施例可以在BBU和RRU通信的過程中,分離出兩個(gè)方向的C&M消息,通過對這兩個(gè)方向的C&M消息進(jìn)行分析,可以更加準(zhǔn)確地判斷出BBU和RRU在通信過程中的問題。實(shí)施例三:參照圖7,示出了本發(fā)明實(shí)施例三所述的一種IR接口控制和管理消息的監(jiān)聽系統(tǒng)的結(jié)構(gòu)框圖,所述系統(tǒng)可以包括:分離模塊700、數(shù)據(jù)流解析模塊702和消息解析模塊704。其中,分離模塊700,用于在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流;所述分離模塊700可以通過分光器分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流。數(shù)據(jù)流解析模塊702,用于分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流;所述數(shù)據(jù)流解析模塊702可以包括:IP數(shù)據(jù)包獲取子模塊,用于分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包;
TCP數(shù)據(jù)包獲取子模塊,用于對所述IP數(shù)據(jù)包進(jìn)行IP重組,從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包;生成子模塊,用于對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流。其中,所述IP數(shù)據(jù)包獲取子模塊可以包括:以太數(shù)據(jù)包獲取子單元,用于通過現(xiàn)場可編程門陣列分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取控制和管理通道中的以太數(shù)據(jù)包;IP數(shù)據(jù)包提取子單元,用于通過以太驅(qū)動(dòng)從所述以太數(shù)據(jù)包中提取IP數(shù)據(jù)包。所述IP數(shù)據(jù)包包括分片的IP數(shù)據(jù)包和未分片的IP數(shù)據(jù)包,每個(gè)IP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號。所述TCP數(shù)據(jù)包獲取子模塊可以包括:直接提取子單元,用于直接從未分片的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;IP包緩沖池分配子單元,用于分配用于存儲IP數(shù)據(jù)包的IP包緩沖池;所述IP包緩沖池包括多個(gè)IP緩沖鏈表,每個(gè)IP緩沖鏈表包括各自對應(yīng)的IP地址和端口號;IP數(shù)據(jù)包掛入子單元,用于將分片的IP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述分片的IP數(shù)據(jù)包具有相同的IP地址和端口號的IP緩沖鏈表上;IP完整判斷子單元,用于判斷每個(gè)IP緩沖鏈表在預(yù)設(shè)的第一時(shí)間內(nèi)是否收到完整的IP數(shù)據(jù)包;第一處理子單元,用于當(dāng)IP完整判斷子單元的判斷結(jié)果為收到時(shí),從所述IP緩沖鏈表上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;當(dāng)IP完整判斷子單元的判斷結(jié)果為未收到時(shí),丟棄所述IP緩沖鏈表上的IP數(shù)據(jù)包。每個(gè)TCP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號。所述生成子模塊可以包括:TCP包緩沖池分配子單元,用于分配用于存儲TCP數(shù)據(jù)包的TCP包緩沖池;所述TCP包緩沖池包括多個(gè)TCP緩沖鏈表,每個(gè)TCP緩沖鏈表包括各自對應(yīng)的IP地址和端口號;TCP數(shù)據(jù)包掛入子單元,用于將所述TCP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述TCP數(shù)據(jù)包具有相同的IP地址和端口號的TCP緩沖鏈表上;TCP連續(xù)判斷子單元,用于判斷每個(gè)TCP緩沖鏈表在預(yù)設(shè)的第二時(shí)間內(nèi)是否收到連續(xù)的TCP數(shù)據(jù)包;第二處理子單元,用于當(dāng)TCP連續(xù)判斷子單元的判斷結(jié)果為收到時(shí),將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流;當(dāng)TCP連續(xù)判斷子單元的判斷結(jié)果為未收到時(shí),用零補(bǔ)充未收到的TCP數(shù)據(jù)包,并將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流。消息解析模塊704,用于從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息。所述消息解析模塊704可以包括:初始消息提取子模塊,用于從所述TCP數(shù)據(jù)流中提取初始控制和管理消息;心跳幀檢測子模塊,用于從所述初始控制和管理消息中檢測心跳幀;格式判斷子模塊,用于判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確;有效消息確定子模塊,用于當(dāng)格式判斷子模塊的判斷結(jié)果為正確時(shí),將所述數(shù)據(jù)幀確定為有效的控制和管理消息;所述心跳幀檢測子模塊還用于當(dāng)格式判斷子模塊的判斷結(jié)果為不正確時(shí),繼續(xù)從所述初始控制和管理消息中檢測心跳中貞。其中,所述心跳幀檢測子模塊可以包括:第一編號檢測子單元,用于檢測所述初始控制和管理消息中是否收到心跳幀編號;長度檢測子單元,用于當(dāng)編號檢測子單元的檢測結(jié)果為收到心跳幀編號時(shí),檢測是否收到心跳幀固定長度;心跳幀確定子單元,用于當(dāng)長度檢測子單元的檢測結(jié)果為收到心跳幀固定長度時(shí),確定所述幀編號對應(yīng)的幀為心跳幀。所述格式判斷子模塊可以包括:第二編號檢測子單元,用于檢測在所述心跳幀后是否收到正確的數(shù)據(jù)幀的幀編號;依次檢測子單元,用于當(dāng)?shù)诙幪枡z測子單元的檢測結(jié)果為收到正確的數(shù)據(jù)幀的幀編號時(shí),檢測是否依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號;IE標(biāo)志檢測子單元,用于當(dāng)依次檢測子單元的檢測結(jié)果為依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號時(shí),檢測是否收到正確的IE標(biāo)志;IE長度檢測子單元,用于當(dāng)IE標(biāo)志檢測子單元的檢測結(jié)果為收到正確的IE標(biāo)志時(shí),檢測是否收到正確的IE長度;比較子單元,用于當(dāng)IE長度檢測子單元的檢測結(jié)果為收到正確的IE長度時(shí),等待IE數(shù)據(jù)狀態(tài),并比較IE長度與數(shù)據(jù)幀的長度;格式確定子單元,用于當(dāng)IE長度等于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式正確;當(dāng)數(shù)據(jù)幀的幀編號不正確,或者IE標(biāo)志不正確,或者IE長度不正確,或者IE長度大于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式不正確。對于系統(tǒng)實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。 本發(fā)明實(shí)施例可以在BBU和RRU通信的過程中,分離出BBU向RRU發(fā)送的第一數(shù)據(jù)流、以及RRU向BBU發(fā)送的第二數(shù)據(jù)流,并且可以分別對這兩個(gè)方向的數(shù)據(jù)流進(jìn)行分析,最后解析出有效的控制和管理消息。由于其中包括了兩個(gè)方向的控制和管理消息,因此,當(dāng)?shù)贸隹刂坪凸芾硐⒉环螴R接口規(guī)范時(shí),通過對這兩個(gè)方向的控制和管理消息進(jìn)行分析,可以更加準(zhǔn)確地判斷出具體是BBU側(cè)還是RRU側(cè)出現(xiàn)了問題。本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。本發(fā)明實(shí)施例可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本發(fā)明,在這些分布式計(jì)算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲介質(zhì)中。對于前述的各方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本發(fā)明,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作和模塊并不一定是本發(fā)明所必須的。最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。以上對本發(fā)明所提供的一種IR接口控制和管理消息的監(jiān)聽方法和系統(tǒng),進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助 理解本發(fā)明的方法及其核心思想;同時(shí),對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1.一種IR接口控制和管理消息的監(jiān)聽方法,其特征在于,包括: 在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流; 分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流; 從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,通過分光器分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息,包括: 從所述TCP數(shù)據(jù)流中提取初始控制和管理消息; 從所述初始控制和管理消息中檢測心跳幀; 判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確; 當(dāng)正確時(shí),將所述數(shù)據(jù)幀確定為有效的控制和管理消息; 當(dāng)不正確時(shí),繼續(xù)從所述初始控制和管理消息中檢測心跳幀。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述從所述初始控制和管理消息中檢測心跳巾貞,包括: 檢測所述初始控制和管理消息中是否收到心跳幀編號; 當(dāng)收到心跳幀編號時(shí),檢測是否收到心跳幀固定長度; 當(dāng)收到心跳幀固定長度時(shí),確定所述幀編號對應(yīng)的幀為心跳幀。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確,包括: 檢測在所述心跳幀后是否收到正確的數(shù)據(jù)幀的幀編號; 當(dāng)收到正確的數(shù)據(jù)幀的幀編號時(shí),檢測是否依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號; 當(dāng)依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號時(shí),檢測是否收到正確的IE標(biāo)志; 當(dāng)收到正確的IE標(biāo)志時(shí),檢測是否收到正確的IE長度; 當(dāng)收到正確的IE長度時(shí),等待IE數(shù)據(jù)狀態(tài),并比較IE長度與數(shù)據(jù)幀的長度; 當(dāng)IE長度等于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式正確; 當(dāng)數(shù)據(jù)幀的幀編號不正確,或者IE標(biāo)志不正確,或者IE長度不正確,或者IE長度大于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式不正確。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述分別從第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流,包括: 分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包; 對所述IP數(shù)據(jù)包進(jìn)行IP重組,從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包; 對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包,包括: 通過現(xiàn)場可編程門陣列分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取控制和管理通道中的以太數(shù)據(jù)包; 通過以太驅(qū)動(dòng)從所述以太數(shù)據(jù)包中提取IP數(shù)據(jù)包。
8.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述IP數(shù)據(jù)包包括分片的IP數(shù)據(jù)包和未分片的IP數(shù)據(jù)包,每個(gè)IP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號, 所述對所述IP數(shù)據(jù)包進(jìn)行IP重組,從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包,包括: 直接從未分片的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包; 分配用于存儲IP數(shù)據(jù)包的IP包緩沖池;所述IP包緩沖池包括多個(gè)IP緩沖鏈表,每個(gè)IP緩沖鏈表包括各自對應(yīng)的IP地址和端口號; 將分片的IP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述分片的IP數(shù)據(jù)包具有相同的IP地址和端口號的IP緩沖鏈表上; 判斷每個(gè)IP緩沖鏈表在預(yù)設(shè)的第一時(shí)間內(nèi)是否收到完整的IP數(shù)據(jù)包; 當(dāng)收到時(shí),從所述IP緩沖鏈表上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包; 當(dāng)未收到時(shí),丟棄所述IP緩沖鏈表上的IP數(shù)據(jù)包。
9.根據(jù)權(quán)利要求6所述的方法,其特征在于,每個(gè)TCP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號, 所述對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流,包括: 分配用于存儲TCP數(shù)據(jù)包的TCP包緩沖池;所述TCP包緩沖池包括多個(gè)TCP緩沖鏈表,每個(gè)TCP緩沖鏈表包括各自對應(yīng)的IP地址和端口號; 將所述TCP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述TCP數(shù)據(jù)包具有相同的IP地址和端口號的TCP緩沖鏈表上; 判斷每個(gè)TCP緩沖鏈表在預(yù)設(shè)的第二時(shí)間內(nèi)是否收到連續(xù)的TCP數(shù)據(jù)包; 當(dāng)收到時(shí),將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流; 當(dāng)未收到時(shí),用零補(bǔ)充未收到的TCP數(shù)據(jù)包,并將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流。
10.一種IR接口控制和管理消息的監(jiān)聽系統(tǒng),其特征在于,包括: 分離模塊,用于在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流; 數(shù)據(jù)流解析模塊,用于分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流; 消息解析模塊,用于從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述分離模塊通過分光器分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流。
12.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述消息解析模塊包括: 初始消息提取子模塊,用于從所述TCP數(shù)據(jù)流中提取初始控制和管理消息; 心跳幀檢測子模塊,用于從所述初始控制和管理消息中檢測心跳幀; 格式判斷子模塊,用于判斷所述心跳幀后的數(shù)據(jù)幀的格式是否正確; 有效消息確定子模塊,用于當(dāng)格式判斷子模塊的判斷結(jié)果為正確時(shí),將所述數(shù)據(jù)幀確定為有效的控制和管理消息; 所述心跳幀檢測子模塊還用于當(dāng)格式判斷子模塊的判斷結(jié)果為不正確時(shí),繼續(xù)從所述初始控制和管理消息中檢測心跳幀。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述心跳幀檢測子模塊包括: 第一編號檢測子單元,用于檢測所述初始控制和管理消息中是否收到心跳幀編號; 長度檢測子單元,用于當(dāng)編號檢測子單元的檢測結(jié)果為收到心跳幀編號時(shí),檢測是否收到心跳幀固定長度; 心跳幀確定子單元,用于當(dāng)長度檢測子單元的檢測結(jié)果為收到心跳幀固定長度時(shí),確定所述幀編號對應(yīng)的幀為心跳幀。
14.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述格式判斷子模塊包括: 第二編號檢測子單元,用于檢測在所述心跳幀后是否收到正確的數(shù)據(jù)幀的幀編號; 依次檢測子單元,用于當(dāng)?shù)诙幪枡z測子單元的檢測結(jié)果為收到正確的數(shù)據(jù)幀的幀編號時(shí),檢測是否依次收到數(shù)據(jù)幀的長度、RRU ID和BBU ID、以及光口號和流水號; IE標(biāo)志檢測子單元,用于當(dāng)依次檢測子單元的檢測結(jié)果為依次收到數(shù)據(jù)幀的長度、RRUID和BBU ID、以及光口號和流水號時(shí),檢測是否收到正確的IE標(biāo)志; IE長度檢測子單元,用于當(dāng)IE標(biāo)志檢測子單元的檢測結(jié)果為收到正確的IE標(biāo)志時(shí),檢測是否收到正確的IE長度; 比較子單元,用于當(dāng)IE長度檢測 子單元的檢測結(jié)果為收到正確的IE長度時(shí),等待IE數(shù)據(jù)狀態(tài),并比較IE長度與數(shù)據(jù)幀的長度; 格式確定子單元,用于當(dāng)IE長度等于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式正確;當(dāng)數(shù)據(jù)幀的幀編號不正確,或者IE標(biāo)志不正確,或者IE長度不正確,或者IE長度大于數(shù)據(jù)幀的長度時(shí),確定所述數(shù)據(jù)幀的格式不正確。
15.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述數(shù)據(jù)流解析模塊包括: IP數(shù)據(jù)包獲取子模塊,用于分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取IP數(shù)據(jù)包;TCP數(shù)據(jù)包獲取子模塊,用于對所述IP數(shù)據(jù)包進(jìn)行IP重組,從重組后的IP數(shù)據(jù)包中獲取TCP數(shù)據(jù)包; 生成子模塊,用于對所述TCP數(shù)據(jù)包進(jìn)行TCP重組,生成TCP數(shù)據(jù)流。
16.根據(jù)權(quán)利要求15所述的系統(tǒng),其特征在于,所述IP數(shù)據(jù)包獲取子模塊包括: 以太數(shù)據(jù)包獲取子單元,用于通過現(xiàn)場可編程門陣列分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中獲取控制和管理通道中的以太數(shù)據(jù)包; IP數(shù)據(jù)包提取子單元,用于通過以太驅(qū)動(dòng)從所述以太數(shù)據(jù)包中提取IP數(shù)據(jù)包。
17.根據(jù)權(quán)利要求15所述的系統(tǒng),其特征在于,所述IP數(shù)據(jù)包包括分片的IP數(shù)據(jù)包和未分片的IP數(shù)據(jù)包,每個(gè)IP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號, 所述TCP數(shù)據(jù)包獲取子模塊包括: 直接提取子單元,用于直接從未分片的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包; IP包緩沖池分配子單元,用于分配用于存儲IP數(shù)據(jù)包的IP包緩沖池;所述IP包緩沖池包括多個(gè)IP緩沖鏈表,每個(gè)IP緩沖鏈表包括各自對應(yīng)的IP地址和端口號; IP數(shù)據(jù)包掛入子單元,用于將分片的IP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述分片的IP數(shù)據(jù)包具有相同的IP地址和端口號的IP緩沖鏈表上; IP完整判斷子單元,用于判斷每個(gè)IP緩沖鏈表在預(yù)設(shè)的第一時(shí)間內(nèi)是否收到完整的IP數(shù)據(jù)包;第一處理子單元,用于當(dāng)IP完整判斷子單元的判斷結(jié)果為收到時(shí),從所述IP緩沖鏈表上的IP數(shù)據(jù)包中提取TCP數(shù)據(jù)包;當(dāng)IP完整判斷子單元的判斷結(jié)果為未收到時(shí),丟棄所述IP緩沖鏈表上的IP數(shù)據(jù)包。
18.根據(jù)權(quán)利要求15所述的系統(tǒng),其特征在于,每個(gè)TCP數(shù)據(jù)包包括各自對應(yīng)的IP地址、端口號和標(biāo)識號, 所述生成子模塊包括: TCP包緩沖池分配子單元,用于分配用于存儲TCP數(shù)據(jù)包的TCP包緩沖池;所述TCP包緩沖池包括多個(gè)TCP緩沖鏈表,每個(gè)TCP緩沖鏈表包括各自對應(yīng)的IP地址和端口號; TCP數(shù)據(jù)包掛入子單元,用于將所述TCP數(shù)據(jù)包按照標(biāo)識號從小到大的順序掛入與所述TCP數(shù)據(jù)包具有相同的IP地址和端口號的TCP緩沖鏈表上; TCP連續(xù)判斷子單元,用于判斷每個(gè)TCP緩沖鏈表在預(yù)設(shè)的第二時(shí)間內(nèi)是否收到連續(xù)的TCP數(shù)據(jù)包; 第二處理子單元,用于當(dāng)TCP連續(xù)判斷子單元的判斷結(jié)果為收到時(shí),將所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流;當(dāng)TCP連續(xù)判斷子單元的判斷結(jié)果為未收到時(shí),用零補(bǔ)充未收到的TCP數(shù)據(jù)包,并將 所述TCP緩沖鏈表上的TCP數(shù)據(jù)包作為TCP數(shù)據(jù)流。
全文摘要
本發(fā)明實(shí)施例提供了一種IR接口控制和管理消息的監(jiān)聽方法和系統(tǒng),以解決目前單側(cè)分析方法的判斷結(jié)果不準(zhǔn)確,公信力不夠的問題。其中,方法包括在基帶單元和射頻遠(yuǎn)端單元通信的過程中,分離出基帶單元向射頻遠(yuǎn)端單元發(fā)送的第一數(shù)據(jù)流、以及射頻遠(yuǎn)端單元向基帶單元發(fā)送的第二數(shù)據(jù)流;分別從所述第一數(shù)據(jù)流和第二數(shù)據(jù)流中解析出TCP數(shù)據(jù)流;從所述TCP數(shù)據(jù)流中解析出有效的控制和管理消息。本發(fā)明實(shí)施例通過對兩個(gè)方向的控制和管理消息進(jìn)行分析,可以更加準(zhǔn)確地判斷出具體是BBU側(cè)還是RRU側(cè)出現(xiàn)了問題。
文檔編號H04W92/12GK103152766SQ201310056580
公開日2013年6月12日 申請日期2013年2月22日 優(yōu)先權(quán)日2013年2月22日
發(fā)明者陳劍, 郭長旺, 薄理夫, 笪禹, 陳金濤 申請人:大唐移動(dòng)通信設(shè)備有限公司