OSI參考模型
OSI參考模型是ISO的建議浩淘,它是為了使各層上的協(xié)議國際標準化而發(fā)展起來的捌朴。OSI參考模型全稱是開放系統(tǒng)互連參考模型(Open System Interconnection Reference Model)。這一參考模型共分為七層:物理層张抄、數(shù)據(jù)鏈路層砂蔽、網(wǎng)絡(luò)層、傳輸層署惯、會話層左驾、表示層和應(yīng)用層,如圖1所示极谊。
物理層(Physical Layer)主要是處理機械的诡右、電氣的和過程的接口,以及物理層下的物理傳輸介質(zhì)等轻猖。
數(shù)據(jù)鏈路層(Data Link Layer)的任務(wù)是加強物理層的功能帆吻,使其對網(wǎng)絡(luò)層顯示為一條無錯的線路。
網(wǎng)絡(luò)層(Network Layer)確定分組從源端到目的端的路由選擇咙边。路由可以選用網(wǎng)絡(luò)中固定的靜態(tài)路由表猜煮,也可以在每一次會話時決定,還可以根據(jù)當前的網(wǎng)絡(luò)負載狀況败许,靈活地為每一個分組分別決定王带。
傳輸層(Transport Layer)從會話層接收數(shù)據(jù),并傳輸給網(wǎng)絡(luò)層市殷,同時確保到達目的端的各段信息正確無誤愕撰,而且使會話層不受硬件變化的影響。通常被丧,會話層每請求建立一個傳輸連接,傳輸層就會為其創(chuàng)建一個獨立的網(wǎng)絡(luò)連接绪妹。但如果傳輸連接需要一個較高的吞吐量甥桂,傳輸層也可以為其創(chuàng)建多個網(wǎng)絡(luò)連接,讓數(shù)據(jù)在這些網(wǎng)絡(luò)連接上分流邮旷,以提高吞吐量黄选。而另一方面,如果創(chuàng)建或維持一個獨立的網(wǎng)絡(luò)連接不合算,傳輸層也可將幾個傳輸連接復(fù)用到同一個網(wǎng)絡(luò)連接上办陷,以降低費用貌夕。除了多路復(fù)用,傳輸層還需要解決跨網(wǎng)絡(luò)連接的建立和拆除民镜,并具有流量控制機制啡专。
會話層(Session Layer)允許不同機器上的用戶之間建立會話關(guān)系,既可以進行類似傳輸層的普通數(shù)據(jù)傳輸制圈,也可以被用于遠程登錄到分時系統(tǒng)或在兩臺機器間傳遞文件们童。
表示層(Presentation Layer)用于完成一些特定的功能,這些功能由于經(jīng)常被請求鲸鹦,因此人們希望有通用的解決辦法慧库,而不是由每個用戶各自實現(xiàn)。
應(yīng)用層(Application Layer)中包含了大量人們普遍需要的協(xié)議馋嗜。不同的文件系統(tǒng)有不同的文件命名原則和不同的文本行表示方法等齐板,不同的系統(tǒng)之間傳輸文件還有各種不兼容問題,這些都將由應(yīng)用層來處理葛菇。此外甘磨,應(yīng)用層還有虛擬終端、電子郵件和新聞組等各種通用和專用的功能熟呛。
TCP/IP參考模型
TCP/IP參考模型是首先由ARPANET所使用的網(wǎng)絡(luò)體系結(jié)構(gòu)宽档。這個體系結(jié)構(gòu)在它的兩個主要協(xié)議出現(xiàn)以后被稱為TCP/IP參考模型(TCP/IP Reference Model)。這一網(wǎng)絡(luò)協(xié)議共分為四層:網(wǎng)絡(luò)訪問層庵朝、互聯(lián)網(wǎng)層吗冤、傳輸層和應(yīng)用層,如圖2所示九府。
網(wǎng)絡(luò)訪問層(Network Access Layer)在TCP/IP參考模型中并沒有詳細描述椎瘟,只是指出主機必須使用某種協(xié)議與網(wǎng)絡(luò)相連。
互聯(lián)網(wǎng)層(Internet Layer)是整個體系結(jié)構(gòu)的關(guān)鍵部分侄旬,其功能是使主機可以把分組發(fā)往任何網(wǎng)絡(luò)肺蔚,并使分組獨立地傳向目標。這些分組可能經(jīng)由不同的網(wǎng)絡(luò)儡羔,到達的順序和發(fā)送的順序也可能不同宣羊。高層如果需要順序收發(fā),那么就必須自行處理對分組的排序汰蜘〕鸱耄互聯(lián)網(wǎng)層使用因特網(wǎng)協(xié)議(IP,Internet Protocol)族操。TCP/IP參考模型的互聯(lián)網(wǎng)層和OSI參考模型的網(wǎng)絡(luò)層在功能上非常相似苛坚。
傳輸層(Tramsport Layer)使源端和目的端機器上的對等實體可以進行會話。在這一層定義了兩個端到端的協(xié)議:傳輸控制協(xié)議(TCP,Transmission Control Protocol)和用戶數(shù)據(jù)報協(xié)議(UDP泼舱,User Datagram Protocol)等缀。TCP是面向連接的協(xié)議,它提供可靠的報文傳輸和對上層應(yīng)用的連接服務(wù)娇昙。為此尺迂,除了基本的數(shù)據(jù)傳輸外,它還有可靠性保證涯贞、流量控制枪狂、多路復(fù)用、優(yōu)先權(quán)和安全性控制等功能宋渔。UDP是面向無連接的不可靠傳輸?shù)膮f(xié)議州疾,主要用于不需要TCP的排序和流量控制等功能的應(yīng)用程序。
應(yīng)用層(Application Layer)包含所有的高層協(xié)議皇拣,包括:虛擬終端協(xié)議(TELNET严蓖,TELecommunications NETwork)、文件傳輸協(xié)議(FTP氧急,F(xiàn)ile Transfer Protocol)颗胡、電子郵件傳輸協(xié)議(SMTP,Simple Mail Transfer Protocol)吩坝、域名服務(wù)(DNS毒姨,Domain Name Service)、網(wǎng)上新聞傳輸協(xié)議(NNTP钉寝,Net News Transfer Protocol)和超文本傳送協(xié)議(HTTP弧呐,HyperText Transfer Protocol)等。TELNET允許一臺機器上的用戶登錄到遠程機器上嵌纲,并進行工作俘枫;FTP提供有效地將文件從一臺機器上移到另一臺機器上的方法;SMTP用于電子郵件的收發(fā)逮走;DNS用于把主機名映射到網(wǎng)絡(luò)地址鸠蚪;NNTP用于新聞的發(fā)布、檢索和獲仁Α茅信;HTTP用于在WWW上獲取主頁。
層次
TCP/IP協(xié)議不是TCP和IP這兩個協(xié)議的合稱墓臭,而是指因特網(wǎng)整個TCP/IP協(xié)議族蘸鲸。
從協(xié)議分層模型方面來講,TCP/IP由四個層次組成:網(wǎng)絡(luò)接口層起便、網(wǎng)絡(luò)層棚贾、傳輸層、應(yīng)用層榆综。
TCP/IP協(xié)議并不完全符合OSI的七層參考模型妙痹,OSI(Open System Interconnect)是傳統(tǒng)的開放式系統(tǒng)互連參考模型,是一種通信協(xié)議的7層抽象的參考模型鼻疮,其中每一層執(zhí)行某一特定任務(wù)怯伊。該模型的目的是使各種硬件在相同的層次上相互通信。這7層是:物理層判沟、數(shù)據(jù)鏈路層(網(wǎng)絡(luò)接口層)耿芹、網(wǎng)絡(luò)層(網(wǎng)絡(luò)層)、傳輸層(傳輸層)挪哄、會話層吧秕、表示層和應(yīng)用層(應(yīng)用層)。而TCP/IP通訊協(xié)議采用了4層的層級結(jié)構(gòu)迹炼,每一層都呼叫它的下一層所提供的網(wǎng)絡(luò)來完成自己的需求砸彬。由于ARPANET的設(shè)計者注重的是網(wǎng)絡(luò)互聯(lián),允許通信子網(wǎng)(網(wǎng)絡(luò)接口層)采用已有的或是將來有的各種協(xié)議斯入,所以這個層次中沒有提供專門的協(xié)議砂碉。實際上,TCP/IP協(xié)議可以通過網(wǎng)絡(luò)接口層連接到任何網(wǎng)絡(luò)上刻两,例如X.25交換網(wǎng)或IEEE802局域網(wǎng)增蹭。
注意tcp本身不具有數(shù)據(jù)傳輸中噪音導(dǎo)致的錯誤檢測功能,但是有實現(xiàn)超時的錯誤重傳功能;
TCP/IP | OSI |
---|---|
應(yīng)用層 | 應(yīng)用層 表示層 會話層 |
主機到主機層(TCP)(又稱傳輸層) | 傳輸層 |
網(wǎng)絡(luò)層(IP)(又稱互聯(lián)層) | 網(wǎng)絡(luò)層 |
網(wǎng)絡(luò)接口層(又稱鏈路層) | 數(shù)據(jù)鏈路層 物理層 |
網(wǎng)絡(luò)接口層
物理層是定義物理介質(zhì)的各種特性:
1、機械特性磅摹;
2滋迈、電子特性;
3偏瓤、功能特性杀怠;
4、規(guī)程特性厅克。
數(shù)據(jù)鏈路層是負責(zé)接收IP數(shù)據(jù)包并通過網(wǎng)絡(luò)發(fā)送赔退,或者從網(wǎng)絡(luò)上接收物理幀,抽出IP數(shù)據(jù)包证舟,交給IP層硕旗。
ARP是正向地址解析協(xié)議,通過已知的IP女责,尋找對應(yīng)主機的MAC地址漆枚。
RARP是反向地址解析協(xié)議,通過MAC地址確定IP地址抵知。比如無盤工作站還有DHCP服務(wù)墙基。
常見的接口層協(xié)議有:
Ethernet 802.3软族、Token Ring 802.5、X.25残制、Frame relay立砸、HDLC、PPP ATM等初茶。
網(wǎng)絡(luò)層
負責(zé)相鄰計算機之間的通信颗祝。其功能包括三方面。
處理來自傳輸層的分組發(fā)送請求恼布,收到請求后螺戳,將分組裝入IP數(shù)據(jù)報,填充報頭折汞,選擇去往信宿機的路徑倔幼,然后將數(shù)據(jù)報發(fā)往適當?shù)木W(wǎng)絡(luò)接口。
處理輸入數(shù)據(jù)報:首先檢查其合法性爽待,然后進行尋徑--假如該數(shù)據(jù)報已到達信宿機凤藏,則去掉報頭,將剩下部分交給適當?shù)膫鬏攨f(xié)議堕伪;假如該數(shù)據(jù)報尚未到達信宿揖庄,則轉(zhuǎn)發(fā)該數(shù)據(jù)報。
處理路徑欠雌、流控蹄梢、擁塞等問題。
網(wǎng)絡(luò)層包括:IP(Internet Protocol)協(xié)議富俄、ICMP(Internet Control Message Protocol)
控制報文協(xié)議禁炒、ARP(Address Resolution Protocol)地址轉(zhuǎn)換協(xié)議、RARP(Reverse ARP)反向地址轉(zhuǎn)換協(xié)議霍比。
IP是網(wǎng)絡(luò)層的核心幕袱,通過路由選擇將下一條IP封裝后交給接口層。IP數(shù)據(jù)報是無連接服務(wù)悠瞬。
ICMP是網(wǎng)絡(luò)層的補充们豌,可以回送報文。用來檢測網(wǎng)絡(luò)是否通暢浅妆。
Ping命令就是發(fā)送ICMP的echo包望迎,通過回送的echo relay進行網(wǎng)絡(luò)測試。
傳輸層
提供應(yīng)用程序間的通信凌外。其功能包括:一辩尊、格式化信息流;二康辑、提供可靠傳輸摄欲。為實現(xiàn)后者轿亮,傳輸層協(xié)議規(guī)定接收端必須發(fā)回確認,并且假如分組丟失胸墙,必須重新發(fā)送哀托,即耳熟能詳?shù)摹叭挝帐帧边^程,從而提供可靠的數(shù)據(jù)傳輸劳秋。
傳輸層協(xié)議主要是:傳輸控制協(xié)議TCP(Transmission Control Protocol)和用戶數(shù)據(jù)報協(xié)議UDP(User Datagram protocol)。
應(yīng)用層
向用戶提供一組常用的應(yīng)用程序胖齐,比如電子郵件玻淑、文件傳輸訪問、遠程登錄等呀伙。遠程登錄TELNET使用TELNET協(xié)議提供在網(wǎng)絡(luò)其它主機上注冊的接口补履。TELNET會話提供了基于字符的虛擬終端。文件傳輸訪問FTP使用FTP協(xié)議來提供網(wǎng)絡(luò)內(nèi)機器間的文件拷貝功能剿另。
應(yīng)用層協(xié)議主要包括如下幾個:FTP箫锤、TELNET、DNS雨女、SMTP谚攒、NFS、HTTP氛堕。
FTP(File Transfer Protocol)是文件傳輸協(xié)議馏臭,一般上傳下載用FTP服務(wù),數(shù)據(jù)端口是20H讼稚,控制端口是21H括儒。
Telnet服務(wù)是用戶遠程登錄服務(wù)滑沧,使用23H端口螺垢,使用明碼傳送餐曹,保密性差勺鸦、簡單方便荚孵。
DNS(Domain Name Service)是域名解析服務(wù)爷辙,提供域名到IP地址之間的轉(zhuǎn)換左权,使用端口53拘领。
SMTP(Simple Mail Transfer Protocol)是簡單郵件傳輸協(xié)議藕帜,用來控制信件的發(fā)送抒蚜、中轉(zhuǎn),使用端口25耘戚。
NFS(Network File System)是網(wǎng)絡(luò)文件系統(tǒng)嗡髓,用于網(wǎng)絡(luò)中不同主機間的文件共享。
HTTP(Hypertext Transfer Protocol)是超文本傳輸協(xié)議收津,用于實現(xiàn)互聯(lián)網(wǎng)中的WWW服務(wù)饿这,使用端口80浊伙。
OSI中的層 | 功能 | TCP/IP協(xié)議族 |
---|---|---|
應(yīng)用層 | 文件傳輸,電子郵件长捧,文件服務(wù)嚣鄙,虛擬終端 | TFTP,HTTP串结,SNMP哑子,F(xiàn)TP,SMTP肌割,DNS卧蜓,Telnet 等等 |
表示層 | 數(shù)據(jù)格式化,代碼轉(zhuǎn)換把敞,數(shù)據(jù)加密 | 沒有協(xié)議 |
會話層 | 解除或建立與別的接點的聯(lián)系 | 沒有協(xié)議 |
傳輸層 | 提供端對端的接口 | TCP弥奸,UDP |
網(wǎng)絡(luò)層 | 為數(shù)據(jù)包選擇路由 | IP,ICMP奋早,OSPF盛霎,EIGRP,IGMP |
數(shù)據(jù)鏈路層 | 傳輸有地址的幀以及錯誤檢測功能 | SLIP耽装,CSLIP愤炸,PPP,MTU |
物理層 | 以二進制數(shù)據(jù)形式在物理媒體上傳輸數(shù)據(jù) | ISO2110掉奄,IEEE802摇幻,IEEE802.2 |
網(wǎng)絡(luò)層中的協(xié)議主要有IP,ICMP挥萌,IGMP等绰姻,由于它包含了IP協(xié)議模塊,所以它是所有基于TCP/IP協(xié)議網(wǎng)絡(luò)的核心引瀑。在網(wǎng)絡(luò)層中狂芋,IP模塊完成大部分功能。ICMP和IGMP以及其他支持IP的協(xié)議幫助IP完成特定的任務(wù)憨栽,如傳輸差錯控制信息以及主機/路由器之間的控制電文等帜矾。網(wǎng)絡(luò)層掌管著網(wǎng)絡(luò)中主機間的信息傳輸。
傳輸層上的主要協(xié)議是TCP和UDP屑柔。正如網(wǎng)絡(luò)層控制著主機之間的數(shù)據(jù)傳遞屡萤,傳輸層控制著那些將要進入網(wǎng)絡(luò)層的數(shù)據(jù)。兩個協(xié)議就是它管理這些數(shù)據(jù)的兩種方式:TCP是一個基于連接的協(xié)議掸宛;UDP則是面向無連接服務(wù)的管理方式的協(xié)議死陆。