計算機網路面試題彙總(1)
2.計算機網路
2.1基礎概念
1.OSI,TCP/IP,五層協議的體系結構
OSI分層(7層):物理層、資料鏈路層、網路層、傳輸層、會話層、表示層、應用層。
TCP/IP分層(4層):網路介面層、網際層、運輸層、應用層
層 | 協議 |
---|---|
物理層 | 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) |
2.IP地址的分類
A類地址:以0開頭,第一個位元組範圍:0~127;(1.0.0.0 - 126.255.255.255);
B類地址:以10開頭,第一個位元組範圍:128~191;(128.0.0.0 - 191.255.255.255);
C類地址:以110開頭,第一個位元組範圍:192~223;(192.0.0.0 - 223.255.255.255);
D類地址:以1110開頭,第一個位元組範圍為224~239;
IP地址與子網掩碼相與得到主機號
3.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響應。
4.簡單介紹RARP(逆向地址解析協議)
RARP是逆地址解析協議,作用是完成硬體地址到IP地址的對映,主要用於無盤工作站,因為給無盤工作站配置的IP地址不能儲存。工作流程:在網路中配置一臺RARP伺服器,裡面儲存著IP地址和MAC地址的對映關係,當無盤工作站啟動後,就封裝一個RARP資料包,裡面有其MAC地址,然後廣播到網路上去,當伺服器收到請求包後,就查詢對應的MAC地址的IP地址裝入響應報文中發回給請求者。因為需要廣播請求報文,因此RARP只能用於具有廣播能力的網路。
5.各種協議
協議 | 作用 |
---|---|
ICMP協議 | 因特網控制報文協議,它是TCP/IP協議族的一個子協議,用於在IP主機、路由器之間傳遞控制訊息 |
TFTP協議 | 是TCP/IP協議族中的一個用來在客戶機與伺服器之間進行簡單檔案傳輸的協議,提供不復雜、開銷不大的檔案傳輸服務 |
HTTP協議 | 超文字傳輸協議,是一個屬於應用層的面向物件的協議,由於其簡捷、快速的方式,適用於分散式超媒體資訊系統 |
DHCP協議 | 動態主機配置協議,是一種讓系統得以連線到網路上,並獲取所需要的配置引數手段 |
NAT協議 | 網路地址轉換屬接入廣域網(WAN)技術,是一種將私有(保留)地址轉化為合法IP地址的轉換技術 |
辨析:
NAT協議:網路地址轉換(NAT,Network AddressTranslation)屬接入廣域網(WAN)技術,
是一種將私有(保留)地址轉化為合法IP地址的轉換技術,它被廣泛應用於各種型別Internet接入方式和各種型別的網路中。原因很簡單,NAT不僅完美地解決了IP地址不足的問題,而且還能夠有效地避免來自網路外部的攻擊,隱藏並保護網路內部的計算機。
DHCP協議:動態主機設定協議(Dynamic Host ConfigurationProtocol, DHCP)
是一個區域網的網路協議,使用UDP協議工作,主要有兩個用途:給內部網路或網路服務供應商自動分配IP地址,給使用者或者內部網路管理員作為對所有計算機作中央管理的手段。
DNS協議:DNS 是域名系統 (Domain Name System) 的縮寫,是因特網的一項核心服務,它作為可以將域名和IP地址相互對映的一個分散式資料庫,能夠使人更方便的訪問網際網路,而不用去記住能夠被機器直接讀取的IP數串。
常見的路由選擇協議,以及它們的區別
常見的路由選擇協議有:RIP協議、OSPF協議。
RIP協議:底層是貝爾曼福特演算法,它選擇路由的度量標準(metric)是跳數,最大跳數是15跳,如果大於15跳,它就會丟棄資料包。
OSPF協議:底層是迪傑斯特拉演算法,是鏈路狀態路由選擇協議,它選擇路由的度量標準是頻寬,延遲。
TCP與UDP的區別
UDP是面向無連線的,不可靠的資料報服務;
TCP是面向連線的,可靠的位元組流服務。
TCP傳輸單位稱為TCP報文段,UDP傳輸單位稱為使用者資料報。
TCP注重資料安全性,UDP資料傳輸快,因為不需要連線等待,少了許多操作,但是其安全性卻一般。
TCP的可靠性如何保證?
TCP的可靠性是通過順序編號和確認(ACK)來實現的
6.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,至此,完成四次揮手。
7.在瀏覽器中輸入www.baidu.com後執行的全部過程
1、客戶端瀏覽器通過DNS解析到www.baidu.com的IP地址220.181.27.48,通過這個IP地址找到客戶端到伺服器的路徑。客戶端瀏覽器發起一個HTTP會話到220.161.27.48,然後通過TCP進行封裝資料包,輸入到網路層。
2、在客戶端的傳輸層,把HTTP會話請求分成報文段,新增源和目的埠,如伺服器使用80埠監聽客戶端的請求,客戶端由系統隨機選擇一個埠如5000,與伺服器進行交換,伺服器把相應的請求返回給客戶端的5000埠。然後使用IP層的IP地址查詢目的端。
3、客戶端的網路層不用關係應用層或者傳輸層的東西,主要做的是通過查詢路由表確定如何到達伺服器,期間可能經過多個路由器,這些都是由路由器來完成的工作,我不作過多的描述,無非就是通過查詢路由表決定通過那個路徑到達伺服器。
4、客戶端的鏈路層,包通過鏈路層傳送到路由器,通過鄰居協議查詢給定IP地址的MAC地址,然後傳送ARP請求查詢目的地址,如果得到迴應後就可以使用ARP的請求應答交換的IP資料包現在就可以傳輸了,然後傳送IP資料包到達伺服器的地址。