最新要闻
- 代表建议试行十二年义务教育:中考定终身太早 拒绝小学初中内卷
- 一男子和峨眉山猴子练搏击互殴 当事人回应:条件反射、请勿模仿
- 精选! 《狂飙》“大嫂”高叶上手小米13:徕卡人像实拍样张美呆
- 天天时讯:3端通用!腾讯视频VIP会员年卡148元到手
- 当前快讯:董明珠称格力不看文凭只看能力:研究生到一线生产线非人才
- 济南动物园网红小黑猩猩“柒仔”去世:初步研判系突发疾病死亡
- 每日热议!奔驰4S店展车充新车 女子上门维权:被骗了、将走法律程序
- 天天快资讯丨突发!蔚来前实习生称遭同事强奸未遂 反被拒绝留用!公司:已成立调查组
- “清籁”琴
- 灭蟑螂小窍门厨房_灭蟑螂小窍门
- 【新要闻】如何去除新家的甲醛_如何去除新家的甲醛
- 环球热头条丨外星人AW620M无线鼠标上市:26000 DPI、140小时长续航
- 世界简讯:PC优化翻车!《卧龙:苍天陨落》官方道歉:将尽快推出更新补丁
- Pro版同款!荣耀Magic5至臻版影像泄露:5000万像素旗舰三摄
- 今日要闻!《LOL》英雄价格正式调整!全面下调
- 全球热议:理想L9车主实惨:白天打开星环模式灯 扣1分罚款100元?
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
第五章 运输层
(资料图片仅供参考)
5.1运输层概述
- 运输层是计算机网络体系结构中的第四层,主要负责端到端的数据传输和控制。它是在网络层(第三层)和应用层(第七层)之间的中间层,可以为应用层提供多种服务,例如可靠的数据传输、流量控制和错误检测。
- 运输层协议被称为端到端协议
- 运输层向高层用户屏蔽了下面网络核心
- 根据需求不同,运输层为应用层提供了两种不同的运输协议,即面向连接的TCP和无连接的UDP
5.2运输层端口号、复用和分用的概念
端口号
- 运行在计算机上的进程使用进程标识符PID作为标志
- 不同操作系统进程标识符不相同,为了使不同操作系统之间可以进行通信,必须使用统一方法对应用进程进行标识
- TCP/IP体系的运输层使用端口号来区分不同的进程
- 端口号使用是十六比特标识,取值范围0-65535,可分为三类
- 熟知端口号:0-1023;例如FTP使用20/21端口,http使用80,DNS使用53;
- 登记端口号:1024-49151;为没有熟知的端口号的应用程序使用,例如远程桌面使用3389;
- 短暂端口号:49152-65535,留给用户进程暂时使用,使用完成后可供其他客户进程以后使用
- 端口号只具有本地意义,即端口号只是为了标识本计算机应用层的各进程
- 端口号使用是十六比特标识,取值范围0-65535,可分为三类
复用和分用的概念
复用是指将多个应用程序的数据合并在一起,通过运输层的传输协议(如TCP或UDP)将它们传输到目标设备。这个过程中,运输层会将每个应用程序的数据添加一个特定的标识(如端口号)来进行区分,从而实现不同应用程序之间的数据复用。分用是指将接收到的数据按照标识(如端口号)进行区分,并将它们交付给相应的应用程序。在接收端,运输层需要对每个数据包进行解包,提取其中的标识信息,并根据标识信息将数据包交给目标应用程序。
常用端口号
- UDP:IP协议字段 17
- DNS: 53
- DHCP: 67/68
- TFTP: 69
- SNMP: 161
- RIP: 520
- TCP:IP协议字段 6
- FTP: 20/21
- SMTP: 25
- HTTP: 80
- BGP: 179
- HTTPS: 443
5.3 UDP和TCP的对比
- 连接方式:TCP是面向连接的协议,UDP是面向无连接的协议。TCP在数据传输之前需要建立连接,而UDP直接发送数据包。
- 可靠性:TCP是可靠的协议,UDP是不可靠的协议。TCP提供数据传输的可靠性,它使用确认和重传机制来确保数据的可靠传输。UDP没有确认和重传机制,因此不保证数据的可靠传输。
- 数据报文:TCP传输的数据被分割为多个数据包,每个数据包有一个序号和确认号。UDP传输的数据被分割为多个数据报文,每个数据报文都有一个独立的标识符。
- 速度:UDP比TCP更快。由于TCP提供了可靠性保证,它需要建立连接、传输数据并关闭连接等多个步骤,因此速度相对较慢。UDP没有这些步骤,因此速度更快。
- 流量控制:TCP提供流量控制,可以控制数据的传输速度,避免网络拥塞。UDP没有流量控制,发送方会以最大速度发送数据,可能会导致网络拥塞。
- 适用范围:TCP适用于要求可靠传输的应用程序,如电子邮件、文件传输、网页浏览等;UDP适用于实时应用程序,如实时音视频传输、游戏等。
- 拥塞控制:TCP可以根据网络的拥塞情况自动调整传输速度,避免网络拥塞。UDP没有拥塞控制机制,因此如果网络出现拥塞,会导致数据包的丢失。
- 带宽利用率:TCP在传输数据时,会利用滑动窗口机制来提高带宽利用率。UDP没有滑动窗口机制,因此在带宽利用率方面不如TCP。
- 包头大小:UDP的包头只有8个字节,而TCP的包头至少有20个字节。因此在传输同样大小的数据时,UDP的包头占据的比例更小,更适合网络带宽较小的场景。
5.4 TCP的流量控制
TCP的流量控制是一种机制,用于控制TCP连接的传输速率,以避免数据包的丢失和网络拥塞。TCP使用滑动窗口协议来进行流量控制。实现方式:在TCP连接建立时,接收方会告诉发送方它的可用缓存大小,也就是滑动窗口大小。发送方在发送数据时,会检查接收方的滑动窗口大小,并将发送的数据限制在接收方滑动窗口大小内。一旦发送方发送的数据被接收方确认接收,发送方的滑动窗口会相应地向前移动,允许发送更多的数据。如果接收方的缓存被填满,滑动窗口的大小就会变为零,发送方就不能再向接收方发送数据,直到接收方的缓存有空间为止。
TCP发送方收到接收方的零窗口通知后,应启动持续计时器。持续计时器超时后,向接收方发送零窗口探测报文。零窗口探测报文段也有重传计时器,重传计时器超时后,零窗口探测报文段会被重传
5.5 TCP的拥塞控制
拥塞基本概念
- 某一时间段内,对网络的某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏。这就叫做拥塞
- 计算机网络中的链路容量(带宽)、交换节点中的缓存和处理机等,都是网络资源
- 若出现拥塞而不进行处理,整个网络的吞吐量将会随着输入负荷的增大而下降
拥塞控制算法
- 慢启动(Slow Start):在TCP连接建立后,发送方会把拥塞窗口(cwnd)初始化为一个较小的值,然后逐渐增加cwnd的大小(窗口大小按指数增加,2的n-1次方),以探测网络的带宽和拥塞程度。慢启动算法的目标是尽可能地快速增加cwnd,同时避免网络拥塞。
- 拥塞避免(Congestion Avoidance):在慢启动阶段,cwnd增长得很快,但是当cwnd增长到一定程度时,就容易引起网络拥塞。因此,在cwnd达到一个阈值时,TCP就会进入拥塞避免阶段。在这个阶段,cwnd的增长速度会放缓(每经过一个传输轮次,拥塞窗口 cwnd = cwnd + 1),以避免网络拥塞。
- 快速重传(Fast Retransmit):在TCP传输数据时,如果发送方连续收到三个重复的ACK(即接收方确认接收的ACK),就认为数据包丢失了,就会立即重传数据包,而不必等到超时后再进行重传。这种机制称为快速重传。
- 快速恢复(Fast Recovery):当发送方收到三个重复的ACK时,就会立即重传丢失的数据包,并将cwnd减半,以避免网络拥塞。但是,由于cwnd减半,可能会导致发送方无法充分利用网络的带宽。因此,在快速重传后,TCP就会进入快速恢复阶段,逐渐增加cwnd的大小,以尽可能充分利用网络带宽。
5.6 TCP超时重传时间的选择
超时重传时间选择是TCP最复杂的问题之一
- 若超时重传时间RTO设置的比往返时间RTT值小很多,会引起报文段的不必要重传,增加网络负荷
- 若超时重传时间RTO设置的比返时间RTT值大很多,会导致重传时间推迟太长,从而造成网络空闲,降低传输效率RFC6298建议使用下式计算超时重传时间RTO出现超时重传,新RTO是旧RTO的两倍
5.7 可靠传输的实现
- TCP基于以字节为单位的滑动窗口来实现可靠传输
- 发送方在未收到接收方的确认时,可将发送窗口内还未发送的数据全部发送出去
- 接收方只接收序号落入发送窗口内的数据
- 虽然发送方的发送窗口是根据接收方的接收窗口设置的,但在同一时刻,发送方的发送窗口井不总是和接方的接收窗口一样大
- 网络传送窗口值需要经历一定的时间滞后,并且这个时间还是不确定的
- 发送方还可能根据网络当时的拥塞情况适当减小自己的发送窗口尺寸
- 对于不按序到达的数据应如何处理,TCP井无明确规定
- 如果接收方把不按序到达的数据一律丢弃,那么接收窗口的管理将会比较简单,但这样做对网络资源的利用不利,因为发送方会重复传送较多的数据。
- TCP通常对不按序到达的数据是先临时存放在接收窗口中,等到字节流中所缺少的字节收到后,再按序交付上层的应用进程
- TCP要求接收方必须有累积确认和捎带确认机制,这样可以减小传输开销。接收方可以在合适的时候发送确认,也可以在自己有数据要发送时把确认信息顺便捎带上。
- 接收方不应过分推迟发送确认,否则会导致发送方不必要的超时重传,这反而浪费了网络的资源。
- 捎带确认实际上并不经常发生,因为大多数应用程序很少同时在两个方向上发送数据。
- TCP的通信是全双工通信。通信中的每一方都在发送和接收报文段。因此,每一方都有自己的发送窗口和接收窗口。在谈到这些窗口时,一定要弄清楚是哪一方的窗口
TCP标准规定,确认推迟的时间不应超过0.5秒。若收到一连串具有最大长度的报文段,则必须每隔一个报文段就发送一个确认[RFC1122]
5.8 TCP的运输连接管理
- TCP是面向连接的协议,它基于运输连接来传送TCP报文段
- TCP运输连接的建立和释放是每一次面向连接的通信中必不可少的过程
- TCP连接过程
- 三报文握手建立连接
- 数据传输
- 四报文挥手释放连接
5.8.1 TCP的连接建立
TCP的连接建立需要解决的问题
- 使TCP双方能够确知对方的存在
- 使TCP双方能够协商一些参数(如最大窗口值、是否使用窗口扩大选项和时间戳选项以及服务质量等
- 使TCP双方能够对运输实体资源(如缓存大小、连接表中的项目等)进行分配
三报文握手具体流程
- TCP规定,SYN=1的报文段不能携带数据,但要消耗一个序列号
- TCP规定,普通的确认报文如果不携带数据,则不消耗序号
- TCP客户进程最后发送一个普通的TCP确认报文段是为了防止已经失效的连接请求报文段突然又传到服务端,因而产生错误
5.8.2 TCP的连接释放
四报文挥手具体流程
MSL最长报文段寿命,RFC793建议为2分钟时间等待状态是为了防止TCP服务器进程收不到最后一个TCP确认报文段,从而无法进入关闭状态
TCP保活计时器
- TCP服务器进程每收到一次TCP客户进程的数据,就重新设置井启动保活计时器(2小时定时)。
- 若保活计时器定时周期内未收到TCP客户进程发来的数据,则当保活计时器到时后,TCP服务器进程就向TCP客户进程发送一个探测报文段,以后则每隔75秒钟发送一次。若一连发送10个探测报文段后仍无TCP客户进程的响应,TCP服务器进程就认为TCP客户进程所在主机出了故限接着就关闭这个连接
- 防止tcp客户进程所在主机出现故障,从而导致tcp服务器进程一直等待
5.9 TCP报文段的首部格式
- 为了实现可靠传输,TCP采用面向字节流的方式
- TCP在发送数据的时候,是从发送缓存中取出部分或者全部字节并添加一个首部时期成为TCP报文段后进行发送
- 一个TCP报文段有首部和数据载荷两部分构成
- TCP的全部功能都体现在他首部中各字段的作用
首部格式
- 源端口:占16比特,写入源端口号,用来表示发送该TCP报文段的应用进程。
- 目的端口:占16比特,写入目的端口号,用来标识接收该TCP报文段的应用进程
- 序号:
- 占32比特,取值范围【0,2^32-1】序号增加到最后一个,下一个序号就又回到0;
- 用于指出本tcp报文段数据载荷的第一个字节的序号
- 确认号:
- 占32比特,取值范围【0,2^32-1】确认号增加到最后一个,下一个确认号就又回到0;
- 指出期望收到下一个TCP报文段的数据载荷的第一个字节的序号,也是对之前收到的所有数据的确认
- 确认标志位ACK:
- 取值为1的确认号字段才有效,取值为0确认号字段无效;
- TCP规定,在建立连接后的所有传送的TCP报文段必须把ACK置为1
- 数据偏移:占4比特,并以4字节为单位
- 用来指出TCP报文段数据载荷部分的起始出距TCP报文段的起始处有多远
- 实际上就是指出了TCP报文段的首部长度
- 保留:占6比特,置为零
- 窗口:占16比特,以字节为单位
- 指出发送本报文段的一方的接收窗口
- 窗口值作为接收方让发送方设置其发送窗口的依据
- 以接收方的接收能力来控制发送方的发送能力称为流量控制
- 同步标志位SYN:在TCP建立连接时用来同步序号
- 终止标志位FIN:用来释放TCP连接
- 复位标志位RST:用来复位TCP连接
- 当RST=1,表明TCP连接出现异常,必须释放连接,然后重新建立连接
- 推送标志位PSH:接收方的TCP收到该标志位为1的报文段会尽快上交应用进程,而不必等到接收缓存都填满后再向上交付。
- 紧急标志位URG:取值为1时紧急指针字段有效;取值为0时紧急指针字段无效。
- 紧急指针:占16比特,以字节为单位,用来指明紧急数据的长度
- 当发送方有紧急数据时,可将紧急数据插队到发送缓存的最前面,井立刻封装到一个TCP报文段中进行发送。紧急指针会指出本报文段数据载荷部分包含了多长的紧急数据,紧急数据之后是普通数据
- 选项:
- 最大报文段长度MSS选项:TCP报文段数据载荷部分的最大长度。
- 窗口扩大选项:为了扩大窗口(提高吞吐率)
- 时间戳选项
- 用来计算往返时间RTT
- 用于处理序号超范围的情况,又称为防止序号绕回PAWS。
- 选择确认选项
- 填充:由于选项的长度可变,因此使用填充来确保报文段首部能被4整除(因为数据偏移字段,也就是首部长度字段,是以4字节为单位的)。
-
【全球新要闻】(数据库系统概论|王珊)第九章关系查询处理和关系优化-第二节:查询优化
pdf下载:密码7281专栏目录首页:【专栏必读】(考研复试)数据库系统概论第五版(王珊)专栏学习笔记目...
来源: 第五章 运输层
代表建议试行十二年义务教育:中考定终身太早 拒绝小学初中内卷
一男子和峨眉山猴子练搏击互殴 当事人回应:条件反射、请勿模仿
【全球新要闻】(数据库系统概论|王珊)第九章关系查询处理和关系优化-第二节:查询优化
轻松玩转Makefile | 企业项目级Makefile实例
精选! 《狂飙》“大嫂”高叶上手小米13:徕卡人像实拍样张美呆
天天时讯:3端通用!腾讯视频VIP会员年卡148元到手
当前快讯:董明珠称格力不看文凭只看能力:研究生到一线生产线非人才
济南动物园网红小黑猩猩“柒仔”去世:初步研判系突发疾病死亡
每日热议!奔驰4S店展车充新车 女子上门维权:被骗了、将走法律程序
天天快资讯丨突发!蔚来前实习生称遭同事强奸未遂 反被拒绝留用!公司:已成立调查组
“清籁”琴
环球观点:5-Nacos注册中心
灭蟑螂小窍门厨房_灭蟑螂小窍门
关于目录问题的总结-Python
天天即时看!实现js继承的几种方式以及他们的优缺点
今热点:AI修复图片画质和视频画质的方法
【热闻】数学建模(一):LP 问题
【新要闻】如何去除新家的甲醛_如何去除新家的甲醛
2023年2月随笔-难产的“学系列”
关注:乘风破浪,遇见最佳跨平台跨终端框架.Net Core/.Net生态 - 深入OpenAI与马斯克、微软的秘密,通过API轻松接入ChatGPT
天天热推荐:git clone的时候出现出现 fatal: unable to access 'https://github.com/...':OpenSSL
第125篇: 期约Promise基本特性
环球速递!kong和konga的安装部署
视焦点讯!腾讯云短信的使用方法
06while循环
环球热头条丨外星人AW620M无线鼠标上市:26000 DPI、140小时长续航
世界简讯:PC优化翻车!《卧龙:苍天陨落》官方道歉:将尽快推出更新补丁
环球头条:多线程全面总结
怎么注册微信公众号?
Pro版同款!荣耀Magic5至臻版影像泄露:5000万像素旗舰三摄
今日要闻!《LOL》英雄价格正式调整!全面下调
全球热议:理想L9车主实惨:白天打开星环模式灯 扣1分罚款100元?
iPhone良品率不足50%也不怕 富士康又在印度设立新工厂
小鹏汽车欲靠P7“回血”:老款清库再降3.5万、新车下周上市
降价后真香了!特斯拉中国2月销量出炉:暴涨130%
9.98万起杀疯!比亚迪王朝系列2月销量超10万台:秦PLUS贡献3成
2月新能源汽车销量榜:比亚迪一家占比近4成 第三名暴走
世界资讯:委员蒋胜男谈35岁职场危机:根源是“996” 必须改变
今日讯!中国性能车!全新领克03 TCR赛车官图发布:售价超百万
排查系统执行SQL与数据库直接执行结果不一致的问题
每日资讯:详细剖析|袋鼠云数栈前端框架Antd 3.x 升级 4.x 的踩坑之路
记录--手摸手带你撸一个拖拽效果
天天讯息:VSCode官方的配置同步方案
快报:144MB缓存立大功 AMD锐龙7000X3D内存自由:4800都稳赢i9
环球观点:AMD RX 7900 XT价格全面雪崩:沦落到RTX 4070 Ti的级别
《旷野之息》发售6周年:续作《塞尔达传说:王国之泪》发布新预告
当前视点!中国围棋第一人易主!李轩豪超越柯洁 AI立大功
环球快讯:vivo推出“手语翻译官”应用:准确率可达80%以上
网络通信——TCP “三次握手“、“四次挥手“ 详解
PHP语言在线代码运行编译工具推荐
今日报丨JavaScript 回调函数属于闭包?
全球快看:ChatGPT开放API,上来就干到最低价,可以人手一个ChatGPT了
全球新动态:Spring事务使用注意事项
【全球独家】限制儿童支付金额方便了!微信青少年模式升级:一键开启上线
三排七座!仰望U8内饰曝光:比亚迪首款百万豪车来了
世界热门:刚失败一次后 日本不放弃:新一代运载火箭尝试再度发射
热到离谱?首个冲上20℃的北方省会诞生 下周或破30℃
欧洲2035年禁售燃油车要黄?德国公然反对!意大利:我也不同意
环球精选!登月用!中国新一代载人火箭预计2027年首飞
天天即时:《狂飙》“大嫂”高叶上手小米13:女神持机美如画
全球观速讯丨火山引擎 DataTester:A/B 实验如何实现人群智能化定向?
环球快资讯丨Redis分布式锁常见坑点分析
世界今日讯!eas里客户端保存,提交里增加校验规则和必填
访问者模式
世界微动态丨网友偶遇眼镜王蛇求助 博物杂志:务必远离、打输住院打赢坐牢
世界今亮点!Vtuber因直播《霍格沃茨之遗》被骚扰 宣布毕业
天天讯息:委员建议研究生招生规模动态扩大:缓解考研难
全球聚焦:收个滴滴Offer:从小伙三面经历,看看需要学点啥?
环球热资讯!Study for Go! Chapter one - Type
环球最新:手写模拟Spring底层原理-Bean的创建与获取
速看:兰博基尼领衔 今年值得期待的7款跑车 买不起还不能看看?
女子试用期被辞退 现场给HR普法:金句频出网友点赞称解气
每日聚焦:靠ChatGPT年入百万!合法还不限学历专业:一般人我不告诉他(doge)
全球新消息丨韩系车日子不好过!起亚狮铂拓界限时优惠:降3万还给大礼包
zip文件结构
头条:与时俱进推动智慧城市建设,智慧管网监测加强城市治理能力
全球视讯!Java项目集成工作流activiti,会签
简单介绍Python中如何给字典设置默认值
播报:LG:三星QD OLED电视更容易烧屏
世界聚焦:掏耳朵怎么就这么爽!
今日视点:不只全面屏!努比亚Z50 Ultra后摄惊艳:黄金镜皇组合
男子月薪3千相亲角“反向相亲”气到大妈 大爷理解:靠颜值吃饭
每日热文:吴京+杰森斯坦森主演!《巨齿鲨2》暑期上映 国内有望同步
环球视点!ffmpeg视频上传及压缩Linux配置篇下
世界快资讯:【Avalonia】【跨平台】关于Prism项目模块化在Linux下路径问题
浙大揭秘吃鱼为什么会变聪明 网友:告诉老默 我想吃鱼了
上海消保委提醒谨慎购买威马汽车:经营异常、消极应对投诉
特斯拉将放弃稀土材料 中国公司无惧:目前没有东西替代
即时:B站两款自研游戏将上线 CEO陈睿:能挣钱的游戏只剩下两种
《生化危机4:重制版》新演示/截图 里昂拯救黑丝碍事梨
焦点日报:配置资源管理Secret和ConfigMap
环球视点!Windows故障转移群集 和 SQLServer AlwaysOn 搭建教程
(数据库系统概论|王珊)第九章关系查询处理和关系优化-第一节:查询处理
全球速递!视频上传及压缩SpringBoot篇上
世界热门:el-input 使用 回车键会刷新页面的问题
全球最强!传音260W快充手机将亮相:10分钟内充满
性能对标奔驰大G 比亚迪“F品牌”首车曝光:够硬够强
世界快消息!传欧盟准备批准微软收购动视-暴雪
当前报道:女司机“神操作”:100来公里高速连撞4次 竟甩锅路太窄