網(wǎng)絡(luò)基礎(chǔ):TCP/IP 協(xié)議職責(zé)和常見的三種模型
一、TCP/IP 協(xié)議的主要職責(zé)
● 把需要通信消息分解為可管理的數(shù)據(jù)塊,并且這些數(shù)據(jù)塊能夠有效地通過傳輸介質(zhì)。
● 實現(xiàn)與網(wǎng)絡(luò)適配器硬件(MAC地址)連接。
● 尋址功能確保發(fā)送端的計算機(jī)能準(zhǔn)確找到接收數(shù)據(jù)的計算機(jī),同時接收端計算機(jī)能識別并接收指定數(shù)據(jù)
● 將數(shù)據(jù)有效地路由至目標(biāo)計算機(jī)所在子網(wǎng),即便源子網(wǎng)與目的子網(wǎng)位于不同的物理網(wǎng)絡(luò)上。
● 執(zhí)行錯誤控制、流量控制和確認(rèn):對可靠的通信而言,發(fā)送和接收計算機(jī)必須能夠發(fā)現(xiàn)并糾正傳輸錯誤,并合理控制數(shù)據(jù)流。
● 實現(xiàn)從本地應(yīng)用程序接收數(shù)據(jù)并傳輸?shù)酵獠烤W(wǎng)絡(luò)功能。
● 實現(xiàn)從外部網(wǎng)絡(luò)接收數(shù)據(jù)并傳輸?shù)奖镜貞?yīng)用程序。
二、TCP/IP 網(wǎng)絡(luò)常見的三種模型
圖片
2.1 常見的四層模型
四層模型是我們最常見的模型,包括 網(wǎng)絡(luò)訪問層、網(wǎng)際層、傳輸層、應(yīng)用層。四層模型從低到高如下:
2.1.1 網(wǎng)絡(luò)訪問層(Network Access Layer)
網(wǎng)絡(luò)訪問層屬于四層模型的最底層,主要負(fù)責(zé)數(shù)據(jù)的物理傳輸。它涉及硬件設(shè)備如網(wǎng)卡、集線器和交換機(jī),通過物理介質(zhì)(例如以太網(wǎng)電纜)將數(shù)據(jù)從發(fā)送端傳輸?shù)浇邮斩恕鬏斶^程中數(shù)據(jù)被轉(zhuǎn)換為比特流,并通過物理網(wǎng)絡(luò)進(jìn)行傳輸。并且網(wǎng)絡(luò)訪問層還處理數(shù)據(jù)的封裝和解封裝,用來保證數(shù)據(jù)在物理介質(zhì)上的正確傳輸。通過使用MAC地址來唯一標(biāo)識和定位網(wǎng)絡(luò)中的設(shè)備,從而實現(xiàn)數(shù)據(jù)的準(zhǔn)確傳輸。
2.1.2 網(wǎng)際層(Internet Layer)
網(wǎng)際層主要負(fù)責(zé)數(shù)據(jù)包在網(wǎng)絡(luò)間的路由選擇和轉(zhuǎn)發(fā),確保數(shù)據(jù)包能夠跨越不同的物理網(wǎng)絡(luò)到達(dá)目的地。它使用IP地址來標(biāo)識網(wǎng)絡(luò)中的通信設(shè)備,并通過路由協(xié)議確定數(shù)據(jù)包的最理想傳輸路徑。網(wǎng)際層需要處理數(shù)據(jù)包的分片和重組,以適應(yīng)不同網(wǎng)絡(luò)的傳輸要求,并提供網(wǎng)絡(luò)層的錯誤檢測和糾正機(jī)制。
2.1.3 傳輸層(Transport Layer)
傳輸層提供端到端的可靠傳輸服務(wù),確保數(shù)據(jù)的完整性和順序性。它使用端口號來標(biāo)識應(yīng)用程序和服務(wù),傳輸協(xié)議有TCP和UDP兩種。TCP提供可靠的、面向連接的服務(wù),確保數(shù)據(jù)的完整性和順序性,適用于對數(shù)據(jù)可靠性要求高的應(yīng)用。UDP提供不可靠的、無連接的服務(wù),適用于對實時性要求高的應(yīng)用比如視頻會議、直播。
2.1.4 應(yīng)用層(Application Layer)
應(yīng)用層屬于四層模型的最高層,直接為用戶的應(yīng)用程序提供服務(wù)。為網(wǎng)絡(luò)排錯、文件傳輸、遠(yuǎn)程控制和Internet 操作提供了應(yīng)用程序,另外還支持應(yīng)用編程接口(API),從而使得針對特定操作系統(tǒng)編寫的程序來直接訪問網(wǎng)絡(luò)。
2.2 五層模型
五層模型和四層模型的主要區(qū)別用物理層和數(shù)據(jù)鏈路層代替了四層模型的網(wǎng)絡(luò)層。五層模型從低到高如下:
圖片
2.2.1 物理層
物理層是網(wǎng)絡(luò)通信的基礎(chǔ)設(shè)施層,涉及網(wǎng)絡(luò)、光纖等各種傳輸介質(zhì)。它為上層提供基礎(chǔ)的物理連接,使得數(shù)據(jù)能夠在不同的設(shè)備之間進(jìn)行實際的傳輸。
2.2.2 數(shù)據(jù)鏈路層
數(shù)據(jù)鏈路層處理設(shè)備之間的數(shù)據(jù)幀傳輸,主要關(guān)注相鄰節(jié)點間的通信。例如,它負(fù)責(zé)通過網(wǎng)線、光纖或網(wǎng)絡(luò)接口連接的交換機(jī)和網(wǎng)卡之間的數(shù)據(jù)傳輸。這一層確保數(shù)據(jù)在局部網(wǎng)絡(luò)中的可靠傳遞。
2.2.3 網(wǎng)絡(luò)層
網(wǎng)絡(luò)層主要負(fù)責(zé)地址管理和路由轉(zhuǎn)發(fā)。它記錄源主機(jī)和目標(biāo)主機(jī)的IP地址,并選擇一條高效可靠的路徑來傳輸數(shù)據(jù)。這一層的工作重點是路徑規(guī)劃,確保數(shù)據(jù)能夠在復(fù)雜的網(wǎng)絡(luò)環(huán)境中找到最佳傳輸路線。
2.2.4 傳輸層
傳輸層負(fù)責(zé)管理兩個節(jié)點之間的數(shù)據(jù)傳輸,確保數(shù)據(jù)的可靠傳遞。它不關(guān)心數(shù)據(jù)在中間節(jié)點的傳輸路徑,而是專注于起點和終點之間的通信,并采取措施保證數(shù)據(jù)能夠準(zhǔn)確無誤地送達(dá)目標(biāo)地址。
2.2.5 應(yīng)用層
應(yīng)用層專注于處理從傳輸層接收到的數(shù)據(jù)。在軟件開發(fā)過程中,開發(fā)者可以利用特定編程技術(shù)(Java、C#、C++ 等等語言)來讀取和寫入傳輸層的數(shù)據(jù)。應(yīng)用層的主要職責(zé)是根據(jù)預(yù)定的格式處理這些數(shù)據(jù),而不涉及傳輸層的具體實現(xiàn)細(xì)節(jié)。
2.3 RFC871中描述的 ARPAnet三層早期模型
1969年11月,美國國防部 高級研究計劃管理局( ARPA)開始建立一個命名為ARPAnet的網(wǎng)絡(luò),這是就是互聯(lián)網(wǎng)的前身,一個軍事用途的網(wǎng)絡(luò)。
圖片
該模型對網(wǎng)絡(luò)架構(gòu)有深遠(yuǎn)的影響,許多現(xiàn)代網(wǎng)絡(luò)架構(gòu)都或多或少地參考了這個模型。三層模型從低到高如下:
2.3.1 網(wǎng)絡(luò)層(Network Layer)
網(wǎng)絡(luò)層主要負(fù)責(zé)在通信實體之間提供基本的數(shù)據(jù)包交換功能。
2.3.2 網(wǎng)絡(luò)接入層(Network Access Layer)
網(wǎng)絡(luò)接入層提供網(wǎng)絡(luò)互聯(lián)的硬件和軟件,使得不同的網(wǎng)絡(luò)設(shè)備可以互聯(lián)。
2.3.3 主機(jī)層(Host Layer)
相當(dāng)于用戶層,用戶的終端設(shè)備和其他主機(jī)直接相連。
三、總結(jié)
以上是TCP/IP的主要職責(zé)和三種網(wǎng)絡(luò)模型的介紹,希望對大家了解TCP/IP協(xié)議提供一些幫助!


2010-09-25 15:07:08
2010-08-24 09:43:33




