Claims
- 1. A method for real-time reconfiguration of a computer network using load information from the computer network, the method comprising:
a) receiving remote procedure call (RPC) information by a server in the computer network; b) analyzing said RPC information; c) determining whether a reconfiguration is required based on the analysis of step b; d) if reconfiguration is required, relocating one or more objects until reconfiguration is completed.
- 2. The method of claim 1, wherein said computer network is comprised of a plurality of servers.
- 3. The method of claim 2, wherein said server that receives the RPC is one of said plurality of servers.
- 4. The method of claim 1, wherein said server is at least one of a host, storage node, a file-system, a location independent file system, and a geographically distributed computer system.
- 5. The method of claim 5, wherein said network is a distributed network.
- 6. The method of claim 5, wherein said network is one of a local area network (LAN) and wide area network (WAN).
- 7. The method of claim 1, wherein at least one of the objects is a file document, a file segment, a system snapshot or a control file.
- 8. The method of claim 1, wherein said RPC information comprises at least time related information, server related information, and queue related information.
- 9. The method of claim 8, wherein said time related information is at least one of start time, completion time and absolute clock time.
- 10. The method of claim 8, wherein said server related information is at least one of server's identification, server type and server capabilities.
- 11. The method of claim 8, wherein said queue related information is at least one of number of requests waiting for processing, number of requests processed in a given period of time, and average waiting time for processing.
- 12. The method of claim 1, wherein the analyzing is done periodically by the server.
- 13. The method of claim 1, wherein a load in a designated network path is detected by the analyzing.
- 14. The method of claim 2, wherein the analyzing detects a load in at least a queue of said plurality of servers.
- 15. The method of claim 1, wherein the determination for reconfiguration is done based on results of the analysis.
- 16. The method of claim 1, wherein the object is relocated using a sub-process comprising:
d1) choosing a relocation server; d2) updating said object's metadata; d3) transferring said object to said relocation server; and d4) updating a view identification (ID) table.
- 17. The method of claim 16, wherein said choosing relocation server is performed by considering at least one of: server load, latency, system load, new server.
- 18. The method of claim 16, wherein said object metadata comprises at least:
object attribute, object path, object name hierarchy in the name space.
- 19. The method of claim 16, wherein said view ID table comprises at least information about: said object new location, said object current view-ID.
- 20. The method of claim 16, wherein updating said metadata comprises attaching a unique view identification (ID) to said object metadata.
- 21. The method of claim 20, wherein said view ID is a sequential number identifying the specific view of said object.
- 22. A computer program product including computer-readable media, said media comprising instructions for enabling a computer to execute a procedure for real-time reconfiguration of a computer network using load information from the computer network, the procedure comprising:
a) receiving remote procedure call (RPC) information by a server in the computer network; b) analyzing said RPC information; c) determining whether a reconfiguration is required based on the analysis of step b; and d) if reconfiguration is required, relocating one or more objects until reconfiguration is completed.
- 23. The computer program product of claim 22, wherein said computer network is comprised of a plurality of servers.
- 24. The computer program product of claim 23, wherein said server that receives the RPC is one of said plurality of servers.
- 25. The computer program product of claim 22, wherein said server is at least one of a host, storage node, a file-system, a location independent file system, and a geographically distributed computer system.
- 26. The computer program product of claim 22, wherein said network is a distributed network.
- 27. The computer program product of claim 26, wherein said network is one of a local area network (LAN) and wide area network (WAN).
- 28. The computer program product of claim 22, wherein at least one of the objects is a file document, a file segment, a system snapshot or a control file.
- 29. The computer program product of claim 22, wherein said RPC information comprises at least time related information, server related information, and queue related information.
- 30. The computer program product of claim 29, wherein said time related information is at least one of start time, completion time and absolute clock time.
- 31. The computer program product of claim 29, wherein said server related information is at least one of server's identification, server type and server capabilities.
- 32. The computer program product of claim 29, wherein said queue related information is at least one of number of requests waiting for processing, number of requests processed in a given period of time, and average waiting time for processing.
- 33. The computer program product of claim 22, wherein the analyzing is done periodically by the server.
- 34. The computer program product of claim 22, wherein a load in a designated network path is detected by the analyzing.
- 35. The computer program product of claim 23, wherein the analyzing detects a load in at least a queue of said plurality of servers.
- 36. The computer program product of claim 22, wherein the determination for reconfiguration is done based on results of the analysis.
- 37. The computer program product of claim 22, wherein the object is relocated using a sub-process comprising:
d1) choosing a relocation server; d2) updating said object's metadata; d3) transferring said object to said relocation server; and d4) updating a view identification (If)) table.
- 38. The computer program product of claim 37, wherein said choosing relocation server is performed by considering at least one of: server load, latency, system load, new server.
- 39. The computer program product of claim 37, wherein said object metadata comprises at least: object attribute, object path, object name hierarchy in the name space.
- 40. The computer program product of claim 37, wherein said view ID table comprises at least information about: said object new location, said object current view-ID.
- 41. The computer program product of claim 37, wherein updating said metadata comprises attaching a unique view identification (ID) to said object metadata.
- 42. The computer program product of claim 41, wherein said view ID is a sequential number identifying the specific view of said object.
- 43. A method for using remote procedure call (RPC) for gathering computer network load information, the method comprising:
a) attaching load information to an outbound RPC information corresponding to a request, the request being sent by a first server to a second server in the network; b) receiving an inbound RPC information from the second server, the inbound RPC information being related to a response for the request; and c) determining system load from the inbound RPC information.
- 44. The method of claim 43, wherein said computer network is comprised of a plurality of servers.
- 45. The method of claim 43, wherein said first server and said second server are part of said plurality of servers.
- 46. The method of claim 43, wherein said computer network is a distributed network.
- 47. The method of claim 46, wherein said network is one of a local area network (LAN) and wide area network (WAN).
- 48. The method of claim 43, wherein said RPC information comprises at least time related information, server related information and queue related information.
- 49. The method of claim 48, wherein said time related information is at least one of start time, completion time, absolute clock time.
- 50. The method of claim 48, wherein said server related information is at least one of server's identification, server type and server capabilities.
- 51. The method of claim 48, wherein said queue related information is at least one of number of requests waiting for processing, number of requests processed in a given period of time, average wait time for processing.
- 52. The method of claim 43, wherein said determining system load is intended for balancing loads on at least one server connected to said computer network.
- 53. A computer program product including computer-readable media, said media comprising instructions for enabling a computer to execute a procedure for using remote procedure call (RPC) for gathering computer network load information, the procedure comprising:
a) attaching load information to an outbound RPC information corresponding to a request, the request being sent by a first server to a second server in the network; b) receiving an inbound RPC information from the second server, the inbound RPC information being related to a response for the request; and c) determining system load from the inbound RPC information.
- 54. The computer program product of claim 53, wherein said computer network is comprised of a plurality of servers.
- 55. The computer program product of claim 53, wherein said first server and said second server are part of said plurality of servers.
- 56. The computer program product of claim 53, wherein said computer network is a distributed network.
- 57. The computer program product of claim 56, wherein said network is one of a local area network (LAN) and wide area network (WAN).
- 58. The computer program product of claim 53, wherein said RPC information comprises at least time related information, server related information and queue related information.
- 59. The computer program product of claim 58, wherein said time related information is at least one of start time, completion time, absolute clock time.
- 60. The computer program product of claim 58, wherein said server related information is at least one of server's identification, server type and server capabilities.
- 61. The computer program product of claim 58, wherein said queue related information is at least one of number of requests waiting for processing, number of requests processed in a given period of time, average wait time for processing.
- 62. The computer program product of claim 53, wherein said determining system load is intended for balancing loads on at least one server connected to said computer network.
- 63. A server in a computer network capable of providing reconfiguration information based on load information, the server comprising:
a processor; a communicator connected to said processor and further connected to the computer network; said processor capable of determining system load based on system load measurements performed over said computer network.
- 64. The server of claim 63, wherein said computer network is comprised of a plurality of servers connected by the communicator.
- 65. The server of claim 64, wherein said server is at least one of a host, storage node, file-system, location independent file system, geographically distributed computer system.
- 66. The server of claim 64, wherein said network is a distributed network.
- 67. The server of claim 66, wherein said distributed network is one of a local area network (LAN) and a wide area network (WAN).
- 68. The server of claim 63, wherein said server is further capable of performing real-time reconfiguration based on at least said load information.
- 69. The server of claim 68, wherein said server is capable of receiving remote procedure call (RPC) information by said server, analyzing said RPC information; determining whether a reconfiguration is required and if so relocating objects till reconfiguration is completed.
- 70. The server of claim 69, wherein the processor is further capable of handling said RPC.
- 71. The server of claim 69, wherein the processor is capable of receiving the RPC information.
- 72. The server of claim 63, wherein the server is capable of attaching load information to an outbound RPC information corresponding to a request, the request being sent by a first server to a second server in the network, the processor is further capable of receiving an inbound RPC information from the second server, the inbound RPC information being related to a response for the request, and the processor is still further capable of determining system load from the inbound RPC information.
- 73. The server of claim 72, wherein said RPC information comprises at least time related information, server related information, queue related information.
- 74. The server of claim 72, wherein said time related information is at least one of start time, completion time, absolute clock time.
- 75. The server of claim 72, wherein said queue related information is at least one of number of requests waiting for processing, number of requests processed in a given period of time, average wait time for processing.
RELATED APPLICATIONS
[0001] The application claims priority from a co-pending U.S. Provisional Patent Application Serial No. 60/356,736 filed Feb. 15, 2002, the contents of which are incorporated herein by reference. This application is also related to concurrently-filed U.S. patent application entitled “A Method and Computer Software for Real-Time Network Configuration”, [Attorney Docket No. Q68524], and which is assigned to the same common assignee as the present application, and is hereby incorporated herein by reference in its entirety for all it discloses.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60356736 |
Feb 2002 |
US |