Собственная wi-fi архитектура для сетей 802.11

Иллюстрации

Показать все

Изобретение относится к области систем беспроводной инфраструктуры, в частности использование драйверов при приеме и обработке принятых пакетов. Технический результат, заключающийся в облегчении для пользователя конфигурирования беспроводного сетевого устройства, обеспечивается системой драйверов, которые осуществляют связь с сетевым стеком и сетевой интерфейсной платой (NIC), сервером станции, осуществляющим связь с драйвером станции и вызывающей стороной 802.1X или средством аутентификации 802.1X. Каждая плата NIC обеспечивает поддержку функциональных возможностей станции и/или точки доступа. Драйвер отбрасывает пакеты, которые были приняты, если пакет не был аутентифицирован и ассоциирован. Пакеты, которые были фрагментированы или зашифрованы, вновь собирают и дешифруют. Средство управления ассоциированием используется вместе со средством управления таблицей конфигурации для ассоциирования станций и точек доступа через пакеты управления. Средство управления принимает пакеты данных 802.1X от процессора пакетов и посылает их на сервер станции, который осуществляет связь с приложениями режима пользователя и вызывающей стороной 802.1X или средством аутентификации 802.1X, которые используются для аутентификации или деаутентификации станций и точек доступа. Для обеспечения связи между компонентами предусмотрены интерфейсы API. 4 н. и 27 з.п. ф-лы, 10 ил.

Реферат

Область техники, к которой относится изобретение

Данное изобретение относится в общем случае к беспроводной вычислительной конфигурации и возможностям соединения и, в частности, касается системной конфигурации и возможностей соединения, обеспечиваемых для беспроводных вычислений для сетей IEEE 802.11.

Предшествующий уровень техники

Многие предприятия осознали серьезные преимущества, связанные с функционированием сетевой вычислительной среды. Устанавливая локальные сети (LAN), предприятия дают возможность своим сотрудникам совместно использовать сетевые ресурсы, такие как принтеры, файловые серверы, банки модемов, серверы электронной почты и т.д., поддерживая возможности распределенных вычислений при наличии множества отдельных компьютеров-рабочих станций. В действительности, преимущества сетевых вычислений в настоящее время доступны для домашних вычислительных сред, поскольку все больше и больше семей начинают обзаводиться не одним, а несколькими компьютерами (ПК). Теперь, как в случае с офисом, сетевые ресурсы (например, принтер) члены одной семьи могут использовать совместно.

К сожалению, несмотря на все выгоды, которые предоставляют сети, их архитектура с фиксированным монтажом порождает ряд проблем, зачастую ограничивающих возможности пользователей выполнять вычисления более гибким способом. Например, многим пользователям сетевых компьютеров в настоящее время предоставляется возможность гибкого использования своих компьютеров всякий раз, когда они находятся в поездке, путем применения компьютеров уменьшенных размеров: лэптопов и ноутбуков. Однако, к сожалению, архитектура, физически реализованная с помощью проводных соединений, часто не позволяет множеству пользователей находиться в одном конкретном месте (например, в помещении для совещаний) из-за ограниченного количества портовых розеток для сетевых соединений, которые физически смонтированы в указанном конкретном помещении. Следовательно, хотя пользователь и имеет теоретическую возможность подсоединиться к сети из любого места, где предусмотрена розетка сетевого порта, физические особенности проводного монтажа часто ограничивают эту возможность. Помимо этого, даже если обеспечено достаточное количество выходных розеток, с точки зрения пользователя требование иметь сетевые кабели с длиной, достаточной для подсоединения к сетевой розетке, является весьма обременительным. Аналогично, затраты и трудности домашнего монтажа сетевых кабелей для обеспечения возможности связи с каждой комнатой в доме часто вынуждают ограничиться действующим кабелем, смонтированным и проведенным только в те фиксированные места, где в данный момент находятся компьютеры и сетевые ресурсы. Следовательно, такие системы с фиксированным проводным монтажом существенно ограничивают мобильные вычисления, возможность которых предоставляется портативными вычислительными устройствами, имеющимися сегодня на рынке.Осознав наличие серьезных ограничений, которые накладывает проводная архитектура LAN на мобильность и гибкость современных вычислительных операций, многие лидеры компьютерной индустрии разработали и реализуют в настоящее время беспроводные сети. Эти беспроводные сети позволяют существенно увеличить гибкость путем разрешения реально «мигрирующих» вычислений с любого места в рамках предприятия, охваченного беспроводной сетью LAN. Пользователи больше не должны иметь при себе кабели для сетевых соединений и ограничивать себя вычислениями только в тех местах, где предусмотрены розетки для сетевых соединений. Эта беспроводная сетевая технология также дает значительные преимущества пользователям домашних компьютеров, которые теперь могут иметь доступ к сети в полном объеме из любого места в доме, откуда это удобно сделать.

Огромные и неоспоримые преимущества, которые дают беспроводные сети, обусловили их все более широкое развертывание в аэропортах, отелях, школах и т.д. Кроме того, при возрастающей популярности переносных вычислительных устройств можно предвидеть развертывание указанных беспроводных сетей в торговых пассажах, гастрономах и т.п. Кроме того, вычисления в беспроводных глобальных сетях с зонами покрытия, соизмеримыми с зонами, которые в настоящее время широко используются в беспроводных телефонных системах, позволяют выполнять мигрирующие вычисления независимо от физического местоположения пользователя. Таким образом, мигрирующие компьютерные пользователи имеют возможность обращения к своим сетевым ресурсам и поддерживать высокую производительность вычислений в ожидании самолета, пересадки на поезд и т.д.

Осознание того, что совместимость различных провайдеров сетевых услуг, которые могут развернуть эти беспроводные сети, играет огромную роль в обеспечении непрерывного развития и применения указанной технологии, привело к разработке различных промышленных стандартов. Одним из таких стандартов, разработанных Институтом инженеров по электротехнике и электронике (IEEE), является стандарт IEEE 802.11. Согласно этому стандарту беспроводной связи мигрирующие компьютерные пользователи могут создавать свои собственные сети в режиме «ad hoc» (связь между многочисленными станциями устанавливается напрямую) либо могут подсоединиться к уже созданной сети в режиме инфраструктуры. В режиме «ad hoc» сеть не имеет структуры, а каждый ее элемент обычно имеет возможность осуществлять связь с любым другим элементом. Эти сети «ad hoc» могут быть созданы всякий раз, когда группа пользователей хочет осуществлять связь между собой для совместного использования информации, к примеру, во время совещания. Пример такой специально сформированной сети согласно стандарту IEEE 802.11 показан на фиг.8. Как можно видеть из этой упрощенной фигуры, множество пользователей 802, 804, 806 осуществляют связь друг с другом в собственной свободно сформированной сети 800, при этом не требуется, чтобы все они были связаны между собой жесткими проводными соединениями.

Второй тип сетевой структуры стандарта IEEE 802.11 известен как сеть с инфраструктурой, которая показана на фиг.9 в упрощенном виде. Как можно видеть из этой фигуры, в показанной архитектуре используется по меньшей мере одна фиксированная сетевая точка доступа (АР) 900, через которую пользователь мобильного компьютера 902, 904, 906 может осуществлять связь с участниками 908, 910 сети и ресурсами 912, 914. Эти сетевые точки 900 доступа могут быть подсоединены к проводным линиям LAN для расширения возможностей беспроводной сети посредством соединения указанных беспроводных узлов с другими проводными узлами в созданной сети 916 с помощью мостов, а архитектура ограничивается одной точкой доступа с глубиной в один уровень.

При разработке и развертывании беспроводных сетевых устройств и инфраструктур у потребителей и предприятий появляется все больше возможностей для реализации преимуществ мобильных вычислений, совместной работы и информационного обмена. Сотрудникам предприятий, находящимся в поездках, больше не потребуется иметь при себе ассортимент различных кабелей и долго искать доступный порт данных, чтобы просто подсоединиться к сети для получения сообщений электронной почты, загрузки файлов или обмена информацией. Компании и домашние пользователи больше не привязаны к местам, где они могут получить доступ к своим сетям путем нахождения на стене гнезд сети Ethernet. Участники совещаний и компании друзей могут теперь создавать свои собственные сети для конкретного случая без необходимости кабельных соединений между ними или входа в какую-либо уже существующую сеть.

К сожалению, несмотря на гибкость и значительные преимущества, которые дает использование беспроводных сетей в вычислительной среде, аппаратные средства для реализации подобных сетей оказываются достаточно сложными и дорогостоящими. Например, беспроводная сетевая интерфейсная плата (NIC), которая предоставляет компьютерам средство для беспроводной связи, должна поддерживать большинство, если не все функции, определенные в спецификации 802.11. Будучи однажды установленной пользователем, эта беспроводная плата должна быть либо переконфигурирована, либо заменена при изменении стандарта беспроводной связи. В настоящее время конфигурирование и обновление беспроводной NIC требует от пользователя достаточно высокой квалификации.

Кроме того, отрицательно сказываются присущие современным беспроводным сетям и мобильным вычислительным устройствам ограниченные возможности формирования беспроводной сети с использованием точек доступа, функционирующих на множестве уровней. На фиг.10 показано ограничение существующих систем. Обычная точка 1000 доступа, подсоединенная к проводной сети 1002, имеет ограниченную пропускную способность для связи с устройством 1014, подсоединенным к точке 1006 доступа. Устройства 1006-1012, осуществляющие связь с точками 1004, 1014 проводного доступа, могут направлять пакеты в точку 1000 проводного доступа и получить возможность соединения с проводной сетью 1002.

Сущность изобретения

Предлагается программная система беспроводной инфраструктуры, основанная на программном обеспечении. Система имеет драйвер станции, осуществляющий связь с сетевым стеком и сетевой интерфейсной платой (NIC), сервер станции, осуществляющий связь с драйвером станции и вызывающей стороной 802.1Х, драйвер точки доступа, осуществляющий связь с платой NIC и либо с сетевым мостом, либо сетевым стеком, который осуществляет связь с проводной сетью, и сервер точки доступа, осуществляющий связь с драйвером точки доступа и средством аутентификации 802.1Х. Каждая плата NIC обеспечивает поддержку функциональных возможностей станции и/или точки доступа.

И драйвер станции, и драйвер точки доступа имеют средство фильтрации, которое отбрасывает принятые пакеты, если пакет не был аутентифицирован и ассоциирован. Процессор пакетов принимает пакеты, которые были аутентифицированы и ассоциированы, от средства фильтрации и повторно собирает пакеты, которые были фрагментированы. Средство управления ассоциированием используют вместе со средством управления таблицей конфигурации для ассоциирования станций и точек доступа через пакеты управления. Второе средство фильтрации действует как переключатель, принимая пакеты данных от процессора пакетов и отбрасывая пакеты данных, посланные неаутентифицированным посылающим устройством, и отправляет пакеты данных, посланные аутентифицированным посылающим устройством, в первый сетевой стек. Средство управления принимает пакеты данных 802.1Х от процессора пакетов и посылает их на сервер станции, который осуществляет связь с приложениями режима пользователя и либо с вызывающей стороной 802.1Х, либо со средством аутентификации 802.1Х, которые используются для аутентификации и деаутентификации других станций и точек доступа.

Также обеспечены интерфейсы прикладного программирования (API), которые предоставляют способы осуществления связи между приложениями режима пользователя и уровнями сетевого стека, такими как станции и точки доступа и сетевая интерфейсная плата.

Дополнительные признаки и преимущества изобретения станут очевидными из последующего подробного описания иллюстративных вариантов его осуществления, сопровождающегося ссылками на сопроводительные чертежи.

Перечень чертежей

Хотя в прилагаемой формуле изобретения подробно изложены признаки настоящего изобретения изобретение, вместе с его задачами и преимуществами лучше всего может быть понято из последующего подробного описания, рассматриваемого вместе с сопроводительными чертежами, на которых:

фиг.1 - блок-схема, иллюстрирующая в целом примерную среду, в которой функционирует настоящее изобретение;

фиг.2 - блок-схема, иллюстрирующая в общих чертах примерную компьютерную систему, в которой находится настоящее изобретение;

фиг.3 - блок-схема, иллюстрирующая в общих чертах архитектуру станции и точки доступа согласно настоящему изобретению в компьютерной системе по фиг.2;

фиг.4 - блок-схема станции согласно настоящему изобретению;

фиг.5 - блок-схема точки доступа согласно настоящему изобретению;

фиг.6 - блок-схема, иллюстрирующая поток данных и команд в точке доступа согласно настоящему изобретению;

фиг.7 - блок-схема, иллюстрирующая поток данных и команд на станции согласно настоящему изобретению;

фиг.8 - иллюстрация беспроводной сети «ad hoc» IEEE 802.11;

фиг.9 - иллюстрация сети с беспроводной инфраструктурой IEEE 802.11;

фиг.10 - блок-схема, иллюстрирующая в общих чертах ограничение известных точек доступа и станций.

Подробное описание изобретения

Обратимся к чертежам, где одинаковые ссылочные позиции относятся к одинаковым элементам, причем изобретение продемонстрировано в виде реализации в подходящей среде. Хотя это и не является обязательным условием, но изобретение описывается в общем контексте машиноисполняемых инструкций, таких как программные модули, выполняемые вычислительным устройством. Обычно программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют определенные абстрактные типы данных. Кроме того, специалистам в данной области техники понятно, что изобретение можно практически реализовать с помощью других компьютерных системных конфигураций, включая переносные устройства, мультипроцессорные системы, электронные устройства на базе микропроцессоров или электронные устройства, программируемые пользователем, сетевые персональные компьютеры, мини-компьютеры, универсальные компьютеры и тому подобное. Изобретение можно также практически реализовать в распределенных вычислительных средах, где задачи выполняются устройствами дистанционной обработки, которые связаны между собой сетью связи. В распределенной вычислительной среде программные модули могут находиться как в локальных, так и в удаленных запоминающих устройствах.

На фиг.1 представлен пример подходящей операционной среды 20, в которой может функционировать изобретение. Одна точка 22 доступа соединена проводами (то есть имеет фиксированный монтаж) с проводной сетью 24, такой как сеть LAN. Другие точки 26-38 доступа расположены в любых местах, причем эти точки доступа осуществляют беспроводную связь с проводной точкой 22 доступа и друг с другом. Настоящее изобретение предоставляет станциям 40-44 возможность беспроводной связи с проводной точкой 22 доступа и может направлять пакеты в проводную точку доступа и получать возможность соединения с сетью Интернет. Станции 46-50 осуществляют беспроводную связь с беспроводной точкой 26 доступа и могут направлять пакеты в проводную точку 22 доступа, а также получать возможность соединения с проводной сетью 24. Помимо этого, настоящее изобретение предоставляет станциям 46-50 возможность направлять пакеты станциям 52-56 беспроводным способом через точки 28, 32 беспроводного доступа. Станция 52 осуществляет беспроводную связь с точкой 28 беспроводного доступа, а станции 54-56 осуществляют беспроводную связь с точкой 32 беспроводного доступа. Станция 58 осуществляет беспроводную связь с точкой 30 беспроводного доступа. Станции 52 и 58 направляют пакеты на другие станции в сети, причем направление пакета в точку 22 проводного доступа не требуется. Например, станция 58 может посылать пакеты в устройство 56 через точки 30-26-28-32 доступа.

На фиг.2 показан пример подходящей вычислительной системной среды 100, в которой можно реализовать данное изобретение. Вычислительная системная среда 100 является лишь одним из примеров подходящей вычислительной среды и не претендует на какое-либо ограничение объема использования или функциональных возможностей изобретения. Вычислительную среду 100 не следует интерпретировать таким образом, будто она зависит или требует наличия какого-либо одного компонента либо комбинации компонентов, показанных в примере иллюстративной операционной среды 100.

Изобретение может работать вместе со многими другими вычислительными средами или конфигурациями общего или специального назначения. Примеры широко известных вычислительных систем, сред и/или конфигураций, которые могут подойти для использования вместе с изобретением, включают в себя, но не только, персональные компьютеры, компьютеры-серверы, переносные устройства или лэптопы, микропроцессорные системы, системы на базе микропроцессоров, компьютерные телеприставки, электронные устройства, программируемые пользователем, сетевые персональные компьютеры, мини-компьютеры, универсальные компьютеры, распределенные вычислительные среды, которые содержат любую из вышеуказанных систем или устройств и т.п.

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

Обратимся к фиг.2, где представлен пример системы для реализации изобретения, содержащей вычислительное устройство общего назначения в виде компьютера 110. Компоненты компьютера 110 могут включать в себя, но не только, блок 120 обработки, системную память 130 и системную шину 121, которая соединяет различные системные компоненты, включая системную память, с блоком 120 обработки. Системная шина 121 может относиться к любому из нескольких типов шинных структур, включая шину памяти или контроллер памяти, периферийную шину и локальную шину с использованием любой из множества различных шинных архитектур. Как пример, но не ограничение, указанные архитектуры включают в себя шину архитектуры промышленного стандарта (ISA), шину с микроканальной архитектурой (MCA), шину с усовершенствованной архитектурой ISA (EISA), локальную шину Ассоциации по стандартам видеооборудования (VESA) и шину для межсоединения периферийных компонентов (PCI), известную также как шина Mezzanine.

Компьютер 110 обычно включает в себя различные машиночитаемые носители. Машиночитаемый носитель может представлять собой любой пригодный носитель, к которому компьютер 110 может осуществить доступ, причем такой носитель может включать в себя как энергозависимый, так и знергонезависимый носитель, а также съемный и несъемный носитель. В качестве примера, но не ограничения, машиночитаемый носитель, может содержать компьютерную запоминающую среду и среду связи. Компьютерная запоминающая среда включает в себя как энергозависимый, так и энергонезависимый, съемный и несъемный носитель, реализованный любым способом или по любой технологии, используемой для хранения такой информации, как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерная запоминающая среда включает в себя, но не только, ОЗУ (RAM), ПЗУ (ROM), электрически стираемое программируемое ПЗУ (EEPROM), флэш-память либо другую технологию памяти, компакт-диск (CD-ROM), цифровой универсальный диск (DVD) либо другие оптические дисковые запоминающие устройства, магнитные кассеты, магнитную ленту, магнитное дисковое запоминающее устройство либо другие магнитные запоминающие устройства или любой другой носитель, который можно использовать для хранения требуемой информации и к которому компьютер 110 может осуществить доступ. Среда связи обычно воплощает машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как сигнал несущей иди другой механизм транспортировки, и включает в себя любую среду для доставки информации. Термин «модулированный сигнал данных» означает сигнал, одна или несколько характеристик которого устанавливается или изменяется таким образом, чтобы закодировать информацию в этом сигнале. В качестве примера, но не исключения, среда связи включает в себя проводную среду, такую как проводная сеть или прямое проводное соединение, а также беспроводную среду, такую как акустическая, радиочастотная, инфракрасная и другая беспроводная среда. В состав машиночитаемых носителей следует также включить комбинации из любых вышеуказанных носителей (сред).

Системная память 130 включает в себя компьютерную среду хранения в виде энергозависимой и/или энергонезависимой памяти, такой как постоянное запоминающее устройство (ROM) 131 и оперативное запоминающее устройство (RAM) 132. Обычно в памяти ROM 131 хранится базовая система 133 ввода/вывода (BIOS), содержащая базовые процедуры, содействующие переносу информации между элементами в компьютере 110, к примеру, во время запуска. Память RAM 132 обычно содержит данные и/или программные модули, которые непосредственно доступны и/или обрабатываются в блоке 120 обработки. В качестве примера, но не ограничения, на фиг.2 показана операционная система 134, прикладные программы 135, другие программные модули 136 и данные 137 программ.

Компьютер 110 может также включать в себя другие съемные/несъемные, энергозависимые/энергонезависимые носители компьютерной среды хранения. Исключительно в качестве примера на фиг.2 показан накопитель 141 на жестких дисках, который считывает или записывает данные на несъемный, энергонезависимый магнитный носитель, накопитель 151 на магнитных дисках, который считывает или записывает данные на съемный энергонезависимый магнитный диск 152, и накопитель 155 на оптических дисках, который считывает или записывает данные на съемный, энергонезависимый оптический диск 156, такой как CD-ROM, либо другой оптический носитель. К другим съемным/несъемным, энергозависимым/энергонезависимым носителям компьютерной среды хранения, которые можно использовать в иллюстративной операционной среде, относятся, но не только, кассеты с магнитной лентой, платы флэш-памяти, цифровые универсальные диски, цифровая видеолента, твердотельное ОЗУ, твердотельное ПЗУ и т.п. Накопитель 141 на жестких дисках обычно подсоединен к системной шине 121 через интерфейс несъемного запоминающего устройства, такой как интерфейс 140, а накопитель 151 на магнитных дисках и накопитель 155 на оптических дисках обычно подсоединены к системной шине 121 с помощью интерфейса съемного запоминающего устройства, такого как интерфейс 150.

Накопители и ассоциированные с ними носители компьютерной среды хранения, обсужденные выше и показанные на фиг.2, обеспечивают хранение машиночитаемых инструкций, структур данных, программных модулей и других данных для компьютера 110. На фиг.2, например, показано, что в накопителе 141 на жестких дисках хранятся операционная система 144, прикладные программы 145, другие программные модули 146 и данные 147 программ. Заметим, что эти компоненты могут либо совпадать, либо отличаться от операционной системы 134, прикладных программ 135, других программных модулей 136 и данных 137 программ. Операционная система 144, прикладные программы 145, другие программные модули 146 и данные 147 программ заданы здесь под другими номерами, что как минимум говорит о том, что они являются другими копиями. Пользователь может ввести команды и информацию в компьютер 110 через устройства ввода, такие как клавиатура 162 и указательное устройство 161, обычно - мышь, шаровой манипулятор или сенсорная клавиатура. Другие устройства ввода (не показаны) могут включать в себя микрофон, джойстик, игровую панель, спутниковую параболическую антенну, сканер и т.п. Эти и другие устройства ввода часто подсоединяют к блоку 120 обработки через интерфейс 160 пользовательского ввода, который подсоединен к системной шине, но могут быть подсоединены с помощью других интерфейсных и шинных структур, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB). К системной шине 121 через интерфейс, такой как видеоинтерфейс 190, также подсоединен монитор 191 или устройство отображения другого типа. В дополнение к монитору компьютеры могут также включать в себя другие периферийные устройства вывода, такие как динамики 197 и принтер 196, который может быть подсоединен через периферийный интерфейс 195 вывода.

Компьютер 110 может работать в сетевой среде, используя логические соединения с одним или несколькими удаленными компьютерами, такими как удаленный компьютер 180. Удаленный компьютер 180 может представлять собой другой персональный компьютер, сервер, маршрутизатор, сетевой персональный компьютер, одноранговое устройство или другой узел общей сети и обычно включает в себя множество или все элементы, описанные выше применительно к персональному компьютеру 110, хотя на фиг.2 показано только запоминающее устройство 181. Логические соединения, изображенные на фиг.2, включают в себя локальную сеть (LAN) 171 и глобальную сеть (WAN) 173, но могут также включать другие сети. Такие сетевые среды широко распространены в офисах, корпоративных компьютерных сетях, интрасетях и сети Интернет.

При использовании в сетевой среде LAN персональный компьютер 110 подсоединен к LAN 171 через сетевой интерфейс или адаптер 170. При использовании в сетевой среде WAN компьютер 110 обычно включает в себя модем 172 или другое средство для установления связи через сеть WAN 173, такую как Интернет. Модем 172, который может быть внутренним или внешним, может быть подсоединен к системной шине 121 через интерфейс 160 пользовательского ввода или другой подходящий механизм. В сетевой среде программные модули, изображенные применительно к персональному компьютеру 110, либо их части могут храниться в удаленном запоминающем устройстве. В качестве примера, но не ограничения, на фиг.2 показаны удаленные прикладные программы 185, располагающиеся в запоминающем устройстве 181. Очевидно, что показанные сетевые соединения являются лишь примерами и между компьютерами можно использовать другие средства установления линий связи.

В последующем описании изобретение описывается со ссылками на действия и символические представления операций, выполняемых одним или несколькими компьютерами, если не указано иное. В силу этого становится понятно, что указанные действия и операции, которые иногда определяются как машиноисполняемые операции, включают в себя манипулирование, выполняемое блоком обработки компьютера, над электрическими сигналами, представляющими данные в структурированной форме. В результате такого манипулирования происходит преобразование данных или их сохранение в ячейках системы памяти компьютера, что реконфигурирует или, иными словами, изменяет работу компьютера способом, который хорошо понятен специалистам в данной области техники. Структуры данных, в которых поддерживаются данные, являются физическими ячейками памяти, которые имеют конкретные свойства, определенные форматом данных. Однако, хотя изобретение описывается в вышеупомянутом контексте, это не накладывает каких-либо ограничений; следовательно, специалистам в данной области техники должно быть очевидно, что различные описанные здесь действия и операции могут быть также реализованы в аппаратных средствах. В изобретении описывается программная точка доступа (AP) в беспроводной сети LAN, работающей в режиме инфраструктуры, и программной базовой станции (станции) либо в беспроводной LAN, работающей в режиме инфраструктуры, либо в беспроводной LAN, работающей в режиме «ad hoc». Для ясности в изобретении точка доступа АР и станция описываются отдельно. Их реализация может быть интегрирована в единой инфраструктуре, которая позволяет обеспечить динамическую конфигурацию AP или станции через интерфейс пользователя.

Обратимся к фиг.3, где показаны две категории служб 802.11. Эти категории представляют собой службу станции и службу распределенной системы. К службам 802.11 относятся службы аутентификации и ассоциирования, деаутентификации, дизассоциирования, распределения, интеграции, конфиденциальности, повторного ассоциирования и доставки блоков данных службы (SDU) уровня управления доступом к среде (MAC) (MSDU). К службам станции относятся службы аутентификации, деаутентификации, конфиденциальности и доставки MSDU. Службы распределенной системы включают службы ассоциирования, дизассоциирования, распределения, интеграции и повторного ассоциирования. Станции 200 осуществляют связь с точками 300 доступа беспроводным путем.

В последующем описании описывается архитектура с драйвером станции и драйвером точки доступа в виде отдельных драйверов. Хотя эти драйверы описаны как отдельные драйверы, понятно, что они могут быть объединены в одном драйвере. На фиг.4 показана общая архитектура станции согласно настоящему изобретению. Сетевая интерфейсная плата (NIC) 202 стандарта 802.11 подсоединена к беспроводной сети LAN 204. Когда принимается пакет 802.11, плата NIC переадресовывает пакеты 802.11 на привязанный к ней протокол, который реализован драйвером 206 станции. При посылке пакета 802.11 плата NIC 202 принимает пакеты 802.11 от станционного драйвера 206 и посылает их адресатам через беспроводную LAN 204. Плата NIC 202 может также выполнять определенные аппаратные операции 802.11, как описано ниже, если NIC 202 имеет блок обработки, в котором она может выполнить категоризацию пакетов 802.11 вместо их индикации для вышерасположенных протоколов, а также самостоятельно формировать пакеты 802.11.

Драйвер 206 станции является виртуальным мини-портом 802.3. Он принимает пакеты 802.11 от NIC 202 и преобразует некоторые пакеты 802.11 в пакеты 802.3 перед индикацией их для вышерасположенных протоколов 208 (802.3), таких как TCP/IP. Драйвер 206 также выполняет индикацию пакетов 802.1Х для вызывающей стороны 210 стандарта 802.1Х через «вызовы вверх» (по стеку протоколов) (upcalls) к серверу 212 станции. По тракту посылки драйвер 206 принимает пакеты 802.3 от протоколов 802.3 208 и выполняет их преобразование в пакеты 802.11 перед переводом их в NIC 202. Драйвер 206 также посылает пакеты 802.1Х, принятые от вызывающей стороны 802.1Х 210 через сервер 212 станции. В дополнение к преобразованию пакета 802.3/802.11 драйвер 206 выполняет другие операции станции 802.11 программными средствами, в рамках которых он может выполнить категоризацию пакетов 802.11 вместо их индикации для вышерасположенных протоколов, а также самостоятельно сгенерировать пакеты 802.11.

Вызывающая сторона 802.1Х 210 посылает пакеты 802.1Х, адресованные средству аутентификации 802.1Х, и принимает их от этого средства аутентификации через сервер 212 станции. Сервер 212 станции действует как проводник между всеми заинтересованными приложениями режима пользователя (как вызывающая сторона 802.1Х 210, администратор/монитор 214 станции и т.д.) и драйвером 206 станции. Сервер 212 предоставляет интерфейсы прикладных программ (API), через которые заинтересованные приложения режима пользователя могут выполнять вызовы, чтобы выполнить «вызов вниз» (по стеку протоколов) (down call) к драйверу 206 станции. Сервер 212 станции также принимает таблицу функций от каждого заинтересованного приложения режима пользователя, когда это приложение зарегистрировано на сервере 212. Сервер 212 использует эту таблицу функций для проводки «вызова вверх» от драйвера 206 станции к адресуемому приложению режима пользователя. Динамически подсоединяемая библиотека (DLL) 216 на стороне клиента станции обеспечивает возможность дистанционного взаимодействия с интерфейсами API, предоставленными сервером.

На фиг.5 показана общая архитектура точки 300 доступа согласно настоящему изобретению. Плата NIC на физическом уровне 802.11 302 подсоединена к беспроводной сети LAN 204. При приеме пакетов 802.11 плата NIC 302 перенаправляет пакеты 802.11 на привязанный к ней протокол, реализуемый драйвером AP 304. По тракту посылки плата NIC 302 принимает пакеты 802.11 от драйвера AP 304 и посылает их через беспроводную LAN 204. Плата NIC 302 также выполняет конкретные аппаратные операции 802.11, в ходе которых она может выполнить категоризацию пакетов 802.11 вместо их индикации для вышерасположенных протоколов, а также самостоятельно генерировать пакеты 802.11.

Драйвер 304 точки доступа (АР) является виртуальным минипортом 802.3. Он принимает пакеты 802.11 от NIC 302 и преобразует некоторые пакеты 802.11 в пакеты 802.3 перед их индикацией для необязательного моста 306. Драйвер 304 АР также выполняет индикацию пакетов 802.1Х для средства 308 аутентификации 802.1Х через «вызовы вверх» на сервер 310 АР. По тракту посылки драйвер 304 АР принимает пакеты 802.3 от моста 306 и выполняет их преобразование в пакеты 802.11 перед переводом их в NIC 302. Драйвер 304 АР также высылает пакеты 802.1Х, принятые от средства 308 аутентификации 802.1Х через сервер 310 АР. В дополнение к преобразованию пакетов 802.3 в 802.11 и 802.11 в 802.3 драйвер 304 АР выполняет другие операции точки доступа 802.11 программными средствами, в ходе которых он может выполнить категоризацию пакетов 802.11 вместо их индикации для вышерасположенных протоколов, а также самостоятельно генерировать пакеты 802.11.

Плата NIC 802.3 312 подсоединена к проводной сети LAN 314. Мост 306 работает поверх платы NIC 802.3 и драйвера 304 IP. Средство 308 аутентификации 802.1Х посылает пакеты 802.1Х, адресованные вызывающей стороне 802.1Х 210, и принимает пакеты 802.1Х от вызывающей стороны 802.1Х 210 через сервер 310 АР. Средство 308 аутентификации 802.1Х посылает пакеты 802.1Х, адресованные серверу 210 аутентификации 802.1Х (не показан), и принимает пакеты 802.1Х от сервера аутентификации 802.1Х через мост 306, который в конечном счете пропускает эти пакеты на NIC 802.3 312 либо принимает их от нее. Вновь ненадолго обратимся к фиг.3, где средство 308 аутентификации 802.1Х может установить связь с базой 400 данных администратора учетных данных в системе защиты (SAM) и клиентом 402 службы аутентификации удаленных пользователей по коммутируемым каналам связи (Radius). База 400 данных SAM может посылать сообщения на сервер 404 Passport (сервер аутентификации, разработанный Microsoft) или сервер 406 Radius, которые могут совместно функционировать в одном и том же блоке или через сеть.

Сервер 310 АР действует как канал между всеми заинтересованными приложениями для режима пользователя (как средство 308 аутентификации 802.1Х, администратор/монитор 318 АР и т.д.) и драйвером 304 АР. Сервер 310 АР предоставляет интерфейсы API, через которые заинтересованные приложения режима пользователя могут выполнять вызовы для формирования «вызова вниз» к драйверу 304 АР. Сервер 310 АР также принимает таблицу функций от каждого заинтересованного приложения режима пользователя, когда приложение регистрирует само себя в сервере 310 АР. Сервер 310 АР использует эту таблицу функций для проводки «вызова вверх» от драйвера 304 АР до адресуемого приложения режима пользователя. DLL 320 стороны клиента АР предоставляет возможность дистанционного взаимодействия с интерфейсами API, предоставленными сервером 310 АР.

Обратимся теперь к фиг.6 и 7, со ссылками на которые будет описана маршрутизация пакетов 802.11 на станции 200 и в точке 300 доступа. Для объяснения этого будет описана маршрутизация в точке доступа. Как только эта маршрутизация будет описана, будут описаны функции, которые выполняют платы NIC 202, 302, и функции, которые выполняют драйвер 304 АР и станционный драйвер 206.

После приема пакета 802.11 плата NIC 302 посылает индикацию 600 о приеме пакета 802.11, которая уведомляет драйвер 304 АР о том, что был принят пакет 802.11. Средство 602 фильтрации определяет, должен ли данный пакет быть отброшен либо необходима его индикация для вышерасположенных протоколов, в зависимости от ассоциированного состояния этого пакета. Состояние пакета указывает тип пакета и состояние, поддерживаемое отправителем пакета, которое указывается в таблице ассоциаций. Выполняется индикация пакетов от станций (и других точек доступа) для вышерасположенных протоколов, которые были правильно аутентифицированы и ассоциированы. Пакеты данных от станций (и точек доступа), которые не были правильно аутентифицированы или ассоциированы, отбрасываются. Пакеты управления 802.11 перенаправляются вышерасположенным протоколам на обработку, выполняемую средством 608 управления ассоциированием, если пользователь не реализовал вариант раннего отказа от сервисной проверки по конкретным MAC-адресам для отбрасывания всех пакетов.

Процессор 604 пакетов принимает пакет и повторно собирает