互联网及其应用42传输控制和socket课件.ppt
《互联网及其应用42传输控制和socket课件.ppt》由会员分享,可在线阅读,更多相关《互联网及其应用42传输控制和socket课件.ppt(58页珍藏版)》请在三一办公上搜索。
1、传输层(传送层、运输层),传输层(传送层、运输层),概述,TCP实现:利用底层使用IP提供的不可靠服务,为应用程序提供一个可靠的数据传输服务解决互联网中的数据丢失和延迟问题以提供有效的数据传输不能让底层的网络和路由过载,概述TCP实现:,可靠传输的必要性,编写应用程序向本机某个I/O设备发送数据,依赖底层计算机系统确保传输可靠,不需要验证数据是否到达,系统保证数据不丢失,重复和乱序希望:编写互联网程序遵循同样标准和常规技术,把网络接口作为常规I/O要求:互联网软件(协议)来保证实现:传输协议(TCP)实现可靠性,应用程序发送和接受数据就和传输协议打交道,可靠传输的必要性编写应用程序向本机某个I
2、/O设备发送数据,依,传输层的地位:中间层,应用层,传输层,网络层,数据链路层,物理层,面向信息处理,面向通信,用户功能,网络功能,两种观点划分高层与低层,传输层的地位:中间层 应用层传输层网络层数据链路层物,传输层的功能, 基本功能:提供端到端(进程-进程)的可靠通信,即向高层用户 屏 蔽通信子网的细节,提供通用的传输接口。弥补了网络层所提供服务的不足:剩余差错率和信号失败率,数据传输速率、吞吐量和传输时延,适配会话层协议数据单元和网络层协议数据单元。 功能:传输连接的建立和释放、多路复用与分割、分段和重新组装、组块和分块、 端到端的顺序控制、差错检测及恢复、QOS监测。 传输协议的简单/复
3、杂决定于子网提供服务的多少 。,通用的传输接口,传输协议 2,传输协议 1,网络层服务 1,网络层服务 2,传输层的功能 基本功能:提供端到端(进程-进程)的可靠通信,TCP提供的服务,面向连接:首先请求一个到目的地的连接点对点通信:(point to point),两个端点完全可靠:确保正确传输全双工通信:在两个方向上缓冲数据流接口:允许连续的字节流穿过连接,不提供记录式表示法可靠的连接建立(机器重启,两个连接数据)完美的连接终止:TCP确保在关闭连接之前传递数据的所有数据的可靠性,TCP提供的服务面向连接:首先请求一个到目的地的连接,端对端服务,TCP是端对端协议:直接从一个机器的应用到另
4、一个机器的应用的连接虚连接(virtual connection):软件实现,软件通过信息来提供连接TCP使用IP来携带消息,每一个TCP消息封装在数据报后通过互联网虚连接的每一端都需要TCP软件,中间路由器不需要,正常情况下IP不阅读TCP内容,IP仅作为数据来传递,端对端服务TCP是端对端协议:直接从一个机器的应用到另一个机,传输层模型,传输服务用户,传输服务用户,应用层,抽象机器,. . .,. .,传输服务提供者(传输实体),传输服务访问点TSAP,连接端点, 传输服务 - 向用户提供高效、可靠、价格合理的服务。,传输层模型传输服务用户传输服务用户 应用层抽象机器. .,传输层协议与数
5、据链路层协议的区别,网络,物理信道,数据链路层的环境,传输层的环境,结点1,结点2,主机A,主机B,传输层协议与数据链路层协议的区别网络物理信道数据链路层的环境,端到端,端到端(运输层)协议提供不同主机的进程之间的逻辑通信服务网络层协议提供主机间的逻辑通信包括如下功能:复用连接管理分段/重组可靠递交流量控制拥塞控制,端到端端到端(运输层)协议,基于端口的复用,基于端口的复用IP 层端口 a端口 b端口 c基于端口的复用,QoS参数, 连接建立时延:从传输用户提出连接请求到接收到连接证实的时间 建立连接失败可能性:在最大连接建立时延内连接未能建立的比例 吞吐量:在一段时间间隔内,每秒传送的用户数
6、据字节数 转接时延:从源主机传输用户发出消息到目的主机传输用户接收到该消息的时间 残余差错率:丢失和出错消息占全部发送的消息的比例 保护:防止未经授权的第三方读取或修改传输的数据 优先级:有优先级的传输和同级用户的公平 恢复力:在内部故障或拥塞时,传输层自发终止连接、重新连接的可能性,QoS参数 连接建立时延:从传输用户提出连接请求到接收到连,传输协议的要素之一:寻址,传输用户(客户端)与服务器建立连接的过程示例,应用进程,服务器,TSAP 6,TSAP 122,NSAP X,NSAP Y,传输层,传输层,网络层,网络层,(1) 服务器以TSAP122为地址,等待呼入(2) HOST 1的应用
7、进程发出连接请求,源地址为TSAP6,目的地址为TSAP122 (3) HOST 1的传输实体通过NSAP在HOST 1与HOST 2之间建立网络连接(4) HOST 1的传输实体将应用进程的连接请求传送给HOST 2的传输实体(5) HOST 2的传输实体询问应用服务器是否同意建立传输连接,HOST 1,HOST 2,传输协议的要素之一:寻址传输用户(客户端)与服务器建立连接的,因特网的传输协议- TCP和UDP, TCP(传输控制协议):提供面向连接服务 UDP(用户数据报协议):提供无连接服务 端口: TSAP = 端口号 + NSAP地址 熟知(公认)端口:常用的应用服务的端口,RPC
8、,SNMP,TFTP,SMTP,FTP,TELNET,(),(),(),(),(),(),111,161,69,25,21,23,UDP,TCP,A,B,C,IP = 202.112.103.47,端口500,端口501,IP = 202.112.103.47,端口500,IP = 202.112.103.225,端口23,连接,因特网的传输协议- TCP和UDP TCP(传输控制协,常用的熟知端口号,7ECHO回送37TIME时间42NAMESERVER主机名字服务器53DOMAIN域名服务器67BOOTPS启动协议服务69TFTP简单文件传输161SNMPSNMP 网络监控20FTP-DA
9、TA文件传输协议(数据连接)21FTP文件传输协议(控制连接)23TELNET远程登录终端37TIME时间43NICNAMEwhois 程序79FINGERfinger 程序80HTTPWEB 服务,UDP熟知端口号,TCP熟知端口号,常用的熟知端口号7ECHO回送UDPTCP,TCP消息格式,0,31位,3,10,15,源端口,目的端口,发送序号,18,确认序号,检查和,选项和填充( 0 ),首部长度,URG,ACK,PSH,RST,SYN,FIN,保留,窗口大小,紧急指针,数据(可选),TCP消息格式 031位31015源端口目的端口 发送序,TCP消息头部字段, 源端口/目的端口:TSA
10、P地址 发送序号:所发送的数据的第一字节的序号 确认序号:期望收到的数据(下一个消息)的第一字节的序号 首部长度:单位为32位(双字) 控制字段: 紧急位(URG):1表示加急数据,此时紧急指针的值为加急 数据的最后一个字节的序号 确认位(ACK):1表示确认序号字段有意义 急迫位(PSH):1表示请求接收端的传输实体尽快交付应用层 重建位(RST):1表示出现严重差错,必须释放连接,重建 同步位(SYN):SYN=1,ACK=0 表示连接请求消息 SYN=1,ACK=1 表示同意建立连接消息 终止位(FIN):1表示数据已发送完,要求释放连接 窗口大小:通知发送方接收窗口的大小,即最多可以发
11、送的字节数 检查和:12B的伪首部+首部+数据,TCP消息头部字段 源端口/目的端口:TSAP地址,TCP 报文段中的码元比特,码元比特字段(CODE BITS) 6bit指出报文段的目的和内容,给出报文头中其他字段的解释,TCP 报文段中的码元比特码元比特字段(CODE BITS),三次握手(3-way handshake),理论证明:三次握手是包丢失,重复,延迟情况下确保非模糊协定的冲要条件,三次握手(3-way handshake)理论证明:三次握手,建立TCP连接:三次握手,主机 1,主机 2,SYN=1,ACK=0 Send_Seq=x,SYN=1,ACK=1 Send_Seq=y,
12、 Ack_Seq=x+1,通知应用进程,主机 1,主机 2,应用进程要求连接,通知应用进程,Ack_Seq=y+1,SYN=1, ACK=0, Send_Seq=x,SYN=1, ACK=0, Send_Seq=y,SYN=1,ACK=1 Send_Seq=x, Ack_Seq=y+1,SYN=1,ACK=1 Send_Seq=y, Ack_Seq=x+1,正常连接情形,呼叫冲突:两个主机在相同的一对 SOCKET之间建立连接, 初始序号的设置:基于时钟的方法,RESET,建立TCP连接:三次握手主机 1主机 2SYN=1,ACK=,连接释放:文雅释放,主机 1,主机 2,FIN=1, Sen
13、d_Seq=x,Ack_Seq= x+1,应用进程要求释放连接,通知应用进程,应用进程要求释放连接,通知应用进程,FIN=1, Send_Seq= y,Ack_Seq= y+1,整个连接释放, 采用定时器方法,处理确认丢失的情况,连接释放:文雅释放主机 1主机 2FIN=1, Send_S,TCP连接管理的有限状态自动机,CLOSED,LISTEN,SYN RCVD,SYN SENT,ESTABLISHED,FIN WAIT1,FIN WAIT2,CLOSING,CLOSE WAIT,LAST ACK,TIMED WAIT,CLOSED,客户应用进程请求连接,3 次握手建立连接,释放连接请求,
14、对方应答,收到对方的释放请求,超时,LISTEN,收到连接请求,收到客户端的确认,收到对方的释放请求,释放连接请求,对方应答,收到对方的释放请求,对方应答,对方请求+应答,释放连接请求,拒绝连接,请求建立连接,同时建立连接,TCP连接管理的有限状态自动机CLOSEDLISTENSYN,重发(retransmission),可靠性:通过重发解决包丢失,定时和确认机制广域网传输延迟比局域网的增加和不定适应性重发:TCP监视当前连接的延迟(roud-trap delay,统计),改变重发定时器适应条件变化,重发(retransmission) 可靠性:通过重发解决包,TCP窗口管理的问题,(1) 如
15、果每收到应用进程的消息即发送,对于短消息,会浪费带宽 解决:A. 推迟发送确认和窗口更新消息,以捎带信息 B. Nagle 算法,尽量把短消息组合发送(2) “傻瓜窗口”问题,接收端每次只能向应用进程交付少量消息, 窗口更新消息只提供少量缓存,导致低效 解决:Chark 方法,禁止接收方频繁发送窗口更新消息,有一定 空闲缓存后再发送,TCP窗口管理的问题(1) 如果每收到应用进程的消息即发,缓冲流控与窗口,TCP采用窗口机制来控制数据流窗口:建立连接的每一端分配一个缓冲区保持输入数据,并将缓冲区的尺寸发送给另一方;发送确认时,包含自己剩余的缓冲区尺寸,窗口通告(window advertise
16、ment),缓冲流控与窗口TCP采用窗口机制来控制数据流,TCP的窗口管理,发送端,接收端,Send_Seq=0(0-2047),Ack_Seq= 2048,WIN=2048,应用进程交付3K,Ack_Seq= 4096, WIN= 0,向应用进程交付2K,空闲缓存,4K,2K,Send_Seq=2048 (2048-4095),0,Ack_Seq= 4096, WIN= 2048,2K,暂停发送,Send_Seq=4096 (4096- 5119),1K,TCP的窗口管理发送端接收端Send_Seq=0(0-204,流量控制和缓存问题,(1) 缓存大小和分配方式:固定大小缓存、可变大小缓存;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 互联网 及其 应用 42 传输 控制 socket 课件
链接地址:https://www.31ppt.com/p-1302764.html