協定工程

協定工程

協定是網路的血液和生命,計算機網路的發展是網路協定設計和開發的結果。但計算機通信網路技術的發展進一步增強了協定的複雜性,主要體現在協定開發難度大、周期長、而且潛在錯誤多,而協定開發過程中任何一點錯誤和缺陷都將給分布系統的穩定性、可靠性、堅固性、安全性、容錯性以及異種系統之問互通性帶來巨大的危害。為此,便出現了協定工程。

基本介紹

  • 中文名:協定工程
  • 外文名:Protocol Engineering
  • 類型:通信協定
  • 領域:計算機網路
  • 相關:網路,通信
  • 實現:網路安全
背景,發展,開發過程,協定設計,協定描述,協定驗證與分析,協定的半自動實現,協定的一致性測試,核心協定,

背景

隨著計算機網路快速發展,網路影響的範圍越來越廣,網路套用也越來越多,網路已經成為現代生活中不可或缺的一部分。網路中不同計算機系統之間的數據互動、協同工作都是由網路協定來控制的。可以說,協定是網路間實時、有序、有效通訊的基礎保證。據統計,現在的網路中超過有600個網路協定,2000個網路應用程式在工作,並且還在不斷增加。

發展

在20多年的時間裡,協定工程的研究有了長足的進步,大致可分為三個階段。
(1)研究各種形式描述階段(1968年~1979年)
這個階段人們提出各種描述協定的模型,主要包括這樣幾種:有窮自動機,形式語言,Petri網,高級程式設計語言以及一些混合模型。此外還有用時態邏輯和抽象代數語言描述協定。各種形式描述技術都得到了實際套用。
(2)協定及其形式描述的標準化階段(1979年~1985年)
人們在驗證協定正確性的過程中發現協定實現中的錯誤主要是由於協定文本本身的描述(用自然語言形式)就存在著二義性或矛盾之處。1976年由CCITT確認的SDL,經多年廣泛的修改和提高,是一種基於擴展狀態變躍圖和抽象數據類型(ACT ONE)的混合技術。SDL已被電信公司廣泛用於描述電子交換系統。ISO在1988年公布了兩個國際標準文本EstelleLOTOS,並提供了用它們描述的運輸層和會話層等協定文本,為協定工程打下基礎。Estelle也基於擴展的狀態變躍模型,但使用PASCAL語法和數據類型。80年代初有人試圖協調Estelle和SDL,終因不能有共同的語義模型而失敗。
(3)協定工程階段(1985年以後)
這一階段人們開始研究基於ISOCCITT建議的協定開發方法。然而,協定工程目前主要的問題仍是形式技術和方法的研究和開發,許多專家學者按照協定工程的形式方法,經過一輪或幾輪協定軟體系統的實現後,都感到形式技術的重新研究是當前協定工程深入的關鍵。

開發過程

協定工程系統的主要組成部分及其關係,它大體上可歸納成以下幾個方面內容:協定設計、協定描述、協定驗證與分析、協定實現、協定測試。

協定設計

協定開發的第一步是構造一個協定,提出協定文本初稿。這包括:協定環境分析,協定功能設計,協定元素的構造,協定組織形式的確定及協定文本的編寫。

協定描述

協定可以用自然語言程式設計語言、形式描述語言或專用語言描述。用自然語言描述的協定可讀性好,因此,ISO是採用自然語言描述並公布協定標準的。

協定驗證與分析

協定驗證是對通信協定本身的邏輯性進行驗證的過程,其主要目的是,在協定開發的前期,最大限度地檢測和糾正協定錯誤和缺陷,包括死鎖、活鎖、不可執行的行動、不符合要求的協定外部性能等。

協定的半自動實現

協定實現的目的是要產生與機器無關的可執行的協定目標代碼。而所謂的半自動實現,是指通過編譯器,將Estell, Lotos等形式描述語言描述的協定規範文本直接轉換成協定代碼(C , Pascal等程式設計語言)。

協定的一致性測試

協定的測試是協定開發的最後一個階段。由於協定實現採用的是半自動代碼生成技術.與機器相關的協定代碼是手工編寫的,協定實現者對協定的理解各不相同,這就難以保證協定實現與協定規範之間的一致性,而在0SI的環境下,與標準不一致的實現是沒有任何意義的。因此,協定的一致性測試對實現來說是至關重要的。

核心協定

TCP/IP協定簇是Internet網路體系結構的核心協定,已成為實際上的計算機網路工業標準.隨著計算機網路的發展,網路協定的數量越來越多,內容也越來越複雜,如何設計出正確可靠的協定已成為一個挑戰性的課題。為此,協定工程學應運而生。

相關詞條

熱門詞條

聯絡我們