KR20150020069A - 정보처리장치, 그 제어 방법 및 컴퓨터 프로그램 - Google Patents
정보처리장치, 그 제어 방법 및 컴퓨터 프로그램 Download PDFInfo
- Publication number
- KR20150020069A KR20150020069A KR20140101606A KR20140101606A KR20150020069A KR 20150020069 A KR20150020069 A KR 20150020069A KR 20140101606 A KR20140101606 A KR 20140101606A KR 20140101606 A KR20140101606 A KR 20140101606A KR 20150020069 A KR20150020069 A KR 20150020069A
- Authority
- KR
- South Korea
- Prior art keywords
- network
- digital camera
- processing apparatus
- server
- information processing
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 104
- 230000010365 information processing Effects 0.000 title claims description 27
- 238000004590 computer program Methods 0.000 title claims description 3
- 238000004891 communication Methods 0.000 claims abstract description 65
- 230000004044 response Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 description 34
- 238000012545 processing Methods 0.000 description 22
- 238000012546 transfer Methods 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000009365 direct transmission Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/16—Discovering, processing access restriction or access information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Studio Devices (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
- Small-Scale Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
본 발명은, 네트워크상의 통신 기기 중, 통신해야 할 기기를 발견하는 방법에 관한 것이다. 제1 네트워크상에서 제1 디바이스가 발견되었을 경우, 발견된 제1 디바이스가, 이 제1 디바이스와 유효한 관련을 갖는 디바이스인가 아닌가를 제2 네트워크상의 디바이스에 문의한다. 문의의 결과, 발견된 제1 디바이스가 그 제1 디바이스와 유효한 관련을 갖는 디바이스라고 판정될 경우에는, 발견된 제1 디바이스로부터 데이터를 취득한다. 한편, 발견된 제1 디바이스가 그 제1 디바이스와 유효한 관련을 갖는 디바이스가 아니라고 판정될 경우에는, 발견된 제1 디바이스로부터 데이터를 취득하지 않는다.
Description
본 발명은, 정보처리장치, 그 제어 방법, 및 컴퓨터 프로그램에 관한 것이다.
무선통신기능을 탑재한 디지털 카메라나 디지털 비디오카메라가 알려져 있다(일본국 공개특허공보 특개2003-319309호). 이러한 디지털 카메라나 디지털 비디오카메라는, 무선통신기능을 사용해서 네트워크에 접속하고, 촬영한 화상 데이터를 네트워크상의 외부장치에 업로드할 수 있다.
네트워크상의 외부장치와 통신하기 위해서는, 우선 통신 상대를 식별하는 것이 필요하다. 그러므로, 네트워크상에 존재하는 기기를 서치(search)하는 것이 생각되지만, 서치에 의해 네트워크상의 특정 서비스를 갖는 기기가 모두 검출되는 것은 번잡하다.
본 발명은, 네트워크상에 존재하는 통신 기기 중, 통신해야 할 기기를 효율적으로 발견하는 것이 가능한 정보처리장치 및 그 제어 방법을 제공한다.
본 발명의 일 국면에서는, 제1 네트워크상의 디바이스 및, 상기 제1 네트워크와는 다른 제2 네트워크상의 디바이스와 통신가능한 정보처리장치를 제공하고, 상기 제1 네트워크상에서 제1 디바이스가 발견되었을 경우, 상기 발견된 제1 디바이스가, 상기 정보처리장치와 유효한 관련을 갖는 디바이스인가 아닌가를 상기 제2 네트워크상의 디바이스에 문의하는 문의 수단; 및 상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스인 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하고, 상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스가 아닌 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하지 않는, 통신 수단을 구비한다.
본 발명의 일 국면에서는, 제1 네트워크상의 디바이스 및, 상기 제1 네트워크와는 다른 제2 네트워크상의 디바이스와 통신가능한 정보처리장치의 제어 방법을 제공하고, 상기 제1 네트워크상에서 제1 디바이스가 발견되었을 경우, 상기 발견된 제1 디바이스가, 상기 정보처리장치와 유효한 관련을 갖는 디바이스인가 아닌가를 상기 제2 네트워크상의 디바이스에 문의하는 단계; 및 상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스인 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하는 단계를 포함하고, 상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스가 아닌 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하지 않는다.
본 발명의 또 다른 특징들은, 첨부도면을 참조하여 이하의 예시적 실시예들의 설명으로부터 명백해질 것이다.
도 1은, 실시예들에 따른 통신장치의 일례로서의 디지털 카메라의 기능 구성 예를 나타내는 블록도다.
도 2는, 실시예들에 따른 정보처리장치를 실현가능한 퍼스널 컴퓨터의 기능 구성 예를 나타내는 블록도다.
도 3a 및 도 3b는, 제1실시예에 따른 디지털 카메라, PC, 및 서버의 접속 형태를 모식적으로 도시한 도면이다.
도 4a 및 도 4b는, 상기 제1실시예의 페어링(pairing) 정보의 예들을 나타내는 도면이다.
도 5는, 상기 제1실시예에 따른 발견(discovery)처리에 있어서의 디지털 카메라, PC, 서버의 동작 시퀀스 도다.
도 6은, 제1실시예의 발견처리에 있어서의 디지털 카메라의 동작을 나타내는 흐름도다.
도 7은, 제1실시예의 발견처리에 있어서의 PC의 동작을 나타내는 흐름도다.
도 8a 내지 도 8d는, 디지털 카메라와 PC의 디바이스 정보의 예들을 나타내는 도면이다.
도 9는, 제2실시예에 따른 발견처리에 있어서의 디지털 카메라, PC, 서버의 동작 시퀀스 도다.
도 10은, 상기 제2실시예의 발견처리에 있어서의 디지털 카메라의 동작을 나타내는 흐름도다.
도 11은, 상기 제1실시예의 발견처리에 있어서의 PC의 동작을 나타내는 흐름도다.
도 2는, 실시예들에 따른 정보처리장치를 실현가능한 퍼스널 컴퓨터의 기능 구성 예를 나타내는 블록도다.
도 3a 및 도 3b는, 제1실시예에 따른 디지털 카메라, PC, 및 서버의 접속 형태를 모식적으로 도시한 도면이다.
도 4a 및 도 4b는, 상기 제1실시예의 페어링(pairing) 정보의 예들을 나타내는 도면이다.
도 5는, 상기 제1실시예에 따른 발견(discovery)처리에 있어서의 디지털 카메라, PC, 서버의 동작 시퀀스 도다.
도 6은, 제1실시예의 발견처리에 있어서의 디지털 카메라의 동작을 나타내는 흐름도다.
도 7은, 제1실시예의 발견처리에 있어서의 PC의 동작을 나타내는 흐름도다.
도 8a 내지 도 8d는, 디지털 카메라와 PC의 디바이스 정보의 예들을 나타내는 도면이다.
도 9는, 제2실시예에 따른 발견처리에 있어서의 디지털 카메라, PC, 서버의 동작 시퀀스 도다.
도 10은, 상기 제2실시예의 발견처리에 있어서의 디지털 카메라의 동작을 나타내는 흐름도다.
도 11은, 상기 제1실시예의 발견처리에 있어서의 PC의 동작을 나타내는 흐름도다.
이제, 본 발명의 예시적 실시예들을 첨부도면에 따라 상세히 설명한다. 이때, 이하에 설명하는 실시예들은, 본 발명을 실현하기 위한 단순한 예시들이며, 본 발명이 적용되는 장치의 구체적인 구성이나 각종 조건에 따라 적당하게 수정 또는 변경되어도 좋다. 또한, 그 실시예들을 적당하게 조합시키는 것도 가능하다.
제1실시예
<디지털 카메라의 구성>
이하에서는, 데이터를 전송하는 통신장치의 일례로서, 무선통신기능을 갖는 디지털 카메라에 관하여 설명한다. 이때, 무선통신기능을 갖고, 데이터를 전송가능한 임의의 장치에, 본 발명이 적용가능하다. 이러한 단말의 예들로서는, 휴대전화기, 퍼스널 컴퓨터, 타블렛 단말, 게임기등이 있지만, 다른 기기이어도 된다.
도 1은, 본 실시예에 따른 디지털 카메라(100)의 기능 구성 예를 나타내는 블록도다. 제어부(101)는, 예를 들면, CPU(MPU), 메모리(DRAM, SRAM)등으로 구성되고, 각종 처리(프로그램)를 실행해서 디지털 카메라(100)의 블록들을 제어하고, 블록간의 데이터 송신을 제어한다. 제어부(101)는, 유저의 조작을 접수하는 조작부(102)로부터의 조작 신호에 따라, 디지털 카메라(100)의 블록들을 제어한다.
조작부(102)는, 예를 들면, 전원 버튼, 줌 조정 버튼, 및 오토포커스버튼 등의 촬영에 관련되는 각종 조작을 입력하는 스위치류로 구성된다. 조작부(102)는, 메뉴 표시 버튼, 결정 버튼, 커서 키들, 포인팅 디바이스, 터치패널 등을 더 구비하고, 유저에 의해 이것들의 키나 버튼이 조작되면 제어부(101)에 조작 신호를 송신한다. 또한, 조작부(102)는 릴리즈 버튼을 구비하고, 그 릴리즈 버튼은 소위 "반가압" 상태로 눌려지는 스위치(SW1)와, 소위 "전가압" 상태로 눌려지는 스위치(SW2)를 구비한다. 상기 SW1이 가압되었을 때 촬영 준비 지시가 출력되고, SW2가 가압되었을 때 촬영 지시가 출력된다. 촬영 준비 동작에는, 자동초점검출(AF), 자동노출 제어(AE)등이 포함된다. 이때, 본 실시예에서는, 정지 화상 촬영과 동영상 촬영을 위해 하나의 릴리즈 버튼을 공용하고 있지만, 별도의 버튼을 사용하여도 된다.
버스(103)는, 각종 데이터, 제어신호, 지시 신호등을 디지털 카메라(100)의 블록들에 보내기 위한 범용 버스다.
촬상부(110)는, 촬상 렌즈에 의해 촬영된 피사체의 광학상의 광량을, 조리개를 사용하여 제어하고, CCD이미지 센서나 CMOS이미지 센서 등의 촬상소자를 사용하여 그 광학상을 화상신호로 변환한다.
또한, 음성입력부(120)는, 예를 들면 내장된 무지향성의 마이크 또는 음성입력 단자를 거쳐서 접속된 외부 마이크 등에 의해, 디지털 카메라(100) 부근의 음성을 집음한다.
메모리(104)는, 예를 들면 랜덤 액세스 메모리(RAM)나 재기록 가능한 불휘발성 메모리이며, 화상신호 및 음성신호, 디지털 카메라(100)의 설정 정보등을 일시적으로 기억한다.
기록 매체(141)는, 디지털 카메라(100)에 접속 가능한 기록 매체다. 기록 매체(141)는, 디지털 카메라(100)에서 생성한 각종 데이터등을 기록할 수 있다. 기록 매체(141)의 예로서는, 하드 디스크, 광디스크, 재기록 가능한 불휘발성 반도체 메모리등이 있다. 본 실시예에서는, 소위 메모리 카드라고 불리고, 디지털 카메라(100)에 장착가능한 재기록 가능한 불휘발성 반도체 메모리 장치를, 기록 매체(141)로서 사용한다.
영상출력부(150)는, 예를 들면 영상출력 단자로 이루어지고, 접속된 외부 표시부 등에, 영상을 표시시키기 위해서 화상신호를 송신한다. 또한, 영상출력부(150)와 후술하는 음성출력부(151)는 통합된 1개의 단자, 예를 들면 HDMI(등록상표)단자와 같은 단자이어도 된다.
음성출력부(151)는, 예를 들면 음성출력 단자로 이루어지고, 접속된 이어폰이나 스피커등으로부터 음성을 출력시키기 위해서 음성신호를 송신한다. 또한, 음성출력부(151)는, 디지털 카메라(100)에 내장되어도 된다.
통신부(152)는 외부 디바이스에 및 외부 디바이스로부터 직렬 또는 병렬 통신에 의한 데이터의 송수신을 유선 또는 무선으로 행한다. 통신부(152)가 사용할 수 있는 통신 인터페이스의 예들은, RS232C, USB, IEEE1394, P1284, SCSI, 모뎀, LAN, IEEE 802.11x등이 있다. 또한, 통신부(152)는 통신 인터페이스에 따른 통신 프로토콜을 실행함으로써 외부 디바이스와 데이터를 송수신하기도 한다. 통신 프로토콜의 예들은, 하이퍼 텍스트 전송 프로토콜(HTTP)이나 IP상의 영상 전송 프로토콜(PTP-IP)등이 있다. 여기에서 예시한 통신 인터페이스 및 통신 프로토콜은 잘 알려져 있기 때문에, 그 상세에 관한 설명은 생략한다. 이때, 기억매체(141)가 통신부(152)의 기능을 갖추는 것도 가능하다.
표시부(130)는, 기록 매체(141)에 기록된 화상 데이터나, 각종 메뉴등의 GUI를 표시한다. 표시부(130)는, 예를 들면 액정 디스플레이, 유기 EL디스플레이 등이어도 된다.
<퍼스널 컴퓨터(PC)의 구성>
이하에서는, 본 발명의 실시예들에 따른 유저 단말 및 서버를 실현할 수 있는 정보처리장치의 일례로서, 정지 화상이나 동영상을 불러올 수 있는 퍼스널 컴퓨터(PC)에 관하여 설명한다. 이때, 타블렛형 PC나 스마트 폰도 정보처리장치의 일례다.
도 2는, 본 실시예에 따른 PC(200)의 기능 구성 예를 나타내는 블록도다.
PC(200)는, 표시부(201)와, 조작부(202)와, CPU(203)와, 일차 기억장치(204)와, 이차 기억장치(205)와, 통신장치(206)를 구비한다.
각 구성요소의 기본적인 기능은 디지털 카메라(100)와 같기 때문에, 여기에서는 상세한 설명은 생략한다. 표시부(201)는 액정 디스플레이나 유기 EL디스플레이 등이어도 된다. 또, 표시부(201)는 PC(200)에 구비될 필요는 없고, PC(200)가 표시부(201)의 표시를 제어하는 표시 제어 기능을 가지는 것이 충분하다. 일차 기억장치(204)는, 예를 들면 랜덤 액세스 메모리(RAM)나 재기록 가능한 불휘발성 메모리이며, PC의 설정 값을 기억하고 CPU(203)가 실행하는 프로그램을 기억 및 전개하거나, CPU(203)의 워크 에어리어 등으로서 이용된다. 이차 기억장치(205)는 HDD나 자기테이프 드라이브등의 자기기록장치, DVD, CD, BD 또는 MO등의 광 또는 광자기 매체를 사용하는 기억장치, SSD등 불휘발성 반도체 메모리를 사용한 기억장치다. 이차 기억장치(205)는, 각종 애플리케이션(OS를 포함한다)이나 유저 데이터등의 보존에 사용된다.
CPU(203)는, 일차 기억장치(204)에 전개한 프로그램(OS나, 애플리케이션 등)을 실행하고, PC(200)의 블록들을 제어한다. CPU(203)는, 유저의 조작을 접수하는 조작부(202)로부터의 조작 신호에 따라 그 블록들을 제어한다. 조작부(202)로서는, 키보드와 마우스, 또는 터치패널등이 일반적으로 사용되지만, 본 발명은 이것들에 한정되지 않는다.
디지털 카메라(100)의 통신부(152)와 같은 통신장치(206)는, 소정의 규격을 따르는 통신 인터페이스 및 통신 프로토콜을 사용해서 외부 디바이스와 데이터를 통신한다. 이때, 통신부(152) 및 통신장치(206)는, 복수종의 통신 인터페이스를 갖고, 통신 인터페이스에 따른 통신 프로토콜을 사용하여 통신을 행할 수 있다. 본 실시예에서는, 통신장치(206)는, 근거리 통신망(LAN)상의 디바이스와 인터넷등의 광역 네트워크(WAN)상의 디바이스의 양쪽과 통신가능하도록 구성된다. 이때, LAN과 WAN은 2개의 다른 네트워크의 예이며, 통신장치(206)가, 데이터 송신 디바이스가 액세스가능한 제1 네트워크와, 데이터 전송 서비스를 제공하는 서버가 존재하는 제2 네트워크의 양쪽에 접속 가능하는 것이 충분하다.
이때, 실시예들에 따른 서버 및 유저 단말은 모두 도 2에 나타낸 퍼스널 컴퓨터에 의해 실현가능하지만, 이하의 설명에서는 편의상, "PC"는 유저 단말을 의미하는 구성요소로서 사용하고, 서버로서 기능하는 PC는 "서버"라고 부른다.
<접속 형태의 개요>
도 3a 및 도 3b는, 본 실시예에 따른, 디지털 카메라(100), PC(200a), 및 서버(200b)의 접속 형태를 모식적으로 나타내는 도다.
도 3a는, 서버(200b)와 디지털 카메라(100)간의 페어링(pairing) 처리와, 서버(200b)와 PC(200a)간의 페어링 처리를 각각 행하기 위한 통신 301, 302의 처리를 나타낸 모식도다. 디지털 카메라(100)와 PC(200a)는 라우터(300)에 의해 구축된 근거리 통신망(LAN)에 무선 및 유선으로 접속하고, 라우터(300)를 통해서 인터넷등의 광역 네트워크(WAN)에 접속하고, WAN상의 서버(200b)와 통신가능하다.
라우터(300)는, 네트워크의 구축 기능 및, 구축한 네트워크에 접속된 포터블 디바이스나 PC등의 디바이스간의 통신을 중계하는 라우팅(routing) 기능을 제공한다. 라우터(300)는, 인터넷 프로토콜 스위트(suite)에 준거해서 동작하고, 자신의 IP 어드레스가 게이트웨이 어드레스인 LAN을 구축한다. 또한, 라우터(300)는 유선 인터페이스와 무선 인터페이스 중 적어도 한쪽을 가진다. 유선접속은, 예를 들면, LAN케이블을 거쳐 상기 라우터와 디바이스간의 물리적인 접속이어도 되고, 무선접속은, 예를 들면, IEEE 802.11x(x는 a, b, g, n, ac등)에 준거한 무선접속이어도 된다. 본 실시예의 라우터(300)는, 도면에 나타낸 것처럼, 유선 인터페이스 및 무선 인터페이스를 가진다.
라우터(300)가 무선 인터페이스를 가질 경우, SSID와 암호 키가 설정되어 있고, 라우터(300)에 접속하기를 원하는 디바이스는, 라우터(300)에 설정된 상기 SSID와 암호 키를 사용해서 그 라우터(300)에 의해 인증됨으로써 라우터(300)와의 무선접속을 확립한다. 그 라우터(300)의 LAN에 포터블 디바이스나 PC등의 디바이스가 유선접속 또는 무선접속되면, 라우터(300)는 그 접속된 디바이스에 대하여 IP 어드레스를 할당한다. 예를 들면, IP 어드레스를 자동으로 할당하는 대표적인 프로토콜은, 동적 호스트 설정 프로토콜(DHCP)이다. 또한, 라우터(300)는, LAN상의 디바이스간에서 통신이 행해질 때에 LAN상에 송신되는 데이터의 프로토콜이나 IP 어드레스를 해석하고, 어느 경로를 사용하여 전송할 것인가를 판단한다.
서버(200b)와 디지털 카메라(100)간의 통신(301)을 통한 페어링 처리에 있어서, 유저는, 서버(200b)가 제공한 서비스를 사용하기 위해서, 유저 어카운트를 작성한다. 서버(200b)에서 작성한 유저 어카운트에 대하여, 디지털 카메라(100)를 등록함으로써 서버(200b)와 디지털 카메라(100)간의 페어링을 실현한다. 페어링 처리는, 구체적으로 아래의 과정으로 실현된다. 디지털 카메라(100)는, 서버(200b)에 대하여 디지털 카메라(100)의 디바이스 정보를 송신한다. 송신되는 디지털 카메라(100)의 디바이스 정보는, 예를 들면 도 4a에 도시된 정보이며, 메모리(104)에 미리 보존되어 있다. 구체적으로는, 디바이스 정보는, 디지털 카메라(100)의 모델 이름인 "Camera Name", 디지털 카메라(100)를 독특하게 식별하기 위한 개체정보인 "Camera GUID(Global Unique Identifier)"등을 포함한다. GUID이외에, UUID등의 다른 정보를 개체정보로서 사용해도 된다.
서버(200b)는 디지털 카메라(100)의 정보를 수신하면, 디지털 카메라(100)에 고유한 "Alias ID"를 생성한다. 서버(200b)는, 한층 더, 디지털 카메라(100)가 서버(200b)에의 액세스 인증 처리에 사용하기 위한 "Access ID"와 "Access Password"를 생성한다. 그리고, 서버(200b)는 이것들의 정보를 디지털 카메라(100)에 송신한다. 디지털 카메라(100)는, 그 후 서버(200b)에 액세스할 때에 사용하기 위해서, 수신한 Alias ID, Access ID, 및 Access Password를 메모리(104)의 불휘발성 영역에 보존한다.
서버(200b)는, 도 4a에 나타낸 디지털 카메라(100)와의 페어링 정보를 이차 기억장치(205)에 기억한다. "Camera Alias ID"는, 상기 유저 어카운트와 디지털 카메라(100)의 정보에 관련된 서버(200b)가 생성하는, 디지털 카메라(100)를 독특하게 식별가능한 고유 정보다. 그 때문에, 디지털 카메라(100)로부터 "Camera Alias ID"를 수신하면, 서버(200b)는 통신원인 디지털 카메라를 독특하게 식별할 수 있다. 이상의 과정에 의해, 서버(200b)와 디지털 카메라(100)의 페어링 처리가 완료된다.
그 후, 서버(200b)와 PC(200a)간의 통신 302에 있어서, 유저는, PC(200a)의 이차 기억장치(205)에 보존된 전송 서비스 애플리케이션을 기동하고, 통신 301에서 작성된 유저 어카운트를 사용해서 서버(200b)에 로그인한다. 그 로그인 방법에 제한은 없지만, 유저는, 예를 들면 PC(200a)상에서 기동된 전송 서비스 애플리케이션의 브라우저 기능에 의해 서버(200b)의 URL에 액세스하고, 표시된 로그인 화면에 유저ID와 패스워드를 입력하는 방법을 사용하여도 된다. 유저가, 성공적으로 로그인해서, 전송 서비스 애플리케이션에 표시되는 예를 들면 서비스 메뉴 화면으로부터, PC등록에 관해 지시하면, 서버(200b)는 전송 서비스 애플리케이션을 거쳐서 PC(200a)의 정보를 취득한다.
여기에서, PC(200a)로부터 송신된 정보는, 이차 기억장치(205)에 미리 보존된 PC(200a)의 PC명칭인 "PC Name", PC(200a)를 독특하게 식별하기 위한 개체정보인 "PC GUID"등이다. 이 "PC GUID"는, PC(200a)를 독특하게 식별할 수 있는 정보인 것이 충분하다. 예를 들면, PC(200a)의 직렬 번호나 네트워크 인터페이스 카드(NIC)의 MAC어드레스와 같은 하드웨어 정보이어도 되거나, 전송 서비스 애플리케이션이 생성한 문자열이어도 된다.
서버(200b)는, PC(200a)로부터 디바이스 정보를 수신하면, 서버(200b)가 PC(200a)를 관리하기 위한 식별자인 "PC Alias ID", 서버 액세스시의 인증 처리에 사용하는 "Access ID"와 "Access Password"를 생성해서 이차 기억장치(205)에 기억하고, PC(200a)에 송신한다. 이때, 서버(200b)는 도 4b에 나타낸 PC(200b)와의 페어링 정보를 이차 기억장치(205)에 기억한다. "PC Alias ID"는, 유저의 어카운트와, PC(200a)의 디바이스 정보와 관련된 서버(200b)가 생성하는, PC(200a)를 독특하게 식별가능한 고유 정보다. 그 때문에, PC(200a)로부터 "PC Alias ID"를 수신하면, 서버(200b)는 통신원인 PC를 독특하게 식별할 수 있다. 이상의 과정에 의해, 서버(200b)와 PC(200a)와의 페어링 처리가 완료된다.
이상의 과정에 의해, 서버(200b)와 디지털 카메라(100)간의 페어링 처리와, 서버(200b)와 PC(200a)간의 페어링 처리 각각이 완료된다. 그 페어링 처리에 의해, 디지털 카메라(100)와 PC(200a)의 양쪽은 서버(200b)에 있어서 같은 유저 어카운트와 관련되고, 동일 유저와 관련된 기기로서 서버(200b)에 의해 관리된다. 그 결과, 디지털 카메라(100)로부터 PC(200a)에 화상 파일을 송신하는 것이 가능하다.
도 3b는, 디지털 카메라(100)로부터 PC(200a)에 화상 데이터를 송신하는 2가지의 경로를 보이고 있다. 본 실시예에 있어서, 디지털 카메라(100)로부터 서버(200b)를 경유해서 PC(200a)에 화상 데이터를 송신하는 경로는, 즉, 서버(200b)를 경유하는 경로(서버 경유 전송)와, 서버(200b)를 경유하지 않는 경로(직접 전송)이다. "서버 경유 전송"은 통신 304,305로 표시되고, "직접 전송"은 통신 303으로 표시된다.
본 실시예의 디지털 카메라(100)의 제어부(101) 및/또는 메모리(104)에서, 네트워크상에서 디바이스 탐색을 행하기 위한 발견 프로토콜에 따라서 PC(200a)와 통신이 가능한 프로그램이 인스톨되어 있다. 본 문맥에서는, 그 발견 프로토콜이, 유니버설 플러그 앤 플레이(UPnP) 및 Bonjour의 사양에 준거한 통신이 가능한 프로토콜이지만, 본 발명은 이에 한정되지 않는다. 따라서, UPnP 및 Bonjour를 사용하여 통신을 실행하기 위한 코맨드, 디지털 카메라(100)에 고유하고 UPnP 및 Bonjour를 사용하여 통신하는데 필요한 디바이스 정보등이, 디지털 카메라(100)에 등록되어 있다.
또한, 본 실시예의 PC(200a)의 이차 기억장치(205)에도, UPnP 및 Bonjour의 사양에 준거해서 디지털 카메라(100)와 통신이 가능한 프로그램이 인스톨되어 있다. 따라서, UPnP 및 Bonjour를 사용하여 통신을 실행하기 위한 코맨드, 그 PC에 고유하고 UPnP 및 Bonjour를 사용하여 통신하는데 필요한 디바이스 정보등이, PC(200a)에 등록되어 있다.
또한, 본 실시예의 디지털 카메라(100)의 제어부(101) 및/또는 메모리(104)에서, 화상을 전송하기 위한 프로토콜로서 HTTP에 준거해서 PC(200)와 통신가능한 프로그램이 인스톨되어 있다. 이 프로그램은, 2개의 기능, 즉 HTTP클라이언트가 HTTP서버에 요구를 송신하는 기능과, HTTP서버가 HTTP클라이언트로부터의 요구를 수신하여, 그 요구에 따른 처리를 실행하기 위한 기능을 갖는다. 또한, 본 실시예의 PC(200a)의 이차 기억장치(205)에는, HTTP에 준거해서 디지털 카메라(100)와 통신가능한 프로그램이 인스톨되어 있고, 이 프로그램은, HTTP클라이언트가 HTTP서버에 요구를 송신하는 기능을 가진다.
또한, 본 실시예의 디지털 카메라(100)의 기록 매체(141) 및 PC(200a)의 이차 기억장치(205)에는 미리 화상 파일이 기록되어 있다. 본 실시예에 따른 화상 파일의 송신 처리는, 디지털 카메라(100)와 PC(200a)가 네트워크를 거쳐서 서로 접속되고, 디지털 카메라(100)로부터 공급된 화상 파일이 PC(200a)의 이차 기억장치(205)의 임의의 디렉토리에 기억되도록 실현된다.
본 실시예는, 디지털 카메라(100)가 발견 프로토콜인 UPnP 및 Bonjour를 사용해서 PC(200a)와 접속하고, PTP-IP를 사용해서 화상 파일을 PC(200a)에 송신하는 구성을 예로 들어 상세하게 설명한다. "PTP-IP"는, TCP/IP 네트워크상의 영상 전송 프로토콜의 약칭이다. 이때, 본 발명은 여기에서 설명된 특정한 발견 프로토콜 및 전송 프로토콜에 한정되지 않고, 또한 다른 프로토콜을 사용한 통신에 적용가능하다. 예를 들면, 다른 발견 프로토콜로서, Sun Microsystems회사의 "Jini"를 사용해도 된다.
여기에서, 본 실시예에서 사용하는 발견 프로토콜인 유니버설 플러그 앤 플레이(UPnP)와 Bonjour에 관하여 설명한다. "UPnP"는, 가정용 PC, 주변기기, AV기기, 전화 및 가전제품 중에서 선택된 디바이스를, 네트워크를 통해서 접속하고, 그 디바이스가 서로 기능을 서로 제공하게 하기 위한 기술사양이다. 또한, Bonjour는, 이더넷(등록상표)이나 802.11시리즈와 같은 무선LAN등의 IP네트워크상의 디바이스를 자동적으로 검출해서, 그 검출된 디바이스를 접속하는 기술이다. Bonjour에서는, 라우터가 관여하지 않는 통신은 로컬 네트워크라고 판단하고, 자동적으로 IP 어드레스를 취득한다. 또한, 로컬 호스트명을 반드시 설정하지 않는 멀티캐스트 DNS를 사용해서 이름 붙이기를 행한다. 또한, 사용하고 싶은 기능을 가지고 있는 디바이스를 찾아내는 서비스 탐색을 행한다. 이것들의 프로토콜의 사양은 공개되어 있기 때문에, 그 상세에 관한 설명은 생략한다.
도 3b에 있어서의 통신 303은, 디지털 카메라(100)의 화상 파일을 PC(200a)에 직접 송신하는 경로(직접 전송)를 나타낸다. 여기에서는, 서버(200b)와의 페어링 처리가 완료한 후, PC(200a)에서 가동하는 전송 서비스 애플리케이션은, 라우터(300)가 구축한 LAN상에서 기기를 정기적으로 탐색하고, 접속된 기기로부터의 기기정보 취득 요구가 있는 경우에는 응답한다. 또한, 이하에서는, CPU(203)가 프로그램을 실시함으로써 실현된 동작에 대해서, PC(200a)를 주체로서 설명하여도 된다. 마찬가지로, 디지털 카메라(100)의 제어부(101)가 프로그램을 실행함으로써 실현된 동작에 대해서, 디지털 카메라(100)를 주체로서 설명하여도 된다.
조작부(102)를 거쳐 유저로부터 화상 파일을 PC(200a)에 송신하는 처리의 실행이 지시되면, 상기의 프로그램을 실행하는 디지털 카메라(100)의 제어부(101)는, 라우터(300)가 구축하는 근거리 통신망에 통신부(152)를 통해서 접속한다. 그 후, 디지털 카메라(100)는, 근거리 통신망내의 기기를 탐색하고, PC(200a)가 존재하는 것인가 아닌가를 확인한다. 탐색의 결과, 디지털 카메라(100)와 PC(200a)가 서로를 발견하는 경우, 디지털 카메라(100)는 HTTP서버의 기능을 실행해서 화상 파일을 외부에 제공하는 준비를 행하고, HTTP클라이언트로부터의 취득 요구를 기다린다. PC(200a)는, HTTP클라이언트의 기능을 실행하여, 디지털 카메라(100)에 대하여 화상 파일의 취득 요구를 송신하고, 통신 303을 통해서 디지털 카메라(100)로부터 직접, 화상 파일을 취득한다.
또한, 본 실시예에서, 디지털 카메라(100) 및 PC(200a)는 HTTP에 준거해서 데이터의 송수신을 행한다. "HTTP서버"는, 월드 와이드 웹(WWW)시스템에 있어서, 정보송신 기능을 가진 소프트웨어 또는 컴퓨터를 말한다. HTTP서버는, 콘텐츠를 보유하고, HTTP클라이언트로부터 Get, Post 또는 Head등의 HTTP메소드(method)의 요구에 따라, 콘텐츠 파일을 HTTP클라이언트에 송신한다. 또한, "HTTP클라이언트"는, 그 HTTP메소드를 사용해서 HTTP서버에 대하여 요구를 송신하는 소프트웨어 또는 컴퓨터를 말한다. 본 실시예의 "화상취득 요구"는, HTTP메소드 요구를 말하고, "콘텐츠"는 화상 파일을 말한다. 이때, 통신 303을 통해 화상 파일을 송신할 때의 디지털 카메라(100)와 PC(200a)의 탐색 처리는, 도 5 내지 도 8d를 참조해서 상세히 설명한다.
도 3b에 있어서, 디지털 카메라(100)의 화상 파일을, 서버(200b)를 경유해서 PC(200a)에 송신하는 경로는, 통신 304,305에 의해 실현된다.
디지털 카메라(100)는, 라우터(300)의 근거리 통신망내의 기기를 탐색하고, PC(200a)가 존재하지 않는다고 판단하면, HTTP클라이언트의 기능을 실행하고, 통신 304에 의해 서버(200b)에 대하여 화상 파일을 송신한다. HTTP클라이언트로부터 HTTP서버에의 파일 송신은, 예를 들면 Post메소드를 사용해서 실현되어도 된다. 송신된 화상 파일은, 서버(200b)의 이차 기억장치(205)에 일시적으로 보존된다. PC(200a)는, HTTP클라이언트로서 서버(200b)에 예를 들면 정기적으로 액세스하고, 화상 파일이 서버(200b)에 일시적으로 보존되어 있는지를 확인한다. 화상 파일이 보존되어 있다고 판단했을 경우, PC(200a)는 통신 305에 의해 서버(200b)으로부터 그 화상 파일을 취득한다. HTTP서버로부터의 화상 파일의 취득은, 예를 들면 Get메소드를 사용해서 행해져도 된다. 이것이, 본 실시예의 화상 파일 전송 과정의 개요다.
<발견 시퀀스>
다음에, 디지털 카메라(100)의 기록 매체(141)에 보존된 화상 파일을, 통신 303에 의해 PC(200a)에 송신(직접 전송)하기 위해서 실행되는, 디지털 카메라(100), PC(200a) 및 서버(200b)의 기기 탐색(발견)처리를 상세하게 설명한다.
도 5는, 본 실시예에 따른 발견처리에 있어서의 디지털 카메라(100), PC(200a) 및 서버(200b)의 동작 시퀀스 도다. 이 시퀀스는, 디지털 카메라(100)의 조작부(102)에 포함된 전원 버튼이나 재생 버튼이 눌려진 것을 제어부(101)가 검지한 것에 따라 개시된다.
우선, 단계 S501에 있어서, 디지털 카메라(100)의 제어부(101)는, 라우터(300)에 의해 구축된 근거리 통신망에 접속한다. 예를 들면, 제어부(101)는, 표시부(130)에, 네트워크 접속에 필요한 정보의 입력을 수신하는 그래픽 유저 인터페이스(GUI)를 표시한다. 구체적으로는, 제어부(101)는, LAN을 구축하는 라우터(300)에 무선접속하기 위해서 필요한 서비스 세트 식별자(SSID)와 암호 키를 입력하는 텍스트 박스를 갖는 GUI를 표시부(130)에 표시한다.
이때, "SSID"는, IEEE 802.11x시리즈의 무선LAN에 있어서의 액세스 포인트의 식별자이며, 혼신을 피하기 위해서 할당된 이름이다. 또한, "암호 키"는, SSID에 부정 액세스되지 않도록 통신 내용을 암호화하기 위한 키다. 유저는, 예를 들면, 표시부(130)에 표시된 소프트웨어 키보드를 조작부(102)로 조작해서 SSID 및 암호 키를 입력한다. 물론, 하드웨어 키를 사용한 방법이나 음성입력방법등의 다른 입력 방법을 사용하거나, 한번 접속한 액세스 포인트에 관해서는 SSID와 암호 키를 기억해 두고, 다음번 이후는 SSID를 선택하는 것만이라도 좋다.
제어부(101)는, 입력 혹은 판독된 SSID 및 암호 키를 메모리(104)에 일시 기억하고, 라우터(300)와의 무선접속을 확립한다. 라우터(300)와의 무선접속이 확립되면, 라우터(300)는 디지털 카메라(100)에 IP 어드레스를 할당한다. 제어부(101)는, 그 할당된 IP 어드레스를 메모리(104)에 보존한다. 이상으로, 근거리 통신망에의 접속(단계 S501)이 완료된다.
이후, 발견 시퀀스를 설명한다. 제1 디바이스가 네트워크 상에 원하는 타입의 제2 디바이스가 존재하는 것을 확인하면, 상기 제1 디바이스는 자신의 존재를 네트워크 상에 광고하는 것이 일반적인 발견처리의 흐름이다. 그러나, 본 실시예에서는, 제1 디바이스가 LAN상에 원하는 타입의 제2 디바이스가 존재하는 것을 확인한 경우도, 제1 디바이스는, 제2 디바이스가 제1 디바이스와 페어링되고, 이 페어링이 유효한 것이 확인되지 않으면, 제1 디바이스의 존재를 제2 디바이스에 통지하는 광고 처리를 행하지 않는다.
도 5에 나타낸 예에서는, PC(200a)가 원하는 타입의 디바이스인 디지털 카메라(100)의 존재를 확인했을 경우, PC(200a)는, 디지털 카메라(100)와 PC(200a)간의 페어링이 유효한가 아닌가를 서버(200b)에 문의한다. 디지털 카메라(100)가 PC(200a)와 동일 유저 어카운트에 등록되어 있다고 판정되면, 그들이 서로 페어링되었고 이 페어링이 유효하다고 판정해서, PC(200a)는 디지털 카메라(100)에 PC(200a)의 존재를 광고한다. 이때, 그 디바이스가 PC(200a)와 페어링된 디바이스인 경우에도, 서버(200b)의 과정에 있어서 그 페어링이 해제되는 경우도 있어서, 페어링을 관리하는 서버(200b)에 현재의 상황을 확인하게 하는 것이 필요하다.
본 실시예에 있어서, 디지털 카메라(100)와 PC(200a)간의 페어링이 유효한가 아닌가를 판정할 때까지의 처리는, 2개의 시퀀스 중 어느 하나에 의해 실현된다. 첫 번째 시퀀스는, 단계 S502 내지 단계 S507에 나타낸, 디지털 카메라(100)의 광고 처리로 시작하는 시퀀스이고, 두 번째 시퀀스는, 단계 S508 내지 단계 S514에 나타낸, PC(200a)의 탐색 처리로 시작하는 시퀀스다.
우선, 디지털 카메라(100)의 광고 처리로 시작하는 시퀀스에 관하여 설명한다.
단계 S502에 있어서, 디지털 카메라(100)의 제어부(101)는, 광고 처리인 StartAdvertisement를 실행하고, 디지털 카메라(100)의 존재를 LAN상의 디바이스에 멀티캐스트(multicast) 한다. 발견 프로토콜이 UPnP일 경우, 제어부(101)는, 도 8a에 나타낸 DeviceType 태그의 디바이스 타입, 및 ServiceType태그의 서비스 타입을 지정한 SSDP: Alive메시지를 멀티캐스트 한다. 또한, 발견 프로토콜이 Bonjour일 경우, 제어부(101)는 도 8c에 나타낸 ServiceType를 지정하는 Multicast DNS:Notify 메시지를 멀티캐스트 한다.
또한, "SSDP(Simple Service Discovery Protocol)"은, 네트워크상에서, UPnP을 서포트하는 디바이스를 탐색, 발견하기 위한 공지의 프로토콜이다. "Multicast DNS"는, 네트워크상에서, Bonjour를 서포트하는 디바이스를 탐색, 발견하기 위한 공지의 프로토콜이다.
단계 S503에 있어서, 디지털 카메라(100)의 존재가, 디지털 카메라(100)가 접속된 LAN에 접속된 디바이스(PC(200a)를 포함한다)에 통지된다.
단계 S504에 있어서, PC(200a)의 CPU(203)는, 디지털 카메라(100)의 광고 메시지(SSDP:Alive 또는 Multicast DNS:Notify)를 수신한다. 그리고, CPU(203)는, 광고 메시지에 포함된 정보에 근거하여, 디지털 카메라(100)가 CPU(203)가 탐색하는 디바이스인가 아닌가를 판정한다. 구체적으로는, CPU(203)는, 광고 메시지에 포함된 상기 디바이스 타입과 서비스 타입에 근거하여, 디지털 카메라(100)가 탐색 대상의 디바이스라고 판정하면, 단계 S504에서, 디바이스 정보의 취득 요구(GetDescription)를 송신한다. 보다 구체적으로는, CPU(203)는, 발견 프로토콜이 UPnP일 경우에는 "HTTP GET"를 실행해서 디스크립션(discription)을 요구하고, 발견 프로토콜이 Bonjour일 경우에는 TXT레코드를 요구한다.
다음에, 단계 S505에 있어서, 디지털 카메라(100)의 제어부(101)는, 취득 요구에 응답해서 디바이스 정보를 PC(200a)에 송신한다. 도 8a는, 발견 프로토콜이 UPnP일 경우에 단계 S505에서 송신되는 디바이스 정보(Description)의 예를 나타낸다. 또한, 도 8c의 하단부는, 발견 프로토콜이 Bonjour일 경우에 단계 S505에서 송신되는 TXT레코드의 예다. 도 8a 및 도 8c로부터 분명하듯이, 제어부(101)는, 디바이스 정보의 ns:X_devAliasID 또는 devAid.ABCDE.com에, 디지털 카메라(100)의 Camera Alias ID를 추가시킨다.
다음에, 단계 S506에 있어서, PC(200a)의 CPU(203)는, 서버(200b)에 대하여, 디지털 카메라(100)와 PC(200a)간의 페어링이 유효한가 아닌가(그들이 유효한 페어링 설정을 갖는가 아닌가, 혹은 페어링 설정이 유효한가 아닌가)를 문의한다. 구체적으로, CPU(203)는 디지털 카메라(100)로부터 취득한 고유 정보(Camera Alias ID)를 기초로, 서버(200b)에 문의(GetPairingInfo)를 송신한다. 이때, 디바이스 정보로서 다른 고유 정보를 사용하여도 된다.
단계 S507에 있어서, 서버(200b)의 CPU(203)는, 수신한 디바이스 고유 정보(Camera Alias ID)를 포함한 카메라-서버간의 페어링 설정(도 4a)이 이차 기억장치(205)에 있는지를 조사한다. 서버(200b)의 CPU(203)는, Camera Alias ID가 PC(200a)와 같은 유저 어카운트에 관련되면, 디지털 카메라(100)가 PC(200a)와의 페어링이 유효한 디지털 카메라라고 판정한다. 한편, 서버(200b)의 CPU(203)는, 그 페어링 설정이 Camera Alias ID를 포함하지 않는 경우나, Camera Alias ID가 PC(200a)와 다른 유저 어카운트에 관련되는 경우에는, 디지털 카메라(100)가 PC(200a)와의 페어링이 유효한 디지털 카메라가 아니라고 판정한다. 그리고, 서버(200b)의 CPU(203)는, 그 판정 결과(Result)를 PC(200a)에 송신한다.
이것이, 디지털 카메라(100)의 광고 처리로 시작하는 시퀀스다.
이후, PC(200a)의 탐색 처리로 시작하는 시퀀스에 관하여 설명한다.
단계 S508에 있어서, PC(200a)의 CPU(203)는, PC(200a)가 접속하고 있는 네트워크에, 특정한 타입의 디바이스가 접속하고 있는지 문의하는 탐색 메시지(StartSearch)를 멀티캐스트 한다. 구체적으로는, PC(200a)의 CPU(203)는, 발견 프로토콜이 UPnP일 경우에는, SSDP의 M-Search를 시작한다. "M-Search"는 네트워크상의 UPnP대응 디바이스를 검출하는 메소드이며, 그 CPU(203)는 도 8a에 나타내는 DeviceType태그의 디바이스 타입, 및 ServiceType태그의 서비스 타입을 지정하는 상기 탐색 메시지를 멀티캐스트 한다. 한편, 발견 프로토콜이 Bonjour일 경우, PC(200a)의 CPU(203)는 검색 대상으로 하는 ServiceType(도 8c 상단)을 지정하는 MulticastDNS:Query를 멀티캐스트 한다.
단계 S509에 있어서, PC(200a)가 접속하고 있는 LAN에 접속된 디바이스(디지털 카메라(100)를 포함한다)에, 탐색 메시지가 통지된다.
다음에, 단계 S510에 있어서, 디지털 카메라(100)의 제어부(101)는, 디지털 카메라(100)의 디바이스 타입과 서비스 타입이 상기 수신된 탐색 메시지에서 지정된 것과 일치하는지를 판정한다. 일치한다고 판정될 경우에, 제어부(101)는, 응답(Search Response)을 PC(200a)에 송신한다.
단계 S511 내지 단계 S514는 단계 S504 내지 단계 S507과 같기 때문에, 그 설명은 생략한다. 이것이, PC(200a)의 탐색 처리로 시작하는 시퀀스다.
단계 S507 또는 단계 S514에 있어서, 디지털 카메라(100)가 PC(200a)와 유효하게 페어링 설정된 디바이스라는 판정 결과가 서버(200b)로부터 취득되는 경우, 단계 S515 또는 단계 S519이후의 시퀀스가 실행된다. 또한, PC(200a)의 CPU(203)는, 그 디바이스 정보에, PC(200a)와 페어링이 유효하게 판정된 디바이스의 Alias ID를 추가한다. 한편, 단계 S507 또는 단계 S514에 있어서, 디지털 카메라(100)가 PC(200a)와 유효하게 페어링 설정된 디바이스가 아니라는 판정 결과가 서버(200b)로부터 취득되는 경우, 단계 S515 또는 단계 S519이후의 시퀀스는 실행되지 않는다.
디지털 카메라(100)가, PC(200a)가 디지털 카메라(100)와 유효하게 페어링 설정된 PC라고 판정해서 HTTP서버를 기동할 때까지의 처리도, 2개의 시퀀스 중 어느 하나에 의해 실현된다. 첫 번째 시퀀스는, 단계 S515 내지 단계 S518에 나타낸, PC(200a)의 광고 처리로 시작하는 시퀀스이고, 두 번째 시퀀스는, 단계 S519 내지 단계 S523에 나타낸, 디지털 카메라(100)의 탐색 처리로 시작하는 시퀀스다.
우선, PC(200a)의 광고 처리로 시작하는 시퀀스에 관하여 설명한다.
단계 S515에 있어서, PC(200a)의 CPU(203)는, 광고 메시지(StartAdvertisement)를 멀티캐스트 하고, PC(200a)의 존재를 LAN상의 디바이스에 통지한다. 발견 프로토콜이 UPnP일 경우, PC(200a)의 CPU(203)는 도 8b에 나타내는 DeviceType태그의 디바이스 타입, 및 ServiceType태그의 서비스 타입을 지정한 SSDP:Alive메시지를 멀티캐스트 한다. 한편, 발견 프로토콜이 Bonjour일 경우, PC(200a)의 CPU(203)는 Multicast DNS:Notify메시지에 도 8d 상단에 나타내는 ServiceType를 지정해서 멀티캐스트 한다.
단계 S516에 있어서, PC(200a)의 존재가, PC(200a)가 접속하고 있는 LAN에 접속된 디바이스(디지털 카메라(100)를 포함한다)에 통지된다.
다음에, 단계 S517에 있어서, 디지털 카메라(100)의 제어부(101)는, PC(200a)로부터의 광고 메시지를 수신하면, 디바이스 정보의 취득 요구(Get_Description)을 PC(200a)에 송신한다. 구체적으로는, 제어부(101)는, 발견 프로토콜이 UPnP일 경우에는 "HTTP GET"를 실행해서 Description을 요구하고, 발견 프로토콜이 Bonjour일 경우에는 TXT레코드를 요구한다.
다음에, 단계 S518에 있어서, PC(200a)의 CPU(203)는, 취득 요구에 응답해서 디바이스 정보를 디지털 카메라(100)에 송신한다. 도 8b는, 발견 프로토콜이 UPnP일 경우에 단계 S518에서 송신된 디바이스 정보(Description)의 예를 나타낸다. 또한, 도 8d의 하단은, 발견 프로토콜이 Bonjour일 경우에 단계 S518에서 송신된 TXT레코드의 예를 나타낸다. 도 8b, 8d로부터 분명하듯이, PC(200a)의 CPU(203)는, 디바이스 정보의 ns:X_devAliasID 또는 devAid.ABCDE.com에, 페어링 설정이 유효한 디바이스의 Device Alias ID를 추가시킨다. 여기에서는, 디지털 카메라(100)의 Alias ID가 추가되어 있다. PC(200a)의 Device Alias ID는, 디바이스 정보의 ns:X_sevAliasID 또는 sevAid.ABCDE.com에 포함된다. 이것이, PC(200a)의 광고 처리로 시작하는 시퀀스다.
이후, 디지털 카메라(100)의 탐색 처리로 시작하는 시퀀스 에 관하여 설명한다.
단계 S519에 있어서, 디지털 카메라(100)의 제어부(101)는, 디지털 카메라(100)가 접속하고 있는 네트워크에, 특정한 타입의 디바이스가 접속하고 있는지 문의하는 탐색 메시지(StartSearch)를 멀티캐스트 한다. 구체적으로는, 제어부(101)는, 발견 프로토콜이 UPnP일 경우에는, 도 8b에 나타내는 DeviceType태그의 디바이스 타입, 및 ServiceType태그의 서비스 타입을 지정한 M-Search메시지를 멀티캐스트 한다. 한편, 발견 프로토콜이 Bonjour일 경우, 제어부(101)는 검색 대상으로 하는 ServiceType(도 8d상단)을 지정하는 MulticastDNS:Query를 멀티캐스트 한다.
단계 S520에 있어서, 디지털 카메라(100)가 접속하고 있는 LAN에 접속된 디바이스(PC(200a)를 포함한다)에, 탐색 메시지가 통지된다.
단계 S521에 있어서, PC(200a)의 CPU(203)는, PC(200a)의 디바이스 타입과 서비스 타입이 상기 수신된 탐색 메시지에서 지정된 것과 일치하는지를 판정하고, 일치하면, CPU(203)는, 응답(SearchResponse)을 디지털 카메라(100)에 송신한다.
단계 S522 내지 단계 S523은 단계 S517 내지 단계 S518과 같기 때문에, 그 설명은 생략한다. 이것이, 디지털 카메라(100)의 탐색 처리로 시작하는 시퀀스다.
단계 S518 또는 단계 S523에 있어서, 디지털 카메라(100)의 제어부(101)가, 탐색 대상의 디바이스로부터 디바이스 정보를 취득할 수 있었을 경우, 단계 S524이후의 시퀀스가 실행된다. 한편, 단계 S518 또는 단계 S523에 있어서, 디지털 카메라(100)의 제어부(101)가 탐색 대상의 디바이스로부터 디바이스 정보를 취득할 수 없었을 경우, 단계 S524이후의 시퀀스는 실행되지 않는다.
단계 S524에 있어서, 디지털 카메라(100)의 제어부(101)는, 단계 S518 또는 단계 S523에서 취득한 디바이스 정보(Description)에 디지털 카메라(100)의 DeviceAlias ID가 포함되는 것인가 아닌가를 확인한다. 구체적으로는, 발견 프로토콜이 UPnP일 경우에, 제어부(101)는, 도 8b의 ns:X_devAliasId태그에 기술되어 있는 Device Alias ID가, 디지털 카메라(100)의 Device Alias ID와 일치하는지를 판정한다. 또한, 발견 프로토콜이 Bonjour일 경우에는, 제어부(101)는, 도 8d의 devAid.ABCDE.com의 Key에 기술되어 있는 Device Alias ID를 참조하여, 디지털 카메라(100)의 Device Alias ID와 일치하는지를 판정한다.
그들이 일치한다고 판정되는 경우, 제어부(101)는, PC(200a)가 디지털 카메라(100)와 페어링이 유효한 PC라고 판단하고, HTTP서버 기능을 실행한다. 그리고, 제어부(101)는, HTTP클라이언트로서 동작하는 PC(200a)로부터의 요구를 수신하기 위한 준비, 및 제공가능한 화상 파일의 리스트의 생성등을 행한다. 이 리스트는, 예를 들면 확장성 마크업 언어(XML)로 생성될 수 있다.
또한, 다른 실시예에 있어서, 제어부(101)는, PC(200a)로부터 수신한 디바이스 정보(Description이나 TXT레코드)에 디지털 카메라(100)의 Device Alias ID가 포함된 것인가 아닌가의 판정을 생략하여도 된다. 이 경우, 제어부(101)는, 요구에 따라 PC(200a)에 의해 디바이스 정보의 송신시에 PC(200a)가 디지털 카메라(100)와 유효하게 페어링된 PC라고 판정해도 된다.
단계 S525에 있어서, PC(200a)의 CPU(203)는, 디지털 카메라(100)가 제공가능한 화상 파일의 리스트를 취득한다. 구체적으로는, PC(200a)의 CPU(203)는, HTTP클라이언트로서, HTTP서버인 디지털 카메라(100)에 대하여 HTTP Get메소드(GetImageList)를 실행한다. 그 리스트의 장소는, 통합 자원 식별자(URI: Uniform Resource Identifier)로서 단계 S505 또는 단계 S512에서 취득한 디바이스 정보에 기술되어 있다. 구체적으로는, 발견 프로토콜이 UPnP일 경우에는, 도 8a의 ns:X_imgLst태그, 발견 프로토콜이 Bonjour일 경우에는 도 8c의 imglist.ABCDE.com의 Key에 URI가 기술되어 있다. PC(200a)의 CPU(203)는, 이 URI를 액세스처로서 지정한 HTTP Get메소드를 디지털 카메라(100)에 대하여 실행한다.
단계 S526에 있어서, HTTP서버로서 기능하는 디지털 카메라(100)의 제어부(101)는, 디지털 카메라(100)가 제공가능한 화상 파일의 리스트를 PC(200a)에 송신한다. 전술한 바와 같이, 그 리스트는, 예를 들면 XML로 기술되고, 디지털 카메라(100)가 제공가능한 화상 파일의 URI를 포함한다.
단계 S527에 있어서, HTTP클라이언트로서 기능하는 PC(200a)의 CPU(203)는, 취득한 디지털 카메라(100)가 제공가능한 화상 파일의 리스트를 해석하여, 화상 파일 취득의 요구를 디지털 카메라(100)에 송신한다. 구체적으로는, PC(200a)의 CPU(203)는, 그 리스트에 포함된 화상 파일의 URI를 액세스처로서 지정한 HTTP Get메소드를 실행한다.
단계 S528에 있어서, 디지털 카메라(100)의 제어부(101)는, URI에서 지정된 화상 파일을 PC(200a)에 송신한다. PC(200a)의 CPU(203)는, 화상 파일의 리스트로부터, 수신이 완료한 화상 파일의 URI를 삭제한다. PC(200a)의 CPU(203) 및 디지털 카메라(100)의 제어부(101)는, PC(200a)가 리스트에 포함된 화상 파일을 모두 취득할 때까지 단계 S527, 단계 S528의 과정을 반복한다.
단계 S529에 있어서, PC(200a)의 CPU(203)는, 화상 파일의 리스트로부터 화상 파일의 URI가 모두 삭제되면, 화상 파일의 취득이 모두 완료한 것을 디지털 카메라(100)에 통지한다(NotifyComplete).
단계 S530에 있어서, 디지털 카메라(100)의 제어부(101)는, 취득 완료의 통지를 수신하면, HTTP서버의 기능을 종료시켜서, 네트워크 접속을 절단한다(Result).
이것이, 발견처리 시퀀스에 있어서의 디지털 카메라(100), PC(200a) 및 서버(200b)의 동작이다.
<발견처리에 있어서의 디지털 카메라의 동작>
상술한 발견처리에 있어서의 디지털 카메라(100)의 동작에 대해서, 도 6에 나타낸 흐름도를 참조하여 다시 설명한다.
단계 S601에 있어서, 제어부(101)는, 라우터(300)가 구축하는 근거리 통신망에 접속한다. 이 단계는 도 5의 단계 S501에 대응한다.
단계 S602에 있어서, 제어부(101)는, 광고 처리를 행한다. 이 단계는 도 5의 단계 S502에 대응한다.
단계 S603에 있어서, 제어부(101)는, 탐색 처리를 행한다. 이 단계는 도 5의 단계 S519에 대응한다.
단계 S604에 있어서, 제어부(101)는, 네트워크상의 다른 디바이스로부터 멀티캐스트된 탐색 메시지를 수신한 것인가 아닌가를 판단한다. 이 단계는 도 5의 단계 S509에 대응한다. 탐색 메시지를 수신했다고 판단한 경우, 제어부(101)는 단계 S605의 과정으로 진행시키고, 수신하지 않았으면, 단계 S606에 진행시킨다.
단계 S605에 있어서, 제어부(101)는, 수신한 탐색 메시지에 대한 응답을 PC(200a)에 송신한다. 이 단계는, 도 5의 단계 S510에 대응한다.
단계 S606에 있어서, 디지털 카메라(100)의 제어부(101)는, 디바이스 정보의 취득 요구(단계 S511에 기재된 HTTP Get메소드)를 수신했는지 아닌지를 판단한다. 제어부(101)는, 디바이스 정보의 취득 요구를 수신했다고 판단한 경우, 단계 S607의 과정으로 진행시키고, 수신하지 않았으면 단계 S608에 진행시킨다.
단계 S607에 있어서, 제어부(101)는, 요구된 디바이스 정보를 PC(200a)에 송신한다. 이 단계는 도 5의 단계 S505에 대응한다.
단계 S608에 있어서, 제어부(101)는, PC(200a)로부터 멀티캐스트 광고 메시지를 수신한 것인가 아닌가를 판단한다. 이 단계는, 도 5의 단계 S516에 대응한다. 제어부(101)는, PC(200a)로부터 멀티캐스트 광고 메시지를 수신하였다고 판단하는 경우, 단계 S610의 과정으로 진행시키고, 그렇지 않으면 단계 S609에 진행시킨다.
단계 S609에 있어서, 제어부(101)는, 단계 S603에서 송신한 멀티캐스트 탐색 메시지에 대하여 PC(200a)로부터의 응답을 수신한 것인가 아닌가를 판단하여, 그 응답을 수신하였다고 판단되면. 제어부(101)는, 단계 S610의 과정으로 진행시키고, 그렇지 않으면 단계 S615에 진행시킨다.
단계 S610에 있어서, 제어부(101)는, 디바이스 정보의 취득 요구를 PC(200a)에 송신한다. 이 단계는, 도 5의 단계 S517 및 단계 S522에 대응한다.
단계 S611에 있어서, 제어부(101)는, 단계 S518 또는 단계 S523에서 송신된 PC(200a)의 디바이스 정보를 수신한다.
단계 S612에 있어서, 제어부(101)는, PC(200a)가 디지털 카메라(100)와 페어링이 유효한 디바이스인지의 여부를 판정한다. 이 단계는 도 5의 단계 S524에 대응한다. 제어부(101)는, PC(200a)가 디지털 카메라(100)와 페어링이 유효한 디바이스이면, 단계 S613의 과정으로 진행시키고, 페어링이 유효한 디바이스가 아니면, 단계 S615에 진행시킨다.
단계 S613에 있어서, 제어부(101)는, HTTP서버 기능을 유효하게 한다. 이 단계는 도 5의 단계 S524에 대응한다. 이때, 본 실시예에서는, PC(200a)가 디지털 카메라(100)와 페어링이 유효한 디바이스라고 판단한 후에 HTTP서버 기능을 유효하게 하는 형태를 설명한다. 그러나, HTTP서버 기능의 유효화가 완료하기 전에 HTTP클라이언트(PC(200a))로부터 요구가 송신되었을 경우, 그 응답이 실패할 수도 있는 위험이 있다. 그 때문에, 단계 S601에서 LAN에의 접속이 확립한 시점에서, HTTP서버 기능을 유효하게 하는 것도 가능하다.
단계 S614에 있어서, 제어부(101)는, PC(200a)로부터의 요구에 응답하여 화상 파일의 리스트 및 화상 파일을 송신한다. 이 단계는 도 5의 단계 S525 내지 단계 S530에 대응한다.
단계 S615에 있어서, 제어부(101)는, 발견처리를 시작하고나서 N초 경과한 것인가 아닌가를 판단한다. 제어부(101)는, 미리 발견 실행 기간을 설정하고 있고, 실행 기간 동안은 단계 S604 내지 단계 S614의 과정을 반복함으로써, 디지털 카메라(100)가 접속하고 있는 네트워크상에서 디지털 카메라(100)와 페어링이 유효한 PC를 탐색한다. 디지털 카메라(100)가 만약 그 설정된 실행 기간내에 페어링이 유효한 PC를 발견할 수 없었으면(타임아웃일 경우), 제어부(101)는 단계 S616의 과정으로 진행시킨다.
단계 S616에 있어서, 제어부(101)는, 접속된 네트워크에 대하여, 발견 프로토콜의 네트워크 이탈을 위한 메시지를 멀티캐스트 한다. 구체적으로는, 제어부(101)는, 발견 프로토콜이 UPnP일 경우에는, "SSDP:Byebye"를 멀티캐스트 하고, 발견 프로토콜이 Bonjour일 경우에는, "Multicast DNS:goodbye"를 멀티캐스트 한다.
단계 S617에 있어서, 제어부(101)는, 디지털 카메라(100)와 페어링이 유효한 PC(PC(200a))에 직접 전송이 아니고, 서버를 경유하여 화상 파일을 전송하기 위해서, HTTP클라이언트 기능을 유효화한다. 또한, 이 시점에서 HTTP서버 기능이 유효화되어 있을 경우, HTTP클라이언트 기능을 유효화하기 전에 HTTP서버 기능을 종료하는 것도 가능하다.
단계 S618에 있어서, 제어부(101)는, 서버(200b)에 화상을 송신하기 위한 준비를 행한다. 구체적으로는, 제어부(101)는, 서버(200b)에 대하여 송신하는 화상 파일의 정보(총 파일수, 화상 파일명, 파일 사이즈등)를, 서버(200b)에 송신한다.
단계 S619에 있어서, 제어부(101)는, HTTP서버인 서버(200b)에 대하여 HTTP의 Post메소드를 실행하고, 화상 파일을 서버(200b)에 송신한다.
이것이, 본 실시예에 따른 발견처리에 있어서의 디지털 카메라(100)의 동작이다.
<발견처리에 있어서의 PC의 동작>
상술한 발견처리에 있어서의 PC(200a)의 동작에 대해서, 도 7에 나타낸 흐름도를 참조하여 다시 설명한다.
단계 S701에 있어서, PC(200a)의 CPU(203)는, 전송 서비스 애플리케이션을 이차 기억장치(205)로부터 일차 기억장치(204)에 로드하고(load), 그 전송 서비스 애플리케이션을 기동한다.
단계 S702에 있어서, PC(200a)의 CPU(203)는, 탐색 처리를 실행한다. 이 단계는, 도 5의 단계 S508에 대응한다.
단계 S703에 있어서, PC(200a)의 CPU(203)는, 카메라가 발견된 것인가 아닌가를 판단한다. PC(200a)의 CPU(203)는, 디지털 카메라(100)로부터 단계 S502에서 설명한 멀티캐스트 광고 메시지를 수신한 경우, 또는 단계 S702에서 송신한 멀티캐스트 탐색 메시지에 대하여 응답을 수신한 경우에는 카메라를 발견했다고 판단한다. PC(200a)의 CPU(203)는, 카메라를 발견했다고 판단한 경우에는 단계 S704의 과정으로 진행시키고, 카메라를 발견하지 않았다고 판단한 경우에는 단계 S713에 진행시킨다.
단계 S704에 있어서, PC(200a)의 CPU(203)는, 그 발견된 디바이스에, 디바이스 정보의 취득 요구(Get_Description)를 송신한다. 이 단계는, 도 5의 단계 S504 또는 단계 S511에 대응한다.
단계 S705에 있어서, PC(200a)의 CPU(203)는, 그 발견된 카메라로부터, 단계 S505 또는 단계 S512에서 송신된 디바이스 정보를 취득한다.
단계 S706에 있어서, PC(200a)의 CPU(203)는, 그 발견된 카메라가 PC(200a)와 페어링이 유효한 디바이스인지의 여부를 서버(200b)에 문의한다. 이 단계는, 도 5의 단계 S506 또는 단계 S513에 대응한다.
단계 S707에 있어서, PC(200a)의 CPU(203)는, 서버(200b)로부터 단계 S507 또는 단계 S514에서 송신된 판정 결과를 기초로, 그 발견된 카메라가 PC(200a)와 페어링이 유효한 디바이스인지의 여부를 판단한다. PC(200a)의 CPU(203)는, 그 발견된 카메라가 PC(200a)와 페어링이 유효한 디바이스라고 판단한 경우에는, 단계 S708의 과정으로 진행시키고, 그렇지 않은 경우에는, 단계 S713에 진행시킨다.
단계 S708에 있어서, PC(200a)의 CPU(203)는, 광고 처리를 시작한다. 이 단계는 도 5의 단계 S515에 대응한다.
단계 S709에 있어서, PC(200a)의 CPU(203)는, 디지털 카메라(100)로부터 디바이스 정보의 취득 요구가 주어진 것인가 아닌가를 판단한다. 디바이스 정보의 취득 요구가 주어졌다고 판단한 경우에는, 단계 S710의 과정으로 진행시키고, 그렇지 않은 경우에는 단계 S713에 진행시킨다.
단계 S710에 있어서, PC(200a)의 CPU(203)는, PC(200a)의 디바이스 정보를 디지털 카메라(100)에 송신한다. 이 단계는 도 5의 단계 S518 또는 단계 S523에 대응한다.
단계 S711에 있어서, PC(200a)의 CPU(203)는, 디지털 카메라(100)로부터 화상 파일의 리스트 및 화상 파일을 취득한다. 이 단계는 도 5의 단계 S525 내지 단계 S530에 대응한다.
단계 S712에 있어서, PC(200a)의 CPU(203)는, 디지털 카메라(100)로부터 화상 파일을 모두 취득한 후, 접속된 네트워크에, 발견 프로토콜의 네트워크 이탈을 위한 메시지를 멀티캐스트 한다. 구체적으로는, PC(200a)의 CPU(203)는, 발견 프로토콜이 UPnP일 경우에는 "SSDP:Byebye"를 멀티캐스트 하고, 발견 프로토콜이 Bonjour일 경우에는"MulticastDNS:goodbye"를 멀티캐스트 한다. PC(200a)의 CPU(203)는, 이 멀티캐스트에 의해, 광고 처리를 종료하고, 그 후에 과정을 단계 S703에 되돌아가서, 탐색 처리를 반복한다.
한편, 단계 S713에 있어서, PC(200a)의 CPU(203)는, 발견을 시작하고나서 N초 경과한 것인가 아닌가를 판단한다. PC(200a)는 미리 발견 실행 기간을 설정하고 있고, 실행 기간 동안은 단계 S703 내지 단계 S712의 과정을 반복함으로써, PC(200a)가 접속하고 있는 LAN상에서 PC(200a)와 페어링이 유효한 디바이스(카메라)를 탐색한다. 그 설정된 실행 기간내에 페어링이 유효한 디바이스가 발견되지 않으면, PC(200a)의 CPU(203)는, 서버(200b)로부터 화상 파일을 취득하기 위해서 단계 S714의 과정에 진행시킨다.
단계 S714에 있어서, PC(200a)의 CPU(203)는, 서버(200b)에 액세스하고, 서버(200b)에 취득해야 할 화상 파일이 보존되어 있는 것인가 아닌가를 확인한다. 서버(200b)에는 PC(200a)가 수신해야 할 화상 파일의 리스트가 생성되어 있고, PC(200a)는 HTTP클라이언트로서 HTTPGet메소드를 실행하고, HTTP서버인 서버(200b)로부터 그 리스트를 취득한다. 리스트의 형식에 특별히 제한은 없지만, 디지털 카메라(100)가 제공하는 것과 같은, 화상 파일들의 URI가 기술된 XML형식의 리스트가 사용되어도 된다.
단계 S715에 있어서, PC(200a)의 CPU(203)는, 단계 S714에서 취득한 리스트를 해석하여, 취득해야 할 화상 파일이 있는 것인가 아닌가를 판단한다. PC(200a)의 CPU(203)는, 예를 들면 취득한 리스트에 화상 파일의 URI가 기술되어 있는 경우에는, 취득해야 할 화상 파일이 있다고 판단해서, 단계 S716의 과정에 진행시키고, 그렇지 않은 경우에 CPU(203)는, 단계 S703의 과정으로 되돌아간다.
단계 S716에 있어서, PC(200a)의 CPU(203)는, 그 리스트에 포함된 화상 파일의 URI를 액세스처의 어드레스로서 지정된 HTTP Get메소드를 서버(200b)에 대하여 실행하고, 서버(200b)로부터 화상 파일을 취득한다. PC(200a)의 CPU(203)는, 이 과정을, 그 리스트에 URI가 기술된 화상 파일을 모두 취득할 때까지 반복한다.
이것이, 본 실시예에 따른 발견처리에 있어서의 PC(200a)의 동작이다.
상술한 것처럼, 본 실시예에 의하면, 한쪽의 디바이스가 접속하고 있는 네트워크 상에, 탐색 대상의 타입의 또 다른 디바이스(특정의 서비스를 갖는 디바이스)를 그 한쪽의 디바이스가 발견했을 경우, 그 한쪽의 디바이스는, 다른 디바이스와 통신해야 할 것인가 아닌가를 발견처리에서 판단한다. 따라서, 발견된 디바이스와 통신해야 할 것인가 아닌가의 판정을 조기에 행하여서, 통신해야 할 디바이스의 탐색을 효율적으로 행하는 것이 가능하다.
제2실시예
제1실시예는, 디지털 카메라(100)와 PC(200a)간의 페어링이 유효한가를 PC(200a)가 서버(200b)에 문의하는 형태를 설명했지만, 본 실시예에서는 그 페어링이 유효한가를 디지털 카메라(100)가 문의하는 형태를 설명한다.
도 9는, 본 실시예의 발견처리에 있어서의 디지털 카메라(100), PC(200a) 및 서버(200b)의 동작 시퀀스 도다. 도 9에 있어서, 도 5와 같은 동작에 대해서는 같은 참조번호를 부착하고, 그 설명을 생략한다.
단계 S915에 있어서, 디지털 카메라(100)의 제어부(101)는, 서버(200b)에 대하여, 디지털 카메라(100)와 PC(200a)간의 페어링이 유효한가 아닌가(유효한 페어링 설정이 존재하는 것인가 아닌가, 혹은 페어링 설정이 유효한가)를 문의한다. 구체적으로는, 제어부(101)는, PC(200a)로부터 취득한 고유 정보(Device Alias ID)를 기초로, 서버(200b)에 문의(GetPairingInfo)를 송신한다. 이때, 디바이스 정보로서 다른 고유 정보를 사용하여도 된다. 제어부(101)는, 구체적으로는, 발견 프로토콜이 UPnP일 경우에는 도 8b의 ns:X_sevAliasId태그에 기술되어 있는 PC(200a)의 Device Alias ID를, 발견 프로토콜이 Bonjour일 경우에는 도 8d의 serAid.ABCDE.com의 Key에 기술되어 있는 PC(200a)의 Device Alias ID를, 송신한다.
단계 S916에 있어서, 서버(200b)의 CPU(203)는, 수신한 디바이스 고유 정보(Device Alias ID)를 포함한 PC-서버의 페어링 설정(도 4b)이 있는지에 관해 이차 기억장치(205)를 조사한다. 여기서, 서버(200b)의 CPU(203)는, Device Alias ID가 디지털 카메라(100)와 같은 유저 어카운트에 관련되면, PC(200a)가 디지털 카메라(100)와의 페어링이 유효한 PC라고 판정한다. 또한, 서버(200b)의 CPU(203)는, Device Alias ID가 페어링 설정에 존재하지 않는 경우나, PC(200a)가 디지털 카메라(100)와 다른 유저 어카운트에 관련되는 경우에, 디지털 카메라(100)와의 페어링이 유효하지 않다고 판정한다. 그리고, 서버(200b)의 CPU(203)는, 판정 결과(Result)를 디지털 카메라(100)에 송신한다.
단계 S922 및 단계 S923에서의 과정이 단계 S915 및 단계 S916과 같으므로, 그 설명은 생략한다.
이것이, 본 실시예의 발견처리에 있어서의 디지털 카메라(100)의 동작이다.
도 10은, 도 9의 시퀀스 차트에 있어서의 디지털 카메라(100)의 과정을 나타내는 흐름도다. 도 10에 있어서, 도 6과 같은 동작에 대해서는 같은 참조번호를 부착해서, 그 설명을 생략한다.
단계 S1012에 있어서, 디지털 카메라(100)의 제어부(101)는, 서버(200b)에 대하여, 디지털 카메라(100)와 PC(200a)간의 페어링이 유효한가아닌가(유효한 페어링 설정이 존재하는 것인가 아닌가, 혹은 페어링 설정이 유효한가)를 문의한다. 이 단계는, 도 9의 단계 S915에 대응한다.
단계 S1013에 있어서, 디지털 카메라(100)의 제어부(101)는, 단계 S1012의 문의에 대한 응답으로서 서버(200b)로부터 반송된 판정 결과를 기초로, PC(200a)가 디지털 카메라(100)와의 페어링이 유효한 디바이스인지의 여부를 판단한다. PC(200a)가 디지털 카메라(100)와의 페어링이 유효한 디바이스라고 판단했을 경우, 제어부(101)는 단계 S1014의 과정에 진행시키고, 그렇지 않은 경우에는 단계 S615에 진행시킨다.
또한, 단계 S615에서 발견처리의 시작으로부터 N초 경과한 후에도 디지털 카메라(100)와의 페어링이 유효한 PC가 발견되지 않은 경우와, 서버(200b)에 화상 파일을 송신한다고 결정했을 경우에, 제어부(101)는 표시부(130)에 발견처리의 결과를 표시해도 된다. 예를 들면, 제어부(101)는, 탐색 대상의 (특정 서비스를 가진) 디바이스는 발견했지만, 디지털 카메라(100)와의 페어링이 유효하지 않은 디바이스이었던 것을 나타내는 메시지를 표시부(130)에 표시한다. 또한, 탐색 기간동안에 탐색 대상의 디바이스가 발견되지 않았을 경우, 제어부(101)는 마감 시간을 나타내는 메시지를 표시부(130)에 표시한다.
이것이, 본 실시예의 발견처리에 있어서의 디지털 카메라(100)의 동작이다.
도 11은, 본 실시예의 발견처리에 있어서의 PC(200a)의 동작을 나타내는 흐름도이며, 도 7과 같은 동작에 대해서는 같은 참조번호를 부착해서, 그 설명을 생략한다.
이에 따라, 본 실시예에서도, 상기 제1실시예와 동일한 효과를 실현할 수 있다.
기타의 실시예
상기의 실시예에서는, 디지털 카메라(100)가, 상기 접속된 LAN에 디지털 카메라(100)와의 페어링이 유효한 PC(200a)가 존재하면 HTTP서버로서 동작하고, 상기 접속된 LAN에 디지털 카메라(100)와의 페어링이 유효한 PC(200a)가 존재하지 않으면 HTTP클라이언트로서 동작하는 한편, PC(200a)는 항상 HTTP클라이언트로서 동작한다. 그러나, 디지털 카메라(100)가 항상 HTTP클라이언트로서 동작하고, PC(200a)가, 상기 접속된 네트워크에 PC(200a)와의 페어링이 유효한 디지털 카메라(100)가 존재하면 HTTP서버로서 동작하고, 상기 접속된 네트워크에 PC(200a)와의 페어링이 유효한 디지털 카메라(100)가 존재하지 않으면 HTTP클라이언트로서 동작하는 것도 가능하다.
또한, 상기 실시예에서는 디지털 카메라와 PC간의 접속을 예로 들어서 설명했지만, 반드시 디바이스의 종류는 한정되지 않는다. 프린터등의 아웃풋 디바이스, 스마트 폰이나 타블렛등의 모바일 단말이 사용되어도 된다.
또한, 상기 실시예에서는 무선통신기능을 갖는 디지털 카메라(100)를 예로 들어서 설명했지만, 무선통신이 가능한 기록 매체가 디지털 카메라(100)에 장착되어 기록 매체(141)로서 무선통신을 제어하는 구성도 가능하다. 이 경우도, 상기 실시예와 같은 제어를 무선통신이 가능한 기록 매체의 무선회로부에 대하여 행한다.
한층 더, 디지털 카메라(100)를 PC등에 의해 원격으로 제어하는 시스템에도, 본 발명이 적용가능하다. 이 경우에는, 상기 PC의 제어부가 디지털 카메라(100)의 제어부(101)에 대하여 각종의 문의 및 제어의 요구를 함으로써, 원격제어로 실현하는 것이 가능해진다.
또한, 본 발명의 실시예들은, 기억매체(예를 들면, 비일시적 컴퓨터 판독 가능한 기억매체)에 레코딩된 컴퓨터 실행가능한 명령어를 판독하고 실행하여 본 발명의 상술한 실시예(들)의 하나 이상의 기능을 수행하는 시스템 또는 장치를 갖는 컴퓨터에 의해 실현되고, 또 예를 들면 상기 기억매체로부터 상기 컴퓨터 실행가능한 명령어를 판독하고 실행하여 상기 실시예(들)의 하나 이상의 기능을 수행하여서 상기 시스템 또는 상기 장치를 갖는 상기 컴퓨터에 의해 행해진 방법에 의해 실현될 수 있다. 상기 컴퓨터는, 중앙처리장치(CPU), 마이크로처리장치(MPU) 또는 기타 회로 중 하나 이상을 구비하여도 되고, 별개의 컴퓨터나 별개의 컴퓨터 프로세서의 네트워크를 구비하여도 된다. 상기 컴퓨터 실행가능한 명령어를, 예를 들면 네트워크나 상기 기억매체로부터 상기 컴퓨터에 제공하여도 된다. 상기 기억매체는, 예를 들면, 하드 디스크, 랜덤액세스 메모리(RAM), 판독전용 메모리(ROM), 분산형 컴퓨팅 시스템의 스토리지, 광디스크(콤팩트 디스크(CD), 디지털 다기능 디스크(DVD) 또는 블루레이 디스크(BD)TM등), 플래시 메모리 소자, 메모리 카드 등 중 하나 이상을 구비하여도 된다.
본 발명을 예시적 실시예들을 참조하여 기재하였지만, 본 발명은 상기 개시된 예시적 실시예들에 한정되지 않는다는 것을 알 것이다. 아래의 청구항의 범위는, 모든 변형예와, 동등한 구조 및 기능을 포함하도록 폭 넓게 해석해야 한다.
Claims (12)
- 제1 네트워크상의 디바이스 및, 상기 제1 네트워크와는 다른 제2 네트워크상의 디바이스와 통신가능한 정보처리장치로서,
상기 제1 네트워크상에서 제1 디바이스가 발견되었을 경우, 상기 발견된 제1 디바이스가, 상기 정보처리장치와 유효한 관련을 갖는 디바이스인가 아닌가를 상기 제2 네트워크상의 디바이스에 문의하는 문의 수단; 및
상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스인 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하고, 상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스가 아닌 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하지 않는, 통신 수단을 구비한, 정보처리장치.
- 제 1 항에 있어서,
상기 문의 수단은, 상기 발견된 제1 디바이스로부터 디바이스 정보를 취득하고, 상기 디바이스 정보에 포함되는 상기 발견된 제1 디바이스의 고유 정보를 사용해서 상기 제2 네트워크상의 디바이스에 상기 문의를 행하는, 정보처리장치.
- 제 1 항에 있어서,
상기 문의 수단은, 상기 제1 네트워크상에서 상기 제1 디바이스가 송신한 광고 메시지를 수신하는 경우, 또는 상기 제1 네트워크상의 상기 제1 디바이스를 탐색하는 송신된 탐색 메시지에 대한 응답을 수신하는 경우에, 상기 제1 디바이스가 발견되었다고 판정하는, 정보처리장치.
- 제 1 항에 있어서,
상기 통신 수단은, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 상기 디바이스가 아니라고 판정되는 경우에는, 상기 정보처리장치의 광고 메시지를 상기 제1 네트워크에 송신하지 않는, 정보처리장치.
- 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
상기 제1 네트워크상에서 상기 제1 디바이스가 발견되지 않을 경우, 상기 통신 수단은 상기 제1 디바이스로부터 상기 제 2 네트워크상의 상기 디바이스에 송신된 데이터를, 상기 제2 네트워크상의 상기 디바이스로부터 취득하는, 정보처리장치.
- 제 1 항에 있어서,
촬상수단을 더 구비한, 정보처리장치.
- 제 6 항에 있어서,
상기 문의 수단은, 상기 제1 네트워크상에서 상기 정보처리장치가 송신한 광고 메시지에 대한 상기 제1 디바이스로부터의 응답을 수신하는 경우, 또는 상기 제1 네트워크상에서 상기 제1 디바이스가 송신한 탐색 메시지를 수신하는 경우에, 상기 제1 디바이스가 발견되었다고 판정하는, 정보처리장치.
- 제 6 항 또는 제 7 항에 있어서,
상기 통신 수단은, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 상기 디바이스가 아니라고 판정되는 경우에는, 상기 제1 디바이스로부터의 요구에 응답하지 않는, 정보처리장치.
- 제 1 항에 있어서,
상기 제1 네트워크가 근거리 통신망이며, 상기 제2 네트워크가 광역 네트워크인, 정보처리장치.
- 제 1 항에 있어서,
상기 제1 네트워크가 무선 LAN 네트워크이며, 상기 제2 네트워크가 인터넷인, 정보처리장치.
- 제1 네트워크상의 디바이스 및, 상기 제1 네트워크와는 다른 제2 네트워크상의 디바이스와 통신가능한 정보처리장치의 제어 방법으로서,
상기 제1 네트워크상에서 제1 디바이스가 발견되었을 경우, 상기 발견된 제1 디바이스가, 상기 정보처리장치와 유효한 관련을 갖는 디바이스인가 아닌가를 상기 제2 네트워크상의 디바이스에 문의하는 단계; 및
상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스인 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하는 단계를 포함하고,
상기 문의의 결과가, 상기 발견된 제1 디바이스가 상기 정보처리장치와 유효한 관련을 갖는 디바이스가 아닌 것을 나타내는 경우에는, 상기 발견된 제1 디바이스로부터 데이터를 취득하지 않는, 정보처리장치의 제어 방법.
- 컴퓨터를 청구항 1에 따른 정보처리장치로서 기능시키기 위해서 매체에 저장된 컴퓨터 프로그램.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013168339A JP2015036900A (ja) | 2013-08-13 | 2013-08-13 | 情報処理装置およびその制御方法、プログラム |
JPJP-P-2013-168339 | 2013-08-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20150020069A true KR20150020069A (ko) | 2015-02-25 |
Family
ID=51225297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20140101606A KR20150020069A (ko) | 2013-08-13 | 2014-08-07 | 정보처리장치, 그 제어 방법 및 컴퓨터 프로그램 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20150052235A1 (ko) |
EP (1) | EP2843909A1 (ko) |
JP (1) | JP2015036900A (ko) |
KR (1) | KR20150020069A (ko) |
CN (1) | CN104378569A (ko) |
RU (1) | RU2593272C2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190077221A (ko) * | 2017-12-25 | 2019-07-03 | 캐논 가부시끼가이샤 | 통신장치, 제어방법, 기억매체 및 프로그램 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6260272B2 (ja) * | 2013-12-27 | 2018-01-17 | ブラザー工業株式会社 | 情報処理プログラム、情報処理装置、および情報処理装置の制御方法 |
US9680646B2 (en) * | 2015-02-05 | 2017-06-13 | Apple Inc. | Relay service for communication between controllers and accessories |
JP6512882B2 (ja) * | 2015-03-19 | 2019-05-15 | キヤノン株式会社 | 通信機器およびその制御方法 |
US10419497B2 (en) * | 2015-03-31 | 2019-09-17 | Bose Corporation | Establishing communication between digital media servers and audio playback devices in audio systems |
US10506068B2 (en) * | 2015-04-06 | 2019-12-10 | Microsoft Technology Licensing, Llc | Cloud-based cross-device digital pen pairing |
US10355923B2 (en) * | 2015-11-02 | 2019-07-16 | Mobitv, Inc. | Self-configuration of wireless connections |
CN106105244A (zh) * | 2016-06-12 | 2016-11-09 | 北京小米移动软件有限公司 | 上传视频的方法、装置及摄像装置 |
JP6467395B2 (ja) * | 2016-11-25 | 2019-02-13 | キヤノン株式会社 | 画像送信装置、画像受信装置、それらの制御方法および画像通信システム |
CN108024306B (zh) * | 2017-12-05 | 2020-12-18 | 锐捷网络股份有限公司 | 一种tcp连接管理方法及网关设备 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3664148B2 (ja) | 2002-04-22 | 2005-06-22 | コニカミノルタフォトイメージング株式会社 | デジタルカメラおよびプログラム |
JP2003333051A (ja) * | 2002-05-13 | 2003-11-21 | Fuji Photo Film Co Ltd | データ送信方法および装置並びにプログラム |
JP2004120607A (ja) * | 2002-09-27 | 2004-04-15 | Fuji Photo Film Co Ltd | カメラ制御方法および装置並びにプログラム |
US7437771B2 (en) * | 2004-04-19 | 2008-10-14 | Woodcock Washburn Llp | Rendering protected digital content within a network of computing devices or the like |
JP2007206810A (ja) * | 2006-01-31 | 2007-08-16 | Brother Ind Ltd | ネットワーク認証システム、情報処理装置、ネットワーク装置及びプログラム |
US20080066181A1 (en) * | 2006-09-07 | 2008-03-13 | Microsoft Corporation | DRM aspects of peer-to-peer digital content distribution |
JP2008085393A (ja) * | 2006-09-25 | 2008-04-10 | Olympus Corp | 情報端末装置、情報処理システム及び情報処理プログラム |
CN101309143A (zh) * | 2008-06-24 | 2008-11-19 | 宇龙计算机通信科技(深圳)有限公司 | 一种移动终端间互访共享数据的方法及系统 |
US8850045B2 (en) * | 2008-09-26 | 2014-09-30 | Qualcomm Incorporated | System and method for linking and sharing resources amongst devices |
JP2010086174A (ja) * | 2008-09-30 | 2010-04-15 | Fujifilm Corp | 画像共有システムおよび画像共有方法 |
KR101679428B1 (ko) * | 2009-10-16 | 2016-11-25 | 삼성전자주식회사 | Cpns 서비스 제공을 위한 개인망 형성 장치 및 방법 |
US20130109314A1 (en) * | 2011-10-27 | 2013-05-02 | Nokia Corporation | Method, apparatus, and computer program product for stopping reception of discovery responses in wireless networks |
JP5425168B2 (ja) * | 2011-12-02 | 2014-02-26 | キヤノン株式会社 | 撮像手段を有する通信装置およびその制御方法 |
CN102497221B (zh) * | 2011-12-13 | 2014-12-31 | 华为终端有限公司 | 终端之间传输数据的方法和终端 |
-
2013
- 2013-08-13 JP JP2013168339A patent/JP2015036900A/ja active Pending
-
2014
- 2014-07-21 EP EP14177764.9A patent/EP2843909A1/en not_active Withdrawn
- 2014-08-07 KR KR20140101606A patent/KR20150020069A/ko not_active Application Discontinuation
- 2014-08-12 US US14/457,873 patent/US20150052235A1/en not_active Abandoned
- 2014-08-12 RU RU2014133186/07A patent/RU2593272C2/ru active
- 2014-08-13 CN CN201410398358.4A patent/CN104378569A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190077221A (ko) * | 2017-12-25 | 2019-07-03 | 캐논 가부시끼가이샤 | 통신장치, 제어방법, 기억매체 및 프로그램 |
Also Published As
Publication number | Publication date |
---|---|
RU2014133186A (ru) | 2016-03-10 |
US20150052235A1 (en) | 2015-02-19 |
CN104378569A (zh) | 2015-02-25 |
RU2593272C2 (ru) | 2016-08-10 |
JP2015036900A (ja) | 2015-02-23 |
EP2843909A1 (en) | 2015-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2593272C2 (ru) | Устройство обработки информации и способ управления таким устройством | |
EP2104317B1 (en) | Information processing unit, information playback unit, information processing method, information playback method, information processing system and program | |
KR101944736B1 (ko) | 통신장치와 통신장치의 제어방법 | |
KR101531532B1 (ko) | 원격 접속에 기초해 홈 네트워크 디바이스의 서비스를 이용하는 방법 및 장치 | |
EP2461523B1 (en) | Systems and methods for operating an appliance control device for an appliance | |
US9848225B2 (en) | Information processing apparatus, control method therefor, and program | |
US20140226530A1 (en) | Communication apparatus and method of controlling the same | |
JP5425168B2 (ja) | 撮像手段を有する通信装置およびその制御方法 | |
JP2010186271A (ja) | 情報処理装置及びその制御方法、サービス提供装置及びその制御方法、情報処理システム、情報処理方法、プログラム、並びに、記録媒体 | |
US20080118005A1 (en) | Receiving apparatus and receiving method | |
JP2010004344A (ja) | リモートアクセスを行う方法、装置、システム及びプログラム | |
EP2211529A1 (en) | Method for sharing file between control point and media server in a dlna system, and system thereof | |
JP6351221B2 (ja) | 情報処理装置およびその制御方法、プログラム | |
US20170302879A1 (en) | Communication apparatus, control method thereof, information processing apparatus, and recording medium | |
JP6351222B2 (ja) | 情報処理装置およびその制御方法、プログラム | |
JP3840215B2 (ja) | 通信装置、方法、機器制御装置、方法、及び、プログラム | |
JP2014042353A (ja) | 撮像装置 | |
JP7086743B2 (ja) | 通信装置、通信装置の制御方法、プログラム | |
RU2574775C1 (ru) | Аппарат связи и способ управления таким аппаратом | |
JP6101312B2 (ja) | 通信装置及びその制御方法及びプログラム | |
RU2574835C1 (ru) | Устройство связи и способ управления таким устройством | |
JP2017192069A (ja) | 通信装置およびその制御方法、プログラム | |
JP5775562B2 (ja) | 情報処理装置及びその制御方法、及び、プログラム | |
JP2018010419A (ja) | 通信装置およびその制御方法、プログラム | |
JP2014060783A (ja) | 撮像装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |