電腦網路與連結技術:第五章 傳輸層 下一頁 |
第五章 傳輸層
將介紹傳輸層的多工模式與連線管理技術,並讓讀者有開發網路應用程式的基本技巧。 5-1 傳輸層簡介 在 OSI 參考模式中,『傳輸層』(Transport Layer)以下層次的功能是在複雜網路中,找到所期望連接的電腦,然後提供一個相互能通訊的連線。也就是說,通訊雙方工作站無論在網路任何地方,經過這些層次的處理後,宛如兩部工作站就旁邊,也好像兩部工作站已可結合成一部,有關它們之間的訊號處理、實體連線問題、尋找工作站位址、等等工作都已完成。因此,有關傳輸層以下的服務稱之為『連線導向服務』(Connection-oriented Service)。從傳輸層以上的層次(會議層、表現層和應用層)的功能則著眼於應用程式的觀點,它們提供有關應用軟體所需的程序之間(Process to Process)通訊為主,因此稱之為『應用導向服務』(Application-oriented Service)。傳輸層是位於兩種服務之間的介面,是整個通訊協定階層的核心,如下圖 5-1 所示。因此,傳輸層負責提供通訊雙方使用者(或程序)之間,以約定的通訊品質來傳送資料。當使用者之間的連線建立後,傳輸層便要提供適當的通訊品質,並且監督資料傳輸的過程,以保證該通訊品質的維持。如無法達到必須通知使用者。
圖 5-1 傳輸層的主要功能 另一觀點而言,傳輸層以下的通訊軟體大多和網路架構比較有關聯,是網路工程師架設網路時較須考慮的重點;而軟體工程師欲開發網路應用程式時,對於傳輸層以後(交談、表現、及應用層)的處理,才是它考慮的重點,亦是,開發應用程式只要以傳輸層作為起始點就可以了。如果網路上提供完備的傳輸服務介面,開發網路應用軟體就如同在一般作業系統上開發程式一樣方便。一般網路作業系統(如Unix)都會提供有關傳輸層的介面程式(如,socket()),讓使用者直接開發應用程式,而無需考慮目前處於何種網路架構之下。
5-2 終端對終端連線 圖 5-2 是整個網路通訊協定大略的連接功能結構。其中實體層的功能是將資料轉換成訊號,然後發送到傳輸媒介上傳輸;鏈路層是將資料訊框包裝發送到網路上,並負責存取網路及控制可能發生的錯誤,因此屬於『節點對節點連接』(Node-to-Node Connection);網路層是負責在複雜網路上尋找目的工作站的位址,並負責連接到它,稱之為『工作站對工作站連接』(Station-to-Station Connection),因此到網路層為止,我們已經讓兩部工作站連接在一起了。 但在任一部主機電腦上也許會有多個網路程序(Process)正在執行,這些程序(使用者或程式)都必須透過這部工作站和其它工作站內的程序通訊,如何提供程序之間的連線,這便是傳輸層主要的工作。一般傳輸層都會提供許多傳輸埠口,來讓應用程式連接,也使應用程式之間可達到實質的連線,因此稱之為『終端對終端連線』(End-to-End connection),如圖 5-2 中 a0 與 b0 埠口之間的連線。又圖 5-2 中,工作站 A 透過網路層服務連接到工作站 B,傳輸層提供工作站 A 之程序(IE)和工作站 B 的程序(Web Server)之間的連線,此連線稱之為『程序對程序的連線』(Process-to-Process Connection)。由圖 5-1 中,我們觀察到傳輸層提供連接導向和應用導向程序之間的介面,應用程式只要連接到傳輸層,就可以透過網路連結到對方的應用程式,無須考慮網路架構,才合乎通訊協定的堆疊原理。 圖 5-2 網路連接功能圖 |
翻轉工作室:粘添壽
電腦網路與連結技術:
翻轉電子書系列:
|