Patent ID: 9137040
Filing Date: 2015-09-15
Classification: H04L

Abstract:
1. A method of controlling access of devices to a communication medium in distributed networks, the method comprising: communicating, with each other, a group of devices connected to a shared communication link, each of which is a node of a distributed network; generating data transmitted in packet cycles to at least one node using acknowledged or unacknowledged message service; sensing a state of the communication medium using state detectors of particular nodes connected to the medium each time before the packet transmission attempt; timing out a prespecified fixed time interval equal to a minimum interpacket space by use of a clock in every node in each packet cycle if the medium is detected to be idle; selecting random numbers of time slots from a fixed number of slots of equal width using a pseudorandom number generator in every node during the minimum interpacket space while selected random numbers of time slots define an order of media access; setting a probability of a selection of a particular slot as geometric with a characteristic parameter defined as a ratio of the probability of a selection of a given slot to the probability of a selection of the next slot, which changes from zero to one as a discrete function of a state of a node's counter in a way that a change of the counter state from one to a prespecified maximum number corresponds to a change of a characteristic parameter from a maximum to a minimum value; assigning a time interval of random delay which is equal to a product of the number of a slot randomly selected reduced by one and a prespecified width of a single slot; starting a phase of sequential priority access after a minimum interpacket space while a phase of sequential priority access consists in that the time interval assigned to a node is timed out concurrently by the use of a clock residing in each node, and this time interval is equal to the product of the number of a priority slot assigned to the particular node reduced by one and the prespecified width of a single priority slot; sensing again the state of the medium; making available the medium to the node with a lowest number of the assigned priority slot if the medium is detected to be idle; terminating a timing out of time delay in the other nodes with higher numbers of assigned priority slots when a given node starts a transmission; activating simultaneously receiving inputs in all the nodes in a network segment; sensing again the state of the communication medium by all the nodes after completing a given priority packet reception; timing out the minimum interpacket space if the medium is detected to be idle; repeating a cycle for a successive number of the priority slot; subsequently, if the medium is sensed to be idle, timing out the random delay assigned previously by the detectors of the communication medium state in all the nodes after timing out the duration of the prespecified maximum number of the priority slots, and at the same time, sensing the state of the communication medium again; making available the communication medium to the node with a lowest number of the slot randomly selected if the communication medium is still sensed idle; when a given node starts a transmission, terminating the timing out of the time delays by the use of the detectors of the communication medium state in the other nodes with higher numbers of slots randomly selected; activating at the same time the receiving inputs in all the nodes; after completing a given packet reception, increasing the states of the counters in all the nodes in a given network segment by an increment defining the number of expected packets that will be generated in a result of the reception of the transmitted packet reduced by one; afterwards sensing again the state of the communication medium by all the nodes; timing out the minimum interpacket space if the communication medium is detected to be idle, and at the same time, selecting the random numbers from the prespecified fixed number of available slots; assigning the random delay to each node, and subsequently timing out the random delay assigned previously after the minimum interpacket space, and at the same time sensing the state of the communication medium again; repeating the cycle; detecting optionally collisions in the communication medium by collision detectors during the data packet transmission; changing the states of the counters in the nodes with the use of corresponding control signals obtained from the collision detectors after the detection of a collision; and after the time equal to a sum of the minimum interpacket space and the time delay defined by the prespecified fixed maximum number of slots, decreasing the states of the counters in all the nodes in a given network segment by one with the use of the corresponding control signals obtained from the communication medium state detectors in case the communication medium is detected to be idle.