JP6339604B2 - 通信装置、通信制御方法、及びプログラム - Google Patents

通信装置、通信制御方法、及びプログラム Download PDF

Info

Publication number
JP6339604B2
JP6339604B2 JP2016019114A JP2016019114A JP6339604B2 JP 6339604 B2 JP6339604 B2 JP 6339604B2 JP 2016019114 A JP2016019114 A JP 2016019114A JP 2016019114 A JP2016019114 A JP 2016019114A JP 6339604 B2 JP6339604 B2 JP 6339604B2
Authority
JP
Japan
Prior art keywords
communication
data
application
data communication
uid
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.)
Active
Application number
JP2016019114A
Other languages
English (en)
Other versions
JP2017139615A (ja
Inventor
周治 石川
周治 石川
恭弘 伊東
恭弘 伊東
智哉 上條
智哉 上條
英孝 林
英孝 林
晃平 道上
晃平 道上
一生 大西
一生 大西
和也 千藤
和也 千藤
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.)
Kyocera Corp
Original Assignee
Kyocera 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 Kyocera Corp filed Critical Kyocera Corp
Priority to JP2016019114A priority Critical patent/JP6339604B2/ja
Priority to US15/422,737 priority patent/US9876897B2/en
Publication of JP2017139615A publication Critical patent/JP2017139615A/ja
Application granted granted Critical
Publication of JP6339604B2 publication Critical patent/JP6339604B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72463User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions to restrict the functionality of the device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Telephone Function (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は、通信装置、通信制御方法、及びプログラムに関する。
従来、データ通信可能な携帯端末等の通信装置が知られている(例えば、特許文献1参照)。通信装置においては、通信装置上で稼働するアプリケーションによるデータ通信がデフォルトで許可される一方で、ユーザによって選択されたアプリケーションによるデータ通信のみが禁止されるという構成が採用されることがある。
ここで、通信装置は、データ通信の許可又は禁止をフィルタリング処理により行う。また、通信装置は、管理のためにデータ通信量をカウントする。カウントの対象となるデータは、フィルタリング処理においてデータ通信が許可されたデータである。
特開2015−162701号公報
この場合、データ通信量をカウントする方法によっては、データ通信量のカウントと、実際にネットワーク側へ送信されるデータ量との間に差異が生じる場合がある。
そこで本発明は、上述の点に鑑みてなされたものであり、データ通信量のカウントと実際にネットワーク側へ送信されたデータ量との差異を低減できる通信装置、通信制御方法、及びプログラムを提供することを目的とする。
上記目的を達成する本発明の一実施形態に係る通信装置は、
デフォルトで全てのデータ通信を禁止し、
アプリケーションからデータ通信の要求を受け、
前記要求したアプリケーションのUIDに応じて、該アプリケーションのデータ通信を許可するものの、
前記要求したアプリケーションが属するグループのIDによっては、該アプリケーションのデータ通信を禁止する。
また、本発明の一実施形態に係る通信制御方法は、
通信装置における通信制御方法であって
デフォルトで全てのデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションのUIDに応じて、該アプリケーションのデータ通信を許可するものの、前記要求したアプリケーションが属するグループのIDによっては、該アプリケーションのデータ通信を禁止するステップと
を含む。
また、本発明の一実施形態に係るプログラムは、
通信装置として機能するコンピュータに、
デフォルトで全てのデータ通信を禁止するステップと、
アプリケーションからデータ通信の要求を受けるステップと、
前記要求したアプリケーションのUIDに応じて、該アプリケーションのデータ通信を許可するものの、前記要求したアプリケーションが属するグループのIDによっては、該アプリケーションのデータ通信を禁止するステップと
を実行させる。
本発明の一実施形態に係る通信装置、通信制御方法、及びプログラムによれば、データ通信量のカウントと実際にネットワーク側へ送信されたデータ量との差異を低減できる。
実施形態1に係る通信装置の概略構成例を示す機能ブロック図である。 実施形態1に係る通信装置の一例の外観を示す図である。 実施形態1に係るデータの流れの一例を示すブロック図である。 実施形態1に係るフィルタリング処理のシーケンスを説明する図である。 アプリケーションからデータを送信するシーケンスの一例を説明する図である。 実施形態2に係るフィルタリング処理のシーケンスを説明する図である。 実施形態3に係るフィルタリング処理のフローチャートである。 実施形態4に係るデータ量カウント処理のフローチャートである。 比較例に係るデータ量カウント処理のフローチャートである。
(実施形態1)
以下、一実施形態に係る通信装置について、図面を参照しながら詳細に説明する。本実施形態に係る通信装置は、携帯電話、又はスマートフォンなどの携帯機器とすることができる。しかしながら、本実施形態に係る通信装置は、携帯機器に限定されるものではなく、デスクトップPC、ノートPC、タブレット型PC、家電製品、産業用機器(FA機器)、専用端末等、データ通信を行う種々の電子機器とすることができる。
[装置構成]
図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で実行される際に、ファイルシステムなどのリソースに対してアクセスする。各アプリケーションが無制限にリソースにアクセスすると、各アプリケーションによるリソースの使用領域が重複することがあり、この場合アプリケーションが正常に実行されなくなることがある。そこで、OS上で実行されるプロセスに対応づけられるUIDによってリソースに対するアクセスを制限し、アプリケーションによるリソース使用が互いに影響を及ぼさないようにする。つまり、各プロセスからアクセス可能なリソースは、同一のUIDに対応づけられるプロセスのリソースに制限される。
各アプリケーションには、グループ識別子(以下、GID又はグループのIDともいう)がさらに割り当てられる。GIDは、各アプリケーションに割り当てられる固有のUIDが属するグループを特定するものである。一つのグループに一個のUIDだけが属してもよいし、一つのグループに複数のUIDが属してもよい。アプリケーションがUIDに対応づけられるプロセスとして実行される際、このプロセスはGIDにも対応づけられる。また、各プロセスからアクセス可能なリソースは、同一のUIDだけでなく同一のGIDに対応づけられるプロセスのリソースにまで対象を広げて制限されるようにしてもよい。
アプリケーションは、フォアグラウンド(以下、FGともいう)、又は、バックグラウンド(以下、BGともいう)で実行される。アプリケーションがFGで実行されている状態は、例えば、ユーザが確認可能なように実行状況が表示部13に表示される、又は、ユーザが操作部14を用いて操作可能な状態である。アプリケーションがBGで実行されている状態は、例えば、実行状況が表示部13に表示されず、ユーザが操作可能ではない状態、又は、ユーザが意図せずに動作している状態である。
[データ通信の制御]
制御部10によって実行されるアプリケーションは、通信部11を用いて、インターネット等のネットワーク側とのデータ通信を行う。上述の通り、アプリケーションはOS上においてUIDに対応づけられるプロセスとして実行される。そして、アプリケーションから送信されるデータにはUIDが対応づけられる。制御部10は、データに対応づけられたUIDに基づいてデータの送信を許可するか禁止(制限)するか決定することにより、各アプリケーションから送信されるデータに係るデータ通信を許可するか禁止するか制御できる。以下、本実施形態に係る説明においては、データ通信は、原則的に通信部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に基づいて決定される。以下、UIDとしてXが割り当てられるアプリケーション(以下、UIDがXのアプリケーションともいう)から送信されるデータのことを、UIDがXのデータともいう。また、UIDがXのデータのフィルタリング処理を行うために用いられるフィルタリング条件を、UIDがXのデータのフィルタリング条件ともいう。
パケットフィルタ15は、例えば、UIDが1のアプリケーションから送信されるデータに係るデータ通信のみ許可するというフィルタリング条件を有する。また、フィルタリング条件は、複数の条件をあわせたものであってもよい。
ここで、本実施形態に係るフィルタリング処理が行われる場合のデータ通信のシーケンスを説明する。本実施形態に係るフィルタリング処理は、BG動作しているアプリケーションが送信するデータに係るデータ通信の許可又は禁止を決定することを前提とする。以下の本実施形態に係るフィルタリング処理の説明は上記前提に基づく。
本実施形態に係るフィルタリング処理は、デフォルトでデータ通信を禁止するというフィルタリング条件(以下、デフォルト通信禁止条件ともいう)が設定されている。デフォルト通信禁止条件が設定されていることにより、他のフィルタリング条件がさらに設定されない限り、全てのデータ通信が禁止される。デフォルト通信禁止条件は、通信装置1の出荷時に設定されたり、通信装置1の初期化時に設定されたりする。すなわち、本実施形態において、「デフォルト」とは、所定のタイミング(例えば、通信装置1の出荷時、通信装置1の初期化時、等)で、標準の動作として予め設定されていることを意味するものとする。
本実施形態においては、必要なデータ通信を実行するために、デフォルト通信禁止条件に加えて、データ通信を許可するための条件(以下、通信許可条件ともいう)が設定されたフィルタリング条件が用いられる。この場合、通信許可条件は、デフォルト通信禁止条件に優先する。
図4は、本実施形態に係るフィルタリング処理のシーケンスを説明する図である。図4には、アプリケーションA16a、アプリケーションB16b、フレームワーク、通信制御部、カーネル、及びモデム112のシーケンスが示されている。
モデム112は、上述の通り、セルラ通信を行う通信インタフェースとして機能するハードウェアである。図4においては、モデム112を用いたセルラ通信によるデータ通信について説明しているが、モデム112ではなく、無線LANデバイス113等の他のI/Fデバイス111に置き換えて、他の通信方式によるデータ通信を行ってもよい。
カーネル、通信制御部、及びフレームワークはソフトウェアであり、制御部10で実行される。図4において、通信制御部にはUIDとして0が割り当てられる。
フレームワークは、OS上においてアプリケーションを動作させるための機能群を含むソフトウェアである。一般的に、フレームワークで準備された機能群を組み合わせることによって、各アプリケーションの機能が実現される。
カーネルは、OSの中核をなすソフトウェアであり、アプリケーション等のソフトウェアによる処理に基づき、通信部11等のハードウェアにおける処理を管理して、ハードウェアの機能を利用できるようにする。
通信制御部は、ネットワーク関連の処理を行うデーモンプログラムであり、フレームワークとカーネルとの間をつなぐ処理をする。通信制御部は、特に、カーネルが通信部11の機能を利用できるようにするためのデータを処理する。本実施形態において、通信制御部は、カーネルが通信部11へのデータ出力を許可するか禁止するか決定するための条件をカーネルに出力する。
本実施形態において、フィルタリング処理はパケットフィルタ15により行われるものとして説明する。ここで、パケットフィルタ15は仮想的な処理ユニットであり、実際のフィルタリング処理は、通信制御部とカーネルとにより行われる。
アプリケーションA16a及びアプリケーションB16bは、OS上において動作するプロセスである。図4において、アプリケーションA16aにはUIDとして1が割り当てられ、アプリケーションB16bにはUIDとして2が割り当てられる。
以下、図4に示されるシーケンスを説明する。BG動作するアプリケーションがデータを送信する場合、デフォルトでセルラ通信によるデータ通信が禁止されている(ステップS1)。つまり、フィルタリング条件として、BG動作するアプリケーションから送信されるデータに係るデフォルト通信禁止条件が設定されている。図4において、デフォルト通信禁止条件が設定されていることは、カーネル、通信制御部、及びフレームワークにより認識されている。特に、カーネルは、デフォルト通信禁止条件が設定されていることを認識している場合、モデム112に対するデータの送信を行わない。
続いて、アプリケーションがBGで動作する場合のUIDが1のデータに係るデータ通信の許可要求(以下、UIDが1のデータの通信許可要求ともいう)を、フレームワークが取得する(ステップS2)。続いて、フレームワークは、UIDが1のデータの通信許可要求を通信制御部に出力する(ステップS3)。
通信制御部は、UIDが1のデータの通信許可要求を取得する(ステップS4)。続いて通信制御部は、UIDが1のデータの通信許可要求をカーネルに出力する(ステップS5)。
カーネルは、UIDが1のデータの通信許可要求を取得する(ステップS6)。以上のステップS3〜S6の動作により、カーネルにUIDが1のデータの通信許可要求が伝達される。つまり、フィルタリング条件として、UIDが1のデータに係る通信許可条件が設定される。
続いて、アプリケーションA16aがBG動作においてデータ通信を要求する場合(ステップS7)、カーネルは、UIDが1のデータに係る通信許可条件が設定されていることを認識しているので、データ通信を許可する(ステップS8)。そして、モデム112は、UIDが1のデータをネットワーク側へ送信するデータ通信を行う(ステップS9)。
一方、UIDとして2が割り当てられるアプリケーションB16bがBG動作においてデータ通信を要求する場合(ステップS10)、カーネルは、UIDが2のデータに係る通信許可条件が設定されていないことを認識している。よって、カーネルは、デフォルト通信禁止条件に基づいて、データ通信を禁止する(ステップS11)。
<アプリケーションからのデータ送信シーケンス>
図4のステップS7〜S9において、アプリケーションがデータ通信を要求してモデム112がデータ通信を行うことを説明した。以下、図5を用いて、これらのシーケンスをより具体的に説明する。図5には、アプリケーションA16a、フレームワーク、カーネル、及びモデム112のシーケンスが示されている。アプリケーションA16a、フレームワーク、カーネル、及びモデム112については、図4と同様であるため説明を省略する。
アプリケーションA16aは、FG又はBGのいずれで動作する場合であっても、アプリケーションA16aから送信されるデータ(UIDが1のデータ)に係るデータ通信の要求(以下、UIDが1のデータ通信要求ともいう)をアプリケーションA16aが動作しているOS上のフレームワークに対して出力する(ステップS101)。
フレームワークは、UIDが1のデータ通信要求を取得する(ステップS102)。続いてフレームワークは、UIDが1のデータ通信要求をカーネルに出力する(ステップS103)。
カーネルは、UIDが1のデータ通信要求を取得する(ステップS104)。続いてカーネルは、モデム112に対してUIDが1のデータ通信要求に基づいてデータを出力する(ステップS105)。そしてモデム112は、UIDが1のデータをネットワーク側へ送信するデータ通信を行う(ステップS106)。
以上説明してきた図5に示されるシーケンスの動作により、アプリケーションから送信するデータが通信部11に出力され、ネットワーク側へ送信される。
以上、実施形態1について説明してきた。本実施形態に係るUIDに応じたフィルタリング処理によれば、ユーザにより明示的にフィルタリング条件が設定されていないアプリケーションB16bから送信されるデータに係るデータ通信を禁止できる。つまり、ユーザの意図しないデータ通信は禁止される可能性が高くなる。
本実施形態において、I/Fデバイス111としてモデム112を用いるセルラ通信方式によるデータ通信を禁止する方法について主に説明してきた。しかし、I/Fデバイス111はモデム112に限られず、無線LANデバイス113等であってもよい。つまり、本実施形態に係る通信装置1のデータ通信の制御方法は、セルラ通信方式によるデータ通信に限られず、無線LAN通信方式等の他の通信方式によるデータ通信においても適用されうる。
また本実施形態において、データ通信が許可されたデータを送信するために必要となる機能については、デフォルトでデータ通信を許可するようにしてもよい。デフォルトでデータ通信を許可される機能は、例えば、VPN(Vertual Private Network)のトンネリング機能、DNS(Domain Name System)の名前解決機能、又はテザリング機能等である。これらの機能に係るデータ通信は、ユーザが意図した場合に動作するものに限り、許可されてもよい。これらの機能に係るデータ通信を許可する条件は、デフォルト通信禁止条件に優先するフィルタリング条件として設定されてもよい。
また、本実施形態に係るフィルタリング処理は、BG動作しているアプリケーションのデータ通信について行われたが、これには限られず、FG動作しているアプリケーションのデータ通信について行われてもよい。つまり、本実施形態に係るフィルタリング処理は、FG動作しているアプリケーションが送信するデータに係るデータ通信の許可又は禁止を決定してもよい。
(実施形態2)
実施形態1では、UIDに応じてフィルタリング処理を行ったが、GIDに応じてフィルタリング処理を行ってもよい。以下、実施形態2として、GIDに応じたフィルタリング処理について説明する。
図6は、本実施形態に係るフィルタリング処理のシーケンスを説明する図である。図6には、アプリケーションA16a、アプリケーションB16b、フレームワーク、通信制御部、カーネル、及びモデム112のシーケンスが示されている。フレームワーク、通信制御部、カーネル、及びモデム112については、実施形態1の図4と同様であるため説明を省略する。
図6において、アプリケーションA16aはGIDが1のアプリケーションであり、アプリケーションB16bはGIDが2のアプリケーションである。
以下、図6に示されるシーケンスを説明する。BG動作するアプリケーションがデータを送信する場合、デフォルトでセルラ通信によるデータ通信が禁止されている(ステップS701)。つまり、フィルタリング条件として、BG動作するアプリケーションから送信されるデータに係るデフォルト通信禁止条件が設定されている。図6において、デフォルト通信禁止条件が設定されていることは、カーネル、通信制御部、及びフレームワークにより認識されている。特に、カーネルは、デフォルト通信禁止条件が設定されていることを認識している場合、モデム112に対するデータの送信を行わない。
続いて、アプリケーションがBGで動作する場合のGIDが1のデータに係るデータ通信の許可要求(以下、GIDが1のデータの通信許可要求ともいう)を、フレームワークが取得する(ステップS702)。続いて、フレームワークは、GIDが1のデータの通信許可要求を通信制御部に出力する(ステップS703)。
通信制御部は、GIDが1のデータの通信許可要求を取得する(ステップS704)。続いて通信制御部は、GIDが1のデータの通信許可要求をカーネルに出力する(ステップS705)。
カーネルは、GIDが1のデータの通信許可要求を取得する(ステップS706)。以上のステップS703〜S706の動作により、カーネルにGIDが1のデータの通信許可要求が伝達される。つまり、フィルタリング条件として、GIDが1のデータに係る通信許可条件が設定される。
続いて、アプリケーションA16aがBG動作においてデータ通信を要求する場合(ステップS707)、カーネルは、GIDが1のデータに係る通信許可条件が設定されていることを認識しているので、データ通信を許可する(ステップS708)。そして、モデム112は、GIDが1のデータをネットワーク側へ送信するデータ通信を行う(ステップS709)。
一方、GIDが2のアプリケーションB16bがBG動作においてデータ通信を要求する場合(ステップS710)、カーネルは、GIDが2のデータに係る通信許可条件が設定されていないことを認識している。よって、カーネルは、デフォルト通信禁止条件に基づいて、データ通信を禁止する(ステップS711)。
図6のステップS707〜S709において、アプリケーションがデータ通信を要求してモデム112がデータ通信を行う。このデータ通信は、実施形態1の図5と同様のシーケンスで行われるものであるので、説明を省略する。
以上説明してきたように、GIDに応じたフィルタリング条件を設定することで、実施形態1のUIDに応じたフィルタリング処理と同様のフィルタリング処理が実現できる。
[VPNにおけるフィルタリング処理]
GIDに応じたフィルタリング処理を行う一例として、VPNのトンネリング機能を用いてデータ通信を行うためにデータをカプセル化する場合のフィルタリング処理について説明する。本実施形態においては、通信装置1はVPNデバイスをさらに備える。VPNデバイスは、取得したデータをカプセル化するプロトコルを有する。VPNデバイスが有するプロトコルには、固有のUIDが割り当てられている。以下、プロトコルに割り当てられたUIDを、プロトコルのUIDともいう。VPNデバイスは、このプロトコルに基づいて、アプリケーションからのデータをカプセル化する。そして、VPNデバイスは、カプセル化したデータを通信部11に出力する。カプセル化されたデータは、データを送信するアプリケーションに割り当てられているUIDとの対応づけが失われる。そして、カプセル化されたデータには、カプセル化を行ったプロトコルのUIDが新たに対応づけられる。
VPNデバイスは、データのカプセル化を行うプロトコルを複数有してもよい。この場合、各プロトコルのUIDはそれぞれ異なる。そして、カプセル化されたデータには、カプセル化を行ったプロトコルのUIDが対応づけられる。またVPNデバイスがデータのカプセル化を行うプロトコルを複数有する場合、これらのプロトコルのUIDは、共通のグループに属する。この共通のグループには、GIDが割り当てられている。よって、VPNデバイスが有する複数のプロトコルには共通のGIDが対応づけられる。以下、VPNデバイスが有する複数のプロトコルに共通に対応づけられたGIDを、VPNデバイスのGIDともいう。カプセル化されたデータには、カプセル化を行ったプロトコルを有するVPNデバイスのGIDが新たに対応づけられる。また、VPNデバイスが有するプロトコルは、アプリケーションに含まれるものであってもよい。この場合、VPNデバイスが有するプロトコルのことを、VPNアプリケーションともいう。
VPNデバイスにおいてカプセル化されたデータは、カプセル化するプロトコルのUIDが対応づけられている。上述の通り、VPNデバイスは、複数のプロトコルを有する。よって、VPNデバイスにおいてカプセル化されるデータに対応づけられる可能性があるUIDは、複数個存在する。カプセル化されたデータに対するフィルタリング処理を行うに際して、UIDに応じたフィルタリング条件を設定する場合、プロトコルの数と同じ数のフィルタリング条件が設定されることとなる。
一方で、カプセル化されたデータには、GIDも対応づけられる。VPNデバイスが有する複数のプロトコルのUIDに対して、共通のGIDが対応づけられる。よって、GIDに応じたフィルタリング条件を設定する場合、各プロトコルに共通の1つのフィルタリング条件が設定されればよい。
以上、実施形態2について説明してきた。本実施形態によれば、アプリケーションによるデータ通信の許可又は禁止を容易に設定することができる。
本実施形態においても、I/Fデバイス111はモデム112に限られず、無線LANデバイス113等であってもよい。つまり、本実施形態に係る通信装置1のデータ通信の制御方法は、セルラ通信方式によるデータ通信に限られず、無線LAN通信方式等の他の通信方式によるデータ通信においても適用されうる。
(実施形態3)
実施形態3として、UIDに応じたフィルタリング処理に続いて、さらにGIDに応じたフィルタリング処理を実行する場合について説明する。本実施形態においては、フィルタリング条件として、デフォルト通信禁止条件が設定されているものとする。
図7は、本実施形態に係るフィルタリング処理を示すフローチャートである。まず、パケットフィルタ15は、UIDがX、且つ、GIDがYのデータに係るデータ通信要求をアプリケーションから取得する(ステップS801)。続いてパケットフィルタ15は、UIDがXのデータに係る通信許可条件(以下、UIDに応じた通信許可条件ともいう)がフィルタリング条件として設定されているか判定する(ステップS802)。
UIDに応じた通信許可条件が設定されていない場合(ステップS802:NO)、パケットフィルタ15は、データをモデム112に出力せず(ステップS805)、図7のフローチャートを終了する。
UIDに応じた通信許可条件が設定されている場合(ステップS802:YES)、パケットフィルタ15は、GIDがYのデータに係るデータ通信を禁止するための条件(以下、GIDに応じた通信禁止条件ともいう)がフィルタリング条件として設定されているか判定する(ステップS803)。
GIDに応じた通信禁止条件が設定されている場合(ステップS803:YES)、パケットフィルタ15は、データをモデム112に出力せず(ステップS805)、図7のフローチャートを終了する。
GIDに応じた通信禁止条件が設定されていない場合(ステップS803:NO)、パケットフィルタ15は、データをモデム112に出力し(ステップS804)、図7のフローチャートを終了する。
以上、実施形態3について、図7に示されるフローチャートを参照して説明してきた。本実施形態においては、UID及びGIDに応じたフィルタリング処理を実行することにより、アプリケーションのデータ通信の許可又は禁止の設定方法のバリエーションを増やすことができる。
本実施形態においても、I/Fデバイス111はモデム112に限られず、無線LANデバイス113等であってもよい。つまり、本実施形態に係る通信装置1のデータ通信の制御方法は、セルラ通信方式によるデータ通信に限られず、無線LAN通信方式等の他の通信方式によるデータ通信においても適用されうる。
(実施形態4)
実施形態4として、UID及びGIDに応じたフィルタリング処理を実行する場合に、データ通信量をカウントする方法について説明する。本実施形態において、データ通信量のカウントは、パケットフィルタ15において実行される。また本実施形態においては、フィルタリング条件として、デフォルト通信禁止条件が設定されているものとする。
図8は、本実施形態に係るデータ量カウント処理を示すフローチャートである。まず、パケットフィルタ15は、UIDがX、且つ、GIDがYのデータに係るデータ通信要求をアプリケーションから取得する(ステップS901)。
続いてパケットフィルタ15は、UIDがX、且つ、GIDがYのデータに係るデータ通信を禁止するかどうか決定する(ステップS902)。ステップS902は、UID又はGIDに応じてデータ通信を禁止するか決定するものであり、実施形態3の図7のステップS802及びS803と同様の処理により行われる。つまり、UIDに応じた通信許可条件が設定されている場合(ステップS802:YES)、且つ、GIDに応じた通信禁止条件が設定されていない場合(ステップS803:NO)、パケットフィルタ15は、データ通信を禁止しない(許可する)と決定する。一方で、UIDに応じた通信許可条件が設定されていない場合(ステップS802:NO)、又は、GIDに応じた通信禁止条件が設定されている場合(ステップS803:YES)、パケットフィルタ15は、データ通信を禁止すると決定する。
データ通信を禁止すると決定した場合(ステップS902:YES)、パケットフィルタ15は、データ通信要求があったデータについてデータ通信量をカウントしない(ステップS903)。続いて、パケットフィルタ15は、当該データをモデム112に出力せず(ステップS904)、図8のフローチャートを終了する。
データ通信を禁止しないと決定した場合(ステップS902:NO)、パケットフィルタ15は、データ通信要求があったデータについてデータ通信量をカウントする(ステップS903)。続いて、パケットフィルタ15は、当該データをモデム112に出力し(ステップS904)、図8のフローチャートを終了する。
以上、図8を参照して説明してきたが、このようにすることで、パケットフィルタ15がカウントするデータ通信量と、パケットフィルタ15がモデム112に出力するデータの量との差異を低減することができる。
<比較例>
図9は、比較例に係るデータ量カウント処理を示すフローチャートである。まず、パケットフィルタ15は、UIDがX、且つ、GIDがYのデータに係るデータ通信要求をアプリケーションから取得する(ステップS1001)。
続いてパケットフィルタ15は、UIDがXのデータに係るデータ通信を禁止するかどうか決定する(ステップS1002)。ステップS1002は、UIDに応じてデータ通信を禁止するか決定するものであり、実施形態3の図7のステップS802と同様の処理により行われる。つまり、UIDに応じた通信許可条件が設定されている場合(ステップS802:YES)、パケットフィルタ15は、データ通信を禁止しない(許可する)と決定する。一方で、UIDに応じた通信許可条件が設定されていない場合(ステップS802:NO)、パケットフィルタ15は、データ通信を禁止すると決定する。
UIDに応じてデータ通信を禁止すると決定した場合(ステップS1002:YES)、パケットフィルタ15は、データ通信要求があったデータについてデータ通信量をカウントしない(ステップS1003)。続いて、パケットフィルタ15は、当該データをモデム112に出力せず(ステップS1004)、図9のフローチャートを終了する。
UIDに応じてデータ通信を禁止しないと決定した場合(ステップS902:NO)、パケットフィルタ15は、データ通信要求があったデータについてデータ通信量をカウントする(ステップS1005)。
続いて、パケットフィルタ15は、GIDがYのデータに係るデータ通信を禁止するかどうか決定する(ステップS1006)。ステップS1006は、GIDに応じてデータ通信を禁止するか決定するものであり、実施形態3の図7のステップS803と同様の処理により行われる。つまり、GIDに応じた通信禁止条件が設定されている場合(ステップS803:YES)、パケットフィルタ15は、データ通信を禁止すると決定する。一方で、GIDに応じた通信禁止条件が設定されていない場合(ステップS803:NO)、パケットフィルタ15は、データ通信を禁止しない(許可する)と決定する。
GIDに応じてデータ通信を禁止しないと決定した場合(ステップS1006:NO)、パケットフィルタ15は、当該データをモデム112に出力し(ステップS1007)、図8のフローチャートを終了する。この場合、ステップS1005においてデータ通信要求があったデータについてデータ通信量がカウントされた後で、当該データがモデム112に出力されている。よって、パケットフィルタ15がカウントするデータ通信量と、パケットフィルタ15がモデム112に出力するデータの量とは一致する。
GIDに応じてデータ通信を禁止すると決定した場合(ステップS1006:YES)、パケットフィルタ15は、当該データをモデム112に出力せず(ステップS1004)、図9のフローチャートを終了する。この場合、ステップS1005においてデータ通信要求があったデータについてデータ通信量がカウントされた後で、当該データがモデム112に出力されない。よって、パケットフィルタ15がカウントするデータ通信量と、パケットフィルタ15がモデム112に出力するデータの量とが不一致となる。
以上、図9を参照して比較例について説明してきたが、比較例においては、パケットフィルタ15がカウントするデータ通信量と、パケットフィルタ15がモデム112に出力するデータの量とが一致しない場合が起こりうる。
以上、実施形態4について説明してきた。本実施形態によれば、比較例との対比において、パケットフィルタ15がカウントするデータ通信量と、パケットフィルタ15がモデム112に出力するデータの量との差異を低減することができる。
本実施形態においても、I/Fデバイス111はモデム112に限られず、無線LANデバイス113等であってもよい。つまり、本実施形態に係る通信装置1のデータ通信の制御方法は、セルラ通信方式によるデータ通信に限られず、無線LAN通信方式等の他の通信方式によるデータ通信においても適用されうる。
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各構成部、各ステップなどに含まれる機能などは論理的に矛盾しないように再配置可能であり、複数の構成部やステップなどを1つに組み合わせたり、或いは分割したりすることが可能である。また、本発明について装置を中心に説明してきたが、本発明は装置の各構成部が実行するステップを含む方法としても実現し得るものである。また、本発明について装置を中心に説明してきたが、本発明は装置が備えるプロセッサにより実行される方法、プログラム、又はプログラムを記録した記憶媒体としても実現し得るものであり、本発明の範囲にはこれらも包含されるものと理解されたい。
上記の実施形態では、従量課金制ではない方式によるデータ通信の方式として無線LANを例示したが、これに限定されず、従量課金制ではない方式は、Bluetooth(登録商標)やEthernet(登録商標)等のデータ通信方式であってもよい。
1 通信装置
10 制御部
11 通信部
111 I/Fデバイス
112 モデム
113 無線LANデバイス
12 記憶部
13 表示部
14 操作部
15 パケットフィルタ
16a アプリケーションA
16b アプリケーションB

Claims (3)

  1. デフォルトで全てのデータ通信を禁止し、
    アプリケーションからデータ通信の要求を受け、
    前記要求したアプリケーションのUIDに応じて、該アプリケーションのデータ通信を許可するものの、
    前記要求したアプリケーションが属するグループのIDによっては、該アプリケーションのデータ通信を禁止する
    通信装置。
  2. 通信装置における通信制御方法であって
    デフォルトで全てのデータ通信を禁止するステップと、
    アプリケーションからデータ通信の要求を受けるステップと、
    前記要求したアプリケーションのUIDに応じて、該アプリケーションのデータ通信を許可するものの、前記要求したアプリケーションが属するグループのIDによっては、該アプリケーションのデータ通信を禁止するステップと
    を含む通信制御方法。
  3. 通信装置として機能するコンピュータに、
    デフォルトで全てのデータ通信を禁止するステップと、
    アプリケーションからデータ通信の要求を受けるステップと、
    前記要求したアプリケーションのUIDに応じて、該アプリケーションのデータ通信を許可するものの、前記要求したアプリケーションが属するグループのIDによっては、該アプリケーションのデータ通信を禁止するステップと
    を実行させるプログラム。
JP2016019114A 2016-02-03 2016-02-03 通信装置、通信制御方法、及びプログラム Active JP6339604B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016019114A JP6339604B2 (ja) 2016-02-03 2016-02-03 通信装置、通信制御方法、及びプログラム
US15/422,737 US9876897B2 (en) 2016-02-03 2017-02-02 Communication apparatus, communication control method, and non-transitory computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016019114A JP6339604B2 (ja) 2016-02-03 2016-02-03 通信装置、通信制御方法、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2016238470A Division JP6180613B2 (ja) 2016-12-08 2016-12-08 通信装置、通信制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2017139615A JP2017139615A (ja) 2017-08-10
JP6339604B2 true JP6339604B2 (ja) 2018-06-06

Family

ID=59387279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016019114A Active JP6339604B2 (ja) 2016-02-03 2016-02-03 通信装置、通信制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US9876897B2 (ja)
JP (1) JP6339604B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8712397B2 (en) * 2003-02-10 2014-04-29 Guang Feng Method and apparatus for controllable communication
JP4783837B2 (ja) * 2009-02-19 2011-09-28 富士通東芝モバイルコミュニケーションズ株式会社 携帯端末
JP6055218B2 (ja) 2012-07-19 2016-12-27 株式会社Nttドコモ 移動通信システム、ネットワーク装置、移動局及び移動通信方法
CN103905260B (zh) 2012-12-25 2017-10-10 北京新媒传信科技有限公司 终端设备网络流量的监控方法和装置
JP2015162701A (ja) 2014-02-26 2015-09-07 京セラ株式会社 携帯端末及びその無線通信制御方法
JP6423521B2 (ja) * 2015-03-31 2018-11-14 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 無人航空機を制御するシステム

Also Published As

Publication number Publication date
US9876897B2 (en) 2018-01-23
US20170223173A1 (en) 2017-08-03
JP2017139615A (ja) 2017-08-10

Similar Documents

Publication Publication Date Title
EP3410759B1 (en) Method and access point for accessing network by internet-of-things device
JP4618455B2 (ja) 端末装置、ネットワーク接続方法及びプログラム
WO2018064006A1 (en) Securing access to cloud components
US10083129B2 (en) Code loading hardening by hypervisor page table switching
KR101948049B1 (ko) 강제적 접근 제어 컴퓨팅 환경에서 네트워크 제어의 개선
JP6258985B2 (ja) 通信装置、通信制御方法、及びプログラム
JP6532851B2 (ja) 通信装置、dns処理方法、およびプログラム
JP6180613B2 (ja) 通信装置、通信制御方法、及びプログラム
JP6339604B2 (ja) 通信装置、通信制御方法、及びプログラム
JP6029781B1 (ja) 通信装置、dns処理方法、およびプログラム
JP6093055B1 (ja) 通信装置、通信制御方法、及びプログラム
JP2017201830A (ja) 通信装置、通信制御方法、及びプログラム
JP6258986B2 (ja) 通信装置、通信制御方法、及びプログラム
JP2017225161A (ja) 通信装置、通信制御方法、及びプログラム
JP2017139735A (ja) 通信装置、通信制御方法、及びプログラム
JP2017225162A (ja) 通信装置、通信制御方法、及びプログラム
JP2017139736A (ja) 通信装置、通信制御方法、及びプログラム
US20170223614A1 (en) Communication apparatus, communication control method, and non-transitory computer-readable recording medium
US10735526B2 (en) Communication apparatus, communication control method, and non-transitory computer-readable recording medium for controlling data communication of an application
JP2017139751A (ja) 通信装置、通信制御方法、及びプログラム
JP2017138971A (ja) 通信装置、通信制御方法、及びプログラム
Sarathchandra REACT: Distributed Mobile Microservice Execution Enabled by Efficient Inter-Process Communication
JP2017139747A (ja) 通信装置、通信制御方法、およびプログラム
JPWO2019012958A1 (ja) ハイパーバイザプログラム

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161011

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180510

R150 Certificate of patent or registration of utility model

Ref document number: 6339604

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150