ES2604854T3 - Aparatos y procedimientos para la compresión de confirmación de bloques - Google Patents
Aparatos y procedimientos para la compresión de confirmación de bloques Download PDFInfo
- Publication number
- ES2604854T3 ES2604854T3 ES13740087.5T ES13740087T ES2604854T3 ES 2604854 T3 ES2604854 T3 ES 2604854T3 ES 13740087 T ES13740087 T ES 13740087T ES 2604854 T3 ES2604854 T3 ES 2604854T3
- Authority
- ES
- Spain
- Prior art keywords
- block
- field
- block confirmation
- ack
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012790 confirmation Methods 0.000 title claims abstract description 207
- 238000000034 method Methods 0.000 title claims abstract description 98
- 230000006835 compression Effects 0.000 title description 9
- 238000007906 compression Methods 0.000 title description 9
- 238000004891 communication Methods 0.000 claims abstract description 43
- 238000004590 computer program Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 description 35
- 239000012634 fragment Substances 0.000 description 29
- 230000006870 function Effects 0.000 description 27
- 230000004044 response Effects 0.000 description 18
- 238000012545 processing Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013467 fragmentation Methods 0.000 description 4
- 238000006062 fragmentation reaction Methods 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 108700026140 MAC combination Proteins 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000005755 formation reaction Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000005022 packaging material Substances 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1614—Details of the supervisory signal using bitmaps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1685—Details of the supervisory signal the supervisory signal being transmitted in response to a specific request, e.g. to a polling signal
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Un procedimiento de comunicación en una red inalámbrica, comprendiendo el procedimiento: generar (1502) una trama de confirmación de bloques (1400A) que comprende una pluralidad de campos en el orden siguiente: un campo de identificador de confirmación de bloques (1402A) que incluye un identificador de la trama de confirmación de bloques, en el que el campo de identificador de confirmación de bloques está fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de 10 servicio de capa física; un campo de control de secuencia inicial (1404A) que incluye al menos uno entre un número de secuencia y una función de un número de secuencia de una unidad de datos para la que se envió la trama de confirmación de bloques; y un campo de mapa de bits de confirmación de bloques (1406A) que indica un estado recibido de un cierto número de unidades de datos; y transmitir de forma inalámbrica (1504) la trama de confirmación de bloques (1400A).
Description
5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Aparatos y procedimientos para la compresion de confirmacion de bloques
ANTECEDENTES
Campo
La presente solicitud se refiere, en general, a las comunicaciones inalambricas y, mas especfficamente, a sistemas, procedimientos y dispositivos para comprimir confirmaciones de bloques (BA) para la comunicacion.
Antecedentes
En muchos sistemas de telecomunicaciones, las redes de comunicacion se usan para intercambiar mensajes entre varios dispositivos separados espacialmente que interaction entre si. Las redes pueden clasificarse segun el alcance geografico, que puede ser, por ejemplo, un area metropolitana, un area local o un area personal. Dichas redes se designarfan, respectivamente, red de area extensa (WAN), red de area metropolitana (MAN), red de area local (LAN), red de area local inalambrica (WLAN) o red de area personal (PAN). Las redes tambien difieren segun la tecnica de conmutacion/encaminamiento usada para interconectar los diversos nodos y dispositivos de red (por ejemplo, conmutacion de circuitos frente a conmutacion de paquetes), el tipo de medios ffsicos utilizados para la transmision (por ejemplo, medio cableado frente a medio inalambrico) y el conjunto de protocolos de comunicacion usados (por ejemplo, la familia de protocolos de Internet, SONET (red optica sfncrona), Ethernet, etc.).
A menudo se prefieren las redes inalambricas cuando los elementos de red son moviles y, por lo tanto, tienen necesidades de conectividad dinamicas, o si la arquitectura de red se forma en una topologfa ad hoc, en lugar de una fija. Las redes inalambricas emplean medios ffsicos intangibles en un modo de propagacion no guiado usando ondas electromagneticas en las bandas de frecuencia de radio, microondas, infrarrojos, opticas, etc. Las redes inalambricas facilitan de manera ventajosa la movilidad del usuario y un rapido despliegue en el terreno en comparacion con las redes cableadas fijas.
Un procedimiento para generar una confirmacion de bloques es divulgado por el documento US 2006/018332 Al (KAKANI NAVEEN [US] ET AL) del 26 enero de 2006 (2006-01-26).
Los dispositivos en una red inalambrica pueden transmitir/recibir informacion entre si. La informacion puede comprender paquetes, que en algunos aspectos pueden denominarse unidades de datos o tramas de datos. Los dispositivos que reciben los paquetes pueden transmitir ademas paquetes de confirmacion (ACK) a los transmisores de los paquetes recibidos para indicar la recepcion con exito de los paquetes. Estos paquetes de confirmacion tambien pueden tomar la forma de ACK de bloques. Estas ACK de bloques pueden utilizar una cantidad significativa de ancho de banda para la transmision. Por tanto, se desean sistemas, procedimientos y dispositivos mejorados para la comunicacion de las ACK de bloques.
RESUMEN
La invencion esta definida en las reivindicaciones independientes. La invencion tiene varios aspectos, ninguno de los cuales es el unico responsable de sus atributos deseables. Despues de considerar algunas caracterfsticas de la invencion y, en particular, despues de leer la seccion titulada "Descripcion detallada", se entendera como las caracterfsticas de esta invencion proporcionan ventajas que incluyen la disminucion del tamano, o de la compresion, de las ACK de bloques, reduciendo por ello el ancho de banda utilizado para transmitir dichos paquetes de datos.
La invencion se lleva a cabo de acuerdo a las reivindicaciones adjuntas.
BREVE DESCRIPCION DE LOS DIBUJOS
La FIG. 1 ilustra un ejemplo de un sistema de comunicacion inalambrica en el que pueden utilizarse aspectos de la presente divulgacion.
La FIG. 2 ilustra varios componentes, incluido un receptor, que pueden utilizarse en un dispositivo inalambrico que puede emplearse en el sistema de comunicacion inalambrica de la FIG. 1.
La FIG. 3 ilustra un ejemplo de una trama basica de ACK de bloque.
La FIG. 4 ilustra un ejemplo de una trama de ACK de bloques de TID multiple.
La FIG. 5 ilustra un ejemplo de una trama basica comprimida de ACK de bloques.
La FIG. 6 ilustra un ejemplo de una trama comprimida de ACK de bloques, compatible con ACK basica y TID
5
10
15
20
25
30
35
40
45
50
55
60
65
multiple.
La FIG. 7 ilustra un aspecto de un procedimiento para transmitir una ACK de bloques comprimida.
La FIG. 8 es un diagrama de bloques funcional de un dispositivo inalambrico ejemplar que puede emplearse dentro del sistema de comunicacion inalambrica de la FIG. 1.
La FIG. 9 ilustra un aspecto de un procedimiento para recibir y procesar una ACK de bloques.
La FIG. 10 es un diagrama de bloques funcional de otro dispositivo inalambrico ejemplar que puede emplearse en el sistema de comunicacion inalambrica de la FIG. 1.
La FIG. 11 ilustra un ejemplo de una cabecera de PHY que incluye informacion relacionada con una trama de ACK de bloques.
La FIG. 12 ilustra un aspecto de un procedimiento para comunicarse en una red inalambrica.
La FIG. 13 es un diagrama de bloques funcional de otro dispositivo inalambrico ejemplar que puede emplearse dentro del sistema de comunicacion inalambrica de la FIG. 1.
La FIG. 14A ilustra un ejemplo de un campo de informacion de control de una trama de ACK de bloques de paquetes de datos nulos.
La FIG. 14B ilustra otro ejemplo de un campo de informacion de control de una trama de ACK de bloques de paquetes de datos nulos.
La figura 15 ilustra un aspecto de otro procedimiento para comunicarse en una red inalambrica.
DESCRIPCION DETALLADA
Varios aspectos de los sistemas, aparatos y procedimientos novedosos se describen a continuacion en mayor detalle con referencia a los dibujos adjuntos. Sin embargo, las ensenanzas de esta divulgacion pueden realizarse de muchas formas diferentes y no deberfa considerarse que se limiten a alguna estructura o funcion especfficas presentadas a lo largo de esta divulgacion. En cambio, estos aspectos se proporcionan para que esta divulgacion sea exhaustiva y completa, y transmita completamente el alcance de la divulgacion a los expertos en la tecnica. En base a las ensenanzas en el presente documento, los expertos en la tecnica deberfan apreciar que el alcance de la divulgacion pretende cubrir cualquier aspecto de los sistemas, aparatos y procedimientos novedosos divulgados en el presente documento, ya sea implementado de manera independiente de, o en combinacion con, cualquier otro aspecto de la invencion. Por ejemplo, un aparato puede implementarse, o un procedimiento puede llevarse a la practica, usando cualquier numero de los aspectos dados a conocer en el presente documento. Ademas, el alcance de la invencion pretende abarcar un aparato o procedimiento de este tipo, llevado a la practica usando otra estructura, funcionalidad, o estructura y funcionalidad, ademas de, o diferentes a, los diversos aspectos de la invencion expuestos en el presente documento. Deberfa entenderse que cualquier aspecto divulgado en el presente documento puede realizarse mediante uno o mas elementos de una reivindicacion.
Aunque en el presente documento se describen aspectos particulares, muchas variaciones y permutaciones de estos aspectos quedan dentro del alcance de la divulgacion. Aunque se mencionan algunos beneficios y ventajas de los aspectos preferidos, el alcance de la divulgacion no pretende limitarse a beneficios, usos u objetivos particulares. En cambio, los aspectos de la divulgacion estan concebidos para ser aplicables, en sentido amplio, a diferentes tecnologfas inalambricas, configuraciones de sistema, redes y protocolos de transmision, algunos de los cuales se ilustran a modo de ejemplo en las figuras y en la siguiente descripcion de los aspectos preferidos. La descripcion detallada y los dibujos son meramente ilustrativos de la divulgacion, en lugar de limitar el alcance de la divulgacion, que esta definido por las reivindicaciones adjuntas y los equivalentes de las mismas.
Las tecnologfas de red inalambricas populares pueden incluir diversos tipos de redes de area local inalambricas (WLAN). Puede usarse una WLAN para interconectar dispositivos cercanos entre sf, empleando protocolos de red usados ampliamente. Los diversos aspectos descritos en el presente documento pueden aplicarse a cualquier norma de comunicacion, tal como WiFi o, de manera mas general, a cualquier miembro de la familia IEEE 802.11 de protocolos inalambricos. Por ejemplo, los diversos aspectos descritos en el presente documento pueden usarse como parte del protocolo IEEE 802.11ah, que usa sub-bandas de 1 GHz.
En algunos aspectos, las senales inalambricas de una sub-banda de gigahercios pueden transmitirse segun el protocolo 802.11ah, usando multiplexacion por division de frecuencia ortogonal (OFDM), comunicaciones de espectro ensanchado de secuencia directa (DSSS), una combinacion de las comunicaciones de OFDM y DSSS u otros esquemas. Las implementaciones del protocolo 802.11ah pueden usarse en sensores, dispositivos de medicion y redes de cuadrfcula inteligentes. De manera ventajosa, aspectos de determinados dispositivos que
5
10
15
20
25
30
35
40
45
50
55
60
65
implementan el protocolo 802.11ah pueden consumir menos potencia que dispositivos que implementan otros protocolos inalambricos y/o pueden usarse para transmitir senales inalambricas con un alcance relativamente largo, por ejemplo, de un kilometro, aproximadamente, o mas.
En algunos aspectos, los dispositivos usados como sensores pueden tener un ciclo de trabajo bajo y capacidades limitadas. Por ejemplo, tales dispositivos pueden ser configurados para despertar y transmitir y/o recibir rafagas limitadas de unidades de datos del protocolo (MPDU) de control de acceso al medio (MAC). Despues de tales rafagas, el dispositivo puede entrar en un estado de suspension durante un perfodo prolongado de tiempo. Ademas, tales dispositivos solo pueden ser capaces de transmitir con velocidades de transmision bajas, por lo que a veces requieren la fragmentacion para transmitir paquetes grandes. Los dispositivos pueden ademas tener capacidades limitadas de almacenamiento temporal.
En algunas implementaciones, una WLAN incluye diversos dispositivos que son los componentes que acceden a la red inalambrica. Por ejemplo, puede haber dos tipos de dispositivos: puntos de acceso ("AP") y clientes (tambien denominados estaciones, o "STA"). En general, un AP sirve como un concentrador o estacion base para la WLAN y una STA sirve como un usuario de la WLAN. Por ejemplo, una STA puede ser un ordenador portatil, un asistente personal digital (PDA), un telefono movil, etc. En un ejemplo, una STA se conecta a un AP a traves de un enlace inalambrico compatible con WiFi (por ejemplo, el protocolo IEEE 802.11, tal como 802.11ah) para obtener conectividad general a Internet o a otras redes de area extensa. En algunas implementaciones, tambien puede usarse una STA como un AP.
Un punto de acceso ("AP") tambien puede comprender, implementarse como, o conocerse como, un NodoB, un controlador de red de radio ("RNC"), un eNodoB, un controlador de estacion base ("BSC"), una estacion transceptora base ("BTS"), una estacion base ("BS"), una funcion transceptora ("TF"), un encaminador de radio, un transceptor de radio, o utilizando alguna otra terminologfa.
Una estacion "STA" tambien puede comprender, implementarse como o conocerse como, un terminal de acceso ("AT"), una estacion de abonado, una unidad de abonado, una estacion movil, una estacion remota, un terminal remoto, un terminal de usuario, un agente de usuario, un dispositivo de usuario, un equipo de usuario, o utilizando alguna otra terminologfa. En algunas implementaciones, un terminal de acceso puede comprender un telefono celular, un telefono sin cables, un telefono del protocolo de inicio de sesion ("SIP"), una estacion de bucle local inalambrico ("WLL"), un asistente digital personal ("PDA"), un dispositivo de mano con capacidad de conexion inalambrica o algun otro dispositivo de procesamiento adecuado conectado a un modem inalambrico. Por consiguiente, uno o mas aspectos dados a conocer en el presente documento pueden incorporarse en un telefono (por ejemplo, un telefono celular o un telefono inteligente), un ordenador (por ejemplo, un ordenador portatil), un dispositivo de comunicaciones portatil, un micro-telefono, un dispositivo informatico portatil (por ejemplo, un asistente de datos personal), un dispositivo de entretenimiento (por ejemplo, un dispositivo de musica o de video o una radio por satelite), un dispositivo o sistema de juegos, un dispositivo del sistema de localizacion global o cualquier otro dispositivo adecuado que este configurado para comunicarse a traves de un medio inalambrico.
Como se ha expuesto anteriormente, determinados dispositivos descritos en el presente documento pueden implementar la norma 802.11ah, por ejemplo. Tales dispositivos, independientemente de que se usen como una STA, un AP o como otro dispositivo, pueden usarse para la medicion inteligente o en una red de cuadrfcula inteligente. Tales dispositivos pueden proporcionar aplicaciones de sensor o usarse en la automatizacion domestica. Los dispositivos, en cambio, o ademas de eso, pueden utilizarse en un contexto de asistencia sanitaria, por ejemplo, para la asistencia sanitaria personal. Tambien pueden usarse para la vigilancia, para permitir una conectividad a Internet de mayor alcance (por ejemplo, para su uso con puntos de actividad), o para implementar comunicaciones de maquina a maquina.
Los dispositivos, tales como las STA y/o los AP, en una red inalambrica transmiten y/o reciben informacion entre si. La informacion intercambiada entre los dispositivos puede comprender paquetes que, en algunos aspectos, pueden denominarse unidades de datos o tramas de datos. Los dispositivos que reciben los paquetes pueden transmitir ademas paquetes de confirmacion (ACK) a los transmisores de los paquetes recibidos para indicar la recepcion con exito de los paquetes. Por ejemplo, una STA que recibe paquetes desde un AP puede transmitir una ACK al AP para confirmar la recepcion con exito de los paquetes. Estos paquetes de confirmacion tambien pueden tomar la forma de ACK de bloques. En algunos aspectos, una ACK de bloques puede ser usada por un dispositivo para confirmar un grupo de paquetes o tramas. Por ejemplo, una ACK de bloques puede permitir que un dispositivo reciba varios paquetes o tramas antes de transmitir una unica ACK de bloques para confirmar la recepcion de los varios paquetes o tramas. Estas ACK de bloques pueden utilizar una cantidad significativa de ancho de banda para su transmision. En algunos aspectos, las ACK de bloques pueden comprimirse utilizando diversos sistemas, procedimientos y dispositivos, que pueden dar como resultado un consumo reducido del ancho de banda por las ACK de bloques.
La FIG. 1 ilustra un ejemplo de un sistema de comunicacion inalambrica 100 en el que pueden utilizarse aspectos de la presente divulgacion. El sistema de comunicacion inalambrica 100 puede funcionar conforme a una norma inalambrica, por ejemplo, la norma 802.11ah. El sistema de comunicacion inalambrica 100 puede incluir un AP 104, que se comunica con las STA 106.
5
10
15
20
25
30
35
40
45
50
55
60
65
Pueden usarse varios procesos y procedimientos para transmisiones en el sistema de comunicacion inalambrica 100 entre el AP 104 y las STA 106. Por ejemplo, pueden enviarse y recibirse senales entre el AP 104 y las STA 106 de acuerdo a tecnicas de OFDM/OFDMa. Si este es el caso, el sistema de comunicacion inalambrica 100 puede denominarse un sistema de OFDM/OFDMA. Como alternativa, las senales pueden enviarse y recibirse entre el AP 104 y las STA 106 de acuerdo a tecnicas de CDMA. Si este es el caso, el sistema de comunicacion inalambrica 100 puede denominarse un sistema de CDMA.
Un enlace de comunicacion que facilita la transmision desde el AP 104 a una o mas de las STA 106 puede denominarse un enlace descendente (DL) 108, y un enlace de comunicacion que facilita la transmision desde una o mas de las STA 106 al AP 104 puede denominarse un enlace ascendente (UL) 110. Como alternativa, un enlace descendente 108 puede denominarse enlace directo o canal directo, y un enlace ascendente 110 puede denominarse enlace inverso o canal inverso. Ademas, en algunos aspectos, las STA 106 pueden comunicarse directamente entre si y formar un enlace directo entre ellas.
El AP 104 puede actuar como una estacion base y proporcionar cobertura de comunicacion inalambrica en un area de servicios basicos (BSA) 102. El AP 104, junto con las STA 106 asociadas al AP 104 y que usan el AP 104 para las comunicaciones, pueden denominarse un conjunto de servicios basicos (BSS). Deberfa observarse que el sistema de comunicacion inalambrica 100 puede no tener un AP central 104 sino que, en cambio, puede funcionar como una red de igual a igual entre las STA 106. Por consiguiente, las funciones del AP 104 descritas en el presente documento pueden llevarse a cabo, de manera alternativa, mediante una o mas de las STA 106.
La FIG. 2 ilustra varios componentes que pueden utilizarse en un dispositivo inalambrico 202 que puede emplearse dentro del sistema de comunicacion inalambrica 100. El dispositivo inalambrico 202 es un ejemplo de un dispositivo que puede configurarse para implementar los diversos procedimientos descritos en el presente documento. Por ejemplo, el dispositivo inalambrico 202 puede comprender el AP 104 o una de las STA 106.
El dispositivo inalambrico 202 puede incluir un procesador 204 que controla el funcionamiento del dispositivo inalambrico 202. El procesador 204 tambien puede denominarse una unidad de procesamiento central (CPU). La memoria 206, que puede incluir tanto memoria de solo lectura (ROM) como memoria de acceso aleatorio (RAM), proporciona instrucciones y datos al procesador 204. Una parte de la memoria 206 tambien puede incluir una memoria de acceso aleatorio no volatil (NVRAM). El procesador 204 realiza habitualmente operaciones logicas y aritmeticas basadas en instrucciones de programa almacenadas dentro de la memoria 206. Las instrucciones en la memoria 206 pueden ser ejecutables para implementar los procedimientos descritos en el presente documento.
Cuando el dispositivo inalambrico 202 se implementa o se usa como un nodo de recepcion, el procesador 204 puede configurarse para generar paquetes incluyendo las ACK de bloques comprimidos de uno o mas de los formatos descritos en el presente documento. Por ejemplo, el procesador 204 puede configurarse para generar una ACK de bloques de uno o mas de los formatos descritos en el presente documento, en base a la recepcion de otros paquetes, como se explica en mas detalle a continuacion.
Cuando el dispositivo inalambrico 202 se implementa o se usa como un nodo transmisor, el procesador 204 puede configurarse para procesar ACK de bloques de uno o mas de los formatos descritos en el presente documento. Por ejemplo, el procesador 204 puede configurarse para recibir, en respuesta a otros paquetes que se transmitieron, y procesar una ACK de bloques, como se explica adicionalmente mas adelante.
El procesador 204 puede comprender, o ser un componente de, un sistema de procesamiento implementado con uno o mas procesadores. Uno o mas procesadores pueden implementarse con cualquier combinacion de microprocesadores de proposito general, micro-controladores, procesadores de senales digitales (DSP), formaciones de compuertas programables en el terreno (FPGA), dispositivos de logica programable (PLD), controladores, maquinas de estados, logica de compuertas, componentes de hardware discretos, maquinas de estados finitos de hardware dedicado, u otras entidades adecuadas cualesquiera, que puedan realizar calculos u otras manipulaciones de informacion.
El sistema de procesamiento tambien puede incluir medios legibles por maquina para almacenar software. El software debera interpretarse en sentido amplio, como cualquier tipo de instruccion, ya sea que se denomine software, firmware, middleware, micro-codigo, lenguaje de descripcion de hardware o de otro modo. Las instrucciones pueden incluir codigo (por ejemplo, en formato de codigo fuente, formato de codigo binario, formato de codigo ejecutable o cualquier otro formato de codigo adecuado). Las instrucciones, cuando son ejecutadas por los uno o mas procesadores, hacen que el sistema de procesamiento lleve a cabo las diversas funciones descritas en el presente documento.
El dispositivo inalambrico 202 tambien puede incluir una carcasa 208 que puede incluir un transmisor 210 y/o un receptor 212 para permitir la transmision y la recepcion de datos entre el dispositivo inalambrico 202 y una ubicacion remota. El transmisor 210 y el receptor 212 pueden combinarse en un transceptor 214. Una antena 216 puede fijarse a la carcasa 208 y conectarse electricamente al transceptor 214. El dispositivo inalambrico 202 tambien puede incluir
5
10
15
20
25
30
35
40
45
50
55
60
65
(aunque no se muestran) multiples transmisores, multiples receptores, multiples transceptores y/o multiples antenas.
El transmisor 210 puede estar configurado para transmitir de forma inalambrica paquetes que incluyen las ACK de bloques de uno o mas de los formatos descritos en el presente documento. El receptor 212 puede estar configurado para recibir de forma inalambrica paquetes que incluyen las ACK de bloques de uno o mas de los formatos descritos en el presente documento.
El dispositivo inalambrico 202 tambien puede incluir un detector de senales 218 que puede usarse en un esfuerzo para detectar y cuantificar el nivel de las senales recibidas por el transceptor 214. El detector de senales 218 puede detectar dichas senales, como energfa total, energfa por sub-portadora por sfmbolo, densidad espectral de potencia y otras senales. El dispositivo inalambrico 202 tambien puede incluir un procesador de senales digitales (DSP) 220 para su uso en el procesamiento de senales. El DSP 220 puede configurarse para generar un paquete para su transmision. En algunos aspectos, el paquete puede comprender una unidad de datos de capa ffsica (PPDU).
En algunos aspectos, el dispositivo inalambrico 202 puede comprender ademas una interfaz de usuario 222. La interfaz de usuario 222 puede comprender un teclado, un microfono, un altavoz y/o una pantalla. La interfaz de usuario 222 puede incluir cualquier elemento o componente que transporte informacion a un usuario del dispositivo inalambrico 202 y/o que reciba entradas desde el usuario.
Los diversos componentes del dispositivo inalambrico 202 pueden conectarse entre si mediante un sistema de bus 226. El sistema de bus 226 puede incluir un bus de datos, por ejemplo, asf como un bus de potencia, un bus de senales de control y un bus de senales de estado, ademas del bus de datos. Los expertos en la tecnica apreciaran que los componentes del dispositivo inalambrico 202 puedan acoplarse entre si, o puedan aceptar o proporcionar entradas entre si, usando algun otro mecanismo.
Aunque se ilustran varios componentes separados en la FIG. 2, los expertos en la tecnica reconoceran que uno o mas de los componentes pueden combinarse o implementarse en comun. Por ejemplo, el procesador 204 puede usarse para implementar no solo la funcionalidad que se ha descrito anteriormente con respecto al procesador 204, sino tambien para implementar la funcionalidad que se ha descrito anteriormente con respecto al detector de senales 218 y/o al dSp 220. Ademas, cada uno de los componentes ilustrados en la FIG. 2 puede implementarse usando una pluralidad de elementos separados.
Para facilitar la referencia, cuando el dispositivo inalambrico 202 esta configurado como un nodo de transmision, en lo sucesivo se hace referencia al mismo como un dispositivo inalambrico 202t. Del mismo modo, cuando el dispositivo inalambrico 202 esta configurado como un nodo de recepcion, en lo sucesivo se hace referencia al mismo como un dispositivo inalambrico 202r. Un dispositivo en el sistema de comunicacion inalambrica 100 puede implementar solamente la funcionalidad de un nodo de transmision, solamente la funcionalidad de un nodo de recepcion, o la funcionalidad tanto de un nodo de transmision como de un nodo de recepcion.
Como se ha descrito anteriormente, el dispositivo inalambrico 202 puede comprender un AP 104 o una STA 106, y puede usarse para transmitir y/o recibir comunicaciones, incluidas las ACK de bloques.
Una ACK de bloques permite a un dispositivo que recibe multiples paquetes de datos confirmar su recepcion con una unica trama de aCk de bloques, en lugar de utilizar multiples tramas de ACK. Por ejemplo, la ACK de bloques puede incluir un mapa de bits con multiples bits, indicando el valor de cada bit si se ha recibido o no un paquete de datos particular en una secuencia de paquetes de datos. Una ACK de bloques puede ser una trama de datos. Las ACK de bloques sin comprimir requieren el envfo de todo el mapa de bits, independientemente de que paquetes se reciben correctamente o no, lo cual puede crear sobrecarga y utilizar un valioso ancho de banda. Por consiguiente, en este documento se describen sistemas y procedimientos para comprimir / reducir el tamano de las ACK de bloques. En algunos aspectos, ciertos campos de una trama en los que se envio la ACK de bloques pueden ser eliminados o modificados. Ademas de, o como alternativa a, dichos aspectos, en algunos aspectos, el mapa de bits se puede comprimir o reducir de tamano de acuerdo a tecnicas descritas en este documento.
La FIG. 3 ilustra un ejemplo de una trama basica de ACK de bloques 300. Como se muestra, la trama basica de ACK de bloques incluye un campo de control de trama 305 que comprende 2 octetos, un campo de duracion 310 que comprende 2 octetos, un campo de direccion del receptor 315 que comprende 6 octetos, un campo de direccion del transmisor 320 que comprende 6 octetos, un campo de control de ACK de bloques 325 que comprende 2 octetos, un campo de control de secuencia inicial 330 que comprende 2 octetos, un mapa de bits de ACK de bloques 335 que comprende 8 o 128 octetos y un campo de secuencia de verificacion de trama 340 que comprende 4 octetos. Ademas, el campo de control de ACK de bloques 325 comprende un sub-campo de polftica de ACK de bloques 352, un sub-campo de identificador de trafico multiple (TID) 354, un sub-campo de mapa de bits comprimido 356, un sub- campo reservado 358 y un sub-campo de TID / NumTIDs 359. El campo de control de secuencia inicial 330 comprende un sub-campo reservado 362 y un sub-campo de numero de secuencia inicial 364. Por consiguiente, la trama de ACK de bloques 300 puede ser de 32 octetos o 152 octetos de largo.
La FIG. 4 ilustra un ejemplo de una trama de ACK de bloques de TID multiple 400. Como se muestra, la trama 400
5
10
15
20
25
30
35
40
45
50
55
60
65
incluye un campo de control de trama 405 que comprende 2 octetos, un campo de duracion 410 que comprende 2 octetos, un campo de direccion del receptor 415 que comprende 6 octetos, un campo de direccion del transmisor 420 que comprende 6 octetos, un campo de control de ACK de bloques 425 que comprende 2 octetos, un campo de informacion por TID 430 que comprende 2 octetos, un campo de control de secuencia inicial 435 que comprende 2 octetos, un mapa de bits de ACK de bloques 440 que comprende 8 octetos y un campo de secuencia de verificacion de trama 445 que comprende 4 octetos. El campo de informacion por TID 430, el campo de control de secuencia inicial 435 y el mapa de bits de ACK de bloques 440 se repiten en la trama para cada TID para el que se utiliza la trama de ACK de bloques 400 para confirmar los paquetes. Ademas, el campo de control de ACK de bloques 425 comprende un sub-campo de polftica de ACK de bloques, un sub-campo de identificador de trafico (TID) multiple, un sub-campo de mapa de bits comprimido, un sub-campo reservado y un sub-campo de TID / NumTIDs similar a la trama de ACK de bloques 300. El campo de control de secuencia inicial 435 comprende un sub-campo reservado y un sub-campo de numero de secuencia inicial similar a la trama de ACK de bloques 300. El campo de informacion por TID 430 comprende un sub-campo reservado y un sub-campo de TID.
La FIG. 5 ilustra un ejemplo de una trama basica comprimida de ACK de bloques 500. En particular, la trama basica comprimida de ACK de bloques 500 se ilustra como la trama basica de ACK de bloques 300, con tachadura en los campos que no se pueden incluir en la trama basica comprimida de ACK de bloques 500. Por ejemplo, uno o mas de los siguientes campos de la trama basica de ACK de bloques 300 pueden excluirse de la trama basica comprimida de ACK de bloques 500, reduciendo asf el tamano de la trama basica comprimida de ACK de bloques 500, en comparacion con la trama basica de ACK de bloques 300: el campo de duracion 310, el sub-campo de TID multiple 354, el sub-campo reservado 358 y el sub-campo de TID / NumTIDs 359. Ademas, o como alternativa, el campo de mapa de bits de ACK de bloques 335 puede incluir un mapa de bits comprimido, por ejemplo, mediante la compresion de una de las tecnicas descritas en el presente documento y, por lo tanto, la longitud del campo de mapa de bits de ACK de bloques 335 puede ser variable y/o estar basada en la tecnica usada. Ademas, o como alternativa, el campo de direccion del receptor 315 y/o el campo de direccion del transmisor 320 pueden ser reducidos de 6 octetos de longitud a 2 octetos de longitud, mediante el uso de una direccion local (por ejemplo, identificador de acceso (AID)) en lugar de una direccion global (por ejemplo, direccion de control de acceso al medio (MAC)). Ademas, o como alternativa, el sub-campo reservado 362 puede reducirse a 2 bits. Un valor de 00 del sub- campo reservado 362, en un aspecto de este tipo, puede indicar que la longitud del campo de mapa de bits de ACK de bloques 335 es 0, y otros valores pueden indicar el procedimiento de compresion utilizado para el mapa de bits almacenado en el campo de mapa de bits de ACK de bloques 335. Ademas, o como alternativa el sub-campo de numero de secuencia inicial 364 puede reducirse incluyendo unicamente los bits menos significativos del numero de secuencia inicial. La longitud del numero de secuencia inicial reducido puede depender del tamano del campo de mapa de bits de ACK de bloques 335. Como ejemplo, un numero de secuencia de 6 bits de longitud es suficiente para distinguir entre los multiplos de bloques de 64 MPDU.
La FIG. 6 ilustra un ejemplo de una trama comprimida de ACK de bloques 600, compatible con ACK basica y TID multiple. En particular, la trama comprimida de ACK de bloques 600 se ilustra como la trama de ACK de bloques de TID multiple 400 con tachadura sobre los campos que no pueden incluirse en la trama comprimida de ACK de bloques 600. Por ejemplo, uno o mas de los siguientes campos de la trama de ACK de bloques de TID multiple 400 pueden excluirse de la trama comprimida de ACK de bloques 600, reduciendo asf el tamano de la trama comprimida de ACK de bloques 600, en comparacion con el de la trama de ACK de bloques de TID multiple 400: el campo de duracion 410, el sub-campo reservado del campo de control de ACK de bloques 425 y el sub-campo reservado del campo de informacion por TID 430. Ademas, o como alternativa, el campo de mapa de bits de ACK de bloques 440 puede incluir un mapa de bits comprimido, tal como mediante la compresion de una de las tecnicas descritas en el presente documento y, por lo tanto, la longitud del campo de mapa de bits de ACK de bloques 440 puede ser variable y/o estar basada en la tecnica usada. Ademas, o como alternativa, el campo de direccion del receptor 415 y/o el campo de direccion del transmisor 420 pueden ser reducidos de 6 octetos de longitud de 2 octetos de longitud, mediante el uso de una direccion local (por ejemplo, identificador de acceso (AID)) en lugar de una direccion global (por ejemplo, direccion de control de acceso al medio (MAC)). Ademas, o como alternativa, el sub-campo reservado del campo de control de secuencia inicial 435 se puede reducir a 2 bits. Un valor de 00 del sub-campo reservado, en un aspecto de este tipo, puede indicar que la longitud del campo de mapa de bits de ACK de bloques 440 del TID correspondiente es 0, y otros valores pueden indicar el procedimiento de compresion utilizado para el mapa de bits almacenado en el campo de mapa de bits de ACK de bloques 440 del TID correspondiente. Ademas, o como alternativa, el sub-campo de control de secuencia inicial 435 se puede reducir al incluir unicamente los bits menos significativos del numero de secuencia inicial. La longitud del numero de secuencia inicial reducido depende del tamano del campo de mapa de bits de ACK de bloques 440. Como ejemplo, un numero de secuencia de 6 bits de longitud es suficiente para distinguir entre los multiplos de bloques de 64 MPDU.
En algunos aspectos, una trama de ACK de bloques, como las tramas 300 y 400, puede comprimirse desplazando algunos campos desde la cabecera de MAC de las tramas 300 y 400 a una cabecera de capa ffsica (PHY). Por ejemplo, el campo de duracion 310 y/o el campo de control de trama 305 de la trama 300 pueden retirarse de la cabecera de MAC y se pueden anadir 6 bits como un identificador de paquete de bloque (PID) a la cabecera de la PHY. Por ejemplo, los 6 bits pueden comprender los 6 bits menos significativos del sub-campo del numero de secuencia inicial 364, donde el tamano del numero de secuencia inicial depende del tamano de ACK de bloques (64 bits en un ejemplo). El uso de 6 bits puede ser beneficioso, ya que reduce la probabilidad de falsos positivos con
5
10
15
20
25
30
35
40
45
50
55
60
65
otras tramas de ACK de bloques concurrentes y/o transmisiones de OBSS. De manera similar, el campo de duracion 410 y/o el campo de control de trama 405 de la trama 400 pueden eliminarse. Ademas, o como alternativa, el campo de control de ACK de bloques 325 de la trama 300 puede eliminarse de la cabecera de MAC y un sub-campo de polftica de ACK de bloques, de un unico bit, un sub-campo de mapa de bits comprimido, de un unico bit, y un sub- campo de control de compresion de 2 bits pueden anadirse a la cabecera de la PHY. Un valor de 00 del sub-campo de control de compresion, en un aspecto de este tipo, puede indicar que la longitud del campo de mapa de bits de ACK de bloques 335 es 0, y otros valores, pueden indicar el procedimiento de compresion utilizado para el mapa de bits almacenado en el campo de mapa de bits de ACK de bloques 335. De manera similar, el campo de control de ACK de bloques 425 de la trama 400 puede anadirse a la cabecera de la PHY.
En algunos aspectos, se pueden utilizar ciertos bits en un campo de senal (SIG) de una cabecera de PHY para almacenar informacion relacionada con una trama de ACK de bloques. Por ejemplo, la FIG. 11 ilustra un ejemplo de una cabecera de PHY 1100 que incluye informacion relacionada con una trama de ACK de bloques. El esquema de codificacion y modulacion (MCS), la comprobacion de redundancia cfclica (CRC) y los campos traseros de la cabecera de la PHY 1100 pueden estar compuestos por los mismos bits que una cabecera de PHY estandar. En algunos aspectos, un valor reservado para el campo MCS (por ejemplo, cualquiera de los valores de 10 a 15) se puede utilizar para indicar que la cabecera de pHy incluye informacion relacionada con una trama de ACK de bloques. En algunos aspectos, 22 bits del campo SIG de la cabecera de PHY 1100, que tienen un formato de
cabecera de PHY de 1 MHz, se pueden usar para almacenar informacion relacionada con una trama de ACK de
bloques. En algunos aspectos, 34 bits del campo SIG de la cabecera de PHY 1100, que tiene un formato de
cabecera de PHY de 2 MHz, se pueden usar para almacenar informacion relacionada con una trama de ACK de
bloques. La informacion que se puede almacenar utilizando los bits del campo SIG puede comprender uno o mas de los siguientes: un identificador de ACK de bloques, un numero de secuencia inicial (que puede estar incluido en un campo de control de secuencia inicial), un mapa de bits de ACK de bloques y/u otros campos adecuados. Estos campos pueden ser utilizados por el receptor para comunicar informacion adicional al transmisor (por ejemplo, mas datos, indicacion Doppler, bits de la trama de respuesta, etc.). En algunos aspectos, el identificador de ACK de bloques puede ser un numero de secuencia obtenido de la primera MPDU del bloque para el que se envfa la ACK de bloques, o de una trama de solicitud de ACK de bloques (BAR). Por ejemplo, en un modo de realizacion, el identificador de ACK de bloques puede obtenerse a partir de un campo de valor original de aleatorizador de la primera MPDU. En un modo de realizacion, el campo de identificador de ACK de bloques puede obtenerse a partir del valor original de aleatorizador de la A-MPDU para la que se envfa la ACK de bloques. En algunos aspectos, el numero de secuencia inicial incluido en la cabecera de PHY 1100 se puede basar en los bits menos significativos (LSB) de un numero de secuencia inicial. En un modo de realizacion, el numero de secuencia inicial se basa en la trama de BAR. En un modo de realizacion, el numero de secuencia puede basarse en la primera MPDU del bloque, o la A-MPDU. Por ejemplo, pueden utilizarse los 6 bits menos significativos para identificar el numero de secuencia inicial en una ventana de 64 MPDU.
En ciertos modos de realizacion, puede utilizarse el numero de secuencia inicial como un identificador de la trama. En algunos modos de realizacion, el numero de secuencia inicial puede ser el unico identificador de la ACK de bloques corta (es decir, puede que no haya un identificador de ACK de bloques). En algunos modos de realizacion, el numero de secuencia inicial y el identificador de ACK de bloques pueden identificar conjuntamente la trama. En algunos aspectos, un mapa de bits de bloques puede comprender 8 bits para un preambulo de PHY de 1 MHz. En algunos aspectos, un mapa de bits de bloques puede comprender 16 bits para un preambulo de PHY de 2 MHz. En algunos aspectos, el tamano del mapa de bits de bloques puede depender de la disponibilidad de bits en el campo SIG. En un modo de realizacion, el mapa de bits de bloques puede ser de menos de ocho (8) bits. En un modo de realizacion, el mapa de bits de bloques puede ser mayor que 8 bits.
Como se ha expuesto anteriormente, la fragmentacion de un paquete de datos se puede utilizar para la transmision de datos. Por ejemplo, la fragmentacion se puede utilizar para evitar la retransmision de tramas grandes. Por ejemplo, varias tramas fragmentadas pueden transmitirse durante la misma oportunidad de transmision (TXOP). Ademas, la fragmentacion puede utilizarse para transmitir grandes tramas en una TXOP para bajas velocidades de PHY (por ejemplo, puede enviarse un fragmento en una TXOP). En algunos aspectos, tales fragmentos pueden confirmarse mediante una ACK de bloques sin comprimir o multiples ACK, lo cual puede introducir sobrecarga.
En algunos aspectos, se puede utilizar una ACK de bloques comprimida (tambien denominada "corta") (por ejemplo, comprimida mediante cualquiera de los procedimientos descritos en el presente documento) para confirmar fragmentos. Por ejemplo, en algunos aspectos, se puede utilizar una ACK de bloques comprimida para confirmar hasta 16 fragmentos para una comunicacion de 2 MHz. En algunos aspectos, se puede utilizar una aCk de bloques comprimida para confirmar hasta 8 fragmentos para una comunicacion de 1 MHz.
En algunos aspectos, con el fin de distinguir entre una ACK de bloques comprimida que esta confirmando fragmentos y una ACK de bloques comprimida que esta confirmando multiples paquetes de datos, puede incluirse un campo de modalidad de ACK en la ACK de bloques. El campo de modalidad de ACK puede tener un primer valor que indica una modalidad de ACK de bloques (por ejemplo, indicando que la ACK de bloques esta confirmando multiples paquetes de datos) o un segundo valor que indica una modalidad de fragmento (por ejemplo, indicando que la ACK de bloques esta confirmando fragmentos). En algunos aspectos, si la ACK de bloques comprimida esta
5
10
15
20
25
30
35
40
45
50
55
60
65
confirmando fragmentos, el numero de secuencia inicial de la ACK de bloques comprimida puede ser el numero de secuencia de la unidad de datos de servicio de MAC (MSDU) que esta siendo fragmentada. En algunos aspectos, el numero de secuencia inicial puede ser los bits menos significativos (LSB) del numero de secuencia de la MSDU que se esta fragmentando, mientras que el identificador de ACK de bloques puede ser los bits mas significativos (MSB) del numero de secuencia inicial. En otro aspecto, el identificador de la aCk de bloques puede obtenerse a partir del valor original de aleatorizador del primer fragmento de la MSDU que esta siendo fragmentada. Ademas, en algunos de dichos aspectos, el mapa de bits de bloques se puede usar para correlacionar con fragmentos en lugar de los diferentes paquetes. En otro aspecto, el originador de un paquete y el respondedor pueden acordar fijar un tamano de memoria intermedia en 1 trama durante el intercambio de solicitudes y / o respuestas de agregado de ACK de bloques (ADDBA). En este caso, puede realizarse la discriminacion entre una modalidad de ACK de bloques y una modalidad de fragmento, basandose en un tamano de memoria intermedia. A modo de ejemplo, si se acordo fijar el tamano de memoria intermedia en 1, entonces la siguiente ACK de bloques se interpretara como una ACK de fragmentos. En cambio, si el tamano de memoria intermedia es mayor que 1, la ACK de bloques se interpreta como una referencia a varios paquetes.
En otro modo de realizacion, una confirmacion puede identificarse como una ACK de bloques o una ACK de fragmentos, en base a la informacion que se encuentra en una trama de datos que se esta confirmando. Si la trama de datos que se esta confirmando indica que se requiere una ACK de bloques y el numero de fragmentos asociado a la trama de datos es mayor que 0, entonces la confirmacion de respuesta puede interpretarse como una ACK de fragmentos. Si el numero de fragmentos de la trama de datos es cero (0), una trama de respuesta puede interpretarse como una ACK de bloques.
En un modo de realizacion, una trama de ACK corta se puede distinguir de manera similar. En este modo de realizacion, las tramas de respuesta de control que confirman las tramas, incluyendo la ACK corta, la ACK de bloques corta y ACK de fragmentos corta, pueden identificarse en base a un valor de MCS reservado. La ACK corta de respuesta de control, la ACK de bloques corta y la ACK de fragmentos corta se pueden distinguir en base a una trama de datos que se esta confirmando. Si la trama de datos indica que requiere una confirmacion, la respuesta de control puede interpretarse como una confirmacion para la trama de datos individual. Si la trama de datos indica que se requiere una confirmacion de bloques, la trama de respuesta de control puede interpretarse como una confirmacion para multiples tramas.
Diversas tecnicas para la compresion de un mapa de bits de ACK de bloques, tales como el campo de mapa de bits de ACK de bloques 335 o el campo de mapa de bits de ACK de bloques 440, en cualquier tipo adecuado de trama de ACK de bloques, tales como cualquiera de las descritas en el presente documento, se describen en el presente documento.
En un aspecto, un mapa de bits de ACK de bloques se comprime enviando solo informacion sobre que paquetes no se reciben correctamente. Por ejemplo, un mapa de bits puede tener un tamano de 8 octetos (por ejemplo, en los octetos de la secuencia 0 a 7) y tener un bit correspondiente a cada paquete para el cual se requiere respuesta. Un valor de 1 para un bit puede indicar que el correspondiente paquete no se recibe correctamente. Un valor de 0 para un bit puede indicar que el correspondiente paquete se recibe correctamente. En lugar de enviar todos los valores "0" y "1" para cada bit del mapa de bits en el campo de mapa de bits de ACK de bloques, puede incluirse un desplazamiento para indicar donde se produce el primer valor "1" o "0", y a continuacion tambien puede incluirse el mapa de bits desde el primer valor "1" o "0" al ultimo valor "1" o "0" que se produzca. Por ejemplo, el mapa de bits puede comprender 8 octetos con el valor (00000000 10001010 01011100 00000000 00000000 00000000 00000000 00000000). Por consiguiente, donde se indican los valores "1" primero y ultimo, el primer bit con un valor de "1" no se encuentra hasta el octeto 1. Ademas, el ultimo bit con un valor de '1' se encuentra en el octeto 2. Por consiguiente, con el fin de comprimir el mapa de bits, se selecciona un valor de desplazamiento correspondiente al numero de octeto donde se produce el primer valor de '1', que es el octeto 1 (001 en binario). El numero de bits utilizados para el desplazamiento depende del numero de octetos a los cuales corresponde el mapa de bits. Por ejemplo, un mapa de bits de 8 octetos requerirfa al menos 8 numeros unicos para indizar cada octeto; por lo tanto, 3 bits se utilizan para representar el desplazamiento. Entonces, un mapa de bits de los octetos que incluyen un valor de 1 se incluye en el campo de mapa de bits de ACK de bloques, que incluye los octetos 1 y 2. Por consiguiente, un receptor del campo de mapa de bits de ACK de bloques puede utilizar el desplazamiento para determinar que cualquier octeto antes del octeto indicado por el desplazamiento y cualquier octeto despues del desplazamiento, mas cualquier octeto adicional incluido en el mapa de bits de ACK de bloques, incluyen todos los 0 o los 1. Los octetos restantes tienen los valores indicados en el mapa de bits. Por lo tanto, en el ejemplo anterior, el mapa de bits de 8 octetos se comprime a 18 bits. Un bit adicional puede incluirse en la cabecera de la PHY para indicar si la compresion se lleva a cabo de acuerdo a las posiciones de los 1 o a las posiciones de los 0.
En otro aspecto, la longitud del mapa de bits de ACK de bloques se puede reducir en longitud, tal como en 1, 2, 3, o 4 octetos, lo cual significa que un menor numero de paquetes pueden ser confirmados por cada trama de ACK de bloques.
En otro aspecto, los mapas de bits de ACK de bloques pueden comprimirse usando procedimientos de codificacion de longitud de rachas (RLE). Por ejemplo, el campo de mapa de bits de ACK de bloques puede incluir un primer sub-
5
10
15
20
25
30
35
40
45
50
55
60
65
campo de bits, de 1 bit, que indica si el primer bit es un "1" o un "0". A continuacion, el campo de mapa de bits de ACK de bloques puede incluir uno o mas sub-campos de longitud de secuencia, cada uno con una longitud de N bits (por ejemplo, 10 o 6 bits). El primero de los sub-campos de longitud de secuencia indica el numero de bits, en la secuencia que comienza en el primer bit, que son los mismos que el primer bit. El siguiente sub-campo de longitud de secuencia indica el numero de bits, en la secuencia a partir del numero de bits despues del sub-campo de longitud de secuencia anterior, que son de valor opuesto a los bits del anterior sub-campo de longitud de secuencia. Por ejemplo, la secuencia 11111100000000000110 puede codificarse con un "1" en el primer sub-campo de bits, ya que el primer bit es un "1". El primer sub-campo de longitud de secuencia puede tener un valor de 6, ya que hay 6 bits "1". El segundo sub-campo de longitud de secuencia puede tener un valor de 11, ya que hay 11 bits "0" que tienen el valor opuesto a los bits "1" anteriores. El tercer sub-campo de longitud de secuencia puede tener un valor de 2, ya que hay 2 bits "1" que tienen el valor opuesto a los bits "0" anteriores. El cuarto sub-campo de longitud de secuencia puede tener un valor de 1, ya que hay 1 bit "0" que tiene el valor opuesto a los bits "1" anteriores. Un receptor del campo de mapa de bits de aCk de bloques puede entonces recrear el mapa de bits utilizando estos valores.
En otro aspecto, el campo de mapa de bits de ACK de bloques puede incluir uno o mas elementos de sub-mapa de bits. Cada elemento puede comprender un sub-campo de desplazamiento (por ejemplo, 10 bits), un sub-campo reservado (por ejemplo, 1 bit), un sub-campo de longitud (por ejemplo, 3 bits), y un sub-campo de mapa de bits (por ejemplo, de 0 a 7 octetos). Varios de estos elementos de sub-mapa de bits pueden incluirse en el campo de mapa de bits de ACK de bloques para indicar los valores del mapa de bits de ACK de bloques de la forma siguiente. Cada elemento de sub-mapa de bits puede indicar los valores para un subconjunto o una parte del mapa de bits de ACK de bloques. El sub-campo de desplazamiento puede indicar el desplazamiento en bits desde el principio del mapa de bits de ACK de bloques para el cual incluye valores el elemento de sub-mapa de bits. El sub-campo reservado se puede utilizar para indicar si el mapa de bits en el sub-campo de mapa de bits del elemento de sub-mapa de bits se invierte o no. El sub-campo de longitud puede indicar la longitud en octetos del mapa de bits en el sub-campo de mapa de bits del elemento de sub-mapa de bits. Una longitud de 0 puede indicar que el elemento de sub-mapa de bits no incluye un sub-campo de mapa de bits y, por lo tanto, indica en cambio el valor del mapa de bits en la posicion del valor del sub-campo de desplazamiento. El sub-campo de mapa de bits puede incluir los valores del mapa de bits, a partir del valor del sub-campo de desplazamiento y continuando durante la longitud en el sub-campo de longitud. Ademas, si hay algun valor "0" trasero que sea parte del mapa de bits en el sub-campo de mapa de bits, puede omitirse del sub-campo de mapa de bits y, en su lugar, suponerse que es 0 de forma implfcita. Por ejemplo, para una secuencia 1111000001010101100000000, los "1010101100000000" de la secuencia podrfan ser representados por un elemento de sub-mapa de bits que tenga un desplazamiento de 10, un valor reservado de 1, una longitud de 1 y un mapa de bits de "10101011". Cabe senalar que un aspecto de este tipo proporciona la flexibilidad de que una ACK pueda enviarse solo para una parte de los paquetes, a diferencia de todos los paquetes que deben ser confirmados por una ACK de bloques.
En otro aspecto, un mapa de bits de ACK de bloques puede codificarse a nivel de bloques. Por ejemplo, un mapa de bits de ACK de bloques se puede dividir en un cierto numero de bloques de la misma longitud (por ejemplo, 1 bloque para mapas de bits que tienen 8 octetos de longitud (un ejemplo de un mapa de bits corto) o 16 bloques para mapas de bits que tienen 128 octetos de longitud (un ejemplo de un mapa de bits largo)). Cada bloque puede dividirse ademas en sub-bloques (por ejemplo, de 1 octeto de longitud cada uno). Para los mapas de bits cortos, por lo tanto, cada bloque puede incluir un mapa de bits de bloques (por ejemplo, de 1 octeto de longitud) y uno o mas mapas de bits de sub-bloques (por ejemplo, cada uno de 1 octeto de longitud). El mapa de bits de bloques puede indicar para que sub-bloques del bloque se incluye un mapa de bits de sub-bloques. Por ejemplo, el mapa de bits de bloques puede incluir 8 bits en secuencia. Los 8 bits en la secuencia pueden corresponder a una secuencia de 8 sub- bloques. Si cualquier sub-bloque tiene un valor distinto de cero, puede incluirse un mapa de bits de sub-bloques para ese sub-bloque y el bit correspondiente en el mapa de bits de bloques puede tener un valor de "1". Si el valor de todos los bits de un sub-bloque es "0", el bit correspondiente en el mapa de bits de bloques puede tener un valor de "0" y no se incluye ningun mapa de bits de sub-bloques para ese sub-bloque. El mapa de bits de sub-bloques incluye los valores de bit para un sub-bloque dado. Si no hay ningun mapa de bits de sub-bloques para un sub-bloque dado, se supone que el valor de todos los bits de ese sub-bloque es 0. Por consiguiente, cada bloque es representado mediante un mapa de bits de bloques y uno o mas mapas de bits de sub-bloques.
Para un mapa de bits largo, cada bloque puede representarse mediante un desplazamiento de bloque, un control de bloque, un mapa de bits de bloques y uno o mas mapas de bits de sub-bloques. El campo de desplazamiento de bloque (por ejemplo, de 4 bits de longitud) puede indicar que bloque, control de bloque, mapa de bits de bloques, y uno o mas mapas de bits de sub-bloques tienen informacion. El control de bloque puede indicar como deberfa interpretarse el mapa de bits de bloques y uno o mas mapas de bits de sub-bloques. Por ejemplo, un valor del control de bloque puede indicar codificacion de mapa de bits "normal", tal como la codificacion de mapa de bits descrita anteriormente, en la que el mapa de bits de bloques indica para que sub-bloques del bloque se incluye un mapa de bits de sub-bloques, y el mapa de bits de sub-bloques para los sub-bloques incluidos incluye los valores de bit para un sub-bloque dado. Otro de los valores del control de bloque puede indicar una codificacion de mapa de bits de "paquete unico", donde hay un estado para solo 1 paquete en este bloque en particular. Por consiguiente, el mapa de bits de bloques se utiliza para indicar la posicion del paquete y el mapa de bits de sub-bloques no esta presente. Otro de los valores del control de bloque puede indicar una codificacion de mapa de bits "inversa". El
5
10
15
20
25
30
35
40
45
50
55
60
65
esquema de codificacion puede ser el mismo que la codificacion de mapa de bits "normal", excepto que luego el mapa de bits resultante debena ser invertido (todos los valores "0" a "1", y viceversa).
La FIG. 14A ilustra un ejemplo de una trama de confirmacion (ACK) de bloques de paquetes de datos nulos 1400A. En algunos aspectos, la trama de ACK de bloques de paquetes de datos nulos 1400A incluye un campo de informacion de control. En algunos aspectos, como se ha descrito anteriormente con respecto a la FIG. 11, ciertos bits en un campo de senal (SIG) de una cabecera de la capa PHY se pueden usar para almacenar informacion relacionada con la trama de ACK de bloques de paquetes de datos nulos 1400A. En algunos aspectos, 22 bits de la trama de ACK de bloques de paquetes de datos nulos 1400A, que tiene un formato de 1 MHz, se pueden usar para almacenar informacion relacionada con la trama de ACK de bloques 1400A. La informacion que se puede almacenar utilizando los bits de la trama de ACK de bloques de paquetes de datos nulos 1400A puede comprender uno o mas de los siguientes: un campo de identificador (ID) de aCk de bloques 1402A, un campo de control de secuencia inicial 1404A y un campo de mapa de bits de ACK de bloques 1406A. En algunos aspectos, el campo de identificador de ACK de bloques 1402A, el campo de control de secuencia inicial 1404A y el campo de mapa de bits de ACK de bloques 1406A se incluyen en un campo de informacion de control y/o una cabecera de capa PHY (por ejemplo, en un campo SIG). En algunos aspectos, el campo de identificador de ACK de bloques 1402 puede incluir dos bits, el campo de control de secuencia inicial 1404A puede incluir doce bits y el campo de mapa de bits de ACK de bloques puede incluir 8 bits. Estos campos pueden ser utilizados por el receptor de la trama para comunicar informacion adicional al transmisor (por ejemplo, mas datos, indicacion Doppler, bits de trama de respuesta, etc.).
En algunos aspectos, el campo de identificador de ACK de bloques 1402A incluye el identificador de la trama de ACK de bloques de paquetes de datos nulos 1400A. En algunos aspectos, el campo de identificador de ACK de bloques 1402a se obtiene a partir de un primer paquete de un bloque para el cual se esta enviando la trama de confirmacion de bloques. En algunos aspectos, el campo de identificador de ACK de bloques 1402A se obtiene a partir de una trama de solicitud de ACK de bloques. Por ejemplo, el campo de identificador de ACK de bloques1402A puede incluir dos bits y puede fijarse en los dos bits menos significativos del valor original de aleatorizador de una unidad de datos (por ejemplo, unidad de datos de servicio de capa ffsica (PSDU), unidad de datos de protocolo de MAC (MPDU), unidad de datos de servicio de MAC (MSDU), etc.). Por ejemplo, el campo de identificador de ACK de bloques 1402A puede fijarse en los dos bits menos significativos del valor original de aleatorizador de la PSDU que lleva o bien una solicitud de ACK de bloques o bien una MPDU agrupada solicitante (A-MPDU), que puede actuar como una solicitud de ACK de bloques impifcita.
En algunos aspectos, el campo de control de la secuencia inicial 1404A puede incluir el numero de secuencia de la primera MSDU o A-MSDU para la cual se envfa la ACK de bloques de paquetes de datos nulos 1400A. Por ejemplo, el numero de secuencia puede incluir un numero de secuencia inicial que representa la posicion del numero de secuencia mas baja en el mapa de bits incluido en el campo de mapa de bits de ACK de bloques 1406A. En algunos aspectos, el campo de control de secuencia inicial 1404A puede incluir una funcion del numero de secuencia de la primera MSDU o A-MSDU para la cual se envfa la ACK de bloques de paquetes de datos nulos 1400A. En algunos aspectos, el campo de control de secuencia inicial 1404A tiene doce bits de longitud con el fin de contener el numero de secuencia o la funcion del numero de secuencia.
En algunos aspectos, el campo de mapa de bits de ACK de bloques 1406A de la trama de ACK de bloques de paquetes de datos nulos 1400a puede utilizarse para indicar el estado recibido de un numero determinado de las MSDU y/o A-MSDU. Por ejemplo, el campo de mapa de bits de ACK de bloques 1406A puede tener ocho bits de longitud y puede utilizarse para indicar el estado recibido de hasta ocho MSDU y/o A-MSDU. Cada bit que es igual a un "1" en el mapa de bits de ACK de bloques confirma la recepcion con exito de una unica MSDU o A-MSDU en el orden de un numero de secuencia, con el primer bit del mapa de bits de ACK de bloques correspondiente a la MSDU o A -MSDU con el numero de secuencia que coincide con el valor del campo de control de secuencia inicial 1404A.
La FIG. 14B ilustra un ejemplo de una trama de confirmacion (ACK) de bloques de paquetes de datos nulos 1400B. En algunos aspectos, la trama de ACK de bloques de paquetes de datos nulos 1400B incluye un campo de informacion de control. En algunos aspectos, como se ha descrito anteriormente con respecto a la FIG. 11, ciertos bits en un campo de senal (SIG) de una cabecera de la capa PHY se pueden usar para almacenar informacion relacionada con la trama de ACK de bloques de paquetes de datos nulos 1400B. En algunos aspectos, 34 bits de la trama de ACK de bloques de paquetes de datos nulos 1400B, que tiene un formato de 2 MHz, se pueden usar para almacenar informacion relacionada con la trama de ACK de bloques 1400B. La informacion que se puede almacenar usando los bits de la trama de ACK de bloques de paquetes de datos nulos 1400B puede comprender uno o mas de los siguientes: un campo de identificador (ID) de ACK de bloques 1402B, un campo de control de secuencia inicial de 1404B, un campo reservado 1406B y un campo de mapa de bits de ACK de bloques 1408B. En algunos aspectos, el campo de identificador de aCk de bloques 1402B, el campo de control de secuencia inicial 1404B, el campo reservado 1406B y el campo de mapa de bits de ACK de bloques 1408B estan incluidos en un campo de informacion de control y/o una cabecera de capa PHY (por ejemplo, en un campo de SIG). En algunos aspectos, el campo de identificador de ACK de bloque 1402B puede incluir cinco o seis bits, el campo de control de secuencia inicial 1404B puede incluir doce bits, el campo reservado 1406B puede incluir uno o ningun bit, y el campo de mapa de bits de ACK de bloques puede incluir dieciseis bits. Los bits reservados pueden ser utilizados por el receptor de la trama para comunicar informacion adicional para el transmisor (por ejemplo, mas datos, indicacion Doppler, bits de
5
10
15
20
25
30
35
40
45
50
55
60
65
trama de respuesta, etc.).
En algunos aspectos, el campo de identificador de ACK de bloques 1402B incluye el identificador de la trama de ACK de bloques de paquetes de datos nulos 1400B. En algunos aspectos, el campo de identificador de ACK de bloques 1402b se obtiene a partir de un primer paquete de un bloque para el cual se esta enviando la trama de confirmacion de bloques. En algunos aspectos, el campo de identificador de ACK de bloques 1402B se obtiene a partir de una trama de solicitud de ACK de bloques. Por ejemplo, el campo de identificador de ACK de bloques 1402B puede incluir cinco o seis bits y puede fijarse en los cinco o seis bits menos significativos del valor original de aleatorizador de una unidad de datos (por ejemplo, unidad de datos de servicio de capa ffsica (PSDU), unidad de datos de protocolo de MAC (MPDU), unidad de datos de servicio de MAC (MSDU), etc.). Por ejemplo, el campo de identificador de ACK de bloques 1402B se puede fijar en los cinco o seis bits menos significativos del valor original de aleatorizador de la PSDU que lleva o bien una solicitud de ACK de bloques o bien una MPDU agrupada solicitante (A-MPDU), que puede actuar como una solicitud de ACK de bloques implfcita.
En algunos aspectos, el campo de control de la secuencia inicial 1404B puede incluir el numero de secuencia de la primera MSDU o A-MSDU para la cual se envfa la ACK de bloques de paquetes de datos nulos 1400B. Por ejemplo, el numero de secuencia puede incluir un numero de secuencia inicial que representa la posicion del numero de secuencia mas baja en el mapa de bits incluido en el campo de mapa de bits de ACK de bloques 1408B. En algunos aspectos, el campo de control de secuencia inicial 1404B puede incluir una funcion del numero de secuencia de la primera MSDU o A-MSDU para la cual se envfa la ACK de bloques de paquetes de datos nulos 1400B. En algunos aspectos, el campo de control de secuencia inicial 1404B tiene doce bits de longitud con el fin de contener el numero de secuencia o la funcion del numero de secuencia.
En algunos aspectos, el campo reservado 1406B tiene una longitud de un bit. El campo reservado 1406B puede incluir un valor reservado que puede utilizarse para indicar que la trama incluye informacion relacionada con una trama de ACK de bloques.
En algunos aspectos, el campo de mapa de bits de ACK de bloques 1408B de la trama de ACK de bloques de paquetes de datos nulos 1400b puede utilizarse para indicar el estado recibido de un numero determinado de las MSDU y/o A-MSDU. Por ejemplo, el campo de mapa de bits de ACK de bloques 1408B puede tener dieciseis bits de longitud y puede utilizarse para indicar el estado recibido de hasta dieciseis MSDU y/o A-MSDU. Cada bit que es igual a un "1" en el mapa de bits de ACK de bloques confirma la recepcion con exito de una unica MSDU o A-MSDU en el orden de un numero de secuencia, con el primer bit del mapa de bits de ACK de bloques correspondiente a la MSDU o A -MSDU con el numero de secuencia que coincide con el valor del campo de control de secuencia inicial 1404B.
En algunos aspectos, una STA originaria puede enviar un bloque de datos en una unica A-MPDU, teniendo cada MPDU de datos un campo de polftica de ACK fijado en ACK normal, lo cual implica una solicitud de ACK de bloques (una solicitud de ACK de bloques implfcita). En respuesta al envfo de la A-MPDU, la STA originaria esperara recibir una respuesta de ACK de bloques desde un destinatario si al menos una trama de datos es recibida por el destinatario sin error. Si la respuesta de ACK de bloques recibida esta en el formato de la trama de ACK de bloques 1400A o 1400B, la STA originaria puede aceptar la trama de ACK de bloques como correctamente recibida si el valor del campo de identificador de ACK de bloques 1402A o 1402B es igual a los dos (para el campo de identificador de ACK de bloques 1402A) o a los cinco o seis (para el campo de identificador de ACK de bloques 1402B) bits menos significativos del sub-campo de valor original de aleatorizador en el campo de servicio de la A- MPDU transmitida inmediatamente antes y el numero de secuencia inicial incluido en el campo de control de secuencia inicial 1404A o 1404B es igual al numero de secuencia de la A-MSDU para la cual se envfa la ACK de bloques de paquetes de datos nulos 1400A o 1400B. De lo contrario, la STA originaria puede considerar que la trama de ACK de bloques de paquetes de datos nulos 1400A o 1400B se ha perdido.
En algunos aspectos, una STA originaria puede enviar una trama de solicitud de ACK de bloques para solicitar una ACK de bloques inmediata (una solicitud de ACK de bloques explfcita). Por ejemplo, si la trama de ACK de bloques 1400A o 1400B se considera perdida por parte de la sTa originaria, la STA originaria puede enviar la solicitud de ACK de bloques. Como otro ejemplo, si la trama de ACK de bloques 1400A o 1400B se considera perdida por parte de la STA originaria, la STA originaria puede retransmitir las tramas de datos para implicar una solicitud de ACK de bloques. En respuesta al envfo de trama de solicitud de ACK de bloques, la STA originaria esperara recibir una respuesta ACK de bloques desde el receptor. Si la respuesta de la ACK de bloques recibida esta en el formato de la trama de ACK de bloques 1400A o 1400B, la STA originaria puede aceptar la trama de ACK de bloques como correctamente recibida, si el valor del campo de identificador de ACK de bloques 1402A o 1402B es igual a los dos (para el campo de identificador de ACK de bloques 1402A) o a los cinco o seis (para el campo de identificador de ACK de bloques 1402B) bits menos significativos del sub-campo de valor original de aleatorizador en el campo de servicio de la trama de solicitud de ACK de bloques transmitida inmediatamente antes y el numero de secuencia inicial incluido en el campo de control de la secuencia inicial 1404A o 1404B es igual al valor del sub-campo del numero de secuencia inicial en el campo de control de secuencia inicial de ACK de bloques de la trama de solicitud de ACK de bloques. De lo contrario, la STA originaria puede considerar que la trama de ACK de bloques de paquetes de datos nulos 1400A o 1400B se ha perdido.
5
10
15
20
25
30
35
40
45
50
55
60
65
La FIG. 7 ilustra un aspecto de un procedimiento 700 para transmitir una ACK de bloques comprimida. La ACK de bloques se puede comprimir en base a las ensenanzas en este documento. La ACK de bloques se puede generar, ya sea en el AP 104 o en la STA 106, y transmitir a otro nodo en la red inalambrica 100. Aunque el procedimiento 700 se describe a continuacion con respecto a los elementos del dispositivo inalambrico 202r, los medianamente expertos en la tecnica apreciaran que pueden utilizarse otros componentes para implementar una o mas de las etapas descritas en el presente documento.
En el bloque 704, se reciben uno o mas paquetes. En el bloque 706, se genera una ACK de bloques que se comprime utilizando una o mas de las tecnicas descritas en el presente documento (por ejemplo, comprimiendo el tamano de las ACK de bloques y/o comprimiendo mapas de bits en las ACK de bloques). La generacion puede ser realizada por el procesador 204 y/o el dSp 220, por ejemplo.
A partir de entonces, en el bloque 708, la ACK de bloques se transmite de forma inalambrica. La transmision puede ser realizada por el transmisor 210, por ejemplo.
La FIG. 8 muestra un diagrama de bloques funcional de un dispositivo inalambrico ejemplar 800 que puede emplearse en el sistema de comunicacion inalambrica 100 El dispositivo 800 comprende un modulo de recepcion 804 para recibir paquetes. El modulo de recepcion 804 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 704 ilustrado en la FlG. 7. El modulo de recepcion 804 puede corresponder a uno o mas entre el procesador 204 y el receptor 212. El dispositivo 800 comprende ademas un modulo de generacion 806 para generar una ACK de bloques. El modulo de generacion 806 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 706 ilustrado en la FIG. 7. El modulo de generacion 806 puede corresponder a uno o mas entre el procesador 204 y el DSP 220. El dispositivo 800 comprende ademas un modulo de transmision 808 para transmitir de forma inalambrica el paquete generado. El modulo de transmision 808 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 708 ilustrado en la FlG. 7. El modulo de transmision 808 puede corresponder al transmisor 210.
La FIG. 9 ilustra un aspecto de un procedimiento 900 para recibir y procesar una ACK de bloques. El procedimiento 900 puede utilizarse para recibir y procesar cualquier tipo de ACK de bloques descrito en el presente documento. El paquete puede ser recibido en el AP 104 o la STA 106 desde otro nodo en la red inalambrica 100. Aunque el procedimiento 900 se describe a continuacion con respecto a los elementos del dispositivo inalambrico 202t, los medianamente expertos en la tecnica apreciaran que pueden utilizarse otros componentes para implementar una o mas de las etapas descritas en el presente documento.
En el bloque 902, en una comunicacion inalambrica se transmiten uno o mas paquetes. La transmision puede ser realizada por el transmisor 210, por ejemplo.
En el bloque 904, se recibe una ACK de bloques en base a los paquetes transmitidos. La recepcion puede ser realizada por el receptor 212, por ejemplo.
Ademas, en el bloque 906, el dispositivo inalambrico 202t procesa la ACK de bloques. El procesamiento puede ser realizado por el procesador 204, el detector de senales 218 y/o el DSP 220, por ejemplo.
La FIG. 10 muestra un diagrama de bloques funcional de otro dispositivo inalambrico ejemplar 1000 que puede emplearse dentro del sistema de comunicacion inalambrica 100. El dispositivo 1000 comprende un modulo de transmision 1002 para la transmision de uno o mas paquetes. El modulo de transmision 1002 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 902 ilustrado en la FIG. 9. El modulo de transmision 1002 puede corresponder a uno o mas entre el procesador 204 y el transmisor 210. El dispositivo 1000 comprende ademas un modulo de recepcion 1004 para recibir de forma inalambrica una ACK de bloques. El modulo de recepcion 1004 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 904 ilustrado en la FIG. 9. El modulo de recepcion 1004 puede corresponder al receptor 212. El dispositivo 1000 comprende ademas un modulo de procesamiento 1006 para procesar la ACK de bloques. El modulo de procesamiento 1006 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 906 ilustrado en la FIG. 9. El modulo de procesamiento 1006 puede corresponder a uno o mas entre el procesador 204, el detector de senales 218 y el DSP 220.
La FIG. 12 ilustra un aspecto de un procedimiento 1200 de comunicacion en una red inalambrica. Aunque el procedimiento 1200 se describe a continuacion con respecto a los elementos del dispositivo inalambrico 202, los medianamente expertos en la tecnica apreciaran que pueden utilizarse otros componentes para implementar una o mas de las etapas descritas en el presente documento.
En el bloque 1204, el procedimiento incluye la generacion de una trama comprimida de confirmacion de bloques, que comprende un mapa de bits, indicando el mapa de bits la recepcion de una pluralidad de fragmentos de una
5
10
15
20
25
30
35
40
45
50
55
60
65
unica unidad de datos. Por consiguiente, la confirmacion (ACK) de bloques comprimida se puede utilizar para confirmar fragmentos de una unidad de datos (por ejemplo, una MSDU). Por ejemplo, se puede utilizar una ACK de bloques comprimida para confirmar hasta 16 fragmentos de una unidad de datos para una comunicacion de 2 MHz. En otro ejemplo, se puede utilizar una ACK de bloques comprimida para confirmar hasta 8 fragmentos de una unidad de datos para una comunicacion de 1 MHz. En algunos aspectos, la generacion de la trama comprimida de confirmacion de bloques comprende incluir uno o mas campos de la trama comprimida de confirmacion de bloques en una cabecera de capa ffsica. La generacion puede ser realizada por el procesador 204 y/o el DSP 220, por ejemplo. En el bloque 1206, el procedimiento incluye la transmision de la trama comprimida de confirmacion de bloques. La transmision puede ser realizada por el transmisor 210, por ejemplo.
En algunos aspectos, la trama comprimida de ACK de bloques puede comprender ademas un campo de modalidad de ACK que indica que la trama comprimida de ACK de bloques es de un tipo de trama comprimida de ACK de bloques. Por ejemplo, el campo de modalidad de ACK puede estar incluido en la ACK de bloques, con el fin de distinguir entre una ACK de bloques comprimida que esta confirmando fragmentos y una ACK de bloques comprimida que esta confirmando multiples unidades o paquetes de datos. El campo de modalidad de ACK puede tener un primer valor que indica una modalidad de ACK de bloques (por ejemplo, indicando que la ACK de bloques esta confirmando multiples unidades o paquetes de datos), o un segundo valor que indica una modalidad de fragmento (por ejemplo, indicando que la AcK de bloques esta confirmando fragmentos).
En algunos aspectos, la trama comprimida de ACK de bloques puede comprender ademas un numero de secuencia inicial de la aCk de bloques comprimida. El numero de secuencia inicial de la ACK de bloques comprimida puede ser un numero de secuencia de la unica unidad de datos (por ejemplo, paquete, MSDU, etc.) que esta siendo fragmentada. Por ejemplo, si la ACK de bloques comprimida esta confirmando fragmentos, el numero de secuencia inicial de la ACK de bloques comprimida puede ser el numero de secuencia de la unidad de datos de servicio de MAC (MSDU) que esta siendo fragmentada. En algunos aspectos, el numero de secuencia inicial de la ACK de bloques comprimida puede ser un grupo de bits menos significativos de un numero de secuencia de la unica unidad de datos que esta siendo fragmentada. Por ejemplo, el numero de secuencia inicial puede ser los bits menos significativos del numero de secuencia de la MSDu que esta siendo fragmentada.
En algunos aspectos, la trama comprimida de ACK de bloques puede comprender ademas un identificador de ACK de bloques que incluye un grupo de bits mas significativos de un numero de secuencia de la unica unidad de datos que esta siendo fragmentada. Por ejemplo, el identificador de ACK de bloques puede ser los bits mas significativos del numero de secuencia inicial de la MSDU que esta siendo fragmentada. En algunos aspectos, la trama comprimida de ACK de bloques puede comprender ademas un identificador de ACK de bloques que se obtiene a partir de un valor original de aleatorizador de un primer fragmento de la unica unidad de datos que esta siendo fragmentada.
La FIG. 13 muestra un diagrama de bloques funcional de un dispositivo inalambrico ejemplar 1300 que puede emplearse dentro del sistema de comunicacion inalambrica 100. El dispositivo 1300 comprende un modulo de generacion de 1304 para la generacion de una trama comprimida de confirmacion de bloques que comprende un mapa de bits, indicando el mapa de bits la recepcion de una pluralidad de fragmentos de una unica unidad de datos. El modulo de generacion 1304 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 1204 ilustrado en la FIG. 12. El modulo de generacion 1304 puede corresponder a uno o mas entre el procesador 204 y el DSP 220. El modulo de generacion 1304 puede corresponder tambien a un compresor. El dispositivo 1300 comprende, ademas, un modulo de transmision 1306 para transmitir la trama comprimida de confirmacion de bloques. El modulo de transmision 1306 puede estar configurado para llevar a cabo una o mas de las funciones expuestas anteriormente con respecto al bloque 1206 ilustrado en la FIG. 12. El modulo de transmision 1306 puede corresponder al transmisor 210.
La FIG. 15 ilustra un aspecto de un procedimiento 1500 de comunicacion en una red inalambrica. Aunque el procedimiento 1500 se puede describir a continuacion con respecto a los elementos del dispositivo inalambrico 202, los medianamente expertos en la tecnica apreciaran que pueden utilizarse otros componentes para implementar una o mas de las etapas descritas en el presente documento.
En el bloque 1502, el procedimiento incluye la generacion de una trama de confirmacion de bloques que comprende una pluralidad de campos en el orden siguiente: un campo de identificador de confirmacion de bloques que incluye un identificador de la trama de confirmacion de bloques; un campo de control de secuencia inicial que incluye al menos uno entre un numero de secuencia y una funcion de un numero de secuencia de una unidad de datos para la cual se envio la trama de confirmacion de bloques; y un campo de mapa de bits de ACK de bloques que indica un estado recibido de un cierto numero de unidades de datos. Por ejemplo, la trama de confirmacion de bloques 1400A descrita anteriormente con respecto a la FIG. 14A puede ser generada por el procesador 204 y/o el DSP 220, por ejemplo. En el bloque 1504, el procedimiento incluye la transmision inalambrica de la trama de confirmacion de bloques. La transmision puede ser realizada por el transmisor 210, por ejemplo.
En algunos modos de realizacion, la trama de confirmacion de bloques incluye una trama de confirmacion de bloques de paquetes de datos nulos. En algunos modos de realizacion, el campo de identificador de confirmacion de
5
10
15
20
25
30
35
40
45
50
55
60
65
bloques, el campo de control de secuencia inicial y el campo de mapa de bits de confirmacion de bloques se incluyen en un campo de senal de una cabecera de capa ffsica.
En algunos modos de realizacion, la trama de confirmacion de bloques incluye 22 bits. Por ejemplo, el campo de identificador de confirmacion de bloques puede incluir dos bits, el campo de control de secuencia inicial puede incluir doce bits y el campo de mapa de bits de confirmacion de bloques puede incluir ocho bits. En algunos modos de realizacion, la trama de confirmacion de bloques incluye un formato de 1 MHz.
En algunos modos de realizacion, la confirmacion de bloques incluye ademas un campo reservado, tal como la trama de confirmacion de bloques descrita anteriormente con respecto a la FIG. 14B.
En algunos modos de realizacion, la trama de confirmacion de bloques incluye 34 bits. Por ejemplo, el campo de identificador de confirmacion de bloques puede incluir cinco bits, el campo de control de secuencia inicial puede incluir doce bits, el campo reservado puede incluir un bit y el campo de mapa de bits de confirmacion de bloques puede incluir dieciseis bits. En algunos modos de realizacion, la trama de confirmacion de bloques incluye un formato de 2 MHz.
En algunos modos de realizacion, el identificador de confirmacion de bloques se obtiene a partir de un primer paquete de un bloque para el cual se envfa la trama de confirmacion de bloques. Por ejemplo, el campo de identificador de confirmacion de bloques se fija en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva una unidad agrupada de datos de protocolo de control de acceso al medio.
En algunos modos de realizacion, el identificador de confirmacion de bloques se obtiene a partir de una trama de solicitud de confirmacion de bloques. Por ejemplo, el campo de identificador de confirmacion de bloques se fija en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva la trama de solicitud de confirmacion de bloques.
En algunos modos de realizacion, la unidad de datos incluye al menos una entre una primera unidad de datos de servicio de control de acceso al medio y una unidad agrupada de datos de servicio de control de acceso al medio.
En algunos modos de realizacion, cada bit del campo de mapa de bits de confirmacion de bloques que es igual a 1 confirma la recepcion con exito de una unica unidad de datos en un orden de un numero de secuencia. En algunos modos de realizacion, un primer bit del mapa de bits de confirmacion de bloques corresponde a una unidad de datos con un numero de secuencia que coincide con un valor del campo de control de secuencia inicial.
Tal y como se usa en el presente documento, el termino "determinar" engloba una amplia variedad de acciones. Por ejemplo, "determinar" puede incluir calcular, computar, procesar, obtener, investigar, consultar (por ejemplo, consultar una tabla, una base de datos u otra estructura de datos), averiguar y similares. "Determinar" tambien puede incluir recibir (por ejemplo, recibir informacion), acceder (por ejemplo, acceder a datos en una memoria) y similares. "Determinar" tambien puede incluir resolver, seleccionar, elegir, establecer y similares. Ademas, un "ancho de canal", como se usa en el presente documento, puede abarcar, o puede denominarse tambien, un ancho de banda en determinados aspectos.
Tal y como se usa en el presente documento, una frase que hace referencia a "al menos uno de una lista de elementos” se refiere a cualquier combinacion de tales elementos, incluyendo elementos individuals. Por ejemplo, "al menos uno entre; a, b o c" pretende abarcar: a, b, c, a-b, a-c, b-c y a-b-c.
Las diversas operaciones de los procedimientos descritos anteriormente pueden ser llevadas a cabo por cualquier medio adecuado capaz de realizar las operaciones, tal como diversos componentes, circuitos y/o modulos de hardware y/o software. En general, cualquier operacion ilustrada en las figuras puede ser llevada a cabo por medios funcionales correspondientes, capaces de llevar a cabo las operaciones.
Los diversos bloques logicos, modulos y circuitos ilustrativos descritos en relacion con la presente divulgacion pueden implementarse o realizarse con un procesador de proposito general, con un procesador de senales digitales (DSP), un circuito integrado especffico de la aplicacion (ASIC), una senal de una formacion de compuertas programables en el terreno (FPGA) u otro dispositivo de logica programable (PLD), logica de transistor o de puertas discretas, componentes de hardware discretos o cualquier combinacion de los mismos disenada para llevar a cabo las funciones descritas en el presente documento. Un procesador de proposito general puede ser un microprocesador pero, como alternativa, el procesador puede ser cualquier procesador, controlador, micro- controlador o maquina de estados disponibles comercialmente. Un procesador tambien puede implementarse como una combinacion de dispositivos informaticos, por ejemplo, una combinacion de un DSP y un microprocesador, una pluralidad de microprocesadores, uno o mas microprocesadores junto con un nucleo de DSP o cualquier otra configuracion de este tipo.
En uno o mas aspectos, las funciones descritas pueden implementarse en hardware, software, firmware o cualquier
5
10
15
20
25
30
35
40
45
50
55
60
65
combinacion de los mismos. Si se implementan en software, las funciones, como una o mas instrucciones o codigo, pueden almacenarse en, o transmitirse por, un medio legible por ordenador. Los medios legibles por ordenador incluyen tanto medios de almacenamiento informaticos como medios de comunicacion, incluyendo cualquier medio que facilite la transferencia de un programa informatico desde un lugar a otro. Un medio de almacenamiento puede ser cualquier medio disponible al que pueda accederse mediante un ordenador. A modo de ejemplo, y no de manera limitativa, tales medios legibles por ordenador pueden comprender RAM, ROM, EEPROM, CD-ROM u otro almacenamiento de disco optico, almacenamiento de disco magnetico u otros dispositivos de almacenamiento magnetico, o cualquier otro medio que pueda usarse para transportar o almacenar codigo de programa deseado en forma de instrucciones o estructuras de datos y al que pueda accederse mediante un ordenador. Ademas, cualquier conexion puede denominarse de manera adecuada un medio legible por ordenador. Por ejemplo, si el software se transmite desde una sede de la Red, un servidor u otro origen remoto, usando un cable coaxial, un cable de fibra optica, un par trenzado, una lfnea de abonado digital (DSL) o tecnologfas inalambricas tales como infrarrojos, radio y microondas, entonces el cable coaxial, el cable de fibra optica, el par trenzado, la DSL o las tecnologfas inalambricas tales como infrarrojos, radio y microondas, se incluyen en la definicion de medio. Los discos, como se usan en el presente documento, incluyen el disco compacto (CD), el disco de laser, el disco optico, el disco versatil digital (DVD), el disco flexible y el disco Blu-ray, donde algunos discos normalmente reproducen datos de manera magnetica, mientras que otros discos reproducen los datos de manera optica con laser. Por lo tanto, en algunos aspectos, el medio legible por ordenador puede comprender un medio no transitorio legible por ordenador (por ejemplo, medios tangibles). Ademas, en algunos aspectos, el medio legible por ordenador puede comprender un medio transitorio legible por ordenador (por ejemplo, una senal). Las combinaciones de lo anterior tambien deberfan incluirse dentro del alcance de los medios legibles por ordenador.
Los procedimientos divulgados en el presente documento comprenden una o mas etapas o acciones para llevar a cabo el procedimiento descrito. Las etapas de procedimiento y/o acciones pueden intercambiarse entre si sin apartarse del alcance de las reivindicaciones. En otras palabras, a no ser que se especifique un orden especffico de etapas o acciones, el orden y/o uso de etapas y/o acciones especfficas pueden modificarse sin apartarse del alcance de las reivindicaciones.
Las funciones descritas pueden implementarse en hardware, software, firmware o cualquier combinacion de los mismos. Si se implementan en software, las funciones pueden almacenarse como una o mas instrucciones en un medio legible por ordenador. Un medio de almacenamiento puede ser cualquier medio disponible al que pueda accederse mediante un ordenador. A modo de ejemplo, y no de manera limitativa, tales medios legibles por ordenador pueden comprender RAM, ROM, EEPROm, CD-ROM u otro almacenamiento de disco optico, almacenamiento de disco magnetico u otros dispositivos de almacenamiento magnetico, o cualquier otro medio que pueda usarse para transportar o almacenar codigo de programa deseado en forma de instrucciones o estructuras de datos y al que pueda accederse mediante un ordenador. Los discos, tal y como se usan en el presente documento, incluyen discos compactos (CD), discos de laser, discos opticos, discos versatiles digitales (DVD), discos flexibles y discos Blu-ray®, donde algunos discos normalmente reproducen datos de manera magnetica, mientras que otros discos reproducen los datos de manera optica con laser.
Por lo tanto, determinados aspectos pueden comprender un producto de programa informatico para llevar a cabo las operaciones presentadas en el presente documento. Por ejemplo, un producto de programa informatico de este tipo puede comprender un medio legible por ordenador que tiene instrucciones almacenadas (y/o codificadas) en el mismo, siendo las instrucciones ejecutables por uno o mas procesadores para llevar a cabo las operaciones descritas en el presente documento. En determinados aspectos, el producto de programa informatico puede incluir material de embalaje.
El software o las instrucciones tambien pueden transmitirse a traves de un medio de transmision. Por ejemplo, si el software se transmite desde una sede de la Red, un servidor u otra fuente remota usando un cable coaxial, un cable de fibra optica, un par trenzado, una lfnea de abonado digital (DSL) o tecnologfas inalambricas tales como infrarrojos, radio y microondas, entonces el cable coaxial, el cable de fibra optica, el par trenzado, la DSL o las tecnologfas inalambricas tales como infrarrojos, radio y microondas se incluyen en la definicion de medio de transmision.
Ademas, deberfa apreciarse que los modulos y/u otros medios adecuados para llevar a cabo los procedimientos y las tecnicas descritos en el presente documento pueden descargarse y/u obtenerse de otro modo por un terminal de usuario y/o una estacion base, segun corresponda. Por ejemplo, un dispositivo de este tipo puede estar acoplado a un servidor para facilitar la transferencia de medios para llevar a cabo los procedimientos descritos en el presente documento. Como alternativa, varios procedimientos descritos en el presente documento pueden proporcionarse mediante medios de almacenamiento (por ejemplo, RAM, ROM, un medio de almacenamiento ffsico tal como un disco compacto (CD) o un disco flexible, etc.), de modo que un terminal de usuario y/o una estacion base puedan obtener los diversos procedimientos tras acoplarse o proporcionar los medios de almacenamiento al dispositivo. Tambien puede utilizarse cualquier otra tecnica adecuada para proporcionar a un dispositivo los procedimientos y tecnicas descritos en el presente documento.
Debe entenderse que las reivindicaciones no estan limitadas a la configuracion y componentes precisos ilustrados
5
10
15
20
25
30
35
40
45
50
55
60
65
anteriormente. Pueden realizarse diversas modificaciones, cambios y variaciones en la disposicion, el funcionamiento y los detalles de los procedimientos y aparatos descritos anteriormente sin apartarse del alcance de las reivindicaciones.
Aunque lo anterior esta enfocado a aspectos de la presente divulgacion, pueden concebirse aspectos diferentes y adicionales de la divulgacion sin apartarse del alcance basico de la misma, y el alcance de la misma esta determinado por las reivindicaciones que siguen.
A continuacion se describen ejemplos adicionales para facilitar el entendimiento de la invencion:
1. Un procedimiento de comunicacion en una red inalambrica, comprendiendo el procedimiento:
la generacion de una trama de confirmacion de bloques que comprende una pluralidad de campos en el orden siguiente:
un campo de identificador de confirmacion de bloques que incluye un identificador de la trama de confirmacion de bloques;
un campo de control de secuencia inicial que incluye al menos uno entre un numero de secuencia y una funcion de un numero de secuencia de una unidad de datos para la cual se envio la trama de confirmacion de bloques; y
un campo de mapa de bits de confirmacion de bloques que indica un estado recibido de un cierto numero de unidades de datos; y
la transmision inalambrica de la trama de confirmacion de bloques.
2. El procedimiento del Ejemplo 1, en el que la trama de confirmacion de bloques incluye una trama de confirmacion de bloques de paquetes de datos nulos.
3. El procedimiento del Ejemplo 1, en el que el campo de identificador de confirmacion de bloques, el campo de control de secuencia inicial y el campo de mapa de bits de confirmacion de bloques se incluyen en un campo de senal de una cabecera de capa ffsica.
4. El procedimiento del Ejemplo 1, en el que la trama de confirmacion de bloques incluye 22 bits.
5. El procedimiento del Ejemplo 4, en el que el campo de identificador de confirmacion de bloques incluye dos bits, el campo de control de secuencia inicial incluye doce bits y el campo de mapa de bits de confirmacion de bloques incluye ocho bits.
6. El procedimiento del Ejemplo 5, en el que la trama de confirmacion de bloques incluye un formato de 1 MHz.
7. El procedimiento del Ejemplo 1, en el que la confirmacion de bloques incluye ademas un campo reservado.
8. El procedimiento del Ejemplo 7, en el que la trama de confirmacion de bloques incluye 34 bits.
9. El procedimiento del Ejemplo 8, en el que el campo de identificador de confirmacion de bloques incluye cinco bits, el campo de control de secuencia inicial incluye doce bits, el campo reservado incluye un bit y el campo de mapa de bits de confirmacion de bloques incluye dieciseis bits.
10. El procedimiento del Ejemplo 9, en el que la trama de confirmacion de bloques incluye un formato de 2 MHz.
11. El procedimiento del Ejemplo 1, en el que el identificador de confirmacion de bloques se obtiene a partir de un primer paquete de un bloque para el que se esta enviando la trama de confirmacion de bloques.
12. El procedimiento del Ejemplo 11, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva una unidad agrupada de datos de protocolo de control de acceso al medio.
13. El procedimiento del Ejemplo 1, en el que el identificador de confirmacion de bloques se obtiene a partir de una trama de solicitud de confirmacion de bloques.
14. El procedimiento del Ejemplo 13, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva la trama de solicitud de confirmacion de bloques.
5
10
15
20
25
30
35
40
45
50
55
60
65
15. El procedimiento del Ejemplo 1, en el que la unidad de datos incluye al menos una entre una primera unidad de datos de servicio de control de acceso al medio y una unidad agrupada de datos de servicio de control de acceso al medio.
16. El procedimiento del Ejemplo 1, en el que cada bit del campo de mapa de bits de confirmacion de bloques que es igual a un 1 confirma la recepcion con exito de una unica unidad de datos en un orden de un numero de secuencia.
17. El procedimiento del Ejemplo 16, en el que un primer bit del mapa de bits de confirmacion de bloques corresponde a una unidad de datos con un numero de secuencia que coincide con un valor del campo de control de secuencia inicial.
18. Un dispositivo inalambrico, que comprende:
un procesador configurado para generar una trama de confirmacion de bloques que comprende una pluralidad de campos en el orden siguiente:
un campo de identificador de confirmacion de bloques que incluye un identificador de la trama de confirmacion de bloques;
un campo de control de secuencia inicial que incluye al menos uno entre un numero de secuencia y una funcion de un numero de secuencia de una unidad de datos para la cual se envio la trama de confirmacion de bloques; y
un campo de mapa de bits de confirmacion de bloques que indica un estado recibido de un cierto numero de unidades de datos; y
un transmisor configurado para transmitir de forma inalambrica la trama de confirmacion de bloques.
19. El dispositivo inalambrico del Ejemplo 18, en el que la trama de confirmacion de bloques incluye una trama de confirmacion de bloques de paquetes de datos nulos.
20. El dispositivo inalambrico del Ejemplo 18, en el que el campo de identificador de confirmacion de bloques, el campo de control de secuencia inicial y el campo de mapa de bits de confirmacion de bloques se incluyen en un campo de senal de una cabecera de capa ffsica.
21. El dispositivo inalambrico del Ejemplo 18, en el que la trama de confirmacion de bloques incluye 22 bits.
22. El dispositivo inalambrico del Ejemplo 21, en el que el campo de identificador de confirmacion de bloques incluye dos bits, el campo de control de secuencia inicial incluye doce bits y el campo de mapa de bits de confirmacion de bloques incluye ocho bits.
23. El dispositivo inalambrico del Ejemplo 22, en el que la trama de confirmacion de bloques incluye un formato de 1 MHz.
24. El dispositivo inalambrico del Ejemplo 18, en el que la confirmacion de bloques incluye ademas un campo reservado.
25. El dispositivo inalambrico del Ejemplo 24, en el que la trama de confirmacion de bloques incluye 34 bits.
26. El dispositivo inalambrico del Ejemplo 25, en el que el campo de identificador de confirmacion de bloques incluye cinco bits, el campo de control de secuencia inicial incluye doce bits, el campo reservado incluye un bit y el campo de mapa de bits de confirmacion de bloques incluye dieciseis bits.
27. El dispositivo inalambrico del Ejemplo 26, en el que la trama de confirmacion de bloques incluye un formato de 2 MHz.
28. El dispositivo inalambrico del Ejemplo 18, en el que el identificador de confirmacion de bloques se obtiene a partir de un primer paquete de un bloque para el que se esta enviando la trama de confirmacion de bloques.
29. El dispositivo inalambrico del Ejemplo 28, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva una unidad agrupada de datos de protocolo de control de acceso al medio.
30. El dispositivo inalambrico del Ejemplo 18, en el que el identificador de confirmacion de bloques se obtiene a partir de una trama de solicitud de confirmacion de bloques.
5
10
15
20
25
30
35
40
45
50
55
60
65
31. El dispositivo inalambrico del Ejemplo 30, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva la trama de solicitud de confirmacion de bloques.
32. El dispositivo inalambrico del Ejemplo 18, en el que la unidad de datos incluye al menos una entre una primera unidad de datos de servicio de control de acceso al medio y una unidad agrupada de datos de servicio de control de acceso al medio.
33. El dispositivo inalambrico del Ejemplo 18, en el que cada bit del campo de mapa de bits de confirmacion de bloques que es igual a un 1 confirma la recepcion con exito de una unica unidad de datos en un orden de un numero de secuencia.
34. El dispositivo inalambrico del Ejemplo 33, en el que un primer bit del mapa de bits de confirmacion de bloques corresponde a una unidad de datos con un numero de secuencia que coincide con un valor del campo de control de secuencia inicial.
35. Un dispositivo inalambrico, que comprende:
medios para generar una trama de confirmacion orden siguiente:
un campo de identificador de confirmacion confirmacion de bloques;
un campo de control de secuencia inicial que incluye al menos uno entre un numero de secuencia y una funcion de un numero de secuencia de una unidad de datos para la cual se envio la trama de confirmacion de bloques; y
un campo de mapa de bits de confirmacion de bloques que indica un estado recibido de un cierto numero de unidades de datos; y
medios para transmitir de forma inalambrica la trama de confirmacion de bloques.
36. El dispositivo inalambrico del Ejemplo 35, en el que la trama de confirmacion de bloques incluye una trama de confirmacion de bloques de paquetes de datos nulos.
37. El dispositivo inalambrico del Ejemplo 35, en el que el campo de identificador de confirmacion de bloques, el campo de control de secuencia inicial y el campo de mapa de bits de confirmacion de bloques se incluyen en un campo de senal de una cabecera de capa ffsica.
38. El dispositivo inalambrico del Ejemplo 35, en el que la trama de confirmacion de bloques incluye 22 bits.
39. El dispositivo inalambrico del Ejemplo 38, en el que el campo de identificador de confirmacion de bloques incluye
dos bits, el campo de control de secuencia inicial incluye doce bits y el campo de mapa de bits de confirmacion de bloques incluye ocho bits.
40. El dispositivo inalambrico del Ejemplo 39, en el que la trama de confirmacion de bloques incluye un formato de 1 MHz.
41. El dispositivo inalambrico del Ejemplo 35, en el que la confirmacion de bloques incluye ademas un campo reservado.
42. El dispositivo inalambrico del Ejemplo 41, en el que la trama de confirmacion de bloques incluye 34 bits.
43. El dispositivo inalambrico del Ejemplo 42, en el que el campo de identificador de confirmacion de bloques incluye
cinco bits, el campo de control de secuencia inicial incluye doce bits, el campo reservado incluye un bit y el campo de mapa de bits de confirmacion de bloques incluye dieciseis bits.
44. El dispositivo inalambrico del Ejemplo 43, en el que la trama de confirmacion de bloques incluye un formato de 2 MHz.
45. El dispositivo inalambrico del Ejemplo 35, en el que el identificador de confirmacion de bloques se obtiene a partir de un primer paquete de un bloque para el que se esta enviando la trama de confirmacion de bloques.
46. El dispositivo inalambrico del Ejemplo 45, en el que el campo de identificador de confirmacion de bloques esta
de bloques que comprende una pluralidad de campos en el de bloques que incluye un identificador de la trama de
5
10
15
20
25
30
35
40
45
50
55
60
65
fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva una unidad agrupada de datos de protocolo de control de acceso al medio.
47. El dispositivo inalambrico del Ejemplo 35, en el que el identificador de confirmacion de bloques se obtiene a partir de una trama de solicitud de confirmacion de bloques.
48. El dispositivo inalambrico del Ejemplo 47, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva la trama de solicitud de confirmacion de bloques.
49. El dispositivo inalambrico del Ejemplo 35, en el que la unidad de datos incluye al menos una entre una primera unidad de datos de servicio de control de acceso al medio y una unidad agrupada de datos de servicio de control de acceso al medio.
50. El dispositivo inalambrico del Ejemplo 35, en el que cada bit del campo de mapa de bits de confirmacion de bloques que es igual a un 1 confirma la recepcion con exito de una unica unidad de datos en un orden de un numero de secuencia.
51. El dispositivo inalambrico del Ejemplo 50, en el que un primer bit del mapa de bits de confirmacion de bloques corresponde a una unidad de datos con un numero de secuencia que coincide con un valor del campo de control de secuencia inicial.
52. Un medio legible por ordenador que comprende codigo que, al ejecutarse, hace que un aparato:
genere una trama de confirmacion de bloques que comprende una pluralidad de campos en el orden siguiente:
un campo de identificador de confirmacion de bloques que incluye un identificador de la trama de confirmacion de bloques;
un campo de control de secuencia inicial que incluye al menos uno entre un numero de secuencia y una funcion de un numero de secuencia de una unidad de datos para la cual se envio la trama de confirmacion de bloques; y
un campo de mapa de bits de confirmacion de bloques que indica un estado recibido de un cierto numero de unidades de datos; y
transmitir de forma inalambrica la trama de confirmacion de bloques.
53. El medio legible por ordenador del Ejemplo 52, en el que la trama de confirmacion de bloques incluye una trama de confirmacion de bloques de paquetes de datos nulos.
54. El medio legible por ordenador del Ejemplo 52, en el que el campo de identificador de confirmacion de bloques, el campo de control de secuencia inicial y el campo de mapa de bits de confirmacion de bloques se incluyen en un campo de senal de una cabecera de capa ffsica.
55. El medio legible por ordenador del Ejemplo 52, en el que la trama de confirmacion de bloques incluye 22 bits.
56. El medio legible por ordenador del Ejemplo 55, en el que el campo de identificador de confirmacion de bloques incluye dos bits, el campo de control de secuencia inicial incluye doce bits y el campo de mapa de bits de confirmacion de bloques incluye ocho bits.
57. El medio legible por ordenador del Ejemplo 56, en el que la trama de confirmacion de bloques incluye un formato de 1 MHz.
58. El medio legible por ordenador del Ejemplo 52, en el que la confirmacion de bloques incluye ademas un campo reservado.
59. El medio legible por ordenador del Ejemplo 58, en el que la trama de confirmacion de bloques incluye 34 bits.
60. El medio legible por ordenador del Ejemplo 59, en el que el campo de identificador de confirmacion de bloques incluye cinco bits, el campo de control de secuencia inicial incluye doce bits, el campo reservado incluye un bit y el campo de mapa de bits de confirmacion de bloques incluye dieciseis bits.
61. El medio legible por ordenador del Ejemplo 60, en el que la trama de confirmacion de bloques incluye un formato de 2 MHz.
5
10
15
20
25
62. El medio legible por ordenador del Ejemplo 52, en el que el identificador de confirmacion de bloques se obtiene a partir de un primer paquete de un bloque para el que se esta enviando la trama de confirmacion de bloques.
63. El medio legible por ordenador del Ejemplo 62, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva una unidad agrupada de datos de protocolo de control de acceso al medio.
64. El medio legible por ordenador del Ejemplo 52, en el que el identificador de confirmacion de bloques se obtiene a partir de una trama de solicitud de confirmacion de bloques.
65. El medio legible por ordenador del Ejemplo 64, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica que lleva la trama de solicitud de confirmacion de bloques.
66. El medio legible por ordenador del Ejemplo 52, en el que la unidad de datos incluye al menos una entre una primera unidad de datos de servicio de control de acceso al medio y una unidad agrupada de datos de servicio de control de acceso al medio.
67. El medio legible por ordenador del Ejemplo 52, en el que cada bit del campo de mapa de bits de confirmacion de bloques que es igual a un 1 confirma la recepcion con exito de una unica unidad de datos en un orden de un numero de secuencia.
68. El medio legible por ordenador del Ejemplo 67, en el que un primer bit del mapa de bits de confirmacion de bloques corresponde a una unidad de datos con un numero de secuencia que coincide con un valor del campo de control de secuencia inicial.
Claims (15)
- 5101520253035404550556065REIVINDICACIONES1. Un procedimiento de comunicacion en una red inalambrica, comprendiendo el procedimiento:generar (1502) una trama de confirmacion de bloques (1400A) que comprende una pluralidad de campos en el orden siguiente:un campo de identificador de confirmacion de bloques (1402A) que incluye un identificador de la trama de confirmacion de bloques, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica;un campo de control de secuencia inicial (1404A) que incluye al menos uno entre un numero de secuencia y una funcion de un numero de secuencia de una unidad de datos para la que se envio la trama de confirmacion de bloques; yun campo de mapa de bits de confirmacion de bloques (1406A) que indica un estado recibido de un cierto numero de unidades de datos; ytransmitir de forma inalambrica (1504) la trama de confirmacion de bloques (1400A).
- 2. El procedimiento de la reivindicacion 1, en el que la trama de confirmacion de bloques incluye una trama de confirmacion de bloques de paquetes de datos nulos.
- 3. El procedimiento de la reivindicacion 1, en el que el campo de identificador de confirmacion de bloques, el campo de control de secuencia inicial y el campo de mapa de bits de confirmacion de bloques se incluyen en un campo de senal de una cabecera de capa ffsica.
- 4. El procedimiento de la Reivindicacion 1, en el que la trama de confirmacion de bloques incluye 22 bits.
- 5. El procedimiento de la Reivindicacion 4, en el que el campo de identificador de confirmacion de bloques incluye dos bits, el campo de control de secuencia inicial incluye doce bits y el campo de mapa de bits de confirmacion de bloques incluye ocho bits, y en el que la trama de confirmacion de bloques incluye un formato de 1 MHz.
- 6. El procedimiento de la Reivindicacion 1, en el que la confirmacion de bloques incluye ademas un campo reservado.
- 7. El procedimiento de la Reivindicacion 6, en el que la trama de confirmacion de bloques incluye 34 bits, y en el que el campo de identificador de confirmacion de bloques incluye cinco bits, el campo de control de secuencia inicial incluye doce bits, el campo reservado incluye un bit y el campo de mapa de bits de confirmacion de bloques incluye dieciseis bits, y en el que la trama de confirmacion de bloques incluye un formato de 2 MHz.
- 8. El procedimiento de la reivindicacion 1, en el que el identificador de confirmacion de bloques se obtiene a partir de un primer paquete de un bloque para el que se envio la trama de confirmacion de bloques.
- 9. El procedimiento de la reivindicacion 8, en el que la unidad de datos de servicio de capa ffsica lleva una unidad agrupada de datos de protocolo de control de acceso al medio.
- 10. El procedimiento de la Reivindicacion 1, en el que el identificador de confirmacion de bloques se obtiene a partir de una trama de solicitud de confirmacion de bloques.
- 11. El procedimiento de la Reivindicacion 10, en el que la unidad de datos de servicio de capa ffsica lleva la trama de solicitud de confirmacion de bloques.
- 12. El procedimiento de la Reivindicacion 1, en el que la unidad de datos incluye al menos una entre una primera unidad de datos de servicio de control de acceso al medio y una unidad agrupada de datos de servicio de control de acceso al medio.
- 13. El procedimiento de la Reivindicacion 1, en el que cada bit del campo de mapa de bits de confirmacion de bloques que es igual a un 1 confirma la recepcion con exito de una unica unidad de datos en un orden de un numero de secuencia y en el que un primer bit del mapa de bits de confirmacion de bloques corresponde a una unidad de datos con un numero de secuencia que coincide con un valor del campo de control de secuencia inicial.
- 14. Un dispositivo inalambrico (202), que comprende:medios para generar (1502) una trama de confirmacion de bloques (1400A) que comprende una pluralidad de campos en el orden siguiente:5un campo de identificador de confirmacion de bloques (1402A) que incluye un identificador de la trama de confirmacion de bloques, en el que el campo de identificador de confirmacion de bloques esta fijado en los dos bits menos significativos de un valor original de aleatorizador de una unidad de datos de servicio de capa ffsica;10un campo de control de secuencia inicial (1404A) que incluye al menos uno entre un numero de secuencia y una funcion de un numero de secuencia de una unidad de datos para la que se envio la trama de confirmacion de bloques; y un campo de mapa de bits de confirmacion de bloques (1406A) que indica un estado recibido de un cierto numero de unidades de datos; y 15medios para transmitir de forma inalambrica (1504) la trama de confirmacion de bloques (1400A).
- 15. Un programa informatico que comprende instrucciones ejecutables para hacer que al menos un ordenador lleve a cabo un procedimiento segun una de las reivindicaciones 1 a 13 cuando se ejecutan.20
Applications Claiming Priority (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201261672157P | 2012-07-16 | 2012-07-16 | |
| US201261672157P | 2012-07-16 | ||
| US201361758722P | 2013-01-30 | 2013-01-30 | |
| US201361758722P | 2013-01-30 | ||
| US201313779907 | 2013-02-28 | ||
| US13/779,907 US9253290B2 (en) | 2012-02-29 | 2013-02-28 | Apparatus and methods for block acknowledgment compression |
| PCT/US2013/044787 WO2014014577A1 (en) | 2012-07-16 | 2013-06-07 | Apparatus and methods for block acknowledgment compression |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2604854T3 true ES2604854T3 (es) | 2017-03-09 |
Family
ID=49949166
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES13740087.5T Active ES2604854T3 (es) | 2012-07-16 | 2013-06-07 | Aparatos y procedimientos para la compresión de confirmación de bloques |
Country Status (7)
| Country | Link |
|---|---|
| EP (2) | EP2873184B1 (es) |
| JP (1) | JP6165859B2 (es) |
| KR (1) | KR102064910B1 (es) |
| CN (1) | CN104471891B (es) |
| ES (1) | ES2604854T3 (es) |
| HU (2) | HUE046980T2 (es) |
| WO (1) | WO2014014577A1 (es) |
Families Citing this family (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9819467B2 (en) * | 2014-08-08 | 2017-11-14 | Qualcomm Incorporated | Communicating feedback in listen-before-talk (LBT) wireless networks |
| CA2965807C (en) * | 2014-10-27 | 2019-07-09 | Lg Electronics Inc. | Method for transmitting and receiving multiple user block acknowledgement frame in wireless lan system, and apparatus therefor |
| JP6437653B2 (ja) * | 2014-12-01 | 2018-12-12 | エルジー エレクトロニクス インコーポレイティド | 無線lanにおけるデータフレームの再送信なしにエラーを回復する方法及び装置 |
| US9929847B2 (en) | 2014-12-23 | 2018-03-27 | Qualcomm Incorporated | Shortened block acknowledgement with fragmentation acknowledgement signaling |
| US9819602B2 (en) | 2015-07-27 | 2017-11-14 | Qualcomm Incorporated | Efficient datagram segmentation and reassembly for packet-switched networks |
| US10085255B2 (en) * | 2015-09-02 | 2018-09-25 | Qualcomm Incorporated | Physical uplink control channel for low latency downlink communications |
| US10218483B2 (en) * | 2015-09-25 | 2019-02-26 | Qualcomm Incorporated | Systems and methods for signaling and generating variable length block acknowledgment fields in a wireless network |
| JP7031308B2 (ja) * | 2015-11-30 | 2022-03-08 | ソニーグループ株式会社 | 情報処理装置、通信システム、情報処理方法およびプログラム |
| US10141994B2 (en) * | 2016-03-10 | 2018-11-27 | Qualcomm Incorporated | Technique for reducing responding sector sweep time for millimeter-wave devices |
| KR102349919B1 (ko) | 2016-03-10 | 2022-01-12 | 주식회사 윌러스표준기술연구소 | 다중 사용자 무선 통신 방법 및 이를 사용하는 무선통신 단말 |
| ES2912927T3 (es) * | 2016-04-04 | 2022-05-30 | Wilus Inst Standards & Tech Inc | Método de comunicaciones inalámbricas que utiliza fragmentación y terminal de comunicaciones inalámbricas que utiliza la misma |
| US10361832B2 (en) * | 2016-04-22 | 2019-07-23 | Qualcomm Incorporated | Block acknowledgment generation and selection rules |
| KR102549027B1 (ko) * | 2016-05-11 | 2023-06-29 | 주식회사 윌러스표준기술연구소 | Ack를 전송하는 무선 통신 방법 및 이를 사용하는 무선 통신 단말 |
| KR20240169138A (ko) | 2016-05-11 | 2024-12-02 | 주식회사 윌러스표준기술연구소 | 랜덤 액세스 기반의 상향 다중 사용자 전송을 위한 무선 통신 단말 및 무선 통신 방법 |
| CN114884628B (zh) * | 2016-06-14 | 2024-08-23 | 韦勒斯标准与技术协会公司 | 使用聚合mpdu的无线通信方法和使用该方法的无线通信终端 |
| JP7191603B2 (ja) | 2018-09-10 | 2022-12-19 | 株式会社モバイルテクノ | 無線通信装置および通信パラメータ通知方法 |
| CN109962757A (zh) * | 2019-02-22 | 2019-07-02 | 视联动力信息技术股份有限公司 | 基于视联网的数据传输方法及装置 |
| US11985543B2 (en) | 2019-10-14 | 2024-05-14 | Qualcomm Incorporated | Sequence number expansion |
| JP2023043891A (ja) * | 2020-02-18 | 2023-03-30 | シャープ株式会社 | ステーション装置、通信方法 |
| CN114070475A (zh) | 2020-07-31 | 2022-02-18 | 华为技术有限公司 | 比特块的发送方法及装置 |
| US11984985B2 (en) | 2020-08-19 | 2024-05-14 | Samsung Electronics Co., Ltd. | Method of performing wireless communication, wireless transmission device and wireless reception device performing the same |
| JP7696202B2 (ja) * | 2020-10-22 | 2025-06-20 | キヤノン株式会社 | 通信装置、通信装置の制御方法、およびプログラム |
| CN112929134B (zh) * | 2021-01-12 | 2023-04-07 | 普联技术有限公司 | 块确认帧的生成与译码方法及装置、终端设备、存储介质 |
| US20250047446A1 (en) * | 2021-12-17 | 2025-02-06 | Nokia Technologies Oy | Efficient block-acknowledgement mechanism |
| CN116909624B (zh) * | 2023-09-12 | 2024-01-26 | 苏州浪潮智能科技有限公司 | 位图数据处理方法、随机存储器、电子设备和存储介质 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8223647B2 (en) * | 2004-07-21 | 2012-07-17 | Nokia Corporation | System and method for increasing data throughout using a block acknowledgement |
| US20060034274A1 (en) * | 2004-07-30 | 2006-02-16 | Nokia Corporation | System and method for variable length acknowledgements in a shared resource network |
| CN101006673A (zh) * | 2004-07-30 | 2007-07-25 | 诺基亚公司 | 在共享资源网络中用于可变长度聚合确认的系统和方法 |
| KR100678943B1 (ko) * | 2004-08-24 | 2007-02-07 | 삼성전자주식회사 | 블록 ack 프레임 전송방법 및 장치 |
| US7535858B2 (en) * | 2005-06-29 | 2009-05-19 | Intel Corporation | Apparatus and method of block acknowledgements with reduced recipient state information |
| US8111654B2 (en) * | 2006-08-09 | 2012-02-07 | Samsung Electronics Co., Ltd. | System and method for wireless communication of uncompressed video having acknowledgement (ACK) frames |
| US9337961B2 (en) * | 2010-06-15 | 2016-05-10 | Qualcomm Incorporated | Method and apparatus for sending very high throughput WLAN acknowledgment frames |
| US9350428B2 (en) * | 2010-12-01 | 2016-05-24 | Lg Electronics Inc. | Method and apparatus of link adaptation in wireless local area network |
-
2013
- 2013-06-07 EP EP13740087.5A patent/EP2873184B1/en active Active
- 2013-06-07 KR KR1020157004028A patent/KR102064910B1/ko active Active
- 2013-06-07 EP EP16168133.3A patent/EP3070867B1/en active Active
- 2013-06-07 HU HUE16168133A patent/HUE046980T2/hu unknown
- 2013-06-07 JP JP2015523087A patent/JP6165859B2/ja active Active
- 2013-06-07 WO PCT/US2013/044787 patent/WO2014014577A1/en not_active Ceased
- 2013-06-07 CN CN201380037620.6A patent/CN104471891B/zh active Active
- 2013-06-07 ES ES13740087.5T patent/ES2604854T3/es active Active
- 2013-06-07 HU HUE13740087A patent/HUE029025T2/en unknown
Also Published As
| Publication number | Publication date |
|---|---|
| JP2015529047A (ja) | 2015-10-01 |
| EP2873184B1 (en) | 2016-08-24 |
| HUE046980T2 (hu) | 2020-04-28 |
| WO2014014577A1 (en) | 2014-01-23 |
| CN104471891B (zh) | 2018-09-18 |
| EP2873184A1 (en) | 2015-05-20 |
| EP3070867B1 (en) | 2019-12-18 |
| HUE029025T2 (en) | 2017-01-30 |
| CN104471891A (zh) | 2015-03-25 |
| KR102064910B1 (ko) | 2020-01-10 |
| JP6165859B2 (ja) | 2017-07-19 |
| EP3070867A1 (en) | 2016-09-21 |
| KR20150032744A (ko) | 2015-03-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2604854T3 (es) | Aparatos y procedimientos para la compresión de confirmación de bloques | |
| ES2818594T3 (es) | Reglas de generación y selección de acuse de recibo de bloque | |
| ES2710320T3 (es) | Aparatos y procedimientos para la compresión de cabeceras de control de acceso a medios | |
| US9253290B2 (en) | Apparatus and methods for block acknowledgment compression | |
| KR101689270B1 (ko) | 블록 확인응답 압축을 위한 장치 및 방법들 | |
| ES2642513T3 (es) | Gestión de mensajes de confirmación desde varios destinos para transmisiones multiusuario MIMO | |
| ES2658063T3 (es) | Aparatos y procedimientos para compresión de cabeceras mac | |
| ES2688894T3 (es) | Sistemas y procedimientos para identificar tramas mejoradas para comunicación inalámbrica | |
| ES2736411T3 (es) | Sistemas y procedimientos para la confirmación de bloque de longitud variable | |
| ES2628384T3 (es) | Aparatos y procedimientos para la indicación de retardo en un mensaje inalámbrico |