計算機網絡常見面試題


   本意用於考研復試,以下是博主自己整理,博主是大四本科生,不能保證內容完全正確,請辯證地看,如果有問題可以在評論區指出我再修改。

   整理不易,我就不掛個二維碼請游客付費了,如果可以的話,麻煩高抬貴手,點一下右下角的推薦吧!

OSI,TCP/IP,五層協議的體系結構,以及各層協議

答:OSI分層 (7層):物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。

TCP/IP分層(4層):網絡接口層、 網際層、運輸層、 應用層。

五層協議 (5層):物理層、數據鏈路層、網絡層、運輸層、 應用層。

每一層的協議如下:

物理層:RJ45、CLOCK、IEEE802.3 (中繼器,集線器)

數據鏈路:PPP、HDLC、VLAN、MAC (網橋,交換機)

網絡層:IP、ICMP、ARP、RARP、OSPF、IPX、RIP (路由器)

傳輸層:TCP、UDP

會話層:

表示層:

應用層:FTP、DNS、Telnet、SMTP、HTTP

每一層的作用如下:

物理層:通過媒介傳輸比特,確定機械及電氣規范(比特Bit)

數據鏈路層:將比特組裝成幀和點到點的傳遞(幀Frame)

網絡層:負責數據包從源到宿的傳遞和網際互連(包PackeT)

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

會話層:建立、管理和終止會話(會話協議數據單元SPDU)

表示層:對數據進行翻譯、加密和壓縮(表示協議數據單元PPDU)

應用層:允許訪問OSI環境的手段(應用協議數據單元APDU)

 

ARP是地址解析協議,簡單語言解釋一下工作原理。

答:1:首先,每個主機都會在自己的ARP緩沖區中建立一個ARP列表,以表示IP地址和MAC地址之間的對應關系。

2:當源主機要發送數據時,首先檢查ARP列表中是否有對應IP地址的目的主機的MAC地址,如果有,則直接發送數據,如果沒有,就向本網段的所有主機發送ARP數據包,該數據包包括的內容有:源主機 IP地址,源主機MAC地址,目的主機的IP 地址。

3:當本網絡的所有主機收到該ARP數據包時,首先檢查數據包中的IP地址是否是自己的IP地址,如果不是,則忽略該數據包,如果是,則首先從數據包中取出源主機的IP和MAC地址寫入到ARP列表中,如果已經存在,則覆蓋,然后將自己的MAC地址寫入ARP響應包中,告訴源主機自己是它想要找的MAC地址。

4:源主機收到ARP響應包后。將目的主機的IP和MAC地址寫入ARP列表,並利用此信息發送數據。如果源主機一直沒有收到ARP響應數據包,表示ARP查詢失敗。

廣播發送ARP請求,單播發送ARP響應。

 

各種協議的介紹

答:ICMP協議: 因特網控制報文協議。它是TCP/IP協議族的一個子協議,用於在IP主機、路由器之間傳遞控制消息。

FTP協議: 是TCP/IP協議族中的一個用來在客戶機與服務器之間進行簡單文件傳輸的協議,提供不復雜、開銷不大的文件傳輸服務。

HTTP協議: 超文本傳輸協議,是一個屬於應用層的面向對象的協議,由於其簡捷、快速的方式,適用於分布式超媒體信息系統。

NAT協議:網絡地址轉換屬接入廣域網(WAN)技術,是一種將私有(保留)地址轉化為合法IP地址的轉換技術,

DHCP協議:動態主機配置協議,是一種讓系統得以連接到網絡上,並獲取所需要的配置參數手段,使用UDP協議工作。具體用途:給內部網絡或網絡服務供應商自動分配IP地址,給用戶或者內部網絡管理員作為對所有計算機作中央管理的手段。

 

描述RARP協議

答:RARP是逆地址解析協議,作用是完成硬件地址到IP地址的映射,主要用於無盤工作站,因為給無盤工作站配置的IP地址不能保存。工作流程:在網絡中配置一台RARP服務器,里面保存着IP地址和MAC地址的映射關系,當無盤工作站啟動后,就封裝一個RARP數據包,里面有其MAC地址,然后廣播到網絡上去,當服務器收到請求包后,就查找對應的MAC地址的IP地址裝入響應報文中發回給請求者。因為需要廣播請求報文,因此RARP只能用於具有廣播能力的網絡。

 

TCP三次握手和四次揮手的全過程

答:三次握手:

第一次握手:客戶端發送syn包(syn=x)到服務器,並進入SYN_SEND狀態,等待服務器確認;

第二次握手:服務器收到syn包,必須確認客戶的SYN(ack=x+1),同時自己也發送一個SYN包(syn=y),即SYN+ACK包,此時服務器進入SYN_RECV狀態;

第三次握手:客戶端收到服務器的SYN+ACK包,向服務器發送確認包ACK(ack=y+1),此包發送完畢,客戶端和服務器進入ESTABLISHED狀態,完成三次握手。

握手過程中傳送的包里不包含數據,三次握手完畢后,客戶端與服務器才正式開始傳送數據。理想狀態下,TCP連接一旦建立,在通信雙方中的任何一方主動關閉連接之前,TCP 連接都將被一直保持下去。

四次揮手

與建立連接的“三次握手”類似,斷開一個TCP連接則需要“四次握手”。

第一次揮手:主動關閉方發送一個FIN,用來關閉主動方到被動關閉方的數據傳送,也就是主動關閉方告訴被動關閉方:我已經不會再給你發數據了(當然,在fin包之前發送出去的數據,如果沒有收到對應的ack確認報文,主動關閉方依然會重發這些數據),但是,此時主動關閉方還可以接受數據。

第二次揮手:被動關閉方收到FIN包后,發送一個ACK給對方,確認序號為收到序號+1(與SYN相同,一個FIN占用一個序號)。

第三次揮手:被動關閉方發送一個FIN,用來關閉被動關閉方到主動關閉方的數據傳送,也就是告訴主動關閉方,我的數據也發送完了,不會再給你發數據了。

第四次揮手:主動關閉方收到FIN后,發送一個ACK給被動關閉方,確認序號為收到序號+1,至此,完成四次揮手。

 

在瀏覽器中輸入www.baidu.com后執行的全部過程

(1) 瀏覽器獲取輸入的域名www.baidu.com 
(2) 瀏覽器向DNS請求解析www.baidu.com的IP地址 
(3) 域名系統DNS解析出百度服務器的IP地址 
(4) 瀏覽器與該服務器建立TCP連接(默認端口號80) 
(5) 瀏覽器發出HTTP請求,請求百度首頁 
(6) 服務器通過HTTP響應把首頁文件發送給瀏覽器 
(7) TCP連接釋放 
(8) 瀏覽器將首頁文件進行解析,並將Web頁顯示給用戶。

TCP和UDP的區別?

答:TCP提供面向連接的、可靠的數據流傳輸,而UDP提供的是非面向連接的、不可靠的數據流傳輸。

TCP傳輸單位稱為TCP報文段,UDP傳輸單位稱為用戶數據報。

TCP注重數據安全性,UDP數據傳輸快,因為不需要連接等待,少了許多操作,但是其安全性卻一般。

TCP對應的協議和UDP對應的協議

TCP對應的協議:

(1) FTP:定義了文件傳輸協議,使用21端口。

(2) Telnet:一種用於遠程登陸的端口,使用23端口,用戶可以以自己的身份遠程連接到計算機上,可提供基於DOS模式下的通信服務。

(3) SMTP:郵件傳送協議,用於發送郵件。服務器開放的是25號端口。

(4) POP3:它是和SMTP對應,POP3用於接收郵件。POP3協議所用的是110端口。

(5)HTTP:是從Web服務器傳輸超文本到本地瀏覽器的傳送協議。

UDP對應的協議:

(1) DNS:用於域名解析服務,將域名地址轉換為IP地址。DNS用的是53號端口。

(2) SNMP:簡單網絡管理協議,使用161號端口,是用來管理網絡設備的。由於網絡設備很多,無連接的服務就體現出其優勢。

(3) TFTP(Trival File Transfer Protocal),簡單文件傳輸協議,該協議在熟知端口69上使用UDP服務。

 

DNS域名系統,簡單描述其工作原理。

答:當DNS客戶機需要在程序中使用名稱時,它會查詢DNS服務器來解析該名稱。客戶機發送的每條查詢信息包括三條信息:指定的DNS域名,指定的查詢類型,DNS域名的指定類別。基於UDP服務,端口53. 該應用一般不直接為用戶使用,而是為其他應用服務,如HTTP,SMTP等在其中需要完成主機名到IP地址的轉換。

1) 客戶機向其本地域名服務器發出DNS請求報文

2) 本地域名服務器收到請求后,查詢本地緩存,假設沒有該記錄,則以DNS客戶的身份向根域名服務器發出解析請求

3) 根域名服務器收到請求后,判斷該域名所屬域,將對應的頂級域名服務器的IP地址返回給本地域名服務器

4) 本地域名服務器向頂級域名服務器發出解析請求報文

5) 頂級域名服務器收到請求后,將所對應的授權域名服務器的IP地址返回給本地域名服務器

6) 本地域名服務器向授權域名服務器發起解析請求報文

7) 授權域名服務器收到請求后,將查詢結果返回給本地域名服務器

8) 本地域名服務器將查詢結果保存到本地緩存,同時返回給客戶機

 

 

TCP的三次握手過程?為什么會采用三次握手,若采用二次握手可以嗎?

答:建立連接的過程是利用客戶服務器模式,假設主機A為客戶端,主機B為服務器端。

(1)TCP的三次握手過程:主機A向B發送連接請求;主機B對收到的主機A的報文段進行確認;主機A再次對主機B的確認進行確認。

(2)采用三次握手是為了防止失效的連接請求報文段突然又傳送到主機B,因而產生錯誤。失效的連接請求報文段是指:主機A發出的連接請求沒有收到主機B的確認,於是經過一段時間后,主機A又重新向主機B發送連接請求,且建立成功,順序完成數據傳輸。考慮這樣一種特殊情況,主機A第一次發送的連接請求並沒有丟失,而是因為網絡節點導致延遲達到主機B,主機B以為是主機A又發起的新連接,於是主機B同意連接,並向主機A發回確認,但是此時主機A根本不會理會,主機B就一直在等待主機A發送數據,導致主機B的資源浪費。

(3)采用兩次握手不行,原因就是上面說的失效的連接請求的特殊情況。

 

了解交換機、路由器、網關的概念,並知道各自的用途

答:1)交換機

在計算機網絡系統中,交換機是針對共享工作模式的弱點而推出的。交換機擁有一條高帶寬的背部總線和內部交換矩陣。交換機的所有的端口都掛接在這條背部總線上,當控制電路收到數據包以后,處理端口會查找內存中的地址對照表以確定目的MAC(網卡的硬件地址)的NIC(網卡)掛接在哪個端口上,通過內部交換矩陣迅速將數據包傳送到目的端口。目的MAC若不存在,交換機才廣播到所有的端口,接收端口回應后交換機會“學習”新的地址,並把它添加入內部地址表 中。

交換機工作於OSI參考模型的第二層,即數據鏈路層。交換機內部的CPU會在每個端口成功連接時,通過ARP協議學習它的MAC地址,保存成一張 ARP表。在今后的通訊中,發往該MAC地址的數據包將僅送往其對應的端口,而不是所有的端口。因此,交換機可用於划分數據鏈路層廣播,即沖突域;但它不能划分網絡層廣播,即廣播域。

2)路由器

路由器(Router)是一種計算機網絡設備,提供了路由與轉送兩種重要機制,可以決定數據包從來源端到目的端所經過的路由路徑(host到host之間的傳輸路徑),這個過程稱為路由;將路由器輸入端的數據包移送至適當的路由器輸出端(在路由器內部進行),這稱為轉送。路由工作在OSI模型的第三層——即網絡層,例如網際協議。

路由器的一個作用是連通不同的網絡,另一個作用是選擇信息傳送的線路。 路由器與交換器的差別,路由器是屬於OSI第三層的產品,交換器是OSI第二層的產品(這里特指二層交換機)。

3)網關

網關(Gateway),網關是連接兩個網絡的設備,

在傳統TCP/IP術語中,網絡設備只分成兩種,一種為網關(gateway),另一種為主機(host)。網關能在網絡間轉遞數據包,但主機不能轉送數據包。在主機中,數據包需經過TCP/IP四層協議處理,但是在網關只需要到達網際層,決定路徑之后就可以轉送。

在現代網絡術語中,網關(gateway)與路由器(router)的定義不同。網關(gateway)能在不同協議間移動數據,而路由器(router)是在不同網絡間移動數據.

對於以太網中的網關只能轉發三層以上數據包,這一點和路由是一樣的。而不同的是網關中並沒有路由表,他只能按照預先設定的不同網段來進行轉發。網關最重要的一點就是端口映射,子網內用戶在外網看來只是外網的IP地址對應着不同的端口,這樣看來就會保護子網內的用戶。

 

 

數據報服務和虛電路服務的區別

數據報服務和虛電路服務屬於物理層的分組交換

第一,數據報服務在傳輸前不需要與目的地址建立連接,虛電路必須要

第二,數據報每個分組都有完整的目的地址,虛電路服務僅在建立連接階段使用,之后使用虛電路號

第三,數據報的每個分組獨立進行路由選擇和轉發,虛電路服務屬於同一條虛電路的分組按同一路由轉換

第四、數據報服務不保證有序到達,虛電路服務保證有序到達

 

CSMA協議

1)1-    堅持CSMA:發送數據時,先偵聽信道,如果信道空閑就立即發送,如果信道忙則等待,同時繼續偵聽直至信道空閑;如果發送沖突,則隨機等待一段時間后再重新偵聽

2)     非-堅持CSMA:發送數據時,先偵聽信道,如果信道空閑就立即發送,如果信道忙就放棄偵聽,等待一個隨機的時間后再偵聽

3)     P-堅持CSMA:發送數據時,先偵聽信道,如果信道忙則等到下一個時隙再偵聽,如果信道空閑,便以概率P發送數據,以概率1-P推遲到下一個時隙

 

CSMA/CD( collision detection 碰撞檢測)

先聽后發,邊聽邊發,沖突停發,隨機重發

 

CSMA/CA( collision avoidance 碰撞避免)

1) 預約信道:發送方再發送數據的同時通知其他站點直接傳輸數據需要的時間長度,以便讓其他站點在這段時間內不發送數據,從而避免碰撞

2) 所有站點在正確接收到發送給自己的數據幀后,都需要向發送方發回一個ACK數據幀。

 

 

如何實現可靠傳輸?

1) 檢驗和

2) 定時器

3) 序號

4) 確認

 

流量控制與擁塞控制

流量控制:A與B連接建立后,B根據自己接收緩存的大小確定窗口值大小,然后告知A,A發送的數據不大於該窗口值,往往是點對點之間的通信量控制

擁塞控制是防止過多的數據注入網絡中,根據整個網絡的負載進行調整。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM