شبیه‌سازی شبکه
شبیه‌سازی شبکه در ارتباطات و شبکه‌های رایانه‌ای تحقیقات کامپیوتری، شبیه‌سازی شبکه تکنیکی است که رفتار شبکه را با انجام محاسبات تراکنشها بین موجودیتهای مختلف شبکه و استفاده از فرمولهای ریاضی و گرفتن مشاهدات از محصولات شبکه مدل می‌کند. رفتار شبکه و کاربردهای مختلف و سرویسهایی که پشتیبانی می‌کند را می‌توان در تست آزمایشگاه مشاهده کرد. ویژگی‌های مختلف محیط می‌تواند تحت تأثیر روش‌های کنترل ارزیابی در شرایط مختلف تغییر کند. برنامه شبیه‌سازی که در اتصالات کاربردهای زنده و سرویسها برای مشاهده انتها به انتهای کارایی در صفحه نمایش کاربر استفاده می‌شود به شبیه‌سازی شبکه اشاره دارد.
شبیه‌ساز شبکه یک قطعه نرم‌افزار یا سخت‌افزار است که رفتار شبکه رایانه‌ای را بدون حضور یک شبکه واقعی پیش‌بینی می‌کند. شیبه ساز شبکه برنامه نرم‌افزاری است که عملکرد یک شبکه کامپیوتری را تقلید می‌کند. در شبیه‌سازها، شبکه کامپیوتری با دستگاه‌ها و ترافیک و… مدل شده و سپس کارایی آن آنالیز و تحلیل می‌شود. معمولاً کاربران می‌توانند شبیه‌ساز را برای عملی کردن نیازهای تحلیلی خاص خودشان سفارشی کنند. شبیه‌سازها عموماً از پروتکلهای مشهوری که امروزه استفاده می‌شوند پشتیبانی می‌کند مثل: شبکه محلی بی‌سیم، وای‌مکس، قرارداد داده‌نگار کاربر و قرارداد هدایت انتقال
بیشتر شبیه‌سازها تجاری واسط گرافیکی کاربر هستند. برخی شبیه‌سازهای شبکه به ورودی اسکریپت‌ها و دستورها (پارامترهای شبکه) نیاز دارند. پارامترهای شبکه وضعیت شبکه را تعریف می‌کنند (مکان نودها، لینک‌های موجود) و رویدادها (انتقال داده‌ها، خرابی لینک‌ها و غیره) مهم‌ترین خروجی شبیه‌سازها فایلهای ردیابی هستند. فایلهای ردیابی می‌توانند هر رویداد رخ داده در شبیه‌سازی را برای تحلیل و آنالیز مستند کنند. برخی شبیه‌سازها توابعی را برای گرفتن مستقیم داده‌ها از محیط در زمان‌های مختلف روز، هفته، ماه برای نشان دادن حالتهای میانگین، بدترین و بهترین اضافه کرده‌اند. شبیه‌سازهای شبکه ابزارهای دیگر برای تسهیل تجزیه و تحلیل بصری از روند و نقاط مشکل بالقوه ارائه می‌کنند.
بیشتر شبیه‌سازهای شبکه از رویدادهای شبیه‌سازی گسسته که در طول رخ دادن رویداد ذخیره شده و رویدادهایی که برای رخدادهای آینده راه اندازی می‌شوند مثل بسته‌های رسیده از یک نود پائین دست استفاده می‌کنند.
برخی مشکلات شبیه‌سازی شبکه بستگی به نظریه صف داردکه شبیه‌سازی مجموعه زنجیره مارکوف است که در آن هیچ لیستی از وقایع آینده حفظ نشده‌است و شبیه‌سازی شامل انتقال بین وضعیتهای مختلف سیستم در مدل‌های بدون حافظه است. شبیه‌سازی زنجیره مارکوف معمولاً سریعتر است اما صحت و دقت پائین‌تری از شبیه‌ساز رویداد گسسته دارد. برخی شبیه‌سازها برپایه شبیه‌سازهای چرخه‌ای هستند و در مقایسه با شبیه‌سازهای بر پایه رویداد سریعتر می‌باشند.
شبیه‌سازی شبکه کار مشکلی است، به عنوان مثال وقتی ازدحام زیاد باشد تخمین میانگین اشغالی به خاطر واریانس بالا مشکل است. برای تخمین سرریزی بافر در شبکه، زمان مورد نیاز برای پاسخ صحیح می‌تواند زیاد شود. تکنیک‌های خاص مثل کنترل variates و نمونه برداری‌های مهم و.. که سرعت شبیه‌سازی را توسعه می‌دهد.
مثالهایی از نرم‌افزارهای شبیه‌سازی شبکه برجسته، که بعد از اینکه چند وقت یکبار در مقالات تحقیقاتی ذکر شدند مرتب شده‌اند:
شبیه‌سازهای شبکه نیازهای زیادی را برطرف می‌کنند، در مقایسه از نظر هزینه و زمان راه اندازی بستر آزمایش برای یک پروژه بزرگ که شامل رایانه‌ها و روترها و پیوندهای داده است، شبیه‌ساز شبکه سریعتر و ارزانتر است. آن‌ها (شبیه‌سازها) به مهندسان و محققان اجازه می‌دهند تا سناریوهایی را که برای پیاده‌سازی در سخت‌افزار واقعی مشکل و گران هستند با تعدادی نود و آزمایش پروتکلهای جدید در شبکه شبیه‌سازی کنند. شبیه‌سازهای شبکه به خاطر اینکه به محققان اجازه می‌دهند تا پروتکلهای شبکه را تست کرده یا پروتکلهای موجود در محیطهای کنترل شده و تجدید پذیر را تغییر دهند مفید هستند. نوعی از شبیه‌سازهای شبکه شامل محدوده وسیعی از تکنولوژی‌های شبکه هستند و می‌توانند به کاربران برای ساخت شبکه‌های پیچیده از بلاک‌های ساده مثل انواع نودها و لینکها کمک کنند. به کمک شبیه‌سازها می‌توان شبکه سلسله مراتبی با انواع مختلف نودها مثل کامپیوترها، هاب‌ها، پل شبکه، روترها، سوئیچ‌ها و لینک‌ها و واحدهای سیار را طراحی کرد.
انواع مختلف تکنولوژی‌های Wide Area Network, TCP,ATM,IP است؛ و تکنولوژی شبکه‌های شبکه محلی اترنت و توکن رینگ است. همگی می‌توانند با نوعی از شبیه‌سازها شبیه‌سازی شوند و کاربران می‌توانند انواع مختلف استانداردها و استراتژی‌های مسیریابی را تست و تحلیل کنند. همچنین شبیه‌سازهای شبکه به‌طور گسترده برای شبیه‌سازی شبکه‌های میدان جنگ در جنگ شبکه محور کاربرد دارند.
انواع مختلف شبیه‌سازهای شبکه از خیلی ساده تا خیلی پیچیده وجود دارند. شبیه‌ساز شبکه حداقل باید کاربر را قادر به ارائه توپولوژی شبکه، تخصیص نودها در شبکه و تخصیص لینک‌های بین نودها و ترافیک بین نودها سازد. سیستم‌های بسیار پیچیده باید به کاربران اجازه دهند تا همه چیز در مورد پروتکلهای استفاده شده برای مدیریت ترافیک در شبکه را تخصیص دهند. کاربردهای گرافیکی به کاربر اجازه می‌دهد تا به صورت ساده کارکرد محیط شبیه‌سازی شده را بصری کند. کاربردهای متنی واسط بصری کمی را فراهم می‌کننداما باید سفارشی‌سازی پیشرفته تری را فراهم سازند.