چکـیده: تلفنهای اینترنتی به دلیل ارزان بودن، امکان استفادۀ بهینه از پهنای باند، پیادهسازی راحتترِ سرویسهای جدید و ….

امـروزه در سراسر دنیا مورد توجه قرار گرفتهاند. برای پیادهسازی تلفن اینترنتی سیستم را به دو بخش سیگنالینگ و

ارسـال رسـانه مـیتوان تقسیمبندی کرد. در بخش سیگنالینگ یکی از پروتکلهای مطرح، پروتکل SIP میباشد. در ایـن مقالـه نحـوۀ پـیادهسازی تلفن اینترنتی مبتنی بر این پروتکل توضیح داده شده است. قسمتهای پیادهسازی شده عبارتـند از: ارسـال ویژگـیهای صـوت از طـریقSDP2، مراحل کلی ثبت مکالمه، ارسال صوت برای چند مکالمه از طـریق پروتکل RTP3، تائید هویت Gatewayها با سرور، ارسال فکس و فایل، ارسال صوت از طریق بلندگو و خط

E1، ارسـال اطلاعات ISUP4 در بدنهی پیغام SIP (بدون تبدیل)، تبدیل پیغامهایISUP به SIP ، پیادهسازی Proxy Server، پیادهسازی بخش محاسبه هزینه و فشردهسازهای صوت

کلمات کلیدی: تلفن اینترنتی ، پروتکل SIP، ISUP، RTP، SDP

-۱ مقدمه

حجـم فزآیـنده ترافـیک داده باعـث شـده اسـت که برای ارسال آن شبکه بسیار توانمندی طراحی شود. این در حالی است که رشد ترافـیک صـوتی یکنواخـت است و هزینه آن، خصوصاً در ارتباطات راه دور بسیار زیاد است. به دلیل آنکه پهنای باند اضافی ارسال صوت از طریق شبکه داده بسیار کم است، متصدیان شبکه و کاربران آن، امروزه علاقهمند بکارگیری تلفنهای اینترنتی میباشند.
ارزان بـودن، بکارگـیری سـادۀ شـبکه داده بـرای ارسال صوت، امکان مالتی پلکس کردن راحت، استفادۀ بهینه از پهنای باند، توانایی ارسـال بـا نـرخ بیـتهـای مخـتلف، امکـان انـتخابِ کیفیـت مکالمـه و در نتـیجه تعیین میزان هزینه از طرف کاربر و اضافه نمودن

سرویسـهای جدید از مزایای این تکنولوژی میباشند. با این وجود، مشکلاتی مانند گم شدن، تاخیر و نامرتب شدن بستههای صوت

بر روی کیفیت مکالمات این تلفنها تاثیر بسیار زیادی دارد.

یکـی از پـروتکلهـای سیگنالینگ در این تلفنها، پروتکل SIP میباشد که توسط کمیته IETF5 در RFC3261 توصیف شده است.

سازگاری با ساختار اینترنت و سادگی پیادهسازی از جمله دلایل عمدۀ محبوبیت این پروتکل میباشند.

۱ Session Initiation Protocol 2 Session Description Protocol 3 Real Time Protocol 4 ISDN User Part 5 Internet Engineering Task Force

در بخـش دوم این مقاله ساختار کلی تلفنهای اینترنتی توضیح داده میشود. بخش سوم شامل معرفی پروتکل SIP و بررسی اجزای

اصـلی آن مـیباشـد. بخـش چهـارم بـه بررسـی روش ارسـال صوت و پارامترهای کنترلی که در پیادهسازی آن مد نظر بوده است،

میپردازد. در بخش پنجم نحوۀ پیادهسازی و در انتها نتیجهگیری کلی پیادهسازی بیان شده است.

-۲ ساختار کلی تلفن اینترنتی

در شـکل((۱ لایـههای پیادهسازی تلفن اینترنتی مطابق ساختار لایهای TCP/IP نمایش داده شده است. مطابق این شکل سیستم به سه بخـش سـیگنالینگ، کیفیـت مکالمـه و ارسال رسانه تقسیمبندی میشود. در بخش سیگنالینگ عملیات ایجاد، تغییر و خاتمه دادن یک

مکالمـه انجـام میگیرد. در بخش ارسال رسانه، صدا پس از فشردهسازی، توسط پروتکل RTP ارسال میشود. پروتکل RTCP1 نیز با

جمـعآوری اطلاعاتـی مانـند تعداد بستههای فرستاده شده و تعداد بستههای گم شده، این امکان را برای بخش کنترل سیستم به وجود

میآورد که به کمک تحلیل این اطلاعات و تغییر پارامترهای ارسال، کیفیت مکالمات را در حد قابل قبول تضمین نماید.

Media Quality of Service Signaling
Audio Reservation Measurement SDP
RTCP RSVP RTSP
SIP
RTP

UDP TCP
IPv4 , IPv6
PPP AAL5 AAL3/4 PPP

V.34 Ethernet ATM Sonet

شکل ۱ :مدل مرجع TCP/IP در پیادهسازی تلفن اینترنتی

شـکل((۲ قسـمتهای مخـتلف یـک برد تلفن اینترنتی را نمایش میدهد. البته با توجه به محدودیت این مقاله نمیتوان به طور کلی در مورد تمام بخشهای آن توضیح داد. ولی در ادامه مروری بر بخشهای اصلی آن خواهیم داشت.

شکل :۲ ساختار کلی بُرد تلفن اینترنتی

حذفکنندۀ اکو((ECU2، اکوی هایبرید را در سیستم حذف میکند. کدک صحبت((VCU3 به منظور کاهش بار ترافیک شبکه، بستههای صـحبت را بـا نـرخ بیـتهای متفاوت فشردهسازی میکند. تشخیصدهنده تون((TDU4، وظیفه جداسازی و اعلان تونهای خاص از

۱ Real-Time Transport Control 2 Echo Canceller Unit 3 Voice Codec Unit 4 Tone Detection Unit

User-Agent
قبـیل تونهای فکس و یا DTMF را بر عهده دارد. این واحد هم در بخش Voice و هم در بخش سیگنالینگ قرار دارد (دقت کنید که

در عمـل یک واحد TDU بیشتر در سیستم وجود ندارد و در این شکل به منظور جداسازی کارهای بخشهای مختلف دو واحد TDU

رسم شده است). واحدهای Tx Gainو Rx Gain در مسیر رفت و یا برگشت، وظیفه بالا بردن سطح توان سیگنال را برعهده دارند. در بخش ارسال فکس، دادههای فکس از طریق پروتکل T.38 ارسال میشوند(در این مورد در بخش۴ توضیح داده خواهد شد). مانند هر

سیستم دیگر، احتیاج به یک بخش مدیریت وجود دارد. در این بخش علاوه بر مقداردهی اولیه پارامترها و راهاندازی نرم افزار، با جمع

آوری اطلاعات آماریِ مکالمات(مانند نوع کدینگ، تعداد بستههای گم شده، طول زمان مکالمه و… ) علاوه بر کنترل کیفی مکالمات و

بدست آوردن پارامترهای محاسبهی هزینه، امکان مونیتورینگ سیستم را بوجود میآورد