概要
このドキュメントでは、Cisco ASR 5000 シリーズ ルータの Serving General Packet Radio Service(GPRS)Supporting Node(SGSN)でのランダム一時論理リンク識別子(TLLI)の競合に関連する問題とその解決方法について説明します。
背景説明
論理リンク制御(LLC)レイヤで、SGSN は処理中のアタッチ要求に続けて同じ固定ランダム TLLI が設定されているアタッチ要求(両方の要求のデバイスが同一であると解釈する)を受信すると、アタッチ要求の処理を中断します。SGGN リロードでは、複数のデバイスが同時にアタッチを試行する場合、これらのデバイスの 1 つ(最後のデバイス)だけがネットワークにアタッチし、その前のすべてのデバイスのアタッチ プロシージャは SGSN により中断されます。その結果、アタッチ成功率が非常に低くなります。アタッチに失敗したデバイスは引き続きアタッチを試行し、予測不可能な遅延の後、最終的には成功します。ワイヤレス ネットワーク上のデバイスでは、同一製造元のデバイスがすべて 1 つの固定ランダム TLLI を使用してパケット スイッチ(PS)アタッチを試行するという、ソフトウェアの問題が存在します。
問題
3rd Generation Partnership Project(3GPP)技術仕様(TS)23.003 で説明されているように、ランダム TLLI はモバイル端末(MS)により次のように作成されます。
- ビット 31 が 0 に設定されます。
- ビット 30 ~ 27 が 1 に設定されます。
- ビット 0 ~ 26 はランダムに選択されます。
さらに 3GPP TS 24.008 V 7.0 では、有効な Packet-Temporary Mobile Subscriber Identifier(P-TMSI)が使用できない場合、および MS が有効な P-TMSI を保存していない場合には、MS は、結合/非結合 GPRS アタッチ プロシージャの ATTACH REQUEST メッセージの送信に、ランダムに選択されたランダム TLLI を使用すると説明されています。
無作為に選択された 1 つの同じランダム TLLI 値が、すべてのメッセージ再送信操作と 1 回のアタッチでのセル更新操作に使用されます。ネットワークは ATTACH REQUEST メッセージを受信すると、P-TMSI を MS に割り当てます。ネットワークは、割り当てられた P-TMSI からローカル TLLI を導出し、割り当てられた P-TMSI を MS に送信します。
MS は割り当てられた P-TMSI を受信すると、この P-TMSI からローカル TLLI を導出し、下位レイヤでのアドレッシングに使用します。
注:MS は、下位レイヤでのアドレッシングに使用するローカル TLLI を導出しますが、ネットワークでは、受信専用 LLC フレームがローカル TLLI を使用すると仮定してはなりません。GPRS アタッチの正常完了後すぐに、ネットワークはランダム TLLI をまだ使用する MS からの LLC フレームを引き続き受け入れるように準備する必要があります。
解決方法
スマートフォンでは通常、競合を回避するため SGSN により割り当てられる P-TMSI が使用されます。GPRS アタッチが正常に完了した場合だけ、SGSN はランダム TLLI を解放します。モデム、または標準に従って動作しない複数の非標準デバイスが同一ランダム TLLI でアタッチすると、他のデバイスが同時にアタッチを試行する場合は常に、アタッチが正常に完了しても遅延が生じます。システム リロードでは、短期間でこれらのモデム/デバイスから多数のアタッチ要求が実行されますが、固定ランダム TLLI のプールは限られています。したがって競合が発生する可能性が高くなります。
この問題を解決するための解決策を次に示します。
- 一度に 1 つのサブスクライバだけが 1 つの固定ランダム TLLI でアタッチできるようにします。固定ランダム TLLI を持つアタッチ プロシージャは(新しい P-TMSI が MS に受け入れられるまで)継続的に実行されますが、ランダム TLLI が同じで International Mobile Subscriber Identifier(IMSI)が異なる後続のすべてのアタッチは、linkmgr でドロップされます。これにより、同じランダム TLLI で異なる MS からのアタッチ要求は、その TLLI が設定されているかどうかに関わらず、ドロップされます。これはこの問題の解決策となりますが、アタッチ成功率が非常に低くなります。これは、同じランダム TLLI を持つすべてのアタッチ要求において、SGSN により処理できるアタッチ要求が 1 つだけであるためです。
- アタッチ要求を処理するために、Network Service Entity Identifier(NSEI)の追加のチェックも提供されます。複数の NSEI から同じランダム TLLI の複数のアタッチ要求が出される場合、これらの要求はすべて同時に処理されます。これにより、同じランダム TLLI のアタッチ要求の成功率が向上します。これは、同じランダム TLLI のアタッチ要求が、複数の NSEI から出される場合は同時に処理されるようになるためです。
- TLLI タイマーが、古いランダム TLLI の attach-complete を受信できるようにします。このタイマーは、SGSN により TLLI が割り当てられているアタッチ サブスクライバからアップリンク パケット(アクティブ化要求など)を受信すると停止します。SGSN により TLLI が割り当てられているサブスクライバが時間内(wait-time)にアップリンク パケットを受信しないと、その IMSI にマップするランダム TLLI が解放され、同じ固定ランダム TLLI を持つその他のすべてのアタッチ要求が受け入れられます。タイマーが停止または満了するまで、設定されている固定ランダム TLLI からのアタッチ要求は受け入れられません。このタイマー(wait-time)は、1 ~ 125 秒の範囲内で設定可能です(デフォルト値は 5 秒)。また、この wait-time 機能を固定ランダム TLLI サブスクライバだけに限定するには、この機能で処理される必要があるサブスクライバの TLLI リストを設定します。
解決策の影響
この修正の影響を受けるのは、固定ランダム TLLI が設定されたサブスクライバだけに限定されます(影響を受ける TLLI が TLLI リストで設定されている場合)。
- アタッチしたサブスクライバは wait-time が経過するまではアップリンク パケットを送信せず、wait-time の満了後に SGSN により割り当てられた TLLI でアップリンク パケットを送信するため、影響はありません。
- サブスクライバが SGSN により割り当てられた TLLI でアップリンク パケットを送信しない場合、設定されている期間においては、設定されている TLLI からのその他のアタッチ要求は処理されません。これにより、固定ランダム TLLI を使用するすべてのデバイスのすべてのアタッチで遅延が生じる可能性があります。通常、アクティブ化要求は、Machine-to-Machine(M2M)デバイスの attach-complete の後に出されます。ただしこれは、固定ランダム TLLI 以外のデバイスの干渉が原因で 1 つのアタッチが遅延する現在の状況よりも良い状況です。
- アタッチされたサブスクライバが、設定されている wait-time の満了後に固定ランダム TLLI を持つアップリンク パケットを再び送信すると、競合が発生する可能性があります。gprs-service でのこの設定により、アタッチ サブスクライバが SGSN により提供される TLLI を即時に(wait-time 内で)使用する確率が高くなります。
Syntax:
Under Call-control-profile
"gmm information-in-messages access-type gprs"
設定
ランダム TLLI を有効/無効にするための新しい設定コマンドが sgsn-global モードに追加されました。
この最初の設定では、SGSN が、すでに使用中のランダム TLLI で受信したアタッチ要求をドロップ/破棄できます。
既存の TLLI のアタッチ ドロップの有効化/無効化
デフォルトでは、受信したアタッチ要求は、すでに使用中の TLLI で処理できます。
この設定では、SGSN が、すでに使用中のランダム TLLI で受信した ATTACH-REQUEST メッセージを破棄/ドロップできます。この設定では、常に 1 つの ATTACH が同じランダム TLLI で SGSN により処理されます。この設定を有効にすると、SGSN にすでに存在し、アタッチのために別の MS により使用されている TLLI を使用して、異なる MS からの ATTACH-REQUEST メッセージがドロップされます。2 番目のアタッチが、以前にアタッチのために使用された同じランダム TLLI で同じ MS からのものである場合、このアタッチは NSEI を使用する別のチェックの他に、SGSN により処理できます。
Syntax:
[default] gmm-message attach-with-tlli-in-use [discard-message]
次の出力に、設定の例を示します。
[local]sim-lte#config
[local]sim-lte(config)#sgsn-global
[local]sim-lte(config-sgsn-global)#gmm-message
attach-with-tlli-in-use - Specifies the action to be taken for the
reception of ATTACH request with TLLI already in use.
By default, SGSN process the ATTACH request
[local]sim-lte(config-sgsn-global)#gmm-message attach-with-tlli-in-use
discard-message - Enables the SGSN to discard the received GMM message
[local]sim-lte(config-sgsn-global)#gmm-message attach-with-tlli-in-use discard-message
only-on-same-nsei - Enables the SGSN to discard the received GMM message if same NSEI
<cr> - newline
[local]sim-lte(config-sgsn-global)#gmm-message attach-with-tlli-in-use discard-message
[local]sim-lte(config-sgsn-global)#
[local]asr5000#show configuration
config
... ... ...
... ... ...
sgsn-global
imsi-range mcc xxx mnc xxx plmnid xxxxx operator-policy <>
gmm-message attach-with-tlli-in-use discard-message
#exit
この設定の 2 番目の部分では、無効な古い TLLI タイマー(この修正で導入されたタイマー)が満了になった後、GPRS モビリティ管理(GMM)から無効化/削除されるランダム TLLI のリストをユーザが設定できるようにします。このタイマーも 1 ~ 125 秒の範囲で設定できます。
NSEI チェックによる既存の TLLI のアタッチ ドロップの有効化/無効化
この設定では、すでに使用中のランダム TLLI 値を持つ新しいアタッチ要求が SGSN に到着するたびに、NSEI の追加チェックを行うことができます。これにより SGSN は、同じランダム TLLI の複数のアタッチ要求が異なる NSEI から出されている場合に、それらを処理できます。
Syntax:
[default] gmm-message attach-with-tlli-in-use discard-message only-on-same-nsei
次の出力に、設定の例を示します。
[local]sim-lte#config
[local]sim-lte(config)#sgsn-global
[local]sim-lte(config-sgsn-global)#gmm-message
attach-with-tlli-in-use - Specifies the action to be taken for the reception
of ATTACH request with TLLI already in use. By default, SGSN process the ATTACH request
[local]sim-lte(config-sgsn-global)#gmm-message attach-with-tlli-in-use
discard-message - Enables the SGSN to discard the received GMM message
[local]sim-lte(config-sgsn-global)#gmm-message attach-with-tlli-in-use discard-message
only-on-same-nsei - Enables the SGSN to discard the received GMM message if same NSEI
<cr> - newline
[local]sim-lte(config-sgsn-global)#gmm-message attach-with-tlli-in-use
discard-message only-on-same-nsei
<cr> - newline
[local]sim-lte(config-sgsn-global)#gmm-message attach-with-tlli-in-use
discard-message only-on-same-nsei
[local]sim-lte(config-sgsn-global)#
[local]asr5000#show configuration
config
... ... ...
... ... ...
sgsn-global
imsi-range mcc xxx mnc xxx plmnid xxxxx operator-policy <>
gmm-message attach-with-tlli-in-use discard-message only-on-same-nsei
#exit
この設定の 2 番目の部分では、無効な古い TLLI タイマー(この修正で導入されたタイマー)が満了になった後で、GMM から無効化/削除されるランダム TLLI のリストをユーザが設定できるようにします。このタイマーも 1 ~ 125 秒の範囲で設定できます。
TLLI ホールド タイマーの有効化
次の出力に、設定の例を示します。
#config
#sgsn-global
#gmm-message attach-with-tlli-in-use [discard-message]
#old-tlli invalidate tlli 0x7C43128F ( Please identify more such TLLIs used by this modems)
#old-tlli hold-time 2 (You can optimize the timer value based on the frequency of
the attach from the same TLLI)
#exit
#end
ドロップの確認
この CLI では、この設定が有効な場合にのみ、ランダム TLLI が原因でアタッチがドロップされるかどうかを確認できます。
1 番目の設定は、TLLI のリストが gprs invalidate-old-tlli tlli [<value>] コマンドで無効にするように設定されているかどうかに関係なく機能します。
この CLI で強調されているカウンタがまだある場合、ネットワークでランダム TLLI 競合が発生しています。 これを確認できない場合は、通常モードでこの CLI を実行します。その後、非表示モードで実行します(非表示モードでは特別なユーザ権限が必要です)。
#show gbmgr all parser statistics all
Friday April 11 01:14:37 GMT 2015
Gb Manager (Instance 4) Parser Statistics
Decode Statistics
Decode Successes : 300832 Decode Failures : 0
Demux key
IMSI : 19743 P-TMSI(Local) : 6559 P-TMSI(Non-Local) : 6670
TLLI(Local) : 59542 SMGR Instance :82805 TLLI (Non-Local) : 62252
.....
.....
GMM
rxCount : 50179 Attach Req : 20891 Detach Req : 438
RAU Req : 10040 Unexpected Msg : 0 Gb Msgs with NonLocal Tlli: 12698
IMSI Key : 14302 P-TMSI Key : 13205 attach with tlli in use: 7191
Add P-TMSI Key : 0
Decode failure
Mobile Id Len Error : 2 Unsupported Mobile Id : 0
IE Missing : 0 Other Decode Failure : 9344
ランダム TLLI を使用する IMSI アタッチの ASR5000 メカニズム
通常、SGSN はランダム TLLI を持つ IMSI アタッチ要求を受信するたびに、受信したアタッチ要求を処理し、その TLLI のエントリと、IMSI および割り当てられているセッション マネージャ(SESSMGR)インスタンスを作成します。SESSMGR は、この MS に対応するために SGSN によって割り当てられます。エントリが正常に作成されると、この MS(TLLI)から今後受信するすべてのメッセージはその SESSMGR に直接転送され、同様に処理されます。エントリ レベルでは、ロケーション エリア コード(LAC)/ルーティング エリア コード(RAC)が SGSN によって割り当てられていないので、SGSN はそれらに基づいて TLLI を一意に識別することができません。
SGSN は MS-1 に対するアタッチ要求を処理し、その TLLI のエントリと、IMSI および割り当てられている SESSMGR インスタンスを作成します。SGSNが同じランダムTLLI(異なるMSから)を使用してMS-2から別のアタッチ要求を受信した場合、そのTLLIの既存のエントリは、MS-2の新しく割り当てられたSESSMGRインスタンスとともにIMSIでで上書されます。割り当てられた SESSMGR インスタンスが MS-1 と MS-2 の両方で異なる場合、受信した MS-1 に対する追加メッセージは正しい SESSMGR に到達しません。
機能強化と提案
ワイヤレス ネットワーク内のデバイスは、TLLI に関連するソフトウェアの問題があるかまたは固定 TLLI がハードコーディングされており、製造元が同じ場合、固定ランダム TLLI を使用して PS アタッチを試行します。アタッチの競合を防ぐため、モデム側でこの問題を修正します。また、これらのモデムにより頻繁に使用されるランダム TLLI のリストを作成し、この修正を適用して SGSN が再起動するたびにこの同じ状況が発生することを防ぎます。