毕业设计之路(2)——初识TCP
2019獨角獸企業重金招聘Python工程師標準>>>
按照陳老師的建議,先要把實驗5.5搞懂。
寫寫實驗5.5 TCP通信實驗的原理,其實書上寫的有。敲一遍,了解一下。
TCP協議全稱是傳輸控制協議。TCP是基于IP數據幀的傳輸,提供可靠的數據傳輸服務。TCP有以下特點:
面向連接:TCP協議規定,在進行數據傳輸之前,兩個節點必須使用TCP連接的建立過程進行連接,建立連接成功后,再進行數據傳輸。終止連接也要使用TCP連接中斷過程關閉連接。
雙向傳輸:在TCP協議中,每一個連接都有2個邏輯管道,一收一發。數據可以同時進行收和發,TCP報頭包含傳出數據和確認數據的序列號。
可靠傳輸:TCP協議規定,在傳輸數據時,要按順序發送數據,并要得到接收方的確認,沒有得到確認的數據將重發,接收方接收到重復包將丟棄,失序包將被還原為正確的序列。TCP校驗字提供比特級的完整性校驗。
數據字節流:在TCP的輸入和輸出邏輯管道上傳輸的數據被認為是連續的字節流,TCP報頭的序列號和確認號都是以字節為單位確定的。TCP不知道所傳輸的字節流的內容是什么,以及在哪里起始,在哪里結束,對字節流數據的分析只能通過應用層的協議進行分析。
流控制:TCP協議中還規定了數據傳輸的流量控制,防止堵塞。在數據傳輸的雙方都有接收緩沖區,如果一方接收緩沖區滿了,另一方將不再發送,直到緩沖區有空余的空間。而雙方的接收緩沖區都是獨立的,永遠也不會溢出。
應用層數據分段:TCP建立連接時,雙方都交換可接收的最大段,如果接收到ICMP的“路徑最大傳輸單位”MTU消息,能自動調整TCP最大短的大小。
一對一傳輸:TCP協議實現一對一通信服務。
SOCKET接口函數是TCP/IP的API,SOCKET API函數從使用的方式來分有三種
通用函數,就是TCP和UDP通信都使用的函數;
TCP專用函數,就是只是在TCP通信中使用的函數;
UDP專用函數,就是只在UDP通信中使用的函數。
編寫TCP通信的任務時分為服務器方式和客戶機方式兩種。服務器方式是需要接聽連接,只有在與客戶機建立連接后才能進行數據處理。客戶機方式是主動連接服務器,它也是在連接成功后才能進行數據處理。下面是TCP通信時服務器端和客戶機端通信的函數應用流程圖。
服務器端與 客戶機端
轉載于:https://my.oschina.net/u/1587304/blog/399822
總結
以上是生活随笔為你收集整理的毕业设计之路(2)——初识TCP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mybatis源码研究6:元数据(met
- 下一篇: Safari tabindex 不工作的