2022 年 1 月 28 日 (初版)
TAC SR Collection |
主な問題 |
Cisco Expressway 経由の MRA コールにおいて、以下のコールフローの際に保留を行うと、保留解除後に音声が聞こえなくなる事象が報告されています。
コールフロー: SBC -> Cisco Unified Communications Manager (Unified CM) -> Expressway-C/E -> MRA デバイス
メディアフロー: SBC -> (RTP) -> Expressway-C -> (SRTP) -> Expressway-E -> (SRTP) -> MRA デバイス
発生状況:
- 上記フローのコールを確立
- MRA デバイス側 (Jabber や IP Phone など) で保留を実施
- MRA デバイス側で保留を解除
- SBC 側の音声が聞こえなくなる
- 時間が経過すると音声が聞こえるようになる
|
原因 |
Expressway の不具合 CSCvu78961 が原因の可能性があります。CSCvu78961 は以下の条件下で該当します。
- SBC -> Expressway-C でメディアパケットは RTP として送信、Expressway-C -> MRA デバイスでは SRTP (暗号化) として送信される
- 保留解除前後で SBC から送信される RTP は SSRC は変化せず、SEQ (シーケンス番号) が 0 にリセットされる。
- SRTP の規定上 SSRC 同一状態で SEQ がリセットされた場合、MRA デバイスは SRTP の復号ができず片通話となる。
本問題に該当する場合 Expressway ではエラーログが残りませんが、例えば Jabber では以下のような SRTP 復号失敗のログが残されます。
### decryption failed WARN [0x00000000] [PME(0) ] [pme] [<GStreamer>] - rtp_srtp_decoder_1_audio_main [taasrtpdecoder.c(1031), taa_srtp_decoder_decrypt_rtp_packet()]-> SRTP decryption failed, result:10, srtpdecoder:xxxxxxxx, ssrc: ZZZZ, seq: 10
### replay detected WARN [0x00000000] [PME(0) ] [pme] [<GStreamer>] - rtp_srtp_decoder_9_audio_main [taasrtpdecoder.c(1024), taa_srtp_decoder_decrypt_rtp_packet()]-> SRTP replay detected, srtpdecoder:xxxxxxxx, ssrc: ZZZZ, seq: 2000
|
解決策 |
回避策はないため、解決のためには CSCvu78961 に記載のある修正バージョンに Expressway をアップグレードしてください。
修正後の Expressway では SBC から受信した SRTP パケットの SEQ を書き換えて MRA デバイスへ送信するため、本問題が発生しません。
|
備考
本不具合は、Bug Search Tool でも確認できます。
各製品の TAC SR Collection の一覧は、よくある質問と解決方法 (TAC SR Collection) から確認できます。