TCP常見問題總結

TCP協議和UDP協議的區別是什么

TCP協議是有連接的,有連接的意思是開始傳輸實際數據之前TCP的客戶端和服務器端必須通過三次握手建立連接,會話結束之后也要結束連接。而UDP是無連接的

TCP協議保證數據按序發送,按序到達,提供超時重傳來保證可靠性,但是UDP不保證按序到達,甚至不保證到達,只是努力交付,即便是按序發送的序列,也不保證按序送到。

TCP協議所需資源多,TCP首部需20個字節(不算可選項),UDP首部字段只需8個字節。

TCP有流量控制和擁塞控制,UDP沒有,網絡擁堵不會影響發送端的發送速率

TCP是一對一的連接,而UDP則可以支持一對一,多對多,一對多的通信。

TCP面向的是字節流的服務,UDP面向的是報文的服

建立連接:三次握手

TCP常見問題總結 

關閉連接:四次揮手

TCP常見問題總結 

三次握手建立連接時,發送方再次發送確認的必要性?

要是為了防止已失效的連接請求報文段突然又傳到了B,因而產生錯誤。假定出現一種異常情況,即A發出的第一個連接請求報文段并沒有丟失,而是在某些網絡結 點長時間滯留了,一直延遲到連接釋放以后的某個時間才到達B,本來這是一個早已失效的報文段。但B收到此失效的連接請求報文段后,就誤認為是A又發出一次 新的連接請求,于是就向A發出確認報文段,同意建立連接。假定不采用三次握手,那么只要B發出確認,新的連接就建立了,這樣一直等待A發來數據,B的許多 資源就這樣白白浪費了。

四次揮手釋放連接時,等待2MSL的意義?

一,為了保證A發送的最有一個ACK報文段能夠到達B。這個ACK報文段有可能丟失,因而使處在LAST-ACK狀態的B收不到對已發送的FIN和ACK 報文段的確認。B會超時重傳這個FIN和ACK報文段,而A就能在2MSL時間內收到這個重傳的ACK+FIN報文段。接著A重傳一次確認。

第二,就是防止上面提到的已失效的連接請求報文段出現在本連接中,A在發送完最有一個ACK報文段后,再經過2MSL,就可以使本連接持續的時間內所產生的所有報文段都從網絡中消失。

 

原創文章,作者:15893442518,如若轉載,請注明出處:http://www.www58058.com/85879

(2)
1589344251815893442518
上一篇 2017-09-02 11:41
下一篇 2017-09-02 15:33

相關推薦

  • PHP5.4最新特性

    原文Oracle:LAMP 體系有了新的競爭,但此版本中的特性使 PHP 再次挑戰極限。 稍微做了修改。: 概述總結:1. 內存和性能改進:大型 PHP 應用程序中可節省 20-50% 的內存。通過各種優化使性能提高 10-30%2. 支持特性Trait3. 精簡數組語法,可以定義短數組4. 函數數組解除引用,支持Array dereferenci…

    Linux干貨 2015-11-18
  • haproxy 監控配置

    方法一:在defaults段增加如下配置: stats refresh 30s #統計頁面自動刷新時間stats uri /stats #統計頁面urlstats realm baison-test-Haproxy #統計頁面密碼框上提示文本stats auth admin:admin123 #統計頁面用戶名和密碼設置stats hide-version #…

    Linux干貨 2018-03-19
  • nginx_http_proxy,upstream,stream模塊簡析

    一. ngx_http_proxy_module模塊:         模塊功能: 為后端httpd服務做反向代理, 并且與Httpd 之間使用http進行通信       1、proxy_pass URL;  &nbs…

    Linux干貨 2016-10-29
  • N25第三周作業

    .列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登陸多次,則只顯示一次即可。 此題主要考察命令who,cut,sort以及管道的基本用法:who:列出當前已登陸的用戶名,登陸設備名,時間以及ip地址。 cut:    顧名思義就是截取之意, -d 指定要截取信息的分隔符,此處是以空格為分隔符,-f指定要截取的字段,此…

    Linux干貨 2016-12-20
  • linux三劍客之grep

    linux三劍客之grep        所謂三劍客的工具有“grep”、“sed” 、“awk”,他們都是不謀而合的文本搜索查找處理的強大工具。grep 是 Ken Thompson 寫的,他也是 Unix 的創造者。 gerp及正則表達式    grep全稱(GLobal search Regu…

    Linux干貨 2016-08-08
  • 磁盤管理

    1、創建一個10G分區,并格式為ext4文件系統。 (1)虛擬機添加21G硬盤 Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1&nbsp…

    Linux干貨 2016-12-18
欧美性久久久久