このドキュメントでは、認証手順頻度設定、Packet Temporary Mobile Subscriber Identity(PTMSI)、および PTMSI 署名再割り当ての利点について基本的な説明を行います。特に、このドキュメントは、Aggregated Service Router(ASR)5000 シリーズ上で動作する Serving GPRS Support Node(SGSN)の 2G および 3G 向けのオプションの Third-Generation Partnership Project モビリティ管理手順用です。
このドキュメントでは、次のベスト プラクティスについて説明します。
コール制御プロファイルの下の認証、PTMSI、および PTMSI 署名再割り当てフレームワークにより、事業者は 2G および 3G SGSN と Mobile Management Entity(MME)のサブスクライバごとに、認証または PTMSI および PTMSI 署名の割り当てを設定できます。 現在、SGSN では、attach、service-request、routing-area-update(RAU)、short-messaging-service、および detach の手順に対して認証を設定できます。
MME も、service-requests および tracking-area-updates(TAU)の認証を設定するために、同じフレームワークを利用します。PTMSI 再割り当ては、attach、service-request、および RAU に対して設定できます。PTMSI 署名再割り当ては、attach、PTMSI 再割り当てコマンド、および RAU に対して設定できます。認証および再割り当てはこれらの手順のすべてのインスタンスまたは手順の n 番目のすべてのインスタンスに対して有効化でき、選択的な認証/再割り当てと呼ばれます。また、特定の手順は、最後の認証または再割り当てからそれぞれ経過した時間(周期的または間隔)に基づく認証または再割り当ての有効化をサポートします。
さらに、これらは Universal Mobile Telecommunication System(UMTS)(3G)、General Packet Radio Service(GPRS)(2G)のどちらかに対してのみ個別に設定することも両方に設定することもできます。この設定は、SGSN がサブスクライバの PTMSI/PTMSI 署名の認証または再割り当てを行うことがオプションの場合にのみチェックされます。これらの手順を行うことが必須である状況では、この設定はチェックされません。
すべての手順の頻度設定に対して、SET CLI、NO CLI、および REMOVE CLI という 3 つのタイプの CLI があります。SET CLI 起動する場合、事業者が固有の手順の認証または再割り当てを有効化することを推奨します。NO CLI は手順の認証または PTMSI 再割り当てを明示的に無効にするためのもので、REMOVE CLI は CLI(SET または NO)がまったく設定されていない状態に設定を復元するためのものです。cc-profile 割り当てでツリーが初期化されると、すべての設定は REMOVE されていると想定されます。したがって、REMOVE がデフォルト設定です。
SET CLI はツリー内の特定の手順にのみ影響するのに対して、NO CLI と REMOVE CLI は現在の手順に影響し、REMOVE は下位のノードにも影響します。また、NO CLI または REMOVE CLI が共通のツリーに影響する場合、効果は access-specific ツリー内の対応するノードにも伝播します。
すべての手順の周期設定に対して、SET CLI および REMOVE CLI という 2 つのタイプの CLI があります。周期に対して実行された SET および REMOVE は周期設定にのみ影響し、頻度設定はそのままです。頻度に対して実行された NO CLI は(正確には、NO CLI は頻度または周期の引数を取らないという点で共通ですが、保存時に内部的に頻度設定で識別されます)、周期設定も REMOVE します。
認証が無条件で完了する特定のシナリオは次のとおりです。
現在、認証は call-control-profile で次に対して有効化できます。
このツリー構造は、SGSN が頻度設定について考慮する手順ブロックを説明しています。
図 1:SGSN が頻度設定に関して考慮する手順ブロック
PTMSI 再割り当て手順のツリーを次に示します。
図 2:認証設定ツリー
図 3:PTMSI 再割り当て設定ツリー
3GPP 技術仕様(TS)23.060、セクション 6.5.2、手順(4)で、認証機能は「Security Function」の節で定義されています。 モバイル ステーション(MS)用のモビリティ マネージメント(MM)コンテキストがネットワーク内のどこにもない場合、認証は必須です。暗号化手順は「Security Function」の節で説明されています。 PTMSI の割り当てが完了し、ネットワークが暗号化をサポートする場合、ネットワークは暗号化モードを設定します。
前述したように、SGSN は、PTMSI 署名または CKSN 検証が保存されたものと一致しない、一部のコール フローの IMSI アタッチおよび SGSN 間 RAU といった、新しい登録要求に対してのみ認証を実行します。たとえば、定期的な RAU および内部 RAU などの手順は、すでに登録済みの SGSN のある既存のデータベースがあるため、認証は不要です。この場合、認証はオプションです。認証が完了しないことは常に適切であるとは限りません。なぜなら、ネットワーク内のユーザ機器(UE)が新しい登録要求を何日間も実行しないままでいる可能性があるからです。SGSN と UE 間のセキュリティ コンテキスト設定が侵害される可能性があるため、定期的に認証を実行し、一定の頻度に基づいて SGSN に登録されたサブスクライバの有効性を確認することは常に適切なことです。これについては、3GPP 23.060、セクション 6.8 で詳しく説明されています。
セキュリティ機能と関連する参照は、33.102セクション6.8に記載されています。たとえば、図18と図19に基づいてオプション認証が有効になっている場合、SGSNが誤ったセキュリティコンテキストパラメータでUEを認証しようとすると、SRESはまたはSGSNを使用したExpected Response(XRES)がネットワークに再接続されます。これは、UE が長期間、不正なデータベースでネットワークに留まることを防ぎます。
アイデンティティ隠蔽を実現するために、SGSN は PTMSI と呼ばれる、IMSI 用の一時的な ID を生成します。MS が接続すると、SGSN は MS に新しい PTMSI を発行します。MS は、この PTMSI を保存し、将来開始するすべての新しい接続の SGSN に対して自身を認識するために使用します。PTMSI は暗号化された接続で常に MS に提供されるため、たとえ IMSI を伴うプレーン テキストのメッセージを見ることがあったとしても、IMSI を外部の PTMSI にマッピングすることはできません。(たとえば、初回の IMSI アタッチおよび IMSI でのアイデンティティ応答など)。
PTMSI の再割り当ては、個別手順として、3GPP 23.060、セクション 6.8 で説明されています。同じことは、PTMSI および PTMSI 署名を再割り当てして、UE アイデンティティを保護するための任意のアップリンク手順の一部として行えます。これにより、どのインターフェイス上でもネットワーク シグナリングが増加することはありません。PTMSI と PTMSI 署名の再割り当ては常に適切です。なぜなら、これらは初期登録手順で SGSN が UE に割り当てる重要なアイデンティティであるからです。これらを一定の頻度で再割り当てすることは、長期間に渡ってただ 1 つの PTMSI 値を使用するのではなく異なる値を使用することによって UE のアイデンティティを隠すのに役立ちます。アイデンティティ隠蔽とは、MS との間のメッセージがプレーン テキストのまま送信され暗号化がまだ開始されていない場合に、MS の IMSI および IMEI などの情報を隠すことです。
一部の顧客ネットワークで、MSIDN/PTMSI などの重要なアイデンティティがさまざまなサブスクライバの間で混在し、Gn インターフェイスのシグナリング メッセージや Call Data Records(CDR)に含まれて送信されていることが判明しました。
Cisco バグ ID CSCut62632 および CSCuu67401 は、セッション リカバリのいくつかの稀な事例に対応し、サブスクライバのアイデンティティを別のサブスクライバにマッピングします。3 つの事例を次に示します。これらのケースはすべて、コードのレビュー、品質保証チームの分析、および再現が行なわれています。
シナリオ #1(サブスクライバのアイデンティティが失われる、sessmgr の二重障害)
UE1 - Attach - IMSI1 - Mobile Station International Subscriber Directory Number(MSISDN) 1 - PTMSI1 - Smgr#1
sessmgr インスタンスの二重 kill、SGSN は UE1 の詳細を失いました。
UE2 - Attach - IMSI2 - MSISDN 2 - PTMSI1 - Smgr#1
PTMSI1 は UE2 に再利用されます。
UE1 - Intra RAU - PTMSI1- SGSNはこのアップリンクを処理します。intra-RAUの認証は必須ではありません。
この結果、2 つの異なるセッションのレコードが混在します。
シナリオ #2(1 つのセッションのトランザクション機能アプリケーション部分(TCAP)アボートにより、サブスクライバ アイデンティティが混在)
UE1 - Attach - IMSI1 - UGL set(TCAP - sessmgrのクラッシュにより内部的に中断)
UE2:Attach - IMSI2:同じTCAPで送信されたUGL - OTID
HLR が TCAP を送信 - 前の要求、UE1 の MSISDN から継続
この場合、SGSN は UE1 の不正な MSISDN を UE2 で更新します。この結果、2 つの異なるセッションのレコードが混在します。
シナリオ #3(1 つのセッションの TCAP アボートにより、サブスクライバ アイデンティティが混在)
UE1 - Attach - IMSI1 - SAI送信(TCAP - sessmgrのクラッシュにより内部的に中断)
UE2 – アタッチ – IMSI2 – 同じTCAPで送信されたSAI - OTID
HLR は TCAP を送信 - 前の要求、UE1 の認証ベクトル(三重または四重)から継続
SGSN は UE1 の不正な認証ベクトルを UE2 で更新します。
その結果、SGSN は UE2 の認証に UE1 ベクトルを使用します。
内部 RAU の認証が有効である場合または PTMSI 再割り当てが有効である場合、SGSN は保存されたベクトル セットを使用してクライアントを認証します。UE が保存された情報と異なっている場合、UE/SGSN はネットワーク内の認証段階を先に進めません。これによって、UE が不正なデータベースとともにネットワークに留まる可能性が低くなります。これらはコードに含まれるいくつかの既知のエリアです。営業部門はこの問題の理解を深めるために、より多くの事例を引き続き分析します。
Cisco バグ ID からの修正はベスト エフォート型のアプローチです。コードのより多くのエリアを分析し、低密度ノードに導入してモニタリングを行った後で、高密度ノードに導入します。
認証を有効にすると、SGSN がホーム ロケーション レジスタ(HLR)から認証ベクトル セットを取得し、アクセスに向けて追加の認証手順を実行する必要があるので、Gr および Iu インターフェイス シグナリングが増えます。事業者はネットワークに対する影響が小さい頻度値を選択するよう注意する必要があります。
各手順の頻度値を導き出す前に、GPRS モビリティ マネージメント(GMM)/モバイル アプリケーション プロトコル(MAP)の重要業績評価指標(KPI)を分析することが重要です。KPI に基づいて、実行頻度が高い手順を確認します。この手順では、高い頻度の値を設定します。(これはネットワーク コール モデルに基づいて各パラメータを微調整する方法です)。
これらのパラメータを設定する最適な方法は、値をツリーのルートではなく、リーフに設定することです。たとえば、図 2 は認証設定ツリーを示します。次に示すように、事業者は値を「authenticating attach」の設定に直接設定するのではなく、下位のレベルに設定することを選択できます。
authenticate attach attach-type gprs-only frequency 10
authenticate attach attach-type combined frequency 10
高い頻度値(単位は 10)を設定し、Gr/Iu インターフェイスのシグナリングしきい値をモニタすることは常に適切です。シグナリングが十分制限内にある場合、事業者がネットワークに設定することを望む、シグナリングしきい値に近くかつ安全な値になるよう値を定義します。
さまざまな手順の頻度を 20/30 に設定し、外部インターフェイスのトラフィックを詳細にモニタリングしながら、5 ~ 10 にまで下げます。この余分なワークロードによる linkmgr と sessmgr メモリ CPU への影響を確認する必要があります。
PTMSI と PTMSI 署名の再割り当てによりシグナリングの急増は直接発生しませんが、PTMSI が(稀に発生する)sessmgr インスタンスで使用できるように、高い頻度値を設定することは常に重要です。 UE からすべてのアップリンク手順の PTMSI を変更することはベスト プラクティスではないので推奨されていません。値 10 が適切です。これらすべての変更の後、システムの標準ヘルスチェックをモニタおよび実行することが重要です。
たとえば、次のようになります。
Authentication:
authenticate attach ( we can still fine tune this based on KPIs of
Inter RAT attach & attach type).
authenticate rau update-type periodic frequency 10
authenticate rau update-type ra-update frequency 5
PTMSI & PTMSI signature allocation:
ptmsi-reallocate attach
ptmsi-reallocate routing-area-update update-type ra-update
ptmsi-signature-reallocate attach frequency 10
ptmsi-signature-reallocate routing-area-update frequency 20
ptmsi-reallocate routing-area-update update-type periodic frequency 10
認証の実行時や PTMSI または PTMSI 署名の再割り当て時には、手順が完了した理由を把握するためにデバッグ ログが出力されます。これは何らかの矛盾が発生した場合のトラブルシューティングに役立ちます。これらのログには、cc プロファイルからの設定、すべてのカウンタの現在値、およびさまざまな設定およびカウンタによる決定ロジックの挙動が含まれます。また、show subscribers sgsn-only または show subscribers gprs-only コマンドを使用して、サブスクライバごとの現在のカウンタ値を表示できます。
この出力例を次に示します。現在のカウンタと最後に認証されたタイムスタンプが show subscribers コマンドの完全な出力に追加されます。
[local]# show subscribers sgsn-only full all
.
.
.
DRX Parameter:
Split PG Cycle Code: 7
SPLIT on CCCH: Not supported by MS
Non-DRX timer: max. 8 sec non-DRX mode after Transfer state
CN Specific DRX cycle length coefficient: Not specified by MS
Authentication Counters
Last authenticated timestamp : 1306427164
Auth all-events UMTS : 0 Auth all-events GPRS : 0
Auth attach common UMTS : 0 Auth attach common GPRS : 0
Auth attach gprs-only UMTS : 0 Auth attach gprs-only GPRS : 0
Auth attach combined UMTS : 0 Auth attach combined GPRS : 0
Auth attach irat UMTS : 0 Auth attach irat GPRS : 0
Auth attach irat-gprs-only UMTS : 0 Auth attach irat-gprs-only GPRS : 0
Auth attach irat-combined UMTS : 0 Auth attach irat-combined GPRS : 0
Auth UMTS : 0 Auth GPRS : 0
Auth serv-req : 0 Auth serv-req data : 0
Auth serv-req signaling : 0 Auth serv-req page-rsp : 0
Auth rau UMTS : 0 Auth rau GPRS : 0
Auth rau periodic UMTS : 0 Auth rau periodic GPRS : 0
Auth rau ra-upd UMTS : 0 Auth rau ra-upd GPRS : 0
Auth rau ra-upd lcl-ptmsi UMTS : 0 Auth rau ra-upd lcl-ptmsi GPRS : 0
Auth rau ra-upd irat-lcl-ptmsi UMTS : 0 Auth rau ra-upd irat-lcl-ptmsi GPRS : 0
Auth rau comb UMTS : 0 Auth rau comb GPRS : 0
Auth rau comb lcl-ptmsi UMTS : 0 Auth rau comb lcl-ptmsi GPRS : 0
Auth rau comb irat-lcl-ptmsi UMTS : 0 Auth rau comb irat-lcl-ptmsi GPRS : 0
Auth rau imsi-comb UMTS : 0 Auth rau imsi-comb GPRS : 0
Auth rau imsi-comb lcl-ptmsi UMTS : 0 Auth rau imsi-comb lcl-ptmsi GPRS : 0
Auth rau imsi-comb irat-lcl-ptmsi UMTS: 0 Auth rau imsi-comb irat-lcl-ptmsi GPRS: 0
Auth sms UMTS : 0 Auth sms GPRS : 0
Auth sms mo-sms UMTS : 0 Auth sms mo-sms GPRS : 0
Auth sms mt-sms UMTS : 0 Auth sms mt-sms UMTS : 0
PTMSI Realloc Counters
Last allocated timestamp : 1306427165
PTMSI Realloc Freq UMTS : 0 PTMSI Realloc Freq GPRS : 0
PTMSI Realloc Attach UMTS : 0 PTMSI Realloc Attach GPRS : 0
PTMSI Realloc Serv-Req : 0 PTMSI Realloc Serv-Req Data : 0
PTMSI Realloc Serv-Req Signaling : 0 PTMSI Realloc Serv-Req Page-rsp : 0
PTMSI Realloc Rau UMTS : 0 PTMSI Realloc Rau GPRS : 0
PTMSI Realloc Rau Periodic UMTS : 0 PTMSI Realloc Rau Periodic GPRS : 0
PTMSI Realloc Rau Ra-Upd UMTS : 0 PTMSI Realloc Rau Ra-Upd GPRS : 0
PTMSI Realloc Rau Comb-Upd UMTS : 0 PTMSI Realloc Rau Comb-Upd GPRS : 0
PTMSI Realloc Rau Imsi-Comb-Upd UMTS : 0 PTMSI Realloc Rau Imsi-Comb-Upd GPRS : 0
PTMSI Sig Realloc Counters
Last allocated timestamp : 0
PTMSI Sig Realloc Freq UMTS : 0 PTMSI Sig Realloc Freq GPRS : 0
PTMSI Sig Realloc Attach UMTS : 0 PTMSI Sig Realloc Attach GPRS : 0
PTMSI Sig Realloc Ptmsi-rel-cmd UMTS : 0 PTMSI Sig Realloc Ptmsi-rel-cmd GPRS : 0
PTMSI Sig Realloc Rau UMTS : 0 PTMSI Sig Realloc Rau GPRS : 0
PTMSI Sig Realloc Rau Periodic UMTS : 0 PTMSI Sig Realloc Rau Periodic GPRS : 0
PTMSI Sig Realloc Rau Ra-Upd UMTS : 0 PTMSI Sig Realloc Rau Ra-Upd GPRS : 0
PTMSI Sig Realloc Rau Comb-Upd UMTS : 0 PTMSI Sig Realloc Rau Comb-Upd GPRS : 0
PTMSI Sig Realloc Rau Imsi-Comb UMTS : 0 PTMSI Sig Realloc Rau Imsi-Comb GPRS : 0
CAE Server Address:
Subscription Data:
.
.
ネットワーク内の問題が考えられる場合、次のコマンドを入力して、事業部の情報を収集して、問題をさらに分析します。
show subscribers gprs-only full msisdn <msisdn>
show subscribers gprs-only full imsi <imsi>
show subscribers sgsn-only msisdn <msisdn>
show subscribers sgsn-only msisdn <imsi>
show subscribers gprs-debug-info callid <callid> (get o/p for both callid)
show subscribers debug-info callid <callid> (get o/p for both callid)
task core facility sessmgr instance < >
task core facility imsimgr instance < >
Mon sub using MSISDN or pcap traces
SSD during issue.
Syslogs during the issue.
認証の頻度が高すぎると、Gr/Iu インターフェイスへのシグナリングが増加し、内部プロセス(linkmgr)の CPU への影響が若干増えます。
すべてのコマンドは設定/呼制御プロファイル モードで、事業者特権が適用されます。cc プロファイルでのコマンドのスナップショットを次に示します。
Authentication
1. Attach
authenticate attach {inter-rat} {attach-type [gprs-only | combined ]}
{frequency <1..16>} {access-type [umts | gprs]}
no authenticate attach {inter-rat} {attach-type [gprs-only | combined ]}
{access-type [umts | gprs]}
remove authenticate attach {inter-rat} {attach-type [gprs-only | combined ]}
{access-type [umts | gprs]}
2. Service-request
authenticate service-request {service-type [data | signaling | page-response]}
{frequency <1..16> | periodicity <1..10800>}
no authenticate service-request {service-type [data | signaling | page-response]}
remove authenticate service-request {service-type [data | signaling | page-response]}
{periodicity}
3. Rau
authenticate rau {update-type periodic} {frequency <1..16> | periodicity <1..10800>}
{access-type [umts | gprs]}
authenticate rau {update-type [ra-update | combined-update | imsi-combined-update]}
{with [local-ptmsi | inter-rat-local-ptmsi]} {frequency <1..16> |
periodicity <1..10800>}
{access-type [umts| gprs]}
authenticate rau {update-type [ra-update | combined-update | imsi-combined-update]}
{with foreign-ptmsi} {access-type [umts| gprs]}
no authenticate rau {update-type periodic} {access-type [umts | gprs]}
no authenticate rau {update-type [ra-update | combined-update | imsi-combined-update]}
{with [local-ptmsi | inter-rat-local-ptmsi | foreign-ptmsi]}
{access-type [umts| gprs]}
remove authenticate rau {update-type periodic} {periodicity}
{access-type [umts | gprs]}
remove authenticate rau {update-type [ra-update | combined-update |
imsi-combined-update]}
{with [local-ptmsi | inter-rat-local-ptmsi]} { periodicity} {access-type [umts| gprs]}
remove authenticate rau {update-type [ra-update | combined-update |
imsi-combined-update]}
{with foreign-ptmsi} {access-type [umts| gprs]}
4. Sms
authenticate sms {sms-type [mo-sms | mt-sms]} {frequency <1..16>}
{access-type [umts | gprs]}
no authenticate sms {sms-type [mo-sms | mt-sms]} {access-type [umts | gprs]}
remove authenticate sms {sms-type [mo-sms | mt-sms]} {access-type [umts | gprs]}
5. Detach
authenticate detach {access-type [umts | gprs]}
no authenticate detach {access-type [umts | gprs]}
remove authenticate detach {access-type [umts | gprs]}
6. All-events
authenticate all-events {frequency <1..16>} {access-type [umts | gprs]}
no authenticate all-events {access-type [umts | gprs]}
remove authenticate all-events {access-type [umts | gprs]}
PTMSI Reallocation
1. Attach
ptmsi-reallocate attach {frequency <1..50>} {access-type [umts | gprs]}
no ptmsi-reallocate attach {access-type [umts | gprs]}
remove ptmsi-reallocate attach {access-type [umts | gprs]}
2. Service-request
ptmsi-reallocate service-request {service-type [data | signaling | page-response]}
{frequency <1..50>} no ptmsi-reallocate service-request
{service-type [data | signaling | page-response]}
remove ptmsi-reallocate service-request {service-type [data | signaling |
page-response]}
3. Routing-area-update
ptmsi-reallocate routing-area-update {update-type [periodic | ra-update |
combined-update | imsi-combined-update]} {frequency <1..50>}
{access-type [umts | gprs]}
no ptmsi-reallocate routing-area-update {update-type [periodic | ra-update |
combined-update | imsi-combined-update]} {access-type [umts | gprs]}
remove ptmsi-reallocate routing-area-update {update-type [periodic | ra-update |
combined-update | imsi-combined-update]} {access-type [umts | gprs]}
4. Interval/frequency
ptmsi-reallocate [interval <60..1440> | frequency <1..50>] {access-type [umts | gprs]}
no ptmsi-reallocate [interval | frequency] {access-type [umts | gprs]}
remove ptmsi-reallocate [interval | frequency] {access-type [umts | gprs]}
PTMSI-Signature Reallocation
1. Attach
ptmsi-signature-reallocate attach {frequency <1..50>} {access-type [umts | gprs]}
no ptmsi-signature-reallocate attach {access-type [umts | gprs]}
remove ptmsi-signature-reallocate attach {access-type [umts | gprs]}
2. PTMSI Reallocation command
ptmsi-signature-reallocate ptmsi-reallocation-command {frequency <1..50>}
{access-type [umts | gprs]}
no ptmsi-signature-reallocate ptmsi-reallocation-command {access-type [umts | gprs]}
remove ptmsi-signature-reallocate ptmsi-reallocation-command
{access-type [umts | gprs]}
3. Routing-area-update
ptmsi-signature-reallocate routing-area-update {update-type [periodic | ra-update |
combined-update | imsi-combined-update]} {frequency <1..50>}
{access-type [umts | gprs]}
no ptmsi-signature-reallocate routing-area-update {update-type [periodic | ra-update |
combined-update | imsi-combined-update]} {access-type [umts | gprs]}
remove ptmsi-signature-reallocate routing-area-update {update-type [periodic |
ra-update | combined-update | imsi-combined-update]} {access-type [umts | gprs]}
4. Interval/frequency
ptmsi-signature-reallocate [interval <60..1440> | frequency <1..50>]
{access-type [umts | gprs]}
no ptmsi-signature-reallocate [interval | frequency] {access-type [umts | gprs]}
remove ptmsi-signature-reallocate [interval | frequency] {access-type [umts | gprs]}
改定 | 発行日 | コメント |
---|---|---|
1.0 |
12-Jun-2015 |
初版 |