Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Błyskawiczne przesyłanie plików — od bluetooth do...?

Dzisiejszy świat jest na tyle "ucyfrowiony", że można się czasami zastanawiać czy zostało coś w nim analogowego. Wszechobecny Internet, tysiące fal radiowych które nas otaczają (których nie da się zobaczyć na szczęście), gigabajty przesyłanych danych. Obecny świat - cyfrowy świat.
Muzyka kojarzona z utworami zapisanymi w różnych formatach, zdjęcia kojarzone przeważnie z plilkami *.jpg, filmy najczęściej z kontenerami AVI. Gigabajty jak się patrzy.
Na szczęście, nie trzeba mieć już ze sobą komputerów czy nawet nośników zewnętrznych by móc mieć to zawsze ze sobą. Nowe telefony, smartfony, tablety, mają teraz tak dużo wewnętrznej pamięci, że wystarczy jej na wszystko.
Przesyłanie wybranych mediów dla znajomych, którym np. wpadł w ucho utwór, który katujemy od kilku dni, nie jest też czymś obcym w dzisiejszym świecie. Nie trzeba mieć płyt i się nimi wymieniać. Zazwyczaj wszystko ogranicza się do rozmowy:

- Fajnego utworu słuchasz. Wyślesz mi?
- No jasne. Włącz Bluetooth i zrób się wykrywalna.
- Już jestem, Samsung Poziomki to ja.
- Wysyłam. Potwierdź jak będzie komunikat.
[chwilę wysyłania]
-Dostałam. Dziękuje. [radość]

Mogę się założyć, że nie tylko w moim przypadku tak było:)

Czym jest Bluetooth wie prawie każdy. Według encyklopedii PWN jest to:

międzynarodowa norma określająca technikę przesyłania sygnałów cyfrowych na małe odległości (najczęściej do 10 m, niekiedy do 100 m), za pomocą fal radiowych o częst. ok. 2,4 GHz, z szybkością do 760 KiBit/s;
technika umożliwia transmisję danych cyfrowych oraz głosu (przetworzonego na sygnał cyfrowy), przy użyciu modułów (miniaturowych nadawczo-odbiorczych urządzeń radiowych o mocy wyjściowej 1 mW), między komputerami, a także między komputerami i różnymi urządzeniami (urządzeniami peryferyjnymi, telefonicznymi aparatami cyfrowymi, telefonami komórkowymi, aparaturą DVD, urządzeniami zapewniającymi dostęp do Internetu); Bluetooth może być też wkorzystywany w domowych systemach sterowania (np. w urządzeniu sterującym bramą garażu). Norma została oprac. przez grupę Bluetooth SIG (ang. Special Interest Group), zał. 1997 przez firmy: Ericsson, IBM Corporation, Intel, Nokia AB i Toshiba. Nazwę „Bluetooth” przyjęto dla upamiętnienia króla duńskiego, Haralda I Sinozębego.

Tako rzeczą ludzie nauki.

Bluetoothem można przesyłać dane i to wcale nie aż tak wolno. Wikipedia raczy informacjami, na jakie szybkości możemy liczyć:

  • Bluetooth 1.0 – 21 KiB/s
  • Bluetooth 1.1 – 124 KiB/s
  • Bluetooth 1.2 – 328 KiB/s
  • Bluetooth 2.0 + EDR – wprowadzenie Enhanced Data Rate zwiększyło transfer teoretyczny do 2,1 MiB/s (około 3 MiB/s wliczając narzut protokołu)
  • Bluetooth 3.0 + HS (High Speed) – 24 MiBit/s (3 MiB/s)
  • Bluetooth 3.1 + HS (High Speed) – 40 MiBit/s (5 MiB/s)
  • Bluetooth 4.0 + LE (Low Energy) – 1 MiB/s znacząco ograniczono pobór energii (np. praca czujnika temperatury, przez wiele miesięcy na baterii pastylkowej), kosztem obniżonego transferu oraz zwiększono realny zasięg działania do 100 m

Łatwo obliczyć, że przesłane utworu o jakości 320 kibitps ważącego ok 14 MiB powinno zająć kilka sekund (przynajmniej w teorii). Zwykle wcale to tak nie działa, ponieważ wszystko zależy od tego, jakim modułem dysponuje w swoim urządzeniu nadawca a jakim odbiorca plików. Z szacowanych kilku sekund, czekanie może się przerodzić do nawet kilku minut.
To tylko scenariusz, jak chcemy odebrać jeden plik. W przypadku całego albumu, czasu może wystarczyć na zrobienie sobie obiadu, zjedzenie go i podrzemanie.

Zamiennik dla starego, dobrego Bluetooth

Ktoś mógłby zapytać: czy jest jakiś inny sposób by przesłać dużą liczbę plików bądź materiał o większej wadze w przystępnych ramach czasowych?
Odpowiedź brzmi: Oczywiście.

Technologia, która pozwoli wysyłać pliki szybciej nazywa się Wi-Fi Direct, która została opracowana przez Wi-Fi Alliance®.

W dużym skrócie, Wi-Fi Direct jest technologią, która pozwala łączyć się urządzeniom wyposażonym w moduł Wi-Fi, bezpośrednio ze sobą, bez konieczności bycia podłączonymi do routera lub punktu dostępowego. Dzięki temu połączeniu, możliwe jest drukowanie materiałów, dzielenie się nimi, synchronizacja, wyświetlanie ich na innych urządzeniach.

Wi-Fi Alliance® przygotowało krótki film prezentujący możliwości usługi.

Jeżeli to nie wystarczy, zawsze można przeczytać więcej na stronach organizacji skupiającej się na technologii Wi-Fi [ang.].

Wszytko brzmi zachęcająco ale jak można to wykorzystać? Jakiego narzędzia użyć?
Do dzielenia się plikami polecam bardzo dobre, wygodne i przede wszystkim darmowe narzędzie, które nazywa się SHAREit. Zostało zaprojektowane i napisane przez programistów z firmy Lenovo.

SHAREit dostępny jest dla urządzeń z systemem Windows, Android, Apple, Windows Phone. Poszczególne wersje są do pobrania na stronie producenta.

Platforma do testu

Prezentacja działania programu zostanie przedstawiona na platformach testowych:

  • Microsoft Windows 8.1 x64 (Lenovo Z580, Broadcom Bluetooth 4.0)
  • Google Android 5.0.2 (Samsung Galaxy S4 LTE, Bluetooth 4.0)

Po ściągnięciu i zainstalowaniu aplikacji na telefonie i komputerze, zostanie pokazany ekran startowy aplikacji przygotowany przez deweloperów Lenovo. Mamy do wyboru rolę, jaką będzie pełniło urządzenie. Android (Host) jest odbierającym pliki a Windows wysyłającym (serwer). Konfiguracja Windows -> Android.

Plikiem testowym jest ważący 100 MiB plik tekstowy. To on posłużył mi do pokazania różnic w prędkości wysyłania poprzez BT i Wi-Fi Direct.

Na Androidzie ...

Jako, że Android posłużył jako host w tym przypadku musimy zastosować się do odpowiedniej roli. Po oczekiwaniu na połączenie, pokazuje się ekran, w którym na bieżąco możemy obserwować postęp przy odbieraniu plików oraz czas, który minął od początku procesu odbierania materiałów.
Jak widać na screenach załączonych poniżej, prędkość jest przyzwoita i zadowalająca. Średnia prędkość odbierania wyniosła ok 3,75 MiB/s.

Następnym razem Samsung Galaxy S4 LTE stał się serwerem dla pliku, a co za tym idzie scenariusz postępowania był trochę inny niż wcześniej. Teraz to S4 szukał dostępnych urządzeń z uruchomionym i gotowym do odbierania oprogramowaniem SHAREit. Proces sam w sobie wyglądał też trochę inaczej ponieważ mamy możliwość wybierania spośród dostępnych wszystkich plików, które chcemy wysłać. Programiści Lenovo pomyśleli i stworzyli podział na typy ze względu na zawartość. Ów podział wygląda następująco:

  • kontakt
  • aplikacja
  • zdjęcie
  • muzyka
  • wideo
  • plik

Na screenach poniżej przestawione zostały właśnie te podziały.

Samo wysyłanie plików nie jest jakoś specjalnie skomplikowane i ogranicza się do odnalezienia tego, co chcemy wysłać. Jeżeli nie ma tego w proponowanych kategoriach to zawsze możemy przejść do odpowiedniego pliku właśnie poprzez wbudowany eksplorator.

Gdy już odnajdziemy to, co chcemy wysłać (w moim przypadku plik testowy), wystarczy wybrać odbiorcę i proces wysyłania się rozpoczyna. W tę stronę (Android -> Windows) cały proces przebiegł o 10 s szybciej. Możliwe, że aplikacja inicjuje połączenia sprawniej (chociaż nie jestem przekonany dlaczego różnica wyniosła aż 10 s). Szybkość średnia, którą udało się osiągnąć, po obliczeniu, oscylowała w granicach 5,63 MiB/s, co jest świetnym rezultatem. Różnica to prawie 2 MiB na każdą sekundę wysyłania, co jednak jest odczuwalne przy wysyłaniu dużych plików tą metodą.

... i na komputerze

Sprawa z wysyłaniem na komputerze wygląda bardzo podobnie jak na Androidzie. Mamy do wyboru rolę, jaką w danej chwili ma spełniać urządzenie. Na początku było serwerem więc należało wybrać plik (twórcy zaimplementowali opcję przeciągnij i upuść), który chcemy przesłać a później odbiorcę, którym był telefon z Androidem.

Skrócony proces został przedstawiony na screenach.

Zastanawiać by mogło, ile czasu potrzeba by wysłać ten sam plik przez leciwy (ale wciąż dobry, bardzo popularny i niezastąpiony w niektórych sytuacjach) Bluetooth. Muszę przyznać, że wynik mnie zdziwił. Sądziłem, że będzie to trwało zdecydowanie dłużej. Nie myliłem się. Jak się okazało różnica była kolosalna. Wyniosła 11 min 13 s !

Z rachunków wynika, że średnia szybkość przesyłania pliku przez Bluetooth wynosiła ok 148,6 KiB/s.

Jak dobrze widać, na podstawie przedstawionego testu, szybkość wysyłania plików przez Wi-Fi Direct jest o blisko 2 540% większa niż w przypadku wysyłania przez Bluetooth (dla prędkości 3,75 MiB/s).

Nie mniej jednak, wyniki testu są poglądowe i mogą znacząco się różnić w przypadku innych konfiguracji sprzętu.

Dodatkowe opcje SHAREit

Możliwości SHAREit nie kończą się tylko na szybkim wysyłaniu plików. Niedawna aktualizacja (wersja dla systemu Google Android) wprowadziła możliwość połączenia komputera w celu udostępniania. Pod tą nazwą kryję się możliwość wyświetlania zdjęć, które znajdują się na naszym telefonie w trybie pełnoekranowym. Przydatna, gdy chcemy pokazać znajomym albo rodzinie zdjęcia np z wakacji bez kopiowania na komputer. Kolejną ciekawą funkcję z pewnością docenią ludzie, którzy przeprowadzają szkolenia bądź wygłaszają prezentację. Chodzi tu o możliwość sterowania pokazem slajdów programu Microsoft Office (nie testowana z alternatywnym, wolnym oprogramowaniem jak LibreOffice). Pozostałe funkcje zostawiam do samodzielnego odkrycia i ocenienia.

Warto wykorzystywać nowoczesną technologię i oszczędzić trochę energii w naszych urządzeniach, skracając czas włączonych modułów do komunikacji bezprzewodowej. W końcu jeżeli ma się do wyboru szybki samochód o świetnych wynikach i leciwy samochodzik, czemu nie spróbować jazdy czymś lepszym:) 

oprogramowanie porady urządzenia mobilne

Komentarze

0 nowych
Axles   17 #1 15.01.2015 07:24

ShateIt pierwsze co skojarzyło mi się z Samsungiem bo chyba coś podobnego preinstalowanego na Samsungach występuje w każdym razie program od Lenovo sprawdzę sobie choć nie wiem czy zastosowanie u mnie będzie miał.

Autor edytował komentarz.
  #2 15.01.2015 09:00

Proszę zamienić mb na MB w miejscach gdzie ma to być. mb to megabity MB to megabajty.

DjLeo MODERATOR BLOGA  18 #3 15.01.2015 09:24

Dzięki za ciekawy wpis ;)

adamo000   12 #4 15.01.2015 10:38

@w.z (niezalogowany): Megabit to Mb jeżeli już jesteśmy dokładni a nie mb. Przedrostek mega pisze się wielką literą ale dziękuję za uwagę.
Poprawione :)
@Axles: Może Ci się przydać jeżeli będziesz chciał wysłać albo odebrać plik wideo, nawet nie długi ale nagrany w rozdzielczości 1080p :)
@DjLeo: Dziękuję :)

Autor edytował komentarz.
rm7   5 #5 15.01.2015 11:02

Ale MB to też źle. Powinno być MiB :)
http://pl.wikipedia.org/wiki/Megabajt

adamo000   12 #6 15.01.2015 11:12

@rm7: Ja ufam bardziej encyklopedii PWN niż wiki:)
http://encyklopedia.pwn.pl/szukaj/megabajt.html

  #7 15.01.2015 15:01

Artykuł do poprawki. PWN nie jest żadnym autorytetem w sprawie jednostek.

stasinek   11 #8 15.01.2015 15:19

@adamo000: MB/s to 1mln bajtów/s, MiB to 1024x1024 bajtów koniec kropka. Natomiast w świecie Windows jest inaczej co powoduje zamieszanie bo rodzi nieporozumienia zlaeżnie od kontekstu. Weźmy na ten przykład przepustowość sieci Mbit/s, Gbit/s - 1 milion, 1 miliard bitów/s

Microsoft podaje te wartości źle a za min reszta (głównie producenci RAM) oraz jak widać pwn bo tak jest łatwiej. Do zaadresowania 1KiB potrzeba 10 bitów, 1MiB potrzeba 20 bitów, 1GiB 30 bitów a 1TiB 40 bitów stąd łatwiej było przyjąć że 1MB to 2^20 a nie 2^20 - 48576 bajtów (nadmiarowe jest w gratisie)

Producenci dysków i pamięci flash oraz twórcy protokołów transmisji podają wartości MB/s poprawnie zgodnie z normami jednostek Si stąd pochopne poczucie niedomiaru. Oprogramowanie(np. KDE) z Linuxa pokazuje poprawnie.
Źle podają podrabiacze kart pamięci flash "mega okazja" i tacy którzy ufają pwnowi. Na całe szczęście bo można je łatwo odróżnić, jeśli 32GB karta SD lub pen w Windows ma pojemność "32GB" to jest karta 8GB z napisem 32.


Na marginesie -> http://www.dobreprogramy.pl/H2testw,Program,Windows,28828.html#komentarz-1533974

Autor edytował komentarz.
  #9 15.01.2015 15:59

Jeśli ktoś ma problemy z jednostkami, to polecam http://www.gordonengland.co.uk/conversion/binary.htm. W zielonej kolumnie mamy niepoprawne jednostki, których nie należy stosować. Rozmiar pliku można poprawnie sprawdzić np. w menedżerze plików Konqueror lub Dolphin. Również najnowsze wersje menedżera Nautilus i jego następcy o nazwie "Pliki" z Ubuntu, wyświetlają rozmiary plików poprawnie. Te programy polecę. Niestety jest jeszcze wiele programów, które robią to niepoprawnie, m.in. cały Windows.

adamo000   12 #10 15.01.2015 17:00

@rm7: Jako pierwszy miałeś rację. Przyznaję Ci ją i przepraszam za brak wiary :)
@stasinek: Poprawione. Ogólnie artykuł nie tyczył się tego jak się pisze jednostki tylko tego, że przez Wi-Fi Direct jest znacznie szybciej wysyłać pliki niż przez Bluetooth ale dziękuję za wkład i wsparcie merytoryczne. Mam nadzieję, że to pomoże wszystkim i świat zacznie używać jednostek takich jak trzeba.

  #11 15.01.2015 18:09

Oj @adam. Poprawiłeś, ale na gorsze. Fragment o standardach z Wikipedii był akurat dobrze. Np. 21 kb/s (kilobitów na sekundę — małe "k" i małe "b" ). Podobnie "Bluetooth 3.0 + HS (High Speed) – 24 Mb/s (3 MB/s)" — ten fragment to także prawidłowe przeliczenie, bo 24 Mb/s (megabity na sekundę, inaczej 24 miliony bitów na sekundę) to 3 megabajty na sekundę (duże "M" i duże "B"), czyli 3 miliony bajtów na sekundę. Jeden bajt ma 8 bitów, więc 24/8=3. Jeśli się w tym wszystkim gubisz to zawsze zaczynaj od sprowadzania wszystkiego do bajtów lub bitów i potem korzystając z podanego przeze mnie wyżej kalkulatora przeliczaj. Najlepiej będzie, jeśli podasz także rozmiary plików testowych w bajtach (duże B), wtedy będzie wiadomo na czym stoimy. A akurat jakość pliku to zapewne 320 kb/s (kilobitów na sekundę).

duffee   11 #12 15.01.2015 18:59

ktos tu uzywa jednostek i nie wie jakich

http://pl.wikipedia.org/wiki/Bajt

Jeden uzywa dziesietnych inny binarnych - tabelka w linku -

preferuje dziesietne a binarne to sa pisane z bledem - i tylko dziesitne stosuje

IrasDeeJay   7 #13 15.01.2015 20:21

Z zerami przy procentach tez się troche zagalopowałeś. O dwa za dużo :) Prędkość byla wyższa 25.4 razy czyli 2540% Nie mniej jednak wpis ciekawy :)

adamo000   12 #14 15.01.2015 20:33

@IrasDeeJay: późna pora robi swoje :)
Dziękuję :)

  #15 15.01.2015 23:11

A tak poza rym, skąd masz aktualizację Androida 5.0 na Galaxy S4?

adamo000   12 #16 15.01.2015 23:39

@zaqwertyuioplm (niezalogowany): Magik z xda o nicku AntaresOne stworzył port CM12, który można zdobyć w wątku: http://forum.xda-developers.com/galaxy-s4/i9505-orig-develop/rom-cyanogenmod-12-...

  #17 16.01.2015 20:10

Ja jeszcze pamiętam zanim Bluetooth było standardem.
Co prawda przez podczerwień tyle się nie przesyłało, nie mniej jednak wcześniejsza wymiana plików przez podczerwień była możliwa.

Bluetooth dopiero powszechny zaczął być gdzieś tak w okolicach 2003 roku, kiedy to większa część telefonów komórkowych zaczynała je mieć. Przede wszystkim bluetooth był o tyle sensowny że można było bez przeszkód sparować z bezprzewodową słuchawką do rozmów.
Oczywiście telefony z bluetooth były droższe o te dwie czy trzy setki od swoich odpowiedników bez BT.

  #18 19.01.2015 02:16

wszystko fajnie ale ShareIt to chyba nie jest wifidirect. Jak nazwa wskazuje połączenie wifidirect to połączenie bezpośrednie dwóch urządzeń a ten soft łączy się przez router (wymóg bycia w tej samej sieci). jak na razie prawdziwe wifidirect widziałem tylko przy zestawieniu połączenia Miracast - urządzenia mogą być w różnych sieciach wifi, lub nie być podłączone zupełnie a połączenie wifidirect jest normalnie zestawiane na czas transferu. Dlatego urządzenie musi obsługiwać wifidirect - musi być zdolne do zestawienia 2 połączeń równocześnie (jednego "zwykłego" i jednego bezpośredniego).

adamo000   12 #19 19.01.2015 13:40

@jarekt_ (niezalogowany): Na pierwszym screenie widać, że S4 stawał się punktem dostępu i to do niego wysyłane zostały pliki. W kolejnym przypadku komputer był punktem dostępu i odbierał. Ikony Wifi i GSM wskazują na brak połączenia z Internetem więc nie może być mowy o tym, że było to połączenie przez router.

Dahag   5 #20 19.01.2015 19:39

@adamo000 no nie, teraz te jednostki są źle! Zupełnie niepotrzebnie zasugerowałeś się tym co napisali koledzy rm7 i stasinek. Owszem istnieje coś takiego jak przedrostek binarny ale trzeba wiedzieć gdzie tego używać! Skoro Bluetooth 4.0 + LE ma 1 MB/s w specyfikacji to znaczy że ma dokładnie 1 MB/s a nie 1 MiB/s! Te zapisy nie są tożsame.

Autor edytował komentarz.
ajp.c0.pl   5 #21 19.01.2015 20:54

Pierwsza sprawa co do WiFi Direct i transferu to to że najnowsze systemy nie mają aplikacji od razu pozwalającej na korzystanie z dobroci jakie ta technologia daje. Żeby wysłać plik poprzez BT nie muszę nic instalować i nie muszę się bać że będzie jakąś niezgodność pomiędzy moją aplikacją a aplikacją mojego kolegi :P

rm7   5 #22 27.01.2015 22:16

@Dahag: Autor mierzył czas przesyłania pliku. Wielkość pliku jest podawana z zasady w jednostkach binarnych, błędnie zapisywana jako MB. Dlatego gdy podaje on prędkość (zmierzoną), powinna ona być w MiB.

Dahag   5 #23 02.02.2015 19:17

@rm7: Pozwolę się nie zgodzić. Skoro w specyfikacji protokołu widnieje zapis MB/s czy też Mb/s to konsekwentnie takiej jednostki powinien użyć też autor. No chyba, że zakłada z góry pomyłkę gremium standaryzującego (co jest bardzo śliskie i wymaga udowodnienia - zwłaszcza, że przepływność podawana jest raczej w jednostkach dziesiętnych).

rm7   5 #24 03.02.2015 13:39

@Dahag: Przepływność w jednostkach dziesiętnych? To dopiero nowość. Prawie wszędzie, gdzie operujemy na plikach używamy jednostek binarnych, ponieważ komputery operują w systemie dwójkowym. Prędkość pobierania, prędkość kopiowania, to wszystko jest z zasady podawane w jednostkach binarnych, niestety oznaczane niejednoznacznym MB, zamiast MiB.
Zaś co do tekstu: autor nie pisze jakiegoś dodatku do specyfikacji, tylko artykuł dla ludzi. Może użyć dowolnej jednostki, ale wybrał (słusznie według mnie) jednostkę, która pokazuje wprost ile czasu potrwa wysłanie pliku standardowej wielkości 1MiB. Nie widziałem jak dotąd komputera, który by pokazywał wielkość pliku w Mb.

  #25 06.01.2016 22:40

@rm7: czytaj ze zrozumieniem..

adamo000   12 #26 07.01.2016 09:56

Mam prośbę do wszystkich komentujących. Rozumiem, że popełniłem błędy w związku z jednostkami lecz je poprawiłem.
Celem wpisu było pokazanie możliwości technologii, nie zaś operowanie jednostkami.
Dziękuję wszystkim za czujność i konstruktywną krytykę :)