Wowza Community

What ingest method should I use, push or pull?

What ingest method should I use, push or pull?


A source can push encoded video to Wowza Streaming Cloud or Wowza Streaming Cloud can pull encoded video from a source. For the most part, your source encoder or camera will support one or the other, which will determine which source delivery method to use in Wowza Streaming Cloud.

Push connections are managed and controlled by the source. You provide the source with the host server, host port, and other network settings for your Wowza Streaming Cloud transcoder, and when you start the source, it sends the video to Wowza Streaming Cloud for delivery to viewers. Because there are no requests, push connections are better for streaming at scale, have fewer security risks (they support firewalls) and performance issues, and are a generally more universal option. Their drawback is that because push connections are kept open, they may use more bandwidth and be too expensive for lower traffic streams.

With a pull connection, you provide Wowza Streaming Cloud with the URL of the source IP camera or encoder, and then Wowza Streaming Cloud calls to the source for the encoded stream when a viewer fires up a player. It repeats the request to the source for every started player. For large audiences, these repeated requests to the source can overload the server and create a bottleneck between the source and Wowza Streaming Cloud.

And because Wowza Streaming Cloud has to be able to call the source at all times, pull connections aren’t very secure—you can’t use a firewall with them, making pull connections vulnerable to malicious attacks that overwhelm your stream with requests.