局域网通信原理传输层和应用层.pptVIP

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
局域网通信原理 传输层和应用层 牟瑜力 MG0432039 alpinist04g@ 主要内容 TCP简介 UDP简介 应用层协议 TCP协议 TCP:Transfer Control Protocol 提供端到端数据流服务,其中包含确保数据可靠传送的机制。这些机制包括校验和、序列号、计时器、确认以及重传过程。TCP是一种面向连接的协议,可以为应用层提供可靠、有序的数据传送。 IPv4头部格式 建立连接的三路握手 服务器必须准备好接受外来的连接。这通过调用socket,bind,listen函数来完成,称为被动打开(passive open)。 客户同过调用connect进行主动打开(active open),这引起客户tcp发送一个SYN分节(表示同步),它告诉服务器客户将在(待建立的)连接中发送的数据的初始序列号。一般情况下SYN分节不携带数据,它只含有一个IP头部、一个TCP头部及可能有的TCP选项。 服务器必须确认客户的SYN,同时自己也得发送一个SYN分节,它含有服务器将在同一连接中发送的数据的初始序列号。服务器以单个分节向客户发送SYN和对客户SYN的ACK。 客户必须确认服务器的SYN。 建立连接的报文交换 终止连接的四个分节 某个应用进程首先调用close,我们称这一端执行主动关闭(active close)。这一端的TCP于是发送一个FIN分节,表示数据发送完毕。 接收到FIN的另一端执行被动关闭(passive close)。这个FIN由TCP确认。它的接收也作为文件结束符传递给接收方应用进程(放在已排队等候该应用进程接收的任何其他数据之后),因为FIN的接收意味着应用进程在相应的连接上再也接收不到额外的数据。 一段时间后,接收到文件结束符的应用进程将调用close关闭它的套接口。这导致它的TCP也发送一个FIN。 接收到这个FIN的原发送方TCP(即执行主动关闭的那一端)对它进行确认。 终止连接的报文交换 TCP正常连接建立和终止所对应的状态 TIME_WAIT状态 该状态持续时间是最长分节生命期MSL(maximum segment lifetime)的两倍,有时称为2MSL。 存在该状态的两个理由: 实现终止TCP全双工连接的可靠性; 允许老的重复分节在网络中消逝。 在该状态期间,定义这个连接的套接口(客户的IP和端口号、服务器的IP和端口号)不能再被使用。 端口号的分配 TCP同时打开 交换四个报文段,每一端既是客户又是服务器 TCP同时关闭 交换四个报文段 TCP的交互数据流 Nagle算法(RFC 896[Nagle 1984]) 使用该算法的原因 算法概念 原因 在广域网上,大量小分组的存在会增加网络拥塞的可能性。小分组就是数据包尺寸很小的分组,比如一个数据包只包含41字节长:20字节的IP首部、20字节的TCP首部和1字节的数据。 Nagle算法 该算法要求一个TCP连接上最多只能有一个未被确认的未完成的小分组,在该分组的确认到达之前不能发送其他的小分组。相反,TCP收集这些少量的分组,并在确认到来时以一个分组的方式发出去。该算法的优越之处在于它是自适应的:确认到达得越快,数据也就发送得越快。而在希望减少微小分组数目的低速广域网上,则会发送更少的分组。 TCP的成块数据流 滑动窗口 窗口大小 慢启动 滑动窗口-1 滑动窗口-2 滑动窗口-3 发送方不必发送一个全窗口大小的数据。 来自接收方的一个报文段确认数据并把窗口向右边滑动。这是因为窗口大小是相对于确认序号的。 正如从报文段7到8中的变化那样,窗口大小可以减少,但窗口的右边沿却不能向左移动。 接收方在发送一个ACK前不必等待窗口被填满。许多实现每收到两个报文段就会发送一个ACK。 窗口大小 4.2BSD默认设置发送和接收缓冲区大小为2048字节。在4.3BSD中双方被增加为4096字节。SunOS4.1.3、BSD/386和SVR4仍然使用4096字节的默认大小。其他系统,如Solaris2.2、4.4BSD和AIX3.2则使用更大的默认缓存大小,如8192或16384等。 慢启动(Slow Start) 提出原因: 发送方一开始就向网络发送多个报文段,直至达到接收方通告的窗口大小为止。当发送方和接收方处于同一个局域网时,这种方式是可以的。但若在发送方和接收方之间存在多个路由器和速率较慢的链路时,就可能出现一些问题。一些中间的路由器必须缓存分组,并有可能耗尽存储器的空间。这会严重降低TCP连接的吞吐量。 慢启动算法描述 该算法通过观察到新分组进入网络的速率应该与另一端返回确认的速率相同而进行工作。 满启动为发送方的TCP增加了另一个窗口:拥塞窗口(记为cwnd)。当与另一个网络的主机建

文档评论(0)

118books + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档