首页> 中国专利> 一种基于OpenFlow的流媒体云透明服务装置

一种基于OpenFlow的流媒体云透明服务装置

摘要

本发明公开了一种基于OpenFlow的流媒体云透明服务装置,包括流媒体业务管理单元、透明服务控制单元和OpenFlow网络转发单元,实现了流媒体云端和用户端之间的相互透明性,为流媒体服务向云形态转变提供了技术支持。本发明内容可用于流媒体云服务系统中的服务透明性问题,具体包括流媒体云端对用户端的透明性问题中的节点失效、负载分布不均衡以及移动自动切换问题和用户端对流媒体云端的透明性问题中的用户终端切换问题;本发明还能够灵活控制服务流的转发路径,以起到网络优化的作用。因此,本发明可以适用于广域的流媒体云服务系统,当然也适用于局域的流媒体服务系统;而且利用本发明的原理,结合SDN技术也可以实现一种基于SDN的流媒体云透明服务装置。

著录项

  • 公开/公告号CN104486290A

    专利类型发明专利

  • 公开/公告日2015-04-01

    原文格式PDF

  • 申请/专利权人 中国科学技术大学;

    申请/专利号CN201410663798.8

  • 发明设计人 王子磊;姜同全;奚宏生;

    申请日2014-11-18

  • 分类号H04L29/06;H04L29/08;H04L12/813;H04L12/937;

  • 代理机构北京科迪生专利代理有限责任公司;

  • 代理人杨学明

  • 地址 230026 安徽省合肥市包河区金寨路96号

  • 入库时间 2023-12-17 04:48:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-10-03

    授权

    授权

  • 2015-04-29

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20141118

    实质审查的生效

  • 2015-04-01

    公开

    公开

说明书

技术领域

本发明涉及多媒体网络通信领域,尤其涉及一种基于OpenFlow技术实现流媒体云透明 服务的装置。

背景技术

随着计算机技术的发展、网络技术的提高以及网络用户数量的增加,流媒体服务得到了 快速发展,例如视频点播服务等。传统流媒体服务系统主要由流媒体服务端、传统分发网络 和客户端组成。为了改善流媒体服务质量,一些技术已经成功应用在传统流媒体服务系统上, 例如CDN技术、P2P技术和集群技术等,但是这些技术自身也存在着一些局限性,如扩展 性、可靠性、服务封装能力等。因此,单纯利用CDN技术、P2P技术或集群技术都很难尽 善尽美解决流媒体服务系统的现有问题。

近年来,云计算得到了快速兴起和发展。考虑到云计算具有虚拟资源池化、对用户透明、 可弹性扩展和服务可靠性等特点,越来越多的专业人员考虑将流媒体服务向云形态转变,因 而流媒体云的概念应运而生。流媒体云,将庞大的资源和超强的计算能力包装为整体而进行 统一的管理,支持用户在任意位置、使用各种终端设备获取透明的服务,能够很好的解决传 统流媒体服务系统所遇到的问题。流媒体云通过在不同地理位置分别放置媒体边缘云(子 云),将用户所请求的内容推到网络边缘,用于减小用户响应延迟和减轻骨干网络流量负载; 而且子云内部的各服务节点按照云计算的方式组织起来,能够动态适应系统负载变化以及用 户端请求规模变化等情形。

流媒体云能够有效解决传统流媒体服务的问题,但是将流媒体服务向云形态转变也面临 着很多困难。首先是节点失效问题,由于流媒体云是将各类资源进行虚拟化而统一管理,长 期运行必然会增加系统出现节点失效的概率;当系统内有节点失效时,需要从其余节点里选 择合适的节点而及时准确的接纳失效节点上正在运行的流媒体服务,以保证流媒体服务对用 户的透明性。再次是负载分布不均衡问题,当各类影片资源在虚拟服务节点上的分布不合理 时,就会导致各节点的负载分布不够均衡,进而降低整个系统的服务容量;一种有效的方法 是对流媒体服务进行服务节点的切换,重新调整系统中服务的分布,但这要以保证服务节点 的切换对用户的透明性为前提。另一方面,为了更好的支持移动终端设备,基于流媒体云的 服务系统(流媒体云服务系统)需要支持用户终端切换和移动自动切换的功能。用户终端切 换,需要流媒体云服务系统保证在用户终端发生切换时,连续的流媒体服务不随之改变,即 实现用户终端的无缝切换。移动自动切换,当用户终端在服务过程中发生了地理位置的移动 时,为了保证良好的服务效果,需要将流媒体服务的服务端切换至更合适的子云,这需要流 媒体云服务系统保证服务端的切换对用户的透明性。总之,流媒体云服务系统需要解决服务 端(流媒体云端)对用户端的透明性以及用户端对服务端(流媒体云端)的透明性问题;其 中服务端对用户端的透明性问题包括节点失效问题,负载分布不均衡问题和移动自动切换问 题,用户端对服务端的透明性问题就是用户终端切换问题。

为了解决流媒体服务的透明性问题,已经有相关专业人员进行了研究而且提出了一些技 术。其中,用于解决服务端对用户端的透明性问题的技术包括进程迁移技术、应用层迁移技 术等;用于解决用户端对服务端的透明性问题的技术包括基于web的迁移技术和基于SCTP 的迁移技术等。但是,这些技术只是单一的针对服务端或者用户端,因而并不适用于要求流 媒体云端与用户端之间相互透明的流媒体云服务系统。而且,这些技术也存在着一些问题; 例如,应用层迁移技术需要RTSP代理节点作为媒介,这往往成为整个系统服务性能瓶颈, 而且其没有考虑到网络层状态同步的问题,因而只适用于局域的集群系统,而不适用于网络 环境变化的迁移情形;进程迁移技术需要在流媒体服务器上通过linux内核完成网络层状态 的同步,但这样会额外增加流媒体服务器负担。

OpenFlow主要由OpenFlow交换机和控制器两部分组成,实现了控制层和数据层的分 离。OpenFlow交换机主要由流表、安全通道和OpenFlow协议组成。流表是交换机进行转发 控制的核心数据结构,交换机通过查找匹配的流表项来决定对数据包的操作。控制器通过 OpenFlow协议对交换机中流表进行配置,从而实现对整个网络的集中控制。尽管OpenFlow 技术在虚拟机迁移、无线网络切换等方面取得了一定成果,但是这些方法并不适合于对透明 性要求更高的流媒体云服务系统。

发明内容

本发明公开了一种基于OpenFlow的流媒体云透明服务装置,其包括流媒体业务管理单 元、透明服务控制单元和OpenFlow网络转发单元。本发明实现了流媒体云服务系统中流媒 体云端和用户端的相互透明性;在用户端,客户端不需要关心流媒体云端中服务节点是否发 生了切换,只需要始终将原始服务节点看作为流媒体服务的发送方;在流媒体云端,服务节 点也不需要关心用户客户端是否发生了切换,只需要始终将原始客户端看作为流媒体服务的 接收方。

所述的流媒体业务管理单元包括一台流媒体业务管理服务器,主要功能包括,监测流媒 体服务在流媒体云端和用户端中的服务状态、辅助流媒体云端完成原服务节点和新服务节点 之间的应用层状态同步、生成合适的透明服务策略、将透明服务策略信息以网络通信的方式 发送给所述的透明服务控制单元。

进一步的,所述的服务状态,记录了流媒体服务在流媒体云端或者用户端中是否需要进 行服务节点或者客户端的切换以及切换的类型。按照流媒体服务是否同时进行服务节点和客 户端的切换,可以将服务状态分为三种,仅服务节点切换、仅客户端切换和服务节点与客户 端双切换;其所对应的三种流媒体服务类型分别为,仅服务节点切换的服务、仅客户端切换 的服务和服务节点与客户端双切换的服务。流媒体业务管理服务器会定期监测流媒体云端内 部各服务节点的运行状态,收集各服务节点的负载信息以及用户端中移动终端的地理位置信 息,当流媒体云端出现节点失效或者负载分布不均衡、用户端出现移动终端所在的地理位置 的变化时,流媒体云端中的一些流媒体服务就需要进行服务节点的切换,其所对应的服务状 态也会随之变化。流媒体业务管理服务器还会监测用户端中客户端的切换情况,当用户主动 更换了访问终端时,用户端的流媒体服务就需要进行客户端的切换,其所对应的服务状态也 会随之变化。

更进一步的,所述的服务节点或者客户端的切换,是指流媒体云端为流媒体服务所对应 的流媒体会话选择一个新节点作为当前实际服务节点,代替原服务节点为用户端继续提供服 务流,或者根据客户端的切换情况,用户端将新客户端作为流媒体会话的当前实际客户端, 代替原客户端继续接收来自流媒体云端的服务流。

更进一步的,所述的流媒体会话,是指在用户第一次向流媒体云端请求流媒体服务时, 由流媒体云端所选择的一个服务节点作为原始服务节点,与用户客户端(原始客户端)建立 的会话,记录了原始服务节点和原始客户端的网络层信息,例如IP地址、MAC地址和端口; 而且流媒体会话还作为流媒体服务的唯一标识,即无论流媒体服务进行了多少次服务节点或 者客户端的切换,其所对应的流媒体会话的基本信息不会有任何变化。

进一步的,所述的应用层状态同步,是指流媒体云端的原服务节点和新服务节点,在应 用层上对流媒体服务完成相关状态的同步,以确保流媒体云端发送给用户端的服务流在应用 层上的连续性;其中,应用层上的相关状态包括流媒体服务所对应的流媒体资源名称、流媒 体服务的码率和当前播放时间。

进一步的,所述的透明服务策略,是由流媒体业务管理服务器依据各流媒体服务的所述 的服务状态、流媒体云服务系统的资源部署及负载分布信息计算而来,用于确定哪些流媒体 服务需要进行服务节点的切换、哪些流媒体服务需要进行客户端的切换、哪个服务节点作为 需要进行服务节点切换的流媒体服务的新服务节点、哪个客户端作为需要进行客户端切换的 流媒体服务的新客户端。所述的透明服务策略的具体内容与导致流媒体服务发生服务节点或 者客户端切换的原因密切相关。对于节点失效问题而引起的切换,需要进行服务节点切换的 流媒体服务就是失效节点上正在运行的服务,新服务节点需要流媒体业务管理服务器根据其 余各节点的运行状态以及资源部署情况进行确定;对于负载分布不均衡问题而引起的切换, 需要流媒体业务管理服务器根据流媒体服务在各服务节点中的分布情况,确定需要进行服务 节点切换的流媒体服务以及对应的新服务节点;对于移动自动切换问题而引起的切换,需要 进行服务节点切换的流媒体服务就是当前客户端正在访问的服务,新服务节点需要流媒体业 务管理服务器从距离用户最近的子云里进行选择;对于用户终端切换问题而引起的切换,需 要进行客户端切换的流媒体服务就是原客户端正在访问的服务,新客户端就是用户需要切换 到的终端设备上的客户端。

进一步的,所述的透明服务策略信息,记录了与所述的透明服务策略相关的流媒体服务 的信息,用于所述的透明服务控制单元能够据此计算得到合适的转发策略,并且通过 OpenFlow交换机完成网络层状态同步。所述的透明服务策略信息的具体内容与流媒体服务 的所述的服务状态密切相关。对于仅服务节点切换的服务,所述的透明服务策略信息,记录 了流媒体服务的新服务节点的地址及端口、原始客户端的地址及端口、原始服务节点的地址 及端口、当前客户端的地址及端口信息;其中,新服务节点和原始客户端的地址及端口信息 用于生成与网络层状态同步相关的流表规则的匹配字段,原始服务节点和当前客户端的地址 及端口信息用于生成流表规则的操作。对于仅客户端切换的服务,所述的透明服务策略信息, 记录了流媒体服务的当前服务节点的地址及端口、原始客户端的地址及端口、原始服务节点 的地址及端口、新客户端的地址及端口信息;其中,当前服务节点和原始客户端的地址及端 口信息用于生成与网络层状态同步相关的流表规则的匹配字段,原始服务节点和新客户端的 地址及端口信息用于生成流表规则的操作。对于服务节点与客户端双切换的服务,所述的透 明服务策略信息,记录了流媒体服务的新服务节点的地址及端口、原始客户端的地址及端口、 原始服务节点的地址及端口、新客户端的地址及端口信息;其中,新服务节点和原始客户端 的地址及端口信息用于生成与网络层状态同步相关的流表规则的匹配字段,原始服务节点和 新客户端的地址及端口信息用于生成流表规则的操作。

更进一步的,所述的网络层状态同步,是指在流媒体服务进行服务节点或者客户端的切 换之后,所述的透明服务装置对流媒体服务流的数据包在传输层、网络层和数据链路层上进 行修改,以使服务流能够成功到达当前客户端,确保流媒体服务的连续性;修改的内容包括 数据包的IP地址、MAC地址和端口。

所述的透明服务控制单元,主要由一台透明服务控制器组成,运行着网络操作系统,能 够对OpenFlow交换机进行管理和控制;其主要功能是,接收来自所述的流媒体业务管理单 元的透明服务策略消息,先根据所掌握的整个网络的拓扑结构以及链路状况信息,选择合适 的OpenFlow交换机,再依据透明服务策略消息,分别为所选择的交换机生成合适的转发策 略,并且以controller-to-switch消息的形式,将转发策略通过OpenFlow安全通道发送给各交 换机。

进一步的,所述的转发策略,是指由所述的透明服务控制单元根据流媒体服务在流媒体 云端和用户端中的所述的服务状态,向OpenFlow交换机所下发的流表规则,具体包括用于 网络层状态同步的流表规则和用于数据流转发的流表规则。

更进一步的,所述的用于网络层状态同步的流表规则,负责对流媒体服务流的数据包的 字段进行修改,以完成流媒体服务在网络层上的状态同步,进而保证服务节点的切换对用户 端的透明性以及客户端的切换对流媒体云端的透明性。修改数据包的字段的方法与流媒体服 务的类型相关。对于仅服务节点切换的服务,需要将新服务节点发送给原始客户端的服务流 的源地址及端口改为原始服务节点的地址及端口,而且需要将服务流的目标地址和端口改为 当前客户端的地址及端口;对于仅客户端切换的服务,需要将当前服务节点发送给新客户端 的服务流的源地址及端口改为原始服务节点的地址及端口,而且需要将服务流的目标地址及 端口改为新客户端的地址及端口;对于服务节点与客户端双切换的服务,需要将新服务节点 发送给原始客户端的服务流的源地址及端口改为原始服务节点的地址及端口,而且需要将服 务流的目标地址及端口改为新客户端的地址及端口。

更进一步的,所述的用于数据流转发的流表规则,负责将流媒体云端与用户端之间的服 务流按照最合理的路径进行转发,以保证高质量的流媒体服务。当流媒体服务进行了服务节 点或者客户端的切换时,所述的透明服务控制单元会根据流媒体服务流的转发需要,通知 OpenFlow交换机删除或者修改切换前的服务流的流表规则,增加切换后的服务流的流表规 则,以保证当前服务流能够从各交换机的正确端口转发出去,按照最合理的路径到达当前客 户端。

所述的OpenFlow网络转发单元,主要由一台或者多台OpenFlow交换机组成;其主要 功能是,接收来自所述的透明服务控制单元的所述的转发策略,在网络层上帮助流媒体云服 务系统完成所述的网络层状态同步,而且能够按照所述的用于数据流转发的流表规则,传递 流媒体云端与用户端之间的服务流,以保证服务节点的切换对用户端的透明性以及客户端的 切换对流媒体云端的透明性。

本发明一种基于OpenFlow的流媒体云透明服务装置,主要由流媒体业务管理单元、透 明服务控制单元和OpenFlow网络转发单元组成,利用OpenFlow技术能够实现控制层和数 据层相互分离的特性,实现了流媒体云端和用户端的相互透明性,有效解决了现有技术只是 单一的针对服务端对用户端的透明性或者用户端对服务端的透明性的问题,进而为流媒体服 务向云形态转变提供了技术支持。具体来说,利用本发明,可以实现在流媒体服务因为流媒 体云端的节点失效、负载分布不均衡以及移动自动切换等问题而进行了服务节点的切换时, 流媒体云端对用户端的透明性;而且可以实现,在流媒体服务因为用户终端切换问题而进行 了客户端的切换时,用户端对流媒体云端的透明性。另外,本发明装置可以嵌入到传统分发 网络来传递流媒体云端与用户端之间的服务流,而且借助OpenFlow网络能够对数据流转发 路径进行灵活控制的特性,可以对服务流的转发路径进行优化,以提高流媒体服务系统的整 体服务质量。总之,本发明借助OpenFlow技术能够实现控制层和网络层相互分离以及可以 通过设置流表规则对匹配数据包的字段进行修改的特性,实现了流媒体云端和用户端之间的 相互透明性,可以应用于广域的流媒体云服务系统,并具有较高的使用价值。

附图说明

图1为典型流媒体云服务系统的结构示意图;

图2为本发明装置的功能原理示意图;

图3为依据本发明的一种流媒体云服务系统的物理结构示意图;

图4为依据本发明的OpenFlow交换机底层架构示意图;

图5为本发明实施例中服务节点与客户端双切换实例示意图;

图6为本发明实施例中服务节点与客户端双切换实例的流表规则示意图。

具体实施方式

下面结合说明书附图说明本发明的具体实施方式。

图1为流媒体云服务系统的结构示意图,流媒体云端包括分布在不同地区A、B、C和 D的四个媒体边缘云(子云);在网络拓扑结构上,为了降低服务时延,流媒体云端将服务 推到处于云边缘的各个子云,每个子云分别面向的是各自地区中采用不同终端接入的用户; 为了避免传统流媒体服务系统单点失效的问题,子云内部的各服务节点之间以及不同子云之 间都采用分布式的方式进行组织和管理。

为了解决流媒体云服务系统中流媒体云端和用户端相互透明性的问题,本文借助 OpenFlow技术设计了一种流媒体云透明服务装置。下面结合图2对本发明装置实现流媒体 云端和用户端之间相互透明性的原理进行说明。在原始服务节点和原始客户端之间建立流媒 体会话后,原始服务流由流媒体云端发送给用户端;其中,原始服务节点作为原始服务流的 发送方,原始客户端作为原始服务流的接收方。因为流媒体云端对用户端具有透明性,用户 端始终将原始服务节点看作为流媒体服务的发送方,因此本发明的流媒体云透明服务装置相 当于一个虚拟原始服务节点,能够为用户端提供连续的、可以被当前客户端成功播放的服务 流;因为用户端对流媒体云端具有透明性,流媒体云端始终将原始客户端看作为流媒体服务 的接收方,因此本发明的流媒体云透明服务装置又相当于一个虚拟原始客户端,能够接收来 自当前服务节点发送给用户端的服务流,对服务流进行网络层状态同步的处理后,成功转发 给当前客户端。如图2中虚线所示,当流媒体服务在流媒体云服务系统中没有进行任何的服 务节点或者客户端的切换时,本发明的流媒体云透明服务装置此时只起到数据流转发的作 用;来自原始服务节点的原始服务流经过流媒体云透明服务装置的转发后,直接到达原始客 户端。如图2中直线所示,当流媒体服务在流媒体云端里进行了服务节点的切换或者在用户 端里进行了客户端的切换时,本发明的流媒体云透明服务装置此时起到网络层状态同步和数 据流转发的作用;来自当前服务节点的当前服务流需要先进行网络层状态同步,然后由流媒 体云透明服务装置转发给当前客户端。

图3是利用本发明装置而设计的一种流媒体云服务系统的物理结构示意图,自上而下分 别为流媒体云端(SMC)、流媒体云透明服务装置(TSD)和用户端(USER);其中,流媒 体云透明服务装置(TSD)既能够作为通信桥梁传递流媒体云端(SMC)和用户端(USER) 之间的服务流,又能够实现流媒体服务在网络层上的同步。具体地,本发明一种基于 OpenFlow的流媒体云透明服务装置包括流媒体业务管理单元(TSD_SMU)、透明服务控制 单元(TSD_TSCU)和OpenFlow网络转发单元(TSD_OF_NFU),通过向上和向下的通信 接口,分别与流媒体云端(SMC)和用户端(USER)进行通信。

流媒体业务管理单元(TSD_SMU)主要由一台流媒体业务管理服务器(TSD_SM)组 成,主要功能包括,监控流媒体云端(SMC)、监测用户端(USER)中流媒体服务的客户端 切换情况、当流媒体云端内有流媒体服务发生服务节点的切换时辅助原服务节点和新服务节 点完成应用层状态同步、生成合适的透明服务策略和将透明服务策略信息发送给透明服务控 制单元(TSD_TSCU)。

1)监控流媒体云端。流媒体业务管理服务器会定期监测流媒体云端内部各服务节点的 运行状态,用于确定各服务节点是在线还是失效;流媒体业务管理服务器还会定期向各服务 节点收集负载信息,用于判断流媒体云端的负载分布情况;当流媒体云端出现节点失效或者 负载分布不均衡问题时,流媒体业务管理服务器会立即触发服务节点的切换。

2)监测用户端。当用户端发生了终端设备的切换时,流媒体业务管理服务器接收来自 用户端的客户端切换消息,确定需要进行客户端切换的流媒体服务以及新客户端的地址及端 口信息,触发客户端的切换。

3)辅助完成应用层状态同步。当流媒体云服务系统有流媒体服务进行了服务节点的切 换时,为了保证服务节点切换前后的流媒体服务的连续性,需要新服务节点以相同的应用层 状态代替原服务节点向用户端继续发送服务流。在流媒体服务进行了服务节点的切换时,流 媒体业务管理服务器会辅助原服务节点和新服务节点,在应用层上完成状态同步,确保新服 务节点能够在正确的播放时间点、按照相同的码率将服务流发送给用户端。

4)生成透明服务策略,发送透明服务策略信息。当流媒体云服务系统因为节点失效、 负载分布不均衡或者移动自动切换等问题而需要对一些流媒体服务进行服务节点的切换时, 流媒体业务管理服务器会根据流媒体云端各服务节点的运行状态、各服务节点的负载情况、 各子云的地理位置分布等信息,生成针对服务节点切换的透明服务策略,用来确定需要进行 服务节点切换的流媒体服务以及合适的新服务节点;当流媒体云服务系统因为用户终端切换 而需要对流媒体服务进行客户端的切换时,流媒体业务管理服务器会根据切换前后的终端设 备,生成针对客户端切换的透明服务策略,确定需要进行客户端切换的流媒体服务以及正确 的新客户端。透明服务策略信息则记录了透明服务策略中流媒体服务的相关信息,会由流媒 体业务管理服务器以网络通信的方式发送给透明服务控制单元,用于透明服务控制单元计算 得到转发策略,通过OpenFlow交换机完成网络层状态同步。

透明服务控制单元(TSD_TSCU)主要由一台透明服务控制器(TSD_TSC)组成,运行 着网络操作系统,能够对OpenFlow交换机进行管理和控制;其主要功能包括,接收来自流 媒体业务管理单元(TSD_SMU)的透明服务策略消息、获取网络信息、生成合适的转发策 略和将转发策略发送给OpenFlow网络转发单元(TSD_OF_NFU)。

1)接收透明服务策略信息。透明服务控制器与流媒体业务管理服务器在指定端口建立 网络通信连接,流媒体业务管理服务器按照特定的格式发送透明服务策略消息。当透明服务 控制器确认有透明服务策略消息传来时,就会触发转发策略生成模块,生成合适的转发策略。

2)生成转发策略。转发策略生成模块会从透明服务策略消息里,按照事先规定的格式 提取出进行服务节点或者客户端切换的流媒体服务的相关信息,包括流媒体服务的新服务节 点的地址及端口信息、原始客户端的地址及端口信息、原始服务节点的地址及端口信息、新 客户端的地址及端口信息;根据透明服务控制器所掌握的网络信息,确定合适的转发策略; 其中,转发策略里包含了用于网络层状态同步的策略和用于数据流转发的策略。

3)将转发策略发送给OpenFlow网络转发单元。透明服务控制器根据网络拓扑结构和各 链路状况信息,选择合适的OpenFlow交换机,将转发策略按照OpenFlow协议要求,以 controller-to-switch消息的形式,通过OpenFlow安全通道下发给所选择的交换机;其中,转 发策略具体是指由透明服务控制器下发给OpenFlow交换机的流表规则,包括用于网络层状 态同步的流表规则和用于数据转发的流表规则。具体地,当需要为某个OpenFlow交换机添 加一条用于修改流媒体服务流的数据包字段的流表时,透明服务控制器就会将相关信息添加 在OFPT_FLOW_MOD消息里,通过安全通道下发给交换机,其中command字段设置为 OFPFC_ADD,match字段为所添加流表的匹配字段,在instructions字段里将操作类型 ofp_action_type子字段设置为OFPAT_SET_FIELD,以及对操作实体ofp_action_set_field子 字段按照需要进行合理设置;当需要为某个OpenFlow交换机添加一条用于流媒体服务流转 发的流表时,控制器就会将相关信息添加在OFPT_FLOW_MOD消息里,通过安全通道下发 给交换机,其中command字段设置为OFPFC_ADD,在instructions字段里将操作类型 ofp_action_type子字段设置为OFPAT_OUTPUT,以及在操作实体ofp_action_output子字段里 将port设置为正确的交换机端口;当需要为某个OpenFlow交换机删除一条流表时,控制器 会将相关信息添加在OFPT_FLOW_MOD消息里,通过安全通道下发给交换机,其中 command变量设置为OFPFC_DELETE,match变量为需要删除的流表匹配字段。

OpenFlow网络转发单元(TSD_OF_NFU)主要由一台或者多台OpenFlow交换机 (TSD_OFS)组成,主要功能包括,与透明服务控制器按照标准OpenFlow协议进行通信、 辅助流媒体云服务系统完成流媒体服务的网络层状态同步、传递流媒体云端与用户端之间的 服务流。

1)与透明服务控制器进行OpenFlow通信。OpenFlow交换机是运行OpenFlow交换机 协议的网络转发设备,需要与透明服务控制器通过标准OpenFlow协议进行通信,用于接收 透明服务控制器所下发的设置流表、查询数据流信息等指令。另外,对于进入交换机但没有 匹配流表而无法确定怎样操作的数据包,OpenFlow交换机会将其封装在OFPT_PACKET_IN 消息里,而发送给透明服务控制器,由控制器对数据包进行合理处理。

2)辅助完成网络层状态同步。当流媒体云服务系统因为节点失效、负载分布不均衡或 者移动自动切换等问题而需要对一些流媒体服务进行服务节点的切换时,在流媒体业务管理 单元的辅助下,原服务节点和新服务节点只是完成了流媒体服务的应用层状态的同步,因此 需要OpenFlow转发网络在透明服务控制器的管理下完成流媒体服务的网络层状态同步,以 保证流媒体服务流能够成功到达当前客户端而且顺利播放;当流媒体云服务系统因为用户终 端切换而需要对流媒体服务进行客户端的切换时,流媒体服务不需要进行应用层状态同步, 但仍然需要通过OpenFlow交换机和透明服务控制器,完成网络层状态的同步,以保证流媒 体服务流能够成功到达新客户端而且顺利播放。具体地,完成网络层状态同步需要透明服务 控制单元下发给OpenFlow交换机用于网络层状态同步的流表规则,由相关OpenFlow交换 机按照流表规则对流媒体服务流的数据包进行处理。

3)传递流媒体云端与客户端之间的服务流。OpenFlow交换机根据由透明服务控制器所 下发的用于数据流转发的流表规则,将流媒体云端发送给用户端的服务流的数据包从正确的 端口转发出去,以保证服务流由流媒体云端以最优的路径成功发送给用户端。

下面以一个流媒体服务进行服务节点与客户端双切换的实例详细说明透明服务控制单 元(TSD_TSCU)下发给OpenFlow网络转发单元(TSD_OF_NFU)中OpenFlow交换机的 流表项以及操作的格式。

如图5所示,流媒体云服务系统包括流媒体云端SMC、流媒体云透明服务装置TSD和 用户端USER,其中SMC包括原始服务节点SMC_OSN和新服务节点SMC_NSN,TSD包 括一台流媒体业务管理服务器TSD_SM、一台透明服务控制器TSD_TSC和一台OpenFlow 交换机TSD_OFS,USER包括原始客户端USER_OUC和新客户端USER_NUC;图中节点 之间的直连接线表示两个节点之间存在数据流的传递,箭头方向表示数据流的传递方向,其 中虚线表示SMC_OSN和USER_OUC之间的原始服务流,实线表示SMC_NSN和 USER_NUC之间的新服务流。假设SMC_OSN的IP地址为192.168.105.11,MAC地址为 00-00-00-00-00-01,端口号为12;SMC_NSN的IP地址为192.168.105.12,MAC地址为 00-00-00-00-00-02,端口号为34;USER_OUC的IP地址为192.168.105.13,MAC地址为 00-00-00-00-00-03,端口号为56;USER_NUC的IP地址为192.168.105.14,MAC地址为 00-00-00-00-00-04,端口号为78。TSD_OFS通过其端口1与SMC_OSN相连接,通过其端 口2与SMC_NSN相连接,通过其端口3与USER_OUC相连接,通过其端口4与USER_NUC 相连接。如图5中直连接虚线所示,最开始SMC_OSN和USER_OUC建立流媒体会话,服 务流由SMC_OSN经过TSD_OFS转发到USER_OUC;如图5中直连接实线所示,在流媒体 服务过程中,服务节点由SMC_OSN切换至SMC_NSN,客户端由USER_OUC切换至 USER_NUC。那么,为了保证用户能够享受到连续的服务,针对SMC_NSN发送给用户端的 服务流,由TSD_TSC向TSD_OFS所下发的流表项以及对应操作如图6所示,其中包含了 用于网络层状态同步的流表规则和用于数据流转发的流表规则。

尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在 不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型, 本发明的范围由所附权利要求及其等同限定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号