Larger SendBufferSize and ReceiveBufferSize will give better throughput on connections where there is a lot of latency (high ping times). The amount of throughput possible in bytes per second must be lower than the buffer size / rtt (round trip time). The size of the buffers determine how much data can be sent before the sending end must stop and wait for a reply from the receiving end. The size used for the connection will be the smaller of the senders send buffer or the receivers receive buffer.
Generally most modern clients will use automatic settings so the send buffer on Wowza may limit the connection speed for high latency connections. Wowza by default uses 65000 for the send buffer because it is a good average value. This will give you the following performance figures:
As you can see, the further away the client player is, the less throughput it will have streaming from your server. Unless your player is a very long way away, the default settings should be fine for the stream and player you have described.
65000bytes / 50ms rtt = 1300000 bytes / sec = 10.4mbps
65000 / 100ms = 5.2mbps
65000 / 200ms = 2.6mbps
You can severely restrict the throughput if you set it too low. The low latency settings are for when the players are very close to the server or the stream bitrates are very low.
The receive buffer sizes on Wowza generally only affect publishing of live streams so these should be set to allow your publishing encoders plenty of bandwidth.
16000bytes / 50ms rtt = 320000 bytes / sec = 2.56mbps
16000 / 100ms = 1.28mbps
16000 / 200ms = 640kbps
If you set the sizes too big then you can run into problems when congestion occurs as it will take longer for the server to detect and make adjustments to overcome it. For this reason, you should not set these values too large.
If you know roughly how far away your players and publishers are then you will be fine using manual settings.
If you have Wowza 3.5.0 or later then you can use automatic settings. When this is enabled, Wowza lets the operating system determine the best settings for each connection and it will adjust them to suit the current network conditions.
To set wowza to use the automatic settings, set the ReceiveBufferSize and SendBufferSize to 0.
If your VHost.xml does not list ReadBufferSize then it is most likely an old version and should be updated to the current version which is available when you update Wowza 3.x.x to the current version.
is an internal Wowza buffer and must not be set to 0
. Leave this at the default value.
For MediaCaster connections, you can make the same adjustments in the NetConnections section in the VHost.xml file.