2022-004142
ネットワークシステムの制御方法および制御装置
- 審判番号
- 2022-004142
- 法域
- 特許
- 審判種別
- 拒絶査定不服審判(拒絶査定不服の審決)
- 出願番号
- 特願2020-066494外部サイト(J-PlatPat)へ移動します
- 請求日
- 2022年03月18日
- 審決日
- 2022年10月11日
- 公報発行日
- 2022年11月25日
- 結論
- 原査定取消(特許/登録すべき)
- 分類
- P18 .161-WY (H04L)
- 条文(本文から自動抽出・参考)
- 特許法第29条の2
- データ出所
- 審決公報(XML)
事件の表示
結論
理由
目次 ▾ 10項目
第1 手続の経緯
折りたたみ中(クリックで表示)
本願は、2017年(平成29年)3月27日(優先権主張 平成28年3月31日)を国際出願日とする出願である特願2018-509293号の一部を令和2年4月2日に新たな特許出願としたものであって、その手続の経緯は次のとおりである。
出
第2 原査定の概要
原査定(令和3年12月14日付け拒絶査定)の概要は次のとおりである。
本願請求項1~10に係る発明は、その出願の日前(当審注:本願の優先日前)の特許出願であって、その出願後(当審注:本願の優先日後)に出願公開がされた特願2015-105287号(特開2016-220126号)の願書に最初に添付された明細書、特許請求の範囲又は図面(以下、「先願明細書等」という。)に記載された発明と同一であり、しかも、この出願の発明者がその出願前の特許出願に係る上記の発明をした者と同一ではなく、またこの出願の時において、その出願人が上記特許出願の出願人と同一でもないので、特許法第29条の2の規定により、特許を受けることができない。
第3 本願発明
本願請求項1~10に係る発明(以下、それぞれ「本願発明1」~「本願発明10」という。)は、令和4年3月18日に提出された手続補正書により補正された特許請求の範囲の請求項1~10に記載された事項により特定される発明であり、本願発明1,6は、次のとおりの発明である。
「【請求項1】仮想ネットワーク機能が動作するサーバを含むネットワークの制御装置であって、前記サーバがプログラム可能論理回路に対応しているかどうかの情報と、前記サーバで起動する仮想マシンと、前記サーバの仮想マシンで実現する仮想ネットワーク機能と、の対応関係を記憶する記憶手段と、前記対応関係に基づいて、少なくとも前記仮想マシンと当該仮想マシンが動作する前記プログラム可能論理回路とをそれぞれ制御する制御手段と、を有し、前記制御手段が、前記プログラム可能論理回路の更新に応じ、前記プログラム可能論理回路で動作している仮想マシンの処理すべきデータ処理を、前記プログラム可能論理回路と当該サーバのCPU(Central Processing Unit)とで共通のメモリを介して、前記CPUに代行させること特徴とする制御装置。」
「【請求項6】仮想ネットワーク機能が動作するサーバを含むネットワークの制御方法であって、前記サーバがプログラム可能論理回路に対応しているかどうかの情報と、前記サーバで起動する仮想マシンと、前記サーバの仮想マシンで実現する仮想ネットワーク機能と、の対応関係を記憶し、制御手段が、前記対応関係に基づいて、少なくとも前記仮想マシンと当該仮想マシンが動作する前記プログラム可能論理回路とをそれぞれ制御し、前記制御手段が、前記プログラム可能論理回路の更新に応じ、前記プログラム可能論理回路で動作している仮想マシンの処理すべきデータ処理を、前記プログラム可能論理回路と当該サーバのCPU(Central Processing Unit)とで共通のメモリを介して、前記CPUに代行させる、ことを特徴とする制御方法。」
なお、本願発明2~5は、本願発明1を減縮した発明であり、本願発明7~10は、本願発明6を減縮した発明である。
第4 先願明細書等の記載、先願発明
1 先願明細書等の記載
原査定の拒絶の理由にて引用された特願2015-105287号(特開2016-220126号)の先願明細書等には、次の事項が記載されている(下線は当審による。)。
「【0016】図1は、本発明の第1の実施例を示し、本発明を適用するネットワーク処理システムの一例を示すブロック図である。なお、本発明の実施例は、図1に示したようなネットワークにおける通信装置に適用した場合を一例として記載するが、本発明の実施例は以下に記載した構成に限定されるものではない。他のネットワークであっても本発明を適用することで同等の効果が得られる。【0017】図1において、基地局(図中eNB:eNodeB)2は、図示しないユーザ端末と通信し、基地局2はネットワークを構成する通信装置30-1~30-4を介してサーバ6との間でパケットを転送する。なお、以下では、通信装置30-1~30-4の全体を指すときには「-」のない符号30で示す。他の構成要素の符号も同様である。【0018】ネットワーク処理システムは、ネットワーク管理サーバ20と、管理ネットワーク40と、4つの通信装置30-1、30-2、30-3、30-4から成る。各通信装置30は、管理ネットワーク40を介してネットワーク管理サーバ20で管理される。ネットワーク管理サーバ20は、保守端末21に接続されて、設定情報等の受け付けや、演算結果の出力等を行う。【0019】通信装置30-1は、2つのネットワークソフトウェア実行部(図中ソフト実行部)31-1、31-2と、2つのプログラマブルネットワーク処理部(図中PNW処理部)32-1、32-2と、1つのパケット振り分け部(第1の振り分け部)33と、装置コントローラ34とで構成される。他の通信装置30-2、30-3、30-4については説明を省略するが、通信装置30-1と同様の構成である。ただし、ネットワークソフトウェア実行部(第1のネットワーク処理部)31とプログラマブルネットワーク処理部(第2のネットワーク処理部)32の数は互いに異なっていてもよい。また、通信装置30は、少なくともひとつのネットワークソフトウェア実行部31を有し、必用に応じてプログラマブルネットワーク処理部32やネットワークソフトウェア実行部31を追加することができる。すなわち、通信装置30内では、ネットワークソフトウェア実行部31がネットワーク処理のサーバとして機能し、ネットワークソフトウェア実行部31はアクセラレータとして機能する。なお、ネットワークソフトウェア実行部31-1に加えてネットワークソフトウェア実行部31-2を追加した場合、ネットワークソフトウェア実行部31-2は、アクセラレータとして機能する。」
「【0024】ネットワークソフトウェア実行部31には、CPUやNP(ネットワークプロセッサ)などが使用される。汎用プロセッサであるCPUは、プログラム化された複数の異なるネットワーク処理のうち任意の処理を選択して実行することができる。すなわち、ネットワークソフトウェア実行部31は、実行するプログラムを変更することで、異なる処理を行うことが可能なソフトウェア・アクセラレータとして機能することができる。【0025】プログラマブルネットワーク処理部32には、回路の再構成が可能なFPGAが使用される。FPGAは異なるネットワーク処理機能をもつ複数の回路プログラムから、任意のプログラムを選択して所定の回路構成を実現することができる。すなわち、プログラマブルネットワーク処理部32は、適用する回路を変更することで、異なる処理を行うことが可能なハードウェア・アクセラレータとして機能する。【0026】例えば、あるネットワーク処理機能に対してソフトウェアプログラムと回路プログラムの両方を用意しておけば、そのネットワーク処理機能を実行するネットワーク処理リソース(実行リソース)を増設でき、さらには実行リソースをネットワークソフトウェア実行部31とプログラマブルネットワーク処理部32のいずれかで切り替えることができる。」
「【0029】図2は、通信装置30-1の具体的な構成の一例を示すブロック図である。通信装置30-1は、カードスロット35-1~35-4に挿入されたネットワークソフトウェア実行部31-1、31-2及びプログラマブルネットワーク処理部32-1、32-2と、ネットワークソフトウェア実行部31とプログラマブルネットワーク処理部32へパケットを振り分けるパケット処理部57と、ネットワーク管理サーバ20からの指令に基づいてパケット処理部57とネットワークソフトウェア実行部31とプログラマブルネットワーク処理部32を制御する装置コントローラ34を含む。」
「【0034】ネットワークソフトウェア実行部31-1、31-2はカードの形態であり、カードコントローラ161と、受信回路155と、パケット振り分け部(第2の振り分け部)158と、複数の処理部59-1、59-2、…、59-nと、パケット多重部160と、送信回路56とを含む。なお、ネットワークソフトウェア実行部31-1、31-2は同一の構成であるので、ネットワークソフトウェア実行部31-1のみについて説明する。【0035】本実施例1では、処理部59を、仮想計算機(VM:Virtual Machine)で構成した例を示す。すなわち、ネットワークソフトウェア実行部31は、CPUとメモリを含んで、複数の仮想計算機が所定のソフトウェアを実行することでパケットを処理する。」
「【0064】<ネットワーク管理サーバの構成>図4はネットワーク管理サーバ20の構成の一例を示すブロック図である。ネットワーク管理サーバ20は、CPU70と、メモリ71と、ストレージ装置75と、通信装置制御インタフェース91と、保守端末接続インタフェース92とを含む。【0065】メモリ71には、利用状況監視部(稼働状態監視部)72と、コア管理部(構成管理部)73と、モジュール管理部74から成るネットワーク処理部171が格納されて、CPU70によって実行される。ストレージ装置75には、コア資源管理データベース81と、コア機能管理データベース82と、処理機能グループ管理データベース83と、モジュールデータベース84と、コアコスト管理データベース231と、コストルールデータベース232と、振り分けテーブル233から成るデータベースが格納される。」
「【0075】<ネットワーク管理サーバのデータベースの構成>ネットワーク管理サーバ20のコア資源管理データベース81には、ネットワーク処理リソースの実体と処理性能が格納される。図5は、コア資源管理データベース81の一例を示す図である。【0076】続きを表示(全17行)コア資源管理データベース81は、通信装置30の識別子を格納する装置ID101と、通信装置30内のカードの識別子を格納するカードID102と、カードの種別を格納するコア種別103と、当該コア種別103の処理部59、62の数を格納するコア数104と、コア数104のうち使用中の処理部59、62の数を格納する利用コア数105と、処理部59、62のひとつ当たりの処理性能を示す指標を格納するコアあたりの性能106からひとつのエントリが構成される。【0077】装置ID101とカードID102は、ネットワーク処理リソースが格納された通信装置30の識別子と、ネットワークソフトウェア実行部31やプログラマブルネットワーク処理部32等の通信装置30内のネットワーク処理リソースの識別子である。これらの識別子により、ネットワーク処理リソースの物理的な位置を特定できる。【0078】コア種別103は、当該ネットワーク処理リソースの種類を示し、本実施例1ではネットワークソフトウェア実行部31(CPU)とかプログラマブルネットワーク処理部32(FPGA)の何れかで表す例を示した。【0079】コア数104と、利用コア数105は、当該ネットワーク処理リソースが有する処理部の数と、現在利用されている処理部の数を示す。ネットワークソフトウェア実行部31(CPU)の場合、処理部59は例えばVMで構成され、FPGAの場合、処理部62はFPGA内に形成される処理ブロックである。【0080】コアあたりの性能106は、当該ネットワーク処理リソースの処理部59、62の1つあたりが提供する最大処理性能である。本実施例1で、ネットワークソフトウェア実行部31とプログラマブルネットワーク処理部32の種類が1つずつしかない場合など、コア種別103によってコアあたりの性能106が一意に決まる場合は、コア種別103に格納された種別によって、コア数104の数に基づいて、カード1つあたりの最大処理性能をコア管理部73等で決定することができる。図示の例では、コアあたりの性能106として、単位時間で処理可能なビット数(bps)で表す例示したが、これに限定されるものではない。他にも収容可能なパケットアドレスの数などがある。【0081】コア資源管理データベース81のコア数104及び利用コア数105は、利用状況監視部72が所定のタイミングで通信装置30の装置コントローラ34から取得した値が設定される。また、コア種別103やコアあたりの性能106は、管理者などが予め設定した値である。【0082】次に、コア機能管理データベース82には、ネットワーク処理リソースの処理部59、62ごとに実行するネットワーク処理機能が格納される。図6は、コア機能管理データベース82の一例を示す図である。」
「【0110】<ネットワーク処理リソースの制御>図9A、図9Bは、ネットワーク管理サーバ20のネットワーク処理部171(利用状況監視部72、コア管理部73、モジュール管理部74)で行われる処理の一例を示すフローチャートである。この処理は、所定の周期で実行される。」
「【0121】ステップ215は、後述するようにコア管理部73が、ハードアシスト解除処理を実施する。この処理によって、ネットワーク処理実行リソースをプログラマブルネットワーク処理部32からネットワークソフトウェア実行部31に変更する。ネットワーク処理部171は、ハードアシスト解除処理が完了すると処理を終了する。」
「【0169】<ハードアシスト解除処理>以下に、図9Bのステップ215で行われるハードアシスト解除処理の詳細な例を説明する。【0170】続きを表示(全13行)まず、コア管理部73は、処理機能グループ管理データベース83を参照してハードアシストの解除対象の処理コアID123の利用帯域125を取得し、利用帯域の総和を算出する。【0171】そして、コア管理部73が、コア資源管理データベース81にアクセスし、コア種別103が「CPU」で、且つコア数104が利用コア数105より必要数以上大きいカードID102のネットワークソフトウェア実行部31を選択して「移譲先カード」とする。【0172】ここで、必要数とは、ハードアシストの解除対象のプログラマブルネットワーク処理部32が処理している利用帯域125を、ネットワークソフトウェア実行部31で処理するために必要な処理部59の数である。【0173】コア管理部73は、コア資源管理データベース81の「移譲先カード」のエントリに対し、利用コア数105の値を移譲先として使用する処理部59の数だけ増加させる。すなわち、コア管理部73は、利用帯域の総和を満たす必要数だけ利用コア数105を増加する。【0174】そして、コア管理部73は、コア機能管理データベース82にアクセスし、「移譲先カード」に該当するカードID822のネットワークソフトウェア実行部31が有するコアID111の中から状態113が「無効」となっている処理部59を必要数だけ「移譲先コア」として選択する。」
「【図1】[図:0001390452000001.jpg]【図2】[図:0001390452000002.jpg]」
「【図5】[図:0001390452000003.jpg]【図6】[図:0001390452000004.jpg]」
2 先願発明
上記1から、先願明細書等には、次の発明(以下、「先願発明」という。)が記載されていると認められる。
「ネットワーク管理サーバ20と、管理ネットワーク40と、4つの通信装置30-1、30-2、30-3、30-4から成るネットワーク処理システムであって、各通信装置30は、管理ネットワーク40を介してネットワーク管理サーバ20で管理され、通信装置30は、少なくともひとつのネットワークソフトウェア実行部31を有し、必用に応じてプログラマブルネットワーク処理部32やネットワークソフトウェア実行部31を追加することができ、すなわち、通信装置30内では、ネットワークソフトウェア実行部31がネットワーク処理のサーバとして機能し、ネットワークソフトウェア実行部31には、CPUが使用され、汎用プロセッサであるCPUは、プログラム化された複数の異なるネットワーク処理のうち任意の処理を選択して実行することができ、続きを表示(全18行)プログラマブルネットワーク処理部32には、回路の再構成が可能なFPGAが使用され、FPGAは異なるネットワーク処理機能をもつ複数の回路プログラムから、任意のプログラムを選択して所定の回路構成を実現することができ、ネットワークソフトウェア実行部31-1、31-2は、複数の処理部59-1、59-2、・・・、59-nを含み、処理部59を、仮想計算機で構成し、ネットワーク管理サーバ20は、CPU70と、メモリ71と、ストレージ装置75と、通信装置制御インタフェース91と、保守端末接続インタフェース92とを含み、メモリ71には、利用状況監視部(稼働状態監視部)72と、コア管理部(構成管理部)73と、モジュール管理部74から成るネットワーク処理部171が格納されて、CPU70によって実行され、ストレージ装置75には、コア資源管理データベース81と、コア機能管理データベース82と、処理機能グループ管理データベース83と、モジュールデータベース84と、コアコスト管理データベース231と、コストルールデータベース232と、振り分けテーブル233から成るデータベースが格納され、コア資源管理データベース81は、通信装置30の識別子を格納する装置ID101と、通信装置30内のカードの識別子を格納するカードID102と、カードの種別を格納するコア種別103と、当該コア種別103の処理部59、62の数を格納するコア数104と、コア数104のうち使用中の処理部59、62の数を格納する利用コア数105と、処理部59、62のひとつ当たりの処理性能を示す指標を格納するコアあたりの性能106からひとつのエントリが構成され、コア種別103は、ネットワークソフトウェア実行部31(CPU)とかプログラマブルネットワーク処理部32(FPGA)の何れかで表し、コア機能管理データベース82には、ネットワーク処理リソースの処理部59ごとに実行するネットワーク処理機能が格納され、ネットワーク管理サーバ20のネットワーク処理部171で行われる処理において、コア管理部73が、ハードアシスト解除処理を実施し、この処理によって、ネットワーク処理実行リソースをプログラマブルネットワーク処理部32からネットワークソフトウェア実行部31に変更し、ハードアシスト解除処理において、コア管理部73が、コア資源管理データベース81にアクセスし、ネットワークソフトウェア実行部31を選択して「移譲先カード」とし、コア管理部73は、コア機能管理データベース82にアクセスし、「移譲先カード」に該当するカードID822のネットワークソフトウェア実行部31が有するコアID111の中から処理部59を必要数だけ「移譲先コア」として選択する、ネットワーク処理システムにおける、ネットワーク管理サーバ20。」
第5 対比・判断
1 本願発明1について
(1)対比
ア 本願発明1と先願発明とを対比すると、次のことがいえる。
(ア)先願発明では、「通信装置30」が、「少なくともひとつのネットワークソフトウェア実行部31を有し、必用に応じてプログラマブルネットワーク処理部32やネットワークソフトウェア実行部31を追加することができ、すなわち、通信装置30内では、ネットワークソフトウェア実行部31がネットワーク処理のサーバとして機能」し、また、「ネットワークソフトウェア実行部31」の「CPU」が、「プログラム化された複数の異なるネットワーク処理のうち任意の処理を選択して実行することができ」るから、「通信装置30」は、「ネットワーク処理」が「プログラム化」されて「ネットワーク処理のサーバとして機能」する部分(「ネットワークソフトウェア実行部31」)を含むものである。そうすると、先願発明の「通信装置30」は、本願発明1の「仮想ネットワーク機能が動作するサーバ」に相当する。
(イ)先願発明の「ネットワークソフトウェア実行部31-1、31-2」が「複数の処理部59-1、59-2、・・・、59-nを含み、処理部59を、仮想計算機で構成」することについて、上記(ア)を踏まえると、先願発明の「処理部59」は、本願発明1の「前記サーバで起動する仮想マシン」に相当する。
(ウ)先願発明の「プログラマブルネットワーク処理部32」は、「回路の再構成が可能なFPGAが使用され」るものであり、また、「ネットワーク管理サーバ20」は、「ストレージ装置75」を含み、「ストレージ装置75」には、「コア資源管理データベース81と、コア機能管理データベース82」が「格納される」ものである。
また、先願発明では、「コア資源管理データベース81」が、「通信装置30の識別子を格納する装置ID101と、通信装置30内のカードの識別子を格納するカードID102と、カードの種別を格納するコア種別103」等から「エントリが構成され」ること、「コア種別103」が、「ネットワークソフトウェア実行部31(CPU)とかプログラマブルネットワーク処理部32(FPGA)の何れかで表」すこと、及び、「コア機能管理データベース82」が、「ネットワーク処理リソースの処理部59ごとに実行するネットワーク処理機能が格納され」るものであることが、それぞれ特定されている。
ここで、先願発明の「通信装置30」が「少なくともひとつのネットワークソフトウェア実行部31を有し、必用に応じてプログラマブルネットワーク処理部32やネットワークソフトウェア実行部31を追加することができ」ることからすれば、ある「通信装置30」には「プログラマブルネットワーク処理部32」が存在しない場合があり得るから、「コア資源管理データベース81」の「コア種別103」は、「装置ID101」で表される「通信装置30」が「FPGA」(「プログラマブルネットワーク処理部32(FPGA)」)に対応しているかどうかを示すといえるものであり、先願発明の「FPGA」、「コア種別103」は、それぞれ、本願発明1の「プログラム可能論理回路」、「プログラム可能論理回路に対応しているかどうかの情報」に相当する。
また、先願発明の「ネットワーク処理機能」は、「処理部59ごとに実行する」、すなわち、「処理部59」で実現するものであって、上記(ア)、(イ)を踏まえると、本願発明1の「仮想ネットワーク機能」に相当し、先願発明の「ネットワーク処理リソースの処理部59ごとに実行するネットワーク処理機能が格納され」る「コア機能管理データベース82」は、「処理部59」と、「ネットワーク処理機能」との対応関係を示すものといえる。
以上の点について、上記(ア)、(イ)で更に検討した点を踏まえると、先願発明の「コア資源管理データベース81と、コア機能管理データベース82」を合わせたものは、本願発明の「前記サーバがプログラム可能論理回路に対応しているかどうかの情報と、前記サーバで起動する仮想マシンと、前記サーバの仮想マシンで実現する仮想ネットワーク機能と、の対応関係」に相当し、また、「ネットワーク管理サーバ20」は、当該「対応関係」を記憶する「ストレージ装置75」を有するということができ、当該「ストレージ装置75」は、本願発明1の「記憶手段」に相当する。
よって、先願発明の「ネットワーク管理サーバ20」は、本願発明1の
「前記サーバがプログラム可能論理回路に対応しているかどうかの情報と、前記サーバで起動する仮想マシンと、前記サーバの仮想マシンで実現する仮想ネットワーク機能と、の対応関係を記憶する記憶手段」
に相当する構成を有するものである。
(エ)先願発明の「ハードアシスト解除処理」は、これによって、「ネットワーク処理実行リソースをプログラマブルネットワーク処理部32からネットワークソフトウェア実行部31に変更」するものであり、ここで、「プログラマブルネットワーク処理部32」は、「回路の再構成が可能なFPGAが使用され」る一方、「ネットワークソフトウェア実行部31-1、31-2」は「複数の処理部59-1、59-2、・・・、59-nを含み、処理部59を、仮想計算機で構成」するものであって、更に、「ネットワークソフトウェア実行部31には、CPUが使用され」るものである。
よって、先願発明の「ハードアシスト解除処理」は、少なくとも「処理部59」と「FPGA」とをそれぞれ制御する処理であって、「FPGA」の処理すべきデータ処理を、「処理部59」、具体的には、「ネットワークソフトウェア実行部31」の「CPU」に代行させるものであるといえる。
また、先願発明の「ハードアシスト解除処理」は、これにおいて「コア管理部73が、コア資源管理データベース81にアクセス」すること及び「コア管理部73は、コア機能管理データベース82にアクセス」することがなされるから、「コア資源管理データベース81」及び「コア機能管理データベース82」に基づいて行われるといえる。
そして、先願発明において、「ハードアシスト解除処理」は、「ネットワーク管理サーバ20のネットワーク処理部171で行われる処理において」行われるものであり、「ネットワーク処理部171」は、「ネットワーク管理サーバ20」が「含」む「CPU70によって実行され」るから、「ハードアシスト解除処理」の実行主体は、「ネットワーク管理サーバ20」の「CPU70」である。
すなわち、先願発明の「ネットワーク管理サーバ20」は、「コア資源管理データベース81」及び「コア機能管理データベース82」に基づいて、少なくとも「処理部59」と「FPGA」とをそれぞれ制御する「CPU70」を有し、当該「CPU70」は、「ハードアシスト解除処理」として、「FPGA」の処理すべきデータ処理を「ネットワークソフトウェア実行部31」の「CPU」に代行させるものである。
そして、先願発明の「CPU70」は、本願発明1の「制御手段」に相当し、また、先願発明の「ネットワークソフトウェア実行部31」の「CPU」は、上記(ア)を踏まえると、本願発明1の「当該サーバのCPU(Central Processing Unit)」に相当する。
以上の点について、上記(イ)、(ウ)を踏まえると、先願発明の「CPU70」と、本願発明1の
「前記対応関係に基づいて、少なくとも前記仮想マシンと当該仮想マシンが動作する前記プログラム可能論理回路とをそれぞれ制御する制御手段」
とは、
「前記対応関係に基づいて、少なくとも前記仮想マシンと前記プログラム可能論理回路とをそれぞれ制御する制御手段」
である点で共通する。
また、先願発明の「ハードアシスト解除処理」と、本願発明1の
「前記制御手段が、前記プログラム可能論理回路の更新に応じ、前記プログラム可能論理回路で動作している仮想マシンの処理すべきデータ処理を、前記プログラム可能論理回路と当該サーバのCPU(Central Processing Unit)とで共通のメモリを介して、前記CPUに代行させる」
こととは、
「前記制御手段が、前記プログラム可能論理回路の処理すべきデータ処理を、前記CPUに代行させる」
ことである点で共通する。
(オ)先願発明の「ネットワーク管理サーバ20」は、上記(ア)、(エ)を踏まえると、後述する相違点は別として、本願発明1の
「仮想ネットワーク機能が動作するサーバを含むネットワークの制御装置」
に相当する。
イ 上記アから、本願発明1と先願発明との間には、次の一致点、相違点があるといえる。
(一致点)
「仮想ネットワーク機能が動作するサーバを含むネットワークの制御装置であって、前記サーバがプログラム可能論理回路に対応しているかどうかの情報と、前記サーバで起動する仮想マシンと、前記サーバの仮想マシンで実現する仮想ネットワーク機能と、の対応関係を記憶する記憶手段と、前記対応関係に基づいて、少なくとも前記仮想マシンと前記プログラム可能論理回路とをそれぞれ制御する制御手段と、を有し、前記制御手段が、前記プログラム可能論理回路の処理すべきデータ処理を、前記CPUに代行させる、制御装置。」
(相違点1)
「前記プログラム可能論理回路」について、本願発明1では、「仮想マシンが動作する」ものであるのに対して、先願発明では、そのように特定されるものではない点。
(相違点2)
本願発明1は、「前記プログラム可能論理回路」で「処理すべきデータ処理」を「前記CPUに代行させる」ことを、「前記プログラム可能論理回路の更新に応じ」て行うのに対して、先願発明は、「ハードアシスト解除処理」を、そのような条件で行うものではない点。
(相違点3)
本願発明1では、「前記CPUに代行させる」対象の「前記プログラム可能論理回路」で「処理すべきデータ処理」が、「前記プログラム可能論理回路で動作している仮想マシンの処理すべきデータ処理」であるのに対して、先願発明では、「ハードアシスト解除処理」の対象の「プログラマブルネットワーク処理部32」の処理が、そのような処理であると特定されるものではない点。
(相違点4)
本願発明1では、「前記プログラム可能論理回路で動作している仮想マシンの処理すべきデータ処理」を「前記CPUに代行させる」ことを、「前記プログラム可能論理回路と当該サーバのCPU(Central Processing Unit)とで共通のメモリを介して」行うのに対して、先願発明では、「ハードアシスト解除処理」における「ネットワーク処理実行リソースをプログラマブルネットワーク処理部32からネットワークソフトウェア実行部31に変更」する処理を、そのようにして行うと特定されるものではない点。
(2)判断
事案に鑑みて、相違点2について先に検討する。
本願発明1において、「前記プログラム可能論理回路の更新」は、当該発明の目的として行われることであって、これに「応じ」て「前記プログラム可能論理回路で動作している仮想マシンの処理すべきデータ処理」を「前記CPUに代行させる」ことは、「前記プログラム可能論理回路の更新」に伴って生じる課題(「データ処理」を続行すること)の解決手段であるものと解される。
これに対し、相違点2に係る「前記プログラム可能論理回路の更新」に対応する構成を有しない先願発明には、上記課題自体が存在しない。
そうすると、本願発明1は、上記課題が解決される点において先願発明には存在しない新たな効果を奏するものあって、相違点2は、課題解決のための具体化手段における微差であるとすることはできない。
よって、他の相違点について検討するまでもなく、本願発明1は、先願発明と実質的に同一であるとはいえない。
2 本願発明2~10について
本願発明2~5は、本願発明1を減縮した発明であり、本願発明6は、本願発明1に対応する「制御方法」の発明であって本願発明1と発明のカテゴリが相違するのみであり、本願発明7~10は、本願発明6を減縮した発明であるから、本願発明2~10はいずれも、相違点2に係る(対応する)発明特定事項を含む。そうすると、本願発明2~10も、本願発明1と同様に、先願発明と実質的に同一であるとはいえない。
第6 むすび
以上のとおり、請求項1~10に係る発明は、先願明細書等に記載された発明と同一ではないから、原査定の理由によっては、本願を拒絶することはできない。
また、他に本願を拒絶すべき理由を発見しない。
よって、結論のとおり審決する。
審決本文(J-PlatPat)
J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。
2022-004142