Figure 1. Server clusters appear as one server to network users. Click here to see an enlarged diagram.
Enterprise networks are usually large computer networks that connect many divisions of a large company. The term may also be applied to hardware and software configurations that are tailored for large applications spread over many sites. As production professionals, we might not consider that our applications fall into the enterprise category unless we work for a large media company. But we can apply many of the techniques used to support enterprise applications on our networks. Even for those who do not work at a large company, it may be useful to have an overview of some of the techniques used to support large operations.
When one is not enough
As operations become larger, additional traffic strains server capabilities. More people want to connect to the server, and applications running on the server become more complex. For example, companies may begin to deploy advanced database applications that perform processing on the server, taxing network resources. The simple solution is to buy a bigger server. These larger servers typically have multiple processors, large amounts of memory and storage, and multiple network connections. But what happens when even the largest servers start to become heavily loaded? One solution is to deploy multiple servers in a cluster. Figure 1 shows a typical server cluster — several smaller servers working together as one. Special software enables the cluster to divide the workload among different pieces of hardware. To the user, the multiple servers appear as one unit. Benefits of a server cluster include reduced cost, redundancy and scalability. Typically, a server cluster costs less than a single-server equivalent. Additionally, many implementations provide increased reliability through redundancy. Should one server fail, the others in the cluster automatically pick up the load. Finally, it is possible to build large clusters employing tens or hundreds of individual servers. It may be technically impossible to create the equivalent in a single monolithic server. For our industry, the benefits of lower cost, redundancy and scalability directly apply. Clusters are inherently more complex than a single server. But, beyond a certain size, clustering makes good sense in the production environment.
Figure 2. A single Web server may run out of resources when demand is high. Production applications can use a proxy server to share the load between multiple Web servers. Click here to see an enlarged diagram.
Another way that enterprise networks grow is to use dedicated servers to provide specific services. When a network engineer first designs a small facility, she may choose to deploy a single larger server to handle e-mail, file sharing, Web services and FTP. While some may disagree with this as a starting point, it's important to recognize that the network engineer frequently does not have all the money she would like at startup. Combining services on a single server is a way to save money while still providing required functionality. As the organization grows, it is common to begin to provide dedicated servers for each service. For example, e-mail may be moved to its own server. A dedicated e-mail server allows the network engineer to add centralized virus and spam scanning software — both of which are processor-intensive applications — without affecting other services on the network. Similarly, file sharing may start out on a centralized server, but later it may move to servers that are dedicated to sharing on a departmental or regional basis. Enterprise-level Web servers at organizations such as FOX, CNN, Warner Bros. and others almost universally deploy multiple servers.
Distributing the load with proxy servers
One area where broadcasters are definitely in the enterprise realm is Web sites. CNN.com is typically one of the most viewed sites on the Web. According to www.alexa.com, CNN.com was ranked number 40 over the last week, out of approximately 44,000 Web sites on the Internet. In November of 2000 (the most recent time for which I was able to verify the statistics), CNN's Web sites supported more than 100 million page views. Any way you slice it, that's a lot of traffic. On the local level, broadcasters may find their Web servers taxed beyond their limits. For instance, a local television station in the Southeast may find that its Web traffic increases several orders of magnitude during and after a hurricane. Enterprise solutions to this problem usually involve proprietary, internally developed software and hardware. But a practical solution exists for smaller facilities.
When someone types in a uniform resource locator (URL) such as www.broadcastengineering.com, he initiate a process called domain-name resolution. The early architects of the Internet knew that humans would be much happier typing in a domain name than a hard-to-remember set of numbers, such as 184.108.40.206. The domain-name resolution process starts by asking a local domain-name server (DNS) if it knows the IP address for www.broadcastengineering.com. If the local DNS does not know, it passes the question to a higher-level server. The answer to the question ultimately comes from the DNS that is responsible for the broadcastengineering.com domain, controlled by an administrator at Primedia, the publisher for Broadcast Engineering magazine. Once the Web browser knows the IP address, it initiates a conversation with that IP address on port 80, a well-known port for Web servers. Typically, a Web server with that IP address is listening on port 80 and replies, beginning the HyperText Transfer Protocol (HTTP) session. If many people try to initiate a session with the same server, the server quickly runs out of resources and the Web site becomes unavailable. One way to handle this is to set up a proxy server to listen on port 80 (see Figure 2). This software then distributes HTTP session requests to several identical internal Web servers, based upon various algorithms. Typical algorithms include random and round-robin. The random algorithm assigns incoming HTTP sessions to servers at random. The round-robin algorithm assigns sessions in order based upon a list of available servers.
Mesh vs. switch
Another area where production professionals can employ enterprise solutions is in the proper selection of network topologies. One such topology is the mesh. Figure 3 shows a mesh network with connections to multiple switches. Not only does a mesh provide higher bandwidth than a simple switched topology; it allows the creation of a self-healing network. If one switch in the mesh fails, traffic is re-routed automatically across the mesh. Furthermore, a mesh automatically looks for the fastest path between any two points. Mesh networks are powerful tools for creating high-bandwidth, fault-tolerant networks. But network engineers should be aware of design limitations when creating large networks. All implementations of mesh networks limit the maximum number of switches that can be contained in a mesh, as well as the maximum number of hops between mesh ingress and egress points. These limits are only a problem for the largest mesh networks. Network engineers also should be aware that there are interoperability issues between different manufacturers' implementations of mesh networks.
External storage is one last area where enterprise technology can benefit production professionals. It is common for enterprise-server solutions to employ large external disk- and tape-storage systems. Of course, IT-based production has required this sort of storage for quite some time, so this will not be anything new. But storage costs continue to fall, and it is becoming more feasible for production professionals to store all of their content online. Companies such as EMC and Hitachi have made a business out of fine-tuning hardware and microcode in disk subsystems to deliver large amounts of data simultaneously to large server systems. Traditional broadcast and post-production hardware vendors have embraced these solutions. As users, we should educate ourselves about what is available from these enterprise storage vendors.
Figure 3. Mesh networks provide high bandwidth, automatic fault recovery and fastest path routing for demanding production applications such as rendering. Click here to see an enlarged diagram.
Do you need an enterprise solution?
This is the ultimate question: Do you need an enterprise solution? Typically, an enterprise solution means paying a lot more for the technology. In some cases, the marketing surpasses the reality, and what a proposes as an enterprise solution is really just a way to move you up to a more expensive system. But, in many cases, production professionals require the bandwidth, speed, reliability and fault tolerance of enterprise technology. As a technologist, the decision may fall to you. Start by evaluating whether the increased cost of a particular technology is worth the benefit. Understanding enterprise solutions can help you make the call.
Brad Gilmer is executive director of the AAF Association, executive director of the Video Services forum, editor in chief of the “File Interchange Handbook,” and president of Gilmer & Associates..
Send questions and comments to:email@example.com