JP6488526B2 - 通信装置、通信方法、通信プログラム、及びプロセッサ - Google Patents
通信装置、通信方法、通信プログラム、及びプロセッサ Download PDFInfo
- Publication number
- JP6488526B2 JP6488526B2 JP2014231060A JP2014231060A JP6488526B2 JP 6488526 B2 JP6488526 B2 JP 6488526B2 JP 2014231060 A JP2014231060 A JP 2014231060A JP 2014231060 A JP2014231060 A JP 2014231060A JP 6488526 B2 JP6488526 B2 JP 6488526B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- header information
- information
- unit
- session
- 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.)
- Expired - Fee Related
Links
- 238000004891 communication Methods 0.000 title claims description 532
- 238000000034 method Methods 0.000 title claims description 164
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 title 1
- 230000008569 process Effects 0.000 claims description 126
- 238000010187 selection method Methods 0.000 claims description 2
- 230000010267 cellular communication Effects 0.000 description 56
- 238000012545 processing Methods 0.000 description 43
- 230000005856 abnormality Effects 0.000 description 24
- 230000004044 response Effects 0.000 description 22
- 101710118399 50S ribosomal protein L24, chloroplastic Proteins 0.000 description 18
- 230000007704 transition Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 230000002159 abnormal effect Effects 0.000 description 10
- 238000001514 detection method Methods 0.000 description 9
- 230000001413 cellular effect Effects 0.000 description 8
- 101710156159 50S ribosomal protein L21, chloroplastic Proteins 0.000 description 6
- 230000007423 decrease Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 101710087140 50S ribosomal protein L22, chloroplastic Proteins 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000002194 synthesizing effect Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 108010045306 T134 peptide Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Telephonic Communication Services (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Description
しかしながら、特許文献1に記載の技術では、アクセスの度に異なるコンテンツが返答されるような場合には、通信端末は、リンク1とリンク2でデータに整合性がとれない。この場合、通信端末は、無線リンクの切り換えに失敗することがある、という問題があった。
以下、図面を参照しながら本発明の第1実施形態について詳しく説明する。
図1は、本発明の第1実施形態に係る通信システムの構成を示す概略図である。この図において、通信システムは、通信装置1、アクセスポイントAP1、基地局装置BS1、及び、サーバ装置Sv101〜104を具備する。
基地局装置BS1は、携帯電話と直接電波を送受信する装置である。基地局装置BS1は、通信装置1と3G又はLTEによる通信(無線リンクL2と称する)を行うことができる。基地局装置BS1は、携帯電話網N1に接続され、携帯電話網N1を介して、ネットワークN2に接続された機器と通信を行うことができる。例えば、ネットワークN2はインターネットであり、携帯電話網N1と通信プロトコルが異なる。
一方、ヘッダ比較処理の結果、ヘッダ情報H1とヘッダ情報H2の全部又は一部が同じでないと判定した場合、つまり、HTTPのデータ部分に差分がある場合、通信装置1は、フォールバックを中止する。これにより、通信装置1は、例えばアクセスの度に異なるコンテンツが返答されるような場合でも、無線リンクL1を用いてフォールバック前と同じコンテンツの続きを取得できる。つまり、通信装置1は、フォールバックによって、無線リンクL1を用いて取得したデータと無線リンクL2を用いて取得したデータを結合してしまい、データの不整合が生じることを防止できる。
また、通信装置1は、フォールバック時にリダイレクトされた場合でも、ヘッダ情報が同じものを取得できた場合、つまり、最終的にコンテンツが同じである場合、フォールバックを行うことができる。
通信装置1は、「強制フォールバックモード」に遷移させることで、不要リンクへの通信確立を試みるコストが不要となり、すぐに良好な通信を行うことができる。なお、通信装置1は、不要リンクと判断された無線リンクL1への接続を復帰させたい場合、ヘッダ比較処理を行ってもよく、それにより、効率的に再利用を開始することができる。
図2は、本実施形態に係る通信装置1の構成を示す概略ブロック図である。通信装置1は、入力部11、出力部12、制御部13、記憶部14、及び通信部15を含んで構成される。制御部13は、アプリケーション部131とプロキシ部P1を含んで構成される。通信部15は、N個のインターフェース151−1〜151−N、及び信号強度検出部152を含んで構成される。
出力部12は、制御部13の制御に基づいて、出力を行う。出力部12は、例えば、ディスプレイやスピーカー、振動子、発光素子である。
また、プロキシ部P1は、複数のインターフェース151−nが情報を受信した場合、受信した情報を合成する。例えば、プロキシ部P1は、複数のインターフェース151−nを時間的に切り換えた場合、切り換え前後のデータを合成してもよい。プロキシ部P1の詳細については、後述する。
図3は、本実施形態に係るプロキシ部P1の構成を示す概略ブロック図である。プロキシ部P1は、セッション管理部P111、DNS管理部P112、スループット取得部P113、容量情報取得部P114、信号強度取得部P121、計時部P122、AP(アクセスポイント)情報取得部P123、通信方式情報取得部P124、位置情報取得部P125、ヘッダ情報取得部P131、リダイレクト情報取得部P132、IF選択部P14、及び、データ合成部P15を含んで構成される。
また、セッション管理部P111は、フォールバックをしているセッション数(FBセッション数とも称する)を計数し、計数したFBセッション数を示すFBセッション数情報を、IF選択部P14へ出力する。なお、フォールバックは、セッション毎に発生し、セッション単位で発生するフォールバックのことを、「単一フォールバック」とも称する。
DNS管理部P112は、名前解決処理に異常が発生したときには、名前解決の異常を示す名前解決異常情報と名前解決の異常の理由を示す名前解決異常理由情報を、セッション識別情報と対応付けて、IF選択部P14へ出力する。名前解決の異常には、名前解決処理の失敗(例えば、接続失敗)や名前解決処理のタイムアウト等があり、その理由には、ホスト名又はドメイン名の不登録、未登録や通信エラー、タイムアウト等がある。
信号強度取得部P121は、信号強度検出部152からインターフェース151−n毎の信号強度情報を取得し、取得した信号強度情報をIF選択部P14へ出力する。
AP情報取得部P123は、現在通信をしているアクセスポイント或いは基地局の識別情報又はネットワークの識別情報(BSSID又はESSID等)を取得する。AP情報取得部P123は、取得した識別情報(AP識別情報とも称する)を、IF選択部P14へ出力する。
位置情報取得部P125は、例えば、GPS(Global Positioning System,全地球測位網)機能により、通信装置1の現在位置を測位する。位置情報取得部P125は、測位した通信装置1の現在位置を示す位置情報を、IF選択部P14へ出力する。なお、位置情報取得部P125は、基地局装置BS1の基地局情報であって通信装置1のおおよその位置を推定可能な基地局情報(例えば、通信装置1が接続中の基地局装置を示す情報や基地局装置の位置を示す情報)を取得し、取得した基地局情報を位置情報として、IF選択部P14へ出力してもよい。
リダイレクト情報取得部P132は、通信部15の送受信する情報から、セッション毎にHTTPのステータスコードを取得する。リダイレクト情報取得部P132は、取得しステータスコードを、セッション識別情報と対応付けて、IF選択部P14へ出力する。ここで、ステータスコードがリダイレクションを示す場合、リダイレクト情報取得部P132は、リダイレクション先を示す情報も取得し、IF選択部P14へ出力する。
データ合成部P15は、通信部15の受信した情報を合成し、合成後の情報を、例えばアプリケーション部131や記憶部14へ出力する。例えば、データ合成部P15は、あるセッションにおいて、少なくとも2つのインターフェース151−nを時間的に切り換えた場合、切り換え前後のデータを合成する。
図4は、本実施形態に係るフォールバックを説明するための説明図である。
この図において、符号C11を付した図は通常状態C11を表し、符号C12を付した図は単一フォールバックの状態C12を表し、符号C13を付した図はフォールバックの状態(フォールバック状態とも称する)C13を表す。通常状態C11から状態C12へは、通信が失敗した場合に遷移する。また、状態C12から状態C13へは、FBセッション数が許容数(単に許容数とも称する)を超えた場合に遷移する。なお、通信部15からホストへ向かう矢印各々は、各セッションの通信を表す。
状態C13は、全てのセッションにおいて、セルラー通信を行う状態である。状態C13は、セルラー通信が優先される状態であり、例えば、許容数を超えた場合、他のWi−Fi通信からセルラー通信へ遷移される状態である。なお、許容数を超えた場合、Wi−Fi通信を行っている最中のセッションがあった場合、そのセッションは、その通信の完了後に、セルラー通信へ遷移される。また、状態C13は、新規のセッションに対して、セルラー通信が割り当てられる状態である。
(A1)セッションがタイムアウトしたとき
(A2)名前解決処理がタイムアウトしたとき
(A3)スループットが低下したとき
(A4)セッションが確立できなかったとき
(A5)名前解決処理に失敗したとき
(A6)通信中にソケットエラーが発生したとき
以下、これらの(A1)〜(A6)について説明する。
通信装置1は、ホストとのソケット接続をした時にタイムアウトした場合、単一フォールバックを行う。ここで、ソケット接続とは、接続要求用のインターフェース(例えば、socket()、bind()等)による接続である。具体的には、IF選択部P14は、入力されたセッション異常情報がタイムアウトを示す場合、セッション識別情報が示すセッションの通信について、FB先インターフェース151−kを選択する。これにより、通信装置1は、FB元インターフェース151−iでの通信からFB先インターフェース151−kでの通信へ切り換えることができ、FB元リンクからFB先リンクへ通信を切り換える。
セッション管理部P111は、各通信種別(Wi−Fi又はセルラーの種別)のソケット接続に対する応答が、その通信種別のタイムアウト時間を超えた場合、セッション異常とする。例えば、セッション管理部P111は、Java(登録商標。以下同じ)のプログラム(クラス、インスタンス、メソッド、又は属性等も、プログラムと称する)の場合、Connect()にタイムアウト時間を設定し、SocketTimeoutExceptionが発生した場合、セッション異常とする。その場合、セッション管理部P111は、タイムアウトを示すセッション異常情報を、IF選択部P14へ出力する。
通信装置1は、名前解決でDNSサーバへ接続をした時にタイムアウトした場合に単一フォールバックを行う。なお、Wi−Fi通信の場合、DNS管理部P112は、DNSサーバからホスト名等を取得する。具体的には、IF選択部P14は、入力された名前解決異常情報がタイムアウトを示す場合、セッション識別情報が示すセッションの通信について、FB先インターフェース151−kを選択する。
通信装置1は、スループットが低下した場合、単一フォールバックを行う。具体的には、IF選択部P14は、入力されたスループット情報が示すスループットが、記憶部14が記憶する閾値(スループット閾値とも称する)以下になった場合、セッション識別情報が示すセッションの通信について、FB先インターフェース151−kを選択する。
なお、スループット閾値は、通信方式に応じて異なる値であってもよい。例えば、スループット閾値は、LTE通信の場合には512Kbpsである。一方、UMTS/HS(D)PA(Universal Mobile Telecommunications System/High Speed (Downlink) Packet Access)の場合には、スループット閾値は、256Kbpsである。
通信装置1は、ホストとのソケット接続に失敗した場合、単一フォールバックを行う。具体的には、IF(インターフェース)選択部P14は、入力されたセッション異常情報が接続失敗を示す場合、セッション識別情報が示すセッションの通信について、FB先インターフェース151−kを選択する。なお、セッション管理部P111は、Javaのプログラムのとき、ソケット接続に時にIOExceptionを捕えた(キャッチした)場合、セッション異常とする。IOExceptionは、IO(入出力)エラーが発生したときに投げられる例外である。セッション管理部P111は、セッション異常とした場合、セッション異常情報をIF選択部P14へ出力する。
通信装置1は、DNSサーバとのソケット接続に失敗した場合、単一フォールバックを行う。具体的には、IF選択部P14は、入力された名前解決異常情報が接続失敗を示す場合、セッション識別情報が示すセッションの通信について、FB先インターフェース151−kを選択する。
通信装置1は、FB元での通信中にソケットエラーが発生した場合、単一フォールバックを行う。具体的には、IF選択部P14は、入力されたセッション異常情報がソケットエラーを示す場合、セッション識別情報が示すセッションの通信について、FB先インターフェース151−kを選択する。なお、セッション管理部P111は、Javaのプログラムのとき、通信中にSocketExceptionが発生した場合、セッション異常とする。SocketExceptionとは、ソケットエラーが発生したときに投げられる例外である。セッション管理部P111は、セッション異常とした場合、ソケットエラーを示すセッション異常情報を、IF選択部P14へ出力する。
(B1)FBセッション数が許容数を超えたとき
具体的には、IF選択部P14は、入力されたFBセッション数情報が示すFBセッション数が、記憶部14が予め記憶する許容数(例えば「5」個)を超えたと判定した場合、全てのセッションについて、LTE通信のインターフェース151−2を選択する。これにより、通信部15は、図4の状態C13が表わす通信を行うこととなる。なお、セッション管理部P111は、(A1)セッションがタイムアウトしたとき、(A2)名前解決処理がタイムアウトしたとき、(A3)スループットが低下したときに、単一フォールバックをしたセッション数を、FBセッション数とする。ただし、本発明はこれに限らず、(A1)〜(A6)のすべての場合で、フォールバックをしたセッション数を、FBセッション数としてもよい。
また、IF選択部P14は、あるセッションにおいて、(A4)セッションが確立できなかったとき、又は、(A5)名前解決処理に失敗したとき、(A6)通信中にソケットエラーが発生したときには、全てのセッションについて、LTE通信のインターフェース151−2を選択してもよい。
図5は、本実施形態に係るフェールバックを説明するための説明図である。なお、フェールバックとは、フォールバックとは逆の切り換えを行うことで、フォールバック前の状態に戻すことをいう。
この図において、通常状態C11とフォールバック状態C13は、図4のものと同じである。符号C22を付した図は、フェールバックの状態(フェールバック状態とも称する)C22を表す。フォールバック状態C13からフェールバックの状態へは、後述するフェールバック条件を充足した場合に遷移する。また、状態C22から状態C11へは、順次、遷移する。なお、通信部15からホストへ向かう矢印各々は、各セッションの通信を表す。
(C1)FB元リンクの信号強度が上昇したとき
(C2)フォールバックから1分が経過したとき
(C3)アクセスポイントが変わったとき
(C4)LTE通信が3G通信に変わったとき
(C5)通信中にソケットエラーが発生したとき
通信装置1は、FB元リンクの信号強度が、フォールバックしたときより予め定めた強度以上に上昇した場合、フェールバックを行う。具体的には、IF選択部P14は、随時入力されるFB元インターフェース151−iの信号強度情報について、フォールバックしたときの信号強度情報(FB信号強度情報とも称する)を記憶部14に記憶し、現在の信号強度情報からFB信号強度情報を差し引く。IF選択部P14は、差し引いた値(強度差とも称する)が予め定めた閾値以上であれば、フェールバックを行う。例えば、FB元リンクの通信方式がWi−Fi通信の場合、IF選択部P14は、RSSIの強度差が2ランク(アンテナ2本分)以上になった場合、FB元インターフェース151−iを選択する。これにより、通信装置1は、FB先インターフェース151−kでの通信からFB元ンターフェース151−iでの通信へ切り換えることができ、FB先リンクからFB元リンクへ通信を切り換える。なお、IF選択部P14は、現在の信号強度情報とFB信号強度情報との比を算出して閾値と比較してもよい。
ここで、信号強度検出部152は、例えばWifiManagerを用いて実現される。WifiManagerは、Wi−Fiの情報を取得するプログラムであり、BSSID、IPアドレス、ネットワークID等を取得できる。信号強度検出部152は、FB元インターフェース151−iでのWiFi通信のRSSIを、例えば5秒間隔で検出する。信号強度検出部152は、検出したRSSIを示す信号強度情報を、5秒間隔で信号強度取得部P121を介して、IF選択部P14へ出力する。
通信装置1は、フォールバック状態C13に遷移してから1分以上経過した場合、フェールバックを行う。具体的には、IF選択部P14は、時間超過情報が入力された場合、つまり、フォールバックした時点から設定値(例えば、1分)の時間が経過した場合、FB元インターフェース151−iを選択する。
通信装置1は、FB元リンクの基地局の識別情報又はネットワークの識別情報が変更した場合、フェールバックを行う。具体的には、IF選択部P14は、入力されたAP識別情報が、フォールバックの前後で異なるか否かを判定する。フォールバックの前後で異なると判定した場合、IF選択部P14は、FB元インターフェース151−iを選択する。なお、IF選択部P14は、強制フォールバックの場合のみ、(C3)をフェールバック条件としてもよい。
ここで、AP情報取得部P123は、例えば、CONNECTIVITY_ACTIONを受信したときに、BSSIDを取得する。CONNECTIVITY_ACTIONは、ネットワークの接続状態が変化したときの通知を取得するプログラムである。
通信装置1は、FB先リンクの通信方式がLTEであるときに、その後、その通信方式が3Gに変化した場合、フェールバックを行う。具体的には、IF選択部P14は、フォールバックを行った後、入力された通信方式情報がLTEから3Gに変わったときに、FB元インターフェース151−iを選択する。なお、IF選択部P14は、強制フォールバックの場合のみ、(C4)をフェールバック条件としてもよい。ここで、通信方式情報取得部P124は、例えば、CONNECTIVITY_ACTIONを受信したときに、セルラータイプを取得することで、通信方式を取得する。なお、通信装置1は、通信をLTEから3Gに変化させるとき、ヘッダ比較処理を行って、データを最初から取得するか或いは途中から取得するかを制御してもよい。ここで、通信装置1は、FB元リンク(Wi−Fi通信)を用いて取得したヘッダ情報とFB先リンクでの変化後のリンク(3G通信)を用いて取得したヘッダを比較することで、ヘッダ比較処理を行ってもよい。
通信装置1は、FB先での通信中にソケットエラーが発生した場合、フェールバックを行う。具体的には、IF選択部P14は、入力されたセッション異常情報がソケットエラーを示す場合、FB元インターフェース151−iを選択する。
また、フェールバックを行った後、FB元リンクの通信に失敗した場合、通信装置1は、フォールバックを行ってもよい。さらに、このフォールバックを行った後、FB先リンクでも通信に失敗した場合、通信装置1は、通信を止めてもよい。これにより、通信装置1は、フォールバックとフェールバックが繰り返され続けることを防止できる。
上記のフォールバックを行う場合、通信装置1は、ヘッダ比較処理を行う。具体的には、ヘッダ情報取得部P131は、フォールバックを行う前に、FB元リンクにおいて例えば予め定めたプロトコル(例えばHTTP)のヘッダ情報(FB元ヘッダ情報とも称する)を取得したときに、取得したFB元ヘッダ情報をIF選択部P14へ出力する。IF選択部P14は、入力されたFB元ヘッダ情報を、として記憶部14に記憶させる。ヘッダ情報取得部P131は、フォールバックを行うときに、FB先リンクにおいてプロトコルのヘッダ情報(FB先ヘッダ情報)を取得し、取得したFB先ヘッダ情報をIF選択部P14へ出力する。IF選択部P14は、FB元ヘッダ情報とFB先ヘッダ情報を比較する。
ここで、IF選択部P14は、ヘッダ情報のうち、HTTPのデータ部分に差分があると判断できる情報を比較する。例えば、IF選択部P14は、ヘッダ情報のうち、コンテンツのサイズを表す情報(Content−Length)やコンテンツのバージョンや更新日時を示す情報を比較する。
一方、比較の結果、ヘッダ情報H1とヘッダ情報H2が同じでないと判定した場合、IF選択部P14は、セッション識別情報が示すセッションの通信について、FB元インターフェース151−iのままとする(フォールバックを中止する)。
比較の結果、FB元ヘッダ情報とFB先ヘッダ情報が同じであると判定した場合、IF選択部P14は、セッション識別情報が示すセッションの通信について、FB先インターフェース151−kを選択する(フォールバックを行う)。一方、比較の結果、ヘッダ情報H1とヘッダ情報H2が同じでないと判定した場合、IF選択部P14は、セッション識別情報が示すセッションの通信について、FB元インターフェース151−iのままとする(フォールバックを中止する)。
通信装置1は、WiFi通信状態S11であるとき、Wi−Fi通信が良好な場合、例えば、上記の単一フォールバックを行う条件(A1)〜(A6)に該当しない場合、WiFi通信状態S11のままである。一方、通信装置1は、WiFi通信状態S11であるとき、上記の単一フォールバックを行う条件(A1)〜(A6)に該当した場合、フォールバックを行うことで、セルラー通信状態S12へ遷移する。
図8は、本実施形態に係る通信装置1の処理フローを示す図である。なお、この図において、ステップS103、S104、S105、S111、S121、S122、S128、S129は、Wi−Fi通信(FB元)の情報処理である。ステップS106、S107、S108、S123、S124、S125は、セルラー通信(FB先)の情報処理である。
(ステップS104)セッション管理部P111は、Wi−Fi通信を用いた接続要求(Connect)により、コンテンツサーバへの接続を要求する。この要求の結果、セッション管理部P111が接続に失敗した場合、ステップS106へ進む。一方、セッション管理部P111が接続に成功した場合、ステップS105へ進む。
制御部13がコンテンツの取得を行っているとき、容量情報取得部P114は、随時、DL済サイズを算出する。また、容量情報取得部P114は、コンテンツサイズからDL済サイズを差し引くことで、残サイズを算出する。残サイズとは、取得するコンテンツのうち、取得が済んでいないコンテンツの容量である。また、制御部13がコンテンツの取得を行っているとき、随時、スループット取得部P113は、予め定めた時間間隔で、スループットを算出する。
(ステップS107)セッション管理部P111は、セルラー通信を用いた接続要求により、コンテンツサーバへの接続を要求する。この要求の結果、セッション管理部P111が接続に失敗した場合、ステップS110へ進む。一方、セッション管理部P111が接続に成功した場合、ステップS108へ進む。
(ステップS109)IF選択部P14は、ステップS108で抽出したコンテンツサイズが予め定められたFB許容サイズより大きいか否かを判定する。FB許容サイズとは、フォールバックを許容するコンテンツの容量を示す情報である。コンテンツサイズがFB許容サイズより大きいと判定された場合(Yes)、ステップS110へ進む。一方、コンテンツサイズがFB許容サイズ以下であると判定された場合(No)、制御部13は、セルラー通信を用いて、コンテンツの取得を開始する。
(ステップS110)IOException又はInterruptedIOExceptionが投げられる。この場合、制御部13は、良好な接続がない又は無条件でのフォールバックが不可能と判定して、通信装置1の通信接続を止める。
(ステップS113)IF選択部P14は、全てのセッションでフォールバック中であるか否かを判定する。全てのセッションでフォールバック中であると判定された場合(Yes)、ステップS112へ戻る。この場合、制御部13は、定期的なポーリング(定期的な問合せ)を行う。なお、全てのセッションでフォールバック中であると判定される(Yes)のは、ステップS102で、DLMによる情報の取得であると判定された場合のみである。一方、少なくとも一部のセッションでフォールバック中ではないと判定された場合(No)、ステップS114へ進む。
出力部12の出力に対して入力部11からの入力がない場合(未選択)、ステップS112へ戻る。この場合、制御部13は、定期的なポーリングを行う。入力があったとき、入力部11からの入力がフォールバックをすることを示す場合(Yes)、IF選択部P14はフォールバックが許容されたと判定し、ステップS121へ進む。一方、入力部11からの入力がフォールバックをしないことを示す場合(No)、ステップS128へ進む。つまり、ユーザ操作によって、通信装置1は、フォールバックを行わないこととなる。
(ステップS122)制御部13は、アプリバッファへの書き込みを停止する(WriteStop)。つまり、制御部13は、アプリケーションへのデータの出力を中断する。その後、ステップS123へ進む。
(ステップS124)セッション管理部P111は、セルラー通信を用いた接続要求により、コンテンツサーバへの接続を要求する。この要求の結果、セッション管理部P111が接続に失敗した場合、ステップS128へ進む。一方、セッション管理部P111が接続に成功した場合、ステップS125へ進む。
(ステップS126)IF選択部P14は、ステップS105で記憶させたFB元ヘッダ情報と、ステップS125で取得したFB先ヘッダ情報と、を比較する(ヘッダ比較処理)。比較の結果、FB元ヘッダ情報とFB先ヘッダ情報が同じでないと判定された場合(Yes)、ステップS127へ進む。一方、FB元ヘッダ情報とFB先ヘッダ情報が同じであると判定された場合(No)、制御部13は、セルラー通信を用いて、コンテンツの取得を再開する。ここで、データ合成部P15は、Wi−Fi通信で取得済みのコンテンツのデータを読み出し、セルラー通信を用いて、そのデータの続きからデータの取得を再開する。つまり、通信装置1は、フォールバックに成功する。
なお、IF選択部P14は、ステップS126でNoと判定するまでは、フォールバック元の通信(Wi−Fi通信)でのセッションを継続させ続ける。
一方、ステータスコードがリダイレクションを示すと判定された場合、ステップS123へ戻る。この場合、ステップS123〜S125にて、リダイレクション先へ接続する。例えば、ステップS125にて、ヘッダ情報取得部P131は、リダイレクション先から取得したヘッダ情報を、FB先ヘッダ情報とする。その後、ステップS126で、新たなFB先ヘッダ情報とFB元ヘッダ情報が比較されることとなる。なお、ステップS127の処理は、1回だけ行われてもよい。つまり、制御部13は、一度だけ、転送を許容してもよい。この場合、IF選択部P14は、同じセッションにおいて、2回目以降のステップS127の処理を行わずに、ステップS128へ進む。
(ステップS129)制御部13は、アプリバッファへの書き込みを再開する(WriteStart)。つまり、制御部13は、アプリケーションへのデータの出力を再開する。
なお、IF選択部P14は、ステップS101、S113において、通信装置1が強制フォールバックモードか否かを判定してもよい。
図9及び図10は、本実施形態に係るプロキシ部P1の処理フローを示す図である。なお、図10は、図9の続きである。
(ステップS201)プロキシ部P1は、プロキシサービス(LaProxyService)CL21を生成する(onCreate())。その後、ステップS202へ進む。
(ステップS202)プロキシサービスCL21は、フォールバックを管理するFB管理(FallbackManager)CL22を生成する。その後、ステップS203へ進む。
(ステップS204)プロキシサービスCL21は、例えば通信装置1(アプリケーション部131)のアプリケーション(元アプリとも称する)から、ソケット接続のリクエストを受け付ける。その後、ステップS205へ進む。
(ステップS205)プロキシサービスCL21は、セッションを管理するFBセッション(FallbackSession)CL23を生成する。その後、ステップS206へ進む。
(ステップS207)FBセッションCL23は、入力されたデータを読み込むプログラム(read())を生成する。その後、ステップS208へ進む。
(ステップS208)FBセッションCL23は、ステップS204で受け付けたリクエストを読み込む。その後、ステップS209へ進む。
(ステップS210)FBセッションCL23は、ステップS208で読み込んだリクエストのURLを解析する。その後、ステップS211へ進む。
(ステップS211)FBセッションCL23は、ステップS208で読み込んだリクエストについて、不要なリクエストの修正や削除を行う。その後、ステップS212へ進む。
(ステップS213)FBセッションCL23は、FB管理CL22に、通信方式(RAT:Radio Access Technology)を選択させる要求を行う。その後、ステップS214へ進む。
(ステップS214)FB管理CL22は、通信方式を選択する(RAT選択)。例えば、FB管理CL22は、デフォルトではWi−Fi通信を選択する。一方、例えば強制フォールバックモードの場合、セルラー通信を選択する。その後、ステップS215へ進む。
(ステップS216)FBセッションCL23は、ステップS208のリクエストに含まれるドメインネーム情報について、名前解決処理を行うことで、ホストのIPアドレスを取得する。ここで、FBセッションCL23は、ステップS213でWi−Fi通信が選択された場合、予め定めた規則に従ってDNSサーバ(図1のサーバ装置Sv103)を選択し、選択したDNSサーバへ接続する。FBセッションCL23は、接続したDNSサーバを使用して、名前解決処理を行う。一方、FBセッションCL23は、ステップS213でセルラー通信が選択された場合、所定のDNSサーバ(図1のサーバ装置Sv102)を使用して、名前解決処理を行う。その後、ステップS217へ進む。
なお、ステップS216で、DNSサーバへの接続がタイムアウトした場合やDNSサーバへの接続が失敗した場合、通信装置1は、フォールバック条件(A2)、(A5)に該当すると判定する。
ステップS215〜S217(clientConnect())の処理でエラーが発生した場合、ステップS218へ進む。一方、ステップS214〜S217の処理でエラーが発生しなかった場合、図10のステップS219へ進む。
(ステップS219)FBセッションCL23は、サーバへHTTPリクエストを送信するためのプログラム(sendRequest())を生成する。その後、ステップS220へ進む。
(ステップS221及びS222)FBセッションCL23は、ステップS220で書き込んだリクエストを、ステップS217で接続したホストへ送信する。ステップS221のリクエストに失敗した場合、ステップS223へ進む。一方、ステップS221のリクエストに成功した場合、ステップS224へ進む。
(ステップS223)FBセッションCL23は、リトライを行う。すなわち、通信装置1は、フォールバックを行う。このフォールバックの詳細は、図11を用いて後述する。
(ステップS224)FBセッションCL23は、レスポンスを受信するためのプログラム(recvResponse())を生成する。その後、ステップS224へ進む。
(ステップS225)FBセッションCL23は、スレッド(Thread)CL24を生成する。スレッドは、データを受信するためのプログラムである。その後、ステップS226へ進む。
(ステップS226)FBセッションCL23は、スレッドCL24を開始させる。その後、ステップS227及びステップS237へ進む。
(ステップS228及びS229)スレッドCL24は、ステップS221で送信したリクエストに対するレスポンスのヘッダ情報を受信し、受信したヘッダ情報を読み込む。その後、ステップS230へ進む。
(ステップS230及びS231)スレッドCL24は、ステップS228で読み込んだヘッダ情報を、元アプリのソケットへ書き込む。つまり、スレッドCL24は、ヘッダ情報を、元アプリへ送信する。その後、スレッドCL24は、全てのヘッダ情報の受信が完了するまで、ステップS228〜S231の処理を繰り返す。全てのレスポンスの受信が完了したとき、ステップS232へ進む。
(ステップS233及びS234)スレッドCL24は、ステップS223で送信したリクエストに対するレスポンスのボディ情報を受信し、受信したボディを読み込む。その後、ステップS235へ進む。
(ステップS235及びS236)スレッドCL24は、ステップS233及びS234で読み込んだボディ情報を、元アプリのソケットへ書き込む。つまり、スレッドCL24は、ボディ情報を、元アプリへ送信する。その後、スレッドCL24は、全てのボディ情報の受信が完了するまで、ステップS233〜S236の処理を繰り返す。
(ステップS238)FBセッションCL23は、例えばスループットが低下した場合に、リトライを行う。すなわち、通信装置1は、フォールバックを行う。なお、スループットが低下した場合とは、例えば、FB元リンクがWi−Fi通信の場合には512Kbps(キロビット毎秒)であり、FB元リンクがLTE通信の場合には512Kbpsであり、FB元リンクが3G通信の場合には256である。このフォールバックの詳細は、図12、図13を用いて後述する。
(ステップS239)FBセッションCL23は、リトライを行う。すなわち、通信装置1は、フォールバックを行う。このフォールバックの詳細は、図14を用いて後述する。
(ステップS302)FBセッションCL23は、ステップS217で生成されたソケットを閉じる。その後、ステップS303へ進む。
(ステップS303)FBセッションCL23は、フォールバックを行うためのプログラム(doRetry)を生成する。その後、ステップS304へ進む。
(ステップS305)FBセッションCL23は、ステップS208のリクエストに含まれるドメインネーム情報について、名前解決処理を行うことで、ホストのIPアドレスを取得する。ここで、FBセッションCL23は、セルラー通信で用いるDNSサーバ(図1のサーバ装置Sv102)を使用して、名前解決処理を行う。その後、ステップS306へ進む。なお、ステップS305で、DNSサーバへの接続がタイムアウトした場合やDNSサーバへの接続が失敗した場合、通信装置1は、フォールバックも不可能と判断し、通信エラーとする。
(ステップS307)FBセッションCL23は、データを要求するリクエストを送信するためのプログラム(sendRequest())を生成する。その後、ステップS308へ進む。
(ステップS308及びS309)FBセッションCL23は、データを要求するリクエストを、ステップS306で接続したホストへ、セルラー通信により送信する。その後、ステップS310へ進む。
(ステップS311及びS312)FBセッションCL23は、レスポンスのヘッダ情報を受信し、受信したヘッダ情報を読み込む。その後、ステップS313へ進む。
(ステップS313及びS314)FBセッションCL23は、ステップS311で読み込んだヘッダ情報を、元アプリのソケットへ書き込む。つまり、FBセッションCL23は、ヘッダ情報を、元アプリへ送信する。その後、FBセッションCL23は、全てのヘッダ情報の受信が完了するまで、ステップS311〜S314の処理を繰り返す。全てのレスポンスの受信が完了したとき、ステップS315へ進む。ここで、FBセッションCL23は、ステップS314の後、ステップS315の前に、ヘッダ比較処理(例えば、コンテンツのサイズの比較処理)を行わない。なぜなら、ステップS301でリクエストに失敗しているため、通信装置1は、FB元ヘッダ情報を取得していないからである。
(ステップS316及びS317)FBセッションCL23は、ステップS309で送信したリクエストに対するレスポンスのボディ情報を受信し、受信したボディを読み込む。その後、ステップS318へ進む。
(ステップS318及びS319)FBセッションCL23は、ステップS316及びS317で読み込んだボディ情報を、元アプリのソケットへ書き込む。つまり、FBセッションCL23は、ボディ情報を、元アプリへ送信する。その後、FBセッションCL23は、全てのボディ情報の受信が完了するまで、ステップS316〜S319の処理を繰り返す。全てのボディ情報の受信が完了した後、ステップS320へ進む。
(ステップS320)FBセッションCL23は、内部情報である、サーバ装置と接続しているソケットの情報に、FB後のソケット情報を設定(更新)する。
なお、図12では、ステップS312の後、ステップS402へ進む。また、S304、S306、S309の処理で失敗した場合については、図13で説明する。
(ステップS402)FBセッションCL23は、ステップS228〜S231で読み込んだヘッダ情報(FB元ヘッダ情報)とステップS311〜S312で読み込んだヘッダ情報(FB先ヘッダ情報)とを比較するヘッダ比較処理(例えば、コンテンツのサイズの比較処理)を行う。FB元ヘッダ情報とFB先ヘッダ情報が同じ(例えば、コンテンツのサイズが同じ)であると判定された場合、ステップS403へ進む。なお、FB元ヘッダ情報とFB先ヘッダ情報が同じでないと判定された場合については、図13で説明する。
(ステップS404)FBセッションCL23は、FB管理CL22に対して、FBセッション数に1を加えさせる。また、FBセッションCL23は、スループットが低下したことを示すスループット低下フラグを設定する。このフラグが設定された場合、スレッドCL24は、ステップS233〜S236のループを抜ける。その後、ステップS315及びS405へ進む。
(ステップS405)スレッドCL24は、図9のステップS217で生成されたソケットを閉じる。なお、FBセッションCL23は、図12の最初のステップS316において、最後のステップS236で書き込まれたボディ情報の続きから、ボディ情報を読み込む。
(ステップS502)FBセッションCL23は、ステップS304で生成されたソケットを閉じる。
(ステップS604)スレッドCL24は、ステップS217で生成されたソケットを閉じる。その後、ステップSS239へ進む。
(ステップS605)FBセッションCL23は、フォールバックを行うためのプログラム(doRetry)を生成する。その後、ステップS304へ進む。
プロキシ部P1は、FB先ヘッダ情報がリダイレクションを示す場合には、当該リダイレクション先からFB先ヘッダ情報を取得し、取得したFB先ヘッダ情報とFB元ヘッダ情報との比較結果に基づいて、通信の一部又は全部について、第1通信と第2通信との切り換えを制御する。これにより、通信装置1は、フォールバック時にリダイレクトされた場合でも、ヘッダ情報が同じものを取得できた場合、つまり、最終的にコンテンツが同じである場合、フォールバックを行うことができる。
通信装置1(プロキシ部P1)は、セッションの途中、つまり、FB先での通信完了前にフェールバックを行ってもよい。その場合、通信装置1は、ヘッダ比較処理を行って、フェールバックをするか否かを判定してもよい。
上記各実施形態において、通信装置1(プロキシ部P1)は、提供されるデータ部分のヘッダ情報の一部又は全部を比較してもよい。例えば、HTTPのパケットには、IPヘッダやTCPヘッダの後に、データ部分であるHTTPデータが含まれている。例えば、HTTPデータは、HTMLの情報である。
この場合、例えば、通信装置1は、無線リンクL2において、HTTPのヘッダフィールドで「Range:bytes=−200」と指定することで、200バイト以前のデータを取得できる。例えば、データがHTMLの場合、200バイト以前のデータには、HTMLのヘッダ情報の一部又は全部が含まれる。通信装置1は、取得したHTMLのヘッダ情報の一部又は全部と、無線リンクL1を用いて取得したHTMLのヘッダ情報の一部又は全部と、を比較することにより、ヘッダ比較処理を行ってもよい。
通信装置1(プロキシ部P1)は、フォールバックを行うか否かの判定(ヘッダ比較処理を含む)において、アプリケーションのタイムアウト時間を考慮してもよい。例えば、通信装置1は、ヘッダ比較処理又はRD先情報取得処理の時間が、アプリケーションのタイムアウト時間に近づいたときには、フォールバックを行わないと判定してもよい。
また、上述した実施形態における通信装置1の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。通信装置1の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
Claims (8)
- 第1通信を行う第1通信部と、
第2通信を行う第2通信部と、
前記第1通信を用いて取得した通信データのHTTPヘッダ情報である第1ヘッダ情報を記憶する記憶部と、
前記第2通信を用いて取得した通信データのHTTPヘッダ情報である第2ヘッダ情報を取得する情報取得部と、
前記第1ヘッダ情報と前記第2ヘッダ情報とを比較し、前記第1ヘッダ情報のコンテンツサイズと前記第2ヘッダ情報のコンテンツサイズが一致しない場合には、比較結果に基づいて、通信の一部又は全部について、前記第1通信と前記第2通信との切り換えを止めると判定する選択部と、
を備える通信装置。 - 前記選択部は、前記第2ヘッダ情報がリダイレクションを示す場合には、当該リダイレクション先から前記第2ヘッダ情報を取得し、取得した第2ヘッダ情報と前記第1ヘッダ情報との比較結果に基づいて、通信の一部又は全部について、前記第1通信と前記第2通信との切り換えを制御する請求項1に記載の通信装置。
- 前記記憶部は、前記通信装置に提供される提供データのうち、前記第1通信を用いて取得した第1データを記憶し、
前記選択部は、前記第1ヘッダ情報と前記第2ヘッダ情報の少なくとも一部が一致する場合には、通信の一部又は全部について、前記第1通信と前記第2通信を切り換えると判定し、
前記第2通信を用いて、前記提供データのうち、前記第1データ以外の第2データを取得し、前記第1データと前記第2データを合成する合成部を備える請求項1又は2に記載の通信装置。 - 前記選択部は、予め定めた一連の通信毎に、前記第1通信と前記第2通信の切り換えを制御し、
前記第1通信から前記第2通信へ切り換えている前記一連の通信の数を計数する計数部を備え、
前記選択部は、前記第1通信を優先し、前記計数部が計数した一連の通信の数が閾値を超えた場合には、前記第2通信を優先する請求項1から3のいずれか一項に記載の通信装置。 - 前記第1通信と前記第2通信は、論理的又は物理的な通信インターフェースが異なり、
前記選択部は、前記第1通信の通信インターフェースと前記第2通信のインターフェースとの切り換えを制御する請求項1から4のいずれか一項に記載の通信装置。 - 通信装置における通信方法おいて、
記憶部が、第1通信を用いて取得した通信データのHTTPヘッダ情報である第1ヘッダ情報を記憶する記憶過程と、
ヘッダ情報取得部が、第2通信を用いて取得した通信データのHTTPヘッダ情報である第2ヘッダ情報を取得する情報取得過程と、
選択部が、前記第1ヘッダ情報と前記第2ヘッダ情報とを比較し、前記第1ヘッダ情報のコンテンツサイズと前記第2ヘッダ情報のコンテンツサイズが一致しない場合には、通信の一部又は全部について、前記第1通信と前記第2通信との切り換えを止めると判定する選択過程と、
を有する通信方法。 - 通信装置のコンピュータに、
第1通信を用いて取得した通信データのHTTPヘッダ情報である第1ヘッダ情報を記憶する記憶手順、
第2通信を用いて取得した通信データのHTTPヘッダ情報である第2ヘッダ情報を取得する情報取得手順、
前記第1ヘッダ情報と前記第2ヘッダ情報とを比較し、前記第1ヘッダ情報のコンテンツサイズと前記第2ヘッダ情報のコンテンツサイズが一致しない場合には、通信の一部又は全部について、前記第1通信と前記第2通信との切り換えを止めると判定する選択手順、
を実行させるための通信プログラム。 - 第1通信を用いて取得した通信データのHTTPヘッダ情報である第1ヘッダ情報と第2通信を用いて取得した通信データのHTTPヘッダ情報である第2ヘッダ情報とを比較し、前記第1ヘッダ情報のコンテンツサイズと前記第2ヘッダ情報のコンテンツサイズが一致しない場合には、通信の一部又は全部について、前記第1通信と前記第2通信との切り換えを止めると判定する選択部を備えるプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014231060A JP6488526B2 (ja) | 2014-11-13 | 2014-11-13 | 通信装置、通信方法、通信プログラム、及びプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014231060A JP6488526B2 (ja) | 2014-11-13 | 2014-11-13 | 通信装置、通信方法、通信プログラム、及びプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016096436A JP2016096436A (ja) | 2016-05-26 |
JP6488526B2 true JP6488526B2 (ja) | 2019-03-27 |
Family
ID=56071990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014231060A Expired - Fee Related JP6488526B2 (ja) | 2014-11-13 | 2014-11-13 | 通信装置、通信方法、通信プログラム、及びプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6488526B2 (ja) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4299082B2 (ja) * | 2002-10-18 | 2009-07-22 | 株式会社エヌ・ティ・ティ・ドコモ | 移動局、移動通信システム、及びセル選択方法 |
US7711369B2 (en) * | 2005-08-22 | 2010-05-04 | Toshiba America Research, Inc. | Seamless mobility for a multiple interface device in a co-located wireless environment |
JP2007318291A (ja) * | 2006-05-24 | 2007-12-06 | Matsushita Electric Ind Co Ltd | マルチ方式対応通信端末 |
JP5722171B2 (ja) * | 2011-09-13 | 2015-05-20 | 株式会社東芝 | 通信システム、アクセスポイント、サーバ装置および通信制御方法 |
JP5865277B2 (ja) * | 2013-02-04 | 2016-02-17 | アラクサラネットワークス株式会社 | 認証スイッチまたはネットワークシステム |
-
2014
- 2014-11-13 JP JP2014231060A patent/JP6488526B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2016096436A (ja) | 2016-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101203753B1 (ko) | 이동 통신 디바이스의 복수의 애플리케이션에 대한 패킷 데이터 세션의 할당을 우선순위화하는 방법 및 장치 | |
JP5815690B2 (ja) | ネットワークアクセスを電子デバイスに提供するシステム及び方法 | |
US20140119364A1 (en) | Method for placing call in voice call continuity and terminal and server thereof | |
KR101828903B1 (ko) | 로밍 네트워크 액세스 방법 및 장치 | |
TW201110796A (en) | Connection manager for a wireless communication device | |
WO2006107689A2 (en) | Method and apparatus for selecting a communication mode for performing user requested data transfers | |
JP2007512602A (ja) | 端末装置の設定 | |
CN1714559A (zh) | 后续以非侵入方式配置移动终端的方法、系统和计算机程序产品 | |
US10757185B2 (en) | Method for peer-to-peer multimedia data sharing, electronic device and non-volatile computer readable medium | |
JPWO2008013291A1 (ja) | 移動通信システムおよび移動通信端末ならびにこれらに用いられるネットワーク選択方法 | |
JP4283818B2 (ja) | ローミング制御装置、移動通信端末、移動通信システム及びローミング制御方法 | |
JP2014179719A (ja) | 無線通信装置、使用アクセスポイントの優先順位を決定する方法、プログラムおよび記録媒体 | |
KR20130141682A (ko) | 정보의 대리 다운로드 또는 업로드를 위한 방법 및 시스템 | |
WO2016180210A1 (zh) | 一种接入wifi网络的方法及装置 | |
CN114080056B (zh) | 一种会话更新方法、终端和网络侧设备 | |
JP2018032134A (ja) | 建設機械管理システム | |
JP2018502473A (ja) | 移動体デバイスにインストールされたアプリケーションのトラフィックをルーティングするための方法およびデバイス | |
CN108605283A (zh) | 基于位置或服务的无线电选择规则的确定 | |
CN113162788A (zh) | 报告信息的发送方法和通信装置以及通信系统 | |
EP2931000B1 (en) | Wireless communication apparatus, wireless communication method, and wireless communication program | |
CN112969208B (zh) | 业务服务器的切换控制方法及装置、电子设备、存储介质 | |
EP3413620A1 (en) | Video optimization method, user equipment unit and network equipment unit | |
JP6488526B2 (ja) | 通信装置、通信方法、通信プログラム、及びプロセッサ | |
CN114125974A (zh) | 小区选择方法、装置、终端及存储介质 | |
JP6488528B2 (ja) | 通信装置、通信方法、通信プログラム、及びプロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170925 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180626 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180827 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190129 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190208 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6488526 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |