جمعه, ۲۳ آذر, ۱۴۰۳ / 13 December, 2024
مجله ویستا

پروژه‎ی VINT


پروژه‎ی VINT
● پیشینه:
شروع به کار این شبیه‎ساز به پیش از پروژه VINT مربوط می‎گردد،‌ شبیه‎ساز NS در سال ۱۹۸۹ توسط گروه تحقیقات شبکه NRG در آزمایشگاه LBNL و براساس شبیه‎‎ساز شبکه‎ی دیگری موسوم به REAL طراحی شده است که توسعه‎ی آن تا امروز ادامه داشته و به خصوص پس از انتخاب شدن به عنوان ابزار شبیه‎ساز پروژه‎ی VINT جدیت و سرعت بیشتری یافته است.
آخرین نسخة موجود آن در زمان نگارش این گزارش (اردیبهشت ۱۳۷۸) تحت عنوان NS. ۲.۱b۵ روی شبکه‎ی اینترنت در دسترس می‎باشد.
پروژه‎ی VINT یک کار مشترک تحقیقاتی بین چهار گروه از دانشگاه برکلی کلمبیا ، آزمایشگاه LBNL ، مرکز USC/ISI و بالاخره موسسه Xeroc می‎باشد که از سال ۱۹۹۶ تحت سرپرستی آژانس تحقیقات پیشرفته‎ی دفاعی DARPA در جریان بوده است.
هدف این پروژه ایجاد یک محیط شبیه‎سازی جهت انجام پاره‎ای تحقیقات روی پروتکل‎های انتقال در شبکه‎های گسترده (با تمرکز روی TCP در شبکه‎ی اینترنت) می‎باشد، تحقیقاتی که به خلق تکنیک‎های طراحی نوین برای این پروتکل‎ها و در نهایت اعمال آن‎ها منجر خواهد شد، VINT در واقع پاسخی است که به نیاز اجتماع اینترنت در برخورد با مشکلات ناشی از گسترش روزافزون این شبکه داده می‎شود، طبق نظر متولیان این پروژه افزایش Inter Networking در سال‎های اخیر مشکلاتی برای پروتکل TCP به لحاظ کارآیی به وجود آورده که انجام تحقیقات در جهت اصلاح، تکمیل و یا حتی جایگزینی این پروتکل را لازم گردانیده.
● ابزارهای پروژه‎ی VINT
VINT بر ایجاد یک محیط شبیه‎سازی کاملاً ساخت یافته و قابل گسترش تأکید دارد، محیطی که با تکیه بر یک موتور شبیه‎ساز کارآ، ساختاری را فراهم کند تا محققان به راحتی قادر به هرگونه تغییر در پروتکل‎ها و عناصر آن (به خصوص در سطح لایه‎ی انتقال) باشند و با این هدف نرم‎افزار شبیه‎سازی آزمایشگاه تحقیقاتی LBNL موسوم به NS را به عنوان پایه‎ای برای ایجاد محیط مورد نظر خود انتخاب کرد، DARPA با انجام برخی تغییرات در این شبیه‎ساز که رأس آن شی‎گرا نمودن ساختار آن می‎باشد، نسخه‎ی جدیدی از این شبیه‎ساز را تحت عنوان NS (v۲) ایجاد نموده که در حال حاضر نیز مراحل تکمیلی را پشت سر می‎گذارد.
البته علاوه بر این شبیه‎ساز، ابزارهای دیگری نیز برای این پروژه تهیه شده‎اند که از آن میان می‎توان به نرم‎افزار مصورساز موسوم به NAM اشاره کرد که کاملاً با خروجی‎های NS سازگار می‎‎باشد و قادر است فرآیند حرکت پاکت‎ها را از میان توپولوژی شبکه به نمایش گذارد.
● معماری درونی NS
NS۲ از گونه‎ی شبیه‎سازهای رویدادگردان می‎باشد و از طریق پیگیری رخدادهای در طول زمان گسسته ، شبیه‎سازی را به پیش می‎برد، این شبیه‎ساز در دو محیط برنامه‎نویسی OTCL , C ++ و به صورت شی‎گرا طرح شده، NS بر اساس مدلی موسوم به VuSystem کار می‎کند که در ادامه به طور خلاصه در مورد آن توضیح می‎دهیم:
● مدل VuSystem
شبیه‎سازهای شبکه عمدتاً از دو بخش با تمایلات گوناگون تشکیل یافته‎اند:‌
۱) گروهی از بلوک‎های سازنده که عناصری همچون گره‎ها، لینک‎ها، صف‎ها (بافرها)، مولدهای ترافیک و پروتکل‎ها را شبیه‎سازی می‎کنند.
۲) یک رابطه که معمولاً از آن تحت عنوان زبان تشریح شبیه‎سازی یا SDL یاد می‎شود و وظیفه دارد بلوک‎های سازنده فوق را در فرآیند شبیه‎سازی به یکدیگر متصل سازد.
در مورد این دو بخش یک مشکل اساسی پیش روی طراحان شبیه‎سازهای شبکه وجود دارد، در حالی‎که برای بلوک‎های سازنده کارآیی و سرعت اجرا هدف اصلی می‎باشد، SDL نیازمند انعطاف و سهولت تغییر در پیکربندی می‎باشد و نیل به این دو هدف با یک محیط برنامه‎ریزی واحد مشکل می‎نماید، بنابراین مدل VuSystem که توسط David Wetherall در دانشگاه MIT پیشنهاد شده، راه حل را در استفاده از دو محیط برنامه‎نویسی جداگانه برای دو بخش فوق می‎داند.
مطابق این مدل بلوک‎های سازنده با یک زبان کامپایلی (برای مثال C++) و بخش رابط آن‎ها در یک محیط مفسری (مانند OTCL) پیاده‎سازی می‎شوند.
طراحان NS-۲ با به کارگیری مجموعه‎ای از اشیا موسوم به اشیاء دو تکه موفق به اعمال مدل VuSystem در شبیه‎ساز خویش گشته‎اند. مطابق این مدل، NS-۲ متشکل از مجموعه‎ای از اشیاء می‎باشد که در محیط دوگانه‎ی کامپایلی/ مفسری و از طریق فراخوانی متدهای یکدیگر، ارتباط برقرار می‎کنند.
نوع تفکیک بین دیتا و کنترل در مدل VuSystem وجود دارد و در حالی‎که عناصر موتور شبیه‎ساز که با پردازش دیتا سر و کار دارند، با زبان C++ پیاده‎سازی شده‎اند، کنترل و ارتباط کاربران با این عناصر از طریق مجموعه‎ای از اشیاء در محیط OTCL انجام می‎پذیرد.
البته ساختار فوق در کنار تمام مزایایی که دارد، کار را برای محققانی که قصد توسعه‎ی NS را دارند مشکل می‎گرداند، چرا که هرگونه تغییری باید در هر دو محیط به صورت همزمان انجام گیرد که این به معنای نیاز به شناخت دو محیط برنامه‎نویسی متفاوت می‎باشد.
یزدان بهرامی نیا
۱. Network Research Group
۲. این شبیه‎ساز به عنوان پایان‎نامه‎ی دکتری توسط S.Keshav ارائه شده .
۳ . حرف b در عنوان فوق معروف Beta بودن این نگارش می‎باشد.
۴ . Virtual Inter Network Test bed
۵ . U.C. Berkely
۶ . Defense Advanced Research Projects Agency
۷. Network Simulator
۸ . Network Animator
۹ . Discrete- Time
۱۰ . OTCL نسخه‎ی شی‎گرای زبان ابزار فرمان (Tools Command Language) دانشگاه MIT می‎باشد
۱۱ . Simulation Description Language
۱۲ . Split Objects