IPTV相关原理

官方视频
https://www.bilibili.com/video/BV1yN411y7yg/?spm_id_from=333.788&vd_source=d137a8f68ec67946b0fef9810258f095

IPTV

IPTV 即交互式网络电视

是一种利用宽带有线电视网,集互联网、多媒体、通讯等多种技术于一体,向家庭用户提供包括数字电视在内的多种交互式服务的技术。

用户可通过计算机、IP 机顶盒+普通电视、移动终端三种方式体验 IPTV 服务。

IPTV 业务类型

  1. 电视类业务:广播电视、点播电视、个人视频录制等;
  2. 通信类业务:主要基于 IP 的语音业务、即时通信服务、电视短信等;
  3. 增值类业务:指电视购物、互动广告、在线游戏、股票行情等。

系统结构

业务层相关网元设备的主要功能

系统结构|450

CDN Node(Content Delivery Network Node)
推送媒体流给 STB

STB(Set Top Box)
机顶盒,用户它体验 IPTV 服务

EPG(Electronic Program Guide)
推送节目菜单

MiddleWare
包括 EAS、SCP、CDN Manager、DB。

EAS(Edge Access Service)负责与 STB 交互。

SCP(Service Control Point) 帮助运营商掌握网络中各种业务对带宽的占用情况,业务配置、鉴权。

CDN Manager(内容分发网络管理系统)负责调配 CDN Node,进行内容的高效分发和网络资源的有效管理。

DB 负责存储用户认证授权信息,包括用户信息、内容信息、业务逻辑等。

业务流程

业务流程|450

自下而上的过程。

首先是机顶盒通过 BRAS(终端用户的网关,用户端要通过它去访问其他设备)申请获取 IP 地址。
然后在业务机房进行认证授权,注册用户名,有了这些信息后才能活得 ip 地址。
通过 MW 进行认证,鉴权,通过后给对应用户授权,调动源节目资源。
推送 EPG、CDN Node 的地址和用户产品包等。

当这些认证通过后,用户端就可以获取节目菜单,并正常观看节目了。

组播原理

组播原理|250

单播是点对点,广播是点到全部点。
组播介于单播和广播之间,属于点对多点通信方式。当主机向一组主机发送信息存在于某个组的所有主机都可以接收到信息。

组播 IP 地址

组播IP|520

实验中主要用 224.0.0.1 ,即给所有主机和路由器发送组播数据流

OSPF 在组播中的作用

路由器是网络中的一种设备,它能够根据数据包的目的地地址,选择最佳的路径将其转发到下一个网络节点,直到数据包到达最终目的地。

OSPF(开放最短路径优先)是一种内部网关协议(IGP),用于在单一自治系统内部进行路由信息的分发。OSPF通过使用Dijkstra算法计算最短路径树,来选择数据包从源头到目的地的最佳路径。它是一种动态的、基于链路状态的路由协议,可以快速适应网络拓扑的变化。

在组播环境中,OSPF可以通过其扩展功能来支持IP多播数据包的路由。这意味着OSPF能够识别多播流量,并为其选择高效的路由路径。

组播协议的三层架构

组播协议架构|520

R1 可以做成组播汇聚点(RP),所有的源数据通过 RP 汇聚,再向下转发,RP 也相当于组播源

MS(组播源)一般以单播形式发送数据流,然后到达下一层–组播网络。

这一层是由路由器或者具有路由功能的三层设备组成的组播路由,运行组播路由协议(如 PIM 协议无关)

到 R 4、R5、R6 这一部分,属于组成员管理的接入部分。
与主机相连的边缘路由器,运行的是 IGMP(内部网关管理协议),这个协议可以控制哪些用户加入该组播组里。

组播协议组成

组播协议组成|520

实验主要用到 IGMP(v3),PIM-SM(用户数小用稀疏协议,主机发送请求才发)

PIM-SM 转发

PIM-SM|520

在 DR 与主机相连的一侧,用 IGMP 管理。

主机要加入这个组,首先要发送加入请求,DR 向上游报告请求,到达 RP。
RP 通过请求后,组播数据流就可以从上往下转发,通过 DR 到达主机。

IGMP

与组播源相连的路由器叫第一跳路由器。下一跳路由器(组播路由)与主机 (PC) 相连。

IGMP 组播组管理协议,IGMP 协议运行于主机和与主机直接相连的组播路由器之间。

主机通过 IGMP 协议告诉本地路由器希望加入并接受某个特定组播组的信息。

路由器通过 IGMP 协议周期性地查询局域网内某个已知组的成员是否处于活动状态(即该网段是否仍有属于某个组播组的成员),实现所连网络组成员关系的收集与维护。

路由器会发出一个查询数据包,当有主机要接受组播数据流的时候,那么终端会向路由器回复一个波,表示它还在这个组播组里并要接收组播数据流。

如果一段时间后,组播路由器没有接收到回复,那么上游发来的数据流就不会向下转发。

IGMP Snooping

对于未使能 igmp-snooping 时,由于不知道哪些端口下存在接收者,因此交换机向 VLAN 内的所有端口(除入端口外)转发该播数据报文,此 VLAN 内的组播组成员和非组播组成员都能收到组播数据报文。

IGMP-Snooping 是实现组播转发树上最后一跳路由器到接收者之间二层网络上的组播数据按需分发的协议,如下图:

IGMP-Snooping|520

IGMP snooping 的实现机理

交换机通过侦听主机向路由器的 IGMP 成员报告消息的方式,形成组成员和交换机接口的对应关系;交换机根据该对应关系将收到组播数据包只转给具有组成员的接口。

IGMP proxy与 IGMP Snooping 实现功能相同但机理相异

IGMP snooping 只是通过侦听 IGMP 的消息来获取有关信息,而 GMP proxy则拦截了终端用户的 igmp 请求并进行相关处理后,再将它转发给上层路由器。
所以在 GMP snooping里面形成的 table 是组成员和交换机接口的对应关系,在 IGMP Proxy 里面形成的是组播路由表。


IPTV相关原理
https://yohakuo.github.io/2024/04/15/IPTV相关原理/
作者
liuliu
发布于
2024年4月16日
许可协议