CN101999225A - 用于将来自故障服务器的客户端负载在存储区域网络(san)中的剩余服务器之间分配的系统和方法 - Google Patents
用于将来自故障服务器的客户端负载在存储区域网络(san)中的剩余服务器之间分配的系统和方法 Download PDFInfo
- Publication number
- CN101999225A CN101999225A CN2009801128546A CN200980112854A CN101999225A CN 101999225 A CN101999225 A CN 101999225A CN 2009801128546 A CN2009801128546 A CN 2009801128546A CN 200980112854 A CN200980112854 A CN 200980112854A CN 101999225 A CN101999225 A CN 101999225A
- Authority
- CN
- China
- Prior art keywords
- server
- client
- load
- data
- video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种系统分发数据并包括多个数据存储设备。诸如视频服务器之类的多个服务器连接到该多个数据存储设备,并访问数据存储设备以应客户端请求向多个客户端提供流式数据。在其中一个服务器发生故障之后,使用向服务器组分配双客户端网络连接的分布算法,均等地分配剩余服务器上的负载,以便任何一个服务器上的故障会将任何剩余服务器上的客户端负载增大不超过ceil(C/P)负载,其中,C是访问系统中的多个服务器的所配置的客户端的总数,而P是服务器对的总数。
Description
本发明涉及存储区域网络(SAN)领域,更具体而言,本发明涉及用于在电视广播行业中所使用的存储区域网络中将来自发生故障的服务器的客户端负载在剩余的服务器之间分配的系统。
存储区域网络(SAN)将诸如磁盘阵列、磁带库或一个或多个光存储驱动器之类的远程计算机存储设备或驱动器附加到服务器,以便存储设备表现为以客户端-服务器关系本地连接。许多存储区域网络使用SCSI协议来在服务器和磁盘驱动器之间进行通信,而使用低级别的协议和映射层,例如,以太网连接上的光纤通道(FC)。
例如,在电视广播行业中,视频服务器或其他数据服务器常常通过光纤通道交换机连接到光纤通道存储设备。这样的视频系统的一个示例是由美国佛罗里达州墨尔本市的Harris Corporation作为网络视频服务器、交换机和存储设备的NexioTM线来制造的。光纤通道可以在带有可以是光学或非光学的物理连接的双绞线铜线和光缆上运行。光纤通道协议(FCP)通常是光纤通道上的SCSI的接口协议。不同的光纤通道拓扑可以包括其中存储设备背靠背连接的点对点拓扑,其中设备形成环路或环的仲裁环路拓扑,以及其中设备或环路设备连接到光纤通道交换机的交换结构拓扑,类似于以太网实现,交换机管理该结构的状态以提供优化的连接。通常,光纤通道交换机可以作为引向器形成,引向器在模块化基于槽的底盘或较小的固定配置中提供高端口数。
在电视广播行业使用视频服务器的存储区域网络需要实时数据传送,通常在内容服务器系统中支持有保证的传送和SAN一致性。对于流媒体服务器,高数据速率是典型的,例如,对于视频帧1/60秒的服务质量。小的中断会产生编辑和服务器功能问题。
由于支持多个广播质量视频流所需的高数据速率,视频及其他服务器系统传统上带有物理上位于计算机服务器框架中的压缩器、解压缩器和信号输入/输出设备,以利用高速低延迟数据传输总线。此服务器框架通常使用直接附接的、基于块的存储器,以获取所需数据率和SAN,以便与其他服务器框架共享该存储器。电视广播行业中为实现这种直接附接的存储器的冗余和可靠性所使用的一种技术是对于服务器上的冗余光纤通道宿主端口(它们连接到驱动器上的冗余光纤通道目标端口)使用现成的光纤通道技术。随着驱动器吞吐量和光纤通道物理层吞吐量上升,可以支持较大的服务器群体。然而,最终,服务器群体会上升到这样的点:由于由驱动器允许的光纤通道登录数量的限制,无法再进行进一步的直接附加连接,尽管驱动器能够传送比物理地位于直接附接服务器中的内容流支持组件的最大群体可以使用的数据更多的数据。
由于此限制,数据流的数量的任何增大需要使用标准客户端-服务器体系结构来将直接附接存储器的服务器与数据流支持组件分开。由于电视广播环境内的内容或数据流的任务关键特性,应该维护集成的解决方案的完全双路径冗余。因此,一些系统通过到数据或视频服务器的双以太网连接,维护它们的冗余连接,同时跨以太网连接地进行负载平衡。其他服务器系统放弃负载平衡并配置额外的服务器,而其它系统使用从客户端到服务器的冗余以太网连接,并对从客户端到服务器的以太网连接进行负载平衡,使得冗余数据服务器由于负载平衡而一直处于使用中。这些系统提供足够的结果,但是,需要对存储区域网络的效率的更大的增强,以实现负载平衡的流数据和冗余。
系统根据本发明的非限制性示例提供数据,并包括可以是诸如光存储设备之类的数据存储驱动器的多个数据存储设备。诸如视频服务器之类的多个服务器连接到该多个数据存储设备,并访问数据存储设备,以应客户端请求向多个客户端提供流数据。在其中一个服务器发生故障之后,使用分布算法在剩余服务器之间均等地分配剩余服务器上的负载,该分布算法向服务器组分配双客户端网络连接以便任何一个服务器上的故障会将任何剩余服务器上的客户端负载增大不超过ceil(C/P)负载,其中,C是访问系统中的多个服务器的配置的客户端的总数,P是服务器对的总数。
在每服务器的客户端负载的相应的非降级的和降级的网络状态下,系统在一个非限制性示例中在任何一个服务器上具有作为ceil(C/N)或ceil(C/(N-1))中的一个的最大数量的客户端负载,其中,N包括服务器的总数。在又一方面,存在为取得硬件路径冗余而缩放的每一客户端和服务器之间的“n”个网络接口。每一客户端和服务器之间的网络接口可以使用双客户端网络连接,作为物理端口连接,例如,相应的客户端和服务器之间的以太网端口。
在又一方面,数据包括电视广播行业中所使用的视频数据。多个存储数据驱动器和服务器构成存储区域网络(SAN)。一个或多个服务器框架可以支持多个服务器。光纤通道交换机可以互连诸如光存储驱动器之类的多个服务器和驱动器。
以下阐述方法方面和存储区域网络。
当根据各个附图考虑时,从随后的对本发明的详细描述,本发明的其他目标、特点和优点将变得显而易见,其中:
图1是示出了根据非限制性示例可以被修改供使用的不同的视频服务器和相关组件的存储区域网络(SAN)的图。
图2是示出了存储区域网络中的每个客户端组有一个数据服务器的图形。
图3是类似于图2的另一图形,并示出了存储区域网络中的备用服务器备选。
图4是类似于图2的另一图形,并示出了存储区域网络中的带有从客户端到服务器的冗余连接的备用备选。
图5是根据本发明的非限制性示例的存储区域网络中的客户端和服务器的数据连接的图。
图6是示出了根据本发明的非限制性示例的存储区域网络中的客户端和服务器的外部网络结构的另一图。
下面将参考各个附图比较全面地描述不同的实施例,在附图中,示出了优选实施例。可以阐述许多不同的形式,所描述的实施例不应该解释为仅限于此处所阐述的实施例。相反,提供这些实施例是为了使本公开完整和彻底,并向那些精通本领域的技术人员全面地表达本发明的范围。相似的附图标记遍及附图表示的相似的元件。
图1是示出了基本组件可以被修改以支持多个广播质量视频流的图形,根据本发明的非限制性示例,这些视频流可以包括距离配对分布算法,以便在多个客户端和服务器之间分配负载。远程位置包括计算机10,例如PC,其具有通过通信网络14到存储区域网络16的连接。通信网络14可以是局域网(LAN)或广域网(WAN)。在相应的服务器平台21上各自都包括各种代理20,这些代理20通过防火墙22连接到远程位置计算机10。代理20也连接到计算机服务器,例如,视频或其他数据服务器24,比如佛罗里达州墨尔本市的Harris Corporation制造的视频服务器的NexioTM线。视频服务器通过光纤通道交换机26和光纤通道线28和端口连接而连接到各种存储设备,例如光纤通道存储设备30,在此非限制性示例中是光存储设备。以太网交换机可以作为SAN和编辑工作站的一部分被包括进来。图1所示出的存储区域网络16涵盖电视广播行业中所使用的完全视频存储区域网络。
可以在存储区域网络中使用远程服务器诊断,比如由佛罗里达州墨尔本市的Harris Corporation制造的NexioTM Pilot系统,以允许广播公司从远程位置10跨局域网或广域网14监视存储区域网络的状况和操作参数,如图1所示。与服务器平台21上的代理21一起工作,这种系统可使用户能够关注系统诊断,并进行关键的设置调整。可以配置和激活警告-阈值级别,以在设备问题变成播出中的故障之前将它们诊断出来。标准的简单网络管理协议(SNMP)可以充当便于交换管理信息的应用层协议。诸如由软件程序监视的不同的系统设置参数和存储器错误,例如,也可以监视的廉价磁盘冗余阵列(RAID)、光纤通道问题,电源供应状态及系统的其他方面。
可以使用不同的视频服务器作为完整的系统来分发高清晰度(HD)和标准清晰度(SD)内容。音频、视频和元数据可以利用全软件编解码器来访问,以便编码和解码带有不同的压缩格式的媒体。这允许广播者通过视频服务器和光存储设备立刻访问他们的媒体资产,所述媒体资产规模可以达到上千小时的同时可访问内容。该系统可以承受多个驱动器故障并可以支持AES、MPEG层2和压缩的多通道音频,并提供陆地、卫星、电缆和IP分布。高清晰度和标准清晰度数据可以在一个存储区域网络中混合。
可以使用不同的视频服务器节点,例如,NX3600HDX或HDI、HD/SD和NX4000TXS SD传输服务器作为非限制性示例,它们由佛罗里达州墨尔本市的Harris Corporation制造。光纤通道结构交换机26可以为SAN 16(甚至每个SAN带有许多设备)提供故障转移功能。可以使用不同类型的带有热插拔存储和每个底盘不同的基带信道的集成的存储器,例如,USB及其他千兆字节以太网传导性,包括,FireWireTM传导性。
共享存储器可以包括用于高清晰度输出(解码)的同时信道和用于编码的不同信道输入的多个千兆字节驱动器。用户界面应用和服务器功能在非限制性示例中提供对于采集和播出的编解码器控制和从磁带中采集。还可以使用连接到采集设备和企业级存储区域网络(XSAN)的通用因特网文件系统(CIFS)和不同的离线和在线工作站。
例如,可以在野外经由卫星或者从基于文件的分发系统获取录像,并将其存储在存储区域网络中,在存储区域网络中,对于协作和共享媒体环境,可以由新闻编辑部主任、制作者、记者、编辑人员和技术人员同时访问。如此,许多不同的人可以共享项目,并直接对现有和传入的文件进行处理,并且避免在各系统之间使用文件传输协议(FTP)的文件交换和不同的要求。可以同时编辑存储在存储区域网络上的录像。稍后,阐述了视频传输服务器的非限制性规范作为这样的视频服务器的许多可能的规范的一个示例。如那些本领域技术人员所了解的,可以使用许多不同类型的视频服务器及其他数据服务器。
图2是示出了若干个数据服务器50(例如,如上文所提及的视频服务器)的图形,(被示为数据服务器0到数据服务器N),其中,与客户端组0到客户端组N相对应的客户端52使用到数据服务器的双以太网连接维护冗余连接,并跨被示为带有到客户端52的子网1和子网2的两个以太网连接进行负载平衡。术语“数据服务器”一般用来描述用于流式传送数据(例如,视频或其他数据)的服务器。图2示出了数据服务器0和数据服务器N,每一个都通过第一和第二子网连接到相应的客户端组0成员和客户端组N成员。此配置具有多个优点,包括从客户端52到服务器50的冗余以太网连接,从客户端52到服务器50的负载平衡的以太网连接,以及低服务器群体。图2所示出的这样的体系结构的其中一个缺点是非冗余数据服务器。对于图2所示出的体系结构,数据服务器50的故障将导致所有附接的客户端52的故障,因为两条以太网链路将同时发生故障。
这可以通过放弃负载平衡和配置诸如图3所示出的一个额外的服务器来进行避免,即数据服务器N+1,使得此服务器变成系统中的每个客户端的备份连接。图3示出了另外的数据服务器N+1。在图3所示出的此配置中不使用负载平衡,因为所有客户端组的负载将淹没冗余服务器N+1。在此配置中,主服务器(服务器1到N)处理100%的客户端负载,而备份服务器N+1不处理负载,除非1到N组中的主服务器发生故障。此配置具有多个优点,包括从客户端52到服务器50的冗余以太网连接,冗余数据服务器(N+1)和任何所需的服务器群体中的无足轻重的增大。图3所示出的配置可具有一些缺点,主要在于没有从客户端52到服务器50的负载平衡的以太网连接。例如,冗余服务器N+1会悄悄地发生故障,并需要调度的人工测试来验证其性能。
图3所示出的体系结构的可能缺点可以通过将每一客户端组连接到两个服务器来加以避免,每一个服务器都能够支持如图4所示的所有客户端的满负载,数据服务器0和1连接到客户端组0,而数据服务器2N-1和2N连接到客户端组N。当该系统在非降级状态下运转时,每一服务器都只被加载到其潜在负载的50%。图3所示出的该客户端-服务器体系结构的优点是从客户端到服务器的冗余以太网连接,从客户端到服务器的负载平衡的以太网连接,以及由于负载平衡而持续使用的冗余数据服务器,其不可能悄悄地发生故障而没有通知。一个可能的缺点是服务器群体必须翻倍,这会增大整个存储区域网络的成本和复杂度。
下面是对根据本发明的非限制性示例的分布算法的描述。该分布算法在实时数据传输环境中提供网络服务冗余,自动建立冗余服务连接,无空闲服务器用于冗余,以及在故障事件期间在剩余服务器上的附加负载最小。
在整个本描述中,使用不同的术语作为一般术语。例如,术语“数据服务器”可以与在至少一个物理以太网接口上提供流数据服务的计算机服务器,例如,如前面所指出的,从服务器流式传送视频数据,也被称为“视频服务器”的相对应。术语“客户端”可以与计算机相对应,该计算机经由诸如网络接口卡之类的物理接口使用通用以太网协议附接到至少一个而优选地一个以上的数据服务器以发送或接收流数据。例如,客户端可以是接收视频数据来进行编辑的新闻编辑器。术语“客户端负载”可以对应于作为.5*(到该服务器的活动以太网连接的数量)的来自特定客户端的每一服务器上的负载。NIC(网络接口卡)可以与用于通过网络发送和接收数据的一个物理端口(例如,以太网端口)相对应。在整个本说明书中,服务器和数据服务器可以可互换地使用。网络接口卡(NIC)也可以被称为网卡、网络适配器或LAN适配器,例如,允许计算机通过计算机网络进行通信的硬件。此设备通常是OSI层1、物理层设备和层2设备,并提供低级别的寻址。它通常被用作以太网网卡,并包括唯一48比特序列号作为媒体访问控制(MAC)地址,通常存储在卡上携带的ROM中。该设备可以用于不同类型的通信,包括轮询、程序输入以及输出、中断驱动的输入和输出,以及DMA。
根据非限制性示例,客户端被分组,以便任何一个服务器的故障平均地增大其他服务器上的负载并且增大最小的量,如此,消除了图2-4所示出的通用体系结构的缺点。使用该分布算法来将两个客户端网络连接分配到多种服务器组,以便任何一个服务器的故障会将任何剩余服务器上的客户端负载增大不超过ceil(C/P)负载,其中,C是系统中的配置的客户端的总数,P是服务器对的总数。服务器可以包含一个或多个物理网络接口。在一个非限制性示例中,如下面所说明的,使用距离配对分布算法。
该分布算法使用距离配对分布公式,并具有若干个限定公式。
输入:a)N=数据服务器的数量;以及b)c=特定客户端编号,从0开始。
输出:s0,s1=分配给客户端c的数据服务器,从0开始。
算法:
a)P=N*(N-1)作为服务器对的数量;
b)k=c mod P作为要使用的服务器对,从0开始,服务器对按距离顺序枚举;
c)d=INT(k/N)+1作为该对服务器之间的距离;
d)s0=k mod N作为分配给该客户端的第一服务器;以及
e)s1=(s0+d)mod N作为分配给该客户端的第二服务器。
图5示出了在非限制性方面使用距离配对分配公式来进行的客户端和服务器分配的示例。例如,a)数据服务器的数量=4;以及b)数据服务器对的数量(P)=12;以及c)配置的客户端的数量=24。在数据连接表示中示出了这种情况,其中,在100,102,104和106示出四个服务器,并且示出了它们的到带有编号的各个客户端110的连接,以及作为第一服务器S0和第二服务器S1的已分配的服务器。表1是作为非限制性的示例的表格表示。
表1
客户端编号 | k(对) | d(距离) | s0(第一服务器) | s1(第二服务器) |
0 | 0 | 1 | 0 | 1 |
1 | 1 | 1 | 1 | 2 |
2 | 2 | 1 | 2 | 3 |
3 | 3 | 1 | 3 | 0 |
4 | 4 | 2 | 0 | 2 |
5 | 5 | 2 | 1 | 3 |
6 | 6 | 2 | 2 | 0 |
7 | 7 | 2 | 3 | 1 |
8 | 8 | 3 | 0 | 3 |
9 | 9 | 3 | 1 | 0 |
10 | 10 | 3 | 2 | 1 |
11 | 11 | 3 | 3 | 2 |
12 | 0 | 1 | 0 | 1 |
13 | 1 | 1 | 1 | 2 |
14 | 2 | 1 | 2 | 3 |
15 | 3 | 1 | 3 | 0 |
16 | 4 | 2 | 0 | 2 |
17 | 5 | 2 | 1 | 3 |
18 | 6 | 2 | 2 | 0 |
19 | 7 | 2 | 3 | 1 |
20 | 8 | 3 | 0 | 3 |
21 | 9 | 3 | 1 | 0 |
22 | 10 | 3 | 2 | 1 |
23 | 11 | 3 | 3 | 2 |
系统用距离配对分布算法计算每个数据服务器的客户端负载的最大数量。例如,假定C是客户端的总数,N是数据服务器的总数,那么,下面的公式计算在两种操作模式下任何一个服务器上的最大客户端负载。在非降级状态下,每服务器的客户端负载<=ceil(C/N)。在降级状态下,每服务器的客户端负载<=ceil(C/(N-1))。一个示例涉及使用距离配对分布公式时每个数据服务器在非降级操作中的客户端负载。在表1中的示例中,存在多个客户端向每个服务器呈现负载。列出的所有客户端向每一服务器呈现0.5负载:
服务器0-客户端0,3,4,6,8,9,12,15,16,18,20,21;
总的客户端负载=6
服务器1-客户端0,1,5,7,9,10,12,13,17,19,21,22;
总的客户端负载=6
服务器2-客户端1,2,4,6,10,11,13,14,16,18,22,23;
总的客户端负载=6
服务器3-客户端2,3,5,7,8,11,14,15,17,19,20,23;
总的客户端负载=6
在降级操作中每个数据服务器的客户端负载也可以使用距离配对分布公。在表1中的示例中,客户端给每一服务器带来负载,其中,服务器0发生故障。列出的所有客户端向每一服务器带来0.5负载。丢失与服务器0的连接的客户端现在两次出现在其他服务器列表中。
服务器0-发生故障
服务器1-客户端0,0,1,5,7,9,9,10,12,12,13,17,19,21,21,22;
总的客户端负载=8
服务器2-客户端1,2,4,4,6,6,10,11,13,14,16,16,18,18,22,23;
总的客户端负载=8
服务器3-客户端2,3,3,5,7,8,8,11,14,15,15,17,19,20,20,23;
总的客户端负载=8
图5示出了在上面的示例中定义的系统中的可能的客户端服务器连接,而图6是类似的示例,同时还示出了NIC的两个网络基础结构120,122。
通常需要若干个NIC来实现距离配对分布公式。NIC的最小数量是每一客户端上一个,并且每一数据服务器上一个。每一设备上的NIC的数量可以根据需要被自由地缩放,而不考虑任何其他设备上的NIC的数量。这使得系统是灵活的,以在每一位置实现所需的硬件路径冗余,或增大数据吞吐量。在图4和5所示出的示例中,暗示两个NIC,但不是必需的。如果在任何或所有位置使用一个NIC,那么支持s0和s1两个连接都到该设备上的单一NIC的外部网络基础结构应该能够路由数据。
可以设计在服务器上包含多于两个网络接口的系统。图6可视地描述了在客户端和服务器上包含两个NIC的系统的数据连接。在这种特殊情况下,通过依据服务器出现在表1中的什么位置而实现客户端和服务器之间的数据连接,来平衡所有NIC上的负载。如果服务器出现在特定客户端的s0栏中,那么,第一网络基础结构120的NIC 0用于客户端和服务器两者上的连接。如果服务器出现在特定客户端的s1栏中,那么,第二网络基础结构122的NIC 1用于客户端和服务器两者上的连接。
如果在服务器上使用多于两个NIC,则该分布算法在服务器NIC之间分配客户端数据连接。在非限制性示例中可以遵循下列步骤。
1.根据诸如表1的示例所示出的距离配对分布算法,将所有客户端分配到服务器。
2.对于每个服务器[i],创建两组客户端:
server0[i]={client[k]where client[k].s0=i}and
server1[i]={client[k]where client[k].s1=i}。
3.按照s1键对server0[i]列表进行排序,按照s0键对server1[i]列
表进行排序,并按客户端编号进行次级排序。
4.级串联Server0[i]列表和Server1[i]列表。
5.循环地将网络0的NIC分配到server0[i],并且将网络1的NIC分配到server1[i]。下面的示例中每个数据服务器6个NIC。
下面将说明进一步的细节。
步骤1:参考表1。
步骤2与3:参见下面的列表。主要排序键在括号中。
Server0[0]:
0(1),12(1),4(2),16(2),8(3),20(3)
Serverl[0]:
9(1),21(1),6(2),18(2),3(3),15(3)
Server0[1]:
9(0),21(0),1(2),13(2),5(3),17(3)
Server1[1]:
0(0),12(0),10(2),22(2),7(3),19(3)
Server0[2]:
6(0),18(0),10(1),22(1),2(3),14(3)
Server1[2]:
4(0),16(0),1(1),13(1),11(3),23(3)
Server0[3]:
3(0),15(0),7(1),19(1),11(2),23(2)
Server1[3]:
8(0),20(0),5(1),17(1),2(2),14(2)
步骤4:级联server0[i]列表和server1[i]列表。
Server0
0(1),12(1),4(2),16(2),8(3),20(3),9(0),21(0),1(2),13(2),5(3),17(3),6(0),18(0),10(1),22(1),2(3),14(3),3(0),15(0),7(1),19(1),11(2),23(2)
Server 1
9(1),21(1),6(2),18(2),3(3),15(3),0(0),12(0),10(2),22(2),7(3),19(3),4(0),16(0),1(1),13(1),11(3),23(3),8(0),20(0),5(1),17(1),2(2),14(2)
步骤5:将3个NIC循环分配到s0连接,并且将3NIC循环分配到s1连接:
s0 Nic0:0,16,9,13,6,22,3,19
s0 Nic1:12,8,21,5,18,2,15,11
s0 Nic2:4,20,1,17,10,14,7,23
s1 Nic3:9,18,0,22,4,13,8,17
s1 Nic4:21,3,12,7,16,11,20,2
s1 Nic5:6,15,10,19,1,23,5,14
为清楚起见,排序:
s0 Nic0:0,3,6,9,13,16,19,22
s0 Nic1:2,5,8,11,12,15,18,21
s0 Nic2:1,4,7,10,14,17,20,23
s1 Nic3:0,4,8,9,13,17,18,22
s1 Nic4:2,3,7,11,12,16,20,21
s1 Nic5:1,5,6,10,14,15,19,23
表2是示出了对于NIC使用距离配对分布算法的服务器/NIC连接的示例。S0与第一服务器相对应,S1与第二服务器相对应。第一服务器的NIC与S0 NIC相对应,并且第二服务器的NIC与S1 NIC相对应。表3示出了在非降级模式下每一服务器上的每个NIC的客户端连接,与列为服务器0-3的四个服务器相对应,以服务器0作为第一服务器。
表2
使用以与NIC分布算法进行距离配对的服务器/NIC连接
6 | 2 | 0 | 0 | 5 |
7 | 3 | 1 | 2 | 4 |
8 | 0 | 3 | 1 | 3 |
9 | 1 | 0 | 0 | 3 |
10 | 2 | 1 | 2 | 5 |
11 | 3 | 2 | 1 | 4 |
12 | 0 | 1 | 1 | 4 |
13 | 1 | 2 | 0 | 3 |
14 | 2 | 3 | 2 | 5 |
15 | 3 | 0 | 1 | 5 |
16 | 0 | 2 | 0 | 4 |
17 | 1 | 3 | 2 | 3 |
18 | 2 | 0 | 1 | 3 |
19 | 3 | 1 | 0 | 5 |
20 | 0 | 3 | 2 | 4 |
21 | 1 | 0 | 1 | 4 |
22 | 2 | 1 | 0 | 3 |
23 | 3 | 2 | 2 | 5 |
表3
每一服务器上每个NIC的客户端连接的表(非降级模式)
NIC | 服务器0 | 服务器1 | 服务器2 | 服务器3 |
0 | 2 | 2 | 2 | 2 |
1 | 2 | 2 | 2 | 2 |
2 | 2 | 2 | 2 | 2 |
3 | 2 | 2 | 2 | 2 |
4 | 2 | 2 | 2 | 2 |
5 | 2 | 2 | 2 | 2 |
当使用NIC分布算法时,有故障转移边界。
1.clients_per_NIC<=ceil(clients_per_server/number_of_NICs)
2.failed_over_clients_per_NIC<=ceil(failed_over_clients_per_server/number_of_NICs)
如上文所描述的系统和方法以服务器硬件的最小添加实现冗余负载平衡的流数据,并在剩余服务器之间通常在某种程度上平均地分配来自发生故障的服务器的客户端负载。它使用如上文所描述的距离配对分布算法来进行负载平衡以及使用所有配置的服务器的冗余,通常消除热备用服务器发生未通知的故障或降级的可能性,同时还消除对服务器进行有计划的测试的要求。可以通过向数据服务器添加网络接口来增大吞吐量,并跨网络接口均匀地分配客户端负载,并保证当另一数据服务器发生故障时最大附加负载可以被施加于任何剩余数据服务器。
根据非限制性示例可以使用的诸如NexioTM服务器之类的流式传输服务器的不同规范包括下面的规范,只用于说明目的:
系统配置
主框架
2Dual Core AMDTM Opteron 64-bit处理器
PCI-X平台
4GB系统内存
Dual Mirrored SATA引导驱动
Dual Channel 4 Gbps光纤通道主机总线适配器
2x 10/100/1000BaseT以太网适配器
PS/2键盘和鼠标
3x USB 2.0端口-1个端口安装在正面
1x IEEE 1394(FireWire)端口-安装在正面
Windows XP Professional
NXOS-NEXIO操作系统
视频
信道
525/625:2双向2仅播放模式或者2输入4输出离散模式
HD:1双向1仅播放模式或者1输入2输出离散模式
525/625:SDI串行数字接口(SMPTE-259M)
HD:HD-SDI接口(SMPTE-292M)
格式525@29.97fps,625@25fps,1080i@29.97fps和25fps,720p@59.94fps和50fps
输入 525/625:2x Program-SDI BNC(SMPTE-259M)
HD:1x Program-HD-SDI(SMPTE-292M)
1x Genlock基准-三级和两级同步支持
输出 525/625:4x SDI BNC(SMPTE-259M)
HD:2xHD-SDI BNC(SMPTE-292M)
纵横比 525/625:16∶9和4∶3
HD:16∶9
音频
信道&
格式 每个输入信道两个AES/EBU对
每个输出信道两个AES/EBU对
每个输入信道嵌入8个信道
每个输出信道嵌入8个信道
输入 每个信道2个Pair BNC,未均衡(AES/EBU)
BNC(嵌入式)
输出 每个信道2个Pair BNC,未均衡(AES/EBU)
BNC(嵌入式)
处理
&存储 16,20,或24-bit PCM,48kHz
压缩音频 Dolby Digital(AC-3)和Dolby E pass-through
视频压缩
编码 525/625:MPEG2I-frame,4:2:2 profile-12~50Mbps,
MPEG2 Long
GOP,4:2:0 profile-4~15Mbps,4:2:2 profile-10~
50Mbps,DVCPRO25,DVCPRO50和DVCAM
1080i/720p-MPEG 2I-frame,4:2:2 profile-50,80,
100,120和150,MPEG2 Long GOP,4:2:2 profile-
50Mbps,MPEG2 Long GOP,4:2:0 profile-50Mbps
解码 525/625-MPEG2 I-frame up to 50Mbps,MPEG2Long GOP,4:2:2 profile-10~50Mbps,4:2:0 profile-4~15Mbps,DVCPRO25,DVCPRO50,DVCAM,IMX 30,40 & 50Mbps1080i/720p-MPEG 2 Long GOP up to 80 Mbps和MPEG 2 I-frame at4:2:2 profile up to 150Mbps
视频存储器
存储器选项 在5x 146GB或5x 300GB驱动器中选择
RAID冗余
控制器 软件RAID
RAID保护
方案 单驱动奇偶校验(RAID-3单故障保护)
时间码连接选项
输入/输出 RS-232
TCP-IP
Harris时钟接口
远程GPI控制
输入 16个输入
输出 8个输出
远程串行接口
输入/输出 4x RS-422个端口
DB-9连接器
控制
输入/输出 TCP/IP socket or UDP over Ethernet
RS-422
GPI
协议 Harris Native Protocol
VDCP
Sony 9 Pin
物理特征
尺寸 高5.25″(13.4cm)(3RU)
宽19″(48.3cm)
深27.75″(70.7cm)
重量 65lbs(29.5kg)
电源供应冗余双负载-共享
AC 115~120/200~240V,自动选择
60/50Hz
650W
Claims (10)
1.一种用于分发数据的系统,包括:
存储数据的多个数据存储设备;以及
连接到所述多个数据存储设备的多个服务器,所述多个服务器访问所述数据存储设备以应来自于多个客户端的请求向所述多个客户端提供流式数据,其中,在其中一个所述服务器发生故障之后,使用向服务器组分配双客户端网络连接的分布算法均等地分布剩余服务器上的负载,以便任何一个服务器上的故障将使任何剩余服务器上的客户端负载增大不超过ceil(C/P)负载,其中,C是访问系统中的该多个服务器的所配置的客户端的总数,而P是服务器对的总数。
2.根据权利要求1所述的系统,其中,任何一个服务器上的客户端负载的最大数量包括:对于每服务器的客户端负载,在相应的非降级的和降级的网络状态下为ceil(C/N)或ceil(C/(N-1))中的一个,其中,N包括服务器的总数。
3.根据权利要求1所述的系统,还包括每个客户端和服务器之间的“n”个网络接口,其被缩放以用于硬件路径冗余。
4.根据权利要求1所述的系统,还包括每个客户端和使用双客户端网络连接的服务器之间的网络接口。
5.一种用于在电视广播系统中向客户端提供流式视频数据的存储区域网络,包括:
存储视频数据并使用光纤通道连接互连的多个光存储驱动器;
连接到所述光存储驱动器的至少一个光纤通道交换机;以及
多个视频服务器,每个视频服务器具有连接到客户端的至少一个网络接口卡(NIC),其中,所述多个视频服务器连接到所述至少一个光纤交换机,以便访问所述光存储驱动器,以应客户端的请求通过NIC向所述客户端提供流式视频数据,其中,在其中一个所述视频服务器发生故障之后,使用根据距离配对分布算法向视频服务器分配客户端的分布算法均等地分布剩余视频服务器上的负载,在所述距离配对分布算法中,对于每个视频服务器,两个网络客户端被组成组,以便任何一个视频服务器上故障将使任何剩余视频服务器上的客户端负载增大不超过ceil(C/P)负载,其中,C是访问系统中的多个视频服务器的所配置的客户端的总数,而P是视频服务器对的总数,并且NIC被在网络中循环地分配。
6.根据权利要求5所述的存储区域网络,其中,任何一个视频服务器上的客户端负载的最大数量包括:对于每服务器的客户端负载,在相应的非降级的和降级的网络状态下为ceil(C/N)或ceil(C/(N-1))中的一个,其中,N包括视频服务器的总数。
7.根据权利要求5所述的存储区域网络,还包括每个客户端和服务器之间的“n”个网络接口,其被缩放以用于硬件路径冗余。
8.一种用于分发数据的方法,包括:
将数据存储在多个数据存储设备内;
使用连接到所述数据存储设备的多个服务器来访问所述数据,以应客户端请求向所述客户端提供流式数据;以及
在一个服务器发生故障之后,通过向服务器组分配双客户端网络连接,均等地分布剩余服务器上的负载,使得任何一个服务器上的故障将使任何剩余服务器上的客户端负载增大不超过ceil(C/P)负载,其中,C是访问系统中的多个服务器的所配置的客户端的总数,而P是服务器对的总数。
9.根据权利要求8所述的方法,还包括在每服务器的客户端负载的相应的非降级的和降级的网络状态下按照ceil(C/N)或ceil(C/(N-1))中的一个在任何一个服务器上的最大数量的客户端负载之间分布负载,其中,N包括服务器的总数。
10.根据权利要求8所述的方法,还包括使用每个客户端和服务器之间的“n”个网络接口进行缩放以用于硬件路径冗余。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/047,381 | 2008-03-13 | ||
US12/047,381 US8103775B2 (en) | 2008-03-13 | 2008-03-13 | System and method for distributing a client load from a failed server among remaining servers in a storage area network (SAN) |
PCT/US2009/035668 WO2009114310A1 (en) | 2008-03-13 | 2009-03-02 | System and method for distributing a client load from a failed server among remaining servers in a storage area network (san) |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101999225A true CN101999225A (zh) | 2011-03-30 |
CN101999225B CN101999225B (zh) | 2014-08-27 |
Family
ID=40795039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980112854.6A Active CN101999225B (zh) | 2008-03-13 | 2009-03-02 | 用于将来自故障服务器的客户端负载在存储区域网络(san)中的剩余服务器之间分配的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8103775B2 (zh) |
EP (1) | EP2258089B1 (zh) |
CN (1) | CN101999225B (zh) |
CA (1) | CA2717585C (zh) |
WO (1) | WO2009114310A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106527968A (zh) * | 2016-09-21 | 2017-03-22 | 苏州市广播电视总台 | 一种基于文件直通技术的文件传输方法 |
CN114328421A (zh) * | 2022-03-17 | 2022-04-12 | 联想凌拓科技有限公司 | 元数据服务架构管理方法、计算机系统、电子设备及介质 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI472188B (zh) * | 2010-05-07 | 2015-02-01 | Inventec Corp | 儲存區域網路的檢驗裝置 |
RU2595493C2 (ru) | 2011-01-10 | 2016-08-27 | Стороун Лтд. | Крупномасштабная система хранения данных |
KR101284467B1 (ko) * | 2011-09-06 | 2013-07-09 | 주식회사 리드웹 | 네트워크 서비스의 제공을 위한 단말장치의 그룹핑 방법 |
WO2014002094A2 (en) | 2012-06-25 | 2014-01-03 | Storone Ltd. | System and method for datacenters disaster recovery |
US9612851B2 (en) | 2013-03-21 | 2017-04-04 | Storone Ltd. | Deploying data-path-related plug-ins |
CN106254550A (zh) * | 2016-09-30 | 2016-12-21 | 杭州索浪信息技术有限公司 | 一种内容分发的方法和系统 |
DE102021102490A1 (de) | 2021-02-03 | 2022-08-04 | Sadik Dogan | Gesichtsmaske mit Indikator für Krankheitserreger |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7026556B1 (en) * | 2000-09-15 | 2006-04-11 | Premark Feg L.L.C. | Method and system for controlling messages printed by an in store label printer and related label structure |
US20060089935A1 (en) * | 2004-10-26 | 2006-04-27 | Microsoft Corporation | Failover and load balancing for server clusters |
CN1815979A (zh) * | 2005-01-31 | 2006-08-09 | 国际商业机器公司 | 用于提供网络连接的设备和方法 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5600573A (en) | 1992-12-09 | 1997-02-04 | Discovery Communications, Inc. | Operations center with video storage for a television program packaging and delivery system |
US5862312A (en) * | 1995-10-24 | 1999-01-19 | Seachange Technology, Inc. | Loosely coupled mass storage computer cluster |
US5867657A (en) | 1996-06-06 | 1999-02-02 | Microsoft Corporation | Distributed scheduling in a multiple data server system |
US5928327A (en) | 1996-08-08 | 1999-07-27 | Wang; Pong-Sheng | System and process for delivering digital data on demand |
US5983281A (en) * | 1997-04-24 | 1999-11-09 | International Business Machines Corporation | Load balancing in a multiple network environment |
US6070191A (en) | 1997-10-17 | 2000-05-30 | Lucent Technologies Inc. | Data distribution techniques for load-balanced fault-tolerant web access |
US6154765A (en) * | 1998-03-18 | 2000-11-28 | Pasocs Llc | Distributed digital rule processor for single system image on a clustered network and method |
US6427002B2 (en) * | 1998-05-07 | 2002-07-30 | Worldcom, Inc. | Advanced interactive voice response service node |
US7778260B2 (en) * | 1998-10-09 | 2010-08-17 | Netmotion Wireless, Inc. | Method and apparatus for providing mobile and other intermittent connectivity in a computing environment |
US7092621B1 (en) | 1998-11-10 | 2006-08-15 | Sony Corporation | Data recorder-reproducer and bit map data processing method, control program processing method and setting data processing method of data recorder-reproducer |
US7062556B1 (en) * | 1999-11-22 | 2006-06-13 | Motorola, Inc. | Load balancing method in a communication network |
US6816194B2 (en) | 2000-07-11 | 2004-11-09 | Microsoft Corporation | Systems and methods with error resilience in enhancement layer bitstream of scalable video coding |
US20020038339A1 (en) * | 2000-09-08 | 2002-03-28 | Wei Xu | Systems and methods for packet distribution |
US20030028587A1 (en) * | 2001-05-11 | 2003-02-06 | Driscoll Michael C. | System and method for accessing and storing data in a common network architecture |
US7447197B2 (en) * | 2001-10-18 | 2008-11-04 | Qlogic, Corporation | System and method of providing network node services |
US20040015408A1 (en) * | 2002-07-18 | 2004-01-22 | Rauen Philip Joseph | Corporate content management and delivery system |
US20040210724A1 (en) | 2003-01-21 | 2004-10-21 | Equallogic Inc. | Block data migration |
US7448038B2 (en) * | 2003-04-23 | 2008-11-04 | Micron Technology, Inc. | Method for using filtering to load balance a loop of parallel processing elements |
US7373645B2 (en) * | 2003-04-23 | 2008-05-13 | Micron Technology, Inc. | Method for using extrema to load balance a loop of parallel processing elements |
US20050058063A1 (en) * | 2003-09-15 | 2005-03-17 | Dell Products L.P. | Method and system supporting real-time fail-over of network switches |
CN100501684C (zh) | 2004-03-19 | 2009-06-17 | "英特尔A/O"股份公司 | 故障转移和负载平衡 |
EP1851662A2 (en) * | 2005-02-24 | 2007-11-07 | Xeround Systems Ltd. | Method and apparatus for distributed data management in a switching network |
US7464303B2 (en) * | 2005-06-09 | 2008-12-09 | International Business Machines Corporation | Autonomically adjusting configuration parameters for a server when a different server fails |
US20070050382A1 (en) | 2005-08-26 | 2007-03-01 | Harris Corporation | System, program product, and methods to enhance media content management |
US8250051B2 (en) | 2005-08-26 | 2012-08-21 | Harris Corporation | System, program product, and methods to enhance media content management |
US7693897B2 (en) | 2005-08-26 | 2010-04-06 | Harris Corporation | System, program product, and methods to enhance media content management |
US7813276B2 (en) * | 2006-07-10 | 2010-10-12 | International Business Machines Corporation | Method for distributed hierarchical admission control across a cluster |
US8234384B2 (en) * | 2006-11-13 | 2012-07-31 | Jemmac Software Limited | Computer systems and methods for process control environments |
US20080285436A1 (en) * | 2007-05-15 | 2008-11-20 | Tekelec | Methods, systems, and computer program products for providing site redundancy in a geo-diverse communications network |
-
2008
- 2008-03-13 US US12/047,381 patent/US8103775B2/en active Active
-
2009
- 2009-03-02 CN CN200980112854.6A patent/CN101999225B/zh active Active
- 2009-03-02 WO PCT/US2009/035668 patent/WO2009114310A1/en active Application Filing
- 2009-03-02 EP EP09721121A patent/EP2258089B1/en active Active
- 2009-03-02 CA CA2717585A patent/CA2717585C/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7026556B1 (en) * | 2000-09-15 | 2006-04-11 | Premark Feg L.L.C. | Method and system for controlling messages printed by an in store label printer and related label structure |
US20060089935A1 (en) * | 2004-10-26 | 2006-04-27 | Microsoft Corporation | Failover and load balancing for server clusters |
CN1815979A (zh) * | 2005-01-31 | 2006-08-09 | 国际商业机器公司 | 用于提供网络连接的设备和方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106527968A (zh) * | 2016-09-21 | 2017-03-22 | 苏州市广播电视总台 | 一种基于文件直通技术的文件传输方法 |
CN114328421A (zh) * | 2022-03-17 | 2022-04-12 | 联想凌拓科技有限公司 | 元数据服务架构管理方法、计算机系统、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
US20090234949A1 (en) | 2009-09-17 |
CA2717585A1 (en) | 2009-09-17 |
EP2258089B1 (en) | 2012-10-10 |
EP2258089A1 (en) | 2010-12-08 |
WO2009114310A1 (en) | 2009-09-17 |
CN101999225B (zh) | 2014-08-27 |
CA2717585C (en) | 2013-11-05 |
US8103775B2 (en) | 2012-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101999225B (zh) | 用于将来自故障服务器的客户端负载在存储区域网络(san)中的剩余服务器之间分配的系统和方法 | |
US5633810A (en) | Method and apparatus for distributing network bandwidth on a media server | |
US7590746B2 (en) | Systems and methods of maintaining availability of requested network resources | |
US6889345B2 (en) | System and method for locating a failed storage device in a data storage system | |
US7822862B2 (en) | Method of satisfying a demand on a network for a network resource | |
EP2002640B1 (en) | Transcoding for a distributed file system | |
CN101068155B (zh) | 一种对等连接流媒体直播系统及其采集服务器 | |
US20040010588A1 (en) | Serving out video over a network of video servers | |
US20020161858A1 (en) | Digital audio system for radio stations | |
US20070226224A1 (en) | Data storage system | |
EP1991936A1 (en) | Network topology for a scalable data storage system | |
US8296812B1 (en) | Streaming video using erasure encoding | |
US10255145B2 (en) | Distributed switching system for programmable multimedia controller | |
US20090193489A1 (en) | System for configuring a media processor | |
US20090316706A1 (en) | Structured premise networking system | |
WO2007068957A2 (en) | An electronic home entertainment device | |
US6985671B2 (en) | Reproducing apparatus and superimposing method | |
JP3879949B2 (ja) | 複数チャンネルデジタルデータ送出装置および方法 | |
CN101420600A (zh) | 一种插板式视频监控系统及其监控管理平台 | |
KR20070088887A (ko) | 네트워크 상에서 네트워크 스토리지의 동적 설정 방법 | |
CN101188688A (zh) | 一种基于ip-san存储的视音频编辑方法 | |
Sneddon et al. | Large scale deployment of SMPTE 2110: The IP live production facility | |
JP3865467B2 (ja) | 複数チャンネルデジタルデータ送出装置および方法 | |
CN101188687A (zh) | 一种基于ip-san存储的视音频编辑系统 | |
Virkki | Television Playout Development Towards Flexible IT-based Solutions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: HBC SOLUTION CO., LTD. Free format text: FORMER OWNER: HARRIER INC. Effective date: 20130902 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20130902 Address after: American California Applicant after: HBC Solution Co., Ltd. Address before: American Florida Applicant before: Harrier Inc. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |