Methods and apparatus for controlling an input or output...

Electrical computers and digital processing systems: multicomput – Master/slave computer controlling

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C358S001150

Reexamination Certificate

active

06636891

ABSTRACT:

BACKGROUND OF THE INVENTION
This invention relates generally to methods and apparatus for transmitting data to, and receiving data from, an output or input device over a computer network.
The introduction of networks, such as LANs, WANs, and the Internet, has revolutionized the field of computing and, in particularly, the field of data transfer (i.e. inputting and outputting data) between devices. Early computer workstations included a personal computer electrically connected to input and output devices, such as printers, scanners, fax machines, and video cameras. Today, networks allow multiple computer workstations or personal computers (collectively called “clients”) to share input or output devices.
To share resources across a network, the resources must be able to communicate using the same or compatible protocols. Conventional networks are organized as a series of layers, the numbers, names, contents, and function of which differ from network to network. In most conventional networks, however, each layer offers services to the higher layers while shielding those layers from the details of how the offered services are actually implemented. When machines communicate, the layers on each machine can communicate with an equivalent layer on other machines using the appropriate protocol for that layer. The protocols used by the layers of a system is referred to as a “protocol stack” and define the network environment. In an UNIX environment, for example, the Transmission Control Protocol/Internet Protocol (TCP/IP) protocol stack includes the transmission control protocol (TCP) and Internet protocol (IP). Server Message Block (SMB) is a protocol stack for passing information between network computers for processing by a device. The TCP/IP protocol stack is one of the most common protocols used on the Internet.
FIG. 1
shows a conventional printing system including multiple clients and a shared printing device. Clients
105
,
110
, and
115
are connected via network
118
to a shared server
120
and printer
135
. Any of clients
105
,
110
, and
115
may use printer
135
via server
120
. If client
105
wants to print, for example, it sends, or “pushes,” a print job consisting of print commands and print data over network
118
to server
120
. Server
120
stores the print job to a disk, queue, or “spool,”
125
in server
120
. As a print job percolates to the top of the print queue, print controller
130
reads the stored file from spool
125
and transmits the file to printer
135
. Print controller
130
also sends commands to printer
135
. In response, printer
135
processes the received file.
This conventional “push” technology has some limitations. In a conventional printing system, for example, clients transmit command information as well as a digital copy of the output file across the network to the server. The server
120
must therefore have sufficient disk space in the spool
124
to store the print jobs waiting to be printed. In networks with many clients, the server requires large amounts of costly disk space, and may delay accepting new jobs if the disk's spool has reached its maximum storage capacity. When the spool is full, the client may waste time querying the server and waiting for it to have sufficient space to receive the job. Furthermore, the client may be inoperable for other tasks until the server can process the job, which can be a significant period of time if the output file is very large.
Additionally, in a conventional configuration, access to printers by clients will frequently be determined by chance and can be unfair. When a server rejects print jobs because the spool is full, clients wishing to output to a device controlled by that server may not be accepted in a predetermined order, but may have to keep querying the server hoping that its request arrives before the those of other clients when the server becomes available.
Furthermore, network print servers that receive requests to print from clients on a variety of platforms require multiple protocols and are more difficult to implement and troubleshoot. A platform is any piece of hardware plus its software operating system.
FIG. 2
illustrates a conventional print server
210
that receives print requests from clients
220
,
240
, and
250
, each operating on a different platform. Client
230
may be an Apple Macintosh using the MacOS® operating system, client
240
may be a PC using the UNIX operating system, and client
250
may be a PC operating the Windows 95® operating system. A server that accepts print jobs from clients on different platforms requires multiple protocol stacks to interpret and output the print request. For example, as shown in
FIG. 2
, print server
210
must contain TCP/IP
214
, SMB
216
, and PAP (Printer Access Protocol)
212
protocol stacks to communicate with the various clients
230
,
240
, and
250
on the network A server that must be configured to use a multitude of protocols is very complex, requiring additional time and resources to develop, troubleshoot, and maintain.
In addition, many conventional methods of printing using a network server do not allow a client to receive information about some status conditions. For example, in a conventional setting, once the client sends a print job to the print server, the client can only query the printer server for the status of the print job (such as whether it is currently printing or place in the print queue), but not for the status of the output device (such as amount of paper left in tray, etc.). Those systems that do allow fall bidirectional querying of printer status require specific hardware or licensed software. For example, IBM Corporation offers its Intelligent Printer Data Stream (IPDS) product that purportedly contains a command set for querying a printer for status information. The printer, however, must support the IPDS printer interface that recognizes a set of specially designed command sets in the IPDS architecture.
SUMMARY OF THE INVENTION
Consistent with this invention, in a network comprising an initiator, a server, and an output device, a server receives from an initiator a request comprising a network storage location of data to be output using the output device. The server places the request in a queue and schedules an output action based on the request. When the scheduled action is ready to be implemented, the server retrieves the output data from the network storage location which is different from the queue. A computer-readable medium consistent with the present invention contains instructions for outputting data in a network corresponding to tasks executable by a computer and performed by the server.
Another method for receiving data from an input device in a network consistent with this invention comprises the following operations, performed by the server. The server receives from input job information from an input device. The server stores the input job information to an input queue. The server receives a request from an initiator to process data from the input device based on the input job information. The server retrieves data from the input device based on the request and transmits the data to a location based on the data destination information. A computer-readable medium consistent with the present invention contains instructions for retrieving data from an input device in a network corresponding to tasks executable by a computer and performed by the server.
A network printer consistent with the present invention comprises a print mechanism for outputting data provided by the initiator. The network printer also comprises a controller for receiving from the initiator a request comprising the network storage location of data to be printed, placing the request in a queue, and scheduling the data to be printed based on the request. When the data is scheduled to be printed, the server retrieves the data from a location different from the queue, and transmits the data to the print mechanism.
An apparatus for controlling data in a network consistent with the present inve

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Methods and apparatus for controlling an input or output... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Methods and apparatus for controlling an input or output..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Methods and apparatus for controlling an input or output... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3127793

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.