一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法
【專利摘要】本發(fā)明公開了一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法,實(shí)現(xiàn)以太網(wǎng)與低速網(wǎng)絡(luò)之間的數(shù)據(jù)傳輸。以太網(wǎng)將讀取的以太網(wǎng)鏈路層數(shù)據(jù)包添加自定義包頭和數(shù)據(jù)包長度字段后存儲,并將存儲空間的地址和數(shù)據(jù)包長度緩存于數(shù)據(jù)緩沖隊(duì)列;低速網(wǎng)絡(luò)從數(shù)據(jù)緩沖隊(duì)列獲取地址和數(shù)據(jù)包長度后在存儲空間取出以太網(wǎng)鏈路層數(shù)據(jù)包并發(fā)送;低速網(wǎng)絡(luò)向以太網(wǎng)發(fā)送數(shù)據(jù)時,將接收到的數(shù)據(jù)包拼接成以太網(wǎng)鏈路層數(shù)據(jù)包發(fā)送。本發(fā)明方法將高速以太網(wǎng)收到的數(shù)據(jù)處理為其它網(wǎng)絡(luò)可以識別的數(shù)據(jù)格式,并通過緩沖方式降低數(shù)據(jù)傳送速度,使得低速網(wǎng)絡(luò)能夠全部接收,本發(fā)明方法能夠高效的處理異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)間的數(shù)據(jù)傳輸。
【專利說明】
一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種通信系統(tǒng)數(shù)據(jù)處理方法,特別涉及一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法。
【背景技術(shù)】
[0002]所謂異構(gòu)網(wǎng)絡(luò)(Heterogeneous Network)是一種類型的網(wǎng)絡(luò),由不同制造商生產(chǎn)的計(jì)算機(jī)、網(wǎng)絡(luò)設(shè)備和系統(tǒng)組成,大部分情況下運(yùn)行在不同的協(xié)議上支持不同的功能或應(yīng)用。由于僅用一種體系結(jié)構(gòu)的網(wǎng)絡(luò)(例如X.25網(wǎng)絡(luò))根本無法滿足所有用戶的需求,因此異構(gòu)網(wǎng)絡(luò)得到廣泛應(yīng)用。
[0003]不管使用的具體網(wǎng)絡(luò)采用什么樣的硬件結(jié)構(gòu),但只要網(wǎng)絡(luò)使用IP協(xié)議并給連接在網(wǎng)絡(luò)上的主機(jī)分配了合法的IP地址,那么連接到這種虛擬的IP互連網(wǎng)上的任何一對計(jì)算機(jī)都可以很方便地進(jìn)行通信。
[0004]因特網(wǎng)是由大量異構(gòu)的物理網(wǎng)絡(luò)互連而成的。這些物理網(wǎng)絡(luò)的幀格式是各式各樣的,它們的地址也可能是互不兼容的。路由器無法將一種格式的幀轉(zhuǎn)發(fā)到另一種網(wǎng)絡(luò),因?yàn)榱硪环N網(wǎng)絡(luò)無法識別與自己格式不同的幀的地址。路由器也不可能對不同的地址格式進(jìn)行轉(zhuǎn)換。為了解決這一問題,IP協(xié)議定義了 IP數(shù)據(jù)報(bào)的格式。所有連接在因特網(wǎng)中的路由器都能識別IP數(shù)據(jù)報(bào)的IP地址,因此能夠?qū)P數(shù)據(jù)報(bào)進(jìn)行轉(zhuǎn)發(fā)(在進(jìn)行轉(zhuǎn)發(fā)時當(dāng)然要調(diào)用ARP協(xié)議以便獲得相應(yīng)的硬件地址)。IP數(shù)據(jù)報(bào)是作為物理網(wǎng)絡(luò)的幀的數(shù)據(jù)部分,各個物理網(wǎng)絡(luò)在轉(zhuǎn)發(fā)幀時是根據(jù)幀的首部中的硬件地址而不看幀的數(shù)據(jù)部分,因此所有的物理網(wǎng)絡(luò)都看不見幀里面的IP數(shù)據(jù)報(bào)。
[0005]由于不同網(wǎng)絡(luò)中使用的數(shù)據(jù)幀格式、數(shù)據(jù)幀長度和數(shù)據(jù)傳輸速率不同,所以要實(shí)現(xiàn)以太網(wǎng)與其他低速網(wǎng)絡(luò)之間的通信,就必須對高速以太網(wǎng)收到的數(shù)據(jù)進(jìn)行處理,轉(zhuǎn)換為其它網(wǎng)絡(luò)可以識別的數(shù)據(jù)幀格式。在高速以太網(wǎng)與串口網(wǎng)絡(luò)通信中,串口通信速度遠(yuǎn)遠(yuǎn)低于以太網(wǎng)通信速度,因此在以太網(wǎng)和串口網(wǎng)絡(luò)之間進(jìn)行通信時,需要較大的數(shù)據(jù)緩沖隊(duì)列,但由于串口通信速度大幅下降,因此不能進(jìn)行實(shí)時的數(shù)據(jù)通信,只能進(jìn)行低速數(shù)據(jù)傳輸和交換。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的在于一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法,使用該方法可以實(shí)現(xiàn)高速以太網(wǎng)與低速網(wǎng)絡(luò)的互聯(lián)互通。
[0007]為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供了以下技術(shù)方案:
一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法,實(shí)現(xiàn)以太網(wǎng)與低速網(wǎng)絡(luò)之間的數(shù)據(jù)傳輸,包括以太網(wǎng)發(fā)送數(shù)據(jù)處理步驟、低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)處理步驟、低速網(wǎng)絡(luò)接收數(shù)據(jù)處理步驟;其中,
以太網(wǎng)發(fā)送數(shù)據(jù)處理步驟:從以太網(wǎng)卡設(shè)備中讀取以太網(wǎng)鏈路層數(shù)據(jù)包;然后根據(jù)以太網(wǎng)鏈路層數(shù)據(jù)包的大小、自定義的包頭信息長度和數(shù)據(jù)包長度字段的長度分配存儲空間;將自定義的包頭信息以及數(shù)據(jù)包長度字段依次放入存儲空間,再將以太網(wǎng)鏈路層數(shù)據(jù)包拷貝到存儲空間內(nèi);最后將存儲空間的起始地址和數(shù)據(jù)包長度存入數(shù)據(jù)緩沖隊(duì)列的隊(duì)尾;
低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)處理步驟:檢查數(shù)據(jù)緩沖隊(duì)列是否為空,若數(shù)據(jù)緩沖隊(duì)列為空,則等待以太網(wǎng)鏈路層數(shù)據(jù)包填入數(shù)據(jù)緩沖隊(duì)列;否則,從數(shù)據(jù)緩沖隊(duì)列的隊(duì)頭取出數(shù)據(jù)包的存儲空間的起始地址和數(shù)據(jù)包長度,然后根據(jù)數(shù)據(jù)包長度,將存儲空間地址處存放的以太網(wǎng)鏈路層數(shù)據(jù)包取出,并通過低速網(wǎng)絡(luò)接口設(shè)備發(fā)送至低速網(wǎng)絡(luò)。
[0008]低速網(wǎng)絡(luò)接收數(shù)據(jù)處理步驟:從低速網(wǎng)絡(luò)設(shè)備中讀取數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的包頭尋找數(shù)據(jù)包的起始位置,然后根據(jù)長度信息拼接成以太網(wǎng)鏈路層數(shù)據(jù)包,再將拼接完成的以太網(wǎng)鏈路層數(shù)據(jù)包發(fā)送至以太網(wǎng)卡設(shè)備。
[0009]與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果:由于不同網(wǎng)絡(luò)中使用的幀格式、數(shù)據(jù)速率和數(shù)據(jù)幀長不同,所以要實(shí)現(xiàn)以太網(wǎng)與其他低速網(wǎng)絡(luò)之間的通信,就必須對高速以太網(wǎng)接收到的數(shù)據(jù)進(jìn)行處理,轉(zhuǎn)換為其它網(wǎng)絡(luò)可以識別的數(shù)據(jù)格式。本發(fā)明基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法,將高速以太網(wǎng)收到的數(shù)據(jù)處理為其它網(wǎng)絡(luò)可以識別的數(shù)據(jù)格式,并通過緩沖方式降低數(shù)據(jù)傳送速度,使得低速網(wǎng)絡(luò)能夠全部接收,本發(fā)明方法能夠高效的處理異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)間的數(shù)據(jù)傳輸。
[0010]【專利附圖】
【附圖說明】:
圖1為以太網(wǎng)數(shù)據(jù)發(fā)送處理流程圖;
圖2為低速網(wǎng)絡(luò)數(shù)據(jù)發(fā)送處理流程圖;
圖3為低速網(wǎng)絡(luò)數(shù)據(jù)接收處理流程圖。
【具體實(shí)施方式】
[0011]下面結(jié)合試驗(yàn)例及【具體實(shí)施方式】對本發(fā)明作進(jìn)一步的詳細(xì)描述。但不應(yīng)將此理解為本發(fā)明上述主題的范圍僅限于以下的實(shí)施例,凡基于本
【發(fā)明內(nèi)容】
所實(shí)現(xiàn)的技術(shù)均屬于本發(fā)明的范圍。
[0012]參考圖1、圖2、圖3,本發(fā)明提供的一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法,實(shí)現(xiàn)以太網(wǎng)與低速網(wǎng)絡(luò)、低速網(wǎng)與低速網(wǎng)之間的數(shù)據(jù)傳輸,包括以太網(wǎng)發(fā)送數(shù)據(jù)步驟、低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)步驟、低速網(wǎng)絡(luò)接收數(shù)據(jù)步驟。
[0013]由于以太網(wǎng)是高速網(wǎng)絡(luò),以太網(wǎng)向低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)之前,需要將數(shù)據(jù)進(jìn)行處理,然后發(fā)送至數(shù)據(jù)緩沖隊(duì)列進(jìn)行存儲,以便于低速網(wǎng)絡(luò)能夠?qū)⒁蕴W(wǎng)發(fā)送的數(shù)據(jù)全部接收。具體的,以太網(wǎng)向低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)處理步驟:從以太網(wǎng)卡設(shè)備中讀取以太網(wǎng)鏈路層數(shù)據(jù)包;然后根據(jù)以太網(wǎng)鏈路層數(shù)據(jù)包的大小、自定義的包頭信息長度和數(shù)據(jù)包長度字段的長度分配存儲空間;將自定義的包頭信息以及數(shù)據(jù)包長度字段依次放入存儲空間,再將以太網(wǎng)鏈路層數(shù)據(jù)包拷貝到存儲空間內(nèi);最后將存儲空間的起始地址和數(shù)據(jù)包長度存入數(shù)據(jù)緩沖隊(duì)列的隊(duì)尾。
[0014]循環(huán)讀取以太網(wǎng)鏈路層數(shù)據(jù)包,將讀取到的以太網(wǎng)鏈路層數(shù)據(jù)包添加包頭和數(shù)據(jù)包長度字段,然后將添加了包頭和數(shù)據(jù)包長度字段的以太網(wǎng)鏈路層數(shù)據(jù)包放入存儲空間,將存儲空間的地址及數(shù)據(jù)包長度信息存入數(shù)據(jù)緩沖隊(duì)列。
[0015]低速網(wǎng)絡(luò)向低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)處理步驟:檢查數(shù)據(jù)緩沖隊(duì)列是否為空,若數(shù)據(jù)緩沖隊(duì)列為空,則等待以太網(wǎng)鏈路層數(shù)據(jù)包填入數(shù)據(jù)緩沖隊(duì)列。需要說明的是,數(shù)據(jù)緩沖對列中實(shí)際存放的是存儲空間的起始地址和數(shù)據(jù)包長度信息,存儲空間里存儲了添加包頭和數(shù)據(jù)包長度字段的以太網(wǎng)鏈路層數(shù)據(jù)包,通過數(shù)據(jù)緩沖對列中的存儲空間的起始地址和數(shù)據(jù)包長度信息,可以在存儲空間找出以太網(wǎng)鏈路層數(shù)據(jù)包,因此可以認(rèn)為數(shù)據(jù)緩沖隊(duì)列中存儲了以太網(wǎng)鏈路層數(shù)據(jù)包。若數(shù)據(jù)緩沖隊(duì)列不為空,則從數(shù)據(jù)緩沖隊(duì)列的隊(duì)頭取出數(shù)據(jù)包的存儲空間的起始地址和數(shù)據(jù)包長度,然后根據(jù)數(shù)據(jù)包的長度,將存儲空間地址處存放的以太網(wǎng)鏈路層數(shù)據(jù)包取出,并通過低速網(wǎng)絡(luò)接口設(shè)備發(fā)送至低速網(wǎng)絡(luò)。需要說明的是,以太網(wǎng)向數(shù)據(jù)緩沖隊(duì)列中填入存儲空間的地址及數(shù)據(jù)包長度時,是從數(shù)據(jù)包緩沖隊(duì)列的隊(duì)尾開始存放的,因此,低速網(wǎng)絡(luò)從數(shù)據(jù)緩沖隊(duì)列中讀取存儲空間的地址及數(shù)據(jù)包長度時,需要從數(shù)據(jù)緩沖隊(duì)列的對頭讀取,這樣才能依次將填入數(shù)據(jù)緩沖隊(duì)列的以太網(wǎng)鏈路層數(shù)據(jù)包讀取。
[0016]低速網(wǎng)絡(luò)從低速網(wǎng)絡(luò)設(shè)備中接收數(shù)據(jù)包后,也要進(jìn)行處理才能像以太網(wǎng)發(fā)送。因?yàn)橐蕴W(wǎng)是高速網(wǎng)絡(luò),因此,低速網(wǎng)絡(luò)向以太網(wǎng)發(fā)送數(shù)據(jù)是直接發(fā)送至以太網(wǎng)卡設(shè)備。具體的,低速網(wǎng)絡(luò)接收數(shù)據(jù)處理步驟:從低速網(wǎng)絡(luò)設(shè)備中讀取數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的包頭尋找數(shù)據(jù)包的起始位置,然后根據(jù)長度信息拼接成以太網(wǎng)鏈路層數(shù)據(jù)包,再將拼接完成的以太網(wǎng)鏈路層數(shù)據(jù)包發(fā)送至以太網(wǎng)卡設(shè)備。
[0017]本說明書(包括任何附加權(quán)利要求、摘要和附圖)中公開的任一特征,除非特別敘述,均可被其他等效或具有類似目的的替代特征加以替換。即,除非特別敘述,每個特征只是一系列等效或類似特征中的一個例子而已。
【權(quán)利要求】
1.一種基于異構(gòu)網(wǎng)絡(luò)通信系統(tǒng)的數(shù)據(jù)處理方法,實(shí)現(xiàn)以太網(wǎng)與低速網(wǎng)絡(luò)之間的數(shù)據(jù)傳輸,其特征在于,包括以太網(wǎng)發(fā)送數(shù)據(jù)處理步驟、低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)處理步驟、低速網(wǎng)絡(luò)接收數(shù)據(jù)處理步驟;其中,以太網(wǎng)發(fā)送數(shù)據(jù)處理步驟:從以太網(wǎng)卡設(shè)備中讀取以太網(wǎng)鏈路層數(shù)據(jù)包;然后根據(jù)以太網(wǎng)鏈路層數(shù)據(jù)包的大小、自定義的包頭信息長度和數(shù)據(jù)包長度字段的長度分配存儲空間;將自定義的包頭信息以及數(shù)據(jù)包長度字段依次放入存儲空間,再將以太網(wǎng)鏈路層數(shù)據(jù)包拷貝到存儲空間內(nèi);最后將存儲空間的起始地址和數(shù)據(jù)包長度存入數(shù)據(jù)緩沖隊(duì)列的隊(duì)尾; 低速網(wǎng)絡(luò)發(fā)送數(shù)據(jù)處理步驟:檢查數(shù)據(jù)緩沖隊(duì)列是否為空,若數(shù)據(jù)緩沖隊(duì)列為空,則等待以太網(wǎng)鏈路層數(shù)據(jù)包填入數(shù)據(jù)緩沖隊(duì)列;否則,從數(shù)據(jù)緩沖隊(duì)列的隊(duì)頭取出數(shù)據(jù)包的存儲空間的起始地址和數(shù)據(jù)包長度,然后根據(jù)數(shù)據(jù)包長度,將存儲空間地址處存放的以太網(wǎng)鏈路層數(shù)據(jù)包取出,并通過低速網(wǎng)絡(luò)接口設(shè)備發(fā)送至低速網(wǎng)絡(luò); 低速網(wǎng)絡(luò)接收數(shù)據(jù)處理步驟:從低速網(wǎng)絡(luò)設(shè)備中讀取數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的包頭尋找數(shù)據(jù)包的起始位置,然后根據(jù)長度信息拼接成以太網(wǎng)鏈路層數(shù)據(jù)包,再將拼接完成的以太網(wǎng)鏈路層數(shù)據(jù)包發(fā)送至以太網(wǎng)卡設(shè)備。
【文檔編號】H04L12/861GK104184680SQ201310200429
【公開日】2014年12月3日 申請日期:2013年5月27日 優(yōu)先權(quán)日:2013年5月27日
【發(fā)明者】吳偉林, 王亮, 姜維, 黃耀, 何戎遼 申請人:成都林海電子有限責(zé)任公司