首頁技術文章正文

軟件測試:計算機網(wǎng)絡常見筆試面試題

更新時間:2018-10-31 來源:黑馬程序員 瀏覽量:

  · OSI,TCP/IP,五層協(xié)議的體系結(jié)構(gòu),以及各層協(xié)議

 ?、貽SI分層 (7層):物理層、數(shù)據(jù)鏈路層、網(wǎng)絡層、傳輸層、會話層、表示層、應用層。

 ?、赥CP/IP分層(4層):網(wǎng)絡接口層、 網(wǎng)際層、運輸層、 應用層。

 ?、畚鍖訁f(xié)議 (5層):物理層、數(shù)據(jù)鏈路層、網(wǎng)絡層、運輸層、 應用層。

  ④每一層的協(xié)議如下:

  物理層:RJ45、CLOCK、IEEE802.3 (中繼器,集線器)

  數(shù)據(jù)鏈路:PPP、HDLC、VLAN、MAC (網(wǎng)橋,交換機)

  網(wǎng)絡層:IP、ICMP、ARP、RARP、OSPF、IPX、RIP (路由器)

  傳輸層:TCP、UDP

  應用層:FTP、DNS、Telnet、SMTP、HTTP

 ?、菝恳粚拥淖饔萌缦拢?/p>

  物理層:通過媒介傳輸比特,確定機械及電氣規(guī)范(比特Bit)

  數(shù)據(jù)鏈路層:將比特組裝成幀和點到點的傳遞(幀F(xiàn)rame)

  網(wǎng)絡層:負責數(shù)據(jù)包從源到宿的傳遞和網(wǎng)際互連(包PackeT)

  傳輸層:提供端到端的可靠報文傳遞和錯誤恢復(段Segment)

  會話層:建立、管理和終止會話(會話協(xié)議數(shù)據(jù)單元SPDU)

  表示層:對數(shù)據(jù)進行翻譯、加密和壓縮(表示協(xié)議數(shù)據(jù)單元PPDU)

  應用層:允許訪問OSI環(huán)境的手段(應用協(xié)議數(shù)據(jù)單元APDU)

  · 在瀏覽器中輸入www.baidu.com后執(zhí)行的全部過程

 ?、贋g覽器獲取輸入的域名www.baidu.com

  ② 瀏覽器向DNS請求解析www.baidu.com的IP地址

 ?、?域名系統(tǒng)DNS解析出百度服務器的IP地址

  ④瀏覽器與該服務器建立TCP連接(默認端口號80)

 ?、轂g覽器發(fā)出HTTP請求,請求百度首頁

  ⑥服務器通過HTTP響應把首頁文件發(fā)送給瀏覽器

 ?、逿CP連接釋放

 ?、酁g覽器將首頁文件進行解析,并將Web頁顯示給用戶。

  · DNS域名系統(tǒng),簡單描述其工作原理。

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

  ①客戶機向其本地域名服務器發(fā)出DNS請求報文

 ?、诒镜赜蛎掌魇盏秸埱蠛?,查詢本地緩存,假設沒有該記錄,則以DNS客戶的身份向根域名服務器發(fā)出解析請求

 ?、鄹蛎掌魇盏秸埱蠛螅袛嘣撚蛎鶎儆?,將對應的頂級域名服務器的IP地址返回給本地域名服務器

  ④本地域名服務器向頂級域名服務器發(fā)出解析請求報文

 ?、蓓敿売蛎掌魇盏秸埱蠛?,將所對應的授權(quán)域名服務器的IP地址返回給本地域名服務器

  ⑥本地域名服務器向授權(quán)域名服務器發(fā)起解析請求報文

 ?、呤跈?quán)域名服務器收到請求后,將查詢結(jié)果返回給本地域名服務器

 ?、啾镜赜蛎掌鲗⒉樵兘Y(jié)果保存到本地緩存,同時返回給客戶機

  · HTTP的狀態(tài)碼:

  ①大致可分為五大類

  100-199 信息,服務器收到請求,需要請求者繼續(xù)執(zhí)行操作。指定客戶端應相應的某些動作。

  200-299 用于表示請求成功。

  300-399 重定向,需要進一步的操作以完成請求

  400-499 用于指出客戶端的錯誤。請求包含語法錯誤或無法完成請求

  500-599 用于支持服務器錯誤。服務器在處理請求的過程中發(fā)生了錯誤

 ?、诔R姷臓顟B(tài)碼

  206 部分內(nèi)容。服務器成功處理了部分GET請求

  301 永久移動。請求的資源已被永久的移動到新URI,返回信息會包括新的URI,瀏覽器會自動定向到新URI。今后任何新的請求都應使用新的URI代替。

  302 臨時移動。與301類似。但資源只是臨時被移動??蛻舳藨^續(xù)使用原有URI

  400 (錯誤請求) 服務器不理解請求的語法。

  404 (未找到) 服務器找不到請求的網(wǎng)頁。

  500 (服務器內(nèi)部錯誤) 服務器遇到錯誤,無法完成請求。

  505 (HTTP 版本不受支持) 服務器不支持請求中所用的 HTTP 協(xié)議版本。

  · HTTP和HTTPS的區(qū)別:

  https:全稱Hyper Text Transfer Protocol Secure,相比http,多了一個secure,這一個secure是怎么來的呢?這是由TLS(SSL)提供的,可以簡單理解為 HTTPS=HTTP+SSL。

 ?、貶TTP 的 URL 以 http:// 開頭,而 HTTPS 的 URL 以 https:// 開頭

 ?、贖TTP 是相對不安全的,而 HTTPS 是相對安全的

 ?、跦TTP 標準端口是 80 ,而 HTTPS 的標準端口是 443

 ?、茉?OSI 網(wǎng)絡模型中,HTTP 工作于應用層,而 HTTPS 工作在傳輸層

 ?、軭TTP 無需加密,而 HTTPS 對傳輸?shù)臄?shù)據(jù)進行加密

 ?、轍TTP 無需證書,而 HTTPS 需要認證證書

  · TCP和UDP的區(qū)別?

 ?、賂CP提供面向連接的、可靠的數(shù)據(jù)流傳輸,而UDP提供的是非面向連接的、不可靠的數(shù)據(jù)流傳輸。

 ?、赥CP傳輸單位稱為TCP報文段,UDP傳輸單位稱為用戶數(shù)據(jù)報。

 ?、跿CP注重數(shù)據(jù)安全性,UDP數(shù)據(jù)傳輸快,因為不需要連接等待,少了許多操作,但是其安全性卻一般。

  ④TCP對應的協(xié)議和UDP對應的協(xié)議

  1). TCP對應的協(xié)議:

  FTP:定義了文件傳輸協(xié)議,使用21端口。

  Telnet:一種用于遠程登陸的端口,使用23端口,用戶可以以自己的身份遠程連接到計算機上,可提供基于DOS模式下的通信服務。

  SMTP:郵件傳送協(xié)議,用于發(fā)送郵件。服務器開放的是25號端口。

  POP3:它是和SMTP對應,POP3用于接收郵件。POP3協(xié)議所用的是110端口。

  HTTP:是從Web服務器傳輸超文本到本地瀏覽器的傳送協(xié)議。

  2). UDP對應的協(xié)議:

  DNS:用于域名解析服務,將域名地址轉(zhuǎn)換為IP地址。DNS用的是53號端口。

  SNMP:簡單網(wǎng)絡管理協(xié)議,使用161號端口,是用來管理網(wǎng)絡設備的。由于網(wǎng)絡設備很多,無連接的服務就體現(xiàn)出其優(yōu)勢。

  TFTP(Trival File Transfer Protocal),簡單文件傳輸協(xié)議,該協(xié)議在熟知端口69上使用UDP服務。

  · TCP是怎么保證傳輸可靠的?

 ?、俅_認和重傳:接收方收到報文就會確認,發(fā)送方發(fā)送一段時間后沒有收到確認就重傳。

 ?、跀?shù)據(jù)校驗

  ③數(shù)據(jù)合理分片和排序:TCP會按MTU合理分片,接收方會緩存未按序到達的數(shù)據(jù),重新排序后再交給應用層。

  TCP為什么引入接受緩存這個數(shù)據(jù)結(jié)構(gòu)?

  如果沒有接受緩存的話,或者說只有一個緩存的話,為了保證接受的數(shù)據(jù)是按順序傳輸?shù)?,所以如果位于x序號之后的序號分組先到達目的主機的運輸層的話必然丟棄,這樣的話將在重傳上花費很大的開銷,所以一般如果有過大的序號達到接收端,那么會按照序號緩存起來等待之前的序號分許到達,然后一并交付到應用進程。

 ?、芰髁靠刂?/p>

  當接收方來不及處理發(fā)送方的數(shù)據(jù),能提示發(fā)送方降低發(fā)送的速率,防止包丟失。

 ?、輷砣刂?/p>

  當網(wǎng)絡擁塞時,減少數(shù)據(jù)的發(fā)送。

  · 了解交換機、路由器、網(wǎng)關的概念,并知道各自的用途

 ?、俳粨Q機

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

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

 ?、诼酚善?/p>

  路由器(Router)是一種計算機網(wǎng)絡設備,提供了路由與轉(zhuǎn)送兩種重要機制,可以決定數(shù)據(jù)包從來源端到目的端所經(jīng)過的路由路徑(host到host之間的傳輸路徑),這個過程稱為路由;將路由器輸入端的數(shù)據(jù)包移送至適當?shù)穆酚善鬏敵龆?在路由器內(nèi)部進行),這稱為轉(zhuǎn)送。路由工作在OSI模型的第三層——即網(wǎng)絡層,例如網(wǎng)際協(xié)議。

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

 ?、劬W(wǎng)關

  網(wǎng)關(Gateway),網(wǎng)關是連接兩個網(wǎng)絡的設備,

  在傳統(tǒng)TCP/IP術語中,網(wǎng)絡設備只分成兩種,一種為網(wǎng)關(gateway),另一種為主機(host)。網(wǎng)關能在網(wǎng)絡間轉(zhuǎn)遞數(shù)據(jù)包,但主機不能轉(zhuǎn)送數(shù)據(jù)包。在主機中,數(shù)據(jù)包需經(jīng)過TCP/IP四層協(xié)議處理,但是在網(wǎng)關只需要到達網(wǎng)際層,決定路徑之后就可以轉(zhuǎn)送。

  在現(xiàn)代網(wǎng)絡術語中,網(wǎng)關(gateway)與路由器(router)的定義不同。網(wǎng)關(gateway)能在不同協(xié)議間移動數(shù)據(jù),而路由器(router)是在不同網(wǎng)絡間移動數(shù)據(jù)。

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

  · IP地址的分類

  A類地址:以0開頭, 第一個字節(jié)范圍:0~127(1.0.0.0 - 126.255.255.255)

  B類地址:以10開頭,第一個字節(jié)范圍:128~191(128.0.0.0 - 191.255.255.255)

  C類地址:以110開頭, 第一個字節(jié)范圍:192~223(192.0.0.0 -223.255.255.255);

  除去以上三類公有IP的,剩下的為私有IP:10.0.0.0—10.255.255.255, 172.16.0.0—172.31.255.255, 192.168.0.0—192.168.255.255。

  · ARP是地址解析協(xié)議,簡單語言解釋一下工作原理。

  ①每個主機都會在自己的ARP緩沖區(qū)中建立一個ARP列表,以表示IP地址和MAC地址之間的對應關系。

 ?、诋斣粗鳈C要發(fā)送數(shù)據(jù)時,首先檢查ARP列表中是否有對應IP地址的目的主機的MAC地址,如果有,則直接發(fā)送數(shù)據(jù),如果沒有,就向本網(wǎng)段的所有主機發(fā)送ARP數(shù)據(jù)包,該數(shù)據(jù)包包括的內(nèi)容有:源主機 IP地址,源主機MAC地址,目的主機的IP 地址。

  ③當本網(wǎng)絡的所有主機收到該ARP數(shù)據(jù)包時,首先檢查數(shù)據(jù)包中的IP地址是否是自己的IP地址,如果不是,則忽略該數(shù)據(jù)包,如果是,則首先從數(shù)據(jù)包中取出源主機的IP和MAC地址寫入到ARP列表中,如果已經(jīng)存在,則覆蓋,然后將自己的MAC地址寫入ARP響應包中,告訴源主機自己是它想要找的MAC地址。

 ?、茉粗鳈C收到ARP響應包后。將目的主機的IP和MAC地址寫入ARP列表,并利用此信息發(fā)送數(shù)據(jù)。如果源主機一直沒有收到ARP響應數(shù)據(jù)包,表示ARP查詢失敗。

  廣播發(fā)送ARP請求,單播發(fā)送ARP響應。

  · RARP(反向地址轉(zhuǎn)換協(xié)議):

  反向地址轉(zhuǎn)換協(xié)議就是將局域網(wǎng)中某個主機的物理地址轉(zhuǎn)換為IP地址,比如局域網(wǎng)中有一臺主機只知道物理地址而不知道IP地址,那么可以通過RARP協(xié)議發(fā)出征求自身IP地址的廣播請求,然后由RARP服務器負責回答。RARP協(xié)議廣泛用于獲取無盤工作站的IP地址。

 ?、俳o主機發(fā)送一個本地的RARP廣播,在此廣播包中,聲明自己的MAC地址并且請求任何收到此請求的RARP服務器分配一個IP地址;

  ②本地網(wǎng)段上的RARP服務器收到此請求后,檢查其RARP列表,查找該MAC地址對應的IP地址;

 ?、廴绻嬖?,RARP服務器就給源主機發(fā)送一個響應數(shù)據(jù)包并將此IP地址提供給對方主機使用;

 ?、苋绻淮嬖冢琑ARP服務器對此不做任何的響應;

 ?、菰粗鳈C收到從RARP服務器的響應信息,就利用得到的IP地址進行通訊;如果一直沒有收到RARP服務器的響應信息,表示初始化失敗。

  · 為什么有了可靠地TCP還需要不可靠的UDP?

 ?、賂CP的優(yōu)缺點。優(yōu)點呢,TCP是可靠的連接,由于有基本的重傳確認機制,可以保證把一個數(shù)據(jù)塊完完整整的從A傳到B;缺點也是因優(yōu)點而生,因為有三次握手,所以會傳輸更多的包,浪費一些帶寬;因為需要可靠地連接進行通信,則需要雙方都必須持續(xù)在線,所以在通信過程中server需要維持非常大的并發(fā)連接,浪費了系統(tǒng)資源,甚至會出現(xiàn)宕機;再者就是因為有重傳確認,則會浪費一部分的帶寬,且在不好的網(wǎng)絡中,會因為不斷地連接斷開連接,嚴重降低了傳輸效率。

 ?、谙鄬τ赥CP來說,UDP是非面向連接的不可靠的協(xié)議,其優(yōu)點也因為缺點而生。首先,因為沒有三次握手,所以會起步比較快,延時小;另外,由于不需要雙方持續(xù)在線,所以server不用維護巨量的并發(fā)連接,節(jié)省了系統(tǒng)資源;三,因為沒有重傳確認,雖然到達的數(shù)據(jù)可能會有所缺失,但在不影響使用的情況下,能更高效的利用網(wǎng)絡帶寬。

  ③TCP適合實時性要求不高、但要求內(nèi)容要完整傳輸?shù)膽?。相比而言,UDP由于無連接、無重傳確認,所以傳輸效率高、延時小,適合實時性要求高的應用,如游戲服務器,音頻,視頻等;另外,由于不用維持大的并發(fā)量,所以適合巨量服務的server,加上合適的時間控制,可以用來設計更大的并發(fā)服務器;再者就是,UDP可以更高效的利用網(wǎng)絡帶寬。

  · 數(shù)據(jù)鏈路兩端的設備是:DTE或DCE

  DTE(DataTerminalEquipment)數(shù)字終端設備:指一般的終端或是計算機??赡苁谴?、中、小型計算機,也可能是一臺只接收數(shù)據(jù)的打印機。

  DCE(DataCircuit-terminatingEquipment)數(shù)字通信設備:通常指調(diào)制解調(diào)器,多路復用器或數(shù)字設備。

  DTE,DCE的區(qū)別

  DCE一方提供時鐘,DTE不提供時鐘,但它依靠DCE提供的時鐘工作。比如PC機和MODEM之間的連接。PC機就是一個DTE,MODEM是一個DCE。DTE可以從硬件上區(qū)別它的接口為針式,DCE的接口為孔式。

  · Socket編程注意點

  客戶端(client):socket→connect→具體操作

  服務端(serve):socket→bind→listen→accept→具體操作

  (bind:端口綁定; listen:端口監(jiān)聽; accept:阻塞,等待客戶端connect)

  (socket:把TCP/IP協(xié)議隱藏在軟件接口后面)

  · P2P本質(zhì)上還是C/S模式,只不過交互的雙方既是服務器又是客戶端。

  · 路由匯聚:

  路由匯聚的“含義”是把一組路由匯聚為一個單個的路由。路由匯聚的最終結(jié)果和最明顯的好處是縮小網(wǎng)絡上的路由表的尺寸。這樣將減少與每一個路由跳有關的延遲,因為由于減少了路由登錄項數(shù)量,查詢路由表的平均時間將加快。路由匯聚的“用意”是當我們采用了一種體系化編址規(guī)劃后的一種用一個IP地址代表一組IP地址的集合的方法。



作者:黑馬程序員軟件測試培訓學院
首發(fā):http://www.pantone-color.com.cn/special/testzly/index.html

分享到:
在線咨詢 我要報名
和我們在線交談!