The present invention generally relates to the field of operating and network systems, and more particularly to a method and a system for accessing and storing meta-data in a network adapter.
As reliance upon computers for communicating in both personal and business settings continues to increase, more efficient and less cumbersome interaction amongst multiple computers is desirable. Presently, a network adapter may be employed to allow high speed communications to occur between multiple computers all part of a common network. Network adapters are used by computers to send and receive packets of information.
Although network adapters have greatly increased the speed and efficiency in which computers within a given network may communicate with each other, currently available network adapters are only able to store limited information. For example, information currently stored on network cards includes the Media Access Control (MAC) address which is a hardware address that uniquely identifies each node of a network. Further, for wireless cards, the encryption keys for the Wireless Access Point (WAP) are stored on such cards. In addition, there is no ability to access such information without the use of network drivers or an operating system (OS).
The inability of a network adapter to access and store general information about a system while the system is powered off or in low power mode (e.g., standby mode) imposes limitations on the system. For instance, there are several pieces of information about a system on a network that would be useful to know about that system, even if the system is not powered “on” or is running another OS at the time. If a user were able to query such information over the network, then system scans for such tasks as inventory, OS type, and hardware configuration may be easily accomplished. Further, by enabling network cards to respond even when the system is turned off or in standby mode, a network scan of all systems attached to the network may be performed, thereby allowing an accurate representation of the network to be obtained.
Therefore, it would be desirable to provide a method and system which would allow a network adapter to store information about a system when the system containing the adapter is in a power off or low power mode.
In a first aspect of the invention, a method for accessing and retrieving information stored on a network adapter is provided. In the present aspect, the method includes sending a request by a first system to a network adapter disposed within a second system. The first system and second system are communicatively coupled via a network. The request is processed by the network adapter disposed with the second system and network adapter memory is accessed to retrieve the information in accordance with the request. Finally, a response in accordance with the request is sent by the network adapter to the first system.
In a further aspect of the present invention, a computer-readable medium having computer-executable instructions for performing a method of accessing and retrieving information stored on a network adapter is disclosed. In an aspect, the method includes sending a request by a first system to a network adapter disposed within a second system, the first system and second system being communicatively coupled via a network. Further, the request is then processed by a network adapter disposed with the second system and memory of the network adapter is accessed in order to retrieve the information in accordance with the request. Next, a response in accordance with the request is sent by the network adapter disposed within the second system to the first system allowing the two systems to share information.
In an additional aspect of the present invention, a system capable of requesting and accessing information stored on a network adapter is provided. In accordance with an exemplary aspect, the system includes a first computer system. Further, a second computer system is communicatively coupled to the first system via a network for allowing the first computer system and second computer system to share information. In addition, a network adapter is disposed within the second computer system for storing information. Such network adapter includes memory. The present system is designed to allow the first computer system to request and access information from the network adapter disposed within the second computer system without the second computer system leaving a low-power state such as “standby” or “power off” mode.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not necessarily restrictive of the invention as claimed. The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate an embodiment of the invention and together with the general description, serve to explain the principles of the invention.
The numerous advantages of the present invention may be better understood by those skilled in the art by reference to the accompanying figures in which:
Reference will now be made in detail to the presently preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings.
Referring to
In an exemplary embodiment, the network adapter includes non-volatile readable and writable memory allowing information about the OS and configuration settings to be stored on the network adapter and accessed directly through the network without the use of network drivers or an OS. Further, this memory may be written by any software including a network adapter device driver or other hardware devices.
It is contemplated that the information stored in the memory may be textual or binary. For instance, data which describes other data, often referred to as meta-data, may be stored in the network adapter memory. Examples of meta data include data element descriptions, data type descriptions, attribute/property descriptions, range/domain descriptions and process/method descriptions. For example, the information stored in the network adapter memory is saved in the format of property name/value pairs (property n, value n) such as (property1, value1). In accordance with the prior example, to store OSes installed on the system, the pairs (“os”, “redhat linux”), (“os”, “windows xp professional”) may be used. Thus, by querying the network adapter over the network, the installed OSes may be detected and information about a particular configuration setting under an OS may be stored by the pair (e.g., “redhat linux/ip”, “192.168.1.1.”). In addition, it is contemplated that additional information may be included with the property such as a password which is required to access the property. For example, recognition of a password included with the request by the second system prior to accessing network adapter memory allows information on the second system to be protected from unknown systems on the network.
In further exemplary embodiments of the method 100, processing of the request 104, accessing network adapter memory 106, and sending a response 108 may be performed while the second system is in a low-power state such as that associated with power off or standby mode. For example, when a particular request or command directed to the network adapter disposed within the second system or destination system is received, the network adapter performs a memory lookup and returns the requested information to the source system without the network adapter or system leaving the low-power state. In an embodiment, a network adapter employs the Wake-on-LAN disposed within the adapter to allow the adapter to wake a machine when a special MAGIC PACKET™ frame is received on the network
As mentioned previously, there are several pieces of information about a system on a network that would be useful to know about that system, even if the system is not powered “on” or is running another operating system at the time. Such information may include the OS, configuration settings, and hardware information. For example, a user may query such information over the network, then system scans for such tasks as inventory, OS type, and hardware configuration may be easily accomplished. In addition, by enabling network adapters to respond even when the system is turned off or in standby mode, a network scan of all systems attached to the network may be performed, thereby allowing an accurate representation of the network to be obtained.
Referring to
Ethernet network adapters such as those which may be utilized in the present invention use the IEEE 802.2xx standards (e.g., 802.2 through 802.11x standards) with each packet (RFC 894 and 1042).
Referring to
The exemplary MAGIC PACKET™ includes a broadcast (e.g., six (6) bytes of FF) allowing all computers within the network to be contacted and sixteen (16) duplications of the DA. The six (6) bytes of FF and sixteen (16) duplications of the DA may be located anywhere within the data. With such configuration, all computers within the network receive the broadcast message and compare their host name with that in the data field. However, only the computer including the specified DA will be accessed and ultimately, respond. It is contemplated that while an exemplary embodiment may use a MAGIC PACKET™ to initiate a system wake-up sequence other unique packets may be employed to perform such sequence.
In an embodiment, the six (6) bytes of FF and sixteen (16) duplications of the DA may be followed by a requested property name, options, or the like. As illustrated in
Referring to
In the present embodiment, the destination system or second system 404 includes a network adapter 408 for storing information. It is contemplated that the information may include the OS and configuration settings. As illustrated in
In an exemplary scenario, as depicted by
Although the present method and system involves two systems, it is contemplated that the number of systems may vary depending upon the size and complexity of the network. It is also contemplated that the network may be established within a single building such as a home network linking multiple systems disposed within the dwelling or involve systems located at numerous locations. In addition, the Internet or intranet may be employed to establish the network.
It is to be noted that the foregoing described embodiments according to the present invention may be conveniently implemented using conventional general purpose digital computers or other programmable network hardware devices programmed according to the teachings of the present specification, as may be apparent to those skilled in the computer art. Appropriate software coding may readily be prepared by skilled programmers based on the teachings of the present disclosure, as may be apparent to those skilled in the software art.
It is to be understood that the present invention may be conveniently implemented by use of a software package. Such a software package may be a computer program product which employs a computer-readable storage medium including stored computer code which is used to program a computer to perform the disclosed function and process of the present invention. The computer-readable medium may include, but is not limited to, any type of conventional floppy disk, optical disk, CD-ROM, magneto-optical disk, ROM, RAM, EPROM, EEPROM, magnetic or optical card, or any other suitable media for storing electronic instructions.
It is understood that the specific order or hierarchy of steps in the foregoing disclosed methods are examples of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the method can be rearranged while remaining within the scope of the present invention. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented.
It is believed that the present invention and many of its attendant advantages will be understood by the foregoing description, and it will be apparent that various changes may be made in the form, construction and arrangement of the components thereof without departing from the scope and spirit of the invention or without sacrificing all of its material advantages. The form herein before described being merely an explanatory embodiment thereof, it is the intention of the following claims to encompass and include such changes.