linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Pali Rohár" <pali.rohar@gmail.com>
To: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
Cc: "linux-bluetooth@vger.kernel.org" <linux-bluetooth@vger.kernel.org>
Subject: Re: bluez A2DP socket reliability
Date: Mon, 10 Jun 2019 12:51:30 +0200	[thread overview]
Message-ID: <20190610105130.un3muj4knwoua5cb@pali> (raw)
In-Reply-To: <CABBYNZKQ0WYTH4Oa_eFv11Ok8=42oY_GPFzN-D6UqfeNsvaXug@mail.gmail.com>

On Friday 07 June 2019 18:23:41 Luiz Augusto von Dentz wrote:
> Hi Pali,
> 
> On Fri, Jun 7, 2019 at 4:00 PM Pali Rohár <pali.rohar@gmail.com> wrote:
> >
> > On Sunday 19 May 2019 14:22:23 Pali Rohár wrote:
> > > On Sunday 19 May 2019 11:13:09 Luiz Augusto von Dentz wrote:
> > > > Hi Pali,
> > > >
> > > > On Sat, May 18, 2019 at 11:12 PM Pali Rohár <pali.rohar@gmail.com> wrote:
> > > > >
> > > > > Hello! How is L2CAP layer of bluetooth socket used for A2DP audio
> > > > > transfer configured in bluez? It is reliable with big/infinite
> > > > > retransmit count? Or in best-effort manner and some packets may be
> > > > > dropped? And it is possible to change between these two modes for
> > > > > application which uses bluez DBUS API? I'm asking because some A2DP
> > > > > audio codecs are designed to deal with packet loss and for those codecs
> > > > > it would be probably better to configure L2CAP socket to unreliable
> > > > > mode.
> > > >
> > > > We don't use ERTM with AVDTP, both signaling and transport sockets are
> > > > using basic mode which don't support retransmissions, there the
> > > > concept of flush timeout which iirc we don't currently it.
> > >
> > > On bluez.org site there is no information how to use bluez sockets and
> > > the only documentation/tutorial which I found on internet was this:
> > >
> > >   https://people.csail.mit.edu/albert/bluez-intro/x559.html
> > >
> > > I do not know how up-to-date it is, but seems that by default bluez
> > > L2CAP sockets are reliable and to change them to unreliable mode it is
> > > needed to issue OGF_HOST_CTL / OCF_WRITE_AUTOMATIC_FLUSH_TIMEOUT (0x28)
> > > request. As default is zero = infinity = reliable connection.
> > >
> > > I do not understand low level bluetooth details, but is ERTM related to
> > > OCF_WRITE_AUTOMATIC_FLUSH_TIMEOUT?
> > >
> > > So what are default settings for L2CAP socket used by AVDTP/A2DP
> > > profiles which are transferred to user application via DBUS?
> >
> > Hi! Do you have any idea about OCF_WRITE_AUTOMATIC_FLUSH_TIMEOUT? It is
> > related to ERTM or not?
> 
> The OCF usually describes an HCI command which may affect the entire
> ACL connection, ERTM is a L2CAP channel mode that includes
> retransmissions. The A2DP stream transport doesn't ERTM so no
> retransmissions shall take place.

Fine, no retransmission is good for A2DP.

And how it is with delivering packets? It is possible that may be
delivered to other side in wrong order?

-- 
Pali Rohár
pali.rohar@gmail.com

  reply	other threads:[~2019-06-10 10:51 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-18 19:06 bluez A2DP socket reliability Pali Rohár
2019-05-19  8:13 ` Luiz Augusto von Dentz
2019-05-19 12:22   ` Pali Rohár
2019-06-07 13:00     ` Pali Rohár
2019-06-07 15:23       ` Luiz Augusto von Dentz
2019-06-10 10:51         ` Pali Rohár [this message]
2019-06-10 12:16           ` Luiz Augusto von Dentz
2019-06-10 16:06           ` Frédéric Danis
2019-06-14  7:16             ` Pali Rohár

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190610105130.un3muj4knwoua5cb@pali \
    --to=pali.rohar@gmail.com \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=luiz.dentz@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).