.

Как работает AirDrop на Mac OS X Lion: технический и социальный аспект

  • rss

   

Компания Apple придумала способ как быстрее передавать файлы с компьютера на компьютер. "Быстрее" - это в смысле меньше "кликов и суеты". Этот способ в новой Mac OS X Lion называется AirDrop.

На самом деле владельцы OS X уже имеют такую технологию, только ей не хватало единственного: плоской IP-инфраструктуры для того, чтобы "видеть друг друга" и снятия психологического барьера "запуска альтернативного IM". В данном случае изобретение Apple носит более характер социальной инженерии, чем технологической :)

Первое и самое главное: AirDrop будет работать только на следующих компьютерах:

  • MacBookPro (Late 2008 or newer)
  • MacBook Air (Late 2010 or newer)
  • MacBook (Late 2008 or newer)
  • iMac (Early 2009 or newer)
  • Mac Mini (Mid 2010 or newer)
  • Mac Pro (Early 2009 with AirPort Extreme card, or Mid 2010)

Далее, давайте ещё раз по словам о другом: как известно, изобретения Apple носят социальный характер в первую очередь, а потом на это все навешиваются технологические аспекты.

Сперва мы поговорим о социальном аспекте. Интересный факт о том, что пользователи любят свои IM (аськи, скайпы, гуглы), и даже конкретную реализацию IM - предпочитают qip, а не ... подставьте сами свой любимый клиент.

Когда пользователи пытаются обменяться файлами, то "барьером" являются обычные "психологические" установки: я на джаббере - ты на скайпе, я на аське - ты на гугл-толке, ты на фейсбуке - я в контакте. "Моя твоя не понимайт" и не хочет понимать!

Итак, основной сценарий "нестыковок":

Если локальной сети нет, но надо что-то передать:

  • 1й. "Давай сеть подымем"
  • 2й. "Шнур есть?"
  • 1й. "Да по WiFi!"
  • 2й. "Ок, только я не шарю как"
  • 1й. "Я тебе адрес набью. А вообще он сам назначится."
  • 2й. "Ок, включил. Не вижу тебя."
  • 1й. "Я тебе IP-адрес продиктую."
  • 2й. "Кто это?"
  • 1й. "Короче, давай комп, я сам все сделаю."

1й лезет в "настройки -> сеть" или в консоль...

Если локальная сеть уже есть (на маках):

  • 1й. - "Кинь мне файл!"
  • 2й. - "Куда?"
  • 1й. - .... (размышления... В почту? Зачем, есть же сеть... В аську? У него вроде скайп, аську не любит...) "Давай по сети?"
  • 2й. - "Что-то глючит, шары не вижу"
  • 1й. - "Я тоже не вижу. У меня iChat открыт, давай по бонжуру"
  • 2й. -"Ой, мне iChat открывать, давай в скайп!"
  • 1й. -"Да какой скайп, он за юзерами следит. Аську пусти!"
  • 2й. -"Та не хочу, сейчас iChat запущу"
  • 1й. -"О! Вижу тебя. Кидай файл"
  • 2й. -"Глюк. Отвалилось. Ещё раз. Вот опять твой iChat глюкавый!"
  • 1й. -"да, и у меня не пришло... Короче, давай в почту!"

Вот так это было и бывает в сети. Пользователи сперва испытывают трудности связанные со знанием технической части, а потом чисто психологические с выбором сервиса для отправки. Причем на вторые проблемы уходит гораздо больше времени и сил, чем на первые.

Теперь, смотрим на видео:

Просто? Да! Разрушены оба барьера: не нужно ничего настраивать и не нужно мучаться с проблемой выбора. Все встроено в OS и вынесено прямо под руку. Для передачи файлов пользователю не нужно искать и запускать отдельное ПО, у него в его личном рабочем пространстве просто появляется значек.

Теперь, как это работает? Хотя Apple не раскрывает секреты, не трудно догадаться. Технически в момент нажатия (вызова) AirDrop создается ad-hoc (по требованию) hot-spot (точка доступа). Она создается даже если у Вас уже установлено WiFi-соединение, просто  параллельно - технология называется Multiply SSID - множественная SSID. Такая функция широко доступна настоящим гикам на Linux (ну и обычным пользователям с роутерами на OpenWRT/DD-WRT) достаточно давно.

До этого о такой технологии 3-4 года назад знали только настоящие cisco-веды, что помогало им создавать Metro-WAN сети с множественными политиками доступа и одной аппаратной точкой доступа для предприятий и операторов. Мы все стали "жертвами" этой технологии с появлением hot-spot у операторов сотовой связи. Это проекты по типу wifi.beeline.ru, или любой WiFi.опертор.ru или .ua.

Итак, физически это одно устройство, которой программно имеет несколько SSID и "излучает" их пользователю. Для пользователя складывается впечатление, что он видит несколько точек доступа.

Сейчас же эта технология дошла до точек доступа (LAN) и вклинилась в нашу персональную сеть (PAN) - масштаба до 10м. Для этого первым делом она проникла в драйверы вашего MacBook/iMac под управлением Mac OS X Lion.

Как работает AirDrop.

1. При нажатии AirDrop создается вторая сеть в режиме Multiply SSID, открытая для подключений других пользователей. Логично, что с этого момента теперь они "технически" Вас "видят" без паролей и авторизации.

2. Следующий шаг: автоматическое назначение IP-адреса. Стандартная процедура, Вы в ней не участвуете. Это отработанная технология, прямо из Wikipedia:

  • Идеология Zeroconf применялась в утилите Rendezvous от фирмы Apple Computer[1], когда компания переходила с AppleTalk на IP.
  • Как IPv4, так и IPv6 описывают способы автоматического выбора IP адреса. Согласно RFC 3927, IPv4 использует адреса 169.254.* (link-local).
  • Microsoft ссылается на это как Automatic Private IP Addressing (APIPA) или «Internet Protocol Automatic Configuration» (IPAC).

3. Следующий шаг - запуск Bonjour и аннонс доступных сервисов в режиме multicast. Примечательным является то, что используется IPv6. Видимо, OS X Lion будет отдавать предпочтение IPv6, а сама OS X Lion станет пионерской системой, локомотивом в плане перехода на IPv6. Что есть правильно, ибо адреса IPv4 уже закончились.

13:58:40.138970 00:19:e3:d3:6c:f9 > 33:33:00:00:00:fb, ethertype IPv6 (0x86dd), length 1510: fe80::219:e3ff:fed3:6cf9.5353 > ff02::fb.5353: 0*- [0q] 12/0/0 (Cache flush) TXT "txtvers=1" "qtotal=1" "rp=printers/Canon_iP4200_1-1" "ty=Canon iP4200" "adminurl=http://mbp-2:631/printers/Canon_iP4200_1-1" "note=iCritic.ru.MBP" "priority=0" "product=(Canon iP4200)" "printer-state=3" "printer-type=0x80900E" "Transparent=T" "Binary=T" "Fax=F" "Color=T" "Duplex=F" "Staple=F" "Copies=F" "Collate=F" "Punch=F" "Bind=F" "Sort=F" "Scan=F" "pdl=application/octet-stream,application/pdf,application/postscript,image/jpeg,image/png", (Cache flush) TXT "txtvers=1" "qtotal=1" "rp=printers/EPSON_Stylus_Photo_1410" "ty=EPSON SP 1410 Series" "adminurl=http://mbp-2:631/printers/EPSON_Stylus_Photo_1410" "note=iCritic.ru.MBP" "priority=0" "product=(EPSON Stylus Photo 1410)" "printer-state=3" "printer-type=0x80B00E" "Transparent=T" "Binary=T" "Fax=F" "Color=T" "Duplex=F" "Staple=F" "Copies=F" "Collate=F" "Punch=F" "Bind=F" "Sort=F" "Scan=F" "pdl=application/octet-stream,application/pdf,application/postscript,image/jpeg,image/png", (Cache flush) SRV mbp-2.local.:631 0 0, (Cache flush) SRV mbp-2.local.:631 0 0, (Cache flush) SRV mbp-2.local.:631 0 0, (Cache flush) SRV mbp-2.local.:631 0 0, (Cache flush) TXT "vc=BSDDFGV!NN" "last=iCritic.ru" "phsh=5585b948d8bd718b1321c967a04380298e91dd49" "1st=iCritic.ru@" "jid=iCritic.ru@gmail.com" "txtvers=1" "port.p2pj=50373" "url=" "ext=5I" "email=iCritic.ru@gmail.com" "status=avail", PTR _presence._tcp.local., PTR iCritic.ru@mbp-2._presence._tcp.local., (Cache flush) SRV mbp-2.local.:50373 0 0, (Cache flush) AAAA fe80::219:e3ff:fed3:6cf9, (Cache flush) PTR mbp-2.local. (1448)

Вот так за секунду передастся информация кто Вы и как Вы можете общаться, Ваше имя, Фамилия и т.д. из Address Book. А так же имя Вашего компьютера.

4. Следующий шаг - сканирование эфира! Чтобы найти всех, кто с нами хочет общаться по AirDrop.

SSID BSSID             RSSI CHANNEL HT CC SECURITY (auth/unicast/group)
AIR-XXXX9b 00:14:xx:xx:9b -62 1 N -- None
MyHome 00:14:xx:xx:9b -62  1       N  -- WPA2(PSK/AES/AES)
DOM 00:xx:e0:xx:1c:xx -81  6       N  VE WPA(PSK/TKIP,AES/TKIP) WPA2(PSK/TKIP,AES/TKIP)
Конечно, это пример. Будет выглядеть иначе, но принцип Вы поймете.
5. Следующий шаг. Итак, засекли все точки AIR, подключились к каждой, "послушали" и "передали" (см. 4).
6. Нарисовали иконки и имена в Finder.
7. Запустили аналог iChat в фоне. Точнее его крохотную часть - что реализует передачу файлов. Это вполне может быть отдельная программа или часть системных функций. А может и весь iChat в фоне. В конце концов, мой MacBook виден сейчас через Bonjour даже при выключенном iChat, но если кто-то кинет мне файл - у меня автоматом запустится iChat и предложит тот же известный из видео диалог:
Кончено, в Lion все чуть сложнее и красивее, сперва он передает миниатюру картинки. Но принцип, думаю, Вам уже ясен. Вот такие секреты Apple.

Заключение про AirDrop.

Если AirDrop реализован так же, как передача файлов через iChat/Bonjour или не до конца вылизаны баги с корректной работой afs over wifi, то будут те же проблемы с передачей файлов, что и ранее. Редакция iCritic.ru надеется только, что это не функция, в спешке аннонсированная Apple перед угрозой технологий аналогов, а реально отработанная на сотнях маков технология. Иначе будет:
"AirDrop глючит опять. Давай в почту!"

Аналоги AirDrop.

Для справки, подобная технология есть и на PC, культивируемая Intel. Называется она My WiFi и решает более широкий круг задач: синхронизация устройств через WiFi, трансляция музыки на аудиосистему, видео и обмен файлами между компьютерами. Для работы, кроме устройства с WiFi необходимо наличие Windows и адаптер от Intel с поддержкой WiFi-Direct. Конечно, устройство так же должно поддерживать протокол передачи информации через WiFi. Скорость работы такой технологии - до 54 Мбит/с.
Ниже на видео Сильвия Салазар (Intel) покажет реальную работу такой технологии на примере следующего сценария:
  • делает фото
  • фото появляется на компьютере (само передается без участия человека)
  • закидывает фото на mp3-плеер
  • все это только через WiFi в 2 клика.
А ещё ниже на видео схематическая презентация от Intel:
Источник: iCritic.ru, 9to5mac

Trackbacks/Pingbacks

  1. Секреты Apple: ещё подробнее про AirDrop в OS X Lion | IcritiC.RU - 20 марта 2011

    [...] Четыре дня назад мы опубликовали вероятный алгоритм работы AirDrop. [...]

  2. Старое новое о Mac OS X Lion | IcritiC.RU - 7 июня 2011

    [...] [...]

Оставить комментарий