《分布式系统:概念与设计》一3.3 网络原理

简介: 本节书摘来华章计算机《分布式系统:概念与设计》一书中的第3章 ,第3.3节,(英) George Coulouris Jean DollimoreTim Kindberg Gordon Blair 著 金蓓弘 马应龙 等译 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.3 网络原理

计算机网络的基础是20世纪60年代发展起来的包交换技术。它使得发送到多个地址的消息可以共享同一条通信链接,这不同于常规电话所采用的电路交换技术。当链接可用时,数据包按顺序排列在缓冲区中,然后发送。通信是异步的——消息经过一段延迟到达目的地,该延迟取决于数据包在网络中传递所花费的时间。

3.3.1 数据包的传输

计算机网络的大多数应用需求是按逻辑单元发送信息或消息——任意长度的数据串。在消息传递前,它被分割成数据包。形式最简单的数据包是长度有限的二进制数据序列(比特或字节数组)以及识别源和目的地计算机的寻址信息。使用长度有限的数据包是为了:89

  • 网络中的每台计算机能为可能到来的最大的数据包分配足够的缓冲空间。
  • 避免长消息不加分割地传递所引起的为等待通信通道空闲而出现的过度延迟。

3.3.2 数据流

我们在第2章中曾提到,多媒体应用中视频/音频流的传输需要保证其速度和一定范围内的延迟。这样的流和数据包传输所针对的基于消息的流量类型有本质上的不同。视频/音频流比分布式系统中其他大部分通信形式所需要的带宽都要高。
为了达到实时显示的目的,如果传输的是压缩的数据,则视频流的传输需要1.5Mbps的带宽;如果传输的是未压缩的数据,则需要大约120Mbps的带宽。另外,和典型的客户-服务器交互程序所产生的断断续续的数据流量相反,这种流是连续的。多媒体元素的播放时间是必须被显示的时间(对视频元素来说)或必须转成音频的时间(对声音采样而言)。举例来说,视频帧的流速是每秒24个帧,那么第N帧的播放时间是从流开始传输后的N/24秒。元素如果迟于它的播放时间到达目的地,它就不再有用,将被接收进程丢弃。
及时传输这种数据流依赖于具有一定服务质量(带宽、延迟和可靠性必须都有保证)的网络连接。现在所需要的是建立起多媒体流从源到目的地的通道,其中路由是预定义好的,在经过的结点上保留需要的资源,在通道中对任何不规则的数据流进行适当的缓冲。通过这个通道,数据可在要求的速率下从发送方传送到接收方。
ATM网络专门设计为提供高带宽和低延迟,并通过保留网络资源保证服务质量。IPv6(互联网新的网络协议,其描述见3.4.4节)的一个特色是实时流中的每一个IP数据包都能在网络层被单独识别和处理。
通信子系统若要提供服务质量保证,就要有能预分配网络资源并强行执行这些分配的设施。资源保留协议(Resource Reservation Protocol,RSVP)[Zhang et al.1993]使得应用能协商实时数据流的带宽预分配。实时传输协议(Real Time Transport Protocol,RTP)[Schulzrinne et al.1996]是一个应用级数据传输协议,它在每个数据包中包含了播放时间和其他定时要求。要在互联网中有效实现这些协议,90传输层和网络层都必须作出实质性的改变。第20章将详细讨论分布式多媒体应用的需求。

3.3.3 交换模式

网络是一组由电路连接起来的结点组成的。为了能在任意两个结点间传输信息,交换系统是必不可少的。这里我们定义在计算机网络中使用的四种交换。
广播 广播是一种不涉及交换的传输技术。任何信息都将被传给每一个结点,由接收方判断是否接收。一些LAN技术(包括以太网)是基于广播的。无线网络也有必要基于广播,但是由于缺少固定电路,广播只能到达蜂窝内的结点。
电路交换 电话网曾经是唯一的电信网。它们的操作非常容易理解:当主叫方拨号时,主叫方电话到本地电话交换台的线路会通过自动交换机连接到被叫方的电话线。长途电话的拨叫过程也是类似的,只不过要经过多个交换台而已。这种系统有时被称为老式电话系统(POTS)。它是典型的电路交换网络。
包交换 计算机和数字技术的诞生为电信领域带来了新的契机。从根本上说,它使得人们可以处理和存储数据,这使得以完全不同的方式构造通信网络成为可能。这种新的通信网络叫做存储转发网络。存储转发网络并不是通过建立或取消连接来构造电路,而只是将数据包从它的源地址转发到目标地址。在每个交换结点上(也就是几个电路需要互连的交汇处)有一台计算机。数据包到达一个结点后先存储在这个结点的内存中,再由一个程序选择数据包的外出电路,将它们转发到下一个离它们目的地更近的结点。
这里没有什么全新的内容,邮政系统就是一个信件的存储转发网络,其处理由人或机器在信件分拣室完成。而在计算机网络中,数据包的存储和处理很快,即使数据包路由了许多结点,也能给人们瞬间传输的假象。
帧中继 现实中,存储转发网络中每个结点转发一个数据包需要的时间从几十微秒到几微秒不等,这个交换延迟取决于数据包的大小、硬件的速度和当时的流量情况,但它的下限由网络带宽决定,因为整个数据包必须在它转发给另一个结点之前先收到。数据包在到达目的地址前,可能要通过很多的结点。互联网中大多数据包基于存储转发交换,正如我们已经知道的,即使是很小的互联网数据包通常也需要200ms左右的时间到达目的地。这个量级的延迟对于电话会议、视频会议这样的实时应用而言就太长了,91要维持高质量的会谈,延迟不得超过50ms。
帧中继交换方法给包交换网络引入了电路交换的一些优势。它们通过很快地交换小的数据包(称为帧)来解决延迟的问题。交换结点(通常是专用的并行数字处理器)通过检测帧的前几位信息来路由帧。帧并不作为一个整体存储在结点中,而是以位流的形式通过结点。ATM网络是一个最好的例子。高速ATM网络在由很多结点组成的网络中传递数据包只需要几十微秒。

相关文章
|
25天前
|
并行计算 安全 网络协议
探索未来网络:量子互联网的原理与应用
本文深入探讨了量子互联网的基本概念、技术原理及其潜在应用。通过对量子纠缠、量子叠加和量子隐形传态等核心概念的解释,文章展示了量子互联网如何利用量子力学特性来实现超高速、超高安全性的通信。此外,还讨论了量子互联网在金融、医疗、国防等领域的应用前景,以及当前面临的技术挑战和未来的发展方向。
64 2
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的奥秘:探索神经网络的核心原理
本文将深入浅出地介绍深度学习的基本概念,包括神经网络的结构、工作原理以及训练过程。我们将从最初的感知机模型出发,逐步深入到现代复杂的深度网络架构,并探讨如何通过反向传播算法优化网络权重。文章旨在为初学者提供一个清晰的深度学习入门指南,同时为有经验的研究者回顾和巩固基础知识。
59 11
|
3天前
|
网络协议 Linux 应用服务中间件
Socket通信之网络协议基本原理
【10月更文挑战第10天】网络协议定义了机器间通信的标准格式,确保信息准确无损地传输。主要分为两种模型:OSI七层模型与TCP/IP模型。
|
13天前
|
存储 安全 算法
网络安全与信息安全:构建数字世界的防线在数字化浪潮席卷全球的今天,网络安全与信息安全已成为维系现代社会正常运转的关键支柱。本文旨在深入探讨网络安全漏洞的成因与影响,剖析加密技术的原理与应用,并强调提升公众安全意识的重要性。通过这些综合性的知识分享,我们期望为读者提供一个全面而深刻的网络安全视角,助力个人与企业在数字时代中稳健前行。
本文聚焦网络安全与信息安全领域,详细阐述了网络安全漏洞的潜在威胁、加密技术的强大防护作用以及安全意识培养的紧迫性。通过对真实案例的分析,文章揭示了网络攻击的多样性和复杂性,强调了构建全方位、多层次防御体系的必要性。同时,结合当前技术发展趋势,展望了未来网络安全领域的新挑战与新机遇,呼吁社会各界共同努力,共筑数字世界的安全防线。
|
13天前
|
存储 安全 自动驾驶
探索未来网络:量子互联网的原理与应用
【10月更文挑战第2天】 本文旨在探讨量子互联网的基本原理、技术实现及其在通讯领域的革命性应用前景。量子互联网利用量子力学原理,如量子叠加和量子纠缠,来传输信息,有望大幅提升通信的安全性和速度。通过详细阐述量子密钥分发(QKD)、量子纠缠交换和量子中继等关键技术,本文揭示了量子互联网对未来信息社会的潜在影响。
|
12天前
|
分布式计算 Hadoop 网络安全
Hadoop-08-HDFS集群 基础知识 命令行上机实操 hadoop fs 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
Hadoop-08-HDFS集群 基础知识 命令行上机实操 hadoop fs 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
21 1
|
12天前
|
存储 机器学习/深度学习 缓存
Hadoop-07-HDFS集群 基础知识 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
Hadoop-07-HDFS集群 基础知识 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件
32 1
|
17天前
|
人工智能 安全 网络协议
探索未来网络:量子互联网的原理与应用
本文深入探讨了量子互联网的基础原理、关键技术及其在未来通信领域的应用前景。通过分析量子纠缠、量子叠加等核心概念,揭示了量子互联网相较于传统互联网的优势所在。同时,文章还讨论了当前量子互联网领域面临的技术挑战和解决方案,为读者呈现了一个关于量子互联网的全面且深入的视角。
43 6
|
2天前
|
机器学习/深度学习 算法 数据建模
计算机前沿技术-人工智能算法-生成对抗网络-算法原理及应用实践
计算机前沿技术-人工智能算法-生成对抗网络-算法原理及应用实践
8 0
|
25天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的奥秘:探索神经网络背后的原理与实践
【9月更文挑战第29天】本文将带你深入理解深度学习的核心概念,从基础理论到实际应用,逐步揭示其神秘面纱。我们将探讨神经网络的工作原理,并通过实际代码示例,展示如何构建和训练一个简单的深度学习模型。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供宝贵的知识和技能。
33 2