收集计算机网络经典的面试题
1、OSI,tcp/ip,5層協(xié)議的體系結(jié)構(gòu),和各協(xié)議的作用
OSI/RM(開放系統(tǒng)互連基本參考模型),OSI開放系統(tǒng)互連,總共有7層協(xié)議:物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、會(huì)話層、表示層和利用層。
tcp/ip(4層):網(wǎng)絡(luò)接口層、網(wǎng)際層、運(yùn)輸層和利用層。
5層協(xié)議:物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、運(yùn)輸層和利用層。
各層的作用:
物理層:通過媒介傳輸比特,肯定機(jī)械及電氣規(guī)范。——比特
數(shù)據(jù)鏈路層:將比特組裝成幀和點(diǎn)到點(diǎn)的傳遞。——幀
網(wǎng)絡(luò)層:負(fù)責(zé)數(shù)據(jù)包從源到目的的傳遞和網(wǎng)際互連。——包
傳輸層:提供端到真?zhèn)€報(bào)文傳遞和毛病恢復(fù)。——段(TCP報(bào)文段和UDP用戶數(shù)據(jù)包)
會(huì)話層:建立、管理和終止會(huì)話。
表示層:對(duì)數(shù)據(jù)進(jìn)行翻譯、加密和緊縮。
利用層:允許訪問OSI環(huán)境的手段。
2、IP地址的分類。
IP地址總共分為5類:
A類:以0開頭,第1個(gè)字節(jié)范圍:0⑴26。(1.0.0.0⑴26.255.255.255)網(wǎng)絡(luò)號(hào)占1個(gè)字節(jié)
B類:以10開頭,第1個(gè)字節(jié)范圍:128⑴91.(128.0.0.0⑴91.255.255.255)網(wǎng)絡(luò)號(hào)占兩個(gè)字節(jié)
C類:以110開頭,第1個(gè)字節(jié)范圍:192⑵23.(192.0.0.0⑵23.255.255.255)網(wǎng)絡(luò)號(hào)占3個(gè)字節(jié)
D類:以1110開頭,后面是指多播地址。
E類:以1111開頭,后面保存為今后所用。
3、ARP(地址解析協(xié)議)的工作原理。
(1)首先,每一個(gè)主機(jī)都會(huì)在自己的ARP緩沖區(qū)中簡(jiǎn)歷1個(gè)ARP列表,以表示IP地址和MAC地址之間的對(duì)應(yīng)關(guān)系。
(2)當(dāng)源主機(jī)要發(fā)送數(shù)據(jù)時(shí),首先檢查ARP列表中是不是有對(duì)應(yīng)IP地址的目的主機(jī)的MAC地址,如果有,則直接發(fā)送數(shù)據(jù),如果沒有,就向本網(wǎng)段的所有主機(jī)(廣播)發(fā)送ARP數(shù)據(jù)包,該數(shù)據(jù)包包括的內(nèi)容有:源主機(jī)IP地址,源主機(jī)MAC地址,目的主機(jī)IP地址。
(3)當(dāng)本網(wǎng)絡(luò)的所有主機(jī)收到該ARP數(shù)據(jù)包時(shí),首先檢查數(shù)據(jù)包的IP地址是不是有自己的IP地址,如果沒有,則直接疏忽,如果是,則首先從數(shù)據(jù)中取出源主機(jī)的IP地址和MAC地址寫入到ARP列表中,如果已存在,則覆蓋,然后將自己的MAC地址寫入ARP響應(yīng)包中,告知源主機(jī)自己就是要找的主機(jī)的MAC地址。
(4)源主機(jī)收到ARP響應(yīng)包后,將目的主機(jī)的IP和MAC地址寫入ARP列表中,利用此信息來發(fā)送數(shù)據(jù)。如果源主機(jī)1直沒有找到響應(yīng),那末ARP查詢失敗。
注:廣播發(fā)送ARP要求,單播發(fā)送ARP響應(yīng)。
4、經(jīng)常使用協(xié)議的介紹。
ICMP協(xié)議:因特網(wǎng)控制報(bào)文協(xié)議。是tcp/ip協(xié)議族的子協(xié)議,用于在IP主機(jī)、路由器之間傳遞控制協(xié)議。
TFTP協(xié)議:簡(jiǎn)單文本傳輸協(xié)議,用在在客戶機(jī)和服務(wù)器之間進(jìn)行簡(jiǎn)單文件傳輸?shù)膮f(xié)議。
HTTP協(xié)議:超文本傳輸協(xié)議,是1個(gè)屬于利用層的面向?qū)ο蟮膮f(xié)議。
DHCP協(xié)議:動(dòng)態(tài)主機(jī)配置協(xié)議,是1種讓系統(tǒng)得以連接到網(wǎng)絡(luò)上,并獲得所需要的配置參數(shù)的手段。
NAT協(xié)議:網(wǎng)絡(luò)地址轉(zhuǎn)換協(xié)議,將私有地址轉(zhuǎn)換為合法IP地址的轉(zhuǎn)換技術(shù)。
5、描寫RARP協(xié)議。
逆地址解析協(xié)議,完成從硬件地址到IP地址的映照,主要用于無盤工作站,這是由于給無盤工作站配置的IP地址不能保存。
工作流程:在網(wǎng)絡(luò)中配置1臺(tái)RARP服務(wù)器,里面保存著IP地址和MAC地址的映照關(guān)系,當(dāng)無盤工作站啟動(dòng)后,就封裝1個(gè)RARP數(shù)據(jù)包,里面有它的MAC地址,然后廣播到網(wǎng)絡(luò)去,當(dāng)服務(wù)器收到要求包后,就查找對(duì)應(yīng)的MAC地址的IP地址裝入響應(yīng)文中發(fā)回給要求者,由于需要廣播要求報(bào)文,因此RARP只能用于具有廣播能力的網(wǎng)絡(luò)。
6、TCP3次握手和4次揮手的全進(jìn)程。
3次握手:
第1次握手:客戶端發(fā)送SYN(同步SYN=1,seq=x)包到服務(wù)器,并進(jìn)入SYN_SEND(同步已發(fā)送)狀態(tài),等待服務(wù)器的確認(rèn)。
第2次握手:服務(wù)器收到SYN包,必須確認(rèn)客戶真?zhèn)€SYN(ack=x+1),同時(shí)發(fā)送自己的SYN+ACK包(SYN=1,ACK=1,seq=y),服務(wù)器進(jìn)入同步已接收狀態(tài)(SYN_RECV)。
第3次握手:客戶端收到服務(wù)器發(fā)來的SYN+ACK包,向服務(wù)器發(fā)送確認(rèn)包ACK(ACK=1,ack=y+1,seq=x+1)。至此完成3次握手。
為何要有第3次握手?而不是用兩次握手?
斟酌這樣1種情況,客戶端發(fā)送要求到服務(wù)器,但由于網(wǎng)絡(luò)阻塞等緣由,1直未收到服務(wù)器的確認(rèn),因而客戶端認(rèn)為要求發(fā)送丟失了,因而再次發(fā)送要求。但是,第1次的要求可能在某個(gè)時(shí)間到服務(wù)器,這時(shí)候候,服務(wù)器發(fā)送確認(rèn)客戶端。這時(shí)候,如果是兩次握手,那末則將會(huì)建立連接,可是由于客戶端認(rèn)為之前的要求已失效了,所以不會(huì)理睬從客戶端發(fā)送過來的確認(rèn)信息,這樣服務(wù)器以為已建立了連接,則會(huì)1直等待客戶端發(fā)來要求,這樣資源就白白浪費(fèi)了。而如果是3次握手,那末由于客戶端不會(huì)發(fā)送確認(rèn),因此服務(wù)器就不會(huì)建立連接。
4次揮手:
第1次揮手:主動(dòng)關(guān)閉方發(fā)送1個(gè)終止FIN(FIN=1,seq=u),用來關(guān)閉主動(dòng)放到被動(dòng)關(guān)閉方的數(shù)據(jù)傳送,但是此時(shí)主動(dòng)方還是可以接受數(shù)據(jù),只是不再發(fā)送數(shù)據(jù)。
第2次揮手:被動(dòng)關(guān)閉方收到FIN包后,發(fā)送1個(gè)確認(rèn)包ACK給對(duì)方(ACK=1,ack=u+1,seq=v)。
第3次揮手:被動(dòng)關(guān)閉方發(fā)送1個(gè)FIN,用來關(guān)閉被動(dòng)關(guān)閉方到主動(dòng)關(guān)閉方的數(shù)據(jù)傳送。(FIN=1,ACK=1,seq=w, ack=u+1)。(注意第2、3、4次揮手都要有ACK=1,TCP規(guī)定:在連接建立后的所有傳送都應(yīng)當(dāng)設(shè)置ACK=1,但第1次揮手沒有)
第4次:主動(dòng)關(guān)閉方收到FIN后,發(fā)送1個(gè)確認(rèn)(ACK=1,seq=u+1,ack=w+1)給被動(dòng)關(guān)閉方。
注意這里還沒有結(jié)束,TCP還未釋放。必須經(jīng)過時(shí)間等待計(jì)數(shù)器設(shè)置的時(shí)間2MSL(最長(zhǎng)報(bào)文段壽命)后,主動(dòng)關(guān)閉方才進(jìn)入關(guān)閉狀態(tài)。
這里為何要等待2MSL時(shí)間呢?
(1)為了保證客戶段發(fā)送的最后1個(gè)ACK報(bào)文段能夠到達(dá)服務(wù)器。如果這個(gè)ACK報(bào)文段丟失,那末服務(wù)器會(huì)重新發(fā)送ACK+FIN,那末在2MSL時(shí)間內(nèi),客戶端可以重新發(fā)送ACK確認(rèn)包。
(2)為了避免“已失效的連接要求報(bào)文段”出現(xiàn)在本連接中。客戶端在發(fā)送完最后1個(gè)確認(rèn)包后,再等待2MSL時(shí)間,那末使得本連接延續(xù)時(shí)間內(nèi)的所有產(chǎn)生的報(bào)文段都從網(wǎng)絡(luò)上消失。這樣在下1個(gè)連接中就不會(huì)出現(xiàn)這樣舊的連接要求了。(MSL是最長(zhǎng)報(bào)文段壽命,過了這個(gè)2MSL,報(bào)文段將會(huì)失效)
7、說明在閱讀器中輸入www.baidu.com后履行的全部進(jìn)程。
(1)客戶端閱讀器通過DNS(域名服務(wù)器)解析到域名的IP地址,通過這個(gè)IP地址找到客戶端到服務(wù)器的路徑。客戶端閱讀器發(fā)起1個(gè)HTTP會(huì)話到這個(gè)IP地址,然后通過TCP進(jìn)行封裝數(shù)據(jù)包,輸入到網(wǎng)絡(luò)層。
(2)在客戶真?zhèn)€傳輸層,把HTTP會(huì)話要求分成報(bào)文段,添加源和目的端口。服務(wù)器把相應(yīng)的要求返回到客戶真?zhèn)€端口,然后利用IP層的IP地址查找目的端。
(3)客戶段的網(wǎng)絡(luò)層不關(guān)心利用層或運(yùn)輸層的東西,主要的任務(wù)是通過查找路由表確認(rèn)如何到達(dá)服務(wù)器。(路由器工作原理)
(4)包通過鏈路層發(fā)送到路由器,查找給定IP地址的MAC地址,然后發(fā)送ARP要求查找目的地址。
8、TCP和UDP的區(qū)分。
(1)TCP提供的面向連接的可靠的數(shù)據(jù)流(字節(jié)流)傳輸,UDP是無連接的不可靠的面向數(shù)據(jù)包的傳輸。TCP重視數(shù)據(jù)安全性,UDP簡(jiǎn)單,數(shù)據(jù)傳送快。
TCP協(xié)議:ftp,telnet,smtp,pop3,http
UDP協(xié)議:DNS,SNMP,TFTP
9、DNS域名系統(tǒng)的工作原理
DNS工作原理有兩種:遞歸查詢和迭代查詢。
主機(jī)向本地域名服務(wù)器的查詢1般都是遞歸查詢,即本地域名服務(wù)器會(huì)代替主機(jī)進(jìn)行查詢,而不是主機(jī)進(jìn)行查詢。
從本地域名服務(wù)器到根域名服務(wù)器的查詢1般都是迭代查詢,即自己進(jìn)行不斷的迭代查詢。
10、說明交換機(jī)、路由器、網(wǎng)關(guān)的概念,并說明各自的用處。(下面答案拷貝自其他地方,碼字手抖)
答:1)交換機(jī)
在計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)中,交換機(jī)是針對(duì)同享工作模式的弱點(diǎn)而推出的。交換機(jī)具有1條高帶寬的背部總線和內(nèi)部交換矩陣。交換機(jī)的所有的端口都掛接在這條背 部總線上,當(dāng)控制電路收到數(shù)據(jù)包以后,處理端口會(huì)查找內(nèi)存中的地址對(duì)比表以肯定目的MAC(網(wǎng)卡的硬件地址)的NIC(網(wǎng)卡)掛接在哪一個(gè)端口上,通過內(nèi)部 交換矩陣迅速將數(shù)據(jù)包傳送到目的端口。目的MAC若不存在,交換機(jī)才廣播到所有的端口,接收端口回應(yīng)后交換機(jī)會(huì)“學(xué)習(xí)”新的地址,并把它添加入內(nèi)部地址表 中。
交換機(jī)工作于OSI參考模型的第2層,即數(shù)據(jù)鏈路層。交換機(jī)內(nèi)部的CPU會(huì)在每一個(gè)端口成功連接時(shí),通過ARP協(xié)議學(xué)習(xí)它的MAC地址,保存成1張 ARP表。在今后的通訊中,發(fā)往該MAC地址的數(shù)據(jù)包將僅送往其對(duì)應(yīng)的端口,而不是所有的端口。因此,交換機(jī)可用于劃分?jǐn)?shù)據(jù)鏈路層廣播,即沖突域;但它不能劃分網(wǎng)絡(luò)層廣播,即廣播域。
交換機(jī)被廣泛利用于2層網(wǎng)絡(luò)交換,俗稱“2層交換機(jī)”。
交換機(jī)的種類有:2層交換機(jī)、3層交換機(jī)、4層交換機(jī)、7層交換機(jī)分別工作在OSI7層模型中的第2層、第3層、第4層盒第7層,并因此而得名。
2)路由器
路由器(Router)是1種計(jì)算機(jī)網(wǎng)絡(luò)裝備,提供了路由與轉(zhuǎn)送兩種重要機(jī)制,可以決定數(shù)據(jù)包歷來源端到目的端所經(jīng)過 的路由路徑(host到host之間的傳輸路徑),這個(gè)進(jìn)程稱為路由;將路由器輸入真?zhèn)€數(shù)據(jù)包移送至適當(dāng)?shù)穆酚善鬏敵龆?在路由器內(nèi)部進(jìn)行),這稱為轉(zhuǎn) 送。路由工作在OSI模型的第3層——即網(wǎng)絡(luò)層,例如網(wǎng)際協(xié)議。
路由器的1個(gè)作用是連通不同的網(wǎng)絡(luò),另外一個(gè)作用是選擇信息傳送的線路。路由器與交換器的差別,路由器是屬于OSI第3層的產(chǎn)品,交換器是OSI第2層的產(chǎn)品(這里特指2層交換機(jī))。
3)網(wǎng)關(guān)
網(wǎng)關(guān)(Gateway),網(wǎng)關(guān)顧名思義就是連接兩個(gè)網(wǎng)絡(luò)的裝備,區(qū)分于路由器(由于歷史的緣由,許多有關(guān)TCP/IP 的文獻(xiàn)曾把網(wǎng)絡(luò)層使用的路由器(Router)稱為網(wǎng)關(guān),在今天很多局域網(wǎng)采取都是路由來接入網(wǎng)絡(luò),因此現(xiàn)在通常指的網(wǎng)關(guān)就是路由器的IP),常常在家庭中或小型企業(yè)網(wǎng)絡(luò)中使用,用于連接局域網(wǎng)和Internet。網(wǎng)關(guān)也常常指把1種協(xié)議轉(zhuǎn)成另外一種協(xié)議的裝備,比如語音網(wǎng)關(guān)。
在傳統(tǒng)TCP/IP術(shù)語中,網(wǎng)絡(luò)裝備只分成兩種,1種為網(wǎng)關(guān)(gateway),另外一種為主機(jī)(host)。網(wǎng)關(guān)能在網(wǎng)絡(luò)間轉(zhuǎn)遞數(shù)據(jù)包,但主機(jī)不能 轉(zhuǎn)送數(shù)據(jù)包。在主機(jī)(又稱終端系統(tǒng),end system)中,數(shù)據(jù)包需經(jīng)過TCP/IP4層協(xié)議處理,但是在網(wǎng)關(guān)(又稱中介系 統(tǒng),intermediate system)只需要到達(dá)網(wǎng)際層(Internet layer),決定路徑以后就能夠轉(zhuǎn)送。在當(dāng)時(shí),網(wǎng)關(guān) (gateway)與路由器(router)還沒有區(qū)分。
在現(xiàn)代網(wǎng)絡(luò)術(shù)語中,網(wǎng)關(guān)(gateway)與路由器(router)的定義不同。網(wǎng)關(guān)(gateway)能在不同協(xié)議間移動(dòng)數(shù)據(jù),而路由器(router)是在不同網(wǎng)絡(luò)間移動(dòng)數(shù)據(jù),相當(dāng)于傳統(tǒng)所說的IP網(wǎng)關(guān)(IP gateway)。
網(wǎng)關(guān)是連接兩個(gè)網(wǎng)絡(luò)的裝備,對(duì)語音網(wǎng)關(guān)來講,他可以連接PSTN網(wǎng)絡(luò)和以太網(wǎng),這就相當(dāng)于VOIP,把不同電話中的摹擬信號(hào)通過網(wǎng)關(guān)而轉(zhuǎn)換成數(shù)字信號(hào),而且加入?yún)f(xié)議再去傳輸。在到了接收真?zhèn)€時(shí)候再通過網(wǎng)關(guān)還原成摹擬的電話信號(hào),最后才能在電話機(jī)上聽到。
對(duì)以太網(wǎng)中的網(wǎng)關(guān)只能轉(zhuǎn)發(fā)3層以上數(shù)據(jù)包,這1點(diǎn)和路由是1樣的。而不同的是網(wǎng)關(guān)中并沒有路由表,他只能依照預(yù)先設(shè)定的不同網(wǎng)段來進(jìn)行轉(zhuǎn)發(fā)。網(wǎng)關(guān)最重要的1點(diǎn)就是端口映照,子網(wǎng)內(nèi)用戶在外網(wǎng)看來只是外網(wǎng)的IP地址對(duì)應(yīng)著不同的端口,這樣看來就會(huì)保護(hù)子網(wǎng)內(nèi)的用戶。
總結(jié)
以上是生活随笔為你收集整理的收集计算机网络经典的面试题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络资源的初始化与释放(C++ RAII
- 下一篇: pdf全文翻译