(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-04-23
(54)【発明の名称】セルラーデータパケットのルーティングの為のIPネットワークの改善された使用
(51)【国際特許分類】
H04L 69/08 20220101AFI20240416BHJP
H04W 76/12 20180101ALI20240416BHJP
H04W 4/18 20090101ALI20240416BHJP
H04W 88/16 20090101ALI20240416BHJP
【FI】
H04L69/08
H04W76/12
H04W4/18
H04W88/16
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023565884
(86)(22)【出願日】2022-04-20
(85)【翻訳文提出日】2023-12-26
(86)【国際出願番号】 US2022025592
(87)【国際公開番号】W WO2022231917
(87)【国際公開日】2022-11-03
(32)【優先日】2021-04-26
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】521076948
【氏名又は名称】アルカス インコーポレイテッド
(74)【代理人】
【識別番号】100067736
【氏名又は名称】小池 晃
(74)【代理人】
【識別番号】100192212
【氏名又は名称】河野 貴明
(74)【代理人】
【識別番号】100200001
【氏名又は名称】北原 明彦
(72)【発明者】
【氏名】パテル,ケユル
(72)【発明者】
【氏名】村上 哲也
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067AA21
5K067DD17
5K067EE02
5K067EE16
(57)【要約】
セルラーデータ通信システムは、IPネットワークによりUPFに接続されたBBUを含む。第1の変換モジュールは、GTPパケットをIPネットワーク上で送信されたIPパケットに変換する。第2の変換モジュールは、IPパケットをGTPパケットに再変換し、GTPパケットをUPFに転送する。PFCPプロキシは、UPFの制御パケットをインタセプトする。PFCPプロキシによりスヌーピングされた情報は、UPFをバイパスしてパケットのルーティングを実行するように変換モジュール及びルーティングモジュールをプログラミングするルーティング/SDNコントローラに提供される。
【選択図】
図3
【特許請求の範囲】
【請求項1】
ユーザ機器から信号を受信するアンテナと、
前記アンテナに接続されたパケット無線ネットワークと、
インターネットプロトコルネットワークと、
前記パケット無線ネットワーク及び前記インターネットプロトコルネットワーク間に配置された変換モジュールと、
前記ユーザ機器との通信を管理するように構成されたユーザプレーン機能と、
前記パケット無線ネットワーク及び前記ユーザプレーン機能間に配置されたプロキシと、
を含むセルラーデータ通信システムであって、
前記プロキシは、
前記ユーザプレーン機能から及び前記ユーザプレーン機能への任意のトラフィックをインタセプトし、
前記トラフィックからセッション情報をスヌーピングし、そして、
前記パケット無線ネットワーク上で受信した第1のパケットを前記セッション情報に従って前記インターネットプロトコルネットワーク上に送信された第2のパケットに変換する前記変換モジュールのプログラミングを呼出する、
ように構成されることを特徴とするセルラーデータ通信システム。
【請求項2】
前記セッション情報は、前記ユーザプレーン機能により終了されたプロトコルトンネルを記述する情報を含み、そして、前記セッション情報は、前記ユーザプレーン機能のトンネル終点(TEP)識別子(TEID)、前記プロトコルトンネルのローカルTEID、及び前記ユーザ機器のアドレスのいずれかを含むことを特徴とする請求項1に記載のセルラーデータ通信システム。
【請求項3】
前記ローカルTEIDはgNodeBを参照することを特徴とする請求項2に記載のセルラーデータ通信システム。
【請求項4】
前記プロトコルトンネルは、汎用パケット無線サービス(GPRS)トンネリングプロトコル(GTP)トンネルであることを特徴とする請求項2に記載のセルラーデータ通信システム。
【請求項5】
前記第1のパケットはGTPによりフォーマットされ、そして、前記変換モジュールは、前記第2のパケットがインターネットプロトコルによりフォーマットされるように、前記第1のパケットを前記第2のパケットに変換するようにプログラミングされることを特徴とする請求項4に記載のセルラーデータ通信システム。
【請求項6】
前記第2のパケットは、前記第2のパケットをGTPパケットに再変換するのに十分な情報を含むことを特徴とする請求項5に記載のセルラーデータ通信システム。
【請求項7】
さらに、前記プロキシ及び前記変換モジュール間に配置されたルーティング及びソフトウェア定義ネットワーク(ルーティング/SDN)コントローラを含み、そして、前記ルーティング/SDNコントローラは、前記情報を使用して前記変換モジュールをプログラミングするようにプログラミングされることを特徴とする請求項5に記載のセルラーデータ通信システム。
【請求項8】
前記ルーティング/SDNコントローラは、ボーダゲートウェイプロトコル(BGP)スピーカを含むことを特徴とする請求項7に記載のセルラーデータ通信システム。
【請求項9】
さらに、前記インターネットプロトコルネットワークを外部ネットワークに接続するルーティングモジュールを含み、
前記プロキシはさらに、前記セッション情報に従って前記ルーティングモジュールのプログラミングを呼出するようにプログラミングされることを特徴とする請求項5に記載のセルラーデータ通信システム。
【請求項10】
前記変換モジュールは第1の変換モジュールであり、
前記セルラーデータ通信システムはさらに第2の変換モジュールを含み、前記アンテナ及び前記ユーザプレーン機能間の経路が、前記第1の変換モジュール、前記インターネットプロトコルネットワーク、及び前記第2の変換モジュールを含み、そして、
前記プロキシは、前記セッション情報に従って前記第2のパケットを第3のパケットに変換する前記第2の変換モジュールのプログラミングを呼出するように構成され、前記第3のパケットはGTPによりフォーマットされることを特徴とする請求項5に記載のセルラーデータ通信システム。
【請求項11】
ユーザ機器から信号を受信するアンテナと、前記アンテナに接続されたパケット無線ネットワークと、インターネットプロトコルネットワークと、前記ユーザ機器との通信を管理するように構成されたユーザプレーン機能と、を含むセルラーデータ通信システムを提供し、
前記パケット無線ネットワーク及び前記インターネットプロトコルネットワーク間に配置された変換モジュールを提供し、
前記変換モジュール及び前記アンテナ間に配置されたプロキシにより、前記ユーザプレーン機能宛の第1のパケットを受信し、
前記プロキシにより、前記第1のパケットからセッション情報をスヌーピングし、そして、前記第1のパケットを前記ユーザプレーン機能に転送し、
前記プロキシにより、前記セッション情報に従って前記変換モジュールのプログラミングを呼出し、
前記変換モジュールにより、前記パケット無線ネットワークから第2のパケットを受信し、
前記変換モジュールにより、前記第2のパケットを前記プログラミングに従って変換して第3のパケットを得て、そして、
前記インターネットプロトコルネットワーク上で前記第3のパケットを送信する、
ことを含むことを特徴とする方法。
【請求項12】
前記セッション情報は、前記ユーザプレーン機能により終了されたプロトコルトンネルを記述する情報を含み、そして、前記セッション情報は、前記ユーザプレーン機能のトンネル終点(TEP)識別子(TEID)、前記プロトコルトンネルのローカルTEID、及び前記ユーザ機器のアドレスのいずれかを含むことを特徴とする請求項11に記載の方法。
【請求項13】
前記ローカルTEIDは、前記ユーザプレーン機能及び前記アンテナ間のベースバンドユニットを参照することを特徴とする請求項12に記載の方法。
【請求項14】
前記プロトコルトンネルは、汎用パケット無線サービス(GPRS)トンネリングプロトコル(GTP)トンネルであることを特徴とする請求項12に記載の方法。
【請求項15】
前記第2のパケットを前記プログラミングに従って変換して前記第3のパケットを得ることは、GTPによりフォーマットされた前記第2のパケットからインターネットプロトコルによりフォーマットされた前記第3のパケットに変換することを含むことを特徴とする請求項14に記載の方法。
【請求項16】
前記第2のパケットを前記プログラミングに従って変換して前記第3のパケットを得ることは、GTPによりフォーマットされた前記第2のパケットからインターネットプロトコルによりフォーマットされた前記第3のパケットに変換することを含み、前記第3のパケットは、前記第3のパケットをGTPによりフォーマットされた第4のパケットに変換するのに十分な情報を含むことを特徴とする請求項14に記載の方法。
【請求項17】
前記セッション情報に従って前記変換モジュールのプログラミングを呼出することは、
前記プロキシにより、前記プロキシ及び前記変換モジュール間に配置されたルーティング及びソフトウェア定義ネットワーク(ルーティング/SDN)コントローラに前記セッション情報を提供し、そして、
前記ルーティング/SDNコントローラにより、前記セッション情報を使用して前記変換モジュールをプログラミングする、
ことを含むことを特徴とする請求項15に記載の方法。
【請求項18】
前記ルーティング/SDNコントローラは、ボーダゲートウェイプロトコル(BGP)スピーカを含むことを特徴とする請求項17に記載の方法。
【請求項19】
前記方法がさらに、
前記プロキシにより、前記セッション情報に従って前記インターネットプロトコルネットワーク及び外部ネットワーク間に配置されたルーティングモジュールをプログラミングすることを含むことを特徴とする請求項17に記載の方法。
【請求項20】
前記変換モジュールは第1の変換モジュールであり、
前記方法がさらに、
前記インターネットプロトコルネットワーク及び前記ユーザプレーン機能間に第2の変換モジュールを提供し、
前記プロキシにより、前記セッション情報に従って前記第2の変換モジュールのプログラミングを呼出し、前記第2の変換モジュールは、前記第3のパケットを第4のパケットに変換するようにプログラミングされ、前記第4のパケットはGTPによりフォーマットされる、
ことを含むことを特徴とする請求項11に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、セルラーデータ通信ネットワークへ及びからのパケットのルーティングに関する。
【背景技術】
【0002】
図1Aを参照して、慣習的な5Gセルラーデータ通信ネットワーク100において、ユーザ機器(user equipment)(UE)102は、gNodeB106のパケットを送信することができ、gNodeB106は、無線アンテナによりパケットを受信して受信したパケットをゲートウェイ(GW)108を通してIPネットワーク110に送信する機能を実行する。慣習的なセルラーデータ通信ネットワークにおいて、UE102からのパケットは、ユーザプレーン機能(user plane function)(UPF)112、即ち、最初にパケットを受信したGW108に関連するUPF112に転送されなければならない。UPF112は、ネットワーク上でパケットを受信することができ、前記ネットワークは、UPF112及びGW108間のインターネットプロトコル(IP)ネットワーク110であることができる。UPF112は、他のIPネットワーク114上でモバイルエッジコンピューティング(mobile edge computing)(MEC)サーバ116にパケットを転送することができる。MECサーバ116は、パケットの宛先であることができ、例えば、サーバは、インターネット等のより広いネットワークにアクセスするゲートウェイ又はパケットが取り組むサービスを提供する。
【0003】
図1Bを参照して、いくつかの場合、パケットはUPF112に関連するMECサーバ116から他のMECサーバ118にリダイレクトする必要がある。例えば、GW108は、MECサーバ118とGW108を接続する1以上のIPネットワーク120にも接続することができる。MECサーバ116の障害時に、又は他の目的の為のリダイレクトにより、パケットは、MECサーバ118にリダイレクトされる。しかしながら、現在の5Gプロトコルは、パケットがまずUPF112にルーティングされることを必要とし、その後、
図1Bに図示されているように、パケットはMECサーバ118に転送される。MECサーバ118からUE102までのトラフィックは、逆方向の経路を辿ることができる。このことは、UE102から送信され、UE102に送信されるパケットの待ち時間を増加させる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
セルラー通信ネットワークにおけるパケットのリダイレクトを処理する改善されたアプローチを提供することは、技術の進歩となる。
【課題を解決するための手段】
【0005】
上記課題を解決するために、本願の特許請求の範囲に記載のシステム及び方法を提供するものである。
【0006】
本発明の利点を容易に理解するために、上記に簡単に記載されている本発明のより詳細な説明が、添付の図面に図示されている特定の実施形態を参照にして、以下に記載されている。これらの図面は本発明の典型的な実施形態を図示しているだけであると理解され、したがって、本発明の範囲を限定するものではない。本発明は、添付の図面を使用して、詳細及び付加的な特定が説明されている。
【図面の簡単な説明】
【0007】
【
図1A】従来技術によるセルラーデータ通信ネットワーク上で受信されたパケットのルーティングを示す概略構成図である。
【
図1B】従来技術によるセルラーデータ通信ネットワーク上で受信されたパケットのリルーティングを示す概略構成図である。
【
図2】本発明の実施形態によるセルラーデータ通信ネットワーク上で受信されたパケットをルーティングするアプローチを示す概略構成図である。
【
図3】本発明の実施形態によるセルラーデータ通信ネットワーク上で受信されたパケットのルーティングを実行するコンポーネントの概略構成図である。
【
図4】本発明の実施形態によるPFCPプロキシによる情報のスヌーピング及びこの情報を使用した変換モジュール及びルーティングモジュールのプログラミングを示す概略構成図である。
【
図5】本発明の実施形態によるPFCPプロキシの概略構成図である。
【
図6】本発明の実施形態によるPFCPプロキシ及びルーティング/SDNコントローラ間の情報の交換を示す概略構成図である。
【
図7】本発明の実施形態による方法を実行するのに適したコンピュータシステムの概略構成図である。
【発明を実施するための形態】
【0008】
添付の図面に図示されて説明されている本発明のコンポーネントは、多種多様な異なる構成に設計及び配置することができることは容易に理解できるであろう。したがって、図示されている、以下の本発明の実施形態のより詳細な説明は、特許請求の範囲に記載されている本発明の範囲を限定することを意図しているものではなく、ここで検討されている本発明による実施形態の特定の実施例を単に示すものである。ここに記載の実施形態は、図面を参照することにより最もよく理解されるものであり、同様の部品は明細書及び図面を通して同様の参照番号により示されている。
【0009】
本発明による実施形態は、装置、方法、又はコンピュータプログラム製品として具現化することができる。したがって、本発明は、完全にハードウェアの形、完全にソフトウェアの形(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、又は、ここで一般的に「モジュール」又は「システム」と呼ばれるハードウェア及びソフトウェアを組み合わせた形で具現化することができる。さらに、本発明は、媒体内に具現化されたコンピュータ使用可能プログラムコードを有する任意の有形的表現媒体内に具現化されたコンピュータプログラム製品の形をとることができる。
【0010】
1以上のコンピュータ使用可能媒体又はコンピュータ可読媒体の任意の組み合わせを利用することができる。例えば、コンピュータ可読媒体は、携帯用コンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)デバイス、読出専用メモリ(ROM)デバイス、消去可能プログラマブル読出専用メモリ(EPROM又はフラッシュメモリ)デバイス、携帯用コンパクトディスク読出専用メモリ(CDROM)、光記憶装置、及び磁気記憶装置の1以上を含むことができる。選択された実施形態において、コンピュータ可読媒体は、命令実行システム、装置、又はデバイスにより、又は、に接続して使用されるプログラムを含有、記憶、通信、伝搬、又は移送することができる任意の非一時的媒体を含むことができる。
【0011】
本発明の動作を実行するためのコンピュータプログラムコードは、Java、Smalltalk、C++等のオブジェクト指向プログラミング言語、及びCプログラミング言語又は同様のプログラミング言語等の慣用手続型プログラミング言語を含む1以上のプログラミング言語の任意の組み合わせにより書き込むことができ、また、HTML、XML、JSON等の記述言語又はマークアップ言語を使用することもできる。プログラムコードは、スタンドアロン型ソフトウェアパッケージとして完全にコンピュータシステム上で、スタンドアロン型ハードウェアユニット上で、部分的にコンピュータから一定の距離に置かれた遠隔コンピュータ上で、又は完全に遠隔コンピュータ又はサーバ上で、実行することができる。後のシナリオにおいて、遠隔コンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意の型のネットワークを介してコンピュータと接続することができ、又は、(例えば、インターネットサービスプロバイダを使用したインターネットを介して)外部のコンピュータに接続することができる。
【0012】
本発明は、本発明の実施形態による方法、装置(システム)及びコンピュータプログラム製品のフローチャート及び/又は構成図を参照して以下に説明されている。フローチャート及び/又は構成図の各ブロック、及びフローチャート及び/又は構成図のブロックの組み合わせは、コンピュータプログラム命令又はコードにより実装することができる。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能なデータ処理装置のプロセッサに提供され、コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサにより実行される命令が、フローチャート及び/又は構成図の1又は複数のブロックに指定されている機能/作用を実装するための手段を生成するように、マシンを生成することができる。
【0013】
コンピュータ可読媒体内に記憶された命令が、フローチャート及び/又は構成図の1又は複数のブロックに指定されている機能/作用を実装する、命令手段を含む製品を生成するように、これらのコンピュータプログラム命令も、コンピュータ又は他のプログラム可能なデータ処理装置が特定の方法で機能するように導くことができる非一時的コンピュータ可読媒体に記憶することができる。
【0014】
コンピュータ又は他のプログラム可能なデータ処理装置上で実行された命令が、フローチャート及び/又は構成図の1又は複数のブロックに指定されている機能/作用を実装するためのプロセスを提供するように、コンピュータプログラム命令も、コンピュータ又は他のプログラム可能なデータ処理装置上にロードされ、コンピュータ又は他のプログラム可能なデータ処理装置上で実行される一連の動作ステップを引き起こし、コンピュータ実装プロセスが生成される。
【0015】
図2を参照して、いくつかの実施形態において、UE102からのパケットは、gNodeB106により受信されると、汎用パケット無線サービス(general packet radio service)(GPRS)パケットとしてフォーマットされる。gNodeB106は、RU(radio unit)(無線ユニット、即ちアンテナ)、DU(distributed unit)(分散ユニット)、及びCU(centralized unit)(集中ユニット)の機能を制御し、UE102及びネットワーク110間のパケットの転送を管理することができる。gNodeB106は、その後、GPRSトンネリングプロトコル(GTP)パケット内にこれらのパケットをカプセル化し、その後、UPF112に転送する。経路204は、UPF112へ送信され、UPF112から送信されるパケットの経路を示している。経路206は、
図1Bのように異なるMECサーバ118へ送信され、MECサーバ118から送信される、又は、他の宛先に送信され、他の宛先から送信される、リダイレクトされたパケットの経路を示している。
【0016】
gNodeB106によるパケット出力は、変換モジュール208により処理されることができる。図示されている実施形態において、変換モジュール208は、GTP及びインターネットプロトコル、即ちGTPではないセルラーデータネットワーク内の使用には適していないプロトコル間を相互に変換する。図示されている実施形態において、インターネットプロトコルはSRv6(IPv6データプレーン上のセグメントルーティング)である。以下の記載において、GTP及びSRv6間の移行への言及は、GTP及び他のインターネットプロトコル間の移行と置換することができると理解される。
【0017】
変換モジュール208は、gNodeB106及びSRv6ネットワーク210、例えば、SRv6又は他のIPプロトコルにより実装されたルーティングを含むデータプレーン及び/又はネットワーク間に配置されることができる。UPF112は、他の変換モジュール212によりSRv6ネットワーク210に接続することができる。いくつかの実施形態において、変換モジュール208、ネットワーク210、及び変換モジュール212は、共通のシャーシに設置された共通のコンピューティングデバイスの一部であることができる。共通のコンピューティングデバイスは、アンテナ104及びgNodeB106の1つ又は両方と一緒に配置することができる。共通のコンピューティングデバイスは、MECサーバ116も含むことができる。
【0018】
ネットワーク210は、インターネットプロトコルルーティングモジュール216等により、外部ネットワーク214にも接続されることができる。図示されている実施形態において、ルーティングモジュール216はSRv6ルータであるが、他のルーティングプロトコルを実装するルータを使用することもできる。いくつかの実施形態において、ルーティングモジュール216は、GTPプロトコルを実装していない。外部ネットワーク214は、インターネット等のWANであることができ、ネットワーク210を他のMECサーバ118、又はUE102にサービスを提供する任意の第三者サーバに接続することができる。
【0019】
図示されている実施形態において、「A」としてラベリングされている経路204、206の一部は、GTPパケット(以後、「A型パケット」と呼ぶ)としてフォーマットされたパケットを伝送することができる。A型パケットは、カプセル化されたペイロードデータに加えて、内部インターネットプロトコル(IP)ヘッダ、GTPヘッダ、UDP(user datagram protocol)(ユーザデータグラムプロトコル)ヘッダ、及び外部IPヘッダを含むことができる。内部IPヘッダは、UE102上で生成されたIPプロトコルによるIPヘッダであることができる。外部IPヘッダは、gNodeB106により生成されたIPプロトコル、又は異なるIPプロトコルによるIPヘッダであることができ、ネットワーク210上でUPF112、MECサーバ116、MECサーバ118、又は外部ネットワーク214へのA型パケットのルーティングの為の情報を定義する。
【0020】
「B」としてラベリングされている経路204、206の一部は、SRv6パケット(以後、「B型パケット」と呼ぶ)等のインターネットプロトコルパケットとしてフォーマットされたパケットを伝送することができる。そのようなパケットは、上記で定義された内部IPヘッダ、セグメントルーティングヘッダ(segment routing header)(SRH’)、及びIPv6ヘッダ等のインターネットルーティングヘッダを含むことができる。各B型パケットのSRH’は、B型パケットに変換されたA型パケットのGTPヘッダ、UDPヘッダ、及び外部IPヘッダのいくつか又は全てからの情報を含むようにB型パケットを生成した変換モジュール208、212により追加されることができる。特に、SRH’内に記憶された情報は、他の変換モジュール208、212によりB型パケットをA型パケット(GTPパケット)に変換するのに十分なデータを含むことができる。IPv6フィールドは、IPv6等のインターネットプロトコル(IP)によりフォーマットされたパケットであることができ、ソースIPアドレス、宛先IPアドレス、及びIPv6又は他のインターネットプロトコルにより定義された他のフィールドの為のデータを含む、ネットワーク210等のIPネットワーク上でパケットをルーティングするのに十分な情報を含むことができる。この情報は、B型パケットを得る為に変換されるA型パケットの外部IPヘッダから得ることができる。IPv6パケットは、A型パケットからのペイロードデータも含むことができる。
【0021】
「C」としてラベリングされている経路204、206の一部は、B型パケットと同じフィールド定義を含むが、SRHはA型パケットのGTPヘッダからの情報を記憶していない、及び/又は、その後SRHフィールド内の情報を使用してB型パケットに変換されない、インターネットプロトコルパケットとしてフォーマットされたC型パケットを伝送することができる。
図2に図示されているように、MECサーバ118からUE102に送信されたパケットは、B型パケットとしてネットワーク210を通過するが、UE102からMECサーバ118に送信されたパケットは、C型パケットとしてネットワーク210を通過することができる。
【0022】
「D」としてラベリングされている経路204、206の一部は、D型パケットを得る為に変換されるC型パケットの内部IPヘッダ及びペイロードデータを含む、インターネットプロトコルパケットとしてフォーマットされたD型パケットを伝送することができる。特に、D型パケットは、UE102、MECサーバ116、118、又は外部ネットワーク214から送信されてgNodeB106により受信されたIPパケットを含むことができる。
【0023】
「ダイレクトインバウンドパケット」(direct inbound packets)は、リダイレクトされずにgNodeB106を通過するパケットであり、
図2の経路204に沿って左から右に移動するパケットである。ダイレクトインバウンドパケットは、UE102からgNodeB106に送信される。gNodeB106により受信されると、ダイレクトインバウンドパケットは、IPv4又はIPv6等のD型パケットであることができる。gNodeB106により出力されると、ダイレクトインバウンドパケットは、gNodeB106により変換モジュール208に送信されるA型パケットであることができる。特に、A型パケットは、UE102から受信したIPパケットをカプセル化したGTPパケットであることができる。
【0024】
変換モジュール208は、A型ダイレクトインバウンドパケットをB型パケットに変換し、A型ダイレクトインバウンドパケットの外部IPヘッダ内に含まれた情報を使用して、B型ダイレクトインバウンドパケットをネットワーク210上でUPF112に送信する。上述のように、A型パケットのGTPフィールドからの情報がA型パケットから得られたB型パケットのSRH’フィールド内に含まれ、A型パケットへの再変換を可能にする。しかしながら、B型パケット自体は、GTPパケットではなく、SRv6パケットであることができる。B型パケットはさらに、A型パケットから内部IPヘッダ及びペイロードデータを含む。
【0025】
B型ダイレクトインバウンドパケットは、変換モジュール212にルーティングされ、変換モジュール212は、B型パケットのSRH’内に記憶された情報を使用して、ダイレクトインバウンドパケットをB型パケットからA型パケットに変換する。特に、B型パケットのSRH’フィールド内のデータは、B型パケットの内部IPヘッダ及びペイロードデータを含むGTPパケットのGTPヘッダを生成する為に使用され、GTPパケットは、B型ダイレクトインバウンドパケットの為のA型ダイレクトインバウンドパケットである。
【0026】
変換モジュール212による変換後、A型ダイレクトインバウンドパケットはUPF112に送信される。UPF112は、その後、ダイレクトインバウンドパケットをデカプセル化して内部IPパケット(例えば、UE102から受信したD型パケット)を得て、D型ダイレクトインバウンドパケットをMECサーバ116に転送する。
【0027】
「リダイレクトインバウンドパケット」(redirected inbound packets)は、D型パケットとしてUE102に由来するパケットであり、gNodeB106を通って送信されるが、MECサーバ116から離れるように外部ネットワーク214及び/又は他のMECサーバ118又は第三者サーバ等にリダイレクトされる。リダイレクトインバウンドパケットは、
図2の左上から右下に経路206を通過することができる。gNodeB106により出力されると、リダイレクトインバウンドパケットは、gNodeB106により変換モジュール208に送信されたA型パケットであることができる。変換モジュール208は、A型リダイレクトインバウンドパケットをC型パケットに変換し、C型リダイレクトインバウンドパケットは、A型リダイレクトインバウンドパケットのGTP又はUDPヘッダからの情報を含まない。変換モジュール208は、例えば、ルーティングモジュール216経由で、C型リダイレクトインバウンドパケットをパケットがリダイレクトされたMECサーバ118に送信する。ルーティングモジュール216は、C型リダイレクトインバウンドパケットをD型パケットに変換し、D型リダイレクトインバウンドパケットをMECサーバ118に送信する。上述のように、変換は、C型パケット内にカプセル化されたD型パケットをデカプセル化することを含むことができる。
【0028】
「ダイレクトアウトバウンドパケット」(direct outbound packets)は、UPF112を通過するパケットであり、リダイレクトインバウンドパケット又はリダイレクトインバウンドパケットと同じネットワークフローの一部に応答することなく、gNodeB106を通ってUE102に送信される。例えば、MECサーバ116からのパケットは、UPF112経由でダイレクトアウトバウンドパケットとして送信される。ダイレクトアウトバウンドパケットは、
図2の経路204に沿って右から左に経路204を通過することができる。MECサーバ116から送信されてUPF112により受信されたパケットは、D型パケットであることができる。UPF112により出力されると、ダイレクトアウトバウンドパケットは、D型パケットをカプセル化するA型パケットであり、UPF112により変換モジュール212に送信される。変換モジュール212は、A型ダイレクトアウトバウンドパケットをB型パケットに変換し、B型パケットのIPv6フィールド内に含まれた情報を使用して、B型ダイレクトアウトバウンドパケットをネットワーク210上でgNodeB106に送信する。変換は、GTPパケットをSRv6パケットに変換することを含み、SRv6パケットは、SRv6パケットのSRH’フィールド内にGTPパケットのGTPヘッダからのデータを含み、SRv6パケットはさらに、GTPパケットの内部IPヘッダ及びペイロードデータを含む。
【0029】
B型ダイレクトアウトバウンドパケットは、変換モジュール212により変換モジュール208にルーティングされ、変換モジュール208は、B型パケットのSRH’内に記憶された情報を使用して、B型ダイレクトアウトバウンドパケットをA型ダイレクトアウトバウンドパケットに再変換する。このことは、SRv6パケットを、B型パケットの内部IPヘッダ及びペイロードデータをカプセル化し、GTPヘッダ内のSRH’フィールドからのデータを含むGTPパケットに変換することを含む。
【0030】
変換モジュール208による変換後、A型ダイレクトアウトバウンドパケットは、gNodeB106に送信される。gNodeB106は、その後、A型パケットをデカプセル化してD型ダイレクトアウトバウンドパケットを得て、D型ダイレクトアウトバウンドパケットをUE102に転送する。デカプセル化は、GTPパケットから内部IPヘッダ及びペイロードデータを抽出することを含む。
【0031】
「リダイレクトアウトバウンドパケット」(redirected outbound packets)は、リダイレクトインバウンドパケットがルーティングされる外部ネットワーク214内の位置又はMECサーバ118に由来するパケットであることができる。リダイレクトアウトバウンドパケットは、リダイレクトインバウンドパケット又は同じネットワークフローの一部に応答して送信される。例えば、リダイレクトアウトバウンドパケットは、MECサーバ118又は第三者サーバによりUE102に送信される。リダイレクトアウトバウンドパケットは、
図2の右下から左上に経路206を通過することができる。リダイレクトアウトバウンドパケットは、外部ネットワーク214、ルーティングモジュール216、及びネットワーク210のいくつか又は全てを経由して、変換モジュール208への経路を通過することができる。ルーティングモジュール216により受信されると、リダイレクトアウトバウンドパケットはD型パケットであり、ルーティングモジュール216によりB型リダイレクトアウトバウンドパケットに変換され、B型リダイレクトアウトバウンドパケットは、ネットワーク210上で変換モジュール208に転送される。変換は、IPパケットの内部IPヘッダ及びペイロードデータをGTPパケット内にカプセル化することを含む。
【0032】
変換モジュール208は、B型リダイレクトアウトバウンドパケットをA型パケットに変換し、A型リダイレクトアウトバウンドパケットをgNodeB106に送信する。B型からA型への変換は、B型パケットのSRH’内に記憶された情報を使用することを含む。このことは、SRv6パケットを、B型パケットの内部IPヘッダ及びペイロードデータをカプセル化し、GTPヘッダ内のSRH’フィールドからのデータを含むGTPパケットに変換することを含む。gNodeB106は、その後、B型リダイレクトアウトバウンドパケットからD型リダイレクトアウトバウンドパケット(内部IPヘッダ及びペイロードデータ)をデカプセル化し、D型リダイレクトアウトバウンドパケットをUE102に送信する。
【0033】
いくつかの実施形態において、ユーザプレーンメッセージは、UPF112及びUE102間のセッションを確立して維持する為に使用されるメッセージである。ユーザプレーンメッセージは、UE102及びMECサーバ116への、及びUE102及びMECサーバ116からのパケットのルーティング又は外部ネットワーク214へのパケットのリダイレクトを指示する為にUPF112により送信されるメッセージも含むことができる。ユーザプレーンメッセージは、エコー要求、エコー応答、エラー表示、又は他のユーザプレーンメッセージ等の5Gユーザプレーンメッセージも伝送することができる。
【0034】
インバウンドユーザプレーンメッセージは、ダイレクトインバウンドパケットとしてルーティングされることができる。UPF112から送信されたユーザプレーンメッセージは、全てのインスタンスにおいてダイレクトアウトバウンドパケットとして処理される。UPF112により指示されてリダイレクトが発生すると、その後のインバウンドデータパケット、即ち非ユーザプレーンメッセージパケットは、UPF112を迂回するリダイレクトインバウンドパケットとして変換モジュール208によりルーティングされる。変換モジュール208は、インバウンドパケットのディープパケットインスペクション(deep packet inspection)を実行することによりユーザプレーンメッセージを識別することができる。このルーティングを実行するシステム及び方法は以下に記載されている。
【0035】
図3を参照して、UE102及び外部ネットワーク214間のネットワーク経路は、制御プレーン300及びデータプレーン302に関して理解される。制御プレーン300は、モジュールと、データプレーン302のモジュールが所定の方法でパケットを送信するように構成するモジュール間の通信と、を含む。データプレーン302は、モジュールと、UE102及び外部ネットワーク214間にペイロードデータのパケットを送信するモジュール間の通信と、を含む。制御プレーン300及びデータプレーン302のモジュールは、単一の装置内、共通の回路基板又はシャーシに接続された複数の装置内、又は1以上のネットワーク接続により互いに接続された複数の装置内に実装されることができる。図示されているコンポーネントは、サーバ、クラウドコンピューティングプラットフォーム、又は他のロケーション上で実行されることができ、又は、これらの1以上の組み合わせにわたって分散されることができる。
【0036】
制御プレーン300及びデータプレーン302は、部分304及び306に分割することもできる。部分304は、パケット無線型通信(パケット無線部分304)、即ちGPRS、GTP、又は他のセルラーデータ通信プロトコルを使用した通信における使用に適しているプロトコルによるデータパケットを伝送すると理解される。図示されている実施形態において、部分304は、セルラーデータ通信の為の第3世代パートナーシッププロジェクト(3GPP)プロトコルを実装するが、他のセルラーデータ通信プロトコルを使用することもできる。
【0037】
部分306は、IPv6プロトコル等のインターネットプロトコル又はパケット無線型通信(IP部分306)における使用に適していない他のインターネットプロトコルによりデータパケットを伝送すると理解されることができる。
【0038】
パケット無線部分304の制御プレーン300は、以下のようなコンポーネントを含むことができる。
・認証、ハンドオーバ、IPマルチメディアサブシステム(IMS)、及びシンプルメッセージサービス(SMS)の一部又は全てを管理する統合データ管理を有するホームサブスクライバサーバ(HSS UDM)308又は他のコンポーネント。
・ユーザ加入によるセルラーデータ通信ネットワークへのアクセスを管理するポリシー制御機能(PCF)及び/又はポリシー及び課金ルール機能(PCRF)310。
・接続及び移動管理タスク(即ち、ハンドオーバ)を管理するアクセス及び移動管理機能(AMF)及び/又は移動管理エンティティ(MME)312又は他のコンポーネント。
・UPFを有するユーザセッションを管理し、パケット無線ネットワーク及びインターネットプロトコルネットワークのインタフェースを容易にするセッション管理機能(SMF)及び/又はサービング及びパケットゲートウェイ(SPGW-C等のSPGW)314(ここではSMF314とも呼ばれる)又は他のコンポーネント。
【0039】
SMF314は、GTPセッション情報を管理し、GTPセッション情報をAMF312に提供することができる。AMF312は、データプレーン302(以下に記載のgNodeB106)内のコンポーネントをプログラミングし、GTPセッション情報によりパケットをルーティングすることができる。
【0040】
パケット無線部分304のデータプレーン302は以下のようなコンポーネントを含むことができる。
・アンテナによりUEと直接通信し、UEからのパケットをGTPパケットにカプセル化し、ユーザプレーン制御プロトコルを実装することもできるgNodeB106又は他のハードウェアコンポーネント。
・パケット無線部分304及びIP部分306間をトラバースする時にパケットをGTPに変換したりSRv6に変換したりする変換モジュール208。
【0041】
IP部分306の制御プレーン300は以下のようなコンポーネントを含むことができる。
・以下により詳細に記載されるパケット転送制御プロトコル(PFCP)プロキシ322。
・
図3に図示されている他のコンポーネント及び/又はここに記載のネットワークのいずれかの他のデバイスへのルーティング経路を受信及び/又は送信するボーダゲートウェイプロトコル(BGP)モジュール324又は他のコンポーネント。
・GTP接続を切断し、パケット無線ネットワーク及びインターネットプロトコルネットワーク間のパケット送信を管理するユーザプレーン機能制御モジュール(UPF N4)326又は他のコンポーネント。UPF N4 326は、UPF112とのセッション確立を容易にする。
【0042】
IP部分306のデータプレーン302は以下のようなコンポーネントを含むことができる。
・上記のUPF112。
・両方の部分304及び306で動作する変換モジュール208。
・ネットワーク210
・ルーティングモジュール216。
・上記のようにUPF112に送信されたトラフィックを変換する変換モジュール212。
【0043】
図示されている実装において、PFCPによるパケット転送関連付けは、PFCPプロキシ322経由でSMF314及びUPF制御モジュール326間で調整される。したがって、SMF314及びUPF制御モジュール326は、PFCPプロキシ322経由でセッション情報を交換することができる。PFCPプロキシ322は、この情報をスヌーピングし、BGPモジュール324に提供することができる。したがって、PFCPプロキシ322は、UPF制御モジュール326のPFCP実装と関連付けられ、そして、SMF314関連付けられることができる。BGPモジュール324は、スヌーピングされた情報を使用してデータプレーン302(例えば、変換モジュール208、212、ルーティングモジュール216)をプログラミングし、以下に記載されているように、PFCPプロキシ322によりスヌーピングされた情報を使用してGTPからIPプロトコル(例えば、SRv6)への変換、そしてIPプロトコルからGTPへの変換を実行することができる。
【0044】
PFCPを実装する既存のソフトウェアパッケージは、独占されており、容易に変更できない。PFCPを実装する為のいくつかのオープンソースソフトウェアパッケージが利用可能であるが、アプリケーション内に組込しなければならないパッケージとしてのみ存在している。また、UPF制御モジュール326のネットワークスタックは、容易に変更可能ではないサードパーティソフトウェア又はオープンソースソフトウェア(例えば、upg-vpp(ユーザプレーンゲートウェイベクトルパケットプロセッサ))により実装される。
【0045】
いくつかの実施形態において、PFCPプロキシ322、BGPモジュール324、及び内部ルーティングモジュール216は、以下のことを実行する為にそのようなコンポーネントの慣習的な実装に比べて変更することができる。
・UPF制御モジュール(UPF N4)326のPFCP実装及びSMF314間の関連付けを確立すること。
・UPF制御モジュール326のPFCP実装及びSMF314間でメッセージを転送すること。
・BGPモジュール324へのセッションメッセージをスヌーピングし、そのような情報をUE102のアドレス、リモート/ローカルトンネル終点(TEP)アドレス、トンネル終点識別子(TEID)、及び他の情報として得ること。
【0046】
図4はさらに、PFCPプロキシ322及びBGPモジュール324の例示的な実装を図示している。慣習的な5Gモバイルネットワークにおいて、関連付け、例えば、制御チャンネルは、AMF MME312及びUPF N4 326間に確立される。セッション、例えば、ユーザプレーン情報は、SMF SPGW314及びUPF N4 326間に確立される。SMF SPGW314及びUPF N4 326間にセッションが確立されると、UE102は、ペイロードトラフィックの送信を開始する。その後、gNodeB106は、UE102からのパケットをGTPパケットにカプセル化し、GTPパケットをUPF112に転送する。典型的な5G実装において、関連付け及びセッション要求は、UPF N4 326のUDPポート8805に送信され、UPF N4 326からの要求への応答は、要求が受信されたソースUDPポートに送信される。
【0047】
慣習的なシステムにおいて、上記の理由により、gNodeB106及びUPF112間の経路を最適化することは難しい。全てのUEトラフィックはGTPパケットにカプセル化され、UPF112を通して転送されなければならない。
【0048】
いくつかの実施形態において、慣習的な5Gモバイルネットワークの限界は、SMF SPGW314及びUPF N4 326間にPFCPプロキシ322を配置し、PFCPプロキシ322がこれらのコンポーネント間のトラフィックを転送する400ことにより克服される。したがって、PFCPプロキシ322は、SMF SPGW314からPFCPメッセージを受信し、これらのメッセージをUPF N4 326に転送する。同様に、PFCPプロキシ322は、UPF N4 326からPFCPメッセージを受信し、これらのメッセージをSMF SPGW314に転送する。その時に、PFCPプロキシ322は、ユーザプレーン情報を取得する為に双方向にPFCPメッセージをパース(parse)することができる。
【0049】
その後、PFCPプロキシ322は、PFCPプロキシ322の外部で動作するルーティング/ソフトウェア定義ネットワーク(SDN)コントローラにユーザプレーン情報を提供する402ことができる。図示されている実施形態において、BGPモジュール324を使用してルーティング/SDNコントローラが実装されているが、他の実装を使用することもできる。PFCPプロキシ322及びルーティング/SDNコントローラ324は、同じコンピューティングデバイス上、又は分離したコンピューティングデバイス上で実行されることができる。PFCPプロキシ322及びルーティング/SDNコントローラ324は、制御プレーン300、特にSMF SPGW-C314及びUPF N4 326に更なる変更を加えることなく、
図2において図示されているルーティングを達成することができる。特に、SMF SPGW-C314及びUPF N4 326は、PFCPプロキシ322の動作がSMF SPGW-C314及びUPF N4 326により感知されないように、PFCPプロキシ322経由で5Gセッションを確立する為に情報交換をすることができる。
【0050】
BGPモジュール324は、ユーザプレーン情報に従ってデータプレーン内の変換モジュール208をプログラミングする404aことができる。その後、変換モジュール208は、UPF112経由でBGPモジュール324から受信した経路によりMECサーバ118又は又は外部ネットワーク214等のリダイレクトターゲットにリダイレクトされたパケットを転送し、パケットがまずUPF112を通るようにルーティングされる慣習的なアプローチに比べて、経路はより最適化される。BGPモジュール324は、UPF112に制御パケットをルーティングするように変換モジュール212をプログラミングする404bこともでき、外部ネットワーク214によりルーティングモジュール216に接続されたMECサーバ118又は他のデバイスへ及びからのパケットをルーティングするようにルーティングモジュール216をプログラミングする404cこともできる。
【0051】
プログラミング404aに関して、BGPモジュール324は、UPF112へのルートを変換モジュール208に提供し、そして、GTPパケットをSRv6パケットに、即ち、上記のようにA型パケットをB型パケットにどのように変換するかについてのルールも提供する。したがって、宛先がUPF112であるGTPパケットを変換モジュール208が受信すると、変換モジュール208は、BGPモジュール324から受信したルールを適用して変換を実行する。
【0052】
プログラミング404bに関して、BGPモジュール324は、変換モジュール212に同様又は同一のルールを提供することができる。このルールに基づいて、変換モジュール212は、SRv6パケットをGTPパケットに変換し、UPF112に送信された元のGTPパケットを再生成することができる。BGPモジュール324は、gNodeB106へのルートを変換モジュール212に提供することもできる。UPF112がgNodeB106を宛先とするGTPパケットを送信すると、変換モジュール212は、上記ルールに従ってGTPパケットをSRv6パケットに変換し、その後、結果的に得られたSRv6パケットを変換モジュール208に転送する。変換モジュール208は、同じルールに従ってSRv6パケットをGTPパケットに再変換し、結果的に得られたGTPパケットをgNodeB106に転送することができる。
【0053】
外部ネットワーク214又は外部MECサーバ118へ向かってUE102により送信されたパケットについて、ルーティングモジュール216は、外部MECサーバ118及び/又は外部ルーティングモジュール214への外部ルートを変換モジュール208にアナウンスすることができる。このことは、標準L3VPN SRv6方法に基づいて実行することができる。したがって、変換モジュール208は、UEにより生成された内部パケットに基づいて標準SRv6カプセル化を実行することができる。
【0054】
プログラミング404cに関して、ルーティングモジュール216は、GTPパケットを処理する能力が無い標準SRv6ルータを実装することができる。したがって、プログラミング404cは、BGPモジュール324により、GTP情報(例えば、B型パケットのSRH’ヘッダ内に埋込することができるGTP情報の一部又は全て)を含むSRv6の為の特別なサービスSIDを生成することを含むことができる。上記のように、ネットワーク210内を通過するリダイレクトインバウンドパケットは、B型パケットとしてフォーマットされることができる。したがって、プログラミング404cは、gNodeB106宛のMECサーバ118又は外部ネットワーク214から受信した各パケットをカプセル化するSRv6ヘッダのSRH’フィールドにGTP情報を追加するようにルーティングモジュール216をプログラミングすることができる。
【0055】
UE102宛の外部ネットワーク214又は外部MECサーバ118から受信した応答について、ルーティングモジュール216は、応答パケット(IPv4又はIPv6等のIPパケット)をSRv6パケットにカプセル化することができる。この時、ルーティングモジュール216は、BGPモジュール324により提供された特別なサービスSIDを使用することができる。このSIDは、SRH’ヘッダ内に含まれる必要なGTP情報を含む。したがって、変換モジュール208は、SRv6パケットをGTPパケットに変換し、結果的に得られたGTPパケットをgNodeB106に送信することができる。
【0056】
図5には、PFCPプロキシ322の例示的な実装が図示されている。PFCPプロキシ322は、PFCPメッセージをパースして5Gセッション情報を取得し、以下に示されているようにメッセージを処理し、PFCPメッセージをこれらの宛先に転送することができる。いくつかの実施形態において、go-pfcpパッケージは、PFCPメッセージをパースする為に使用される。例えば、図示されている実施形態において、PFCPプロキシ322は、PFCP要求レシーバ500、SMF要求フォーワーダ502、UPF要求フォーワーダ504、SMF応答レシーバ506、UPF応答レシーバ508、SMF応答フォーワーダ510、及びUPF応答フォーワーダ512を含む。これらのコンポーネントのそれぞれは、PFCPプロキシ322の特定のポートから送信されるかリッスンするように割当されることができる。各コンポーネントの動作は以下に記載する。
【0057】
PFCPメッセージをUPF N4 326に転送すると、PFCPプロキシ322は、転送されたメッセージのIPソースアドレスをPFCPプロキシのアドレスに書換し、IP宛先アドレスをUPF N4 326のアドレスに書換する。PFCPプロキシ322は、転送された要求のUDPソースポートをPFCPプロキシのポート番号に書換することができる。その後、PFCPプロキシ322により書換されたPFCP要求をUPF N4 326に送信することができる。
【0058】
PFCPメッセージをSMF SPGW-C314に転送すると、PFCPプロキシ322は、IPソースアドレスをPFCPプロキシのアドレスに書換し、IP宛先アドレスをSMF SPGW-C314のアドレスに書換し、UDPソースポートをPFCPプロキシのローカルポート番号に書換する。その後、PFCPプロキシは、書換されたPFCP応答をSMF SPGW-C314に送信する。
【0059】
この方法でメッセージ514、516を書換することにより、SMF SPGW-C314及びUPF N4 326はPFCPプロキシ322と通信している。しかしながら、PFCPプロキシ322は、SMF SPGW-C314及びUPF N4 326がPFCPプロキシ322を認識できないように、IPソース/宛先アドレス及びUDPソースポートを上書きすることができる。
【0060】
PFCPプロキシ322は、UDPポート8805をリッスンすることにより、PFCPメッセージをインタセプトする。UDPポート8805は、PFCPメッセージを受信する為の3GPPにより定義されたポートである。したがって、異なる構成が使用された場合、以下の記載を通して、UDPポート8805を異なるポートに置換することができる。PFCPプロキシ322のコンポーネントの動作は、以下の通りである。
・PFCP要求レシーバ500は、SMF SPGW-C314又はUPF N4 326、即ち、PFCPメッセージを受信する為に割当されたポートからUDPポート8805宛のPFCP要求メッセージ514、516をリッスンし、SMF SPGW-C314(図示されている実施例におけるポートA)からのPFCP要求514のソースポートを記録する。PFCP要求レシーバ500はさらに、UPF N4 326(図示されている実施例におけるポートB)からのPFCP要求516のソースポートを記録する。メッセージ514、516のソースポートは、(それぞれポートX及びYに)事前構成されることができる。
・SMF要求フォーワーダ502は、要求516をSMF SPGW-C314に転送する。SMF要求フォーワーダ502は、SMF要求フォーワーダ502によりSMF SPGW-C314に転送された要求516のソースポートとしてXを使用するように、PFCP要求レシーバ500により構成される。SMF要求フォーワーダ502はさらに、IP宛先アドレスをSMF SPGW-C314のIPアドレスに書換することにより、そして、IPソースアドレスをPFCPプロキシ322のIPアドレスに書換することにより、転送された要求516を変更する。
・UPF要求フォーワーダ504は、要求514をUPF N4 326に転送する。UPF要求フォーワーダ504は、UPF要求フォーワーダ504によりUPF N4 326に転送された要求514のソースポートとしてYを使用するように、PFCP要求レシーバ500により構成される。UPF要求フォーワーダ504はさらに、IP宛先アドレスをUPF N4 326のIPアドレスに書換することにより、そして、IPソースアドレスをPFCPプロキシ322のIPアドレスに書換することにより、転送された要求514を変更する。
・SMF応答レシーバ506は、ポートX宛のSMF SPGW-C314からのPFCP応答518を検出し、検出されたPFCP応答518をUPF応答フォーワーダ512に提供するように構成される。
・UPF応答レシーバ508は、ポートY宛のUPF N4 326からのPFCP応答520を検出し、検出されたPFCP応答520をSMF応答フォーワーダ510に提供するように構成される。
・SMF応答フォーワーダ510は、SMF SPGW-C314にPFCP応答520を転送し、転送されたPFCP応答520のソースをUDPポート8805に設定し、宛先をポートA(要求514の事前に記録されたソースポート)に設定するようにプログラミングされる。SMF応答フォーワーダ510はさらに、IP宛先アドレスをSMF SPGW-C314のIPアドレスに書換することにより、そして、IPソースアドレスをPFCPプロキシ322のIPアドレスに書換することにより、転送された応答520を変更する。
・UPF応答フォーワーダ512は、UPF N4 326のYポートにPFCP応答518を転送し、転送されたPFCP応答518のソースをUDPポート8805に設定し、宛先をポートB(要求516の事前に記録されたソースポート)に設定するようにプログラミングされる。UPF応答フォーワーダ512はさらに、IP宛先アドレスをUPF N4 326のIPアドレスに書換することにより、そして、IPソースアドレスをPFCPプロキシ322のIPアドレスに書換することにより、転送された応答518を変更する。
【0061】
図6を参照して、
図4に関して上述されているように、PFCPプロキシ322がメッセージを転送すると、PFCPプロキシ322は、メッセージを使用して作成された関連付け及びセッションについての情報をするすることもできる。その後、このスヌーピングされた情報は、ルーティング/SDNコントローラ324(BGPモジュール324)に提供される。図示されている実施形態において、PFCPプロキシ322及びルーティング/SDNコントローラ324間の情報の転送は、プロセス間通信(IPC)600を使用して実行される。例えば、gRPC(オープンソースリモートプロシージャコール(RPC)システム)。SDNコントローラ324は、スヌーピングされた情報によりルーティングテーブル602をプログラミングすることができる。
【0062】
スヌーピングされた情報は、以下の一部又は全てを含む。
・リモートトンネル終点(TEP)、例えば、UPF112のアドレス。
・ローカルトンネル終点、例えば、gNodeB106のアドレス。
・トンネル終点識別子(TEID)。
・QFI(サービスの品質(QoS)フロー識別子)。
・UEアドレス(UE102のアドレス)。
・アクセスネットワークインスタンス。
・コアネットワークインスタンス。
【0063】
この情報を受信した後、ルーティング/SDNコントローラ324は、この情報に基づいてルーティングテーブル602内にルーティングエントリを生成することができる。これらのルーティングエントリは、
図2及び4に関して上述されているルーティングを実装する為に、変換モジュール208、212或いはルーティングモジュール216のルーティングを制御する為に使用されることができる。
【0064】
図2を再度参照して、所望のルーティングは、内部IPパケットを含むA型(GTP)パケットを生成するgNodeB106により、UE102から内部IPパケットを受信することを含むことができる。gNodeB106は、gNodeB106及びUPF112間のGTPトンネル上で、A型パケットをUPF112に送信する。このGTPトンネルを規定するパラメータは、上記のスヌーピングされた情報、特に、UPF112を参照するリモートトンネル終点及びgNodeB106を参照するローカルトンネル終点内に含まれる。
【0065】
図2に関して上述されているように、A型パケットをGTPトンネルを通して単にルーティングするよりむしろ、A型パケットは、B型又はC型パケットに変換され、SRv6ネットワーク210等のIPネットワーク210上でルーティングされる。IPネットワーク210及びGTPトンネル間の移行は、変換モジュール208、212により管理される。また、ルーティングモジュール216は、GTPトンネルを規定するパラメータを参照してパケットをルーティングする必要もある。PFCPプロキシ322により得られたスヌーピングされた情報は、ルーティング/SDNコントローラ324に提供されることができる。その後、ルーティング/SDNコントローラ324は、変換モジュール208、212及びルーティングモジュール216をプログラミングし、
図2に関して上述されているルーティングを達成する。ルーティング/SDNコントローラ324により変換モジュール208、212及びルーティングモジュール216がどのようにプログラミングされるかの様々な実施例が以下に記載される。
【0066】
第1の実施例において、ルーティング/SDNコントローラ324は、リモートトンネル終点を受信し、UPF112へのルートを生成して配信する。特に、このルートは、変換モジュール208に提供されることができる。ルートは、上述のように、GTP及びSRv6間の変換を実行する為に、プログラミング404aにも提供されることができる。
【0067】
第2の実施例において、ルーティング/SDNコントローラ324は、ローカルトンネル終点及びUEアドレスを受信し、SRv6によるこの情報に基づいてサービスSIDを生成して配信する。特に、サービスSIDは、ルーティングモジュール216に提供されることができる。サービスSIDは、ローカルトンネル終点を参照してgNodeB106経由でネットワーク210上でUE102へのルートをアドバタイズする。サービスSIDの生成時に、ルーティング/SDNコントローラ324によりQFIを使用することもできる。この第2の実施例は、上記のプログラミング404cの実行時に実装することができる。
【0068】
第3の実施例において、gNodeB106は、A型パケットの宛先をリモートトンネル終点(UPF112のトンネル終点アドレス)に設定することにより、UPF112と共に確立されたGTPトンネル内にA型(GTP)パケットを送信することができる。PFCPプロキシ322は、GTPトンネルの設定時にgNodeB106及びUPF112間の制御パケットをスヌーピングすることにより、このリモートトンネル終点アドレスを得る。PFCPプロキシ322は、ルーティング/SDNコントローラ324にリモートトンネル終点アドレスを与えることができる。
【0069】
その後、ルーティング/SDNコントローラ324は、このリモートトンネル終点の為のルーティングエントリを生成し、このルーティングエントリにより変換モジュール208をプログラミングすることができる。いくつかの実施形態において、ルーティング/SDNコントローラ324は、GTP4.D等の機能を使用して、ルーティングエントリを生成する。ルーティングエントリは、GTPヘッダ情報のSRH’ヘッダへの符号化を含むA型パケットからB型パケットへの変換を規定し、SRv6等のセグメントルーティングプロトコルによる1以上のSIDの形式等によるネットワーク210を通した変換モジュール212へのルーティングを規定することができる。
【0070】
第4の実施例において、イングレス宅内機器(ingress premise equipment)(PE)からエグレス宅内機器(egress premise equipment)へのトラフィックのルーティングは、上記のスヌーピングされた情報に基づいて管理される。イングレス宅内機器は、例えば、変換モジュール208であることができ、エグレス宅内機器は、外部ネットワーク214又はMECサーバ118とのインタフェース接続の為のルーティングモジュール216であることができる。逆方向において、ルーティングモジュール216はイングレス宅内機器であり、変換モジュール208はエグレス宅内機器である。
【0071】
L3VPN SRv6等の標準的な仮想プライベートネットワーク(VPN)において、イングレス宅内機器は、IPネットワークから受信したパケットである内部パケットを含むSRv6パケットを送信する。SRv6パケットの宛先アドレスは、エグレス宅内機器に割当されたIPv6アドレス(例えば、セグメント識別子(SID))等のIPアドレスに設定されることができる。エグレス宅内機器は、SRv6パケットを受信し、内部パケットをデカプセル化し、内部パケットを内部パケットの宛先アドレスに転送する。図示されている実施例において、内部パケットの宛先アドレスは、IPv6宛先(例えば、SID)の形式であることができる。したがって、エグレス宅内機器は、パケットがネットワーク210を通って移動している方向によって第三者サーバ又はUE102である内部パケットの宛先アドレスに基づいて内部パケットをどこに転送するかを判定することができる。
【0072】
図示されている実施形態において、エグレス宅内機器(例えば、変換モジュール208)は、特定のUE102に到達する為に内部パケットが転送されるべき利用可能な1組のgNodeBインスタンスのgNodeB106を判定する必要がある。したがって、エグレス宅内機器は、UE102のIPアドレスをUE102が接続された(例えば、TCP又は確立された他のセッションを有する)gNodeB106のローカルトンネル終点にマッピングするルーティング/SDNコントローラ324からのルーティングエントリを受信することができる。UE102のIPアドレス及びローカルトンネル終点間の関連付けは、上記のスヌーピングされた情報から判定することができる。
【0073】
ルーティングエントリは、C型パケットからA型パケットへのパケット変換を実行して結果的に得られたA型パケットをGTP接続上でgNodeB106に送信した時に、gNodeBのローカルトンネル終点を使用するようにエグレス宅内機器に指示することができる。例えば、GTP4.D(IPv4 GTP)が使用されると、ルーティング/SDNコントローラ324は、以下のIPv6アドレスをエグレス宅内機器に提供することができる。
SRv6ロケータ(<56ビット)+TEID(32ビット)+QFI(8ビット)+ローカルトンネル終点アドレス(32ビット)
【0074】
SRv6ロケータは、ルーティング/SDNコントローラ324上の構成を参照することができる。SRv6ロケータに基づいて、変換モジュール208、212は、これから実行する変換機能を認識することができる。例えば、BGP324は、GTP及びSRv6間の変換の為にSRv6ロケータとして2001:db8::/48を割当することができる。この場合、変換モジュール208、212がGTPパケットからSRv6パケットを生成する時、SRv6ロケータとして2001:db8::/48を使用し、GTPパケットのTEID、QFI、TEPアドレスをSRH’フィールドに埋込する。宛先が2001:db8::/48と一致するSRv6パケットを変換モジュール208、212が受信する時、変換モジュール208、212は、SRv6パケットがGTPに変換される必要があると理解することができる。変換モジュール208、212は、SRH’フィールドからTEID、QFI、TEPアドレスを得て、その後、元のGTPパケットを再生成することができる。その後、GTPパケットは、宛先とされるUPF112又はgNodeB106のいずれかに送信されることができる。
【0075】
L3VPN内のマルチパスラベルスイッチング(MPLS)において、SRv6ロケータは、付与されたVPNを特定する為に使用することができる。SRv6 L3VPNの場合、SRv6ロケータは、サービスSID(IPv6アドレス形式)を特定することができ、MPLS L3VPNのラベルの代わりに、付与されたVPNを特定する為に使用することができる。
【0076】
ローカルトンネル終点アドレスは、上記IPv6アドレス内に埋込されることができる。このアドレスは、サービスSIDとしてイングレス宅内機器にアナウンスされることもできる。エグレス宅内機器がこのIPv6アドレスと宛先が一致するパケットを受信した時、エグレス宅内機器は、パケットをどのgNodeBインスタンスに転送するかを判定し、ベースバンドユニット(BBU)のローカルトンネル終点を得て、gNodeBインスタンスに送信するGTPパケッ(A型パケット)を生成することもできる。ルーティング/SDNコントローラ324は、IPv6アドレスからGTPパケットへの変換をどのように実行するかをエグレス宅内機器に指示するGTP4.Dルーティングルール等のルーティングルールによりエグレス宅内機器をプログラミングすることができる。
【0077】
SRv6からGTPへ変換する為に、エグレス宅内機器は、以下の情報を使用することができる。ローカルトンネル終点アドレス(gNodeB106のアドレス)、TEID(トンネル識別子)、そして、QFI(QoS識別子)。ローカルトンネル終点アドレスは、GTPパケットの宛先アドレスである。TEID及びQFIは、GTPヘッダ内に埋込する必要がある値である。したがって、この情報は、イングレス宅内機器からエグレス宅内機器へルーティングされたパケットのIPv6宛先アドレス(上記例示的アドレス参照)内に埋込され、SRv6からGTPへの変換を容易にすることができる。
【0078】
この情報(ローカルトンネル終点アドレス、TEID、QFI)は、PFCPプロキシ322により得られ、ルーティング/SDNコントローラ324に提供され、その後、ルーティング/SDNコントローラ324により使用され、イングレス宅内機器及びエグレス宅内機器に情報を埋込して上述のように情報を使用して変換を実行するようにイングレス宅内機器及びエグレス宅内機器をプログラミングする。ルーティング/SDNコントローラ324は、イングレス宅内機器に提供されたサービスSIDとして埋込された情報を含むIPv6アドレスを有するVPNv4/v6ルートをアナウンスすることにより、上記プログラミングを実行する。ルーティング/SDNコントローラ324は、GTP4.E機能を使用して作成されたSRv6ロケータの形式でエグレス宅内機器内にこの情報をプログラミングすることもできる。
【0079】
イングレス宅内機器がIPネットワークからパケットを受信すると、イングレス宅内機器は、IPネットワークからのSRv6を含むパケットをカプセル化することができる。この時、外部IPv6宛先アドレスは、埋込された情報を含む上記サービスSIDである。エグレス宅内機器が上記サービスSIDと一致する外部IPv6宛先アドレスを有するパケットを受信すると、エグレス宅内機器は、受信したパケットにGTP4.E機能を実行し、IPv6宛先アドレス内に埋込されたTEID、QFI、及びローカルトンネル終点を使用してパケットをGTP(A型)パケットに変換することを決定することができる。
【0080】
第5の実施例において、ルーティングモジュール216は、UE102のIPアドレス宛の外部ネットワーク214からパケットを受信することができる。スヌーピングされた情報は、gNodeB106のローカルトンネル終点への関連付けを提供する。したがって、ルーティング/SDNコントローラ324は、ルーティングモジュール216にルートをアナウンスし、UE102のIPアドレス宛のトラフィックをgNodeB106にルーティングするようにルーティングモジュール216に指示する。その後、パケットは、上述のようにD型、C型、及びA型パケット間の変換を含む
図2の経路206により、gNodeB106経由でUE102にルーティングモジュール216によりルーティングされる。
【0081】
第6の実施例において、スヌーピングされた情報は、コアネットワークインスタンスを含むことができる。この値は、5Gコアネットワークにおけるネットワークスライシングに使用することができる。この値に基づいて、ルーティング/SDNコントローラ324は、どの仮想ルーティング及び転送(VRF)テーブルからUEアドレスをインポートするべきか、そして、プログラミング404cの実行時のUE102へのルートの生成時にどのVPN(VRF)を使用すべきかを判定することができる。スヌーピングされた情報内のアクセスネットワークインスタンスは、付与されたVRFテーブルから特定のUEアドレスを除去する為に使用することができる。したがって、ルーティング/SDNコントローラ324は、スヌーピングされた情報内で指定されたコアネットワークインスタンス及びアクセスネットワークインスタンスに基づいて、インポートルール及び/又はフィルタルールを指定することができる。
【0082】
図7は、ここに開示の方法及びシステムを実装する為に使用することができる例示的コンピューティングデバイス700を図示する構成図である。コンピューティングデバイス700は、サーバ、クライアント、又は任意の他のコンピューティングエンティティとして機能することができる。コンピューティングデバイスは、ここに記載の様々な機能を実行することができ、そして、ここに記載のアプリケーションプログラムのような1以上のアプリケーションプログラムを実行することができる。コンピューティングデバイス700は、デスクトップコンピュータ、ノートパソコン、サーバコンピュータ、携帯用コンピュータ、タブレット等の多種多様な任意のコンピューティングデバイスであることができる。
【0083】
コンピューティングデバイス700は、1以上のプロセッサ702、1以上のメモリ装置704、1以上のインタフェース706、1以上の大容量記憶装置708、1以上の入力/出力(I/O)装置710、及び表示装置730を含み、その全てがバス712に接続されている。プロセッサ702は、1以上のプロセッサ又は制御装置を含み、メモリ装置704及び/又は大容量記憶装置708内に記憶された命令を実行する。プロセッサ702は、キャッシュメモリ等の様々な型のコンピュータ可読媒体を含むこともできる。
【0084】
メモリ装置704は、揮発性メモリ(例えば、ランダムアクセスメモリ(RAM)714)及び/又は不揮発性メモリ(読出専用メモリ(ROM)716)等の様々なコンピュータ可読媒体を含む。メモリ装置704は、フラッシュメモリ等の書換可能ROMを含むこともできる。
【0085】
大容量記憶装置708は、磁気テープ、磁気ディスク、光ディスク、ソリッドステートメモリ(例えば、フラッシュメモリ)等の様々なコンピュータ可読媒体を含む。
図7に図示されているように、特定の大容量記憶装置は、ハードディスクドライブ724である。様々なコンピュータ可読媒体からの読出、及び/又は、様々なコンピュータ可読媒体への書込を可能にする為に、大容量記憶装置708内に様々なドライブを含むこともできる。大容量記憶装置708は、取り外し可能媒体726及び/又は取り外し不可能媒体を含む。
【0086】
入力/出力装置710は、データ及び/又は他の情報をコンピューティングデバイス700に入力、又はコンピューティングデバイス700から取得することを可能にする様々な装置を含む。例示的入力/出力装置710は、カーソル制御装置、キーボード、キーパッド、マイク、モニタ又は他の表示装置、スピーカ、プリンタ、ネットワークインタフェースカード、モデム、レンズ、CCD又は他の撮像装置等を含む。
【0087】
表示装置730は、コンピューティングデバイス700の1以上のユーザに情報を表示することができる任意の型の装置を含む。表示装置730の例は、モニタ、表示端末、映像投影装置等を含む。
【0088】
インタフェース706は、コンピューティングデバイス700が他のシステム、デバイス、又はコンピューティング環境と情報交換することを可能にする様々なインタフェースを含む。例示的なインタフェース706は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、無線ネットワーク、及びインターネットへのインタフェース等の、任意の数の異なるネットワークインタフェース720を含む。他のインタフェースは、ユーザインタフェース718及び周辺機器インタフェース722を含む。インタフェース706は、1以上のユーザインタフェース要素718を含むこともできる。インタフェース706は、プリンタ、ポインティングデバイス(マウス、トラックパッド等)、キーボード等のインタフェースのような、1以上の周辺機器インタフェースを含むこともできる。
【0089】
バス712は、バス712に接続されている他のデバイス又はコンポーネントと同様に、プロセッサ702、メモリ装置704、インタフェース706、大容量記憶装置708、及び入力/出力装置710が互いに通信することを可能にする。バス712は、システムバス、PCIバス、IEEE1394バス、USBバス等の、1以上の複数の型のバス構造を示している。
【0090】
説明のために、プログラム及び他の実行可能なプログラムコンポーネントは、ここでは分離したブロックとして示されているが、そのようなプログラム及びコンポーネントは、コンピューティングデバイス700の異なるストレージコンポーネント内に様々な時間に存在しており、プロセッサ702により実行されると理解される。代替的に、ここに記載のシステム及び処理は、ハードウェア内、又は、ハードウェア、ソフトウェア、及び/又はファームウェアの組合せ内に実装することができる。例えば、1以上の特定用途向け集積回路(ASIC)は、ここに開示されている1以上のシステム及び処理を実行するようにプログラミングされることができる。
【符号の説明】
【0091】
100 ネットワーク環境
204 経路
206 経路
514 メッセージ
516 メッセージ
518 PFCP応答
520 PFCP応答
700 コンピューティングデバイス
712 バス
【国際調査報告】