通信協議(一)

1、 目前我們網絡通信經常使用的兩種傳輸介質,一種是傳輸電信號的雙絞線,一種是傳遞光信號的光纖。
2、 所謂的“電信號”是以電流的變化所表示的
3、 所謂的“光信號”是以明暗變化所表示的
4、 用於定義通信過程及細節規則的協議稱爲通信協議
通信系統之間爲了完成通信所必須遵循的規則和約定
(數據包格式/字段的內容/字段的含義/發送的時間/接收的時間等細節)
所有通信系統之間通信,需要相同的協議
5、 協議就是規則
6、 協議實現:通過程序語言將協議文檔實現爲具體的程序代碼;再將代碼集成在某個軟件或者操作系統中,以實現通信的目的。
7、 將數據包每個字段拆開分析,找到數據的部分
8、 原始的數據包是以16進制的數據和字母組成的,而Wireshark軟件是將這些數字和字母翻譯成英文。
9、 計算機接收到的數據包中,可以以16進制顯示出來,也可以以2進制顯示出來。
10、 以2進制的數據,代表了網絡TCP/IP 4層結構的數據
11、
在這裏插入圖片描述
12、 數據包按照TCP/IP 4層結構進行數據包封裝
13、 在這裏插入圖片描述
14、 在這裏插入圖片描述
15、 在這裏插入圖片描述
16、 在這裏插入圖片描述
17、 在這裏插入圖片描述
18、

1.端口號
  標記同一臺計算機上的不同進程
  源端口:佔2個字節,源端口和IP的作用是標記報文的返回地址。
  目的端口:佔2個字節,指明接收方計算機上的應用程序接口。
  TCP報頭中的源端口號和目的端口號同IP報頭中的源IP和目的IP唯一確定一條TCP連接。

2.序號
  佔4個字節,是TCP可靠傳輸的關鍵部分。是本報文段發送的數據組的第一個字節的序號。
  在TCP傳輸流中,每一個字節一個序號。(例如:一個報文段的序號爲300,此報文段數據部分共有100字節,則下一個報文段的序號爲400.)所以序號確保了TCP傳輸的有序性。
3.確認序號
  即ack,佔4個字節,指明下一個期待收到的字節序號,表明該序號之前的所有數據已經正確無誤的收到。確認號只有當ACK=1時纔有效。比如建立連接時,SYN報文的ACK標誌位爲0。
4.數據偏移
  佔4位,它指出TCP報文的數據距離TCP報文段的起始處有多遠。
  由於首部可能含有可選項內容,因此TCP報頭的長度是不確定的,報頭不包含任選子段時長度爲20字節;4位首部長度字段所能表示的最大值爲1111,轉化爲10進製爲15,故報頭最大長度爲15*32/8=60個字節。首部長度也叫數據偏移。
5.保留
  爲將來定義新的用途保留,一般置爲0。
6.控制位
  URG:緊急指針標誌。1:緊急指針有效;0:忽略緊急指針。
  ACK:確認序號標誌。1:確認號有效;0:忽略確認號段。
  PSH:push標誌。1:帶有push標誌的數據,表示接收方在接收到該報文後應儘快將這個報文段交給應用程序,而不是緩衝區排隊。
  RST:重置連接標誌。用於重置由於主機崩潰或其他原因而出現錯誤的連接。或者用於拒絕非法的報文段和拒絕連接請求。
  SYN:同步序號,用於建立連接過程,在連接請求中,SYN=1和ACK=0表示該數據段沒有使用捎帶的確認域,而連接應答捎帶一個確認,即SYN=1和ACK=1。
  FIN:結束標誌,用於釋放連接,爲1時表示發送方已經沒有數據發送了,即關閉本方數據流。
7.窗口
  滑動窗口大小,用來告知發送端接收端的緩存大小,以此控制發送端發送數據的速率,從而達到流量控制。窗口大小是2個字節,因而窗口大小最大爲65536。
8.校驗和
  奇偶校驗,此校驗和是針對整個TCP報文段的,包括TCP報頭和TCP報文數據段,以2個字節進行計算所得。由發送端計算和存儲,並由接收端進行驗證。
9.緊急指針
  只有當URG標誌置1時緊急指針纔有效。緊急指針是一個正的偏移量,和順序號字段中的值相加表示緊急數據最後一個字節的序號。TCP的緊急方式是發送端向另一端發送緊急數據的一種方式。
10.選項和填充
  最常見的可選字段是最長報文大小,又稱爲MSS(Maximum Segment Size),每個連接方通常都在通信的第一個報文段(爲建立連接而設置SYN=1的那個段)中指明這個選項,它表示本端所能接受的最大報文段的長度。選項長度不一定是32位的整數倍,所以要加填充位,即在這個字段中加入額外的0,以保證TCP頭部是32的整數倍。
11.數據部分
  TCP報文段中的數據部分是可選的。在一個連接建立和一個連接終止時,雙方交換的報文段僅有TCP首部。如果一方沒有數據要發送,也使用沒有任何數據的首部來確認收到的數據。在處理超時的許多情況中,也會發送不帶任何數據的報文段。

數據報工作方式的特點:
1.同一報文的不同分組可以由不同的傳輸路徑通過通信子網;
2.同一報文的不同分組到達目的結點時可能出現亂序、重複與丟失現象;
3.每一個分組在傳輸過程中都必須帶有目的地址與源地址;
4.數據報方式報文傳輸延遲較大,適用於突發性通信,不適用於長報文、會話式通信。
TCP/IP協議定義了一個在因特網上傳輸的包,稱爲IP數據報(IP Datagram)。這是一個與硬件無關的虛擬包, 由首部和數據兩部分組成。首部的前一部分是固定長度,共20字節,是所有IP數據報必須具有的。在首部的固定部分的後面是一些可選字段,其長度是可變的。首部中的源地址和目的地址都是IP協議地址。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章