U.S. patent application number 11/539297 was filed with the patent office on 2007-07-05 for control apparatus and its method, and control program and storage medium holding it, with changing of transmission source.
This patent application is currently assigned to Canon Kabushiki Kaisha. Invention is credited to Yuzo Harano, Hitoshi Hoshino, Yoshinori Ito, Masahiro Takayanagi, Kiyoshi Tokashiki, Yutaka Tokura.
Application Number | 20070156920 11/539297 |
Document ID | / |
Family ID | 26623880 |
Filed Date | 2007-07-05 |
United States Patent
Application |
20070156920 |
Kind Code |
A1 |
Hoshino; Hitoshi ; et
al. |
July 5, 2007 |
CONTROL APPARATUS AND ITS METHOD, AND CONTROL PROGRAM AND STORAGE
MEDIUM HOLDING IT, WITH CHANGING OF TRANSMISSION SOURCE
Abstract
A controller which exists between a client apparatus and an
image processing apparatus and which controls access from the
client apparatus such that the client apparatus can use a network
server function of the image processing apparatus, its control
method and control program and storage medium. To accomplish this,
the controller which exists between a client terminal and an image
processing apparatus and which controls data transmitted from the
client terminal to the image processing apparatus comprises an
information providing unit which provides setup information of the
controller to the client terminal and a transfer unit which
transfers setup information of the image processing apparatus to
the client terminal.
Inventors: |
Hoshino; Hitoshi;
(Nagoya-shi, JP) ; Tokura; Yutaka; (Irvine,
CA) ; Tokashiki; Kiyoshi; (Kanagawa, JP) ;
Takayanagi; Masahiro; (Gunma, JP) ; Ito;
Yoshinori; (Tokyo, JP) ; Harano; Yuzo;
(Kanagawa, JP) |
Correspondence
Address: |
FITZPATRICK CELLA HARPER & SCINTO
30 ROCKEFELLER PLAZA
NEW YORK
NY
10112
US
|
Assignee: |
Canon Kabushiki Kaisha
Tokyo
JP
|
Family ID: |
26623880 |
Appl. No.: |
11/539297 |
Filed: |
October 6, 2006 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10267645 |
Oct 10, 2002 |
|
|
|
11539297 |
Oct 6, 2006 |
|
|
|
Current U.S.
Class: |
709/238 ;
709/245 |
Current CPC
Class: |
G06F 3/1222 20130101;
H04N 1/00973 20130101; G06F 3/1238 20130101; G06F 3/1288 20130101;
H04N 1/00278 20130101; H04N 1/00244 20130101; H04N 2201/0082
20130101; H04N 1/00204 20130101; H04N 1/00127 20130101 |
Class at
Publication: |
709/238 ;
709/245 |
International
Class: |
G06F 15/173 20060101
G06F015/173; G06F 15/16 20060101 G06F015/16 |
Foreign Application Data
Date |
Code |
Application Number |
Oct 12, 2001 |
JP |
2001-315666 |
Mar 28, 2002 |
JP |
2002-091748 |
Claims
1-7. (canceled)
8. A control apparatus having a first network interface for
connection with a first network to which an information processing
apparatus is connected, and a second network interface for
connection with a second network to which an image processing
apparatus is connected, comprising: transmission destination
address determination means for determining whether or not a
transmission destination address of data inputted into said second
network interface from said image processing apparatus is an
address of said second network interface; change means for, in
correspondence with a determination that the transmission
destination address is not the address of said second network
interface, changing a transmission source address of the data to an
address of said first network interface; and data output means for
outputting the data changed by said change means via said first
network interface to said first network.
9. The control apparatus according to claim 8, further comprising
registration means for registering the transmission destination
address of the data inputted into said second network interface, a
transmission source logical port number of the data, and a
reception logical port number indicating a port for reception of
data via said first network interface, as a set, wherein said
change means changes the transmission source address of the data to
the address of said first network interface, and changes the
transmission source logical port number of the data to the
reception logical port number registered in said registration
means.
10. The control apparatus according to claim 9, further comprising
transmission destination port number determination means for
determining whether or not the reception logical port number
corresponding to the transmission destination logical port number
of the data inputted into said first network interface is
registered in said registration means, wherein said change means
changes the transmission destination address of the data to the
same address as the transmission source address registered in said
registration means in correspondence with a determination that the
reception logical port number corresponding to the transmission
destination logical port number of the data is registered.
11. A control apparatus having a first network interface for
connection with a first network to which an information processing
apparatus is connected, and a second network interface for
connection with a second network to which an image processing
apparatus is connected, comprising: a memory holding a program for
determining whether or not a transmission destination address of
data from said image processing apparatus, inputted into said
second network interface, is an address of said second network
interface, changing a transmission source address of the data to an
address of said first network interface, and outputting the changed
data via said first network interface to said first network; and a
processor that performs said program for determining whether or not
the transmission destination address of data from said image
processing apparatus, inputted into said second network interface,
is the address of said second network interface, changing the
transmission source address of the data to the address of said
first network interface, in correspondence with a determination
that the transmission destination address is not the address of
said second network interface, and outputting the changed data via
said first network interface to said first network.
12. A control apparatus having a first network interface for
connection with a first network to which an information processing
apparatus is connected, and a second network interface for
connection with a second network to which an image processing
apparatus is connected, comprising: transmission destination
address determination means for determining whether or not a
transmission destination address of data inputted into said second
network interface from said image processing apparatus is a
broadcast address of said second network; change means for, in
correspondence with a determination that the transmission
destination address is the broadcast address of said second
network, changing a transmission source address of the data to an
address of said first network interface, and changing the
transmission destination address of the data to a broadcast address
of said first network; and data output means for outputting the
data changed by said change means via said first network interface
to said first network.
13. The control apparatus according to claim 12, further comprising
registration means for registering the transmission destination
address of the data inputted into said second network interface, a
transmission source logical port number of the data, and a
reception logical port number indicating a port for reception of
data via said first network interface, as a set, wherein said
change means changes the transmission source address of the data to
the address of said first network interface, and changes the
transmission source logical port number of the data to the
reception logical port number registered in said registration
means.
14. The control apparatus according to claim 13, further comprising
transmission destination port number determination means for
determining whether or not the reception logical port number
corresponding to the transmission destination logical port number
of the data inputted into said first network interface is
registered in said registration means, wherein said change means
changes the transmission destination address of the data to the
same address as the transmission source address registered in said
registration means in correspondence with a determination that the
reception logical port number corresponding to the transmission
destination logical port number of the data is registered.
15. A control apparatus having a first network interface for
connection with a first network to which an information processing
apparatus is connected, and a second network interface for
connection with a second network to which an image processing
apparatus is connected, comprising: a memory holding a program for
determining whether or not a transmission destination address of
data from said image processing apparatus, inputted into said
second network interface, is a broadcast address of said second
network interface, changing a transmission source address of the
data to an address of said first network interface and changing the
transmission destination address of the data to a broadcast address
of said first network, and outputting the changed data via said
first network interface to said first network; and a processor that
performs said program for determining whether or not the
transmission destination address of data from said image processing
apparatus, inputted into said second network interface, is the
broadcast address of said second network interface, changing the
transmission source address of the data to the address of said
first network interface and changing the transmission destination
address of the data to the broadcast address of said first network,
in correspondence with a determination that the transmission
destination address is the broadcast address of said second network
interface, and outputting the changed data via said first network
interface to said first network.
16. A network communication method in a control apparatus having a
first network interface for connection with a first network to
which an information processing apparatus is connected, and a
second network interface for connection with a second network to
which an image processing apparatus is connected, comprising: a
transmission destination address determination step of determining
whether or not a transmission destination address of data inputted
into said second network interface from said image processing
apparatus is an address of said second network interface; a change
step of, in correspondence with a determination that the
transmission destination address is not the address of said second
network interface, changing a transmission source address of the
data to an address of said first network interface; and a data
output step of outputting the data changed at said change step via
said first network interface to said first network.
17. A network communication method in a control apparatus having a
first network interface for connection with a first network to
which an information processing apparatus is connected, and a
second network interface for connection with a second network to
which an image processing apparatus is connected, comprising: a
transmission destination address determination step of determining
whether or not a transmission destination address of data inputted
into said second network interface from said image processing
apparatus is a broadcast address of said second network; a change
step of, in correspondence with a determination that the
transmission destination address is the broadcast address of said
second network, changing a transmission source address of the data
to an address of said first network interface, and changing the
transmission destination address of the data to a broadcast address
of said first network; and a data output step of outputting the
data changed at said change step via said first network interface
to said first network.
18. A control program for controlling an apparatus having a first
network interface for connection with a first network to which an
information processing apparatus is connected, and a second network
interface for connection with a second network to which an image
processing apparatus is connected, performing by computer: a
transmission destination address determination step of determining
whether or not a transmission destination address of data inputted
into said second network interface from said image processing
apparatus is an address of said second network interface; a change
step of, in correspondence with a determination that the
transmission destination address is not the address of said second
network interface, changing a transmission source address of the
data to an address of said first network interface; and a data
output step of outputting the data changed at said change step via
said first network interface to said first network.
19. A control program for controlling an apparatus having a first
network interface for connection with a first network to which an
information processing apparatus is connected, and a second network
interface for connection with a second network to which an image
processing apparatus is connected, performing by computer: a
transmission destination address determination step of determining
whether or not a transmission destination address of data inputted
into said second network interface from said image processing
apparatus is a broadcast address of said second network; a change
step of, in correspondence with a determination that the
transmission destination address is the broadcast address of said
second network, changing a transmission source address of the data
to an address of said first network interface, and changing the
transmission destination address of the data to a broadcast address
of said first network; and a data output step of outputting the
data changed at said change step via said first network interface
to said first network.
Description
FIELD OF THE INVENTION
[0001] The present invention relates to control-apparatus and its
control method, and control program and storage medium holding the
program.
BACKGROUND OF THE INVENTION
[0002] In recent years, many image processing apparatuses such as a
printer, a scanner, a facsimile machine, or an apparatus with
functions of these devices have a network communication function.
Some of these image processing apparatuses have a network server
function, as an information providing function of transmitting
data, where setup window for setting the image processing apparatus
is described, to a web browser on a PC, a server or the like
connected to the apparatuses via a network, for user's setting and
operations of device via the web browser. Further, some image
processing apparatuses have a data transfer function of
transferring image data or the like to a PC, a server or the like
connected to the apparatuses via a network.
[0003] In the data transfer function, higher-order protocols such
as the SMTP protocol for transfer of electronic mail, the i-Fax,
the HTTP (Hyper Text Transfer Protocol) enabling file uploading and
the FTP (File Transfer Protocol) for file transfer are used.
[0004] On the other hand, an external controller is known as a
means of expanding the functions of the image processing apparatus.
The external controller performs a network-function expansion
function of converting data in the communication format of a user
environment network (LAN) to data corresponding to the I/F format
of the image processing apparatus, a storage expansion function of
spooling communication data, a load distribution function of
performing a part of processing by the image processing apparatus
or a client apparatus, and the like.
[0005] Further, as the connection among the image processing
apparatus, the external controller and the LAN, the dual network
type connection where the external controller is connected between
the image processing apparatus and the LAN and the external
controller performs its interface function therebetween, and a
single network type connection where the image processing apparatus
and the external controller are respectively connected to the LAN
are known.
[0006] In comparison with the single network type connection, the
dual network type connection is advantageous in that the band of
the LAN is not consumed since an independent local network is
constructed between the external controller and the image
processing apparatus. In the dual network type connection, a large
amount of image data can be transmitted between the external
controller and the image processing apparatus by using a
transmission format of band wider than the LAN band the local
network.
[0007] Further, in the dual network type connection, the external
controller and the image processing apparatus operate as one
network apparatus. On the other hand, in the single network type
connection, the external controller and the image processing
apparatus respectively consume logical resources such as network
addresses and physical resources such as hub ports. Accordingly,
the dual network type connection is advantageous in that the amount
of consumption of network resources in the LAN is smaller than that
in the single network type connection.
[0008] However, if the conventional external controller is
connected between the LAN and the image processing apparatus, the
image processing apparatus itself cannot perform communication on
the LAN, and the above-described data transfer function of the
image processing apparatus cannot be utilized on the LAN.
SUMMARY OF THE INVENTION
[0009] Accordingly, the present invention has its object to enable
the client apparatus to use of the information providing function
of the image processing apparatus even if the external controller
is connected between the image processing apparatus capable of
network communication and the network.
[0010] Further, the present invention has another object to provide
the data transmission function of the image processing apparatus to
the client apparatus even if the external controller is connected
between the image processing apparatus capable of network
communication and the network.
[0011] According to the present invention, the foregoing object is
attained by providing a control apparatus which controls data
communication between a client apparatus and an image processing
apparatus, comprising display information providing means for
providing display information stored in the control apparatus to a
browser of the client apparatus in correspondence with access
designating a first address from the client apparatus, and transfer
means for transferring display information stored in the image
processing apparatus to the client apparatus in correspondence with
access designating a second address from the client apparatus.
[0012] According to another aspect of the present invention, the
foregoing object is attained by providing a control apparatus
having a first network interface for connection with a first
network to which an information processing apparatus is connected,
and a second network interface for connection with a second network
to which an image processing apparatus is connected, comprising
transmission destination address determination means for
determining whether or not a transmission destination address of
data inputted into the second network interface from the image
processing apparatus is an address of the second network interface,
change means for, in correspondence with a determination that the
transmission destination address is not the address of the second
network interface, changing a transmission source address of the
data to an address of the first network interface, and data output
means for outputting the data changed by the change means via the
first network interface to the first network.
[0013] In still another aspect of the present invention, the
foregoing object is attained by providing a control apparatus
having a first network interface for connection with a first
network to which an information processing apparatus is connected,
and a second network interface for connection with a second network
to which an image processing apparatus is connected, comprising a
memory holding a program for determining whether or not a
transmission destination address of data from the image processing
apparatus, inputted into the second network interface, is an
address of the second network interface, changing a transmission
source address of the data to an address of the first network
interface, and outputting the changed data via the first network
interface to the first network, and a processor that performs the
program for determining whether or not the transmission destination
address of data from the image processing apparatus, inputted into
the second network interface, is the address of the second network
interface, changing the transmission source address of the data to
the address of the first network interface, in correspondence with
a determination that the transmission destination address is not
the address of the second network interface, and outputting the
changed data via the first network interface to the first
network.
[0014] In still another aspect of the present invention, the
foregoing object is attained by providing a control apparatus
having a first network interface for connection with a first
network to which an information processing apparatus is connected,
and a second network interface for connection with a second network
to which an image processing apparatus is connected, comprising
transmission destination address determination means for
determining whether or not a transmission destination address of
data inputted into the second network interface from the image
processing apparatus is a broadcast address of the second network,
change means for, in correspondence with a determination that the
transmission destination address is the broadcast address of the
second network, changing a transmission source address of the data
to an address of the first network interface, and changing the
transmission destination address of the data to a broadcast address
of the first network, and data output means for outputting the data
changed by the change means via the first network interface to the
first network.
[0015] In still another aspect of the present invention, the
foregoing object is attained by providing a control apparatus
having a first network interface for connection with a first
network to which an information processing apparatus is connected,
and a second network interface for connection with a second network
to which an image processing apparatus is connected, comprising a
memory holding a program for determining whether or not a
transmission destination address of data from the image processing
apparatus, inputted into the second network interface, is a
broadcast address of the second network interface, changing a
transmission source address of the data to an address of the first
network interface and changing the transmission destination address
of the data to a broadcast address of the first network, and
outputting the changed data via the first network interface to the
first network, and a processor that performs the program for
determining whether or not the transmission destination address of
data from the image processing apparatus, inputted into the second
network interface, is the broadcast address of the second network
interface, changing the transmission source address of the data to
the address of the first network interface and changing the
transmission destination address of the data to the broadcast
address of the first network, in correspondence with a
determination that the transmission destination address is the
broadcast address of the second network interface, and outputting
the changed data via the first network interface to the first
network.
[0016] Other features and advantages of the present invention will
be apparent from the following description taken in conjunction
with the accompanying drawings, in which like reference characters
designate the same name or similar parts throughout the figures
thereof.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The accompanying drawings, which are incorporated in and
constitute a part of the specification, illustrate embodiments of
the invention and, together with the description, serve to explain
the principles of the invention.
[0018] FIG. 1 is a diagram showing the overview of a system using
an external controller according to a first embodiment of the
present invention;
[0019] FIG. 2 is a diagram showing the overview of the system
including a print controller box according to a second embodiment
of the present invention;
[0020] FIG. 3 is a block diagram showing the functional
construction of the print controller box according to the second
embodiment in relation with one client apparatus;
[0021] FIG. 4 is an example of browser image where a default page
of effective root directory is displayed by the print controller
box according to the second embodiment;
[0022] FIG. 5 is a diagram showing the overview of the system
including a distributed print server according to a third
embodiment of the present invention;
[0023] FIG. 6 is a diagram showing the functional construction of
the distributed print server according to the third embodiment in
relation with one client apparatus;
[0024] FIG. 7 is an example of browser image displaying a menu
image of the distributed print controller according to the third
embodiment;
[0025] FIG. 8 is an example of browser image displaying a menu
image of the distributed print controller according to the third
embodiment;
[0026] FIG. 9 is a diagram showing the overview of the system
including the print controller box (external controller
apparatus);
[0027] FIG. 10 is a flowchart showing processing on a packet
inputted into a network interface 2;
[0028] FIG. 11 is a flowchart showing processing on a packet
inputted into a network interface 1; and
[0029] FIG. 12 is an example of conversion table.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0030] Preferred embodiments of the present invention will now be
described in detail in accordance with the accompanying drawings.
Note that relative arrangement of constituent elements, display
images and the like in the embodiments, unless particularly
described, do not pose any limitation on the scope of the
invention.
[0031] Note that in the description, an external controller
includes all the apparatuses which control data transmitted between
a client apparatus having a browser and an image processing
apparatus such as a printer, a scanner, a copier, a facsimile
machine, a digital camera and a digital video camera. For example,
the control apparatus is a conception including a print controller
box and a distributed print server. Further, the client apparatus
is not necessarily a personal computer, but it may be a cellular
phone, a digital camera, a digital video camera or the like as long
as it has a browser.
First Embodiment
[0032] FIG. 1 shows the overview of system using an external
controller according to a first embodiment of the control apparatus
of the present invention.
[0033] Plural client apparatuses (PCs, Macintosh machines, UNIX
work stations or the like) 111 to 115 and an external controller
300 are connected to a user environment network 100. The external
controller 300 is also connected to a local network 200, to which a
printer 211, a facsimile machine (FAX) 212 and a scanner 213 are
connected as image processing apparatuses. The external controller
300 has network interfaces 301 and 302 used for connection with the
user environment network 100 and a local network 200 in the present
system. In the external controller 300, a WWW server program 303
for WWW services and a WWW transfer program 304 for data transfer
to the various image processing apparatuses operate.
[0034] In addition to the well-known WWW HTTP TCP port (with
RFC1700 ASSIGNED NUMBER 80), the external controller has at least
one WWW HTTP TCP port. One of the ports is used for WWW server
function unit inside the external controller, and the other one is
used as a transfer port for access to the WWW server function unit
inside the image processing apparatus.
[0035] If the well-known port of the network interface 301 is
accessed from the client apparatus, the access is processed by the
WWW server program 303, then an HTTP source of the external
controller 300 is transmitted to the client apparatus, and a
setting image of the external controller 300 is displayed on a
browser of the client apparatus. On the other hand, if the transfer
port is accessed, the WWW transfer program transfers the access to
the WWW HTTP well-known port of any one of the image processing
apparatus in accordance with the type of the transfer port, thereby
the access is processed by a WWW server program (not shown in FIG.
1) in the image processing apparatus.
[0036] That is, the client apparatuses 111 to 115 can access both
of the WWW server of the image processing apparatuses 211 to 213
and the WWW server of the external controller 300.
[0037] Note that the respective image processing apparatuses are
provided with the transfer port.
[0038] According to the present embodiment, even if the external
controller apparatus is connected between an image processing
apparatus connected to a network and the network, a client
apparatus can use WWW services provided from the external
controller and the image processing apparatus.
Second Embodiment
[0039] Next, a print controller box according to a second
embodiment of the present invention will be described.
[0040] The print controller box of the present embodiment is a more
particular example of the external controller of the first
embodiment.
[0041] FIG. 2 is shows the overview of the system including the
print controller box. As in the case of the external controller
described in the above first embodiment, this print controller box
320 has the two network interfaces 301 and 302. The network
interface 301 is connected to the user environment network 100, and
the network interface 302 is directly connected to the printer 211
via a cross cable. The print controller box 320 has a CPU 305 which
controls the entire operation of the print controller box 320, a
ROM 306 in which various programs and related data are stored, and
a RAM 307 for temporarily storing the program read from the ROM 306
for execution by the CPU 305 or for spooling print image data. The
CPU 305 receives a print request from the client apparatuses 111 to
115 and spools image data into the RAM 307, or executes an image
processing program 308 stored in the ROM 306 to perform image
bitmapping, RIP or image combining on the data then transmits the
image data to the printer 211. Further, a WWW server program 309 is
stored in the ROM 306 of the print controller box 320. The WWW
server program performs various setups and operations of the print
controller box by the WWW browser on the client apparatus 111 to
115. The various setups and operations of the print controller box
320 include e.g. display of the status of the print controller box
320, job operations such as deletion and duplication of spool job,
log display of print job, network setting such as IP address
setting, print operation for viable data in cooperation with a data
base.
[0042] On the other hand, the printer 211 connected to the print
controller box 320, having a network communication function and a
WWW server function, can perform various setups and operations of
the printer 211 by the WWW browser on the client apparatuses 111 to
115. The various setups and operations of the printer include e.g.
display of the status of the printer 211, timer setting such as
setting of time before stand-by mode, network setting such as IP
address setting, mail box setting such as setting of box name,
display of information on equipment such as finisher, job
operations such as cancellation, temporary suspension and the like
of currently-performed job, and downloading of job in the box.
[0043] As shown in FIG. 2, when the print controller box 320 is
connected between the printer 211 and the user environment network
100, the print controller box 320 enables the WWW transfer function
such that the WWW services from the print controller box 320 and
the printer 211 can be simultaneously utilized. If the WWW transfer
function is enabled, the WWW transfer port to the printer is opened
in addition to the well-known WWW HTTP TCP port with RFC1700
ASSIGNED NUMBER 80. When a connection request to the transfer port
is received, the WWW transfer program 310 in the ROM 306 of the
print controller box 320 establishes connection with the printer
211 then permits the client apparatus to establish connection. Then
the WWW transfer program transmits all the data received from the
client apparatus to the printer 211, and transmits data received
from the printer 211 to the client apparatus.
[0044] FIG. 3 shows the functional construction of the print
controller box 320 in relation with one client apparatus. The
figure shows a case where the controller box has a DNS name
"prn1.abc.co.jp" in the user network, an IP address "172.22.1.200"
and a transfer port number "8080". When a connection request to the
port 8080 is received from the client apparatus, a WWW transfer
server 311 immediately establishes connection with the port 80 of
the printer, and performs data transfer between the port 8080 and
the port 80 of the printer. If the user designates a transfer port
on the browser, a URL (Uniform Resource Locator)
"http://prn1.abc.co.jp:8080/ . . . , " or
"http://172.22.1.200:8080/ . . . " (a directory name and a file
name are inserted in ". . . " in FIG. 3) is described. Note that in
a structural language document such as HTML provided in the printer
WWW services, a URL indicating a link destination is not an
absolute address but is always a relative address.
[0045] As a default port number in the WWW browser of the client
apparatus is well-known port 80, it is not necessary to designate
the port number for the services in the port 80. In the example of
FIG. 3, merely the URL "http://prn1.abc.co.jp/ . . . is designated,
and the WWW server 312 is accessible.
[0046] Upon simple printing, a print server 313 operates, and image
data is outputted via a port 515 to the printer 211 and printing is
performed.
[0047] Note that since the port designating URL is not well known
to general users, a link indicating connection to the transfer port
is provided by the WWW service of the controller box. FIG. 4 shows
an example of displayed image when the WWW service of the
controller box is accessed (a URL "http://prn1.abc.co.jp/" is
inputted).
[0048] FIG. 4 shows a browser displaying a default page 400 of
effective root directory having a link 401 to the WWW service of
the controller box and a link 402 to the transfer port.
[0049] In this example, a menu for selection of service is
displayed on the default page, however, the menu may be included in
the contents of the WWW service of the controller box.
[0050] Further, it may be arranged such that a setting image for
setting enabled/disabled status of the WWW transfer function is
stored in the print controller box, and only if the WWW transfer
function is enabled in the setting image, the link to the transfer
port is added to the WWW service of the external controller. In
such case, if the WWW transfer function is disabled, the linkage to
the transfer port is deleted. Further, it may be arranged such that
the enabled/disabled status of the WWW transfer function is
selected in accordance with the status of the printer side. In such
case, if the transfer service is stopped when the power of the
image processing apparatus is shut down, the user can easily
determine whether or not the service can be utilized.
[0051] According to the present embodiment, the WWW server provided
in the printer can be accessed merely by inputting the URL of the
print controller box from the client apparatus and making
connection by using a displayed link. Thus the WWW service of the
printer can be used via the transfer port without the user's direct
inputting the URL of the transfer port.
Third Embodiment
[0052] Next, a distributed print server according to a third
embodiment of the present invention will be described.
[0053] As in the case of the above second embodiment, the
distributed print server of the present embodiment is a more
particular example of the external controller of the first
embodiment.
[0054] Generally, a distributed print controller is connected to
plural printers, and the controller has a function of distributing
a received job to the plural printers. Regarding an image
processing apparatus which has been directly connected to a user
environment network before it is introduced to the system or which
can be connected to the user environment network, the external
controller such as the distributed print controller may have a
function as an interface between the network and the image
processing apparatus.
[0055] FIG. 5 shows the overview of the system including the
distributed print server according to the third embodiment.
[0056] This distributed print server 330 also has the two network
interfaces 301 and 302 connected to the user environment network
100, and the local network 200 to which plural printers 211a to
211c are connected. The distributed print server 330 receives a
print request from the client apparatuses 111 to 115, and
distributes the received print job to the plural printers 211a to
211c. The distributed print server 330 has a hardware construction
the same as that of the print controller box 320 described in the
second embodiment, therefore, the same constituent elements have
the same reference numerals and explanations thereof will be
omitted.
[0057] Note that the WWW server program 309 displays a setting
image for various setups and operations of the distributed print
server 330 on the WWW browser on the client apparatuses. The
various setups and operations of the distributed print server 330
include e.g. designation of the way of distribution of each job and
display of the result of job distribution.
[0058] The printers 211a to 211c connected to the distributed print
server 330 respectively have la network communication function and
a WWW server function and can perform various printer setups and
operations by the WWW browser on the client apparatuses. The
various printer setups and operations include e.g. display of
printer status, timer setting such as setting of time before
stand-by mode, network setting such as IP address setting, mail box
setting such as setting of box name, display of information on
equipment such as finisher, job operations such as cancellation,
temporary suspension and the like of currently-performed job, and
downloading of job in the box.
[0059] As shown in FIG. 5, even in a state where the user
environment network and the local environment network are separated
from each other, all the WWW services of the distributed print
server and the respective printers can be simultaneously used by
enabling the transfer function of the distributed print server.
[0060] If the WWW transfer function is enabled, the WWW transfer
program opens the WWW transfer ports in correspondence with the
number of transfer destination printers aside from the well-known
port for reception of WWW service of the distributed print server
itself. When a connection request is received via one of the ports
from the client apparatus, the program performs transfer with the
printer corresponding to the port.
[0061] FIG. 6 shows the functional construction of the distributed
print server 330 in relation with one client apparatus. In this
example, three printers are connected to the distributed print
server. The distributed print server has a DNS name
"prn1.abc.co.jp" in the user network, an IP address "172.22.1.200",
and it uses transfer ports 8080 to 8082. When a connection request
to the port 8080 is received from the client, the WWW transfer
server 311 immediately establishes connection with the port 80 of
the printer 211a, and performs data transfer between the port 8080
and the port 80 of the printer 211a. Similarly, upon connection
with the port 8081, data transfer is made to the printer 211b, and
upon connection with port 8082, data transfer is made to the
printer 211c.
[0062] As in the case of the second embodiment, a link indicating
connection to a transfer function port is provided by the WWW
service of the controller box. As shown in FIG. 7, links to the
respective transfer ports are displayed in the default page of the
root directory. FIG. 7 shows a menu image 505 displayed on the
browser of the client apparatus when the WWW services of all the
printers are available. Numeral 501 denotes a link to the WWW
service of the distributed print server; 502, a link to the WWW
service of the printer 221a (printer GP60-1 in the image); 503, a
link to the WWW service of the printer 211b (printer GP60-2 in the
image); and 504, a link to the WWW service of the printer 211c
(printer CLC1000-1 in the image).
[0063] Further, FIG. 8 is an example of a menu image 506 displayed
on the browser of the client apparatus when the WWW service of the
printer 211b is unavailable. In this example, the name of
unavailable printer is invert-displayed, and a notification of
suspension of service is displayed.
[0064] As the distributed print server monitors the status of
transfer destination printer, in a case where the transfer
destination printer does not provide the WWW service when e.g. the
power is shut down, disables the transfer to the printer as shown
in FIG. 8.
[0065] In this manner, even in a case where plural image processing
apparatuses are connected to the external controller, the WWW
services provided by the external controller and all the image
processing apparatuses can be used from the client apparatus.
Fourth Embodiment
[0066] A distributed print server 300 according to the first and
third embodiments and a print controller box 320 according to the
second embodiment will be described in detail.
[0067] FIG. 9 is an explanatory view showing the overview of the
system including the print controller box according to a fourth
embodiment of the present invention. This controller box 1300
corresponds to the distributed print server 300 shown in FIGS. 1
and 5, or the controller box 320 shown in FIGS. 2 and 3.
[0068] This controller box 1300 has a basic function of receiving
print data (PDL data) in printer description language (PDL) from
the client apparatuses (PCs, Macintosh machines, UNIX work stations
or the like) 111 to 115, performing processing such as PDL
interpretation, image bitmapping and image combining on the PDL
data to generate image data, then transmits the image data to the
image processing apparatuses 211 to 213 for printing.
[0069] Further, the print controller box 1300 has two network
communication interfaces (network interface 1 (1301) and network
interface 2 (1302)) connected to the user environment network 100
and the local network 200.
[0070] The image processing apparatuses 211 to 213 respectively
having a printer function are connected to the local network 200.
The image processing apparatuses are a printer (211), a facsimile
machine (212) and a copier (213) here, however, combined devices
and the like may be used.
[0071] In the client apparatuses 111 to 115 connected to the user
environment network 100, a printer driver converts data outputted
from an application program to print data in printer description
language and transfers the print data to the controller box.
[0072] Further, the print controller box 1300 has a hardware
construction including a computation processing unit, a recording
device, a memory and the like.
[0073] Further, the print controller box 1300 has the following
functional construction. The network interface 1301 (NIC1and the
network interface 1302 (NIC2) are interfaces for connection with
the user environment network 100 and the local network 200.
[0074] Further, a general packet processor 1303 performs packet
input/output processing for the respective network interfaces. A
transmission packet transfer processor 1304 performs packet
transfer from the image processing apparatuses 211 to 213 to the
client apparatuses 111 to 115.
[0075] A reception packet transfer processor 1305 performs packet
transfer from the client apparatuses 111 to 115 to the image
processing apparatuses 211 to 213. A conversion table 1306 holds
records of ways of packet transfer.
[0076] Further, the transmission packet transfer processor 1304,
having transfer reception logical port acquisition means 1311,
transfer reception logical port generation means 1312, a
transmission packet camouflage processor 1313 and a transmission
packet transmitting processor 1314, performs camouflage processing
on a packet transferred from the local network 200 to the user
environment network 100.
[0077] Further, the reception packet transfer processor 1305,
having a reception packet camouflage processor 1321 and reception
packet transmitting means 1322, performs camouflage processing on a
packet transferred from the network 100 to the local network
200.
[0078] Next, the networks will be described. The user environment
network 100 and the local network 200 are independent networks
having different logical network addresses.
[0079] In this embodiment, network communication is performed by
using the Internet Protocol (IP). The user environment network has
a network address "192.168.1.0" and a subnet mask "255.255.255.0";
and the local network has a network address "10.255.255.0" and a
subnet mask "255.255.255.0".
[0080] Next, the image processing apparatuses will be described.
The image processing apparatuses 211 to 213, having a network
communication function, can utilize or provide various services via
the user environment network 100 when the apparatuses are directly
connected to the network 100 without the controller box. For
example, the image processing apparatuses 211 to 213 provide a
so-called push-scan function of scanning a document (original) and
transferring read data to the client apparatus 110, a so-called
pull-print function of downloading image data published on a
network web server (WWW server) and print-outputting the image
data, and the like.
[0081] For example, assuming that the image processing apparatus
has only one Ethernet physical port, if the apparatus is connected
to the print controller box via the Ethernet physical port, there
is no means for communication with the other network devices.
[0082] In the system, even when the apparatus is connected to the
print controller box, access to the user environment network via
the controller box is realized. Hereinbelow, the details of the
packet camouflage processing and transfer processing performed
inside the print controller box 1300 will be described.
[0083] First, the case of pull-print of data file on the WWW server
by the image processing apparatuses 211 to 213 will be described.
The address values of the respective network devices are as
follows. The WWW server has an address "209.137.157.33"; a user
environment router has an address "192.168.1.10"; the network
interface 1 of the controller box has an address "192.168.1.112";
the network interface 2 of the controller box has an address
"10.255.255.1"; and the image processing apparatus has an address
"10.255.255.2".
[0084] When the user designates an URL of file to be downloaded by
using an operation panel of the image processing apparatus (211 to
213), the image processing apparatus instructs the network address
corresponding to the URL to download the file by the HTTP protocol.
The HTTP utilizes the TCP as a lower order protocol, and the TCP
utilizes the IP as a lower order protocol. As the network address
of the WWW server cannot be directly reached from the image
processing apparatus (211 to 213), the image processing apparatus
sends an IP packet to the print controller box 1300 registered as a
Gateway.
[0085] Assuming that the number of logical port opened by the image
processing apparatus (211 to 213) for this TCP session is "1234",
the packet sent to the network interface 2 of the print controller
box 1300 has a transmission source address (a network address of an
apparatus that transferred data) "10.255.255.2", a transmission
source logical port number "1234", a transmission destination
address "209.137.157.33", and a transmission destination logical
port number "80".
[0086] The print controller box 1300 processes the packet inputted
into the network interface 2 as shown in the flowchart of FIG.
10.
[0087] First, it is determined whether or not the transmission
source address of the packet is the address of the network
interface 2 (step S1201). If the packet is directed to the network
interface 2, the general packet processor performs general
processing on the packet (step S1202).
[0088] Next, it is determined whether or not the transmission
destination address is a broadcast address (step S1203). If it is a
broadcast address, the transmission destination address of the
packet is changed to a broadcast address in the network 100 (step
S1204). In this example, the address is changed to
"192.168.1.255".
[0089] Next, it is determined whether or not the set of the
transmission source addresses and the transmission source logical
port number of the packet is registered in the conversion table
(step S1205).
[0090] FIG. 12 shows an example of the conversion table. In the
conversion table, transmission reception logical port numbers are
registered in correspondence with transmission source addresses and
transmission source logical port numbers. Accordingly, the set of
the transmission source address and the transmission source logical
port number of the packet is compared with sets of transmission
source addresses and transmission source logical port numbers in
the table, and a transmission reception logical port number is
obtained.
[0091] It is determined whether or not this set is registered in
the conversion table, i.e., whether or not a transfer reception
logical port number has been obtained (step S1206). If the set is
not registered, a transfer reception logical port is newly opened
(step S1207), and its number is newly registered in the conversion
table (step S1208). In use of newly opened port number or in use of
port number obtained from the conversion table, the same operation
follows.
[0092] Next, the transmission source address of the packet is
rewritten with the address of the NIC1, and the transmission source
logical port number of the packet is rewritten with the
transmission reception logical port number (step S1209). For
example, if the transfer reception logical port number is "54321",
the header of the packet is rewritten as follows. If the address or
port number in the header is changed, the check sum value is also
changed, however, in this example, the change of check sum value
will not be particularly described. The transmission source address
of the header is "192.168.1.112"; the transmission source logical
port number is "54321"; the transmission destination address is
"209.137.157.33"; and the transmission destination logical port
number is "80".
[0093] Thereafter, as in the case of general packet transmission
from the NIC1, this packet is transmitted to the user environment
network or router (step S1210). In this case, as the transmission
destination is connected to a further network, the packet is
transferred to the user environment router.
[0094] In this manner, by packet camouflage processing, the WWW
server that receives the packet determines that the destination of
the packet is not the image processing apparatus (211 to 213) but
the print controller box 1300, and sends a response packet,
normally, to the print controller box 1300. The response packet has
a transmission source address "209.137.157.33", a transmission
source logical port number "80", a transmission destination address
"192.168.1.112", and a transmission destination logical port number
"54321".
[0095] When the above packet is inputted into the NIC1 of the print
controller box 1300, the packet is processed as shown in the
flowchart of FIG. 11.
[0096] First, it is checked whether or not the transmission
destination logical port number of the received packet is
registered as the transfer reception port number in the conversion
table (step S1301). The checking is made by comparing the
transmission destination logical port number with the transfer
reception logical port numbers recorded in the conversion
table.
[0097] If the transmission destination logical port number is not
registered, it is determined whether or not the transmission
destination address is a broadcast address (step S1302). If the
address is not a broadcast address, it is determined that the
packet is directed to the controller box, and general packet
processing is performed (step S1303).
[0098] If the transmission destination address of the packet is a
broadcast address, the packet is duplicated. The transmission
destination address of the duplicate packet is changed to a
broadcast address in the network 200, and the duplicate packet is
broadcasted on the network 200 (step S1305). The original packet is
subjected to the general packet processing (step S1304).
[0099] If the transmission destination logical port number of the
packet is registered as the transfer reception port number in the
conversion table, the corresponding transmission source address and
transmission source port number are obtained (step S1306).
[0100] Then it is determined whether or not the transmission
destination address of the packet is a broadcast address (step
S1307). If the transmission destination address of the packet is a
broadcast address, the transmission destination address of the
packet is changed to a broadcast address in the network 200 for
broadcasting on the network, and the transmission destination
logical port number of the packet is changed to the transmission
source logical port number obtained at step S1306 (step S1308).
[0101] Further, if the transmission destination address of the
packet is not a broadcast address, the transmission destination
address of the packet is changed to the transmission source address
obtained at step S1306 for transmission of packet to the
predetermined image processing apparatus, and the transmission
destination logical port number of the packet is changed to the
transmission source logical port number obtained at step S1306
(step S1309).
[0102] In FIG. 12, as the transmission destination logical port
number is registered in the conversion table, the header of the
packet is rewritten as follows by the obtained address and port
number. That is, the transmission source address of the packet is
"209.137.157.33", the transmission source logical port number is
"80", the transmission destination address is "10.255.255.2", and
the transmission destination logical port number is "1234".
[0103] Note that the packet is transmitted from the NIC2 to the
network 200 as in the case of general packet. The image processing
apparatus (211 to 213) determines that the packet is transmitted
from the WWW server, and performs the subsequent processing.
[0104] In the above description, the image processing apparatus
(211 to 213) transmits a packet instructing file download to the
control box for pull-print of data file on the WWW server. When the
image processing apparatus (211 to 213) provides a push-scan
function, the apparatus transmits a packet including read data to
the control box, and the control box performs similar processing.
In this case, the transmission destination address of the packet is
set to the address of client apparatus as the transmission
destination.
[0105] It is significant in this series of processing that the
address of the local network 200 is not included at all in the
packet of the user environment network 100. Accordingly, even in a
case where plural controller boxes are connected to the user
environment network 100 and the controller boxes are connected to
different local networks, the plural local networks can use the
same local network address.
[0106] Further, the image processing apparatus performs the same
transmission processing as that in the case where the apparatus is
directly connected to the user environment network 100. Further,
the series of processing is applicable to other protocols than the
TCP/IP as long as the route and destination are specified by the
logical address and logical port number described in a packet
header. For example, similar advantages can be obtained in use of
UDP/IP, IPX and the like.
[0107] Further, as a response packet to a packet transmitted from a
particular image processing apparatus among plural image processing
apparatuses is transmitted to the particular image processing
apparatus, communication is appropriately performed.
[0108] Note that in some protocols, a different operation from that
in direct connection with the user environment network 100 is
performed, and normal communication cannot be performed. One of the
causes is that the image processing apparatus and the client
apparatus on the network 100 belong to different sub networks and
therefore a broadcast packet cannot be transmitted. A broadcast
packet is used for e.g. searching for a corresponding device on the
network. For example, ICMP support device search by an ECHO command
of the ICMP, the SMB name solution service and the RPC service
search are well known.
[0109] In the present invention, the problem of broadcast packet is
solved. Next, an example of search by broadcast packet will be
described. In this example, an image processing apparatus, which is
to perform remote parallel copying, searches for another image
processing apparatus to support the remote parallel copying by
using a broadcast packet. The address values and port numbers of
the respective network devices are as follows. Note that remote
parallel copying means transmitting print data to at least one
image processing apparatus found by a search and performing
printing by plural image processing apparatuses in parallel.
[0110] The image processing apparatus (external image device)
directly connected to the user environment network 100 has a
logical address "192.168.1.111"; the NIC1 of the controller box has
an address "192.168.1.112"; the NIC2 of the controller box has an
address "10.255.255.1"; and the image processing apparatus
(internal image device) connected to the local network 200 has a
logical address "10.255.255.2". Further, the port number of the
remote parallel copying service is "47545".
[0111] The internal image device first broadcast-transmits an UDP
packet to check whether or not a device supporting the remote
parallel copying exists in the same subnet. Assuming that the
logical port number used in the transmission is "2234", the
transmission source address in the header of the packet is
"10.255.255.2", the transmission source logical port number is
"2234", the transmission destination address is "10.255.255.255",
and the transmission destination logical port number is
"47545".
[0112] The print controller box 1300 processes the broadcast packet
inputted into the NIC2 as shown in the flowchart of FIG. 10. First,
it is checked that the transmission destination address is not the
address of the NIC2 (NO at step S1201). Next, it is checked whether
or not the transmission destination address is a broadcast address
(step S1203). If the address is a broadcast address, the
transmission destination address is changed to a broadcast address
in the network 100 (step S1204).
[0113] Thereafter, the transmission source address of the packet is
changed to the address of the NCI1, and the logical port number of
the packet is changed to a reception transfer port number ("5532"
in this example), as packet camouflage. The packet transmitted to
the network 100 has a transmission source address "192.168.1.112",
a transmission source logical port number "55321", a transmission
destination address "192.168.1.255" and a transmission destination
logical port number "47545".
[0114] Next, in a case where a response packet from the external
image device has a transmission source address "209.137.157.33", a
transmission source logical port number "47545", a transmission
destination address "192.168.1.111" and a transmission destination
logical port number "55321", packet conversion is performed. The
packet transmitted to the internal image device has a transmission
source address "209.137.157.33", a transmission source logical port
number "47545", a transmission destination address "10.255.255.2"
and a transmission destination logical port number "2234".
[0115] Then the internal image device receives the packet as a
response to the broadcast packet, thereby recognizes the external
image device provided with the remote parallel copying service,
having the transmission source address "209.137.157.33".
Other Embodiment
[0116] Note that in FIG. 5, the system has only one network
interface connected to the printer side, connected via a local
network to plural printers, however, the present invention is not
limited to this arrangement. Plural network interfaces may be
provided for image processing apparatuses. Further, in FIGS. 1, 2
and 5, the respective networks are cable-connected, however, the
present invention is not limited to this arrangement. External
controller apparatus may use a network interface which constructs a
radio network by using radio LAN technique, the Blue Tooth
technique or the like.
[0117] Further, the present invention can be applied to a system
constituted by a plurality of devices (e.g., a host computer, an
interface, a reader and a printer) or to an apparatus comprising a
single device (e.g., a copy machine or a facsimile apparatus).
[0118] Further, the object of the present invention can be also
achieved by providing a storage medium (or recording medium)
holding software program code for realizing the aforesaid functions
according to the embodiments to a system or an apparatus, reading
the program code with a computer (e.g., CPU, MPU) of the system or
apparatus from the storage medium, then executing the program. In
this case, the program code read from the storage medium realizes
the functions according to the embodiments, and the storage medium
holding the program code constitutes the invention. Furthermore,
besides aforesaid functions according to the above embodiments are
realized by executing the program code which is read by a computer,
the present invention includes a case where an OS (operating
system) or the like working on the computer performs a part or
entire actual processing in accordance with designations of the
program code and realizes functions according to the above
embodiments.
[0119] Furthermore, the present invention also includes a case
where, after the program code read from the storage medium is
written in a function expansion card which is inserted into the
computer or in a memory provided in a function expansion unit which
is connected to the computer, a CPU or the like contained in the
function expansion card or unit performs a part or entire actual
processing in accordance with designations of the program code and
realizes the functions of the above embodiments.
[0120] Thus, the present invention provides a control apparatus,
which exists between a client apparatus and an image processing
apparatus, and which controls access from the client apparatus such
that the client apparatus can use an information providing function
in the image processing apparatus, and a control method, a control
program and a storage medium holding the program.
[0121] As described above, according to the above-described
embodiments, even if an external control apparatus is connected
between an image processing apparatus which can perform network
communication and a network, a data transmission function of the
image processing apparatus can be provided to the client
apparatus.
[0122] Further, since the number of network addresses consumed for
the external controller apparatus and the image processing
apparatus in a user environment network is one, the resources in
the LAN can be saved.
[0123] Further, a broadcasted packet can be transmitted from the
image processing apparatus via the external controller apparatus to
the network device.
[0124] Further, the image processing apparatus does not change the
way of network communication processing regardless of the existence
or absence of external controller. Accordingly, it is not necessary
to develop the communication function of the image processing
apparatus such as data transfer depending on external controller.
Thus the development costs of the image processing apparatus and
period of development can be reduced.
[0125] As many apparently widely different embodiments of the
present invention can be made without departing from the spirit and
scope thereof, it is to be understood that the invention is not
limited to the specific embodiments thereof except as defined in
the appended claims.
* * * * *
References