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

کاربرد شبیه‎سازی در مورد شبکه‎های ارتباطی نیز سابقه‎ای ۱۵ ساله دارد که هنوز هم در حال رشد می‎باشد، دلایل استفاده از شبیه‎سازی در این حوزه را می‎توان در دو مورد خلاصه کرد:

۱) پیدایش و گسترش شبکه‎هایی با تکنولوژی پیچیده همچون Frame Relay, SMDS, ATM.

۲) خلق ابزارها و نرم‎افزارهای خاص شبیه‎سازی شبکه‎ها.

انواع نرم‎افزارهای شبیه‎ساز مورد استفاده در شبکه‎های ارتباطی را می‎توان در سه گروه عمده جای داد:

۱) زبان‎های شبیه‎ساز همه منظوره .

۲) زبان‎های شبیه‎ساز خاص شبکه‎های ارتباطی .

۳) نرم‎افزارهای شبیه‎ساز شبکه .

▪ زبان‎های شبیه‎ساز همه منظوره

این گروه به طور کلی برای هر گونه شبیه‎سازی کاربرد دارند و به خصوص در صورت مجهز شدن به ماجول‎های شبیه‎ساز خاص عناصر شبکه (گره، لینک، پروتکل،...) می‎توانند به صورت ابزاری قابل انعطاف برای این منظور به کار روند،‌ به عنوان نمونه‎هایی از این گروه می‎توان به موارد ذیل اشاره کرد:‌

SES/Workbench

MODSuyt|M

GPSS/H

BoNes DESIGNER

Arena

SIMAN/Cinema V

SIMSCRIPT ||.۵

SLAM SYSTEM

که در این میان تنها SES, BoNes دارای عناصر آماده برای شبیه‎سازی شبکه می‎باشند. نقطه‎ی قوت این‎گونه از شبیه‎سازها در انعطاف فوق‎العاده‎ی آن‎ها می‎باشد که به کاربر اجازه شبیه‎سازی هرگونه شبکه با هر نوع پروتکل دلخواه را می‎دهد و در مقابل اشکال عمده‎ی آن‎ها دشوار و زمانگیر بودن فرآیند تعریف توپولوژی شبکه و پروتکل‎های آن می‎باشد که معمولاً مستلزم شناخت زبان برنامه‎نویسی ویژه آن‎ها می‎باشد.

▪ زبان‎های شبیه‎ساز خاص شبکه‎های ارتباطی

این‎گونه شبیه‎سازها، بسیار شبیه گروه پیشین می‎باشند با این تفاوت که اغلب عناصر لازم برای شبیه‎سازی شبکه‎ در آن‎ها به صورت از پیش آماده شده می‎باشد که با وجود آن‎ها زمان لازم برای فرآیند شبیه‎سازی کاهش می‎یابد، ولی در مقابل از انعطاف کمتری برخوردار می‎باشند، نرم‎افزار OPNET Modeler نمونه‎‎ای از این‎گونه می‎باشد.

▪ نرم‎افزارهای شبیه‎ساز شبکه

این گروه شامل پکیج‎های کامل می‎باشند که توانایی شبیه‎سازی شبکه‎های ارتباطی را بدون نیاز به کدنویسی و معمولاً از طریق واسط‎های گرافیکی فراهم می‎کنند، وجود عناصر شبیه‎سازی شده‎ای متناظر با عناصر واقعی (روترها، سویچ‎ها،...) در این گونه علاوه بر بالا بردن دقت، باعث افزایش سهولت و سرعت در فرآیند شبیه‎سازی می‎شود و به این ترتیب برای کاربران ناآشنا با فن برنامه‎نویسی بسیار مناسب می‎باشند.

COMNET III, BoNes PlanNet, NETWORK II.۵, L.NET III.۵ نمونه‎های موفق این گروه می‎باشند.

روی‎هم‎رفته کاربران حرفه‎ای و به خصوص آن‎هایی که با شبکه‎های خاص سر و کار دارند، زبان‎های شبیه‎ساز را با وجود دشواری کار با آن‎ها، ترجیح می‎دهند و در مقابل کاربرانی که با موضوع شبیه‎سازی به صورت مقطعی و گذرا برخورد دارند، پکیج‎های شبیه‎ساز را ترجیح می‎دهند. ابزارهای شبیه‎ساز شبکه باید حائز برخی خصوصیات باشند که در ادامه به بررسی آن‎ها می‎پردازیم.

▪ خصوصیات لازم برای شبیه‎سازهای شبکه

شامل ویژگی‎های پنج‎گانه‎ی ذیل می‎باشد:

۱) انعطاف در مدلسازی: کاربر باید قادر باشد انواع جدیدی از منابع معمول شبکه همچون گره‎ها، لینک‎ها و پروتکل‎ها را به مجموعه‎ی موجود در شبیه‎ساز بیفزاید.

۲) سهولت در مدل‎سازی: وجود واسط گرافیکی و امکان مدلسازی به صورت ساخت یافته، به شکلی که مدل‎های پیچیده براساس مدل‎های ساده طرح شوند و همچنین قابلیت استفاده مجدد از ماجول‎ها از خصوصیاتی می‎باشند که باعث تسریع در فرآیند شبیه‎سازی می‎گردند.

۳) اجرای سریع مدل‎ها: زمان پردازش در شبیه سازی‎های بزرگ برای شبکه‎هایی با تعداد زیاد گره بسیار مهم می‎باشد که لازمه آن مدیریت صحیح حافظه می‎باشد.

۴) قابلیت مصورسازی : نمایش گرافیکی عناصر شبکه در حال تبادل پیام‎ها با یکدیگر به رفع خطاهای شبیه‎سازی و درک نحوه‎ی کارکرد آن بسیار کمک می‎کند. در برخی نرم‎افزارهای شبیه‎ساز اجرای مصور سازی همزمان با اجرای شبیه‎ساز و در بخری دیگر پس از انجام آن و به صورت Play Back انجام می‎گیرد.

۵) قابلیت اجرای مجدد و تکراری شبیه‎سازی: هدف از انجام شبیه‎سازی به طور عمده تحقیق تأثیر یک یا چند پارامتر (برای مثال متوسط طول پاکت‎ها و یا ظرفیت بافرها) بر کارآیی آن می‎باشد و به همین خاطر تکرارپذیری یک شرط لازم برای این نرم‎افزارها می‎باشد.

و در مجموع باید توجه داشت که خلق یک شبیه‎ساز شبکه‎ی دقیق و معتبر مستلزم به کارگیری تکنولوژی شبیه‎سازی در کنار دانش شبکه و پروتکل‎های آن می‎باشد. البته در کنار خصوصیات فوق وجود برخی قابلیت‎ها بر ارزش هر ابزار شبیه‎ساز خواهد افزود که از آن میان می‎توان به چند مورد ذیل اشاره کرد:

۱) وجود ماجول‎های درونی از پیش آماده شده متناظر با عناصر و پروتکل‎های شبکه.

۲) وجود یک مولد عدد تصادفی و در شکل‎های پیشرفته‎تر قابلیت خلق کمیت‎هایی با توزیع‎های تصادفی گوناگون چرا که اغلب رخدادها در یک فرآیند شبیه‎سازی اعم از تولید و ارسال پاکت‎ها و یا ایجاد خرابی در آن‎ها، از نوع فرآیند‎های تصادفی می‎باشند.

۳) حمایت از کاربران با به هنگام‎سازی‎های به موقع (به خصوص در مورد پروتکل‎های جدید) به همراه مستندات کامل و گویا.

۴) ارائه گزارش‎هایی از پارامتر‎های کارآیی شبکه (نرخ خروجی، بهره‎وری، تأخیر انتقال،...) در قالب ارقام و منحنی‎ها به همراه امکان انجام عملیات آماری روی نتایج از دیگر ویژگی‎های مثبت یک شبیه‎ساز می‎باشد.

یزدان بهرامی نیا

۱. Event- driven

۲ . General- Purpose Simulation Language

۳ . Communication- Oriented Simulation Language

۴ . Communication- Oriented Simulator

۵. Reusability

۶.Animation

۷. Built- in Modules

۸ . Random- Number Generator