ES2633122T3 - Traffic load management for uplink network traffic - Google Patents
Traffic load management for uplink network traffic Download PDFInfo
- Publication number
- ES2633122T3 ES2633122T3 ES11188907.7T ES11188907T ES2633122T3 ES 2633122 T3 ES2633122 T3 ES 2633122T3 ES 11188907 T ES11188907 T ES 11188907T ES 2633122 T3 ES2633122 T3 ES 2633122T3
- Authority
- ES
- Spain
- Prior art keywords
- node
- window
- contention window
- containment
- list
- 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
- 238000000034 method Methods 0.000 claims abstract description 54
- 238000011144 upstream manufacturing Methods 0.000 claims description 30
- 238000004364 calculation method Methods 0.000 claims description 19
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 abstract 1
- 230000005540 biological transmission Effects 0.000 description 32
- 238000007726 management method Methods 0.000 description 12
- 238000003860 storage Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 7
- 230000001413 cellular effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W74/00—Wireless channel access
- H04W74/08—Non-scheduled access, e.g. ALOHA
- H04W74/0833—Random access procedures, e.g. with 4-step access
- H04W74/0841—Random access procedures, e.g. with 4-step access with collision treatment
- H04W74/085—Random access procedures, e.g. with 4-step access with collision treatment collision avoidance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W74/00—Wireless channel access
- H04W74/08—Non-scheduled access, e.g. ALOHA
- H04W74/0808—Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA]
- H04W74/0816—Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA] with collision avoidance
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Un método para controlar un tamaño de una ventana de contención (220) en un nodo (102) en una red (100), en el que una ventana de contención es un periodo de tiempo durante el cual un nodo espera para transmitir, tras la interrupción de señales de radiofrecuencia en un canal particular, antes de transmitir, que comprende: bajo el control de uno o más procesadores (114) en el nodo (102) y configurados con instrucciones ejecutables: mantener una lista (212), en el que la lista (212) se mantiene en el nodo (102) y comprende un tamaño de una ventana de contención (220) de un nodo primario (102) del nodo (102); establecer una ventana de contención (220) para el nodo (102) para que no sea más corta que una ventana de contención (220) del nodo primario (102) del nodo (102), como se indica mediante la lista (212); y enviar datos al nodo primario (102) del nodo (102), comenzando el envío después de una espera indicada mediante la ventana de contención (220) del nodo (102), en el que: mantener la lista (212) incluye: asociar una pluralidad de primarios en la lista (212) con una pluralidad de ventanas de contención (220), respectivamente, y una pluralidad de periodos de tiempo de espera, respectivamente, rigiendo cada periodo de tiempo de espera la expiración de una ventana de contención (220) asociada; y establecer la ventana de contención (220) incluye: monitorizar la pluralidad de periodos de tiempo de espera en cuanto a la expiración; y tras la expiración de un periodo de tiempo de espera, usar una ventana de contención por defecto para sustituir una ventana de contención (220) asociada con el periodo de tiempo de espera expirado.A method for controlling a size of a contention window (220) at a node (102) in a network (100), wherein a contention window is a period of time during which a node waits to transmit, upon interruption of radio frequency signals on a particular channel, before transmitting, comprising: under the control of one or more processors (114) at the node (102) and configured with executable instructions: maintaining a list (212), wherein the list (212) is maintained at the node (102) and comprises a size of a contention window (220) of a primary node (102) of the node (102); setting a contention window (220) for the node (102) to be no shorter than a contention window (220) of the primary node (102) of the node (102), as indicated by the list (212); and sending data to the primary node (102) of the node (102), commencing the sending after a wait indicated by the contention window (220) of the node (102), wherein: maintaining the list (212) includes: associating a plurality of primaries in the list (212) with a plurality of contention windows (220), respectively, and a plurality of wait time periods, respectively, each wait time period governing the expiration of an associated contention window (220); and setting the contention window (220) includes: monitoring the plurality of wait time periods for expiration; and upon expiration of a wait time period, using a default contention window to replace a contention window (220) associated with the expired wait time period.
Description
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
DESCRIPCIONDESCRIPTION
Gestion de carga de trafico para trafico de red de enlace ascendente AntecedentesLoad upload management for uplink network traffic Background
Una red de malla puede incluir una pluralidad de nodos, muchos de los cuales pueden incluir software para producir datos para su transmision. Muchos de los nodos pueden tener tambien dispositivos asociados, que incluyen, sensores, contadores, etc., que pueden recoger datos. De manera colectiva, los nodos pueden generar que se envfe una cantidad considerable de datos aguas arriba hasta un nodo rafz para la transmision a una oficina central.A mesh network may include a plurality of nodes, many of which may include software to produce data for transmission. Many of the nodes may also have associated devices, including sensors, counters, etc., that can collect data. Collectively, nodes can cause a considerable amount of data to be sent upstream to a root node for transmission to a central office.
Las redes y sistemas existentes crean cuellos de botella en ciertos nodos aguas arriba, dando como resultado retardos de transmision y problemas de calidad de servicio. Un segundo problema de los sistemas existentes implica la division equitativa y eficaz del ancho de banda disponible entre nodos en la red y el software que se ejecuta en estos nodos.Existing networks and systems create bottlenecks on certain upstream nodes, resulting in transmission delays and quality of service problems. A second problem with existing systems involves the equitable and efficient division of available bandwidth between nodes in the network and the software running on these nodes.
El documento US2007/0214379A1 se refiere a tecnicas para controlar transmisiones en redes de comunicacion inalambrica tales como redes de malla.Document US2007 / 0214379A1 refers to techniques for controlling transmissions in wireless communication networks such as mesh networks.
SumarioSummary
En un aspecto se proporciona un metodo como se define en la reivindicacion 1.In one aspect a method is provided as defined in claim 1.
En otro aspecto se proporciona un nodo en una red como se define en la reivindicacion 10.In another aspect a node is provided in a network as defined in claim 10.
Breve descripcion de los dibujosBrief description of the drawings
La descripcion detallada se describe con referencia a las figuras adjuntas. En las figuras, el dfgito o dfgitos mas a la izquierda de un numero de referencia identifican la figura en la que aparece en primer lugar el numero de referencia. Los mismos numeros se usan a lo largo de los dibujos para hacer referencia a caractensticas y componentes similares. Ademas, las figuras se pretenden para ilustrar conceptos generales, y no para indicar elementos requeridos y/o necesarios.The detailed description is described with reference to the attached figures. In the figures, the leftmost digit or digits of a reference number identify the figure in which the reference number appears first. The same numbers are used throughout the drawings to refer to similar features and components. In addition, the figures are intended to illustrate general concepts, and not to indicate required and / or necessary elements.
La Figura 1 es un diagrama que muestra una red que tiene una pluralidad de nodos, algun detalle de un nodo, una conexion a una red adicional tal como internet y una oficina central.Figure 1 is a diagram showing a network that has a plurality of nodes, some detail of a node, a connection to an additional network such as the internet and a central office.
La Figura 2 es un diagrama que muestra detalles de ejemplo de un nodo individual.Figure 2 is a diagram showing sample details of an individual node.
La Figura 3 es un diagrama de temporizacion que muestra un ejemplo de como se evitan las colisiones mediante el nodo de ejemplo configurado como se observa en la Figura 2.Figure 3 is a timing diagram showing an example of how collisions are avoided by the example node configured as seen in Figure 2.
La Figura 4 es un diagrama de flujo que ilustra un metodo de ejemplo mediante el cual puede gestionarse trafico de red de enlace ascendente.Figure 4 is a flow chart illustrating an example method by which uplink network traffic can be managed.
La Figura 5 es un diagrama de flujo que ilustra un metodo de ejemplo mediante el cual puede gestionarse informacion con respecto a ventanas de contencion de nodos vecinos.Figure 5 is a flow chart illustrating an example method by which information can be managed with respect to windows containing neighboring nodes.
La Figura 6 es un diagrama de flujo que ilustra un metodo de ejemplo mediante el cual pueden gestionarse periodos de tiempo de espera de ventanas de contencion de otros nodos.Figure 6 is a flowchart illustrating an example method by which timeout periods of content windows of other nodes can be managed.
La Figura 7 es un diagrama de flujo que ilustra un metodo de ejemplo mediante el cual un nodo puede establecer su propia ventana de contencion, usando como entrada indicaciones de ventanas de contencion de otros nodos. La Figura 8 es un diagrama de flujo que ilustra un metodo de ejemplo adicional mediante el cual un nodo puede establecer su propia ventana de contencion, usando como entrada indicaciones de ventanas de contencion de otros nodos.Figure 7 is a flow chart illustrating an example method by which a node can establish its own containment window, using as input indications of containment windows of other nodes. Figure 8 is a flow chart illustrating an additional example method by which a node can establish its own containment window, using as input indications of containment windows of other nodes.
Descripcion detalladaDetailed description
Vista generalGeneral view
Como se ha analizado anteriormente, las redes existentes no proporcionan una manera eficaz de gestionar el trafico de red de enlace ascendente en una red, tal como una red de malla inalambrica de multiples canales. Un problema particular en las redes existentes es que el trafico entre las redes puede aumentar para nodos mas cercanos al nodo rafz. Este aumento puede dar como resultado un cuello de botella, que puede degradar el rendimiento de la red. Un numero de factores pueden ser los culpables. Por ejemplo, las redes existentes pueden incluir nodos que tienen ventanas de contencion mas largas que no les permite participar en el ancho de banda y procesar los datos a la velocidad requerida, basandose en los datos que reciben desde los nodos aguas abajo. Como se usa en el presente documento, una “ventana de contencion” se refiere a un periodo de tiempo durante el cual un nodo espera para transmitir, tras la interrupcion de senales de radiofrecuencia (RF) en un canal particular, antes de la transmision. Por lo tanto, debido a que diferentes nodos tienen ventanas de contencion de diferentes longitudes, las ventanas de contencion proporcionan un “inicio escalonado”, en el que se permite que un nodo empiece la transmision de RF antes de los otros nodos, forzando de esta manera a que los otros nodos que esperan para transmitir suspendan unAs discussed above, existing networks do not provide an effective way to manage uplink network traffic in a network, such as a multi-channel wireless mesh network. A particular problem in existing networks is that traffic between networks can increase for nodes closer to the root node. This increase can result in a bottleneck, which can degrade network performance. A number of factors may be the culprits. For example, existing networks may include nodes that have longer content windows that do not allow them to participate in bandwidth and process data at the required speed, based on the data they receive from downstream nodes. As used herein, a "contention window" refers to a period of time during which a node waits to transmit, after the interruption of radio frequency (RF) signals on a particular channel, before transmission. Therefore, because different nodes have containment windows of different lengths, the containment windows provide a "staggered start", in which one node is allowed to start RF transmission before the other nodes, forcing this way that the other nodes waiting to transmit suspend a
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
calculo de tiempo de espera en sus propias ventanas de contencion. Por consiguiente, las ventanas de contencion son parte de un sistema de evitacion de colisiones en las redes inalambricas.calculation of waiting time in their own containment windows. Therefore, the containment windows are part of a collision avoidance system in the wireless networks.
Esta divulgacion describe tecnicas para proporcionar gestion de carga de trafico para trafico de red de enlace ascendente. El trafico de red de enlace ascendente puede incluir datos que fluyen de nodo a nodo dentro una red de malla en una direccion aguas arriba, es decir, hacia un nodo rafz. La red, nodos y datos pueden incluir, por ejemplo, contadores de servicios publicos inteligentes (por ejemplo, contadores de electricidad, gas y/o agua), sensores (por ejemplo, sensores de temperatura, estaciones meteorologicas, sensores de frecuencia, etc.), dispositivos de control, transformadores, encaminadores, servidores, retransmisores (por ejemplo, retransmisores celulares), conmutadores, valvulas y otros dispositivos de red y los datos generados y/o transmitidos desde cualquiera de los anteriores. A partir del nodo rafz, los datos pueden transferirse a una red adicional para transporte a una oficina central. Por ejemplo, el nodo rafz puede configurarse como un encaminador celular en un contexto de un area de encaminamiento autonoma (ARA) de contadores inteligentes de servicios publicos, puede recibir datos desde la red de malla y puede transmitir esos datos a servidores dentro de Internet para transferir a una oficina central, servidor u otra localizacion deseada.This disclosure describes techniques for providing traffic load management for uplink network traffic. The uplink network traffic may include data that flows from node to node within a mesh network in an upstream direction, that is, to a root node. The network, nodes and data may include, for example, smart public service meters (for example, electricity, gas and / or water meters), sensors (for example, temperature sensors, weather stations, frequency sensors, etc.). ), control devices, transformers, routers, servers, retransmitters (for example, cellular retransmitters), switches, valves and other network devices and the data generated and / or transmitted from any of the above. From the rafz node, the data can be transferred to an additional network for transport to a central office. For example, the root node can be configured as a cellular router in a context of an autonomous routing area (ARA) of intelligent public service meters, can receive data from the mesh network and can transmit that data to servers within the Internet to transfer to a central office, server or other desired location.
Un ejemplo que ilustra algunas de las tecnicas analizadas en el presente documento que no se ha de considerar un analisis completo o comprensivo puede ayudar al lector. Un nodo puede ayudar en la gestion de trafico de red aguas arriba en parte gestionando una ventana de contencion usada mediante el nodo. Cuando se detiene la transmision en un canal (es decir, cuando no se escucha actualmente la senal de radiofrecuencia (RF)) los nodos que desean comenzar la transmision deben cada uno esperar hasta la expiracion de sus propias ventanas de contencion. Un nodo que tiene una ventana de contencion mas corta puede empezar la transmision en primer lugar, evitando de esta manera que otros nodos transmitan. Por consiguiente, la longitud de una ventana de contencion es un factor que rige el trafico en una red de RF, tal como una red de malla que comprende una pluralidad de nodos, que puede configurarse como una ARA de contadores inteligentes de servicios publicos.An example that illustrates some of the techniques discussed in this document that is not to be considered a complete or comprehensive analysis can help the reader. A node can assist in managing upstream network traffic in part by managing a contention window used through the node. When the transmission is stopped on a channel (that is, when the radio frequency (RF) signal is not currently heard) the nodes that wish to begin the transmission must each wait until the expiration of their own contention windows. A node that has a shorter containment window can start transmission first, thus preventing other nodes from transmitting. Therefore, the length of a contention window is a factor that governs traffic in an RF network, such as a mesh network comprising a plurality of nodes, which can be configured as an ARA of smart meters of public services.
Dentro del ejemplo anterior, un nodo puede ayudar en la gestion de trafico de red aguas arriba en parte gestionando una ventana de contencion usada mediante el nodo. El nodo puede mantener una lista de tamano o tamanos de ventana o ventanas de contencion de nodo o nodos primarios del nodo. El nodo puede establecer su propia ventana de contencion para que sea mas larga (es decir, un periodo de tiempo mas largo) que los nodos vecinos aguas arriba y/o nodos primarios. Con una ventana de contencion mas larga que su nodo o nodos primarios, el nodo se abstendra de usar un canal de RF necesario por un nodo primario. Es decir, los nodos primarios tendran en general una prioridad superior (es decir, tamano de ventana de contencion mas corto) que sus nodos secundarios. Por consiguiente, los nodos aguas arriba pueden transmitir mejor cualquier retraso acumulado de datos antes de recibir datos adicionales desde nodos aguas abajo. Esto puede distribuir mejor datos a traves de la red y puede gestionar mejor el flujo de datos.Within the previous example, a node can assist in managing upstream network traffic in part by managing a contention window used through the node. The node can maintain a list of size or window sizes or node containment windows or primary nodes of the node. The node can set its own contention window to be longer (ie, a longer period of time) than the upstream neighboring nodes and / or primary nodes. With a contention window longer than its node or primary nodes, the node will refrain from using an RF channel needed by a primary node. That is, the primary nodes will generally have a higher priority (i.e. shorter window size) than their secondary nodes. Therefore, upstream nodes can better transmit any accumulated data delay before receiving additional data from downstream nodes. This can better distribute data across the network and can better manage the data flow.
El analisis del presente documento incluye varias secciones. Cada seccion se pretende que sea no limitante. Mas particularmente, esta descripcion completa se pretende para ilustrar componentes y tecnicas que pueden utilizarse en gestion de carga de trafico de red de enlace ascendente, pero no componentes y tecnicas que se requieran necesariamente. El analisis comienza con una seccion titulada “Arquitectura de red de ejemplo”, que describe una ARA, que incluye contadores de servicios publicos inteligentes y otros dispositivos como un entorno representativo que puede implementar las tecnicas descritas en el presente documento. A continuacion, una seccion titulada “Configuracion de nodo de ejemplo” ilustra y describe una configuracion de ejemplo para un nodo usable en una red tal como una ARA y que proporciona una gestion de carga de trafico de red de enlace ascendente. A continuacion, una seccion titulada “Operacion de ventana de contencion de ejemplo” ilustra y describe un ejemplo de tecnicas de ventana de contencion que proporcionan gestion de carga de trafico de red de enlace ascendente. Secciones adicionales, tituladas “Metodos de ejemplo” y “Metodos de gestion de carga de trafico de red de enlace ascendente de ejemplo” ilustran y describen tecnicas que pueden usarse para gestionar ventanas de contencion en nodos y para proporcionar gestion de carga de trafico de red de enlace ascendente. Finalmente, el analisis finaliza con una breve conclusion.The analysis of this document includes several sections. Each section is intended to be non-limiting. More particularly, this complete description is intended to illustrate components and techniques that can be used in uplink network traffic load management, but not components and techniques that are necessarily required. The analysis begins with a section entitled “Example network architecture,” which describes an ARA, which includes smart public service meters and other devices as a representative environment that can implement the techniques described in this document. Next, a section entitled "Example node configuration" illustrates and describes an example configuration for a node usable in a network such as an ARA and that provides uplink network traffic load management. Next, a section entitled "Example Content Window Operation" illustrates and describes an example of contention window techniques that provide uplink network traffic load management. Additional sections, titled "Example methods" and "Example uplink network traffic load management methods" illustrate and describe techniques that can be used to manage node content windows and to provide network traffic load management. uplink. Finally, the analysis ends with a brief conclusion.
Esta breve introduccion, que incluye tftulos de seccion y correspondientes sumarios, se proporciona para mayor comodidad del lector y no esta prevista para describir y/o limitar el alcance de las reivindicaciones o cualquier seccion de esta divulgacion.This brief introduction, which includes section titles and corresponding summaries, is provided for the convenience of the reader and is not intended to describe and / or limit the scope of the claims or any section of this disclosure.
Arquitectura de red de ejemploSample Network Architecture
La Figura 1 es un diagrama esquematico que muestra la arquitectura de ejemplo 100 de una red, tal como por ejemplo una red de malla inalambrica de multiples canales, en la que las transmisiones de enlace ascendente pueden encaminarse al menos en parte de acuerdo con ventanas de contencion establecidas en cada nodo de acuerdo con tecnicas prescritas en el presente documento. La arquitectura 100 incluye una pluralidad de nodos 102A, 102B, 102C, 102d, ... 102N (denominados de manera colectiva como los nodos 102) acoplados de manera comunicativa entre sf mediante senales de radiofrecuencia (RF) de comunicacion directa, transmisiones o enlaces. En este ejemplo, N representa un numero de nodos de ejemplo en un area de encaminamiento autonoma (ARA),Figure 1 is a schematic diagram showing the example architecture 100 of a network, such as for example a multi-channel wireless mesh network, in which uplink transmissions can be routed at least in part according to windows of content established in each node according to the techniques prescribed in this document. The architecture 100 includes a plurality of nodes 102A, 102B, 102C, 102d, ... 102N (collectively referred to as nodes 102) communicatively coupled to each other via direct communication radio frequency (RF) signals, transmissions or links . In this example, N represents a number of example nodes in an autonomous routing area (ARA),
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
que puede configurarse como una red de area extensa (WAN), red de area metropolitana (MAN), red de area local (LAN), red de area vecina (NAN), red de area personal (PAN) o similares.which can be configured as a wide area network (WAN), metropolitan area network (MAN), local area network (LAN), neighboring area network (NAN), personal area network (PAN) or the like.
Como se ha analizado anteriormente, la expresion “ventana de contencion” se refiere a un periodo de espera que debe esperar un nodo, despues de que la transmision en un canal se finaliza por otro nodo, y antes de que el nodo pueda empezar su propia transmision. Si otro nodo empieza la transmision antes del fin de la ventana de contencion del nodo, el nodo debe suspender una cuenta atras asociada con su propia ventana de contencion, y permitir que el otro nodo use el canal. En un entorno de multiples canales, cada uno de la pluralidad de los canales puede definirse por un intervalo de frecuencia que es el mismo o diferente para cada uno de la pluralidad de canales, y cada canal puede centrarse alrededor de una frecuencia diferente. En algunos casos, la pluralidad de canales comprende canales de RF, que tienen tipicamente una anchura de frecuencia apropiada a una modulacion anticipada y condicion o condiciones del entorno. La pluralidad de canales puede comprender un canal de control y multiples canales de datos. En algunos casos, el canal de control se utiliza para comunicar uno o mas mensajes cortos entre los nodos para especificar uno de los canales de datos a utilizarse para transferir datos. Adicionalmente, el canal de control puede utilizarse mediante una pluralidad de nodos para transmitir informacion que indica su longitud de ventana de contencion. La longitud de la ventana de contencion puede expresarse como un periodo de tiempo, un numero de “intervalos” de tiempo, o cualquier tecnica acordada. En general, las transmisiones en el canal de control son mas cortas en relacion con las transmisiones en los canales de datos.As discussed above, the expression “contention window” refers to a waiting period that a node must wait, after the transmission in a channel is terminated by another node, and before the node can start its own transmission. If another node begins transmission before the end of the node's contention window, the node must suspend a back account associated with its own contention window, and allow the other node to use the channel. In a multi-channel environment, each of the plurality of channels can be defined by a frequency range that is the same or different for each of the plurality of channels, and each channel can be centered around a different frequency. In some cases, the plurality of channels comprises RF channels, which typically have a frequency width appropriate to anticipated modulation and environmental condition or conditions. The plurality of channels may comprise a control channel and multiple data channels. In some cases, the control channel is used to communicate one or more short messages between the nodes to specify one of the data channels to be used to transfer data. Additionally, the control channel can be used by a plurality of nodes to transmit information indicating its content window length. The length of the contention window can be expressed as a period of time, a number of "intervals" of time, or any agreed technique. In general, the transmissions in the control channel are shorter in relation to the transmissions in the data channels.
En el ejemplo de la Figura 1, los nodos 102 estan tambien configurados para comunicar con una oficina central 104 mediante un nodo rafz, tal como un dispositivo de borde (por ejemplo, retransmisor celular, encaminador celular, encaminador de borde, rafz DODAG, etc.), que sirve como un punto de conexion de la ARA a una red o redes de retroceso 106, tal como internet o una intranet. La oficina central 104 puede implementarse mediante uno o mas dispositivos informaticos, tales como servidores, ordenadores personales, ordenadores portatiles, etc. El uno o mas dispositivos informaticos pueden equiparse con uno o mas procesador o procesadores acoplados de manera comunicativa a la memoria. En algunos ejemplos, la oficina central 104 incluye un sistema de gestion de datos de contador centralizado que realiza procesamiento, analisis, almacenamiento y/o gestion de datos recibidos desde uno o mas de los nodos 102. Por ejemplo, la oficina central 104 puede procesar, analizar, almacenar y/o gestionar datos obtenidos desde un contador de servicios publicos inteligente, sensor, dispositivo de control, encaminador, regulador, servidor, retransmisor, conmutacion, valvula y/u otros nodos. Aunque el ejemplo de la Figura 1 ilustra la oficina central 104 en una unica localizacion, en algunos ejemplos la oficina central puede distinguirse entre multiples localizaciones y/o puede eliminarse en su totalidad (por ejemplo, en el caso de una plataforma informatica distribuida altamente descentralizada).In the example of Figure 1, nodes 102 are also configured to communicate with a central office 104 via a root node, such as an edge device (for example, cellular relay, cellular router, edge router, DODAG root, etc. .), which serves as an ARA connection point to a network or backhaul networks 106, such as the internet or an intranet. The central office 104 can be implemented by one or more computer devices, such as servers, personal computers, laptops, etc. The one or more computer devices may be equipped with one or more processors or processors communicatively coupled to memory. In some examples, the central office 104 includes a centralized meter data management system that performs processing, analysis, storage and / or management of data received from one or more of the nodes 102. For example, the central office 104 can process , analyze, store and / or manage data obtained from an intelligent public services meter, sensor, control device, router, regulator, server, relay, switching, valve and / or other nodes. Although the example in Figure 1 illustrates the central office 104 in a single location, in some examples the central office can be distinguished between multiple locations and / or can be eliminated in its entirety (for example, in the case of a highly decentralized distributed computing platform ).
La red o redes 106 pueden comprender una red inalambrica o una alambrica, o una combinacion de las mismas y pueden ser una coleccion de redes individuales interconectadas entre sf y funcionando como una unica red grande. En el ejemplo ilustrado, el nodo 102A sirve como un nodo rafz, configurado como un retransmisor celular para retransmitir conminaciones a y/o desde los otros nodos 102B-102N de la ARA a y/o desde la oficina central 104 mediante la red o redes 106.The network or networks 106 may comprise a wireless network or a wire network, or a combination thereof and may be a collection of individual networks interconnected with each other and functioning as a single large network. In the illustrated example, node 102A serves as a root node, configured as a cellular relay to retransmit conminations to and / or from the other nodes 102B-102N of the ARA to and / or from the central office 104 via the network or networks 106.
El nodo 102D es representativo de cada uno de los nodos 102 e incluye una radio 108, configurada para comunicacion por medio de senales de RF 110, y una unidad de procesamiento 112. La radio 108 comprende un transceptor de radiofrecuencia (RF) configurado para transmitir y/o recibir senales de RF mediante uno o mas de una pluralidad de canales/frecuencias. En algunas implementaciones, cada uno de los nodos 102 incluye una unica radio 108 configurada para enviar y recibir datos en multiples canales diferentes, tales como el canal de control y multiples canales de datos de cada enlace de comunicacion 110. La radio 108 puede configurarse tambien para implementar una pluralidad de diferentes tecnicas de modulacion, velocidades de datos, protocolos, intensidades de senal y/o niveles de potencia. Adicionalmente, la radio puede configurarse para sintonizar secuencialmente una pluralidad de diferentes frecuencias, cada una durante un corto periodo de tiempo, en un esquema de “salto de frecuencia”. La arquitectura 100 puede representar una red heterogenea de nodos, en la que los nodos 102 pueden incluir diferentes tipos de nodos (por ejemplo, contadores inteligentes, retransmisores celulares, sensores, etc.), diferentes generaciones o modelos de nodos, y/o nodos que de otra manera son capaces de transmitir en diferentes canales y usar diferentes tecnicas de modulacion, velocidades de datos, protocolos, intensidades de senal y/o niveles de potencia.Node 102D is representative of each of the nodes 102 and includes a radio 108, configured for communication by means of RF signals 110, and a processing unit 112. Radio 108 comprises a radio frequency (RF) transceiver configured to transmit and / or receive RF signals through one or more of a plurality of channels / frequencies. In some implementations, each of the nodes 102 includes a single radio 108 configured to send and receive data on multiple different channels, such as the control channel and multiple data channels of each communication link 110. Radio 108 can also be configured to implement a plurality of different modulation techniques, data rates, protocols, signal intensities and / or power levels. Additionally, the radio can be configured to sequentially tune a plurality of different frequencies, each for a short period of time, in a "frequency hopping" scheme. The architecture 100 may represent a heterogeneous network of nodes, in which nodes 102 may include different types of nodes (for example, smart meters, cell relays, sensors, etc.), different generations or models of nodes, and / or nodes otherwise they are capable of transmitting on different channels and using different modulation techniques, data rates, protocols, signal intensities and / or power levels.
La unidad de procesamiento 112 puede incluir uno o mas procesador o procesadores 114 acoplados de manera comunicativa a la memoria 116. El procesador 114 puede ejecutar, y la memoria 116 puede contener, diversos modulos, gestores, algoritmos, etc. Los modulos pueden configurarse en software y/o firmware, y pueden ejecutarse en el procesador. En realizaciones alternativas, cualquiera o todos los modulos pueden implementarse en su totalidad o en parte mediante hardware. Ejemplos de hardware incluyen un microcontrolador u otro dispositivo, tal como un circuito integrado espedfico de la aplicacion (ASIC) u otro dispositivo configurado para ejecutar las funciones descritas.The processing unit 112 may include one or more processors or processors 114 communicatively coupled to the memory 116. The processor 114 may execute, and the memory 116 may contain, various modules, managers, algorithms, etc. The modules can be configured in software and / or firmware, and can be executed in the processor. In alternative embodiments, any or all modules may be implemented in whole or in part by hardware. Examples of hardware include a microcontroller or other device, such as a specific application integrated circuit (ASIC) or another device configured to perform the described functions.
La memoria 116, aunque se muestra como una entidad monolftica, puede configurarse tambien como una pluralidad de dispositivos configurados de manera diferente, tal como una memoria de solo lectura, memoria escribible, memoria persistente o no persistente, etc. La memoria 116 puede configurarse para almacenar uno o mas modulosMemory 116, although shown as a monolithic entity, can also be configured as a plurality of devices configured differently, such as read-only memory, writable memory, persistent or non-persistent memory, etc. Memory 116 can be configured to store one or more modules
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
de software y/o firmware, que son ejecutables en el procesador o procesadores 114 para implementar diversas funciones.of software and / or firmware, which are executable in the processor or processors 114 to implement various functions.
La memoria 116 puede comprender medios legibles por ordenador y puede tomar la forma de memoria volatil, tal como memoria de acceso aleatorio (RAM) y/o memoria no volatil, tal como memoria de solo lectura (ROM) o RAM flash. Medio legible por ordenador incluye memoria extrafole y no extrafole, volatil y no volatil, implementada de acuerdo con cualquier tecnologfa o tecnicas para almacenamiento de informacion tales como instrucciones legibles por ordenador, estructuras de datos, modulos de programa u otros datos para ejecucion mediante uno o mas procesadores de un dispositivo informatico. Ejemplos de medio legible por ordenador incluyen, pero sin limitacion, memoria de cambio de fase (PRAM), memoria de acceso aleatorio estatica (SRAM), memoria de acceso aleatorio dinamica (DRAM), otros tipos de memoria de acceso aleatorio (RAM), memoria de solo lectura (ROM), memoria de solo lectura electricamente programable borrable (EEPROM), memoria flash u otra tecnologfa de memoria, memoria de solo lectura de disco compacto (CD-ROM), discos versatiles digitales (DVD) u otro almacenamiento optico, casetes magneticos, cinta magnetica, almacenamiento de disco magnetico u otros dispositivos de almacenamiento magnetico, o cualquier otro medio no de transmision que pueda usarse para almacenar informacion para acceso mediante un dispositivo informatico. Como se define en el presente documento, medio legible por ordenador no incluye medios de comunicacion, tales como senales de datos moduladas y ondas portadoras.Memory 116 may comprise computer-readable media and may take the form of volatile memory, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Computer-readable medium includes extrafole and non-extrafole, volatile and non-volatile memory, implemented in accordance with any technology or information storage techniques such as computer readable instructions, data structures, program modules or other data for execution by one or more processors of a computer device. Examples of computer readable media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile discs (DVD) or other optical storage , magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission means that can be used to store information for access through an information device. As defined herein, a computer-readable medium does not include communication media, such as modulated data signals and carrier waves.
La funcionalidad de la ventana de contencion 118 puede definirse en la memoria 116 y mantenerse mediante las acciones del procesador 114. La informacion de ventana de contencion puede incluir informacion acerca de la duracion de las ventanas de contencion de vecinos aguas arriba del nodo 102D. De acuerdo con las tecnicas anteriormente analizadas, la funcionalidad de la ventana de contencion 118 puede operar para seleccionar una ventana de contencion para el nodo 102D que es mas larga que las ventanas de contencion de vecinos a 1 salto aguas arriba. El uso de una ventana de contencion en el nodo 102D que es mas larga que la de los vecinos aguas arriba (por ejemplo, el nodo 102B) ayuda a la red 100 a eliminar cuellos de botella en la transmision.The functionality of the content window 118 can be defined in the memory 116 and maintained by the actions of the processor 114. The content window information may include information about the duration of the neighbor content windows upstream of the node 102D. According to the techniques discussed above, the functionality of the containment window 118 can operate to select a containment window for node 102D that is longer than the neighbor containment windows at 1 hop upstream. The use of a containment window in node 102D that is longer than that of the upstream neighbors (for example, node 102B) helps network 100 to eliminate bottlenecks in the transmission.
Configuracion de nodo de ejemploSample Node Configuration
La Figura 2 es un diagrama que muestra detalles adicionales de un nodo de ejemplo individual 200. El nodo puede configurarse para proporcionar gestion de carga de trafico para trafico de red de enlace ascendente. El trafico de red de enlace ascendente puede incluir datos que fluyen desde el nodo hasta el nodo en una red de malla en una direccion aguas arriba, es decir, hacia un nodo rafz.Figure 2 is a diagram showing additional details of an individual example node 200. The node can be configured to provide traffic load management for uplink network traffic. The uplink network traffic may include data flowing from the node to the node in a mesh network in an upstream direction, that is, to a root node.
El nodo 200 puede configurarse para ayudar en la gestion de trafico de red aguas arriba en parte gestionando una ventana de contencion usada mediante el nodo. Cuando se detiene la transmision en un canal (es decir, cuando no se escucha actualmente la senal de radiofrecuencia (RF)) los nodos que desean comenzar la transmision deben cada uno esperar hasta una expiracion indicada por sus propias ventanas de contencion. Un nodo que tiene una ventana de contencion mas corta puede empezar la transmision en primer lugar (suponiendo que tiene datos para transmitir), y su transmision tiene el efecto de evitar que los otros nodos transmitan. Si el nodo que tiene la ventana de contencion mas corta no tiene ningun dato que transmitir, un nodo con un tamano de ventana de contencion siguiente mas corto tendra una oportunidad para transmitir, y asf sucesivamente. Por consiguiente, la longitud de una ventana de contencion es un factor que rige el trafico en una red de RF, tal como una red de malla que comprende una pluralidad de nodos, que puede configurarse como una ARA de contadores inteligentes de servicios publicos.Node 200 can be configured to assist in managing upstream network traffic in part by managing a contention window used by the node. When the transmission is stopped on a channel (that is, when the radio frequency (RF) signal is not currently heard) the nodes that wish to begin the transmission must each wait until an expiration indicated by their own content windows. A node that has a shorter content window can start the transmission first (assuming it has data to transmit), and its transmission has the effect of preventing the other nodes from transmitting. If the node that has the shortest contention window has no data to transmit, a node with a shorter contention window size will have an opportunity to transmit, and so on. Therefore, the length of a contention window is a factor that governs traffic in an RF network, such as a mesh network comprising a plurality of nodes, which can be configured as an ARA of smart meters of public services.
La radio 108 puede configurarse para comunicacion con una unidad de procesamiento 112 a traves de un bus de comunicaciones 202. En la configuracion de ejemplo de la Figura 2, la radio puede incluir una antena 204 que proporciona una senal de entrada a un extremo frontal de RF 206. El extremo frontal de RF 206 puede configurarse para sintonizar una senal de RF de entre muchas proporcionadas mediante la antena 204, y proporcionar una senal de banda base al procesador de banda base 208.Radio 108 may be configured for communication with a processing unit 112 through a communications bus 202. In the example configuration of Figure 2, the radio may include an antenna 204 that provides an input signal to a front end of RF 206. The front end of RF 206 can be configured to tune an RF signal among many provided by the antenna 204, and provide a baseband signal to the baseband processor 208.
El extremo frontal de RF 206 puede configurarse usando componentes de hardware de alta frecuencia para sintonizar una o mas frecuencias de senales de RF obtenidas desde nodos dentro de la red. En una configuracion analogica (o analogica y digital mixta), el extremo frontal de RF 206 puede configurarse como una radio o transceptor usando tecnologfa convencional o avanzada, que permite la sintonizacion de una o mas frecuencias. El extremo frontal de RF 206 puede configurarse para procesar senales, tal como se proporcionan mediante una antena 204, que incluye senales de RF (por ejemplo, la senal 110 de la Figura 1) obtenidas desde dispositivos de red. Como salida, el extremo frontal de Rf 206 puede proporcionar datos que estan en general en forma de una senal de banda base analogica o digitalizada enviada al procesador de banda base 208.The front end of RF 206 can be configured using high frequency hardware components to tune one or more frequencies of RF signals obtained from nodes within the network. In an analog (or analogue and mixed digital) configuration, the front end of RF 206 can be configured as a radio or transceiver using conventional or advanced technology, which allows tuning of one or more frequencies. The front end of RF 206 can be configured to process signals, as provided by an antenna 204, which includes RF signals (for example, signal 110 of Figure 1) obtained from network devices. As an output, the front end of Rf 206 can provide data that is generally in the form of an analog or digitized baseband signal sent to the baseband processor 208.
En un ejemplo del extremo frontal de RF 206, se utiliza una unica frecuencia, por ejemplo, una frecuencia central del mismo canal, para comunicaciones de RF mediante uno o mas de los nodos (por ejemplo, los nodos 102 de la Figura 1) de una red. En un ejemplo de este tipo, el extremo frontal de RF 206 puede sintonizar o escuchar en una frecuencia central a traves de un ancho de banda tan grande como un ancho de banda mas ancho usado por cualquier protocolo soportado. En un segundo ejemplo del extremo frontal de RF 206, puede usarse una pluralidad de canales y/o frecuencias, y el extremo frontal de RF 206 puede configurarse para realizar una funcionalidad deIn an example of the front end of RF 206, a single frequency, for example, a center frequency of the same channel, is used for RF communications via one or more of the nodes (for example, nodes 102 of Figure 1) of a network. In such an example, the front end of RF 206 can tune in or listen to a central frequency through a bandwidth as large as a wider bandwidth used by any supported protocol. In a second example of the front end of RF 206, a plurality of channels and / or frequencies can be used, and the front end of RF 206 can be configured to perform a functionality of
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
salto de frecuencia entre la pluralidad de canales. En algunas aplicaciones, el extremo frontal de RF 206 se configurara para sintonizar entre un canal utilizado como un canal de control y otros canales utilizados como canales de datos. Los nodos pueden comunicar en conversaciones breves en el canal de control, y acordar transferir datos en uno de los canales de datos. Por lo tanto, el extremo frontal de RF 206 puede configurarse para realizar salto de frecuencia a traves de una pluralidad de canales definidos en un ancho de banda.frequency jump between the plurality of channels. In some applications, the front end of RF 206 will be configured to tune between a channel used as a control channel and other channels used as data channels. The nodes can communicate in brief conversations on the control channel, and agree to transfer data in one of the data channels. Therefore, the front end of RF 206 can be configured to perform frequency hopping through a plurality of channels defined in a bandwidth.
El procesador de banda base 208 puede configurarse para modular y/o demodular datos escuchados en cualquier canal sintonizado o transmitido mediante el extremo frontal de RF 206. En particular, el procesador de banda base 208 puede configurarse para modulacion y demodulacion de acuerdo con uno o mas protocolos requeridos por uno o mas nodos 102 (como se observa en la Figura 1).The baseband processor 208 can be configured to modulate and / or demodulate data heard on any channel tuned or transmitted via the front end of RF 206. In particular, the baseband processor 208 can be configured for modulation and demodulation according to one or more protocols required by one or more nodes 102 (as seen in Figure 1).
La unidad de procesamiento 112 puede incluir un procesador 114, una memoria 116 y un reloj 210. El reloj 210 puede usarse para medir y/o temporizar ventanas de contencion, salto de frecuencia, funciones de red y/o nodo y similares.The processing unit 112 may include a processor 114, a memory 116 and a clock 210. The clock 210 may be used to measure and / or timing windows of contention, frequency hopping, network and / or node functions and the like.
La memoria 116 puede incluir una lista 212. En un ejemplo, la lista comprende uno o mas de: indicaciones de nodos primarios (por ejemplo, por ID de red); una longitud de ventana de contencion (CW) asociada; y un tiempo de espera asociado con una o mas de las ventanas de contencion. En un ejemplo, si un nodo tiene un unico nodo primario, la lista 212 puede contener indicaciones del nombre o ID de red del primario, indicaciones de longitud de una ventana de contencion del primario, y un tiempo de espera de la ventana de contencion del primario. El tiempo de espera es un periodo de tiempo o un tiempo de expiracion. Una vez que el periodo ha expirado, o se ha alcanzado el tiempo de expiracion, la ventana de contencion del nodo primario se vuelve “prescrita” y ya no se considera por el nodo cuando se calcula la propia ventana de contencion del nodo. En un ejemplo, tras la expiracion de una ventana de contencion de un primario, el nodo puede establecer en su lugar su propia ventana de contencion basandose en un algoritmo de CSMA/CA, sin considerar la ventana de contencion prescrita del nodo primario.The memory 116 may include a list 212. In one example, the list comprises one or more of: indications of primary nodes (for example, by network ID); an associated contention window (CW) length; and a timeout associated with one or more of the containment windows. In one example, if a node has a single primary node, list 212 may contain indications of the primary's name or network ID, length indications of a primary contention window, and a timeout of the contention window of the primary primary. The waiting time is a period of time or an expiration time. Once the period has expired, or the expiration time has been reached, the content window of the primary node becomes “prescribed” and is no longer considered by the node when the node's own contention window is calculated. In one example, after the expiration of a primary window containing a primary, the node may instead establish its own contention window based on a CSMA / CA algorithm, without considering the prescribed content window of the primary node.
En algunas implementaciones de ejemplo, el reloj 210 puede ser un dispositivo de hardware, mientras que un temporizador 214 puede ser un programa o modulo definido en la memoria 116, ejecutable mediante el procesador 114 y configurado para utilizar el reloj, en conjunto con uno o mas algoritmos, instrucciones, variables o banderas. Como tal, el temporizador 214 puede programarse para utilizar el reloj 210 para temporizar eventos, que incluyen salto de canal, ventana o ventanas de contencion y similares.In some example implementations, the clock 210 may be a hardware device, while a timer 214 may be a program or module defined in memory 116, executable by processor 114 and configured to use the clock, in conjunction with one or more more algorithms, instructions, variables or flags. As such, timer 214 can be programmed to use clock 210 to time events, including skip channel, window or content windows and the like.
Un algoritmo 216 de acceso multiple por deteccion de portadora con evitacion de colision (CSMA/CA) puede definirse en la memoria 116, ejecutable mediante el procesador 114 y configurarse para calcular una ventana de contencion “por defecto” para el nodo 200. En particular, el algoritmo 216 de CSMA/CA puede calcular una ventana de contencion usada en nodos convencionales, y que se usa unicamente en ciertas circunstancias mediante el nodo 200.An algorithm 216 of multiple access by carrier detection with collision avoidance (CSMA / CA) can be defined in the memory 116, executable by the processor 114 and configured to calculate a "default" contention window for the node 200. In particular , the CSMA / CA algorithm 216 can calculate a contention window used in conventional nodes, and that is used only in certain circumstances by node 200.
Un modulo de calculo de tamano de ventana de contencion 218 puede definirse en la memoria 116, ejecutable mediante el procesador 114 y configurarse para calcular un tamano (longitud y/o duracion) de una ventana de contencion 220. En un ejemplo, el modulo de calculo de tamano de ventana de contencion 218 obtiene la ventana o ventanas de contencion del primario o primarios de la lista 212. Si el tiempo o tiempos de espera asociados con la ventana o ventanas de contencion indican que las ventanas de contencion son aun validas y/o “en vigor” entonces se usa/usan como entrada mediante el modulo de calculo de tamano de ventana de contencion 218. Adicionalmente, el modulo de calculo de tamano de ventana de contencion 218 puede obtener una ventana de contencion a partir del algoritmo 216 de CSMA/CA para su uso como entrada. Esta ventana de contencion, desde el algoritmo CSMA/CA, se usana mediante el nodo en una aplicacion de red convencional. El modulo de calculo de tamano de ventana de contencion 218 del nodo 200 a continuacion determina la mayor de las ventanas de contencion usada como entrada y establece la ventana de contencion 220 para el nodo 200 como la mayor de las ventanas de contencion de entrada.A content window size calculation module 218 can be defined in the memory 116, executable by the processor 114 and configured to calculate a size (length and / or duration) of a content window 220. In one example, the content module Calculation of size of contention window 218 obtains the contention window or windows of the primary or primary of the list 212. If the time or wait times associated with the contention window or windows indicate that the contention windows are still valid and / or "in effect" is then used / used as input by the content window size calculation module 218. Additionally, the content window size calculation module 218 can obtain a contention window from algorithm 216 of CSMA / CA for use as input. This content window, from the CSMA / CA algorithm, is used by the node in a conventional network application. The content window size calculation module 218 of node 200 below determines the largest of the contention windows used as input and sets the contention window 220 for node 200 as the largest of the input contention windows.
Un gestor de ventana de contencion 222 puede definirse en la memoria 116, ejecutable mediante el procesador 114 y configurarse para cualquiera de diversos fines. Por ejemplo, el gestor de ventana de contencion 222 puede configurarse para ayudar en el mantenimiento de la lista 212. Adicionalmente y/o como alternativa, el gestor de ventana de contencion 222 puede configurarse para anunciar, en mensajes a vecinos, el tamano de la ventana de contencion 220 del nodo, segun se calcula mediante el modulo de calculo de tamano de ventana de contencion 218.A content window manager 222 can be defined in memory 116, executable by processor 114 and configured for any of several purposes. For example, the content window manager 222 can be configured to assist in the maintenance of the list 212. Additionally and / or as an alternative, the content window manager 222 can be configured to announce, in messages to neighbors, the size of the containment window 220 of the node, as calculated by the calculation module of size of containment window 218.
Operacion de ventana de contencion de ejemploSample Containment Window Operation
La Figura 3 es un diagrama de temporizacion 300 que muestra un ejemplo de como pueden evitarse colisiones de paquetes de datos transmitidos a traves de senales de RF. En un ejemplo, las colisiones se evitan mediante el uso y/u operacion de la lista 212, el temporizador 214, el algoritmo 216 de CSMA/CA, el modulo de calculo de tamano de ventana de contencion 218 y el gestor de ventana de contencion 222 de la Figura 2. El diagrama de temporizacion 300 muestra lmeas de tiempo asociadas con un nodo, su primario y su secundario. El nodo se encuentra aguas arriba del nodo secundario, pero aguas abajo del nodo primario. En el ejemplo de la Figura 1, el primario esta mas cerca al encaminador celular 102A y a la red 106. El ejemplo de la Figura 3 ilustra como se le da prioridad al nodoFigure 3 is a timing diagram 300 showing an example of how collisions of data packets transmitted through RF signals can be avoided. In one example, collisions are avoided by the use and / or operation of list 212, timer 214, CSMA / CA algorithm 216, contention window size calculation module 218 and contention window manager 222 of Figure 2. Timing diagram 300 shows time lines associated with a node, its primary and its secondary. The node is located upstream of the secondary node, but downstream of the primary node. In the example of Figure 1, the primary is closer to the cellular router 102A and the network 106. The example of Figure 3 illustrates how the node is given priority
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
primario, sobre el nodo, para transmitir datos mediante la operacion de las funciones de ventana de contencion 212222 (como se observa en la Figura 2). Y en particular, como un nodo, asignandose a s^ mismo una ventana de contencion mas larga que su primario, puede proporcionar prioridad al primario.primary, over the node, to transmit data through the operation of the containment window functions 212222 (as seen in Figure 2). And in particular, as a node, by assigning itself a window of content longer than its primary, it can provide priority to the primary.
En el diagrama 300, una primera ventana de contencion 302 acaba de finalizar. El nodo secundario puede haber estado en solitario entre los nodos que desean transmitir y envfa un paquete de solicitud para enviar (RTS) 304 al nodo (que puede ser el primario del nodo secundario). El nodo responde con un paquete de liberar para enviar (CTS) 306. En respuesta, el nodo secundario envfa datos 308. Tras la conclusion de la transmision de los datos 308, el nodo envfa un acuse de recibo 310.In diagram 300, a first containment window 302 has just finished. The secondary node may have been alone between the nodes that wish to transmit and sends a request packet to send (RTS) 304 to the node (which may be the primary of the secondary node). The node responds with a free to send packet (CTS) 306. In response, the secondary node sends data 308. Upon completion of the transmission of the data 308, the node sends an acknowledgment 310.
Durante la transmision de los datos 308, en los tiempos 312 y 314, el nodo primario y el nodo, respectivamente, ambos deciden que tienen datos que desean transmitir. Por consiguiente, la etapa se establece para que haya diferencias en las ventanas de contencion para evitar una colision de RF. Y ademas, la etapa se establece para que la funcionalidad de ajuste de ventana de contencion, observada en el nodo 200 de la Figura 2, proporcione prioridad al nodo primario. En el ejemplo de la Figura 3, el nodo primario desea transmitir datos al nodo. Sin embargo, el nodo primario podna desear como alternativa transmitir a otro nodo, tal como a su nodo primario. Ademas, para evitar colisiones, unicamente se permitira a uno del nodo y el nodo primario transmitir despues de la conclusion de la transmision del nodo secundario. Por consiguiente, despues de que el nodo proporciona un acuse de recibo 310 de la transmision del nodo secundario, comienza un segundo periodo de contencion 316, que determinara cual, entre el nodo y el nodo primario, esta permitido a transmitir a continuacion.During the transmission of data 308, at times 312 and 314, the primary node and the node, respectively, both decide that they have data that they wish to transmit. Therefore, the stage is set so that there are differences in the contention windows to avoid an RF collision. And in addition, the stage is set so that the contention window adjustment functionality, observed in node 200 of Figure 2, gives priority to the primary node. In the example in Figure 3, the primary node wishes to transmit data to the node. However, the primary node may alternatively wish to transmit to another node, such as its primary node. In addition, to avoid collisions, only one of the node and the primary node will be allowed to transmit after the conclusion of the transmission of the secondary node. Therefore, after the node provides an acknowledgment 310 of the transmission of the secondary node, a second containment period 316 begins, which will determine which, between the node and the primary node, is allowed to transmit next.
Despues del acuse de recibo 310, se detiene la transmision mediante todos los nodos. El siguiente nodo permitido a transmitir sera el nodo con el periodo de contencion mas corto. Puesto que todos los nodos tienen diferentes periodos de contencion, se evitan colisiones potenciales. En el ejemplo de la Figura 3, despues de que el nodo primario cuenta cinco intervalos de tiempo vacfos en la ventana de contencion, la ventana de contencion del nodo primario finaliza y envfa un RTS 318 al nodo. El nodo, cuya ventana de contencion no se ha agotado aun, se da cuenta que este no es su turno para transmitir. Por consiguiente, el nodo envfa un CTS 320 al nodo primario, que indica que el nodo primario esta libre para enviar (es decir, para transmitir). Por consiguiente, el nodo primario envfa datos 322. Tras la conclusion de la transmision de los datos 322, el nodo envfa un acuse de recibo 324. En respuesta al acuse de recibo 324, se inicia una tercera ventana de contencion 326.After acknowledgment 310, the transmission is stopped by all nodes. The next node allowed to transmit will be the node with the shortest contention period. Since all nodes have different periods of containment, potential collisions are avoided. In the example of Figure 3, after the primary node counts five empty time slots in the containment window, the containment window of the primary node terminates and sends an RTS 318 to the node. The node, whose containment window has not yet run out, realizes that this is not your turn to transmit. Therefore, the node sends a CTS 320 to the primary node, which indicates that the primary node is free to send (ie, to transmit). Therefore, the primary node sends data 322. Upon completion of the transmission of the data 322, the node sends an acknowledgment 324. In response to the acknowledgment 324, a third contention window 326 is initiated.
Por lo tanto, la Figura 3 ilustra que el nodo primario y el nodo ambos desean enviar datos en la siguiente oportunidad, es decir, despues de la segunda ventana de contencion. Sin embargo, puesto que el nodo establece su ventana de contencion para que sea mas larga que la ventana de contencion de su primario, el primario finalizo su ventana de contencion en primer lugar, y envfa el RTS 318, provocando de esta manera que el nodo tenga que esperar hasta una ventana de contencion posterior para enviar sus datos. Desde la perspectiva de la red, el comportamiento ilustrado por la Figura 3 proporciona una ventaja, en que a los nodos aguas arriba se les proporciona prioridad, teniendo ventanas de contencion mas cortas, y por lo tanto pueden enviar mas datos durante trafico de red intenso. Por ejemplo, a medida que el trafico de red se acerca un nodo rafz de la red, el trafico se asume por los nodos que tienen ventanas de contencion mas cortas que los nodos aguas abajo. Las ventanas de contencion mas cortas ayudan a estos nodos a transmitir con mayor frecuencia en enlaces ocupados.Therefore, Figure 3 illustrates that the primary node and the node both wish to send data at the next opportunity, that is, after the second containment window. However, since the node sets its containment window to be longer than its primary's containment window, the primary one terminates its containment window first, and sends the RTS 318, thereby causing the node have to wait until a subsequent contention window to send your data. From the network perspective, the behavior illustrated by Figure 3 provides an advantage, in that the upstream nodes are given priority, having shorter content windows, and therefore can send more data during intense network traffic . For example, as the network traffic approaches a network root node, the traffic is assumed by nodes that have shorter content windows than downstream nodes. Shorter content windows help these nodes to transmit more frequently on busy links.
Metodos de ejemploExample methods
Los procesos de ejemplo de las Figuras 4-8 pueden entenderse en parte por referencia a las configuraciones de las Figuras 1-3. Sin embargo, las Figuras 4-8 tienen aplicabilidad general, y no estan limitadas por otras figuras de los dibujos y/o analisis anterior.The example processes of Figures 4-8 can be understood in part by reference to the configurations of Figures 1-3. However, Figures 4-8 have general applicability, and are not limited by other figures in the drawings and / or analysis above.
Cada proceso descrito en el presente documento se ilustra como una coleccion de actos, bloques u operaciones en un grafico de flujo logico, que representa una secuencia de operaciones que pueden implementarse en hardware, software o una combinacion de los mismos. Los procesos pueden incluir almacenar, en una memoria acoplada de manera comunicativa a un procesador, instrucciones ejecutables por ordenador para realizar un metodo, tal como un metodo de proporcion de gestion de carga de trafico para trafico de red de enlace ascendente, y ejecutar las instrucciones en el procesador.Each process described in this document is illustrated as a collection of acts, blocks or operations in a logic flow chart, which represents a sequence of operations that can be implemented in hardware, software or a combination thereof. The processes may include storing, in a memory communicatively coupled to a processor, computer executable instructions for performing a method, such as a method of providing traffic load management for uplink network traffic, and executing the instructions in the processor
En el contexto de software, las operaciones representan instrucciones ejecutables por ordenador almacenadas en uno o mas medios de almacenamiento legibles por ordenador (por ejemplo, la memoria 116 de las Figuras 1 y 2) que, cuando se ejecutan mediante uno o mas procesadores (por ejemplo, los procesadores 114 de las Figuras 1 y 2), realizan las operaciones indicadas. Tal medio de almacenamiento, procesadores e instrucciones legibles por ordenador pueden localizarse en un sistema (por ejemplo, el sistema 100 de la Figura 1 o el sistema 200 de la Figura 2) de acuerdo con un diseno o implementacion deseados. El medio de almacenamiento 116 observado en las Figuras 1 y 2 es representativo de medio de almacenamiento en general, tanto extrafble como no extrafble y de cualquier tecnologfa. Por lo tanto, las operaciones indicadas representan acciones, tales como aquellas descritas en las Figuras 4-8, y se realizan bajo el control de uno o mas procesadores configurados con instrucciones ejecutables para realizar las acciones indicadas. En general, las instrucciones ejecutables por ordenador incluyen rutinas, programas, objetos, componentes, estructuras de datos y similares que realizan funciones particulares oIn the software context, the operations represent computer-executable instructions stored in one or more computer-readable storage media (for example, memory 116 of Figures 1 and 2) which, when executed by one or more processors (by For example, processors 114 of Figures 1 and 2) perform the indicated operations. Such a computer-readable storage medium, processors and instructions can be located in a system (for example, the system 100 of Figure 1 or the system 200 of Figure 2) according to a desired design or implementation. The storage medium 116 observed in Figures 1 and 2 is representative of the storage medium in general, both removable and non-removable and of any technology. Therefore, the indicated operations represent actions, such as those described in Figures 4-8, and are performed under the control of one or more processors configured with executable instructions to perform the indicated actions. In general, computer executable instructions include routines, programs, objects, components, data structures and the like that perform particular functions or
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
implementan tipos de datos abstractos particulares. El orden en el que se describen las operaciones no se pretende que se interprete como una limitacion, y las operaciones descritas pueden combinarse en diferentes ordenes y/o en paralelo para implementar el proceso. El analisis anterior puede aplicarse a otros procesos descritos en el presente documento.They implement particular abstract data types. The order in which the operations are described is not intended to be interpreted as a limitation, and the operations described can be combined in different orders and / or in parallel to implement the process. The above analysis can be applied to other processes described in this document.
La memoria 116 puede comprender medios legibles por ordenador que pueden adoptar la forma de memoria volatil, tal como memoria de acceso aleatorio (RAM) y/o memoria no volatil, tal como memoria de solo lectura (ROM) o RAM flash. Los medios legibles por ordenador incluyen memoria extrafble y no extrafble, volatil y no volatil, implementada en cualquier metodo o tecnologfa para almacenamiento de informacion tal como instrucciones legibles por ordenador, estructuras de datos, modulos de programa u otros datos para su ejecucion por uno o mas procesadores de un dispositivo informatico. Ejemplos de medio legible por ordenador incluyen, pero sin limitacion, memoria de cambio de fase (PRAM), memoria de acceso aleatorio estatica (SRAM), memoria de acceso aleatorio dinamica (DRAM), otros tipos de memoria de acceso aleatorio (RAM), memoria de solo lectura (ROM), memoria de solo lectura electricamente programable borrable (EEPROM), memoria flash u otra tecnologfa de memoria, memoria de solo lectura de disco compacto (CD-ROM), discos versatiles digitales (DVD) u otro almacenamiento optico, casetes magneticos, cinta magnetica, almacenamiento de disco magnetico u otros dispositivos de almacenamiento magnetico, o cualquier otro medio no de transmision que pueda usarse para almacenar informacion para acceso mediante un dispositivo informatico. Como se define en el presente documento, medio legible por ordenador no incluye medio de comunicacion, tal como senales de datos modulados y ondas portadoras.The memory 116 may comprise computer-readable media that may take the form of volatile memory, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Computer-readable media include removable and non-removable, volatile and non-volatile memory, implemented in any method or technology for storing information such as computer readable instructions, data structures, program modules or other data for execution by one or more. more processors of a computer device. Examples of computer readable media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile discs (DVD) or other optical storage , magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission means that can be used to store information for access through an information device. As defined herein, computer readable media does not include media, such as modulated data signals and carrier waves.
Adicionalmente, para los fines del presente documento, un medio legible por ordenador puede incluir todo o parte de un circuito integrado espedfico de la aplicacion (ASIC) u otro dispositivo de hardware. Un dispositivo de hardware de este tipo puede configurarse para incluir otra funcionalidad, que incluye funciones que proporcionan gestion de carga de trafico para trafico de red de enlace ascendente. Por consiguiente, dentro de un circuito integrado de este tipo, uno o mas procesadores estan configurados con instrucciones ejecutables, que pueden definirse mediante logica, transistores u otros componentes o en memoria integrada.Additionally, for the purposes of this document, a computer-readable medium may include all or part of a specific application integrated circuit (ASIC) or other hardware device. Such a hardware device can be configured to include other functionality, which includes functions that provide traffic load management for uplink network traffic. Therefore, within such an integrated circuit, one or more processors are configured with executable instructions, which can be defined by logic, transistors or other components or in integrated memory.
Metodos de gestion de carga de trafico de red de enlace ascendente de ejemploExample uplink network traffic load management methods
La Figura 4 es un diagrama de flujo que ilustra un metodo de ejemplo 400 mediante el cual puede gestionarse el trafico de red de enlace ascendente. En la operacion 402, un nodo mantiene una lista, base de datos, estructura de datos y/o almacenamiento de datos que incluye informacion acerca del nodo o nodos primarios del nodo. En el ejemplo de la Figura 2, la lista 212 incluye informacion acerca de los nodos primarios, sus ventanas de contencion y sus tiempos de expiracion y/o tiempos de espera. La lista puede mantenerse, por ejemplo, mediante el gestor de ventana de contencion 222. La lista puede incluir el ID de nodo o de red del primario o primarios del nodo. La lista puede incluir un tamano o un indicador de un tamano de una ventana de contencion de uno o mas nodos primarios en la lista. Adicionalmente, para cada ventana de contencion, la lista puede incluir un tiempo de espera y/o tiempo de expiracion de la ventana de contencion. Despues de que ha transcurrido el periodo de tiempo de espera, o se ha alcanzado el tiempo de expiracion, la ventana de contencion con la que esta asociada el tiempo de espera ya no se considera valida y/o usable. Por consiguiente, el nodo puede establecer su ventana de contencion a otro valor introducido en un algoritmo de ajuste de ventana de contencion. Por ejemplo, el nodo puede establecer su ventana de contencion a un valor calculado de CSMA/CA. El nodo puede mantener la lista escuchando en un canal de control cuando el nodo no esta transmitiendo o recibiendo datos en otros canales. En particular, los nodos pueden usar el canal de control para publicar informacion de ventana de contencion. Los nodos pueden usar tambien paquetes de RTS y/o CTS para publicar o declarar informacion de ventana de contencion.Figure 4 is a flowchart illustrating an example method 400 by which the uplink network traffic can be managed. In step 402, a node maintains a list, database, data structure and / or data storage that includes information about the node or primary nodes of the node. In the example of Figure 2, list 212 includes information about the primary nodes, their containment windows and their expiration times and / or waiting times. The list can be maintained, for example, by the containment window manager 222. The list can include the node or network ID of the node's primary or primary. The list may include a size or an indicator of a size of a window containing one or more primary nodes in the list. Additionally, for each contention window, the list may include a timeout and / or expiration time of the contention window. After the timeout period has elapsed, or the expiration time has been reached, the content window with which the timeout is associated is no longer considered valid and / or usable. Therefore, the node can set its contention window to another value entered in a contention window adjustment algorithm. For example, the node can set its containment window to a calculated value of CSMA / CA. The node can keep the list listening on a control channel when the node is not transmitting or receiving data on other channels. In particular, the nodes can use the control channel to publish content window information. The nodes can also use RTS and / or CTS packages to publish or declare contention window information.
En la operacion 404, una ventana de contencion puede establecerse para que sea mas larga que una ventana de contencion de un primario del nodo. Por lo tanto, un nodo, que ha mantenido la lista analizada en la operacion 402, puede establecer una ventana de contencion para que sea mas larga que las ventanas de contencion de cualquiera, alguno o todos su primario o primarios. Esto tiende a poner el nodo o nodos primarios en ventaja, siguiendo la conclusion de la transmision sobre un canal, en que el primario del nodo, que tiene una ventana de contencion mas corta, tendra prioridad sobre el nodo cuando ambos desean usar un canal/frecuencia. En el ejemplo de la Figura 2, el modulo de calculo de tamano de ventana de contencion 218 puede usarse para realizar la operacion 404.In operation 404, a containment window may be set to be longer than a containment window of a node primary. Therefore, a node, which has maintained the list analyzed in step 402, may establish a containment window to be longer than the containment windows of any, some or all of its primary or primary. This tends to put the node or primary nodes at an advantage, following the conclusion of the transmission over a channel, in which the node's primary, which has a shorter content window, will have priority over the node when both wish to use a channel / frequency. In the example of Figure 2, the content window size calculation module 218 can be used to perform operation 404.
En la operacion 406, puede anunciarse un tamano de una ventana de contencion, al menos hasta vecinos a 1 salto aguas abajo del nodo. Los vecinos a 1 salto aguas abajo pueden incluir nodos que estan dentro del intervalo de senal de RF del nodo, es decir, nodos con los que el nodo puede comunicar. El anuncio del tamano de la ventana de contencion del nodo puede realizarse particularmente a nodos del nodo secundario (aguas abajo), es decir, nodos que estan aguas abajo del nodo. El anuncio puede considerarse una publicacion, y puede usarse para que los nodos receptores actualicen su lista (vease la operacion 402). En el ejemplo de la Figura 2, el gestor de ventana de contencion 222 puede configurarse para realizar la operacion 406. Observese que mientras que un nodo puede establecer su ventana de contencion para que sea mas larga que las ventanas de contencion de sus primarios, los secundarios del nodo pueden establecer tambien sus ventanas de contencion para que sean mas largas que la ventana de contencion del nodo. Por lo tanto, los nodos aguas abajo pueden tener en general ventanas de contencion mas largas, ayudando de esta manera a los nodos aguas arriba donde es mas probable un cuello de botella.In step 406, a size of a containment window can be announced, at least to neighbors 1 hop downstream from the node. Neighbors at 1 hop downstream may include nodes that are within the RF signal range of the node, that is, nodes with which the node can communicate. The announcement of the size of the node containment window can be made particularly to nodes of the secondary node (downstream), that is, nodes that are downstream of the node. The announcement can be considered a publication, and can be used for the receiving nodes to update their list (see step 402). In the example of Figure 2, the content window manager 222 can be configured to perform operation 406. Note that while a node can set its contention window to be longer than the contention windows of its primary ones, the Secondary node can also set their containment windows to be longer than the node containment window. Therefore, downstream nodes may generally have longer containment windows, thus helping upstream nodes where a bottleneck is most likely.
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
50fifty
5555
6060
6565
En la operacion 408, el nodo puede intercambiar paquetes de RTS y/o CTS con otro nodo. Uno o ambos de tales paquetes pueden incluir informacion de tamano de ventana de contencion. Por lo tanto, los nodos que escuchan un canal de control pueden escuchar por casualidad nodos que desvelan informacion de tamano de ventana de contencion. Habiendo escuchado por casualidad esa informacion, el nodo puede actualizar su lista, si fuera apropiado (por ejemplo, como en la operacion 402).In operation 408, the node can exchange RTS and / or CTS packets with another node. One or both of such packages may include content window size information. Therefore, the nodes that listen to a control channel can by chance listen to nodes that reveal information of contention window size. Having heard this information by chance, the node can update its list, if appropriate (for example, as in operation 402).
En la operacion 410, pueden enviarse datos mediante un nodo a su nodo primario. El envfo puede comenzar despues de una espera indicada mediante la ventana de contencion. Puesto que el nodo habra establecido su ventana de contencion para que sea mas larga que la del nodo primario (vease la operacion 404), el nodo no transmitira datos al primario si el primario necesita el canal para transmision durante el periodo de espera del nodo.In step 410, data can be sent via a node to its primary node. The shipment can begin after a wait indicated by the containment window. Since the node will have set its containment window to be longer than that of the primary node (see operation 404), the node will not transmit data to the primary if the primary needs the transmission channel during the node's waiting period.
En la operacion 412, pueden recibirse datos mediante el nodo desde un vecino a 1 salto, tal como un secundario del nodo. La recepcion puede comenzar despues de periodo de tiempo mas largo que la ventana de contencion del nodo anunciada. Por lo tanto, si el nodo necesita el canal para su propia transmision, su propia ventana de contencion mas corta le permitira comenzar usando el canal antes de que los vecinos aguas abajo a 1 salto (por ejemplo, nodos secundarios) puedan a comenzar su uso.In step 412, data can be received by the node from a 1-hop neighbor, such as a node node. Reception can begin after a longer period of time than the content window of the announced node. Therefore, if the node needs the channel for its own transmission, its own shorter content window will allow it to start using the channel before the downstream neighbors at 1 hop (for example, secondary nodes) can begin use .
La Figura 5 es un diagrama de flujo que ilustra un metodo de ejemplo 500 mediante el cual puede gestionarse la informacion con respecto a ventanas de contencion de nodos vecinos. Como tal, el metodo 500 proporciona un ejemplo y/o informacion adicional sobre como puede obtenerse informacion de ventana de contencion, y como puede mantenerse la lista 212 de la Figura 2, como se analiza en la operacion 402 de la Figura 4. En la operacion 502, las indicaciones de las longitudes de ventana de contencion pueden recibirse mediante un nodo desde uno o mas primarios del nodo. Las indicaciones pueden proporcionarse por las publicaciones, mediante paquetes de RTS/CTS, u otros paquetes expresamente pretendidos para transferir informacion de tamano de ventana de contencion, o similares.Figure 5 is a flow chart illustrating an example method 500 by which information can be managed with respect to windows containing neighboring nodes. As such, method 500 provides an example and / or additional information on how contention window information can be obtained, and how list 212 of Figure 2 can be maintained, as discussed in step 402 of Figure 4. In the operation 502, the indications of the content window lengths can be received by a node from one or more primary of the node. The indications can be provided by the publications, by means of RTS / CTS packages, or other packages expressly intended to transfer information of content window size, or the like.
En la operacion 504, puede recibirse una publicacion desde el nodo rafz que sirve como un punto de conexion de la ARA a una red de retroceso (por ejemplo, el nodo 102A en la Figura 1). Desde el punto de vista de la comunicacion de enlace ascendente, el nodo rafz es un primario aguas arriba unico de todos los nodos vecinos a 1 salto. Puesto que el nodo rafz no tiene primario aguas arriba, no mantendra un tamano de ventana de contencion para su propia comunicacion de enlace ascendente. Sin embargo, el nodo rafz puede monitorizar comunicaciones de enlace ascendente desde todos los vecinos a 1 salto y puede calcular y/u optimizar el tamano de ventana de contencion para usarse por sus nodos vecinos que puede aumentar o maximizar el caudal de enlace ascendente global o minimizar el retardo de enlace ascendente. Este calculo puede hacerse mediante el modulo de calculo de tamano de ventana de contencion 218 en la Figura 2. El nodo rafz puede a continuacion anunciar el tamano de ventana de contencion optimo a todos los nodos vecinos. En un ejemplo, los tamanos de ventana de contencion anunciados por la rafz a una pluralidad de vecinos aguas abajo a 1 salto de la rafz estan dimensionados y/o calculados por la rafz para proporcionar ventanas de contencion mas cortas a vecinos a 1 salto de la rafz requeridas para transmitir mas datos y ventanas de contencion mas largas a vecinos a 1 salto de la rafz requeridas para transmitir menos datos. La publicacion desde el nodo rafz puede ser ademas, o como alternativa, a otros medios mediante los cuales un nodo puede recibir informacion de ventana de contencion. En el ejemplo de la Figura 2, el gestor de ventana de contencion 222 puede recibir y/o gestionar esta publicacion.In step 504, a publication can be received from the root node that serves as a connection point for the ARA to a backhaul network (for example, node 102A in Figure 1). From the point of view of uplink communication, the root node is a single upstream primary of all neighboring nodes at 1 hop. Since the root node has no upstream primary, it will not maintain a containment window size for its own uplink communication. However, the root node can monitor uplink communications from all neighbors at 1 hop and can calculate and / or optimize the content window size to be used by its neighboring nodes that can increase or maximize the overall uplink flow or minimize uplink delay. This calculation can be done using the content window size calculation module 218 in Figure 2. The root node can then announce the optimal content window size to all neighboring nodes. In one example, the containment window sizes announced by the root to a plurality of downstream neighbors at 1 jump from the root are sized and / or calculated by the root to provide shorter content windows to neighbors at 1 jump from the root. root required to transmit more data and longer content windows to neighbors within 1 jump of the root required to transmit less data. Publication from the root node can also be, or as an alternative, to other means by which a node can receive contention window information. In the example of Figure 2, the content window manager 222 can receive and / or manage this publication.
En la operacion 506, una pluralidad de primarios de un nodo, una pluralidad de ventanas de contencion (por ejemplo, indicaciones de tiempos de ventana de contencion), y una pluralidad de tiempos de espera las ventanas de contencion, respectivamente, pueden organizarse en una lista. En el ejemplo de la Figura 2, la lista 212 puede mantenerse mediante el gestor de ventana de contencion 222, o similares.In step 506, a plurality of primaries of a node, a plurality of containment windows (for example, indications of containment window times), and a plurality of wait times the containment windows, respectively, can be organized into a list. In the example of Figure 2, the list 212 may be maintained by the content window manager 222, or the like.
La Figura 6 es un diagrama de flujo que ilustra un metodo de ejemplo 600 mediante el cual pueden gestionarse periodos de tiempo de espera de ventanas de contencion de otros nodos. Como tal, el metodo 600 proporciona un ejemplo y/o informacion adicional sobre como puede hacerse expirar la informacion de ventana de contencion y mantenerse en la lista 212 de la Figura 2, como se analiza en la operacion 402 de la Figura 4. En general, una ventana de contencion se usa unicamente antes de la expiracion de su periodo de tiempo de espera. La ventana de contencion no se usa siguiendo el periodo de tiempo de espera, que puede expresarse como un periodo de cuenta a atras o una fecha y hora, o similares. Puesto que la ventana de contencion no se usa, puede usarse en su lugar otra entrada al modulo de calculo de tamano de ventana de contencion 218 (vease la Figura 2). Por ejemplo, puede usarse la ventana de contencion calculada mediante el algoritmo 216 de CSMA/CA.Figure 6 is a flowchart illustrating an example method 600 by which timeout periods of containing windows of other nodes can be managed. As such, method 600 provides an example and / or additional information on how the contention window information can be made to expire and be maintained in list 212 of Figure 2, as discussed in step 402 of Figure 4. In general , a contention window is used only before the expiration of its timeout period. The contention window is not used following the timeout period, which can be expressed as a back account period or a date and time, or the like. Since the contention window is not used, another input to the contention window size calculation module 218 can be used instead (see Figure 2). For example, the content window calculated using CSMA / CA algorithm 216 can be used.
En la operacion 602, uno o mas periodos de tiempo de espera de ventana de contencion se monitorizan en cuanto a la expiracion. Esto puede incluir contar hacia atras los periodos de tiempo de espera u observar la llegada de un tiempo en el que expira la ventana de contencion.In step 602, one or more window timeout periods are monitored for expiration. This may include counting back the waiting periods or observing the arrival of a time in which the contention window expires.
En la operacion 604, se usa una ventana de contencion por defecto tras la expiracion de un periodo de tiempo de espera. La ventana de contencion por defecto puede usarse en cualquier algoritmo configurado para seleccionar una ventana de contencion para el nodo. En el ejemplo de la Figura 2, la lista 212 puede usarse para registrar el ID del nodo primario, el tamano de ventana de contencion y el tiempo de espera de la ventana de contencion. El modulo deIn step 604, a default contention window is used after the expiration of a timeout period. The default contention window can be used in any algorithm configured to select a contention window for the node. In the example of Figure 2, list 212 can be used to record the primary node ID, the content window size and the contention window timeout. The module of
55
1010
15fifteen
20twenty
2525
3030
3535
4040
45Four. Five
calculo de tamano de ventana de contencion 218 puede gestionar la lista 212 y determinar si una ventana de contencion de un nodo primario ha expirado. Si ha expirado, el modulo de calculo de tamano de ventana de contencion 218 puede usar en su lugar una ventana de contencion proporcionada mediante, por ejemplo, el algoritmo CSMA/CA por defecto.Containment window size calculation 218 can manage list 212 and determine if a containment window of a primary node has expired. If it has expired, the content window size calculation module 218 may instead use a contention window provided by, for example, the default CSMA / CA algorithm.
La Figura 7 es un diagrama de flujo que ilustra un metodo de ejemplo 700 mediante el cual un nodo puede seleccionar su propia ventana de contencion, usando como entrada indicaciones de ventanas de contencion desde otros nodos. Como tal, el metodo 700 proporciona un ejemplo y/o informacion adicional sobre como pueden seleccionarse ventanas de contencion, como se analiza en la operacion 404 de la Figura 4. En general, el metodo 700 proporciona la seleccion de una ventana de contencion para un nodo que es mas largo que los vecinos aguas arriba a 1 salto (por ejemplo, primarios) del nodo.Figure 7 is a flow chart illustrating an example method 700 by which a node can select its own containment window, using as input indications of containment windows from other nodes. As such, method 700 provides an example and / or additional information on how containment windows can be selected, as discussed in step 404 of Figure 4. In general, method 700 provides selection of a containment window for a node that is longer than the upstream neighbors at 1 jump (for example, primary) of the node.
En la operacion 702, se consulta una publicacion recibida mediante un nodo, o la lista (por ejemplo, la lista 212 de la Figura 2) mantenida mediante el nodo, y se obtienen las indicaciones de (por ejemplo, informacion acerca de) ventanas de contencion de vecinos aguas arriba a 1 salto.In step 702, a publication received by a node, or the list (for example, list 212 of Figure 2) maintained by the node, is consulted, and the indications of (for example, information about) windows are obtained. content of upstream neighbors at 1 jump.
En la operacion 704, la ventana de contencion del nodo se establece tan larga como, o mas larga que, la mas larga de: la ventana de contencion mas larga usada por vecinos aguas arriba a 1 salto del nodo; y, una ventana de contencion basada en un algoritmo de CSMA/CA. En un ejemplo, unicamente se consideran vecinos aguas arriba a 1 salto que son primarios del nodo. En otro ejemplo, se considera la expiracion de las ventanas de contencion de vecinos aguas arriba a 1 salto.In step 704, the node containment window is set as long as, or longer than, the longest of: the longest containment window used by upstream neighbors 1 hop from the node; and, a contention window based on a CSMA / CA algorithm. In one example, only upstream 1-hop neighbors who are primary to the node are considered. In another example, the expiration of the windows containing neighbors upstream at 1 jump is considered.
La Figura 8 es un diagrama de flujo que ilustra un metodo de ejemplo adicional mediante el cual un nodo puede seleccionar su propia ventana de contencion, usando como entrada indicaciones de ventanas de contencion desde otros nodos. Como tal, el metodo 800 proporciona un ejemplo y/o informacion adicional sobre como pueden seleccionarse ventanas de contencion, como se analiza en la operacion 404 de la Figura 4. En general, el metodo 800 proporciona la seleccion de una ventana de contencion para un nodo que es mas largo que vecinos y/o primarios aguas arriba conocidos. Por ejemplo, puede seleccionarse una ventana de contencion que es igual a, o mas larga que, vecinos aguas arriba a 1 salto (por ejemplo, primarios) del nodo, e igual a, mas larga que, una ventana de contencion por defecto de CSMA/CA.Figure 8 is a flow chart illustrating an additional example method by which a node can select its own containment window, using as input indications of containment windows from other nodes. As such, method 800 provides an example and / or additional information on how content windows can be selected, as discussed in step 404 of Figure 4. In general, method 800 provides the selection of a content window for a node that is longer than known upstream neighbors and / or primaries. For example, a contention window can be selected that is equal to, or longer than, neighbors upstream at 1 hop (for example, primary) of the node, and equal to, longer than, a default contention window of CSMA /AC.
En la operacion 802, se calcula una ventana de contencion basandose en un algoritmo por defecto, tal como el algoritmo CSMA/CA. Un algoritmo de este tipo puede usarse en redes conocidas, para establecer una ventana de contencion de un nodo. En la operacion 804, la ventana de contencion obtenida a partir del algoritmo CSMA/CA se compara con una o mas ventanas de contencion tomadas a partir de una lista de ventanas de contencion (por ejemplo, la lista 212 de la Figura 2). La lista puede incluir ventanas de contencion de los primarios del nodo, vecinos aguas arriba, vecinos a 1 salto y similares. En la operacion 806, se selecciona una ventana de contencion tan larga como, o mas larga que, las ventanas de contencion en la comparacion de la operacion 804. Por consiguiente, el nodo esta configurado con una ventana de contencion que no es mas corta que sus primarios y/o vecinos aguas arriba a 1 salto.In operation 802, a contention window is calculated based on a default algorithm, such as the CSMA / CA algorithm. An algorithm of this type can be used in known networks, to establish a window containing a node. In step 804, the content window obtained from the CSMA / CA algorithm is compared with one or more content windows taken from a list of content windows (for example, list 212 of Figure 2). The list may include windows containing the node's primary, upstream neighbors, 1 hop neighbors and the like. In step 806, a containment window is selected as long as, or longer than, the containment windows in the comparison of step 804. Therefore, the node is configured with a containment window that is not shorter than its primary and / or neighbors upstream at 1 jump.
ConclusionConclusion
Aunque se ha descrito la materia objeto en lenguaje espedfico a caractensticas estructurales y/o actos metodologicos, se ha de entender que la materia objeto definida en las reivindicaciones adjuntas no esta necesariamente limitada a las caractensticas espedficas o actos descritos. En su lugar, las caractensticas espedficas y actos se desvelan como formas ejemplares de implementar las reivindicaciones.Although the subject matter has been described in specific language to structural features and / or methodological acts, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described. Instead, specific features and acts are disclosed as exemplary ways of implementing the claims.
Claims (12)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP11188907.7A EP2592890B1 (en) | 2011-11-11 | 2011-11-11 | Traffic load management for uplink network traffic |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2633122T3 true ES2633122T3 (en) | 2017-09-19 |
Family
ID=45092214
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES11188907.7T Active ES2633122T3 (en) | 2011-11-11 | 2011-11-11 | Traffic load management for uplink network traffic |
Country Status (8)
| Country | Link |
|---|---|
| EP (1) | EP2592890B1 (en) |
| JP (1) | JP5571856B2 (en) |
| AU (1) | AU2012336327B2 (en) |
| CA (1) | CA2855285C (en) |
| ES (1) | ES2633122T3 (en) |
| SG (1) | SG11201402210YA (en) |
| WO (1) | WO2013070264A1 (en) |
| ZA (1) | ZA201403319B (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110460495B (en) * | 2019-08-01 | 2024-02-23 | 北京百度网讯科技有限公司 | A water level propulsion method, device, computing node and storage medium |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE60322988D1 (en) * | 2002-01-28 | 2008-10-02 | Hughes Network Systems Llc | Method and device for integrating performance improvement functions in a virtual private network (VPN) |
| US7420952B2 (en) * | 2002-10-28 | 2008-09-02 | Mesh Dynamics, Inc. | High performance wireless networks using distributed control |
| US20070214379A1 (en) * | 2006-03-03 | 2007-09-13 | Qualcomm Incorporated | Transmission control for wireless communication networks |
| US7978725B2 (en) * | 2006-03-06 | 2011-07-12 | Cisco Technology, Inc. | Dynamic modification of contention-based transmission control parameters achieving load balancing scheme in wireless mesh networks |
| US20080002734A1 (en) * | 2006-06-29 | 2008-01-03 | Haihong Zheng | Contention window management for relay networks |
| JP2010098346A (en) * | 2008-10-14 | 2010-04-30 | Audio Technica Corp | Data transmission method in radio facility of specified small electric power radio station |
| KR101122241B1 (en) * | 2009-10-12 | 2012-03-21 | 전자부품연구원 | Throughput enhancement methods in multi-hop ad hoc networks |
| KR101104430B1 (en) * | 2009-12-31 | 2012-01-12 | 연세대학교 산학협력단 | Sensor node and data packet transmission method of sensor node |
-
2011
- 2011-11-11 ES ES11188907.7T patent/ES2633122T3/en active Active
- 2011-11-11 EP EP11188907.7A patent/EP2592890B1/en active Active
-
2012
- 2012-01-30 WO PCT/US2012/023093 patent/WO2013070264A1/en not_active Ceased
- 2012-01-30 AU AU2012336327A patent/AU2012336327B2/en active Active
- 2012-01-30 CA CA2855285A patent/CA2855285C/en active Active
- 2012-01-30 JP JP2013543422A patent/JP5571856B2/en active Active
- 2012-01-30 SG SG11201402210YA patent/SG11201402210YA/en unknown
-
2014
- 2014-05-09 ZA ZA2014/03319A patent/ZA201403319B/en unknown
Also Published As
| Publication number | Publication date |
|---|---|
| JP5571856B2 (en) | 2014-08-13 |
| AU2012336327B2 (en) | 2015-05-14 |
| SG11201402210YA (en) | 2014-06-27 |
| ZA201403319B (en) | 2015-11-25 |
| JP2014504088A (en) | 2014-02-13 |
| AU2012336327A1 (en) | 2014-05-29 |
| WO2013070264A1 (en) | 2013-05-16 |
| EP2592890B1 (en) | 2017-04-26 |
| CA2855285C (en) | 2018-05-29 |
| CA2855285A1 (en) | 2013-05-16 |
| EP2592890A1 (en) | 2013-05-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9049692B2 (en) | Hybrid access protocol for network nodes | |
| ES2697511T3 (en) | Routing of communications based on node availability | |
| Chen et al. | A congestion avoidance game for information exchange on intersections in heterogeneous vehicular networks | |
| EP2878101B1 (en) | Relaying information for an unreliably heard utility node | |
| ES2914434T3 (en) | Mobile wireless communication unit, integrated circuit and method for routing content | |
| US8493868B2 (en) | Traffic load management | |
| US11395125B2 (en) | Power-efficient passive discovery by network devices | |
| US9445433B2 (en) | Wireless communication apparatus for lower latency communication | |
| CN106031270A (en) | Backhaul scheduling in multi-hop system | |
| US11071049B2 (en) | Power-efficient passive discovery by network devices | |
| EP2651171B1 (en) | Hybrid access protocol for network nodes | |
| ES2633122T3 (en) | Traffic load management for uplink network traffic | |
| US11399272B2 (en) | Power-efficient passive discovery by network devices | |
| ES2503568T3 (en) | Synchronization of nodes in a network | |
| ES2806074T3 (en) | Multi-channel, multi-modulation and multi-frequency communication with a radio transceiver | |
| ES2660154T3 (en) | Conversion of communication packages | |
| AU2024205379B2 (en) | Power-efficient passive discovery by network devices | |
| US10716057B1 (en) | Power-efficient passive discovery by network devices | |
| HK1190265B (en) | Hybrid access protocol for network nodes | |
| HK1190265A (en) | Hybrid access protocol for network nodes | |
| EP3327988A1 (en) | System and method for improving multicast latency and reliability of multicast transmissions in a wireless building automation network |