版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章因特网(Internet)互联网(internet)是指两个或者以上的网络互连而成的网络。因特网(Internet)是互联网的一种,使用TCP/IP协议实现不同的设备之间的通信。万维网(WWW)是一种基于超文本相互链接而成的全球性系统,是因特网所能提供的服务之一。互联网包含因特网,因特网包含万维网。2023/2/72第六章Internet6.1Internet概述6.2协议与互连的原理6.3IP层6.4运输层
6.5应用层6.6IPv62023/2/736.4运输层应用层运输层网络层网络接入层TCPUDP运输层提供不同主机上应用进程之间的端到端逻辑通信。运输层提供基于端口号的寻址、复用/分用能力。2023/2/74运输层的协议和服务两个运输层协议UDP(自学)只在IP数据报服务之上增加了复用/分用和(数据报)差错检测功能无连接;尽力而为、不可靠交付;面向报文、无拥塞控制TCP√在两个应用进程之间提供可靠数据传送服务面向连接;可靠交付;面向字节流TCP段结构TCP连接管理TCP流量控制TCP接收证实和超时重传TCP拥塞控制2023/2/75TCP报文段的格式源端口号目的端口号32bits
应用数据(可变长)顺序号(SN)确认号(AN)接收窗口紧急指针校验和FSRPAU头部长度保留可选项(变长)20字节小于40字节64k字节2023/2/76TCPF
T
PT
E
L
N
E
TD
N
SS
N
M
PT
F
T
PS
M
T
PUDP2123255369161520运输层端口号
服务器端口号(0~49151)
客户端短暂端口号(49152~65535)R
I
P应用层运输层熟知/系统端口号:0~1023。Internet标准服务程序。在C/S模式下,提供特定服务的服务器必须公开其服务端口号。登记端口号:1024~49151。没有熟知端口号的应用程序。所有的Internet服务使用的周知端口列表可在找到2023/2/77顺序号:SYN=1时代表初始序号ISN;否则SN表示该段中第一个数据字节的序号。确认号:代表TCP接收实体期望接收的下一个字节的序号。头部长度:以32bit为单位。接收窗口:由接收方给出的愿意接受的字节数量,起始序号由确认号字段给出。校验和:对整个报文段进行校验。源端口号目的端口号32bits
应用数据(可变长)顺序号(SN)确认号(AN)接收窗口紧急指针校验和FSRPAU头部长度保留可选项(变长)20字节小于40字节64k
字节2023/2/78紧急指针:该字段的值加上报文段的序号后,代表紧急数据序列的最后一个字节,它使收方能够知道共有多少紧急数据到来。URG:紧急指针字段有效ACK:
确认号字段有效PSH:强制交付RST:重建连接SYN:序号同步,连接建立FIN:无数据发送,连接释放源端口号目的端口号
应用数据(可变长)顺序号(SN)确认号(AN)接收窗口紧急指针校验和FSRPAU头部长度保留可选项(变长)32bits2023/2/79TCP连接管理面向连接为实现应用进程之间的可靠数据通信,TCP采用了面向连接的方式,即在进程间先建立连接,再传输数据,然后释放连接。连接是实现可靠传输机制的基础连接的标识套接字Socket=(IP地址:端口号)TCP连接TCP连接=【socketA,socketB】 =【(本地IP:本地端口号),(远端IP:远端端口号)】2023/2/710Socket的概念进程进程InternetOS控制程序员控制TCP层SocketBSocketA2023/2/711基于套接字的多路分解clientIP:BP1clientIP:AP1P2serverIP:CSP:9157DP:80SP:9157DP:80P4P3D-IP:CS-IP:AD-IP:CS-IP:BSP:5775DP:80D-IP:CS-IP:B2023/2/712连接建立过程:三次握手每一方通知对方自己将要使用的初始SN(ISN)每一方确认对方的SNSYN-ACK:确认SN+1第二个SYN可以和第一个ACK合并SYN:SN=xACK:AN=x+1SYN:SN=yACK:AN=y+1ClientServer2023/2/713连接释放过程每一方独立发起释放过程发送FIN消息“I’mnotgoingtosendanymoredata”另一方可以继续发送数据单向连接确认必须继续确认FIN确认最后的SN+1释放过程看成两个独立的单工连接来理解ABFIN,SN=AACK,AN=A+1ACK,AN=?+1DataACK,AN=B+1FIN,SN=B2023/2/714TCP保证可靠服务的机制可靠服务:无差错、不丢失、不重复、不错序。如何保证?差错:校验和保证识别出传输差错丢失:引入接收确认和重传机制重复、错序:引入顺序号和确认号,使在最终目的地可以进行分段的重装发快收慢:引入流量控制,使接收者可控制发送速率网络拥塞:引入拥塞控制,调整源端的发送量,使之不超过网络处理能力并发应用:引入端口号区分不同的连接,实现复用/分用TCP可靠传输的工作原理TCP下层网络所提供的是不可靠传输,TCP必须采取适当措施才能保证两个运输层之间的可靠传输。自动重传请求(ARQ)协议在停等式ARQ中,发送方每发完一个分组就停止发送,等待接收方确认,收到确认后再发送下一个分组,否则重传该分组。在连续(回退N)
ARQ中,发送方维持着一个一定大小的发送窗口,位于发送窗口内的所有分组都可连续发送出去,而中途不需要等待对方的确认。当收到接收方确认分组出错后,发送方将重传已发送过的N个分组。在选择性重传ARQ中,当收到接收方确认分组出错后,发送方只发送发生传送错误的分组。滑动窗口协议:该协议允许发送方在停止并等待确认前发送多个数据分组(窗口)。可以加速数据的传输,还可以控制流量的问题。自动超时重传:分组丢失、确认丢失、分组延迟。累积确认:对按序到达的最后一个分组发送确认。2023/2/7152023/2/716TCP流量控制流量问题:发送快,接收慢流量控制:限制发送者的速率以实现收发速率匹配流控机制:滑动窗口由接收方在ACK中给出接收窗口(信用量)发送方的发送窗口不能超过接收方的接收窗口2023/2/717滑动窗口协议发送方顺序号:Seq,发送方必须在分组头中包含一个顺序号。窗口尺寸:W,允许连续发送未被证实的分组的最大个数。证实信号:Ack(i);证实0~i-1分组被正确接收,累计证实策略。定时器:超时重传。重传机制:当发生丢失时,进行重发纠错。131415161718192021222324TCP窗口W已发送且证实的已发送未证实的目前可发送的SendBaseNextSeq2023/2/718acknowledgedsent可以发送的超出window的SourcePortDest.PortSequenceNumberAcknowledgmentHL/FlagsWindowD.ChecksumUrgentPointerOptions…SourcePortDest.PortSequenceNumberAcknowledgmentHL/FlagsWindowD.ChecksumUrgentPointerOptions...PacketSentPacketReceivedTCP发送侧:流量控制参数2023/2/719TCP信用量流控机制确认与流控分离的思想涉及三个字段:顺序号SN、确认号AN、窗口尺寸W传输的每个字节均分配一个SN窗口单位为字节,不是报文段当发送方收到一个确认报文段AN=i,W=j,意味着序号0~i-1的字节都被确认,下一个期望接收的字节序号为i发送方新的窗口大小W=j,合法的窗口内的序号为i~j-12023/2/720信用量机制-示例W=1400W=1000W=1400累积确认累积确认2023/2/721TCP窗口大小确定合理的W值是实现高效率流量控制的关键。W的取值显然与RTT有关,也与接收端可分配的缓冲区数量有关。(为简化分析,暂不考虑缓冲区的限制)设往返时延为RTT,线路速率=Rbps,分组长度=L,则当W≧(RTT×R)/L时,不会造成发送端因等待确认信号,引起的线路空闲。直观上,W与RTT成正比。但实际上W太大无意义,只会增加缓冲区的开销。但在Internet上,端到端的时延变化很大,如何确定RTT?2023/2/722确定RTT由于Internet的状态随时在变,固定的RTT值对实际的网络情况可能有时显得太长,有时又太短。因此TCP采用观察最近的报文段的往返时延的方法来估计RTT,然后设定一个大一些的值。TCP的RTT估值公式
估计RTT=(1-а)×估计RTT+а×样本RTT
其中,在【RFC2988】а的参考值а=0.125。
含义是,使RTT对短暂的时延变化不敏感。2023/2/723结论:TCP的窗口值在发送一侧,TCP的窗口W=min{CWin,RcvWin},其中RcvWin由接收方在ACK中给出,而CWin由发送方根据网络的状态确定。因此,发送方的最大吞吐量=min{CWin,RcvWin}/RTT2023/2/724TCP丢失重传机制由于网络层不提供反馈信息,为保证可靠传输,TCP必须采用超时重传机制来处理报文段的丢失问题。丢失的定义:超时或连续收到三个冗余的ACK。问题的关键:如何设定超时定时器RTO?显然,RTO必须大于RTT,否则会造成不必要的重传。2023/2/725RTO的估算公式显然,RTO也不应比RTT的估值大太多,否则当出现丢失时,TCP将不能很快地重传该报文段。估值RTO=估值RTT+4×DevRTT(偏差)
DevRTT=(1-ß)×DevRTT+ß×|当前RTT估值-RTT均值|
ß推荐值=0.252023/2/726TCP:重传示例-1HostASeq=100,20bytesdataACK=100timeprematuretimeout过早超时HostBSeq=92,8bytesdataACK=120Seq=92,8bytesdataSeq=92timeoutACK=120HostASeq=92,8bytesdataACK=100Loss丢失timeoutlostACKscenario丢失确认HostBXSeq=92,8bytesdataACK=100timeSeq=92timeoutSendBase=100SendBase=120SendBase=120Sendbase=1002023/2/727TCP:重传示例-2HostASeq=92,8bytesdataACK=100Loss丢失timeoutCumulativeACKscenario累积确认HostBXSeq=100,20bytesdataACK=120timeSendBase=120结论:实际中,RTO的值一般为1秒左右。一旦发生超时,TCP将重传序号最小的未被确认的报文段,并将RTO值加倍。发送端只为最小的未被确认的报文段启动一个超时定时器,每收到一个ACK,执行一次复位。累积确认2023/2/728TCP的拥塞控制拥塞:对网络资源的需求超过网络的承受能力,导致网络性能恶化。原因:信源不知道网络的实时状态。信源彼此之间互相不知道对方的行为。拥塞控制vs流量控制:拥塞控制是一个全局性的过程,就是防止过多的数据注入网络,导致路由器或链路过载。流量控制是一个端到端的问题,就是抑制发送端的发送速率,以免接收端来不及接收。控制机制相似,但触发的原因与目的不同。拥塞导致的现象:分组丢失;时延加大;网络吞吐量下降。10Mbps100Mbps1.5Mbps2023/2/729拥塞控制技术分类端到端的拥塞控制√没有来自网络的显式拥塞反馈指示端系统只能通过观测loss&delay等推测拥塞TCP采用此方案网络辅助的拥塞控制路由器给端系统提供拥塞指示单比特拥塞指示位指明发送者应该使用的发送速率问题:导致路由器行为复杂化根据网络层是否为运输层提供显式的拥塞状态信息来分类2023/2/730TCP拥塞控制要解决的3个问题(1)TCP发送方如何确定发生了拥塞?
拥塞的确定:检测网络性能指标:分组丢失率;平均分组时延;超时重传的分组数;平均队列长度;……在TCP发送方,如果超时,或连续收到三个冗余的ACK,则认为发生分组丢失事件,从而判定拥塞。2023/2/731(2)如何限制一个已发生拥塞的连接的发送速率?将拥塞发生的信息传送到产生分组的源站,源站通过调整发送窗口大小来调整发送速度。接收窗口Rcvwin的值由接收方确定,然后通知发送方,它用来防止接收方缓存溢出。但没有提供网络的拥塞状况。网络的状况,由发送方探测确定,并记为拥塞窗口Cwin。在任何时候,发送方实际的窗口大小应为Cwin和Rcvwin中的最小值,即满足:
LastByteSent-LastByteAcked<=min{Cwin,Rcvwin}为分析方便,我们忽略Rcvwin
,则得到发送方的发送速率R=Cwin/RTT。显然,在发送方调整Cwin,就可以调整发送速率。2023/2/732(3)当确定发生了拥塞后,采用什么算法来改变发送速率?慢开始(slow-start):发送方让发送窗口=拥塞窗口Cwin,Cwin由小到大逐渐增大(加倍)。拥塞避免(congestionavoidance):拥塞窗口值Cwin达到慢开始门限SSTH后,拥塞窗口Cwin按线性规律缓慢增长。快重传(fastretransmit):接收方每收到一个失序的报文段就立即发出重复确认,发送方一旦连续收到三个重复确认,就立即重传对方尚未收到的报文段。快恢复(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 娱乐行业招聘策略总结
- 2025年全球及中国螺旋藻虾青素行业头部企业市场占有率及排名调研报告
- 2025年全球及中国合成生物学智造平台行业头部企业市场占有率及排名调研报告
- 2025-2030全球轻型柴油发动机行业调研及趋势分析报告
- 2025-2030全球反流检测设备行业调研及趋势分析报告
- 2025-2030全球装饰金属板光纤激光切割机行业调研及趋势分析报告
- 2025-2030全球降膜式风冷螺旋式冷水机组行业调研及趋势分析报告
- 2025年全球及中国无塑工业软包涂层纸行业头部企业市场占有率及排名调研报告
- 2025年全球及中国聚合物氢气分离膜行业头部企业市场占有率及排名调研报告
- 2025年全球及中国摇摆式生物工艺容器行业头部企业市场占有率及排名调研报告
- 搞笑小品剧本《大城小事》台词完整版
- 物业服务和后勤运输保障服务总体服务方案
- 人大代表小组活动计划人大代表活动方案
- 《大模型原理与技术》全套教学课件
- 2023年护理人员分层培训、考核计划表
- 《销售培训实例》课件
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解)
- 【经典文献】《矛盾论》全文
- Vue3系统入门与项目实战
- 2024年宁夏回族自治区中考英语试题含解析
- 光伏发电项目试验检测计划
评论
0/150
提交评论