Изобретение относится к системам передачи сообщений, в частности к способу и устройству для реализации группового вызова в системе передачи сообщений.
С ростом использования электронной почты и прикладных программ персональных ЭВМ для взаимодействия с системами передачи сообщений сообщения специально созданным группам посылаются с большей скоростью. Для отправки группе получателей сообщения, информирующего их о предстоящих встречах, новостях, планах и т. п., отправители сообщений обычно используют электронную почту. Поскольку передача длинных сообщений множеству абонентов занимает значительное эфирное время, поставщики служб передачи сообщений стремятся найти путь, позволяющий по мере возможности объединять такие сообщения в одну передачу.
Некоторые протоколы передачи сообщений предусматривают механизм, позволяющий неограниченному количеству получателей принимать одно и то же сообщение. Например, в протоколе FLEXTM компании Моторола можно использовать отдельные адреса для посылки каждому получателю команды ожидать сигнал в какой-то момент в будущем и использовать временный адрес, общий для всех получателей. Такая процедура называется динамическим групповым вызовом. К сожалению, современные протоколы сетевых интерфейсов не предусматривают механизм передачи контроллерам системы передачи сообщений команды формировать сообщения для динамического группового вызова. В современных контроллерах также не предусмотрена возможность реализации сообщений динамического группового вызова по собственной инициативе.
Поэтому существует потребность в способе и устройстве, которые бы позволили реализовывать сообщения динамического группового вызова в системах передачи сообщений. Предпочтительно, чтобы при этом можно было автоматически определять сообщения, которые можно объединить, и объединять такие сообщения за счет передачи их в форме сообщения динамического группового вызова, обеспечивая тем самым экономию эфирного времени.
Одним из аспектов изобретения является способ реализации группового вызова в системе передачи сообщений. Способ заключается в том, что в контроллере принимают первое и второе сообщения, предназначенные первому и второму получателям, и определяют, что первое и второе сообщения идентичны друг другу. Способ также состоит в том, что первое и второе сообщения передают в форме общего сообщения группового вызова в ответ на определение, что первое и второе сообщения идентичны друг другу.
Другим аспектом изобретения является контроллер в системе передачи сообщений, предназначенный для реализации группового вызова. Контроллер содержит связной интерфейс для приема первого и второго сообщений, предназначенных первому и второму получателям, и процессорную систему, подключенную к связному интерфейсу, для определения, что первое и второе сообщения идентичны друг другу. Контроллер также содержит передающий интерфейс для передачи первого и второго сообщений как общего сообщения группового вызова в ответ на определение, что первое и второе сообщения идентичны друг другу.
В дальнейшем изобретение поясняется описанием вариантов его осуществления со ссылками на сопровождающие чертежи, на которых:
фиг. 1 изображает электрическую структурную схему системы передачи сообщений согласно изобретению;
фиг. 2 - электрическую структурную схему контроллера согласно изобретению;
фиг. 3-5 - алгоритмы, иллюстрирующие операции, выполняемые контроллером согласно изобретению.
На фиг. 1 представлена электрическая структурная схема предлагаемой системы передачи сообщений, которая содержит множество абонентских устройств 102, осуществляющих радиосвязь с множеством базовых станций 104 для приема сообщений избирательного поискового вызова. Базовые станции 104 связаны линиями связи 106 с множеством выходных контроллеров 110, управляющих ими с применением известных методов управления базовыми станциями. Выходные контроллеры 110 связаны с множеством бытовых контроллеров 120 посредством линий связи 122, 124 и обычной сетью связи 108 для приема сообщений избирательного поискового вызова от бытовых контроллеров 120. Связь между бытовыми контроллерами 120 и выходными контроллерами 110 предпочтительно осуществляется на основе известного протокола, например протокола пейджинговой сети Telocator (TNPP) или межсетевого пейджингового протокола (IPNP). Бытовые контроллеры 120 предпочтительно связаны телефонными линиями 126 с коммутируемой телефонной сетью общего пользования (ТСОП) 112 для приема сообщений от отправителей, использующих, например телефонный аппарат 114 или персональную ЭВМ 116 для отправки сообщений. Очевидно, что в качестве альтернативы можно использовать другие виды сетей связи, например, сети с коммутацией пакетов, локальные вычислительные сети и Интернет, для передачи отправляемых сообщений на бытовые контроллеры 120. Аппаратное оснащение бытовых контроллеров 120 предпочтительно является аналогом пейджингового терминала модели Wireless Messaging Gateway (WMG) Administrator! (администратор шлюза беспроводной связи), а аппаратное оснащение выходных контроллеров 110 предпочтительно является аналогом распределителя сообщений RF-Conductor!, выпускаемых компанией Motorola, Inc. of Schaumburg, I1. Базовые станции 104 в предпочтительном варианте аналогичны передатчику модели Nucleus Orchestra!, выпускаемому той же компанией. Представляется очевидным, что бытовые контроллеры 120, выходные контроллеры 110 и базовые станции 104 могут быть реализованы и другими аналогичными аппаратными средствами. Описанная в качестве примера система передачи сообщений, изображенная на фиг. 1, является системой односторонней передачи сообщений. Но при этом подразумевается, что изобретение может быть применено и в системе с двусторонней передачей сообщений.
Протокол, используемый для передачи сообщений между базовыми станциями 104 и абонентскими устройствами 102, предпочтительно аналогичен известной серии протоколов FLEX цифровой сигнализации для поисковых вызовов. В этих протоколах используются известные методы обнаружения и исправления ошибок и поэтому они адаптированы к битовым ошибкам, имеющим место во время передачи, если только количество этих ошибок в любом кодовом слове не слишком велико. Очевидно, что можно также использовать и другие аналогичные протоколы передачи сообщений.
На фиг. 2 показана электрическая структурная схема предлагаемого выходного контроллера 110, который содержит традиционный связной интерфейс 202 для осуществления связи с бытовыми контроллерами 120 по линии связи 122. Выходной контроллер 110 также содержит процессорную систему 204, подключенную к связному интерфейсу 202, для обработки передач, передаваемых и принимаемых через связной интерфейс 202. Обычный передающий интерфейс 206 подключен к процессорной системе 204, чтобы обеспечить за счет взаимодействия с нею управление и связь с базовыми станциями 104. Обычные часы 216 реального времени подключены к процессорной системе 204 для обеспечения в ней сигнала времени. Процессорная система 204 содержит процессор 208 для выполнения операций процессорной системы 204 и память 210 для хранения выполняемых элементов программного обеспечения, предназначенных для программирования процессора 208. Память 210 содержит элемент 214 обработки сообщений, предназначенный для программирования процессорной системы 204 на обработку сообщений, которыми оперирует выходной контроллер 110. Память 210 также содержит элемент 212 групповой обработки, предназначенный для программирования процессорной системы 204 на формирование и передачу сообщений группового вызова в соответствии с изобретением. К процессорной системе 204 также подключен операторский интерфейс 218, чтобы позволить оператору системы передачи сообщений осуществлять взаимодействие с программой управления выбором в элементе 212 групповой обработки.
Элемент 212 групповой обработки предпочтительно программирует процессорную систему 204 на определение, что выходной контроллер принял первое и второе сообщения, которые идентичны друг другу, и на ожидание в течение установленного времени после определения, что первое и второе сообщение идентичны друг другу, чтобы определить, были ли приняты дополнительные сообщения, идентичные первому и второму сообщениям, и объединить такие дополнительные сообщения в одно сообщение группового вызова. Элемент 212 групповой обработки также программирует процессорную систему 204 на формирование общего сообщения группового вызова в соответствии с протоколом передачи сообщений, имеющим возможность режима динамического группового адреса, например, протоколом FLEX. Элемент 212 групповой обработки также программирует процессорную систему 204 на обеспечение возможности управления выбором, чтобы позволить оператору системы передачи сообщений задавать критерии, которые должны быть удовлетворены прежде, чем сообщение будет рассмотрено для передачи в виде сообщения группового вызова, или не передавать первое и второе сообщения в виде общего сообщения группового вызова, если по меньшей мере одно из первого и второго сообщений не удовлетворяет указанным критериям. Кроме того, элемент 212 групповой обработки программирует процессорную систему 204 на посылку в бытовой контроллер 120 каждого получателя сообщения подтверждения, указывающего, что сообщение для данного получателя было передано в общем сообщении группового вызова в ответ на передачу первого и второго сообщений в виде общего сообщения группового вызова.
Элемент 212 групповой обработки также программирует процессорную систему 204 таким образом, что в ответ на определение, что первое и второе сообщения идентичны друг другу, она вычисляет первый объем передачи, необходимый для передачи первого и второго сообщений как отдельных сообщений, и второй объем передачи, необходимый для передачи первого и второго сообщений в виде общего сообщения группового вызова, и отменяет передачу первого и второго сообщений в виде общего сообщения группового вызова и передает первое и второе сообщения как отдельные сообщения, если второй объем передачи превосходит первый объем передачи. Кроме того, элемент 212 групповой обработки программирует процессорную систему 204 на вычисление первого и второго хеш-индексов из атрибутов первого и второго сообщений для сравнения первого и второго хеш-индексов и определения первого и второго сообщений в качестве кандидатов группового вызова, если первый и второй хеш-индексы равны. Элемент 212 групповой обработки 212 также программирует процессорную систему 204 на сравнение заданных частей первого и второго сообщений, если определено, что первое и второе сообщения являются кандидатами группового сообщения. Затем элемент 212 групповой обработки программирует процессорную систему 204 на сохранение в памяти 210 на участке, определенном хеш-индексом, счета ждущих сообщений, соответствующих данному хеш-индексу, и на сохранение в памяти 210 каждого ждущего сообщения и соответствующего хеш-индекса. Кроме того, элемент 212 групповой обработки программирует процессорную систему 204 на принятие команды переключения для запуска динамического группового вызова и на отправку динамического группового вызова в ответ на команду переключения. Очевидно, что таким программным обеспечением можно также снабдить не только элемент 212 групповой обработки, но и бытовой контроллер 120, чтобы в нем также можно было формировать динамические групповые вызовы.
На фиг. 3 представлен алгоритм 300, иллюстрирующий работу предложенного выходного контроллера 110. Алгоритм 300 начинается с того, что оператор системы передачи сообщений осуществляет доступ к операторскому интерфейсу 218 и задает (этап 302) критерии выбора для формирования сообщений группового вызова. Например, оператор может выбрать тип сообщения из цифровых, буквенных или двоичных сообщений. Оператор может выбрать минимальную длину сообщения для каждого типа. В результате этого выбора выходной контроллер 110 будет пытаться сформировать групповое сообщение только в том случае, если ему встретится сообщение такого типа и такой минимальной длины, как было задано оператором. Оператор может отменить включение приоритетных сообщений в групповой вызов, так как группировка обычно увеличивает время ожидания поискового вызова.
Затем процессорная система 204 сохраняет (этап 304) критерии выбора в памяти 210. На более позднем этапе связной интерфейс 202 выходного контроллера 110 принимает (этап 306) некоторое сообщение, адресованное некоeму получателю. В ответ процессорная система 204 проверяет (этап 308) соответствие данного сообщения критериям выбора для формирования сообщений группового вызова. Если критерии не удовлетворены, процессорная система 204 сохраняет (этап 310) данное сообщение, его адрес и нулевой хеш-индекс в памяти 210. Нулевой хеш-индекс в предпочтительном варианте является заранее установленным хеш-индексом, находящимся за рамками хеш-таблицы в памяти 210, который система сохраняет, чтобы указать, что в хеш-таблице отсутствует запись для данного сообщения. Затем процессорная система 204 ожидает (этап 318) прием следующего сообщения.
Если же на этапе 308 процессорная система 204 определит, что данное сообщение отвечает критериям выбора для формирования сообщения группового вызова, она вычисляет (этап 312) хеш-индекс для данного сообщения и увеличивает (этап 314) в хеш-таблице то значение, на которое указывает данный хеш-индекс.
Основой хеш-таблицы является массив. Согласно изобретению он имеет размер Y и состоит из целых чисел. Математическая операция выполняется на нескольких атрибутах сообщения, например на содержании сообщения, канале передачи, зоне передачи, идентификаторе системы, типе сообщения и длине сообщения. Результатом является целое число Х. Операция по модулю выполняется на целом числе X и размере Y хеш-массива. X по модулю Y дает остаток Z, который используется как индекс в хеш-таблице. Этот метод известен как хеширование по "методу деления". После этого значение, хранящееся в массиве под индексом Z, увеличивается на единицу. Нуль хранится в массиве изначально.
Описанная выше математическая функция известна как алгоритм вычисления ключа хеширования. Предпочтительно найти такой алгоритм хеширования, который будет имеет тенденцию распределять все данные равномерно по хеш-таблице. При удачном алгоритме, если используемые в вычислении атрибуты не идентичны, практически все вычисления для сообщений дают разные значения Z. Если же атрибуты идентичны, получается один и тот же ключ хеширования и, следовательно, одно и то же положение в хеш- таблице, что и желательно получить.
Примерный алгоритм будет иметь такой вид: ключ хеширования = [(сумма знаков в сообщении) + (номер канала) + (номер зоны) + (номер системы) + (тип сообщения) + (длина сообщения)] по модулю (размер таблицы). Сумма знаков в сообщении соответствует сумме знаков, где каждая цифра принимается за целое число. Номер канала соответствует числовому представлению радиочастотного канала. Номер зоны соответствует числовому представлению идентификатора зоны передачи. Номер системы соответствует числовому представлению идентификатора пейджинговой системы. Тип сообщения соответствует числовому представлению "буквенного", "цифрового" или "бинарного" сообщения. Размер таблицы соответствует размеру хеш-таблицы и предпочтительно является большим простым числом, например, 2003.
После увеличения значения в хеш-таблице процессорная система сохраняет (этап 316) сообщение и соответствующий хеш-индекс в памяти 210. Структура сообщения содержит поля, определяющие разные атрибуты сообщения, например, адрес получателя, тип сообщения, приоритетность сообщения и длину сообщения. Затем процессорная система ожидает (этап 318) следующее сообщение.
На фиг. 4 показан алгоритм 400, иллюстрирующий работу выходного контроллера 110 согласно изобретению, которая начинается с того, что процессорная система 204 выбирает (этап 402) из очереди сообщение для передачи. Затем процессорная система 204 проверяет (этап 404), имеет ли данное сообщение сохраненный с ним нулевой хеш-индекс. Если оно имеет такой индекс, данное сообщение не отвечает критериям выбора для группового вызова и поэтому процессорная система 204 просто передает (этап 406) это сообщение как отдельное сообщение. Если же данное сообщение имеет не нулевой хеш-индекс, процессорная система 204 осуществляет доступ (этап 408) к хеш-таблице в памяти 210 на участке, указанном хеш- индексом. Процессорная система 204 уменьшает (этап 410) значение, хранящееся в хеш-таблице в указанном участке. Затем процессорная система 204 проверяет (этап 412), превышает ли все еще данное уменьшенное значение нулевое значение. Если оно не превышает нулевое значение, других аналогичных сообщений, являющихся кандидатами группового сообщения, нет, и процессорная система передает (этап 406) данное сообщение отдельно.
Если же уменьшенное значение больше нуля, процессорная система 204 производит поиск в памяти 210, чтобы найти (этап 414) другое сообщение с таким же хеш-индексом, и после обнаружения такого сообщения процессорная система 204 определяет эти два сообщения в качестве кандидатов для группового вызова. Процессорная система 204 сравнивает (этап 416) содержание определенных частей сообщения. Например, процессорная система сравнивает информационное содержание, РЧ канал, зону, идентификатор системы и тип поискового сообщения, чтобы убедиться в их полной идентичности. Если на этапе 418 подтверждена полная идентичность, процессорная система 204 добавляет (этап 422) оба адреса к потенциальному сообщению группового вызова, имеющему данное информационное содержание и подлежащему передаче на данном радиоканале и в данную зону. Затем процессорная система уменьшает (этап 424) значение в хеш-индексе, чтобы учесть планируемую передачу второго сообщения. После этого процесс переходит к этапу 502 алгоритма 500 (фиг. 5).
Если же на этапе 418 определено, что содержание определенных частей сообщений не одинаково, процессорная система 204 проверяет (этап 420), все ли сообщения с таким же хеш-индексом были проанализированы на совпадение с сообщением, выбранным на этапе 402. Если все они были проанализированы, процессорная система 204 переходит к этапу 406 и передает это сообщение отдельно, так как другие идентичные сообщения не обнаружены. Если проанализированы еще не все сообщения, процессорная система 204 возвращается к этапу 414, чтобы найти другое сообщение с таким же хеш-индексом.
На фиг. 5 показано, что процессорная система 204 на этапе 502 сформировала потенциальное сообщение для группового вызова. Чтобы проверить, есть ли еще сообщения, идентичные данному сообщению группового вызова, процессорная система в течение установленного интервала времени, например, одной минуты находится в ждущем режиме. После этого ожидания процессорная система 204 производит проверку (этап 504), чтобы определить, все ли сообщения, имеющие одинаковый хеш- индекс, были проанализированы. Это может быть реализовано, например, путем подсчета проанализированных сообщений и сравнения этого результата с суммой значения, хранящегося в хеш-индексе, и количеством сообщений, сгруппированных для потенциального группового вызова. Если данный счет и сумма равны, это значит, что все сообщения с таким хеш-индексом были проанализированы. Если все сообщения с одинаковым хеш-индексом проанализированы, процессорная система 204 в предпочтительном варианте вычисляет (этап 506) объем передачи, например, количество кодовых слов, которое необходимо передать как в индивидуальном сообщении, так и в виде группового сообщения. Если для передачи этих сообщений в виде группового сообщения (включая установление вызова) требуется больший объем передачи, процессорная система 204 передает (этап 510) эти сообщения отдельно обычным способом. Если же для передачи сообщений в виде группового сообщения требуется такой же или меньший объем передачи, процессорная система формирует и отправляет (этап 522) групповое сообщение по адресам в данной группе. Затем процессорная система посылает (этап 524) подтверждение группового вызова в бытовые контроллеры получателей сообщения.
Если же на этапе 504 обнаружено, что были проанализированы не все сообщения с одинаковым хеш-индексом, процессорная система 204 производит поиск в памяти 210, чтобы обнаружить дополнительное сообщение с таким же хеш-индексом, а затем определяет это дополнительное сообщение в качестве кандидата для группового вызова. Затем процессорная система 512 сравнивает содержание заданных частей дополнительного сообщения с частями потенциального сообщения группового вызова. Если заданные части не одинаковы, процесс возвращается к этапу 504. Если же они одинаковы, процессорная система добавляет (этап 518) адрес данного сообщения к потенциальному групповому вызову и уменьшает (этап 520) значение в хеш-индексе. Затем процесс возвращается к этапу 504, чтобы определить, все ли сообщения с одинаковым хеш-индексом были проанализированы.
Таким образом, предложенные способ и устройство позволяют реализовать сообщения динамических групповых вызовов в системе передачи сообщений. Обнаружение сообщений, которые можно объединить, выполняется автоматически, после чего такие сообщения объединяются и передаются в виде сообщения динамического группового вызова, что обеспечивает экономию эфирного времени. Реализация динамического группового вызова позволяет поставщику системы передачи сообщений увеличить количество абонентов в системе, повышая тем самым доход от ее эксплуатации.
Несмотря на то, что изобретение было описано на примере одного варианта его осуществления, специалисты смогут предложить множество альтернативных вариантов на основании идеи изобретения, раскрытой в данном описании. Например, для выбора кандидатов для групповых вызовов помимо хеширования по методу деления, могут применяться другие методы, например, хеширование по методу умножения или по универсальному методу. Ценой существенного увеличения обработки можно даже исключить выбор кандидатов группового вызова путем хеширования или других методов и использовать сравнение содержания заданных частей каждого принятого сообщения с соответствующими частями всех сообщений, находящихся в очереди, чтобы найти сообщения, пригодные для отправки в виде групповых сообщений. Кроме того, электрическая структурная схема на фиг. 2 и алгоритмы на фиг. 3-5 (за исключением этапа 524) также применимы к бытовому контроллеру 120, если изобретение реализуется в бытовом контроллере 120. Эти и другие варианты изобретения подпадают под объем изобретательского замысла, который ограничен только формулой изобретения.
Система передачи сообщений реализует групповой вызов в контроллере посредством приема первого и второго сообщений, предназначенных первому и второму получателям, и определения, что первое и второе сообщения идентичны друг другу. В ответ на это определение контроллер передает первое и второе сообщения как одно сообщение группового вызова. Технический результат заключается в экономии эфирного времени. 2 с. и 10 з.п.ф-лы, 5 ил.
СПОСОБ ХИРУРГИЧЕСКОГО ЛЕЧЕНИЯ ОТСЛОЙКИ СЕТЧАТКИ | 2011 |
|
RU2463999C1 |
US 3958084 A1, 18.05.1976 | |||
Прибор для очистки паром от сажи дымогарных трубок в паровозных котлах | 1913 |
|
SU95A1 |
Реле времени | 1976 |
|
SU604047A1 |
ФУНГИЦИДНАЯ КОМПОЗИЦИЯ, СОДЕРЖАЩАЯ ПИРИМЕТАНИЛ И ФОСЕТИЛ-AL, СПОСОБ ЛЕЧЕБНОГО И ПРОФИЛАКТИЧЕСКОГО КОНТРОЛЯ ФИТОПАТОГЕННЫХ ОРГАНИЗМОВ, ПРИМЕНЕНИЕ ФОСЕТИЛ-AL ДЛЯ УВЕЛИЧЕНИЯ ПРОДОЛЖИТЕЛЬНОСТИ ДЕЙСТВИЯ ПИРИМЕТАНИЛА | 2002 |
|
RU2278516C2 |
SU 1821939 A1, 15.06.1993. |
Авторы
Даты
2000-08-10—Публикация
1997-11-18—Подача