Программирование мобильных устройств на платформе .NET Compact Framework - Иво Салмре
Шрифт:
Интервал:
Закладка:
Рис. 15.1. Возможные перемещения мигрирующего пользователя сети Wi-Fi. Сети Wi-Fi обеспечивают широкую полосу пропускания. Для соединения с сетью Wi-Fi пользователь должен воспользоваться физической "горячей точкой Wi-Fi". В процессе синхронизации данных мобильного приложения пользователь, как правило, не перемещается между точками доступа Wi-Fi (то есть роуминг отсутствует).
С точки зрения программирования связь посредством Wi-Fi аналогична связи через кабель Ethernet. Этот вариант является великолепным универсальным решением проблемы под названием "Мне необходимо сетевое подключение". Вместе с тем, желая использовать Wi-Fi, вы должны провести следующий анализ:
■ Имеется ли у вас Wi-Fi? Не все мобильные устройства поддерживают Wi-Fi. Для большинства современных лэптопов встроенная поддержка Wi-Fi предусматривается. тогда как для большинства мобильных телефонов — нет. Некоторые мобильные устройства обеспечивают подключение карт Wi-Fi, причем обычно это делается посредством карт Compact Flash или Secure Digital. Можно ожидать, что в будущем протокол Wi-Fi будет поддерживаться большим количеством устройств, но это не будет встречаться сплошь и рядом.
■ Собираетесь ли вы использовать свою сеть Wi-Fi или также сети Wi-Fi других поставщиков? Если вам необходимо обеспечить сетевой доступ в пределах ограниченного местоположения, то разумно настроить собственные соединения Wi-Fi. Если же ваше мобильное приложение должно работать на большой территории, но ему не требуется постоянное подключение к сети, то не менее разумно использовать сети Wi-Fi сторонних поставщиков. На сегодняшний день пользователю мобильного приложения не составит особого труда найти "горячую точку Wi-Fi" ("Wi-Fi hot spot"), поддерживаемую одной из известных фирм, в гостинице или где-нибудь в городе. В то же время, несмотря на большой энтузиазм со стороны пользователей и большую шумиху, поднятую вокруг этого вопроса, вряд ли можно ожидать, что к сети Wi-Fi в ближайшее время будет организован надежный глобальный доступ. Даже при значительном расширении зон покрытия Wi-Fi к различным Wi-Fi-услугам будут применяться различные модели тарифных сеток и прав доступа, охватывающие как бесплатные, так и очень дорогие услуги. Для бесплатных сетей характерен низкий уровень предоставляемых гарантий. Некоторые Wi-Fi-сети обеспечивают самые широкие возможности доступа в Internet, тогда как другие предоставляют доступ только к локальным сетям. Отнюдь не все виды Wi-Fi-доступа являются равноценными. Проезжая по длинным участки трасс или по небольшому городку, вы увидите довольно много базовых станций Wi-Fi, однако пока еще они не установлены повсеместно.
■ Безопасность. Отправлять пакеты через Wi-Fi-соединения — это все равно что кричать с крыши здания; вас может услышать кто угодно. На самом деле, все не так уж и плохо, поскольку Wi-Fi-сети предлагают различные уровни встроенной поддержки шифрования, начиная от секретных ключей, совместно используемых базовой станцией Wi-Fi и устройствами, и заканчивая средствами защиты информации на основе сертификатов и открытых ключей шифрования (чрезвычайно надежная защита). Даже при передаче данных по нешифруемым открытым Wi-Fi-каналам можно без труда использовать протоколы SSL (Secure Socket Layer) или HTTPS (Secure HTTP) для шифрования передаваемых данных на уровне приложения. Если вам надо передавать важные данные, их обязательно следует шифровать.
■ Энергопотребление. Коммуникационный механизм Wi-Fi не относится к числу экономичных в плане расхода электроэнергии. Как устройства так и их аккумуляторные батареи становятся все меньшими и меньшими, и поэтому допустимая доля энергоресурса, которую можно расходовать на Wi-Fi-связь, не очень велика. Это означает, что существует некий практический нижний предел размеров, при которых устройство еще в состоянии эффективно пoддepживaть Wi-Fi. Несомненно, в этом отношении будут найдены какие-то аппаратные или программные решения, однако на сегодняшний день указанная проблема существует.
Несколько слов по поводу WiMaxПротокол WiMax, известный также под названием протоколов 802.16 и 802.20, — это развивающийся стандарт, который должен вобрать в себя все лучшее из того, что предлагают сети Wi-Fi и сети мобильной телефонной связи, предоставить возможности широкополосной передачи пакетов, свойственные сетям Wi-Fi, на большие расстояния и, в перспективе, обеспечить возможность роуминга между точками доступа (access points). В то время как протокол 802.11 (Wi-Fi) предназначен для беспроводных локальных сетей, новые стандарты предназначены для введения беспроводных региональных сетей, охватывающие значительно большие расстояния по сравнению с Wi-Fi. Как и в случае любого нового стандарта, для внедрения WiMax несомненно потребуется определенное время, однако этот протокол является весьма многообещающим в отношении скорости и стоимости передачи данных. Операторы традиционных стационарных сетей, операторы мобильных сетей и производители связного оборудования заинтересованы в развитии этого направления, и о том, какие изменения ожидают коммуникационный ландшафт, в настоящее время можно только догадываться. Автор данной книги не может дать иных прогнозов, кроме того, что, по его мнению, развитие этого процесса будет весьма интересным, и он растянется на ближайшие несколько лет. Как и в случае всех остальных механизмов беспроводной связи, которые мы здесь обсуждаем, работа с протоколом WiMax потребует от вашего приложения готовности работать в условиях нестабильного доступа к сети и неоднородных сетей, включая сети Wi-Fi, WiMax, 2.5 G, 3G и другие сетевые технологии.
Более подробную информацию об этих развивающихся стандартах вы сможете найти на Web-сайте:
http://grouper.ieee.org/groups/802/16/ и
http://grouper.ieee.org/groups/802/20/
Bluetooth: персональные сети
Bluetooth — это коммуникационный механизм персональных вычислительных сетей (Personal Area Network — PAN), предназначенный для объединения различных устройств, непосредственно окружающих пользователя, в единую сеть. PDA-устройства, лэптопы, мобильные телефоны, принтеры и, возможно, даже торговые автоматы и автономные центры интерактивной информации — все они могут выступать в роли целевых объектов сетей Bluetooth. Назначение стандарта Bluetooth состоит в том, чтобы позволить различным устройствам, оказавшимся вблизи друг друга, вступать друг с другом в различные отношения, зависящие от конкретной ситуации. Как видно на рис. 15.2, существует два вида вычислительных устройств, которые может объединять Bluetooth: персональные устройства, переносимые индивидуумом, и внешние устройства, с которыми может вступать в контакт владелец устройства, располагающего возможностями Bluetooth.
Часто неправильно считают, что стандарт Bluetooth подразумевает только "что-то одно", то есть представляет собой исключительно коммуникационный протокол и ничто другое, хотя на самом деле это не так. Несмотря на то что Bluetooth построен поверх базового сетевого стека, наиболее существенным аспектом Bluetooth являются построенные поверх него "профили". Сам по себе Bluetooth — это коммуникационный механизм, но почти вся наиболее интересная работа выполняется на уровне профилей Bluetooth. С практической точки зрения это означает, что если только два различных устройства не поддерживают одни и те же профили Bluetooth, то они мало что смогут сообщить друг другу. Например, Bluetooth-принтеру, который поддерживает профиль Bluetooth "Basic Printing Profile", может быть известно о существовании в той же комнате удаленного элемента управления "A/V Remote Control Profile", но эти два устройства не смогут общаться на понятном им обоим языке, если только они не разделяют общий набор профилей.
Рис. 15.2. Схематическое изображение персональной сети
Список поддерживаемых профилей вы можете найти на Web-сайте организации Bluetooth www.bluetooth.org.
На практике необходимость совпадения профилей обоих устройств не налагает столь сильных ограничений, как могло бы показаться на первый взгляд, по следующим двум причинам: 1) профили распространенных типов устройств, которые от возможности обмениваться между собой информацией могли бы только выиграть, обычно перекрываются друг с другом, и 2) несмотря на существование множества различных профилей, на практике лишь немногие из них доминируют в тех областях, которые представляют интерес с точки зрения использования мобильных устройств. Существуют распространенные профили для синхронизации информации, с которой работают PDA-устройства, а также профили для использования мобильного телефона в качестве сетевого концентратора.
Что немаловажно, существует также профиль, позволяющий использовать Bluetooth-устройство в качестве последовательного порта RS-232; название этого профиля соответствует его назначению — "Serial Port Profile". Благодаря этому такие устройства Bluetooth воспринимаются как СОМ-порты и могут поддерживать старые протоколы последовательной передачи данных. Многие устаревшие источники информации поддерживают традиционную связь через последовательный порт RS-232, и на протяжении ряда лет последовательные протоколы получили широкое распространение.