OSI是Open System Interconnection的縮寫,意爲開放式系統互聯。國際標準化組織(ISO)制定了OSI模型,該模型定義了不一樣計算機互聯的標準,是設計和描述計算機網絡通訊的基本框架。OSI模型把網絡通訊的工做分爲7層,分別是物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層和應用層。 首先來看看OSI的七層模型:緩存
TCP/IP是傳輸控制協議/網絡互聯協議的簡稱。早期的TCP/IP模型是一個四層結構,從下往上依次是網絡接口層、互聯網層、傳輸層和應用層。後來在使用過程當中,借鑑OSI七層參考模型,將網絡接口層劃分爲了物理層和數據鏈路層,造成五層結構。服務器
傳輸層是面向鏈接的、可靠的的進程到進程通訊的協議。TCP提供全雙工服務,即數據可在同一時間雙向傳播。TCP將若干個字節構成一個分組,此分組稱爲報文段(Segment)。提供了一種端到端的鏈接。 傳輸層的協議主要是TCP ,TCP(Transimision Control Protocal)是一種可靠的、面向鏈接的協議,傳輸效率低。網絡
http協議其實就是TCP連接和一些使用連接得規則。
TCP 提供了可靠得比特傳輸管道
ip分組承載了tcp片斷, 每一個ip分組都包括:框架
ip首部包含了來源和目的地ip地址,長度和其餘得一些標記。
TCP段首部包含了TCP端口號、 tcp控制標記、以及用於數據排序和完整性檢查得一些數字值
tcp
經過 <源ip地址、 源端口號、目的ip地址、目的端口號> 保證了惟一性spa
驗證數據是否接收到計算機網絡
控制位 TCP的鏈接、傳輸和斷開都受這六個控制位的指揮設計
TCP是面向鏈接的,不管哪一方向另外一方發送數據以前,都必須先在雙方之間創建一條鏈接。在TCP/IP協議中,TCP 協議提供可靠的鏈接服務,鏈接是經過三次握手進行初始化的。三次握手的目的是同步鏈接雙方的序列號和確認號 並交換 TCP窗口大小信息。
3d
當客戶端想要創建鏈接時發送一個SYN,而後等待ACK,結果這個SYN由於網絡問題沒有及時到達B,因此客戶端在一段時間內沒收到ACK後,在發送一個SYN,服務器也成功收到,而後客戶端也收到ACK,這時客戶端發送的第一個SYN終於到了服務器,對於服務器來講這是一個新鏈接請求,而後服務器又爲這個鏈接申請資源,返回ACK,然而這個SYN是個無效的請求,客戶端收到這個SYN的ACK後也並不會理會它,而服務器殊不知道,服務器會一直爲這個鏈接維持着資源,形成資源的浪費blog
珠峯培訓《http權威指南》《圖解http》