Posted on 2009-11-29 00:30
Gavin.lee 閱讀(392)
評論(0) 編輯 收藏 所屬分類:
web 積累(前端 + 后臺)
TCP/IP是網絡中使用的基本的通信協議。雖然從名字上看TCP/IP包括兩個協議,傳輸控制協議(TCP)和網際協議(IP),但TCP/IP實際上是一組協議,它包括上百個各種功能的協議,如:遠程登錄、文件傳輸和電子郵件等,而TCP協議和IP協議是保證數據完整傳輸的兩個基本的重要協議。通常說TCP/IP是Internet協議族,而不單單是TCP和IP。
TCP/IP是用于計算機通信的一組協議,我們通常稱它為TCP/IP協議族。它是70年代中期美國國防部為其ARPANET廣域網開發的網絡體系結構和協議標準,以它為基礎組建的INTERNET是目前國際上規模最大的計算機網絡,正因為INTERNET的廣泛使用,使得TCP/IP成了事實上的標準。
之所以說TCP/IP是一個協議族,是因為TCP/IP協議包括TCP、IP、UDP、ICMP、RIP、TELNETFTP、SMTP、ARP、TFTP等許多協議,這些協議一起稱為TCP/IP協議。以下我們對協議族中一些常用協議英文名稱和用途作一介紹:
- TCP(Transport Control Protocol)傳輸控制協議
- IP(Internetworking Protocol)網間網協議
- UDP(User Datagram Protocol)用戶數據報協議
- ICMP(Internet Control Message Protocol)互聯網控制信息協議
- SMTP(Simple Mail Transfer Protocol)簡單郵件傳輸協議
- SNMP(Simple Network manage Protocol)簡單網絡管理協議
- FTP(File Transfer Protocol)文件傳輸協議
- ARP(Address Resolation Protocol)地址解析協議
從協議分層模型方面來講,TCP/IP由四個層次組成:網絡接口層、網間網層、傳輸層、應用層。其中:
- 網絡接口層 這是TCP/IP軟件的最低層,負責接收IP數據報并通過網絡發送之,或者從網絡上接收物理幀,抽出IP數據報,交給IP層。
- 網間網層 負責相鄰計算機之間的通信。其功能包括三方面。一、處理來自傳輸層的分組發送請求,收到請求后,將分組裝入IP數據報,填充報頭,選擇去往信宿機的路徑,然后將數據報發往適當的網絡接口。二、處理輸入數據報:首先檢查其合法性,然后進行尋徑--假如該數據報已到達信宿機,則去掉報頭,將剩下部分交給適當的傳輸協議;假如該數據報尚未到達信宿,則轉發該數據報。三、處理路徑、流控、擁塞等問題。
- 傳輸層 提供應用程序間的通信。其功能包括:一、格式化信息流;二、提供可靠傳輸。為實現后者,傳輸層協議規定接收端必須發回確認,并且假如分組丟失,必須重新發送。
- 應用層 向用戶提供一組常用的應用程序,比如電子郵件、文件傳輸訪問、遠程登錄等。遠程登錄TELNET使用TELNET協議提供在網絡其它主機上注冊的接口。TELNET會話提供了基于字符的虛擬終端。文件傳輸訪問FTP使用FTP協議來提供網絡內機器間的文件拷貝功能。
前面我們已經學過關于OSI參考模型的相關概念,現在我們來看一看,相對于七層協議參考模型,TCP/IP協議是如何實現網絡模型的。
OSI中的層 |
功能 |
TCP/IP協議族 |
應用層 |
文件傳輸,電子郵件,文件服務,虛擬終端 |
TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet |
表示層 |
數據格式化,代碼轉換,數據加密 |
沒有協議 |
會話層 |
解除或建立與別的接點的聯系 |
沒有協議 |
傳輸層 |
提供端對端的接口 |
TCP,UDP |
網絡層 |
為數據包選擇路由 |
IP,ICMP,RIP,OSPF,BGP,IGMP |
數據鏈路層 |
傳輸有地址的幀以及錯誤檢測功能 |
SLIP,CSLIP,PPP,ARP,RARP,MTU |
物理層 |
以二進制數據形式在物理媒體上傳輸數據 |
ISO2110,IEEE802 IEEE802.2 |
數據鏈路層包括了硬件接口和協議ARP,RARP,這兩個協議主要是用來建立送到物理層上的信息和接收從物理層上傳來的信息;
網絡層中的協議主要有IP,ICMP,IGMP等,由于它包含了IP協議模塊,所以它是所有基于TCP/IP協議網絡的核心。在網絡層中,IP模塊完成大部分功能。ICMP和IGMP以及其他支持IP的協議幫助IP完成特定的任務,如傳輸差錯控制信息以及主機/路由器之間的控制電文等。網絡層掌管著網絡中主機間的信息傳輸。
傳輸層上的主要協議是TCP和UDP。正如網絡層控制著主機之間的數據傳遞,傳輸層控制著那些將要進入網絡層的數據。兩個協議就是它管理這些數據的兩種方式:TCP是一個基于連接的協議(還記得我們在網絡基礎中講到的關于面向連接的服務和面向無連接服務的概念嗎?忘了的話,去看看);UDP則是面向無連接服務的管理方式的協議。
應用層位于協議棧的頂端,它的主要任務就是應用了。上面的協議當然也是為了這些應用而設計的,具體說來一些常用的協議功能如下:
Telnet:提供遠程登錄(終端仿真)服務,好象比較古老的BBS就是用的這個登陸。
FTP :提供應用級的文件傳輸服務,說的簡單明了點就是遠程文件訪問等等服務;
SMTP:不用說拉,天天用到的電子郵件協議。
TFTP:提供小而簡單的文件傳輸服務,實際上從某個角度上來說是對FTP的一種替換(在文件特別小并且僅有傳輸需求的時候)。
SNTP:簡單網絡管理協議。看名字就不用說什么含義了吧。
DNS:域名解析服務,也就是如何將域名映射城IP地址的協議。
HTTP:不知道各位對這個協議熟不熟悉啊?這是超文本傳輸協議,你之所以現在能看到網上的圖片,動畫,音頻,等等,都是仰仗這個協議在起作用啊!