KR20170113382A - Information processing apparatus, method for controlling information processing apparatus, and program - Google Patents

Information processing apparatus, method for controlling information processing apparatus, and program Download PDF

Info

Publication number
KR20170113382A
KR20170113382A KR1020170040430A KR20170040430A KR20170113382A KR 20170113382 A KR20170113382 A KR 20170113382A KR 1020170040430 A KR1020170040430 A KR 1020170040430A KR 20170040430 A KR20170040430 A KR 20170040430A KR 20170113382 A KR20170113382 A KR 20170113382A
Authority
KR
South Korea
Prior art keywords
server
processing apparatus
information processing
information
power saving
Prior art date
Application number
KR1020170040430A
Other languages
Korean (ko)
Other versions
KR102115488B1 (en
Inventor
? 나카무라
šœ 나카무라
Original Assignee
캐논 가부시끼가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 캐논 가부시끼가이샤 filed Critical 캐논 가부시끼가이샤
Publication of KR20170113382A publication Critical patent/KR20170113382A/en
Application granted granted Critical
Publication of KR102115488B1 publication Critical patent/KR102115488B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • H04L67/42
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Facsimiles In General (AREA)
  • Power Sources (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Control Or Security For Electrophotography (AREA)
  • Computer And Data Communications (AREA)

Abstract

판정 유닛은 서버가 정보 처리 장치와 일체로 구성된 장치인지를 판정하고, 판정 유닛의 판정 결과에 따라, 서버와 정보 처리 장치 사이의 통신 커넥션이 제어되고, 전력 상태의 이행이 제어된다.The determination unit determines whether or not the server is an apparatus configured integrally with the information processing apparatus. The communication connection between the server and the information processing apparatus is controlled according to the determination result of the determination unit, and the transition of the power state is controlled.

Description

정보 처리 장치, 정보 처리 장치의 제어 방법, 및 프로그램{INFORMATION PROCESSING APPARATUS, METHOD FOR CONTROLLING INFORMATION PROCESSING APPARATUS, AND PROGRAM}TECHNICAL FIELD [0001] The present invention relates to an information processing apparatus, a control method of an information processing apparatus,

본 발명은 서버와 클라이언트 사이에서 특정한 정보를 공유하기 위한 기술에 관한 것이다.The present invention relates to a technique for sharing specific information between a server and a client.

종래, 서버와 클라이언트 사이에서 특정한 정보를 공유하기 위한 동기 시스템이 알려져 있다. WO2013/024553호에는, 이메일, 캘린더, 또는 연락처 번호 및 주소의 정보에 관한 동기 서비스를 제공하는 서버에, 정기적으로 킵-얼라이브 패킷을 송신해서 서버와의 동기 통신을 행하는 클라이언트(휴대 전화)가 개시되어 있다. WO2013/024553호에서 논의된 클라이언트는, 클라이언트의 디스플레이의 표시 상태가 표시부터 비표시로 이행하면, 서버에의 정기적인 킵-얼라이브 패킷의 송신을 정지한다. 또한, WO2013/024553호에서 논의된 클라이언트는, 조작 화면의 표시 상태가 비표시부터 표시로 이행하면, 서버에의 킵-얼라이브 패킷의 송신을 재개한다.Conventionally, a synchronization system for sharing specific information between a server and a client is known. WO2013 / 024553 discloses a client (cellular phone) that periodically sends a keep-alive packet to synchronize communication with a server, to a server that provides a synchronous service for e-mail, calendar, or contact number and address information . The client discussed in WO2013 / 024553 stops sending regular keep-alive packets to the server when the display state of the client's display changes from display to non-display. In addition, the client discussed in WO2013 / 024553 resumes transmission of the keep-alive packet to the server when the display state of the operation screen changes from non-display to display.

또한, 일본 특허 공개 제2010-283618호 공보에는, 서버와 클라이언트 사이에서 화상 형성 장치의 설정 데이터를 공유하기 위한 동기 시스템이 논의되어 있다. 특허문헌 2에서는, 1대의 화상 형성 장치가 서버의 기능을 실현하기 위한 웹 서버 제어 유닛과, 클라이언트의 기능을 실현하기 위한 웹 클라이언트 제어 유닛을 둘 다 갖는 구성이 논의되어 있다.Japanese Patent Laying-Open No. 2010-283618 discusses a synchronization system for sharing setting data of an image forming apparatus between a server and a client. Patent Document 2 discusses a configuration in which one image forming apparatus has both a web server control unit for realizing the function of the server and a web client control unit for realizing the function of the client.

WO2013/024553호에서와 같이, 미리 결정된 패킷을 정기적으로 송신해서 서버와 클라이언트 사이의 통신 커넥션을 계속 유지하는 시스템에 있어서, 일본 특허 공개 제2010-283618호 공보에서와 같이 1대의 장치가 서버 기능과 클라이언트 기능을 둘 다 갖는 경우, 이하의 과제가 발생한다. 즉, 서버 기능과 클라이언트 기능을 둘 다 갖는 장치는, 서버와 클라이언트 사이의 통신 커넥션을 차단할 수 없다.As disclosed in WO2013 / 024553, in a system in which a predetermined packet is periodically transmitted to continuously maintain a communication connection between a server and a client, In the case of having both client functions, the following problems arise. That is, a device having both a server function and a client function can not block the communication connection between the server and the client.

예를 들어, 서버가 클라이언트로부터 전회 킵-얼라이브 패킷을 수신하고 나서 미리 결정된 시간이 경과한 시점까지 서버가 킵-얼라이브 패킷을 수신하지 않으면, 서버는 클라이언트와의 커넥션을 차단한다. 관리 대상으로서의 모든 클라이언트와의 커넥션이 차단되는 조건 하에서, 서버는 전력 절약 상태로 이행할 수 있다.For example, if the server does not receive the keep-alive packet until a predetermined time has elapsed since the server received the keep-alive packet last time from the client, the server blocks the connection with the client. The server can shift to the power saving state under the condition that the connection with all clients as an object of management is blocked.

또한, 장치가 전력 절약 상태로 이행하기 위한 조건을 만족한 경우, 클라이언트는 서버에의 킵-얼라이브 패킷의 송신을 중지하고, 서버와의 커넥션을 차단한다.In addition, when the device satisfies the condition for shifting to the power-saving state, the client stops sending the keep-alive packet to the server and disconnects the connection with the server.

이 경우, 서버 기능을 실현하는 서버 유닛과 클라이언트 기능을 실현하는 클라이언트 유닛을 통합된 장치로서 구성하면, 이러한 장치는 다음과 같이 동작한다.In this case, when a server unit that implements the server function and a client unit that implements the client function are configured as an integrated device, such an apparatus operates as follows.

즉, 클라이언트 유닛은, 이 클라이언트 유닛을 포함하는 장치가 전력 절약 상태로 이행 가능하게 될 때까지 스탠바이 상태를 계속 유지한다. 스탠바이 상태인 동안에, 클라이언트 유닛은, 이 클라이언트 유닛을 포함하는 장치의 서버 유닛에 정기적으로 킵-얼라이브 패킷을 계속해서 송신한다.That is, the client unit keeps the standby state until the device containing the client unit becomes transitionable to the power saving state. While in the standby state, the client unit continuously transmits a keep-alive packet periodically to the server unit of the apparatus including this client unit.

한편, 클라이언트 유닛으로부터 킵-얼라이브 패킷이 정기적으로 송신되기 때문에, 서버 유닛은, 클라이언트 유닛과의 커넥션을 차단할 수 없어, 서버 유닛을 포함하는 장치를 전력 절약 상태로 이행시킬 수 없다. 서버 유닛을 포함하는 장치가 전력 절약 상태로 이행할 수 없기 때문에, 클라이언트 유닛은 킵-얼라이브 패킷을 클라이언트 유닛을 포함하는 장치의 서버 유닛에 계속해서 송신한다.On the other hand, since the keep-alive packet is periodically transmitted from the client unit, the server unit can not block the connection with the client unit and can not bring the apparatus including the server unit into the power saving state. Since the device including the server unit can not transition to the power saving state, the client unit continues to send the keep-alive packet to the server unit of the apparatus including the client unit.

상기한 바와 같이, 서버 유닛과 클라이언트 유닛은 커넥션을 계속 유지해서, 전력 절약 상태로 이행할 수 없다.As described above, the server unit and the client unit can not keep transitioning to the power saving state by continuing the connection.

본 발명의 한 양태에 따르면, 정보 처리 장치는 명령어들의 세트를 저장하는 메모리 디바이스, 및 적어도 하나의 프로세서를 포함하며, 적어도 하나의 프로세서는 명령어들을 실행하여, 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 정보 처리 장치와 통신하기 위한 서버가 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치인지의 여부를 판정하고, 정보 처리 장치와 서버 사이의 통신 커넥션의 계속 유지와 관련하여, 정보 처리 장치가, 전력 절약 상태로의 이행 조건으로서, 서버가 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정된 경우와, 정보 처리 장치가, 전력 절약 상태로의 이행 조건으로서, 서버가 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치가 아니라고 판정된 경우 사이에서, 상이한 타입의 제어를 행한다.According to one aspect of the present invention, an information processing apparatus includes a memory device that stores a set of instructions, and at least one processor, wherein the at least one processor executes instructions to cause the information processing apparatus to perform a power- A determination is made as to whether or not the server for communicating with the information processing apparatus is required to be capable of transitioning to the power saving state as a transition condition to the information processing apparatus, When the information processing apparatus is determined to be a device that requires the server to be able to transition to the power saving state as a transition condition to the power saving state and when the information processing apparatus is in a state in which the server And a case in which it is determined that the device is not required to be able to shift to the power saving state, Type control.

본 발명의 추가의 특징은 첨부된 도면을 참조하여 이하의 예시적인 실시예의 설명으로부터 명백해질 것이다.Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the accompanying drawings.

도 1은 제1 실시예에 있어서의 정보 처리 시스템의 구성예를 도시하는 도면이다.
도 2는 다기능 주변 장치의 구성예를 도시하는 도면이다.
도 3은 클라이언트 애플리케이션의 모듈 구성을 도시하는 도면이다.
도 4는 서버 애플리케이션의 모듈 구성을 도시하는 도면이다.
도 5는 제1 실시예에 있어서의 클라이언트 애플리케이션에 의해 수행된 처리를 나타내는 흐름도이다.
도 6은 제1 실시예에 있어서의 서버 애플리케이션에 의해 수행된 처리를 나타내는 흐름도이다.
도 7은 제2 실시예에 있어서의 클라이언트 애플리케이션에 의해 수행된 처리를 나타내는 흐름도이다.
도 8은 제3 실시예에 있어서의 클라이언트 애플리케이션에 의해 수행된 처리를 나타내는 흐름도이다.
도 9는 제3 실시예에 있어서의 서버 애플리케이션에 의해 수행된 처리를 나타내는 흐름도이다.
도 10은 제4 실시예에 있어서의 서버 애플리케이션에 의해 수행된 처리를 나타내는 흐름도이다.
도 11은 제5 실시예에 있어서의 클라이언트 애플리케이션의 모듈 구성을 도시하는 도면이다.
도 12는 제5 실시예에 있어서의 클라이언트 애플리케이션에 의해 수행된 처리를 나타내는 흐름도이다.
1 is a diagram showing a configuration example of an information processing system in the first embodiment.
2 is a diagram showing a configuration example of a multifunction peripheral device.
3 is a diagram showing a module configuration of a client application.
4 is a diagram showing a module configuration of a server application.
5 is a flowchart showing the processing performed by the client application in the first embodiment.
6 is a flowchart showing the processing performed by the server application in the first embodiment.
7 is a flowchart showing the processing performed by the client application in the second embodiment.
Fig. 8 is a flowchart showing the processing performed by the client application in the third embodiment.
9 is a flowchart showing a process performed by the server application in the third embodiment.
10 is a flowchart showing the processing performed by the server application in the fourth embodiment.
11 is a diagram showing the module configuration of the client application in the fifth embodiment.
12 is a flowchart showing the processing performed by the client application in the fifth embodiment.

이하, 본 발명을 실시하기 위한 실시예에 대해서 도면을 참조해서 설명할 것이다.Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.

도 1은, 제1 실시예에 있어서의 설정 값 동기 시스템의 구성을 도시하는 도면이다. 도 1의 예에서는, 네트워크(100)에, 정보 처리 장치로서의 다기능 주변 장치(120a, 120b, 및 120c)가 접속된다. 다기능 주변 장치(120a) 내에는 서버(110)가 존재한다. 이하, 다기능 주변 장치(120a, 120b, 및 120c) 각각은 간단히 "다기능 주변 장치(120)"로서 지칭될 것이다.1 is a diagram showing the configuration of a set value synchronization system in the first embodiment. In the example of Fig. 1, the network 100 is connected with multifunction peripheral devices 120a, 120b, and 120c as information processing apparatuses. Within the multifunction peripherals 120a there is a server 110. Hereinafter, each of the multifunction peripherals 120a, 120b, and 120c will be referred to simply as "multifunction peripheral 120 ".

본 실시예에 있어서, "동기(synchronization)"는, 서버(110)가 관리하는 마스터 데이터(401) 및 다기능 주변 장치(120)가 관리하는 설정 데이터(311)의 한쪽이 갱신된 경우에, 다른 쪽에도 해당 갱신의 내용을 반영시켜서 그 내용을 공통 값으로 갱신하는 처리를 지칭한다. 본 실시예에서는, 서버(110)와 다기능 주변 장치(120) 사이에서 쌍 방향으로 설정 정보가 송신된다. 그러나, 본 발명은 그러한 방향들 중 단지 하나의 방향으로 설정 정보를 송신하는 시스템에도 적용 가능하다.In the present embodiment, "synchronization" means that, when one of the master data 401 managed by the server 110 and the setting data 311 managed by the multi-function peripheral device 120 is updated, Refers to the process of updating the content of the update to the common value by reflecting the content of the update. In the present embodiment, setting information is transmitted in the two directions between the server 110 and the multi-function peripheral device 120. [ However, the present invention is also applicable to systems that transmit configuration information in only one of those directions.

서버(110)는, 마스터 데이터(401)를 관리하여, 다기능 주변 장치(120)의 설정 값을 관리한다. 마스터 데이터(401)는 서버(110)가 관리하는 설정 정보이다. 마스터 데이터(401)가 갱신된 경우에, 서버(110)는 다기능 주변 장치(120)에 네트워크(100)를 통해 갱신 정보를 통지한다. 이러한 갱신 정보는, 마스터 데이터(401)의 갱신 내용을 나타내는 정보이다. 또한, 다기능 주변 장치(120)로부터 설정 값의 갱신 정보를 수신했을 경우에는, 서버(110)는 수신한 갱신 정보를 사용해서 마스터 데이터(401)의 값을 갱신한다. 본 실시예에 있어서, 서버(110)는 일반적인 HTTP(Hypertext Transfer Protocol) 서버로서 기능하고, HTTP/1.1의 킵-얼라이브 기능을 사용할 수 있다.The server 110 manages the master data 401 and manages setting values of the multifunction peripheral device 120. [ The master data 401 is setting information managed by the server 110. When the master data 401 has been updated, the server 110 notifies the multifunction peripheral 120 of the update information via the network 100. The update information is information indicating the update contents of the master data 401. Further, when the update information of the set value is received from the multi-function peripheral device 120, the server 110 updates the value of the master data 401 using the received update information. In this embodiment, the server 110 functions as a general HTTP (Hypertext Transfer Protocol) server and can use a keep-alive function of HTTP / 1.1.

다기능 주변 장치(120)는 복수 타입의 기능, 예를 들어 카피 기능 및 팩스 기능을 실현하는 화상 형성 장치이며, 그 내부에 이들 기능을 실행하는데 이용되는 설정 데이터(311)를 저장한다. 다기능 주변 장치(120) 대신에, 카피 기능, 팩스 기능, 또는 스캐너 기능 등, 단독 기능만을 갖는 화상 형성 장치가 사용될 수 있다.The multifunction peripheral device 120 is an image forming apparatus that realizes a plurality of types of functions, for example, a copy function and a fax function, and stores therein setting data 311 used for executing these functions. Instead of the multifunction peripheral device 120, an image forming apparatus having only a single function such as a copy function, a fax function, or a scanner function can be used.

클라이언트로서의 다기능 주변 장치(120)가 관리하는 설정 정보인 설정 데이터(311)가 갱신된 경우에, 다기능 주변 장치(120)는 서버(110)에 네트워크(100)를 통해 갱신 정보(제1 갱신 정보)를 통지한다. 이러한 갱신 정보는, 설정 데이터(311)의 갱신 내용을 나타내는 정보이다. 또한, 서버(110)로부터 마스터 데이터(401)의 갱신 정보(제2 갱신 정보)를 취득했을 경우에는, 클라이언트로서의 다기능 주변 장치(120)는, 취득한 갱신 정보를 사용하여, 다기능 주변 장치(120)가 관리하는 설정 데이터(311)의 내용을 갱신한다.When the setting data 311 that is the setting information managed by the multifunction peripheral device 120 as the client is updated, the multifunction peripheral device 120 sends the update information (the first update information ). This update information is information indicating the update contents of the setting data 311. When acquiring the update information (second update information) of the master data 401 from the server 110, the multifunction peripheral device 120 as a client uses the obtained update information to acquire the update information of the multifunction peripheral device 120 And updates the content of the setting data 311 managed by the management server 311. [

상기 구성에 의해, 서버(110)와 다기능 주변 장치(120)는 설정 데이터 동기 처리를 행한다. 서버(110)에 제1 갱신 정보를 통지하는 통지 처리 또는 제2 갱신 정보를 취득하는 취득 처리를 행하기 위해서, 다기능 주변 장치(120)는, 서버(110)와의 커넥션을 확립하는 처리를 행한다. 그 다음, 확립된 커넥션을 사용하여, 다기능 주변 장치(120)는, 제1 갱신 정보를 서버(110)에 통지하거나, 제2 갱신 정보를 서버(110)로부터 취득한다.With the above configuration, the server 110 and the multi-function peripheral device 120 perform setting data synchronization processing. The multi-function peripheral device 120 performs a process of establishing a connection with the server 110 in order to perform notification processing of notifying the server 110 of the first update information or acquisition processing of acquiring the second update information. Then, using the established connection, the multi-function peripheral device 120 notifies the server 110 of the first update information or acquires the second update information from the server 110. [

도 2는 본 실시예에 있어서의 다기능 주변 장치(120)의 구성을 나타내는 블록도이다. 다기능 주변 장치(120)는, 제어기 유닛(200), 조작 유닛(220), 스캐너(230), 및 프린터(240)를 포함하고 있다. 제어기 유닛(200)은, 조작 유닛(220)에 접속된다. 또한, 제어기 유닛(200)은, 화상 입력 디바이스인 스캐너(230), 및 화상 출력 디바이스인 프린터(240)에 접속된다.2 is a block diagram showing the configuration of the multi-function peripheral device 120 in the present embodiment. The multifunction peripheral device 120 includes a controller unit 200, an operation unit 220, a scanner 230, and a printer 240. The controller unit 200 is connected to the operation unit 220. Further, the controller unit 200 is connected to the scanner 230 which is an image input device, and the printer 240 which is an image output device.

제어기 유닛(200)은, CPU(Central Processing Unit)(202)를 포함한다. CPU(202)는, ROM(Read Only Memory)(206)에 저장되어 있는 부트 프로그램(boot program)을 실행해서 OS(Operation System)를 기동한다. CPU(202)는, 이 OS 상에서, HDD(Hard Disk Drive)(205)에 저장되어 있는 애플리케이션 프로그램을 실행해서 각종 처리를 실행한다. 이 CPU(202)의 작업 영역으로서는 RAM(Random Access Memory)(203)이 사용된다. 또한, RAM(203)은, 작업 영역을 제공함하고, 또한 화상 데이터를 일시 저장하기 위한 화상 메모리 영역을 제공한다. HDD(205)는, 상기 애플리케이션 프로그램, 화상 데이터, 및 다양한 설정 값을 저장한다.The controller unit 200 includes a CPU (Central Processing Unit) The CPU 202 executes a boot program stored in a ROM (Read Only Memory) 206 to start an operating system (OS). The CPU 202 executes an application program stored in the HDD (Hard Disk Drive) 205 and executes various processes on the OS. A RAM (Random Access Memory) 203 is used as a work area of the CPU 202. In addition, the RAM 203 provides a work area and also provides an image memory area for temporarily storing image data. The HDD 205 stores the application program, image data, and various setting values.

CPU(202)에는, 시스템 버스(210)를 통해, ROM(206) 및 RAM(203)과 함께, 조작 유닛 인터페이스(I/F)(201), 디바이스 I/F(204), 네트워크 I/F(207), 및 화상 처리 유닛(208)이 접속된다. 조작 유닛 I/F(201)는, 터치 패널을 포함하는 조작 유닛(220)과의 인터페이스이다. 조작 유닛 I/F(201)는, 조작 유닛(220)에 표시해야 할 화상 데이터를 조작 유닛(220)에 출력한다. 또한, 조작 유닛 I/F(201)는, 조작 유닛(220)을 통해 유저가 입력한 정보를 CPU(202)에 송신한다. 디바이스 I/F(204)에는, 스캐너(230) 및 프린터(240)가 접속된다. 네트워크 I/F(207)는, 네트워크(100)에 접속되고, 네트워크(100)를 통해 네트워크(100) 상의 장치에 대해 정보를 입출력한다. 화상 처리 유닛(208)은, 스캐너(230)로부터 입력된 화상에 대한 처리, 프린터(240)에 출력할 화상에 대한 처리, 및 화상 회전, 화상 압축, 해상도 변환, 색 공간 변환, 및 계조 변환을 행한다.The CPU 202 is connected to the operation unit interface (I / F) 201, the device I / F 204, the network I / F 201, An image processing unit 207, and an image processing unit 208 are connected. The operation unit I / F 201 is an interface with the operation unit 220 including a touch panel. The operation unit I / F 201 outputs image data to be displayed on the operation unit 220 to the operation unit 220. [ Further, the operation unit I / F 201 transmits the information input by the user to the CPU 202 via the operation unit 220. [ To the device I / F 204, a scanner 230 and a printer 240 are connected. The network I / F 207 is connected to the network 100 and inputs / outputs information to / from the devices on the network 100 via the network 100. The image processing unit 208 performs processing for the image input from the scanner 230, processing for the image to be output to the printer 240, and image rotation, image compression, resolution conversion, color space conversion, I do.

ROM(206) 또는 HDD(205)에는, 클라이언트 애플리케이션(300) 및 서버 애플리케이션(400)이 저장된다. 다기능 주변 장치(120)의 CPU(202)는 클라이언트 애플리케이션(300)을 실행함으로써 서버(110)의 클라이언트로서의 기능을 실현한다. 또한, 다기능 주변 장치(120)의 CPU(202)는, 서버 애플리케이션(400)을 인에이블해서 실행함으로써 서버(110)로서도 기능할 수 있다. 유저는 서버 애플리케이션(400)을 인에이블할 지의 여부를 변경할 수 있다.In the ROM 206 or the HDD 205, the client application 300 and the server application 400 are stored. The CPU 202 of the multifunction peripheral 120 realizes the function of the server 110 as a client by executing the client application 300. [ The CPU 202 of the multi-function peripheral device 120 can also function as the server 110 by enabling and executing the server application 400. [ The user can change whether or not to enable the server application 400. [

본 실시예에서, 서버 애플리케이션(400)은 다기능 주변 장치(120a) 상에서 인에이블된다. 또한, 다기능 주변 장치(120a)는 클라이언트 애플리케이션(300)도 실행한다. 다기능 주변 장치(120a)는 서버(110)로서 동작하고 서버(110)의 클라이언트로서도 동작한다.In this embodiment, the server application 400 is enabled on the multifunction peripheral 120a. Multifunction peripheral 120a also executes client application 300. [ The multifunction peripheral device 120a operates as a server 110 and also acts as a client of the server 110. [

본 실시예에서, 다기능 주변 장치(120b 및 120c)는 클라이언트 애플리케이션(300)만을 실행하고, 서버 애플리케이션(400)은 다기능 주변 장치(120b 및 120c) 상에서 디스에이블된다. 다기능 주변 장치(120b 및 120c)는, 서버(110)의 클라이언트로서도 동작한다.In this embodiment, the multifunction peripherals 120b and 120c execute only the client application 300, and the server application 400 is disabled on the multifunction peripherals 120b and 120c. The multifunction peripherals 120b and 120c also operate as a client of the server 110.

이어서, 클라이언트로서의 다기능 주변 장치(120)의 기능을 실현하기 위한 클라이언트 애플리케이션(300)의 구성에 대해서 도 3을 참조해서 설명한다. 클라이언트 애플리케이션(300)은, ROM(206) 또는 HDD(205) 등의 저장 유닛에 유지되고, CPU(202)에 의해 판독되어 실행된다.Next, the configuration of the client application 300 for realizing the function of the multifunction peripheral device 120 as a client will be described with reference to Fig. The client application 300 is held in a storage unit such as the ROM 206 or the HDD 205 and read and executed by the CPU 202. [

도 3을 참조하여, 다기능 주변 장치(120)에 의해 실행되는 클라이언트 애플리케이션(300)의 구성에 대해서 설명한다.3, the configuration of the client application 300 executed by the multi-function peripheral device 120 will be described.

설정 데이터 관리 유닛(310)은, 다기능 주변 장치(120)의 설정 데이터(311)를 관리한다. 설정 데이터(311)는, 클라이언트로서 다기능 주변 장치(120)가 동작할 때 사용할 다양한 설정 값을 포함한다. 설정 데이터(311)는 예를 들어, 주소록 정보, 및 각각의 유저마다 커스터마이즈된 설정 값을 포함한다. 다기능 주변 장치(120)의 각각의 유저마다 커스터마이즈된 설정 값은 예를 들어, 조작 화면 상의 버튼 배치 및 표시 언어의 설정 값을 포함한다. 설정 데이터(311)는, HDD(205), RAM(203), 또는 ROM(206) 등의 저장 유닛에 저장된다.The setting data managing unit 310 manages the setting data 311 of the multi-function peripheral device 120. [ The setting data 311 includes various setting values to be used when the multifunction peripheral 120 operates as a client. The setting data 311 includes, for example, address book information, and setting values customized for each user. The setting values customized for each user of the multifunction peripheral 120 include, for example, button layout on the operation screen and setting values of the display language. The setting data 311 is stored in a storage unit such as the HDD 205, the RAM 203, or the ROM 206. [

통신 제어 유닛(320)이 서버(110)로부터 마스터 데이터(401)의 갱신 정보를 취득한 경우에, 설정 데이터 관리 유닛(310)은, 취득한 갱신 정보를 설정 데이터(311)에 반영시키는 제어를 행한다. 또한, 설정 데이터(311)가 다기능 주변 장치(120)에 있어서 갱신된 경우에, 설정 데이터 관리 유닛(310)은, 설정 데이터(311)의 갱신 내용을 나타내는 갱신 정보를 서버(110)의 마스터 데이터(401)에 반영시키는 처리를 통신 제어 유닛(320)에 실행시킨다.When the communication control unit 320 acquires the update information of the master data 401 from the server 110, the setting data managing unit 310 controls to reflect the acquired update information in the setting data 311. [ When the setting data 311 is updated in the multifunction peripheral device 120, the setting data managing unit 310 updates the updating information indicating the updating contents of the setting data 311 to the master data of the server 110 To the communication control unit (320).

통신 제어 유닛(320)은, 네트워크 I/F(207)를 제어해서 또 다른 장치와 통신한다. 통신 제어 유닛(320)은 제어 유닛(321) 및 통신 처리 유닛(322)을 포함한다. 제어 유닛(321)은 서버(110)와의 설정 값 동기 처리를 제어한다. 통신 처리 유닛(322)은, 네트워크 I/F(207)를 통해 통신 처리를 제어한다. 통신 처리 유닛(322)은, 통신 처리 유닛(422)과 협동하여, 서버(110)와 정보 처리 장치 사이의 통신 커넥션(이하, "커넥션")을 확립하기 위한 처리를 실행한다. 예를 들어, 통신 제어 유닛(320)은, TCP(Transmission Control Protocol)의 절차에 따라서 커넥션을 확립하거나 해제할 수 있다. 그러나, 본 발명은 이것에 제한되지 않는다. 이하, 커넥션을 확립하는 처리는, 보통 "커넥션의 접속"으로 지칭된다. 커넥션을 해제하는 처리는, 보통 "커넥션의 차단"으로 지칭된다. 또한, 본 실시예에 있어서, "커넥션"은, 다기능 주변 장치(120)와 서버(110) 사이에서 확립되는 가상 통신 채널을 지칭한다. 일단 미리 결정된 통신 절차를 실행해서 다기능 주변 장치(120)와 서버(110) 사이에 커넥션을 확립하면, 다기능 주변 장치(120)와 서버(110)는 이후의 통신에서는 간단한 절차에 의해 서로 데이터를 송수신할 수 있다.The communication control unit 320 controls the network I / F 207 to communicate with another device. The communication control unit 320 includes a control unit 321 and a communication processing unit 322. [ The control unit 321 controls setting value synchronization processing with the server 110. [ The communication processing unit 322 controls the communication processing through the network I / F 207. [ The communication processing unit 322 cooperates with the communication processing unit 422 to execute processing for establishing a communication connection (hereinafter, "connection") between the server 110 and the information processing apparatus. For example, the communication control unit 320 can establish or release the connection according to the procedure of TCP (Transmission Control Protocol). However, the present invention is not limited to this. Hereinafter, the process for establishing a connection is usually referred to as "connection of a connection ". The process of releasing the connection is usually referred to as "blocking of the connection ". Also, in this embodiment, "connection" refers to a virtual communication channel that is established between the multifunction peripheral 120 and the server 110. Once the predetermined communication procedure is executed to establish a connection between the multifunction peripheral device 120 and the server 110, the multifunction peripheral device 120 and the server 110 send and receive data to each other can do.

통신 제어 유닛(320)은, 서버(110)와의 설정 값 동기 통신을 제어한다. 또한, 제어 유닛(321)은, 통신 처리 유닛(322)에 의해 서버(110)로부터 취득한 마스터 데이터(401)의 갱신 정보를 수신한다. 제어 유닛(321)은, 수신한 마스터 데이터(401)의 갱신 정보를 설정 데이터(311)에 반영시키도록 설정 데이터 관리 유닛(310)에 요구한다. 또한, 통신 제어 유닛(320)은, 서버(110)가, 통신 제어 유닛(320)이 동작하고 있는 다기능 주변 장치(120) 내에 배치되어 있는 지의 여부를 판정하는 처리를 행한다. 즉, 통신 제어 유닛(320)은, 통신 제어 유닛(320)이 동작하고 있는 다기능 주변 장치(120)가, 서버(110)와 일체로서 구성된 장치인지의 여부를 판정한다. 본 실시예에서는, 다기능 주변 장치(120)가 서버(110)와 일체로서 구성된 장치인 경우에, 다기능 주변 장치(120)는, 다기능 주변 장치(120)가, 전력 절약 상태로의 이행 조건으로서, 서버(110)가 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정(제1 판정)한다. 또한, 본 실시예에서는, 서버(110)와 다기능 주변 장치(120)가 상이한 장치인 경우에, 다기능 주변 장치(120)는, 다기능 주변 장치(120)가, 전력 절약 상태로의 이행 조건으로서, 서버가 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치가 아니라고 판정(제2 판정)한다. 상기 정보 처리 장치와 상기 서버(110) 사이의 통신 커넥션의 유지에 대해서, 다기능 주변 장치(120)는, 제1 판정을 했을 경우와 제2 판정을 했을 경우 사이에서 상이한 타입의 제어를 행한다. 판정 처리의 예는, 도 5를 참조해서 후술한다.The communication control unit 320 controls the set value synchronous communication with the server 110. [ The control unit 321 also receives update information of the master data 401 acquired from the server 110 by the communication processing unit 322. [ The control unit 321 requests the setting data management unit 310 to reflect the update information of the received master data 401 in the setting data 311. [ The communication control unit 320 also performs processing for determining whether or not the server 110 is disposed in the multifunction peripheral device 120 in which the communication control unit 320 is operating. That is, the communication control unit 320 determines whether or not the multifunction peripheral 120 in which the communication control unit 320 is operating is a device configured integrally with the server 110. [ In the present embodiment, when the multi-function peripheral device 120 is an apparatus configured integrally with the server 110, the multi-function peripheral device 120 is configured such that the multi-function peripheral device 120 is a transition condition to the power- (First judgment) that the server 110 is required to be able to transition to the power saving state. Also, in the present embodiment, when the server 110 and the multifunction peripheral 120 are different apparatus, the multifunction peripheral 120 is configured so that the multifunction peripheral 120 is capable of executing, as a transition condition to the power saving state, (Second judgment) that it is not a device which requires the server to be able to shift to the power saving state. The multifunction peripheral device 120 performs different types of control between the case of performing the first determination and the case of performing the second determination with respect to the maintenance of the communication connection between the information processing apparatus and the server 110. [ An example of the determination processing will be described later with reference to Fig.

이어서, 서버(110)의 기능을 실현하기 위한 서버 애플리케이션(400)의 구성에 대해서 도 4를 참조해서 설명한다. 서버 애플리케이션(400)은, RAM(203), HDD(205), 또는 ROM(206) 등의 저장 유닛에 저장되어, CPU(202)에 의해 실행된다. 마스터 데이터 관리 유닛(410)은, 마스터 데이터(401)를 관리한다. 통신 제어 유닛(420)으로부터의 지시에 따라서, 마스터 데이터 관리 유닛(410)은, 마스터 데이터(401)의 갱신 정보를 판독하거나, 마스터 데이터(401)를 갱신한다.Next, the configuration of the server application 400 for realizing the function of the server 110 will be described with reference to FIG. The server application 400 is stored in a storage unit such as the RAM 203, the HDD 205 or the ROM 206 and is executed by the CPU 202. [ The master data management unit 410 manages the master data 401. The master data management unit 410 reads the update information of the master data 401 or updates the master data 401 in accordance with an instruction from the communication control unit 420. [

마스터 데이터 관리 유닛(410)은, 통신 제어 유닛(420)이 클라이언트 애플리케이션(300)으로부터 수신한 갱신 정보를 마스터 데이터(401)에 반영하는 처리를 행한다. 또한, 통신 제어 유닛(420)이 클라이언트 애플리케이션(300)으로부터 마스터 데이터(401)의 갱신 정보 취득 요구를 수신한 경우에, 마스터 데이터 관리 유닛(410)은, 마스터 데이터(401)의 갱신 정보를 생성하고, 이 갱신 정보를 통신 제어 유닛(420)에 통지하는 처리를 행한다. 마스터 데이터 관리 유닛(410)이 관리하는 마스터 데이터(401)는, HDD(205), RAM(203), 또는 ROM(206) 등의 저장 유닛에 보존된다.The master data management unit 410 performs processing for reflecting the update information received from the client application 300 by the communication control unit 420 in the master data 401. [ When the communication control unit 420 receives the update information acquisition request of the master data 401 from the client application 300, the master data management unit 410 generates the update information of the master data 401 And notifies the communication control unit 420 of the update information. The master data 401 managed by the master data managing unit 410 is stored in a storage unit such as the HDD 205, the RAM 203, or the ROM 206. [

통신 제어 유닛(420)은, 네트워크 I/F(207)를 통해 통신을 제어한다. 통신 제어 유닛(420)은, 제어 유닛(421) 및 통신 처리 유닛(422)을 포함한다. 제어 유닛(421)은, 클라이언트 애플리케이션(300)과의 설정 값 동기 처리를 제어한다. 통신 처리 유닛(422)은, 네트워크 I/F(207)를 통해 통신 처리를 제어한다.The communication control unit 420 controls the communication via the network I / F 207. [ The communication control unit 420 includes a control unit 421 and a communication processing unit 422. [ The control unit 421 controls set value synchronization processing with the client application 300. [ The communication processing unit 422 controls the communication processing through the network I / F 207. [

통신 처리 유닛(422)이 클라이언트 애플리케이션(300)으로부터 설정 데이터(311)의 갱신 정보를 수신한 경우에, 제어 유닛(421)은, 수신한 갱신 정보를 마스터 데이터 관리 유닛(410)에 통지한다. 또한, 통신 처리 유닛(422)이 클라이언트 애플리케이션(300)으로부터 마스터 데이터(401)의 갱신 정보 취득 요구를 수신한 경우에, 제어 유닛(421)은, 마스터 데이터 관리 유닛(410)으로부터 마스터 데이터(401)의 갱신 정보를 취득한다. 그 다음, 제어 유닛(421)은, 취득한 갱신 정보를 클라이언트 애플리케이션(300)에 송신하도록 통신 처리 유닛(422)에 지시한다.When the communication processing unit 422 receives the update information of the setting data 311 from the client application 300, the control unit 421 notifies the master data managing unit 410 of the received update information. When the communication processing unit 422 receives the update information acquisition request of the master data 401 from the client application 300, the control unit 421 acquires the master data 401 Of the update information. Then, the control unit 421 instructs the communication processing unit 422 to transmit the obtained update information to the client application 300. [

통신 처리 유닛(422)은, 클라이언트 애플리케이션(300)과의 통신 처리를 실행한다. 통신 처리 유닛(422)은, 통신 처리 유닛(322)과 협동해서, 서버(110)와 정보 처리 장치 사이의 통신 커넥션을 확립하는 처리를 실행한다. 예를 들어, 통신 처리 유닛(422)은, TCP에 의해 규정되는 미리 결정된 절차에 따라, 다기능 주변 장치(120)와의 커넥션을 확립하거나 해제한다.The communication processing unit 422 executes communication processing with the client application 300. [ The communication processing unit 422 cooperates with the communication processing unit 322 to execute processing for establishing a communication connection between the server 110 and the information processing apparatus. For example, the communication processing unit 422 establishes or releases a connection with the multifunction peripheral 120 according to a predetermined procedure defined by TCP.

본 실시예에 따라, 서버(110)와 다기능 주변 장치(120) 사이의 통신 커넥션의 유지와, 서버(110) 및 다기능 주변 장치(120)가 전력 절약 상태로 이행하는 이행 처리 간의 관계에 대해서 설명한다.The relationship between the maintenance of the communication connection between the server 110 and the multifunction peripheral device 120 and the transition process in which the server 110 and the multifunction peripheral device 120 are shifted to the power saving state will be described do.

서버(110)가 클라이언트로서의 다기능 주변 장치(120)로부터, 커넥션을 계속 유지(keep)(유지(maintain))하도록 서버(110)에 요구하는 통지를 수신하지 않으면, 서버(110)는 다기능 주변 장치(120)와의 커넥션을 차단한다. 커넥션을 계속 유지하도록 서버(110)에 요구하는 통지는, 후술하는 킵-얼라이브 통신을 행하도록 서버(110)에 요구하는 통지이다. 다기능 주변 장치(120)가 서버(110)로서 동작하고 있는 경우에는, 관리 대상으로서의 모든 다기능 주변 장치(120)와의 커넥션이 차단되는 것을 조건으로 해서, 다기능 주변 장치(120)는 다기능 주변 장치(120)가 전력 절약 상태로 이행 가능하다고 판정한다.If the server 110 does not receive a notification from the multifunction peripheral 120 as a client that requests the server 110 to continue to maintain the connection, (120). A notification to the server 110 to keep the connection maintained is a notification to the server 110 to perform keep-alive communication, which will be described later. The multifunction peripherals 120 may be connected to the multifunction peripherals 120 on condition that the connection to all the multifunction peripherals 120 to be managed is blocked if the multifunction peripheral 120 is operating as the server 110. [ ) Is in the power saving state.

또한, 장치가 전력 절약 상태로 이행하기 위한 조건을 만족한 경우, 클라이언트로서의 다기능 주변 장치(120)는, 커넥션을 계속 유지하도록 서버(110)에 요구하는 통지의 송신을 중지하고, 서버(110)와의 커넥션을 해제한다. 장치가 전력 절약 상태로 이행하기 위한 조건의 예는, 다기능 주변 장치(120)에 있어서 미리 결정된 처리가 미리 결정된 기간에 실행되지 않는 조건을 포함한다. 미리 결정된 처리의 예는, 인쇄 처리, 스캔 처리, 및 팩스 처리를 포함한다. 또한, 본 실시예에서는, 다기능 주변 장치(120)와 일체로서 구성된 서버(110)가, 적어도 하나의 다기능 주변 장치(120)와 커넥션을 계속 유지하고 있는 경우에도, 미리 결정된 처리가 실행되고 있다고 판정한다. 이 적어도 하나의 다기능 주변 장치(120)는, 서버(110)와 일체로 된 장치로서 구성된 클라이언트로서의 다기능 주변 장치(120)도 포함한다.When the device satisfies the condition for shifting to the power saving state, the multi-function peripheral device 120 as a client stops transmitting the notification requesting the server 110 to keep the connection, Lt; / RTI > An example of a condition for the device to transition to the power saving state includes a condition in which the predetermined processing in the multifunction peripheral device 120 is not executed in a predetermined period. Examples of the predetermined processing include print processing, scan processing, and facsimile processing. In the present embodiment, even when the server 110 constituted integrally with the multi-function peripheral device 120 keeps a connection with at least one multi-function peripheral device 120, it is determined that a predetermined process is being executed do. The at least one multifunction peripheral 120 also includes a multifunction peripheral 120 as a client that is configured as a device integral with the server 110.

예를 들어, 서버 기능이 다기능 주변 장치(120)에 인에이블되어 있지 않는 경우에, 그리고 실행 중 또는 대기 중인 작업이 없고, 조작의 접수도 없는 상태에서 미리 결정된 시간이 경과하면, 다기능 주변 장치(120)는 서버(110)와의 커넥션을 계속 유지하고 있는지의 여부와 관계없이, 전력 절약 상태로 이행한다.For example, if the server function is not enabled in the multifunction peripherals 120, and there is no running or waiting job, and a predetermined amount of time has elapsed without the receipt of an operation, the multifunction peripheral 120 120 shifts to the power saving state regardless of whether or not the connection to the server 110 is maintained.

또한, 예를 들어, 다기능 주변 장치(120)가 서버(110)로서도 동작하고 있는 경우에는, 이하의 조건하에서 다기능 주변 장치(120)가 전력 절약 상태로 이행한다. 즉, 실행 중 또는 대기 중인 작업이 없고, 조작의 접수도 없는 상태에서 미리 결정된 시간이 경과하고, 또한 서버(110)가 또 다른 다기능 주변 장치(120)와의 커넥션을 계속 유지하고 있지 않는 경우에, 다기능 주변 장치(120)는 전력 절약 상태로 이행한다.Further, for example, when the multifunction peripheral device 120 is also operating as the server 110, the multifunction peripheral device 120 shifts to the power saving state under the following conditions. That is, when there is no running or waiting job, a predetermined period of time has elapsed without receiving an operation, and the server 110 has not maintained the connection with another multifunction peripheral 120, The multi-function peripheral device 120 shifts to a power saving state.

다음으로, 클라이언트로서의 다기능 주변 장치(120)의 동작에 대해서, 도 5를 참조해서 설명한다. 도 5에 도시한 처리는, CPU(202)가 HDD(205) 또는 ROM(206)으로부터 판독한 클라이언트 애플리케이션(300)을 실행함으로써 실현된다.Next, the operation of the multifunction peripheral device 120 as a client will be described with reference to FIG. 5 is realized by executing the client application 300 read from the HDD 205 or the ROM 206 by the CPU 202. [

도 5의 흐름도는, 다기능 주변 장치(120)에 있어서 미리 결정된 동기 개시 조건이 만족되었을 경우에 개시된다. 동기 개시 조건은, 예를 들어, 클라이언트 애플리케이션(300)이 서버 애플리케이션(400)에 마스터 데이터(401)의 설정 정보(예를 들어, 갱신 정보)를 취득하도록 요구하는 경우에 만족된다. 또한, 동기 개시 조건은, 예를 들어, 다기능 주변 장치(120)에 있어서 설정 데이터(311)가 갱신된 경우에 만족된다. 흐름도는, 다기능 주변 장치(120)와 서버(110) 사이에서 설정 값을 동기시키기 위한 임의의 다른 타이밍에서 개시될 수 있고, 그 조건의 내용은 중요하지 않다.The flowchart of FIG. 5 is started when a predetermined synchronization start condition is satisfied in the multifunction peripheral device 120. FIG. The synchronization start condition is satisfied when, for example, the client application 300 requests the server application 400 to acquire the setting information (for example, update information) of the master data 401. The synchronization start condition is satisfied when, for example, the setting data 311 in the multifunction peripheral device 120 is updated. The flow chart may be initiated at any other timing for synchronizing the settings between the multifunction peripheral 120 and the server 110, and the content of the conditions is not critical.

먼저, 단계 S500에서, 제어 유닛(321)은, 서버(110)와의 커넥션이 계속 유지되고 있는지를 판정한다. 서버(110)와의 커넥션이 계속 유지되고 있다고 판정된 경우(단계 S500에서, 예), 처리는 단계 S550으로 진행한다. 한편, 서버(110)와의 커넥션이 계속 유지되고 있지 않다고 판정된 경우(단계 S500에서, 아니오), 처리는 단계 S510으로 진행한다. 단계 S500의 판정은, 예를 들어 HTTP의 킵-얼라이브의 메커니즘을 사용한 커넥션 관리 방법에 따라 행해질 수 있지만, 판정 방법은 특별히 한정되지 않는다.First, in step S500, the control unit 321 determines whether or not the connection with the server 110 is maintained. If it is determined that the connection with the server 110 is maintained (YES in step S500), the process proceeds to step S550. On the other hand, if it is determined that the connection with the server 110 is not maintained (NO in step S500), the process proceeds to step S510. The determination in step S500 may be made in accordance with, for example, a connection management method using a keep-alive mechanism of HTTP, but the determination method is not particularly limited.

단계 S510에 있어서, 제어 유닛(321)은, 서버(110)의 어드레스 정보를 판독한다. 이러한 어드레스 정보는, 클라이언트 애플리케이션(300)이 서버 애플리케이션(400)과 통신하기 위해서 사용할 통신 어드레스이다. 다기능 주변 장치(120)가 접속해야 할 서버(110)의 어드레스 정보는, 예를 들어 관리자에 의해 미리 다기능 주변 장치(120)에 등록되어 있다. 본 실시예에서는, 다기능 주변 장치(120)가 접속해야 할 서버(110)의 어드레스 정보는, 설정 데이터(311)의 일부로서 클라이언트 애플리케이션(300)에 의해 관리된다.In step S510, the control unit 321 reads the address information of the server 110. [ This address information is a communication address that the client application 300 will use to communicate with the server application 400. The address information of the server 110 to which the multifunction peripheral 120 is to be connected is registered in the multifunction peripheral 120 in advance, for example, by an administrator. In this embodiment, the address information of the server 110 to which the multi-function peripheral device 120 is to be connected is managed by the client application 300 as part of the setting data 311. [

다음으로, 단계 S520에 있어서, 단계 S510에서 취득한 어드레스 정보를 사용하여, 제어 유닛(321)은, 서버(110)의 서버 애플리케이션(400)과의 커넥션을 확립하는 제어를 행한다. 제어 유닛(321)은, 통신 처리 유닛(322)을 제어하여, 서버 애플리케이션(400)과의 커넥션을 확립하는 처리를 실행시킨다.Next, in step S520, the control unit 321 performs control for establishing a connection with the server application 400 of the server 110, using the address information acquired in step S510. The control unit 321 controls the communication processing unit 322 to execute a process of establishing a connection with the server application 400. [

다음으로, 단계 S530에 있어서, 제어 유닛(321)은, 서버 애플리케이션(400)이, 클라이언트 애플리케이션(300)을 실행하는 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있는지의 여부를 판정한다. 단계 S510에서 취득한 서버(110)의 어드레스 정보에 기초하여, 제어 유닛(321)은, 단계 S530의 판정 처리를 행한다.Next, in step S530, the control unit 321 determines whether the server application 400 is enabled on the same device as the multifunction peripheral device 120 that executes the client application 300. [ Based on the address information of the server 110 acquired in step S510, the control unit 321 performs the determination processing in step S530.

예를 들어, 미리 결정된 값 "localhost"이 서버(110)의 어드레스 정보로서 설정되어 있는 경우에, 제어 유닛(321)은, 서버 애플리케이션(400)이 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있다고 판정한다. 또한, 예를 들어, 로컬 루프백 어드레스와 같은 미리 결정된 값이 서버(110)의 어드레스 정보로서 설정되어 있는 경우에, 제어 유닛(321)은, 서버 애플리케이션(400)이 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있다고 판정한다. 로컬 루프백 어드레스로서, 예를 들어, "127.0.0.1", "::1", 또는 "OnThisDevice"가 사용될 수 있다. 한편, 서버(110)의 어드레스 정보가 미리 결정된 값이 아닐 경우에, 제어 유닛(321)은 서버(110)가 다기능 주변 장치(120)와는 상이한 장치로서 구성되어 있다고 판정한다.For example, when the predetermined value "localhost" is set as the address information of the server 110, the control unit 321 determines whether the server application 400 is enabled on the same device as the multifunction peripheral 120 . Also, for example, when a predetermined value, such as a local loopback address, is set as the address information of the server 110, the control unit 321 determines whether the server application 400 is the same as the multifunction peripheral 120 It is determined that it is enabled on the device. As the local loopback address, for example, "127.0.0.1 "," :: 1 ", or "OnThisDevice" On the other hand, when the address information of the server 110 is not a predetermined value, the control unit 321 determines that the server 110 is configured as a device different from the multifunction peripheral device 120. [

대안적으로, 예를 들어, 다기능 주변 장치(120)의 클라이언트 애플리케이션(300)이 관리하고 있는 다기능 주변 장치(120)의 IP(Internet Protocol) 어드레스를, 단계 S510에서 취득한 서버(110)의 IP 어드레스와 비교함으로써 단계 S530에서의 판정이 행해질 수 있다. IP 어드레스들이 서로 일치한 경우에, 제어 유닛(321)은, 서버 애플리케이션(400)이 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있다고 판정한다. 한편, IP 어드레스들이 서로 일치하지 않는 경우에, 제어 유닛(321)은, 서버 애플리케이션(400)이 다기능 주변 장치(120)와는 상이한 장치에 의해 실행된다고 판정한다.Alternatively, the IP (Internet Protocol) address of the multifunction peripheral 120 managed by the client application 300 of the multifunction peripheral 120 may be stored in the IP address of the server 110 acquired in step S510 The determination in step S530 can be made. If the IP addresses match, the control unit 321 determines that the server application 400 is enabled on the same device as the multifunction peripheral device 120. [ On the other hand, when the IP addresses do not coincide with each other, the control unit 321 determines that the server application 400 is executed by a device different from the multifunction peripheral device 120. [

또한 대안적으로, 예를 들어, 다기능 주변 장치(120)가 다기능 주변 장치(120) 자체의 서버 애플리케이션(400)의 서버 기능을 인에이블했을 때, 다기능 주변 장치(120)는, 미리 결정된 저장 영역에, 서버 기능이 인에이블되는(예를 들어, 서버 기능의 인에이블링 플래그가 온이 되는) 것을 나타내는 정보를 저장할 수 있다. 제어 유닛(321)은, 제어 유닛(321)이 동작하고 있는 다기능 주변 장치(120)의 서버 기능이 인에이블되는 것을 나타내는 정보가 미리 결정된 저장 영역에 저장되어 있는지를 판정함으로써 단계 S530에서의 판정을 행할 수 있다.Alternatively, when, for example, the multifunction peripheral 120 has enabled the server function of the server application 400 of the multifunction peripheral 120 itself, the multifunction peripheral 120 may determine whether the multi- , Information indicating that the server function is enabled (e.g., the enabling flag of the server function is turned on) may be stored. The control unit 321 determines whether or not the information indicating that the server function of the multifunction peripheral 120 on which the control unit 321 is operating is enabled is stored in the predetermined storage area, .

단계 S530에 있어서, 서버(110)가 다기능 주변 장치(120)와 동일한 장치로서 구성되어 있다고 판정했을 경우(단계 S530에서, 예), 처리는 단계 S540로 진행한다. 즉, 판정 결과가, 서버 애플리케이션(400)이 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있는 것을 나타내는 사실에 따라, 처리는 단계 S540로 진행한다. 또한, 단계 S530에 있어서, 판정 결과가, 서버(110)가 다기능 주변 장치(120)와는 상이한 장치로서 구성되어 있는 것을 나타내는 사실에 따라(단계 S530에서, 아니오), 처리는 단계 S550으로 진행한다.If it is determined in step S530 that the server 110 is configured as the same device as the multifunction peripheral device 120 (YES in step S530), the process proceeds to step S540. That is, according to the fact that the determination result indicates that the server application 400 is enabled on the same device as the multifunction peripheral device 120, the process proceeds to step S540. In step S530, the process proceeds to step S550 according to the fact that the determination result is that the server 110 is configured as a device different from the multifunction peripheral device 120 (step S530, NO).

본 실시예에서는, 서버(110)의 기능이 인에이블되는 다기능 주변 장치(120a)의 처리로서 도 5의 플로우가 실시되는 경우에, 단계 S530에 있어서 서버(110)가 다기능 주변 장치(120)와 동일한 장치로서 구성되어 있다고 판정된다. 한편, 서버(110)의 기능이 인에이블되어 있지 않은 다기능 주변 장치(120b 또는 120c)의 처리로서 도 5의 플로우가 실시되는 경우에, 단계 S530에서는 서버(110)가 다기능 주변 장치(120)와는 상이한 장치로서 구성되어 있다고 판정된다. 다기능 주변 장치(120b 또는 120c)가 서버(110)의 기능(서버 애플리케이션(400))을 갖지 않는 경우에도 동일하게 적용된다.5 is performed as the processing of the multifunction peripheral 120a in which the function of the server 110 is enabled in the present embodiment, the server 110 is connected to the multifunction peripheral 120 and the multi- It is determined that they are configured as the same apparatus. 5 is executed as the processing of the multifunction peripheral 120b or 120c in which the function of the server 110 is not enabled, in step S530, the server 110 is connected to the multifunction peripheral 120 It is determined that it is configured as a different apparatus. The same applies even when the multifunction peripheral 120b or 120c does not have the function of the server 110 (the server application 400).

단계 S540에서는, 제어 유닛(321)은, 통신 처리 유닛(322)을 제어해서 서버 애플리케이션(400)에 동기 요구를 송신시킨다. 단계 S540에서 송신된 동기 요구는, 동기 통신이 종료한 후에 서버 애플리케이션(400)과의 커넥션을 해제하는 것을 나타내는 정보를 포함한다.In step S540, the control unit 321 controls the communication processing unit 322 to transmit a synchronization request to the server application 400. [ The synchronization request transmitted in step S540 includes information indicating that the connection with the server application 400 is released after the synchronous communication is terminated.

이러한 동기 통신은, 마스터 데이터(401)의 갱신 내용을 나타내는 갱신 정보의 취득 요구를 서버 애플리케이션(400)에 송신하고, 그 요구에 응답하여, 서버 애플리케이션(400)으로부터 갱신 정보를 취득하는 통신 처리를 포함한다. 또한, 이러한 동기 통신은, 클라이언트 애플리케이션(300)이 관리하는 설정 데이터(311)의 갱신 내용을 나타내는 갱신 정보를 서버 애플리케이션(400)에 송신하는 통신 처리를 포함한다.In this synchronous communication, a request to acquire update information indicating the update content of the master data 401 is transmitted to the server application 400, and in response to the request, communication processing for acquiring update information from the server application 400 is executed . This synchronous communication includes communication processing for transmitting update information indicating the update contents of the setting data 311 managed by the client application 300 to the server application 400. [

또한, 동기 통신의 종료 후에 서버 애플리케이션(400)과의 커넥션을 해제하는 것을 나타내는 정보는, 예를 들어 HTTP 통신을 행하기 위한 패킷의 요구 헤더에 있어서의 "커넥션" 필드의 값인 "close"이다. 따라서, 커넥션을 서버(110)로 하여금 해제하게 하기 위한 정보를, 동기 요구와 함께, 서버(110)에 통지할 수 있다. 이하, 동기 통신의 종료 후에 서버 애플리케이션(400)과의 커넥션을 해제하는 통신을 "넌-킵-얼라이브 통신"이라고 칭한다.The information indicating that the connection with the server application 400 is released after the end of the synchronous communication is, for example, "close" which is the value of the "connection" field in the request header of the packet for HTTP communication. Therefore, information for causing the server 110 to release the connection can be notified to the server 110 together with the synchronization request. Hereinafter, communication for releasing the connection with the server application 400 after termination of the synchronous communication is referred to as "non-keep-alive communication ".

상기한 바와 같이, 다기능 주변 장치(120)가 서버(110)와 일체로서 구성된 장치라는 판정에 따라, 단계 S540에서는, 제어 유닛(321)은, 커넥션을 서버(110)로 하여금 해제하게 하기 위한 정보를 서버(110)에 통지한다. 단계 S540의 처리가 실행되어, 서버(110)와 다기능 주변 장치(120) 사이에서 확립된 커넥션을 서버(110)로 하여금 해제시키게 할 수 있다. 모든 다기능 주변 장치(120)와의 커넥션이 해제되면, 서버(110)는 전력 절약 상태로 이행 가능하게 된다. 상기한 바와 같이, 전력 절약 상태로 이행 가능하게 되기 위해서 필요한 적어도 하나 이상의 조건이 만족된다.As described above, in accordance with the determination that the multifunction peripheral 120 is an apparatus configured integrally with the server 110, in step S540, the control unit 321 transmits information for causing the server 110 to release the connection To the server (110). The process of step S540 may be executed to cause the server 110 to release the established connection between the server 110 and the multifunction peripheral 120. [ When the connection to all the multifunction peripheral devices 120 is released, the server 110 can transition to the power saving state. As described above, at least one or more conditions necessary for transition to the power saving state are satisfied.

또한 단계 S550에 있어서도, 제어 유닛(321)은, 통신 처리 유닛(322)을 제어해서 서버 애플리케이션(400)에 동기 요구를 송신시키게 한다. 그러나, 단계 S550에서 송신되는 동기 요구는, 동기 통신이 종료한 후에 서버 애플리케이션(400)과의 커넥션을 해제하는 것을 나타내는 정보를 포함하지 않는다. 단계 S550에서 송신되는 동기 요구는, 클라이언트 애플리케이션(300)과 서버 애플리케이션(400) 간의 통신 커넥션이 미리 결정된 시간 동안 계속 유지될 것임을 나타내는 정보를 포함할 수 있다. 예를 들어, 제어 유닛(321)은, HTTP 통신의 요구 헤더에 있어서의 "커넥션" 필드의 값으로서 "킵-얼라이브"를 지정하고, 동기 요구를 서버(110)에 통지할 수 있다. 따라서, 커넥션을 서버(110)로 하여금 계속 유지하게 하기 위한 정보를, 동기 요구와 함께 서버(110)에 송신할 수 있다. 이하, 동기 통신이 종료해도 서버 애플리케이션(400)과의 커넥션을 계속 유지하는 통신을 "킵-얼라이브 통신"이라고 칭한다.Also in step S550, the control unit 321 controls the communication processing unit 322 to transmit the synchronization request to the server application 400. [ However, the synchronization request transmitted in step S550 does not include information indicating that the connection with the server application 400 is released after the synchronous communication is terminated. The synchronization request transmitted in step S550 may include information indicating that the communication connection between the client application 300 and the server application 400 will be maintained for a predetermined time. For example, the control unit 321 may designate "keep-alive" as the value of the "connection" field in the request header of the HTTP communication, and notify the server 110 of the synchronization request. Therefore, information for causing the server 110 to keep the connection can be transmitted to the server 110 together with the synchronization request. Hereinafter, the communication that keeps the connection with the server application 400 even if the synchronous communication is terminated is referred to as " keep-alive communication ".

상기와 같이, 다기능 주변 장치(120)가 서버(110)와 상이한 장치라는 판정에 따라, 단계 S550에서는, 제어 유닛(321)은, 다기능 주변 장치(120)를 제어해서, 확립된 커넥션을 서버(110)로 하여금 계속 유지하게 하기 위한 정보를 서버(110)에 통지한다.As described above, in accordance with the determination that the multifunction peripheral 120 is a different device from the server 110, in step S550, the control unit 321 controls the multifunction peripheral 120 to connect the established connection to the server 110 110 to notify the server 110 of the information for continuing to hold it.

단계 S540 및 단계 S550의 처리에서는, 서버 애플리케이션(400)은, 동기 통신의 종료 후에 서버 애플리케이션(400)과의 커넥션을 계속 유지할지 여부를 판정할 수 있으면 된다. 예를 들어, 단계 S550에서는, 서버 애플리케이션(400)과의 통신 커넥션을 미리 결정된 시간 동안 계속 유지할 것임을 나타내는 정보가 포함될 수 있고, 단계 S540에서는, 서버 애플리케이션(400)과의 커넥션을 서버(110)로 하여금 해제하게 하기 위한 정보가 송신되지 않을 수 있다.In the processing of steps S540 and S550, the server application 400 needs only to be able to determine whether or not to keep the connection with the server application 400 after the end of the synchronous communication. For example, in step S550, information indicating that a communication connection with the server application 400 is to be maintained for a predetermined time may be included. In step S540, a connection with the server application 400 is transmitted to the server 110 It may not be transmitted.

단계 S560에 있어서, 제어 유닛(321)은, 통신 처리 유닛(322)을 통해 동기 요구의 응답을 수신한다. 수신된 정보는, 예를 들어 클라이언트 애플리케이션(300)으로부터 서버 애플리케이션(400)에 송신한 갱신 정보가 서버 애플리케이션(400)에 의해 적절히 수신된 것을 나타내는 응답이다. 대안적으로, 수신된 정보는, 갱신 정보를 취득하라는 클라이언트 애플리케이션(300)으로부터 송신된 요구에 대한 응답으로서의, 마스터 데이터(401)의 갱신 정보이다.In step S560, the control unit 321 receives a response to the synchronization request through the communication processing unit 322. [ The received information is, for example, a response indicating that the update information transmitted from the client application 300 to the server application 400 has been properly received by the server application 400. [ Alternatively, the received information is update information of the master data 401 as a response to a request transmitted from the client application 300 to acquire update information.

이어서, 서버(110)로서의 다기능 주변 장치(120)의 동작에 대해서, 도 6을 참조해서 설명한다. 도 6에 나타낸 처리는, CPU(202)가, HDD(205) 또는 ROM(206)으로부터 판독한 서버 애플리케이션(400)을 실행함으로써 실현된다. 도 6의 처리는, 서버 애플리케이션(400)이 클라이언트 애플리케이션(300)으로부터 동기 요구를 수신했을 때에 개시된다.Next, the operation of the multi-function peripheral device 120 as the server 110 will be described with reference to Fig. The processing shown in Fig. 6 is realized by the CPU 202 executing the server application 400 read from the HDD 205 or the ROM 206. Fig. 6 is started when the server application 400 receives a synchronization request from the client application 300. [

단계 S610에 있어서, 제어 유닛(421)은, 통신 처리 유닛(422)을 통해 수신한 동기 요구에 따른 처리를 실행한다. 동기 요구에 따른 처리는, 예를 들어, 클라이언트 애플리케이션(300)으로부터 수신한 갱신 정보를 마스터 데이터(401)에 반영시키는 처리이다. 대안적으로, 동기 요구에 따른 처리는, 예를 들어, 클라이언트 애플리케이션(300)으로부터 수신한 취득 요구에 응답하여, 마스터 데이터(401)의 갱신 정보를 생성하는 처리이다. 제어 유닛(421)은, 마스터 데이터 관리 유닛(410)을 제어해서 이들 처리를 실행시킨다.In step S610, the control unit 421 executes processing according to the synchronization request received via the communication processing unit 422. [ The processing according to the synchronization request is processing for reflecting the update information received from the client application 300, for example, in the master data 401. [ Alternatively, the processing according to the synchronization request is processing for generating update information of the master data 401 in response to, for example, an acquisition request received from the client application 300. [ The control unit 421 controls the master data management unit 410 to execute these processes.

단계 S620에 있어서, 제어 유닛(421)은, 통신 처리 유닛(422)을 통해, 동기 요구에 대한 응답을 클라이언트 애플리케이션(300)에 송신한다. 이러한 응답은, 예를 들어, 클라이언트 애플리케이션(300)으로부터 수신한 갱신 정보를 마스터 데이터(401)에 반영시킨 것을 나타내는 정보이다. 대안적으로, 이러한 응답은, 예를 들어, 단계 S610에서 생성한 마스터 데이터(401)의 갱신 정보의 송신이다.In step S620, the control unit 421 transmits, via the communication processing unit 422, a response to the synchronization request to the client application 300. [ This response is, for example, information indicating that update information received from the client application 300 is reflected in the master data 401. [ Alternatively, this response is, for example, transmission of the update information of the master data 401 generated in step S610.

단계 S630에 있어서, 제어 유닛(421)은, 클라이언트 애플리케이션(300)으로부터 수신한 동기 요구가 넌-킵-얼라이브 통신의 요구인지를 판정한다. 예를 들어, 제어 유닛(421)은, 동기 요구의 HTTP 헤더의 "커넥션" 필드의 값을 취득하고, 이러한 값에 기초하여, 설정 값 동기 요구가 넌-킵-얼라이브 통신의 요구인지의 여부를 판정한다. "커넥션" 필드 값이 "close"인 경우에는, 설정 값 동기 요구가 넌-킵-얼라이브 통신의 요구인 것으로 판정되고(단계 S630에서, 예), 처리는 단계 S640으로 진행한다. "커넥션" 필드 값이 "close" 이외의 값인 경우, 또는 "커넥션" 필드가 없을 경우에는, 설정 값 동기 요구가 넌-킵-얼라이브 통신의 요구가 아닌 것으로 판정되고(단계 S630에서, 아니오), 처리는 단계 S650으로 진행한다.In step S630, the control unit 421 determines whether the synchronization request received from the client application 300 is a request for a non-keep-alive communication. For example, the control unit 421 acquires the value of the "connection" field of the HTTP header of the synchronization request, and determines whether or not the set value synchronization request is a request for non-keep- . If the "connection" field value is "close", it is determined that the set value synchronization request is a request for non-keep-alive communication (YES in step S630), and the process proceeds to step S640. If the value of the "connection" field is a value other than "close ", or if there is no field" connection ", it is determined that the set value synchronization request is not a request for non-keep-alive communication (NO in step S630) The process proceeds to step S650.

단계 S640에 있어서, 제어 유닛(421)은, 클라이언트 애플리케이션(300)과 서버 애플리케이션(400) 사이에서 확립된 커넥션의 해제 처리를 수행하도록 통신 처리 유닛(422)에 지시한다. 이러한 지시를 수신하면, 통신 처리 유닛(422)은, 해당하는 커넥션의 해제 처리를 실행하고, 도 6에 나타내는 플로우가 종료한다.In step S640, the control unit 421 instructs the communication processing unit 422 to perform the process of releasing the established connection between the client application 300 and the server application 400. [ Upon receiving this instruction, the communication processing unit 422 executes the corresponding connection releasing process, and the flow shown in Fig. 6 ends.

단계 S650에 있어서, 제어 유닛(421)은, 클라이언트 애플리케이션(300)과 서버 애플리케이션(400) 사이에서 확립된 커넥션을 계속 유지하고, 도 6에 예시된 플로우가 종료한다.In step S650, the control unit 421 keeps the established connection between the client application 300 and the server application 400, and the flow illustrated in Fig. 6 ends.

이와 같은 구성에 의하면, 정보 처리 장치가 서버 기능과 클라이언트 기능을 둘 다 갖는 경우에도, 서버와 클라이언트 사이의 통신 커넥션을 해제할 수 있다. 또한, 정보 처리 장치가 서버 기능과 클라이언트 기능을 둘 다 갖는 경우에도, 통신 커넥션을 해제해서 전력 절약 상태로 이행할 수 있다.According to such a configuration, even when the information processing apparatus has both the server function and the client function, the communication connection between the server and the client can be released. Further, even when the information processing apparatus has both the server function and the client function, the communication connection can be released to shift to the power saving state.

즉, 동기 통신이 종료할 때마다, 서버(110)와 일체로서 구성된 클라이언트로서의 다기능 주변 장치(120a)는, 서버(110)와의 커넥션을 해제한다. 또한, 다기능 주변 장치(120b 및 120c)의 각각에서 전력 절약 상태로 이행하는 조건이 만족되는 경우에, 다기능 주변 장치(120b 및 120c)는 서버(110)와의 커넥션을 해제한다. 따라서, 서버(110)가 관리하는 클라이언트로서의 다기능 주변 장치(120a, 120b, 및 120c)의 어느 것과도 커넥션을 서버(110)가 확립하고 있지 않는 상태를 실현할 수 있다.That is, every time the synchronous communication ends, the multifunction peripheral 120a as a client configured as a unit with the server 110 releases the connection with the server 110. [ In addition, when the condition for shifting to the power saving state is satisfied in each of the multi-function peripheral devices 120b and 120c, the multi-function peripheral devices 120b and 120c release the connection with the server 110. [ Therefore, it is possible to realize a state in which the server 110 does not establish a connection with any of the multifunction peripherals 120a, 120b, and 120c as the clients managed by the server 110. [

서버(110)가 다기능 주변 장치(120a, 120b, 및 120c)의 어느 것과도 커넥션을 확립하고 있지 않는 경우, 상술한 바와 같이, 서버(110)와 일체로 된 장치로서 구성된 다기능 주변 장치(120a)는, 전력 절약 상태로 이행할 수 있다.When the server 110 is not establishing a connection with any of the multifunction peripherals 120a, 120b, and 120c, the multifunction peripheral 120a configured as a device integrated with the server 110, as described above, , It is possible to shift to the power saving state.

따라서, 서버와 일체로 된 장치로서 구성된 클라이언트와의 커넥션을 차단할 수 없고, 일체로 된 장치로서 구성된 서버와 클라이언트는 전력 절약 상태로 이행할 수 없다는 종래 기술의 과제를 해소할 수 있다. 따라서, 보다 적은 전력으로 운용 가능한 동기 시스템을 구축할 수 있다.Therefore, the connection with the client configured as a device integrated with the server can not be blocked, and the problem of the prior art that the server and the client configured as the integrated device can not be shifted to the power saving state can be solved. Therefore, a synchronous system capable of operating with less power can be constructed.

또한, 상기의 실시예에 따르면, 서버(110)와 일체로 된 장치로서 구성되어 있지 않는 다기능 주변 장치(120b 및 120c)는, 서버(110)와 킵-얼라이브 통신을 행할 수 있다. 따라서, 전방으로 동기 요구의 제2 송신으로부터는, 동기 요구를 행할 때마다 서버(110)와의 커넥션을 확립할 필요는 없다. 따라서, 빠르게 동기 처리를 실행할 수 있다.According to the above embodiment, the multi-function peripheral devices 120b and 120c, which are not configured as a unit integrated with the server 110, can perform keep-alive communication with the server 110. [ Therefore, from the second transmission of the synchronization request forward, there is no need to establish a connection with the server 110 every time a synchronization request is made. Therefore, the synchronization processing can be executed quickly.

제1 실시예에 있어서는, 서버 애플리케이션(400)이 클라이언트 애플리케이션(300)을 실행하고 있는 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되는 경우, 클라이언트 애플리케이션(300)은 넌-킵-얼라이브 동기 통신을 요구한다. 제2 실시예에서는, 서버 애플리케이션(400)이 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있는 경우에도, 동기 요구를 송신하기 위한 트리거로서의 동작의 타입에 따라 넌-킵-얼라이브 동기 통신을 요구할 지 또는 킵-얼라이브 동기 통신을 요구할 지를 전환하는 예에 대해서 설명한다. 동기 요구를 송신하기 위한 트리거로서의 동작의 타입의 예는, 폴링 처리 또는 유저가 다기능 주변 장치(120)의 설정 변경을 위해 실행한 미리 결정된 처리를 포함한다. 동기 요구를 송신하기 위한 트리거로서의 동작이 실행되면, 상기 동기 개시 조건이 만족되는 것을 가정하여 설명한다.In the first embodiment, when the server application 400 is enabled on the same device as the multifunction peripheral 120 executing the client application 300, the client application 300 may perform non-keep- . In the second embodiment, even when the server application 400 is enabled on the same device as the multifunction peripheral device 120, the non-keep-alive synchronization communication is performed according to the type of operation as a trigger for transmitting the synchronization request And whether to request keep-alive synchronous communication or not. An example of a type of operation as a trigger for transmitting a synchronization request includes a polling process or a predetermined process performed by the user for changing a setting of the multifunction peripheral device 120. [ When the operation as a trigger for transmitting the synchronization request is executed, it is assumed that the synchronization start condition is satisfied.

본 실시예에 따른 구성에 있어서, 제1 실시예와 유사한 부분은 설명되지 않고, 제1 실시예와 상이한 부분에 대해서만 설명한다.In the configuration according to the present embodiment, a portion similar to that of the first embodiment is not described, and only portions different from the first embodiment will be described.

본 실시예에 있어서, 클라이언트 애플리케이션(300)의 통신 처리 유닛(322)은 미리 결정된 시간 간격으로 서버 애플리케이션(400)에 대하여 동기 요구를 행한다. 이러한 동기 요구는, 마스터 데이터(401)의 갱신 정보를 취득하라는 요구이다. 마스터 데이터(401)의 갱신 정보는, 클라이언트 애플리케이션(300)이 이전에 마스터 데이터(401)의 설정 정보(예를 들어, 갱신 정보)를 수신한 시각 이후에 수행된 마스터 데이터(401)의 갱신 내용을 나타내는 정보이다. 통신 처리 유닛(322)은, 클라이언트 애플리케이션(300)의 식별 정보와, 이전에 마스터 데이터(401)의 설정 정보를 취득한 시각을 나타내는 시각 정보를 포함하는 동기 요구를 서버 애플리케이션(400)에 송신한다. 이하의 설명에서는, 마스터 데이터(401)의 갱신 정보 취득 요구를 순차 송신하는 처리는 "폴링 처리"로서 칭해지고, 특히, 미리 결정된 시간 간격으로 취득 요구를 송신하는 처리는 "정기 폴링 처리"로서 칭해진다. 본 실시예에서는, 클라이언트 애플리케이션(300)이 정기 폴링 처리를 실행하는 예에 대해서 설명한다. 대안적으로, 클라이언트 애플리케이션(300)은 정기적이지 아닌 간격으로 폴링 처리를 수행할 수 있다.In this embodiment, the communication processing unit 322 of the client application 300 makes a synchronization request to the server application 400 at predetermined time intervals. This synchronization request is a request to acquire update information of the master data 401. The update information of the master data 401 is updated with the update contents of the master data 401 performed after the time at which the client application 300 previously received the setting information (for example, update information) of the master data 401 . The communication processing unit 322 transmits to the server application 400 a synchronization request including identification information of the client application 300 and time information indicating the time at which the setting information of the master data 401 was previously acquired. In the following description, the process of sequentially transmitting the update information acquisition request of the master data 401 is referred to as "polling process ", and in particular, the process of transmitting the acquisition request at a predetermined time interval is referred to as" It becomes. In this embodiment, an example in which the client application 300 executes the regular polling process will be described. Alternatively, the client application 300 may perform polling processing at non-regular intervals.

또한, 본 실시예에 있어서, 다기능 주변 장치(120)에 있어서 유저의 로그인 처리의 실행에 따라, 통신 처리 유닛(322)은, 마스터 데이터(401)의 갱신 정보 취득 요구를 송신한다. 또한, 유저가 조작 유닛(220)을 조작해서 다기능 주변 장치(120)의 설정(설정 데이터(311))을 갱신한 경우, 통신 처리 유닛(322)은, 갱신의 내용을 나타내는 갱신 정보를 서버 애플리케이션(400)에 송신한다. 이러한 갱신 정보의 송신은, 갱신 정보를 사용해서 마스터 데이터(401)를 갱신하도록 서버 애플리케이션(400)에 요구하는 동기 요구에 대응한다.In the present embodiment, the communication processing unit 322 transmits a request for acquiring the update information of the master data 401 in accordance with execution of the login processing of the user in the multifunction peripheral device 120. [ When the user operates the operation unit 220 to update the setting (setting data 311) of the multifunction peripheral device 120, the communication processing unit 322 updates the update information indicating the content of the update, (400). The transmission of the update information corresponds to a synchronization request to the server application 400 to update the master data 401 using the update information.

본 실시예에 따른 클라이언트 애플리케이션(300)의 동작에 대해서, 도 7을 참조해서 설명한다. 도 7에 나타낸 처리는, CPU(202)가 HDD(205) 또는 ROM(206)으로부터 판독한 클라이언트 애플리케이션(300)을 실행함으로써 실현된다. 제1 실시예에 있어서 도 5를 참조해서 설명한 처리에 대해서는, 도 5에서와 동일한 단계 번호를 첨부하고, 여기서는 설명하지 않는다.The operation of the client application 300 according to the present embodiment will be described with reference to FIG. 7 is realized by executing the client application 300 read from the HDD 205 or the ROM 206 by the CPU 202. [ The process steps described with reference to Fig. 5 in the first embodiment are given the same step numbers as in Fig. 5, and will not be described here.

도 5와 마찬가지로, 도 7에 도시된 흐름도는, 미리 결정된 동기 개시 조건이 만족되었을 경우에 개시된다. 동기 개시 조건은, 예를 들어, 클라이언트 애플리케이션(300)이 서버 애플리케이션(400)에 마스터 데이터(401)의 설정 정보(예를 들어, 갱신 정보)를 취득하라고 요구하는 경우에 만족된다. 또한, 동기 개시 조건은, 예를 들어, 다기능 주변 장치(120)에 있어서 설정 데이터(311)가 갱신된 경우에 만족된다. 흐름도는, 다기능 주변 장치(120)와 서버(110) 사이에서 설정 값을 동기시키기 위한 임의의 다른 타이밍에 개시될 수 있고, 그 조건의 내용은 중요하지 않다.Similar to Fig. 5, the flowchart shown in Fig. 7 is started when a predetermined synchronization start condition is satisfied. The synchronization start condition is satisfied when, for example, the client application 300 requests the server application 400 to acquire the setting information (for example, update information) of the master data 401. The synchronization start condition is satisfied when, for example, the setting data 311 in the multifunction peripheral device 120 is updated. The flowchart may be initiated at any other timing for synchronizing the settings between the multifunction peripheral 120 and the server 110, and the content of the conditions is not critical.

단계 S530에 있어서 제어 유닛(321)이 동작하고 있는 다기능 주변 장치(120)에 커넥션 목적지로서의 서버(110)가 존재한다고 판정된 경우(단계 S530에서, 예), 처리는 단계 S701로 진행한다.If it is determined in step S530 that the server 110 serving as the connection destination exists in the multifunction peripheral 120 on which the control unit 321 is operating (YES in step S530), the process proceeds to step S701.

단계 S701에서, 제어 유닛(321)은, 도 7에 도시된 처리를 개시하기 위한 트리거로서의 동작의 타입이 폴링 처리인지의 여부를 판정한다. 판정의 결과, 동작의 타입이 폴링 처리인 경우(단계 S701에서, 예)에는, 처리는 단계 S540으로 진행한다. 한편, 동작의 타입이 폴링 처리가 아닌 경우(단계 S701에서, 아니오)에는, 처리는 단계 S550으로 진행한다. 다른 처리의 내용은 도 5를 참조해서 설명한 내용과 유사하다.In step S701, the control unit 321 determines whether the type of operation as a trigger for starting the processing shown in Fig. 7 is a polling process. As a result of the determination, if the type of operation is the polling process (YES in step S701), the process proceeds to step S540. On the other hand, if the type of operation is not the polling process (NO in step S701), the process proceeds to step S550. The contents of the other processes are similar to those described with reference to Fig.

이상의 절차에서는, 다기능 주변 장치(120)가 실행하는 처리가 갱신 정보를 서버(110)에 통지하기 위한 통지 처리인 것으로 판정되는 경우에, 또한 다기능 주변 장치(120)가 서버(110)와 일체로서 구성된 장치인 것으로 판정되는 경우에는, 다기능 주변 장치(120)는 커넥션을 서버(110)로 하여금 계속 유지하게 하기 위한 정보를 서버(110)에 통지한다. 또한, 다기능 주변 장치(120)가 실행하는 처리가 갱신 정보를 취득하기 위한 취득 처리인 것으로 판정되는 경우에, 또한 다기능 주변 장치(120)가 서버(110)와 일체로서 구성된 장치인 것으로 판정되는 경우에는, 다기능 주변 장치(120)는 커넥션을 서버(110)로 하여금 해제하게 하기 위한 정보를 서버(110)에 통지한다.In the above procedure, when it is determined that the process executed by the multifunction peripheral device 120 is the notification process for notifying the server 110 of the update information, the multifunction peripheral device 120 is also connected to the server 110 If it is determined to be a configured device, the multifunction peripheral 120 informs the server 110 of information to keep the server 110 continuing the connection. Further, when it is determined that the process executed by the multifunction peripheral device 120 is the acquisition process for acquiring the update information, and the multifunction peripheral device 120 is determined to be a device configured integrally with the server 110 The multifunction peripheral 120 notifies the server 110 of information for causing the server 110 to release the connection.

이러한 절차에 의해 처리가 실행됨으로써, 폴링 처리와 같은, 다기능 주변 장치(120)의 백그라운드에서 실행되는 통신 처리만이 실행되어 있는 상황에서는, 서버 애플리케이션(400)과의 커넥션이 해제된다. 따라서, 제1 실시예에서 설명한 것과 마찬가지인 이유로 인해, 다기능 주변 장치(120)는 전력 절약 상태로 이행할 수 있다.When the processing is executed by this procedure, the connection with the server application 400 is released in a situation where only the communication processing executed in the background of the multifunction peripheral device 120 such as polling processing is executed. Therefore, for the same reason as described in the first embodiment, the multi-function peripheral device 120 can shift to the power saving state.

또한, 본 실시예에서는, 클라이언트로서의 다기능 주변 장치(120)와 서버(110)가 일체로 된 장치로서 구성되어 있는 경우에도, 동기 처리의 개시가 다기능 주변 장치(120)에 대한 유저 조작에 의해 트리거되는 경우에는 커넥션이 계속 유지된다. 커넥션의 유지는, 1개의 동기 처리를 실행할 때마다 서버(110)와의 커넥션을 구축할 필요를 없앤다. 따라서, 동기 처리를 빠르게 실행할 수 있다.In the present embodiment, even when the multifunction peripheral 120 as the client and the server 110 are configured as an integrated unit, the start of synchronization processing is triggered by the user operation on the multifunction peripheral device 120, The connection is maintained. The maintenance of the connection eliminates the necessity of establishing a connection with the server 110 every time one synchronization process is executed. Therefore, the synchronization processing can be executed quickly.

본 실시예에 따르면, 클라이언트로서의 다기능 주변 장치(120)와 서버(110)가 일체로 된 장치로서 구성되어 있는 경우에도, 다기능 주변 장치(120)에 대한 유저 조작에 따라서 동기 처리가 개시된 경우에는, 동기 처리를 빠르게 실행할 수 있다. 따라서, 유저는 빠르게 조작을 진행시킬 수 있다. 이는, 유저의 편리성을 향상시킬 수 있다.According to the present embodiment, even when the multifunction peripheral device 120 and the server 110 are configured as an integrated device as a client, if synchronization processing is started according to a user operation on the multifunction peripheral device 120, The synchronous processing can be executed quickly. Therefore, the user can quickly advance the operation. This can improve the convenience of the user.

제3 실시예에서는, 서버(110)가 클라이언트 애플리케이션(300)으로부터의 킵-얼라이브 통신의 요구를 수신해도, 서버(110)가 동작하고 있는 다기능 주변 장치(120) 상에서 동작하는 클라이언트 애플리케이션(300)으로부터의 요구일 경우에는 서버(110)가 커넥션을 해제한다. 이와 같은 구성에 의해서도, 제1 실시예와 마찬가지로, 서버(110)와 일체로 된 장치로서 구성된 다기능 주변 장치(120a)는, 전력 절약 상태로 이행할 수 있다.In the third embodiment, even if the server 110 receives the request for the keep-alive communication from the client application 300, the client application 300 operating on the multifunction peripheral 120 on which the server 110 is operating, The server 110 releases the connection. With such a configuration, the multi-function peripheral device 120a configured as a device integrated with the server 110 can be shifted to the power saving state as in the first embodiment.

본 실시예에 따른 구성에 있어서는, 제1 실시예와 유사한 부분은 설명되지 않고, 여기에서는 제1 실시예와 상이한 부분에 대해서만 설명한다.In the configuration according to the present embodiment, a portion similar to that of the first embodiment will not be described, and only portions different from the first embodiment will be described here.

도 4를 참조해서 설명한 서버 애플리케이션(400)의 제어 유닛(421)은, 동기 요구를 행한 클라이언트 애플리케이션(300)이, 제어 유닛(421)이 동작하고 있는 다기능 주변 장치(120) 상에서 동작하는 클라이언트 애플리케이션(300)인지의 여부를 판정하는 처리를 행한다.The control unit 421 of the server application 400 described with reference to Fig. 4 is configured such that the client application 300 that made the synchronization request is a client application that operates on the multifunction peripheral 120 on which the control unit 421 is operating (300).

본 실시예에 따른 다기능 주변 장치(120)의 클라이언트 애플리케이션(300)이 실시하는 통신 처리의 절차에 대해서 도 8을 참조해서 설명한다. 도 8에 나타낸 처리는, CPU(202)가 HDD(205) 또는 ROM(206)으로부터 판독한 클라이언트 애플리케이션(300)을 실행함으로써 실현된다. 이하의 설명에서, 제1 실시예에 있어서 도 5를 참조해서 설명한 처리와 동일한 처리에 대해서는, 도 5에서와 동일한 단계 번호를 지정한다.The procedure of the communication processing performed by the client application 300 of the multifunction peripheral 120 according to the present embodiment will be described with reference to FIG. The processing shown in Fig. 8 is realized by the CPU 202 executing the client application 300 read from the HDD 205 or the ROM 206. Fig. In the following description, the same step numbers as those in Fig. 5 are designated for the same processing as the processing described with reference to Fig. 5 in the first embodiment.

본 실시예에 따른 다기능 주변 장치(120)의 처리는, 단계 S530 및 단계 S540의 처리가 실행되지 않은 제1 실시예에 있어서 도 5를 참조해서 설명한 처리와 상이하다. 단계 S520의 처리를 실행한 후, 제어 유닛(321)은, 다음으로 단계 S550의 처리를 실행한다. 상기한 바와 같이, 본 실시예에 따른 다기능 주변 장치(120)에 있어서 동기 개시 조건을 만족하는 동작이 발생하는 경우에, 다기능 주변 장치(120)는 항상 킵-얼라이브 통신을 요구하는 동기 요구를 서버(110)에 송신한다.The processing of the multifunction peripheral device 120 according to the present embodiment is different from the processing described with reference to Fig. 5 in the first embodiment in which the processing of steps S530 and S540 is not executed. After executing the process of step S520, the control unit 321 next executes the process of step S550. As described above, when an operation that satisfies the synchronization start condition occurs in the multifunction peripheral device 120 according to the present embodiment, the multifunction peripheral device 120 always transmits a synchronization request for requesting keep- (110).

다음으로, 본 실시예에 따른 서버(110)의 서버 애플리케이션(400)이 실시하는 통신 처리의 절차에 대해서, 도 9를 참조해서 설명한다. 도 9에 나타낸 처리는, CPU(202)가 HDD(205) 또는 ROM(206)으로부터 판독한 서버 애플리케이션(400)을 실행함으로써 실현된다. 도 9에서의 처리는, 서버 애플리케이션(400)이 클라이언트 애플리케이션(300)으로부터 동기 요구를 수신했을 때에 개시된다. 이하의 설명에서, 제1 실시예에 있어서 도 6을 참조해서 설명한 처리와 유사한 처리에 대해서는, 도 6과 동일한 단계 번호를 지정한다.Next, the procedure of the communication processing performed by the server application 400 of the server 110 according to the present embodiment will be described with reference to FIG. 9 is realized by executing the server application 400 read from the HDD 205 or the ROM 206 by the CPU 202. [ The processing in Fig. 9 is started when the server application 400 receives a synchronization request from the client application 300. Fig. In the following description, the same step numbers as those in Fig. 6 are designated for the processing similar to the processing described with reference to Fig. 6 in the first embodiment.

단계 S620에 있어서 서버 애플리케이션(400)이 클라이언트 애플리케이션(300)으로부터 취득한 동기 요구에 대한 응답을 송신한 후, 서버 애플리케이션(400)은, 단계 S910의 처리를 실행한다.After the server application 400 transmits a response to the synchronization request acquired from the client application 300 in step S620, the server application 400 executes the processing of step S910.

단계 S910에서, 제어 유닛(421)은, 동기 요구의 요구 소스인 클라이언트 애플리케이션(300)이, 제어 유닛(421)이 동작하고 있는 다기능 주변 장치(120) 상에서 동작하는 클라이언트 애플리케이션(300)인지의 여부를 판정한다. 즉, 단계 S910에 있어서, 제어 유닛(421)은, 제어 유닛(421)이 서버(110)와 일체로 된 장치로서 구성되는 클라이언트로서의 다기능 주변 장치(120)로부터 동기 요구를 수신했는지를 판정한다.In step S910, the control unit 421 determines whether the client application 300, which is the request source of the synchronization request, is the client application 300 operating on the multifunction peripheral 120 on which the control unit 421 is operating . That is, in step S910, the control unit 421 determines whether the control unit 421 has received the synchronization request from the multifunction peripheral 120 as a client configured as a device integrated with the server 110. [

이러한 판정은, 예를 들어 동기 요구에 포함된 "Host" 헤더 필드의 값을, 미리 설정된 다기능 주변 장치(120)의 IP 어드레스 정보와 비교함으로써 행해질 수 있다. "Host" 헤더 필드의 값과 IP 어드레스 정보가 서로 일치하는 경우에는, 제어 유닛(421)은, 동기 요구의 요구 소스인 클라이언트 애플리케이션(300)이, 제어 유닛(421)이 동작하고 있는 다기능 주변 장치(120) 상에서 동작하는 클라이언트 애플리케이션(300)이라고 판정한다. 한편, "Host" 헤더 필드의 값과 IP 어드레스 정보가 서로 상이한 경우에, 제어 유닛(421)은, 동기 요구의 요구 소스인 클라이언트 애플리케이션(300)이 또 다른 장치 상에서 동작하는 클라이언트 애플리케이션(300)이라고 판정한다. 이 판정 방법은 이에 한정되지 않고, 특별히 한정되지 않는다.This determination can be made, for example, by comparing the value of the "Host" header field included in the synchronization request with the IP address information of the preset multifunction peripheral 120. [ When the value of the "Host" header field and the IP address information coincide with each other, the control unit 421 determines that the client application 300, which is the request source of the synchronization request, (300) operating on the client (120). On the other hand, when the value of the "Host" header field and the IP address information are different from each other, the control unit 421 determines that the client application 300 that is the request source of the synchronization request is the client application 300 . This determination method is not limited to this, and is not particularly limited.

판정의 결과로서, 동기 요구의 요구 소스인 클라이언트 애플리케이션(300)이, 제어 유닛(421)이 동작하고 있는 다기능 주변 장치(120)에 의해 실행되는 경우(단계 S910에서, 예)에는, 처리는 단계 S640으로 진행한다. 한편, 동기 요구의 요구 소스인 클라이언트 애플리케이션(300)이 또 다른 장치에 의해 실행되는 경우(단계 S910에서, 아니오)에는, 처리는 단계 S630으로 진행한다.As a result of the determination, when the client application 300, which is the request source of the synchronization request, is executed by the multifunction peripheral 120 in which the control unit 421 is operating (YES in step S910) Proceed to S640. On the other hand, when the client application 300, which is the request source of the synchronization request, is executed by another apparatus (NO in step S910), the processing proceeds to step S630.

예를 들어, 서버(110)가 동작하고 있는 다기능 주변 장치(120a)의 클라이언트 애플리케이션(300)으로부터 동기 요구를 수신한 경우에는, 단계 S910에 있어서 판정은 예이고, 제어 유닛(421)은, 단계 S640의 처리를 실행한다. 한편, 서버(110)의 것과는 상이한 장치인 다기능 주변 장치(120b 또는 120c)의 클라이언트 애플리케이션(300)으로부터 동기 요구를 수신한 경우에는, 단계 S910에 있어서 판정은 아니오이고, 제어 유닛(421)은 단계 S630의 처리를 실행한다. 다른 처리들은 제1 실시예에서와 유사하므로, 여기에서는 설명되지 않는다.For example, when the synchronization request is received from the client application 300 of the multifunction peripheral 120a in which the server 110 is operating, the determination in step S910 is YES, and the control unit 421 determines, The process of S640 is executed. On the other hand, when the synchronization request is received from the client application 300 of the multifunction peripheral 120b or 120c which is a device different from that of the server 110, the determination in step S910 is NO and the control unit 421 determines, The process of S630 is executed. Since other processes are similar to those in the first embodiment, they are not described here.

상기한 바와 같이, 다기능 주변 장치(120)가 서버(110)와 일체로서 구성된 장치라고 판정했을 경우에, 서버(110)는 다기능 주변 장치(120)와 확립된 커넥션을 해제한다.As described above, when the multi-function peripheral device 120 determines that it is a device configured integrally with the server 110, the server 110 releases the established connection with the multi-function peripheral device 120. [

본 실시예에서는, 클라이언트 애플리케이션(300)으로부터 킵-얼라이브 통신의 요구를 수신해도, 서버(110)는, 서버(110)가 동작하고 있는 다기능 주변 장치(120) 상에서 동작하는 클라이언트 애플리케이션(300)으로부터의 요구일 경우에는 커넥션을 해제한다. 본 실시예에 따르면, 서버(110)는, 서버(110)에 의해 관리되는 모든 다기능 주변 장치(120)와의 커넥션을 차단할 수 있다. 따라서, 서버(110)는 전력 절약 상태로 이행 가능하게 된다. 따라서, 서버(110)와 일체로 된 장치로서 구성된 다기능 주변 장치(120a)는, 전력 절약 상태로 이행하는 것이 가능하게 된다.In this embodiment, even when receiving the request of the keep-alive communication from the client application 300, the server 110 receives the request from the client application 300 operating on the multifunction peripheral 120 on which the server 110 is operating The connection is released. According to the present embodiment, the server 110 can block the connection with all the multifunction peripheral devices 120 managed by the server 110. [ Therefore, the server 110 can transition to the power saving state. Therefore, the multi-function peripheral device 120a configured as a device integrated with the server 110 can be shifted to the power saving state.

제4 실시예에서는, 서버(110)가 다기능 주변 장치(120)와의 커넥션을 계속 유지하고 있는 경우에도, 미리 결정된 경우에는 서버(110)가 전력 절약 상태로 이행 가능하게 되는 예에 대해서 설명한다. 즉, 커넥션을 계속 유지하고 있는 애플리케이션이 서버(110)가 동작하고 있는 다기능 주변 장치(120) 상에서 동작하는 클라이언트 애플리케이션(300)뿐인 경우에, 서버(110)는 전력 절약 상태로 이행 가능하게 된다.In the fourth embodiment, an example is described in which the server 110 is allowed to transition to the power saving state in a predetermined case, even when the server 110 keeps the connection with the multi-function peripheral device 120. [ That is, in the case where only the client application 300 that operates on the multifunction peripheral device 120 in which the server 110 is operating is enabled, the server 110 can transition to the power saving state.

본 실시예에 따른 구성에 있어서는, 제1 실시예와 동일한 부분은 설명되지 않고, 여기서는 제1 실시예와 상이한 부분에 대해서만 설명한다.In the configuration according to the present embodiment, the same portions as those in the first embodiment are not described, and only different portions from the first embodiment will be described here.

본 실시예에 있어서, 통신 처리 유닛(422)이 확립하고 있는 커넥션의 관리 상태에 따라, 서버 애플리케이션(400)의 제어 유닛(421)은, 다기능 주변 장치(120)가 전력 절약 상태로 이행 가능한 지의 여부를 판정한다.The control unit 421 of the server application 400 determines whether or not the multifunction peripheral device 120 can transition to the power saving state according to the management state of the connection established by the communication processing unit 422 ≪ / RTI >

또한, 본 실시예에 있어서, 다기능 주변 장치(120)에 있어서 미리 결정된 조건이 만족되었을 경우에, 클라이언트 애플리케이션(300)의 제어 유닛(321)은, 서버 애플리케이션(400)에 대하여 다기능 주변 장치(120)가 전력 절약 상태로의 이행이 가능한지의 여부를 문의하는 처리를 실행한다.The control unit 321 of the client application 300 may notify the server application 400 of the presence of the multifunction peripheral 120 (step < RTI ID = 0.0 > To inquire whether or not it is possible to shift to the power saving state.

본 실시예에 따른 서버 애플리케이션(400)이 실행하는 처리에 대해서, 도 10을 참조해서 설명한다. 도 10에서의 처리는, 서버 애플리케이션(400)이, 클라이언트 애플리케이션(300)으로부터, 다기능 주변 장치(120)가 전력 절약 상태로의 이행이 가능한지에 관한 문의를 수신한 경우에 개시된다. 도 10에 도시한 처리는, CPU(202)가 HDD(205) 또는 ROM(206)으로부터 판독한 서버 애플리케이션(400)을 실행함으로써 실현된다.The processing executed by the server application 400 according to the present embodiment will be described with reference to FIG. The processing in Fig. 10 is started when the server application 400 receives from the client application 300 an inquiry as to whether or not the multifunction peripheral device 120 can transition from the power saving state to the power saving state. 10 is realized by executing the server application 400 read from the HDD 205 or the ROM 206 by the CPU 202. [

먼저, 단계 S1010에 있어서, 제어 유닛(421)은, 제어 유닛(421)이 현재 관리하고 있는 커넥션의 정보를 취득한다. 커넥션의 정보는, 예를 들어, IP 어드레스와 포트 번호의 세트인 소켓 정보와, 유지 또는 해제를 나타내는 상태 정보를 적어도 포함하는 정보이다. 클라이언트 애플리케이션(300)과의 커넥션이 확립되었을 때에, 통신 커넥션의 정보는, RAM(203) 또는 HDD(205)에 유지된다.First, in step S1010, the control unit 421 acquires the information of the connection that the control unit 421 currently manages. The connection information is, for example, information including at least socket information, which is a set of an IP address and a port number, and status information indicating maintenance or release. When the connection with the client application 300 is established, the information of the communication connection is held in the RAM 203 or the HDD 205. [

단계 S1020에 있어서, 계속 유지되는 커넥션의 정보에 기초하여, 제어 유닛(421)은, 동일한 장치 상에서 동작하는 클라이언트 애플리케이션(300)을 나타내는 커넥션만이 존재하고 있는지의 여부를 판정한다.In step S1020, the control unit 421 determines whether or not there is only a connection indicating the client application 300 operating on the same device, based on the information of the connection held continuously.

판정의 결과, 동일한 장치 상에서 동작하는 클라이언트 애플리케이션(300)을 나타내는 커넥션만이 존재하고 있는 경우(단계 S1020에서, 예)에는, 처리는 단계 S1030으로 진행한다. 단계 S1030에서는, 제어 유닛(421)은, 다기능 주변 장치(120)가 전력 절약 상태로 이행 가능한 것을 나타내는 정보를 유지한다. 그 다음, 이러한 플로우는 종료한다.As a result of the determination, if there is only a connection indicating the client application 300 operating on the same apparatus (YES in step S1020), the process proceeds to step S1030. In step S1030, the control unit 421 holds information indicating that the multi-function peripheral device 120 can transition to the power saving state. This flow then ends.

한편, 동일한 장치 상에서 동작하는 것 이외의 클라이언트 애플리케이션(300)을 나타내는 커넥션이 존재하는 경우(단계 S1020에서, 아니오)에는, 처리는 S1040으로 진행한다. 단계 S1040에서, 제어 유닛(421)은, 다기능 주변 장치(120)가 전력 절약 상태로 이행 불가인 것을 나타내는 정보를 유지한다. 그 다음, 이러한 플로우는 종료한다.On the other hand, if there is a connection indicating the client application 300 other than the one operating on the same device (NO in step S1020), the process proceeds to step S1040. In step S1040, the control unit 421 maintains information indicating that the multi-function peripheral device 120 can not transition to the power saving state. This flow then ends.

제어 유닛(421)이, 다기능 주변 장치(120)가 전력 절약 상태로 이행 가능한 것을 나타내는 정보를 유지하고 있는 경우에, 또는 임의의 다른 이행 조건이 만족되었을 경우에, 다기능 주변 장치(120)는 전력 절약 상태로 이행한다. 상기한 바와 같이, 다기능 주변 장치(120)가 서버(110)와 일체로서 구성된 장치라고 판정했을 경우와, 서버(110)가 클라이언트로서의 다기능 주변 장치(120)와만의 통신 커넥션을 확립하고 있을 경우에는, 판정은 이하와 같이 행해진다. 즉, 동일한 장치로서 구성되는 서버(110)와 다기능 주변 장치(120)는 전력 절약 상태로 이행 가능하다고 판정된다.When the control unit 421 holds information indicating that the multifunction peripheral 120 can transition to the power saving state or when any other transition condition is satisfied, And shifts to the saving state. As described above, when the multifunction peripheral device 120 determines that it is a device configured integrally with the server 110 and when the server 110 establishes a communication connection only with the multifunction peripheral device 120 as a client , Determination is made as follows. That is, it is determined that the server 110 and the multi-function peripheral device 120 configured as the same apparatus can transition to the power saving state.

본 실시예에 따르면, 서버(110)에 의해서 계속 유지되고 있는 커넥션이 존재하는 경우에도, 그렇지만 해당 커넥션이, 서버(110)가 동작하고 있는 다기능 주변 장치(120)에 의해 실행되는 클라이언트 애플리케이션(300)과의 커넥션만인 경우에는, 다기능 주변 장치(120)를 전력 절약 상태로 이행하도록 제어하는 것이 가능하게 된다.According to the present embodiment, even if there is a connection maintained by the server 110, the connection is established only when the client application 300 (which is executed by the multifunction peripheral 120 in which the server 110 is operating) , It is possible to control the multifunction peripheral device 120 to shift to the power saving state.

 제1 실시예에 있어서, 서버 애플리케이션(400)이 클라이언트 애플리케이션(300)을 실행하고 있는 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있는 경우에, 클라이언트 애플리케이션(300)은 넌-킵-얼라이브 동기 통신을 요구한다.In the first embodiment, when the server application 400 is enabled on the same device as the multifunction peripheral 120 executing the client application 300, the client application 300 is a non-keep- Requires synchronous communication.

이에 비해, 제5 실시예에서는, 서버 애플리케이션(400)이 다기능 주변 장치(120)와 동일한 장치 상에서 인에이블되어 있는 경우에도, 그렇지만 복수의 동기 요구에 관한 통신을 연속적으로 실행할 필요가 있는 경우에는, 복수의 동기 요구의 실행 기간 내에 킵-얼라이브 동기 통신이 요구된다. 따라서, 동기 처리를 빠르게 실행할 수 있게 된다. 본 실시예에서, 연속적으로 실행되는 복수의 동기 요구의 세트는, "동기 작업"이라고 칭한다.On the other hand, in the fifth embodiment, even when the server application 400 is enabled on the same device as the multifunction peripheral device 120, but the communication related to the plurality of synchronization requests needs to be continuously executed, Keep-alive synchronous communication is required within the execution period of a plurality of synchronization requests. Therefore, the synchronization processing can be executed quickly. In this embodiment, a set of a plurality of consecutive synchronization requests is referred to as a "synchronization operation ".

본 실시예에 따른 구성에 있어서는, 제1 실시예와 동일한 부분은 설명하지 않고, 여기에서는 제1 실시예와 상이한 부분에 대해서만 설명한다.In the configuration according to the present embodiment, the same portions as those in the first embodiment are not described, and only different portions from the first embodiment will be described here.

본 실시예에 따른 클라이언트 애플리케이션(300)의 소프트웨어 구성에 대해서, 도 11을 참조해서 설명한다. 본 실시예에 있어서, 통신 제어 유닛(320)은, 강제 킵-얼라이브 플래그(1101)를 갖는다. 강제 킵-얼라이브 플래그(1101)는, 통신 처리 유닛(322)을 통해 서버 애플리케이션(400)에 대하여 제어 유닛(321)으로부터 송신될 동기 요구의 내용에 따라 제어 유닛(321)에 의해 설정되고, 통신 실행 시에 통신 처리 유닛(322)에 의해 참조된다. 참조된 강제 킵-얼라이브 플래그(1101)의 값에 따라, 통신 처리 유닛(322)은, 서버 애플리케이션(400)에 대하여 킵-얼라이브 동기 요구를 송신할지 또는 넌-킵-얼라이브 동기 요구를 송신할지를 전환한다. 강제 킵-얼라이브 플래그(1101)는, HDD(205), ROM(206), 및 RAM(203) 중 어느 하나에 저장된다.The software configuration of the client application 300 according to the present embodiment will be described with reference to FIG. In this embodiment, the communication control unit 320 has a forced keep-alive flag 1101. [ The forced keep-alive flag 1101 is set by the control unit 321 in accordance with the content of the synchronization request to be transmitted from the control unit 321 to the server application 400 via the communication processing unit 322, Is referred to by the communication processing unit 322 at the time of execution. Along with the value of the referenced forced keep-alive flag 1101, the communication processing unit 322 determines whether to transmit a keep-alive synchronization request or a non-keep-alive synchronization request to the server application 400 do. The forced keep-alive flag 1101 is stored in either the HDD 205, the ROM 206, or the RAM 203. [

본 실시예에 따른 클라이언트 애플리케이션(300)의 동작에 대해서, 도 12를 참조해서 설명한다. 도 12에 나타낸 처리는, CPU(202)가 HDD(205) 또는 ROM(206)으로부터 판독한 클라이언트 애플리케이션(300)을 실행함으로써 실현된다. 제1 실시예에 있어서 도 5를 참조해서 설명한 처리에 대해서는, 도 5에서와 동일한 단계 번호를 첨부하고, 여기에서는 설명되지 않는다.The operation of the client application 300 according to the present embodiment will be described with reference to FIG. The processing shown in Fig. 12 is realized by the CPU 202 executing the client application 300 read from the HDD 205 or ROM 206. Fig. The process described with reference to Fig. 5 in the first embodiment is attached with the same step number as in Fig. 5, and is not described here.

도 12에서의 흐름도는, 미리 결정된 동기 작업 개시 조건이 만족되었을 경우에 개시된다. 미리 결정된 동기 작업 개시 조건의 예는, 다기능 주변 장치(120)가 서버(110)에 유지되어 있는 마스터 데이터(401)를 설정 데이터(311)와 처음으로 동기시키는 경우와, 다기능 주변 장치(120)가 유저로부터의 지시에 따라 설정 데이터(311)를 마스터 데이터(401)와 강제적으로 동기시키는 경우를 포함한다. 이들 경우에서는, 설정 데이터(311)를 마스터 데이터(401)와 동기시키기 위해서는, 마스터 데이터(401)에 포함된 복수의 데이터에 대한 동기 요구를 연속적으로 실시한다. 그로 인해, 이들 경우에, 제어 유닛(321)은, 복수의 동기 요구를 통합해서 1개의 동기 작업으로서 다룸으로써 통신 처리 유닛(322)을 통해 서버 애플리케이션(400)과의 동기 통신을 실행한다. 그러나, 미리 결정된 동기 작업 개시 조건은 이들 예들 중 임의의 것일 필요는 없고, 그 조건의 내용은 중요하지 않다. 단계 S1210에 있어서, 제어 유닛(321)은, 실행될 동기 통신이, 상술한 바와 같은 동기 작업 개시 조건에 기초해서 개시된 동기 작업인지의 여부를 판정한다. 판정의 결과, 실행될 동기 통신이, 동기 작업 개시 조건에 기초해서 개시된 동기 작업인 경우(단계 S1210에서, 예)에는, 처리는 단계 S1220으로 진행한다. 그렇지 않았을 경우(단계 S1210에서, 아니오)에는, 처리는 단계 S1230으로 진행한다. 단계 S1220에 있어서, 제어 유닛(321)은, 강제 킵-얼라이브 플래그(1101)를 온으로 설정하고, 처리는 단계 S1230으로 진행한다. 단계 S1230에 있어서, 제어 유닛(321)은, 동기 작업에 포함되고 미실시된 1개의 동기 요구를 판독하고, 처리는 단계 S500으로 진행한다. 단계 S500에서 판정이 아니오인 경우, 단계 S1240에 있어서, 통신 처리 유닛(322)은, 강제 킵-얼라이브 플래그(1101)의 값을 취득하고, 플래그가 온인지의 여부를 판정한다. 플래그가 온인 경우(단계 S1240에서, 예), 처리는 단계 S550으로 진행한다. 단계 S550에서, 통신 처리 유닛(322)은, 킵-얼라이브 통신 요구를 포함하는 동기 요구를 서버 애플리케이션(400)에 송신하고, 이러한 송신을 제어 유닛(321)에 통지한다. 그 다음, 처리는 단계 S1250으로 진행한다. 단계 S1250에 있어서, 제어 유닛(321)은, 동기 작업이 미실시된 동기 요구를 포함하고 있는지의 여부를 판정한다. 판정의 결과, 미실시된 동기 요구가 포함되어 있는 경우(단계 S1250에서, 예), 처리는 단계 S1230으로 진행한다. 미실시된 동기 요구가 포함되어 있지 않는 경우(단계 S1250에서, 아니오), 처리는 단계 S1260으로 진행한다. 단계 S1260에 있어서, 제어 유닛(321)은, 동기 작업이 완료된 것으로 판정한다. 그 다음, 제어 유닛(321)은, 강제 킵-얼라이브 플래그(1101)를 오프로 설정하고, 이러한 플로우는 종료된다.The flowchart in Fig. 12 is started when a predetermined synchronous operation start condition is satisfied. An example of a predetermined synchronous operation start condition is the case where the multifunction peripheral 120 first synchronizes the master data 401 held in the server 110 with the setting data 311, Includes a case of forcibly synchronizing the setting data 311 with the master data 401 in accordance with an instruction from the user. In these cases, in order to synchronize the setting data 311 with the master data 401, synchronization requests for a plurality of data included in the master data 401 are continuously performed. Thus, in these cases, the control unit 321 performs synchronous communication with the server application 400 through the communication processing unit 322 by integrating a plurality of synchronization requests and treating them as one synchronization job. However, the predetermined synchronous operation start condition need not be any of these examples, and the content of the condition is not important. In step S1210, the control unit 321 determines whether the synchronous communication to be executed is a synchronous operation started based on the synchronous operation start condition as described above. As a result of the determination, if the synchronous communication to be executed is a synchronous operation started based on the synchronous operation start condition (YES in step S1210), the process proceeds to step S1220. Otherwise (NO in step S1210), the process proceeds to step S1230. In step S1220, the control unit 321 sets the forced keep-alive flag 1101 to ON, and the process proceeds to step S1230. In step S1230, the control unit 321 reads one synchronization request included in the synchronization job and not yet performed, and the process proceeds to step S500. If the determination in step S500 is NO, in step S1240, the communication processing unit 322 acquires the value of the forced keep-alive flag 1101 and determines whether or not the flag is on. If the flag is ON (YES in step S1240), the process proceeds to step S550. In step S550, the communication processing unit 322 sends a synchronization request including a keep-alive communication request to the server application 400, and notifies this transmission to the control unit 321. [ The process then proceeds to step S1250. In step S1250, the control unit 321 determines whether or not the synchronization job includes a synchronization request that has not yet been performed. As a result of the determination, if the synchronization request is not included (YES in step S1250), the process proceeds to step S1230. If the synchronized synchronization request is not included (NO in step S1250), the process proceeds to step S1260. In step S1260, the control unit 321 determines that the synchronization operation is completed. Then, the control unit 321 sets the forced keep-alive flag 1101 to off, and this flow ends.

본 실시예에 따르면, 클라이언트로서의 다기능 주변 장치(120)와 서버(110)가 일체로 된 장치로서 구성되고, 연속한 복수의 통신을 수반하는 동기 처리를 실행하는 경우에서도, 처리를 빠르게 실행할 수 있게 된다.According to the present embodiment, even when the multifunction peripheral 120 as the client and the server 110 are configured as an integrated unit and execute synchronous processing involving a plurality of continuous communications, do.

다른 Other 실시예Example

본 발명의 실시예(들)는 또한 저장 매체(이는 더 완전하게는 '일시적 컴퓨터 판독 가능 저장 매체'로서 지칭될 수도 있음)에 기록된 컴퓨터 실행 가능 명령어(예를 들어, 하나 이상의 프로그램)를 판독하고 실행하여, 하나 이상의 상기 실시예(들)의 기능을 수행하고, 및/또는 하나 이상의 상기 실시예(들)의 기능을 수행하기 위한 하나 이상의 회로(예를 들어, 주문형 집적 회로 (ASIC))를 포함하는 시스템 또는 장치의 컴퓨터에 의해, 그리고 예를 들어, 하나 이상의 상기 실시예(들)의 기능을 수행하기 위해 상기 저장 매체로부터 컴퓨터 실행 가능 명령을 판독하고 실행함으로써 및/또는 하나 이상의 상기 실시예(들)의 기능을 수행하기 위해 하나 이상의 회로를 제어함으로써 시스템 또는 장치의 컴퓨터에 의해 수행된 방법에 의해 실현될 수도 있다. 컴퓨터는 하나 이상의 프로세서(예를 들어, 중앙 처리 장치(CPU), 마이크로 처리 장치(MPU))를 포함할 수 있으며, 컴퓨터 실행 가능 명령어를 판독하고 실행하기 위해 별도의 컴퓨터 또는 개별 프로세서의 네트워크를 포함할 수 있다. 컴퓨터 실행 가능 명령어들은 예를 들어, 네트워크 또는 저장 매체로부터 컴퓨터에 제공될 수 있다. 저장 매체는, 예를 들어, 하드 디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 분산 컴퓨팅 시스템의 저장 장치, 광학 디스크(예를 들어, 콤팩트 디스크(CD), DVD(digital versatile disc), 또는 BDTM(Blu-ray Disc)), 플래시 메모리 장치, 메모리 카드, 등에서 하나 이상을 포함할 수 있다.The embodiment (s) of the present invention may also be used to read computer-executable instructions (e.g., one or more programs) recorded on a storage medium (which may be more fully referred to as a " temporary computer readable storage medium & One or more circuits (e.g., application specific integrated circuits (ASICs)) for performing the functions of one or more of the above described embodiments (s) and / By reading and executing computer-executable instructions from the storage medium to perform the functions of, for example, one or more of the above embodiment (s), and / May be realized by a method performed by a computer of the system or apparatus by controlling one or more circuits to perform the function of the example (s). A computer may include one or more processors (e.g., a central processing unit (CPU), a microprocessor (MPU)) and may include a separate computer or a network of separate processors for reading and executing computer- can do. The computer-executable instructions may be provided to the computer, for example, from a network or storage medium. The storage medium may be, for example, a hard disk, a random access memory (RAM), a read only memory (ROM), a storage device of a distributed computing system, an optical disk (e.g., a compact disk ), or may comprise a TM BD (Blu-ray Disc)), flash memory devices, memory cards, etc. one or more.

(기타의 실시예)(Other Embodiments)

본 발명은, 상기의 실시예의 1개 이상의 기능을 실현하는 프로그램을, 네트워크 또는 기억 매체를 개입하여 시스템 혹은 장치에 공급하고, 그 시스템 혹은 장치의 컴퓨터에 있어서 1개 이상의 프로세서가 프로그램을 판독하여 실행하는 처리에서도 실현가능하다.The present invention can be realized by supplying a program or a program for realizing one or more functions of the above embodiments to a system or an apparatus via a network or a storage medium and reading the program from one or more processors .

또한, 1개 이상의 기능을 실현하는 회로(예를 들어, ASIC)에 의해서도 실행가능하다.It may also be implemented by a circuit (for example, an ASIC) that realizes one or more functions.

본 발명은 예시적인 실시예를 참조하여 설명되었지만, 본 발명은 개시된 예시적인 실시예에 한정되지 않는다는 것을 이해해야 한다. 다음의 특허 청구 범위는 이러한 모든 수정 및 균등 구조 및 기능을 포함하도록 가장 넓게 해석되어야 한다.While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The following claims are to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.

Claims (18)

정보 처리 장치로서,
상기 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 상기 정보 처리 장치와 통신하기 위한 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치인지의 여부를 판정하기 위한 판정 수단; 및
상기 정보 처리 장치와 상기 서버 사이의 통신 커넥션의 계속 유지와 관련하여, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정된 경우와, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치가 아니라고 판정된 경우 사이에서, 상이한 타입의 제어를 행하기 위한 제어 수단을 포함하는, 정보 처리 장치.
An information processing apparatus comprising:
Judging means for judging whether or not the information processing apparatus is a device requiring a server for communicating with the information processing apparatus to be able to shift to the power saving state as a transition condition to a power saving state of the apparatus; And
Wherein the information processing apparatus is a device that requests, as a transition condition to the power saving state, that the server can transition to the power saving state, with respect to the continuation of a communication connection between the information processing apparatus and the server And when the information processing apparatus is determined not to be a device requesting the server to be able to shift to the power saving state as a transition condition to the power saving state, And a control unit for controlling the information processing apparatus.
제1항에 있어서,
상기 서버와 상기 정보 처리 장치 사이의 통신 커넥션을 확립하는 처리를 실행하기 위한 통신 제어 수단을 추가로 포함하는, 정보 처리 장치.
The method according to claim 1,
Further comprising communication control means for executing a process of establishing a communication connection between said server and said information processing apparatus.
제2항에 있어서,
상기 서버와 상기 정보 처리 장치가 상이한 장치들인 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치가 아니라고 판정하도록 구성되고,
상기 제어 수단은, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 계속 유지하게 하기 위한 정보를 상기 정보 처리 장치로 하여금 상기 서버에 통지하게 하는 제어를 행하도록 구성되는, 정보 처리 장치.
3. The method of claim 2,
Wherein when the server and the information processing apparatus are different apparatuses, the determination means determines that the information processing apparatus requests the server to transition to the power saving state as a transition condition to the power saving state Device, < / RTI >
Wherein the control means is configured to perform control to cause the information processing apparatus to notify the server of information for causing the server to continuously maintain the communication connection established by the communication control means.
제2항 또는 제3항에 있어서,
상기 정보 처리 장치가 상기 서버와 일체로 구성된 장치인 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정하도록 구성되고,
상기 제어 수단은, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 해제하게 하기 위한 정보를 상기 서버의 클라이언트로서의 상기 정보 처리 장치로 하여금 상기 서버에 통지하게 하는 제어를 행하도록 구성되는, 정보 처리 장치.
The method according to claim 2 or 3,
When the information processing apparatus is an apparatus configured integrally with the server, the determination means determines that the information processing apparatus is capable of transitioning to the power saving state as the transition condition to the power saving state Determining that the device is a requesting device,
Wherein the control means is configured to perform control to cause the information processing apparatus as a client of the server to notify the server of information for causing the server to release the communication connection established by the communication control means. Information processing device.
제2항에 있어서,
상기 정보 처리 장치가 상기 서버와 일체로 구성된 장치인 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정하도록 구성되고,
상기 제어 수단은 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 해제하는 제어를 행하도록 구성되는, 정보 처리 장치.
3. The method of claim 2,
When the information processing apparatus is an apparatus configured integrally with the server, the determination means determines that the information processing apparatus is capable of transitioning to the power saving state as the transition condition to the power saving state Determining that the device is a requesting device,
And the control means is configured to perform control to release the communication connection established by the communication control means.
정보 처리 장치로서,
서버와의 통신 커넥션을 확립하는 처리를 실행하기 위한 통신 제어 수단;
상기 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 상기 정보 처리 장치와 통신하기 위한 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치인지의 여부를 판정하기 위한 판정 수단; 및
상기 판정 수단의 판정의 결과에 따라, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션의 커넥션 상태를 계속 유지하게 하기 위한 정보 또는 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 해제하게 하기 위한 정보를 상기 서버에 통지하기 위한 통지 수단을 포함하는, 정보 처리 장치.
An information processing apparatus comprising:
Communication control means for executing a process of establishing a communication connection with the server;
Wherein the information processing apparatus further comprises determination means for determining whether or not the server for communicating with the information processing apparatus is a device requesting the server to be able to transition to the power saving state as a transition condition to a power- ; And
Information for causing the server to continuously maintain the connection state of the communication connection established by the communication control means or information for allowing the server to maintain the communication connection established by the communication control means in accordance with a result of the determination by the determination means And notifying means for informing the server of information for releasing the information.
제2항에 있어서,
상기 판정 수단의 판정의 결과에 따라, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션의 커넥션 상태를 계속 유지하게 하기 위한 정보 또는 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 해제하게 하기 위한 정보를 상기 서버에 통지하기 위한 통지 수단을 추가로 포함하는, 정보 처리 장치.
3. The method of claim 2,
Information for causing the server to continuously maintain the connection state of the communication connection established by the communication control means or information for allowing the server to maintain the communication connection established by the communication control means in accordance with a result of the determination by the determination means And notifying means for informing the server of information for releasing the information.
제7항에 있어서,
상기 서버와 상기 정보 처리 장치가 상이한 장치들인 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치가 아니라고 판정하도록 구성되고,
상기 통지 수단은, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 계속 유지하게 하기 위한 정보를 상기 서버에 통지하도록 구성되는, 정보 처리 장치.
8. The method of claim 7,
Wherein when the server and the information processing apparatus are different apparatuses, the determination means determines that the information processing apparatus requests the server to transition to the power saving state as a transition condition to the power saving state Device, < / RTI >
Wherein the notification means is configured to notify the server of information for causing the server to continuously maintain the communication connection established by the communication control means.
제7항 또는 제8항에 있어서,
상기 정보 처리 장치가 상기 서버와 일체로 구성된 장치인 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정하도록 구성되고,
상기 통지 수단은, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 해제하게 하기 위한 정보를 상기 서버에 통지하도록 구성되는, 정보 처리 장치.
9. The method according to claim 7 or 8,
When the information processing apparatus is an apparatus configured integrally with the server, the determination means determines that the information processing apparatus is capable of transitioning to the power saving state as the transition condition to the power saving state Determining that the device is a requesting device,
Wherein the notification means is configured to notify the server of information for causing the server to release the communication connection established by the communication control means.
제7항 또는 제8항에 있어서,
상기 정보 처리 장치의 설정 정보를 관리하기 위한 관리 수단을 추가로 포함하고,
상기 통신 제어 수단은, 상기 관리 수단에 의해 관리된 설정 정보의 갱신 내용을 나타내는 제1 갱신 정보를 상기 서버에 통지하기 위한 통지 처리 또는 상기 서버가 관리하는 설정 정보의 갱신 내용을 나타내는 제2 갱신 정보를 상기 서버로부터 취득하기 위한 취득 처리 중 하나 이상을 실행하기 위해 상기 서버와의 커넥션을 확립하도록 구성되는, 정보 처리 장치.
9. The method according to claim 7 or 8,
Further comprising management means for managing setting information of the information processing apparatus,
Wherein the communication control means comprises notification processing for notifying the server of the first update information indicating the update contents of the setting information managed by the management means or second update information indicating the update contents of the setting information managed by the server To acquire from the server, a connection with the server to execute at least one of acquisition processing for acquiring the information from the server.
제10항에 있어서,
상기 통신 제어 수단은, 상기 제1 갱신 정보를 상기 서버에 통지하기 위한 상기 통지 처리를 실행하고, 상기 제2 갱신 정보를 상기 서버로부터 취득하기 위한 상기 취득 처리를 실행하도록 구성되고,
상기 정보 처리 장치가 상기 서버와 일체로 구성된 장치인 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정하도록 구성되고,
상기 통신 제어 수단에 의해 실행될 처리가 상기 통지 처리이고 상기 판정 수단이 상기 정보 처리 장치가 상기 서버와 일체로 구성된 장치라고 판정한 경우에, 상기 통지 수단은, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 계속 유지하게 하기 위한 정보를 상기 서버에 통지하도록 구성되고,
상기 통신 제어 수단에 의해 실행될 처리가 상기 취득 처리이고 상기 판정 수단이 상기 정보 처리 장치가 상기 서버와 일체로 구성된 장치라고 판정한 경우에, 상기 통지 수단은, 상기 서버로 하여금 상기 통신 제어 수단에 의해 확립된 통신 커넥션을 해제하게 하기 위한 정보를 상기 서버에 통지하도록 구성되는, 정보 처리 장치.
11. The method of claim 10,
Wherein the communication control means is configured to execute the notification processing for notifying the server of the first update information and execute the acquisition processing for acquiring the second update information from the server,
When the information processing apparatus is an apparatus configured integrally with the server, the determination means determines that the information processing apparatus is capable of transitioning to the power saving state as the transition condition to the power saving state Determining that the device is a requesting device,
When the processing to be executed by the communication control means is the notification processing and the determination means determines that the information processing apparatus is an apparatus configured integrally with the server, the notifying means causes the server to perform, And notify the server of information for maintaining the established communication connection,
When the processing to be executed by the communication control means is the acquisition processing and the determination means determines that the information processing apparatus is an apparatus configured integrally with the server, the notification means causes the server And notify the server of information for releasing the established communication connection.
제10항에 있어서,
상기 통지 수단은, 상기 서버로 하여금 상기 통신 커넥션을 계속 유지하게 하기 위한 정보를, 상기 제2 갱신 정보의 취득 요구와 함께 또는 상기 제1 갱신 정보와 함께 상기 서버에 통지하도록 구성되는, 정보 처리 장치.
11. The method of claim 10,
Wherein the notification means is configured to notify the server of information for causing the server to keep the communication connection together with the acquisition request of the second update information or together with the first update information, .
제10항에 있어서,
상기 통지 수단은, 상기 서버로 하여금 상기 통신 커넥션을 해제하게 하기 위한 정보를, 상기 제2 갱신 정보의 취득 요구와 함께 또는 상기 제1 갱신 정보와 함께 상기 서버에 통지하도록 구성되는, 정보 처리 장치.
11. The method of claim 10,
Wherein the notifying means is configured to notify the server of information for causing the server to release the communication connection with a request for obtaining the second update information or together with the first update information.
제1항, 제2항, 제3항, 제5항 및 제6항 중 어느 한 항에 있어서,
상기 정보 처리 장치와 통신하기 위한 상기 서버의 어드레스를 저장하기 위한 저장 수단을 추가로 포함하고,
상기 저장 수단에 저장된 상기 서버의 상기 어드레스가 미리 결정된 어드레스인 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정하고;
상기 저장 수단에 저장된 상기 서버의 상기 어드레스가 미리 결정된 어드레스가 아닌 경우에, 상기 판정 수단은, 상기 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치가 아니라고 판정하는, 정보 처리 장치.
The method according to any one of claims 1, 2, 3, 5, and 6,
Further comprising storage means for storing an address of the server for communicating with the information processing apparatus,
When the address of the server stored in the storage means is a predetermined address, the determination means determines that the information processing apparatus is capable of transitioning to the power saving state as a transition condition to the power saving state of the apparatus The device is determined to be a device requesting to be done;
When the address of the server stored in the storage means is not a predetermined address, the determination means determines whether or not the information processing apparatus is a transition condition to a power- And determines that the device is not a device that requires to be enabled.
정보 처리 장치의 제어 방법으로서,
상기 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 상기 정보 처리 장치와 통신하기 위한 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치인지의 여부를 판정하는 단계; 및
상기 정보 처리 장치와 상기 서버 사이의 통신 커넥션의 계속 유지와 관련하여, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치라고 판정된 경우와, 상기 정보 처리 장치가, 상기 전력 절약 상태로의 이행 조건으로서, 상기 서버가 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치가 아니라고 판정된 경우 사이에서, 상이한 타입의 제어를 행하는 단계를 포함하는, 정보 처리 장치의 제어 방법.
A control method of an information processing apparatus,
Judging whether or not the information processing apparatus is a device requiring a server for communicating with the information processing apparatus to be able to shift to the power saving state as a transition condition to a power saving state of the device; And
Wherein the information processing apparatus is a device that requests, as a transition condition to the power saving state, that the server can transition to the power saving state, with respect to the continuation of a communication connection between the information processing apparatus and the server , And when the information processing apparatus is judged as a transition condition to the power saving state and the server is judged not to be capable of transitioning to the power saving state, And a step of controlling the information processing apparatus.
정보 처리 장치의 제어 방법으로서,
서버와의 통신 커넥션을 확립하는 처리를 실행하는 단계;
상기 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 상기 정보 처리 장치와 통신하기 위한 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치인지의 여부를 판정하는 단계; 및
상기 판정의 결과에 따라, 상기 서버로 하여금 확립된 상기 통신 커넥션을 계속 유지하게 하기 위한 정보 또는 상기 서버로 하여금 상기 확립된 통신 커넥션을 해제하게 하기 위한 정보를 상기 서버에 통지하는 단계를 포함하는, 정보 처리 장치의 제어 방법.
A control method of an information processing apparatus,
Executing a process of establishing a communication connection with the server;
Judging whether or not the information processing apparatus is a device that requires the server for communicating with the information processing apparatus to be able to transition to the power saving state as a transition condition to a power saving state of the device; And
And notifying the server of information for causing the server to keep the established communication connection or information for causing the server to release the established communication connection in accordance with a result of the determination. A method of controlling an information processing apparatus.
디바이스에서 실행될 때, 상기 디바이스로 하여금 제15항에 따른 정보 처리 장치의 제어 방법을 실행하게 하는, 기록 매체에 저장된 컴퓨터 프로그램.A computer program stored in a recording medium that when executed on a device causes the device to execute a control method of the information processing apparatus according to claim 15. 기록 매체에 저장된 컴퓨터 프로그램으로서,
정보 처리 장치로 하여금,
서버와의 통신 커넥션을 확립하는 처리를 실행하는 것;
상기 정보 처리 장치가, 장치의 전력 절약 상태로의 이행 조건으로서, 상기 정보 처리 장치와 통신하기 위한 상기 서버가 상기 전력 절약 상태로 이행 가능하게 되는 것을 요구하는 장치인지의 여부를 판정하는 것; 및
상기 판정의 결과에 따라, 상기 서버로 하여금 확립된 상기 통신 커넥션을 계속 유지하게 하기 위한 정보 또는 상기 서버로 하여금 상기 확립된 통신 커넥션을 해제하게 하기 위한 정보를 상기 서버에 통지하는 것을 실행하게 하는, 기록 매체에 저장된 컴퓨터 프로그램.
A computer program stored in a recording medium,
An information processing apparatus,
Executing a process of establishing a communication connection with the server;
Wherein the information processing apparatus determines whether or not the server for communicating with the information processing apparatus is a requesting apparatus capable of transitioning to the power saving state as a transition condition to a power saving state of the apparatus; And
And informing the server of information for causing the server to keep the established communication connection or for causing the server to release the established communication connection in accordance with a result of the determination. A computer program stored on a recording medium.
KR1020170040430A 2016-03-31 2017-03-30 Information processing apparatus, method for controlling information processing apparatus, and program KR102115488B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2016072593 2016-03-31
JPJP-P-2016-072593 2016-03-31
JP2017010751A JP6794281B2 (en) 2016-03-31 2017-01-24 Information processing device, control method of information processing device, and program
JPJP-P-2017-010751 2017-01-24

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020200060412A Division KR102138041B1 (en) 2016-03-31 2020-05-20 Information processing apparatus, method for controlling information processing apparatus, and program

Publications (2)

Publication Number Publication Date
KR20170113382A true KR20170113382A (en) 2017-10-12
KR102115488B1 KR102115488B1 (en) 2020-05-26

Family

ID=60044074

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020170040430A KR102115488B1 (en) 2016-03-31 2017-03-30 Information processing apparatus, method for controlling information processing apparatus, and program
KR1020200060412A KR102138041B1 (en) 2016-03-31 2020-05-20 Information processing apparatus, method for controlling information processing apparatus, and program

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020200060412A KR102138041B1 (en) 2016-03-31 2020-05-20 Information processing apparatus, method for controlling information processing apparatus, and program

Country Status (3)

Country Link
JP (1) JP6794281B2 (en)
KR (2) KR102115488B1 (en)
CN (2) CN107277099B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7024602B2 (en) * 2018-05-23 2022-02-24 コニカミノルタ株式会社 Image processing equipment, network connection method and network connection program
JP7309422B2 (en) * 2019-04-08 2023-07-18 キヤノン株式会社 Communication device, its control method, and its program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050030582A1 (en) * 2003-08-05 2005-02-10 Yu Xu Multi-function printer system, a multi-function printer, a server, and a method and program for reducing a environmental load
US20100100590A1 (en) * 2008-10-21 2010-04-22 Palay Andrew J Always ready client/server data synchronization
US20110292975A1 (en) * 2009-11-27 2011-12-01 Murata Machinery, Ltd. Network Device
US20140156725A1 (en) * 2012-12-01 2014-06-05 Qualcomm Innovation Center, Inc. Graceful degradation of websocket connections to nonpersistent http-based communications

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8319989B2 (en) * 2006-02-21 2012-11-27 Ricoh Company, Ltd. Image processing apparatus for processing and communicating with an information processing apparatus which does not have an image processing apparatus driver software
JP5274294B2 (en) * 2009-02-18 2013-08-28 キヤノン株式会社 Information processing apparatus and control method thereof, and image processing apparatus and control method thereof
JP2010244464A (en) * 2009-04-09 2010-10-28 Canon Inc Information processing apparatus, network interface device, control method thereof, and program
JP5701041B2 (en) * 2010-12-15 2015-04-15 キヤノン株式会社 Server apparatus, image processing system, server apparatus control method, and program
JP6130675B2 (en) * 2013-01-18 2017-05-17 キヤノン株式会社 Image forming apparatus, server, image forming system, and control method of image forming system
JP6243654B2 (en) * 2013-08-05 2017-12-06 キヤノン株式会社 COMMUNICATION SYSTEM, INFORMATION PROCESSING DEVICE, ITS CONTROL METHOD, AND PROGRAM
JP5679078B1 (en) * 2014-02-04 2015-03-04 富士ゼロックス株式会社 Data storage system, image processing apparatus, and program
JP6364866B2 (en) * 2014-03-27 2018-08-01 富士通株式会社 Terminal device, communication control system, and communication control method
JP6318959B2 (en) * 2014-08-01 2018-05-09 京セラドキュメントソリューションズ株式会社 Information processing system and information processing program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050030582A1 (en) * 2003-08-05 2005-02-10 Yu Xu Multi-function printer system, a multi-function printer, a server, and a method and program for reducing a environmental load
US20100100590A1 (en) * 2008-10-21 2010-04-22 Palay Andrew J Always ready client/server data synchronization
US20110292975A1 (en) * 2009-11-27 2011-12-01 Murata Machinery, Ltd. Network Device
US20140156725A1 (en) * 2012-12-01 2014-06-05 Qualcomm Innovation Center, Inc. Graceful degradation of websocket connections to nonpersistent http-based communications

Also Published As

Publication number Publication date
JP6794281B2 (en) 2020-12-02
CN107277099A (en) 2017-10-20
CN107277099B (en) 2021-07-23
CN113542425B (en) 2024-04-02
CN113542425A (en) 2021-10-22
KR102138041B1 (en) 2020-07-27
JP2017188076A (en) 2017-10-12
KR20200059205A (en) 2020-05-28
KR102115488B1 (en) 2020-05-26

Similar Documents

Publication Publication Date Title
JP5885410B2 (en) Pull print system, print server, control method therefor, and program
US8937730B2 (en) System, image forming apparatus, server, and control method thereof
US9497298B2 (en) Information processing apparatus, network interface device, control method therefor, and storage medium
JP5377091B2 (en) Information processing apparatus and control method thereof
JP2011232893A (en) Print data creation server, printing apparatus, and printing system
JP5772807B2 (en) Printing system, image forming apparatus, proxy response method, and program
KR102138041B1 (en) Information processing apparatus, method for controlling information processing apparatus, and program
US9086833B2 (en) System that outputs status information representing a status of a device
JP6242178B2 (en) Information processing apparatus, control method therefor, and program
CN110716700B (en) Print server, control method, and storage medium
JP2015121885A (en) Image forming apparatus, control method thereof, and program
EP3226104B1 (en) Efficient transition to power saving mode respecting connection state with server
JP6442230B2 (en) Information processing apparatus, synchronization control method, and program
US10397439B2 (en) Server system transmitting job to processing apparatus, information processing system, and control method for server system
JP2010063090A (en) Control apparatus, image processing device, control method, and program
US9917958B2 (en) Printing apparatus and control method of printing apparatus requesting print job from server system based on detected event
JP2016020034A (en) Information processing device, control method of the same, and program
JP2008257514A (en) Image data processing device
JP2012190383A (en) Communication device and image processing apparatus
JP2016016579A (en) Information processing apparatus, control method thereof, and information processing system
JP6481422B2 (en) Image processing apparatus and program
JP2024036076A (en) Information processing unit and program
JP2014119877A (en) Information processing device, control method of information processing device, and program
JP2018116524A (en) Image forming apparatus, access support method, and computer program
JP6748411B2 (en) Information processing apparatus, control method of information processing apparatus, and program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant