計(jì)算機(jī)面試常問問題_計(jì)算機(jī)崗位面試題
計(jì)算機(jī)的面試者想要得到面試官的認(rèn)可,面試前做好面試準(zhǔn)備很有必要,那么你知道面試計(jì)算機(jī)崗位的常見問題有哪些嗎?下面小編已經(jīng)為你們整理了計(jì)算機(jī)面試常問問題,一起來看看吧。
計(jì)算機(jī)面試常問問題一
1、TCP為什么需要3次握手,4次斷開?
“三次握手”的目的是“為了防止已失效的連接請求報(bào)文段突然又傳送到了服務(wù)端,因而產(chǎn)生錯(cuò)誤”。 client發(fā)出的第一個(gè)連接請求報(bào)文段并沒有丟失,而是在某個(gè)網(wǎng)絡(luò)結(jié)點(diǎn)長時(shí)間的滯留了,以致延誤到連接釋放以后的某個(gè)時(shí)間才到達(dá)server。本來這是一個(gè)早已失效的報(bào)文段。但server收到此失效的連接請求報(bào)文段后,就誤認(rèn)為是client再次發(fā)出的一個(gè)新的連接請求。于是就向client發(fā)出確認(rèn)報(bào)文段,同意建立連接。假設(shè)不采用“三次握手”,那么只要server發(fā)出確認(rèn),新的連接就建立了。由于現(xiàn)在client并沒有發(fā)出建立連接的請求,因此不會(huì)理睬server的確認(rèn),也不會(huì)向server發(fā)送數(shù)據(jù)。但server卻以為新的運(yùn)輸連接已經(jīng)建立,并一直等待client發(fā)來數(shù)據(jù)。這樣,server的很多資源就白白浪費(fèi)掉了。采用“三次握手”的辦法可以防止上述現(xiàn)象發(fā)生。例如剛才那種情況,client不會(huì)向server的確認(rèn)發(fā)出確認(rèn)。server由于收不到確認(rèn),就知道client并沒有要求建立連接。”。主要目的防止server端一直等待,浪費(fèi)資源。
為什么4次斷開?
因?yàn)門CP有個(gè)半關(guān)閉狀態(tài),假設(shè)A.B要釋放連接,那么A發(fā)送一個(gè)釋放連接報(bào)文給B,B收到后發(fā)送確認(rèn),這個(gè)時(shí)候A不發(fā)數(shù)據(jù),但是B如果發(fā)數(shù)據(jù)A還是要接受,這叫半關(guān)閉。然后B還要發(fā)給A連接釋放報(bào)文,然后A發(fā)確認(rèn),所以是4次。
在tcp連接握手時(shí)為何ACK是和SYN一起發(fā)送,這里ACK卻沒有和FIN一起發(fā)送呢。原因是因?yàn)閠cp是全雙工模式,接收到FIN時(shí)意味將沒有數(shù)據(jù)再發(fā)來,但是還是可以繼續(xù)發(fā)送數(shù)據(jù)。
2、TCP和UDP有什么區(qū)別?
TCP是傳輸控制協(xié)議,提供的是面向連接、可靠的字節(jié)流服務(wù)。通信雙方彼此交換數(shù)據(jù)前,必須先通過三次握手協(xié)議建立連接,之后才能傳輸數(shù)據(jù)。TCP提供超時(shí)重傳,丟棄重復(fù)數(shù)據(jù),檢驗(yàn)數(shù)據(jù),流量控制等功能,保證數(shù)據(jù)能從一端傳到另一端。UDP是用戶數(shù)據(jù)報(bào)協(xié)議,是一個(gè)簡單的面向無連接的協(xié)議。UDP不提供可靠的服務(wù)。在數(shù)據(jù)數(shù)據(jù)前不用建立連接故而傳輸速度很快。UDP主要用戶流媒體傳輸,IP電話等對(duì)數(shù)據(jù)可靠性要求不是很高的場合。
3、交換機(jī)與路由器有什么區(qū)別?
?、俟ぷ魉幍腛SI層次不一樣,交換機(jī)工作在OSI第二層數(shù)據(jù)鏈路層,路由器工作在OSI第三層網(wǎng)絡(luò)層
?、趯ぶ贩绞讲煌航粨Q機(jī)根據(jù)MAC地址尋址,路由器根據(jù)IP地址尋址
?、坜D(zhuǎn)發(fā)速不同:交換機(jī)的轉(zhuǎn)發(fā)速度快,路由器轉(zhuǎn)發(fā)速度相對(duì)較慢。
計(jì)算機(jī)面試常問問題二
1、ARP是地址解析協(xié)議,簡單語言解釋一下工作原理。
(1)首先,每個(gè)主機(jī)都會(huì)在自己的ARP緩沖區(qū)中建立一個(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ù)包,如果是,則首先從數(shù)據(jù)包中取出源主機(jī)的IP和MAC地址寫入到ARP列表中,如果已經(jīng)存在,則覆蓋,然后將自己的MAC地址寫入ARP響應(yīng)包中,告訴源主機(jī)自己是它想要找的MAC地址。
(4)源主機(jī)收到ARP響應(yīng)包后。將目的主機(jī)的IP和MAC地址寫入ARP列表,并利用此信息發(fā)送數(shù)據(jù)。如果源主機(jī)一直沒有收到ARP響應(yīng)數(shù)據(jù)包,表示ARP查詢失敗。
廣播發(fā)送ARP請求,單播發(fā)送ARP響應(yīng)。
2、ICMP協(xié)議?
ICMP是InternetControl Message Protocol,因特網(wǎng)控制報(bào)文協(xié)議。它是TCP/IP協(xié)議族的一個(gè)子協(xié)議,用于在IP主機(jī)、路由器之間傳遞控制消息??刂葡⑹侵妇W(wǎng)絡(luò)通不通、主機(jī)是否可達(dá)、路由器是否可用等網(wǎng)絡(luò)本身的消息。這些控制消息雖然并不傳輸用戶數(shù)據(jù),但是對(duì)于用戶數(shù)據(jù)的傳遞起著重要的作用。ICMP報(bào)文有兩種:差錯(cuò)報(bào)告報(bào)文和詢問報(bào)文。
3、DHCP協(xié)議?
動(dòng)態(tài)主機(jī)配置協(xié)議,是一種讓系統(tǒng)得以連接到網(wǎng)絡(luò)上,并獲取所需要的配置參數(shù)手段。通常被應(yīng)用在大型的局域網(wǎng)絡(luò)環(huán)境中,主要作用是集中的管理、分配IP地址,使網(wǎng)絡(luò)環(huán)境中的主機(jī)動(dòng)態(tài)的獲得IP地址、Gateway地址、DNS服務(wù)器地址等信息,并能夠提升地址的使用率。
計(jì)算機(jī)面試常問問題三
1、網(wǎng)橋的作用?
網(wǎng)橋是一個(gè)局域網(wǎng)與另一個(gè)局域網(wǎng)之間建立連接的橋梁
2、數(shù)據(jù)鏈路層協(xié)議可能提供的服務(wù)?
成幀、鏈路訪問、透明傳輸、可靠交付、流量控制、差錯(cuò)檢測、差錯(cuò)糾正、半雙工和全雙工。最重要的是幀定界(成幀)、透明傳輸以及差錯(cuò)檢測。
3、網(wǎng)絡(luò)接口卡(網(wǎng)卡)的功能?
(1)進(jìn)行串行/并行轉(zhuǎn)換。
(2)對(duì)數(shù)據(jù)進(jìn)行緩存。
(3)在計(jì)算機(jī)的操作系統(tǒng)安裝設(shè)備驅(qū)動(dòng)程序。
(4)實(shí)現(xiàn)以太網(wǎng)協(xié)議。
4、私有(保留)地址?
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
5、TTL是什么?作用是什么?哪些工具會(huì)用到它(ping traceroute ifconfig netstat)?
TTL是指生存時(shí)間,簡單來說,它表示了數(shù)據(jù)包在網(wǎng)絡(luò)中的時(shí)間,經(jīng)過一個(gè)路由器后TTL就減一,這樣TTL最終會(huì)減為0,當(dāng)TTL為0時(shí),則將數(shù)據(jù)包丟棄,這樣也就是因?yàn)閮蓚€(gè)路由器之間可能形成環(huán),如果沒有TTL的限制,則數(shù)據(jù)包將會(huì)在這個(gè)環(huán)上一直死轉(zhuǎn),由于有了TTL,最終TTL為0后,則將數(shù)據(jù)包丟棄。ping發(fā)送數(shù)據(jù)包里面有TTL,但是并非是必須的,即是沒有TTL也是能正常工作的,traceroute正是因?yàn)橛辛薚TL才能正常工作,ifconfig是用來配置網(wǎng)卡信息的,不需要TTL,netstat是用來顯示路由表的,也是不需要TTL的。
6、路由表是做什么用的?在Linux環(huán)境中怎么配置一條默認(rèn)路由?
路由表是用來決定如何將一個(gè)數(shù)據(jù)包從一個(gè)子網(wǎng)傳送到另一個(gè)子網(wǎng)的,換句話說就是用來決定從一個(gè)網(wǎng)卡接收到的包應(yīng)該送到哪一個(gè)網(wǎng)卡上去。路由表的每一行至少有目標(biāo)網(wǎng)絡(luò)號(hào)、子網(wǎng)掩碼、到這個(gè)子網(wǎng)應(yīng)該使用的網(wǎng)卡這三條信息。當(dāng)路由器從一個(gè)網(wǎng)卡接收到一個(gè)包時(shí),它掃描路由表的每一行,用里面的子網(wǎng)掩碼與數(shù)據(jù)包中的目標(biāo)IP地址做邏輯與運(yùn)算(&)找出目標(biāo)網(wǎng)絡(luò)號(hào)。如果得出的結(jié)果網(wǎng)絡(luò)號(hào)與這一行的網(wǎng)絡(luò)號(hào)相同,就將這條路由表六下來作為備用路由。如果已經(jīng)有備用路由了,就載這兩條路由里將網(wǎng)絡(luò)號(hào)最長的留下來,另一條丟掉(這是用無分類編址CIDR的情況才是匹配網(wǎng)絡(luò)號(hào)最長的,其他的情況是找到第一條匹配的行時(shí)就可以進(jìn)行轉(zhuǎn)發(fā)了)。如此接著掃描下一行直到結(jié)束。如果掃描結(jié)束仍沒有找到任何路由,就用默認(rèn)路由。確定路由后,直接將數(shù)據(jù)包送到對(duì)應(yīng)的網(wǎng)卡上去。在具體的實(shí)現(xiàn)中,路由表可能包含更多的信息為選路由算法的細(xì)節(jié)所用。
在linux上可以用“route add default gw<默認(rèn)路由器 IP>”命令配置一條默認(rèn)路由。
7、RARP?
逆地址解析協(xié)議,作用是完成硬件地址到IP地址的映射,主要用于無盤工作站,因?yàn)榻o無盤工作站配置的IP地址不能保存。
8、運(yùn)輸層協(xié)議與網(wǎng)絡(luò)層協(xié)議的區(qū)別?
網(wǎng)絡(luò)層協(xié)議負(fù)責(zé)的是提供主機(jī)間的邏輯通信
運(yùn)輸層協(xié)議負(fù)責(zé)的是提供進(jìn)程間的邏輯通信
看了“計(jì)算機(jī)面試常問問題”