3.3 HogNet Network

On the back of every Hog 4OS console is a dedicated Base-T Ethernet jack that can be used for connecting to a network of DMX Processors, computers, and other consoles. If there is more than one Ethernet jack on the back of the console, then the jack labeled HogNet should be used. The hardware on personal computers running Hog 4PC will vary but at least one 100 Base-T Ethernet hardware device must be properly installed and enabled in order for Hog 4PC to successfully communicate to other nodes on a network.

All components of a Hog network should be connected using category 5 Ethernet cables and using at least a 100mb Ethernet switch or router. Gigabit switches are also HogNet compatible.

The simplest HogNet network consists of a console and a DMX Processor connected to the lighting rig. Only slightly more complex is the case of a system with a single console and several DMX Processors connected together with an Ethernet switch. Large systems can have several consoles, Hog 4PC systems, and DMX Processors, controlling large lighting rigs.

3.3.1 Configuring Console Network Adapters

At the top of the HogNet tab in the Control Panel, is a drop down menu of all the installed network adapters usable by the Hog OS. The Hog 4 console will only list one network adapter and it will be greyed out while Windows computers running Hog 4PC might have more than one network adapter listed depending on how many network adapters are installed and enabled on the computer.

Figure 3.9. The Network pane of the Control Panel

The network pane of the control panel

After selecting an adapter from the drop down menu, the area below the menu will show the adapter’s current status:

  • A link status of Up indicates the adapter is connected to a network and is ready to be configured to communicate to other network devices.

  • A link status of Disconnected indicates the adapter is running but is unable to communicate to other nodes because the network cable is not connected to a network.

  • A link status of Down indicates the adapter is either disabled or in an unstable state and is not usable for show operation.

[Important]Important

Only network adapters with a link state of UP will be able to communicate with other nodes on the network. If none of the listed adapters are in the UP state then the Hog 4OS will not operate on a network and will instead operate as a standalone console using a loopback address.

Configuring an IP Address for the HogNet Network Adapter

In order for a network adapter to properly communicate on a network it must be configured with an IP address setting that is compatible with other devices on the network. There are three main options when configuring an IP address for a HogNet adapter:

Default IP address: select this option to use an IP address of 172.31.0.1.

Obtain an IP address using DHCP: select this option when running the console on a network that contains a DHCP server such as a DHCP router or a Hog console running a DHCP server.

[Important]Important

If you choose to obtain an IP address using DHCP on the console and no DHCP server is present on the network, then the console will revert to a loopback address of 127.0.0.1 which is not a usable network address for network show operation. In this case you should use a custom IP address.

Custom IP address: This option allows you to specify the IP address and subnet mask settings of the Console. This option is most commonly used on networks where a DHCP server is not present but multiple unique IP addresses need to be specified.

Enabling the DHCP Server

In addition to being DHCP client compatible, all network enabled consoles are also capable of running a DHCP server themselves. Enabling DHCP allows the console to hand out IP addresses to other consoles, DMX Processors, and computers on the network without needing to manually configure static IP addresses for every device on the network.

Choosing BOOT Server ONLY

Included in the DHCP server options of the console is the Boot server. The Boot server process is separate from the DHCP server and is used by Hog consoles to provide remote software imaging for the DMX Processor 8000. You can select options to either run only a Boot server (with or without a custom address range) or to run both a Boot server and a DHCP server. When running both, the custom address range applies to both the DHCP server and the Boot server.

Using a Custom DHCP Server Range

Sometimes in more complex networks where more than one DHCP server is present, specifying a custom DHCP server range is necessary to avoid IP address conflicts. Using a custom DHCP address range applies to both the DHCP server and the Boot server processes. To use a custom DHCP range on your console enable the Use custom address range button and specify the start and end addresses in the fields below the button.

Firewalls and Hog 4PC

Firewalls help to provide increased network security by controlling access to private networks and computers based on the public IP address of the client. Since the Hog 4OS depends on multi-cast network traffic for communication to other system devices it is encouraged that users configure their network and computer firewalls and security settings to allow for HogNet network traffic. For some firewall applications this might mean turning off the firewall completely.

Configuring HogNet Network Settings on a DMX Processor

In the front panel menu system of the DMX Processor 8000 is a network configuration menu used to configure IP address settings for that particular node. This menu can be accessed by first selecting Network, HogNet, HogNet Config.

Configuring the IP addresses and subnet addresses on Hog processors follow the exact same rules and principals as outlined for network adapters consoles in Configuring Console Network Adapters

Typical HogNet Network Configurations

Example A: A single console and single DMX Processor.

A single console and single DMX Processor.

Example B: The console is a DHCP server, and all other nodes obtain an IP address from it.

The console is a DHCP server, and all other nodes obtain an IP adress from
                it.

Example C: A DHCP Router serves all components.

A DHCP Router serves all components.

Example D: All components have a custom unique static IP address.

All components have a custom unique static IP address.

3.3.2 Port Number

Since multiple shows can be run on a single network, each show server running on the network must have its own port number to keep lighting data for each show on the network seperated. Nodes connecting to the show server must then have the same port number as the show server console. For example, a console running a show server on the network on port 6600 means other nodes such as DMX Processors on the network will need a port number of 6600 as well to join that same show.

3.3.3 Node Types and Net Numbers

There are two elements that help to identify a node’s role in a network show: node type and net number. The node type is inherent to device hardware and cannot be changed. For example, a Hog 4 is a “console” node type while a DMX Processor 8000 is a DMX Processor node type. Secondly, there is the device’s net number. The net number is a user-configurable setting that further defines the node’s role in a network show. For example, a DMX Processor 8000 set to net number 1 means the DMX Processor 8000 will load and output patch information stored in the show file for DMX Processor 8000 #1.

[Important]Important

Within a single node type each device must be set to a unique net number. For example you cannot set two physical DMX Processor 8000s to net number 1 in a show. Only one of the DPs will actually load show data while the other DP will sit idle as a duplicate. Consoles are the only exception to the duplicate net number rule. Individual consoles can be set to identical net numbers which allows them to fully track one another in terms of their current page, chosen master, and playback state. This “tracking” feature, when combined with the failover functionality discussed in Configuring the Network for Console Failover provides the user with the ability to configure a tracking backup console on the network.

3.3.4 Connecting Multiple Consoles

Multiple Hog consoles can be connected together in various configurations when running on the same port number. Client/Server configuration allows multiple users to program on the same show file. Console Failover provides network backup of two or more consoles running the same show. Console Tracking creates redundancy of all console functions across multiple consoles. You should link all consoles and network devices to an Ethernet switch using certified Category 5 non-crossover cables.

3.3.5 Configuring the Network for Client/Server

Multiple consoles as Client/Server

Running the Console as a Show Server

When the Run Server option in the Settings window of the start screen is checked, the console is enabled as a show server. A show server console is able to do three main things that it would not otherwise be able to do as a client:

  1. Start New Shows

  2. Launch existing shows from disk

  3. Connect to and sync a local copy of show data from other show server consoles on the network.

Since consoles that are enabled as show servers continuously sync and store local copies of show data during programming, setting up more than one show server in your network allows for continued show operation should one console fail. This is method of redundancy is called “failover”. See Configuring the Network for Console Failover

Running the Console as a Client

When the Run Server option in the Settings window of the Start screen is not checked, the console will operate only as a client to other show server consoles on the network. As a client, the console will not keep a local copy of the network show file and as a result will be forced to log off the connected show session if all show servers running on the network are logged off.

[Tip]Tip

The generic word server is often mentioned when working with a Hog 4OS system. There are three types of servers that are at work in a networked Hog show. The DHCP server manages IP address assignments to other consoles, nodes, and computers on the network through the use of Dynamic Host Control Protocol (DHCP). A Show server refers to the server process running on the console, which manages show data and distribution. The DHCP server and the Show server are independent of one another and do not need to be running on the same console. The Boot server process is used by Hog consoles to provide remote software imaging for the DMX Processor 8000.

3.3.6 Configuring the Network for Console Failover

When two or more show server consoles are connected to a network show, a feature known as failover is automatically enabled, allowing for one of the consoles to “fail” without causing a loss of control over the show data or dmx output. Each show server on the network has the ability to take over control of the show should one of the other show server consoles suffer from power loss, a severed network connection, or localized failure. Users are encouraged to run at least two networked show server consoles in live performance situations in the event that, if one console fails, the show can remain running on the secondary console while the first console is recovered.

Multiple consoles as Console Failover

To enable console failover:

  1. Connect two consoles via an Ethernet switch.

  2. Enable the Run Server option in the Settings window on each console.

  3. Configure the primary console as Net number 1 and the secondary console as Net number 2.

  4. Log on primary console and then connect secondary console.

After configuring the network for failover, each console connected to the show will monitor the status of the primary console (the console that first loaded the show on the network) for any failures or forced log offs.

In the event that the primary console suffers a critical error or is disconnected from the network, all other consoles connected to the show will post the message shown below, notifying the user that a failover has occurred and indicated which of the other server consoles has taken over as the active show server (primary console).

Failover message

If you see this message, first check to see if the original primary console is still physically connected to the network, then power cycle the original primary console and reconnect it to the show.

In the event that the console operator intentionally logged off the primary console, all other consoles connected to the show will post the failover message shown below to indicate that the primary server console has logged off and another server console has assumed the role as the active show server (primary console).

Failover message logged off

Since this message is the direct result of the primary console being willfully logged off from the show there is no need to perform any troubleshooting. Simply reconnect the logged off console to the show and it will once again participate as a show server console on the network.

Understanding Multi-Server Failover Behavior

Below are some specific rules and examples that describe how the Hog 4 OS works when setup in a Multi-Console / Multi-Server environment:

1. The server that initially launches a show is the active server. Other servers that join the show are backup servers. The active server replicates it's copy of the show to all backup servers as they join the show, replacing any existing copy of the show on the backup servers.

2. If all servers stay connected to the network and remain visible to each other, then all servers will have the same copy of the show. New data created on any console will immediately replicate to all servers.

3. If any server logs off, then the remaining servers will continue to store the show and can replicate the show to new consoles that log on. As long as at least one server is always available, then consoles can log off and log on at will.

4. If any server logs off the show and later rejoins, it will always rejoin as a backup server, and the active server will replicate it's current copy of the show to the backup.

5. If all servers log off at the same time then any server can initially launch the show, since all servers will have the same data. However, the last server to shut down will also clean up the database, so it's preferable that this be the initial server when starting up next time. So it's preferable to designate a single console to store the "master" copy of the show, and ensure it's always the first server to start and the last server to shut down.

6. If some servers log off, then new data continues to be replicated to the remaining servers. If all servers then log off, some consoles will have newer data (the consoles that remained logged in), and some will have older data (the consoles that logged off early). Launching a server using an older copy of the show makes that the active server, and any servers that then join will be backup servers and the old data will be replicated to them. That includes servers that may have had a newer copy of the show. So here is one way that new show data may be lost, replaced with old show data from a console that never saw it.

Understanding Multi-Server Partitioning and Rejoining

1. All servers in a networked show constantly check for connectivity to each other. If connectivity is broken for more than a few seconds, the servers consider themselves isolated from the servers they can't reach. This is called a partitioned network. The servers within each partition will continue to replicate changes amongst each other, so newly created data will be replicated amongst all servers in a partition. However, since there are multiple partitions that can't communicate with each other, there are multiple (different) copies of the show.

2. A partition can happen very easily. For example, by disconnecting a server's network cable for a few seconds, then reconnecting it, it will be partitioned from the rest of the servers.

3. Even after a severed network connection is repaired and connectivity is restored to all servers, they will still artificially remain partitioned. There is no way to automatically merge different copies of the show. There simply is no way for the software to know which copy of the show is "correct", since conflicting changes may be made within each partition. Since Hog 4 OS can't automatically resolve the differences, the servers artificially maintain the partition. So each partition's copy of the show is maintained only within that partition, and new data is only replicated within each partition.

4. Although the partitions are artificially maintained, all consoles will continue to have control over all aspects of the show that they have connectivity to.

5. Logging a console off a show and rejoining allows that console to rejoin a partition is was previously excluded from. If multiple partitions exist, there is no guarantee which partition it will join.

6. After shutting everything down, different consoles will have different data, based on the partition they were in. Copies of the show from a partition that didn't see any changes will essentially be "old". Changes made in other partitions will be saved on those consoles, but they may be considered backup/client consoles, and thus they are not expected to store the master copy of the data.

7. Data loss is a real risk if the master server is briefly disconnected from the other consoles then reconnected. In this case it will remain artificially partitioned from the other consoles, even though it will be shown as online in the Network Window. New data created on your consoles will be replicated amongst those consoles (since they have their own partition), but the master server won't see any of it since it stays isolated in its own partition. After logging off all consoles, their partition is gone, and they will each have a current copy of the show with all new changes. The master server will have an old (unmodified) copy of the show. If it's rebooted and it initially launches the show, it will still be using it's old copy. The consoles can now rejoin the master server, but their current copy of the show will be replaced with the old show from the master server.

8. To avoid data loss, it recommend that users log off every console/server that's NOT in the partition that has (or will have) the current copy of the show. So in the above case, the only recourse is to leave the consoles online, logoff the master server, and log on the master server to the show. It will then replicate the current show from the consoles.

3.3.7 Configuring the Network for Console Tracking

Console tracking allows two or more consoles to track each other in terms of the chosen page, the chosen master, and playback state while still maintaining individual desktop/programmer experiences between the desks. A backup secondary networked show server console set to the same net number as the primary console is recommmended when setting up Hog control systems for live shows. This creates system redundancy and protects from total loss of control should the primary console fail.

Multiple consoles as Console Tracking

To enable Console Tracking:

  1. Connect two consoles via an Ethernet switch.

  2. Enable the Run Server option in the Settings window on at least one of the consoles. You can choose to enable the Run Server option on both consoles to also engage failover functionality.

  3. Set both consoles to Net number 1.

  4. Log the primary console to a show and then connect the secondary console to the same show.

The two consoles will now mirror each other in terms of chosen master, current page, and playback state.

3.3.8 More than One Show on the Network

If you want to run more than one show on the same network, you need to choose a port number for each show. The default port number is 6600, so the second show could be on 6601, the third on 6602, and so on. You need to assign the port number of each console system and network device according to the show it is used with.

3.3.9 Connecting to an Existing Network

You can connect the console to an existing ethernet network if desired. Contact the administrator of the network to obtain the correct network settings.

[Important]Important

You should disable the DHCP server of the console before connecting to an existing computer network, otherwise it may interfere with the correct operation of the network.

3.3.10 Network File Sharing

You can connect to drives on a local network or remote computer to transfer show files. Only compressed show file backup (.tar.gz or .shw) files can be transferred with Network File Sharing.

Mapping Network Drives

Network drives are available within the Start window and the Backup window.

To map a network drive:

  1. Connect a remote computer or network to the HogNet network.

  2. Click the Browse button in the Start or Backup window.

  3. Click on the Map Network Drive Map Network Drive button.

  4. Enter data for the following fields in the Connect to Network Disk window:

    • Server name: the host name or IP address of the remote computer

    • Share name: the name of the shared directory on the remote computer

    • Username: the user name to access the shared directory on the remote computer (if required)

    • Password: the password to access the shared directory on the remote computer (if required)

    • Domain: if the user account is a member of a windows domain, enter that domain name here, otherwise leave this field blank.

    Annotated screenshot fragment of a column header

    Note that depending upon your network drive configuration, not all fields may be required.

  5. Check the box if you want the connection to be saved with the console. If this option is not selected, then this mapping will be lost when the console is rebooted or power cycled.

  6. Check the box to save the password if you wish to have the password for the drive mapping saved with the above option.

Accessing Network Drives

Once a network drive is mapped, it will appear in the Start and Backup windows under the console heading as a valid drive to browse to. Sub folders of the primary networked drive will also be available.

Disconnecting Network Drives

When browsing a network drive, the Eject Eject button is available in the top right corner of the browse window. Pressing this button will un-map and disconnect the network drive.