網路概論

網際網路
網路的發展從一開始的國防網路到現在的網際網路,其技術與使用人口不斷地增長。在台灣,最早是由教育部主導的台灣學術網路 (Taiwan Academic NET) 於1991年底與普林斯敦大學相連,加入了全世界網際網路的陣容。網際網路會快速的發展原因在於它的兼容並蓄,它的技術之中則蘊含著它的包容力。各式各樣的網路,由”相同的語言”共同組成網際網路的世界。


協定(Protocol)
電腦網路是屬於封包交換網路 (packet switched network),就是當電腦在封包交換網路上進行資料傳輸時,它是把要傳輸的資料切成一小塊一小塊的封包 (packet),然後一塊一塊的丟出去。電腦在進行資料傳輸的時候,為了要得到正確的資料,必須遵從共通的規則。這些共通的規則稱為協定 (protocol)。協定是人定出來的資料交換規則,而且種類也相當多,其中有TCP/IP,IPX,PPP等協定。


TCP/IP
TCP/IP (Transmission Control Protocol/Internet Protocol) 是目前世界上使用最廣的通訊協定。TCP/IP 的出現,成功的利用網路將世界連接起來,成就了眾所皆知的Internet。TCP/IP 家族中幾個重要的協定,有IP,ARP,RARP,ICMP,UDP和TCP等等,我們這裡最主要談的是IP,TCP與UDP。

圖2.1:網路模式概圖


A. IP
IP (Internet Protocol) 是一種不可靠 (unreliable),盡力傳送的 (best-effort delivery),無連接式 (connectionless) 的分封傳送的協定,定義了 TCP/IP 傳輸的基礎以及封包繞路的功能。IP主要工作有選擇路徑,切割封包。IP網路自從網路開始發展以來,一直是網路技術上熱門應用與話題之一,而無論在什麼網路情況下,IP網路都扮演很重要的角色。IP網路有幾個優勢 :
1. 不需事先建立連線
目前IP網路的網路層協定為 IPv4或IPv6,是屬於非連接的 (connectionless) 傳輸形態,亦即在傳輸前不需先藉由通訊協定建立連線。
2. 分布最廣的區域網路
目前 IP 網路的分布幾乎涵蓋了整個網路的世界。使用者幾乎到處都可以買到可以接上 IP 網路的網路卡,而且價格便宜。

B. TCP
TCP (Transport Control Protocol) 是TCP/IP 標準的協定。TCP提供一個可靠的 (reliable),全雙工的 (full duplex) stream 資料服務,是很多應用協定的基礎。TCP為連接導向 (connection-oriented) 的通訊協定,在資料傳送前需要先建立連接。TCP利用 IP協定送收資料,並可以關閉其中一個方向的資料傳輸。由於封包的格式包含了封包序列參數和確認參數,因此可以利用這些欄位來作位元流控制和錯誤控制。因此,TCP協定提供給使用者一個可靠的傳送機制,讓遺失的封包透過重送的過程使接收端可以收到正確且無誤的資料。此種傳送的方式較不適合具有即時性 (real-time) 的資料,因為重送所造成的延遲將使得即時資料的傳輸效率大打折扣。因此,在TCP/IP協定家族中,TCP和IP可以說是最重要的兩個協定了。


C.UDP
UDP (User Datagram Protocol) 提供一個無連接 (connectionless),不可靠 (unreliable)的傳輸服務。因為即時性資料有延遲上的限制,所以利用TCP協定往往無法滿足即時多媒體傳輸所能容忍的延遲,所以現今即時資料主要都是利用UDP協定來當作傳輸的方式。
此協定只需要告訴傳送端的位址和封包長度即送至網路上,因為封包格式非常簡單,所以在協定中並沒有針對傳輸的資料做任何的控制,現今即時資料的應用皆採用此協定,例如VoIP (Voice Over IP),至於在控制的部分則交由上層的協定來做。


Client – Server Model
網路上種種資料,是靠著不同的網路程式透過彼此建立起的連接來傳遞。對於網路程式而言,每個網路程式可以視為連接上的一個端點。這端點就是client程式與server程式。通常client程式會先送出資料給server程式,而server程式接收這個資料後再做適當的回應。

圖2.2 server-client 簡易model

在設計client-server程式時,有兩種型態的通訊模式 : 連接導向方式與無連接導向模式。相對應於TCP/IP協定家族,TCP提供連接導向的連接模式而UDP提供無連接式的通訊模式。這兩種連接模式最基本的不同就是TCP的server與client做好連接通道後再把資料傳送,而UDP只是很單純的丟出資料,不管對方有沒有收到資料。可是假如在一個網路狀況良好的環境下,像LAN (區域網路),UDP是很好用的,因為它比較快且適合用在具有即時性 (real-time) 的資料。

無線網路


圖2.3 Wireless Network

A.Ad Hoc


圖2.4:Ad Hoc

B.Infrastructure


圖2.5:Infrastructure