通信工程师考试中级交换技术第五章.docx
《通信工程师考试中级交换技术第五章.docx》由会员分享,可在线阅读,更多相关《通信工程师考试中级交换技术第五章.docx(47页珍藏版)》请在冰豆网上搜索。
通信工程师考试中级交换技术第五章
2014年通信工程师考试中级交换技术第五章
如第1章所述,现代的交换技术基本上分为电路交换和分组交换。
第3章和第4章讲述的是电路交换,从本章开始讨论分组交换。
在这一章中,我们将首先介绍采用分组交换技术的计算机网络及其体系结构;然后讨论分组交换的基本原理及关键技术;最后研究分组交换的性能这一章主要涉及传统的分组交换,而新型分组交换将在后续的聿节中展开。
第5章分组交换
5.1分组交换计算机网络概述
分组交换(PacketSwitching)也称为包交换,是伴随着计算机网络诞生的,它是现代计算机网络的技术基础。
因此,为了掌握分组交换的功能、原理及其关键技术,必须对计算机网络有一个概括的了解。
5.1.1计算机网络的组成
早期的计算机系统都是单机系统,它们往往分别工作在封闭的机房内。
那么,计算机为什么要连成网络呢?
计算机连网的主要目的是:
第一,实现资源共享,提髙资源的利用率,这些资源包括计算资源、存储资源和通信资源等;第二,实现负荷分担,加强计算机之向的互助合作;第三,构成分布式处理系统,提高处理能力和可靠性。
多台计算机要实现互连,在这些计算机之间必须要进行通信,或者说要进行数据信息的传送。
因此计算机网络定义为通过通信网络互连、按统一协议(规则)工作的多台计算机的集合。
传统的计算机网络由两大部分组成,它们是:
通信子网和用户(资源)子网,如图5-1所示。
通信子网又称为骨干网络,由信息传输链路L和中继节点N组成,它的主要任务是实现信息的传送(Tmi8fer)0用户子网由主机H、数据集中器C、局域网LAN等组成,其主要任务是实现信息的处理,为应用提供服务。
概括地讲,计算机网络是由许多节点和许多链路构成的集合。
节点又分为端节点和转移节点,前者是用户终端(即主机)的所在地,后者是数据交换机的所在地。
链路可分为用户线和中继线(干线)。
需要指出,图5-1所示中只画出一个通信子网,实际上传送信息的通信子网可能有多个,它们之间往往通过网关(如路由器)互连。
5.1.2计算机网络的体系结构原理
计算机网络的各计箅机之间要做到有条不紊地交流信息,就必须遵守一些事先约定好的规则。
这些规则明确规定了所交换的数据的格式以及有关事件发生的时序。
对不同系统的实体之间的信息交流进行控制的一组规则或约定,称为网络协议或规约。
更进一步地讲,一个网络协议主要由以下三个要素组成:
1.语法,即数据和控制信息的格式和编码;
2.语义,即各种控制信息的含义及相应的控制操作等;
3.同步,即速率适配、事件出现顺序的控制等。
第一个计算机网络ARPANET的成功经验表明,对于非常复杂的网络协议,最好采用分层式结构。
我们可以举一个简单的例子来说明协议分层的概念。
假定在计算机1和计算机2之间通过一个通信网络传送文件,如图5-2所示。
这是一件比较复杂的工作。
可以将通过网络传送文件所要做的工作划分为三类。
第一类工作与传送文件直接有关。
例如,发送方的文件传送应用程序应当确信接收方的文件管理程序已做好接收和存储文件的准备。
若两个计算机所用的文件格式不一样,则至少其中的一个计算机应完成文件格式的转换。
这两件工作可用.个文件传送模块来完成。
这样,两个计算机可将文件传送模块作为最高的一层(如图5-2所示)。
在这两个模块之间的虚线表示两个计算机系统交换文件和一些有关文件交换的命令。
但是,我们并不想让文件传送模块完成全部工作的细节,这样会便文件传送模块过于复杂。
第二类工作是设立一个通信服务模块,用来保证文件和文件传送命令可靠地在两个端系统之间交换。
也就是说,让上面的文件传送模块利用下面的通信服务模块所提供的服务。
我们还可以看出,如果将上面的文件传送模块换成电子邮件模块,那么电子邮件模块同样可以利用下面的通信服务模块所提供的可靠通信的服务。
第三类工作是构造一个网络接人模块,让这个模块负责做与网络接口细节有关的工作,并向上层提供服务,使上面的通信服务模块能够完成可靠通信的任务。
从上篇简单例子可以更好地理解分层带来的好处,这些好处如下所述。
1.各层之间是相对独立的。
某一层并不需要知道它的下一层是如何实现的,而仅仅需要知道该层通过层间的接口(即界面)所提供的服务。
由于每一层只实琛一种相对独立的功能,因而可将一个难以处理的复杂问题分解为若干个较容易处理的更小一些的问题。
这样,整个问题的复杂程度就下降了。
2.灵活性好。
当任何一层发生变化时(例如由于技术的变化),只要层间接口关系保持不变,则在这层以上或以下各层均不受影响。
此外;对某一层提供的服务还可进行修改。
当某层提供的服务不再需要时,甚至可以将这层取消。
3.结构上可分割开。
各层都可以采用最合适的技术来实现。
4.易于实现和维护。
这种结构使得实现和调试一个庞大而又复杂的系统变得易于处理,因为整个的系统已经被分解为若干相对独立的子系统。
5.能促进标准化工作,因为每一层的功能及其所提供的服务都已有了精确的说明。
我们将网络的各层及其协议的集合,称为网络的体系结构(Arehitectwe)。
换种说法,计算机网络的体系结构就是这个计算机网络及其部件应完成的功能的精确定义。
需要强调的是,这些功能究竟是用何种硬件或软件完成,则是一个遵循这种体系结构的实现(Implementation)的问题。
体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。
下面进一步讨论计算机网络体系结构的若干基本概念。
交换技术体系结构原理分层类型
1.分层
分层就是将一个复杂的系统功能划分为若干相对独立的子功能;每层完成一个子功能;下层为上层服务,上层是下层的用户。
前面已经说明了分层带来的许多好处。
分层时应注意使每一层的功能非常明确,且层数要适当。
若层数太少,就会使每一层或某些层的功能过千复杂;但层数太多了又会在描述和综合各层功能的系统工程任务时遇到较多的困难。
根据多个计算机网络,特别是互联网(Intonet)的建设、发展和运行的经验,将复杂的计算机网络的功能分为五层是比较适当的。
这五层,从上往下,分别是应用层、运输层、网络层、数据链路层和物理层。
现在简单地介绍一下各层的主要功能。
1)物理层(PhysicalLayer)
物理层的任务就是利用物理信道透明地传输比特流。
在物理层上所传数据的基本单位是比特。
传输信息利用的物理信道是以双绞线、同轴电缆、光纤、微波无线电等传输媒质为基础的信号通路。
“透明”是一个很重要的概念。
它表示,某一个实际存在的事物看起来好像不存在一样。
“透明地传输比特流”表示经实际信道可以传输任意的比特组合,因而比特流的发送者和接收者就“看不见”这个信道的存在。
当然,实际信道对所传输的信号是有损伤的,其中最主要的损伤是信号波形发生畸变和加人了噪声,从而引起传输比特发生差错。
物理层的任务就是要通过信号处理来尽可能地减小这些损伤,达到“透明”传输。
在通信原理课程中所讲的基带传输、调制解调、定时同步、纠错编码等内容都属于物理层要采用的技术。
物理层要规定与信道(传输媒质)的接口,包括接口的电气特性、机械特性、功能特性和工作时序。
例如,要规定用多大的电压代表“1”或“0”,每个比特持续多长时间;要确定连接电缆的插头和插座用多少引脚,各引脚的用途及如何连接。
2)数据链路层(DataLinkLayer)
数据链路层的基本任务是在两个相邻节点之间的链路上实现以帧(Frame)为单位的“无误”数据传输。
帧有两种类型:
数据帧和控制帧。
数据帧包含数据和必要的控制信息;控制帧主要包含控制信息,但也可搭载少童数据信息。
在每一侦所包括的控制信息中,有用于帧同步、寻址、差错控制以及流最控制等的信息。
数据链路层的具体功能包括链路连接控制、差错控制和流量控制等。
链路层可为上一层提供两种服务方式,面向连接方式和无连接方式。
链路连接控制只在有连接方式下采用。
为了保证“无误”传输,链路层的差错控制(ErrorControl)对于许多信道是必要的。
差错控制的基本方法是检错重传(ARQ),即在传送数据过程中,若接收点检测到所收到的数据帧中有差错,就要设法通知发方重发,直到这一帧被正确无误地收到为止。
这样,数据链路层就把一条有可能出差错的实际链路,转变成为让网络层向下看起来好像是一条不出差错的链路。
当然,实际上即使经过ARQ,仍然会存在剩余差错,但差错率已变得非常小,以至于可近似看作“无误”。
在采用光纤链路的条件下,因为光纤传输的差错率非常小(通常小于1(T9),链路层的差错控制功能可以取消。
流量控制是为了实现传输速率的适配,保证数据发送速率不会超过接收点能够接受的程度,即保证接收数据缓冲器不发生溢出。
在具体实现时流量控制和差错控制往往结合进行。
3)网络层(NetworkLayer)
网络层的基本任务是将数据从源(节)点传送到目的(节)点。
在源点与目的点(或称终点)之间可能要经过许多个节点和链路,还可能要经过好几个不同的子网。
在网络层,数据传送的基本单位是分组(Packet〉,又称为包。
因此,网络层的主要功能就是实现分组交换,即根据分组首部所提供的寻址信息,选择合适的路由,使数据分组经过沿途节点的转发准确无误地到达终点。
网络层为它的上一层提供面向连接的服务或无连接的服务。
在面向连接的方式下,在数据分组流开始传送之前,要先建立从源点到目的点之间的通路连接,即确定这一批分组的路由,然后这些分组就遵循相同的路由,按照一定的顺序到达终点。
在无连接的方式下,各个数据分组独立选择路由,因而可能经过不同的路由到达终点。
4)运输层(TransportLayer)
这一层曾有过几个译名,如传送层、传输层。
现在比较一致的意见是译为运输层。
在运输层,信息的传送单位是报文(Message)。
当报文较长时,先要把它分割成若干段,然后再交给下一层(网络层)进行传送。
运输层的基本任务是实现主机进程到主机进程之间的信息传送。
为此,就要根据通信子网的特性最佳地利用网络资源,并以可靠和经济的方式,透明地传送报文。
运输层向上一层提供面向连接的可靠数据传送服务或无连接非可靠的数据传送服务,可以根据应用层的需要选择使用。
为了实现可靠传送,运输层要完成靖到端的连接控制、差错控制、流量控制和拥塞控制等功能。
5)应用层(ApplicationLayer)
应用层是网络体系结构中的最高层。
应用层确定进程之间通信的性质以满足用户的需要(这反映在用户所产生的服务请求)。
应用层不仅要提供应用进程所需要的信息交换和远地操作,而且还要作为互相作用的应用进程的用户代理(UserAgent),来完成一些为进行语义上有意义的信息交换所必须的功能。
应用层直接为用户的应用进程提供服务。
需要注意的是,应用层协议并不是解决用户各种具体应用的协议。
典型的应用层协议有支持文件传送的FTP协议、支持电子邮件的SMTP协议、支持万维网(WWW)的HTTP协议。
运输层和应用层的功能只在主机或端系统中完成。
在通信子网内的各个交换节点以及连接各子网的路由器中,都没有运输层和应用层。
在运输层以上就不再关心信息传输的问题了。
在上述五层的网络体系结构中,应用层和运输层合称为髙层;相应地,网络层、数据链路层和物理层合称为低层。
主机或端系统要完成所有各层的功能;而通信子网的各个节点和子网之间的路由器中只需完成低层功能。
交换技术主机应用进程在传递过程的变化
图5-4所示说明主机的应用进程的数据在各层之间的传递过程中所经历的变化。
这里为简单起见,假定两个主机是直接相连的。
假定计算机1的应用进程AP,向计算机2的应用进程AP2传送数据。
AP,先将其数据交给第5层。
第5层加上必要的控制信息H5变成这一层的协议数据单元(ProtocolDataUnit,PDU),记为PDU-5,交给下一层。
第4层收到这些数据单元后,加上本层的控制信息H,,形成PDU-4,再交给第3层。
依次类推。
不过到了第2层(数据链路层)后,控制信息分成两部分,分别加到本层数据单元的首部(札)和尾部(T2),形成PDU-2(帧),交给第1层通过物理信道以比特流的形式传输到对方。
当这一串比特流传输到对方时,就从第1层上送给第2层,恢复为帧,控制帧用于本层的控制操作,数据帧中的数据部分上送给第3层。
依次类推,直至PDU-5上送到第5层。
每一层都根据PDU头部的控制信息进行必要的操作,然后将它们剥去,将该层剩下的数据单元上交给更髙的一层。
最后,把应用信息进程AP,发送的数据交给目的主机的应用进程AP2。
可以用一个简单的例子来比喻上述过程。
有一封信从最髙层向下传。
每经过一层就包上一个新信封。
包有多个信封的信传送到目的点后,从第1层起,每层拆开一个信封后就交给它的上一层。
传到最髙层后,取出发信人所发的信交给收信用户。
虽然一个应用进程的发送数据要经过如图5-4所示的复杂过程才能送到对方的应用进程,但这些复杂过程对用户来说,却都被以下各层屏蔽掉了,以致应用进程AP,好像是直接把数据交给了应用进程AP2。
同理,任何两个同样的层次(例如在两个系统的第4层)之间,也好像如同图中的水平虚线所示的那样,将数据(即数据单元加上控制信息)通过水平虚线直接传递给对方。
这就是所谓的“对等层”(PeerLayers)之间的通信。
前面所提到的各层协议,实际上就是在各个对等层之间传递数据的各项规则。
在文献中也还可以见到术语协议栈(ProtocolStack)。
这是因为几个层次画在一起很像一个堆栈。
交换技术实体、协议、服务以及服务接入点
1.实体、协议、服务以及服务接入点
在研究网络进行信息传送时,发送或接收信息的究竟是一个进程、一个终端还是一台主机,都没有实质上的影响。
因此,可以用实体(Entity)这一名词表示信息的任何发送者或接收者(可发送或接收信息的硬件或软件进程)。
在许多情况下,实体就是一个特定的软件模块。
协议是控制两个对等实体进行通信的规则的集合。
协议的语法方面的规则定义了所交换的信息的格式,而协议的语义方面的规则就定义了发送者或接收者所要完成的操作,例如,在何种条件下数据必须重传或丢弃。
在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。
而要实现本层协议,还需要使用下一层所提供的服务。
一定要弄淸楚,协议和服务在概念上是很不一样的。
首先,协议的实现保证了能够向上一层提供服务。
本层的服务用户只能看见服务而无法看见下面的协议。
下面的协议对上面的服务用户是透明的。
其次,协议是“水平的”,即协议是控制对等实体之间通信的规则。
但服务是“垂直的”,即服务是由下层向上层通过层间接口提供的,还应注意到,并非在一个层内完成的全部功能都称为服务。
只有那些能够被高一层看得见的功能才能称之为“服务”。
上层使用下层所提供的服务必须通过层间交换的命令来实现,这些命令称为服务原语。
在同一系统中相邻两层的实体进行交互(即交换信息)的地方,通常称为服务接人点(ServiceAccessPoint,SAP)。
服务接入点SAP是一个抽象的概念,它实际上就是一个逻辑的接口,有些像邮政信箱,但和通常所说的两个设备之间的硬件并行接口或串行接口是很不一样的。
层与层之间交换的数据单元,称为服务数据单元(ServiceDataUnit,SDU),它可以与PDU不一样。
例如,可以是多个SDU合成为一个PDU,也可以是一个SDU划分为几个PDU。
这样,在任何相邻两层之间的关系可以概括为图5-5所示的那样。
这里要注意的是,某一层向上一层所提供的服务实际上已包括了在它以下各层所提供的服务。
所有这些对上一层来说就相当于一个服务提供者。
在服务提供者的上一层的实体,也就是“服务用户”,它使用服务提供者所提供的服务。
5.1.3开放系统互连参考模型
国际标准化组织(InternationalStandardOrganization,ISO)制订的开放系统互连(OpenSystemInterconnection,OSI)参考模型采用7个层次的网络体系结构,也就是将前面所讲的原理性体系结构中的应用层再划分为3个层次,其余4层保持不变。
这3个层次从上到下的名称是:
应用层、表示层和会话层(如图5-6所示)。
1)会话层(SessionLayer)
会话层为应用实体间的会话提供控制机理,包括会话连接控制及通信双方的同步。
会话层所提供的一种服务是管理会话,允许会话双方进行全双工通信(双向同时传输)或时分半双工通信(任一时刻只能单向传输)。
在时分半双工通信的情况下,会话层负责双方的同步,即要保证通信双方不能同时进行发送。
当通信的一方处于发送状态时,要设法让另一方处于接收状态,并且要实时控制双方的收发转换。
这可以通过双方交换令牌(Token)来实现,令牌是发送权的标记,只有持有令牌的那一方才有权进行发送。
2)表示层(PresentationLayer)
表示层负责应用层实体传送数据的格式转换,实现数据编码/解码、数据压缩/解压、数一据加密/解密等功能。
为了让采用不同数据表示法的计算机之间能进行通信,使用的数据结构可以用抽象的方式来定义,并且使用标准的编码方式。
表示层管理这些抽象数据结构,并且在计算机内部完成原始表示法和网络标准表示法之间的转换。
3)应用层(ApplicationLayer)
应用层负责为用户提供接人OSI环境的方法,支持各种应用,如网络虚拟终端、文件传送、电子邮件、多媒体、WWW等。
在OSI的7层体系结构中,下面4层的功能与5.1.2节所述的相同,这里不再重复。
此外,5.1.2节所述的分层、实体、对等层协议、协议数据单元、服务、原语等术语都源自于OSI参考模型。
5.1.4TCP/IP体系结构
互联网(Internet)已经得到了全世界的承认和普遍应用,因此这种网络所使用的TCP/IP体系在计算机网络领域中就占有特殊的重要地位。
在Internet所使用的各种协议中,最重要的和最着名的就是两个协议,即传输控制协议。
(TransmissionControlProtocol,TCP)和网际协议(InternetProtocol,IP)。
现在人们经常提到的TCP/IP并不一定是指TCP和IP这两个具体的协议,而往往是表示Internet所使用的体系结构或是指整个TCP/IP协议族。
TCP/IP体系共有4个层次(如图5-6所示)。
由于TCP/IP在设计时考虑到要与具体的物理传输媒质无关,因此在TCP/IP的标准中并没有对数据链路层和物理层做出规定,而只是将最低的一层取名为网络接口层。
这样,如果不考虑没有多少内容的网络接口层,那么TCP/IP体系实际上就只有三个层次,应用层、运输层和网际层。
TCP/IP的最高层是应用层。
在这层中有许多着名协议,如远程登录协议TELNET,文件传送协议FTP,简单邮件传送协议SMTP等。
再往下的一层是TCP/IP的运输层,它也叫做主机到主机层。
这一层可使用两种不同的协议。
一种是面向连接的传输控制协议(TCP)。
另一种是无连接的用户数据报协议(UserDatagramProtocol,UDP)。
运输层的协议数据单元是报文(Message)或数据流(Stream)。
报文也常称为报文段(Segment)。
运输层下面是TCP/IP的网际层,其主要的协议就是无连接的网际协议UP)。
网际层的协议数据单元是IP数据报(Datagram)或IP分组(Packet)。
与网际协议IP配合使用的还有三个协议,这就是Intemet控制报文协议(InternetControlMessageProtocol,ICMP),地址解析协议(AddressResolutionProtocol,ARP)和逆地址解析协议(ReverseAddressResolutionProtocol,RARP)0这里“解析”的意思就是“转换”。
网络接口层并没有什么具体的内容,TCP/IP体系中没有描述这一部分,只是指出主机必须使用某种协议用于网络连接,以便能在其上传递IP分组。
图5-6画出了TCP/IP与OSI这两种体系结构的对比。
值得注意的是,在一些问题的处理上,TCP/IP与OSI是很不相同的。
TCP/IP-开始就考虑到多种异构网(HeterogeneousNetworks)的互连问题,并将网际协议IP作为TCP/IP的重要组成部分。
但ISO和CCITT最初只考虑到使用一种标准的公用数据网将各种不同的系统互连在一起。
后来,ISO认识到了网际协议IP的重要性,然而已经来不及了,只好在网络层中划分出一个子层来完成类似TCP/IP中IP的作用。
TCP/IP一开始就确定面向连接服务和无连接服务并重,而OSI在开始时只强调面向连接服务。
一直到很晚OSI才开始制订无连接服务的有关标准。
无连接服务的数据报对于互连网中的数据传送以及分组话音通信都是十分方便的。
TCP/IP较早就有较好的网络管理功能,而OSI到后来才开始考虑这个问题。
当然,TCP/IP也有不足之处。
例如,TCP/IP的模型对“服务”、“协议”和“接口”
等概念并没有很清楚地区分开。
因此在使用一些新技术来设计新的网络时,采用这种模型就可能会遇到一些麻烦。
另外,TCP/IP模型的通用性较差,很难用它来描述其他种类的协议栈。
还有TCP/IP的网络接口层严格来说并不是一个层次而仅仅是一个接口,而在网络层下面的数据链路层和物理层则根本没有。
但实际上这两个层次还是很重要的。
5.2分组交换原理
上一节介绍了计算机网络的组成和网络的体系结构,其中通信子网的基本任务就是将数据信息从源点传送到S的点,在源点与目的点之间可能要经过许多个链路和中继节点。
链路的功能是传输,而中继节点的功能是交换,也就是从输人链路接收信息并转发到指定的输出链路上。
交换分为电路交换(CircuitSwitching)和分组交换(PacketSwitching)。
这两种交换的机制存在本质的区别。
理论与实际均已表明,按照电话业务的特征设计的电路交换不适合于计算机数据通信,而分组交换则是根据数据业务的特征设计的交换技术。
本节将集中讨论分组交换的工作原理。
5.2.1电路交换技术不适合计算机数据通信
在电话出现后不久,人们便认识到,在所有用户之间架设直达的线路对通信线路的资源是极大的浪费。
必须依靠交换机实现用户之间的互连。
一百多年来,电话交换机经过多次更新换代,从人工接续、步进制、纵横制发展到现代的数字时分轻序控制交换机,其本质始终未变,都是采用电路交换。
从通信资源的分配角度来看,“交换”就是按照某种方式动态地分配传输信道的带宽资源。
电路交换是在通话之前,根据用户的呼叫请求,由网络预先给用户分配传输带宽(这里指的是广义的带宽,即将时分制的时了宽度也折合为带宽)。
用户若呼叫成功,则从主叫端到被叫端建立一条物理通路。
此后双方才能互相通话。
通话完毕挂机后即自动释放这条物理通路。
电路交换的关键点就是:
在通话的全部时间内用户始终占用端到端的固定传输带宽。
电路交换的示意图如图5-7所示。
为简单起见,图中对市话和长途交换机未加区分。
应当注意的是,用户线归电话用户专用,而对交换机之间拥有大量话路的中继线来说,通话的用户只占用了其中的一个话路。
利用电路交换可以实现计算机之间的数据通信,其典型例子是利用公共电信网进行数据通信。
在这种情况下,电话终端用数据终端或计算机代替,不过在数据终端或计算机中要设置一个网络接口设备,这个设备叫做话路调制解调器(Modem)。
电路交换的主要优点是在通路建立以后端到端的传送时延基本上等于路径的电波传播时延,因而适合于承载对时延有严格要求的数据业务。
但是,计算机数据通常是随机而突发出现的,因此电路交换建立的物理通路真正用来传送数据的时间往往不到10%甚至1%。
在绝大部分时间里,通信线路实际上是空闲的(但对电信局来说,通信线路已被用户占用因而要收费)。
例如,当用户阅读终端屏幕上的信息或用键盘输入和编辑一份文件时,或计算机正在进行处理而结果尚未得出时,宝贵的通信线路资源实际上并未被利用而是被白白地浪费了。
另外,由于计算机和各种终端的传送速率很不一样,在采用电