Notable enhancements since Fazzt

Platform Support. Fazzt 9 runs on all current versions of Windows through Windows Server 2012R2. For Windows products, the Fazzt database can be hosted in SQL Server 2008R2, SQL Server 2012, or SQL Server 2014.

The Professional Client is supported on Ubuntu 16.04. In addition to these generally supported Linux distributions, KenCast continues to support many alternative distributions under specific agreements. Please contact KenCast if you have requirements outside of the platforms mentioned here.

New version of Professional Client for Linux without Database. Designed primarily for embedded systems, this version of the Professional Client provides core Fazzt file and stream reception features with minimal footprint and maintenance.

High Performance Fazzt FEC Encoder and Transmitter. The latest Fazzt FEC encoder (for applying Fazzt FEC erasure codes to file transmissions) provides significant performance enhancements over previous versions. With typical settings and hardware, it is now possible to perform dynamic (on-the-fly) Fazzt FEC computation while transmitting at fiber optic speeds (up to 1 Gbps).

A large part of the performance gain comes from the use of asynchronous unbuffered file operations. The use of asynchronous unbuffered I/O for the Fazzt FEC Encoder and File Transmitter objects is optional, based on file size thresholds. This allows the system performance and resource usage to be optimized for handling both very small and very large files at the same time. See the Technical Note KCTN1090 for more details.

Major enhancements to redundancy and failover features of the Enterprise Server.

Nodes have a global state (Online, Monitor Only, Unmonitored, Takeover Pending, Taken over). A node which has been taken over stays in that state until an Administrator explicitly changes the state (e.g. after resolving the issue which caused the takeover).

There is a new extensible framework for Node status tests (defining the conditions which cause automatic takeover).

Locking mechanisms prevent different Entity move operations from conflicting with each other.

The system now supports multiple Virtual IP Addresses.

There is now a mechanism to run scripts on other nodes outside of the Fazzt service. This is primarily intended to be used by internal mechanisms which need to operate when the Fazzt service may be in an inoperable state. Log messages generated by this mechanism go into %FAZZTLOG%\FazztMgr.log.

An external storage location may be used as an Arbiter to resolve “split-brain” scenarios.

Channels using named network interfaces are now moved during node takeover events. Each node of the Enterprise Server should use identical names for network interfaces in order to use this capability. Movable channels are marked with “[Movable]” in the Channel Configuration page.

Additional diagnostic scripts included with the system make it easier to prevent common problems with multi-node installations.

Streaming Enhancements:

The Enterprise Server now supports new protocol options to enable the Live Event Management features in KenCast’s Digital Cinema product line.

Stream Forwarding at the Enterprise Server now includes additional features for MPEG-2 Transport Streams. Specifying the “UsePCR” flag causes Fazzt to derive timing information from the PCR timestamps within the stream rather than the packet capture time at the server. This allows for more accurate timing. The “RemoveNullDVB” option allows Fazzt to discard NULL TS packets inserted by some encoders. Both of these options are enabled if the stream forwarding instance is created via the MPEG-2 Transport Stream Wizard link. Additional diagnostic statistics are included for transport streams, including discontinuity counts and packet counts for each PID.

Stream Recording features now automatically rebuild indexes when appending to a recording which was terminated abnormally.

The socket buffer size for stream captures can now be set in the Transmit Settings/Default Settings page.

The default value has been changed from 256KB to 2MB in order to more reliably support higher bandwidth streams.

The Enterprise Server now records all statistics at the end of a stream forwarding transmission. These log files are generated in the (Log Directory)/Stream/Details directory.

Channel Enhancements. Fazzt 9 includes many enhancements to the channels which transmit packets in order to provide higher throughput and additional features:

Blazeband (Accelerated UDP) Channels now use overlapped I/O and include algorithm improvements, allowing much higher throughput.

The Split Transmit Channel implementation has been improved. The previous version required a large Buffer Size setting in order to achieve high throughput. The new version can handle high bandwidth with the default settings.

There are several enhancements to the bandwidth algorithms used by IP Multicast and Unicast Transmit Channels. Changes to bandwidth are now applied immediately rather than on the next packet. This change primarily affects very low bandwidth settings. The IP Channels can now accurately handle very frequent changes of bandwidth (e.g. 100 times per second). Zero (0) is now a valid bandwidth setting. New bandwidth calculation options support DVB-MPE with packing, and DVB-ULE encapsulation.

SMPTE-325M Channels now use overlapped I/O, allowing much higher throughput.

The UDP over TCP Channel now allows subchannels to use different IP addresses from the parent channel.

Partial Transmission Support for Resends. The web interface for manually scheduling a retransmission of a previous transmission supports new options for sending a partial transmission. These include starting from a given position in the transmission and (for transmissions sent with acknowledgments) the ability to send an empty transmission in order to trigger acknowledgment reports and automatic retransmission. These mechanisms allow for efficient retransmission without transmitting the entire file in various situations, such as, after an accidentally aborted or deleted transmission, or after a transmission has been archived.

Reverse Authorization (“Receive only from”). On the receiving side, Fazzt products may specify a list of Site IDs of Fazzt Servers from which to receive incoming transmissions. Transmissions from other Fazzt Servers will be ignored.

Extended Upgrades. A new type of automatic upgrade has been added to the system: Extended Upgrades. These are used, in particular, for upgrades to KenCast appliances (full image upgrades as well as revisions and patches) .

Database Performance Improvements. The system includes database performance improvements, in particular when handling large numbers of alarms from clients.

Performance Enhancements when processing Acknowledgment Reports. There are significant performance enhancements when processing Acknowledgment Reports, in particular for reports from very large file transmissions.

Improved Transmission Estimates. The mechanism to estimate start time and duration for queued transmissions now make use of channel bandwidth in order to provide estimates at the beginning of operation. Previously, estimates were only available after the queue had completed processing at least one item.

Fazzt Packager Enhancements. The file operations within the Fazzt Packager have been improved to allow faster creation of large non-compressed packages. The Fazzt packager can now include MD5 Hashes of files within the package to allow detection of file corruption.

Scripting Enhancements. In addition to new script functions providing new features, Fazzt 9 includes enhancements to the core scripting engine:

The Scripting Engine now supports aborting of individual scripts and provides call stack information. These features are primarily exposed through the FazztDevWebTools.exe AddOn component.

FazztScript now supports the keyword “null” to denote the constant of type void. In particular, this allows every value in FazztScript to have a representation as a constant expression.

Improved Alarm Management. Alarm messages and severity levels are now set through template files. This allows easier customization of the alarm system, as well as providing the Administrator with an easily accessible list of the potential alarms.

Other Enhancements.

The built-in Transmission Modes now default to Fazzt FEC Version 2 and dynamic Fazzt FEC encoding (Preencoding is skipped).

The default MTU settings for transmit channels have been changed to provide more optimal settings. Channels typically used with DVB transmission, including IP Multicast and Unicast transmit channels and the Split channel, now have a default MTU of 1427. Channels typically used on terrestrial IP networks have MTUs optimized for networks with an Ethernet MTU of 1500. These changes affect new installs only (upgrades preserve existing default values).

Authentication for Fazzt Development Tools Web Interface. The web interface provided by the FazztDevWebTools.exe Add-on component now uses authentication. The Development Tools web interface is part of the vWebToll.s.exe Add-on component now uses authentication. The Development Tools web interface is part of the Administration site for authentication purposes and uses the same mechanisms and user credentials as the Administration site. This change is to more securely support the increased use of this web interface on production systems for troubleshooting and monitoring purposes.

Persistent Retransmission Queues are now created (by default) when a transmit channel is created. That makes it more straightforward to override the default behavior for retransmission queuing and transmission.

The maximum allowed value for the number of threads in a Post Processing Queue has been increased from 16 to 32.

The Java applets with the Admin Web Interface for showing channel and transmission graphs have been replaced by pure JavaScript and DHTML code. This removes the requirement to install Java in order to display this statistical information.

Transmissions can now be aborted on a paused channel.

Carousel Announcements are now sent (when applicable) even when the carousel is not running.

There is a new log in the Other Logs section (Application Service Log), which logs all start and stop events for Application Services.

 The utilities that come with Fazzt for reading the main log (ScriptIDE and the Fazzt Configuration Applet) now close and reopen the log file, rather than keeping the file open. This allows the log to be rotated while these utilities are running.

The Import/Export features within Database Settings now support external databases.

Color Schemes for Admin Web Interface. It is now possible to select different color schemes for the Admin Web Interface. This feature is primarily designed for systems with multiple Fazzt Servers, in order to make it easier to distinguish between them.