СПОСОБ И УСТРОЙСТВО СЛЕЖЕНИЯ ЗА ПАКЕТАМИ ДАННЫХ В СИСТЕМЕ ПЕРЕДАЧИ ПАКЕТНЫХ ДАННЫХ Российский патент 2003 года по МПК H04L1/14 

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

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

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

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

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

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

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

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

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

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

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

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

Чтобы лучше разобраться в настоящем изобретении, следует обратиться к фиг. 1-3. На фиг.1 изображена блок-схема системы 100 передачи пакетных данных, отвечающей настоящему изобретению. Система передачи 100, предпочтительно, включает в себя базовую станцию 101, контроллер данных 103 и мобильный или переносной модуль связи 105. Базовая станция включает в себя передатчик 107 и приемник 109 и, предпочтительно, содержит базовый ретранслятор (БР) "iDEN", производства Моторола Инк. Контроллер данных 103 включает в себя считываемое компьютером запоминающее устройство 111 и базу данных слежения 113 и, предпочтительно, содержит связной процессор данных "Моторола" (ПДМ) "iDEN". Модуль связи 105 включает в себя передатчик (ПЕР) 115, приемник (ПР) 117, считываемое компьютером запоминающее устройство 119 и базу данных слежения 121. Модуль связи 105, предпочтительно, содержит мобильное или переносное дуплексное радио- или радиотелефонное устройство, например, мобильную или переносную радиостанцию "iDEN".

Передатчики 107, 115 и приемники 109, 117 базовой станции 101 и модуля связи 105 общеизвестны, поэтому дальнейшего их рассмотрения не предполагается. Что касается считываемых компьютером запоминающих устройств 111, 119, входящих в состав, соответственно, контроллера данных 103 и модуля связи 105, каждое из них, предпочтительно, содержит постоянное запоминающее устройство (ПЗУ), предназначенное для хранения компьютерной программы, и микропроцессор, предназначенный для выполнения хранимой компьютерной программы. Однако согласно альтернативному варианту реализации, каждое из запоминающих устройств 111, 119 может содержать другой носитель данных, считываемый компьютером, например, оперативное запоминающее устройство (ОЗУ), программируемое постоянное запоминающее устройство (ППЗУ), дискету, жесткий диск, плату памяти стандарта PCMCIA, логическую схему, носитель данных большой емкости, оптический диск, ПЗУ на компакт-диске, магнитный диск или цифровой универсальный диск (ЦУД). Согласно описанному ниже, компьютерные программы, хранимые и выполняемые запоминающими устройствами 111, 119, осуществляют большинство операций, выполняемых контроллером данных 103 и модулем связи 105 в соответствии с настоящим изобретением.

Система 100 передачи пакетных данных, согласно настоящему изобретению, действует, по существу, следующим образом. Когда передающему устройству связи (например, базовой станции 101 в совокупности с контроллером данных 103) нужно передать один или несколько пакетов данных в приемное устройство связи (например, модуль связи 105), передающее устройство запрашивает и получает канал радиосвязи 123, согласно известным способам выделения каналов. Согласно преимущественному варианту реализации, канал радиосвязи 123 содержит один или несколько внедиапазонных временных интервалов (от базовой станции к модулю связи), соответствующих назначенной внедиапазонной частоте несущей в системе связи множественного доступа с временным разделением каналов (МДВР), например, в системе дистанционной связи iDEN фирмы Моторола. Однако, согласно альтернативному варианту реализации, канал связи 123 может содержать внедиапазонную несущую частоту в системе связи множественного доступа с частотным разделением каналов (МДЧР) или ортогональный код (либо посредством последовательности для непосредственной модуляции несущей, либо посредством скачкообразной перестройки частоты) в системе связи множественного доступа с кодовым разделением каналов (МДКР).

Получив разрешение на пользование каналом, контроллер данных 103 отправляет пакет данных 130 на базовую станцию 101. Пакет данных 130 включает в себя порядковый номер (N(S)) 131 пакета и сопутствующие данные 133. Порядковый номер 131 пакета указывает местоположение пакета данных в порядке следования пакетов при передаче данных или сообщения, состоящих из множественных пакетов данных. Согласно фиг.1, пакет данных 130, предпочтительно, разбит на несколько блоков данных 127-129, что позволяет использовать один из нескольких известных протоколов селективного автоматического запроса повторения (САЗП). Согласно преимущественному варианту реализации, порядковый номер 131 пакета входит в состав пакета данных 130 в качестве первой части (например, первых семи бит второго байта) первого блока данных 127. Однако, согласно альтернативному варианту реализации, порядковый номер 131 пакета может располагаться в любом блоке данных пакета данных 130, поскольку такое размещение известно как передающему, так и приемному устройству связи.

После получения пакета данных 130 от контроллера данных базовая станция 101 задействует свой передатчик 107 для кодирования пакета данных 130 и передачи кодированного пакета данных в модуль связи 105 по выделенному каналу связи 123. Сразу после передачи пакета данных 130 базовая станция 101 посылает в контроллер данных 103 сообщение подтверждения передачи. Получив сообщение подтверждения, контроллер данных 103 увеличивает отслеживаемый номер передачи (V(S)), хранящийся в базе данных слежения 113, чтобы указать порядковый номер следующего пакета данных, подлежащего передаче. Например, после того, как базовая станция 101 подтвердила передачу пакета данных 130, имеющего порядковый номер 5 (т.е. N(S)=5), контроллер данных 103 увеличивает отслеживаемый номер передачи до шести (т.е. V(S)=6), указывая, что следующим в порядке передачи является пакет данных, имеющий порядковый номер шесть.

Хотя из вышеприведенного обсуждения следует, что передача пакета данных 130 базовой станцией 101 происходит сразу после получения пакета данных 130 от контроллера данных 103, следует заметить, что подобный сценарий является не правилом, а исключением. В действительности, базовая станция 101 может хранить пакет данных 130, полученный от контроллера данных 103 в течение достаточно длительного периода времени (например, десять секунд, если пакет данных является одним из последних пакетов сообщения, содержащего большое количество данных) прежде, чем передаст его. Подобные задержки происходят из-за того, что в системах совместной передачи речи и данных обработка вызовов для передачи речи имеет более высокий приоритет, чем обработка вызовов для передачи данных. Соответственно, главный аспект настоящего изобретения состоит в том, чтобы задержать увеличение отслеживаемого номера передачи до тех пор, пока базовая станция 101 не передаст пакет данных. Благодаря задержке увеличения отслеживаемого номера передачи до фактической радиопередачи предыдущего пакета данных, настоящее изобретение обеспечивает правильность отслеживаемого номера передачи. Напротив, если бы контроллер данных 103 увеличил отслеживаемый номер передачи после отправки пакета данных 130 на базовую станцию 101, отслеживаемый номер передачи не мог бы правильно отражать порядковый номер следующего пакета данных, подлежащего передаче.

Когда переданный пакет данных 130 поступает в модуль связи 105, модуль связи 105 задействует свой приемник 117 для приема и декодирования пакета данных 130. Модуль связи 105 извлекает порядковый номер 131 пакета и сравнивает порядковый номер 131 пакета с текущим значением отслеживаемого номера приема (N(R)), имеющимся в базе данных слежения 121 модуля связи. Отслеживаемый номер приема указывает порядковый номер следующего пакета данных, который модуль связи 105 ожидает получить. Если порядковый номер пакета равен текущему значению отслеживаемого номера приема, модуль связи 105 увеличивает отслеживаемый номер приема с целью распознавания порядкового номера следующего пакета данных, подлежащего приему. Например, если порядковый номер пакета, равный пяти, совпадает с отслеживаемым номером приема, модуль связи увеличивает отслеживаемый номер приема до шести.

Получив пакет данных 130 и сравнив порядковый номер пакета с отслеживаемым номером приема, модуль связи 105 задействует запоминающее устройство 119 для генерирования пакета данных подтверждения 140. Согласно преимущественному варианту реализации, пакет подтверждения 140 содержит совокупность блоков данных 135-137 и включает в себя обновленный отслеживаемый номер приема 139, данные 141 (например, новые данные по передаче единичных или множественных пакетных данных от модуля связи 105 на базовую станцию 101 или, в случае использования протокола САЗП, номера неполученных или поврежденных блоков данных ранее принятого пакета данных 130) и указатель целостности данных. Согласно преимущественному варианту реализации, указатель целостности данных содержит известную последовательность проверки кадра (ППК) 143, вычисленную по всему пакету подтверждения 140. Или же указатель целостности кадра может содержать известный циклический избыточный код (ЦИК), вычисленный по единичному блоку данных, в этом случае каждый блок данных 135-137 пакета подтверждения должен включать в себя указатель целостности данных.

Контроллер данных 103 использует ППК 143 для определения наличия или отсутствия повреждения пакета подтверждения 140, которое может произойти в процессе передачи. Однако поскольку на вычисление ППК 143 процессору требуется несколько миллисекунд, в течение которых на модуль связи 105 могут поступить дополнительные пакеты данных, запоминающее устройство 119 вставляет в часть определенного блока данных 135, зарезервированную под обновленный отслеживаемый номер приема, заданное значение (например, нуль или все нули) и вычисляет ППК 143 по пакету подтверждения, содержащему заданное значение. Согласно альтернативному варианту реализации, модуль связи 105 может вычислять ППК 143 по всему пакету подтверждения за исключением части, зарезервированной для отслеживаемого номера приема. Вычислив ППК 143, запоминающее устройство 119 вводит ППК 143 в зарезервированную часть блока данных 137 пакета подтверждения 140.

Сразу после вычисления ППК 143 модуль связи передает запрос на пользование каналом радиосвязи 125 и получает соответствующее разрешение. Тип запрашиваемого и выделяемого канала радиосвязи (например, временной интервал, несущая частота или ортогональный код), предпочтительно, соответствует типу канала радиосвязи 123, выделяемого базовой станции 101 для передачи пакета данных 130. Непосредственно перед передачей пакета подтверждения 140 (либо непосредственно перед запросом канала связи или после получения разрешения на пользование каналом, в зависимости от скорости процессора, применяемого в запоминающем устройстве 119), модуль связи 105 заменяет заданное значение, используемое для вычисления ППК 143, обновленным отслеживанием номером приема или, согласно вышеописанному альтернативному варианту реализации, вставляет отслеживаемый номер приема в зарезервированную для него часть блока данных 135. Благодаря тому, что отслеживаемый номер приема вставляется непосредственно перед передачей, настоящее изобретение позволяет учесть любые пакеты данных, принятые в процессе вычисления ППК 143 или за время ожидания доступа к каналу связи 125. Как только пакет подтверждения 140 полностью сформирован, модуль связи 105 задействует передатчик 115 для кодирования пакета подтверждения 140 и передачи кодированного пакета подтверждения на базовую станцию по каналу радиосвязи 125.

Когда переданный пакет подтверждения 140 поступает на базовую станцию 101, базовая станция 101 задействует приемник 109 для приема и декодирования пакета подтверждения 140. Согласно преимущественному варианту реализации, базовая станция 101 пересылает пакет подтверждения 140 в контроллер данных 103. Получив пакет подтверждения 140, контроллер данных 103 задействует запоминающее устройство 111 для собственного вычисления ППК пакета подтверждения 140 с целью определения наличия или отсутствия повреждения информации 139, 141, 143, содержащейся в пакете подтверждения 140, в процессе передачи. Вычисление ППК соответствует вычислению ППК 143, содержащейся в пакете подтверждения 140. Иными словами, если ППК 143 была вычислена в соответствии с преимущественным вариантом реализации (т.е. в качестве отслеживаемого номера приема 139 было введено заданное значение), то, производя собственное вычисление ППК, контроллер данных 103 сначала заменяет отслеживаемый номер приема 139 заданным значением, а затем вычисляет ППК. С другой стороны, если ППК 143 была вычислена в соответствии с альтернативным вариантом реализации (т. е. ППК 143 была вычислена по всему пакету подтверждения 140 за исключением части, зарезервированной под отслеживаемый номер приема 139), то, производя собственное вычисление ППК, контроллер данных 103 вычисляет ППК по всему пакету подтверждения 140 за исключением части, зарезервированной под отслеживаемый номер приема 139.

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

В случае успешного совпадения вычисленной ППК с вставленной ППК 143 контроллер данных 103 определяет наличие или отсутствие того факта, что отслеживаемый номер приема 139 больше текущего отслеживаемого номера передачи (V(S)). Если отслеживаемый номер приема 139 больше текущего отслеживаемого номера передачи, контроллер данных 103 определяет, что в какой-то момент передачи или приема пакета подтверждения 140 или пакета данных 130 произошла ошибка при обмене информацией. Ошибка при обмене информацией может содержать ошибку программного обеспечения в модуле связи 105, базовой станции 101 или контроллера данных 103. Ошибка при обмене информацией также может заключаться в повреждении значения отслеживаемого номера приема вследствие шумов и помех в канале радиосвязи 125. Если отслеживаемый номер приема 139 меньше или равен текущему отслеживаемому номеру передачи, контроллер данных 103 определяет отсутствие ошибок при обмене информацией и начинает подготовку к передаче пакета данных, имеющего порядковый номер пакета, эквивалентный отслеживаемому номеру приема 139.

Следует заметить, что вышеописанные методики применимы также и в обращенном варианте, т.е. когда передающим устройством связи является модуль связи 105 (в этом случае база данных отслеживания 121 используется для определения отслеживаемого номера передачи, V(S)), а приемным устройством связи является базовая станция 101 в совокупности с контроллером данных 103 (в этом случае база данных слежения 113 используется для определения отслеживаемого номера приема, N (R)). Кроме того, следует отметить, что, согласно альтернативному варианту реализации, считываемое компьютером запоминающее устройство 111 и база данных слежения 113 могут размещаться на базовой станции 101 в качестве запоминающего устройства 145 и базы данных 147. В этом случае базовая станция 101 будет одна выполнять рассмотренные выше функции как базовой станции 101, так и контроллера данных 103. Соответственно, предполагается, что термин "устройство связи" охватывает любое устройство (например, базовую станцию 101 или модуль связи 105) или совокупность устройств (например, базовой станции 101 и контроллера данных 103), которое(ая) включает в себя передатчик, приемник, считываемое компьютером запоминающее устройство и базу данных слежения, организованно, построено и запрограммировано для осуществления описанных здесь методик.

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

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

На фиг.2 изображена логическая блок-схема 200 операций, выполняемых передающим устройством связи, согласно настоящему изобретению. Логическая блок-схема начинается (201) с того, что передающее устройство передает (203) пакет данных на устройство назначения, предпочтительно, по каналу радиосвязи, причем пакет данных включает в себя порядковый номер пакета. Согласно рассмотренному выше, порядковый номер пакета указывает местоположение пакета данных в порядке следования пакетов, образующих определенный комплект данных или сообщение. Например, сообщение, содержащее данные и состоящее из 100 пакетов данных, может включать в себя пакеты данных, имеющие порядковые номера от 1 до 100. Таким образом, с помощью порядковых номеров пакетов устройство назначения может должным образом воссоздать сообщение, содержащее данные, из принятых пакетов данных.

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

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

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

Если вычисленный указатель целостности данных не равен вставленному указателю целостности данных, передающее устройство определяет (213) наличие повреждения пакета подтверждения и либо повторно передает пакет данных подтверждения, либо прерывает связь, тем самым завершая (215) последовательность операций. Если же вычисленный указатель целостности данных равен вставленному указателю целостности данных, передающее устройство определяет (217) наличие или отсутствие того факта, что отслеживаемый номер приема больше отслеживаемого номера передачи. Если отслеживаемый номер передачи больше отслеживаемого номера приема, то передающее устройство определяет (219) наличие ошибки при обмене информацией и прерывает передачу данных, тем самым завершая (215) последовательность операций. Согласно вышесказанному, ошибка при обмене информацией может содержать ошибку программного обеспечения либо в передающем устройстве, либо в приемном устройстве, или же повреждение значения отслеживаемого номера приема вследствие шума и помех в канале радиосвязи. Если отслеживаемый номер приема меньше или равен отслеживаемому номеру передачи, передающее устройство обрабатывает (221) пакет подтверждения (например, готовит пакет, распознаваемый по отслеживаемому номеру приема, для передачи и пересылает любые новые данные, содержащиеся в пакете подтверждения, на соответствующее устройство назначения) и завершает (215) последовательность операций.

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

На фиг. 3 изображена логическая блок-схема 300 операций, выполняемых приемным устройством связи, согласно настоящему изобретению. Логическая схема начинается (301) с того, что приемное устройство принимает (303) пакет данных от передающего устройства связи, причем пакет данных включает в себя порядковый номер пакета. Определив порядковый номер принимаемого в данный момент пакета данных, приемное устройство задает (305) отслеживаемый номер приема в своей базе данных для указания порядкового номера следующего пакета, подлежащего приему. Следующий пакет, подлежащий приему, может являться, но может и не являться следующим по порядку по отношению к последнему принятому пакету. Например, если уже были приняты пакеты 1, 2, 3 и 5 и последний принятый пакет данных (т.е. пакет данных, принятый при операции 303) имеет порядковый номер, равный 4, приемное устройство задает отслеживаемый номер приема, который указывает, что вслед за этим ожидается прием пакета, имеющего порядковый номер 6. Если же все предыдущие пакеты были приняты по порядку, приемное устройство задает отслеживаемый номер пакета, указывающий пакет, следующий по порядку.

Задав отслеживаемый номер приема, приемное устройство генерирует (307) пакет данных подтверждения, который содержит отслеживаемый номер приема и данные (например, новые данные или информацию САЗП). Прежде чем передать пакет подтверждения, приемное устройство вычисляет (309) указатель целостности данных пакета данных подтверждения. Согласно преимущественному варианту реализации, производится вычисление ППК по всем блокам данных пакета подтверждения. Согласно преимущественному варианту реализации, приемное устройство вводит в часть заданного блока данных пакета подтверждения, зарезервированную под отслеживаемый номер приема, заданное значение (например, нуль). Это значит, что приемное устройство вводит заданное значение в часть пакета подтверждения, который после передачи будет включать в себя отслеживаемый номер приема.

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

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

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

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

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

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

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

название год авторы номер документа
СИСТЕМА ОДНОВРЕМЕННОЙ ПЕРЕДАЧИ С ИСПОЛЬЗОВАНИЕМ АДАПТИВНОЙ ДЕМОДУЛЯЦИИ И СВЯЗНОЙ ПРИЕМНИК 1994
  • Пол Р.Кристиан
  • Казимир Карчевский
RU2115242C1
СПОСОБ И УСТРОЙСТВО ДЛЯ ПОДДЕРЖАНИЯ ИНФОРМАЦИИ О ПОДТВЕРЖДЕНИИ РАДИОСВЯЗИ ДЛЯ ОДНОНАПРАВЛЕННОГО КАНАЛА ПЕРЕДАЧИ ПОЛЬЗОВАТЕЛЬСКИХ ДАННЫХ 2001
  • Песен Марк Э.
  • Андерсен Нильс Петер Сков
  • Оттинг Марсиа
RU2256299C2
СПОСОБ И УСТРОЙСТВО ДЛЯ ВИРТУАЛЬНОГО ОДНОНАПРАВЛЕННОГО КАНАЛА 2003
  • Песен Марк Э.
  • Андерсен Нильс Петер Сков
  • Гоноровский Илья
  • Хауэлл Стефен
  • Шейнманн Арнольд
RU2364025C2
СПОСОБ МНОГОИНТЕРВАЛЬНОЙ ПЕРЕДАЧИ ПАКЕТНЫХ ДАННЫХ 2007
  • Дюбрель Жюльен
  • Бюве Сирил
  • Марко Оливье
RU2447588C2
СПОСОБ ДОСТАВКИ СООБЩЕНИЙ, СИСТЕМА СВЯЗИ И ПОРТАТИВНЫЙ ПРИЕМНИК СЕЛЕКТИВНОГО ВЫЗОВА ДЛЯ ОСУЩЕСТВЛЕНИЯ СПОСОБА 1993
  • Джон Ричард Кейн
  • Роберт Джон Швендеман
  • Джеймс А.Райт
RU2115255C1
СПОСОБ И УСТРОЙСТВО СИНХРОНИЗАЦИИ ПЕРЕДАЧИ ПАКЕТОВ В СИСТЕМАХ СВЯЗИ 1995
  • Джино Энтони Скрибано
  • Ли Майкл Проктор
  • Квок Винх Нгуйен
RU2146420C1
СПОСОБ И УСТРОЙСТВО УМЕНЬШЕНИЯ ВОЗДЕЙСТВИЯ ПЕРЕВЫБОРА ЯЧЕЙКИ НА СКОРОСТЬ ПЕРЕДАЧИ ДАННЫХ ПО ТЕХНОЛОГИИ GPRS/EDGE 2002
  • Оттинг Марсиа Джин
  • Песен Марк Эдвард
  • Хауэлл Стефен Эндрю
RU2251806C2
ВЕДУЩЕЕ УСТРОЙСТВО ДАННЫХ, ВЕДОМОЕ УСТРОЙСТВО ДАННЫХ, СПОСОБ УПРАВЛЕНИЯ ДОСТУПОМ К ШИНЕ ПЕРЕДАЧИ ДАННЫХ, СПОСОБ ПОЛУЧЕНИЯ ДОСТУПА К ШИНЕ ДАННЫХ 1991
  • Грегори П. Вильсон[Us]
  • Брайан А.Потрац[Us]
  • Томас Дж.Волзак[Us]
  • Джеффри Л.Маллинз[Us]
  • Марк Е.Прилл[Us]
RU2105422C1
СПОСОБ И УСТРОЙСТВО ДЛЯ ПЕРЕДАЧИ СООБЩЕНИЙ ПОРТАТИВНЫМ СРЕДСТВАМ СВЯЗИ В СИСТЕМЕ РАДИОСВЯЗИ 1994
  • Флойд Симпсон[Us]
  • Дэвид Фрэнк Виллард[Us]
  • Жан Чен Хуанг[Us]
RU2111628C1
ИНИЦИИРОВАНИЕ СООБЩЕНИЯ СТАТУСА В БЕСПРОВОДНОЙ СИСТЕМЕ СВЯЗИ 2008
  • Кучибхотла Рави
  • Рао Сатианараяна Б.
  • Сунь Ишэнь
RU2460214C2

Иллюстрации к изобретению RU 2 205 515 C2

Реферат патента 2003 года СПОСОБ И УСТРОЙСТВО СЛЕЖЕНИЯ ЗА ПАКЕТАМИ ДАННЫХ В СИСТЕМЕ ПЕРЕДАЧИ ПАКЕТНЫХ ДАННЫХ

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

Формула изобретения RU 2 205 515 C2

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

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

US 4525267 A, 02.07.1985
Способ радиосвязи с подвижными объектами в системе связи сотовой структуры 1989
  • Шорин Олег Александрович
  • Пантикян Рубен Тигранович
SU1626412A1
US 4617657 A, 14.10.1986
US 4970714 A, 13.11.1990
US 5245616 A, 14.09.1993.

RU 2 205 515 C2

Авторы

Брэйлин Карен А.

Боксалл Роберт Ф.

Даты

2003-05-27Публикация

1998-06-26Подача