СПОСОБ ПЕРЕДАЧИ ДАННЫХ ПО ПАКЕТНЫМ СЕТЯМ СВЯЗИ С ВОЗМОЖНОСТЬЮ ВОССТАНОВЛЕНИЯ ДАННЫХ ПРИ ИХ ПОТЕРЕ ИЗ-ЗА НАЛИЧИЯ ОШИБОК СОЕДИНЕНИЯ В СЕТЯХ СВЯЗИ Российский патент 2019 года по МПК H04L12/805 

Описание патента на изобретение RU2706879C1

Область техники

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

Уровень техники

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

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

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

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

При передаче исходных данных зачастую используются процедуры, применяемые на физическом уровне базовой эталонной модели взаимодействия открытых систем (ГОСТ Р ИСО/МЭК 7498-1-99 «Информационная технология. Взаимосвязь открытых систем базовая эталонная модель. Часть 1 Базовая модель»), такие как исправление ошибок с применением различны кодов исправления ошибок и их комбинации для восстановления поврежденных исходных данных, а также алгоритмы перемежения, предназначенные для борьбы с длинными сериями ошибок. Базовая эталонная модель взаимодействия открытых систем рассматривает семь уровней взаимодействия открытых систем: физический (уровень 1), звена данных или канальный уровень (уровень 2), сетевой (уровень 3), транспортный (уровень 4), сеансовый (уровень 5), представления данных (уровень 6) и прикладной (уровень 7). Применение кодов исправления ошибок и их комбинации, а также перемежение на уровне устройства может обеспечить наиболее надежную передачу исходных данных, однако такой подход требует доступа к физическому уровню (уровень 1), каждое такое решение будет работать исключительно на конкретной небольшой группе устройств.

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

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

Задача гарантированной доставки исходных данных, как правило, решается на сетевом и транспортном уровнях взаимодействия открытых систем (уровни 3 и 4 соответственно), с помощью механизмов более надежной маршрутизации. Так, исходные данные могут дублироваться и передаваться по каналу несколько раз, или может происходить поиск надежного канала, или может использоваться множество путей передачи (множество каналов) от передающей стороны к приемной, по которым дублируется передача исходных данных. Такие подходы к передаче исходных данных, в ряде случаев, улучшаются алгоритмами перемежения, так что исходные данные разделяются на меньшие части, перемешиваются и передается «смесь» различных частей исходных данных. На приемной стороне производится восстановление структуры исходных данных, где поврежденные части исходных данных берутся из других, успешно доставленных, частей исходных данных. При этом также можно использовать различные коды исправления ошибок.

Однако, чем дальше от физического уровня (уровня 1) применяются механизмы восстановления исходных данных, тем самым эти механизмы менее эффективны. Причиной тому является инкапсуляция данных. К исходным данным уровня 7 добавляются служебные заголовки уровня 6, получившаяся структура оборачивается в заголовки уровня 5 и т.д. В конечном итоге, примененные защитные механизмы будут обернуты в заголовки уровня 2, после чего данные будут переданы на уровень 1 (физический) - переданы по каналу связи.

При низких скоростях передачи данных разумно передавать данные небольшой длины. К примеру, длина заголовка кадра протокола PPP (Point-to-Point Protocol - двухточечный протокол канального уровня (уровня 2)) равен 5 байт и от 2-х до 4-х байт составляет поле дополнительного индикатора целостности кадра данных, который относится к служебным данным, тогда как в сетевом протоколе PPPoE (Point-to-point protocol over Ethernet - сетевой протокол канального уровня (уровень 2) передачи кадров PPP через Ethernet) заголовок кадра составляет уже 14 байт плюс 2 байта составляет поле дополнительного индикатора целостности кадра данных. Данные сетевого уровня (уровня 3) пришлось бы разбивать на несколько частей, каждая из которых обладала бы служебными данными заголовка сетевого уровня (уровня 3).

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

Из области техники известны следующие технические решения:

Система и способ для адаптивной потоковой передачи в среде с несколькими путями передачи (патент на изобретение (RU) № 2627303, МПК: H04N 21/6437, H04N 21/6373, H04L 29/06, опубл. 07.08.2017).

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

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

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

Также известны протоколы радиосвязи для многоканальных систем связи (патент на изобретение (RU) № 2396726, МПК: H04L 29/06, опубл. 10.08.2010).

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

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

Недостатком данного решения является то, что оно не предусматривает добавление кодов исправления ошибок к исходным данным.

Также известны способ и устройство для передачи пакетных данных переменной длины с конфигурируемым адаптивным выходным планированием, дающим возможность передачи по одной и той же линии передачи дифференцированных услуг для различных типов движения (патент на изобретение (WO) 2001/010048, МПК: H04B 17/00, H04L 1/00, H04L 5/16, опубл. 08.02.2001).

Изобретение касается беспроводных линий связи и описывает совместно канальный (коды исправления ошибок) и физический уровни (изменение модуляции и мощности передатчика) как различные режимы работы системы в зависимости от характеристик канала. В патенте рассматривается режим адаптивности как передача сигнала на одном частотном канале с различными временными интервалами.

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

Также известен протокол уровня канала передачи данных с адаптивным кадрированием (патент на изобретение (US) 09444917, МПК: H04L 29/08, выдан 13.09.2016).

Патент описывает программно-аппаратную реализацию протокола HDLC, включающую адаптивное изменение длины кадра канального уровня. Решение поддерживает работу в асинхронном режиме. Рассматривается оптимизация поиска ошибок путем более быстрого аппаратного вычисления контрольной суммы Cyclic Redundancy Check (CRC) или исключения вычисления CRC в случае дублирования данной проверки.

Недостатками данного решения является то, что оно не рассматривает вопросы исправления ошибок данных и перемежения, а также не решает задачи передачи исходных данных в плохих условиях работы канала передачи данных. Также недостатком является необходимость внедрения решения на физическом уровне.

Также известны система передачи информации, устройство записи и воспроизведения информации, и носитель записи, использующие формат представления данных на основе кода с исправлением ошибок (патент на изобретение (RU) № 2154897, МПК: H03M 13/00, опубл. 20.08.2000).

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

Недостатком данного решения является отсутствие адаптивного поведения кадров данных под изменения состояния канала связи. Также недостатком является отсутствие защиты заголовков кадров при передаче.

Также известен способ пакетной передачи сообщений в сетях связи с многомерной маршрутизацией (патент на изобретение (RU) № 2313187, МПК: H04L 12/56, H03M 13/03, H03M 13/27, опубл. 20.12.2007).

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

Недостатками данного решения является его использование только в сетях с многомерной маршрутизацией. В запатентованном решении перемеженные данные отправляются по разным маршрутам. В заявленном же техническом решении перемеженные данные «склеиваются» в длинную последовательность и передаются вместе по одному маршруту.

Также известен способ кодирования-декодирования информации в системах передачи данных (патент на изобретение (RU) № 2310273, МПК: H03M 13/00, опубл. 10.11.2007).

Изобретение относится к технике связи и может быть использовано в системах передачи данных, преимущественно без обратной связи, для осуществления помехоустойчивого кодирования и декодирования информации каскадным кодом. В способе на передающей стороне к блоку исходной информации добавляют циклическую контрольную сумму и полученный блок кодируют внешним кодом Рида-Соломона (PC) и затем внутренним кодом. Закодированный блок модулируют и передают в канал. После демодулятора принятый блок информации декодируют внутренним кодом. Последовательность декодированных и стертых кодовых слов внутреннего кода запоминают. Если декодирование кодового слова внутреннего кода невозможно, то это некорректируемое кодовое слово сохраняют. Далее декодируют внешний код PC последовательности декодированных и стертых кодовых слов внутреннего кода и вычисляют и проверяют циклическую контрольную сумму упомянутой информационной последовательности. При положительном результате проверки CRC информацию выдают получателю сообщений. При отрицательном результате проверки производят восстановление стертых слов внутреннего кода последовательности. Восстановление стертых слов внутреннего кода и декодирования внешнего кода повторяют до тех пор, пока проверка CRC не даст положительный результат. Техническим результатом является повышение достоверности принятого сообщения.

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

Также известен способ кодирования и модуляции для услуг широковещательной передачи и групповой передачи в беспроводной системе связи (патент на изобретение (RU) № 2371858, МПК: H04J 3/00, опубл. 27.10.2009).

Изобретение относится к связи, а именно к передаче данных в беспроводной системе связи. Техническим результатом является эффективное распределение системных ресурсов по физическим каналам связи в беспроводной системе связи. Результат достигается тем, что физические каналы, которые должны передаваться в суперкадре (группе кадров), идентифицируются, и им распределяются временные интервалы в суперкадре. Схемы кодирования и модуляции для каждого физического канала выбираются на основе его пропускной способности. Данные для каждого физического канала выборочно кодируются на основе кодовой скорости внешнего кода, например, для кода Рида-Соломона и дополнительно кодируются на основе кодовой скорости внутреннего кода, например, для турбокода. Кодированные данные для каждого физического канала отображаются в символы модуляции на основе выбранной схемы модуляции. Символы модуляции для каждого физического канала дополнительно обрабатываются (например, OFDM-модулируются) и мультиплексируются во временные интервалы, распределенные физическому каналу. Данные, которые должны передаваться с использованием другого метода радиосвязи (например, W-CDMA), также обрабатываются и мультиплексируются во временные интервалы, распределенные для этого метода радиосвязи.

Недостатком данного решения является отсутствие гарантированной доставки исходных данных в системах передачи данных. В патенте рассматривается беспроводная передача по физическим каналам связи. Также отсутствуют инструменты адаптивности при передаче данных.

Также известен способ кодирования и модуляции для услуг широковещательной передачи и групповой передачи в беспроводной системе связи (патент на изобретение (RU) № 2108667, МПК: H03M 13/00, опубл. 10.04.1998).

Изобретение относится к вычислительной технике и технике связи. Его использование в системах персонального радиовызова позволяет передавать сообщения абонентам с высокой достоверностью несмотря на импульсные помехи и Релеевские замирания в радиоканале, а кроме того, за счет стробирования работы приемников повысить срок службы используемых в них источников питания. Этот результат достигается благодаря тому, что на передающей стороне при кодировании k-1 символов кодового слова из передаваемого сообщения дополняют часть собственного адреса абонентского приемника и кодируют кодом Рида-Соломона (РС) (n, k), перемежение кодированных слов производят с учетом группового адреса абонентского приемника, а на приемной стороне в процессе демодуляции выделяют синхропосылку и стробируют приемник в моменты прихода этой синхропосылки и той части кодового слова, которая соответствует групповому адресу приемника, а после деперемежения принятых слов декодируют их в смежном классе того кода РС (n, k-1), который вложен в используемый на передающей стороне код РС (n, k), причем лидер этого смежного класса определяется частью собственного адреса приемника. Декодер, содержащий демодулятор, блок управления, блок постоянной памяти, блок декодирования и блок деперемежения, дополнен таймером и блоком синхронизации, который имеет специальное выполнение.

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

Наиболее близким аналогом является протокол РРРоЕ (Point-to-Point over Ethernet) (https://ru.wikipedia.org/wiki/PPPoE) - сетевой протокол канального уровня для пакетной передачи данных. Протокол PPPoE позволяет настраивать (или инкапсулировать) другие протоколы, которые настраиваются на протокол PPP, через соединения Ethernet, но с программными возможностями PPP-соединений.

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

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

Раскрытие сущности изобретения

Указанный технический результат достигается способом передачи исходных данных по пакетным сетям связи, заключающемся в том, что на передающей стороне исходные данные разделяют на блоки данных, затем в каждом блоке данных формируют контрольную сумму блока данных для обнаружения ошибок в таком блоке данных, и далее блоки данных с контрольными суммами по каждому блоку данных передаются на приемную сторону, на приемной стороне для каждого блока данных проверяют контрольную сумму блока данных на наличие ошибок, и блоки данных, в которых обнаруживают ошибки, стирают и перезапрашивают, а из блоков данных, в которых не обнаруживают ошибки, восстанавливают исходные данные, отличающемся тем, что на передающей стороне вычисляют контрольную сумму исходных данных Payload CRC до разделения исходных данных на блоки данных Data BlockN, затем формируют кадр данных Data FrameM, состоящий из синхронизирующей последовательности кадра данных SYNC1, которая синхронизирует последовательность байт в кадре данных Data FrameM, заголовка кадра данных HeaderM, содержащего: значение кодовой скорости исправления ошибок кадра данных CR, значение длины блоков данных, входящих в кадр данных DL, количество отправляемых блоков данных Counter, значение суммарной длины блоков данных и их кодов исправления ошибок, входящих в кадр данных Length1, контрольную сумму исходных данных Payload CRC, вычисляют и добавляют контрольную сумму по заголовку кадра данных HeaderM CRC, вычисляют и добавляют код исправления ошибок по заголовку кадра данных Header ParityM, затем после заголовка кадра данных HeaderM добавляют группы данных, каждая такая группа данных состоит из одного блока данных Data BlockN и кода исправления ошибок такого блока данных Data ParityN, где (N) - это общее количество групп данных, равное количеству блоков данных Data BlockN, на которые были разделены исходные данные, далее на передающей стороне формируют суперкадр Super FrameX, состоящий из (M) числа кадров данных Data FrameM и служебного кадра Control Frame, содержащего информацию о параметрах протокола пакетной передачи данных, применяемого передающей стороной, и предназначенную для осуществления адаптивной настройки режимов работы приемной стороны, затем на передающей стороне выполняют перемежение суперкадра Super FrameX на уровне байт данных, где (X) - это общее количество сформированных суперкадров Super FrameX, далее перемеженный суперкадр Super Frame IntX разделяют на суперкадровые блоки Super BlockT, где (T) - это общее количество сформированных суперкадровых блоков Super BlockT, далее на передающей стороне по каждому суперкадровому блоку Super BlockT формируют передаточный кадр данных Transmit FrameT, состоящий из синхронизирующей последовательности передаточного кадра данных SYNC2, которая синхронизирует последовательность байт в передаточном кадре данных Transmit FrameT, заголовка передаваемого в передаточном кадре данных Transmit FrameT суперкадрового блока TF HeaderT, содержащего: информацию о версии протокола пакетной передачи данных Ver, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT, информацию для осуществления проверки режимов работы протокола пакетной передачи данных Rev, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT, информацию о длине служебного кадра CF Size, информацию о длине суперкадра SF SizeT, информацию о длине суперкадрового блока SB SizeT, номер суперкадра Super Frame Num, в котором расположен данный суперкадровый блок Super BlockT, номер суперкадрового блока Super Block Num, расположенного внутри данного суперкадра Super FrameX, номер порядка отправки суперкадрового блока SCounter передающей стороной, информацию о режиме работы протокола пакетной передачи данных Heming, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT, далее вычисляют и добавляют в заголовок суперкадрового блока TF HeaderT контрольную сумму заголовка, передаваемого суперкадрового блока TF HeaderT CRC и код исправления ошибок заголовка передаточного кадра данных TF ParityT, далее после заголовка, передаваемого в передаточном кадре данных суперкадрового блока TF HeaderT добавляют суперкадровый блок Super BlockT и далее, сформированные по каждому суперкадровому блоку Super BlockT передаточные кадры данных Transmit FrameT, передают приемной стороне, где для каждого передаточного кадра данных Transmit FrameT с помощью синхронизирующей последовательности передаточного кадра данных SYNC2, которая синхронизирует последовательность байт в передаточном кадре данных Transmit FrameT, находят начало передаточного кадра данных Transmit FrameT, далее проводят проверку проверочной суммы заголовка, передаваемого суперкадрового блока TF HeaderT CRC, если значение проверочной суммы заголовка, передаваемого суперкадрового блока TF HeaderT CRC не совпадает с фактическими значениями или присутствует не восстановимая ошибка, то такой суперкадровый блок Super Block отбрасывают, а его место в перемеженном суперкадре Super Frame Int заполняют нулями, если значение проверочной суммы заголовка, передаваемого суперкадрового блока TF HeaderT CRC совпадает или если после процедуры восстановления с помощью код исправления ошибок заголовка передаточного кадра данных TF ParityT заголовок восстанавливается, то на приемной стороне сверяют информацию о версии протокола пакетной передачи данных Ver, применяемого при передаче передаточного кадра данных Transmit FrameT, и информацию для осуществления проверки режимов работы протокола пакетной передачи данных Rev, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT, если приемная сторона не поддерживает версию протокола пакетной передачи данных Ver и режимы работы протокола пакетной передачи данных Rev, применяемые при передаче приемной стороне передаточного кадра данных Transmit FrameT, то такой передаточный кадр данных Transmit FrameT отбрасывают, если приемная сторона поддерживает версию протокола пакетной передачи данных Ver и режимы работы такого протокола пакетной передачи данных Rev, то из заголовка суперкадрового блока TF HeaderT на приемной стороне берут данные о расположении суперкадрового блока Super BlockT: номер суперкадра Super Frame Num, в котором расположен данный суперкадровый блок Super BlockT, номер суперкадрового блока, расположенного внутри данного суперкадра Super Block Num, номер порядка отправки передающей стороной суперкадрового блока SCounter, а также длина служебного кадр CF Size, и такой суперкадровый блок Super BlockT ставят в соответствующее место в перемеженном суперкадре Super Frame IntX. Как только приходит суперкадровый блок из следующего перемеженного суперакдра, то предыдущий перемеженный суперкадр считают заполненным, если суперкадровый блок Super BlockT пришел повторно, то такой суперкадровый блок Super BlockT отбрасывают, далее из сформировавшихся суперкадровых блоков Super BlockT перемеженного суперкадра Super Frame IntX получают суперкадр Super FrameX путем деперемежения, затем суперкадр Super FrameX разделяют на кадры данных Data FrameM, начало каждого кадра данных Data FrameM находят с помощью синхронизирующей последовательности кадра данных SYNC1, затем сверяют контрольную сумму по заголовку кадра данных HeaderM CRC, указанную в заголовке кадра данных HeaderM с фактическим значением, в случае несовпадения контрольной суммы по заголовку кадра данных HeaderM CRC с фактическим значением, заголовок кадра данных HeaderM декодируют с помощью кода исправления ошибок по заголовку кадра данных Header ParityM, далее сверяют контрольную сумму исходных данных Payload CRC, указанную в заголовке кадра данных HeaderM с фактическими значениями в кадре данных Data FrameM, если контрольная сумма исходных данных Payload CRC, указанная в заголовке кадра данных HeaderM, совпадает с фактическими значениями в кадре данных Data FrameM, то блоки данных Data BlockN не повреждены, по такому кадру данных Data FrameM из заголовка кадра данных HeaderM определяют значение кодовой скорости исправления ошибок кадра данных CR, а также значение длины блоков данных, входящих в кадр данных DL, значение суммарной длины блоков данных и их кодов исправления ошибок, входящих в кадр данных Length1 и исходные данные полностью восстанавливают из блоков данных Data BlockN, если контрольная сумма исходных данных Payload CRC, указанная в заголовке кадра данных HeaderM, не совпадает с фактическими значениями, указанными в кадре данных Data FrameM, то блоки данных Data BlockN декодируют с помощью кода исправления ошибок такого блока данных Data ParityN, далее осуществляют сборку исходных данных из блоков данных Data BlockN, сверяют контрольную сумму исходных данных Payload CRC, указанную в заголовке кадра данных HeaderM с фактическими значениями в кадре данных Data FrameM, если контрольная сумма исходных данных Payload CRC, указанная в заголовке кадра данных HeaderM, совпадает с фактическими значениями в кадре данных Data FrameM, то блоки данных Data BlockN не повреждены и исходные данные полностью восстанавливают из блоков данных Data BlockN, если контрольная сумма исходных данных Payload CRC, указанная в заголовке кадра данных HeaderM не совпадает с фактическими значениями, указанными в кадре данных Data FrameM, то передающая сторона направляет приемной стороне служебный кадр Control Frame содержащий информацию о новых параметрах протокола пакетной передачи данных, применяемого передающей стороной и предназначенную для осуществления адаптивной настройки режимов работы приемной стороны, а исходные данные, которые невозможно восстановить, перезапрашиваются.

Блоки данных Data BlockN могут иметь одинаковые длины.

Суперкадровые блоки Super BlockT могут иметь одинаковые длины.

Служебный кадр Control Frame, содержащий информацию о параметрах протокола пакетной передачи данных, применяемого передающей стороной, и предназначенную для осуществления адаптивной настройки режимов работы приемной стороны в передающей стороне, может состоять из синхронизирующей последовательности кадра данных SYNC1, которая синхронизирует последовательность байт в кадре данных Data FrameM, заголовка кадра данных Header, содержащего: значение кодовой скорости исправления ошибок кадра данных CR, значение длины блоков данных, входящих в кадр данных DL, количество отправляемых блоков данных Counter, значение суммарной длины блоков данных и их кодов исправления ошибок, входящих в кадр данных Length1, контрольную сумму исходных данных Payload CRC, далее вычисляют и добавляют контрольную сумму по заголовку кадра данных Header CRC, вычисляют и добавляют код исправления ошибок по заголовку кадра данных Header Parity, затем после заголовка кадра данных Header, добавляют контрольные данные Control Data, состоящее из известного протоколу пакетной передачи данных, применяемого передающей стороной, набора Служебных полейY, где (Y) - это общее количество Служебных полейY в служебном кадре Control Frame, в которых указывается управляющая адаптивными параметрами протокола пакетной передачи данных информация, а также полная статистика работы протокола пакетной передачи данных, затем вычисляют и добавляют код исправления ошибок по контрольным данным Control Data Parity служебного кадра Control Frame.

В качестве кода исправления ошибок может использоваться код Рида-Соломона.

Краткое описание чертежей

Для лучшего понимания заявленного изобретения приводятся следующие графические материалы:

Фиг. 1 Разбивка исходных данных на блоки данных Data BlockN с кодированием таких блоков данных кодом исправления ошибок.

Фиг. 2 Формирование кадра данных Data FrameM.

Фиг. 3 Формирование суперкадра Super FrameX и его перемежение с последующим разделением на суперкадровые блоки Super BlockT.

Фиг. 4 Формирование передаточного кадра данных Transmit FrameT.

Фиг. 5 Формирование служебного кадра настройки протокола пакетной передачи данных Control Frame.

Осуществление изобретения

Указанный технический результат достигается путем формирования на передающей стороне, при передаче исходных данных, передаточного кадра данных Transmit FrameT, который содержит в себе информацию, необходимую для адаптации протокола пакетной передачи данных, применяемого передающей стороной, под изменения состояния канала сети связи. При этом адаптивность обеспечивает исключение потерь исходных данных, что приводит к исключению перезапросов в связи с потерями исходных данных с приемной стороны. Вместо перезапроса исходных данных на приемной стороне восстанавливают поврежденные исходные данные с использованием информации об исходных данных, и информации о параметрах протокола пакетной передачи данных, применяемого передающей стороной, и предназначенную для осуществления адаптивной настройки режимов работы приемной стороны, расположенной в передаточном кадре данных Transmit FrameT. К кадру данных Data FrameM добавляют избыточную информацию, необходимую для защиты заголовка кадра данных Header и для защиты блоков данных Data FrameM, причем такая защита осуществляется для каждого блока данных Data BlockN в отдельности, в которых применяются коды исправления ошибок. Также применяют процесс перемежение данных в суперкадре Super FrameX.

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

Осуществление заявленного изобретения реализуется следующим способом:

Фиг. 1 показывает разбивку на передающей стороне исходных данных на блоки данных Data BlockN с кодированием каждого такого блока данных Data BlockN кодом исправления ошибок блока данных Data ParityN.

На передающей стороне изначально вычисляют контрольную сумма исходных данных Payload CRC. Далее исходные данные разбивают на блоки данных Data BlockN. Каждый блок данных Data BlockN кодируют кодом исправления ошибок такого блока данных Data ParityN. При кодировании могут использоваться различные коды исправления ошибок блоков данных, в частности может использоваться код Рида-Соломона.

Фиг. 2 показывает формирование кадра данных Data FrameM. На передающей стороне формируют кадр данных Data FrameM, состоящий из заголовка кадра данных HeaderM, который в свою очередь состоит из: значения кодовой скорости исправления ошибок кадра данных CR, значения длины блоков данных, входящих в кадр данных DL, количества отправляемых блоков данных Counter, значения суммарной длины блоков данных и их кодов исправления ошибок, входящих в кадр данных Length1, контрольной суммы исходных данных Payload CRC, контрольной суммы по заголовку кадра данных HeaderM CRC, кода исправления ошибок по заголовку кадра данных Header ParityM. После заголовка кадра данных HeaderM добавляют группы данных, каждая из которых состоит из одного блока данных Data BlockN и кода исправления ошибок такого блока данных Data ParityN, количество групп данных равно количеству блоков данных Data BlockN, на которые были разделены исходные данные. Длина блоков данных, входящих в кадр данных DL зависит от значения кодовой скорости исправления ошибок кадра данных CR, для каждого различного значения кодовой скорости исправления ошибок кадра данных CR устанавливают собственные значения суммарной длины блоков данных и их кодов исправления ошибок, входящих в кадр данных Length1. Выбор значения кодовой скорости исправления ошибок кадра данных CR может осуществляться приемной стороной как в автоматическом режиме, по ранее заложенному алгоритму, так и значение кодовой скорости исправления ошибок кадра данных CR может быть установлено вручную на передающей стороне. За каждым значением кодовой скорости исправления ошибок кадра данных CR закреплено фиксированное значение длины блоков данных, входящих в кадр данных DL. Значение длины блоков данных, входящих в кадр данных DL, может ограничить количество (N) блоков данных Data BlockN и их кодов исправления ошибок Data ParityN, расположенных в первом кадре данных Data Frame1, в таком случае оставшиеся блоки данных Data BlockN и коды исправления ошибок таких блоков данных Data ParityN, и не вошедшие в предыдущий кадр данных Data Frame1, располагают в следующем кадре данных Data Frame2, и так до тех пор, пока все группы данных не расположатся в кадрах данных Data FrameM. Перед заголовком кадра данных HeaderM добавляют синхронизирующую последовательность кадра данных SYNC1, которая синхронизирует последовательность байт в кадре данных Data FrameM.

Наиболее защищенный режим кадра данных Data FrameM - это наименьшие значения кодовой скорости исправления ошибок кадра данных CR и наименьшее значение длины блоков данных, входящих в кадр данных DL.

В режиме работы канала связи без ошибок все коды исправления ошибок по заголовку кадра данных Header ParityM отсутствуют, значение кодовой скорости исправления ошибок кадра данных CR в таком случае будет равно единице.

Фиг. 3 показывает формирование суперкадра Super FrameX и его перемежение с последующим разделением на суперкадровые блоки Super BlockT. Суперкадр Super FrameX, представляет собой группу кадров данных Data FrameM с количеством таких кадров данных Data FrameM от 1 до M штук. В суперкадре Super FrameX среди кадров данных Data FrameM может передаваться и служебный кадр Control Frame, содержащий информацию о параметрах протокола пакетной передачи данных, применяемого передающей стороной, и предназначенную для осуществления адаптивной настройки режимов работы приемной стороны. Далее происходит процедура перемежения суперкадра Super FrameX на уровне байт данных. Суперкадр Super FrameX рассматривается как набор байт, которые по известной протоколу пакетной передачи данных схеме перемежевывают, меняют свои позиции внутри суперкадра Super FrameX. Получившийся объект называется перемеженный суперкадр Super Frame IntX. Перемеженный суперкадр Super Frame IntX разделяют на суперкадровые блоки Super BlockT. Длина суперкадровых блоков Super BlockT и их количество зависит от длины суперкадра Super FrameX. Длина суперкадра Super FrameX является одним из параметров адаптивности протокола пакетной передачи данных, применяемого передающей стороны. Длина максимально возможного суперкадра Super FrameX устанавливается передающей стороной при настройке протокола пакетной передачи данных. Наиболее защищенный режим суперкадра Super FrameX - это наименьшая длина суперкадра Super FrameX.

Для каждого из применяемых длин суперкадра Super FrameX имеется свой набор длин суперкадровых блоков Super BlockT. Длина суперкадрового блока является адаптивным параметром. Наиболее защищенный режим суперкадрового блока Super BlockT - это наименьшая длина суперкадрового блока Super BlockT.

Фиг. 4 показывает формирование передаточного кадра данных Transmit FrameT. На передающей стороне формируют передаточный кадр данных Transmit FrameT, состоящий из заголовка суперкадрового блока TF HeaderT передаточного кадра данных Transmit FrameT, который в свою очередь состоит из: поля с информацией о версии протокола пакетной передачи данных Ver, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT, поля с информацией о режимах работы такого протокола пакетной передачи данных Rev, длины служебного кадр CF Size, длины суперкадра SF SizeT, длины суперкадрового блока SB SizeT, номера суперкадра Super Frame Num, в котором расположен данный суперкадровый блок Super BlockT, номера суперкадрового блока, расположенного внутри данного суперкадра Super Block Num, номера порядка отправки передающей стороной суперкадрового блока SCounter, информацию о режиме работы протокола пакетной передачи данных Heming, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT, далее вычисляют и добавляют в заголовок суперкадрового блока TF HeaderT контрольную сумму заголовка, передаваемого суперкадрового блока TF HeaderT CRC и код исправления ошибок заголовка передаточного кадра данных TF ParityT, далее, после заголовка, передаваемого в передаточном кадре данных суперкадрового блока TF HeaderT добавляют суперкадровый блок Super BlockT и далее, сформированные по каждому суперкадровому блоку Super BlockT передаточные кадры данных Transmit FrameT, передают приемной стороне. Перед заголовком суперкадрового блока TF HeaderT добавляют синхронизирующую последовательности передаточного кадра данных SYNC2, которая синхронизирует последовательность байт в передаточном кадре данных Transmit FrameT.

Фиг. 5 показывает формирование служебного кадра Control Frame, содержащего информацию о параметрах протокола пакетной передачи данных, применяемого передающей стороной, и предназначенную для осуществления адаптивной настройки режимов работы приемной стороны. На передающей стороне формируют служебный кадр Control Frame, состоящий из синхронизирующей последовательности кадра данных SYNC1, которая синхронизирует последовательность байт в кадре данных Data FrameM, заголовка кадра данных Header, содержащего: значение кодовой скорости исправления ошибок кадра данных CR, значение длины блоков данных, входящих в кадр данных DL, количество отправляемых блоков данных Counter, значение суммарной длины блоков данных и их кодов исправления ошибок, входящих в кадр данных Length1, контрольную сумму исходных данных Payload CRC, далее вычисляют и добавляют контрольную сумму по заголовку кадра данных Header CRC, вычисляют и добавляют код исправления ошибок по заголовку кадра данных Header Parity, затем, после заголовка кадра данных Header, добавляют контрольные данные Control Data, состоящее из известного протоколу пакетной передачи данных, применяемого передающей стороной, набора служебных полей, в которых указывается управляющая адаптивными параметрами протокола пакетной передачи данных информация, а также полная статистика работы протокола пакетной передачи данных, затем вычисляют и добавляют код исправления ошибок по контрольным данным Control Data Parity служебного кадра Control Frame.

Заявленный способ реализуется следующим порядком:

На передающей стороне в отношении исходных данных, предназначенных для передаче приемной стороне, вычисляют контрольную сумму таких исходных данных Payload CRC, далее осуществлют разбивку исходных данных на блоки данных Data BlockN и каждый такой блок данных Data BlockN кодируют кодом исправления ошибок такого блока данных Data ParityN, в соответствии с Фиг. 1. Длина блока данных, входящих в кадр данных DL является адаптивным параметром протокола пакетной передачи данных.

Далее на передающей стороне, в соответствии с Фиг. 2 формируют кадр данных Data FrameM, содержащий заголовок кадра данных HeaderM, блоки данных Data BlockN и коды исправления ошибок таких блоков данных Data ParityN. Для каждого кадра данных Data FrameM вычисляют контрольную сумму по заголовку кадра данных HeaderM CRC и код исправления ошибок по заголовку кадра данных Header ParityM. Длина кадра данных Data FrameM является адаптивным параметром протокола пакетной передачи данных. Количество блоков данных Data BlockN и кодов исправления ошибок таких блоков данных Data ParityN, размещенных в кадре данных Data FrameM, ограничивается максимальной длиной кадра данных Data FrameM. Количество сформированных передающей стороной кадров данных Data FrameM зависит от длины блока данных Data BlockN и длины кадра данных Data FrameM указанных в качестве адаптивных параметров протокола пакетной передачи данных.

Далее на передающей стороне, в соответствии с Фиг. 3 формируют из кадра данных Data FrameM суперкадр Super FrameX и после его формирования осуществляют его перемежение в перемеженный суперкадр Super Frame IntX с последующим разделением на суперкадровые блоки Super BlockT. Длина суперкадровых блоков Super BlockT определяется исходя из значения в поле SB SizeT кадра Transmit FrameT. При формировании суперкадра Super FrameX в него может быть включен служебный кадр Control Frame, содержащий информацию о параметрах протокола пакетной передачи данных, применяемого передающей стороной, и предназначенную для осуществления адаптивной настройки режимов работы приемной стороны. Формирование такого служебного кадра Control Frame изображено на Фиг. 5.

Далее на передающей стороне, в соответствии с Фиг. 4, для каждого суперкадрового блока Super BlockT формируют и передают приемной стороне передаточный кадр данных Transmit FrameT, который содержит: заголовок суперкадрового блока TF HeaderT передаточного кадра данных Transmit FrameT, который в свою очередь содержит информацию о версии протокола пакетной передачи данных Ver, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT, информацию о режимах работы такого протокола пакетной передачи данных Rev, длину служебного кадр CF Size, длину суперкадра SF SizeT, длину суперкадрвого блока SB SizeT, номер суперкадра Super Frame Num, в котором расположен данный суперкадровый блок Super BlockT, номер суперкадрового блока Super Block Num, расположенного внутри данного суперкадра, номер порядка отправки передающей стороной суперкадрового блока SCounter, информацию о режиме работы протокола пакетной передачи данных Heming, применяемого при передаче приемной стороне передаточного кадра данных Transmit FrameT. Заголовок суперкадрового блока TF HeaderT также содержит контрольную сумму заголовка, передаваемого суперкадрового блока TF HeaderT CRC и код исправления ошибок заголовка передаточного кадра данных TF ParityT, затем, после заголовка, передаваемого в передаточном кадре данных суперкадрового блока TF HeaderT добавляют суперкадровый блок Super BlockT. Перед заголовком суперкадрового блока TF HeaderT добавляют синхронизирующую последовательность передаточного кадра данных SYNC2, которая синхронизирует последовательность байт в передаточном кадре данных Transmit FrameT. Далее, сформированные по каждому суперкадровому блоку Super BlockT передаточные кадры данных Transmit FrameT, передают приемной стороне.

Процесс восстановления исходных данных из полученных приемной стороной передаточных кадров данных Transmit FrameT выполняют с точностью до наоборот. Из передаточных кадров данных Transmit FrameT расшифровывают и восстанавливают суперкадровые блоки Super BlockT, информация для расшифровки и восстановления суперкадровых блоков Super BlockT содержится в заголовоках суперкадровых блоках TF HeaderT, далее из суперкадровых блоков Super BlockT ормируют перемеженный суперкадр Super Frame IntX, затем осуществляют деперемежение перемеженного суперкадра Super Frame IntX в суперкадр Super FrameX. Из входящих в суперкадр Super FrameX кадров данных Data FrameM расшифровывают и восстанавливают блоки данных Data BlockN, информация для расшифровки и восстановления блоков данных Data BlockN содержится в заголовке кадра данных HeaderM. Затем расшифрованные и восстановленные блоки данных Data BlockN складывают в исходные данные.

Адаптивный режим работы протокола пакетной передачи данных, применяемого в заявленном способе при передаче приемной стороне передаточного кадра данных Transmit FrameT представляет собой изменение значения кодовой скорости исправления ошибок кадра данных CR, изменение значения длины блоков данных, входящих в кадр данных DL, изменения значения длины суперкадра Super FrameX. Адаптация протокола пакетной передачи данных осуществляется в случае наличия ошибок в канале связи путем оценки процента потерь пакетов путем изменения значений кодовой скорости исправления ошибок кадра данных CR, длины блоков данных, входящих в кадр данных DL, длины суперкадрового блока Super BlockX и длины суперкадра Super FrameX. При отсутствии ошибок данных в канале связи значения кодовой скорости исправления ошибок кадра данных CR равно нулю, коды исправления ошибок блока данных Data ParityN и перемежение суперкадра Super FrameX отключены.

Состояние канала связи анализируют приемной стороной с помощью проверки контрольных сумм заголовков, передаваемых суперкадровых блоков TF HeaderT CRC в режиме реального времени. Каждая группа параметров настройки протокола пакетной передачи данных, а именно значение кодовой скорости исправления ошибок кадра данных CR, длина блоков данных, входящих в кадр данных DL, длина суперкадрового блока SB SizeT и длина суперкадра Super FrameX, соответствует определенному проценту ошибок данных, которые приемная сторона может восстановить без перезапроса данных. Информация о соответствии значений кодовой скорости исправления ошибок кадра данных CR, значений длин блоков данных, входящих в кадр данных DL и значений длин суперкадра Super FrameX определенному проценту ошибок данных заложена в протокол пакетной передачи данных. Проценты ошибок данных разбиты на определенные интервалы. При приближении процента ошибок данных, полученных приемной стороной, к границам таких интервалов, приемная сторона отправляет передающей стороне служебный кадр Control Frame с новыми параметрами протокола пакетной передачи данных для адаптации такого протокола. Внутри этих интервалов вначале выбирают максимальные значения кодовой скорости исправления ошибок кадра данных CR и максимальные значения длин блоков данных, входящих в кадр данных DL. Если выбранные из интервала значения кодовой скорости исправления ошибок кадра данных CR и значения длин блоков данных, входящих в кадр данных DL не обеспечивают ожидаемое исправление имеющегося процента ошибок в полученных данных, то значение кодовой скорости исправления ошибок кадра данных CR и значение длин блоков данных, входящих в кадр данных DL уменьшают.

Приемная сторона через служебный кадр Control Frame также может сообщить передающей стороне как информацию о том, что передающей стороне нужно усилить защиту передаваемых исходных данных, так и информацию о том, что защиту передаваемых исходных данных передающей стороне можно ослабить. Чем слабее защита исходных данных, тем больше исходных данных на единицу передаваемой информации в суперкадре Super FrameX можно передать приемной стороне.

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

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

название год авторы номер документа
СПОСОБ ПЕРЕДАЧИ ДАННЫХ ПО АСИНХРОННЫМ СЕТЯМ СВЯЗИ С ВОЗМОЖНОСТЬЮ ВОССТАНОВЛЕНИЯ ДАННЫХ ПРИ ИХ ПОТЕРЕ ИЗ-ЗА НАЛИЧИЯ ОШИБОК СОЕДИНЕНИЯ В СЕТЯХ СВЯЗИ 2019
  • Ерченко Алексей Валерьевич
  • Ивченко Александр Владимирович
  • Синолиц Вадим Викторович
  • Дурыгин Виктор Валерианович
  • Воробьев Павел Сергеевич
  • Сухотеплый Александр Павлович
RU2711354C1
СПОСОБ ПАКЕТНОЙ ПЕРЕДАЧИ СООБЩЕНИЙ В СЕТЯХ СВЯЗИ С МНОГОМЕРНОЙ МАРШРУТИЗАЦИЕЙ 2006
  • Квашенников Владислав Валентинович
  • Солдатенко Эраст Николаевич
  • Шабанов Александр Константинович
RU2313187C1
ПЕРЕМЕННАЯ ДЛИНА БЛОКА ПАКЕТНЫХ ДАННЫХ УПРАВЛЕНИЯ ЛИНИИ РАДИОСВЯЗИ 2013
  • Ляо Минь
  • Видегрен Ина
  • Лунд Петер
  • Лармо Анна
  • Надаш Сильвестер
RU2642458C2
ПЕРЕМЕННАЯ ДЛИНА БЛОКА ПАКЕТНЫХ ДАННЫХ УПРАВЛЕНИЯ ЛИНИИ РАДИОСВЯЗИ 2013
  • Ляо Минь
  • Видегрен Ина
  • Лунд Петер
  • Лармо Анна
  • Надаш Сильвестер
RU2642820C2
СПОСОБ ОСУЩЕСТВЛЕНИЯ РАЗДЕЛЕНИЯ НА КАНАЛЫ В СЕТИ БЕСПРОВОДНОЙ СВЯЗИ (ВАРИАНТЫ) И ЦЕНТРАЛЬНАЯ СТАНЦИЯ, ИСПОЛЬЗУЕМАЯ В СИСТЕМЕ БЕСПРОВОДНОЙ СВЯЗИ 2010
  • Врзик Софии
  • Фонг Мо-Хан
  • Ю Донг-Шенг
  • Новак Роберт
  • Юань Чжун
RU2518085C2
ПЕРЕМЕННАЯ ДЛИНА БЛОКА ПАКЕТОВ ДАННЫХ УПРАВЛЕНИЯ ЛИНИИ РАДИОСВЯЗИ 2008
  • Ляо Минь
  • Видегрен Ина
  • Лунд Петер
  • Лармо Анна
  • Надаш Сильвестер
RU2504119C2
СПОСОБ ИМПУЛЬСНОЙ ПАКЕТНОЙ ПЕРЕДАЧИ ДАННЫХ В СЕТЯХ МОБИЛЬНОЙ СВЯЗИ ПЯТОГО ПОКОЛЕНИЯ 2018
  • Бахтин Александр Александрович
  • Волков Алексей Станиславович
  • Баскаков Александр Евгеньевич
  • Муратчаев Султансаид Султанханович
  • Солодков Алексей Викторович
RU2700561C1
ПЕРЕДАЧА ПАКЕТНЫХ ДАННЫХ В СИСТЕМЕ МОБИЛЬНОЙ СВЯЗИ 2001
  • Ким Мин-Гоо
  • Ха Санг-Хиук
RU2237977C2
УСТРОЙСТВО И СПОСОБ ТУРБОКОДИРОВАНИЯ/ДЕКОДИРОВАНИЯ ДЛЯ ОБРАБОТКИ ДАННЫХ КАДРА В СООТВЕТСТВИИ С КАЧЕСТВОМ ОБСЛУЖИВАНИЯ 1999
  • Парк Чанг Соо
  • Дзеонг Дзоонг Хо
  • Ли Хиеон Воо
RU2210185C2
СПОСОБ И УСТРОЙСТВО ДЛЯ ПЕРЕДАЧИ ПАРАМЕТРОВ ШИФРОВАНИЯ 2009
  • Чаудхари Дипендра М.
  • Белмонт Джон П.
  • Виатровски Дэвид Г.
RU2469485C1

Иллюстрации к изобретению RU 2 706 879 C1

Реферат патента 2019 года СПОСОБ ПЕРЕДАЧИ ДАННЫХ ПО ПАКЕТНЫМ СЕТЯМ СВЯЗИ С ВОЗМОЖНОСТЬЮ ВОССТАНОВЛЕНИЯ ДАННЫХ ПРИ ИХ ПОТЕРЕ ИЗ-ЗА НАЛИЧИЯ ОШИБОК СОЕДИНЕНИЯ В СЕТЯХ СВЯЗИ

Изобретение относится к способам передачи данных и может быть использовано в системах передачи данных по пакетным сетям связи. Технический результат заключается в обеспечении гарантированной передачи исходных данных по пакетным сетям связи с низкоскоростными каналами связи и/или низким качеством соединения каналов связи. В способе при передаче исходных данных, передаточный кадр данных, содержит в себе информацию, необходимую для адаптации протокола пакетной передачи данных, применяемого передающей стороной, под изменения состояния канала сети связи. При этом адаптивность обеспечивает исключение потерь исходных данных, что приводит к исключению перезапросов в связи с потерями исходных данных с приемной стороны. Вместо перезапроса исходных данных на приемной стороне восстанавливают поврежденные исходные данные с использованием информации об исходных данных, и информации о параметрах протокола пакетной передачи данных. 5 з.п. ф-лы, 5 ил.

Формула изобретения RU 2 706 879 C1

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

2. Способ по п. 1, отличающийся тем, что блоки данных имеют одинаковые длины.

3. Способ по п. 1, отличающийся тем, что суперкадровые блоки имеют одинаковые длины.

4. Способ по п. 1, отличающийся тем, что в качестве кода исправления ошибок используют код Рида-Соломона.

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

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

Документы, цитированные в отчете о поиске Патент 2019 года RU2706879C1

СПОСОБ И УСТРОЙСТВО ДЛЯ ПЕРЕДАЧИ И ПРИЕМА ПАКЕТА ДАННЫХ РАДИОСВЯЗИ 2000
  • Парк Донг-Сеек
  • Парк Дзеонг-Хоон
  • Ли Юнг-Лиул
  • Вилласенор Джон
  • Ли Адам Х.
RU2216861C2
СПОСОБ И УСТРОЙСТВО ДЛЯ ПЕРЕДАЧИ И ПРИЕМА ПАКЕТА ДАННЫХ РАДИОСВЯЗИ 2000
  • Парк Донг-Сеек
  • Парк Дзеонг-Хоон
  • Ли Юнг-Лиул
  • Вилласенор Джон
  • Ли Адам Х.
RU2219664C2
US 6529550 B2, 04.03.2003
СПОСОБ ПЕРЕДАЧИ ИНФОРМАЦИИ В РЕАЛЬНОМ ВРЕМЕНИ С ИСПОЛЬЗОВАНИЕМ ЛОКАЛЬНЫХ СЕТЕЙ ОГРАНИЧЕННОГО РАЗМЕРА НА БАЗЕ МОДИФИКАЦИИ ПРОТОКОЛА FC-AE-ASM 2013
  • Осипов Юрий Сергеевич
  • Першин Андрей Сергеевич
  • Пустовой Юрий Владимирович
RU2536659C1

RU 2 706 879 C1

Авторы

Ерченко Алексей Валерьевич

Ивченко Александр Владимирович

Синолиц Вадим Викторович

Дурыгин Виктор Валерианович

Воробьев Павел Сергеевич

Сухотеплый Александр Павлович

Даты

2019-11-21Публикация

2019-01-21Подача