СПОСОБ КОМПЕНСАЦИИ ВНУТРЕННИХ ЗАДЕРЖЕК В ПРЕДЕЛАХ КАЖДОГО УЗЛА И ЗАДЕРЖЕК ПЕРЕДАЧИ МЕЖДУ УЗЛАМИ
METHOD OF COMPENSATING FOR INTERNAL DELAYS WITHIN EACH NODE AND TRANSMISSION DELAYS BETWEEN NODES

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Различные варианты осуществления настоящего изобретения в целом имеют отношение к сетевой среде, а более точно, к реагированию на задержки в пределах сетевой среды.
УРОВЕНЬ ТЕХНИКИ
Мультиплексирование с временным разделением (TDM) представляет собой технологию для распределения полосы пропускания (емкости линии связи) по нескольким каналам, чтобы предоставить потокам битов возможность быть комбинированными (мультиплексированными). Распределение полосы пропускания выполняется посредством разделения оси времени на временные интервалы фиксированной длительности. Конкретный канал, в таком случае, может осуществлять передачу только в течение отдельного временного интервала. Схема, которая комбинирует сигналы на (передающей) стороне источника линии связи, может быть названа мультиплексором. Она принимает ввод от каждого индивидуального конечного пользователя, разбивает каждый сигнал на сегменты и распределяет сегменты по композитному сигналу в чередующейся, повторяющейся последовательности. Композитный сигнал, таким образом, содержит данные от множества отправителей.
Однако многим сетевым средам, которые используют мультиплексирование с временным разделением в соответствии с вышеприведенным описанием, свойственна потеря ширины полосы пропускания, вызванная внутренними задержками в пределах каждого узла и задержками передачи между узлами.
Соответственно, в данной области техники существует необходимость в способе для компенсации внутренних задержек в пределах каждого узла и задержек передачи между узлами.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Различные варианты осуществления изобретения направлены на способ для синхронизации часов реального времени первого узла и часов реального времени второго узла с часами реального времени мультиплексора. Способ включает в себя отправку часов реального времени мультиплексора и первого номера на первый узел; установку часов реального времени первого узла равными часам реального времени мультиплексора; формирование второго номера; отправку часов реального времени мультиплексора и второго номера на второй узел; и установку часов реального времени второго узла, равными часам реального времени мультиплексора.
RTC
+ Delay
M
T
=
K-1
T
K
K
slot
slot
slot
К
К
Различные варианты осуществления изобретения также направлены на способ для компенсации одной или более задержек передачи между мультиплексором, первым узлом и вторым узлом. В одном из вариантов осуществления способ включает в себя расчет задержки передачи между мультиплексором и первым узлом с использованием уравнения ()mod(·)()·, где M обозначает количество временных интервалов в пределах полосы пропускания среды, сконфигурированной для передачи данных между мультиплексором, первым узлом и вторым узлом, T обозначает длительность каждого временного интервала, K обозначает адрес узла, mod обозначает операцию взятия по модулю, RTC обозначает часы реального времени K-го узла, и Delay обозначает накопленную задержку передачи из мультиплексора на K-й узел; отправку часов реального времени мультиплексора, первого номера и задержки передачи на первый узел; и установку часов реального времени первого узла, равными часам реального времени мультиплексора плюс задержка передачи.
RTC
+ Delay
M·T
=
K-1)·T
,
K
K
slot
slot
slot
К
К
В еще одном варианте осуществления способ включает в себя синхронизацию первыми часами реального времени мультиплексора как часов реального времени первого узла, так и часов реального времени второго узла; прием данных с первого узла, расчет задержки передачи между мультиплексором и первым узлом с использованием уравнения ()mod()(где M обозначает количество временных интервалов в пределах полосы пропускания среды, сконфигурированной для передачи данных между мультиплексором, первым узлом и вторым узлом, T обозначает длительность каждого интервала времени, K указывает ссылкой на адрес узла, mod обозначает операцию взятия по модулю, RTC обозначает часы реального времени K-го узла, и Delay относится к накопленной задержке передачи из мультиплексора на K-й узел; отправку вторых часов реального времени мультиплексора, первого номера и задержки передачи на первый узел; и установку часов реального времени первого узла, равными вторым часам реального времени мультиплексора плюс задержка передачи.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Для того чтобы вышеперечисленные признаки настоящего изобретения могли бы быть поняты в деталях, приводится более конкретное описание изобретения, кратко обобщенного выше, посредством ссылок на варианты осуществления, некоторые из которых проиллюстрированы на прилагаемых чертежах. Необходимо отметить, однако, что прилагаемые чертежи иллюстрируют только типичные варианты осуществления этого изобретения, а потому не должны рассматриваться ограничивающими его объем, ввиду того, что изобретение может допускать другие в равной степени результативные варианты осуществления.
Фиг. 1 иллюстрирует сетевую среду в соответствии с одним или более вариантами осуществления настоящего изобретения.
Фиг. 2 иллюстрирует блок-схему последовательности операций способа для синхронизации часов реального времени каждого узла в пределах сетевой среды часами реального времени мультиплексора в соответствии с одним или более вариантами осуществления изобретения.
Фиг. 3 иллюстрирует синхрослово в соответствии с одним или более вариантами осуществления изобретения.
Фиг. 4 иллюстрирует блок-схему последовательности операций способа для компенсации задержки передачи между мультиплексором и каждым узлом в пределах сетевой среды в соответствии с одним или более вариантами осуществления изобретения.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Фиг. 1 иллюстрирует сетевую среду 10 в соответствии с одним или более вариантами осуществления настоящего изобретения. В одном из вариантов осуществления сетевая среда 10 включает в себя мультиплексор 20 на связи с большим количеством узлов 100. Фиг. 1 показывает, что сетевая среда 10 содержит K узлов, при этом K может быть любым, большим, чем один. Каждый узел может быть датчиком, компьютером, сервером, беспроводным устройством, персональным цифровым секретарем или любым другим устройством, которое может быть использовано, будучи некоторым образом присоединенным соответственно к сетевой среде 10. Сетевая среда 10 может быть сетью системы сбора сейсмологических данных. Мультиплексор 20 и узлы 100 соединены друг с другом в шлейфовой конфигурации. Как таковой, мультиплексор 20, в большинстве случаев, может упоминаться как оконечное устройство. Все узлы 100 принимают идентичные сигналы, и каждый узел в шлейфе может модифицировать один или более сигналов перед их передачей на следующий узел. Сигналы могут передаваться между узлами 100 и мультиплексором 20 через любую среду передачи, такую как волоконно-оптический кабель или электрический провод.
Между смежными узлами 100 существует двусторонняя связь. Сигналы, которые передаются из мультиплексора 20 на узлы 100, могут быть переданы через командную линию 30 связи, которая может использовать непрерывный, основанный на кадрах формат. Сигналы, которые передаются из мультиплексора 100 на узлы 20, могут быть переданы через линию 40 данных, которая может использовать мультиплексирование с временным разделением (TDM). Каждый узел 100 может иметь в распоряжении выделенный временной интервал для передачи данных. Другие варианты осуществления, тем не менее, предполагают, что каждый узел 100 может иметь в распоряжении более чем один выделенный временной интервал для передачи данных.
Фиг. 2 иллюстрирует блок-схему последовательности операций способа 200 для синхронизации часов реального времени каждого узла в пределах сетевой среды 10 часами реального времени мультиплексора 20 в соответствии с одним или более вариантами осуществления изобретения. На этапе 210 мультиплексор 20 формирует синхрослово. Фиг. 3 иллюстрирует синхрослово 300 в соответствии с одним или более вариантами осуществления изобретения. Синхрослово 300 включает в себя три поля: поле часов реального времени, поле адреса и поле задержки. Поле часов реального времени заполнено часами реального времени мультиплексора 20, которые могут быть синхронизированы с глобальными часами реального времени, например, с часами реального времени GPS (глобальная система определения местоположения). Как таковые, часы реального времени мультиплексора 20 могут представлять собой эталонные часы реального времени. Поле адреса заполнено 1, которая соответствует первому узлу. Поле адреса может быть в любом формате, широко известном рядовым специалистам в данной области техники, например, двоичном или десятичном. Поле задержки является пустым. На этапе 220 мультиплексор 20 отправляет синхрослово на узел 1. Синхрослово может передаваться непрерывно через линию 30 связи. В одном из вариантов осуществления синхрослово может передаваться с фиксированным интервалом, который может быть равным или большим, чем интервал командного кадра.
На этапе 230, по приему синхрослова, узел 1 фиксирует эталонные часы реального времени и устанавливает эталонные часы реального времени в качестве своих часов реального времени. Узел 1 также фиксирует содержимое поля адреса и устанавливает содержимое, то есть 1, в качестве своего сетевого адреса. На этапе 240 узел 1 изменяет синхрослово посредством приращения содержимого поля адреса на единицу, то есть 2, и транслирует синхрослово на следующий узел в шлейфе. Таким способом узел 1 формирует другой номер, который должен быть использован в качестве сетевого адреса для следующего узла. Вышеприведенные этапы повторяются до тех пор, пока все узлы 100 в пределах сетевой среды 10 не установили эталонные часы реального времени в качестве своих часов реального времени. То есть до тех пор, пока узел K принимает синхрослово из узла K-1, фиксирует эталонные часы реального времени и устанавливает эталонные часы реального времени в качестве своих часов реального времени, и устанавливает K в качестве своего сетевого адреса (этап 250).
Возвращаясь к этапу 210, как только мультиплексор 20 отправляет синхрослово на узел 1, мультиплексор 20 ожидает приема данных из узлов, в том числе узла 1. Фиг. 4 иллюстрирует блок-схему последовательности операций способа 400 для компенсации задержки передачи между мультиплексором и каждым узлом в пределах сетевой среды 10 в соответствии с одним или более вариантами осуществления изобретения. По получении данных из узла 1 (этап 410) мультиплексор 20 измеряет разницу между фактическим временем прибытия данных из узла 1 в мультиплексор 20 и фактическим временем, рассчитанным с использованием следующего уравнения:
(<i>RTC</i><sub>K</sub><i>+Delay</i><sub>K</sub>)mod(<i>M·T</i><sub>slot</sub>)<i>=</i>(<i>K-1)·T</i><sub>slot</sub>
Уравнение (1),
slot
К
К
K
1
1
1
где M указывает ссылкой на количество временных интервалов в пределах полосы пропускания, T обозначает длительность каждого интервала времени, K обозначает адрес узла, RTC обозначает часы реального времени K-го узла; mod обозначает операцию взятия по модулю, и Delay обозначает накопленную задержку передачи из мультиплексора 20 на K-й узел (этап 420). В контексте уравнения (1) мультиплексор 20 может расматриваться как узел с K=0, и мультиплексор 20 использует эталонные часы реального времени в виде RTC. На этапе 430 мультиплексор 20 рассчитывает Δt, которая является задержкой передачи между мультиплексором 20 и узлом 1, с использованием разницы, измеренной на этапе 420. Задержка Δt передачи также может включать в себя любую задержку, которая возникает в узле 1, ассоциативно связанную с его внутренней обработкой данных. В одном из вариантов осуществления задержка Δt передачи может быть рассчитана как разница, измеренная на этапе 420, деленная на 2.
1
На этапе 440 мультиплексор 20 формирует новое синхрослово, которое включает в себя поле часов реального времени, то есть заполненное новыми эталонными часами реального времени (например, в момент, когда сформировано синхрослово), поле адреса, заполненное 1, и поле задержки, заполненное задержкой Δt передачи. На этапе 450 мультиплексор 20 отправляет новое синхрослово на узел 1.
1
На этапе 460 по приему нового синхрослова из мультиплексора 20, узел 1 устанавливает новые эталонные часы реального времени плюс задержка передачи Δt в качестве своих новых часов реального времени. Узел 1 также фиксирует содержимое поля адреса и устанавливает содержимое, то есть 1, в качестве своего сетевого адреса.
2
1
2
На этапе 470 узел 1 измеряет разницу между фактическим временем прибытия данных из узла 2 на узел 1 и фактическим временем, рассчитанным с использованием уравнения (1). На этапе 480 мультиплексор 1 рассчитывает Δt, которая является задержкой передачи между узлом 1 и узлом 2, с использованием разницы, измеренной на этапе 470. На этапе 490 узел 1 модифицирует новое синхрослово посредством приращения поля адреса на единицу и установления поля задержки = Δt + Δt, которое может учитывать любую задержку, вызванную внутренней обработкой узла 1 и узла 2. На этапе 495 узел 1 отправляет новое синхрослово на узел 2.
1
1
1
2
Обработка продолжается до тех пор, пока все узлы 100 в пределах сетевой среды 10 не устанавливают новые эталонные часы реального времени плюс своя соответственная накопленная задержка передачи в качестве своих соответственных часов реального времени. Как только каждый узел установил новые эталонные часы реального времени плюс своя соответственная накопленная задержка Δt передачи в качестве своих часов реального времени, каждый узел может передавать данные в мультиплексор 20 раньше, на свою соответственную накопленную задержку Δt передачи. Например, как только узел 1 устанавливает новые эталонные часы реального времени плюс задержка Δt передачи в качестве своих новых часов реального времени, узел 1 может передавать данные в мультиплексор 20 раньше, на задержку Δt передачи. Подобным образом, как только узел 2 устанавливает новые эталонные часы реального времени плюс задержка Δt + Δt передачи в качестве своих новых часов реального времени, узел 2 может передавать данные в мультиплексор 20 раньше, на задержку Δt1 + Δt2 передачи. Таким образом, когда мультиплексор 20 принимает данные из каждого узла, фактическое время прибытия данных из каждого узла, по существу, будет таким же, как фактическое время прибытия, рассчитанное с использованием уравнения (1). Таким образом, различные варианты осуществления изобретения используют компенсацию задержки передачи, чтобы максимизировать коэффициент использования полосы пропускания.
Несмотря на то, что вышеизложенное направлено на варианты осуществления настоящего изобретения, другие и дополнительные варианты осуществления изобретения могут быть придуманы, не выходя из его основного объема, а его объем определен формулой изобретения, которая следует далее.