一、 路由器中的路由选择
我们知道,分组到达路由器之后,要根据分组首部的目的地址信息以及路由器的本地路由表,来决定下一跳的路由器以及对应的出口。那么这个过程,在路由节点上是如何实现的呢?
路由器收到IP包之后,需要对其进行进行转发。如果该IP包的目的主机与本节点处于同一个物理网络,通过ARP协议的方法可以得到目的主机的MAC地址以及物理地址,可以直接将IP包封装在MAC帧中,直接发送出去,目的主机能够直接接收,这种转发方式称为直接转发。如果该IP包的目的主机与本节点不在同一个物理网络,需要查询路由表得到下一跳的路由器,将IP包通过对应接口转发出去,这种转发方式称为间接转发。
转发IP包需要用到目的主机的IP地址,实际上由于主机数量极多,如果路由表是按照主机为单位列出表项,规模将会极为庞大,不仅不宜存储,而且查询起来非常耗时,维护更新的开销也非常大,因此实际上路由表是按照目的网络号列出表项的。IP包在到达网络之前,都采用间接转发的方式,只需要知道目的网络号就可以确定下一跳转发节点;等IP包到达目的网络之后,路由器可以采用直接转发的方式进行处理,这样就大大所缩小了路由表的规模。
路由表根据本网络所使用的路由算法生成本地路由表,列出了目的网络和对应的出口。下面看,路由器有两个接口,接口A连接着网络1,接口B连接着网络2。路由表中则列出来目的网络号和对应的出口,需要注意的是,同一个网络中,一般采用相同的路由协议,路由器各自计算生成本地路由表。如果该网络拓扑结构不变,而是使用了不同的路由协议,网络节点生成的路由表是不同的,这意味着,最佳路由的标准不同,得到的传输路径也是不同的。
在路由表中,还有两种特殊的路由——默认路由和特定主机路由。
默认路由(default routing)
- 选路时,如果没有在路由表中搜索到与目的地址匹配的表项,那么可以将该分组转发到一个默认的下一跳路由器上。这就是默认路由,由此可以减小路由表的规模,提高查表效率。
- 采用默认路由,一方面可以避免出现选路失败的结果,另一方面主要是能够是能够将多条下一项表项的结果进行合并设置为默认路由。
特定主机路由(host--specific routing)
- 一般而言路由表的表项是基于网络号的,但有时为了某些特殊目的(如管理维护等),也允许在路由表中使用主机地址作为表项,为特定主机指定特定的路由通路。
下面,我们概括在路由器中进行路由选择的算法步骤。
二、 路由协议-RIP协议
路由协议在因特网中,路由器根据路由协议生成本地路由表,决定了IP包的传输路径。那么,路由协议具体有哪些,在实际网络中是如何应用的呢?
因特网规模庞大,所包含的用户终端和交换节点非常多。因此,路由协议在设计的时候,往往会考虑可实现性,使用层次化、分布式的方法。此外,由于各类节点的状态是实时变化的,有可能会发生突发故障、产生拥塞的情况,这就会对经过节点的路由产生影响。路由协议需要能够支持节点变化信息的及时收集、传输路由动态自适应更新,以保证网络中分组的顺利转发。
在实际中,我们将整个因特网划分成许多小的自治系统(Autonomous System,AS)。每个AS内部,可以独立地决定所采用的路由协议,彼此之间互不影响,这样就极大的增加了使用路由协议的灵活性和方便性。要注意的是,AS的划分,经常是根据不同的政治、人文、地理位置等因素决定的。
路由协议可以分为两类:
内部网关协议(域内): 在一个AS内部使用的路由协议,与其他系统无关,如RP,OSPF等。
外部网关协议(域间): 两个或多个不同AS间通信使用的路由协议,如BGP等。
下面我们来看一种内部网关的路由协议——RIP(Routing Information Protocol),这是一种最普通、应用最广泛的内部网关路由协议。
- 采用了距离向量路由算法。
- 采用转发次数(即HOP)作为费用的度量参数。
- RIP支持的最大网络直径是15HOPS。
- 每30秒将整个路由数据库广播一次。
- 好消息传播的快,坏消息传播的慢。(如果出现了一条较短的路由,网络中的其他路由器很快就会知道,并随之更新本地的路由信息;但是某一条路由出现了问题,如节点失效导致目的地不可达,其他路由节点会耗费较长的时间获知信息)
分布式路由选择策略中最基本的算法有两类:
距离向量算法:如RIP
链路状态算法:如OSPF
我们从距离向量算法的角度来解读一下RIP协议:
- 距离向量算法的概念:每一个路由器将其所了解的网络路由信息,包括已知的所有网络和距离通知邻居路由器,采用的是发布距离向量的形式。
- 距离向量二元组 {NETWORK, COST}
- NETWORK:目的网路号
- COST:去往网络的费用
- 费用反映了发布距离向量的路由器与目的网络之间的距离,是一个相对值。在RIP协议中,它是指一条通路上所经过的路由器的数量,也就是每经过一个路由器,COST值加1
- 如果费用设置为 16,则表明所连接路由器不可达,因为最大网络半径为15HOP
- 路由器的路由数据库中记录了距离向量以及去往该网络的邻居路由器。
- 使用距离向量协议的路由器每隔一段时间会通过路由更新消息向其直接相邻的路由器发布一组距离向量。
- 这些距离向量反映了本路由器己知的路由信息,也是路由数据库中记录的内容。
- 如何更新本地路由数据库
- 将接收到的所有距离向量的费用值与本节点的费用值(一般是1)相加。将计算结果与本地路由数据库中记录的距离向量进行逐项比较,取较小值。
- 用新的距离向量更新路由数据库。即:费用值更新为上一步得到的最小值结果,同时更新对应的下一跳路由器。
- 路由数据库更新完之后,可以根据新数据库计算和生成新的路由表。
下面我们通过一个例子来看一下RIP更新路由数据库的过程。R1和R2是两个邻居的路由器节点,R1的路由数据库中显示,到达目的网络N1直接转发就可以,费用为0;此时R2的路由数据库中显示,到达相同的目的网络N1,下一跳路由器是Rn,费用是4。
然后,R1发布路由更新消息,把距离本地的距离向量广播给所有的邻居节点,其中的距离向量二元组,有一项就是目的网络N1费用为0;R2收到该消息后,按照前面介绍的方法,更新本地路由数据库,根据R1广播的距离向量,得到去往目的网络N1通过下一跳路由器R1的话费用为1,小于原来数据库中路径(费用为4),因此R2更新数据库中该表项的信息——目的网络为N1、费用为1、下一跳路由器是R1。接下来,R2周期性地发布距离向量时,就将新的路由信息广播出去。
不同路由协议性能不同,RIP协议更适合因特网发展初期,节点数量或规模较小的网络场景。随着节点数量不断增加,AS域不断扩大,RIP协议的使用收到了限制,由此便提出了OSPF协议。
三、 路由协议-OSPF协议
RIP协议适用于节点数量较少、网络规模较小的情况,而且所有路由器都需要周期性地广播距离向量信息,路由开销比较大。由于路由消息只发送给邻居节点,导致网络拓扑结构发生变化的时候,算法更新收敛所需要的时间比较长。
针对上述问题,人们又提出了开放最短通路优先OSPF (OPEN SHORTEST PATH FIRST),采用链路状态路由及最短路径优先算法(Dijkstra 算法),即最短路径优先算法,计算网络当中,任意两个节点之间的最短路径。
- OSPF支持到达相同目的地的多条等价通路共存,而不像RIP协议当中仅保留通往目的网络当中的一条路由信息。
- 只有在网络的拓扑结构发生变化的时候,路由器才进行路由信息的更新和链路状态的发布,而不是周期性地广播路由信息,因此网络中的开销相对较小。
- 此外,OSPF协议并没有对节点数量和转发次数等进行限制,可以使用在较大规模的网络中,具有较好的可扩展性。
在OSPF协议中,路由器将链路状态信息发布给其他路由器:
- 该路由器与哪些网络和路由器相邻,对应链路所需费用。
- 路由器将向整个网络发布链路状态分组(LSP)
- 源路由器的标识符
- 相邻路由器的标识符
- 二者之间链路的费用
路由器中本地路由数据库存入的是路由状态信息,反映了整个网络的拓扑结构图:
- 路由数据库,即链路状态数据库,是一张整个网络的拓扑结构图
- 各个路由器接收到的LSP被用于建立和刷新该网络的整体拓扑图
- 根据该拓扑图,利用Dijikstra算法,能够计算出网络中任意两点之间的最短通路。
- 路由器根据网络整体拓扑图来计算生成路由表。
OSPF协议的工作过程可以概括为以下几个过程:
- 各路由器向网络中发布LSP分组信息;
- 路由器接收到其他路由器发布的LSP,建立和刷新各自的链路状态数据库;经过一段稳定时间后,各路由器中都维持了统一的网络拓扑结构;
- 各路由器根据网络拓扑计算各自的最短路径树;
- 各路由器得到最短路径树后,可据此计算各自的路由表,各路由器得到最短路径树后,可据此计算各自的路由表。
LSP能够迅速传遍全网,链路状态协议能够快速汇聚。由此快速建立起来网络拓扑的准确视图。此外LSP信息仅在网络拓扑发生变化的时候才发送,因此开销也较小,传输较快。由于各路由器都掌握网络整体拓扑结构,准确性高也不会产生循环路由。LSP能够支持多种网络参数或者信息的传送,因此具有较好的可扩展性。
OSPF适用于规模较大的网络。将整个网络分成不同的区域,每个区域内部的路由器之间互相发布链路状态信息。每个区域都有边界路由器AR,各个AR彼此相连构成骨干区域,实现跨区域的通信。不同区域之间只需传输概括性的信息。由此,我们就可以构建比较大的网络。
下面是RIP协议和OSPF协议的对比:
四、 软交换技术的概念
上个世纪末,电信业展开了对下一代网络(NEXTGENERATION NETWORK)技术研究的热潮。软交换技术将传统网络中的交换设备划分为呼叫控制和媒体处理的独立模块,二者之间采用标准协议通信,依靠分组交换网络进行数据传输,是NGN的典型代表技术之一。
广义的NGN是指不同于目前一代的,大量采用创新技术,支持语音、数据和多媒体业务的融合网络——“ 下一代之后永远还有下一代 ”。狭义的下一代网特指以软交换为核心的开放体系架构—— “ 现阶段的下一代网指狭义的 ”。
NGN的特征如下:
- 采用开放的网络架构体系
- 按照功能划分模块,彼此间用标准的接口互联
- 业务驱动的网络
- 业务与呼叫控制分离,呼叫与承载分离。
- 基于统一协议的分组网络
- 使用IP协议
提到软交换,也有广义和狭义两种概念:广义软交换泛指一种体系结构,即基于软交换的下一代网络框架;狭义软交换指软交换设备;由此可见,广义的软交换就是狭义的NGN。
那么,软交换与电路交换有什么区别呢?左图是电路交换的节点结构示意图,从图中可以看到用户接口可以连接终端,中继接口可以连接网络中的其他节点,基于电路交换的设备主要支持语音业务,相应的呼叫控制功能也是为语音业务量身打造的;用户数据在接口之间传输需要经过节点内部的交换网络,整个设备是一个封闭的系统。右图是软交换功能的示意图,各个功能模块之间都是独立的,彼此之间用虚线连接,具有标准接口,意味着模块之间用分组网络传递信令和数据,业务模块独立,便于新业务的开发和推广;软交换设备主要实现呼叫控制功能,而与其他终端或节点的接入可以通过媒体网关来实现,这是一个完全开放的架构。
传统电路交换网是一种垂直集成的、封闭和单厂家专用的系统结构,新业务的开发也是以专用设备和专用软件为载体,导致开发成本高、时间长、无法适应今天快速变化的市场环境和多样化的用户需求。软交换首先打破了传统的封闭交换结构,采用横向组合模式、开放的接口和通用的协议,构成一个开放的、分布的和多厂家应用的系统结构。
软交换的特点如下:
- 硬件分散,业务控制和业务逻辑相对集中,整体建网成本较低网络升级容易,便于加快新业务和新应用的开发、生成和部署,能快速实现低成本广域业务覆盖
- 提高了网络资源利用率,减少了大量交换机中继互联的复杂性和业务网的承载成本。
- 软交换设备占地很小,大大提高了机房空间利用率
总结一下软交换的概念:
- 软交换是网络演进以及下一代分组网络的核心设备之一,它独立于传送网络,主要完成呼叫控制、资源分配协议处理、路由、认证、计费等主要功能,同时可以向用户提供现有电路交换机所能提供的所有业务,并向第三方提供可编程能力。
下面,我们看一下软交换的体系接口是什么样的。软交换从下到上可以分为接入层、核心传输层、控制层和应用层。
- 接入层:提供各种网络和设备接入到核心骨干网的方式和手段主要包括信令网关、媒体网关、接入网关等多种接入设备。
- 传输层:负责提供各种信令和媒体流传输的通道,网络的核心传输网将是IP分组网络,
- 控制层:提供呼叫控制、连接控制、协议处理等能力。主要组成部分是软交换设备。
- 业务层:利用底层的各种网络资源为用户提供丰富多样的网络业务。
所以,我们可以看出,将原来网络中的呼叫控制功能独立出来就是现在的控制层,即软交换;原来网络中剩余的对媒体处理和传送功能就是现在核心传输层要完成的功能;而接入/媒体层就是提供各种接入手段,只不过因为软交换要叠加在现有的通信网上,还必须提供现有各种传统通信网,如电话网、ISDN、智能网的接入。
下面这张图给出了具体的示例,说明了软交换各模块的组成,以及彼此间通信需要的具体协议。我们可以看到,模块的种类非常多,两个模块之间需要专门的协议。
这张图是专门针对软交换设备的内部功能模块图,同时列出来与之直接相连的功能模块。可以将软交换设备的功能总结为以下几点:
- 媒体网关适配功能:实现对媒体网关的控制、接入和管理,直接与终端连接,提供相应业务。
- 业务提供功能:提供电路交换系统和智能网的全部业务,还提供API接口与外部互通。
- 网络管理和计费功能
- 地址解析/路由功能
- 互通功能:与外部实体及其他软交换设备进行交互,进行信令转ル换,并与系统内部各实体协同运作来完成各种复杂业务。
- 业务交换功能(SSF功能):业务控制出发的识别以及与业务控制功能(SC)间的通信;管理呼叫控制功能和SCF之间的信令;按要求修改呼叫/连接处理功能;在SCF控制下处理IN业务请求。
- 呼叫控制功能:为基本呼叫的建立、维持和释放提供控制功能
五、 IMS技术的概念
随着通信技术的发展和人们需求的增加,异构网络之间的融合和互通已经成为必然,其中固定网络和移动网络的融合又是业内关注的重点。同时,从网络传输的角度而言,全网IP化已经成为了广泛共识;学术界和产业界基于此考虑新的网络架构,支持固定或移动融合,为大量用户提供各种综合业务,并实现了电信级的服务质量(QoS)保证。因此,我们就提出了IP多媒体子系统。
IP多媒体子系统(IP Multimedia Subsystem,IMS)作为解决固定网络与移动网络融合,支持语音、数据、多媒体等差异化业务的重要解决方案,提供了标准化的体系结构被认为是下一代网络的核心技术。
IMS的主要特点可以概括如下:
- 与接入无关。IMS借鉴软交换技术,采用基于网关的互通方案,支持多种接入方式。
- 协议统一。采用SIP协议进行控制,能够灵活便捷的支持多媒体业务,并与现有!网络平滑对接。
- 业务与控制分离。
- 归属服务控制。
- 用户数据与交换控制分离。可以解决用户移动性用户的号码携带和智能业务触发等问题。
- 水平体系架构。
- 策略控制和 QoS保证。
软交换技术与IMS有着相同点以及不同点:
相同点:
- 软交换与IMS都是作为下一代网络技术提出的,实现目标均是构建一个基于分组的、层次分明的、开放的下一代网络,实现控制和承载分离。
不同点:
软交换技术
- 软交换的主要贡献是提出了分层思想,利用了分组数据网信息传送的能力,把传统电路交换设备的呼叫控制功能、媒体承载功能、业务功能进行了分离。
- 软交换设备不再处理媒体流和业务的属性,而是负责基本的呼叫控制及其相关的一些属性。
- 软交换对电话语音业务、IP接入、非IP接入以及与PSTN/VoIP互通等方面考虑较多,对移动性管理和多媒体业务的考虑较少。
- 目前软交换技术比较成熟,在我国得到广泛应用。
IMS技术
- IMS在软交换技术控制与承载分离的基础上,更进一步实现了呼叫控制层和业务控制层的分离IMS更关注逻辑网络结构和功能,能够提供实际运营所需的各种能力。
- IMS充分考虑了对移动性的支持,与具体的接入方式无关。
- 目前IMS已有成熟的产品和市场,业界普遍认为lMS将融合各种网络成为下一代网络的核心技术。
IMS网络底层采用基于IP协议的分组交换网络进行传输,可以分为三层。
IP接入网络层
- 发起和终结各类SIP会话:
- 实现IP分组承载与其他各种承载之间的转换根据业务部署和会话层的控制实现各种QoS策略;完成与PSTN/PLMN之间的互联互通;设备包括各类SIP终端、有线接入网关、无线接入网关、互联互通网关等。
IP多媒体核心网络层
- 全部基于IP,提供多媒体业务环境;
- 完成用户注册,完成基本会话的控制,与应用服务器交互执行应用业务中的会话、维护管理用户数据管理业务QoS策略等功能;
- IMS系统的大部分核心功能实体均处于本层。
业务网络层
- 提供多媒体业务的应用平台,可以向用户提供多种综合业务。
下面来介绍IMS的功能实体:
- P-CSCF(代理呼叫会话控制功能):是IMS用户的网络接入节点。所有SIP信令,无论来自UE还是发送给UE的都必须经过它。主要功能:
- 将UE发来的注册请求消息转发给I-CSCF
- 将从UE收到的S/户请求和响应转发给S-CSCF
- 将SP请求和响应转发给UE
- 发送计费相关信息,
- 提供SIP信令的完整性和机密性保护
- 和PDF交互,授权承载资源并进行QoS管理
- I-CSCF(查询呼叫会话控制功能)。主要功能:
- 为一个发起SP注册请求的用户分配一个S-CSCF
- 将从其他网络来的S/户请求路由到S-CSCF;
- 查询归属用户服务器HSS,获取为某个用户提供服务的S-CSCF地址;
- 根据从HSS获取的S-CSCF地址将SP请求和响应转发到S-CSCF。
- 生成计费记录。
- 提供网间拓扑隐藏网关功能。
- S-CSCF(服务呼叫会话控制功能):是IM5的核心功能模块,位于归属网络,为UE进行会话控制和注册服务。在注册和呼叫过程中的主要功能:
- 接收注册请求。
- 实现用户与归属网络间的相互认证。
- 处理消息流,包括:为已经注册的会话终端进行会话控制;作为代理服务器,处理或转发收到的请求,作为用户代理,中断或者独立发起SP事务;与服务平台交互来向用户提供服务;提供终端相关的服务信息。
- 当代表主叫的终端时,寻找被叫所接入的I-CSCF并转发SIP请求或响应;当呼叫要路由到户STN或CS域时,把SIP请求或响应转发给对应网关,
- 当代表被叫的终端时,如果用户在归属网络中,把S/户请求或响应转发给P-CSCF;如果用户在拜访网络中把SI请求或响应转发给I-CSCF。当呼叫要路由到PSTN或CS域时,把SP请求或响应转发给对应网关。
- 发送计费消息。
- HSS(归属用户服务器):存储用户数据。主要功能:
- 存储用户身份信息(用户标识、号码和地址)、用户安全信息(用户网络接入控制的鉴权和授权信息)、用户的位置信息和用户的签约业务信息。
- 对移动性管理、呼叫和会话建立、鉴权、漫游接入授权、用户的多标识处理等功能提供支持。
- BGCF(出口网关控制功能)
- MGCF(媒体网关控制功能)
- PDF(策略决策功能)