JP2010074279A - Communication equipment, method and program - Google Patents

Communication equipment, method and program Download PDF

Info

Publication number
JP2010074279A
JP2010074279A JP2008236823A JP2008236823A JP2010074279A JP 2010074279 A JP2010074279 A JP 2010074279A JP 2008236823 A JP2008236823 A JP 2008236823A JP 2008236823 A JP2008236823 A JP 2008236823A JP 2010074279 A JP2010074279 A JP 2010074279A
Authority
JP
Japan
Prior art keywords
communication
unit
information
control
application
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2008236823A
Other languages
Japanese (ja)
Inventor
Takeshi Ishihara
丈士 石原
Keisuke Mera
恵介 米良
Yasuhiro Fukuju
康弘 福壽
Yasuyuki Tanaka
康之 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008236823A priority Critical patent/JP2010074279A/en
Publication of JP2010074279A publication Critical patent/JP2010074279A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To reduce a processing load for performing proper communication control. <P>SOLUTION: Communication equipment 100 is provided with: a communicating part 104 for performing communication control through a network; an executing part 107 for executing an application that requests communication from the communicating part 104; a detecting part 109 for detecting state information indicating a network state to be used by the communicating part 107; a storing part 101 for associating the state information showing the network state with communication control information for performing control suitable to the network state about the communication for which the application requests to the communicating part to store them; and a control part 106 for controlling the communication for which the application requests to the communicating part 104 on the basis of the state information detected by the detecting part 109 and the communication control means associated by the storing part 101. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

この発明は、ネットワークに応じた通信を行う通信装置、方法及びプログラムに関するものである。   The present invention relates to a communication apparatus, method, and program for performing communication according to a network.

近年、コンピュータ技術の向上により、計算機が小型化する傾向にある。このため、小型化された計算機は、利用者が携帯することを容易になった。そして、利用者が一つの計算機を持ち運び、様々な状況の下で利用することが一般化している。また、当該計算機には、利用者が使用する様々なプログラムやデータが格納される傾向にある。   In recent years, with the improvement of computer technology, computers tend to become smaller. For this reason, it has become easy for a user to carry a miniaturized computer. And it is common for a user to carry a computer and use it under various circumstances. Further, the computer tends to store various programs and data used by users.

このような計算機には、利用状況に応じてネットワークに接続するために様々なネットワークインターフェイスが用意されている。様々なネットワークインターフェイスを使い分けることで、例えば、オフィスにて使用する場合には有線接続のネットワークに接続し、外出先で使用する場合には携帯電話や公衆ワイヤレスネットワークなどに接続することが可能となる。そして、オフィスでネットワークに有線接続されている場合、オフィスアプリケーション、オフィス内のコミュニケーション手段としてショートメッセージやビジュアルコミュニケーションのアプリケーションの使用が考えられる。外出先で携帯電話や公衆ワイヤレスネットワークに接続された場合、電子メールなどの限られたアプリケーションを中心に使用すると考えられる。   In such a computer, various network interfaces are prepared for connection to a network according to the use situation. By using various network interfaces properly, for example, it is possible to connect to a wired network when using it in the office, and connect to a mobile phone or public wireless network when using it on the go. . When the office is wired to the network, it is conceivable to use a short message or visual communication application as an office application or a communication means in the office. When connected to a mobile phone or public wireless network on the go, it is thought that it will be used mainly for limited applications such as e-mail.

このように、計算機を使用する環境に応じて、接続手法および利用するプログラムが異なる傾向がある。しかしながら、環境に応じて計算機の利用方法が異なる場合であっても、通常の計算機では、環境にかかわらず、毎回同じ初期状態からアプリケーションを起動してネットワークを利用する。このため、環境に応じて最適なネットワーク状況を維持するのが難しい。   As described above, the connection method and the program to be used tend to differ depending on the environment in which the computer is used. However, even if the computer usage method varies depending on the environment, the normal computer starts the application from the same initial state and uses the network every time regardless of the environment. For this reason, it is difficult to maintain an optimal network state according to the environment.

そこで、特許文献1では、ネットワークや計算機の環境に応じて、リアルタイムにアプリケーションプロトコルやトランスポートプロトコルのパラメータを調整し、最適なネットワーク状況を維持する技術が提案されている。これにより、鉄道や自動車などで移動しながら使用する場合であっても、適切な通信状態を維持できる。   In view of this, Japanese Patent Laid-Open No. 2004-228867 proposes a technique for adjusting an application protocol or transport protocol parameter in real time according to the network or computer environment to maintain an optimal network state. Thereby, even if it is a case where it uses, moving by a railroad, a motor vehicle, etc., an appropriate communication state can be maintained.

特開2000−78232号公報JP 2000-78232 A

しかしながら、特許文献1に記載された技術では、ネットワーク状況に応じて適切な通信状態を維持できるが、リアルタイムに追従する必要があるため、常に最適化パラメータを導出するための演算処理が必要となる。   However, in the technique described in Patent Document 1, an appropriate communication state can be maintained according to the network situation, but since it is necessary to follow in real time, an arithmetic process for always deriving an optimization parameter is required. .

このため、過去のネットワーク状況と同様のネットワーク状況になった場合でも、過去に導出した最適化パラメータを利用することができず、計算機の計算処理負担が大きくなる。また、計算機の計算処理負担の向上に応じて、消費する消費電力も増加する。これは、利用者が当該計算機を外出先で利用する場合に大きな問題となる。   For this reason, even when the network situation is similar to the past network situation, the optimization parameters derived in the past cannot be used, and the calculation processing load of the computer increases. In addition, power consumption increases as the calculation processing load on the computer increases. This is a big problem when the user uses the computer on the go.

本発明は、上記に鑑みてなされたものであって、ネットワーク状況に応じた制御を行うとともに、計算処理負担を軽減する通信装置、方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above, and an object of the present invention is to provide a communication device, a method, and a program that perform control according to network conditions and reduce the calculation processing burden.

上述した課題を解決し、目的を達成するために、本発明にかかる通信装置は、ネットワークを介して通信制御を行う通信部と、前記通信部に対して通信を要求するアプリケーションを実行する実行部と、前記通信部が用いるネットワーク状態を示す状態情報を検出する検出部と、ネットワーク状態を示す状態情報と、前記アプリケーションが前記通信部に対して要求する通信について当該ネットワーク状態に適した制御を行う通信制御情報と、を対応づけて記憶する記憶部と、前記検出部により検出された前記状態情報と、前記記憶部で対応づけられた前記通信制御情報に基づいて、前記アプリケーションが前記通信部に対して要求する通信を制御する制御部と、を備えることを特徴とする。   In order to solve the above-described problems and achieve the object, a communication device according to the present invention includes a communication unit that performs communication control via a network, and an execution unit that executes an application that requests communication from the communication unit And a detection unit that detects status information indicating the network status used by the communication unit, status information indicating the network status, and communication that the application requests to the communication unit, and performs control suitable for the network status The application is stored in the communication unit based on the storage unit that associates and stores communication control information, the state information detected by the detection unit, and the communication control information associated in the storage unit. And a control unit that controls communication requested to the terminal.

また、本発明にかかる通信方法は、通信装置で実行される通信方法であって、前記通信装置は、ネットワーク状態を示す状態情報と、前記アプリケーションが前記通信部に対して要求する通信について当該ネットワーク状態に適した制御を行う通信制御情報と、を対応づけて記憶する記憶部を備え、通信部が、ネットワークを介して通信制御を行う通信ステップと、実行部が、前記通信部に対して通信を要求するアプリケーションを実行する実行ステップと、検出部が、前記通信部が用いるネットワーク状態を示す前記状態情報を検出する検出ステップと、前記検出ステップにより検出された前記状態情報と、前記記憶部で対応づけられた前記通信制御情報に基づいて、前記アプリケーションが前記通信部に対して要求する通信を制御する制御ステップと、を有することを特徴とする。   The communication method according to the present invention is a communication method executed by a communication device, and the communication device is configured to transmit status information indicating a network status and communication requested by the application to the communication unit. A storage unit that associates and stores communication control information that performs control suitable for the state, a communication unit that performs communication control via a network, and an execution unit that communicates with the communication unit An execution step of executing an application requesting the detection, a detection unit detecting the state information indicating a network state used by the communication unit, the state information detected by the detection step, and the storage unit Based on the associated communication control information, a control for controlling communication requested by the application to the communication unit. A method, characterized by having a.

また、本発明にかかる通信プログラムは、コンピュータが、ネットワーク状態を示す状態情報と、前記アプリケーションが前記通信部に対して要求する通信について当該ネットワーク状態に適した制御を行う通信制御情報と、を対応づけて記憶する記憶部を備え、ネットワークを介して通信制御を行う通信ステップと、前記通信部に対して通信を要求するアプリケーションを実行する実行ステップと、前記通信部が用いるネットワーク状態を示す前記状態情報を検出する検出ステップと、前記検出ステップにより検出された前記状態情報と、前記記憶部で対応づけられた前記通信制御情報に基づいて、前記アプリケーションが前記通信部に対して要求する通信を制御する制御ステップと、をコンピュータに実行させる。   Further, the communication program according to the present invention corresponds to a state information indicating a network state by a computer and communication control information for performing a control suitable for the network state with respect to communication requested by the application to the communication unit. A communication step that includes a storage unit that stores information and performs communication control via a network; an execution step that executes an application that requests communication from the communication unit; and the state that indicates a network state used by the communication unit Based on the detection step for detecting information, the status information detected in the detection step, and the communication control information associated with the storage unit, the communication requested by the application to the communication unit is controlled. And causing the computer to execute control steps.

本発明によれば、通信制御情報に基づいて通信制御を行うことで、アプリケーションからの要求に基づく通信制御を適切に行うと共に、適切・:な通信制御を行うための処理負担を軽減させるという効果を奏する。   According to the present invention, by performing communication control based on communication control information, it is possible to appropriately perform communication control based on a request from an application and to reduce the processing load for performing appropriate and appropriate communication control. Play.

以下に添付図面を参照して、この発明にかかる通信装置、方法及びプログラムの最良な実施の形態を詳細に説明する。   Exemplary embodiments of a communication apparatus, method, and program according to the present invention will be explained below in detail with reference to the accompanying drawings.

(第1の実施の形態)
図1に示すように、第1の実施の形態にかかる通信装置100は、記憶部101と、無線ネットワークI/F102と、有線ネットワークI/F103と、通信部104と、登録・更新部105と、制御部106と、実行部107と、環境情報取得部108と、検出部109とを備える。通信装置100は、上述した構成以外のその他の要素を含んでいてもよいが、本実施の形態において説明として不要のため省略する。そして、通信装置100が接続するネットワークを介して、例えばサーバ150との間で通信を行う。
(First embodiment)
As illustrated in FIG. 1, the communication device 100 according to the first embodiment includes a storage unit 101, a wireless network I / F 102, a wired network I / F 103, a communication unit 104, a registration / update unit 105, and the like. A control unit 106, an execution unit 107, an environment information acquisition unit 108, and a detection unit 109. The communication device 100 may include other elements other than the configuration described above, but is omitted because it is not necessary for the description in the present embodiment. Then, communication is performed with, for example, the server 150 via the network to which the communication device 100 is connected.

無線ネットワークI/F102は、無線を用いてネットワークに接続するネットワークインターフェイスとする。無線接続方式としては、周知を問わずあらゆる方式を含むものとする。   The wireless network I / F 102 is a network interface that connects to a network using wireless communication. The wireless connection method includes all methods regardless of well-known methods.

有線ネットワークI/F103は、ネットワークに有線接続するネットワークインターフェイスとする。有線接続方式としては、例えば100BASE―Tなど、周知を問わずあらゆる方式を含むものとする。なお、通信装置100が備えるネットワークインターフェイスは、上記種類に制限するものではない。また通信装置100が備えるネットワークインターフェイスを2個に制限するものではなく、1個又は3個以上でも良い。   The wired network I / F 103 is a network interface that is wired to the network. As a wired connection system, for example, any system such as 100BASE-T may be used regardless of the known system. Note that the network interface provided in the communication device 100 is not limited to the above types. Further, the number of network interfaces provided in the communication apparatus 100 is not limited to two, and may be one or three or more.

通信部104は、無線ネットワークI/F102又は有線ネットワークI/F103を用いて接続されたネットワークを介して、データ通信を行う。データ通信は、後述する実行部107で実行されたアプリケーションがデータの送受信に使用する。   The communication unit 104 performs data communication via a network connected using the wireless network I / F 102 or the wired network I / F 103. Data communication is used by an application executed by the execution unit 107 described later for data transmission / reception.

検出部109は、通信部104が用いるネットワークの状態を示す状態情報を検出する。なお、状態情報の例については後述する。   The detection unit 109 detects state information indicating the state of the network used by the communication unit 104. An example of status information will be described later.

環境情報取得部108は、通信部104により通信しているネットワーク環境下において、実行部107で実行されたアプリケーション及び通信装置100自体又はこれら周辺を示す環境情報を検出する。環境情報としては、例えば、ログインしているユーザ情報、実行されているアプリケーションを識別するプログラムIDや、アプリケーションが通信を要求した通信先などを示した通信情報、そしてアプリケーションが送受信したデータの種類を示すデータ種類などとする。   The environment information acquisition unit 108 detects environment information indicating the application executed by the execution unit 107 and the communication device 100 itself or their surroundings in the network environment in which the communication unit 104 is communicating. The environment information includes, for example, logged-in user information, a program ID for identifying the application being executed, communication information indicating a communication destination requested by the application, and the type of data transmitted / received by the application. The data type to be shown.

記憶部101は、実行部107で実行されるアプリケーションや、制御部106で使用する制御情報を記憶する。図2に示すように、記憶部101は、通常のアプリケーションプログラム201と、当該アプリケーションプログラム201に関する制御情報202とを対応付けて記憶する。   The storage unit 101 stores an application executed by the execution unit 107 and control information used by the control unit 106. As illustrated in FIG. 2, the storage unit 101 stores a normal application program 201 and control information 202 related to the application program 201 in association with each other.

この制御情報202は、対応付けられたアプリケーションプログラム201が実行されたときの状況に従って、登録・更新部105により登録又は更新が行われた情報とする。この制御情報202により、通信制御を行うことが可能になる。   The control information 202 is information registered or updated by the registration / update unit 105 in accordance with the situation when the associated application program 201 is executed. This control information 202 enables communication control.

アプリケーションプログラム201は、実行を通じて変更されることはないが、制御情報202は、対応するアプリケーションプログラム201が実行されている場合に、ネットワーク状況の変化等に基づいて登録、更新が行われる。   The application program 201 is not changed through execution, but the control information 202 is registered and updated based on a change in network status or the like when the corresponding application program 201 is executed.

そして、図2に示すように、複数のアプリケーションについて、アプリケーションプログラム毎に制御情報が対応付けて記憶される。なお、記憶部101に記憶されるアプリケーションプログラムは、必ずしも上述した構成を備える必要はなく、制御情報と対応付けられていない状態で記憶されても良い。他の例としては、アプリケーションプログラムと制御情報が関連付けられた形式ではあるが、制御情報はなにも登録されておらず、アプリケーションプログラムのみ登録されているという形式でも良い。   As shown in FIG. 2, control information is stored in association with each application program for a plurality of applications. The application program stored in the storage unit 101 does not necessarily have the above-described configuration, and may be stored in a state that is not associated with the control information. As another example, the application program and the control information are associated with each other, but the control information is not registered at all, and only the application program is registered.

記憶部101が記憶する制御情報は、アプリケーションプログラム201毎に生成されたテーブルにおいて、ネットワークの状態を示す状態情報や、通信装置100やアプリケーションの状況を表す環境情報、アプリケーションが行う通信を制御するための通信制御情報を、検索キーと対応付けて記憶する。つまり、記憶部101は、検索キーを介して、ネットワークの状態を示す状態情報と、通信装置100やアプリケーションの状況を示す環境情報と、検出されたネットワーク環境下でアプリケーションによる通信制御を調整するための通信制御情報とを対応付けて記憶する。検索キーとしては、本実施の形態では、登録や更新が行われた時刻を示す記録時刻を用いる。なお、後述するコンテキスト等を用いてもよい。   The control information stored in the storage unit 101 is used to control status information indicating the status of the network, environment information indicating the status of the communication device 100 and the application, and communication performed by the application in a table generated for each application program 201. Is stored in association with the search key. That is, the storage unit 101 uses the search key to adjust state information indicating the state of the network, environment information indicating the state of the communication device 100 and the application, and communication control by the application in the detected network environment. Are stored in association with each other. As the search key, in the present embodiment, a recording time indicating a time when registration or update is performed is used. In addition, you may use the context etc. which are mentioned later.

なお、図2に示す記憶部101の形式は、一例として示したものであり、アプリケーションプログラム毎に制御情報が対応付けられた構造に制限するものではない。例えば、アプリケーションプログラム及び制御情報を異なるファイルとし、当該ファイルの拡張子によってその形式を区別する手法を採用しても良い。また、アプリケーションプログラム毎の制御情報を全て一括管理し、アプリケーションプログラムを識別する情報を検索条件と設定することで、どのアプリケーションプログラムと対応付けられているのか特定可能な形式で保存しても良い。このように、アプリケーションプログラムと、当該アプリケーションプログラムに関連する制御情報との対応関係が把握できる構造が実現できればよい。   Note that the format of the storage unit 101 shown in FIG. 2 is shown as an example, and is not limited to a structure in which control information is associated with each application program. For example, a method may be adopted in which the application program and the control information are different files, and the format is distinguished by the extension of the file. Further, all control information for each application program may be collectively managed, and information for identifying the application program may be set as a search condition, so that the application program can be stored in a format that can be specified. Thus, it is only necessary to realize a structure in which the correspondence between the application program and the control information related to the application program can be grasped.

本実施の形態においては、図3に示すように、記憶部101が記憶する制御情報は、情報IDと、コンテキストと、記録時刻と、値とを、対応付けて記憶する。   In the present embodiment, as shown in FIG. 3, the control information stored in the storage unit 101 stores an information ID, a context, a recording time, and a value in association with each other.

情報IDは、当該エントリに保存された情報を識別する。本実施の形態にかかる情報IDは、例えば、接続インターフェイスの種別、インターフェイスに付与されたIPアドレス、通信ごとの単位時間あたりの送信バイト数、通信ごとの単位時間あたりの受信バイト数、(ノード全体の)単位時間あたりの送信バイト数、(ノード全体の)単位時間あたりの受信バイト数、及び通信ごとのTCP制御情報などを識別するIDがある。そして、値に、情報IDによって識別された情報についての実際の値を保持する。例えば、値は、上述した接続インターフェイスの種別を特定する値や、インターフェイスに付与されたIPアドレス、通信ごとの単位時間あたりの送信バイト数が格納されている。   The information ID identifies information stored in the entry. The information ID according to the present embodiment includes, for example, the type of connection interface, the IP address assigned to the interface, the number of transmitted bytes per unit time for each communication, the number of received bytes per unit time for each communication, (the entire node ID) for identifying the number of transmitted bytes per unit time, the number of received bytes per unit time (for the entire node), TCP control information for each communication, and the like. Then, the actual value of the information identified by the information ID is held in the value. For example, the value stores a value that identifies the type of connection interface described above, an IP address assigned to the interface, and the number of transmission bytes per unit time for each communication.

コンテキストは、情報IDにより識別される情報が生成されたときの、通信装置100やネットワーク接続先などの状況を特定する。記録時刻は、情報IDにより識別される情報を記憶した時刻を示す。なお、記録時刻は、各情報を取得した時刻でもよい。   The context specifies a situation such as the communication device 100 or the network connection destination when the information identified by the information ID is generated. The recording time indicates the time when the information identified by the information ID is stored. The recording time may be the time when each piece of information is acquired.

例えば、コンテキストと記録時刻とを検索条件に設定して検索した場合に、同一の記録時刻、同一状況で行われた動作についての各情報の値を検出できる。つまり、同一記録時刻、同一状況で使用された接続インターフェイスや、インターフェイスに付与されたIPアドレス、単位時間あたりの送信バイト数を検出できる。   For example, when a search is performed by setting the context and the recording time as search conditions, the value of each information regarding the operation performed at the same recording time and the same situation can be detected. That is, the connection interface used in the same recording time and the same situation, the IP address assigned to the interface, and the number of transmission bytes per unit time can be detected.

図3に示す例では、記憶部101には、3種類の情報について4個のエントリが記憶されている。エントリ301とエントリ302は、同じ情報IDを保持しているため、同一種類の情報を保存しているが、記録時刻が異なる。エントリ301及び302、エントリ303、エントリ304は、それぞれ情報IDが異なるため、異なる種類の情報が保存されていることを示している。エントリ301及び303は同一時刻に取得されたことを把握できる。また、エントリ301〜エントリ303は同じコンテキストCTX1を保持しているため、記録時刻が異なるものもあるが、同じ状況の元で記録されたものとなる。次に状況を識別するコンテキストについて詳細に説明する。   In the example illustrated in FIG. 3, the storage unit 101 stores four entries for three types of information. Since the entry 301 and the entry 302 hold the same information ID, the same type of information is stored, but the recording times are different. The entries 301 and 302, the entry 303, and the entry 304 have different information IDs, indicating that different types of information are stored. It can be understood that the entries 301 and 303 are acquired at the same time. Further, since the entry 301 to the entry 303 hold the same context CTX1, some of them have different recording times, but they are recorded under the same situation. Next, the context for identifying the situation will be described in detail.

本実施の形態にかかる記憶部101の制御情報に保持されるコンテキストは、複数のフィールドで構成される。図4に示すコンテキストの例では、プログラムIDと、ユーザ情報と、通信情報と、データ種類とを対応付けて記憶している。このように、本実施の形態にかかるコンテキストには、通信装置100にログインしているユーザ情報や、実行されているアプリケーションプログラム、通信情報(例えば送信先、プロトコル及びポート番号)等のネットワーク状況や通信装置100の環境情報を含むものとする。これらをコンテキストとして設定することで、同一環境下で制御に用いられる制御情報を特定することが可能となる。   The context held in the control information of the storage unit 101 according to the present embodiment is composed of a plurality of fields. In the example of the context illustrated in FIG. 4, the program ID, user information, communication information, and data type are stored in association with each other. As described above, the context according to the present embodiment includes user information logged in the communication device 100, an application program being executed, network conditions such as communication information (for example, transmission destination, protocol, and port number), It is assumed that the environment information of the communication device 100 is included. By setting these as contexts, it is possible to specify control information used for control in the same environment.

アプリケーションIDは、アプリケーションプログラムを識別するIDとする。ユーザ情報は、当該アプリケーションプログラムを使用したユーザを識別する情報とする。通信情報は、アプリケーションプログラムが通信するために設定された各種通信パラメータとする。データ種類は、当該アプリケーションプログラムが通信で利用したデータの種別とする。   The application ID is an ID for identifying an application program. The user information is information for identifying a user who uses the application program. The communication information is various communication parameters set for the application program to communicate. The data type is the type of data used by the application program for communication.

また、コンテキストに含まれる通信情報としては、アプリケーションプログラムが通信するために設定された各通信パラメータとして、プロトコル番号、IPアドレス、ポート番号から構成される組み合わせを保持する。   Further, as communication information included in the context, a combination including a protocol number, an IP address, and a port number is held as each communication parameter set for communication with the application program.

図4に示すコンテキストの例では、2個のエントリ(エントリ401及びエントリ402)が登録されている。このエントリ401及びエントリ402は、一人のユーザ(userAで識別されるユーザ)が、一つのアプリケーションプログラム(Webブラウザ)を利用して、一つのサーバと通信を行うことで、複数の種類のデータ(HTML及びMPEGビデオ)を送受信していることが把握できる。   In the context example shown in FIG. 4, two entries (entry 401 and entry 402) are registered. The entry 401 and the entry 402 are configured so that a single user (a user identified by userA) communicates with a single server by using a single application program (Web browser), so that a plurality of types of data ( You can see that HTML and MPEG video are being sent and received.

このように、本実施の形態にかかるエントリにおいては、4個のフィールドのうち、1個でも異なる値のフィールドがあれば、別エントリとして登録される。本実施の形態においては、上述した様にコンテキストを細分化して詳細な情報を埋め込んだ。しかしながら、このようにコンテキストに詳細な情報を埋め込むのではなく、コンテキストの詳細な情報を保持する独立テーブルを生成し、この独立テーブルのエントリと、制御情報のテーブルのエントリと、を対応付ける対応表で管理しても良い。   As described above, in the entry according to the present embodiment, if any one of the four fields has a different value, it is registered as another entry. In the present embodiment, detailed information is embedded by subdividing the context as described above. However, instead of embedding detailed information in the context in this way, an independent table that holds the detailed information of the context is generated, and the correspondence table that associates the entry of the independent table with the entry of the control information table You may manage.

また、図4に示したコンテキストを用いて各エントリを生成すると、各エントリについてかなり詳細な情報が設定されているため、かなり多くの数のエントリが登録されるにもかかわらず、現在の状況と一致するエントリが少ないということも考えられる。つまり、エントリとして詳細な情報が設定可能であるが、状況によっては、ここまで詳細に情報を設定する必要がない場合もある。そこで、本実施の形態では、設定する必要がない情報については、不定として定義することで対応する。これにより、いくつかの要素をまとめて一つのコンテキストとして定義できる。図5に示す例では、コンテキストの通信情報として、プロトコルと通信相手のポート番号だけを特定してコンテキストを生成する例とする。   In addition, when each entry is generated using the context shown in FIG. 4, since quite detailed information is set for each entry, the current situation and It is also possible that there are few matching entries. That is, detailed information can be set as an entry, but depending on the situation, it may not be necessary to set detailed information so far. Therefore, in the present embodiment, information that does not need to be set is handled by defining it as indefinite. As a result, several elements can be defined as a single context. In the example shown in FIG. 5, the context is generated by specifying only the protocol and the port number of the communication partner as the context communication information.

図5に示す例では、TCPの80番ポートから送信されて、自通信装置100に向かう通信を含むコンテキストを表している。通信情報をこのように纏めることで、登録されるエントリの数を少なくすると供に、現在の状況と一致するエントリの抽出が容易になる。   In the example illustrated in FIG. 5, a context that includes communication that is transmitted from the TCP port 80 and is directed to the communication apparatus 100 is illustrated. By collecting communication information in this way, the number of registered entries can be reduced, and extraction of entries that match the current situation is facilitated.

図1に戻り、制御部106は、検出部109により検出されたネットワークの状態を示す状態情報と、環境情報取得部108により取得された環境情報と、記憶部101の制御情報で対応付けられた通信制御情報を用いて、アプリケーションが前記通信部104に対して要求する通信を制御する。   Returning to FIG. 1, the control unit 106 associates the state information indicating the state of the network detected by the detection unit 109, the environment information acquired by the environment information acquisition unit 108, and the control information of the storage unit 101. Communication requested by the application to the communication unit 104 is controlled using the communication control information.

また、制御部106は、実行部107によりアプリケーションが実行される前に、検出部109に検出されたネットワーク状態、及び環境情報取得部108により取得された環境情報と、記憶部101の制御情報で対応付けられた通信制御情報に基づいて、アプリケーションが通信部104に対して要求する通信制御に対する初期値を設定する。   In addition, the control unit 106 uses the network status detected by the detection unit 109 and the environment information acquired by the environment information acquisition unit 108 and the control information of the storage unit 101 before the execution unit 107 executes the application. Based on the associated communication control information, an initial value for communication control requested by the application to the communication unit 104 is set.

また、制御部106は、通信制御情報を用いてアプリケーションを制御した後、さらに、検出部109により検出されたネットワークの状態の変化に対応して、当該状態に適切になるように、実行部107で実行されているアプリケーションを制御する。この際、適切な通信制御情報がない場合、制御部106は、検出された状況情報及び取得した環境情報に対して演算を施すことで、ネットワーク状況及び通信装置100の置かれている環境に適した通信制御情報を算出し、算出した通信制御情報でアプリケーションを制御する。この適切な通信制御情報の算出手法は、周知を問わずあらゆる手法を用いて良い。   In addition, after controlling the application using the communication control information, the control unit 106 further responds to a change in the network state detected by the detection unit 109 so that the execution unit 107 becomes appropriate for the state. Control applications running on. At this time, if there is no appropriate communication control information, the control unit 106 performs an operation on the detected status information and the acquired environment information, so that it is suitable for the network status and the environment where the communication device 100 is placed. The communication control information is calculated, and the application is controlled with the calculated communication control information. Any appropriate method for calculating communication control information may be used regardless of known methods.

実行部107は、通信装置100上で様々なアプリケーションを実行する。実行するアプリケーションとしては、通信部104により通信された情報を用いるアプリケーションも、用いないアプリケーションも含まれる。   The execution unit 107 executes various applications on the communication device 100. Applications to be executed include applications that use information communicated by the communication unit 104 and applications that do not use the information.

登録・更新部105は、検出部109により検出されたネットワークの状態を示す状態情報、環境情報取得部108により取得された環境情報、及び制御部106が行った制御を示す通信制御情報を、上述した様に対応付けて記憶部101に登録、更新する。   The registration / update unit 105 receives the status information indicating the network status detected by the detection unit 109, the environment information acquired by the environment information acquisition unit 108, and the communication control information indicating the control performed by the control unit 106, as described above. As described above, it is registered and updated in the storage unit 101 in association with each other.

なお、図1に示した構成は一例であり、例えばネットワークインターフェイスが複数あってもよいし、実行部107が複数あってもよい。検出部109が監視対象とする状況に即した専用のセンサーを具備していてもよい。   The configuration illustrated in FIG. 1 is an example, and for example, there may be a plurality of network interfaces or a plurality of execution units 107. You may equip the sensor for exclusive use according to the condition which the detection part 109 makes monitoring object.

次に、本実施の形態にかかる通信装置100のアプリケーションプログラムの実行手順について、図6を用いて説明する。図6に示すシーケンス図では、通信装置100利用者がアプリケーションプログラムを起動する時点から開始される。図6に示す処理手順では、すでに通信装置100がネットワークに接続されているものとする。   Next, the execution procedure of the application program of the communication apparatus 100 according to the present embodiment will be described with reference to FIG. In the sequence diagram shown in FIG. 6, the communication apparatus 100 starts when the user starts the application program. In the processing procedure shown in FIG. 6, it is assumed that the communication apparatus 100 is already connected to the network.

まず、制御部106は、利用者により図示しないユーザインターフェイスを介してアプリケーションの起動が指示された場合、記憶部101に対して、当該アプリケーションのロードを指示する(ステップS601)。   First, the control unit 106 instructs the storage unit 101 to load the application when the user instructs activation of the application via a user interface (not shown) (step S601).

これにより、記憶部101に記憶されたアプリケーションプログラムが、実行部107の作業領域にロードされる(ステップS602)。そして、作業領域に格納されたアプリケーションプログラムは実行指示があるまで待機する。   As a result, the application program stored in the storage unit 101 is loaded into the work area of the execution unit 107 (step S602). Then, the application program stored in the work area waits until an execution instruction is given.

次に、制御部106は、アプリケーションプログラムのロードに続いて、環境情報取得部108を介して環境情報を取得する(ステップS603)。   Next, following the loading of the application program, the control unit 106 acquires environment information via the environment information acquisition unit 108 (step S603).

その後、制御部106は、検出部109により検出された状態情報を取得する(ステップS604)。   Thereafter, the control unit 106 acquires the state information detected by the detection unit 109 (step S604).

ステップS603及びステップS604で取得する環境情報及び状態情報は、実行するアプリケーションプログラムの通信制御に用いる通信制御情報に対応付けされた情報と同じ種類の情報に限定して取得してもよいし、より一般的な情報を取得しても良い。このように、取得する環境情報及び状態情報は、制御部106が、初期値導出処理に必要な情報であればよい。   The environment information and the state information acquired in step S603 and step S604 may be acquired by limiting to the same type of information as the information associated with the communication control information used for communication control of the application program to be executed. General information may be acquired. As described above, the environment information and the state information to be acquired may be information necessary for the control unit 106 to perform the initial value derivation process.

制御部106は、現在の状況を示した環境情報及び状態情報を取得した後、これら情報を検索条件に用いて、実行されるアプリケーションと記憶部101で対応付けられている制御情報から、現在の状況に類似する状況で使用された通信制御情報のエントリの検索を指示する(ステップS605)。   After acquiring the environment information and the state information indicating the current situation, the control unit 106 uses the information as a search condition, and from the control information associated with the application to be executed and the storage unit 101, A search for an entry of communication control information used in a situation similar to the situation is instructed (step S605).

そして、制御部106は、記憶部101から検索結果として、実行するアプリケーションの制御に適した通信制御情報のエントリを取得する(ステップS606)。また、検索条件に合致する通信制御情報のエントリがない場合は、その旨を制御部106に通知する(この場合の処理は図6では省略する)。   And the control part 106 acquires the entry of the communication control information suitable for control of the application to perform as a search result from the memory | storage part 101 (step S606). If there is no entry for communication control information that matches the search condition, this is notified to the control unit 106 (the processing in this case is omitted in FIG. 6).

例えば、取得した環境情報により、ネットワークAに接続されていることが判明した場合、かつてネットワークAに接続していたときにアプリケーションの制御に用いた最適なパラメータを取得する。このパラメータとしては、例えば実行するアプリケーションに適したTCPのウィンドウサイズなどがある。これにより、ネットワークの状況に応じたアプリケーションの実行が可能となる。   For example, when the acquired environment information indicates that the network A is connected, the optimum parameters used for controlling the application when the network A was connected once are acquired. Examples of this parameter include a TCP window size suitable for an application to be executed. This makes it possible to execute an application according to the network status.

取得した制御情報のエントリは、制御部106の作業領域に展開される。なお、制御部106の作業領域と、上述した実行部107の作業領域とは、通信装置100が備える、図示しないメインメモリ(RAM)上に設ける等が考えられる。   The acquired control information entry is expanded in the work area of the control unit 106. The work area of the control unit 106 and the work area of the execution unit 107 described above may be provided on a main memory (RAM) (not shown) included in the communication apparatus 100.

次に、制御部106は、アプリケーションを制御するために必要な通信制御情報のエントリを全て取得した後、アプリケーションを制御するための初期値を導出する(ステップS607)。   Next, the control unit 106 obtains all communication control information entries necessary for controlling the application, and then derives an initial value for controlling the application (step S607).

つまり、過去の状態情報及び環境情報と、今回の状態情報及び環境情報とが一致した場合に、過去にアプリケーションの制御に用いた最適なパラメータを初期値として設定すればよい。また、過去の状態情報及び環境情報と、今回の状態情報及び環境情報とが異なる場合にはこれらの値と過去にアプリケーションの制御に用いた最適なパラメータとに基づいて、今回に最適なパラメータを算出する。   That is, when past state information and environment information coincides with current state information and environment information, an optimal parameter used for application control in the past may be set as an initial value. In addition, when the past state information and environment information are different from the current state information and environment information, the optimum parameters for this time are determined based on these values and the optimum parameters used for application control in the past. calculate.

そして、制御部106は、初期値の導出が完了すると、該初期値を実行部107に対して設定する(ステップS608)。その後、制御部106は、設定した初期値を用いて、アプリケーションを実行するよう、実行部107に対して実行を指示する(ステップS609)。そして、実行部107が、作業領域に格納されているアプリケーションプログラムを実行する(ステップS610)。   Then, when the derivation of the initial value is completed, the control unit 106 sets the initial value for the execution unit 107 (step S608). Thereafter, the control unit 106 instructs the execution unit 107 to execute the application using the set initial value (step S609). Then, the execution unit 107 executes the application program stored in the work area (step S610).

上述した処理手順が、本実施の形態にかかる通信装置100における、アプリケーションプログラムを実行するまでの処理とする。これにより、ネットワークや通信装置100の状況に応じた通信制御情報を算出することなく、最適な通信制御情報を用いてアプリケーションプログラムを実行できる。   The processing procedure described above is processing until the application program is executed in the communication apparatus 100 according to the present embodiment. As a result, the application program can be executed using the optimum communication control information without calculating the communication control information according to the situation of the network or the communication device 100.

次に、本実施の形態にかかる通信装置100において、アプリケーションプログラムが実行されている間に行われる制御手順について、図7を用いて説明する。   Next, a control procedure performed while the application program is being executed in the communication apparatus 100 according to the present embodiment will be described with reference to FIG.

まず、アプリケーションプログラムが実行されている間、実行部107などの通信装置100の各構成及び周辺を示す環境情報を、環境情報取得部108が取得する(ステップS701)。なお、環境情報の例としては、アプリケーションが必要とするプロセッサ使用量、メモリの使用量などがある。   First, while the application program is being executed, the environment information acquisition unit 108 acquires environment information indicating each configuration of the communication device 100 such as the execution unit 107 and the periphery (step S701). Examples of environment information include processor usage and memory usage required by the application.

なお、プロセッサ使用量とは、通信装置100に搭載された、図示しないOSが管理しているプロセッサのアプリケーションプログラムへの割り当て時間や、ハードウェアにより実現されたカウンタを用いて計測されたプロセッサのアプリケーションプログラムへの割り当て時間などから導き出された使用量とする。   Note that the processor usage refers to an allocation time of a processor installed in the communication apparatus 100 and managed by an OS (not shown) to an application program, and a processor application measured using a counter realized by hardware. Use amount derived from time allocated to the program.

また、検出部109も、アプリケーションプログラムが実行されている間、通信部104が、無線ネットワークI/F102又は有線ネットワークI/F103を介して行われる通信の動作状態を状態情報として検出する(ステップS702)。状態情報の例としては、使用したネットワークインターフェイスや、単位時間あたりの送受信量などがある。   The detection unit 109 also detects, as state information, the operation state of communication performed via the wireless network I / F 102 or the wired network I / F 103 while the application program is being executed (step S702). ). Examples of status information include the network interface used and the amount of transmission / reception per unit time.

これらステップS701及びS702で取得する環境情報及び状態情報は、図6のステップS606で取得した制御情報のエントリに含まれるパラメータ及びその導出に必要なパラメータとする。なお、本実施の形態で、取得対象となる具体的なパラメータは、上述した制御情報の各フィールド及びコンテキストを構成する詳細な情報で示したパラメータとする。なお、パラメータは、上述した名称に制限するものではなく、初期値導出ステップに用いるアルゴリズムやパラメータの調整に用いるアルゴリズム、統計値導出に用いるアルゴリズムに依存する。   The environment information and state information acquired in steps S701 and S702 are parameters included in the control information entry acquired in step S606 of FIG. 6 and parameters necessary for derivation thereof. In the present embodiment, specific parameters to be acquired are parameters indicated by detailed information constituting each field and context of the control information described above. The parameters are not limited to the names described above, but depend on the algorithm used for the initial value derivation step, the algorithm used for parameter adjustment, and the algorithm used for statistic value derivation.

そして、環境情報取得部108が取得した環境情報は、制御部106に対して通知される(ステップS703)と共に、検出部109が検出した状態情報も、制御部106に対して通知される(ステップS704)。通知間隔は、通信装置100の能力などに応じて適切な値を設定する必要があり、実装依存のため説明を省略する。また、制御部106と、検出部109又は環境情報取得部108と、の間で行われる情報の交換について、どちらが主体的で行うかは、実装依存の事柄である。   The environment information acquired by the environment information acquisition unit 108 is notified to the control unit 106 (step S703), and the state information detected by the detection unit 109 is also notified to the control unit 106 (step S703). S704). The notification interval needs to be set to an appropriate value according to the capability of the communication apparatus 100 and the like, and will not be described because it depends on the implementation. In addition, which of the information exchange between the control unit 106 and the detection unit 109 or the environment information acquisition unit 108 is mainly performed is an implementation-dependent matter.

さらに、制御部106は、統計値を導出するために必要な情報を、記憶部101から取得する(ステップS705)。つまり、過去に検出された状態情報や、環境情報を取得する。   Further, the control unit 106 acquires information necessary for deriving the statistical value from the storage unit 101 (step S705). That is, state information detected in the past and environmental information are acquired.

そして、制御部106は、通知された環境情報及び状態情報、並びに記憶部101から読み出した情報に基づいて、環境情報及び状態情報で示された各パラメータに対する統計値を導出する(ステップS706)。つまり、今回新たに検出された状態情報と環境情報、そして過去に検出された状態情報と環境情報とから統計値を導出する。なお、本実施の形態では、統計値を算出したが、ステップS705及びS706の処理を省略し、新たに検出された状態情報や環境情報を用いて、パラメータを導出しても良い。   Then, based on the notified environment information and state information and information read from the storage unit 101, the control unit 106 derives a statistical value for each parameter indicated by the environment information and the state information (step S706). That is, a statistical value is derived from the state information and environment information newly detected this time, and the state information and environment information detected in the past. In the present embodiment, the statistical value is calculated, but the processing of steps S705 and S706 may be omitted, and the parameter may be derived using newly detected state information and environment information.

また、統計値を導出する場合に、記憶部101に格納されている、過去にアプリケーションプログラムを制御する際にロードされた通信制御情報(図6のステップS606)や、繰り返し行われる本処理手順において、過去にステップS706で導出された統計値を用いても良い。なお、各パラメータの導出するための計算手法については、周知を問わずあらゆる手法を用いて良いため、説明を省略する。   Further, when deriving statistical values, in the communication control information (step S606 in FIG. 6) loaded in the past when the application program is stored, stored in the storage unit 101, or in this processing procedure repeatedly performed The statistical value derived in step S706 in the past may be used. In addition, about the calculation method for derivation | leading-out of each parameter, since all methods may be used regardless of well-known, description is abbreviate | omitted.

その後、制御部106は、新たに検出された状態情報や環境情報、さらには算出された状態情報や環境情報の統計値を用いて、動作中のアプリケーションプログラムの通信を制御する通信制御情報を導出する(ステップS707)。この導出手順は、図6のステップS607とほぼ同様とするが、初期値導出の際に、統計値等を用いた重み付け等を行うことができる。   Thereafter, the control unit 106 derives communication control information for controlling communication of the running application program using the newly detected state information and environment information, and further, the calculated state information and environment information statistics. (Step S707). This derivation procedure is almost the same as step S607 in FIG. 6, but weighting using a statistical value or the like can be performed when the initial value is derived.

そして、制御部106は、環境情報及び状態情報で示された各パラメータに対する統計値、及び導出された通信制御情報の登録を、登録・更新部105に対して指示する(ステップS708)。当該指示を受けて、登録・更新部105が、環境情報及び状態情報の統計値、及び導出された通信制御情報の対応関係を明確にして、記憶部101の制御情報に登録、更新する(ステップS709)。このとき、既に保存されている情報を更新するか、新たに追加するかどうか、もしく古い情報を削除するか否かといった保存の方針は、記憶部101の容量や必要とされる予測精度に依存する。   Then, the control unit 106 instructs the registration / update unit 105 to register a statistical value for each parameter indicated by the environment information and the state information, and the derived communication control information (step S708). In response to this instruction, the registration / update unit 105 clarifies the correspondence between the statistical values of the environment information and the state information, and the derived communication control information, and registers and updates the control information in the storage unit 101 (step S709). At this time, the storage policy such as whether to update the information already stored, whether to add new information, or whether to delete old information depends on the capacity of the storage unit 101 and the required prediction accuracy. Dependent.

その後、制御部106は、導出された通信制御情報を設定し、実行されているアプリケーションプログラムが要求する通信を制御する(ステップS710)。   Thereafter, the control unit 106 sets the derived communication control information and controls the communication requested by the application program being executed (step S710).

以上の処理手順で、アプリケーションプログラムが実行部107で動作している間の通信装置100が行う動作を示した。   The operation performed by the communication apparatus 100 while the application program is operating on the execution unit 107 has been described with the above processing procedure.

次に、通信装置100が、アプリケーションプログラムが終了する際の動作について述べる。通信装置100において、アプリケーションプログラムが終了する際、実行部107で実行していたアプリケーションの制御に使用していた通信制御情報を、動作中と同様に記憶部101に記録する処理を行う。この際、通信制御情報に含まれるパラメータによっては、アプリケーションプログラムが動作していた全期間に対する特徴的な値を算出するなどの処理を行ってもよい。例えば、全期間を通じての最小/平均/最大パケットサイズや平均スループット、平均バースト率などを算出することができる。   Next, the operation when the communication apparatus 100 ends the application program will be described. In the communication apparatus 100, when the application program ends, the communication control information used for controlling the application executed by the execution unit 107 is recorded in the storage unit 101 in the same manner as during operation. At this time, depending on parameters included in the communication control information, processing such as calculating characteristic values for the entire period during which the application program has been operating may be performed. For example, the minimum / average / maximum packet size, average throughput, average burst rate, etc. can be calculated over the entire period.

以上が、通信装置100におけるアプリケーションプログラムの起動から終了までの一連の流れである。   The above is a series of flow from the start to the end of the application program in the communication apparatus 100.

次に、通信装置100における初期値の導出過程について、詳細に述べる。図6の処理手順で示したように、初期値の導出は、記憶部101が記憶している制御情報と検出部109が検出したネットワークの状態情報、及び通信装置100の構成や周辺の環境情報に基づいて行われる。まずは、記憶部101が記憶している制御情報と、検出部109が検出する状態情報の例について説明する。   Next, the initial value derivation process in the communication apparatus 100 will be described in detail. As shown in the processing procedure of FIG. 6, the initial value is derived from the control information stored in the storage unit 101, the network status information detected by the detection unit 109, the configuration of the communication device 100, and the surrounding environment information. Based on. First, an example of control information stored in the storage unit 101 and state information detected by the detection unit 109 will be described.

まず、記憶部101が記憶する制御情報を以下に示す。
1)アプリケーション/通信相手/データごとのネットワークインターフェイスの種類
2)アプリケーション/通信相手/データごとの自ノードIPアドレス、サブネットマスク
3)アプリケーション/通信相手/データごとの平均送信スループット
4)アプリケーション/通信相手/データごとの平均受信スループット
5)アプリケーション/通信相手/データごとのTCP制御情報
First, control information stored in the storage unit 101 is shown below.
1) Types of network interface for each application / communication partner / data 2) Local node IP address and subnet mask for each application / communication partner / data 3) Average transmission throughput for each application / communication partner / data 4) Application / communication partner / Average reception throughput for each data 5) TCP control information for each application / communication partner / data

なお、TCP制御情報は、輻輳制御ウィンドウサイズ(cwnd)、受信ウィンドウサイズ(rwin)やTCP輻輳制御アルゴリズムと制御アルゴリズムの閾値(ssthresh)が含まれる。これにより、アプリケーションプログラムの制御を行うことが可能となる。   The TCP control information includes a congestion control window size (cwnd), a reception window size (rwin), a TCP congestion control algorithm, and a threshold value (ssthresh) of the control algorithm. This makes it possible to control the application program.

本実施の形態では、情報IDとして‘a’〜‘f’の6種類の情報を定義する。以下に、‘a’〜‘f’に割り当てられた情報を示す。
a)ネットワークインターフェイス
b)自ノードIPアドレス
c)自ノードサブネットマスク
d)平均送信スループット
e)平均受信スループット
f)TCP輻輳制御情報
In this embodiment, six types of information “a” to “f” are defined as information IDs. The information assigned to “a” to “f” is shown below.
a) Network interface b) Local node IP address c) Local node subnet mask d) Average transmission throughput e) Average reception throughput f) TCP congestion control information

また、コンテキストは、図3に示した形式として説明を省略する。さらに、環境情報取得部108が取得する環境情報としては、実行するプログラムを識別するプログラムIDや、ログインしているユーザのユーザID、さらにアプリケーションプログラムが使用するデータのデータ種類、さらにはプロトコル名、ポート番号などコンテキストに含まれる通信情報や、アプリケーションプログラムが必要とするプロセッサ使用量、メモリの使用量等とするが、以下においては、理解を容易にするため、説明を省略する。   Further, the description of the context is omitted as the format shown in FIG. Furthermore, as environment information acquired by the environment information acquisition unit 108, a program ID for identifying a program to be executed, a user ID of a logged-in user, a data type of data used by an application program, a protocol name, The communication information included in the context such as the port number, the amount of processor usage required by the application program, the amount of memory usage, etc., will be omitted below for the sake of easy understanding.

記憶部101において、アプリケーションプログラムA(Web Browser)と対応付けられている制御情報を、図8に示す。この図8に示す制御情報では、コンテキストは、CTX1、CTX2及びCTX3の3種類が設定されている。   FIG. 8 shows control information associated with the application program A (Web Browser) in the storage unit 101. In the control information shown in FIG. 8, three types of contexts CTX1, CTX2, and CTX3 are set.

この3種類のコンテキストは、図9に示す詳細情報を保持している。つまり、CTX1は、プログラムIDとユーザ情報のみ設定されている。CTX2は、プログラムIDとユーザ情報及び通信情報が設定されている。CTX3は、プログラムIDとユーザ情報及び通信情報が設定されているが、当該通信情報はCTX2の通信情報と異なる。なお、全てのコンテキストについて、データ種類は記録されていない。また、本実施の形態においては、これらコンテキストの詳細情報は、環境情報取得部108が取得する環境情報から設定されるものとする。なお、このコンテキストは一例であり、他の形のコンテキストも使用されうる。   These three types of context hold detailed information shown in FIG. That is, only the program ID and user information are set in CTX1. In CTX2, a program ID, user information, and communication information are set. In CTX3, a program ID, user information, and communication information are set, but the communication information is different from the communication information of CTX2. Note that data types are not recorded for all contexts. In the present embodiment, the detailed information of these contexts is set from the environment information acquired by the environment information acquisition unit 108. Note that this context is an example, and other forms of context may be used.

上述したコンテキストの説明を考慮すると、図8に示された情報ID‘a’〜‘c’のコンテキストは、プログラムID及びユーザ情報のみ設定されている。そして、情報ID‘d’及び‘e’のコンテキストは、プログラムID及びユーザ情報、さらに通信情報も併せて設定されている。   Considering the above description of the context, only the program ID and user information are set in the context of the information IDs 'a' to 'c' shown in FIG. The contexts of the information IDs “d” and “e” are set together with the program ID, user information, and communication information.

なお、図8及び図9で示した情報は、図2に示したように、アプリケーションプログラムA(Web Browser)と対応付けて記憶部101に記憶されている。   The information shown in FIGS. 8 and 9 is stored in the storage unit 101 in association with the application program A (Web Browser) as shown in FIG.

そして、通信装置100が接続可能な、無線ネットワーク及び有線ネットワークのうち、無線ネットワークに接続しているものとする。   It is assumed that the communication apparatus 100 is connected to a wireless network among a wireless network and a wired network.

一方、検出部109は、通信部104から次の状態情報を検出する。
A)接続インターフェイスの種別
B)インターフェイスに付与されたIPアドレス及びサブネットマスク
C)通信ごとの単位時間あたりの送信バイト数
D)通信ごとの単位時間あたりの受信バイト数
E)(ノード全体の)単位時間あたりの送信バイト数
F)(ノード全体の)単位時間あたりの受信バイト数
On the other hand, the detection unit 109 detects the next state information from the communication unit 104.
A) Type of connection interface B) IP address and subnet mask assigned to the interface C) Number of transmitted bytes per unit time for each communication D) Number of received bytes per unit time for each communication E) (For the entire node) Number of bytes sent per hour F) Number of bytes received per unit time (of the entire node)

なお、制御部106により導出され、アプリケーションプログラムに設定された後の実際の通信ごとのTCP制御情報を、検出部109が検出することにしてもよい。   Note that the detection unit 109 may detect TCP control information for each actual communication after being derived by the control unit 106 and set in the application program.

なお、検出部109は、環境情報取得部108の代わりに、通信を特定するために用いるプロトコル、IPアドレス、ポート番号などの、コンテキストを構成する詳細情報のうち、ネットワークに関する情報を検出しても良い。   Note that the detection unit 109 may detect information related to the network among the detailed information constituting the context, such as the protocol, IP address, and port number used for specifying communication instead of the environment information acquisition unit 108. good.

上述した制御情報を記憶部101が記憶し、上述した状態情報を検出部109が検出している場合に、初期値の導出処理について、再度図6を用いて説明する。なお、通信装置100において、ユーザがWebブラウザの起動を指示したものとする。   When the storage unit 101 stores the control information described above and the detection unit 109 detects the state information described above, the initial value derivation process will be described again with reference to FIG. In the communication apparatus 100, it is assumed that the user has instructed activation of the Web browser.

この場合、制御部106は、Webブラウザの実行コードのロードを指示する(ステップS601)。これにより、記憶部101に記憶されたWebブラウザが、実行部107の作業領域にロードされる(ステップS602)。   In this case, the control unit 106 instructs to load the execution code of the Web browser (step S601). As a result, the Web browser stored in the storage unit 101 is loaded into the work area of the execution unit 107 (step S602).

次に、制御部106は、環境情報取得部108が取得する環境情報を取得する(ステップS603)。取得する環境情報の例としては、コンテキストとして設定される、実行されているアプリケーションプログラムのプログラムID、ユーザ情報、通信情報(プロトコル、送信先のポート番号など)、データ種類とする。   Next, the control unit 106 acquires environment information acquired by the environment information acquisition unit 108 (step S603). Examples of environment information to be acquired include a program ID of a running application program set as a context, user information, communication information (protocol, destination port number, etc.), and data type.

続いて、制御部106は、検出部109により検出された状態情報を取得する(ステップS604)。   Subsequently, the control unit 106 acquires the state information detected by the detection unit 109 (step S604).

状態情報として、A)接続インターフェイスの種別として、無線LANインターフェイスを、B)インターフェイスに付与されたIPアドレスとして、IP2'とサブネットマスクとしてMASK2を、C)通信ごとの単位時間あたりの送信バイト数として、0バイトを、D)通信ごとの単位時間あたりの受信バイト数として0バイトを、E)(ノード全体の)単位時間あたりの送信バイト数として、0バイトを、F)(ノード全体の)単位時間あたりの受信バイト数は0バイトを、取得する。なお、IP2'はIP2からホストアドレスの部分が変化したものを表す。   As status information, A) a type of connection interface, a wireless LAN interface, B) an IP address assigned to the interface, IP2 ′ and MASK2 as a subnet mask, and C) a transmission byte count per unit time for each communication , 0 bytes, D) 0 bytes as the number of received bytes per unit time for each communication, E) 0 bytes as the number of transmitted bytes per unit time (for the entire node), F) units (for the entire node) The number of received bytes per time is 0 bytes. IP2 ′ represents a change in the host address portion from IP2.

このあと、制御部106は、記憶部101から検索結果として、実行するアプリケーションの制御に適した通信制御情報のエントリを取得するが(ステップS606)、この取得手法は実装するアルゴリズムに依存する。本実施の形態にかかるアルゴリズムにおいては、記憶部101に記憶されたエントリのうち、ネットワークの状態情報に一致/不一致/類似性を有するエントリを検出し、続いて当該エントリに対応付けられたエントリが有する通信制御情報(通信パラメータ)と上述した状態情報の一致/不一致/類似性とに基づいて、実際にWebブラウザを制御する通信制御情報を導出する。本実施の形態では、まず、検出されるエントリとして、ネットワークインターフェイスとサブネットとを用いる。   Thereafter, the control unit 106 acquires an entry of communication control information suitable for controlling the application to be executed as a search result from the storage unit 101 (step S606), but this acquisition method depends on the algorithm to be implemented. In the algorithm according to the present embodiment, an entry having a match / mismatch / similarity to the network status information is detected from the entries stored in the storage unit 101, and then an entry associated with the entry is detected. Communication control information for actually controlling the Web browser is derived based on the communication control information (communication parameters) and the match / mismatch / similarity of the state information described above. In the present embodiment, first, a network interface and a subnet are used as detected entries.

つまり、本実施の形態にかかる制御部106は、検出部109が検出した状態情報から、接続インターフェイスの種別が、無線LANインターフェイスであることから、記憶部101において、情報IDが‘a’(ネットワークインターフェイス)で、値に‘無線IF’が格納されているエントリを、検出する。なお、この際、環境情報取得部108が取得した環境情報に基づくコンテキストも条件として設定してもよい。   That is, the control unit 106 according to the present embodiment uses the state information detected by the detection unit 109 to determine that the type of the connection interface is a wireless LAN interface, so that the information ID is “a” (network) in the storage unit 101. In the interface), an entry in which “wireless IF” is stored as a value is detected. At this time, a context based on the environment information acquired by the environment information acquisition unit 108 may be set as a condition.

本実施の形態では、制御部106は、図8に示す制御情報から、エントリ801を取得できる。そして、本実施の形態において、制御部106が状態情報の一致/不一致/類似性を判断するためには、IPアドレスとサブネットマスクの情報をさらに必要とする。   In the present embodiment, the control unit 106 can acquire the entry 801 from the control information shown in FIG. In the present embodiment, the control unit 106 further needs information on the IP address and the subnet mask in order to determine the match / mismatch / similarity of the state information.

このため、制御部106は、エントリ801に含まれるコンテキストと記録時刻とを、検索条件とした上で、記憶部101から、情報IDが‘b’(自ノードIPアドレス)のエントリと、情報IDが‘c’(自ノードサブネットマスク)のエントリと、を取得する。   For this reason, the control unit 106 uses the context and recording time included in the entry 801 as search conditions, and from the storage unit 101, the entry with the information ID “b” (own node IP address) and the information ID And 'c' (own node subnet mask).

図8に示すエントリ801のコンテキストがCTX1、記録時刻がT2であることから、制御部106は、「情報ID=b、コンテキスト=CTX1、記録時刻=T2」と、「情報ID=c、コンテキスト=CTX1、記録時刻=T2」の条件に一致するエントリを取得する。結果として、エントリ802とエントリ803が取得できる。   Since the context of the entry 801 shown in FIG. 8 is CTX1 and the recording time is T2, the control unit 106 determines that “information ID = b, context = CTX1, recording time = T2”, “information ID = c, context = An entry matching the condition of “CTX1, recording time = T2” is acquired. As a result, entry 802 and entry 803 can be acquired.

このように、制御部106は、「コンテキスト=CTX1、記録時刻=T2」を検索条件として記憶部101に検索を行うことで、現在のネットワークの状態情報と一致する、過去のネットワークの状態情報を取得できる。   In this way, the control unit 106 searches the storage unit 101 using “context = CTX1, recording time = T2” as a search condition, thereby obtaining past network state information that matches the current network state information. You can get it.

つまり、制御部106は、現在のネットワークの状態情報として、ネットワークインターフェイスの種別:無線IF、自ノードIPアドレス:IP2'、自ノードサブネットマスク:MASK2、導出したサブネット:IP2'/MASK2=NET2を取得している。   That is, the control unit 106 acquires the network interface type: wireless IF, own node IP address: IP2 ′, own node subnet mask: MASK2, and derived subnet: IP2 ′ / MASK2 = NET2 as current network state information. is doing.

そして、制御部106は、検出した過去のネットワークの状態情報として、ネットワークインターフェイスの種別:無線I/F、自ノードIPアドレス:IP2、自ノードサブネットマスク:MASK2、導出したサブネット:IP2/MASK2=NET2を取得している。   Then, the control unit 106 uses the network interface type: wireless I / F, own node IP address: IP2, own node subnet mask: MASK2, and derived subnet: IP2 / MASK2 = NET2 as the detected past network status information. Is getting.

これらの情報に基づいて、制御部106は、現在のネットワークの状態情報と、検出した過去のネットワークの状態情報とが一致していると判断する。なお、この時点で、両者の情報が異なっており、制御部106が、不一致と判断した場合には以降の処理は行わず、S607においてOSもしくはプロトコル仕様により規定された値を初期値として導出する。または、現在のネットワークの状態情報と、検出した過去のネットワークの状態情報との類似性に注目して、エントリの再取得を試みても良い。例えば、上述した制御部106が行う検出処理において、記録情報を検索条件に含めずにコンテキストだけで検索を行うようにしてもよい。   Based on these pieces of information, the control unit 106 determines that the current network state information matches the detected past network state information. At this point, the information is different and the control unit 106 does not perform the subsequent processing when it determines that they do not match, and derives the value defined by the OS or protocol specification as an initial value in S607. . Alternatively, the reacquisition of the entry may be attempted by paying attention to the similarity between the current network state information and the detected past network state information. For example, in the detection process performed by the control unit 106 described above, the search may be performed using only the context without including the record information in the search condition.

制御部106が、状態情報が一致していると判断した場合、過去の状態情報の記録時刻T2を検索条件として、記憶部101から他のエントリを取得する。図8に示した記憶部101からは、エントリ804、805、806及び807が取得できる。   When the control unit 106 determines that the state information matches, the control unit 106 acquires another entry from the storage unit 101 using the recording time T2 of the past state information as a search condition. Entries 804, 805, 806 and 807 can be acquired from the storage unit 101 shown in FIG.

この結果、制御部106は、各エントリのコンテキストから、Webブラウザを用いたTCPの通信を行ったこと、エントリ804から平均送信スループットが100kbpsであること、エントリ805から平均受信スループットが700kbpsであること、エントリ806及び807からTCPのパラメータがPARAM3、PARAM4で有ることを認識できる。   As a result, the control unit 106 performs TCP communication using the Web browser from the context of each entry, the average transmission throughput from the entry 804 is 100 kbps, and the average reception throughput from the entry 805 is 700 kbps. From the entries 806 and 807, it can be recognized that the parameters of TCP are PARAM3 and PARAM4.

これらエントリのうち、TCPのパラメータがPARAM3、PARAM4が、Webブラウザを制御するための通信制御情報に相当する。   Among these entries, TCP parameters PARAM3 and PARAM4 correspond to communication control information for controlling the Web browser.

そして、制御部106は、取得したエントリに含まれるコンテキストと現在のネットワークの状態情報との間の一致/不一致/類似性を確認する。各エントリのコンテキストでは、アプリケーションとして「Web Browser(Webブラウザ)」が登録されているので、現在の状態情報と、アプリケーションは一致する。その他の各種エントリについても同様の判断を行うものとして、説明を省略する。なお、判断結果としては、各エントリ共に、現在の状態情報と一致する情報が含まれていると判断したものとする。   Then, the control unit 106 confirms the match / mismatch / similarity between the context included in the acquired entry and the current network state information. Since “Web Browser” is registered as an application in the context of each entry, the current state information matches the application. The other various entries are assumed to make the same determination, and the description is omitted. As a determination result, it is assumed that it is determined that each entry includes information that matches the current state information.

なお、この時点で、制御部106が、現在の状態情報と一致せず適切なエントリではない判断した場合には以降の処理は行わず、S607においてOSもしくはプロトコル仕様により規定された値を初期値として導出する。または、類似性の判断を行った上で取得したエントリの値を利用しても良い。例えば、アプリケーションがWebブラウザで一致するが、通信相手のポート番号が一致しないという場合を考える。この場合は「Webブラウザが使用できる範囲の通信」という視点で類似性があると考えることができる。この判断によれば、取得したエントリを用いた処理が継続しても良い。この類似性の判断基準としては、アプリケーションが一致する場合、ユーザ情報が一致する場合、通信情報の一部が一致する場合、データ種類が一致する場合、及びこれらいくつかの組み合わせ等を設定すればよい。なお、どの組み合わせをどのような優先順位で判断条件として用いればよいのかは、設計事項であるため、説明を省略する。   At this point, if the control unit 106 determines that the current state information does not match and is not an appropriate entry, the subsequent processing is not performed, and the value defined by the OS or protocol specification in S607 is used as the initial value. Derived as Alternatively, the entry value obtained after the similarity determination may be used. For example, consider a case where the application matches in the Web browser but the port number of the communication partner does not match. In this case, it can be considered that there is similarity from the viewpoint of “communication within a range in which the Web browser can be used”. According to this determination, the process using the acquired entry may be continued. As criteria for determining similarity, if the application matches, the user information matches, the communication information part matches, the data types match, and some combination of these, etc. Good. Note that which combination should be used as a determination condition in what priority order is a design matter and will not be described.

適切なエントリと判断した後、制御部106は、記憶部101から取得したエントリに含まれる通信制御情報が、現在のネットワーク環境で再現可能か否か判断する。具体的には、制御部106は、現在実行中の他のアプリケーションが使用するネットワークの帯域と、記憶部101から取得したWebブラウザが過去に使用したネットワークの帯域とに基づいて、現在起動しているWebブラウザに対して、過去と同様のネットワークの帯域を提供できるか否か判断する。なお、今回は無線ネットワークインターフェイスを用いていることから、無線インターフェイスの実効帯域も考慮する必要がある。   After determining that the entry is appropriate, the control unit 106 determines whether the communication control information included in the entry acquired from the storage unit 101 can be reproduced in the current network environment. Specifically, the control unit 106 starts up based on the network bandwidth used by other applications currently being executed and the network bandwidth previously used by the Web browser acquired from the storage unit 101. It is determined whether the same network bandwidth as in the past can be provided to the existing Web browser. Since the wireless network interface is used this time, it is necessary to consider the effective bandwidth of the wireless interface.

もし、制御部106は、過去に使用された帯域が、現在Webブラウザに提供できる帯域を上回る場合、取得したTCPパラメータ(通信制御情報)はそのままの値では使用できないと判断する。この場合、制御部106は、過去のTCP制御情報PARM3と、PARM4に含まれる値を小さくして、インターフェイスの実効速度を超えないように調整し(例えばウィンドウサイズを半分にしたり、4分の3にするなどの調整を行い)、初期値を導出する(ステップS607)。なお、調節後の値を、PARM3’、PARM4’とする。   If the bandwidth used in the past exceeds the bandwidth that can be currently provided to the Web browser, the control unit 106 determines that the acquired TCP parameter (communication control information) cannot be used as it is. In this case, the control unit 106 adjusts the values included in the past TCP control information PARM3 and PARM4 to be small so that the effective speed of the interface is not exceeded (for example, the window size is halved or three-quarters). The initial value is derived (step S607). Note that the adjusted values are PARM3 'and PARM4'.

そして、制御部106は、初期値として、調整した値(PARM3’、PARM4’)を、実行部107に対して設定する(ステップS608)。その後、実行部107が、Webブラウザを実行する(ステップS609)。   Then, the control unit 106 sets the adjusted values (PARM3 ′, PARM4 ′) as the initial values for the execution unit 107 (step S608). Thereafter, the execution unit 107 executes the Web browser (step S609).

以上、図6に示す処理手順において、Webブラウザを実行する場合における、初期値の導出手順の一例を示した。   As described above, in the processing procedure illustrated in FIG. 6, an example of the initial value derivation procedure when the Web browser is executed has been shown.

なお、上述した通信制御情報(例えばTCP制御パラメータ)の導出手順は、通信の開始時点に制限するものではなく、通信装置100のネットワークインターフェイスの変更や、通信装置100のネットワーク環境が変化するタイミングで実行しても良い。例えば、通信装置100において、無線インターフェイスから有線インターフェイスへの切り替えが発生した時には、有線インターフェイスを使用した時のエントリ(例えば記録時刻T1で記録されたエントリ)を用いて、通信制御情報を再導出できる。   Note that the above-described procedure for deriving communication control information (for example, TCP control parameters) is not limited to the communication start time, but at the timing when the network interface of the communication device 100 is changed or the network environment of the communication device 100 changes. May be executed. For example, in the communication device 100, when switching from a wireless interface to a wired interface occurs, communication control information can be derived again using an entry when the wired interface is used (for example, an entry recorded at the recording time T1). .

なお、上述した例では、通信制御情報として、TCPのパラメータについて説明したが、他のパラメータでも良い。例えば、ビデオ会議を行うアプリケーションであれば、通信制御情報として、ビデオ映像の解像度やビットレートを導出する(予想帯域が大きくなってしまう場合には、解像度やビットレートを小さくするなど)などが考えられる。   In the above-described example, the TCP parameter is described as the communication control information, but other parameters may be used. For example, if the application is a video conference, the resolution and bit rate of the video image may be derived as the communication control information (if the expected bandwidth increases, the resolution and bit rate will be reduced). It is done.

他にも、検出部109がアプリケーションプログラムの送受信パケットサイズについて、単位サイズごとの出現頻度を検出し、検出した出現頻度を記憶部101に通信制御情報として記録することで、制御部106が、通信制御情報として取得した出現頻度に基づいて、適切な送受信間隔を実現するためにスケジューリング間隔を実行部107に対して設定することも考えられる。さらに、CPUと外部のパケット処理エンジンとを使い分け分ける閾値を通信制御情報として導出したり、QOSパラメータを通信制御情報として導出しても良い。   In addition, the detection unit 109 detects the appearance frequency for each unit size with respect to the transmission / reception packet size of the application program, and records the detected appearance frequency in the storage unit 101 as communication control information. It is also conceivable to set a scheduling interval for the execution unit 107 in order to realize an appropriate transmission / reception interval based on the appearance frequency acquired as control information. Further, a threshold value for selectively using a CPU and an external packet processing engine may be derived as communication control information, or a QOS parameter may be derived as communication control information.

また、制御部106が、通信制御情報から初期値を導出する処理手順として、記憶部101に通信制御情報として格納されている値を半分にしたり、4分の3にする例について説明した。しかしながら、このような導出手順に制限するものではなく、より解析的な調整を行っても良い。   In addition, as an example of the processing procedure in which the control unit 106 derives the initial value from the communication control information, an example has been described in which the value stored as the communication control information in the storage unit 101 is halved or ¾. However, the derivation procedure is not limited to this, and more analytical adjustment may be performed.

例えば、典型的な無線ネットワークモデルを内蔵し、電波状況とアプリケーションから予想されるスループットを算出するなどの処理を行っても良い。ただし、これらの処理により多量の電力を消費してしまっては本末転倒であるため、簡易なモデルに留めることが望まれる。   For example, a typical wireless network model may be built in and processing such as calculating the throughput estimated from the radio wave condition and the application may be performed. However, if a large amount of electric power is consumed by these processes, it will fall to the end, and it is desirable to keep it in a simple model.

次に、通信装置100における、統計値導出の手順について説明する。本実施の形態においては、記憶部101に適切なエントリを記憶させるために、通信装置100では、検出部109が検出した状態情報に基づいて、登録・更新部105が逐次更新を行う。なお逐次更新の対象となる情報は、実行部107のアプリケーションプログラムを制御する通信制御情報でも良いが、以下に示す例では記憶部101に保存されている状態情報を更新する場合について説明する。   Next, a procedure for deriving statistical values in the communication apparatus 100 will be described. In the present embodiment, in order to store an appropriate entry in the storage unit 101, in the communication apparatus 100, the registration / update unit 105 sequentially updates based on the state information detected by the detection unit 109. The information to be sequentially updated may be communication control information for controlling the application program of the execution unit 107. However, in the example shown below, a case where the state information stored in the storage unit 101 is updated will be described.

まず、統計値導出を行わない状態情報について説明する。検出部109が検出した状態情報をそのまま記憶させたい場合、登録・更新部105は、検出した状態情報に加工などの特別な処理を行わず、記憶部101に対して登録、更新を行う。特別な処理を行わない状態情報としては、例えば、ネットワークインターフェイス、当該インターフェイスに付与されているIPアドレスとサブネットマスク、送受信パケット数、キューのサイズ、プロセッサ使用量などが該当する。これらの情報は、過去の情報との間で何らかの演算を行うことなく保存できる。   First, state information for which statistical value derivation is not performed will be described. When the state information detected by the detection unit 109 is to be stored as it is, the registration / update unit 105 registers and updates the storage unit 101 without performing special processing such as processing on the detected state information. The state information that is not subjected to special processing includes, for example, a network interface, an IP address and subnet mask assigned to the interface, the number of transmitted / received packets, a queue size, and a processor usage amount. These pieces of information can be stored without performing any calculation with the past information.

一方、何らかの加工処理が必要な状態情報も存在する。さらには、検出部109に検出された状態情報と、記憶部101にすでに記憶されていた過去の状態情報との間で、何らかの演算が必要な状態情報が存在する。これら状態情報については、記憶部101に記憶された状態情報を取得した後、制御部106が、取得した過去の状態情報と、検出された状態情報との間で演算処理を行い、統計値を導出した後、登録・更新部105が、記憶部101に対して導出した統計値の登録、更新を行う。   On the other hand, there is state information that requires some processing. Furthermore, there is state information that needs some calculation between the state information detected by the detection unit 109 and the past state information already stored in the storage unit 101. About these status information, after acquiring the status information memorize | stored in the memory | storage part 101, the control part 106 performs an arithmetic process between the acquired past status information and the detected status information, and a statistical value is obtained. After the derivation, the registration / update unit 105 registers and updates the statistical values derived from the storage unit 101.

例えば、統計値の導出が必要な状態情報として、送受信パケット数がある。この場合、制御部106は、検出した送受信パケットに対して、時間要素を考慮にいれて、平均送受信パケット数やバースト率などを導出する。   For example, there is the number of transmitted / received packets as the state information that requires derivation of statistical values. In this case, the control unit 106 derives an average number of transmitted / received packets, a burst rate, and the like for the detected transmitted / received packets in consideration of time elements.

また、記憶部101に送受信バイト数が記録されていれば、制御部106は、平均送受信スループット、最小スループット、及び最大スループットなどが算出できる。   If the number of transmitted / received bytes is recorded in the storage unit 101, the control unit 106 can calculate an average transmission / reception throughput, a minimum throughput, a maximum throughput, and the like.

制御部106が、これらの値を算出するにあたり、記憶部101に保存された過去の監視値や統計値を利用してもよい。(図7のステップS705)。例えば、制御部106は、スループットを導出する場合、直前に保存された送受信バイト数を記憶部101から読み出し、カウンタ値との差分を求めてスループットを導出する。もし、記憶部101に過去の平均送受信スループットが記憶されていれば、当該値と通信開始からの経過時間を用いて平均送受信スループットを更新する。   In calculating these values, the control unit 106 may use past monitoring values and statistical values stored in the storage unit 101. (Step S705 in FIG. 7). For example, when deriving the throughput, the control unit 106 reads the number of transmitted / received bytes stored immediately before from the storage unit 101, obtains a difference from the counter value, and derives the throughput. If the past average transmission / reception throughput is stored in the storage unit 101, the average transmission / reception throughput is updated using the value and the elapsed time from the start of communication.

制御部106が、導出する統計値の種類については、実際に動作させるアプリケーションプログラムに依存する。例えば、遅延に敏感なリアルタイムアプリケーションであれば、制御部106が平均遅延やバースト率を導出し、これらの値を調節することで通信品質が向上するため、それらの値を導出することに意味がある。   The type of statistical value that the control unit 106 derives depends on the application program that is actually operated. For example, in the case of a real-time application that is sensitive to delay, the control unit 106 derives an average delay and a burst rate, and adjusting these values improves communication quality. Therefore, it is meaningful to derive those values. is there.

しかし、スループットについては平均値ではなく一時的な落ち込みに対して敏感に調節することが重要と考えられ、統計的なスループット情報にはメリットが少ないと考えられる。一方、バルク転送を行うアプリケーションであれば継続して高いスループットが維持されることが好ましいと考えられ、平均送受信スループットを導出するメリットがあると考えられる。このように、制御部106は、必要に応じて適切な統計値を導出する。   However, it is considered that it is important to adjust the throughput sensitively to a temporary drop rather than an average value, and statistical throughput information is considered to have little merit. On the other hand, if it is an application that performs bulk transfer, it is considered preferable to maintain a high throughput continuously, and it is considered that there is an advantage of deriving an average transmission / reception throughput. In this way, the control unit 106 derives an appropriate statistical value as necessary.

本実施の形態にかかる通信装置100では、当該通信装置100及びアプリケーションの使用環境の取得や、ネットワークの接続状況を検出し、それら情報を、通信を制御するための通信制御情報及びアプリケーションと関連づけて記憶部101に記憶したため、類似した状況に遭遇した場合には過去に設定した通信制御情報に基づいて初期値を導出し、当該初期値で設定を行うことを可能とした。   In the communication apparatus 100 according to the present embodiment, the usage environment of the communication apparatus 100 and the application is acquired, the connection status of the network is detected, and the information is associated with communication control information and an application for controlling communication. Since it is stored in the storage unit 101, when a similar situation is encountered, it is possible to derive an initial value based on communication control information set in the past and set the initial value.

これにより、通信装置100は、アプリケーションプログラムを利用する際に、特別な処理を行うことなく、現在のネットワーク環境に適切した通信制御情報(例えば初期値)を導出し、当該通信制御情報でアプリケーションプログラムを制御することができるので、状況に応じた通信状態を維持できる。さらに、通信装置100においては、適切な通信状態を維持するために、特別な計算処理が不要なことから、計算処理負担を軽減すると共に、消費電力を削減することができる。   Thereby, when using the application program, the communication device 100 derives communication control information (for example, an initial value) appropriate for the current network environment without performing special processing, and the application program is used with the communication control information. Therefore, it is possible to maintain a communication state according to the situation. Furthermore, in the communication apparatus 100, since special calculation processing is not required to maintain an appropriate communication state, it is possible to reduce the calculation processing load and power consumption.

また、従来は通信環境と関係ない初期値を設定した上で、通信環境に応じた制御を行って、適切なパラメータを導出した。これに対し、通信装置100では、上述した様に過去に最適なものとして設定したパラメータを初期値として設定したので、適切なパラメータにより速く到達することができる。さらには、適切なパラメータにすぐに到達することが可能となったため、処理演算の負荷を軽減すると共に、処理演算による電力消費を抑止することができる。   Conventionally, after setting an initial value not related to the communication environment, control according to the communication environment is performed to derive an appropriate parameter. On the other hand, in the communication apparatus 100, as described above, the parameter set as the optimum value in the past is set as the initial value, so that it can reach the appropriate parameter faster. Furthermore, since it is possible to reach an appropriate parameter immediately, it is possible to reduce the processing calculation load and suppress power consumption by the processing calculation.

(第2の実施の形態)
第2の実施の形態では、一つのアプリケーションプログラムが、複数種類のデータを扱う例について説明する。なお、第2の実施の形態にかかる通信装置は、第1の実施の形態の通信装置100と同様の構成を備えるものとして説明を省略する。
(Second Embodiment)
In the second embodiment, an example in which one application program handles a plurality of types of data will be described. Note that the communication device according to the second embodiment has the same configuration as that of the communication device 100 according to the first embodiment, and a description thereof will be omitted.

第2の実施の形態にかかる通信装置100では、アプリケーションプログラムとして、第1の実施の形態と同様に、Webブラウザを利用した例について説明する。このWebブラウザが、通信部104による通信で得られた複数種類のデータを同時に使用する例とする。   In the communication apparatus 100 according to the second embodiment, an example in which a Web browser is used as an application program will be described as in the first embodiment. In this example, the Web browser simultaneously uses a plurality of types of data obtained through communication by the communication unit 104.

図10に、本実施の形態で仮定するアプリケーションプログラムの動作画面例を示す。ウィンドウ1001は、Webブラウザ全体のウィンドウを示している。第1の領域1002は、ウィンドウ1001内でリアルタイムに受信している動画データを表示する領域とする。第2の領域1003は、ウィンドウ1001内で動画ではない情報(例えば、テキストデータ又は静止画など)を表示する領域とする。   FIG. 10 shows an operation screen example of the application program assumed in the present embodiment. A window 1001 indicates the window of the entire Web browser. The first area 1002 is an area for displaying moving image data received in real time in the window 1001. The second area 1003 is an area for displaying non-moving information (for example, text data or a still image) in the window 1001.

上述した各領域の表示は、通信部104の通信により得られる、複数種類のデータの取得により実現される。この受信する複数種類のデータのうち、動画データの通信は、動画データはリアルタイムで表示する必要があるため、低遅延で安定した帯域を保証して、正確にデータを取得するように通信を行う必要がある。そして、複数種類のデータのうち、テキストデータや静止画データは、帯域が空いている時間帯に受信できればよい。   The display of each area described above is realized by acquiring a plurality of types of data obtained by communication of the communication unit 104. Of the multiple types of data received, video data communication requires video data to be displayed in real time. Therefore, communication is performed so that a stable bandwidth is ensured with low delay and data is accurately acquired. There is a need. Of the plurality of types of data, text data and still image data may be received in a time zone in which the bandwidth is free.

このため、同一アプリケーションプログラムが実行する通信であっても、データの種類毎に通信の制御を異ならせる必要がある。そこで、本実施の形態にかかる通信装置100では、同一アプリケーションプログラムであっても、データの種類に応じて制御に用いる通信制御情報を異ならせることとした。具体的には、データ種類に応じて、コンテキストを異ならせることで、別エントリとして、記憶部101に記憶されることとした。   For this reason, even in communication executed by the same application program, it is necessary to control communication for each type of data. Therefore, in the communication device 100 according to the present embodiment, communication control information used for control is made different depending on the type of data even in the same application program. Specifically, the context is changed according to the data type, and the entry is stored in the storage unit 101 as another entry.

図11に示すコンテキストにおいては、エントリ1101にデータ種類として“video/mpeg”を登録し、エントリ1102にデータ種類として“text/html”を登録した。これにより、実行部107により実行されたアプリケーションプログラムが行う通信の制御を、データ種類に応じて明確に区別することを可能とした。つまり、第1の領域1002で使用される動画データの通信制御に用いる通信制御情報を取得するには、エントリ1101のコンテキストを用い、第2の領域1003で使用されるHTMLファイルの通信制御に用いる通信制御情報を取得するには、エントリ1102のコンテキストを用いる。なお、通信制御情報を取得する際の処理については、第1の実施の形態と同様として説明を省略する。   In the context shown in FIG. 11, “video / mpeg” is registered as the data type in the entry 1101, and “text / html” is registered as the data type in the entry 1102. This makes it possible to clearly distinguish the control of communication performed by the application program executed by the execution unit 107 according to the data type. In other words, in order to obtain communication control information used for communication control of moving image data used in the first area 1002, the context of the entry 1101 is used and used for communication control of the HTML file used in the second area 1003. To obtain the communication control information, the context of the entry 1102 is used. In addition, about the process at the time of acquiring communication control information, description is abbreviate | omitted as it is the same as that of 1st Embodiment.

このようにして、第1の実施の形態と同様に、ユーザがWebブラウザの起動を指示した場合に、Webブラウザが受信するデータ種類毎の通信制御に対して、通信制御情報に基づく初期値が設定される。   In this way, as in the first embodiment, when the user instructs activation of the Web browser, the initial value based on the communication control information is set for the communication control for each data type received by the Web browser. Is set.

しかしながら、通信装置100において実行されたWebブラウザが、Webページに実際にアクセスするまで、受信するデータの種類が不明な場合も多い。例えば、図12の例で示したWebページも、全体を表すWebページとして単一のHTMLで記述されており、当該Webページの内部を動画データとテキストデータとの領域に分かれているものとする。   However, in many cases, the type of data to be received is unknown until the Web browser executed in the communication apparatus 100 actually accesses the Web page. For example, the Web page shown in the example of FIG. 12 is also described in a single HTML as a Web page representing the whole, and the inside of the Web page is divided into areas of moving image data and text data. .

本実施の形態にかかる通信装置100では、このような場合においても、データ種類毎の通信を適切に識別して制御することができる。まず、記憶部101には、図12に示す制御情報を記憶しているものとする。   Even in such a case, the communication device 100 according to the present embodiment can appropriately identify and control communication for each data type. First, it is assumed that the storage unit 101 stores the control information shown in FIG.

図12に示す状態情報において、情報IDを以下に示すものとする。なお、図12に示すコンテキストCTX1は、図11に示したエントリ1101に該当し、コンテキストCTX2は、図11に示したエントリ1102に該当するものとする。   In the status information shown in FIG. 12, the information ID is shown below. Note that the context CTX1 illustrated in FIG. 12 corresponds to the entry 1101 illustrated in FIG. 11, and the context CTX2 corresponds to the entry 1102 illustrated in FIG.

そして、図12で示された‘e’〜‘h’の情報IDは、以下に示す情報と定義されている。
e)平均受信スループット
f)TCP輻輳制御情報
g)受信側平均遅延
h)受信側ジッタ
The information IDs “e” to “h” shown in FIG. 12 are defined as the following information.
e) Average reception throughput f) TCP congestion control information g) Reception side average delay h) Reception side jitter

ところで、本実施の形態にかかる通信装置100においても、第1の実施の形態と同様に、アプリケーションプログラムが起動した場合に、ネットワーク環境に応じた通信制御情報を取得して、初期値を導出して、当該初期値を実行部107に対して設定するが、Webブラウザを起動した直後では、どのWebページにもアクセスしていないため、データの種類が特定できず、記憶部101に記憶されたエントリを取得できないことになり、初期値の設定ができない。   By the way, also in the communication apparatus 100 according to the present embodiment, as in the first embodiment, when the application program is started, the communication control information according to the network environment is acquired and the initial value is derived. The initial value is set for the execution unit 107. However, immediately after starting the Web browser, since no Web page is accessed, the data type cannot be specified and is stored in the storage unit 101. The entry cannot be acquired and the initial value cannot be set.

このような場合に対応する手段としては、二つの手法が考えられる。まず第1の手法としては、データの種類に拘わらず、アプリケーションプログラムに関連するエントリを予め取得しておく手法がある。第2の手法としては、アプリケーションプログラムがデータの取得などの事象が発生したことをトリガーとして、取得したデータの種類がコンテキストとして設定された各エントリの取得を行う手法である。   Two methods are conceivable as means for dealing with such cases. First, as a first method, there is a method of acquiring an entry related to an application program in advance regardless of the type of data. The second method is a method of acquiring each entry in which the type of acquired data is set as a context, triggered by the occurrence of an event such as data acquisition by the application program.

第1の手法を用いて、予めエントリを取得し、取得したエントリに基づいて、導出された初期値を設定するという実装にしたと仮定する。この場合、制御部106は、実行するアプリケーションプログラムと対応付けられている、データ種類全てのエントリに基づいて初期値の導出と、導出した初期値の設定とを行う。本実施の形態にかかる制御部106は、HTMLファイルがデータ種類として登録されているコンテキストを有するエントリの通信制御情報に基づいて初期値の導出と、導出した初期値の設定を行うと共に、MPEGビデオがデータ種類として登録されているコンテキストを有するエントリの通信制御情報に基づいて初期値の導出と、導出した初期値の設定を行う。なお、具体的な処理手順は第1の実施の形態と同様として説明を省略する。   Assume that the implementation is such that an entry is acquired in advance using the first technique, and a derived initial value is set based on the acquired entry. In this case, the control unit 106 derives the initial value and sets the derived initial value based on the entries of all the data types associated with the application program to be executed. The control unit 106 according to the present embodiment performs derivation of an initial value and setting of the derived initial value based on communication control information of an entry having a context in which an HTML file is registered as a data type, and MPEG video Is derived based on the communication control information of the entry having the context registered as the data type, and the derived initial value is set. The specific processing procedure is the same as that in the first embodiment, and the description thereof is omitted.

これにより、図10に示すような一つのアプリケーションプログラムで、複数種類のデータの通信を実行する場合に対応することが可能となる。また、複数種類のデータに基づく複数の通信に制限するものではなく、同一種類のデータについて複数の通信が必要な場合に、通信毎に異なる初期値を設定してもよい。このように、本実施の形態にかかる通信装置100においては、異なる性質を有する複数の通信を行う場合に、通信毎に異なる通信制御情報に基づいてパラメータ(例えば初期値)を設定して制御することができる。   Accordingly, it is possible to cope with a case where communication of a plurality of types of data is executed by one application program as shown in FIG. Further, the present invention is not limited to a plurality of types of communication based on a plurality of types of data, and when a plurality of communications are required for the same type of data, different initial values may be set for each communication. As described above, in the communication device 100 according to the present embodiment, when a plurality of communications having different properties are performed, control is performed by setting parameters (for example, initial values) based on different communication control information for each communication. be able to.

また、第2の手法を用いて、アプリケーションプログラムがデータの取得などの事象が発生したことをトリガーとして、取得したデータの種類がコンテキストとして設定された各エントリの取得を行う手法を実装したと仮定する。この場合、通信部104がHTMLファイルを受信し、次の通信要求を生成する段階で、受信したデータに対応するコンテキストを有するエントリが記憶部101に記憶されているか否か判断し、記憶されていると判断した場合に、当該エントリを取得し、当該エントリに含まれている通信制御情報に基づいて、通信設定を行えばよい。   It is also assumed that the second method is used to implement a method for acquiring each entry in which the type of acquired data is set as a context, triggered by the occurrence of an event such as data acquisition by the application program. To do. In this case, when the communication unit 104 receives the HTML file and generates the next communication request, it is determined whether or not an entry having a context corresponding to the received data is stored in the storage unit 101 and stored. If it is determined that the entry is present, the entry may be acquired, and the communication setting may be performed based on the communication control information included in the entry.

上述した実施の形態にかかる通信装置100では、アプリケーションプログラムが様々なデータを扱う場合に、当該データ毎の状態情報及び通信制御情報を記憶部101に記憶しておくことで、一つのアプリケーションプログラムで様々な通信が行われた場合に、当該通信毎に適切に初期値を導出し、通信制御を行うことができる。これにより、各通信制御において適切なパラメータに速やかに到達することができる。   In the communication apparatus 100 according to the above-described embodiment, when the application program handles various data, the status information and communication control information for each piece of data is stored in the storage unit 101, so that one application program can be used. When various communications are performed, an initial value can be appropriately derived for each communication and communication control can be performed. Thereby, an appropriate parameter can be quickly reached in each communication control.

本実施の形態にかかる通信装置100では、第1の実施の形態で示した効果を有する他、一つのアプリケーションが複数の用途で用いられる場合であっても、用途毎に適切にパラメータを設定することができる。   In the communication apparatus 100 according to the present embodiment, in addition to the effects shown in the first embodiment, even if one application is used for a plurality of uses, parameters are appropriately set for each use. be able to.

(第3の実施の形態)
第3の実施の形態では、複数ユーザが、通信装置100を使用する場合について説明する。
(Third embodiment)
In the third embodiment, a case where a plurality of users use the communication device 100 will be described.

図4に示したように、記憶部101が記憶するコンテキストには、ユーザ情報が含まれている。通信制御を行う際に、ログインしているユーザと一致するユーザ情報を含むエントリを取得することで、ユーザ毎に適した通信制御を行うことができる。   As shown in FIG. 4, the context stored in the storage unit 101 includes user information. When performing communication control, by acquiring an entry including user information that matches the logged-in user, communication control suitable for each user can be performed.

これにより、一つの通信装置100を、複数のユーザで共有している場合に、ログインしているユーザ毎に適切な制御を行うことができる。つまり、複数のユーザが利用する場合に、同一の通信装置100であっても起動するアプリケーションプログラムと考えられる。ユーザに応じて複数の異なるアプリケーションプログラムを起動することも考えられる。この場合、同一のアプリケーションプログラムであっても、ユーザ毎に割り当てる帯域を変更する方が好ましい。このように一つのアプリケーションプログラムを、複数のユーザで使用する場合に、ユーザ毎に適切な制御を行うことが可能となる。   Thereby, when one communication apparatus 100 is shared by a plurality of users, appropriate control can be performed for each logged-in user. That is, it can be considered as an application program that is activated even when the same communication apparatus 100 is used by a plurality of users. It is also conceivable to start a plurality of different application programs depending on the user. In this case, even for the same application program, it is preferable to change the bandwidth allocated for each user. As described above, when one application program is used by a plurality of users, appropriate control can be performed for each user.

また、通信装置100は、図13に示すようなネットワークシステムを構成する各装置に適用することができる。   Further, the communication device 100 can be applied to each device constituting a network system as shown in FIG.

図13に示すネットワークシステムにおいては、ストレージ1301と、サーバ1302と、端末1303〜1305と、これらを接続するネットワーク1306とで構成されている。ストレージ1301に通信装置100を実現するためのプログラムが格納されている。   The network system shown in FIG. 13 includes a storage 1301, a server 1302, terminals 1303 to 1305, and a network 1306 that connects them. A program for realizing the communication apparatus 100 is stored in the storage 1301.

そして、サーバ1302、又は端末1303〜1305が、ネットワーク1306介してストレージ1301に記憶されたプログラムを実行することで、上記各装置が通信装置100と同等の構成を備えることになる。   Then, when the server 1302 or the terminals 1303 to 1305 execute the program stored in the storage 1301 via the network 1306, each of the above devices has a configuration equivalent to that of the communication device 100.

サーバ1302が、ストレージ1301に記憶されたアプリケーションで、通信装置100と同等の構成を実現する例としては、端末1303〜1305がプログラムをサーバ1302上でのみ実行されるシンクライアントの場合が考えられる。本実施の形態にかかる端末1303〜1305は、シンクライアントでも、プログラムをストレージ1301からダウンロード可能なクライアントのどちらであってもよい。   As an example in which the server 1302 is an application stored in the storage 1301 and realizes a configuration equivalent to that of the communication apparatus 100, a case where the terminals 1303 to 1305 are thin clients that execute a program only on the server 1302 can be considered. The terminals 1303 to 1305 according to the present embodiment may be either a thin client or a client that can download a program from the storage 1301.

さらに、ストレージ1301には、サーバ1302又は端末1303〜1305が実行する各プログラムが、図2に示す形式又はそれに準ずる形式で記憶されている。そして、ストレージ1301に記憶されたアプリケーションプログラム及び制御情報は、必要に応じて、サーバ1302や、端末1303〜1305に送信される。送信されたアプリケーションプログラム及び制御情報は、サーバ1302や、端末1303〜1305の図2に示す形式で、サーバ1302や、端末1303〜1305が備える記憶装置(例えばRAM)等に展開される。   Furthermore, each program executed by the server 1302 or the terminals 1303 to 1305 is stored in the storage 1301 in the format shown in FIG. 2 or a format equivalent thereto. And the application program and control information memorize | stored in the storage 1301 are transmitted to the server 1302 and the terminals 1303-1305 as needed. The transmitted application program and control information are expanded in the server 1302 and the storage devices (for example, RAM) provided in the server 1302 and the terminals 1303 to 1305 in the format shown in FIG.

この場合に、ストレージ1301に記憶されている制御情報のコンテキストには、ユーザ情報が設定されている。これにより、ユーザが、どの装置(通常のクライアント又はシンクライアントして機能する端末1303〜1305)を利用しても、ネットワーク状況と使用するユーザに適切な通信制御を行うことが可能となる。   In this case, user information is set in the context of the control information stored in the storage 1301. As a result, regardless of the device (terminals 1303 to 1305 functioning as a normal client or a thin client) used by the user, it is possible to perform communication control appropriate to the network status and the user to be used.

このようにストレージ1301で複数のユーザが使用するアプリケーションプログラム及び制御情報を記憶し、当該制御情報のコンテキストにおいてユーザ情報を保持することで、各装置(端末1303〜1305)のそれぞれについて多数のユーザが共有して使用する場合に、装置に拘わらず、ログインしているユーザに適した通信制御を行うことが可能となる。   By storing application programs and control information used by a plurality of users in the storage 1301 and holding user information in the context of the control information in this way, a large number of users for each of the devices (terminals 1303 to 1305) can be obtained. When sharing and using, communication control suitable for the logged-in user can be performed regardless of the device.

図14に、サーバ1302又は端末1303〜1305が備える記憶部101に格納された後のアプリケーションプログラム1401及び制御情報1402の例を示す。図14に示す記憶部101に格納された後の制御情報1402では、情報ID‘a’が設定されたエントリが格納されている。そして、図14に示す各エントリのコンテキストには、ユーザA〜ユーザCを識別する情報が設定されていることが確認できる。なお、図14に示すコンテキストの形式においては、実際の形式は図3で示した通りであるが、説明を容易にするためにユーザ情報に着目して記載した。   FIG. 14 shows an example of the application program 1401 and control information 1402 after being stored in the storage unit 101 included in the server 1302 or the terminals 1303 to 1305. In the control information 1402 stored in the storage unit 101 illustrated in FIG. 14, an entry in which the information ID “a” is set is stored. And it can confirm that the information which identifies the user A-the user C is set to the context of each entry shown in FIG. In the context format shown in FIG. 14, the actual format is as shown in FIG. 3. However, in order to facilitate the explanation, it is described with attention to user information.

このように、アプリケーションプログラムが同一且つ情報IDが同一であっても、ユーザ毎に異なる値を保持させることができる。これにより、例えば、WebブラウザをWebメールを利用する目的で、端末1303〜1305のいずれかを利用するユーザAについては、平均受信スループットとして500kbpsという値が保存される。一方、端末1303〜1305のいずれかの端末で、動画を視聴する目的でWebブラウザを起動するユーザBについては、平均受信スループットとして3Mbpsという値が保存される。   Thus, even if the application program is the same and the information ID is the same, a different value can be held for each user. Thus, for example, for the user A who uses any one of the terminals 1303 to 1305 for the purpose of using the Web mail by the Web browser, a value of 500 kbps is stored as the average reception throughput. On the other hand, a value of 3 Mbps is stored as an average reception throughput for user B who activates the Web browser for the purpose of viewing moving images on any of the terminals 1303 to 1305.

このとき、あるユーザはWebブラウザをWebメールサーバにアクセスするために利用することが多く、別のユーザは動画配信サーバにアクセスして動画を視聴するために利用することが多いと考えられる。つまり、ユーザ毎に適切な状態情報及び制御情報を記憶することができる。   At this time, it is considered that a certain user often uses a web browser to access a web mail server, and another user often accesses a moving image distribution server to view a moving image. That is, appropriate state information and control information can be stored for each user.

本実施の形態にかかる環境情報取得部108は、実際にアプリケーションプログラムを起動したユーザを示すユーザ情報を特定し、ストレージ1301がユーザの過去の使用状況を蓄積している。なお、蓄積手順については、記憶部101がストレージ1301に変更された他は、第1の実施の形態と同様として説明を省略する。   The environment information acquisition unit 108 according to the present embodiment identifies user information indicating the user who actually started the application program, and the storage 1301 stores the past usage status of the user. The accumulation procedure is the same as in the first embodiment except that the storage unit 101 is changed to the storage 1301, and the description thereof is omitted.

また、端末1303〜1305がシンクライアントの場合、ユーザが任意の端末を使用した場合に、サーバ1302が、ユーザを識別するユーザ情報を特定し、当該ユーザ情報が含まれるコンテキストを有するエントリを、ストレージ1301から取得する。なお、ユーザ情報の特定手法は、いずれの手法でも良く、各端末1303〜1305のログイン認証時のユーザ情報を用いても良い。そして、取得したエントリから、ユーザに適した初期値の導出が可能となる。   When the terminals 1303 to 1305 are thin clients, when the user uses an arbitrary terminal, the server 1302 specifies user information for identifying the user, and stores an entry having a context including the user information. Obtained from 1301. In addition, any method may be sufficient as the identification method of user information, and the user information at the time of login authentication of each terminal 1303-1305 may be used. An initial value suitable for the user can be derived from the acquired entry.

また、該アプリケーションプログラムを実行部107で実行している間にも、検出部109にてネットワークにおける動作傾向を示す情報を検出する。そして、制御部106が統計処理を施すことにより、特定のユーザの使用傾向を導出できる。さらに、導出した使用傾向をストレージ1301にアプリケーションプログラムと関連づけて記憶することで、次回の動作に備えることができる。   Further, while the application program is being executed by the execution unit 107, the detection unit 109 detects information indicating an operation tendency in the network. And the control part 106 can derive a usage tendency of a specific user by performing statistical processing. Furthermore, by storing the derived usage tendency in the storage 1301 in association with the application program, it is possible to prepare for the next operation.

この初期値導出過程および使用傾向の導出過程は、図6ならびに図7で述べた過程に準ずる。ただし、第1の実施の形態の詳細な説明で述べた過程とは細部が異なるため、補足する。   The initial value derivation process and the usage trend derivation process are in accordance with the processes described with reference to FIGS. However, since the details are different from the process described in the detailed description of the first embodiment, it is supplemented.

第1の実施の形態においては一例として、ネットワークの状態情報の一致/不一致/類似性に基づいてエントリを取得し、当該エントリと関連付けられた通信に用いる制御情報の一致/不一致/類似性を判断して、初期値を導出すると説明した。これに対して、本実施の形態では、エントリを取得する際に、ユーザ情報を最高優先度で判断するように実装しても良い。こうすることでユーザ指向のパラメータ調整を確実に実行できるようになる。   In the first embodiment, as an example, an entry is acquired based on the match / mismatch / similarity of network state information, and the match / mismatch / similarity of control information used for communication associated with the entry is determined. As described above, the initial value is derived. On the other hand, in the present embodiment, the user information may be mounted with the highest priority when the entry is acquired. In this way, user-oriented parameter adjustment can be executed reliably.

逆に、コンテキストに含まれるユーザ情報が異なっても他の情報が類似する場合、当該コンテキストを有するエントリを取得し、当該エントリの制御情報に基づいて、初期値を導出しても良い。例えば、ユーザAがWebブラウザを使った情報はストレージ1301に記憶されているが、ユーザCがWebブラウザを使った時の情報はストレージ1301に記憶されていないとする。その場合、ユーザAが設定されたエントリを用いて、ユーザCの初期値を導出しても良い。   Conversely, when other information is similar even if the user information included in the context is different, an entry having the context may be acquired and an initial value may be derived based on the control information of the entry. For example, it is assumed that the information when the user A uses the Web browser is stored in the storage 1301, but the information when the user C uses the Web browser is not stored in the storage 1301. In that case, the initial value of the user C may be derived using the entry in which the user A is set.

本実施の形態よれば、ユーザ情報を用いて、ストレージ1301に記憶されている制御情報から、適切なエントリを取得し、当該エントリに従ってパラメータの調整を行うこととしたため、一つのアプリケーションを複数のユーザで使用する場合であっても、適切にパラメータを調節することができる。特に、複数の端末を備えるネットワークシステムにおいて、ユーザがどの端末を使用しても、ユーザに適した通信制御を行うことが可能となる。   According to the present embodiment, an appropriate entry is acquired from the control information stored in the storage 1301 using user information, and parameter adjustment is performed according to the entry. Even if it is used in the above, the parameters can be adjusted appropriately. In particular, in a network system including a plurality of terminals, it is possible to perform communication control suitable for the user regardless of which terminal the user uses.

本実施の形態の通信装置100は、図15に示すように、CPU1501と、ROM(Read Only Memory)1502と、RAM1503と、HDD1504、有線ネットワークI/F103と、無線ネットワークI/F102と、これらを接続するバス1505と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。   As shown in FIG. 15, the communication apparatus 100 according to the present embodiment includes a CPU 1501, a ROM (Read Only Memory) 1502, a RAM 1503, an HDD 1504, a wired network I / F 103, a wireless network I / F 102, and the like. A bus 1505 to be connected, and has a hardware configuration using a normal computer.

HDD1504は、記憶部101に相当する。さらに検出部109が検出を行うための専用ハードウェアを備えても良い。また、制御部106や実行部107は、OS(オペレーティング システム)で実現しても良い。また、実行部107が利用する作業領域等は、RAM1503上に作成される。   The HDD 1504 corresponds to the storage unit 101. Furthermore, dedicated hardware for the detection unit 109 to perform detection may be provided. The control unit 106 and the execution unit 107 may be realized by an OS (Operating System). In addition, a work area or the like used by the execution unit 107 is created on the RAM 1503.

本実施の形態の通信装置100で実行される通信プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。   A communication program executed by the communication apparatus 100 according to the present embodiment is an installable or executable file, such as a CD-ROM, a flexible disk (FD), a CD-R, a DVD (Digital Versatile Disk), or the like. The program is provided by being recorded on a computer-readable recording medium.

また、本実施の形態の通信装置100で実行される通信プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の通信装置100で実行される通信プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。   Further, the communication program executed by the communication apparatus 100 according to the present embodiment may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. The communication program executed by the communication apparatus 100 according to the present embodiment may be configured to be provided or distributed via a network such as the Internet.

また、本実施形態の通信装置100で実行される通信プログラムを、ROM1502等に予め組み込んで提供するように構成してもよい。   In addition, a communication program executed by the communication apparatus 100 of the present embodiment may be configured to be provided by being incorporated in advance in the ROM 1502 or the like.

本実施の形態の通信装置100で実行される通信プログラムは、上述した各部(通信部、登録・更新部、制御部、実行部、環境情報取得部、検出部)を含むモジュール構成となっており、実際のハードウェアとしてはCPU1501が上記記憶媒体から通信プログラムを読み出して実行することにより上記各部が、主記憶装置となるRAM1503上にロードされ、通信部、登録・更新部、制御部、実行部、環境情報取得部、検出部がRAM1503上に生成されるようになっている。   The communication program executed by the communication apparatus 100 according to the present embodiment has a module configuration including the above-described units (communication unit, registration / update unit, control unit, execution unit, environment information acquisition unit, detection unit). As the actual hardware, the CPU 1501 reads out and executes the communication program from the storage medium, so that the respective units are loaded onto the RAM 1503 serving as the main storage device, and the communication unit, registration / update unit, control unit, and execution unit An environment information acquisition unit and a detection unit are generated on the RAM 1503.

第1の実施の形態にかかる通信装置の構成を示すブロック図である。It is a block diagram which shows the structure of the communication apparatus concerning 1st Embodiment. 記憶部が記憶している情報を表した概念図である。It is a conceptual diagram showing the information which the memory | storage part has memorize | stored. 記憶部が記憶する制御情報のテーブル構造を示した図である。It is the figure which showed the table structure of the control information which a memory | storage part memorize | stores. 制御情報が有するコンテキストの詳細情報の第1の例を示した図である。It is the figure which showed the 1st example of the detailed information of the context which control information has. 制御情報が有するコンテキストの詳細情報の第2の例を示した図である。It is the figure which showed the 2nd example of the detailed information of the context which control information has. 第1の実施の形態にかかる通信装置のアプリケーションプログラムの実行手順を示すフローチャートである。It is a flowchart which shows the execution procedure of the application program of the communication apparatus concerning 1st Embodiment. 第1の実施の形態にかかる通信装置のアプリケーションプログラムが実行されている間に行われる制御手順を示すフローチャートである。It is a flowchart which shows the control procedure performed while the application program of the communication apparatus concerning 1st Embodiment is being executed. 記憶部において、アプリケーションプログラムAと対応付けられている制御情報の例を示した図である。It is the figure which showed the example of the control information matched with the application program A in a memory | storage part. アプリケーションプログラムAと対応付けられている制御情報に格納されているコンテキストの例を示した図である。It is the figure which showed the example of the context stored in the control information matched with the application program A. 第2の実施の形態で仮定するアプリケーションプログラムの動作画面例を示す図である。It is a figure which shows the example of an operation | movement screen of the application program assumed in 2nd Embodiment. 制御情報が有するコンテキストの詳細情報の第1の例を示した図である。It is the figure which showed the 1st example of the detailed information of the context which control information has. 第2の実施の形態にかかる記憶部が記憶する制御情報の例を示した図である。It is the figure which showed the example of the control information which the memory | storage part concerning 2nd Embodiment memorize | stores. 第3の実施の形態にかかるネットワークシステムを構成を示す図である。It is a figure which shows a structure of the network system concerning 3rd Embodiment. サーバ又は端末が備える記憶部に格納された後のアプリケーションプログラム及び制御情報の例を示す図である。It is a figure which shows the example of the application program after being stored in the memory | storage part with which a server or a terminal is provided, and control information. 通信装置のハードウェア構成を示した図である。It is the figure which showed the hardware constitutions of the communication apparatus.

符号の説明Explanation of symbols

100 通信装置
101 記憶部
102 無線ネットワークI/F
103 有線ネットワークI/F
104 通信部
105 登録・更新部
106 制御部
107 実行部
108 環境情報取得部
109 検出部
111 検出部
150 サーバ
1301 ストレージ
1302 サーバ
1303〜1305 端末
1306 ネットワーク
1501 CPU
1502 ROM
1503 RAM
1504 HDD
1505 バス
100 Communication Device 101 Storage Unit 102 Wireless Network I / F
103 Wired network I / F
DESCRIPTION OF SYMBOLS 104 Communication part 105 Registration / update part 106 Control part 107 Execution part 108 Environment information acquisition part 109 Detection part 111 Detection part 150 Server 1301 Storage 1302 Server 1303-1305 Terminal 1306 Network 1501 CPU
1502 ROM
1503 RAM
1504 HDD
1505 bus

Claims (9)

ネットワークを介して通信制御を行う通信部と、
前記通信部に対して通信を要求するアプリケーションを実行する実行部と、
前記通信部が用いるネットワーク状態を示す状態情報を検出する検出部と、
ネットワーク状態を示す状態情報と、前記アプリケーションが前記通信部に対して要求する通信について当該ネットワーク状態に適した制御を行う通信制御情報と、を対応づけて記憶する記憶部と、
前記検出部により検出された前記状態情報と、前記記憶部で対応づけられた前記通信制御情報に基づいて、前記アプリケーションが前記通信部に対して要求する通信を制御する制御部と、
を備えることを特徴とする通信装置。
A communication unit that performs communication control via a network;
An execution unit that executes an application that requests communication with the communication unit;
A detection unit for detecting state information indicating a network state used by the communication unit;
A storage unit that stores state information indicating a network state and communication control information that performs control suitable for the network state with respect to communication that the application requests to the communication unit;
A control unit for controlling communication requested by the application to the communication unit based on the state information detected by the detection unit and the communication control information associated with the storage unit;
A communication apparatus comprising:
前記制御部は、さらに、前記検出部により検出された前記ネットワーク状態に基づいて、前記アプリケーションが前記通信部に対して要求する通信を制御し、
前記検出部により検出された前記状態情報と、前記制御部が行った通信の制御を示す通信制御情報とを対応づけて、前記記憶部に登録する登録部を、
さらに備えることを特徴とする請求項1に記載の通信装置。
The control unit further controls communication requested by the application to the communication unit based on the network state detected by the detection unit,
A registration unit that associates the state information detected by the detection unit with communication control information indicating control of communication performed by the control unit and registers the information in the storage unit,
The communication apparatus according to claim 1, further comprising:
前記制御部は、前記実行部により前記アプリケーションが実行される前に、前記検出部に検出された前記状態情報と、前記記憶部で対応付けられた前記制御情報に基づいて、前記アプリケーションが要求する通信を制御するための初期値を設定すること、
を特徴とする請求項1又は2に記載の通信装置。
The control unit requests the application based on the state information detected by the detection unit and the control information associated with the storage unit before the execution unit executes the application. Setting initial values for controlling communication;
The communication apparatus according to claim 1 or 2, characterized by the above.
前記ネットワーク状態においてアプリケーションが実行されている環境を識別する環境情報を取得する環境情報取得部をさらに備え、
前記記憶部は、さらに、前記環境情報を対応づけて記憶し、
前記制御部は、さらに、前記環境情報取得部が取得した前記環境情報と対応づけられた、前記通信制御情報に基づいて、前記アプリケーションが要求する通信を制御すること、
を特徴とする請求項1乃至3のいずれか一つに記載の通信装置。
An environment information acquisition unit for acquiring environment information for identifying an environment in which the application is executed in the network state;
The storage unit further stores the environment information in association with each other,
The control unit further controls communication requested by the application based on the communication control information associated with the environment information acquired by the environment information acquisition unit;
The communication apparatus according to any one of claims 1 to 3.
前記環境情報取得部は、前記環境情報として、前記アプリケーションの実行ユーザ、プロトコル、ポート番号、受信先IPアドレス・ポート番号、アプリケーションデータの種類、処理負荷、及びメモリ使用量のいずれか一つ以上の組み合わせを取得すること、
を特徴とする請求項4に記載の通信装置。
The environment information acquisition unit includes, as the environment information, any one or more of an execution user of the application, a protocol, a port number, a destination IP address / port number, a type of application data, a processing load, and a memory usage amount. Getting a combination,
The communication device according to claim 4.
前記検出部は、前記ネットワーク状態として、使用するネットワークインターフェイス、送信元IPアドレス、送信先ポート番号、送信データ量、スループット、許容遅延、許容ジッタ、のいずれか一つ以上を検出すること、
を特徴とする請求項4又は5に記載の通信装置。
The detection unit detects, as the network state, any one or more of a network interface to be used, a transmission source IP address, a transmission destination port number, a transmission data amount, a throughput, an allowable delay, and an allowable jitter;
The communication device according to claim 4, wherein:
前記制御部は、前記通信制御情報として、輻輳制御ウィンドウサイズ、受信ウィンドウサイズ、TCP輻輳制御アルゴリズム及び制御アルゴリズムの閾値を用いて通信の制御を行うこと、
を特徴とする請求項1乃至6のいずれか一つに記載の通信装置。
The control unit performs communication control using a congestion control window size, a reception window size, a TCP congestion control algorithm, and a threshold value of the control algorithm as the communication control information;
The communication device according to any one of claims 1 to 6.
通信装置で実行される通信方法であって、
前記通信装置は、ネットワーク状態を示す状態情報と、前記アプリケーションが前記通信部に対して要求する通信について当該ネットワーク状態に適した制御を行う通信制御情報と、を対応づけて記憶する記憶部を備え、
通信部が、ネットワークを介して通信制御を行う通信ステップと、
実行部が、前記通信部に対して通信を要求するアプリケーションを実行する実行ステップと、
検出部が、前記通信部が用いるネットワーク状態を示す前記状態情報を検出する検出ステップと、
前記検出ステップにより検出された前記状態情報と、前記記憶部で対応づけられた前記通信制御情報に基づいて、前記アプリケーションが前記通信部に対して要求する通信を制御する制御ステップと、
を有することを特徴とする通信方法。
A communication method executed by a communication device,
The communication apparatus includes a storage unit that stores state information indicating a network state in association with communication control information that performs control suitable for the network state with respect to communication requested by the application to the communication unit. ,
A communication step in which a communication unit performs communication control via a network;
An execution step of executing an application for requesting communication to the communication unit;
A detecting step for detecting the state information indicating a network state used by the communication unit;
A control step for controlling communication requested by the application to the communication unit based on the state information detected by the detection step and the communication control information associated with the storage unit;
A communication method characterized by comprising:
コンピュータが、ネットワーク状態を示す状態情報と、前記アプリケーションが前記通信部に対して要求する通信について当該ネットワーク状態に適した制御を行う通信制御情報と、を対応づけて記憶する記憶部を備え、
ネットワークを介して通信制御を行う通信ステップと、
前記通信部に対して通信を要求するアプリケーションを実行する実行ステップと、
前記通信部が用いるネットワーク状態を示す前記状態情報を検出する検出ステップと、
前記検出ステップにより検出された前記状態情報と、前記記憶部で対応づけられた前記通信制御情報に基づいて、前記アプリケーションが前記通信部に対して要求する通信を制御する制御ステップと、
をコンピュータに実行させるための通信プログラム。
The computer includes a storage unit that stores state information indicating a network state and communication control information that performs control suitable for the network state with respect to communication that the application requests to the communication unit,
A communication step for controlling communication via a network;
An execution step of executing an application requesting communication to the communication unit;
A detection step of detecting the status information indicating a network status used by the communication unit;
A control step for controlling communication requested by the application to the communication unit based on the state information detected by the detection step and the communication control information associated with the storage unit;
A communication program for causing a computer to execute.
JP2008236823A 2008-09-16 2008-09-16 Communication equipment, method and program Pending JP2010074279A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008236823A JP2010074279A (en) 2008-09-16 2008-09-16 Communication equipment, method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008236823A JP2010074279A (en) 2008-09-16 2008-09-16 Communication equipment, method and program

Publications (1)

Publication Number Publication Date
JP2010074279A true JP2010074279A (en) 2010-04-02

Family

ID=42205694

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008236823A Pending JP2010074279A (en) 2008-09-16 2008-09-16 Communication equipment, method and program

Country Status (1)

Country Link
JP (1) JP2010074279A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130223254A1 (en) * 2012-02-28 2013-08-29 Fujitsu Limited Communication control device, communication control method, and computer-readable recording medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130223254A1 (en) * 2012-02-28 2013-08-29 Fujitsu Limited Communication control device, communication control method, and computer-readable recording medium
US8897166B2 (en) 2012-02-28 2014-11-25 Fujitsu Limited Communication control device, communication control method, and computer-readable recording medium

Similar Documents

Publication Publication Date Title
KR100959523B1 (en) Method of managing quarlity of service for users and system for performing the same
US7724771B2 (en) Communication apparatus and communication control method
US20180123926A1 (en) Distributed system to determine a server&#39;s health
CN107852403B (en) DASH caching proxy application
CN108429701B (en) Network acceleration system
EP2838230A2 (en) Scalable policy-controlled packet inspection systems and methods for advanced application interface
US8112517B2 (en) Relay system, relay program, and relay method
US20110040992A1 (en) Communication apparatus and method having one or more communication control programs
JP2015511415A (en) Method, device and system for monitoring quality of internet access service of mobile terminal
JP2009231975A (en) Information processing unit, information processing method, client equipment, and information processing system
JP2008546242A (en) System and method for optimizing network communications in response to network conditions
US9838481B2 (en) Provisioning of network communication parameters based on device type
US8369245B2 (en) Communication apparatus having network interfaces and responding to device search, communication method, and storage medium
JP6495381B2 (en) Server apparatus, method for server apparatus to communicate with IoT device, computer program, communication system, and IoT device
KR20190030589A (en) Method and apparatus for analyzing image of unmanned aerial vehicle through offloading system
JP2008061223A (en) Communication apparatus and communication control method
US11540026B2 (en) Data relay apparatus, method, delivery system, and program
JP6056857B2 (en) Communication control device and communication control method
US9762511B2 (en) Communication device
JP2010074279A (en) Communication equipment, method and program
US9769040B2 (en) Monitoring apparatus, monitoring method and computer readable medium for monitoring
US10015288B2 (en) Communication apparatus and control method of communication apparatus
WO2016106557A1 (en) Method and apparatus for sending video
US20150156653A1 (en) Packet analysis within a radio access network
JP6640065B2 (en) Communication device, communication control device, communication method, communication control method, and program