通訊協定 OSI分層模式 與 TCP/IP協定 第 4 章 通訊協定 OSI分層模式 與 TCP/IP協定
通訊協定(1/3) 何謂通訊協定? 人類的通訊協定 機器的通訊協定 甲:「你好!」 乙:「你也好!」 甲:「今天晚上有空一起吃飯嗎?」 乙:「有的!」 機器的通訊協定 所有Internet上面的溝通都必須仰賴通訊協定 必須詳細定義訊息格式、訊息收或送的順序,和收到或傳送訊息時該做的動作。
通訊協定(2/3) 人類和機器的通訊協定比較 你好 妳好 2:00 <file> time TCP connection req. 妳好 TCP connection reply. 現在幾點? 2:00 <file> time
通訊協定(3/3):Communication Protocol 必須採用相同的通訊協定, 網路設備才能夠互相交換資訊。 網際網路上常用到的通訊協定, 絕大多數都是定義在 RFC(Request For Comments)文件內。
內 容 OSI分層模式 OSI模式的每個分層 TCP/IP協定 定址方式 TCP/IP版本
4.1 OSI分層模式
ISO是一個團體組織,而OSI則是網路 的分層模式。
OSI 模型 (Open Systems Interconnection Model) 網路系統架構是種抽象的概念, 倘若能利用一個模型來將網路系統具體化, 肯定能對學習有正面的幫助。 ISO 國際標準組織於 1984 年發表了 OSI 模型, 將整個網路系統分成 7 層(Layer), 每層各自負責特定的工作。 OSI 模型是被公認為最著名、最具影響力的網路參考模型。
會議層 OSI 模式
OSI 分層
資料經過第6、5、4、3、2分層時分 別加上標頭 (headers),尾端記號 (trailers) 通常在經過第2分層才加。
在OSI分層資料交換之情形
4.2 OSI模式的每個分層
第 1 層:Physical Layer (實體層) 傳輸資訊的介質規格。 將資料以實體呈現並傳輸的規格。 接頭之規格。 例如:同軸電纜、雙絞線、無線電波、紅外線等 實體介質, 以及轉換數位資料以利傳輸等工作。
實體層
第 2 層:Data Link Layer (資料連結層) 同步 使傳送與接收雙方達到同步。 偵錯 先檢查資料的正確性, 才決定是否繼續處理。 制定 MAC Method 網路上多個裝置都同時要傳輸資料時, 決定其優先順序。
資料連接層
節點對節點(或站對站)的傳送
第 3 層:Network Layer (網路層) 定址 決定網路裝置的位址或名稱分配。 選擇傳送路徑 例如從 A 傳資料到 D可有 5 條路徑, 必須選出一條距離最短、傳輸速率最快的路徑。
網路層
端點對端點的傳送
第 4 層:Transport Layer (傳輸層) 編定序號 將切割後的小段資料加以編號, 以利組回原貌。 控制資料流量 在網路壅塞時, 通知傳送端暫停傳輸或降低連線速率。 偵錯與錯誤處理 偵錯方式可以和資料連結層不同, 發現錯誤時也未必要求對方重送。 負責程序對程序間的連線
傳輸層
傳輸成負責程序對程序間的傳遞
第 5 層:Session Layer (會議層) 雙方在正式開始傳輸前的互相溝通,目的在於建立傳輸時所遵循的規則。 溝通控制-包括:使用全雙工模式或半雙工模式? 如何發起傳輸?如何結束傳輸?如何設定傳輸參 數?...等等。 同步(Synchronization):設定同步點 (Synthronization Point),例如要傳送2000頁資料時, 每100頁設定同步點,當第523發生錯誤時,只需 重新傳送501~523頁即可,而不用從第1頁重新傳 送。
會議層
第 6 層:Presentation Layer (表示層) 內碼轉換 將收到的資料轉換為接收端所用的內碼系統, 以免解讀有誤。 壓縮與解壓縮 傳輸前將資料壓縮, 收到資料時予以解壓縮。 加密與解密 將傳輸資料加密, 確保網路安全。
表示層
第 7 層:Application Layer (應用層) 直接提供檔案傳輸、電子郵件、網頁瀏覽等服務給使用者。 在實作上, 大多是化身為成套的應用程式, 例如:Internet Explorer、Netscape、 Outlook Express 等等。 有些應用程式, 甚至涵蓋了會議層與表達層的功能。
應用層
網路各層的功能摘要
4.3 TCP/IP 協定
DoD 模型 ( Department of Defense Model ) Internet 並未參考 OSI 模型, 因 TCP/IP 協定的誕生早於 OSI 模型。 DoD 模型是 TCP/IP 協定的網路模型。
TCP/IP與OSI模式
OSI七層和TCP/IP
TCP/IP 協定組合 『TCP/IP 協定組合』包含了與 TCP/IP 相關的數十種通訊協定, 例如:SMTP、DNS、ICMP、POP、FTP、Telnet...等等。 平常口語所謂的 TCP/IP 通訊協定, 其背後真正的意義就是指 TCP/IP 協定組合, 而非單指 TCP 和 IP 兩種通訊協定。
4.4 定址方式
TCP/IP用到的位址
TCP/IP用到的位址與各分層關係
範例 1 實體位址 有一個節點其實體位址10,傳送一個訊框給另一個實體位址為87的節點。這兩節點有一個鏈結。在資料鏈結層,這個訊框其表頭含有實體位址,就只需要這些位址。表頭的其他部分尚含有本層次的資訊。尾標通常含有錯誤偵測所需的多餘位元。 節點與其實體位址。
大部分的區域網路使用48 位元的實體位址(MAC Address),以12個16進制數字代表, 範例 2 大部分的區域網路使用48 位元的實體位址(MAC Address),以12個16進制數字代表, 每兩個數字之間以減號隔開如下所示: 07-01-02-01-2C-4B 一個48 位元的實體位址
範例 3 一個網路節點,其網路地址是A, 實體地址是10, 想要送資料到另一個區域網路上的節點,其網路地址P, 實體地址95。 因為兩個設備在不同的網路上,我們不能只使用實體位址,實體位址只在該鏈結的範圍內有效,我們所需要的是能在別的網路上使用的通用位址。網路(邏輯)位址就有這樣的特性。 在一個LAN 裡送資料。
132.24.75.9 一個IP位址以10 進制數字代表 IP 位址為32位元(IPv4),通常以4個10進制數字代表,每個數字為一 範例 4 IP 位址為32位元(IPv4),通常以4個10進制數字代表,每個數字為一 個位元組(byte) 長,數字之間以實點隔開如下所示: 132.24.75.9 一個IP位址以10 進制數字代表
範例 5 下張投影片圖展示一個傳輸層通訊的例子。來自上層的資料埠址(Port Address) j和k (j是傳送端應用程式的位址,k是接收端應用程式的位址)。因為資料的大小超過網路層所能處理,因此資料被分為兩個封包,每個封包都有保留埠址(j和k)。在網路層時,每個封包都加上網路位址(A和P)。
埠位址 範例 5 展示一個傳輸層通訊的範例
TCP協定的Port TCP用哪種方式來表示傳送端和接收端主機的 處理程序呢?
範例 6 埠位址為16 位元以10進制數字代表,如下所示: 753 一個16 位元的埠位址,以單一數字代表
4.5 TCP/IP版本
版本: 第 4 版 (通用)-IPv4 第 5 版 第 6 版 (新版)-IPv6