资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,运 输 层,运输协议(transport protocol)是整个网络体系构造中的关键之一。,退出,运输协议概述,运输层向它上面的应用层提供通信效劳,它属于面向通信部分的最高层,用户功能中的最低层。,运输层只存在于通信子网以外的主机中,在通信子网中没有运输层,,运输层为应用进程之间提供逻辑通信,端端,网络层是为主机之间提供逻辑通信,点对点,,OSI使用了简洁的抽象方法将运输层与其上下层之间的关系归纳,运输层向高层用户屏蔽了下面通信子网的细节,它使应用进程看见的就是好似在两个运输层实体之间有一条端到端的逻辑通信信道,但这条逻辑通信信道对上层的表现却因运输层使用的不同协议而有很大的差异。当运输层采用面向连接的TCP协议时,尽管下面的网络是不可靠的(即只提供尽最大努力效劳),但这种逻辑通信信道就相当于一条全双工的可靠信道。但当运输层采用无连接的UDP协议时,这种逻辑通信信道那么是一条不可靠信道。,可靠信道画成一个管道,这意味着报文在这样的“管道中运输时,可以做到无过失、按序(接收的顺序和发送的顺序一样)、无丧失和无重复。,TCP/IP体系中的运输层,运输层中的两个协议,TCP/IP的运输层有两个不同的协议,它们都是因特网的正式标准,即:,1用户数据报协议,UDP (User Datagram Protocol),2传输控制协议,TCP (Transmission Control Protocol),端口的概念,UDP和TCP都使用了与应用层接口处的端口(port)与上层的应用进程进展通信。,假设没有端口,运输层就无法知道数据应当交付给应用层的哪一个进程。端口是用来标识应用层的进程。,端口号分为两类。一类是由因特网指派名字和号码公司ICANN负责分配给一些常用的应用层程序固定使用的熟知端口(well-known port),其数值一般为01023,见RFC 1700。例如,FTP用21,TELNET用23,SMTP用25,DNS用53,HTTP用80,SNMP用161,等。当一种新的应用程序出现时,必须为它指派一个熟知端口,否那么其他的应用进程就无法和它进展交互。,插口包括IP地址,(32 bit)和,端口号,(16 bit),,共48 bit,。,用户数据报协议UDP,用户数据报的用处,虽然UDP用户数据报只能提供不可靠的交付,但UDP在某些方面有其特殊的优点,例如:,1发送数据之前不需要建立连接(当然发送数据完毕时也没有连接需要释放),因此减少了开销和发送数据之前的时延。,2UDP没有拥塞控制,也不保证可靠交付,因此主机不需要维持具有许多参数的、复杂的连接状态表。,3UDP用户数据报只有8个字节的首部开销,比TCP的20个字节的首部要短。,4由于UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率降低。,用户数据报的格式,用户数据报UDP有两个字段:数据字段和首部字段。首部字段很简单,只有8个字节,由4个字段组成,每个字段都是两个字节。各字段意义如下所述。,1源端口字段:源端口号。,2目的端口字段:目的端口号。,3长度字段:UDP用户数据报的长度。,4检验和字段:防止UDP用户数据报在传输中出错。,传输控制协议TCP,TCP是TCP/IP体系中面向连接的运输层协议,它提供全双工的可靠交付的效劳。,TCP报文段的首部,一个TCP报文段分为首部和数据两部分TCP报文段首部的前20个字节是固定的,后面有4N字节是根据需要而增加的选项(N必须是整数)。因此TCP首部的最小长度是20字节。,首部固定部分各字段的意义如下所述。,1源端口和目的端口,2序号,3确认序号,4数据偏移,5保存,6紧急比特URG (URGent),7确认比特ACK,8推送比特PSH (PuSH),9复位比特RST (ReSeT),10同步比特SYN,11终止比特FIN (FINal),12窗口,13检验和,14选项,TCP的数据编号与确认,TCP协议是面向字节的。TCP将所要传送的整个报文(这可能包括许多个报文段)看成是一个个字节组成的数据流,并使每一个字节对应于一个序号。,TCP确实认是对接收到的数据的最高序号(即收到的数据流中的最后一个序号)表示确认。但接收端返回确实认序号是已收到的数据的最高序号加1。也就是说,确认序号表示接收端期望下次收到的数据中的第一个数据字节的序号。,TCP的流量控制与拥塞控制,为了进步报文段的传输效率,TCP采用大小可变的滑动窗口进展流量控制。窗口大小的单位是字节。在TCP报文段首部的窗口字段写入的数值就是当前给对方设置的窗口数值。,TCP的运输连接收理,TCP是面向连接的协议。运输连接的建立和释放是每一次面向连接的通信中必不可少的过程。,在连接建立过程中要解决以下三个问题。,1要使每一方可以确知对方的存在。,2要允许双方协商一些参数(如最大报文段长度,最大窗口大小,效劳质量等)。,3可以运输实体资源(如缓存大小,连接表中的工程等)进展分配。,TCP的连接和建立都是采用客户效劳器方式。主动发起连接建立的进程叫做客户(client),而被动等待连接建立的进程叫做效劳器(server)。,TCP的有限状态机,为了管理因特网,在网络管理中心设有,管理信息库,MIB (Management Information Base)。管理信息库存放着各主机的TCP,连接表,(Connection Table),TCP连接表对每个连接都登记了其连接信息。除本地和远地的IP地址和端口号外,还要记录每一个连接所处的状态。,
展开阅读全文