D-Modem — ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄Π΅ΠΌ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ²Π΅Ρ€Ρ… VoIP

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Ρ‹ исходныС тСксты ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° D-Modem, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄Π΅ΠΌ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ²Π΅Ρ€Ρ… VoIP-сСтСй Π½Π° Π±Π°Π·Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° SIP. D-Modem Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠ°Π½Π°Π» связи ΠΏΠΎΠ²Π΅Ρ€Ρ… VoIP ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ dialup-ΠΌΠΎΠ΄Π΅ΠΌΡ‹ позволяли ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ²Π΅Ρ€Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Ρ‹Ρ… сСтСй. Π’ качСствС областСй примСнСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ dialup-сСтям Π±Π΅Π· использования Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΠΎΠΉ сСти, ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ скрытых ΠΊΠ°Π½Π°Π»ΠΎΠ² связи ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ тСстирования бСзопасности систСм, доступных Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· dialup. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° написан Π½Π° языкС Π‘ΠΈ ΠΈ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° SIP Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ PJSIP, Π° для обСспСчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠΎΠ΄Π΅ΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° slmodem, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ поставляСмого для софт-ΠΌΠΎΠ΄Π΅ΠΌΠΎΠ² Smart Link. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠΎΠ΄Π΅ΠΌΠΎΠ², Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигнала ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ DSP, Π° модуляция производится ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ, Π² софт-ΠΌΠΎΠ΄Π΅ΠΌΠ°Ρ… присутствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ DSP, Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Π½Π° сторонС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ D-Modem ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄Π΅ΠΌ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ DSP Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡ‹Π΅ Π² софт-ΠΌΠΎΠ΄Π΅ΠΌΠ°Ρ… Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ Π½Π° SIP-стСк ΠΈ вмСсто использования DSP для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π·Π²ΡƒΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ Π»ΠΈΠ½ΠΈΠΈ связи Π² D-Modem Π·Π²ΡƒΠΊ пСрСдаётся ΠΏΠΎΠ²Π΅Ρ€Ρ… ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ RTP ΠΈΠ»ΠΈ SRTP, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² процСссС голосовых Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² VoIP.

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигналов ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ AT-ΠΊΠΎΠΌΠ°Π½Π΄, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² V.32bis (14.4kbps) ΠΈ V.34 (33.6kbps), заимствованы ΠΈΠ· Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° ядра slmodemd, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ ΠΈ ΡƒΡ€Π΅Π·Π°Π½ с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ спСцифики ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° slmodemd Π·Π°ΠΊΡ€Ρ‹Ρ‚Π°, исходный ΠΊΠΎΠ΄ Π½Π΅ поставляСтся, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ BLOB dsplib.o; ΠŸΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹ΠΉ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Π°Π½ для обособлСнного запуска Π² Ρ„ΠΎΡ€ΠΌΠ΅ прилоТСния, Π° Π½Π΅ Π² Π²ΠΈΠ΄Π΅ модуля ядра. Для взаимодСйствия с внСшними прилоТСниями Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· сСтСвыС сокСты. Для управлСния slmodemd ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π° надстройка d-modem, которая прСдоставляСт ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ интСрфСйс ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ срСдства управлСния Π·Π²ΡƒΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ ΠΈ голосовыми Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈ Π½Π° Π±Π°Π·Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° SIP.

Π’ процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ создаётся устройство /dev/ttySL*, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ΠΌΠΎΠ΄Π΅ΠΌΠΎΠΌ, ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ AT-ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ осущСствляСтся Ρ€Π°Π±ΠΎΡ‚Π° с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΌΠΎΠ΄Π΅ΠΌΠΎΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ pppd для создания IP-ΠΊΠ°Π½Π°Π»Π°). ΠŸΡ€ΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ ΡƒΡ‡Ρ‘Ρ‚Π½ΠΎΠΉ записи SIP осущСствляСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния SIP_LOGIN. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π² Ρ‚ΠΎΠΌ числС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ dialup-сСтям, Π² условиях, ΠΊΠΎΠ³Π΄Π° отсутствуСт классичСский ΠΌΠΎΠ΄Π΅ΠΌ (SIP-Π²Ρ‹Π·ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΡƒΡŽ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΡƒΡŽ ΡΠ΅Ρ‚ΡŒ).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru