We currently use CloudFront Streaming distribution with JW Player 6 and the RTMP protocol. However, some of our corporate users have told us that they can't see the videos and is because they have RTMP's port 1935 blocked.
CloudFront support RTMP streaming over port 1935 and 80. And it also supports RTMPT streaming tunneled over HTTP.
So I could choose to stream RTMP over port 80 or RTMPT that uses HTTP.
Between these two, what option would be best to have better performance (and less problematic and error-prone) while avoid being blocked by firewalls?
Thanks!
I don't see any obvious problems of running RTMP on port 80.
Using RTMPT potentially and in theory will increase the latency, (see this from Adobe: http://blogs.adobe.com/connectsupport/tunneling-with-rtmp-encapsulated-in-http-rtmpt-should-be-avoided-as-it-causes-latency/). Although in my real experience the difference was not that huge.
However, what I would do is always try port 1935 first, and if it failed then try port 80 by using Cluster plugin. But again, there should be no issues in running on port 80.
RTMPT that uses HTTP, that is better overall for firewalls and the performance is fine too.
One problem that we've encountered with RTMPT is that web filtering may drop HTTP packets that it deems suspicious. When an RTMPT packet is dropped, this can result in loss of the whole connection. And if you are streaming content, sooner or later the web filter will find a suspicious packet, just by random chance.
The solution, if possible, would be to get your IT department to white list your server so that web filtering is bypassed. This would eliminate the problem of dropped connections.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With