پايان نامه كارشناسي پيادهسازي پروتكل ICMP
فهرست مطالب:
فصل 1 – مفاهيم اوليه شبكه و پروتكل ICMP. 6
1-1- شبکههاي كامپيوتري و تقسيمبندي آنها 7
1-1-1- تقسيمبندي بر اساس نوع وظايف… 7
1-1-2- تقسيمبندي بر اساس توپولوژي.. 8
1-1-3- تقسيمبندي بر اساس حوزه جغرافي تحت پوشش…. 11
1-2- پروتكل TCP/IP. 13
1-2-1- لايههاي پروتکل TCP/IP. 14
1-2-2- آدرس IP. 15
1-2-3- پورت TCP/UDP. 16
1-2-4- مشخص نمودن برنامهها توسط سوكت (Socket) 16
1-2-5- پروتکلهاي اصلي درTCP/IP. 17
1-2-6- بررسي برنامهها و ابزارهاي کمکي در رابطه با پروتکل TCP/IP- برنامههاي عيبيابي.. 22
1-2-7- بررسي نحوه فرآيند انتقال اطلاعات.. 22
1-3- پروتكل ICMP(Internet Control Message Protocol) 28
1-3-1- مشخصههاي پروتكل ICMP مطابق با RFC 792. 29
1-3-2- فرمت پيام ICMP. 32
1-3-3- انواع پيامهاي ICMP. 33
فصل 2 زبان برنامهنويسي C# و پيادهسازي پروتكل ICMP بوسيله آن.. 46
2-1- چارچوب .NET و زبان برنامهنويسي C# ………………………………………………………………………………………………………………..47
2-1-1- كلاس و فضاي نام در C#. 48
2-1-2- متد Main() و پارامتر آن.. 49
2-1-3- دستور Consle.WriteLine() 50
2-1-4- مديريت خطا در C#. 50
2-1-5- استفاده از سوکت خام و ارسال و دریافت بسته های خام در برنامه ICMP. 50
2-1-6- آدرس IP. 52
2-2- ابزارهاي كاربردي در شبكه: Ping و Traceroute. 53
2-3- تشريح چگونگي پيادهسازي ابزارهاي كاربردي Ping و Traceroute از پروتكل ICMP با استفاده از زبان برنامهنويسي C# 56
2-3-1- ساخت کلاس ICMP. 56
2-3-2- برنامه Ping. 67
2-3-3- برنامه tracert (traceroute) 72
فهرست مراجع: 78
مقدمه
با رشد سريع تكنولوژيهاي جمعآوري، پردازش و توزيع اطلاعات در قرن بيستم، اين زمينهها بسرعت در هم ادغام شده و تفاوتهاي آنها در حال محو شدن است. پيوند ميان دو صنعت كامپيوتر و مخابرات اتفاقي بود كه هر دو صنعت را دچار تحولات عظيم كرد. اكنون ديگر مفهوم اتاقي با يك كامپيوتر بزرگ بنام مركز كامپيوتر بكلي منسوخ شده است و جاي خود را به تعداد زيادي كامپيوتر كوچك متصل به هم داده است كه به آنها شبكههاي كامپيوتري گفته ميشود. در حقيقت شبكههاي كامپيوتري در دهههاي اخير (از اواخر دهه 1960 ميلادي) پديدار شدهاند. اين شبكهها بسياري از خواص و ويژگيهاي پركاربردشان را از شبكههاي تلفني كه بسيار قديميتر و گستردهتر بودهاند، به ارث بردهاند.
يک شبکه شامل مجموعهاي از تجهيزات (کامپيوتر، چاپگر و..) بوده که با استفاده از يک روش ارتباطي (کابل، امواج راديوئي، ماهواره) و به منظور اشتراک منابع فيزيکي و منطقي به يکديگر متصل ميگردند. شبکهها ميتوانند با يکديگر نيز مرتبط شده و شامل زير شبکههائي باشند.
TCP/IP، يکي از مهمترين پروتکلهاي استفاده شده در شبکههاي کامپيوتري است. اينترنت بعنوان بزرگترين شبکه موجود، از پروتکل فوق بمنظور ارتباط دستگاههاي متفاوت استفاده مينمايد.
TCP/IP، شامل شش پروتکل اساسي ( TCP, UDP, IP, ICMP, IGMP،ARP) و مجموعهاي از برنامههاي کاربردي است. پروتکلهاي فوق، مجموعهاي از استانداردهاي لازم بمنظور ارتباط بين کامپيوترها و دستگاهها را درشبکه، فراهم مينمايد. تماميبرنامهها و ساير پروتکلهاي موجود در پروتکل TCP/IP، به پروتکلهاي شش گانه فوق مرتبط و از خدمات ارائه شده توسط آنان استفاده مينمايند.
همانطور كه ديده ميشود، پروتكل ICMP نيز يكي از 6 پروتكل اصلي نام برده شده در TCP/IP است. درحقيقت اينترنت مضاف بر IP كه براي انتقال دادهها كاربرد دارد، چندين پروتكل كنترلي نيز دارد كه همگي در لايه شبكه به كار گرفته ميشوند. يكي از اين پروتكلها ICMP(Internet Control Message Protocol) است.
ICMP امکانات لازم در خصوص اشکال زدائي و گزارش خطا در رابطه با بستههاي اطلاعاتي غيرقابل توزيع در شبكههاي كامپيوتري را فراهم مينمايد. با استفاده از ICMP، کامپيوترها و روترها که از IP بمنظور ارتباطات استفاده مينمايند، قادر به گزارش خطا و مبادله اطلاعاتي محدود در رابطه وضعيت بوجود آمده ميباشند.
به اين ترتيب ميتوان كاربرد پروتكل ICMP را در مديريت شبكه درك كرد. بعبارتي ICMP يك المان اساسي و مورد نياز در پيادهسازي IP جهت كشف خطاهاي رخ داده در شبكه است.
در اين پاياننامه در ابتدا به تشريح برخي مفاهيم اوليه جهت درك چگونگي عملكرد شبكههاي كامپيوتري و بخصوص پروتكل ICMP خواهيم پرداخت و سپس نحوه پيادهسازي برخي از مهمترين كاربردهاي اين پروتكل در عيبيابي شبكه را تشريح خواهيم نمود.
لازم به ذكر است در پيادهسازي اين پروتكل از زبان برنامهنويسي شيءگراي C# استفاده شده است.
نقد و بررسیها
هنوز بررسیای ثبت نشده است.