المحتويات

المقدمة

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

الاصطلاحات

نصائح حول الوقت المستغرق في العيش

تصحيح أخطاء Cisco Gatekeeper

معلومات ذات صلة

المقدمة

يصف هذا المستند كيفية قيام Cisco Gatekeeper بسحب نقاط النهاية باستخدام قيمة مدة البقاء (TTL) في حالات مختلفة. يتم إستخدام أوامر show وdebugs لإظهار كيفية عمل TTL بطرق مختلفة.

المتطلبات الأساسية

المتطلبات

يجب أن يكون قراء هذا المستند على دراية بالمواضيع التالية:

- تنفيذ Cisco H.323، بما في ذلك Cisco Gatekeeper. للحصول على فهم أساسي لبوابات H.323، ارجع إلى فهم بوابات H.323.

المكونات المستخدمة

تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية.

- لأغراض هذا المستند، يتم إستخدام برنامج Cisco IOS® الإصدار 12.3(9) لجمع المعلومات.

تأكد من إستخدام Cisco IOS مع ميزة وظيفة H.323 Gatekeeper. ويتم الإشارة إلى هذا باستخدام x في اسم صورة Cisco IOS. على سبيل المثال، يكون برنامج Cisco IOS الصحيح ل the Cisco 3640 للعمل كحارس بوابة هو c3640-ix-mz.123-9.bin.

- Cisco Gatekeeper (جميع الأنظمة الأساسية).

ملاحظة: تم إستخدام NetMeeting كنقطة نهاية H.323 في المثال الوارد في هذا المستند لأنه لا يوفر قيمة TTL.

لمزيد من المعلومات حول كيفية تكوين NetMeeting باستخدام بوابات Cisco IOS، ارجع إلى كيفية تكوين Microsoft NetMeeting باستخدام بوابات Cisco IOS.

تم إنشاء المعلومات المُقدمة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كنت تعمل في شبكة مباشرة، فتأكد من فهمك للتأثير المحتمل لأي أمر قبل استخدامه.

الاصطلاحات

للحصول على مزيد من المعلومات حول اصطلاحات المستندات، راجع اصطلاحات تلميحات Cisco التقنية.

نصائح حول الوقت المستغرق في العيش

هذه بعض التلميحات حول كيفية عمل TTL على Cisco Gatekeeper وكيفية عمل عملية التقادم لنقاط النهاية في الحالات المختلفة.

- تتوقع Cisco Gatekeeper الاستماع من نقطة النهاية بشكل دوري عبر رسائل طلب التسجيل (RRQ) (إما خفيف الوزن أو كامل).

- بالنسبة لنقاط انتهاء المهلة الزمنية، يولي برنامج "حماية البوابة من Cisco" اهتماما لقيمة TTL المقدمة من نقطة النهاية في رسالة RRQ. هناك تقصير مرمز بشكل ثابت من 1800 ثاني (ثلاثين دقيقة) لمهلة نقطة النهاية. يمكن تغيير هذه القيمة باستخدام نقطة نهاية الأمر ttl <time_value> من Cisco Gatekeeper CLI . وهذا يغير السلوك لجميع نقاط النهاية H.323 v1، أو H.323 v2 ونقاط النهاية اللاحقة التي لا تتضمن قيمة TTL في رسالة RRQ.

- تقوم Cisco Gatekeeper بتشغيل "عملية تقادم نقطة النهاية" بشكل دوري. تختلف هذه العملية استنادا إلى حمل وحدة المعالجة المركزية (CPU) الحالي من كل دقيقة إلى كل خمس دقائق. بالنسبة لكل 20٪ من إستخدام وحدة المعالجة المركزية (CPU)، تتزايد فترة التقادم بمقدار دقيقة واحدة، حتى مدة أقصاها خمس دقائق. ومن أجل عدم التحميل الزائد لوحدة المعالجة المركزية (CPU) عندما تكون هناك نقاط نهاية كثيرة، تعمل عملية التقادم فقط عبر خمسين نقطة نهاية لكل تمرير. إذا كان هناك المزيد، فسيتم تأجيل ذلك حتى بوب المؤقت التالي. يمكن أن تتراوح المدة من دقيقة إلى خمس دقائق.

- إذا تم تضمين حقل timeToLive في رسالة RRQ Registration و Admission and Status (RAS)، يستخدم برنامج حماية البوابة قيمة هذا الحقل لتجاوز القيمة الافتراضية للنظام أو القيمة التي تم تكوينها باستخدام أمر واجهة سطر الأوامر (CLI) الخاص ببرنامج حماية البوابة لنقطة النهاية ttl <time_value>. بمجرد أن تنتهي تلك الفترة الزمنية بدون الاستماع من نقطة النهاية، يمر بوب المؤقت التالي بعملية التنظيف لتلك النقطة النهائية. أسوأ حالة هي مدة البقاء (TTL) التي تم إرسالها بواسطة نقطة النهاية بالإضافة إلى خمس دقائق (إذا كان برنامج Cisco Gatekeeper تحت حمل كبير لوحدة المعالجة المركزية (CPU) بشكل ثابت). أما سيناريو أسوأ الاحتمالات فهو مهلة مدة البقاء (TTL) بالإضافة إلى دقيقة واحدة.

- عندما لا تتضمن نقطة النهاية حقل timeToLive في رسالة RRQ، فإن برنامج حماية البوابة من Cisco يعامل نقطة النهاية كما لو أنها لا تدعم TTL. في هذه الحالة، بمجرد أن يتوقف برنامج حماية البوابة عن إستقبال RRQs من نقطة النهاية هذه، فإنه يقوم بمهلة TTL (إما الإعداد الافتراضي من 1800 ثانية، أو القيمة المحددة في الأمر endpoint TTL). ثم يرسل ثلاثة طلبات معلومات (IRQs) مع فواصل زمنية من أي مكان من دقيقة واحدة إلى خمس دقائق لكل واحد (استنادا إلى حمل وحدة المعالجة المركزية (CPU) الخاص ببرنامج حماية البوابة). بعد أن يرسل ثلاثة IRQs، ولا يتلقى أي إستجابة، ال cisco Gatekeeper يزيل النهاية أخيرا.

- إذا كانت نقطة النهاية في مكالمة نشطة، فلا يتم إقتطاعها حتى يتم إنهاء الاستدعاء.

- تتوقع Cisco Gatekeeper الاستماع من نقطة (نقاط) النهاية المعنية في مكالمة باستخدام رسالة إستجابة المعلومات (IRR). إذا لم يستلم Cisco Gatekeeper رسائل IRR دورية تحتوي على مراجع إلى "GUID" لاستدعاء، ينتظر Gatekeeper لمدة أربع دقائق، ثم يرسل IRQ إلى نقطة (نقاط) النهاية التي يكون فيها الاستدعاء. إذا، بعد ثماني دقائق أخرى، لم يسمع برنامج "حماية البوابة من Cisco" أي شيء بعد حول هذه المكالمة، يتم مسح المكالمة ويرسل برنامج "حماية البوابة" طلبات إلغاء الاتصال (DRQs) إلى نقاط النهاية. إجمالي 12 دقيقة تقريبا قبل تنظيف المكالمة "المتدلية" (وتحرير عرض النطاق الترددي). مؤقت الاستدعاء هذا غير قابل للتكوين.

- لا يتم تسريب نقاط النهاية التي تعود ملكيتها إلى "برنامج حماية البوابة" بديل من Cisco مباشرة (نظرا لأن برنامج حماية البوابة هذا لا "يملك" نقطة النهاية فعليا).

- نقاط النهاية الثابتة (التي تم إنشاؤها باستخدام أمر التكوين) الاسم المستعار الثابت xxxxx) غير قديمة.

تصحيح أخطاء Cisco Gatekeeper

هذه بعض من أوامر العرض وتصحيح الأخطاء التي يمكنك إستخدامها للتحقق من كيفية عمل TTL بطرق مختلفة:

- إظهار نقاط نهاية برنامج حماية البوابة

- debug ras

- debug h225 asn1

يناقش هذان القسمان حالتين حيث يقوم Cisco Gatekeeper بتعيين نقاط النهاية باستخدام قيم TTL مختلفة.

القضية 1

هذا الإخراج من أوامر debug ras وdebug h225 asn1 ويتم أخذه من Cisco Gatekeeper. في تصحيح الأخطاء، تحتوي البوابة على قيمة TTL تبلغ 60 ثانية. تؤكد Cisco Gatekeeper هذا وتقبله في رسالة تأكيد التسجيل (RCF) الخاصة بها، بغض النظر عن قيمة TTL لنقطة النهاية الافتراضية أو المكونة لها. وذلك لأن نقطة النهاية تتضمن قيمة TTL.

Mar  2 23:52:50.797: RAS INCOMING ENCODE BUFFER::= 0E 400FD206 0008914A

00030000 0100AC10 0D2AE26A 00040067 006B0062 0

02D0032 00B50000 12128F00 02003B01 80211E00 36003100 36004600 32004400

43004300 30003000 30003000 30003000 30003101 00

0180

Mar  2 23:52:50.797:

Mar  2 23:52:50.797: RAS INCOMING PDU ::=

value RasMessage ::= registrationRequest :

{

requestSeqNum 4051

protocolIdentifier { 0 0 8 2250 0 3 }

discoveryComplete FALSE

callSignalAddress

{

}

rasAddress

{

ipAddress :

{

ip 'AC100D2A'H

port 57962

}

}

terminalType

{

mc FALSE

undefinedNode FALSE

}

gatekeeperIdentifier {"gkb-2"}

endpointVendor

{

vendor

{

t35CountryCode 181

t35Extension 0

manufacturerCode 18

}

}

timeToLive 60

!--- TTL value.

keepAlive TRUE

endpointIdentifier {"616F2DCC00000001"}

willSupplyUUIEs FALSE

maintainConnection TRUE

}

Mar  2 23:52:50.805: RRQ (seq# 4051) rcvd

Mar  2 23:52:50.805: RAS OUTGOING PDU ::=

value RasMessage ::= registrationConfirm :

{

requestSeqNum 4051

protocolIdentifier { 0 0 8 2250 0 3 }

callSignalAddress

{

}

gatekeeperIdentifier {"gkb-2"}

endpointIdentifier {"616F2DCC00000001"}

alternateGatekeeper

{

{

rasAddress ipAddress :

{

ip 'AC100D29'H

port 1719

}

gatekeeperIdentifier {"gkb-1"}

needToRegister TRUE

priority 0

}

}

timeToLive 60

willRespondToIRR FALSE

maintainConnection TRUE

}

Mar  2 23:52:50.813: RAS OUTGOING ENCODE BUFFER::= 12 400FD206 0008914A

00030008 0067006B 0062002D 00321E00 36003100 3

6004600 32004400 43004300 30003000 30003000 30003000 3000310F 8A140140

AC100D29 06B70800 67006B00 62002D00 31800200 3B

010001 80

Mar 2 23:52:50.813:

Mar 2 23:52:50.817: IPSOCK_RAS_sendto: msg length 86 from

172.16.13.16:1719 to 172.16.13.42: 57962

Mar 2 23:52:50.817: RASLib::RASSendRCF: RCF (seq# 4051) sent to 172.16.13.42

القضية 2

هذا مثال آخر حيث تم إعلام نقطة نهاية لم ترسل قيمة TTL في رسالة RRQ الخاصة بها لإرسال RQ خفيف وزن قبل 120 ثانية، وهي القيمة التي تم تكوينها على برنامج حماية البوابة. يمكنك أن ترى في هذا الإخراج كيف أن Cisco Gatekeeper لا يحذف نقطة النهاية حتى رسائل IRQ الثلاث التي لم يتم الرد عليها، حتى وإن تم تلقي رسالة طلب إلغاء التسجيل (URQ). الوقت بين IRQ يتراوح بين دقيقة واحدة وخمس دقائق.

gka-1#show logging

Syslog logging: enabled (0 messages dropped, 0 messages rate-limited, 0 flushes, 0 overruns)

Console logging: disabled

Monitor logging: level debugging, 1076 messages logged

Buffer logging: level debugging, 4257 messages logged

Logging Exception size (4096 bytes)

Trap logging: level informational, 60 message lines logged

Log Buffer (9999999 bytes):

Mar 14 06:28:31.771: RAS INCOMING ENCODE BUFFER::= 0C 80000006 0008914A

00020001 00AB4555 BF06B801 00AB4555 BF05C502 00014007 006B0065 00740070

00610074 0065006C 60B50053 4C164D69 63726F73 6F6674AE 204E6574 4D656574

696E67AE 0003332E 3000

Mar 14 06:28:31.783:

Mar 14 06:28:31.787: RAS INCOMING PDU ::=

value RasMessage ::= registrationRequest :

{

requestSeqNum 1

protocolIdentifier { 0 0 8 2250 0 2 }

discoveryComplete FALSE

callSignalAddress

{

ipAddress :

{

ip 'AB4555BF'H

port 1720

}

}

rasAddress

{

ipAddress :

{

ip 'AB4555BF'H

port 1477

}

}

terminalType

{

terminal

{

}

mc FALSE

undefinedNode FALSE

}

terminalAlias

{

h323-ID : {"ketpatel"}

}

endpointVendor

{

vendor

{

t35CountryCode 181

t35Extension 0

manufacturerCode 21324

}

productId '4D6963726F736F6674AE204E65744D656574696E...'H

versionId '332E3000'H

}

}

Mar 14 06:28:31.811: RAS OUTGOING PDU ::=

value RasMessage ::= registrationConfirm :

{

requestSeqNum 1

protocolIdentifier { 0 0 8 2250 0 3 }

callSignalAddress

{

}

terminalAlias

{

h323-ID : {"ketpatel"}

}

gatekeeperIdentifier {"gka-1"}

endpointIdentifier {"81F6A89800000001"}

alternateGatekeeper

{

}

timeToLive 120

willRespondToIRR FALSE

maintainConnection FALSE

}

Mar 14 06:28:31.823: RAS OUTGOING ENCODE BUFFER::= 12 C0000006 0008914A

00030001 4007006B 00650074 00700061 00740065 006C0800 67006B00 61002D00

311E0038 00310046 00360041 00380039 00380030 00300030 00300030 00300030

00310F8A 01000200 77010001 00

gka-1#show gatekeeper endpoints

GATEKEEPER ENDPOINT REGISTRATION

================================

CallSignalAddr  Port  RASSignalAddr   Port  Zone Name         Type    Flags

--------------- ----- --------------- ----- ---------         ----    -----

171.69.85.191   1720  171.69.85.191   1477  gka-1             TERM

H323-ID: ketpatel

Total number of active registrations = 1

Mar 14 06:28:31.835:

Mar 14 06:28:31.835: RAS OUTGOING PDU ::=

value RasMessage ::= infoRequest :

{

requestSeqNum 70

callReferenceValue 0

callIdentifier

{

guid '00000000000000000000000000000000'H

}

}

Mar 14 06:28:31.839: RAS OUTGOING ENCODE BUFFER::= 56 00004500 000B0011

00000000 00000000 00000000 00000000 00

Mar 14 06:28:31.843:

Mar 14 06:28:31.847: RAS INCOMING ENCODE BUFFER::= 58 80004502 03C00038

00310046 00360041 00380039 00380030 00300030 00300030 00300030 003100AB

4555BF05 C50100AB 4555BF06 B8024007 006B0065 00740070 00610074 0065006C

4007006B 00650074 00700061 00740065 006C

Mar 14 06:28:31.859:

Mar 14 06:28:31.859: RAS INCOMING PDU ::=

value RasMessage ::= infoRequestResponse :

{

requestSeqNum 70

endpointType

{

terminal

{

}

mc FALSE

undefinedNode FALSE

}

endpointIdentifier {"81F6A89800000001"}

rasAddress ipAddress :

{

ip 'AB4555BF'H

port 1477

}

callSignalAddress

{

ipAddress :

{

ip 'AB4555BF'H

port 1720

}

}

endpointAlias

{

h323-ID : {"ketpatel"},

h323-ID : {"ketpatel"}

}

}

Mar 14 06:30:42.208: RAS OUTGOING PDU ::=

value RasMessage ::= infoRequest :

{

requestSeqNum 71

callReferenceValue 0

callIdentifier

{

guid '00000000000000000000000000000000'H

}

}

Mar 14 06:30:42.212: RAS OUTGOING ENCODE BUFFER::= 56 00004600 000B0011

00000000 00000000 00000000 00000000 00

Mar 14 06:30:42.216:

Mar 14 06:30:42.216: RAS INCOMING ENCODE BUFFER::= 58 80004602 03C00038

00310046 00360041 00380039 00380030 00300030 00300030 00300030 003100AB

4555BF05 C50100AB 4555BF06 B8024007 006B0065 00740070 00610074 0065006C

4007006B 00650074 00700061 00740065 006C

Mar 14 06:30:42.228:

Mar 14 06:30:42.232: RAS INCOMING PDU ::=

value RasMessage ::= infoRequestResponse :

{

requestSeqNum 71

endpointType

{

terminal

{

}

mc FALSE

undefinedNode FALSE

}

endpointIdentifier {"81F6A89800000001"}

rasAddress ipAddress :

{

ip 'AB4555BF'H

port 1477

}

callSignalAddress

{

ipAddress :

{

ip 'AB4555BF'H

port 1720

}

}

endpointAlias

{

h323-ID : {"ketpatel"},

h323-ID : {"ketpatel"}

}

}

Mar 14 06:32:05.938: RAS INCOMING ENCODE BUFFER::= 19 40000101 00AB4555

BF06B802 4007006B 00650074 00700061 00740065 006C4007 006B0065 00740070

00610074 0065006C 1E003800 31004600 36004100 38003900 38003000 30003000

30003000 30003000 31

Mar 14 06:32:05.950:

Mar 14 06:32:05.950: RAS INCOMING PDU ::=

value RasMessage ::= unregistrationRequest :

{

requestSeqNum 2

callSignalAddress

{

ipAddress :

{

ip 'AB4555BF'H

port 1720

}

}

endpointAlias

{

h323-ID : {"ketpatel"},

h323-ID : {"ketpatel"}

}

endpointIdentifier {"81F6A89800000001"}

}

Mar 14 06:32:05.962: RAS OUTGOING PDU ::=

value RasMessage ::= unregistrationConfirm :

{

requestSeqNum 2

}

Mar 14 06:32:05.962: RAS OUTGOING ENCODE BUFFER::= 1C 0001

Mar 14 06:32:05.966:

gka-1#show gatekeeper endpoints

GATEKEEPER ENDPOINT REGISTRATION

================================

CallSignalAddr  Port  RASSignalAddr   Port  Zone Name         Type    Flags

--------------- ----- --------------- ----- ---------         ----    -----

171.69.85.191   1720  171.69.85.191   1477  gka-1             TERM

Total number of active registrations = 1

Mar 14 06:33:42.223: RAS OUTGOING PDU ::=

value RasMessage ::= infoRequest :

{

requestSeqNum 72

callReferenceValue 0

callIdentifier

{

guid '00000000000000000000000000000000'H

}

}

Mar 14 06:33:42.227: RAS OUTGOING ENCODE BUFFER::= 56 00004700 000B0011

00000000 00000000 00000000 00000000 00

Mar 14 06:33:42.231:

Mar 14 06:34:42.234: RAS OUTGOING PDU ::=

value RasMessage ::= infoRequest :

{

requestSeqNum 73

callReferenceValue 0

callIdentifier

{

guid '00000000000000000000000000000000'H

}

}

Mar 14 06:34:42.238: RAS OUTGOING ENCODE BUFFER::= 56 00004800 000B0011

00000000 00000000 00000000 00000000 00

Mar 14 06:34:42.242:

Mar 14 06:35:42.244: RAS OUTGOING PDU ::=

value RasMessage ::= infoRequest :

{

requestSeqNum 74

callReferenceValue 0

callIdentifier

{

guid '00000000000000000000000000000000'H

}

}

Mar 14 06:35:42.248: RAS OUTGOING ENCODE BUFFER::= 56 00004900 000B0011

00000000 00000000 00000000 00000000 00

Mar 14 06:35:42.252:

gka-1#

gka-1#show gatekeeper endpoints

GATEKEEPER ENDPOINT REGISTRATION

================================

CallSignalAddr  Port  RASSignalAddr   Port  Zone Name         Type    Flags

--------------- ----- --------------- ----- ---------         ----    -----

Total number of active registrations = 0

معلومات ذات صلة

- برنامج حماية البوابة عالي الأداء من Cisco

- دعم H.323 الإصدار 2

- أستكشاف أخطاء تسجيل برنامج حماية البوابة وإصلاحها

- دعم تقنية الصوت

- دعم منتجات الاتصالات الصوتية والاتصالات الموحّدة

- استكشاف أخطاء خدمة IP الهاتفية من Cisco وإصلاحها

- الدعم الفني - Cisco Systems