Justin / Klaus,
Thanks for your time responding.
For a typical video call leg there would be keep-alive sent on 4 channels if bundle and rtp/rtcp mux is not supported by the peer gateway. At a 480ms interval for a 3 minute call this extrapolates to 1500 keep alive packets per call leg. I think each of these packets needs to pass validation/authentication and in our system this is being done by the application layer (rather than at the media transcode/passthrough layer), which adds excessive processing in our architecture, where we could be handling tens of thousand of webrtc call legs plus other types of calls.
As the browser is not following the RFCs in this regard we would much prefer the behaviour at the browser end to change and have keep-alive sent at 15s intervals, or at least be configurable (RFC 5245 has a recommendation for a configurable keep-alive value).
The RTP packets (~20ms) should keep the nat binding open anyway. Although I agree it is simpler to just send keep-alive even when media is flowing and we would be happy to live with that behaviour if the keep-alive rate was less frequent.
Can I open an issue for this?
Steve