Sipp چیست ؟
Sipp یک نرم افزار Opensource جهت تست پروتکل SIP مورد استفاده قرار میگیرد، که میتواند نتایج تست را به صورت پویا نمایش دهد. (اطلاعاتی نظیر میزای مصرفی (CPU,RAM)، تست نفوذ، تست فایروال، تست تحمل بار شبکه و تعداد تماس های همزمان، نرخ تماس ها، آمار پیام ها، RDT(Round Trip Delay)))
از جمله قابلیت ها آن میتوان به ایجاد چندین تماس از طریق ارسال متدهای invite , bye و مشخص کردن Rate تعداد بسته های ارسالی در ثانیه، طراحی سناریو دلخواه توسط XML، پشتیبانی از SIP Authentication و IPV6 میباشد.
با استفاده از این ابزار میتوان آمار و اطلاعات مربوط به تست را در بازه های زمانی مشخص در فایل های CSV ذخیره کرد. یکی دیگر از امکانات این نرم افزار قابلیت تنظیم نرخ تماس ها به صورت پویا است. از دیگر امکانات پیشرفته این نرم افزار میتوان به پشتیبانی از IPV6 , TLS , SCTP احراز هویت SIP سناریوهای شرطی، انتقال مجدد UDP، پشتیبانی از عبارات باقاعده Regular Expression، فیلد های پروتکل، POSIX برای استخراج یا تزریق (Regular Expression)، اعمال سفارشی شده در زمان دریافت پیام (مانند گزارشگیری، اجرای فرامین سیستمی و ...) تزریق فیلد از فایل های CSV خاص برای شبیه سازی کاربران Live و ... اشاره کرد.
به علاوه این ابزار دارای یک رابط مبتنی بر وب و یک ابزار تحت ویندوز برای طراحی نمودارهای جریان تماس هم میباشد.
در این آموزش روش نصب sipp در توزیع های Debian / Ubuntu / Mint توضیح داده شده است.
پیش نیاز های نصب :
ابتدا با استفاده از یک ویرایشگر متن وارد فایل sources.list در مسیر زیر شده :
و کدهای زیر را در فایل sources.list کپی کرده :
فایل را ذخیره نمایید، سپس دستور update را وارد نمایید :
نصب Sipp :
ابتدا با دستور زیر پکیج های مورد نیاز را نصب میکنیم :
وارد مسیر زیر شوید :
با دستور زیر اپلیکیشن sip را دانلود کنید :
یا از لینک زیر دانلود کنید :
سپس فایل دانلود شده را اکسترک میکنیم :
وارد فولدر sipp میشویم :
سپس دستورات زیر را برای نصب و کامپایل کردن وارد کنید :
تنظیمات استریسک :
وارد فایل sip.conf از مسیر زیر میشویم :
و کدهای زیر را به آخر فایل sip.conf اضافه میکنیم و تغییرات را ذخیره میکنیم :
بعد وارد فایل extensions.conf شده و آخر فایل این کدهای را اضافه میکنیم :
با دستورات زیر یکبار استریسک و ماژول آن را ریستارت کنید :
وارد شاخه sip شده :
نکته :
اگر در اجرای دستور زیر دچار مشکل شدید حتما بررسی کنید که نام host در فایل hostes در مسیر زیر اضافه کرده باشید :
و دستور زیر را وارد نمایید :
-d : نشان دهنده زمان مکالمه میباشد (بر حسب میلی ثانیه)
-l : نشان دهنده بالاترین میزان تماس همزمان میباشد.

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

با دستورات زیر میتوانید میزان استفاده از CPU و RAM توسط استریسک را مشاهده کنید :


موفق باشید
محمد هابیلی
Sipp یک نرم افزار Opensource جهت تست پروتکل SIP مورد استفاده قرار میگیرد، که میتواند نتایج تست را به صورت پویا نمایش دهد. (اطلاعاتی نظیر میزای مصرفی (CPU,RAM)، تست نفوذ، تست فایروال، تست تحمل بار شبکه و تعداد تماس های همزمان، نرخ تماس ها، آمار پیام ها، RDT(Round Trip Delay)))
از جمله قابلیت ها آن میتوان به ایجاد چندین تماس از طریق ارسال متدهای invite , bye و مشخص کردن Rate تعداد بسته های ارسالی در ثانیه، طراحی سناریو دلخواه توسط XML، پشتیبانی از SIP Authentication و IPV6 میباشد.
با استفاده از این ابزار میتوان آمار و اطلاعات مربوط به تست را در بازه های زمانی مشخص در فایل های CSV ذخیره کرد. یکی دیگر از امکانات این نرم افزار قابلیت تنظیم نرخ تماس ها به صورت پویا است. از دیگر امکانات پیشرفته این نرم افزار میتوان به پشتیبانی از IPV6 , TLS , SCTP احراز هویت SIP سناریوهای شرطی، انتقال مجدد UDP، پشتیبانی از عبارات باقاعده Regular Expression، فیلد های پروتکل، POSIX برای استخراج یا تزریق (Regular Expression)، اعمال سفارشی شده در زمان دریافت پیام (مانند گزارشگیری، اجرای فرامین سیستمی و ...) تزریق فیلد از فایل های CSV خاص برای شبیه سازی کاربران Live و ... اشاره کرد.
به علاوه این ابزار دارای یک رابط مبتنی بر وب و یک ابزار تحت ویندوز برای طراحی نمودارهای جریان تماس هم میباشد.
در این آموزش روش نصب sipp در توزیع های Debian / Ubuntu / Mint توضیح داده شده است.
پیش نیاز های نصب :
ابتدا با استفاده از یک ویرایشگر متن وارد فایل sources.list در مسیر زیر شده :
کد:
Vim /etc/apt/sources.list
کد:
deb http://ftp.de.debian.org/debian stable main contrib non-free deb-src http://ftp.de.debian.org/debian stable main contrib non-free deb http://ftp.debian.org/debian/ wheezy-updates main contrib non-free deb-src http://ftp.debian.org/debian/ wheezy-updates main contrib non-free deb http://security.debian.org/ wheezy/updates main contrib non-free deb-src http://security.debian.org/ wheezy/updates main contrib non-free
فایل را ذخیره نمایید، سپس دستور update را وارد نمایید :
کد:
Apt-get update
نصب Sipp :
ابتدا با دستور زیر پکیج های مورد نیاز را نصب میکنیم :
کد:
apt-get install make gcc g++ automake autoconf libncurses5-dev python build-essential openssl libpcap-dev libssl-dev libnet1-dev libgsl0-dev gsl-bin libgsl0ldbl
کد:
cd /usr/src/
کد:
wget http://sourceforge.net/projects/sipp/files/sipp/3.3/sipp-3.3.tar.gz
کد:
wget http://www.mirrorservice.org/sites/dl.sourceforge.net/pub/sourceforge/s/si/sipp/sipp/3.3/sipp-3.3.tar.gz
کد:
tar xzvf sipp-3.3.tar.gz
کد:
cd sipp-3.3/
کد:
autoreconf -ivf ./configure --with-pcap --with-openssl Make
تنظیمات استریسک :
وارد فایل sip.conf از مسیر زیر میشویم :
کد:
Vim /etc/asterisk/sip.conf
کد:
[sipp] type=friend context=sipp host=dynamic port=6000 user=sipp canreinvite=no disallow=all allow=alaw allow=ulaw
کد:
[sipp] exten => 1001,1,Answer exten => 1001,n,SetMusicOnHold(default) exten => 1001,n,WaitMusicOnHold(20) exten => 1001,n,Hangup
کد:
service asterisk restart asterisk –rx ‘module reload’
کد:
cd /usr/src/sipp3-3
اگر در اجرای دستور زیر دچار مشکل شدید حتما بررسی کنید که نام host در فایل hostes در مسیر زیر اضافه کرده باشید :
کد:
Vim /etc/hosts
کد:
Exam : 127.0.0.1 sterisk11 127.0.0.1 localhost
کد:
./sipp -sn uac -d 10000 -s 1001 <asterisk's IP address> -l 150
-l : نشان دهنده بالاترین میزان تماس همزمان میباشد.
در هنگام اجرای دستور، برای رسیدن به محدودیت تعریف شده میتوانید با زدن کلید های + و * و P تعداد تماس همزمان خود را بالا و پایین ببرید یا تماس ها را توقف کنید.
با دستورات زیر میتوانید میزان استفاده از CPU و RAM توسط استریسک را مشاهده کنید :
کد:
top -p <pid of asterisk>
کد:
asterisk -rx "core show channels"
موفق باشید
محمد هابیلی
کامنت