Part IX课件.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CS 140 Westmont College CS 140 Westmont College Chapter 16 Part IX 协议与分层 Protocol 交换信息时必须遵循的一套标准。Agreement about communication 它描述了 消息的格式 消息的含义 交换规则 处理问题的步骤 协议需求 Hardware is low level,只靠硬件不能解决所有的通信问题,如: 位损坏 整个数据包丢失 数据包重复 失序 协议需求(continued) 需要一套机制来区分: 同一网络上的多台计算机 同一计算机上的多个应用程序 同一计算机上同一应用程序的多个拷贝 使用网络的应用程序不直接操纵网络硬件,相反,应用程序在通信时只与遵从给定协议标准的协议软件进行交互。 协议设计 如何找到一个全面的设计方案,能够很好的处理复杂的网络通信问题? 基本思路:divide and conquer 分而治之 把复杂的网络互联问题划分为若干个较小的、单一的问题,在不同层上予以解决。 基本要求:1.每种协议处理各自的问题,避免重复 2.协议应能共享数据结构和信息,提高效率 3.所有的协议应能协同工作,处理所有可能出现的硬件故障或其他问题。 分层的直接结果:协议族 各协议协同工作 族中每个协议解决一部分通信问题 称为 Protocol suite Protocol family A Possible Answer:7层模型 早期定义 已经有些过时 Does not include internet layer! ISO 分层模型 Layer 1: Physical 与基本的网络硬件对应 Layer 2: Data Link (media access) 如何将数据组成帧,如何通过网络传输帧 Layer 3: Network 如何分配地址,信息包如何从转发(point to point) Layer 4: Transport 处理可靠传输的细节问题。 ISO分层模型(continued) Layer 5: Session 如何与系统建立通信会话,登录、口令 Layer 6: Presentation 如何描述数据 Layer 7: Application 特定应用程序如何使用网络 分层软件 协议软件遵循分层模型 每次一个软件模块 模块协同工作 数据从一个模块流向另一模块 整个软件模块统称: stack(协议栈) 协议栈图示 层间交互 两层软件之间的关系 实每一层必须依靠相邻层提供的服务来与另一台主机的对应层通信。 上层使用下层提供的服务——Service user; 下层向上层提供服务——Service provider。 分层的科学原理 Software implementing layer N at the destination receives exactly the message sent by software implementing layer N at the source 目标计算机上第N层软件必须接收发送端计算机上第N层软件发送的信息,即对等传送。 OSI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元(PDU,Protocol Data Unit)。 分层原理的图示 协议使用的技术 处理比特在传输途中被破坏的问题 Parity Checksum CRC 处理传输失序问题 Sequence numbers 处理重复包问题 Sequence numbers 协议使用的技术(continued) 处理包丢失问题 重传确认机制 处理延迟过多而造成的重播(replay )问题 用唯一的ID来标示每次会话 处理数据溢出问题 流控制 流控制 原因 发送方计算机比接收方快 发送方应用程序比接收方快 与缓冲有关 两种形式 Stop-and-go:停走协议 Sliding window:滑动窗口协议 Stop-And-Go 流控制 发送方 发送一个包 停止,等待接收方的确认信号后再发。 接收方 接收并处理包 向发送方发确认信号 Inefficient!! 如何改进? 滑动窗口控制 接收方 设立多个接收缓冲区并告诉发送方数目 发送方 有多少空余缓冲区就发多少包 仅当没有收到空余通知时停止 接收方 当包到来即发通知 发送方滑动窗口图示 Window是可以发送的包 当收到确认后窗口向前移动 Performance:性能比较 Stop-and-go 慢 只在特定情形有用 Sliding window 快 高速网络必须 性能比较的图示 滑动窗口协议的重要性 同时发送 增

文档评论(0)

shenlan2 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档