US20030048806A1 - Method for address allocation in ad-hoc networks - Google Patents

Method for address allocation in ad-hoc networks Download PDF

Info

Publication number
US20030048806A1
US20030048806A1 US10/079,180 US7918002A US2003048806A1 US 20030048806 A1 US20030048806 A1 US 20030048806A1 US 7918002 A US7918002 A US 7918002A US 2003048806 A1 US2003048806 A1 US 2003048806A1
Authority
US
United States
Prior art keywords
address
entities
scrambling
data
mask
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.)
Abandoned
Application number
US10/079,180
Inventor
Jacobus Haartsen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Individual
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
Application filed by Individual filed Critical Individual
Priority to US10/079,180 priority Critical patent/US20030048806A1/en
Assigned to TELEFONAKTIEBOLAGET L M ERICSSON (PUBL) reassignment TELEFONAKTIEBOLAGET L M ERICSSON (PUBL) ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HAARTSEN, JACOBUS
Publication of US20030048806A1 publication Critical patent/US20030048806A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/604Address structures or formats

Definitions

  • the present invention is related to address selection in overlapping, uncoordinated networks and more particularly to preventing address contention in address list generation in overlapping, uncoordinated networks.
  • addressing is an essential element for proper data exchange.
  • Each device or entity communicating in the network requires a unique identification to distinguish it from other entities in the network.
  • Various addressing schemes are implemented to provide this identification function.
  • logical links can be assigned addresses to separate different logical services.
  • communication channels can be assigned addresses to define separate channels at the same communication medium.
  • ISM Industrial, Scientific and Medical
  • the DCS scheme constantly monitors the RF band and selects the part of the band with the least interference.
  • Two independent DCS schemes located in the same area are likely to select the same RF channel, since the communication environment they are monitoring are very similar, e.g., both may discover the presence of nearby interference from another network or system that jams part of the RF band. If the two systems select the same RF channel, there may be collisions between the systems since their transmissions are not coordinated. Even more damaging is when different networks share the same channel but there are no collisions; in that case, traffic exchanged in one network can erroneously be processed by devices of the other network.
  • a high-speed channel identity may be used.
  • a network selects a HS_ID when the network is established. Each packet exchanged on the RF channel is preceded by this HS_ID. Only packets with this HS_ID are accepted by the devices belonging to the corresponding network. Since there is no coordination between different networks, the HS_ID is chosen randomly. However, there is a potential for different networks to select the same HS_ID.
  • the probability of a overlap is still relatively high, when considering the possibility of future widespread use.
  • a scheme is needed to reduce this probability to reduce the possibility of collisions as uncoordinated networks, such as Bluetooth and its successors, increase in popularity and usage. Increasing the length N is one option; but since the identity length must be sent with each packet, this solution results in adding unnecessary overhead to the radio channel communication.
  • device addresses are used to exchange data packets between specific devices. For example, it is very common that a packet contains a source address identifying the device that sent the packet, and a destination address, pointing to the device that receives the packet. To further reduce the probability of confusion between different independently created networks, device addresses can also be selected randomly. However, there are situations when random selection of device addresses cannot be used. For example, when the addresses are used to determine specific functions in addition to the device identity. More particularly, an address may be used to indicate certain characteristics, or special features, of the device, e.g., all devices with an even number transmit on even-numbered slots and all devices with an odd number transmit on odd-numbered slots. Alternatively, the address space may be used for multiple purposes, such as device identity and logical connection indication. In all these cases, the address has a special meaning and a random address selection cannot be used.
  • a common address space which may be used for multiple purposes, is divided in two or more segments.
  • the address space contains a list of device addresses for a group of entities, which may include devices, that share a common communication channel, such as a network.
  • Each segment can correspond to a special feature or function that corresponds to the entities whose addresses are stored in that segment.
  • Each address is M bits long.
  • the address space is randomized by scrambling each address listed in the address space by an M-bit pseudo-random scrambling mask to offset each address individually. The pseudo-random scrambling mask is created when the network is established and is distributed among the network devices.
  • a device may use the same pseudo-random scrambling mask to descramble the address (depending on the scrambling function). After descrambling, any special features of the address are known and can be exploited.
  • a method of allocating addresses among a group of entities sharing a common transmission medium, the addresses identifying each respective entity in the group includes distributing, among the group of entities, at least one address mask; applying, within a transmitting entity of the group, using a scrambling function, a first address mask to an address portion of data transmitted by the transmitting entity of the group via the common transmission medium; and applying, within each receiving entity of the group, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, the first or second address mask being applied to descramble the address portion of the transmitted data received by each receiving entity of the group to determine a corresponding actual address data.
  • a method of communicating between two entities sharing a common transmission medium includes sharing between the two entities, at least one address mask; applying, in a transmitting one of the two entities, using a scrambling function, a first address mask to an actual address data in an address portion of a data transmission to scramble the actual address data prior to transmission by the transmitting entity via the common transmission medium; and applying, within a receiving one of the two entities, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, to the address portion of data received by the receiving entity to determine the corresponding actual address data.
  • a computer program product for communicating between at least two entities sharing a common transmission medium includes a computer-readable storage medium having computer-readable program code means embodied in the medium.
  • the computer-readable program code means includes logic that shares between the entities, at least one address mask; logic that applies, in a transmitting one of the entities, using a scrambling function, a first address mask to an actual address data in an address portion of a data transmission to scramble the actual address data prior to transmission by the transmitting entity via the common transmission medium; and logic that applies, within a receiving one of the entities, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, to the address portion of data received by the receiving entity to determine the corresponding actual address data.
  • FIG. 1 illustrates two independent groups of devices having established two independent wireless channels
  • FIG. 2 illustrates a typical format for a packet exchanged on a wireless channel
  • FIG. 3 illustrates conventional address space configurations that corresponding to the independent groups of devices in FIG. 1;
  • FIG. 4 illustrates scrambled address space configurations according to an embodiment of the present invention.
  • FIG. 5 illustrates scrambled address space configurations according to another embodiment of the present invention.
  • FIG. 1 depicts two groups, such as networks, of wireless devices (Groups I and II) that are located within wireless communication range of each other (in vicinity).
  • the two groups have each independently selected a corresponding wireless channel for communication.
  • Group I consists of devices A, B and C, which use RF channel X.
  • Group II consists of devices D E, F and G, which use RF channel Y.
  • Both groups apply a dynamic channel selection scheme to select that part of the RF band that provides the least amount of interference for communication, and/or is least interfered.
  • the packets include a source and destination address to indicate the sender and recipient, respectively.
  • An example of a typical packet format is shown in FIG. 2.
  • the packet may contain a preamble 200 , which may contain a training sequence for receiver training, and a header 210 , which contains source and destination addresses 225 , 230 and additional control information, such as the packet length 215 and ACK/NAK information 235 of a retransmission scheme.
  • the header may also contain a channel ID 220 , such as HS_ID, which is a randomly selected number as discussed above.
  • the packet also includes a payload 250 that contains the data to be transmitted. The payload may be segmented, as shown.
  • the data transmitted between the devices in the payload may vary in nature.
  • the connection between devices A and B may carry synchronous traffic, such as voice, whereas asynchronous traffic may be exchanged between devices A, B, and C.
  • synchronous data may be transmitted between devices E and F, whereas devices D and G only support asynchronous data traffic.
  • Such a distinction allows the address of the device to also represent a special feature of the device, i.e., whether synchronous data traffic is supported. For example, if certain time slots are allocated to the devices that support synchronous traffic, the address may correspond to a time slot. This can be accomplished, for example, by reserving the upper part of the address space for devices supporting synchronous traffic, while the lower part is reserved for devices not supporting synchronous traffic.
  • the same address space may be used to identify both individual devices as individual (logical) links.
  • devices may be allocated addresses beginning at the top of address space, whereas links are allocated addresses beginning at the bottom of the address space.
  • the conventional address spaces for devices A to G are shown in FIG. 3.
  • the address spaces represent address data stored in a memory in an organized format to allow later retrieval.
  • the memory storing the address data may be located in one or more of the devices A to G or may be located in some other entity communicating with the entities.
  • An address space may be divided among several devices or duplicated in several devices.
  • the memory may be larger then the address space and/or store the address space along with other data used for other purposes.
  • the address space may be larger than the memory.
  • a 16 bit address may be used, providing an address space of 216 possible addresses, while only 256 different addresses are required to identify the different devices.
  • a 16 bit scrambling mask may still be used to randomize the address space (discussed further below), while the memory need only store the 256 addresses used.
  • address space I 300 corresponds to group I and address space II 310 corresponds to group II.
  • Each address space includes a list of device addresses. Since the address lists for groups I and II, which use RF channels X and Y, respectively, are created independently using the same configuration of upper and lower address space, devices A and E will be assigned the same address. In the example shown, a 6-bit address is used. As more devices are added, more addresses are listed in the address space, either moving downward from the top for added devices supporting synchronous traffic, or moving upward from the bottom for added devices not supporting synchronous traffic. If a device leaves the network, its address is removed from the list and reused by the first added device having the same special feature. An entire block of addresses may also be reallocated to fill in the empty space in the list.
  • the address of device B is ‘000001’.
  • the resulting new scrambled address for device B becomes ‘011000’.
  • Applying the same scrambling mask in the same manner to the scrambled address for device B yields the original address ‘000001’ again. That is, since the reverse of the XOR function is the function itself, the same mask can be used to descramble the scrambled address at the destination to ascertain the true address of the source. Therefore, when the scrambling and descrambling involves the same function, there is no need for a separate descrambling and scrambling mask, since the masks would be the same.
  • FIG. 4 An example of two differently scrambled address lists is shown in FIG. 4.
  • Address space I 400 corresponds to group I and address space II 410 corresponds to group II.
  • Scrambled address spaces I 420 and II 430 which result from a different scrambling mask being applied using an XOR scrambling operation to the addresses in each respective address space, are also shown.
  • the scrambling mask used for group I is ‘011001’, and for group II it is ‘101011’.
  • the scrambled address spaces created using the different scrambling masks result in different address spaces 420 and 430 that contain different address lists. However, the original addresses can easily be retrieved by descrambling with the respective masks at the destination.
  • the addresses of a device correspond to one of two possible special features, synchronous and asynchronous.
  • the synchronous addresses start from the top of the address list, the asynchronous from the bottom. In this way, addresses can be dynamically allocated for different special features without reserving a pool of addresses for each specific feature.
  • Feature A corresponds to devices having addresses from the top down (segment A)
  • feature C corresponds to devices having addresses from the bottom up (segment C)
  • feature B corresponds to devices having addresses starting at a predetermined reference address somewhere in the middle (address ‘011111’ is used by example).
  • New devices with feature B are alternately allocated below and above the reference address.
  • the address space can be divided into even more segments, each segment corresponding to a certain group of addresses reserved for a specific group of devices, services, or other special features.
  • the segment sizes are preferably variable. That is, they grow and shrink depending on whether services are added or removed.
  • the address space is dynamically shared by several services without permanently allocating a fixed number of addresses for each service. Scrambling is used to (pseudo-) randomize the address space to minimize ambiguities in areas where multiple independent systems use the same address space. In particular, in cases where the address space is sparsely used (i.e., many more addresses are available than used), the probability that different networks apply the same addresses (in a similar fashion) becomes rather small.
  • a channel may be, but is not limited to: one or more time periods for communication, such as in time division based communication; a specific frequency range, such as in frequency division based communication; a frequency hopping scheme, such as that employed in Bluetooth; one or more codes, such as in code division based communication; or any combination of the above.
  • the invention can additionally be considered to be embodied entirely within any form of computer readable storage medium having stored therein an appropriate set of computer instructions that would cause a processor to carry out the techniques described herein.
  • the various aspects of the invention may be embodied in many different forms, and all such forms are contemplated to be within the scope of the invention.
  • any such form of embodiment may be referred to herein as “logic configured to” perform a described action, or alternatively as “logic that” performs a described action.

Abstract

A common address space, which may be used for multiple purposes, is divided in two or more segments. The address space contains a list of device addresses for a group of entities, which may include devices, that share a common communication channel, such as a network. Each segment can correspond a special feature or function that corresponds to the entities whose address are stored in that segment. The address space is randomized by scrambling each address listed in the address space by an M-bit pseudo-random scrambling mask to offset each address individually. The pseudo-random scrambling mask is created when the network is established and is distributed among the network devices. When processing a received address, a device may use the same pseudo-random scrambling mask to descramble the address (depending on the scrambling function). After descrambling, any special features of the address are known and can be exploited.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • This application is related to, and claims priority from, U.S. Provisional Application No. 60/318,812, entitled “ADDRESS ALLOCATION IN AD-HOC NETWORKS,” filed on Sep. 13, 2001, the disclosure of which is incorporated herein by reference.[0001]
  • BACKGROUND
  • The present invention is related to address selection in overlapping, uncoordinated networks and more particularly to preventing address contention in address list generation in overlapping, uncoordinated networks. [0002]
  • In modern wired and wireless communication networks, addressing is an essential element for proper data exchange. Each device or entity communicating in the network requires a unique identification to distinguish it from other entities in the network. Various addressing schemes are implemented to provide this identification function. In addition, logical links can be assigned addresses to separate different logical services. Finally, communication channels can be assigned addresses to define separate channels at the same communication medium. [0003]
  • For example, in the wireless communication system described in copending U.S. patent application Ser. No. 09/385,024, entitled “Resource Management In Uncoordinated Frequency Hopping System,” by J. C. Haartsen, filed Aug. 30, 1999, a system is described which defines different RF channels making use of a dynamic channel selection (DCS) scheme. Different groups of devices can independently establish their own wireless network by selecting a RF channel. The wireless networks are established in an ad-hoc fashion and are not coordinated with each other. Dynamic channel allocation schemes are used in the different networks, which have the potential of selecting the same RF channel. [0004]
  • This is particularly troublesome where an unlicensed, and therefore uncontrolled, band is used. One such band is the ISM (Industrial, Scientific and Medical) band at 2.4 GHz, which is globally available. The ISM band provides about 83.5 MHZ of radio spectrum. [0005]
  • The DCS scheme constantly monitors the RF band and selects the part of the band with the least interference. Two independent DCS schemes located in the same area are likely to select the same RF channel, since the communication environment they are monitoring are very similar, e.g., both may discover the presence of nearby interference from another network or system that jams part of the RF band. If the two systems select the same RF channel, there may be collisions between the systems since their transmissions are not coordinated. Even more damaging is when different networks share the same channel but there are no collisions; in that case, traffic exchanged in one network can erroneously be processed by devices of the other network. [0006]
  • To reduce the problems associated with two wireless networks operating in the same area that share the same RF channel, a high-speed channel identity (HS_ID) may be used. A network selects a HS_ID when the network is established. Each packet exchanged on the RF channel is preceded by this HS_ID. Only packets with this HS_ID are accepted by the devices belonging to the corresponding network. Since there is no coordination between different networks, the HS_ID is chosen randomly. However, there is a potential for different networks to select the same HS_ID. [0007]
  • The probability of a overlap is still relatively high, when considering the possibility of future widespread use. For example, when a N-bit HS_ID is used, the probability that two networks select the same HS_ID independently from each other is ½[0008] N. Therefore, for an 8-bit HS_ID (N=8), the probability is {fraction (1/256)}, or about 0.4%. A scheme is needed to reduce this probability to reduce the possibility of collisions as uncoordinated networks, such as Bluetooth and its successors, increase in popularity and usage. Increasing the length N is one option; but since the identity length must be sent with each packet, this solution results in adding unnecessary overhead to the radio channel communication.
  • In addition to the channel addresses, device addresses are used to exchange data packets between specific devices. For example, it is very common that a packet contains a source address identifying the device that sent the packet, and a destination address, pointing to the device that receives the packet. To further reduce the probability of confusion between different independently created networks, device addresses can also be selected randomly. However, there are situations when random selection of device addresses cannot be used. For example, when the addresses are used to determine specific functions in addition to the device identity. More particularly, an address may be used to indicate certain characteristics, or special features, of the device, e.g., all devices with an even number transmit on even-numbered slots and all devices with an odd number transmit on odd-numbered slots. Alternatively, the address space may be used for multiple purposes, such as device identity and logical connection indication. In all these cases, the address has a special meaning and a random address selection cannot be used. [0009]
  • Accordingly, a method is needed in which address allocation appears to be random, to further reduce the probability of collisions with devices in neighboring networks, while still providing the ability to assign special meaning to the allocated addresses to represent special features or functions of the devices. [0010]
  • SUMMARY
  • The present invention addresses these and other concerns. A common address space, which may be used for multiple purposes, is divided in two or more segments. The address space contains a list of device addresses for a group of entities, which may include devices, that share a common communication channel, such as a network. Each segment can correspond to a special feature or function that corresponds to the entities whose addresses are stored in that segment. Each address is M bits long. The address space is randomized by scrambling each address listed in the address space by an M-bit pseudo-random scrambling mask to offset each address individually. The pseudo-random scrambling mask is created when the network is established and is distributed among the network devices. [0011]
  • When processing a received address, a device may use the same pseudo-random scrambling mask to descramble the address (depending on the scrambling function). After descrambling, any special features of the address are known and can be exploited. [0012]
  • The address randomization scheme operates in addition to the N-bit random channel identity scheme discussed above. Accordingly, the probability of collisions between devices in uncoordinated networks is greatly reduced. More particularly, the probability that different networks use the same channel identity, of length N, and the same address allocation, of length M, for a particular device is ½[0013] (N+M). Therefore, for a 6-bit address (M=6), employing a 6-bit pseudo-random scrambling mask, and the same 8-bit HS_ID (N=8), the probability of a collision becomes {fraction (1/16,384)}, or about 0.006%.
  • According to one aspect, a method of allocating addresses among a group of entities sharing a common transmission medium, the addresses identifying each respective entity in the group, includes distributing, among the group of entities, at least one address mask; applying, within a transmitting entity of the group, using a scrambling function, a first address mask to an address portion of data transmitted by the transmitting entity of the group via the common transmission medium; and applying, within each receiving entity of the group, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, the first or second address mask being applied to descramble the address portion of the transmitted data received by each receiving entity of the group to determine a corresponding actual address data. [0014]
  • According to another aspect, a method of communicating between two entities sharing a common transmission medium, includes sharing between the two entities, at least one address mask; applying, in a transmitting one of the two entities, using a scrambling function, a first address mask to an actual address data in an address portion of a data transmission to scramble the actual address data prior to transmission by the transmitting entity via the common transmission medium; and applying, within a receiving one of the two entities, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, to the address portion of data received by the receiving entity to determine the corresponding actual address data. [0015]
  • According to yet another aspect, a computer program product for communicating between at least two entities sharing a common transmission medium includes a computer-readable storage medium having computer-readable program code means embodied in the medium. The computer-readable program code means includes logic that shares between the entities, at least one address mask; logic that applies, in a transmitting one of the entities, using a scrambling function, a first address mask to an actual address data in an address portion of a data transmission to scramble the actual address data prior to transmission by the transmitting entity via the common transmission medium; and logic that applies, within a receiving one of the entities, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, to the address portion of data received by the receiving entity to determine the corresponding actual address data.[0016]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The above and other objects, features, and advantages of the present invention will become more apparent in light of the following detailed description in conjunction with the drawings, in which like reference numerals identify similar or identical elements, and in which: [0017]
  • FIG. 1 illustrates two independent groups of devices having established two independent wireless channels; [0018]
  • FIG. 2 illustrates a typical format for a packet exchanged on a wireless channel; [0019]
  • FIG. 3 illustrates conventional address space configurations that corresponding to the independent groups of devices in FIG. 1; [0020]
  • FIG. 4 illustrates scrambled address space configurations according to an embodiment of the present invention; and [0021]
  • FIG. 5 illustrates scrambled address space configurations according to another embodiment of the present invention.[0022]
  • DETAILED DESCRIPTION
  • Preferred embodiments of the present invention are described below with reference to the accompanying drawings. In the following description, well-known functions and/or constructions are not described in detail to avoid obscuring the invention in unnecessary detail. [0023]
  • Turning to the drawings, FIG. 1 depicts two groups, such as networks, of wireless devices (Groups I and II) that are located within wireless communication range of each other (in vicinity). The two groups have each independently selected a corresponding wireless channel for communication. Group I consists of devices A, B and C, which use RF channel X. Group II consists of devices D E, F and G, which use RF channel Y. Both groups apply a dynamic channel selection scheme to select that part of the RF band that provides the least amount of interference for communication, and/or is least interfered. In this endeavor, both networks may have selected the same RF channel, i.e., X=Y. [0024]
  • Data between the devices on each channel is typically exchanged in data packets. Since the devices in each group share a common channel, the packets include a source and destination address to indicate the sender and recipient, respectively. An example of a typical packet format is shown in FIG. 2. The packet may contain a [0025] preamble 200, which may contain a training sequence for receiver training, and a header 210, which contains source and destination addresses 225, 230 and additional control information, such as the packet length 215 and ACK/NAK information 235 of a retransmission scheme. The header may also contain a channel ID 220, such as HS_ID, which is a randomly selected number as discussed above. The packet also includes a payload 250 that contains the data to be transmitted. The payload may be segmented, as shown.
  • The data transmitted between the devices in the payload may vary in nature. For example the connection between devices A and B may carry synchronous traffic, such as voice, whereas asynchronous traffic may be exchanged between devices A, B, and C. Similarly, synchronous data may be transmitted between devices E and F, whereas devices D and G only support asynchronous data traffic. It is preferable in many cases to make a distinction between synchronous and asynchronous traffic in the address space. Such a distinction allows the address of the device to also represent a special feature of the device, i.e., whether synchronous data traffic is supported. For example, if certain time slots are allocated to the devices that support synchronous traffic, the address may correspond to a time slot. This can be accomplished, for example, by reserving the upper part of the address space for devices supporting synchronous traffic, while the lower part is reserved for devices not supporting synchronous traffic. [0026]
  • In another embodiment, the same address space may be used to identify both individual devices as individual (logical) links. In that case, devices may be allocated addresses beginning at the top of address space, whereas links are allocated addresses beginning at the bottom of the address space. [0027]
  • The conventional address spaces for devices A to G are shown in FIG. 3. The address spaces represent address data stored in a memory in an organized format to allow later retrieval. The memory storing the address data may be located in one or more of the devices A to G or may be located in some other entity communicating with the entities. An address space may be divided among several devices or duplicated in several devices. In addition, the memory may be larger then the address space and/or store the address space along with other data used for other purposes. Inversely, the address space may be larger than the memory. For example, a 16 bit address may be used, providing an address space of 216 possible addresses, while only 256 different addresses are required to identify the different devices. In this case, a 16 bit scrambling mask may still be used to randomize the address space (discussed further below), while the memory need only store the 256 addresses used. [0028]
  • Referring again to FIG. 3, address space I [0029] 300 corresponds to group I and address space II 310 corresponds to group II. Each address space includes a list of device addresses. Since the address lists for groups I and II, which use RF channels X and Y, respectively, are created independently using the same configuration of upper and lower address space, devices A and E will be assigned the same address. In the example shown, a 6-bit address is used. As more devices are added, more addresses are listed in the address space, either moving downward from the top for added devices supporting synchronous traffic, or moving upward from the bottom for added devices not supporting synchronous traffic. If a device leaves the network, its address is removed from the list and reused by the first added device having the same special feature. An entire block of addresses may also be reallocated to fill in the empty space in the list.
  • If the two groups, or networks, select the same RF channel (X=Y) and the same channel ID while they are in vicinity of each other, errors are likely. For example, when device A sends a packet that is intended for device B but also received by device F, device F may erroneously think it was sent by device E, since the packet header would contain the [0030] same channel ID 220, source address 225, and destination address 230. The probability of this occurring can be reduced considerably by scrambling the address spaces in each network by a pseudo-random number, called the scrambling mask. Scrambling can be done with any reversible bi-jective function. For example, a binary EXCLUSIVE-OR (XOR) operation may be used, which provides the following result when scrambling each bit of the device address:
  • 0+0=0 [0031]
  • 0+1=1 [0032]
  • 1+0=1 [0033]
  • 1+1=0 [0034]
  • For example, in FIG. 3, the address of device B is ‘000001’. When a binary XOR operation is applied bit by bit to the address using a scrambling mask of ‘011001’, the resulting new scrambled address for device B becomes ‘011000’. Applying the same scrambling mask in the same manner to the scrambled address for device B yields the original address ‘000001’ again. That is, since the reverse of the XOR function is the function itself, the same mask can be used to descramble the scrambled address at the destination to ascertain the true address of the source. Therefore, when the scrambling and descrambling involves the same function, there is no need for a separate descrambling and scrambling mask, since the masks would be the same. [0035]
  • It will be appreciated by one of ordinary skill in the art that, although an XOR operation is illustrated, many different scrambling techniques commonly known in the art may be employed. For example, a fixed number modulo 2[0036] M may be added to each address to scramble the address and then subtracted to descramble the address. Another example could be to scramble an address by creating a permutation of the address by exchanging selected bits within the address, and to descramble the address by reversing the operation. It should also be noted that, while in the case of an XOR operation, the same mask may be used to both scramble and descramble, some techniques that involve complimentary masks for scrambling and descrambling may be employed. In such a case, both masks would be distributed when the group, or network, is established.
  • An example of two differently scrambled address lists is shown in FIG. 4. Address space I [0037] 400 corresponds to group I and address space II 410 corresponds to group II. Scrambled address spaces I 420 and II 430, which result from a different scrambling mask being applied using an XOR scrambling operation to the addresses in each respective address space, are also shown. The scrambling mask used for group I is ‘011001’, and for group II it is ‘101011’. The scrambled address spaces created using the different scrambling masks result in different address spaces 420 and 430 that contain different address lists. However, the original addresses can easily be retrieved by descrambling with the respective masks at the destination.
  • As the address lists become more populated, the probability of common addresses increases. However, the probability that these addresses also have the same corresponding special features decreases. [0038]
  • In the example illustrated by FIG. 4, the addresses of a device, in addition to identifying the device, correspond to one of two possible special features, synchronous and asynchronous. The synchronous addresses start from the top of the address list, the asynchronous from the bottom. In this way, addresses can be dynamically allocated for different special features without reserving a pool of addresses for each specific feature. [0039]
  • The same concept can be extended to correspond devices with more special features. For example, in FIG. 5, an example is shown for an address space with three special features, A, B, and C. Feature A corresponds to devices having addresses from the top down (segment A), feature C corresponds to devices having addresses from the bottom up (segment C), and feature B corresponds to devices having addresses starting at a predetermined reference address somewhere in the middle (address ‘011111’ is used by example). New devices with feature B are alternately allocated below and above the reference address. When a previously used address becomes available, due to a service being discontinued or a device leaving the group, the available address is either used by a new device or service entering the group, or other devices/services in the list are reallocated the available addresses. [0040]
  • It will be understood that the address space can be divided into even more segments, each segment corresponding to a certain group of addresses reserved for a specific group of devices, services, or other special features. The segment sizes are preferably variable. That is, they grow and shrink depending on whether services are added or removed. The address space is dynamically shared by several services without permanently allocating a fixed number of addresses for each service. Scrambling is used to (pseudo-) randomize the address space to minimize ambiguities in areas where multiple independent systems use the same address space. In particular, in cases where the address space is sparsely used (i.e., many more addresses are available than used), the probability that different networks apply the same addresses (in a similar fashion) becomes rather small. [0041]
  • When the boundaries between two segments meet, additional addresses can only be issued using the space at the opposite boundary (if there is one). This can only be accomplished if a segment has two boundaries, as, for example, segment B in FIG. 5. [0042]
  • It should be emphasized that although the invention has been described above with reference to a RF channel, any communication medium may be used within the scope of the present invention. Additionally, the invention is not limited to the RF spectrum. The term ‘channel’ is meant in its broadest sense. For example, a channel may be, but is not limited to: one or more time periods for communication, such as in time division based communication; a specific frequency range, such as in frequency division based communication; a frequency hopping scheme, such as that employed in Bluetooth; one or more codes, such as in code division based communication; or any combination of the above. [0043]
  • Although described with reference to a communication system, it will be appreciated by those of ordinary skill in the art that this invention can be embodied in other specific forms without departing from its essential character. For example, the invention may be used in any multi-processor system. The embodiments described above should therefore be considered in all respects to be illustrative and not restrictive. [0044]
  • It will be appreciated that the steps of the methods illustrated above may be readily implemented either by software that is executed by a suitable processor or by hardware, such as an application-specific integrated circuit (ASIC). [0045]
  • The various aspects of the invention have been described in connection with a number of exemplary embodiments. To facilitate an understanding of the invention, many aspects of the invention were described in terms of sequences of actions that may be performed by elements of a computer system. For example, it will be recognized that in each of the embodiments, the various actions could be performed by specialized circuits (e.g., discrete logic gates interconnected to perform a specialized function), by program instructions being executed by one or more processors, or by a combination of both. [0046]
  • Moreover, the invention can additionally be considered to be embodied entirely within any form of computer readable storage medium having stored therein an appropriate set of computer instructions that would cause a processor to carry out the techniques described herein. Thus, the various aspects of the invention may be embodied in many different forms, and all such forms are contemplated to be within the scope of the invention. For each of the various aspects of the invention, any such form of embodiment may be referred to herein as “logic configured to” perform a described action, or alternatively as “logic that” performs a described action. [0047]
  • It should also be emphasized that the terms “comprises” and “comprising”, when used in this specification as well as the claims, are taken to specify the presence of stated features, steps or components; but the use of these terms does not preclude the presence or addition of one or more other features, steps, components or groups thereof. [0048]
  • Various embodiments of Applicants' invention have been described, but it will be appreciated by those of ordinary skill in this art that these embodiments are merely illustrative and that many other embodiments are possible. The intended scope of the invention is set forth by the following claims, rather than the preceding description, and all variations that fall within the scope of the claims are intended to be embraced therein. [0049]

Claims (24)

What is claimed is:
1. A method of allocating addresses among a group of entities sharing a common transmission medium, the addresses identifying each respective entity in the group, the method comprising the steps of:
distributing, among the group of entities, at least one address mask;
applying, within a transmitting entity of the group, using a scrambling function, a first address mask to an address portion of data transmitted by the transmitting entity of the group via the common transmission medium; and
applying, within each receiving entity of the group, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, the first or second address mask being applied to descramble the address portion of the transmitted data received by each receiving entity of the group to determine a corresponding actual address data.
2. The method of claim 1, wherein the scrambling and descrambling functions are the same, only the first address mask is distributed among the group, and the first address mask is used to descramble the address portion of the transmitted data.
3. The method of claim 2, wherein the scrambling and descrambling functions are both EXCLUSIVE-OR (XOR) operations.
4. The method of claim 1, wherein the scrambling and descrambling functions are not the same, the first and second address masks are distributed among the group, and the second address mask is used to descramble the address portion of the transmitted data.
5. The method of claim 1, wherein the group of entities comprise a wireless network.
6. The method of claim 5, wherein the wireless network is an ad-hoc wireless network, wherein the common transmission medium includes at least one channel established in an uncoordinated way.
7. The method of claim 5, wherein the common transmission medium includes a plurality of channels and dynamic channel selection is used.
8. The method of claim 1, wherein the common transmission medium includes at least one channel defined by a frequency hopping scheme.
9. The method of claim 1, wherein at least one of the entities stores a list of the actual address data, the list being organized in segments with each segment implying a special feature on the entities corresponding to the actual address data stored in the respective segment.
10. The method of claim 9, wherein the segments include a segment for entities supporting synchronous data transfer and a segment for entities not supporting synchronous data transfer.
11. A method of communicating between two entities sharing a common transmission medium, the method comprising the steps of:
sharing between the two entities, at least one address mask;
applying, in a transmitting one of the two entities, using a scrambling function, a first address mask to an actual address data in an address portion of a data transmission to scramble the actual address data prior to transmission by the transmitting entity via the common transmission medium; and
applying, within a receiving one of the two entities, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, to the address portion of data received by the receiving entity to determine the corresponding actual address data.
12. The method of claim 11, wherein the scrambling and descrambling functions are the same, only the first address mask is shared between the two entities, and the first address mask is used to descramble the address portion of the transmitted data.
13. The method of claim 12, wherein the scrambling and descrambling functions are both EXCLUSIVE-OR (XOR) operations.
14. The method of claim 11, wherein the scrambling and descrambling functions are not the same, the first and second address masks are shared between the two entities, and the second address mask is used to descramble the address portion of the transmitted data.
15. The method of claim 11, wherein the two entities comprise a wireless network.
16. The method of claim 15, wherein the wireless network is an ad-hoc wireless network, wherein the common transmission medium includes at least one channel established in an uncoordinated way.
17. The method of claim 15, wherein the common transmission medium includes a plurality of channels and dynamic channel selection is used.
18. The method of claim 11, wherein the common transmission medium includes at least one channel defined by a frequency hopping scheme.
19. The method of claim 11, wherein at least one of the two entities stores a list of the actual address data, the list being organized in segments with each segment implying a special feature on the entities corresponding to the actual address data stored in the respective segment.
20. The method of claim 19, wherein the segments include a segment for entities supporting synchronous data transfer and a segment for entities not supporting synchronous data transfer.
21. A computer program product for communicating between at least two entities sharing a common transmission medium, the computer program product comprising:
a computer-readable storage medium having computer-readable program code means embodied in said medium, said computer-readable program code means including:
logic that shares between the entities, at least one address mask;
logic that applies, in a transmitting one of the entities, using a scrambling function, a first address mask to an actual address data in an address portion of a data transmission to scramble the actual address data prior to transmission by the transmitting entity via the common transmission medium; and
logic that applies, within a receiving one of the entities, using a descrambling function, the first address mask, or a second address mask when the descrambling function differs from the scrambling function, to the address portion of data received by the receiving entity to determine the corresponding actual address data.
22. The computer program product of claim 21, wherein the scrambling and descrambling functions are the same, only the first address mask is shared between the at least two entities, and the first address mask is used to descramble the address portion of the transmitted data.
23. The computer program product of claim 22, wherein the scrambling and descrambling functions are both EXCLUSIVE-OR (XOR) operations.
24. The computer program product of claim 21, wherein the scrambling and descrambling functions are not the same, the first and second address masks are shared between the at least two entities, and the second address mask is used to descramble the address portion of the transmitted data.
US10/079,180 2001-09-13 2002-02-19 Method for address allocation in ad-hoc networks Abandoned US20030048806A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/079,180 US20030048806A1 (en) 2001-09-13 2002-02-19 Method for address allocation in ad-hoc networks

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US31881201P 2001-09-13 2001-09-13
US10/079,180 US20030048806A1 (en) 2001-09-13 2002-02-19 Method for address allocation in ad-hoc networks

Publications (1)

Publication Number Publication Date
US20030048806A1 true US20030048806A1 (en) 2003-03-13

Family

ID=26761704

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/079,180 Abandoned US20030048806A1 (en) 2001-09-13 2002-02-19 Method for address allocation in ad-hoc networks

Country Status (1)

Country Link
US (1) US20030048806A1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040253948A1 (en) * 2003-06-12 2004-12-16 Laberteaux Kenneth P. Multiple-group coordination for a robust, low-delay, fast reconfiguring wireless system
EP1578086A1 (en) * 2004-03-19 2005-09-21 Sony International (Europe) GmbH Addressing mechanism for nodes in a communication system
GB2413037A (en) * 2004-04-07 2005-10-12 Toshiba Res Europ Ltd Allocating temporary addresses to devices in an ad hoc network
US20050227705A1 (en) * 2004-04-08 2005-10-13 Seppo Rousu Data communication method, telecommunication system and mobile device
DE102004056181A1 (en) * 2004-11-20 2006-06-08 Deutsche Telekom Ag Method for the systematic assignment of addresses to users of communication networks
WO2008066777A2 (en) * 2006-11-28 2008-06-05 Marvell Semiconductor, Inc. Simplified auto-configuration and service discovery in ad-hoc networks
US20090319674A1 (en) * 2008-06-24 2009-12-24 Microsoft Corporation Techniques to manage communications between relay servers
WO2010006100A1 (en) * 2008-07-11 2010-01-14 Marvell World Trade, Ltd. Ip assignment scheme for dynamic peer-to-peer networks
US10001972B2 (en) * 2016-11-22 2018-06-19 Korea Internet & Security Agency Random IP generation method and apparatus
US10044680B2 (en) * 2015-04-24 2018-08-07 Agency For Defense Development Method for hiding receiver's address for link layer in group communication
US10264552B2 (en) * 2016-11-01 2019-04-16 Nokia Of America Corporation Methods and systems for using a multimedia broadcast multicast services bearer

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5550809A (en) * 1992-04-10 1996-08-27 Ericsson Ge Mobile Communications, Inc. Multiple access coding using bent sequences for mobile radio communications
US5729537A (en) * 1996-06-14 1998-03-17 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for providing anonymous data transfer in a communication system
US6125182A (en) * 1994-11-09 2000-09-26 Channel One Communications, Inc. Cryptographic engine using logic and base conversions
US20030145196A1 (en) * 2002-01-31 2003-07-31 Chris Heegard Separate self-synchronizing packet-based scrambler having replay variation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5550809A (en) * 1992-04-10 1996-08-27 Ericsson Ge Mobile Communications, Inc. Multiple access coding using bent sequences for mobile radio communications
US6125182A (en) * 1994-11-09 2000-09-26 Channel One Communications, Inc. Cryptographic engine using logic and base conversions
US5729537A (en) * 1996-06-14 1998-03-17 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for providing anonymous data transfer in a communication system
US20030145196A1 (en) * 2002-01-31 2003-07-31 Chris Heegard Separate self-synchronizing packet-based scrambler having replay variation

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040253948A1 (en) * 2003-06-12 2004-12-16 Laberteaux Kenneth P. Multiple-group coordination for a robust, low-delay, fast reconfiguring wireless system
EP1578086A1 (en) * 2004-03-19 2005-09-21 Sony International (Europe) GmbH Addressing mechanism for nodes in a communication system
GB2413037A (en) * 2004-04-07 2005-10-12 Toshiba Res Europ Ltd Allocating temporary addresses to devices in an ad hoc network
GB2413037B (en) * 2004-04-07 2006-02-15 Toshiba Res Europ Ltd Network addressing
US20050227705A1 (en) * 2004-04-08 2005-10-13 Seppo Rousu Data communication method, telecommunication system and mobile device
DE102004056181A1 (en) * 2004-11-20 2006-06-08 Deutsche Telekom Ag Method for the systematic assignment of addresses to users of communication networks
JP2010511323A (en) * 2006-11-28 2010-04-08 マーベル ワールド トレード リミテッド Simplified automatic configuration and service discovery within ad hoc networks
WO2008066777A2 (en) * 2006-11-28 2008-06-05 Marvell Semiconductor, Inc. Simplified auto-configuration and service discovery in ad-hoc networks
WO2008066777A3 (en) * 2006-11-28 2008-07-17 Marvell Semiconductor Inc Simplified auto-configuration and service discovery in ad-hoc networks
US20090319674A1 (en) * 2008-06-24 2009-12-24 Microsoft Corporation Techniques to manage communications between relay servers
WO2010006100A1 (en) * 2008-07-11 2010-01-14 Marvell World Trade, Ltd. Ip assignment scheme for dynamic peer-to-peer networks
US8116233B2 (en) 2008-07-11 2012-02-14 Marvell World Trade Ltd. IP assignment scheme for dynamic peer-to-peer networks
US10044680B2 (en) * 2015-04-24 2018-08-07 Agency For Defense Development Method for hiding receiver's address for link layer in group communication
US10264552B2 (en) * 2016-11-01 2019-04-16 Nokia Of America Corporation Methods and systems for using a multimedia broadcast multicast services bearer
US10001972B2 (en) * 2016-11-22 2018-06-19 Korea Internet & Security Agency Random IP generation method and apparatus
US20180275963A1 (en) * 2016-11-22 2018-09-27 Korea Internet & Security Agency Random ip generation method and apparatus
US10628127B2 (en) * 2016-11-22 2020-04-21 Korea Internet & Security Agency Random IP generation method and apparatus

Similar Documents

Publication Publication Date Title
JP4343352B2 (en) Data transmission / reception method and data transmission / reception apparatus
US8018912B2 (en) System and method for a dynamic beacon period in a MAC distributed reservation protocol
EP1379029B1 (en) Method of guaranteeing users' anonymity and wireless local area network (LAN) system therefor
US20030048806A1 (en) Method for address allocation in ad-hoc networks
CN1973492B (en) A method for signaling the status of a subcarrier in a MC network and a method for adaptively allocating the subcarriers in a MC network
US6512748B1 (en) Radio paging signal coding control scheme using variable number of logical channels according to paging signal traffic
US20070211657A1 (en) Apparatus and Method for Assigning Time Domain Resources to a Receiver
EP0914730A1 (en) Hierarchical resource management method, system, base station, head-end unit, and subscriber unit for variable resource size communication systems
JP4593767B2 (en) Communication system using orthogonal frequency division multiplexing based on spread spectrum multiple access
JP2008167446A (en) Communication system
EP3481118A1 (en) Method and device for resource allocation
US6810022B1 (en) Full duplex communication slot assignment
US20050083859A1 (en) Address allocation method using site-local prefix pools in mobile ad-hoc networks
US6574199B1 (en) Unifying slot assignment protocol logical neighborhooding
US7961749B2 (en) Signaling method and system for channel switching in a wireless local area network
US20050018631A1 (en) Frequency hopping spread spectrum communication system
KR101456483B1 (en) Apparatus and method for transmitting data and apparatus and method for receiving data
US7848297B2 (en) Method of generating PLCM for broadcast/multicast service and apparatus thereof
US9204479B2 (en) Method of transmitting and receiving data in talk-around direct communication network
CA2260686A1 (en) Bandwidth control in a packet-based data system
KR20050040692A (en) Method for exchanging data between devices on wireless personal area network
KR20020077640A (en) Method and apparatus for assigning walsh codes
KR100976468B1 (en) Method of Generating a Public Long Code Mask in a Mobile Communication System
JP2591877B2 (en) Channel assignment method
US20040090940A1 (en) Method of allocation for a broadcasting medium

Legal Events

Date Code Title Description
AS Assignment

Owner name: TELEFONAKTIEBOLAGET L M ERICSSON (PUBL), SWEDEN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HAARTSEN, JACOBUS;REEL/FRAME:012923/0691

Effective date: 20020411

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE