分布式系统的通信

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
23
2 异步传输模式网--异步传输模式
9
1 分层协议--数据链路层
物理层只负责传送比特。然而实际的网络通信是很容 易出错的,因此需要一些校验和纠错的机制 • 数据校验是数据链路层的主要任务,它将一些位组织 成数据单元(帧),并且检查每帧是否被正确接收
在每帧的开头或结尾处添加特殊的位来标识该帧,并且将 该帧中所有字节按某种方式相加,计算其校验和 将校验和添加到帧中 当该帧到达时,接收者重新计算校验和并与帧后的校验和 相比较。如果一致,则认为该帧是正确的并接受,否则接 收者请求重发 每帧在报头中赋予一个序列号,因此可以确定不同帧
4
机器1 过程A
1 分层协议
应用层协议 表示层协议 会话层协议 传输层协议 网络层协议 数据链路层协议 物理层协议
机器2 过程B
7 6 5 4 3 2 1
应用层 表示层 会话层 传输层 网络层 数据链路层 物理层
应用层 表示层 会话层 传输层 网络层 数据链路层 物理层
5
网络
1 分层协议
• 在OSI模型中,当机器1上的进程A想和机器2上 的进程B通信时,
它创建一条消息,将消息传送到本机的应用层。 这一层可以是个库过程,也可以用其它方法实现 (操作系统中或外部协处理器) 应用层软件在该报文前加上报头,通过第6、7层 间的接口传给表示层 表示层加上自己的报头,将结果传送给会话层,… 一些层中不仅要在报文前加报头,还要在报文后 加上报尾。当消息到达最低部时,由物理层实际 传输报文
• 正式的ISO传输协议有五个变种,TP0~TP4。差别在 于错误处理和在单个 x.25 连接上建立多个传输连接的 能力。选择使用哪种协议,取决于网络层的特性
DoD传输协议称作TCP,类似于TP4,TCP/IP的结合广泛应 用于大学校园和多数Unix系统中。DoD协议包也支持无连接 传输协议UDP(通用数据报协议),它本质上就是IP的扩充。 不需要面向连接协议的用户程序常使用UDP。
1 分层协议--网络层
• 目前广泛使用以下两个网络层协议
面向连接:面向连接的协议称作X.25,多用于公共 网络,如电话公司和欧洲的PTT。X.25用户首先向 目的方发送连接请求,请求可以被接受或被拒绝。 如果该连接请求被接受,呼叫方将收到一个用于后 续请求的连接标识。在多数情况下,网络在建立连 接期间,从发送者到接收者之间选择一条路由,并 在以后的传输中使用该路径。 无连接:无连接的协议称作IP,是DoD协议包的一 部分。IP包无需建立连接就可以发送。每一个IP包 独立路由。没有路径的选中和标记,与X.25不同。
• 信元交换适用于多波传输(到多目的地)
信元交换的优点 有效地处理点-点传输+多波传输(广播)
22
2 异步传输模式网--异步传输模式
• 固定大小信元允许快速交换,消除小包被大包 阻塞所需线路被延迟的危险。信元交换时,接 连发送,下个信元甚至是属于不同的包 • ATM的协议分层
物理层:与OSI模型第1层功能相同 ATM层处理:路由选择、信元及传输。包括OSI第2 层和第3层一部分,和OSI第2层不同,ATM不修复丢 失或损坏的信元 适配层:将包拆成信元并在另一头组装,相当于 OSI模型第4层。适配层不提供可靠的端对端服务, 传输连接必须在上一层实现,例如通过使用ATM信 元来进行TCP/IP传输
6
1 分层协议
• 报文到达机器2时,它向上传递,每一层都剥掉并检 查自己的报头,最后报文到达接收者--进程B,它以 相反的路径应答。第n层的报头信息就用n层协议
数据链路层头 网络层头 传输层头 会话层头 表示层头 应用层头 消息 实际网络中传输的位
7
数据链 路层尾
1 分层协议
• 考虑两个公司间的通信,即Zippy Airlines和它的配 套公司Mushy Meals有限公司间的通信。Zippy公司旅 客服务经理让他的秘书每月与 Mushy 公司销售经理的 秘书联系订购100,000盒鸡肉。两个秘书用FAX联系 • 旅客服务经理可以决定退掉鸡肉,而要 Mushy 公司的 新款羊排,该决定不会影响秘书的工作。要注意这件 事有两层:老板和秘书。每一层都有自己的协议,而 各自的改变可以独立于其它层。这种独立性使得分层 协议颇具吸引力 • OSI 模型共有七层。特定系统所使用的一组协议称作 协议组或协议栈
21
2 异步传输模式网--异步传输模式
• 与分组交换和线路交换相比,具有某些优点:
网络可以混合传输语音、数据、广播电视、视频录 像、无线电和其它信息,无需分别用不同的网传输 不同的信号 诸如商务可视会议的新服务也将使用这种方式 网络看到的是信元,不关心内容:节省开支和简化 工作,每个家庭或商务活动只要接入一条信号线, 就可满足所有信息和通信的需要,还可带来新应用, 如视频点播、视频会议和远程数据库访问
数据链路层上的发送者和接收者之间的对话
11
1 分层协议--网络层
• 局域网中,发送者通常不把消息直接传送给接收者, 只需将消息发送到网络上,接收者从网上取走消息。 一个广域网就像一张连接主要城市道路的交通图。一 个消息从发送者到达接收者,也许经过若干转发点, 在每个转发点,都要选择一个输出线将消息发出。 • 怎样选择最佳路径的问题就叫路由,它是网络层的主 要任务。 • 由于最短路径不一定是最佳路径,这就使问题变得非 常复杂。在给定路由上的延迟量,与传输量以及在不 同线路上等待发送的消息数有关。延迟可能对整个传 输时间起决定性作用。一些路由算法试图适应动态的 负载,而其它路由算法则基于长期的平均性能。 12
• 通信需要多种不同的协议
用多少电压表示“0”或“1” 接收者如何知道消息的最后一位 怎样判定消息是否被损坏或丢失;发现了应该做什么? 数字、字符串和其它数据项需要有多长,如何表示
• 开放系统互连参考模型(ISO OSI或OSI)
为了便于处理通信中的层次问题,ISO开发了一个参考模型, 2 定义了所涉及的各层,它们的标准名称、功能
发送者建立到接收者的连接:连接过程中,从发送者到接 收者之间建立路由,并将路由信息存放在沿途的交换机上 系统可以利用这个连接发送包,包先被硬件拆成固定大小 的单元,称作信元(cell) 指定虚电路上的信元,沿着交换机中保存的路径流动 无需连接时,释放此连接,并从交换机中删除该路由信息
14
1 分层协议--传输层
• 可靠的来自百度文库输连接可以建立在x.25或IP上
对于前者,所有包将按正确的顺序到达(如果全部到达) 对于后者,每个包都可能采用不同的路由,后发送的包可 能先到达目的地。传输层软件将所有包重组,目的是维持 一个假像:传输连接像一个大管道——你放进报文,它们 被无损传送,并按进入时的次序出来。
17
1 分层协议--应用层
应用层实际上只是公共事务遵循的各种 协议的组合,如电子邮件、文件传输及 在网络上连接远程终端等。其中最为人 所熟知的是 X.400 电子邮件协议和 X.500 目录服务器。
18
2 异步传输模式网(ATM网)
• 最近30年,计算机性能提高几个数量级,网络 性能却没有提高
69年ARPANET创始时,结点间用56KB/s的通信线路 70年代末80年代初,多数被1.5Mb/s的T1线路取代 最终,主干网发展成45Mb/s的T3网络,但Internet 上的大多数传输线仍是T1或更慢的线路
第二章 分布式系统的通信
• 分布式系统和单机系统最重要的区别在于进 程间的通信,分布式操作系统中进程间的通 信包括:
分层协议 异步传输模式网(ATM网) 客户—服务器模式 远程过程调用 组通信
1
1 分层协议
• 分布式系统中,所有通信都是基于消息传递
通信 进程A 进程B (1) A在自己的地址空间建立消息 (2) 执行系统调用,让操作系统取出消息,通过网络传送给B
8
1 分层协议--物理层
• 物理层负责传输0/1串。它规定多少伏电压表 示0和1、每秒传输多少比特,是否能够同时进 行双向传输等。物理层还要考虑网络连接器 的大小、形状、引脚数及其每个引脚的含义 • 物理层协议讨论电气、机械、信号接口标准 化问题,以便一台机器发送0,实际接收到的 也是0 ,而不是 1 。现在已经有了很多物理层 标准,如RS-232-C是串行口通信线的标准
1 分层协议
• OSI模型允许开放系统间进行通信
一个开放系统就是可以与任何其它开放系统进行通 信的系统
它通过使用标准规则,管理消息的格式、内容和意义。这些 规则的正式名称就是协议
协议就是通信各方就如何进行通信所需遵守的规则
3
1 分层协议
• 为了允许一组计算机通过网络进行通信,必须有网络 协议。OSI模型区分了两种类型的协议:
声音传输是平滑的,需要低但连续的带宽 数字传输是突发性的,常常不需要带宽,但有时在 很短的时间内又要高的带宽
无论传统的线路交换和分组交换都不能同时适 应这两种传输
20
2 异步传输模式网--异步传输模式
• 经过研究,形成混合方案:在虚电路上传输固定大 小的块。这个折衷方案对两种类型的传输都有很好 的性能。称为ATM的这一方案,已成为国际标准,并 可能在分布式系统中起重要作用 • ATM模型
10
1 分层协议--数据链路层
时间 0 1 2 3 4 5 6 7 Data1 Control0 Data0 Control1 Data0 Data0 A Data0 Data0 Control0 Data1 Control1 Data0 B 事件 A发送数据消息0 B收到消息0,发现校验和错 A发送数据消息1 B告知A校验和错 两个消息都正确到达 A重传数据消息0 B告知A,它需要数据消息0,而不是1 两个消息都正确到达 A重传数据消息0 最后B收到消息0
15
1 分层协议--会话层
会话层本质上是传输层的增强版,它提供 对话控制、跟踪正在讲话者以及同步功能。 同步允许用户在较长的传输中插入检查点, 以便在发生错误时,仅仅需要从最后一个 检查点重来,而无需从头开始重发。实际 上,很少有应用对会话层感兴趣,它几乎 不 被 支 持 , 甚 至 在 DoD 协 议 集 中 也 不 存 在。
16
1 分层协议--表示层
低层关心的是把位可靠有效地由发送者传送到 接收者。和低层不同的是,表示层关心的是位 的含义。大多数报文不是由随机位串组成的, 更多的是由结构化信息,如人名、地址和钱数 等组成。在表示层可以定义一些特殊的记录, 它包含这些域,然后发送者提醒接收者报文以 某种格式包含特定记录。这使得内部表示方法 不同的机器间的相互通信变得很容易。
面向连接的协议:交换数据之前,发送者和接收者必须明 确地建立连接,并且协商可能使用的协议。完成数据交换 后必须断开连接。电话 无连接的协议:无需预先建立连接,发送者只要将准备好 的报文直接发送出去即可。投信到邮箱
• 在OSI模型中,通信分为7层。每层处理有关通信的一 个特定方面。如此,可以将一个问题分解为几个易于 处理的子问题,每个子问题都可以单独解决。每层都 为上一层提供接口。接口由一组操作组成,它定义了 该层向用户提供的服务
• 新发展:通信速率突然以大约 155Mb/s 为最低 标准,主干网以1GMb/s以上速度运行。这个变 化给分布式系统带来巨大的冲击、新挑战
19
2 异步传输模式网--异步传输模式
• 80年代末以来,电话公司意识到:除以4KHZ模 拟信道传输语音外,电信业务有更多的作为。 数字网如 x.25 存在多年,但不受重视、常以 56K或64Kbps的速度运行 • 电话公司决定建造21世纪网络时,进退两难:
13
1 分层协议--传输层
• 包可能在由发送者到接收者的路途中丢失。尽 管一些应用自行进行错误恢复,但一般应用更 愿意依赖于可靠的连接。传输层的任务就是提 供可靠服务。思想:会话层应该能将报文传递 给传输层,并希望在传输中不会丢失报文。 • 从对话层接收到报文后,传输层将其分成包, 给每个包分配一个序列号,并把这些包发送出 去。传输层头信息中的层间协商信息表示:哪 个包已被发送,哪个包已被接收,接收者还有 多少空间可使用等类似问题。
相关文档
最新文档