Re: [codec] #16: Multicast?

Koen Vos <koen.vos@skype.net> Fri, 07 May 2010 21:08 UTC

Return-Path: <koen.vos@skype.net>
X-Original-To: codec@core3.amsl.com
Delivered-To: codec@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 7DF1E3A6A1A for <codec@core3.amsl.com>; Fri, 7 May 2010 14:08:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.335
X-Spam-Level:
X-Spam-Status: No, score=-4.335 tagged_above=-999 required=5 tests=[AWL=-0.336, BAYES_50=0.001, 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 3BFY1hav9e46 for <codec@core3.amsl.com>; Fri, 7 May 2010 14:08:11 -0700 (PDT)
Received: from mail.skype.net (mail.skype.net [212.187.172.39]) by core3.amsl.com (Postfix) with ESMTP id 0922B3A6A12 for <codec@ietf.org>; Fri, 7 May 2010 14:08:10 -0700 (PDT)
Received: from mail.skype.net (localhost [127.0.0.1]) by mail.skype.net (Postfix) with ESMTP id E7567601369D5; Fri, 7 May 2010 22:07:57 +0100 (IST)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=skype.net; h=message-id :date:from:to:cc:subject:references:in-reply-to:mime-version :content-type:content-transfer-encoding; s=mail; bh=0bKjp4utCerw /+tt20anEL6qmlU=; b=jHQnAlL6lmdiMyucnqJXzt4Vp43j/xk5ndKiIP+h+6WN 9HL087bIbj8vvR8d49pmQIpGRTOscrOuYqLtZ1nJpNKpbIhzULYgPXl4yoRZc9t/ 0qVKEa4dMbjRKqBn8dpGVLmx1UD06A6HlzTAD+5Ku8sFwDkQmcDiFq3Oc9LiS4k=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=skype.net; h=message-id:date:from :to:cc:subject:references:in-reply-to:mime-version:content-type: content-transfer-encoding; q=dns; s=mail; b=VyrlVKrYsEifQ4Jc/t8V 3TBgKjIfwL2mR+pjVPQKra0JGhJjCnwaMSKQqcNGYsHxj7BVe18wxdNdycvFPJOs Dj1AOnL4TykTjV01rmQ3MFIDCXqJfcml/Ur2syMnh1cCechz/5Ss27J0HBujepuu DZz0Es/KNEpg5thTA+xQ6WE=
Received: from localhost (localhost [127.0.0.1]) by mail.skype.net (Postfix) with ESMTP id E5318601369D4; Fri, 7 May 2010 22:07:57 +0100 (IST)
X-Virus-Scanned: Debian amavisd-new at dub-mail.skype.net
Received: from mail.skype.net ([127.0.0.1]) by localhost (dub-mail.skype.net [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kJfxAfzHzmkI; Fri, 7 May 2010 22:07:57 +0100 (IST)
Received: by mail.skype.net (Postfix, from userid 33) id 03514601369D3; Fri, 7 May 2010 22:07:57 +0100 (IST)
Received: from adsl-71-141-115-202.dsl.snfc21.pacbell.net (adsl-71-141-115-202.dsl.snfc21.pacbell.net [71.141.115.202]) by mail.skype.net (Horde Framework) with HTTP; Fri, 07 May 2010 14:07:56 -0700
Message-ID: <20100507140756.83037heeq3wiapf0@mail.skype.net>
Date: Fri, 07 May 2010 14:07:56 -0700
From: Koen Vos <koen.vos@skype.net>
To: "Raymond (Juin-Hwey) Chen" <rchen@broadcom.com>
References: <062.7439ee5d5fd36480e73548f37cb10207@tools.ietf.org> <4BD11C50.2020206@usherbrooke.ca> <CB68DF4CFBEF4942881AD37AE1A7E8C74AB3F4A270@IRVEXCHCCR01.corp.ad.broadcom.com> <12151537-165D-426A-B71F-8B3D76BE4854@cisco.com> <CB68DF4CFBEF4942881AD37AE1A7E8C74B901372FE@IRVEXCHCCR01.corp.ad.broadcom.com> <20100430230756.13687lc1s5o89gsc@mail.skype.net> <x2t6e9223711005010631kb53e8d5fmb680b34a43f13416@mail.gmail.com> <CB68DF4CFBEF4942881AD37AE1A7E8C74B90345538@IRVEXCHCCR01.corp.ad.broadcom.com> <p2z6e9223711005050406rdc5cd24at547fdd968c0ef78f@mail.gmail.com> <CB68DF4CFBEF4942881AD37AE1A7E8C74B9034592F@IRVEXCHCCR01.corp.ad.broadcom.com> <i2m6e9223711005061212tb35b02ag2d399a0ed449c19f@mail.gmail.com> <CB68DF4CFBEF4942881AD37AE1A7E8C74B90345A89@IRVEXCHCCR01.corp.ad.broadcom.com>
In-Reply-To: <CB68DF4CFBEF4942881AD37AE1A7E8C74B90345A89@IRVEXCHCCR01.corp.ad.broadcom.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"; DelSp="Yes"; format="flowed"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit
User-Agent: Internet Messaging Program (IMP) H3 (4.3.4)
Cc: "codec@ietf.org" <codec@ietf.org>
Subject: Re: [codec] #16: Multicast?
X-BeenThere: codec@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Codec WG <codec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/codec>, <mailto:codec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/codec>
List-Post: <mailto:codec@ietf.org>
List-Help: <mailto:codec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/codec>, <mailto:codec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 07 May 2010 21:08:13 -0000

Hi Raymond,

> However, delay is one thing that doesn't get improved with Moore's  
> Law once a codec frame size is chosen and fixed.

You've said this before, and it's not true.  Moore's law has reduced  
the delay that users experience a lot:

1. Faster networks reduce transmission delays.  In Skype we've seen  
the average network roundtrip time during a call gradually go down  
from well over 500 ms in 2005 to below 300 ms today.  Skype calls now  
have lower delay than mobile phone calls.

2. Faster CPUs enable tighter scheduling of audio I/O. As a result,  
the buffering delay in the OS/driver has gone done over the years.

3. Faster CPUs mean less processing time delay.  For example, SILK in  
superwideband mode takes less than 10% of real-time on an iPhone.

best,
koen.



Quoting "Raymond (Juin-Hwey) Chen" <rchen@broadcom.com>:

> Hi Stephen,
>
> I agree with your points below. I had never said a 20 ms codec frame  
> size should not be used.  I agree and had previously said that there  
> are applications where that 20 ms frame size makes sense.  All I  
> have been arguing in the last couple of weeks was that there are  
> also application scenarios where a low-delay mode is needed, and  
> there are applications where low codec complexity is desirable or  
> even important.
>
> Even draft-ietf-codec-requirements-00 talks about a low-delay mode.   
> Although the codec WG charter says that "it is not the goal of  
> working group to produce more than one codec", it does acknowledge  
> that "based on the working group's analysis of the design space, the  
> working
> group might determine that it needs to produce more than one codec,  
> or a codec with multiple modes".  Thus, I believe that my proposal  
> to have multiple coding modes in the IETF codec (to address the  
> needs of low bit-rate, low delay, or low complexity in different  
> applications) is completely within the scope of the codec WG's  
> charter.
>
> One more comment about the coding delay issue.  When we compare VoIP  
> with traditional circuit-switched PSTN telephony, VoIP is better in  
> most aspects except one: it has substantially longer one-way delay  
> than PSTN telephony.  In this area of delay, PSTN still beats VoIP  
> by far.  As Moore's Law improves technologies over time, the  
> processing speed and communication speed improves with time, so the  
> codec complexity and encoding bit-rate are going to be less and less  
> of an issue as time goes.  However, delay is one thing that doesn't  
> get improved with Moore's Law once a codec frame size is chosen and  
> fixed.
>
> Therefore, if we take a long-term view and attempt to make VoIP  
> better than or at least not significantly worse than PSTN in all  
> aspects, then I believe that we should address the VoIP's long-delay  
> issue head-on with a low-delay mode in the IETF codec.
>
> Raymond
>
> From: stephen botzko [mailto:stephen.botzko@gmail.com]
> Sent: Thursday, May 06, 2010 12:12 PM
> To: Raymond (Juin-Hwey) Chen
> Cc: Koen Vos; codec@ietf.org
> Subject: Re: [codec] #16: Multicast?
>
> I basically agree with your points below.
>
> There are lots of tradeoffs in codec design, including this one.   
> Personally I think there is value in a moderate delay 20 ms frame  
> size, possibly augmented with a low-delay mode.  20 ms works quite  
> well for video conferencing, since the video frame rate is no faster  
> than 60 fps (about 15 ms per frame).
>
> Regards
> Stephen Botzko
>
>
>
>
> On Thu, May 6, 2010 at 3:03 PM, Raymond (Juin-Hwey) Chen  
> <rchen@broadcom.com<mailto:rchen@broadcom.com>> wrote:
> Hi Stephen,
>
> Sorry, I was too busy to respond yesterday.
>
> You wrote:
>> Generally the need to buffer the current frame is treated as part of the
>> algorithmic delay.  At least I believe that is what the ITU-T does.
>> So maybe we need a list of what all these components are?
> [Raymond]: Sure, my previous analysis was an attempt to do just  
> that, but perhaps my list was not complete enough.
>
>> I'd suggest keeping the gateway out of it for the first pass.
> [Raymond]: May I ask why?
>
>> I've worked with Gateways\MCUs where the packet size had to be increased
>> because packet loading in the product became too high.  Also, if you
>> have QOS features enabled in many routers, the routers themselves have
>> to start using a "software path", which creates a similar throughput
>> problem in the routers.  Too many packets per second can overwhelm these
>> devices, creating both capacity issues and excessive queuing delays.
>
> [Raymond]: OK, now I see what you meant when you said "it is totally  
> possible that reducing the frame size might actually increase the  
> latency". This is probably more likely to happen many years ago but  
> less of a problem now, as I was told by networking guys that  
> nowadays networking gears can handle 5 ms packets without problems.   
> In fact, the VoIP gateway I talked about, which has a 12 to 17 ms  
> codec-dependent one-way delay for a 5 ms frame/packet size, was done  
> 6 or 7 years ago.  Even back then the gateway can handle it without  
> problems.
>
>> I don't think the group has an agreed-upon model which names these
>> components consistently, and describes are appropriately in-scope and
>> which are out-of-scope.  Perhaps that is one reason why Koen is saying
>> multiplier the number is 1x.
>
>> Also, there are real-world negative consequences to higher packet rates,
>> and we have not yet considered them.
> [Raymond]: Yes, higher packet rates means higher packet header  
> overhead bit-rates, more burden on networking gears in I/O bandwidth  
> and throughput, etc.  However, that's the price to pay if we need  
> low latency, just like if we want to avoid all these, the price to  
> pay is higher latency.  It's all a matter of trade-off and the best  
> choice depends on the application at hand.
>
> In Section 2 of Jean-Marc's Internet Draft  
> draft-ietf-codec-requirements-00, 6 specific applications for the  
> IETF codec were listed.  Fully 5 of these 6 applications list less  
> than 10 ms of codec delay as either a requirement or a desirable  
> feature. (The only exception is point-to-point calls.)  The only way  
> to achieve this less than 10 ms codec delay is with a codec frame  
> size of less than 10 ms, and to get the kind of low latency that  
> these 5 applications desire, each packet had better contain only one  
> codec frame as payload (rather than multiple frames).
>
> So, yeah, there is negative consequences of the resulting higher  
> packet rates, but hey, if we want to get low latency as desired or  
> required by these 5 applications, that's the price we will need to  
> be prepared to pay.  There is no free lunch.  If we want to use a 20  
> ms frame/packet size to avoid those consequences, then we need pay  
> the price of not achieving the low latency that these 5 applications  
> desire or require.
>
> Raymond
>
>