Claims Analysis
Total Claims: 58
Claim 1
Independent Claim
216 words
In a data communication system having a common bus with time division multiplexing and a plurality of stations coupled to the bus, a bus contention resolution process for resolving which station is permitted to transmit data onto the bus during a given time slot, comprising the steps of (a) each station wishing to contend for the bus to transmit data during the time slot generating a contention parameter; (b) each station generating a window boundary, w, as a function of: an interval lower boundary, lb, an interval upper boundary, ub; an estimated number, n, of contending stations; and a distribution function, F, of the contention parameters; (c) each station generating a window having boundaries w and one of lb and ub; (d) each station wishing to contend for the bus comparing its contention parameter to the window and contending for the bus by transmitting to the bus when its contention parameter falls within the window; (e) each station sensing the status of the bus; (f) each station adjusting its window in response to the bus status it sensed indicating the bus was idle or a collision occurred and repeating steps d-f until only one contending station is isolated as having successfully contended for the bus; and (g) the isolated station transmitting data in the time slot.
Claim 2
Dependent Claim
216 words
In a data communication system having a common bus with time division multiplexing and a plurality of stations coupled to the bus, a bus contention resolution process for resolving which station is permitted to transmit data onto the bus during a given time slot, comprising the steps of (a) each station wishing to contend for the bus to transmit data during the time slot generating a contention parameter; (b) each station generating a window boundary, w, as a function of: an interval lower boundary, lb, an interval upper boundary, ub; an estimated number, n, of contending stations; and a distribution function, F, of the contention parameters; (c) each station generating a window having boundaries w and one of lb and ub; (d) each station wishing to contend for the bus comparing its contention parameter to the window and contending for the bus by transmitting to the bus when its contention parameter falls within the window; (e) each station sensing the status of the bus; (f) each station adjusting its window in response to the bus status it sensed indicating the bus was idle or a collision occurred and repeating steps d-f until only one contending station is isolated as having successfully contended for the bus; and (g) the isolated station transmitting data in the time slot.
Claim 3
Dependent Claim
24 words
The process of claim 1 and further including the step of terminating the contention process after a predetermined number of iterations of steps d-f.
Claim 4
Dependent Claim
41 words
The process of claim 1 and further including the step of estimating n by equating n to a ceiling function ##EQU50## where w(t-1) is the final window boundary derived from the contention process for the immediately preceding time slot, and 0<w(t-1)<1.
Claim 5
Dependent Claim
19 words
The process of claim 3 wherein, for the purposes of estimating n, w(t-1) is estimated by an auto-regressive-moving-average model.
Claim 6
Dependent Claim
12 words
The process of claim 1 wherein F comprises a uniform distribution function.
Claim 7
Dependent Claim
33 words
The process of claim 1 and further comprising the steps of (h) broadcasting an extremum over the bus and (i) restarting the contention resolution process if a contending station disagrees with the extremum.
Claim 8
Dependent Claim
41 words
The process of claim 1 and further including a step wherein each station collects statistical information concerning bus activity, the step of generating a window boundary, w, includes a step of estimating n as a function of the collected statistical information.
Claim 9
Dependent Claim
62 words
The process of claim 1 wherein the step in which each contending station generates a contention parameter comprises a step wherein each contending station generates a contention parameter related to a priority for the station, and the step wherein each station adjusts its window comprises a step wherein each station adjusts its window to isolate the station with the most immediate priority.
Claim 10
Dependent Claim
42 words
The process of claim 1 wherein the step in which each device adjusts its window in response to the bus status it sensed comprises a step wherein each device adjusts its window in the same manner for a particular sensed bus status.
Claim 11
Dependent Claim
66 words
The process of claim 9 wherein the window has the boundaries lb and w and the step of adjusting the window comprises equating ub to w when the sensed bus status indicates a collision has occurred, equating lb to w when the sensed bus status indicates no station contended, and, in either case, generating a new w as a function of n, F, lb, and ub.
Claim 12
Dependent Claim
66 words
The process of claim 9 wherein the window has the boundaries w and ub and the step of adjusting the window comprises equating lb to w when the sensed bus status indicates a collision has occurred, equating ub to w when the sensed bus status indicates no station contended, and, in either case, generating a new w as a function of n, F, lb, and ub.
Claim 13
Dependent Claim
17 words
The process of claim 9 wherein the bus comprises an asynchronous, serial bus having three-state collision detection.
Claim 14
Dependent Claim
140 words
The process of claim 1 wherein the step of each station generating its window boundary w comprises each station recursively optimizing the step of generating w in accordance with the equation. ##EQU51## where n(a,b): the minimum expected number of contention slots to resolve contention given that all contention parameters are in the window (a, U] and collision occurs in the current window (a,b]; g(w,a,b): probability of successful transmission in the next contention slot is a window of (a,w], a<w<b, is used; l(w,a,b): probability of collision in the next contention slot if a window of (a,w], a<w<b, is used; r(w,a,b): probability of no transmission in the next contention slot if a window of (a,w], a<w<b, is used; a: lower boundary of the current window (L being the minimum); b: upper boundary of the current wind (U being the maximum); and l(w,a,b)+g(w,a,b)+r(w,a,b)=1.
Claim 15
Dependent Claim
83 words
The process of claim 1 wherein the step of each station generating its window boundary w comprises each station generating w by using optimal greedy window control wherein ##EQU52## where K=n/Pr(A); a=the lower boundary of the current window (L being the minimum lower boundary); b=the upper boundary of the current window (U being the maximum upper boundary); ##EQU53## g(w,a,b)=the probability of a successful contention occurring in the next contention slot; and said distribution function F comprises identical continuous distributions for said contention parameters.
Claim 16
Dependent Claim
97 words
The process of claim 1 wherein the step of each station generating its window boundary w comprises each station generating w by generating w a , an estimated w, by approximate greedy window control wherein ##EQU54## where K'=(n-1)·K; K=n/Pr(A); a=the lower boundary of the current window (L being the minimum lower boundary); b=the upper boundary of the current window (U being the maximum boundary); ##EQU55## g(w,a,b)=the probability of a successful contention occurring in the next contention slot; ##EQU56## in the interval (F(a), F(b); ##EQU57## and said distribution function F comprises identical continuous distributions for said contention parameters.
Claim 17
Dependent Claim
250 words
In a time division multiplex data communication system having a plurality of data communication stations coupled to each other by a common bus, a contention resolution process for resolving which station is permitted to transmit data onto the bus during a given time interval, comprising the steps wherein (a) each station that wishes to contend for the bus to transmit data during the time interval generates a contention parameter; (b) each station generates a window boundary, w, as a function of: an interval lower boundary, lb, an interval upper boundary, ub; an estimated number, n, of contending stations; and a distribution function, F, of the contention parameters; (c) each station generates a window having boundaries w and one of lb and ub; (d) each station that wishes to contend for the bus compares its contention parameter to the window and contends for the bus when its contention parameter falls within the window; (e) each contending station generates a contention code; (f) each contending station writes its contention code to the bus; (g) each contending station reads the bus; (h) each contending station compares what it read from the bus to the contention code it wrote to the bus and determines if it can continue to contend for the bus in response to the comparison; and (i) each station which determines that it can continue to contend for the bus repeating steps f-i until a station is selected and permitted to transmit data onto the bus during the given time interval.
Claim 18
Dependent Claim
250 words
In a time division multiplex data communication system having a plurality of data communication stations coupled to each other by a common bus, a contention resolution process for resolving which station is permitted to transmit data onto the bus during a given time interval, comprising the steps wherein (a) each station that wishes to contend for the bus to transmit data during the time interval generates a contention parameter; (b) each station generates a window boundary, w, as a function of: an interval lower boundary, lb, an interval upper boundary, ub; an estimated number, n, of contending stations; and a distribution function, F, of the contention parameters; (c) each station generates a window having boundaries w and one of lb and ub; (d) each station that wishes to contend for the bus compares its contention parameter to the window and contends for the bus when its contention parameter falls within the window; (e) each contending station generates a contention code; (f) each contending station writes its contention code to the bus; (g) each contending station reads the bus; (h) each contending station compares what it read from the bus to the contention code it wrote to the bus and determines if it can continue to contend for the bus in response to the comparison; and (i) each station which determines that it can continue to contend for the bus repeating steps f-i until a station is selected and permitted to transmit data onto the bus during the given time interval.
Claim 19
Dependent Claim
44 words
The process of claim 16 wherein the step of each contending station generating a contention code and writing the contention code to the bus comprises each contending station using its contention parameter as the contention code and writing its contention parameter to the bus.
Claim 20
Dependent Claim
65 words
The process of claim 16 and further including the step wherein each contending station uses a deciphering function to compute a deciphered code from what it read and the step of each station comparing what it read from the bus to what it wrote to the bus comprises the step of each contending station comparing its deciphered code to what it wrote to the bus.
Claim 21
Dependent Claim
69 words
The process of claim 18 wherein each deciphered code comprises the maximum code written to the bus among those codes written by the contending stations, a contending station determining that it has contended unsuccessfully when its written code is less than the deciphered code, and a contending station determining that it can continue to contend for the bus when its written code is not less than the deciphered code.
Claim 22
Dependent Claim
94 words
The process of claim 19 wherein the contention resolution process further includes the steps of each contending station whose contention code is not less than its deciphered code writes a unique station identification code to the bus, reads the bus again, determines that it has successfully contended when its station identification code is equal to what it read from the bus the second time, and restarts the contention resolution process when its station identification code is not equal to what it read from the bus the second time, in order to resolve hidden collisions.
Claim 23
Dependent Claim
33 words
The process of claim 19 wherein the bus comprises a bit parallel bus and the step of each contending station generating a contention code comprises each contending station generating a binary random number.
Claim 24
Dependent Claim
15 words
The process of claim 21 wherein the binary random number comprises a unary random number.
Claim 25
Dependent Claim
69 words
The process of claim 18 wherein each deciphered code comprises the minimum code written to the bus among those codes written by the contending stations, a contending station determining that it has contended unsuccessfully when its written code is greater than the deciphered code, and a contending station determining that it can continue to contend for the bus when its written code is not greater than the deciphered code.
Claim 26
Dependent Claim
94 words
The process of claim 23 wherein the contention resolution process further includes the steps of each contending station whose contention code is not less than its deciphered code writes a unique station identification code to the bus, reads the bus again, determines that it has successfully contended when its station identification code is equal to what it read from the bus the second time, and restarts the contention resolution process when its station identification code is not equal to what it read from the bus the second time, in order to resolve hidden collisions.
Claim 27
Dependent Claim
33 words
The process of claim 23 wherein the bus comprises a bit parallel bus and the step of each contending station generating a contention code comprises each contending station generating a binary random number.
Claim 28
Dependent Claim
15 words
The process of claim 25 wherein the binary random number comprises a unary random number.
Claim 29
Dependent Claim
31 words
The process of claim 16 wherein the step in which each station contending for the bus generates a contention code comprises the step in which each station generates a unique code.
Claim 30
Dependent Claim
25 words
The process of claim 27 wherein the station transmitting the maximum unique code is permitted to transmit data onto the bus during the time interval.
Claim 31
Dependent Claim
25 words
The process of claim 27 wherein the station transmitting the minimum unique code is permitted to transmit data onto the bus during the time interval.
Claim 32
Dependent Claim
57 words
The process of claim 16 and further including the steps in which each contending station generates as its contention code a unique station identification code, determines that a hidden collision has occurred when what it read from the bus does not match its written code, and repeats the contention resolution process when it detects a hidden collision.
Claim 33
Dependent Claim
30 words
The process of claim 16 wherein the step in which each contending station generates a code comprises the steps of generating a code indicative of a priority of the station.
Claim 34
Dependent Claim
44 words
The process of claim 16 wherein each contending station repeats the contention resolution process a predetermined number of times to increase the probability that one contending station has been isolated, selected and permitted to transmit data onto the bus during the given time interval.
Claim 35
Dependent Claim
114 words
The process of claim 32 wherein the contention resolution process further includes the steps of each station which determines that it can continue to contend for the bus after the determined number of times writes a unique station identification code to the bus, reads the bus after writing its station identification code, determines that it has successfully contended when its station identification code is equal to what it reads from the bus after it wrote its station identification code, and restarts the contention resolution process when its station identification code is not equal to what it has read from the bus after it wrote its station identification code, in order to resolve hidden collisions.
Claim 36
Dependent Claim
74 words
The process of claim 16 wherein the step in which each contending station generates a contention code comprises the step of choosing a binary random number X i , i=1, . . . , N, N being the number of contending stations, from a code space of S, the X i 's having the properties of X.sub.i,X.sub.j εS, i≠j, X.sub.i ≠X.sub.j and f(X.sub.1 ⊕X.sub.2 ⊕ . . . ⊕X.sub.N)≦max(X.sub.1,X.sub.2, . . . ,X.sub.N)X.sub.i εS,N≧1.
Claim 37
Dependent Claim
59 words
The process of claim 34 and further including the step of estimating N in a current contention period t by ##EQU58## where B(t-1) is the number of bits that are ones in the previous contention period (t-1); K(t-1) is the size of the code space for the previous contention period (t-1); and W is the width of the bus.
Claim 38
Dependent Claim
23 words
The process of claim 34 wherein the step of choosing a binary random number comprises the step of choosing a unary random number.
Claim 39
Dependent Claim
26 words
The process of claim 16 wherein the step of generating a contention code comprises the step of selecting a binary number from a code space S.
Claim 40
Dependent Claim
23 words
The process of claim 37 wherein the bus has a width W and the code space has a size K equal to W.
Claim 41
Dependent Claim
46 words
The process of claim 37 wherein the bus has a width W, the code space S has a size K, N is the number of contending stations, r is a constant selected to reduce the number of contention slots to isolate one contending station wherein K/N=r.
Claim 42
Dependent Claim
59 words
The process of claim 39 and further including the step of estimating N in a current contention period t by ##EQU59## where B(t-1) is the number of bits that are ones in the previous contention period (t-1); K(t-1) is the size of the code space for the previous contention period (t-1); and W is the width of the bus.
Claim 43
Dependent Claim
14 words
The process of claim 39 wherein K is chosen to be W when r·N≦W.
Claim 44
Dependent Claim
23 words
The process of claim 37 wherein the code space S comprises a plurality of partitioned subspaces, each subspace corresponding to a priority level.
Claim 45
Dependent Claim
41 words
The process of claim 42 wherein each partition satisfies the condition: if XεS.sub.i, YεS.sub.j and i>j; then X>Y where S i and S j are subspaces corresponding to priority levels i and j, respectively, and X and Y are contention codes.
Claim 46
Dependent Claim
21 words
The process of claim 37 wherein the step of selecting a binary number comprises the step of selecting a unary number.
Claim 47
Dependent Claim
23 words
The process of claim 44 wherein the bus has a width W and the code space has a size K equal to W.
Claim 48
Dependent Claim
46 words
The process of claim 44 wherein the bus has a width W, the code space S has a size K, N is the number of contending stations, r is a constant selected to reduce the number of contention slots to isolate one contending station wherein K/N=r.
Claim 49
Dependent Claim
59 words
The process of claim 46 and further including the step of estimating N in a current contention period t by ##EQU60## where B(t-1) is the number of bits that are ones in the previous contention period (t-1); K(t-1) is the size of the code space for the previous contention period (t-1); and W is the width of the bus.
Claim 50
Dependent Claim
14 words
The process of claim 46 wherein K is chosen to be W when r·N≦W.
Claim 51
Dependent Claim
23 words
The process of claim 44 wherein the code space S comprises a plurality of partitioned subspaces, each subspace corresponding to a priority level.
Claim 52
Dependent Claim
41 words
The process of claim 49 wherein each partition satisfies the condition: if XεS.sub.i, YεS.sub.j and i<j; then X<Y where S i and S j are subspaces corresponding to priority levels i and j, respectively, and X and Y are contention codes.
Claim 53
Dependent Claim
172 words
In a computer network having a plurality of computers coupled together by a common bus for the sharing of computational resources among the computers, the network characterized by the capacity to send a job from a more loaded source computer to a less loaded destination computer, a method for determining a source computer and a destination computer, comprising the steps wherein (a) each computer maintains a global window; (b) each computer generates a contention parameter related to its response time for executing a job; (c) each computer contends for the bus when its contention parameter falls within its window; (d) each computer senses a status of the bus; (e) each computer adjusts its window and repeats steps c and d until a computer having the highest contention parameter and a computer having the lowest contention parameter have been identified; and (f) the computer identified as having one of the highest and lowest contention parameters sending a job to the computer identified as having the other of the highest and lowest contention parameters.
Claim 54
Dependent Claim
172 words
In a computer network having a plurality of computers coupled together by a common bus for the sharing of computational resources among the computers, the network characterized by the capacity to send a job from a more loaded source computer to a less loaded destination computer, a method for determining a source computer and a destination computer, comprising the steps wherein (a) each computer maintains a global window; (b) each computer generates a contention parameter related to its response time for executing a job; (c) each computer contends for the bus when its contention parameter falls within its window; (d) each computer senses a status of the bus; (e) each computer adjusts its window and repeats steps c and d until a computer having the highest contention parameter and a computer having the lowest contention parameter have been identified; and (f) the computer identified as having one of the highest and lowest contention parameters sending a job to the computer identified as having the other of the highest and lowest contention parameters.
Claim 55
Dependent Claim
28 words
The method of claim 51 wherein the computer identified as having the highest contention parameter sends a job to the computer identified as having the lowest contention parameter.
Claim 56
Dependent Claim
28 words
The method of claim 51 wherein the computer identified as having the lowest contention parameter sends a job to the computer identified as having the highest contention parameter.
Claim 57
Dependent Claim
363 words
In a computer network having a plurality of computers coupled together by a common bus for the sharing of computational resources among the computers, the network characterized by the capacity to send a job queued at a requesting computer to an idle computer, a method for determining from which of a plurality of requesting computers a job is to be sent and for determining to which of a plurality of idle computers the job is to be sent, comprising the steps wherein, (a) each contending requesting computer maintains a global window; (b) each contending requesting computer generates a contention parameter; (c) each contending requesting computer compares its contention parameter to its window; (d) a contending requesting computer contends for the bus when its contention parameter falls within its window; (e) each contending requesting computer senses a status of the bus; (f) each contending requesting computer determines if it has gained control of the bus, based upon the bus status it sensed indicating that it has been isolated as the only computer contending for the bus, such isolated computer transmitting a request on the bus; (g) each contending requesting computer adjusts its window in response to the bus status it sensed and repeats steps c-f if the sensed bus status indicated that one contending idle computer has not been isolated; (h) each contending idle computer maintains a global window; (i) each contending idle computer generates a contention parameter; (j) each contending idle computer compares its contention parameter to its window; (k) a contending idle computer contends for the bus when its contention parameter falls within its window; (l) each contending idle computer senses a status of the bus; (m) each contending idle computer determines if it has gained control of the bus, based upon the bus status it sensed indicating that it has been isolated as the only computer contending for the bus, such isolated computer acknowledging the request and receiving the job from the isolated requesting computer; and (n) each contending idle computer adjusts its window in response to the bus status it sensed and repeats steps j-m if the sensed bus status indicated that one contending idle computer has not been isolated.
Claim 58
Dependent Claim
363 words
In a computer network having a plurality of computers coupled together by a common bus for the sharing of computational resources among the computers, the network characterized by the capacity to send a job queued at a requesting computer to an idle computer, a method for determining from which of a plurality of requesting computers a job is to be sent and for determining to which of a plurality of idle computers the job is to be sent, comprising the steps wherein, (a) each contending requesting computer maintains a global window; (b) each contending requesting computer generates a contention parameter; (c) each contending requesting computer compares its contention parameter to its window; (d) a contending requesting computer contends for the bus when its contention parameter falls within its window; (e) each contending requesting computer senses a status of the bus; (f) each contending requesting computer determines if it has gained control of the bus, based upon the bus status it sensed indicating that it has been isolated as the only computer contending for the bus, such isolated computer transmitting a request on the bus; (g) each contending requesting computer adjusts its window in response to the bus status it sensed and repeats steps c-f if the sensed bus status indicated that one contending idle computer has not been isolated; (h) each contending idle computer maintains a global window; (i) each contending idle computer generates a contention parameter; (j) each contending idle computer compares its contention parameter to its window; (k) a contending idle computer contends for the bus when its contention parameter falls within its window; (l) each contending idle computer senses a status of the bus; (m) each contending idle computer determines if it has gained control of the bus, based upon the bus status it sensed indicating that it has been isolated as the only computer contending for the bus, such isolated computer acknowledging the request and receiving the job from the isolated requesting computer; and (n) each contending idle computer adjusts its window in response to the bus status it sensed and repeats steps j-m if the sensed bus status indicated that one contending idle computer has not been isolated.