ISO網絡七層結構
應用層: ?為應用程序進程(如電子郵件,文件傳輸和終端仿真),提供網絡服務。提供用戶身份驗證
表示層: ?確保接收系統可以讀出該數據,格式化數據,構建數據,協商用于應用層的數據傳輸語法,提供加密
會話層: ?建立、管理和終止在應用程序之間的會話
傳輸層: ?確保數據傳輸的可靠性。建立、維護和終止虛擬電路,通過錯誤檢測和恢復,信息流控制來保障可靠性
網絡層: ?路由數據包,選擇傳遞數據的最佳路徑,支持邏輯尋址和路徑選擇
數據鏈路層: 定義如何格式化數據以便進行傳輸以及如何控制對網絡的訪問。支持錯誤的檢測
物理層: 為啟動、維護以及關閉物理連接定義了電氣規范、機械規范、過程規范和功能
三次握手
在 TCP/IP 協議中,TCP 協議提供可靠的連接服務,采用三次握手建立一個連接
第一次握手:建立連接時,客戶端發送 syn 包(syn=j)到服務器,并進入 SYN_SEND 狀態,等待服務器確認
第二次握手:服務器收到 syn 包,必須確認客戶的 SYN(ack=j+1),同時自己也發送一個 SYN 包(syn=k),即 SYN+ACK 包,此時服務器進入 SYN_RECV 狀態
第三次握手:客戶端收到服務器的 SYN+ACK 包,向服務器發送確認包 ACK(ack=k+1),此包發送完畢,客戶端和服務器進入 ESTABLISHED 狀態,完成三次握手
四次揮手:TCP連接是全雙工的,因此每個方向都必須單獨進行關閉
第一次揮手:客戶端 A發送一個 FIN,用來關閉客戶 A 到服務器 B 的數據傳送
第二次揮手:服務器 B 收到這個 FIN,它發回一個 ACK,確認序號為收到的序號加 1。和 SYN 一樣,一個 FIN 將占用一個序號
第三次揮手:服務器 B 關閉與客戶端 A 的連接,發送一個 FIN 給客戶端 A
第四次揮手:客戶端 A 發回 ACK 報文確認,并將確認序號設置為收到序號加 1
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90260