(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022074496
(43)【公開日】2022-05-18
(54)【発明の名称】ネットワーク処理制御システム
(51)【国際特許分類】
H04L 12/22 20060101AFI20220511BHJP
【FI】
H04L12/66 B
【審査請求】有
【請求項の数】1
【出願形態】OL
(21)【出願番号】P 2020184581
(22)【出願日】2020-11-04
(71)【出願人】
【識別番号】516229449
【氏名又は名称】イグドラシルリーヴズ合同会社
(72)【発明者】
【氏名】森谷 友己
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030GA15
5K030HD03
5K030KA05
5K030LE02
(57)【要約】
【課題】不特定多数による要求への応答を要するネットワーク通信において、要求過多により発生し得るシステム障害を処理最適化によって低減し、小規模のシステムでも可用性および保全性が確保できる手段を提供する。
【解決手段】ネットワークサーバのプログラムをネットワークシステム2とバックエンドシステム3に分け、ネットワークシステム2は通信相手からの要求に対し、その要求内容に通信相手の利用者情報をひもづけて記憶機能7に保持し、これをバックエンドシステム3にて読み取って利用者の信用確認や要求に対応する処理を非同期に実行することで、ネットワークシステム2にかかる負荷を最小限に抑え、これにより頻繁な要求にも適応し、可用性および保全性を確保できる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ネットワーク通信による通信相手からの要求を受信し、その要求に応じた処理結果を通信相手に送信するコンピュータシステムであって、通信を担うネットワークシステム(2)となるプログラムと、要求内容に対応する処理の実行を担うバックエンドシステム(3)となるプログラムを有し、通信相手より受けた要求内容に加え進捗情報および利用者情報をひもづけて保持するための記憶機能(7)により両システム(2・3)が仲介されることを特徴とするコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、不特定多数の通信相手からの要求を受け付け、要求過多により発生しうるシステム障害を低減するために最適化された処理制御システムである。
【背景技術】
【0002】
通信相手からの要求を受信し、その要求に応じた処理の実行結果を通信相手に送信するシステムは、基本的な通信機能として公知である。
【0003】
通信相手からの要求情報を記憶装置に保持し、その要求情報に対応する処理を別のプログラムが非同期に実行するシステムは、可用性および保全性を向上させる機能として公知である。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】秀和システム第一出版編集部/編著, 「最新標準パソコン用語事典 オールカラーPC/ICT完全図解 2013-2014年版」, 第1版, 秀和システム, 2013年4月, p.182(クライアントサーバーシステム), p.540(バッチ処理)
【発明の概要】
【発明が解決しようとする課題】
【0005】
インターネット利用者が大多数に及ぶ今日において、その大多数からの要求に対しネットワークシステムが確実に応答していくためには、その要求量に応じて増大する処理負荷にも耐えることが要件とされ、利用者の多いインターネットサービスにおいては、その負荷に対応すべく大規模かつ多額の費用をかけたシステム構築を強いられる。
【0006】
また、その要求元の利用者は、要求に対し応答が遅いときには同じ要求が再度繰り返される傾向にあり、これにより要求量は倍加し、ネットワークの負荷が高いほどより一層の負荷が発生しやすく、悪循環に陥りがちである。
【0007】
さらに、悪意のある要求元による攻撃的な一斉要求は通常の運用から逸脱した突発的な負荷要因であり、その規模が想定しづらく、設備増強で対抗するにも限界がある。
【0008】
本発明は、そのネットワークシステムにかかる負荷について、同一通信相手による多重要求や悪意のある要求元への対策も含め包括的に抑制させる手段を示す。
【課題を解決するための手段】
【0009】
従来の典型的なクライアントサーバ型ネットワークシステムでは、
図2に示される基本仕様として、通信相手からの要求に対応する処理を直ちに実行して結果を応答することが前提の仕組みとなっている。
【0010】
本発明に係る処理制御システム1は、
図3に示すようにネットワークシステム2とバックエンドシステム3に分けられ、記憶機能7を介して双方を連携させることで要求に対応する処理の遅延実行を可能とし、通信動作としての負荷を最小限に抑える。
【0011】
記憶機能7には、
図8に示すように利用者情報群12・要求情報群13・未処理の要求群14・実行中の要求群15を保持する。
【0012】
利用者情報群12には、
図4に示される利用者情報6が不特定数保持され、一意の利用者符号8によって対応する利用者情報6が特定される。この利用者情報6に含まれる信用情報11については、各々のシステム仕様に定める要素で構成され、その仕様に定めるタイミングで記録される。
【0013】
要求情報群13には、
図6に示される要求情報4が不特定数保持され、一意の要求符号9によって対応する要求情報4が特定される。この要求情報4に含まれる要求内容・指示内容・処理結果については、各々のシステム仕様に定める要素で構成されるものとする。
【0014】
未処理の要求群14には、要求情報群13のうち未処理状態の要求情報4のみ、当該の要求符号9が保持される。
【0015】
実行中の要求群15には、要求情報群13のうち実行中または中断状態の要求情報4のみ、当該の要求符号9が保持される。
【0016】
通信相手からの要求を受けたネットワークシステム2は、
図9に示される手順で手続きを行い、要求符号9・進捗状況5・処理結果を応答する。このうち、利用者符号8の特定動作・信用情報11の確認動作・要求の多重受付可否判断・要求が遮断されたときの応答内容については、各々のシステム仕様に定めるものとする。
【0017】
利用者情報6の新規生成により記憶機能7の使用量が過剰に増える惧れのあるときは、利用者符号8の特定できない要求を遮断することにより、既存の利用者に対するサービスの維持を図る。
【0018】
要求情報4の新規生成により記憶機能7の使用量が過剰に増える惧れのあるときは、その要求を遮断するとともに、悪質である場合は各々のシステム仕様に定めるところにより当該の信用情報11への記録を行うことで、次回以降の要求時に信用判断の根拠とできる。
【0019】
要求情報群13に保持されているそれぞれの要求情報4に対応する処理の進捗は、バックエンドシステム3により
図5にて示される遷移にて示され、当該の進捗状況5に反映される。併せて、処理完了であればその結果、偽装完了であれば偽りの結果、却下・中断・中止であればその理由が当該の処理結果に反映される。
【0020】
通信相手は、応答により得られた要求符号9をもって、要求先のネットワークシステム2へ進捗を問い合わせ、進捗状況5および処理結果を受け取ることができる。このときの進捗状況5の状態について、
図5にて示されるもののほか、要求符号9に対応する要求情報4が存在しないときは破棄済とする。
【0021】
通信相手は、応答により得られた要求符号9をもって、要求先のネットワークシステム2に追加の指示を送信できる。この指示を受理するかについては、各々のシステム仕様に定めるものとする。
【0022】
従来の典型的なバッチ処理システムでは、記憶機能によって保持されている要求を一括処理する仕組みだが、本発明に係る未処理の要求群14は、バックエンドシステム3より
図10に示される手順で要求符号9を一つずつ取り出され、対応する要求情報4について実行可否または保留の判断が行われる。また、処理の実行も非同期で行われ、各々のシステム仕様の許す限り追加の要求受付が並列で行える。
【0023】
バックエンドシステム3は、実行中状態の要求情報4について、異常により処理が続行できなくなったときは、その復帰可能性を判断したうえで、当該の進捗状況5に対し中断または中止を示す。そして中断状態の処理が復帰可能になったときは再び実行中を示し、復帰を断念するときは中止を示す。
【0024】
処理中断を確認した通信相手は、要求符号9をもってネットワークシステム2に対し追加の指示を送信することで復帰の機会を与える。
【0025】
バックエンドシステム3は、完了・中止・却下・偽装完了となった要求について、利用者符号8に対応する要求情報4に保持されている受付中の要求10の内容より要求符号9を削除する。ただし、偽装完了のときは要求符号9をあえて残すことで、同じ通信相手からの追加要求を重複要求と同様の手順で遮断できる。
【0026】
通信相手に応答済の処理結果については、要求情報群13より当該の要求情報4を削除できるが、実際に削除するかは各々のシステム運用手順に基づくものとする。
【発明の効果】
【0027】
通信相手からの要求に対しネットワークシステム2の役割を必要最小限に抑えることで、可能な限り最短で応答することができ、より多くの要求に応えられるようになると同時に、通信相手側へのスループットを向上させることで過剰な再要求の緩和が見込める。
【0028】
不特定多数の通信相手からの一斉要求を遮断できる機能を設けることで、既存の利用者に対する可用性を確保できる。
【0029】
要求情報4を記憶機能7に保持することで、要求に対応する処理の実行タイミングを自在に制御できるようになり、処理の過剰な多重実行を防ぐことで、小規模のシステムでも信頼性・可用性が向上される。
【0030】
バックエンドシステム3を設けることで、より負荷の高い処理にも適応し、保全性の向上に役立つ。
【0031】
要求情報4に利用者符号8を添えることで、バックエンドシステム3は利用者符号8にひもづいた信用情報11をもとにより信用判断を行うことができ、保全性・機密性の向上に役立つ。
【0032】
要求情報4に基づく処理に対しその進捗を記憶機能7に保持することで、システム管理者はその挙動を容易に把握することができ、保守性の向上に役立つ。
【0033】
要求情報4に基づく処理に対し異常中断機能を設けることで、通信相手に要求を再実行させる代わりに中断要因を解消させる目的に絞った対話を可能とし、この一連の処理内容が削減されることにより可用性・保全性・機密性の向上に役立つ。
【0034】
悪意のある要求に対し却下の代わりに偽装完了として応答することで、攻撃元による再攻撃の緩和を図る。
【0035】
ネットワークシステム2・バックエンドシステム3・記憶機能7の役割分担により、それぞれの負荷要因が限定されることで、システム規模が見積もりやすく、必要最小限の費用で可用性を確保することができる。
【図面の簡単な説明】
【0036】
【
図1】ネットワーク処理制御システム1と通信相手との関係を示す配置図
【
図2】従来の典型的なクライアントサーバ型ネットワークシステムにおいて、通信相手の要求から処理完了までの動作を示すシーケンス図
【
図3】本発明によるネットワーク処理制御システム1において、通信相手の要求から処理完了までの動作を示すシーケンス図
【
図4】通信相手と利用者情報6のひもづけを示す配置図
【
図5】要求情報4における進捗状況5の状態を示すステート図
【
図6】要求情報4の内容に対し、ネットワークシステム2とバックエンドシステム3のアクセス要因を示すオブジェクト図
【
図7】ネットワークシステム2が能動的な送信機能を持つときのネットワーク処理制御システム1において、通信相手の要求から処理完了までの動作を示すシーケンス図
【
図9】通信相手からの要求に対するネットワークシステム2の基本手順を示すアクティビティ図
【
図10】稼働中のバックエンドシステム3の基本手順を示すアクティビティ図
【発明を実施するための形態】
【0037】
本発明を未実施の形態では
図2のような構成となっており、このネットワークシステムは実施に向け、
図3に示されるネットワークシステム2へ移行できる。また、新規のシステムにて実施する場合においても、同様に従来構成のネットワークシステムを基本としてネットワークシステム2を構築する。
【0038】
ネットワークシステム2より読み書きアクセスが可能な記憶機能7を用意し、またこの記憶機能7へ読み書きアクセス可能な新規のプログラムをバックエンドシステム3とする。
【0039】
本発明を実施過程のネットワークシステム2より、それぞれの要求に対応する動作とその入力仕様に合わせ、要求内容の仕様を定義する。
【0040】
本発明を実施過程のネットワークシステム2より、それぞれの要求に対応する動作を単体のプログラムで実行できるように手順を組み替える。また、これらの処理について、バックエンドシステム3より要求情報4を参照して起動させ、進捗や結果を要求情報4に書き込めるように書き変える。
【0041】
バックエンドシステム3にて、
図10に示される手順を実装する。
【0042】
ネットワークシステム2にて、
図9に示される手順を実装し、従来の手順より移行する。
【0043】
通信相手側動作について、要求から得た応答時点では処理未完了という前提で、その処理の成否が判明するまで後続の動作を保留できるよう変更しなければならない。この変更は通信プロトコルの仕様に応じ、
図7に示されるようにネットワークシステム2が成否を確認できたとき通信相手に対し能動的な通知を行うか、
図3に示されるように通信相手によるネットワークシステム2への成否問い合わせに対する応答として受動的に知らされることで通信相手はその成否を把握し、後続の動作を再開させる手順となる。
【0044】
システム管理者は、要求頻度と応答時間からネットワークシステム2の適切なシステム規模を調整し、実行中の要求群15の増減を把握することでバックエンドシステム3や記憶機能7の適切なシステム規模を調整する。
【産業上の利用可能性】
【0045】
インターネット普及以来、コンピュータシステムのオンライン化は日常的な道具となっており、技術革新の勢いは日進月歩といえるが、その表面的な部分の裏で、基礎的な安全性に対する認識は進歩が鈍く、今日においても諸々の不具合により運用に支障が生じ、場合により多額の損失を被る事態は後を絶たない。ここにおいて本発明は、これらの不具合により脅かされる可用性・保守性・保全性・機密性の向上に有用となる。
【0046】
可用性向上の例としては、不特定多数による一斉要求が発生する場合。これが正規の利用者によるものか、不正な攻撃的要求であるかを、利用者符号8への記録という動作で可視化し、ネットワークシステム2による新規利用者や要求の遮断およびバックエンドシステム3による要求の却下・偽装完了機能により、正規利用者へのサービス維持を図れる。
【0047】
保守性向上の例としては、要求に対応する処理それぞれの進捗が記憶機能7に保持され、これをもって事後に答え合わせを行うことで、処理に不具合が発生した場合でもシステム管理者がこれを容易に把握でき、適切な対応がとれるようになる。
【0048】
保全性向上の例としては、オンラインショッピングにて決済までは済ませたがそこで通信が途切れて商品の購入まで処理が完了していなかったという典型的なトラブルに対し、本発明においては一連の処理を通信とは無関係なバックエンドシステム3で行うことで、処理の一貫性を確保できる。
【0049】
機密性向上の例としては、パスワードクラックのような攻撃に対し、その挙動が記憶機能7に保持されることで把握しやすくなるほか、偽装完了による応答でさらなる試行を妨げることができる。
【符号の説明】
【0050】
1 処理制御システム
2 ネットワークシステム
3 バックエンドシステム
4 要求情報
5 進捗状況
6 利用者情報
7 記憶機能
8 利用者符号
9 要求符号
10 受付中の要求
11 信用情報
12 利用者情報群
13 要求情報群
14 未処理の要求群
15 実行中の要求群