




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第6章章 互联网(互联网(internet)2022-5-52第六章第六章 Internet6.1 Internet概述6.2 协议与互连的原理6.3 IP层6.4 运输层 6.5 应用层6.6 IPv62022-5-53第十章第十章 Internet的运输层的运输层applicationtransportnetworkdata linkphysicalapplicationtransportnetworkdata linkphysicalnetworkdata linkphysicalnetworkdata linkphysicalnetworkdata linkphysicalnetwo
2、rkdata linkphysicalnetworkdata linkphysicallogical end-end transport问题:1)IP层只提供Besteffort的服务,如果用户需要可靠的服务怎么办?2) 主机上正在通信的一对进程相互间如何寻址?2022-5-54Internet传输层协议概述传输层协议概述应用层传输层网络层网络接入层TCPUDP2022-5-55TCP/UDP报文段格式报文段格式0816243116位源端口16位目的端口32位序列号32位确认号URGACKPSHRSTSYNFIN首部长度保留(6位)16位窗口大小16位TCP校验和16位紧急指针选项数据0816
3、243116位源端口16位目的端口16位UDP校验和数据UDP报文段格式报文段格式TCP报文段格式报文段格式16位UDP长度2022-5-561运输层运输层的协议和服务的协议和服务l两个运输层协议TCP,UDPl运输层提供基于端口号的复用能力。l运输层运行于端系统之上,提供不同主机上进程之间的逻辑通信能力。lTCP在两个进程间提供可靠数据传送服务lTCP段的结构l接收证实和超时重传l流量控制l连接管理l拥塞控制但TCP不保证时延和带宽2022-5-57TCP保证可靠服务的机制保证可靠服务的机制l数据报丢失:引入接收确认,重传机制l错序:在段中引入顺序号,使在最终目的地可以进行分段的重装。lCh
4、ecksum:保证识别传输中的差错l慢的接收者:引入流控机制,使接收者可控制发送者的速率。l网络拥塞:控制源端的发送量,使之不超过网络的处理能力。l并发复用:引入端口号来区分不同的连接2022-5-582 TCP报文段的格式报文段的格式源端口号目的端口号32 bits 应用数据(可变长)顺序号确认号接收窗口紧急指针校验和FSRPAU头部长度保留可选项(变长)20字节小于40字节64k字节顺序号顺序号:当SYN1,代表初始序号ISN;其它时候SN表示该段中第一个数据字节的序号。确认号确认号:代表TCP接收实体期望接收的下一个字节的序号。头部长度头部长度:以32bit为单位。接收窗口接收窗口:由接
5、收方给出的愿意接受的字节数量,起始序号由确认号字段给出。校验和校验和:对整个报文段进行校验。2022-5-59l紧急指针:该字段的值加上报文段的序号后,代表紧急数据序列的最后一个字节,它使收方能够知道共有多少紧急数据到来。lURG:置位代表紧急指针字段有意义。lACK: 确认号字段有意义。lPSH:强制交付lRST:重建连接lSYN:序号同步和连接建立。lFIN:本端不再发送数据,连接释放2022-5-5103 TCP的连接管理的连接管理l面向连接:为实现一对进程之间可靠的数据通信,TCP采用了面向连接的方式,即在进程间先建立连接,再传输数据。l连接是实现可靠传输机制的基础l连接的标识:IP地
6、址端口号(运输层)连接,该连接又被称为套接字Socket。lTCP连接是主机到主机的连接,即只在直接通信的两个主机上维持连接状态。l套接字是一个全双工连接 A-B =【(本地IP,本地端口),(远端IP,远端端口)】2022-5-511Socket的概念的概念进程进程InternetOS控制程序员控制TCP层层SocketBSocketA2022-5-512基于套接字的多路分解基于套接字的多路分解ClientIP:BP1client IP: AP1P2serverIP: CSP: 9157DP: 80SP: 9157DP: 80P4P3D-IP:CS-IP: AD-IP:CS-IP: BSP:
7、 5775DP: 80D-IP:CS-IP: B2022-5-513TCPFTPTELNETDNSSNMPTFTPSMTPUDP2123255369161520TCP保留端口号保留端口号RIP在在C/S模式下,提模式下,提供特定服务的服务供特定服务的服务器必须公开其服务器必须公开其服务端口号,所有的端口号,所有的Internet标准服标准服务都有自己的保留务都有自己的保留端口号,这些端口端口号,这些端口号被称为号被称为well-known port,一般一般1024以内的端口以内的端口将被将被OS保留。保留。2022-5-514连接的建立过程:三次握手连接的建立过程:三次握手l每一方通知对方自
8、己将要使用的初始SN。l为什么不简单的用 0?l每一方确认对方的SNlSYN-ACK: 确认 SN + 1l第二个SYN可以和第一个ACK合并SYN: SNxACK: ANx+1SYN: SNyACK: ANy+1ClientServer2022-5-515连接的释放过程连接的释放过程l每一方独立发起释放过程l发送 FIN 消息l“Im not going to send any more data”l另一方可以继续发送数据l单向连接l确认必须继续l确认 FINl确认最后的 SN + 1释放过程看成两个独立的单工连接来理解ABFIN, SNaACK, AN=a+1ACK,DataACK, AN
9、=B+1FIN,SN=B2022-5-5164 TCP的流量控制的流量控制问题:如何限制发送者的速率以实现收发速率匹配?l链路层采用固定窗口大小的流量控制。lTCP采用由接收方在ACK中通知发送方可用窗口大小(信用量)流控机制。但主机到主机的往返时延RTT(round-trip time)变化大。l为什么要引入这种复杂性?2022-5-517滑动窗口协议中的发送方滑动窗口协议中的发送方l顺序号:Seq,发送方必须在分组头中包含一个顺序号。l窗口尺寸:W,允许的连续发送未被证实的分组的最大个数。l证实信号:Ack(i);证实0i1的分组被正确接受,累计证实策略。l定时器:l重传机制:当发生丢失时
10、,进行重发纠错。1314 15 161718 19 20 21 22 23 24已发送且证实的已发送未证实的目前可发送的TCP窗口WSendBaseNextSeq2022-5-518acknowledgedsent可以发送的可以发送的 超出超出window的的Source PortDest. PortSequence NumberAcknowledgmentHL/FlagsWindowD. ChecksumUrgent PointerOptionsSource PortDest. PortSequence NumberAcknowledgmentHL/FlagsWindowD. Checksu
11、mUrgent PointerOptions.Packet SentPacket Received2022-5-519TCP中的信用量流控机制中的信用量流控机制l确认与流控分离的思想:l涉及三个字段:顺序号SN,确认号AN,窗口尺寸Wl传输的每个字节均分配一个SN。l当发送方收到一个返回的报文段ANi,Wj,它的含义是:l序号0i-1的字节都被确认,下一个期望接收的字节是i.l发送方新的窗口大小为Wj,合法的窗口内的序号为ij-1。2022-5-520信用量机制示例信用量机制示例2022-5-521TCP的窗口大小的窗口大小l确定合理的W值是实现高效率流量控制的关键。W的取值显然与RTT有关,
12、也与接收端可分配的缓冲区数量有关。(为简化分析,先不考虑缓冲区的限制)l设往返时延RTT,线路速率Rbps,分组长度=L。 则当W (RTTR)/L时,不会造成发送端因等待确认信号,所引起的线路空闲。 直观上,W与RTT成正比。但实际上W太大无意义,只会增加缓冲区的开销。l但在Internet上,端到端的时延变化很大,如何确定RTT?2022-5-522确定确定RTTl由于Internet的状态随时间在变,固定的RTT值对实际的网络情况就可能有时显得太长,有时又太短。因此TCP采用观察最近的报文段的往返时延的方法来估计RTT,然后设定一个大一些的值。lTCP的RTT估值公式 估计RTT(1)估
13、计RTT 样本RTT 其中, 在【RFC2988】的参考值 0.125。 含义是,使RTT对短暂的时延变化不敏感。2022-5-523结论:结论:TCP的窗口值的窗口值l在发送一侧,TCP的窗口WminCwin,RcvWin,其中RcvWin由接收方在ACK中给出, 而Cwin由发送方根据网络的状态确定。l因此,发送方的最大吞吐量 minCwin,RcvWin/RTT2022-5-524TCP的丢失重传机制的丢失重传机制l由于网络层不提供反馈信息,为保证可靠传输,TCP必须采用超时/重传机制来处理报文段的丢失问题。l丢失的定义:超时或连续收到三个冗余的ACK。l问题的关键:如何设定超时定时器R
14、TO? 显然,RTO必须大于RTT,否则会造成不必要的重传。2022-5-525RTO的估算公式的估算公式l显然,RTO也不应比RTT的估值大太多,否则当出现丢失时,TCP将不能很快地重传该报文段。l估值RTO估值RTT4DevRTT(偏差) DevRTT(1) DevRTT |当前RTT估值RTT均值) 推荐值0.25.2022-5-526TCP: 重传示例Host ASeq=100, 20 bytes dataACK=100timepremature timeoutHost BSeq=92, 8 bytes dataACK=120Seq=92, 8 bytes dataSeq=92 tim
15、eoutACK=120Host ASeq=92, 8 bytes dataACK=100losstimeoutlost ACK scenarioHost BXSeq=92, 8 bytes dataACK=100timeSeq=92 timeoutSendBase= 100SendBase= 120SendBase= 120Sendbase= 1002022-5-527TCP 丢失重传 2Host ASeq=92, 8 bytes dataACK=100losstimeoutCumulative ACK scenarioHost BXSeq=100, 20 bytes dataACK=120t
16、imeSendBase= 120结论:结论: 实际中,实际中,RTO的值一般的值一般为为1秒左右。秒左右。一旦发生超时,一旦发生超时,TCP将将重传序号最小的未被确认重传序号最小的未被确认的报文段,并将的报文段,并将RTO值加值加倍。倍。发送端只为最小的未被发送端只为最小的未被确认的报文段启动一个超确认的报文段启动一个超时定时器,每收到一个时定时器,每收到一个ACK,执行一次复位,执行一次复位。2022-5-5285 TCP的拥塞控制的拥塞控制概述l原因:流进网络的数据量超过了网络的处理能力l信源不能知道网络的实时状态。l信源彼此之间互相不知道对方的行为l流量控制的区别:控制机制相似,但触发的
17、原因与目的不同。l拥塞导致的现象:分组丢失,时延加大,网络吞吐量下降10 Mbps100 Mbps1.5 Mbps2022-5-529拥塞控制技术的分类拥塞控制技术的分类l端到端的拥塞控制:l没有来自网络的显式拥塞反馈指示l端系统只能通过观测loss, delay等推测拥塞lTCP采用次方案网络辅助的拥塞控制网络辅助的拥塞控制:n路由器给端系统提供拥塞指示n单比特拥塞指示位 n指明发送者应该使用的发送速率n问题: 导致路由器行为复杂化l根据网络层是否为运输层提供显式的拥塞状态信息来分类2022-5-530TCP拥塞控制要解决拥塞控制要解决 的的3个问题个问题1)如何限制一个已发生拥塞的连接的发
18、送速率?2)TCP发送方如何确定发生了拥塞?3)当确定发生了拥塞后,采用什么算法来改变发送速率?2022-5-531发送方如何调整发送速率?发送方如何调整发送速率?l接收窗口RcvWin的值由接收方确定,然后通知发送方,它用来防止接收方缓存溢出。但没有提供网络的拥塞状况。l网络的状况,由发送方探测确定,并记为拥塞窗口Cwin。l在任何时候,发送方实际的窗口大小应为CWin和RcvWin中的最小值,即满足: LastByteSent-LastByteAcked=minCWin,RcvWin.l为分析方便,我们忽略RcvWin,则得到发送方的发送速率RCWin/RTT。l显然,在发送方调整CWin,就可以调整发送速率。2022-5-532拥塞的确定与控制算法拥塞的确定与控制算法l在TCP发送方,如果超时,或连续受到三个冗余 的ACK,则认为发生分组丢失事件,从而判定拥塞。lTCP的拥塞控制算法:l加性增,乘性减AIMD(additive-increase and multiplicative-decrease)l慢启动(slowstart)l超时反应2022-5-533Cwin在不同阶段的变化方式在不同阶段的变化方式l慢启动阶段:每经过1个RTT,Cwin加倍。 即每收到一个Ack,执行CwinCwin1。l拥塞避免阶段:在没有发生丢失事件下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 桥梁工程设计考题及答案
- 幼儿园数学智慧点滴试题及答案
- 家具设计中如何实现艺术性与功能性的结合试题及答案
- 盐湖提锂技术成本降低与产能快速扩张可行性研究报告
- 绿色环保产业发展资金申请报告:环保产业技术创新与产业化
- 电动汽车安全技术的现状与发展前景探讨试题及答案
- 新安全工程师施工安全考点试题及答案
- 未来科技背景下的大学物理考试试题及答案
- 2025特岗教师招聘教学能力测试题目及答案
- 2025南航招聘空姐面试试题及答案
- 上肢肘腕关节松动术
- 2024年3月昆明市高三语文三诊一模考试卷附答案解析
- (高清版)DZT 0419.3-2022 矿产资源潜力评价规范(1:250 000)第3部分:成矿规律研究
- 科学道德与学术规范知识试题及答案
- 将健康社区纳入社区发展规划
- 痛风科普讲座课件
- 心肌梗死的早期识别与紧急处理
- 地震监测技术在城市交通管理中的应用
- 国开【形考】《管理英语(3)》形成性考核1-8答案
- 2023学年完整公开课版用户思维
- 医院获得性肺炎的诊断与治疗
评论
0/150
提交评论