آشنایی با و مدل TCPIP و وظیفه لایه اپلیکیشن (Applicaion) در این مدل
مدل TCPIPمخفف کلمات Transmission Control Protocol / Internet Protocol است که به عنوان یک پشته یا استک از پروتکل ها شناخته میشود و معادلی برای OSI میباشد. در حقیقت TCPIP قبل از OSI ریلیز شده است.
آنچه در این مقاله می خوانید:
تفاوت مدل TCPIP و OSI
اگر به خاطر داشته باشید در آموزش قبلی، لایه های مدل را با هم بررسی کردیم که دارای هفت لایه بود و وظایف هر کدام را نیز برای شما توضیح دادیم. به طور خلاصه میتوان گفت OSI در اصل یک مدل مرجع برای استفاده کننده های شبکه و همچنین شرکت ها و کمپانی هایی است که در زمینه شبکه به صورت نرم افزاری یا سخت افزاری فعالیت می کنند و برای هماهنگی تولیدات شان باید از این استاندارد هفت لایه تبعیت کنند.
اما TCPIPدر اصل مجموعه ای از پروتکل هاست که در شبکه از آنها استفاده میکنیم و تفاوت اصلی آن با OSI هم در همین است. این پروتکل ها از پیش تعریف شده هستند و به همین علت به آن پروتکل SAC می گوییم که مجموعه ای از پروتکل ها است که در ۴ لایه تعریف میشوند و کانکشن end to end یا مقصد به مبدا را برای ما برقرار می کنند.
مقایسه لایه های مدل TCPIP و OSI
لایه های osi به ترتیب عبارتند از:
- فیزیکال (Physical)
- دیتالینک (Data Link)
- نتورک (Network)
- ترانسپورت(Transport)
- سژن (Session)
- پرزنتیشن (Presentation)
- اپلیکیشن (Application)
که در مدل TCPIP به چهار لایه معادل تبدیل شدهاند:
- لایه اول نتورک اکسس (Network Access) یا لینک لیر (Link Layer)
- لایه دوم اینترنت (Internet)
- لایه سوم هاست تو هاست (Host to Host)
- لایه چهارم اپلیکیشن(Application)
طبق تصویری که مشاهده می کنید معادل لایه ها در هر دو مدل به ترتیب زیر است:
- لایه نتورک اکسس(Network Access) در مدل TCPIP معادل لایه های فیزیکال (Physical) و دیتالینک (DataLink) در لایه OSI
- لایه اینترنت (Internet) در مدل TCPIP معادل لایه نتورک(Network) در لایه OSI
- لایه هاست تو هاست(Host to Host) معادل لایه ترانسپورت (Transport)
- لایه اپلیکیشن (Application) معادل لایه های سژن (Session)، پرزنتیشن (Presentation)و اپلیکیشن (Application) در مدل OSI
پروتکل هایی که در هر ۴ لایه کار می کنند، در حقیقت همان وظایفی که در مدل OSI در لایه های معادل برای شما توضیح داده ایم، را دارند. این پروتکل ها در حقیقت نشان می دهد که:
- اطلاعات چگونه باید پکت بندی شده و آدرس بگیرند ،
- در شبکه وارد شوند ،
- به داخل شبکه انتقال داده شده و مسیریابی شوند ،
- چطور دریافت شده و در مقصد اسمبل شوند تا در نهایت اطلاعات ورود مبدا به مقصد را داشته باشیم.
مزایای مدل TCPIP
رایگان
مهمترین مزیت مدل TCPIPاین است که طبیعت پروتکل یا پشته پروتکل آن، باز است یعنی شما هزینهای برای استفاده از مدل TCPIP پرداخت نمی کنید.
انعطاف پذیر
دومین مزیت، Flexible بودن یا قابل انعطاف بودن آن است یعنی بر روی هر نوع پلتفرم و سیستم عاملی قابل اجراست. به عنوان مثال، اگر محصولاتی از شرکت های مختلفی مثل سیسکو، مایکروسافت، لینوکس و غیره یا حتی سیستم عامل های مختلفی مثل لینوکس یا ویندوز استفاده می کنید، در هر صورت مدل TCPIP با همه این سیستم عامل ها سازگاری دارد.
بنابراین، اگر هرکدام از آنها از مدل TCPIP استفاده کنند میتوانند اطلاعات را بر اساس پروتکلهای مدل TCPIP در شبکه ارسال کنند و مقصد نیز با هر کدام از شرکتهای دیگر ست باشد میتواند اطلاعات را دریافت کرده و هماهنگ با فرستنده کار کند.
قابل استفاده در هر مقیاسی
مدل TCPIP به نحوی طراحی شده که هم برای شبکههای کوچک و هم برای شبکههای بزرگ و حتی جهانی کاملاً مناسب باشد. این نوع پروتکل با همه نوع شبکه ای سازگار است و میتواند اطلاعات را بر اساس پروتکل های مختلفی، داخل لایه های خود انتقال دهد.
وظایف لایههای پروتکل مدل TCPIP
با توجه به اینکه پیش از این با وظایف لایه های osi به طور کامل آشنا شدید لایه های مدل TCPIP را هم بر همان اساس از لایه چهارم که اپلیکیشن باشد شروع کرده و وظایف آن را توضیح می دهیم.
لایه اپلیکیشن (Application)
لایه اپلیکیشن در پروتکل مدل TCPIP ترکیبی از سه لایه سیژن (Session)، پرزنتیشن (Presentation) و اپلیکیشن (Application) در مدل osi است. یعنی همان کارهایی که در این سه لایه در مدل osi انجام میشد، در لایه اپلیکیشن مدل TCPIP انجام می شود.
دیتا و اطلاعاتی که در این لایه ساخته میشوند و برای لایه های پایین تر از خودش ارسال میشود، Massage یا پیام نام دارد. پروتکل های مختلفی مثل Http، اف تی پی (FTP)، اس ام تی پی(SMTP) و غیره در این لایه کار می کنند.
لایه اپلیکیشن (Application) رابط بین کاربر و نرمافزار است. در این لایه، پروتکل های مختلفی داریم که چند نمونه مهم از آنها را مورد بررسی قرار می دهیم.
پروتکلHttp (Hyper Text Transfer Protocol)
این پروتکل برای باز کردن صفحات وب و نمایش هایی هایپرلینک هایی که داخل آنها به کار رفته، استفاده می شود. اگر صفحه وب را باز کنید، در واقع شامل تعدادی متن و تصویر و لینک های مختلف است که دلیل نامگذاری این پروتکل به Http نیز همین مسئله است. یعنی پروتکل انتقال فرامتنی که به جز متن، برای انتقال تصویر و سایر موارد این چنینی موجود در صفحات وب و پارامترهای مهم دیگری مثل هایپرلینک نیز که داخل آن وجود دارد، مورد استفاده قرار می گیرد.
درحقیقت، با کلیک روی هر هایپرلینک، شما می توانید به یک صفحه دیگر وصل شده و اطلاعات مشابه دیگری که داخل آن صفحه وجود دارد و می توان داخل شبکه از آن ها استفاده کرد، را ببینید.
زمانی که شما مرورگر هایی مثل اینترنت اکسپلورر، گوگل کروم یا فایرفاکس باز می کنید، این مرورگرها، از طریق پروتکل http در لایه اپلیکیشن، این اطلاعاتی که از شبکه رسیده را باز کرده و یا برعکس آن را ارسال می کنند و به این شکل شما می توانید ارتباط کاربر با نرم افزار داخل شبکه را حس کنید.
پروتکلssl (Secure Sockets Layer)
البته پروتکل دیگری نیز به اسم Https نیز وجود دارد که s آخر آن نشانه secure بودن یا امن بودن است. به این پروتکل، ssl گفته می شود به دلیل اینکه هایپر تکست هایی که در این صفحات جابجا می شوند، به صورت امن در شبکه انتقال داده میشود که در اصل توسط یک سری سریتیفیکیشن ها تضمین می شوند.
این سرتیفیکیشن، در شبکه برای شما این قابلیت را بوجود می آورند که امنیت صفحه ارسال یا دریافت شده و امنیت اطلاعات داخل آن را و همچنین امنیت انتقال آنها روی خط را تضمین کنید.
معمولا وقتی از https استفاده می شود، امکان هک شدن آن صفحه کمتر است، امکان اینکه صفحه ای که باز می کنید Fake باشد یا شبیه به صفحه اصلی باشد، بسیار کمتر است و بنابراین، شما یک خط امن را برای انتقال اطلاعات از طریق پروتکل خواهید داشت.
پروتکلFTP (File Transfer Protocol)
پروتکل FTP، یک پروتکل ساده است که البته شکل های مختلفی دارد که وظیفه آن انتقال اطلاعات و فایل ها به صورت هاست تو هاست یا همان هاست تو سرور است. تفاوت آن با Http در این است که در Http صفحات وب، هایپر تکست و هایپرلینک را دارید در حالی که در اف تی پی منحصراً انتقال اطلاعات بین یک سرور با یک کامپیوتر یا دو هاست با همدیگر استفاده می شود و سرعت بهتری دارد و دردسرهای اچتیتیپی در آن وجود ندارد.
- مزایای FTP نسبت به Http
وقتی می خواهید فایلی را داخل Http جابجا کنید، متوجه می شوید که سرعت ارسال یا انتقال اطلاعات و دریافت آنها مقداری کمتر است و یک سری مشکلات در آن وجود دارد اما FTP به این علت که به طور اختصاصی برای انتقال اطلاعات بین مقصد و مبدا در نظر گرفته شده این وضعیت را برای کاربر ساده تر می کند.
یکی از مشکلاتی که کاربران در Http دارند این است که نمیتوان به راحتی از آن برای انتقال فایل های بسیار بزرگ استفاده کرد که دردسرساز میشود اما FTP این قابلیت را دارد که فایل های بزرگ و اطلاعات با حجم بالا را برای شما جابهجا کند. بنابراین، قابلیت های منحصر به فردی نسبت به Http به شما میدهد.
پروتکلSMTP (Simple Mail Transfer Protocol)
این پروتکل برای ارسال ایمیل در شبکه استفاده می شود. زمانی که کاربر قصد دارد ایمیل بفرستید، از طریق این نوع پروتکل و یک Agent به نام MTA یا Mail Transfer Agent که اصطلاحاً یک رابط است، اطلاعات ایمیل کاربر انتقال داده میشود و به یک میل سرور میرود که سرویس میلینگ را ارائه میکند و از آنجا به مقصد نهایی ارائه می شود.
البته سرویس ارسال ایمیل را تحت پروتکل http هم میتوان انجام داد. به عنوان مثال در سایت هایی مثل Gmail یا Outlook هم می توان وارد شد و یک ایمیل ساخت و اطلاعاتی را با آن ارسال یا دریافت کرد داد. این سایت ها ممکن است در پس زمینه از پروتکل SMTP یا پروتکل های دیگری استفاده کنند.
برنامه هایی نیز مثل Outlook وجود دارد که شرکت مایکروسافت آن را را ارائه کرده و جزو مجموعه آفیس است و ما برای ارسال ایمیل از آن استفاده می کنیم که داخل آن، صفحات وب را نداریم و کاربر فقط آدرس ایمیل خود و آدرس گیرنده را وارد می کند، متن و جزئیات را به آن اضافه میکند و در نهایت آن را ارسال می کند.
البته پروتکل SMTP فقط برای ارسال اطلاعات ایمیل استفاده می شود، نه برای دریافت آن. برای دریافت ایمیل ها، از پروتکل های دیگری مثل IMAP و POP استفاده می شود که کار آنها با SMTP متفاوت است و کار فرستادن را انجام نمیدهند و فقط گیرنده هستند.
- پروتکل IMAP
در پروتکل imap ، تمامی ایمیل هایی که برای کاربر رسیده در یک میل سرور نگهداری میشود. مثل یاهو که یک میل سرور و یک فضایی دارد که ایمیل ها را برای کاربر نگهداری می کند و هر زمان که کاربر به آن نیاز داشته باشد میتواند به آنها دسترسی داشته باشد.
- پروتکل POP , POP3
نوع دیگری از رسیدن اطلاعات یا ایمیل ها از طریق پروتکل پاپ انجام می شود. وقتی از POP3 استفاده میکنید، تمام ایمیل ها از سرور به کامپیوتر میآید، بارگذاری شده و حتی اگر اینترنت قطع شود، کاربر به ایمیلها دسترسی دارد چون تمام آنها داخل کامپیوتر بارگذاری شده است.
هر کدام از این دو پروتکل POP3 و IMAP ، یک سری مزایا و معایبی دارند اما در حالت کلی، POP3 برای مواقعی که دسترسی شما به میل سرور مشکل باشد، مناسب است چون یک بار ایمیل ها را داخل کامپیوتر لود می کند و اگر ایمیل جدیدی بیاید، دوباره تمامی ایمیل ها را بررسی و جدید ها را به قبلی ها اضافه میکند.
اما در فرم Imap نیاز به فضایی زیادی در کامپیوتر وجود ندارد. هر کدام از ایمیل هایی که مدنظر کاربر است را باز میکند، آن را بارگذاری می کند و بقیه را داخل همان میل سرور میگذارد و کاربر فقط لیست آن را می بیند. بیشتر میل سرور هایی که کاربر از آن استفاده میکند، از پروتکل IMAP برای دریافت اطلاعات استفاده می کنند.
پروتکلDNS (Domain Name System)
این پروتکل، برای ترجمه اسم هاست های داخل شبکه و IP Address های آن به کار میرود. به عنوان مثال، در گوشی تلفن شما تعداد زیادی شماره وجود دارد که ذخیره کردن آن تعداد بالا در ذهن به صورت شماره ای کار سختی است. همین وضعیت در اینترنت نیز وجود دارد. چون در اینترنت تمامی آدرس ها، به شکل Ip address ثبت میشود، بنابراین، نیاز است که این IP Address ها را در کامپیوترتان داشته باشید تا بتوانید به آنها دسترسی داشته باشید.
اما استفاده از شکل IP Address کار سختی است پس برای تمام کامپیوتر ها و سرور هایی که در اینترنت در حال دادن یا گرفتن سرویس هستند، اسمهایی میگذارند. دقیقاً مانند کاری که شما در دفترچه تلفن گوشی تلفن خود انجام می دهید.
در dns نیز به ازای هر IP Address یک اسم تعریف می کنید و اگر قرار باشد به این اسم وصل شوید باید از این IP Address استفاده کنید. پس کار تبدیل اسامی به IP Address و بلعکس را DNS انجام می دهد.
این سرویس روی یک سرور یا یکی از کامپیوترهای داخل شبکه نصب می شود و این اسامی در آن تعریف شده، IP Address های شان مشخص میشود و بعد برای دسترسی به هاست های داخل شبکه، کافیست فقط آدرس آنها را وارد کنید تا به صورت اتوماتیک به IP Address مورد نظر وصل شوید.
یا به عنوان مثال، در شبکه اینترنت، مهمترین مسئلهای که شما میتوانید DNS را ببینید، همان url یا Uniform Resource Identifier است و همان آدرسی است که در قسمت آدرس بار وارد می کنید تا وارد یک سایت یا یک صفحه اینترنتی شوید.
در دوره های بالاتر مثل مایکروسافت، پیکربندی DNS را کاملاً به شما آموزش می دهیم که نوع فرمت، نوع اسامی استفاده شده و مسائل مربوط به آن را که به عنوان یک دوره مایکروسافت آموزش داده میشود، مطرح خواهد شد.
پروتکلTelNet (Domain Name System)
پروتکل TelNet وقتی می خواهید از راه دور به یک کامپیوتر یا یک سرور وصل شوید و تنظیمات یا تغییراتی انجام دهید، به کمک شما می آید. به طور کلی، هر نوع کار مدیریتی داشته باشید که به کنترل از راه دور نیاز داشته باشید، این پروتکل یک کامند پرامپت (Command Prompt) را در اختیار شما قرار می دهد تا از طریق یک خط ارتباطی راه دور بتوانید با ریموت به کامپیوتر مورد نظر در راه دور وصل شده و کنترل کامپیوتر را به دست بگیرید. وقتی که از طریق این پروتکل به کامپیوتر وصل می شوید، در این Command prompt که در اختیار شما قرار می گیرد، با تایپ کردن دستورات مختلف می توانید انواع عملیات مدیریتی و روی آن کامپیوتر سرور و یا هر وسیله دیگری انجام دهید.
برنامه ها یا Agent های مختلفی هستند که میتوانید برای TelNet کردن از آنها استفاده کنید و با استفاده از برنامه هایی مثل PuTTY یا Secure CRT که توان کنترل سرور از طریق ریموت را در اختیار شما قرار می دهند می توانید تغییرات و تنظیمات مورد نظرتان را در سرور مربوطه انجام دهید.
پروتکلSsh (Secure Shell Name System)
کار این پروتکل مثل TelNet، ریموت کردن به یک سرور ولی به شکل encrypted یا امن است. تفاوت این دو پروتکل این است که TelNet یک شکل ساده دارد بدون اینکه کد نگاری شود و یک مقدار از نظر امنیتی برای شبکه هایی که امنیت برای آنها مهم است، مناسب نیست.
ولی SSH اطلاعات را اینکریپشن یا کد نگاری میکند سپس روی خط می فرستد و در نهایت در مقصد هم این کد را با استفاده از الگوریتمی که تعیین شده، باز میکند و این توان را در اختیار شما قرار می دهد که بتوانید یک ریموت یا کنترل از راه دور امن داشته باشید.
پروتکل DHCP (Dynamic Host Configuration Protocol)
وظیفه پروتکل DHCP، دادن IP Address به صورت داینامیک و اتوماتیک به دیوایس ها و دستگاه هایی است که داخل شبکه کار می کنند. همانطور که پیش از این گفتیم، زمانیکه وارد یک شبکه می شوید باید حتماً یک IP Address داشته باشید. به غیر از مک آدرس که آدرس سختافزاری هر دستگاه است، برای آدرس دهی بین کامپیوترها، شما باید از IP Address هم استفاده میکردید.
- آی پی استاتیک (IP Static) چیست؟
وقتی وارد شبکه می شوید، یک هماهنگ کننده در داخل شبکه وجود دارد، با توجه به سیاستهای از قبل طراحی شده به عنوان مثال، آی پی های ۱ تا ۸ را به کامپیوترهای موجود اختصاص میدهد و آی پی ۹ تا وقتی داخل شبکه هستید، متعلق به شماست و به محض اینکه از شبکه بیرون بیایید، آی پی از شما گرفته می شود. این شکل از آی پی، که به صورت دستی به شما به این فرم ثابت، اختصاص داده میشود، آی پی استاتیک نام دارد.
- آی پی داینامیک (IP dynamic) چیست؟
برای اختصاص دادن آی پی داینامیک، یک سرور، کانفیگ می شود که به نحوی تنظیم شده تا یک Pool یا یک رنج آی پی مثلاً از آی پی ۱ تا ۱۰۰ در آن قرار می گیرد. به این ترتیب، هر دستگاهی که داخل این شبکه وارد شد، هر کدام از آی پیهای این رنج که آزاد بود، باید به کامپیوتر تازه وارد اختصاص داده شود.
- تفاوت IP Static و IP Dynamic
خود این سرور، تنظیماتی دارد که در یک رشته جداگانه ای در دوره مایکروسافت یا دوره سیسکو آموزش داده می شود. تفاوت اصلی آن با شکل استاتیک این است که کاربر استاتیک، تا وقتی در شبکه فعالیت می کند و حتی در آینده اگر از شبکه جدا شده و مجددا متصل شود، آن آی پی مشخص، به او اختصاص دارد.
ولی در حالت داینامیک، فقط تا زمانی که کاربر به شبکه وصل است، یک آی پی به او اختصاص می یابد و یک زمان اجاره برای کاربر در نظر گرفته شده که فقط در یک ساعت مشخص، آی پی متعلق به آن کاربر باشد که این آی پی در صورت جدا شدن کاربر از شبکه و بازگشت مجدد به شبکه، تغییر میکند و آن آی پی را به کاربر دیگر یا کامپیوتر تازه وارد می دهد. پس هر IP خالی داشته باشد، به کاربری که بازگشت مجدد داشته، اختصاص میدهد. در حالت داینامیک، آی پی مدام در حال رفت و آمد است.
پروتکل SNMP (Simple Network Management Protocol)
پروتکل ساده مدیریت شبکه، برای نظارت و مدیریت روی تجهیزات سخت افزاری شبکه و دریافت اطلاعات آماری از آن استفاده می شود. به عنوان مثال، در ویندوز با فعال کردن این پروتکل میتوانید از نرمافزارهای مانیتورینگ برای کنترل ترافیک و بررسی ورودی اطلاعات آماری مثل زمان روشن بودن سیستم، وضعیت خاموش و روشن کردن و غیره استفاده کنید.
پروتکل های بسیار زیادی در لایه اول مدل TCPIP مورد استفاده قرار می گیرد که در این مبحث آموزشی به چند مورد از مهمترین آنها اشاره کردیم تا دید بهتری نسبت به عملکرد لایه اپلیکیشن داشته باشید و با پروتکل های اصلی مورد استفاده در این لایه آشنا شوید. در آموزش های بعدی، سایر لایه های مدل TCPIP را نیز بررسی خواهیم کرد.
دیدگاه شما درباره این مقاله چیست ؟