Skip to content

Latest commit

 

History

History
307 lines (203 loc) · 7.95 KB

global.adoc

File metadata and controls

307 lines (203 loc) · 7.95 KB

OpenOTT 整体架构

1. 变更说明

版本

作者

日期

说明

v0.1

Victor

2017-03-27

init

2. 设计原则

OpenOTT 设计原则是:

  1. 兼容DVB网络——保护现有运营商投资

  2. 发布不依赖特定网络——面向互联网,提供各种网络适应方案

  3. 各个层面的水平扩展——能随着业务发展而扩充

  4. 一定的组件伸缩——能够根据功能要求提供一定裁剪方案

  5. 每个环节可测量——各个环节均能提供统计数据输出

  6. 微服务架构——采用微服务架构构筑各个组件

3. 系统构成

系统构成

title OpenOTT系统构成v0.1a scale 4096*4096

node "OTT 消息中心"{ [消息服务器][MQTT XMPP ] [消息服务器]←→()"消息接口" } node "OTT入口路由应用服务"{ [应用入口] [设备认证] }

'这是注释

node "*OTT 流化应用中心"{ [流化应用管理器]-→[应用流化组件] [应用流化组件]←-[流化输入管理器] [流化输入管理器]←-()"流化输入接口" [应用流化组件]-→()"流化视频流" }

node "数字电视系统" { [DVB直播系统]-→[DVB直播管理器] [DVB直播管理器]-→()"DVB直播信息接口" [DVB直播管理器]-→()"DVB直播视频流"

    [VOD点播系统]<-->[VOD点播适配器]
    [VOD点播适配器]<--()"VOD点播接口"
    [VOD点播适配器]-->()"VOD点播视频流"
    [VOD点播适配器]<--()"VOD点播信息接口"
}

node "BOSS 系统" { [直播频道授权]-→()"直播频道授权接口" [点播内容授权]-→()"点播内容授权接口" [运营消息]-→()"BOSS消息接口" }

node "OTT用户管理" {

[用户注册/登陆管理]<<OAuth>>
[用户授权管理]
database "用户数据库"
[用户消息管理]
()"BOSS消息接口"<..>[用户消息管理]
[用户注册/登陆管理]<-->[用户数据库]
[用户消息管理]<-->[用户数据库]
[用户授权管理]<-->[用户数据库]
[用户授权管理]<..>()"直播频道授权接口"
[用户授权管理]<..>()"点播内容授权接口"
    [用户消息管理]<-->()"用户接口"
    [用户授权管理]<-->()"用户接口"
    [用户注册/登陆管理]<-->()"用户接口"
    [应用入口]<..>()"用户接口"
    [用户消息管理]<..>()"消息接口"
}

node "HLS直播"{ ()"DVB直播视频流"-→ [HLS实时转换器] }

node "HLS点播"{ ()"VOD点播视频流"-→[HLS点播转换器] [HLS点播转换器]-→()"HLS点播信息接口" }

node "OTT设备管理" { ()"BOSS消息接口"<..>[设备消息管理]

[*设备注册/登陆管理]
[设备升级管理器]
[设备消息管理]
[设备应用管理]
database "设备数据库"
[设备注册/登陆管理]<-->[设备数据库]
[设备升级管理器]<-->[设备数据库]
[设备应用管理]<-->[设备数据库]
[设备消息管理]<-->[设备数据库]
[设备注册/登陆管理]-->()"设备接口"
[AAA]-->()"设备接口"
    [设备升级管理器]-->()"设备接口"
    [设备应用管理]-->()"设备接口"
    ()"设备接口"-->[设备消息管理]
    [设备认证]<..>()"设备接口"
     [应用入口]<..>()"设备接口"
    [设备消息管理]<..>()"消息接口"
}

node "OTT应用WEB" {

    ()"DVB直播信息接口"<..[后台资源管理]
    ()"VOD点播信息接口"<..[OTT Web应用服务器]
    ()"VOD点播接口"<..[OTT Web应用服务器]
    ()"HLS点播信息接口"<..[OTT Web应用服务器]
    [后台资源管理]-->[OTT Web应用服务器]
    ()"用户接口"<..>[OTT Web应用服务器]
    ()"设备接口"<..>[OTT Web应用服务器]
    [OTT Web应用服务器]<..>()"消息接口"
}

node "CDN层"{ [视频CDN][SRS] [WEB CDN][NGNIX] [OTT Web应用服务器]<..[WEB CDN] [HLS实时转换器]<..[视频CDN] [HLS点播转换器]<..[视频CDN] [视频CDN]-→()"HLS视频" [WEB CDN]-→()"HTML5网页" node "API代理层"{ [API 代理].0).>[OTT Web应用服务器] } }

node "OTT终端" {

'node {
'   [操作系统]
'    [操作系统]-->[系统服务]
'}
node "系统服务" {
      ()"本机服务接口"
[消息服务]<-->()"本机服务接口"
[本机应用管理服务]<-->()"本机服务接口"
[启动(升级)服务]<-->()"本机服务接口"
[应用入口]<..>[启动(升级)服务]
[本机接口鉴权服务]<..>()"本机服务接口"
   [本机设置服务]<-->()"本机服务接口"
}
node {
node {
    [视频播放器]
    [应用浏览器]
    [应用浏览器]-->()"HLS链接"
    ()"HLS链接"-->[视频播放器]
}
[消息服务应用]
[本机设置应用]
[流化应用]
[视频播放器]-->[应用浏览器]
HLS视频<..[视频播放器]
HTML5网页<..[应用浏览器]
()"流化输入接口"<..[流化应用]
()"流化视频流"-->[流化应用]
()"本机服务接口"<..>[本机设置应用]
()"本机服务接口"<..> [消息服务应用]
()"本机服务接口" <..>[应用浏览器]
()"本机服务接口" <..>[流化应用]
[应用浏览器]-->[用户UI]
[消息服务应用]-->[用户UI]
[本机设置应用]-->[用户UI]
[流化应用]-->[用户UI]
}
[应用浏览器].0).>[API 代理]
()"消息接口"<..>[消息服务]

}

node "DNS"

node "DHCP"

node "CA"

node "NTP"

node "OTT应用本机资源授权服务" { [OTT应用本机资源授权服务]<..>()"设备接口" [OTT应用本机资源授权服务]<..>[本机接口鉴权服务] }

left footer OTT 流化应用中心 为可选项\n流化应用 为可选项

3.1. 系统框图

3.2. 系统说明

3.2.1. 基础系统

本系统采用标准互联网架构,其基础系统为DNS、DHCP、CA、NTP,这里不再赘述。

3.2.2. OTT 终端

OTT 终端作为用户使用部分可以是以下几种形态:

  1. 定制硬件

  2. 手机

  3. 智能电视

  4. 一个独立应用

每个OTT终端,均由操作系统、系统服务与应用两部分组成。 其中系统服务提供本机设置、消息、启动(升级)服务、本机应用管理等服务,其连同操作系统接口一并提供成为OTT终端开发环境。这些组件的升级需要更新整个IMAGE。

应用指的是终端上安装的软件,应用分成:应用浏览器、本机设置、消息显示应用、流化应用、其它本机应用等,其构成用户具体操作的UI。应用升级只需单独升级即可。

通常意义上,OTT终端应用分成以下级别:

  1. 轻型应用 直接在应用浏览器,通过Web访问方式,在统一进程中运行。

  2. 中型应用 通过Web访问方式,在独立的应用浏览器进程中,在独立进程中运行。

  3. 重型应用 独立的本机应用程序,需要下载到OTT终端的存储中运行

3.2.3. OTT 消息中心

OTT 消息中心,采用MQTT协议,负责所有终端及终端应用与OTT前端应用的通讯。

3.2.4. OTT 设备管理器

OTT 设备管理器负责管理网络中OTT设备,并负责升级终端系统,管理每个终端上的本机应用。类似于App Store 的后端。

3.2.5. OTT 用户管理器

OTT 用户管理器主要配合OTT应用WEB与Boss系统,提供用户的管理,包括注册登录注销更新信息等,同时提供用户订阅产品等授权信息查询。

一般来说,每个OTT 终端,在注册后会生成一个默认用户。

3.2.6. OTT应用WEB

是构成OTT运营的核心应用平台。其将使用用户接口、设备接口以及其它管理接口构成的基础前端应用SDK来构建终端应用服务。

3.3. 协议标准列表

3.4. 系统实现