KR101921396B1 - 파일 송수신 디바이스 및 파일 송수신 디바이스의 제어 방법 - Google Patents

파일 송수신 디바이스 및 파일 송수신 디바이스의 제어 방법 Download PDF

Info

Publication number
KR101921396B1
KR101921396B1 KR1020167023864A KR20167023864A KR101921396B1 KR 101921396 B1 KR101921396 B1 KR 101921396B1 KR 1020167023864 A KR1020167023864 A KR 1020167023864A KR 20167023864 A KR20167023864 A KR 20167023864A KR 101921396 B1 KR101921396 B1 KR 101921396B1
Authority
KR
South Korea
Prior art keywords
file
transmission
reception
communication
mode
Prior art date
Application number
KR1020167023864A
Other languages
English (en)
Other versions
KR20160114700A (ko
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 KR20160114700A publication Critical patent/KR20160114700A/ko
Application granted granted Critical
Publication of KR101921396B1 publication Critical patent/KR101921396B1/ko

Links

Images

Classifications

    • H04B5/72
    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • H04M1/7253
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access, e.g. scheduled or random access
    • H04W74/08Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access]
    • H04W74/0833Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access] using a random access procedure
    • H04W74/0841Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access] using a random access procedure with collision treatment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections
    • H04W76/23Manipulation of direct-mode connections
    • H04B5/70
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/64Details of telephonic subscriber devices file transfer between terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements

Abstract

일 실시형태에 따르면, 파일 송수신 디바이스는 통신 방향 관리 유닛과 애플리케이션 유닛을 포함한다. 통신 방향 관리 유닛은 근거리 무선 통신에서 대향 디바이스와 충돌이 발생한 경우에 상기 대향 디바이스와의 접속을 단절하고, 상기 대향 디바이스에 재접속된 후에, 파일 송수신 디바이스를 마스터 모드와 슬레이브 모드 중 어느 한쪽 모드로 전환한다. 애플리케이션 유닛은 상기 대향 디바이스와 파일 송수신 디바이스 사이에서의 파일의 송신, 수신, 또는 송수신을, 통신 방향 관리 유닛에 의해 특정된 모드에 따라 마스터 모드 또는 슬레이브 모드로 수행한다.

Description

파일 송수신 디바이스 및 파일 송수신 디바이스의 제어 방법{FILE TRANSMISSION/RECEPTION DEVICE AND CONTROL METHOD OF FILE TRANSMISSION/RECEPTION DEVICE}
<관련 출원과의 교차 참조>
본원은 2014년 3월 13일자로 출원한 일본 특허출원 제2014-050845호에 기초하며 이에 대해 우선권을 주장하고, 이 특허문헌의 전체 내용은 본 명세서에 참조로 포함된다.
<분야>
본 발명의 실시형태는 개괄적으로 파일 송수신 디바이스 및 파일 송수신 디바이스의 제어 방법에 관한 것이다.
종래, 근거리 무선 통신(near field communication)을 통해 데이터 전송이 행해지는 경우에, 일반적으로 마스터 디바이스로부터 슬레이브 디바이스에 대해 처리 요구가 발행된다. 근거리 무선 통신 기술 중 하나인 TransferJet(상표)의 경우, 디바이스의 우선순위 레벨이 접속 대기 시의 모드에 따라 결정된다. 마스터인 대기 디바이스가 슬레이브 디바이스에 접속될 때에, 우선순위 레벨이 높은 마스터 디바이스와 우선순위가 낮은 슬레이브 디바이스 사이에 접속이 확립될 수 있다. 또, 접속 대기 시에 다이내믹 모드를 갖는 디바이스는, 상대 디바이스가 마스터인 경우에 저 우선순위 레벨을 갖고 상대 디바이스가 슬레이브인 경우에는 고 우선순위 레벨을 갖도록, 상대 디바이스에 따라 자신의 우선순위 레벨을 결정한다
그러나, 종래의 기술에서는, 파일 송신 요구를 갖거나 다이내믹 디바이스인 마스터 디바이스 각각이 서로 근접하는 경우에, 어느 쪽이 고 우선순위 디바이스인지를 결정할 수 없고, 접속이 확립될 수 없어 충돌(conflict)이 발생한다. 따라서, 동일한 모드를 갖는 디바이스들 사이에는 OBEX((Object Exchange) 프로토콜 등을 이용한 통신 기능이 동작할 수 없다.
일본 특허출원 공개 2011-91762
도 1은 제1 실시형태에 따른 통신 디바이스의 구성예를 도시하는 도면이다.
도 2는 TransferJet의 계층 모델을 도시하는 도면이다.
도 3은 제1 실시형태에 따른 파일 송수신 프로세스를 도시하는 플로우차트이다.
도 4는 TransferJet의 데이터 프레임의 구성예를 도시하는 도면이다.
도 5는 제1 실시형태에 따른 양방향 통신 프로세스를 도시하는 플로우차트이다.
도 6은 디바이스 A와 디바이스 B 사이의 파일 송수신 프로세스를 도시하는 시퀀스도이다.
도 7은 각 디바이스의 모드 천이를 도시하는 도면이다.
도 8은 통신 디바이스에 있어서의 통신 상태의 표시예를 도시하는 도면이다.
도 9는 통신 디바이스에 있어서의 양방향 통신 완료 후의 표시예를 도시하는 도면이다.
도 10은 제2 실시형태에 따른 양방향 통신 프로세스를 도시하는 플로우차트이다.
도 11은 제3 실시형태에 따른 단방향 통신 프로세스를 도시하는 플로우차트이다.
도 12는 각 디바이스의 모드 천이를 도시하는 도면이다.
도 13은 통신 디바이스에 있어서의 단방향 통신 완료 후의 표시예를 도시하는 도면이다.
도 14는 제4 실시형태에 따른 통신 디바이스 및 호스트 디바이스의 구성예를 도시하는 도면이다.
도 15는 제4 실시형태에 따른 디바이스 및 접속 상대 관리 테이블의 구성예를 도시하는 도면이다.
도 16은 제4 실시형태에 따른 디바이스 및 송신 리스트 테이블의 구성예를 도시하는 도면이다.
도 17은 통신 디바이스에 있어서의 양방향 통신 완료 후의 표시예를 도시하는 도면이다.
도 18은 제5 실시형태에 따른 디바이스 및 접속 상대 관리 테이블의 구성예를 도시하는 도면이다.
도 19는 제5 실시형태에 따른 디바이스 및 송신 리스트 테이블의 구성예를 도시하는 도면이다.
도 20은 기본적인 차분 전송 방법을 도시하는 도면이다.
도 21은 제6 실시형태에 따른 통신 디바이스의 구성예를 도시하는 도면이다.
도 22는 제6 실시형태에 따른 차분 전송 제어 유닛의 구성예를 도시하는 도면이다.
도 23은 디바이스 A를 중심으로 한 파일 전송 관계를 도시하는 도면이다.
도 24는 디바이스 A의 전송 이력 저장 유닛의 전송 이력 리스트의 구성예를 도시하는 도면이다.
도 25는 디바이스 B의 전송 이력 저장 유닛의 전송 이력 리스트의 구성예를 도시하는 도면이다.
도 26은 제6 실시형태에 따른 파일 전송 프로세스를 도시하는 플로우차트이다.
도 27은 송신 디바이스와 수신 디바이스 사이에 송신 및 수신되는 정보를 도시하는 도면이다.
도 28은 저 레벨의 전송 이력 리스트의 구성예를 도시하는 도면이다.
도 29는 제7 실시형태에 따른 파일 전송 프로세스를 도시하는 플로우차트이다.
도 30은 미송신 파일을 검색하는 프로세스를 도시하는 도면이다.
도 31은 각 디바이스의 파일 리스트 및 전송 이력 리스트의 천이를 도시하는 도면이다.
도 32는 전송 프로세스 도중에 중단된 파일 (j)의 구성예를 도시하는 도면이다.
도 33은 제9 실시형태에 따른 통신 디바이스 및 호스트 디바이스의 구성예를 도시하는 도면이다.
도 34는 제9 실시형태에 따른 차분 전송 제어 유닛의 구성예를 도시하는 도면이다.
도 35는 통신 디바이스의 구성을 간략화한 도면이다.
도 36은 통신 디바이스 및 호스트 디바이스의 구성을 간략화한 도면이다.
도 37은 통신 디바이스 및 호스트 디바이스의 구성을 간략화한 도면이다.
도 38은 통신 디바이스 및 호스트 디바이스의 레지스터 이용 상태를 도시하는 도면이다.
도 39는 레지스터맵의 구성예를 도시하는 도면이다.
일반적으로, 일 실시형태에 있어서, 파일 송수신 디바이스는 통신 방향 관리 유닛 및 애플리케이션 유닛을 포함한다. 통신 방향 관리 유닛은 근거리 무선 통신에서, 대향 디바이스와 충돌이 발생한 경우에 상기 대향 디바이스와의 접속을 단절하고, 상기 대향 디바이스에 재접속된 후에, 파일 송수신 디바이스를 마스터 모드와 슬레이브 모드 중 어느 한쪽 모드로 전환한다. 애플리케이션 유닛은 상기 대향 디바이스와 상기 파일 송수신 디바이스 사이에서의 파일의 송신, 수신, 또는 송수신을, 상기 통신 방향 관리 유닛에 의해 지정된 모드에 따라 마스터 모드 또는 슬레이브 모드로 수행한다.
이하, 첨부 도면을 참조하여, 파일 송수신 디바이스 및 파일 송수신 방법의 예시적인 실시형태에 대해 상세히 설명한다. 본 발명은 이하의 실시형태에 한정되지 않는다.
(제1 실시형태)
도 1은 본 실시형태에 따른 통신 디바이스(1)의 구성예를 도시하는 도면이다. 파일 송수신 디바이스인 통신 디바이스(1)는 사용자 I/F 유닛(10), 애플리케이션 유닛(11), 통신 방향 관리 유닛(12), 전송 조건 정보 관리 유닛(13), 통신 제어 유닛(14), 접속 상대 관리 테이블(15), 및 송신 리스트 테이블(16)을 포함한다.
사용자 I/F 유닛(10)은 통신 개시, 사용자명 등록, 접속 상대 관리 테이블(15)의 입력, 송신 데이터의 카테고리 분류 등의 사용자의 프로세스와의 인터페이스로서 기능한다.
애플리케이션 유닛(11)은 마스터 프로세스 및 슬레이브 프로세스를 수행하여, 파일 송신 및 파일 수신 등의 동작 전체의 관리 등을 수행한다.
통신 방향 관리 유닛(12)은 자신이 속한 디바이스와 대향 디바이스가 동일 모드를 가져 충돌이 발생한 경우에, UID(고유 ID)의 비교, 난수의 생성 등을 수행하여, 자신이 속한 디바이스의 모드(마스터 또는 슬레이브)를 결정한다. 또한, 통신 방향 관리 유닛(12)은 단방향 통신(한쪽 모드)의 완료 후에, 자신이 속한 디바이스의 모드를 마스터로부터 슬레이브로, 또는 슬레이브로부터 마스터로 전환한다.
전송 조건 정보 관리 유닛(13)은 접속 확립 후에 대향 디바이스의 전송 조건 정보를 취득, 관리하여, 송신 또는 수신되는 대상 파일을 결정한다.
통신 제어 유닛(14)은 접속 요구, 접속 응답, 단절 요구(cut-off request) 등의 데이터 프레임의 송수신을 수행한다.
접속 상대 관리 테이블(15)은 사용자가 입력한 접속 상대가 되는 대향 디바이스의 정보를 등록하는데 이용되는 테이블이다.
송신 리스트 테이블(16)은 대향 디바이스에의 접속 시에 송신되는 파일과 그 파일이 속한 카테고리를 등록하는데 이용되는 테이블이다.
본 실시형태에 있어서, 근거리 무선 통신을 이용하여 데이터 통신을 수행하는 경우의 일례로서, 통신 디바이스(1)가 TransferJet(상표)을 이용해 대향 디바이스와의 사이에서 파일을 송수신하는 경우에 관해서 설명한다. TransferJet에서는, 마스터, 다이내믹, 및 슬레이브의 모드가 있지만, 이후의 설명에서는, 마스터 및 슬레이브를 이용할 것이며, 마스터는 고 우선순위를, 슬레이브는 저 우선순위를 갖는 것으로 한다. 여기서, TransferJet의 계층 모델에 관해서 간단히 설명한다. 도 2는 TransferJet의 계층 모델을 도시하는 도면이다. 이 도면은 통신 디바이스(1)인 디바이스 A와 디바이스 B가 접속될 때에 충돌이 발생하는 모습을 도시하는 것이다. TransferJet의 계층 모델은 크게 나눠, 애플리케이션층, 세션층, 데이터 링크층의 3계층으로 나눌 수 있다.
애플리케이션층으로부터 마스터로서의 접속이 요구되면, 데이터 링크층에서 접속 요구 데이터 프레임이 송신된다. 데이터 링크층에서는, 해당 디바이스의 모드가 마스터 또는 슬레이브 중 어느 한쪽인 경우에, 상대 디바이스로부터 송신되는 데이터 프레임이 수신될 수 있다. 그런데, 동일한 우선순위를 갖는 마스터의 디바이스들이 서로 접속 요구 데이터 프레임을 수신할 때에, 세션층에서는 충돌이 인식되고, 따라서, 접속이 제대로 이루어질 수 없다. 이와 같이, 애플리케이션층에서는, 디바이스가 마스터로서 접속을 요구하여 다른 마스터에 근접하는 경우에, 충돌 통지가 수신되고, 프로토콜 통신이 수행될 수 없다. 또한, 세션층에서는, 마스터들이 서로 접속 요구를 수신하는 경우에, 충돌 상태가 형성되고, 따라서 통신이 제대로 확립될 수 없다. 또한, 데이터 링크층에서는, 상위층이 충돌 상태에 있더라도, 디바이스들이 서로의 데이터 프레임을 송신 및 수신할 수 있다.
계속해서, 통신 디바이스(1)에 있어서, 대향 디바이스인 통신 디바이스(1)와의 접속 시에 충돌이 발생한 경우에, 충돌을 해소하여 파일 송수신을 수행하는 양방향 통신의 동작에 관해서 설명한다. 통신 디바이스(1)인 디바이스 A(UID: 0x22222222) 및 디바이스 B(UID: 0x11111111)가 초기 상태로서 함께 마스터 모드(또는 다이내믹 모드)로 접속 대기 상태에 있다고 하며, 양 디바이스는 접속 요구 데이터 프레임을 송신하고 있는 상태인 것으로 한다.
도 3은 본 실시형태에 따른 파일 송수신 프로세스를 도시하는 플로우차트이다. 이하의 플로우차트에 나타내는 순서로 디바이스의 모드를 전환함으로써, 디바이스들은 순차적으로 마스터 및 슬레이브가 되고, 원하는 파일을 송신할 수 있다. 여기서, 디바이스 A의 대향 디바이스는 디바이스 B이며, 디바이스 B의 대향 디바이스는 디바이스 A이다.
먼저, 디바이스 A와 디바이스 B 각각에 있어서, 사용자가 통신을 시작하면, 애플리케이션 유닛(11)은 자신이 속한 디바이스의 모드를 마스터로서 설정하여 접속을 개시하고, 통신 제어 유닛(14)은 접속 요구 데이터 프레임을 송신하기 시작한다(단계 S101). 통신 제어 유닛(14)은 대향 디바이스에 의해 송신되는 접속 요구 데이터 프레임이 수신되지 않는 동안에, 다시 말해 대향 디바이스가 검출되지 않는 동안에(단계 S102: NO), 접속 요구 데이터 프레임을 정기적으로 계속 송신한다(단계 S101).
이어서, 디바이스 A와 디바이스 B가 서로 근접한다. 디바이스 A와 디바이스 B 각각에서, 대향 디바이스에 의해 송신되는 접속 요구 데이터 프레임이 수신될 때에, 즉, 대향 디바이스가 검출될 때에(단계 S102: YES), 통신 제어 유닛(14)은 수신된 접속 요구 데이터 프레임의 내용을 해석한다. 접속 요구 데이터 프레임에는 요구 발행 소스인 디바이스의 우선순위가 기재되어 있기 때문에, 통신 제어 유닛(14)은 그 우선순위와 자신이 속한 디바이스의 우선순위를 비교한다(단계 S103).
전술한 디바이스의 우선순위와 대향 디바이스의 우선순위가 상이한 경우, 즉, 한쪽 디바이스가 마스터이고 다른쪽 디바이스가 슬레이브인 경우, 한쪽 디바이스가 마스터이고 다른쪽 디바이스가 다이내믹인 경우 등에서는(단계 S103: NO), 우선순위가 낮은 디바이스가 접속 응답 데이터 프레임을 반환하여 접속을 확립시킨다. 예컨대, 디바이스 A가 마스터이고, 디바이스 B가 슬레이브인 경우에는, 디바이스 B로부터 디바이스 A로 접속 응답 데이터 프레임이 반환된다. 디바이스 B로부터 접속 응답 데이터 프레임이 수신되지 않는 경우에(단계 S104: NO), 디바이스 A는 접속 응답 데이터 프레임을 대기하고(단계 S105), 프로세스는 단계 S104로 되돌아간다. 디바이스 B로부터 접속 응답 데이터 프레임이 수신되면(단계 S104: YES), 디바이스 A는 마스터로서 접속되고, 접속 확립을 통지하며(단계 S106), 푸시(push) 송신 프로세스 또는 풀(pull) 수신 프로세스 등의 마스터 프로세스를 수행하고(단계 S107), 대향 디바이스와의 통신을 종료한다(단계 S114). 단계 S103: NO로부터 단계 S107까지의 프로세스는 종래의 경우와 같은 일반적인 프로세스이기 때문에, 이에 대한 상세한 설명은 제공하지 않는다.
전술한 디바이스의 우선순위와 대향 디바이스의 우선순위가 동일한 경우(양쪽 디바이스가 마스터 또는 다이내믹인 경우)(단계 S103: YES), 디바이스 A와 디바이스 B 각각에서는, 통신 제어 유닛(14)이 충돌 발생을 통지한다(단계 S108).
디바이스 A와 디바이스 B 각각에 있어서, 충돌 발생 통지가 수신되면, 통신 방향 관리 유닛(12)은 대향 디바이스의 접속 요구 데이터 프레임으로부터 UID 정보를 판독하고 판독된 UID 정보를 저장한다(단계 S109). 도 4는 TransferJet의 데이터 프레임의 구성예를 도시하는 도면이다. TransferJet의 데이터 링크층에서 송신 및 수신되는 데이터 프레임은 본 실시형태에 따른 양방향 통신 동작의 지원 여부를 확인할 수 있는 버전 정보(사양 정보)를 나타내는 LiCC version과, 데이터 프레임 종별을 나타내는 LiCC 와, 예약 정보를 나타내는 "Reserved"와, 송신원 디바이스의 UID를 나타내는 Own UID와, 데이터 프레임의 정보인 LiCC Information에 의해 구성된다. 디바이스 A와 디바이스 B 각각이 대향 디바이스에 데이터 링크층으로 접속되는 경우에, 대향 디바이스로부터 UID 정보 및 버전 정보를 취득할 수 있다. 디바이스 A는 대향 디바이스인 디바이스 B로부터 UID "0x11111111"을 취득하고, 디바이스 B는 대향 디바이스인 디바이스 A로부터 UID "0x22222222"를 취득한다.
디바이스 A와 디바이스 B 각각에서, 통신 방향 관리 유닛(12)은 단절 요구 데이터 프레임을 송신하여, 대향 디바이스와의 접속을 일단 단절한다.(단계 S110).
디바이스 A와 디바이스 B 각각에서, 통신 방향 관리 유닛(12)은 접속 단절후 대향 디바이스로부터 수신된 접속 요구 데이터 프레임의 버전 정보를 확인하고, 대향 디바이스가 본 실시형태에 따른 양방향 통신 동작에 대응하는지의 여부도 확인한다(단계 S111).
디바이스 A와 디바이스 B 각각에서, 대향 디바이스가 본 실시형태에 따른 양방향 통신 동작에 대응하는 경우(단계 S111: YES), 양방향 통신 프로세스를 수행하고(단계 S112), 대향 디바이스와의 통신을 종료한다(단계 S114). 한편, 디바이스 A와 디바이스 B 각각에서, 대향 디바이스가 본 실시형태에 따른 양방향 통신 동작에 대응하지 않는 경우(단계 S111: NO), 단방향 통신 프로세스를 수행하고(단계 S113), 대향 디바이스와의 통신을 종료한다(단계 S114).
본 실시형태에 있어서, 양방향 통신(단계 S112)의 동작에 관해서 설명한다. 도 5는 본 실시형태에 따른 양방향 통신 프로세스를 도시하는 플로우차트이다. 여기서는, 디바이스 A를 중심으로 설명한다.
디바이스 A와 디바이스 B 각각에서, 통신 방향 관리 유닛(12)은 자신이 속한 디바이스의 UID와 전회 접속 시의 대향 디바이스의 UID를 비교하여, UID가 큰 디바이스가 먼저 마스터가 되고, UID가 작은 디바이스가 먼저 슬레이브가 된다(단계 S201). 디바이스 A에서는, 디바이스 A의 UID > 디바이스 B의 UID이므로(단계 S201: YES), 통신 방향 관리 유닛(12)은 자신이 속한 디바이스가 마스터가 되는 것을 결정한다. 한편, 디바이스 B에서는, 디바이스 A의 UID > 디바이스 B의 UID이므로(단계 S201: NO), 통신 방향 관리 유닛(12)은 자신이 속한 디바이스가 슬레이브가 되는 것을 결정한다.
디바이스 A에 있어서, 통신 제어 유닛(14)은 접속 요구 데이터 프레임을 송신하고(단계 S202), 디바이스 B로부터 접속 응답 데이터 프레임이 수신되지 않은 경우에(단계 S203: NO), 접속 응답 데이터 프레임이 수신될 때까지 정기적으로 접속 요구 데이터 프레임을 계속 송신한다(단계 S202).
디바이스 A에 있어서, 통신 제어 유닛(14)은 디바이스 B로부터 접속 응답 데이터 프레임을 수신하면(단계 S203: YES), 접속 응답 데이터 프레임에 포함되는 UID와 전회 접속시의 대향 디바이스의 UID를 비교한다(단계 S204). 통신 제어 유닛(14)은 UID들이 서로 일치하지 않는 경우에(단계 S204: NO), 양방향 통신을 종료한다. 한편, UID들이 서로 일치한 경우에(단계 S204: YES), 통신 제어 유닛(14)은 애플리케이션 유닛(11)에 접속 확립을 통지한다(단계 S205). 애플리케이션 유닛(11)은 마스터로서 접속을 수행한다(단계 S205).
디바이스 A에 있어서, 전송 조건 정보 관리 유닛(13)은 슬레이브측의 디바이스 B로부터 전송 조건 정보를 취득하고(단계 S206), 취득된 정보에 기초하여 슬레이브측의 디바이스 B에 대해 마스터 프로세스를 결정한다. 구체적으로, 송신되는 파일의 선별 등이 수행되며, 이에 대한 상세 내용은 후술하는 실시형태에서 설명한다.
디바이스 A에서, 애플리케이션 유닛(11)은 전송 조건 정보 관리 유닛(13)에 의해 결정된 마스터 프로세스에 따라서, 푸시 송신 또는 풀 수신 등의 마스터 프로세스를 수행한다(단계 S207).
디바이스 A에서, 마스터 프로세스가 완료되면, 통신 방향 관리 유닛(12)은 슬레이브측의 디바이스 B(대향 디바이스)에 대하여, 마스터 프로세스 완료 통지와 함께, 단절 요구 데이터 프레임을 송신하여, 대향 디바이스와의 접속을 일단 단절한다(단계 S208).
통신 방향 관리 유닛(12)은 마스터측 및 슬레이브측의 양방향 통신 프로세스의 완료 여부를 확인한다(단계 S209). 마스터측 및 슬레이브측의 양방향 통신 프로세스가 완료되지 않은 경우(단계 S209: NO), 통신 방향 관리 유닛(12)은 아직 완료되지 않은 모드, 여기서는 애플리케이션 유닛(11)의 모드로서 슬레이브를 설정하고, 통신 제어 유닛(14)은 슬레이브 모드로 접속 대기 상태가 된다(단계 S210). 한편, 양방향 통신 프로세스가 완료된 경우에(단계 S209: YES), 통신 방향 관리 유닛(12)은 양방향 통신을 종료한다.
디바이스 A에서, 통신 제어 유닛(14)은 디바이스 B로부터 접속 요구 데이터 프레임이 수신될 때까지 대기한다(단계 S211: NO). 접속 요구 데이터 프레임이 수신되면(단계 S211: YES), 통신 제어 유닛(14)은 접속 응답 데이터 프레임을 송신한다(단계 S212).
디바이스 A에서, 통신 제어 유닛(14)은 디바이스 B로부터 송신된 접속 요구 데이터 프레임에 포함되는 UID와 전회 접속시의 대향 디바이스의 UID를 비교한다(단계 S213). 통신 제어 유닛(14)은 UID들이 서로 일치하지 않는 경우에(단계 S213: NO), 양방향 통신을 종료한다. 한편, UID들이 서로 일치하면(단계 S213: YES), 통신 제어 유닛(14)은 애플리케이션 유닛(11)에 접속 확립을 통지한다(단계 S214). 애플리케이션 유닛(11)은 슬레이브로서 접속을 수행한다(단계 S214).
디바이스 A에서, 애플리케이션 유닛(11)은 슬레이브측의 프로세스(마스터인 디바이스 B로부터의 푸시에 따른 데이터 수신 프로세스, 풀에 따른 데이터 송신 프로세스 등)을 수행한다(단계 S215).
디바이스 A에서, 슬레이브 프로세스가 완료되면, 통신 제어 유닛(14)은 디바이스 B로부터 송신되는 단절 요구 데이터 프레임을 대기한다(단계 S216). 통신 제어 유닛(14)은 디바이스 B로부터 단절 요구 데이터 프레임이 수신될 때까지 대기하고(단계 S217: NO), 단절 요구 데이터 프레임이 수신되면(단계 S217: YES), 디바이스 B와의 접속을 단절한다.
통신 방향 관리 유닛(12)은 마스터측 및 슬레이브측의 양방향 통신 프로세스의 완료 여부를 확인한다(단계 S218). 마스터측 및 슬레이브측의 양방향 통신 프로세스가 완료된 경우에(단계 S218: YES), 통신 방향 관리 유닛(12)은 양방향 통신을 종료한다. 한편, 마스터측 및 슬레이브측의 양방향 통신 프로세스가 완료되지 않은 경우(단계 S218: NO), 통신 방향 관리 유닛(12)은 아직 완료되지 않은 모드, 여기서는 애플리케이션 유닛(11)의 모드로서 마스터를 설정하고, 통신 제어 유닛(14)은 마스터 모드로서 접속 요구 데이터 프레임을 송신한다(단계 S202).
이와 같이, 디바이스 A는 단계 S201 내지 S218의 순서로 프로세스를 수행하고, 양방향 통신 프로세스를 종료한다. 한편, 디바이스 B는 단계 S201: NO가 만족되기 때문에, 단계 S201, S210 내지 S218, S202 내지 S209의 순서로 프로세스를 수행하고, 양방향 통신 프로세스를 종료한다. 어느 쪽의 디바이스에서도, 마스터와 슬레이브 사이를 전환하여 대향 디바이스에 접속함으로써, 각 모드에서의 통신이 수행될 수 있다.
도 3에 도시하는 파일 송수신 프로세스 및 도 5에 도시하는 양방향 통신 프로세스에서는, 디바이스 A와 디바이스 B가 접속을 일단 단절하고 재접속하는 프로세스가 여러번 있다. 그러나, 접속 단절 중의 대향 디바이스의 이탈, 대향 디바이스의 고장 등으로 재접속이 행해질 수 없는 경우도 고려할 수 있다. 따라서, 디바이스 A와 디바이스 B에서는, 재접속 프로세스에서 미리 정해진 기간 이상 대향 디바이스와의 재접속이 이루어질 수 없는 경우에, 양방향 프로세스가 프로세스 도중에 종료된다.
디바이스 A와 디바이스 B에 의해 수행되는 파일 송수신 프로세스에 대해 시퀀스도를 참조하여 설명한다. 도 6은 디바이스 A와 디바이스 B 사이의 파일 송수신 프로세스를 도시하는 시퀀스도이다. 단계 S301은 도 3의 단계 S101 내지 S111의 프로세스에 해당한다. 또, 단계 S302는 디바이스 A에 대해서는 도 5에 도시한 단계 S201 내지 S209에 해당하고, 디바이스 B에 대해서는 도 5에 도시한 단계 S201, S210 내지 S218에 해당한다. 또한, 단계 S303은 디바이스 A에 대해서는 도 5에 도시한 단계 S201, S210 내지 S218에 해당하고, 디바이스 B에 대해서는 도 5에 도시한 단계 S201 내지 S209에 해당한다. 이와 같이, 디바이스 A와 디바이스 B는 충돌 발생 후에 마스터와 슬레이브 사이를 전환하는 동일한 프로세스를 수행함으로써, 양방향 통신이 수행될 수 있다.
도 7은 각 디바이스의 모드 천이를 도시하는 도면이다. 도 6에 도시하는 시퀀스도에서, 각 디바이스의 상태가 추출된다. 먼저, 상태 1로서, 디바이스 A와 디바이스 B가 마스터로서 접속 요구를 하기 때문에, 충돌이 발생하고, 따라서 통신이 수행될 수 없다. 이어서, UID들을 비교한 결과, 먼저, 상태 2로서, 디바이스 A가 마스터로서 동작하고, 디바이스 B가 슬레이브로서 동작한다. 이 상태에서 디바이스 A와 디바이스 B가 서로 근접하게 되면 접속이 확립되고, 디바이스 A로부터 데이터 통신이 행해진다. 디바이스 A 로부터의 데이터 통신이 완료되면, 모드가 전환되고, 상태 3으로서, 디바이스 A가 슬레이브로서 동작하고, 디바이스 B가 마스터로서 동작한다. 이 상태에서 디바이스 A와 디바이스 B가 서로 근접하게 되면, 디바이스 B로부터의 데이터 통신이 수행될 수 있다.
또, 통신 디바이스(1)에서는, 도 1에는 도시하지 않지만, 통신 디바이스에 포함된 디스플레이 유닛에, 사용자에 대해 현재의 통신 상태 및 통신 결과를 나타낼 수 있다. 도 8은 통신 디바이스(1)에서의 통신 상태의 표시예를 도시하는 도면이다. 예컨대, 양방향 통신 프로세스를 수행하는 도중의 통신 디바이스(1)에서, 최초로 슬레이브 프로세스를 수행하는 도중에, 아직 마스터 프로세스가 수행되지 않는 경우에는, 마스터로서 "통신 없음"을, 슬레이브로서 "통신중", 그리고 "현재 슬레이브 통신중"을 표시함으로써, 사용자에게 디바이스의 상태를 나타낼 수 있다. 표시되는 내용으로서는, 한쪽 모드가 완료되는 경우에는 "통신 완료"가 표시된다. 또한, 도 9는 통신 디바이스(1)에서의 양방향 통신 완료 후의 표시예를 도시하는 도면이다. 각 디바이스에서, 양방향 통신 프로세스로서 마스터 프로세스 및 슬레이브 프로세스가 완료된 경우에, 마스터로서 "통신 완료", 슬레이브로서 "통신 완료", 그리고 "양방향 통신 완료"를 표시함으로써, 사용자에게 디바이스의 상태를 나타낼 수 있다. 표시되는 내용으로서는, 통신이 실패한 경우에는 "통신 실패", 통신 데이터가 없는 경우에는 "통신 데이터 없음"이 표시된다.
본 실시형태에서는, 2개의 디바이스가 양방향 통신에 의해 마스터와슬레이브 사이를 전환하여 통신을 수행하는 경우에, 전술한 바와 같이, 일단 대향 디바이스와의 통신이 단절되고, 모드 사이를 전환하고 재접속을 행하는 프로세스가 수행된다. 마스터와 슬레이브 사이에서 2개의 디바이스를 전환하는 방법으로서는, 2개의 디바이스 사이에서, 마스터로부터 슬레이브로 전환하고, 슬레이브로부터 마스터로 전환하는 등의 확인 정보(confirmation information)를 송신함으로써 전환을 확인하는 방법이 있다. 그러나, 일단 통신을 단절함으로써, 각 디바이스는 대향 디바이스의 모드가 전환된 타이밍을 확실하게 인식할 수 있고, 쌍방의 모드가 결정된 상태에서 다시 시작할 수 있다.
또한, 본 실시형태에 있어서, 디바이스와 대향 디바이스 사이에 충돌이 발생한 경우, 디바이스들이 자동으로 마스터와 슬레이브의 모드 사이를 전환하도록 구성되지만, 디바이스를 조작하는 사용자로부터 조작이 접수되고, 수동 조작에 따른 타이밍에 양방향 통신이 시작될 수도 있다. 이러한 경우, 사용자 조작에 따라, 한쪽 디바이스는 마스터로서 구성될 수 있고, 다른쪽 디바이스는 슬레이브로서 구성될 수 있다. 또한, 사용자는 디바이스와 대향 디바이스 사이에 충돌이 발생하지 않더라도, 송신 또는 수신되기 원하는 파일이 있는 경우에, 수동으로 양방향 통신을 시작할 수도 있다.
또한, 본 실시형태에 있어서, 각 디바이스가 대향 디바이스와의 사이에서 UID의 정보를 교환하고, UID의 크기에 따라 마스터 또는 슬레이브의 모드를 결정하지만, 모드 결정 방법은 이것에 한정되지 않는다. 각 디바이스가 데이터 프레임을 통해 대향 디바이스와 UID의 정보를 교환하지만, 이 데이터 프레임의 "Reserved"를 이용하여, 파일에 관한 정보, 예컨대 파일의 우선순위 레벨, 파일 사이즈, 송신 또는 수신되는 파일의 유무, 파일의 송수신의 요건 유무를 나타내는 정보에 대해, 비트를 설정/클리어하는 정보 등을 포함한다. 각 디바이스는 파일에 관한 이러한 정보를 이용하여, 모드를 결정할 수도 있다.
또한, 본 실시형태에 있어서, 근거리 무선 통신으로서 TransferJet을 이용하여 파일을 송신 및 수신하는 경우를 설명하였지만, 이 경우는 일례이며, 그 기술은 TransferJet에 한정되지 않는다.
제1 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1)는, 동일한 모드 때문에 그 통신 디바이스와 대향 디바이스 사이에 충돌이 발생한 경우, 데이터 링크층으로 데이터 프레임의 통신이 수행될 수 있는 상태에서 대향 디바이스와의 사이에 UID를 송신 및 수신하고, 대향 디바이스의 UID와 그 통신 디바이스의 UID를 비교한 결과에 기초하여, 대향 디바이스의 모드와는 상이한 마스터 또는 슬레이브로서 동작하여 한쪽 모드로 프로세스를 수행한다. 그 후, 대향하는 디바이스와 함께 통신 디바이스(1)가 모드를 전환하여 다른쪽 모드로 프로세스를 수행함으로써, 파일의 송신, 수신, 또는 송수신을 수행한다. 그 결과, 디바이스와 대향 디바이스 사이에 충돌이 발생한 경우라도, 충돌을 해소하여 디바이스와 대향 디바이스 사이에서 파일을 송수신할 수 있다는 효과를 얻을 수 있다.
(제2 실시형태)
본 실시형태에서는, 제1 실시형태와는 상이한 양방향 통신(도 3의 단계 S112)의 프로세스에 관해서 설명한다. 통신 디바이스(1)의 구성은 제1 실시형태와 같고, 또한, 양방향 통신 프로세스 이외의 파일 송수신 프로세스(도 3의 플로우차트)도 제1 실시형태와 같다.
도 10은 본 실시형태에 따른 양방향 통신 프로세스를 도시하는 플로우차트이다. 이하의 플로우차트에 도시하는 순서로 디바이스들의 모드를 전환함으로써, 디바이스들은 순서대로 마스터 및 슬레이브가 되고, 원하는 파일을 서로 송신할 수 있다.
디바이스 A와 디바이스 B 각각에서는, 통신 방향 관리 유닛(12)이 난수를 생성하고(단계 S401), 접속 요구 대기 상태에 있게 된다(단계 S402).
디바이스 A와 디바이스 B에서, 대향 디바이스로부터 접속 요구 데이터 프레임이 수신되지 않은 경우(단계 S403: NO), 통신 방향 관리 유닛(12)은 생성된 난수에 기초한 난수 시간이 경과할 때까지 계속해서 이 상태(접속 요구 대기 상태)에 있는다(단계 S404: NO). 그리고 난수 시간이 경과한 경우, 즉, 접속 요구 대기중에 대향 디바이스로부터 접속 요구 데이터 프레임이 수신되지 않은 경우(단계 S404: YES), 접속 요구 대기가 정지된 후에(단계 S405), 자신이 속한 디바이스의 모드를 마스터로서 다시 설정한다. 여기서는, 일례로서, 디바이스 A가 디바이스 B보다도 생성한 난수가 작고(난수 시간이 짧고), 접속 요구 대기 상태 중에 대향 디바이스로부터 접속 요구 데이터 프레임을 수신하지 않은(단계 S404: YES) 경우에 관해서 설명한다. 또한, 대향 디바이스로부터 접속 요구 데이터 프레임이 수신된 경우(단계 S403: YES), 통신 방향 관리 유닛(12)은 프로세스를 단계 S416의 프로세스로 이행시킨다.
디바이스 A에서, 통신 제어 유닛(14)은 접속 요구 데이터 프레임을 송신하고(단계 S406), 디바이스 B로부터 접속 응답 데이터 프레임이 수신되지 않은 경우에(단계 S407: NO), 접속 응답 데이터 프레임이 수신될 때까지 정기적으로 접속 요구 데이터 프레임을 계속 송신한다(단계 S406).
디바이스 A에서, 디바이스 B로부터 접속 응답 데이터 프레임이 수신되면(단계 S407: YES), 통신 제어 유닛(14)은 접속 응답 데이터 프레임에 포함되는 UID와 전회 접속 시의 대향 디바이스의 UID를 비교한다(단계 S408). 통신 제어 유닛(14)은 UID들이 서로 일치하지 않으면(단계 S408: NO), 양방향 통신을 종료한다. 한편, UID들이 서로 일치하면(단계 S408: YES), 통신 제어 유닛(14)은 애플리케이션 유닛(11)에 접속 확립을 통지한다(단계 S409). 애플리케이션 유닛(11)은 마스터로서 접속을 수행한다(단계 S409).
디바이스 A에서, 전송 조건 정보 관리 유닛(13)은 슬레이브측의 디바이스 B로부터 전송 조건 정보를 취득하고(단계 S410), 취득된 정보에 기초하여 슬레이브측의 디바이스 B에 대한 마스터 프로세스를 결정한다. 보다 구체적으로, 송신되는 파일의 선별 등이 수행되며, 이에 대한 상세 설명은 후술하는 실시형태에서 할 것이다.
디바이스 A에서, 애플리케이션 유닛(11)은 전송 조건 정보 관리 유닛(13)에 의해 결정된 마스터 프로세스에 따라서, 푸시 송신, 풀 수신 등의 마스터 프로세스를 수행한다(단계 S411).
마스터 프로세스가 완료되면, 디바이스 A에서는, 통신 방향 관리 유닛(12)이 슬레이브측의 디바이스 B(대향 디바이스)에 대하여, 마스터 프로세스 종료 통지와 함께, 단절 요구 데이터 프레임을 송신함으로써, 대향 디바이스와의 접속을 일단 단절한다(단계 S412).
통신 방향 관리 유닛(12)은 마스터측 및 슬레이브측의 양방향 통신 프로세스의 완료 여부를 확인한다(단계 S413). 마스터측 및 슬레이브측의 양방향 통신 프로세스가 완료되지 않은 경우(단계 S413: NO), 통신 방향 관리 유닛(12)은 아직 완료되지 않은 모드, 여기서는 애플리케이션 유닛(11)의 모드로서 슬레이브를 설정하고, 통신 제어 유닛(14)은 슬레이브 모드로 접속 대기 상태가 된다(단계 S414). 한편, 통신 방향 관리 유닛(12)은 양방향 통신 프로세스가 완료된 경우에(단계 S414: YES), 양방향 통신을 종료한다.
디바이스 A에서, 통신 제어 유닛(14)은 디바이스 B로부터 접속 요구 데이터 프레임이 수신될 때까지 대기한다(단계 S415: NO). 접속 요구 데이터 프레임이 수신되면(단계 S415: YES), 통신 제어 유닛(14)은 접속 응답 데이터 프레임을 송신한다(단계 S416).
디바이스 A에서, 통신 제어 유닛(14)은 디바이스 B로부터 송신된 접속 요구 데이터 프레임에 포함되는 UID와 전회 접속 시의 대향 디바이스의 UID를 비교한다(단계 S417). 통신 제어 유닛(14)은 UID들이 서로 일치하지 않는 경우에(단계 S417: NO), 양방향 통신을 종료한다. 한편, UID들이 서로 일치하는 경우는(단계 S417: YES), 애플리케이션 유닛(11)에 접속 확립을 통지한다(단계 S418). 애플리케이션 유닛(11)은 슬레이브로서 접속을 수행한다(단계 S418).
디바이스 A에서, 애플리케이션 유닛(11)은 슬레이브측의 프로세스(마스터인 디바이스 B로부터의 푸시에 따른 데이터 수신 프로세스, 풀에 따른 데이터 송신 프로세스 등)를 실행한다(단계 S419).
디바이스 A에서, 슬레이브 프로세스가 완료되면, 통신 제어 유닛(14)은 디바이스 B로부터 송신되는 단절 요구 데이터 프레임을 대기한다(단계 S420). 통신 제어 유닛(14)은 디바이스 B로부터 단절 요구 데이터 프레임이 수신될 때까지 대기하고(단계 S421: NO), 단절 요구 데이터 프레임이 수신되면(단계 S421: YES), 디바이스 B와의 접속을 단절한다.
통신 방향 관리 유닛(12)은 마스터측 및 슬레이브측의 양방향 통신 프로세스의 완료 여부를 확인한다(단계 S422). 마스터측 및 슬레이브측의 양방향 통신 프로세스가 완료된 경우(단계 S422: YES), 통신 방향 관리 유닛(12)은 양방향 통신을 종료한다. 한편, 마스터측 및 슬레이브측의 양방향 통신 프로세스가 완료되지 않는 경우(단계 S422: NO), 통신 방향 관리 유닛(12)은 아직 완료되지 않은 모드, 여기서는 애플리케이션 유닛(11)의 모드로서 마스터를 설정하고, 통신 제어 유닛(14)은 마스터 모드로서 접속 요구를 송신한다(단계 S406).
이와 같이, 디바이스 A는 단계 S401 내지 S422의 순서로 프로세스를 수행하고, 양방향 통신 프로세스를 종료한다. 한편, 디바이스 B에서는, 단계 S403: NO가 만족되기 때문에, 단계 S401 내지 S403, S416 내지 S422, S406 내지 S413의 순서로 프로세스를 수행하고, 양방향 통신 프로세스를 종료한다. 어느 쪽의 디바이스에서도, 마스터와 슬레이브 사이를 전환하여 대향 디바이스와 접속함으로써, 각 모드에서의 통신이 수행될 수 있다.
도 3에 도시하는 파일 송수신 프로세스 및 도 10에 도시하는 양방향 통신 프로세스에 있어서, 디바이스 A와 디바이스 B가 접속을 일단 단절하고 재접속하는 프로세스가 여러번 있다. 그러나, 접속 단절 중에 대향 디바이스의 이탈, 대향 디바이스의 고장 등으로 재접속이 행해질 수 없는 경우도 고려될 수 있다. 따라서, 디바이스 A와 디바이스 B에서는, 재접속 프로세스에서 미리 정해진 기간 이상 대향 디바이스와의 재접속이 이루어질 수 없는 경우에는, 양방향 프로세스가 프로세스 도중에 종료된다.
본 실시형태에 있어서, 디바이스 A와 디바이스 B에서 수행되는 파일 송수신 프로세스의 시퀀스도(도 6 참조), 각 디바이스의 모드 천이를 도시하는 도면(도 7 참조), 통신 디바이스에 있어서의 표시예(도 8와 도 9 참조)는 제1 실시형태와 같다.
또한, 본 실시형태에서는, 각 디바이스를 마스터로 전환시키는 타이밍을 생성된 난수에 기초하지만, 본 발명은 이것에 한정되지 않는다. 각 디바이스를 마스터로 전환시키는 타이밍이 변경되도록 구성되기만 하면 되기 때문에, 난수 이외의 어떤 시간 파라미터도 이용할 수 있다.
또한, 각 디바이스가 본 실시형태에 따른 난수의 정보를, 제1 실시형태와 마찬가지로 대향 디바이스와 교환하여, 난수가 UID로 치환되고, 마스터 또는 슬레이브가 그 난수 사이의 크기 관계에 기초해 결정되도록 구성될 수도 있다.
제2 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1)는, 동일한 모드 때문에 그 통신 디바이스와 대향 디바이스 사이에 충돌이 발생한 경우, 난수를 생성하고, 슬레이브로서 동작한다. 그후 대향 디바이스로부터 접속 요구 데이터 프레임을 수신하지 않고서 난수 시간이 경과한 경우에, 통신 디바이스(1)는 마스터 모드로 전환되고, 대향 디바이스에 대하여 접속 요구 데이터 프레임을 송신하여 마스터 모드의 프로세스를 수행한다. 한편, 난수 시간이 경과하기 전에 대향 디바이스로부터 접속 요구 데이터 프레임이 수신되는 경우에, 통신 디바이스(1)는 슬레이브 모드의 프로세스를 수행하고, 한쪽 모드의 프로세스를 수행한 후, 대향 디바이스와 함께 모드를 전환해서, 다른쪽 모드의 프로세스를 수행하여 통신을 한다. 그 결과, 통신 디바이스와 대향 디바이스 사이에 충돌이 발생한 경우라도, 충돌을 해소하여 통신 디바이스와 대향 디바이스 사이에서 파일을 송수신할 수 있다는 효과를 얻을 수 있다.
또한, 제1 실시형태와는 상이하게, 통신 디바이스와 대향 디바이스 사이에서, 대향 디바이스를 식별하는 UID 이외의 정보를 서로 교환하지 않고서, 양방향 통신이 수행될 수 있다.
(제3 실시형태)
본 실시형태에서는, 제1 실시형태에 따른 단방향 통신(도 3의 단계 S113)의 프로세스, 즉, 디바이스 A와 디바이스 B 중 한쪽이 제1(또는 제2) 실시형태에 따른 양방향 통신의 동작에 대응하지 않는 경우(도 3의 단계 S111: NO)에 관해서 설명한다. 여기서, 디바이스 A와 디바이스 B는 TransferJet 통신을 수행할 수 있지만, 디바이스 A만이 제1(또는 제2) 실시형태에서 설명한 양방향 통신에 대응하고, 디바이스 B는 제1(또는 제2) 실시형태에서 설명한 양방향 통신에 대응하지 않는다.
디바이스 B는 양방향 통신 기능을 갖지 않기 때문에, 자동으로 슬레이브 모드로 전환될 수 없다. 이에, 충돌이 발생한 경우라도 양방향 통신에 대응한 디바이스 A가 슬레이브 모드로 전환되기 때문에 단방향 통신은 실현될 수 있다.
도 11은 본 실시형태에 따른 단방향 통신 프로세스를 도시하는 플로우차트이다. 이하의 플로우차트에 도시하는 순서에 따라, 디바이스 B로부터 디바이스 A에 원하는 파일이 송신될 수 있다. 단방향 통신(단계 S113)의 프로세스까지의 파일 송수신 프로세스(도 3의 단계 S101 내지 S111)는 전술한 바와 같다.
디바이스 A와 디바이스 B에 있어서, 대향 디바이스가 본 실시형태에 따른 양방향 통신의 동작에 대응하지 않는 경우(단계 S111: NO), 단방향 통신 프로세스가 수행되고(단계 S113), 대향 디바이스와의 통신이 종료된다(단계 S114).
이 때, 양방향 통신의 동작에 대응하는 디바이스 A에서는, 대향 디바이스인 디바이스 B가 양방향 통신의 동작에 대응하지 않기 때문에, 통신 방향 관리 유닛(12)은 자신이 속한 디바이스의 애플리케이션 유닛(11)의 모드로서 슬레이브를 설정하고, 접속 요구 대기 상태가 된다(단계 S501).
디바이스 A에서, 통신 제어 유닛(14)은 디바이스 B로부터 접속 요구 데이터 프레임이 수신될 때까지 대기한다(단계 S502: NO). 접속 요구 데이터 프레임이 수신되면(단계 S502: YES), 통신 제어 유닛(14)은 접속 응답 데이터 프레임을 송신한다(단계 S503).
디바이스 A에서, 통신 제어 유닛(14)은 디바이스 B로부터 송신된 접속 요구 데이터 프레임에 포함되는 UID와 전회 접속 시의 대향 디바이스의 UID를 비교한다(단계 S504). 통신 제어 유닛(14)은 UID들이 서로 일치하지 않는 경우에(단계 S504: NO), 단방향 통신을 종료한다. 한편, UID들이 서로 일치하는 경우는(단계 S504: YES), 통신 제어 유닛(14)이 애플리케이션 유닛(11)에 접속 확립을 통지한다(단계 S505). 애플리케이션 유닛(11)은 슬레이브로서 접속을 수행한다(단계 S505).
디바이스 A에서, 애플리케이션 유닛(11)은 슬레이브측의 프로세스(마스터인 디바이스 B로부터의 푸시에 따른 데이터 수신 프로세스, 풀에 따른 데이터 송신 프로세스 등)를 수행한다(단계 S506).
디바이스 A에서, 슬레이브 프로세스가 완료되면, 통신 제어 유닛(14)은 디바이스 B에 단절 프로세스를 송신하여 디바이스 B와의 접속을 단절한다(단계 S507). 그런 다음, 단방향 프로세스가 완료되기 때문에, 통신은 종료된다.
도 12는 각 디바이스의 모드 천이를 도시하는 도면이다. 먼저, 상태 1로서, 디바이스 A와 디바이스 B가 마스터로서 접속 요구를 행하기 때문에, 충돌이 발생하고, 이에 통신이 수행될 수 없다. 이 때, 디바이스 A와 디바이스 B 사이에서 데이터 프레임이 송수신되고, 디바이스 A는 데이터 프레임에 포함되는 버전 정보에 기초하여, 대향 디바이스인 디바이스 B가 양방향 통신에 대응하지 않는 것을 알게 된다. 이에, 디바이스 A는, 상태 2로서, 슬레이브로서 동작하고, 마스터인 디바이스 B와의 접속을 확립할 수 있어, 디바이스 B로부터 데이터 통신이 수행될 수 있다.
도 13은 통신 디바이스(1)에 있어서의 단방향 통신 완료 후의 표시예를 도시하는 도면이다. 디바이스 A에서는, 단방향/양방향 통신 프로세스로서 마스터 프로세스가 실패하고, 슬레이브 프로세스가 완료되며, 슬레이브 통신만의 완료를 표시함으로써 사용자에게, 디바이스 A의 상태를 나타낼 수 있다. 이 때, 대향 디바이스가 양방향 통신에 대응하지 않는 디바이스인 것을 통지하는 에러 표시가 표시될 수도 있다.
제3 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1)는, 동일한 모드 때문에 그 통신 디바이스와 대향 디바이스 사이에 충돌이 발생한 경우, 대향 디바이스가 제1(또는 제2) 실시형태에 따른 양방향 통신에 대응하지 않는 경우, 슬레이브 모드로 동작하고, 대향 디바이스를 마스터로 하는 단방향 통신만을 수행한다. 그 결과, 충돌이 발생한 경우라도 양방향 통신에 대응하지 않는 디바이스로부터 양방향 통신에 대응하는 디바이스로의 방향으로 단방향 통신을 실현하는 효과를 얻을 수 있다.
(제4 실시형태)
본 실시형태에서는, 마스터 디바이스가 슬레이브 디바이스에 대하여 데이터를 송신할 때에, 슬레이브 디바이스로부터 취득된 전송 조건 정보에 기초해, 송신되는 파일을 자동으로 제한하는 기능에 관해서 설명한다.
구체적으로, 무선 통신 기능을 갖는 디바이스로서, 착탈 가능형 디바이스(SD 카드, SDIO 카드, 동글(dongle) 등)의 이용을 상정한다. 무선 통신 기능을 갖는 디바이스가 착탈 가능형 디바이스인 경우, 이 디바이스는 여러가지 호스트 디바이스에 의해 교체되어 이용되는 것이 고려될 수 있다. 따라서, 디바이스의 UID에 기초하여 통신 상대(호스트 디바이스)의 정보가 특정될 수 없는 경우가 있다. 이에, 통신 상대를 식별하기 위해, 호스트 디바이스 종별과 시리얼 넘버의 정보가 이용된다.
도 14는 본 실시형태에 따른 통신 디바이스(1a) 및 호스트 디바이스(2)의 구성예를 도시하는 도면이다. 파일 송수신 디바이스인 통신 디바이스(1a)는, 예컨대, 전술한 바와 같이 SD 카드, SDIO 카드, 동글 등의 착탈 가능형 디바이스이다. 그러나, 통신 디바이스(1a)가 이들에 한정되지는 않는다. 또한, 호스트 디바이스(2)는, 예컨대 디지털 카메라, 퍼스널 컴퓨터(PC) 등이다. 그러나, 호스트 디바이스(2)가 이들에 한정되지는 않는다.
통신 디바이스(1a)는 애플리케이션 유닛(11), 통신 방향 관리 유닛(12), 전송 조건 정보 관리 유닛(13), 통신 제어 유닛(14), 접속 상대 관리 테이블(15), 송신 리스트 테이블(16), 및 호스트 디바이스 I/F 유닛(17)을 포함한다. 호스트 디바이스 I/F 유닛(17)은 호스트 디바이스(2)와의 사이에서 데이터를 송수신하는 인터페이스이다.
통신 디바이스(1a)에서, 전송 조건 정보 관리 유닛(13)은 호스트 디바이스 I/F 유닛(17)을 통해, 호스트 디바이스(2)의 디바이스 정보 관리 유닛(20)으로부터 호스트 디바이스(2)의 정보(시리얼 넘버, 사용자명 등)을 취득한다.
호스트 디바이스(2)는 사용자 I/F 유닛(10), 디바이스 정보 관리 유닛(20), 및 통신 디바이스 I/F 유닛(21)을 포함한다. 디바이스 정보 관리 유닛(20)은 호스트 디바이스(2)의 시리얼 넘버, 사용자로부터 입력된 "사용자명" 등, 호스트 디바이스(2)의 정보를 관리한다. 통신 디바이스 I/F 유닛(21)은 통신 디바이스(1a)와의 사이에서 데이터를 송수신하는 인터페이스이다.
계속해서, 본 실시형태에 따른 파일 송신 프로세스에 관해서 설명한다. 도 15는 본 실시형태에 따른 디바이스 및 접속 상대 관리 테이블(15)의 구성예를 도시하는 도면이다. 일례로서, 디바이스 A는 도 1에 도시하는 구성을 갖는 통신 디바이스(1)이며, 디바이스 B는 도 14에 도시하는 구성을 갖는 통신 디바이스(1a)이다. 여기서, 디바이스 A는 도 14에 도시하는 구성을 갖는 통신 디바이스(1a)로서 구성될 수도 있다. 도 15는 디바이스 B가 4개의 호스트 디바이스(2)(호스트 디바이스 A, B, C, D)에 접속될 수 있는 것을 도시하고 있다. 실제로 디바이스 A와 통신하기 위해 디바이스 B는 하나의 호스트 디바이스(2)에 접속된다.
도 15에 도시하는 경우에 있어서, 무선 통신 기능을 갖는 디바이스 A와 디바이스 B에 있어서, 디바이스 A는 송신측 디바이스(마스터)로서 동작하고, 디바이스 B는 수신측 디바이스(슬레이브)로서 동작한다. 디바이스 B는 착탈 가능형 디바이스이기 때문에 다양한 호스트 디바이스(2)에 삽입될 수 있고, 호스트 디바이스(2)에는 무선 통신 기능이 부가될 수 있다.
먼저, 마스터측인 디바이스 A는, 송신을 수행하기 전에, 사용자 I/F 유닛(10)을 통해, 사용자로부터의 입력에 따라 접속 상대 관리 테이블(15)에, 각 호스트 디바이스(2)의 "호스트 디바이스 종별"과 "호스트 디바이스의 시리얼 넘버"를 등록하고, 그 호스트 디바이스(2)가 속한 카테고리("Family", "Business", "Friend", "Personal" 등)를 등록한다.
디바이스 A의 전송 조건 정보 관리 유닛(13)은 송신되는 각 파일에 대하여, 송신될 수 있는 카테고리를 설정하여, 송신 리스트 테이블(16)에 등록한다. 디바이스 A의 전송 조건 정보 관리 유닛(13)은 각 파일에 대하여, 송신될 수 있는 카테고리를 복수 개 선택할 수 있다.
디바이스 B에 있어서, 통신 디바이스(1a)의 전송 조건 정보 관리 유닛(13)은, 호스트 디바이스 I/F 유닛(17)과 통신 디바이스 I/F 유닛(21)을 통해 호스트 디바이스(2)의 디바이스 정보 관리 유닛(20)으로부터 "호스트 디바이스 종별" 및 "호스트 디바이스의 시리얼 넘버"의 정보를 취득하고, 취득된 정보를 전송 조건 정보로서 저장한다.
디바이스 A와 디바이스 B 사이의 접속이 확립되면, 마스터측인 디바이스 A의 전송 조건 정보 관리 유닛(13)은 슬레이브측인 디바이스 B로부터 전송 조건 정보로서, 디바이스 B가 접속되는 호스트 디바이스(2)의 정보("호스트 디바이스 종별" 및 "호스트 디바이스의 시리얼 넘버")를 취득한다.
디바이스 A에서, 취득된 호스트 디바이스(2)의 정보가 접속 상대 관리 테이블(15)에 포함되는 경우에, 상대 디바이스의 카테고리가 특정될 수 있고, 이에 전송 조건 정보 관리 유닛(13)은 송신 리스트 테이블(16)에 포함된 파일 중에서 카테고리가 일치하는 파일만을 송신한다. 또, 카테고리가 "Personal인 호스트 디바이스(2)에 대해서, 전송 조건 정보 관리 유닛(13)은 모든 파일 송신 등의 조건을 지정하여 파일을 송신할 수도 있다. 전송 조건 정보 관리 유닛(13)은 취득된 호스트 디바이스(2)의 정보가 접속 상대 관리 테이블(15)에 포함되어 있지 않으면, 카테고리가 "Guest"인 파일만을 송신한다.
도 16은 본 실시형태에 따른 디바이스 및 송신 리스트 테이블(16)의 구성예를 도시하는 도면이다. 도 16에 도시하는 송신 리스트 테이블(16)을 갖은 디바이스 A는 착탈 가능형 디바이스인 디바이스 B가 각 호스트 디바이스(2)에 삽입되는 경우에, 이하에 예시하는 바와 같이 파일을 송신한다.
카테고리가 "Friend"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 A)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 No. 2,3,6,7의 파일을 송신한다.
카테고리가 "Business"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 B)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 No.1의 파일을 송신한다.
카테고리가 "Family"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 C)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 No.4,5,6,7의 파일을 송신한다.
카테고리가 "Personal"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 D)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 모든 파일을 송신한다.
등록되어 있지 않은 호스트 디바이스(2)에 디바이스 B가 삽입된 경우, 디바이스 A는 그 호스트 디바이스(2)를 "Guest"로 취급하고, No.5,6,7의 파일을 송신한다.
여기서는, 디바이스 A로부터 디바이스 B로 파일을 송신하는 경우에 관해서 설명하였지만, 디바이스 B로부터 디바이스 A로 파일을 송신할 수도 있다. 이 경우, 전송 조건을 만족하는 데이터(파일)가 한쪽 디바이스에 없는 경우에는, 도 17에 도시하는 바와 같이 표시될 수도 있다. 도 17은 통신 디바이스(1a)에서의 양방향 통신 완료 후의 표시예를 도시하는 도면이다. 전송 조건을 만족하는 데이터가 없는 경우에는, 데이터의 부재를 나타내는 에러 표시를 함으로써 사용자에게 통신 디바이스의 상태를 나타낼 수 있다.
제4 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1) 또는 통신 디바이스(1a)에서는, 대향 디바이스가 무선 통신 기능을 갖는 착탈 가능형 디바이스(통신 디바이스(1a))인 경우에, 다양한 호스트 디바이스(2)에 의해 교체되어 이용되는 것이 고려될 수 있기 때문에, 통신 상대의 식별에 호스트 디바이스(2)의 "호스트 디바이스 종별" 및 "호스트 디바이스의 시리얼 넘버"의 정보가 이용될 수 있다. 그 결과, 접속 상대 관리 테이블(15) 및 송신 리스트 테이블(16)을 설정함으로써. 각 호스트 디바이스(2)마다 송신되는 파일을 설정할 수 있다는 효과를 얻을 수 있다.
(제5 실시형태)
본 실시형태에서는, 마스터 디바이스가 슬레이브 디바이스에 대하여 데이터를 송신할 때에, 슬레이브 디바이스로부터 취득된 전송 조건 정보에 기초해, 송신되는 파일을 자동으로 제한하는 기능을, 제4 실시형태와는 상이한 방법으로서 설명한다.
본 실시형태에서는, 통신 상대의 식별에 사용자명을 이용한다. 또, 디바이스 B측의 구성은 제4 실시형태에서 설명한 도 14의 구성과 같다.
계속해서, 본 실시형태에 따른 파일 송신 프로세스에 관해서 설명한다. 도 18은 본 실시형태에 따른 디바이스 및 접속 상대 관리 테이블(15)의 구성예를 도시하는 도면이다. 일례로서, 디바이스 A는 도 1에 도시하는 구성을 갖는 통신 디바이스(1)이며, 디바이스 B는 도 14에 도시하는 구성을 갖는 통신 디바이스(1a)이다. 여기서, 디바이스 A는 도 14에 도시하는 구성을 갖는 통신 디바이스(1a)로서 구성될 수도 있다.
먼저, 마스터측인 디바이스 A는, 송신을 수행하기 전에, 사용자 I/F 유닛(10)을 통해, 사용자로부터의 입력에 따라 접속 상대 관리 테이블(15)에, 각 호스트 디바이스(2)의 "사용자명" 및 그 호스트 디바이스(2)가 속한 카테고리("Family", "Business", "Friend", "Personal" 등)를 등록한다.
디바이스 A의 전송 조건 정보 관리 유닛(13)은 송신되는 각 파일마다 송신될 수 있는 카테고리를 설정하고, 그 카테고리를 송신 리스트 테이블(16)에 등록한다. 디바이스 A의 전송 조건 정보 관리 유닛(13)은 각 파일마다 송신될 수 있는 카테고리를 복수 개 선택할 수 있다.
디바이스 B에서, 사용자는 각 호스트 디바이스(2)의 사용자 I/F 유닛(10)을 통해 각 호스트 디바이스(2)에 "사용자명"을 등록하고, 각 호스트 디바이스(2)의 디바이스 정보 관리 유닛(20)은 등록된 사용자명을 저장한다.
디바이스 B에서, 통신 디바이스(1a)의 전송 조건 정보 관리 유닛(13)은 호스트 디바이스 I/F 유닛(17)과 통신 디바이스 I/F 유닛(21)을 통해 호스트 디바이스(2)의 디바이스 정보 관리 유닛(20)으로부터 "사용자명"의 정보를 취득하고, 취득된 정보를 전송 조건 정보로서 저장한다.
디바이스 A와 디바이스 B 사이의 접속이 확립되면, 마스터측인 디바이스 A의 전송 조건 정보 관리 유닛(13)은 슬레이브측인 디바이스 B로부터 전송 조건 정보로서, 디바이스 B가 접속되는 호스트 디바이스(2)의 정보("사용자명")를 취득한다.
디바이스 A에서, 취득된 호스트 디바이스(2)의 정보가 접속 상대 관리 테이블(15)에 포함되어 있는 경우에, 상대 디바이스의 카테고리가 특정될 수 있기 때문에, 전송 조건 정보 관리 유닛(13)은 송신 리스트 테이블(16)에 포함된 파일 중에서 카테고리가 일치하는 파일만을 송신한다. 또, 전송 조건 정보 관리 유닛(13)은, 카테고리가 "Personal"인 호스트 디바이스(2)에 대해서는, 모든 파일 송신 등의 조건을 지정하여 송신할 수도 있다. 전송 조건 정보 관리 유닛(13)은 취득된 호스트 디바이스(2)의 정보가 접속 상대 관리 테이블(15)에 포함되어 있지 않으면, 카테고리가 "Guest"인 파일만을 송신한다.
도 19는 본 실시형태에 따른 디바이스 및 송신 리스트 테이블(16)의 구성예를 도시하는 도면이다. 도 19에 도시하는 송신 리스트 테이블(16)을 갖는 디바이스 A는 착탈 가능형 디바이스인 디바이스 B가 각 호스트 디바이스(2)에 삽입되는 경우에, 이하에 예시하는 바와 같이 파일을 송신한다.
카테고리가 "Friend"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 A)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 No.2,3,6,7의 파일을 송신한다.
카테고리가 "Business"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 B)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 No.1의 파일을 송신한다.
카테고리가 "Family"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 C)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 No.4,5,6,7의 파일을 송신한다.
카테고리가 "Personal"로 등록되어 있는 호스트 디바이스(2)(호스트 디바이스 D)에 디바이스 B가 삽입되어 통신한 경우, 디바이스 A는 모든 파일을 송신한다.
등록되어 있지 않은 호스트 디바이스(2)에 디바이스 B가 삽입되는 경우, 디바이스 A는 그 호스트 디바이스(2)를 "Guest"로 취급하고, No.5,6,7의 파일을 송신한다.
제5 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1) 또는 통신 디바이스(1a)에서는, 대향 디바이스가 무선 통신 기능을 갖는 착탈 가능형 디바이스(통신 디바이스(1a))인 경우, 다양한 호스트 디바이스(2)에 의해 교체되어 이용되는 것이 고려될 수 있기 때문에, 통신 상대의 식별에 호스트 디바이스(2)의 "사용자명"의 정보가 이용된다. 그 결과, 접속 상대 관리 테이블(15) 및 송신 리스트 테이블(16)을 설정함으로써, 각 호스트 디바이스(2)마다 송신되는 파일을 설정할 수 있다는 효과를 얻을 수 있다.
(제6 실시형태)
제4 및 제5 실시형태에 따라, 전송 조건 정보에 기초해 송신되는 파일을 자동으로 제한하는 방법에 관해서 설명하였다. 여기서, 근거리 무선 통신에서의 파일 전송 방법은, 매체에 저장되는 모든 파일을 전송하는 방법 외에, 소정의 기간만의 파일을 전송하는 방법과 같이 여러 방법이 있다. 본 실시형태 및 이후의 실시형태에서는, 차분 전송 방법에 관해서 설명한다. 제1 내지 제5 실시형태에서는, 파일 송수신 디바이스인 통신 디바이스를 디바이스로서 표현하였지만, 이후에는 파일 전송 방법의 설명에 있어서, 파일 송신측과 파일 수신측을 수월하게 판별하기 위하여, 통신 디바이스를 송신 디바이스 또는 수신 디바이스로 표현할 수 있다.
도 20은 기본적인 차분 전송 방법을 도시하는 도면이다. 송신 디바이스에는, 1회째 송신 시에 파일 1 내지 파일 6, 2회째 송신 시에 파일 1 내지 파일 10이 있는 것으로 한다.
차분 전송 방법으로서, 송신 디바이스와 수신 디바이스가 존재하며, 송신 디바이스가 동일한 수신 디바이스와 여러 번 전송 프로세스를 수행하는 경우, 동일한 파일을 중복 전송하지 않도록, 파일을 송신하기 전에 파일을 송신 이력의 과거 송신 내용과 비교하고, 새롭게 추가된 파일만 송신되게 하는, 송신측에서 선별을 행하는 방법이 있다. 송신 디바이스는 추가분(파일 7 내지 파일 10)만을 선별하고 선별된 추가분을 수신 디바이스에 송신한다.
또한, 다른 차분 전송 방법으로서, 송신 디바이스와 수신 디바이스가 존재하며, 전송 이력 파일을 교환한 후, 수신 디바이스는, 파일을 과거의 수신 내용과 비교하여 송신 디바이스측에 추가 파일이 있는 경우, 송신 디바이스에 대하여 수신되기 원하는 파일을 요청하여 송신 디바이스로부터 파일이 송신되게 하는, 수신측에서 선별을 행하는 방법이 있다. 수신 디바이스는 수신되기 원하는 파일로서 추가분(파일 7 내지 파일 10)을 선별해서 요청하여, 송신 디바이스는 요청된 파일 7 내지 파일 10을 수신 디바이스에 송신한다.
도 21은 본 실시형태에 따른 통신 디바이스(1b)의 구성예를 도시하는 도면이다. 파일 송수신 디바이스인 통신 디바이스(1b)는 사용자 I/F 유닛(10), 애플리케이션 유닛(11), 통신 방향 관리 유닛(12), 전송 조건 정보 관리 유닛(13), 통신 제어 유닛(14), 접속 상대 관리 테이블(15), 송신 리스트 테이블(16), 및 차분 전송 제어 유닛(18)을 포함한다. 차분 전송 제어 유닛(18)은 접속되는 디바이스마다 전송 이력(송신 정보와 수신 정보)을 작성하고, 그 전송 이력을 전송이 완료될 때마다 메모리 영역에 저장하며, 다음 전송 시에 전송 이력을 비교함으로써 동일한 데이터가 중복 전송되지 않게 제어한다. 차분 전송 제어 유닛(18)의 소프트웨어 구성으로서, 도 2에 도시하는 애플리케이션층의 애플리케이션의 구성이 채택된다.
도 22는 본 실시형태에 따른 차분 전송 제어 유닛(18)의 구성예를 도시하는 도면이다. 차분 전송 제어 유닛(18)은 전송 이력 저장 처리 유닛(30), 전송 이력 저장 유닛(31), 전송 이력 비교 유닛(32), 패킷 저장 유닛(33), 및 복원 처리 유닛(34)을 포함한다.
전송 이력 저장 처리 유닛(30)은 통신 디바이스(1b)의, 도시하지 않는 저장 유닛에 저장된 파일, 및 다른 디바이스와의 사이에서 송수신된 파일의 정보를 전송 이력 저장 유닛(31)에 저장한다.
전송 이력 저장 유닛(31)은 통신 디바이스(1b)의, 도시하지 않는 저장 유닛에 저장된 파일, 및 다른 디바이스와의 사이에서 송수신된 파일의 정보를 전송 이력 리스트로서 저장하는 저장 유닛이다.
전송 이력 비교 유닛(32)은 전송 이력 저장 유닛(31)에 저장된, 자신이 속한 디바이스의 전송 이력을 대향 디바이스로부터 취득된 전송 이력과 비교한다. 여기서, 전송 이력 저장 유닛(31)은 차분 전송 제어 유닛(18) 내에 배치되는 것이 아니라, 통신 디바이스(1b) 내에 배치되며 파일 등을 저장하는데 이용되는, 도시하지 않는 저장 유닛 내에 배치될 수도 있다.
다른 디바이스로부터 파일이 수신될 때에, 패킷 저장 유닛(33)은 그 파일을 구성하는 패킷 중 수신될 수 없는 패킷이 있는 경우, 수신에 성공한 패킷을 일시적으로 저장한다.
복원 처리 유닛(34)은 패킷 저장 유닛(33)에 저장된 패킷과, 새롭게 수신된 그 파일을 구성하는 나머지 패킷을 이용하여, 파일을 복원한다.
도 23은 디바이스 A를 중심으로 한 파일 전송 관계를 도시하는 도면이다. 여기서, 통신 디바이스(1b)로서 디바이스 A, B, C, D의 4개의 디바이스가 있고, 디바이스 A는 다른 디바이스 B, C, D에 대해 파일을 송수신할 수 있다고 한다.
도 24는 디바이스 A의 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 구성예를 도시하는 도면이다. 도 25는 디바이스 B의 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 구성예를 도시하는 도면이다. 전송 이력 리스트는, 송신 또는 수신의 카테고리, 파일 송수신 대상의 상대 디바이스 ID, 송신 또는 수신되는 파일의 파일명, 그 파일에 관한 갱신 일시, 파일의 사이즈, 전송이 중단된 경우에 수신에 성공한 패킷의 패킷 정보를 나타내는 패킷, 송신 완료 상태, 미송신, 송신 금지 또는 수신 금지 등의 상태를 나타내는 스테이터스 정보를 저장한다.
상대 디바이스 ID는 실제로는 MAC 어드레스와 같이 16진수로 표현되며, 고유하며, 어떤 다른 디바이스도 동일한 대향 디바이스 ID를 갖지 않는다. 또, 상대 디바이스 ID는 TransferJet에서 UID라고 불리는 디바이스를 특정할 수 있는 고유 ID, 상위 레벨의 사용자 식별 ID, 호스트 디바이스 ID(시리얼 넘버) 등일 수 있다.
또한, 갱신 일시는 실제로 UTC(Coordinated Universal Time) 등의 초수(秒數)로 표현되며, 여기서는 이해하기 쉽게 날짜로 표현된다. 또, 갱신 일시로서 날짜 정보는 파일이 작성된 날짜이며, 날짜 정보를 각 디바이스가 독자적인 날짜로서 관리하는 방법도 있다. 예컨대, 그 디바이스가 파일을 작성한 날짜, 파일을 복사한 경우에는 파일 복사 날짜를 이용할 수도 있다.
송신 금지, 수신 금지 등의 스테이터스는 상대 디바이스 ID 등을 이용하여, 사용자에 의해 의도적으로 설정될 수도 있다. 스테이터스가 송신 금지인 파일은 송신 대상으로 설정되지 않는다.
앞에서 제공한 설명에서는, 전송 이력을 송신 및 수신 카테고리로 나누고, 각 카테고리의 각각의 상대 디바이스 ID마다 지금까지의 전송 이력을 리스트화하여 전송 이력 리스트가 하나의 파일로서 구성되지만, 이러한 구성은 일례이며, 전송 이력 리스트는 이것에 한정되지 않는다. 예컨대, 각 상대 디바이스 ID마다 파일이 나누어지고, 각 파일마다 지금까지의 송신 및 수신의 전송 이력이 리스트로서 형성되는 경우의 패턴 등을 포함해 여러 패턴이 있다.
각 디바이스에서는, 각 디바이스가 상대 디바이스 ID에 기초해 식별될 수 있기 때문에, 파일 송신 및 파일 수신의 이력이 복수의 디바이스에 대해 저장될 수 있다.
계속해서, 통신 디바이스(1b)에 의해 수행되는 파일 전송 동작에 관해서 설명한다. 여기서는, 먼저 설명한 도 20의 송신 디바이스 및 수신 디바이스를 이용하여, 송신측에서 선별하는 방법에 관해서 설명한다. 도 26은 본 실시형태에 따른 파일 전송 프로세스를 도시하는 플로우차트이다. 구체적으로, 송신 디바이스와 수신 디바이스 사이에서 파일이 송수신되고, 그 후, 디지털 카메라로 촬영하는 등에 의해 송신 디바이스에 파일이 추가되는 경우에 관해서 설명한다.
먼저, 송신 디바이스에서는, 전송 이력 비교 유닛(32)이 접속된 수신 디바이스의 ID를 취득하고(단계 S601), 수신 디바이스의 전송 이력을 취득한다(단계 S602). 이러한 정보는, 송신 디바이스와 수신 디바이스가 접속될 때에, 수신 디바이스로부터 송신 디바이스로 송신되는 데이터 프레임에 포함되어 있다. 또한, 송신 디바이스는 수신 디바이스로부터 취득되는 전송 이력 중에서, 모든 전송 이력이 아니라, 수신 디바이스에서의 송신 디바이스로부터의 수신에 관한 이력만 취득하도록 구성될 수도 있다.
송신 디바이스에서는, 전송 이력 비교 유닛(32)이 전송 이력 저장 유닛(31)으로부터 그 송신 디바이스의 전송 이력을 취득한다(단계 S603). 또, 전송 이력 비교 유닛(32)은 전송 이력으로서, 모든 전송 이력이 아니라, 수신 디바이스에 대응하는 그 송신 디바이스로부터의 송신에 관한 전송 이력만 취득하도록 구성될 수도 있다.
송신 디바이스에서, 전송 이력 비교 유닛(32)은 취득된 수신 디바이스의 전송 이력을, 그 송신 디바이스의 전송 이력에 포함되는 수신 디바이스(수신 디바이스 ID)에 대응하는 전송 이력과 비교한다(단계 S604).
전송 이력 비교 유닛(32)은 미송신 파일이 있기 때문에(단계 S605: YES), 미송신 스테이터스를 갖는 파일을 송신 대상 파일로서 송신 리스트 테이블(16)에 설정한다. 전송 이력 비교 유닛(32)은 미송신 대상 파일로서 파일 7 내지 파일 10이 있기 때문에, 파일 7부터 시작하는 파일을 순차적으로 송신 리스트 테이블(16)에 설정한다(단계 S606).
그리고, 통신 제어 유닛(14)은 송신 리스트 테이블(16)에 설정된 미송신 스테이터스를 갖는 파일을 수신 디바이스에 송신한다(단계 S607).
송신 디바이스에서, 전송 이력 저장 처리 유닛(30)은 수신 디바이스에 전송 성공한 파일에 관해서, 그 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 스테이터스 필드를 송신 종료로서 갱신한다(단계 S608).
송신 디바이스에서는, 프로세스가 단계 S604로 되돌아가고, 미송신 파일이 있는 경우에는, 단계 S604 내지 S608의 프로세스가 반복 수행한다. 송신 디바이스는 파일 7부터 시작하는 파일을 순차적으로 송신하며, 파일 10이 송신될 때까지 프로세스를 반복 수행한다. 파일 10의 송신이 완료되면, 미송신 파일이 없기 때문에(단계 S605: NO), 전송 이력 비교 유닛(32)은 파일의 전송 프로세스를 종료한다.
송신 디바이스에서, 복수의 파일이 연속으로 전송되고 마지막에 전송 이력 저장 처리 유닛(30)에 의해 전송 이력 리스트가 갱신되면, 전송 프로세스 도중에 디바이스의 전원 오프 등으로 전송이 중단된 경우에, 전송 이력 리스트에는 정확한 정보가 남아 있지 않는다. 이에, 전송 이력 저장 처리 유닛(30)은, 전술한 바와 같이, 하나의 파일이 전송 성공할 때마다 전송 이력 리스트를 갱신한다.
또, 수신 디바이스에서도 마찬가지로, 파일 수신 후에, 전송 이력 저장 유닛(31)에 저장된 대응하는 전송 이력 리스트의 스테이터스 필드가 수신 종료로서 갱신된다(단계 S608).
도 27은 송신 디바이스와 수신 디바이스 사이에서 송신 및 수신되는 정보를 도시하는 도면이다. 송신 디바이스 및 수신 디바이스는 서로 ID 및 디바이스의 전송 이력 리스트의 정보를 송신한다. 송신 디바이스는 서로의 전송 이력 리스트를 비교하여 차분의 파일 7 내지 파일 10만 송신한다. 그리고, 송신 디바이스 및 수신 디바이스는, 각각 파일 1 내지 파일 10을 포함하고, 각각의 전송 이력 리스트를 갱신함으로써 이들 사이에 차분이 없다.
송신측에서 선별하는 방법에 관해서 구체적으로 설명하였지만, 수신측에서 선별하는 동작에 대해서도 간단히 설명한다. 도 26에 도시하는 플로우차트를 참조하면, 수신 디바이스가 단계 S601 내지 S605에 해당하는 프로세스를 수행한다. 수신 디바이스는 단계 S606에 해당하는 프로세스에서 미송신 파일을 선별하고, 송신 디바이스로부터 수신되기 원하는 파일을 요청한다. 송신 디바이스는 단계 S607에서 송신 파일을 송신한다. 그리고, 단계 S608에서, 수신 디바이스 및 송신 디바이스는 전송 이력 저장 유닛(31)의 전송 이력 리스트에 저장된 스테이터스 필드를 갱신한다. 이 경우에도, 수신 디바이스 및 송신 디바이스는 송신측에서 선별하는 방법에 따라 그것과 같은 상태를 형성할 수 있다.
제1 실시형태 등에서 설명한 바와 같이, 근거리 무선 통신에서는, 전송 트리거로서, 사용자의 버튼 조작 등이 필요하지 않고, 송신 대상인 파일이 있으면, 상대 디바이스와의 접속 개시 시간이 트리거가 된다.
또한, 각 디바이스(예컨대, 디지털 카메라)에서는, 전술한 다른 디바이스로부터의 전송 프로세스 이외에, PC 등으로부터 파일 카피 프로세스를 통해 파일이 신규로 추가되는 경우가 있다. 이에, 각 디바이스는 다른 디바이스에 대한 전송 프로세스의 개시 전에 전송 이력 리스트를 갱신하여, 신규 추가 파일을 추가한다. 이 때, 신규 추가 파일의 스테이터스는 미송신이다.
또한, PC 등으로부터 파일 카피 프로세스에서 파일이 신규로 추가되는 경우에는, 과거의 오래된 파일이 추가되는 경우도 고려할 수 있다. 이 경우에도, 과거의 오래된 파일은 상대 디바이스에 송신하지 않기 때문에, 스테이터스는 미송신이다. 이에, 전송 이력 비교 유닛(32)은 과거의 오래된 파일에 관해서도, 미송신 스테이터스를 갖는 파일로서, 송신 대상 파일처럼 송신 리스트 테이블(16)에 설정할 수 있다.
제6 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1b)에서는, 송신 디바이스측과 수신 디바이스측이 서로의 전송 이력의 정보를 송수신하고, 송신 디바이스는 수신 디바이스에 미송신 파일만 송신한다, 또는, 수신 디바이스가 미수신 파일의 전송을 송신 디바이스에 요청하고, 송신 디바이스는 요청된 파일을 전송한다. 그 결과, 동일한 파일을 여러번 중복하여 전송하는 상황을 회피할 수 있고, 파일 전송 시간을 단축하여, 통신 효율을 향상시킬 수 있다는 효과를 얻을 수 있다.
(제7 실시형태)
제6 실시형태에서는, 전송 이력 저장 유닛(31)에 저장되는 전송 이력 리스트로서, 도 24와 도 25에 도시하는 바와 같이, 상대 디바이스마다 각 파일별로 스테이터스가 관리된다. 그러나, 대상 파일 또는 대상의 상대 디바이스의 수가 증가하면, 전송 이력 저장 유닛(31)의 용량이 증대한다. 또한, 전송 이력 비교 유닛(32)도 파일의 검색 등에 대한 높은 처리 능력을 필요로 한다. 전송 이력 리스트를 사용하는 디바이스에서는, 전송 이력 리스트를 검색하는 속도가, 탑재되는 CPU(Central Processing Unit) 등의 하드웨어 구성의 처리 능력에 좌우된다.
이에, 전송 이력 리스트의 관리 레벨을 복수개 마련한다. 제6 실시형태에서 설명한 전송 이력 리스트가 고레벨을 갖는 것으로 설정되고, 본 실시형태에서는, 제6 실시형태에서 설명한 전송 이력 리스트보다도 관리 레벨이 낮은 저레벨의 전송 이력 리스트를 사용하는 경우에 관해서 설명한다.
고레벨의 전송 이력 리스트는, 관리되는 정보량이 많은 경우에, 과거의 전송 이력이 전부, 전송된 모든 파일의 파일 정보(파일명, 갱신 일시, 파일 사이즈, 패킷, 스테이터스)로서 리스트화되어 저장되어, 매 파일 전송마다 방대한 양의 데이터가 형성되는 경우이다(도 24와 도 25 참조). 도 28은 저레벨의 전송 이력 리스트의 구성예를 도시하는 도면이다. 저레벨의 전송 이력 리스트는, 관리되는 정보량이 적은 경우에, 예컨대, 마지막으로 전송된 파일 정보만이 전송 이력으로서 리스트로 형성되고 전송 이력 저장 유닛(31)에 저장되어, 방대한 양의 데이터가 되는 않는 경우이다. 이에, 디바이스의 처리 능력에 따라 관리 레벨을 적절하게 이용할 수 있다. 저레벨의 전송 이력 리스트의 각 항목(상대 디바이스 ID, 갱신 일시 등)의 기재 방법은 제6 실시형태의(고레벨의) 전송 이력 리스트의 기재 방법와 같다.
계속해서, 저레벨의 전송 이력 리스트를 사용하는 경우의 통신 디바이스(1b)에 의해 수행되는 파일 전송 동작에 관해서 설명한다. 여기서는, 먼저 설명한 도 20에 도시하는 송신 디바이스를 이용하여 설명한다. 도 29는 본 실시형태에 따른 파일 전송 프로세스를 도시하는 플로우차트이다.
먼저, 송신 디바이스에서, 전송 이력 비교 유닛(32)은 접속된 수신 디바이스의 ID를 취득한다(단계 S701). ID의 정보는 송신 디바이스와 수신 디바이스가 서로 접속될 때에, 수신 디바이스로부터 송신 디바이스에 전송되는 데이터 프레임에 포함되어 있다.
송신 디바이스에서, 전송 이력 비교 유닛(32)은 전송 이력 저장 유닛(31)으로부터, 자신이 속한 디바이스의 전송 이력을 취득한다(단계 S702). 여기서, 전송 이력 비교 유닛(32)은 전송 이력으로서, 모든 전송 이력이 아니라, 수신 디바이스에 대응하는, 자신이 속한 디바이스의 송신에 관한 전송 이력만을 취득하도록 구성될 수도 있다.
송신 디바이스에서, 전송 이력 비교 유닛(32)은 송신 대상인 파일 그룹을 오래된 날짜로부터 최근 날짜의 순서로 배열하여 파일 리스트를 작성한다(단계 S703).
송신 디바이스에서, 전송 이력 비교 유닛(32)은 파일 리스트로부터 미송신 파일을 검색한다(단계 S704). 구체적으로, 전송 이력 비교 유닛(32)은 오래된 날짜로부터 최근 날짜의 순서로 파일이 리스트화되어 있는 파일 리스트로부터, 전송 이력에 있어서 대응하는 송신 디바이스에 대해 마지막으로 전송 성공한 파일과 같은 것을 검색한다. 같은 파일 있는 경우에, 동일한 파일의 다음 파일과 후속 파일이 새로운 파일, 즉, 미송신 파일이 된다.
도 30은 미송신 파일을 검색하는 프로세스를 도시하는 도면이다. 파일 리스트에는, 오래된 날짜로부터 최근 날짜의 순서로 배열되어 있는 파일 1 내지 파일 10이 있다. 전송 이력 비교 유닛(32)은 전송 이력에 기재된 마지막으로 전송 성공한 파일을, 파일 1부터 순서대로 파일 리스트의 정보과 비교한다.
구체적으로, 전송 이력 비교 유닛(32)은 파일 리스트에, 전송 이력에 기재된 마지막으로 전송 성공한 파일과 동일한 파일이 있는지의 여부를 결정하는 검색을 수행한다. 송신 디바이스가, 1회째 송신 시에 파일 6까지 전송하기 때문에, 여기서는 파일 6에서 일치하게 된다. 이에, 전송 이력 비교 유닛(32)은 파일 7 이후의 파일 (파일 7 내지 파일 10)이 미송신 파일이 되된다(단계 S705: YES). 한편, 일치하는 파일이 없는 경우에, 송신 디바이스로부터 이 수신 디바이스로의 전송은 신규 전송이 되기 때문에, 모든 파일이 송신된 적이 없고, 따라서 모든 파일이 송신 대상 파일로서 설정된다.
미송신 파일이 있기 때문에(단계 S705: YES), 전송 이력 비교 유닛(32)은 미송신 파일을 송신 대상 파일로서 송신 리스트 테이블(16)에 설정한다. 전송 이력 비교 유닛(32)은 미송신 대상 파일로서 파일 7 내지 파일 10이 있기 때문에, 파일 7부터 시작하는 파일을 송신 리스트 테이블(16)에 순차적으로 설정한다(단계 S706).
그리고, 통신 제어 유닛(14)은 송신 리스트 테이블(16)에 설정된 미송신 스테이터스를 갖는 파일을 수신 디바이스에 송신한다(단계 S707).
송신 디바이스에서, 전송 이력 저장 처리 유닛(30)은 파일이 전송 성공한 수신 디바이스에 대하여, 해당하는 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트에 포함되어 있는 파일명 및 그 파일에 관한 갱신 일시 등의 항목을 갱신한다(단계 S708).
제6 실시형태와 마찬가지로, 전송 이력 저장 처리 유닛(30)은 복수의 파일을 연속하여 전송하는 경우에, 단계 S704 내지 S708의 프로세스를 반복 실행한다. 송신 디바이스는 파일 7 이하의 파일을 송신하고, 그 프로세스를 파일 10이 송신될 때까지 반복 실행한다. 파일 10의 송신이 완료되면, 전송 이력 비교 유닛(32)은 미송신 파일이 없기 때문에(단계 S705: NO), 파일 전송 프로세스를 종료한다. 송신 디바이스는 하나의 파일이 전송 성공할 때마다 전송 이력 리스트를 갱신한다.
제7 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1b)는 전송 이력으로서 마지막으로 송신 또는 수신된 파일의 정보만을 저장한다. 그 결과, 제6 실시형태와 비교해, 전송 이력 저장 유닛(31)의 용량은 작게 구성될 수 있고, 전송 이력 비교 유닛(32)의 처리 능력도 낮게 구성될 수 있기 때문에, 디바이스를 저비용으로 실현한다라는 효과를 얻을 수 있다.
(제8 실시형태)
본 실시형태에서는, 저레벨의 전송 이력 리스트의 갱신 방법에 관해서, 갱신이 필요한 다양한 상황에서의 동작에 관해서 설명한다.
먼저, 저레벨의 전송 이력 리스트를 이용하는 경우에, 1회째 송신 시에 전체 파일이 송신되고, 그 후 파일이 추가되어, 2회째 송신이 수행되는 경우에 대해 설명한다.
도 31은 각 디바이스의 파일 리스트 및 전송 이력 리스트의 천이를 도시하는 도면이다. 각 디바이스의 구성은 제6 실시형태(도 21과 도 22 참조)와 같다. 도 31에 도시하는 디바이스 A, B, C는 파일을 송수신할 수 있지만, 여기서는, 디바이스 A가 송신 디바이스이고, 디바이스 B가 수신 디바이스인 것으로 한다. 또한, 각 디바이스의 전송 이력에 관해서는, 본 실시형태의 설명에 필요한 항목을 추출하기로 한다.
디바이스 A에서, 전송 이력 비교 유닛(32)은 1회째 송신 시에, 디바이스 B에 접속되고 상대 디바이스 ID를 취득한다. 디바이스 A에서, 전송 이력 리스트의 송신 카테고리에 "상대 디바이스 ID"가 디바이스 B에 해당하는 디바이스는 없기 때문에, 전송 이력 비교 유닛(32)은 그 시점에서 파일 리스트에 포함된 모든 파일 (a) 내지 (f)를 송신하는 제어를 한다.
디바이스 A에서, 모든 파일 (a) 내지 (f)가 디바이스 B에 전송 성공했기 때문에, 전송 이력 저장 처리 유닛(30)은 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 송신 카테고리에, 디바이스 B의 ID(B) 및 마지막으로 전송 성공한 파일 (f)의 정보를 저장한다. 이 때, 전송 프로세스 도중에 중단된 파일이 없기 때문에, 수신 성공 패킷을 나타내는 패킷의 필드에는 "0"의 송신 결과가 저장된다.
디바이스 B에서는, 디바이스 A로부터 파일 (a) 내지 (f)가 수신되었기 때문에, 전송 이력 저장 처리 유닛(30)은 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 수신 카테고리에, 디바이스 A의 ID(A) 및 마지막으로 전송 성공한 파일 (f)의 정보를 저장한다. 이 때, 전송 프로세스 도중에 중단된 파일이 없기 때문에, 패킷의 필드에는 "0"의 수신 결과가 저장된다.
그 후, 디바이스 A에 새롭게 파일 (g) 내지 (j)의 4개 파일이 추가된 것으로 한다. 디바이스 A에서는, 디바이스 B와의 2회째 접속으로 전송 이력 리스트에 "ID=B"가 있고, 전송 성공한 파일의 정보로서 파일 (f)의 정보가 있기 때문에, 다음 파일 (g)부터 시작하는 송신이 행해진다. 디바이스 A에서는, 파일 (j)까지 송신이 완료되면, 디바이스 A 및 디바이스 B의 전송 이력 리스트에는, 전송 성공한 파일의 정보로서 파일 (j)의 정보가 저장된다.
계속해서, 저레벨의 전송 이력 리스트를 사용하는 경우에, 1회째 송신 시에 전체 파일의 전송 도중에 디바이스들 사이의 접속 단절로 전송이 중단되고, 그 후 재전송이 수행되는 경우에 관해서 설명한다. 도 31에 도시하는 경우에는, 디바이스 B가 송신 디바이스이고, 디바이스 A가 수신 디바이스인 것으로 한다.
디바이스 B에서, 전송 이력 비교 유닛(32)은 1회째 전송 프로세스에서 디바이스 A에 접속되고 상대 디바이스 ID를 취득한다. 디바이스 B에서, 전송 이력 비교 유닛(32)은 전송 이력 리스트의 송신 카테고리에, "상대 디바이스 ID"가 디바이스 A에 해당하는 디바이스가 없기 때문에, 그 시점에서 파일 리스트에 포함된 모든 파일 (a') 내지 (j')을 송신하는 제어를 한다.
디바이스 B가 모든 파일 (a') 내지 (j')를 디바이스 A에 송신하려고 시도하지만, 파일 (b')의 전송 성공 직후에 전송이 중단되었다. 이에. 전송 이력 저장 처리 유닛(30)은 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 송신 카테고리에, 디바이스 A의 ID(A) 및 마지막으로 전송 성공한 파일 (b')의 정보를 저장한다. 이 때, 전송 프로세스 도중에 중단된 파일이 없기 때문에, 패킷의 필드에는 "0"의 송신 결과가 저장된다.
디바이스 A에서는, 디바이스 B로부터 파일 (a')와 (b')가 수신되었기 때문에, 전송 이력 저장 처리 유닛(30)은 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 수신 카테고리에, 디바이스 B의 ID(B) 및 마지막으로 전송 성공한 파일 (b')의 정보를 저장한다. 이 때, 전송 프로세스 도중에 중단된 파일이 없기 때문에, 패킷의 필드에는 "0"의 수신 결과가 저장된다.
그 후, 디바이스 A에 재접속되면, 디바이스 B는 파일의 전송을 재개한다. 디바이스 B에서는, 전송 이력 리스트에 "ID=A"가 있고, 전송 성공한 파일의 정보로서 파일 (b')의 정보가 있기 때문에, 다음 파일 (c')부터 시작하는 송신이 행해진다. 디바이스 B가 파일 (j')까지 송신 완료하면, 디바이스 B 및 디바이스 A의 전송 이력 리스트에는, 전송 성공한 파일의 정보로서 파일 (j')의 정보가 저장된다.
계속해서, 저레벨의 전송 이력 리스트를 사용하는 경우에, 1회째 송신 시에 전체 파일의 전송 도중에 디바이스들 사이의 접속 단절로 전송이 중단되고, 그 후 패킷 단위로 재전송이 수행되는 경우에 관해서 설명한다. 도 31에 도시하는 경우에서는, 디바이스 A가 송신 디바이스이고, 디바이스 C가 수신 디바이스인 것으로 한다.
디바이스 A에서, 전송 이력 비교 유닛(32)은 1회째 송신 시에, 디바이스 C에 접속되고 상대 디바이스 ID를 취득한다. 디바이스 A에서, 전송 이력 비교 유닛(32)은 전송 이력 리스트의 송신 카테고리에, "상대 디바이스 ID"가 디바이스 C에 해당하는 디바이스가 없기 때문에, 그 시점에서 파일 리스트에 포함된 모든 파일 (a) 내지 (j)를 송신하는 제어를 한다.
디바이스 A가 모든 파일 (a) 내지 (j)를 디바이스 C에 송신하려고 시도하지만, 파일 (f)의 송신 도중에 전송이 중단되었다. 이에, 전송 이력 저장 처리 유닛(30)은 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 송신 카테고리에, 디바이스 C의 ID(C) 및 마지막으로 전송 성공한 파일 (e)의 정보를 저장한다. 이 때, 전송 프로세스 도중에 중단된 파일이 있기 때문에, 패킷의 필드에는 프로세스 이력으로서 "30/100"(성공한 패킷수/전체 패킷수)의 송신 결과가 저장된다. 여기서는 예컨대, 1 패킷 64 kB의 단위로 전송이 행해진다.
디바이스 C에서, 디바이스 A로부터 파일 (a) 내지 (e)가 수신되었기 때문에, 전송 이력 저장 처리 유닛(30)은 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 수신 카테고리에, 디바이스 A의 ID(A) 및 마지막으로 전송 성공한 파일 (e)의 정보를 저장한다. 이 때, 전송 프로세스 도중에 중단된 파일이 있기 때문에, 패킷의 필드에는 프로세스 이력으로서 "30/100"의 송신 결과가 저장된다.
그 후, 디바이스 C에 재접속되면, 디바이스 A는 파일의 전송을 재개한다. 디바이스 A에서는, 전송 이력 리스트에 "ID=C"가 있고, 전송 성공한 파일의 정보로서 파일 (e)의 정보가 있으며, 패킷의 필드에는 프로세스 이력으로서 "30/100"의 정보가 있기 때문에, 다음 파일 (f)의 31번째 패킷부터 시작하는 송신이 행해진다. 디바이스 A가 파일 (j)까지 송신 완료하면, 디바이스 A 및 디바이스 C의 전송 이력 리스트에는, 전송 성공한 파일의 정보로서 파일 (j)의 정보가 저장된다.
도 32는 전송 프로세스 도중에 중단된 파일 (j)의 구성예를 도시하는 도면이다. 파일 (f)의 사이즈가 100 패킷이라고 하면, 중단 시점까지 패킷 1 내지 30이 전송 성공하였기 때문에, 디바이스 A는 송신 프로세스 재개 후에는 패킷 31부터 송신을 시작하여, 패킷 31 내지 100을 송신한다.
디바이스 C에서, 구체적으로, 차분 전송 제어 유닛(18)은 중단 도중까지 수신에 성공한 패킷 1 내지 30을 패킷 저장 유닛(33)에 저장하고, 복원 처리 유닛(34)은 패킷 저장 유닛(33)에 저장된 패킷 1 내지 30과 송신 프로세스 재개 후의 패킷 31 내지 100을 함께 합성함으로써 패킷 (f)을 복원한다.
계속해서, 송신 디바이스 또는 수신 디바이스의 디바이스에서는, 파일 전송의 전송 이력의 갱신 완료 전에 전원이 오프되면, 송신 디바이스측과 수신 디바이스측에서 전송 이력이 서로 일치하지 않게 된다. 여기서는, 송신 디바이스와 수신 디바이스의 전송 이력들이 서로 일치하지 않는 경우에, 한쪽의 전송 이력을 갱신하여 전송 이력을 일치시키는 복원 방법에 관해서 설명한다. 도 31에 도시하는 경우에 있어서, 디바이스 B는 송신 디바이스이고, 디바이스 C는 수신 디바이스인 것으로 한다.
디바이스 B에서, 전송 이력 비교 유닛(32)이 1회째 송신 시에, 디바이스 C에 접속되고 상대 디바이스 ID를 취득한다. 디바이스 B에서, 전송 이력 비교 유닛(32)은 전송 이력 리스트의 송신 카테고리에, "상대 디바이스 ID"가 디바이스 C에 해당하는 디바이스가 없기 때문에, 그 시점에서 파일 리스트에 포함된 모든 파일 (a') 내지 (j')을 송신하는 제어를 한다. 이 때, 디바이스 B에서, 전송 이력 저장 처리 유닛(30)은 파일을 하나씩 송신할 때마다, 전송 성공한 파일의 정보를 전송 이력 저장 유닛(31)의 전송 이력 파일에 갱신한다.
디바이스 C에서, 디바이스 B로부터 파일 (a') 내지 (j')가 수신되면, 전송 이력 저장 처리 유닛(30)은 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 수신 카테고리에, 디바이스 B의 ID(B) 및 마지막으로 전송 성공한 파일의 정보를 저장한다. 이 때, 디바이스 C에서, 전송 이력 저장 처리 유닛(30)이 파일을 하나씩 수신할 때마다, 수신에 성공한 파일의 정보는 전송 이력 저장 유닛(31)에 저장된 전송 이력 파일에 갱신된다.
디바이스 B가 최종 파일 (j')을 전송 성공하면, 전송 이력 리스트에는, 디바이스 C의 이력으로서 파일 (j')의 전송이 기록된다. 여기서, 디바이스 C측에서는, 최종 파일 (j')이 수신된 후, 전송 이력 파일을 갱신하는 중(완료전)에 디바이스의 전원이 오프된 것으로 한다. 이 경우, 디바이스 C에서, 전송 이력 리스트에는, 디바이스 B로부터의 수신 기록에, 최종 파일 (j')이 아니라, 그 이전 파일 (i')이 기록되게 된다. 이에, 디바이스 B와 디바이스 C에서는, 전송 이력이 서로 일치하지 않게 된다.
이러한 경우, 디바이스 B 및 디바이스 C는 재차 접속되어 서로 전송 이력을 교환할 때에 전송 이력이 서로 일치하지 않는 것을 인식한다. 디바이스 C는 디바이스 B로부터 취득된 전송 이력의 정보에 기초하여, 파일 (j')의 존재 여부를 결정하는 검색을 한다. 해당하는 파일을 찾은 경우에, 디바이스 C는 이미 파일 (j')을 수신한 것으로 간주하고, 전송 이력에 포함되는 마지막 수신 파일을 파일 (i')로부터 파일(j')에 갱신한다. 이렇게, 양측의 전송 이력들은 서로 일치하게 된다.
제8 실시형태에 따르면, 파일 송수신 디바이스인 통신 디바이스(1b)에서는, 저레벨의 전송 이력을 이용하는 경우에, 1회째 파일 송수신 시에 전송 이력 리스트에 대향 디바이스에 관한 항목이 추가된다. 그러나 이후, 이미 파일을 송신 또는 수신한 대향 디바이스와 두번째 이후로 파일을 송수신할 때에, 파일의 송수신에 대한 전송 이력 리스트에 저장되는 정보량은 증대하지 않고, 통신 디바이스와 대향 디바이스의 이력들만 갱신함으로써 송수신이 대응할 수 있다. 그 결과, 저레벨의 전송 이력을 이용하는 경우에, 새롭게 송신 및 수신되는 파일의 상세한 정보를 저장할 필요가 없기 때문, 전송 프로세스 도중에 중단이 생긴 경우에, 또는 통신 디바이스측과 상대측의 전송 이력들이 서로 일치하지 않는 상황 등의 불규칙한 사태가 발생하더라도, 간단한 프로세스를 통해 갱신하는 효과를 얻을 수 있다.
(제9 실시형태)
제6 내지 제8 실시형태에서는, 제1 내지 제3 실시형태에 대응하는, 도 21에 도시한 통신 디바이스(1b)에 관해서 설명하였지만, 전송 이력을 이용하는 방법은 제4 및 제5 실시형태에서 설명한 착탈 가능형 디바이스의 통신 디바이스에도 이용될 수 있다.
도 33은 본 실시형태의 통신 디바이스(1c) 및 호스트 디바이스(2)의 구성예를 도시하는 도면이다. 통신 디바이스(1c)는 애플리케이션 유닛(11), 통신 방향 관리 유닛(12), 전송 조건 정보 관리 유닛(13), 통신 제어 유닛(14), 접속 상대 관리 테이블(15), 송신 리스트 테이블(16), 호스트 디바이스 I/F 유닛(17), 및 차분 전송 제어 유닛(18a)을 포함한다.
도 34는 본 실시형태에 따른 차분 전송 제어 유닛(18a)의 구성예를 도시하는 도면이다. 차분 전송 제어 유닛(18a)은 전송 이력 저장 처리 유닛(30), 전송 이력 저장 유닛(31), 전송 이력 비교 유닛(32), 패킷 저장 유닛(33), 복원 처리 유닛(34), 레지스터 유닛(35), 및 레지스터 관리 유닛(36)을 포함한다. 레지스터 유닛(35)은 통신 디바이스(1c) 및 호스트 디바이스(2)의 양쪽이 이용할 수 있는 레지스터이다. 레지스터 관리 유닛(36)은 레지스터 유닛(35)에 대하여, 데이터 판독 및 기록 프로세스를 수행한다.
도 35는 통신 디바이스(1b)의 구성을 간략화한 도면이다. 후술하는 도 36 및 도 37과의 수월한 비교를 위해 도 35는 도 21에 도시하는 구성을, 통신 유닛으로서, 전송 이력 리스트가 저장되는 메모리로서, 그 밖의 구성을 시스템으로서 나타내고 있다. 도 35에서, 통신 유닛은 도 21에 도시하는 통신 방향 관리 유닛(12) 내지 송신 리스트 테이블(16)에 해당하고, 메모리는 전송 이력 저장 유닛(31)에 해당하며, 시스템은 사용자 I/F 유닛(10), 애플리케이션 유닛(11), 전송 이력 저장 처리 유닛(30), 및 전송 이력 비교 유닛(32) 내지 복원 처리 유닛(34)에 해당한다. 도 35에 도시하는 구성에서는, 파일 송수신 디바이스가 하나의 디바이스로서 구성되고, 그 디바이스가 호스트 디바이스로서 기능한다.
도 36과 도 37은 통신 디바이스(1c) 및 호스트 디바이스(2)의 구성을 간략화한 도면이다. 도 36과 도 37은 도 33에 도시하는 통신 디바이스(1c) 및 호스트 디바이스(2)의 구성을 간략화한 도면이다. 도 36에 도시하는 구성에 있어서, 통신 유닛은 도 33에 도시하는 통신 방향 관리 유닛(12) 내지 송신 리스트 테이블(16)에 해당하고, 호스트 디바이스(2)의 메모리는 전송 이력 저장 유닛(31)에 해당하며, 통신 디바이스(1c)측의 메모리는 전송 이력 저장 유닛(31)에 해당하고, 호스트 디바이스(2)의 시스템은 도 33에 도시하는 사용자 I/F 유닛(10), 디바이스 정보 관리 유닛(20), 및 통신 디바이스 I/F 유닛(21)에 해당하며, 통신 디바이스(1c)측의 시스템은 애플리케이션 유닛(11), 호스트 디바이스 I/F 유닛(17), 전송 이력 저장 처리 유닛(30), 및 전송 이력 비교 유닛(32) 내지 레지스터 관리 유닛(36)에 해당한다.
도 37에 도시하는 구성에서는 전송 이력 저장 유닛(31)이 호스트 디바이스(2)의 메모리에 포함되지 않는 점이 다르다. 즉, 도 36은 호스트 디바이스(2)측에 배치된 메모리와 통신 디바이스(1c)의 메모리 양쪽에 전송 이력 리스트가 저장되어 있는 경우를 도시한다. 또한, 도 37은 전송 이력 리스트가 통신 디바이스(1c)의 메모리에만 저장되어 있는 경우를 도시한다.
도 35와 도 37에 도시하는 바와 같이, 전송 이력 리스트가 통신 디바이스(1b)에만, 또는 착탈 가능형 디바이스인 통신 디바이스(1c)에만 저장되어 있는 경우에는, 전송 이력 리스트에 차분이 생기지 않는다. 이에 반해, 도 36에 도시하는 바와 같이, 전송 이력 리스트가 호스트 디바이스(2) 및 통신 디바이스(1c) 양쪽에 저장되어 있고, 통신 디바이스(1c)가 호스트 디바이스(2)에 삽입되어 있는 경우에는, 2개의 전송 이력 리스트 사이에 차분이 생길 우려가 있다. 이에, 통신 디바이스(1c) 및 호스트 디바이스(2)는 양쪽 시스템을 통해 전송 이력 리스트를 동기시킨다. 이 때, 전송 이력 리스트 사이에 차분이 있는 경우에, 전송 이력 리스트를 우선순위 레벨이 높은 전송 이력 리스트에 동기시킨다.
통신 디바이스(1c) 및 호스트 디바이스(2)의 전송 이력 리스트를 동기시키는 방법으로서는, 예컨대, 차분 전송 제어 유닛(18a)의 전송 이력 저장 처리 유닛(30) 또는 전송 이력 비교 유닛(32)이, 호스트 디바이스 I/F 유닛(17) 및 통신 디바이스 I/F 유닛(21)을 통해 호스트 디바이스(2)측의 전송 이력 리스트의 정보를 취득하고, 취득된 전송 이력 리스트를 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 내용과 비교하여, 전송 이력 저장 유닛(31)에 저장된 전송 이력 리스트의 내용을 변경하거나, 또는 호스트 디바이스(2)에 대하여, 전송 이력 리스트의 내용의 변경을 통지하는 방법이 있지만, 그 방법이 이것에 한정되지는 않는다.
제9 실시형태에 따르면, 착탈 가능형 디바이스인 통신 디바이스(1c)와 호스트 디바이스(2)가 서로 접속되고, 양측에 전송 이력 리스트의 정보가 저장되어 있는 경우에는, 통신 디바이스(1c)와 호스트 디바이스(2) 사이에서 전송 이력 리스트를 서로 동기시킨다. 그 결과, 통신 디바이스(1c)와 호스트 디바이스(2)의 전송 이력 리스트들 간의 차분을 없앨 수 있고, 또 기타 통신 디바이스와의 사이에서 파일이 송수신되는 경우에도, 통신 디바이스(1b)와 같이, 전송 이력 리스트에 기초하여 파일을 관리한다라는 효과를 얻을 수 있다.
(제10 실시형태)
본 실시형태에서는, 제9 실시형태와 마찬가지로, 통신 디바이스(1c)와 호스트 디바이스(2)가 서로 접속되는 경우에 있어서, 통신 디바이스(1c) 내부에 저장된 레지스터 정보가 통신 디바이스(1c)의 소프트웨어 및 호스트 디바이스(2)의 소프트웨어에 의해 따로따로 이용되는 경우에 대해 설명한다.
도 38은 통신 디바이스(1c) 및 호스트 디바이스(2)의 레지스터 이용 상태를 도시하는 도면이다. 호스트 디바이스(2)(예컨대, 디지털 카메라 등) 및 매체인 통신 디바이스(1c)에서는, 레지스터(레지스터 유닛(35))와, 그 레지스터 정보를 이용하는 소프트웨어 Y가 통신 디바이스(1c)의 매체에 배치되어 있고, 또한, 레지스터(레지스터 유닛(35))의 정보를 이용하는 다른 소프트웨어 X가 호스트 디바이스(2)에 배치되어 있는 것으로 한다.
레지스터(레지스터 유닛(35))의 일부에는, 전송 프로세스 중인 파일의 파일 사이즈 정보와, 전송 프로세스 중인 파일의 전송된 부분에 해당하는 파일 사이즈 정보를 저장하는 영역이 준비되어 있는 것으로 한다. 도 39는 레지스터맵의 구성예를 도시하는 도면이다. 도 39에 있어서, "File Size", "Transferred File Size"의 부분이 도 38에 도시하는 레지스터맵의 "파일 사이즈 " 및 "전송된 부분의 파일 사이즈"에 해당한다.
파일이 송신 또는 수신되면, 통신 디바이스(1c)의 소프트웨어 Y는 레지스터에, 전송 프로세스 중인 파일의 파일 사이즈 정보와, 전송된 부분에 해당하는 파일의 사이즈를 저장한다. 송수신이 완료될 때까지, 이 프로세스는 정기적으로 여러번 행해지고, 파일 사이즈가 큰 경우에는 프로세스 수행 횟수가 많아진다. 구체적으로, 차분 전송 제어 유닛(18a)에서, 레지스터 관리 유닛(36)은 레지스터 유닛(35)(레지스터)에 저장된 "File Size" 및 "Transferred File Size"를 갱신한다.
호스트 디바이스(2)는 송수신 프로세스 중에 레지스터 정보를 취득함으로써, 전송 프로세스 도중의 파일 사이즈에 대하여 송신 및 수신된 부분의 양을 판정할 수 있다. 호스트 디바이스(2)는 GUI 표시 등을 수행함으로써 전송 진척도를 사용자에게 알릴 수 있다.
다시 말해, 호스트 디바이스(2)측의 소프트웨어 X는, 다른 소프트웨어(이 경우, 통신 디바이스(1c) 내에 배치된 소프트웨어 Y)의 전송 중인 파일의 진척 상황을 직접 취득할 수는 없지만, 통신 디바이스(1c)에 저장된 레지스터 정보로부터, 전송 프로세스 중인 파일의 진척 상황을 취득할 수 있다.
제10 실시형태에 따르면, 통신 디바이스(1c)는 레지스터를 포함하고, 통신 디바이스(1c)의 소프트웨어와 호스트 디바이스(2)의 소프트웨어 양쪽이 레지스터를 이용하는 경우에, 통신 디바이스(1c)측에서 레지스터의 "File Size" 및 "Transferred File Size"가 갱신된다. 그 결과, 호스트 디바이스(2)측에서는, 통신 디바이스(1c)에 저장된 레지스터 정보를 참조함으로써, 통신 디바이스(1c)는 전송 프로세스 중인 파일의 진척 상황을 취득할 수 있는 효과를 얻을 수 있다.
소정의 실시형태들에 대해 설명하였지만, 이들 실시형태는 예로만 제시된 것이고, 발명의 범위를 한정하는 것은 의도하지 않는다. 사실상, 여기에 설명하는 신규한 실시형태들은 다양한 형태로 실시될 수 있고, 여기에 설명하는 실시형태들의 다양한 생략, 치환, 및 변경이 발명의 요지를 일탈하지 않고서 이루어질 수 있다. 첨부하는 청구범위 및 그 균등물은, 발명의 범위 및 요지 내에 있는 것인 이러한 형태 또는 변형을 포함하는 것이 의도된다.

Claims (20)

  1. 파일 송수신 디바이스에 있어서,
    근거리 무선 통신(near field communication)에서, 대향 디바이스와 충돌이 발생한 경우에 상기 대향 디바이스와의 접속을 단절하고, 상기 대향 디바이스에 재접속된 후에, 상기 파일 송수신 디바이스를 마스터 모드와 슬레이브 모드 중 어느 한쪽 모드로 전환하는 통신 방향 관리 유닛과,
    상기 대향 디바이스와 상기 파일 송수신 디바이스 사이에서의 파일의 송신, 수신, 또는 송수신을, 상기 통신 방향 관리 유닛에 의해 특정된 모드에 따라 상기 마스터 모드 또는 상기 슬레이브 모드로 수행하는 애플리케이션 유닛
    을 포함하고,
    충돌 발생 후에 상기 대향 디바이스로부터 취득되는 상기 대향 디바이스의 사양 정보에 기초하여, 상기 대향 디바이스가, 상기 마스터 모드와 상기 슬레이브 모드 사이를 전환하는 기능을 갖고 있지 않다고 판정되는 경우에, 상기 통신 방향 관리 유닛은 재접속 시에 상기 파일 송수신 디바이스의 모드를 상기 슬레이브 모드로서 설정하는 파일 송수신 디바이스.
  2. 제1항에 있어서, 상기 대향 디바이스에 재접속된 후에,
    상기 대향 디바이스로부터 취득되는 상기 대향 디바이스의 사양 정보에 기초하여 상기 대향 디바이스가 상기 마스터 모드와 상기 슬레이브 모드 사이를 전환하는 기능을 갖는다고 판정되고, 또한, 상기 대향 디바이스가 상기 슬레이브 모드로 전환할 수 있는 경우에, 상기 통신 방향 관리 유닛은 상기 파일 송수신 디바이스의 모드를 상기 마스터 모드로 전환하고,
    상기 대향 디바이스로부터 취득되는 상기 대향 디바이스의 사양 정보에 기초하여 상기 대향 디바이스가 상기 마스터 모드와 상기 슬레이브 모드 사이를 전환하는 기능을 갖는다고 판정되고, 또한, 상기 대향 디바이스가 상기 마스터 모드로 전환할 수 있는 경우에, 상기 통신 방향 관리 유닛은 상기 파일 송수신 디바이스의 모드를 상기 슬레이브 모드로 전환하는 파일 송수신 디바이스.
  3. 제2항에 있어서, 상기 통신 방향 관리 유닛은, 충돌 발생 후에 상기 대향 디바이스로부터 상기 대향 디바이스를 식별하는데 이용되는 식별 정보를 취득하고 상기 접속을 단절하며, 상기 대향 디바이스의 식별 정보와 상기 파일 송수신 디바이스의 식별 정보를 비교한 결과에 기초하여, 재접속 시의 상기 파일 송수신 디바이스의 모드를 결정하는 것인 파일 송수신 디바이스.
  4. 제2항에 있어서, 상기 통신 방향 관리 유닛은, 상기 대향 디바이스와의 접속 단절 후에, 재접속 시의 상기 파일 송수신 디바이스의 모드를 상기 슬레이브 모드로 설정하고, 상기 대향 디바이스로부터 접속 요구가 수신되지 않는 경우에는, 미리 정해진 시간이 경과한 후에 상기 파일 송수신 디바이스의 모드를 상기 마스터 모드로 전환하는 것인 파일 송수신 디바이스.
  5. 제2항 내지 제4항 중 어느 한 항에 있어서, 상기 통신 방향 관리 유닛은, 충돌 발생 후에 상기 대향 디바이스로부터 상기 대향 디바이스를 식별하는데 이용되는 식별 정보를 취득하고 상기 접속을 단절하며, 재접속 프로세스에서 상기 대향 디바이스로부터 상기 식별 정보를 두번째로 취득하며, 취득된 식별 정보가 상기 파일 송수신 디바이스의 식별 정보와 일치하는 경우에는, 상기 애플리케이션 유닛에 접속 확립을 통지하는 것인 파일 송수신 디바이스.
  6. 제2항에 있어서, 상기 통신 방향 관리 유닛은, 상기 애플리케이션 유닛이 상기 마스터 모드와 상기 슬레이브 모드 중 한쪽 모드의 프로세스를 완료한 후에, 다른쪽 모드로 전환하는 제어를 수행하는 것인 파일 송수신 디바이스.
  7. 제6항에 있어서, 상기 통신 방향 관리 유닛은, 상기 파일 송수신 디바이스가 상기 마스터 모드인 경우에, 상기 애플리케이션 유닛이 상기 마스터 모드의 프로세스를 완료한 후에, 상기 대향 디바이스와의 접속을 단절하는 제어를 수행하는 것인 파일 송수신 디바이스.
  8. 제1항에 있어서,
    상기 대향 디바이스의 식별 정보와, 송신 파일 및 수신 파일의 정보를 포함하는 전송 이력 리스트를 작성하는 전송 이력 저장 처리 유닛과,
    상기 대향 디바이스로부터 취득되는, 상기 대향 디바이스에 의해 작성된 전송 이력 리스트와, 상기 파일 송수신 디바이스의 전송 이력 리스트를 비교한 결과에 기초하여, 상기 대향 디바이스에 송신되지 않은 파일을 송신 대상 파일로서 설정하는 전송 이력 비교 유닛
    을 더 포함하는 파일 송수신 디바이스.
  9. 제1항에 있어서,
    상기 대향 디바이스의 식별 정보와, 송신 파일 및 수신 파일의 정보를 포함하는 전송 이력 리스트를 작성하는 전송 이력 저장 처리 유닛과,
    상기 대향 디바이스로부터 취득되는, 상기 대향 디바이스에 의해 작성된 전송 이력 리스트와, 상기 파일 송수신 디바이스의 전송 이력 리스트를 비교한 결과에 기초하여, 상기 대향 디바이스에 대하여, 상기 파일 송수신 디바이스에 의해 수신되지 않은 파일의 송신을 요구하는 전송 이력 비교 유닛
    을 더 포함하는 파일 송수신 디바이스.
  10. 제8항 또는 제9항에 있어서,
    상기 대향 디바이스로부터 복수회의 파일 수신을 통해 취득된 파일을 구성하는 패킷을 저장하는 패킷 저장 유닛과,
    상기 패킷 저장 유닛에 저장된 패킷으로부터 상기 파일을 복원하는 복원 처리 유닛
    을 더 포함하고,
    상기 전송 이력 저장 처리 유닛은, 상기 전송 이력 리스트에, 상기 파일을 구성하는 패킷 중의 송신 또는 수신에 성공한 패킷의 정보를 기록하는 것인 파일 송수신 디바이스.
  11. 제8항 또는 제9항에 있어서, 상기 전송 이력 비교 유닛은, 상기 대향 디바이스와의 접속 확립 후에, 상기 대향 디바이스로부터, 상기 대향 디바이스에 의해 작성되는 전송 이력 리스트를 취득하는 것인 파일 송수신 디바이스.
  12. 제8항 또는 제9항에 있어서, 상기 파일 송수신 디바이스가 호스트 디바이스에 접속 가능한 경우에,
    상기 호스트 디바이스에 이용 가능한 레지스터 유닛과,
    송신 또는 수신 중인 파일의 파일 사이즈 및 송신 또는 수신이 완료된 파일의 파일 사이즈의 정보를 상기 레지스터 유닛에 저장하는 레지스터 관리 유닛
    을 더 포함하는 파일 송수신 디바이스.
  13. 파일 송수신 디바이스의 제어 방법에 있어서,
    근거리 무선 통신에서 파일의 송신, 수신, 또는 송수신을 수행할 수 있는 대향 디바이스와 충돌이 발생한 경우에, 상기 대향 디바이스와의 접속을 단절하는 단계와,
    마스터 모드와 슬레이브 모드 중 어느 한쪽 모드로 동작하는 상기 파일 송수신 디바이스를 상기 대향 디바이스와 재접속시키는 단계와,
    상기 마스터 모드 또는 상기 슬레이브 모드의 동작의 완료 후에 상기 파일 송수신 디바이스를 다른쪽 모드로 전환하는 단계와,
    상기 대향 디바이스의 식별 정보와, 송신 파일 및 수신 파일의 정보를 포함하는 전송 이력 리스트를 작성하는 단계와,
    상기 대향 디바이스로부터 취득되는, 상기 대향 디바이스에 의해 작성된 전송 이력 리스트와, 상기 파일 송수신 디바이스의 전송 이력 리스트를 비교한 결과에 기초하여, 상기 대향 디바이스에 송신되지 않은 파일을 송신 대상 파일로서 설정하는 단계
    를 포함하는 파일 송수신 디바이스의 제어 방법.
  14. 파일 송수신 디바이스의 제어 방법에 있어서,
    근거리 무선 통신에서 파일의 송신, 수신, 또는 송수신을 수행할 수 있는 대향 디바이스와 충돌이 발생한 경우에, 상기 대향 디바이스와의 접속을 단절하는 단계와,
    마스터 모드와 슬레이브 모드 중 어느 한쪽 모드로 동작하는 상기 파일 송수신 디바이스를 상기 대향 디바이스와 재접속시키는 단계와,
    상기 마스터 모드 또는 상기 슬레이브 모드의 동작의 완료 후에 상기 파일 송수신 디바이스를 다른쪽 모드로 전환하는 단계와,
    상기 대향 디바이스의 식별 정보와, 송신 파일 및 수신 파일의 정보를 포함하는 전송 이력 리스트를 작성하는 단계와,
    상기 대향 디바이스로부터 취득되는, 상기 대향 디바이스에 의해 작성된 전송 이력 리스트와, 상기 파일 송수신 디바이스의 전송 이력 리스트를 비교한 결과에 기초하여, 상기 대향 디바이스에 대하여, 상기 파일 송수신 디바이스에 의해 수신되지 않은 파일의 송신을 요구하는 단계
    를 포함하는 파일 송수신 디바이스의 제어 방법.
  15. 제13항 또는 제14항에 있어서,
    충돌 발생 후에 상기 대향 디바이스로부터 상기 대향 디바이스를 식별하는데 이용되는 식별 정보를 취득하고 상기 접속을 단절하는 단계와,
    상기 대향 디바이스의 식별 정보와 상기 파일 송수신 디바이스의 식별 정보를 비교한 결과에 기초하여, 재접속 시에 상기 파일 송수신 디바이스의 모드를 결정하는 단계
    를 더 포함하는 파일 송수신 디바이스의 제어 방법.
  16. 제13항 또는 제14항에 있어서,
    상기 대향 디바이스와의 접속 단절 후에, 재접속 시의 상기 파일 송수신 디바이스의 모드를 상기 슬레이브 모드로서 설정하는 단계와,
    상기 대향 디바이스로부터 접속 요구가 수신되지 않는 경우에, 미리 정해진 시간 경과 후에 상기 파일 송수신 디바이스의 모드를 상기 마스터 모드로 전환하는 단계
    를 더 포함하는 파일 송수신 디바이스의 제어 방법.
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020167023864A 2014-03-13 2015-03-13 파일 송수신 디바이스 및 파일 송수신 디바이스의 제어 방법 KR101921396B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2014-050845 2014-03-13
JP2014050845A JP6109771B2 (ja) 2014-03-13 2014-03-13 ファイル送受信装置およびファイル送受信方法
PCT/JP2015/058393 WO2015137523A1 (en) 2014-03-13 2015-03-13 File transmission/reception device and control method of file transmission/reception device

Publications (2)

Publication Number Publication Date
KR20160114700A KR20160114700A (ko) 2016-10-05
KR101921396B1 true KR101921396B1 (ko) 2018-11-22

Family

ID=52988372

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167023864A KR101921396B1 (ko) 2014-03-13 2015-03-13 파일 송수신 디바이스 및 파일 송수신 디바이스의 제어 방법

Country Status (7)

Country Link
US (7) US9859954B2 (ko)
EP (1) EP3117594A1 (ko)
JP (1) JP6109771B2 (ko)
KR (1) KR101921396B1 (ko)
CN (3) CN111327709B (ko)
TW (4) TWI677204B (ko)
WO (1) WO2015137523A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6468976B2 (ja) 2015-09-09 2019-02-13 株式会社ニフコ 給油口装置
JP6658899B2 (ja) * 2016-09-23 2020-03-04 日本電気株式会社 IoTデバイス、通信システム、IoTデバイスの制御方法および制御プログラム
US11516877B2 (en) * 2018-03-06 2022-11-29 Smc Corporation Wireless communication system, slave wireless device and master wireless device
JP7037512B2 (ja) * 2019-01-08 2022-03-16 株式会社東芝 無線通信装置、無線通信方法、およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020115478A1 (en) 2000-06-21 2002-08-22 Teruhiko Fujisawa Mobile telephone and radio communication device cooperatively processing incoming call
US20030109273A1 (en) 2001-12-12 2003-06-12 Takatsugu Ono Communication control method in wireless data communication network
US20070287542A1 (en) 2006-04-28 2007-12-13 Yoshio Miyazaki Game apparatus, communication apparatus, wireless game controller, and game system
JP2012231429A (ja) * 2011-04-27 2012-11-22 Canon Inc 通信装置、通信装置の制御方法、およびプログラム

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060017576A (ko) * 2003-06-02 2006-02-24 마쯔시다덴기산교 가부시키가이샤 마스터/슬래이브 스위칭 프로세스를 수행하는 디바이스, 방법, 및 프로그램
US7127164B1 (en) * 2003-08-06 2006-10-24 Eastman Kodak Company Method for rating images to facilitate image retrieval
US20060072525A1 (en) * 2004-09-23 2006-04-06 Jason Hillyard Method and system for role management for complex bluetooth® devices
EP3154206A1 (en) * 2004-10-29 2017-04-12 Sony Deutschland Gmbh Method for operating a near field communication system
JP2008301329A (ja) * 2007-06-01 2008-12-11 Renesas Technology Corp 無線通信システム、simカード、移動通信端末およびデータの保証方法
US9391670B2 (en) * 2007-06-15 2016-07-12 Animas Corporation Methods for secure communication and pairing of a medical infusion device and a remote controller for such medical device
JP4458184B2 (ja) * 2008-06-09 2010-04-28 ソニー株式会社 情報管理装置、通信処理装置、および方法、並びにプログラム
JP4405569B1 (ja) 2008-07-23 2010-01-27 株式会社東芝 電子機器および通信制御方法
US8451122B2 (en) * 2008-08-08 2013-05-28 Tyfone, Inc. Smartcard performance enhancement circuits and systems
US8126433B2 (en) * 2008-09-15 2012-02-28 Sony Ericsson Mobile Communications Ab Electronic devices and methods that communicate via transferjet and NFC transmitter and receiver pairing
JP2010109608A (ja) * 2008-10-29 2010-05-13 Olympus Corp 無線通信端末及び無線通信システム
US20100257239A1 (en) * 2009-04-02 2010-10-07 Qualcomm Incorporated Method and apparatus for establishing a social network through file transfers
JP2010258595A (ja) * 2009-04-22 2010-11-11 Toshiba Corp 電子機器および通信制御方法
US8045961B2 (en) * 2009-06-22 2011-10-25 Mourad Ben Ayed Systems for wireless authentication based on bluetooth proximity
JP5264629B2 (ja) * 2009-06-23 2013-08-14 キヤノン株式会社 通信端末、及び通信端末の制御方法
JP5522983B2 (ja) * 2009-06-23 2014-06-18 キヤノン株式会社 通信装置、通信装置の制御方法
JP5304513B2 (ja) * 2009-07-24 2013-10-02 ソニー株式会社 通信装置、通信方式の判別方法、及びプログラム
CN102725779A (zh) * 2009-09-29 2012-10-10 Savi技术公司 用于低功率无线应用中的先进通信的设备和方法
JP5531553B2 (ja) 2009-10-26 2014-06-25 富士通モバイルコミュニケーションズ株式会社 電子機器
EP2525604B1 (en) * 2010-01-14 2016-04-06 France Brevets Electronic device and operating method thereof
JP5781272B2 (ja) * 2010-01-29 2015-09-16 富士通株式会社 通信機器、マスタスレーブ確定方法、およびコンピュータプログラム
US8738783B2 (en) * 2010-06-22 2014-05-27 Microsoft Corporation System for interaction of paired devices
JP2012010052A (ja) * 2010-06-24 2012-01-12 Sony Corp 情報処理装置および方法、プログラム、並びに、情報処理システム
EP2442254B1 (en) * 2010-10-14 2021-04-21 Sony Corporation Near field communication device and method for near field communication
US9501399B2 (en) * 2011-02-04 2016-11-22 Kabushiki Kaisha Toshiba Memory system capable of controlling wireless communication function
KR20130022182A (ko) * 2011-08-25 2013-03-06 삼성전자주식회사 근거리 무선 통신 시스템에서 단말간 연결 우선순위를 고려하여 데이터를 송수신하는 장치 및 방법
JP5915964B2 (ja) * 2011-09-14 2016-05-11 ソニー株式会社 通信装置、通信システムおよび通信装置の制御方法
EP2690839B1 (en) * 2012-07-23 2018-09-26 STMicroelectronics (Rousset) SAS NFC apparatus capable to perform a contactless tag reading function
JP2014140125A (ja) * 2013-01-21 2014-07-31 Toshiba Corp 無線通信装置、無線通信方法および無線通信プログラム
EP2861037B1 (en) * 2013-03-05 2017-01-25 Huawei Device Co., Ltd. Radio frequency communication method, device and terminal device for near field communication
CN103326749B (zh) * 2013-06-17 2016-01-13 华为终端有限公司 一种nfc射频通信的控制方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020115478A1 (en) 2000-06-21 2002-08-22 Teruhiko Fujisawa Mobile telephone and radio communication device cooperatively processing incoming call
US20030109273A1 (en) 2001-12-12 2003-06-12 Takatsugu Ono Communication control method in wireless data communication network
US20070287542A1 (en) 2006-04-28 2007-12-13 Yoshio Miyazaki Game apparatus, communication apparatus, wireless game controller, and game system
JP2012231429A (ja) * 2011-04-27 2012-11-22 Canon Inc 通信装置、通信装置の制御方法、およびプログラム

Also Published As

Publication number Publication date
US10623059B2 (en) 2020-04-14
US9859954B2 (en) 2018-01-02
CN115277683B (zh) 2023-11-14
EP3117594A1 (en) 2017-01-18
TWI574521B (zh) 2017-03-11
JP6109771B2 (ja) 2017-04-05
US20180175912A1 (en) 2018-06-21
CN111327709A (zh) 2020-06-23
WO2015137523A1 (en) 2015-09-17
US20200204211A1 (en) 2020-06-25
CN106068655B (zh) 2020-04-10
CN106068655A (zh) 2016-11-02
TW202114361A (zh) 2021-04-01
TWI693804B (zh) 2020-05-11
US20190097685A1 (en) 2019-03-28
US20240088941A1 (en) 2024-03-14
US11309938B2 (en) 2022-04-19
TW201547223A (zh) 2015-12-16
TWI743802B (zh) 2021-10-21
TW201720068A (zh) 2017-06-01
US10187118B2 (en) 2019-01-22
TWI677204B (zh) 2019-11-11
TW202005300A (zh) 2020-01-16
KR20160114700A (ko) 2016-10-05
CN111327709B (zh) 2022-11-01
US20190312611A1 (en) 2019-10-10
CN115277683A (zh) 2022-11-01
JP2015177267A (ja) 2015-10-05
US20170093462A1 (en) 2017-03-30
US11881910B2 (en) 2024-01-23
US20220200660A1 (en) 2022-06-23
US10454531B2 (en) 2019-10-22

Similar Documents

Publication Publication Date Title
KR101921396B1 (ko) 파일 송수신 디바이스 및 파일 송수신 디바이스의 제어 방법
EP2455899B1 (en) Apparatus and method for synchronizing data in connected devices
KR101761102B1 (ko) 통신장치, 그 제어 방법, 컴퓨터 프로그램, 및 컴퓨터 판독 가능한 기억매체
CN102833873B (zh) 无线通信装置
CN104850429A (zh) 一种面向智能设备的软件升级方法及系统
KR20100089491A (ko) 휴대단말을 이용한 전자명함 처리 방법, 그 시스템 및 그 프로그램을 기록한 컴퓨터 판독 가능한 기록매체
JP3501968B2 (ja) データベース管理装置、および、そのプログラムが記録された記録媒体
CN103001987A (zh) 一种数据处理方法和数据处理节点
JPH11327989A (ja) データベース管理装置、および、そのプログラムが記録された記録媒体
JPH11327987A (ja) データベース管理装置、および、そのプログラムが記録された記録媒体
EP3239850A1 (en) Communication terminal, content delivery system, content delivery method, and communication terminal control program
CN114830604A (zh) 信息处理方法、装置及设备
JP2018169642A (ja) 画像形成システム及び解説文書データの表示方法

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right