WO2013014834A1 - 通信装置、通信方法、および通信プログラム - Google Patents

通信装置、通信方法、および通信プログラム Download PDF

Info

Publication number
WO2013014834A1
WO2013014834A1 PCT/JP2012/002898 JP2012002898W WO2013014834A1 WO 2013014834 A1 WO2013014834 A1 WO 2013014834A1 JP 2012002898 W JP2012002898 W JP 2012002898W WO 2013014834 A1 WO2013014834 A1 WO 2013014834A1
Authority
WO
WIPO (PCT)
Prior art keywords
request
communication device
role
issued
communication
Prior art date
Application number
PCT/JP2012/002898
Other languages
English (en)
French (fr)
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 パナソニック株式会社
Priority to JP2013525540A priority Critical patent/JP5844366B2/ja
Priority to US14/122,507 priority patent/US9319275B2/en
Priority to EP12818009.8A priority patent/EP2704515B1/en
Priority to CN201280024218.XA priority patent/CN103548414B/zh
Publication of WO2013014834A1 publication Critical patent/WO2013014834A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Definitions

  • the present invention relates to a communication device, a communication method, and a communication program for determining a role necessary for data access with another remote communication device via communication.
  • PAN Personal Area Network
  • wired communication such as USB (Universal Serial Bus) or bridge medium (Bridge Media)
  • USB Universal Serial Bus
  • bridge medium Bridge Media
  • the counterpart device is not limited to a stationary device. Therefore, in the mobile terminal, for example, it is assumed that the opportunity of content transfer with an unspecified mobile terminal on the go increases.
  • Each terminal has a role of accessing a data storage unit of another terminal (hereinafter referred to as “host role”) and a role of accepting access to the data storage unit of its own terminal (hereinafter referred to as “device role”).
  • host role a role of accessing a data storage unit of another terminal
  • device role a role of accepting access to the data storage unit of its own terminal
  • each communication device mutually exchanges function information regarding roles that the device itself can exhibit, compares the function information, and determines the role of each communication device based on a specific rule. That is, according to the conventional technology, it is confirmed by exchanging function information whether the communication apparatus of the other party can play a role as a host or a role as a device. And according to the confirmation result, the prior art issues a request for itself to fulfill any role.
  • the conventional technique has a problem that there are many steps to be executed in advance. This is because the prior art cannot determine the role of each communication device unless the function information is exchanged in advance between the communication devices. The large number of steps required to determine the role of the communication device complicates the process up to session establishment, and increases the processing load, communication load, and time required to establish a session. Therefore, it is desirable to determine the role of the communication device with few steps.
  • An object of the present invention is to provide a communication device, a communication method, and a communication program that can determine the role of each communication device with few steps.
  • the communication apparatus of the present invention has a data storage unit, and functions as a device that accepts access to the data storage unit of another remote device, and a host that accesses the data storage unit of the other communication device
  • a communication device capable of exhibiting at least one of the roles as an access control unit that controls the role exhibited by the communication device, and the communication device exerts one of the roles that can be exhibited
  • An access request issuing unit that issues a request to that effect to the other communication device, a request issued by the other communication device, and a response to the request issued by the access request issuing unit are acquired via the access control unit.
  • the request issued by the access request issuing unit and the request issued by the other communication device, and the access In at least one of the cases where the request issued by the request issuing unit is rejected, a request for performing the other role according to the role that can be performed is sent to the other communication device via the access request issuing unit. And a contention determination unit for reissuing.
  • the communication method of the present invention includes a data storage unit, a role as a device that accepts access to the data storage unit of another remote device, and a host that accesses the data storage unit of the other communication device
  • Issuing to the communication device obtaining a request issued by the other communication device and a response from the other communication device to the request, issuing the request, and issuing the request from the other communication device Determining whether or not there is a conflict with the issued request, if the issued request is in conflict with the request issued by the other communication device, and Reissuing to the other communication device a request for performing the other role according to the role that can be performed in at least one of the cases where the request is rejected, and for the issued request And controlling the role performed by the communication device in response to a response from the other communication device.
  • the communication program of the present invention has a data storage unit, and functions as a device that accepts access to the data storage unit of another remote device, and a host that accesses the data storage unit of the other communication device
  • a process of issuing a request to the other communication device, a request issued by the other communication device, a process of obtaining a response from the other communication device to the request, the issued request, and the other A process for determining whether or not a request issued by a communication device is in conflict, and the issued request and the request issued by the other communication device are in conflict.
  • the role of each communication device can be determined with few steps.
  • the block diagram which shows the structure of the communication system containing the communication apparatus which concerns on one embodiment of this invention The figure which shows an example of a structure of the transmission information in this Embodiment.
  • the figure which shows the example of the content of the transmission information in this Embodiment The flowchart which shows an example of operation
  • Flowchart showing an example of the first request process in the present embodiment Flowchart showing an example of second request processing in the present embodiment
  • FIG. 1 is a block diagram illustrating a configuration of a communication system including two communication devices according to the present embodiment.
  • the first communication device 100 is a portable or fixed device that is about to start communication with a remote second communication device 200.
  • the first communication device 100 first requests the second communication device 200 as the role exhibited by the own device out of the role as the host and the role as the device.
  • the role is called “first role”.
  • the other role is called “second role”.
  • a request that the device itself exhibits the first role is referred to as a “first request”
  • a request that the device itself exhibits the second role is referred to as a “second request”.
  • the first request and the second request are collectively referred to as “request” as appropriate.
  • first communication device 100 and the second communication device 200 can exhibit can be changed as appropriate, for example, by either user setting or the like. However, in the present embodiment, it is assumed that the first communication device 100 can at least exert the first role.
  • the first communication device 100 includes a communication unit 110, a data storage unit 120, an access request issue unit 140, an access control unit 130, and a contention determination unit 150.
  • the second communication device 200 includes a communication unit 210, a data storage unit 220, an access request issue unit 240, an access control unit 230, and a contention determination unit 250.
  • Each of these functional units sequentially implements the same functions as those of the communication unit 110, the data storage unit 120, the access request issuing unit 140, the access control unit 130, and the contention determination unit 150 of the first communication device 100. That is, the configuration of the second communication device 200 is the same as the configuration of the first communication device 100. For this reason, the description about the structure of the 2nd communication apparatus 200 is abbreviate
  • the communication unit 110 transmits transmission information (command) with the second communication device 200, receives a request issued by the second communication device 200, and receives a response to the transmission information (command). For example, the communication unit 110 transmits and receives transmission information including the first request, the second request, and the response to these to and from the second communication device 200.
  • the communication unit 110 is a wireless communication interface such as a wireless LAN device and a wireless gigabit (WiGig) device. WiGig is a wireless communication standard that uses millimeter waves in the 60 GHz band, assuming replacement for wire PAN applications exceeding 1 Gbps.
  • the data storage unit 120 is a nonvolatile recording medium capable of writing and reading data.
  • the non-volatile recording medium is, for example, an SD, SDHC (SD High Capacity), or SDXC (SD eXtended Capacity) memory card.
  • the data storage unit 120 can be accessed from the second communication device 200 via the communication unit 110 and an access control unit 130 described later.
  • the access control unit 130 controls the role exerted by the first communication device 100.
  • the access control unit 130 identifies a command generated by an access request issuing unit 140 described later, switches the role of the first communication device 100 according to the command, and communicates with the second communication device 200. Send and receive data between them.
  • the access control unit 130 transfers the request issued by the second communication device 200 to the contention determination unit 150.
  • the access request issuing unit 140 exhibits one of the roles that the first communication device 100 can play in order to establish a connection with the second communication device 200 (determine a role). Is issued to the second communication apparatus 200.
  • the access request issuing unit 140 generates a command for requesting or notifying the second communication device 200 which of the first role and the second role is used for connection. . Then, the access request issuing unit 140 instructs the access control unit 130 to switch roles according to the generated command and transfer the generated command to the second communication device 200. That is, in the present embodiment, “issue” includes setting a role that the first communication device 100 exhibits according to the request and notifying the second communication device 200 of the request.
  • the access request issuing unit 140 determines in advance either a role as a host or a role as a device, randomly selects, or the IP address / MAC of its own terminal It may be determined by an address or the like.
  • the first request command is appropriately referred to as a “first request”, and the second request command is appropriately referred to as a “second request”. Further, the second communication device 200 issues a first request or a second request in the same manner as the first communication device 100.
  • the contention determination unit 150 When the contention determination unit 150 receives a request issued by the second communication device 200, whether or not the request issued by the access request issuer 140 and the request issued by the second communication device 200 are in conflict. Judging. Then, when these requests are in conflict, the contention determination unit 150 requests the access request issuing unit 140 to perform the other role according to the role that the first communication device 100 can perform. Reissue.
  • the conflict determination unit 150 conflicts with these commands (hereinafter referred to as “two commands”). It is determined whether or not.
  • the conflict determination unit 150 instructs the access request issuing unit 140 to play the second role. Switch to the request dynamically and issue a re-request.
  • issuing almost at the same time means that the first communication device 100 receives a command from the second communication device 200 before receiving a response to the issued command.
  • the command conflict means that both commands are the first request and that both commands are the second request.
  • the contention determination unit 150 determines whether the access request issuing unit 140 issues a request first, and when the request is rejected, the access request issuing unit 140 responds to the role that the first communication device 100 can perform. Reissue the request to fulfill the other role.
  • the contention determination unit 150 determines whether the contention determination unit 150 has a role set in the first communication device 100 and the second communication device 200. Determine conflicts with the role the request desires. If there is a conflict, the conflict determination unit 150 sends a connection response indicating acceptance to the second communication device 200 when switching to another role request is possible. On the other hand, when it is not possible to switch to another role, the conflict determination unit 150 sends a connection response indicating rejection to the second communication device 200.
  • the situation in which two requests are issued almost simultaneously may occur, for example, at a timing when each communication device approaches from a place where radio waves do not reach and communication is possible.
  • the situation where two requests are issued almost simultaneously can occur, for example, when one of the communication devices transitions from a power-off state or a sleep state to a power-on state or a standby state.
  • the contention determination unit 150 notifies the access request issuing unit 140 to the second communication device 200 when the request issued by the access request issuing unit 140 and the request issued by the second communication device 200 do not conflict. Accept the request. That is, the access request issuing unit 140 accepts the set content as it is because the requests of the first communication device 100 and the second communication device 200 do not compete with each other according to the request acceptance notification from the conflict determination unit 150.
  • the conflict determination unit 150 indicates that the second communication device 200 performs other than the role. Wait for the request to be issued. Then, when the request is issued, the contention determination unit 150 causes the access request issuing unit 140 to accept the request. That is, since the other party changes the request and reissues it, the content reissued by the second communication device 200 is a request with no problem for itself when viewed from the first communication device 100. The request issuing unit 140 accepts the request.
  • the first communication device 100 includes, for example, a CPU (Central Processing Unit), a storage medium such as a ROM (Read Only Memory) storing a control program, and a working memory such as a RAM (Random Access Memory).
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • each function part of the 1st communication apparatus 100 may comprise each function part of the 1st communication apparatus 100 by an integrated circuit, for example.
  • Each functional unit of the first communication device 100 may be individually made into one chip, or plural may be made into one chip.
  • the integrated circuit may be an LSI (Large Scale Integration), an IC (Integrated Circuit), a system LSI, a super LSI, or an ultra LSI, depending on the degree of integration.
  • the integrated circuit may be realized by a dedicated circuit or a general-purpose processor.
  • the integrated circuit may be an FPGA (Field Programmable Gate Array) that can be programmed after manufacture, or a configurable processor that can reconfigure the connection and setting of internal circuit cells.
  • each functional unit of the first communication device 100 is realized by being integrated by another integrated circuit technology (for example, biotechnology) that replaces the LSI in accordance with the progress of semiconductor technology or other technologies derived therefrom. May be.
  • the first communication device 100 has a user interface for the user of the first communication device 100 to select and execute the operation of the first communication device 100. Also good.
  • the first communication device 100 may have functions such as an input key, a display, a microphone, a speaker, a camera, a vibrator, and a memory for storing and executing programs as a user interface.
  • Such a first communication device 100 can dynamically determine a role even when a request conflicts with the second communication device 200. Thereby, the 1st communication apparatus 100 can determine appropriately each role of the 1st communication apparatus 100 and the 2nd communication apparatus 200, without performing capability information exchange in advance. That is, the first communication device 100 can establish a session with the second communication device 200 with only a few steps.
  • FIG. 2 is a diagram illustrating an example of a configuration of transmission information.
  • the transmission information 310 includes a header 311 and type-specific data 312.
  • the header 311 includes a transmission destination address 313, a transmission source address 314, and a command type 315.
  • the address of the second communication device 200 that is the destination is described in the transmission destination address 313, and the first communication that is the transmission source is described in the transmission source address 314.
  • the address of the device 100 is described.
  • the address is, for example, a MAC (Media Access Control) address for identifying a communication device.
  • information for identifying a command is expressed and expressed by, for example, several bits of information.
  • data 312 detailed contents accompanying the command identification information specified by the command type 315 are set.
  • FIG. 3 is a diagram illustrating a combination example of the contents of the command type 315 and the contents of the data 312 in the present embodiment.
  • connection request As shown in FIG. 3, as the contents 321 of the command type 315, “connection request” and “connection response” to this are used. Further, as the contents 322 of the data 312 corresponding to the “connection request”, “first role” and “second role” are used. As the contents 322 of the data 312 corresponding to the “connection response”, “permission” and “rejection” for the request are used. That is, there are four patterns in the transmission information 310 regarding the request and its response.
  • connection request is the first request or the second request
  • a command type is added as a “reconnection request” or a flag indicating that it is a rerequest It may be provided.
  • the content of the command type 315 is an area of “data type” and the data 312 is an area of “actual data”.
  • the access request issuing unit 140 generates the transmission information 310 of these four patterns with contents as necessary.
  • the contention determination unit 150 interprets which pattern the transmission information 310 sent from the second communication device 200 is.
  • the transmission information in which “connection request” and “first role” are set is the first request, and the transmission information in which “connection request” and “second role” are set is the second request. is there.
  • FIG. 4 is a flowchart showing an example of the operation of the first communication device 100.
  • step S1100 the access control unit 130 determines whether or not a request is issued from the second communication device 200. Whether or not such a request has been issued is determined based on whether or not transmission information (see FIGS. 2 and 3) including the “connection request” is received from the second communication device 200 via the communication unit 110. can do.
  • the access control unit 130 When the access control unit 130 receives the request (S1100: YES), the access control unit 130 transfers the received request to the conflict determination unit 150, and proceeds to step S1200. If the request is not received (S1100: NO), the access control unit 130 proceeds to step S1300.
  • step S1200 the contention determination unit 150 determines whether the received request can be permitted. More specifically, the contention determination unit 150 determines whether or not the role that the second communication device 200 exerts in the request conflicts with the role that the first communication device 100 can perform. . That is, the contention determination unit 150 determines whether or not the role that the second communication device 200 is to play is the reverse of the role that the first communication device 100 can play.
  • the contention determination unit 150 can authorize the received request (S1200: YES)
  • the access request issuing unit 140 sends a command indicating connection permission to the second communication device 200 via the access control unit 130. Let me reply. Then, the conflict determination unit 150 proceeds to step S1400.
  • the contention determination unit 150 sends a command indicating connection rejection to the access request issuing unit 140 via the access control unit 130 in the second communication.
  • the apparatus 200 is made to reply.
  • the conflict determination unit 150 proceeds to step S1500.
  • step S1500 the contention determination unit 150 waits until a predetermined time elapses until the second request is issued from the second communication device 200.
  • the predetermined time may be a random time based on a random number, a static time set in advance by the user of the first communication device 100, or the like.
  • step S1400 When the second request is issued from the second communication device 200 (S1500: YES), the conflict determination unit 150 proceeds to step S1400. On the other hand, when the second request is not issued from the second communication device 200 (S1500: NO), the contention determination unit 150 proceeds to step S1600 described later.
  • step S1400 the access control unit 130 appropriately switches the role exhibited by the first communication device 100 in accordance with a command indicating connection permission. For example, it is assumed that the received request is a request for the second communication apparatus 200 to fulfill its role as a device, and this is permitted. In this case, the access control unit 130 causes the first communication device 100 to function as a host. As a result, a session is established between the first communication device 100 and the second communication device 200.
  • step S 1300 the access control unit 130 determines whether to start a session from the first communication device 100.
  • the access control unit 130 for example, when there is an instruction to start a session by a user operation, or when the first communication device 100 approaches a distance that allows wireless connection with the second communication device 200. Is detected. Then, the access control unit 130 determines to start a session. Whether or not wireless connection is possible can be determined, for example, by detecting a wireless signal transmitted by the second communication device 200.
  • the access control unit 130 When the access control unit 130 starts a session (S1300: YES), the access control unit 130 notifies the access request issuing unit 140 to that effect, and proceeds to step S1700. If the access control unit 130 does not start a session (S1300: NO), the access control unit 130 proceeds to step S1800.
  • step S1700 the first communication device 100 performs a first request process.
  • the first request process is a process for issuing a first request.
  • FIG. 5 is a flowchart showing an example of the first request process (step S1700 in FIG. 4).
  • step S1710 the access request issuing unit 140 generates a first request command and issues it.
  • the access control unit 130 sets the first role as the role of the first communication device 100 and transmits a first request command to the second communication device 200 via the communication unit 110.
  • step S1720 the contention determination unit 150 confirms whether a request is issued from the second communication device 200 at the same time. That is, the contention determination unit 150 determines whether there is a transfer of a request received from the second communication device 200 from the access control unit 130 before there is a response to the request issued in step S1710. If the request is issued at the same time (S1720: YES), the conflict determination unit 150 proceeds to step S1730. If the request is not issued at the same time (that is, if the request is a one-way request from only the first communication device 100) (S1720: NO), the conflict determination unit 150 proceeds to step S1740.
  • step S1730 the conflict determination unit 150 determines whether or not the role indicated by the request issued from the second communication device 200 is the first role (that is, whether or not there is a conflict).
  • step S1750 the access request issuing unit 140 returns transmission information (see FIGS. 2 and 3) in which “connection response” and “reject” are set as a response to the request from the second communication device 200. May be. If the role is not the first role (that is, the second role) (S1730: NO), the conflict determination unit 150 proceeds to step S1760, which will be described later.
  • step S1740 the contention determination unit 150 determines whether the first request issued by the first communication device 100 is permitted by the second communication device 200. This determination can be made based on whether or not transmission information indicating permission for the first request is returned within a predetermined time.
  • the conflict determination unit 150 proceeds to step S1760 described later.
  • step S1750 the contention determination unit 150 waits until a predetermined time elapses until the second request is issued from the second communication device 200.
  • the predetermined time may be a random time based on a random number, a static time set in advance by the user of the first communication device 100, or the like.
  • the conflict determination unit 150 proceeds to step S1760. If the second request is not issued from the second communication device 200 (S1750: NO), the contention determination unit 150 returns to the process of FIG.
  • step S1760 the access control unit 130 establishes a connection as the first role. That is, the first communication device 100 maintains the role according to the first request issued by the access request issuing unit 140 as it is.
  • step S1900 of FIG. 4 the contention determination unit 150 confirms with the access request issuer 140 whether or not the first communication device 100 can perform the second role.
  • step S1900: NO If the conflict determination unit 150 cannot perform the second role (S1900: NO), the process proceeds to step S1600. If the conflict determination unit 150 can fulfill the second role (S1900: YES), the process proceeds to step S2000.
  • step S1600 the contention determination unit 150 determines that a session cannot be established with the second communication device 200. This is because the first communication device 100 can only fulfill the first role, but the second communication device 200 rejects the first request of the first communication device 100. Alternatively, only the first request is issued.
  • the second communication apparatus 200 subsequently accepts the first request of the first communication apparatus 100 or issues the second request due to a change in the setting of the second communication apparatus 200 or the like. There is a possibility. Therefore, the first communication device 100 may repeat the processes in steps S1100, 1300, and 1800 after determining that the session is not established.
  • step S2000 the first communication device 100 performs a second request process.
  • the second request process is a process for issuing a second request.
  • FIG. 6 is a flowchart showing an example of the second request process (step S2000 in FIG. 4).
  • step S2010 the access request issuing unit 140 generates a second request command and issues it.
  • the access control unit 130 sets the role of the first communication device 100 to be switched from the first role to the second role, and sets the second communication device 200 to the second communication device 200 via the communication unit 110. Send the request command.
  • step S2020 the contention determination unit 150 confirms whether a request is issued from the second communication device 200 at the same time. If the request is issued at the same time (S2020: YES), the conflict determination unit 150 proceeds to step S2030. If the request is not issued at the same time (S2020: NO), the conflict determination unit 150 proceeds to step S2040.
  • step S2030 the conflict determination unit 150 determines whether or not the role indicated by the request issued from the second communication device 200 is the second role (that is, whether or not there is a conflict).
  • the conflict determination unit 150 returns to the process of FIG. At this time, the access request issuing unit 140 returns transmission information (see FIGS. 2 and 3) in which “connection response” and “reject” are set as a response to the request from the second communication device 200. You may reply as If the role is not the second role (that is, the first role), the conflict determination unit 150 proceeds to step S2050.
  • step S2040 the contention determination unit 150 determines whether the second request issued by the first communication device 100 is permitted by the second communication device 200. This determination can be made based on whether transmission information indicating permission for the second request is returned within a predetermined time. When the second request is permitted (S2040: YES), the conflict determination unit 150 proceeds to step S2050.
  • step S2050 the access control unit 130 establishes a connection as the second role. That is, the role of the first communication device 100 according to the second request issued by the access request issuing unit 140 is maintained as it is.
  • the access request issuing unit 140 makes a re-request in accordance with the capability of the second communication device 200. That is, the access request issuing unit 140 sets a random time or the like and issues either the first request or the second request. This is because at this point, it is known that each of the first communication device 100 and the second communication device 200 can exhibit both the first role and the second role. Note that when a conflict occurs again, the access request issuing unit 140 may issue a request again.
  • step S1800 the access control unit 130 determines whether or not an instruction to end the process is given by a user operation or the like. If the end of processing is not instructed (S1800: NO), the access request issuing unit 140 returns to step S1100 and waits for a request issued by the second communication device 200 and a session start of the first communication device 100. Further, when instructed to end the process (S1800: YES), the access request issuing unit 140 ends the series of processes.
  • the first communication device 100 can dynamically resolve the role even when requests for determining each other's role compete with the second communication device 200. As a result, the first communication device 100 can realize session establishment with only a few steps.
  • communication system an example of the operation of the entire first communication apparatus 100 and the second communication apparatus 200 (hereinafter referred to as “communication system”) will be described with three patterns.
  • the first pattern competes with the first request, and the first communication device 100 can exhibit both the first role and the second role, but the second communication device 200 has the first role. This is a pattern that can only be demonstrated.
  • the second pattern is a pattern in the case where the first request conflicts with the first request, and each of the first communication device 100 and the second communication device 200 can exhibit both the first role and the second role. It is.
  • the third pattern is a pattern when the first request and the second request are issued simultaneously.
  • FIG. 7 is a sequence diagram showing an example of the operation of the communication system in the first pattern described above.
  • the access control unit 130, the access request issuing unit 140, and the contention determination unit 150 of the first communication device 100 are referred to as “first access control unit 130” and “first access request issuing unit 140, respectively. And “first competition determination unit 150”.
  • the access control unit 130, the access request issuing unit 140, and the contention determination unit 150 of the second communication device 200 are, in order, a “second access control unit 230”, a “second access request issuing unit 240”, This is referred to as “second conflict determination unit 250”.
  • the first access request issuing unit 140 generates a command for the first request to start a session (S001). Then, the first access request issuing unit 140 transfers the generated first request command to the access control unit 130 (S002). The first access control unit 130 sets the first role as the role of the first communication device 100 (S003), and transmits a command to the second communication device 200.
  • the second access request issuing unit 240 generates a first request command to start a session almost simultaneously with the connection start request of the first communication apparatus 100 described above (S004).
  • the access control unit 230 is transferred (S005).
  • the second access control unit 230 sets the first role as the role of the second communication device 200 (S006), and transmits a command to the first communication device 100.
  • the first access control unit 130 that has received the command from the second communication apparatus 200 transfers the received command to the first conflict determination unit 150 in order to perform command analysis (S007).
  • the first conflict determination unit 150 refers to the command type 315 of the received command and starts request determination processing.
  • “connection request” and “first role” are set in the same manner as the first request issued by the first communication device 100. That is, the second communication device 200 similarly issues the first request. For this reason, the first competition determination unit 150 detects a competition state (S008).
  • the first contention determination unit 150 temporarily transmits transmission information in which “connection response” and “rejection” are set as a response to the request from the second communication device 200 at this time. You may reply.
  • the first contention determination unit 150 confirms whether or not it has the second role (S009), and if it has, the second request is issued to the first access request issuing unit 140. Is requested to reissue the command (S010).
  • the first access request issuing unit 140 that has received the reissue request generates a command for the second request (S011) and transfers it to the first access control unit 130 (S012).
  • the first access control unit 130 resets the second role as the role of the first communication device 100 (S013), and transmits a command to the second communication device 200 (S014).
  • the second access control unit 230 that has received the command from the first communication device 100 delegates the analysis of the command to the second contention determination unit 250 (S015).
  • the second conflict determination unit 250 refers to the command type 315 (see FIG. 2) of the received command and starts request determination processing.
  • the command received from the first communication device 100 has “connection request” and “first role” set in the same manner as the first request issued by the second communication device 200. . That is, the first communication device 100 similarly issues the first request.
  • the second competition determination unit 250 detects the competition state in the same manner as the first competition determination unit 150 described above (S016).
  • the second contention determination unit 250 temporarily transmits transmission information in which “connection response” and “rejection” are set as a response to the request from the first communication device 100 at this time. You may reply.
  • the second conflict determination unit 250 confirms whether it has the second role (S017).
  • the second communication device 200 can perform only the first role, it cannot reissue the role change request and waits for a predetermined time as it is (S018).
  • the second access control unit 230 When the second access control unit 230 receives a command (second request) from the first communication device 100 within a predetermined time, the second access control unit 230 delegates the analysis of the command to the second conflict determination unit 250 ( S019).
  • the second conflict determination unit 250 refers to the command type 315 (see FIG. 2) of the received command and starts request determination processing.
  • the command received from the first communication device 100 is set with “connection request” in the same manner as the first request issued by the second communication device 200. What is the first request? Differently, a “second role” is set. Therefore, the second contention determination unit 250 detects that no contention has occurred and accepts the request (S020), that is, causes the access request issuing unit 240 to accept the request from the first communication device 100. A response is made (S021).
  • the second access control unit 230 that has received the response transmits the response command to the first communication device 100 as it is (S023).
  • the second access control unit 230 determines that the role of the second communication device 200 is the first role as it is because no change occurs from the first role already set in step S006 ( S022).
  • the first access control unit 130 that has received the response from the second communication device 200 notifies the first contention determination unit 150 of the response.
  • the role of the first communication device 100 is determined as the second role (S024).
  • the operation in which steps S001 to S003 and S015 to S018 are deleted is an operation when there is a unilateral request from the second communication apparatus 200.
  • the first communication device 100 and the second communication device 200 can make their respective requests as the first request and the second request. Can result in a non-competitive combination. Further, the first communication device 100 and the second communication device 200 have a request for unilaterally requesting the solution of such a combination of requests, or when there is a request from both sides. Can be done if there is a conflict.
  • FIG. 7 the operation when the first request conflicts has been described, but the same applies when the second request conflicts.
  • FIG. 8 is a sequence diagram showing an example of the operation of the communication system in the second pattern described above.
  • step S014 of the first communication apparatus 100 and the operation up to step S016 of the second communication apparatus 200 are the same as those in FIG. In this example, since the second communication device 200 can also play the second role, the same operation as that of the first communication device 100 up to step S014 is performed.
  • the request will compete twice.
  • the first communication device 100 and the second communication device 200 have both the first role and the second role at this point.
  • the first communication device 100 and the second communication device 200 can be reduced to the relationship between the second requests when both communication devices can play two roles. Moreover, the 1st communication apparatus 100 and the 2nd communication apparatus 200 can grasp
  • the first communication device 100 and the second communication device 200 can establish a connection without exchanging roles that can be performed in advance using some means in advance.
  • FIG. 9 is a sequence diagram showing an example of the operation of the communication system in the third pattern described above.
  • the first access request issuing unit 140 generates a first request command to start a session (S001), and transfers the command to the first access control unit 130 (S002).
  • the first access control unit 130 sets the first role as the role of the first communication device 100 (S003), and transmits a command to the second communication device 200.
  • the second access request issuing unit 240 generates a second request command to start the session almost simultaneously with the connection start request of the first communication apparatus 100 (S501). (S502).
  • the second access control unit 230 sets the second role as the role of the second communication device 200 (S503), and transmits a command to the first communication device 100.
  • the first access control unit 130 that has received the command from the second communication apparatus 200 transfers the received command to the first conflict determination unit 150 in order to perform command analysis (S007).
  • the first conflict determination unit 150 refers to the command type 315 (see FIG. 2) of the received command and starts request determination processing.
  • the command received from the second communication device 200 is set to “connection request” in the same manner as the first request issued by the first communication device 100, but is different from the first request. “Second role” is set.
  • the first competition determination unit 150 detects that a competition state has not occurred with the second communication device 200 (S008). Then, the first conflict determination unit 150 accepts the request (S504) and makes a response (S505).
  • the access control unit 130 that has received the response transmits the response command to the second communication device 200 as it is. At this time, the access control unit 130 determines the role of the first communication device 100 as the first role as it is because no change has occurred from the first role already set in step S003 (S506).
  • the second access control unit 230 that has received the command from the first communication device 100 transfers the command to the second conflict determination unit 250 in order to analyze the command (S015).
  • the second conflict determination unit 250 refers to the command type 315 (see FIG. 2) of the received command and starts request determination processing.
  • the command received from the first communication device 100 is set with the same “connection request” as the second request issued by the second communication device 200, but unlike the second request, “ The “first role” is set.
  • the second competition determination unit 250 detects that the competition state is not uttered with the first communication device 100 (S016). Then, the second competition determination unit 250 accepts the request (S507) and makes a response (S508).
  • the second access control unit 230 that has received the response transmits the response command to the first communication device 100 as it is. At this time, the second access control unit 230 determines that the role of the second communication device 200 is the second role as it is because no change occurs from the second role already set in step S503 ”. (S509).
  • the first communication device 100 and the second communication device 200 receive a response to each other and establish a connection (S510).
  • the first communication device 100 and the second communication device 200 can establish a connection as they are if the contents of the requests are different even when the requests are generated simultaneously. .
  • the first communication apparatus 100 plays a role that can be exhibited when the request issued by the own apparatus and the request issued by the second communication apparatus 200 are in conflict.
  • a request to fulfill the other role can be issued. That is, the first communication device 100 according to the present embodiment dynamically switches the request so as to result in a non-conflicting combination even when the request conflicts with the second communication device 200, A solution can be achieved. Accordingly, the first communication device 100 can establish a session with the second communication device 200 with only a few steps.
  • the communication apparatus according to the present invention can reduce each role to a non-conflicting combination of a host request and a device request when only one communication apparatus can exhibit the role as a host. For this reason, the communication apparatus according to the present invention can directly establish a session.
  • the communication apparatus according to the present invention can be reduced to the relationship between the requests of the host. In this case, it is necessary to resolve this as a conflict of request for the role as the host. At this point, the communication apparatuses according to the present invention can grasp that each other can play a role as a device. Therefore, it is not necessary for the communication apparatus according to the present invention to exchange the roles that can be demonstrated with each other in advance using some means.
  • the communication device according to the present invention cannot issue host requests to each other when both communication devices do not have a role as a host. For this reason, the communication apparatuses according to the present invention can recognize from the detection of a timeout or the like that they cannot mutually serve as a host. Therefore, the communication apparatus according to the present invention can directly grasp that continuation of the subsequent connection process is unnecessary, and can avoid further unnecessary steps.
  • the other role is exhibited according to the role that can be exhibited both in the case where two requests issued at the same time conflict and in the case where the issued request is rejected.
  • the present invention is not limited to this.
  • the communication device may reissue a request for performing the other role according to the role that can be performed only in one of these two cases.
  • the present invention is useful as a communication device, a communication method, and a communication program that can determine the role of each communication device with few steps.
  • the present invention can be applied to, for example, portable devices such as mobile phones and tablets, and personal computers.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

 各通信装置の役割を、少ないステップで決定すること。第1の通信装置(100)は、第2の通信装置(200)から自装置へのアクセスを受け入れるデバイスの役割と、第2の通信装置(200)にアクセスするホストの役割の少なくとも一方を担うことができる装置であって、自装置の役割を示す要求を第2の通信装置(200)に発行するアクセス要求発行部(140)と、当該要求と第2の通信装置(200)が発行した要求とが競合した場合あるいは当該要求が拒否された場合にアクセス要求発行部(140)に対して他の役割を示す要求を、第2の通信装置(200)に再発行させる競合判別部(150)とを有する。

Description

通信装置、通信方法、および通信プログラム
 本発明は、通信を介して、リモートにある他の通信装置との間でデータのアクセスに必要な役割を決定する、通信装置、通信方法、および通信プログラムに関する。
 近年、BD(Blu-lay Disk)レコーダなどのデータ蓄積部に蓄積された録画コンテンツを、携帯電話機などのモバイル端末に転送するといった機器連携によるユースケースが、広がりつつある。
 従来の転送方法としては、USB(Universal Serial Bus)のような有線通信に基づくPAN(Personal Area Network)、または、SDメモリカードのようなブリッジメディア(Bridge Media)が、広く用いられてきた。しかしながら、USB、または、SDメモリカードにおいては、ケーブル接続やカード挿抜が必要となるため、機器のユーザビリティ向上の観点から、各種分野で、機器間の無線接続化が進められている。
 このような無線接続化を前提としたユースケースにおいては、相手の機器が据置機器に限定されない。したがって、モバイル端末では、例えば、外出先での不特定のモバイル端末との間でのコンテンツ転送の機会が増大することなどが想定される。
 各端末は、他端末が有するデータ蓄積部にアクセスする役割(以下「ホストとしての役割」という)、および、自端末のデータ蓄積部へのアクセスを受け入れる役割(以下「デバイスとしての役割」という)のいずれかを発揮することになる。ところが、このような無線通信によるセッションでは、各端末が、ホストとしての役割と、デバイスとしての役割との、いずれを担うかが問題となってくる。
 なぜなら、モバイル端末は、それぞれの機能がほぼ等価であり、役割を固定することができないケースが多いからである。また、発揮可能な役割は、モバイル端末によって異なり、同じモバイル端末でもユーザ設定などにより変化し得るからである。
 そこで、このようなアクセスに必要な役割を決定する従来技術は、例えば、特許文献1に記載の技術が存在する。この従来技術は、各通信装置が予め互いに自装置の発揮可能な役割に関する機能情報を交換し合い、それらの機能情報を比較し、特定のルールに基づいて、各通信装置の役割を決定する。すなわち、従来技術は、相手の通信装置がホストとしての役割およびデバイスとしての役割のうちいずれを発揮することが可能かを、機能情報の交換により確認する。そして、従来技術は、その確認結果に応じて、自己がいずれかの役割を発揮するための要求を発行する。
 このような従来技術では、予め機能情報を交換することにより相手の役割などの変更可否を特定することが可能になり、その情報に基づき互いの役割を決定し、コンテンツの転送を実現することができる。
特開2010-245847号公報
 しかしながら、従来技術は、事前に実行するべきステップが多いという課題を有している。なぜなら、従来技術は、通信装置間で予め機能情報を交換してからでなければ、各通信装置の役割を決定することができないからである。通信装置の役割を決定するのに必要なステップが多いということは、セッション確立までの処理が複雑化し、処理負荷、通信負荷、およびセッション確立までに要する時間が増大することになる。したがって、通信装置の役割の決定は、少ないステップで行うことが望まれる。
 本発明の目的は、各通信装置の役割を、少ないステップで決定することができる通信装置、通信方法、および通信プログラムを提供することである。
 本発明の通信装置は、データ蓄積部を有し、リモートにある他の装置の前記データ蓄積部へのアクセスを受け入れるデバイスとしての役割と、前記他の通信装置が有するデータ蓄積部にアクセスするホストとしての役割との少なくとも一方を発揮可能な通信装置であって、前記通信装置が発揮する前記役割を制御するアクセス制御部と、前記通信装置が前記発揮可能な役割のうちの1つを発揮する旨の要求を前記他の通信装置に発行するアクセス要求発行部と、前記他の通信装置が発行した要求、および前記アクセス要求発行部が発行した要求に対する応答を、前記アクセス制御部を介して取得する取得部と、前記アクセス要求発行部が発行した前記要求と、前記他の通信装置が発行した要求とが競合している場合、および、前記アクセス要求発行部が発行した前記要求が拒否された場合の少なくとも一方において、前記発揮可能な役割に応じて他方の役割を発揮する旨の要求を、前記アクセス要求発行部を介して前記他の通信装置に再発行する競合判別部とを有する。
 本発明の通信方法は、データ蓄積部を有し、リモートにある他の装置の前記データ蓄積部へのアクセスを受け入れるデバイスとしての役割と、前記他の通信装置が有するデータ蓄積部にアクセスするホストとしての役割との少なくとも一方を発揮可能な通信装置における通信方法であって、前記他の装置に対し、前記通信装置が前記発揮可能な役割のうちの1つを発揮する旨の要求を前記他の通信装置に発行するステップと、前記他の通信装置が発行した要求、および前記要求に対する前記他の通信装置からの応答を取得するステップと、発行した前記要求と、前記他の通信装置が発行した要求とが競合しているか否かを判断するステップと、発行した前記要求と、前記他の通信装置が発行した前記要求とが競合している場合、および、発行した前記要求が拒否された場合の少なくとも一方において、前記発揮可能な役割に応じて他方の役割を発揮する旨の要求を、前記他の通信装置に再発行するステップと、発行された前記要求に対する前記他の通信装置からの応答に応じて、前記通信装置が発揮する前記役割を制御するステップとから成る。
 本発明の通信プログラムは、データ蓄積部を有し、リモートにある他の装置の前記データ蓄積部へのアクセスを受け入れるデバイスとしての役割と、前記他の通信装置が有するデータ蓄積部にアクセスするホストとしての役割との少なくとも一方を発揮可能な通信装置のコンピュータに実行させる通信プログラムであって、前記他の装置に対し、前記通信装置が前記発揮可能な役割のうちの1つを発揮する旨の要求を前記他の通信装置に発行する処理と、前記他の通信装置が発行した要求、および前記要求に対する前記他の通信装置からの応答を取得する処理と、発行した前記要求と、前記他の通信装置が発行した要求とが競合しているか否かを判断する処理と、発行した前記要求と、前記他の通信装置が発行した前記要求とが競合している場合、および、発行した前記要求が拒否された場合の少なくとも一方において、前記発揮可能な役割に応じて他方の役割を発揮する旨の要求を、前記他の通信装置に再発行する処理と、発行された前記要求に対する前記他の通信装置からの応答に応じて、前記通信装置が発揮する前記役割を制御する処理とから成る。
 本発明によれば、各通信装置の役割を、少ないステップで決定することができる。
本発明の一実施の形態に係る通信装置を含む通信システムの構成を示すブロック図 本実施の形態における送信情報の構成の一例を示す図 本実施の形態における送信情報の内容の例を示す図 本実施の形態に係る通信装置の動作の一例を示すフローチャート 本実施の形態における第1の要求処理の一例を示すフローチャート 本実施の形態における第2の要求処理の一例を示すフローチャート 本実施の形態における通信システムの動作の第1の例を示すシーケンス図 本実施の形態における通信システムの動作の第2の例を示すシーケンス図 本実施の形態における通信システムの動作の第3の例を示すシーケンス図
 以下、本発明の一実施の形態について、図面を参照して詳細に説明する。
 まず、本実施の形態に係る通信装置の構成について説明する。
 図1は、本実施の形態に係る2つの通信装置からなる通信システムの構成を示すブロック図である。
 図1において、本実施の形態に係る第1の通信装置100は、リモートの第2の通信装置200と通信を開始しようとしている、携帯型または固定型の装置である。
 また、以下の説明において、ホストとしての役割およびデバイスとしての役割のうち、第1の通信装置100が、自装置が発揮する役割として、最初に第2の通信装置200に対して要求する方の役割は、「第1の役割」という。そして、他方の役割は、「第2の役割」という。また、自装置が第1の役割を発揮する旨の要求は、「第1の要求」といい、自装置が第2の役割を発揮する旨の要求は、「第2の要求」という。また、第1の要求および第2の要求は、適宜、「要求」と総称する。
 なお、第1の通信装置100および第2の通信装置200が発揮可能な役割は、例えば、ユーザ設定などにより、どちらか一方の役割または双方の役割を適宜変更することができるものとする。ただし、本実施の形態において、第1の通信装置100は、少なくとも第1の役割を発揮することができるものとする。
 図1に示すように、第1の通信装置100は、通信部110、データ蓄積部120、アクセス要求発行部140、アクセス制御部130、および競合判別部150を有する。
 また、第2の通信装置200は、通信部210、データ蓄積部220、アクセス要求発行部240、アクセス制御部230、および競合判別部250を有する。これらの各機能部は、順に、第1の通信装置100の、通信部110、データ蓄積部120、アクセス要求発行部140、アクセス制御部130、および競合判別部150と同一の機能を実現する。すなわち、第2の通信装置200の構成は、第1の通信装置100の構成と同一である。このため、第2の通信装置200の構成についての説明は、省略する。
 通信部110は、第2の通信装置200との間での送信情報(コマンド)の送信、第2の通信装置200が発行した要求、および、その送信情報(コマンド)に対する応答の受信を行う。例えば、通信部110は、第1の要求、第2の要求、およびこれらに対する応答を内容とする送信情報を、第2の通信装置200との間で送受信する。通信部110は、例えば、無線LANデバイス、およびWireless Gigabit(WiGig)デバイスなどの、無線通信インタフェースである。なお、WiGigとは、1Gbpsを超える有線PAN用途の置換えを想定した、60GHz帯域のミリ波を利用する無線通信規格である。
 データ蓄積部120は、データの書き込みおよび読み出しが可能な不揮発性の記録媒体である。不揮発性の記録媒体は、例えば、SD、SDHC(SD High Capacity)、または、SDXC(SD eXtended Capacity)メモリカードである。データ蓄積部120は、通信部110と後述のアクセス制御部130とを介して、第2の通信装置200からのアクセスが可能となっている。
 アクセス制御部130は、第1の通信装置100が発揮する役割を制御する。
 より具体的には、アクセス制御部130は、後述のアクセス要求発行部140によって生成されたコマンドを識別し、コマンドに従って第1の通信装置100の役割を切り替えると共に、第2の通信装置200との間でデータの送受信を行う。また、アクセス制御部130は、第2の通信装置200が発行した要求を競合判別部150に転送する。
 アクセス要求発行部140は、第2の通信装置200との間で接続を確立する(役割を決定する)ために、第1の通信装置100が発揮可能な役割のうちの1つを発揮する旨の要求を、第2の通信装置200に発行する。
 より具体的には、アクセス要求発行部140は、第1の役割か第2の役割のどちらで接続するかを、第2の通信装置200に対して要求または通知するための、コマンドを生成する。そして、アクセス要求発行部140は、アクセス制御部130に対して、生成したコマンドに従った役割の切り替えと、生成したコマンドの第2の通信装置200への転送とを指示する。すなわち、本実施の形態において、「発行」とは、要求に従って第1の通信装置100が発揮する役割を設定することと、第2の通信装置200に対して要求を通知することとを含む。
 なお、アクセス要求発行部140は、第1の役割を決定する際、ホストとしての役割およびデバイスとしての役割のどちらかを予め決めておく、ランダムに選択する、または、自端末のIPアドレス・MACアドレスなどにより決定してもよい。
 なお、第1の要求のコマンドは、適宜、「第1の要求」といい、第2の要求のコマンドは、適宜、「第2の要求」という。また、第2の通信装置200は、第1の通信装置100と同様に、第1の要求あるいは第2の要求を発行するものとする。
 競合判別部150は、第2の通信装置200が発行した要求を受信したとき、アクセス要求発行部140が発行した要求と、第2の通信装置200が発行した要求とが競合しているか否かを判断する。そして、競合判別部150は、これらの要求が競合している場合、アクセス要求発行部140に対し、第1の通信装置100が発揮可能な役割に応じて他方の役割を発揮する旨の要求を再発行させる。
 より具体的には、競合判別部150は、第1の通信装置100と第2の通信装置200とがコマンドをほぼ同時に発行した場合に、これらのコマンド(以下「2つのコマンド」という)が競合しているか否かを判別する。そして、競合判別部150は、2つのコマンドが競合しており、かつ、第1の通信装置100が第2の役割を発揮可能である場合、アクセス要求発行部140に対し、第2の役割の要求に動的に切り替えて再要求を発行させる。
 なお、ほぼ同時に発行とは、第1の通信装置100が、発行したコマンドに対する応答を受信する前に、第2の通信装置200からのコマンドを受信することをいう。また、コマンドが競合しているとは、両方のコマンドが第1の要求であること、および、両方のコマンドが第2の要求であることをいう。
 また、競合判別部150は、アクセス要求発行部140が先に要求を発行し、当該要求が拒否された場合、アクセス要求発行部140に対し、第1の通信装置100が発揮可能な役割に応じて他方の役割を発揮する旨の要求を再発行させる。
 また、競合判別部150は、第2の通信装置200が先に要求を発行した場合、競合判別部150が、第1の通信装置100に設定されている役割と第2の通信装置200からの要求が希望する役割との競合を判定する。競合判別部150は、競合している場合において、他の役割要求に切り替えることができる場合、受諾する旨を示す接続応答を、第2の通信装置200へ送る。一方、他の役割に切り替えられない場合、競合判別部150は、拒否する旨を示す接続応答を第2の通信装置200に送る。
 また、2つの要求がほぼ同時に発行される状況とは、例えば、各通信装置が、電波の届かないところから近付いてきて、通信ができるようになったようなタイミングに発生し得る。また、2つの要求がほぼ同時に発行される状況とは、例えば、一方の通信装置が電源OFF状態またはスリープ状態から、電源をON状態またはスタンバイ状態に遷移したときに発生し得る。
 また、競合判別部150は、アクセス要求発行部140が発行した要求と第2の通信装置200が発行した要求とが競合していないとき、アクセス要求発行部140に対し、第2の通信装置200の要求を受諾させる。つまり、アクセス要求発行部140は、競合判別部150からの要求の受諾通知により、第1の通信装置100と第2の通信装置200の要求が競合していないので、設定した内容をそのまま受け入れる。
 また、競合判別部150は、上記2つの要求が競合し、かつ、競合した方の役割しか第1の通信装置100が発揮できない場合、第2の通信装置200が当該役割以外を発揮する旨の要求が発行されるのを待機する。そして、競合判別部150は、当該要求が発行されたとき、アクセス要求発行部140に対し、当該要求を受諾させる。つまり、相手側が要求を変更して再発行してくれるため、第1の通信装置100から見た場合は、第2の通信装置200が再発行した内容が自身にとって問題ない要求であるため、アクセス要求発行部140は、その要求を受け入れる。
 第1の通信装置100は、例えば、CPU(Central Processing Unit)、制御プログラムを格納したROM(Read Only Memory)などの記憶媒体、およびRAM(Random Access Memory)などの作業用メモリを有する。この場合、上記した各構成部の機能は、CPUが制御プログラムを実行することにより実現される。
 なお、第1の通信装置100の各機能部は、例えば、集積回路により構成してもよい。第1の通信装置100の各機能部は、個別に1チップ化してもよいし、複数で1チップ化してもよい。集積回路は、集積度の違いにより、LSI(Large Scale Integration)、IC(Integrated Circuit)、システムLSI、スーパーLSI、またはウルトラLSI等とすることができる。また、集積回路は、専用回路または汎用プロセッサにより実現するものであってもよい。また、集積回路は、その製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、または、内部の回路セルの接続や設定を再構成可能なコンフィギュラブル・プロセッサとしてもよい。更に、第1の通信装置100の各機能部は、半導体技術の進歩または派生する別技術に応じて、LSIに置き換わる他の集積回路化の技術(例えばバイオ技術)により集積化されたものにより実現されてもよい。
 また、図示はしていないが、第1の通信装置100は、第1の通信装置100のユーザが第1の通信装置100の動作を選択して実行するための、ユーザインタフェースを有していてもよい。例えば、第1の通信装置100は、ユーザインタフェースとして、入力キー、ディスプレイ、マイクロフォン、スピーカ、カメラ、バイブレータ、およびプログラム格納や実行のためのメモリなどの機能を有していてもよい。
 このような第1の通信装置100は、第2の通信装置200との間で要求が競合したときでも、動的に役割の決定をすることができる。これにより、第1の通信装置100は、事前の能力情報交換を行うことなく、第1の通信装置100および第2の通信装置200のそれぞれの役割を的確に決定することができる。すなわち、第1の通信装置100は、僅かなステップのみで、第2の通信装置200とのセッションを確立することができる。
 以上で、第1の通信装置100の構成および内容についての説明を終える。
 次に、第1の通信装置100が第2の通信装置200との間で送受信する送信情報の構成について説明する。
 図2は、送信情報の構成の一例を示す図である。
 送信情報310は、ヘッダ311とタイプ別のデータ312とから構成される。ヘッダ311は、送信先アドレス313、送信元アドレス314、およびコマンドタイプ315を含む。
 第1の通信装置100が送信した送信情報310においては、送信先アドレス313に、宛先である第2の通信装置200のアドレスが記述され、送信元アドレス314に、送信元である第1の通信装置100のアドレスが記述される。アドレスは、例えば、通信デバイスを識別するためのMAC(Media Access Control)アドレスである。コマンドタイプ315には、コマンドを識別するための情報(コマンド識別情報)が、例えば数ビットの情報で表現されて記述される。データ312には、コマンドタイプ315により指定される、コマンド識別情報に付随する詳細な内容が設定される。
 図3は、本実施の形態における、コマンドタイプ315の内容とデータ312の内容との組み合わせ例を示す図である。
 図3に示すように、コマンドタイプ315の内容321としては、「接続要求」と、これに対する「接続応答」とが用いられる。また、「接続要求」に対応するデータ312の内容322としては、「第1の役割」と「第2の役割」とが用いられる。そして、「接続応答」に対応するデータ312の内容322としては、要求に対する「許可」と「拒否」とが用いられる。すなわち、要求とその応答に関する送信情報310には、4つのパターンが存在する。
 なお、接続要求は、1回目の要求であるか2回目の要求であるかを区別するために、「再接続要求」としてコマンドタイプを追加するか、または、再要求であることを示すフラグを設けてもよい。
 また、セッションの確立後にデータ蓄積部120のデータを送受するときは、例えば、コマンドタイプ315の内容は「データ種別」、データ312には「実データ」の領域となる。
 アクセス要求発行部140は、これら4つパターンの送信情報310を、必要に応じた内容で生成する。また、競合判別部150は、第2の通信装置200から送られてきた送信情報310がいずれのパターンであるかを解釈する。「接続要求」および「第1の役割」が設定された送信情報は、第1の要求であり、「接続要求」および「第2の役割」が設定された送信情報は、第2の要求である。
 以上で、送信情報の構成および内容についての説明を終える。
 次に、第1の通信装置100の動作について説明する。
 ここでは、セッション確立およびセッション不確立の結果が得られるまでの処理について説明する。
 図4は、第1の通信装置100の動作の一例を示すフローチャートである。
 まず、ステップS1100において、アクセス制御部130は、第2の通信装置200から要求が発行されたか否かを判断する。かかる要求が発行されたか否かは、第2の通信装置200から「接続要求」を含む送信情報(図2および図3参照)を、通信部110を介して受信したか否かに基づいて判断することができる。
 アクセス制御部130は、要求を受信した場合(S1100:YES)、その受信した要求を競合判別部150に転送して、ステップS1200へ進む。また、アクセス制御部130は、要求を受信していない場合(S1100:NO)、ステップS1300へ進む。
 ステップS1200において、競合判別部150は、受信した要求を許可することができるか否かを判断する。より具体的には、競合判別部150は、要求において、第2の通信装置200が発揮することを求める役割が、第1の通信装置100が発揮可能な役割と競合するか否かを判断する。すなわち、競合判別部150は、第2の通信装置200が発揮しようとしている役割が、第1の通信装置100が発揮可能な役割と逆の役割であるか否かを判断する。
 競合判別部150は、受信した要求を許可することができる場合(S1200:YES)、アクセス要求発行部140に対し、接続許可を示すコマンドを、アクセス制御部130を介して第2の通信装置200に返信させる。そして、競合判別部150は、ステップS1400へ進む。
 また、競合判別部150は、受信した要求を許可することができない場合(S1200:NO)、アクセス要求発行部140に対し、接続拒否を示すコマンドを、アクセス制御部130を介して第2の通信装置200に返信させる。そして、競合判別部150は、ステップS1500へ進む。
 ステップS1500において、競合判別部150は、第2の通信装置200から第2の要求が発行されるのを、所定の時間が経過するまで待機する。この所定の時間は、乱数に基づくランダム時間であってもよいし、第1の通信装置100のユーザによって予め設定された静的な時間などであってもよい。
 競合判別部150は、第2の通信装置200から第2の要求が発行された場合(S1500:YES)、ステップS1400へ進む。一方、競合判別部150は、第2の通信装置200から第2の要求が発行されなかった場合(S1500:NO)、後述のステップS1600へ進む。
 ステップS1400において、アクセス制御部130は、接続許可を示すコマンドに従って、第1の通信装置100が発揮する役割を適宜切り替える。例えば、受信した要求は、第2の通信装置200がデバイスとしての役割を発揮することの要求であり、これが許可されたとする。この場合、アクセス制御部130は、第1の通信装置100が、ホストとしての役割を発揮するようにする。この結果、第1の通信装置100と第2の通信装置200との間では、セッションが確立する。
 ステップS1300において、アクセス制御部130は、第1の通信装置100からセッションを開始するか否かを判断する。アクセス制御部130は、例えば、ユーザ操作によるセッションの開始指示があった場合、または、第1の通信装置100が第2の通信装置200と無線接続が可能な距離まで近付いた場合などに、これを検出する。そして、アクセス制御部130は、セッションを開始すると判断する。無線接続可能か否かは、例えば、第2の通信装置200が送出する無線信号を検出することにより判断することができる。
 アクセス制御部130は、セッションを開始する場合(S1300:YES)、その旨をアクセス要求発行部140に通知して、ステップS1700へ進む。また、アクセス制御部130は、セッションを開始しない場合(S1300:NO)、ステップS1800へ進む。
 ステップS1700において、第1の通信装置100は、第1の要求処理を行う。第1の要求処理は、第1の要求を発行する処理である。
 図5は、第1の要求処理(図4のステップS1700)の一例を示すフローチャートである。
 まず、ステップS1710において、アクセス要求発行部140は、第1の要求のコマンドを生成し、これを発行する。この結果、アクセス制御部130は、第1の通信装置100の役割として第1の役割を設定すると共に、通信部110を介して第2の通信装置200へ第1の要求のコマンドを送信する。
 そして、ステップS1720において、競合判別部150は、第2の通信装置200から同時に要求が発行されたかを確認する。すなわち、競合判別部150は、ステップS1710において発行された要求に対する応答がある前に、アクセス制御部130から、第2の通信装置200から受信した要求の転送があったか否かを判断する。競合判別部150は、同時に要求が発行された場合(S1720:YES)、ステップS1730へ進む。また、競合判別部150は、同時に要求が発行されていない場合(つまり第1の通信装置100からのみの一方通行の要求である場合)(S1720:NO)、ステップS1740へ進む。
 ステップS1730において、競合判別部150は、第2の通信装置200から発行された要求の示す役割が、第1の役割であるか否か(つまり競合しているか否か)を判断する。
 競合判別部150は、かかる役割が第1の役割である場合(S1730:YES)、ステップS1750へ進む。なお、この時点で、アクセス要求発行部140は、第2の通信装置200からの要求に対する応答として、「接続応答」および「拒否」を設定した送信情報(図2および図3参照)を、返信してもよい。また、競合判別部150は、かかる役割が第1の役割ではない場合(つまり第2の役割である場合)(S1730:NO)、後述のステップS1760へ進む。
 また、ステップS1740において、競合判別部150は、第1の通信装置100が発行した第1の要求が、第2の通信装置200により許可されたか否かを判断する。この判断は、所定の時間内に第1の要求に対する許可を示す送信情報が返信されたか否かにより判断することができる。競合判別部150は、第1の要求が許可された場合(S1740:YES)、後述のステップS1760へ進む。
 ステップS1750において、競合判別部150は、第2の通信装置200から第2の要求が発行されるのを、所定の時間が経過するまで待機する。この所定の時間は、乱数に基づくランダム時間であってもよいし、第1の通信装置100のユーザによって予め設定された静的な時間などであってもよい。
 競合判別部150は、第2の通信装置200から第2の要求が発行された場合(S1750:YES)、ステップS1760へ進む。また、競合判別部150は、第2の通信装置200から第2の要求が発行されなかった場合(S1750:NO)、図4の処理へ戻る。
 ステップS1760において、アクセス制御部130は、第1の役割として接続を確立する。すなわち、第1の通信装置100は、アクセス要求発行部140が発行した第1の要求に従った役割を、そのまま維持する。
 図4のステップS1900において、競合判別部150は、第1の通信装置100が第2の役割を発揮可能か否かについて、アクセス要求発行部140に確認する。
 競合判別部150は、第2の役割を発揮不可能である場合(S1900:NO)、ステップS1600へ進む。また、競合判別部150は、第2の役割を発揮可能である場合(S1900:YES)、ステップS2000へ進む。
 ステップS1600において、競合判別部150は、第2の通信装置200との間でセッションを確立することができないとの判定を行う。これは、第1の通信装置100は、第1の役割しか発揮することができないにもかかわらず、第2の通信装置200は、第1の通信装置100の第1の要求を拒否しているか、あるいは、第1の要求しか発行していないからである。
 なお、第2の通信装置200の設定の変更などにより、この後に、第2の通信装置200は、第1の通信装置100の第1の要求を受諾し、あるいは、第2の要求を発行する可能性もある。したがって、第1の通信装置100は、セッション不確立の判定の後、ステップS1100、1300、1800の処理を繰り返すようにしてもよい。
 一方、ステップS2000において、第1の通信装置100は、第2の要求処理を行う。第2の要求処理は、第2の要求を発行する処理である。
 図6は、第2の要求処理(図4のステップS2000)の一例を示すフローチャートである。
 まず、ステップS2010において、アクセス要求発行部140は、第2の要求のコマンドを生成し、これを発行する。この結果、アクセス制御部130は、第1の通信装置100の役割を第1の役割から第2の役割に切り替えてを設定すると共に、通信部110を介して第2の通信装置200へ第2の要求のコマンドを送信する。
 そして、ステップS2020において、競合判別部150は、第2の通信装置200から同時に要求が発行されたかを確認する。競合判別部150は、同時に要求が発行された場合(S2020:YES)、ステップS2030へ進む。また、競合判別部150は、同時に要求が発行されていない場合(S2020:NO)、ステップS2040へ進む。
 ステップS2030において、競合判別部150は、第2の通信装置200から発行された要求の示す役割が、第2の役割であるか否か(つまり競合しているか否か)を判断する。
 競合判別部150は、かかる役割が第2の役割である場合(S2030:YES)、図4の処理へ戻る。なお、この時点で、アクセス要求発行部140は、第2の通信装置200からの要求に対する応答として、「接続応答」および「拒否」を設定した送信情報(図2および図3参照)を、応答として返信してもよい。また、競合判別部150は、かかる役割が第2の役割ではない場合(つまり第1の役割である場合)、ステップS2050へ進む。
 また、ステップS2040において、競合判別部150は、第1の通信装置100が発行した第2の要求が、第2の通信装置200により許可されたか否かを判断する。この判断は、所定の時間内に第2の要求に対する許可を示す送信情報が返信されたか否かにより判断することができる。競合判別部150は、第2の要求が許可された場合(S2040:YES)、ステップS2050へ進む。
 ステップS2050において、アクセス制御部130は、第2の役割として接続を確立する。すなわち、第1の通信装置100は、アクセス要求発行部140が発行した第2の要求に従った役割が、そのまま維持される。
 図4のステップS2100において、アクセス要求発行部140は、第2の通信装置200の能力にあわせて、再要求を行う。すなわち、アクセス要求発行部140は、ランダム時間などを設定して、第1の要求および第2の要求のいずれかを発行する。これは、この時点で、第1の通信装置100および第2の通信装置200のそれぞれが、第1の役割および第2の役割の両方を発揮可能であることが分かっているからである。なお、再び競合が発生した場合には、アクセス要求発行部140は、再度、要求の発行を行えばよい。
 また、ステップS1800において、アクセス制御部130は、ユーザ操作などにより、処理の終了を指示されたか否かを判断する。アクセス要求発行部140は、処理の終了を指示されていない場合(S1800:NO)、ステップS1100へ戻り、第2の通信装置200の要求発行および第1の通信装置100のセッション開始を待機する。また、アクセス要求発行部140は、処理の終了を指示された場合(S1800:YES)、一連の処理を終了する。
 このような動作により、第1の通信装置100は、第2の通信装置200との間で互いの役割を決定する要求が競合したときでも、動的に役割の解決を図ることができる。これにより、第1の通信装置100は、セッションの確立を僅かなステップのみで実現することができる。
 以上で、第1の通信装置100の動作についての説明を終える。
 以下、第1の通信装置100および第2の通信装置200の全体(以下「通信システム」という)の動作の例を、3つのパターンを挙げて説明する。
 第1のパターンは、第1の要求で競合し、第1の通信装置100は第1の役割および第2の役割の両方を発揮可能であるが、第2の通信装置200が第1の役割しか発揮することができない場合のパターンである。
 第2のパターンは、第1の要求で競合し、第1の通信装置100および第2の通信装置200のそれぞれが、第1の役割および第2の役割の両方を発揮可能である場合のパターンである。
 第3のパターンは、第1の要求と第2の要求とが同時に発行された場合のパターンである。
 図7は、上述の第1のパターンにおける、通信システムの動作の一例を示すシーケンス図である。
 なお、以下、第1の通信装置100のアクセス制御部130、アクセス要求発行部140、および競合判別部150は、順に、「第1のアクセス制御部130」、「第1のアクセス要求発行部140」、「第1の競合判別部150」という。また、第2の通信装置200のアクセス制御部130、アクセス要求発行部140、および競合判別部150は、順に、「第2のアクセス制御部230」、「第2のアクセス要求発行部240」、「第2の競合判別部250」という。
 図7に示すように、第1のアクセス要求発行部140は、セッション開始のため、第1の要求のコマンドを生成する(S001)。そして、第1のアクセス要求発行部140は、生成した第1の要求のコマンドを、アクセス制御部130へ転送する(S002)。第1のアクセス制御部130は、第1の通信装置100の役割として第1の役割を設定し(S003)、第2の通信装置200へコマンドを送信する。
 このとき、第2のアクセス要求発行部240は、上述の第1の通信装置100の接続開始の要求とほぼ同時に、セッション開始のため、第1の要求のコマンドを生成し(S004)、第2のアクセス制御部230へ転送したとする(S005)。第2のアクセス制御部230は、第2の通信装置200の役割として第1の役割を設定し(S006)、第1の通信装置100へコマンドを送信する。
 第2の通信装置200からのコマンドを受信した第1のアクセス制御部130は、コマンド解析を実施するため、第1の競合判別部150に、受信したコマンドを転送する(S007)。第1の競合判別部150は、受け取ったコマンドのコマンドタイプ315を参照し、要求の判別処理を開始する。本例において、第2の通信装置200からのコマンドは、第1の通信装置100が発行した第1の要求と同様に、「接続要求」および「第1の役割」が設定されている。すなわち、第2の通信装置200は、同様に、第1の要求を発行している。このため、第1の競合判別部150は、競合状態を検出する(S008)。
 なお、図示はしていないが、第1の競合判別部150は、この時点で第2の通信装置200からの要求に対する応答として、「接続応答」および「拒否」を設定した送信情報を、仮返信してもよい。
 次に、第1の競合判別部150は、第2の役割を所持しているかを確認し(S009)、所持している場合、第1のアクセス要求発行部140に対して、第2の要求のコマンドを再発行するように依頼する(S010)。再発行依頼を受信した第1のアクセス要求発行部140は、第2の要求のコマンドを生成し(S011)、第1のアクセス制御部130へ転送する(S012)。第1のアクセス制御部130は、第1の通信装置100の役割として第2の役割を再設定し(S013)、第2の通信装置200へコマンドを送信する(S014)。
 第1の通信装置100からのコマンドを受信した第2のアクセス制御部230は、そのコマンドの解析を、第2の競合判別部250に委譲する(S015)。第2の競合判別部250は、受け取ったコマンドのコマンドタイプ315(図2参照)を参照し、要求の判別処理を開始する。本例において、第1の通信装置100からから受信したコマンドは、第2の通信装置200が発行した第1の要求と同様に、「接続要求」および「第1の役割」が設定されている。すなわち、第1の通信装置100は、同様に、第1の要求を発行している。このため、第2の競合判別部250は、上述の第1の競合判別部150と同様に、競合状態を検出する(S016)。
 なお、図示はしていないが、第2の競合判別部250は、この時点で第1の通信装置100からの要求に対する応答として、「接続応答」および「拒否」を設定した送信情報を、仮返信してもよい。
 次に、第2の競合判別部250は、第2の役割を所持しているかを確認する(S017)。本例において、第2の通信装置200は、第1の役割のみを発揮可能であるため、役割の変更要求を再発行することができず、そのまま所定の時間待機を行う(S018)。
 第2のアクセス制御部230は、所定の時間内に第1の通信装置100からコマンド(第2の要求)を受信した場合、そのコマンドの解析を、第2の競合判別部250に委譲する(S019)。第2の競合判別部250は、受け取ったコマンドのコマンドタイプ315(図2参照)を参照し、要求の判別処理を開始する。本例において、第1の通信装置100から受信したコマンドは、第2の通信装置200が発行した第1の要求と同様に「接続要求」が設定されているが、かかる第1の要求とは異なり「第2の役割」が設定されている。したがって、第2の競合判別部250は、競合状態が発生していないことを検出し、要求を受諾し(S020)、つまりアクセス要求発行部240に対し第1の通信装置100の要求を受諾させ、応答を行う(S021)。応答を受信した第2のアクセス制御部230は、そのまま、応答のコマンドを、第1の通信装置100に対して送信する(S023)。
 このとき、第2のアクセス制御部230は、既にステップS006において設定された第1の役割から変更が発生しないため、第2の通信装置200の役割を、そのまま、第1の役割に決定する(S022)。
 第2の通信装置200からの応答を受け取った第1のアクセス制御部130は、第1の競合判別部150に応答を通知する。この結果、第1の通信装置100の役割は、第2の役割に決定される(S024)。
 なお、図7において、ステップS001~S003、S015~S018を削除した動作は、第2の通信装置200からの一方的な要求があった場合の動作となる。
 このような動作により、第1の通信装置100および第2の通信装置200は、片方のみが第2の役割を発揮可能である場合に、それぞれの要求を、第1の要求と第2の要求という競合しない組み合わせに帰着させることができる。また、第1の通信装置100および第2の通信装置200は、このような要求の組み合わせの解決を、相手の能力に合致しない要求が一方的にあった場合、または、両方からの要求があり競合していた場合に、行うことができる。なお、図7では、第1の要求が競合した場合の動作を説明したが、第2の要求が競合する場合も、同様となる。
 図8は、上述の第2のパターンにおける、通信システムの動作の一例を示すシーケンス図である。
 第1の通信装置100のステップS014までの動作、および、第2の通信装置200のステップS016までの動作は、図7と同様である。また、本例では、第2の通信装置200も、第2の役割を発揮可能であるため、第1の通信装置100のステップS014までの動作と同じ動作を行う。
 図7で説明した一連の動作と異なるのは、第1の通信装置100および第2の通信装置200が、互いに第1の要求の競合を検知した後に再発行した第2の要求が、再び競合したことを検出する部分である(S401)。
 すなわち、本例では、要求が2回競合することになる。しかしながら、第1の通信装置100および第2の通信装置200は、この時点で互いに第1の役割および第2の役割の両方を有していることを把握することができる。
 このような動作により、第1の通信装置100および第2の通信装置200は、両方の通信装置が2つの役割を発揮可能である場合、第2の要求同士の関係に帰着させることができる。また、第1の通信装置100および第2の通信装置200は、この時点で、互いに双方の役割を発揮可能であることを把握することができる。したがって、第1の通信装置100および第2の通信装置200は、例えば、所定の時間を待機した後に、確実に相手が受け付けることができる役割の要求を再度出すことにより、接続を確立することができる。
 すなわち、第1の通信装置100および第2の通信装置200は、予め互いの発揮可能な役割を何らかの手段を利用して事前に交換することなく、接続を確立することができる。
 図9は、上述の第3のパターンにおける、通信システムの動作の一例を示すシーケンス図である。
 第1のアクセス要求発行部140は、セッション開始のため、第1の要求のコマンドを生成し(S001)、第1のアクセス制御部130へ転送する(S002)。第1のアクセス制御部130は、第1の通信装置100の役割として第1の役割を設定し(S003)、第2の通信装置200へコマンドを送信する。
 このとき、第2のアクセス要求発行部240は、上述の第1の通信装置100の接続開始の要求とほぼ同時に、セッション開始のため、第2の要求のコマンドを生成し(S501)、第2のアクセス制御部230へ転送したとする(S502)。第2のアクセス制御部230は、第2の通信装置200の役割として第2の役割を設定し(S503)、第1の通信装置100へコマンドを送信する。
 第2の通信装置200からのコマンドを受信した第1のアクセス制御部130は、コマンド解析を実施するため、第1の競合判別部150に、受信したコマンドを転送する(S007)。第1の競合判別部150は、受け取ったコマンドのコマンドタイプ315(図2参照)を参照し、要求の判別処理を開始する。本例において、第2の通信装置200から受信したコマンドは、第1の通信装置100が発行した第1の要求と同様に「接続要求」が設定されているが、第1の要求とは異なり「第2の役割」が設定されている。このため、第1の競合判別部150は、第2の通信装置200との間で競合状態が発生していないことを検出する(S008)。そして、第1の競合判別部150は、要求を受諾し(S504)、応答を行う(S505)。
 応答を受信したアクセス制御部130は、そのまま、応答のコマンドを、第2の通信装置200に対して送信する。このとき、アクセス制御部130は、既にステップS003において設定された第1の役割から変更が発生しないため、第1の通信装置100の役割を、そのまま、第1の役割に決定する(S506)。
 同様に、第1の通信装置100からのコマンドを受信した第2のアクセス制御部230は、そのコマンドの解析を実施するため、そのコマンドを、第2の競合判別部250に転送する(S015)。第2の競合判別部250は、受け取ったコマンドのコマンドタイプ315(図2参照)を参照し、要求の判別処理を開始する。本例において、第1の通信装置100から受信したコマンドは、第2の通信装置200が発行した第2の要求と同じ「接続要求」が設定されているが、第2の要求とは異なり「第1の役割」が設定されている。このため、第2の競合判別部250は、第1の通信装置100との間で競合状態が発声していないことを検出する(S016)。そして、第2の競合判別部250は、要求を受諾し(S507)、応答を行う(S508)。
 応答を受信した第2のアクセス制御部230は、そのまま、応答のコマンドを第1の通信装置100に対して送信する。このとき、第2のアクセス制御部230は、既にステップS503」において設定された第2の役割から変更が発生しないため、第2の通信装置200の役割を、そのまま、第2の役割に決定する(S509)。
 この結果、第1の通信装置100および第2の通信装置200は、互いに応答を受信して接続を確立する(S510)。
 このような動作により、第1の通信装置100および第2の通信装置200は、互いの要求が同時に発生した場合においても、要求の内容が相違していれば、そのまま接続を確立することができる。
 以上のように、本実施の形態に係る第1の通信装置100は、自装置が発行した要求と、第2の通信装置200が発行した要求とが競合している場合、発揮可能な役割に応じて他方の役割を発揮する旨の要求を発行することができる。すなわち、本実施の形態に係る第1の通信装置100は、第2の通信装置200との間で要求が競合したときでも、競合しない組み合わせに帰着するように動的に要求を切り替え、役割の解決を図ることができる。これにより、第1の通信装置100は、僅かなステップのみで、第2の通信装置200とのセッションを確立することができる。
 また、以上の説明では、第1の役割および第2の役割という表現を用いて説明を行った。この表現を、例えば、一方をホストとしての役割、他方をデバイスとしての役割として表現した場合、本発明の効果は、以下の通りとなる。
 本発明に係る通信装置は、片方の通信装置のみがホストとしての役割を発揮可能である場合、それぞれの役割を、ホストの要求とデバイスの要求という、競合しない組み合わせに帰着させることができる。このため、本発明に係る通信装置は、そのままセッションの確立を実現することができる。
 また、両方の通信装置がホストとしての役割を発揮可能である場合、本発明に係る通信装置は、ホストの要求同士の関係に帰着させることができる。この場合、ホストとしての役割の要求の競合として解決する必要があるが、この時点で、本発明に係る通信装置は、互いにデバイスとしての役割を発揮可能であることを、把握することができる。よって、本発明に係る通信装置は、予め互いの発揮可能である役割を何らかの手段を利用して事前に交換しておく必要がない。
 また、本発明に係る通信装置は、両方の通信装置がホストとしての役割を有していない場合、互いにホストの要求を出すことができない。このため、本発明に係る通信装置は、互いにホストとしての役割を発揮不可能であることを、タイムアウトの検知などにより、把握することができる。したがって、本発明に係る通信装置は、以降の接続処理の継続が不要であることをそのまま把握することができ、無駄なステップを更に踏むのを回避することができる。
 なお、以上説明した実施の形態では、同時に発行された2つの要求が競合した場合、および、発行した要求が拒否された場合の両方において、発揮可能な役割に応じて他方の役割を発揮する旨の要求を再発行するとしたが、これに限定されない。すなわち、通信装置は、これら2つの場合のいずれか一方の場合においてのみ、発揮可能な役割に応じて他方の役割を発揮する旨の要求を再発行するようにしてもよい。
 2011年7月25日出願の特願2011-162002の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
 本発明は、各通信装置の役割を、少ないステップで決定することができる通信装置、通信方法、および通信プログラムとして有用である。本発明は、例えば、携帯電話機やタブレットなどの携帯機器、および、パーソナルコンピュータに適用することができる。
 100 第1の通信装置
 110、210 通信部
 120、220 データ蓄積部
 130、230 アクセス制御部
 140、240 アクセス要求発行部
 150、250 競合判別部
 200 第2の通信装置

Claims (5)

  1.  データ蓄積部を有し、リモートにある他の装置の前記データ蓄積部へのアクセスを受け入れるデバイスとしての役割と、前記他の通信装置が有するデータ蓄積部にアクセスするホストとしての役割と、の少なくとも一方を発揮可能な通信装置であって、
     前記通信装置が発揮する前記役割を制御するアクセス制御部と、
     前記通信装置が前記発揮可能な役割のうちの1つを発揮する旨の要求を前記他の通信装置に発行するアクセス要求発行部と、
     前記他の通信装置が発行した要求、および前記アクセス要求発行部が発行した要求に対する応答を、前記アクセス制御部を介して取得する取得部と、
     前記アクセス要求発行部が発行した前記要求と、前記他の通信装置が発行した要求とが競合している場合、および、前記アクセス要求発行部が発行した前記要求が拒否された場合の少なくとも一方において、前記発揮可能な役割に応じて他方の役割を発揮する旨の要求を、前記アクセス要求発行部を介して、前記他の通信装置に再発行する競合判別部と、を有する、
     通信装置。
  2.  前記競合判別部は、
     前記他の通信装置が前記2つの役割のうちの1つを発揮する旨の要求が発行され、かつ、前記アクセス要求発行部が発行した前記要求と、前記他の通信装置が発行した前記要求とが競合していないとき、前記アクセス要求発行部に対し、前記他の通信装置の前記要求を受諾させる、
     請求項1に記載の通信装置。
  3.  前記競合判別部は、
     前記アクセス要求発行部が発行した前記要求と、前記他の通信装置が発行した前記要求とが競合し、かつ、他方の役割を前記通信装置が発揮不可能である場合、前記他の通信装置が他方の役割を発揮する旨の要求が発行されるのを待機し、当該要求が発行されたとき、前記アクセス要求発行部に対し、前記他の通信装置の前記要求を受諾させる、
     請求項1に記載の通信装置。
  4.  データ蓄積部を有し、リモートにある他の装置の前記データ蓄積部へのアクセスを受け入れるデバイスとしての役割と、前記他の通信装置が有するデータ蓄積部にアクセスするホストとしての役割と、の少なくとも一方を発揮可能な通信装置における通信方法であって、
     前記他の装置に対し、前記通信装置が前記発揮可能な役割のうちの1つを発揮する旨の要求を前記他の通信装置に発行するステップと、
     前記他の通信装置が発行した要求、および前記要求に対する前記他の通信装置からの応答を取得するステップと、
     発行した前記要求と、前記他の通信装置が発行した要求とが競合しているか否かを判断するステップと、
     発行した前記要求と、前記他の通信装置が発行した前記要求とが競合している場合、および、発行した前記要求が拒否された場合の少なくとも一方において、前記発揮可能な役割に応じて他方の役割を発揮する旨の要求を、前記他の通信装置に再発行するステップと、
     発行された前記要求に対する前記他の通信装置からの応答に応じて、前記通信装置が発揮する前記役割を制御するステップと、から成る、
     通信方法。
  5.  データ蓄積部を有し、リモートにある他の装置の前記データ蓄積部へのアクセスを受け入れるデバイスとしての役割と、前記他の通信装置が有するデータ蓄積部にアクセスするホストとしての役割と、の少なくとも一方を発揮可能な通信装置のコンピュータに実行させる通信プログラムであって、
     前記他の装置に対し、前記通信装置が前記発揮可能な役割のうちの1つを発揮する旨の要求を前記他の通信装置に発行する処理と、
     前記他の通信装置が発行した要求、および前記要求に対する前記他の通信装置からの応答を取得する処理と、
     発行した前記要求と、前記他の通信装置が発行した要求とが競合しているか否かを判断する処理と、
     発行した前記要求と、前記他の通信装置が発行した前記要求とが競合している場合、および、発行した前記要求が拒否された場合の少なくとも一方において、前記発揮可能な役割に応じて他方の役割を発揮する旨の要求を、前記他の通信装置に再発行する処理と、
     発行された前記要求に対する前記他の通信装置からの応答に応じて、前記通信装置が発揮する前記役割を制御する処理と、から成る、
     通信プログラム。
PCT/JP2012/002898 2011-07-25 2012-04-27 通信装置、通信方法、および通信プログラム WO2013014834A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2013525540A JP5844366B2 (ja) 2011-07-25 2012-04-27 通信装置、通信方法、および通信プログラム
US14/122,507 US9319275B2 (en) 2011-07-25 2012-04-27 Communication device, communication method, and communication program
EP12818009.8A EP2704515B1 (en) 2011-07-25 2012-04-27 Communication device, communication method, and communication program
CN201280024218.XA CN103548414B (zh) 2011-07-25 2012-04-27 通信装置和通信方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011162002 2011-07-25
JP2011-162002 2011-07-25

Publications (1)

Publication Number Publication Date
WO2013014834A1 true WO2013014834A1 (ja) 2013-01-31

Family

ID=47600712

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/002898 WO2013014834A1 (ja) 2011-07-25 2012-04-27 通信装置、通信方法、および通信プログラム

Country Status (5)

Country Link
US (1) US9319275B2 (ja)
EP (1) EP2704515B1 (ja)
JP (1) JP5844366B2 (ja)
CN (1) CN103548414B (ja)
WO (1) WO2013014834A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014203441A1 (ja) * 2013-06-18 2014-12-24 パナソニック株式会社 無線通信装置、無線通信方法、および無線通信制御プログラム
JP2015220724A (ja) * 2014-05-21 2015-12-07 健二 小國 情報伝播方法、情報伝播プログラム及び情報伝播システム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11804970B2 (en) * 2021-10-15 2023-10-31 Lenovo Global Technology (United States) Inc. Baseboard management controller group administration

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001245225A (ja) * 2000-02-29 2001-09-07 Toshiba Corp 双方向通信回線を利用した機器間接続システム
JP2004032552A (ja) * 2002-06-27 2004-01-29 Uniden Corp 通信端末装置、通信システム及びプログラム
JP2007215240A (ja) * 2007-05-07 2007-08-23 Canon Inc ネットワーク形成方法及び通信装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001017245A1 (fr) 1999-08-27 2001-03-08 Kabushiki Kaisha Toshiba Systeme d'interconnexion d'appareils via une ligne analogique
FR2829649B1 (fr) * 2001-09-13 2004-01-30 Cit Alcatel Passerelle protocolaire entre un terminal h.323 et un autre terminal, sans mise en oeuvre du role de maitre
FI114245B (fi) * 2002-11-13 2004-09-15 Nokia Corp Synkronointi-istunnon järjestäminen
US20070129052A1 (en) * 2005-11-23 2007-06-07 Dilithium Networks Pty Ltd. Methods and system for fast session establishment for H.324 and related telecommunications terminals
US20060072525A1 (en) 2004-09-23 2006-04-06 Jason Hillyard Method and system for role management for complex bluetooth® devices
JP4829600B2 (ja) * 2005-11-28 2011-12-07 キヤノン株式会社 通信装置及び通信装置の制御方法
US7996496B2 (en) * 2008-08-29 2011-08-09 Sony Ericsson Mobile Communications Ab Remote user interface in multiphone environment
JP5564774B2 (ja) * 2008-09-24 2014-08-06 ソニー株式会社 情報処理装置および方法、並びに、プログラム
CN201387666Y (zh) * 2009-02-27 2010-01-20 上海宝康电子控制工程有限公司 带主从机冲突检测的交通控制系统
JP5705415B2 (ja) 2009-04-06 2015-04-22 ソニー株式会社 無線通信装置、通信システム、通信方法及びプログラム
JP5343841B2 (ja) * 2009-12-22 2013-11-13 ソニー株式会社 無線通信装置、無線通信方法、プログラム、および無線通信システム
WO2013128499A1 (ja) * 2012-02-27 2013-09-06 パナソニック株式会社 マスタ装置、通信システム及び通信方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001245225A (ja) * 2000-02-29 2001-09-07 Toshiba Corp 双方向通信回線を利用した機器間接続システム
JP2004032552A (ja) * 2002-06-27 2004-01-29 Uniden Corp 通信端末装置、通信システム及びプログラム
JP2007215240A (ja) * 2007-05-07 2007-08-23 Canon Inc ネットワーク形成方法及び通信装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2704515A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014203441A1 (ja) * 2013-06-18 2014-12-24 パナソニック株式会社 無線通信装置、無線通信方法、および無線通信制御プログラム
US9357575B2 (en) 2013-06-18 2016-05-31 Panasonic Corporation Wireless communication device, wireless communication method, and wireless communication control program
JPWO2014203441A1 (ja) * 2013-06-18 2017-02-23 パナソニック株式会社 無線通信装置、無線通信方法、および無線通信制御プログラム
JP2015220724A (ja) * 2014-05-21 2015-12-07 健二 小國 情報伝播方法、情報伝播プログラム及び情報伝播システム

Also Published As

Publication number Publication date
EP2704515A1 (en) 2014-03-05
EP2704515B1 (en) 2017-05-31
JP5844366B2 (ja) 2016-01-13
EP2704515A4 (en) 2015-01-07
CN103548414A (zh) 2014-01-29
JPWO2013014834A1 (ja) 2015-02-23
CN103548414B (zh) 2017-12-19
US20140082163A1 (en) 2014-03-20
US9319275B2 (en) 2016-04-19

Similar Documents

Publication Publication Date Title
JP5726240B2 (ja) 無線インターネットアクセス装置、sd制御チップ、及びデータ通信の方法
US10901638B2 (en) Cascading board and SSD shared remote access system and method
TWI430097B (zh) 資訊處理設備、資訊處理系統、資訊處理方法及電腦程式
KR101495989B1 (ko) 메모리 디바이스 및 그 무선 통신 제어 방법
US20060097061A1 (en) Memory card authentication system, capacity switching-type memory card host device, capacity switching-type memory card, storage capacity setting method, and storage capacity setting program
US20150105015A1 (en) Method, Apparatus, and Terminal Device for Near Field Communication Radio Frequency Communication
EP2077025A2 (en) Device with an eeprom having both a near field communication interface and a second interface
JP5844366B2 (ja) 通信装置、通信方法、および通信プログラム
BR122018006744B1 (pt) Método e aparelho de identificação de etiqueta
TW201701194A (zh) 多頻率轉頻器
JP5570665B2 (ja) デバイス装置、アクセス装置、アクセスシステム、及び、通信確立方法
TW201347438A (zh) 整合無線通訊元件的記憶體模組、裝置與運作方法
US20100180061A1 (en) Interface control device
JP5293231B2 (ja) Icチップ及びicカード及び発行装置及び発行方法及び発行システム
EP2924955A1 (en) Apparatus, communication control system, and communication control method
WO2022070557A1 (ja) 情報処理装置、情報処理システム、接続制御方法、及び接続制御プログラムを格納する非一時的なコンピュータ可読媒体
US20160119579A1 (en) Communication apparatus, method for controlling communication apparatus, and storage medium
WO2014057596A1 (ja) 無線通信装置、無線通信方法、および無線通信制御プログラム
WO2013168337A1 (ja) デバイス装置、アクセスシステム、及び、通信確立方法
JP5600740B2 (ja) 応答装置とその集積回路、応答方法、および応答システム
TWI493379B (zh) 資料儲存裝置及其操作方法
CN112351404B (zh) 一种蓝牙连接方法、装置及车机
JP7312022B2 (ja) 通信装置、及び、通信方法
JP6785009B2 (ja) 通信装置、及び、通信装置の制御方法
KR20110068386A (ko) 반도체 시스템과 그 동작 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12818009

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013525540

Country of ref document: JP

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2012818009

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14122507

Country of ref document: US

Ref document number: 2012818009

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE