(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-26
(45)【発行日】2024-10-04
(54)【発明の名称】5Gおよび非5Gサービスエンドポイントに関連付けられるアドレスを能動的に発見および追跡するための方法、システム、ならびにコンピュータ可読媒体
(51)【国際特許分類】
H04L 61/4511 20220101AFI20240927BHJP
【FI】
H04L61/4511
(21)【出願番号】P 2022508581
(86)(22)【出願日】2020-05-28
(86)【国際出願番号】 US2020035004
(87)【国際公開番号】W WO2021040827
(87)【国際公開日】2021-03-04
【審査請求日】2023-05-11
(32)【優先日】2019-08-29
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502303739
【氏名又は名称】オラクル・インターナショナル・コーポレイション
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ゴエル,イェシュ
【審査官】中川 幸洋
(56)【参考文献】
【文献】国際公開第2019/144321(WO,A1)
【文献】米国特許第07451234(US,B1)
【文献】S. Cheshire and M. Krochmal,Apple's DNS Long-Lived Queries protocol draft-sekar-dns-llq-06,IETF,2019年08月22日
(58)【調査した分野】(Int.Cl.,DB名)
H04L 61/4511
(57)【特許請求の範囲】
【請求項1】
プロデューサネットワーク機能(NF)サービスエンドポイントに関連付けられるアドレスを発見および追跡するための方法であって、
要求側ノードから第1のドメイン名システム(DNS)解決要求を受信することと、
前記第1のDNS解決要求から抽出された完全修飾ドメイン名(FQDN)を用いてDNSサーバに問い合わせることと、
前記DNSサーバから第1の応答を受信することとを含み、前記第1の応答は、前記FQDNに関連付けられるプロデューサNFサービスエンドポイントに関連付けられるアドレスを含み、前記方法はさらに、
前記プロデューサNFサービスエンドポイントに関連付けられる前記アドレスをデータベースに格納することと、
前記プロデューサNFサービスエンドポイントに関連付けられる前記アドレスを前記要求側ノードに通信することと、
前記FQDNに関連付けられるアドレスにおける変更について前記FQDNを監視することと、
前記FQDNに関連付けられるアドレスにおける前記変更を前記要求側ノードに通知することとを含み、
前記FQDNを監視することは、
前記データベース内における前記プロデューサNFサービスエンドポイントに関連付けられる前記アドレスを格納するレコードの満了を検出することと、
前記レコードの満了の検出に応答して、前記FQDNを用いて前記DNSサーバに問い合わせることと、
前記DNSサーバから第2の応答を受信することと、
前記第2の応答内のアドレスを、前記データベース内の前記レコードに格納された前記FQDNに関連付けられる前記アドレスと比較することと、
前記第2の応答内の前記アドレスが前記データベース内の前記レコードに格納された前記FQDNに関連付けられる前記アドレスと異なることに応答して、前記FQDNに関連付けられるアドレスにおける変更が発生したと判定することとを含む、方法。
【請求項2】
前記要求側ノードから前記第1のDNS解決要求を受信することは、サービス通信プロキシ(SCP)から前記第1のDNS解決要求を受信することを含む、請求項1に記載の方法。
【請求項3】
前記要求側ノードから前記第1のDNS解決要求を受信することは、コンシューマNFまたは非5Gサービスコンシューマから前記第1のDNS解決要求を受信することを含む、請求項1に記載の方法。
【請求項4】
前記第1のDNS解決要求を受信することは、DNS発見部マイクロサービスによって提供される表現状態転送(REST)サーバインターフェイスにおいて前記第1のDNS解決要求を受信することを含む、請求項1~3のいずれか1項に記載の方法。
【請求項5】
前記DNSサーバに問い合わせることは、前記要求側ノードおよび前記DNSサーバからは分離したDNS発見部マイクロサービスから前記DNSサーバに問い合わせることを含む、請求項1~4のいずれか1項に記載の方法。
【請求項6】
前記プロデューサNFサービスに関連付けられる前記アドレスを格納することは、前記DNS発見部マイクロサービスにローカルなデータベースに前記アドレスを格納することを含む、請求項4に記載の方法。
【請求項7】
前記プロデューサNFサービスエンドポイントに関連付けられる前記アドレスは、インターネットプロトコル(IP)アドレスまたはIPエンドポイントを含む、請求項1~6のいずれか1項に記載の方法。
【請求項8】
アドレスにおける変更について前記FQDNを監視することは、前記FQDNの監視を中止する前記要求側ノードからのメッセージに応答して停止されるまで、アドレスにおける変更について前記FQDNを継続的に監視することを含む、請求項1~7のいずれか1項に記載の方法。
【請求項9】
前記FQDNの監視を中止するための前記要求側ノードからの前記メッセージは、DELETEメソッドタイプを含み、応答して、前記FQDNの監視を中止する、第2のDNS解決要求を含む、請求項8に記載の方法。
【請求項10】
請求項1~9のいずれかに記載の方法をコンピュータに実行させるためのプログラム。
【請求項11】
請求項
10に記載のプログラムを格納したメモリと、
前記プログラムを実行するためのプロセッサとを備える、システム。
【発明の詳細な説明】
【技術分野】
【0001】
優先権主張
本出願は、2019年8月29日に提出された米国特許出願連続番号第16/555,817号の優先権利益を主張し、その開示は、参照によりその全体が本明細書に組み込まれる。
【0002】
技術分野
本明細書で説明する主題は、電気通信ネットワークにおけるサービスエンドポイントに関連付けられるアドレス情報を発見することに関する。より具体的には、本明細書で説明される主題は、5Gおよび非5Gサービスエンドポイントに関連付けられるアドレスを能動的に発見および追跡するための方法、システム、ならびにコンピュータ可読媒体に関する。
【背景技術】
【0003】
背景
電気通信ネットワークでは、サービスエンドポイントは、サービスコンシューマにサービスを提供するエンティティを一意に識別するネットワークノード上のアドレスである。サービスエンドポイントは、インターネットプロトコル(IP)アドレス、または、IPエンドポイントとも呼ばれる、IPアドレスとトランスポート層ポート番号との組み合わせを含むことができる。
【0004】
5G電気通信ネットワークでは、サービスを提供するネットワークノードは、プロデューサネットワーク機能(NF)と呼ばれる。サービスを消費するネットワークノードは、コンシューマNFと呼ばれる。ネットワーク機能は、それがサービスを消費しているか提供しているかに応じて、プロデューサNFおよびコンシューマNFの両方であり得る。
【0005】
所与のプロデューサNFは、多くのサービスエンドポイントを有し得る。プロデューサNFは、ネットワーク機能リポジトリ機能(NRF)に登録する。NRFは、利用可能なNFインスタンスのNFプロファイルおよびそれらのサポートされるサービスを維持する。コンシューマNFは、NRFに登録したプロデューサNFインスタンスに関する情報を受信するように加入することができる。
【0006】
コンシューマNFに加えて、NFサービスインスタンスに関する情報を受信するように加入することができる別のタイプのネットワークノードは、サービス通信プロキシ(SCP)である。SCPは、NRFに加入し、プロデューサNFサービスインスタンスに関する到達可能性およびサービスプロファイル情報を取得する。コンシューマNFは、サービス通信プロキシに接続し、サービス通信プロキシは、要求されるサービスを提供するプロデューサNFサービスインスタンス間でトラフィックを負荷分散させるか、またはトラフィックを宛先プロデューサNFに直接ルーティングする。
【発明の概要】
【発明が解決しようとする課題】
【0007】
既存の3GPPサービスアーキテクチャに関する1つの問題は、コンシューマNFまたはSCPが、プロデューサNFサービスインスタンスによって公開されるサービスエンドポイント間でトラフィックを負荷分散するのに不充分な情報を有する可能性があることである。あるシナリオでは、プロデューサNFは、そのFQDNをNFサービスレベルでのみ登録し、プロデューサNFサービスのドメイン名、IPアドレス、またはIPエンドポイントを個別に登録しない場合がある。別のシナリオでは、プロデューサNFは、そのFQDNをNFインスタンスレベルでのみ登録し、サービスのIPアドレスもしくはIPエンドポイントまたはFQDNをNFサービスレベルで個別に登録しない場合がある。
【0008】
これらのシナリオのいずれにおいても、コンシューマNFまたはSCPは、個々のサービスエンドポイントと連絡を取るために、サービスエンドポイントに関連付けられたIPアドレスまたはIPエンドポイントを取得しなければならない。一般に、ドメイン名に対応するIPアドレスまたはIPエンドポイントは、ドメイン名システム(DNS)を用いて判断することができる。上記の5Gネットワークアーキテクチャでは、サービスコンシューマは、NFがそのプロファイルを登録または更新するたびにサービスエンドポイントIPアドレスを通知される必要がある。コンシューマNFまたはSCPがサービスのIPアドレスまたはIPエンドポイントで更新される必要がある別のシナリオは、IPアドレスまたはIPエンドポイントが、対応するNFプロファイルまたはサービス更新なしで変化するときである。IPアドレスまたはIPエンドポイントがDNSを通じて発見可能であるにもかかわらず、サービスに関連付けられたIPアドレスまたはIPエンドポイントが変化したときにサービスコンシューマに通知するための自動化されたプロセスはない。
【0009】
したがって、5Gおよび非5Gサービスエンドポイントに関連付けられるアドレスを能動的に発見および追跡するための方法、システム、ならびにコンピュータ可読に対するニーズが存在する。
【課題を解決するための手段】
【0010】
概要
プロデューサネットワーク機能(NF)サービスエンドポイントに関連付けられるアドレスを発見および追跡するための方法は、要求側ノードから第1のドメイン名システム(DNS)解決要求を受信することを含む。本方法は、第1のDNS解決要求から抽出された完全修飾ドメイン名(FQDN)を用いてDNSサーバに問い合わせることをさらに含む。本方法は、DNSサーバから第1の応答を受信することをさらに含み、第1の応答は、FQDNに関連付けられるプロデューサNFサービスエンドポイントに関連付けられるアドレスを含む。本方法は、プロデューサNFサービスエンドポイントに関連付けられるアドレスをデータベースに格納することをさらに含む。本方法は、プロデューサNFサービスエンドポイントに関連付けられるアドレスを要求側ノードに通信することをさらに含む。本方法は、FQDNに関連付けられるアドレスにおける変更についてFQDNを監視することをさらに含む。本方法は、FQDNに関連付けられるアドレスにおける変更を要求側ノードに通知することをさらに含む。
【0011】
本明細書で説明する主題のある態様によれば、第1のDNS解決要求を受信することは、サービス通信プロキシ(SCP)から第1のDNS解決要求を受信することを含む。
【0012】
本明細書で説明する主題の別の態様によれば、第1のDNS解決要求を受信することは、コンシューマNFまたは非5Gサービスコンシューマから第1のDNS解決要求を受信することを含む。
【0013】
本明細書で説明する主題の別の態様によれば、第1のDNS解決要求を受信することは、DNS発見部マイクロサービスによって提供される表現状態転送(REST)サーバインターフェイスにおいて第1のDNS解決要求を受信することを含む。
【0014】
本明細書で説明される主題のさらに別の態様によれば、DNSサーバに問い合わせることは、コンシューマNFまたはSCPおよびDNSサーバからは分離したDNS発見部マイクロサービスからDNSサーバに問い合わせることを含む。この文脈では、「~からは分離した」とは、DNS発見部マイクロサービスが、ドメイン名を解決する必要があるコンシューマNFまたはSCPとは別であり、かつDNSサーバをホストするコンピューティングプラットフォームからも別であるコンピューティングプラットフォーム上に実現されることを意味する。代替実現例では、DNS発見部マイクロサービスは、コンシューマNFまたはSCPと同じコンピューティングプラットフォーム上で実現され得る。
【0015】
本明細書で説明される主題のさらに別の態様によれば、プロデューサNFサービスに関連付けられるアドレスを格納することは、そのアドレスを、DNS発見部マイクロサービスにローカルなデータベースに、DNSサーバから受信された各アドレスの寿命とともに、格納することを含む。
【0016】
本明細書で説明する主題のさらに別の態様によれば、寿命値とともにDNSサーバから受信されたすべてのアドレスについて、データベース内のレコードに格納されるときに、タイマが、寿命フィールドにおいて受信された期間について開始される。
【0017】
本明細書に記載の主題のさらに別の態様によれば、FQDNを監視することは、データベース内においてプロデューサNFサービスに関連付けられるアドレスを格納するレコードの満了を検出することと、レコードの満了の検出に応答して、FQDNを用いてDNSサーバに問い合わせることと、DNSサーバから第2の応答を受信することと、第2の応答内のアドレスをデータベース内のレコードに格納されたアドレスと比較することと、第2の応答内のアドレスがデータベース内のレコードに格納されたアドレスと異なることに応答して、FQDNに関連付けられるアドレスにおける変更が発生したと判定することとを含む。
【0018】
本明細書で説明する主題のさらに別の態様によれば、プロデューサNFサービスインスタンスに関連付けられるアドレスは、インターネットプロトコル(IP)アドレスまたはIPエンドポイントを含む。
【0019】
本明細書で説明される主題のさらに別の態様によれば、アドレスにおける変更についてFQDNを監視することは、FQDNの監視を中止する要求側ノードからのメッセージに応答して停止されるまで、アドレスにおける変更についてFQDNを継続的に監視することを含む。
【0020】
本明細書で説明される主題のさらに別の態様によれば、FQDNの監視を中止するための要求側ノードからのメッセージは、DELETEメソッドタイプを含み、応答して、FQDNの監視を中止する、第2のDNS解決要求を含む。
【0021】
本明細書で説明される主題のさらに別の態様によれば、DNS発見部マイクロサービスは、要求側ノードからFQDNの監視を中止するための表現状態転送(REST)サーバインターフェイスを含む。
【0022】
本明細書で説明される主題のさらに別の態様によれば、プロデューサネットワーク機能(NF)サービスエンドポイントを発見および追跡するためのシステムは、少なくとも1つのプロセッサを含むコンピューティングプラットフォームを備える。本システムはさらに、コンピューティングプラットフォーム上に位置し、少なくとも1つのプロセッサによって実現されるドメイン名システム(DNS)発見マイクロサービスを備え、ドメイン名システム(DNS)発見マイクロサービスは、第1のドメイン名システム(DNS)解決要求を受信することと、第1のDNS解決要求から抽出された完全修飾ドメイン名(FQDN)を用いてDNSサーバに問い合わせることと、DNSサーバから第1の応答を受信することとのために実現され、第1の応答は、FQDNに関連付けられるプロデューサNFサービスエンドポイントに関連付けられるアドレスを含み、ドメイン名システム(DNS)発見マイクロサービスはさらに、プロデューサNFサービスエンドポイントに関連付けられるアドレスをデータベースに格納することと、プロデューサNFサービスエンドポイントに関連付けられるアドレスを要求側ノードに通信することと、FQDNに関連付けられるアドレスにおける変更についてFQDNを監視することと、FQDNに関連付けられるアドレスにおける変更を要求側ノードに通知することとのために実現される。
【0023】
本明細書で説明する主題のさらに別の態様によれば、DNS発見部マイクロサービスは、サービス通信プロキシ(SCP)から第1のDNS解決要求を受信するように構成される。
【0024】
本明細書で説明する主題のさらに別の態様によれば、DNS発見部マイクロサービスは、コンシューマNFまたは非5Gサービスコンシューマからの第1のDNS解決要求に対して構成される。
【0025】
本明細書で説明する主題のさらに別の態様によれば、DNS発見部マイクロサービスは、要求側ノードから第1のDNS解決要求を受信するための表現状態転送(REST)サーバインターフェイスを含む。
【0026】
本明細書で説明する主題のさらに別の態様によれば、コンピューティングプラットフォームおよびDNS発見部マイクロサービスは、要求側ノードおよびDNSサーバから分離されている。
【0027】
本明細書に記載の主題のさらに別の態様によれば、データベースは、DNS発見部マイクロサービスにローカルである。
【0028】
本明細書で説明される主題のさらに別の態様によれば、DNS発見部マイクロサービスは、DNSレコード変更発見部を含み、DNSレコード変更発見部は、FQDNの監視を、データベース内におけるプロデューサNFサービスエンドポイントに関連付けられるアドレスを格納するレコードの満了を検出することと、レコードの満了の検出に応答して、FQDNを用いてDNSサーバに問い合わせることと、DNSサーバから第2の応答を受信することと、第2の応答内のアドレスをデータベース内のレコードに格納されたアドレスと比較することと、第2の応答内のアドレスがデータベース内のレコードに格納されたアドレスと異なることに応答して、FQDNに関連付けられるアドレスにおける変更が発生したと判定することととによって行うためのものである。
【0029】
本明細書で説明する主題のさらに別の態様によれば、プロデューサNFサービスエンドポイントに関連付けられるアドレスは、インターネットプロトコル(IP)アドレスまたはIPエンドポイントを含む。
【0030】
本明細書で説明される主題のさらに別の態様によれば、DNSレコード変更発見部は、FQDNの監視を中止するための要求側ノードからのメッセージに応答して停止されるまで、FQDNに関連付けられるアドレスにおける変更についてFQDNを継続的に監視するように構成される。
【0031】
本明細書に記載の主題のさらに別の態様によれば、コンピュータのプロセッサによって実行されると複数のステップを実行するようにコンピュータを制御する実行可能命令を記憶した非一時的なコンピュータ可読媒体が提供される。当該複数のステップは、要求側ノードから第1のドメイン名システム(DNS)解決要求を受信することを含む。本方法は、第1のDNS解決要求から抽出された完全修飾ドメイン名(FQDN)を用いてDNSサーバに問い合わせることを含む。当該複数のステップは、DNSサーバから第1の応答を受信することをさらに含み、応答は、FQDNに関連付けられるプロデューサNFサービスエンドポイントに関連付けられるアドレスを含む。当該複数のステップは、プロデューサNFサービスエンドポイントに関連付けられるアドレスをデータベースに格納することをさらに含む。当該複数のステップは、プロデューサNFサービスエンドポイントに関連付けられるアドレスを要求側ノードに通信することをさらに含む。当該複数のステップは、FQDNに関連付けられるアドレスにおける変更についてFQDNを監視することをさらに含む。当該複数のステップは、FQDNに関連付けられるアドレスにおける変更を要求側ノードに通知することをさらに含む。
【0032】
本明細書で説明する主題は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実現されてもよい。そのため、ここに用いられるような「機能」、「ノード」、または「モジュール」という用語はハードウェアを指すが、それらはまた、説明されている特徴を実現するためのソフトウェアおよび/またはファームウェアコンポーネントを含んでいてもよい。例示的な一実現例では、ここに説明される主題は、コンピュータのプロセッサによって実行されると複数のステップを実行するようにコンピュータを制御するコンピュータ実行可能命令が格納されたコンピュータ可読媒体を使用して実現されてもよい。ここに説明される主題を実現するのに好適である例示的なコンピュータ可読媒体は、ディスクメモリデバイス、チップメモリデバイス、プログラマブル論理デバイス、および特定用途向け集積回路などの非一時的コンピュータ可読媒体を含む。加えて、ここに説明される主題を実現するコンピュータ可読媒体は、単一のデバイスまたはコンピューティングプラットフォーム上に位置していてもよく、または複数のデバイスもしくはコンピューティングプラットフォームにわたって分散されていてもよい。
【0033】
ここで、本明細書で説明される主題が、添付の図面を参照して説明される。
【図面の簡単な説明】
【0034】
【
図1】例示的な5Gネットワークアーキテクチャを示すネットワーク図である。
【
図2】5GプロデューサNFサービスインスタンスおよび5GプロデューサNFサービスインスタンスによって公開されるサービスエンドポイント間のサービス通信プロキシによる負荷分散を示すネットワーク図である。
【
図3】コンシューマNFまたはSCPがプロデューサNFサービスエンドポイントに関連付けられるアドレス情報を発見することを可能にするDNS発見部マイクロサービスを示すネットワーク図である。
【
図4】DNS発見部マイクロサービスを用いてプロデューサNFサービスエンドポイントのアドレス情報を取得するための例示的なメッセージングを示すコールフロー図である。
【
図5】DNS発見部マイクロサービスを用いるDNS変更監視および制御フローを示すコールフロー図である。
【
図6】DNS発見部マイクロサービスを用いるDNS停止コールフローを示すコールフロー図である。
【
図7】DNS発見部マイクロサービスを実現するネットワークノードを示すブロック図である。
【
図8】DNS発見部マイクロサービスを用いて5Gおよび非5Gサービスエンドポイントに関連付けられるアドレス情報を発見および監視するための例示的なプロセスを示すフローチャートである。
【発明を実施するための形態】
【0035】
詳細な説明
本明細書で説明する主題は、5Gおよび非5Gサービスエンドポイントに関連付けられるアドレス情報を発見し、能動的に追跡するための方法、システム、ならびにコンピュータ可読媒体に関する。
図1は、例示的な5Gシステムネットワークアーキテクチャを示すブロック図である。
図1のアーキテクチャは、同じホーム公衆陸上移動体通信網(HPLMN:Home Public Land Mobile Network)に位置し得るNRF100およびSCP101を含む。前述したように、NRF100は、利用可能なプロデューサNFサービスインスタンスのプロファイルおよびそれらのサポートされたサービスを維持し、コンシューマNFまたはSCPが新規の/更新されたプロデューサNFサービスインスタンスに加入し、その登録を通知されるようにし得る。SCP101はまた、プロデューサNFのサービス検出および選択をサポートし得る。加えて、SCP101は、コンシューマNFとプロデューサNFとの間の接続の負荷分散を実行し得る。
【0036】
NRF100は、NFプロファイルのリポジトリである。プロデューサNFと通信するために、コンシューマNFまたはSCPは、NRF100からNFプロファイルを取得しなければならない。NFプロファイルは、3GPP TS29.510で定義されるJSONデータ構造である。下記の表1は、3GPP TS 29.510で定義されるNFプロファイルの属性を示す。
【0037】
【0038】
【0039】
【0040】
【0041】
【0042】
【0043】
【0044】
表1に示されるように、NFプロファイル定義は、FQDN、IPバージョン4アドレス、またはIPバージョン6アドレスのうちの少なくとも1つを含む。しかしながら、NFプロファイルは、プロデューサNFサービスインスタンス上に位置するプロデューサNFサービスエンドポイントに関連付けられる個々のIPアドレスまたはIPエンドポイントを含む、という要件はない。
【0045】
図1では、(SCP101およびNRF100以外の)いずれのノードも、それらがサービスを要求しているか提供しているかに応じて、コンシューマNFまたはプロデューサNFとなり得る。図示した例では、ノードは、ネットワーク内でポリシー関連動作を実行するポリシー制御機能(PCF)102と、ユーザデータを管理するユーザデータ管理(UDM)機能104と、アプリケーションサービスを提供するアプリケーション機能(AF)106とを含む。
図1に示すノードは、アクセスおよびモビリティ管理(AMF)機能110とPCF102との間のセッションを管理するセッション管理機能(SMF)108をさらに含む。AMF110は、4Gネットワークにおいてモビリティ管理エンティティ(MME)によって実行される動作と同様のモビリティ管理動作を実行する。認証サーバ機能(AUSF)112は、UE114のようにネットワークへのアクセスを求めるユーザ機器(UE)のための認証サービスを実行する。
【0046】
ネットワークスライス選択機能(NSSF)116は、ネットワークスライスに関連付けられる特定のネットワーク機能および特性にアクセスしようとするデバイスのためのネットワークスライスサービスを提供する。ネットワーク公開機能(NEF)118は、モノのインターネット(IoT)デバイスおよびネットワークに接続された他のUEに関する情報を取得しようとするアプリケーション機能のためのアプリケーションプログラミングインターフェイス(API)を提供する。NEF118は、4Gネットワークにおけるサービス機能公開機能(SCEF)と同様の機能を実行する。
【0047】
無線アクセスネットワーク(RAN)120は、無線リンクを介してUE114をネットワークに接続する。無線アクセスネットワーク120は、gノードB(gNB)(
図1には示さず)または他の無線アクセスポイントを用いてアクセスされ得る。ユーザプレーン機能(UPF)122は、ユーザプレーンサービスのための様々なプロキシ機能をサポート可能である。そのようなプロキシ機能の一例は、マルチパス送信制御プロトコル(MPTCP)プロキシ機能である。UPF122はまた、ネットワーク性能測定値を取得するためにUE114によって用いられ得る性能測定機能もサポートし得る。また、
図1には、インターネットサービスなどのデータネットワークサービスにUEがアクセスするデータネットワーク(DN)124も示されている。
【0048】
サービスを提供する、
図1に例示されるNFのうちのいずれかに常駐するサービスエンドポイントに関連付けられるアドレス情報を、本明細書で説明されるDNS発見部マイクロサービスを用いて追跡することができる。加えて、所与のFQDNの下でサービスを提供する非5Gサービスエンドポイントが、本明細書で説明されるDNS発見部マイクロサービスによって発見および追跡され得る。したがって、本明細書で用いる「プロデューサNFサービスエンドポイント」という文言は、5Gまたは非5Gサービスプロバイダノードのいずれかに存在するサービスエンドポイントを指すものとする。非5Gサービスプロバイダノードは、3G、4G、または後続世代(ポスト5G)対応サービスプロバイダノードおよび非3GPPサービスプロバイダノードを含む。
【0049】
上述のように、プロデューサNFは、それらのNFプロファイルをNRFに登録する。コンシューマNFは、NRFからNFプロファイルを取得することによって、特定のサービスを提供するように登録されているプロデューサNFを発見することができる。コンシューマNFは、NFサービスプロデューサNFと直接通信できる。あるいは、コンシューマNFは、SCPを介してプロデューサNFと間接的に通信できる。直接通信モードでは、コンシューマNFは、ローカル設定によって、またはNRFを介して、対象のプロデューサNFの発見を実行する。次いで、コンシューマNFは、対象のサービスプロデューサNFと直接通信する。間接通信モードでは、コンシューマNFは、サービス要求メッセージをSCPに送信し、SCPは、コンシューマNFに代わってプロデューサNFのサービス発見および選択を実行し得る。直接または間接通信モードのいずれでも、本明細書で説明されるDNS発見部マイクロサービスは、コンシューマNFまたはSCPからDNS解決要求を受信し、コンシューマNFまたはSCPの代わりにDNSサーバに問い合わせ、プロデューサNFサービスエンドポイントに関連付けられるアドレス情報をコンシューマNFまたはSCPに通信し、DNS解決要求において受信されるFQDNを、FQDNに関連付けられるアドレスにおける変更について、継続的に監視してもよい。
【0050】
図1に例示されるアーキテクチャにおいて生じる1つの問題は、サービス通信プロキシまたはコンシューマNFが、プロデューサNFサービスインスタンス上に常駐するサービスエンドポイント間で負荷分散を行うのに不充分な情報を有し得ることである。
図2はこの問題を示す。
図2を参照すると、サービス通信プロキシ101は、5GコンシューマNF200および202と5GプロデューサNF204および206との間に存在する。5GプロデューサNF204は、プロデューサNFサービスエンドポイント204Aおよび204Bを含む。5GプロデューサNFサービスインスタンス206は、プロデューサNFサービスエンドポイント206Aおよび206Bを含む。
【0051】
動作中、コンシューマNF200および202は、サービス通信プロキシ101に接続し、サービス通信プロキシ101は、プロデューサNFサービスエンドポイント間のトラフィックを負荷分散する。サービス通信プロキシ101は、プロデューサNF204および206がNRF100に登録した上述のNFプロファイルおよびNFサービスコンテンツから、負荷分散のためのプロデューサNFサービスエンドポイントを判断する。しかしながら、上述したように、個々のサービスエンドポイントに関連付けられるアドレス情報を登録することは必要とされないので、SCP101によって実行される負荷分散は、サービスエンドポイント間で負荷を均等に分散させないことがある。
【0052】
上述のように、1つのシナリオでは、プロデューサNFサービスインスタンスは、完全修飾ドメイン名をNFサービスレベルで登録するに過ぎない場合がある。別のシナリオでは、IPエンドポイントおよび完全修飾ドメイン名はNFサービスレベルで登録されず、完全修飾ドメイン名のみがNFインスタンスレベルで登録される場合がある。これらのシナリオのいずれにおいても、サービス通信プロキシは、適切な負荷分散のための充分な情報を欠いている。
【0053】
サービス通信プロキシは、NFサービスまたはNFサービスインスタンスによってDNS-SRVレコードを介してサービスインスタンスのIPエンドポイントを直接判断することができる。別の例では、IPアドレスは、NFサービスまたはNFサービスインスタンスによってDNS A/AAAAレコードを介して公開されてもよく、ポートがSCP構成として取られる。
【0054】
プロデューサNFサービスエンドポイントのアドレスは、任意のNFが登録を登録または更新するとき、SCPに知られる必要がある。プロデューサNFサービスエンドポイントのアドレスはまた、IPアドレスまたはIPエンドポイントがいかなるNFプロファイルまたはNFサービス更新も伴わずに変更するときにも、知られる必要がある。SCPは、継続的なルーティングおよび負荷分散の目的のために、これらの変更を追跡する必要がある。本明細書で説明されるDNS発見部マイクロサービスは、プロデューサNFサービスエンドポイントのアドレスを発見し、FQDNを、FQDNに関連付けられるアドレスにおける変更について監視する。
【0055】
上述のように、DNS発見部(DNS-D)マイクロサービスは、サービスエンドポイントの発見および追跡に関連する問題の少なくともいくつかを解決する。DNS発見部マイクロサービスは、DNSサーバに問い合わせて、プロデューサNFサービスエンドポイントのアドレス情報を取得し、その情報をSCPまたはコンシューマNFに提供する。
図3は、DNS発見部マイクロサービスを含むネットワークアーキテクチャを示すネットワーク図である。
図3を参照すると、DNS発見部マイクロサービス300は、SCPマイクロサービスまたはコンシューマNF302から分離しているかまたはそれと同じコンピューティングプラットフォーム上で実現され得る。DNS発見部マイクロサービス300は、外部DNSサーバ306とインターフェイスするDNS発見部DNSクライアント304を含む。DNS発見部マイクロサービス300はまた、永続データベース310内にNFサービスエンドポイント情報を維持するデータベースアダプタ308も含む。DNS発見部マイクロサービス300は、DNS発見部マイクロサービスをSCPマイクロサービスまたはコンシューマNF302または非5Gサービスコンシューマに公開するDNS発見部サーバインターフェイス312を含む。図示の例では、サーバインターフェイス312は、SCPマイクロサービス302によって提供されるRESTクライアント314とインターフェイスする表現状態転送(REST)インターフェイスである。DNS発見部マイクロサービス300は、さらに、SCPマイクロサービスまたはコンシューマNF302のサーバインターフェイス318とインターフェイスするDNS発見部RESTクライアント316を含む。
【0056】
DNS発見部マイクロサービス300は、上で特定された課題を解決するために用いられ得る。一例では、DNS発見部マイクロサービス300は、REST/HTTPインターフェイスを公開して、SCPまたは任意の他のサービスコンシューマからのDNS解決/監視要求を聞くことができる。コンシューマは、DNS応答が予想される場合に、DNS要求を、HTTP POSTメッセージとして、コールバック統一資源識別子 (URI)とともに送信する。DNS発見部マイクロサービス300は、非同期サービスであり、要求が受け付けられたことを示す201作成済みメッセージを返信する。DNS発見部マイクロサービス300は、要求されたFQDNを用いて外部DNSサーバに問い合わせる。これらの外部DNSサーバから成功裏なDNS解決を得た後、DNS発見部マイクロサービス300は、DNS解決要求において受信されたコールバックURIに対するDNS応答をHTTP PUT要求として送信する。DNS発見部マイクロサービス300は、外部DNSサーバからのDNSクエリ応答および(DNSサーバからの応答において受信される)寿命(TTL)をキャッシュ/記憶して、DNS変更監視(以下で論じられる)を可能にする。
【0057】
DNS発見部マイクロサービス300は、DNSクエリ応答において受信されたTTLについて、要求されたすべてのFQDNを(停止されるまで)継続的に監視する。外部DNSサーバからのDNS応答は、すべての反復において、記憶された応答と照合される。差異は、コールバックURIにおいてHTTP PUT要求としてコンシューマに示される。コンシューマは、DNS発見部マイクロサービス300にHTTP DELETE要求メッセージを送信することによって監視を停止することを選ぶことができる。
【0058】
図4は、DNS発見部マイクロサービス300によって実行されるDNS要求対応処理を示すコールフロー図である。DNS発見部マイクロサービス300は、
図3に示され、
図3に関して上で説明されたコンポーネントを含む。
図3に例示されるコンポーネントに加えて、DNS発見部マイクロサービス300は、DNSレコード変更発見部400を含み、DNSレコード変更発見部400は、DNSクエリ応答において受信された寿命値について、要求された完全修飾ドメイン名を監視し、TTLが満了するとDNSサーバ306に再び問い合わせ、解決されたIPアドレスまたはIPエンドポイントにおける変更をコンシューマNF、SCP、または非5Gサービスコンシューマに通信する。
【0059】
図4のコールフローを参照すると、ライン1において、SCPマイクロサービスまたはコンシューマNF302などのDNSコンシューマは、DNS発見部マイクロサービス300のサーバインターフェイスにDNS解決要求を送信する。DNS解決要求は、解決されるべきFQDNと、IPアドレスまたはIPエンドポイントを示すDNSクエリタイプと、クッキー識別子と、DNS発見部RESTクライアント316上で問い合わせ側DNSコンシューマに送信されるDNS応答および更新のためのコールバックURIとを含む。
【0060】
コールフロー図のライン2において、DNS発見部サーバインターフェイス312は、要求が受信され、受け入れられたことを示す応答を送信する。
【0061】
コールフロー図のライン3において、DNS発見部マイクロサービス300のDNSクライアントコンポーネント304は、DNS解決要求における完全修飾ドメイン名を解決するよう、外部DNSサーバ306にクエリを送信する。
【0062】
コールフロー図のライン4において、DNSサーバ306は、DNSクエリに対する応答で、DNSクライアント304に応答する。この応答は、DNSクエリ内のFQDNに対応するプロデューサNFサービスインスタンス上に存在する1つもしくは複数のIPアドレスまたはIPエンドポイントを含み得る。
【0063】
コールフロー図のライン5において、DNSクライアントコンポーネント304は、IPアドレスまたはIPエンドポイント情報をDNS発見部データベースアダプタ308に通信し、DNS発見部データベースアダプタ308は、その応答を永続データベース310に転送する。この応答は、DNS解決要求からの完全修飾ドメイン名と、解決されたIPアドレス(または、応答のタイプに応じてIPアドレスおよびポート)と、クエリ応答において受信されたDNSリソースレコードのTTL値のすべての中で最低のTTL値である満了時間とを含む。
【0064】
ライン6において、DNS発見部データベースアダプタ308は、データベースレコードが作成されたことを示すメッセージをDNS発見部RESTクライアント316に送信し、DNS発見部クライアント316は、DNS応答をSCPマイクロサービスまたはコンシューマNF302に送信する。DNS応答は、要求において受信されたコールバックURI上で送信される。ライン7において、SCPマイクロサービスまたはコンシューマNF302は、200OK応答をDNS発見部RESTクライアント316に送信する。
【0065】
DNSレコード変更発見部400は、監視されるFQDNに対応する解決されたIPアドレスまたはIPエンドポイントにおける変更を検出する。DNSレコード変更発見部400は、ストレージからすべてのDNSレコードを定期的にフェッチし、DNSクエリ応答において受信されたTTLが経過したレコードがあればそれを識別することができる。TTLが経過した各レコードについて、DNSレコード変更発見部400は、任意の変更を判断するために、外部DNSサーバに再度問い合わせることができる。何らかの変更が生じた場合には、それ以上のアクションは必要とされない。変更が生じた場合、DNSレコード変更発見部400は、元のDNS要求において受信されたコールバックURIで、REST/HTTP PUT要求を介して、所与のサービスに加入しているコンシューマNFまたはSCPに通知してもよい。
図5は、DNS変更監視コールフローを示すコールフロー図である。
図5を参照すると、ライン1において、DNSレコード変更発見部400は、現在のタイムスタンプを計算する。ライン2では、DNSレコード変更発見部400は、経過したTTLまたは満了時間を有するすべてのレコードについて永続データベース310に問い合わせる。コールフロー図のライン3において、永続データベース310は、コールフローが経過したDNSレコードをDNSレコード変更発見部400に返す。
【0066】
コールフロー図のライン4において、DNSレコード変更発見部400は、TTLが経過した各FQDNをDNS発見部クライアント304に通知する。ライン5では、DNS発見部クライアント304は、TTLが経過した各FQDNについて外部DNSサーバ306に問い合わせる。コールフロー図のライン6において、DNS発見部DNSクライアント304は、ライン5において照会された各FQDNについてDNSクエリ応答を受信する。ライン7では、DNS発見部DNSクライアント304は、DNSレコード変更発見部に、ライン6の応答で受信されたIPアドレスまたはIPエンドポイントを通知する。DNSレコード変更発見部400は、受信されたIPアドレスまたはIPエンドポイントが各FQDNについて記憶されたデータと一致するかどうかを判定する。IPアドレスまたはIPエンドポイントが一致する場合、DNSレコード変更発見部400の側では、それ以上のアクションは必要とされない。しかしながら、IPアドレスまたはIPエンドポイントが一致しない場合、行8において、DNSレコード変更発見部400は、変更されたIPアドレスまたはIPエンドポイントをDNS発見部RESTクライアント316に通信する。DNS発見部RESTクライアント316は、元の要求で受信されたコールバックURIで、HTTPput要求を用いて、IPアドレスまたはIPエンドポイントにおける変更をSCPマイクロサービスまたはコンシューマNF302に通知する。コールフロー図のライン9において、DNS SCPマイクロサービスまたはコンシューマNF302は、ライン8におけるDNS応答の受信を確認する。
【0067】
DNS発見部マイクロサービス300によって実行される別の動作は、例えば、コンシューマNFまたはSCPが、DNS発見部マイクロサービス300に対して、コンシューマNFまたはSCPが所与のFQDNの監視を停止することを望むことを通知したときに、DNS監視を停止することである。
図6は、そのようなコールフローを示す。
図6のコールフローを参照すると、ライン1において、SCPマイクロサービスまたはコンシューマNF302は、解決されるべきFQDNを有するが、FQDNに対するDNS監視を停止する削除方法を明記するDNS解決要求を送信する。コールフロー図のライン2において、DNS発見部サーバインターフェイス312は、クライアントに応答し、要求が受け入れられたことを示す。コールフロー図のライン3において、DNS発見部サーバインターフェイス312は、コンシューマがFQDNの監視を中止することを望む旨をDNS発見部データベースアダプタ308に通知する。DNS発見部データベースアダプタ308は、元のDNS解決要求において指定されるFQDNおよび通知URLに対応するレコードを永続データベース310から除去または更新するよう、メッセージを永続データベース310に送信する。ライン3のメッセージは、DNSレコード変更発見部400がこの特定のコンシューマについてのFQDNについてDNSサーバ306に再度問い合わせることを停止する。
【0068】
図7は、DNS発見部マイクロサービス300を含むコンピューティングプラットフォームのための例示的なアーキテクチャを示すブロック図である。
図7を参照すると、コンピューティングプラットフォーム700は、少なくとも1つのプロセッサ702およびメモリ704を含む。DNS発見部マイクロサービス300は、メモリ704に具現化された実行可能命令によって実現されてもよい。図示の例では、DNS発見部マイクロサービス300は、DNS発見部サーバインターフェイス312と、DNS発見部DNSクライアント304と、DNS発見部RESTクライアント316と、DNS発見部データベースアダプタ308と、DNSレコード変更発見部400とを含む。永続データベース310も、解決されたFQDNについてのIPアドレスまたはIPエンドポイントを記憶するために、コンピューティングプラットフォーム700内に常駐し得る。
【0069】
図8は、5Gおよび非5Gサービスエンドポイントに関連付けられるアドレス情報を能動的に発見および追跡するための例示的なプロセスを示すフローチャートである。
図8を参照すると、ステップ800において、DNS解決要求が要求側ノードから受信される。たとえば、DNS発見部マイクロサービス300は、SCP、コンシューマNF、または非5GサービスコンシューマなどのDNS発見部コンシューマから、DNS解決要求をFQDNとともに受信し得る。
【0070】
ステップ802において、DNSサーバは、DNS解決要求内のFQDNを用いて問い合わせられる。たとえば、DNS発見部マイクロサービス300は、DNS発見部コンシューマから受信されたDNS要求におけるFQDNを用いて外部DNSサーバ306に問い合わせることができる。
【0071】
ステップ804において、DNS応答がDNSサーバから受信され、ステップ806において、プロデューサNFサービスエンドポイントのアドレスがDNS発見部データベースに(すなわち、永続データベース310に)記憶される。例えば、DNS発見部マイクロサービス300は、DNSサーバ306からDNS応答を受信し、プロデューサNFサービスエンドポイントに関連付けられるIPアドレスまたはIPエンドポイントをデータベース310に記憶してもよい。一例では、DNS発見部マイクロサービス300からのDNS解決要求は、DNS-A解決要求であり得、DNSサーバ306は、FQDNに関連付けられる1つまたは複数のサービスエンドポイントに対応する1つまたは複数のIPv4アドレスを返し得る。別の例では、DNS解決要求は、DNS-AAAA要求であり得、DNSサーバ306は、FQDNに関連付けられる1つまたは複数のサービスエンドポイントに対応する1つまたは複数のIPv6アドレスを返し得る。さらに別の例では、DNS解決要求はDNS-SRV要求であり得、DNSサーバは、FQDNに関連付けられる1つまたは複数のサービスエンドポイントに対応するIPアドレスおよびポート番号を返し得る。
【0072】
ステップ808において、DNS応答が要求側ノードに送信される。例えば、DNS発見部マイクロサービス300は、DNSサーバ306からのDNS応答において受信されたプロデューサNFサービスエンドポイントに関連付けられるアドレスを含む応答を要求側ノードに送信し得る。
【0073】
ステップ810において、DNS発見部データベース内のFQDNが、アドレスにおける変更について監視される。例えば、DNSレコード変更発見部400は、データベース310内でTTLが満了した各FQDNについて、外部DNSサーバ306に問い合わせて、任意のIPアドレスまたはIPエンドポイント変更を判断することができる。
【0074】
ステップ812において、要求側ノードは、FQDNに関連付けられるIPアドレスまたはIPエンドポイントにおける任意の変更を通知される。例えば、DNSレコード変更発見部400は、SCPマイクロサービスまたはコンシューマNF302に、SCPマイクロサービスまたはコンシューマNF302がDNS発見部マイクロサービス300に問い合わせたFQDNに関連付けられるIPアドレスまたはIPエンドポイントにおける任意の検出された変更を通知することができる。
【0075】
したがって、本明細書で説明される主題は、プロデューサNFサービスエンドポイントに関連付けられるIPアドレスまたはIPエンドポイントを発見し、そのようなアドレスにおける変更についてFQDNを監視する、DNS発見部マイクロサービスを含む。そのようなサービスの1つの利点は、コンシューマNFおよびSCPが、サービスに関連付けられるIPアドレスまたはIPエンドポイントにおける変更についてプロデューサNFを発見または能動的に監視する必要がないという事実である。コンシューマNFまたはSCPは、サービスのFQDNを知り、そのFQDNをDNS発見部マイクロサービスに通信することが要求されるにすぎない。加えて、DNS発見部マイクロサービスは、IPアドレスまたはIPエンドポイントにおける変更についてFQDNを能動的に監視するので、SCPおよびコンシューマNF等のノードによる負荷分散は、プロデューサNFサービスエンドポイント間でより均等に分散されるであろう。
【0076】
本開示の主題の様々な詳細は、本開示の主題の範囲から逸脱することなく変更され得ることが理解されよう。さらに、前述の説明は、例示のみを目的としており、限定を目的としていない。