計算機網絡基礎知識點的詳細解答,計算機網絡基礎知識試題
2019-06-06 10:33:42 來源:博客園

一、網絡模型

模型分類:

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)

電路交換、報文交換分組交換的比較?

連接建立——數據傳輸——釋放鏈接

答:電路交換:公共電話網(PSTN網)和移動網(包括GSM和CDMA網) 采用的都是電路交換技術,它的基本特點是采用面向連接的方式,在雙方進行通信之前,需要為通信雙方分配一條具有固定寬帶的通信電路,通信雙方在通信過程中 一直占用所分配的資源,直到通信結束,并且在電路的建立和釋放過程中都需要利用相關的信令協議。這種方式的優點是在通信過程中可以保證為用戶提供足夠的帶 寬,并且實時性強,時延小,交換設備成本低,但同時帶來的缺點是網絡帶寬利用率不高,一旦電路被建立不管通信雙方是否處于通話狀態分配的電路一直被占用。

報文交換:報文交換和分組交換類似,也采用存儲轉發機制,但報文交換是以報文作為傳送單元,由于報文長度差異很大,長報文可能導致很大的時延,并且對每個節 點來說緩沖區的分配也比較困難,為了滿足各種長度報文的需要并且達到高效的目的,節點需要分配不同大小的緩沖區,否則就有可能造成數據傳送的失敗。在實際 應用中報文交換主要用于傳輸報文較短,實時性要求較低的通信業務,如公用電報網,報文交換比分組交換出現的要早一些,分組交換是在報文交換的基礎上,將報 文分割成分組進行傳輸,在傳輸時延和傳輸效率上進行了平衡。另外一個缺點是出錯時,整個報文都將重傳。

分組交換:電路交換技術主要適用于傳送話音相關的業務,這種網絡交換方式對于數據業務而言,有著很大的局限性。首先是數據通信具有較強的突發性,峰值比特率 和平均比特率相差較大,如果采用電路交換技術,若按峰值比特率分配電路帶寬會造成資源的極大浪費,如果按平均比特率分配帶寬,則會造成數據的大量丟失,其 次是和語音業務比較,數據業務對時延沒有嚴格的要求,但是需要進行無差錯的傳輸,而語音信號可以有一定程序的失真但實時性要高。分組交換技術就是針對數據 通信業務的特點而提出的一種交換方式,它的基本特點是面向無連接而采用存儲轉發的方式,將需要傳送的數據按照一定長度分割成許多小段數據,并在數據之前增 加相應的用于對數據進行選路和校驗等功能的頭部字段,作為數據傳送的基本單元,即分組。采用分組交換技術,在通信之前不需要建立連接,每個節點首先將前一 節點送來的分組收下并保存在緩沖區中,然后根據分組頭部中的地址信息選擇適當的鏈路將其發送至下一個節點,這樣在通信過程中可以根據用戶的要求和網絡的能 力來動態分配帶寬。分組交換比電路交換的電路利用率高,但時延較大。分組轉發的帶來的問題:帶來排隊時延以及增加頭部帶來的開銷。

虛擬局域網VLAN?

答:(1)VLAN只是局域網提供給用戶的一種服務,而并不是一種新的局域網絡。VLAN限制了接收廣播消息的工作站數,使得網絡不會因傳播過多的廣播信息(即廣播風暴)而引起性能惡化。

(2)劃分VLAN的方法:基于端口;基于MAC地址;基于IP地址。

(3)VLAN的幀格式

目的地址(6字節)

源地址(6字節)

VLAN標記(表明該站是屬于哪個VLAN的)

類型(2字節)

數據(46——1500字節)

FCS(4字節)

 

二、網絡協議

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);

10.0.0.0—10.255.255.255,172.16.0.0—172.31.255.255,192.168.0.0—192.168.255.255。(Internet上保留地址用于內部)

IP地址與子網掩碼相與得到主機號

特殊的IP地址

(1)網絡地址

IP地址由網絡號(包括子網號)和主機號組成,網絡地址的主機號為全0,網絡地址代表著整個網絡。

(2)廣播地址

廣播地址通常稱為直接廣播地址,是為了區分受限廣播地址。

廣播地址與網絡地址的主機號正好相反,廣播地址中,主機號為全1。當向某個網絡的廣播地址發送消息時,該網絡內的所有主機都能收到該廣播消息。

(3)組播地址

D類地址就是組播地址。

先回憶下A,B,C,D類地址吧

A類地址以00開頭,第一個字節作為網絡號,地址范圍為:0.0.0.0~127.255.255.255;

B類地址以10開頭,前兩個字節作為網絡號,地址范圍是:128.0.0.0~191.255.255.255;

C類地址以110開頭,前三個字節作為網絡號,地址范圍是:192.0.0.0~223.255.255.255。

D類地址以1110開頭,地址范圍是224.0.0.0~239.255.255.255,D類地址作為組播地址(一對多的通信);

E類地址以1111開頭,地址范圍是240.0.0.0~255.255.255.255,E類地址為保留地址,供以后使用。

Notice:只有A,B,C有網絡號和主機號之分,D類地址和E類地址沒有劃分網絡號和主機號。

(4)255.255.255.255

該IP地址指的是受限的廣播地址。受限廣播地址與一般廣播地址(直接廣播地址)的區別在于,受限廣播地址之只能用于本地網絡,路由器不會轉發以受限廣播地址為目的地址的分組;一般廣播地址既可在本地廣播,也可跨網段廣播。例如:主機192.168.1.1/30上的直接廣播數據包后,另外一個網段192.168.1.5/30也能收到該數據報;若發送受限廣播數據報,則不能收到。

Notice:一般的廣播地址(直接廣播地址)能夠通過某些路由器(當然不是所有的路由器),而受限的廣播地址不能通過路由器。

(5)0.0.0.0

常用于尋找自己的IP地址,例如在我們的RARP,BOOTP和DHCP協議中,若某個未知IP地址的無盤機想要知道自己的IP地址,它就以255.255.255.255為目的地址,向本地范圍(具體而言是被各個路由器屏蔽的范圍內)的服務器發送IP請求分組。

(6)回環地址

127.0.0.0/8被用作回環地址,回環地址表示本機的地址,常用于對本機的測試,用的最多的是127.0.0.1。

(7)A、B、C類私有地址

私有地址(private address)也叫專用地址,它們不會在全球使用,只具有本地意義。

A類私有地址:10.0.0.0/8,范圍是:10.0.0.0~10.255.255.255

B類私有地址:172.16.0.0/12,范圍是:172.16.0.0~172.31.255.255

C類私有地址:192.168.0.0/16,范圍是:192.168.0.0~192.168.255.255

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

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

在瀏覽器中輸入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數據包到達服務器的地址。

HTTP協議包括哪些請求?

GET:請求讀取由URL所標志的信息。

POST:給服務器添加信息(如注釋)。

PUT:在給定的URL下存儲一個文檔。

DELETE:刪除給定的URL所標志的資源。

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響應。

常見的路由選擇協議,以及它們的區別

常見的路由選擇協議有:RIP協議、OSPF協議。

RIP協議

底層是貝爾曼福特算法,它選擇路由的度量標準(metric)是跳數,最大跳數是15跳,如果大于15跳,它就會丟棄數據包。

OSPF協議

底層是迪杰斯特拉算法,是鏈路狀態路由選擇協議,它選擇路由的度量標準是帶寬,延遲。

各種協議

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,至此,完成四次揮手。

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)采用兩次握手不行,原因就是上面說的實效的連接請求的特殊情況。

TCP的可靠性如何保證?

TCP的可靠性是通過順序編號和確認(ACK)來實現的。

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(TrivalFileTran敏感詞erProtocal),簡單文件傳輸協議,該協議在熟知端口69上使用UDP服務。

端口及對應的服務?

IP數據包的格式

IP數據報由首部和數據兩部分組成。首部由固定部分和可選部分組成。首部的固定部分有20字節。可選部分的長度變化范圍為1——40字節。固定部分的字段:

字段名

位數(bit)

字段名

位數

版本

4 Ipv4

首部長度

4(表示的最大數為15個單位,一個單位表示4字節)

服務類型

8以前很少用

總長度

16(首部和數據部分的總長度,因此數據報的最大長度為65535字節,即64KB,但是由于鏈路層的MAC都有一定的最大傳輸單元,因此IP數據報的長度一般都不會有理論上的那么大,如果超出了MAC的最大單元就會進行分片)

標識

16(相同的標識使得分片后的數據報片能正確的重裝成原來的數據報)

標志

3(最低位MF=1表示后面還有分片,MF=0表示這是若干個數據報片的最后一個中間位DF=0才允許分片)

片偏移

片偏移指出較長的分組在分片后,某片在原分組中的相對位置,都是8字節的偏移位置

生存時間

數據報在網絡中的生存時間,指最多經過路由器的跳數

協議

8(指出該數據報攜帶的數據是何種協議,以使得目的主機的IP層知道應將數據部分上交給哪個處理程序)如ICMP=1 IGMP=2 TCP=6 EGP=8 IGP=9 UDP=17 Ipv6=41 OSPF=89

首部校驗和

這個部分只校驗首部,不包括數據部分,計算方法:將首部劃分為多個16位的部分,然后每個16位部分取反,然后計算和,再將和取反放到首部校驗和。接收方收到后按同樣的方法劃分,取反,求和,在取反,如果結果為零,則接收,否則就丟棄

源地址

32

目的地址

32

TCP數據報的格式?

一個TCP報文段分為首部和數據兩部分。首部由固定部分和選項部分組成,固定部分是20字節。TCP首部的最大長度為60。首部固定部分字段:

TCP的12字節偽首部:

UDP數據報的格式?

用戶數據報UDP由首部和數據部分組成。首部只有8個字節,由4個字段組成,每個字段都是兩個字節。

字段名

字節

字段名

字節

源端口

2

目的端口

2

長度

2

檢驗和

2(檢驗首部和數據,加12字節的偽首部)

UDP的12字節偽首部:

源IP地(4)

目的IP地(4)

0 (1)

17(1)代表這是UDP

UDP長(2)

以太網MAC幀格式?

前導碼

前定界符

目的地址

源目的地址

長度字段

數據字段

校驗字段

7B

1B

6B

6B

2B

46-1500

4B

三、網絡設備

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

物理層

:中繼器(Repeater,也叫放大器),集線器。

數據鏈路層

:網橋,交換機。

網絡層

:路由器。

網關

:網絡層以上的設備。

1)交換機

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

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

交換機被廣泛應用于二層網絡交換,俗稱"二層交換機"。

交換機的種類有:二層交換機、三層交換機、四層交換機、七層交換機分別工作在OSI七層模型中的第二層、第三層、第四層盒第七層,并因此而得名。

2)路由器

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

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

3)網關

網關(Gateway),網關顧名思義就是連接兩個網絡的設備,區別于路由器(由于歷史的原因,許多有關TCP/IP 的文獻曾經把網絡層使用的路由器(Router)稱為網關,在今天很多局域網采用都是路由來接入網絡,因此現在通常指的網關就是路由器的IP),經常在家庭中或者小型企業網絡中使用,用于連接局域網和Internet。網關也經常指把一種協議轉成另一種協議的設備,比如語音網關。

在傳統TCP/IP術語中,網絡設備只分成兩種,一種為網關(gateway),另一種為主機(host)。網關能在網絡間轉遞數據包,但主機不能轉送數據包。在主機(又稱終端系統,endsystem)中,數據包需經過TCP/IP四層協議處理,但是在網關(又稱中介系統,intermediatesystem)只需要到達網際層(Internetlayer),決定路徑之后就可以轉送。在當時,網關(gateway)與路由器(router)還沒有區別。

在現代網絡術語中,網關(gateway)與路由器(router)的定義不同。網關(gateway)能在不同協議間移動數據,而路由器(router)是在不同網絡間移動數據,相當于傳統所說的IP網關(IPgateway)。

網關是連接兩個網絡的設備,對于語音網關來說,他可以連接PSTN網絡和以太網,這就相當于VOIP,把不同電話中的模擬信號通過網關而轉換成數字信號,而且加入協議再去傳輸。在到了接收端的時候再通過網關還原成模擬的電話信號,最后才能在電話機上聽到。

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