朱有鵬 TCP協議(2)
朱有鵬 TCP協議(2)
TCP的三次握手
(1)建立連線需要三次握手
(2)建立連線的條件:伺服器listen(監聽)時,客戶端主動發起connect(連線)
TCP的四次握手
(3)關閉連線需要四次握手
(4)伺服器或者客戶端都可以主動發起關閉
注:這些握手協議已經封裝在TCP協議內部,socket程式設計介面平時不用管
基於TCP通訊的服務模式
(1)具有公網IP地址的伺服器(或者使用動態IP地址對映技術)
(2)伺服器端socket,bind,listen後處於監聽狀態
(3)客戶端socket後,直接connect去發起連線。
(4)伺服器收到並同意客戶端接入後會建立TCP連線,然後雙方開始收發資料,收發時是雙向的,而且雙方均可發起
(5)雙方均可發起關閉連線
常見的使用TCP協議的網路應用
(1)http、ftp
(2)QQ伺服器
(3)mail伺服器
相關推薦
朱有鵬 TCP協議(2)
朱有鵬 TCP協議(2) TCP的三次握手 (1)建立連線需要三次握手 (2)建立連線的條件:伺服器listen(監聽)時,客戶端主動發起connect(連線) TCP的四次握手 (3)關閉連線需要四次握手 (4)伺服器或者客戶端都可以主動
朱有鵬 TCP協議(1)
朱有鵬 TCP協議(1) 關於TCP (1)TCP協議工作在傳輸層,對上服務socket介面,對下呼叫IP層 API呼叫TCP工作的,TCP呼叫IP工作的。 (2)TCP協議面向連線,通訊前必須先3次握手建立連線關係後才能開始通訊。 在通訊之前,必須建立一個連線
TCP/IP協議(2):網絡設備
數據包 服務器 網絡設備 風暴 二層交換機 不同的 中繼器 tcp/ip 解決 1、中繼器(Repeater) 中繼器工作在OSI的一層,我們知道,超5類線的傳輸距離最大為100米,超過這個距離信號就會衰減,中繼器就是為了防止信號變差,將網絡信號進行再生和重定時。 2、
專利:結構化大數據通信協議(2)
結構化大數據通信協議說明2:數據的唯一性是實現“數據全球通”的基礎在班、組這樣的小環境中可以用每個人的姓名而區分出每一個人,然而在全國範圍內,由於人數太多,重名的很多,因此僅靠姓名就不能準確無誤地識別出每一個人。大數據時代以前的關系數據庫中的數據只是應用於某個機構內部,因此各個數據就容易識別,然而如果把關系數
記一次利用動態除錯so包破解協議 (2)
繼續上一篇https://blog.csdn.net/u014476720/article/details/83650566的操作 上一篇只分析出so包裡面的 buildParam2 裡面的加密方式,這一篇來看看buildParam1的加密方式 這裡分析是已使用者主頁的介
第7章 網路層協議(2)_ICMP協議
2. ICMP協議 2.1 ICMP報文(Internet Control Message Protocol)的型別 報文型別 型別值 程式碼 描述 請求報文 8 0
趣談網路協議(八)TCP協議(下)
如何實現一個靠譜的協議 (1)為了保證順序性,每一個包都有一個 ID。在建立連線的時候,會商定起始的ID是什麼,然後按照ID一個個傳送。為了保證不丟包,對於傳送的包都要進行應答,但是這個應答不是一個一個來的,而是會應答某個之前的ID,表示都收到了,這種模式稱為累計確認或者累計應答
趣談網路協議(七)TCP協議(上)
TCP包頭格式 (1)目標埠號和源埠號。如果沒有這兩個埠號,資料就不知道該發給哪個應用 (2)序號。為了解決亂序的問題 (3)確認序號。解決不丟包的問題 (4)掌握TCP協議,重點關注以下幾個問題 順序問題,穩重不亂 丟包問題,承諾靠譜 連線維護
網路協議 8 - TCP協議(上):性惡就要套路深
系列文章: 網路協議 1 - 概述 網路協議 2 - IP 是怎麼來,又是怎麼沒的? 網路協議 3 - 從物理層到 MAC 層 網路協議 4 - 交換機與 VLAN:辦公室太複雜,我要回學校 網路協議 5 - ICMP 與 ping:投石問路的偵察兵 網路協議 6 - 路由協議:敢
第1章 計算機網路和協議(2)_OSI參考模型
2. OSI參考模型 2.1 OSI參考模型詳解 (1)參考模型的優點 ①將網路的通訊過程劃分為小一些、功能簡單的部件,有助於各個部件開發、設計和故障排除。 ②通過網路元件的標準化,允許多個供應商進行開發生產出標準的網路裝置(如裝置的介面標準和電壓標準)
HTTP協議 (2)瞭解請求報文
之前已經簡單的認識了一下HTTP協議 下面就看一下這個協議中一個重要的部分:請求 請求報文屬於HTTP報文,是從客戶端向服務端傳送的請求 請求報文由三部分組成,分別是請求行(開始行),請求頭(訊息報頭),請求正文(通常不用) GET / HTTP/1.1
HTTP協議(2)HTTP協議中的請求資訊
1:請求行 請求行分為三部分: 請求方式:GET、POST 資源路徑:/servlet/request http協議版本:http/1.1HTTP/0.9 :只接受GET一種請求方法,沒有在通訊中指定版本號,且不支援請求頭。由於該版本不支援POST方法,因此客戶端無法向
1145: 有問題的里程錶(2)
某輛汽車有一個里程錶,該里程錶可以顯示一個整數,為該車走過的公里數。然而這個里程錶有個毛病:它總是從3變到5,而跳過數字4,里程錶所有位(個位、 十位、百位等)上的數字都是如此。例如,如果里程錶顯示15339,汽車走過1公里之後,該里程錶顯示15350。
TCP協議(上):性惡就要套路深
系列文章: 上次說了“性本善”的 UDP 協議,這哥們秉承“網之初,性本善,不丟包,不亂序”的原則,徜徉在網路世界中。 與之相對應的,TCP 就像是老大哥一樣,瞭解了社會的殘酷,變得複雜而成熟,秉承“性惡論”。它認為網路環境是惡劣的,丟包、亂序、重傳、擁塞都是常有的事兒,一言不合可能就會丟
朱有鵬C語言高階---4.9.3--單鏈表--將建立節點的程式碼封裝成一個函式(2)
朱有鵬C語言高階---4.9.2--單鏈表--訪問單鏈表中各個節點的資料(1) 朱有鵬C語言高階---4.9.3--單鏈表--將建立節點的程式碼封裝成一個函式(2) 原始碼:4.9.3danlianbiao2.c #include &
朱有鵬C語言高階---4.9.2--單鏈表--訪問單鏈表中各個節點的資料(1)
朱有鵬C語言高階---4.9.2--單鏈表--訪問單鏈表中各個節點的資料(1) 朱有鵬C語言高階---4.9.3--單鏈表--將建立節點的程式碼封裝成一個函式(2) 構建一個簡單的單鏈表 目標:構建一個連結串列,然後將一些資料(譬如1,2,3三個數字)儲存在連結串列中,
朱有鵬C語言高階---4.9.12--雙鏈表--刪除節點(雙鏈表的完整程式)(12)
朱有鵬C語言高階---4.9.12--雙鏈表--刪除節點(12) 刪除的過程就是一個遍歷的過程。 刪除尾節點 刪除普通節點 程式碼如下: #include <stdio.h> #inc
朱有鵬C語言高階---4.9.11--雙鏈表--遍歷節點(11)
朱有鵬C語言高階---4.9.11--雙鏈表--遍歷節點(11) 遍歷節點 (1)雙鏈表是單鏈表的一個父集。雙鏈表中如何完全無視pPrev指標,則雙鏈表就變成了單鏈表。這就決定了雙鏈表的正向遍歷(後向遍歷)和單鏈表是完全相同的。 (2)雙鏈表中因為多了pPrev指標,因
朱有鵬C語言高階---4.9.10--雙鏈表--頭插入和尾插入(10)
朱有鵬C語言高階---4.9.10--雙鏈表--頭插入和尾插入(10) 尾插入: 頭插入: 注意下面的程式碼中,insert_head()函式裡面語句的順序,第一語句和第二語句的順序可以互相調換,但是第一語句和第二語句要在
朱有鵬C語言高階---4.9.9--雙鏈表--引入和實現(9)
朱有鵬C語言高階---4.9.9--雙鏈表--引入和實現(9) 單鏈表的侷限性 (1)單鏈表是對陣列的一個擴充套件,解決了陣列的大小比較死板不容易擴充套件的問題。使用堆記憶體來儲存資料,將資料分散到各個節點之間,其各個節點在記憶體中可以不相連,節點之間通過指標進行單向連線。