一直想整理關(guān)于計算機網(wǎng)絡(luò)相關(guān)的資料,雖然網(wǎng)上有很多詳細(xì)的講解,但是總是看過就忘了,所以為了治我這毛病,我還是將看過的一些文字裝換成自己的想法和一些圖片吧。主要還是以我之前了解不深的東西為主。
1 IP的基本定義
大概了解過IP的話,都知道Internet protocol 網(wǎng)際協(xié)議,位于網(wǎng)絡(luò)層,提供一種不可靠、無連接的數(shù)據(jù)報傳送服務(wù)。
但是為什么是不可靠的?什么是無連接的?
所謂的不可靠也就是不能保證數(shù)據(jù)報能成功到達(dá)目的地。IP提供最好的傳輸傳輸服務(wù),但是發(fā)送某種錯誤的時候,如:
如某個路由器暫時用完了緩沖區(qū),IP會直接進(jìn)行數(shù)據(jù)報的丟棄,并發(fā)送ICMP消息給信源端。
無連接(connectionless)這個術(shù)語的意思是IP并不維護(hù)任何關(guān)于后續(xù)數(shù)據(jù)報的狀態(tài)信息。每個數(shù)據(jù)報的處理是相互獨立的。這也說明,IP數(shù)據(jù)報可以不按發(fā)送順序接收。
在這個部分的話,我首先有疑問的是路由器,路由器到底是什么工作的?
普通的電腦也能變成路由器,只要具有分組轉(zhuǎn)發(fā)的功能。而IP路由表會在下文中介紹。
2 IP首部
把IP首部以及相應(yīng)的解釋都放在上圖,其實也能很直觀的了解一些重要的部分,但是還需要注意兩點:
1 TTL設(shè)置了數(shù)據(jù)報可以經(jīng)過的最多路由器數(shù),最開始也說了IP提供的是不可靠的服務(wù),而TTL也能直觀的說明原因。
2 首部檢驗和字段的規(guī)則:為了計算一份數(shù)據(jù)報的IP檢驗和,首先把檢驗和字段置為0。然后,對首部中每個16 bit進(jìn)行二進(jìn)制反碼求和(整個首部看成是由一串16 bit的字組成),結(jié)果存在檢驗和字段中。當(dāng)收到一份IP數(shù)據(jù)報后,同樣對首部中每個16 bit進(jìn)行二進(jìn)制反碼的求和。由于接收方在計算過程中包含了發(fā)送方存在首部中的檢驗和,因此,如果首部在傳輸過程中沒有發(fā)生任何差錯,那么接收方計算的結(jié)果應(yīng)該為全1。如果結(jié)果不是全1(即檢驗和錯誤),那么IP就丟棄收到的數(shù)據(jù)報。但是不生成差錯報文,由上層去發(fā)現(xiàn)丟失的數(shù)據(jù)報并進(jìn)行重傳。
3 IP路由選擇
最開始的時候大概的講解了以下路由器的基本原則,但是看過可能會有以下的幾個問題:
1 路由器一定是專業(yè)的計算機嗎?普通用戶電腦可以當(dāng)成是路由器嗎?
路由器最主要的任務(wù)是分組轉(zhuǎn)發(fā),也就是根據(jù)路由算法從一個接口轉(zhuǎn)發(fā)到另一個接口。而IP層可以配置成主機的功能,也能配置成路由器的功能,
2 路由表是什么?
IP層在內(nèi)存中有一個路由表。當(dāng)收到一份數(shù)據(jù)報并進(jìn)行發(fā)送時,都要對該表進(jìn)行搜索一次。當(dāng)數(shù)據(jù)報來自某個網(wǎng)絡(luò)接口時,IP首先檢查目的IP地址是否為本機的IP地址之一或者IP廣播地址。如果確實是這樣,數(shù)據(jù)報就被送到由IP首部協(xié)議字段所指定的協(xié)議模塊進(jìn)行處理。
IP路由選擇主要完成以下的功能:
1 搜索路由表,尋找能與目的IP地址完全匹配的表目(網(wǎng)絡(luò)號和主機號都要匹配)。如果找到,則把報文發(fā)送給該表目指定的下一站路由器或直接連接的網(wǎng)絡(luò)接口(取決于標(biāo)志字段的值)。
2 搜索路由表,尋找能與目的網(wǎng)絡(luò)號相匹配的表目。如果找到,則把報文發(fā)送給該表目指定的下一站路由器或直接連接的網(wǎng)絡(luò)接口(取決于標(biāo)志字段的值)。目的網(wǎng)絡(luò)上的所有主機都可以通過這個表目來處置。例如,一個以太網(wǎng)上的所有主機都是通過這種表目進(jìn)行尋徑的。這種搜索網(wǎng)絡(luò)的匹配方法必須考慮可能的子網(wǎng)掩碼。關(guān)于這一點我們在下一節(jié)中進(jìn)行討論。
3 搜索路由表,尋找標(biāo)為“默認(rèn)(default)”的表目。如果找到,則把報文發(fā)送給該表目指定的下一站路由器。如果上面這些步驟都沒有成功,那么該數(shù)據(jù)報就不能被傳送。
?這篇關(guān)于IP協(xié)議的讀書筆記寫的時候還是很基本的,會將計算機網(wǎng)絡(luò)研究一邊之后,再深入的改進(jìn)。