新四季網

一種具有網絡流量整形的航空電子通信中間件系統的製作方法

2023-05-29 02:13:06

專利名稱:一種具有網絡流量整形的航空電子通信中間件系統的製作方法
技術領域:
本發明屬於網絡通信領域,涉及到一種應用於航空電子全雙工交換式乙太網與普通乙太網進行信息交互的通信中間件,通過此中間件,具有網絡流量整形特徵的航空電子全雙工交換式網絡能夠與基於TCP/IP協議的普通乙太網實現透明通信。
背景技術:
網絡流量整形是航空電子全雙工交換式乙太網確定性機制實施的根本保障技術之一。在數據源通過對待發送的同一邏輯鏈路(虛擬鏈路)承載的前後相鄰數據幀之間的時間間隔進行限制和約束,降低和平滑虛擬鏈路上數據幀的突發流量,從而達到數據源端發送消息限流的目的,保證虛擬鏈路邏輯帶寬預分配機制,增強網絡通信確定性過程。網絡流量整形以每個虛擬鏈路為基本單元,在每個帶寬分配間隔(Bandwidth Allocation Gap, BAG)中,發送的幀的數目不會多於一個。具有流量整形特徵的航空網絡,具備有消息傳輸時間確定性保證的能力,因此它適用於大型飛機航空電子系統的網絡組建,能夠滿足我國航空電子網絡系統的綜合化互聯應用和發展的技術要求。進行航空電子系統組網的關鍵元素包括端系統(End System,ES) 和交換機(Switch)。中間件處於作業系統與航空電子應用中間。中間件在作業系統、網絡之上,航空電子應用之下,為處於自己上層的航空電子應用提供運行與開發環境,幫助系統開發者靈活、 高效地開發和集成航電應用。為了實現基於TCP/IP協議的航空電子應用能夠透明地在適用於網絡流量整形的航空電子全雙工交換式乙太網上運行和通信,在通信的雙向都需要進行通信協議轉換,利用中間件在通信模型中的位置,可以在此基礎上在端系統集成處於內核態的通信協議中間件,並配合用戶態應用程式,實現將COTS (Commercial-off-the-shelf,譯文為商用現成品或技術)技術下已有的航空電子應用通信無縫地接入到航空電子全雙工交換式網絡中。

發明內容
本發明提供了一個具有網絡流量整形的航空電子通信中間件系統。該系統包括配置文件解析功能模塊、協議轉換功能模塊與流量整形功能模塊。其中協議轉換功能模塊由數據幀檢測單元、幀結構重填單元以及SN插入單元構成。所述協議轉換功能模塊利用檢測條件對數據包進行檢測,當數據包從普通乙太網進入到航空電子網絡時,檢測條件為數據幀的物理分層、協議類型以及源埠號,當數據包從航空電子網絡進入到普通乙太網時,檢測條件為數據幀的物理分層、MAC頭以及VL_ID信息位,對符合檢測條件的數據包進行航空電子網絡通信協議幀格式與普通乙太網TCP/IP 協議的互相轉換。具體而言,當數據幀由普通乙太網進入到航空電子全雙工交換式乙太網絡中時,中間件對數據幀的物理分層、協議類型以及埠號進行檢測,當檢測到物理分層不小於3,協議類型為UDP (由於航空電子全雙工交換式乙太網中採用UDP數據包進行通信,因此,本發明通信中間件只對UDP數據包進行處理。)並且源埠與用戶配置源埠號一致時,本發明中間件系統對該數據幀完成幀格式從TCP/IP協議到航空電子全雙工交換式網絡協議的轉換;當數據幀由航空電子全雙工交換式網絡進入到普通乙太網時,本發明中間件系統通過對數據幀的物理分層、MAC頭以及VL_ID的檢測,來確定該數據幀是否為航空電子全雙工交換式乙太網數據幀且來自於用戶設定的需要處理的虛擬鏈路。如果數據幀是航空電子全雙工交換式乙太網數據幀並且此數據幀的VL_ID與用戶設定的需要處理的虛擬鏈路的虛擬鏈路標識符相同,本發明中間件系統則對該數據幀完成幀格式從航空電子全雙工交換式網絡協議到TCP/IP協議的轉換。所述流量整形功能模塊是在數據幀由普通乙太網進入到航空電子全雙工交換式乙太網絡中時,針對航空電子全雙工交換式乙太網虛擬鏈路調度模型,利用NDIS內核調度延遲功能,實現的流量整形機制,即保證數據幀的幀間間隔不小於規定的時間間隔,從消息生成規律上直接限制接入航空電子全雙工交換式乙太網的通信帶寬,保障了航空電子全雙工交換式乙太網絡的通信確定性。在本發明中間件系統處理數據幀時需要的數據數據幀檢測條件、幀結構重填區段以及幀間間隔,是在配置文件解析功能模塊中進行定義,並對配置文件進行解析,從而將數據傳遞至協議轉換功能模塊與流量整形功能模塊。本發明具有網絡流量整形的航空電子通信中間件系統的優點在於①本發明採用在通信模型中的數據鏈路層實施協議轉換,對基於TCP/IP協議的已有航空應用來說,提供了一種透明的接入到航空電子全雙工乙太網的接入方式,已有航空電子應用(第三方應用)不會感知在接入航空電子全雙工和普通乙太網的不同,在網絡的升級過程中,最大化保護了已有開發資源,降低了網絡接入難度。②本發明採用系統服務的方式提供中間件協議轉換的實現,安裝簡單,操作方便, 不影響正常基於TCP/IP協議通信過程,同時採取基於配製的方式實現網絡行為定製,顯著增強了網絡接入的靈活性和可配置性。


圖1是本發明中間件系統的功能模塊結構框圖。圖2為本發明中間件系統的在端系統上的工作層次。圖3為本發明協議轉換功能模塊中由TCP/IP協議到航空電子全雙工交換式網絡協議幀格式轉換的實現流程。圖4為本發明協議轉換功能模塊中由航空電子全雙工交換式乙太網協議到TCP/ IP協議幀格式轉換的實現流程。圖5為本發明流量整形功能模塊的實現流程。圖6為航空電子全雙工交換式乙太網協議幀格式。圖7為本發明流量整形功能的原理。圖8為本發明進行航空電子全雙工交換式網絡與普通乙太網通信的流程圖。
具體實施例方式下面將結合附圖對本發明做進一步的詳細說明。
本發明基於NDIS(Network Driver Interface Specification,譯文為網絡驅動接口規範)模型的改造,通過對數據幀結構重填與SN(Sequence Nubmer,譯文為順序號) 插入,實現了航空電子全雙工交換式網絡協議與TCP/IP協議的互相轉換,通過內核態的延時數據包發送,實現了對數據包流的整形。最終獲得的航空電子通信中間件能夠作為普通乙太網與航空電子全雙工交換式網絡的連接部件,實現航空電子應用通信過程透明的在航空電子全雙工交換式網絡上運行。圖1為本發明的功能模塊圖。中間驅動程序在上端開放出一個Miniport (譯文為微埠)接口 103,在其下端開放出一個ftx)t0C0l(譯文為協議)接口 104。其中位於上面的Miniport接口 103與上層驅動程序的ftx)tocol接口 102進行對接。同樣的,下面的!Protocol接口 104同底層驅動程序的Miniport接口 105進行對接。這樣在安裝了航空電子全雙工交換式網絡協議中間件的系統中,從上層向外界網絡發送的數據包和從外界網絡接收的數據包都必須經過中間層驅動程序的處理再繼續傳遞。中間層驅動程序由配置文件解析模塊107,協議轉換功能模塊108和流量整形功能模塊109構成,其中協議轉換功能模塊108又分為數據幀檢測單元110、幀結構重填單元111與SN插入單元112。圖中所示每個小黑塊代表一個數據包,多個數據包形成數據包流120,相鄰兩個數據包的時間間隔記為Tral,則有第一數據包與第二數據包之間的時間間隔記為Treall、第二數據包與第三數據包之間的時間間隔記為T_12、第三數據包與第四數據包之間的時間間隔記為Τ_13。利用流量整形功能模塊109對數據包流120進行流量整形後,數據包流120中相鄰數據包之間的時間間隔發生了改變,用戶配置的幀間間隔記為TBAe,則有第一數據包與第二數據包之間的幀間間隔記為Tbmi、第二數據包與第三數據包之間的幀間間隔記為TBAe2、第三數據包與第四數據包之間的幀間間隔記為TBAe3。當數據包流從普通乙太網向航空電子全雙工乙太網發送時,對於檢測到協議類型為UDP(即ip_p = 17) (ip protocol,譯文為IP幀協議)且源埠號與配置文件解析功能模塊107傳遞來Whport (User defined source port,譯文為用戶定義源埠號)參數相等的數據幀,將先經過協議轉換功能模塊108的處理,即將數據幀的結構進行重新填充以及進行SN的插入。設置檢測條件ip_p= 17,是由於航空電子全雙工交換式乙太網中採用UDP數據包進行通信,因此,本發明中間件系統將只對UDP 數據包進行處理。經過協議轉換功能模塊108的處理後,數據幀格式將從TCP/IP協議幀格式轉換成航空電子全雙工交換式乙太網協議幀格式規範。協議轉換功能模塊108中所需 Usport參數以及幀結構重填欄位均由配置文件解析功能模塊107提供。接下來,流量整形功能模塊109將會對從協議轉換功能模塊108輸出的數據包流進行進一步處理。利用實際幀間間隔TMal與用戶配置幀間間隔TBAe比較的結果來判別是否對數據包流進行整形,如果 Treal < TBAe,則對數據包流整形。例如圖示中,計算到Treall < TBAe,則對數據包進行流量整形處理,當數據包從流量整形功能模塊109輸出時,時間間隔T,eall已經規整到TBAei,則TBAei = Tbag ;計算到T_12 Tbag,這樣的數據包將不被處理,在從流量整形功能模塊109輸出時,時間間隔未發生改變,仍滿足TBAe3 = Trealso 當在普通乙太網接收數據包時,配置文件解析功能模塊107對配置文件113進行解析,獲得 AvionicsVL_ID(Avionics Virtual Link Identifier,譯文為航空電子網絡協議幀虛擬鏈路標識符)、TTL(Time to live,譯文為生存時間),DesIP(Destination IP Address,譯文為目的IP位址)與DesMAC (Destination Mac address,譯文為目的MAC地址)參數。AvionicsVL_ID參數被傳遞至數據幀檢測單元110,TTL、DesIP與DesMAC參數被傳遞至協議轉換功能模塊108。從I^otocol接口 104輸出的數據包先經過協議轉換功能模塊108 的數據幀檢測單元110的處理,數據幀檢測單元110檢測通過數據幀的MAC頭來確認該數據幀是否為航空電子全雙工交換式乙太網協議幀,若數據幀是航空電子全雙工交換式乙太網協議幀,進一步檢測該數據幀的VL_ID (Virtual Link Identifier,譯文為虛擬鏈路標識符)信息位511是否與用戶配置的Avi0niCSVL_ID參數一致。若一致,數據幀進入幀結構重填單元111處理。幀結構重填單元111利用TTL,DesIP與DesMAC參數並根據TCP/IP 協議幀格式規範對數據幀結構進行重新填充,保證進入到普通乙太網的數據包符合TCP/IP 協議幀格式規範。圖2為本發明在端系統上的工作層次。在端系統集成處於內核態的中間層驅動程序(AvionicsTransfer. sys),並配合用戶態應用程式(RESETPARA. ΕΧΕ),實現了基於TCP/ IP協議的航空電子應用透明地在適用於網絡流量整形的航空電子全雙工交換式乙太網上運行和通信。處於內核態的中間層驅動程序主要實現了對數據幀的協議轉換,以及數據流的整形。處於用戶態應用程式為用戶提供了方便的配置界面,實現了與中間層驅動通信的功能。在本發明中,上層應用程式與中間層驅動通信是通過NDIS協議驅動程序和傳輸驅動程序接口進行信息傳遞的,包括枚舉網絡適配器,以及向中間層層驅動傳遞參數。在本發明中,枚舉網絡適配器由於中間層驅動程序實現了枚舉網絡適配器的例程,因此可以向中間層驅動程序發送一個I/O控制命令,就能獲得相應的適配器的名稱以及中間層驅動創建的對應設備的符號連結。用戶可以指定航空電子通信中間件被綁定的網卡。參見圖2、圖6所示,向中間層驅動傳遞參數處於用戶態的應用程式為用戶提供了配置界面,用戶在配置文件中按照規定的格式填入配置參數,然後在與本發明中間件系統配合使用的RESETPARAL. EXE (reset parameter, exe,譯文為重置參數應用程式)中執行重置配置文件命令,配置流則通過傳輸驅動程序接口傳遞至中間層驅動程序,為中間層驅動程序使用。用戶需要在配置文件113中輸入的配置信息包括三部分數據幀檢測條件、幀結構重填區段以及幀間間隔。數據幀檢測條件參數有Usport、AvionicsVL_ID ;幀結構重填區段參數有VL_ID606 (Virtual Link Identif ier,譯文為虛擬鏈路標識符)、 User_Defined_ID602 (User defined identifier,譯文為用戶定義標識符)、Interface, ID603 (Interface identifier, ^; ^ ^ Π fe iK # )、Partition_ID608 (Partition Identifier,譯文為分區標識)、TTL, DesIP, DesMAC ;幀間間隔參數=BAG(Bandwidth Allocation Gap,譯文為帶寬分配間隔)。圖3給出了協議轉換功能模塊中由TCP/IP協議到航空電子全雙工交換式網絡協議轉換的實現流程。普通乙太網TCP/IP協議數據包流120從Miniport接口 103輸出後,進入到協議轉換功能模塊108。先被數據幀檢測單元110攔截,依次對數據包的物理分層(Wiisycall^age),協議類型以及源埠號進行檢測。當不滿足條件Wiisycall^age > =3時,數據幀不被處理,直接從協議轉換功能模塊108輸出並傳遞至網卡。當滿足條件 PhisycalPage >= 3時,數據幀檢測單元110進一步檢測數據幀的協議類型。當檢測到協議類型不為17時,數據幀不再被處理,直接從協議轉換功能模塊108輸出並傳遞至網卡。當檢測到協議類型為17時,進一步檢測數據幀的源埠號,當檢測到數據幀的源埠號和用戶配置的源埠號^port不一致時,數據幀不再被處理,直接從協議轉換功能模塊108輸出並傳遞至網卡。當檢測到數據幀的源埠號與^port參數一致時,數據幀進入到下一功能單元幀結構重填單元111的處理。選擇條件Wiisycall^age >= 3,是為了保證數據幀檢測單元110能順利地按照數據包的存儲方式(鍊表結構)尋找到數據包IP頭和UDP頭首地址,使得在幀結構重填單元111中使用Address- > Next (譯文為地址- >下一節點)尋址為有效操作。在幀結構重填單元111,先獲取數據幀的首地址,即獲取到了數據幀MAC頭的首地址,再根據用戶配置的User_Defined_ID、Interface_ID、VL_ID參數以及航空電子全雙工交換式乙太網協議的源MAC格式(圖6中C)、目的MAC格式(圖6中d)對數據幀的 MAC 進行重新填充。然後使用 MacHAddress-> Next (Mac Head Address-> Next,譯文為 數據幀MAC頭首地址- >下一節點)獲取IP頭首地址,再根據用戶配置的User_Defined_ ID602、Partition_ID608、VL_ID606參數以及航空電子全雙工交換式乙太網協議的源IP格式(圖6中f)、目的IP格式(圖6中g)對數據幀的IP頭進行重新填充,並且重新計算頭部校驗和。最後使用IPHAddress- > Next (IP Head Address- > Next,譯文為數據幀IP 頭首地址- >下一節點)獲取UDP頭首地址,將UDP校驗和置O。幀結構重填單元111所需的 User_Defined_ID、Interface_ID, Partition_ID 以及 VL_ID 參數由配置文件解析功能模塊107對用戶設定的配置文件113進行解析而獲得並傳遞過來。經過幀結構重填單元 111處理後的數據幀進入到SN插入單元112。在SN插入單元112,首先對數據包的分片標識IP_MF (IP-more flagment flag,譯文為IP幀的更多分片標識)進行檢測,根據其IP_ MF的不同,對數據包進行分類處理。如果檢測到IP_MF = 0x0000,則該數據包後無分片包對IP_MF = 0x0000的數據包,申請一字節長度的內存以及一字節長度的BUFFER(譯文為 緩存),然後將申請的內存以及BUFFER進行物理映射,並在內存中存入SN。最後將BUFFER 插入數據包存儲結構的鍊表尾。如果檢測到IP_MF = 0x2000,則該數據包後還存在其他分片包,並且該數據包的數據長度為1472。對於IP_MF = 0x2000的數據包,先計算出它是第 i個分片包。i = Flag_offset/1480,其中Flag_offset為片段偏移量,i >= 0。對於第 i個分片包,先將其數據段末尾i+Ι位進行拷貝,然後從其數據段的起始位開始,逐位右移i 位。接著再將從第i-Ι個分片包數據段末尾拷貝的i位數據按順序存入第i個分片包數據段的前i位,最後將第i個分片包數據段的末位替換成SN。。然後對數據幀的hterface_ ID603進行檢測,經過幀結構重填單元111處理後的數據幀包含有InterfaCe_ID603信息, 根據hterfaCe_ID603的值能夠判斷乙太網MAC控制器連接到航空電子全雙工交換式網絡的冗餘網絡AGnterfaceJD = 001)還是網絡BQnterfaceJD = 010)。對進入到兩種不同網絡的數據幀需要分別使用SN進行順序標識。若檢測當前數據幀與上一數據幀的 Interface—ID相等時,SN++ ;若不相等,則將SN置0。SN初始值為0,並且由0至255循環。
圖4給出了協議轉換功能模塊108中由航空電子全雙工交換式乙太網協議到TCP/ IP協議幀格式轉換的實現流程。從普通乙太網卡接收到的數據包流從I^rotocoI接口 104 輸出後,進入到協議轉換功能模塊108。先被數據幀檢測單元110攔截,首先檢測數據幀的物理分層(PhisycalPage),當不滿足條件Wiisycall^age > = 3時,數據幀不被處理,直接從協議轉換功能模塊108輸出並傳遞至傳輸層。當滿足條件Wiisycall^age >= 3時進一步檢測數據幀MAC頭,如果檢測到MAC頭中MAC目的地址前32bit為「xxxx xxllxxxx xxxx χχχχ χχχχ χχχχχχχχ」形式,與航空電子全雙工交換式乙太網協議目的MAC格式的固定域 605 一致,並且MAC源地址的前24bit為「000000100000000000000000」,與航空電子全雙工交換式乙太網協議源MAC格式的固定域601 (如圖6所示)一致,則判定該數據幀為航空電子全雙工交換式乙太網協議幀。如果檢測到數據幀的MAC頭與航空電子全雙工乙太網協議 MAC格式不匹配,數據幀將不被處理,直接從轉換功能模塊108輸出並傳遞至傳輸層。對判定為航空電子全雙工交換式乙太網協議幀的數據幀繼續檢測它的VL_ID 606是否與用戶配置的需要處理的虛擬鏈路對應的虛擬鏈路標識符(Avi0niCSVL_ID) —致,若一致,則該數據幀進入到下一功能單元幀結構重填單元111的處理,如果不一致,數據幀將不再被處理,直接從轉換功能模塊108輸出並傳遞至傳輸層。在幀結構重填單元111,先獲取數據幀的首地址,即獲取到了數據幀MAC頭的首地址,根據用戶配置的DesMAC參數對數據幀的目的MAC進行重新填充。然後使用MacHAddress- > Next獲取IP頭首地址,再根據用戶配置的DesIP參數對數據幀的目的IP頭進行重新填充,並將數據幀的生存時間填寫為用戶配置的TTL參數,重新計算頭部校驗和。最後使用IPHAddress- > Next獲取UDP頭首地址,重新計算UDP校驗和。經過數據幀檢測單元110和幀結構重填單元111處理的數據幀完成了由航空電子全雙工交換式乙太網協議幀格式到TCP/IP協議幀格式的轉換。
圖5給出了流量整形功能模塊的實現流程。數據包流進入流量整形功能模塊109 後,判斷數據包是否排在數據包緩衝區的首位,若數據包排列不在首位,則進行排隊等待, 待緩衝區內在此數據包之前無數據包時,數據包從緩衝區輸出。若數據包排列在首位,數據包直接從緩衝區輸出。系統時間記為Systemtime,記錄每個數據包從緩衝區輸出時的系統時間,記為Systemtime 1。記錄每個數據包從流量整形功能模塊109輸出時的系統時間,記為Systemtime 2,計算當前數據包與上一數據包輸出流量整形功能模塊109的實際時間間隔Treal = Systemtime 1 (當前數據包)-Systemtime 2 (上一數據包),(Treal與系統時間的單位均為100ns)判斷實際時間間隔!;-與!^^!1·單位為100ns)的大小。若 Treal ^ Tbag,則此數據包無需調整,直接從流量整形功能模塊109輸出,並記錄輸出時的系統時間Systemtime 2 ;若Treal < TBAe,則對該數據包作流量整形處理。首先計算流量整形的延時長度θ = Treal-TBAe。TBA(; = BAGX 10000,BAG為用戶配置的幀間間隔參量,範圍為0至128, 單位為ms ;然後利用內核延時NdidtallExeCuti0n(譯文為NDIS停止執行)函數循環實
現延時。設置NdidtallExecution函數延時長度為10 μ s,M訂*數=廠二^40。為
倨壞/義 100 100
確保延時精度,每次循環結束後讀取當前系統時間Systemtime now,再檢測當前幀間間隔
T' 是否達到TBAe。當前幀間間隔T' 由當前系統時間Systemtime now與上一數據
包從流量整形功能模塊輸出的系統時間Systemtime 2作差得到,即T' real = Systemtime
now-Systemtime 2。如果未達到TBAe,則繼續循環。如果達到了 TBAe,則跳出延時循環。數
據包結束延時循環後,記錄當前的系統時間Systemtime 2,並從流量整形功能模塊109輸
出。經過流量整形後的數據包流符合BAG標準。圖6給出了航空電子全雙工交換式乙太網
通信協議的數據幀格式圖6(a)和圖6(b)分別對應了最小最大幀情況下得航空電子全雙
工交換式乙太網通信協議幀結構、圖6(c)和圖6(d)分別對應了航空電子全雙工交換式以
太網數據幀中的源MAC地址與目的MAC地址的格式、圖6 (e)是航空電子全雙工交換式乙太網數據幀IPv4數據幀結構、圖6(f)和圖6(g)分別對應了航空電子全雙工交換式乙太網數據幀中的源IP位址與目的IP位址的格式。航空電子全雙工交換式乙太網數據幀格式是本發明協議轉換功能模塊實施根據。固定域601為「000000100000000000000000」,固定域 604 為 「00000」,固定域 605 為 「XXXX xxllxxxx xxxx xxxx xxxx xxxx xxxx」,其中 「X」 代表0或1。航空電子全雙工交換式乙太網協議源IP格式的首字節607為「00001010」,目的 IP格式的前兩字節610為「1110000011100000」。在本發明的具體實施過程中,當數據幀由普通乙太網向航空電子全雙工交換式乙太網傳遞,在經過航空電子通信中間件進行幀結構重新填充時,所需的一些參數是基於用戶可配置方式的,這些參數包括VL_ID (虛擬鏈路標識符)606、User_Defined_ID (用戶定義標識符)602、Interface_ID (接口標識符)603、 Partiti0n_ID (分區標識)608。用戶在配置過程中應該保證這些配置的參數與航空電子全雙工交換式乙太網數據幀的格式相兼容。VL_ID 606是一個單端的16-bit域,取值範圍是 1至65535。User_Defined_ID602是一個單獨的16-bit域,系統集成者應該合理的使用它, 用以為每個在網絡上IP可尋址的主機給定一個獨一無二的並且有含義的IP位址,User_ Defined_ID602的取值範圍是0至65535。由於航空電子全雙工交換式乙太網數據幀格式中MAC源地址的最後一字節由Interface_ID603與固定域604 「00000」構成,配置文件113 中將兩者作為一個整體來由用戶填寫而配置,因此在配置文件113中InterfaCe_ID603項只能在0、32、64、96、1觀、160或者2M七個數據中選擇一個進行填寫;另外在航空電子全雙工交換式乙太網幀格式中,IP源地址的Partition_ID 609是由3bit空餘域609與另外 5bit構成,由於系統分區不會超過32,因此空餘域609 —般不用並設為「000」,所以協議規定下,Partition_ID 608的值的範圍是0到31。圖7給出了中間驅動程序中流量整形功能模塊的原理圖7(a)在TCP/IP協議下無規整的數據包流、圖7(b)在航空電子全雙工交換式乙太網協議下經過BAG整形後的數據包流。本發明中間件系統的流量整形功能模塊實現了對TCP/IP協議下無規整的數據包流到符合用戶設定BAG規範的數據包流的調整。即當一組數據包(即數據包1、數據包2、數據包3、數據包4)從普通乙太網向航空電子全雙工交換式乙太網傳遞時,在經過本發明中間件系統後,數據幀的幀間間隔將變為不小於BAG。在航空電子全雙工交換式乙太網通信協議中,規定了流量整形功能能夠在Ims到^Sms的範圍內控制BAG的值,這些值應該滿足如下的公式BAG = 2K(單位ms),(K的取值範圍是0到7),在本發明的具體實施過程中,用戶在配置文件113中輸入的BAG值應當符合BAG的範圍要求,在普通乙太網中使用UDP數據包發送工具時,數據包的間隔可為任意值,無須特別設定。用戶可以將數據包流的發送間隔 Treal/10000 (單位為ms)設置成為小於BAG數值的值,來觀察航空電子通信中間件的數據流規整功能。在普通乙太網中UDP數據包發送間隔小於BAG的情況下,數據包流會經過流量整形,在航空電子全雙工交換式網絡中使用端系統測試工具抓包的結果應該是經過整形後的數據包之間的間隔不小於BAG。在普通乙太網中UDP數據包發送間隔不小於BAG的情況下,本發明中間件系統對這樣的數據包流不予處理。圖8為使用本發明中間件系統進行航空電子全雙工交換式網絡與普通乙太網進行通信的執行步驟。其具體步驟為步驟一將netsf. inf (譯文為內核驅動安裝信息文件)、netsf_m. inf (譯文為 微埠安裝信息文件)以及AvionicsTransfer.syM譯文為航空電子通信安裝文件,即本發明中間件安裝文件)放置在同一子文件夾下,在本地連接屬性中點擊安裝服務,選擇 netsf. inf進行安裝。執行netsf. inf安裝後,在本地屬性的「此連接使用以下選項」一欄中新增了 Avionicsl^ransfer driver(譯文為航空電子通信驅動,即本發明中間件驅動)項;步驟二 運行RESETPARA. exe,進入到Debug (譯文為調試)路徑下,執行enum (譯文為枚舉)命令,讀取網絡適配器的物理地址,選擇需要綁定的普通乙太網卡DEVICE(譯文為設備)號;步驟三在RESETPARA (reset parameter,譯文為重置參數)文件夾的Debug文件夾下,填寫並保存配置文件 113UDefinedPare. txt (User Defined Parameters, txt,譯文為用戶定義參數文件)。按照文件中預設格式填寫。首行為待綁定網卡的DEVICE號。還需配置的信息包括VL_ID606,取值範圍由1至65535 ;User_Def ined_ID602,取值範圍由0 至 65535 ;Interface_ID603,取 0,32,64,96,128,160,224 七個值之一;需要處理的埠 號 Usport,取值範圍由0至65535 ;Partition_ID608,取值範圍由0至31 ;BAG,取值範圍為0 至1 ;步驟四執行配置文件命令。在RESETPARA. exe窗口中,進入到Debug路徑下,執行命令 resetpara/set UDefinedPare. txt (reset parameters/set UDefinedPare. txt,譯文為重置參數/對用戶定義參數文件操作)。則配置文件113被傳遞至中間層驅動的配置文件解析模塊107中。配置文件113經由配置文件解析模塊107解析後,獲得用戶配置參數,並將參數分別傳遞至協議轉換功能模塊108與流量整形功能模塊109 ;步驟五啟動數據包發送程序,由安裝了航空電子網絡通信中間件的普通乙太網卡向航空電子全雙工交換式乙太網板卡發送數據包,數據包從數據鏈路層輸出後首先進入到本發明中間件系統的數據幀檢測單元110,數據幀檢測單元110對數據幀進行檢測,不符合檢測條件的數據包直接從數據幀檢測單元110輸出並傳遞至網卡。符合檢測條件的數據包進入到幀結構重填單元111 ;步驟六本發明中間件系統根據配置文件解析模塊107傳遞來的用戶設定幀結構重填欄位對進入到幀結構重填單元111的數據幀的幀結構進行重新填寫,使數據幀符合航空電子全雙工交換式乙太網協議幀格式的規定。經過幀結構重填單元111處理後的數據幀進入到SN插入單元212 ;步驟七SN插入單元212對數據幀進行SN標識。完成SN標識後,數據幀從協議轉換功能模塊108輸出,進入到流量整形功能模塊109 ;步驟八流量整形功能模塊109計算數據幀實際幀間間隔Treal,並將數據幀實際幀間間隔Treal與用戶設置幀間間隔TBAe比較,如果TMal彡TBAe,則將數據包直接輸出並傳遞至網卡;如果Treal < TBAe,則對數據包進行流量整形;步驟九對數據包進行流量整形。經過流量整形後的數據包從本發明中間件系統輸出;步驟十經過本發明中間件系統處理後的數據包抵達乙太網卡,向外界發送;步驟十一在安裝有航空電子全雙工交換式乙太網板卡的接收機上使用端系統測試工具接收數據包,查看數據包的正確性。數據結果1.仿真環境
拓撲結構仿真系統由一臺普通乙太網卡終端與一臺航空電子交換式全雙工乙太網卡終端組成,兩個網絡通過網線互連進行消息發送。其中在普通乙太網卡上安裝 AvionicsTransfeH譯文為航空電子通信,即本發明中間件)服務。2.配置文件
權利要求
1.一種具有網絡流量整形的航空電子通信中間件系統,該系統用於普通乙太網與航空電子網絡之間進行數據流轉換傳輸,其特徵在於該系統包括配置文件解析功能模塊 (107)、協議轉換功能模塊(108)與流量整形功能模塊(109);其中協議轉換功能模塊(108) 由數據幀檢測單元(110)、幀結構重填單元(111)以及SN插入單元構成(112);所述配置文件解析功能模塊(107)用於配置數據幀檢測條件、幀結構重填區段以及幀間間隔,並對配置文件進行解析,從而將數據傳遞至協議轉換功能模塊(108)與流量整形功能模塊(109);所述協議轉換功能模塊(108)利用檢測條件對數據包進行檢測,當數據包從普通乙太網進入到航空電子網絡時,檢測條件為數據幀的物理分層、協議類型以及源埠號,當數據包從航空電子網絡進入到普通乙太網時,檢測條件為數據幀的物理分層、MAC頭以及VL_ID 信息位,對符合檢測條件的數據包進行航空電子網絡通信協議幀格式與普通乙太網TCP/IP 協議的互相轉換;所述流量整形功能模塊(109)是在數據幀由普通乙太網進入到航空電子全雙工交換式乙太網絡中時,針對航空電子全雙工交換式乙太網虛擬鏈路調度模型,利用NDIS內核調度延遲功能,實現的流量整形機制,即保證數據幀的幀間間隔不小於規定的時間間隔,從消息生成規律上直接限制接入航空電子全雙工交換式乙太網的通信帶寬,保障了航空電子全雙工交換式乙太網絡的通信確定性。
2.根據權利要求1所述的具有網絡流量整形的航空電子通信中間件系統,其特徵在於中間驅動程序在上端開放出一個Miniport接口(103),在其下端開放出一個ftOtocol 接口(104);其中位於上面的Miniport接口(103)與上層驅動程序的ftOtocol接口(102) 進行對接;!Protocol接口(104)同底層驅動程序的Miniport接口(10 進行對接;這樣在安裝了航空電子全雙工交換式網絡協議中間件的系統中,從上層向外界網絡發送的數據包和從外界網絡接收的數據包都必須經過中間層驅動程序的處理再繼續傳遞。
3.根據權利要求1所述的具有網絡流量整形的航空電子通信中間件系統,其特徵在於利用流量整形功能模塊(109)對數據包流進行流量整形後,數據包流中相鄰數據包之間的時間間隔發生了改變,用戶配置的幀間間隔記為TBAe,則有第一數據包與第二數據包之間的幀間間隔記為TBAei、第二數據包與第三數據包之間的幀間間隔記為TBAe2、第三數據包與第四數據包之間的幀間間隔記為TBAe3 ;當數據包流從普通乙太網向航空電子全雙工乙太網發送時,對於檢測到協議類型為UDP且源埠號與配置文件解析功能模塊(107)傳遞來 Whport參數相等的數據幀,將先經過協議轉換功能模塊(108)的處理,即將數據幀的結構進行重新填充以及進行SN的插入;設置檢測條件ip_p = 17,是由於航空電子全雙工交換式乙太網中採用UDP數據包進行通信,經過協議轉換功能模塊(108)的處理後,數據幀格式將從TCP/IP協議幀格式轉換成航空電子全雙工交換式乙太網協議幀格式規範;協議轉換功能模塊(108)中所需^port參數以及幀結構重填欄位均由配置文件解析功能模塊 (107)提供;接下來,流量整形功能模塊(109)將會對從協議轉換功能模塊(108)輸出的數據包流進行進一步處理;利用實際幀間間隔Treal與用戶配置幀間間隔Tbm比較的結果來判別是否對數據包流進行整形,如果Treal < Tbag,則對數據包流整形;例如圖示中,計算到Trall <TBAe,則對數據包進行流量整形處理,當數據包從流量整形功能模塊(109)輸出時,時間間隔Treall已經規整到TBAei,則TBAei = Tbag ;計算到T_12 TBAe,這樣的數據包將不被處理,在從流量整形功能模塊(109)輸出時,時間間隔未發生改變,仍滿足TBAe3 = Treal3 ;當在普通乙太網接收數據包時,配置文件解析功能模塊(107)對配置文件(113)進行解析,獲得AvionicsVL_ID、TTL,DesIP與DesMAC 參數;AvionicsVLJD參數被傳遞至數據幀檢測單元(110),TTL、DesIP與DesMAC參數被傳遞至協議轉換功能模塊(108);從I^otocol接口(104)輸出的數據包先經過協議轉換功能模塊(108)的數據幀檢測單元(110)的處理,數據幀檢測單元(110)檢測通過數據幀的 MAC頭來確認該數據幀是否為航空電子全雙工交換式乙太網協議幀,若數據幀是航空電子全雙工交換式乙太網協議幀,進一步檢測該數據幀的VL_ID信息位(511)是否與用戶配置的Avi0niCSVL_ID參數一致;若一致,數據幀進入幀結構重填單元(111)處理;幀結構重填單元(111)利用TTL,DesIP與DesMAC參數並根據TCP/IP協議幀格式規範對數據幀結構進行重新填充,保證進入到普通乙太網的數據包符合TCP/IP協議幀格式規範。
4.根據權利要求1所述的具有網絡流量整形的航空電子通信中間件系統,其特徵在於用戶需要在配置文件(113)中輸入的配置信息包括三部分數據幀檢測條件、幀結構重填區段以及幀間間隔;數據幀檢測條件參數有Usp0rt、AvionicsVL_ID ;幀結構重填區段參數有VL_ID(606) ,User_Defined_ID(602),Interface_ID603,Partition_ID(608) ,TTL, DesIP, DesMAC ;幀間間隔參數BAG。
5.根據權利要求1所述的具有網絡流量整形的航空電子通信中間件系統,其特徵在於協議轉換功能模塊(108)中由航空電子全雙工交換式乙太網協議到TCP/IP協議幀格式轉換;從普通乙太網卡接收到的數據包流從!Protocol接口(104)輸出後,進入到協議轉換功能模塊(108);先被數據幀檢測單元(110)攔截,首先檢測數據幀的物理分層,當不滿足條件Wiisycall^ge >= 3時,數據幀不被處理,直接從協議轉換功能模塊(108)輸出並傳遞至傳輸層;當滿足條件Wiisycall^age >= 3時進一步檢測數據幀MAC頭,如果檢測到 MAC 頭中 MAC 目的地址前 32bit 為"xxxx xxllxxxx xxxx xxxx xxxx xxxx xxxx,,形式,與航空電子全雙工交換式乙太網協議目的MAC格式的固定域(605) —致,並且MAC源地址的前Mbit為「000000100000000000000000」,與航空電子全雙工交換式乙太網協議源MAC格式的固定域(601) —致,則判定該數據幀為航空電子全雙工交換式乙太網協議幀;如果檢測到數據幀的MAC頭與航空電子全雙工乙太網協議MAC格式不匹配,數據幀將不被處理, 直接從轉換功能模塊(108)輸出並傳遞至傳輸層;對判定為航空電子全雙工交換式乙太網協議幀的數據幀繼續檢測它的VL_ID(606)是否與用戶配置的需要處理的虛擬鏈路對應的虛擬鏈路標識符(Avi0niCSVL_ID) —致,若一致,則該數據幀進入到下一功能單元幀結構重填單元(111)的處理,如果不一致,數據幀將不再被處理,直接從轉換功能模塊(108)輸出並傳遞至傳輸層;在幀結構重填單元(111),先獲取數據幀的首地址,即獲取到了數據幀 MAC頭的首地址,根據用戶配置的DesMAC參數對數據幀的目的MAC進行重新填充;然後使用MacHAddress- > Next獲取IP頭首地址,再根據用戶配置的DesIP參數對數據幀的目的 IP頭進行重新填充,並將數據幀的生存時間填寫為用戶配置的TTL參數,重新計算頭部校驗和;最後使用IPHAddress- > Next獲取UDP頭首地址,重新計算UDP校驗和;經過數據幀檢測單元(110)和幀結構重填單元(111)處理的數據幀完成了由航空電子全雙工交換式乙太網協議幀格式到TCP/IP協議幀格式的轉換。
6.根據權利要求1所述的具有網絡流量整形的航空電子通信中間件系統,其特徵在於使用所述中間件系統進行航空電子全雙工交換式網絡與普通乙太網進行通信的執行步驟;步驟一將 netsf. inf、netsf_m. inf 以及AvionicsTransfer. sys 放置在同一子文件夾下,在本地連接屬性中點擊安裝服務,選擇netsf. inf進行安裝;執行netsf. inf安裝後,在本地屬性的「此連接使用以下選項」 一欄中新增了 Avionicsl^ransfer driver項;步驟二 運行RESETPARA. exe,進入到Debug路徑下,執行enum命令,讀取網絡適配器的物理地址,選擇需要綁定的普通乙太網卡DEVICE號;步驟三在RESETPARA文件夾的Debug文件夾下,填寫並保存配置文件(113) UDefinedPare. txt ;按照文件中預設格式填寫;首行為待綁定網卡的DEVICE號;還需配置的信息包括VL_ID (606),取值範圍由1至65535 ;User_Def ined_ID (602),取值範圍由0至 65535 ;Interface_ID (603),取 0,32,64,96,128,160,224 七個值之一;需要處理的埠 號 Usport,取值範圍由0至65535 ;Partition_ID (608),取值範圍由0至31 ;BAG,取值範圍為 0 至 1 ;步驟四執行配置文件命令;在RESETPARA. exe窗口中,進入到Debug路徑下,執行命令resetpara/set UDefinedPare. txt ;則配置文件113被傳遞至中間層驅動的配置文件解析模塊(107)中;配置文件(11 經由配置文件解析模塊(107)解析後,獲得用戶配置參數,並將參數分別傳遞至協議轉換功能模塊(108)與流量整形功能模塊(109);步驟五啟動數據包發送程序,由安裝了航空電子網絡通信中間件的普通乙太網卡向航空電子全雙工交換式乙太網板卡發送數據包,數據包從數據鏈路層輸出後首先進入到本發明中間件系統的數據幀檢測單元(110),數據幀檢測單元(110)對數據幀進行檢測,不符合檢測條件的數據包直接從數據幀檢測單元(110)輸出並傳遞至網卡;符合檢測條件的數據包進入到幀結構重填單元(111);步驟六本發明中間件系統根據配置文件解析模塊(107)傳遞來的用戶設定幀結構重填欄位對進入到幀結構重填單元(111)的數據幀的幀結構進行重新填寫,使數據幀符合航空電子全雙工交換式乙太網協議幀格式的規定;經過幀結構重填單元(111)處理後的數據幀進入到SN插入單元012);步驟七SN插入單元(21 對數據幀進行SN標識;完成SN標識後,數據幀從協議轉換功能模塊(108)輸出,進入到流量整形功能模塊(109);步驟八流量整形功能模塊(109)計算數據幀實際幀間間隔Treal,並將數據幀實際幀間間隔Treal與用戶設置幀間間隔TBAe比較,如果TMal彡TBAe,則將數據包直接輸出並傳遞至網卡;如果Treal < TBAe,則對數據包進行流量整形;步驟九對數據包進行流量整形;經過流量整形後的數據包從本發明中間件系統輸出;步驟十經過本發明中間件系統處理後的數據包抵達乙太網卡,向外界發送; 步驟十一在安裝有航空電子全雙工交換式乙太網板卡的接收機上使用端系統測試工具接收數據包,查看數據包的正確性。
全文摘要
本發明公開了一種具有網絡流量整形的航空電子通信中間件系統,該系統包括配置文件解析功能模塊、協議轉換功能模塊與流量整形功能模塊;其中協議轉換功能模塊由數據幀檢測單元、幀結構重填單元以及SN插入單元構成。本發明中間件系統基於NDIS模型的改造,通過對數據幀結構重填與SN插入,實現了航空電子全雙工交換式網絡協議與TCP/IP協議的互相轉換,通過內核態的延時數據包發送,實現了對數據包流的整形。最終獲得的航空電子通信中間件能夠作為普通乙太網與航空電子全雙工交換式網絡的連接部件,實現航空電子應用通信過程透明的在航空電子全雙工交換式網絡上運行。
文檔編號H04L12/24GK102510383SQ201110371138
公開日2012年6月20日 申請日期2011年11月21日 優先權日2011年11月21日
發明者何鋒, 易娟, 李峭, 熊華鋼, 王彤 申請人:北京航空航天大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀