運輸層

運輸層-TCP

簡介


通俗點來說,運輸層是連接底層和用戶層的,運輸層向它上面的應用層提供通信服務,它屬于通信部分的最高層,同時也是用戶功能的最低層。
運輸層重要功能是復用和分用。復用:發送方不同應用進程可以使用同一種運輸層協議。分用:接收方根據報文首部送到再送到相應的應用進程。
兩種重要的協議:TCP:提供面向連接的服務 。UDP:傳送數據前不需要先建立連接。下面主要說一下TCP連接。

圖片稱

上圖表示應用層部分協議用到的運輸層協議。

TCP

開始準備


TCP協議重要的部分就是先要建立連接,TCP連接IP層和應用層的樞紐就是套接字。套接字=={IP地址:端口號}
建立連接直接或者通信都需要用到TCP報文,所以先來了解一下報頭:
每行有32位即4個字節,固定首部為5行即20字節。

1532705-20190620193517073-1784139009.png

連接-三次握手

1532705-20190620193919792-1886078628.png

可靠傳輸原理


無差錯情況:正常的傳輸情況每一個請求對應一個確認。
超時重傳:一個請求在一定時間內沒有得到確認就重新發送。

1532705-20190620195518297-1095792751.png


確認丟失:確認報文丟失的情況下,這時候請求方沒有收到確認就再發送請求,接收方丟棄重復的請求。
確認遲到:請求方遲遲沒有收到確認,超時情況下再發送請求,這個確認很快收到了,過會以前的遲到(超時的)確認包過來了,請求方收到這個包什么也不會做。

1532705-20190620195611513-1341766685.png

轉載于:https://www.cnblogs.com/wangjian1226/p/11041671.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277514.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277514.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277514.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

對AI"出錯"零容忍?美國加強AI推理解釋能力研究

隨著硅谷私企引領人工智能(AI)爆發式發展,美國國防部曾發布報告稱,將“立即采取行動”加速AI和自動化技術研發。據《麻省理工技術評論》雜志網站近日報道,美國國防高級研究計劃局(DARPA)已經著手…

java調用指定瀏覽器_Java調用瀏覽器打開網頁完整實例

本文實例講述了java調用瀏覽器打開網頁的方法。分享給大家供大家參考。具體實現方法如下:package com.yifang.demo;import java.io.file;public class openpagedemo {public static void main(string[] args) {try {//string url "http://www.baidu.com"…

[HDU517] 小奇的集合

題目鏈接 顯然有貪心每次選擇最大的兩個數來做。 于是暴力地把最大的兩個數調整到非負(暴力次數不超過1e5),接下來使用矩陣乘法即可。 \[ \begin{pmatrix} B\\S\\T \end{pmatrix} \begin{pmatrix} 1&1&0\\ 1&0&0\\ 1&1&…

phpStudy

很多朋友在學習php的過程中會看到phpstudy這個東西,那么phpstudy是做什么的呢?有什么用?接下來的這篇文章將個大家來詳細的介紹一下phpstudy的內容。 首先在百度百科上對于phpstudy的定義是一個PHP調試環境的程序集成包。 該程序包集成最新的…

殺入共享汽車市場的PonyCar,是下一個犧牲者還是引領者?

曾幾何時,汽車是財富、地位的象征,擁有一輛汽車就感覺自己處處高別人一等。但如今,汽車已然成為一件隨處可見的商品,甚至已經到車來車往、熙熙攘攘的地步。根據中商產業研究院發布的《2018-2023年中國汽車行業市場前景及投資機會研…

python圖片內容長度識別_Python實現識別圖片內容的方法分析

本文實例講述了Python實現識別圖片內容的方法。分享給大家供大家參考,具體如下:python識別圖片內容。這里我的環境為windows64位,python2.7.14需要用到PIL模塊和tesseract模塊。首先需要安裝pip包管理,安裝方法可參考附錄windows下…

AJAX工具

代碼如下 var AppAjax {baseUrl:AppConfig.apiUrl//【POST請求】,post:function(pUrl,pData,pSuccessFun){pUrl AppAjax.baseUrl pUrl;$.ajax({headers: {token: AppConfig.token},url:pUrl,type:POST,data:JSON.stringify(pData),//pData,//JSON.stringify(),contentType:&q…

厲害了!Intel第九代酷睿參數曝光

2019獨角獸企業重金招聘Python工程師標準>>> 導讀上周有消息稱,Intel第九代酷睿處理器最快于8月1日發布,共有三款主打產品,分別是i9-9900K、i7-9700K和i5-9600K。其中,i9-9900K設計為8核16線程,基礎主頻3.6…

java 連接kafka_設置多個kafka連接接收器

我正在研究從postgreSQL到HDFS的數據流 . 我在HDP 2.6沙箱上設置了融合環境 . 我對postgreSQL的jdbc源配置是namejdbc_1connector.classio.confluent.connect.jdbc.JdbcSourceConnectortasks.max1connection.urljdbc:postgresql://host:port/db?currentSchemaschema&useru…

Web應用性能分析工具—HAR文件

Web應用性能分析工具—HAR文件 來源 https://raynorli.com/2018/06/11/web-performance-analysis-har-file/ 客戶經常有的一個問題就是,我的網頁服務通過你的設備之后,訪問變慢了,這類直觀感受的故障很不好量化,而且基于Web應用的…

【mybatis】mybatis多表聯查,存在一對多關系的,實體中使用List作為字段接收查詢結果的寫法...

實體如下: IntegralGoods  積分商品 IntegralGoodsImg  積分商品圖片 ShelfLog    積分商品自動上架記錄 IntegralGoods :IntegralGoodsImg:ShelfLog   1:n:1 1:1的多表聯查或者m:n的多表聯查 很簡…

lr java腳本_【上海校區】 LR Java腳本編寫方法

之前在某一家銀行也接觸過java寫的性能接口腳本,最近因項目,也需編寫java接口性能測試腳本,腦袋一下懵逼了,有點不知道從何入手。隨后上網查了相關資料,自己又稍微總結了一下,與大家共同分享哈~   首先&a…

Flask Web表單

title: flask學習筆記 subtitle: 3. flask Web表單 date: 2018-12-14 10:17:28 --- Web表單 HTML表單是用戶和web站點或應用程序之間交互的主要內容之一。它們允許用戶將數據發送到web站點。大多數情況下,數據被發送到web服務器,但是web頁面也可以自己攔…

一些PHP函數功能

函數 描述 PHP basename() 返回路徑中的文件名部分。 3 chgrp() 改變文件組。 3 chmod() 改變文件模式。 3 chown() 改變文件所有者。 3 clearstatcache() 清除文件狀態緩存。 3 copy() 復制文件。 3 delete() 參見 unlink() 或 unset()。 dirname() 返回路徑中的目錄名稱部分…

mac java tomcat_mac idea 配置tomcat

mac idea 配置tomcat一、下載安裝tomcat二、有一個 javaWeb項目創建一個javaWeb項目 ,參考第一條,只是在第二步的時候選中java Web就行三、完善web項目在WEB-INF 下新建兩個文件夾,lib(存放jar包)和classes(存放編譯后的文件)打開項目結構設置配置classe…

30342程序格式

1.匯編語言程序格式 2.表達式操作符 轉載于:https://www.cnblogs.com/ZanderZhao/p/11055237.html

初識docker,弄清鏡像和容器

前言: 之前總是有人拿虛擬機和容器做比較。我之前一直理解的容器,就類似于虛擬機快照類似。拿別人的東西就直接用了。在我的虛擬機中安裝一下,環境就搞好了。其實容器是一個徹底解耦的東西。各個軟件相互獨立互不影響 什么是鏡像 從docker本身…

configure 查找依賴庫_Rust在編譯Android的庫時,如何設定依賴的第三方庫引用的C/C++的動態庫的搜索路徑?...

謝邀。不懂android,也不懂OpenCL。但是我嘗試了解了一下你的問題。既然你用了第三方庫,那就得查源碼了。翻開ocl 庫的源碼搜android關鍵字,很容易定位到下面代碼。#https://github.com/cogciprocate/ocl/blob/master/ocl-interop/build.rs}el…

SprinBoot易學難精

Spring Boot易學難精 易學 組件自動裝配:規約大于配置,專注核心業務外部化配置:一次構建、按需調配,到處運行嵌入式容器:內紙容器、無序部署、獨立運行Spring Boot Stater:簡化依賴、按需裝配、自我包含Pro…

一道沒人搞得定的趣味Shell編程游戲題!,看看你會不會?

1.1猜數字編程游戲首先讓系統隨機生成一個數字,給這個數字定一個范圍(1-60),讓用戶輸入猜的數字,對輸入進行判斷,如果不符合要求,就給予高或低的提示。其他要求:1、全部猜對后則給出…