Bandwidth Throttling is the ability to restrict maximum allowable bandwidth to certain limit in order to avoid unnecessary consumming your server bandwidths by high speed networks that may attempt DOS attack.

There are lots of other benefits of restricting stream bandwidths to certain including

  • Set different maximum bandwidth restrictions based on normal user and paid user. 
  • Save your bandwidth from unnecessary streams on high networks.
  • Prevent your server from deadlock, memory leak, and other performance impact.

ASP.NET Video Starter Kit 8.0 support advance stream engine that not only prevent you from unauthorized access to videos and streams but also allow you to restrict your bandwidth stream based on free and paid users.

Note: Bandwiddth throtling only can be used on locally saved media files or hosted in other servers. It can't be used with amazon cloud storage, as cloud services provide wide range of their own security procedures for streams.

Enabling Bandwidth Throttling:

It can be enabled by setting this property to true

public static bool EnableBandwidthTrottling { get { return true; } }

Note this works if enable http streaming has been enabled already

public static bool EnableHttpStreaming { get { return false; } }

Once enabled, you can set maximum bandwidth rate using the following two properties.

// for free users
public static int MaxBandwidthSpeed { get { return 1500; } }
// For paid or logged in users.
public static int MaxLogedInBandwidthSpeed { get { return 3000; } }

1500 represent 1500kbps