[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [AVT] Comments on http://tools.ietf.org/html/draft-begen-avt-ports-for-ucast-mcast-rtp-01



> > The NAT friendly solution IMO is that the port mapping request
> > messages for RTP and RTCP is sent along with a RAMS-R FB by the RR to
> > the RS whereas a port mapping request for RTP
> 
> But this message (since it includes RAMS-R) needs to go to port P2 on RS
> (rtcp port for the primary mcast session) instead of port P3.
> 
> TOM: I meant two separate RTCP messages, the RAMS-R sent to port P2, and
> the port mapping request is sent to port P3. Not a neat solution either,
> I agree.

I see.
 
> > is sent along with a NACK FB by the RR to the RS. This is not to
> > inform the RS of the ports it should use each time -as it needs to
> > remember that anyhow and keep state based on the 1st received port
> > maping request by the RR- but to open the NAPT in between. The
> disadvantage is of course the higher messaging load for the RS (and RR).
> >
> > I realise the draft wants to provide an answer on how an RR can
> > indicate the UDP ports it wishes to use for RTP unicast sessions
> > without any session-signaling protocol involved, but I do not think
> > all design criteria can be met. I think we can drop the cookie, and
> > just keep the port mapping response/request message (without cookie),
> > meaning the RS needs to keep state of the port allocated to each RR
> > based on acknowledged port mapping request messages, and when
> receiving RTCP Byes in the retransmission session, it can drop the
> "state".
> 
> This is an interesting proposal but we are giving up from the stateless
> server idea. Are we willing to do that? In order to keep the server
> stateless, we might break another rule, if we have to, and re-consider
> our earlier proposal - PubPorts (where port numbers are directly
> transmitted in the RTCP message). That will satisfy our requirements
> except that it introduces layer violation.
> 
> TOM: don't you still face the same issue, that RTCP SR get sent by the
> RS unsollicited, so the RS needs to remember from previous received
> pubport message, which port to use for the RTCP SR?

Yes, sender reports seem to require state on the server.

> > In my opinion, the ideal solution is still that we can make the P2 and
> 
> > P3 ports on the RS equal, where a single message (RAMS-R or NACK) by
> > an RR will allow the response (RTP burst or RTP retransmission packet)
> 
> > to pass through NAT, provided the RR supports the RTP/RTCP
> 
> Yes, your proposal above requires this.
> 
> TOM: not really, but making P2=P3 on top of that definitely takes away
> many complexities and "overhead".

Sure, it does but also brings up other issues mentioned below.
  
> > port muxing.  I realise this would require the RS to use an SSRC in
> > the unicast retransmission session that is different from the one used
> 
> > in the primary SSM session- allowing the RS to distinguish RTCP
> messages based on the media SSRC in the RTCP messages.
> > However, using a different SSRC when retransmission session muxing is
> > used, is forbidden
> 
> Correct.
> 
> > by RFC 4588. But there is no justification in RFC 4588 why this was
> > disallowed, and further inquiries have made me believe that there is
> > really no hard reason why this constraint was imposed.
> 
> I believe the reason is to allow for easier monitoring and processing of
> RTCP reports. If a session and its retransmission session use different
> SSRCs, how do we correlate them at the monitoring (RTCP processing)
> agent? There can be multiple primary sessions and their retransmission
> sessions running on the same client at the same time.
> 
> TOM: the agent needs the SDP  -or any other signaling info- to start the
> monitoring process. This may include SSRC information. If not, the RFC
> 4588  indicates how association can be done for ssrc-multiplexed scheme,
> and I cannot see why  the described approach cannot be mapped to the
> session-multiplexed scheme where the original and the retransmission
> stream have a different SSRC.

Correlating SSRC-muxed streams is a lot more complicated than correlating session-muxed streams. Section 5.3 of 4588 provides some guidelines on how to do it and also mentions an ambiguity, which could be addressed by taking some precautions at the receiver in unicast retransmissions, but the same is not necessarily true for multicast retransmissions (something DVB-IPI supports). 

If we can figure out a nice and solid solution to this, I'll take it. But this seems questionable (at least to me).

Cheers, acbegen