موضوع مقاله: شبکه تحویل برنامه | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # شبکه تحویل برنامه | مقدمه: یک شبکه تحویل برنامه (ADN) مجموعه فناوری‌هایی است که وقتی در کنار هم مستقر می‌شوند، قابلیت دسترسی، امنیت، دید و شتاب برنامه را فراهم می‌کنند. | ## بخش 1: شبکه تحویل برنامه | گارتنر شبکه تحویل برنامه را به عنوان ترکیبی از کنترل‌کننده‌های بهینه‌سازی WAN یا همان WOCs و کنترل‌کننده‌های تحویل برنامه (ADC) تعریف می‌کند. در انتهای مرکز داده ADN ، کنترل‌کننده تحویل برنامه، یک دستگاه مدیریت ترافیک پیشرفته است که غالباً به آن سوئیچ وب، سوئیچ محتوا یا سوئیچ چند لایه نیز گفته می‌شود، هدف آن توزیع ترافیک بین تعدادی از سرورها است. ADC، یکی از اجزای یک ADN است که در اواخر دهه ۱۹۹۰، زمانی که مشخص شد تکنیک‌های سنتی متعادل سازی بار به اندازه کافی قوی نیستند تا بتوانند از ترکیبات فزاینده ای که از ترافیک برنامه ای که از طریق طیف گسترده‌تری از گزینه‌های اتصال شبکه تحویل داده می‌شوند، استفاده کنند، از سوئیچ‌های لایه ۴–۷ تکامل یافت. شبکه تحویل برنامه (ADN) با بکارگیری تعدادی از تکنیک‌های بهینه‌سازی، تحویل برنامه‌ها را از طریق اینترنت افزایش می‌دهد. تفاوت بین دو شبکه تحویل در هوشمندی ADN برای درک و بهینه‌سازی برنامه‌ها، معمولاً به عنوان تسلط برنامه کاربردی نامیده می‌شود. نرم‌افزار تسلط به این معنی است که شبکه در درک و توانایی در بهینه‌سازی تحویل هر برنامه، روان یا هوشمند است. تحویل برنامه از یک یا چند سوئیچ‌های لایه ۴–۷ استفاده می‌کند، همچنین به عنوان سوئیچ وب، سوئیچ محتوا یا سوئیچ چند لایه برای توزیع هوشمند ترافیک در استخر، که به عنوان خوشه یا مزرعه از سرورها نیز شناخته می‌شود، شناخته می‌شود. به کنترل‌کننده تحویل برنامه (ADC) یک آدرس IP مجازی (VIP) اختصاص داده می‌شود که نمایانگر مجموعه سرورها است. ترافیک ورودی به ADC بر اساس تعدادی از فاکتورها از جمله مقادیر داده خاص برنامه، پروتکل حمل و نقل برنامه، در دسترس بودن سرورها، معیارهای عملکرد فعلی و پارامترهای خاص مشتری به یکی از سرورهای موجود در استخر (خوشه، مزرعه) هدایت می‌شود. ADN مزایای توزیع بار، افزایش ظرفیت سرورها، بهبود مقیاس پذیری، امنیت و افزایش قابلیت اطمینان را از طریق بررسی‌های بهداشتی خاص برنامه فراهم می‌کند. ADN به‌طور فزاینده ای شامل یک جفت ADC زائد است که در آن تعدادی مجموعه ویژگی مختلف برای ایجاد امنیت، در دسترس بودن، قابلیت اطمینان و شتابدهی طراحی شده‌است. در برخی موارد، این دستگاه‌ها هنوز موجودیت‌های جداگانه ای هستند که به عنوان شبکه ای از دستگاه‌ها که از طریق آنها ترافیک برنامه ارائه می‌شود، در کنار هم مستقر می‌شوند و هرکدام عملکرد خاصی را ارائه می‌دهند که تحویل برنامه را افزایش می‌دهد. ADC تعدادی اتصال به سرورهای موجود در استخر خود برقرار می‌کند و اتصالات را باز نگه می‌دارد. هنگامی که درخواستی توسط ADC از مشتری دریافت می‌شود، درخواست ارزیابی می‌شود و سپس از طریق اتصال موجود به یک سرور هدایت می‌شود. این تأثیر در کاهش هزینه‌های اضافی تحمیل شده با ایجاد و از بین بردن اتصال TCP با سرور، بهبود پاسخگویی برنامه است. | ## بخش 2: شبکه تحویل برنامه | برخی از پیاده‌سازی‌های ADN این تکنیک را یک گام جلوتر می‌برند و همچنین درخواست‌های برنامه HTTP و برنامه‌های چندگانه را انجام می‌دهند. بسیاری از ADN این RFCها را پیاده‌سازی می‌کنند تا بتوانند از طریق استفاده کارآمدتر از TCP، تحویل برنامه‌ها را افزایش دهند. امروزه دو نوع فشرده سازی توسط ADNها مورد استفاده قرار می‌گیرد: الگوریتم‌های استاندارد فشرده سازی HTTP صنعت و کاهش داده‌های اختصاصی. توجه به این نکته مهم است که هزینه در چرخه‌های پردازنده برای فشرده سازی داده‌ها هنگام عبور از یک LAN می‌تواند بر عملکرد منفی تأثیر بگذارد و بنابراین بهترین روش‌ها استفاده از فشرده سازی هنگام تحویل برنامه‌ها از طریق WAN یا به ویژه پیوند داده‌های پرسرعت متراکم است. از آنجا که این الگوریتم‌ها اختصاصی هستند و میزان ترافیک برنامه را تغییر می‌دهند، قرینه هستند و قبل از اینکه مشتری بتواند آن را دریافت کند، به دستگاهی نیاز دارد تا ترافیک برنامه را دوباره جمع کند. تکنیک‌های در دسترس بودن و قابلیت اطمینان ADN بررسی پیشرفته سلامت بررسی پیشرفته سلامت توانایی ADN در تعیین نه تنها وضعیت سروری است که یک برنامه بر روی آن میزبانی می‌شود، بلکه وضعیت برنامه ای را که ارائه می‌دهد تعیین می‌کند. تکنیک‌های پیشرفته بررسی سلامت به ADC اجازه می‌دهد تا هوشمندانه تعیین کند که آیا محتوای برگشتی توسط سرور صحیح است یا خیر یا باید به مشتری تحویل داده شود. این ویژگی قابلیت‌های دیگر قابلیت اطمینان در ADN را امکان‌پذیر می‌کند، مانند ارسال مجدد درخواست به سرور دیگری اگر محتویات برگشتی توسط سرور اصلی اشتباه تشخیص داده شود. الگوریتم‌های تعادل بار الگوریتم‌های متعادل کننده بار که در ADN امروزی یافت می‌شوند بسیار پیشرفته تر از الگوریتم‌های ساده گردشی و کمترین اتصالات مورد استفاده در اوایل دهه ۱۹۹۰ هستند. این الگوریتم‌ها در اصل مبتنی بر الگوریتم‌های زمان‌بندی سیستم عامل‌ها بوده‌اند، اما از آن زمان به بعد در شرایط خاص شبکه‌ها و برنامه‌های کاربردی تبدیل شده‌اند. دقیق تر توصیف الگوریتم‌های «تعادل بار» امروزه به عنوان الگوریتم‌های مسیریابی برنامه، زیرا بیشتر ADN از آگاهی از برنامه استفاده می‌کنند تا مشخص کنند آیا برنامه ای برای پاسخگویی به درخواست در دسترس است. این شامل توانایی ADN در تعیین نه تنها برنامه در دسترس بودن است، بلکه اینکه آیا برنامه می‌تواند در پارامترهای مشخص شده به درخواست پاسخ دهد، که اغلب به عنوان توافق‌نامه سطح خدمات شناخته می‌شود. الگوریتم‌های استاندارد تعادل بار استاندارد صنعت که امروزه موجود است شامل موارد زیر است: درخواست کتبی حداقل اتصالات سریعترین زمان پاسخ دور رابین وزن دار حداقل ارتباطات وزنی مقادیر سفارشی اختصاص داده شده به سرورهای فردی در یک مجموعه بر اساس SNMP یا مکانیسم ارتباطی دیگر تحمل خطا ADN تحمل خطا را در سطح سرور، در استخرها یا مزارع فراهم می‌کند. این تضمین می‌کند که در صورت خرابی یک دستگاه، ترافیک به جریان خود ادامه می‌دهند، در نتیجه تحمل خطا را برای برنامه‌ها فراهم می‌کند. در صورت از دست دادن ضربان قلب، دستگاه ثانویه VIP مشترک را فرض می‌کند و درخواست‌های سرویس را شروع می‌کند. | ## بخش 3: شبکه تحویل برنامه | این فرایند فوری نیست و اگرچه بیشتر جلسات ADN از دوره ابتدایی به دوره متوسطه تکرار می‌شوند، اما هیچ راهی برای تضمین حفظ جلسات آغاز شده در مدت زمان طولانی برای تصدی VIP و شروع مدیریت ترافیک وجود ندارد. شکست مبتنی بر سریال در یک پیکربندی شکست سریال مبتنی بر اتصال سریال، دو دستگاه ADN به جای شبکه از طریق یک اتصال استاندارد RS232 ارتباط برقرار می‌کنند و تمام اشتراک اطلاعات و وضعیت جلسه از طریق این اتصال مبادله می‌شود. Failover تقریباً فوری است، اگرچه در مورد جلسات آغاز شده در حالی که دستگاه اصلی به عنوان خرابی مبتنی بر شبکه از کار می‌افتد، از همان محدودیت‌ها رنج می‌برد. امنیت ADN امنیت لایه حمل و نقل اگرچه اغلب به اشتباه به لایه برنامه اختصاص داده می‌شود، SSL امروزه متداول‌ترین روش ایمن‌سازی ترافیک برنامه از طریق ADN است. از آنجا که ADN برای درک برنامه‌ها و پروتکل‌های برنامه مانند HTTP طراحی شده‌است، می‌تواند برخی از جنبه‌های پروتکل را دستکاری کند تا سرورها را در استخر قرار دهد و از افشای اطلاعات بالقوه مفید در مورد زیرساخت‌های نرم‌افزار و سخت‌افزار جلوگیری کند. یک استفاده معمول از این قابلیت مخفی کردن سیستم عامل و نرم‌افزار سرور است که برای میزبانی برنامه استفاده می‌شود. فایروال برنامه در سال‌های اخیر ADNهای تجاری شامل قابلیت‌های فایروال برنامه برای ایمن‌سازی بیشتر برنامه‌ها در طول فرایند تحویل هستند. این یک بحث داغ است و بسیاری از متخصصان امنیتی استدلال می‌کنند که کارایی موجود در فایروال برنامه ضروری نیست و باید توسط برنامه مدیریت شود در حالی که دیگران استفاده از امنیت را هر چه بیشتر، بدون در نظر گرفتن موقعیت در شبکه تحویل، بهترین می‌دانند. بسیاری از شرکتهای تجاری ADN این توابع را به دست آورده و یکپارچه کرده‌اند و چنین ویژگیهایی را بعنوان بخشی از استراتژی دفاع در عمق ارائه می‌دهند که اغلب توسط متخصصان امنیتی ذکر می‌شود. در نتیجه، ADN لزوماً باید نه تنها از خود بلکه از برنامه‌هایی که از تسلیم شدن در برابر چنین حملاتی ارائه می‌دهد محافظت کند. ADN به‌طور کلی از تعدادی محافظت در برابر حملات معمول لایه شبکه استفاده می‌کند، اگرچه امنیت کامل ارائه شده توسط IPS را اجرا نمی‌کند. در بعضی موارد، ممکن است از آستانه یا محدود کردن نرخ آدرس IP یا دامنه آدرس IP استفاده شود. مدیریت ترافیک ADNها به‌طور فزاینده ای به قابلیت‌های پیشرفته مدیریت ترافیک اضافه می‌کنند. | ## جمع‌بندی | قابلیت بازرسی بسته‌های عمیق برخی از این محصولات می‌تواند ترافیک را براساس نوع برنامه شناسایی کند و می‌تواند برای تجزیه و تحلیل، مسدود کردن، شکل‌دادن و اولویت بندی ترافیک استفاده شود.