عصر رایانه

(فناوری - شبکه - اینترنت - نرم/سخت افزار )

مفاهیم پروتکل ‏TCP IP‏ در شبکه ‏
ساعت ۱:۳٠ ‎ق.ظ روز ۱۳۸٧/٤/٢۱  
‏ پروتکل ‏TCP/IP TCP/IP‏ ، یکی از مهمترین پروتکل های استفاده شده در شبکه های کامپیوتری است . ‏اینترنت بعنوان بزرگترین شبکه موجود ، از پروتکل فوق بمنظور ارتباط دستگاه های متفاوت استفاده می نماید. ‏پروتکل ، مجموعه قوانین لازم بمنظور قانونمند نمودن نحوه ارتباطات در شبکه های کامپیوتری است .در ‏مجموعه مقالاتی که ارائه خواهد شد به بررسی این پروتکل خواهیم پرداخت .‏
‏ پروتکل ‏TCP/IP TCP/IP‏ ، یکی از مهمترین پروتکل های استفاده شده در شبکه های کامپیوتری است . ‏اینترنت بعنوان بزرگترین شبکه موجود ، از پروتکل فوق بمنظور ارتباط دستگاه های متفاوت استفاده می نماید. ‏پروتکل ، مجموعه قوانین لازم بمنظور قانونمند نمودن نحوه ارتباطات در شبکه های کامپیوتری است .در ‏مجموعه مقالاتی که ارائه خواهد شد به بررسی این پروتکل خواهیم پرداخت . در این بخش مواردی همچون : ‏فرآیند انتقال اطلاعات ، معرفی و تشریح لایه های پروتکل ‏TCP/IP‏ و نحوه استفاده از سوکت برای ایجاد تمایز ‏در ارتباطات ، تشریح می گردد. مقدمه امروزه اکثر شبکه های کامپیوتری بزرگ و اغلب سیستم های عامل ‏موجود از پروتکل ‏TCP/IP‏ ، استفاده و حمایت می نمایند. ‏ TCP/IP‏ ، امکانات لازم بمنظور ارتباط سیستم های غیرمشابه را فراهم می آورد. از ویژگی های مهم پروتکل ‏فوق ، می توان به مواردی همچون : قابلیت اجراء بر روی محیط های متفاوت ، ضریب اطمینان بالا ،قابلیت ‏گسترش و توسعه آن ، اشاره کرد . از پروتکل فوق، بمنظور دستیابی به اینترنت و استفاده از سرویس های ‏متنوع آن نظیر وب و یا پست الکترونیکی استفاده می گردد. تنوع پروتکل های موجود در پشته ‏TCP/IP‏ و ‏ارتباط منطقی و سیستماتیک آنها با یکدیگر، امکان تحقق ارتباط در شبکه های کامپیوتری را با اهداف متفاوت ، ‏فراهم می نماید.‏ ‏ فرآیند برقراری یک ارتباط ، شامل فعالیت های متعددی نظیر : تبدیل نام کامپیوتر به آدرس ‏IP‏ معادل ، ‏مشخص نمودن موقعیت کامپیوتر مقصد ، بسته بندی اطلاعات ، آدرس دهی و روتینگ داده ها بمنظور ارسال ‏موفقیت آمیز به مقصد مورد نظر ، بوده که توسط مجموعه پروتکل های موجود در پشته ‏TCP/IP‏ انجام می ‏گیرد. معرفی پروتکل ‏TCP/IP TCP/IP‏ ، پروتکلی استاندارد برای ارتباط کامپیوترهای موجود در یک شبکه ‏مبتنی بر ویندوز 2000 است. از پروتکل فوق، بمنظور ارتباط در شبکه های بزرگ استفاده می گردد. برقراری ‏ارتباط از طریق پروتکل های متعددی که در چهارلایه مجزا سازماندهی شده اند ، میسر می گردد. هر یک از ‏پروتکل های موجود در پشته ‏TCP/IP‏ ، دارای وظیفه ای خاص در این زمینه ( برقراری ارتباط) می باشند . ‏در زمان ایجاد یک ارتباط ، ممکن است در یک لحظه تعداد زیادی از برنامه ها ، با یکدیگر ارتباط برقرار ‏نمایند. ‏TCP/IP‏ ، دارای قابلیت تفکیک و تمایز یک برنامه موجود بر روی یک کامپیوتر با سایر برنامه ها ‏بوده و پس از دریافت داده ها از یک برنامه ، آنها را برای برنامه متناظر موجود بر روی کامپیوتر دیگر ارسال ‏می نماید. نحوه ارسال داده توسط پروتکل ‏TCP/IP‏ از محلی به محل دیگر ، با فرآیند ارسال یک نامه از شهری ‏به شهر، قابل مقایسه است .‏ ‏ برقراری ارتباط مبتنی بر ‏TCP/IP‏ ، با فعال شدن یک برنامه بر روی کامپیوتر مبدا آغاز می گردد . برنامه ‏فوق ،داده های مورد نظر جهت ارسال را بگونه ای آماده و فرمت می نماید که برای کامپیوتر مقصد قابل ‏خواندن و استفاده باشند. ( مشابه نوشتن نامه با زبانی که دریافت کننده ، قادر به مطالعه آن باشد) . در ادامه ‏آدرس کامپیوتر مقصد ، به داده های مربوطه اضافه می گردد ( مشابه آدرس گیرنده که بر روی یک نامه ‏مشخص می گردد) . پس از انجام عملیات فوق ، داده بهمراه اطلاعات اضافی ( درخواستی برای تائید دریافت ‏در مقصد ) ، در طول شبکه بحرکت درآمده تا به مقصد مورد نظر برسد. عملیات فوق ، ارتباطی به محیط انتقال ‏شبکه بمنظور انتقال اطلاعات نداشته ، و تحقق عملیات فوق با رویکردی مستقل نسبت به محیط انتقال ، انجام ‏خواهد شد . لایه های پروتکل ‏TCP/IP TCP/IP‏ ، فرآیندهای لازم بمنظور برقراری ارتباط را سازماندهی و ‏در این راستا از پروتکل های متعددی در پشته ‏TCP/IP‏ استفاده می گردد. بمنظور افزایش کارآئی در تحقق ‏فرآیند های مورد نظر، پروتکل ها در لایه های متفاوتی، سازماندهی شده اند . اطلاعات مربوط به آدرس دهی ‏در انتها قرار گرفته و بدین ترتیب کامپیوترهای موجود در شبکه قادر به بررسی آن با سرعت مطلوب خواهند ‏بود. در این راستا، صرفا'' کامپیوتری که بعنوان کامپیوتر مقصد معرفی شده است ، امکان باز نمودن بسته ‏اطلاعاتی و انجام پردازش های لازم بر روی آن را دارا خواهد بود. ‏TCP/IP‏ ، از یک مدل ارتباطی چهار لایه ‏بمنظور ارسال اطلاعات از محلی به محل دیگر استفاده می نماید: ‏Application ,Transport ,Internet‏ و ‏Network Interface‏ ، لایه های موجود در پروتکل ‏TCP/IP‏ می باشند.هر یک از پروتکل های وابسته به ‏پشته ‏TCP/IP‏ ، با توجه به رسالت خود ، در یکی از لایه های فوق، قرار می گیرند. لایه ‏Application‏ لایه ‏Application‏ ، بالاترین لایه در پشته ‏TCP/IP‏ است .‏ تمامی برنامه و ابزارهای کاربردی در این لایه ، با استفاده از لایه فوق، قادر به دستتیابی به شبکه خواهند بود. ‏پروتکل های موجود در این لایه بمنظور فرمت دهی و مبادله اطلاعات کاربران استفاده می گردند . ‏HTTP‏ و ‏FTP‏ دو نمونه از پروتکل ها ی موجود در این لایه می باشند . پروتکل ‏HTTP)Hypertext Transfer ‎Protocol‏) . از پروتکل فوق ، بمنظور ارسال فایل های صفحات وب مربوط به وب ، استفاده می گردد . ‏پروتکل ‏FTP)File Transfer Protocol‏) . از پروتکل فوق برای ارسال و دریافت فایل، استفاده می گردد . ‏لایه ‏Transport‏ لایه '' حمل '' ، قابلیت ایجاد نظم و ترتیب و تضمین ارتباط بین کامپیوترها و ارسال داده به لایه ‏Application‏ ( لایه بالای خود) و یا لایه اینترنت ( لایه پایین خود) را بر عهده دارد. لایه فوق ، همچنین ‏مشخصه منحصربفردی از برنامه ای که داده را عرضه نموده است ، مشخص می نماید. این لایه دارای دو ‏پروتکل اساسی است که نحوه توزیع داده را کنترل می نمایند.‏ ‏ ‏TCP)Transmission Control Protocol‏) . پروتکل فوق ، مسئول تضمین صحت توزیع اطلاعات است . ‏UDP)User Datagram Protocol‏) . پروتکل فوق ، امکان عرضه سریع اطلاعات بدون پذیرفتن مسئولیتی ‏در رابطه با تضمین صحت توزیع اطلاعات را برعهده دارد . لایه اینترنت لایه ''اینترنت''، مسئول آدرس دهی ، ‏بسته بندی و روتینگ داده ها ، است. لایه فوق ، شامل چهار پروتکل اساسی است : ‏IP)Internet Protocol‏) . ‏پروتکل فوق ، مسئول آدرسی داده ها بمنظور ارسال به مقصد مورد نظر است .‏ ‏ ‏ARP)Address Resoulation Protocol‏) . پروتکل فوق ، مسئول مشخص نمودن آدرس ‏MAC)Media ‎Access Control‏) آداپتور شبکه بر روی کامپیوتر مقصد است.‏ ‏ ‏ICMP)Internet Control Message Protocol‏) . پروتکل فوق ، مسئول ارائه توابع عیب یابی و گزارش ‏خطاء در صورت عدم توزیع صحیح اطلاعات است . ‏IGMP)Internet Group Managemant Protocol‏) ‏‏. پروتکل فوق ، مسئول مدیریت ‏Multicasting‏ در ‏TCP/IP‏ را برعهده دارد. لایه ‏Network Interface‏ ‏لایه '' اینترفیس شبکه '' ، مسئول استقرار داده بر روی محیط انتقال شبکه و دریافت داده از محیط انتقال شبکه ‏است . لایه فوق ، شامل دستگاه های فیزیکی نظیر کابل شبکه و آداپتورهای شبکه است . کارت شبکه ( آداپتور) ‏دارای یک عدد دوازده رقمی مبنای شانزده ( نظیر : ‏B5-50-04-22-D4-66‎‏ ) بوده که آدرس ‏MAC‏ ، نامیده ‏می شود. لایه '' اینترفیس شبکه '' ، شامل پروتکل های مبتنی بر نرم افزار مشابه لایه های قبل ، نمی باشد. ‏ پروتکل های ‏Ethernet‏ و ‏ATM)Asynchronous Transfer Mode‏) ، نمونه هائی از پروتکل های موجود ‏در این لایه می باشند . پروتکل های فوق ، نحوه ارسال داده در شبکه را مشخص می نمایند. مشخص نمودن ‏برنامه ها در شبکه های کامپیوتری ، برنامه ها ی متعددی در یک زمان با یکدیگر مرتبط می گردند. زمانیکه ‏چندین برنامه بر روی یک کامپیوتر فعال می گردند ، ‏TCP/IP‏ ، می بایست از روشی بمنظور تمایز یک ‏برنامه از برنامه دیگر، استفاده نماید. بدین منظور ، از یک سوکت ( ‏Socket‏) بمنظور مشخص نمودن یک ‏برنامه خاص ، استفاده می گردد. آدرس ‏IP‏ برقراری ارتباط در یک شبکه ، مستلزم مشخص شدن آدرس ‏کامپیوترهای مبداء و مقصد است ( شرط اولیه بمنظور برقراری ارتباط بین دو نقطه ، مشخص بودن آدرس نقاط ‏درگیر در ارتباط است ) . آدرس هر یک از دستگاه های درگیر در فرآیند ارتباط ، توسط یک عدد منحصربفرد ‏که ‏IP‏ نامیده می شود ، مشخص می گردند. آدرس فوق به هریک از کامپیوترهای موجود در شبکه نسبت داده ‏می شود . ‏IP : 10. 10.1.1‎‏ ، نمونه ای در این زمینه است . پورت ‏TCP/UDP‏ پورت مشخصه ای برای یک ‏برنامه و در یک کامپیوتر خاص است .پورت با یکی از پروتکل های لایه ''حمل'' ( ‏TCP‏ و یا ‏UDP‏ ) مرتبط ‏و پورت ‏TCP‏ و یا پورت ‏UDP‏ ، نامیده می شود. پورت می تواند عددی بین صفر تا 65535 را شامل شود. ‏پورت ها برای برنامه های ‏TCP/IP‏ سمت سرویس دهنده ، بعنوان پورت های ''شناخته شده '' نامیده شده و به ‏اعداد کمتر از 1024 ختم و رزو می شوند تا هیچگونه تعارض و برخوردی با سایر برنامه ها بوجود نیاید. ‏مثلا'' برنامه سرویس دهنده ‏FTP‏ از پورت ‏TCP‏ بیست و یا بیست ویک استفاده می نماید. سوکت (‏Socket‏) ‏سوکت ، ترکیبی از یک آدرس ‏IP‏ و پورت ‏TCP‏ ویا پورت ‏UDP‏ است . یک برنامه ، سوکتی را با مشخص ‏نمودن آدرس ‏IP‏ مربوط به کامپیوتر و نوع سرویس ( ‏TCP‏ برای تضمین توزیع اطلاعات و یا ‏UDP‏) و ‏پورتی که نشاندهنده برنامه است، مشخص می نماید. آدرس ‏IP‏ موجود در سوکت ، امکان آدرس دهی کامپیوتر ‏مقصد را فراهم و پورت مربوطه ، برنامه ای را که داده ها برای آن ارسال می گردد را مشخص می نماید. در ‏بخش دوم این مقاله به تشریح هر یک از پروتکل های موجود در پشته ‏TCP/IP، خواهیم پرداخت .‏ ‏ ‏TCP/IP‏ ،شامل شش پروتکل اساسی( ‏TCP,UDP,IP,ICMP,IGMP ‎،ARP‏ ) و مجموعه ای از برنامه ‏های کاربردی است. پروتکل های فوق، مجموعه ای از استادنداردها ی لازم بمنظور ارتباط بین کامپیوترها و ‏دستگاهها را در شبکه ، فراهم می نماید. تمامی برنامه ها و سایر پروتکل ها ی موجود در پروتکل ‏TCP/IP‏ ، ‏به پروتکل های شش گانه فوق مرتبط و از خدمات ارائه شده توسط آنان استفاده می نمایند . در ادامه به تشریح ‏عملکرد و جایگاه هر یک از پروتکل های اشاره شده ، خواهیم پرداخت . پروتکل ‏TCP‏ : لایه ‏Transport ‎TCP) Transmission Control Protocol‏) ، یکی از پروتکل های استاندارد ‏TCP/IP‏ است که امکان ‏توزیع و عرضه اطلاعات ( سرویس ها) بین صرفا'' دو کامپیوتر ، با ضریب اعتماد بالا را فراهم می نماید. ‏چنین ارتباطی ( صرفا'' بین دو نقطه ) ، ‏Unicast‏ نامیده می شود . در ارتباطات با رویکرد اتصال گرا ، می ‏بایست قبل از ارسال داده ، ارتباط بین دو کامپیوتر برقرار گردد . پس از برقراری ارتباط ، امکان ارسال ‏اطلاعات برای صرفا'' اتصال ایجاد شده ، فراهم می گردد . ارتباطات از این نوع ، بسیار مطمئن می باشند ، ‏علت این امر به تضمین توزیع اطلاعات برای مقصد مورد نظر برمی گردد . بر روی کامپیوتر مبداء ، ‏TCP‏ ‏داده هائی که می بایست ارسال گردند را در بسته های اطلاعاتی (‏Packet‏) سازماندهی می نماید. در کامپیوتر ‏مقصد ، ‏TCP‏ ، بسته های اطلاعاتی را تشخیص و داده های اولیه را مجددا'' ایجاد خواهد کرد .‏ ‏ ارسال اطلاعات با استفاده از ‏TCP TCP‏ ، بمنظور افزایش کارائی ، بسته های اطلاعاتی را بصورت گروهی ‏ارسال می نماید . ‏TCP‏ ، یک عدد سریال ( موقعیت یک بسته اطلاعاتی نسبت به تمام بسته اطلاعاتی ارسالی ) ‏را به هریک از بسته ها نسبت داده و از ‏Acknowledgment‏ بمنظور اطمینان از دریافت گروهی از بسته ‏های اطلاعاتی ارسال شده ، استفاده می نماید. در صورتیکه کامپیوتر مقصد ، در مدت زمان مشخصی نسبت به ‏اعلام وصول بسته های اطلاعاتی ، اقدام ننماید ، کامپیوتر مبداء ، مجددا'' اقدام به ارسال اطلاعات می نماید. ‏علاوه برافزودن یک دنباله عددی و ‏Acknowledgment‏ به یک بسته اطلاعاتی ، ‏TCP‏ اطلاعات مربوط به ‏پورت مرتبط با برنامه ها ی مبداء و مقصد را نیز به بسته اطلاعاتی اضافه می نماید. کامپیوتر مبداء ، از پورت ‏کامپیوتر مقصد بمنظور هدایت صحیح بسته های اطلاعاتی به برنامه مناسب بر روی کامپیوتر مقصد ، استفاده ‏می نماید. کامپیوتر مقصد از پورت کامپیوتر مبداء بمنظور برگرداندن اطلاعات به برنامه ارسال کننده در ‏کامپیوتر مبداء ، استفاده خواهد کرد . هر یک از کامپیوترهائی که تمایل به استفاده از پروتکل ‏TCP‏ بمنظور ‏ارسال اطلاعات دارند ، می بایست قبل از مبادله اطلاعات ، یک اتصال بین خود ایجاد نمایند . اتصال فوق ، از ‏نوع مجازی بوده و ‏Session‏ نامیده می شود .دو کامپیوتر درگیر در ارتباط ، با استفاده از ‏TCP‏ و بکمک ‏فرآیندی با نام : ‏Three-Way handshake‏ ، با یکدیگر مرتبط و هر یک پایبند به رعایت اصول مشخص شده ‏در الگوریتم مربوطه خواهند بود . فرآیند فوق ، در سه مرحله صورت می پذیرد : مرحله اول : کامپیوتر مبداء ، ‏اتصال مربوطه را از طریق ارسال اطلاعات مربوط به ‏Session‏ ، مقداردهی اولیه می نماید ( عدد مربوط به ‏موقعیت یک بسته اطلاعاتی بین تمام بسته های اطلاعاتی و اندازه مربوط به بسته اطلاعاتی ) مرحله دوم : ‏کامپیوتر مقصد ، به اطلاعات ‏Session‏ ارسال شده ، پاسخ مناسب را خواهد داد . کامپیوتر مبداء ، از شرح ‏واقعه بکمک ‏Acknowledgment‏ ارسال شده توسط کامپیوتر مقصد ، آگاهی پیدا خواهد کرد .‏ ‏ پروتکل ‏UDP‏ : لایه ‏Transport UDP) User Datagram Protocol‏ ) ، پروتکلی در سطح لایه ''حمل'' ‏بوده که برنامه مقصد در شبکه را مشخص نموده و از نوع بدون اتصال است . پروتکل فوق، امکان توزیع ‏اطلاعات با سرعت مناسب را ارائه ولی در رابطه با تضمین صحت ارسال اطلاعات ، سطح مطلوبی از ‏اطمینان را بوجود نمی آورد . ‏UDP‏ در رابطه با داده های دریافتی توسط مقصد ، به ‏Acknowledgment‏ ‏نیازی نداشته و در صورت بروز اشکال و یا خرابی در داده های ارسال شده ، تلاش مضاعفی بمنظور ارسال ‏مجدد داده ها ، انجام نخواهد شد . این بدان معنی است که داده هائی کمتر ارسال می گردد ولی هیچیک از داده ‏های دریافتی و صحت تسلسل بسته های اطلاعاتی ، تضمین نمی گردد .از پروتکل فوق ، بمنظور انتقال ‏اطلاعات به چندین کامپیوتر با استفاده از ‏Broadcast‏ و یا ‏Multicast‏ ، استفاده بعمل می آید . پروتکل ‏UDP‏ ‏، در مواردیکه حجم اندکی از اطلاعات ارسال و یا اطلاعات دارای اهمیت بالائی نمی بانشد ، نیز استفاده می ‏گردد. استفاده از پروتکل ‏UDP‏ در مواردی همچون ‏Multicasting Streaming media‏ ، (نظیر یک ویدئو ‏کنفرانس زنده) و یا انتشار لیستی از اسامی کامپیوترها که بمنظور ارتباطات محلی استفاده می گردند ، متداول ‏است . بمنظور استفاده از ‏UDP‏ ، برنامه مبداء می بایست پورت ‏UDP‏ خود را مشخص نماید دقیقا'' مشابه ‏عملیاتی که می بایست کامپیوتر مقصد انجام دهد . لازم به یادآوری است که پورت های ‏UDP‏ از پورت های ‏TCP‏ مجزا و متمایز می باشند (حتی اگر دارای شماره پورت یکسان باشند ).‏ ‏ پروتکل ‏IP‏ : لایه ‏Internet IP) Internet Protocol‏ ) ، امکان مشخص نمودن محل کامپیوتر مقصد در یک ‏شبکه ارتباطی را فراهم می نماید. ‏IP‏ ، یک پروتکل بدون اتصال و غیرمطمئن بوده که اولین مسئولیت آن ‏آدرس دهی بسته های اطلاعاتی و روتینگ بین کامپیوترهای موجود در شبکه است . با اینکه ‏IP‏ همواره سعی ‏در توزیع یک بسته اطلاعاتی می نماید ، ممکن است یک بسته اطلاعاتی در زمان ارسال گرفتار مسائل متعددی ‏نظیر : گم شدن ، خرابی ، عدم توزیع با اولویت مناسب ، تکرار در ارسال و یا تاخیر، گردند.در چنین مواردی ، ‏پروتکل ‏IP‏ تلاشی بمنظور حل مشکلات فوق را انجام نخواهد داد ( ارسال مجدد اطلاعات درخواستی ) .آگاهی ‏از وصول بسته اطلاعاتی در مقصد و بازیافت بسته های اطلاعاتی گم شده ، مسئولیتی است که بر عهده یک ‏لایه بالاتر نظیر ‏TCP‏ و یا برنامه ارسال کننده اطلاعات ، واگذار می گردد . عملیات انجام شده توسط ‏IP‏ می ‏توان ‏IP‏ را بعنوان مکانی در نظر گرفت که عملیات مرتب سازی و توزیع بسته های اطلاعاتی در آن محل ، ‏صورت می پذیرد .بسته ها ی اطلاعاتی توسط یکی از پروتکل های لایه حمل ( ‏TCP‏ و یا ‏UDP‏) و یا از ‏طریق لایه '' ایترفیس شبکه '' ، برای ‏IP‏ ارسال می گردند . اولین وظیفه ‏IP‏ ، روتینگ بسته های اطلاعاتی ‏بمنظور ارسال به مقصد نهائی است . هر بسته اطلاعاتی ، شامل آدرس ‏IP‏ مبداء ( فرستنده ) و آدرس ‏IP‏ مقصد ‏‏( گیرنده ) می باشد. در صورتیکه ‏IP‏ ، آدرس مقصدی را مشخص نماید که در همان سگمنت موجود باشد ، ‏بسته اطلاعاتی مستقیما'' برای کامپیوتر مورد نظر ارسال می گردد . در صورتیکه آدرس مقصد در همان ‏سگمنت نباشد ، ‏IP‏ ، می بایست از یک روتر استفاده و اطلاعات را برای آن ارسال نماید.یکی دیگر از وظایف ‏IP‏ ، ایجاد اطمینان از عدم وجود یک بسته اطلاعاتی ( بلاتکلیف ! ) در شبکه است . بدین منظور محدودیت ‏زمانی خاصی در رابطه با مدت زمان حرکت بسته اطلاعاتی در طول شبکه ، در نظر گرفته می شود .عملیات ‏فوق، توسط نسبت دادن یک مقدار ‏TTL)Time To Live‏) به هر یک از بسته های اطلاعاتی صورت می ‏پذیرد. ‏TTL‏ ، حداکثر مدت زمانی را که بسته اطلاعاتی قادر به حرکت در طول شبکه است را مشخص می ‏نماید( قبل از اینکه بسته اطلاعاتی کنار گذاشته شود) .‏ ‏ پروتکل ‏ICMP‏ : لایه ‏Internet ICMP) Internet Control Message Protocol‏) ، امکانات لازم در ‏خصوص اشکال زدائی و گزارش خطاء در رابطه با بسته های اطلاعاتی غیرقابل توزیع را فراهم می نماید. با ‏استفاده از ‏ICMP‏ ، کامپیوترها و روترها که از ‏IP‏ بمنظور ارتباطات استفاده می نمایند ، قادر به گزارش خطاء ‏و مبادله اطلاعاتی محدود در رابطه وضعیت بوجود آمده می باشند. مثلا'' در صورتیکه ‏IP‏ ، قادر به توزیع یک ‏بسته اطلاعاتی به مقصد مورد نظر نباشد ، ‏ICMP‏ یک پیام مبتنی بر غیرقابل دسترس بودن را برای کامپیوتر ‏مبداء ارسال می دارد . با اینکه پروتکل ‏IP‏ بمنظور انتقال داده بین روترهای متعدد استفاده می گردد ، ولی ‏ICMP‏ به نمایندگی از ‏TCP/IP‏ ، مسئول ارائه گزارش خطاء و یا پیام های کنترلی است . تلاش ‏ICMP‏ ، در ‏این جهت نیست که پروتکل ‏IP‏ را بعنوان یک پروتکل مطمئن مطرح نماید ، چون پیام های ‏ICMP‏ دارای ‏هیچگونه محتویاتی مبنی بر اعلام وصول پیام (‏Acknowledgment‏ ) بسته اطلاعاتی نمی باشند . ‏ICMP‏ ، ‏صرفا'' سعی در گزارش خطاء و ارائه فیدبک های لازم در رابطه با تحقق یک وضعیت خاص را می نماید . ‏پروتکل ‏IGMP‏ : لایه ‏Internet IGMP) Internet Group Managment Protocol‏) ، پروتکلی است که ‏مدیریت لیست اعضاء برای ‏IP Multicasting‏ ، در یک شبکه ‏TCP/IP‏ را بر عهده دارد . ‏IP ‎Multicasting، فرآیندی است که بر اساس آن یک پیام برای گروهی انتخاب شده از گیرندگان که گروه ‏multicat‏ نامیده می شوند ؛ ارسال می گردد . ‏IGMP‏ لیست اعضاء را نگهداری می نماید .‏ ‏ پروتکل ‏ARP‏ : لایه ‏Internet ARP) Address Resolution Protocol‏) ، پروتکلی است که مسئولیت ‏مسئله '' نام به آدرس'' را در رابطه با بسته های اطلاعاتی خروجی (‏Outgoing‏) ، برعهده دارد . ماحصل ‏فرآیند فوق ، ‏Mapping‏ آدرس ‏IP‏ به آدرس‏MAC )Media Access Control‏) ، مربوطه است . کارت ‏شبکه از آدرس ‏MAC‏ ، بمنظور تشخیص تعلق یک بسته اطلاعاتی به کامپیوتر مربوطه ، استفاده می نمایند . ‏بدون آدرس های ‏MAC‏ ، کارت های شبکه ، دانش لازم در خصوص ارسال بسته های اطلاعاتی به لایه بالاتر ‏بمنظور پردازش های مربوطه را دارا نخواهند بود . همزمان با رسیدن بسته های اطلاعاتی به لایه ‏IP‏ بمنظور ‏ارسال در شبکه ، آدرس های ‏MAC‏ مبداء و مقصد به آن اضافه می گردد . ‏ARP‏ ، از جدولی خاص بمنظور ‏ذخیره سازی آدرس های ‏IP‏ و ‏MAC‏ مربوطه ، استفاده می نماید. محلی از حافظه که جدول فوق در آنجا ذخیره ‏می گردد ، ‏ARP Cache‏ نامیده می شود. ‏ARP Cache‏ هر کامپیوتر شامل ‏mapping‏ لازم برای کامپیوترها ‏و روترهائی است که صرفا'' بر روی یک سگمنت مشابه قرار دارند.‏
کلمات کلیدی: شبکه