Динамическая маршрутизация сигналов

 

Пакеты данных доставляются через совокупность узлов к устройству завершения. Узел, в котором пакет данных покидает эту совокупность, является терминальным узлом. Каждый пакет содержит код выбора маршрута. Узел, принимающий пакет, данных, проверяет код выбора маршрута с целью определения возможности использования указанного узла в качестве терминального узла для этого пакета. Выполняется операция табличного поиска, использующая указанный код выбора маршрута в качестве индекса к таблице выбора маршрута. Эта таблица идентифицирует канал, который следует использовать для выбора маршрута указанного пакета, проходящего от данного узла, к соседнему узлу. Указанный пакет проверяется также на совместимость между типом пакета и выбранным каналом. Если имеет место несовместимость, выбирается канал замены. Если узел решает, что он может быть терминальным узлом для пакета, он оценивает идентификатор канала, чтобы определить, не обслуживает ли он в текущий момент сторону, в которую направлен этот пакет. Достигаемым техническим результатом является то, что настоящее изобретение распределяет решение о маршрутизации между узлами связи и минимизирует задержку в доставке сигналов сообщений между точками входа и выхода сети. 3 с.п. и 13 з.п. ф-лы, 10 ил.

Настоящее изобретение относится к сетям связи. Более конкретно, настоящее изобретение относится к выбору маршрутов для доставки сообщений в сети узлов коммутации.

Предшествующий уровень техники Сети связи, используемые для доставки телекоммуникационных сообщений, для взаимосоединения компьютеров и т.д. могут содержать любое количество узлов. Эти сети могут доставлять электронные сообщения между двумя точками, направляя эти сообщения от узла к узлу внутри этой сети. По мере того как возрастает число узлов в сети и число маршрутов связи, доступных для каждого узла сети, возрастает равным образом и число потенциальных маршрутов, доступных для доставки любого отдельного сообщения. Соответственно, возникает проблема выбора целесообразного маршрута в этой сети. Обычно, сеть стараются выбрать с кратчайшим возможным маршрутом, чтобы минимизировать задержки, задействовать минимальное количество ресурсов сети и максимально повысить надежность доставки сообщения. В то же время при выборе сети необходимо сконцентрировать внимание на необходимости предотвращения пробок в коммутационном графике и необходимости достижения наиболее высокой вероятности того, что сообщение будет доставлено к его месту назначения.

Общепринято, что перед реальной доставкой сообщения устанавливается статический маршрут доставки сообщения в сети. Другими словами, статический маршрут доставки определяется в режиме установки соединения, который имеет место перед началом связи. Определенное количество ресурсов сети отводится для определения указанного статического маршрута во время установки соединения. Однако найденный статический маршрут остается выделенным для приходящего вызова до его окончания.

Хотя данный общепринятый метод статической маршрутизации сигнала адекватно обслуживает нужды статических объектов, но не в состоянии удовлетворить требованиям предъявленным динамическими объектами. В частности, когда указанная сеть осуществляет связь между двумя точками, которые движутся относительно этой сети, необходимо провести определение маршрута в динамике для компенсации этого движения. Например, физические объекты или узлы коммутации, которые являются приемлемыми при маршрутизации сигналов между двумя точками при установлении соединения, становятся неприемлемыми, по мере того как это соединение начинает двигаться.

Раскрытие изобретения Преимуществом настоящего изобретения является то, что сеть обеспечивается сигналами сообщений о динамических маршрутах.

Другим преимуществом настоящего изобретения является то, что ресурсы сети, передаваемые для сигналов сообщений маршрутизации минимизированы.

Другим преимуществом является то, что настоящее изобретение распределяет решение о маршрутизации между узлами сети.

Другие преимущества заключаются в том, что настоящее изобретение минимизирует задержку в доставке сигналов сообщений между точками входа и выхода сети.

Другое преимущество состоит в том, что настоящее изобретение позволяет компенсировать перегрузки потоков сообщений.

Указанные преимущества настоящего изобретения достигаются путем маршрутизации сигнала через коммутатор, который служит в качестве узла в совокупности узлов коммутации. Этот метод предусматривает прием пакета данных, несущего код маршрутизации. Этот пакет данных представляет по крайней мере часть сигнала, подлежащего маршрутизации. Идентификатор канала получают в ответ на этот код маршрутизации, содержащийся в пакете данных. Указанный идентификационный канал идентифицирует один из множества каналов связи, используемых в коммутаторе для маршрутизации указанного пакета данных за пределы коммутатора. Затем указанный пакет данных передается от коммутатора по указанному каналу связи.

Краткое описание чертежей В дальнейшем изобретение поясняется описанием вариантов его выполнения со ссылкой на чертежи, на которых: фиг. 1 изображает схему расположения внешней среды, в которой практикуется воплощение настоящего изобретения; фиг. 2 - схему расположения узлов коммутации в сети связи, сферы полномочий, соответствующие этим узлам коммутации и каналы связи между этими узлами коммутации; фиг. 3 - блок-схему отдельного узла коммутации или коммутатора этой сети связи; фиг.4 - блок-схему фоновой процедуры, выполняемой узлами коммутации этой сети связи; фиг. 5 - блок-схему коммутационной процедуры, выполняемой узлами коммутации этой сети связи; фиг. 6 - схему формата данных, используемых в первом варианте выполнения настоящего изобретения для передачи данных;
фиг.7 - схему формата данных, используемых во втором варианте выполнения настоящего изобретения для передачи данных;
фиг. 8 - схему формата данных, используемых для передачи кода маршрутизации;
фиг. 9 - схему формата данных, используемых для передачи значения "идентификатора логического канала" (LCID); и
фиг.10 - блок-схему процедуры Терминального узла, выполняемой узлами коммутации этой сети связи.

Лучший вариант осуществления изобретения.

Фиг.1 иллюстрирует спутниковую сеть связи 10 Сеть 10 содержит совокупность 11 узлов коммутации 12, которые рассеяны вокруг Земли. В предпочтительном воплощении узлы 12 являются движущимися по орбите спутниками. Спутники 12 занимают полярные, околоземные орбиты 14. В частности, в предпочтительном варианте выполнения сети 10 используется семь полярных орбит, при этом на каждой орбите удерживается одиннадцать спутников 12. Для ясности, на фиг.1 показано только несколько из этих спутников 12.

Орбиты 14 и спутники 12 распределены вокруг Земли, каждая орбита 14 опоясывает Землю на высоте приблизительно 765 километров. Благодаря этим околоземным орбитам 14 спутники 12 движутся со скоростью около 25000 км/ч относительно Земли и облетают Землю за время, около 100 минут. Взятые вместе, спутники 12 остаются относительно стационарными по отношению друг к другу внутри совокупности 11, за исключением того, что их орбиты сходятся и пересекаются друг с другом в полярных областях.

На фиг.2 представлена двумерная "моментальная фотография" карты относительной ориентации нескольких спутников (SV) 12. Со ссылкой на фиг.1-2 в любой заданный момент времени спутники 12 в четных орбитальных плоскостях 14a обычно находятся приблизительно в одних и тех же широтах. Подобно этому спутники 12 обычно находятся приблизительно в тех же широтах для всех нечетных плоскостей 14b. Однако спутники 12 в нечетных плоскостях позиционированы не в фазе со спутниками 12 в нечетных областях. В любой заданный момент широты спутников 12 в нечетных плоскостях расположены приблизительно посередине между широтами близлежащих спутников 12 четных областей.

Линия прямого выделения существует между каждым спутником 12 и передним и задним спутниками 12 в той же плоскости 14 и между передним и задним спутниками 12 в соседних плоскостях. С ссылкой на фиг.1 линия прямой видимости также существует между спутниками в несмежных орбитальных плоскостях 14, так как эти орбиты сходятся около полярных областей. В этом предпочтительном варианте выполнения используются связи на радиочастотах, предпочтительно в диапазоне 20-30 ГГц, для установления каналов связи 16 между каждым спутником 12 и его "соседними" спутниками 12. Каналы 16 названы в данном случае перекрестными с целью их отделения от каналов, используемых для подачи сигналов на совокупность 11 и отвода сигналов от нее. На фиг.2 до шести двунаправленных, в направлении линии прямой видимости, пересекающихся каналов 16 радиочастотной связи обеспечивается для каждого спутника 12. Передний и задний пересекающиеся каналы 16a и 16b существуют между спутником 12x и предшествующим и последующим спутниками 12a и 12b, соответственно, движущимися по орбите в той же самой плоскости 14 (т.е. спутниками, лежащими в одной плоскости), передне-правый и задне-правый пересекающиеся каналы 16c и 16d существуют между спутниками 12x и предшествующим и последующим спутниками 12c и 12d, соответственно, движущимися по орбите в соседней оправе плоскости 14 (т. е. спутниками, лежащими в пересекающихся плоскостях). Подобным образом, передне-левые и задне-левые пересекающиеся каналы 16e и 16f существуют между спутником 12x и предшествующим и последующим спутниками 12e и 12f, соответственно, движущимся по орбитам в левой соседней плоскости 14.

Спутники 12a - 12f далее будут именоваться как спутники, соседние по отношению к спутнику 12x. В частности, узлами соседних спутников являются такие узлы совокупности узлов, к которым могут посылаться сообщения и от которых могут приниматься сообщения без необходимости для этих сообщений проходить через какие-либо другие узлы. Это определение включает в себя узлы, которые могут не находиться в соседних орбитальных плоскостях, но которые, тем не менее, находятся в пределах линии прямой видимости в результате сходимости орбитальных плоскостей 14 в полярных областях. В данном варианте выполнений настоящего изобретения, раскрытом на фиг.1-2, сообщения могут доставляться только в соседние узлы. Каждый спутник 12 поддерживает аналогичный комплект пересекающихся каналов 16 и соседних узлов.

На фиг. 1 и фиг.2 с учетом вышеизложенного, приведена предпочтительная орбитальная геометрия для сети 10, а узел коммутации, который обслуживает каждый спутник 12, может быть расположен иным образом. Например, такие узлы могут быть расположены на поверхности Земли или на орбитах, отличающихся от описанных выше. Равным образом, точное число узлов коммутации может изменяться от сети к сети, число пересекающихся линий 16, обеспечиваемых каждым узлом, может изменяться от сети к сети, а множество узлов коммутации, с которыми может непосредственно связываться каждый узел, не должно быть ограничено числом узлов, находящихся в непосредственной физической близости.

Согласно фиг. 1, спутники 12 связываются с устройствами на Земле через несколько "центральных оффисов коммутации" (GSO) 18, один из которых показан на фиг. 1, через несколько "наземных станций управления" (GCS) 20, одна из которых показана на фиг.1, и через неограниченное число (потенциально через миллионы) устройств абонентской радиосвязи, из которых одно показано на фиг. 1. Абонентские устройства 22 могут быть расположены в любой точке на поверхности Земли. Оффисы GOS 18 предпочтительно распределяются по всей поверхности Земли в соответствии с геополитическими границами. В предпочтительном варианте выполнения каждый спутник 12 может связываться с четырьмя GOS 18 и более, чем с тысячей абонентских устройств 22 в любой заданный момент времени. Станции GCS 20 предпочтительно размещаются в северных или в южных широтах, где сходимость орбит 14 приводит к попаданию большего числа спутников 12 в зону прямой видимости отдельной точки на поверхности Земли, чем в экваториальных широтах. Предпочтительно используется около двух или четырех GCS с тем, чтобы все спутники 12 в этой совокупности могли в некоторой точке на их орбитах 14 попасть в зону прямой видимости отведенной им станции GCS 20.

Ничто не препятствует тому, чтобы располагать GOS 18 и GCS 20 вместе на Земле. Однако оффис GOS 18 выполняет другую функцию, чем та, которую выполняет станция GCS 20, GCS 20 предпочтительно выполняет функции "телеметрии, слежения и управления" (TTfC) для этой совокупности спутников 12.

Оффисы GOS 18 предпочтительно работают как узлы связи в сети 10. Разветвленные наземные сети связи, такие как например национальные общедоступные коммутируемые сети связи (не показаны), могут иметь доступ к сети 10 через GOS 18. Благодаря конфигурации этого сочетания спутников 12 по крайней мере один из спутников 12 находится в поле зрения каждой точки на поверхности Земли в любое время.

Согласно настоящему изобретению каждый конец сообщения может рассматриваться как терминальный узел. Роль этого терминального узла играет один из спутников 12 в сочетании 11, который прокладывает маршрут этого сообщения за пределы сочетания 11, в направлении Земли. Этот терминальный узел может доставлять сообщение к GOS 18, к GCS 20 или к абонентскому устройству 22.

Соответственно, сеть 10 может устанавливать двунаправленную схему связи или две однонаправленные схемы через сочетание 11 спутников 22 между двумя любыми абонентскими устройствами 22, между любым абонентским устройством 22 и любым GSO 18, или между любыми двумя GSO 18. Однако эти схемы связи используют различные узлы совокупности 11 от момента к моменту для доставки сообщений. Эти узлы меняются в ответ на движение совокупности 11 по отношению к Земле.

Помимо вышеописанных взаимоотношений между спутниками 12 и пересекающимися каналами 16 на фиг. 2 показаны две схемы ориентации, относящиеся к спутникам 12. Фиг.2 изображает окружности 24, расположенные так, что каждый спутник 12 находится в центре окружности 24, так что каждая точка на фиг.2 находится внутри по крайней мере одной из окружностей 24 и так, чтобы между окружностями 24 была минимальная величина перекрытий. Окружности 24 приблизительно соответствуют линиям равной напряженности сигнала для ретрансляции сообщений на радиочастотах к поверхности Земли от каждого соответствующего спутника 12. Соответственно, окружности 24 приблизительно определяют географическую ориентацию на Земле каждого спутника 12. Другими словами, GSO 18, GCS 20 или абонентское устройство 22 могут связываться со спутником 12, в сфере которого они находятся. Поскольку спутники 12 движутся относительно Земли, подобным же образом движутся и окружности 24. Окружности 24 могут быть поделены на более мелкие ячейки для улучшенного повторного использования в околоземном пространстве спектра частот, отведенных для каждого спутника 12. Более того, границы, обозначенные окружностями 24, в действительности не определены прецизионно точно.

На фиг. 2 дополнительно показана конфигурация областей пространства 26. Каждая область пространства 26 представлена единичным статическим шестиугольником. Области 26 являются статическими, потому что они неподвижны относительно Земли. Поэтому спутники 12 и окружности 24 входят в области 26 и выходят из областей 26 в результате движения спутников 12. Фиг.2 иллюстрирует области пространства 26 как шестиугольники равного размера, имеющие диаметр, приблизительно равный диаметру окружностей 24. Поэтому никакого существенного перекрытия между областями 26 нет, и области 26 коллективно покрывают всю поверхность Земли. Однако представляется очевидным, что может быть определено любое количество областей 26, что могут быть использованы другие очертания областей, что не все области 26 должны быть одинаковой формы и размеров и что не должно существовать никаких установленных геометрических соотношений между областями 26 и окружностями 24. Например, области пространства 26 и окружности могут иметь уменьшенные размеры вблизи полярных областей, чтобы скомпенсировать сходимость орбит.

В предпочтительном варианте выполнения настоящего изобретения определено приблизительно 77 областей пространства 26. Хотя это число точно соответствует числу спутников 12 в предпочтительном варианте выполнения настоящего изобретения, оно не является критическим признаком. С другой стороны, любая из этих 77 возможных областей пространства может быть задана семиразрядным числом, что является относительно малым количеством данных в случае установления связи в масштабах всего мира. Более того, при наличии 77 областей пространства приблизительно такого же размера, что и окружности 24, каждая область пространства 26 попадает в коллективное ведение конкретно одного из спутников 12 и соседних с ним спутников.

Использование круговых конфигураций 24 и областей пространства 26 полезно ввиду того, что они иллюстрируют два различных варианта выполнении для выбора маршрута, предлагаемых в настоящем изобретении. В обоих вариантах сигналы кодируются как пакеты цифровых данных и каждый пакет содержит код выбора маршрута. Более того, желательно, чтобы этот код выбора маршрута передавался бы с использованием относительно малого количества данных, например, семи или восьми битов Для каждого вызова сочетание 11 (см. фиг.1) может доставлять тысячи таких пакетов данных. Поэтому использование только нескольких битов выбора маршрута в каждом пакете данных экономит ресурсы сети по сравнению с вариантами, которые требуют более сложных кодов выбора маршрута.

В одном варианте выполнения настоящего изобретения, называемом ниже как вариант выполнения области пространства, этот код выбора маршрута идентифицирует область пространства 26, куда направляются эти пакеты данных. В этом воплощении области пространства все узлы 12 имеют достаточно интеллекта, чтобы выбрать маршрут для пакета данных к узлу 12, обслуживающему идентифицированную область пространства 26. Как только пакет данных прибывает на указанный спутник или в узел 12, эти пакеты данных передаются на Землю либо этим узлом 12, либо соседним узлом 12. Объекты, устанавливающие вызов и принимающие участие в этом вызове не должны в точности знать узлы 12, используемые в доставке пакетов данных, или знать об изменениях идентичности этих узлов 12, происходящих в ходе вызова.

В другом воплощении настоящего изобретения, называемом ниже как вариант выполнения физического узла, этот код выбора маршрута идентифицирует конкретный узел коммутации или спутник 12, который служит в качестве терминального узла для пакетов данных, передаваемых вызовом. В этом варианте выполнения физического узла все 12 узлов обладают достаточным интеллектом, чтобы выбрать маршрут данных пакета данных к этому терминальному узлу. Поскольку узлы 12 не движутся существенно относительно друг друга, требуется только незначительный объем интеллекта. С другой стороны, так как этот терминальный узел изменяется в ходе вызова, это изменение идентичности терминального узла передается обратно той стороне, от которой происходили эти пакеты данных. Это воплощение физического узла связано исключительно со сферой спутника указанной окружности 24 и не использует областей пространства 26.

На фиг. 3 приведена блок-схема узла коммутации, например спутника 12, используемого сочетанием 11 (см. фиг.1). В предпочтительном варианте выполнение настоящего изобретения все узлы 12 имеют одинаковую структуру. Узел 12 содержит любое число приемопередатчиков. Например, один приемопередатчик 28 может быть включен для каждого пересекающегося канала 16 (см. фиг.2). Кроме того, узел 12 может содержать любое число приемопередатчиков Земля-канал 30, где каждый приемопередатчик Земля-канал 30 обслуживает один офис GSO 18 или одну станцию GCS 20 (см. фиг.1). Узел 12 может дополнительно содержать приемопередатчик абонентского устройства 32. Узел 12 сообщается с любым числом абонентских устройств 22 (см. фиг.1), потенциально измеряемым в тысячах, в любое заданное время через приемопередатчик 32. Каждый из приемопередатчиков 28-32 связывается с соответствующими антеннами 34 - 38, соответственно.

Каждый приемопередатчик 28-32 может содержать различные компоненты, известные в технике, как показано в случае приемопередатчика "пересечение-канал" 28а и приемопередатчика абонентского устройства 32. Например, каждый из приемопередатчиков 28-32 может содержать приемник 40 и передатчик 42. Каждый приемник 40 связывается с входным буфером 44, в который помещаются входные данные после того как они приняты узлом 12 и демодулированы. Для абонентского приемопередатчика 32 входной буфер 44 может быть поделен так, что для каждого из множества каналов, обслуживаемых приемопередатчиком 32, обеспечивается индивидуальный подбуфер. Каждый передатчик 42 связывается с выходным буфером 46, с которого получают данные для модуляции и излучения или для трансляции за пределы узла 12. Для абонентского приемопередатчика 32 входной буфер 44 может быть разбит так, что обеспечивается подбуфер для каждого из множества каналов, обслуживаемых этим приемопередатчиком 32. Каждый передатчик 42 связан с выходным буфером 46, с которого получают данные для модуляции и излучения или для трансляции за пределы узла 12. Для абонентского приемопередатчика 32 выходной буфер 46 может быть поделен так, что обеспечивается индивидуальный подбуфер для каждого из многочисленных каналов, обслуживаемых приемопередатчиком 32.

Приемопередатчики 28-32 вместе с различными компонентами памяти и таймером 48 связаны с процессором 50. Процессор 50 может быть реализован с использованием отдельного процессора или множества процессоров, работающих в параллельной архитектуре. В общем случае, процессор 50 координирует и управляет приемопередатчиками так, что узел 12 принимает сообщения данных от пересекающихся каналов 16, соответственно распределяет эти принятые сообщения по выходным буферам 46 и передает эти сообщения обратно и пересекающиеся каналы 16. Сообщения данных также принимаются с поверхности Земли и передаются на поверхность Земли через приемопередатчики 30-32. Таймер 48 используется для синхронизации процессора 50 и узла 12 с учетом временных ограничений, накладываемых со стороны сети 10 (см. фиг.1)
Компоненты памяти узла 12 сконфигурированы так, что содержат таблицу "идентификации логического канала (LCID) 52. Таблица 52 ассоциирует значения идентификатора LCID, упоминаемые ниже, с адресами выходного буфера приемопередатчика 32 в соответствии один к одному. Эти адреса, включенные в таблицу 52, прямо соответствуют каналу, используемому для передачи сообщений к абонентскому устройству 22. Другими словами, путем записи данных в выходной буфер 46 приемопередатчика 32, в место, заданное адресом в таблице 52 LCID, выбирается канал для конкретного трафика, присвоенный конкретному абонентскому устройству.

Эти компоненты памяти далее сконфигурированы таким образом, что они содержат "справочную таблицу выбора маршрутов" (RLUT) 54, карту обслуживания "соседей" или список 56, таблицу кодов выбора маршрута 57 и остальную память 58. В общем случае, таблица RLUT 54 содержит один элемент данных для каждого возможного кода выбора маршрута, который может быть принят в пакете данных в узле 12. Этот элемент данных, ассоциированный с кодом выбора маршрута, идентифицирует пересекающийся канал 16 (см. фиг.2), который должен использоваться в маршрутизации этого пакета данных за пределы узла 12, к месту его назначения. И наоборот, этот элемент данных может информировать узел 12, что пакет данных достиг своего предполагавшегося назначения.

Карта обслуживания "соседей" 56 регистрирует значения LCID, присвоенные вызовом, для которых соседние узлы 12 являются новыми терминальными узлами, данные состояний, характеризующие пропускную способность трафика пересекающихся каналов 16 этих узлов и выбранные CSO 18 и GCS 20 (см. фиг.1), обслуживаемые этими узлами. Новыми терминальными узлами являются узлы, к которым были посланы пакеты данных в варианте выполнения физического узла настоящего изображения. Таблица RLUT 54 и карта 56 более подробно описывается ниже.

Таблица выбора маршрута 57 связывает значения LCID, коды выбора маршрута и адреса входного буфера 44 для многоканального приемопередатчика 32 в соответствии с принципом один к одному. Эти адреса, включенные в таблицу 57, непосредственно соответствуют конкретным каналам, используемым в связывании пакетов данных и направлении их вверх, к узлам 12. Узел 12 может прилагать к концам пакетов данных эти значения LCID и коды выбора маршрута перед тем, как отослать эти пакеты к другому объекту в сети 10. Эти коды выбора маршрута и значения LCID первоначально определяются во время установления вызова, предпочтительно офисом GSO 18 (см. фиг.1) и посылаются к узлу 12 в управляющем сообщении сети. В соответствии с вариантом выполнения физического узла настоящего изобретения этот код выбора маршрута многократно обновляется во время прохождения вызова в соответствии с управляющими сообщениями сети, поступающими из узлов, обрабатывающих противоположные концы этих вызовов.

Оставшаяся часть памяти 58 содержит данные, которые являются инструкциями для процессора 50 и которые будучи исполнены процессором 50, понуждают узел 12 выполнять функции, которые описаны ниже. Память 58 также содержит другие переменные, таблицы и базы данных, которыми манипулирует узел 12 во время работы.

На фиг. 4 представлена блок-схема фоновой процедуры 60, которая выполняется узлом 12 для обеспечения перекоммутации пакетов данных из входного буфера 44 в соответствующий выходной буфер 46 (см. фиг.3). В этом предпочтительном варианте выполнения настоящего изобретения все узлы 12 выполняют преимущественно одну и ту же процедуру. Эту фоновую процедуру можно рассматривать как выполненную непрерывно, тогда как узлы 12 одновременно выполняют другие функции. В целом, процедура 60 определяет, возникла ли какая-то необходимость, и предпринимает соответствующие действия, если такая необходимость обнаружена.

Блок-схема, показанная на фиг.4, выполнена главным образом в расчете на вариант выполнения изобретения в области пространства. Многие задачи, раскрытые на фиг. 4, могут быть опущены применительно к воплощению физического узла настоящего изобретения. С другой стороны, несколько задач, которые могут быть опущены для воплощения области физического пространства, проиллюстрированы на фиг. 4 прямоугольниками из двойных линий.

Процедура 60 выполняет задание на поиск 62, определяя, должна ли генерироваться одна или более новых таблиц RLUT 54 (см. фиг.3) для использования их узлом 12. Пространственный вариант выполнения изобретения использует различные таблицы RLUT 54, чтобы отслеживать движение узлов 12 над областями пространства 26 (см. фиг. 2). Соответственно, число, например, 10-100 различных таблиц RLUT 54 используется каждой орбитой, и набор таблиц RLUT 54 каждой орбиты отличается от набора, использованного в предыдущей орбите. Вместо того, чтобы расходовать значительные объемы памяти для хранения таблиц RLUT, которые не используются, настоящее изобретение предусматривает формирование таблицы RLUT 54 перед тем, как они потребуются. Таблицы RLUT 54, которые больше не нужны, могут быть перезаписаны в память узла 12. Соответственно, задача 62 определяет, когда возникла необходимость генерировать новую таблицу RLUT 54.

Эта необходимость формирования новой таблицы RLUT может быть определена в соответствии с множеством факторов. Например, задача 62 может определить, что новая таблица RLUT 54 должна быть сформирована на определенный период времени раньше, чем эта новая таблица будет использована узлом 12. И наоборот, задача 62 может поставить процесс формирования новой таблицы RLUT 54 в очередь до тех пор, пока запас существующих таблиц RLUT 54 не снизится до заданной величины. Либо задача 62 может решить, что все таблицы RLUT 54, которые должны использоваться в предстоящей орбите, будут сформированы, когда узел окажется в полярной области Земли, где коммуникационный трафик мал, и узел 12 может свободно расходовать вычислительную мощность для генерации таблиц RLUT 54. Эти и другие соображения, касающиеся эффективной работы узла 12, могут приниматься во внимание задачей 62 при определении факта, когда существует необходимость в генерации одной или более новых таблиц RLUT 54.

Когда задача 62 определяет необходимость генерации одной или более таблиц RLUT 54, задача 64 генерирует одну или более таблиц RLUT 54 и запоминает их в памяти узла 12. Задача 64 может выполняться сразу после задачи 62, или может быть выполнена позднее, в отдельном процессе, который ставится в очередь задачей 62. Каждая отдельная таблица RLUT 54 ассоциирует несколько битов данных с каждой возможной областью пространства 26 (см. фиг.2). Эти данные, записанные в таблице RLUT 54, представляют собой идентификатор канала (ID). Этот идентификатор канала ID определяет, какие из перекрестных каналов 16 (см. фиг.2) следует использовать при выборе маршрута для пакета данных в область пространства, идентифицированную кодом выбора маршрута. И наоборот, данный идентификатор канала ID может информировать узел 12 о том, что указанный пакет данных может достичь области пространства своего назначения и, что возможно, никаких перекрестных каналов 16 не потребуется для передачи пакета данных за пределы узла 12.

Подробные алгоритмы, используемые для генерации таблиц RLUT 54 не критичны для работы настоящего изобретения. Например, узел 12 может моделировать положение самого себя и своих соседних узлов в совокупности 11 по отношению ко всем областям пространства 26 (см. фиг.2) в характерный момент времени для генерации таблицы RLUT 54. Затем, узел 12 может для смоделированных пакетов данных с выбранными маршрутами ко всем возможным областям пространства определить наикратчайший или наиболее прямой маршрут из моделированного положения. И наоборот узел 12 может принять данные от станции управления, такой как GCS20 (см. фиг.1), которые могут быть расширены для того, чтобы генерировать одну или более таблиц RLUT 54. Более того, ничто не мешает генерировать алгоритмы из включенных правил специальных случаев. Например, алгоритмы выбора маршрута могут быть сконфигурированы с небольшим предпочтением, отдаваемым маршрутам, лежащим в одной плоскости, перед маршрутами с пересечением плоскостей и даже с усилением этой тенденции в смысле преимущественного использования маршрутов, проходящих в одной плоскости в области полярных широт по сравнению с более экваториальными широтами.

Фоновая процедура 60 выполняет задачу 66 определения, существует ли необходимость для переключения с текущей используемой таблицы RLUT 54 к новой таблице RLUT 54. Предпочтительнее, чтобы отдельная таблица RLUT 54 активизировалась на определенный период времени, например, на период от одной до десяти минут, Желательно, чтобы задача 66 могла определять, когда истек этот заданный период времени. Когда задача 66 определит необходимость переключения таблиц RLUT 54, задача 68 запомнит переменную в памяти узла 12, которая заставит следующую запланированную таблицу RLUT 54 стать этой активизированной таблицей RLUT 54.

Для пространственного варианта выполнения настоящего изобретения соответствующая таблица RLUT 54 активизируется через регулярные интервалы. Таблицы RLUT 54 формируются заранее и находятся в ждущем режиме, с тем, чтобы быть активизированными в случае необходимости. Непрерывный поток таблиц RLUT 54 отслеживает движение узла 12. Задачи 62-66 могут быть, но не должны быть опущены при выполнении физического узла настоящего изобретения. Это вариант выполнения физического узла маршрутизирует пакеты данных к специфицированным физическим узлам 12. Относительная ориентация узлов 12 прекращается. Следовательно, таблица RLUT 54 может потребовать только незначительных изменений во время нормальной работы в связи с вариантом выполнения физического узла настоящего изобретения. В этом воплощении физического узла таблица RLUT 54, например, может генерироваться автономно (off-line) и передаваться к узлу станцию GCS 20 (см. фиг. 1).

Фоновая процедура 60 выполняет задачу 70 определения, существует ли необходимость для обработки директивы "hand-off". Директива "hand-off" представляет собой сообщение, принятое от соседнего узла 12. Это сообщение информирует узел 12, что соседний узел, пославший это сообщение, был терминальным узлом для одного или более вызовов, идентифицированных этой директивой. Как терминальный узел, этот соседний узел маршрутизирует пакеты данных, ассоциированные с одним или более вызовами к одному или более устройств завершения, находящихся на, или около поверхности Земли, таким как абонентские устройства 22, офисы 18 и тому подобное. Директива "hand-off" также информирует узел 12, принимающий эту директиву, что соседний узел выходит из диапазона устройств завершения, и что этот узел 12, принимающий эту директиву, будет через некоторый небольшой промежуток времени служить в качестве терминального узла для указанного одного или большего числа вызовов.

Когда задача 70 определит, что существует необходимость обработать директиву "hand-off", задача 72 предпримет соответствующие ответные действия. Задача 72 может исполняться непосредственно после задачи 70 или позднее, в отдельном процессе, который был поставлен в очередь задачей 70. Когда вызовы, ассоциированные с абонентскими устройствами 22 (см. фиг. 1), будут обработаны, задача 72 может запомнить значения "идентификатора логического канала" (LCID) в таблице LCID 52 и в таблице кода выбора маршрута 57 (см. фиг. 3). Значение идентификатора LCID является меткой, которую несет каждый пакет данных в вызове для однозначной идентификации этого вызова, для идентификации абонентского устройства 22, которому этот пакет данных предназначен, и для идентификации офиса CSO 28 (см. фиг. 1), который имеет некоторое отношение к этому вызову. Значения идентификатора LCID обсуждаются более подробно ниже. Сохраняя значения идентификатора LCID в таблице 52 и в таблице 57 выбора маршрута или вызова, узел 12 присваивает каналы этим значениям LCID.

Когда вызовы, ассоциированные с офисами CSO 18 (см. фиг. 1), будут обработаны, задача 72 может запоминать идентификаторы этих CSO 18 в карте 56 обслуживания "соседей". Запоминая эти идентификаторы ID офисов CSO в карте 56, узел 12 может посылать внешние сообщения к новому терминальному узлу, который присвоит конкретный приемопередатчик 30 "Земля-канал" сообщениям с обработанными CSO.

Эти ответные действия, предпринимаемые задачей 72, могут дополнительно включать в себя отправку сообщения обратно, к этому соседнему узлу, с целью информирования этого соседнего узла о новых присвоенных каналов для вызовов абонентских устройств 22 (см. фиг. 1), которые были обработаны. Этот соседний узел может затем информировать устройства завершения этих новых присвоений каналов и запланированное время обработки для этого нового узла 12. Обработка "handing off") имеет отношение к выбору маршрута пакетов данных как для воплощения области пространства, так и для воплощения физического узла настоящего изобретения, потому что процедуры выбора маршрута описанные ниже, компенсируют обработку "hand off" при доставке пакетов данных к узлам 12, которые действуют как терминальные узлы для вызовов.

Фоновая процедура 60 выполняет задачу 74, определяя, существует ли необходимость в обработке одного или более сообщений корректировки в обслуживании "соседей". Сообщение корректировки в обслуживании "соседей" передают значения идентификаторов LCID вызовов, которые этот соседний узел обслуживает как новый терминальный узел. Эти сообщения корректировки в обслуживании могут информировать узел 12 о новом запросе "соседа" на канал, или об отпускании ранее активного канала. Каналы могут запрашиваться, например, когда вызов был недавно установлен или завершен, или когда вызов прошел обработку "hand off".

В любом из воплощений области пространства или физического узла настоящего изобретения сообщения корректировки в обслуживании "соседей" передают данные состояния канала. Эти данные состояния канала характеризуют способность соседнего узла обрабатывать данные графика, принятые через общий перекрестный канал 16 (см. фиг. 2). Эти данные состояния могут индицировать, что в перекрестном канале произошел отказ, что этот соседний узел испытывает исключительно тяжелую информационную нагрузку и имеет пониженную способность обработки нового графика данных, или же что нормальная связь может иметь место. Эти данные состояния используются в настоящем изобретении, чтобы создать приоритет трафика пакета данных через соответствующий перекрестный канал. Обмен сообщениями корректировки состояния "соседей" может производиться между соседними узлами регулярно.

Когда задача 74 обнаружит необходимость в обработке одного или более сообщений корректировки в обслуживании "соседей", задача 76 запомнит содержимое этих сообщений в карте 56 обслуживания "соседей" (см. фиг. 3). Задача 76 может выполняться сразу после задачи 74 или позднее, в отдельном процессе, который ставится на очередь задачей 74. В пространственном варианте выполнения настоящего изобретения предпочтительно запоминать значения идентификатора LCID таким образом, чтобы их можно было не только быстро запомнить, но и быстро находить в скором времени, получая эти значения LCID. Узел 12 дополнительно запоминает эти данные состояния в таблице 56. Узел 12 может обнаружить, что произошел отказ в перекрестном канале (см. фиг. 2) и самостоятельно, не ожидая получения сообщения корректировки в обслуживании "соседей", запомнить эту информацию в соответствующей переменной в таблице 56.

Фоновая процедура 60 выполняет задачу 78, определяя, были ли недавно инициированы или завершены какие-либо вызовы в узле 12. Если такое изменение состояния вызова обнаружено, узел 12 выполняет задачу 80 либо немедленно переходя к задаче 76, либо через отдельный процесс, который ставится в очередь задачей 78. Задача 80 формирует и отсылает сообщение корректировки в обслуживании "соседей", обсуждавшееся выше. Это сообщение корректировки отсылается ко всем соседним узлам с целью информирования этих соседних узлов об изменении состояния вызова.

Фоновая процедура 60 выполняет задачу 82, определяя, существует ли необходимость в обработке "hand off" одного или более вызовов, приходящих в соседний узел. Подробное описание метода, используемого для определения, когда необходимо выполнять обработку "hand off" вызовов, не имеет значения для настоящего изобретения. Узел 12 может, например, формировать решение о необходимости обработки "hand off" на Доплеровских характеристиках, временных соотношениях, напряженности сигнала и тому подобное. Такие факторы могут быть использованы, чтобы предположить, что объект, с которым поддерживается связь, например, абонентское устройство 22 (см. фиг. 1), достиг порогового расстояния от узла 12 и удаляется. Когда задача 82 определит, что необходима обработка "hand off", выполняется задача 84, которая может выполняться сразу после задачи 82, или позднее, в отдельном процессе, ставящемся в очередь задачей 82. Задача 84 формирует и отправляет директиву "hand off" к соседнему узлу, принимающему этот, прошедший обработку "hand off", вызов. Вслед за задачей 84 может выполняться задача 86, информирующая соседние узлы об этом изменении в состоянии вызова в результате обработки "hand off".

Задача 88 реализуется в виде физического узла, и может быть опущена в воплощении области пространства. Задача 88 форматирует и отсылает директиву нового назначения к конечной станции, противоположной этому вызову, проходящему обработку "hand off". Эта директива нового назначения посылается к узлу сети 10, который управляет противоположной вызову конечной станцией, такой например, как офис CSO 18, станция GCS 20 или другой узел 12, через который абонентское устройство 22 связывается непосредственно (см. фиг. 1). Этот узел сети 10 является одним из улов, откуда исходили пакеты данных, для которых узел 12 был терминальным узлом. Эта директива нового назначения инструктирует этот узел завершения, чтобы он изменил код выбора маршрута, который он вставляет в пакеты данных для идентификации соседнего узла, принимающего этот прошедший обработку "hand off" вызов. После того, как узел завершения примет и ответит на директиву нового назначения, совокупность 11 (см. фиг. 1) начнет выбирать маршруты пакетов данных этих вызовов к этому принимающему соседнему узлу.

Узел 12 принимает такие директивы нового назначения в отношении пакетов данных, принятых непосредственно от абонентского устройства 22 и переданных в другой узел совокупности 11, (т.е. пакетов данных, входящих в совокупность 11 от абонентского узла 22). Этот вновь принятый код выбора маршрута запоминается в соответствующей ячейке таблицы 57 кода выбора маршрута (см. фиг. 3). Эта соответствующая ячейка может быть определена путем просмотра введенных данных в таблицу 57, которые содержат значение идентификатора LCID, включенное в эту директиву. После пересмотра таблицы 57 узел 12 добавит этот новый код выбора маршрута в пакеты данных вызова, принятого от абонентского устройства 22, перед тем как передать их дальше в пределах совокупности 11. CSO 18 и GCS 20 могут выполнять аналогичную процедуру в ответ на прием директив нового назначения. Соответственно, данные вызовов, исходящие от общественной коммутируемой сети телесвязи или ей подобных и передаваемые в совокупность 11 через CSO 18 или GCS 20, могут отслеживать изменения в кодах выбора маршрута.

После задачи 88 задача 90 запоминает идентификатор этого вызова и соседнего узла, принимающего этот вызов, в карте 56 обслуживания "соседей" (см. фиг. 3). Сохраняя запись обработки "hand off" этого вызова, узел 12 может выбирать маршруты пакетов данных в направлении из скорректированного терминального узла после того, как произошла обработка "hand off", даже если эти пакеты данных содержат устаревший код выбора маршрута.

Как показано на фиг. 4, программное управление для фоновой процедуры 60 непрерывно повторяется после выполнения выбранных задач 62-90. Поэтому текущие данные таблиц RLUT 54, LCID 52 и карты 56 обслуживания "соседей" хранятся в памяти узла 12. Очевидно, что многие из задач 62-90 могут выполняться одновременно или в другом порядке, чем указано на фиг. 4. Более того, узел 12 может выполнять дополнительные задачи, не связанные с выбором маршрута в фоновой процедуре 60.

На фиг. 5 показана блок-схема коммутационной процедуры 92, выполняемой отдельным узлом 12 в совокупности 11 (см. фиг. 1) для обеспечения выбора маршрута коммуникаций. В предпочтительном варианте выполнения настоящего изобретения все узлы 12 выполняют одну и ту же процедуру. Задача 94, выполняемая процедурой 92, получает пакет данных. Этот пакет данных может быть получен от любого из входных буферов 44 (см. фиг. 3). Процедура 84 может выполняться множество раз одновременно множеством процессоров, занятых обслуживанием своих собственных входных буферов 44 или одним процессором, который обслуживает все входные буферы 44. Соответственно, конкретный пакет данных, полученный в задаче 94, есть просто любой пакет данных, принятый узлом 12 от любого источника, например от такого, как соседний узел 12, офис CSO 18 (см. фиг. 1), абонентское устройство 22 или тому подобное.

Пакеты данных, принятые от соседних узлов 12, CSO 18 или GCS 20 (см. фиг. 1), содержат код выбора маршрута и значение идентификатора LCID. С другой стороны, пакеты данных, принятые непосредственно от абонентских устройств 22 ( см. фиг. 1) через буфер 44 многоканального приемопередатчика 32 могут не иметь таких кодов выбора маршрута или значений LCID. Соответственно, для таких пакетов данных задача 95 считывает адрес входного буфера 44 приемопередатчика 32, от которого был получен пакет данных, и обращается к таблице 57 кода выбора маршрута, используя этот адрес в качестве ключа. Этот код выбора маршрута и значение LCID, записанные в таблице 57 и ассоциированные с этим адресом, получаются и добавляются или отмечаются в принятом пакете данных. После задачи 95 все пакеты данных содержат коды выбора маршрута и значения LCID.

Настоящее изобретение приводит в соответствие общепринятым поступающие разнообразные форматы пакетов данных во всей совокупности 11. На фиг. 6 и на фиг. 7 приведены форматы данных двух иллюстративных примеров пакетов данных 96, доставленных через совокупность 11 (си. фиг. 1). Фиг. 6 иллюстрирует два независимых пакета данных 96, а фиг. 7 иллюстрирует отдельный пакет данных 96. Оба воплощения пакета данных 96 как на фиг. 6, так и на фиг. 7 содержат один заголовок 98 и один код выбора маршрута 100 для каждого пакета данных 96. Заголовок 98 содержит данные, идентифицирующие характеристику типа, с которым должен ассоциироваться пакет данных 96, длину, с которой должен ассоциироваться пакет 96, и любую другую информацию, которую принято включать в заголовок пакета данных.

Эта характеристика типа может, например, означать, что пакет данных 96 содержит необработанные данные или данные речевых сигналов. Очевидно, что данные речевых сигналов и необработанные данные могут отличаться друг от друга тем, что пакеты данных 96 речевых сигналов могут выдерживать более низкую степень определенности при их доставке, чем пакеты данных 96 с необработанными данными. Кроме того, эта характеристика типа может быть использована для передачи данных истории выбора маршрута. Совокупность 11 может затем обращаться с пакетами данных 96, которые уже имели проблемы с выбором маршрута, придавая им более высокий приоритет, чем пакетам 96, которые еще не имели таких проблем.

Код выбора маршрута 100 является относительно коротким кодом, например в 4-12 бит и предпочтительно в 7-8 бит. Совокупность 11 использует код выбора маршрута 100, чтобы быстро доставить пакет 96 к терминальному узлу этого пакета 100. Формат данных для кода 100 выбора маршрута проиллюстрирован на фиг. 8. Код выбора маршрута 100 предпочтительно состоит из двух сегментов. Сегмент 101 завершения идентифицирует терминальный узел совокупности 11. В воплощении физического узла настоящего изобретения сегмент 101 непосредственно идентифицирует узел 12, который должен служить в качестве терминального узла. В воплощении области пространства сегмент 101 идентифицирует область пространства. Сегмент 103 типа "спуск-канал" идентифицирует тип канала, используемого для выбора маршрута пакета данных 96 в направлении вниз, к Земле. Например, пакет данных может быть направлен в абонентскому устройству 22 (см. фиг. 1) через многоканальный приемопередатчик 32 (см.фиг 3) или к CSO 18 или GCS 20 (см. фиг. 1) через приемопередатчик 30 (см. фиг. 3). Очевидно, что узлам 12 не нужно консультироваться с сегментом типа 103, если только последний заранее не определит, что это терминальный узел для этого пакета данных 96.

В варианте выполнения, показанном на фиг. 6, каждый пакет данных 96 содержит также одно значение 102 LCID и один набор данных 104 о полезной нагрузке. Каждый узел 12 может служить как терминальный узел для тысяч независимых коммуникаций, которые должны распределяться среди любого числа оконечных устройств. Каждая независимая коммуникация передается любым числом, часто выражаемым в тысячах пакетов данных 96, а пакеты данных каждой коммуникации принимается в терминальном узле в относительно произвольном порядке. Значение 102 идентификатора LCID идентифицирует специальное оконечное устройство, к которому должен быть проложен маршрут для пакетов данных 96.

На фиг. 9 изображен примерный формат заданных значений 102 идентификатора LCID. Как показано на фиг. 9, значение 102 LCID может содержать компоненту 106 номера последовательности и компоненту 108 IDCSO. CSO ID108 однозначно идентифицирует офис CSO 18 (см. фиг. 1), который создал это значение 102 LCID и который имеет управляющее значение в этой коммуникации. Номер последовательности 106 идентифицирует конкретный вызов или зарегистрированное абонентское устройство 22, которое ассоциируется с этим CSO 18. Каждый CSO 18 должен удостовериться, что он не активизировал два идентичных значения номера последовательности в одно и то же время. Соответственно, принимая CSOID 108 с номером последовательности 106, значение 102 LCID однозначно идентифицирует устройство завершения, к которому посылается пакет данных 96.

Изображенные на фиг. 6, заголовок 98, код выбора маршрута 100 и значение 102 идентификатора LCID вместе представляют собой избыточные данные, включаемые в каждый пакет 96. В общем случае, по некоторым причинам, пакеты 96 в совокупности 11 доставляются иным образом, чем эти избыточные данные. Эти избыточные данные включаются в пакеты данных, главным образом, в целях контроля. С другой стороны, пересылка данных 104 полезной нагрузке является главной целью доставки пакетов 96 в совокупности 11. Данные 104 полезной нагрузки не имеют ограничений по форме их представления и могут представлять собой оцифрованные данные речевых сигналов, необработанные компьютерные данные, видеоданные и тому подобное.

Вариант выполнения пакета данных 96, представленный на фиг. 7, отличается от представленного на фиг. 6 тем, что каждый пакет согласно фиг. 7 может содержать любое число суб-пакетов 110. Каждый суб-пакет 110 может включать в себя свой собственный заголовок 112, характеризующий длину этого ассоциированного суб-пакета 110. Каждый суб-пакет 110 может включать свое собственное LCID значение 102 и данные о полезной нагрузке 104. В соответствии с вариантом на фиг. 7, каждый пакет данных 96 может содержать множественные независимые коммуникации, которые должны доставляться к различным оконечным устройствам. Каждая из этих множественных коммуникаций имеет свое собственное значение LCID 102 и данные о полезной нагрузке 104. Однако все эти коммуникации ассоциированы с общим кодом выбора маршрута 100. Узлы 12 в совокупности 11, которые не является терминальными узлами, обрабатывают только одиночный код выбора маршрута 100, прокладывая маршрут множеству независимых суб-пакетов 110.

Как следует из фиг. 5, после того как задача 94 получит пакет 96 из входного буфера 44 (см. фиг. 3), а задача 95 введет код выбора маршрута и значение LCID в случае необходимости, в зависимости от того, сформирован ли пакет 96 в соответствии с примерами выполнения по фиг. 6 или фиг. 7 или иным образом, задача 114 выполнит операцию табличного поиска в таблице RLUT 54 (см. фиг. 3), используя код выбора маршрута 100 из пакета 96 или индекс таблицы. Существует возможность оценить скорость, с которой может быть выполнена операция табличного поиска. Таким образом, задача 114 быстро получает идентификатор ID канала для пакета 96, полученного выше в задаче 94.

После задачи 114 осведомительная задача 116 определит, проложить ли маршрут пакета 96 через перекрестный канал 16 (см. фиг. 2), или же узел 12, выполняющий задачу 116 может оказаться терминальным узлом для этого пакета 96. Если этот узел 12 является терминальным узлом, тогда пакет 96 будет направлен вниз, к оконечному устройству завершения, для которого предназначался этот пакет 96, либо прямо через приемопередатчик 32 (см. фиг. 3), либо косвенно через приемопередатчик 30 и CSO 18 или GCS 20.

В случае пространственного варианта осуществления настоящего изобретения предпочтительно, чтобы задача 116 оценивала идентификатор канала ID, полученный в задаче 114, путем его определения. С другой стороны, для варианта выполнения физического узла настоящего изобретения задача 116 может самостоятельно оценивать код выбора маршрута 100. Как будет показано ниже, задача 116 не может с определенностью решить в этой точке, что узел 12, выполняющий задачу 116, сам является терминальным узлом для задачи пакета 96. Если задача 116 определит, что узел 12 может быть этим терминальным узлом для пакета данных 96, управление программой передается процедуре терминального узла 118, согласно фиг. 10.

Если задача 116 определит, что узел 12, выполняющий задачу 116. не является терминальным узлом, процедура 92 проконтролирует идентификатор ID, полученный выше, в задаче 114, соответствующим образом расположит пакет 96 и затем перейдет к обработке другого пакета 96. В частности, осведомительная задача 120 определит, является ли тип пакета, включенный в заголовок 98 пакета 96 (см. фиг.6 и фиг. 7) совместимым с состоянием идентификатора канала ID, полученным выше, в задаче 114. Эта совместимость может быть определена с помощью операции сравнения. Состояние канала может быть получено из карты 56 обслуживания "соседа" (см. фиг. 3). Как упоминалась выше в связи с фоновой процедурой 60, это состояние индицирует качество перекрестного канала 16 (см. фиг. 2), идентифицируемого этим идентификатором ID канала, индицирует способность этого принимающего соседнего узла 12 обработать пакет 96 в условиях перегрузки графика, и поддерживается текущим фоновой процедурой 60. В большинстве случаев пакет 96 будет совместимым с состоянием перекрестного канала 16, индицируемым этим идентификатором канала ID.

Если задача 120 определяет совместимость, задача 122 передает пакет 96 к выходному буферу 46, ассоциируемому с приемопередатчиком 28 (см. фиг. 3), индицируемым этим идентификатором канала ID. Пакет 96 будет автоматически передаваться в соответствующий соседний узел 12. После задачи 122 управление программой передается обратно к задаче 94, чтобы начать обработку другого пакета 96.

С другой стороны, в некоторых случаях задача 120 может обнаружить наличие несовместимости. Эта несовместимость может быть результатом отказа перекрестного канала 16, избыточной перегрузки графика в соседнем узле 12 или другой подобной причины. Если обнаружена несовместимость, осведомительная задача 124 определяет, доступен ли другой перекрестный канал 16. Если, например, каждый узел 12 поддерживает шесть перекрестных каналов 16 (см. фиг. 2), любой из четырех или пяти альтернативных перекрестных каналов 16 может быть использован для размещения в нем пакета 96, когда выбор предпочтительного перекрестного канала, на который указывает идентификатор канала ID, недоступен. Процедура 92 ответвляется для проверки этих альтернативных перекрестных каналов 16, а задача 124 определяет, следует ли прервать эту петлю.

Если другой перекрестный канал 16 доступен, задача 120 изменяет идентификатор этого канала ID на такой, который соответствует одному из этих альтернативных доступных выборов перекрестного канала. Задача 126 может использоваться определенным алгоритмом, чтобы выбрать, какому из остающихся перекрестных каналов 16 следует отдать предпочтение. Например, задача 126 может выбрать перекрестный канал 16 непосредственно следующий по часовой стрелке после ранее проверявшегося канала. И наоборот, таблица RLUT 54 (см. фиг. 3) может содержать сегмент 128, в котором перечисляются все альтернативные идентификаторы каналов ID, в предпочтительном порядке приоритетов. Кроме того, желательно, чтобы задача 126 могла изменять данные типа, включенные в заголовок 98. если они не были ранее изменены в петле, для указания того факта, что этот пакет 96 повторно маршрутизировался.

После задачи 126 управление программой передается обратно, к задаче 120 для проверки совместимости этого выбранного альтернативного перекрестного канала 16. Управление программой остается в петле задач 120, 124 и 126, пока не будет найден совместимый перекрестный канал 16, или пока не будут проверены все перекрестные каналы 16 и найдено, что ни один из них не является совместимым. Как только будет найден совместимый перекрестный канал 16, задача 12 передаст пакет 96 в выходной буфер 46 (см. фиг. 3) этого перекрестного канала. Если ни одного совместного канала 16 не найдено, задача 124 переключает управление программой к задаче 130. Задача 130 отбрасывает этот пакет 96, а процедура 92 затем возвращается обратно к задаче 94, для обработки другого пакета 96. При исключении пакета 96 он не будет послан за пределы узла 12, и не достигнет своего предполагавшегося места назначения. Однако предпочтительно, чтобы при исключении пакета 96 задача 130 могла вести статистику по количеству исключенных пакетов 96. Предпочтительно, отбрасывание пакетов 96 является исключительно редким событием и таким событием, которое происходит только в связи с более низким приоритетом типов пакетов данных.

Очевидно, что программа выбора маршрута, приведенная выше, в связи с процедурой 92 компенсирует отказы канала и избыточные перегрузки трафика данных Когда все узлы 12 в совокупности 11 выполняют свои собственные версии процедуры 92, пакеты данных 96 автоматически перенаправляются соответствующим образом, чтобы скомпенсировать отказы канала и перегрузки трафика.

На фиг. 10 представлена блок-схема процедуры терминального узла 118. Как упоминалось выше в связи с задачей 116 процедуры 92 (см. фиг. 5), процедура 118 выполняется, когда задача 116 определит, что узел 12, выполняющий процедуру 92, может быть терминальным узлом пакета данных 96, который проходит текущую обработку. Процедура 118 определяет, действительно ли узел 12 является терминальным узлом для этого пакета данных 96, и соответственно размещает этот пакет 96, включая любые имеющиеся в нем суб-пакеты 110 (см. фиг. 7).

Процедура 118 выполняет задачу 131 получения и запоминания сегмента 103 типа "спуск-канал" этого кода выбора маршрута 100. Сегмент типа "спуск-канал" определяет, предназначен ли пакет 96 для абонентского устройства 22, в случае чего он может доставляться через приемопередатчик 32 (см. фиг. 3) или для CSO 18, или GCS 20, в случае чего он может доставляться через один из приемопередатчиков 30 (см. фиг. 3), После задачи 131 процедура 118 выполняет задачу 132 получения значения 102 LCID (см. фиг. 6-8) из этого пакета 96. Согласно варианту выполнения пакета 96 по фиг. 6, имеется только одно значение LCID 102. Однако в варианте пакета 96 по фиг. 7, каждый суб-пакет 110 имеет свое собственное значение 102 идентификатора LCID и задача 132 получает одно и этих значений 102 LCID.

После задачи 132 осведомительная задача 134 оценивает это значение 102 идентификатора LCID, определяя, действительно ли этот канал, идентифицированный этим значением 102 LCID, является текущим каналом, обслуживаемым узлом 12, выполняющим процедуру 118. Если сегмент типа "спуск-канал", сохраненный выше, в задаче 131, показывает, что пакет 96 должен быть доставлен к абонентскому устройству 22, эта оценка может быть выполнена путем обращения к таблице 52 LCID (см. фиг. 3), чтобы проверить, действительно ли в ней содержится это значение 102 идентификатора LCID. Если это значение 102 LCID содержится в таблице 52, тогда канал, идентифицированный этим значением 102 LCID, обслуживается этим узлом 12. Другими словами, этот узел 12 является терминальным узлом для пакета данных 96 или для суб-пакета 110, с которым ассоциировано это значение 102 LCID, и этот узел действительно является терминальным узлом для этого пакета 96 или для суб-пакета 110. С другой стороны, если этот сегмент типа "спуск-канал", сохраненный выше в задаче 131, индицирует доставку к CSO 18 или к GCS 20, задаче 134 необходимо только проверить часть 108 этого идентификатора CSOID (см. фиг. 9) значения 102 LCID. Если этот узел 12 является терминальным узлом пакета данных 96 или суб-пакета 110, то часть 108 соответствует одному из приемопередатчиков 30 (см. фиг. 3).

Когда этот пакет или канал связи, индицированный значением 102 LCID обслуживается узлом 12, задача 136 передает пакет 96 или суб-пакет 110, ассоциированный с значением 102 LCID, в соответствующий выходной буфер 46 приемопередатчика 30 или 32 (см. фиг. 3). Этот пакет 96 или суб-пакет 110 будут автоматически отправлены по маршруту к указанному назначению, в свое время.

После задачи 136, осведомительная задача 138 определяет, не встретился ли конец пакета 96. Задача 138 в большей степени относится к варианту выполнения пакета 96 по фиг. 7, чем по фиг. 6, так как вариант по фиг. 6 предусматривает, чтобы только одно значение LCID было ассоциировано с каждым пакетом 96. Тем не менее, если весь этот полный пакет 96 еще не был размещен, как это возможно в варианте пакетf 96 на фиг. 7, управление программой возвращается обратно к задаче 132 для обработки следующего значения 102 LCID из этого пакета 96. Когда весь этот полный пакет будет размещен, управление программой выведет процедуру 118 из задачи 138 и возвратится к процедуре 92 (см. фиг. 5), где узел 12 обрабатывает другой пакет 96.

Если задаче 134 не удается определить, что этот узел 12 обслуживает этот канал или канал связи, индицируемый значением 102 LCID, задача 140 оценивает карту 54 обслуживания "соседей" (см. фиг. 3) с целью идентифицировать, который из соседних узлов обслуживает этот LCID или его часть CSID. Этот узел 12 может и не быть обслуживающим узлом, если вызов прошел обработку "hand-off" в соседнем узле, а устройство завершения, посылающее пакеты 96, еще не отреагировало на директиву нового назначения, как описано в связи с задачей 88 (см. фиг. 4). И наоборот, в пространственном варианте выполнения настоящего изобретения несколько узлов 12 могут обслуживать общую область пространства 26 (см. фиг. 2).

Предпочтительно, чтобы задача 140 обращалась к карте 54, используя значение 102 LCID или CSOID 108 в качестве ключа. Обращаясь к карте 54, задача 140 быстро определяет идентичность соседнего узла, обслуживающего это значение 102 LCID. В связи с пространственным вариантом выполнения настоящего изобретения карта обслуживания 54 на протяжении всей связи сохраняет текущее состояние сообщений корректировки обслуживания "соседей", упоминаемых выше в связи с фоновой процедурой 60 (см. фиг. 4). В связи с выполнением физического узла настоящего изобретения, карта 54 обслуживания "соседей" сохраняет текущее состояние благодаря записи данных "hand-off", как упоминалось выше в связи с задачей 90 (см. фиг. 4).

После задачи 140 осведомительная задача 142 определяет был на найден обслуживающий "соседний узел". Если никакого соседнего узла, обслуживающего это значение 102 LCID не было найдено, задача 144 отбрасывает этот пакет 96 или суб-пакет 110 и управление программой передается задаче 138 для обработки следующего суб-пакета 110 или пакета 96. Отбрасывая пакет 96 или суб-пакет 110, задача 144 может эффективно вести статистический учет отклоненных пакетов 96 и суб-пакетов 110.

Если задача 142 определит, что обслуживающий соседний узел найден, задача 146 изменит этот код выбора маршрута, чтобы индицировать этот соседний узел. Задача 146 является необязательно для пространственного варианта выполнений настоящего изобретения, поскольку указанный соседний узел вероятно отделяет обслуживание области 26 общего пространства (см. фиг. 2) от узла 12, выполняющем процедуру 118. С другой стороны, в воплощении физического узла настоящего изобретения задача 146 заставит соседний узел определить, не может или он быть этим терминальным узлом для пакета данных 96 или для суб-пакета 110.

После задачи 146 задача 148 передает этот пакет 96 или суб-пакет 110 в выходной буфер 46, ассоциированный с перекрестным каналом 16 (см. фиг. 2), к этому инициированному соседнему узлу обслуживания. Задача 148 может эффективно переформатировать суб-пакет 110 в пакет 96 прежде, чем разместить его в выходном буфере 46. Этот пакет 96 будет своевременно автоматически послан в соответствующий соседний узел. После задачи 148 управление программой передается задаче 138 для обработки следующего суб-пакета 110 или пакета 96.

Суммируя вышесказанное можно заключить, что настоящее изобретение динамически определяет маршруты сигналов связи. Динамическая природа настоящего изобретения позволяет изменять физические узлы, через которые прокладываются маршруты сигналов связи, в течение прохождения вызова. Минимальное количество ресурсов сети отводится для выбора маршрута сигналов связи. Относительно небольшой код выбора маршрута вводится в каждый пакет данных, который доставляется внутри этой совокупности узлов и выбор маршрута определяется по крайней мере частично, на базе операции просмотра таблицы, которая использует только незначительный объем памяти. Более того, настоящее изобретение распределяет решения, касающиеся выбора маршрута, среди узлов сети. Следовательно, оно мгновенно и автоматически реагирует на перегрузки трафика данных и отказы каналов и автоматически корректирует неверные решения по выбору маршрута. Более того, настоящее изобретение быстро размещает пакеты данных, минимизируя задержки в доставке сигналов связи между точками входа и выхода сети.

Настоящее изобретение было описано выше со ссылками на предпочтительные варианты выполнения. Однако представляется очевидным, что в этих предпочтительных вариантах выполнения могут быть сделаны изменения и модификации, не выходящие за пределы объема настоящего изобретения. Например, приводимые конкретные задачи могут выполняться в другой последовательности. Более того, тонкости синхронизации, орбитальная геометрия, топология сети, длина кодов данных и другие параметры, приводимые выше, представлены как иллюстративные примеры и не должны рассматриваться как ограничивающие объем настоящего изобретения.


Формула изобретения

1. Способ маршрутизации пакетов данных через спутниковый коммутатор, отличающийся тем, что осуществляют прием на спутниковом коммутаторе пакета данных с кодом выбора маршрута, причем спутниковый коммутатор используется в качестве одного из совокупности спутниковых коммутирующих узлов связи, движущихся относительно друг друга, и имеет множество связанных с ним каналов связи и соседний узел, соединенный с каждым каналом связи, при этом спутниковые коммутирующие узлы связи распределены вокруг Земли и передают пакеты данных между двумя точками, совершающими относительное движение по отношению к спутникову коммутатору, осуществляют прием соседних обновляемых служебных сообщений на спутниковом коммутаторе с указанием отказа любого из связанных с ним каналов связи или неспособности одного из соседних узлов принимать пакеты данных, получают первый выбранный канал связи из связанных каналов связи на основе кода выбора маршрута и справочной таблицы маршрутов, храняющейся в спутниковом коммутаторе, направляют пакет данных по другому из связанных каналов связи в случае отказа первого выбранного канала связи или неспособности соседнего узла, связанного с первым выбранным каналом связи, принимать пакет данных и периодически генерируют новые справочные таблицы выбора маршрута, компенсирующие относительное движение двух точек по отношению к спутниковому коммутатору.

2. Способ по п.1, отличающийся тем, что по завершении этапа получения идентификатора канала дополнительно проводят оценку указанного идентификатора канала для определения возможности использования коммутатора в качестве терминального узла для пакета данных, являющегося узлом совокупности, который прокладывает маршрут указанному пакету данных за пределами указанной совокупности.

3. Способ по п.2, отличающийся тем, что указанный пакет дополнительно содержит значение идентификатора логического канала (LCID), а указанный этап определения включает оценку указанного значения LCID для получения подтверждения факта обслуживания канала, идентифицированного указанным значениям LCID, указанным коммутатором.

4. Способ по п.3, отличающийся тем, что дополнительно поддерживают список каналов, обслуживаемых соседними узлами указанной совокупности узлов: выбирают в случае, когда указанный коммутатор фактически не является терминальным узлом для указанного пакета данных, соседний узел для приема указанного пакета данных в соответствии с указанным списком и указанным значением LCID.

5. Способ по п.2, отличающийся тем, что дополнительно ведут список, описывающий состояние текущей пропускной способности каждого из множества указанных каналов связи и проводят сверку с указанным списком, с целью проверки совместимости указанного пакета данных с состоянием текущей пропускной способности одного канала связи, причем сверху проводят до указанного этапа передачи, когда на этапе оценки определяют, что указанный коммутатор не является терминальным узлом для указанного пакета данных.

6. Способ по п.5, отличающийся тем, что на этапе сверки в случае, когда указанный пакет данных не совместим с указанным состоянием, изменяют идентификатор канала путем задания другого канала из множества каналов связи для обеспечения совместимости пакета данных с указанным состоянием из списка для другого канала связи.

7. Способ по п.1, отличающийся тем, что этап динамического определения включает этап динамического определения канала связи, на котором указанный канал связи является первым выбранным каналом, когда состояние канала свидетельствует о нормальном функционировании первого выбранного канала связи и о возможности обработки соседним узлом, связанным с указанным первым выбранным каналом, указанного пакета данных, причем указанный канал связи является вторым выбранным каналом связи, когда указанное состояние канала свидетельствует о возможности отказа первого выбранного канала связи или об отсутствии возможности обработки указанным соседним узлом, связанным с указанным первым выбранным каналом связи, указанного пакета данных.

8. Способ по п. 7, отличающийся тем, что непрерывно проводят второй выбранный канал связи на отказ, а также устанавливают факт неспособности обработки соседним узлом, соединенным с вторым выбранным каналом связи, указанного пакета данных, когда состояние канала свидетельствует об отказе первого выбранного канала или отсутствии возможности обработки указанным соседним узлом, соединенным с указанным первым выбранным каналом связи, указанного пакета данных.

9. Способ по п.1, отличающийся тем, что каждый из соседних узлов соединен с множеством каналов связи соседнего узла, причем на этапе приема с привлечением обновляемых сообщений соседних служб фиксируют факт отказа одного из каналов связи соседнего узла.

10. Способ по п.1, отличающийся тем, что осуществляют обмен с указанными соседними узлами, обновляемыми сообщениями соседних служб, которые указывают состояние каналов связи, причем этап обмена осуществляют регулярно, когда указанные узлы меняют свое относительное положение.

11. Узел коммутации пакета данных для выбора маршрута сигнала в пределах совокупности узлов коммутации, распределенных вокруг Земли, имеющей множество каналов связи, соединенных с ним, и соседний узел, соединенный с каждым из указанных каналов связи, отличающийся тем, что содержит первый приемник для приема пакета данных, имеющего в своем составе код выбора маршрута, представляющего собой по меньшей мере часть указанного сигнала, второй приемник для приема обновляемых сообщений соседних служб на коммутирующем узле, с фиксированием факта отказа любого из указанных каналов связи или невозможности обработки любым из указанных соседних узлов данных трафика, средство, связанное с первым приемником, для получения идентификатора канала в соответствии с указанным кодом выбора маршрута, при этом указанный идентификатор канала выполнен с возможностью задания первого выбранного канала связи для выбора маршрута указанного пакета данных за пределами указанного узла коммутации; средство динамического определения состояния канала из обновляемых сообщений соседних служб для первого выбранного канала связи, причем указанное состояние канала свидетельствует об отказе первого выбранного канала связи, либо о возможности соседнего узла, соединенного с первым выбранным каналом связи, принимать указанный пакет данных; средство динамической оценки состояния канала, регистрирующее отказы соседнего узла, соединенного с первым выбранным каналом связи, заданным идентификатором канала, и оценивающее возможность соседнего узла принимать указанный пакет данных, и передатчик, связанный со средством получения, для передачи пакета данных за пределы коммутирующего узла по первому выбранному каналу связи.

12. Узел коммутации по п.11, отличающийся тем, что в средстве получения идентификатора канала содержит память в виде справочной таблицы, по которой производят поиск указанного кода выбора маршрута для получения указанного идентификатора канала.

13. Узел коммутации по п.12, отличающийся тем, что дополнительно содержит средство, связанное со средством получения идентификатора канала, для определения возможности использования узла коммутации в качестве терминального узла для указанного пакета данных, являющегося узлом совокупности (созвездия) узлов коммутации, который отправляет указанный пакет данных за пределы указанной совокупности.

14. Узел коммутации по п.13, отличающийся тем, что указанный пакет данных дополнительно содержит значения идентификатора логического канала (LCID); средство для определения действительного терминального узла содержит средство для оценки значения LCID с целью проверки факта обслуживания канала, идентифицированного указанным значением LCID, указанным узлом коммутации, причем узел коммутации дополнительно содержит средство, связанное со средством определения реального терминального узла и с указанной структурой памяти, для выбора соседнего узла при приеме указанного пакета данных, когда указанное значение LCID не обслуживается указанным узлом коммутации.

15. Узел коммутации по п.11, отличающийся тем, что дополнительно содержит средство динамического определения второго выбранного канала связи, когда указанное состояние канала свидетельствует об отказе первого выбранного канала, либо когда указанный соседний узел, соединенный с указанным первым выбранным каналом, не может принимать указанный пакет данных.

16. Способ динамической маршрутизации пакета данных через узел из множества узлов, формируемых низкоорбитальными искусственными спутниками Земли, связанными пересекающимися каналами связи, отличающийся тем, что осуществляют прием пакета данных в указанном узле, имеющего в своем составе код выбора маршрута, включающий код узла места назначения, указывающий место назначения указанного пакета данных; используют указанный код выбора маршрута для определения искомого пересекающегося канала для выбора маршрута указанного пакета данных к искомому соседнему узлу, причем искомый пересекающийся канал имеет статус объединенного канала, включающий сведения о возможном отказе искомого пересекающего канала и о способности искомого соседнего узла принимать указанный пакет данных; оценивают статус указанного объединенного канала искомого пересекающего канала для определения возможности отказа предпочтительного перекрестного канала; оценивают статус указанного объединенного канала искомого пересекающегося канала для определения возможности приема искомым указанным пересекающимся каналом указанного пакета данных; определяют другой пересекающийся канал для канализации указанного пакета данных, когда статус объединенного канала свидетельствует об отказе указанного искомого пересекающегося канала или о невозможности указанным искомым соседним узлом принимать указанный пакет данных, и передают указанный пакет данных по другому пересекающемуся каналу в другой соседний узел, связанный с указанным пересекающимся каналом.

РИСУНКИ

Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5, Рисунок 6, Рисунок 7, Рисунок 8, Рисунок 9, Рисунок 10



 

Похожие патенты:

Изобретение относится к радиотехнике и цифровой технике и может быть использовано для организации спутниковой связи с использованием низкоэнергетических искусственных спутников Земли (ИСЗ), базовой станции с большим диаметром зеркала антенны ( 12 м) и ряда наземных рабочих (стационарных или мобильных) станций с малым диаметром зеркала антенны ( 1,5 - 2 м)

Изобретение относится к нескольким спутникам, перемещающимся относительно друг друга и оснащенных антеннами, обеспечивающими многократный ячеистый охват Земли

Изобретение относится к области связи, а точнее к системам радиосвязи с использованием искусственных спутников Земли

Изобретение относится к радиоэлектронным системам связи с использованием радиоизлучения при размещении станции ретранслятора на дистанционно пилотируемом летательном аппарате над обслуживаемым регионом в воздушном пространстве над поверхностью Земли

Изобретение относится к области радиосвязи и может быть использовано в спутниковых системах связи с широкополосными сигналами

Изобретение относится к радиотехнике и может быть использовано в спутниковых системах связи

Изобретение относится к системам открытой оптической связи и касается терминалов лазерной связи, устанавливаемых на борту космического аппарата или на поверхности Земли и предназначенных для организации линий связи межу космическими аппаратами, между космическим аппаратом и наземной станцией или между наземными станциями

Изобретение относится к антенной технике и предназначено для дополнительной стабилизации диаграммы направленности антенной системы спутника связи, расположенного на геостационарной орбите

Изобретение относится к сотовым системам связи, а более конкретно касается передачи обслуживания между ячейками сотовой системы связи с сохранением непрерывности обслуживания

Изобретение относится к средствам радиосвязи, используемых в ограниченных сферах применения - региональных

Изобретение относится к системам определения местонахождения, использующим системы радиосвязи

Изобретение относится к построению системы персональной связи через спутники-ретрансляторы на орбитах низкой и средней высоты

Изобретение относится к антенным системам самолета, обеспечивающим работу с радиосигналами в полосе очень высоких частот с частотной модуляцией (ОВЧ/ЧМ), в полосе сверхвысоких частот (СВЧ) и в полосе очень высоких частот с амплитудной модуляцией (ОВЧ/АМ)
Наверх