航空物流數(shù)據(jù)智能分發(fā)模型及分發(fā)方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種航空物流數(shù)據(jù)智能分發(fā)模型及分發(fā)方法,其特征在于:包括:iLink路由引擎、iLink數(shù)據(jù)庫(kù)、iLink客戶端;iLink路由引擎上設(shè)置有:TypeB接口、MATIP接口、FTP接口、MQ接口;該iLink數(shù)據(jù)庫(kù)包括系統(tǒng)配置區(qū)、待轉(zhuǎn)發(fā)區(qū)、待接收區(qū)、歷史消息區(qū)和日志區(qū)、iLink路由器;該iLink客戶端通過(guò)FTP接口與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn)FTP文件夾的交換;該iLink客戶端通過(guò)MQ接口與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn)MQ隊(duì)列數(shù)據(jù)的交換。該專(zhuān)利采用SOA面向服務(wù)架構(gòu),通過(guò)ESB企業(yè)服務(wù)總線技術(shù)研究適合于我國(guó)的航空物流運(yùn)輸?shù)年P(guān)鍵技術(shù),為全行業(yè)的物流參與者提供全流程的一站式解決方案。
【專(zhuān)利說(shuō)明】
航空物流數(shù)據(jù)智能分發(fā)模型及分發(fā)方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及屬于航海物流技術(shù)領(lǐng)域,特別是設(shè)及一種航空物流數(shù)據(jù)智能分發(fā)模型 及分發(fā)方法。
【背景技術(shù)】
[0002] 隨著航空物流業(yè)的不斷發(fā)展,我國(guó)民航航空運(yùn)輸業(yè)近年有較大發(fā)展,貨運(yùn)總周轉(zhuǎn) 量年增長(zhǎng)率達(dá)4.7 %,2012年總周轉(zhuǎn)量達(dá)632億噸,貨郵運(yùn)輸量達(dá)578萬(wàn)噸。但航空運(yùn)輸業(yè)與 其作為國(guó)家經(jīng)濟(jì)安全和國(guó)民經(jīng)濟(jì)命脈的戰(zhàn)略產(chǎn)業(yè)地位不相匹配。主要表現(xiàn)在市場(chǎng)占有率 低、航空運(yùn)力不足,信息孤島現(xiàn)象嚴(yán)重,缺乏統(tǒng)一信息標(biāo)準(zhǔn),信息共享程度低,貨單分離和缺 乏技術(shù)協(xié)同等,使得航空物流資源難W得到高效和優(yōu)化配置。
[0003] 2006年,梅立軍等人提出了 "代理+服務(wù)器"松散禪合模式的數(shù)據(jù)交換平臺(tái)系統(tǒng),系 統(tǒng)利用消息服務(wù)解決數(shù)據(jù)交換過(guò)程中的復(fù)雜的控制信息交互,該系統(tǒng)實(shí)現(xiàn)過(guò)程中借鑒了 SOA體系架構(gòu)思想;2008年,賈宇清等人針對(duì)電子交換系統(tǒng)提出了基于開(kāi)放平臺(tái)的新架構(gòu) XML/抓I系統(tǒng),建立了與XML相結(jié)合的抓I系統(tǒng)模型;2010年,王淑營(yíng)提出了面向產(chǎn)業(yè)鏈協(xié)同 商務(wù)平臺(tái)的動(dòng)態(tài)數(shù)據(jù)交換解決方案,設(shè)計(jì)和實(shí)現(xiàn)了平臺(tái)端和客戶端數(shù)據(jù)交換適配器,實(shí)現(xiàn) 了用戶身份和交換業(yè)務(wù)關(guān)鍵字驅(qū)動(dòng)的動(dòng)態(tài)數(shù)據(jù)交換。
[0004] 為了實(shí)現(xiàn)航空物流領(lǐng)域全流程用戶的航空貨運(yùn)數(shù)據(jù)交換與共享,設(shè)計(jì)開(kāi)發(fā)一種適 合于我國(guó)的航空物流運(yùn)輸?shù)年P(guān)鍵技術(shù),為全行業(yè)的物流參與者提供全流程的一站式解決方 案。實(shí)現(xiàn)與貨主、貨代、貨站、政府部口、海關(guān)、銀行等的電子網(wǎng)絡(luò)連接和信息交換,通過(guò)實(shí)現(xiàn) 公司整體的網(wǎng)絡(luò)化、信息化來(lái)實(shí)施業(yè)務(wù)運(yùn)作。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明要解決的技術(shù)問(wèn)題是:提供一種航空物流數(shù)據(jù)智能分發(fā)模型及分發(fā)方法。 該專(zhuān)利采用S0A(Service-Oriented Architecture)面向服務(wù)架構(gòu),通過(guò)ESlKEnte;rp;rise Service Bus)企業(yè)服務(wù)總線技術(shù)研究適合于我國(guó)的航空物流運(yùn)輸?shù)年P(guān)鍵技術(shù),為全行業(yè)的 物流參與者提供全流程的一站式解決方案。實(shí)現(xiàn)與貨主、貨代、貨站、政府部口、海關(guān)、銀行 等的電子網(wǎng)絡(luò)連接和信息交換,通過(guò)實(shí)現(xiàn)公司整體的網(wǎng)絡(luò)化、信息化來(lái)實(shí)施業(yè)務(wù)運(yùn)作。
[0006] 本發(fā)明為解決公知技術(shù)中存在的技術(shù)問(wèn)題所采取的技術(shù)方案是:
[0007] -種航空物流數(shù)據(jù)智能分發(fā)模型,至少包括:
[000引iLink路由引擎;在該iLink路由引擎上設(shè)置有:用于與中國(guó)空管網(wǎng)絡(luò)進(jìn)行AFTN格 式報(bào)文數(shù)據(jù)交互、與國(guó)際航空電信網(wǎng)進(jìn)行SITA格式報(bào)文數(shù)據(jù)交互的TypeB接口;用于與目標(biāo) 隊(duì)列進(jìn)行數(shù)據(jù)交互的MTIP接口;用于與Internet網(wǎng)絡(luò)進(jìn)行目標(biāo)FTP文件夾交互的FTP接口; 用于與國(guó)際海關(guān)隊(duì)列管理器和Traxon Europ進(jìn)行目標(biāo)MQ隊(duì)列數(shù)據(jù)交互的MQ接口;
[0009] iLink數(shù)據(jù)庫(kù);該iLink數(shù)據(jù)庫(kù)包括用于存儲(chǔ)基礎(chǔ)數(shù)據(jù)及配置iLink規(guī)則的系統(tǒng)配 置區(qū)、用于發(fā)送數(shù)據(jù)臨時(shí)表的待轉(zhuǎn)發(fā)區(qū)、用于數(shù)據(jù)被轉(zhuǎn)發(fā)后設(shè)置存儲(chǔ)位置的待接收區(qū)、用于 記錄iLink中已被處理的數(shù)據(jù)及簡(jiǎn)要日志并進(jìn)行歷史查詢的歷史消息區(qū)和日志區(qū)、用于決 定數(shù)據(jù)轉(zhuǎn)發(fā)至目的用戶的iLink路由器;
[0010] 用于與iLink數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)讀取和寫(xiě)入的iLink客戶端;該iLink客戶端通過(guò)FTP 接口與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn)FTP文件夾的交換;該iLink客戶端通過(guò)MQ接口與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn) MQ隊(duì)列數(shù)據(jù)的交換。
[0011] 進(jìn)一步:在iLink客戶端設(shè)置有一個(gè)基于化t 2.0的Winform程序,iLink SDK將文 件夾下的iLink消息文件或者SITA報(bào)文發(fā)送至目的地;iLink SDK同時(shí)將接收iLink消息,把 iLink消息放置在用戶設(shè)定的文件夾下;iLink SDK包括四個(gè)文件夾,四個(gè)文件夾分別為:監(jiān) 控發(fā)送文件路徑的OUT文件夾、備份文件路徑的BAK文件夾、接收文件路徑的IN文件夾、錯(cuò)誤 文件路徑的邸R文件夾。
[0012] -種航空物流數(shù)據(jù)智能分發(fā)模型的分發(fā)方法,包括如下步驟:
[OOU] 步驟IOUiLi址發(fā)送報(bào)文,具體為:
[0014]首先,iLi址用戶通過(guò)iLi址客戶端將報(bào)文數(shù)據(jù)發(fā)送到iLi址接口;
[0015] 然后,iLink接口收到數(shù)據(jù)后對(duì)數(shù)據(jù)進(jìn)行安全驗(yàn)證,然后將數(shù)據(jù)發(fā)送到第一待轉(zhuǎn)發(fā) 區(qū);
[0016] 隨后,采用基于動(dòng)態(tài)優(yōu)先級(jí)的先來(lái)先服務(wù)策略對(duì)報(bào)文數(shù)據(jù)排序,排序后的數(shù)據(jù)被 放入第二待轉(zhuǎn)發(fā)區(qū)臨時(shí)存儲(chǔ);
[0017] 最后,根據(jù)報(bào)文數(shù)據(jù)的業(yè)務(wù)類(lèi)型智能判斷目的地地址,同時(shí)判斷是否使用插件對(duì) 報(bào)文格式進(jìn)行轉(zhuǎn)換,然后將數(shù)據(jù)發(fā)送到目標(biāo)隊(duì)列區(qū)存儲(chǔ);
[0018] 步驟102、iLink接收?qǐng)?bào)文,具體為:
[0019]當(dāng)消息到達(dá)后,iLi址客戶端首先向iLi址接口提交接收消息的請(qǐng)求;
[0020]然后webService分析請(qǐng)求消息的目標(biāo)隊(duì)列存儲(chǔ)區(qū);
[0021 ]隨后從目標(biāo)存儲(chǔ)區(qū)獲取消息轉(zhuǎn)存本地文件夾,進(jìn)而更新消息狀態(tài);
[0022] 最后iLi址服務(wù)器根據(jù)報(bào)文判斷是否需要發(fā)送應(yīng)答消息;并刪除消息;
[0023] 步驟103、iLi址路由報(bào)文,具體為:
[0024] 首先iLi址路由器對(duì)報(bào)文完整性驗(yàn)證;
[0025] 然后解析報(bào)頭,分析報(bào)文類(lèi)型;
[0026] 如果是TypeB和CIMP報(bào)文數(shù)據(jù),則對(duì)報(bào)文的地址解析,獲取發(fā)送者指定的iLink地 址;如果是XML文件數(shù)據(jù),解析<META>中的TYPE類(lèi)型,進(jìn)行業(yè)務(wù)數(shù)據(jù)智能判斷目的地地址;
[0027] 隨后獲取所有iLink地址;判斷是否需要對(duì)消息進(jìn)行格式轉(zhuǎn)換,如果需要,則載入 格式轉(zhuǎn)換插件;否則將消息路由到目標(biāo)存儲(chǔ)區(qū)。
[0028] 進(jìn)一步:數(shù)據(jù)在端端交互的過(guò)程中均采用RSA1024Key進(jìn)行AE巧日密。
[0029] 本發(fā)明具有的優(yōu)點(diǎn)和積極效果是:
[0030] 本專(zhuān)利設(shè)計(jì)航空物流數(shù)據(jù)共享平臺(tái)iLink,根據(jù)航空物流數(shù)據(jù)報(bào)文的格式與內(nèi)容, 實(shí)現(xiàn)傳輸過(guò)程中不同消息格式自動(dòng)轉(zhuǎn)換和智能分發(fā)到參與者,滿足不同終端系統(tǒng)的訪問(wèn)需 求。大量實(shí)驗(yàn)結(jié)果表明,該專(zhuān)利在發(fā)送和接收數(shù)據(jù)方面具有良好的性能;進(jìn)而實(shí)現(xiàn)航空物流 信息在航空物流業(yè)務(wù)鏈中各參與方之間實(shí)現(xiàn)數(shù)據(jù)交換與共享,為航空物流參與者與監(jiān)管者 提供一站式、行業(yè)級(jí)的應(yīng)用與服務(wù)。
【附圖說(shuō)明】
[0031 ]圖I是本發(fā)明航空物流數(shù)據(jù)智能分發(fā)模型的結(jié)構(gòu)圖;
[0032] 圖2是本發(fā)明航空物流數(shù)據(jù)智能分發(fā)模型的局部結(jié)構(gòu)圖;
[0033] 圖3是本發(fā)明優(yōu)選實(shí)施例中的報(bào)文流向圖;
[0034] 圖4是本發(fā)明優(yōu)選實(shí)施例中的消息隊(duì)列調(diào)度模型圖;
[0035] 圖5是本發(fā)明優(yōu)選實(shí)施例中的iLi址轉(zhuǎn)發(fā)流程圖;
[0036] 圖6是本發(fā)明優(yōu)選實(shí)施例的單機(jī)消息發(fā)送性能測(cè)試圖;
[0037] 圖7是本發(fā)明優(yōu)選實(shí)施例采用CCSClient.workerSend_P;rogressQianged方法耗時(shí) 分析圖;
[0038] 圖8是本發(fā)明優(yōu)選實(shí)施例的單機(jī)消息接收性能測(cè)試圖;
[0039] 圖9是本發(fā)明優(yōu)選實(shí)施例的多客戶端消息接收性能測(cè)試圖;
[0040] 圖10是本發(fā)明優(yōu)選實(shí)施例的各客戶端消息接收性能對(duì)比圖;
[0041] 圖11是本發(fā)明優(yōu)選實(shí)施例中路由器單獨(dú)處理CIMP報(bào)文和XML報(bào)文的統(tǒng)計(jì)圖;
[0042] 圖12是本發(fā)明優(yōu)選實(shí)施例中多路由器同時(shí)處理CIMP報(bào)文和XML報(bào)文的統(tǒng)計(jì)圖。
【具體實(shí)施方式】
[0043] 為能進(jìn)一步了解本發(fā)明的
【發(fā)明內(nèi)容】
、特點(diǎn)及功效,茲例舉W下實(shí)施例,并配合附圖 詳細(xì)說(shuō)明如下:
[0044] 請(qǐng)參閱圖1至圖4,一種航空物流數(shù)據(jù)智能分發(fā)模型,包括:
[0045] iLink路由引擎;在該iLink路由引擎上設(shè)置有:用于與中國(guó)空管網(wǎng)絡(luò)進(jìn)行AFTN格 式報(bào)文數(shù)據(jù)交互、與國(guó)際航空電信網(wǎng)進(jìn)行SITA格式報(bào)文數(shù)據(jù)交互的TypeB接口;用于與目標(biāo) 隊(duì)列進(jìn)行數(shù)據(jù)交互的MTIP接口;用于與Internet網(wǎng)絡(luò)進(jìn)行目標(biāo)FTP文件夾交互的FTP接口; 用于與國(guó)際海關(guān)隊(duì)列管理器和Traxon Europ進(jìn)行目標(biāo)MQ隊(duì)列數(shù)據(jù)交互的MQ接口;
[0046] iLink數(shù)據(jù)庫(kù);該iLink數(shù)據(jù)庫(kù)包括用于存儲(chǔ)基礎(chǔ)數(shù)據(jù)及配置iLink規(guī)則的系統(tǒng)配 置區(qū)、用于發(fā)送數(shù)據(jù)臨時(shí)表的待轉(zhuǎn)發(fā)區(qū)、用于數(shù)據(jù)被轉(zhuǎn)發(fā)后設(shè)置存儲(chǔ)位置的待接收區(qū)、用于 記錄iLink中已被處理的數(shù)據(jù)及簡(jiǎn)要日志并進(jìn)行歷史查詢的歷史消息區(qū)和日志區(qū)、用于決 定數(shù)據(jù)轉(zhuǎn)發(fā)至目的用戶的iLink路由器;
[0047] 用于與iLink數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)讀取和寫(xiě)入的iLink客戶端;該iLink客戶端通過(guò)FTP 接口與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn)FTP文件夾的交換;該iLink客戶端通過(guò)MQ接口與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn) MQ隊(duì)列數(shù)據(jù)的交換。
[004引進(jìn)一步:在iLink客戶端設(shè)置有一個(gè)基于化t 2.0的Winform程序,iLink SDK將文 件夾下的iLink消息文件或者SITA報(bào)文發(fā)送至目的地;iLink SDK同時(shí)將接收iLink消息,把 iLink消息放置在用戶設(shè)定的文件夾下;iLink SDK包括四個(gè)文件夾,四個(gè)文件夾分別為:監(jiān) 控發(fā)送文件路徑的OUT文件夾、備份文件路徑的BAK文件夾、接收文件路徑的IN文件夾、錯(cuò)誤 文件路徑的邸R文件夾。
[0049] -種航空物流數(shù)據(jù)智能分發(fā)模型的分發(fā)方法,包括如下步驟:
[0050] 步驟101、iLi址發(fā)送報(bào)文,具體為:
[0051 ]首先,iLi址用戶通過(guò)iLi址客戶端將報(bào)文數(shù)據(jù)發(fā)送到iLi址接口;
[0052]然后,iLink接口收到數(shù)據(jù)后對(duì)數(shù)據(jù)進(jìn)行安全驗(yàn)證,然后將數(shù)據(jù)發(fā)送到第一待轉(zhuǎn)發(fā) 區(qū);
[0053] 隨后,采用基于動(dòng)態(tài)優(yōu)先級(jí)的先來(lái)先服務(wù)策略對(duì)報(bào)文數(shù)據(jù)排序,排序后的數(shù)據(jù)被 放入第二待轉(zhuǎn)發(fā)區(qū)臨時(shí)存儲(chǔ);
[0054] 最后,根據(jù)報(bào)文數(shù)據(jù)的業(yè)務(wù)類(lèi)型智能判斷目的地地址,同時(shí)判斷是否使用插件對(duì) 報(bào)文格式進(jìn)行轉(zhuǎn)換,然后將數(shù)據(jù)發(fā)送到目標(biāo)隊(duì)列區(qū)存儲(chǔ);
[0化日]步驟102、iLink接收?qǐng)?bào)文,具體為:
[0056] 當(dāng)消息到達(dá)后,iLi址客戶端首先向iLi址接口提交接收消息的請(qǐng)求;
[0057] 然后webService分析請(qǐng)求消息的目標(biāo)隊(duì)列存儲(chǔ)區(qū);
[0058] 隨后從目標(biāo)存儲(chǔ)區(qū)獲取消息轉(zhuǎn)存本地文件夾,進(jìn)而更新消息狀態(tài);
[0059] 最后iLink服務(wù)器根據(jù)報(bào)文判斷是否需要發(fā)送應(yīng)答消息;并刪除消息;
[0060] 步驟103、iLi址路由報(bào)文,具體為:
[0061] 首先iLi址路由器對(duì)報(bào)文完整性驗(yàn)證;
[0062] 然后解析報(bào)頭,分析報(bào)文類(lèi)型;
[0063] 如果是TypeB和CIMP報(bào)文數(shù)據(jù),則對(duì)報(bào)文的地址解析,獲取發(fā)送者指定的iLink地 址;如果是XML文件數(shù)據(jù),解析<META>中的TYPE類(lèi)型,進(jìn)行業(yè)務(wù)數(shù)據(jù)智能判斷目的地地址;
[0064] 隨后獲取所有iLink地址;判斷是否需要對(duì)消息進(jìn)行格式轉(zhuǎn)換,如果需要,則載入 格式轉(zhuǎn)換插件;否則將消息路由到目標(biāo)存儲(chǔ)區(qū)。
[0065] 進(jìn)一步:數(shù)據(jù)在端端交互的過(guò)程中均采用RSA1024Key進(jìn)行AE巧日密.
[0066] iLink數(shù)據(jù)交換平臺(tái)采用基于Windows的.Net Framework平臺(tái),開(kāi)放的接口中包括 iLink SDK,Web Service,MQ等支持跨平臺(tái)技術(shù)的接口,可W被其他操作系統(tǒng)平臺(tái)的應(yīng)用所 調(diào)用,數(shù)據(jù)庫(kù)采用基于化acle的消息落地存儲(chǔ)模式,實(shí)現(xiàn)"接收-路由-分發(fā)",層層落地的模 式來(lái)保證端對(duì)端的傳輸。報(bào)文數(shù)據(jù)在iLink中將一直存在,直到其被正確,完整的傳輸?shù)侥?的系統(tǒng),端端通信都采用不同RSA1024Key,AES加密,因此,任何網(wǎng)絡(luò)環(huán)境下都將被安全傳 輸。
[0067] iLink的數(shù)據(jù)庫(kù)中分成若干個(gè)區(qū)域,每個(gè)區(qū)域由一張或多張表構(gòu)成。應(yīng)用分為中屯、 轉(zhuǎn)發(fā)程序和終端程序。如圖2所示:
[0068] 各個(gè)模塊的具體含義如下:
[0069] 1)系統(tǒng)配置區(qū):存儲(chǔ)基礎(chǔ)數(shù)據(jù)及配置iLink規(guī)則的一類(lèi)表,表名通常 始,是iLink的核屯、數(shù)據(jù);
[0070] 2)待轉(zhuǎn)發(fā)區(qū):發(fā)送數(shù)據(jù)臨時(shí)表,即所有用戶發(fā)送的數(shù)據(jù)都存儲(chǔ)在運(yùn)類(lèi)表中等待轉(zhuǎn) 發(fā),表名W t_msg_temp開(kāi)始;
[0071] 3)待接收區(qū):數(shù)據(jù)被轉(zhuǎn)發(fā)后存儲(chǔ)的位置,用戶可W直接在該類(lèi)表中提取接收數(shù)據(jù), Wt_ms 邑-queuegi^t-ms 邑-main^ 女臺(tái);
[0072] 4)歷史消息區(qū)和日志區(qū):記錄iLink中已被處理的數(shù)據(jù)及簡(jiǎn)要日志,用于歷史查 詢;
[0073] 5)轉(zhuǎn)發(fā)機(jī)器人QLi址路由器):決定數(shù)據(jù)轉(zhuǎn)發(fā)的目的用戶,是iLi址的核屯、應(yīng)用;
[0074] 6)用戶終端程序:完成數(shù)據(jù)上傳數(shù)據(jù)庫(kù)和從數(shù)據(jù)庫(kù)取數(shù)據(jù)的功能,如iLink客戶 JLjJU 乂而。
[00巧]在圖1中,iLink SDK是部署在用戶客戶端的一個(gè)基于.Net 2.0的Winform程序, iLink SDK將自動(dòng),及時(shí)把某個(gè)文件夾下的iLink消息文件或者SITA報(bào)文(用戶設(shè)定的)發(fā)送 至目的地;iLink SDK同時(shí)能夠自動(dòng)的將接收iLink消息,把其放置在用戶設(shè)定的文件夾下。 iLink SDK有四個(gè)文件夾,分別為:OUT(監(jiān)控發(fā)送文件路徑)、BAK(備份文件路徑)、IN(接收 文件路徑,包括正常接收的數(shù)據(jù),W及針對(duì)發(fā)送數(shù)據(jù)反饋的回執(zhí))、ERR(錯(cuò)誤文件路徑)。對(duì) 于設(shè)定的文件夾iLink SDK有完全的讀寫(xiě)權(quán)限,同時(shí),對(duì)于部署的機(jī)器iLink SDK也有讀寫(xiě) 應(yīng)用程序事件日志的權(quán)限。
[0076] iLi址地址構(gòu)造
[0077] iLink具有獨(dú)特的地址設(shè)計(jì)體系,但同時(shí)也兼容AFTN和SITA報(bào)文地址。iLink自定 義地址是由{A-Z,-,0-9}中的20個(gè)字符組成,如表1所示。
[007引表1iLi址地址
[0079]
[0080] 例如P-CTUXH-ILINK0000000表示。成都機(jī)場(chǎng)貨站",CTU成都,XH為機(jī)場(chǎng),ILINK表示 該用戶為成都機(jī)場(chǎng)的貨運(yùn)系統(tǒng)。如果已經(jīng)存在地址P-CTUXH-ILINK0000000,而成都機(jī)場(chǎng)貨 站用戶希望自己有兩個(gè)賬號(hào)實(shí)現(xiàn)不同功能(比如一個(gè)收數(shù)據(jù)、一個(gè)發(fā)數(shù)據(jù);或是系統(tǒng)升級(jí), 新舊系統(tǒng)一起運(yùn)行),則可分配新地址P-CTUXH-ILINK0000001。
[0081] iLi址的數(shù)據(jù)報(bào)文
[0082] iLink設(shè)計(jì)為一個(gè)彈性支持系統(tǒng),既能夠滿足行業(yè)內(nèi)傳統(tǒng)數(shù)據(jù)交換方式需求,也能 夠適應(yīng)新標(biāo)準(zhǔn)、新技術(shù)的擴(kuò)展需要,很方便的擴(kuò)展其支持的數(shù)據(jù)。目前iLink支持轉(zhuǎn)發(fā)的數(shù) 據(jù)有:
[0083] (1)符合SITA標(biāo)準(zhǔn)的Type B報(bào)文。
[0084] (2)符合iLink規(guī)范的自定義的XML數(shù)據(jù),有Infolink XML格式和化rgoXML格式兩 種。
[00化](3)CIMP格式的數(shù)據(jù)標(biāo)準(zhǔn)。
[0086] (4)iLi址支持傳輸文件,文件類(lèi)型包括:0ffice Word,Excel文檔,Jpg圖片等
[0087] 為了滿足不同用戶的特殊要求,iLink提供了報(bào)文格式轉(zhuǎn)換功能,可W通過(guò)插件或 者調(diào)用服務(wù)對(duì)報(bào)文進(jìn)行處理,W達(dá)到用戶的要求。例如,用戶1向用戶2發(fā)送了一份格式為 XML的報(bào)文,但用戶2只能接收CIMP格式的報(bào)文,在運(yùn)種情況下,iLink會(huì)自動(dòng)調(diào)用XML轉(zhuǎn)CIMP 插件,實(shí)現(xiàn)報(bào)文格式自動(dòng)轉(zhuǎn)換。如插件Cimp2CargoXml的作用是將Cimp格式的報(bào)文轉(zhuǎn)化為 XML格式的報(bào)文。
[0088] iLi址分發(fā)原理及其算法
[0089] iLink轉(zhuǎn)發(fā)的工作由iLink路由器來(lái)完成,實(shí)現(xiàn)數(shù)據(jù)從待轉(zhuǎn)發(fā)區(qū)到待接收區(qū)的轉(zhuǎn) 移,待轉(zhuǎn)發(fā)區(qū)是由多張臨時(shí)表組成,每個(gè)iLink路由器針對(duì)一張臨時(shí)表,不斷輪詢?cè)摫頇z查 待處理數(shù)據(jù)。iLink采用消息隊(duì)列接收?qǐng)?bào)文,每個(gè)消息隊(duì)列最大容量為5萬(wàn)條記錄,在高并發(fā) 情況下,如果某條消息隊(duì)列溢出,則將溢出的消息放入其余消息隊(duì)列中。
[0090] iLi址分發(fā)策略
[0091] iLink對(duì)外提供iLink客戶端和WebService服務(wù)接口進(jìn)行數(shù)據(jù)交換。下面介紹用戶 通過(guò)iLink客戶端進(jìn)行數(shù)據(jù)交換的過(guò)程。如果用戶I向用戶2發(fā)送一份報(bào)文如圖3,用戶I首先 將報(bào)文放到本地的發(fā)送目錄,即抓T文件目錄下,打開(kāi)iLink客戶端程序,iLink客戶端會(huì)將 報(bào)文發(fā)送至iLink系統(tǒng)中,iLink路由器自動(dòng)解析該報(bào)文的目的地地址,然后發(fā)送到用戶2的 本地接收目錄,即IN文件目錄下。
[0092] 在高并發(fā)情況下,例如,同一時(shí)刻,有大量的用戶將報(bào)文放在自己的本地發(fā)送目錄 下,如果沒(méi)有較好的分發(fā)算法和靈活的分發(fā)機(jī)制,勢(shì)必造成分發(fā)效率低,甚至導(dǎo)致系統(tǒng)擁 痕。在該系統(tǒng)中,采用基于動(dòng)態(tài)優(yōu)先級(jí)的先到先服務(wù)策略。算法的流程圖如圖5所示:
[0093] 該算法的關(guān)鍵是計(jì)算報(bào)文的權(quán)重,航空物流數(shù)據(jù)報(bào)頭中一般有源地址、目的地地 址,報(bào)文類(lèi)型、優(yōu)先級(jí)、ACK、發(fā)送時(shí)間和截至?xí)r間等等,給每一個(gè)屬性規(guī)定一個(gè)權(quán)重,屬性的 權(quán)重有確定的,也有非確定性的,比如,報(bào)文中,自帶的"優(yōu)先級(jí)"就是發(fā)送用戶事先給定的, 不同的狀態(tài)報(bào)文具有不同的優(yōu)先級(jí)。根據(jù)各個(gè)屬性的優(yōu)先級(jí),最終確定該報(bào)文的優(yōu)先級(jí),當(dāng) 發(fā)送失敗后,則重置優(yōu)先級(jí),最后根據(jù)各個(gè)屬性的權(quán)重重新計(jì)算整個(gè)報(bào)文的優(yōu)先級(jí)。運(yùn)個(gè)過(guò) 程稱(chēng)為消息隊(duì)列調(diào)度,如圖5所示。用戶將數(shù)據(jù)發(fā)送到iLink平臺(tái),由于數(shù)據(jù)量大,種類(lèi)繁多, 各種消息緊急程度也不一樣,所W路由轉(zhuǎn)發(fā)的順序不能僅僅依據(jù)先來(lái)先服務(wù)的轉(zhuǎn)發(fā)策略。 消息隊(duì)列調(diào)度就是根據(jù)報(bào)文數(shù)據(jù)的優(yōu)先級(jí)排序,排好序的報(bào)文數(shù)據(jù)放入待轉(zhuǎn)發(fā)區(qū)中等待轉(zhuǎn) 發(fā)機(jī)器人轉(zhuǎn)發(fā)至需要的用戶。
[0094] iLi址智能路由機(jī)制
[00M] iLink為解決航空物流領(lǐng)域數(shù)據(jù)交換需求,針對(duì)行業(yè)標(biāo)準(zhǔn)報(bào)文建立完善的業(yè)務(wù)數(shù) 據(jù)模型,通過(guò)路由引擎自動(dòng)將報(bào)文路由至報(bào)文相關(guān)接收方。iLink系統(tǒng)中共有S種路由機(jī) 審IJ,分別是智能路由,系統(tǒng)指定路由和發(fā)送方指定路由。智能路由,亦稱(chēng)自動(dòng)路由,根據(jù)數(shù)據(jù) 業(yè)務(wù)意義智能判斷報(bào)文數(shù)據(jù)的接收方,通過(guò)對(duì)標(biāo)準(zhǔn)FFM、FWB、甜L、FS巧良文進(jìn)行業(yè)務(wù)數(shù)據(jù)分 析,自動(dòng)判斷報(bào)文路由地址,實(shí)現(xiàn)數(shù)據(jù)相關(guān)方的業(yè)務(wù)數(shù)據(jù)共享;系統(tǒng)指定路由,即iLink系統(tǒng) 硬性指定的目的地址,通過(guò)報(bào)文類(lèi)型和發(fā)送方判斷;發(fā)送方指定路由,發(fā)送者在發(fā)送數(shù)據(jù) 時(shí),指定該數(shù)據(jù)報(bào)文的接收方。后兩者實(shí)現(xiàn)比較容易,本文重點(diǎn)介紹智能路由機(jī)制。
[0096] 在使用智能路由前,必須在系統(tǒng)配置中進(jìn)行業(yè)務(wù)性路由配置。比如艙單消息(FFM) 自動(dòng)路由根據(jù)表了_〔尸6_尸尸]?(如表2)和1'_〔尸6_尸尸]?_1八尺661'配置。
[0097] 表2FFM消息路由配置 [009引
[0099] 定義SRC_ADDRESS(發(fā)送地址)的權(quán)值為1;0RIGINP0RT(起始航站)的權(quán)值為2; CARRIER(承運(yùn)人)的權(quán)值為4;化IGHTNO(航班號(hào))的權(quán)值為8;DESTP0RT1 (目的航站1)的權(quán)值 為16 ;DESTP0RT2(目的航站2)的權(quán)值為32 ;DESTFINAL(到達(dá)航站)的權(quán)值為64。
[0100] 路由器解析FFM報(bào)文內(nèi)容根據(jù)報(bào)文的發(fā)送地址,起始航站,承運(yùn)人,航班號(hào),中轉(zhuǎn) 站,到達(dá)航站,通過(guò)運(yùn)些內(nèi)容對(duì)T_CFG_FFM表進(jìn)行完全匹配和部分匹配查詢。在查詢的結(jié)果 中對(duì)比權(quán)值最高的結(jié)果,到T_CFG_FFM_TARGET表查尋路由到的iLink地址。
[0101 ] 例如,F(xiàn)FM(艙單)配置如表2所示,F(xiàn)FM解析出的內(nèi)容如下:
[0102] P-PEKXH-ILINK0000000IP邸I FM IFM9374IN化LIN化LI TNA
[0103] 匹配的結(jié)果為RECID = O ,RECID = 1,RECID = 2,RECID = 3,根據(jù)權(quán)值排序返回結(jié)果 RECID = 3,然后在T_CFG_FFM_TARGET表中查找RECID = 3所對(duì)應(yīng)的iLink地址,從而實(shí)現(xiàn)智能 路由。
[0104] 驗(yàn)證實(shí)驗(yàn):
[0105] 請(qǐng)參閱圖6,該實(shí)驗(yàn)是對(duì)消息發(fā)送、接收W及路由性能測(cè)試。
[0106] 消息發(fā)送性能測(cè)試
[0107] 實(shí)驗(yàn)環(huán)境Windows 2003Server、EQATECProfile測(cè)試軟件。
[0108] 場(chǎng)景1:用客戶端1和客戶端2分別做3次單客戶端測(cè)試。在Windows 2003Server下, 運(yùn)行EQATECProfiler發(fā)送報(bào)文,監(jiān)測(cè)發(fā)送一萬(wàn)條報(bào)文所需要時(shí)間。測(cè)試結(jié)果如圖6中的A圖 所示。
[0109] 場(chǎng)景2:用客戶端3,4,5做3次多客戶端測(cè)試。在Windows 2003Server下,運(yùn)行 EQATECProfiler處理后的客戶端發(fā)送報(bào)文,監(jiān)測(cè)發(fā)送一萬(wàn)條報(bào)文所需要時(shí)間。測(cè)試結(jié)果如 圖6中的B圖所示。
[0110] CCSClient .workerSend_P;rogress化anged方法用來(lái)顯示異步任務(wù)進(jìn)度,在上述5 個(gè)客戶端發(fā)送消息時(shí),CCSClient .workerSend_P;rogressQianged方法耗時(shí)分析柱狀圖如圖 7所示。
[0111] 根據(jù)W上場(chǎng)景可W分析出:每發(fā)送一條數(shù)據(jù),所耗時(shí)間在單客戶端和并發(fā)情況下 差別并不大,但是一萬(wàn)報(bào)文量時(shí),CCSCl ient. workerSend_P;rogressChanged方法會(huì)被調(diào)用 四萬(wàn)次,那么此時(shí),該方法并發(fā)情況下(3個(gè)客戶端)所耗時(shí)間比單客戶端要增加80秒。
[0112] 請(qǐng)參閱圖8,消息接收性能測(cè)試
[0113] 本是測(cè)試單個(gè)客戶端單獨(dú)啟動(dòng)及并發(fā)啟動(dòng)后每秒處理數(shù)據(jù)的性能。前提條件是數(shù) 據(jù)庫(kù)T_MSG_QUEUE_TEST*各表有可W讀取的報(bào)文信息記錄,通過(guò)實(shí)驗(yàn)適時(shí)記錄完成接收 10000(或5000)條報(bào)文記錄的截止時(shí)間,每次實(shí)驗(yàn)至少取7個(gè)截止時(shí)間點(diǎn)。
[0114] 場(chǎng)景1:客戶端1和客戶端2做單機(jī)消息接收測(cè)試,一次開(kāi)啟一個(gè)接收客戶端從數(shù)據(jù) 庫(kù)讀取報(bào)文數(shù)據(jù),并生成本地文件,記錄每秒處理?xiàng)l數(shù)。如圖8所示。
[0115] 場(chǎng)景2:客戶端3、4、5做多機(jī)測(cè)試,一次開(kāi)啟=個(gè)接收客戶端從數(shù)據(jù)庫(kù)的一張數(shù)據(jù) 表并發(fā)讀取報(bào)文數(shù)據(jù),并生成本地文件。如圖9所示。
[0116] 各個(gè)客戶端處理性能匯總?cè)鐖D10所示。從實(shí)驗(yàn)結(jié)果可W得出:無(wú)論在單機(jī)還是多 機(jī)工作狀態(tài)下,消息接收的性能都比較穩(wěn)定,每秒處理4-6條記錄,多個(gè)用戶同時(shí)工作時(shí),處 理性能并沒(méi)有受到影響。
[0117] iLi址消息路由性能測(cè)試
[011引巧聯(lián)工具有iLink消息路由測(cè)試系統(tǒng),EQATEC測(cè)試軟件。巧聯(lián)方法:利用EQATE村則 試軟件,監(jiān)測(cè)路由運(yùn)行過(guò)程中調(diào)用的方法和所用時(shí)間。提取路由報(bào)文的技術(shù)指標(biāo);建立模 型,測(cè)試不同組合方式路由產(chǎn)生何種差異并判定其穩(wěn)定性;記錄消息路由過(guò)程中調(diào)用方法 所占時(shí)間,分析影響路由性能的操作,W便討論出更合理的方案提高路由性能。
[0119]實(shí)驗(yàn)中采用5個(gè)客戶端,分別為客戶端1-5;3個(gè)路由器,分別為路由器1,2,3??蛻?端I、2發(fā)送的報(bào)文的臨時(shí)存儲(chǔ)分別設(shè)定為t_msg_temp_test I、t_msg_temp_test2,接收?qǐng)?bào)文 的存儲(chǔ)表名為1^_1118旨_9116116_1681:1、1:_1118旨_9116116_16312;客戶端3、4、5發(fā)送報(bào)文的臨時(shí)存儲(chǔ) 為t_msg_temp_test3,接收表為t_msg_queue_test3。路由傳遞方向?yàn)?CIMP報(bào)文的五個(gè)測(cè) 試端路由分別客戶端巧Ij3,巧Ij4,巧化,巧ljl,5到l;XML報(bào)文設(shè)置了FFM表中的客戶端4到客 戶端1的路由。
[0120] 場(chǎng)景1:單個(gè)路由器運(yùn)行時(shí)路由性能測(cè)試:用1000條CIMP報(bào)文和1000條XML報(bào)文,分 另帕路由器1、路由器2和路由器3進(jìn)行路由實(shí)驗(yàn),利用EQATEC監(jiān)測(cè)路由組件獲取數(shù)據(jù)并畫(huà)出 柱狀圖(圖11)。圖11中的A圖和B圖分別是路由器單獨(dú)處理CIMP報(bào)文和XML報(bào)文的測(cè)試結(jié)果。
[0121] 場(chǎng)景2:多個(gè)路由器同時(shí)運(yùn)行時(shí)路由性能測(cè)試:用10000條CIMP報(bào)文和10000條XML 報(bào)文分別做如下實(shí)驗(yàn):單獨(dú)路由、兩兩路由(3個(gè)路由器兩兩路由,例如,路由器1的兩兩路由 表示路由器1和路由器2,路由器1和路由器3路由結(jié)果的平均值),3個(gè)路由器同時(shí)路由。然后 分別記錄不同實(shí)驗(yàn)中各個(gè)路由器每秒處理報(bào)文的平均數(shù)。實(shí)驗(yàn)結(jié)果如圖12所示。
[0122] 從上述實(shí)驗(yàn)分析可W得出,路由器處理XML報(bào)文的時(shí)間遠(yuǎn)遠(yuǎn)小于處理CIMP報(bào)文的 時(shí)間,上圖說(shuō)明在并發(fā)的情況下,多個(gè)路由器同時(shí)工作時(shí)并不影響系統(tǒng)的性能。
[0123] 從上述3方面實(shí)驗(yàn)說(shuō)明了該方法的可行性并具有較高的發(fā)送接收效率。
[0124] 本專(zhuān)利研究設(shè)計(jì)航空物流數(shù)據(jù)共享平臺(tái)QLink),根據(jù)不同的客戶平臺(tái)需求,實(shí)現(xiàn) 各種報(bào)文格式自動(dòng)轉(zhuǎn)換,同時(shí)也能根據(jù)報(bào)文內(nèi)容智能判斷接收方,智能路由分發(fā)到各個(gè)參 與者。實(shí)現(xiàn)航空物流信息在航空物流業(yè)務(wù)鏈中各參與方之間實(shí)現(xiàn)數(shù)據(jù)交換與共享。極大地 提高航空貨運(yùn)的業(yè)務(wù)處理效率,提高航空貨運(yùn)服務(wù)質(zhì)量,幫助航空企業(yè)開(kāi)源節(jié)流。
[0125] W上對(duì)本發(fā)明的實(shí)施例進(jìn)行了詳細(xì)說(shuō)明,但所述內(nèi)容僅為本發(fā)明的較佳實(shí)施例, 不能被認(rèn)為用于限定本發(fā)明的實(shí)施范圍。凡依本發(fā)明申請(qǐng)范圍所作的均等變化與改進(jìn)等, 均應(yīng)仍歸屬于本發(fā)明的專(zhuān)利涵蓋范圍之內(nèi)。
【主權(quán)項(xiàng)】
1. 一種航空物流數(shù)據(jù)智能分發(fā)模型,其特征在于:至少包括: iLink路由引擎;在該iLink路由引擎上設(shè)置有:用于與中國(guó)空管網(wǎng)絡(luò)進(jìn)行AFTN格式報(bào) 文數(shù)據(jù)交互、與國(guó)際航空電信網(wǎng)進(jìn)行SITA格式報(bào)文數(shù)據(jù)交互的TypeB接口;用于與目標(biāo)隊(duì)列 進(jìn)行數(shù)據(jù)交互的MATIP接口;用于與Internet網(wǎng)絡(luò)進(jìn)行目標(biāo)FTP文件夾交互的FTP接口;用于 與國(guó)際海關(guān)隊(duì)列管理器和Traxon Europ進(jìn)行目標(biāo)MQ隊(duì)列數(shù)據(jù)交互的MQ接口; iLink數(shù)據(jù)庫(kù);該iLink數(shù)據(jù)庫(kù)包括用于存儲(chǔ)基礎(chǔ)數(shù)據(jù)及配置iLink規(guī)則的系統(tǒng)配置區(qū)、 用于發(fā)送數(shù)據(jù)臨時(shí)表的待轉(zhuǎn)發(fā)區(qū)、用于數(shù)據(jù)被轉(zhuǎn)發(fā)后設(shè)置存儲(chǔ)位置的待接收區(qū)、用于記錄 iLink中已被處理的數(shù)據(jù)及簡(jiǎn)要日志并進(jìn)行歷史查詢的歷史消息區(qū)和日志區(qū)、用于決定數(shù) 據(jù)轉(zhuǎn)發(fā)至目的用戶的iLink路由器; 用于與iLink數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)讀取和寫(xiě)入的iLink客戶端;該iLink客戶端通過(guò)FTP接口 與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn)FTP文件夾的交換;該iLink客戶端通過(guò)MQ接口與iLink數(shù)據(jù)庫(kù)實(shí)現(xiàn)MQ隊(duì) 列數(shù)據(jù)的交換。2. 根據(jù)權(quán)利要求1所述航空物流數(shù)據(jù)智能分發(fā)模型,其特征在于:在iLink客戶端設(shè)置 有一個(gè)基于Net 2.0的Winform程序,iLink SDK將文件夾下的iLink消息文件或者SITA報(bào)文 發(fā)送至目的地;iLink SDK同時(shí)將接收iLink消息,把iLink消息放置在用戶設(shè)定的文件夾 下;iLink SDK包括四個(gè)文件夾,四個(gè)文件夾分別為:監(jiān)控發(fā)送文件路徑的OUT文件夾、備份 文件路徑的BAK文件夾、接收文件路徑的IN文件夾、錯(cuò)誤文件路徑的ERR文件夾。3. -種根據(jù)權(quán)利要求1或2所述航空物流數(shù)據(jù)智能分發(fā)模型的分發(fā)方法,其特征在于: 包括如下步驟: 步驟101、iLink發(fā)送報(bào)文,具體為: 首先,iLink用戶通過(guò)iLink客戶端將報(bào)文數(shù)據(jù)發(fā)送到iLink接口; 然后,iLink接口收到數(shù)據(jù)后對(duì)數(shù)據(jù)進(jìn)行安全驗(yàn)證,然后將數(shù)據(jù)發(fā)送到第一待轉(zhuǎn)發(fā)區(qū); 隨后,采用基于動(dòng)態(tài)優(yōu)先級(jí)的先來(lái)先服務(wù)策略對(duì)報(bào)文數(shù)據(jù)排序,排序后的數(shù)據(jù)被放入 第二待轉(zhuǎn)發(fā)區(qū)臨時(shí)存儲(chǔ); 最后,根據(jù)報(bào)文數(shù)據(jù)的業(yè)務(wù)類(lèi)型智能判斷目的地地址,同時(shí)判斷是否使用插件對(duì)報(bào)文 格式進(jìn)行轉(zhuǎn)換,然后將數(shù)據(jù)發(fā)送到目標(biāo)隊(duì)列區(qū)存儲(chǔ); 步驟102、iLink接收?qǐng)?bào)文,具體為: 當(dāng)消息到達(dá)后,iLink客戶端首先向iLink接口提交接收消息的請(qǐng)求; 然后webService分析請(qǐng)求消息的目標(biāo)隊(duì)列存儲(chǔ)區(qū); 隨后從目標(biāo)存儲(chǔ)區(qū)獲取消息轉(zhuǎn)存本地文件夾,進(jìn)而更新消息狀態(tài); 最后iLink服務(wù)器根據(jù)報(bào)文判斷是否需要發(fā)送應(yīng)答消息;并刪除消息; 步驟103、iLink路由報(bào)文,具體為: 首先iLink路由器對(duì)報(bào)文完整性驗(yàn)證; 然后解析報(bào)頭,分析報(bào)文類(lèi)型; 如果是TypeB和(ΠΜΡ報(bào)文數(shù)據(jù),則對(duì)報(bào)文的地址解析,獲取發(fā)送者指定的iLink地址;如 果是XML文件數(shù)據(jù),解析〈ΜΕΤΑ〉中的TYPE類(lèi)型,進(jìn)行業(yè)務(wù)數(shù)據(jù)智能判斷目的地地址; 隨后獲取所有iLink地址;判斷是否需要對(duì)消息進(jìn)行格式轉(zhuǎn)換,如果需要,則載入格式 轉(zhuǎn)換插件;否則將消息路由到目標(biāo)存儲(chǔ)區(qū)。4. 根據(jù)權(quán)利要求3所述航空物流數(shù)據(jù)智能分發(fā)模型的分發(fā)方法,其特征在于:數(shù)據(jù)在端 端交互的過(guò)程中均采用RSA1024Key進(jìn)行AES加密。
【文檔編號(hào)】H04L12/741GK105978964SQ201610302695
【公開(kāi)日】2016年9月28日
【申請(qǐng)日】2016年5月9日
【發(fā)明人】肖殷洪, 劉震, 王晨光, 王天凱, 王斌, 王強(qiáng)富, 羅云生
【申請(qǐng)人】中國(guó)民航信息網(wǎng)絡(luò)股份有限公司