ОБНАРУЖЕНИЕ ВОЗМОЖНОСТЕЙ СИСТЕМЫ ДЛЯ ОПРЕДЕЛЕННОЙ ПРОГРАММНЫМИ СРЕДСТВАМИ РАДИОСВЯЗИ
DETECTION OF SYSTEM CAPABILITIES FOR RADIO COMMUNICATION DETERMINED BY PROGRAMME TOOLS

Область техники, к которой относится изобретение
Настоящее изобретение относится к способам и устройствам для определения возможностей (к примеру, аппаратных и программных) компьютерной системы относительно программно-определяемой радиоподсистемы.
Уровень техники
Беспроводные технологии для вычислительных систем постоянно изменяются и совершенствуются. Новые беспроводные протоколы появляются каждый год и направлены на разрешение новых проблем или более эффективное разрешение старых проблем. По мере того, как появляются новые технологии, реализующие новые протоколы, растет спрос на вычислительные устройства, которые поддерживают все больше протоколов.
Устройства, имеющие возможность связи с использованием одной или более беспроводных технологий, упоминаются как радиостанции. В ранних реализациях радиосвязи поддержка большего количества протоколов требовала больше аппаратных средств для того, чтобы поддерживать эти протоколы, поскольку каждый протокол зависел от конкретных аппаратных средств к примеру, усилителей, антенн, фильтров, и т.д. для поддержки. Больше аппаратных средств, в свою очередь, требовало больше пространства и больше мощности и возможно еще больше аппаратных средств для того, чтобы справляться с сигнальными помехами между компонентами.
Соображения эффективности привели к разработке новых реализаций радиосвязи, которые переводят некоторые функции от выполнения в аппаратных средствах к выполнению в программном обеспечении. Эти новые реализации известны как программно-определяемая радиоподсистема (SDR). В некоторых случаях, несколько протоколов беспроводной связи могут поддерживаться посредством одного набора аппаратных средств.
Раскрытие изобретения
Заявители принимают во внимание, что, по мере того как доверие к SDR возрастает, множество потенциальных вариантов может быть доступно пользователю для осуществления беспроводной связи. Заявители принимают во внимание желательность предоставления возможности обнаруживать возможности компьютера пользователя для того, чтобы определять то, допускает ли он поддержку одного или более беспроводных протоколов.
В связи с вышеизложенным, варианты осуществления настоящего изобретения направлены на процесс проверки возможностей вычислительного устройства (включая, например, аппаратные и/или программные возможности), чтобы определять, поддерживает ли оно конкретный беспроводной протокол. Методы для определения совместимости вычислительного устройства могут включать в себя сравнение списков требований протокола со списками возможностей системы и/или формирование тестовых сигналов посредством системы согласно протоколу.
В одном иллюстративном варианте осуществления получается первая информация, которая включает в себя требования для связи устройства согласно протоколу беспроводной связи, и получается вторая информация, по меньшей мере, об одной возможности вычислительного устройства, причем второй информации достаточно для того, чтобы определять, способно ли вычислительное устройство реализовать программно-определяемую радиоподсистему, которая способна осуществлять связь согласно протоколу беспроводной связи. На основе первой и второй информации определяется то, способно ли вычислительное устройство реализовать программно-определяемую радиоподсистему, которая способна осуществлять связь согласно протоколу беспроводной связи.
В другом варианте осуществления предоставляется компьютер, который включает в себя программируемые схемы, программное обеспечение, кодированное на машиночитаемом носителе, чтобы программировать схемы, для того чтобы реализовать программно-определяемую радиоподсистему, и модуль проверки, чтобы определять, позволяет ли программно-определяемая радиоподсистема осуществлять связь согласно указанному протоколу беспроводной связи.
Краткое описание чертежей
На чертежах:
Фиг.1 является схемой иллюстративной среды компьютерной системы, в которой могут быть реализованы варианты осуществления изобретения;
Фиг.2 является примерным вычислительным устройством, которое может использоваться в соответствии с вариантами осуществления изобретения;
Фиг.3 является блок-схемой иллюстративного процесса
обнаружения, в соответствии с одним вариантом осуществления изобретения, поддерживается ли указанный беспроводной протокол посредством программного обеспечения и аппаратных средств вычислительного устройства;
Фиг.4 является блок-схемой иллюстративного процесса обнаружения, на удаленном сервере, поддерживается ли указанный беспроводной протокол посредством программного обеспечения и аппаратных средств вычислительного устройства, в соответствии с одним вариантом осуществления изобретения;
Фиг.5 является блок-схемой иллюстративного процесса формирования тестовых сигналов согласно указанному беспроводному протоколу, чтобы определять, поддерживается ли протокол посредством программного обеспечения и аппаратных средств вычислительного устройства; и
Фиг.6 является одним примерным вычислительным устройством, которое может использоваться в соответствии с вариантами осуществления изобретения.
Осуществление изобретения
Заявители принимают во внимание, что традиционные реализации программно-определяемой радиоподсистемы ограничены по объему. В этих реализациях, определенная функциональность перемещена от аппаратных средств к программному обеспечению, такая как выбор полосы частот и уровня мощности, но она все еще базируется на конкретных аппаратных средствах, чтобы предоставлять радиосвязь и возможности соединения.
Заявители представляют себе усовершенствование систем SDR таким, чтобы оно имело все меньшую зависимость от специализированных аппаратных средств. На взгляд заявителей универсальные, наращиваемые аппаратные средства должны использоваться для того, чтобы поддерживать много протоколов, возможно, со значительным варьированием протоколов. Универсальные аппаратные средства могут поддерживаться посредством операционной системы (OS), которая должна играть большую роль в обработке данных, которые принимаются или должны передаваться. Вместо простых традиционных реализаций, OS или другое подходящее программное обеспечение может обрабатывать все части беспроводного протокола, включая выбор ширины полосы, разнос несущих и управление доступом к среде, что поясняется дополнительно ниже.
В традиционных реализациях аппаратной радиосвязи или SDR, новые аппаратные средства типично необходимы для вычислительного устройства, чтобы поддерживать новые протоколы. В SDR, как заявители представляют себе это, тем не менее, функциональность вычислительного устройства может быть расширена, например, посредством загрузки программного обеспечения, чтобы реализовывать выбранный беспроводной протокол, с веб-узла или, в другом примере, установки программного обеспечения, реализующего беспроводной протокол, с диска или другого подходящего машиночитаемого носителя. Следует принимать во внимание, что эти примеры являются просто иллюстративными, поскольку любой подходящий способ для копирования данных на машиночитаемые носители, доступные для вычислительного устройства, могут использоваться для загрузки в компьютер программного обеспечения, определяющего беспроводной протокол. Как только программное обеспечение, реализующее беспроводной протокол, установлено на вычислительном устройстве пользователя и активировано пользователем, OS вычислительного устройства может работать с драйверами SDR, чтобы конфигурировать аппаратные средства и программное обеспечение так, чтобы передавать и принимать сигналы согласно беспроводному протоколу.
Заявители принимают во внимание, что по мере того как доверие к SDR возрастает, множество потенциальных вариантов может быть доступно пользователю для осуществления беспроводной связи. Некоторые из этих вариантов могут поддерживаться посредством компьютера пользователя, тогда как другие могут не поддерживаться. Следовательно, заявители принимают во внимание желательность предоставления возможности обнаруживать возможности компьютера пользователя для того, чтобы определять его способность поддерживать конкретный беспроводной протокол.
В связи с вышеизложенным, один вариант осуществления настоящего изобретения направлен на способ для обнаружения возможностей компьютера пользователя и определения того, поддерживается ли конкретный беспроводной протокол посредством этих возможностей.
Аспекты настоящего изобретения, описанные в данном документе, могут быть реализованы на любой из множества конфигураций компьютерной системы и не ограничены каким-либо конкретным типом конфигурации. Фиг.1 иллюстрирует один пример компьютерной системы, в которой могут быть реализованы аспекты изобретения, хотя другие также возможны.
Компьютерная система по Фиг.1 включает в себя сеть 100 связи, точку 102 беспроводного доступа, беспроводные вычислительные устройства 104-112 и проводные вычислительные устройства 114 и 116. Сеть 100 связи может быть любой подходящей средой или средами связи для осуществления связи между двумя или более компьютерами (например, сервером и клиентом), включая Интернет. Беспроводные клиентские устройства могут быть любым подходящим вычислительным устройством с поддержкой беспроводной связи. Несколько примерных мобильных вычислительных устройств показаны, включая портативный компьютер 106, персональное цифровое устройство 108 и смартфон 110. Помимо этого, типично стационарные устройства могут быть активированы для беспроводной связи, например, сервер 104 и компьютерный терминал 112. Каждый из этих мобильных и стационарных устройств находится в состоянии или допускает нахождение в состоянии беспроводной связи с точкой 102 беспроводного доступа, подключенной к сети 100 связи. Эта беспроводная связь дает возможность вычислительным устройствам осуществлять связь друг с другом или, через сеть 100 связи, с проводными устройствами 114 и 116.
Как упомянуто выше, варианты осуществления изобретения, описанные в данном документе, не ограничены осуществлением на практике с примерной системой, показанной на Фиг.1, и могут использоваться в системах, использующих любое число точек беспроводного доступа и/или вычислительных устройств. Помимо этого, хотя Фиг.1 показывает вычислительные устройства, поддерживающие беспроводную связь с точкой 102 беспроводного доступа, следует принимать во внимание, что варианты осуществления изобретения могут работать в сетях, в которых вычислительные устройства обмениваются данными друг с другом напрямую, а не через точку доступа. Кроме того, хотя Фиг.1 включает в себя сеть 100 связи с проводными устройствами 114 и 116, варианты осуществления изобретения могут использоваться в системах, которые не включают в себя проводную сеть.
Фиг.2 схематично показывает иллюстративное вычислительное устройство 200, которое может использоваться в соответствии с одним или более вариантов осуществления изобретения. Фиг.2 не имеет намерения являться иллюстрацией необходимых компонентов для вычислительного устройства, чтобы оперировать с вариантами осуществления изобретения, либо являться всеобъемлющей иллюстрацией. Вычислительное устройство 200 содержит аппаратные средства 202 клиентской части для радиоподсистемы, чтобы осуществлять связь в беспроводном режиме, к примеру, с точкой 102 беспроводного доступа или с другими устройствами. Устройство 200 также содержит сетевой адаптер 204, чтобы осуществлять связь по компьютерной сети, используя другие (возможно не беспроводные) способы, адаптер 206 дисплея, чтобы отображать информацию пользователю устройства, и входной адаптер 208, чтобы принимать команды от пользователя. Устройство 200 дополнительно содержит машиночитаемые носители 212 для сохранения данных, которые должны быть обработаны, и/или инструкций, которые должны выполняться посредством процессора 210. Процессор 210 активирует обработку данных и выполнение инструкций. Данные и инструкции могут быть сохранены на машиночитаемых носителях 212 и могут, например, активировать связь между компонентами вычислительного устройства 200. Данные и инструкции могут содержать операционную систему 214 и драйверы 216 для программно-определяемой радиоподсистемы. Драйверы 216 SDR могут содержать данные и инструкции, чтобы выполнять множество функций, типично осуществляемых в аппаратно-реализованных радиостанциях. Функции, выполняемые посредством драйверов 216, могут дополнять функции аппаратных средств 202 клиентской части для радиоподсистемы, так что все требуемые функции могут быть выполнены посредством комбинации аппаратных средств и программного обеспечения.
Аппаратные средства 202 клиентской части для радиоподсистемы могут быть любыми подходящими аппаратными средствами для радиосвязи, выполняющими любую комбинацию функций. Эти функции могут включать в себя модуляцию (т.е. смешение сигнала данных с высокочастотным передаваемым сигналом), фильтрацию (т.е. анализ данных из принимаемого сигнала), аналого-цифровое или цифро-аналоговое преобразование, формирование сигналов (т.е. передачу данных) и т.д. Клиентская часть 202 может быть реализована так, чтобы выполнять минимум требуемых функций, которые должны быть выполнены на аппаратном уровне, при этом оставшиеся функции реализуются посредством драйверов 216 SDR. Хотя настоящая функция не ограничена тем, чтобы использоваться с системами, которые принимают решение об ответственности аппаратных средств и программного обеспечения каким-либо конкретным способом. Клиентская часть 202 может содержать антенну, программируемый формирователь радиочастотных сигналов/декодер, который охватывает широкий спектр радиочастот, массив из быстродействующих аналого-цифровых преобразователей и/или параллельно-последовательных преобразователей/последовательно-параллельных преобразователей, чтобы преобразовывать аналоговые данные в удобные для машинной обработки байты и наоборот. Набор настраиваемых аналоговых фильтров также может использоваться так, чтобы соответствовать предписанным спектральным маскам. Эти аппаратные компоненты являются просто иллюстративными, поскольку изобретение не ограничено тем, чтобы использоваться в системах, имеющих какие-либо конкретные аппаратные средства.
Драйверы 216 SDR, в дополнение к выполнению функций радиосвязи, могут передавать инструкции управления в настраиваемые схемы клиентской части 202, чтобы настраивать аппаратные средства клиентской части 202 согласно конкретному беспроводному протоколу. В качестве одного примера, пользователь может сделать выбор активировать связь, имеющую ширину полосы в 83 МГц согласно стандарту Института инженеров по электронике и радиотехнике (IEEE) 802.11b. В качестве дополнительного примера, клиентская часть 202 может иметь конфигурируемую ширину полосы с диапазоном от 200 кГц до 500 МГц. В этом случае, драйверы 216 SDR могут отправлять управляющий сигнал (любым подходящим способом) в формирователь сигналов клиентской части 202, чтобы формировать сигналы, имеющие, среди других характеристик, полную ширину полосы в одну шестую от пропускной способности клиентской части (а именно, 83 МГц, установленные посредством стандарта IEEE 802.11b). Следует принимать во внимание, что варианты осуществления изобретения не ограничены ни тем, чтобы использовать с SDR, которые имеют конфигурируемую ширину полосы с вышеуказанным требуемым диапазоном, ни тем, чтобы использовать с SDR, которые конфигурируют аппаратные средства согласно любой конкретной методике, поскольку варианты осуществления изобретения могут использоваться с SDR, которые настраивают аппаратные компоненты любым подходящим способом.
Следует принимать во внимание, что один вариант осуществления изобретения направлен на то, чтобы использоваться с вычислительным устройством, имеющим программируемые схемы (например, аппаратные средства 202 клиентской части и драйверы 216 SDR), которые программируются посредством инструкций управления так, чтобы формировать и/или принимать сигналы согласно беспроводному протоколу. С другой стороны, эти программируемые схемы могут принимать любую подходящую форму и включать в себя любую совокупность непосредственно программируемых схем (к примеру, программируемого процессора) и схем, которые взаимодействуют с непосредственно программируемыми схемами, чтобы активировать связь согласно беспроводному протоколу.
Следует принимать во внимание, что варианты осуществления настоящего изобретения, описанные в данном документе, не ограничены осуществлением на практике типа вычислительного устройства, проиллюстрированного на Фиг.2, и что варианты осуществления изобретения могут быть практически реализованы с любым подходящим вычислительным устройством. Клиентская часть 202 и адаптеры 204-208 могут быть реализованы как любые подходящие аппаратные средства, программное обеспечение или комбинация вышеозначенного, и могут быть реализованы как один модуль или несколько модулей. Аналогично, машиночитаемые носители 212 могут быть реализованы как любая передающая среда или комбинация сред для хранения данных и инструкций для доступа посредством устройства обработки.
Как пояснено выше, в одном варианте осуществления изобретения, проверка возможностей предоставляется для определения возможностей вычислительного устройства 200 (к примеру, клиентской части 202 и операционной системы 214, включающей в себя драйверы 216 SDR) и совместимости вычислительного устройства с данным беспроводным протоколом. Следует принимать во внимание, что это определение может выполняться любым подходящим способом. Примерные методы обнаружения раскрываются в данном документе, но варианты осуществления изобретения не ограничены каким-либо конкретным методом реализации.
Фиг.3 иллюстрирует метод обнаружения, реализованный посредством одного варианта осуществления изобретения для использования с веб-узлом, с которого может быть загружено программное обеспечение, реализующее различные беспроводные протоколы. На этапе 300, пользователь выбирает программное обеспечение, чтобы загружать с веб-узла. На этапе 302, файл, содержащий требования протокола, загружается на вычислительное устройство. Этот файл может содержать информацию, описывающую минимальные требования, необходимые для того, чтобы определять, поддерживает ли вычислительное устройство протокол. На этапе 304, требования сравниваются с возможностями операционной системы 214. Возможности OS могут либо быть обнаружены во время сравнения, либо быть обнаружены заранее и сохранены для последующего сравнения. Примерные требования OS поясняются ниже. На этапе 306, инструментальное средство проверки возможностей определяет, удовлетворяет ли OS требованиям протокола. Если нет, на этапе 308 отображается сообщение, информирующее пользователя о том, что устройство не поддерживает выбранный протокол, и инструментальное средство завершает работу. Здесь, пользователь может перезапускать процесс на этапе 300 посредством выбора другого протокола с веб-узла.
Если определено на этапе 306, что требования OS удовлетворяются, процесс переходит к этапу 310, где требования беспроводного протокола сравниваются с возможностями клиентской части 202. Возможности клиентской части могут быть обнаружены во время сравнения или обнаружены заранее и сохранены для последующего сравнения. Любой подходящий метод может использоваться для обнаружения возможностей аппаратных средств. Например, принцип "включай и работай", который является популярной традиционной услугой для опрашивания аппаратных средств посредством операционной системы, чтобы идентифицировать аппаратные средства и их возможности, является примерным методом, хотя он служит просто для иллюстрации, поскольку возможны и другие методы. Поставщики аппаратных средств могут быть оповещены о возможностях, которые должны обнаруживаться, и могут создавать интерфейсы для того, чтобы предоставлять информацию о возможностях аппаратных средств любым подходящим способом. Примерные требования аппаратных средств поясняются ниже.
На этапе 312, процесс определяет, удовлетворяются ли требования протокола посредством клиентской части 202. Если нет, инструментальное средство переходит к этапу 308, на котором отображается сообщение, информирующее пользователя о том, что устройство не поддерживает выбранный протокол, и инструментальное средство завершает работу.
Если требования удовлетворяются, процесс переходит к этапу 314, где оставшаяся часть программного обеспечения, реализующая беспроводной протокол, загружается на вычислительное устройство. Информация, содержащая оставшуюся часть программного обеспечения, может варьироваться между различными вариантами осуществления изобретения и различными беспроводными протоколами. В некоторых примерах, информация может включать в себя имена пользователей, пароли и настройки качества обслуживания. Загруженная информация не ограничена какой-либо конкретной информацией, а может быть любой информацией, которую устройство может использовать при осуществлении связи согласно беспроводному протоколу.
В альтернативных вариантах осуществления, вместо загрузки дополнительной информации на этапе 314, процесс может просто отображать сообщение пользователю, подтверждающее, что выбранный протокол поддерживается посредством системы пользователя.
В варианте осуществления по Фиг.3, проверка возможностей инициируется в ответ на выбор конкретного протокола для установки с носителя или среды, сохраняющей программное обеспечение, реализующее один или более беспроводных протоколов. Процесс проверки возможностей не ограничен в этом отношении и может обнаруживать возможности системы в ответ на другие события. Например, пользователю может быть желательным знать, поддерживается ли протокол, без выбора его установки. В другом примере пользователю может быть желательным знать, какие из множества протоколов поддерживаются вычислительным устройством.
Для варианта осуществления, в котором проверка возможностей инициируется в ответ на запрос на установление программного обеспечения, чтобы активировать SDR с тем, чтобы осуществлять связь в беспроводном режиме с помощью протокола, может быть реализован любой подходящий метод для хранения информации для локального и/или удаленного доступа. В одном варианте осуществления, пользователи должны осуществлять доступ к веб-узлу для загрузки активирующего протокол программного обеспечения на свои вычислительные устройства. Примерный веб-узел этого варианта осуществления это веб-узел, который содержит хранилище данных, которое сохраняет не только список доступных протоколов и активирующего программного обеспечения (к примеру, для аренды, или приобретения или бесплатного использования), но также и стандартные варианты использования протоколов и географические местоположения, в которых обычно используются протоколы.
В качестве примера использования веб-узла, предлагающего информацию по использованию и местоположению, пользователь в одной стране (к примеру, США) может готовиться к деловой поездке в другую страну (к примеру, Китай) и знать, что выгодно иметь беспроводной доступ в Интернет через вычислительное устройство в ходе путешествия. Пользователь может осуществить доступ к веб-узлу с использованием вычислительного устройства и через любой подходящий пользовательский интерфейс, чтобы указать, что он планирует поездку в Китай и хочет иметь беспроводной доступ в Интернет. Веб-узел затем может возвратить список доступных протоколов, реализованных в Китае. Примеры возможных протоколов могут включать в себя протоколы сотовой сети для доступа по беспроводной глобальной вычислительной сети и популярные протоколы беспроводной локальной вычислительной сети, используемые в гостиницах, к примеру, там, где пользователь может остановиться. Пользователь затем может выбрать протокол и запросить установку программного обеспечения, чтобы конфигурировать вычислительное устройство (используя технологию SDR), чтобы иметь возможность осуществлять связь согласно этому протоколу. Возможны различные формы установки. Например, пользователь может арендовать использование протокола на определенный период (на длительность поездки) или может приобрести неограниченное использование программного обеспечения, либо веб-узел может предложить программное обеспечение для бесплатного неограниченного использования, а не для приобретения.
В ответ на выбор, могут выполняться методы, описанные в данном документе, чтобы проверить, допускает ли устройство поддержку выбранного протокола по пропускной способности. Такой процесс полезен для пользователя, поскольку если устройство не имеет поддержки, пользователь может узнавать о необходимости применять протокол (к примеру, до прибытия в Китай и попытки осуществлять доступ в Интернет). Имея информацию о совместимости, пользователи могут планировать соответствующим образом, например, приобретение другого устройства, которое допускает поддержку требуемого протокола.
Следует принимать во внимание, что использование веб-узла для загрузки программного обеспечения, чтобы программировать SDR так, чтобы поддерживать беспроводные протоколы, в варианте осуществления по Фиг.3 является просто иллюстративным методом для установки поддержки нового беспроводного протокола на вычислительном устройстве. Может быть реализован любой подходящий метод. В одном варианте осуществления, пользователи могут осуществлять доступ к машиночитаемому носителю, такому как компакт-диск (CD) или цифровой универсальный диск (DVD), имеющий сохраненными машиноисполняемые инструкции для направления пользователя через процесс выбора для осуществления доступа к программному обеспечению, реализующему один или более беспроводных протоколов, также сохраненных на диске. В альтернативном варианте осуществления, вместо выбора программного обеспечения, реализующего протокол, из списка или базы данных, программное обеспечение, реализующее конкретный протокол, может быть предоставлено пользователю на машиночитаемом носителе и может быть непосредственно введено в инструментальное средство проверки возможностей, чтобы подтверждать, что он поддерживается посредством вычислительного устройства (к примеру, OS и/или клиентом пользователя).
Следует принимать во внимание, что последовательность этапов в варианте осуществления по Фиг.3 является просто иллюстративной, поскольку возможны другие последовательности. Например, вместо проверки сначала возможностей OS, сначала могут быть проверены возможности клиентской части. Возможны другие альтернативы. Например, в одном варианте осуществления, вместо загрузки предварительного файла, приводящего только требования беспроводного протокола, программное обеспечение для того, чтобы конфигурировать SDR на устройстве, чтобы осуществлять связь согласно протоколу, может быть загружено на альтернативном этапе 302. Этот вариант осуществления, следовательно, может не выполнять этап, соответствующий этапу 314 иллюстративного варианта осуществления по Фиг.3.
Следует принимать во внимание, что аспект проверки возможностей изобретения не ограничен выполнением на вычислительном устройстве пользователя, которое проверяется. Может быть реализован любой подходящий метод для сравнения требований протокола с возможностями клиентского устройства. В одном варианте осуществления, инструментальное средство проверки возможностей может выполняться на веб-сервере, содержащем веб-узел, такой как веб-узел, описанный выше. Например, возможности OS и вычислительного устройства клиентской части могут быть выгружены на сервер для удаленного сравнения вместо загрузки файла для локального сравнения.
Фиг.4 иллюстрирует процесс для выполнения удаленного сравнения возможностей системы и требований протокола в соответствии с одним вариантом осуществления изобретения. На этапе 400, пользователь осуществляет доступ к веб-узлу SDR (к примеру, типа, описанного выше). На этапе 402, характеристики компьютерной системы (к примеру, OS и клиентской части) передаются в сервер для сравнения. Это может быть выполнено любым подходящим способом. В качестве примера, пользователь может выгружать файл (или файлы), содержащий данные, откомпилированные посредством компьютера (к примеру, посредством операционной системы), касающиеся возможностей OS и/или клиентской части, или веб-узел может выполнять компьютерную программу на вычислительном устройстве, чтобы отправлять этот файл (или файлы) на сервер. В одном варианте осуществления, компьютерная программа, выполняемая посредством веб-узла на вычислительном устройстве, собирает информацию, содержащую файл(ы), посредством выполнения запроса к OS 214 и клиентской части 202 перед отправкой файлов на сервер. В альтернативном варианте осуществления, вычислительное устройство может передавать на сервер файл, который содержит характеристики другого вычислительного устройства, чтобы определять совместимость другого вычислительного устройства с беспроводными протоколами.
На этапе 404 требования протокола сравниваются с возможностями операционной системы пользователя. На этапе 406 процесс определяет, удовлетворяются ли требования протокола. Если требования не удовлетворяются, протокол определяется как неподдерживаемый на этапе 408. Аналогично процессу, проиллюстрированному на Фиг.3, этап 408 может включать в себя отображение пользователю сообщения, указывающего то, что протокол не поддерживается. Если процесс определяет, что протокол поддерживается посредством операционной системы, тем не менее, он переходит к этапу 410, на котором требования протокола сравниваются с возможностями аппаратных средств клиентской части. На этапе 412 процесс определяет, удовлетворяются ли требования посредством клиентской части, и если нет, он переходит к этапу 408, где пользователю может быть представлено сообщение, указывающее то, что протокол не поддерживается, как описано выше. Если на этапе 410 определено, что требования удовлетворяются посредством клиентской части, процесс переходит к этапу 414, где протокол идентифицируется как поддерживаемый. Этап 414 может содержать сообщение пользователю, указывающее то, что протокол поддерживается, может содержать загрузку на вычислительное устройство пользователя программного обеспечения для того, чтобы программировать SDR на компьютере, чтобы поддерживать беспроводной протокол, или любую другую подходящую идентификацию.
Примерный процесс, проиллюстрированный на Фиг.4, может использоваться вместе с любой подходящим методом выбора беспроводного протокола, и не ограничен в этом отношении. Аналогично процессу по Фиг.3, процесс по Фиг.4 может быть инициирован посредством выбора пользователем протокола с веб-узла, требования которого затем сравниваются на сервере с выгруженным(и) файлом(ами) возможностей. В альтернативном варианте осуществления, после того как возможности вычислительного устройства выгружены, сервер может выполнять процесс выбора, посредством которого каждый протокол в базе данных протоколов сервера может сравниваться с файлом возможностей, чтобы определять, какие доступные протоколы поддерживаются посредством вычислительного устройства (к примеру, добавление протоколов в белый список поддерживаемых протоколов или в черный список неподдерживаемых протоколов). Пользователь затем может анализировать информацию по требуемому протоколу(ам) и загружать программное обеспечение, чтобы активировать связь согласно любому поддерживаемому протоколу. В одном варианте осуществления, доступные протоколы дополнительно могут уточняться посредством определенного применения протокола и/или местоположения способом, аналогичным описанному выше.
Следует принимать во внимание, что использование веб-узла и веб-сервера в варианте осуществления, проиллюстрированном на Фиг.4, является просто примерным, и что может использоваться любой метод обмена информацией между клиентом и сервером. Альтернативный вариант осуществления может вообще не использовать веб-узел или веб-сервер, а вместо этого пользователь может выполнять программное обеспечение локально, на вычислительном устройстве, чтобы осуществлять функции вышеописанного веб-узла. Это программное обеспечение может передавать возможности системы на сервер посредством любого подходящего метода (например, отличного от использования обозревателя и веб-сервера), который позволяет выполнять вышеописанное сравнение, и передавать обратно в вычислительное устройство информацию, идентифицирующую поддерживаемые протоколы, чтобы пользователь выбирал программное обеспечение, реализующее протокол (или протоколы), который должен быть извлечен.
Помимо этого, следует принимать во внимание, что последовательность этапов варианта осуществления,
проиллюстрированного на Фиг.4, является просто иллюстративной, поскольку возможны другие последовательности. Например, вместо проверки сначала возможностей OS, сначала могут быть проверены возможности клиентской части. Кроме того, в некоторых вариантах осуществления изобретения, только OS или аппаратные средства клиентской части (либо другие компоненты) проверяются на предмет совместимости посредством процесса, а не все компоненты.
Иллюстративный процесс по Фиг.3 и 4 может быть реализован любым подходящим способом. Например, варианты осуществления изобретения, которые обмениваются данными между клиентским вычислительным устройством и сервером, не ограничены каким-либо конкретным методом для выполнения этого обмена данными. В одном примерном варианте осуществления, передача данных проводится с использованием расширяемого языка разметки (XML). Используя систему тэгов XML, данные могут быть заключены в тэги, указывающие то, какие данные хранятся, чтобы давать возможность приемному устройству обрабатывать то, какие данные он принимает, и определять, как обрабатывать их дополнительно. Таким образом, требования протокола, в одном варианте осуществления, может быть кодированы в XML-файле для передачи между клиентским вычислительным устройством и сервером. В соответствии с одним вариантом осуществления, любая оставшаяся информация, которая может быть необходимой для программного обеспечения, чтобы конфигурировать устройство, чтобы реализовывать запрошенный протокол, как пояснено относительно этапа 314 по Фиг.3, также может быть кодирована в XML-файле. Каждое из требований протокола и возможностей системы могут передаваться в нескольких файлах вместо одного файла. Вариант осуществления, который использует несколько файлов, не ограничен каким-либо конкретным разделением, но одним примерным разделением является разделение между требованиями/возможностями программного обеспечения в сравнении с аппаратными средствами.
Изобретение не ограничено тем, чтобы использоваться с системами SDR, которые применяют какое-либо конкретное разделение функций между программным обеспечением (к примеру, операционной системой 214 и драйверами 216 SDR) и аппаратными средствами 202 клиентской части. Как описано выше, клиентская часть может осуществлять минимум функций радиосвязи, и большинство функций могут осуществляться в программном обеспечении, но варианты осуществления изобретения не ограничены проверкой возможностей систем, которые используют это примерное разделение.
В одном варианте осуществления изобретения, возможность любого из параметров компьютерной системы, требуемых для того, чтобы соединяться и осуществлять связь с другим устройством согласно конкретному протоколу, может быть проверена. Следует принимать во внимание, что изобретение не ограничено проверкой какого-либо определенного набора или поднабора параметров протокола. В качестве примера, в одном варианте осуществления, инструментальное средство проверки возможностей может проверять поддерживаемые минимальные, максимальные и другие желательные возможности в одной или более (включая любую комбинацию) этих примерных областей:
- полная ширина полосы,
- гранулярность разноса несущих,
- частотный предел,
- гранулярность центральной частоты,
- гранулярность формируемых сигналов,
- частота дискретизации,
- количество битов на выборку,
- эффективная мощность изотропного излучения (EIRP),
- кодирование с контролем ошибок,
- гранулярность фильтрации,
- тип фильтрации (к примеру, аналоговая фильтрация, цифровая фильтрация),
- характеристики шифрования/дешифрования (к примеру, доступная длина ключа),
- управление доступом к среде (MAC).
В одном варианте осуществления, процесс может проверять все эти возможности, но может быть необязательным во всех случаях проверять все эти возможности, и альтернативные варианты осуществления могут проверять любую их комбинацию. Тем не менее, следует принимать во внимание, что этот список является просто иллюстративным, и варианты осуществления изобретения могут проверять другие возможности. Другие иллюстративные возможности, которые могут быть проверены, включают в себя универсальную поддержку SDR посредством операционной системы (т.е. доступны драйверы или аппаратные средства); находится ли конкретный протокол в белом списке (или черном списке), поддерживаемом посредством операционной системы, протоколов, специально поддерживаемых (или не поддерживаемых) посредством версии операционной системы, установленной на вычислительном устройстве (т.е. специально ли запретил поставщик OS определенные протоколы для пользователей, которые не загрузили определенное исправление или обновление для OS); или установлено ли уже программное обеспечение, для того чтобы реализовать выбранный протокол, на вычислительном устройстве. Также следует принимать во внимание, что каждый из этих параметров может заключать в себе анализ возможностей OS 214, клиентской части 202 или и того, и другого. Например, в одном варианте осуществления изобретения OS может быть протестирована на функциональность MAC, а клиентская часть может быть протестирована на уровни EIRP. Обе могут быть протестированы, тем не менее, на уровни максимальной и минимальной частоты. Например, может быть реализована определенная SDR, в которой OS модулирует сигнал до требуемой частоты и передает его клиентской части, который должен быть передан. В такой реализации OS должна допускать модуляцию до данной частоты, а клиентская часть должна допускать формирование данной частоты.
В одном варианте осуществления, при проверке возможностей вычислительного устройства, программное обеспечение, реализующее протокол, может предписывать параметры, которые должны быть проверены которых может быть меньше, чем система может
проверять и процесс может проверять только эти параметры на предмет совместимости. В качестве примера, пользователь может выбрать загрузить программное обеспечение для того, чтобы реализовать беспроводной стандарт IEEE 802.11b, и проверка возможностей может принимать элементы таблицы I в качестве требуемых возможностей для реализации 802.11b.
Таблица I
Принимаемые требования в IEEE 802.11b
Полная ширина полосы
83 МГц
Нижняя частота
2,4 ГГц
Верхняя частота
2,483 ГГц
Скорость A/D
30 Мвыборок в секунду
Биты на выборку
3
EIRP
23 дБ на мВт
В одном варианте осуществления, только возможности, предписанные в соответствии с требованиями, принимаемыми и показанными в таблице I, должны быть проверены, даже если система имеет возможность проверять другие возможности (и проверяет другие возможности при проверке других протоколов). В ответ, вычислительное устройство может быть проанализировано (к примеру, OS и клиентская часть) и (в одной примерной конфигурации) возможности, показанные в таблице II, могут быть обнаружены.
Таблица II
Возможности примерного вычислительного устройства
Полная ширина полосы
500 МГц
Нижняя частота
1,8 ГГц
Верхняя частота
5,9 ГГц
Скорость A/D
1 Гвыборок в секунду
Биты на выборку
3
EIRP
43 дБ на мВт
Как можно видеть при сравнении значений в таблицах, все требования таблицы I удовлетворяются посредством возможностей таблицы II. Таким образом, определяется то, что примерное вычислительное устройство должно поддерживать IEEE 802.11b согласно принимаемым требованиям.
В одном варианте осуществления изобретения, необязательные функции протокола (к примеру, 802.14) могут не проверяться, чтобы определять, поддерживаются ли они посредством вычислительного устройства (к примеру, шифрование). Альтернативно, необязательные функции также могут
рассматриваться при определении совместимости. В качестве дополнительного варианта, процесс может предоставлять отчет пользователю по тому, поддерживаются ли минимальные требования, и список необязательных функций, которые поддерживаются или не поддерживаются посредством вычислительного устройства.
Следует принимать во внимание, что изобретение не ограничено ни сравнением значений, содержавшихся в таблицах или списках, ни сравнением требований и возможностей каким-либо другим способом. Как пояснено выше, любой подходящий способ для определения того, удовлетворяются ли требования посредством вычислительного устройства, может быть реализован.
В альтернативном варианте осуществления, возможность вычислительного устройства определяется не посредством оценки списка из одной или более требуемых возможностей, а посредством тестирования вычислительного устройства, чтобы определять его возможности. Фиг.5 является иллюстративным процессом для реализации этого варианта осуществления.
На этапе 500 пользователь выбирает протокол, для которого активирующее программное обеспечение должно быть загружено с веб-узла. Как в вариантах осуществления, описанных выше, это может быть сделано любым подходящим способом, и использование веб-узла является просто иллюстративным. На этапе 502 вычислительное устройство загружает с веб-узла программное обеспечение, чтобы реализовывать выбранный протокол, и устанавливает его (к примеру, для использования с OS 214 и драйверами 216 SDR). На этапе 504 процесс проверки возможностей начинает определение поддержки протокола посредством попытки формировать тестовый сигнал согласно протоколу (например, в пределах указанной полосы частот). Может использоваться любой подходящий тип тестового сигнала. В одном варианте осуществления, тестовый сигнал может быть сформирован при малой мощности (к примеру, ниже указанного порога шума), поскольку тест может не заключать в себе обнаружение сигнала. В этом отношении, тест может заключать в себе попытку передачи посредством программного обеспечения сигнала, который удовлетворяет протоколу (к примеру, в пределах частотного диапазона), и выяснение того, допускает ли система удовлетворение этого запроса, или того, возвращает ли какой-либо компонент ошибку, указывающую то, что она не допускает. В другом варианте осуществления, инструментальное средство проверки возможностей может формировать полный сигнал и пытаться подключаться к другому устройству (к примеру, точке 102 беспроводного доступа).
На этапе 506 инструментальное средство проверки возможностей определяет то, успешно ли выполнен тест. Это определение может зависеть от типа выполняемого тестирования. Например, это определение может содержать проверку сигналов ошибки от аппаратных средств или программного обеспечения или может содержать выяснение того, установлена ли связь с другим устройством.
В зависимости от определения на этапе 506, инструментальное средство проверки возможностей может отображать сообщение на этапе 508, указывающее то, что протокол не поддерживается, или может активировать протокол для связи на вычислительном устройстве на этапе 510. В одном варианте осуществления, определение успешного теста также может приводить к отображению пользователю сообщения, указывающего успешное прохождение теста.
Могут быть реализованы другие подходящие методы для тестирования вычислительного устройства, чтобы обнаружить, допускает ли оно поддержку протокола. Например, вычислительное устройство может иметь загруженное программное обеспечение, и может проводиться тест, чтобы проверять, может ли оно принимать сигналы, переданные по протоколу. Проверка возможности затем может ожидать коды ошибки от компонентов устройства, как описано выше, или может ожидать обнаружение сигнала управления/пилотного радиосигнала или сигналов данных от точки 102 беспроводного доступа или другого вычислительного устройства.
Следует принимать во внимание, что могут быть сформированы несколько тестовых сигналов вместо одного тестового сигнала. В одном варианте осуществления, различный тестовый сигнал может быть сформирован для каждого параметра, имеющего минимальное или максимальное значение, требуемое посредством беспроводного протокола. В этом варианте осуществления, тестовый сигнал может быть сформирован для каждого из требований по мощности, требований по полосе пропускания, требований по скорости передачи данных, требований по частоте и так далее. В другом варианте осуществления, инструментальное средство проверки возможностей может формировать диапазон сигналов для каждого требования. Например, если протокол требует, чтобы вычислительное устройство поддерживало частоты между 1,0 ГГц и 3,0 ГГц, инструментальное средство проверки возможностей может формировать сигналы между значением, равным или ниже 1,0 ГГц, и значением, равным или выше 3,0 ГГц. Таким образом, инструментальное средство проверки возможностей может собирать больше информации о возможностях вычислительного устройства, чем просто то, поддерживает ли оно экстремальные значения протокола. В соответствии с вариантами осуществления изобретения, если конкретный тестовый сигнал завершается ошибкой, инструментальное средство проверки возможностей может определять, что вычислительное устройство не может поддерживать протокол, или может определять, что протокол не может работать на конкретном уровне в устройстве.
Следует принимать во внимание, что некоторые протоколы могут иметь не только минимальные требования, но также и "рекомендуемые требования". Используя вышеприведенный пример, протокол может указывать частоты связи между 1,0 ГГц и 3,0 ГГц для пиковой производительности, но также может указывать, что протокол может работать (например, на меньшей скорости) при частотах между 1,5 ГГц и 2,5 ГГц. В одном варианте осуществления изобретения, этапы 314, 414 и 510 по Фиг.3, 4 и 5, соответственно, могут содержать отображение пользователю сообщений, указывающих то, что выбранный протокол может выполняться на вычислительном устройстве, но не при определенных уровнях производительности.
Заявители также принимают во внимание, что выбор конкретного протокола может заключать в себе больше чем просто определение того, удовлетворяет ли устройство минимальным требованиям и рекомендуемым требованиям протокола. Например, может учитываться предполагаемое применение протокола. Различные варианты применения сетей связи имеют существенно различающиеся потребности в этих сетях. Например, протокол может требовать, чтобы минимальная или рекомендуемая ширина полосы в 83 МГц использовалась при обычных условиях (к примеру, при обмене простыми текстовыми сообщениями между устройством и веб-сервером) на вычислительном устройстве, но может требовать, чтобы ширина полосы в 100 МГц фактически использовалась при передаче больших объемов чувствительных ко времени данных (к примеру, потоковая передача аудио или видео). В одном варианте осуществления изобретения, пользователь может быть опрошен на предмет дополнительной информации (к примеру, предполагаемого использования), или ему может быть представлена дополнительная информация (к примеру, рекомендуемые варианты использования с учетом возможностей вычислительного устройства), чтобы предоставлять пользователю больше информации, чем то, поддерживается ли протокол, а также то, подходит ли он для использования на вычислительном устройстве для намеченной цели пользователя.
Фиг.6 схематично иллюстрирует одно примерное вычислительное устройство 600, которое может использоваться в соответствии с вариантами осуществления изобретения. Вычислительное устройство 600 содержит программируемые схемы 602, машиночитаемые носители 604 и модуль 606 проверки. Программируемые схемы 602 могут программироваться посредством инструкций управления, чтобы формировать и/или принимать сигналы согласно беспроводному протоколу. Эти программируемые схемы могут принимать любую подходящую форму, примеры которой описаны выше (к примеру, аппаратные средства 202 клиентской части и драйверы 216 SDR), и включают в себя любую совокупность непосредственно программируемых схем (к примеру, программируемого процессора) и схем, которые взаимодействуют с непосредственно программируемыми схемами, чтобы активировать связь согласно беспроводному протоколу. Машиночитаемые носители 604 могут содержать один или более носителей хранения любого типа и могут сохранять данные, содержащие инструкции для реализации и/или конфигурирования программно-определяемой радиоподсистемы. Например, машиночитаемые носители 604 могут сохранять инструкции управления, чтобы программировать программируемые схемы 602.
Модуль 606 проверки может определять, может ли программно-определяемая радиоподсистема (к примеру, реализованная посредством компонентов, содержащих клиентскую часть 202, OS 214 и драйверы 216 SDR, или любым другим подходящим способом) осуществлять связь согласно указанному беспроводному протоколу. Это определение может быть сделано с использованием любого из примерных методов, поясненных выше со ссылками на Фиг.3, 4 и 5 (или с использованием любого другого метода), поскольку варианты осуществления изобретения могут выполнять это определение любым подходящим способом. Также следует принимать во внимание, что хотя Фиг.6 иллюстрирует модуль 606 проверки как отдельный от машиночитаемых носителей 604 и программируемых схем 602, модуль 606 проверки может быть реализован любым подходящим способом, в том числе с помощью программного обеспечения (кодированного, например, на машиночитаемых носителях 604), аппаратных средств (включая, например, части или все программируемые схемы 602) или любой комбинации вышеозначенного.
Вышеописанные варианты осуществления настоящего изобретения могут быть реализованы любыми из множества способов. Например, эти варианты осуществления могут быть реализованы в аппаратных средствах, программном обеспечении или комбинации вышеозначенного. При реализации в программном обеспечении, программный код может быть приведен в исполнение на любом надлежащем процессоре или наборе процессоров, предоставленных в одном компьютере или распределенных по нескольким компьютерам.
Дополнительно, следует принимать во внимание, что компьютер или терминал может быть осуществлен в любом числе форм, таких как компьютер в стоечном исполнении, настольный компьютер, портативный компьютер или планшетный компьютер. Дополнительно, компьютер или терминал может быть встроен в устройство, не считающееся, в общем, компьютером, но с надлежащими характеристиками обработки, включая персональное цифровое устройство (PDA), смартфон или любое другое надлежащее портативное или стационарное электронное устройство.
Кроме того, компьютер может иметь одно или более устройств ввода и вывода. Эти устройства могут использоваться, помимо прочего, для того чтобы представлять пользовательский интерфейс. Примеры устройств вывода, которые могут использоваться для того, чтобы предоставлять пользовательский интерфейс, включают в себя принтеры или дисплеи для визуального представления вывода и динамики или другие устройства формирования звука для звукового представления вывода. Примеры устройств ввода, которые могут использоваться для пользовательского интерфейса, включают в себя клавиатуры и указательные устройства, такие как мыши, сенсорные панели и координатно-цифровые столы. В качестве еще одного примера, компьютер может принимать входную информацию через распознавание речи или в других звуковых форматах.
Такие компьютеры могут быть связаны между собой посредством одной или более сетей в любой подходящей форме, в том числе локальная вычислительная сеть или глобальная вычислительная сеть, такая как корпоративная сеть или Интернет. Такие сети могут быть основаны на любой надлежащей технологии и могут работать согласно любому надлежащему протоколу, и могут включать в себя беспроводные сети, проводные сети или оптоволоконные сети.
Кроме того, различные способы или процессы, изложенные в данном документе, могут кодироваться как программное обеспечение, которое выполняется на одном или более процессоров, которые используют любую из множества операционных систем или платформ. Дополнительно, такое программное обеспечение может быть написано с использованием любого числа подходящих языков программирования и/или традиционных средств программирования или создания сценариев и также может быть скомпилировано как исполняемый код машинного языка или промежуточный код, который выполняется в инфраструктуре или на виртуальной машине.
В этом отношении изобретение может быть осуществлено как машиночитаемый носитель (или несколько машиночитаемых носителей) (к примеру, компьютерное запоминающее устройство, один или более гибких дисков, компакт-дисков, оптических дисков, магнитных лент, флэш-память, схемные конфигурации программируемых пользователем вентильных матриц или другие полупроводниковые устройства и т.д.), кодированные с одной или более программ, которые при исполнении на одном или более компьютерах или других процессорах, осуществляют способы, которые реализуют различные варианты осуществления изобретения, поясненные выше. Машиночитаемый носитель или носители могут быть переносными, так что программа или программы, сохраненные на них, могут загружаться на один или более различных компьютеров или других процессоров, чтобы реализовать различные аспекты настоящего изобретения, описанные выше.
Термины "программа" или "программное обеспечение" используются в данном документе в универсальном смысле, чтобы означать любой тип машинного кода или набора машиноисполняемых инструкций, которые могут использоваться для того, чтобы программировать компьютер или другой процессор так, чтобы реализовывать различные аспекты настоящего изобретения, поясненные выше. Дополнительно, следует принимать во внимание, что согласно одному аспекту данного варианта осуществления, одна или более вычислительных программ, которые при исполнении осуществляют способы настоящего изобретения, не обязательно должны размещаться на одном компьютере или процессоре, а могут быть распределены модульно по ряду различных компьютеров или процессоров так, чтобы реализовывать различные аспекты настоящего изобретения.
Машиноисполняемые инструкции могут быть во многих формах, таких как программные модули, выполняемые посредством одного или более компьютеров или других устройств. Программные модули, в общем, включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют отдельные задачи или реализуют отдельные абстрактные типы данных. Типично, функциональность программных модулей может быть комбинирована или распределена, как требуется в различных вариантах осуществления.
Различные аспекты настоящего изобретения могут использоваться по отдельности, в комбинации или во множестве компоновок, не поясняемых конкретно в вариантах осуществления, описанных выше, и поэтому не ограничены в своем применении подробностями и компоновкой компонентов, изложенными в вышеприведенном описании или проиллюстрированными на чертежах. Например, аспекты, описанные в одном варианте осуществления, могут быть комбинированы любым способом с аспектами, описанными в других вариантах осуществления.
Использование порядковых числительных, таких как "первый", "второй", "третий" и т.д. в формуле изобретения для того, чтобы модифицировать признак формулы изобретения, само по себе не подразумевает какой-либо приоритет, предшествование или очередность одного признака формулы изобретения в сравнении с другим, либо временную последовательность, в которой выполняются этапы способа, а используется просто в качестве обозначения, чтобы отличать один признак формулы изобретения, имеющий определенное название, от другого признака, имеющего такое же название (но с применением порядкового числительного) для различения признаков формулы изобретения.
Кроме того, формулировки и терминология, используемые в данном документе, служат только для описания и не должны рассматриваться в ограничительном смысле. Использование "включающий в себя", "содержащий", "имеющий", "содержащий в себе", "заключающий в себя" и их вариантов имеет намерением включать в себя элементы, перечисляемые далее, и их эквиваленты, а также дополнительные элементы.
Исходя из описания нескольких аспектов, по меньшей мере, одного варианта осуществления данного изобретения, следует принимать во внимание, что различные изменения, модификации и усовершенствования должны быть очевидными специалистам в данной области техники. Эти изменения, модификации и усовершенствования должны пониматься как часть данного раскрытия сущности и входят в рамки сущности и объема изобретения. Следовательно, предшествующее описание и чертежи приводятся только в качестве примера.