فایروالها برای ساختن یک ریشه ی محکم و داشتن سیاست ها و استراتژیک های صحیح و اصولی در شبکه از لایه های OSI استفاده کرده اند.
لایه های مدل مرجع OSI
پشت سر هم بودن و نظم بسته های اطلاعاتی یا packet ها در شبکه بسیار مهم است به دلیل اینکه هر پروتکلی برای خود حداکثر اندازه ای برای بسته اطلاعاتی تعیین کرده است. برخی اوقات اندازه بسته اطلاعاتی از اندازه تعیین شده آن بیشتر می شود و به همنی دلیل داده ها به بسته های کوچکتری تقسیم می شوند و هر یک تشکیل یک بست هرا می دهند به اینکار به اصطلاح Fragment کردن می گویند .
لایه کاربردی یا Application Layer
بالاترین لایه در مدل مرجع OSI لایه کاربرد یا Application است . اولین نکته ای که در خصوص لایه کاربرد یا Application باید بدانید این است که به هیچ عنوان این لایه با نرم افزارهای کاربردی ارتباطی ندارد و صرفا یک تشابه اسمی است .در عوض این لایه محیطی را ایجاد میکند که نرم افزارهای کاربردی بتوانند از طریق آن با شبکه ارتباط برقرار کنند . برای اینکه درک بهتری از لایه کاربرد داشته باشید فرض کنید که یک کاربر با استفاده از نرم افزار Internet Explorer قصد دارد از طریق پروتکل FTP یک فایل را در شبکه منتقل کند . در این مورد لایه کاربرد به وظیفه برقراری ارتباط با پروتکل FTP برای انتقال فایل را بر عهده دارد . این پروتکل بصورت مستقیم برای کاربران قابل دسترسی نیست ، کاربر بایستی با استفاده از یک نرم افزار رابط مانند Internet Explorer برای برقراری ارتباط با پروتکل مورد نظر استفاده کند . بصورت خلاصه در تعریف کارایی این لایه می توان گفت که این لایه رابط بین کاربر و شبکه است و تنها قسمتی از این مدل هفت لایه ای است که کاربر تا حدی می تواند با آن ارتباط برقرار کند .
لایه نمایش یا Presentation
فعالیت لایه نمایش یا Presentation تا حدی پیچیده است اما همه کارهایی که این لایه انجام می دهد را میتوان در یک جمله خلاصه کرد ، لایه نمایش اطلاعات را از لایه کاربرد دریافت میکند و در قالبی در می آورد که برای لایه های پایینتر قابل درک باشد . همچنین برعکس این عمل را نیز انجام میدهد یعنی زمانی که اطلاعاتی از لایه نشست یا Session به این لایه وارد می شود ، این اطلاعات را به گونه ای تبدیل می کند که لایه کاربرد بتواند آنها را درک کرده و متوجه شود . دلیل اهمیت این لایه این است که نرم افزارهای اطلاعات را به شیوه ها و اشکال مختلفی نسبت به یکدیگر بر روی شبکه ارسال می کنند . برای اینکه ارتباطات در سطح شبکه ها بتوانند برقرار شوند و به درستی برقرار شوند شما بایستی اطلاعات را به گونه ای ساختاردهی کنید که برای همه انواع شبکه ها استاندارد و قابل فهم باشد. بطور خلاصه وظیفه اصلی این لایه قالب بندی اطلاعات یا Formatting اطلاعات است . معمولا فعالیت هایی نظیر رمزنگاری و فشرده سازی از وظایف اصلی این لایه محصوب می شود .
لایه نشست یا جلسه یا Session
وقتی داده ها به شکلی قابل درک برای ارسال توسط شبکه در آمدند ، ماشین ارسال کننده بایستی یک Session با ماشین مقصد ایجاد کند . منظور از Session دقیقا شبیه ارتباطی است که از طریق تلفن انجام می شود ، شما برای ارسال اطلاعات از طریق تلفن حتما بایستی با شخص مورد نظرتان تماس برقرار کنید .اینجا زمانی است که لایه نشست وارد کار می شود ، این لایه وظیفه ایجاد ، مدیریت و نگهداری و در نهایت خاتمه یک Session را با کامپیوتر مقصد بر عهده دارد .نکته جالب در خصوص لایه نشست این است که بیشتر با لایه کاربرد مرتبط است تا لایه فیزیکی ، شاید فکر کنید که بیشتر Session ها بین سخت افزارهای و از طریق لینک های شبکه ایجاد می شوند اما در اصل این نرم افزارهای کاربردی هستند که برای خود Session با نرم افزار مقصد ایجاد میکنند . اگر کاربری از تعدادی نرم افزار کاربردی استفاده میکند ، هر کدام از این نرم افزاها به خودی خود می توانند یک Session با نرم افزار مقصد خود برقرار کنند که هر کدام از این Session ها برای خود یک سری منابع منحصر به فرد دارد.
لایه انتقال یا Transport
لایه انتقال وظیفه نگهداری و کنترل ریزش اطلاعات یا Flow Control را بر عهده دارد . اگر به خاطر داشته باشید سیستم عامل ویندوز به شما این اجازه را میدهد که همزمان از چنیدن نرم افزار استفاده کنید . خوب همین کار در شبکه نیز ممکن است رخ بدهد ، چندین نرم افزار بر روی سیستم عامل تصمیم میگیرند که بصورت همزمان بر روی شبکه اطلاعات خود را منتقل کنند . لایه انتقال اطلاعات مربوط به هر نرم افزار در سیستم عامل را دریافت و آنها را در قالب یک رشته تکی در می آورد . همچنین این لایه وظیفه کنترل خطا و همچنین تصحیح خطا در هنگام ارسال اطلاعات بر روی شبکه را نیز بر عهده دارد . بصورت خلاصه وظیفه لایه انتقال این است که از رسیدن درست اطلاعات از مبدا به مقصد اطمینان حاصل کند ، انواع پروتکل های اتصال گرا یا Connection Oriented و غیر اتصال گرا Connection Less در این لایه فعالیت میکنند .
لایه شبکه یا Network
وظیفه لایه شبکه این است که چگونگی رسیدن داده ها به مقصد را تعیین کند . این لایه وظایفی از قبیل آدرس دهی ، مسیریابی و پروتکل های منطقی را عهده دار است . بیشتر مخاطبین این مقاله افراد تازه وارد به دنیای شبکه هستند پس من هم وارد جزئیات فنی این لایه نمی شوم ، اما به شما می گویم که لایه شبکه مسیرهای منطقی یا Logical Path بین مبدا و مقصد ایجاد میکند که به اصطلاح مدارهای مجازی یا Virtual Circuits نامگذاری می شوند ، این مدارها باعث میشن که هر بسته اطلاعاتی بتواند راهی برای رسیدن به مقصدش پیدا کند . لایه شبکه همچنین وظیفه مدیریت خطا در لایه خود ، ترتیب دهی بسته های اطلاعاتی و کنترل ازدهام را نیز بر عهده دارد .ترتیب بسته های اطلاعاتی بسیار مهم است زیرا هر پروتکلی برای خود یک حداکثر اندازه بسته اطلاعاتی تعریف کرده است . برخی اوقات پیش می آید که بسته های اطلاعاتی از این حجم تعریف شده بیشتر می شوند و به ناچار اینگونه بسته های به بسته های کوچکتری تقسیم می شوند و برای هر کدام از این بسته های اطلاعاتی یک نوبت یا Sequence داده می شود که معلوم شود کدام بسته اول است و کدام بسته دوم و .... به این عدد به اصطلاح Sequence Number هم گفته می شود .
وقتی بسته های اطلاعاتی در مقصد دریافت شدند ، در لایه شبکه این Sequence Number ها چک می شود و به وسیله همین Sequence Number است که اطلاعات به حالت اولیه باز میگردند و تبدیل به اطلاعات اولیه می شوند . در صورتیکه یکی از این بسته های به درستی دریافت نشود در همان لایه شبکه از طریق چک کردن این عدد مشخص می شود که کدام بسته اطلاعاتی دریافت نشده است و طبیعتا مجددا در خواست داده می شود .
اگر درک این مطلب کمی برایتان دشوار است تصور کنید که قرار است برای یکی از دوستانتان یک نامه بلند بالا بنویسید ، اما کاغذ به اندازه کافی ظرفیت برای درج مطالب شما ندارد ، خوب شما میتواندی چندین کاغد را استفاده کرده و متن خود را در قالب جندین نامه بنویسید و برای هر کدام از صفحات نامه شماره صفجه بگذارید ، بعد از اینکه نامه در مقصد به دوستتان رسید با استفاده از شماره صفحه ها میتواند نامه را به ترتیب خوانده و اطلاعات را به درستی دریافت کند . این دقیقا همان کاری است که لایه شبکه انجام می دهد .