如何利用多播为VoIP、UC和视频系统助力
如何利用多播为VoIP、UC和视频系统助力
多播技术在VoIP、统一通信(UC)和视频系统中发挥着重要作用。它通过优化网络带宽使用率,支持更多并发用户,为大规模通信提供了更高效、更经济的解决方案。本文将深入探讨多播技术的工作原理及其在实际场景中的应用。
什么是多播(Multicast)?
在基于IP的基础设施中,多播是指网络将信息或数据从单一源同时传送到多个(但不是全部)目的地的底层功能。
它与单播形成对比,单播是指网络将数据从一个源发送到单个目的地,而广播是指将数据发送到所有可能的接收者,无论他们是否请求。下图进一步说明了这三种通信形式。
多播的目的是确保发送方只发送单个数据流,并且只有请求数据的接收方才能接收数据,从而更有效地在网络上分发数据。为了更好地理解多播的用处,让我们进行以下思考实验。
假设您的网络包含200台主机,网络上的一台服务器想要向其中80台主机发送数据流。单播和广播由于不同的原因和在网络的不同部分都会效率低下:
单播:服务器必须创建80个单独的数据流,每个接收者一个。服务器必须处理80个单独的同时通信流,包括每个通信流的开销(例如寻址、会话维护和协调)。同样,网络将承受80个相同、重复的信息流的负担,占用服务器和中间网络设备上宝贵的带宽、CPU和内存资源。
广播:在此,服务器向网络上的所有主机发送单个数据流。但是,这意味着所有200台主机都会收到信息。如果需要,它们会处理它;如果不需要,它们会丢弃它。这意味着没有请求此信息的120台主机仍必须主动检查、处理和丢弃到达的数据包。
更糟糕的是,随着主机数量和交付网络服务的规模增加,效率也会降低。最有效的解决方案是创建一个框架,其中单个数据流仅从源发送到请求数据的主机。这就是多播的作用。
多播如何工作?
多播功能内置于IPv4和IPv6协议本身。使用IPv4和IPv6地址的保留范围,网络可以将特定的多播地址分配给特定服务或多播源。
此地址代表一个多播组。主机可以加入多个多播组,并成为每个组的多播数据的目的地之一。同样,主机可以离开某个组而不需要接收其数据。
通过主动加入和/或离开多播组,主机可以选择接收或不接收来自特定源的特定多播数据。网络设备(例如路由器和交换机)将适当的多播流量路由到已加入相应多播组的主机。
类似地,网络还确保未加入多播组的主机不会接收该组的数据。
用于多播的保留网络地址范围是:
- IPv4:224.0.0.0/4
- IPv6:FF00::/8
多播协议
网络上的组播正常运行需要使用多种协议。其中一些协议包括:
互联网组管理协议(IGMP):此协议用于IPv4网络中,允许主机加入和离开特定的多播组。
多播侦听器发现(MLD):这是IPv6中与IGMP对应的协议。它用于在IPv6环境中发现特定多播组的多播侦听器。
协议独立多播(PIM):此多播路由框架用于IPv4和IPv6中路由多播流量。参与路由多播流量的路由器必须使用PIM相互“对话”,以确保特定组的多播流量路由到请求该流量的主机所在的网络区域。
VoIP、UC和视频通信中的多播
您可能已经猜到了,网络的多播功能对于我们从一个源向多个接收者进行通信的情况非常有用。在VoIP、UC和视频通信中,您通常会在需要同时向多个接收者传送相同内容的场景中使用多播,例如:
大型会议或研讨会:当一个或几个源需要向许多参与者发送音频或视频流时,多播允许这些流作为单个流通过网络发送,并由多个(但不是全部)收件人接收。
网络研讨会和在线培训:多播非常适合需要同时向许多观众分发内容(音频、视频和演示文稿)的网络研讨会和在线培训课程。由于所有参与者的内容相同,多播可以高效地分发数据,而不会给网络造成过重负担。
公司公告:对于公司公告或更新的现场直播,不同地点的员工都是接收者,多播提供了一种有效的方式来接触所有员工,而无需为每个地点提供单独的流。
寻呼:一些VoIP和UC系统包含寻呼功能,允许整个设施或组织听到公告。此类公告非常适合利用多播功能,因为同一条消息会发送到多个终端设备。
Music on hold(MoH):MoH是VoIP系统、呼叫中心和交互式语音应答(IVR)系统中经常使用的一项服务。由于通常有多个呼叫者处于等候状态或处于排队状态,因此为所有呼叫者提供单个多播音频流比为每个呼叫者发送单独的流更有效。
紧急通知:在需要快速、同时向许多接收者传达信息的情况下,多播技术对于分发紧急通知非常有效。这包括校园警报和公共安全公告。
如何利用多播
作为实施者,了解底层网络的多播功能以及您的UC或VoIP解决方案如何利用这些功能非常重要。在几乎所有情况下,如果底层网络上未配置多播,通信系统通常会恢复为单播功能。
如上所述,这可能会导致网络效率低下;在极少数情况下,如果某些服务需要多播模式,则可能会发生故障。
通常,VoIP和UC系统确实有一些参数可以配置为在多播可用时利用多播,您应该在每个系统提供的一些配置界面中看到这些参数。
这些通常是复选框,您可以启用它们以允许使用多播来提供某些服务。除此之外,为业务通信应用程序配置多播参数并不涉及太多内容。
多播的魔力和管理其实现的复杂性取决于底层网络的正确配置和参数化。
如果配置正确,多播功能主要在后台进行,因为服务器、网络设备和终端设备只需利用IGMP、MLD和PIM即可使其工作。
多播在哪里实现?
在带宽节约至关重要且基础设施支持多播路由和管理的网络中,多播尤其有利。然而,其实施需要仔细规划并考虑网络功能,因为并非所有网络设备都支持多播或配置为有效处理多播。
此外,多播在受控网络环境(如公司、企业或封闭的大学或教育网络)中更有优势。它通常在公共互联网上不可用,尽管一些ISP可能会在其网络中实现它。
造成这种情况的原因有很多,但超出了本文的讨论范围。从本质上讲,这意味着使用公共互联网连接终端设备(例如移动或分布式员工)的UC和VoIP系统不会从多播中受益匪浅。
总之,多播通过实现在多个接收者之间高效、可扩展地分发实时媒体流,为增强UC和VoIP系统带来了巨大的希望。