計算機網路面試高頻

2021-10-07 08:41:54 字數 1435 閱讀 2490

7. arq協議?

8. tcp的流量控制

9. tcp擁塞控制

10.tcp長連線和短連線

11. tcp粘包、拆包及解決辦法

tcp五層模型相比osi七層模型,將osi的應用層、表示層和會話層合為一層:應用層,其他不變。

都是傳輸層的協議,用來建立可靠的通訊傳輸鏈結

udp僅提供了最基本的資料傳輸功能,至於傳輸時連線的建立和斷開,傳輸可靠性的保證等這些udp不關心,都交給了udp上層的應用程式去處理,自己僅提供傳輸層協議的最基本功能。

tcp作為一種面向連線的協議,只有在確認通訊對端存在時才會傳送資料,建立、斷開連線。還採取了保證傳輸可靠性的措施

區別:

tcp的三次握手:

傳送資料前通過「三次握手」的方式建立通訊連線,建立這個連線的目的是讓源端和目的端確認一下雙方的傳送報文能力和接收報文能力是正常的

三次握手是建立tcp連線,四次揮手是斷開tcp連線,即客戶端和服務端總共要收發4個包才能確定斷開連線。

tcp的三次握手、四次揮手

自動重傳請求(automatic-repeat-request)

傳送方在傳送一段時間後沒有收到確認回執,通常會重新傳送。

流量控制是為了控制傳送端傳送資料的速率,來保證接收端成功接收所有應接收的分組,否則會觸發自動重傳機制造成網路流量的浪費

具體地:

接收端會通知傳送端自己能接收的資料大小,傳送端傳送的資料量不會超過這個大小,成為視窗,在tcp首部有乙個欄位來表示,該值越大吞吐量越大

計算機網路處在乙個共享的環境,通訊開始時如果立即把大量資料注入到網路,可能會引起網路阻塞。

常見策略:

慢啟動、擁塞避免、快重傳、快恢復

慢啟動:

通訊開始時,定義乙個「擁塞視窗」,視窗大小為1,意思是一開始只傳送乙個分組,之後每收到乙個確認回執,擁塞視窗的大小就加1,傳送端在傳送資料時,min(擁塞視窗、接收端流量控制視窗),實際傳送的資料量比這個min還要小。

短連線:

一次讀寫完成,客戶端向服務端傳送資料,服務端回應,然後任何一方都可發起close操作。

但一般是客戶端先發起。

長連線:

完成一次讀寫後,之間的連線不會主動關閉,後續的讀寫操作會繼續使用這個連線。

一般是服務端採取一些關閉策略來關閉連線。

客戶端連續向服務端傳送資料報時,服務端接收到的資料會出現兩個資料報粘在一起的情況

原因:

因此在使用tcp傳輸時,才有粘包或拆包現象。

udp 是基於報文傳送的,udp首部採用了 16bit 來指示 udp 資料報文的長度,因此在應用層能很好的將不同的資料報文區分開,從而避免粘包和拆包的問題。

tcp 本身是面向位元組流的,無法理解上層的業務資料,所以在底層是無法保證資料報不被拆分和重組的,這個問題只能通過上層的應用協議棧設計來解決,根據業界的主流協議的解決方案,歸納如下: 參考

面試 計算機網路 計算機網路概述

隨著技術的發展,電信網路和有線電視網路都逐漸融入了現代計算機網路的技術,這就產生了 網路融合 的概念。連通性 共享 網際網路的拓撲結構雖然非常複雜,並且在地理上覆蓋了全球,但從其工作方式上看,可以劃分為以下的兩大塊 2 核心部分 由大量網路和連線這些網路的路由器組成。這部分為邊緣部分提供服務 提供連...

計算機網路面試

1.osi參考模型及各層作用。開放式系統互聯模型的作用是為了解決異種網路互聯時引起的相容性問題,其最主要的功能是幫助不同的主機實現資料傳輸。最大的優點是將服務 協議 介面這三個概念明確的分開來。1 物理層 在通道上傳輸原始位元流。2 資料鏈路層 加強物理層傳輸原始位元流同能,為保證傳輸,從網路層接受...

計算機網路面試

採用兩次握手,那麼若client向server發起的包a1如果在傳輸鏈路上遇到的故障,導致傳輸到server的時間相當滯後,在這個時間段由於client沒有收到server的對於包a1的確認,那麼就會重傳乙個包a2,假設伺服器正常收到了a2的包,然後返回確認b2包。由於沒有第三次握手,這個時候cli...