* [Bluez-users] bluetooth obex is extremely slow, mtu too low
@ 2008-04-11 16:11 Mike Cronenworth
2008-04-11 23:44 ` Marcel Holtmann
0 siblings, 1 reply; 2+ messages in thread
From: Mike Cronenworth @ 2008-04-11 16:11 UTC (permalink / raw)
To: bluez-users
Hello all,
I began a discussion in the Fedora-devel list about why Bluetooth 2.0
OBEX transfers are so ridiculously slow. From my understanding, OpenOBEX
is no longer actively developing, and this list was the recommended
destination of my findings.
Here is my original post on the fedora-devel list
> Hi all,
>
> I've lived with slow transfer speeds long enough. Ever since I purchased
> an ASUS Bluetooth 2.0+EDR USB adapter it has always taken *minutes*
> instead of *seconds* to transfer files from my cell phone to my computer
> and vice versa.
>
> Fedora 8, latest updates.
> Nokia N95-1, latest firmware.
>
> Both are Bluetooth 2.0+EDR devices.
>
> It took *40 seconds* to transfer a 1 megabyte picture. I timed this with
> 'watch -n 1 date' for grins, so I can't give you nanosecond numbers, but
> even a rough estimate shows that transfer speeds are *abysmal* and need
> to be addressed. Ideally it should be taking less than 10 seconds to
> transfer the same image file on a true 2.0+EDR setup. I have two
> different computers with two of the same Asus adapter. Same speeds.
>
> I saw someone fixed this by forcing larger MTUs.
> http://lists.freebsd.org/pipermail/...ary/000847.html
> <http://lists.freebsd.org/pipermail/freebsd-bluetooth/2007-January/000847.html>
>
>
> Before modifying the OpenOBEX sources, I posted a message on their
> board, but I haven't heard anything yet. Does anyone have any experience
> with this?
I am using the "gnome-obex-server" program under XFCE to receive JPEG
pictures from my Nokia N95. Under Windows XP, with the latest updates
and drivers, the transfer time of the same JPEG pictures took 1/4th the
time: from 40 seconds (Linux) to 10 seconds (Windows).
I tried adjusting the MTU and found out these results:
> After further testing I've created a proper patch. These are my
> results based on the attached patch. Each MTU was tested twice using
> "open_push" as the receiver program and using the "gnome-obex-server"
> program.
>
> Bluetooth 2.0 - 1070k file transfer from phone to computer
> 1024 MTU - 40 seconds (default MTU)
> 8192 MTU - 20 seconds
> 16384 MTU - 10 seconds
> 32768 MTU - 11 seconds
> 65535 MTU - 12 seconds
>
> Bluetooth 1.1 - 1070k file transfer from phone to computer
> 1024 MTU - 52 seconds (default MTU)
> 8192 MTU - 30 seconds
> 16384 MTU - 34 seconds
>
> I revised the patch to not change the minimum MTU. It had no effect on
> speeds. 16k seems to be the sweet spot. This makes *huge* differences
> for both 1.1 and 2.0.
As you can see, the MTU is not being adjusted correctly, and by forcing
a higher default MTU, it solves the issue - both Bluetooth 1.1/1.2 and 2.0.
Is there a better way of handling this? I don't see any drawbacks of a
higher MTU.
Regards,
Michael
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Bluez-users mailing list
Bluez-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluez-users
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Bluez-users] bluetooth obex is extremely slow, mtu too low
2008-04-11 16:11 [Bluez-users] bluetooth obex is extremely slow, mtu too low Mike Cronenworth
@ 2008-04-11 23:44 ` Marcel Holtmann
0 siblings, 0 replies; 2+ messages in thread
From: Marcel Holtmann @ 2008-04-11 23:44 UTC (permalink / raw)
To: BlueZ users
Hi Mike,
> I began a discussion in the Fedora-devel list about why Bluetooth 2.0
> OBEX transfers are so ridiculously slow. From my understanding,
> OpenOBEX
> is no longer actively developing, and this list was the recommended
> destination of my findings.
>
> Here is my original post on the fedora-devel list
>
>> Hi all,
>>
>> I've lived with slow transfer speeds long enough. Ever since I
>> purchased
>> an ASUS Bluetooth 2.0+EDR USB adapter it has always taken *minutes*
>> instead of *seconds* to transfer files from my cell phone to my
>> computer
>> and vice versa.
>>
>> Fedora 8, latest updates.
>> Nokia N95-1, latest firmware.
>>
>> Both are Bluetooth 2.0+EDR devices.
>>
>> It took *40 seconds* to transfer a 1 megabyte picture. I timed this
>> with
>> 'watch -n 1 date' for grins, so I can't give you nanosecond
>> numbers, but
>> even a rough estimate shows that transfer speeds are *abysmal* and
>> need
>> to be addressed. Ideally it should be taking less than 10 seconds to
>> transfer the same image file on a true 2.0+EDR setup. I have two
>> different computers with two of the same Asus adapter. Same speeds.
>>
>> I saw someone fixed this by forcing larger MTUs.
>> http://lists.freebsd.org/pipermail/...ary/000847.html
>> <http://lists.freebsd.org/pipermail/freebsd-bluetooth/2007-January/000847.html
>> >
>>
>>
>> Before modifying the OpenOBEX sources, I posted a message on their
>> board, but I haven't heard anything yet. Does anyone have any
>> experience
>> with this?
> I am using the "gnome-obex-server" program under XFCE to receive JPEG
> pictures from my Nokia N95. Under Windows XP, with the latest updates
> and drivers, the transfer time of the same JPEG pictures took 1/4th
> the
> time: from 40 seconds (Linux) to 10 seconds (Windows).
>
> I tried adjusting the MTU and found out these results:
>
>> After further testing I've created a proper patch. These are my
>> results based on the attached patch. Each MTU was tested twice using
>> "open_push" as the receiver program and using the "gnome-obex-server"
>> program.
>>
>> Bluetooth 2.0 - 1070k file transfer from phone to computer
>> 1024 MTU - 40 seconds (default MTU)
>> 8192 MTU - 20 seconds
>> 16384 MTU - 10 seconds
>> 32768 MTU - 11 seconds
>> 65535 MTU - 12 seconds
>>
>> Bluetooth 1.1 - 1070k file transfer from phone to computer
>> 1024 MTU - 52 seconds (default MTU)
>> 8192 MTU - 30 seconds
>> 16384 MTU - 34 seconds
>>
>> I revised the patch to not change the minimum MTU. It had no effect
>> on
>> speeds. 16k seems to be the sweet spot. This makes *huge* differences
>> for both 1.1 and 2.0.
> As you can see, the MTU is not being adjusted correctly, and by
> forcing
> a higher default MTU, it solves the issue - both Bluetooth 1.1/1.2
> and 2.0.
>
> Is there a better way of handling this? I don't see any drawbacks of a
> higher MTU.
the best is to submit patches for obex-data-server to set a bigger
MTU. It is really not OpenOBEX's job to get MTU setup correctly.
However I might be willing to simply add a patch for it if it doesn't
lead to any kind of regression.
Regards
Marcel
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Bluez-users mailing list
Bluez-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluez-users
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-04-11 23:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-11 16:11 [Bluez-users] bluetooth obex is extremely slow, mtu too low Mike Cronenworth
2008-04-11 23:44 ` Marcel Holtmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox