通訊協定:Communication Protocol
.網路設備彼此溝通時的約定,都算是通訊協定(Protocol)
-通訊協定常被比諭為網路設備的溝通語言
.必須採用相同的通訊協定,網路設備才能夠互相交換資訊
.國際標準:國際組織所制定認可
業界標準:業界所普遍採用的規格
.網際網路上常用到的通訊協定,絕大多數都是定義在RFC(Request For Comments)文件內(以RFC開頭)
OSI模型(Open Systems Interconnection Model)
.網路系統架構是種抽象的概念,倘若能利用一個模型來將網路系統具體化,肯定能對學習有正面的幫助
.ISO國際標準組織於1984 年發表了OSI(Open System Interconnection)模型,將整個網路系統分成7層(Layer),每層各自負責特定的工作
.OSI模型是被公認為最著名、最具影響力的網路參考模型
OSI模型的7層架構
第1層:Physical Layer(實體層)
.傳輸資訊的介質規格
.將資料以實體呈現並傳輸的規格
.接頭之規格
例如:同軸電纜、雙絞線、無線電波、紅外線等實體介質,以及轉換數位資料以利傳輸等工作,此外,決定傳輸頻寬、工作時脈、電壓高低、相位等等亦是
第2層:Data Link Layer(資料連結層)
.同步
-使傳送與接收雙方達到同步
.偵錯
-先檢查資料的正確性,才決定是否繼續處理
-接收端很多層皆有偵錯之作用,一般第一個個偵錯關卡在此層
-一種常用的偵錯方式:CRC
.制定MAC Method
-網路上多個裝置都同時要傳輸資料時,決定其優先順序
第3層:Network Layer(網路層)
.定址
-決定網路裝置的位址或名稱分配
.選擇傳送路徑
-例如從A傳資料到D可有5條路徑,必須選出一條距離最短、傳輸速率最快的路徑
第4層:Transport Layer(傳訊層)
.編定序號
-將切割後的小段資料加以編號,以利組回原貌
.控制資料流量
-在網路壅塞時,通知傳送端暫停傳輸
.偵錯與錯誤處理
-偵錯方式可以和資料連結層不同,發現錯誤時也未必要求對方重送
第5層:Session Layer(會議層)
.雙方在正式開始傳輸前的互相溝通,目的在於建立傳輸時所遵循的規則
.溝通的議題包括:使用全雙工模式或半雙工模式?如何發起傳輸?如何結束傳輸?如何設定傳輸參數?...等等
第6層:Presentation Layer(表達層)
.內碼轉換
-將收到的資料轉換為接收端所用的內碼系統,以免解讀有誤
.壓縮與解壓縮
-傳輸前將資料壓縮,收到資料時予以解壓縮
.加密與解密
-將傳輸資料加密,確保網路安全
第7層:Application Layer(應用層)
.直接提供檔案傳輸、電子郵件、網頁瀏覽等服務給使用者
.在實作上,大多是化身為成套的應用程式,例如:Internet Explorer、Netscape、Outlook Express 等等
.有些應用程式,甚至涵蓋了會議層與表達層的功能
小結
.應用層是最接近使用者的層級,屬於此層的都是使用者較熟悉、可直接操作的軟體
.愈往下層則距離使用者的操作愈遠,反而與硬體的關聯愈大
.OSI模型只是定義出『原則』。並未規定各層必須採用哪種通訊協定與產品
OSI模型7層的運作方式
.資料由傳送端的最上層(通常是指應用程式)產生,由上層往下層傳送。每經過一層,都會在前端增加一些該層專用的資訊,稱為『表頭』(Header)
.接收端收到資料後,會從最底層向上層傳送,每經過一層就去除該層所認識的表頭,到了最上層便恢復成當初從傳送端最上層產生時的原貌
OSI模型運作示意圖
封裝與Payload
.每一層將原始資料加上表頭的動作,便稱為資料的『封裝』(Encapsulation)
.封裝前的原始資料則稱為Payload
.每一層都會將其上層傳來的資料當成Payload,再將Payload 封裝成新的資料,繼續傳給更下一層去封裝
OSI模型的優點
.分工合作,責任明確
.對等交談
.逐層處理,層層負責
分工合作,責任明確
.性質相似的工作劃分在同一層,性質迥異的工作則劃分到不同層
.萬一出了問題,很容易判斷是哪一層沒做好,清楚知道應先改善哪層的工作
對等交談-1
對等交談-2
.例如TCP通訊協定用來聯繫用戶端與伺服器端的同一層(TCP 層),IP協定則只聯繫IP層
.不同端、相同層的溝通約定,才稱之為『協定』;在同一端、不同層的溝通程序,則稱為『介面』(Interface)
.OSI模型不是用『介面』這個名詞,而是用『SAP』(Service Access Point,服務存取點) 代替。(此點不算正確)
逐層處理,層層負責
.第N層收到資料後,一定先把該辦的事辦得妥妥當當,才會將資料向上送給第N+1層
.任何一層收到資料時,都可以相信上一層或下一層已經做完它們該做的事,毋需自己操心
DoD模型(Department of Defense Model)
.Internet並未參考OSI模型,因TCP/IP協定的誕生早於OSI模型
.DoD模型是TCP/IP協定的網路模型
TCP/IP協定組合
.『TCP/IP協定組合』包含了與TCP/IP相關的數十種通訊協定,例如:SMTP、DNS、ICMP、POP、FTP、Telnet... 等等
.平常口語所謂的TCP/IP 通訊協定,其背後真正的意義就是指TCP/IP協定組合,而非單指TCP和IP兩種通訊協定
DoD模型的4層架構
DoD模型的4層簡介
.Application Layer(應用層)
-定義應用程式如何提供服務
.Transport Layer(傳訊層)
-負責傳輸過程的流量控制、錯誤處理、資料重送
.Network Layer(網路層)
-決定資料如何傳送到目的地
.Link Layer(連結層)
-負責對硬體的溝通。
DoD模型與OSI模型對照圖
DoD模型與OSI模型的差異
.DoD模型的應用層相當於OSI模型的第5、6、7 三層
.DoD模型的連結層相當於OSI模型的第1、2 層。(不算正確)
.DoD模型的分工比較粗略(但比較簡單、有效率),不像OSI模型那麼精密與周延
.TCP/IP協定組(DoD模型)是先有協定組後才有模型;OSI參考模型是先有模型後才有協定組
資料處理的基本單位
.OSI 每一層封裝完畢後形成的新資料,稱為『協定資料單元』(PDU,Protocol Data Unit)
.每一層的資料處理基本單位都叫PDU,但不同層的PD 代表不同的內容
.一般都用『封包』(Packet)來代替PDU術語