WO2015083320A1 - 通信端末、通信方法および通信プログラム - Google Patents

通信端末、通信方法および通信プログラム Download PDF

Info

Publication number
WO2015083320A1
WO2015083320A1 PCT/JP2014/005543 JP2014005543W WO2015083320A1 WO 2015083320 A1 WO2015083320 A1 WO 2015083320A1 JP 2014005543 W JP2014005543 W JP 2014005543W WO 2015083320 A1 WO2015083320 A1 WO 2015083320A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
communication
communication interface
name resolution
address
Prior art date
Application number
PCT/JP2014/005543
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 JP2015551373A priority Critical patent/JPWO2015083320A1/ja
Priority to US15/038,793 priority patent/US9942823B2/en
Publication of WO2015083320A1 publication Critical patent/WO2015083320A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/189Arrangements for providing special services to substations for broadcast or conference, e.g. multicast in combination with wireless systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/106Mapping addresses of different types across networks, e.g. mapping telephone numbers to data network addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/18Selecting a network or a communication service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • H04W52/0238Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal where the received signal is an unwanted signal, e.g. interference or idle signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • Patent Document 1 discloses a route or a line in which a device that is a transmission source transmits a route investigation frame to a plurality of routes that communicate with a transmission destination, and a route that is first received at the transmission destination, a route or a line that has a small number of retries A path control method for determining a path to be used by determining a path with a small load is described.
  • an object of the present invention is to provide a communication terminal, a communication method, and a communication program capable of selecting a communication interface corresponding to a communicable wireless network without using a dedicated packet for route determination. .
  • FIG. 2 is a block diagram illustrating a configuration example of the communication terminal according to the first embodiment of this invention.
  • the communication terminal 1 includes a plurality of communication interfaces 11, a data exchange unit 12, a communication software basic unit 13, a communication processing unit 15, and a control unit 14.
  • the communication interface 11 is connected to the communication processing unit 15.
  • the communication software basic unit 13 is connected to the data transfer unit 12, the communication processing unit 15, and the control unit 14.
  • the control unit 14 is connected to the communication processing unit 15.
  • the control unit 14 and the communication processing unit 15 may not be directly connected.
  • the control unit 14 and the communication processing unit 15 may be connected via the communication software basic unit 13. In the present embodiment, a case where the control unit 14 and the communication processing unit 15 are directly connected will be described as an example.
  • control unit 14 rewrites a communication processing rule that specifies that the source address in the header is rewritten to the address of the communication interface 11a and is sent to the communication interface 11a.
  • the control unit 14 may change the rule for determining the communication interface 11 to which the packet from the communication processing unit 15 is sent. For example, when the packet P is transmitted from the communication interface 11 determined as the destination of the packet from the communication processing unit 15 and the packet Q corresponding to the packet P is received by the communication interface 11, the control unit 14 The priority for selecting the communication interface 11 may be increased. In the present embodiment, a case where such a rule change is performed will be described as an example. However, the control unit 14 may update the rules based on other criteria.
  • FIG. 3 is a flowchart showing an example of processing progress when a packet can be conducted through the wireless network 2a (see FIG. 1).
  • the control unit 14 receives the packet P from the communication processing unit 15 (step S1040).
  • the control unit 14 determines whether or not the packet P is input from the communication software basic unit 13 to the communication processing unit 15 and determines that the packet P is a transmission packet (a packet transmitted from the communication terminal 1 to the outside). ) Is determined (step S1041).
  • step S1041 If the packet P is not a transmission packet (No in step S1041), the process ends.
  • control unit 14 sets the communication processing rule for the packet having the same header as the packet P (packet P before rewriting) and the communication processing rule for the packet having the same header as the packet Q to the communication processing unit 15. Setting is performed (step S1135).
  • control unit 14 discards the packet P ′ stored in step S1043 (step S1136).
  • FIG. 6 is a flowchart showing an example of processing progress when a packet cannot be conducted through the wireless network 2a (see FIG. 1) and a packet can be conducted through the wireless network 2b (see FIG. 1).
  • Steps S101 to S106 are the same as steps S101 to S106 shown in FIG. In FIG. 6, illustration of steps S101 to S103 is omitted.
  • the wireless network 2a When the communication interface 11a outputs the packet P to the wireless network 2a in step S106, the wireless network 2a is in a state incapable of conduction, and therefore the packet P does not reach the server 4. Therefore, the server 4 does not transmit the packet Q.
  • step S104 the control unit 14 instructs the communication processing unit 15 to transmit the packet P 'from another communication interface when the packet is not input even after the time T (step S151).
  • FIG. 7 is a flowchart showing an example of the processing progress of step S151.
  • the name resolution server 5 is a domain name service (Domain Name Service: DNS) server, for example.
  • DNS Domain Name Service
  • the name resolution server 5 is not limited to the domain name service server.
  • the communication software basic unit 13 receives the name resolution server 5 address and name resolution request data from the name resolution unit 17. Then, the communication software basic unit 13 generates a name resolution request packet (N) from the name resolution request data. The communication software basic unit 13 uses the address of the communication processing unit 15 as the source address of the name resolution request packet N, and uses the address of the name resolution server 5 designated by the name resolution unit 17 as the destination of the name resolution request packet N Address. The communication software basic unit 13 sends a name resolution request packet N to the communication processing unit 15.
  • control unit 14 uses the name resolution request packet N and the name resolution response packet M to check the continuity of the wireless network 2. Then, the control unit 14 performs control for making the name resolution request packet N conductive.
  • the name resolution server 5 When the name resolution server 5 receives the name resolution request packet N, the name resolution server 5 transmits a name resolution response packet M corresponding to the name resolution request packet N to the communication terminal 1.
  • the control unit 14 If the name resolution response packet M is not input to the control unit 14 by time T, the control unit 14 is connected to the communication interface 11a that is the destination of the name resolution request packet N from the communication processing unit 15. It is determined that the network 2a cannot conduct. Then, the control unit 14 rewrites the source address in the stored name resolution request packet N ′ to the address of the other communication interface 11b, and sends the name resolution request packet N ′ to the communication interface 11b to the communication processing unit 15. Instruct.
  • the communication software basic unit 13 determines the address of the communication processing unit 15 as the source address of the name resolution request packet according to the communication transfer rule. This operation is the same as in the first embodiment.
  • the communication software basic unit 13 includes a name resolution request packet N having a header including the transmission source address and a header including the address of the name resolution server 5a designated by the name resolution unit 17 as a transmission destination address. Generate based on The communication software basic unit 13 sends the name resolution request packet N to the communication processing unit 15 (step S202).
  • the wireless network 2a is in a state where packets can be conducted, and the name resolution request packet N is transmitted to the name resolution server 5a. Then, the name resolution server 5 a transmits a name resolution response packet M corresponding to the name resolution request packet N to the transmission source of the name resolution request packet N. As a result, the name resolution response packet M is transmitted to the communication terminal 1 via the wireless network 2a and received by the communication interface 11a.
  • the communication processing unit 15 collates the name resolution response packet M input from the communication interface 11a with the communication processing rule, and there is no communication processing rule that matches the name resolution response packet M, or the communication processing unit 15 If the name resolution response packet M matches the communication processing rule defining the packet transfer, the name resolution response packet M is sent to the control unit 14 (step S212). In this example, a case where there is no communication processing rule that matches the name resolution response packet M will be described as an example.
  • the communication software basic unit 13 extracts name resolution response data from the name resolution response packet M input from the communication processing unit 15 and sends the name resolution response data to the name resolution unit 17 (step S215).
  • the name resolution unit 17 acquires the name resolution response data transmitted from the name resolution server 5a, and sends the name resolution response data to the data transfer unit 12 (step S216).
  • the data sending / receiving unit 12 can send the data to the communication software basic unit 13 and specify the address of the server 4 by inputting the name resolution response data. Then, the communication software basic unit 13 generates a packet whose destination is the address of the server 4 and sends it to the communication processing unit 15. When this packet is input from the communication processing unit 15 to the control unit 14, the control unit 14 selects the communication interface 11a according to the rule defined in step S2136. Then, the control unit 14 instructs the communication processing unit 15 to send the packet to the communication interface 11a. Therefore, the packet is transmitted to the server 4 via the wireless network 2a that can be conducted.
  • FIG. 14 is a flowchart showing an example of processing progress when a packet cannot be conducted through the wireless network 2a and a packet can be conducted through the wireless network 2b.
  • Steps S201 to S206 are the same as steps S201 to S206 shown in FIG. In FIG. 14, illustration of steps S201 to S203 is omitted.
  • the communication interface 11a When the communication interface 11a outputs the name resolution request packet N to the wireless network 2a in step S206, the wireless network 2a cannot be connected, and therefore the name resolution request packet N does not reach the name resolution server 5a. Therefore, the name resolution server 5a does not transmit the name resolution response packet M.
  • step S204 the control unit 14 instructs the communication processing unit 15 to transmit the name resolution request packet N ′ from another communication interface when the name resolution response packet M is not input after the time T.
  • Step S251 the control unit 14 instructs the communication processing unit 15 to transmit the name resolution request packet N ′ from another communication interface when the name resolution response packet M is not input after the time T.
  • FIG. 15 is a flowchart illustrating an example of the processing progress of step S251.
  • step S2513 If the two addresses do not match (No in step S2513), the control unit 14 sets the destination address of the name resolution request packet N ′ as the name resolution server corresponding to the communication interface 11b determined in step S2512. The communication processing unit 15 is instructed to rewrite the address 5b (step S2514). After step S2514, the process proceeds to step S2515.
  • the communication interface 11b outputs the name resolution request packet N ′ input from the communication processing unit 15 to the wireless network 2b (step S253).
  • the wireless network 2b is in a state where packets can be conducted, and the name resolution request packet N 'is transmitted to the name resolution server 5b. Then, the name resolution server 5b transmits a name resolution response packet M corresponding to the name resolution request packet N 'to the transmission source of the name resolution request packet N'. As a result, the name resolution response packet M is transmitted to the communication terminal 1 via the wireless network 2b and received by the communication interface 11b.
  • FIG. 17 is a flowchart illustrating an example of processing progress of the third embodiment. Steps S301 to S303 are the same as steps S101 to S103 in the first embodiment, and a description thereof will be omitted.
  • Step S3040 The packet P is input from the communication processing unit 15 to the control unit 14 (step S3040).
  • the control unit 14 determines whether or not the packet P is input from the communication software basic unit 13 to the communication processing unit 15 and determines whether or not the packet P is a transmission packet (step).
  • Step S3041 is the same processing as step S1041 in the first embodiment.
  • the third embodiment may be applied to the second embodiment.
  • the packet processing means 95 (for example, the communication processing unit 15) sends a packet to the instructed communication interface.
  • the control means When a response packet (for example, name resolution response packet) that is a response to the packet output from the selected communication interface is transmitted from the name resolution server, the control means includes the name included in the response packet. Appendix 3 selects the communication interface that received the response packet when the address of the device to be resolved (for example, the address of the server 4) is extracted and a packet having the address as a transmission destination address is generated The communication terminal described.
  • a response packet for example, name resolution response packet
  • the control means includes the name included in the response packet.
  • Appendix 3 selects the communication interface that received the response packet when the address of the device to be resolved (for example, the address of the server 4) is extracted and a packet having the address as a transmission destination address is generated The communication terminal described.
  • the control unit selects a communication interface according to the rule, instructs the packet processing unit to send the packet generated by the packet generation unit to the communication interface, and the response packet serving as a response to the packet is timed out.
  • the communication method according to any one of appendix 7 to appendix 11, wherein the rule is updated when input is made before the determination reference time.
  • state storage means for example, state storage unit 18
  • the communication program according to any one of supplementary note 13 to supplementary note 16, wherein when a management interface is executed and a communication interface is selected in the control process, a determination criterion time for timeout is determined based on a state of the communication interface.

Abstract

 経路決定のための専用パケットを用いることなく、通信可能な無線ネットワークに対応する通信インタフェースを選択することができる通信端末を提供する。パケット生成手段93は、宛先となる装置からサービスの提供を受けるためのデータに基づいてパケットを生成する。制御手段94は、複数の通信インタフェース91の中から1つの通信インタフェース91を選択し、パケット生成手段93によって生成されたパケットをその通信インタフェース91に送ることをパケット処理手段95に指示し、パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力されない場合、その通信インタフェース91とは異なる通信インタフェース91を選択し、そのパケットのコピーをその通信インタフェース91に送ることをパケット処理手段95に指示する。

Description

通信端末、通信方法および通信プログラム
 本発明は、通信端末、通信方法および通信プログラムに関し、特に、複数の無線ネットワークに接続可能な通信端末、およびその通信端末に適用される通信方法および通信プログラムに関する。
 携帯電話機やスマートフォン等に代表される通信端末には、複数の異なる無線通信方式の通信インタフェースが搭載される。例えば、無線LAN(Local Area Network)に対応する通信インタフェース、および、LTE(Long Term Evolution )に対応する通信インタフェースが通信端末に搭載される場合等がある。
 また、特許文献1には、送信元となる装置が送信先に通じる複数の経路に経路調査フレームを送信し、送信先で先に経路調査フレームが受信された経路、リトライ回数の少ない経路あるいは回線負荷の少ない経路を判断し、使用する経路を決定する経路制御方法が記載されている。
 また、特許文献2には、ベース側の装置と、リモート側の装置とを備え、ベース側の装置が、リモート側が属するグループIDおよびリモート側の固有IDを送信し、リモート側からの応答信号の有無を検出することによって、通信路をサーチする構成が記載されている。なお、リモート側が属するグループIDおよびリモート側の固有IDは、例えば、ベース側の装置のオペレータによって入力される。
 また、特許文献3には、ネゴシエーション用パケットを送信し、そのネゴシエーション用パケットへの応答を規定時間内に受信しない場合に、通信条件を変更する通信装置が記載されている。
特開2001-136178号公報(要約等) 特開平5-268194号公報(段落0025-0027等) 特開2007-184836号公報(段落0033-0036等)
 特に無線LANの場合等に、通信路が確立されていても、実際には通信端末が通信を行えないことがある。この原因は、多くの場合、無線LANアクセスポイントと通信端末との間の無線区間で電波チャネルが混雑したり、電波干渉の影響を受けたりして、通信が阻害されるためである。すなわち、無線通信路の通信伝送品質が悪いことが原因で、パケットが導通しない現象が発生する。このとき、通信端末のユーザが、無線ネットワークを介してサービスの提供を受ける場合、良好にサービスを受けられなくなる。
 特許文献1に記載の技術では、送信元となる装置が送信先に通じる複数の経路に経路調査フレームを送信し、無線通信路の通信伝送品質を測定し、使用する経路を決定する。このように、経路調査フレームを用いて通信伝送品質を測定し続けることで、ほぼ確実に宛先にパケットを伝送することができる。しかし、特許文献1に記載の技術では、通信端末がサービス等を受けるために宛先に送信すべきデータを含むパケットとは別に、経路決定のための専用パケット(経路調査フレーム)を送受信する必要がある。そのため、経路決定のための専用パケットの送受信により、通信効率や電力効率が悪化するという問題があった。
 特許文献2に記載の技術における「リモート側が属するグループIDおよびリモート側の固有ID」の送受信も、経路決定のための専用データの送受信に該当し、上記と同様の問題が生じる。特許文献3のネゴシエーション用パケットの送受信に関しても同様である。
 そこで、本発明は、経路決定のための専用パケットを用いることなく、通信可能な無線ネットワークに対応する通信インタフェースを選択することができる通信端末、通信方法および通信プログラムを提供することを目的とする。
 本発明による通信端末は、それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する複数の通信インタフェースと、宛先となる装置からサービスの提供を受けるためのデータに基づいてパケットを生成するパケット生成手段と、指示された通信インタフェースに対してパケットを送るパケット処理手段と、複数の通信インタフェースの中から1つの通信インタフェースを選択し、パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、そのパケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力されない場合、その通信インタフェースとは異なる通信インタフェースを選択し、そのパケットのコピーを当該通信インタフェースに送ることをパケット処理手段に指示する制御手段とを備えることを特徴とする。
 また、本発明による通信方法は、それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する複数の通信インタフェースを備える通信端末に適用される通信方法であって、パケット生成手段が、宛先となる装置からサービスの提供を受けるためのデータに基づいてパケットを生成し、制御手段が、複数の通信インタフェースの中から1つの通信インタフェースを選択し、パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、そのパケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力されない場合、その通信インタフェースとは異なる通信インタフェースを選択し、そのパケットのコピーを当該通信インタフェースに送ることをパケット処理手段に指示し、パケット処理手段が、制御手段の指示に従ってパケットを、制御手段によって選択された通信インタフェースに送ることを特徴とする。
 また、本発明による通信プログラムは、それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する通信インタフェースと、指示された通信インタフェースに対してパケットを送るパケット処理手段を備えるコンピュータに搭載される通信プログラムであって、コンピュータに、宛先となる装置からサービスの提供を受けるためのデータに基づいてパケットを生成するパケット生成処理、および、複数の通信インタフェースの中から1つの通信インタフェースを選択し、パケット生成処理で生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、そのパケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力されない場合、その通信インタフェースとは異なる通信インタフェースを選択し、そのパケットのコピーを当該通信インタフェースに送ることをパケット処理手段に指示する制御処理を実行させることを特徴とする。
 本発明によれば、経路決定のための専用パケットを用いることなく、通信可能な無線ネットワークに対応する通信インタフェースを選択することができる。
本発明の第1の実施形態の通信端末を含む通信システムを示す模式図である。 本発明の第1の実施形態の通信端末の構成例を示すブロック図である。 無線ネットワーク2aをパケットが導通可能である場合における処理経過の例を示すフローチャートである。 ステップS104の処理経過の例を示すフローチャートである。 ステップS113の処理経過の例を示すフローチャートである。 無線ネットワーク2aをパケットが導通不可能であり、無線ネットワーク2bをパケットが導通可能である場合における処理経過の例を示すフローチャートである。 ステップS151の処理経過の例を示すフローチャートである。 本発明の第2の実施形態の通信端末を含む通信システムを示す模式図である。 本発明の第2の実施形態の通信端末の構成例を示すブロック図である。 無線ネットワーク2aをパケットが導通可能である場合における処理経過の例を示すフローチャートである。 ステップS204の処理経過の例を示すフローチャートである。 ステップS204の処理経過の例を示すフローチャートである。 ステップS213の処理経過の例を示すフローチャートである。 無線ネットワーク2aをパケットが導通不可能であり、無線ネットワーク2bをパケットが導通可能である場合における処理経過の例を示すフローチャートである。 ステップS251の処理経過の例を示すフローチャートである。 本発明の第3の実施形態の通信端末の構成例を示すブロック図である。 第3の実施形態の処理経過の例を示すフローチャートである。 ステップS304の処理経過の例を示すフローチャートである。 本発明の通信端末の主要部を示すブロック図である。
 以下、本発明の実施形態を図面を参照して説明する。
 実施形態1.
 図1は、本発明の第1の実施形態の通信端末を含む通信システムを示す模式図である。図1に示すサーバ4は、本発明の通信端末1との間でパケットを送受信することで、予め定められたサービスを提供する。このサービスの内容は特に限定されない。サーバ4は、複数存在していてもよい。
 通信端末1は、複数の無線ネットワーク2と無線によって接続される。図1では、通信端末1が2つの無線ネットワーク2a,2bに接続される場合を例示しているが、通信端末1に接続される無線ネットワーク2の数は、特に限定されない。なお、無線ネットワーク2a,2bを特に区別する必要がない場合には、「無線ネットワーク2」と記す。無線ネットワーク2は、有線ネットワーク3と直接的または間接的に接続される。サーバ4は、有線ネットワーク3と直接的または間接的に接続される。
 通信端末1は、例えば、携帯電話機、スマートフォン、タブレット端末およびパーソナルコンピュータ等である。ただし、通信端末1は、これらの例に限定されない。
 無線ネットワーク2は、例えば、無線LAN、UTRAN(Universal Terrestrial Radio Access Network)、E-UTRAN(Evolved Universal Terrestrial Radio Access Network)等であるが、上記以外の無線ネットワークであってもよい。
 有線ネットワーク3は、例えば、インターネットであるが、インターネットに限定されない。
 サーバ4は、例えば、Webサーバであるが、Webサーバに限定されない。
 図2は、本発明の第1の実施形態の通信端末の構成例を示すブロック図である。通信端末1は、複数の通信インタフェース11と、データ授受部12と、通信ソフトウェア基本部13と、通信処理部15と、制御部14とを備える。通信インタフェース11は、通信処理部15に接続される。通信ソフトウェア基本部13は、データ授受部12、通信処理部15および制御部14に接続される。制御部14は、通信処理部15に接続される。なお、制御部14と通信処理部15は直接接続されていなくてもよい。例えば、通信ソフトウェア基本部13を介して制御部14と通信処理部15とが接続されていてもよい。本実施形態では、制御部14と通信処理部15が直接接続される場合を例にして説明する。
 通信インタフェース11は、無線ネットワーク2を介して外部と通信を行う。1つの通信インタフェース11は、少なくとも1つの無線ネットワーク2に対応する。通信インタフェース11は、通信処理部15から入力されたパケットを無線ネットワーク2に出力する。また、通信インタフェース11は、無線ネットワーク2から入力されたパケットを通信処理部15に送る。なお、本実施形態では、通信端末1が2つの通信インタフェース11a,11bを備え、通信インタフェース11aが無線ネットワーク2aに対応し、通信インタフェース11bが無線ネットワーク2bに対応するものとして説明する。通信インタフェース11a,11bを特に区別する必要がない場合には、「通信インタフェース11」と記す。通信端末1は、3つ以上の通信インタフェース11を備えていてもよい。
 通信インタフェース11は、例えば、無線LANモジュールや無線モデムモジュールであるが、これらの例に限定されない。
 データ授受部12は、通信ソフトウェア基本部13に通信プロトコルおよび宛先を指定し、通信ソフトウェア基本部13との間でデータを授受する。このデータに基づいて通信ソフトウェア基本部13がパケットを生成し、通信端末1はサーバ4とパケットを送受信することによって、サーバ4との間でデータをやり取りする。また、データ授受部12は、通信プロトコルの種別によっては、通信ソフトウェア基本部13に対し、サーバ4との間でパケットを送受信するための接続処理を指示する。
 データ授受部12は、例えば、Webブラウザ等のプログラムに従って動作するコンピュータのCPUによって実現される。例えば、通信端末は、プログラムを記憶するプログラム記憶装置(図示略)を備え、CPUは、プログラム記憶装置からプログラムを読み込んで、そのプログラムに従って、データ授受部12として動作すればよい。CPUにデータ授受部12としての機能を実現させるプログラムはWebブラウザに限定されず、他のプログラムであってもよい。
 通信ソフトウェア基本部13は、データ授受部12から入力されたデータに基づいて、パケットを生成する。また、サーバ4から受信したパケットが通信ソフトウェア基本部13に入力された場合、通信ソフトウェア基本部13はそのパケットからデータを抽出して、データ授受部12に送る。
 ここで、データ授受部12が通信ソフトウェア基本部13に送るデータは、宛先となる装置(本実施形態ではサーバ4)からサービスの提供を受けるためのデータ(すなわち、サーバ4が提供するサービスを受けるためのデータ)である。以下、宛先となる装置からサービスを受けるためのデータを実データと記す場合がある。そして、通信ソフトウェア基本部13は、実データを含むパケットを生成する。従って、通信ソフトウェア基本部13が生成するパケットは、特許文献1に記載されている経路調査フレーム(経路決定用の専用パケット)とは異なる。本発明の通信端末1は、宛先となる装置からサービスの提供を受けるための実データを含むパケットを用いて、パケットが導通可能な無線ネットワーク2(より具体的には、パケットが導通可能な無線ネットワーク2に対応する通信インタフェース11)を特定する。
 通信ソフトウェア基本部13は、データ授受部12からデータ(実データ)を入力されると、通信ソフトウェア基本部13に予め設定されている通信転送ルールに従って送信元アドレスを決定する。そして、通信ソフトウェア基本部13は、データ授受部12から入力されたデータに基づいて、その送信元アドレスと、データ授受部12によって指定された送信先アドレスとをヘッダ内に含むパケットを生成する。通信ソフトウェア基本部13は、生成したパケットを、通信転送ルールに従って通信処理部15に送る。本実施形態では、通信転送ルールのデフォルト設定において、通信ソフトウェア基本部13は生成したパケットを通信処理部15に送ることが定められているものとする。
 また、通信ソフトウェア基本部13は、サーバ4との間でパケットを送受信するための接続処理をデータ授受部12によって指示された場合、前述の送信元アドレスおよび送信先アドレスをヘッダ内に含むパケットを、通信処理部15を介して、サーバ4に送信する。このパケット送信によって、サーバ4との接続のための手続を実現する。
 通信ソフトウェア基本部13は、例えば、オペレーティングシステムのカーネルに実装されているTCP(Transmission Control Protocol)/IP(Internet Protocol)スタックに従って動作するコンピュータのCPUによって実現される。例えば、CPUは、プログラム記憶装置(図示略)からプログラム(上記の例ではTCP/IPスタック)を読み込んで、そのプログラムに従って、通信ソフトウェア基本部13として動作すればよい。また、通信ソフトウェア基本部13に設定される通信転送ルールは、例えば、IPルーティング設定である。また、宛先との接続処理が必要とされるプロトコルとして、例えばTCPが挙げられるが、TCP以外のプロトコルが用いられてもよい。
 制御部14は、通信ソフトウェア基本部13に生成されたパケット、およびそのパケットに対する応答としてサーバ4から送信されるパケットを利用して、無線ネットワーク2の導通性を確認する。そして、制御部14は、通信ソフトウェア基本部13に生成されたパケットを導通させる制御を行う。制御部14は、通信処理部15に対して通信処理ルールを設定する。通信処理ルールは、条件に合致するパケットに対する処理内容を規定したルールである。
 制御部14は、パケットに対する通信処理を決定する。「通信処理を決定する」とは、具体的には、パケットの送り先となる通信端末1内の機能ブロックと、書き換えるべきパケットヘッダのフィールドと、パケットヘッダの値を決定することを意味する。
 通信ソフトウェア基本部13によって生成されサーバ4宛に送信するパケットに対する通信処理を決定する場合、制御部14は、以下の処理を行う。制御部14は、通信ソフトウェア基本部13を参照し、通信インタフェース11のアドレスを取得する。制御部14は、通信ソフトウェア基本部13から通信処理部15に入力されたパケット(Pとする。)が制御部14に入力されたことを判別して、そのパケットPが送信パケット(通信端末1が外部に送信するパケット)であることを判別する。そして、制御部14は、そのパケットの送信に用いる通信インタフェース11を決定する。本例では、通信処理部15からのパケットの送り先として、通信インタフェース11aを決定する場合を例にして説明する。さらに、制御部14は、パケットPのコピーであるパケット(P’とする。)を保存するとともに、現在時刻に所定の時間tを加算した時刻(Tとする。)の情報を保存する。時刻Tは、タイムアウトの判定基準となる時刻である。そして、制御部14は、通信処理部15に対して、パケットPの通信処理の実行を指示する。制御部14は、通信インタフェース11aを使用することを決定したので、パケットPのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、パケットPを通信インタフェース11aに送ることを通信処理部15に指示する。
 制御部14は、通信処理部15からのパケットの送り先となる通信インタフェース11を、例えば、所定の規則に従って決定してもよい。
 制御部14は、通信処理部15に対して、個別に通信処理の実行を指示してもよい。あるいは、制御部14は、通信処理部15に対して通信処理ルールを設定することにより、通信処理の実行を指示してもよい。
 サーバ4は、パケットPを受信すると、パケットPに対応するパケット(Qとする。)を通信端末1に送信する。パケットQは、保存されているパケットP’に対応するパケットであると言うこともできる。
 時刻TまでにパケットQが通信処理部15から制御部14に入力されると、制御部14は、パケットP’と同じヘッダを持つパケット(すなわち、書き換え前のパケットPと同じヘッダを持つパケット)に対する通信処理ルールと、パケットQと同じヘッダを持つパケットに対する通信処理ルールを、それぞれ通信処理部15に設定する。以下、「パケットP’と同じヘッダを持つパケット」を、「パケットPと同じヘッダを持つパケット」と記す。
 制御部14は、パケットPと同じヘッダを持つパケットに対する通信処理として、例えば、ヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、通信インタフェース11aに送ることを規定した通信処理ルールを通信処理部15に設定する。
 また、制御部14は、パケットQと同じヘッダを持つパケットに対する通信処理として、例えば、ヘッダ内の送信先アドレスを通信処理部15のアドレスに書き換え、通信ソフトウェア基本部13に送ることを規定した通信処理ルールを通信処理部15に設定する。
 パケットPと同じヘッダを持つパケットに対する通信処理ルール、および、パケットQと同じヘッダを持つパケットに対する通信処理ルールを通信処理部15に設定する場合、制御部14は、保存しているパケットP’を破棄してもよい。
 また、制御部14は、通信処理部15に対して、個別に通信処理の実行を指示してもよい。この場合、パケットQと同じヘッダを持つパケットが制御部14に入力される毎に、制御部14は、上記の通信処理ルールで示した内容と同内容の通信処理の実行を、通信処理部15に対して個別に指示すればよい。
 制御部14は、入力されたパケットが、パケットP’に対応するパケットQであるか否かを、以下のように判別すればよい。すなわち、制御部14は、入力されたパケットが、パケットPを送信した通信インタフェース11aで受信されたパケットであり、かつ、そのパケットのヘッダの一部が、保存しているパケットP’のヘッダの一部と一致するという条件を満たしていれば、制御部14は、入力されたパケットが、パケットP’に対応するパケットQであると判別する。この条件を満たしていなければ、制御部14は、入力されたパケットは、パケットP’に対応していないと判別する。
 また、パケットQが通信インタフェース11aで受信された場合、制御部14は、通信処理部15からのパケットの送り先となる通信インタフェース11を決定するための規則を変更してもよい。例えば、通信処理部15からのパケットの送り先として決定した通信インタフェース11からパケットPを送信し、パケットPに対応するパケットQがその通信インタフェース11で受信された場合、制御部14は、規則において、その通信インタフェース11を選択する優先度を上昇させてもよい。本実施形態では、このような規則の変更を行う場合を例にして説明する。ただし、制御部14は、他の基準で規則を更新してもよい。例えば、制御部14は、パケットPの送信後、時間t以内にパケットQを受信したことに関する過去の履歴や、パケットPの送信からパケットQの受信までにかかった時間の過去の履歴に基づいて、規則を変更してもよい。このような規則変更の例として、例えば、パケットPの送信からパケットQの受信までにかかった時間が段々長くなっていることを履歴が示している場合、通信インタフェース11を選択する優先度を下降させてもよい。
 また、パケットPに対応するパケットQが時刻Tまでに制御部14に入力されなかった場合、制御部14は、通信処理部15からのパケットの送り先として決定した通信インタフェース11aに対応する無線ネットワーク2aが導通不可能であると判別する。そして、制御部14は、保存したパケットP’のヘッダ内の送信元アドレスをもう一方の通信インタフェース11bのアドレスに書き換え、パケットP’を通信インタフェース11bに送ることを通信処理部15に指示する。このとき、制御部14は、保存している時刻Tを更新する。
 無線ネットワーク2a,2bがともに導通不可能であると判別した場合、制御部14は、保存しているパケットP’を破棄してもよい。あるいは、制御部14は、再び、無線ネットワーク2aの導通性を確認してもよい。
 制御部14は、例えば、オープンフローコントローラ(OpenFlow Controller )であるが、この例に限定されない。制御部14は、例えば、プログラムに従って動作するコンピュータのCPUによって実現される。例えば、CPUは、プログラム記憶装置(図示略)からプログラムを読み込んで、そのプログラムに従って、制御部14として動作すればよい。
 通信処理部15は、制御部14に設定された0個以上の通信処理ルール、および、制御部14からの通信処理の実行指示に基づいて、入力されたパケットに対する処理を実行する。例えば、通信処理部15は、パケットのヘッダを書き換えたり、パケットを通信端末1内の他の機能ブロックに転送したりする。通信ソフトウェア基本部13から入力されたパケットに関しては、通信処理部15は、制御部14による制御に従って、例えば、ヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、パケットPを通信インタフェース11aに送る。また、通信インタフェース11で受信されたパケットQに関しては、通信処理部15は、制御部14による制御に従って、例えば、ヘッダ内の送信先アドレスを通信処理部15のアドレスに書き換え、通信ソフトウェア基本部13に送る。また、通信処理部15に設定されたいずれの通信処理ルールにも合致しないパケットや、制御部14へのパケット転送を規定した通信処理ルールに合致するパケットに関しては、通信処理部15は、制御部14に転送する。
 通信処理部15は、例えば、オープンフロースイッチ(OpenFlow Switch )である。通信処理部15がオープンフロースイッチである場合、通信処理部15自身のアドレスは、オープンフロースイッチのローカルポート(Local Port)に付けられるか、オープンフロースイッチと通信ソフトウェア基本部13に接続される仮想イーサネット(登録商標)デバイスに付けられる。通信処理部15は、オープンフロースイッチに限定されない。また、通信処理部15は、例えば、プログラムに従って動作するコンピュータのCPUによって実現されてもよい。例えば、CPUは、プログラム記憶装置(図示略)からプログラムを読み込んで、そのプログラムに従って、通信処理部15として動作すればよい。
 次に、第1の実施形態の処理経過について説明する。
 図3は、無線ネットワーク2a(図1参照)をパケットが導通可能である場合における処理経過の例を示すフローチャートである。
 データ授受部12は、サーバ4に対して送るべきデータ(宛先となるサーバ4からサービスを受けるための実データ)を、通信ソフトウェア基本部13に送る(ステップS101)。このとき、データ授受部12は、送信先アドレスとしてサーバ4のアドレスを指定する。
 通信ソフトウェア基本部13は、通信転送ルールを検索する。そして、通信ソフトウェア基本部13は、通信転送ルールに従って、通信処理部15のアドレスをパケットの送信元アドレスとして決定する。通信ソフトウェア基本部13は、その送信元アドレスと、データ授受部12に指定された送信先アドレス(サーバ4のアドレス)とをヘッダ内に含むパケットPを、データ授受部12から入力されたデータに基づいて生成する。通信ソフトウェア基本部13は、そのパケットPを通信処理部15に送る(ステップS102)。
 通信処理部15は、通信ソフトウェア基本部13から入力されたパケットPと通信処理ルールとを照合し、パケットPに合致する通信処理ルールが存在しないか、あるいは、制御部14へのパケット転送を規定した通信処理ルールにパケットPが合致している場合に、パケットPを制御部14に送る(ステップS103)。本例では、パケットPに合致する通信処理ルールが存在しない場合を例にして説明する。
 パケットPが送信パケットである場合、制御部14は、パケットPの通信処理の実行を通信処理部15に指示する(ステップS104)。図4は、ステップS104の処理経過の例を示すフローチャートである。
 制御部14には、通信処理部15からパケットPが入力される(ステップS1040)。制御部14は、そのパケットPが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを判別して、そのパケットPが送信パケット(通信端末1が外部に送信するパケット)であるか否かを判別する(ステップS1041)。
 制御部14は、パケットPが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを、ヘッダの送信元アドレスおよび送信先アドレスの組み合わせに基づいて判別してもよい。また、通信処理部15がパケットを制御部14に送る時に、そのパケットがどの機能ブロックから通信処理部15に通知されたものであるかを、制御部14に通知し、制御部14は、その通知に基づいて、パケットPが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを判別してもよい。また、制御部14がオープンフローコントローラであり、通信処理部15がオープンフロースイッチである場合、制御部14は、パケットが入力された通信処理部15のスイッチポートの情報に基づいて、パケットPが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを判別してもよい。
 パケットPが送信パケットでない場合(ステップS1041のNo)、処理を終了する。
 パケットPが送信パケットである場合(ステップS1041のYes)、制御部14は、どの通信インタフェースにパケットPを送るかを、予め定められた所定の規則に従って決定する(ステップS1042)。本例では、パケットPを通信インタフェース11aに送ると決定する場合を例にして説明する。
 また、制御部14は、パケットのPのコピーであるパケットP’を保存するとともに、現在時刻に所定の時間tを加算した時刻Tの情報を保存する(ステップS1043)。
 次に、制御部14は、パケットPのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、パケットPを通信インタフェース11aに送ることを通信処理部15に指示する(ステップS1044)。
 通信処理部15は、制御部14からの指示に従い、パケットPのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、パケットPを通信インタフェース11aに送る(ステップS105)。
 通信インタフェース11aは、通信処理部15から入力されたパケットPを無線ネットワーク2aに出力する(ステップS106)。
 無線ネットワーク2aは、パケットが導通可能な状態であり、パケットPはサーバ4に伝達される。すると、サーバ4は、パケットPに対応するパケットQを、パケットPの送信元宛に送信する。この結果、パケットQは、無線ネットワーク2aを介して通信端末1に伝達され、通信インタフェース11aで受信される。
 通信インタフェース11aは、無線ネットワーク2aから受信したパケットQを、通信処理部15に送る(ステップS111)。
 通信処理部15は、通信インタフェース11aから入力されたパケットQと通信処理ルールとを照合し、パケットQに合致する通信処理ルールが存在しないか、あるいは、制御部14へのパケット転送を規定した通信処理ルールにパケットQが合致している場合に、パケットQを制御部14に送る(ステップS112)。この動作は、ステップS103と同様である。本例では、パケットQに合致する通信処理ルールが存在しない場合を例にして説明する。
 制御部14は、パケットQに対する処理の実行を通信処理部15に指示する(ステップS113)。図5は、ステップS113の処理経過の例を示すフローチャートである。
 制御部14には、通信処理部15からパケットQが入力される(ステップS1130)。制御部14は、そのパケットQが、パケットP’に対応するパケットであるか否かを判別する(ステップS1131)。既に説明したように、制御部14は、入力されたパケットが、パケットPを送信した通信インタフェース11aで受信されたパケットであり、かつ、そのパケットのヘッダの一部が、保存しているパケットP’のヘッダの一部と一致するという条件を満たしていれば、制御部14は、入力されたパケットが、パケットP’に対応するパケットQであると判別する。この条件を満たしていなければ、制御部14は、入力されたパケットは、パケットP’に対応していないと判別する。
 入力されたパケットがパケットP’に対応していない場合(ステップS1131のNo)、処理を終了する。
 入力されたパケットがパケットP’に対応するパケットQである場合(ステップS1131のYes)、制御部14は、現在時刻が時刻T以前であるか否かを判定する(ステップS1132)。
 現在時刻が時刻Tより後の時刻であれば(ステップS1132のNo)、処理を終了する。
 現在時刻が時刻T以前であれば(ステップS1132のYes)、制御部14は、通信インタフェース11aに対応する無線ネットワーク2aをパケットが導通可能であると判別する(ステップS1133)。
 次に、制御部14は、通信処理部15からのパケットの送り先となる通信インタフェース11を決定するための規則を更新する(ステップS1134)。例えば、制御部14は、ステップS1133でパケットが導通可能であると判別した無線ネットワーク2aに対応する通信インタフェース11aを選択する優先度を上昇させる。ただし、前述のように、制御部14は、他の基準で規則を変更してもよい。
 次に、制御部14は、パケットP(書き換え前のパケットP)と同じヘッダを持つパケットに対する通信処理ルールと、パケットQと同じヘッダを持つパケットに対する通信処理ルールとをそれぞれ、通信処理部15に設定する(ステップS1135)。
 制御部14は、パケットPと同じヘッダを持つパケットに対して、ヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、通信インタフェース11aに送ることを規定した通信処理ルールを通信処理部15に設定する。
 また、制御部14は、パケットQと同じヘッダを持つパケットに対して、ヘッダ内の送信先アドレスを通信処理部15のアドレスに書き換え、通信ソフトウェア基本部13に送ることを規定した通信処理ルールを通信処理部15に設定する。
 次に、制御部14は、ステップS1043で保存したパケットP’を破棄する(ステップS1136)。
 次に、通信処理部15は、ステップS1135で設定された通信処理ルールに従い、パケットQに対して、ヘッダ内の送信先アドレスを通信処理部15のアドレスに書き換え、通信ソフトウェア基本部13に送る処理を実行する(ステップS114)。
 通信ソフトウェア基本部13は、通信処理部15から入力されたパケットからデータを抽出し、そのデータをデータ授受部12に送る(ステップS115)。この結果、データ授受部12は、サーバ4から送信されたデータを取得する(ステップS116)。
 その後、通信ソフトウェア基本部13が、データ授受部12から入力されたデータに基づいて、パケットPと同じヘッダを持つパケットを生成した場合、そのパケットは、ステップS1135で設定された通信処理ルールに基づいてパケットPと同様に処理され、パケットが導通可能な無線ネットワーク2aを介してサーバ4に伝達される。また、サーバ4がそのパケットに応じて、パケットQと同じヘッダを持つパケットを送信した場合にも、そのパケットは、ステップS1135で設定された通信処理ルールに基づいてパケットQと同様に処理され、データ授受部12に送られる。
 図6は、無線ネットワーク2a(図1参照)をパケットが導通不可能であり、無線ネットワーク2b(図1参照)をパケットが導通可能である場合における処理経過の例を示すフローチャートである。ステップS101~S106は、図3に示すステップS101~S106と同様であり、説明を省略する。なお、図6では、ステップS101~S103についての図示を省略している。
 ステップS106で通信インタフェース11aがパケットPを無線ネットワーク2aに出力した場合、無線ネットワーク2aは導通不可能な状態であるので、そのパケットPはサーバ4に到達しない。そのため、サーバ4はパケットQを送信しない。
 制御部14は、ステップS104の後、時刻Tを過ぎてもパケットが入力されない場合に、他の通信インタフェースからパケットP’を送信することを通信処理部15に指示する(ステップS151)。図7は、ステップS151の処理経過の例を示すフローチャートである。
 制御部14は、パケットP’に対応するパケットQの入力がないまま時刻Tになったことを判別する(ステップS1511)。
 続いて、制御部14は、ステップS104(より具体的には、図4に示すステップS1042)で決定した通信インタフェース11aとは別の通信インタフェース11bにパケットP’を送ることを決定する(ステップS1512)。
 次に、制御部14は、ステップS1043(図4参照)で定めた時刻Tを更新する(ステップS1513)。具体的には、制御部14は、時刻Tに所定の時間tを加算することで、時刻Tを更新し、更新後の時刻Tの情報を保存する。
 次に、制御部14は、パケットP’のヘッダ内の送信元アドレスを通信インタフェース11bのアドレスに書き換え、パケットP’を通信インタフェース11bに送ることを通信処理部15に指示する(ステップS1514)。
 通信処理部15は、制御部14からの指示に従い、パケットP’のヘッダ内の送信元アドレスを通信インタフェース11bのアドレスに書き換え、パケットP’を通信インタフェース11bに送る(ステップS152)。
 通信インタフェース11bは、パケットP’を無線ネットワーク2bに出力する(ステップS106)。
 無線ネットワーク2bは、パケットが導通可能な状態であり、パケットP’はサーバ4に伝達される。すると、サーバ4は、パケットP’に対応するパケットQを、パケットPの送信元宛に送信する。この結果、パケットQは、無線ネットワーク2bを介して通信端末1に伝達され、通信インタフェース11bで受信される。以降の動作は、ステップS111~S116(図3参照)と同様であり、説明を省略する。
 本実施形態によれば、データ授受部12とサーバ4との間で実データを送受信するためのパケットうちの最初のパケットと、その応答パケットとを用いて、パケットが導通可能な無線ネットワーク2を判別することができる。従って、経路決定のための専用パケットを用いずに、パケットが導通可能な無線ネットワーク2を判別できる。その結果、通信効率や電力効率の悪化を防止することができる。
 また、実施形態では、通信ソフトウェア基本部13が、通信処理部15のアドレスを送信元アドレスとして、実データを含むパケットPを生成し、通信処理部15が、通信処理ルールに従って、送信元アドレスを通信インタフェース11のアドレスに書き換える。また、その通信インタフェース11に対応する無線ネットワーク2が導通不可能な状態であるために、パケットP’(パケットPのコピー)を送信する場合には、通信処理部15が、通信処理ルールに従って、送信元アドレスを他の通信インタフェース11のアドレスに書き換える。従って、無線ネットワーク2が導通不可能な状態であるために通信インタフェースを切り替える場合であっても、通信ソフトウェア基本部13およびサーバ4の通信手続に影響を生じさせないようにすることができる。
実施形態2.
 図8は、本発明の第2の実施形態の通信端末を含む通信システムを示す模式図である。図8に示すサーバ4、無線ネットワーク2a,2bおよび有線ネットワーク3はそれぞれ、第1の実施形態におけるサーバ4、無線ネットワーク2a,2bおよび有線ネットワーク3と同様である。図8に示す通信システムでは、図1に示す通信システムに対して、名前解決サーバ5が追加されている。図8では、通信システムが2台の名前解決サーバ5a,5bを含む場合を例示しているが、名前解決サーバ5の台数は特に限定されない。なお、名前解決サーバ5a,5bを特に区別する必要がない場合には、「名前解決サーバ5」と記す。名前解決サーバ5は、有線ネットワーク3に接続されていてもよいが、本実施形態では、名前解決サーバ5が無線ネットワーク2に接続される場合を例にして説明する。図8では、名前解決サーバ5aが無線ネットワーク2aに接続され、名前解決サーバ5bが無線ネットワーク2bに接続される場合を示している。
 名前解決サーバ5は、通信端末1から名前解決要求パケットを受信すると、その名前解決要求パケットを解釈し、名前解決要求パケットに含まれている装置の名前に対応するアドレスを検索し、その名前とそのアドレスとを含む名前解決応答パケットを通信端末1に送信する。名前解決要求パケットは、名前解決サーバ5が提供する「名前解決」というサービスを受けるためのデータとして、装置の名前を含んでいる。従って、名前解決要求パケットは、実データを含むパケットである。
 名前解決サーバ5は、例えば、ドメインネームサービス(Domain Name Service: DNS)サーバである。ただし、名前解決サーバ5は、ドメインネームサービスサーバに限定されない。
 図9は、本発明の第2の実施形態の通信端末の構成例を示すブロック図である。第2の実施形態の通信端末1では、第1の実施形態の通信端末1(図2参照)に対して、名前解決サーバアドレス記憶部16と、名前解決部17とが追加されている。名前解決サーバアドレス記憶部16は、制御部14および名前解決部17に接続されている。名前解決部17は、名前解決サーバアドレス記憶部16の他に、データ授受部12および通信ソフトウェア基本部13に接続されている。
 名前解決サーバアドレス記憶部16は、通信インタフェース11と、名前解決サーバ5のアドレスとの対応関係を記憶する記憶装置である。例えば、名前解決サーバ5aは、通信インタフェース11aに対応する無線ネットワーク2aに接続されている。従って、名前解決サーバアドレス記憶部16は、通信インタフェース11aと、名前解決サーバ5aのアドレスとを対応付けて記憶する。同様に、名前解決サーバアドレス記憶部16は、通信インタフェース11bと、名前解決サーバ5bのアドレスとを対応付けて記憶する。名前解決サーバアドレス記憶部16は、通信インタフェース11と、名前解決サーバ5のアドレスとの対応関係を、例えば、ファイルあるいはデータベースとして記憶してもよく、あるいは、他の態様で記憶してもよい。
 名前解決部17は、データ授受部12からサーバ4の名前を含む名前解決要求データが入力されると、名前解決サーバアドレス記憶部16を参照して名前解決サーバ5のアドレスを選択する。そして、名前解決部17は、選択した名前解決サーバ5のアドレスを指定して、名前解決要求データを通信ソフトウェア基本部13に送る。サーバ4の名前を含む名前解決要求データは、名前解決サーバ5から名前解決サービスの提供を受けるためのデータ(実データ)である。名前解決部17が、名前解決サーバアドレス記憶部16から名前解決サーバ5のアドレスを選択する基準は、例えば、選択の優先順位として予め定められている。本例では、名前解決サーバ5aのアドレスが選択される場合を例にして説明する。
 通信端末1が名前解決応答パケットを受信し、その名前解決応答パケットに含まれる名前解決応答データが通信ソフトウェア基本部13から名前解決部17に入力されると、名前解決部17は、その名前解決応答データをデータ授受部12に送る。名前解決応答データには、装置(本例ではサーバ4)の名前およびその装置のアドレスが含まれている。
 名前解決部17は、例えば、DNSリゾルバ等のプログラムに従って動作するコンピュータのCPUによって実現される。例えば、CPUは、プログラム記憶装置からプログラムを読み込んで、そのプログラムに従って、名前解決部17として動作すればよい。CPUに名前解決部17としての機能を実現させるプログラムは、DNSリゾルバに限定されず、他のプログラムであってもよい。
 通信ソフトウェア基本部13は、名前解決部17から、名前解決サーバ5のアドレスおよび名前解決要求データを入力される。そして、通信ソフトウェア基本部13は、その名前解決要求データから、名前解決要求パケット(Nとする。)を生成する。通信ソフトウェア基本部13は、通信処理部15のアドレスを、名前解決要求パケットNの送信元アドレスとし、名前解決部17によって指定された名前解決サーバ5のアドレスを、名前解決要求パケットNの送信先アドレスとする。通信ソフトウェア基本部13は、名前解決要求パケットNを通信処理部15に送る。
 また、通信端末1が名前解決応答パケットを受信し、その名前解決応答パケットが通信処理部15から通信ソフトウェア基本部13に入力されると、通信ソフトウェア基本部13は、名前解決応答パケットから名前解決応答データを抽出する。そして、通信ソフトウェア基本部13は、その名前解決応答データを名前解決部17に送る。
 以下、名前解決サーバ5が、名前解決要求パケットNに対する応答として送信した名前解決応答パケットをMで表す。
 本実施形態において、制御部14は、名前解決要求パケットNおよび名前解決応答パケットMを利用して、無線ネットワーク2の導通性を確認する。そして、制御部14は、名前解決要求パケットNを導通させる制御を行う。
 制御部14は、名前解決要求パケットNが通信処理部15から制御部14に入力されると、その名前解決要求パケットNの送信に用いる通信インタフェース11(換言すれば、通信処理部15からの名前解決要求パケットNの送り先となる通信インタフェース11)を決定する。このとき、制御部14は、例えば、第1の実施形態と同様に、所定の規則に従って、パケット送信に用いる通信インタフェース11を決定してもよい。本例では、通信処理部15からの名前解決要求パケットNの送り先として、通信インタフェース11aを決定する場合を例にして説明する。さらに、制御部14は、名前解決要求パケットNのコピーであるパケット(N’とする。)を保存するとともに、現在時刻に所定の時間tを加算した時刻Tの情報を保存する。そして、制御部14は、通信処理部15に対して、名前解決要求パケットNの通信処理の実行を指示する。具体的には、制御部14は、通信インタフェース11aを使用することを決定したので、名前解決要求パケットNのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、名前解決要求パケットNを通信インタフェース11aに送ることを通信処理部15に指示する。
 また、制御部14は、パケット送信に用いる通信インタフェース11を決定した後、名前解決サーバアドレス記憶部16を参照して、決定した通信インタフェース11に対応する名前解決サーバ5のアドレスを検索する。本例では、通信インタフェース11aに対応する名前解決サーバ5aのアドレスが検索される。制御部14は、検索した名前解決サーバ5aのアドレスと、名前解決要求パケットNの送信先アドレスとを照合し、その2つのアドレスが一致していない場合、名前解決要求パケットNの送信先アドレスを、決定した通信インタフェース11に対応する名前解決サーバ5のアドレスに書き換えることを通信処理部15に指示する。一方、その2つのアドレスが一致している場合、制御部14は、名前解決要求パケットNの送信先アドレスの書き換え指示を行わない。
 例えば、名前解決要求パケットNの送信先アドレスが名前解決サーバ5bのアドレスであったと仮定する。そして、制御部14は、名前解決要求パケットNの送信に通信インタフェース11aを用いると決定し、通信インタフェース11aに対応する名前解決サーバ5aのアドレスを検索したとする。この場合、制御部14は、名前解決要求パケットNの送信先アドレスを名前解決サーバ5aのアドレスに書き換えることを通信処理部15に指示する。
 名前解決サーバ5は、名前解決要求パケットNを受信すると、名前解決要求パケットNに対応する名前解決応答パケットMを通信端末1に送信する。
 時刻Tまでに名前解決応答パケットMが通信処理部15から制御部14に入力されると、制御部14は、名前解決応答パケットMを受信した通信インタフェース11が接続される無線ネットワーク2が導通可能であると判別する。そして、制御部14は、名前解決要求パケットN(書き換え前の名前解決要求パケットN)と同じヘッダを持つパケットに対する通信処理ルールと、名前解決応答パケットMと同じヘッダを持つパケットに対する通信処理ルールを、それぞれ通信処理部15に設定する。
 制御部14は、名前解決要求パケットNと同じヘッダを持つパケットに対する通信処理ルールとして、例えば、ヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、ヘッダ内の送信先アドレスを名前解決サーバ5aのアドレスに書き換え、通信インタフェース11aに送ることを規定した通信処理ルールを通信処理部15に設定する。
 また、制御部14は、名前解決応答パケットMと同じヘッダを持つパケットに対する通信処理ルールとして、例えば、ヘッダ内の送信元アドレスを、名前解決要求パケットN’の送信先アドレスに書き換え、ヘッダ内の送信先アドレスを通信処理部15のアドレスに書き換え、通信ソフトウェア基本部13に送ることを規定した通信処理ルールを設定する。
 また、名前解決応答パケットMのペイロードに格納された名前解決応答データには、装置(本例ではサーバ4)の名前およびその装置のアドレスが含まれている。制御部14は、この装置(サーバ4)のアドレスを送信先アドレスとして含むパケットが通信処理部15から入力された場合、任意の期間、そのパケットの送り先として、最初に名前解決応答パケットMを受信した通信インタフェース11(通信インタフェース11aであるとする。)を選択することを規定してもよい。この場合、通信ソフトウェア基本部13が、データ授受部12から入力されたデータに基づいて、サーバ4のアドレスを送信先アドレスとするパケットを生成し、そのパケットが通信処理部15から制御部14に入力されると、制御部14は、通信インタフェース11aを選択し、通信インタフェース11aに対してそのパケットを送ることを通信処理部15に指示する。この結果、そのパケットは、導通可能な無線ネットワーク2aを介してサーバ4に伝達される。
 また、名前解決応答パケットMが時刻Tまでに制御部14に入力されなかった場合、制御部14は、通信処理部15からの名前解決要求パケットNの送り先とした通信インタフェース11aに接続される無線ネットワーク2aは導通不可能であると判断する。そして、制御部14は、保存した名前解決要求パケットN’内の送信元アドレスを他の通信インタフェース11bのアドレスに書き換え、名前解決要求パケットN’を通信インタフェース11bに送ることを通信処理部15に指示する。
 次に、第2の実施形態の処理経過について説明する。
 図10は、無線ネットワーク2a(図8参照)をパケットが導通可能である場合における処理経過の例を示すフローチャートである。
 データ授受部12(図10において図示略)が名前解決部17に対して、サーバ4の名前を含む名前解決要求データを入力すると、名前解決部17は、名前解決サーバアドレス記憶部16を参照して名前解決サーバ5のアドレスを選択する。本例では、予め定められた優先順位に従って、名前解決部17が名前解決サーバ5aのアドレスを選択する場合を例にして説明する。名前解決部17は、選択した名前解決サーバ5aのアドレスを指定して、名前解決要求データを通信ソフトウェア基本部13に送る(ステップS201)。
 通信ソフトウェア基本部13は、通信転送ルールに従って、通信処理部15のアドレスを名前解決要求パケットの送信元アドレスとして決定する。この動作は、第1の実施形態と同様である。通信ソフトウェア基本部13は、その送信元アドレスを含み、さらに、名前解決部17に指定された名前解決サーバ5aのアドレスを送信先アドレスとして含むヘッダを有する名前解決要求パケットNを、名前解決要求データに基づいて生成する。通信ソフトウェア基本部13は、その名前解決要求パケットNを通信処理部15に送る(ステップS202)。
 通信処理部15は、通信ソフトウェア基本部13から入力された名前解決要求パケットNと通信処理ルールとを照合し、名前解決要求パケットNに合致する通信処理ルールが存在しないか、あるいは、制御部14へのパケット転送を規定した通信処理ルールに名前解決要求パケットNが合致している場合に、名前解決要求パケットNを制御部14に送る(ステップS203)。本例では、名前解決要求パケットNに合致する通信処理ルールが存在しない場合を例にして説明する。
 名前解決要求パケットNが送信パケットである場合、制御部14は、名前解決要求パケットNの通信処理の実行を通信処理部15に指示する(ステップS204)。図11および図12は、ステップS204の処理経過の例を示すフローチャートである。
 制御部14には、通信処理部15から名前解決要求パケットNが入力される(ステップS2040)。制御部14は、その名前解決要求パケットNが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを判別して、名前解決要求パケットNが送信パケットであるか否かを判別する(ステップS2041)。
 名前解決要求パケットNが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを判別する方法は、第1の実施形態で、パケットPが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを判別する方法と同様である。
 名前解決要求パケットNが送信パケットでない場合(ステップS2041のNo)、処理を終了する。
 名前解決要求パケットNが送信パケットである場合(ステップS2041のYes)、制御部14は、どの通信インタフェースに名前解決要求パケットNを送るかを、所定の規則に従って決定する(ステップS2042)。本例では、名前解決要求パケットNを通信インタフェース11aに送ると決定する場合を例にして説明する。
 次に、制御部14は、名前解決サーバアドレス記憶部16を参照して、ステップS2042で決定した通信インタフェース11aに対応する名前解決サーバ5のアドレスを検索する。制御部14は、そのアドレスと、名前解決要求パケットNの送信先アドレスとが一致するか否かを判別する(ステップS2043)。
 その2つのアドレスが一致している場合(ステップS2043のYes)、ステップS2045に移行する。
 また、その2つのアドレスが一致していない場合(ステップS2043のNo)、制御部14は、名前解決要求パケットNの送信先アドレスを、ステップS2042で決定した通信インタフェース11aに対応する名前解決サーバ5aのアドレスに書き換えることを、通信処理部15に指示する(ステップS2044)。ステップS2044の後、ステップS2045に移行する。
 ステップS2044に移行するのは、例えば、ステップS201で名前解決部17が通信ソフトウェア基本部13に対して指定する名前解決サーバ5のアドレスと、ステップS2042で制御部14が決定する通信インタフェースとが対応していない場合である。
 ステップS2045において、制御部14は、名前解決要求パケットNのコピーである名前解決要求パケットN’を保存するとともに、現在時刻に所定の時間tを加算した時刻Tの情報を保存する(ステップS2045)。
 次に、制御部14は、名前解決要求パケットNのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、名前解決要求パケットNを通信インタフェース11aに送ることを通信処理部15に指示する(ステップS2046)。
 通信処理部15は、制御部14からの指示に従い、名前解決要求パケットNのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、名前解決要求パケットNを通信インタフェース11aに送る(ステップS205)。また、ステップS2044で、名前解決要求パケットNの送信先アドレスを名前解決サーバ5aのアドレスに書き換える旨の指示を受けている場合には、通信処理部15は、その指示にも従い、名前解決要求パケットNの送信先アドレスを名前解決サーバ5aのアドレスに書き換えてから、通信インタフェース11aに送る。
 通信インタフェース11aは、通信処理部15から入力された名前解決要求パケットNを無線ネットワーク2aに出力する(ステップS206)。
 無線ネットワーク2aは、パケットが導通可能な状態であり、名前解決要求パケットNは名前解決サーバ5aに伝達される。すると、名前解決サーバ5aは、名前解決要求パケットNに対応する名前解決応答パケットMを、名前解決要求パケットNの送信元に送信する。この結果、名前解決応答パケットMは、無線ネットワーク2aを介して通信端末1に伝達され、通信インタフェース11aで受信される。
 通信インタフェース11aは、名前解決サーバ5aから送信され、無線ネットワーク2aを介して受信した名前解決応答パケットMを、通信処理部15に送る(ステップS211)。
 通信処理部15は、通信インタフェース11aから入力された名前解決応答パケットMと通信処理ルールとを照合し、名前解決応答パケットMに合致する通信処理ルールが存在しないか、あるいは、制御部14へのパケット転送を規定した通信処理ルールに名前解決応答パケットMが合致している場合、名前解決応答パケットMを制御部14に送る(ステップS212)。本例では、名前解決応答パケットMに合致する通信処理ルールが存在しない場合を例にして説明する。
 制御部14は、名前解決応答パケットMに対する処理の実行を通信処理部15に指示する(ステップS213)。図13は、ステップS213の処理経過の例を示すフローチャートである。
 制御部14には、通信処理部15から名前解決応答パケットMが入力される(ステップS2130)。制御部14は、その名前解決応答パケットMが、名前解決要求パケットN’に対応するパケットであるか否かを判別する(ステップS2131)。制御部14は、入力されたパケットが、名前解決要求パケットNを送信した通信インタフェース11aで受信されたパケットであり、かつ、そのパケットのヘッダの一部が、保存している名前解決要求パケットN’のヘッダの一部と一致するという条件を満たしていれば、制御部14は、入力されたパケットが、名前解決要求パケットN’に対応する名前解決応答パケットMであると判別する。この条件を満たしていなければ、制御部14は、入力されたパケットは、名前解決要求パケットN’に対応していないと判別する。
 入力されたパケットが名前解決要求パケットN’に対応していない場合(ステップS2131のNo)、処理を終了する。
 入力されたパケットが名前解決要求パケットN’に対応する名前解決応答パケットMである場合(ステップS2131のYes)、制御部14は、現在時刻が時刻T以前であるか否かを判別する(ステップS2132)。
 現在時刻が時刻Tより後の時刻であれば(ステップS2132のNo)、処理を終了する。
 現在時刻が時刻T以前であれば(ステップS2132のYes)、制御部14は、通信インタフェース11aに対応する無線ネットワーク2aをパケットが導通可能であると判別する(ステップS2133)。
 次に、制御部14は、通信処理部15からのパケットの送り先となる通信インタフェース11を決定するための規則を更新する(ステップS2134)。この動作は、第1の実施形態におけるステップS1134と同様である。
 次に、制御部14は、名前解決要求パケットN(書き換え前の名前解決要求パケットN)と同じヘッダを持つパケットに対する通信処理ルールと、名前解決応答パケットMと同じヘッダを持つパケットに対する通信処理ルールとをそれぞれ、通信処理部15に設定する(ステップS2135)。
 制御部14は、名前解決要求パケットNと同じヘッダを持つパケットに対して、例えば、ヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、ヘッダ内の送信先アドレスを名前解決サーバ5aのアドレスに書き換え、通信インタフェース11aに送ることを規定した通信処理ルールを通信処理部15に設定する。
 また、制御部14は、名前解決応答パケットMと同じヘッダを持つパケットに対して、例えば、ヘッダ内の送信元アドレスを、名前解決要求パケットN’の送信先アドレスに書き換え、ヘッダ内の送信先アドレスを通信処理部15のアドレスに書き換え、通信ソフトウェア基本部13に送ることを規定した通信処理ルールを設定する。
 また、名前解決応答パケットMのペイロードに格納された名前解決応答データには、サーバ4の名前およびサーバ4のアドレスが含まれている。制御部14は、名前解決応答データ内に含まれているサーバ4のアドレスを抽出する。そして、制御部14は、そのアドレスを送信先アドレスとして含むパケットが通信処理部15から入力された場合、任意の期間、そのパケットの送り先として、最初に名前解決応答パケットMを受信した通信インタフェース11を選択する規則を規定する(ステップS2136)。
 次に、制御部14は、ステップS2045で保存した名前解決要求パケットN’を破棄する(ステップS2137)。
 次に、通信処理部15は、ステップS2135で設定された通信処理ルールに従い、名前解決応答パケットMに対して、ヘッダ内の送信元アドレスを、名前解決要求パケットN’の送信先アドレスに書き換え、ヘッダ内の送信先アドレスを通信処理部15のアドレスに書き換え、通信ソフトウェア基本部13に送る処理を実行する(ステップS214)。
 通信ソフトウェア基本部13は、通信処理部15から入力された名前解決応答パケットMから名前解決応答データを抽出し、名前解決部17に送る(ステップS215)。この結果、名前解決部17は、名前解決サーバ5aから送信された名前解決応答データを取得し、その名前解決応答データをデータ授受部12に送る(ステップS216)。
 データ授受部12は、名前解決応答データが入力されることにより、通信ソフトウェア基本部13に対して、データを送るとともに、サーバ4のアドレスを指定することができる。そして、通信ソフトウェア基本部13は、サーバ4のアドレスを送信先とするパケットを生成し、通信処理部15に送る。このパケットが通信処理部15から制御部14に入力されると、制御部14は、ステップS2136で規定した規則に従って、通信インタフェース11aを選択する。そして、制御部14は、通信インタフェース11aに対してそのパケットを送ることを通信処理部15に指示する。従って、そのパケットは、導通可能な無線ネットワーク2aを介してサーバ4に伝達される。
 図14は、無線ネットワーク2aをパケットが導通不可能であり、無線ネットワーク2bをパケットが導通可能である場合における処理経過の例を示すフローチャートである。ステップS201~S206は、図10に示すステップS201~S206と同様であり、説明を省略する。なお、図14では、ステップS201~S203についての図示を省略している。
 ステップS206で通信インタフェース11aが名前解決要求パケットNを無線ネットワーク2aに出力した場合、無線ネットワーク2aは導通不可能な状態であるので、名前解決要求パケットNは名前解決サーバ5aに到達しない。そのため、名前解決サーバ5aは、名前解決応答パケットMを送信しない。
 制御部14は、ステップS204の後、時刻Tを過ぎても名前解決応答パケットMが入力されない場合に、他の通信インタフェースから名前解決要求パケットN’を送信することを通信処理部15に指示する(ステップS251)。図15は、ステップS251の処理経過の例を示すフローチャートである。
 制御部14は、名前解決要求パケットN’に対応する名前解決応答パケットMの入力がないまま時刻Tになったことを判別する(ステップS2511)。
 続いて、制御部14は、ステップS204(より具体的には、図11に示すステップS2042)で決定した通信インタフェース11aとは別の通信インタフェース11bに名前解決要求パケットN’を送ることを決定する(ステップS2512)。
 次に、制御部14は、名前解決サーバアドレス記憶部16を参照して、ステップS2512で決定した通信インタフェース11bに対応する名前解決サーバ5bのアドレスを検索する。制御部14は、その名前解決サーバ5bのアドレスと、名前解決要求パケットN’の送信先アドレスとが一致するか否かを判別する(ステップS2513)。
 その2つのアドレスが一致している場合(ステップS2513のYes)、ステップS2515に移行する。
 また、その2つのアドレスが一致していない場合(ステップS2513のNo)、制御部14は、名前解決要求パケットN’の送信先アドレスを、ステップS2512で決定した通信インタフェース11bに対応する名前解決サーバ5bのアドレスに書き換えることを、通信処理部15に指示する(ステップS2514)。ステップS2514の後、ステップS2515に移行する。
 ステップS2515において、制御部14は、ステップS2045(図12参照)で定めた時刻Tを更新する(ステップS2515)。ステップS2515の処理は、第1の実施形態におけるステップS1513と同様の処理である。
 次に、制御部14は、名前解決要求パケットN’のヘッダ内の送信元アドレスを、ステップS2512で決定した通信インタフェース11bのアドレスに書き換え、名前解決要求パケットN’を通信インタフェース11bに送ることを通信処理部15に指示する(ステップS2516)。
 通信処理部15は、制御部14からの指示に従い、名前解決要求パケットN’のヘッダ内の送信元アドレスを通信インタフェース11bのアドレスに書き換え、名前解決要求パケットN’を通信インタフェース11bに送る(ステップS252)。また、ステップS2514で、名前解決要求パケットN’の送信先アドレスを名前解決サーバ5bのアドレスに書き換える旨の指示を受けている場合には、通信処理部15は、その指示にも従い、名前解決要求パケットN’の送信先アドレスを名前解決サーバ5bのアドレスに書き換えてから、通信インタフェース11bに送る。
 通信インタフェース11bは、通信処理部15から入力された名前解決要求パケットN’を無線ネットワーク2bに出力する(ステップS253)。
 無線ネットワーク2bは、パケットが導通可能な状態であり、名前解決要求パケットN’は名前解決サーバ5bに伝達される。すると、名前解決サーバ5bは、名前解決要求パケットN’に対応する名前解決応答パケットMを、名前解決要求パケットN’の送信元に送信する。この結果、名前解決応答パケットMは、無線ネットワーク2bを介して通信端末1に伝達され、通信インタフェース11bで受信される。
 通信インタフェース11bが名前解決応答パケットMを受信した時の動作は、ステップS211~S216の動作と同様であり、説明を省略する。
 本実施形態では、実データ(名前解決要求データ)を含む名前解決要求パケットと、その応答パケット(名前解決応答パケット)とを用いて、パケットが導通可能な無線ネットワークを判別することができる。従って、第1の実施形態と同様に、経路決定のための専用パケットを用いずに、パケットが導通可能な無線ネットワーク2を判別でき、通信効率や電力効率の悪化を防止することができる。
 また、本実施形態では、データ授受部12とサーバ4とがデータを授受する前の前処理の段階で、パケットが導通可能な無線ネットワークを判別できる。
実施形態3.
 図16は、本発明の第3の実施形態の通信端末の構成例を示すブロック図である。第3の実施形態の通信端末1では、第1の実施形態の通信端末1(図2参照)に対して、状態記憶部18と、状態管理部19とが追加されている。状態記憶部18は、制御部14および状態管理部19に接続されている。状態管理部19は、状態記憶部18の他に、各通信インタフェース11に接続されている。
 状態記憶部18は、各通信インタフェース11の状態情報を記憶する記憶装置である。具体的には、状態記憶部18は、通信インタフェース11の状態情報として、通信インタフェースが有効状態であるか無効状態であるかを示す情報や、スリープ状態の真偽値等を記憶する。
 状態管理部19は、各通信インタフェース11の状態を把握し、各通信インタフェース11の状態情報を状態記憶部18に記憶させる。
 状態管理部19は、例えば、プログラムに従って動作するコンピュータのCPUによって実現される。例えば、CPUは、プログラム記憶装置(図示略)からプログラムを読み込んで、そのプログラムに従って、状態管理部19として動作すればよい。
 本実施形態では、各通信インタフェース11は、自身の状態が変化したときに、間接的にまたは直接的に、自身の状態情報を状態管理部18に通知する。
 本実施形態の制御部14は、第1の実施形態における動作に加えて、さらに、以下に示す動作も行う。制御部14は、状態記憶部18から通信インタフェース11の状態情報を読み込む。そして、制御部14は、通信処理部15からのパケットの送り先となる通信インタフェース11を決定するときに、その状態情報を利用する。例えば、制御部14は、通信インタフェース11aが有効である場合には通信インタフェース11aを選択してもよいが、通信インタフェース11aが無効である場合には通信インタフェース11aを選択しない。また、制御部14は、通信処理部15からのパケットの送り先となる通信インタフェース11を決定するときに、通信インタフェース11の状態情報以外の情報を利用してもよい。本実施形態では、通信インタフェース11aが有効状態である場合を例にして説明する。
 また、制御部14は、タイムアウトの判定基準となる時刻Tを決定する際に用いる時間t(換言すれば、現在時刻から時刻Tまでの経過時間に該当する時間t)を決定する。このとき、制御部14は、通信インタフェース11の状態情報を利用する。例えば、通信インタフェース11がスリープ状態である場合、制御部14は、その通信インタフェース11のウェイクアップにかかる時間と、時間tのデフォルト値との加算結果を、時間tとして決定する。通信インタフェース11のウェイクアップにかかる時間は、例えば、通信インタフェース11の種別や対応する無線ネットワークの種別に応じて規定されていてもよい。あるいは、制御部14が、通信インタフェース11のウェイクアップにかかる時間を過去の履歴から算出してもよい。あるいは、制御部14が、通信インタフェース11の種別や対応する無線ネットワークの種別、通信端末1の位置、時刻等を用いたアルゴリズムによって、ウェイクアップにかかる時間を算出してもよい。
 次に、第3の実施形態の処理経過について説明する。
 図17は、第3の実施形態の処理経過の例を示すフローチャートである。ステップS301~S303は、第1の実施形態におけるステップS101~S103と同様であり、説明を省略する。
 通信処理部15から制御部14にパケットPが入力されると、制御部14は、パケットPの通信処理の実行を通信処理部15に指示する(ステップS304)。図18は、ステップS304の処理経過の例を示すフローチャートである。
 制御部14には、通信処理部15からパケットPが入力される(ステップS3040)。制御部14は、そのパケットPが通信ソフトウェア基本部13から通信処理部15に入力されたものであるか否かを判別して、そのパケットPが送信パケットであるか否かを判別する(ステップS3041)。ステップS3041は、第1の実施形態におけるステップS1041と同様の処理である。
 パケットPが送信パケットでない場合(ステップS3041のNo)、処理を終了する。
 パケットPが送信パケットである場合(ステップS3041のYes)、制御部14は、状態記憶部18に記憶されている状態情報を参照して、有効状態である通信インタフェースを検索する(ステップ3042)。
 次に、制御部14は、有効状態の通信インタフェース11の中から、通信処理部15からのパケットの送り先となる通信インタフェース11を決定する(ステップS3043)。例えば、制御部14は、有効状態の通信インタフェース11のうち、予め定められた所定の規則において選択の優先順位が最も高く定められている通信インタフェース11をパケットの送り先として決定する。本例では、ステップS3043で、通信インタフェース11aをパケットの送り先として決定する場合を例にする。
 次に、制御部14は、通信処理部15からのパケットの送り先として決定した通信インタフェース11aがスリープ状態であるか否かを判別した上で、時刻Tを決定する際に用いる時間tを決定する(ステップS3044)。制御部14は、状態記憶部18に記憶されている状態情報を参照して、通信インタフェース11aがスリープ状態であるか否かを判別する。通信インタフェース11aがスリープ状態である場合、制御部14は、通信インタフェース11aのウェイクアップにかかる時間と、時間tのデフォルト値との加算結果を、時間tとして決定する。また、通信インタフェース11aがスリープ状態でない場合、制御部14は、時間tとして、時間tのデフォルト値を用いる。
 続いて、制御部14は、パケットのPのコピーであるパケットP’を保存する。さらに、制御部14は、現在時刻に、ステップS3044で決定した時間tを加算した時刻Tの情報も保存する(ステップS3045)。
 次に、制御部14は、パケットPのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、パケットPを通信インタフェース11aに送ることを通信処理部15に指示する(ステップS3046)。ステップS3046は、第1の実施形態におけるステップS1044と同様の処理である。
 通信処理部15は、制御部14からの指示に従い、パケットPのヘッダ内の送信元アドレスを通信インタフェース11aのアドレスに書き換え、パケットPを通信インタフェース11aに送る(ステップS305)。ステップS305は、第1の実施形態におけるステップS105と同様の処理である。
 次に、通信インタフェース11aは、ウェイクアップ動作によりスリープ状態を解除し、その後、パケットPを無線ネットワーク2aに出力する(ステップS306)。
 その後の動作(ステップS311~S316)は、第1の実施形態におけるステップS111~S116(図3参照)と同様であり、説明を省略する。
 本実施形態においても、第1の実施形態と同様の効果が得られる。
 また、第2の実施形態に、第3の実施形態を適用してもよい。
 次に、本発明の主要部を説明する。図19は、本発明の通信端末の主要部を示すブロック図である。本発明の通信端末は、それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する複数の通信インタフェース91(例えば、通信インタフェース11)を備える。さらに、通信端末は、パケット生成手段93と、パケット処理手段95と、制御手段94とを備える。
 パケット生成手段93(例えば、通信ソフトウェア基本部13)は、宛先となる装置(例えば、サーバ4、名前解決サーバ5)からサービスの提供を受けるためのデータに基づいてパケットを生成する。
 パケット処理手段95(例えば、通信処理部15)は、指示された通信インタフェースに対してパケットを送る。
 制御手段94(例えば、制御部14)は、複数の通信インタフェース91の中から1つの通信インタフェース91を選択し、パケット生成手段93によって生成されたパケットを当該通信インタフェース91に送ることをパケット処理手段95に指示し、パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻(例えば、時刻T)までに入力されない場合、その通信インタフェース91とは異なる通信インタフェース91を選択し、そのパケットのコピーを当該通信インタフェース91に送ることをパケット処理手段95に指示する。
 そのような構成により、経路決定のための専用パケットを用いることなく、通信可能な無線ネットワークに対応する通信インタフェースを選択することができる。
 上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、以下に限定されるわけではない。
(付記1)それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する複数の通信インタフェース(例えば、通信インタフェース11)と、宛先となる装置(例えば、サーバ4、名前解決サーバ5)からサービスの提供を受けるためのデータに基づいてパケットを生成するパケット生成手段(例えば、通信ソフトウェア基本部13)と、指示された通信インタフェースに対してパケットを送るパケット処理手段(例えば、通信処理部15)と、前記複数の通信インタフェースの中から1つの通信インタフェースを選択し、前記パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることを前記パケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻(例えば、時刻T)までに入力されない場合、前記通信インタフェースとは異なる通信インタフェースを選択し、前記パケットのコピーを当該通信インタフェースに送ることを前記パケット処理手段に指示する制御手段(例えば、制御部14)とを備えることを特徴とする通信端末。
(付記2)パケット生成手段は、パケット処理手段のアドレスを送信元とするパケットを生成し、制御手段は、前記パケットの送信元アドレスを、選択した通信インタフェースのアドレスに書き換えることを前記パケット処理手段に指示する付記1に記載の通信端末。
(付記3)複数の名前解決サーバの中から1つの名前解決サーバを選択し、選択した名前解決サーバをパケット生成手段に対して指定する名前解決サーバ選択手段(例えば、名前解決部17)と、名前解決サーバのアドレスと通信インタフェースとの対応関係を記憶する対応関係記憶手段(例えば、名前解決サーバアドレス記憶部16)とを備え、パケット生成手段は、前記名前解決サーバ選択手段によって指定された名前解決サーバのアドレスを送信先アドレスとするパケット(例えば、名前解決要求パケット)を、名前解決の対象となる装置名(例えば、サーバ4の名前)に基づいて生成し、制御手段は、前記パケット生成手段によって生成されたパケットの送信先アドレスと、選択した通信インタフェースに対応する名前解決サーバのアドレスとが一致していない場合、前記パケットの送信先アドレスを、選択した通信インタフェースに対応する名前解決サーバのアドレスに書き換えることをパケット処理手段に指示する付記1または付記2に記載の通信端末。
(付記4)制御手段は、選択した通信インタフェースから出力されたパケットに対する応答となる応答パケット(例えば、名前解決応答パケット)が名前解決サーバから伝達された場合、当該応答パケットに含まれている名前解決の対象となる装置のアドレス(例えば、サーバ4のアドレス)を抽出し、当該アドレスを送信先アドレスとするパケットが生成されたときに、前記応答パケットを受信した通信インタフェースを選択する付記3に記載の通信端末。
(付記5)各通信インタフェースの状態を示す状態情報を記憶する状態記憶手段(例えば、状態記憶部18)と、前記状態情報を前記状態記憶手段に記憶させる状態管理手段(例えば、状態管理部19)とを備え、制御手段は、通信インタフェースを選択したときに、当該通信インタフェースの状態に基づいてタイムアウトの判定基準時刻を決定する付記1から付記4のうちのいずれかに記載の通信端末。
(付記6)制御手段は、規則に従って通信インタフェースを選択し、パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力された場合、前記規則を更新する付記1から付記5のうちのいずれかに記載の通信端末。
(付記7)それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する複数の通信インタフェース(例えば、通信インタフェース11)を備える通信端末に適用される通信方法であって、パケット生成手段(例えば、通信ソフトウェア基本部13)が、宛先となる装置(例えば、サーバ4、名前解決サーバ5)からサービスの提供を受けるためのデータに基づいてパケットを生成し、制御手段(例えば、制御部14)が、前記複数の通信インタフェースの中から1つの通信インタフェースを選択し、前記パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻(例えば、時刻T)までに入力されない場合、前記通信インタフェースとは異なる通信インタフェースを選択し、前記パケットのコピーを当該通信インタフェースに送ることを前記パケット処理手段に指示し、前記パケット処理手段(例えば、通信処理部15)が、前記制御手段の指示に従ってパケットを、前記制御手段によって選択された通信インタフェースに送ることを特徴とする通信方法。
(付記8)パケット生成手段が、パケット処理手段のアドレスを送信元とするパケットを生成し、制御手段が、前記パケットの送信元アドレスを、選択した通信インタフェースのアドレスに書き換えることを前記パケット処理手段に指示する付記7に記載の通信方法。
(付記9)対応関係記憶手段(例えば、名前解決サーバアドレス記憶部16)が、名前解決サーバのアドレスと通信インタフェースとの対応関係を記憶し、名前解決サーバ選択手段(例えば、名前解決部17)が、複数の名前解決サーバの中から1つの名前解決サーバを選択し、選択した名前解決サーバをパケット生成手段に対して指定し、前記パケット生成手段が、前記名前解決サーバ選択手段によって指定された名前解決サーバのアドレスを送信先アドレスとするパケット(例えば、名前解決要求パケット)を、名前解決の対象となる装置名(例えば、サーバ4の名前)に基づいて生成し、制御手段が、前記パケット生成手段によって生成されたパケットの送信先アドレスと、選択した通信インタフェースに対応する名前解決サーバのアドレスとが一致していない場合、前記パケットの送信先アドレスを、選択した通信インタフェースに対応する名前解決サーバのアドレスに書き換えることをパケット処理手段に指示する付記7または付記8に記載の通信方法。
(付記10)制御手段が、選択した通信インタフェースから出力されたパケットに対する応答となる応答パケット(例えば、名前解決応答パケット)が名前解決サーバから伝達された場合、当該応答パケットに含まれている名前解決の対象となる装置のアドレス(例えば、サーバ4のアドレス)を抽出し、当該アドレスを送信先アドレスとするパケットが生成されたときに、前記応答パケットを受信した通信インタフェースを選択する付記9に記載の通信方法。
(付記11)状態管理手段(例えば、状態管理部19)が、各通信インタフェースの状態を示す状態情報を状態記憶手段(例えば、状態記憶部18)に記憶させ、制御手段が、通信インタフェースを選択したときに、当該通信インタフェースの状態に基づいてタイムアウトの判定基準時刻を決定する付記7から付記10のうちのいずれかに記載の通信方法。
(付記12)制御手段が、規則に従って通信インタフェースを選択し、パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力された場合、前記規則を更新する付記7から付記11のうちのいずれかに記載の通信方法。
(付記13)それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する通信インタフェース(例えば、通信インタフェース11)と、指示された通信インタフェースに対してパケットを送るパケット処理手段(例えば、通信処理部15)を備えるコンピュータに搭載される通信プログラムであって、前記コンピュータに、宛先となる装置(例えば、サーバ4、名前解決サーバ5)からサービスの提供を受けるためのデータに基づいてパケットを生成するパケット生成処理、および、前記複数の通信インタフェースの中から1つの通信インタフェースを選択し、前記パケット生成処理で生成されたパケットを当該通信インタフェースに送ることを前記パケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻(例えば、時刻T)までに入力されない場合、前記通信インタフェースとは異なる通信インタフェースを選択し、前記パケットのコピーを当該通信インタフェースに送ることを前記パケット処理手段に指示する制御処理を実行させるための通信プログラム。
(付記14)コンピュータに、パケット生成処理で、パケット処理手段のアドレスを送信元とするパケットを生成させ、制御処理で、前記パケットの送信元アドレスを、選択した通信インタフェースのアドレスに書き換えることを前記パケット処理手段に指示させる付記13に記載の通信プログラム。
(付記15)名前解決サーバのアドレスと通信インタフェースとの対応関係を記憶する対応関係記憶手段(例えば、名前解決サーバアドレス記憶部16)を備えるコンピュータに、複数の名前解決サーバの中から1つの名前解決サーバを選択する名前解決サーバ選択処理を実行させ、パケット生成処理で、前記名前解決サーバ選択処理で選択された名前解決サーバのアドレスを送信先アドレスとするパケット(例えば、名前解決要求パケット)を、名前解決の対象となる装置名(例えば、サーバ4の名前)に基づいて生成し、制御処理で、前記パケット生成処理で生成されたパケットの送信先アドレスと、選択した通信インタフェースに対応する名前解決サーバのアドレスとが一致していない場合、前記パケットの送信先アドレスを、選択した通信インタフェースに対応する名前解決サーバのアドレスに書き換えることをパケット処理手段に指示させる付記13または付記14に記載の通信プログラム。
(付記16)コンピュータに、制御処理で、選択した通信インタフェースから出力されたパケットに対する応答となる応答パケット(例えば、名前解決応答パケット)が名前解決サーバから伝達された場合、当該応答パケットに含まれている名前解決の対象となる装置のアドレス(例えば、サーバ4のアドレス)を抽出させ、当該アドレスを送信先アドレスとするパケットが生成されたときに、前記応答パケットを受信した通信インタフェースを選択させる付記15に記載の通信プログラム。
(付記17)各通信インタフェースの状態を示す状態情報を記憶する状態記憶手段(例えば、状態記憶部18)を備えるコンピュータに、各通信インタフェースの状態を示す状態情報を前記状態記憶手段に記憶させる状態管理処理を実行させ、制御処理で、通信インタフェースを選択したときに、当該通信インタフェースの状態に基づいてタイムアウトの判定基準時刻を決定させる付記13から付記16のうちのいずれかに記載の通信プログラム。
(付記18)コンピュータに、制御処理で、規則に従って通信インタフェースを選択させ、パケット生成処理で生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示させ、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力された場合、前記規則を更新させる付記13から付記17のうちのいずれかに記載の通信プログラム。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2013年12月6日に出願された日本特許出願2013-252663を基礎とする優先権を主張し、その開示の全てをここに取り込む。
産業上の利用の可能性
 本発明は、複数の無線ネットワークに接続可能な通信端末に好適に適用される。
 1 通信端末
 11a,11b 通信インタフェース
 12 データ授受部
 13 通信ソフトウェア基本部
 14 制御部
 15 通信処理部
 16 名前解決サーバアドレス記憶部
 17 名前解決部
 18 状態記憶部
 19 状態管理部

Claims (10)

  1.  それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する複数の通信インタフェースと、
     宛先となる装置からサービスの提供を受けるためのデータに基づいてパケットを生成するパケット生成手段と、
     指示された通信インタフェースに対してパケットを送るパケット処理手段と、
     前記複数の通信インタフェースの中から1つの通信インタフェースを選択し、前記パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることを前記パケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力されない場合、前記通信インタフェースとは異なる通信インタフェースを選択し、前記パケットのコピーを当該通信インタフェースに送ることを前記パケット処理手段に指示する制御手段とを備える
     ことを特徴とする通信端末。
  2.  パケット生成手段は、
     パケット処理手段のアドレスを送信元とするパケットを生成し、
     制御手段は、
     前記パケットの送信元アドレスを、選択した通信インタフェースのアドレスに書き換えることを前記パケット処理手段に指示する
     請求項1に記載の通信端末。
  3.  複数の名前解決サーバの中から1つの名前解決サーバを選択し、選択した名前解決サーバをパケット生成手段に対して指定する名前解決サーバ選択手段と、
     名前解決サーバのアドレスと通信インタフェースとの対応関係を記憶する対応関係記憶手段とを備え、
     パケット生成手段は、前記名前解決サーバ選択手段によって指定された名前解決サーバのアドレスを送信先アドレスとするパケットを、名前解決の対象となる装置名に基づいて生成し、
     制御手段は、
     前記パケット生成手段によって生成されたパケットの送信先アドレスと、選択した通信インタフェースに対応する名前解決サーバのアドレスとが一致していない場合、前記パケットの送信先アドレスを、選択した通信インタフェースに対応する名前解決サーバのアドレスに書き換えることをパケット処理手段に指示する
     請求項1または請求項2に記載の通信端末。
  4.  制御手段は、
     選択した通信インタフェースから出力されたパケットに対する応答となる応答パケットが名前解決サーバから伝達された場合、当該応答パケットに含まれている名前解決の対象となる装置のアドレスを抽出し、当該アドレスを送信先アドレスとするパケットが生成されたときに、前記応答パケットを受信した通信インタフェースを選択する
     請求項3に記載の通信端末。
  5.  各通信インタフェースの状態を示す状態情報を記憶する状態記憶手段と、
     前記状態情報を前記状態記憶手段に記憶させる状態管理手段とを備え、
     制御手段は、
     通信インタフェースを選択したときに、当該通信インタフェースの状態に基づいてタイムアウトの判定基準時刻を決定する
     請求項1から請求項4のうちのいずれか1項に記載の通信端末。
  6.  制御手段は、
     規則に従って通信インタフェースを選択し、パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力された場合、前記規則を更新する
     請求項1から請求項5のうちのいずれか1項に記載の通信端末。
  7.  それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する複数の通信インタフェースを備える通信端末に適用される通信方法であって、
     パケット生成手段が、
     宛先となる装置からサービスの提供を受けるためのデータに基づいてパケットを生成し、
     制御手段が、
     前記複数の通信インタフェースの中から1つの通信インタフェースを選択し、前記パケット生成手段によって生成されたパケットを当該通信インタフェースに送ることをパケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力されない場合、前記通信インタフェースとは異なる通信インタフェースを選択し、前記パケットのコピーを当該通信インタフェースに送ることを前記パケット処理手段に指示し、
     前記パケット処理手段が、
     前記制御手段の指示に従ってパケットを、前記制御手段によって選択された通信インタフェースに送る
     ことを特徴とする通信方法。
  8.  パケット生成手段が、
     パケット処理手段のアドレスを送信元とするパケットを生成し、
     制御手段が、
     前記パケットの送信元アドレスを、選択した通信インタフェースのアドレスに書き換えることを前記パケット処理手段に指示する
     請求項7に記載の通信方法。
  9.  それぞれが複数の無線ネットワークのうちの少なくとも1つの無線ネットワークに対応する通信インタフェースと、指示された通信インタフェースに対してパケットを送るパケット処理手段を備えるコンピュータに搭載される通信プログラムであって、
     前記コンピュータに、
     宛先となる装置からサービスの提供を受けるためのデータに基づいてパケットを生成するパケット生成処理、および、
     前記複数の通信インタフェースの中から1つの通信インタフェースを選択し、前記パケット生成処理で生成されたパケットを当該通信インタフェースに送ることを前記パケット処理手段に指示し、前記パケットに対する応答となる応答パケットがタイムアウトの判定基準時刻までに入力されない場合、前記通信インタフェースとは異なる通信インタフェースを選択し、前記パケットのコピーを当該通信インタフェースに送ることを前記パケット処理手段に指示する制御処理
     を実行させるための通信プログラム。
  10.  コンピュータに、
     パケット生成処理で、
     パケット処理手段のアドレスを送信元とするパケットを生成させ、
     制御処理で、
     前記パケットの送信元アドレスを、選択した通信インタフェースのアドレスに書き換えることを前記パケット処理手段に指示させる
     請求項9に記載の通信プログラム。
PCT/JP2014/005543 2013-12-06 2014-11-04 通信端末、通信方法および通信プログラム WO2015083320A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015551373A JPWO2015083320A1 (ja) 2013-12-06 2014-11-04 通信端末、通信方法および通信プログラム
US15/038,793 US9942823B2 (en) 2013-12-06 2014-11-04 Communication terminal, communication method, and communication program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-252663 2013-12-06
JP2013252663 2013-12-06

Publications (1)

Publication Number Publication Date
WO2015083320A1 true WO2015083320A1 (ja) 2015-06-11

Family

ID=53273107

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/005543 WO2015083320A1 (ja) 2013-12-06 2014-11-04 通信端末、通信方法および通信プログラム

Country Status (3)

Country Link
US (1) US9942823B2 (ja)
JP (1) JPWO2015083320A1 (ja)
WO (1) WO2015083320A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106210118A (zh) * 2016-07-29 2016-12-07 三维通信股份有限公司 一种扁平化智能楼宇精密控制系统及方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6822269B2 (ja) * 2017-03-29 2021-01-27 コニカミノルタ株式会社 光書き込み装置及び画像形成装置
JP7089854B2 (ja) * 2017-09-15 2022-06-23 パナソニックホールディングス株式会社 端末装置、通信システム、および通信制御方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006333336A (ja) * 2005-05-30 2006-12-07 Kyocera Corp データ通信方法、データ通信システム、路側装置及び移動体機
JP2007267407A (ja) * 2007-05-14 2007-10-11 Hitachi Kokusai Electric Inc 通信端末及び中継装置
JP2008263520A (ja) * 2007-04-13 2008-10-30 Casio Hitachi Mobile Communications Co Ltd 携帯型電子装置、プログラム
JP2009267847A (ja) * 2008-04-25 2009-11-12 Kyocera Corp 無線端末装置および無線ネットワークシステム
JP2010114774A (ja) * 2008-11-07 2010-05-20 Toshiba Corp 無線通信装置及び無線通信方法
WO2012053049A1 (ja) * 2010-10-18 2012-04-26 クラリオン株式会社 通信端末、及びその通信インタフェース選択プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3361118B2 (ja) 1992-03-19 2003-01-07 株式会社サン・コミュニケーションズ 無線データ伝送装置
JP4180758B2 (ja) 1999-11-08 2008-11-12 株式会社日立製作所 無線ネットワーク、その経路制御方法および無線通信制御装置
JP2007184836A (ja) 2006-01-10 2007-07-19 Nippon Telegr & Teleph Corp <Ntt> 通信方法および通信装置
US9621458B2 (en) * 2012-02-21 2017-04-11 Qualcomm Incorporated Internet routing over a service-oriented architecture bus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006333336A (ja) * 2005-05-30 2006-12-07 Kyocera Corp データ通信方法、データ通信システム、路側装置及び移動体機
JP2008263520A (ja) * 2007-04-13 2008-10-30 Casio Hitachi Mobile Communications Co Ltd 携帯型電子装置、プログラム
JP2007267407A (ja) * 2007-05-14 2007-10-11 Hitachi Kokusai Electric Inc 通信端末及び中継装置
JP2009267847A (ja) * 2008-04-25 2009-11-12 Kyocera Corp 無線端末装置および無線ネットワークシステム
JP2010114774A (ja) * 2008-11-07 2010-05-20 Toshiba Corp 無線通信装置及び無線通信方法
WO2012053049A1 (ja) * 2010-10-18 2012-04-26 クラリオン株式会社 通信端末、及びその通信インタフェース選択プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106210118A (zh) * 2016-07-29 2016-12-07 三维通信股份有限公司 一种扁平化智能楼宇精密控制系统及方法

Also Published As

Publication number Publication date
US20170164262A1 (en) 2017-06-08
US9942823B2 (en) 2018-04-10
JPWO2015083320A1 (ja) 2017-03-16

Similar Documents

Publication Publication Date Title
EP2562970B1 (en) Switch, and flow table control method
CN107342952B (zh) 业务链路选择控制方法以及设备
US20160261464A1 (en) Control apparatus, communication system, communication method, and program
EP2544417A1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
KR101810340B1 (ko) 정보 시스템, 제어 장치, 통신 방법 및 기록 매체
WO2015083320A1 (ja) 通信端末、通信方法および通信プログラム
JP5725236B2 (ja) 通信システム、ノード、パケット転送方法およびプログラム
WO2015052867A1 (ja) 端末装置、端末装置制御方法および端末装置制御プログラム
JP2019053505A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP6566124B2 (ja) 通信システム、フロー制御装置、フロー処理装置及び制御方法
JP6394606B2 (ja) 端末装置、端末装置制御方法および端末装置制御プログラム
JP6299268B2 (ja) 通信中継装置、および通信システム
US9455911B1 (en) In-band centralized control with connection-oriented control protocols
JP2009049508A (ja) 通信装置およびプログラム、並びに、ネットワーク選択方法
JP2018125580A (ja) 通信中継装置、サーバー装置、画像処理ユニット及びプログラム
JP6583927B2 (ja) 管理装置、管理方法、及び管理プログラム
WO2015052870A1 (ja) 端末装置、端末装置制御方法、および端末装置制御プログラム
JP6333500B2 (ja) 中継装置、中継方法及び中継プログラム
WO2014175250A1 (ja) 通信端末、制御装置、通信システム、通信方法及びプログラム
JP2006094277A (ja) 無線lanアクセスポイント
WO2015129727A1 (ja) 通信端末、通信方法およびプログラム
JP2022076833A (ja) 情報処理装置及び情報処理プログラム
JP3843280B2 (ja) ネットワークシステム、ネットワーク端末装置、及びその制御方法
JP6134571B2 (ja) 疎通確認装置、ネットワークシステム、疎通確認方法、および疎通確認プログラム

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: 14866896

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15038793

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2015551373

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14866896

Country of ref document: EP

Kind code of ref document: A1