D-Modem - מודם תוכנה להעברת נתונים באמצעות VoIP

פורסמו טקסטי המקור של פרויקט D-Modem, המטמיע מודם תוכנה לארגון העברת נתונים על גבי רשתות VoIP המבוסס על פרוטוקול SIP. D-Modem מאפשר ליצור ערוץ תקשורת באמצעות VoIP, בדומה לאופן שבו מודמים מסורתיים בחיוג אפשרו העברת נתונים ברשתות טלפון. תחומי היישום של הפרויקט כוללים התחברות לרשתות חיוג קיימות ללא שימוש ברשת טלפון בקצה השני, ארגון ערוצי תקשורת סמויים וביצוע בדיקות אבטחה של מערכות הנגישות באמצעות חיוג בלבד. קוד הפרויקט כתוב בשפת C ומופץ תחת רישיון 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. הפרויקט יכול לשמש גם לחיבור לרשתות חיוג קיימות, בתנאים שבהם אין מודם קלאסי (ניתן להפנות שיחות SIP לרשת טלפון רגילה).

מקור: OpenNet.ru

הוספת תגובה