Страница 2 из 2

Re: SIP клиент > сервер > SIP клиент - приходят битые данные

Добавлено: 25 май 2011, 13:48
asdxp
Есть некий самописный клиент для мобильных телефонов. Заголовок RTP идет в следующем виде:
80 00 38 00 00 00 00 00 00 00 00 00 6A 00 1F E9 68
Далее идут данные:
42 F9 52 00 A4 3E B2 2D D9 E0 BC A0 5E C9 34 02 C5 90 72 F8 F6 69 94 B7 32 A7

На приеме другого девайса на такой же клиент - привожу полный пакет данных:
Error parsing packet, skipped:
80 80 99 7B 00 00 00 00 55 7B 46 1F 6A 00 1F E9 68 42 F9 52 00 A4 3E B2 2D D9 E0 BC A0 5E C9 34 02 C5 90 72 F8 F6 69 94 B7 32 A7 6A 00 1F E9 68 4C 2A 52 1E CA 52 0B A9 E6 F9 E7 B6 01 8F 23 32 C4 6C E8 A9 18 B2 C6 EA AF 5D 6A 00 1F E9 68 51 8F 53 53 DA 22 A6 89 D1 10 90 73 21 A9 23 32 5A 34 94 DC F0

Если пользовать другие клиенты - все работает нормально
Вопрос - почему на приеме бъет данные? Может разработчики неправильно формируют заголовок? Имею ввиду в самом SIP клиенте. Может есть какие настройки RTP на астериске - мы пользуем elastix. Хотя это видимо не суть.
Спасибо.

Re: SIP клиент > сервер > SIP клиент - приходят битые данные

Добавлено: 25 май 2011, 14:29
ded
asdxp писал(а): У меня следующая задача - я шифрую поток данных на SIP клиенте и передаю на сервер, имею ввиду то, что говорит клиент. SIP клиент, с которым состоялся коннект принимает эти данные уже в совершенно другом виде, они битые. Без шифрования - все ок. Как я понимаю, что передал - то и принял.
Два одинаковых опыта передаче RTP - от SIP клиента другому SIP клиенту а) без шифрования - ОК, и б) с шифрованием (not OK), на уровне заголовков/данных
а) Заголовок
80 00 38 00 00 00 00 00 00 00 00 00 6A 00 1F E9 68
данные:
42 F9 52 00 A4 3E B2 2D D9 E0 BC A0 5E C9 34 02 C5 90 72 F8 F6 69 94 B7 32 A7
на другом конце данные принимаются точно так же
42 F9 52 00 A4 3E B2 2D D9 E0 BC A0 5E C9 34 02 C5 90 72 F8 F6 69 94 B7 32 A7

и
б) Заголовок
80 00 38 00 00 00 00 00 00 00 00 00 6A 00 1F E9 68
зашифрованные данные:
42 F9 52 00 A4 3E B2 2D D9 E0 BC A0 5E C9 34 02 C5 90 72 F8 F6 69 94 B7 32 A7
на другом конце те же данные принимаются как
30 82 04 E5 30 82 04 4E A0 03 02 01 02 02 0A 7A 56 28 09
(я правильно уловил?)
то, возможно, дело в способе укдадки данных в RTP.

Для чистого эксперимента сделайте передачу без Астериска, от одного SIP клиент другому, напрямую.

Re: SIP клиент > сервер > SIP клиент - приходят битые данные

Добавлено: 25 май 2011, 15:12
asdxp
ок - спасибо! попробую. У меня еще есть подозрение что может программисты для SIP клиента неправильно заголовок пишут. Вот только вопрос - что именно надо в заголовке писать. Пока не нашел ответа

Re: SIP клиент > сервер > SIP клиент - приходят битые данные

Добавлено: 25 май 2011, 15:16
asdxp
напрямую все отлично идет

Re: SIP клиент > сервер > SIP клиент - приходят битые данные

Добавлено: 25 май 2011, 15:23
ded
Напрямую отлично - без Астериска?
Тогда копните теорию: что такое софтсвич 4-го класса и что такое 5-го класса.
4-го класса - транзитный прокси (не изменяет SIP заголовки, хотя может), терминирует SIP клиентов напрямую (как в в Вашем опыте сейчас.
5-го класса - замыкают оба плеча через себя, переписывая SIP заголовки. Зачем это делают? Потому что только так можно осуществить транскодинг - конвертировать на ходу один кодек в другой например.

Астериск - не прокси, он B2BUA, он 5-го класса.