СПОСОБ И СИСТЕМА ДЛЯ ОБРАБОТКИ УВЕДОМЛЕНИЯ О РЕГИСТРАЦИИ УЗЛА
METHOD AND SYSTEM FOR PROCESSING NOTIFICATION ON REGISTRATION OF A NODE

Область техники, к которой относится настоящее изобретение
[0001] Настоящее изобретение относится к области мобильной связи и, в частности, к способу и системе для обработки уведомления о регистрации узла.
Предшествующий уровень техники настоящего изобретения
[0002] Благодаря непрерывному развитию сетевой технологии появляется все больше типов сетевых услуг, при этом их функции становятся все более многочисленными. Поставщик услуг обычно использует распределенную систему для построения серверной части услуги, то есть серверная часть услуги состоит из множества серверов. Сервер является эквивалентом обслуживающего узла в распределенной системе, и каждый обслуживающий узел обычно предоставляет небольшое количество функциональных услуг или одиночную функциональную услугу. Таким образом, после приема серверной частью запроса услуги, связанного с множеством функциональных услуг, обслуживающие узлы, которые соответствуют этим функциональным услугам, могут связываться друг с другом, а затем совместно обрабатывать запрос услуги.
[0003] Для управления обслуживающими узлами в распределенной системе предусмотрен центральный узел. Если обслуживающий узел необходимо присоединить к распределенной системе, он должен быть зарегистрирован в центральном узле. Затем центральный узел может передать информацию об узле (такую как IP-адрес, номер порта и т.п.) по данному обслуживающему узлу в другие обслуживающие узлы, а также может передавать информацию об узле по другим обслуживающим узлам в этот обслуживающий узел. Таким образом, этот обслуживающий узел и другие обслуживающие узлы могут связываться друг с другом в соответствии с информацией об узлах. Дополнительно, когда обслуживающий узел выходит из распределенной системы, центральный узел также может уведомить об этом другие обслуживающие узлы, в результате чего другие обслуживающие узлы больше не будут связываться с этим обслуживающим узлом.
Краткое раскрытие настоящего изобретения
[0004] Для того чтобы решить проблемы, присущие известному уровню техники, варианты осуществления настоящего изобретения предлагают способ и систему для обработки уведомления о регистрации узла. Технические решения являются следующими.
[0005] Согласно первому аспекту предлагается способ обработки уведомления о регистрации узла. Способ применим в распределенной системе, содержащей ретранслирующий маршрутизатор, множество центральных узлов и множество обслуживающих узлов, причем каждый из центральных узлов соединен с ретранслирующим маршрутизатором и по меньшей мере одним из обслуживающих узлов, соответственно; при этом соединительная линия от любого из центральных узлов к ретранслирующему маршрутизатору и соединительная линия от центрального узла к обслуживающему узлу принадлежат одной и той же операционной сети. Способ предусматривает: передачу первым обслуживающим узлом регистрационного запроса, содержащего информацию об узле по первому обслуживающему узлу, в первый центральный узел, соединенный с первым обслуживающим узлом; передачу первым центральным узлом уведомления о регистрации узла, содержащего информацию об узле по первому обслуживающему узлу, в ретранслирующий маршрутизатор и другие обслуживающие узлы, за исключением первого обслуживающего узла, которые соединены с первым центральным узлом; передачу ретранслирующим маршрутизатором уведомления о регистрации узла в другие центральные узлы, за исключением первого центрального узла; и передачу другими центральными узлами уведомления о регистрации узла в соответствующие обслуживающие узлы, соединенные с другим центральным узлами, соответственно, и соответственное сохранение информации об узле по первому центральному узлу и информации об узле по первому обслуживающему узлу.
[0006] Согласно некоторым вариантам осуществления после передачи первым обслуживающим узлом регистрационного запроса, содержащего информацию об узле по первому обслуживающему узлу, в первый центральный узел, соединенный с первым обслуживающим узлом, способ дополнительно предусматривает: передачу первым обслуживающим узлом сообщения «я жив» в первый центральный узел на основе первого периода.
[0007] Согласно некоторым вариантам осуществления способ дополнительно предусматривает: передачу первым центральным узлом уведомления о состоянии «вне сети» по первому обслуживающему узлу в другие обслуживающие узлы и ретранслирующий маршрутизатор, если первый центральный узел повторно не принимает сообщение «я жив», передаваемое первым обслуживающим узлом, в течение первого отрезка времени после приема сообщения «я жив», передаваемого первым обслуживающим узлом, причем первый отрезок времени больше, чем первый период; передачу ретранслирующим маршрутизатором уведомления о состоянии «вне сети» по первому обслуживающему узлу в другие центральные узлы; и передачу другими центральными узлами уведомления о состоянии «вне сети» по первому обслуживающему узлу в соответствующие обслуживающие узлы, соединенные с другими центральными узлами, соответственно.
[0008] Согласно некоторым вариантам осуществления после передачи другими центральными узлами уведомления о регистрации узла в соответствующие обслуживающие узлы, соединенные с другими центральными узлами, соответственно, способ дополнительно предусматривает: прием вторым центральным узлом сообщения подтверждения регистрации по первому обслуживающему узлу, переданного обслуживающим узлом, соединенным со вторым центральным узлом, причем второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла; передачу вторым центральным узлом сообщения подтверждения регистрации по первому обслуживающему узлу в ретранслирующий маршрутизатор после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми обслуживающими узлами, соединенными со вторым центральным узлом; передачу ретранслирующим маршрутизатором сообщения подтверждения регистрации по первому обслуживающему узлу в первый центральный узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми другими центральными узлами, за исключением первого центрального узла; и передачу первым центральным узлом сообщения подтверждения регистрации по первому обслуживающему узлу в первый обслуживающий узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного ретранслирующим маршрутизатором и всеми другими обслуживающими узлами.
[0009] Согласно некоторым вариантам осуществления способ дополнительно предусматривает: повторную передачу вторым центральным узлом уведомления о регистрации узла во второй обслуживающий узел, если второй центральный узел не принимает сообщение подтверждения регистрации по первому обслуживающему узлу, переданное вторым обслуживающим узлом, в течение второго отрезка времени после передачи уведомления о регистрации узла по первому обслуживающему узлу во второй обслуживающий узел, соединенный со вторым центральным узлом.
[0010] Согласно некоторым вариантам осуществления способ дополнительно предусматривает: передачу первым центральным узлом запроса синхронизации, содержащего информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, в другие центральные узлы через ретранслирующий маршрутизатор на основе второго периода; сохранение другими центральными узлами информации об узле по всем обслуживающим узлам, соединенным с первым центральным узлом; и передачу сообщения подтверждения синхронизации, содержащего информацию об узле по всем обслуживающим узлам, соединенным с другими центральными узлами, в первый центральный узел через ретранслирующий маршрутизатор; и сохранение первым центральным узлом информации об узле по всем обслуживающим узлам, соединенным с каждым из других центральных узлов.
[0011] Согласно некоторым вариантам осуществления способ дополнительно предусматривает: определение первым центральным узлом второго центрального узла, соответствующего второму обслуживающему узлу, при приеме запроса на выполнение услуги, содержащего информацию об узле по второму обслуживающему узлу и переданного первым обслуживающим узлом, причем второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла; передачу первым центральным узлом запроса на выполнение услуги, содержащего информацию об узле по второму обслуживающему узлу, во второй центральный узел через ретранслирующий маршрутизатор; передачу вторым центральным узлом запроса на выполнение услуги во второй обслуживающий узел; и осуществление вторым обслуживающим узлом процесса выполнения услуги на основе запроса на выполнение услуги.
[0012] Согласно второму аспекту предлагается система для обработки уведомления о регистрации узла. Система содержит ретранслирующий маршрутизатор, множество центральных узлов и множество обслуживающих узлов, причем каждый из центральных узлов соединен с ретранслирующим маршрутизатором и по меньшей мере одним из обслуживающих узлов, соответственно; при этом соединительная линия от любого из центральных узлов к ретранслирующему маршрутизатору и соединительная линия от центрального узла к обслуживающему узлу принадлежат одной и той же операционной сети; где первый обслуживающий узел выполнен с возможностью передавать регистрационный запрос, содержащий информацию об узле по первому обслуживающему узлу, в первый центральный узел, соединенный с первым обслуживающим узлом; первый центральный узел выполнен с возможностью передачи уведомления о регистрации узла, содержащего информацию об узле по первому обслуживающему узлу, в ретранслирующий маршрутизатор и другие обслуживающие узлы, за исключением первого обслуживающего узла, которые соединены с первым центральным узлом; ретранслирующий маршрутизатор выполнен с возможностью передавать уведомление о регистрации узла в другие центральные узлы, за исключением первого центрального узла; и другие центральные узлы выполнены с возможностью передавать уведомление о регистрации узла в соответствующие обслуживающие узлы, соединенные с другими центральным узлами, соответственно, и соответствующим образом сохранять информацию об узле по первому центральному узлу и информацию об узле по первому обслуживающему узлу.
[0013] Согласно некоторым вариантам осуществления первый обслуживающий узел также выполнен с возможностью передавать сообщение «я жив» в первый центральный узел на основе первого периода после того, как первый обслуживающий узел передает регистрационный запрос, содержащий информацию об узле по первому обслуживающему узлу, в первый центральный узел, соединенный с первым обслуживающим узлом.
[0014] Согласно некоторым вариантам осуществления первый центральный узел также выполнен с возможностью передачи уведомления о состоянии «вне сети» по первому обслуживающему узлу в другие обслуживающие узлы и ретранслирующий маршрутизатор, если первый центральный узел повторно не принимает сообщение «я жив», передаваемое первым обслуживающим узлом, в течение первого отрезка времени после приема сообщения «я жив», передаваемого первым обслуживающим узлом, причем первый отрезок времени больше, чем первый период; ретранслирующий маршрутизатор также выполнен с возможностью передавать уведомление о состоянии «вне сети» по первому обслуживающему узлу в другие центральные узлы; и другие центральные узлы также выполнены с возможностью передавать уведомление о состоянии «вне сети» по первому обслуживающему узлу в соответствующие обслуживающие узлы, соединенные с другими центральными узлами, соответственно.
[0015] Согласно некоторым вариантам осуществления второй центральный узел выполнен с возможностью принимать сообщение подтверждения регистрации по первому обслуживающему узлу, переданное обслуживающим узлом, соединенным со вторым центральным узлом, после передачи другими центральными узлами уведомления о регистрации узла в соответствующие обслуживающие узлы, соединенные с другими центральными узлами, соответственно, и передавать сообщение подтверждения регистрации по первому обслуживающему узлу в ретранслирующий маршрутизатор после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми обслуживающими узлами, соединенными со вторым центральным узлом, причем второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла; ретранслирующий маршрутизатор также выполнен с возможностью передавать сообщение подтверждения регистрации по первому обслуживающему узлу в первый центральный узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми другими центральными узлами, за исключением первого центрального узла; и первый центральный узел также выполнен с возможностью передавать сообщение подтверждения регистрации по первому обслуживающему узлу в первый обслуживающий узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного ретранслирующим маршрутизатором и всеми другими обслуживающими узлами.
[0016] Согласно некоторым вариантам осуществления второй центральный узел также выполнен с возможностью повторно передавать уведомление о регистрации узла во второй обслуживающий узел, если второй центральный узел не принимает сообщение подтверждения регистрации по первому обслуживающему узлу, переданное вторым обслуживающим узлом, в течение второго отрезка времени после передачи уведомления о регистрации узла по первому обслуживающему узлу во второй обслуживающий узел, соединенный со вторым центральным узлом.
[0017] Согласно некоторым вариантам осуществления первый центральный узел также выполнен с возможностью передавать запрос синхронизации, содержащий информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, в другие центральные узлы через ретранслирующий маршрутизатор на основе второго периода; другие центральные узлы также выполнены с возможностью сохранять информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, и передавать сообщение подтверждения синхронизации, содержащее информацию об узле по всем обслуживающим узлам, соединенным с другими центральными узлами, в первый центральный узел через ретранслирующий маршрутизатор; и первый центральный узел также выполнен с возможностью сохранять информацию об узле по всем обслуживающим узлам, соединенным с каждым из других центральных узлов.
[0018] Согласно некоторым вариантам осуществления первый обслуживающий узел также выполнен с возможностью определять второй центральный узел, соответствующий второму обслуживающему узлу, при приеме запроса на выполнение услуги, содержащего информацию об узле по второму обслуживающему узлу и переданного первым обслуживающим узлом, и передавать запрос на выполнение услуги, содержащий информацию об узле по второму обслуживающему узлу, во второй центральный узел через ретранслирующий маршрутизатор, причем второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла; второй центральный узел также выполнен с возможностью передавать запрос на выполнение услуги во второй обслуживающий узел; и второй обслуживающий узел также выполнен с возможностью осуществлять процесс выполнения услуги на основе запроса на выполнение услуги.
[0019] Техническому решению в соответствии с вариантами осуществления согласно настоящему изобретению присущи следующие преимущества.
[0020] В соответствии с вариантами осуществления настоящего изобретения в распределенной системе множество обслуживающих узлов соединены с одним центральным узлом, множество центральных узлов соединены с одним ретранслирующим маршрутизатором, и соединительная линия от одного из центральных узлов к ретранслирующему маршрутизатору и соединительная линия от центрального узла к обслуживающему узлу принадлежат одной и той же операционной сети. В этом случае, когда множество обслуживающих узлов, принадлежащих различным операционным сетям, связываются друг с другом, существует возможность обмениваться коммуникационными сообщениями через центральные узлы и ретранслирующий маршрутизатор. Поскольку линии от обслуживающих узлов к ретранслирующему маршрутизатору принадлежат одной и той же операционной сети, качество связи будет более высоким. Следовательно, различие в операционных сетях оказывает меньшее влияние на связь между различными обслуживающими узлами.
Краткое описание фигур
[0021] Для более ясного описания технического решения согласно вариантам осуществления настоящего изобретения приведено краткое описание фигур, используемых при изложении вариантов осуществления. Очевидно, что описанные ниже фигуры демонстрируют только некоторые варианты осуществления настоящего изобретения, при этом другие фигуры могут быть получены специалистом в данной области техники на основе этих фигур без каких-либо творческих усилий.
[0022] На фиг. 1 представлена функциональная схема способа обработки уведомления о регистрации узла в соответствии с одним вариантом осуществления настоящего изобретения;
[0023] на фиг. 2 представлена функциональная схема способа обработки уведомления о регистрации узла в соответствии с одним вариантом осуществления настоящего изобретения;
[0024] на фиг. 3 представлена функциональная схема способа обработки уведомления о регистрации узла в соответствии с одним вариантом осуществления настоящего изобретения;
[0025] на фиг. 4 представлена функциональная схема способа обработки уведомления о регистрации узла в соответствии с одним вариантом осуществления настоящего изобретения;
[0026] на фиг. 5 представлена функциональная схема способа обработки уведомления о регистрации узла в соответствии с одним вариантом осуществления настоящего изобретения;
[0027] на фиг. 6 представлена структурная принципиальная схема распределенной системы в соответствии с одним вариантом осуществления настоящего изобретения; и
[0028] на фиг. 7 представлена структурная схема сервера в соответствии с одним вариантом осуществления настоящего изобретения.
Подробное раскрытие настоящего изобретения
[0029] В процессе реализации настоящего изобретения было обнаружено, что известному уровню техники присущи по меньшей мере следующие проблемы: обслуживающие узлы в распределенной системе могут быть размещены в различных областях, и поставщики сетевых услуг в различных областях обычно отличаются. При этом качество связи между операционными сетями от различных поставщиков сетевых услуг является относительно плохим. Если обслуживающие узлы и центральный узел в распределенной системе используют различные операционные сети (то есть они не относятся к одному и тому же поставщику сетевых услуг), центральный узел может быть неспособен вовремя обнаружить регистрацию обслуживающих узлов в распределенной системе и их выход из нее из-за плохого качества связи, что тем самым оказывает значительное отрицательное влияние на связь между обслуживающими узлами.
[0030] Чтобы сделать объекты, технические решения и преимущества настоящего изобретения более понятными, далее будут подробно описаны варианты осуществления настоящего изобретения со ссылкой на прилагаемые фигуры.
[0031] Один вариант осуществления настоящего изобретения предлагает способ обработки уведомления о регистрации узла. Предлагаемый способ применим в распределенной системе, содержащей ретранслирующий маршрутизатор, множество центральных узлов и множество обслуживающих узлов, причем каждый из центральных узлов соединен с ретранслирующим маршрутизатором и по меньшей мере одним из обслуживающих узлов, соответственно, причем соединительная линия от любого из центральных узлов к ретранслирующему маршрутизатору и соединительная линия от любого из центральных узлов к обслуживающему узлу принадлежат одной и той же операционной сети. Объектом выполнения способа является сервер. Согласно этому варианту осуществления ретранслирующий маршрутизатор, центральный узел и обслуживающий узел могут представлять собой ретранслирующий сервер-маршрутизатор, центральный узловой сервер и обслуживающий узловой сервер, соответственно. При этом центральный узловой сервер и обслуживающий узловой сервер могут совместно именоваться узловыми серверами. Обслуживающий сервер может быть сервером для приема запросов на выполнение услуги, передаваемых клиентом услуги. Узловой сервер может быть сервером для создания сети между множеством сервисных серверов. Центральный узел является административным сервером для множества обслуживающих узлов. Ретранслирующий маршрутизатор является ретранслирующим сервером, соединяющим множество центральных узлов. Инфраструктура системы показана на фиг. 6.
[0032] Последовательность операций обработки, показанная на фиг. 1, будет более подробно описана ниже со ссылкой на конкретные варианты осуществления, и ее содержание может быть описано следующим образом.
[0033] На стадии 101 первый обслуживающий узел передает регистрационный запрос, содержащий информацию об узле по первому обслуживающему узлу, в первый центральный узел, соединенный с первым обслуживающим узлом.
[0034] В процессе реализации, когда поставщику услуг необходимо добавить сервер услуг (то есть первый обслуживающий узел) в распределенную систему, центральный узел (т.е. первый центральный узел), соответствующий серверу услуг, может быть сначала определен в соответствии с линией, где расположен сервер услуг. Поставщик услуг может дополнительно записать информацию об узле, такую как IP-номер и номер порта, по первому центральному узлу в первый обслуживающий узел, чтобы первый обслуживающий узел мог установить коммуникационное соединение с первым центральным узлом в соответствии с информацией об узле по первому центральному узлу посредством TCP-протокола. Затем первый обслуживающий узел может передать регистрационный запрос, содержащий информацию об узле по первому обслуживающему узлу, в первый центральный узел.
[0035] На стадии 102 первый центральный узел передает уведомление о регистрации узла, содержащее информацию об узле по первому обслуживающему узлу, в ретранслирующий маршрутизатор и другие обслуживающие узлы, за исключением первого обслуживающего узла, которые соединены с первым центральным узлом.
[0036] В процессе реализации, после того как первый обслуживающий узел передает регистрационный запрос в первый центральный узел, первый центральный узел может генерировать уведомление о регистрации узла по первому обслуживающему узлу. Уведомления о регистрации узла может нести информацию об узле по первому обслуживающему узлу. Затем первый центральный узел может передавать уведомление о регистрации узла по первому обслуживающему узлу в ретранслирующий маршрутизатор и другие обслуживающие узлы, за исключением первого обслуживающего узла, которые соединены с первым центральным узлом.
[0037] Дополнительно, первый центральный узел может нумеровать первый обслуживающий узел в соответствии с правилом нумерации, то есть присваивать идентификатор, после приема регистрационного запроса, переданного первым обслуживающим узлом. Таким образом, информация об узле по первому обслуживающему узлу, переносимая в коммуникационном сообщении между последовательными серверами, может включать в себя идентификатор первого обслуживающего узла. Должно гарантироваться, что идентификаторы, присвоенные обслуживающим узлами всеми центральными узлами, являются неповторяющимися, то есть идентификатор каждого обслуживающего узла является уникальным. Здесь применяется допустимое правило нумерации. Во-первых, n центральных узлов нумеруются от 1 до n. Для центрального узла под номером m, где 1≥m≥n, идентификаторы обслуживающих узлов, которые соединены с центральным узлом с номером m, могут быть m+n, m+2n, m+3n …. Таким образом, при увеличении или уменьшении количества центральных узлов может быть осуществлена корректировка нумерации путем простого изменения значения n в правиле нумерации. Между тем, первый центральный узел может передавать сохраненную в нем информацию об узле по всем обслуживающим узлам в распределенной системе в первый обслуживающий узел, в результате чего первый обслуживающий узел сохраняет эти фрагменты информации об узле. Таким образом, первый обслуживающий узел может взаимодействовать с соответствующими обслуживающими узлами в соответствии с этими фрагментами информации об узле во время последующего процесса выполнения услуги.
[0038] На стадии 103 ретранслирующий маршрутизатор передает уведомление о регистрации узла в центральные узлы, за исключением первого центрального узла.
[0039] В процессе реализации ретранслирующий маршрутизатор может быть сконфигурирован с множеством IP-адресов, причем каждый IP-адрес обслуживает различные операционные сети. Иначе говоря, ретранслирующий маршрутизатор поддерживает множество линий и соединен с соответствующим центральным узлом посредством определенной линии. «Соответствие» в настоящем документе означает, что линия центрального узла и эта линия принадлежат одной и той же операционной сети. Таким образом, ретранслирующий маршрутизатор может принимать уведомление о регистрации узла по первому обслуживающему узлу, переданное первым центральным узлом, с использованием первого IP-адреса. Затем ретранслирующий маршрутизатор может направлять уведомление о регистрации узла в другие центральные узлы, соединенные с ретранслирующим маршрутизатором, за исключением первого центрального узла, с использованием других IP-адресов, соответственно.
[0040] На стадии 104 другие центральные узлы передают уведомление о регистрации узла в соответствующие обслуживающие узлы, соединенные с другими центральным узлами, соответственно, и соответствующим образом сохраняют информацию об узле по первому центральному узлу и информацию об узле по первому обслуживающему узлу.
[0041] В процессе реализации другие центральные узлы, за исключением первого центрального узла, которые соединены с ретранслирующим маршрутизатором, могут принимать уведомление о регистрации узла по первому обслуживающему узлу, переданное ретранслирующим маршрутизатором. Затем каждый из других центральных узлов может передавать уведомление о регистрации узла в соответствующие обслуживающие узлы, соединенные с другими центральными узлами. Между тем, другие центральные узлы могут извлекать информацию об узле по первому обслуживающему узлу и информацию об узле по первому центральному узлу, содержащуюся в уведомлении о регистрации узла, а также соответствующим образом сохранять два фрагмента информации об узле.
[0042] Обслуживающие узлы, соединенные с другими центральными узлами, могут после приема уведомления о регистрации узла по первому обслуживающему узлу, переданного соответствующими центральными узлами, соединенными с обслуживающими узлами, извлекать информацию об узле по первому обслуживающему узлу, содержащуюся в уведомлении о регистрации узла, а затем локально сохранять информацию об узле. Аналогично, на стадии 102 другие обслуживающие узлы, соединенные с первым центральным узлом, могут принимать уведомление о регистрации узла по первому обслуживающему узлу, передаваемое первым центральным узлом, и могут извлекать информацию об узле по первому обслуживающему узлу, содержащуюся в уведомлении о регистрации узла, а затем локально сохранять информацию об узле и обозначать рабочее состояние первого обслуживающего узла как состояние «в сети».
[0043] Согласно некоторым вариантам осуществления первый обслуживающий узел может периодически уведомлять первый центральный узел о своем рабочем состоянии после передачи регистрационного запроса в первый центральный узел и завершения регистрации. Соответствующий процесс может происходить следующим образом: первый обслуживающий узел передает сообщение «я жив» в первый центральный узел на основе первого периода.
[0044] Сообщение «я жив» может быть сообщением, которое помогает получателю сообщения определить рабочее состояние отправителя сообщения во времени.
[0045] В процессе реализации первый обслуживающий узел может передавать сообщение «я жив» в первый центральный узел в соответствии с первым периодом после завершения регистрации в первом центральном узле (то есть первый обслуживающий узел присоединяется к распределенной системе). Сообщение «я жив» может нести информацию об узле по первому обслуживающему узлу. В этом случае первый центральный узел может получать рабочее состояние первого обслуживающего узла во времени в соответствии с принимаемым сообщением «я жив».
[0046] Согласно некоторым вариантам осуществления, если первый центральный узел не принимает сообщение «я жив», передаваемое первым обслуживающим узлом, в течение долгого времени, может быть осуществлена обработка состояния «вне сети» первого обслуживающего узла. Как показано на фиг. 2, соответствующая последовательность операций обработки может быть следующей:
[0047] На стадии 201 первый центральный узел передает уведомление о состоянии «вне сети» по первому обслуживающему узлу в другие обслуживающие узлы и ретранслирующий маршрутизатор, если первый центральный узел повторно не принимает сообщение «я жив», передаваемое первым обслуживающим узлом, в течение первого отрезка времени после приема сообщения «я жив», передаваемого первым обслуживающим узлом.
[0048] Первый отрезок времени больше, чем первый период.
[0049] В процессе реализации первый обслуживающий узел может передавать сообщение «я жив» в первый центральный узел на основе первого периода после присоединения к распределенной системе. Однако, если первый центральный узел повторно не принимает сообщение «я жив», передаваемое первым обслуживающим узлом, в течение первого отрезка времени после приема предыдущего сообщения «я жив», может быть сделан вывод о том, что первый обслуживающий узел находится в состоянии «вне сети», а затем уведомление о состоянии «вне сети» по первому обслуживающему узлу может быть передано в ретранслирующий маршрутизатор и другие обслуживающие узлы, соединенные с первым центральным узлом. Уведомление о состоянии «вне сети» может нести информацию об узле по первому обслуживающему узлу. Следует понимать, что состояние «вне сети» первого обслуживающего узла включает в себя активное состояние «вне сети» поставщика услуг или пассивное состояние «вне сети», вызванное поломкой.
[0050] На стадии 202 ретранслирующий маршрутизатор передает уведомление о состоянии «вне сети» по первому обслуживающему узлу в другие центральные узлы.
[0051] В процессе реализации ретранслирующий маршрутизатор может принимать уведомление о состоянии «вне сети» по первому обслуживающему узлу, переданное первым центральным узлом, а затем передавать уведомление о состоянии «вне сети» в другие центральные узлы, соединенные с ретранслирующим маршрутизатором.
[0052] На стадии 203 другие центральные узлы передают уведомление о состоянии «вне сети» по первому обслуживающему узлу в соответствующие обслуживающие узлы, соединенные с другими центральными узлами, соответственно.
[0053] В процессе реализации другие центральные узлы, соединенные с ретранслирующим маршрутизатором, за исключением первого центрального узла, могут принимать уведомление о состоянии «вне сети» по первому обслуживающему узлу, переданное ретранслирующим маршрутизатором, а затем передавать уведомление о состоянии «вне сети» в соответствующие обслуживающие узлы, соединенные с другими центральными узлами. Таким образом, обслуживающие узлы могут обозначать рабочее состояние первого обслуживающего узла как состояние «вне сети» после приема уведомления о состоянии «вне сети», то есть остановить текущую обработку выполнения услуги и отбросить последующую обработку выполнения услуги, связанную с первым обслуживающим узлом. Аналогично, обработка других обслуживающих узлов, соединенных с первым центральным узлом, на стадии 201 является такой же, как вышеописанная обработка.
[0054] Следует отметить, что, после того как первый обслуживающий узел перешел в состояние «вне сети», если снова возникнет необходимость присоединить его к распределенной системе, обработка состояния «в сети» является по сути такой же, как вышеуказанная обработка от стадии 101 до стадии 104, и ее подробности не будут повторно описываться в настоящем документе.
[0055] Согласно некоторым вариантам осуществления, после того как стадия 104 будет завершена, центральные узлы и обслуживающие узлы могут выслать в ответ сообщение подтверждения регистрации после получения уведомления о регистрации узла по первому обслуживающему узлу. Как показано на фиг. 5, соответствующая последовательность операций обработки может быть следующей.
[0056] На стадии 105 второй центральный узел принимает сообщение подтверждения регистрации по первому обслуживающему узлу, переданное обслуживающим узлом, соединенным со вторым центральным узлом, причем второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла.
[0057] В процессе реализации, если обслуживающий узел принимает уведомления о регистрации узла после того, как второй центральный узел передает уведомление о регистрации узла по первому обслуживающему узлу в обслуживающий узел, соединенный со вторым центральным узлом, обслуживающий узел может выслать в ответ сообщение подтверждения регистрации по первому обслуживающему узлу во второй центральный узел. Соответственно, второй центральный узел может принять сообщение подтверждения регистрации. Аналогично, другие обслуживающие узлы, за исключением первого обслуживающего узла, которые соединены с первым центральным узлом, могут также высылать в ответ сообщение подтверждения регистрации по первому обслуживающему узлу в первый центральный узел после получения уведомления о регистрации узла по первому обслуживающему узлу, передаваемого первым центральным узлом.
[0058] На стадии 106 второй центральный узел передает сообщение подтверждения регистрации по первому обслуживающему узлу в ретранслирующий маршрутизатор после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми обслуживающими узлами, соединенными со вторым центральным узлом.
[0059] На стадии 107 ретранслирующий маршрутизатор передает сообщение подтверждения регистрации по первому обслуживающему узлу в первый центральный узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми другими центральными узлами, за исключением первого центрального узла.
[0060] На стадии 108 первый центральный узел передает сообщение подтверждения регистрации по первому обслуживающему узлу в первый обслуживающий узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного ретранслирующим маршрутизатором и всеми другими обслуживающими узлами.
[0061] В процессе реализации первый центральный узел может передавать сообщение подтверждения регистрации в первый обслуживающий узел после приема сообщения подтверждения регистрации по первому обслуживающему узлу, переданного ретранслирующим маршрутизатором и всеми другими обслуживающими узлами, соединенными с первым центральным узлом. Первый обслуживающий узел может быть проинформирован о том, что регистрация прошла успешно после получения сообщения подтверждения регистрации.
[0062] Согласно некоторым вариантам осуществления, если центральный узел не принимает сообщение подтверждения регистрации по первому обслуживающему узлу, высланное в ответ обслуживающим узлом, соединенным с центральным узлом, значит предыдущее уведомление о регистрации узла могло быть не принято этим обслуживающим узлом, при этом центральному узлу необходимо повторно передать уведомление о регистрации узла. Соответствующая обработка может происходить следующим образом: второй центральный узел повторно передает уведомление о регистрации узла во второй обслуживающий узел, если второй центральный узел не принимает сообщение подтверждения регистрации по первому обслуживающему узлу, переданное вторым обслуживающим узлом, в течение второго отрезка времени после передачи уведомления о регистрации узла по первому обслуживающему узлу во второй обслуживающий узел, соединенный со вторым центральным узлом.
[0063] В процессе реализации второй центральный узел может повторно передавать уведомление о регистрации узла во второй обслуживающий узел, если второй центральный узел не принимал сообщение подтверждения регистрации по первому обслуживающему узлу, высланное в ответ вторым обслуживающим узлом, в течение второго отрезка времени после передачи вторым центральным узлом уведомления о регистрации узла по первому обслуживающему узлу во второй обслуживающий узел, соединенный со вторым центральным узлом. Кроме того, если второй центральный узел не принимал сообщение подтверждения регистрации, высланное в ответ вторым обслуживающим узлом, после многократной передачи уведомления о регистрации узла во второй обслуживающий узел, второй центральный узел может остановить передачу уведомления о регистрации узла и определить состояние соединения между вторым центральным узлом и вторым обслуживающим узлом, а также может послать сообщение об аварийной ситуации.
[0064] Согласно некоторым вариантам осуществления множество центральных узлов могут периодически синхронизировать данные. Как показано на фиг. 3, соответствующая последовательность операций обработки может быть следующей:
[0065] На стадии 301 первый центральный узел передает запрос синхронизации, содержащий информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, в другие центральные узлы через ретранслирующий маршрутизатор на основе второго периода.
[0066] В процессе реализации перед осуществлением синхронизации первый центральный узел может сначала определить рабочие состояния всех обслуживающих узлов, соединенных с первым центральным узлом, обновить локально сохраненную информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, а затем генерировать запрос синхронизации, содержащий информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом. Таким образом, первый центральный узел может передавать запрос синхронизации в другие центральные узлы через ретранслирующий маршрутизатор. Следует отметить, что запрос синхронизации содержит информацию об узле по обслуживающим узлам, соединенным только с первым центральным узлам, и не содержит информацию об узле по обслуживающим узлам, соединенным с другими центральными узлами.
[0067] На стадии 302 другие центральные узлы сохраняют информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, и передают сообщение подтверждения синхронизации, содержащее информацию об узле по всем обслуживающим узлам, соединенным с другими центральными узлами, в первый центральный узел через ретранслирующий маршрутизатор.
[0068] В процессе реализации другие центральные узлы могут принимать запрос синхронизации, передаваемый первым центральным узлом через ретранслирующий маршрутизатор, затем извлекать информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, которая содержится в запросе синхронизации, и дополнительно локально сохранять эти фрагменты информации об узле. Иными словами, обновляется локально сохраненная информация об узле по всем обслуживающим узлам, соответствующим первому центральному узлу. Между тем, сообщение подтверждения синхронизации, содержащее информацию об узле по всем обслуживающим узлам, соединенным с другими центральными узлами, соответственно, может быть передано в первый центральный узел через ретранслирующий маршрутизатор. В частности, сообщение подтверждения синхронизации, переданное вторым центральным узлом в первый центральный узел, содержит информацию об узле по всем обслуживающим узлам, соединенным со вторым центральным узлом.
[0069] На стадии 303 первый центральный узел сохраняет информацию об узле по всем обслуживающим узлам, соединенным с каждым из других центральных узлов.
[0070] В процессе реализации первый центральный узел может принимать сообщение подтверждения синхронизации, переданное другими центральными узлами через ретранслирующий маршрутизатор, и, следовательно, извлекать информацию об узле по обслуживающему узлу, содержащуюся в сообщении подтверждения синхронизации, а затем соответствующим образом сохранять информацию об узле по обслуживающему узлу и информацию об узле по центральному узлу, соединенному с обслуживающим узлом. Следует отметить, что каждый центральный узел может сохранить информацию об узле по обслуживающему узлу в соответствии с информацией об узле по соответствующему центральному узлу, соединенному с обслуживающим узлом. Например, имеются три центральных узла, семь обслуживающих узлов, соединенных с первым центральным узлом, восемь обслуживающих узлов, соединенных со вторым центральным узлом, и девять обслуживающих узлов, соединенных с третьим центральным узлом. В этом случае информация об узле по двадцати четырем обслуживающим узлам сохранена в каждом из трех центральных узлов. Когда первый центральный узел инициирует синхронизацию, запрос синхронизации содержит информацию об узле по семи обслуживающим узлам. Сообщение подтверждения синхронизации, высланное в ответ вторым центральным узлом, содержит информацию об узле по восьми обслуживающим узлам. Сообщение подтверждения синхронизации, высланное в ответ третьим центральным узлом, содержит информацию об узле по девяти обслуживающим узлам.
[0071] Согласно некоторым вариантам осуществления дополнительно раскрывается последовательность операций обработки для выполнения запроса услуги. Как показано на фиг. 4, последовательность операций обработки может быть следующей.
[0072] На стадии 401 первый центральный узел определяет второй центральный узел, соответствующий второму обслуживающему узлу, при приеме запроса на выполнение услуги, содержащего информацию об узле по второму обслуживающему узлу и переданного первым обслуживающим узлом, причем второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла.
[0073] В процессе реализации после приема запроса услуги, переданного клиентом услуги, первый обслуживающий узел может сначала выполнить часть бизнес-услуг, поддерживаемых локально, затем определить узловой сервер (такой как второй обслуживающий узел), соответствующий другим бизнес-услугам, и после этого передать запрос на выполнение услуги, содержащий информацию об узле по второму обслуживающему узлу, в первый центральный узел. После приема запроса на выполнение услуги первый центральный узел может извлечь информацию об узле по второму обслуживающему узлу, содержащуюся в запросе на выполнение услуги, а затем определить второй центральный узел, соединенный со вторым обслуживающим узлом.
[0074] На стадии 402 первый центральный узел передает запрос на выполнение услуги, содержащий информацию об узле по второму обслуживающему узлу, во второй центральный узел через ретранслирующий маршрутизатор.
[0075] На стадии 403 второй центральный узел передает запрос на выполнение услуги во второй обслуживающий узел.
[0076] На стадии 404 второй обслуживающий узел осуществляет обработку выполнения услуги на основе запроса на выполнение услуги.
[0077] В соответствии с вариантом осуществления настоящего изобретения в распределенной системе множество обслуживающих узлов соединены с соответствующим центральным узлом, множество центральных узлов соединены с ретранслирующим маршрутизатором, причем соединительная линия от каждого центрального узла к ретранслирующему маршрутизатору и соединительная линия от центрального узла к обслуживающему узлу принадлежат одной и той же операционной сети. Таким образом, когда множество обслуживающих узлов, принадлежащих различным операционным сетям, связываются друг с другом, обслуживающие узлы могут обмениваться коммуникационными сообщениями через центральные узлы и ретранслирующий маршрутизатор. Поскольку линии от обслуживающих узлов к ретранслирующему маршрутизатору принадлежат одной и той же операционной сети, качество связи будет более высоким. Следовательно, различие между операционными сетями оказывает меньшее влияние на связь между обслуживающими узлами.
[0078] Исходя из этой же технической концепции, вариант осуществления настоящего изобретения дополнительно предлагает систему для обработки уведомления о регистрации узла. Система содержит ретранслирующий маршрутизатор, множество центральных узлов и множество обслуживающих узлов. Каждый из центральных узлов соединен с ретранслирующим маршрутизатором и по меньшей мере одним из обслуживающих узлов, соответственно. Соединительная линия от одного из центральных узлов к ретранслирующему маршрутизатору и соединительная линия от центрального узла к обслуживающему узлу принадлежат одной и той же операционной сети.
[0079] Первый обслуживающий узел выполнен с возможностью передавать регистрационный запрос, содержащий информацию об узле по первому обслуживающему узлу, в первый центральный узел, соединенный с первым обслуживающим узлом. Первый центральный узел выполнен с возможностью передачи уведомления о регистрации узла, содержащего информацию об узле по первому обслуживающему узлу, в ретранслирующий маршрутизатор и другие обслуживающие узлы, за исключением первого обслуживающего узла, которые соединены с первым центральным узлом. Ретранслирующий маршрутизатор выполнен с возможностью передавать уведомление о регистрации узла в другие центральные узлы, за исключением первого центрального узла. Другие центральные узлы выполнены с возможностью передавать уведомление о регистрации узла в соответствующие обслуживающие узлы, соединенные с другими центральным узлами, соответственно, и соответствующим образом сохранять информацию об узле по первому центральному узлу и информацию об узле по первому обслуживающему узлу.
[0080] Согласно некоторым вариантам осуществления первый обслуживающий узел также выполнен с возможностью передавать сообщение «я жив» в первый центральный узел на основе первого периода после того, как первый обслуживающий узел передает регистрационный запрос, содержащий информацию об узле по первому обслуживающему узлу, в первый центральный узел, соединенный с первым обслуживающим узлом.
[0081] Согласно некоторым вариантам осуществления первый центральный узел также выполнен с возможностью передачи уведомления о состоянии «вне сети» по первому обслуживающему узлу в другие обслуживающие узлы и ретранслирующий маршрутизатор, если первый центральный узел повторно не принимает сообщение «я жив», передаваемое первым обслуживающим узлом, в течение первого отрезка времени после приема сообщения «я жив», передаваемого первым обслуживающим узлом, причем первый отрезок времени больше, чем первый период. Ретранслирующий маршрутизатор также выполнен с возможностью передавать уведомление о состоянии «вне сети» по первому обслуживающему узлу в другие центральные узлы. Другие центральные узлы также выполнены с возможностью передавать уведомление о состоянии «вне сети» по первому обслуживающему узлу в соответствующие обслуживающие узлы, соединенные с другими центральными узлами, соответственно.
[0082] Согласно некоторым вариантам осуществления второй центральный узел выполнен с возможностью принимать сообщение подтверждения регистрации по первому обслуживающему узлу, переданное обслуживающим узлом, соединенным со вторым центральным узлом, после передачи другими центральными узлами уведомления о регистрации узла в соответствующие обслуживающие узлы, соединенные с другими центральными узлами, соответственно, и передавать сообщение подтверждения регистрации по первому обслуживающему узлу в ретранслирующий маршрутизатор после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми обслуживающими узлами, соединенными со вторым центральным узлом. Второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла. Ретранслирующий маршрутизатор также выполнен с возможностью передавать сообщение подтверждения регистрации по первому обслуживающему узлу в первый центральный узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного всеми другими центральными узлами, за исключением первого центрального узла. Первый центральный узел также выполнен с возможностью передавать сообщение подтверждения регистрации по первому обслуживающему узлу в первый обслуживающий узел после получения сообщения подтверждения регистрации по первому обслуживающему узлу, переданного ретранслирующим маршрутизатором и всеми другими обслуживающими узлами.
[0083] Согласно некоторым вариантам осуществления второй центральный узел также выполнен с возможностью повторно передавать уведомление о регистрации узла во второй обслуживающий узел, если второй центральный узел не принимает сообщение подтверждения регистрации по первому обслуживающему узлу, переданное вторым обслуживающим узлом, в течение второго отрезка времени после передачи уведомления о регистрации узла по первому обслуживающему узлу во второй обслуживающий узел, соединенный со вторым центральным узлом.
[0084] Согласно некоторым вариантам осуществления первый центральный узел также выполнен с возможностью передавать запрос синхронизации, содержащий информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, в другие центральные узлы через ретранслирующий маршрутизатор на основе второго периода. Другие центральные узлы также выполнены с возможностью сохранять информацию об узле по всем обслуживающим узлам, соединенным с первым центральным узлом, и передавать сообщение подтверждения синхронизации, содержащее информацию об узле по всем обслуживающим узлам, соединенным с другими центральными узлами, в первый центральный узел через ретранслирующий маршрутизатор. Первый центральный узел также выполнен с возможностью сохранять информацию об узле по всем обслуживающим узлам, соединенным с каждым из других центральных узлов.
[0085] Согласно некоторым вариантам осуществления первый обслуживающий узел также выполнен с возможностью определять второй центральный узел, соответствующий второму обслуживающему узлу, при приеме запроса на выполнение услуги, содержащего информацию об узле по второму обслуживающему узлу и переданного первым обслуживающим узлом, и передавать запрос на выполнение услуги, содержащий информацию об узле по второму обслуживающему узлу, во второй центральный узел через ретранслирующий маршрутизатор. Второй центральный узел является любым из других центральных узлов, за исключением первого центрального узла. Второй центральный узел также выполнен с возможностью передавать запрос на выполнение услуги во второй обслуживающий узел. Второй обслуживающий узел также выполнен с возможностью осуществлять процесс выполнения услуги на основе запроса на выполнение услуги.
[0086] В соответствии с вариантом осуществления настоящего изобретения в распределенной системе множество обслуживающих узлов соединены с соответствующим центральным узлом, множество центральных узлов соединены с ретранслирующим маршрутизатором, причем соединительная линия от каждого центрального узла к ретранслирующему маршрутизатору и соединительная линия от центрального узла к обслуживающему узлу принадлежат одной и той же операционной сети. Таким образом, когда множество обслуживающих узлов, принадлежащих различным операционным сетям, связываются друг с другом, обслуживающие узлы могут обмениваться коммуникационными сообщениями через центральные узлы и ретранслирующий маршрутизатор. Поскольку линии от обслуживающих узлов к ретранслирующему маршрутизатору принадлежат одной и той же операционной сети, качество связи будет более высоким. Следовательно, различие между операционными сетями оказывает меньшее влияние на связь между обслуживающими узлами.
[0087] На фиг. 7 представлена структурная схема центрального узла в соответствии с одним вариантом осуществления настоящего изобретения. Центральный узел 700 может значительно варьировать по конфигурации или производительности. Центральный узел 700 может включать в себя один или более центральных блоков 722 обработки данных (ЦП) (например, один или более процессоров), память 732 и один или более носителей 730 (т.е. одно или более устройств хранения данных большой емкости), на которых хранится приложение 742 или данные 744. Память 732 и носитель 730 могут предоставлять временное хранение или постоянное хранение. Программы, сохраненные на носителе 730, могут включать в себя один или более модулей (не показаны), каждый из которых может включать в себя группу операций для выполнения инструкций для сервера. Кроме того, центральный блок 722 обработки данных может быть выполнен с возможностью связываться с носителем 730 и выполнять группу операций для выполнения инструкций, сохраненных на носителе 730 в центральном узле 700.
[0088] Центральный узел 700 может дополнительно включать в себя один или более источников 726 питания, один или более проводных или беспроводных сетевых интерфейсов 750, один или более интерфейсов 758 ввода/вывода, одну или более клавиатур 756 и/или одну или более операционных систем 741, таких как Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM или т.п.
[0089] Центральный узел 700 может включать в себя память и одну или более программ, сохраненных в памяти и сконфигурированных для выполнения одним или более центральными блоками обработки данных для осуществления обработки, связанной с центральным узлом (который может быть первым центральным узлом или другими центральными узлам) в различных вариантах осуществления.
[0090] Дополнительно, структуры ретранслирующего маршрутизатора и обслуживающего узла являются по существу аналогичными структуре центрального узла, и их подробности не будут дополнительно описываться в настоящем документе.
[0091] Специалистам в данной области техники следует понимать, что все или некоторые стадии вышеупомянутых вариантов осуществления могут быть реализованы посредством аппаратного обеспечения или посредством аппаратного обеспечения, инструктируемого при помощи программ. Программы могут храниться в машиночитаемом носителе, который может представлять собой постоянную память, магнитный диск или оптический диск.
[0092] Вышеприведенное описание представляет собой только предпочтительные варианты осуществления настоящего изобретения и не предназначено для ограничения настоящего изобретения. Следует понимать, что любые изменения, эквивалентные замены и модификации, которые попадают в пределы сути и принципа настоящего изобретения, находятся в пределах объема настоящего изобретения.