计算机网络-第5章运输层

5.1运输层协议概述

5.1.1进程之间的通信

运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。

通信的两端应当是两个主机中的应用进程。

运输层复用和分用:复用指在发送方不同的应用进程都可以使用同一个运输层协议传送数据,而分用是指接收方的运输层在剥去报文的首部后能够把这些数据正确交付目的应用进程。

运输层提供应用进程间的逻辑通信。从应用层看,好看这种通信就是沿水平方向直接传送数据,但事实上这两个运输层之间并没有一条水平方向的物理连接。

网络层为主机之间的通信提供服务,而远输层则在网络层的基础上,为应用进程之间的通信提供服务。运输层还要对收到的报文进行差错检测。

面向连接的TCP和无连接的UDP。运输层向高层用户屏蔽了下面网络核心的细节,它使应用进程看见的就是好像在两个运输层实体之间有一条端到端的逻辑通信信道。

当运输层采用面向连接的TCP协议时,尽管下面的网络是不可靠的,但这种逻辑通信信道就相当于一条全双工的可靠信道,但当运输层采用无连接的UDP协议时,这种逻辑通信信道仍然是一条不可靠信道。

5.1.2运输层的两个主要协议

①用户数据报协议UDP。②传输控制协议TCP。

TCP报文段,UDP用户数据报。

UDP在传送数据之前不需要先建立连接。TCP则堤供面向连接的服务。

5.1.3运输层的端口

运输层的复用和分用功能,应用层所有的应用进程都可以通过运输层再传送到网终层,这是复用。运输层从IP层收到发送给各应用进程的数据后,必须分别交付指明的各应用进程,这就是分用。

应用层与运输层之间的界面上有端口,每一个端口用一个称为端口号的正整数来标记。

运输层端口号分类:

①服务器端使用的端口号,又分为熟知端口号,登记端口号。

②客户端使用的端口号,又称短暂端口号。

5.2用户数据报协议UDP

只在IP的数据报服务之上增加了很少一点功能,这就是复用和分用功能以及差错检测功能。

特点:①无连接的。②尽最大努力交付。③面向报文的。④没有拥塞控制。⑤支持一对一,一对多,多对一,多对多的交互通信。⑥首部开销小,只有8个字节,比TCP的20个字节的首部要短

5.2.2UDP的首部格式

每个字段是2字节:①源端口,②目的端口,③长度,④检验和。捡验和是把首部和数据部分一起都捡验。

5.3传输控制协议TCP概述

特点:①面向连接的运输层协议。②每一条TCP连接只能有两个端点。③TCP提供全双工通信。④面向字节流,流指的是流入到进程或从进程流出的字节序列。面向字节流的含义是:虽然应用程序和TCP的交互是一次一个数据块,但TCP把应用程序交下来的数据仅仅看成是一连串的无结构的字节流。

TCP根据对方给出的窗口值和当前网络的拥塞程度,决定一个报文段应包含多少字节。UDP发送报文长度是应用进程给出的。如果应用进程只发来一个字节,TCP也可以等待积累足够多的字节后再构成报文段发送出去。

TCP把连接作为最基本的抽象,TCP连接的端点叫作套接字或插口,端口号拼接到IP地址即构成了套接字。每一条TCP连接唯一地被通信两端的两个端点所确定。

5.4可靠传输的工作原理

理想传输条件特点:①传输信道不产生差错。②不管发送方以多快的速度发送数据,接收方总是来得及处理收到的数据。

5.4.1停止等待协议

①无差错情况:发送确认。

②出现差错:超时重传,超时计时器。在收到确认前必须暂时保留己发送的分组的副本。分组和确认分组都必须进行编号。超时计时器设置的重传时间应当比数据在分组传输的平均往返时间更长一些,因为分组会经过哪些网络以及产生多大的时延都是不确定因素。

③确认丢失和确认迟到,自动重传请求ARQ。两个行动:丢弃重复分组,向接收方向发送方发送确认。

④信道刮用率:停止等待协议优点是简单,缺点是信道刮用率低。U=TD/(TD+RTT+TA)。

流水线传输提高信道利用率。

5.4.2连续ARQ协议

发送方每收到一个确认,就把发送窗口向前滑动一个分组。

接牧方一般都是采用累积确认的方式。

优点容易实现,即使确认丢失也不必重传,缺点是不能向发送方及时反映接收方己经正确收到所有分组的信息。

5.5TCP报文段的首部格式

20字节是固定的,后面有4n字节按需可增:

①源端口和目的端口 各占2个字节。②序号 4字节。③确认号 4字节,期望收到对方下一个报文段的第一个数据字节的序号。④数据偏移 4位。⑤保留 6位 ⑥紧急URG ⑦确认ACK ⑧推送PSH ⑨复位RST ⑩同步SYN ⑩①终止FIN ⑩②窗口 2字节。⑩③检验和 ⑩④紧急指针⑩⑤选项

窗口值作为接收方让发送方设置其发送窗口的依据。窗口安段明确指出了现在允许对方发送的数据量。窗口值经常动态变化。

最大报文段长度MSS。

5.6TCP可靠传输的实现

①以字节为单位的滑动窗口。发送窗口位置由窗口前沿和后沿的位置共同确定。

缓存空间和序号空间都是有限的,并且都是循环使用的。

发送缓存存放:准备发送的,己发送未确认的。

接收缓存:按序到达但尚未被接牧,未按序到达的。

①A的发送窗口并不总是和B的接收窗口一样大。②未按序到达的数据,TCP并未规定如何处理,③接收方必须有累积确认的功能。

5.7TCP的流量控制

利用滑动窗口实现流量控制。

流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。TCP的窗口单位是字节,不是报文段。

解决死锁局面:TCP为每一个连接设有一个持续计时器,时间到了就发一个零窗口探测报文段,1字节。

5.8TCP的拥塞控制

网络中某一资源的需求超过了该资源所能提供的可用部分。会使性能变坏,吞吐量随输入负符的增大而下降。

引起因素:①某个节点缓存的容量太小。②处理机处理的速率太低。

拥塞控制是一个全局性过程。流量控制是个端到端问题。

闭环控制:监测网络系统。发送拥塞发生的信息到可采取行动的地方。调整网络系统的运行。

拥塞控制方法:慢开始,拥塞避免,快重传和快恢复。

5.9TCP的运输连接管理

连接建立:SYN=1,ACK=1。SYN报文段不能携带数据,但要消耗掉一个序号ACK报文段可以携带数据,如果不携带数据则不消耗序号。3报文握手。

85129ac8b0754b23a4359b6eaf37d480.jpg

连接释放:FIN=1,ACK=1。四报文握手。

1af7361fc7aa400896dfbf0ee09ce4c0.jpg

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/38779.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】FFmpeg+Whisper:二阶段法视频理解(video-to-text)大模型实战

目录 一、引言 二、FFmpeg工具介绍 2.1 什么是FFmpeg 2.2 FFmpeg核心原理 2.3 FFmpeg使用示例 三、FFmpegWhisper二阶段法视频理解实战 3.1 FFmpeg安装 3.2 Whisper模型下载 3.3 FFmpeg抽取视频的音频 3.3.1 方案一:命令行方式使用ffmpeg 3.3.2 方案二&a…

基于协同过滤的电影推荐与大数据分析的可视化系统

基于协同过滤的电影推荐与大数据分析的可视化系统 在大数据时代,数据分析和可视化是从大量数据中提取有价值信息的关键步骤。本文将介绍如何使用Python进行数据爬取,Hive进行数据分析,ECharts进行数据可视化,以及基于协同过滤算法…

SuperMap GIS基础产品FAQ集锦(20240701)

一、SuperMap iDesktopX 问题1:对于数据提供方提供的osgb格式的数据,如何只让他生成一个s3mb文件呢?我用倾斜入库的方式会生成好多个s3mb缓存文件 11.1.1 【解决办法】不能控制入库后只生成一个s3mb文件;可以在倾斜入库的时候设…

2024第17届中国西部(重庆)留学移民海外置业展览会

2024第17届中国西部(重庆)留学移民海外置业展览会 邀请函 主办单位: 中国西部教体医融合博览会组委会 承办单位:重庆中博展览有限公司 展会背景: 成都和重庆是中国新一线城市,是西部经济的核心增长极&a…

代码随想录算法训练营第59天:动态[1]

代码随想录算法训练营第59天:动态 两个字符串的删除操作 力扣题目链接(opens new window) 给定两个单词 word1 和 word2,找到使得 word1 和 word2 相同所需的最小步数,每步可以删除任意一个字符串中的一个字符。 示例: 输入: …

实施粘贴式导航_滚动事件

● 所谓的粘贴式导航,就是当我们滑动页面到某一个位置的时候,导航不会因为滑动而消失,会固定在页面的顶部,我们来看一下如何实现; ● 首先我们要获取我们想要滚动到哪一部分的时候让导航栏显示出来,这就需要…

Java案例抢红包

目录 一:题目要求: 二:思路分析:(遇见问题先想出完整的思路逻辑再去动手事半功倍) 三:具体代码: 一:题目要求: 二:思路分析:&#x…

Cosine 余弦相似度并行计算的数学原理与Python实现

背景 Cosine 我在LLM与RAG系列课程已经讲了很多次了,这里不在熬述,它在LLM分析中,尤其是在语义相似度的计算中至关重要,在dot attention机制中,也会看到他的身影。这里讲的是纯数学上的运算与python是如何运用相关库进…

JS(JavaScript)的BOM操作

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

一文汇总VSCode多光标用法

光标的创建 按住alt,鼠标左键单击,在单击位置生成光标/删除光标 按住ctrlalt,单击↑/↓,在每行同一个位置(若某一行较短,则在行尾)生成光标,这个不会删除光标,只会在光标…

Day61 代码随想录打卡|回溯算法篇---组合优化

本篇是针对上一题的优化,因为在计算所有可能的组合结果时,不是每一条路径都是我们需要遍历的,如图,当n和k都为4的时候,其实最终的结果只有一个[1,2,3,4]是符合结果的。因此我们遍历的时候就不需要遍历每一条边&#xf…

Go线程实现模型-G

G 概述 一个G就代表一个goroutine(或称Go例程),也与go函数相对应。作为编程人员,我们只是使用go语句向Go的运行时系统提交一个并发任务,而Go的运行时系统则会按照我们要求并发地执行它 Go编译器会把go语句变成对内部函数newproc的调用&…

美德政府转移比特币、以太坊引发市场下跌

小编通过链上地址监控,令人意外的发现德国和美国政府都进行了大规模的数字货币转移,转移了价值 1.5 亿美元的比特币和以太坊。这些大额转移势必引起了数字货币市场分析师和投资者的关注。 BTC价格 从今年起德国政府已转移了其持有的相当一部分比特币&…

【MySQL备份】Percona XtraBackup实战篇

目录 1. 前言 2.准备工作 2.1.创建备份目录 2.2.配置/etc/my.cnf文件 2.3.授予root用户BACKUP_ADMIN权限 3.全量备份 4.准备备份 5.数据恢复 6.总结 "实战演练:利用Percona XtraBackup执行MySQL全量备份操作详解" 1. 前言 本文将继续上篇【My…

玩Stable Diffusion不可不知的5款真人模型!大佬都在用!(附模型包)

模型对于AI绘画起决定性作用,今天推荐5款超好用的Stable Diffusion模型。 这些模型都在市面上收获了各种好评,而且各具特色,能满足你对写实人像的各种要求。 1、MajicMIX realisric 麦橘写实 写实系的人像大模型,具有非常好的质…

数据结构笔记第3篇:双向链表

1、双向链表的结构 注意:这里的 "带头" 跟前面我们说的 "头结点" 是两个概念,实际前面的在单链表阶段称呼不严谨,但是为了同学们更好的理解就直接称为单链表的头结点。 带头链表里的头结点,实际为 "哨兵…

勒索病毒--认知与防范

免责声明:本文仅做技术交流与学习... 目录 应急响应-勒索病毒 1、什么是勒索病毒? 勒索病毒是一种新型电脑病毒,主要以RDP爆破、邮件、程序木马、网页挂马的形式进行传播。该病毒性质恶劣、危害极大,一旦感染将给用户带来无法估量的损失。…

已解决 SyntaxError: invalid syntax,Python报错原因和解决方案。

「作者简介」:冬奥会网络安全中国代表队,CSDN Top100,就职奇安信多年,以实战工作为基础著作 《网络安全自学教程》,适合基础薄弱的同学系统化的学习网络安全,用最短的时间掌握最核心的技术。 这篇文章带大家…

C++编程(七)继承

文章目录 一、继承(一)概念(二)语法格式(三)通过子类访问父类中的成员1. 类内2. 类外 (四)继承中的特殊成员函数1. 构造函数2. 析构函数3. 拷贝构造函数4. 拷贝赋值函数 二、多重继承…

怎样把热门抖音短视频下载保存到手机相册?

怎样把热门抖音短视频下载保存到手机相册? 1、在手机上打开抖音短视频APP; 2、打开后搜索或找到要下载保存的抖音短视频; 3、打开短视频后,点击右则的分享,并滑动找到保存到相册; 4、点击后等待完成下载,…