網路面試題總結(一)

2021-08-17 02:58:58 字數 2665 閱讀 9493

osi分層 (7層):物理層、資料鏈路層、網路層、傳輸層、會話層、表示層、應用層。

tcp/ip分層(4層):網路介面層、 網路層、傳輸層、 應用層。

五層協議 (5層):物理層、資料鏈路層、網路層、傳輸層、 應用層。

每一層的協議如下:

物理層:rj45、clock、ieee802.3 (中繼器,集線器)

資料鏈路:ppp、fr、hdlc、vlan、mac (網橋,交換機)

網路層:ip、icmp(國際控制報文協議)、arp、rarp、ospf(內部閘道器協議)、ipx、rip(內部閘道器協議)、igrp、 (路由器)

傳輸層:tcp、udp、spx

會話層:nfs、sql、netbios、rpc

表示層:jpeg、mpeg、asii

應用層:ftp(檔案傳輸協議)、dns(網域名稱系統)、telnet(遠端終端協議)、smtp(簡單郵件傳輸協議)、http(超文字傳輸協議)、www(全球資訊網)、nfs(網路檔案系統)

每一層的作用如下:

物理層:通過媒介傳輸位元,確定機械及電氣規範(位元bit)

資料鏈路層:將位元組裝成幀和點到點的傳遞(幀frame)

網路層:負責資料報從源到宿的傳遞和網際互連(包packet)

傳輸層:提供端到端的可靠報文傳遞和錯誤恢復(段segment)

會話層:建立、管理和終止會話(會話協議資料單元spdu)

表示層:對資料進行翻譯、加密和壓縮(表示協議資料單元ppdu)

應用層:允許訪問osi環境的手段(應用協議資料單元apdu)

慢啟動的思路是這樣的。當主機開始傳送資料時,如果立即把大量資料位元組注入到網路,那麼就有可能引起網路擁塞,因為現在並不清楚網路的負荷情況。經驗證明,較好的方法是先探測一下,即由小到大逐漸增大傳送視窗,也就是說,由小到大逐漸增大擁塞視窗數值。通常在剛剛開始傳送報文段時,先把擁塞視窗cwnd(congestion window)設定為乙個最大報文段mss的數值。而在每收到乙個對新的報文段的確認後,把擁塞視窗增加至多乙個mss的數值。用這樣的方法逐步增大傳送方的擁塞視窗cwnd,可以使分組注入到網路的速率更加合理。

為了防止cwnd增長過大引起網路擁塞,還需設定乙個慢開始門限ssthresh狀態變數。ssthresh的用法如下:

當cwnd<ssthresh時,使用慢開始演算法。

當cwnd>ssthresh時,改用擁塞避免演算法。

當cwnd=ssthresh時,慢開始與擁塞避免演算法任意。

擁塞避免演算法的思路是讓擁塞視窗cwnd緩慢地增大,即每經過乙個往返時間rtt就把傳送方的擁塞視窗cwnd加1,而不是加倍。這樣,擁塞視窗cwnd按線性規律緩慢增長,比慢啟動演算法的擁塞視窗增長速率緩慢得多。

提出快重傳和快恢復基於如下的考慮:

如果傳送方設定的超時計時器時限已到但還沒有收到確認,那麼很可能是網路出現了擁塞,致使報文段在網路中的某處被丟棄。

快重傳要求接收方在收到乙個失序的報文段後就立即發出重複確認(為的是使傳送方及早知道有報文段沒有到達對方)而不要等到自己傳送資料時捎帶確認。快重傳演算法規定,傳送方只要一連收到三個重複確認就應當立即重傳對方尚未收到的報文段,而不必繼續等待設定的重傳計時器時間到期。如下圖:

快重傳配合使用的還有快恢復演算法,有以下兩個要點:

①當傳送方連續收到三個重複確認時,就執行「乘法減小」演算法,把ssthresh門限減半。但是接下去並不執行慢開始演算法。

②考慮到如果網路出現擁塞的話就不會收到好幾個重複的確認,所以傳送方現在認為網路可能沒有出現擁塞。所以此時不執行慢開始演算法,而是將cwnd設定為ssthresh的大小,然後執行擁塞避免演算法。如下圖:

其中a、b、c是基本類,d、e類作為多播和保留使用。

a類 10.0.0.0–10.255.255.255

b類 172.16.0.0–172.31.255.255

c類 192.168.0.0–192.168.255.255

ip : 192.168.2.110

submask : 255.255.255.0

網路號 :192.168.2 .0

注:首先,每個主機都會在自己的arp緩衝區中建立乙個arp列表,以表示ip位址和mac位址之間的對應關係。

當源主機要傳送資料時,首先檢查arp列表中是否有對應ip位址的目的主機的mac位址,如果有,則直接傳送資料,如果沒有,就向本網段的所有主機傳送arp資料報,該資料報包括的內容有:源主機

ip位址,源主機mac位址,目的主機的ip 位址。

當本網路的所有主機收到該arp資料報時,首先檢查資料報中的ip位址是否是自己的ip位址,如果不是,則忽略該資料報,如果是,則首先從資料報中取出源主機的ip和mac位址寫入到arp列表中,如果已經存在,則覆蓋,然後將自己的mac位址寫入arp響應包中,告訴源主機自己是它想要找的mac位址。

源主機收到arp響應包後。將目的主機的ip和mac位址寫入arp列表,並利用此資訊傳送資料。如果源主機一直沒有收到arp響應資料報,表示arp查詢失敗。

廣播傳送arp請求,單播發送arp響應。

面試題總結(一)

這段時間找實習,碰到一堆算是經典的面試題。回答得不是很好,這裡總結一下,順便搜搜網上的答案。1 棧和堆的區別。管理方式不同 棧,由編譯器自動管理,無需程式設計師手工控制 堆 產生和釋放由程式設計師控制。空間大小不同 棧的空間有限 堆記憶體可以達到4g。能否產生碎片不同 棧不會產生碎片,因為棧是種先進...

面試題總結一

按失效策略分類 強制快取 對比快取 了解詳細可參考 expires http 1.0 的字段,在響應訊息頭中,設定這個字段之後,就可以告訴瀏覽器,在未過期之前不需要再次請求。表示快取到期時間,是乙個絕對的時間 當前時間 快取時間 如 expires thu,10 nov 2017 08 45 11 ...

面試題總結(一)

尋找人生的關鍵點,並在關鍵時刻竭盡全力!udp包頭多長 8個位元組 源埠,目的埠,udp長度,udp檢驗和 select和epoll的區別 1.select為posix標準,epoll為linux所特有的 2.select的控制代碼數目受限,在linux posix types.h標頭檔案有這樣的宣...