المحتويات

المقدمة

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

المتطلبات

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

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

تعريف التحقق من صحة مصدر RTP واستخداماته

التحقق من مصدر RTP في موجهات صوت IOS

عامل تصفية المصدر

التكوين

السلوك والاكتشاف

عامل تصفية مصدر RTP للصوت

التكوين

السلوك والاكتشاف لكل بروتوكول

التحقق من مصدر RTP على الموجهات الصوتية IOS-XE

السلوك والاكتشاف لكل بروتوكول

المقدمة

يصف هذا المستند سلوك ميزة التحقق من صحة مصدر RTP في موجهات الصوت Cisco IOS و IOS-XE لتدفقات المكالمات والإصدارات المختلفة.

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

المتطلبات

توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:

- برنامج IOS و IOS-XE

- H.323

- بروتوكول بدء جلسة عمل (SIP)

- بروتوكول التحكم في عبارة الوسائط (MGCP)

- بروتوكول Skinny للتحكم في المكالمات (SCCP)

- بروتوكول نقل الوقت الفعلي (RTP)

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

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

- موجهات ISRG2 (ISR2900، ISR3900)

- موجهات ISRG3 (ISR4400 و ISR4300)

- موجهات ASR (ASR1001-X و ASR1002-X و ASR1004 و ASR1006 و ASR1006-X مع RP2 و ESP40)

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

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

من المهم فهم أساسيات شبكات VoIP وبروتوكولات إرسال إشارات VoIP من أجل التمكن من تحقيق الاستفادة الكاملة من هذا المستند.

تعريف التحقق من صحة مصدر RTP واستخداماته

التحقق من مصدر RTP هو ميزة مدمجة في موجهات Cisco الصوتية تتيح لها إسقاط عمليات مرور RTP الواردة غير الموثوق بها.

الهدف الرئيسي من هذه الميزة هو الحصول على مستوى أمان أعلى على الجهاز وتجنب مشاكل CrossTalk على شبكات VoIP أيضا.

هناك معايير مختلفة لهذه الميزة في موجهات صوت IOS وخيار واحد في موجهات IOS-XE الصوتية.

في IOS و IOS-XE، تجعل هذه الميزة الموجهات الصوتية تسقط حركة مرور RTP الواردة من عناوين IP أو المنافذ غير المعروفة، بمعنى آخر يتم إسقاط الحزم المستلمة من عنوان IP أو المنفذ الذي لم يتم التفاوض عليه من خلال الإشارات، بواسطة الموجه الصوتي.

تختلف طريقة عمل هذه الميزة في IOS و IOS-XE قليلا بسبب بنية الموجهات وعندما تم تقديمها في الرمز؛ وتشرح الأقسام التالية هذه السيناريوهات.

التحقق من مصدر RTP في موجهات صوت IOS

يحتوي IOS على معيارين مختلفين لهذه الميزة.

- عامل تصفية المصدر الذي تم تقديمه في الإصدار 12.4(6)T

- عامل تصفية مصدر RTP للصوت الذي تم تقديمه في الإصدارات 15.5(3)M9 و 15.6(3)M6 والإصدارات الأخيرة

تحذير:كن على دراية بأن السيناريوهات التي تتم تغطيتها في الأقسام التالية هي مع برنامج Cisco Unified Communications Manager (CUCM) Music On Hold (MoH)، ولكن هناك حالات أخرى حيث يؤدي السلوك نفسه إلى تشغيل الميزة لإسقاط بروتوكول RTP طالما تم تلبية المتطلبات.

عامل تصفية المصدر

تتوفر هذه الميزة فقط لتدفقات مكالمات SIP.

عند تكوينها، إذا لم تتفاوض الإشارات المستخدمة في تدفق المكالمات على عنوان IP والمنفذ الذي يأتي منه RTP، فإن الموجه الصوتي عندئذ يتجاهل هذه الحزم.

يتحقق التحقق من صحة المصدر من عنوان IP للمصدر ثم مصدر ميناء.

التكوين

voice service voip

sip

source filter

السلوك والاكتشاف

قد يكون أحد الأمثلة الجيدة هو عندما يضع CUCM مكالمة قيد الانتظار ويعلن CUCM بشكل افتراضي عن المنفذ 4000 من خلال الإشارات ولكن يقوم في الواقع بدفق RTP من منفذ مؤقت (32768-61000) نظرا لأن دفق معلمة الخدمة مزدوج الإتجاه الذي تم تمكينه ضمن معلمات CloudWide يتم تعطيله بشكل افتراضي.

تظهر رسائل debug ccsip على الموجه الصوتي رسالة SIP ACK مستلمة مع بروتوكول وصف الجلسة (SDP) الذي يخبر الموجه بأن RTP يأتي من CUCM-IP-Address والمنفذ 4000.

//-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:

Received:

ACK sip:6002@Router-IP-Address:5060 SIP/2.0

Via: SIP/2.0/UDP CUCM-IP-Address:5060;branch=z9hG4bK4a424fed85

From: <sip:65002@CUCM-IP-Address>;tag=4091~842780d9-7186-4740-ada2-23e5d1b91316-46404063

To: <sip:6002@Router-IP-Address>;tag=2FF652-51D

Date: Thu, 18 Apr 2019 19:59:50 GMT

Call-ID: 3EDDD9E4-614B11E9-800D9C4B-C5465DB2@Router-IP-Address

User-Agent: Cisco-CUCM12.0

Max-Forwards: 70

CSeq: 102 ACK

Allow-Events: presence

Session-ID: 4978aa3900105000a000006cbcbcfda2;remote=836b14b48c77bfe681c0780c54ab4091

Content-Type: application/sdp

Content-Length: 191

v=0

o=CiscoSystemsCCM-SIP 4091 3 IN IP4 CUCM-IP-Address

s=SIP Call

c=IN IP4 CUCM-IP-Address (MoH Server)

t=0 0

m=audio 4000 RTP/AVP 0

a=X-cisco-media:umoh

a=ptime:20

a=rtpmap:0 PCMU/8000

a=sendonly

لا يعرض show call voice brief زيادات RX على الساق حيث من المتوقع أن يأتي RTP من CUCM-IP-Address والمنفذ 4000. يتم تلقي RTP من منفذ مختلف ويتم إسقاطه بواسطة الموجه الصوتي.

11EC : 3 3143250ms.1 (14:59:02.516 CDT Thu Apr 18 2019) +1960 pid:0 Answer 6002 active

dur 00:47:29 tx:2330/391440 rx:64875/10380000 dscp:0 media:0 audio tos:0x0 video tos:0x0

Tele 0/0/0:23 (3) [0/0/0.23] tx:2803960/1263780/0ms g711ulaw noise:-65 acom:3  i/0:-60/-64 dBm

11EC : 4 3143250ms.2 (14:59:02.516 CDT Thu Apr 18 2019) +1950 pid:1 Originate 65002 connected

dur 00:47:29 tx:1686/269760 rx:2330/372800 dscp:0 media:0 audio tos:0xB8 video tos:0x0

IP CUCM-IP-Address:4000 SRTP: off rtt:1ms pl:46150/0ms lost:0/0/0 delay:55/55/65ms g711ulaw TextRelay: off Transcoded: No ICE: Off

media inactive detected:n media contrl rcvd:n/a timestamp:n/a

long duration call detected:n long duration call duration:n/a timestamp:n/a

LostPacketRate:0.00 OutOfOrderRate:0.00

يعرض عرض إتصالات VoIP RTP RMTrtp ك 4000 وRemoteIP as CUCM-IP-Address.

يتوقع الموجه أن يأتي RTP من ذلك المصدر نفسه.

show voip rtp connections

VoIP RTP Port Usage Information:

Max Ports Available: 8091, Ports Reserved: 101, Ports in Use: 1

Min   Max   Ports     Ports     Ports

Media-Address Range                     Port  Port  Available Reserved  In-use

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

Global Media Pool                       16384 32766 8091      101       1

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

VoIP RTP active connections :

No. CallId     dstCallId  LocalRTP RmtRTP   LocalIP                                     RemoteIP                                  MPSS

1     4          3          16386    4000   Router-IP-Address                           CUCM-IP-Address                             NO

Found 1 active RTP connections

مع التقاط sniffer، هو يستطيع كنت دققت حيث ال RTP بالفعل يأتي من، في هذا مثال هو يأتي من ميناء 24588 بدلا من 4000 لذلك المصدر يفشل التحقق من صحة وموجه الصوت يسقط الربط.

عامل تصفية مصدر RTP للصوت

تم إدخال هذه الميزة في الإصدارات 15.5(3)M9 و 15.6(3)M6 IOS.

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

1. يعمل عامل تصفية مصدر RTP للصوت ل SIP و H.323 و MGCP و SCCP

2. أضفت السمة أيضا خطأ رسالة في Debug VoIP RTP خطأ in order to بسهولة اكتشفت عندما ال RTP أسقط بسبب مصدر تحقق إخفاق

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

عندما أعجزت السمة ب ما من أمام الأمر، هو بعد ذلك يبدي في التشكيل.

التكوين

Configuration Terminal

voice rtp source-filter

السلوك والاكتشاف لكل بروتوكول

بالنسبة إلى H.323:

يظهر Debug H225 ASN1 على الموجهات الصوتية OpenLogicalChannelAck الذي يتم تلقيه والذي يقوم بإعلام الموجه حول عنوان الوسائط البعيدة 0.0.0:0.

H245 MSC OUTGOING PDU ::=

value MultimediaSystemControlMessage ::= response : openLogicalChannelAck :

{

forwardLogicalChannelNumber 1

forwardMultiplexAckParameters h2250LogicalChannelAckParameters :

{

mediaChannel unicastAddress : iPAddress :

{

network 'Router-IP-Address'H

tsapIdentifier 16404 (Router's UDP Port for the RTP)

}

mediaControlChannel unicastAddress : iPAddress :

{

network 'Router-IP-Address'H

tsapIdentifier 16405 (Router's UDP Port for the RTCP)

}

flowControlToZero FALSE

}

}

Received openLogicalChannelAck has network and tsapIdentifier for the mediaChannel in zeros which means IP Address 0.0.0.0 and port 0.

H245 MSC INCOMING PDU ::=

value MultimediaSystemControlMessage ::= response : openLogicalChannelAck :

{

forwardLogicalChannelNumber 2

forwardMultiplexAckParameters h2250LogicalChannelAckParameters :

{

sessionID 1

mediaChannel unicastAddress : iPAddress :

{

network '00000000'H

tsapIdentifier 0

}

mediaControlChannel unicastAddress : iPAddress :

{

network '00000000'H

tsapIdentifier 1

}

}

}

لا يعرض عرض الطلب الصوتي النشط زيادات RX ويتم تعيين عنوان IP ومنفذ الوصول عن بعد على 0.0.0.0.

11F5 : 21 18903090ms.1 (16:00:48.794 CDT Fri Apr 19 2019) +1070 pid:2 Answer 6002 active

dur 00:00:43 tx:376/63168 rx:899/137074 dscp:0 media:0 audio tos:0x0 video tos:0x0

Tele 0/1/0:23 (21) [0/1/0.1] tx:35340/14230/0ms g711ulaw noise:-68 acom:3  i/0:-64/-63 dBm

11F5 : 22 18903090ms.2 (16:00:48.794 CDT Fri Apr 19 2019) +1070 pid:1 Originate 36004 active

dur 00:00:43 tx:152/23047 rx:376/60160 dscp:0 media:0 audio tos:0xB8 video tos:0x0

IP 0.0.0.0:0 SRTP: off rtt:0ms pl:0/0ms lost:0/0/0 delay:0/65/65ms g711ulaw TextRelay: off Transcoded: No ICE: Off

media inactive detected:n media contrl rcvd:n/a timestamp:n/a

long duration call detected:n long duration call duration:n/a timestamp:n/a

LostPacketRate:0.00 OutOfOrderRate:0.00

LocalUUID:

RemoteUUID:

VRF:

عرض إتصالات VoIP RTP يعرض RMTrtp وRemoteIP باسم 0.0.0.0:0 لذلك يتوقع الموجه RTP من ذلك المصدر.

VoIP RTP Port Usage Information:

Max Ports Available: 8091, Ports Reserved: 101, Ports in Use: 1

Port range not configured

Min   Max   Ports     Ports     Ports

Media-Address Range                     Port  Port  Available Reserved  In-use

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

Global Media Pool                       16384 32766 8091      101       1

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

VoIP RTP active connections :

No. CallId     dstCallId  LocalRTP RmtRTP   LocalIP                                     RemoteIP                                  MPSS  VRF

1     22         21         16404    0      Router-IP-Address                           0.0.0.0                                   NO    NA

Found 1 active RTP connections

مع sniffer التقاط، هو يستطيع كنت دققت حيث ال RTP يكون إستلمت. في هذا المثال، يتم استقبالها من المنفذ 24608 وCUCM-IP-Address بدلا من المنفذ 0 وعنوان IP 0.0.0.0.

يظهر خطأ Debug VoIP RTP سبب تلك الحزم المسقطة كما هو مستلم من CUCM-IP-Address بدلا من 0.0.0.0، لذلك فإنه يفشل في التحقق من المصدر.

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

بالنسبة ل SIP:

تظهر رسائل debug ccsip على الموجه الصوتي رسالة SIP ACK مستلمة مع SDP التي ترشد الموجه إلى توقع RTP من CUCM-IP-Address والمنفذ 4000.

//-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:

Received:

ACK sip:6002@Router-IP-Address:5060 SIP/2.0

Via: SIP/2.0/UDP CUCM-IP-Address:5060;branch=z9hG4bK16712e94eda

From: <sip:65002@CUCM-IP-Address>;tag=5931~842780d9-7186-4740-ada2-23e5d1b91316-46404140

To: <sip:6002@10.201.160.54>;tag=FE677E-E12

Date: Fri, 19 Apr 2019 23:53:48 GMT

Call-ID: 32798F13-623511E9-805BC9D5-801BF5C7@Router-IP-Address

User-Agent: Cisco-CUCM12.0

Max-Forwards: 70

CSeq: 102 ACK

Allow-Events: presence

Session-ID: 5fdd1bc300105000a000006cbcbcfda2;remote=761410b40eed518a94bd5f7bbccfbe40

Content-Type: application/sdp

Content-Length: 191

v=0

o=CiscoSystemsCCM-SIP 5931 3 IN IP4 CUCM-IP-Address

s=SIP Call

c=IN IP4 CUCM-IP-Address (MoH Server)

t=0 0

m=audio 4000 RTP/AVP 0

a=X-cisco-media:umoh

a=ptime:20

a=rtpmap:0 PCMU/8000

a=sendonly

لا يعرض عرض ملخص الصوت النشط زيادات RX على الساق التي تتوقع تلقي RTP من CUCM-IP-Address:4000.

ونظرا لأن RTP يأتي بالفعل من منفذ آخر، فإنه يتم إسقاطه.

11F0 : 29 16672630ms.1 (18:53:43.109 CDT Fri Apr 19 2019) +1450 pid:0 Answer 6002 active

dur 00:00:07 tx:169/28392 rx:265/42400 dscp:0 media:0 audio tos:0x0 video tos:0x0

Tele 0/0/0:23 (29) [0/0/0.23] tx:4020/4020/0ms g711ulaw noise:-74 acom:3  i/0:-64/-64 dBm

11F0 : 30 16672630ms.2 (18:53:43.109 CDT Fri Apr 19 2019) +1450 pid:1 Originate 65002 connected

dur 00:00:07 tx:64/10240 rx:169/27040 dscp:0 media:0 audio tos:0xB8 video tos:0x0

IP CUCM-IP-Address:4000 SRTP: off rtt:0ms pl:3200/0ms lost:0/0/0 delay:0/55/65ms g711ulaw TextRelay: off Transcoded: No ICE: Off

media inactive detected:n media contrl rcvd:n/a timestamp:n/a

long duration call detected:n long duration call duration:n/a timestamp:n/a

LostPacketRate:0.00 OutOfOrderRate:0.00

LocalUUID:5fdd1bc300105000a000006cbcbcfda2

RemoteUUID:761410b40eed518a94bd5f7bbccfbe40

VRF: NA

يعرض عرض إتصالات VoIP rtp RMTrtp وRemoteIP ك CUCM-IP-Address:4000، ويتوقع الموجه أن يأتي RTP من ذلك المصدر.

show voip rtp connections

VoIP RTP Port Usage Information:

Max Ports Available: 8091, Ports Reserved: 101, Ports in Use: 1

Port range not configured

Min   Max   Ports     Ports     Ports

Media-Address Range                     Port  Port  Available Reserved  In-use

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

Global Media Pool                       16384 32766 8091      101       1

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

VoIP RTP active connections :

No. CallId     dstCallId  LocalRTP RmtRTP   LocalIP                                     RemoteIP                                  MPSS  VRF

1     30         29         16430    4000   Router-IP-Address                           CUCM-IP-Address                             NO    NA

Found 1 active RTP connections

مع التقاط sniffer، هو يستطيع كنت دققت من حيث ال RTP بالفعل، في هذا مثال هو يأتي من ميناء 24634 وCUCM-IP-Address بدلا من CUCM-IP-Address:4000.

يظهر خطأ Debug VoIP RTP سبب تلك الحزم المسقطة كما هو مستلم من المنفذ 24634 بدلا من المنفذ 4000، لذلك فإنه يفشل التحقق من المصدر.

voip_rtp_recv_fs_input:ERROR Port validation failed, dropping RTP packet.

Expected port: 4000, Received port: 24634

voip_rtp_recv_fs_input:ERROR Port validation failed, dropping RTP packet.

Expected port: 4000, Received port: 24634

voip_rtp_recv_fs_input:ERROR Port validation failed, dropping RTP packet.

Expected port: 4000, Received port: 24634

voip_rtp_recv_fs_input:ERROR Port validation failed, dropping RTP packet.

Expected port: 4000, Received port: 24634

ل MGCP:

تظهر حزم Debug MGCP عند إجراء الاستدعاء في الوسائط التي تم التفاوض عليها في البداية، ثم عند وضعها قيد الانتظار.

When the call initially connects, it negotiates the media capabilities through SDP.

MGCP Packet received from CUCM-IP-Address:2427--->

MDCX 1324 S0/SU1/DS1-1/23@3945-A.luirami2.lab MGCP 0.1

C: D000000002c4139b000000F500000008

I: 10

X: 17

L: p:20, a:PCMU, s:off, t:b8

M: sendrecv

R: D/[0-9ABCD*#]

S:

Q: process,loop

v=0

o=- 16 0 IN EPN S0/SU1/DS1-1/23@3945-A.luirami2.lab

s=Cisco SDP 0

t=0 0

m=audio 23248 RTP/AVP 0

c=IN IP4 IP-Phone-IP-Address

<---

MGCP Packet sent to CUCM-IP-Address:2427--->

200 1324 OK

<---

Then when it is placed on hold, CUCM only changes the direction of the media.

MGCP Packet received from CUCM-IP-Address:2427--->

MDCX 1325 S0/SU1/DS1-1/23@3945-A.luirami2.lab MGCP 0.1

C: D000000002c4139b000000F500000008

I: 10

X: 17

M: recvonly

R: D/[0-9ABCD*#]

Q: process,loop

<---

MGCP Packet sent to CUCM-IP-Address:2427--->

200 1325 OK

<---

لا يعرض show call voice brief زيادات RX على الساق التي تتوقع أن يأتي RTP من ip-phone-ip-address:23248.

ونظرا لأن RTP يأتي بالفعل من عنوان IP آخر، فإنه يتم إسقاطه.

11FD : 38 31140580ms.1 (19:24:46.254 CDT Fri Apr 19 2019) +0 pid:0 Originate  connecting

dur 00:00:36 tx:289/46240 rx:272/43520 dscp:0 media:0 audio tos:0xB8 video tos:0x0

IP IP-Phone-IP-Address:23248 SRTP: off rtt:1ms pl:5440/70ms lost:0/0/0 delay:0/55/65ms g711ulaw TextRelay: off Transcoded: No ICE: Off

media inactive detected:n media contrl rcvd:n/a timestamp:n/a

long duration call detected:n long duration call duration:n/a timestamp:n/a

LostPacketRate:0.00 OutOfOrderRate:0.00

LocalUUID:

RemoteUUID:

VRF:

11FD : 37 31140580ms.2 (19:24:46.252 CDT Fri Apr 19 2019) +0 pid:0 Originate  active

dur 00:00:36 tx:272/45696 rx:1832/293120 dscp:0 media:0 audio tos:0x0 video tos:0x0

Tele 0/1/1:23 (37) [0/1/1.23] tx:36630/36630/0ms g711ulaw noise:-68 acom:6  i/0:-65/-60 dBm

يعرض عرض إتصالات VoIP RTP إتصالات RMTrtp وRemoteIP ك IP-Phone-IP-Address:23248، الموجه يتوقع أن يأتي RTP من هذا المصدر.

show voip rtp connections

VoIP RTP Port Usage Information:

Max Ports Available: 8091, Ports Reserved: 101, Ports in Use: 1

Port range not configured

Min   Max   Ports     Ports     Ports

Media-Address Range                     Port  Port  Available Reserved  In-use

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

Global Media Pool                       16384 32766 8091      101       1

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

VoIP RTP active connections :

No. CallId     dstCallId  LocalRTP RmtRTP   LocalIP                                     RemoteIP                                  MPSS  VRF

1     38         37         16420  23248    Router-IP-Address                           IP-Phone-IP-Address                             NO    NA

Found 1 active RTP connections

مع التقاط sniffer، هو يستطيع كنت دققت من حيث ال RTP بالفعل، في هذا مثال هو يأتي من ميناء 24612 وCUCM-IP-Address بدلا من IP-Phone-IP-Address:23248.

يظهر خطأ Debug VoIP RTP سبب تلك الحزم المسقطة كما هو مستلم من CUCM-IP-Address بدلا من IP-Phone-IP-Address، لذلك فإنه يفشل في التحقق من المصدر.

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: IP-Phone-IP-Address, Received addr: CUCM-IP-Address

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: IP-Phone-IP-Address, Received addr: CUCM-IP-Address

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: IP-Phone-IP-Address, Received addr: CUCM-IP-Address

voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: IP-Phone-IP-Address, Received addr: CUCM-IP-Address

ل SCCP:

تظهر رسائل تصحيح أخطاء SCCP عند وضع المكالمة قيد الانتظار.

يرشد CUCM موجه الصوت أولا للانتقال إلى الوسائط غير النشطة باستخدام قناة CloseReceive وStopMediaTransmission.

SCCP:rcvd CloseReceiveChannel

CloseReceiveChannelMsg Info:

conference_id = 33554439, pass_through_party_id = 33554541, call_ref = 46404215, port_handling = 0

SCCP:rcvd StopMediaTransmission

StopMediaTransmissionMsg Info:

conference_id = 33554439, pass_through_party_id = 33554541, call_ref = 46404215, port_handling = 0

ثم يرشد CUCM الموجه الصوتي للمحول إلى revonly باستخدام قناة OpenReceiveChannel.

SCCP:rcvd OpenReceiveChannel

OpenReceiveChannelMsg Info:

conference_id = 33554439, pass_through_party_id = 33554542

msec_pkt_size = 20, compression_type = 4

qualifier_in.ecvalue = 0, g723_bitrate = 0, call_ref = 46404215

stream_pass_through_id = 16777216, rfc2833_payload_type = 0

codec_dynamic_payload = 0, codec_mode = 0

Encryption Info :: algorithm_id 0, key_len 0, salt_len 0

requestedAddrType = 0, source_ip_addr.ipAddrType = 0, source_ip_addr = CUCM-IP-Address, source_port_number = 4000,

audio_level_adjustment = 0

SCCP:send OpenReceiveChannelAck

OpenReceiveChannelAck Info:

pass_through_party_id=33554542, status=0(ok), host_ip_addr= Router-IP-Address, port=16390

عرض إتصالات SCCP يعرض الموجه وrportas 0.0.0:0؛ الموجه يتوقع أن يأتي RTP من ذلك المصدر.

show sccp connections

sess_id    conn_id      stype mode     codec   sport rport ripaddr conn_id_tx

33554439   33554542     mtp   recvonly g711u   16390 0     0.0.0.0

33554439   33554540     mtp   sendrecv g711u   16386 16384 10.201.160.54

Total number of active session(s) 1, and connection(s) 2

يظهر خطأ Debug VoIP RTP سبب تلك الحزم المسقطة كما هو مستلم من CUCM-IP-Address بدلا من 0.0.0.0، لذلك فإنه يفشل في التحقق من المصدر.

000147: Apr 24 11:49:22.499: voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

000148: Apr 24 11:49:22.519: voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

000149: Apr 24 11:49:22.539: voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

000150: Apr 24 11:49:22.559: voip_rtp_recv_fs_input:ERROR IP address validation failed, dropping packet.

Expected addr: 0.0.0.0, Received addr: CUCM-IP-Address

التحقق من مصدر RTP على الموجهات الصوتية IOS-XE

ومن أهم الأمور التي ينبغي تسليط الضوء عليها في برنامج IOS-XE.

1. إنه غير قابل للتكوين

2. هو مكنت افتراضيا

3. لا يمكن تعطيله

4. إتجاه الوسائط في إرسال إشارات VoIP هو الاستثناء الوحيد الذي يسمح ل RTP بالتدفق من مصدر غير معروف

السلوك والاكتشاف لكل بروتوكول

بالنسبة إلى H.323:

مع هذا بروتوكول، لا يعمل RTP من MoH كما أن CUCM يرسل دائما رسالة OpenLogicalChannelAck مع عنوان IP ومنفذ يثبت إلى أصفار والذي يعجز الوسائط.

H245 MSC INCOMING PDU ::=

value MultimediaSystemControlMessage ::= response : openLogicalChannelAck :

{

forwardLogicalChannelNumber 6

forwardMultiplexAckParameters h2250LogicalChannelAckParameters :

{

sessionID 1

mediaChannel unicastAddress : iPAddress :

{

network '00000000'H

tsapIdentifier 0

}

mediaControlChannel unicastAddress : iPAddress :

{

network '00000000'H

tsapIdentifier 1

يمكن التحقق من نفس الشيء باستخدام show call voice brief النشط للتحقق من كيفية توقف قيمة RX الإضافية وعنوان الوسائط البعيد هو IP 0.0.0.0:0.

11F3 : 17 8703830ms.1 (13:00:22.060 CDT Tue Apr 23 2019) +2150 pid:2 Answer 6002 active

dur 00:15:22 tx:19014/9213600 rx:1/3836010 dscp:0 media:0 audio tos:0x0 video tos:0x0

Tele 0/1/1:23 (17) [0/1/1.23] tx:158740/106870/0ms g711ulaw noise:-68 acom:22  i/0:-57/-61 dBm

11F3 : 18 8703830ms.2 (13:00:22.060 CDT Tue Apr 23 2019) +2150 pid:1 Originate 55002 active

dur 00:15:22 tx:19709/3836010 rx:46068/9213600 dscp:0 media:0 audio tos:0xB8 video tos:0x0

IP 0.0.0.0:0 SRTP: off rtt:0ms pl:0/0ms lost:0/0/0 delay:0/0/0ms g711ulaw TextRelay: off Transcoded: No ICE: Off

media inactive detected:n media contrl rcvd:n/a timestamp:n/a

long duration call detected:n long duration call duration:n/a timestamp:n/a

LostPacketRate:0.00 OutOfOrderRate:0.00

تحذير: لا يزيد RX وTX في أنظمة IOS-XE الأساسية ما لم يتم تكوين أمر Media Bulk-Stats ضمن Voice Service VoIP، ولكن كن على علم بأن هذا الأمر يمكن أن يؤثر على أداء الموجه، لذلك يوصى بتمكينه فقط عند أستكشاف الأخطاء وإصلاحها وتعطيله بعد ذلك.

لا يعرض Debug VoIP FPI Inout علامة ترجمة عنوان الشبكة (NAT) التي تم تمكينها هنا حيث تم تعطيل الوسائط باستخدام OpenLogicalChannelAck، يمكن التحقق من تعطيل الوسائط باستخدام الرسالة side:SIDE_A، rtp_type:0:.

//18/7F507F32800A/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_A, rtp_type:0:  send:0 recv:0

//18/7F507F32800A/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: destAddr == 0, rcv and send both set to FALSE

عرض جهاز النظام الأساسي QFP سمة نشطة SBC عمومي | إجمالي الحزم التي تم إسقاطها|الحزم التي تم إسقاطها: يمثل جدولا مع جميع الحزم التي تم إسقاطها حيث يتم تعطيل زيادات تدفق المدخل بينما يكون الاستدعاء قيد الانتظار.

show platform hardware qfp active feature sbc global | s Total packets dropped|Dropped packets:

Total packets dropped                       = 138512

Dropped packets:

No associated flow                          = 0

Wrong source for flow                       = 0

Ingress flow receive disabled               = 138512

Egress flow send disabled                   = 0

Not conforming to flowspec                  = 0

ل SIP

عند إستخدام بروتوكول SIP، يرسل CUCM في بروتوكول SDP CUCM-IP-Address، port 4000 وسمة الوسائط للاتجاه a=sendonly التي ترشد الموجه إلى إستقبال RTP فقط.

v=0

o=CiscoSystemsCCM-SIP 72019 3 IN IP4 CUCM-IP-Address

s=SIP Call

c=IN IP4 CUCM-IP-Address (MoH Server)

t=0 0

m=audio 4000 RTP/AVP 0

a=X-cisco-media:umoh

a=ptime:20

a=rtpmap:0 PCMU/8000

a=sendonly

يعين ال a=sendonly الوسائط إتجاه أن يسترجع لمنظور المسحاج تخديد صوتي وهذا يطلق ال nat علم وظيفة أن لا يزال يسمح ال RTP أن يمر من خلال حتى وإن كان يأتي من مصدر مختلف.

يمكن التحقق من هذا باستخدام تضمين Debug VoIP FPI.

//25/3EAF69800000/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_A, rtp_type:2:RECVONLY send:0 recv:2

//25/3EAF69800000/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: recvonly mode - setting NAT flag

إذا تم إرسال سمة مختلفة ل Media Direction إلى موجه الصوت عند حدوث ذلك، فإن وظيفة علامة NAT لن يتم تنشيطها وسيتم إسقاط الحزم لأنها تأتي من مصدر مختلف.

تظهر رسائل Debug CCSIP في هذا المثال a=sendrev.

v=0

o=CiscoSystemsCCM-SIP 72019 3 IN IP4 CUCM-IP-Address

s=SIP Call

c=IN IP4 CUCM-IP-Address (MoH Server)

t=0 0

m=audio 4000 RTP/AVP 0

a=X-cisco-media:umoh

a=ptime:20

a=rtpmap:0 PCMU/8000

a=sendrecv

تعرض Debug VoIP FPI Inout إتجاه الوسائط الذي تم تعيينه على rtp_type:3:SENDRECV ولا وظيفة علامة NAT.

//27/F56119000000/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_A, rtp_type:3:SENDRECV send:1 recv:2

بما أن هناك ما من nat علم، العرض منصة جهاز qfp نشط سمة sbc شامل | إجمالي الحزم التي تم إسقاطها|الحزم التي تم إسقاطها: يظهر زيادات في المصدر غير الصحيح لقسم التدفق.

4351-A#show platform hardware qfp active feature sbc global | s Total packets dropped|Dropped packets:

Total packets dropped                       = 33496

Dropped packets:

No associated flow                          = 0

Wrong source for flow                       = 33196

Ingress flow receive disabled               = 0

Egress flow send disabled                   = 0

Not conforming to flowspec                  = 0

ل MGCP:

عند إستخدام MGCP، يرسل CUCM بروتوكول MDCX لتغيير إتجاه الوسائط الذي تم التفاوض عليه بالفعل عندما تم توصيل المكالمة في الأصل، لذلك لا يوجد تغيير في عنوان IP أو إرسال الإشارات، ولكن بعد MDCX، يتم الآن تدفق RTP من مصدر آخر.

بما أن M: revonly أرسلت إلى المسحاج تخديد الصوت، nat علم يتم تمكين وظيفة.

MGCP Packet received from CUCM-IP-Address:2427--->

MDCX 1529 S0/SU1/DS1-1/23@4351-A.luirami2.lab MGCP 0.1

C: D000000002c4151d000000F50000000a

I: B

X: 17

M: recvonly

R: D/[0-9ABCD*#]

Q: process,loop

<---

يعرض Debug VoIP FPI Inout إتجاه الوسائط المعين إلى وظيفة rtp_type:2:REVONLY وNAT، والتي تتيح ل RTP التدفق عبر.

//30/xxxxxxxxxxxx/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_A, rtp_type:2:RECVONLY send:0 recv:2

//30/xxxxxxxxxxxx/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: recvonly mode - setting NAT flag

إذا تم إرسال سمة مختلفة ل Media Direction إلى موجه الصوت عند حدوث ذلك، فإن وظيفة علامة NAT لن يتم تنشيطها وسيتم إسقاط الحزم لأنها تأتي من مصدر مختلف.

تظهر حزم Debug MGCP في هذا المثال M: sendrecv.

MGCP Packet received from CUCM-IP-Address:2427--->

MDCX 1530 S0/SU1/DS1-1/23@4351-A.luirami2.lab MGCP 0.1

C: D000000002c4151d000000F50000000a

I: B

X: 17

M: sendrecv

R: D/[0-9ABCD*#]

Q: process,loop

<---

تعرض Debug VoIP FPI Inout إتجاه الوسائط الذي تم تعيينه على rtp_type:3:SENDRECV ولا وظيفة علامة NAT.

//29/F56119000000/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_A, rtp_type:3:SENDRECV send:1 recv:2

بما أنه لا يوجد علامة NAT، فإن العرض منصة جهاز qfp سمة نشط sbc global | إجمالي الحزم التي تم إسقاطها|الحزم التي تم إسقاطها: يظهر زيادات في المصدر غير الصحيح لقسم التدفق.

show platform hardware qfp active feature sbc global | s Total packets dropped|Dropped packets:

Total packets dropped                       = 33596

Dropped packets:

No associated flow                          = 0

Wrong source for flow                       = 33296

Ingress flow receive disabled               = 0

Egress flow send disabled                   = 0

Not conforming to flowspec                  = 0

ل SCCP:

تظهر رسائل تصحيح أخطاء SCCP عند وضع المكالمة قيد الانتظار.

يرشد CUCM موجه الصوت أولا للانتقال إلى الوسائط غير النشطة باستخدام CloseReceiveChannel وStopMediaTransmission.

SCCP:rcvd CloseReceiveChannel

CloseReceiveChannelMsg Info:

conference_id = 33554436, pass_through_party_id = 33554500, call_ref = 46405010, port_handling = 0

SCCP:rcvd StopMediaTransmission

StopMediaTransmissionMsg Info:

conference_id = 33554436, pass_through_party_id = 33554500, call_ref = 46405010, port_handling = 0

ثم يرشد CUCM الموجه الصوتي للمحول إلى إعادة التوجيه باستخدام قناة OpenReceive.

SCCP:rcvd OpenReceiveChannel

OpenReceiveChannelMsg Info:

conference_id = 33554436, pass_through_party_id = 33554501

msec_pkt_size = 20, compression_type = 4

qualifier_in.ecvalue = 0, g723_bitrate = 0, call_ref = 46405010

stream_pass_through_id = 16777216, rfc2833_payload_type = 0

codec_dynamic_payload = 0, codec_mode = 0

Encryption Info :: algorithm_id 0, key_len 0, salt_len 0

requestedAddrType = 0, source_ip_addr.ipAddrType = 0, source_ip_addr = CUCM-IP-Address, source_port_number = 4000,

audio_level_adjustment = 0

SCCP:send OpenReceiveChannelAck

OpenReceiveChannelAck Info:

pass_through_party_id=33554501, status=0(ok), host_ip_addr= Router-IP-Address, port=8028

عرض إتصالات SCCP يعرض الموجه وrportas 0.0.0:0؛ الموجه يتوقع أن يأتي RTP من ذلك المصدر.

show sccp connections

sess_id    conn_id      stype mode     codec   sport rport ripaddr conn_id_tx

33554436   33554501     mtp   recvonly g711u   8028  0     0.0.0.0

33554436   33554499     mtp   sendrecv g711u   8022  8024  Router-IP-Address

Total number of active session(s) 1, and connection(s) 2

يعرض Debug VoIP FPI Inout إتجاه الوسائط المعين إلى وظيفة rtp_type:2:REVONLY وNAT، والتي تتيح ل RTP التدفق عبر.

//18/xxxxxxxxxxxx/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_A, rtp_type:1:SENDONLY send:1 recv:0

//15/xxxxxxxxxxxx/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_B, rtp_type:3:SENDRECV send:1 recv:2

//19/xxxxxxxxxxxx/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_A, rtp_type:2:RECVONLY send:0 recv:2

//19/xxxxxxxxxxxx/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: recvonly mode - setting NAT flag

//15/xxxxxxxxxxxx/VOIPFPI:():voip_fpi_get_snd_rcv_enable_flag: side:SIDE_B, rtp_type:3:SENDRECV send:1 recv:2

تلميح: يتم إستخدام رسائل OpenReceiveChannel لإرشاد موجه الصوت لتلقي RTP ويقوم الموجه الصوتي بإخبار CUCM عبر OpenReceiveChannelAck حيث يريد إستقبال تلك الوسائط.

يتم إستخدام رسالة StartMediaTransmission لتوجيه الموجه الصوتي لإرسال RTP إلى الوجهة المحددة.

بمعنى آخر، إذا كان OpenReceiveChannel فقط يتم تبادله هي طريقة لإخبار مورد الوسائط أنه يتلقى فقط RTP (revonly) وإذا كان StartMediaTransmission فقط يتم تبادله، فإنها طريقة لإخبار مورد الوسائط أنه يرسل RTP فقط (sendonly)، ولكن إذا تم تبادل كليهما، فهذا يعادل sendrecv.

إن ثبتت الوسائط إتجاه إلى sendonly أو sendrecv وال RTP يأتي من مصدر مختلف، بعد ذلك ما من nat علم نشط وال عرض منصة جهاز qfp سمة نشط sbc شامل | إجمالي الحزم التي تم إسقاطها|الحزم التي تم إسقاطها: يعرض الحزم التي تم إسقاطها.

تلميح: إذا كانت هناك حاجة إلى السماح ب RTP المصدر من عنوان مختلف عن العنوان الذي تم التفاوض عليه من خلال الإشارات والاسترجاع فقط لا يمكن إستخدامه، يمكن إستخدام الأمر Force-on ضمن Voice Service VoIP، يمكن إستخدام Sip لإضافة نفاد يدوي. هذا سابقا لم يكن يعمل بشكل صحيح لكنه كان يثبت على الخلل CSCvo15141 . تذكر دائما أن ذلك ينجح فقط مع SIP.

تحذير: إذا تم تكوين محتوى pass-thru sdp ضمن الخدمة الصوتية، sip، فإن هذا لا يسمح لطبقة FPI بتنشيط وظيفة علامة NAT عند تلقي revonly.

تلميح: في بعض الحالات التي تكون فيها علامة NAT نشطة لإجراء مكالمة ويعمل الصوت بشكل جيد، تسقط قيمة الحزم تحت show platform hardware qfp سمة نشطة sbc global | إجمالي الحزم المسقطة|الحزم المسقطة: ما يزال من الممكن زيادتها بمعدل أقل بكثير، وهذا لأنه في بعض الحالات وتدفقات المكالمات، لا يزال من الممكن إرسال بروتوكول التحكم في الوقت الفعلي (RTCP) إلى الموجه الصوتي ومن مصدر مختلف مما قد يتسبب في هذا السلوك.