2009年5月25日 星期一

網路通訊協定

1. Ethernet :
乙太網路, 將信號用NRZ 來編碼,並傳至遠方。在通訊的時候主要靠MAC address 來認定傳送封包的發送者或接收者,每一個封包最大1518 個Bytes.

2. MAC addrss :
  為六個BYTES 的數字,每一個乙太網路都需要有這個MAC address, 這六個Bytes 一般表示為 00:21:70:DD:D1:FA 每一Bytes 用冒號來區隔,並為16進制, 廠商可以跟IEEE 來購買此MAC address.

3.IP address:
在網際網路是用IP adress 來定址,此位址為四個Bytes 數字,一般表示為192.168.0.1,每個Bytes 用點號來區隔, 使用0~255 十進制來表示。IP address 在內網可以自己去設定,但是如果要連接WAN網際網路就必須跟ISP (Internet Service Provider)要IP.
我們平常用 ADSL撥號連接,中華電信就會發給我們一個IP address.

3. ARP 通訊協定
網際網路指只認定IP adrress , 但是假如我們是透過Ethernet來傳送IP封包 就必須先知道其MAC address, 此時我們可以透過ARP 封包來查詢此IP address的MAC address.

================== ================================================
在 Ethernet 的實作中當我們收到一個Ethernet 封包時,我們可以透過protocol type 可以得知
此ethernet 封包攜帶著IP 或ARP 或 RARP 的封包。
===================================================================

4. ICMP 通訊協定
我們常用ping ipaddress 來檢查遠方PC 是否有連線, ICMP 則定義了此功能,我們也可以利用此工具得知遠端電腦的反應速度與連線的狀況.

5. TCP 通訊協定
 在TCP通訊協定中定義了port 概念, 兩個bytes 合計65536 個ports, 這些ports 可以把它想像成水管的分支,並傳送給不同的通訊協定。列如port 80 就是HTTP service, Port20 就是FTP service. 但是大部分都是空的,只要兩端指定好就可以相互傳輸資料。TCP 通訊協定有一個重要的特性就是握手式傳輸機制。每一個TCP 封包會有一個Sequence Number 每經過一次傳輸就會將Sequence Number 累加, 系統可以檢查此number 來決定封包是否需要重傳。所以一般我們會說TCP 是必較穩定的傳輸協定,封包也比較不會不見。

6. UDP 通訊協定
 UDP 跟TCP 很類似,唯一的差異就是UDP 不具有握手式的傳輸機制,也就是傳完並不會檢查是否對方已收到所以可靠度就不高但是傳輸效率較高

===================================================================
在TCP/IP實作時,當我們收到一個IP封包時,可以透過IP 封包的欄位知道此IP封包所攜帶的是UDP、TCP還是ICMP的封包!
很多書把ICMP 的方包放在UDP與TCP 的上面, 但實際上已封包的角度來看她其實與 UDP/TCP 同一層...
===================================================================

沒有留言:

張貼留言