- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章:运输层分析
//创建Socket套接字ServerSock = socket(AF_INET,SOCK_STREAM,0);if (ServerSock==INVALID_SOCKET)return FALSE;dstserver_addr.sin_family = PF_INET;dstserver_addr.sin_port = htons(7016);dstserver_addr.sin_addr.s_addr = INADDR_ANY;//BINDStatus = bind(ServerSock,(struct sockaddr far *)dstserver_addr,sizeof(dstserver_addr));if (Status != 0)return FALSE;//LISTENStatus = listen(ServerSock,1);if (Status != 0)return FALSE; //ACCEPTint len = sizeof(dstserver_addr);NewSock = accept(ServerSock,(struct sockaddr far *)dstserver_addr,len);if (NewSock 0){ closesocket(ServerSock); return FALSE;} //Send FalgFALG = US_FLAG;send(NewSock,(char*)FALG,sizeof(FALG)+1,MSG_OOB);//Get Messagelength = recv(NewSock,(char*)iMsg,sizeof(iMsg)+1,0);if (length 0){ //Close Sock closesocket(NewSock); closesocket(ServerSock); return FALSE;}//GetMessageDataif (iMsg 4500) { send(NewSock,(char*)SysWidth,sizeof(SysWidth)+1,MSG_OOB); send(NewSock,(char*)SysHeight,sizeof(SysHeight)+1,MSG_OOB);} 客户机端程序设计实现 clientSock = socket(AF_INET,SOCK_STREAM,0);if (clientSock 0)return FALSE;//建立连接client.sin_family = PF_INET;client.sin_port = htons(7016);client.sin_addr.s_addr = inet_addr(client_address);……msgsock = connect(clientSock,(struct sockaddr*)client,sizeof(client));if (msgsock!=0) return FALSE; * 最底层计算机通信网络提供的服务是不可靠的分组交付,所以网络协议的研究目标之一就是为数据流的可靠交付找出一般的解决方法。 蓝兵穿越白军防地是不可靠通信。 蓝军2不知道蓝军1是否收到确认,不能贸然行动。 即使采用三次握手释放连接,也会出现最后的确认丢失,应答TPDU丢失、应答及后续释放请求丢失的情况。 没有一个满意的解决问题的方法。 慢开始和拥塞避免算法的实现举例 当 cwnd = 12 时改为执行拥塞避免算法,拥塞窗口按按线性规律增长,每经过一个往返时延就增加一个 MSS 的大小。 2 4 6 8 10 12 14 16 18 20 22 0 0 4 8 12 16 20 24 传输次数 拥塞窗口 cwnd 进入拥塞避免 发生超时 指数规律增长 线性规律增长 ssthresh = 16 慢开始 慢开始 拥塞避免 拥塞避免 更新后的 ssthresh = 12 进入拥塞避免 乘法减小(multiplicative decrease) “乘法减小“是指不论在慢开始阶段还是拥塞避免阶段,只要出现一次超时(即出现一次网络拥塞),就把慢开始门限值 ssthresh 设置为当前的拥塞窗口值乘以 0.5。 当网络频繁出现拥塞时,ssthresh 值就下降得很快,以大大减少注入到网络中的分组数。 加法增大(additive increase) “加法增大”是指执行拥塞避免算法后,当收到对所有报文段的确认就将拥塞窗口 cwnd增加一个 MSS 大小,使拥塞窗口缓慢增大,以防止网络过早出现拥塞。 必须强调指出 “拥塞避免”并非指完全能够避免
您可能关注的文档
最近下载
- (高清版)-B-T 34590.2-2022 道路车辆 功能安全 第2部分:功能安全管理.pdf VIP
- 水果超市水果产期及收货标准.xls VIP
- 环境中抗生素抗性基因传播途径.docx VIP
- 2025年监理员考试题库及答案.docx VIP
- Hopewind禾望HV510系列高性能变频器用户手册.pdf
- 2025年度中秋国庆节前安全教育培训.pptx
- 多肉拼盘.pptx VIP
- 养生保健品商业计划书.pptx
- 第六章 智能网联汽车_3 课件(共33张PPT)- 《汽车文化》同步教学(上海交大版).pptx VIP
- 2025-2026学年小学劳动苏科版2023二年级上册-苏科版(2023)教学设计合集.docx
文档评论(0)