牛客網面試知識
整理一下計算機網絡部分的面試常考點,參考書籍:《計算機網絡》第五版謝希仁的那本,希望對大家有所幫助
OSI,TCP/IP:五層協議的體系結構,以及各層協議
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)
IP地址的分類
A類地址:以0開頭, 第一個字節範圍:0~127( - );
B類地址:以10開頭, 第一個字節範圍:128~191( - );
C類地址:以110開頭, 第一個字節範圍:192~223( - );
—, —, —。(Internet上保留地址用於內部)
IP地址與子網掩碼相與得到主機號
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主機、路由器之間傳遞控制消息。
TFTP協議: 是TCP/IP協議族中的一個用來在客户機與服務器之間進行簡單文件傳輸的協議,提供不復雜、開銷不大的文件傳輸服務。
HTTP協議: 超文本傳輸協議,是一個屬於應用層的面向對象的協議,由於其簡捷、快速的方式,適用於分佈式超媒體信息系統。
DHCP協議: 動態主機配置協議,是一種讓系統得以連接到網絡上,並獲取所需要的配置參數手段。
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,至此,完成四次揮手。
在瀏覽器中輸入後執行的全部過程
1、客户端瀏覽器通過DNS解析到的IP地址,通過這個IP地址找到客户端到服務器的路徑。客户端瀏覽器發起一個HTTP會話到,然後通過TCP進行封裝數據包,輸入到網絡層。
2、在客户端的傳輸層,把HTTP會話請求分成報文段,添加源和目的端口,如服務器使用80端口監聽客户端的請求,客户端由系統隨機選擇一個端口如5000,與服務器進行交換,服務器把相應的請求返回給客户端的5000端口。然後使用IP層的IP地址查找目的端。
3、客户端的網絡層不用關係應用層或者傳輸層的東西,主要做的是通過查找路由表確定如何到達服務器,期間可能經過多個路由器,這些都是由路由器來完成的工作,我不作過多的描述,無非就是通過查找路由表決定通過那個路徑到達服務器。
4、客户端的鏈路層,包通過鏈路層發送到路由器,通過鄰居協議查找給定IP地址的MAC地址,然後發送ARP請求查找目的地址,如果得到迴應後就可以使用ARP的請求應答交換的IP數據包現在就可以傳輸了,然後發送IP數據包到達服務器的地址。
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 Tran敏感詞er Protocal),簡單文件傳輸協議,該協議在熟知端口69上使用UDP服務。
DNS域名系統,簡單描述其工作原理。
當DNS客户機需要在程序中使用名稱時,它會查詢DNS服務器來解析該名稱。客户機發送的每條查詢信息包括三條信息:包括:指定的DNS域名,指定的查詢類型,DNS域名的指定類別。基於UDP服務,端口53. 該應用一般不直接為用户使用,而是為其他應用服務,如HTTP,SMTP等在其中需要完成主機名到IP地址的轉換。
面向連接和非面向連接的服務的特點是什麼?
面向連接的服務,通信雙方在進行通信之前,要先在雙方建立起一個完整的可以彼此溝通的通道,在通信過程中,整個連接的情況一直可以被實時地監控和管理。
非面向連接的服務,不需要預先建立一個聯絡兩個通信節點的連接,需要通信的時候,發送節點就可以往網絡上發送信息,讓信息自主地在網絡上去傳,一般在傳輸的過程中不再加以監控。
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眾所周知,兒童劇以少年兒童為服務對象,以話劇、歌劇、舞劇、歌舞劇以及童話...
-
面試自我評價集合14篇
在日常的學習、工作、生活中,我們最熟悉的就是自我評價了,自我評價往往折射出個人對人生自我價值和社會價值的認識和態度。如何寫自我評價才合適呢?下面是小編為大家整理的面試自我評價,僅供參考,希望能夠幫助到大家。面試自我評價篇1三年的鍛鍊,給我僅是初步的經驗...
-
優秀面試自我評價集錦8篇
在平日的學習、工作和生活裏,我們很多時候都不得不用到自我評價,自我評價和人生價值選擇有着密切的關係。你知道自我評價怎樣寫才規範嗎?以下是小編精心整理的優秀面試自我評價,歡迎閲讀,希望大家能夠喜歡。優秀面試自我評價1我是一個開朗活潑、意志力較堅強且不輕...
-
面試的邀請函(優秀)
使用電子邀請函是近年來很多企業的轉變。在現在社會,邀請函應用範圍廣泛,我敢肯定,大部分人都對擬定邀請函很是頭疼的,以下是小編為大家整理的面試的邀請函,供大家參考借鑑,希望可以幫助到有需要的朋友。面試的邀請函1尊敬的_________先生/女士您好!很榮慶__將您的簡...