Re: [AVT] Observations on MPEG2-TS preamble drafts

"Ali C. Begen (abegen)" <abegen@cisco.com> Mon, 26 October 2009 16:43 UTC

Return-Path: <abegen@cisco.com>
X-Original-To: avt@core3.amsl.com
Delivered-To: avt@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 9E27228C23A for <avt@core3.amsl.com>; Mon, 26 Oct 2009 09:43:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.447
X-Spam-Level:
X-Spam-Status: No, score=-6.447 tagged_above=-999 required=5 tests=[AWL=0.152, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2uU9ni82iJBr for <avt@core3.amsl.com>; Mon, 26 Oct 2009 09:43:21 -0700 (PDT)
Received: from sj-iport-2.cisco.com (sj-iport-2.cisco.com [171.71.176.71]) by core3.amsl.com (Postfix) with ESMTP id 674D228C0F4 for <avt@ietf.org>; Mon, 26 Oct 2009 09:43:21 -0700 (PDT)
Authentication-Results: sj-iport-2.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: ApoEADdu5UqrR7H+/2dsb2JhbADBJIkgCI1ggk4IgWkEgV4
X-IronPort-AV: E=Sophos;i="4.44,626,1249257600"; d="scan'208";a="217922354"
Received: from sj-core-2.cisco.com ([171.71.177.254]) by sj-iport-2.cisco.com with ESMTP; 26 Oct 2009 16:43:36 +0000
Received: from xbh-sjc-211.amer.cisco.com (xbh-sjc-211.cisco.com [171.70.151.144]) by sj-core-2.cisco.com (8.13.8/8.14.3) with ESMTP id n9QGhZ7V008022; Mon, 26 Oct 2009 16:43:35 GMT
Received: from xmb-sjc-215.amer.cisco.com ([171.70.151.169]) by xbh-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 26 Oct 2009 09:43:34 -0700
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
Date: Mon, 26 Oct 2009 09:43:30 -0700
Message-ID: <04CAD96D4C5A3D48B1919248A8FE0D540A7932BD@xmb-sjc-215.amer.cisco.com>
In-Reply-To: <00b201ca5656$68e3b490$3e0c7c0a@china.huawei.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [AVT] Observations on MPEG2-TS preamble drafts
Thread-Index: AcpWVnabgdfzcqf0Swy9usX2gDydbAAAXAaQ
References: <00ad01ca55bd$49b8ace0$dd2a06a0$%roni@huawei.com> <04CAD96D4C5A3D48B1919248A8FE0D540A7931AB@xmb-sjc-215.amer.cisco.com> <00b201ca5656$68e3b490$3e0c7c0a@china.huawei.com>
From: "Ali C. Begen (abegen)" <abegen@cisco.com>
To: Frank Xia <xiayangsong@huawei.com>, Roni Even <Even.roni@huawei.com>, avt@ietf.org
X-OriginalArrivalTime: 26 Oct 2009 16:43:34.0843 (UTC) FILETIME=[7598A0B0:01CA565B]
Subject: Re: [AVT] Observations on MPEG2-TS preamble drafts
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Audio/Video Transport Working Group <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/avt>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 26 Oct 2009 16:43:27 -0000

[snip]
> >> case. It is using the same mechanism to convey information that will look
> >> to the RR as a
> >> retransmission stream using the RTP packet structure defined in section 4
> >> of RFC 4588 and
> >> the SDP description from RFC 4588.  Yet the RR did not know that it was
> >> missing any RTP
> >> packet with specific sequence numbers since he was not expecting them in
> >> the unicast
> >> stream until they arrived and the OSN value is not that meaningful to it.
> >
> > OSN is meaningful when it joins the mcast session. Now, it can put the
> > packets in the right order and the only relation between the
> > retransmission (burst) packets and the multicast source packets is the OSN
> > field.
> Frank=>The RR has never meant to to receive the burst packet before.
> IMHO, there is no such relationship in rapid acquistion (fast channel
> change) case.

I am not sure what your point here is. Looks like we are not in sync. But I said enough about this already.
 
[snip]
> >
> > I will give a "very" simple example here. Suppose each RTP packet is
> > carrying 7 TS packets and the server is receiving all the RTP packets sent
> > in the multicast session (numbers below denote the RTP seqnums).
> >
> > ... RTP_(N+2)   RTP_(N+1)   RTP_(N)   RTP_(N-1) ...
> >
> > Assume that the current preamble (recall that preamble data varies over
> > time) data is a combination of the information carried in the second TS
> > packet in RTP_(N-1) and the third TS packet in RTP_(N+1).
> >
> > In our approach, we extract this information and create the necessary TLOV
> > elements, generate a new RTP packet and send it to the RTP receiver
> > requesting RAMS for this multicast stream.
> >
> > Now, what does Frank's draft do here? I see two possible answers:
> > i) Extract those two TS packets and put them in a new RTP packet and send
> > it. If this is the case, what payload format is used? Is it 4588? If so,
> > how is the OSN field set? If not, which format is used?
> > ii) Retransmit the two RTP packets (i.e., N-1 and N+1) intact. In this
> > case, 4588 can be used similar to RAMS. But, this introduces new problems.
> Frank=>Sorry for not making things clearer in our draft.  Let me have
> another shot.
> 1)RS identifies necessary TSes
> 2)RS creates new RTP packets in the format of 4588.
>     a) Let's say there are two RTP packets to convey preamble,
>     b) and given the SN of the first unicast burst RTP is N.

Where did you come up with this? The SN of the first burst packet can be anything.

>     c) The OSNs of the two preamble RTP packets are  N-2, N-1 respectively.

Huh? You seem to be mixing the OSN and SN fields in the burst/retransmission packets. OSN field relates to the seqnums of the source RTP packets sent in the multicast session. The SN fields are just the seqnums used in the retransmission session. They have no relation to each other. The important relation is the OSN values and the seqnums of the primary source packets.

The two RTP packets carrying your preamble (in this example) have seqnums of N-1 and N+1, but the retransmissions of these packets have OSN values of N-2 and N-1. Is that what you are saying?

> >
> > First, in this example the amount of info we needed was equal to or
> > (likely) smaller than 2 TS packets, but we transmitted two full RTP
> > packets. This is not only inefficient but also increases the chances of
> > loss for the preamble data. Our approach squeezes all the preamble data
> > out of several TS packets and often generates a single RTP packet. If that
> > packet makes it, we are done. However, if the other approach will be
> > transmitting k RTP packets (because k different RTP packets carried
> > partial preamble data), the failure probability will go from p to k*p.
> > This is no good.
> Frank=>I tried to give you a calculation,  and you can calcuate again.
> The size preamble information is small.  If you talk about the failure
> probability,
> you should also take into account of  unicast burst.

There is a difference in failure probability if I transmit k packets instead of one packet for the preamble data. The amount of data can be small but the failure probability depends on how I transmit it. 

In addition, the example given above is oversimplified. If you wanna transmit every full RTP packet that has something to do with the preamble data, you will end up transmitting a lot of them because preamble data is not contiguous. 
 
[snip]
> >> I cannot say which one is better. My personal analysis is that in both
> >> cases the RS will
> >> need to cache this information and will need to create the right packet
> >> structure which is
> >> the TLOV in the first case and an MPEG2 TS PSI packet in the second case.
> >> The RR will need
> >
> > Yes, the server needs to do some processing one way or another. Generating
> > the TLOV elements is not a concern at the server since the server is
> > already dealing with lots of TLV elements in RAMS transactions anyway.
> > More importantly, the number of TLOV elements that the server needs to
> > create is proportional to the number of MPEG2-TS streams in the system.
> > OTOH, the number of TLV elements the server needs to create for RAMS is
> > proportional to the number of RAMS requests, which is proportional to both
> > the number of receivers and the number of MPEG2-TS streams in the system.
> > If you consider that number of receivers is in the order of tens of
> > thousands per server in a typical system whereas the number of streams is
> > in the order of hundreds, it is quite clear that TLOV encoding of the
> > preamble data is not a concern for the server.
> Frank=>TLOV is feaible, however, RR agnostic method is probably simpler.

For whom? Every different type of decoder/set-top will need customization one way or another.
 
[snip]
> > Frank's draft attempts to simplify the receiver-side implementation by
> > avoiding the "post processing" stage that our draft needs. Any receiver
> > implementing RAMS must already support TLV encoding/decoding and I don't
> > see how avoiding the post processing of TLOV elements (which is really not
> > different at all than TLV elements) will simplify the receiver
> > implementation.
> Frank=>You assume all RR MUST implement RAMS.  What if there is some other

That is my general expectation. 

> alternative?
> e.g Network-based Rapid Acquisition of Multicast RTP Sessions in
> http://tools.ietf.org/id/draft-xia-avt-proxy-rapid-acquisition-00.txt.

If a proxy can handle the RAMS for a non-RAMS client, the same proxy can also handle the "post-processing" for that client, too. Unless I am missing something, our approach should also work.

-acbegen

 
> Our solution works in both scenarios.
> 
> >
> >> I do not have any view about what is the right way and I was only trying
> >> to see if I
> >> understand both proposals.
> >
> > Thanks for the summary. I hope I've made some points clearer.
> >
> > Cheers, acbegen.
> >
> >> Thanks
> >> Roni Even as an individual