欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    传输控制协议(TCP).ppt

    • 资源ID:86921688       资源大小:420KB        全文页数:68页
    • 资源格式: PPT        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    传输控制协议(TCP).ppt

    第九章第九章 传输控制协议传输控制协议(TCP)(TCP)19-1 引言引言TCPTCPn n Transmission Control ProtocolTransmission Control Protocoln n TCP TCP叫做叫做叫做叫做面向连接的面向连接的面向连接的面向连接的、可靠的可靠的可靠的可靠的传输协议。传输协议。传输协议。传输协议。n n 它给服务增加了面向连接和可靠性的特点。它给服务增加了面向连接和可靠性的特点。它给服务增加了面向连接和可靠性的特点。它给服务增加了面向连接和可靠性的特点。TCPTCPUDPUDPTransport Transport layerlayerApplication layerApplication layerNetwork layerNetwork layer2进程到进程的通信进程到进程的通信InternetInternet进程进程进程进程 (运行的应用程序运行的应用程序运行的应用程序运行的应用程序)进程进程进程进程 (运行的应用程序运行的应用程序运行的应用程序运行的应用程序)IP IP 协议的作用范围协议的作用范围协议的作用范围协议的作用范围TCPTCP协议的作用范围协议的作用范围协议的作用范围协议的作用范围3端口号端口号TCPTCP6429564295TELNET TELNET 客户客户客户客户TCPTCP2323TELNET TELNET 服务器服务器服务器服务器与与UDP一样,一样,TCP也是服务器使用也是服务器使用熟知端口号熟知端口号,客户程序使,客户程序使用用短暂端口号短暂端口号。4端口、端点、连接端口、端点、连接202.115.12.6202.115.12.68080Port:Port:8080Endpoint:Endpoint:(202.115.12.6,80)(202.115.12.6,80)202.115.12.34202.115.12.341625016250Connection:Connection:(202.115.12.6,80)and(202.115.12.34,16250)(202.115.12.6,80)and(202.115.12.34,16250)5TCP使用的熟知端口号使用的熟知端口号PortProtocolDescription7Echo将收到的数据报回送到发送器将收到的数据报回送到发送器9Discard丢弃任何收到的数据报丢弃任何收到的数据报11Users活跃的用户活跃的用户13Daytime返回日期和时间返回日期和时间17Quote返回日期的引用返回日期的引用19Chargen返回字符串返回字符串20FTP,Data文件传送协议(数据连接)文件传送协议(数据连接)21 FTP,Control文件传送协议(控制连接)文件传送协议(控制连接)23TELNET终端网络终端网络25SMTP简单邮件传送协议简单邮件传送协议53DNS域名服务器域名服务器67BOOTP引导程序协议引导程序协议79FingerFinger80HTTP超文本传送协议超文本传送协议111RPC远程过程调用远程过程调用6Socket 地址地址200.23.56.8200.23.56.8IP IP 地址地址地址地址6969端口号端口号端口号端口号200.23.56.8200.23.56.8Socket Socket 地址地址地址地址6969 TCP TCP 需要两个标识符:需要两个标识符:需要两个标识符:需要两个标识符:IPIP地址地址地址地址和和和和端口号端口号端口号端口号。它们各用在一。它们各用在一。它们各用在一。它们各用在一端以建立一条连接。端以建立一条连接。端以建立一条连接。端以建立一条连接。要使用要使用要使用要使用TCPTCP的服务,我们的服务,我们的服务,我们的服务,我们需要需要需要需要一对一对一对一对SocketSocket地址:客户地址:客户地址:客户地址:客户SocketSocket地址和服务器地址和服务器地址和服务器地址和服务器SocketSocket地址。地址。地址。地址。一个一个一个一个IPIP地址与一个端口号地址与一个端口号地址与一个端口号地址与一个端口号合起来就叫做合起来就叫做合起来就叫做合起来就叫做SocketSocket地址。地址。地址。地址。79-2 TCP的服务的服务TCP TCP 服务服务服务服务流式数据服务流式数据服务流式数据服务流式数据服务全双工服务全双工服务全双工服务全双工服务可靠服务可靠服务可靠服务可靠服务8流式数据服务流式数据服务流式服务流式服务流式服务流式服务:l l发送发送发送发送TCPTCP从发送应用程序从发送应用程序从发送应用程序从发送应用程序接收到字符流,从这个流接收到字符流,从这个流接收到字符流,从这个流接收到字符流,从这个流中提取适当的长度创建为中提取适当的长度创建为中提取适当的长度创建为中提取适当的长度创建为叫做报文段的分组,然后叫做报文段的分组,然后叫做报文段的分组,然后叫做报文段的分组,然后将它们发送到网络上。将它们发送到网络上。将它们发送到网络上。将它们发送到网络上。l l接收接收接收接收TCPTCP则接收报文段,则接收报文段,则接收报文段,则接收报文段,从中提取数据,若它们没从中提取数据,若它们没从中提取数据,若它们没从中提取数据,若它们没有按序到达还要将它们排有按序到达还要将它们排有按序到达还要将它们排有按序到达还要将它们排序,并将它们作为字符流序,并将它们作为字符流序,并将它们作为字符流序,并将它们作为字符流交付给接收应用程序。交付给接收应用程序。交付给接收应用程序。交付给接收应用程序。9全双工服务全双工服务数据可在同一数据可在同一数据可在同一数据可在同一时间双向流动时间双向流动时间双向流动时间双向流动数据数据数据数据确认确认确认确认捎带捎带捎带捎带:确认可随:确认可随:确认可随:确认可随数据一起发送数据一起发送数据一起发送数据一起发送109-3 TCP报文段报文段2060 bytes2060 bytes11对各字段的说明:对各字段的说明:n n 源端口地址源端口地址源端口地址源端口地址:是一个:是一个:是一个:是一个1616位字段。定义了在主机中发送位字段。定义了在主机中发送位字段。定义了在主机中发送位字段。定义了在主机中发送该报文段的应用程序的端口号。该报文段的应用程序的端口号。该报文段的应用程序的端口号。该报文段的应用程序的端口号。n n 目的端口地址目的端口地址目的端口地址目的端口地址:是一个:是一个:是一个:是一个1616位字段。定义了在主机中接位字段。定义了在主机中接位字段。定义了在主机中接位字段。定义了在主机中接收该报文段的应用程序的端口号。收该报文段的应用程序的端口号。收该报文段的应用程序的端口号。收该报文段的应用程序的端口号。n n 序号序号序号序号:是一个:是一个:是一个:是一个3232位字段。它定义了一个数,指派给本位字段。它定义了一个数,指派给本位字段。它定义了一个数,指派给本位字段。它定义了一个数,指派给本报文段数据的第一个字节。为了保证连通性,要发送的每报文段数据的第一个字节。为了保证连通性,要发送的每报文段数据的第一个字节。为了保证连通性,要发送的每报文段数据的第一个字节。为了保证连通性,要发送的每一个字节都要编上号。序号告诉目的地,这个序列中的哪一个字节都要编上号。序号告诉目的地,这个序列中的哪一个字节都要编上号。序号告诉目的地,这个序列中的哪一个字节都要编上号。序号告诉目的地,这个序列中的哪一个字节是报文段中的第一个字节。一个字节是报文段中的第一个字节。一个字节是报文段中的第一个字节。一个字节是报文段中的第一个字节。n n 确认号确认号确认号确认号:是一个是一个是一个是一个3232位字段。定义了源进程期望从对方位字段。定义了源进程期望从对方位字段。定义了源进程期望从对方位字段。定义了源进程期望从对方接收的报文段的序号。确认可捎带和数据一起发送。接收的报文段的序号。确认可捎带和数据一起发送。接收的报文段的序号。确认可捎带和数据一起发送。接收的报文段的序号。确认可捎带和数据一起发送。n n 首部长度首部长度首部长度首部长度:是一个:是一个:是一个:是一个4 4位字段。指出位字段。指出位字段。指出位字段。指出TCPTCP首部共有多少首部共有多少首部共有多少首部共有多少个个个个4 4字节字。字节字。字节字。字节字。n n 保留保留保留保留:是一个:是一个:是一个:是一个6 6位字段。保留为今后使用。位字段。保留为今后使用。位字段。保留为今后使用。位字段。保留为今后使用。12qq 控制控制控制控制:是一个:是一个:是一个:是一个6 6位字段。定义了位字段。定义了位字段。定义了位字段。定义了6 6种不同的控制位或标志。种不同的控制位或标志。种不同的控制位或标志。种不同的控制位或标志。URGURGACKACKPSHPSHRSTRSTSYNSYNFINFINURG:URG:紧急指针(紧急指针(urgent pointer)有效有效 ACK:ACK:确认序号有效。确认序号有效。PSH:PSH:接收方应该尽快将这个报文段交给应用层。接收方应该尽快将这个报文段交给应用层。RST:RST:重建连接。重建连接。SYN:SYN:同步序号用来发起一个连接。同步序号用来发起一个连接。FIN:FIN:发端完成发端完成发送任务。发送任务。这些比特用在这些比特用在这些比特用在这些比特用在TCPTCP的流控制、连接建立和的流控制、连接建立和的流控制、连接建立和的流控制、连接建立和中止以及数据传送的方式等方面。中止以及数据传送的方式等方面。中止以及数据传送的方式等方面。中止以及数据传送的方式等方面。13对各字段的说明(续):对各字段的说明(续):n n 窗口大小窗口大小窗口大小窗口大小:是一个:是一个:是一个:是一个1616位字段。定义对方必须维持的窗位字段。定义对方必须维持的窗位字段。定义对方必须维持的窗位字段。定义对方必须维持的窗口大小(以字节为单位)。最大长度为口大小(以字节为单位)。最大长度为口大小(以字节为单位)。最大长度为口大小(以字节为单位)。最大长度为6553565535字节。字节。字节。字节。n n 检验和检验和检验和检验和:是一个:是一个:是一个:是一个1616位字段。位字段。位字段。位字段。n n 紧急指针紧急指针紧急指针紧急指针:是一个:是一个:是一个:是一个1616位字段。只有当紧急标志置位时,位字段。只有当紧急标志置位时,位字段。只有当紧急标志置位时,位字段。只有当紧急标志置位时,这个字段才有效。这时的报文段包括紧急数据。这个字段才有效。这时的报文段包括紧急数据。这个字段才有效。这时的报文段包括紧急数据。这个字段才有效。这时的报文段包括紧急数据。n n 选项选项选项选项:在:在:在:在TCPTCP首部中可以有多达首部中可以有多达首部中可以有多达首部中可以有多达4040字节的可选信息。字节的可选信息。字节的可选信息。字节的可选信息。14流、分组和序号:流、分组和序号:IncisingSegmentData streamSendingRecoveringSending bufferReceiving bufferReceiving分组的序号是这样一个数,它指派给本报文段数据的分组的序号是这样一个数,它指派给本报文段数据的分组的序号是这样一个数,它指派给本报文段数据的分组的序号是这样一个数,它指派给本报文段数据的第一个字节。第一个字节。第一个字节。第一个字节。159-4 选项选项TCP首部可以有多达首部可以有多达40个字节的可选信息。它们用来将附加个字节的可选信息。它们用来将附加信息传递给目的站,或用来将其他选项对齐。信息传递给目的站,或用来将其他选项对齐。选选 项项 单字节单字节 多字节多字节 无操作无操作 选项结束选项结束最大报文段长度最大报文段长度 窗口扩大因子窗口扩大因子 时间戳时间戳16选项说明:选项说明:n n 无操作无操作无操作无操作:是一个一字节选项。用作选项之间的填充。:是一个一字节选项。用作选项之间的填充。:是一个一字节选项。用作选项之间的填充。:是一个一字节选项。用作选项之间的填充。n n 选项结束选项结束选项结束选项结束:也是一个也是一个1字节选项,用于选项字段结束时字节选项,用于选项字段结束时的填充。但它只能用作最后一个选项。在此选项之后,接的填充。但它只能用作最后一个选项。在此选项之后,接收器就寻找有效载荷数据。收器就寻找有效载荷数据。选项选项数据数据选项结束选项结束17选项说明(续):选项说明(续):n n 最大报文段长度最大报文段长度最大报文段长度最大报文段长度:这个选项定义可以被目的站接收的:这个选项定义可以被目的站接收的:这个选项定义可以被目的站接收的:这个选项定义可以被目的站接收的TCPTCP报文段的最长数据块(即数据的最大长度)。报文段的最长数据块(即数据的最大长度)。报文段的最长数据块(即数据的最大长度)。报文段的最长数据块(即数据的最大长度)。vv 最大数据长度是在最大数据长度是在最大数据长度是在最大数据长度是在连接建立阶段连接建立阶段连接建立阶段连接建立阶段确立的,这个大小是确立的,这个大小是确立的,这个大小是确立的,这个大小是由报文段的目的站而不是源站确定的。由报文段的目的站而不是源站确定的。由报文段的目的站而不是源站确定的。由报文段的目的站而不是源站确定的。vv 这个选项这个选项这个选项这个选项仅仅仅仅在进行连接的报文段中使用。它不能用于在进行连接的报文段中使用。它不能用于在进行连接的报文段中使用。它不能用于在进行连接的报文段中使用。它不能用于数据传送中的报文段。数据传送中的报文段。数据传送中的报文段。数据传送中的报文段。vv 下图为这个选项的格式:下图为这个选项的格式:下图为这个选项的格式:下图为这个选项的格式:代码:代码:2长度:长度:4最大报文段长度最大报文段长度1字节字节1字节字节2字节字节18选项说明(续):选项说明(续):n n 窗口扩大因子窗口扩大因子窗口扩大因子窗口扩大因子:这个选项定义了滑动窗口的大小。为了增:这个选项定义了滑动窗口的大小。为了增:这个选项定义了滑动窗口的大小。为了增:这个选项定义了滑动窗口的大小。为了增大窗口大小,就要使用窗口扩大因子。大窗口大小,就要使用窗口扩大因子。大窗口大小,就要使用窗口扩大因子。大窗口大小,就要使用窗口扩大因子。vv 新的窗口大小可以这样求出,即先计算新的窗口大小可以这样求出,即先计算新的窗口大小可以这样求出,即先计算新的窗口大小可以这样求出,即先计算2 2的的的的n n次方,这里次方,这里次方,这里次方,这里n n是窗口扩大因子,再将得出的结果乘以首部中的窗口大小:是窗口扩大因子,再将得出的结果乘以首部中的窗口大小:是窗口扩大因子,再将得出的结果乘以首部中的窗口大小:是窗口扩大因子,再将得出的结果乘以首部中的窗口大小:新的窗口大小新的窗口大小新的窗口大小新的窗口大小=首部中定义的窗口大小首部中定义的窗口大小首部中定义的窗口大小首部中定义的窗口大小22窗口扩大因子窗口扩大因子窗口扩大因子窗口扩大因子vv 窗口扩大因子窗口扩大因子窗口扩大因子窗口扩大因子只能只能只能只能在连接建立阶段确定。在数据传送阶段,在连接建立阶段确定。在数据传送阶段,在连接建立阶段确定。在数据传送阶段,在连接建立阶段确定。在数据传送阶段,窗口大小可以改变,但它必须乘以同样的扩大因子。窗口大小可以改变,但它必须乘以同样的扩大因子。窗口大小可以改变,但它必须乘以同样的扩大因子。窗口大小可以改变,但它必须乘以同样的扩大因子。vv 下图为这个选项的格式:下图为这个选项的格式:下图为这个选项的格式:下图为这个选项的格式:代码:代码:3长度:长度:3扩大因子扩大因子1字节字节1字节字节1字节字节19选项说明(续):选项说明(续):n n 时间戳时间戳时间戳时间戳:这是一个:这是一个:这是一个:这是一个1010字节字段。该字段由报文段离开字节字段。该字段由报文段离开字节字段。该字段由报文段离开字节字段。该字段由报文段离开的源站填入。目的站接收报文段并存储该时间戳。的源站填入。目的站接收报文段并存储该时间戳。的源站填入。目的站接收报文段并存储该时间戳。的源站填入。目的站接收报文段并存储该时间戳。vv 当目的站发送对该报文段的字节的确认时,就输入前当目的站发送对该报文段的字节的确认时,就输入前当目的站发送对该报文段的字节的确认时,就输入前当目的站发送对该报文段的字节的确认时,就输入前面在回送回答字段中存储的值。面在回送回答字段中存储的值。面在回送回答字段中存储的值。面在回送回答字段中存储的值。vv 当源站收到确认时,就将当前时间与该数值进行检查,当源站收到确认时,就将当前时间与该数值进行检查,当源站收到确认时,就将当前时间与该数值进行检查,当源站收到确认时,就将当前时间与该数值进行检查,差值就是差值就是差值就是差值就是往返时间往返时间往返时间往返时间。vv 下图为这个选项的格式:下图为这个选项的格式:下图为这个选项的格式:下图为这个选项的格式:代码:代码:8 长度长度:10时间戳值时间戳值时间戳回送回答时间戳回送回答209-5 检验和检验和全全全全0 0协议协议协议协议(6)(6)3232位源位源位源位源IPIP地址地址地址地址3232位目的位目的位目的位目的IPIP地址地址地址地址总长度总长度总长度总长度源端口地址源端口地址源端口地址源端口地址目的端口地址目的端口地址目的端口地址目的端口地址紧急指针紧急指针紧急指针紧急指针检验和检验和检验和检验和数据和选项数据和选项数据和选项数据和选项 (必须进行填充使数据是(必须进行填充使数据是(必须进行填充使数据是(必须进行填充使数据是1616位的倍数)位的倍数)位的倍数)位的倍数)伪伪首首部部首首 部部 窗口大小窗口大小窗口大小窗口大小序号序号序号序号确认序号确认序号确认序号确认序号首部长度首部长度首部长度首部长度保留保留保留保留控制控制控制控制21TCP需要解决的一些问题:需要解决的一些问题:n n 传输时延长;传输时延长;传输时延长;传输时延长;n n 丢失,重复,失序或受到损伤;丢失,重复,失序或受到损伤;丢失,重复,失序或受到损伤;丢失,重复,失序或受到损伤;n n 无法预知的传输时延;无法预知的传输时延;无法预知的传输时延;无法预知的传输时延;n n 网络拥塞;网络拥塞;网络拥塞;网络拥塞;Flow Flow controlcontrolError Error controlcontrolConnection Connection controlcontrolCongestion Congestion controlcontrol229-6 流控制流控制流控制流控制流控制流控制 定义了在收到从目的站发来的确认之前源站可以发定义了在收到从目的站发来的确认之前源站可以发定义了在收到从目的站发来的确认之前源站可以发定义了在收到从目的站发来的确认之前源站可以发送的数据量。送的数据量。送的数据量。送的数据量。SenderSenderReceiverReceiverHow fast could I How fast could I send my data to send my data to ensure not to ensure not to overwhelm him?overwhelm him?滑动窗口滑动窗口滑动窗口滑动窗口 是是是是TCPTCP使用使用使用使用的流控制解决办法。的流控制解决办法。的流控制解决办法。的流控制解决办法。23停止等待协议停止等待协议transmissiontransmissionDataDataacknowledgmentacknowledgmentIdle timeIdle timeIdle timeIdle time上图中的简单停止等待协议是一个非常缓慢的过程。上图中的简单停止等待协议是一个非常缓慢的过程。上图中的简单停止等待协议是一个非常缓慢的过程。上图中的简单停止等待协议是一个非常缓慢的过程。若数据要若数据要若数据要若数据要走很长的距离,源站就要在等待确认时一直处在空闲状态。走很长的距离,源站就要在等待确认时一直处在空闲状态。走很长的距离,源站就要在等待确认时一直处在空闲状态。走很长的距离,源站就要在等待确认时一直处在空闲状态。24滑动窗口滑动窗口141413131212111110109 98 87 76 65 54 43 32 21 1Sliding windowSliding windowBefore slidingBefore slidingn n 这是一个这是一个这是一个这是一个流控制流控制流控制流控制协议;协议;协议;协议;n n 两个主机为两个主机为两个主机为两个主机为每一个每一个每一个每一个连接连接连接连接各各各各使用一个窗口;使用一个窗口;使用一个窗口;使用一个窗口;n n 窗口覆盖了窗口覆盖了窗口覆盖了窗口覆盖了缓存的一部分缓存的一部分缓存的一部分缓存的一部分,这部分就是主机可以发送而不必考虑从另,这部分就是主机可以发送而不必考虑从另,这部分就是主机可以发送而不必考虑从另,这部分就是主机可以发送而不必考虑从另一个主机发来的确认;一个主机发来的确认;一个主机发来的确认;一个主机发来的确认;n n 这个窗口叫这个窗口叫这个窗口叫这个窗口叫滑动窗口滑动窗口滑动窗口滑动窗口,因为当接收端对安全、完整地接收到的字节发,因为当接收端对安全、完整地接收到的字节发,因为当接收端对安全、完整地接收到的字节发,因为当接收端对安全、完整地接收到的字节发送确认时,这个窗口能够在缓存上滑动。送确认时,这个窗口能够在缓存上滑动。送确认时,这个窗口能够在缓存上滑动。送确认时,这个窗口能够在缓存上滑动。After slidingAfter slidingSliding windowSliding window25带指针的滑动窗口带指针的滑动窗口滑动窗口滑动窗口滑动窗口滑动窗口141413131212111110109 98 87 76 65 54 43 32 21 116161515指针指针指针指针已确认的已确认的已确认的已确认的字节字节字节字节已被发送已被发送已被发送已被发送的字节的字节的字节的字节可以发送的可以发送的可以发送的可以发送的字节字节字节字节不能发送不能发送不能发送不能发送的字节的字节的字节的字节TCP TCP 使用使用使用使用可变大小可变大小可变大小可变大小的窗口。窗口可增大也可减小,的窗口。窗口可增大也可减小,的窗口。窗口可增大也可减小,的窗口。窗口可增大也可减小,取决于目的站的通知。取决于目的站的通知。取决于目的站的通知。取决于目的站的通知。26发送端窗口发送端窗口n n 窗口大小与窗口大小与窗口大小与窗口大小与确认号确认号确认号确认号有关。有关。有关。有关。n n 高层协议可以一次发送高层协议可以一次发送高层协议可以一次发送高层协议可以一次发送一个或多个一个或多个一个或多个一个或多个字节到字节到字节到字节到TCPTCP。n n Sent but not acknowledged:Sent but not acknowledged:等待确认或重传。等待确认或重传。等待确认或重传。等待确认或重传。Sending window(Ws)56nSent but not acknowledgedSent but not acknowledgedData waiting for sendingData waiting for sendingAcknowledgedAcknowledgedCan not be sent nowCan not be sent now27接收端窗口接收端窗口Receiving window(Wr)5 6nRearranged but not submittedRearranged but not submittedUnused bufferUnused bufferSubmittedSubmittedFragmentaryFragmentaryn n 由由由由序号序号序号序号确定要再排列的接收数据流。确定要再排列的接收数据流。确定要再排列的接收数据流。确定要再排列的接收数据流。n n 高层协议可以一次从高层协议可以一次从高层协议可以一次从高层协议可以一次从TCPTCP接收接收接收接收一个或多个一个或多个一个或多个一个或多个字节。字节。字节。字节。28可变大小窗口可变大小窗口uu发送端窗口大小能够动态的改变发送端窗口大小能够动态的改变发送端窗口大小能够动态的改变发送端窗口大小能够动态的改变l l接收端宣布现在能使用的接收端缓存大小接收端宣布现在能使用的接收端缓存大小接收端宣布现在能使用的接收端缓存大小接收端宣布现在能使用的接收端缓存大小.l l发送端调整窗口大小以适应这个值发送端调整窗口大小以适应这个值发送端调整窗口大小以适应这个值发送端调整窗口大小以适应这个值.l l最小的报文段大小为最小的报文段大小为最小的报文段大小为最小的报文段大小为:1:1字节字节字节字节.uu接收端宣布接收端宣布接收端宣布接收端宣布:我的缓存大小为我的缓存大小为我的缓存大小为我的缓存大小为0 0l l发送端停止发送数据发送端停止发送数据发送端停止发送数据发送端停止发送数据.l l以下情况开始重新发送以下情况开始重新发送以下情况开始重新发送以下情况开始重新发送:宣布的缓存大小大于宣布的缓存大小大于宣布的缓存大小大于宣布的缓存大小大于0 0实验发送实验发送实验发送实验发送:防止死锁防止死锁防止死锁防止死锁带外数据带外数据带外数据带外数据29确认与重传确认与重传规则规则规则规则:1.1.发送序号是发送数据流的第一个字节。发送序号是发送数据流的第一个字节。发送序号是发送数据流的第一个字节。发送序号是发送数据流的第一个字节。2.2.确认序号指出了接收方期望收到的下一个字节的序号。确认序号指出了接收方期望收到的下一个字节的序号。确认序号指出了接收方期望收到的下一个字节的序号。确认序号指出了接收方期望收到的下一个字节的序号。3.3.数据没有得到确认时,若超时了就必须重传。数据没有得到确认时,若超时了就必须重传。数据没有得到确认时,若超时了就必须重传。数据没有得到确认时,若超时了就必须重传。确认累积确认累积确认累积确认累积确认表示对此序号以前的数确认表示对此序号以前的数确认表示对此序号以前的数确认表示对此序号以前的数据都确认据都确认据都确认据都确认x xx+7x+7x+23x+2330窗口管理窗口管理Segment 1Segment 1Seq:1001,4000BSeq:1001,4000BSeq:5001,1000BSeq:5001,1000BAck:5001,Win:0Ack:5001,Win:0Ack:5001,Win:1000Ack:5001,Win:10004000400010001000 30003000BufferBufferSenderSenderReceiverReceiverSegment 2Segment 2由接收端宣布的窗口大小通常就是接收端的缓存剩下的空间。由接收端宣布的窗口大小通常就是接收端的缓存剩下的空间。由接收端宣布的窗口大小通常就是接收端的缓存剩下的空间。由接收端宣布的窗口大小通常就是接收端的缓存剩下的空间。31对滑动窗口的几点说明:对滑动窗口的几点说明:n n 使用滑动窗口可使传输更加有效,同时也可以控制数据使用滑动窗口可使传输更加有效,同时也可以控制数据使用滑动窗口可使传输更加有效,同时也可以控制数据使用滑动窗口可使传输更加有效,同时也可以控制数据流,使得目的站不致因数据来的过多而瘫痪。流,使得目的站不致因数据来的过多而瘫痪。流,使得目的站不致因数据来的过多而瘫痪。流,使得目的站不致因数据来的过多而瘫痪。n n TCPTCP的滑动窗口是面向字节的。的滑动窗口是面向字节的。的滑动窗口是面向字节的。的滑动窗口是面向字节的。n n 源站不一定要发送出整个窗口大小的数据。源站不一定要发送出整个窗口大小的数据。源站不一定要发送出整个窗口大小的数据。源站不一定要发送出整个窗口大小的数据。n n 窗口大小可由目的站将其增大或减小。窗口大小可由目的站将其增大或减小。窗口大小可由目的站将其增大或减小。窗口大小可由目的站将其增大或减小。n n 目的站可在任何时候发送确认。目的站可在任何时候发送确认。目的站可在任何时候发送确认。目的站可在任何时候发送确认。32糊涂窗口综合症糊涂窗口综合症什么是糊涂窗什么是糊涂窗什么是糊涂窗什么是糊涂窗口综合症?口综合症?口综合症?口综合症?如何导致的?如何导致的?如何导致的?如何导致的?怎么解决?怎么解决?怎么解决?怎么解决?网络上有很多网络上有很多网络上有很多网络上有很多短报文段短报文段短报文段短报文段发送应用程序产生数据很慢,发送应用程序产生数据很慢,发送应用程序产生数据很慢,发送应用程序产生数据很慢,或者接收应用程序吸收数据或者接收应用程序吸收数据或者接收应用程序吸收数据或者接收应用程序吸收数据很慢,或者两者都有。很慢,或者两者都有。很慢,或者两者都有。很慢,或者两者都有。33(一)发送端解决办法(一)发送端解决办法发送端的发送端的发送端的发送端的TCPTCP可能产生糊涂窗口综合症,如果它为产生数据很慢的可能产生糊涂窗口综合症,如果它为产生数据很慢的可能产生糊涂窗口综合症,如果它为产生数据很慢的可能产生糊涂窗口综合症,如果它为产生数据很慢的应用程序服务。应用程序服务。应用程序服务。应用程序服务。NagleNagle算法:算法:算法:算法:1.1.发送端的发送端的发送端的发送端的TCPTCP将它从发送应用程序收到的第一块数据发送出将它从发送应用程序收到的第一块数据发送出将它从发送应用程序收到的第一块数据发送出将它从发送应用程序收到的第一块数据发送出去,哪怕只有一个字节。去,哪怕只有一个字节。去,哪怕只有一个字节。去,哪怕只有一个字节。2.2.发送第一个报文段后,发送端的发送第一个报文段后,发送端的发送第一个报文段后,发送端的发送第一个报文段后,发送端的TCPTCP就在输出缓存中积累数就在输出缓存中积累数就在输出缓存中积累数就在输出缓存中积累数据并等待:或者据并等待:或者据并等待:或者据并等待:或者收到收到收到收到接收端的接收端的接收端的接收端的TCPTCP发送出一个发送出一个发送出一个发送出一个确认确认确认确认,或者数,或者数,或者数,或者数据已据已据已据已累积累积累积累积到可以装成一个到可以装成一个到可以装成一个到可以装成一个最大的报文段最大的报文段最大的报文段最大的报文段,就将其发送。,就将其发送。,就将其发送。,就将其发送。时间过长:时间过长:时间过长:时间过长:会产生太大的延迟会产生太大的延迟会产生太大的延迟会产生太大的延迟不够长:又会继续产生短报文不够长:又会继续产生短报文不够长:又会继续产生短报文不够长:又会继续产生短报文等待:等待:等待:等待:34(二)接收端解决办法(二)接收端解决办法接受端的接受端的接受端的接受端的TCPTCP可能产生糊涂窗口综合症,如果它为消耗数可能产生糊涂窗口综合症,如果它为消耗数可能产生糊涂窗口综合症,如果它为消耗数可能产生糊涂窗口综合症,如果它为消耗数据很慢的应用程序服务。据很慢的应用程序服务。据很慢的应用程序服务。据很慢的应用程序服务。ClarkClark解决方法:解决方法:解决方法:解决方法:1.1.只要有数据到达就发送确认;只要有数据到达就发送确认;只要有数据到达就发送确认;只要有数据到达就发送确认;2.2.但宣布的窗口大小为零,直到缓存空间已能放入具有但宣布的窗口大小为零,直到缓存空间已能放入具有但宣布的窗口大小为零,直到缓存空间已能放入具有但宣布的窗口大小为零,直到缓存空间已能放入具有最大长度的报文段,或者缓存空间的一半已经空了。最大长度的报文段,或者缓存空间的一半已经空了。最大长度的报文段,或者缓存空间的一半已经空了。最大长度的报文段,或者缓存空间的一半已经空了。35(二)接收端解决办法(续)(二)接收端解决办法(续)推迟确认:推迟确认:推迟确认:推迟确认:uu这是另一种解决接收端产生糊涂窗口综合症的方法。这是另一种解决接收端产生糊涂窗口综合症的方法。这是另一种解决接收端产生糊涂窗口综合症的方法。这是另一种解决接收端产生糊涂窗口综合症的方法。uu当一个报文段到达时,并不立即发送确认。当一个报文段到达时,并不立即发送确认。当一个报文段到达时,并不立即发送确认。当一个报文段到达时,并不立即发送确认。接收端在确认收到的报文段之前一直等待,直到输入接收端在确认收到的报文段之前一直等待,直到输入接收端在确认收到的报文段之前一直等待,直到输入接收端在确认收到的报文段之前一直等待,直到输入缓存有足够的空间为止。缓存有足够的空间为止。缓存有足够的空间为止。缓存有足够的空间为止。接收端不需要确认每一个报文段。这样可以减少通信接收端不需要确认每一个报文段。这样可以减少通信接收端不需要确认每一个报文段。这样可以减少通信接收端不需要确认每一个报文段。这样可以减少通信量。量。量。量。缺点是:延迟的确认可能迫使发送端重传其未被确认缺点是:延迟的确认可能迫使发送端重传其未被确认缺点是:延迟的确认可能迫使发送端重传其未被确认缺点是:延迟的确认可能迫使发送端重传其未被确认的报文段。的报文段。的报文段。的报文段。uu目前规定确认的延迟目前规定确认的延迟目前规定确认的延迟目前规定确认的延迟不能超过不能超过不能超过不能超过500500毫秒毫秒毫秒毫秒。369-7 差错控制差错控制可靠性可靠性可靠性可靠性按序的、没有差错的、按序的、没有差错的、按序的、没有差错的、按序的、没有差错的、没有丢失和重复的没有丢失和重复的没有丢失和重复的没有丢失和重复的差错控制差错控制差错控制差错控制差错检测、差错检测、差错检测、差错检测、差错纠正差错纠正差错纠正差错纠正受到损伤的、丢失的、失序受到损伤的、丢失的、失序受到损伤的、丢失的、失序受到损伤的、丢失的、失序的、重复的报文段的、重复的报文段的、重复的报文段的、重复的报文段一个应用程序依一个应用程序依一个应用程序依一个应用程序依靠靠靠靠TCPTCP进行可靠进行可靠进行可靠进行可靠的传输的传输的传输的传输37差错检测和纠正差错检测和纠正1.1.在在在在TCPTCP中中中中不使用否认不使用否认不使用否认不使用否认2.2.若一个报文段在超时截止期之前未被确认,则被认为是受到损若一个报文段在超时截止期之前未被确认,则被认为是受到损若一个报文段在超时截止期之前未被确认,则被认为是受到损若一个报文段在超时截止期之前未被确认,则被认为是受到损伤或已丢失,需要进行重传。伤或已丢失,需要进行重传。伤或已丢失,需要进行重传。伤或已丢失,需要进行重传。三种简三种简三种简三种简单工具单工具单工具单工具:检验和检验和检验和检验和 确认确认确认确认 超时超时超时超时38受损伤的报文段受损伤的报文段OKOKSegment 1Segment 1Seq:1201,200bytesSeq:1201,200bytesAck:1601Ack:1601SenderSenderReceiverReceiverSegment 2Segment 2Seq:1401,200bytesSeq:1401,200bytesSegment 3Segment 3Seq:1601,200bytesSeq:1601,200bytesSegment 3,retransmittedSegment 3,retransmittedSeq:1601,200bytesSeq:1601,200bytesAck:1801Ack:1801TimeTimeTimeTime报文段报文段报文段报文段3 3受损伤受损伤受损伤受损伤OKOKOKOK超时超时超时超时39丢失的报文段丢失的报文段Segment 1Segment 1Seq:1201,200bytesSeq:1201,200bytesAck:1601Ack:1601Sender

    注意事项

    本文(传输控制协议(TCP).ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开