高性能计算机网络第5章解读.pptVIP

  1. 1、本文档共88页,可阅读全部内容。
  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文档。上传文档
查看更多
坚持计时器 假定接收端的TCP通告窗口大小为零。发送方的TCP就停止传送报文,直到接收端的TCP发送确认并通告一个非零的窗口大小,这个确认可能会丢失。对方的TCP都在永远地等待着对方,这就可能出现了死锁; 为了防止死锁,TCP为每个连接使用一个坚持计时器; 当发送方的TCP收到一个窗口大小为零的确认时,就需要启动坚持计时器; 当坚持计时器期限到时,发送方的TCP就发送一个特殊的报文,称为探测报文; 探测报文提醒接收端的TCP:确认已丢失,必须重传; 坚持计时器的值设置为重传时间值,这个值增大到门限值通常设定为60秒。 * TCP窗口与拥塞控制 拥塞控制用于防止由于过多的报文进入网络而造成路由器与链路过载情况的发生; 流量控制的重点是放在点-点链路的通信量的局部控制上,而拥塞控制重点是放在进入网络报文量的全局控制上。 * 拥塞控制的基本概念 网络出现拥塞的条件写为: ∑对网络资源的需求>网络资源 拥塞控制 的作用 * TCP 拥塞 控制 例子 * 快重传与快恢复 * 连续收到3个重复确认的拥塞控制过程 * 发送窗口的概念 在讨论拥塞窗口的概念时曾假设:接收方有足够的缓存空间,发送窗口的大小只由网络拥塞程度确定,但是实际上接收缓存空间一定是有限的; 接收端需要根据自己的接收能力给出一个合适的接收窗口(rwnd),并将它写入到TCP的报头中,通知发送端。接收窗口又称为通知窗口(advertised windows); 从流量控制的角度,发送窗口一定不能超过接收窗口,实际的发送窗口的上限值应该等于接收窗口(rwnd)与拥塞窗口(cwnd)中最小的一个:Min(rwnd,cwnd); rwnd与cwnd中较小的一个限制发送端的报文发送速率。 * 5.4.6 UNIX进程通信实现方法 socket的基本概念 * socket的类型 流套接字(stream socket) 数据报套接字(datagram Socket) 原始套接字(raw socket) * 流套接字: 主要用于TCP协议; 提供了双向的、有序的、无重复的、无记录边界的数据传输服务。 数据报套接字: 主要用于UDP协议; 它提供了双向的、无序的、有重复的、有记录边界的数据传输服务。 原始套接字: 主要用于访问底层协议,如IP、ICMP与IGMP等协议; 原始套接字可以保存IP包中的完整IP头部。 * UNIX socket调用 创建socket—socket() 系统在调用创建应用程序是使用socket(); socket()调用的格式是: socketid = socket(af,type,protocol) socket()参数: 地址族(af)、类型(type)与协议(protocol) af — socket使用的地址类型 type — socket使用的服务类型 protocol — socket使用的协议 返回值socketid是一个整数(即socket号); * 指定本地地址—bind() socket()是实现创建socket通信的第一步,它只指定相关五元组中的协议类型,而bind()给出本地地址与本地端口; bind()调用的格式是: bind(socketid,localaddr,addrelen) socketid — 本地socket号 localaddr — 本地地址 addrelen — IP地址的长度 * 建立socket连接—connect()与accept() connect()与accept()调用完成两个相关连接; 意义: 一是指在两个socket之间沟通,二是在传输层建立连接(例如TCP连接); connect()主要用于面向连接的传输服务,而accept()完全用于面向连接的传输服务; 无连接socket进程也可以调用连接connect(),它通知操作系统将来自指定socket的数据送到本socket。 * accept()调用的格式: newsock = accept(socketid,clientaddr,paddrlen) socketid — 本地socket号 Clientaddr — client的地址 Paddrlen — client socket的长度 返回值newsock是accept()调用后,返回的新的socket号,它是指从server的socket号。 connect()调用的格式: connect(socketid,name,namelen) Socketi

文档评论(0)

琼瑶文档 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档