1460755492-b0e7f847-ced3-48aa-8218-2c77e5feee32

1. A method of hashing an address space to a plurality of storage servers comprising the steps of:
dividing the address space by a number of the storage servers to form data segments, each data segment comprising a base address;
assigning the data segments to the storage servers;
measuring a load on each of the storage servers, wherein measuring the load on each of the storage servers comprises computing a weighted aggregate of outstanding read and write requests, wherein the load comprises a cumulative load which comprises an aggregate of an instantaneous load taken at time intervals over a time period;
adjusting data shares assigned to the storage servers to approximately balance the loads on the storage servers while maintaining the base address for each data segment on a corresponding originally assigned storage server, wherein adjusting the data share for each of the storage servers comprises calculating an adjusted data share for each of the storage servers based on an existing data share of the corresponding storage server, and on the load of the corresponding storage server; and
moving at least a portion of at least one of the data segments between the storage servers in response to adjusting the data shares.
2. The method of claim 1 further comprising repeatedly performing the steps of measuring the load on each of the storage servers and adjusting the data shares assigned to the storage servers to maintain approximately balanced loads on the storage servers.
3. The method of claim 1 further comprising the step of permuting an initial address space to form the address space.
4. The method of claim 1 wherein each data segment further comprises a plurality of data blocks.
5. The method of claim 4 wherein the moving comprises moving first data blocks from a first over-utilized storage server to a first under-utilized storage server.
6. The method of claim 5 wherein the first data blocks comprise an upper end of the at least one data segment.
7. The method of claim 6 wherein a remainder of the at least one data segment comprises second data blocks and further wherein the second data blocks comprise a particular data block which resides at the base address for the at least one data segment.
8. The method of claim 4 wherein the moving comprises moving first data blocks from a first over-utilized storage server to first and second under-utilized storage servers.
9. The method of claim 1 wherein the step of measuring the load on each of the storage servers comprises summing and weighting:
a number of outstanding cache-read requests;
a number of outstanding cache-write requests;
a number of outstanding disk-read requests; and
a number of outstanding disk-write requests.
10. The method of claim 9 wherein the step of measuring the load on each of the storage servers further comprises summing and weighting a number of outstanding time-stamp requests.
11. The method of claim 1 wherein the step of measuring the load on each of the storage servers further comprises measuring a response time of each of the storage servers.
12. The method of claim 1 wherein the aggregate of the instantaneous load comprises an averaged sum of the instantaneous load taken at time intervals over the time period.
13. The method of claim 1 wherein the aggregate of the instantaneous load comprises a cumulative load which is generated through exponential averaging of instantaneous loads taken at time intervals over the time period.
14. The method of claim 1 wherein a coordinator coordinates the steps of:
dividing the address space into the data segments;
assigning the data segments;
measuring the load on each of the storage servers; and
adjusting the data shares assigned to the storage servers.
15. The method of claim 14 wherein the storage servers communicate the loads to the coordinator by appending load information onto messages.
16. The method of claim 14 wherein the storage servers communicate the loads to the coordinator by broadcasting load information.
17. The method of claim 1 wherein the storage servers employ the method of hashing the address space as part of a caching technique for the storage servers.
18. The method of claim 17 wherein the caching technique further comprises a caching policy selected from a least recently used caching policy, a least frequently used caching policy, a random caching policy, an adaptive replacement caching policy, and a first-in-first-out caching policy.
19. A method of hashing an address space to a plurality of storage servers comprising the steps of:
dividing the address space by a number of the storage servers to form data segments, each data segment comprising a base address;
assigning the data segments to the storage servers according to an assignment sequence;
measuring a load on each of the storage servers, wherein measuring the load on each of the storage servers comprises computing a weighted aggregate of outstanding read and write requests, wherein the load comprises a cumulative load which comprises an aggregate of an instantaneous load taken at time intervals over a time period;
for each of the storage servers, determining whether a data share for the corresponding storage server needs to be decreased or increased to approximately balance the loads on the storage servers in order to identify at least one over-utilized storage server and at least one under-utilized storage server;
for each of the storage servers for which the data share is to be decreased or increased, calculating the decreased or increased data share based on an existing data share for the corresponding storage server and the load of the corresponding storage server; and
proceeding through the storage servers according to the assignment sequence and for each over-utilized storage server reassigning a portion of a particular data segment on the over-utilized storage server to at least one sequentially available under-utilized storage server while maintaining the base address of the particular data segment on a corresponding originally assigned storage server.
20. The method of claim 19 further comprising the step of permuting an initial address space to form the address space.
21. The method of claim 19 wherein each data segment further comprises a plurality of data blocks.
22. The method of claim 21 wherein the step of proceeding through the storage servers according to the assignment sequence and for each over-utilized storage server reassigning the portion of the particular data segment to at least one sequentially available under-utilized storage server reassigns first data blocks from a first over-utilized storage server to a first under-utilized storage server.
23. The method of claim 22 wherein the first data blocks comprise an upper end of the particular data segment.
24. The method of claim 23 wherein a remainder of the particular data segment comprises second data blocks and further wherein the second data blocks comprise a particular data block which resides at the base address for the particular data segment.
25. The method of claim 21 wherein the step of proceeding through the storage servers according to the assignment sequence and for each over-utilized storage server reassigning the portion of the particular data segment to at least one sequentially available under-utilized storage server reassigns first data blocks from a first over-utilized storage server to first and second under-utilized storage servers.
26. The method of claim 19 wherein the step of measuring the load on each of the storage servers comprises summing and weighting:
a number of outstanding cache-read requests;
a number of outstanding cache-write requests;
a number of outstanding disk-read requests; and
a number of outstanding disk-write requests.
27. The method of claim 26 wherein the step of measuring the load on each of the storage servers further comprises summing and weighting a number of outstanding time-stamp requests.
28. The method of claim 19 wherein the aggregate of the instantaneous load comprises an averaged sum of an instantaneous load taken at time intervals over the time period.
29. The method of claim 19 wherein calculating the decreased or increased data share comprises:
subtracting a storage server load from an average load, thereby forming a load difference; and
summing the load difference and the existing data share.
30. The method of claim 19 wherein calculating the decreased or increased data share comprises:
subtracting a storage server load from an average load, thereby forming a load difference;
dividing the load difference by a factor, thereby forming a damped load difference; and
summing the damped load difference and the existing data share.
31. The method of claim 19 wherein a coordinator coordinates the steps of:
dividing the address space into the data segments;
sequentially assigning the data segments;
measuring the load on each of the storage servers; and
calculating the decreased or increased data shares assigned to the storage servers.
32. The method of claim 31 wherein the storage servers communicate the loads to the coordinator by appending load information onto messages.
33. The method of claim 31 wherein the storage servers communicate the loads to the coordinator by broadcasting load information.
34. The method of claim 19 wherein the storage servers employ the method of hashing the address space as part of a caching technique for the storage servers.
35. The method of claim 34 wherein the caching technique further comprises a caching policy selected from a least recently used caching policy, a least frequently used caching policy, a random caching policy, and an adaptive replacement caching policy.
36. A non-transitory computer readable storage media comprising computer code that upon execution by a computer is for implementing a method of hashing an address space to a plurality of storage servers, the method of hashing the address space to the plurality of storage servers comprising the steps of:
dividing the address space by a number of the storage servers to form data segments, each data segment comprising a base address;
assigning the data segments to the storage servers;
measuring a load on each of the storage servers, wherein measuring the load on each of the storage servers comprises computing a weighted aggregate of outstanding read and write requests, wherein the load comprises a cumulative load which comprises an aggregate of an instantaneous load taken at time intervals over a time period;
adjusting data shares assigned to the storage servers to approximately balance the loads on the storage servers while maintaining the base address for each data segment on a corresponding originally assigned storage server, wherein adjusting the data share for each of the storage servers comprises calculating an adjusted data share for each of the storage servers based on an existing data share of the corresponding storage server, and on the load of the corresponding storage server; and
moving at least a portion of at least one of the data segments between the storage servers in response to adjusting the data shares.
37. A non-transitory computer readable storage media comprising computer code that upon execution by a computer is for implementing a method of hashing an address space to a plurality of storage servers, the method of hashing the address space to the plurality of storage servers comprising the steps of:
dividing the address space by a number of the storage servers to form data segments, each data segment comprising a base address;
assigning the data segments to the storage servers according to an assignment sequence;
measuring a load on each of the storage servers, wherein measuring the load on each of the storage servers comprises computing a weighted aggregate of outstanding read and write requests, wherein the load comprises a cumulative load which comprises an aggregate of an instantaneous load taken at time intervals over a time period;
for each of the storage servers, determining whether a data share for the corresponding storage server needs to be decreased or increased to approximately balance the loads on the storage servers in order to identify at least one over-utilized storage server and at least one under-utilized storage server;
for each of the storage servers for which the data share is to be decreased or increased, calculating the decreased or increased data share based on an existing data share for the corresponding storage server and the load of the corresponding storage server; and
proceeding through the storage servers according to the assignment sequence and for each over-utilized storage server reassigning a portion of a particular data segment on the over-utilized storage server to at least one sequentially available under-utilized storage server while maintaining the base address of the particular data segment on a corresponding originally assigned storage server.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for extracting red, green and blue light (RGB) and near infrared light (NW) using a red, green blue, white (RGBW) sensor, the method comprising:
transmitting, by light, an RGBW filter, using a light source;
extracting, by a processor, an RGBW image value (R_c, G_c, B_c, W_c) captured by sensing the transmitted light by the RGBW sensor; and
extracting, by the processor, an RGB value and an NW value by multiplying the captured RGBW image value with an inverse matrix (A) value.
2. The method according to claim 1, wherein the RGBW filter includes an RGB filter and a clear filter.
3. The method according to claim 1, wherein the RGBW image value (R_c, G_c, B_c, W_c) is extracted by respectively sensing red light R, green light G, blue light B, and infrared IR of the light as Sat(a_R*(R+IR)*DelT), Sat(a_G*(G+IR)*DelT), Sat(a_B*(3+IR) * DelT) and Sat(a_W* (R+G+B+IR)*DelT).
4. The method according to claim 1, wherein in the extracting of the RGBW image value (R_c, G_c, B_c, W_c), the RGBW image value is extracted according to color saturation by adjusting light efficiency and light exposing time.
5. The method according to claim 1, wherein the RGB value and the NW value are extracted by multiplying the RGBW image value with the inverse matrix value when the RGBW sensor is not saturated.
6. A non-transitory computer readable medium containing program instructions executed by a processor or controller for extracting red, green and blue light (RGB) and near infrared light (NIR) using a red, green blue, white (RGBW) sensor, the computer readable medium comprising:
program instructions that transmit, by light, an RGBW filter;
program instructions that extract an RGBW image value (R_c, G_c, B_c, W_c) captured by sensing the transmitted light by the RGBW sensor; and
program instructions that extract an RGB value and an NW value by multiplying the captured RGBW image value with an inverse matrix (A) value.
7. The non-transitory computer readable medium according to claim 6, wherein the RGBW filter includes an RGB filter and a clear filter.
8. The non-transitory computer readable medium according to claim 6, wherein the RGBW image value (R_c, G_c, B_c, W_c) is extracted by respectively sensing red light R, green light G, blue light B, and infrared IR of the light as Sat(a_R*(R+IR)*DelT), Sat(a_G*(G+IR)*DelT), Sat(a_B * (3+IR)*DelT) and Sat(a_W*(R+G+B+IR)*DelT).
9. The non-transitory computer readable medium according to claim 6, wherein in the extracting of the RGBW image value (R_c, G_c, B_c, W_c), the RGBW image value is extracted according to color saturation by adjusting light efficiency and light exposing time.
10. The non-transitory computer readable medium according to claim 6, wherein the RGB value and the NW value are extracted by multiplying the RGBW image value with the inverse matrix value when the RGBW sensor is not saturated.
11. A system for extracting red, green and blue light (RGB) and near infrared light (NIR) comprising:
a red, green blue, white (RGBW) sensor configured to sense transmitted RGBW light;
a light source configured to transmit by light, an RGBW filter;
a processor configured to:
extract an RGBW image value (R_c, G_c, B_c, W_c) captured by sensing the transmitted light by the RGBW sensor; and
extract an RGB value and an NIR value by multiplying the captured RGBW image value with an inverse matrix (A) value.
12. The system according to claim 11, wherein the RGBW filter includes an RGB filter and a clear filter.
13. The system according to claim 11, wherein the RGBW image value (R_c, G_c, B_c, W_c) is extracted by respectively sensing red light R, green light G, blue light B, and infrared IR of the light as Sat(a_R*(R+IR)*DelT), Sat(a_G*(G+IR)*DelT), Sat(a_B*(3+IR)*DelT) and Sat(a_W* (R+G+B+IR)*DelT).
14. The system according to claim 11, wherein the RGBW image value is extracted according to color saturation by adjusting light efficiency and light exposing time.
15. The system according to claim 11, wherein the RGB value and the NW value are extracted by multiplying the RGBW image value with the inverse matrix value when the RGBW sensor is not saturated.

1460755484-f4d8678e-2a65-46f3-b22b-b25841d7efd5

1. In a wireless communications network having a plurality of base stations for communication with a plurality of mobile devices, a method of managing the collection and maintenance of performance data for the wireless communications network comprising:
(a) collecting configuration data for the wireless communications network;
(b) encoding the collected configuration data and storing the data in a first database;
(c) collecting signals by at least one base station, the signals being transmitted by the mobile device;
(d) measuring at least one parameter of the collected signal;
(e) encoding the at least one parameter and storing in a second database; and
(f) repeating steps (a)-(e) for a plurality of configurations,
wherein encoding the parameter includes associating with a temporal parameter.
2. The method of claim 1, further comprising the steps of:
(g) receiving a request for at least one measured parameter for a specified network configuration; and
(h) accessing the at least one measured parameter for the time period during which the specified network configuration existed.
3. The method of claim 2 further comprising the steps of:
(i) if the specified network configuration does not exist in the first database:
(1) accessing the at least one parameter of a network substantially similar to the specified configuration; and
(2) modifying the accessed data to correspond to the specified configuration.
4. In a wireless communication network having a configuration of communication elements for communicating with a mobile device, a method of collecting performance information related to the configuration of the network elements comprising:
(a) collecting performance data for a first configuration of network elements;
(b) encoding the collected performance data for the first configuration and storing in a database;
(c) collecting performance data by at least one base station for a second configuration of network elements;
(d) encoding the collected performance data for the second configuration and storing in a database; and
(e) predicting the performance data for a third configuration as a function of the performance data for the first and second configurations, wherein the first, second and third configurations are not the same configurations,
wherein encoding the parameter includes associating with a temporal parameter.
5. In a wireless communications network having a plurality of base stations for communication with a plurality of mobile devices, a method of managing the collection and maintenance of performance data for the wireless communications network comprising:
(a) collecting configuration data for the wireless communications network;
(b) encoding the collected configuration data and storing the data in a database;
(c) collecting signals by at least one mobile device, the signals being transmitted by at least one base station;
(d) measuring at least one parameter of the collected signal;
(e) encoding the at least one parameter and storing in a database; and
(f) repeating steps (a)-(e) for a plurality of configurations,
wherein encoding the parameter includes associating with a temporal parameter.
6. The method of claim 5, further comprising the steps of:
(g) receiving a request for at least one measured parameter for a specified network configuration; and
(h) accessing the at least one measured parameter for the time period during which the specified network configuration existed.
7. The method of claim 6 further comprising the steps of:
(i) if the specified network configuration does not exist in the data base:
(1) accessing the at least one parameter of a network substantially similar to the specified configuration; and
(2) modifying the accessed data to correspond to the specified configuration.
8. A method for evaluating the performance of a wireless communications network having a plurality of base stations for communicating with a plurality of mobile devices, comprising:
(a) collecting configuration data for the wireless communications network and storing in a database;
(b) measuring by at least one mobile device at least one parameter of the communication signals transmitted in the wireless communications network and storing in the database;
(c) receiving a request for the at least one measured parameter for a specified network configuration; and
(d) providing the requested at least one parameter that is valid for the specified network configuration,
wherein the collected configuration data and the measured at least one parameter are time stamped.
9. The method of claim 2 further comprising identifying the at least one measured parameter which is not valid for the specified network configuration.
10. The method of claim 1 further comprising:
(g) estimating the network configuration as a function of a specified time; and
(h) providing at least one measured parameter valid for the estimated network configuration.
11. The method of claim 1 further comprising the steps of:
(g) receiving a request for at least one measured parameter for a specified time interval;
(h) identifying the requested at least one parameter for the specified time interval;
(i) identifying the network configurations associated with identified requested at least one parameter for the specified time interval; and
(j) identifying the identified requested at least one parameter which may have been affected by a network configuration change during the specified time interval.
12. The method of claim 4 wherein the step of prediction the performance of the third configuration includes:
(i) extrapolating the performance data associated with the first network configuration;
(ii) extrapolating the performance data associated with the second network configuration; and
(iii) predicting the performance data for third network configuration by extrapolating the extrapolated performance data associated with the first and second network configurations.
13. The method of claim 4 wherein the collection of performance data is selected from the group consisting of: continuous collection, periodic collection, intermittent collection, event-driven collection, and combinations thereof.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. An insulation displacement terminal for mounting within a terminal receiving slot in a housing of an insulation displacement interconnection system, the housing having opposed spaced end walls, the insulation displacement terminal comprising:
a base portion having first and second opposing sides;
a termination extending from the first side of the base portion for making electrical contact with the insulation displacement terminal; and
opposed fingers each extending from the second side of the base portion to a distal end, the opposed fingers having a length and having outer edges and opposed inner edges spaced from one another so as to make electrical contact with a wire disposed between the opposed inner edges, the outer edges of each finger including a first abutment section proximal to the base portion and a second abutment section adjacent the distal end of the finger respectively, the first and second abutment sections configured to abut an adjacent end wall of the terminal receiving slot when the insulation displacement terminal is disposed within the housing to constrain the outer edge of the respective finger against outward movement at the respective abutment sections, each finger having a resilient spring-like mid-section along at least a portion of the length of the finger between the first and second abutment sections to permit outward deformation of the inner edge of the finger upon disposal of a wire between the opposed spaced fingers adjacent the finger mid-sections.
2. The insulation displacement terminal of claim 1 wherein a portion of the outer edge between the first and second abutment sections in inwardly recessed toward the inner edge such that each finger has a width that is narrower in the mid-section to provide a thinned resilient spring-like mid-section.
3. The insulation displacement terminal of claim 1 wherein each finger includes at least one opening within the mid-section to provide the resilient spring-like mid-section.
4. The insulation displacement terminal of claim 1 wherein the fingers have smooth corners along at least a wire contact area of the inner edges.
5. The insulation displacement terminal of claim 1 wherein the inner edges of opposed fingers are generally planar along at least a portion of the length of the fingers.
6. The insulation displacement terminal of claim 1 wherein the inner edges of each one of the opposed fingers includes a scraper member adjacent the end of the respective finger distal from the base portion, the scraper members having inner edges spaced apart by a distance slightly less than a diameter of a wire intended for use with the insulation displacement terminal.
7. The insulation displacement terminal of claim 1 wherein the first abutment sections includes an outwardly extending barb configured to engage the end walls of the slot to retain the terminal within the housing when the insulation displacement terminal is disposed therein.
8. The insulation displacement terminal of claim 1 wherein the base portion includes flanges extending outwardly of the fingers, the flanges having a lower edge configured to abut a ledge within the housing to define an insertion depth of the terminal when the terminal is inserted within the housing.
9. An insulation displacement connector comprising:
a housing having a terminal receiving slot extending into the housing from an open end of the housing, the terminal receiving slot having first opposed end walls spaced apart by a first distance; and
an insulation displacement terminal disposed with the terminal receiving slot of the housing, the insulation displacement terminal including:
a base portion having first and second opposing sides;
a termination extending from the first side of the base portion; and
a pair of opposed spaced fingers, each extending from the second side of the base portion to a distal end, the opposed fingers having a length and having outer edges and opposed inner edges spaced from one another so as to make electrical contact with a wire disposed between the opposed inner edges, the outer edges of each finger including a first abutment section proximal to the base portion and a second abutment section adjacent the distal end of the finger respectively, the first and second abutment sections configured to abut an adjacent one of the first opposed end walls when the insulation displacement terminal is disposed within the terminal receiving slot to constrain the outer edge of the respective finger against outward movement at the respective abutment sections, each finger having a resilient spring-like mid-section along at least a portion of the length of the finger between the first and second abutment sections to permit outward deformation of the inner edge of the finger upon disposal of a wire between the opposed spaced fingers adjacent the finger mid-sections.
10. The insulation displacement connector of claim 9 wherein a portion of the outer edge between the first and second abutment sections in inwardly recessed toward the inner edge such that each finger has a width that is narrower in the mid-section to provide a thinned resilient spring-like mid-section.
11. The insulation displacement connector of claim 9 wherein each finger includes at least one opening within the mid-section to provide the resilient spring-like mid-section.
12. The insulation displacement connector of claim 9 wherein the fingers have smooth corners along the inner edges.
13. The insulation displacement connector of claim 9 where the inner edges of the opposed fingers are substantially planar along a wire contact area.
14. The insulation displacement connector of claim 9 wherein the inner edges of opposed fingers each include a scraper member adjacent an end of the respective finger distal from the base portion, the scraper members having inner edges spaced from one another by a distance slightly less than a diameter of a wire to be disposed between the fingers.
15. The insulation displacement connector of claim 9 wherein the first abutment sections includes an outwardly extending barb engaging the end walls of the slot to retain the insulation displacement terminal within the housing.
16. The insulation displacement terminal of claim 9 wherein the terminal receiving slot includes opposed second end walls adjacent the open end, the second end walls spaced by a second distance greater that the first distance and outboard of the first end walls, the housing including a ledge extending between the first end walls and the adjacent second end wall;
the base portion including flanges extending outwardly of the fingers, the flanges each including a surface that abuts one of the ledges within the housing to limit an insertion depth of the insulation displacement terminal within the housing.