局域网通信原理传输层和应用层.ppt
《局域网通信原理传输层和应用层.ppt》由会员分享,可在线阅读,更多相关《局域网通信原理传输层和应用层.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、局域网通信原理传输层和应用层 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望主要内容nTCP简介nUDP简介n应用层协议TCP协议nTCP:Transfer Control Protocoln提供端到端数据流服务,其中包含确保数据可靠传送的机制。这些机制包括校验和、序列号、计时器、确认以及重传过程。TCP是一种面向连接的协议,可以为应用层提供可靠、有序的数据传送。IPv4头部格式建立连接的三路握手n服务器必须准备好接受外来的连接。这通过调用socket,bind,
2、listen函数来完成,称为被动打开(passive open)。n客户同过调用connect进行主动打开(active open),这引起客户tcp发送一个SYN分节(表示同步),它告诉服务器客户将在(待建立的)连接中发送的数据的初始序列号。一般情况下SYN分节不携带数据,它只含有一个IP头部、一个TCP头部及可能有的TCP选项。n服务器必须确认客户的SYN,同时自己也得发送一个SYN分节,它含有服务器将在同一连接中发送的数据的初始序列号。服务器以单个分节向客户发送SYN和对客户SYN的ACK。n客户必须确认服务器的SYN。建立连接的报文交换终止连接的四个分节n某个应用进程首先调用close
3、,我们称这一端执行主动关闭(active close)。这一端的TCP于是发送一个FIN分节,表示数据发送完毕。n接收到FIN的另一端执行被动关闭(passive close)。这个FIN由TCP确认。它的接收也作为文件结束符传递给接收方应用进程(放在已排队等候该应用进程接收的任何其他数据之后),因为FIN的接收意味着应用进程在相应的连接上再也接收不到额外的数据。n一段时间后,接收到文件结束符的应用进程将调用close关闭它的套接口。这导致它的TCP也发送一个FIN。n接收到这个FIN的原发送方TCP(即执行主动关闭的那一端)对它进行确认。终止连接的报文交换TCPTCP状态转换图状态转换图TC
4、P正常连接建立和终止所对应的状态TIME_WAIT状态n该状态持续时间是最长分节生命期MSL(maximum segment lifetime)的两倍,有时称为2MSL。n存在该状态的两个理由:1.实现终止TCP全双工连接的可靠性;2.允许老的重复分节在网络中消逝。n在该状态期间,定义这个连接的套接口(客户的IP和端口号、服务器的IP和端口号)不能再被使用。端口号的分配TCP同时打开n交换四个报文段,每一端既是客户又是服务器TCP同时关闭n交换四个报文段TCP的交互数据流nNagle算法(RFC 896Nagle 1984)1.使用该算法的原因2.算法概念原因n在广域网上,大量小分组的存在会增
5、加网络拥塞的可能性。小分组就是数据包尺寸很小的分组,比如一个数据包只包含41字节长:20字节的IP首部、20字节的TCP首部和1字节的数据。Nagle算法n该算法要求一个TCP连接上最多只能有一个未被确认的未完成的小分组,在该分组的确认到达之前不能发送其他的小分组。相反,TCP收集这些少量的分组,并在确认到来时以一个分组的方式发出去。该算法的优越之处在于它是自适应的:确认到达得越快,数据也就发送得越快。而在希望减少微小分组数目的低速广域网上,则会发送更少的分组。TCP的成块数据流n滑动窗口n窗口大小n慢启动滑动窗口-1滑动窗口-2滑动窗口-3n发送方不必发送一个全窗口大小的数据。n来自接收方的
6、一个报文段确认数据并把窗口向右边滑动。这是因为窗口大小是相对于确认序号的。n正如从报文段7到8中的变化那样,窗口大小可以减少,但窗口的右边沿却不能向左移动。n接收方在发送一个ACK前不必等待窗口被填满。许多实现每收到两个报文段就会发送一个ACK。窗口大小n4.2BSD默认设置发送和接收缓冲区大小为2048字节。在4.3BSD中双方被增加为4096字节。SunOS4.1.3、BSD/386和SVR4仍然使用4096字节的默认大小。其他系统,如Solaris2.2、4.4BSD和AIX3.2则使用更大的默认缓存大小,如8192或16384等。慢启动(Slow Start)n提出原因:发送方一开始就
7、向网络发送多个报文段,直至达到接收方通告的窗口大小为止。当发送方和接收方处于同一个局域网时,这种方式是可以的。但若在发送方和接收方之间存在多个路由器和速率较慢的链路时,就可能出现一些问题。一些中间的路由器必须缓存分组,并有可能耗尽存储器的空间。这会严重降低TCP连接的吞吐量。慢启动算法描述n该算法通过观察到新分组进入网络的速率应该与另一端返回确认的速率相同而进行工作。n满启动为发送方的TCP增加了另一个窗口:拥塞窗口(记为cwnd)。当与另一个网络的主机建立TCP连接时,拥塞窗口被初始化为1个报文段(即另一端通告的报文段大小)。每收到一个ACK,拥塞窗口就增加一个报文段(cwnd以字节为单位,
8、但慢启动以报文段大小为单位进行增加)。发送方取拥塞窗口与通告窗口中的最小值作为发送上限。拥塞窗口是发送方使用的流量控制,而通告窗口则是接收方使用的流量控制。n发送方开始时发送一个报文段,然后等待ACK。当收到该ACK时,拥塞窗口从1增为2,即可以发送两个报文段。当收到这两个报文段的ACK时,拥塞窗口增为4。这是一种倍数增加的关系(2倍)。n在某些点上可能达到了互联网的容量,于是中间路由器开始丢弃分组。这就通知发送方它的拥塞窗口开得过大。TCP的超时与重传n概念n快速重传与快速恢复算法n重新分组超时与重传的概念nTCP提供可靠的运输层。它使用的方法之一就是确认从另一端收到的数据。但数据和确认都有
9、可能会丢失。TCP通过在发送时设置一个定时器来解决这种问题。若当定时器溢出时还没有收到确认,它就重传该数据。对任何实现而言,关键之处就在于超时和重传的策略,即怎样决定超时间隔和如何确定重传的频率。快速重传与快速恢复算法nCwnd:拥塞窗口;ssthresh:慢启动门限n算法如下:1.当收到第三个重复的ACK时,将ssthresh设置为当前拥塞窗口cwnd的一半。重传丢失的报文段。设置cwnd为ssthresh加上3倍的报文段大小。2.每次收到另一个重复的ACK时,cwnd增加1个报文段大小并发送1个分组(若新的cwnd允许发送)。3.当下一个确认新数据的ACK到达时,设置cwnd为ssthre
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 局域网 通信 原理 传输 应用
限制150内