加入者向けL2TP LACトンネリング
LACトンネル選択の概要
ユーザーがドメインにログインすると、PPP クライアントは LAC に接続して接続を確立します。LACは、ドメイン内の宛先と、そこに到達できるトンネルを見つける必要があります。宛先、トンネル、ドメイン間の関連付けは、加入者のアクセスプロファイルのドメインマップ、またはRADIUSサーバーから受信したTunnel-Group属性(VSA 26-64)のトンネルプロファイルによって提供されます。RADIUS属性は、ドメインマップで指定されたプロファイルよりも優先されます。トンネルプロファイルには、トンネルのリストが含まれています。各トンネルは、宛先 IP アドレスとトンネル優先レベルに関連付けられています。
L2TPでは、以下を指定できます。
-
ドメインの宛先は最大31個。
-
最大8レベルのトンネル設定。優先レベルは、LACがユーザーの要求ドメインの宛先に対して既存のトンネルを使用(または新しいトンネルを確立)しようとする順序を決定します。
注:ゼロ(0)は最高レベルの優先度です。これは最も好ましいレベルです。
2つのトンネルがドメイン内の有効な宛先に到達した場合、LACはまず優先度が最も高いトンネルを選択します。例えば、トンネルAの優先レベルが1で、トンネルBの優先レベルが4の場合、LACは最初にトンネルAの使用を試みます。
-
単一のプリファレンスレベルで最大31の宛先。
LACは、PPPセッションをトンネル化する必要があると判断すると、トンネルプロファイルによってPPPユーザーまたはPPPユーザーのドメインに関連付けられたトンネルのセットからトンネルを選択します。
トンネルの選択は、以下の設定の影響を受けます。
-
優先レベル間のフェイルオーバー—デフォルトでは、有効な宛先へのトンネルが優先レベル内で選択されていない場合、選択プロセスは次のレベルにフェイルオーバーします。つまり、LACは次の下のレベルに下降して、適切なトンネルの検索を続行します。詳細については、 優先レベル間のフェイルオーバーが設定されている場合の選択 を参照してください。
-
優先レベルでのフェイルオーバー—この場合、LACはセッションを確立しようとする試みを優先レベルの1つのトンネルのみに制限しません。選択したトンネルの通過に失敗した場合、選択プロセスは、有効な宛先への別の適切なトンネルを選択することで、同じレベルでフェイルオーバーします。LACは、そのレベルで有効な宛先へのトンネルが利用できなくなるまで、レベル内で接続の試行を続行します。その後、LACは次の下のレベルにドロップダウンして検索を続行します。詳細については、 優先レベル内のフェイルオーバーが設定されている場合の選択 を参照してください。
-
トンネルあたりの最大セッション数—トンネルごとに許可されるセッションの最大数が設定されている場合、LACはトンネル選択プロセス中にその設定を考慮に入れます。トンネルあたりの最大セッション数は、RADIUS Tunnel-Max-Sessions VSA [26-33]を使用するか、トンネルプロファイルに
max-sessionsステートメントを含めることで設定できます。ランダムに選択されたトンネルの現在のセッション数が最大セッション数と等しい場合、LACはそのトンネルを持つ宛先への接続を試みません。代わりに、その優先レベルのトンネルのセットから、ドメイン内に有効な宛先を持つ代替トンネルを選択します。現在のプリファレンス レベルにそのようなトンネルが存在しない場合、LAC は次のプリファレンス レベルにドロップして選択を行います。このプロセスは、現在 LAC で実行されているフェイルオーバー スキームに関係なく一貫しています。
トンネルに最大セッション数が設定されていない場合、そのトンネルはサポートできるセッション数に上限がありません。デフォルトでは、セッションの最大値は0(ゼロ)で、トンネル内で無制限のセッションが許可されます。
-
重み付きロードバランシング—このバランシング方法は、トンネルの重みを確率に基づいて評価して、トンネル間でセッションを分散します。LACは、優先レベル内でランダムにトンネルを選択しますが、平均して、セッションはトンネルの重みに関連してトンネル全体に分散されます。トンネルの重みは、同じプリファレンス レベルの他のトンネルのセッショントンネルの最大セッション制限によって決まります。詳細については、「 Weighted Load Balancing 」を参照してください。
-
宛先等ロードバランシング—このセッションバランシング方法は、すべてのトンネルにセッション負荷を均等に分散するために、宛先までのセッション数とトンネルが運送するセッション数に応じてトンネルを評価します。セッション数が最も少ない宛先を持つトンネルは、負荷が最も軽いと判断されます。このプロセスは、利用可能な最高のプリファレンス レベルのトンネルで実行されます。詳細については、「 宛先等負荷分散」 を参照してください。
トンネルと宛先の選択プロセスとフェイルオーバーを理解するために、以下の情報を考慮に入れてください。
-
複数のトンネルが宛先に到達できる場合があり、それらのトンネルは、同じプリファレンスレベルを持つことも、異なるプリファレンスレベルを持つこともできます。
-
加入者セッションを確立するために選択したトンネル自体がすでに確立されている場合があります。つまり、現在アクティブなセッションがあります。または、宛先に到達できるトンネルがまだ確立されていない場合、LACは宛先への新しいトンネルを確立しなければならない場合があります。
-
有効な宛先は、以下の基準を満たします。
-
最大セッション制限を満たしていないトンネルから到達できます。
-
現在の加入者ログイン要求について、まだ連絡が来ていません。
-
ロックまたはロック解除のいずれかが可能です。
-
-
ロックされた宛先とは、宛先ロックアウトタイマーが実行されている宛先です。ロックされた宛先は、タイマーが期限切れになるかクリアされる(ゼロにリセットされる)まで、ロックアウトリストに登録されます。リストに記載されている宛先に連絡してセッションを確立することはできません。
-
ロック解除された宛先とは、宛先ロックアウトタイマーがゼロの宛先です。
-
LACは、ロックされている有効な宛先を検出すると、それらをDestinationsLockedNotContactedリストに配置します。これは、ロックアウトされたすべての宛先を含むロックアウトリストとは異なります。DestinationsLockedNotContactedリストには、現在進行中の加入者ログインのためにLACがまだ連絡を試みていないロックされた宛先のみが含まれています。DestinationsLockedNotContactedリストには、LACが接続を試みて確立に失敗した後にロックアウトする宛先は含まれていません。
-
clear services l2tp destination lockoutコマンドを使用して、ロックされたすべての宛先を手動でクリアするか、指定されたローカルまたはリモートゲートウェイアドレスに一致するロックされた宛先のみをクリアできます。このコマンドは、例えば、特定の宛先をクリアして、優先レベル内で優先されるようにしたい場合に使用できます。 -
トンネル選択プロセスの一部であるフェイルオーバー動作は、以下のいずれかの理由で宛先に到達できない場合のみ適用されます。
-
再送信試行回数が最大に達した後、LNS は LAC からの SCCRQ メッセージに応答する SCCRP メッセージを返すことができません。
-
トンネルは確立されていますが、再送信試行回数が最大に達しても、LNSはLACからのICRQに応答するICRPメッセージを返しません。
-
-
このフェイルオーバー動作は、次の状況には適用されません。
-
クライアントが接続を終了します。
-
トンネルは確立されていますが、LACがLNSとのセッションを確立しようとしている間にLNSがCDNメッセージを送信するため、加入者のログイン試行に失敗します。
-
優先レベル間のフェイルオーバーが設定されている場合の選択
ユーザーがデフォルト設定のドメインにログインしようとすると(つまり、優先レベル内のフェイルオーバーとロードバランシングが設定されていない場合)、LACは、最も高いトンネル優先レベルから始めて、要求されたドメインへの有効な宛先を検索します。有効な宛先が見つからない場合、または宛先への接続に失敗した場合、LACは次の下位レベルにドロップダウンして検索を続行します。検索プロセスは、最低レベルを除くすべてのレベルで同じです。
-
検索は、ドメインのトンネルプロファイルで指定されたすべてのトンネルの中から、優先レベルで有効なデトンネルを持つトンネルを特定することから始まります。
-
ロックされた有効な宛先はすべて、DestinationsLockedNotContacted リストに配置されます。これらの宛先への接続は一切行われません。
-
ロックされていない有効な宛先の中から、LACはランダムに1つを選択し、関連するトンネルを介して接続を試みます。トンネルに現在のセッションがない場合、LACはトンネルを確立する必要があります。
注:ランダム選択がデフォルトの動作です。重み付けされたロードバランシングまたは宛先等しいロードバランシングが設定されている場合、動作は異なります。ロードバランシングの詳細については、 セッション負荷を複数のLNSに分散する場合の選択 ロードバランシングを参照してください。
-
この試みに成功すると、LACはログインの成功をPPPクライアントに報告します。また、LACは、DestinationsLockedNotContactedリスト上のすべての宛先をクリアします。
-
LACが応答を受信しない場合、最大再試行回数まで再試行します。LACが応答を受信せずに再試行を使い果たした場合、その試行は失敗したとみなされ、LACは宛先をロックアウトして宛先に到達不能としてマークします。宛先をロックアウトリストに表示し、宛先ロックアウトタイマーを開始します。
-
-
LACが次に何をするかは、現在のプリファレンスレベルによって異なります。
-
これが最も低い優先度レベルでない場合、LACは次に低い優先度レベルに低下し、検索処理を続行します。
-
これが最低優先レベルであり、DestinationsLockedNotContactedリストが空でない場合、LACはDestinationsLockedNotContactedリスト内のすべての宛先のロックを解除し、最高優先レベルにジャンプアップして検索プロセスを再開します。
-
これが最も低いプリファレンスレベルで、DestinationsLockedNotContactedリストが空の場合(つまり、すべての有効な宛先が試行された場合)、LACはPPPクライアントへのログイン失敗を報告します。
-
-
あるレベルの有効な宛先がすべてロックされている場合、LACが次に行うことは、現在のプリファレンスレベルによって異なります。
-
これが最も低い優先度レベルでない場合、LACは次に低い優先度レベルに低下し、検索処理を続行します。
-
これが最も低いプリファレンスレベルの場合、LACはロックアウトの残り時間が最短で、ロックされた有効な宛先を選択します。ロックアウトタイマーをクリアし、宛先への接続とセッションの確立を試みます。
-
この試みに成功すると、LACはログインの成功をPPPクライアントに報告します。
-
試行が失敗し、DestinationsLockedNotContactedリストが空の場合(つまり、有効な宛先がすべて試行された場合)、LACはPPPクライアントへのログイン失敗を報告します。
-
この試みが失敗し、DestinationsLockedNotContactedリストが空でない場合、LACはDestinationsLockedNotContactedリスト内のすべての宛先のロックを解除し、最高のプリファレンスレベルにジャンプして、検索プロセスを再開します。
-
-
-
有効な宛先が存在しない場合、LACが次に行うことは、現在のプリファレンスレベルによって異なります。
-
これが最も低い優先度レベルでない場合、LACは次に低い優先度レベルに低下し、検索処理を続行します。
-
これが最も低いプリファレンスレベルで、DestinationsLockedNotContactedリストが空の場合(つまり、すべての有効な宛先が試行された場合)、LACはPPPクライアントへのログイン失敗を報告します。
-
これが最も低いプリファレンス レベルであり、DestinationsLockedNotContacted リストが空でない場合、LAC は DestinationsLockedNotContacted リスト内のすべての宛先のロックを解除し、最も高いプリファレンス レベルにジャンプアップして、プロセスを再起動します。
-
-
検索とフェイルオーバーのプロセスは、セッションが確立されるか、有効な宛先がすべて試行され(DestinationsLockedNotContactedリストに宛先が残っていない)、ログインに失敗するまで、レベルを繰り返します。
図1は、トンネル優先レベル間でフェイルオーバーが発生するデフォルトケースについて、宛先と対応するトンネルの選択を決定する条件と決定ポイントを示しています。
例えば、トンネルプロファイルに次のトンネルが含まれ、それぞれに有効な宛先があるとします。
-
プリファレンス0、トンネル1、192.168.10.10
-
プリファレンス 1、トンネル 2、192.168.22.22
-
プリファレンス1、トンネル3、192.168.33.33
-
プリファレンス2、トンネル4、192.168.44.44
優先内でのフェイルオーバーとロードバランシングは構成されていません。
PPP ユーザーがドメインに接続しようとすると、LAC は次のように動作します。
-
最高のプリファレンスレベルである0では、LACは有効な宛先を持つレベルで唯一のトンネルであるため、トンネル1を選択します。LACは192.168.10.10に到達しようとします。
-
この接続試行は失敗するため、LACは192.168.10.10をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
-
LACは、ドメインの宛先に到達するために、次のレベル(優先レベル1)にドロップ(フェイルオーバー)します。LACは、トンネル2を介した192.168.22.22とトンネル3を介した192.168.33.33のいずれかをランダムに選択します。192.168.22.22 を選択し、トンネル 2 を介して接続を試みます。
-
192.168.22.22への接続試行は失敗するため、LACは192.168.22.22をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
注:トンネル3にアンロックされた有効な宛先があっても、フェイルオーバー方法が優先レベル間の場合、LACはレベル内で検索するたびに有効な宛先への到達試行を1回しかできないため、192.168.33.33に到達するトンネルを選択することができません。
-
この例では、LACは最終(最低)レベル、優先レベル2に低下します。LACがトンネル4を選択するのは、有効な宛先を持つレベルで唯一のトンネルだからです。LACは192.168.44.44に到達しようとします。
-
192.168.44.44への接続試行も失敗するため、LACは192.168.44.44をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
-
これは最下位レベルであり、DestinationsLockedNotContactedリストが空であるため、LACはPPPクライアントからのログイン要求を拒否します。
宛先 192.168.10.10、192.168.22.22、192.168.44.44 はロックアウトされましたが、接続を試みた後に LAC がロックアウトしたため、DestinationsLockedNotContacted リストには追加されませんでした。宛先 192.168.33.33 は接続されませんでしたが、ロックアウトされていないため DestinationsLockedNotContacted リストに追加されませんでした。
-
クライアントが再度ログインを試みると、LACはトンネル選択プロセスを繰り返し、優先レベル0からやり直して、ロック解除された有効な宛先を確認し、必要に応じてレベルを循環します。
-
プリファレンスレベル0では、192.168.10.10が唯一の有効な宛先であり、ロックアウトされたままであるため、LACは宛先への接続を試みることができません。LACは、192.168.10.10をDestinationsLockedNotContactedリストに追加し、プリファレンスレベル1にドロップします。
注:宛先ロックアウトタイマーはグローバルに適用されるため、複数の加入者ログイン間で持続されます。DestinationsLockedNotContactedリストは、特定の加入者ログインにのみ適用され、永続化されません。LACがこの加入者に対して192.168.10.10に連絡したとしても、それは以前のログイン試行中でした。このログイン試行では、ロックアウトのために宛先に接続できないため、宛先が DestinationsLockedNotContacted リストに配置されます。
-
プリファレンスレベル1では、192.168.22.22はロックアウトされたままなので、LACは192.168.22.22をDestinationsLockedNotContactedリストに追加します。192.168.33.33 はまだ利用可能です。LACは、トンネル3を介して192.168.33.33に接続しようとします。
-
この接続試行は失敗するため、LACは192.168.33.33をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。LACは優先レベル2に低下します。
-
192.168.44.44 はまだロックアウトされているため、LAC は 192.168.44.44 を DestinationsLockedNotContacted リストに追加します。
-
これは最も低い優先レベルですが、今回は DestinationsLockedNotContacted リストが空ではありません。192.168.10.10、192.168.22.22、192.168.44.44が含まれます。LACは、DestinationsLockedNotContactedリスト上のすべての宛先のロックを解除し、その後、最高のプリファレンスレベルに戻ります。
-
プリファレンスレベル0では、ロックが解除されているため、LACは192.168.10.10への接続を試みます。LACはセッションを確立し、ログインの成功をPPPクライアントに報告します。
LACはロックアウトされている宛先への連絡を試みませんが、LACが最も低いプリファレンスレベルに達した特殊なケースがあります。レベルには複数の有効な宛先が必要で、そのすべてをロックアウトする必要があります。例えば、トンネルプロファイルに次のトンネルが含まれ、それぞれに有効な宛先があるとします。
-
プリファレンス0、トンネル1、192.168.10.10
-
プリファレンス 1、トンネル 2、192.168.22.22。宛先はロックアウトされており、ロックアウトタイマーは現在245秒です。
-
プリファレンス 1、トンネル 3、192.168.33.33。宛先はロックアウトされており、ロックアウトタイマーは現在180秒です。
優先内でのフェイルオーバーとロードバランシングは構成されていません。
PPP ユーザーがドメインに接続しようとすると、LAC は次のように動作します。
-
最高のプリファレンスレベルである0では、LACは有効な宛先を持つレベルで唯一のトンネルであるため、トンネル1を選択します。LACは192.168.10.10に到達しようとします。
-
この接続試行は失敗するため、LACは192.168.10.10をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
-
LACは、ドメインの宛先に到達する次のレベルである優先レベル1に低下します。このレベルの有効な宛先 192.168.22.22 と 192.168.33.33 は両方ともロックアウトされます。
-
LACは、両方の宛先をDestinationsLockedNotContactedリストに追加します。
-
これは最も低いプリファレンス レベルであるため、LAC は残りのロックアウト時間が短い宛先を決定します。192.168.33.33 が 192.168.22.22(245 秒)よりもロックアウトの残り時間(180 秒)が短いため、選択されます。LACは192.168.33.33のロックを解除し、トンネル3を介して接続しようとします。その結果、LACはDestinationsLockedNotContactedリストから192.168.33.33も削除します。
-
接続試行に成功し、192.168.33.33へのセッションが確立されます。LACは、PPPクライアントへのログイン成功を報告します。
優先レベル内のフェイルオーバーが設定されている場合の選択
プリファレンス レベル 内で フェイルオーバーを設定する場合、宛先とトンネルの選択プロセスはデフォルト設定と同じです。ただし、LAC はプリファレンス レベルで 1 回だけの接続試行に制限されません。
LACがロック解除された有効な宛先への接続を試みて失敗すると、その宛先をロックアウトしますが、すぐに次の下位レベルにドロップダウンすることはありません。代わりに、同じプリファレンスレベルで別のアンロックされた有効な宛先が利用可能な場合、LACはその宛先への接続を試みます。
LACが接続しない場合、ロックが解除されなくなるまで、そのプリファレンスレベル内の宛先への到達を試み続けます。有効な宛先が試行されます。その時点で、LACはドロップダウンして、次の低いプリファレンスレベルで検索します。各レベルで、LACは、ロック解除された有効な宛先が利用できなくなるまで、有効な宛先を検索して接続を試みます。
LACが最低プリファレンスレベルまでドロップダウンし、ロック解除された有効な宛先が見つからない場合、動作はDestinationsLockedNotContactedリストによって異なります。
-
DestinationsLockedNotContactedリストが空でない場合、LACはDestinationsLockedNotContactedリスト内のすべての宛先のロックを解除し、最高のプリファレンスレベルにジャンプアップして検索プロセスを再開します。
-
DestinationsLockedNotContactedが空の場合(つまり、有効な宛先がすべて試行されたことを意味する)、LACはPPPクライアントへのログイン失敗を報告します。
例えば、トンネルプロファイルで以下のトンネルと宛先が指定されているとします。負荷分散が設定されていません。すべての宛先が有効です。192.168.3.3を除いてすべて解禁される。トンネルの優先度レベルは、次のように割り当てられています。
-
プリファレンス0、トンネル1、192.168.1.1、unlocked
-
プリファレンス0、トンネル2、192.168.2.2、unlocked
-
プリファレンス 0、トンネル 3、192.168.3.3、ロックアウト タイマー 100 秒
-
プリファレンス1、トンネル4、192.168.4.4、unlocked
-
プリファレンス1、トンネル5、192.168.5.5、unlocked
この例では、PPP ユーザーがドメインに接続しようとすると、LAC は次のように動作します。
-
LACは、優先度レベル0、192.168.1.1からトンネル1、および192.168.2.2からトンネル2で、ロック解除された有効な2つの宛先からランダムに選択します。192.168.2.2 を選択し、トンネル 2 を介して接続を試みます。
-
192.168.2.2への接続試行は失敗するため、LACは192.168.2.2をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
-
その後、LACは、優先度レベル0のトンネル1を介して192.168.1.1への接続を試みます。
-
192.168.1.1への接続試行は失敗するため、LACは192.168.1.1をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
-
トンネル3を介した192.168.3.3は、優先レベル0で唯一の有効な宛先ですが、ロックされています。LACは、192.168.3.3をDestinationsLockedNotContactedリストに追加します。LACは、192.168.1.1と192.168.2.2をDestinationsLockedNotContactedリストに追加しませんでした。これは、連絡を試みた後にロックアウトされたためです。
-
レベル 0 では、ロック解除された有効な宛先がないため、LAC は次のレベル、優先レベル 1 に低下して、ドメインの宛先に到達します。
-
優先レベル 1 では、LAC は 192.168.4.4 をランダムに選択し、トンネル 4 を介して接続を試みます。
-
192.168.4.4への接続試行は失敗するため、LACは192.168.4.4をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
-
その後、LACは、優先レベル1のトンネル5を介して192.168.5.5への接続を試みます。
-
192.168.5.5への接続試行は失敗するため、LACは192.168.5.5をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。レベル1には、ロック解除された有効な目的地はありません。DestinationsLockedNotContactedリストが空ではないため、LACはリスト上のすべての宛先(この場合は192.168.3.3)のロックを解除し、最高のプリファレンスレベルである0にジャンプアップします。
-
192.168.3.3は、プリファレンスレベル0でロック解除された唯一の宛先であるため、LACはトンネル3を介して接続を試みます。
-
192.168.3.3への接続試行は失敗するため、LACは192.168.3.3をロックアウトします。このログイン試行中は再度考慮されず、宛先ロックアウトタイマーが期限切れになるまで、ログイン試行でも考慮されません。
-
レベル 0 にはロック解除された有効な宛先がないため、LAC は次のレベル、優先レベル 1 に低下します。
-
プリファレンスレベル1には、ロックされていない有効な宛先がありません。LACが両方のプリファレンス レベルですべての有効な宛先に接続しているため、DestinationsLockedNotContactedが空です。LACは、PPPクライアントからのログイン要求を拒否します。
複数の LNS にセッション負荷を分散する場合の選択
LACでは複数のトンネルプロファイルを設定できます。一部のトンネルは宛先を共有する場合があります。LACがPPP加入者のセッションをLNSにトンネリングする場合、加入者セッション用にトンネルを選択する必要があります。トンネル選択プロセスでは、到達可能な宛先を持つ、優先度が最も高いトンネルが選択されます。デフォルトでは、LACは同じ基準を満たす複数のトンネルからランダムにトンネルを選択します。または、ロードバランシングを設定して、さまざまな選択オプションを有効にすることもできます。どちらの負荷分散方式も、LACが選択するトンネルと宛先に影響しますが、それ以外は選択とフェイルオーバーのプロセスは変わりません。
重み付きロードバランシングと宛先等しいロードバランシングは相互に排他的です。有効にできるのはどちらか一方だけです。
重み付きロードバランシング
重み付きロードバランシングは、トンネルをその重みに応じて評価します。トンネルの重みは、同じプリファレンス レベルの他のトンネルのセッショントンネルの最大セッション制限によって決まります。最大セッション制限が最も高いトンネルは、その優先レベルで最も重みが高くなります。最大セッション制限の次に高いトンネルは、次に高い重みを持ちます。最大セッション制限が最も小さいトンネルの重みが最も低くなります。
トンネルの選択とセッションの配信は確率ベースです。荷重は重量に応じて厳密に分散されていません。
重み付きロードバランシングを設定する場合、LACは依然として優先レベル内でランダムにトンネルを選択しますが、平均して、セッションはトンネルの重みに関連してトンネル全体に分散されます。
重み付きロードバランシングでは、LACは、優先レベルのすべてのトンネルのすべてのセッション制限の合計に等しい範囲内で乱数を生成します。範囲の一部(数値のプール)を、トンネルの重みに比例する各トンネルに関連付けます。重みの高いトンネルは、重みの低いトンネルよりも範囲の大部分(より大きなプール)に関連付けられています。トンネルは、乱数が関連する数字のプール内にある場合に選択されます。乱数は平均して、より大きなプールに含まれる可能性が高いため、重みが高いトンネル(プールが大きい)が、重みが低いトンネル(プールが小さい)よりも選択される可能性が高くなります。
例えば、1 と 2 の 2 つのトンネルしかない設定レベルがあるとします。トンネル1のセッション数は最大1000、トンネル2はセッション数が2000なので、合計セッション数は3000です。LACは、3000のプールから0〜2999の範囲で乱数を生成します。0から999までの範囲である1000個の数字のプールが、トンネル1に関連付けられています。1000から2999の範囲に含まれる2000の番号のプールが、トンネル2に関連付けられています。
-
生成された数が1000未満の場合、トンネル2(2000)よりも重みが低い(1000)でも、トンネル1が選択されます。
-
生成された数が1000以上の場合、トンネル2が選択されます。
トンネル 2(2000)で生成可能な数のプールは、トンネル 1(1000)の 2 倍であるため、 平均してトンネル 2 はトンネル 1 の 2 倍の頻度で選択されます。
宛先等ロードバランシング
宛先等ロードバランシングは、すべてのトンネルにセッション負荷を均等に分散するために、宛先へのセッション数とトンネルが伝送するセッション数に応じてトンネルを評価します。セッション数が最も少ない宛先を持つトンネルは、負荷が最も軽いと見なされます。このプロセスは、利用可能な最高のプリファレンス レベルのトンネルで実行され、以下のガイドラインを使用します。
-
各トンネルが別々の宛先に移動し、すべての宛先の中でセッション数が最も少ない宛先が1つだけの場合、LACはその宛先へのトンネルを選択します。
-
各トンネルが別々の宛先に向かっていて、複数の宛先が同じ最小セッション数を持つ場合、LACはこれらの宛先へのトンネルの中からランダムにトンネルを選択します。
-
複数のトンネルが同じ宛先に行き、その宛先の宛先セッション数が最も少ない場合、LACはこれらのトンネルの中からトンネルセッションの総数が最も少ないトンネルを選択します。これらのトンネルのトンネルセッション数がすべて同じ場合、LACはそのうちの1つをランダムに選択します。
宛先等しいロードバランシングが有効になっている場合のトンネル選択動作をよりよく理解するために、以下のシナリオを検討してください。
シナリオ1では、すべてのトンネルに異なる有効な宛先があり、宛先セッションカウントのみが評価されます。
-
トンネル1、優先レベル1、192.168.1.1、宛先セッションカウント = 200
-
トンネル2、優先レベル1、192.168.2.2、宛先セッションカウント = 50
-
トンネル3、優先レベル1、192.168.3.3、宛先セッションカウント = 300
-
トンネル4、優先レベル1、192.168.4.4、宛先セッションカウント = 100
最初のPPPユーザがドメインに接続しようとすると、LACはトンネル2を選択します。これは、トンネル2が最も高いプリファレンスレベル1であり、有効な宛先Bと、最も少ないセッションカウントが50であるためです。
追加のPPPユーザーがドメインに接続しようとすると、LACは次のように動作します。
-
トンネル2は、192.168.2.2のセッションカウントが100になるまで選択され続け、次に低いセッションカウントであるトンネル4の192.168.4.4に一致します。
-
次の加入者がログインすると、LAC はトンネル 2 とトンネル 4 のどちらかをランダムに選択します。これは、宛先のセッション数が同じで、他の宛先よりも低いためです。
-
このペアからどちらのトンネルを選択しても、宛先のセッションカウントは101になります。もう一方のトンネルは、宛先セッション数が100と低いため、次の加入者がログインしたときに選択されます。これにより、宛先セッションカウントが101に増加し、他のトンネルと一致します。
-
加入者がログインを続けると、LACはこのプロセスを繰り返し、セッションカウントが一致するときにトンネル2とトンネル4のどちらかをランダムに選択し、宛先加入者数がトンネル1と一致する200に達するまで、次の加入者とのもう一方のトンネルを選択します。
-
192.168.1.1、192.168.2.2、192.168.3.3はすべて同じセッションカウントである200であるため、次の加入者がログインすると、LACはトンネル1、トンネル2、トンネル4のいずれかからランダムに選択するようになりました。選択したトンネルの宛先セッションカウントが201に増加するため、次の加入者に対して、LACは他の2つのトンネルの中からランダムに選択します。これで 2 つのトンネルの宛先セッション数が 201 になったため、LAC は次の加入者のために残りのトンネルを選択します。
-
加入者がログインを続けると、LACはこのプロセスを繰り返し、セッション数が一致するときにトンネル1、トンネル2、トンネル4からランダムに選択し、次の加入者用に残りのペアからランダムに選択し、次に残りのトンネルを選択することで、これら3つのトンネルの宛先セッションカウントが再び一致するようにします。このパターンは、3つのトンネルすべての宛先セッション数がトンネル3と一致する300に達するまで続きます。
-
これで、4つのトンネルすべての宛先のセッション数が同じになります。トンネルが4つしかないため、最終的なパターンが確立されます。LACは、最初に4つのトンネルすべてからランダムに選択し、次に残りの3つ、次に残りのペア、最後に最後のトンネルを選択します。宛先セッション数がすべて同じになると、LACはこのパターンを再開します。
シナリオ 2 では、2 つのトンネルが同じ有効な宛先を共有します。トンネルセッションカウントと宛先セッションカウントの両方が評価されます。
-
トンネル1、プリファレンスレベル1、トンネルセッションカウント= 120、192.168.1.1、宛先セッションカウント= 200
-
トンネル2、優先レベル1、トンネルセッションカウント = 80、192.168.1.1、宛先セッションカウント = 200
-
トンネル3、プリファレンスレベル1、192.168.2.2、宛先セッションカウント = 300
-
トンネル4、プリファレンスレベル2、192.168.3.3、宛先セッションカウント = 100
最初のPPPユーザーがドメインに接続しようとすると、LACは最初に宛先を選択します。192.168.1.1と192.168.2.2の両方のトンネルは、優先レベル1です。LACが192.168.1.1を選択するのは、192.168.2.2(300)よりもセッションカウント(200)が少ないためです。LACは、どちらも192.168.1.1に行くため、トンネル1とトンネル2のどちらかを選択する必要があります。LACは、トンネルセッションカウントを評価します。トンネル2はトンネル1(120)よりもカウントが少ないため(80)、LACは最初の加入者としてトンネル2を選択します。
追加のPPPユーザーがドメインに接続しようとすると、LACは次のように動作します。
-
トンネル 2 は、トンネル セッション数がトンネル 1 と一致する 120 に増加するまで、トンネル 2 が選択され続けます。
-
次の加入者がログインすると、トンネルセッション数が同じであるため、LACはトンネル1とトンネル2のいずれかをランダムに選択します。選択したトンネルのトンネルセッションカウントが121に増加します。
-
次の加入者がログインすると、トンネルセッション数が少ないため、LACはもう一方のトンネルを192.168.1.1へ選択します。この時点から、LACは交互に動作し、宛先セッションカウントがトンネル3の192.168.2.2のセッションカウントと一致する300に増加するまで、最初にトンネル1と2の間でランダム選択を行い、次にもう一方のトンネルを選択します。(この時点で、トンネル セッション数はトンネル 1 とトンネル 2 の両方で 150 です。)
-
次の加入者については、LACはトンネル1、2、3からランダムに選択します。
-
LACがトンネル1またはトンネル2のいずれかを選択すると、192.168.1.1セッションカウントは301に増加します。その結果、192.168.2.2のセッションカウントがまだ300であるため、LACは次の加入者にトンネル3を選択します。この時点で、両方の宛先のセッションカウントは再び同じになります。
-
LACがトンネル3を選択すると、192.168.2.2セッションカウントは301に増加します。次の加入者については、LACはトンネル1とトンネル2のどちらかをランダムに選択します。これは、どちらも192.168.1.1に行くからです。LACがどちらを選択しても、192.168.1.1セッションカウントは301に増加します。この時点で、両方の宛先のセッションカウントは再び同じになります。
注:トンネル1と2のトンネルセッションカウントは評価されなくなります。LACは、192.168.1.1および192.168.2.2の宛先セッションカウントのみを考慮します。
このパターンは、後続のすべての加入者に対して継続されます。
-
シナリオ3では、各トンネルに異なる有効な宛先があり、宛先セッションカウントのみが評価されます。
-
トンネル1、優先レベル1、192.168.1.1、宛先セッションカウント = 100
-
トンネル2、プリファレンスレベル1、192.168.2.2、宛先セッションカウント = 100
-
トンネル3、優先レベル1、192.168.3.3、宛先セッションカウント = 100
-
トンネル4、優先レベル1、192.168.4.4、宛先セッションカウント = 100
最初のPPPユーザーがドメインに接続しようとすると、LACは、優先レベルで4つのトンネルすべての宛先で宛先セッション数が同じであると判断します。その結果、LACは4つのトンネルからランダムに選択します。
LACが最初の加入者にトンネル1を選択するとします。
追加のPPPユーザーがドメインに接続しようとすると、LACは次のように動作します。
-
LACは、宛先192.168.2.2、192.168.3.3、192.168.4.4のセッション数がすべて同じであり、100で、192.168.1.1、101の現在のセッション数よりも低いため、トンネル2、3、4からランダムに選択されます。
-
LACがトンネル2を選択するとします。次の加入者については、192.168.3.3と192.168.4.4はすべて同じセッションカウントである100を持ち、192.168.1.1と192.168.2.2の現在のセッションカウントである101よりも低いため、LACはトンネル3と4からランダムに選択します。
-
LACがトンネル3を選択するとします。192.168.4.4のセッションカウントが100で、他のすべての宛先のカウントが101であるため、次の加入者に対してLACはトンネル4を選択します。
-
これで、4つのトンネルすべての宛先のセッション数が同じになります。トンネルが4つしかないため、最終的なパターンが確立されます。加入者がログインを続けると、LACはまず4つのトンネルすべてからランダムに選択し、次に残りの3つ、残りのペア、最後に最後のトンネルを選択します。宛先セッション数がすべて同じになると、LACはこのパターンを再開します。
シナリオ4では、LACは宛先セッション制限とトンネル最大セッション制限の両方を評価します。
-
トンネル1、優先レベル1、192.168.1.1、宛先セッションカウント = 30、トンネル最大セッション制限 = 200
-
トンネル2、優先レベル1、192.168.2.2、宛先セッションカウント = 40、トンネル最大セッション制限 = 200
-
トンネル3、優先レベル1、192.168.3.3、宛先セッションカウント = 300、トンネル最大セッション制限 = 1000
-
トンネル4、優先レベル2、192.168.4.4、宛先セッションカウント = 100
最初のPPPユーザがドメインに接続しようとすると、優先レベルで192.168.1.1のセッション数が最も少ないため、LACはトンネル1を選択します。
追加のPPPユーザーがドメインに接続しようとすると、LACは次のように動作します。
-
LACは、192.168.1.1の宛先セッションカウントがトンネル2の192.168.2.2のカウントと一致する40になるまで、トンネル1を選択し続けます。
-
次の加入者がログインすると、LAC はトンネル 1 とトンネル 2 のどちらかをランダムに選択します。これは、宛先のセッション数が同じで、トンネル 3(300)よりも低いためです。
-
このペアからどちらのトンネルを選択しても、宛先のセッションカウントは41になります。もう一方のトンネルは、宛先セッション数が40と少ないため、次の加入者がログインしたときに選択されます。これにより、宛先セッション数が41に増加し、他のトンネルと一致します。
-
加入者がログインを続けると、LACはこのプロセスを繰り返し、セッションカウントが一致するときにトンネル1とトンネル2のどちらかをランダムに選択し、次の加入者とのもう一方のトンネルを選択することで、宛先セッションカウントが両方とも200に達し、トンネルの最大セッション制限である200に一致します。両方のトンネルがセッションの最大制限に達しているため、選択できません。
-
加入者がログインを続けると、LACは、宛先のセッションカウントがトンネルの最大セッション制限である1000に達するまで、優先レベルのトンネル3で残りのトンネルを選択します。
-
次の加入者がログインすると、LACは次のプリファレンスレベルにドロップし、このレベルで唯一のトンネルであるため、トンネル4を選択します。
-
加入者がログインを続けると、このトンネルには最大セッション制限が設定されていないため、LACはトンネル4を選択し続けます。LACは、その後、高い優先度レベルのトンネルを選択することができるのは、そのレベルのトンネルの1つに対してセッションが終了し、セッション数が最大制限を下回るときのみです。
シナリオ5では、宛先の1つがロックされています。
-
トンネル1、プリファレンスレベル1、192.168.1.1、宛先セッションカウント = 100、宛先ロックアウト
-
トンネル2、優先レベル1、192.168.2.2、宛先セッションカウント = 200
-
トンネル3、プリファレンスレベル1、192.168.3.3、宛先セッションカウント= 250
最初のPPPユーザーがドメインに接続しようとすると、宛先のセッション数が最も少なくても、トンネルは宛先ロックアウト状態にあるため、トンネル1を選択できません。トンネル1は、ロック状態から外れるまでは考慮されません。LACがトンネル2を選択するのは、192.168.2.2のセッションカウントが192.168.3.3よりも低いためです。
追加のPPPユーザがドメインに接続しようとすると、次に何が起こるかは、192.168.1.1がいつロックアウト状態から復帰するかによって異なります。192.168.1.1がロックアウトされている限り、LACは次のように選択を行います。
-
LACは、192.168.2.2のセッションカウントがトンネル3の192.168.3.3のカウントと一致する250になるまで、トンネル2を選択し続けます。
-
次の加入者がログインすると、宛先のセッション数が同じ(250)であるため、LACはトンネル2とトンネル3のいずれかをランダムに選択します。
-
このペアからどちらのトンネルを選択しても、宛先のセッションカウントは251になります。もう一方のトンネルは、宛先セッション数が250と低いため、次の加入者がログインしたときに選択されます。これにより、宛先セッション数が251に増加し、他のトンネルと一致します。
-
加入者がログインを続けると、LACはこのプロセスを繰り返し、セッション数が一致するときにトンネル2とトンネル3のどちらかをランダムに選択し、次の加入者がいるもう一方のトンネルを選択します。
192.168.1.1 がロックアウト状態から復帰するたびに、192.168.1.1 のセッション数が最も少ないため、LAC は次の加入者にトンネル 1 を選択します。LACは、192.168.1.1のセッションカウントが他の宛先の現在のセッションカウントと一致するまで、この操作を継続します。それ以降、LACは、宛先セッション数が一致するトンネルからランダムに選択し、その後、カウントが最も少ないトンネルを選択します。
192.168.1.1がロックアウト状態から復帰するたびに、
-
192.168.1.1のセッション数が最も少ないため、LACは次の加入者にトンネル1を選択します。
-
LACは、192.168.1.1のセッションカウントが他の宛先の現在のセッションカウントと一致するまで、トンネル1を選択し続けます。
-
それ以降、LACは、宛先セッション数が一致するトンネルからランダムに選択し、その後、カウントが最も少ないトンネルを選択します。
L2TPセッション制限の概要
L2TPセッション要求が開始されると、LNSまたはLACは、シャーシ、トンネル、トンネルグループ、クライアント(要求元ホストデバイス)、またはクライアントグループに対して許可されるセッションの最大数と照合して、現在のアクティブなトンネル数をチェックします。設定されたセッション制限に達すると、新しいセッション要求は拒否されます。
セッションが要求されると、LNS は以下の順序でセッション制限を確認します。
シャーシ>トンネル>トンネルグループ>セッション制限グループ>クライアント
各レベルで、LNS は現在のセッション数が設定された制限を下回っているかどうかを判断します。これが当てはまる場合、または制限が設定されていない場合、チェックは合格し、LNS は次のレベルのチェックに進みます。いずれかのレベルで、現在のセッション数が設定された制限と同じ場合、LNS はセッション要求を拒否し、他のレベルをチェックしません。それ以外の場合、セッションを確立できます。
既存のトンネルのセッション要求が拒否されると、着信呼び出し要求(ICRQ)に応答して、結果コードとエラーコードの両方が 4 に設定された Call-Disconnect-Notify(CDN)メッセージが返されます。拒否されたリクエストが新しいトンネルに対するものである場合、トンネルは確立されますが、セッションは立ち上がらず、セッションがないためにトンネルがダウンします。
LACは同じチェックを実行しますが、シャーシとトンネルレベルに対してのみ実行します。LACは、PPP終了メッセージをクライアントに返すことで要求を拒否します。
シャーシ、すべてのトンネル、トンネルグループ、クライアントのグループ、または個々のクライアントに対して、トンネルのセッション制限を設定できます。以下のシナリオでは、セッション制限のさまざまな構成で何が起こるかを説明します。
シナリオ1:シャーシの制限
表1では、現在のL2TPセッション数は10,000で、セッション制限はすべてのレベルで10,000に設定されています。新しいセッションが要求されると、現在のセッション数が設定された制限に一致するため、シャーシレベルでの最初のチェックは失敗します。他のレベルではそれ以上のチェックは実行されず、セッション要求は拒否されます。現在のセッション数が10,000を下回るまで、どのレベルでも新しいセッションは許可されません。
レベル |
設定されたセッション制限 |
|
セッション制限チェック結果 |
|---|---|---|---|
シャーシ |
10,000 |
10,000 |
失敗 |
トンネルA |
10,000 |
10,000 |
– |
トンネルグループB |
10,000 |
10,000 |
– |
セッション制限グループ |
10,000 |
10,000 |
– |
クライアント |
10,000 |
10,000 |
– |
シナリオ 2:トンネル制限
表2では、現在のL2TPセッション数は2000です。新しいセッションが要求されると、設定された制限ではシャーシ上で最大10,000セッションが許可されるため、シャーシレベルでの最初のチェックは通過しますが、現在アクティブになっているセッションは2,000セッションのみです。次のチェックは、トンネルレベルで失敗します。これは、現在のセッションカウントが、トンネル Aに設定された制限トンネル2000に一致するためです。
他のレベルではそれ以上のチェックは実行されず、セッション要求は拒否されます。
レベル |
設定されたセッション制限 |
|
セッション制限チェック結果 |
|---|---|---|---|
シャーシ |
10,000 |
2000 |
合格 |
トンネルA |
2000 |
2000 |
失敗 |
トンネルグループB |
10,000 |
2000 |
– |
セッション制限グループ |
6000 |
2000 |
– |
クライアント |
6000 |
2000 |
– |
現在のセッション数が2000を下回り、セッションチェックに合格するまで、トンネルAでは新しいセッションは許可されません。その場合、設定された制限が現在のカウントよりも大きいため、このシナリオでは他のレベルのチェックが合格します。
セッション制限2000は、すべてのトンネルに適用されます。つまり、アクティブな各トンネルには、2000セッションという独立した制限があります。1 つのトンネルに障害が発生しても、他のトンネルには影響しません。他のトンネルの現在のセッション数が2000未満であれば、他のトンネルのセッション要求は通過します。
シナリオ 3:トンネルグループの制限
表3では、現在のL2TPセッション数は2000です。新しいセッションが要求されると、設定された制限ではシャーシ上で最大10,000セッションが許可されるため、シャーシレベルでの最初のチェックは通過しますが、現在アクティブになっているセッションは2,000セッションのみです。2 番目のチェックは、トンネル レベルでも同じ理由で合格します。トンネルグループBのトンネルグループレベルでの次のトンネルグループレベルのチェックは失敗します。これは、トンネルグループBの現在のセッションカウントが、設定されたトンネルグループの制限である2000と一致するため、トンネルグループ。
他のレベルではそれ以上のチェックは実行されず、セッション要求は拒否されます。
レベル |
設定されたセッション制限 |
|
セッション制限チェック結果 |
|---|---|---|---|
シャーシ |
10,000 |
2000 |
合格 |
トンネルA |
10,000 |
2000 |
合格 |
トンネルグループB |
2000 |
2000 |
失敗 |
セッション制限グループ |
6000 |
2000 |
– |
クライアント |
6000 |
2000 |
– |
現在のセッション数が2000を下回り、セッションチェックに合格するまで、トンネルグループBでは新しいセッションは許可されません。その場合、設定された制限が現在のカウントよりも大きいため、他のレベルのチェックが合格する可能性があります。
トンネルグループの場合、セッション制限はグループごとに設定されます。つまり、すべてのトンネル グループに適用される単一の制限を指定することはできません。いずれかのトンネルグループに障害が発生しても、他のトンネルグループには影響しません。このシナリオでは、他のトンネルグループの現在のセッション数が設定されたセッション制限を下回っている場合、そのグループのセッション要求は通過します。
シナリオ 4:セッション制限グループ制限
表4では、現在のL2TPセッション数は6,000です。新しいセッションが要求されると、シャーシ、トンネル、およびトンネルグループに設定された制限では最大10,000セッションが許可されるため、チェックは通過しますが、現在アクティブになっているセッションは6,000セッションのみです。セッション制限グループslg1の現在のセッションカウントが設定された制限である6000と一致するため、セッション制限グループでのチェックは失敗します。
残りのレベルではそれ以上のチェックは実行されず、セッション要求は拒否されます。
レベル |
設定されたセッション制限 |
|
セッション制限チェック結果 |
|---|---|---|---|
シャーシ |
10,000 |
6000 |
合格 |
トンネルA |
10,000 |
6000 |
合格 |
トンネルグループB |
10,000 |
6000 |
合格 |
セッション制限グループ slg1 |
6000 |
6000 |
失敗 |
クライアント |
8000 |
2000 |
– |
グループの現在のセッション数が6000を下回り、セッションチェックに合格するまで、セッション制限グループslg1のどのクライアントに対しても新しいセッションは許可されません。その場合、設定された制限が現在のカウントよりも大きいため、残りのレベルチェックに合格する可能性があります。
現在のセッションに影響を与えることなく、クライアントを削除または追加することで、セッション制限グループを再設定できます。再設定は、クライアント グループで確立可能なセッションの数に影響します。
クライアントを削除すると、確立できる新しいセッションの数は、そのクライアントの現在のセッションの数だけ増加します。
クライアントを追加すると、確立できる新しいセッションの数は、そのクライアントの現在のセッションの数だけ減ります。既存のクライアントと新しいクライアントの現在のセッションの新しい合計は、セッション制限グループに設定された制限を超える場合があります。この場合、セッションはドロップされませんが、セッション数が設定されたグループ制限を下回るまで新しいセッションを確立することはできません。
これをさらに詳しく調べるために、次の一連のイベントについて考えてみましょう。
セッション制限グループslg1には、現在のセッションカウントが3500のent1-serviceAと、現在のセッションカウントが0のent1-serviceBの2つのクライアントがあります。グループslg1には6000の制限があるため、これらのクライアントに追加できるセッションは2500個までです。
6000 - 3500 = 2500
次に、クライアントent1-service Bに1000セッションがログインします。現在、これらのクライアントに追加できるセッションは1500個までです。
6000 - (3500 + 1000) = 1500
次に、クライアントent1-serviceAをsession-limitグループから削除するとします。グループセッションの容量は5000セッションに増加します。
6000 - 1000 = 5000
最後に、新しいクライアントent1-serviceCをsession-limitグループに追加します。この新しいクライアントには現在、8000のアクティブなセッションがあります。この場合、セッション制限グループには9000セッションがあります。
1000 + 8000 = 9000
グループの最大セッション制限である6000を超えても、セッションはドロップされません。セッション数が9000から6000を下回るまで、新しいセッションを追加することはできません。
シナリオ 5: 個々のクライアントの制限
表5では、設定された制限が現在のセッションカウントよりも大きいため、シャーシ、トンネル、およびトンネルグループのセッションチェックは合格します。クライアントent1-serviceAは、session-limit-groupに属していません。クライアントの現在のセッション数が設定された制限である6000と一致するため、クライアントの制限チェックは失敗します。
レベル |
設定されたセッション制限 |
|
セッション制限チェック結果 |
|---|---|---|---|
シャーシ |
10,000 |
6000 |
合格 |
トンネルA |
10,000 |
6000 |
合格 |
トンネルグループB |
8000 |
6000 |
合格 |
クライアントent1-serviceA |
6000 |
6000 |
失敗 |
現在のセッション数が6000を下回り、セッションチェックに合格するまで、このクライアントには新しいセッションは許可されません。独立したクライアントに障害が発生しても、他のクライアントには影響しません。このシナリオでは、他の独立クライアントの現在のセッション数が設定されたセッション制限を下回ると、そのクライアントのセッション要求は通過します。
セッション制限グループに属さない個々のクライアントに設定したセッション制限は、トンネルグループごとに適用されます。送信元ホスト名は同じで送信元IPアドレスが異なる複数のLACは、同じクライアントとして扱われます。
A、B、Cの3つのLACがあるとします。3つすべてで同じ送信元ホスト名ce-lacが付いています。LAC A と LAC B は、トンネル グループ 1 に関連付けられたゲートウェイ アドレスを介して LNS とのセッションを確立します。LAC Cは、トンネルグループ2に関連付けられた別のゲートウェイを介してセッションを確立します。LACのホスト名が同じであるため、クライアント設定は3つすべてで同じです。ただし、クライアントセッション制限は、トンネルグループにより、LACに対して異なる方法で適用されます。
クライアントセッションの制限が100であると仮定します。LAC A と LAC B はどちらもトンネル グループ 1 でセッションを作成するため、クライアント制限を共有する必要があります。つまり、LAC A と LAC B で許可されるセッションの合計数は 100 です。
LAC Cは、異なるトンネルグループ2にセッションを作成します。クライアントセッション制限はトンネルグループごとに適用されるため、LAC AとLAC Bがすでに確立しているセッション数に関係なく、LAC Cには100セッションが許可されます。
LACまたはLNSで許可されるL2TPセッション数の制限
シャーシ、すべてのトンネル、トンネルグループ、クライアントのグループ、個々のクライアント、または個々のサービスインターフェイスまたは集約されたサービスインターフェイスに許可されるトンネルセッションの最大数に制限を設定できます。設定されたセッション制限に達すると、新しいセッション要求は LNS または LAC によって拒否されます。設定された制限を超えていない場合でも、シャーシの最大制限に達するとセッション要求は拒否されます。設定可能なセッション制限により、複数のロケーションのLACを介して接続している間に顧客が持つことができるセッション数を細かく制御できます。
シャーシのデフォルトの最大制限を超えて制限を設定することはできません。
シャーシ(LACまたはLNS)で許可されるセッション数を制限するには:
最大セッション数を設定します。
[edit services l2tp] user@host# set maximum-sessions number
すべてのトンネル(LACまたはLNS)のトンネルあたりのセッション数を制限するには:
最大セッション数を設定します。
[edit services l2tp tunnel ] user@host# set maximum-sessions number
セッション数を65,535セッション以上に設定することはできません。
特定のトンネルグループ(LNS)内のすべてのトンネルのセッション数を制限するには:
最大セッション数を設定します。
[edit services l2tp tunnel-group tunnel-group-name] user@host# set maximum-sessions number
個々のサービスインターフェイスで許可されるセッション数を制限するには:
最大セッション数を設定します。
[edit interfaces si-slot/pic/port] user@host# set l2tp-maximum-session number
個々の集約されたサービスインターフェイスで許可されるセッション数を制限するには:
最大セッション数を設定します。
[edit interfaces asinumber] user@host# set l2tp-maximum-session number
注:この設定は、すべてのメンバーインターフェイスに適用されます。この制限は、集約されたサービスインターフェイスの個々のメンバーインターフェイスには設定できません。
クライアントグループ(LNS)のセッション数を制限するには:
セッション制限グループ(LNS)のメンバーではないクライアントのセッション数を制限するには:
最大セッション数を設定します。
[edit access profile profile-name client client-name] user@host# set maximum-sessions number
任意のレベルのセッション制限を、そのレベルに現在存在するセッション数より少ないように設定しても、既存のセッションには影響しません。新しい制限は、セッション数が新しい制限を下回った場合にのみ適用されます。
show services l2tp summary extensiveコマンドを使用して、トンネルに設定されたセッション制限を表示できます。
user@host> show services l2tp tunnel extensive
...
Max sessions: 32000, Window size: 4, Hello interval: 60
...
設定されたセッションの表示制限は、以下の設定されたセッション値のうち最も低い値に設定されます。
グローバル(シャーシ)—(LACおよびLNS)
set services l2tp tunnel maximum-sessionsnumberトンネルプロファイル(個々のトンネル)—(LACおよびLNS)
set access tunnel-profile profile-name tunnel tunnel-idmax-sessionsnumber]RADIUS—(LACおよびLNS)VSA 26–33の値、tunnel-max-sessions
ホストプロファイル—(LNSのみ)
set access profile profile-name client client-name l2tp maximum-sessions-per-tunnel
設定された値によって、Junos OSリリース19.2R3、19.3R3、19.4R3、20.1R2、20.2R2、20.3R1以降のフィールド値が決まります。以前のリリースでは、フィールドにLNSのホストプロファイル値が表示されますが、LACの固定値である512,000が表示されます。
GRES、統合型ISSU、またはjl2tpdプロセスの再起動後、このフィールドの値は、新しいセッションがトンネルで起動した後にのみ正確になります。そうなるまでは、フィールドには設定された値ではなく 65,535 という値が表示されます。
A と トンネル B という 2 つのトンネルがあるトンネルします。GRES が発生し、各トンネルのフィールドには 65,535 が表示されます。トンネル B で新しいセッションが立ち上がると、そのトンネルの値が設定された値に更新されます。トンネル A の場合、そのトンネルが新しいセッションを取得するまで、フィールドにはトンネルに 65,535 が表示され続けます。
トンネル名のフォーマットの設定
デフォルトでは、トンネルの名前は、AAAサーバーから返されたTunnel-Assignment-Id [82]に対応しています。オプションで、[edit services l2tp tunnel]階層レベルにassignment-id-format client-server-idステートメントを含めることで、トンネル名の構成により多くの要素を使用するようにLACを設定することができます。この形式では、Tunnel-Client-Auth-Id [90]、Tunnel-Server-Endpoint [67]、Tunnel-Assignment-Id [82]の3つの属性を使用します。これらの属性は、LAC(送信元ゲートウェイ)名、LNSのトンネルエンドポイント(リモートゲートウェイ)アドレス、およびトンネルIDのトンネルプロファイルに設定された値にそれぞれ対応しています。
client-server-id形式の結果として、AAA サーバーが以前に返されたものとは異なる Tunnel-Client-Auth-Id を返すと、LAC が新しいトンネルを自動的に作成します。
このステートメントをサポートしていないJunos OSリリースにダウングレードする前に、[edit services l2tp tunnel]階層レベルでno assignment-id-format assignment-idステートメントを含めて、機能を明示的にアン設定することをお勧めします。
トンネル名の書式設定を変更するには:
フォーマットを設定します。
[edit services l2tp tunnel] user@host# set assignment-id-format client-server-id
加入者アクセス用のトンネルプロファイルの設定
トンネルプロファイルは、トンネルを特徴付ける属性セットを指定します。プロファイルは、ドメインマップによって適用することも、トンネルの作成時に自動的に適用することもできます。
RADIUS属性とVSAは、ドメインマップ内のトンネルプロファイルで設定した値を上書きできます。ドメイン マップがない場合、RADIUS はトンネルのすべての特性を提供できます。次の手順のステップは、RADIUS サーバーで設定してトンネルプロファイルを変更または設定できる、対応する標準RADIUS属性または VSA の一覧です。
RADIUS が提供する属性は、トンネル識別子と一致する属性で伝送されるタグによってトンネルに関連付けられます。タグが0の場合は、タグが使用されていないことを示します。L2TPがタグ0のRADIUS属性を受信した場合、トンネルプロファイルは0のトンネルタグ(トンネル識別子)を提供できないため、その属性を加入者ドメインに対応するトンネルプロファイル設定とマージすることはできません。1〜31の範囲のタグのみサポートされます。
トンネルプロファイルのトンネル定義を設定するには:
以下の例は、トンネルプロファイルの完全な設定を示しています。
tunnel-profile marketing {
tunnel 1 {
preference 5;
remote-gateway {
address 198.51.100.4;
gateway-name work;
}
source-gateway {
address 192.0.2.10;
gateway-name local;
}
secret $ABC123;
logical-system bos-metro-5;
routing-instance rox-12-32;
medium ipv4;
type l2tp;
identification tunnel_to_work;
max-sessions 32;
nas-port-method cisco avp;
}
}
L2TP LACトンネル選択パラメーターの設定
LACがPPPセッションをトンネル化する必要があると判断すると、PPPユーザーまたはPPPユーザーのドメインに関連付けられたトンネルセットからトンネルを選択します。トンネルの選択方法と、特定の情報を LAC から LNS に送信するかどうかを設定できます。
トンネル選択パラメーターを設定するには:
優先レベル内での LAC トンネル選択フェイルオーバーの設定
接続に失敗した場合にLACトンネルの選択を続行する方法を設定できます。デフォルトでは、ルーターが特定のプリファレンス レベルで宛先に接続できない場合、次に低いレベルの接続を試みます。代わりに、ルーターが失敗した試行と同じレベルの別の宛先への接続を試みるように指定できます。
プリファレンスレベルのすべての宛先が到達不能とマークされている場合、ルーターはそのレベルの宛先への接続を試みません。宛先を選択する際には、次の低い優先レベルに下降します。
すべてのプリファレンス レベルのすべての宛先に到達不能とマークされている場合、ルーターは最初に失敗した宛先を選択し、接続を試みます。接続に障害が発生した場合、ルーターはリモートルーターへの接続を試みずにPPPユーザーセッションを拒否します。
例えば、あるドメインにA、B、C、Dの4つのトンネルがあるとします。すべてのトンネルが到達可能と見なされ、優先レベルは次のように割り当てられます。
優先度0でのAとB
優先順位1のCとD
ルーターがドメインへの接続を試みたとき、優先度0からトンネルBをランダムに選択するとします。トンネル B への接続に失敗した場合、ルーターはトンネル B を 5 分間除外し、トンネル A への接続を試みます。この試みも失敗した場合、ルーターは優先度1に低下します。次に、ルーターがトンネル C を選択するとします。トンネル C への接続にも失敗した場合、ルーターはトンネル C を 5 分間除外し、トンネル D への接続を試みます。
このトンネル選択方法に使用されるプリファレンスレベルは、トンネルプロファイルまたはRADIUS Tunnel-Preference [83]属性で設定します。
優先レベル内でトンネル選択フェイルオーバーを有効にするには:
フェイルオーバーを優先範囲内で指定します。
[edit services l2tp] user@host# set failover-within-preference
LACトンネルセッションの重み付きロードバランシングの設定
デフォルトでは、L2TP LACは、利用可能な最高のプリファレンスレベル内から新しいセッションのトンネルをランダムに選択します。各トンネルの重みを評価することで、利用可能な最高の優先レベルでトンネル間でセッションを分散するようにトンネルを設定できます。この方法は 、重み付きロードバランシングと呼ばれます。トンネルの重みは、その最大セッション制限と、同じプリファレンスレベルの他のトンネルの最大セッション制限に比例します。重み付きロードバランシングを設定する場合、LACは優先レベル内でランダムにトンネルを選択しますが、平均してセッションはトンネルの重みとの関係でトンネル全体にトンネルに分散されます。
重み付きロードバランシングを設定するには:
ロードバランシングを指定します。
[edit services l2tp] user@host# set weighted-load-balancing
LACトンネルセッションの宛先等ロードバランシングの設定
デフォルトでは、L2TP LACは、利用可能な最高のプリファレンスレベル内から新しいセッションのトンネルをランダムに選択します。Junos OSリリース15.1以降では、宛先へのセッション数とトンネルが運ぶセッション数を評価することで、利用可能な最高のプリファレンスレベルで、すべてのトンネルにセッションを均等に分散するようにLACを設定できます。この分散方法は、 宛先等しいロードバランシングと呼ばれます。LACは、以下のガイドラインに従って、負荷が最も軽いトンネルを選択します。
各トンネルが別々の宛先に移動し、すべての宛先の中でセッション数が最も少ない宛先が1つだけの場合、LACはその宛先へのトンネルを選択します。
各トンネルが別々の宛先に向かっていて、複数の宛先が同じ最小セッション数を持つ場合、LACはこれらの宛先へのトンネルの中からランダムにトンネルを選択します。
複数のトンネルが同じ宛先に行き、その宛先の宛先セッション数が最も少ない場合、LACはこれらのトンネルの中からトンネルセッションの総数が最も少ないトンネルを選択します。これらのトンネルのトンネルセッション数がすべて同じ場合、LACはそのうちの1つをランダムに選択します。
宛先等しいロードバランシングを設定するには:
宛先等しいロードバランシングを指定します。
[edit services l2tp] user@host# set destination-equal-load-balancing
IPv6 サービス向け LAC の有効化
加入者をLNSにトンネリングする際に、IPv6アドレスファミリー(inet6)を作成するようにLACを設定できます。その後、LAC上のサービスから加入者トラフィックにIPv6ファイアウォールフィルターを適用できます。デフォルトでは、LACはIPトンネルへの転送を有効にするためにファミリーinetのみを必要とします。LACは、IPv4ファイアウォールフィルターをセッションに適用できます。ファミリーinet6が動的プロファイルに含まれている場合でも、デフォルトでは必要ないため、リソースを節約するために作成されません。したがって、IPv6ファイアウォールフィルターを適用することはできません。
IPv6アドレスファミリーの作成とIPv6ファイアウォールフィルターの適用を有効にするには:
有効化を設定します。
[edit services l2tp] user@host# set enable-ipv6-services-for-lac
show services l2tp summaryコマンドを使用して、ステートメントが有効か無効かを表示できます。
LACからのL2TPトンネル設定のテスト
PPPユーザーと関連するトンネルを表示せずに、LACでのL2TPトンネル設定と加入者認証とトンネリングをテストできます。
CLI動作モードから test services l2tp tunnel コマンドを発行して、加入者をL2TPトンネルにマッピングし、L2TPトンネル設定(LACとRADIUSサーバーなどのバックエンドサーバーの両方でローカル)を確認し、LACからのL2TPトンネルをリモートLNSで確立できることを確認します。
Junos OS LAC実装では、PPP加入者のトンネリングに1つのトンネルを選択する複数のトンネルを設定することができます。 test services l2tp tunnel コマンドを使用して、可能なすべてのトンネル構成をテストし、それぞれが確立可能であることを確認できます。または、加入者に対して特定のトンネルのみをテストすることもできます。
コマンドを発行する際には、設定済みの加入者ユーザー名を指定する必要があります。テストでは、加入者用のダミーパスワード(testpass)が生成されます。オプションでパスワードを指定することもできます。このテストでは、そのユーザー名によって識別される加入者が、トンネル設定に従ってトンネル化できるかどうかを検証しますトンネル。加入者をトンネリングできる場合、L2TP設定に従ってLNSでL2TPトンネルを確立できるかどうかを検証します。
オプションでトンネルIDを指定することができ、その場合はそのトンネルのみがテストされます。そのユーザー名用にトンネルがすでに設定されている必要があります。このオプションを省略すると、ユーザー名に対して返されるトンネル設定のフルセットにテストが適用されます。指定するトンネル IDは、Tunnel-Assignment-Id(RADIUS属性82)で使用されるものと同じで、トンネルプロファイルの identification ステートメントで指定されます。
加入者認証とトンネル設定をテストするには:
ユーザー名のみを指定します。
例 1:
user@host> test services l2tp tunnel user test-user1@example.com Subscriber: test-user1@example.com, authentication failed
生成されたパスワードではユーザーが認証に失敗したため、トンネル化されませんでした。
例 2:
user@host> test services l2tp tunnel user user23@example.com Subscriber: user23@example.com, authentication success, l2tp tunneled Tunnel-name Tunnel-peer Logical-System Routing-Instance Status test1tunnel 192.168.2.3 default default Up test2tunnel 192.168.30.3 default default Peer unresponsive test3tunnel 192.168.50.1 default test Up
このユーザーは生成されたパスワードで認証され、トンネリングに成功しました。そのユーザー名に関連付けられたトンネルのセットが検出され、セット全体がテストされました。
ユーザー名とユーザーの設定パスワードを指定します。
user@host> test services l2tp tunnel user test-user1@example.com password grZ98#jW Subscriber: test-user1@example.com, authentication success, locally terminated
加入者が認証されました。しかし、ユーザーはトンネル化されずにローカルで終了されました。これは、ユーザーに関連付けられているトンネルが見つからなかったことを意味します。
加入者のユーザー名と特定のトンネルを指定します。
user@host> test services l2tp tunnel user rx37w@example.com tunnel-name ce-lac Subscriber: rx37w@example.com, authentication success, l2tp tunneled Tunnel-name Tunnel-peer Logical-System Routing-Instance Status ce-lac 192.168.5.10 default default Up
加入者は認証され、トンネル化されました。加入者に対して指定されたトンネルが見つかり、トンネルが確立され、トンネル設定が確認されました。
ユーザー名、ユーザーが設定したパスワード、トンネルを指定します。
user@host> test services l2tp tunnel user fanta4-mfg-fan@example.com password dieda499 tunnel-name tunnel5 Subscriber: fanta4-mfg-fan@example.com, authentication success, l2tp tunneled
加入者は認証され、トンネル化されました。出力にトンネル情報がない場合は、指定されたトンネル設定が存在しないことを示します。
変更履歴テーブル
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。