JP2017225162A - 通信装置、通信制御方法、及びプログラム - Google Patents
通信装置、通信制御方法、及びプログラム Download PDFInfo
- Publication number
- JP2017225162A JP2017225162A JP2017153677A JP2017153677A JP2017225162A JP 2017225162 A JP2017225162 A JP 2017225162A JP 2017153677 A JP2017153677 A JP 2017153677A JP 2017153677 A JP2017153677 A JP 2017153677A JP 2017225162 A JP2017225162 A JP 2017225162A
- Authority
- JP
- Japan
- Prior art keywords
- communication
- data
- application
- data communication
- gid
- 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
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
【課題】ユーザがアプリケーションのデータ通信の許可又は禁止を容易に設定することができる通信装置、通信制御方法、及びプログラムを提供する。【解決手段】通信装置であって、デフォルトでデータ通信を禁止し、アプリケーションからデータ通信の要求を受け、要求したアプリケーションが属するグループのIDに応じて、アプリケーションのデータ通信を許可する通信装置。【選択図】図1
Description
本発明は、通信装置、通信制御方法、及びプログラムに関する。
従来、データ通信可能な携帯端末等の通信装置が知られている(例えば、特許文献1参照)。通信装置においては、通信装置上で稼働するアプリケーションによるデータ通信が一括で許可される、又は、一括で禁止される構成が採用されることがある。その一方で、アプリケーションごとにデータ通信が許可される、又は、禁止される設定が可能な構成が採用されることもある。
アプリケーションごとにデータ通信を許可又は禁止する設定は、ユーザにより行われる。しかし、通信装置上で稼働するアプリケーションの数は増大する傾向にある。そうすると、ユーザがアプリケーションのデータ通信を個別に把握しきれず、ユーザがアプリケーションのデータ通信の許可又は禁止を適切に設定できない場合がある。
そこで本発明は、上述の点に鑑みてなされたものであり、ユーザがアプリケーションのデータ通信の許可又は禁止を容易に設定することができる通信装置、通信制御方法、及びプログラムを提供することを目的とする。
上記目的を達成する本発明の一実施形態に係る通信装置は、
デフォルトでデータ通信を禁止し、
アプリケーションからデータ通信の要求を受け、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可する。
デフォルトでデータ通信を禁止し、
アプリケーションからデータ通信の要求を受け、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可する。
また、前記アプリケーションは、VPNアプリケーションであってもよい。
また、前記データ通信がセルラ通信である場合に、デフォルトでデータ通信を禁止するようにしてもよい。
また、前記データ通信が無線LAN通信である場合に、デフォルトでデータ通信を許可するようにしてもよい。
また、本発明の一実施形態に係る通信制御方法は、
通信装置において、
デフォルトでデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可するステップと
を含む。
通信装置において、
デフォルトでデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可するステップと
を含む。
また、本発明の一実施形態に係るプログラムは、
通信装置として機能するコンピュータに、
デフォルトでデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可するステップと
を実行させる。
通信装置として機能するコンピュータに、
デフォルトでデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可するステップと
を実行させる。
また、本発明の一実施形態に係る通信装置は、
デフォルトでデータ通信を許可し、
アプリケーションからデータ通信の要求を受け、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止する。
デフォルトでデータ通信を許可し、
アプリケーションからデータ通信の要求を受け、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止する。
また、本発明の一実施形態に係る通信制御方法は、
通信装置において、
デフォルトでデータ通信を許可するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止するステップと
を含む。
通信装置において、
デフォルトでデータ通信を許可するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止するステップと
を含む。
また、本発明の一実施形態に係るプログラムは、
通信装置として機能するコンピュータに、
デフォルトでデータ通信を許可するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止するステップと
を実行させる。
通信装置として機能するコンピュータに、
デフォルトでデータ通信を許可するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止するステップと
を実行させる。
本発明の一実施形態に係る通信装置、通信制御方法、及びプログラムによれば、ユーザがアプリケーションのデータ通信の許可又は禁止を容易に設定することができる。
(実施形態1)
以下、一実施形態に係る通信装置について、図面を参照しながら詳細に説明する。本実施形態に係る通信装置は、携帯電話、又はスマートフォンなどの携帯機器とすることができる。しかしながら、本実施形態に係る通信装置は、携帯機器に限定されるものではなく、デスクトップPC、ノートPC、タブレット型PC、家電製品、産業用機器(FA機器)、専用端末等、データ通信を行う種々の電子機器とすることができる。
以下、一実施形態に係る通信装置について、図面を参照しながら詳細に説明する。本実施形態に係る通信装置は、携帯電話、又はスマートフォンなどの携帯機器とすることができる。しかしながら、本実施形態に係る通信装置は、携帯機器に限定されるものではなく、デスクトップPC、ノートPC、タブレット型PC、家電製品、産業用機器(FA機器)、専用端末等、データ通信を行う種々の電子機器とすることができる。
[装置構成]
図1は、本実施形態に係る通信装置1の概略構成例を示す機能ブロック図である。図1に示されるように、通信装置1は、制御部10と、通信部11と、記憶部12と、表示部13と、操作部14とを備える。制御部10は、通信部11と、記憶部12と、表示部13と、操作部14とに接続され、これらを制御する。
図1は、本実施形態に係る通信装置1の概略構成例を示す機能ブロック図である。図1に示されるように、通信装置1は、制御部10と、通信部11と、記憶部12と、表示部13と、操作部14とを備える。制御部10は、通信部11と、記憶部12と、表示部13と、操作部14とに接続され、これらを制御する。
制御部10は、オペレーティングシステム(以下、OSともいう)、及び、アプリケーションソフトウェア(以下、アプリケーションともいう)を実行可能なプロセッサ又はマイコン等により構成されうる。OSは、例えばAndroid(登録商標)である。アプリケーションについては後述する。
通信部11は、セルラ通信、又は無線LAN通信等を行う通信インタフェースとして、I/F(インタフェース)デバイス111を備える。I/Fデバイス111は、モデム112と無線LANデバイス113とを含む。通信部11は、I/Fデバイス111を用いてインターネット等のネットワーク側に接続され、ネットワーク側との間でデータ通信を行う。これにより、通信装置1はネットワーク側との間でデータ通信可能となる。通信部11は、制御部10に接続され、ネットワーク側へ出力するデータを制御部10から取得する。制御部10は、通信部11に対して出力するデータをフィルタリング処理によって選択する。フィルタリング処理については後述する。また制御部10は、ネットワーク側から受信したデータを通信部11から取得する。
セルラ通信方式によりネットワーク側と接続される場合、一般的に、通信されるデータ(パケット)の量の増大に応じて通信料金が増大する従量課金制の料金体系が採用される。一方で、無線LAN通信等の方式によりネットワーク側と接続される場合、一般的に、そのような料金体系ではない。
記憶部12は、例えば半導体メモリ等によって構成されうる。記憶部12には、各種情報若しくはデータ、又は、制御部10が実行するOS若しくはアプリケーション等のプログラムが格納される。制御部10は、記憶部12に格納されたプログラムを取得し、実行する。制御部10は、プログラムの実行により生成されるデータを記憶部12に格納する。また記憶部12は、ワークメモリとしても機能しうる。
表示部13は、制御部10から取得した情報に基づき、文字、画像、操作用オブジェクト、ポインタ等を表示する。表示部13は、例えば、液晶ディスプレイ、有機ELディスプレイ、無機ELディスプレイ等の表示デバイスであるが、これらに限られるものではない。
操作部14は、テンキー等の物理キー、タッチパッド、又はタッチパネル等によって構成される。制御部10は、操作部14から取得した入力内容に応じて、表示部13に表示されるポインタ等を移動させたり、操作用オブジェクトを選択したりする。
図2は、本実施形態に係る通信装置1の一例の外観を示す図である。図2に示す通り、本実施形態に係る通信装置1は、いわゆる折りたたみ式(フリップ型又はクラムシェル型等)のフィーチャーフォンである。通信装置1は、上部筐体2と下部筐体3とが、ヒンジ部4によって回動可能に接続される。上部筐体2は表示部13を備え、下部筐体3は操作部14を備える。操作部14は、テンキー等の物理キーの他、物理キーが設けられていない部位にタッチパッド141を備える。通信装置1は、例えば物理キーにより操作用のオブジェクトの選択操作を受け付け、またタッチパッド141によりポインタ等の移動操作を受け付ける。
[アプリケーション]
アプリケーションは、制御部10で実行可能となるように通信装置1にインストールされ、記憶部12に格納される。アプリケーションが通信装置1にインストールされる際、各アプリケーションに固有のユーザ識別子(以下、UIDともいう)が割り当てられる。アプリケーションは、制御部10によって、OS上においてUIDに対応づけられるプロセスとして実行される。
アプリケーションは、制御部10で実行可能となるように通信装置1にインストールされ、記憶部12に格納される。アプリケーションが通信装置1にインストールされる際、各アプリケーションに固有のユーザ識別子(以下、UIDともいう)が割り当てられる。アプリケーションは、制御部10によって、OS上においてUIDに対応づけられるプロセスとして実行される。
アプリケーションは、制御部10で実行される際に、ファイルシステムなどのリソースに対してアクセスする。各アプリケーションが無制限にリソースにアクセスすると、各アプリケーションによるリソースの使用領域が重複することがあり、この場合アプリケーションが正常に実行されなくなることがある。そこで、OS上で実行されるプロセスに対応づけられるUIDによってリソースに対するアクセスを制限し、アプリケーションによるリソース使用が互いに影響を及ぼさないようにする。つまり、各プロセスからアクセス可能なリソースは、同一のUIDに対応づけられるプロセスのリソースに制限される。
各アプリケーションには、グループ識別子(以下、GID又はグループのIDともいう)がさらに割り当てられる。GIDは、各アプリケーションに割り当てられる固有のUIDが属するグループを特定するものである。一つのグループに一個のUIDだけが属してもよいし、一つのグループに複数のUIDが属してもよい。アプリケーションがUIDに対応づけられるプロセスとして実行される際、このプロセスはGIDにも対応づけられる。また、各プロセスからアクセス可能なリソースは、同一のUIDだけでなく同一のGIDに対応づけられるプロセスのリソースにまで対象を広げて制限されるようにしてもよい。
アプリケーションは、フォアグラウンド(以下、FGともいう)、又は、バックグラウンド(以下、BGともいう)で実行される。アプリケーションがFGで実行されている状態は、例えば、ユーザが確認可能なように実行状況が表示部13に表示される、又は、ユーザが操作部14を用いて操作可能な状態である。アプリケーションがBGで実行されている状態は、例えば、実行状況が表示部13に表示されず、ユーザが操作可能ではない状態、又は、ユーザが意図せずに動作している状態である。
[データ通信の制御]
制御部10によって実行されるアプリケーションは、通信部11を用いて、インターネット等のネットワーク側とのデータ通信を行う。上述の通り、アプリケーションはOS上においてUID及びGIDに対応づけられるプロセスとして実行される。そして、アプリケーションから送信されるデータにはUID及びGIDが対応づけられる。制御部10は、データに対応づけられたUID又はGIDに基づいてデータの送信を許可するか禁止(制限)するか決定することにより、各アプリケーションから送信されるデータに係るデータ通信を許可するか禁止するか制御できる。以下、本実施形態に係る説明においては、データ通信は、原則的に通信部11がネットワーク側との間で行うデータ通信のことを指すものとする。
制御部10によって実行されるアプリケーションは、通信部11を用いて、インターネット等のネットワーク側とのデータ通信を行う。上述の通り、アプリケーションはOS上においてUID及びGIDに対応づけられるプロセスとして実行される。そして、アプリケーションから送信されるデータにはUID及びGIDが対応づけられる。制御部10は、データに対応づけられたUID又はGIDに基づいてデータの送信を許可するか禁止(制限)するか決定することにより、各アプリケーションから送信されるデータに係るデータ通信を許可するか禁止するか制御できる。以下、本実施形態に係る説明においては、データ通信は、原則的に通信部11がネットワーク側との間で行うデータ通信のことを指すものとする。
図3は、本実施形態に係るデータの流れの一例を示すブロック図である。図3において、制御部10と通信部11とが端末側に設けられる。そして、通信部11がネットワーク側と接続され、ネットワーク側との間でデータ通信を行う。
図3において、制御部10は、アプリケーションA16aとアプリケーションB16bとをOS上におけるプロセスとして実行する。制御部10によって実行されるアプリケーションは、必要に応じてネットワーク側とのデータ通信を要求する。例えば、アプリケーションA16aは、ネットワーク側へ向けてデータの送信を要求する。この場合、アプリケーションA16aからネットワーク側へ向けて送信するデータは、制御部10で稼働するパケットフィルタ15に入力される。また、アプリケーションB16bからも同様に、アプリケーションB16bからネットワーク側へ向けて送信するデータがパケットフィルタ15に入力される。
パケットフィルタ15は、制御部10からネットワーク側へ向かうデータのフィルタリング処理を行う。フィルタリング処理は、設定されたフィルタリング条件に基づいて、アプリケーションから要求されたデータの送信を許可するか禁止するか決定する処理である。フィルタリング条件は、例えば、ip_rule又はip_route等を含む。これらのフィルタリング条件は、記憶部12に格納されており、パケットフィルタ15によって参照される。以下、フィルタリング条件を設定する動作は、フィルタリング条件を記憶部12に格納する動作を含むものとする。なお、フィルタリング条件は、記憶部12に格納されずに制御部10に保持されていてもよい。
ip_ruleは、例えば、送信元がXであるデータをネットワーク側へ送信してよいか決定するための条件を含む。ip_routeは、例えば、送信先としてYが指定されたデータをネットワーク側へ送信するルート(中継ルータ等)を決定するための条件を含む。
図3において、アプリケーションA16aから送信されるデータの流れが実線の矢印で示され、アプリケーションB16bから送信されるデータの流れが破線の矢印で示される。このうち、アプリケーションA16aから送信されるデータは、パケットフィルタ15におけるフィルタリング処理によって送信が禁止されず、通信部11に送られる。一方、アプリケーションB16bから送信されるデータは、パケットフィルタ15におけるフィルタリング処理によって送信が禁止され、通信部11に送られない。この動作は、図3において破線の矢印がrejectという記載に向けられることで示される。
パケットフィルタ15を通過したデータ(図3の場合、実線の矢印で示されるアプリケーションA16aから送信されるデータ)は、通信部11に入力される。通信部11は、I/Fデバイス111を用いて、ネットワーク側へデータを送信する。通信部11は、ネットワーク側へデータを送信するに際して、モデム112によるセルラ通信を用いるか、無線LANデバイス113による無線LAN通信を用いるか、又は、他の通信方式を用いるか適宜決定しうる。
[フィルタリング処理]
本実施形態において、アプリケーションから送信されるデータについてのデータ通信を許可するか禁止するかは、データ送信元のアプリケーションに割り当てられるUIDが属するグループを特定するGIDに基づいて決定される。以下、UIDとしてXが割り当てられるアプリケーション(以下、UIDがXのアプリケーションともいう)から送信されるデータのことを、UIDがXのデータともいう。また、UIDがXのアプリケーションには、当該UIDが属するグループを特定するGIDがYである場合、GIDとしてYが割り当てられる。以下、GIDとしてYが割り当てられるアプリケーションのことを、GIDがYのアプリケーションであるともいう。また、GIDがYのアプリケーションから送信されるデータのことを、GIDがYのデータであるともいう。また、GIDがYのデータのフィルタリング処理を行うために用いられるフィルタリング条件を、GIDがYのデータのフィルタリング条件ともいう。
本実施形態において、アプリケーションから送信されるデータについてのデータ通信を許可するか禁止するかは、データ送信元のアプリケーションに割り当てられるUIDが属するグループを特定するGIDに基づいて決定される。以下、UIDとしてXが割り当てられるアプリケーション(以下、UIDがXのアプリケーションともいう)から送信されるデータのことを、UIDがXのデータともいう。また、UIDがXのアプリケーションには、当該UIDが属するグループを特定するGIDがYである場合、GIDとしてYが割り当てられる。以下、GIDとしてYが割り当てられるアプリケーションのことを、GIDがYのアプリケーションであるともいう。また、GIDがYのアプリケーションから送信されるデータのことを、GIDがYのデータであるともいう。また、GIDがYのデータのフィルタリング処理を行うために用いられるフィルタリング条件を、GIDがYのデータのフィルタリング条件ともいう。
パケットフィルタ15は、例えば、GIDが1のアプリケーションから送信されるデータに係るデータ通信のみ許可するというフィルタリング条件を有する。また、フィルタリング条件は、複数の条件をあわせたものであってもよい。
ここで、本実施形態に係るフィルタリング処理が行われる場合のデータ通信のシーケンスを説明する。本実施形態に係るフィルタリング処理は、BG動作しているアプリケーションが送信するデータに係るデータ通信の許可又は禁止を決定することを前提とする。以下の本実施形態に係るフィルタリング処理の説明は上記前提に基づく。
本実施形態に係るフィルタリング処理は、デフォルトでデータ通信を禁止するというフィルタリング条件(以下、デフォルト通信禁止条件ともいう)が設定されている。デフォルト通信禁止条件が設定されていることにより、他のフィルタリング条件がさらに設定されない限り、全てのデータ通信が禁止される。デフォルト通信禁止条件は、通信装置1の出荷時に設定されたり、通信装置1の初期化時に設定されたりする。すなわち、本実施形態において、「デフォルト」とは、所定のタイミング(例えば、通信装置1の出荷時、通信装置1の初期化時、等)で、標準の動作として予め設定されていることを意味するものとする。
本実施形態においては、必要なデータ通信を実行するために、デフォルト通信禁止条件に加えて、データ通信を許可するための条件(以下、通信許可条件ともいう)が設定されたフィルタリング条件が用いられる。この場合、通信許可条件は、デフォルト通信禁止条件に優先する。
図4は、本実施形態に係るフィルタリング処理のシーケンスを説明する図である。図4には、アプリケーションA16a、アプリケーションB16b、フレームワーク、通信制御部、カーネル、及びモデム112のシーケンスが示されている。
モデム112は、上述の通り、セルラ通信を行う通信インタフェースとして機能するハードウェアである。図4においては、モデム112を用いたセルラ通信によるデータ通信について説明しているが、モデム112ではなく、無線LANデバイス113等の他のI/Fデバイス111に置き換えて、他の通信方式によるデータ通信を行ってもよい。
カーネル、通信制御部、及びフレームワークはソフトウェアであり、制御部10で実行される。
フレームワークは、OS上においてアプリケーションを動作させるための機能群を含むソフトウェアである。一般的に、フレームワークで準備された機能群を組み合わせることによって、各アプリケーションの機能が実現される。
カーネルは、OSの中核をなすソフトウェアであり、アプリケーション等のソフトウェアによる処理に基づき、通信部11等のハードウェアにおける処理を管理して、ハードウェアの機能を利用できるようにする。
通信制御部は、ネットワーク関連の処理を行うデーモンプログラムであり、フレームワークとカーネルとの間をつなぐ処理をする。通信制御部は、特に、カーネルが通信部11の機能を利用できるようにするためのデータを処理する。本実施形態において、通信制御部は、カーネルが通信部11へのデータ出力を許可するか禁止するか決定するための条件をカーネルに出力する。
本実施形態において、フィルタリング処理はパケットフィルタ15により行われるものとして説明する。ここで、パケットフィルタ15は仮想的な処理ユニットであり、実際のフィルタリング処理は、通信制御部とカーネルとにより行われる。
アプリケーションA16a及びアプリケーションB16bは、OS上において動作するプロセスである。図4において、アプリケーションA16aはGIDが1のアプリケーションであり、アプリケーションB16bはGIDが2のアプリケーションである。
以下、図4に示されるシーケンスを説明する。BG動作するアプリケーションがデータを送信する場合、デフォルトでセルラ通信によるデータ通信が禁止されている(ステップS1)。つまり、フィルタリング条件として、BG動作するアプリケーションから送信されるデータに係るデフォルト通信禁止条件が設定されている。図4において、デフォルト通信禁止条件が設定されていることは、カーネル、通信制御部、及びフレームワークにより認識されている。特に、カーネルは、デフォルト通信禁止条件が設定されていることを認識している場合、モデム112に対するデータの送信を行わない。
続いて、アプリケーションがBGで動作する場合のGIDが1のデータに係るデータ通信の許可要求(以下、GIDが1のデータの通信許可要求ともいう)を、フレームワークが取得する(ステップS2)。続いて、フレームワークは、GIDが1のデータの通信許可要求を通信制御部に出力する(ステップS3)。
通信制御部は、GIDが1のデータの通信許可要求を取得する(ステップS4)。続いて通信制御部は、GIDが1のデータの通信許可要求をカーネルに出力する(ステップS5)。
カーネルは、GIDが1のデータの通信許可要求を取得する(ステップS6)。以上のステップS3〜S6の動作により、カーネルにGIDが1のデータの通信許可要求が伝達される。つまり、フィルタリング条件として、GIDが1のデータに係る通信許可条件が設定される。
続いて、アプリケーションA16aがBG動作においてデータ通信を要求する場合(ステップS7)、カーネルは、GIDが1のデータに係る通信許可条件が設定されていることを認識しているので、データ通信を許可する(ステップS8)。そして、モデム112は、GIDが1のデータをネットワーク側へ送信するデータ通信を行う(ステップS9)。
一方、GIDが2のアプリケーションB16bがBG動作においてデータ通信を要求する場合(ステップS10)、カーネルは、GIDが2のデータに係る通信許可条件が設定されていないことを認識している。よって、カーネルは、デフォルト通信禁止条件に基づいて、データ通信を禁止する(ステップS11)。
<アプリケーションからのデータ送信シーケンス>
図4のステップS7〜S9において、アプリケーションがデータ通信を要求してモデム112がデータ通信を行うことを説明した。以下、図5を用いて、これらのシーケンスをより具体的に説明する。図5には、アプリケーションA16a、フレームワーク、カーネル、及びモデム112のシーケンスが示されている。アプリケーションA16a、フレームワーク、カーネル、及びモデム112については、図4と同様であるため説明を省略する。
図4のステップS7〜S9において、アプリケーションがデータ通信を要求してモデム112がデータ通信を行うことを説明した。以下、図5を用いて、これらのシーケンスをより具体的に説明する。図5には、アプリケーションA16a、フレームワーク、カーネル、及びモデム112のシーケンスが示されている。アプリケーションA16a、フレームワーク、カーネル、及びモデム112については、図4と同様であるため説明を省略する。
アプリケーションA16aは、FG又はBGのいずれで動作する場合であっても、アプリケーションA16aから送信されるデータ(GIDが1のデータ)に係るデータ通信の要求(以下、GIDが1のデータ通信要求ともいう)をアプリケーションA16aが動作しているOS上のフレームワークに対して出力する(ステップS101)。
フレームワークは、GIDが1のデータ通信要求を取得する(ステップS102)。続いてフレームワークは、GIDが1のデータ通信要求をカーネルに出力する(ステップS103)。
カーネルは、GIDが1のデータ通信要求を取得する(ステップS104)。続いてカーネルは、モデム112に対してGIDが1のデータ通信要求に基づいてデータを出力する(ステップS105)。そしてモデム112は、GIDが1のデータをネットワーク側へ送信するデータ通信を行う(ステップS106)。
以上説明してきた図5に示されるシーケンスの動作により、アプリケーションから送信するデータが通信部11に出力され、ネットワーク側へ送信される。
以上、実施形態1に係るフィルタリング処理について説明してきた。本実施形態に係るフィルタリング処理によれば、GIDを指定することによってデータ通信の許可が設定される。一方で、UIDを指定することによってデータ通信の許可が設定されるというフィルタリング処理も考えられる。しかし、GIDはUIDよりも広い範囲を示すので、GIDを指定する方法は、UIDを指定する方法よりも、アプリケーションによるデータ通信の許可を容易に設定することができる。
本実施形態において、データ通信が許可されたデータを送信するために必要となる機能については、デフォルトでデータ通信を許可するようにしてもよい。デフォルトでデータ通信を許可される機能は、例えば、VPN(Vertual Private Network)のトンネリング機能、DNS(Domain Name System)の名前解決機能、又はテザリング機能等である。これらの機能に係るデータ通信は、ユーザが意図した場合に動作するものに限り、許可されてもよい。これらの機能に係るデータ通信を許可する条件は、デフォルト通信禁止条件に優先するフィルタリング条件として設定されてもよい。
(実施形態2)
以下、実施形態2に係るフィルタリング処理について説明する。本実施形態に係るフィルタリング処理で用いられるフィルタリング条件には、デフォルトで全てのデータに係るデータ通信を許可するという条件(以下、デフォルト通信許可条件ともいう)が設定される。このように全てのデータに係るデータ通信が許可された上で、ユーザにより指定されたGIDのデータに係るデータ通信を禁止するという条件(以下、通信禁止条件ともいう)がさらに設定される。
以下、実施形態2に係るフィルタリング処理について説明する。本実施形態に係るフィルタリング処理で用いられるフィルタリング条件には、デフォルトで全てのデータに係るデータ通信を許可するという条件(以下、デフォルト通信許可条件ともいう)が設定される。このように全てのデータに係るデータ通信が許可された上で、ユーザにより指定されたGIDのデータに係るデータ通信を禁止するという条件(以下、通信禁止条件ともいう)がさらに設定される。
図6は、本実施形態に係るフィルタリング処理のシーケンスを説明する図である。アプリケーションA16a、アプリケーションB16b、フレームワーク、通信制御部、カーネル、及びモデム112については、実施形態1の図4と同様であるため説明を省略する。
図6において、BG動作するアプリケーションがデータを送信する場合であっても、デフォルトでセルラ通信によるデータ通信が許可されている(ステップS201)。つまり、フィルタリング条件として、BG動作するアプリケーションから送信されるデータに係るデフォルト通信許可条件が設定されている。
続いて、アプリケーションA16aがBG動作する場合におけるGIDが1のデータに係るデータ通信の禁止要求(以下、GIDが1のデータの通信禁止要求ともいう)を、フレームワークが取得する(ステップS202)。この時点においては、アプリケーションA16aがBG動作していないため、GIDが1のデータに係る通信禁止条件は設定されない。
続いて、アプリケーションA16aがBG動作に移行した通知(以下、BG移行通知ともいう)をフレームワークが取得する(ステップS203)。通知を受けたフレームワークは、GIDが1のデータの通信禁止要求を通信制御部に出力する(ステップS204)。
通信制御部は、GIDが1のデータの通信禁止要求を取得する(ステップS205)。続いて通信制御部は、GIDが1のデータの通信禁止要求をカーネルに出力する(ステップS206)。
カーネルは、GIDが1のデータの通信禁止要求を取得する(ステップS207)。以上のステップS202〜S207の動作により、カーネルにGIDが1のデータの通信禁止要求が伝達される。つまり、フィルタリング条件として、GIDが1のデータに係る通信禁止条件が設定される。
続いて、アプリケーションA16aがBG動作においてデータ通信を要求する場合(ステップS208)、カーネルは、GIDが1のデータに係る通信禁止条件が設定されていることを認識しているので、データ通信を禁止する(ステップS209)。
一方、GIDが2のアプリケーションB16bがBG動作においてデータ通信を要求する場合(ステップS210)、カーネルは、GIDが2のデータに係る通信禁止条件が設定されていないことを認識している。よって、カーネルは、デフォルト通信許可条件に基づいて、データ通信を許可する(ステップS211)。そして、モデム112は、GIDが2のデータをネットワーク側へ送信するデータ通信を行う(ステップS212)。
以上、実施形態2に係るフィルタリング処理について説明してきた。本実施形態に係るフィルタリング処理によれば、GIDを指定することによってデータ通信の禁止が設定される。一方で、UIDを指定することによってデータ通信の禁止が設定されるというフィルタリング処理も考えられる。しかし、GIDはUIDよりも広い範囲を示すので、GIDを指定する方法は、UIDを指定する方法よりも、アプリケーションによるデータ通信の禁止を容易に設定することができる。
実施形態1及び2において、I/Fデバイス111としてモデム112を用いるセルラ通信方式によるデータ通信を許可又は禁止する方法について主に説明してきた。しかし、I/Fデバイス111はモデム112に限られず、無線LANデバイス113等であってもよい。つまり、実施形態1及び2に係る通信装置1のデータ通信の制御方法は、セルラ通信方式によるデータ通信に限られず、無線LAN通信方式等の他の通信方式によるデータ通信においても適用されうる。
また、実施形態1及び2に係るフィルタリング処理は、BG動作しているアプリケーションのデータ通信について行われたが、これには限られず、FG動作しているアプリケーションのデータ通信について行われてもよい。つまり、実施形態1及び2に係るフィルタリング処理は、FG動作しているアプリケーションが送信するデータに係るデータ通信の許可又は禁止を決定してもよい。
(実施形態3)
ここまで説明してきたように、実施形態1及び2において、アプリケーションから送信されるデータに係るデータ通信を許可するか禁止するかは、データに対応づけられるGIDに基づいて決定される。また実施形態1において、通信部11がネットワーク側に接続する通信方式を主にセルラ通信方式として説明してきた。以下、実施形態3として、通信部11がI/Fデバイス111としてモデム112と無線LANデバイス113とを適宜選択して用いる場合について説明する。
ここまで説明してきたように、実施形態1及び2において、アプリケーションから送信されるデータに係るデータ通信を許可するか禁止するかは、データに対応づけられるGIDに基づいて決定される。また実施形態1において、通信部11がネットワーク側に接続する通信方式を主にセルラ通信方式として説明してきた。以下、実施形態3として、通信部11がI/Fデバイス111としてモデム112と無線LANデバイス113とを適宜選択して用いる場合について説明する。
図7は、本実施形態に係るデータの流れの一例を示す図である。図7に示される構成は、図3に示される構成と同様に、制御部10と通信部11とが設けられる。図7において、通信部11は、モデム112と無線LANデバイス113とを備える。通信部11は、モデム112と無線LANデバイス113とを適宜選択して使用し、ネットワーク側とのデータ通信を行う。
図7において、図3と同様に、アプリケーションA16aから送信されるデータの流れが実線で示され、アプリケーションB16bから送信されるデータの流れが破線で示される。また図7において、パケットフィルタ15は、I/Fデバイス111がモデム112である場合と無線LANデバイス113である場合とそれぞれについて、フィルタリング条件に基づいてデータ通信を許可するか決定する。
本実施形態に係るフィルタリング条件は、I/Fデバイス111がモデム112であってネットワーク側との通信がセルラ通信で行われる場合、デフォルトでデータ通信を禁止するという条件を含む。さらに、本実施形態に係るフィルタリング条件は、アプリケーションA16aから送信されるデータに係る通信許可条件を含む。図7に示されるデータの流れの一例は、これらのフィルタリング条件に基づくものである。
I/Fデバイス111がモデム112である場合、パケットフィルタ15は、フィルタリング条件に基づいて、アプリケーションB16bから送信されるデータに係るデータ通信を禁止し、データをモデム112に出力しない。図7において、この動作に係るデータの流れは、パケットフィルタ15からrejectという記載に向かう破線の矢印で示される。
また、パケットフィルタ15は、フィルタリング条件に基づいて、アプリケーションA16aから送信されるデータに係るデータ通信を禁止せず、データをモデム112に出力する。図7において、この動作に係るデータの流れは、パケットフィルタ15からモデム112に向かう実線の矢印で示される。
I/Fデバイス111が無線LANデバイス113である場合、パケットフィルタ15は、アプリケーションA16aから送信されるデータに係るデータ通信もアプリケーションB16bから送信されるデータに係るデータ通信も禁止せず、データを無線LANデバイス113に出力する。図7において、この動作に係るデータの流れは、パケットフィルタ15から無線LANデバイス113に向かう実線及び破線の矢印で示される。
以上、実施形態3について説明してきた。上述の通り、セルラ通信方式と無線LAN通信方式とでは通信するデータ量に係る課金方法が異なることがある。本実施形態によれば、セルラ通信方式によるデータ通信と、無線LAN通信方式によるデータ通信とを選択することができ、課金方法に応じたフィルタリング条件を設定することができる。
(実施形態4)
実施形態4として、接続機能部17をさらに備える通信装置1について説明する。接続機能部17は、通信部11がI/Fデバイス111としてモデム112と無線LANデバイス113とを適宜選択する際に用いられる。
実施形態4として、接続機能部17をさらに備える通信装置1について説明する。接続機能部17は、通信部11がI/Fデバイス111としてモデム112と無線LANデバイス113とを適宜選択する際に用いられる。
実施形態4においては、一般的に従量課金制の料金体系であるセルラ通信によるデータ通信についてのみGIDに基づいて禁止される。無線LAN又はBluetooth(登録商標)などの、一般的に従量課金制ではない方式によるデータ通信は、GIDに基づいて禁止されなくともよい。
[装置構成]
図8は、実施形態4に係る通信装置1の概略構成例を示す機能ブロック図である。図1と比較して、図8に示される通信装置1は、接続機能部17をさらに備える。
図8は、実施形態4に係る通信装置1の概略構成例を示す機能ブロック図である。図1と比較して、図8に示される通信装置1は、接続機能部17をさらに備える。
接続機能部17は、制御部10と通信部11とに接続される。接続機能部17は、制御部10により制御される。接続機能部17は、通信部11に対して、ネットワーク側との接続にモデム112を用いるか、無線LANデバイス113を用いるか、指示する情報を出力する。
また接続機能部17は、通信部11におけるネットワーク側との通信が、モデム112を用いて行われているか、無線LANデバイス113を用いて行われているかに係る情報を取得する。つまり、接続機能部17は、図3のI/Fデバイス111がモデム112であるか無線LANデバイス113であるかに係る情報を取得する。
本実施形態において、制御部10は、アプリケーション機能部とデータサービス機能部とを備える。また、接続機能部17は、制御部10に含まれてもよい。
アプリケーション機能部は、通信装置1におけるアプリケーションの実行に際して、ユーザインタフェースを実現する。またアプリケーション機能部は、各アプリケーションの通信許可又は通信禁止を管理し、通信許可又は通信禁止に係る情報を接続機能部17に通知する。またアプリケーション機能部は、各アプリケーションの状態変化に応じて、接続機能部17への通知を実行するか否か決定する。
接続機能部17は、アプリケーション機能部から通知された通信許可又は通信禁止に係る情報をデータサービス機能部に通知する。
データサービス機能部は、接続機能部17から通知された通信許可又は通信禁止に係る情報に基づいて、パケットフィルタ15が参照するフィルタリング条件として、通信許可条件又は通信禁止条件の設定(追加、変更、又は削除等)を行う。
[VPNデバイスを備える場合のデータ通信の制御]
本実施形態において、通信装置1はVPNデバイス18をさらに備える。VPNデバイス18は、取得したデータをカプセル化するプロトコルを有する。VPNデバイス18が有するプロトコルは、固有のUIDが割り当てられている。以下、プロトコルに割り当てられたUIDを、プロトコルのUIDともいう。VPNデバイス18は、このプロトコルに基づいて、アプリケーションからのデータをカプセル化する。そして、VPNデバイス18は、カプセル化したデータを通信部11に出力する。カプセル化されたデータは、データを送信するアプリケーションに割り当てられているUIDとの対応づけが失われる。そして、カプセル化されたデータには、カプセル化を行ったプロトコルのUIDが新たに対応づけられる。
本実施形態において、通信装置1はVPNデバイス18をさらに備える。VPNデバイス18は、取得したデータをカプセル化するプロトコルを有する。VPNデバイス18が有するプロトコルは、固有のUIDが割り当てられている。以下、プロトコルに割り当てられたUIDを、プロトコルのUIDともいう。VPNデバイス18は、このプロトコルに基づいて、アプリケーションからのデータをカプセル化する。そして、VPNデバイス18は、カプセル化したデータを通信部11に出力する。カプセル化されたデータは、データを送信するアプリケーションに割り当てられているUIDとの対応づけが失われる。そして、カプセル化されたデータには、カプセル化を行ったプロトコルのUIDが新たに対応づけられる。
VPNデバイス18は、データのカプセル化を行うプロトコルを複数有してもよい。この場合、各プロトコルのUIDはそれぞれ異なる。そして、カプセル化されたデータには、カプセル化を行ったプロトコルのUIDが対応づけられる。またVPNデバイス18がデータのカプセル化を行うプロトコルを複数有する場合、これらのプロトコルのUIDは、共通のグループに属する。この共通のグループには、GIDが割り当てられている。よって、VPNデバイス18が有する複数のプロトコルには共通のGIDが対応づけられる。以下、VPNデバイス18が有する複数のプロトコルに共通に対応づけられたGIDを、VPNデバイス18のGIDともいう。カプセル化されたデータには、カプセル化を行ったプロトコルを有するVPNデバイス18のGIDが新たに対応づけられる。また、VPNデバイス18が有するプロトコルは、アプリケーションに含まれるものであってもよい。この場合、VPNデバイス18が有するプロトコルのことを、VPNアプリケーションともいう。
図9は、本実施形態に係るデータの流れを示す図である。図9において、実施形態2の図7に示される構成に加えて、接続機能部17とVPNデバイス18とがさらに設けられる。図9において、パケットフィルタ15から通信部11へ直接接続される経路を通るデータの流れは、図7と同様であるので説明を省略する。
図9において、接続機能部17は、通信部11からI/Fデバイス111がモデム112であるか無線LANデバイス113であるかに係る情報を取得する。また接続機能部17は、通信部11から取得した情報に基づいて、パケットフィルタ15が参照するフィルタリング条件を設定する。
図10は、接続機能部17の動作を示すフローチャートである。まず、接続機能部17は、VPNデバイス18のGIDが対応づけられたデータに係るデータ通信は常に許可するという第1のフィルタリング条件、及び、アプリケーションからVPNデバイス18へのデータの送信を禁止するという第2のフィルタリング条件を設定する(ステップS301)。
第1のフィルタリング条件により、VPNデバイス18でカプセル化されたデータは、どのアプリケーションから送信されたデータであるかにかかわらず、データ通信が許可される。また、VPNデバイス18でカプセル化されたデータは、I/Fデバイス111がモデム112であるか無線LANデバイス113であるかにかかわらず、データ通信が許可される。
一方で、第2のフィルタリング条件により、アプリケーションから送信されたデータは、VPNデバイス18に送信されず、カプセル化されないこととなる。第1及び第2のフィルタリング条件をあわせると、アプリケーションから送信されたデータがVPNデバイス18でカプセル化されることがない。
ここで、ユーザが指定するアプリケーションから送信されたデータ(ユーザが指定するGIDのデータ)をVPNデバイス18でカプセル化してネットワーク側に送信するために、VPNデバイス18へ向けてデータの送信を許可するというフィルタリング条件をさらに設定する必要がある。このフィルタリング条件の設定は、以下のステップS302〜S305において行われる。
ステップS301に続いて、接続機能部17は、通信部11からI/Fデバイス111に係る情報を取得し、I/Fデバイス111がモデム112であるか判定する(ステップS302)。
I/Fデバイス111がモデム112である場合(ステップS302:YES)、接続機能部17は、アプリケーションA16aからVPNデバイス18へ向けてデータを送信することを許可するという第3のフィルタリング条件を追加する(ステップS303)。第3のフィルタリング条件により、アプリケーションA16aから送信されたデータは、VPNデバイス18に送信され、カプセル化される。さらに、上記第1のフィルタリング条件により、VPNデバイス18でカプセル化されたデータに係るデータ通信は許可されるので、アプリケーションA16aから送信されたデータはカプセル化されてネットワーク側に送信されることが許可される。その後、接続機能部17は、図10のフローチャートの処理を終了する。
I/Fデバイス111がモデム112でない場合(ステップS302:NO)、接続機能部17は、I/Fデバイス111が無線LANデバイス113であるか判定する(ステップS304)。
I/Fデバイス111が無線LANデバイス113である場合(ステップS304:YES)、接続機能部17は、アプリケーションからVPNデバイス18へ向けてデータを送信することを許可するという第4のフィルタリング条件を追加する(ステップS305)。その後、接続機能部17は、図10のフローチャートの処理を終了する。
ここでアプリケーションは、アプリケーションA16a及びアプリケーションB16bを含むので、第4のフィルタリング条件により、どのアプリケーションから送信されたデータもVPNデバイス18へ向けて送信が許可されることとなる。これにより、I/Fデバイス111が無線LANデバイス113である場合、どのアプリケーションから送信されたデータもカプセル化されてネットワーク側に送信されることが許可される。
I/Fデバイス111が無線LANデバイス113でない場合(ステップS304:NO)、接続機能部17は、図10のフローチャートの処理を終了する。
以上、図10を用いて接続機能部17に動作を説明してきたが、これらの動作により設定されるフィルタリング条件によるデータの流れは、図9において示されるデータの流れに対応する。以下、この対応関係について説明する。
図9において、パケットフィルタ15からVPNデバイス18に向かう実線の矢印は、第3のフィルタリング条件(アプリケーションA16aからVPNデバイス18へのデータの送信を許可する条件)に基づくデータの流れを示している。また、実線の矢印は、第4のフィルタリング条件(アプリケーションA16a及びアプリケーションB16bからVPNデバイス18へのデータの送信を許可する条件)に基づくデータの流れも示している。
図9において、パケットフィルタ15からVPNデバイス18に向かう破線の矢印は、VPNデバイス18の手前で分岐する。分岐の一方は、VPNデバイス18に向かい、分岐の他方は、rejectという記載に向かう。VPNデバイス18に向かう破線の矢印は、第4のフィルタリング条件に基づくデータの流れを示している。また、rejectという記載に向かう破線の矢印は、第3のフィルタリング条件に基づくデータの流れを示している。つまり、破線の矢印で流れが示されるアプリケーションB16bから送信されるデータは、I/Fデバイス111がモデム112であるか無線LANデバイス113であるかにより、VPNデバイス18に送信されるか決定される。
図9に示されるデータの流れは、図10のフローチャートで設定される各フィルタリング条件に基づき実現されている。しかし、図10とは異なるフィルタリング条件でも図9に示されるデータの流れは実現されうる。図11は、図10とは異なるフィルタリング条件を設定するフローチャートである。
以下、図11に示されるフローチャートについて説明する。まず、接続機能部17は、VPNデバイス18のGIDが対応づけられたデータに係るデータ通信は常に許可するという第1のフィルタリング条件、及び、アプリケーションからVPNデバイス18へのデータの送信を許可するという第5のフィルタリング条件を設定する(ステップS401)。第1のフィルタリング条件は、図10のステップS301で設定される第1のフィルタリング条件と同じである。第5のフィルタリング条件は、図10のステップS301で設定される第2のフィルタリング条件と比較して、データの送信を禁止するのではなく許可する点で異なる。
第1のフィルタリング条件により、VPNデバイス18でカプセル化されたデータは、どのアプリケーションから送信されたデータであるかにかかわらず、データ通信が許可される。また、VPNデバイス18でカプセル化されたデータは、I/Fデバイス111がモデム112であるか無線LANデバイス113であるかにかかわらず、データ通信が許可される。
また、第5のフィルタリング条件により、アプリケーションから送信されたデータは、デフォルトでVPNデバイス18に送信され、カプセル化される。第1及び第5のフィルタリング条件をあわせると、アプリケーションから送信されたデータは、デフォルトで、VPNデバイス18においてカプセル化される。
ここで、ユーザが指定するアプリケーションから送信されたデータ(ユーザが指定するGIDのデータ)をVPNデバイス18に送信せずカプセル化しないようにするために、VPNデバイス18へ向けてデータの送信を禁止するというフィルタリング条件をさらに設定する必要がある。このフィルタリング条件の設定は、以下のステップS402〜S405において行われる。
ステップS401に続いて、接続機能部17は、通信部11からI/Fデバイス111に係る情報を取得し、I/Fデバイス111がモデム112であるか判定する(ステップS402)。
I/Fデバイス111がモデム112である場合(ステップS402:YES)、接続機能部17は、アプリケーションB16bからVPNデバイス18へ向けてデータを送信することを禁止するという第6のフィルタリング条件を追加する(ステップS403)。これにより、アプリケーションB16bから送信されたデータは、VPNデバイス18に送信されず、カプセル化されない。よって、アプリケーションB16bから送信されたデータに係るデータ通信は許可されないこととなる。一方で、アプリケーションA16aから送信されたデータは、VPNデバイス18への送信が禁止されていない。よって、アプリケーションA16aから送信されたデータは、カプセル化されてネットワーク側に送信されることが許可される。その後、接続機能部17は、図11のフローチャートの処理を終了する。
I/Fデバイス111がモデム112でない場合(ステップS402:NO)、接続機能部17は、I/Fデバイス111が無線LANデバイス113であるか判定する(ステップS404)。
I/Fデバイス111が無線LANデバイス113である場合(ステップS404:YES)、接続機能部17は、第6のフィルタリング条件を削除する(ステップS405)。第6のフィルタリング条件の削除は、もともと第6のフィルタリング条件が追加されていた場合に限られる。これにより、アプリケーションB16bから送信されたデータについても、VPNデバイス18への送信が禁止されない。よって、アプリケーションB16bから送信されたデータも、アプリケーションA16aから送信されたデータと同様に、カプセル化されてネットワーク側に送信されることが許可される。つまり、I/Fデバイス111が無線LANデバイス113である場合、どのアプリケーションから送信されたデータもカプセル化されてネットワーク側に送信されることが許可される。その後、接続機能部17は、図11のフローチャートの処理を終了する。
I/Fデバイス111が無線LANデバイス113でない場合(ステップS404:NO)、接続機能部17は、図11のフローチャートの処理を終了する。
以上、図11を用いて説明してきた接続機能部17の動作によって設定されるフィルタリング条件によるデータの流れは、図9に示されるデータの流れに対応する。以下、この対応関係について説明する。
図9において、パケットフィルタ15からVPNデバイス18に向かう実線の矢印は、第5のフィルタリング条件に基づくデータの流れを示している。
図9において、パケットフィルタ15からVPNデバイス18に向かう破線の矢印は、VPNデバイス18の手前で分岐する。分岐の一方は、VPNデバイス18に向かい、分岐の他方は、rejectという記載に向かう。VPNデバイス18に向かう破線の矢印は、第5のフィルタリング条件(デフォルトでデータの送信を許可する条件)に基づくデータの流れを示している。また、rejectという記載に向かう破線の矢印は、第6のフィルタリング条件(アプリケーションB16bからVPNデバイス18へのデータの送信を禁止する条件)に基づくデータの流れを示している。つまり、破線の矢印で流れが示されるアプリケーションB16bから送信されるデータは、I/Fデバイス111がモデム112であるか無線LANデバイス113であるかにより、VPNデバイス18に送信されるか決定される。
ここまで説明してきた本実施形態に係るフィルタリング処理によれば、接続機能部17が通信部11から取得した情報に基づいてVPNデバイス18へのデータの送信を制御できる。よって、VPNデバイス18でデータがカプセル化されてデータのGIDが変更される場合でも、アプリケーションに割り当てられたGIDに基づいてデータ通信を許可又は禁止することが容易になる。以下、本実施形態の比較例に係るフィルタリング処理について説明する。
<比較例1>
図12は、本実施形態の比較例1に係るデータの流れを示す図である。図12において、図7と同様に、アプリケーションA16aから送信されるデータの流れが実線で示され、アプリケーションB16bから送信されるデータの流れが破線で示される。図12におけるデータが流れる経路は、パケットフィルタ15から通信部11に直接接続される経路だけでなく、パケットフィルタ15からVPNデバイス18を介して通信部11に接続される経路も含む。VPNデバイス18から出力され、VPNデバイス18のGIDが対応づけられたデータの流れは、二重線の矢印で示される。図12において、パケットフィルタ15から通信部11へ直接接続される経路を通るデータの流れは、図7と同様であるので説明を省略する。
図12は、本実施形態の比較例1に係るデータの流れを示す図である。図12において、図7と同様に、アプリケーションA16aから送信されるデータの流れが実線で示され、アプリケーションB16bから送信されるデータの流れが破線で示される。図12におけるデータが流れる経路は、パケットフィルタ15から通信部11に直接接続される経路だけでなく、パケットフィルタ15からVPNデバイス18を介して通信部11に接続される経路も含む。VPNデバイス18から出力され、VPNデバイス18のGIDが対応づけられたデータの流れは、二重線の矢印で示される。図12において、パケットフィルタ15から通信部11へ直接接続される経路を通るデータの流れは、図7と同様であるので説明を省略する。
図12において、パケットフィルタ15からVPNデバイス18を介して通信部11にデータが流れる経路は、データのカプセル化を行う前に、パケットフィルタ15がVPNデバイス18にデータを出力するか決定するものである。図12においては、図9と比較して、パケットフィルタ15は、VPNデバイス18がカプセル化したデータを最終的にモデム112に出力するか無線LANデバイス113に出力するか判別できない。よって、アプリケーションB16bのデータをVPNデバイス18に出力してよいか決定できない。
<比較例2>
図13は、本実施形態の比較例2に係るデータの流れを示す図である。図13において、図7及び図12と同様に、アプリケーションA16aから送信されるデータの流れが実線で示され、アプリケーションB16bから送信されるデータの流れが破線で示される。また図13において、図12と同様に、VPNデバイス18から出力され、VPNデバイス18のGIDが対応づけられたデータの流れは、二重線で示される。図13において、アプリケーションA16a及びアプリケーションB16bとパケットフィルタ15との間にVPNデバイス18が接続されている。つまり、図13におけるデータが流れる経路は、アプリケーションから送信されたデータがカプセル化された後に、パケットフィルタ15が通信部11にデータを出力するか決定するものである。
図13は、本実施形態の比較例2に係るデータの流れを示す図である。図13において、図7及び図12と同様に、アプリケーションA16aから送信されるデータの流れが実線で示され、アプリケーションB16bから送信されるデータの流れが破線で示される。また図13において、図12と同様に、VPNデバイス18から出力され、VPNデバイス18のGIDが対応づけられたデータの流れは、二重線で示される。図13において、アプリケーションA16a及びアプリケーションB16bとパケットフィルタ15との間にVPNデバイス18が接続されている。つまり、図13におけるデータが流れる経路は、アプリケーションから送信されたデータがカプセル化された後に、パケットフィルタ15が通信部11にデータを出力するか決定するものである。
図13においては、図12とは異なり、パケットフィルタ15は、通信部11のI/Fデバイス111に対してデータを直接出力するため、データの出力先であるI/Fデバイス111が、モデム112であるか無線LANデバイス113であるか判別できる。
しかしこの場合、パケットフィルタ15に入力されるデータには、VPNデバイス18においてデータをカプセル化したプロトコルのUIDが対応づけられている。また、パケットフィルタ15に入力されるデータには、VPNデバイス18のGIDが対応づけられている。つまり、パケットフィルタ15に入力されるデータには、アプリケーションA16aのUIDもアプリケーションB16bのUIDも対応づけられていないし、これらのUIDが属するグループのGIDも対応づけられていない。よって、パケットフィルタ15は、データがアプリケーションA16aから送信されたのか、アプリケーションB16bから送信されたのか、判別できない。つまり、パケットフィルタ15は、カプセル化される前のデータに係るデータ通信が許可されるべきであったか禁止されるべきであったか、判別できない。結果として、パケットフィルタ15は、I/Fデバイス111がモデム112である場合に、モデム112に対してアプリケーションからのデータを出力してよいかどうか決定できない。
一方で、I/Fデバイス111が無線LANデバイス113である場合には、パケットフィルタ15は、無線LANデバイス113に対してアプリケーションからのデータを出力してよいと決定し、データを出力できる。
以上、本実施形態並びに比較例1及び比較例2に係るデータの流れ、つまり、データ通信の制御について説明してきた。本実施形態に係るデータ通信の制御によれば、VPNデバイス18でデータがカプセル化されてデータのGIDが変更される場合でも、データに対応づけられたGIDに基づいてデータ通信を許可又は禁止することが容易になる。
(変形例)
変形例として、VPNデバイス18が有するデータのカプセル化を行うプロトコルが属するグループに、データを送信するアプリケーションのUIDも属する場合について説明する。この場合、アプリケーションが送信するデータのGIDは、当該データがカプセル化されたデータのGIDと同一となる。そうすると、データがカプセル化された場合にも、実施形態1及び2において説明してきたフィルタリング処理によって、データに対応づけられたGIDに基づいてデータ通信の許可又は禁止を決定することができる。つまり、データ通信の許可又は禁止を決定するためにGIDを指定する方法は、UIDを指定する方法よりも、アプリケーションによるデータ通信の許可又は禁止を容易に設定することができる。
変形例として、VPNデバイス18が有するデータのカプセル化を行うプロトコルが属するグループに、データを送信するアプリケーションのUIDも属する場合について説明する。この場合、アプリケーションが送信するデータのGIDは、当該データがカプセル化されたデータのGIDと同一となる。そうすると、データがカプセル化された場合にも、実施形態1及び2において説明してきたフィルタリング処理によって、データに対応づけられたGIDに基づいてデータ通信の許可又は禁止を決定することができる。つまり、データ通信の許可又は禁止を決定するためにGIDを指定する方法は、UIDを指定する方法よりも、アプリケーションによるデータ通信の許可又は禁止を容易に設定することができる。
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各構成部、各ステップなどに含まれる機能などは論理的に矛盾しないように再配置可能であり、複数の構成部やステップなどを1つに組み合わせたり、或いは分割したりすることが可能である。また、本発明について装置を中心に説明してきたが、本発明は装置の各構成部が実行するステップを含む方法としても実現し得るものである。また、本発明について装置を中心に説明してきたが、本発明は装置が備えるプロセッサにより実行される方法、プログラム、又はプログラムを記録した記憶媒体としても実現し得るものであり、本発明の範囲にはこれらも包含されるものと理解されたい。
上記の実施形態では、従量課金制ではない方式によるデータ通信の方式として無線LANを例示したが、これに限定されず、従量課金制ではない方式は、Bluetooth(登録商標)やEthernet(登録商標)等のデータ通信方式であってもよい。
1 通信装置
10 制御部
11 通信部
111 I/Fデバイス
112 モデム
113 無線LANデバイス
12 記憶部
13 表示部
14 操作部
15 パケットフィルタ
16a アプリケーションA
16b アプリケーションB
17 接続機能部
18 VPNデバイス
10 制御部
11 通信部
111 I/Fデバイス
112 モデム
113 無線LANデバイス
12 記憶部
13 表示部
14 操作部
15 パケットフィルタ
16a アプリケーションA
16b アプリケーションB
17 接続機能部
18 VPNデバイス
Claims (9)
- デフォルトでデータ通信を禁止し、
アプリケーションからデータ通信の要求を受け、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可する
通信装置。 - 前記アプリケーションは、VPNアプリケーションである、請求項1に記載の通信装置。
- 前記データ通信がセルラ通信である場合に、デフォルトでデータ通信を禁止する、請求項1又は2に記載の通信装置。
- 前記データ通信が無線LAN通信である場合に、デフォルトでデータ通信を許可する、請求項1乃至3いずれか一項に記載の通信装置。
- 通信装置において、
デフォルトでデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可するステップと
を含む通信制御方法。 - 通信装置として機能するコンピュータに、
デフォルトでデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を許可するステップと
を実行させるプログラム。 - デフォルトでデータ通信を許可し、
アプリケーションからデータ通信の要求を受け、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止する
通信装置。 - 通信装置において、
デフォルトでデータ通信を許可するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止するステップと
を含む通信制御方法。 - 通信装置として機能するコンピュータに、
デフォルトでデータ通信を許可するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションが属するグループのIDに応じて、該アプリケーションのデータ通信を禁止するステップと
を実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017153677A JP2017225162A (ja) | 2017-08-08 | 2017-08-08 | 通信装置、通信制御方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017153677A JP2017225162A (ja) | 2017-08-08 | 2017-08-08 | 通信装置、通信制御方法、及びプログラム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016215473A Division JP2017139736A (ja) | 2016-11-02 | 2016-11-02 | 通信装置、通信制御方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017225162A true JP2017225162A (ja) | 2017-12-21 |
Family
ID=60688499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017153677A Pending JP2017225162A (ja) | 2017-08-08 | 2017-08-08 | 通信装置、通信制御方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017225162A (ja) |
-
2017
- 2017-08-08 JP JP2017153677A patent/JP2017225162A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2017427437B2 (en) | Pdu type setting method, ue policy setting method, and related entity | |
JP6235017B2 (ja) | モバイル通信コンピューティングのための装置および方法 | |
EP3439371B1 (en) | Method and apparatus for determining access point service capabilities | |
US8918841B2 (en) | Hardware interface access control for mobile applications | |
JP2007043483A (ja) | 情報処理装置、通信制御方法および通信制御用プログラム | |
TWI700957B (zh) | 一種確定建立原因的方法和終端 | |
JP2011175633A (ja) | 情報処理装置および情報処理方法 | |
JP6258985B2 (ja) | 通信装置、通信制御方法、及びプログラム | |
JP6532851B2 (ja) | 通信装置、dns処理方法、およびプログラム | |
JP6029781B1 (ja) | 通信装置、dns処理方法、およびプログラム | |
JP6258986B2 (ja) | 通信装置、通信制御方法、及びプログラム | |
JP6093055B1 (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2017225162A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2017225161A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2017139736A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP6180613B2 (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2017139735A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP6339604B2 (ja) | 通信装置、通信制御方法、及びプログラム | |
JP6069553B1 (ja) | 通信装置、通信制御方法、およびプログラム | |
JP2017201830A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2017138971A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2017139611A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2014207583A (ja) | ユーザ装置、及び通信制御方法 | |
JP2017139751A (ja) | 通信装置、通信制御方法、及びプログラム | |
JP2017139747A (ja) | 通信装置、通信制御方法、およびプログラム |