WO2007144594A1 - Communications apparatus - Google Patents
Communications apparatus Download PDFInfo
- Publication number
- WO2007144594A1 WO2007144594A1 PCT/GB2007/002164 GB2007002164W WO2007144594A1 WO 2007144594 A1 WO2007144594 A1 WO 2007144594A1 GB 2007002164 W GB2007002164 W GB 2007002164W WO 2007144594 A1 WO2007144594 A1 WO 2007144594A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- arbitration
- bits
- channel
- dynamic priority
- accordance
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 45
- 238000001514 detection method Methods 0.000 claims abstract description 10
- 230000004044 response Effects 0.000 claims abstract description 9
- 230000001066 destructive effect Effects 0.000 claims abstract description 7
- 230000001419 dependent effect Effects 0.000 claims abstract description 5
- 238000000034 method Methods 0.000 claims description 41
- 238000004590 computer program Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 2
- 230000003247 decreasing effect Effects 0.000 claims 6
- 230000005540 biological transmission Effects 0.000 description 10
- 238000013459 approach Methods 0.000 description 3
- 241001522296 Erithacus rubecula Species 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 239000004020 conductor Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 241000282668 Cebus Species 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
- H04L12/4135—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD] using bit-wise arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B2203/00—Indexing scheme relating to line transmission systems
- H04B2203/54—Aspects of powerline communications not already covered by H04B3/54 and its subgroups
- H04B2203/5404—Methods of transmitting or receiving signals via power distribution lines
- H04B2203/5408—Methods of transmitting or receiving signals via power distribution lines using protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5679—Arbitration or scheduling
Definitions
- the present application relates to a method and apparatus for transmitting data in a data network. It is particularly, but not exclusively, concerned with data communication in a data network comprising a plurality of stations interconnected by bus lines.
- the invention has particular application wherein the bus lines are implemented by means of electrical power lines or coaxial cable.
- a communications channel is provided by a frame based communication protocol.
- a communications device In order to effect communication on the channel, a communications device is required to obtain control of the channel. If more than one device seeks control of the channel, arbitration is required in order to prevent collisions occurring and to resolve contention between the devices. Therefore, the purpose of arbitration is to provide media access control to a network.
- all nodes that wish to send are required to take part in an arbitration process whose goal is achieving resolution between the nodes, by identifying a single winner (all other nodes being deselected during the arbitration process). It will be understood that identifying a single winner is not always possible in a single arbitration process. In such cases, wherein more than one node remains in arbitration, contention will not be resolved and a separate contention resolution mechanism will then be required.
- Arbitration is used on each occasion that network access is initiated by a station. From this repeated use of the arbitration mechanism, specific arbitration behaviours can be produced.
- a communications protocol using arbitration is illustrated in figure 1.
- a complete Message Frame consists of four sub-frames, named Fl, F2, F3 and F4.
- Fl and F2 are collectively the start of the Message Frame, used for establishing control of the physical medium (arbitration) and signalling the nature of information to follow.
- F3 is provided to contain the source and destination addressing, frame type and length and payload to be sent in the frame, and
- F4 is an end of frame, containing portions for signalling acknowledgements or transmission failures and providing synchronisation for the next Frame.
- Sub-frame Fl is thus effectively a preamble containing a sequence of bits at a first transmission rate (Fl), these bits forming a service priority field that enable stations to arbitrate for the medium in such a way that ensures that the station with the highest service priority message wins control of the medium.
- Service priority values are attributed to the type of data or Traffic Class to be sent. For instance, in a particular implementation, data with a time critical nature, such as VoIP will need to be sent at a higher priority than data that is not time critical, such as HTML for use in browsing websites.
- This technique of Contention Resolution is described as "non-destructive bitwise arbitration" and adopted in the CAN and CeBus communications standards.
- This approach involves contending nodes referring to preset priority numbers which dictate which one has permission to communicate first. In other words, each node has a "rank” which settles any dispute over which node has the priority to transmit first after a collision occurs. This is achieved by contending nodes sequentially transmitting "recessive" or "dominant" bits corresponding to their arbitration priorities, wherein a recessive bit is outvoted by a dominant bit and the transmitter of a recessive bit therefore loses arbitration against a transmitter of a dominant bit. hi the event that two arbitrating nodes transmit the same type of bit, the arbitration continues to transmission of the next bit in the sequence.
- All stations forming nodes in a network will initially map the priority accorded to the payload (the Traffic Class) of the message concerned onto the plurality of Fl service priority bits.
- the payload the Traffic Class
- each station with a message queued to send will begin to transmit its own service priority sequence of Fl bits onto the medium. It will be understood that all stations with messages queued to send will be transmitting simultaneously during this Fl arbitration phase in order to perform the process of arbitration for the medium. This approach operates for a number of different network configurations.
- a low voltage is a Dominant in that the electrical characteristics of the network are such that a node dropping the communications channel to a low voltage will overrule an attempt by another node to maintain the higher voltage on the network.
- a Dominant bit is created from a short burst of carrier signals in the MHz band. The corresponding recessive bit is an absence of this carrier, which clearly is overruled by the dominant burst.
- HomePlug specifies the use of random priority bits to follow the service priority bits. This will enable a simple decision to be taken between two contending nodes with identical service priorities.
- a disadvantage of the HomePlug specified arrangement is that four random bits are allocated, and so there is a relatively high probability that arbitration will not be resolved thereby. For instance, with two nodes arbitrating, the probability that contention will not be resolved will be 1 in 16, for three nodes arbitrating it will be 1 in 8, for four nodes arbitrating it will be 1 in 4, and for five nodes arbitrating it will be 1 in 2. Therefore, the random element introduced by the random arbitration bits has severe limitations and for networks containing more than 4 stations, performance is substantially degraded.
- a first aspect of the invention provides a communications apparatus for transmitting information in a communications channel, access to said channel being by means of non-destructive bitwise arbitration, said apparatus comprising arbitration means for transmitting onto said channel, in response to a channel access request, successive arbitration bits, said bits being either recessive or dominant, such that, in the case of a recessive bit, the arbitration means is operable in a recessive mode to monitor said channel for detection of a dominant bit sent by another communications apparatus and, on detection of which, withdrawing from said arbitration, and, in the case of a dominant bit, the arbitration means is operable in a dominant mode to transmit a dominant bit onto the channel, wherein the successive arbitration bits comprise sequentially a plurality of service priority bits dependent upon the relative priority of the channel access request, a plurality of dynamic priority bits defining the number of unsuccessful channel access attempts, and at least one random or pseudo-random priority bit.
- a second aspect of the invention provides a method of seeking access to a communications channel, access to said channel being by means of non-destructive bitwise arbitration, said method comprising transmitting onto said channel, in response to a channel access request, successive arbitration bits, said bits being either recessive or dominant, such that, in the case of a recessive bit, in a recessive mode monitoring said channel for detection of a dominant bit sent by another communications apparatus and, on detection of which, withdrawing from said arbitration, and, in the case of a dominant bit, in a dominant mode transmitting a dominant bit onto the channel, wherein the successive arbitration bits comprise sequentially a plurality of service priority bits dependent upon the relative priority of the channel access request, a plurality of dynamic priority bits defining the number of unsuccessful channel access attempts, and at least one random or pseudo-random priority bit.
- the invention can also be implemented by means of a computer program product comprising computer executable instructions operable to configure general purpose computer controlled communications apparatus to perform a method in accordance with the above aspect of the invention.
- the computer program product may be in the form of a storage medium, e.g. an optical or magnetic storage medium, or a signal.
- the product could also be implemented in the form of a flash memory device, or an application specific controller such as a DSP, FPGA or an ASIC.
- Figure 1 illustrates a communications frame for use in a communications system in the field of the invention
- Figure 2 illustrates an example communications system on which a specific embodiment of the invention resides
- Figure 3 illustrates an arbitration portion of the communications frame, in accordance with a specific embodiment of the invention.
- FIG. 4 illustrates a flow diagram of an arbitration process carried out in accordance with the specific embodiment of the invention.
- a communications network 10 is illustrated with four interconnected nodes 12.
- the nodes are connected by means of power lines 14, such as a ring main in a domestic installation.
- power lines 14 such as a ring main in a domestic installation.
- the illustrated interconnections are symbolic and are not intended to represent the physical arrangement of conductors between the nodes - such conductors will in many cases comprise a ring, star, tree and branch or any other wiring topology to which the electronic equipment implementing the nodes are each connected.
- Each node 12 comprises a communications station capable of transmitting and receiving information in accordance with a frame based communications protocol.
- Figure 1 illustrates a typical example of a frame structure, for use in conjunction with the specific embodiment. This packet structure is substantially consistent with existing packet structures such as the HomePlug technology.
- FIG 3 illustrates in further detail a priority field held in the Fl sub-frame of the frame illustrated in figure 1, in accordance with a specific embodiment of the invention, and divergent from the HomePlug arrangement.
- n service priority bits are provided, followed by m dynamic priority bits, and finally r random priority bits.
- n bits of service priority 2 n separate service priorities can be encoded. These are encoded as a binary count, and transmitted with most significant bit first. As recessive bits (the absence of transmission) have binary value 1, and dominant bits (transmission of carrier) have binary value 0, it is important to note that the highest bit value (2 ⁇ -l) will be encoded by all recessive bits and will represent the lowest service priority. Conversely, the maximum service priority will be encoded as zero and this will be transmitted as n successive dominant bits.
- QOS Quality of Service
- Services requiring a higher QOS are mapped onto the higher service priority fields where they will always beat lower QOS services in arbitrating for access to the network.
- a transmission requiring merely a lower QOS will only acquire network access when there are no pending transmission requests requiring a higher QOS.
- the dynamic priority field resolves arbitration between nodes sending at the same service priority. If the arbitration process is at the stage where the dynamic priority field is being considered, all nodes sending lower priority fields will already have backed off from the arbitration sequence.
- the dynamic priority field is a numeric encoding of m bits. Again, the dynamic priority bits are sent most significant first on to the network. For m bits 2 m priority values exist. These priority values are encoded such that a logical 1 is represented as a recessive and a logical 0 as a dominant bit on the wire.
- step S 1-2 commences in step S 1-2 which is carried out on creation of the transmission request. On each subsequent arbitration attempt, this initialisation step is omitted. Then, in step S 1-4, a sequence of steps is executed for each bit of the dynamic priority field. If the bit in question is 1, then the station listens to the channel (Sl-6). If a dominant bit is detected on the channel (Sl-8), then the station loses (Sl- 10) and is ejected from arbitration; it then decrements its most significant dynamic priority bit (S 1-12) by one to enable a further arbitration attempt to be made in the next available frame.
- the node cycles through all dynamic priority bits and, if it survives a cycle of dynamic arbitration, it continues to transmission of the random priority bits (S 1-18), to be described. It will be appreciated that the station will not identify at any time that it has 'won' arbitration; the process merely provides a mechanism for a station to determine that it has lost and is thereby ejected.
- a node not having been ejected from the entire arbitration process completes its access procedure, transmitting its F3 and F4 frames and will subsequently re-enter arbitration at the next arbitration event with an unchanged dynamic priority field. This ensures that it will lose the next dynamic arbitration sequence to a node that previously lost arbitration during the previous arbitration process and therefore decremented its dynamic priority field.
- a particular dynamic count represents the number of times a node has attempted but failed arbitration against other nodes at its service priority. This count can thus be seen as representing a positioning (relative to the head) in a logical queue of all senders in attempting to send at that service priority. A node gaining access to the medium through this arbitration process is subsequently removed from the head of this nominal queue and placed at the back of the nominal queue and new nodes attempting to send at the same service priority now take up a position at the head of the queue .
- a queue is an abstraction.
- the actual mechanism as described above is a distributed set of dynamic priorities.
- the dynamic priority field described above provides a strict round robin priority mechanism for arbitrating between nodes at the same service priority. As the process of considering dynamic priority does not commence until service priority has been considered, losing attempts to access the medium when ejection occurs during service priority arbitration has no effect on the stored dynamic priority.
- the number of bits in the dynamic field it is desirable to set the number of bits in the dynamic field to be sufficient to encode a count value at least as great as the maximum number of permissible nodes in the network. Ideally, it should be slightly bigger (10%) than this to accommodate any contentions that may occur on the network. If the number of dynamic priority bits is higher than the number of nodes on a network, the dynamic field will always resolve arbitration and therefore the random priority field will be rendered unnecessary.
- the Random Priority field is used to select an arbitration winner between nodes having the same service priority and dynamic priority. This condition will arise when two (or more) nodes become ready to transmit at the same service priority during the same arbitration instance, hi such a case, both nodes will fail to settle arbitration on the basis of service priority and, since neither can be considered first to request the medium, neither will win control of the medium on the basis of dynamic priority.
- the random field may be considered to extend the dynamic field, with a degree of entropy which will resolve tied disputes.
- arbitration sub-frame (Fl) in this specific embodiment is divided into three distinct fields each having their specific purpose:
- An alternative embodiment of the invention provides a dynamic field that scales with network size, rather than the random priority field. It will be appreciated that this approach will resolve arbitration in all cases, but may be somewhat more complex to implement. However, this will be clearly understood as demonstrating that the random priority bits are not an essential element of the invention.
- the invention could be implemented by means of computer executable instructions, operable to configure a suitable computer to carry out steps in accordance with any aspect of the invention.
- the computer executable instructions may be provided by means of a computer program product, such as embodied on a computer readable storage medium, or as embodied on a signal for receipt by a computer.
- the signal may be initiated by a download instruction generated by a browser on the computer, or by means of an automatic update facility at the computer concerned.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
Communications apparatus is described, for transmitting information in a frame based communications channel. Access to the channel is by means of non-destructive bitwise arbitration. The apparatus comprises arbitration means for transmitting onto the channel, in response to a channel access request, successive arbitration bits. The arbitration bits are either recessive or dominant, such that, in the case of a recessive bit, the arbitration means is operable in a recessive mode to monitor said channel for detection of a dominant bit sent by another communications apparatus and, on detection of which, withdrawing from said arbitration, and, in the case of a dominant bit, the arbitration means is operable in a dominant mode to transmit a dominant bit onto the channel. The successive arbitration bits comprise sequentially a plurality of service priority bits dependent upon the relative priority of the channel access request, and a plurality of dynamic priority bits based on the number of previous channel access attempts.
Description
Communications Apparatus
The present application relates to a method and apparatus for transmitting data in a data network. It is particularly, but not exclusively, concerned with data communication in a data network comprising a plurality of stations interconnected by bus lines. The invention has particular application wherein the bus lines are implemented by means of electrical power lines or coaxial cable.
In powerline communications (PLC) systems, a communications channel is provided by a frame based communication protocol. In order to effect communication on the channel, a communications device is required to obtain control of the channel. If more than one device seeks control of the channel, arbitration is required in order to prevent collisions occurring and to resolve contention between the devices. Therefore, the purpose of arbitration is to provide media access control to a network.
In a network comprising a plurality of nodes, all nodes that wish to send are required to take part in an arbitration process whose goal is achieving resolution between the nodes, by identifying a single winner (all other nodes being deselected during the arbitration process). It will be understood that identifying a single winner is not always possible in a single arbitration process. In such cases, wherein more than one node remains in arbitration, contention will not be resolved and a separate contention resolution mechanism will then be required.
Arbitration is used on each occasion that network access is initiated by a station. From this repeated use of the arbitration mechanism, specific arbitration behaviours can be produced.
A communications protocol using arbitration is illustrated in figure 1. A complete Message Frame consists of four sub-frames, named Fl, F2, F3 and F4. Fl and F2 are collectively the start of the Message Frame, used for establishing control of the physical
medium (arbitration) and signalling the nature of information to follow. F3 is provided to contain the source and destination addressing, frame type and length and payload to be sent in the frame, and F4 is an end of frame, containing portions for signalling acknowledgements or transmission failures and providing synchronisation for the next Frame.
Sub-frame Fl is thus effectively a preamble containing a sequence of bits at a first transmission rate (Fl), these bits forming a service priority field that enable stations to arbitrate for the medium in such a way that ensures that the station with the highest service priority message wins control of the medium. Service priority values are attributed to the type of data or Traffic Class to be sent. For instance, in a particular implementation, data with a time critical nature, such as VoIP will need to be sent at a higher priority than data that is not time critical, such as HTML for use in browsing websites.
This technique of Contention Resolution is described as "non-destructive bitwise arbitration" and adopted in the CAN and CeBus communications standards. This approach involves contending nodes referring to preset priority numbers which dictate which one has permission to communicate first. In other words, each node has a "rank" which settles any dispute over which node has the priority to transmit first after a collision occurs. This is achieved by contending nodes sequentially transmitting "recessive" or "dominant" bits corresponding to their arbitration priorities, wherein a recessive bit is outvoted by a dominant bit and the transmitter of a recessive bit therefore loses arbitration against a transmitter of a dominant bit. hi the event that two arbitrating nodes transmit the same type of bit, the arbitration continues to transmission of the next bit in the sequence.
All stations forming nodes in a network, with messages queued for transmission, will initially map the priority accorded to the payload (the Traffic Class) of the message concerned onto the plurality of Fl service priority bits. In the next Fl bit time, each station with a message queued to send will begin to transmit its own service priority sequence of Fl bits onto the medium. It will be understood that all stations with messages queued to send will be transmitting simultaneously during this Fl arbitration phase in order to perform the process of arbitration for the medium.
This approach operates for a number of different network configurations. In a serial multi drop wireline network which uses logical ones and zeros represented respectively by high and low voltages, a low voltage is a Dominant in that the electrical characteristics of the network are such that a node dropping the communications channel to a low voltage will overrule an attempt by another node to maintain the higher voltage on the network. Likewise, in PLC, a Dominant bit is created from a short burst of carrier signals in the MHz band. The corresponding recessive bit is an absence of this carrier, which clearly is overruled by the dominant burst.
The process of determining which station achieves control of the medium is thereby entirely distributed. This is because a station transmitting a dominant bit in the current Fl bit slot will continue to the next Fl bit slot regardless of the behaviour of other stations. Oh the other hand, a station not transmitting an Fl dominant bit (i.e. transmitting a recessive bit) will instead listen to the medium for the duration of that Fl bit slot and will withdraw from arbitration if another station transmits a dominant bit. That withdrawing station will not participate any further in the arbitration process and will back off and wait for the next arbitration opportunity, at the start of the next frame sequence.
At the end of the service priority arbitration sequence, one or more stations with the highest service priorities will remain in contention for the medium. To resolve this, HomePlug, for example, specifies the use of random priority bits to follow the service priority bits. This will enable a simple decision to be taken between two contending nodes with identical service priorities.
A disadvantage of the HomePlug specified arrangement is that four random bits are allocated, and so there is a relatively high probability that arbitration will not be resolved thereby. For instance, with two nodes arbitrating, the probability that contention will not be resolved will be 1 in 16, for three nodes arbitrating it will be 1 in 8, for four nodes arbitrating it will be 1 in 4, and for five nodes arbitrating it will be 1 in 2. Therefore, the random element introduced by the random arbitration bits has severe limitations and for networks containing more than 4 stations, performance is
substantially degraded. Further, random priority allocation will lead to non- deterministic results and, although long term statistics may show equal priority to a channel for all nodes having the same service priority, short term variances from this mean do occur and delivering time critical Traffic Classes such as VoIP and real-time audio and video will be problematic.
It is therefore an object of the invention to provide an improved technique for awarding access to a channel on the basis of mapped Traffic Class arbitration.
A first aspect of the invention provides a communications apparatus for transmitting information in a communications channel, access to said channel being by means of non-destructive bitwise arbitration, said apparatus comprising arbitration means for transmitting onto said channel, in response to a channel access request, successive arbitration bits, said bits being either recessive or dominant, such that, in the case of a recessive bit, the arbitration means is operable in a recessive mode to monitor said channel for detection of a dominant bit sent by another communications apparatus and, on detection of which, withdrawing from said arbitration, and, in the case of a dominant bit, the arbitration means is operable in a dominant mode to transmit a dominant bit onto the channel, wherein the successive arbitration bits comprise sequentially a plurality of service priority bits dependent upon the relative priority of the channel access request, a plurality of dynamic priority bits defining the number of unsuccessful channel access attempts, and at least one random or pseudo-random priority bit.
A second aspect of the invention provides a method of seeking access to a communications channel, access to said channel being by means of non-destructive bitwise arbitration, said method comprising transmitting onto said channel, in response to a channel access request, successive arbitration bits, said bits being either recessive or dominant, such that, in the case of a recessive bit, in a recessive mode monitoring said channel for detection of a dominant bit sent by another communications apparatus and, on detection of which, withdrawing from said arbitration, and, in the case of a dominant bit, in a dominant mode transmitting a dominant bit onto the channel, wherein the successive arbitration bits comprise sequentially a plurality of service priority bits dependent upon the relative priority of the channel access request, a plurality of
dynamic priority bits defining the number of unsuccessful channel access attempts, and at least one random or pseudo-random priority bit.
It will be appreciated that the invention can also be implemented by means of a computer program product comprising computer executable instructions operable to configure general purpose computer controlled communications apparatus to perform a method in accordance with the above aspect of the invention. The computer program product may be in the form of a storage medium, e.g. an optical or magnetic storage medium, or a signal. The product could also be implemented in the form of a flash memory device, or an application specific controller such as a DSP, FPGA or an ASIC.
A specific embodiment of the invention will now be described, by way of example, with reference to the accompanying drawings, in which:
Figure 1 illustrates a communications frame for use in a communications system in the field of the invention;
Figure 2 illustrates an example communications system on which a specific embodiment of the invention resides;
Figure 3 illustrates an arbitration portion of the communications frame, in accordance with a specific embodiment of the invention; and
Figure 4 illustrates a flow diagram of an arbitration process carried out in accordance with the specific embodiment of the invention.
As shown in figure 2, a communications network 10 is illustrated with four interconnected nodes 12. The nodes are connected by means of power lines 14, such as a ring main in a domestic installation. It will be appreciated that the illustrated interconnections are symbolic and are not intended to represent the physical arrangement of conductors between the nodes - such conductors will in many cases comprise a ring, star, tree and branch or any other wiring topology to which the electronic equipment implementing the nodes are each connected.
Each node 12 comprises a communications station capable of transmitting and receiving information in accordance with a frame based communications protocol. Figure 1, as described previously, illustrates a typical example of a frame structure, for use in conjunction with the specific embodiment. This packet structure is substantially consistent with existing packet structures such as the HomePlug technology.
Figure 3 illustrates in further detail a priority field held in the Fl sub-frame of the frame illustrated in figure 1, in accordance with a specific embodiment of the invention, and divergent from the HomePlug arrangement. As illustrated, n service priority bits are provided, followed by m dynamic priority bits, and finally r random priority bits.
As the service priority field occurs first on the channel, it has the highest priority in the arbitration process. This will ensure that high priority data will be treated as such in the arbitration process. For n bits of service priority, 2n separate service priorities can be encoded. These are encoded as a binary count, and transmitted with most significant bit first. As recessive bits (the absence of transmission) have binary value 1, and dominant bits (transmission of carrier) have binary value 0, it is important to note that the highest bit value (2π-l) will be encoded by all recessive bits and will represent the lowest service priority. Conversely, the maximum service priority will be encoded as zero and this will be transmitted as n successive dominant bits.
Thus an encoding on the channel of N in the service priority field will always win access to the channel over a service priority less than N.
These service priorities are used to encode a Quality of Service (QOS) through mapping a Traffic Class onto a service priority field. Services requiring a higher QOS are mapped onto the higher service priority fields where they will always beat lower QOS services in arbitrating for access to the network. A transmission requiring merely a lower QOS will only acquire network access when there are no pending transmission requests requiring a higher QOS.
The dynamic priority field resolves arbitration between nodes sending at the same service priority. If the arbitration process is at the stage where the dynamic priority field is being considered, all nodes sending lower priority fields will already have backed off from the arbitration sequence.
The dynamic priority field is a numeric encoding of m bits. Again, the dynamic priority bits are sent most significant first on to the network. For m bits 2m priority values exist. These priority values are encoded such that a logical 1 is represented as a recessive and a logical 0 as a dominant bit on the wire.
When a node seeks access to the channel, the value represented by the dynamic priority bits is initialised to the maximum numerical value (2m-l), which will be encoded as m recessives - the lowest priority on the wire. Figure 4 illustrates the process carried out in a node seeking access to the channel, having survived the first stage of arbitration through the service priority bits.
As noted above, the process commences in step S 1-2 which is carried out on creation of the transmission request. On each subsequent arbitration attempt, this initialisation step is omitted. Then, in step S 1-4, a sequence of steps is executed for each bit of the dynamic priority field. If the bit in question is 1, then the station listens to the channel (Sl-6). If a dominant bit is detected on the channel (Sl-8), then the station loses (Sl- 10) and is ejected from arbitration; it then decrements its most significant dynamic priority bit (S 1-12) by one to enable a further arbitration attempt to be made in the next available frame.
Should the channel be listened to and no dominant bit be detected, then the next bit is considered (Sl-14). The station has survived this arbitration stage, for consideration of the next bit. Equally, should the bit in question be 0, the dominant bit is transmitted to the channel thus ensuring that the station will not lose arbitration.
The node cycles through all dynamic priority bits and, if it survives a cycle of dynamic arbitration, it continues to transmission of the random priority bits (S 1-18), to be described. It will be appreciated that the station will not identify at any time that it has
'won' arbitration; the process merely provides a mechanism for a station to determine that it has lost and is thereby ejected.
A node not having been ejected from the entire arbitration process completes its access procedure, transmitting its F3 and F4 frames and will subsequently re-enter arbitration at the next arbitration event with an unchanged dynamic priority field. This ensures that it will lose the next dynamic arbitration sequence to a node that previously lost arbitration during the previous arbitration process and therefore decremented its dynamic priority field.
A particular dynamic count, subtracted from the initial maximal value, represents the number of times a node has attempted but failed arbitration against other nodes at its service priority. This count can thus be seen as representing a positioning (relative to the head) in a logical queue of all senders in attempting to send at that service priority. A node gaining access to the medium through this arbitration process is subsequently removed from the head of this nominal queue and placed at the back of the nominal queue and new nodes attempting to send at the same service priority now take up a position at the head of the queue . However, it will be appreciated that such a queue is an abstraction. The actual mechanism as described above is a distributed set of dynamic priorities.
The dynamic priority field described above provides a strict round robin priority mechanism for arbitrating between nodes at the same service priority. As the process of considering dynamic priority does not commence until service priority has been considered, losing attempts to access the medium when ejection occurs during service priority arbitration has no effect on the stored dynamic priority.
In a specific embodiment of the invention, it is desirable to set the number of bits in the dynamic field to be sufficient to encode a count value at least as great as the maximum number of permissible nodes in the network. Ideally, it should be slightly bigger (10%) than this to accommodate any contentions that may occur on the network. If the number of dynamic priority bits is higher than the number of nodes on a network, the
dynamic field will always resolve arbitration and therefore the random priority field will be rendered unnecessary.
Returning to the arrangement illustrated in figure 3, the Random Priority field is used to select an arbitration winner between nodes having the same service priority and dynamic priority. This condition will arise when two (or more) nodes become ready to transmit at the same service priority during the same arbitration instance, hi such a case, both nodes will fail to settle arbitration on the basis of service priority and, since neither can be considered first to request the medium, neither will win control of the medium on the basis of dynamic priority.
At this point, the competing nodes will proceed to the random priority field. Consideration of these bits will be on the basis of the same process as illustrated in figure 4, from step S 1-4 onwards, such that ejection from the process at this point will result in the dynamic priority bits of the ejected nodes being decremented by 1.
To determine the most appropriate number of random bits to be allocated in the arbitration field, the following should, in the present specific embodiment, be considered.
When N nodes enter into arbitration on a random bit, on average half will have a dominant bit, the other half recessive. As all recessive bits will be de-selected, the random arbitration procedure will halve the number of nodes remaining in arbitration.
For two nodes performing random field arbitration on r bits, the probability of one node winning is: l-U v ■
For r=2, this probability is 25 % but for r=4, the probability of resolution increases to nearly 94%.
Similar calculations can be made on the basis of larger networks, or to enable presets to be defined for stations expected to be used in networks of particular sizes or classes of size.
Hence, by augmenting the dynamic priority field though the addition of a number of random bits, selection of nodes bearing the same dynamic priority can be effected. Without random bits, arbitration between two simultaneous requesters will never produce a single winner. Thus, it remains desirable to include at least some random bits in order to finally resolve arbitration disputes, but overuse of random bits will be undesirable as set out above. Each bit in the random field will tend to exclude half of the remaim'ng nodes. So for a 16 node network, 4 random bits would on average reduce the number of nodes not de-selected to 1 i.e. a single winner. This assumes, of course, that all nodes simultaneously become ready to send a message with the same service priority - itself an unlikely event.
It should be noted by the skilled reader that should a station not be ejected from arbitration during consideration of the random field, the value held in the dynamic field must still be decremented just as if arbitration were not lost in the dynamic field. In this way, the random field may be considered to extend the dynamic field, with a degree of entropy which will resolve tied disputes.
It will thus be understood that the arbitration sub-frame (Fl) in this specific embodiment is divided into three distinct fields each having their specific purpose:
• Service priority providing distinct Qualities of Service (QOS) across the network
• Dynamic priority providing a round robin mechanism for a specific service priority
• Random priority, an augmentation of the dynamic priority, providing arbitration resolution between similar dynamic priorities
hi the event that even the random bits are equal between two nodes, contention will occur. However, this will not lead to loss of the various messages - the stations will then randomly or pseudo-randomly select new random priority bits and then
recommence arbitration with a reduced number of nodes: it will be understood that some nodes will already have lost arbitration through having recessive random bits.
An alternative embodiment of the invention provides a dynamic field that scales with network size, rather than the random priority field. It will be appreciated that this approach will resolve arbitration in all cases, but may be somewhat more complex to implement. However, this will be clearly understood as demonstrating that the random priority bits are not an essential element of the invention.
While the foregoing provides description of the invention in terms of apparatus and processes for establishing communication, the skilled reader will understand that other aspects of the invention also exist. For instance, the invention could be implemented by means of computer executable instructions, operable to configure a suitable computer to carry out steps in accordance with any aspect of the invention. The computer executable instructions may be provided by means of a computer program product, such as embodied on a computer readable storage medium, or as embodied on a signal for receipt by a computer. The signal may be initiated by a download instruction generated by a browser on the computer, or by means of an automatic update facility at the computer concerned.
It will be appreciated that the above represents only one of many alternative configurations of the invention, and should not be treated as limiting the scope of protection sought for the present invention. The scope of protection should be read as being defined by the claims appended hereto, with reference to the foregoing description and the accompanying drawings.
Claims
1. A communications apparatus for transmitting information in a frame based communications channel, access to said channel being by means of non-destructive bitwise arbitration, said apparatus comprising arbitration means for transmitting onto said channel, in response to a channel access request, successive arbitration bits, said bits being either recessive or dominant, such that, in the case of a recessive bit, the arbitration means is operable in a recessive mode to monitor said channel for detection of a dominant bit sent by another communications apparatus and, on detection of which, withdrawing from said arbitration, and, in the case of a dominant bit, the arbitration means is operable in a dominant mode to transmit a dominant bit onto the channel, wherein the successive arbitration bits comprise sequentially a plurality of service priority bits dependent upon the relative priority of the channel access request, and a plurality of dynamic priority bits based on the number of channel access attempts.
2. A communications apparatus in accordance with claim 1 wherein the arbitration means comprises dynamic priority management means operable to manage the condition of each of said dynamic priority bits.
3. A communications apparatus in accordance with claim 2 wherein the dynamic priority management means is operable, in response to a channel access request, to set the dynamic priority bits to an initial condition.
4. A communications apparatus in accordance with claim 3 wherein said initial condition comprises the dynamic priority bits all being recessive.
5. A communications apparatus in accordance with any of claims 2 to 4 wherein the dynamic priority management means is operable to change the condition of the plurality of dynamic priority bits in response to an unsuccessful channel access attempt, for use in a further channel access attempt.
6. A communications apparatus in accordance with claim 5 wherein the dynamic priority management means is operable to change the condition of the plurality of dynamic priority bits such that, in that said dynamic priority bits represent a binary word, with most significant bit being first in sequence, and a recessive bit corresponds with a binary value 1, said change comprises decreasing the binary value represented by said word.
7. A communications apparatus in accordance with claim 6 wherein said dynamic priority management -means is operable to decrease said binary value by 1 for each unsuccessful channel access attempt.
8. A communications apparatus in accordance with claim 5 wherein the dynamic priority management means is operable to change the condition of the plurality of dynamic priority bits such that, in that said dynamic priority bits represent a binary word, with. most significant bit being first in sequence, and a recessive bit corresponds with a binary value 0, said change comprises increasing the binary value represented by said word.
9. A communications apparatus in accordance with claim 8 wherein said dynamic priority management means is operable to increase said binary value by 1 for each unsuccessful channel access attempt.
10. A method of seeking access to a frame based communications channel, access to said channel being by means of non-destructive bitwise arbitration, said method comprising transmitting onto said channel, in response to a channel access request, successive arbitration bits, said bits being either recessive or dominant, such that, in the case of a recessive bit, in a recessive mode monitoring said channel for detection of a dominant bit sent by another communications apparatus and, on detection of which, withdrawing from said arbitration, and, in the case of a dominant bit, in a dominant mode transmitting a dominant bit onto the channel, wherein the successive arbitration bits comprise sequentially a plurality of service priority bits dependent upon the relative priority of the channel access request, and a plurality of dynamic priority bits based on the number of channel access attempts.
11. A method in accordance with claim 10 and comprising managing the condition of each of said dynamic priority bits.
12. A method in accordance with claim 11 wherein the step of managing the condition of each of said dynamic priority bits comprises, in response to a channel access request, setting the dynamic priority bits to an initial condition.
13. A method in accordance with claim 12 wherein said initial condition comprises the dynamic priority bits all being recessive.
14. A method in accordance with any of claims 11 to 13 wherein the step of managing comprises changing the condition of the plurality of dynamic priority bits in response to an unsuccessful channel access attempt, for use in a further channel access attempt.
15. A method in accordance with claim 14 wherein said dynamic priority bits represent a binary word, with most significant bit being first in sequence, and a recessive bit corresponds with a binary value 1, and wherein the step of changing the condition of the plurality of dynamic priority bits comprises decreasing the binary value represented by said word.
16. A method in accordance with claim 15 wherein said step of decreasing comprises decreasing said binary value by 1 for each unsuccessful channel access attempt.
17. A non-destructive bitwise arbitration method for use in a communications network, the method comprising arbitrating on the basis of a service priority allocation and then, if arbitration is not resolved, arbitrating on the basis of a dynamic priority allocation, wherein said dynamic priority allocation for a node in said network is based on previous access history of said node in said network.
18. A method in accordance with claim 17 including the step of increasing a priority value allocated to a dynamic priority allocation of a node if said node fails to win access to a communications channel in said network in an arbitration sequence, for use of said increased value in a future arbitration sequence.
19. A method in accordance with claim 17 or claim 18 including the step of decreasing a priority value allocated to a dynamic priority allocation of a node if said node gains access to a communications channel in said network in an arbitration sequence, for use of said decreased value in a future arbitration sequence.
20. A computer program product comprising computer executable instructions operable to configure general purpose computer controlled communications apparatus to perform a method in accordance with any one of claims 10 to 19.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0611686A GB2439127B (en) | 2006-06-13 | 2006-06-13 | Communications apparatus |
GB0611686.7 | 2006-06-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2007144594A1 true WO2007144594A1 (en) | 2007-12-21 |
Family
ID=36775560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/GB2007/002164 WO2007144594A1 (en) | 2006-06-13 | 2007-06-11 | Communications apparatus |
Country Status (2)
Country | Link |
---|---|
GB (1) | GB2439127B (en) |
WO (1) | WO2007144594A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3736468A1 (en) * | 1987-10-28 | 1989-05-11 | Philips Patentverwaltung | Method for priority-controlled access and arrangement for carrying out the method |
EP0431316A1 (en) * | 1989-11-08 | 1991-06-12 | Alcatel Business Systems | Arrangement for contention resolution in a telephone exchange of small or medium capacity |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5487170A (en) * | 1993-12-16 | 1996-01-23 | International Business Machines Corporation | Data processing system having dynamic priority task scheduling capabilities |
US6629176B1 (en) * | 1999-11-02 | 2003-09-30 | Agilent Technologies, Inc. | Arbiter architecture allowing rapid implementation of arbitration policies |
-
2006
- 2006-06-13 GB GB0611686A patent/GB2439127B/en not_active Expired - Fee Related
-
2007
- 2007-06-11 WO PCT/GB2007/002164 patent/WO2007144594A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3736468A1 (en) * | 1987-10-28 | 1989-05-11 | Philips Patentverwaltung | Method for priority-controlled access and arrangement for carrying out the method |
EP0431316A1 (en) * | 1989-11-08 | 1991-06-12 | Alcatel Business Systems | Arrangement for contention resolution in a telephone exchange of small or medium capacity |
Non-Patent Citations (2)
Title |
---|
HE HONG ET AL: "CRMA: A Novel Multiple Access Protocol for Power Efficient Wireless LAN", ADVANCED INFORMATION NETWORKING AND APPLICATIONS, 2005. AINA 2005. 19TH INTERNATIONAL CONFERENCE ON TAIPEI, TAIWAN 25-30 MARCH 2005, PISCATAWAY, NJ, USA,IEEE, 25 March 2005 (2005-03-25), pages 25 - 28, XP010789961, ISBN: 0-7695-2249-1 * |
KAISER J ET AL: "Invocation of real-time objects in a CAN bus-system", OBJECT-ORIENTED REAL-TIME DISTRIBUTED COMPUTING, 1998. (ISORC 98). PROCEEDINGS. 1998 FIRST INTERNATIONAL SYMPOSIUM ON KYOTO, JAPAN 20-22 APRIL 1998, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 20 April 1998 (1998-04-20), pages 298 - 307, XP010274853, ISBN: 0-8186-8430-5 * |
Also Published As
Publication number | Publication date |
---|---|
GB2439127B (en) | 2009-02-18 |
GB2439127A (en) | 2007-12-19 |
GB0611686D0 (en) | 2006-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7236481B2 (en) | System and method for processing multimedia packets for a network | |
US5453987A (en) | Random access protocol for multi-media networks | |
JP4155801B2 (en) | Method for securing channel of QoS manager in home plug network | |
KR101434341B1 (en) | Contention slots in a shared robust scheme | |
US6169744B1 (en) | Method and protocol for a medium access control layer for local area networks with multiple-priority traffic | |
US5650997A (en) | Method and apparatus for use in a network of the ethernet type, to improve fairness by controlling collision backoff times in the event of channel capture | |
EP0927474B1 (en) | Arrangement for accessing media in a network having universal multiple access nodes and carrier sense nodes | |
JP2003535485A (en) | Packet-switched multiple access network system with distributed fair priority queuing function | |
US7486647B2 (en) | Shared time universal multiple access network | |
CN102257770B (en) | Communication method and communication device | |
US4596012A (en) | Master controller succession system for bus control access for data-communications local area networks | |
US5850525A (en) | Method and apparatus for adding a randomized propagation delay interval to an interframe spacing in a station accessing an ethernet network | |
JP2006094553A (en) | Field of data communication invention by high-efficiency polling procedure | |
JP2002044045A (en) | Method for controlling access to network medium | |
EP0344212A1 (en) | Random multiple-access communication system | |
US5568469A (en) | Method and apparatus for controlling latency and jitter in a local area network which uses a CSMA/CD protocol | |
US6006271A (en) | Method and protocol for complete collision avoidance contention resolution in local area networks | |
CN111682992A (en) | Serial bus design method of dynamic priority | |
US7079547B2 (en) | Distributed method and apparatus for allocating a communication medium | |
CN102882756A (en) | Transmitting-receiving apparatuses and methods for transmitting and receiving data | |
CN110266568B (en) | Member station of serial bus system and data transmission method in serial bus system | |
US20040233927A1 (en) | Method of controlling communications | |
WO2007144594A1 (en) | Communications apparatus | |
KR100526184B1 (en) | Method of multimedia data transmssion in wireless network | |
US6807189B1 (en) | Method for reducing collisions, latency and latency jitter in a network by maintaining a contention-resolution derived queue ordering |
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: 07733173 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: 07733173 Country of ref document: EP Kind code of ref document: A1 |