WO2010124331A1 - Interference management between overlapping networks - Google Patents

Interference management between overlapping networks Download PDF

Info

Publication number
WO2010124331A1
WO2010124331A1 PCT/AU2010/000490 AU2010000490W WO2010124331A1 WO 2010124331 A1 WO2010124331 A1 WO 2010124331A1 AU 2010000490 W AU2010000490 W AU 2010000490W WO 2010124331 A1 WO2010124331 A1 WO 2010124331A1
Authority
WO
WIPO (PCT)
Prior art keywords
priority data
network
data block
priority
code
Prior art date
Application number
PCT/AU2010/000490
Other languages
French (fr)
Other versions
WO2010124331A8 (en
Inventor
Dino Miniutti
Leif Hanlen
Gengfa Fang
Original Assignee
National Ict Australia Limited
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from AU2009901834A external-priority patent/AU2009901834A0/en
Application filed by National Ict Australia Limited filed Critical National Ict Australia Limited
Publication of WO2010124331A1 publication Critical patent/WO2010124331A1/en
Publication of WO2010124331A8 publication Critical patent/WO2010124331A8/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access
    • H04W74/08Non-scheduled access, e.g. ALOHA
    • H04W74/0866Non-scheduled access, e.g. ALOHA using a dedicated channel for access
    • H04W74/0875Non-scheduled access, e.g. ALOHA using a dedicated channel for access with assigned priorities based access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W16/00Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
    • H04W16/14Spectrum sharing arrangements between different networks

Definitions

  • This invention concerns the situation where there are plural networks operating in the same environment, and where the networks spatially overlap, for instance where the networks are co-located.
  • the invention is methods for managing interference between overlapping networks.
  • Further aspects of the invention are a network, controller, node and priority data package.
  • Network 10 comprises a controller 12 and plural nodes 14.
  • a second network has a coverage area indicated at 20.
  • Network 20 also comprises a base station 22 and plural nodes 24. It can be see in Fig. 1 that networks 10 and 20 overlap 30, and that base station 22 and one of the nodes 24 are within the area of overlap 30. Examples of such networks include WPAN, Zigbee and Wireless Sensor Networks.
  • MAC contention based multiple-access-control scheme
  • CDMA Code Division Multiple Access
  • CDMA is a spread spectrum technique where each transmitter is assigned a code so that their transmissions can be multiplexed in frames over the same physical channel.
  • CDMA is an effective form of interference suppression and it can allow multiple nodes in overlapping networks to continue functioning.
  • TDMA Time Division Multiple Access
  • Fig. 2 shows three time slots (slot 0, slot 1 and slot 2) within a frame that are reserved for respective nodes.
  • Frequency Division Multiple Access is an alternative where different transmitters use different carrier frequencies.
  • SDMA Space Division Multiple Access
  • Interleaver Division Multiple Access requires selection of an interleaver design according to the code and passing the beacon data through the appropriate interleaver.
  • Body Area Networks involve multiple small networks (plconets) operating in a CO- located environment; as shown in Fig. 3.
  • a first piconet has a coverage area indicated at 10'.
  • Piconet 10' comprises a controller 12' and plural nodes 14'.
  • a second piconet has a coverage area indicated at 20'.
  • Piconet 20" also comprises a controller 22' and plural nodes 24'. It can be seen in Fig. 3 that piconets 10' and 20' overlap 30', and that network controller 22' and several nodes are within the area of overlap 30'. Unlike cellular networks, in the case of piconets the controllers need not be at the centre of the piconet.
  • Piconets are characterised by a number of other features, such as:
  • the nodes use ultra-low power.
  • the interval between new pieces of data may vary from lms to 1000s.
  • the transmission range of the nodes is about 3m, for instance within a 6m x 6m x 6m cube.
  • the latency for medical applications may be I25ms, and for non-medical applications 250ms. Jitter may be less than 50ms
  • the transmitters in the nodes are fast, for instance having a less than one second reaction time for emergencies.
  • each node has only a limited ability to decode data and apply long CDMA codes; and a long CDMA code is necessary where there are many users to be separated within a network.
  • FDMA requires more overhead in hardware design to ensure that oscillators can be switched efficiently for use as a MAC for nodes in the same piconet.
  • the invention provides a method for managing interference between a first network and at least one other network, the method comprising: transmitting a priority data package comprising at least a first priority data block and a second priority data block; and coding at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
  • Such a management method is suitable for mobile networks, where the entire network moves as well as the individual nodes.
  • Such networks may continually move into and out of each others' range.
  • a cellular network attached to a (large) robot, a Wireless Personal Area Network (WPAN), a Body Area-Network (BAN) [1], and a cognitive radio network.
  • WPAN Wireless Personal Area Network
  • BAN Body Area-Network
  • the other network that may cause interference may be a similar to the first network. For example, it may also operate using the same communications protocol including transmitting priority data packages.
  • the first and second priority data blocks may be transmitted at the same time.
  • the priority data blocks could be superimposed by encoding the first priority block with a different code to the second priority data block, such that the sum of the first encoded block and the second encoded block may be decoded into the first priority block and the second priority block by correct application of codes.
  • the priority data blocks may be transmitted sequentially.
  • the method may comprise coding the first and second priority data blocks using the same coding system but different codes.
  • the first and second priority - data blocks could be coded using a different coding system.
  • the coding system may be Carrier Divisional Multiple Access (CDMA). Any suitable variant of CDMA could be used, such as Direct Sequence (DS)-CDMA or (OVSF)-CDMA. In one example each of a family of codes of fixed length are used on one priority block each, for instance Walsh codes. Any other interference suppression coding system may be used instead of CDMA, such as SDMA, FDMA, IDMA, OVSF or FDMA [3].
  • the coding of the priority data blocks suppresses interference between networks or clusters.
  • the coding system may be based on time offsets.
  • the timing offset used by the first network may be different to the timing offset used by the other networks.
  • the first priority data block or second priority data block may not be coded.
  • the first priority data block and the second priority data block may contain substantially the same information. For example, they may differ only by an ID number of the priority data block.
  • At least one priority data block may contain one or more of: identifier of a controller transmitting the priority data package;
  • MAC address of the controller transmitting the priority data package ; a first network identifier; and one or more codes used by the first network for the encoding of non-priority data blocks.
  • a transmission frame of the first network may include a priority data package.
  • the priority data package may be transmitted at regular intervals, such as every 500ms.
  • the transmission frame may also include non-priority data blocks transmitted by nodes of the first network.
  • the method may be repeated so that multiple priority data packages are transmitted according to the method.
  • the length of time between transmissions of priority data packages may vary between repeats of the method.
  • the code used to differentiate the priority data package may vary between repeats of the method. For example, different codes (that still differentiate the priority data package) may be used in the event that a collision of a previously transmitted priority data package is detected.
  • the method may be performed by a controller of the first network.
  • the invention provides a controller to manage interference between a first network and at least one other network, the method comprising: an output port to transmit a priority data package comprising at least a first priority data block and a second priority data block; and • a processor to code at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
  • the invention provides a priority data package transmitted on a first network to manage interference between the first network and at least one other network, the priority data package comprising at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
  • the invention provides a method of operating a network node that forms part of a first network to manage interference from at least one other network, the method comprising: receiving a priority data package comprised of at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded to differentiate the priority data package of the first network from priority data packages transmitted by the at least one other network; and recognising from the priority data package at least one priority data block of the first network.
  • the network nodes may be programmed to recognise the priority data blocks of their own network.
  • the nodes of the network will also be programmed to know how to insert their data blocks into the first network's transmission frames without collision.
  • the method may further comprise transmitting a data block by inserting the data block into a transmission frame of the first network based on the recognised priority data block.
  • the priority data block may include timing information based on which the node may insert a data block into the transmission frame and/or to synchronise their transmissions of data blocks on the (correct) first network.
  • the method may further comprise coding the data block using a code that differentiates the data block of the node from data blocks transmitted by other nodes that also form part of the first network.
  • the code may be a Time Division Multiplex Code (TDMA).
  • TDMA has the benefit of being power efficient with respect to a user or node.
  • One or more time slots may be set aside for nonrecurrent, or low duty cycle, signals. These might for instance arise from nodes that sleep for long periods between transmissions.
  • ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • the code (or schedule) used to differentiate the data block of the node from data blocks transmitted by other nodes may be varied dynamically during operation of the first network.
  • the method may further comprise coding the data block using a second code that differentiates the data block of the node from data blocks transmitted by the at least one other network.
  • the second code is a code division multiple access (CDMA) code. Any suitable variant of CDMA could be used, such as Direct Sequence (DS)- CDMA or (OVSF)-CDMA. Any other interference suppression code may be used instead of CDMA, such as SDMA, FDMA, IDMA, OVSF or FDMA [3].
  • the method may also comprise the step of listening for transmissions of priority data packages.
  • a simple node may listen using carrier sense to detect the presence of a carrier.
  • Recognising at least one priority data block may comprise reading any uncoded priority data blocks in the received priority data package. Reading the priority data block makes the information within priority data block understood and usable by the node.
  • Recognising at least one priority data block may comprise decoding any coded priority data blocks of the first network in the received priority data package and then reading the uncoded at least one priority data block. More sophisticated nodes may. listen for the priority data package (e.g. super-beacon) and attempt to read the priority data package by decoding each received priority data block using its knowledge of the network, such as codes stored locally on the node. If a priority data block is successfully decoded this confirms that the priority data block and the node belong to the same network; or at least reduces the likelihood that the priority data package was not intended for that node. Once a priority data block is decoded the node can read data from it or proceed to read non-priority data from the appropriate transmission frame.
  • the priority data package e.g. super-beacon
  • the method may further comprise reading non-priority data from a transmission frame of the first network.
  • the method may be repeated so that multiple priority data packages are received and recognised according to the method.
  • the code used to decode any priority data blocks may vary between repeats of the method. For example, after successful decoding priority data block and then being repeatedly unsuccessful attempt to recognise the priority data blocks of a received priority data package, the node may attempt to decode coded priority blocks of the next received priority data package using a different combination of codes available to it. These codes may be stored on the node.
  • the invention provides a network node that forms part of a first network to manage interference from at least one other network, wherein the node comprises: an input port to receive a priority data package comprised of at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded to differentiate the priority data package of the first network from priority data packages transmitted by the at least one other network; and a processing unit to recognise from the priority data package at least one priority data block of the first network.
  • the invention provides a first network to manage interference from at least one other network, the network comprising: a controller operable to transmit a priority data package comprised of at least a first priority data block and a second priority data block, wherein the transmitter operates to code at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network, and plural network nodes operable to receive the priority data package and recognise from the priority data package at least one priority data block of the first network.
  • a first node and a second node of the first network may recognise at least two priority data blocks of the priority data package by decoding the at least two priority data blocks using one or more codes, wherein the first node uses codes that are different to the codes used by of the second node.
  • the first node may be responsible for transmitting more critical data than the second node, and has more codes allocated to it to. While this increases the complexity of decoding that needs to be performed by the first code, it also increases the chance that the first node will successfully decode the priority data package.
  • the invention could be applied to multi -cellular operation in larger size cells, networks or clusters appropriate to more standard radio communications.
  • the invention is not restricted to removing inter-network interference, and it could also be used to remove inter-cluster interference in a network of multiple clusters.
  • Fig. 1 is a block diagram of two interfering networks.
  • Fig. 2 is a block diagram illustrating the temporal structure of TDMA slots.
  • Fig. 3 is a block diagram of two co-located piconets.
  • Fig. 3 is a block diagram of two co-located piconets.
  • Fig. 4 is a block diagram of a node that can transmit and receive.
  • Fig. 5 is a block diagram of a controller that can transmit priority data packages.
  • Fig. 6 is a block diagram of the temporal structure of transmissions in a piconet.
  • Fig. 7 is a block diagram showing the structure of the super-beacons of Fig. 6.
  • Fig. 8 is a diagram of the operation of the processor of a controller to generate a super-beacon.
  • Fig. 9 is a time based block diagram of two super-beacons as received by a node.
  • BAN Body Area Network
  • piconets such as 10' and 20', operating in a co-located environment, see Fig. 3.
  • ten only two shown in Fig. 3 for simplicity
  • piconets co-located in a 6 meter cube and having 256 nodes between them.
  • the piconet controller 12' will support a communications channel for the transmission of frames. Most nodes 14' will be awake and transmitting continuously. However, it is possible that some nodes 14' will sleep for a long period of time; perhaps hours, between waking and transmitting. Another node might sleep for an hour, wake early, and ask to transmit immediately. The same situation applies to the piconet 20' and its nodes 24'.
  • the nodes make use of a Time-Division-Multiple Access (TDMA) scheme to prevent interference between data blocks transmitted by nodes of the same network.
  • TDMA Time-Division-Multiple Access
  • This scheme reserves one or more particular timeslots in each transmission frame for data blocks of each node.
  • the timeslots are allocated under a standard proportional fairness arrangement [3]. This scheme is sufficient to allow unambiguous transmissions within the piconet.
  • the time slots can be reassigned on-line. Also, one or more timeslots, for example timeslot "0", may be set aside for intermittent nodes that transmit at low duty cycles * In the event of a contention between two such nodes, scheduling may be employed for allocation.
  • Slot 0 is also put aside for requests to alter the TDMA schedule. This could be achieved through contention, since the data payload to be sent through would be limited to a small table of codewords; such as request to increase data, request to reduce sleep time, etc.
  • a node which wishes to modify its sleep or other scheduling related components would contend to access slot 0.
  • the controller would then reschedule the node. This technique has the benefits of TDMA 5 and much of the flexibility of contention MAC.
  • a transmitting node 14' receives data 32 at an input port 33 that is then encoded 34 using an encoding code 38 and the coded data block 35 is transmitted 39 from an output port 37 using the multiple access scheme 36.
  • ordinary sensed data i.e. non-priority sensor generated data
  • TDMA code 38 for transmission into its time slot in a data packet 40.
  • the resulting data structure is illustrated in Fig. 6, where each data packet 40 is made up of a series of concatenated timeslots ("0", “1", “2” ... "n") that may be populated with data blocks of one or more nodes of the network.
  • each piconet is assigned one (or more) unique CDMA codes 38 to prevent interference of data blocks between piconets.
  • the controller 12' will allocate the CDMA codes 38 to nodes 14' within that piconet. In one simple example all the nodes 14' are assigned the same CDMA code 38 (say, Ci). This use of TDMA followed by CDMA by nodes 14' ensures that the ordinary data transmissions of different piconets can be differentiated from each other.
  • some piconets may have more than one CDMA codes 38 for encoding , such as ci c 2 • • • CM , which the controller 12' allocates among the nodes 14' according to some code-division access scheme.
  • the controller 12' transmits a periodic priority data package 50, for instance every 500ms, between each data packet 40; as shown in Fig. 7.
  • the priority data package 50 is comprised of encoded priority data blocks each having: gateway (net) IG (gateway MAC address), piconet ID, and DS-CDMA codes used by this piconet for data.
  • the priority data package 50 is created by the processor of the controller 12' by generating the priority data block 84 and using an encoder 88 to encode the same priority data block using different respective DS-CDMA codes 88, such as C] C2 • • • C M , that are available to the controller 12', such as codes 88 that are stored in memory.
  • the priority data package 50 Since the data 6 is short, and there are few code-words used, the priority data package 50 remains of very short duration.
  • the processor of the controller cycles through its list of code- words ci, . . . CM, encodes 86 the generated priority data block b 84 with each code-word 88, concatenates them to form a priority data package 50, transmits 80 the priority data package 50 from an output port 82 of the controller and then returns to normal activity.
  • a node 14A' when a node 14A' powers up, for example when it is stimulated by an attached sensor, it will synchronise with the next priority data package 50 it receives 70 at the input port 69 using medium access control 68. Alternatively, a receiving node 14A' may continuously listen for priority data packages 50 at the input port 69.
  • the node 14A' must determine whether the received data is priority related 72 data, or ordinary data 74. In the case of priority related data 72, the processor attempts to recognise the priority data package 50 by decoding 79 as many priority blocks of the received priority data package 50 as possible using locally stored priority data decoding codes 76 to produce priority data 78 that can now be read and used by the node 14' to transmit data blocks.
  • the node 14 A' If the node 14 A' is able to decode 74 priority data blocks it recognises that the priority data package 50 relates to the same network as the node 14A'. Even further, the node 14 A' may only recognise the priority data package as one of its own network if the actual decoded priority data 78 confirms this, for example includes the correct network ID.
  • the node 14A 1 may determine that the received data is in fact ordinary (i.e. non-priority) data 74 and proceeds to decode it 80 using ordinary decoding data codes 83 also stored locally to produce ordinary data 84 that can be read and used by the node 14 A' as required.
  • All codes being: (a) codes used by the controller to encode priority data blocks 88,
  • TDMA and CDMA codes 38 to encode data blocks, and a common frequency channel is assigned to the relevant controller and node at the time of network start-up or may be preset in the controller or node.
  • codes (a) and (b) may be unrelated and different to the codes (c) and (d). Further, the codes and the frequency remain fixed for the life of the network, Alternatively, they can be amended while the network is in operation.
  • the amendment of codes may be achieved by the controller including new codes in the next transmitted priority data block.
  • the nodes then read the new codes from the priority data block and the controller and nodes then apply the new codes for future transmissions.
  • one of the multiple priority data blocks within the priority data package 50 is not coded.
  • a simple node not having any information on the priority data codes 76 may listen using carrier sense to detect the presence of a carrier. When a carrier is detected then any uncoded priority data blocks within the priority data package 50 can be read.
  • Such a node would be considered a simple node and has the advantage of being able to work with priority data packages 50 but without needing to be modified to decode 79 priority data blocks as described here. While such a simple node does not have the mitigation of interference benefits described - here it allows backward capability of the interference management scheme with existing nodes.
  • some nodes may have more priority data codes 76 ' than other nodes. More codes 76 would require longer priority data packages 50 and more processing by the nodes having more codes 76. However, these nodes are better positioned to overcome interference by other networks. The use of more priority data codes 76 is reserved for nodes responsible for transmitting the most critical data.
  • BANs A and B are narrow-band and co-located for a long period of time, for example they belong to two people respectively that are sleeping in close proximity for eight hours. Alternatively, they could be co-located only briefly as the two people walk past each other.
  • Each node has an associated sensor that provides to the node life critical data about the sensed body, such as body temperature and heart rate.
  • Each BAN also uses a multiple access scheme.
  • the transmission frames of BAN A are received by that person's mobile phone .
  • a emergency call is automatically placed by the mobile phone.
  • Each node of BAN A uses CDMA data code 2 to transmit the sensed data to prevent data interference with BAN B.
  • Each node of BAN A also uses a TDMA code to prevent intra-BAN A interference of the sensed data.
  • the controller of BAN A transmits a priority data package, known here as a super- beacon 126 as shown in Fig. 9.
  • the super-beacon 126 is comprised of a first priority data block 128 coded using a CDMA code 1, a second priority data block 130 coded using CDMA code 4 and a third priority data block 132 coded using CDMA code 3.
  • each node of BAN B uses CDMA data code 1 to transmit the sensed data.
  • Each node of BAN 20 also uses a TDMA code to transmit sensed data.
  • the controller of BAN B transmits a super-beacon 140 also shown in Fig. 9.
  • the super-beacon 140 is comprised of a first priority data block 142 coded using a CDMA code 1, a second priority data block 144 coded using CDMA code 4 and a third priority data block 146 coded using CDMA code 5.
  • Each of the nodes of BANs A and B listen to the communication channel to receive a super-beacon it will recognise as belonging to their respective network and then use the priority data within to synchronise its transmissions on its respective BAN.
  • a node which belongs to BAN A does not receive priority data blocks 128 and 142 as they were sent simultaneously, were coded with the same CDMA code ] and collided.
  • priority data blocks 130 and 144 were coded with the same CDMA code ] and collided.
  • both priority data blocks 132 and 146 were received by the node as they did not collide as different CDMA codes were used.
  • the node will attempt to decode both priority data blocks 132 and 146 but will only be able to decode priority data block 3 as it has priority data code CDMA 3 but not CDMA code 5 which is needed to decode priority data block 146. Having recognised the correct super-beacon 126 the node will now read the priority data of block 148 to synchronise its future transmissions of data blocks.
  • a number of algorithms have been developed to operate a piconet arranged according to the example above.
  • a priority data package is referred to as a 'super-beacon 1 .
  • Controller wake-sleep Algorithm 1 shows the wake-super-beacon-sleep cycle of the controller. If the time is appropriate, the controller sends the super-beacon, and then returns to normal activity.
  • Algorithm 2 Controller send-super-beaconf c ⁇ (cu c? ⁇ . ⁇ . . CM))
  • Algorithm 3 Node Wake-Transmit-Sleep The (early) wake-up of a node is shown in Algorithm 3.
  • T 51 ⁇ d (a transmission every T send seconds) - T 5O d may be on the order of 3600;
  • the controller has the super-beacon code(s) chosen once, for instance the codes might be stamped on the controller at production time.
  • the controller generates a broad beacon-with M code words Ci, . .CM • Using Algorithm 1.
  • the number of code- words is not critical, but more code- words will reduce the probability of super-beacon failure, at the expense of a longer listening time for the beacon.
  • Code-words c are chosen from a set of ⁇ 0, . . . , 2 N - 1 ⁇ where N is the number of binary digits required to uniquely specify a codeword, and we assume that each controller is assigned M code-words selected uniformly at random. There are two errors which may occur:
  • the probability that a super-beacon is not received by a node is given by the probability that the super-beacon collides with an interfering controller's super-beacon. ⁇
  • the node has no way of recognising the super- beacon, and must wait for the next beacon. This error is catastrophic.
  • False detection beacon data is received, but it is from another network. False detection occurs if the controller is not transmitting, and an interferer is transmitting. This may happen if the node wakes up during a non-beacon period, and the interferer manages to transmit a super-beacon first. In this case the node will receive the wrong net-ID and wrong gate-ID, and hence will not recognise the received super-beacon as being the correct one and will ignore the false beacon. The node will have decoded the full beacon, and hence -will wasted power, but this error is not catastrophic.
  • some of the codes used by the controller to code priority data blocks are fixed, but some may be variable. This is useful to further avoid interference.
  • c ⁇ cl , c2, . . . c M ⁇ . cl, c2, . . . c M - ⁇ e ⁇ 0, . . . 2N - 1 ⁇ . c M e ⁇ a, b ⁇ c ⁇ 0, . . . 2 N - 3 ⁇
  • a node could wake up and attempt to decode the super-beacon while not knowing whether the controller has changed code whilst it was sleeping.
  • the node may need to try multiple codes before successful detection of the beacon. This means that the node may have to observe more than one super-beacon in order to recognise and synchronize with it.
  • a node may not attempt to fully decode the super-beacon. If the code is fixed this will result is a reduced tolerance to interference, and the node will fail if it has chosen the code-word of an interferer and that interferer has chosen the same code-slot to transmit within the super-beacon.
  • the node does not do any decoding, but simply relies on the energy-detection of the carrier for the beacon, then assuming the carrier-sense has sufficient gain to detect the beacon, the beacon will be unsuccessful if an interferer transmits before the controller does.
  • the code 88 to encode priority data blocks may be based on time offsets.
  • the transmission of the priority data package 50 will take longer than the above examples but in applying these timing offsets the controller 12' makes the most of the longer time period between data packets in an ultra-wideband network.
  • each code ci, c ⁇ and C 3 defines a timing offset that a priority block will be transmitted.
  • Ci may be equal to 0 in which case the first priority data block will "uncoded" as it will be sent without an offset.
  • the other two codes C 2 and C 3 may be selected at pseudo random. The random selection may take place for each priority data package that will be sent. Alternatively, they may be selected pseudo randomly but are set when the network is activated and only re-pse ⁇ do randomly selected when the network is re-initiated or at determined intervals.
  • Interleaver Division Multiple Access involves replacing the code-book of direct sequence CDMA by a choice of random interleaver.
  • SDMA space division multiple access
  • the invention may also be extendible to some aspects of cognitive radio ensuring multiple programmable radios don't interfere and sub-optimal MACs and multi- networks. In this case, the use of CDMA would be appropriate.
  • a controller may also perform the function of a node in a network, receiving and transmitting non-priority data.
  • Suitable computer readable media may include volatile (e.g. RAM) and/or non-volatile (e.g. ROM, disk) memory, carrier waves and transmission media.
  • exemplary carrier waves may take the form of electrical, electromagnetic or optical signals conveying digital data streams along a local network or a publicly accessible network such as the internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

This invention concerns the situation where there are plural networks (10') and (22') operating in the same environment, and where the networks spatially overlap (30'), for instance where the networks are co-located. In a first aspect the invention is a method for managing interference between these networks. The method comprises transmitting a priority data package (50) comprising at least a first priority data block and a second priority data block At least one of the priority data blocks are coded (86) before transmission using a code (88) that differentiates the priority data package (50) to mitigate interference. This is important since the priority data in the priority data package (50) is required to inform nodes of the network (10') how they can transmit data correctly. Further aspects of the invention are a network, transmitter such as a controller, node and priority data package.

Description

Title
INTERFERENCE MANAGEMENT BETWEEN OVERLAPPING
NETWORKS
Technical Field
This invention concerns the situation where there are plural networks operating in the same environment, and where the networks spatially overlap, for instance where the networks are co-located. In some aspects the invention is methods for managing interference between overlapping networks. Further aspects of the invention are a network, controller, node and priority data package.
Background Art
There are various existing situations where plural networks overlap with each other; as shown in Fig. 1. In this situation a first network's coverage area is indicated at 10. Network 10 comprises a controller 12 and plural nodes 14. A second network has a coverage area indicated at 20. Network 20 also comprises a base station 22 and plural nodes 24. It can be see in Fig. 1 that networks 10 and 20 overlap 30, and that base station 22 and one of the nodes 24 are within the area of overlap 30. Examples of such networks include WPAN, Zigbee and Wireless Sensor Networks.
Under a contention based multiple-access-control scheme (MAC) a node will typically detect the energy of carriers present (carrier-sense) and if the channel is clear, the node is able to transmit data. In a high traffic environment and in a co- located network, the nodes may perceive the channel to be perpetually busy, which results in the nodes being unable to transmit.
Code Division Multiple Access (CDMA) is a spread spectrum technique where each transmitter is assigned a code so that their transmissions can be multiplexed in frames over the same physical channel. CDMA is an effective form of interference suppression and it can allow multiple nodes in overlapping networks to continue functioning.
There are various other multiple access schemes, each of which have there own advantages and disadvantages. One example is Time Division Multiple Access (TDMA) where the transmitters of different nodes use different time slots in a frame. Fig. 2 shows three time slots (slot 0, slot 1 and slot 2) within a frame that are reserved for respective nodes.
Frequency Division Multiple Access (FDMA) is an alternative where different transmitters use different carrier frequencies.
Space Division Multiple Access (SDMA) requires selection of beam-spot patterns or equivalent spatial sectors according to the code, and passing through a spatial division multiplexer.
Interleaver Division Multiple Access requires selection of an interleaver design according to the code and passing the beacon data through the appropriate interleaver.
Body Area Networks (BAN) involve multiple small networks (plconets) operating in a CO- located environment; as shown in Fig. 3. In this situation a first piconet has a coverage area indicated at 10'. Piconet 10' comprises a controller 12' and plural nodes 14'. A second piconet has a coverage area indicated at 20'. Piconet 20" also comprises a controller 22' and plural nodes 24'. It can be seen in Fig. 3 that piconets 10' and 20' overlap 30', and that network controller 22' and several nodes are within the area of overlap 30'. Unlike cellular networks, in the case of piconets the controllers need not be at the centre of the piconet.
Piconets are characterised by a number of other features, such as:
1. The nodes use ultra-low power. 2. The interval between new pieces of data may vary from lms to 1000s.
3. The transmission range of the nodes is about 3m, for instance within a 6m x 6m x 6m cube.
4. There may be up to 256 nodes in each piconet.
5. There may be up to 10 co-located piconets supported without interference. 6. The latency for medical applications may be I25ms, and for non-medical applications 250ms. Jitter may be less than 50ms
7. The transmitters in the nodes are fast, for instance having a less than one second reaction time for emergencies.
Within a piconet the critical design issue is the low power of each node, and as a result there are few resources available for collision avoidance. Each node has only a limited ability to decode data and apply long CDMA codes; and a long CDMA code is necessary where there are many users to be separated within a network. FDMA requires more overhead in hardware design to ensure that oscillators can be switched efficiently for use as a MAC for nodes in the same piconet.
A scheme where piconet resource allocation is scheduled and known in advance could overcome the carrier-sense problems, but would not be sufficiently fast.
In addition, there are a number of emerging radio/wireless communications applications that involve the operation of multiple networks (or clusters) that are overlapped or even co-located. Here the networks (or clusters) typically operate over a small range; perhaps between Im and 10m. Such applications will suffer from similar access problems as piconets.
Summary of the Invention
In a first aspect the invention provides a method for managing interference between a first network and at least one other network, the method comprising: transmitting a priority data package comprising at least a first priority data block and a second priority data block; and coding at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
It is an advantage of the invention that interference of the priority data package transmitted by the first network (e.g. cluster or piconet) is mitigated. This is important since the priority data in the priority data package is required to inform nodes of the first network how they can transmit data on the first network correctly.
Such a management method is suitable for mobile networks, where the entire network moves as well as the individual nodes. Such networks may continually move into and out of each others' range. For example: a cellular network, attached to a (large) robot, a Wireless Personal Area Network (WPAN), a Body Area-Network (BAN) [1], and a cognitive radio network. The other network that may cause interference may be a similar to the first network. For example, it may also operate using the same communications protocol including transmitting priority data packages.
The first and second priority data blocks may be transmitted at the same time. For example, the priority data blocks could be superimposed by encoding the first priority block with a different code to the second priority data block, such that the sum of the first encoded block and the second encoded block may be decoded into the first priority block and the second priority block by correct application of codes.
Alternative, the priority data blocks may be transmitted sequentially.
The method may comprise coding the first and second priority data blocks using the same coding system but different codes. Alternatively, the first and second priority - data blocks could be coded using a different coding system. The coding system may be Carrier Divisional Multiple Access (CDMA). Any suitable variant of CDMA could be used, such as Direct Sequence (DS)-CDMA or (OVSF)-CDMA. In one example each of a family of codes of fixed length are used on one priority block each, for instance Walsh codes. Any other interference suppression coding system may be used instead of CDMA, such as SDMA, FDMA, IDMA, OVSF or FDMA [3]. The coding of the priority data blocks suppresses interference between networks or clusters.
Alternatively, the coding system may be based on time offsets. For example, the timing offset used by the first network may be different to the timing offset used by the other networks.
The first priority data block or second priority data block may not be coded.
The first priority data block and the second priority data block may contain substantially the same information. For example, they may differ only by an ID number of the priority data block.
At least one priority data block may contain one or more of: identifier of a controller transmitting the priority data package;
MAC address of the controller transmitting the priority data package; a first network identifier; and one or more codes used by the first network for the encoding of non-priority data blocks.
A transmission frame of the first network may include a priority data package. The priority data package may be transmitted at regular intervals, such as every 500ms. The transmission frame may also include non-priority data blocks transmitted by nodes of the first network.
The method may be repeated so that multiple priority data packages are transmitted according to the method. The length of time between transmissions of priority data packages may vary between repeats of the method. The code used to differentiate the priority data package may vary between repeats of the method. For example, different codes (that still differentiate the priority data package) may be used in the event that a collision of a previously transmitted priority data package is detected.
The method may be performed by a controller of the first network.
Many of these optional features equally apply to other aspects of the invention described further below.
In a second aspect the invention provides a controller to manage interference between a first network and at least one other network, the method comprising: an output port to transmit a priority data package comprising at least a first priority data block and a second priority data block; and • a processor to code at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
In a third aspect the invention provides a priority data package transmitted on a first network to manage interference between the first network and at least one other network, the priority data package comprising at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
In a fourth aspect the invention provides a method of operating a network node that forms part of a first network to manage interference from at least one other network, the method comprising: receiving a priority data package comprised of at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded to differentiate the priority data package of the first network from priority data packages transmitted by the at least one other network; and recognising from the priority data package at least one priority data block of the first network.
The network nodes may be programmed to recognise the priority data blocks of their own network.
The nodes of the network will also be programmed to know how to insert their data blocks into the first network's transmission frames without collision. The method may further comprise transmitting a data block by inserting the data block into a transmission frame of the first network based on the recognised priority data block. For example, the priority data block may include timing information based on which the node may insert a data block into the transmission frame and/or to synchronise their transmissions of data blocks on the (correct) first network.
The method may further comprise coding the data block using a code that differentiates the data block of the node from data blocks transmitted by other nodes that also form part of the first network. For example, the code may be a Time Division Multiplex Code (TDMA). TDMA has the benefit of being power efficient with respect to a user or node. One or more time slots may be set aside for nonrecurrent, or low duty cycle, signals. These might for instance arise from nodes that sleep for long periods between transmissions.
Other fixed resource allocation coding system may be used, such as SDMA, combined TDMA-FDMA, Single Carrier (SC)-FDMA or even Orthogonal Variable Spreading Factor (OVSF)-CDMA.
The code (or schedule) used to differentiate the data block of the node from data blocks transmitted by other nodes may be varied dynamically during operation of the first network.
The method may further comprise coding the data block using a second code that differentiates the data block of the node from data blocks transmitted by the at least one other network. The second code is a code division multiple access (CDMA) code. Any suitable variant of CDMA could be used, such as Direct Sequence (DS)- CDMA or (OVSF)-CDMA. Any other interference suppression code may be used instead of CDMA, such as SDMA, FDMA, IDMA, OVSF or FDMA [3].
The method may also comprise the step of listening for transmissions of priority data packages. For example a simple node may listen using carrier sense to detect the presence of a carrier.
Recognising at least one priority data block may comprise reading any uncoded priority data blocks in the received priority data package. Reading the priority data block makes the information within priority data block understood and usable by the node.
Recognising at least one priority data block may comprise decoding any coded priority data blocks of the first network in the received priority data package and then reading the uncoded at least one priority data block. More sophisticated nodes may. listen for the priority data package (e.g. super-beacon) and attempt to read the priority data package by decoding each received priority data block using its knowledge of the network, such as codes stored locally on the node. If a priority data block is successfully decoded this confirms that the priority data block and the node belong to the same network; or at least reduces the likelihood that the priority data package was not intended for that node. Once a priority data block is decoded the node can read data from it or proceed to read non-priority data from the appropriate transmission frame.
The method may further comprise reading non-priority data from a transmission frame of the first network.
The method may be repeated so that multiple priority data packages are received and recognised according to the method. The code used to decode any priority data blocks may vary between repeats of the method. For example, after successful decoding priority data block and then being repeatedly unsuccessful attempt to recognise the priority data blocks of a received priority data package, the node may attempt to decode coded priority blocks of the next received priority data package using a different combination of codes available to it. These codes may be stored on the node.
In a fifth aspect the invention provides a network node that forms part of a first network to manage interference from at least one other network, wherein the node comprises: an input port to receive a priority data package comprised of at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded to differentiate the priority data package of the first network from priority data packages transmitted by the at least one other network; and a processing unit to recognise from the priority data package at least one priority data block of the first network.
In a sixth aspect the invention provides a first network to manage interference from at least one other network, the network comprising: a controller operable to transmit a priority data package comprised of at least a first priority data block and a second priority data block, wherein the transmitter operates to code at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network, and plural network nodes operable to receive the priority data package and recognise from the priority data package at least one priority data block of the first network.
A first node and a second node of the first network may recognise at least two priority data blocks of the priority data package by decoding the at least two priority data blocks using one or more codes, wherein the first node uses codes that are different to the codes used by of the second node. For example, the first node may be responsible for transmitting more critical data than the second node, and has more codes allocated to it to. While this increases the complexity of decoding that needs to be performed by the first code, it also increases the chance that the first node will successfully decode the priority data package.
The invention could be applied to multi -cellular operation in larger size cells, networks or clusters appropriate to more standard radio communications. The invention is not restricted to removing inter-network interference, and it could also be used to remove inter-cluster interference in a network of multiple clusters.
It is an advantage of at least one embodiment of the invention that it provides efficient, interference-free, co-existing networks that are highly resource efficient and need no coordination between networks. There are also benefits of being able to be used with simpler synchronization and less complicated node architectures.
Other advantages include: common resource allocation across a single piconet, so that nodes which associate with a given piconet can set-and-forget PHY parameters; soft-fail for interfering piconets, so that when too many piconets are interfering, the failure of links will be gradual, rather than catastrophic; robustness (scheduled resource allocation) within a piconet; piconets are non-cooperative (interference); and run-time flexibility.
Brief Description of fhe Drawings
Fig. 1 is a block diagram of two interfering networks.
Fig. 2 is a block diagram illustrating the temporal structure of TDMA slots.
Fig. 3 is a block diagram of two co-located piconets.
Examples of the invention will now be described with reference to the following drawings, in which:
Fig. 3 is a block diagram of two co-located piconets.
Fig. 4 is a block diagram of a node that can transmit and receive. Fig. 5 is a block diagram of a controller that can transmit priority data packages.
Fig. 6 is a block diagram of the temporal structure of transmissions in a piconet.
Fig. 7 is a block diagram showing the structure of the super-beacons of Fig. 6. Fig. 8 is a diagram of the operation of the processor of a controller to generate a super-beacon.
Fig. 9 is a time based block diagram of two super-beacons as received by a node.
Best Modes of the Invention
In a Body Area Network (BAN) there may be many different piconets such as 10' and 20', operating in a co-located environment, see Fig. 3. For example, ten (only two shown in Fig. 3 for simplicity) piconets co-located in a 6 meter cube and having 256 nodes between them.
Within a piconet 10', the piconet controller 12' will support a communications channel for the transmission of frames. Most nodes 14' will be awake and transmitting continuously. However, it is possible that some nodes 14' will sleep for a long period of time; perhaps hours, between waking and transmitting. Another node might sleep for an hour, wake early, and ask to transmit immediately. The same situation applies to the piconet 20' and its nodes 24'.
The nodes make use of a Time-Division-Multiple Access (TDMA) scheme to prevent interference between data blocks transmitted by nodes of the same network. This scheme reserves one or more particular timeslots in each transmission frame for data blocks of each node. The timeslots are allocated under a standard proportional fairness arrangement [3]. This scheme is sufficient to allow unambiguous transmissions within the piconet.
The time slots can be reassigned on-line. Also, one or more timeslots, for example timeslot "0", may be set aside for intermittent nodes that transmit at low duty cycles* In the event of a contention between two such nodes, scheduling may be employed for allocation.
Slot 0 is also put aside for requests to alter the TDMA schedule. This could be achieved through contention, since the data payload to be sent through would be limited to a small table of codewords; such as request to increase data, request to reduce sleep time, etc.
A node which wishes to modify its sleep or other scheduling related components would contend to access slot 0. The controller would then reschedule the node. This technique has the benefits of TDMA5 and much of the flexibility of contention MAC.
Referring now to Fig. 4(a), a transmitting node 14' receives data 32 at an input port 33 that is then encoded 34 using an encoding code 38 and the coded data block 35 is transmitted 39 from an output port 37 using the multiple access scheme 36.
In one example ordinary sensed data (i.e. non-priority sensor generated data) is encoded 34 using TDMA code 38 for transmission into its time slot in a data packet 40. The resulting data structure is illustrated in Fig. 6, where each data packet 40 is made up of a series of concatenated timeslots ("0", "1", "2" ... "n") that may be populated with data blocks of one or more nodes of the network.
In addition to the nodes use of a TDMA code 38, each piconet is assigned one (or more) unique CDMA codes 38 to prevent interference of data blocks between piconets. The controller 12' will allocate the CDMA codes 38 to nodes 14' within that piconet. In one simple example all the nodes 14' are assigned the same CDMA code 38 (say, Ci). This use of TDMA followed by CDMA by nodes 14' ensures that the ordinary data transmissions of different piconets can be differentiated from each other.
In a more complex example, some piconets may have more than one CDMA codes 38 for encoding , such as ci c2 • • • CM, which the controller 12' allocates among the nodes 14' according to some code-division access scheme.
Importantly, to enable the nodes 14' to generate timing information to receive and transmit data blocks, the controller 12' transmits a periodic priority data package 50, for instance every 500ms, between each data packet 40; as shown in Fig. 7. The priority data package 50 is comprised of encoded priority data blocks each having: gateway (net) IG (gateway MAC address), piconet ID, and DS-CDMA codes used by this piconet for data.
Referring to Fig. 5, the priority data package 50 is created by the processor of the controller 12' by generating the priority data block 84 and using an encoder 88 to encode the same priority data block using different respective DS-CDMA codes 88, such as C] C2 • • • CM, that are available to the controller 12', such as codes 88 that are stored in memory.
Referring to Fig. 8, the priority data package 50 s is the concatenation of a repeated priority data block b , where each repeated priority data block b is encoded with a different sequence of orthogonal DS-CDMA codes c, that is [cj C2 • • " CM] : s = b ® c = [(S ® ci) (b ® C2) • ■ • (b ® CM)]
Since the data 6 is short, and there are few code-words used, the priority data package 50 remains of very short duration.
The use of multiple codes [ci C2 • • • CM] 88 within the priority data package 50 mitigates interference on the priority data from other piconets (or networks operating over small distances).
To generate the priority data package 50, the processor of the controller cycles through its list of code- words ci, . . . CM, encodes 86 the generated priority data block b 84 with each code-word 88, concatenates them to form a priority data package 50, transmits 80 the priority data package 50 from an output port 82 of the controller and then returns to normal activity.
Referring again to Fig. 4, when a node 14A' powers up, for example when it is stimulated by an attached sensor, it will synchronise with the next priority data package 50 it receives 70 at the input port 69 using medium access control 68. Alternatively, a receiving node 14A' may continuously listen for priority data packages 50 at the input port 69.
The node 14A' must determine whether the received data is priority related 72 data, or ordinary data 74. In the case of priority related data 72, the processor attempts to recognise the priority data package 50 by decoding 79 as many priority blocks of the received priority data package 50 as possible using locally stored priority data decoding codes 76 to produce priority data 78 that can now be read and used by the node 14' to transmit data blocks.
If the node 14 A' is able to decode 74 priority data blocks it recognises that the priority data package 50 relates to the same network as the node 14A'. Even further, the node 14 A' may only recognise the priority data package as one of its own network if the actual decoded priority data 78 confirms this, for example includes the correct network ID.
Alternatively, the node 14A1 may determine that the received data is in fact ordinary (i.e. non-priority) data 74 and proceeds to decode it 80 using ordinary decoding data codes 83 also stored locally to produce ordinary data 84 that can be read and used by the node 14 A' as required.
All codes, being: (a) codes used by the controller to encode priority data blocks 88,
(b) priority data decoding codes 76,
(c) ordinary data decoding codes 82,
(d) TDMA and CDMA codes 38 to encode data blocks, and a common frequency channel is assigned to the relevant controller and node at the time of network start-up or may be preset in the controller or node.
It is important to note that codes (a) and (b) may be unrelated and different to the codes (c) and (d). Further, the codes and the frequency remain fixed for the life of the network, Alternatively, they can be amended while the network is in operation. The amendment of codes may be achieved by the controller including new codes in the next transmitted priority data block. The nodes then read the new codes from the priority data block and the controller and nodes then apply the new codes for future transmissions.
In one example, one of the multiple priority data blocks within the priority data package 50 is not coded. As a result a simple node not having any information on the priority data codes 76 may listen using carrier sense to detect the presence of a carrier. When a carrier is detected then any uncoded priority data blocks within the priority data package 50 can be read. Such a node would be considered a simple node and has the advantage of being able to work with priority data packages 50 but without needing to be modified to decode 79 priority data blocks as described here. While such a simple node does not have the mitigation of interference benefits described - here it allows backward capability of the interference management scheme with existing nodes.
In yet another example, in a piconet, some nodes may have more priority data codes 76'than other nodes. More codes 76 would require longer priority data packages 50 and more processing by the nodes having more codes 76. However, these nodes are better positioned to overcome interference by other networks. The use of more priority data codes 76 is reserved for nodes responsible for transmitting the most critical data.
A practical example of the invention will now be described with reference to Fig. 8 and 9. BANs A and B are narrow-band and co-located for a long period of time, for example they belong to two people respectively that are sleeping in close proximity for eight hours. Alternatively, they could be co-located only briefly as the two people walk past each other.
They each comprise a set of nodes and a controller. Not only can the BANs move as the person travels, the nodes and controller also move within the respective networks as the person moves their body parts. Each node has an associated sensor that provides to the node life critical data about the sensed body, such as body temperature and heart rate. Each BAN also uses a multiple access scheme.
The transmission frames of BAN A are received by that person's mobile phone . For example, in the event that critical body data is sensed by BAN A, a emergency call is automatically placed by the mobile phone. Each node of BAN A uses CDMA data code 2 to transmit the sensed data to prevent data interference with BAN B. Each node of BAN A also uses a TDMA code to prevent intra-BAN A interference of the sensed data.
The controller of BAN A transmits a priority data package, known here as a super- beacon 126 as shown in Fig. 9. The super-beacon 126 is comprised of a first priority data block 128 coded using a CDMA code 1, a second priority data block 130 coded using CDMA code 4 and a third priority data block 132 coded using CDMA code 3.
Likewise, the transmission of each node of BAN B is received by that person's mobile phone. Each node of BAN B uses CDMA data code 1 to transmit the sensed data. Each node of BAN 20 also uses a TDMA code to transmit sensed data.
The controller of BAN B transmits a super-beacon 140 also shown in Fig. 9. The super-beacon 140 is comprised of a first priority data block 142 coded using a CDMA code 1, a second priority data block 144 coded using CDMA code 4 and a third priority data block 146 coded using CDMA code 5.
Each of the nodes of BANs A and B listen to the communication channel to receive a super-beacon it will recognise as belonging to their respective network and then use the priority data within to synchronise its transmissions on its respective BAN. In this case, a node which belongs to BAN A does not receive priority data blocks 128 and 142 as they were sent simultaneously, were coded with the same CDMA code ] and collided. The same applies to priority data blocks 130 and 144. However, both priority data blocks 132 and 146 were received by the node as they did not collide as different CDMA codes were used. The node will attempt to decode both priority data blocks 132 and 146 but will only be able to decode priority data block 3 as it has priority data code CDMA 3 but not CDMA code 5 which is needed to decode priority data block 146. Having recognised the correct super-beacon 126 the node will now read the priority data of block 148 to synchronise its future transmissions of data blocks.
A number of algorithms have been developed to operate a piconet arranged according to the example above. In these four algorithms a priority data package is referred to as a 'super-beacon1.
Algorithm 1 Controller wake-sleep Algorithm 1 shows the wake-super-beacon-sleep cycle of the controller. If the time is appropriate, the controller sends the super-beacon, and then returns to normal activity.
1 : loop
2: wake 3: if time = τ then
4: Send-Super-Beacon(c)
5: end if
6: do other controller activity
7: sleep 8: end loop
Algorithm 2 Controller send-super-beaconf c ~ (cu c?< . ■ . . CM)) Algorithm 2 shows the encoding of beacon data with a sequence of DS-CDMA codewords and then transmitting the generated super-beacon. Require: ci, C2, . . . , cM e {0, . . . 2N - 1}; cf ≠ CjV ; ≠ j 1 : for i = 1 to M do
2: transmit m< - XOR(ϊ , c,) * encode beacon data using DS-CDMA with code Ci *
3: reset output 4: end for
Algorithm 3 Node Wake-Transmit-Sleep The (early) wake-up of a node is shown in Algorithm 3.
Require: Node has transmit cycle time T51^d (a transmission every Tsend seconds) - T5Od may be on the order of 3600;
Require: Beacon occurs every τ « Tsend seconds, 1 : loop
2: wake: Node wake at approximate to = Tsend - 1, allowing for clock drift * Node wakes up a little early and listens for next super-beacon signal * 3: while not Detect-Super-BeaconO do
4: listen for beacon
5: end while
6: begin normal TDMA transmission 7: sleep 8: end loop
Algorithm 4 Node Detect-Super-BeaconC c = (ci, c% . . . , CM)) The detection of a super-beacon by a node is shown ih Algorithm 4. Require: Ci, C2, . . . , cM e {0, . . , 2N - l}; cj ≠ CjV i ≠ j 1 : for i - 1 to M do 2: detect dj = XOR( m, , cι)
* decode beacon data using DS-CDMA with code c, * 3: if successful then
4: return true
5: else
6: Reset input
7: end if 8: end for
9: return true * No decode was successful *
Tolerance to interference with perfect PHY
We now outline a number of ways in which the super-beacon codes c may be chosen, and the impact this has on a piconet's tolerance to interference from other piconets.
In the case where the controller has the super-beacon code(s) chosen once, for instance the codes might be stamped on the controller at production time. The controller generates a broad beacon-with M code words Ci, . .CM • Using Algorithm 1. The number of code- words is not critical, but more code- words will reduce the probability of super-beacon failure, at the expense of a longer listening time for the beacon. Code-words c, are chosen from a set of {0, . . . , 2N - 1 } where N is the number of binary digits required to uniquely specify a codeword, and we assume that each controller is assigned M code-words selected uniformly at random. There are two errors which may occur:
1. No detection: no super-beacon data is received
The probability that a super-beacon is not received by a node is given by the probability that the super-beacon collides with an interfering controller's super-beacon.^ In this case the node has no way of recognising the super- beacon, and must wait for the next beacon. This error is catastrophic.
2. False detection: beacon data is received, but it is from another network. False detection occurs if the controller is not transmitting, and an interferer is transmitting. This may happen if the node wakes up during a non-beacon period, and the interferer manages to transmit a super-beacon first. In this case the node will receive the wrong net-ID and wrong gate-ID, and hence will not recognise the received super-beacon as being the correct one and will ignore the false beacon. The node will have decoded the full beacon, and hence -will wasted power, but this error is not catastrophic.
The probability of catastrophic error is given by the probability of collision. • In the case of M = 3, N = 8, this is 1/16581 120 _ 6χ lCf8 which is a 1 in 15 million chance.
• In the case of M = 2,N = 8, this is 1/65280 _ 2 x 10~5 which is a 1 in 5 thousand chance.
Alternatively, some of the codes used by the controller to code priority data blocks are fixed, but some may be variable. This is useful to further avoid interference.
We will consider the case of M - 1 fixed codes and 1 variable code, which may take on one of two values a or b. If the controller detects an interferer using codes cl, c2, . . . CM-ι,a then the controller chooses cl , c2, . . . CM-i,b as its code. This is shown in Algorithm 5.
Algorithm 5 Controller avoid interferers
Require: c = {cl , c2, . . . cM} . cl, c2, . . . cM-ι e {0, . . . 2N - 1 }. cM e {a, b} c {0, . . . 2N - 3 }
1 : loop
2: if controller detects interference then
3: if CM = a then
4: cM <— b 5: else
6: CM ir- a *CM takes alternate value*
7: end if
8: end if
9: Controller uses c = {cl, c2, . . . CM-I, CM} to encode beacon 10: end loop
In this case, a node could wake up and attempt to decode the super-beacon while not knowing whether the controller has changed code whilst it was sleeping. In this case the node may need to try multiple codes before successful detection of the beacon. This means that the node may have to observe more than one super-beacon in order to recognise and synchronize with it.
Algorithm 6 Node Multiple look detect 1: if Detect-Super-Beacon({cl , c2, . . . CM-I , a}) then 2: return true 3: else
4: wait for next super-beacon 5; return Detect-Super-Beacon({cl , c2, . . . cM-ι, b})
6: end if
In another situation a node may not attempt to fully decode the super-beacon. If the code is fixed this will result is a reduced tolerance to interference, and the node will fail if it has chosen the code-word of an interferer and that interferer has chosen the same code-slot to transmit within the super-beacon.
If the node does not do any decoding, but simply relies on the energy-detection of the carrier for the beacon, then assuming the carrier-sense has sufficient gain to detect the beacon, the beacon will be unsuccessful if an interferer transmits before the controller does.
In a further example, where the network is based on ultra-wideband, the code 88 to encode priority data blocks may be based on time offsets. The transmission of the priority data package 50 will take longer than the above examples but in applying these timing offsets the controller 12' makes the most of the longer time period between data packets in an ultra-wideband network.
In one example, three codes Ci, C2 and C3 may be provided. Each code ci, c and C3 defines a timing offset that a priority block will be transmitted. Ci may be equal to 0 in which case the first priority data block will "uncoded" as it will be sent without an offset. The other two codes C2 and C3 may be selected at pseudo random. The random selection may take place for each priority data package that will be sent. Alternatively, they may be selected pseudo randomly but are set when the network is activated and only re-pseυdo randomly selected when the network is re-initiated or at determined intervals.
It will be appreciated by persons skilled in the art that numerous variations and/or modifications may be made to the invention as shown in the specific embodiments without departing from the scope of the invention as broadly described.
Although the invention has been described with reference to two main examples, it will find application to other common communication techniques. For example the entire system could operate using FDMA at a centre frequency F which can be moved between multiple channels (selections of other values of F).
Interleaver Division Multiple Access (IDMA) involves replacing the code-book of direct sequence CDMA by a choice of random interleaver.
Beamforming and general space division multiple access (SDMA) techniques could be used in the same way that FDMA is described above. Since it is likely that the network will be moving, this would require substantial channel tracking to ensure the division over space remained orthogonal.
The invention may also be extendible to some aspects of cognitive radio ensuring multiple programmable radios don't interfere and sub-optimal MACs and multi- networks. In this case, the use of CDMA would be appropriate.
Also, a controller may also perform the function of a node in a network, receiving and transmitting non-priority data.
It should be understood that the techniques of the present disclosure might be implemented using a variety of technologies. For example, the methods described herein may be implemented by a series of computer executable instructions residing on a suitable computer readable medium. Suitable computer readable media may include volatile (e.g. RAM) and/or non-volatile (e.g. ROM, disk) memory, carrier waves and transmission media. Exemplary carrier waves may take the form of electrical, electromagnetic or optical signals conveying digital data streams along a local network or a publicly accessible network such as the internet.
It should also be understood that, unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as "processing" or "reading" or "generating" or "recognising" or "determining" or the like, refer to the action and processes of a computer system, or similar electronic computing device of a network, that processes and transforms data represented as physical (electronic) quantities within electronic registers and memories into other data similarly represented as physical quantities within registers or other such information storage, transmission or display devices.
The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive. References
[1] Bin Zhen, Maulin Patel, SungHyup Lee, EunTae Won, and Arthur Astrin. TG6 technical requirements document (TRD) IEEE P802.15-08-0644-09-0006. https://mentor.ieee.org/802.15, September 2008.
[2] Klein S. Gilhouse, Irwin M. Jacobs, and Lindsay A. Weaver Jr. Spread spectrum multiple access communication system using satellite or terrestrial repeaters, patent, October 1986.
[3] F. P. Kelly, A. K. Maulloo, and D. K. H. Tan. Rate control in communication networks: shadow prices, proportional fairness and stability. Journal of Operational Research, 49:237-252, 1998.

Claims

Claims:
1. A method for managing Interference between a first network and at least one other network, the method comprising: transmitting a priority data package comprising at least a first priority data block and a second priority data block; and coding at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
2. A method according to claim 1 , wherein the first and second priority data blocks are transmitted at the same time.
3. A method according to claim 1 or 2, wherein the method comprises coding the first and second priority data blocks using the same coding system but different codes.
4. A method according to claim 3, wherein the coding system is Carrier Divisional Multiple Access (CDMA).
5. A method according to claim 3, wherein the coding system is based on lime offsets.
6. A method according any one of the preceding claims, wherein the first priority data block or second priority data block is not coded.
7. A method according to any one of the preceding claims, wherein the first priority data block and the second priority data block contain substantially the same information.
8. A method according to any one of the preceding claims, wherein at least one priority data block contains one or more of: identifier of a controller transmitting the priority data package; MAC address of the controller transmitting the priority data package; a first network identifier; and . one or more codes used by the first network for the encoding of non-priority data blocks.
9. A method according to any one of the preceding claims, wherein a transmission frame of the first network includes a priority data package.
10. A method according to claim 9, wherein the transmission frame also includes non-priority data blocks transmitted by nodes of the first network.
11. A method according to any one of the preceding claims, wherein the method is repeated so that multiple priority data packages are transmitted according to the method.
12. A method according to claim 11 , wherein the length of time between transmissions of priority data packages varies between repeats of the method.
13. A method according to claim 11 or 12, wherein the code used to differentiate the priority data package varies between repeats of the method.
14. A controller to manage interference between a first network and at least one other network, the method comprising: an output port to transmit a priority data package comprising at least a first priority data block and a second priority data block; and a processor to code at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
15. Priority data package transmitted on a first network to manage interference between the first network and at least one other network, the priority data package comprising at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded using a code that differentiates the priority data package of the first network from priority data packages transmitted by the at least one other network.
16. A method of operating a network node that forms part of a first network to manage interference from at least one other network, the method comprising: receiving a priority data package comprised of at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded to differentiate the priority data package of the first network from priority data packages transmitted by the at least one other network; and recognising from the priority data package at least one priority data block of the first network.
17. A method according to claim 16, wherein the method further comprises transmitting a data block by inserting the data block into a transmission frame of the first network based on the recognised priority data block.
18. A method according to claim 17, wherein the method further comprises coding the data block using a code that differentiates the data block of the node from data blocks transmitted by other nodes that also form part of the first network.
19. A method according to claim 18, wherein the method further comprises coding the data block using a second code that differentiates the data block of the node from data blocks transmitted by the at least one other network.
20. A method according to claim 19, wherein the second code is a code division multiple access (CDMA) code.
21. A method according any one of claims 16 to 20, wherein recognising at least one priority data block comprises reading any uncoded priority data blocks in the received priority data package r
22. A method according to any one of claims 16 to 21 , wherein recognising at least one priority data block comprises decoding any coded priority data blocks of the first network in the received priority data package.
23. A method according to any one of claims 16 to 22, wherein the method further comprises reading non-priority data from a transmission frame of the first network.
24. A method according to any one of claims 16 to 23, wherein the method is repeated so that multiple priority data packages are received and recognised according to the method.
25. A method according to claim 24, wherein the code used to decode any priority data blocks varies between repeats of the method.
26. A network node that forms part of a first network to manage interference from at least one other network, wherein the node comprises: an input port to receive a priority' data package comprised of at least a first priority data block and a second priority data block, wherein at least one of the priority data blocks is coded to differentiate the priority data package of the first network from priority data packages transmitted by the at least one other network; and a processing unit to recognise from the priority data package at least one ~ priority data block of the first network.
27. A first network to manage interference from at least one other network, the network comprising: a controller operable to transmit a priority data package comprised of at least a first priority data block and a second priority data block, wherein the transmitter operates to code at least one of the priority data blocks before transmission using a code that differentiates the priority data package of the first network from priority .data packages transmitted by the at least one other network, and plural network nodes operable to receive the priority data package and recognise from the priority data package at least one priority data block of the first network.
28. A network according to claim 27, wherein a first node and a second node of the first network recognise at least two priority data blocks of the priority data package by decoding the at least two priority data blocks using one or more codes, wherein the first node uses codes that are different to the codes used by of the second node.
PCT/AU2010/000490 2009-04-28 2010-04-28 Interference management between overlapping networks WO2010124331A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
AU2009901834A AU2009901834A0 (en) 2009-04-28 A system which protects selected information signals in one network from external interference
AU2009901834 2009-04-28
AU2009904514 2009-09-17
AU2009904514A AU2009904514A0 (en) 2009-09-17 Interference management between overlapping networks

Publications (2)

Publication Number Publication Date
WO2010124331A1 true WO2010124331A1 (en) 2010-11-04
WO2010124331A8 WO2010124331A8 (en) 2011-02-24

Family

ID=43031579

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2010/000490 WO2010124331A1 (en) 2009-04-28 2010-04-28 Interference management between overlapping networks

Country Status (1)

Country Link
WO (1) WO2010124331A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005036909A1 (en) * 2003-10-07 2005-04-21 Roke Manor Research Limited A method of controlling interference from a transmitter in one communication system to a receiver in another communication system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005036909A1 (en) * 2003-10-07 2005-04-21 Roke Manor Research Limited A method of controlling interference from a transmitter in one communication system to a receiver in another communication system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KOUBAA A. ET AL.: "19th Euromicro Conference on Real-Time Systems 2007", 10 December 2009, article "A Time Division Beacon Scheduling Mechanism for IEEE802.15.4/Zigbee Cluster-Tree Wireless Sensor Networks" *
MINIUTTI D. ET AL.: "NICTA Proposal.", 4 May 2009 (2009-05-04), Retrieved from the Internet <URL:https://mentor.ieee.org/802.15/15-09-0345-00-0006-nicta-proposal.pdf> [retrieved on 20091210] *

Also Published As

Publication number Publication date
WO2010124331A8 (en) 2011-02-24

Similar Documents

Publication Publication Date Title
Haxhibeqiri et al. Low overhead scheduling of LoRa transmissions for improved scalability
Leonardi et al. RT-LoRa: A medium access strategy to support real-time flows over LoRa-based networks for industrial IoT applications
US7231221B2 (en) Channel access methods and apparatus in low-power wireless communication systems
US6041046A (en) Cyclic time hopping in time division multiple access communication system
US7193986B2 (en) Wireless network medium access control protocol
US6993049B2 (en) Communication system
US20120163333A1 (en) Frequency hopping
CN105071831A (en) Media access control for ultra-wide band communication
US11817897B2 (en) Synchronization beacon
GB2492182A (en) Communication using time frames with a transmission rate of at least one second between receiving and sending frames
JP2008289135A (en) Method and system for accessing channel in wireless network of nodes
Le Boudec et al. A MAC protocol for UWB very low power mobile ad-hoc networks based on dynamic channel coding with interference mitigation
Zhang et al. Priority-guaranteed MAC protocol for emerging wireless body area networks
Bezunartea et al. Towards energy efficient LoRa multihop networks
JP2021528913A (en) Generating channel access patterns for networks that are not coordinated with each other
EP2710846B1 (en) Very long frame in a machine to machine communication network
WO2012171867A1 (en) Interference mitigation
Patil et al. A survey: MAC layer protocol for wireless sensor networks
CN113785631A (en) Method for coordinating participants in a sensor network
Gomes et al. Competition: Reliability through Timeslotted Channel Hopping and Flooding-based Routing.
Feeney et al. Modes of inter-network interaction in beacon-enabled IEEE 802.15. 4 networks
Wu et al. Protocol sequences for mobile ad hoc networks
EP2151928B1 (en) Method for fast synchronization and frequency hop sequence detection in wireless sensor networks
WO2010124331A1 (en) Interference management between overlapping networks
US20210250146A1 (en) Detection of a pilot sequence on simple computing devices

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10769145

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10769145

Country of ref document: EP

Kind code of ref document: A1