المحتويات

المقدمة

معلومات أساسية

تكوين CPAR

التكوين العام

تكوين العميل

التكوين السريع للقواعد

تكوين الخدمات

تكوين الخوادم البعيدة

مدير جلسة العمل

مدير الموارد

البرامج النصية

تكوين تسجيل CPAR

قيم المهلة

حجم حزمة القطر

إدارة الجلسات في CPAR

سمات (AVP) المخزنة مؤقتا في CPAR AAA لجلسات عمل المشترك

التحقق من الصحة

استكشاف الأخطاء وإصلاحها

المقدمة

يصف هذا المستند الإجراء في تكوين مصادقة Cisco Prime Access Registrar (CPAR) والتفويض والمحاسبة (AAA).

ينطبق هذا الإجراء على بيئة OpenStack باستخدام إصدار NewTon حيث لا يقوم ESC بإدارة CPAR ويتم تثبيت CPAR مباشرة على VM الذي تم نشره على OpenStack.

معلومات أساسية

Ultra-M هو حل أساسي لحزم الأجهزة المحمولة تم تجميعه في حزم مسبقا والتحقق من صحته افتراضيا تم تصميمه من أجل تبسيط نشر شبكات VNF. OpenStack هو مدير البنية الأساسية الظاهرية (VIM) ل Ultra-M ويتكون من أنواع العقد التالية:

- حوسبة

- قرص تخزين الكائنات - الحوسبة (OSD - الحوسبة)

- ضابط

- النظام الأساسي OpenStack - المدير (OSPD)

يتم توضيح بنية Ultra-M التقنية عالية المستوى والمكونات المعنية في هذه الصورة:

مخصص هذا المستند لأفراد Cisco المطلعين على نظام Cisco Ultra-M الأساسي ويفصل الخطوات المطلوبة لتنفيذها في نظام التشغيل OpenStack و Redhat.

ملاحظة: يتم وضع إصدار Ultra M 5.1.x في الاعتبار من أجل تحديد الإجراءات الواردة في هذا المستند.

تكوين CPAR

التكوين العام

يتم تكوين التكوين العام بالقيم المناسبة، مثل معرفات التطبيق وعنوان IP للمضيف الأصلي، المجال، وما إلى ذلك،

Cd /Radius/Advanced/Diameter/

Diameter/

IsDiameterEnabled = TRUE

General/

Product = CPAR

Version = 7.3.0.3

AuthApplicationIdList = 1:5:16777264:16777265:16777272:16777250

AcctApplicationIdList = 3

TransportManagement/

Identity = aaa01.aaa.epc.mncxx.mccxx.3gppnetwork.org

Realm = epc.mncxx.mccxx.3gppnetwork.org

WatchdogTimeout = 500

ValidateIncomingMessages = FALSE

ValidateOutgoingMessages = TRUE

MaximumNumberofDiameterPackets = 8192

ReserveDiameterPacketPool = 0

DiameterPacketSize = 4096

AdvertisedHostName/

1. aaa01.aaa.epc.mncxx.mccxx.3gppnetwork.org

يجب تحديث /etc/hosts مع حل عنوان IP المطابق لاسم المجال المؤهل بالكامل (FQDN) لهوية AAA المستخدم في إدارة النقل واسم المضيف الذي سيتم حله

تكوين العميل

يتم تكوين تكوين العميل باستخدام نظائر القطر حيث يتم تلقي حركة المرور، في هذه الحالة DRA.

Cd /Radius/Clients/

DRA01/

Name = DRA01

Description =

Protocol = diameter

HostName = x.x.x.x

PeerPort = 3868

Vendor =

IncomingScript~ =

OutgoingScript~ =

AdvertisedHostName =

UserLogEnabled = FALSE

AdvertisedRealm =

InitialTimeout = 3000

MaxIncomingRequestRate = 0

KeepAliveTime = 0

AuthSessionStateInASR = No-State-Maintained

SCTP-Enabled = FALSE

TLS-Enabled = FALSE

التكوين السريع للقواعد

يتم إستخدام FastRules لتعيين الخدمة المقابلة في وقت التشغيل استنادا إلى شرط معين، ويستند الشرط إلى أزواج القيمة المنسوبة (AVP) وقيمها الموجودة في رسالة القطر، إذا لم تتطابق قواعد سريعة فإنه يحدد الخدمة الافتراضية.

Cd /Radius/FastRules/

FastRules/

RuleDefinitions/

Entries 1 to 5 from 5 total entries

Current filter: <all>

r1/

Name = r1

Description = Used for HSS initiated Flows

Protocol = diameter

Condition = "1 OR 2"

Success = author(3gpp-reverse)

Failure = Rule(r2)

Attributes/

Entries 1 to 2 from 2 total entries

Current filter: <all>

1/

Name = 1

Description =

Dictionary = environment

Attribute = Diameter-Command-Code

Value = 304

2/

Name = 2

Description =

Dictionary = environment

Attribute = Diameter-Command-Code

Value = 305

r2/

Name = r2

Description = Used for PGW Update procedure over S6b

Protocol = diameter

Condition = "1 AND 2"

Success = author(s6b)

Failure = Rule(r3)

Attributes/

Entries 1 to 2 from 2 total entries

Current filter: <all>

1/

Name = 1

Description =

Dictionary = Request

Attribute = Auth-Application-Id

Value = 16777272

2/

Name = 2

Description =

Dictionary = request

Attribute = Diameter-Command-Code

Value = 265

r3/

Name = r3

Description = OPTIONAL used for PGW Termination procedure

Protocol = diameter

Condition = "1 and 2"

Success = author(null)

Failure = Rule(r4)

Attributes/

Entries 1 to 2 from 2 total entries

Current filter: <all>

1/

Name = 1

Description =

Dictionary = Request

Attribute = Auth-Application-Id

Value = 16777272

2/

Name = 2

Description =

Dictionary = environment

Attribute = Diameter-Command-Code

Value = 275

r4/

Name = r4

Description = Used for SWm Termination procedure

Protocol = diameter

Condition = "1 and 2"

Success = author(3gpp-auth)

Failure = Rule(r5)

Attributes/

Entries 1 to 2 from 2 total entries

Current filter: <all>

1/

Name = 1

Description =

Dictionary = request

Attribute = Auth-Application-Id

Value = 16777264

2/

Name = 2

Description =

Dictionary = environment

Attribute = Diameter-Command-Code

Value = 275

r5/

Name = r5

Description = Used for SWm ReAuthorization

Protocol = diameter

Condition = "1 and 2"

Success = Query(query)

Failure =

Attributes/

Entries 1 to 2 from 2 total entries

Current filter: <all>

1/

Name = 1

Description =

Dictionary = environment

Attribute = Diameter-Command-Code

Value = 265

2/

Name = 2

Description =

Dictionary = request

Attribute = Auth-Application-Id

Value = 16777264

Order/

Radius/

Diameter/

1. r1

Tacacs/

إذا لم يتطابق أي من FastRules المذكورة أعلاه، تتم معالجة الحزمة وفقا للخدمة الافتراضية.

Cd /Radius/

DefaultAuthenticationService~ = encrypted-imsi-service

DefaultAuthorizationService~ = 3gpp-auth

تكوين الخدمات

تكوين الخدمة هو المكان الذي يتم فيه تحديد الخدمة وفقا للمصادقة ومتطلب التفويض:

القرص المضغوط /RADIUS/الخدمات/

يتم إستخدام IMSI-IMSI-Service لمصادقة EAP-AKA ومع تشفير IMSI لأجهزة Apple. إذا لم يكن مطلوبا، قم بتعيين المعلمة EncryptedIMSI على false

encrypted-imsi-service/

Name = encrypted-imsi-service

Description =

Type = eap-aka

NumberOfQuintets = 1

AlwaysRequestIdentity = True

EnableIdentityPrivacy = False

EnableRollingPseudonymSecret = False

PseudonymSecret = <encrypted>

PseudonymRenewtime = "24 Hours"

PseudonymLifetime = Forever

NotificationService =

Generate3GPPCompliantPseudonym = False

EnableReauthentication = False

UseOutagePolicyForReauth = False

MaximumReauthentications = 16

ReauthenticationTimeout = 3600

ReauthenticationRealm =

EnableEncryptedIMSI = True

EncryptedIMSIDelimiter = NULL

EncryptedIMSIKeyIdDelimiter = ,

DefaultPrivateKey = xxxxxxxxxxxxxxxxxxxxxxxx

QuintetCacheTimeout = 0

AuthenticationTimeout = 120

QuintetGenerationScript~ =

UseProtectedResults = False

SendReAuthIDInAccept = False

Subscriber_DBLookup = DiameterDB

DiameterInterface = SWx

ProxyService = dia-proxy

The 3GPP service is used for Registration/Profiledownload from HSS over SWx;

3gpp-auth/

Name = 3gpp-auth

Description =

Type = 3gpp-authorization

Protocol = diameter

IncomingScript~ =

OutgoingScript~ = removeuserdata

SessionManager = sm1

DiameterProxyService = dia-proxy

FetchLocationInformation = False

يتم إستخدام خدمة وكيل DIA لتحديد جهاز النسخ البعيد ويمكنها تحديد سياسة النظير، ويتم إستخدام خيار GroupFailOver ك MultiPeerPolicy، عندما يكون هناك العديد من الأجهزة النظيرة عن بعد وتريد تجميع نفس النهج. قم أيضا بتعريف GroupTimeOutPolicy إلى تجاوز الفشل إلى مجموعات متعددة

dia-proxy/

Name = dia-proxy

Description =

Type = diameter

IncomingScript~ = rmserver

OutgoingScript~ =

MultiplePeersPolicy = GroupFailover

GroupTimeOutPolicy = FailOver

ServerGroups/

Entries 1 to 2 from 2 total entries

Current filter: <all>

Group_Primary_DRA/

Name = Group_Primary_DRA

Metric = 0

IsActive = TRUE

Group_Secondary_DRA/

Name = Group_Secondary_DRA

Metric = 1

IsActive = TRUE

يتم تحديد مجموعات الخوادم المذكورة أعلاه في /RADIUS/GroupServers/

GroupServers/

Entries 1 to 2 from 2 total entries

Current filter: <all>

Group_Primary_DRA/

Name = Group_Primary_DRA

Description =

MultiplePeersPolicy = RoundRobin

PeerTimeOutPolicy = FailOver

DiaRemoteServers/

Entries 1 to 2 from 2 total entries

Current filter: <all>

DRA01/

Name = DRA01

Metric = 0

Weight = 0

IsActive = TRUE

DRA02/

Name = DRA02

Metric = 1

Weight = 0

IsActive = TRUE

Group_Secondary_DRA/

Name = Group_Secondary_DRA

Description =

MultiplePeersPolicy = RoundRobin

PeerTimeOutPolicy = FailOver

DiaRemoteServers/

Entries 1 to 4 from 4 total entries

Current filter: <all>

DRA03/

Name = DRA03

Metric = 0

Weight = 0

IsActive = TRUE

DRA04/

Name = DRA04

Metric = 2

Weight = 0

IsActive = TRUE

DRA05/

Name = DRA05

Metric = 1

Weight = 0

IsActive = TRUE

يتم إستخدام الخدمة S6b لمعالجة إجراء تحديث PGW عبر S6b.

s6b/

Name = s6b

Description =

Type = 3gpp-authorization

Protocol = diameter

IncomingScript~ =

OutgoingScript~ =

SessionManager =

DiameterProxyService = dia-proxy

FetchLocationInformation = False

يتم إستخدام القيمة العكسية ل 3gpp للرسائل التي تم بدؤها بواسطة HSS ليتم معالجتها.

3gpp-reverse/

Name = 3gpp-reverse

Description =

Type = 3gpp-reverse-authorization

IncomingScript~ = AAARTRCheck

OutgoingScript~ =

SessionManager = sm1

TranslationService =

يتم إستخدام خدمة الاستعلام أثناء إجراء إعادة التفويض حيث يتم الحصول مباشرة على ملف التعريف المحدث من ذاكرة التخزين المؤقت استنادا إلى PPR الذي تم تلقيه من HSS.

query/

Name = query

Description =

Type = diameter-query

IncomingScript~ =

OutgoingScript~ = removeuserdataquery

UpdateSessionLastAccessTime = False

SessionManagersToBeQueried/

1. sm1

AttributesToBeReturned/

1. Non-3GPP-User-Data

2. Service-Selection

الخدمة الفارغة هي مجرد رد بنجاح لعملية إنهاء S6b حيث لا يوجد جلسة تخزن مؤقتا على S6b.

null/

Name = null

Description =

Type = null

IncomingScript~ =

OutgoingScript~ =

تكوين الخوادم البعيدة

يتم تحديد الأجهزة البعيدة باستخدام النظير البعيد الذي يتم إرسال الحزم إليه من AAA مثل HSS. في حالة إستخدام DRA، فقم بتحديد نفس معلومات DRA في كل من العملاء والخوادم البعيدة؛

RemoteServers/

DRA01/

Name = DRA01

Description =

Protocol = diameter

HostName = 10.169.48.235

DestinationPort = 3868

DestinationRealm = epc.mnc300.mcc310.3gppnetwork.org

ReactivateTimerInterval = 300000

Vendor =

IncomingScript~ = AAAReplaceResultCode

OutgoingScript~ = rmdh

MaxTries = 3

MaxTPSLimit = 0

MaxSessionLimit = 0

InitialTimeout = 3000

LimitOutstandingRequests = FALSE

MaxPendingPackets = 0

MaxOutstandingRequests = 0

DWatchDogTimeout = 2500

SCTP-Enabled = FALSE

TLS-Enabled = FALSE

AdvertiseHostName =

AdvertiseRealm =

مدير جلسة العمل

يجب تعريف "إدارة الجلسة" حول التخزين المؤقت للجلسة، حيث تعمل بالتزامن مع "إدارة الموارد". تتم الإشارة إلى مدير الجلسة في خدمات 3gpp-auth و 3gpp-reverse والاستعلام؛

Cd /Radius/SessionManagers/

sm1/

Name = sm1

Description =

Type = local

EnableDiameter = True

IncomingScript =

OutgoingScript =

AllowAccountingStartToCreateSession = FALSE

SessionTimeOut =

PhantomSessionTimeOut =

SessionKey = User-Name:Session-Id

SessionCreationCmdList = 268||305

SessionDeletionCmdList = 275

SessionRestorationTimeOut = 24h

ResourceManagers/

1. 3gpp

2. swmcache

3.  per-user

مدير الموارد

يتم تحديد مديري الموارد لتخصيص الموارد وتخصيصها لمديري الجلسات.

يتم إستخدام مديري الموارد الثلاثة هؤلاء.

Cd /Radius/ResourceManagers/

ResourceManagers/

3gpp/

Name = 3gpp

Description =

Type = 3gpp

EnableRegistrationFlow = TRUE

EnableSessionTermination = false

ReuseExistingSession = True

HSSProxyService = dia-proxy

Per-User/

Name = Per-User

Description =

Type = user-session-limit

UserSessionLimit = 0

swmcache/

Name = swmcache

Description =

Type = session-cache

OverwriteAttributes = FALSE

QueryKey = Session-Id

PendingRemovalDelay = 10

AttributesToBeCached/

1. Non-3GPP-User-Data

2. Service-Selection

QueryMappings/

البرامج النصية

يعرض هذا الجدول كل النصوص التنفيذية المستخدمة أثناء معالجة الحزم.

الاسم

ملف برنامج نصي

نقطة الدخول

الوصف

كليد

test.tcl

قطيع

تبحث عن معرف التطبيق 1677264 ورمز Diameter-Command 268، ويحصل على قيمة اسم المستخدم، وينسخها إلى سمة Call-station-ID من الطلب القادم.

هذا البرنامج النصي مشار إليه في نقطة نص RADIUS الواردة

خادم rmserver

test.tcl

rm_server

للبحث عن سمة نوع تعيين الخادم، إذا كانت موجودة، يزيل حقل الخادم البعيد من الطلب الوارد.

تتم الإشارة إلى هذا البرنامج النصي في نقطة البرنامج النصية الواردة لخدمة وكيل DIA

RemoteUserData

بيانات مستخدم libremoveuser.so

removeUserData

يتم إستخدام برنامج Rex النصي للتحقق أولا من المعلومات التي تم تلقيها من HSS، خاصة وأنه يجب أن يكون لكل من 'non_3GPP-IP-ACCESS-APN' و'non_3GPP_SUBSCRIPTION_ALLOWED (0)' و'non_3GPP_APNS_ENABLE (0)' وإلا فسيفشل التفويض. وبعد إجراء مقارنة بسيطة لاسم APN الذي تم إستلامه من SWm DER Message(AVP لتحديد الخدمة) مع تكوين APN الذي تم تنزيله من HSS، في حالة وجود تطابق، يتم نسخ تفاصيل APN المحددة فقط وإزالة AVPs غير المرغوب فيها وإعداد DEA النهائية نحو ePDG. في حالة عدم فشل تفويض المطابقة وفي حالة عدم وجود AVP لتحديد الخدمة في DER يتم إرسال جميع معلومات APN ولكن كAVP خارجي.

تتم الإشارة إلى هذا البرنامج النصي في نقطة الكتابة الصادرة 3GPP-auth

RemoteUserDataQuery

libremoveuserDataQuery.so

removeUserData

يتم إستخدام برنامج Rex النصي للتحقق أولا من المعلومات التي تم تلقيها من HSS، وخاصة Non-3GPP-IP-ACCESS وNon-3GPP-IP-ACCESS-APN يجب أن يكون لكل منهما القيمة NON_3GPP_SUBSCRIPTION_ALLOWED (0) وNON_3GPP_APNS_ENABLE (0) وإلا فسيفشل التفويض. وبعد إجراء مقارنة بسيطة لاسم APN الذي تم إستلامه من SWm DER Message (AVP لتحديد الخدمة) مع تكوين APN الذي تم تنزيله من HSS، إذا كان هناك تطابق فإنه ينسخ تفاصيل APN المحددة فقط ويزيل AVPs غير المرغوب فيها ويعد DEA النهائية نحو ePDG. في حالة عدم فشل تفويض المطابقة وفي حالة عدم وجود AVP لتحديد الخدمة في DER يتم إرسال جميع معلومات APN ولكن كAVP خارجي.

تمت الإشارة إلى هذا البرنامج النصي في Query ServiceOutgoing Scriptinpoint

خارج

test.tcl

نيوسورستيت

البرنامج النصي الوارد لخدمة وكيل DIA - يستخدم لإزالة تثبيت الرسائل التي تمت معالجتها بالفعل. على سبيل المثال، إذا تم الحصول على MAR/MAA من DRA1، فسوف تستخدم أداة SAR الخاصة بالمستخدم التالية نفس DRA1 وإذا لم تكن متوفرة وتم الاحتفاظ بها، فإنها لا تتحمل تجاوز الفشل. من أجل تجاوز الفشل إلى DRA البديل، يجب إزالة هذا اللاصق. يتم إستخدام البرنامج النصي لإزالة معرف الشبكة الذي تم زيارته باتجاه S6b SAR(PGW_UPDATE) HSS.

rmdh

test.tcl

rmdh

يزيل DestinationHost AVP في الحزم ذات DiameterCode 301 و 303.

rmvnid

test.tcl

rmvnid

يزيل AVP معرف الشبكة الذي تم زيارته في الحزم ذات DiameterCode 256 ونوع تعيين الخادم هو 13.

AAReplaceResultCode

test.tcl

replaceResultCode

إستبدال AVP لكود النتائج ب "إختبار" في الحزم ذات DiameterCode 274 ورمز النتيجة "diameter-unknown-session-id"

آارتك هيك

librexblockRTR.so

آارتك هيك

عند تلقي العديد من RTR للجلسة نفسها، سيتم حذف التكرارات وتسجيلها.

قد لا تكون بعض البرامج النصية مطلوبة في إصدار أعلى، ومن المفترض إستخدام البرامج النصية المسرودة في الإصدار 7.3.0.3 من CPAR

كل النصوص التنفيذية موجودة في المسار /opt/ciscoAr/scripts/radius/.

تكوين تسجيل CPAR

يقوم المجلد /opt/ciscoAr/log بتخزين جميع سجلات التطبيقات. يقوم الملف name_radius_1_log بتسجيل كافة الطلبات التي تم إسقاطها ورفضها، لذلك من المهم تخزين هذا الملف لأغراض أستكشاف الأخطاء وإصلاحها.

تتيح حماية مستوى التحكم (CPAR) تهيئة مرنة للغاية لتخزين هذا السجل وفقا لاحتياجاتك. بناء على متطلب يمكن تعريف هذه القيمة، هنا يتم الاحتفاظ بأحدث 20 ملف سجل، كل ملف بحجم 5 ميغابايت.

لتمكين معلمات التسجيل 2 المحددة هذه يجب تكوينها في وضع AREGCMD:

/Radius/Advanced

LogFileSize = "5 ميغابايت"

LogFileCount = 20

يتبع اصطلاح تسمية السجل القاعدة المحددة في هذا الجدول:

الوصف

اسم ملف التدوين

أحدث سجل

name_radius_1_log

من الثاني إلى الأخير سجل

name_radius_1_log.01

من الثالث إلى الأحدث سجل

name_radius_1_log.02

....

....

من 20 إلى أحدث سجل

name_radius_1_log.19

جدول 2 ترقيم السجل.

قيم المهلة

تحتوي حماية مستوى التحكم (CPAR) على مهلات قابلة للتكوين بواسطة الخادم. يحتوي الإعداد الحالي على التكوين التالي:

حالات انتهاء المهلة العامة الموجودة في /RADIUS/Advanced

- أشار DiameterStaleConnectionDeleteTimeOut 30000 (مللي ثانية) هذا المؤقت إلى طول اتصال القطر الذي يمكن أن يكون غير نشط قبل أن يقوم CPAR بوضع علامة أسفل عليه.

حالات انتهاء المهلة الزمنية للعملاء الموجودة في /RADIUS/Client/<client_name>

- الوقت الأولي للمهلة 3000 (مللي ثانية) منتظرا للرد من DRA قبل أن تعتبر CPAR أنه يتعذر الوصول إليه.

فترات انتهاء المهلة للخادم البعيد الموجودة في /RADIUS/RemoteServers/<remote_server_name>

- الوقت الأولي للمهلة 3000 (مللي ثانية) منتظرا للرد من DRA قبل أن تعتبر CPAR أنه يتعذر الوصول إليه.

- الوقت المستغرق من قبل DWatchDogTimeout 2500 (مللي ثانية) في انتظار إعادة تشغيل من DRA لحزمة DiamaterWatchDog قبل أن تعتبرها وحدة المعالجة المركزية غير قابلة للوصول إليها.

- وقت إعادة تنشيطTimerInterval 30000 (مللي ثانية) الذي ستنتظر فيه حماية مستوى التحكم (CPAR) حتى يتم إعادة محاولة إنشاء اتصال باستخدام نظير القطر.

حجم حزمة القطر

يتناول هذا المستند معنى أمر حجم حزمة القطر والأسباب التي دفعتك إلى الحفاظ على هذه المعلمة إلى القيمة 4096.

كما هو موضح في الصورة أعلاه، يبلغ الحد الأقصى لحجم الحزمة الذي تتوقع CPAR تلقيه 4096 بايت. تم تكوين هذه القيمة تحت متغير DiameterPacketSize الموجود في دليل /Radius/Advanced/Diameter/TransportManagement. سيتم إسقاط جميع الحزم التي لا تتوافق مع هذه القيمة. يتم الحصول على الحجم الإجمالي للحزمة بعد إضافة حجم سمات جلسة العمل المخزنة مؤقتا بالإضافة إلى حجم حزمة القطر المتلقاة.

على سبيل المثال، دعونا نأخذ في الاعتبار حجم حزمة PPR الذي يبلغ 4000 بايت وضمن هذه الرسالة، يكون حجم بيانات مستخدم-مستخدم-Data الخاصة بالمستخدم غير 3GPP 3800 بايت. إذا كانت الجلسة قد قامت بتخزين بعض السمات مؤقتا بالفعل وكان حجم البيانات المخزنة مؤقتا يبلغ 297 بايت، فإن حجم جلسة العمل يتجاوز 4096 بايت ويتم إسقاط الرسالة بواسطة CPAR.

وخلال المشروع، تم تحليل الحزم التي تزيد عن 4096. تشير النتائج إلى أنه في المتوسط تصل 36 حزمة (SAA) أكبر من 4096 إلى كل مثيل CPAR في اليوم. هذا العدد من الحزم غير ذي معنى لأنه صغير جدا.

هذه المعلمة قابلة للتكوين ويمكن زيادتها إذا لزم الأمر. بيد أن القيمة قد إرتفعت إلى ما بعد عام 4096، الأمر الذي يترتب عليه بعض السلبيات:

- إذا تمت زيادة DiameterPacketSize إلى 5 كيلوبايت، فستقبل CPAR حزم SAA أكبر من 4096 بايت. ومع ذلك، إذا تم بدء تشغيل PPR لنفس جلسة عمل المستخدم، حيث إن حجم بيانات مستخدم-مستخدم غير 3GPP هو 4260 بايت، يفشل تحديث جلسة العمل ويؤدي إلى إلغاء تسجيل المستخدم.

- يؤثر DiameterPacketSize مباشرة على ذاكرة بدء التشغيل المخصصة لعملية نصف القطر. كلما كان DiameterPacketSize أكبر كلما كان مقدار ذاكرة RES المخصصة لعملية RADIUS عند بدء تشغيل CPAR أكبر.

تعرض هذه الصورة مثالا لمخرجات الأمر العلوي في مثيل تم فيه تكوين DiameterPacketSize إلى 4096:

إذا تمت زيادة المعلمة DiameterPackerSize إلى 6000 فإن إخراج الأمر العلوي يبدو كما يلي:

- بالإضافة إلى تخصيص ذاكرة بدء التشغيل، بمجرد إستخدام النظام، يوجد مخزن مؤقت للذاكرة الديناميكية الداخلية ينمو بالنسبة لعدد الحزم التي تصل إلى CPAR. إذا كانت الحزم 1000 على سبيل المثال تصل إلى CPAR عند نقطة واحدة، فإن CPAR يخصص داخليا في المخزن المؤقت 1000 * DiameterPacketSize قيمة الذاكرة، بغض النظر عن حجم الحزم الفردية (تعرف CPAR أن DiameterPacketSize يشير إلى الحد الأقصى لحجم الحزمة). يقوم المخزن المؤقت للذاكرة الداخلية هذا بتخصيص مزيد من الذاكرة إذا تم زيادة DiameterPacketSize وتقليل مساحة الذاكرة إذا تم تقليل هذه المساحة.

يوصى بالإبقاء على هذه المعلمة ك 4096، حيث تقرر أن عدد الحزم الأكبر من 4096 لا يذكر وأن السلبيات قد تمثل سلوكا غير مرغوب فيه.

إدارة الجلسات في CPAR

إن الآلية الوحيدة الموجودة في CPAR لمراقبة عدد الجلسات هي من خلال الطريقة الموضحة في هذا المستند. لا يوجد OID يمكن إسترداده عبر SNMP الذي يحتوي على هذه المعلومات.

تتميز حماية مستوى التحكم (CPAR) بالقدرة على إدارة الجلسات، وأدخل واجهة سطر الأوامر (CLI) الخاصة بوحدة المعالجة المركزية (CPAR) باستخدام /opt/ciscoAr/bin/aregcmd، ثم تسجيل الدخول باستخدام بيانات اعتماد المسؤول.

باستخدام الأمر count-sessions /r all cpar تظهر جميع الجلسات المرفقة به في تلك اللحظة.

للاطلاع على مزيد من المعلومات حول جلسة (جلسات) cpar يكون له الأمر query-sessions /r all الذي يعطي المعلومات حول جميع الجلسات المرفقة ب CPAR.

لإظهار معلومات جلسة معينة فقط، يمكن تغيير الأمر واستخدام قيمة المستخدم، أي: جلسات عمل الاستعلام /r مع-user 31031099007655

تحتوي هذه القائمة على كافة عوامل التصفية الممكنة لأمر جلسات عمل الاستعلام:

- الكل

- معرف التشغيل

- مع-NAS

- مع المستخدم

- مفتاح الإدخال

- عصر (+WITH)

- مع سمة.

أخيرا، لفصل الجلسات من CPAR، أستخدم الأمر release-sessions /r all، ويتم فصل جميع الجلسات المرتبطة بتلك اللحظة.

يمكن تطبيق مرشح لفصل جلسة عمل معينة.

سمات (AVP) المخزنة مؤقتا في CPAR AAA لجلسات عمل المشترك

يدعم Prime Access Registrar التخزين المؤقت للسمات في "مديري الجلسات" التي يمكن إستخدامها للاستعلام عن البيانات. تحتوي خدمة Diameter-query هذه على قائمة بمديري جلسات العمل المراد الاستعلام عنهم وقائمة بالسمات (المخزنة مؤقتا) المطلوب إرجاعها في حزمة Access-Accept إستجابة لطلب استعلام DIAMETER. يتم بدء هذا من خلال البرنامج النصي لنقطة الملحق أو من خلال "مشغل القواعد والنهج" من خلال تعيينه إلى متغير بيئة جديد يسمى Query-Service.

يجب تحديد خدمة Diameter Query من خلال البرنامج النصي لنقطة الملحق أو من خلال Rule and Policy Engine (محرك القاعدة والنهج) عن طريق تعيينها إلى متغير بيئة جديد يسمى Query-Service. يرجع السبب في ذلك إلى أن طلب استعلام DIAMETER يأتي كطلب وصول وليس لدى الخادم أية طريقة لمعرفة ما إذا كان طلب استعلام DIAMETER أو طلب مصادقة عادي. يفيد إعداد متغير بيئة Query-Service للخادم Prime Access Registrar بأن الطلب هو طلب استعلام DIAMETER بحيث يمكن لخادم Prime Access Registrar معالجة الطلب باستخدام مجموعة خدمة Diameter-Query في متغير بيئة Query-Service.

عند تحديد خدمة DIAMETER Query لمعالجة طلب Access، فإنها تستعلم عن القائمة التي تم تكوينها لمديري جلسات العمل لسجل مطابق باستخدام قيمة QueryKey التي تم تكوينها في إدارة موارد ذاكرة التخزين المؤقت للجلسة المشار إليها ضمن "مديري جلسات العمل" كمفتاح. في حالة العثور على سجل مطابق، يتم إعادة قبول الوصول الذي يحتوي على قائمة بالسمات المخزنة مؤقتا الموجودة (استنادا إلى التكوين) في السجل المطابق إلى العميل. إذا احتوت ذاكرة التخزين المؤقت لجلسة العمل على سمة متعددة القيم، فسيتم إرجاع جميع قيم هذه السمة في الاستجابة كسمة متعددة القيم. في حالة عدم وجود سجل مطابق، يتم إرسال حزمة Access-Reject إلى العميل.

يقوم Prime Access Registrar بتقديم نقاط برمجة نصية على مستوى مدير الجلسة مع واجهات برمجة تلقائية (APIs) للوصول إلى المعلومات المخزنة مؤقتا الموجودة في سجل الجلسة. يمكنك إستخدام نقاط البرمجة النصية وواجهات برمجة التطبيقات هذه لكتابة شرائط نقاط الامتداد لتعديل المعلومات المخزنة مؤقتا.

في هذه اللحظة، لا يحتوي نشرنا على برامج نصية مكتوبة أو يستخدم واجهات برمجة التطبيقات (API) القابلة للبرمجة للوصول إلى مثل هذه البيانات ولكن الخيار متاح.

السمات التي تخزنها إدارة جلسة العمل حاليا هي:

ترميز ثابت عند /radius/resourceAgers/swmcache/AttributesToCache:

- بيانات مستخدم-مستخدم غير 3GPP

- تحديد الخدمة

بشكل افتراضي:

- اسم المستخدم (IMSI)

- الأصل-المضيف

- Auth-Application-Id

- مملكة الأصل

- معرف الجلسة

تلك السمات تكون مرئية لكل جلسة عمل عند إستخدام هذا الأمر query-sessions على CLI (واجهة سطر الأوامر).

التحقق من الصحة

لا يوجد حاليًا إجراء للتحقق من صحة هذا التكوين.

استكشاف الأخطاء وإصلاحها

لا تتوفر حاليًا معلومات محددة لاستكشاف الأخطاء وإصلاحها لهذا التكوين.