C 秋招記錄(五) 計算機網路

2021-10-11 08:38:11 字數 3104 閱讀 8648

9、客戶端不斷進行請求鏈結會怎樣?ddos(distributed denial of service)攻擊?

10、從輸入**到獲得頁面的過程

計算機網路、執行緒、程序相關問題

除了7、8、9都被問過

tcp的三次握手過程如下:

三次握手的原因:三次握手可以防止已經失效的連線請求報文突然又傳輸到伺服器端導致的伺服器資源浪費。例如,客戶端先傳送了乙個syn,但是由於網路阻塞,該syn資料報在某個節點長期滯留。然後客戶端又重傳syn資料報並正確建立tcp連線,然後傳輸完資料後關閉該連線。該連線釋放後失效的syn資料報才到達伺服器端。在二次握手的前提下,新的鏈結就建立了。由於client此時並未發出建立鏈結的請求,所以其不會理睬server的確認,也不與server通訊;而這時server一直在等待client的請求,這樣server就白白浪費了一定的資源。若採用「三次握手」,在這種情況下,由於server端沒有收到來自客戶端的確認,則就會知道client並沒有要求建立請求,就不會建立tcp的鏈結。

三次握手(我要和你建立鏈結,你真的要和我建立鏈結麼,我真的要和你建立鏈結,成功):

四次揮手過程如下:

c->fin->s

s->ack->c

s->fin->c

c->ack->s

四次揮手的原因:由於連線的關閉控制權在應用層,所以被動關閉的一方在接收到fin包時,tcp協議棧會直接傳送乙個ack確認包,優先關閉一端的通訊。然後通知應用層,由應用層決定什麼時候傳送fin包。應用層可以使用系統呼叫函式read==0來判斷對端是否關閉連線。

四次揮手(我要和你斷開鏈結;好的,斷吧。我也要和你斷開鏈結;好的,斷吧):

tcp (transmission control protocol)和udp(user datagram protocol)協議屬於傳輸層協議,它們之間的區別包括:

tcp是面向連線的,udp是無連線的;

tcp是可靠的,udp是不可靠的;

tcp只支援點對點通訊,udp支援一對

一、一對多、多對

一、多對多的通訊模式(廣播);

tcp是面向位元組流的,udp是面向報文的;

tcp有擁塞控制機制;udp沒有擁塞控制,適合**通訊;

tcp首部開銷(20個位元組)比udp的首部開銷(8個位元組)要大;

tcp提供一種面向連線的、可靠的位元組流服務。其中,面向連線意味著兩個使用tcp的應用(通常是乙個客戶和乙個伺服器)在彼此交換資料之前必須先建立乙個tcp連線。在乙個tcp連線中,僅有兩方進行彼此通訊;而位元組流服務意味著兩個應用程式通過tcp鏈結交換8bit位元組構成的位元組流,tcp不在位元組流中插入記錄識別符號。

對於可靠性,tcp通過以下方式進行保證:

計算機網路中的頻寬、交換結點中的快取及處理機等都是網路的資源。在某段時間,若對網路中某一資源的需求超過了該資源所能提供的可用部分,網路的效能就會變壞,這種情況就叫做擁塞。

擁塞控制就是 防止過多的資料注入網路中,這樣可以使網路中的路由器或鏈路不致過載。注意,擁塞控制和流量控制不同,前者是乙個全域性性的過程,而後者指點對點通訊量的控制。

擁塞控制的方法主要有以下四種:

採用快恢復演算法時,慢開始只在建立連線和網路超時才使用,達到什麼情況的時候開始減慢增長的速度?

採用慢開始和擁塞避免演算法的時候

採用快恢復和快重傳演算法的時候

區別:

1)http協議是以明文的方式在網路中傳輸資料,而https協議傳輸的資料則是經過tls加密後的,https具有更高的安全性

2)https在tcp三次握手階段之後,還需要進行ssl 的handshake,協商加密使用的對稱加密金鑰

3)https協議需要服務端申請證書,瀏覽器端安裝對應的根證書

4)http協議埠是80,https協議埠是443

https優點:

https傳輸資料過程中使用金鑰進行加密,所以安全性更高

https協議可以認證使用者和伺服器,確保資料傳送到正確的使用者和伺服器

https缺點:

https握手階段延時較高:由於在進行http會話之前還需要進行ssl握手,因此https協議握手階段延時增加

https部署成本高:一方面https協議需要使用證書來驗證自身的安全性,所以需要購買ca證書;另一方面由於採用https協議需要進行加解密的計算,占用cpu資源較多,需要的伺服器配置或數目高

對稱金鑰加密是指加密和解密使用同乙個金鑰的方式,這種方式存在的最大問題就是金鑰傳送問題,即如何安全地將金鑰發給對方;而非對稱加密是指使用一對非對稱金鑰,即公鑰和私鑰,公鑰可以隨意發布,但私鑰只有自己知道。傳送密文的一方使用對方的公鑰進行加密處理,對方接收到加密資訊後,使用自己的私鑰進行解密。

由於非對稱加密的方式不需要傳送用來解密的私鑰,所以可以保證安全性;但是和對稱加密比起來,它非常的慢,所以我們還是要用對稱加密來傳送訊息,但對稱加密所使用的金鑰我們可以通過非對稱加密的方式傳送出去。

http請求的常用方法有:get方法、post方法、head方法、put方法、delete方法、connect方法、options方法、trace方法。

http的常用方法

head方法與get方法相同,但沒有響應體,僅傳輸狀態行和標題部分。這對於恢復相應頭部編寫的元資料非常有用,而無需傳輸整個內容。

伺服器端會為每個請求建立乙個鏈結,並向其傳送確認報文,然後等待客戶端進行確認

1)、ddos 攻擊

2)、ddos 預防 ( 沒有徹底**的辦法,除非不使用tcp )

備戰秋招 計算機網路(二)

tcp tcp 特點 tcp 是面向連線的運輸層協議,乙個應用程序在向另乙個程序傳送資料之前,兩個程序必須先建立 tcp連線,傳送某些預備報文段,建立確保資料傳輸的引數。作為 tcp 連線建立的一部分,連線雙方都將初始化與 tcp 連線相關的許多狀態變數。這種連線不是電路交換網路中的端到端電路這種物...

2021秋招計算機網路面試準備

ip位址分類 osi與tcp ip各層的結構與功能 ping的整個過程。icmp報文是什麼?tcp與udp區別及其各自優缺點 tcp和udp資料報格式 tcp擁塞控制和流量控制 3次握手和4次揮手過程 time wait狀態的作用,造成的後果,以及如何避免?解釋arp,dns 滑動視窗與回退n針協議...

計算機網路 五

鏈路層可能提供的服務包括 在傳送節點,為了避免位元差錯,使用 差錯檢測和糾錯位元 edc 來增強資料d 差錯檢測和糾正技術有時使接收方檢測到已經出現的位元差錯,但並非總是這樣。即使採用差錯檢測位元,也還是可能有未檢出位元差錯的情況 因此,主要是選擇乙個差錯檢測方案,使得這種事件發生的概率很小。可以使...