آموزش شبکه و آدرس دهی در شبکه (IPv4 addressing)_بخش دوم

آموزش شبکه و آدرس دهی در شبکه (IPv4 addressing)_بخش دوم

در بخش قبلی اشاره کردیم که ساختار کلی آدرس IPv4 به چه صورت می باشد در این جا ابتدا اشاره مختصری به تعداد بیت ها و هم چنین تعداد Octet ها خواهیم داشت و ادامه مبحث را با معرفی OSI Layer و پروتکل های مربوط به آن ادامه می دهیم.

آدرس های IPv4 به صورت ثابت به صورت 32 بیتی وجود دارند و به صورت تئوری و بدون در نظر گرفتن هدر رفت های معمول بر اثر مواردی هم چون تقسیم بندی آدرس ها و … که در ادامه به آن ها اشاره خواهیم نمود به تعداد 2 به توان 32 آدرس می باشد که تقریبا در حدود 4 میلیارد می باشد.

البته ذکر این نکته لازم است که زمانی که آدرس دهی IPv4 ایجاد گردید تصور می رفت این تعداد یعنی در حدود 4 میلیارد آدرس بسیار فراتر از میزان مورد نیاز برای سال های بسیار طولانی خواهد بود.

این نوع از آدرس IP به چهار Octet که هرکدام از آن ها دارای هشت بیت می باشند تقسیم می شود که در ادامه به بررسی هرکدام از آن ها و نقش آن ها در آدرس IPv4 اشاره خواهیم نمود.

پروتکل IP برای انتقال داده ها در بین شبکه های مختلف مورد استفاده می باشد. برقراری ارتباط روتینگ روشی می باشد که امکان تبادل اطلاعات بین شبکه های مختلف IP را فراهم می آورد که در نهایت امکان برقراری ارتباط در شبکه های بزرگی مانند اینترنت را فراهم آورده است. به عنوان بخش پایه ای در ارتباطات اینترنتی امکان ارسال اطلاعات از فرستنده مبدا به گیرنده مقصد را فراهم می آورد و این اطلاعات در داخل بخشی از پروتکل آدرس گنجانده شده است که با عنوان Header شناخته می شود. برای این منظور آدرس IP با این ساختار طراحی گردیده است که با درمیان گرفتن دیتای مورد نظر در میان Header آن را به اصطلاح Encapsulate نموده و آن را آماده انتقال بر اساس آدرس لایه 3 می نماید.

هم چنین این ویژگی وجود دارد که فرستنده و گیرنده با استفاده از برچسب هایی با عنوان Source و Destination مشخص گردند. در ابتدا آدرس دهی IP به صورت ارتباطات بدون تضمین از نظر ارسال اطلاعات به مقصد ارائه گردید و به این ترتیب بوده است که اگر اطلاعات مورد نظر در حال ارسال دچار مشکل می شدند این اطلاعات بدون اینکه دوباره ارسال شوند به عنوان اجزای ارسال شده در نظر گرفته می شدند و همانطور که می دانید این امر هم در دستگاه فرستنده اطلاعات و هم در دستگاه گیرنده و نرم افزارهای احتمالی که از این اطلاعات استفاده می نمودند اشکالات فراوانی ایجاد می نموده است. این نوع از ارتباط که بعنوان ارتباطات اولیه IP شناخته می شوند توسط Vint Cerf  و Bob Kahn در سال 1974 ارائه گردید که بصورت Connection less بوده است.

اما نوع دیگر ارتباط تضمین شده جهت ارسال اطلاعات می باشد که با عنوان TCP/IP شناخته می شود و با استفاده از خصوصیات پروتکل TCP می تواند بصورت Connection Oriented عمل نماید.

در این بخش در رابطه با مواردی هم چون تاریخچه TCP/IP صحبت خواهیم نمود که شامل تاریخچه ARPANET و بوجود آمدن TCP و سپس بوجود آمدن IP و در نهایت ادغام این دو پروتکل در سال 1982 می باشد.

ip-from-begin

همان طور که در شکل قبل مشاهده نمودید در سال 1983 TCP/IP Protocol Suite ایجاد گردید که یک دسته بندی کلی و در حقیقت قانون گذاری جهت تقسیم بندی عملکرد لایه های مختلف در پروتکل TCP/IP را به نمایش می گذارد. این پروتکل به لایه های اصلی زیر تقسیم می گردد.

tcp-ip-layers

حال مرور مختصری بر لایه های تشکیل دهنده پروتکل TCP/IP خواهیم داشت.

لایه 4 که با عنوان لایه Application شناخته می شود را اگر بخواهیم با لایه بندی OSI هماهنگ کنیم برابر است با لایه های Application , Presentation , Session و تمامی آن ها به صورت یک جا لایه Application در لایه بندی TCP را می سازند. انواع برنامه ها و اپلیکیشن های مختلف در این لایه کار می کنند و هم چنین پروتکل های مورد استفاده مانند TCP و یا UDP یا TFTP در این بخش ارائه گردیده اند. عملکرد پروتکل هایی مانند TFTP بر اساس UDP و هم چنین SMTP بر اساس پروتکل TCP نیز در همین لایه تعریف گردیده است. به این ترتیب که با استفاده از TCP همان طور که انتظار داریم نیاز به اطمینان در انتقال ایمیل های ما و اینکه حتما به مقصد برسند باعث استفاده از این پروتکل گردیده است.

لایه بعدی که به عنوان لایه انتقال مورد استفاده قرار می گیرد جایی است که مکانیزم های انتقال مانند TCP,UDP  و … در آن عمل می کنند و این لایه به عنوان سرویس دهنده لایه های بالاتر شناخته می شود. و این که از چه نوعی از انتقال استفاده شود بر اساس نوع نرم افزار و اپلیکیشن مربوطه خواهد بود. این لایه اگر با TCP عمل کند دارای بخش تشخیص اشکال و رفع نقص در ارتباط می باشد که با استفاده از Checksum  و acknowledge و هم چنین با استفاده از time out می تواند انتقال و هم چنین ارتباط کلی را کنترل کند.

لایه بعدی که به عنوان Internet شناخته می شود همان بخشی است که بیشتر در مورد آن صحبت خواهیم نمود که در حقیقت مسئولیت آدرس دهی و مدیریت روتینگ در این لایه انجام می گیرد. این لایه با استفاده از آدرس دهی لایه 3 می تواند جهت انتقال اطلاعات بین شبکه های IP مختلف با استفاده از روتینگ مورد استفاده قرار گیرد و این ارتباط با استفاده از لایه های بالاتر در رسیدن به موقع و سر وقت اطلاعات ارسال شده و اتصال مجدد آن ها در مقصد بر اساس ترتیب ابتدایی می تواند از صحت ارسال اطلاعات اطمینان حاصل نماید. پروتکل IP و هم چنین پروتکل ARP از پروتکل های اصلی این لایه می باشند.

لایه دیگر که لایه Access یا Network interface نامیده می شود و ترکیبی از لایه های data link و Physical می باشد شامل مدیریت و انتقال اطلاعاتی نظیر موارد سخت افزاری سیستم ارتباطی مانند کابل ، کارت شبکه و غیره باشد. از دیگر موارد مدیریت شده در این لایه مواردی هم چون سیگنال های مورد استفاده ، کانکتورها و طول موج به کار رفته در فیبر نوری و بسیاری موارد دیگر باشد. از موارد اصلی این لایه می توان به فریم های اطلاعات اشاره نمود که با در میان گرفتن اطلاعات مورد انتقال و هم چنین با استفاده از آدرس دهی لایه 2 امکان ارسال اطلاعات در داخل شبکه هایی مانند شبکه های LAN را فراهم می نماید و این آدرس دهی همان طور که می دانید بر اساس استفاده از MAC Address در شبکه های LAN می باشد. این نوع آدرس در این نوع شبکه های از جمله مواردی باشد که توسط این لایه کنترل می شود و در شبکه های از جنس دیگر این نوع آدرس متفاوت و نوع ارتباط نیز متفاوت خواهد بود.

معرفی OSI layer

همان طور که اشاره گردید جهت نظم دهی و تقسیم بندی وظایف مختلف هر کدام از لایه های ارتباطی و ایجاد هماهنگی در میان سازندگان و همچنین محققانی که بر روی پروتکل های مختلف در لایه های مختلف در حال کار بودند نیاز به ایجاد استانداردهای کاربردی بود که بتواند این هماهنگی را ایجاد کند. تقسیم بندی پروتکل TCP/IP خیلی کلی بود و نیاز بود یک تقسیم بندی عملی تر با جزئیات بیشتری ایجاد گردد و دسته بندی پروتکل های مختلف با دقت بالاتری در لایه های مختلف انجام گیرد. به همین دلیل تقسیم بندی با عنوان OSI Layer ایجاد و در هفت لایه ارائه گردید. همان طور که در شکل زیر مشاهده می نمائید لایه های مختلفی در این تقسیم بندی وجود دارند که هر کدام در بر گیرنده پروتکل های مختلف ارتباطی در بخش های مختلف شبکه می شوند.

osi-layer

در لایه Application که لایه واسط بین بخش ارتباطی و نرم افزارهای مورد استفاده کاربران می باشد می توانیم پروتکل های زیر را که همگی به نوعی Application می باشند را مثال بزنیم:

FTP و HTTP و POP3 و IMAP و Telnet و SMTP و TFTP و SNMP و …

لایه بعدی یعنی لایه Presentation امکاناتی مانند فرمت فایل های مختلف، فشرده سازی و هم چنین Encryption را شامل می شود.

لایه بعدی Session می باشد که کنترل آغاز، ادامه یافتن و هم چنین اتمام ارتباط را بر عهده دارد. مانند پروتکل مورد استفاده در SQL Session

لایه بعدی یعنی Transport همان طور که از نامش مشخص می باشد پروتکل های مربوط به انتقال را پوشش می دهد این پروتکل ها می توانند شامل TCP و هم چنین UDP باشند.

لایه بعدی Network می باشد که پروتکل های ارتباطی در لایه سه که همان پروتکل های روتینگ می باشند را شامل می شود مانند IPv4 و IPv6 و هم چنین IPX و ARP و …

لایه بعدی یا همان لایه دو Data Link می باشد که دارای اهمیت بسیار بالایی در شبکه می باشد و در حقیقت علاوه بر در بر گرفتن پروتکل های لایه دو مانند LLC و همچنین MAC مکانیزم تعیین Encapsulation مناسب مورد نیاز با توجه به مدیا مورد استفاده در لایه بعد یعنی Physical را نیز پوشش می دهد.

لایه بعدی یعنی Physical مشخص کننده نوع ارتباط و هم چنین نوع مدیا جهت انتقال اطلاعات و مکانیزم تبدیل اطلاعات به بیت جهت انتقال بر روی شبکه و هم چنین تبدیل بیت ها به اطلاعات شبکه را در خود جای می دهد. از جمله پروتکل های مطرح در این لایه می توانیم به پروتکل های Ethernet و Token Ring و FDDI و هم چنین Frame Relay اشاره کنیم.

در نهایت اگر بخواهیم مقایسه ای بین مدل TCP/IP و OSI Layer داشته باشیم می توانیم مشاهده کنیم که نقاط مشترکی در تقسیم بندی این دو نوع استاندارد وجود دارد. زمانی که اطلاعات از یک لایه به لایه دیگر منتقل می شوند اطلاعاتی در ابتدا و یا انتهای بسته اطلاعاتی افزوده می شود که با عنوان Header و Trailer شناخته می شود. تا در نهایت با اضافه شدن اطلاعات کامل جهت انتقال آماده شوند. هر کدام از این مراحل باعث میشوند تا اطلاعات بصورت متفاوتی بر روی لایه OSI شناخته شوند. به این عمل Encapsulation میگوییم که در هر  مرحله با توجه به عملیاتی که بر روی اطلاعات انجام می گیرد نوع خاصی از Encapsulation را شامل خواهد شد.

همان طور که در شکل زیر مشاهده می نمائید اطلاعات با ورود به لایه Physical ابتدا بصورت Bit هستند و سپس با توجه به نوع مدیا مورد استفاده در انتقال و هم چنین مکانیزم Encapsulation مورد استفاده در لایه Data link یعنی در لایه دو Header و هم چنین Trailer به ابتدا و انتهای بسته اطلاعاتی اضافه شده و در این مرحله Frame ایجاد می گردد که مسئولیت آدرس دهی در لایه دو را نیز بر عهده خواهد داشت. در لایه بعدی با اضافه شدن Header مورد استفاده در آدرس دهی IP در لایه سه Packet ایجاد می شود و این بسته اطلاعاتی آماده ارسال به لایه بعدی یعنی Transport می باشد که در آن با استفاده از UDP و یا TCP و … نوع مکانیزم انتقال مشخص می گردد و Segment  تشکیل می گردد. در نهایت با ورود اطلاعات به سه لایه آخر که در تقسیم بندی کلی آن را به عنوان لایه Application می شناسیم یعنی لایه های Session ، Presentation و Application با توجه به پروتکل های مورد استفاده و هم چنین نوع Application مورد استفاده در نهایت Data ایجاد می گردد. و پس از انجام عملیات مورد نظر در نرم افزار دوباره همین مسیر به صورت عکس طی شده و تا انتقال بر روی مدیا بر روی شبکه که می تواند به صورت Wireless و یا Ethernet و یا هر نوع دیگری از ارتباط باشد منتقل و در مقصد دوباره همین مراحل طی می شود تا نرم افزار مربوطه در مقصد نیز امکان پردازش اطلاعات را به صورت مرحله به مرحله داشته باشد.

encapsulation

پس از معرفی این لایه ها حال می توانیم بگوییم با مطرح نمودن آدرس دهی IP، کدام لایه OSI مورد نظر ما می باشد. همان طور که اشاره کردیم آدرس دهی IP در لایه سه یا همان Network صورت می گیرد و مواردی هم چون روتینگ نیز در همین لایه صورت می گیرد.

از آن جا که نمایش آدرس های IP در حالت باینری بسیار طولانی و دشوار می باشد، تبدیل آن ها به صورت دسیمال کار را بسیار ساده و راحت می کند. به این صورت در معرفی و استفاده از آدرس IP می توانیم از سهولت بالاتری استفاده کنیم. به این حالت از نمایش آدرس IP حالت Dotted Decimal می گوئیم که همواره از آن جهت نمایش آدرس استفاده می کنیم اما محاسبات و تقسیم بندی های آدرس ها را همواره بر اساس نوع باینری آدرس IP  انجام می دهیم.

ipv4-dotted-decimal

آدرس های IP برای مدیریت بهتر استفاده بر اساس تعداد آدرس قابل ارائه و هم چنین نوع آن ها به کلاس های مختلفی تقسیم می شوند.

این کلاس ها با استفاده از Octet اول در یک آدرس قابل شناسایی می باشند. اگر بخواهیم آدرس را به صورت باینری نمایش دهیم آدرس هایی که بیت اول از Octet اول آن ها 0 می باشد کلاس A و آن هایی که بیت اول و دوم آن ها به 10 می باشد کلاس B و آن هایی که بیت اول و دوم و سوم آن ها 110 می باشد کلاس C می باشند هم چنین آن هایی که بیت اول و دوم و سوم و چهارم آن ها 1110 می باشد کلاس D که کلاس آدرس Multicast می باشد و آن هایی که بیت های اول تا چهارم آن ها به صورت 1111 می باشد کلاس E می باشد که در موارد خاص مورد استفاده قرار می گیرد و تعدادی از آن ها رزرو می باشد. نمونه این تقسیم بندی را در شکل زیر مشاهده می نمائید:

dotted-decimal-class

اما اگر بخواهیم به صورت دسیمال آن ها را نمایش دهیم آدرس هایی که Octet اول آن ها اعدادی بین 0 تا 126 می باشد کلاس A آن هایی که 128 تا 191 می باشد کلاس B آن هایی که 192 تا 223 می باشد کلاس C آن ها که 224 تا 239 می باشد کلاس D و آن هایی که 240 تا 255 می باشد کلاس E می باشد. نکته قابل توجه در این بخش این است که عدد 127 در بازه بالا مطرح نشد و آن بدلیل استفاده از این آدرس خاص به عنوان آدرس Loopback می باشد که در سیستم های مختلف به عنوان ارتباط داخلی خود سیستم مورد استفاده قرار می گیرد و استفاده های خاص دارد. نمونه ای از این تقسیم بندی را در شکل زیر مشاهده می نمائید:

binary-notation-class

 به این ترتیب با توجه به مواردی که به آنها اشاره کردیم می توانیم دسته بندی کلاس ها را بر اساس پیگیری اعداد بکار رفته در بیت ها از چپ به راست داشته باشیم. بر این اساس می توانیم بگوئیم اگر از چپ به راست شروع کنیم اگر عدد اول آدرس در باینری 0 باشد کلاس A خواهد بود اگر 1 و بعد 0 باشد کلاس B اگر 1 و سپس 1 و بعد از آن 0 باشد کلاس C اگر 1 و 1 و 1 و 0 داشته باشیم کلاس D و اگر 1و1و1و1 داشته باشیم کلاس E خواهیم داشت.

class-notations

در قسمت بعدی در مورد بخش های مختلف آدرس IP مانند Network ID و Host ID صحبت خواهیم نمود.

رای شما با موفقیت ثبت شد.

ثبت رای شما با پیغام خطا همراه بود.

دیدگاه های این مطلب

هیچ نظری ارسال نشده است.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *