1、簡述osi七層模型和tcp/ip五層模型
osi七層模型
層分層名稱
功能資料協議單元(pdu)例7
應用層為用用軟體而設的介面,以設定和另一應用軟體之間的通訊
訊息http、https、ftp、ssh等
6表示層
把資料轉換為能與接受者的系統格式相容並合適傳輸的格式
訊息文字、影象、聲音、加密、壓縮等
5會話層
負責在資料傳輸過程中設定和維護電腦網路中另外兩台主機之間的通訊連線
訊息會話管理
4傳輸層
定義傳輸資料的協議埠號,以及流控和差錯校驗
資料段tcp、udp
3網路層
進行邏輯位址定址,實現不同網路之間的路徑選擇
資料報(報)
ip、igmp、icmp
2資料鏈路層
建立邏輯連線、進行硬體位址定址、差錯校驗等功能
資料幀1
物理層建立、維護、斷開物理連線
位元針腳、電壓、集線器、中繼器、網絡卡
tcp/ip五層模型
層分層名稱
功能資料協議單元(pdu)例5
應用層osi模型上三層功能訊息4
傳輸層定義傳輸資料的協議埠號,以及流控和差錯校驗
資料段tcp、udp
3網路互聯層
進行邏輯位址定址,實現不同網路之間的路徑選擇
資料報(報)
ip、igmp、icmp
2資料鏈路層
建立邏輯連線、進行硬體位址定址、差錯校驗等功能
資料幀1
物理層建立、維護、斷開物理連線
位元針腳、電壓、集線器、中繼器、網絡卡
2、總結描述tcp三次握手四次揮手
tcp三次握手
客戶端和服務端都處於closed
狀態。
服務端監聽某個埠,進入listen
狀態。
客戶端發起連線,傳送syn,自己進入syn-sent
狀態。
服務端接受syn,返回syn和ack(對應客戶端的syn),進入syn-rcvd
狀態。
客戶端接受syn和ack,返回ack給服務端,進入establishe
d狀態。
服務端接受到ack之後,也進入到established
狀態。
三次握手完成,雙方開始資料傳輸。
四次揮手
剛開始雙方處於established
狀態。
客戶端要斷開了,向服務端傳送fin
報文傳送後客戶端變成了fin-wait-1
狀態。這時候客戶端同時也變成了half-close(半關閉)
狀態,即無法向服務端傳送報文,只能接收。
服務端接收後向客戶端確認,返回ack給客戶端,變成了closed-wait
狀態。
客戶端接收到了服務端的確認,變成了fin-wait2
狀態。
隨後,服務端向客戶端傳送fin
,自己進入last-ack
狀態,
客戶端收到服務端發來的fin
後,自己變成了time-wait
狀態,然後傳送 ack 給服務端。
這個時候,客戶端需要等待足夠長的時間,具體來說,是2個msl
(maximum segment lifetime,報文最大生存時間
), 在這段時間內如果客戶端沒有收到服務端的重發請求,那麼表示 ack 成功到達,揮手結束,否則客戶端重發 ack。
2msl的意義:
如果不等待,客戶端直接跑路,當服務端還有很多資料報要給客戶端發,且還在路上的時候,若客戶端的埠此時剛好被新的應用占用,那麼就接收到了無用資料報,造成資料報混亂。所以,最保險的做法是等伺服器發來的資料報都死翹翹再啟動新的應用。
3、描述tcp和udp區別
tcp是工作在傳輸層,面向連線的、可靠的、基於位元組流的、半關閉的、帶錯誤檢查的、帶確認機制,資料恢復重傳機制,流量控制,滑動視窗,擁塞控制,慢啟動和擁塞避免演算法的全雙工傳輸協議。
udp是工作在傳輸層,提供不可靠的網路訪問、非面向連線的、只有有限的錯誤檢查、傳輸效能高、無資料恢復特性的傳輸協議。
第八周作業
1 理解窗體的檔案含義及組織結構 如 form1.cs form1.designer.cs form1.resx 控制項的屬性 方法和事件。2 完全用 的方式在form1.cs檔案中建立乙個文字標籤物件label1,用 設定label1的parent location name text autos...
第八周作業
1 顯示統計占用系統記憶體最多的程序,並排序 2 編寫指令碼,使用 for 和 while 分別實現 192.168.0.0 24 網段內,位址是否能夠 ping 通,若 ping 通則輸出 success 若 ping 不通則輸出 fail 3 每週的工作日 1 30,將 etc 備份至 back...
第八周作業
本週是團隊專案的最後一周,我們的團隊專案也完成了大部分的工作。下面是我們近兩周的工作內容,以及我在這個團隊專案中的總結與心得體會。我們小組所進行的專案是仿照手遊 球球大作戰 製作3d的pc版遊戲。到目前為止,我們已經完成了大部分文件與編碼工作,還差測試文件的成型 其它文件的細節修改與一些bug的修補...