ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
С развитием расширенных вычислительных способностей вычислительные устройства с меньшими или высокими функциональными возможностями используются при предоставлении связи и других сервисов все время увеличивающемуся числу пользователей. Пользуясь преимуществом систем определения местоположения, таких как Сервис Глобального Позиционирования (GPS), отслеживание сотовых телефонов и аналогичные системы, современные коммуникационные устройства используются для предоставления пользователям широкого ряда сервисов, основанных на определении местоположения.
Службы неотложной помощи являются одним жизненно важным аспектом современных коммуникационных систем. В дни стандартной телефонии, использующей коммутируемую телефонную сеть общего пользования (PSTN), системы неотложной помощи, такие как 911, 999, 112 и т.д., полагаются на информацию о местоположении, поддерживаемую администраторами сети. Это было достаточным, так как телефоны "наземной линии" типично были немобильными. Однако беспроводные устройства и сетевые компьютеры все больше и больше используются для обеспечения различных режимов связи. С помощью этих новых устройств не только определение местоположения является сложной задачей, но и определение того, действительно ли устройство используется назначенным пользователем, также не просто осуществить.
Таким образом, предоставление сервисов неотложной помощи в современной коммуникационной сети представляет сложную задачу, по меньшей мере касательно местоположения пользователя. Когда пользователь делает неотложный вызов, вызов нужно маршрутизировать в правильную диспетчерскую службу для того, чтобы предоставить своевременный сервис в правильном местоположении.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Это краткое изложение сущности изобретения предоставлено для того, чтобы представить подборку концепций в упрощенной форме, которые дополнительно описаны ниже в подробном описании. Это краткое изложение сущности изобретения не предназначено ни для исключительной идентификации ключевых признаков или существенных признаков заявленного изобретения, ни для использования в качестве помощи в определении объема заявленного изобретения.
Варианты осуществления направлены на определение показателей достоверности, таких как удаленное использование компьютера по сравнению с локальным, основной пользователь в многопользовательском вычислительном окружении и сравнимые показатели для определения местоположения сетевых абонентов. Определение детального местоположения может быть затем сделано на основе этих показателей и справочной информации для конкретного пользователя, так чтобы сервисы, такие как сервисы неотложной помощи, могли быть обеспечены точной информацией о местоположении.
Эти и другие признаки и преимущества будут очевидны после прочтения нижеследующего подробного описания и просмотра связанных с ним чертежей. Следует понимать, что и упомянутое выше общее описание, и следующее подробное описание являются разъясняющими и не ограничивают заявленные аспекты.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
На фиг.1 показана схема примерной многосетевой коммуникационной системы, где сервисы неотложной помощи могут быть предоставлены используя определение местоположения абонентов согласно вариантам осуществления;
На фиг.2 проиллюстрирован сервер информации о местоположении, взаимодействующий с клиентскими устройствами для того, чтобы реализовать систему согласно вариантам осуществления;
На фиг.3 проиллюстрировано определение местоположения в сетевом окружении, различающее между одно- и многопользовательскими вычислительными устройствами;
На фиг.4 показано сетевое окружение, где может быть реализована система согласно вариантам осуществления;
На фиг.5 показана блок-схема примерного вычислительного операционного окружения, где могут быть реализованы варианты осуществления;
На фиг.6 проиллюстрирована логическая схема последовательности операций для процесса определения информации о местоположении в сетевом вычислительном окружении согласно вариантам осуществления; и
На фиг.7 проиллюстрирована логическая схема последовательности операций для другого процесса определения информации о местоположении в сетевом вычислительном окружении с дополнительными подробными этапами.
ПОДРОБНОЕ ОПИСАНИЕ
Как кратко описано выше, информация о детальном местоположении для пользователей в сетевом вычислительном окружении может быть определена на основе показателей достоверности. В нижеследующем подробном описании ссылки сделаны на сопутствующие чертежи, которые формируют его часть и на которых показаны в качестве иллюстраций конкретные варианты осуществления или примеры. Эти аспекты могут быть скомбинированы, другие аспекты могут быть использованы, и структурные изменения могут быть сделаны, не отступая от сущности и объема настоящего раскрытия. Следующее подробное описание в следствие этого не следует принимать в ограничивающем смысле, и объем настоящего изобретения определяется прилагаемой формулой изобретения и их эквивалентами.
Хотя варианты осуществления будут описаны в общем контексте программных модулей, которые исполняются совместно с прикладной программой, которая выполняется под операционной системой на персональном компьютере, специалистом в данной области техники должно быть понятно, что аспекты могут быть также реализованы в комбинации с другими программными модулями.
В общем, программные модули включают в себя процедуры программы, программы, компоненты, структуры данных и другие типы структур, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Более того, специалисты в данной области техники поймут, что варианты осуществления могут быть применены на практике с другими конфигурациями компьютерных систем, включая карманные устройства, мультипроцессорные устройства, программируемую бытовую электронику на основе микропроцессоров, миникомпьютеры, мейнфреймы и сравнимые вычислительные устройства. Варианты осуществления могут быть также применены на практике в распределенных вычислительных окружениях, где задачи выполняются устройствами удаленной обработки данных, которые соединены через коммуникационную сеть. В распределенном вычислительном окружении программные модули могут быть расположены как в локальных, так и удаленных накопительных устройствах.
Варианты осуществления могут быть реализованы как компьютерно реализуемый процесс (способ), как вычислительная система или как промышленное изделие, такое как компьютерный программный продукт или считываемые компьютером носители. Компьютерный программный продукт может быть компьютерным накопителем, который считывается компьютерной системой и на котором закодирована компьютерная программа, которая содержит инструкции для побуждения компьютера или вычислительной системы выполнять примерный процесс(ы). Считываемый компьютером носитель информации может быть, например, реализован посредством одной или более из энергозависимой компьютерной памяти, энергонезависимой памяти, накопителя на жестких дисках, flash-накопителя, гибкого магнитного диска или компакт-диска и сравнимых носителей.
Во всем этом описании, термин "платформа" может быть комбинацией программных и аппаратных компонентов для управления сетевыми коммуникационными системами. Примеры платформ включают в себя, но не ограничены этим, размещенный сервис, исполняемый на множестве серверов, приложение, исполняемое на одиночном сервере, и сравнимые системы. Термин "сервер" в общем относится к вычислительному устройству, исполняющему одну или более программ программного обеспечения, типично в сетевом окружении. Однако сервер может быть также реализован как виртуальный сервер (программы программного обеспечения), исполняемый на одном или более вычислительных устройствах, видимый как сервер в сети. Более подробно об этих технологиях и примерных операциях рассказано ниже.
На фиг.1 показана схема примерной многосетевой коммуникационной системы, где сервисы неотложной помощи могут быть предоставлены используя определение местоположения абонентов согласно вариантам осуществления. При схеме 100, пользователи могут осуществлять связь посредством клиентских устройств 104 и 106 через сети 110. Сервис 108 управления сетью/связью может управлять различными аспектами сетевых операций, включая поддержание справочного сервиса, хранящего информацию, такую как местоположения пользователей (например, пользовательские офисы/кабинки в организации). Сети 110 могут включать в себя одну или более различных сетей и подсетей. Клиентские устройства 104, 106 могут включать в себя любое вычислительное устройство, способное исполнять приложения для обеспечения связи и других операций обмена данными.
Некоторое количество сервисов может быть предоставлено пользователям через сети 110 (например, хранение данных, поиск, вычисление, анализ и много еще). Некоторые из трех сервисов могут быть сервисами, основанными на определении местоположения. Сервис 102 неотложной помощи является примером сервиса, основанного на определении местоположения. Если пользователь сообщает о чрезвычайной ситуации посредством коммуникационного приложения через сети 110, вызов (аудио, видео, текстовый или другого режима) может быть нужно маршрутизировать в соответствующую диспетчерскую службу, которая может оптимально обслужить данный вызов, и бригады реагирования на чрезвычайную ситуацию нужно своевременно направить в местоположение сообщающего пользователя. Таким образом, знание точного местоположения сообщающего пользователя нужно для сервиса 102 неотложной помощи.
В системе согласно вариантам осуществления, сервис 112 информации о местоположении может использовать показатели достоверности для определения местоположения абонента сетевой коммуникационной системы, использующего вычислительное устройство для связи. Одним из показателей, который может быть использован, является локальное или удаленное использование вычислительного устройства, посредством которого обеспечивается связь. Один или более пользователей могут использовать вычислительное устройство посредством логического входа удаленно или локально. Если машину в основном используют удаленно, ее физическое местоположение может быть несоответствующим местоположению конкретного абонента и, вследствие этого, бесполезным для сервиса, основанного на определении местоположения.
Другим показателем, который может быть использован, является определение основного пользователя для многопользовательских вычислительных устройств. Если абонент не является основным пользователем машины, вероятность нахождения абонента в том же местоположении, что и машина, уменьшается. Таким образом, показатель достоверности для основного пользователя машины может быть определен на основе записей о логическом входе/логическом выходе или информации об аналогичном использовании.
Для предотвращения ошибок из-за ошибок записей или фальсифицированных адресов, может быть также выполнено подтверждение. Согласно примерному сценарию, предварительно заданное число вычислительных устройств в той же подсети, что и целевая машина может быть выбрано в качестве "удостоверяющего набора". Обследование топографии сети, такое как обнаружение топологии канального уровня (LLTD), может быть использовано для проверки того, машины удостоверяющего набора на самом деле находятся в одной и той подсети. Далее, может быть определено локальное/удаленное использование целевой машины. Если машина в основном используется локально, но множественными пользователями, показатель основного пользователя может быть использован для определения основного пользователя вычислительного устройства. Если оба (или больше) показателей удовлетворены, местоположение машины может быть сопоставлено с записанным местоположением абонента, используя справочный сервис для точного определения местоположения абонента. Затем может быть предоставлен сервис(ы), основанный на определении местоположения, такой как маршрутизация неотложного вызова или отправка служб неотложной помощи в местоположение абонента.
Другим аспектом точного определения местоположения является определение вероятности фальсификации. Ошибки из-за проблем в схеме соединений отличаются от тех, что возникают из-за фальсификации. В случае ошибок целью является обнаружить ошибки схемы соединений и исправить их, предпочтительно, до неотложного вызова. В такой ситуации сервер информации о местоположении (LIS) может использовать алгоритм для проверки правдоподобности полученного местоположения по схеме соединений перед предоставлением ее клиенту. Если LIS решает, что местоположение является неправдоподобным (например, удостоверяющий набор находится в другом здании, чем то, что указано схемой соединений), LIS может предпринять некоторое действие, такое как увеличение неопределенной области, или даже (в экстремальных условиях) отказ в предоставлении местоположения клиенту, в то же время регистрируя ошибку, которая может быть впоследствии обследована администратором. В результате выполнения алгоритма LIS может быть способен лучше удовлетворять себя в отношении точности и действительности информации о местоположении, которые он предоставляет клиенту. Согласно некоторым вариантам осуществления LIS может фактически подписать информацию о местоположении, которую он предоставляет клиенту, гарантируя точность данных о местоположении, впоследствии переданных точке доступа публичного сервиса (PSAP) клиентом.
В случае фальсифицированного местоположения(й) был сделан неотложный вызов, и вопрос состоит в том, является ли местоположение, которое было приложено к вызову, правдоподобным. Предположительно, этот вопрос возникает, так как приложенное местоположение является не подписанным или иначе приписываемым LIS, и вследствие этого третья сторона (например, SIP прокси) может попытаться проверить действительность местоположения, предоставленного пользователем, которое могло быть введено вручную или изменено каким-то образом с местоположения, предоставленного клиенту посредством LIS. Типично, вручную местоположение вводят только в ситуации, где либо не доступно автоматическое определение местоположения, либо где пользователем была потенциально обнаружена ошибка. Таким образом, этот сценарий может быть значительно более сложным, и может потребоваться гораздо большее обременение доказывания, чтобы переопределить заявляемое местоположение пользователя. Вследствие этого в дополнение к потенциальному определению неопределенности определения местоположения система согласно вариантам осуществления может также вычислить вероятность фальсификации, используя показатели достоверности, описанные в настоящем документе.
На фиг.2 проиллюстрирован сервер информации о местоположении, взаимодействующий с клиентскими устройствами для того, чтобы реализовать систему согласно вариантам осуществления. Сервер 214 информации о местоположении со схемы 200 может использовать логический вход, логический выход, повторное подключение, отключение, начальную загрузку, перезагрузку, выключение, блокировку/разблокировку рабочей станции, отключение экранной заставки или аналогичные события от клиентских устройств с 216 по 224 для определения локального использования по сравнению с удаленным для каждой машины. Например, может быть вычислено распределение времени, проведенного в состоянии логического входа, по отношению к идентификатору пользователя как для локальных, так и для удаленных логических входов. Если использование для конкретного клиентского устройства определено локальным, может быть определен другой показатель на основе одно- или многопользовательского использования, как рассмотрено более подробно ниже.
Если оба показателя удовлетворены, сервер 214 информации о местоположении может осуществить поиск физического местоположения целевого пользователя (например, показателя, сообщающего о чрезвычайной ситуации) и сопоставить это местоположение с уровнем достоверности целевого клиентского устройства. Например, офис главного пользователя может быть определен из базы данных (например, запросом базы данных к базе данных персонала). Соответствующие сервисы, основанные на определении местоположения, могут быть затем предоставлены на основе определенной информации.
Определение местоположения может быть выполнено в ответ на событие, такое как запрос от сервиса, основанного на определении местоположения, периодически или со случайными интервалами. Согласно некоторым вариантам осуществления может быть выполнена верификация того, что местоположение не изменилось, посредством проверки случайно выбранных машин(ы) из удостоверяющего набора и подтверждения того, что они все еще находятся в той же подсети (например, используя LLTD). Сервер 214 информации о местоположении может также передавать ассоциированный показатель(и) достоверности каждый раз, когда он предоставляет строку местоположения сервису, основанному на определении местоположения.
Некоторые сервисы, основанные на определении местоположения, такие как расширенные сервисы неотложной помощи (E911), требуют журнал аудита, так что происхождение информации о местоположении может быть верифицировано и можно избежать шутливых вызовов, побуждающих службы неотложной помощи реагировать на местоположение, определенное шутником. Это играет конкретную роль, когда местоположение полностью или частично определено на основе пользовательского ввода. Аудит может требовать отслеживание происхождения местоположения (например, как было сделано определение, откуда пришли данные), равно как и действий пользователя/устройства (какой пользователь/устройство отправил запрос местоположения или сделал неотложный вызов). Так как идентификационная информация пользователя, использованная на различных этапах процесса, может быть разной (например, идентификационная информация протокола инициализации сеанса "SIP", MAC-адрес устройства, IP-адрес устройства или аутентифицированная идентификационная информация внутри протокола конфигурации местоположения), образование полного журнала аудита может быть не тривиальным.
Следующее является примерным алгоритмом, который может быть реализован в информации о местоположении или сервере с аналогичной задачей для поддержания точных и актуальных данных о местоположении. Согласно примерному алгоритму протокол динамической конфигурации хостов "DHCP" или аналогичные журналы регистрации могут быть использованы для выбора предварительно заданного числа вычислительных устройств в одной и той же сети. Можно осуществить контакт (например, эхо-тестированием) с этими машинами "удостоверяющего набора" для подтверждения, что они все еще в состоянии «онлайн». Дополнительная проверка (например, LLTD) может быть использована для подтверждения, что машины находятся в одном и том же домене широковещательной передачи (подсети). Эти проверки подтверждают, что машины удостоверяющего набора находятся грубо в одном и том же местоположении.
Из журналов регистрации событий безопасности или хранилищ аналогичных данных для каждой машины в удостоверяющем наборе, релевантные события для всех пользователей, которые осуществили логический вход на машину, могут быть получены для предварительно заданного периода. Предварительно заданный период может быть выбран так, что исключительные случаи, наподобие отпуска, могут быть учтены соответствующим образом. Релевантные события могут включать в себя, но не ограничены этим, логический вход, логический выход, повторное подключение, отключение, начальную загрузку, перезагрузку, выключение, блокировку/разблокировку рабочей станции, отключение экранной заставки или аналогичные события. Далее, показатель локального/удаленного использования может быть вычислен (например, на основе распределения времени, проведенного в состоянии логического входа по отношению к идентификатору пользователя как для локальных, так и для удаленных логических входов) для каждой машины. Если показатель локального/удаленного использования находится за предварительно заданным пределом для конкретной машины, то данную машину в основном используют локальные пользователи. Иначе, данная машина является для удаленного использования и не релевантна для определения местоположения.
Алгоритм может затем вычислить показатель основного пользователя на основе числа пользователей и суммарного времени, проведенного каждым пользователем на конкретной машине. Если определено, что пользователь является основным пользователем машины, или определено, что машина является однопользовательской машиной, может быть запрошен справочный сервис для получения информации о физическом местоположении в офисе, связанной с пользователем.
В необязательном порядке алгоритм кластеризации может быть выполнен для машин в удостоверяющем наборе в отношении их выбранных местоположений в офисе. Посторонние - машины, где сервис справочной информации может не предоставлять правильный ответ - могут быть помечены более низкой достоверностью, или о них может быть оповещено администратором. Согласно дополнительным вариантам осуществления вплоть до предварительно заданного числа удостоверяющего набора могут быть классифицированы как посторонние. Это обеспечивает устойчивость против ошибок изолированной справочной информации. При добавлении новой машины к сервису информации о местоположении алгоритм полной кластеризации может быть не нужен. Расстояние до новой машины может быть вычислено исходя из случайно избранного члена его удостоверяющего набора. Если расстояние существенно небольшое, данная машина может рассматриваться как часть удостоверяющего набора с высокой достоверностью.
Сервер 214 информации о местоположении может хранить данные, соотносящие IP-адреса машин с офисом, удостоверяющим набором, MAC-адресами машин, временными метками, показателями достоверности и т.д. Предварительные соотнесения могут быть в необязательном порядке представлены администратору для верификации до сохранения в (посредством) сервере 214 информации о местоположении. Согласно другим вариантам осуществления администратору могут предоставляться введенные данные с низкой достоверностью для верификации, выполняемой человеком. Введенные данные с высокой достоверностью могут предполагаться как правильные и автоматически сохраняться в (посредством) сервере 214 информации о местоположении. Клиентские устройства с 216 по 224 могут включать в себя вычислительные устройства, такие как сервер 216, смонтированный в транспортном средстве компьютер 218, переносной компьютер 220, карманный компьютер 222 и настольный компьютер 224.
На фиг. 3 проиллюстрировано определение местоположения в сетевом окружении, проводя различие между одно- и многопользовательскими вычислительными устройствами. Как рассмотрено выше, вычислительное устройство может быть однопользовательским устройством, многопользовательским устройством с основным (или главным) пользователем, или многопользовательским устройством с равнораспределенными пользователями. Для того чтобы быть полезным для определения местоположения, нужно, чтобы вычислительное устройство было одним из первый двух видов. Схема 300 иллюстрирует сервер сертификации местоположения, взаимодействующий с тремя разными видами машин и определяющий тип машины для того, чтобы вычислить показатель основного пользователя.
Как упомянуто ранее, избежание фальсифицированных данных о местоположении является важным для сервисов неотложной помощи. Для этой цели доверенный сервер 326 сертификации местоположения может выбрать одну машину из удостоверяющего набора и верифицировать ее местоположение (например, посредством запроса быстрого обнаружения LLTD). Если найден MAC-адрес вызывающей машины, то она все еще находится в той же самой подсети, что и заверенная машина. Если не найден, то может существовать сетевой раздел или вызывающая сторона является ложной. Доверенный сервер 326 сертификации местоположения может повторно попробовать с другими членами удостоверяющего набора. Так как вызывающая сторона типично не знает удостоверяющий набор (они могут быть выбраны случайно), вызывающая сторона не может лгать о ее местоположении посредством подделывания своего IP-адреса. Если верификация успешна, доверенный сервер 326 сертификации местоположения может криптографически подписать свидетельство местоположения, которое ручается, что машина находится фактически в той же самой подсети, что и ее удостоверяющий набор. Это может быть представлено сервису, основанному на определении местоположения (например, диспетчеру неотложной помощи), как верифицированное. Таким образом, свидетельство местоположения может быть сгенерировано на основе сравнения местоположения целевого клиентского устройства и идентификатора с местоположением и идентификатором по меньшей мере одного другого клиентского устройства в том же удостоверяющем наборе.
Как показано на схеме 300, вычислительное устройство 330 является однопользовательской (332) машиной, вычислительное устройство 334 является многопользовательской машиной с пользователями 336, использующими машину в равной степени, и вычислительное устройство 338 является еще одной многопользовательской машиной с пользователем 340, являющимся основным пользователем по сравнению с другими пользователями (342) той же самой машины. Таким образом, при выполнении примерного алгоритма, рассмотренного выше, сервер информации о местоположении может определять информацию об использовании через сеть 328 и вычислять показатель основного пользователя. Примерный показатель может быть определен в качестве отношения пикового значения к среднему значению распределения для локальных показателей. Если отношение меньше, чем предварительно заданный порог, то вычислительное устройство 334 может быть объявлено многопользовательской машиной, и может потребоваться, чтобы информация о местоположении приходила напрямую из пользовательского ввода или некоторого другого (внешнего) механизма определения местоположения. Если пользователь подает строку местоположения, это может быть нужно рассматривать как местоположение с низкой достоверностью для целей надежности. Если существует только одиночный локальный пользователь, или упомянутое отношение является выше предварительно заданного порога, машина может рассматриваться как однопользовательская (330) или многопользовательская (338) с основным пользователем.
Многопользовательские машины могут подразделяться на две категории: настольные компьютеры в стиле интерактивного терминала, используемые мобильными рабочими, или терминальные серверы, используемые удаленно через сеть. Настольные компьютеры в виде интерактивного терминала типично имеют четко заданное местоположение, так как они физически защищены. Местоположение терминального сервера является менее релевантным, так как оно является местоположением пользователя, которое нужно, а не местоположением исполняемого приложения.
Согласно некоторым вариантам осуществления пользователю может быть представлена возможность редактировать местоположение. В этом случае достоверность может быть помечена как "подаваемая пользователем" (например, низкая), если пользователь фактически редактирует местоположение. Для подаваемых пользователем местоположений, введенное местоположение может быть верифицировано по отношению к местоположениям удостоверяющего набора для разумной близости. Если удостоверяющий набор не верифицирует поданное пользователем местоположение, достоверность может быть помечена как "поданное пользователем - неверифицировано" (например, низкая). Если введенные данные верифицированы, достоверность может быть помечена как "поданное пользователем - верифицировано удостоверяющим набором" (например, средняя). К тому же, справочный сервис может периодически проверяться на предмет офисных изменений. Проверки могут быть также запущены обновлениями баз данных или запросами DHCP. Записи предыстории изменений могут влиять на частоту этих повторных проверок на основе предположения, что машины, которые часто перемещаются, могут продолжать делать это (например, переносные компьютеры).
Согласно еще дополнительным вариантам осуществления IP-адрес вызывающей стороны может быть использован для индексации сервера информации о местоположении, чтобы своевременно представлять кэшированные данные о местоположении с временной меткой, так чтобы устаревание данных и уровень достоверности могли быть оценены сервисом, основанным на определении местоположения (например, диспетчером во время неотложного вызова или любое время, в которое более высокая достоверность нужна для данных о местоположении).
Тогда как примерные системы на фиг.1, 2 и 3 были описаны с конкретными компонентами и алгоритмами, варианты осуществления не ограничены этими конфигурациями и операциями согласно этим примерным системам. Определение детального местоположения вычислительного устройства и пользователей может быть реализовано в конфигурациях, использующих меньшее количество или дополнительные компоненты и выполняющих другие задачи. К тому же варианты осуществления могут быть реализованы в проводных или беспроводных сетях и совместно с другими показателями и/или информацией о местоположении. Например, данные индикатора мощности принятого сигнала (RSSI) могут быть использованы совместно с алгоритмом согласно вариантам осуществления для расширенных уровней достоверности.
На фиг.4 проиллюстрирована схема 400 примерного сетевого окружения, где могут быть реализованы варианты осуществления. Платформа, обеспечивающая определение местоположения внутри сетевых коммуникационных систем, может быть реализована посредством программного обеспечения, исполняемого на одном или более серверах 462, такого как размещенный сервис. Данная платформа может осуществлять связь с клиентскими приложениями на индивидуальных вычислительных устройствах, таких как смартфон 451, смонтированный на транспортном средстве компьютер 452, карманный компьютер 453, переносной компьютер 454, настольный компьютер 455 ("клиентские устройства"), через сеть(и) 450.
Как рассмотрено выше, сервис информации о местоположении, исполняемый одним из серверов 462, может определять местоположение пользователя с достоверностью и предоставлять информацию сервису, основанному на определении местоположения, исполняемому другим из серверов 462 или еще одним сервером в другой сети. Сервис информации о местоположении может принимать ввод от пользователей посредством клиентских устройств с 451 по 455 и извлекать справочную информацию из хранилищ(а) данных 466 или 468 (посредством серверов 464 баз данных).
Сеть(и) 450 могут содержать любую топологию из серверов, клиентов, поставщиков Интернет-сервисов и коммуникационных сред. Система согласно вариантам осуществления может иметь статическую или динамическую топологию. Сеть(и) 450 может включать в себя защищенную сети, такую как корпоративная сеть, незащищенную сеть, такую как беспроводная открытая сеть, или Интернет. Сеть(и) 450 может также координировать связь через другие сети, такие как коммутируемая телефонная сеть общего пользования (PSTN) или сотовые сети. К тому же сеть(и) 450 может включать в себя беспроводные сети ближнего радиуса действия, такие как Bluetooth или аналогичные. Сеть(и) 450 обеспечивают связь между узлами, описанными в настоящем документе. В качестве примера, а не ограничения, сеть(и) 450 могут включать в себя беспроводные среды, такие как акустические, радиочастотные, инфракрасные и другие беспроводные среды.
Много других конфигураций вычислительных устройств, приложений, источников данных и систем распространения данных могут быть использованы для реализации коммуникационной системы со способностью определения детального местоположения. К тому же, сетевые окружения, рассмотренные на фиг.4, приведены только для иллюстративных целей. Варианты осуществления не ограничены примерными приложениями, модулями или процессами.
Фиг.5 и связанное с ней рассмотрение предназначены предоставлять краткое, общее описание подходящего вычислительного окружения, в котором варианты осуществления могут быть реализованы. Со ссылкой на фиг.5, проиллюстрирована блок-схема примерного вычислительного операционного окружения для приложения информации о местоположении согласно вариантам осуществления, такое как вычислительное устройство 500. В базовой конфигурации вычислительное устройство 500 может быть сервером и включать в себя по меньшей мере один процессорный блок 502 и системную память 504. Вычислительное устройство 500 может также включать в себя множество процессорных блоков, которые работают совместно при исполнении программ. В зависимости от точной конфигурации и типа вычислительного устройства системная память 504 может быть энергозависимой (такой как RAM), энергонезависимой (такой как ROM, flash-память и т.д.) или некоторой их комбинацией. Системная память 504 типично включает в себя операционную систему 505, подходящую для управления работой платформы, такую как операционные системы WINDOWS® от корпорации Microsoft из Редмонда, Вашингтон. Системная память 504 может также включать в себя одно или более программных приложений, таких как программные модули 506 и приложение 522 информации о местоположении.
Приложение 522 информации о местоположении может определять местоположения пользователей и ассоциированных вычислительных устройств на основе алгоритм(ов) достоверности, как рассмотрено ранее. Это базовая конфигурация проиллюстрирована на фиг.5 посредством тех компонентов внутри пунктирной линии 508.
Вычислительное устройство 500 может иметь дополнительные признаки или функциональность. Например, вычислительное устройство 500 может также включать в себя дополнительные устройства хранения данных (съемные и/или несъемные), такие как, например, магнитные диски, оптические диски или лента. Такое дополнительное хранилище проиллюстрировано на фиг.5 посредством съемного хранилища 509 и несъемного хранилища 510. Считываемые компьютером носители информации могут включать в себя энергонезависимые, съемные и несъемные накопители, реализованные любым способом или технологией для хранения информации, такой как считываемые компьютером инструкции, структуры данных, программные модули или другие данные. Системная память 504, съемное хранилище 509 и несъемное хранилище 510, все являются примерами считываемых компьютером носителей информации. Считываемые компьютером носители информации включают в себя, но не ограничены этим, RAM, ROM, EEPROM, flash-память или другую технологию памяти, CD-ROM, универсальные цифровые диски (DVD) или оптическое хранилище, магнитную ленту, хранилище на магнитных дисках или другие магнитные запоминающие устройства, или любой другой носитель, который может быть использован для хранения желаемой информации и к которому можно осуществить доступ посредством вычислительного устройства 500. Любые такие считываемые компьютером носители информации могут быть частью вычислительного устройства 500. Вычислительное устройство может также иметь устройство(а) 512 ввода, такое как клавиатура, мышь, перо, устройство голосового ввода, устройство сенсорного ввода, и сравнимые устройства ввода. Устройство(а) 514 вывода, такое как дисплей, динамики, принтер и другие типы устройств вывода, может быть также включено в состав. Эти устройства хорошо известны в данной области техники и не нуждаются в подробном рассмотрении здесь.
Вычислительное устройство 500 может также содержать коммуникационные соединения 516, которые обеспечивают возможность устройству осуществлять связь с другими устройствами 518, как, например, через проводную или беспроводную сеть в распределенном вычислительном окружении, спутниковую линию, сотовую линию, сеть ближнего радиуса действия и сравнимые механизмы. Другие устройства 518 могут включать в себя вычислительное устройство(а), которое исполняет коммуникационные приложения, справочные серверы и сравнимые устройства. Коммуникационное соединение(я) 516 является одним примером коммуникационной среды. Коммуникационные среды могут включать в себя считываемые компьютером инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущая волна или другой транспортный механизм, и включают в себя любые среды доставки информации. Термин "модулированный сигнал данных" означает сигнал, у которого один или более параметров задан или изменяется таким образом, чтобы кодировать информацию в сигнале. В качестве примера, а не ограничения, коммуникационные среды включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные, инфракрасные и другие беспроводные среды.
Примерные варианты осуществления также включают в себя способы. Эти способы могут быть реализованы любым количеством путей, включая структуры, описанные в этом документе. Один такой путь - посредством машинных операций устройств описанного в этом документе типа.
Еще один опциональный путь - для одной или более индивидуальных операций способов, подлежащих выполнению совместно с одним или более людьми-операторами, выполняющими некоторые из них. Эти люди-операторы не должны быть совместно расположены друг с другом, но каждый может быть только с машиной, которая выполняет часть программы.
На фиг.6 проиллюстрирована логическая схема последовательности операций для процесса 600 определения информации о местоположении в сетевом вычислительном окружении согласно вариантам осуществления. Процесс 600 может быть реализован как часть сетевой коммуникационной системы в сервере информации о местоположении.
Процесс 600 начинается с операции 610, где делают определение того, используется ли целевое вычислительное устройство в основном как локальная машина или удаленная машина. Тип вычислительного устройства (например, настольный компьютер, переносной компьютер, сервер и т.д.), записи о логическом входе/логическом выходе, местоположение подсети и сравнимые параметры могут быть использованы для определения того, используется ли машина локально или удаленно. Если машина является удаленно используемым вычислительным устройством, она, вероятно, является не релевантной для определения местоположения. Если машина в основном используется локально, статус пользователя может быть определен на следующей операции 620. Если вычислительное устройство исключительно используется одиночным пользователем, оно, вероятно, предоставляет релевантную информацию для определения местоположения. Если машина является многопользовательским устройством, с другой стороны, использование может быть изучено для определения того, является ли представляющий интерес пользователь (например, пользователь, делающий неотложный вызов) основным пользователем машины. Это может быть осуществлено посредством изучения ряда событий, как рассмотрено ранее.
В операции 630 принятия решения достоверность местоположения вычисляют на основе локального использования по сравнению с удаленным и определения основного пользователя. В некоторых случаях пользовательский ввод и/или обратная связь от администратора могут быть также включены в показатель достоверности. В операции 640 извлекают физическое местоположение целевой машины из базы данных (например, справочного сервиса) и предоставляют сервису, основанному на определении местоположения, наряду с информацией о показателе достоверности в операции 650.
На фиг.7 проиллюстрирована логическая схема последовательности операций для процесса 700 определения информации о местоположении в сетевом вычислительном окружении с дополнительными подробными этапами. Процесс 700 начинается с операции 710, где определяют шаблоны локального и удаленного использования для целевой машины. На основе шаблонов отношение локальное/удаленное использование (L/R) может быть вычислено в операции 720. Например, отношение L/R может быть суммарным временем, проведенным в состоянии логического входа, для локальных пользователей, деленным на суммарное время, проведенное в состоянии логического входа удаленными пользователями.
В операции 730 принятия решения делают определение того, превышает ли отношение L/R предварительно заданный порог. Порог может быть задан администратором, или он может быть динамическим порогом, который корректируют на основе типа машины, сетевых условий, времени дня и т.д. Если отношение L/R ниже порога, то машина является не релевантной для определения местоположения. Если отношение L/R выше порога, то обработка продолжается в операции 740 принятия решения, где делают еще одно определение того, является ли целевая машина однопользовательской машиной.
Если вычислительное устройство является однопользовательской машиной, то пользователя, связанного с данной машиной, задают как основного пользователя в операции 750, и извлекают информацию о физическом местоположении для пользователя/машины в операции 790, как рассмотрено ранее. Если машина является многопользовательской машиной, то отношение пикового значения использования к среднему значению использования (P/M) вычисляют для распределения локальных пользователей вычислительного устройства в операции 760.
В операции 770 принятия решения делают определение того, является ли отношение P/M выше, чем предварительно заданный порог. Если отношение ниже порога, то одиночного основного пользователя не существует, и система не может достоверно определить, является ли местоположение пользователя таким же, как у целевого вычислительного устройства. В случаях, где отношение P/M меньше, чем порог и машина объявлена многопользовательской машиной, может потребоваться, чтобы информация о местоположении приходила напрямую из пользовательского ввода или некоторого другого (внешнего) механизма определения местоположения. Поданная пользователем информация о местоположении может считаться как местоположение с низкой достоверностью для целей надежности.
Если упомянутое отношение выше предварительно заданного порога, то пользователя с пиковым значением задают как основного пользователя в операции 780, и уровень достоверности может быть присвоен (например, на основе этого отношения) паре пользователь-машина. Далее, может быть извлечена информация о физическом местоположении для пользователя/вычислительного устройства из базы данных, такой как справочный сервис, в операции 790. За этим может следовать доставка информации о местоположении, информации о достоверности и дополнительных данных, как рассмотрено выше, в сервис, основанный на определении местоположения.
Пороги для определения локального/удаленного использования и основного пользователя могут быть заданы и/или модифицированы на основе критериев, таких как число компьютеров в сети (подсети), шаблоны использования, географическое распределение, тип сети и сравнимых условиях. Уровень достоверности (значение показателя достоверности) может выражаться в числовой шкале. Например, значение между 1 и 10 может быть назначено показателю достоверности на основе отношения L/R, отношения P/M, того, был ли использован пользовательский ввод и т.п. Низкое значение достоверности (например, 1-3) может указывать сервису, основанному на определении местоположения, местоположение, которое может быть ненадежным, в то время как высокое значение достоверности (например, 7-10) может указывать высокую надежность. Конечно, эти значения и шкала являются примерными и не налагают ограничения на варианты осуществления. Любая числовая и нечисловая шкала может быть использована для предоставления уровня достоверности сервису, основанному на определении местоположения.
Операции, включенные в процессы 600 и 700, показаны для иллюстративных целей. Определение детального местоположения сетевых компьютеров может быть реализовано аналогичными процессами с меньшими или дополнительными этапами, равно как и в разном порядке операций, используя принципы, описанные в настоящем документе.
Вышеуказанные описание, примеры и данные предоставляют полное описание изготовления и использования композиции вариантов осуществления изобретения. Несмотря на то, что изобретение было описано на языке, характерном для структурных признаков и методологических действий, следует понимать, что объем изобретения, определенный прилагаемой формулой изобретения, не обязательно ограничен конкретными признаками или описанными выше действиями. Скорее, конкретные признаки и действия, описанные выше, раскрыты в качестве примерных форм реализации формулы изобретения и вариантов осуществления.
название | год | авторы | номер документа |
---|---|---|---|
СИСТЕМЫ И СПОСОБЫ ДЛЯ ПРОЕЦИРОВАНИЯ СОДЕРЖИМОГО С КОМПЬЮТЕРНЫХ УСТРОЙСТВ | 2004 |
|
RU2389067C2 |
ПРЕДОСТАВЛЕНИЕ УСТРОЙСТВ В КАЧЕСТВЕ СЕРВИСА | 2014 |
|
RU2648956C2 |
РАСШИРЯЕМОСТЬ ДЛЯ ОСНОВЫВАЮЩЕЙСЯ НА WEB ВИЗУАЛИЗАЦИИ ДИАГРАММ | 2009 |
|
RU2524855C2 |
ПРЕДОСТАВЛЕНИЕ УСТРОЙСТВ В КАЧЕСТВЕ СЕРВИСА | 2014 |
|
RU2763314C2 |
СЕРВЕР И СПОСОБ ДЛЯ ОСУЩЕСТВЛЕНИЯ КОМПЬЮТЕРНЫХ КОММУНИКАЦИЙ ДЛЯ АВТОМАТИЧЕСКОГО ВЫПОЛНЕНИЯ И УПРАВЛЕНИЯ СРАВНЕНИЕМ | 2006 |
|
RU2439836C2 |
ПЕРЕВОДЧЕСКИЙ СЕРВИС НА БАЗЕ ЭЛЕКТРОННОГО СООБЩЕСТВА | 2015 |
|
RU2604984C1 |
СИСТЕМА ЗАЩИТЫ ДЛЯ СВЯЗАННЫХ КОМПЬЮТЕРНЫХ СЕТЕЙ | 1995 |
|
RU2152691C1 |
СИСТЕМЫ И СПОСОБЫ ДИНАМИЧЕСКОГО АГРЕГИРОВАНИЯ ПОКАЗАТЕЛЕЙ ДЛЯ ОБНАРУЖЕНИЯ СЕТЕВОГО МОШЕННИЧЕСТВА | 2012 |
|
RU2607229C2 |
ОБНОВЛЕНИЕ МОДЕЛЕЙ КЛАССИФИКАТОРОВ ПОНИМАНИЯ ЯЗЫКА НА ОСНОВЕ КРАУДСОРСИНГА | 2016 |
|
RU2699587C2 |
РАЗНОСТНЫЕ ВОССТАНОВЛЕНИЯ ФАЙЛА И СИСТЕМЫ ИЗ ОДНОРАНГОВЫХ УЗЛОВ СЕТИ И ОБЛАКА | 2010 |
|
RU2531869C2 |
Изобретение относится к способам определения местоположения в сетевых коммуникационных системах. Технический результат заключается в повышении скорости определения местоположения в сетевых коммуникационных системах. Способ содержит этапы, на которых: определяют, используется ли целевое компьютерное устройство в основном локально, является ли целевое компьютерное устройство многопользовательским устройством, является ли представляющий интерес пользователь основным пользователем целевого компьютерного устройства, извлекают информацию о физическом местоположении для представляющего интерес пользователя, определяют показатель достоверности на основе одного или более из отношения локального использования к удаленному использованию, отношения пикового использования к среднему использованию для локальных пользователей целевого компьютерного устройства и ввода от представляющего интерес пользователя; предоставляют информацию о физическом местоположении. 3 н. и 12 з.п. ф-лы, 7 ил.
1. Способ, выполняемый, по меньшей мере частично, в компьютерном устройстве и предназначенный для определения местоположения в сетевых коммуникационных системах, при этом способ содержит этапы, на которых:
определяют, используется ли целевое компьютерное устройство в основном локально;
если целевое компьютерное устройство используется в основном локально, то определяют, является ли целевое компьютерное устройство многопользовательским устройством;
если целевое компьютерное устройство является многопользовательским устройством, то определяют, является ли представляющий интерес пользователь основным пользователем целевого компьютерного устройства;
если представляющий интерес пользователь является основным пользователем целевого компьютерного устройства, извлекают информацию о физическом местоположении для представляющего интерес пользователя;
определяют показатель достоверности на основе одного или более из отношения локального использования к удаленному использованию, отношения пикового использования к среднему использованию для локальных пользователей целевого компьютерного устройства и ввода от представляющего интерес пользователя;
присваивают низкое значение достоверности показателю достоверности, если показатель достоверности определен на основе ввода от представляющего интерес пользователя; и
предоставляют информацию о физическом местоположении и показатель достоверности сервису, основывающемуся на определении местоположения.
2. Способ по п. 1, в котором сервисом, основывающимся на определении местоположения, является сервис неотложной помощи, а представляющим интерес пользователем является лицо, сообщающее о чрезвычайной ситуации посредством коммуникационного приложения, исполняющегося на целевом компьютерном устройстве.
3. Способ по п. 1, дополнительно содержащий этап, на котором присваивают высокое значение достоверности показателю достоверности, если определено, что целевое вычислительное устройство является однопользовательским вычислительным устройством.
4. Способ по п. 1, в котором упомянутое определение того, используется ли целевое компьютерное устройство в основном локально, основывается на событиях, включающих в себя по меньшей мере одно из следующего их набора: логический вход, логический выход, повторное подключение, отключение, начальная загрузка, перезагрузка, выключение, блокировка рабочей станции, разблокировка рабочей станции и отключение экранной заставки.
5. Способ по п. 1, дополнительно содержащий этапы, на которых:
определяют информацию о физическом местоположении либо через периодический, либо через случайный интервал; и
выполняют верификацию информации о физическом местоположении в ответ на запрос от сервиса, основывающегося на определении местоположения.
6. Способ по п. 1, в котором показатель достоверности определяют на основе сравнения отношения локального использования к удаленному использованию с первым порогом и сравнения отношения пикового использования к среднему использованию со вторым порогом, при этом первый и второй пороги определяются на основе по меньшей мере одного из следующего набора: тип целевого компьютерного устройства, тип сети, время суток, количество компьютерных устройств в сети, шаблон использования и географическое распределение компьютерных устройств.
7. Компьютерное устройство для предоставления информации о детальном местоположении в сетевой коммуникационной системе, содержащее:
компонент связи для осуществления связи со множеством клиентских устройств;
память;
процессор, подключенный к памяти, причем процессор исполняет сервис информации о местоположении для выполнения действий, включающих в себя:
определение отношения локального использования к удаленному использованию (L/R) для целевого клиентского устройства;
если L/R выше первого порога, определение отношения пикового использования к среднему использованию (P/M) для целевого клиентского устройства;
если P/M ниже второго порога, определение основного пользователя для целевого клиентского устройства исходя из одного из пользовательского ввода и администраторского ввода;
вычисление показателя достоверности на основе L/R и P/M;
извлечение информации о физическом местоположении для основного пользователя целевого клиентского устройства из справочного сервиса;
предоставление информации о физическом местоположении и вычисленного показателя достоверности сервису, основывающемуся на определении местоположения;
запрос свидетельства местоположения из доверенного сервера сертификации местоположения в ответ на прием запроса от сервиса, основывающегося на определении местоположения; и
прием свидетельства местоположения, сгенерированного на основе сравнения местоположения целевого клиентского устройства и идентификатора с местоположением и идентификатором по меньшей мере одного другого клиентского устройства в том же удостоверяющем наборе.
8. Компьютерное устройство по п. 7, в котором сервис информации о местоположении дополнительно выполнен с возможностью осуществления действий, включающих в себя:
выбор предварительно заданного количества клиентских устройств в той же подсети, что и целевое клиентское устройство, чтобы они выступали в роли удостоверяющего набора; и
верификацию местоположения целевого клиентского устройства посредством сопоставления местоположения целевого клиентского устройства внутри сети по сравнению с удостоверяющим набором примерно в том же местоположении внутри сети.
9. Компьютерное устройство по п. 8, в котором упомянутая верификация выполняется посредством изучения по меньшей мере одного случайно выбранного клиентского устройства из удостоверяющего набора и подтверждения того, что клиентские устройства находятся в одной и той же подсети.
10. Компьютерное устройство по п. 7, в котором L/R и P/M определяются на основе изучения событий, связанных с целевым клиентским устройством, причем эти события записываются за предварительно заданный период, так что исключительные случаи учитываются соответствующим образом.
11. Компьютерное устройство по п. 7, в котором первый и второй пороги определяются и динамически корректируются на основе по меньшей мере одного из следующего набора: тип целевого клиентского устройства, тип сети, время суток, количество клиентских устройств в сети, шаблон использования и географическое распределение клиентских устройств.
12. Считываемый компьютером носитель информации, на котором сохранены инструкции для определения местоположения в сетевых коммуникационных системах, причем инструкции содержат:
выбор предварительно заданного количества компьютерных устройств в той же подсети, что и целевое компьютерное устройство, для формирования удостоверяющего набора;
определение отношения локального использования к удаленному использованию для целевого компьютерного устройства;
определение отношения использования основным пользователем для целевого компьютерного устройства;
поддержание соотнесения целевого компьютерного устройства с по меньшей мере одним из следующего набора: физическое местоположение, сетевой идентификатор, машинный идентификатор, временная метка и показатель достоверности, при этом показатель достоверности определяется на основе одного или более из отношения локального использования к удаленному использованию, отношения использования основным пользователем для целевого компьютерного устройства и ввода от представляющего интерес пользователя;
присвоение низкого значения достоверности показателю достоверности, если показатель достоверности определен на основе ввода от представляющего интерес пользователя;
верификацию местоположения для целевого компьютерного устройства на основе соотнесенной информации в ответ на запрос от сервиса, основывающегося на определении местоположения; и
предоставление сервису, основывающемуся на определении местоположения, верифицированного местоположения и соотнесенной информации для целевого компьютерного устройства в ответ на упомянутый запрос.
13. Считываемый компьютером носитель по п. 12, в котором инструкции дополнительно содержат:
представление, по меньшей мере, части соотнесенной информации администратору;
прием подтверждения администратора; и
сохранение подтвержденной части соотнесенной информации в качестве введенных данных с высокой достоверностью.
14. Считываемый компьютером носитель по п. 13, в котором инструкции дополнительно содержат:
если целевое компьютерное устройство является однопользовательским устройством, сохранение соотнесенной информации для целевого компьютерного устройства в качестве введенных данных с высокой достоверностью;
если целевое компьютерное устройство является многопользовательским устройством и отношение использования основным пользователем ниже предварительно заданного порога, запрос пользовательского ввода от целевого компьютерного устройства и сохранение соотнесенной информации для целевого компьютерного устройства в качестве введенных данных с низкой достоверностью; и
если целевое компьютерное устройство является многопользовательским устройством и пользовательский ввод был принят от целевого компьютерного устройства, верификацию принятого пользовательского ввода посредством изучения компьютерных устройств в ассоциированном удостоверяющем наборе и сохранение соотнесенной информации для целевого компьютерного устройства в качестве верифицированных удостоверяющим набором введенных данных с высокой достоверностью.
15. Считываемый компьютером носитель по п. 12, при этом частота определения для отношения локального использования к удаленному использованию и отношения использования основным пользователем и частота упомянутой верификации определяются на основе записей предыстории изменений, связанных с целевым компьютерным устройством.
Пломбировальные щипцы | 1923 |
|
SU2006A1 |
Пломбировальные щипцы | 1923 |
|
SU2006A1 |
Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок | 1923 |
|
SU2008A1 |
Способ восстановления хромовой кислоты, в частности для получения хромовых квасцов | 1921 |
|
SU7A1 |
Авторы
Даты
2016-03-27—Публикация
2011-01-04—Подача