国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運(yùn)營 > 面試匯總(三):計算機(jī)網(wǎng)絡(luò)常見面試總結(jié)(一)

面試匯總(三):計算機(jī)網(wǎng)絡(luò)常見面試總結(jié)(一)

時間:2023-06-19 01:12:02 | 來源:網(wǎng)站運(yùn)營

時間:2023-06-19 01:12:02 來源:網(wǎng)站運(yùn)營

面試匯總(三):計算機(jī)網(wǎng)絡(luò)常見面試總結(jié)(一):

前言

上一篇文章我們介紹了在面試中數(shù)據(jù)庫常見的面試題。今天我們給大家介紹在面試中,計算機(jī)網(wǎng)絡(luò)常見的面試題。計算機(jī)網(wǎng)絡(luò)在計算機(jī)行業(yè)中是一門最基礎(chǔ)的技術(shù),無論是在開發(fā)項目還是在算法崗,項目的應(yīng)用最終還是落實在用戶的使用,網(wǎng)絡(luò)的連接是至關(guān)重要的,因此,這就要求我們需要對計算機(jī)網(wǎng)絡(luò)有一定的了解。接下來,這篇文章給大家介紹在面試中常見的計算機(jī)網(wǎng)絡(luò)的知識點(diǎn)。當(dāng)然,開發(fā)和算法崗對計算機(jī)網(wǎng)絡(luò)的要求程度不同,相對而言,開發(fā)對計算機(jī)網(wǎng)絡(luò)的要求其實更高一些。但是一些基礎(chǔ)、核心、常見的問題要求我們要掌握。

面試題及參考答案

1、請你說一下TCP怎么保證可靠性,并且簡述一下TCP建立連接和斷開連接的過程

TCP保證可靠性:

(1)序列號、確認(rèn)應(yīng)答、超時重傳:數(shù)據(jù)到達(dá)接收方,接收方需要發(fā)出一個確認(rèn)應(yīng)答,表示已經(jīng)收到該數(shù)據(jù)段,并且確認(rèn)序號會說明了它下一次需要接收的數(shù)據(jù)序列號。如果發(fā)送發(fā)遲遲未收到確認(rèn)應(yīng)答,那么可能是發(fā)送的數(shù)據(jù)丟失,也可能是確認(rèn)應(yīng)答丟失,這時發(fā)送方在等待一定時間后會進(jìn)行重傳。這個時間一般是2RTT(報文段往返時間)+一個偏差值。

(2)窗口控制與高速重發(fā)控制/快速重傳(重復(fù)確認(rèn)應(yīng)答):TCP會利用窗口控制來提高傳輸速度,意思是在一個窗口大小內(nèi),不用一定要等到應(yīng)答才能發(fā)送下一段數(shù)據(jù),窗口大小就是無需等待確認(rèn)而可以繼續(xù)發(fā)送數(shù)據(jù)的最大值。如果不使用窗口控制,每一個沒收到確認(rèn)應(yīng)答的數(shù)據(jù)都要重發(fā)。使用窗口控制,如果數(shù)據(jù)段1001-2000丟失,后面數(shù)據(jù)每次傳輸,確認(rèn)應(yīng)答都會不停地發(fā)送序號為1001的應(yīng)答,表示我要接收1001開始的數(shù)據(jù),發(fā)送端如果收到3次相同應(yīng)答,就會立刻進(jìn)行重發(fā);但還有種情況有可能是數(shù)據(jù)都收到了,但是有的應(yīng)答丟失了,這種情況不會進(jìn)行重發(fā),因為發(fā)送端知道,如果是數(shù)據(jù)段丟失,接收端不會放過它的,會瘋狂向它提醒……

(3)擁塞控制:如果把窗口定的很大,發(fā)送端連續(xù)發(fā)送大量的數(shù)據(jù),可能會造成網(wǎng)絡(luò)的擁堵(大家都在用網(wǎng),你在這狂發(fā),吞吐量就那么大,當(dāng)然會堵),甚至造成網(wǎng)絡(luò)的癱瘓。所以TCP在為了防止這種情況而進(jìn)行了擁塞控制。慢啟動:定義擁塞窗口,一開始將該窗口大小設(shè)為1,之后每次收到確認(rèn)應(yīng)答(經(jīng)過一個rtt),將擁塞窗口大小2。擁塞避免:設(shè)置慢啟動閾值,一般開始都設(shè)為65536。擁塞避免是指當(dāng)擁塞窗口大小達(dá)到這個閾值,擁塞窗口的值不再指數(shù)上升,而是加法增加(每次確認(rèn)應(yīng)答/每個rtt,擁塞窗口大小+1),以此來避免擁塞。將報文段的超時重傳看做擁塞,則一旦發(fā)生超時重傳,我們需要先將閾值設(shè)為當(dāng)前窗口大小的一半,并且將窗口大小設(shè)為初值1,然后重新進(jìn)入慢啟動過程。快速重傳:在遇到3次重復(fù)確認(rèn)應(yīng)答(高速重發(fā)控制)時,代表收到了3個報文段,但是這之前的1個段丟失了,便對它進(jìn)行立即重傳。然后,先將閾值設(shè)為當(dāng)前窗口大小的一半,然后將擁塞窗口大小設(shè)為慢啟動閾值+3的大小。這樣可以達(dá)到:在TCP通信時,網(wǎng)絡(luò)吞吐量呈現(xiàn)逐漸的上升,并且隨著擁堵來降低吞吐量,再進(jìn)入慢慢上升的過程,網(wǎng)絡(luò)不會輕易的發(fā)生癱瘓。

TCP建立連接和斷開連接的過程如圖所示:

  1. Client將標(biāo)志位SYN置為1,隨機(jī)產(chǎn)生一個值seq=J,并將該數(shù)據(jù)包發(fā)送給Server,Client進(jìn)入SYN_SENT狀態(tài),等待Server確認(rèn)。
  2. Server收到數(shù)據(jù)包后由標(biāo)志位SYN=1知道Client請求建立連接,Server將標(biāo)志位SYN和ACK都置為1,ack=J+1,隨機(jī)產(chǎn)生一個值seq=K,并將該數(shù)據(jù)包發(fā)送給Client以確認(rèn)連接請求,Server進(jìn)入SYN_RCVD狀態(tài)。
  3. Client收到確認(rèn)后,檢查ack是否為J+1,ACK是否為1,如果正確則將標(biāo)志位ACK置為1,ack=K+1,并將該數(shù)據(jù)包發(fā)送給Server,Server檢查ack是否為K+1,ACK是否為1,如果正確則連接建立成功,Client和Server進(jìn)入ESTABLISHED狀態(tài),完成三次握手,隨后Client與Server之間可以開始傳輸數(shù)據(jù)了。
1.1 請你說一說TCP的三次握手和四次揮手的過程及原因

三次握手的原因: 三次握手可以防止已經(jīng)失效的連接請求報文突然又傳輸?shù)椒?wù)器端導(dǎo)致的服務(wù)器資源浪費(fèi)。例如,客戶端先發(fā)送了一個SYN,但是由于網(wǎng)絡(luò)阻塞,該SYN數(shù)據(jù)包在某個節(jié)點(diǎn)長期滯留。然后客戶端又重傳SYN數(shù)據(jù)包并正確建立TCP連接,然后傳輸完數(shù)據(jù)后關(guān)閉該連接。該連接釋放后失效的SYN數(shù)據(jù)包才到達(dá)服務(wù)器端。在二次握手的前提下,服務(wù)器端會認(rèn)為這是客戶端發(fā)起的又一次請求,然后發(fā)送SYN ,并且在服務(wù)器端創(chuàng)建socket套接字,一直等待客戶端發(fā)送數(shù)據(jù)。但是由于客戶端并沒有發(fā)起新的請求,所以會丟棄服務(wù)端的SYN 。此時服務(wù)器會一直等待客戶端發(fā)送數(shù)據(jù)從而造成資源浪費(fèi)。
四次揮手的原因: 由于連接的關(guān)閉控制權(quán)在應(yīng)用層,所以被動關(guān)閉的一方在接收到FIN包時,TCP協(xié)議棧會直接發(fā)送一個ACK確認(rèn)包,優(yōu)先關(guān)閉一端的通信。然后通知應(yīng)用層,由應(yīng)用層決定什么時候發(fā)送FIN包。應(yīng)用層可以使用系統(tǒng)調(diào)用函數(shù)read==0來判斷對端是否關(guān)閉連接。
1.2 請你說一說TCP擁塞控制?以及達(dá)到什么情況的時候開始減慢增長的速度?

擁塞控制是防止過多的數(shù)據(jù)注入網(wǎng)絡(luò),使得網(wǎng)絡(luò)中的路由器或者鏈路過載。流量控制是點(diǎn)對點(diǎn)的通信量控制,而擁塞控制是全局的網(wǎng)絡(luò)流量整體性的控制。發(fā)送雙方都有一個擁塞窗口——cwnd。
1、慢開始: 最開始發(fā)送方的擁塞窗口為1,由小到大逐漸增大發(fā)送窗口和擁塞窗口。每經(jīng)過一個傳輸輪次,擁塞窗口cwnd加倍。當(dāng)cwnd超過慢開始門限,則使用擁塞避免算法,避免cwnd增長過大。
2、擁塞避免: 每經(jīng)過一個往返時間RTT,cwnd就增長1。另外在慢開始和擁塞避免的過程中,一旦發(fā)現(xiàn)網(wǎng)絡(luò)擁塞,就把慢開始門限設(shè)為當(dāng)前值的一半,并且重新設(shè)置cwnd為1,重新慢啟動。(乘法減小,加法增大)
3、快重傳: 接收方每次收到一個失序的報文段后就立即發(fā)出重復(fù)確認(rèn),發(fā)送方只要連續(xù)收到三個重復(fù)確認(rèn)就立即重傳(盡早重傳未被確認(rèn)的報文段)。
4、快恢復(fù): 當(dāng)發(fā)送方連續(xù)收到了三個重復(fù)確認(rèn),就乘法減半(慢開始門限減半),將當(dāng)前的cwnd設(shè)置為慢開始門限,并且采用擁塞避免算法(連續(xù)收到了三個重復(fù)請求,說明當(dāng)前網(wǎng)絡(luò)可能沒有擁塞)。
采用快恢復(fù)算法時,慢開始只在建立連接和網(wǎng)絡(luò)超時才使用。

  1. 一旦cwnd>慢開始門限,就采用擁塞避免算法,減慢增長速度
  2. 一旦出現(xiàn)丟包的情況,就重新進(jìn)行慢開始,減慢增長速度
  1. 一旦cwnd>慢開始門限,就采用擁塞避免算法,減慢增長速度
  2. 一旦發(fā)送方連續(xù)收到了三個重復(fù)確認(rèn),就采用擁塞避免算法,減慢增長速度
1.3 請問tcp握手為什么兩次不可以?為什么不用四次?

1.4 請你說一下阻塞,非阻塞,同步,異步

1.5 請你說一說TCP的流量控制

滑動窗口機(jī)制:
滑動窗口協(xié)議的基本原理就是在任意時刻,發(fā)送方都維持了一個連續(xù)的允許發(fā)送的幀的序號,稱為發(fā)送窗口;同時,接收方也維持了一個連續(xù)的允許接收的幀的序號,稱為接收窗口。發(fā)送窗口和接收窗口的序號的上下界不一定要一樣,甚至大小也可以不同。不同的滑動窗口協(xié)議窗口大小一般不同。發(fā)送方窗口內(nèi)的序列號代表了那些已經(jīng)被發(fā)送,但是還沒有被確認(rèn)的幀,或者是那些可以被發(fā)送的幀。

1.6 tcp拆包組裝包是如何實現(xiàn)的

拆包
對于拆包目前常用的是以下兩種方式:
1、動態(tài)緩沖區(qū)暫存方式。之所以說緩沖區(qū)是動態(tài)的是因為當(dāng)需要緩沖的數(shù)據(jù)長度超出緩沖區(qū)的長度時會增大緩沖區(qū)長度。
大概過程描述如下:
A 為每一個連接動態(tài)分配一個緩沖區(qū),同時把此緩沖區(qū)和 SOCKET 關(guān)聯(lián),常用的是通過結(jié)構(gòu)體關(guān)聯(lián)。
B 當(dāng)接收到數(shù)據(jù)時首先把此段數(shù)據(jù)存放在緩沖區(qū)中。
C 判斷緩存區(qū)中的數(shù)據(jù)長度是否夠一個包頭的長度,如不夠,則不進(jìn)行拆包操作。
D 根據(jù)包頭數(shù)據(jù)解析出里面代表包體長度的變量。
E 判斷緩存區(qū)中除包頭外的數(shù)據(jù)長度是否夠一個包體的長度,如不夠,則不進(jìn)行拆包操作。
F 取出整個數(shù)據(jù)包,這里的"取"的意思是不光從緩沖區(qū)中拷貝出數(shù)據(jù)包,而且要把此數(shù)據(jù)包從緩存區(qū)中刪除掉。刪除的辦法就是把此包后面的數(shù)據(jù)移動到緩沖區(qū)的起始地址。
這種方法有兩個缺點(diǎn):
1)為每個連接動態(tài)分配一個緩沖區(qū)增大了內(nèi)存的使用;
2)有三個地方需要拷貝數(shù)據(jù),一個地方是把數(shù)據(jù)存放在緩沖區(qū),一個地方是把完整的數(shù)據(jù)包從緩沖區(qū)取出來,一個地方是把數(shù)據(jù)包從緩沖區(qū)中刪除。這種拆包的改進(jìn)方法會解決和完善部分缺點(diǎn)。
2、利用底層的緩沖區(qū)來進(jìn)行拆包
由于TCP也維護(hù)了一個緩沖區(qū),所以我們完全可以利用TCP的緩沖區(qū)來緩存我們的數(shù)據(jù),這樣一來就不需要為每一個連接分配一個緩沖區(qū)了。另一方面我們知道 recv 或者 wsarecv 都有一個參數(shù),用來表示我們要接收多長長度的數(shù)據(jù)。利用這兩個條件我們就可以對第一種方法進(jìn)行優(yōu)化了。
對于阻塞 SOCKET 來說,我們可以利用一個循環(huán)來接收包頭長度的數(shù)據(jù),然后解析出代表包體長度的那個變量,再用一個循環(huán)來接收包體長度的數(shù)據(jù)。

2、請你說一說TCP的模型,狀態(tài)轉(zhuǎn)移

首先四層TCP/IP模型如下:

其狀態(tài)轉(zhuǎn)移圖如下:

3、請回答一下HTTP和HTTPS的區(qū)別,以及HTTPS有什么缺點(diǎn)?

  1. HTTPS握手階段延時較高:由于在進(jìn)行HTTP會話之前還需要進(jìn)行SSL握手,因此HTTPS協(xié)議握手階段延時增加
  2. HTTPS部署成本高:一方面HTTPS協(xié)議需要使用證書來驗證自身的安全性,所以需要購買CA證書;另一方面由于采用HTTPS協(xié)議需要進(jìn)行加解密的計算,占用CPU資源較多,需要的服務(wù)器配置或數(shù)目高
3.1 請你講講HTTP1.1和1.0的區(qū)別

主要區(qū)別主要體現(xiàn)在:
緩存處理,在HTTP1.0中主要使用header里的If-Modified-Since,Expires來做為緩存判斷的標(biāo)準(zhǔn),HTTP1.1則引入了更多的緩存控制策略例如Entity tag,If-Unmodified-Since, If-Match, If-None-Match等更多可供選擇的緩存頭來控制緩存策略。
帶寬優(yōu)化及網(wǎng)絡(luò)連接的使用,HTTP1.0中,存在一些浪費(fèi)帶寬的現(xiàn)象,例如客戶端只是需要某個對象的一部分,而服務(wù)器卻將整個對象送過來了,并且不支持?jǐn)帱c(diǎn)續(xù)傳功能,HTTP1.1則在請求頭引入了range頭域,它允許只請求資源的某個部分,即返回碼是206(Partial Content),這樣就方便了開發(fā)者自由的選擇以便于充分利用帶寬和連接。
錯誤通知的管理,在HTTP1.1中新增了24個錯誤狀態(tài)響應(yīng)碼,如409(Conflict)表示請求的資源與資源的當(dāng)前狀態(tài)發(fā)生沖突;410(Gone)表示服務(wù)器上的某個資源被永久性的刪除。
Host頭處理,在HTTP1.0中認(rèn)為每臺服務(wù)器都綁定一個唯一的IP地址,因此,請求消息中的URL并沒有傳遞主機(jī)名(hostname)。但隨著虛擬主機(jī)技術(shù)的發(fā)展,在一臺物理服務(wù)器上可以存在多個虛擬主機(jī)(Multi-homed Web Servers),并且它們共享一個IP地址。HTTP1.1的請求消息和響應(yīng)消息都應(yīng)支持Host頭域,且請求消息中如果沒有Host頭域會報告一個錯誤(400 Bad Request)。
長連接,HTTP 1.1支持長連接(PersistentConnection)和請求的流水線(Pipelining)處理,在一個TCP連接上可以傳送多個HTTP請求和響應(yīng),減少了建立和關(guān)閉連接的消耗和延遲,在HTTP1.1中默認(rèn)開啟Connection: keep-alive,一定程度上彌補(bǔ)了HTTP1.0每次請求都要創(chuàng)建連接的缺點(diǎn)。

4、請你說一說HTTP返回碼

4.1 請你來說一說HTTP協(xié)議

4.2 請你來說一下GET和POST的區(qū)別

4.3 請你說一下HTTP協(xié)議會話結(jié)束標(biāo)志怎么截出來?

看tcp連接是否有斷開的四部揮手階段。
4.4 請你說明一下,SSL四次握手的過程

4.5 請談一下,你知道的HTTP請求,并說明應(yīng)答碼502和504的區(qū)別

OPTIONS:返回服務(wù)器針對特定資源所支持的HTTP請求方法。也可以利用向Web服務(wù)器發(fā)送’*'的請求來測試服務(wù)器的功能性。
HEAD:向服務(wù)器索要與GET請求相一致的響應(yīng),只不過響應(yīng)體將不會被返回。這一方法可以在不必傳輸整個響應(yīng)內(nèi)容的情況下,就可以獲取包含在響應(yīng)消息頭中的元信息。
GET:向特定的資源發(fā)出請求。
POST:向指定資源提交數(shù)據(jù)進(jìn)行處理請求(例如提交表單或者上傳文件)。數(shù)據(jù)被包含在請求體中。POST請求可能會導(dǎo)致新的資源的創(chuàng)建和/或已有資源的修改。
PUT:向指定資源位置上傳其最新內(nèi)容。
DELETE:請求服務(wù)器刪除Request-URI所標(biāo)識的資源。
TRACE:回顯服務(wù)器收到的請求,主要用于測試或診斷。
CONNECT:HTTP/1.1協(xié)議中預(yù)留給能夠?qū)⑦B接改為管道方式的代理服務(wù)器。
雖然HTTP的請求方式有8種,但是我們在實際應(yīng)用中常用的也就是get和post,其他請求方式也都可以通過這兩種方式間接的來實現(xiàn)。
502:作為網(wǎng)關(guān)或者代理工作的服務(wù)器嘗試執(zhí)行請求時,從上游服務(wù)器接收到無效的響應(yīng)。
504:作為網(wǎng)關(guān)或者代理工作的服務(wù)器嘗試執(zhí)行請求時,未能及時從上游服務(wù)器(URI標(biāo)識出的服務(wù)器,例如HTTP、FTP、LDAP)或者輔助服務(wù)器(例如DNS)收到響應(yīng)。
4.6 請求方法head特性

Head只請求頁面的首部,head方法和get方法相同,只不過服務(wù)器響應(yīng)時不會返回消息體,一個head請求的響應(yīng)中,http頭中包含的元信息應(yīng)該和一個get請求的響應(yīng)消息相同,這種方法可以用來獲取請求中隱含的元信息,而不用傳輸實體本身,這個也經(jīng)常用來測試超鏈接的有效性和可用性,

4.7 HTTP緩存機(jī)制

4.8 請你回答一下HTTP用的什么連接?

在HTTP/1.0中,默認(rèn)使用的是短連接。也就是說,瀏覽器和服務(wù)器每進(jìn)行一次HTTP操作,就建立一次連接,但任務(wù)結(jié)束就中斷連接。如果客戶端瀏覽器訪問的某個HTML或其他類型的 Web頁中包含有其他的Web資源,如JavaScript文件、圖像文件、CSS文件等;當(dāng)瀏覽器每遇到這樣一個Web資源,就會建立一個HTTP會話。
但從HTTP/1.1起,默認(rèn)使用長連接,用以保持連接特性。使用長連接的HTTP協(xié)議,會在響應(yīng)頭有加入這行代碼:Connection:keep-alive
在使用長連接的情況下,當(dāng)一個網(wǎng)頁打開完成后,客戶端和服務(wù)器之間用于傳輸HTTP數(shù)據(jù)的 TCP連接不會關(guān)閉,如果客戶端再次訪問這個服務(wù)器上的網(wǎng)頁,會繼續(xù)使用這一條已經(jīng)建立的連接。Keep-Alive不會永久保持連接,它有一個保持時間,可以在不同的服務(wù)器軟件(如Apache)中設(shè)定這個時間。實現(xiàn)長連接要客戶端和服務(wù)端都支持長連接。
4.9 請你說一說http rest

REST(Representational State Transfer)一種輕量級的Web Service架構(gòu)??梢酝耆ㄟ^HTTP協(xié)議實現(xiàn)。其實現(xiàn)和操作比SOAP和XML-RPC更為簡潔,還可以利用緩存Cache來提高響應(yīng)速度,性能、效率和易用性上都優(yōu)于SOAP協(xié)議。REST架構(gòu)對資源的操作包括獲取、創(chuàng)建、修改和刪除資源的操作對應(yīng)HTTP協(xié)議提供的GET、POST、PUT和DELETE方法。REST提供了一組架構(gòu)約束,當(dāng)作為一個整體來應(yīng)用時,強(qiáng)調(diào)組件交互的可伸縮性、接口的通用性、組件的獨(dú)立部署、以及用來減少交互延遲、增強(qiáng)安全性、封裝遺留系統(tǒng)的中間組件。

4.10 請你說一下HTTP的報文段是什么樣的?

http請求報文:

4.11 請你說一下https中SSL層原理

SSL利用數(shù)據(jù)加密、身份驗證和消息完整性驗證機(jī)制,為網(wǎng)絡(luò)上數(shù)據(jù)的傳輸提供安全性保證。SSL支持各種應(yīng)用層協(xié)議。由于SSL位于應(yīng)用層和傳輸層之間,所以可以為任何基于TCP等可靠連接的應(yīng)用層協(xié)議提供安全性保證。

MAC算法要求通信雙方具有相同的密鑰,否則MAC值驗證將會失敗。因此,利用MAC算法驗證消息完整性之前,需要在通信兩端部署相同的密鑰。

實際上,SSL客戶端發(fā)送給SSL服務(wù)器的密鑰不能直接用來加密數(shù)據(jù)或計算MAC值,該密鑰是用來計算對稱密鑰和MAC密鑰的信息,稱為premaster secret。SSL客戶端和SSL服務(wù)器利用premaster secret計算出相同的主密鑰(master secret),再利用master secret生成用于對稱密鑰算法、MAC算法等的密鑰。premaster secret是計算對稱密鑰、MAC算法密鑰的關(guān)鍵。

5.利用PKI保證公鑰的真實性
PKI通過數(shù)字證書來發(fā)布用戶的公鑰,并提供了驗證公鑰真實性的機(jī)制。數(shù)字證書(簡稱證書)是一個包含用戶的公鑰及其身份信息的文件,證明了用戶與公鑰的關(guān)聯(lián)。數(shù)字證書由權(quán)威機(jī)構(gòu)——CA簽發(fā),并由CA保證數(shù)字證書的真實性。
SSL客戶端把密鑰加密傳遞給SSL服務(wù)器之前,SSL服務(wù)器需要將從CA獲取的證書發(fā)送給SSL客戶端,SSL客戶端通過PKI判斷該證書的真實性。如果該證書確實屬于SSL服務(wù)器,則利用該證書中的公鑰加密密鑰,發(fā)送給SSL服務(wù)器。
驗證SSL服務(wù)器/SSL客戶端的身份之前,SSL服務(wù)器/SSL客戶端需要將從CA獲取的證書發(fā)送給對端,對端通過PKI判斷該證書的真實性。如果該證書確實屬于SSL服務(wù)器/SSL客戶端,則對端利用該證書中的公鑰驗證SSL服務(wù)器/SSL客戶端的身份。

4.12 請你說說HTTP常見頭

1、Accept:text/html, application/xhtml+xml, application/xml;q=0.9,
image/webp, image/apng,/; q=0.8 作用:向服務(wù)器申明客戶端(瀏覽器)可以接受的媒體類型(MIME)的資源
解釋:瀏覽器可以接受text/html、application/xhtml+xml、application/xml類型,通配符*/*
表示任意類型的數(shù)據(jù)。并且瀏覽器按照該順序進(jìn)行接收。( text/html —> application/xhtml+xml —>application/xml)
2、Accept-encoding: gzip, deflate, br
作用:向服務(wù)器申明客戶端(瀏覽器)接收的編碼方法,通常為壓縮方法 解釋:瀏覽器支持采用經(jīng)過gzip,deflate 或 br 壓縮過的資源
3、Accept-Language:en-US,en;q=0.9,zh-CN;q=0.8,zh;q=0.7
作用:向服務(wù)器申明客戶端(瀏覽器)接收的語言 解釋:瀏覽器能夠接受en-US, en 和 zh-CN 三種語言,其中 en-US 的權(quán)重最高( q 最高為1,最低為 0),服務(wù)器優(yōu)先返回 en-US 語言 延伸:語言與字符集的區(qū)別:zh-C為漢語,漢語中有許多的編碼:gbk2312 等
4、Cache-control: max-age=0
作用:控制瀏覽器的緩存,常見值為private、no-cache、max-age、alidate,默認(rèn)為
private,根據(jù)瀏覽器查看頁面不同的方式來進(jìn)行區(qū)別 解釋:瀏覽器在訪問了該頁面后,不再會訪問服務(wù)器
5、Cookie:
作用:告訴服務(wù)器關(guān)于Session 的信息,存儲讓服務(wù)器辨識用戶身份的信息。
6、Refer
作用:告訴服務(wù)器該頁面從哪個頁面鏈接的
7、Upgrade-insecure-requests
作用:申明瀏覽器支持從http 請求自動升級為 https
請求,并且在以后發(fā)送請求的時候都使用 https 解釋:當(dāng)頁面中包含大量的http
資源的時候(圖片、iframe),如果服務(wù)器發(fā)現(xiàn)一旦存在上述的響應(yīng)頭的時候,會在加載 http 資源的時候自動替換為 https 請求
8、User-agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132
Safari/537.36 作用:向服務(wù)器發(fā)送瀏覽器的版本、系統(tǒng)、應(yīng)用程序的信息。 解釋:Chrome 瀏覽器的版本信息為
63.0.3239.132,并將自己偽裝成 Safari,使用的是 WebKit 引擎,WebKit偽裝成 KHTML,KHTML偽裝成Gecko(偽裝是為了接收那些為Mozilla、safari、gecko編寫的界面)
延伸:可以隨便填(但不應(yīng)該隨便填)不過一般用于統(tǒng)計。
9、X-Chrome-UMA-Enabled、X-Client-Data :與Chrome 瀏覽器相關(guān)的數(shù)據(jù) Response Headers
4.12 請你說一說http緩存問題,緩存壽命,以及怎么判斷文件在服務(wù)器是否更改的

1 緩存的類型:
緩存是一種保存資源副本并在下次請求中直接使用該副本的技術(shù),緩存能夠節(jié)約網(wǎng)絡(luò)資源,提升頁面響應(yīng)速度。常見的緩存類型分為共享緩存和私有緩存
1.1 私有緩存
私有緩存只能用于單獨(dú)用戶,常見的瀏覽器緩存便是私有緩存。私有緩存能夠存儲用戶通過http下載過的文檔,從而在用戶再次訪問時直接提供給用戶,而不用向服務(wù)器發(fā)送請求。
1.2 共享緩存
共享緩存能夠被多個用戶使用,常用的web代理中便使用的共享緩存 緩存壽命 緩存壽命的計算的依據(jù)依次是: 請求頭中的Cache-Control: max-age=N。相應(yīng)的緩存壽命即為 N,從設(shè)置開始,N秒之后過期。
Expires屬性,Expires屬性的值為過期的時間點(diǎn),在這個時間點(diǎn)后,該緩存被認(rèn)為過期
Last-Modified信息。緩存的壽命為頭里面 Date表示的事件點(diǎn)減去 Last-Modified的時間點(diǎn)的結(jié)果乘以 10%
判斷文件是否更改可以看文件時間戳
4.14 http的數(shù)據(jù)段包括什么?http 為什么是無狀態(tài)的,ip地址的abcd類是怎樣分的,ABCD分層協(xié)議為什么如此分層,什么是長連接和短鏈接

總結(jié)

由于計算機(jī)網(wǎng)絡(luò)面試的內(nèi)容較多,因此本文以及接下來的一篇文章的對面試中常見的計算機(jī)網(wǎng)絡(luò)問題進(jìn)行了簡單的總結(jié),一方面是為了方便自己以后面試的復(fù)習(xí),另外也是給大家再次面試相關(guān)崗位的時候提供復(fù)習(xí)方向以及思路解答。這里就需要我們對計算機(jī)網(wǎng)絡(luò)有一個較為深層次的理解。于是,我們在準(zhǔn)備的時候,首先就應(yīng)該夯實基礎(chǔ),只有這樣才能在眾多的面試者中脫穎而出。最后希望大家不斷進(jìn)步,都能盡早拿到自己比較滿意的offer!?。。±^續(xù)加油,未來可期!?。。?br>

關(guān)鍵詞:總結(jié),計算機(jī),匯總,網(wǎng)絡(luò)

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉