Method and apparatus for powering-on a computer-based system via a network interface

Abstract: A network interface card in a networked client computer includes a network interface circuit that decodes and then compares incoming network packet addresses to known address bit patterns, the decoding and comparing circuitry being powered at all times. Receipt and recognition of certain addresses means the client computer must be powered-on, even if manually switched OFF. When such a server-transmitted address is recognized, a power-on signal is issued to a power control unit that causes full operating power to be coupled to the client computer. In this fashion, a server can broadcast power-on signals to a plurality of networked client computers or workstations.

Description: FIELD OF THE INVENTION The present invention relates to networked computer-based systems, and more specifically to powering-on such systems using network interface signals. BACKGROUND OF THE INVENTION A network is used to couple a host server computer to one or more client computers, using wires (including telephone wires), fiber optics, or wireless signals. There are at least several million computers in the United States alone, and an increasing number of these computers are becoming network-accessible. Figure 1 depicts a generic network 10 that includes a server 20 and one or more client computers or workstations 30, 30' that each include a central processing unit ("CPU") 40, 40'. (As used herein, the term computer shall be understood to include the term workstation.) The server and clients communicate over information paths 50, 50' that, as noted, may be wires, optical cables, or radio transmissions. Paths 50, 50' may be parallel, e.g., a plurality of wires, or may be serial, e.g., a single data line. At the client end, each computer includes a network interface circuit 60, 60'. Network interface controller 60, 60' typically is an integrated circuit ("IC") chip that provides interfacing between the client computer and the remote host/server. According to current Ethernet network protocol, networked computers rely upon three attributes of the network: (a) the network is always up or active, (b) the client computer is always alive and coupled to the network, and (c) data and/or application programs may be run locally or run remotely over the network from another computer. Each computer 30, 30' includes a power supply that is typically coupled to 110 VAC/220 VAC, and whose output DC voltages are coupled through an ON/OFF power switch relay, here depicted as a manually operated switch S1, or S1'. If the computer is to communicate with the network, the power switch is ON, otherwise there is no operating voltage to the computer. Although S1 is depicted as a manually operated switch, it is understood that power may be switched on or off using other switching devices, including electronic switching devices. A single desktop computer such as computer 30 or 30' may only consume perhaps 150 watts of electrical power. However, cumulatively the electrical power consumed by all of the computers in the United States, and indeed in the world, is becoming appreciable. With a view to reducing this power consumption and the environmental cost involved in generating the power, the United States Federal Government has promulgated the Energy Star program. As applicable to the present invention, the Energy Star program requires that computers be powered-off to a low energy state of less than 30 watts consumption during periods of inactivity. Computers meeting this requirement, so-called "green PCs", are permitted to bear an Energy Star insignia. Conversely, non-Energy Star compliant equipment is often less well received in the commercial marketplace. One approach to complying with the Energy Star requirement is to design lower power consumption equipment, laptop computers, for example. Many computers can also benefit from advanced power management features, including features that are incorporated into the computer operating system. Intel Corp. and Microsoft Corp. collectively have promulgated one such Advanced Power Management specification. Using power management, a computer can power-down its harddisk and slow its CPU clock rate, thus saving electrical power, after inactivity exceeding a certain threshold. Depressing a key on the computer keyboard, or moving a mouse or other control device will "awaken" the computer, restoring it to full CPU clock rate and/or reactivating the hard disk, within a few seconds. However, powering-off a networked Energy Star compliant computer during periods of inactivity detrimentally interrupts established events that constantly occur in a networked computing environment, polling for example. In practice, powering-off a networked computer could readily make such a computer a pariah in the network marketplace. It is thus desirable to maintain some operating power, preferably less than 30 watts, to a networked computer to permit the computer to respond to the network without being manually awakened. It is known in the art to remotely awaken a powered-off computer with a facsimile ("FAX") signal or a modem signal coupled to the computer's serial port from the telephone line. However such "awakening" requires a FAX or modem signal to be sent to the specific telephone number associated with the computer's modem. The modem must be powered at all times and may consume from 5 watts to 10 watts power. Thus, there is a need to make a networked computer Energy Star compliant, without risk of interrupting network functions that can occur even during periods of client-system inactivity. Preferably the computer should be capable of being powered-off, and then "awakened" using only signals available from the network and coupled to the network interface card. Further, there is a need for a mechanism or system by which a large number of networked computers can be powered-on, quickly or even simultaneously. US patent 5,381,414 describes a method for determining if a data packet is addressed to a computer system in a network, and to a network controller for determining if a data packet is addressed to a computer system in a network. The computer system has an address, and the data packet includes a plurality of addresses indicating which computer systems in the network the data packet is intended to address. The network controller includes first register means for receiving the data packet, second register means for receiving the address of the computer system from storage and a comparator coupled to the first register means and second register means for generating a first signal if one of the addresses of the data packet matches the address of the computer system. The network controller also comprises a logic means responsive to the first signal for turning on the computer system from a sleep mode in a power management scheme where one of the addresses on the data packet matches the address of the computer system. However, this patent does not address a method or a controller adapted for re-awakening a computer system from a powered-off state as described above. European patent application EP-A-0,508,685 describes a power-on control system for a server computer system. A control system for the computer having a power supply which includes a controllable component for activating and deactivating the computer by enabling and disabling the supply of electrical power includes memory elements for storing information regarding an event on the occurrence of which the computer is to be activated and regarding functions to be performed by the computer while activated. The control signal also includes an activation controlling element operably connected to the memory elements and arranged to identify the occurrence of the event and, on identification thereof, to cause the controllable component to activate the computer, to initiate performance of the functions and, after completion of the functions, to cause the controllable component to deactivate the computer. European patent application EP-A-0,522,743 describes the use of a hashing function in an address comparator. IBM Technical disclosure bulletin, "Transparent power-on control of token ring and token bus file server computers", March 1995, vol. 38, no. 3, pages 55 to 56 discloses an architectural implementation to enable remotely located file servers to be turned on when addressed. The implementation involves modification of network adapter cards by addition of an inactivity timer, a power-on latch, a low-power RAM and a standby power source. Standby power powers the inactivity timer, the power-on latch and the low-power RAM when a system power supply is inactive. The low-power RAM is used to store incoming datagrams for the server to process, once it is powered up. The latch is such that when the inactivity timer is counting down it supplies a signal to maintain the system power supply in an ON state. The present invention discloses a method and apparatus for accomplishing these needs. SUMMARY OF THE INVENTION A first aspect of the invention provides a client computer system for a networked multi-computer system, the multi-computer system comprising a plurality of such client computer systems connected to a network and a server computer system connected to the network and operable to issue information packets including address information having a predetermined pattern of bits via the network to at least one said client computer system. The client computer system includes a power supply providing DC operating power, a power control means (S1) having an ON state in which the DC operating power is supplied to the client computer system and an OFF state for interrupting the supply of DC operating power to the client computer system, and a network interface for connecting the client computer system to the network. The network interface comprises a decoder, a comparator and a power control unit. When the power control means is in the OFF state: the decoder, the comparator and the power control unit are connected to a power source; the network interface is operable to receive the information packets issued by the server computer system; the decoder is operable to decode the address information included in the information packets; the comparator is operable to compare decoded address information with at least one stored pattern of bits held in the network interface and to output a power-on signal to the power control unit when a said stored pattern of bits matches the decoded address information; and the power control unit is operable to pass the DC operating power from the power supply via the network interface to the client computer system upon receipt of the power-on signal when the power control means is in the OFF state, whereby the server computer is able to power on the client computer when the power control means of the client computer system is in the OFF state. Another aspect of the invention provides a method of powering on at least one client computer system in networked multi-computer system. The networked multi-computer system includes a plurality of client computer systems and a server computer system connected to a network. Each client computer system includes: a power supply providing DC operating power; a power control means having an ON state in which the DC operating power is supplied to the client computer system and an OFF state for interrupting the supply of DC operating power to the client computer system; and a network interface for connecting the client computer system to the network, which network interface comprises a decoder, a comparator and a power control unit. When the power control means is in the OFF state the decoder, the comparator and the power control unit are connected to a power source. The method comprises, in response to the receipt at the network interface of at least one said client computer system connected to the network of an information packet including address information having a predetermined pattern of bits issued to the network from the server computer system, at a time when the power control means of the client computer system is in the OFF state: the decoder of the client computer system decoding the address information included in the information packets; the comparator of the client computer system comparing the decoded address information with at least one stored pattern of bits held in the network interface, and outputting a power-on signal to the power control unit when a said stored pattern of bits matches the decoded address information; and the power control unit of the client computer system passing the DC operating power from the power supply via the network interface to the client computer system upon receipt of the power-on signal when the power control means is in the OFF state. whereby the server computer is able to power on a predetermined client computer system when the power control means of the predetermined client computer system is in the OFF state. The invention also provides a networked multi-computer system comprising a plurality of client computer systems as defined above and connected to a network and a server computer system connected to the network and operable to issue information packets including address information having a predetermined pattern of bits via the network to at least one said client computer system. In an embodiment of the invention, a network interface card in a networked client computer includes a software of hardware mechanism that is powered at all times. This mechanism decodes incoming network packets and recognizes therein a server-transmitted address whose receipt means the client must be powered-on, even if it had been manually switched off. The transmitted address may be a "broadcast'' address whose receipt will cause power-on of all recipient client computers on the network. This address may instead be a client-dedicated address whose receipt will cause power-on only in lient computers whose decode and recognition mechanism recognizes this address. Full power-on condition will occur within a few seconds, regardless of whether the client computer was in a power-off mode or was switched off manually. The present invention permits a server to broadcast a power-on address whose receipt will cause each of a plurality of clients coupled to the network to power-on simultaneously. Other features and advantages of the invention will appear from the following description in which the preferred embodiments have been set forth in detail, in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS FIGURE 1 depicts a generic network, according to the prior art; FIGURE 2 is a block diagram of a portion of a network interface card and power control circuitry, according to the present invention; FIGURE 3 is a flow diagram depicting steps in recognizing a network broadcast power-on indicating address, and in powering-on a networked client computer, according to the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT Figure 2 depicts a client computer (or workstation) 30 that includes a CPU 40, and a modified network interface card 200 according to an embodiment of the present invention. Computer 30 is coupled, via line or lines 50 to a network server 20, such as server 20 in Figure 1. Among line(s) 50 are line(s) 90 that can carry packets of information broadcast by server 20 to all client computers 30, 30', etc. coupled to the network. Although Figure 2 depicts path 50 as including a plurality of lines including lines 90, e.g., parallel coupling, a single serial line (e.g., a single line 50 or line 90) configuration could instead be used, depending upon the network electrical specification. The information broadcast by server 20 over line(s) 50 is in packet format, with each packet comprising a number of bytes. Packet size may be 48 bytes in certain protocols, each packet including an address field of 6 bytes, or 48 bits. In some protocols, the first 24 bits of an address field are organization address blocks, which contain bit patterns unique to the organization producing the hardware. Some organization address blocks are defined on an industry-wide basis. For example, within the IEEE Ethernet protocol, a string of 24 0's denotes a null packet, which recipient clients may ignore. As described below, client receipt and recognition of certain server-transmitted address patterns command power-on within a recipient networked client, even if the client had been manually turned-off. Referring to Figure 2, DC operating power to computer 30 is provided by an internal power supply (not shown) on line 70 that is coupled by a switch mechanism, here shown as a switch S1, into the computer at node 80. If switch S1 is in the OFF position, operating power to computer 30 is interrupted. However, a small amount of operating power is still coupled to at least a portion of a network interface circuit 100 via a power lead 110, and is also provided as an input to a power control circuit 130. Alternatively, a split power plane or a battery could be used to power the network interface circuit 100. Circuit 100 is powered at all times and will consume less than the 30 watts mandated by the Energy Star program. Actual circuit 100 power consumption depends upon the nature of the server-to-client coupling but will typically range from 5 watts to 10 watts. If switch S1 is in the ON position, computer 30 receives full operating power, with CPU 40 being coupled via lead 85 to powered node 80. However, computer 30 may enter energy saving modes in which the computer hard disk (not shown) ceases rotation, and in which CPU 40 is clocked at a relatively slower rate, or completely halted. It is to be understood that full operating power need not pass through switch S1, and that node 80 may in fact be the input node of a latch device within computer 30. Upon receipt of a DC signal at node 80, such latch device can switch the full operating power on to power computer 30. Network interface circuit 100 is coupled by line (or lines) 90 to server 20, and to client CPU 40 by the local CPU data bus 45. Operating power is always available to circuit 100 via a power lead 110 that comes from the power source side of switch S1. Circuit 100 includes an address decoder 102 and a comparator 104 that compares the decoding incoming address received via line(s) 90 against a stored bit pattern representing an address whose receipt means computer 30 should enter power-on. The comparator could, for example, include logic allowing a user of computer 30 to program not only the addresses to be recognized, but also to determine whether power-on should occur even if recognition is made. At a minimum, the portion of circuit 100 including decoder 102 and comparator 104 receive operating power at all times, but the rest of circuit 100 need not be powered at all times. Of course several such address bit patterns may be stored, including for exam ple, a broadcast address pattern and a client address pattern. Comparator 104 may be implemented in hardware using conventional hardware registers and comparator logic. Alternatively, comparator 104 may be implemented in software to shorten comparison time and reduce cost of implementation and/or power consumption. In a software implementation, comparator 104 includes a hash table and will first compare most significant bit portions of an incoming packet address. A hashing algorithm is executed within the interface controller unit. If matched, less significant bit portions are compared until a complete broadcast or client address match is recognized. However implemented, if unit 100 recognizes an address match, a "power-on" signal is coupled over lead 120 to the input of a power control unit 130 that is coupled in parallel across switch S1. Power control circuit 130 may be a single power control integrated circuit ("IC"), a MOSFET switch, or other latch-accomplishing mechanism. Upon receipt of this signal, power control unit 130 "closes", coupling together power-carrying line 110 and line 70 with line 140. CPU 40 now receives operating voltage via lead 85, and computer 30 can enter a full power-up state within one or two seconds, even if S1 is open. Thus, when server 20 broadcasts an address over line(s) 90 whose receipt and recognition by circuit 100 commands a power-on of computer 30, unit 100 triggers power control unit 130, which provides full operating power to computer 30. Power-on occurs regardless of whether computer 30 is in an Energy Star low-power mode (e.g., where S1 was in the ON position to power-on computer 30, but has been turned OFF as a result of Energy Star mechanisms), or is in a power-off mode (e.g., with S1 in the OFF position). In the low-power mode, although S1 will have been in the ON position, CPU 40, hard disk(s) (not shown) and other power consuming components within computer 30 will have entered power saving modes, e.g., operating and using less than 30 watts. In the above fashion, one or a plurality of client computers 30 may be simultaneously forced to enter a power-on state using address information broadcast by a network server. This is in contrast to the prior art use of a telephone line and modem to dial a dedicated telephone number for a given computer to remotely command the computer to power-on. Figure 3 depicts the various method steps used to carry out the present invention. Initially, at method step 300, it is assumed that S1 is OFF, and that no DC operating potential is coupled to node 80 of computer 30. At step 310, if switch S1 is ON (or activated), then at step 350 DC power is coupled to CPU 40 and indeed to computer 30. If, however, CPU 40 is inactive for 30 minutes as determined by step 360, Energy Star compliance mandates that, at step 300, CPU power be interrupted, e.g., S1 returned to OFF. Returning to step 310, even if S1 is OFF, unit 100 receives operating power and examines incoming address information communicated over line(s) 90. Within unit 100, if a comparison match is found between the incoming address and a bit pattern known to represent a broadcast address commanding a power-on condition, step 330 returns to step 350 and the CPU power is turned ON by activating power control unit 130 via line 120. However, as noted, user-programmable logic may be provided to override turn-on, even if a broadcast match occurs. As before, at step 360, after 30 minutes of inactivity, the Star Energy-compliant client will interrupt CPU power at step 300 by causing S1 to be OFF, and by power control unit 130 to open circuit. However, if step 330 does not result in a broadcast address match, at step 340 a determination is made by unit 100 to determine whether the incoming address represents an address commanding a power-on condition of this particular computer 30. If an address match occurs, then at step 350 power control unit is activated, providing operating DC voltage to computer 30. However, as noted, user-programmable logic may be provided to override power-on, even if a client address match occurs. Such logic could, if desired, flexibly permit a broadcast address match but not a client address match to cause power-on, or the converse. If, however,step 340 does not recognize the incoming address, the routine returns to step 300 and computer 30 remains off. Modifications and variations may be made to the disclosed embodiments without departing from the scope of the claimed invention.

Claims: A client computer system for a networked multi-computer system, the networked multi-computer system comprising: a plurality of said client computer systems (30) connected to a network (50); and a server computer system (20) connected to the network and operable to issue information packets including address information having a predetermined pattern of bits via the network to at least one said client computer system, said client computer system including: a power supply providing DC operating power; power control means (S1) having an ON state in which the DC operating power is supplied to the client computer system and an OFF state for interrupting the supply of DC operating power to the client computer system; and a network interface (200) for connecting the client computer system to the network, which network interface comprises a decoder (102), a comparator (104) and a power control unit (130), and wherein, when the power control means is in the OFF state: the decoder, the comparator and the power control unit are connected to a power source; the network interface is operable to receive the information packets issued by the server computer system; the decoder is operable to decode the address information included in the information packets; the comparator is operable to compare decoded address information with at least one stored pattern of bits held in the network interface and to output a power-on signal to the power control unit when a said stored pattern of bits matches the decoded address information; and the power control unit is operable to pass the DC operating power from the power supply via the network interface to the client computer system upon receipt of the power-on signal when the power control means is in the OFF state, whereby the server computer is able to power on the client computer system when the power control means of the client computer system is in the OFF state. The client computer system according to Claim 1, wherein the power control unit is operable to supply full power to the client computer system in response to the power-on signal irrespective of whether the power control means is in the OFF state with the client computer system powered off, or in the ON state with the client computer system in a low-power mode. The client computer system according to any preceding claim, wherein the network interface consumes less than 30 watts operating power when the client computer system is powered off. The client computer system according to any preceding claim, wherein the comparator comprises a hashing mechanism. The client computer system according to any one of Claims 1 to 3, where the comparator comprises register comparator logic hardware. The client computer system according to any preceding claim, wherein said at least one stored pattern of bits held in the network interface includes at least a first pattern of bits representing a broadcast address and a second pattern of bits representing a client address, and the comparator outputs the power-on signal when the decoded address information matches either of the first pattern of bits or the second pattern of bits. The client computer system according to any preceding claim, wherein the power control unit is selected from the group consisting of a (i) power control integrated circuit, and (ii) a MOSFET switch. The client computer system according to any preceding claim, wherein the network interface is provided on a card. A method of powering on at least one client computer system (30) in networked multi-computer system in which: a plurality of client computer systems (30) and a server computer system (20) are connected to a network (50) and each client computer system includes: a power supply providing DC operating power; a power switch (S 1) having an ON state in which the DC operating power is supplied to the client computer system and an OFF state for interrupting the supply of DC operating power to the client computer system; and a network interface (200) for connecting the client computer system to the network, which network interface comprises a decoder (102), a comparator (104) and a power control unit (130), wherein, when the power control means is in the OFF state the decoder, the comparator and the power control unit are connected to a power source, the method comprising: the network interface of a client computer system connected to the network receiving, at a time when the power control means of the client computer system is in the OFF state, an information packet including address information having a predetermined pattern of bits and issued by the server computer system to the network; the decoder of the client computer system decoding the address information included in the information packets; the comparator of the client computer system comparing the decoded address information with at least one stored pattern of bits held in the network interface, and outputting a power-on signal to the power control unit when a said stored pattern of bits matches the decoded address information; and the power control unit of the client computer system passing the DC operating power from the power supply via the network interface to the client computer system upon receipt of the power-on signal when the power control means is in the OFF state, whereby the server computer is able to power on a predetermined client computer system when the power control means of the predetermined client computer system is in the OFF state. A method according to Claim 9, wherein the power control unit is operable to supply full power to the client computer system in response to the power-on signal irrespective of whether the power control means is in the OFF state with the client computer system powered off, or in the ON state with the client computer system in a low-power mode. A method according to Claim 9 or Claim 10, wherein the at least one stored pattern of bits held in the network interface includes at least a first pattern of bits representing a broadcast address and a second pattern of bits representing a client address, and the comparator outputs the power-on signal when the decoded address information matches either of the first pattern of bits or the second pattern of bits. A method according to any one of Claims 9 to 11, wherein the server computer system issues a message packet including a broadcast address information, and at least two client server systems receive power from their respective power control units when the decoded broadcast address information matches at least one said stored pattern of bits. A networked multi-computer system comprising: a plurality of client computer systems (30) according to any one of Claims 1 to 8 connected to a network (50); and a server computer system (20) connected to the network and operable to issue information packets including address information having a predetermined pattern of bits via the network to at least one said client computer system.

Inventors: GIANNI ROBERT R, GIANNI, ROBERT R.
Applicants: SUN MICROSYSTEMS INC, SUN MICROSYSTEMS, INC.
Application year: 1996
Main classification: G06F1
IPC codes: G06F13, G06F1, H04L29, H04L12