JP7476974B2 - 転送装置、転送方法および転送プログラム - Google Patents

転送装置、転送方法および転送プログラム Download PDF

Info

Publication number
JP7476974B2
JP7476974B2 JP2022553342A JP2022553342A JP7476974B2 JP 7476974 B2 JP7476974 B2 JP 7476974B2 JP 2022553342 A JP2022553342 A JP 2022553342A JP 2022553342 A JP2022553342 A JP 2022553342A JP 7476974 B2 JP7476974 B2 JP 7476974B2
Authority
JP
Japan
Prior art keywords
packet
outer header
information
unit
header
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.)
Active
Application number
JP2022553342A
Other languages
English (en)
Other versions
JPWO2022070348A1 (ja
Inventor
裕平 林
浩 大澤
寛規 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022070348A1 publication Critical patent/JPWO2022070348A1/ja
Application granted granted Critical
Publication of JP7476974B2 publication Critical patent/JP7476974B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、転送装置、転送方法および転送プログラムに関する。
従来、経済化の観点から、パケットのL3-L4ヘッダやL7ペイロードを分析し何等かの処理を行うNSF(Network Service Function)を、分散的ではなく集約的にネットワーク内に配備した上で、通信を転送してNSF適用をする技術が期待されている。
一方、転送のためにカプセリング技術を使う網では、集約地点のパケットにカプセルヘッダが付与されており、NSFが当該ヘッダに対応してない場合等、NSFの集約的な網配備ができない場合があった。そこで、カプセルヘッダの除去、再カプセル化を行う技術が提案されている(特許文献1~2、非特許文献1~5参照)。
特開2017-038179号公報 特開2019-097069号公報
FD.io VPP, "SRv6 endpoint to SR-unaware appliance via static proxy (End.AS), "Towards Deep Learning Models Resistant to Adversarial Attacks", [online], [2020年9月1日検索]、インターネット<URL: https://docs.fd.io/vpp/18.04/srv6_as_plugin_doc.html> Lily Guo, "Analysis of Service Function Chaining for Carrier Grade Networks," 信学技報, NS2014-256, Vol.114, No.477, pp.463-468. Yukito Ueno, "SRv6 Tagging Proxy", [online], arXiv:1901.08573v3 [cs.LG] ,2019年6月, [2020年9月1日検索]、インターネット<URL: https://datatracker.ietf.org/meeting/106/materials/slides-106-spring-sessa-srv6-tagging-proxy-00.pdf> A. Mayer, S. Salsano, P. L. Ventre, A. Abdelsalam, L. Chiaraviglio and C. Filsfils, "An Efficient Linux Kernel Implementation of Service Function Chaining for legacy VNFs based on IPv6 Segment Routing", 2019 IEEE Conference on Network Softwarization (NetSoft), Paris, France, 2019, pp. 333-341, doi: 10.1109/NETSOFT.2019.8806652 FD.io VPP, "SRv6 endpoint to SR-unaware appliance via dynamic proxy (End.AD) ", [online], [2020年9月1日検索]、インターネット<URL: https://docs.fd.io/vpp/18.04/srv6_ad_plugin_doc.html>
しかしながら、従来技術では、集約したNSFでのパケットの分析等の処理を低コストで行うことが困難な場合がある。例えば、事前にカプセルのアウターヘッダとインナーヘッダとの対応付けが必要な場合がある。あるいは、再カプセル化の際、インナーパケットがlocalアドレスの場合にアウターヘッダの再付与ミスが発生する場合がある。または、vlanヘッダやIPパケットのTos値等にアウターヘッダの検索キーを付与して、サービスに影響を及ぼす場合がある。
本発明は、上記に鑑みてなされたものであって、集約したNSFでパケットの分析等の処理を低コストで行うことを目的とする。
上述した課題を解決し、目的を達成するために、本発明に係る転送装置は、カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとアウターヘッダの情報を含むフィールドとを、該パケットに含める削除部と、受信したパケットを再カプセル化する際に、前記フィールドから取り出した前記アウターヘッダの情報を用いて該パケットにアウターヘッダを付加する付加部と、を有することを特徴とする。
本発明によれば、集約したNSFでパケットの分析等の処理を低コストで行うことが可能となる。
図1は、転送装置の概要を説明するための図である。 図2は、転送装置の概略構成を例示する模式図である。 図3は、第1の実施形態の転送装置の処理を説明するための図である。 図4は、第1の実施形態の転送装置の処理を説明するための図である。 図5は、第2の実施形態の転送装置の処理を説明するための図である。 図6は、第2の実施形態の転送装置の処理を説明するための図である。 図7は、第2の実施形態の転送装置の処理を説明するための図である。 図8は、第3の実施形態の転送装置の処理を説明するための図である。 図9は、第3の実施形態の転送装置の処理を説明するための図である。 図10は、転送処理手順を示すシーケンス図である。 図11は、転送処理の効果を説明するための図である。 図12は、転送プログラムを実行するコンピュータを例示する図である。
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
[転送装置の概要]
図1は、転送装置の概要を説明するための図である。図1に示すように、本実施形態の転送装置10は、ネットワークNを介して他のネットワーク装置からカプセル化されたパケットを受信した場合に、カプセルヘッダ(アウターヘッダ)を削除して、NSF20に転送する。
その際に、転送装置10は、例えば、パケットやアウターヘッダのキャッシュを行うことなく、アウターヘッダとアウターヘッダの情報を含むフィールドとを、該パケットに含める。あるいは、パケットとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。またいは、アウターヘッダとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。
NSF20は、パケット(インナーパケット)のL3-L4ヘッダやL7ペイロードを分析し何等かの処理を行って、転送装置10にパケットを返送する。
転送装置10は、NSF20からパケットを受信した場合に、上記のフィールドから取り出したアウターヘッダの情報を用いて、アウターヘッダを再付与する再カプセル化を行い、ネットワークNを介して他のネットワーク装置に転送する。または、転送装置10は、記憶部から取り出したパケットに、対応付けられたインナーパケットの情報を用いて、アウターヘッドを再付与し、ネットワークNを介して他のネットワーク装置に転送する。あるいは、転送装置10は、記憶部から取り出したインナーパケットの情報に対応付けられたアウターヘッダを再付与し、ネットワークNを介して他のネットワーク装置に転送する。
[転送装置の構成]
図2は、転送装置の概略構成を例示する模式図である。図2に例示するように、転送装置10は、パソコン等の汎用コンピュータで実現され、通信制御部13、記憶部14、および制御部15を備える。
通信制御部13は、NIC(Network Interface Card)等で実現され、ネットワークを介したサーバ等の外部の装置と制御部15との通信を制御する。例えば、通信制御部13は、転送対象のデータを管理する管理装置等と制御部15との通信を制御する。
記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現され、後述する転送処理に用いられるパケットやアウターヘッダ等が記憶される。なお、記憶部14は、通信制御部13を介して制御部15と通信する構成でもよい。
制御部15は、CPU(Central Processing Unit)やNP(Network Processor)やFPGA(Field Programmable Gate Array)等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部15は、図2に例示するように、削除部15aおよび付加部15bとして機能する。なお、これらの機能部は、それぞれが異なるハードウェアに実装されてもよい。また、制御部15は、その他の機能部を備えてもよい。
[第1の実施形態]
第1の実施形態の転送装置10において、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとアウターヘッダの情報を含むフィールドとを、該パケットに含める。このフィールドとは、具体的には、後述するプロキシヘッダまたはTrailerである。またこの場合に、アウターヘッダの情報は、該アウターヘッダの長さとプロトコル種別とを含む。
また、付加部15bは、受信したパケットを再カプセル化する際に、上記のフィールドから取り出したアウターヘッダの情報を用いて該パケットにアウターヘッダを付加する。これにより、転送装置10は、キャッシュ検索の処理負荷およびキャッシュ用メモリを不要とし、低コストで集約したNSFにパケットを転送することが可能となる。
ここで、図3および図4は、第1の実施形態の転送装置の処理を説明するための図である。例えば、図3に示すように、削除部15aは、プロキシヘッダをインナーパケットに組み込む。具体的には、削除部15aは、図3(b)に示すように定義されたプロキシヘッダに、アウターヘッダの長さとプロトコル種別を含める。また、削除部15aは、図3(a)、(c)に示すように、インナーパケットのヘッダ(インナーヘッダ)にプロキシヘッダと削除したアウターヘッダとを組み込んで、通信制御部13を介してNSF20に転送する。
この場合に、付加部15bは、図3(a)、(c)に示すように、NSF20から通信制御部13を介して受信したパケットのプロキシヘッダとアウターヘッダとを用いて、このプロキシヘッダとアウターヘッダを削除したパケットに、アウターヘッダを付加して、通信制御部13を介して他のネットワーク装置に転送する。
ここで、プロトコル種別は、例えばIPv4またはIPv6である。削除部15aは、受信したパケットのプロトコル種別を示すイーサヘッダに応じて、プロキシヘッダを設定する。具体的には、プロトコル種別がIPv4の場合には、削除部15aは、図3(d)に示すように、インナーパケットのオプション領域のデータ部に、プロキシヘッダとアウターヘッダを挿入する。その後、削除部15aは、アウターヘッダを削除するデカプセルを行う。また、削除部15aは、チェックサム計算によりパケットの整合性をとる。
この場合に、付加部15bは、インナーパケットのオプション領域のプロキシヘッダとアウターヘッダとを用いて、アウターヘッダを付加する再カプセル化を行うとともに、オプション領域を削除する。また、付加部15bは、チェックサム計算によりパケットの整合性をとる。
また、プロトコル種別がIPv6の場合には、削除部15aは、図3(e)に示すように、拡張ヘッダのオプション領域にプロキシヘッダとアウターヘッダとを挿入する。その後、削除部15aは、アウターヘッダを削除するデカプセルを行う。また、削除部15aは、チェックサム計算によりパケットの整合性をとる。
この場合に、付加部15bは、インナーパケットの拡張ヘッダのプロキシヘッダとアウターヘッダとを用いて、アウターヘッダを付加する再カプセル化を行うとともに、拡張ヘッダを削除する。また、付加部15bは、チェックサム計算によりパケットの整合性をとる。これにより、転送装置10は、ペイロード分析に影響なく、容易に再カプセル化を行うことが可能となる。
または、図4に示すように、削除部15aは、後述するTrailerをパケットの末尾に付加する。具体的には、削除部15aは、図4(b)に示すように定義されたTrailerに、アウターヘッダの長さとプロトコル種別を含める。また、削除部15aは、図4(a)、(c)、(d)に示すように、インナーパケットの末尾にTrailerと削除したアウターヘッダとを組み込んで、通信制御部13を介してNSF20に転送する。
この場合に、付加部15bは、図4(a)、(c)、(e)に示すように、NSF20から通信制御部13を介して受信したパケットのTrailerとアウターヘッダとを用いて、このTrailerとアウターヘッダを削除したパケットに、アウターヘッダを付加して、通信制御部13を介して他のネットワーク装置に転送する。これにより、転送装置10は、インターネット資源を管理するIANAへの資源登録をせずとも再カプセル化を行うことが可能となる。
[第2の実施形態]
第2の実施形態の転送装置10において、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、該パケットとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。この場合に、付加部15bは、受信したパケットを再カプセル化する際に、記憶部14から取り出したパケットに、対応付けられたインナーパケットの情報を用いてアウターヘッダを付加する。
この場合において、インナーパケットの情報は、5-tuple、インナーパケット全体のハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれか1つである。
ここで、図5~図7は、第2の実施形態の転送装置の処理を説明するための図である。例えば、図5に示すように、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、パケットとインナーパケットの5-tupleとを対応付ける。具体的には、削除部15aは、図5(a)に示すように、パケットを記憶部14のパケット保存領域に保存するとともに、パケット保存領域のポインタとインナーパケットの5-tupleとを対応付ける対応付けハッシュ表を記憶部14に保存する。
詳細には、図5(b)に示すように、削除部15aは、アウターヘッダを削除する前のパケット全体をパケット保存領域に保存し、ポインタを取得する。また、削除部15aは、インナーパケットの5-tupleと取得したポインタとを対応付けハッシュ表に登録する。また、削除部15aは、アウターヘッダを削除したインナーパケットを、通信制御部13を介してNSFに転送する。
この場合に、付加部15bは、受信したパケットを再カプセル化する際に、図5(a)に示すように、パケット保存領域と対応付けハッシュ表とを検索し、受信したパケットの5-tupleに対応するパケットを取得する。
詳細には、図5(b)に示すように、受信したパケットの5tupleに対応するポインタを対応付けハッシュ表から取得して、取得したポインタによりパケット保存領域から取得したパケットを、通信制御部13を介して他のネットワーク装置に送信する。なお、受信したパケットが記憶部14に記憶されていない場合には、付加部15bは、パケットを破棄する。
このように、パケットとインナーパケットの5-tupleとを対応付けることにより、転送装置10は、再カプセル化の処理コストを削除することが可能となる。
または、図6に示すように、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、パケットとインナーパケットのハッシュ値とを対応付ける。具体的には、削除部15aは、図6(a)に示すように、パケットを記憶部14のパケット保存領域に保存するとともに、パケット保存領域のポインタとインナーパケットのハッシュ値とを対応付ける対応付けハッシュ表を記憶部14に保存する。
詳細には、図6(b)に示すように、削除部15aは、アウターヘッダを削除する前のパケット全体をパケット保存領域に保存し、ポインタを取得する。また、削除部15aは、インナーパケットのハッシュ値と取得したポインタとを対応付けハッシュ表に登録する。また、削除部15aは、アウターヘッダを削除したインナーパケットを、通信制御部13を介してNSFに転送する。
この場合に、付加部15bは、受信したパケットを再カプセル化する際に、図6(a)に示すように、パケット保存領域と対応付けハッシュ表とを検索し、受信したパケットのハッシュ値に対応するパケットを取得する。
詳細には、図6(b)に示すように、受信したパケットのハッシュ値に対応するポインタを対応付けハッシュ表から取得して、取得したポインタによりパケット保存領域から取得したパケットを、通信制御部13を介して他のネットワーク装置に送信する。なお、受信したパケットが記憶部14に記憶されていない場合には、付加部15bは、パケットを破棄する。
このように、パケットとインナーパケットのハッシュ値とを対応付けることにより、転送装置10は、アウターヘッダの再付与ミスを低減することが可能となる。
また、図7に示すように、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、パケットとインナーパケット内の所定のビット列のハッシュ値とを対応付ける。具体的には、削除部15aは、図7(a)に示すように、パケットを記憶部14のパケット保存領域に保存するとともに、パケット保存領域のポインタとインナーパケット内の所定のビット列のハッシュ値とを対応付ける対応付けハッシュ表を記憶部14に保存する。
詳細には、図7(b)に示すように、削除部15aは、アウターヘッダを削除する前のパケット全体をパケット保存領域に保存し、ポインタを取得する。また、削除部15aは、指定したインナーパケット内のビット列のハッシュ値と取得したポインタとを対応付けハッシュ表に登録する。また、削除部15aは、アウターヘッダを削除したインナーパケットを、通信制御部13を介してNSFに転送する。
この場合に、付加部15bは、受信したパケットを再カプセル化する際に、図7(a)に示すように、パケット保存領域と対応付けハッシュ表とを検索し、受信したパケット内の所定のビット列のハッシュ値に対応するパケットを取得する。
詳細には、図7(b)に示すように、受信したパケット内の指定したビット列のハッシュ値に対応するポインタを対応付けハッシュ表から取得して、取得したポインタによりパケット保存領域から取得したパケットを、通信制御部13を介して他のネットワーク装置に送信する。なお、受信したパケットが記憶部14に記憶されていない場合には、付加部15bは、パケットを破棄する。
このように、パケットとインナーパケット内の所定のビット列のハッシュ値とを対応付けることにより、転送装置10は、アウターヘッダの再付与ミス率を低減することが可能となる。
[第3の実施形態]
第3の実施形態の転送装置10において、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。この場合に、付加部15bは、受信したパケットを再カプセル化する際に、記憶部14から取り出したインナーパケットの情報に対応付けられたアウターヘッダを付加する。
この場合に、インナーパケットの情報は、インナーパケットのハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれかである。
ここで、図8および図9は、第3の実施形態の転送装置の処理を説明するための図である。例えば、削除部15aは、図8に示すように、カプセル化されたパケットのアウターヘッダを削除する際に、アウターヘッダとインナーパケットのハッシュ値とを対応付ける。具体的には、削除部15aは、図8(a)に示すように、アウターヘッダを記憶部14のアウターヘッダ保存領域に保存するとともに、アウターヘッダ保存領域のポインタとインナーパケットのハッシュ値とを対応付ける対応付けハッシュ表を記憶部14に保存する。
詳細には、図8(b)に示すように、削除部15aは、アウターヘッダをアウターヘッダ保存領域に保存し、ポインタを取得する。また、削除部15aは、インナーパケットのハッシュ値と取得したポインタとを対応付けハッシュ表に登録する。また、削除部15aは、アウターヘッダを削除したインナーパケットを、通信制御部13を介してNSFに転送する。
この場合に、付加部15bは、受信したパケットを再カプセル化する際に、図8(a)に示すように、アウターヘッダ保存領域と対応付けハッシュ表とを検索し、受信したパケットのハッシュ値に対応するアウターヘッダを取得する。
詳細には、図8(b)に示すように、受信したパケットのハッシュ値に対応するポインタを対応付けハッシュ表から取得して、取得したポインタによりアウターヘッダ保存領域からアウターヘッダを取得する。そして、付加部15bは、アウターヘッダを付加したパケットを、通信制御部13を介して他のネットワーク装置に送信する。なお、受信したパケットのアウターヘッダが記憶部14に記憶されていない場合には、付加部15bは、パケットを破棄する。
このように、アウターヘッダとインナーパケットのハッシュ値とを対応付けることにより、転送装置10は、消費メモリを低減することが可能となる。
また、削除部15aは、図9に示すように、カプセル化されたパケットのアウターヘッダを削除する際に、アウターヘッダとインナーパケット内の所定のビット列のハッシュ値とを対応付ける。具体的には、削除部15aは、図9(a)に示すように、アウターヘッダを記憶部14のアウターヘッダ保存領域に保存するとともに、アウターヘッダ保存領域のポインタとインナーパケット内の所定のビット列のハッシュ値とを対応付ける対応付けハッシュ表を記憶部14に保存する。
詳細には、図9(b)に示すように、削除部15aは、アウターヘッダをアウターヘッダ保存領域に保存し、ポインタを取得する。また、削除部15aは、インナーパケット内の指定したビット列のハッシュ値と取得したポインタとを対応付けハッシュ表に登録する。また、削除部15aは、アウターヘッダを削除したインナーパケットを、通信制御部13を介してNSFに転送する。
この場合に、付加部15bは、受信したパケットを再カプセル化する際に、図9(a)に示すように、アウターヘッダ保存領域と対応付けハッシュ表とを検索し、受信したパケット内の指定した所定のビット列のハッシュ値に対応するアウターヘッダを取得する。
詳細には、図9(b)に示すように、受信したパケット内の指定したビット列のハッシュ値に対応するポインタを対応付けハッシュ表から取得して、取得したポインタによりアウターヘッダ保存領域からアウターヘッダを取得する。そして、付加部15bは、アウターヘッダを付加したパケットを、通信制御部13を介して他のネットワーク装置に送信する。が記憶部14に記憶されていない場合には、付加部15bは、パケットを破棄する。
このように、アウターヘッダとインナーパケット内の所定のビット列のハッシュ値とを対応付けることにより、転送装置10は、アウターヘッダの再付与ミスを低減することが可能となる。
[転送処理]
次に、図10を参照して、本実施形態に係る転送装置10による転送処理について説明する。図10は、転送処理手順を示すシーケンス図である。図10のシーケンスは、転送装置10がパケットを受信したタイミングで開始される。
まず、転送装置10がネットワークNを介して他のネットワーク装置からカプセル化されたパケットを受信した場合に、削除部15aが、カプセル化されたパケットのアウターヘッダを削除して、NSFに転送する(ステップS1)。
その際に、削除部15aは、該アウターヘッダとアウターヘッダの情報を含むフィールドとを、インナーパケットまたはパケットの末尾に含める。この場合に、アウターヘッダの情報は、該アウターヘッダの長さとプロトコル種別とを含む。
例えば、削除部15aは、アウターヘッダの長さとプロトコル種別を含むプロキシヘッダをインナーパケットに組み込む。あるいは、削除部15aは、アウターヘッダの長さとプロトコル種別を含むTrailerをパケットの末尾に付加する。
また、転送装置10がNSFからパケットを受信した場合に、付加部15bが、受信したパケットを再カプセル化して、ネットワークNを介して他のネットワーク装置に転送する(ステップS2)。その際に、付加部15bは、フィールドから取り出したアウターヘッダの情報を用いて該パケットにアウターヘッダを付加する。これにより、一連の転送処理が終了する。
または、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、該パケットとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。この場合に、付加部15bは、受信したパケットを再カプセル化する際に、記憶部から取り出したパケットに、対応付けられたインナーパケットの情報を用いてアウターヘッダを付加する。この場合において、インナーパケットの情報は、5-tuple、インナーパケットのハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれか1つである。
あるいは、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。この場合に、付加部15bは、受信したパケットを再カプセル化する際に、記憶部14から取り出したインナーパケットの情報に対応付けられたアウターヘッダを付加する。この場合において、インナーパケットの情報は、インナーパケットのハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれかである。
[転送処理の効果]
次に、図11は、転送処理の効果を説明するための図である。図11(α)に示すように、従来のスタティックキャッシュでは、アウターヘッダとインナーヘッダとを事前に対応付けしておくことが必要である。一方、ダイナミックキャッシュにおいて、図11(β)、(γ)に示すように、vlanヘッダやIPヘッダToS値にアウターヘッダの検索キーを付与する方法では、vlanやインナーパケットが変化するため、サービスに影響がある。
また、アウターヘッダの検索キーを付与しない方法において、図11(δ)に示すように、宛先IPを検索キーとすると、インナーパケットがds-lite等のローカルアドレスである場合に、アウターヘッダの再付与ミスが発生する場合があった。また、図11(ε)に示すように、インナーパケットの5-tupleを検索キーとしても、同様に、インナーパケットがds-lite等のローカルアドレスである場合に、アウターヘッダの再付与ミスが発生する場合があった。そこで、アウターヘッダをキャッシュすると、再カプセル化の処理コストがかかるという問題があった。そもそも、キャッシュを行う方式では、キャッシュ用のメモリを確保する必要がある。
これに対し、本実施形態の転送装置10において、削除部15aが、カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとアウターヘッダの情報を含むフィールドとを、該パケットに含める。また、付加部15bが、受信したパケットを再カプセル化する際に、フィールドから取り出したアウターヘッダの情報を用いて該パケットにアウターヘッダを付加する。この場合において、アウターヘッダの情報は、該アウターヘッダの長さとプロトコル種別とを含む。
具体的には、転送装置は、図11(a)、(b)に例示するように、パケットのアウターヘッダを削除する際に、パケットやアウターヘッダのキャッシュを行うことなく、アウターヘッダとアウターヘッダの情報を含むフィールドとを、該パケットに含める。例えば、図11(a)に示すように、アウターヘッダの情報を示すプロキシヘッダとアウターヘッダとをインナーパケットに埋め込むことにより、転送装置10は、ペイロード分析に影響なく、容易に再カプセル化を行うことが可能となる。また、図11(b)に示すように、ペイロードの末尾にアウターヘッダの情報を示すTrailerとアウターヘッダとを埋め込むことにより、転送装置10は、インターネット資源を管理するIANAを介さずに再カプセル化を行うことが可能となる。
または、転送装置10では、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、該パケットとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。この場合に、付加部15bは、受信したパケットを再カプセル化する際に、記憶部14から取り出したパケットに、対応付けられたインナーパケットの情報を用いてアウターヘッダを付加する。この場合において、インナーパケットの情報は、5-tuple、インナーパケットのハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれか1つである。
具体的には、転送装置10は、図11(c)、(d)、(e)に例示すように、パケットのアウターヘッダを削除する際に、パケットとインナーパケットの情報とを対応付ける情報を記憶部に記憶させる。例えば、図11(c)に示すように、パケットとインナーパケットの5-tupleとを対応付けることにより、転送装置10は、再カプセル化の処理コストを削除することが可能となる。また、図11(d)に示すように、パケットとインナーパケットのハッシュ値とを対応付けることにより、転送装置10は、アウターヘッダの再付与ミスを低減することが可能となる。また、図11(e)に示すように、パケットとインナーパケット内の所定のビット列のハッシュ値とを対応付けることにより、転送装置10は、アウターヘッダの再付与ミスを低減することが可能となる。
または、転送装置10において、削除部15aは、カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。この場合に、付加部15bは、受信したパケットを再カプセル化する際に、記憶部14から取り出したインナーパケットの情報に対応付けられたアウターヘッダを付加する。この場合において、インナーパケットの情報は、インナーパケットのハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれかである。
具体的には、転送装置10は、図11(f)、(g)に例示すように、該アウターヘッダとインナーパケットの情報とを対応付ける情報を記憶部14に記憶させる。例えば、図11(f)に示すように、アウターヘッダとインナーパケットのハッシュ値とを対応付けることにより、転送装置10は、消費メモリを低減することが可能となる。また、図11(g)に示すように、アウターヘッダとインナーパケット内の所定のビット列のハッシュ値とを対応付けることにより、転送装置10は、アウターヘッダの再付与ミスを低減することが可能となる。
このように、上記実施形態の転送装置10の転送処理によれば、集約したNSFでパケットの分析等の処理を低コストで行うことが可能となる。
[プログラム]
上記実施形態に係る転送装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、転送装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の転送処理を実行する転送プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の転送プログラムを情報処理装置に実行させることにより、情報処理装置を転送装置10として機能させることができる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。また、転送装置10の機能を、クラウドサーバに実装してもよい。
図12は、転送プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。ディスクドライブ1041には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1051およびキーボード1052が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1061が接続される。
ここで、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。上記実施形態で説明した各情報は、例えばハードディスクドライブ1031やメモリ1010に記憶される。
また、転送プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1093として、ハードディスクドライブ1031に記憶される。具体的には、上記実施形態で説明した転送装置10が実行する各処理が記述されたプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。
また、転送プログラムによる情報処理に用いられるデータは、プログラムデータ1094として、例えば、ハードディスクドライブ1031に記憶される。そして、CPU1020が、ハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、転送プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1041等を介してCPU1020によって読み出されてもよい。あるいは、転送プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
10 転送装置
13 通信制御部
14 記憶部
15 制御部
15a 削除部
15b 付加部

Claims (8)

  1. カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとアウターヘッダの情報を含むフィールドとを、該パケットに含める削除部と、
    受信したパケットを再カプセル化する際に、前記フィールドから取り出した前記アウターヘッダの情報を用いて該パケットにアウターヘッダを付加する付加部と、
    を有することを特徴とする転送装置。
  2. 前記アウターヘッダの情報は、該アウターヘッダの長さとプロトコル種別とを含むことを特徴とする請求項1に記載の転送装置。
  3. カプセル化されたパケットのアウターヘッダを削除する際に、該パケットとインナーパケットの情報とを対応付ける情報を記憶部に記憶させる削除部と、
    受信したパケットを再カプセル化する際に、前記記憶部から取り出した前記パケットに、対応付けられた前記インナーパケットの情報を用いてアウターヘッダを付加する付加部と、
    を有することを特徴とする転送装置。
  4. 前記インナーパケットの情報は、5-tuple、インナーパケットのハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれか1つであることを特徴とする請求項3に記載の転送装置。
  5. カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとインナーパケットの情報とを対応付ける情報を記憶部に記憶させる削除部と、
    受信したパケットを再カプセル化する際に、前記記憶部から取り出した前記インナーパケットの情報に対応付けられた前記アウターヘッダを付加する付加部と、
    を有することを特徴とする転送装置。
  6. 前記インナーパケットの情報は、インナーパケットのハッシュ値、またはインナーパケット内の所定のビット列のハッシュ値のいずれかであることを特徴とする請求項5に記載の転送装置。
  7. 転送装置が実行する転送方法であって、
    カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとアウターヘッダの情報とを含むフィールドを、該パケットに含める削除工程と、
    受信したパケットを再カプセル化する際に、前記フィールドから取り出した前記アウターヘッダの情報を用いて該パケットにアウターヘッダを付加する付加工程と、
    を含んだことを特徴とする転送方法。
  8. カプセル化されたパケットのアウターヘッダを削除する際に、該アウターヘッダとアウターヘッダの情報とを含むフィールドを、該パケットに含める削除ステップと、
    受信したパケットを再カプセル化する際に、前記フィールドから取り出した前記アウターヘッダの情報を用いて該パケットにアウターヘッダを付加する付加ステップと、
    をコンピュータに実行させるための転送プログラム。
JP2022553342A 2020-09-30 2020-09-30 転送装置、転送方法および転送プログラム Active JP7476974B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/037274 WO2022070348A1 (ja) 2020-09-30 2020-09-30 転送装置、転送方法および転送プログラム

Publications (2)

Publication Number Publication Date
JPWO2022070348A1 JPWO2022070348A1 (ja) 2022-04-07
JP7476974B2 true JP7476974B2 (ja) 2024-05-01

Family

ID=80949910

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022553342A Active JP7476974B2 (ja) 2020-09-30 2020-09-30 転送装置、転送方法および転送プログラム

Country Status (3)

Country Link
US (1) US20240015049A1 (ja)
JP (1) JP7476974B2 (ja)
WO (1) WO2022070348A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005136684A (ja) 2003-10-30 2005-05-26 Nippon Telegr & Teleph Corp <Ntt> データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム
JP2006121434A (ja) 2004-10-21 2006-05-11 Nec Access Technica Ltd Atm通信装置およびその通信方法
JP2008295964A (ja) 2007-06-04 2008-12-11 Heiwa Corp 遊技機

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4478700B2 (ja) * 2007-05-28 2010-06-09 シャープ株式会社 ネットワークベースipモビリティプロトコルを利用した通信システム、制御装置、ルータ及びその通信方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005136684A (ja) 2003-10-30 2005-05-26 Nippon Telegr & Teleph Corp <Ntt> データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム
JP2006121434A (ja) 2004-10-21 2006-05-11 Nec Access Technica Ltd Atm通信装置およびその通信方法
JP2008295964A (ja) 2007-06-04 2008-12-11 Heiwa Corp 遊技機

Also Published As

Publication number Publication date
JPWO2022070348A1 (ja) 2022-04-07
WO2022070348A1 (ja) 2022-04-07
US20240015049A1 (en) 2024-01-11

Similar Documents

Publication Publication Date Title
US20190245809A1 (en) System and method for message handling in a network device
US8650326B2 (en) Smart client routing
US8121146B2 (en) Method, apparatus and system for maintaining mobility resistant IP tunnels using a mobile router
US7706367B2 (en) Integrated tunneling and network address translation: performance improvement for an interception proxy server
US9787581B2 (en) Secure data flow open information analytics
US9847940B2 (en) Control method, packet processing device, and storage medium
JP2021500802A (ja) 第1のパケットアプリケーション分類のためのシステムおよび方法
CN110505244B (zh) 远程隧道访问技术网关以及服务器
US10178068B2 (en) Translating network attributes of packets in a multi-tenant environment
US20240089317A1 (en) Method and electronic device for accessing service device in local area network
WO2023186109A1 (zh) 节点访问方法以及数据传输系统
US8509235B2 (en) Layer-2 packet return in proxy-router communication protocol environments
JP7476974B2 (ja) 転送装置、転送方法および転送プログラム
Cong et al. Ceupf: Offloading 5g user plane function to programmable hardware base on co-existence architecture
US20230179563A1 (en) Methods and Systems for Efficient Virtualization of Inline Transparent Computer Networking Devices
US11451513B2 (en) Notification device and notification method
US20170149663A1 (en) Control device, communication system, control method, and non-transitory recording medium
CN110289979B (zh) 桥接器及网络的管理方法
CN113497767A (zh) 传输数据的方法、装置、计算设备及存储介质
WO2022001666A1 (zh) 建立vxlan隧道的方法及相关设备
Johansson et al. Supporting user mobility with peer-to-peer-based application mobility in heterogeneous networks
US10938778B2 (en) Route reply back interface for cloud internal communication
CN113890789B (zh) 适用于数据中心的udp隧道流量的分流方法、流量转发方法
WO2022252569A1 (zh) 报文处理方法、装置及系统
Novo Enabling CoAP-Based Communication across Network Boundaries: Challenges and Solutions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230110

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: 20240319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240401