Способ и устройство для продвинутого управления буфером arq в беспроводной системе связи

Иллюстрации

Показать все

Изобретение относится к автоматическим запросам на повторение (ARQ)в беспроводных системах связи. Технический результат заключается в предотвращении переполнения буфера ARQ. Предложены передатчик автоматического запроса на повторение (ARQ) для использования в беспроводной системе связи и способ для управления им. Данный способ включает в себя этапы, на которых определяют неиспользованную емкость буфера приемника ARQ в приемнике ARQ посредством вычитания суммированного объема использования буфера приемника ARQ из максимального размера буфера приемника ARQ, определяют, что буфер приемника ARQ может поддерживать блок ARQ, назначенный к передаче, если размер блока ARQ, назначенного к передаче, не превышает определенную неиспользованную емкость буфера приемника ARQ и если определено, что буфер приемника ARQ может поддерживать блок ARQ, назначенный к передаче, передают блок ARQ на приемник ARQ, причем определение неиспользованной емкости буфера приемника ARQ в приемнике ARQ содержит этап, на котором: определяют блоки ARQ в качестве использующих буфер приемника ARQ для любых блоков ARQ в пределах окна передачи ARQ, а также для любых блоков ARQ вне окна передачи ARQ, которые являются частью того же самого сервисного блока данных (SDU) управления доступом к среде (MAC), как и первый блок ARQ в пределах окна передачи ARQ. 2 н. и 22 з.п. ф-лы, 12 ил.

Реферат

Область техники, к которой относится изобретение

[1] Аспекты настоящего изобретения относятся к автоматическому запросу на повторение (ARQ) в беспроводной системе связи. Более конкретно, аспекты настоящего изобретения относятся к способу и устройству для продвинутого управления буфером ARQ в беспроводной системе связи.

Предшествующий уровень техники

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

[3] При использовании схемы ARQ приемник ARQ информирует передатчик ARQ о том, является ли блок данных ARQ (далее в настоящем документе рассматриваемый как блок ARQ) успешно принятым от передатчика ARQ. Например, когда блок ARQ, принятый от передатчика ARQ, не содержит ошибки, приемник ARQ передает подтверждение (ACK) на передатчик ARQ. Когда блок ARQ, принятый от передатчика ARQ, является поврежденным, приемник ARQ передает отрицательное подтверждение ACK (NACK) на передатчик ARQ. В настоящем документе последовательность операций приемника ARQ для передачи успеха или неуспеха приема блока ARQ на передатчик ARQ рассматривается как обратная передача ARQ.

[4] В соответствии с этим передатчик ARQ может получать состояние приема блока ARQ, переданного на приемник ARQ, на основе ACK/NACK, принятого от приемника ARQ. При приеме ACK от приемника ARQ передатчик ARQ передает на приемник ARQ новый блок ARQ. В противоположность этому при приеме информации NACK от приемника ARQ передатчик ARQ повторно передает на приемник ARQ блок ARQ, соответствующий NACK.

[5] Схема ARQ может осуществляться различным образом для различных стандартов беспроводной связи. Ниже со ссылкой на фиг.1 описывается пример схемы передачи ARQ, используемой в стандартах Института инженеров по электротехнике и электронике (IEEE) 802.16e и IEEE 802.16m.

[6] Фиг.1 иллюстрирует машину состояний передатчика ARQ для блока ARQ в соответствии с предшествующим уровнем техники.

[7] Касательно фиг.1 связь блока ARQ может находиться в одном из пяти состояний, а именно в состоянии 110 «Не отправлено», в состоянии 120 «Ожидание выполнения», в состоянии 130 «Сброшено», в состоянии 140 «Ожидание повторной передачи» и в состоянии 150 «Выполнено». Каждое задействованное соединение ARQ имеет независимую машину состояний ARQ. Минимальным блоком перехода состояний ARQ является блок ARQ. Блок ARQ начинается в состоянии 110 «Не отправлено» до того, как данный блок ARQ изначально передается.

[8] Когда блок ARQ передается, для блока ARQ инициируется таймер ARQ_BLOCK_LIFETIME (ВРЕМЕНИ_ЖИЗНИ_БЛОКА_ARQ), и состояние блока ARQ переходит от состояния 110 «Не отправлено» к состоянию 120 «Ожидание выполнения» на этапе 112. Когда это происходит, параметр ARQ_TX_NEXT_SN (СЛЕДУЮЩЕГО_SN_ПЕРЕДАЧИ_ARQ) приращивается на единицу.

[9] В то время как блок ARQ находится в состоянии 120 «Ожидание выполнения», передатчик ARQ ожидает одно из: подтверждения ACK и отрицательного подтверждения NACK от соответствующего приемника ARQ. Если приходит ACK, состояние блока ARQ переходит к состоянию 150 «Выполнено» на этапе 125. Если приходит NACK, состояние блока ARQ переходит к состоянию 140 «Ожидание повторной передачи» на этапе 124. После того как период ARQ_BLOCK_LIFETIME истекает, состояние блока ARQ переходит к состоянию 130 «Сброшено» на этапе 123.

[10] В то время как блок ARQ находится в состоянии 140 «Ожидание повторной передачи», передатчик ARQ подготавливается для повторной передачи данных ARQ, соответствующих блоку ARQ. Если приходит ACK, состояние блока ARQ переходит к состоянию 150 «Выполнено» на этапе 145. Если данные ARQ, соответствующие блоку ARQ, передаются повторно, состояние блока ARQ переходит обратно к состоянию 120 «Ожидание выполнения» на этапе 142. После того как таймер ARQ_BLOCK_LIFETIME истекает, состояние блока ARQ переходит к состоянию 130 «Сброшено» на этапе 143 без осуществления повторной передачи.

[11] В то время как блок ARQ находится в состоянии 130 «Сброшено», передатчик ARQ отправляет сообщение сброса и ожидает ACK от приемника ARQ. Если приходит ACK для сообщения сброса или блок ARQ, состояние блока ARQ переходит к состоянию 150 «Выполнено» на этапе l35.

[12] Когда блок ARQ находится в состоянии 150 «Выполнено», передатчик ARQ завершает работу ARQ посредством стирания всех таймеров и переменных состояний ARQ, относящихся к блоку ARQ.

[13] Каждый передатчик ARQ поддерживает окно передачи ARQ с помощью двух параметров, а именно параметра ARQ_TX_WINDOW_START (НАЧАЛА_ОКНА_ПЕРЕДАЧИ_ARQ) и параметра ARQ_TX_NEXT_SN. Машина состояний ARQ рассматривает все блоки ARQ вплоть до ARQ_TX_WINDOW_START - 1 как подтверждающиеся соответствующим приемником ARQ. Параметр ARQ_TX_WINDOW_START представляет нижнюю границу окна ARQ в передатчике ARQ. Когда соответствующий блок ARQ параметра ARQ_TX_WINDOW_START в машине состояний ARQ переходит к состоянию 150 «Выполнено», параметр ARQ_TX_WINDOW_START перемещается к следующему наиболее низкому порядковому номеру (SN) ARQ, не подтвержденному приемником ARQ. Параметр ARQ_TX_NEXT_SN соответствует наиболее низкому SN, представляющему собой следующий блок ARQ, назначенный к отправке посредством передатчика ARQ. Параметр ARQ_TX_NEXT_SN будет находиться в пределах интервала от ARQ_TX_WINDOW_START до ARQ_TX_WINDOW_START + ARQ_WINDOW_SIZE (РАЗМЕР_ОКНА_ARQ).

[14] Каждый приемник ARQ поддерживает окно приема ARQ с помощью двух параметров, а именно параметра ARQ_RX_WINDOW_START (НАЧАЛА_ОКНА_ПРИЕМА_ARQ) и параметра ARQ_RX_HIGHEST_SN (НАИБОЛЕЕ_ВЫСОКОГО_SN_ПРИЕМА_ARQ). Машина состояний ARQ рассматривает все блоки ARQ вплоть до ARQ_RX_WINDOW_START - 1 как принимающиеся. Параметр ARQ_RX_WINDOW_START представляет нижнюю границу окна ARQ в приемнике ARQ. Когда соответствующий блок ARQ_RX_WINDOW_START принимается правильно или после истечения таймера ARQ_RX_PURGE_TIMEOUT (ВРЕМЕНИ_ОЖИДАНИЯ_СБРОСА_ПРИЕМА_ARQ), ARQ_RX_WINDOW_START перемещается к следующему наиболее низкому SN ARQ, не являющемуся принятым.

[15] Параметр ARQ_RX_HIGHEST_SN соответствует наиболее высокому SN ARQ принятого блока ARQ, плюс один. Параметр ARQ_RX_HIGHEST_SN будет находиться в пределах интервала от ARQ_RX_WINDOW_START до ARQ_RX_WINDOW_START + ARQ_WINDOW_SIZE.

[16] Ниже со ссылкой на фиг.2 описывается пример схемы приема ARQ, используемой в стандартах IEEE 802.16e и IEEE 802.16m.

[17] Фиг.2 иллюстрирует блок-схему последовательности операций для приема блока ARQ в соответствии с предшествующим уровнем техники.

[18] Касательно фиг.2, когда на этапе 202 принимают блок пакетных данных (PDU) управления доступом к среде (MAC), приемник ARQ проверяет расширенный заголовок фрагментации и упаковывания (FPEH) и получает информацию блока ARQ для приема ARQ. После того как приемник ARQ знает SN ARQ и соответствующий блок ARQ, машина состояний приемника ARQ на этапе 204 добавляет данный SN к списку номеров SN, назначенных к подтверждению. Машина состояний приемника ARQ проверяет допустимость SN посредством определения на этапе 206, попадает ли SN в пределы диапазона окна приемника ARQ (то есть от ARQ_RX_WINDOW_START до ARQ_RX_WINDOW_START + ARQ_WINDOW_SIZE). Если блок ARQ не является допустимым (то есть блок ARQ не находится в пределах диапазона окна приемника ARQ), на этапе 208 приемник сбрасывает блок ARQ.

[19] Если SN ARQ является допустимым (то есть блок ARQ находится в пределах диапазона окна приемника ARQ), на этапе 210 определяют, является ли соответствующий блок ARQ уже принятым. Если определяется, что блок ARQ является уже принятым, машина состояний приемника ARQ на этапе 212 повторно устанавливает таймер ARQ_RX_PURGE_TIMEOUT и на этапе 208 сбрасывает блок ARQ. В данном случае соответствующий блок ARQ сбрасывается, поскольку он является дублирующим блоком, который не должен сохраняться в буфере. Однако если определяется, что блок ARQ не является дублированным, машина состояний приемника ARQ начинает процедуру с целью обновления переменных состояний ARQ и соответствующих таймеров на этапах 214-224 и сохранения блока ARQ в буфере на этапе 226.

[20] Более конкретно, если определяется, что блок ARQ не является дублированным, на этапе 214 определяется, является ли SN большим, чем или равным ARQ_RX_HIGHEST_SN. Если определяется, что SN является меньшим, чем ARQ_RX_HIGHEST_SN, процедура переходит к этапу 218. Однако если определяется, что SN является большим, чем или равным ARQ_RX_HIGHEST_SN, приемник ARQ на этапе 216 обновляет ARQ_RX_HIGHEST_SN как SN+1 и переходит к этапу 218.

[21] На этапе 218 определяется, является ли SN равным ARQ_RX_WINDOW_START. Если определяется, что SN является равным ARQ_RX_WINDOW_START, на этапе 220 ARQ_RX_WINDOW_START продвигается к следующему блоку ARQ с наиболее низким номером, который не был принят, на этапе 222 повторно устанавливается ARQ_SYNC_LOSS_TIMEOUT (ВРЕМЯ_ОЖИДАНИЯ_ПОТЕРИ_СИНХРОНИЗАЦИИ_ARQ), и на этапе 226 блок ARQ сохраняется. Однако если определяется, что SN не является равным ARQ_RX_WINDOW_START, приемник ARQ маркирует блок как принятый и повторно устанавливает таймер ARQ_RX_PURGE_TIMEOUT для этого SN на этапе 224. Блок ARQ затем сохраняется на этапе 226.

[22] Приемник ARQ осуществляет обратную передачу ARQ с использованием элемента информации (IE) обратной передачи ARQ с целью обновления состояния приема блока ARQ, когда от передатчика ARQ принимается опрос обратной передачи ARQ, или когда блок ARQ отсутствует в течение количества времени, соответствующего DELIVERY_IN_ORDER_TIMEROUT (ВРЕМНИ_ОЖИДАНИЯ_УПОРЯДОЧЕННОЙ_ДОСТАВКИ).

[23] Когда передатчик ARQ принимает IE обратной передачи ARQ, не включающий в себя селективную карту ACK, передатчик ARQ рассматривает все блоки ARQ в интервале ARQ_TX_WINDOW_START до SN (включительно) как подтвержденные и устанавливает ARQ_TX_WINDOW_START на SN+1. Когда IE обратной передачи ARQ включает в себя селективную карту ACK, передатчик ARQ рассматривает все блоки ARQ в интервале ARQ_TX_WINDOW_START до SN (не включая) как подтвержденные и устанавливает ARQ_TX_WINDOW_START на SN. Старший бит (MSB) селективной карты ACK обозначает SN в IE обратной передачи ARQ, который будет начинаться с NACK, а смежные биты в селективной карте ACK могут маркироваться как ACK или NACK. Передатчик ARQ рассматривает только допустимые подтверждения ACK в пределах окна ARQ (то есть ARQ_TX_WINDOW_START + ARQ_WINDOW_SIZE). Подтверждения ACK вне окна ARQ передатчиком ARQ игнорируются.

[24] Когда от передатчика ARQ принимается сообщение сброса, приемник ARQ отправляет ACK на передатчик ARQ и сбрасывает соответствующие блоки в сообщении сброса. ARQ_RX_WINDOW_START передвигается к следующему наиболее низкому SN блока ARQ, еще не принятому в пределах окна приема ARQ.

[25] Сервисные блоки данных (SDU) MAC реконструируются из блоков ARQ в последовательности. Когда принимается новый блок ARQ, приемник ARQ проверяет, может ли быть реконструирован полный SDU. Если полный SDU может быть реконструирован, он затем передается на верхний уровень, в противном случае блок ARQ буферизируется, и приемник ARQ ожидает другие блоки ARQ с тем, чтобы осуществить реконструкцию SDU. Когда блок ARQ пропускается, блоки ARQ, относящиеся к реконструкции SDU, очищаются из буфера.

[26] Как IEEE 802.16e, так и IEEE 802.16m при формировании PDU поддерживают упаковывание блоков SDU, а также фрагментацию и повторную сборку. В данном случае стандартом IEEE 802.16e и стандартом IEEE 802.16m поддерживаются как блоки SDU переменной длины, так и блоки SDU фиксированной длины. Более конкретно, стандарт IEEE 802.16e определяет подзаголовок фрагментации (Fragmentation SubHeader, FSH) и подзаголовок упаковывания (Packing SubHeader, PSH) для поддержания блоков SDU переменной длины, примеры форматов которых продемонстрированы ниже в соответственно Таблице 1 и Таблице 2.

[27] Таблица 1

Таблица 1
Синтаксис Размер (бит) Комментарии
Packing Subheader (){ - -
FC 2 Обозначает состояние фрагментации полезной нагрузки: 00=отсутствие фрагментации 01=последняя фрагментация 10=первый фрагмент 11=продолжающийся (средний) фрагмент.
if (ARQ-задействованное соединение) - -
BSN 11 Порядковый номер первого блока в текущем фрагменте SDU.
else { - -
if (тип бита расширенный тип) - -
FSN 11 Порядковый номер текущего фрагмента SDU. Значение FSN будет приращено на единицу (по модулю 2048) для каждого фрагмента, включая нефрагментированные блоки SDU и неупакованные SDU или фрагменты SDU.
else - -
FSN 3 Порядковый номер текущего фрагмента SDU. Значение FSN будет приращено на единицу (по модулю 8) для каждого фрагмента, включая нефрагментированные блоки SDU и неупакованные SDU или фрагменты SDU.
} - -
Length 11 Длина фрагмента SDU в байтах, включая PSH.
} - -

[28] Таблица 2

Таблица 2
Синтаксис Размер (бит) Комментарии
Packing Subheader (){ - -
FC 2 Обозначает состояние фрагментации полезной нагрузки: 00=отсутствие фрагментации 01=последняя фрагментация 10=первый фрагмент 11=продолжающийся (средний) фрагмент.
if (ARQ-задействованное соединение) - -
BSN 11 Порядковый номер первого блока в текущем фрагменте SDU.
else { - -
if (тип бита расширенный тип) - -
FSN 11 Порядковый номер текущего фрагмента SDU. Значение FSN будет приращено на единицу (по модулю 2048) для каждого фрагмента, включая нефрагментированные блоки SDU и неупакованные SDU или фрагменты SDU.
else - -
FSN 3 Порядковый номер текущего фрагмента SDU. Значение FSN будет приращено на единицу (по модулю 8) для каждого фрагмента, включая нефрагментированные блоки SDU и неупакованные SDU или фрагменты SDU.
} - -
Reserved 3 Shall be set to zero.
} - -

[29] Касательно Таблицы 1 и Таблицы 2 FSH является по существу таким же самым, как PSH, кроме того, что 11-битовое поле «Length» заменяется 3-битовым полем «Reserved». FSH используется, когда полезная нагрузка в блоке PDU MAC включает в себя только однофрагментный блок SDU. Это происходит постольку, поскольку отсутствует необходимость наличия поля «Length», поскольку основной заголовок MAC уже имеет поле длины. Ниже со ссылкой на фиг.3 описывается пример блоков SDU переменной длины, упакованных в блоки PDU MAC, включающих в себя подзаголовки FSH и подзаголовки PSH на основе стандарта IEEE 802.16e.

[30] FIG. 3 иллюстрирует блоки SDU переменной длины, упакованные в блоки PDU MAC, включающие в себя подзаголовки FSH и подзаголовки PSH в соответствии с предшествующим уровнем техники.

[31] Касательно фиг.3 продемонстрировано r блоков SDU 302 MAC, s-r+1 блоков PDU 304 MAC, а также t блоков SDU 306 MAC. Каждый из s-r+1 блоков PDU 304 MAC имеет только один фрагмент SDU, и, таким образом, каждый SDU начинается одним FSH. В противоположность этому r блоков SDU 302 MAC и t блоков SDU 306 MAC каждый являются включенными в один блок PDU MAC, включающий в себя нефрагментированные блоки SDU и фрагменты SDU, и вследствие этого каждый SDU или фрагмент SDU начинается с PSH.

[32] Приемник ARQ собирает блоки PDU MAC в порядке FSN и использует 2-битовое поле управления фрагментами (FC) для разделения блоков PDU на группы и формирования блоков SDU. Блок SDU может быть сформирован из только одного сегмента данных с FC «00». В противном случае блок SDU формируется, начиная с одного фрагмента с FC «10», с нулевым или большим количеством фрагментов с FC «11», и заканчиваясь одним фрагментом с FC «01».

[33] Ниже со ссылкой на фиг.4 описывается пример упаковывания блоков SDU фиксированной длины в блок PDU MAC на основе стандарта IEEE 802.16e.

[34] FIG. 4 иллюстрирует блоки SDU MAC фиксированной длины, упакованные в один блок PDU MAC в соответствии с предшествующим уровнем техники.

[35] Касательно фиг.4 k блоков SDU MAC фиксированной длины упаковываются в один блок PDU MAC, где один после другого упаковывается целое число блоков SDU. Учитывая длину всего блока PDU MAC, число упакованных блоков SDU является равным длине блока PDU MAC минус заголовок MAC, разделенной на предварительно определенную длину SDU.

[36] Еще одна другая схема ARQ в соответствии с предшествующим уровнем техники обнаруживается в сети наземного радиодоступа (E-UTRAN) усовершенствованной универсальной системы мобильной связи (UMTS) проекта партнерства третьего поколения (3GPP), известной также под названием «Долгосрочное развитие» (LTE). Ниже со ссылкой на фиг.5 описывается пример структуры блока PDU управления радиоканалами (RLC).

[37] FIG. 5 иллюстрирует структуру PDU RLC в соответствии с предшествующим уровнем техники.

[38] Касательно фиг. 5 продемонстрированы блоки SDU переменной длины, из которых формируются блоки PDU переменной длины. Блок PDU LTE (например, блок PDU k RLC) может состоять из нулевого количества или одного из последнего фрагмента предыдущего SDU (n), нулевого или большего количества отдельных SDU (например, n+1 и n+2) и нулевого количества или одного из первого фрагмента следующего SDU (например, n+3). В качестве альтернативы блок PDU (например, блок PDU RLC) может состоять из только одного фрагмента в середине блока SDU (например, n+3).

[39] В данном случае вместо использования одного поля FC для каждого PSH, как это используется стандартами IEEE 802.16e и IEEE 802.16m, протокол RLC, используемый стандартом LTE, использует поле информации формирования кадров (FI). Если все блоки PDU приходят на приемник ARQ успешно, приемник ARQ может организовывать данные блоки PDU в порядке SN и находить начальную и конечную точки каждого SDU посредством проверки полей FI. Поле FI представляет собой 2-битовое поле, обозначающее, является ли блок SDU RLC сегментированным в начале и/или в конце поля данных. Более конкретно, поле FI обозначает, соответствует ли первый байт поля данных первому байту блока SDU RLC и соответствует ли последний байт поля данных последнему байту блока SDU RLC. Интерпретация поля FI приведена ниже в Таблице 3.

[40] Таблица 3

Таблица 3
Значение Описание
00 Первый байт поля данных соответствует первому байту блока SDU RLC. Последний байт поля данных соответствует последнему байту блока SDU RLC.
01 Первый байт поля данных соответствует первому байту блока SDU RLC. Последний байт поля данных не соответствует последнему байту блока SDU RLC.
10 Первый байт поля данных не соответствует первому байту блока SDU RLC. Последний байт поля данных соответствует последнему байту блока SDU RLC.
11 Первый байт поля данных не соответствует первому байту блока SDU RLC. Последний байт поля данных не соответствует последнему байту блока SDU RLC.

[41] Ниже со ссылкой на фиг.6 описывается пример данных в режиме без подтверждения (UMD).

[42] Фиг.6 иллюстрирует блок PDU UMD в соответствии с предшествующим уровнем техники.

[43] Касательно фиг. 6 продемонстрирован блок PDU UMD с 5-битовым SN. В данном случае блок PDU UMD имеет нечетное число полей индикатора длины (LI) (то есть K=1, 3, 5, и так далее). Поля LI обозначают длину в байтах соответствующего элемента поля данных, присутствующего в блоке PDU данных RLC, доставляемого/принимаемого посредством модуля в режиме без подтверждения (UM) или модуля RLC в режиме с подтверждением (AM). Первый LI, присутствующий в заголовке блока PDU данных RLC, соответствует первому элементу поля данных, присутствующему в поле данных блока PDU данных RLC, второй LI, присутствующий в заголовке блока PDU данных RLC, соответствует второму элементу поля данных, присутствующему в поле данных блока PDU данных RLC, и так далее. Значение 0 для поля LI является зарезервированным.

[44] Поле SN составляет 10 битов для блока PDU данных в режиме с подтверждением (AMD), сегментов блока PDU AMD и блоков PDU состояния и составляет 5 битов или 10 битов (является конфигурируемым) для блока PDU UMD. Поле SN обозначает порядковый номер соответствующего блока PDU UMD или блока PDU AMD. Для сегмента блока PDU AMD поле SN обозначает порядковый номер исходного блока PDU AMD, из которого был сконструирован сегмент блока PDU AMD.

[45] Поле бита расширения (E) представляет собой однобитовое поле. Поле E обозначает, следует ли далее поле данных или далее следует набор из поля E и поля LI.

[46] Операция ARQ, используемая стандартом LTE, известная как режим AM с подтверждением (AM), использует параметры, отличные от тех, которые используются стандартами IEEE 802.16e и IEEE 802.16m. Более конкретно, передатчик ARQ использует окно передачи, имеющее три параметра, а именно VT(A), VT(MS) и VT(S).

[47] VT(A) представляет собой переменную состояния, которая удерживает значение SN следующего блока PDU AMD, для которого последовательно должно быть получено подтверждение ACK, и которая служит в качестве нижней границы окна передачи. VT(A) обновляется каждый раз, когда модуль RLC в режиме AM принимает подтверждение ACK для блока PDU AMD с SN=VT(A).

[48] VT(MS) представляет собой переменную состояния, равную VT(A) + AM_Window_Size (Размер_Окна_AM) и служащую в качестве верхней границы окна передачи.

[49] VT(S) представляет собой переменную состояния, удерживающую значение SN, которое должно быть назначено для следующего вновь сгенерированного блока PDU AMD. VT(S) обновляется каждый раз, когда модуль RLC в режиме AM доставляет блок PDU AMD с SN=VT(S).

[50] Приемник ARQ использует окно приема, имеющее пять параметров, а именно VR(R), VR(MR), VR(H), VR(MS), и VR(X).

[51] VR(R) представляет собой переменную состояния, которая удерживает значение SN, следующее за последним последовательно и полностью принятым блоком PDU AMD, и которая служит в качестве нижней границы окна приема. VR(R) обновляется каждый раз, когда модуль RLC в режиме AM принимает блок PDU AMD с SN=VR(R).

[52] VR(MR) представляет собой переменную состояния, равную VR(R) + AM_Window_Size, удерживающую значение SN первого блока PDU AMD сверх окна приема и служащую в качестве верхней границы окна приема.

[53] VR(H) представляет собой переменную состояния, которая удерживает значение SN, следующее за SN блока PDU данных RLC с наиболее высоким SN среди принятых блоков PDU данных RLC.

[54] VR(MS) представляет собой переменную состояния, удерживающую наиболее высокое возможное значение SN, которое может быть обозначено посредством «ACK_SN», когда необходимо конструирование блока PDU статуса.

[55] VR(X) представляет собой переменную состояния, которая удерживает значение SN, следующее за SN блока PDU данных RLC, инициировавшего T_reordering (Повторное_упорядочение_T).

[56] Резюмируя, стандарты IEEE 802.16e, IEEE 802.16m и LTE предоставляют передатчику ARQ возможность фрагментации пакетов, поступающих из более высокого уровня, с целью формирования блока SDU. Фрагментация обозначается посредством поля «FC» в стандартах IEEE 802.16e и IEEE 802.16m (см. Таблицы 1 и 2), а также поля «FI» в стандарте LTE (см. Таблицу 3). Вследствие этого, когда приемник ARQ принял блок ARQ с SN, равным нижней границе окна приема ARQ (то есть ARQ_RX_WINDOW_START в IEEE 802.16e и IEEE 802.16m, и VR(R) в LTE), приемник ARQ осуществит продвижение окна приема и передачу ACK на передатчик ARQ. Однако это не обязательно означает, что приемник ARQ может удалить этот блок ARQ из буфера приема и доставить его на более высокий уровень, поскольку сначала должен быть сформирован полный блок SDU.

[57] Например, рассмотрим сценарий на фиг.5. Здесь блок PDU k-1 RLC не может быть удален из буфера приема до тех пор, пока также не прибыл блок PDU k RLC, поскольку блок SDU n RLC не может быть реконструирован посредством самого блока PDU k-1 RLC. Аналогичным образом блок PDU k+1 RLC не может быть удален из буфера приема до тех пор, пока также не прибыли оба блока PDU k RLC и PDU k+2 RLC, поскольку блок SDU n+3 RLC не может быть реконструирован посредством самого блока PDU k+1 RLC. Таким образом, блок PDU k+1 RLC будет вынужден ожидать большего количества блоков PDU RLC прежде, чем быть удаленным из буфера приема ARQ и быть доставленным на более высокий уровень, в зависимости от того, как был фрагментирован блок SDU n+3 RLC.

[58] В соответствии с этим при использовании ARQ важным является управление потоком, так чтобы передатчик ARQ не переполнял буфер в приемнике ARQ. Эта проблема представляет особую важность для беспроводных систем связи, где мобильная станция (MS) обычно имеет ограниченный буфер. В данном случае в целях решения проблемы переполнения буфера в приемнике ARQ в уровне техники используется управление буфером. Ниже описывается управление буфером в соответствии с предшествующим уровнем техники.

[59] В целях облегчения управления буфером приемник ARQ информирует передатчик ARQ о максимальном размере буфера ARQ (ARQ_MAX_BUFFER_SIZE) во время согласования функциональных возможностей. ARQ_MAX_BUFFER_SIZE представляет собой максимальный размер буфера ARQ (в байтах), который приемник ARQ способен назначать для всех соединений ARQ. Когда для заданного приемника ARQ в наличии имеются один или более потоков с задействованием ARQ, передатчик ARQ поддерживает состояние ARQ_BUFFER_USED (ИСПОЛЬЗОВАНИЕ_БУФЕРА_ARQ), представляющее собой полное использование буфера ARQ для всех потоков с задействованием ARQ на приемнике ARQ, в добавление к другим состояниям ARQ на поток. ARQ_BUFFER_USED учитывает все блоки ARQ и подблоки, которые еще не были подтверждены по порядку приемником ARQ. Например, если передатчик ARQ отправил блоки 0-10, а приемник ARQ подтверждает блоки 1-10, ARQ_BUFFER_USED будет рассматривать блоки PDU с номерами с 0 по 10 как заполняющие буфер приемника ARQ. Когда блок 0 также подтверждается, ARQ_BUFFER_USED обновляется с целью обозначения того, что блоки с 0 по 10 были очищены из буфера приемника ARQ. Передатчик ARQ обеспечивает, чтобы передача или повторная передача блоков ARQ не превышала ARQ_MAX_BUFFER_SIZE - ARQ_BUFFER_USED.

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

Техническая проблема

[60] Однако один недостаток касательно управления буфером в предшествующем уровне техники состоит в том, что передатчик ARQ может тем не менее переполнять буфер ARQ в приемнике ARQ, поскольку он предполагает, что все блоки ARQ (например, блоки с 0 по 10), которые были совокупно подтверждены приемником ARQ, были доставлены на более высокий уровень и, таким образом, больше не находятся в буфере приема ARQ. Однако это не обязательно является таковым. В действительности, блок ARQ, представляющий собой фрагмент блока SDU MAC, не может быть доставлен на более высокий уровень до тех пор, пока на приемник ARQ не прибыли все фрагменты. Другими словами, блок ARQ может все еще находиться в буфере приема ARQ, даже если он является подтвержденным приемником ARQ и окно приема ARQ передвинулось сверх этого блока ARQ. Таким образом, управление буфером в предшествующем уровне техники не учитывает проблему реконструкции SDU, и, таким образом, передатчик может переполнять буфер ARQ в приемнике ARQ.

Решение проблемы

[61] Вследствие этого существует необходимость в способе и устройстве для продвинутого управления буфером ARQ в беспроводной системе связи.

[62] Одним аспектом настоящего изобретения является решение, по меньшей мере, вышеуказанных проблем и/или недостатков и обеспечение, по меньшей мере, описанных ниже преимуществ. В соответствии с этим одним аспектом настоящего изобретения является обеспечение способа и устройства для продвинутого управления буфером автоматического запроса на повторение (ARQ) в беспроводной системе связи.

[63] В соответствии с одним аспектом настоящего изобретения обеспечивается способ для управления передатчиком ARQ в беспроводной системе связи. Данный способ включает в себя этапы, на которых определяют неиспользованную емкость буфера приемника ARQ в приемнике ARQ, определяют, может ли буфер приемника ARQ поддерживать назначенный к передаче блок ARQ на основе данной определенной неиспользованной емкости буфера приемника ARQ, и, если определено, что буфер приемника ARQ может поддерживать блок ARQ, назначенный к передаче, передают блок ARQ на приемник ARQ.

[64] В соответствии с одним другим аспектом настоящего изобретения обеспечивается устройство передатчика ARQ для использования в беспроводной системе связи. Данное устройство включает в себя приемник для приема сигналов от по меньшей мере одного приемника ARQ, передатчик для передачи сигналов на по меньшей мере один приемник ARQ, и контроллер.

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

Полезные эффекты изобретения

[66] Представлен способ для точного определения неиспользованной емкости буфера приемника ARQ в приемнике ARQ.

[67] Вследствие этого с помощью более эффективного управления ARQ через посредство определения неиспользованной емкости буфера приемника ARQ в приемнике ARQ может быть предотвращено переполнение буфера ARQ.

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

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

[69] Вышеуказанные и другие аспекты, признаки и преимущества определенных иллюстративных вариантов осуществления настоящего изобретения будут более очевидны из нижеследующего описания, взятого в соединении с сопроводительными чертежами, на которых:

[70] фиг.1 иллюстрирует машину состояний передатчика автоматического запроса на повторение (ARQ) для блока ARQ в соответствии с предшествующим уровнем техники;

[71] фиг.2 иллюстрирует блок-схему последовательности операций для приема блока ARQ в соответствии с предшествующим уровнем техники;

[72] фиг.3 иллюстрирует сервисные блоки данных (SDU) переменной длины, упакованные в блоки пакетных данных (PDU) управления доступом к среде (MAC), включающие в себя подзаголовки фрагментации (FSH) и подзаголовки упаковывания (PSH) в соответствии с предшествующим уровнем техники;

[73] фиг.4 иллюстрирует блоки SDU фиксированной длины, упакованные в один блок PDU MAC в соответствии с предшествующим уровнем техники;

[74] фиг.5 иллюстрирует структуру блока PDU управления радиоканалами (RLC) в соответствии с предшествующим уровнем техники;

[75] фиг.6 иллюстрирует блок PDU данных в режиме без подтверждения (UMD) в соответствии с предшествующим уровнем техники;

[76] фиг.7 иллюстрирует заполнение буфера и вычисление доступного пространства буфера в соответствии с одним иллюстративным вариантом осуществления настоящего изобретения;

[77] фиг.8 иллюстрирует управление буфером для соединения ARQ в соответствии с одним иллюстративным вариантом осуществления настоящего изобретения;

[78] фиг.9 иллюстрирует блок-схему последовательности операций для определения того, включать ли блок ARQ в ARQ_BUFFER_USED с использованием поля FI, в соответствии с одним иллюстративным вариантом осуществления настоящего изобретения;

[79] фиг.10 иллюстрирует блок-схему последовательности операций для определения того, включать ли блок ARQ в ARQ_BUFFER_USED с использованием поля FC, в соответствии с одним иллюстративным вариантом осуществления настоящего изобретения;

[80] фиг.11 иллюстрирует структурную диаграмму для приемника ARQ в беспроводной системе связи в соответствии с одним иллюстративным вариантом осуществления настоящего изобретения; и

[81] фиг.12 иллюстрирует структурную диаграмму для передатчика ARQ в беспроводной системе связи в соответствии с одним иллюстративным вариантом осуществления настоящего изобретения.

[82] На всех чертежах схожие опорные обозначения будут пониматься как относящиеся к схожим частям, компонентам и структурам.

Подробное описание вариантов осуществления изобретения

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

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

[85] Необходимо понимать, что значение форм единственного числа включает в себя и множественное число определяемых объектов, если только контекст ясно не указывает на обратное. Таким образом, например, ссылка на «поверхность компонента» включает в себя ссылку на одну или более таких поверхностей.

[86] Посредством термина «по существу» обозначается, что перечисляемая характеристика, параметр или значение не обязательно должны быть точно получены, но что в объемах, не препятствующих эффекту, который была назначена обеспечить данная характеристика, могут иметь место отклонения или вариации, включающие в себя, например, допуски, ошибку измерения, ограничения в точности измерения и другие факторы, известные специалистам в области техники.

[87] Иллюстративные варианты осуществления настоящего изобретения, описанные ниже, относятся к способу и устройству для автоматического запроса на повторение (ARQ) в беспроводной системе связи. Более конкретно, иллюстративные варианты осуществления настоящего изобретения, описанные ниже, относятся к способу и устройству для продвинутого управления буфером ARQ в беспроводной системе связи.

[88] Следует понимать, что, только для простоты объяснения, нижеследующее описание может относиться к терминам, используемым в различных стандартах. Например, нижеследующее описание может относиться к терминам, используемым в стандарте 802.16e Института инженеров по электротехнике и электронике (IEEE), в стандарте IEEE 802.16m или в стандарте долгосрочного развития (LTE) проекта партнерства третьего поколения (3GPP). Однако данное описание не должно интерпретироваться как ограничивающееся до стандартов IEEE 802.16e, IEEE 802.16m или LTE 3GPP. Независимо от механизма, используемого для ARQ, предпочтительным является осуществление продвинутого управления буфером, и оно является выгодным за свою способность согласовываться со стандартизированным механизмом.

[89] Первый иллюстративный вариант осуществления

[90] Первый иллюстративный вариант осуществления настоящего изобретения включает в себя способ для передатчика ARQ точного определения объема использования буфера приема ARQ, так чтобы передатчик ARQ не передавал больше, чем приемник ARQ мог бы поддерживать. Параметр ARQ_MAX_BUFFER_SIZE представляет собой параметр согласования между передатчиком ARQ, таким как базовая станция (BS), и приемником ARQ, таким как мобильная станция (MS). ARQ_MAX_BUFFER_SIZE представляет собой максимальный размер буфера ARQ (в байтах), который приемник ARQ способен назначать для всех соединений ARQ. Приемник ARQ информирует передатчик ARQ о максимальном размере буфера ARQ во время согласования функциональных возможностей. Передатчик ARQ обеспечивает, чтобы новая передача блока ARQ не превышала ARQ_MAX_BUFFER_SIZE - ARQ_BUFFER_USED. ARQ_BUFFER_USED обозначает полное использование буфера ARQ для всех потоков с задействованием ARQ на приемнике ARQ. Другими словами, ARQ_BUFFER_USED обозначает сумму ARQ_BUFFER_USED на поток для всех потоков с задействованием ARQ на приемнике ARQ. ARQ_BUFFER_USED на поток вычисляется как заполненный размер буфера окна передатчика ARQ (от ARQ_TX_WINDOW_START до ARQ_TX_NEXT_SN-1 (включительно)). В данном случае, если блоки ARQ, с порядковым номером (SN), меньшим, чем ARQ_TX_WINDOW_START, являются частью того же самого сервисного блока данных (SDU) управления доступом к среде (MAC), что и первый блок ARQ в окне передатчика ARQ, тогда эти блоки ARQ должны быть включены в вычисление ARQ_BUFFER_USED на поток. Другими словами, при определении объема использования буфера приема ARQ, передатчик ARQ также учитывает блоки ARQ на приемнике ARQ как ARQ_BUFFER_USED, если они имеют SN меньший, чем ARQ_TX_WINDOW_START, и все еще находятся в ожидании полной реконструкции блока SDU, прежде чем быть доставленными на более высокий уровень. Ниже со ссылкой на фиг.7 описываются: пример заполнения буфера, а также вычисление доступного пр