計算機網路 TCP IP若干問題

2021-09-07 07:57:03 字數 3474 閱讀 5155

arp及rarp協議

icmp協議

ping

traceroute

傳輸層**

tcp/ip協議模型(transmission control protocol / internet protocol),包含了一系列構成網際網路基礎的網路協議,是internet的核心協議。

基於tcp/ip的參考模型將協議分成四個層次,它們分別是網路介面層、網路層、傳輸層和應用層。下圖表示tcp/ip模型與osi模型各層的對照關係。

tcp/ip協議族按照層次由上到下,層層包裝。

最上面的是應用層,這裡面有http,ftp,等等我們熟悉的協議。

第二層則是傳輸層,著名的tcp和udp協議就在這個層次。

第三層是網路層,ip協議就在這裡,它負責對資料加上ip位址和其他的資料以確定傳輸的目標。

第四層是資料鏈路層,這個層次為待傳送的資料加入乙個乙太網協議頭,並進行crc編碼,為最後的資料傳輸做準備。

上圖清楚地表示了tcp/ip協議中每個層的作用,而tcp/ip協議通訊的過程其實就對應著資料入棧與出棧的過程。

物理層:負責0、1位元流與物理裝置電壓高低、光的閃滅之間的互換。

資料鏈路層:負責將0、1序列劃分為資料幀從乙個節點傳輸到臨近的另乙個節點(節點即主機),這些節點是通過mac來唯一標識的(mac,實體地址,乙個主機會有乙個mac位址)。

封裝成幀: 把網路層資料報加頭和尾,封裝成幀,幀頭中包括源mac位址和目的mac位址

透明傳輸:零位元填充、轉義字元。

可靠傳輸: 在出錯率很低的鏈路上很少用,但是無線鏈路wlan會保證可靠傳輸。

差錯檢測(crc):接收者檢測錯誤,如果發現差錯,丟棄該幀。

ip協議是tcp/ip協議的核心,所有的tcp,udp,imcp,igmp的資料都以ip資料格式傳輸。要注意的是,ip不是可靠的協議,這是說,ip協議沒有提供一種資料未傳達以後的處理機制,這被認為是上層協議:tcp或udp要做的事情。

在資料鏈路層中我們一般通過mac位址來識別不同的節點,而在ip層我們也要有乙個類似的位址標識,這就是ip位址。

這裡只介紹:八位的ttl欄位。這個字段規定該資料報在穿過多少個路由之後才會被拋棄。某個ip資料報每穿過乙個路由器,該資料報的ttl數值就會減少1,當該資料報的ttl成為零,它就會被自動拋棄。

這個欄位的最大值也就是255,也就是說乙個協議包也就在路由器裡面穿行255次就會被拋棄了,根據系統的不同,這個數字也不一樣,一般是32或者是64。

arp 是根據ip位址獲取mac位址的一種協議。

arp(位址解析)協議是一種解析協議,本來主機是完全不知道這個ip對應的是哪個主機的哪個介面,當主機要傳送乙個ip包的時候,會首先查一下自己的arp快取記憶體(就是乙個ip-mac位址對應表快取)。

如果查詢的ip-mac值對不存在,那麼主機就向網路傳送乙個arp協議廣播包,這個廣播包裡面就有待查詢的ip位址,而直接收到這份廣播的包的所有主機都會查詢自己的ip位址,如果收到廣播包的某乙個主機發現自己符合條件,那麼就準備好乙個包含自己的mac位址的arp包傳送給傳送arp廣播的主機。

而廣播主機拿到arp包後會更新自己的arp快取(就是存放ip-mac對應表的地方)。傳送廣播的主機就會用新的arp快取資料準備好資料鏈路層的的資料報傳送工作。

rarp協議的工作與此相反,不做贅述。

ip協議並不是乙個可靠的協議,它不保證資料被送達,那麼,自然的,保證資料送達的工作應該由其他的模組來完成。其中乙個重要的模組就是icmp(網路控制報文)協議。icmp不是高層協議,而是ip層的協議。

當傳送ip資料報發生錯誤。比如主機不可達,路由不可達等等,icmp協議將會把錯誤資訊封包,然後傳送回給主機。給主機乙個處理錯誤的機會,這 也就是為什麼說建立在ip層以上的協議是可能做到安全的原因。

ping可以說是icmp的最著名的應用,是tcp/ip協議的一部分。利用「ping」命令可以檢查網路是否連通,可以很好地幫助我們分析和判定網路故障。

例如:當我們某乙個**上不去的時候。通常會ping一下這個**。ping會回顯出一些有用的資訊。一般的資訊如下

ping這個單詞源自聲納定位,而這個程式的作用也確實如此,它利用icmp協議包來偵測另乙個主機是否可達。原理是用型別碼為0的icmp髮請 求,受到請求的主機則用型別碼為8的icmp回應。

ping程式來計算間隔時間,並計算有多少個包被送達。使用者就可以判斷網路大致的情況。我們可以看到, ping給出來了傳送的時間和ttl的資料。

traceroute是用來偵測主機到目的主機之間所經路由情況的重要工具,也是最便利的工具。

traceroute的原理是非常非常的有意思,它收到到目的主機的ip後,首先給目的主機傳送乙個ttl=1的udp資料報,而經過的第乙個路由器收到這個資料報以後,就自動把ttl減1,而ttl變為0以後,路由器就把這個包給拋棄了,並同時產生 乙個主機不可達的icmp資料報給主機。主機收到這個資料報以後再發乙個ttl=2的udp資料報給目的主機,然後刺激第二個路由器給主機發icmp資料 報。如此往復直到到達目的主機。這樣,traceroute就拿到了所有的路由器ip。

tcp/udp都是是傳輸層協議,但是兩者具有不同的特性,同時也具有不同的應用場景,下面以圖表的形式對比分析。

面向報文的傳輸方式是應用層交給udp多長的報文,udp就照樣傳送,即一次傳送乙個報文。因此,應用程式必須選擇合適大小的報文。若報文太長,則ip層需要分片,降低效率。若太短,會是ip太小。

面向位元組流的話,雖然應用程式和tcp的互動是一次乙個資料塊(大小不等),但tcp把應用程式看成是一連串的無結構的位元組流。tcp有乙個緩衝,當應用程式傳送的資料塊太長,tcp就可以把它劃分短一些再傳送。

關於擁塞控制,流量控制,是tcp的重點,後面講解。

計算機網路若干問題

1,寬頻路由器 就是大學寢室組區域網的那種 也叫ip共享器,它的多個lan口實際是內建交換機的介面,並不具備隔離廣播域的功能。2,vpn與vlan vpn是將遠端網路整合到乙個本地區域網內,vlan是將本地區域網劃分成多個區域網。之所以都是v 虛擬的 字頭的,是因為都採取了相關的虛擬技術,給人造成了...

計算機網路 TCP IP 參考模型

tcp提供面向連線的 可靠的資料流傳輸,而udp提供的是非面向連線的 不可靠的資料流傳輸。tcp傳輸單位稱為tcp報文段,udp傳輸單位稱為使用者資料報。tcp注重資料安全性,udp資料傳輸快,因為不需要連線等待,少了許多操作,但是其安全性卻一般。ip 位址 網路號 主機號 網路號主機號 用途全為0...

計算機網路(TCP IP面試大綱)

1,計算機網路主要指的就是tcp ip協議棧,是網際網路的基石 2,容易忘是因為tcp ip技術棧有一大部分都隱藏於作業系統的核心態,較少被接觸。3,重點脈絡 1,反覆記憶。2,多問為什麼 一 tcp ip協議體系的認知 1 分層。一部分處於使用者態,一部分處於核心態。資料鏈路層,網路層,傳輸層封裝...