Система предотвращения несанкционированного доступа, содержащая множество серверных узлов и способ совместного использования данных в этой системе
Иллюстрации
Показать всеИзобретение относится к системе физической защиты, содержащей множество серверных узлов. Технический результат – обеспечение совместного использования данных в системе физической защиты без использования центрального сервера. Предложен способ совместного использования данных в системе физической защиты, содержащей множество серверных узлов, причем способ включает обращение, с использованием одного из серверных узлов, к идентификатору узла, идентифицирующего другой серверный узел, причем первый и второй узлы составляют по меньшей мере часть кластера серверов и идентификатор узла составляет по меньшей мере часть информации о составе кластера, идентифицирующей все, и доступные для всех, серверные узлы в кластере серверов, передачу данных из первого узла на второй узел; и добавление нового серверного узла к кластеру серверов, причем добавление включает обмен версии информации о составе кластера, хранящейся на новом серверном узле, с версией информации о составе кластера, хранящейся на одном из серверных узлов, который уже является частью кластера серверов, и синхронизацию версии информации о составе кластера, хранящейся на новом серверном узле, с версиями информации о составе кластера, хранящимися на всех серверных узлах, которые составляют часть кластера, прежде чем новый серверный узел присоединится к кластеру. 3 н. и 17 з.п. ф-лы, 12 ил., 1 табл.
Реферат
ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННУЮ ЗАЯВКУ
[0001] Настоящая заявка является частичным продолжением заявки США №13/607,447, поданной 7 сентября 2012 г., содержание которой полностью вводится здесь ссылкой в настоящую заявку.
ОБЛАСТЬ ТЕХНИКИ
[0002] Настоящее изобретение относится к системе физической защиты, содержащей множество серверных узлов.
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
[0003] Система физической защиты - это система, осуществляющая мероприятия по предотвращению физического доступа людей, не имеющих разрешения, к объекту, такому как здание, промышленное предприятие или источник конфиденциальной информации. Примеры таких систем включают: системы наблюдения, содержащие видеокамеры для контроля объекта и прилегающей к нему зоны; системы управления доступом, например, системы, в которых в которых используются карточки с радиометками для управления доступом в здание; системы обнаружения проникновения, такие как охранные системы для жилищ, а также комбинации вышеуказанных систем.
[0004] Система физической защиты часто содержит компьютеры. По мере расширения такой системы возрастает и вычислительная мощность, необходимая для ее работы. Например, по мере роста количества видеокамер в системе наблюдения, необходимая вычислительная мощность также возрастает для обеспечения возможности хранения дополнительных видеоматериалов, а также одновременного использования и управления увеличенным количеством видеокамер. Соответственно, осуществляются исследования и разработки, направленные на преодоление проблем, возникающих при расширении систем физической защиты.
[0005] В настоящем изобретении предлагается способ совместного использования данных в системе физической защиты, содержащей множество серверных узлов. Способ включает: выборку с использованием одного из серверных узлов ("первый узел") идентификатора узла, идентифицирующего другой серверный узел ("второй узел"), причем первый и второй узлы составляют по меньшей мере часть кластера серверов, и идентификатор узла составляет по меньшей мере часть информации о составе кластера, идентифицирующей все, и доступные для всех, серверные узлы в кластере серверов; и передачу данных из первого узла на второй узел.
[0006] Кластер серверов может содержать по меньшей мере три серверных узла.
[0007] Серверные узлы могут содержать видеокамеры, сетевые видеомагнитофоны и серверы управления доступом.
[0008] Способ может также включать выборку с использованием второго узла идентификатора узла, идентифицирующего первый узел; и передачу дополнительных данных из второго узла на первый узел.
[0009] Информация о составе кластера может содержать идентификатор узла, однозначным образом идентифицирующий каждый серверный узел в кластере серверов; и идентификатор кластера, однозначным образом идентифицирующий кластер серверов, к которому принадлежат серверные узлы.
[0010] Каждый серверный узел в кластере серверов может хранить локально и постоянно обновлять свою собственную версию информации о составе кластера.
[0011] Способ может также включать: перезагрузку одного из серверных узлов ("перезагруженный серверный узел") в кластере серверов; и, после возвращения перезагруженного серверного узла в режим онлайн, использование этого узла для осуществления способа, включающего: i) выборку идентификатора кластера, идентифицирующего кластер серверов; и ii) повторное присоединение к кластеру серверов в автоматическом режиме.
[0012] Способ может также включать: добавление нового серверного узла к кластеру серверов путем осуществления следующих действий: обмен версии информации о составе кластера, записанной на новом серверном узле, с версией информации о составе кластера, записанной на одном из серверных узлов, который уже является частью кластера серверов ("узел управления составом кластера"); и синхронизация версий информации о составе кластера, записанных на новом серверном узле с версиями информации о составе кластера, записанных на всех серверных узлах кластера, прежде чем новый серверный узел присоединится к кластеру.
[0013] Передача данных может включать поиск по идентификатору узла, с использованием первого узла, оконечного устройства связи для второго узла; и передачу данных из первого узла в это оконечное устройство связи.
[0014] Оконечному устройству связи и идентификатору узла может соответствовать запись в карте сети, связывающей идентификаторы узлов для всех серверных узлов в кластере серверов с соответствующими оконечными устройствами связи, и каждый серверный узел в кластере узлов может хранить локально и постоянно обновлять свою собственную версию карты сети.
[0015] Карта сети может обеспечивать возможность каждому из серверных узлов в кластере серверов передавать данные любому из остальных серверных узлов в кластере серверов без использования центрального сервера.
[0016] Данные могут быть записаны локально на первом узле, и способ может включать также модификацию данных с использованием первого узла, причем передача данных из первого узла на второй узел составляет часть процесса синхронизации данных на первом и втором узлах после модификации этих данных первым узлом.
[0017] Данные могут содержать информацию версии, сформированную с использованием причинного механизма формирования версий (causality versioning mechanism), причем на первом и втором узлах могут храниться разные версии данных, и синхронизация данных может включать сравнение информации версий, записанных на первом и втором узлах, и принятие на обоих узлах тех данных, для которых информация версии указывает на то, что это наиболее свежие данные.
[0018] Данные могут содержать идентификатор первого узла, информацию состояния контрольных сообщений первого узла, информацию состояния приложений первого узла, а также информацию версии, и передача данных может включать распространение данных по всем серверным узлам в кластере серверов с использованием протокола Gossip, по которому осуществляется обмен данными между парами серверных узлов в кластере.
[0019] Данные могут распространяться периодически по всем серверным узлам в кластере серверов.
[0020] Данные могут быть переданы на второй узел, когда первый узел присоединяется к кластеру.
[0021] На каждом из серверных узлов в кластере серверов может храниться локально домен с записями, которые могут быть модифицированы любым из узлов, и способ может включать также формирование информации версии с использованием причинного механизма формирования версии, так что информация версии указывает, какой из серверных узлов самым последним модифицировал одну из записей.
[0022] Информация о состоянии приложения может содержать хеш-значение высшего уровня, сгенерированное путем хеширования всех записей в домене.
[0023] Способ может также включать сравнение, с использованием второго узла, указанного хеш-значения высшего уровня с хеш-значением высшего уровня, сгенерированного путем хеширования версии соответствующего домена, хранимого локально на втором узле; и, если хеш-значения высшего уровня отличаются, синхронизацию доменов на первом и втором узлах с использованием информации версий.
[0024] На первом узле может храниться локально запись статуса, которая может быть модифицирована только первым узлом, и информация версии содержит номер версии, который первый узел увеличивает на единицу всякий раз, когда он модифицирует запись статуса.
[0025] Информация о состоянии приложений может содержать пару параметров записи статуса, содержащую идентификатор записи статуса, который идентифицирует запись статуса, и номер версии.
[0026] Способ может также включать сравнение, с использованием второго узла, номера версии, полученного от первого узла, с номером версии соответствующей записи статуса, хранимой локально на втором узле; и если номера версий отличаются, обновление записи статуса, хранимой локально на втором узле, записью статуса, хранимой локально на первом узле.
[0027] Обновление записи статуса может включать передачу из первого узла на второй узел дополнительных записей статуса, хранимых локально на первом узле, которые были модифицированы одновременно с записью статуса.
[0028] Первый и второй узлы могут составлять по меньшей мере часть группы серверных узлов в кластере, в которой первый узел может передавать данные полностью упорядоченным образом всем серверным узлам в группе, и передача данных может включать передачу первым узлом данных всем серверным узлам в группе.
[0029] Данные могут включать изменяемые данные, генерируемые в процессе работы системы физической защиты.
[0030] Данные могут также содержать потоковое видео, передаваемое с другого серверного узла в кластере серверов через первый узел на второй узел.
[0031] В настоящем изобретении также предлагается система физической защиты, в которой осуществляется совместное использование данных, причем система содержит множество серверных узлов, в том числе первый узел и второй узел, и первый узел содержит процессор соединенный, с возможностью обмена информацией, с машиночитаемым носителем информации, на котором записаны программы, выполнение которых процессором обеспечивает осуществление способа, включающего: выборку идентификатора узла, идентифицирующего второй узел, причем первый и второй узлы составляют по меньшей мере часть кластера серверов, и идентификатор узла составляет по меньшей мере часть информации о составе кластера, идентифицирующей все, и доступные для всех, серверные узлы в кластере серверов; и передачу данных на второй узел.
[0032] В настоящем изобретении также предлагается машиночитаемый носитель с постоянным хранением информации, содержащий программы, исполнение которых процессором обеспечивает осуществление способа совместного использования данных в системе физической защиты, содержащей множество серверных узлов, причем способ включает: выборку с использованием одного из серверных узлов ("первый узел") идентификатора узла, идентифицирующего другой серверный узел ("второй узел"), причем первый и второй узлы составляют по меньшей мере часть кластера серверов, и идентификатор узла составляет по меньшей мере часть информации о составе кластера, идентифицирующей все, и доступные для всех, серверные узлы в кластере серверов; и передачу данных из первого узла на второй узел.
[0033] В настоящем изобретении также предлагается способ взаимодействия с дистанционно управляемым дисплеем в системе физической защиты, содержащей множество серверных узлов, причем способ включает: передачу из одного из серверных узлов ("второй узел"), который может обмениваться информацией с дистанционно управляемым дисплеем, на другой серверный узел ("первый узел"), который может обмениваться информацией с клиентским дисплеем, данных состояния изображения, характеризующих изображение, отображаемое на дистанционно управляемом дисплее; и отображение на клиентском дисплее по меньшей мере части изображения, отображаемого на дистанционно управляемом дисплее. В одном из вариантов ни один из серверных узлов не является центральным шлюзовым сервером, и в альтернативном варианте по меньшей мере один из серверных узлов является центральным шлюзовым сервером.
[0034] Способ может также включать передачу из первого узла на второй узел сообщения на изменение изображения на дистанционно управляемом дисплее; и обновление изображения на дистанционно управляемом дисплее в соответствии с сообщением, переданным из первого узла на второй узел.
[0035] Первый и второй узлы, а также по меньшей мере еще один узел из множества серверных узлов могут составлять кластер серверов, и первый и второй узлы могут составлять по меньшей мере часть группы серверных узлов в кластере, в которой второй узел может передавать данные состояния изображения полностью упорядоченным образом всем другим серверным узлам в группе, и передача данных состояния изображения может включать передачу вторым узлом данных всем другим серверным узлам в группе.
[0036] Первый и второй узлы, а также по меньшей мере еще один узел из множества серверных узлов могут составлять кластер серверов, и первый и второй узлы могут составлять по меньшей мере часть группы серверных узлов в кластере, в которой первый узел может передавать сообщение на изменение состояния дистанционно управляемого дисплея полностью упорядоченным образом всем другим серверным узлам в группе, и первый узел может передавать сообщение на изменение состояния дистанционно управляемого дисплея всем другим серверным узлам в группе.
[0037] Способ может включать также передачу из второго узла на первый узел уведомления о том, что изображение дистанционно управляемого дисплея доступно для управления.
[0038] Передача уведомления может включать его распространение по всем серверным узлам в кластере серверов с использованием протокола Gossip, по которому осуществляется обмен данными между парами серверных узлов в кластере.
[0039] Способ может включать также, перед передачей состояния дистанционно управляемого дисплея на управляющий дисплей, выборку с использованием второго узла идентификатора первого узла, причем первый и второй узлы составляют по меньшей мере часть кластера серверов, и идентификатор узла составляет по меньшей мере часть информации о составе кластера, идентифицирующей все, и доступные для всех, серверные узлы в кластере серверов.
[0040] Информация о составе кластера может содержать: идентификатор узла, однозначным образом идентифицирующий каждый серверный узел в кластере серверов; и идентификатор кластера, однозначным образом идентифицирующий кластер серверов, к которому принадлежат серверные узлы.
[0041] Каждый серверный узел в кластере серверов может хранить локально и постоянно обновлять свою собственную версию информации о составе кластера.
[0042] В настоящем изобретении предлагается также система физической защиты, содержащая: клиентский дисплей; дистанционно управляемый дисплей; и множество серверных узлов, один из которых ("первый узел") может обмениваться информацией с клиентским дисплеем, и другой серверный узел ("второй узел") может обмениваться информацией с дистанционно управляемым дисплеем, причем второй узел сконфигурирован для передачи на первый узел данных состояния изображения, характеризующих изображение, отображаемое на дистанционно управляемом дисплее, и первый узел сконфигурирован для отображения на клиентском дисплее по меньшей мере части изображения, отображаемого на дистанционно управляемом дисплее. В одном из вариантов ни один из серверных узлов не является центральным шлюзовым сервером, и в альтернативном варианте по меньшей мере один из серверных узлов является центральным шлюзовым сервером.
[0043] В настоящем изобретении предлагается также система физической защиты, содержащая: клиентское устройство с клиентским дисплеем; дистанционно управляемый дисплей; и множество серверных узлов, один из которых ("первый узел") может обмениваться информацией с клиентским устройством, и другой серверный узел ("второй узел") может обмениваться информацией с дистанционно управляемым дисплеем, причем второй узел сконфигурирован для передачи на первый узел данных состояния изображения, характеризующих изображение, отображаемое на дистанционно управляемом дисплее, и первый узел сконфигурирован для отображения на клиентском дисплее по меньшей мере части изображения, отображаемого на дистанционно управляемом дисплее. В одном из вариантов ни один из серверных узлов не является центральным шлюзовым сервером, и в альтернативном варианте по меньшей мере один из серверных узлов является центральным шлюзовым сервером.
[0044] Дистанционно управляемый дисплей может быть подсоединен ко второму узлу непосредственно или же опосредованно, например, через дистанционно управляемое клиентское устройство или рабочую станцию.
[0045] В настоящем изобретении также предлагается машиночитаемый носитель с постоянным хранением информации, содержащий программы, исполнение которых процессором обеспечивает осуществление способа взаимодействия с дистанционно управляемым дисплеем в системе физической защиты, содержащей множество серверных узлов, причем способ включает: передачу из одного из серверных узлов ("второй узел"), который может обмениваться информацией с дистанционно управляемым дисплеем, на другой серверный узел ("первый узел"), который может обмениваться информацией с клиентским дисплеем, данных состояния изображения, характеризующих изображение, отображаемое на дистанционно управляемом дисплее; и отображение на клиентском дисплее по меньшей мере части изображения, отображаемого на дистанционно управляемом дисплее.
[0046] В настоящем изобретении также предлагается способ совместного использования изображения ("совместно используемое изображение") в системе физической защиты, содержащей множество серверных узлов, причем способ включает: передачу из первого клиентского устройства на один из серверных узлов ("первый узел") данных состояния изображения, характеризующих совместно используемое изображение, как оно отображается первым клиентским устройством; передачу данных состояния изображения из первого узла во второе клиентское устройство через другой серверный узел ("второй узел"); обновление изображения на дисплее второго клиентского устройства с использованием данных состояния изображения для показа совместно используемого изображения; передачу обновленных данных состояния изображения из второго клиентского устройства на второй узел после изменения совместно используемого изображения на втором клиентском устройстве; причем обновленные данные состояния изображения характеризуют совместно используемое изображение, как оно отображается на втором клиентском устройстве; передачу обновленных данных состояния изображения из второго узла в первое клиентское устройство через первый узел; и обновление изображения на дисплее первого клиентского устройства с использованием обновленных данных состояния изображения для показа совместно используемого изображения. В одном из вариантов ни один из серверных узлов не является центральным шлюзовым сервером, и в альтернативном варианте по меньшей мере один из серверных узлов является центральным шлюзовым сервером.
[0047] Первый и второй узлы, а также по меньшей мере еще один узел из множества серверных узлов могут составлять кластер серверов, и первый и второй узлы составляют по меньшей мере часть группы серверных узлов в кластере, в которой первый узел может передавать данные состояния изображения полностью упорядоченным образом всем другим серверным узлам в группе, и передача данных состояния изображения может включать передачу первым узлом этих данных всем другим серверным узлам в группе.
[0048] Первый и второй узлы, а также по меньшей мере еще один узел из множества серверных узлов могут составлять кластер серверов, и первый и второй узлы составляют по меньшей мере часть группы серверных узлов в кластере, в которой второй узел может передавать обновленные данные состояния изображения полностью упорядоченным образом всем другим серверным узлам в группе, и передача данных состояния изображения может включать передачу вторым узлом этих обновленных данных всем другим серверным узлам в группе.
[0049] Способ может включать также, перед показом совместно используемого изображения на дисплее второго клиентского устройства, передачу из первого клиентского устройства во второе клиентское устройство через первый и второй узлы уведомления о том, что совместно используемое изображение, как оно отображается первым клиентским устройством, доступно для совместного использования вторым клиентским устройством.
[0050] Первый и второй узлы, а также по меньшей мере еще один узел из множества серверных узлов составляют кластер серверов, и первый и второй узлы составляют по меньшей мере часть группы серверных узлов в кластере, в которой первый узел может передать уведомление полностью упорядоченным образом всем другим серверным узлам в группе, и передача уведомления включает передачу первым узлом этого уведомления всем другим серверным узлам в группе.
[0051] Способ может включать также, перед передачей первым узлом данных состояния во второе клиентское устройство через второй узел, выборку с использованием первого узла идентификатора узла, идентифицирующего второй узел, причем первый и второй узлы составляют по меньшей мере часть кластера серверов, и идентификатор узла составляет по меньшей мере часть информации о составе кластера, идентифицирующей все, и доступные для всех, серверные узлы в кластере серверов.
[0052] Информация о составе кластера может содержать: идентификатор узла, однозначным образом идентифицирующий каждый серверный узел в кластере серверов; и идентификатор кластера, однозначным образом идентифицирующий кластер серверов, к которому принадлежат серверные узлы.
[0053] Каждый серверный узел в кластере серверов может хранить локально и постоянно обновлять свою собственную версию информации о составе кластера.
[0054] В настоящем изобретении предлагается также система физической защиты, содержащая: первое клиентское устройство с дисплеем; второе клиентское устройство с дисплеем; и множество серверных узлов, один из которых ("первый узел") может обмениваться информацией с дисплеем первого клиентского устройства, и другой серверный узел ("второй узел") может обмениваться информацией с дисплеем второго клиентского устройства, причем первое и второе клиентские устройства, а также первый и второй узлы сконфигурированы для: передачи из первого клиентского устройства на первый узел данных состояния изображения, характеризующих совместно используемое изображение, как оно отображается на дисплее первого клиентского устройства; передачи данных состояния изображения из первого узла во второе клиентское устройство через второй узел; обновления изображения на дисплее второго клиентского устройства с использованием данных состояния изображения для показа совместно используемого изображения; передачи обновленных данных состояния изображения из второго клиентского устройства на второй узел после изменения совместно используемого изображения на втором клиентском устройстве; причем обновленные данные состояния изображения характеризуют совместно используемое изображение, как оно отображается на втором клиентском устройстве; передачи обновленных данных состояния изображения из второго узла в первое клиентское устройство через первый узел; и обновления изображения на дисплее первого клиентского устройства с использованием обновленных данных состояния изображения для показа совместно используемого изображения. В одном из вариантов ни один из серверных узлов не является центральным шлюзовым сервером, и в альтернативном варианте по меньшей мере один из серверных узлов является центральным шлюзовым сервером.
[0055] В настоящем изобретении предлагается также машиночитаемый носитель с постоянным хранением информации, содержащий программы, исполнение которых процессором обеспечивает осуществление способа совместного использования изображения ("совместно используемое изображение") в системе физической защиты, содержащей множество серверных узлов, причем способ включает: передачу из первого клиентского устройства на один из серверных узлов ("первый узел") данных состояния изображения, характеризующих совместно используемое изображение, как оно отображается первым клиентским устройством; передачу данных состояния изображения из первого узла во второе клиентское устройство через другой серверный узел ("второй узел"); обновление изображения на дисплее второго клиентского устройства с использованием данных состояния изображения для показа совместно используемого изображения; передачу обновленных данных состояния изображения из второго клиентского устройства на второй узел после изменения совместно используемого изображения на втором клиентском устройстве; причем обновленные данные состояния изображения характеризуют совместно используемое изображение, как оно отображается на втором клиентском устройстве; передачу обновленных данных состояния изображения из второго узла в первое клиентское устройство через первый узел; и обновление изображения на дисплее первого клиентского устройства с использованием обновленных данных состояния изображения для показа совместно используемого изображения.
[0056] В вышеприведенном изложении существа изобретения могут не описываться все его возможные аспекты. Другие аспекты, особенности и достоинства настоящего изобретения будут очевидны специалистам в данной области техники после ознакомления с нижеприведенным описанием конкретных вариантов его осуществления.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0057] Нижеописанные прилагаемые чертежи иллюстрируют один или несколько типичных вариантов осуществления изобретения.
[0058] Фигура 1 - блок-схема распределенной системы физической защиты по одному из вариантов осуществления изобретения.
[0059] Фигура 2 - блок-схема, иллюстрирующая использование набора протоколов в системе фигуры 1.
[0060] Фигура 3 - диаграмма последовательности унифицированного языка моделирования (UML, от англ. Unified Modeling Language), иллюстрирующая обмен установочными параметрами между разными пользователями системы фигуры 1.
[0061] Фигура 4 - диаграмма последовательности языка UML, иллюстрирующая способ распространения информации о состоянии между разными пользователями системы фигуры 1.
[0062] Фигура 5 - диаграмма последовательности языка UML, иллюстрирующая способ совместного использования изображения разными пользователями системы фигуры 1.
[0063] Фигура 6 - диаграмма последовательности языка UML, иллюстрирующая совместное использование потокового видео разными пользователями системы фигуры 1.
[0064] Фигура 7 - изображение, отображаемое одному из пользователей системы, показанной на фигуре 1.
[0065] Фигура 8 - блок-схема алгоритма обмена данными в системе физической защиты по одному из вариантов осуществления изобретения.
[0066] Фигура 9 - блок-схема алгоритма присоединения к группе в автоматическом режиме по одному из вариантов осуществления изобретения.
[0060] Фигура 10 - диаграмма последовательности языка UML, иллюстрирующая совместное использование изображения с дистанционно управляемого дисплея пользователями системы фигуры 1.
[0068] Фигура 11 - блок-схема алгоритма взаимодействия с дистанционно управляемым дисплеем в системе физической защиты, которая содержит множество серверных узлов, по другому варианту осуществления изобретения.
[0069] Фигура 12 - блок-схема алгоритма совместного использования изображения в системе физической защиты, которая содержит множество серверных узлов, по другому варианту осуществления изобретения.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
[0070] Указания направления, такие как "верхний", "нижний", "вверх", "вниз", "вертикально" и "в сторону", в настоящем описании используются только для целей указания относительного расположения, и не должны рассматриваться как какие-либо ограничения в положении каких-либо деталей в процессе использования, или их расположения в комплексе или относительно окружающих объектов. Кроме того, термин "соединять", а также его производные, такие как "соединенный", "соединения", как они используются в настоящем описании, означают непосредственное или опосредованное соединение, если в явной форме не указано иное. Например, если первое устройство соединено со вторым устройством, то соединение может быть непосредственным или опосредованным, через другие устройства или соединительные элементы. Аналогично, если первое устройство соединено со вторым устройством с возможностью обмена информацией, то соединение может быть непосредственным или опосредованным, с помощью других устройств или соединительных элементов.
[0071] Когда система наблюдения расширяется, и количество видеокамер превысит определенную величину, работа системы с использованием одного сервера становится невозможной или практически невозможной ввиду ограничений его вычислительной мощности и возможностей по хранению информации. Соответственно, для включения в систему большого количества видеокамер необходимо вводить в нее дополнительные серверы. В результате возникает ряд проблем.
[0072] Например, у пользователя системы наблюдения может появиться необходимость увидеть изображение, наблюдаемое другим пользователем, или просматривать потоковое видео, которое поступает в систему из видеокамеры, или которое записано на сервере системы, даже если этот пользователь не подсоединен непосредственно к этой видеокамере или к этому серверу, соответственно. Аналогично, у пользователя может возникнуть необходимость в доступе к состоянию других пользователей (например, подключен ли к системе другой пользователь) и к событиям, происшедшим в системе (например, был ли включен сигнал тревоги), даже если они имели место на сервере, к которому пользователь не подсоединен непосредственно. В традиционной системе наблюдения, которая расширяется путем добавления новых серверов, обычный способ обеспечения вышеуказанных возможностей заключается во введении в систему центрального шлюзового сервера. Центральный шлюзовой сервер направляет системные события, состояния пользователей, изображения и потоковые видео с одного сервера на другой сервер системы, в результате чего пользователь имеет возможность получать доступ или просматривать эти состояния, события, изображения и потоковые видео вне зависимости от того, к какому серверу непосредственно подключен этот пользователь. Однако в случае использования центрального шлюзового сервера система наблюдения становится уязвимой, поскольку в случае отказа этого сервера дальнейший обмен информацией событий, состояний, полей зрения и потокового видео становится невозможным. Использование центрального шлюзового сервера также увеличивает стоимость системы наблюдения, поскольку в этом случае в систему вводится дополнительное оборудование, которое должно обеспечивать специализированные функции шлюзового сервера.
[0073] Пользователю может быть также необходимо, чтобы общие установочные параметры (например, информация доступа пользователей в форме логинов, паролей, прав доступа и т.п.) были синхронизированы по всем серверам системы. В традиционной системе наблюдения, которая может быть расширена путем добавления новых серверов, вышеуказанные функциональные возможности обеспечиваются либо путем экспорта установочных параметров из одного сервера на другие серверы, либо путем использования центрального сервера управления, в котором хранятся все эти установочные параметры, и другие серверы при необходимости могут получать из него всю эту информацию. Экспорт установочных параметров вручную связан с проблемами, такими как сравнительно большие задержки синхронизации, трудности в использовании и установке, и, кроме того, большие задержки синхронизации ухудшают возможности системного резервирования. Использование центрального сервера управления связано с такими же проблемами, что и использование вышеописанного центрального шлюзового сервера.
[0074] Некоторые варианты, рассмотренные в настоящем описании, относятся к распределенной системе физической защиты, такой как система наблюдения, в которой возможен обмен данными, такими как информация изображений, потокового видео, системных событий, состояния пользователей и пользовательских установочных параметров, в автоматическом режиме между несколькими серверами системы без необходимости использования центрального сервера, такого как шлюзовой сервер или сервер управления, описанные выше. Эти варианты относятся к одноранговым системам наблюдения, в которых пользователи подсоединяются через клиентские устройства к серверным узлам, таким как сетевые видеомагнитофоны, видеокамеры и серверы. Серверные узлы группируются в кластеры, так что каждый серверный узел в кластере может использовать данные совместно с другими серверными узлами кластера. Для совместного использования данных на каждом серверном узле работают сервисные процессы, которые обеспечивают обмен данными с использованием набора протоколов, в результате чего обмен данных между серверными узлами осуществляется по-разному в зависимости от типа данных: изображения, потоковое видео, системные события, состояния пользователей или пользовательские установочные параметры. Такие варианты иллюстрируются на фигурах 1-10.
[0075] В других вариантах некоторые технологии, используемые для совместного использования изображений разными серверными узлами, применимы к интегрированным сетям (то есть, сетям, содержащим центральный сервер) и к одноранговым сетям, таким как сети, схемы которых приведены на фигурах 1-9. Такие варианты иллюстрируются на фигурах 10 и 11.
[0076] На фигуре 1 приведена схема одного из вариантов распределенной системы физической защиты в форме системы 100 наблюдения. Система 100 содержит: три клиентских устройства 102а, 102b, 102с (совместно указываются как "клиентские устройства 102"), шесть серверов 104а-104f (вместе указываются как "серверы 104"), три видеокамеры 106а, 106b, 106с, которые являются серверными узлами (вместе указываются как "видеокамеры 106 узлов") и пять видеокамер 114, которые не являются узлами.
[0077] Каждая из видеокамер 106 и каждый из серверов 104 содержит процессор 110 и запоминающее устройство 112, которые соединены друг с другом с возможностью обмена информацией, причем запоминающее устройство 112 содержит программы, выполнение которых процессором 110 обеспечивает осуществление вариантов способов, рассмотренных в настоящем описании. Серверы 104 и видеокамеры 106 узлов сгруппированы в три кластера 108а, 108b, 108с (вместе указываются как "кластеры 108"): серверы 104а, 104b, 104с соединены друг с другом с возможностью обмена информацией и формируют первый кластер 108а; серверы 104d, 104е, 104f соединены друг с другом с возможностью обмена информацией и формируют второй кластер 108b; и три видеокамеры 106 узлов соединены друг с другом с возможностью обмена информацией и формируют третий кластер 108с. Серверы 104а, 104b, 104с являются участниками первого кластера 108а; серверы 104d, 104е, 104f являются участниками второго кластера 108b; и видеокамеры 106а, 106b, 106с узлов являются участниками третьего кластера 108с.
[0078] Каждый сервер 104 и каждая видеокамера 106 являются серверными узлами, каждый из которых "знает" о наличии других участников своего кластера 108 и может обмениваться с ними информацией; в отличие от этого видеокамеры 114 не являются серверными узлами и "знают" лишь о наличии серверов 104а, 104b, 104с, 104d, 104f, к которым они подсоединены непосредственно. В варианте, схема которого приведена на фигуре 1, серверные узлы "знают" обо всех других участниках кластера 108, поскольку имеют доступ к информации о составе кластера, в которой указаны все серверные узлы кластера 108. Информация о составе кластера хранится в каждом из серверных узлов, в результате чего обеспечивается возможность каждому из серверных узлов подключаться снова в автоматическом режиме к своему кластеру 108 в случае перезагрузки этого узла в процессе работы системы 100. Далее, если в явной форме не указано иное, указание "узел" эквивалентно указанию "серверный узел".
[0079] Хотя в рассматриваемом варианте ни один из кластеров 108 не участвует в обмене информацией между кластерами, однако в альтернативных вариантах (здесь не рассматриваются) участники разных кластеров могут обмениваться информацией между собой. В рассматриваемом варианте серверы 104, представляющие собой стандартные предлагаемые на рынке серверы, а также видеокамеры 106, 114 производятся компанией Avigilon™ Corporation (г. Ванкувер, Канада), однако в альтернативных вариантах могут использоваться и другие подходящие типы серверов 108 и видеокамер 106, 114.
[0080] Первое клиентское устройство 102а соединено с возможностью обмена информацией с первым и вторым кластерами 108а, 108b посредством соединения с первым и четвертым серверами 104а, 104d, которые входят в состав кластеров 108а, 108b, соответственно; второе