成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android網絡編程-TCP/IP協議

網絡 通信技術 Android
在Android網絡編程-計算機網絡基礎一文中得知,IP協議屬于網絡層,TCP、UDP協議屬于傳輸層。IP協議是TCP/IP協議族的動力,它為上層協議提供無狀態、無連接、不可靠的服務。

在Android網絡編程-計算機網絡基礎一文中得知,IP協議屬于網絡層,TCP、UDP協議屬于傳輸層。

IP協議是TCP/IP協議族的動力,它為上層協議提供無狀態、無連接、不可靠的服務。

TCP協議是面向連接的傳輸層協議,提供一種面向連接的、可靠的字節流服務。

UDP協議是面向無連接的傳輸層協議,提供面向事務的簡單不可靠信息傳輸服務。

數據報文

在不同層傳輸的數據單位名稱不同,在網絡層傳輸的叫數據報,在傳輸層傳輸的叫報文段。

IP數據報

IP數據報格式如下圖:

 

Android網絡編程-TCP/IP協議

IP數據報

 

各個字段的詳細說明:名稱長度說明版本4bitIP協議的版本,目前的IP協議版本號為4,下一代IP協議版本號為6首部長度4bitIP報頭的長度,最大長度60字節(15*4),
分為固定部分的長度(20字節)和可變部分的長度服務類型8bitType Of Service總長度16bitIP報文的總長度。數據報的最大長度為 65535 字節標識16bit它是一個計數器,用來產生數據報的標識。

當IP報文長度超過傳輸網絡的MTU(最大傳輸單元)時必須分片,此標識表示同一個數據報的分片。標志3bitR、DF、MF三位,目前只有后兩位有效。

  • DF位:為1表示不分片,為0表示分片。
  • MF:為1表示“更多的片”,為0表示這是最后一片。片偏移13bit本分片在原先數據報文中相對首位的偏移位。

片偏移以8個字節為偏移單位。生存時間8bitTTL (Time To Live)表示數據報在網絡中的壽命,其單位為秒。

在目前的實際應用中,常以“跳”為單位。協議8bit指出IP報文攜帶的數據使用的哪種協議,以便目的主機的IP層能知道要將數據報上交到哪個進程。

TCP的協議號為6,UDP的協議號為17。

ICMP的協議號為1,IGMP的協議號為2.首部校驗和16bit計算IP頭部的校驗和,檢查IP報頭的完整性。源地址32bit標識IP數據報的源端設備。目的地址32bit標識IP數據報的目的地址。可選字段長度可變1~40 字節,用于增加IP數據報的控制功能。填充保證IP首部長度是4字節的整倍數

TCP報文

 

Android網絡編程-TCP/IP協議

TCP報文

 

名稱長度說明源端口16bit數據發送方的端口號目的端口16bit數據接受方的端口號序號32bit本數據報文中的的第一個字節的序號
(在數據流中每個字節都對應一個序號)確認號32bit希望收到的下一個數據報文中的第一個字節的序號數據偏移4bit表示本報文數據段距離報文段有多遠保留字段6bit保留為今后使用,但目前應置為0緊急比特URG當值為1時表示次報文段中有需要緊急處理確認比特ACK值為1時確認號有效,值為0時確認號無效復位比特RST值為1時表示TCP連接存在嚴重的錯誤,需要重新進行連接同步比特SYN值為1表示這是一個連接請求或連接接受報文終止比特FIN值為1表示要發送的數據報已經發送完畢,需要釋放傳送連接窗口16bitTCP連接的一端根據緩存空間的大小來確定自己接受窗口的大小
限制發送放的窗口上限檢驗和16bit用來檢驗首部和數據兩部分的正確性緊急指針字段16bit緊急指針指出在本報文段中的緊急數據的最后一個字節的序號選項字段長度可變TCP 首部可以有多達40字節的可選信息,
用于把附加信息傳遞給終點,或用來對齊其它選項

UDP報文

相對于TCP報文,UDP報文簡單了很多。

 

Android網絡編程-TCP/IP協議

UDP報文

 

名稱長度說明源端口16bit數據發送方的端口號目的端口16bit數據接受方的端口號包長度16bitUDP首部的長度和數據的長度之和。單位為字節校驗和16bit用來檢驗首部和數據兩部分的正確性

TCP三次握手和四次揮手

TCP用三次握手來創建連接,使用四次分手來釋放連接。

 

Android網絡編程-TCP/IP協議

三次握手

 

三次握手

三次握手的目的是同步連接雙方的序列號和確認號并交換TCP窗口大小的信息。

握手過程:

  • 第一次握手:建立連接,客戶端先發送連接請求報文,將SYN設置為1,Sequence Number為x??蛻舳诉M入SYN+SEND狀態,等待服務器確認。
  • 第二次握手:服務器收到SYN報文。服務器收到客戶端的SYN報文,需要對這個SYN報文進行確認,設置Acknowledgment Number為x+1(Sequence+1);同時,自己還要送法SYN消息,將SYN位置為1,Sequence Number為y;服務器將上述所有信息放到一個報文段(即SYN+ACK報文段)中,一并發送給客戶端,此時服務器進入SYN+RECV狀態。
  • 第三次握手:客戶端收到服務器的 SYN+ACK報文段。然后將Acknowlegment Number設為y+1,向服務器發送ACK報文段,這個報文段發送完畢后,客戶端端服務器都進入ESTABLISHED狀態,完成TCP三次握手。

完成了三次握手,客戶端和服務器就可以開始傳送數據了。

四次揮手

當客戶端和服務端傳輸數據完畢后,需要斷開TCP連接。TCP斷開的過程,就是四次揮手。

  • 第一次揮手:客戶端(也可以是服務器),設置Sequence Number和Acknowledgment Number,向服務器發送一個FIN報文段。此時客戶端進入FIN_WAIT_1狀態;這表示客戶端沒有數據發送給主機了。
  • 第二次揮手:服務器收到客戶端發來的FIN報文段,向客戶端回一個ACK報文段,Acknowledgement Number為Sequence Number加1;客戶端進入FIN_WAIT_2狀態,服務器進入CLOSE_WAIT狀態;服務器告訴客戶端,我同意你的”關閉”請求。
  • 第三次揮手:服務器向客戶端發送FIN報文段,請求關閉連接,同時服務器進入LAST_ACK狀態。
  • 第四次揮手:客戶端收到服務器發送的FIN報文段,向主機發送ACK報文段,然后客戶端進入TIME_WAIT狀態,服務器收到客戶端的ACK報文段以后,就關閉連接,此時,客戶端等待2MSL后一次沒有到收到回復,則證明服務端已正常關閉,那好,客戶端也可以關閉連接了。

TCP三次握手的必要性

防止服務器端因接收了早已失效的連接請求報文,從而一直等待客戶端請求,最終導致形成死鎖、浪費資源。

TCP四次揮手的必要性

為了保證通信雙方都能通知對方,需釋放、斷開連接。

為什么客戶端關閉連接前要等待2MSL時間

  • MSL: 最大報文段生存時間

四個報文發送完畢后,就可以直接進入CLOSE狀態了,但是有可能網絡是不可靠的,一切都可能發生,比如有可能最后一個ACK丟失。所以TIME_WAIT狀態是用來重發可能丟失的ACK報文。展開具體來講:

  • 為了保證客戶端發送的最后1個連接釋放確認報文 能到達服務器,從而使得服務器能正常釋放連接。
  • 防止早已失效的連接請求報文,出現在本連接中??蛻舳税l送了最后1個連接釋放請求確認報文后,再經過2MSL時間,則可使本連接持續時間內所產生的所有報文段都從網絡中消失。

TCP、UDP比較

  • TCPUDP可靠性可靠不可靠連接性面向連接無連接報文面向字節流面向報文效率低效高效雙工性全雙工一對一,一對多,多對一,多對多
  • 支持多播和廣播流量控制滑動窗口機制擁塞控制慢開始/擁塞避免
  • 快重傳/快恢復傳輸速度慢快應用場景效率要求相對低,準確要求相對高。
  • 要求有連接的場景效率要求相對高,準確要求相對低應用SMTP,TELNET,HTTP,FTPDNS,RIP,NFS,SNMP,
  • IP電話,流媒體

 

責任編輯:未麗燕 來源: 安卓巴士
相關推薦

2010-06-12 15:54:09

TCP IP協議

2010-09-09 16:28:19

2015-04-24 09:48:59

TCPsocketsocket編程

2019-05-20 07:37:00

TCPIP網絡協議

2021-07-09 08:55:23

LinuxTCPIP

2021-07-06 21:29:16

TCPIP協議棧

2015-10-29 09:51:35

TCPIP網絡協議

2010-09-09 16:21:32

TCP IP網絡協議

2015-10-21 10:24:05

TCPIP網絡協議

2018-10-12 10:33:25

TCPIP服務協議

2010-09-08 15:11:36

TCP IP協議棧

2010-06-08 13:32:19

TCP IP協議基礎

2010-06-08 14:23:47

TCP IP協議概念

2014-10-15 09:14:24

IP

2014-11-21 09:16:23

TCPIP

2020-12-03 08:37:38

TCPIPARP協議

2010-06-18 14:37:20

TCP IP協議

2019-09-02 10:20:27

TCPIP協議

2010-06-09 16:28:50

TCP IP傳輸協議

2010-09-17 16:38:41

TCP IP協議
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人欧美一区二区 | 国产精品久久久久久久久久久新郎 | 日韩精品一区二区三区中文在线 | 国产一区二区视频在线观看 | 久久噜噜噜精品国产亚洲综合 | 免费国产视频 | 国产精品a久久久久 | 国产一二三区电影 | 精品国产乱码久久久久久闺蜜 | 男人的天堂久久 | 欧美日韩在线一区二区 | 中文字幕亚洲一区二区三区 | 日本一区二区三区四区 | 国产精品1区 | 亚洲bt 欧美bt 日本bt | 久久久精品一区二区三区四季av | 草草影院ccyy | 91人人在线 | 国产精品av久久久久久毛片 | 国产在线永久免费 | 狠狠操狠狠干 | 成人小视频在线观看 | 国产98色在线 | 日韩 | 成人九色 | 国产综合av | 日韩在线看片 | 国产精品亚洲成在人线 | 欧美自拍另类 | 成人久久18免费网站麻豆 | 涩涩99 | 国产成人精品午夜 | 午夜寂寞影院在线观看 | 久久久久久亚洲 | 国产精品免费看 | 成年人在线观看视频 | 欧美日韩在线综合 | 亚洲欧美日韩在线 | 久久久久久久久久久爱 | 正在播放一区二区 | 日本亚洲一区 | 亚洲另类春色偷拍在线观看 |