《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 中國民航AFTN電報網網關系統的開發

中國民航AFTN電報網網關系統的開發

2009-04-21
作者:張學軍 張其善

  摘 要: 網關系統是中國民航固定格式電報網(AFTN)的重要組成部分。介紹了網關系統的組成、結構和功能,并著重闡述了網關系統的進程監護和系統自恢復功能的實現。
  關鍵詞: AFTN網關 Win32API Get Time DLL


  中國民航航空固定格式電報網(AFTN)承擔中國民用航空局國內與國際的空中交通管理,飛行動態,航行氣象及民航局有關部門業務事物處理等的信息交換,是民用航空飛行安全、正常、高效和經濟運轉的保障。
  AFTN電報網客戶端使用大量的電報字符終端和少量的智能終端。字符終端采用50波特率線路,具有收、發、打印功能,不能查詢和分板報文。智能終端是基于單臺PC機的系統,功能比較齊全。但是在電報量大的單位,單機的智能終端處理速度慢、報文存儲量小,特別是不能實現信息的共享、多席位的分工協作。
  隨著計算機網絡技術的發展,管理局一級的單位多建立了自己的計算機局域網和網絡數據庫,電報的處理、存儲能力得到極大的提高,于是,AFTN網關成為AFTN與計算機局域網連接的關鍵部分。
1 AFTN網關功能分析
  從業務角度分析,AFTN網關應提供實時接收來自AFTN電報網的各類電報的能力;提供實時發送各類電報的能力;提供監視平面電報網接口線路的工作狀態的能力。
  從技術角度分析,AFTN網關具備以下功能:
  ·AFTN電報網接口,支持雙工異步RS-232接口,傳輸速率可達300,600,1200,2400,4800,9600bps;
  ·內部計算機網絡接口,采用10BASE-T連接,支持TCP/IP協議;
  ·實現CCITT 5位電報碼與ASCII 7位碼的相互轉換;
  ·與網絡數據庫連接,支持開放式數據庫接口模塊(ODBC);
  ·具備實時報文發送功能,對多地址報文進行特殊處理;
  ·監控串行通信口的狀態,異常情況報警提示;
  ·監控網絡通信狀態,出現異常情況后接收報文的存儲轉由本地數據庫接口負責;
  ·提供自動恢復功能,待網絡恢復正常工作后,恢復與網絡數據庫的連接并提交存儲在本地數據庫中的報文。
  ·檢查電報流水號,對遺漏的電報,具備從AFTN電報網自動要報功能。
2 AFTN網關實現
  AFTN網關的硬件平臺采用高性能PC機。操作系統采用Windows NT Workstation 4.0中文版。開發工具采用MS VC++6.0和MS VB 6.0。
2.1 系統連接結構
  AFTN網關系統的連接結構如圖1所示。AFTN網關通過以太網接口連接到電報處理系統,通過串行接口連調制解調器與轉報系統串行端口相聯,全雙工通信,傳輸速率1200bps,傳送國際五號碼(ASCII碼)。根據需要也可以使用國際二號碼(博多碼)。AFTN網關到轉報系統使用電流環接口作為備份線路。在AFTN網關一端采用SS-1型“電報通信線路連接器”,經電臺碼型轉換后,通過X.25網接入轉報機,全雙工通信,傳輸速率600bps,傳送博多碼。


2.2 程序結構
  AFTN網關由三部分組成,即AFTN網絡數據接口進程、數據提交進程、本地進程監控進程,如圖2所示。


2.2.1 AFTN網絡數據接口進程
  通過串行接口與轉報機系統連接。接收到的AFTN報文寫到本地的Access數據庫中,同時發送本地Access數據庫中的發送電報。AFTN網絡數據接口與電報處理系統的網絡環境沒有任何連接,當電報處理系統出現故障時,不會影響AFTN網絡數據接口的正常工作。
2.2.2 數據提交進程
  通過開放數據接口與電報處理系統的網絡數據庫服務器相連接。把AFTN網絡數據接口模塊寫到本地Access數據庫中的接收電報提交到網絡數據庫服務器,同時將網絡數據庫服務器中要發送的報文寫入本地的Access數據庫,提交給AFTN網絡數據接口發送。數據提交進程與AFTN電報網沒有任何連接,當AFTN電報網或轉報機系統出現故障時,不會影響數據提交進程的正常工作。
2.2.3 本地進程監控進程
  監視AFTN網絡數據接口進程和數據提交進程的工作。正常情況下,AFTN網絡數據接口進程和數據提交進程每隔30s向本地進程監控進程發送程序狀態報告消息,如果在指定的超時范圍內,本地進程監控進程仍未收到AFTN網絡數據接口進程和數據提交進程發來的程序狀態報告消息,則鳴警笛,提醒操作員,同時在適當的時候重新引導系統,以期恢復AFTN網關的正常工作。
2.3 進程監控及自恢復功能的實現
2.3.1 進程監控

  系統初始化時生成了狀態配置設置文件State.ini,其中與進程監控相關的項目如下所示:
  [watdog]
  Destination=″GDO_Monitor″
  FepHeartBeat=881218824
  DTHeartBeat=881218832
  AFTN網絡接口進程和數據提交進程每隔30s分別更新FepHearBeat和DTHearBeat的數據,數據含義是更新時間與1970年1月1日0時的差值,單位為秒。本地進程監控程序通過檢查FepHeartBeat和DTHeartBeat的數據,監測其他兩個進程的狀態。
  VB程序中沒有函數可以計算某一時間與1970年1 月1日0時的差距,而VC++中的Time()函數可以實現。使用VC++制作包含Time()函數功能,符合Win32API的動態連接庫GetTime.DLL,在VB中對其調用即可實現此功能。以下為制作動態連接庫的部分源代碼,包括GetLongTiome.c和GetLongTiome.def。
  GetLongTiome.c文件:
  #include<windows.h>
  #include<time.h>
  long WINAPI GetLongTime();
  long WINAPI GetLongTime()
    {
    time_tt;
    time(&t);
    return(long)t;
    }
  GetLongTime.def文件:
  LIBRARY GetTime
  DESCRIPTION 'Get Long Time'
  VERSION       1.0
  CODE        READ SHARED EXECUTE
  DATA         READ WRITE
  HEAPSIZE      0x10000 0x1000
  EXPORTS
  GetLong Time    @1
  在VB程序中調用Win32API時先要在全局模塊中做如下定義:
  Declare Function GetLongTime Lib ″GetTime″ () As Long
  在程序中以以下方式調用:
  LongDate=GetTime()
2.3.2 系統自恢復
  在指定的超時范圍內,本地進程監控進程仍未檢測到AFTN網絡數據接口進程和數據提交進程對配置設置文件State.ini的更新,則在適當的時候重新引導系統,以期恢復AFTN網關的正常工作。
  本地進程監控進程首先填寫系統日志文件,記錄錯誤時間及可能原因;保留當前參數設定,準備重新引導系統后恢復正常工作。最后調用以下函數,重新引導系統:
  ExitWindowsEx
  (EWX_FORCE|EWX_REBOOT,0);
  綜上所述,AFTN電報網網關以基于中心網絡數據庫服務器的客戶機/服務器模式工作,提供電報信息處理系統所有客戶機一種接收和發送電文的方法。三個應用程序進程之間既相互獨立,又相互聯系的機制保證了AFTN電報網網關的正常運行。
  該AFTN電報網網關在中國民用航空總局總調度室運行了2年,系統穩定可靠,并通過技術鑒定,獲得了入網證書。

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:[email protected]
主站蜘蛛池模板: 久久午夜鲁丝片午夜精品 | 欧美久久久久久久久 | 成人69视频在线观看免费 | 亚洲欧洲一区二区三区在线 | 亚洲精品久久久久综合中文字幕 | 色樱桃影院亚洲精品影院 | 老妇综合久久香蕉蜜桃 | 欧美一区二区三区在线播放 | 视频一区二区三区自拍 | 免费特黄一区二区三区视频一 | 草草影院视频 | www操操操 | 精品欧美一区二区三区四区 | 欧美巨大另类极品videohd | 亚洲欧美视频一区二区三区 | 成人男女网18免费看 | 天天干夜夜怕 | 免费v片在线观看 | 欧美视频一区二区三区在线观看 | 成人在线不卡视频 | 国产大片在线看 | 一级毛片不卡免费看老司机 | 久草亚洲视频 | 99视频久久 | 亚洲男人的天堂久久精品 | 2017天天爽夜夜爽精品视频 | 国产网址在线 | 杨幂精品国产专区91在线 | 精品欧美一区二区三区四区 | 亚洲精品一区国产二区 | 久久国产精品久久久久久 | 成人影院午夜久久影院 | 免费看特黄特黄欧美大片 | 自拍偷拍亚洲区 | 99视频在线观看免费 | 成人免费视频一区二区 | 欧美激情综合亚洲五月蜜桃 | 99免费在线播放99久久免费 | 免费一级毛片在线播放欧美 | 亚洲国产精品成人午夜在线观看 | www.av在线|