專利名稱:基于以太網(wǎng)的高速地震數(shù)據(jù)傳輸控制系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于保證野外地震采集數(shù)據(jù)傳輸?shù)姆€(wěn)定性的大型地震儀器的數(shù) 據(jù)傳輸控制系統(tǒng)。
背景技術(shù):
以太網(wǎng)指的是由Xerox公司創(chuàng)建并由Xerox,Intel和DEC公司聯(lián)合開發(fā)的基帶局 域網(wǎng)規(guī)范。以太網(wǎng)絡(luò)使用CSMA/⑶(載波監(jiān)聽多路訪問及沖突檢測技術(shù))技術(shù),并以多種可 以選擇的速率運(yùn)行在多種類型的電纜上。以太網(wǎng)與IEEE802 3系列標(biāo)準(zhǔn)相類似。它不是 一種具體的網(wǎng)絡(luò),是一種技術(shù)規(guī)范。為了適應(yīng)地震勘探方法的不斷進(jìn)步,地震儀器不斷的擴(kuò)大系統(tǒng)的實(shí)時帶道能力, 這就使得匯集到交叉站(附圖一中單元2)的數(shù)據(jù)越來越多,而系統(tǒng)中的若干個交叉站又要 把數(shù)據(jù)通過交叉線(附圖一中單元1)傳送到主機(jī)系統(tǒng)(附圖一中單元3)。這就需要選擇 具有很高帶寬的傳輸方法,地震儀器廠商不約而同的選擇了成熟的以太網(wǎng)技術(shù),例如目前 國內(nèi)外主要使用的地震數(shù)據(jù)采集系統(tǒng)——法國Sercel公司的408UL地震數(shù)據(jù)采集系統(tǒng)以 及美國I/O公司的系統(tǒng)4。雖然都采用了以太網(wǎng)技術(shù),但是為了滿足地震勘探數(shù)據(jù)的傳輸, 都開發(fā)出了專有的通訊控制協(xié)議,這些協(xié)議都是保密的內(nèi)容,以此來保證地震數(shù)據(jù)傳輸?shù)?實(shí)時性和可靠性。在地震勘探中,數(shù)據(jù)傳輸協(xié)議決定了數(shù)據(jù)傳輸?shù)姆€(wěn)定性,目前的大型地震采集系 統(tǒng)采用基于光纖的千兆以太網(wǎng)傳輸技術(shù)。但大型地震采集系統(tǒng)在野外使用,容易受到自然 界各種環(huán)境因素的干擾造成傳輸能力的下降,同時以太網(wǎng)技術(shù)本身在猝發(fā)高流量傳輸時可 能出現(xiàn)丟包現(xiàn)象,這樣就會出現(xiàn)傳輸不穩(wěn)定、傳輸錯誤或傳輸失敗的情況。任何的發(fā)明創(chuàng)造都來源于需求,在我們的大型地震采集系統(tǒng)中,需要高帶寬的數(shù) 據(jù)傳輸手段,同時我們這個系統(tǒng)是實(shí)時的系統(tǒng),數(shù)據(jù)量大并且突發(fā)性強(qiáng),需要在確定的時間 內(nèi)把數(shù)據(jù)完整的進(jìn)行處理并且輸出。在選擇了以太網(wǎng)后,對以太網(wǎng)的傳輸特性進(jìn)行詳盡的 分析后,發(fā)現(xiàn)如下的規(guī)律在相同幀長的情況下,丟幀率隨著發(fā)送速率的增加呈增長趨勢,并且該增長趨勢 是非線性的;在不做限速的情況下,長幀的最大發(fā)送速率高于短幀的最大發(fā)送速率;在相近的發(fā)送速率下,長幀的丟幀率明顯小于短幀的丟幀率。并且對突發(fā)大流量的情況造成大量的丟楨,這些都是在本項(xiàng)目中要解決的問題, 以保證數(shù)據(jù)傳輸?shù)目煽亢屯暾?br>
發(fā)明內(nèi)容
本發(fā)明的目的是設(shè)計(jì)一種基于以太網(wǎng)的高速地震數(shù)據(jù)傳輸控制系統(tǒng),在大型地震 采集系統(tǒng)中,控制將下屬管理站點(diǎn)的數(shù)據(jù)匯集到交叉站后,在交叉站進(jìn)行控制和轉(zhuǎn)發(fā)到主 機(jī)系統(tǒng),使得交叉站傳輸?shù)街鳈C(jī)系統(tǒng)的數(shù)據(jù)完整、可靠,提高可靠性傳輸,滿足地震采集數(shù)據(jù)在交叉線上高帶寬、長距離野外傳輸?shù)奶匦砸?。本基于以太網(wǎng)的高速地震數(shù)據(jù)傳輸控制系統(tǒng)包括主機(jī)系統(tǒng)和交叉站,包括大線地 震數(shù)據(jù)經(jīng)過驅(qū)動接收單元、幀長度門限單元、流量控制單元后在交叉線上傳輸?shù)卣饠?shù)據(jù),各 個模塊的關(guān)系和功能如下(1)幀長度門限單元規(guī)定交叉線上傳輸?shù)囊蕴W(wǎng)幀長度門限,防止因分包傳輸 給系統(tǒng)造成的損失;把數(shù)據(jù)楨的長度定為1470bytes,其中有效地震數(shù)據(jù)為1428bytes,這 個數(shù)值靠近了以太網(wǎng)楨的最大值,能夠有效的減少發(fā)送和接收的中斷響應(yīng)次數(shù),提高系統(tǒng) 的效率;(2)流量控制單元流量控制采用自動流量控制發(fā)送,使發(fā)送端和接收端之間實(shí) 現(xiàn)流量互控,使交叉線傳輸總流量遠(yuǎn)離以太網(wǎng)可能發(fā)生丟包的傳輸門限,以定時器為基礎(chǔ) 的傳輸機(jī)制,動態(tài)調(diào)整在傳輸穩(wěn)定性、傳輸效率與傳輸延遲之間的平衡;(3)重傳率門限控制單元可控的自動重傳機(jī)制,可配置的重傳率門限;作為通訊 協(xié)議的制定要考慮完備性,任何的控制措施和手段都不能完全保證數(shù)據(jù)傳輸?shù)耐暾煽浚?以此要采用自動重傳機(jī)制,但在此系統(tǒng)中的自動重傳是可控的,可以配置重傳率的門限,重 要的控制參數(shù)就是重傳率的門限值。當(dāng)在門限里面的時候,由數(shù)據(jù)接收端主動發(fā)起重傳,當(dāng) 發(fā)送端接收到帶有重傳信息的楨后,就根據(jù)里面的信息把相應(yīng)的數(shù)據(jù)楨再發(fā)送一次;一旦 超出門限值,就立即進(jìn)行數(shù)傳報警,由上層的主機(jī)軟件和操作人員來決定后續(xù)的操作,因?yàn)?此時就遇到了比較特殊的情況(可能野外的站體大部分不能正常工作,或者前面提到的交 叉線被斷開等),在這種狀況下如果進(jìn)行高密度的重傳,只會適得其反;(4)驅(qū)動接收楨單元結(jié)合了網(wǎng)絡(luò)通信嵌入式處理器和嵌入式RT0S的性能特點(diǎn),并充分發(fā)揮它們的優(yōu) 勢,我們把驅(qū)動層進(jìn)行了改進(jìn),驅(qū)動接收下整個楨后,把需要從該楨中讀取的數(shù)據(jù)通過驅(qū)動 就讀取出來,然后驅(qū)動直接就把該楨轉(zhuǎn)發(fā)出去,最后驅(qū)動再把讀取出來的數(shù)據(jù)發(fā)給上層的 應(yīng)用任務(wù),需要讀取出來的數(shù)據(jù)就是指其中的Data字段中的數(shù)據(jù);而不用驅(qū)動收到整個楨 后,通過層層拷貝然后由上層的應(yīng)用任務(wù)來把要讀取的數(shù)據(jù)取出,然后再調(diào)用發(fā)送程序再 通過層層拷貝把數(shù)據(jù)通過驅(qū)動程序發(fā)送出去。建立了以太網(wǎng)鏈路層零拷貝快速轉(zhuǎn)發(fā)機(jī)制。在驅(qū)動層進(jìn)行了改進(jìn)后,節(jié)省了更多的CPU的時間,以便能夠?qū)崟r的進(jìn)行更多的 操作;同時這樣做增加了系統(tǒng)的穩(wěn)定性,避免了因?yàn)轭l繁的拷貝帶來的數(shù)據(jù)錯誤和內(nèi)存錯 誤。發(fā)明的效果該方法適合大型地震采集系統(tǒng)傳輸特點(diǎn),既保證了數(shù)據(jù)傳輸?shù)乃俾?,又可最大?度避免數(shù)據(jù)傳輸中丟包的現(xiàn)象,以最適宜、最穩(wěn)定的傳輸協(xié)議來保證野外采集數(shù)據(jù)的傳輸質(zhì)量。
圖1地震采集系統(tǒng)總體邏輯框圖1交叉線(光纖) 2交叉站 3主機(jī)系統(tǒng)圖 2MUX/END 結(jié)構(gòu)。圖3以太網(wǎng)幀結(jié)構(gòu)
圖4數(shù)傳控制系統(tǒng)流程圖
具體實(shí)施例方式本設(shè)計(jì)中所說的數(shù)據(jù)傳輸是指地震采集的數(shù)據(jù)在交叉站2中通過交叉線1利用所 發(fā)明的基于以太網(wǎng)的高速地震數(shù)據(jù)傳輸可靠性控制技術(shù)傳輸?shù)街鳈C(jī)系統(tǒng)3中進(jìn)行記錄存 儲。在本大型地震采集系統(tǒng)中,交叉站中央處理機(jī)選擇FreeScalePowerQUICC II系列 嵌入式通信處理機(jī)家族中的MPC8270處理機(jī),操作系統(tǒng)選擇的是VxWorks實(shí)時嵌入式操作 系統(tǒng)。MPC8270處理機(jī)是一款雙核的CPU,其對通訊數(shù)據(jù)的處理是由其中一個處理內(nèi)核來完 成的,大部分都是硬件直接操作,效率非常高;而上層任務(wù)則運(yùn)行在另外一個內(nèi)核上,所以 此款處理機(jī)同時具有很強(qiáng)的計(jì)算能力和通信能力。操作系統(tǒng)的選擇也是很重要的,因此我 們選擇了業(yè)界著名的VxWorks,而且它們二者的搭配也是十分好的選擇,VxWorks操作系統(tǒng) 提供了很好的對MPC8270處理機(jī)的支持。一 驅(qū)動層的改進(jìn)驅(qū)動層的改進(jìn)主要是指驅(qū)動接收幀單元的功能。VxWorks操作系統(tǒng)標(biāo)準(zhǔn)的網(wǎng)絡(luò)驅(qū)動程序如下圖2所示當(dāng)數(shù)據(jù)要接收或者發(fā)送就要層層的進(jìn)行數(shù)據(jù)拷貝,不但降低了效率,而且增加了 系統(tǒng)的不穩(wěn)定性。改進(jìn)后的驅(qū)動程序做到了直接對數(shù)據(jù)進(jìn)行零拷貝轉(zhuǎn)發(fā),下面介紹驅(qū)動工 作流程圖3是以太網(wǎng)楨結(jié)構(gòu),所謂的零拷貝轉(zhuǎn)發(fā),就是指驅(qū)動接收下整個楨后,把需要從 該楨中讀取的數(shù)據(jù)通過驅(qū)動就讀取出來,然后驅(qū)動直接就把該楨轉(zhuǎn)發(fā)出去,最后驅(qū)動再把 讀取出來的數(shù)據(jù)發(fā)給上層的應(yīng)用任務(wù),需要讀取出來的數(shù)據(jù)就是指其中的Data字段中的 數(shù)據(jù);而不用驅(qū)動收到整個楨后,通過層層拷貝然后由上層的應(yīng)用任務(wù)來把要讀取的數(shù)據(jù) 取出,然后再調(diào)用發(fā)送程序再通過層層拷貝把數(shù)據(jù)通過驅(qū)動程序發(fā)送出去。具體實(shí)施如下(1)循環(huán)檢測接收緩存中是否有數(shù)據(jù)到達(dá);(2)判斷數(shù)據(jù)幀CRC是否錯,如果錯誤就丟棄該幀;(3)檢查數(shù)據(jù)幀的長度,超長或者超短的以太網(wǎng)幀都直接丟棄;(4)把Data字段中的數(shù)據(jù)進(jìn)行拷貝;(5)把該幀在接收緩存中的指針直接發(fā)送給發(fā)送任務(wù),這樣該幀就可以進(jìn)入到發(fā)送狀態(tài)了,如果網(wǎng)絡(luò)允許,數(shù)據(jù)自動就發(fā)送出去了 ;(6)通過消息把Data字段中的數(shù)據(jù)傳遞給上層的應(yīng)用任務(wù)。二 專有數(shù)據(jù)傳輸協(xié)議而幀長度門限單元、流量控制單元、重傳率門限控制單元在軟件上的實(shí)現(xiàn)就是一 套專有的協(xié)議。根據(jù)本地震數(shù)據(jù)采集記錄系統(tǒng)的設(shè)計(jì)和地震數(shù)據(jù)的特點(diǎn),制定了在交叉線 上傳輸?shù)牡卣饠?shù)據(jù)的專有協(xié)議。協(xié)議是建立在以太網(wǎng)的基礎(chǔ)上,所以協(xié)議的主要內(nèi)容是在 圖3所示的以太網(wǎng)楨結(jié)構(gòu)的Data字段。即在發(fā)送端交叉站和接收端主機(jī)系統(tǒng)之間通過Data 字段中的一些內(nèi)容就能夠進(jìn)行一些關(guān)于數(shù)據(jù)傳輸?shù)奶厥鈩幼?,就像相互之間直接發(fā)送命令 一樣,但是這樣做系統(tǒng)的開銷最小并且系統(tǒng)最穩(wěn)定。
5
1.發(fā)送端控制技術(shù)幀長度門限單元的實(shí)現(xiàn)在發(fā)送端控制技術(shù)內(nèi),把數(shù)據(jù)楨的長度定為1470bytes,其 中有效地震數(shù)據(jù)為1428bytes。以定時器為基礎(chǔ)的傳輸機(jī)制,動態(tài)調(diào)整在傳輸穩(wěn)定性、傳輸 效率與傳輸延遲之間的平衡。具體的做法就是在交叉站發(fā)送出去一幀之后,就啟動一個定 時器,在定時器的時間內(nèi)即使有數(shù)據(jù)準(zhǔn)備好要發(fā)送出去,也不能發(fā)送,因?yàn)槎〞r器的優(yōu)先級 設(shè)置的比發(fā)送任務(wù)要高,此時把準(zhǔn)備發(fā)送的數(shù)據(jù)保存在先入先出的緩沖區(qū)中;具體實(shí)施如 下(1)檢查發(fā)送緩沖區(qū)是否有空的,定時器是否到時,以此判斷是否可以發(fā)送數(shù)據(jù);(2)把先入先出緩沖區(qū)中的一包數(shù)據(jù)的指針發(fā)送給發(fā)送任務(wù);(3)發(fā)送任務(wù)發(fā)送成功。 2.接收端對發(fā)送端的控制技術(shù)流量控制單元主要應(yīng)用了接收端對發(fā)送端的控制技術(shù)。接收端接收發(fā)送端的數(shù)據(jù) 進(jìn)行零拷貝的轉(zhuǎn)發(fā),同時通過上層任務(wù)對接收到的數(shù)據(jù)楨進(jìn)行比對(因?yàn)樵诿看蔚臄?shù)據(jù)采 集之前,接收端都能夠確切的知道應(yīng)該收到多少楨的數(shù)據(jù)),這樣就能夠判斷當(dāng)前的數(shù)傳狀 態(tài),根據(jù)這個狀態(tài)就能夠動態(tài)的對接收端進(jìn)行調(diào)整,使得數(shù)傳穩(wěn)定。具體實(shí)施如下(1)循環(huán)檢測是否有數(shù)據(jù)到達(dá);(2)進(jìn)行數(shù)據(jù)的零拷貝轉(zhuǎn)發(fā); (3)把數(shù)據(jù)發(fā)送到上層數(shù)據(jù)流量控制任務(wù);(4)上層數(shù)據(jù)流量控制任務(wù)通過進(jìn)行數(shù)據(jù)比對,如果存在丟包現(xiàn)象,就根據(jù)數(shù)據(jù)丟 包的狀態(tài)進(jìn)行對接收端的控制,在下發(fā)的數(shù)據(jù)包中對發(fā)送定時器進(jìn)行設(shè)置,延長定時器的 值,使得發(fā)送速率降低;當(dāng)數(shù)據(jù)慢慢的開始不丟的時候,在慢慢縮短定時器的值,逐漸達(dá)到 一個平衡狀態(tài)。3.自動重傳控制技術(shù)重傳率門限控制單元實(shí)現(xiàn)的是自動重傳控制技術(shù),用以應(yīng)對在野外的使用過程中 可能有的各種突發(fā)事件,在本系統(tǒng)的設(shè)計(jì)中同時要考慮當(dāng)交叉線斷開等情況(這種情況在 野外施工過程中也是經(jīng)常遇到的,與在室內(nèi)的應(yīng)用有很大的區(qū)別),同時又考慮到協(xié)議的完 整性,于是制定了自動重傳的控制技術(shù)。這里面主要的控制參數(shù)就是重傳率的門限值,當(dāng)在 門限里面的時候,由數(shù)據(jù)接收端主動發(fā)起重傳,當(dāng)發(fā)送端接收到帶有重傳信息的楨后,就根 據(jù)里面的信息把相應(yīng)的數(shù)據(jù)楨再發(fā)送一次;一旦超出門限值,就立即進(jìn)行數(shù)傳報警,由上層 的主機(jī)軟件和操作人員來決定后續(xù)的操作,因?yàn)榇藭r就遇到了比較特殊的情況(可能野外 的站體大部分不能正常工作,或者前面提到的交叉線被斷開等),在這種狀況下如果進(jìn)行高 密度的重傳,只會適得其反。具體實(shí)施如下(1)上層任務(wù)進(jìn)行數(shù)據(jù)比對,如果有數(shù)據(jù)幀丟失,就把消息發(fā)送給數(shù)據(jù)重傳任務(wù), 其中包括要進(jìn)行重傳的幀的信息;(2)數(shù)據(jù)重傳任務(wù)判斷此時是否可以進(jìn)行重傳,依據(jù)就是重傳幀數(shù)量是否超過重 傳門限值;(3)如果沒有超過門限值,就把重傳命令發(fā)給數(shù)據(jù)發(fā)送端;(4)如果超過了門限值,就發(fā)報警信息給主機(jī)軟件,由主機(jī)軟件進(jìn)行后續(xù)處理。通過以上的驅(qū)動底層的改進(jìn)和專有數(shù)據(jù)傳輸協(xié)議的制定,經(jīng)過測試,完全能夠滿足地震數(shù)據(jù)的 傳輸。
權(quán)利要求
一種基于以太網(wǎng)的高速地震數(shù)據(jù)傳輸控制系統(tǒng),包括主機(jī)系統(tǒng)和交叉站,其特征在于大線地震數(shù)據(jù)經(jīng)過驅(qū)動接收單元、幀長度門限單元、流量控制單元后在交叉線上傳輸?shù)卣饠?shù)據(jù)(1)幀長度門限單元規(guī)定交叉線上傳輸?shù)囊蕴W(wǎng)幀長度門限,把數(shù)據(jù)楨的長度定為1470bytes,其中有效地震數(shù)據(jù)為1428bytes,這個數(shù)值靠近了以太網(wǎng)楨的最大值,能夠有效的減少發(fā)送和接收的中斷響應(yīng)次數(shù),提高系統(tǒng)的效率;(2)流量控制單元流量控制采用自動流量控制發(fā)送,使發(fā)送端和接收端之間實(shí)現(xiàn)流量互控,使交叉線傳輸總流量遠(yuǎn)離以太網(wǎng)可能發(fā)生丟包的傳輸門限,以定時器為基礎(chǔ)的傳輸機(jī)制,動態(tài)調(diào)整在傳輸穩(wěn)定性、傳輸效率與傳輸延遲之間的平衡;(3)重傳率門限控制單元可控的自動重傳機(jī)制,可配置的重傳率門限;當(dāng)在門限里面的時候,由數(shù)據(jù)接收端主動發(fā)起重傳,當(dāng)發(fā)送端接收到帶有重傳信息的楨后,就根據(jù)里面的信息把相應(yīng)的數(shù)據(jù)楨再發(fā)送一次;一旦超出門限值,就立即進(jìn)行數(shù)傳報警,由上層的主機(jī)和操作人員來決定后續(xù)的操作;(4)驅(qū)動接收楨單元建立以太網(wǎng)鏈路層零拷貝快速轉(zhuǎn)發(fā)機(jī)制,所謂的零拷貝轉(zhuǎn)發(fā),就是指驅(qū)動接收下整個楨后,把需要從該楨中讀取的數(shù)據(jù)通過驅(qū)動就讀取出來,然后驅(qū)動直接就把該楨轉(zhuǎn)發(fā)出去,最后驅(qū)動再把讀取出來的數(shù)據(jù)發(fā)給上層的應(yīng)用任務(wù),需要讀取出來的數(shù)據(jù)就是指其中的Data字段中的數(shù)據(jù);而不用驅(qū)動收到整個楨后,通過層層拷貝然后由上層的應(yīng)用任務(wù)來把要讀取的數(shù)據(jù)取出,然后再調(diào)用發(fā)送程序再通過層層拷貝把數(shù)據(jù)通過驅(qū)動程序發(fā)送出去。
全文摘要
本發(fā)明涉及一種基于以太網(wǎng)的高速地震數(shù)據(jù)傳輸控制系統(tǒng),包括幀長度門限單元規(guī)定交叉線上傳輸?shù)囊蕴W(wǎng)幀長度門限;流量控制單元以定時器為基礎(chǔ),動態(tài)調(diào)整在傳輸穩(wěn)定性、傳輸效率與傳輸延遲之間的平衡;重傳率門限控制單元可控的自動重傳機(jī)制,可配置的重傳率門限;當(dāng)超出門限值,就由上層的主機(jī)和操作人員來決定后續(xù)的操作;驅(qū)動接收幀單元建立以太網(wǎng)鏈路層零拷貝快速轉(zhuǎn)發(fā)機(jī)制,驅(qū)動接收下整個幀后,把需要從該幀中讀取的數(shù)據(jù)通過驅(qū)動讀取出來,驅(qū)動再把讀取出來的數(shù)據(jù)發(fā)給上層的應(yīng)用任務(wù);適合大型地震采集系統(tǒng)傳輸,既保證了數(shù)據(jù)傳輸?shù)乃俾?,又可最大限度避免?shù)據(jù)傳輸中丟包的現(xiàn)象,以適宜、穩(wěn)定的傳輸協(xié)議保證野外采集數(shù)據(jù)的傳輸質(zhì)量。
文檔編號H04L12/24GK101860520SQ20091008181
公開日2010年10月13日 申請日期2009年4月10日 優(yōu)先權(quán)日2009年4月10日
發(fā)明者姜耕, 戴志濤, 易碧金, 李興華, 李艷軍, 羅蘭兵, 賈艷芳, 鄺堅(jiān), 顏良 申請人:中國石油天然氣集團(tuán)公司;中國石油集團(tuán)東方地球物理勘探有限責(zé)任公司