CDN یا شبکه توزیع محتوا چیست؟ — نحوه کار، کش و امنیت

وقتی کاربری در تهران صفحه‌ای از سایتی باز می‌کند که سرورش در اروپاست، هر درخواست باید هزاران کیلومتر برود و برگردد. CDN (Content Delivery Network یا شبکه توزیع محتوا) این فاصله را کوتاه می‌کند: نسخه‌ای از محتوای سایت را در سرورهای لبه (Edge) نزدیک کاربران نگه می‌دارد تا صفحه از نزدیک‌ترین نقطه تحویل شود. نتیجه: سرعت بیشتر، بار کمتر روی سرور اصلی و مقاومت بهتر در برابر حملات.

در این مطلب نحوه کار CDN ، اجزای آن، چه محتوایی کش می‌شود و چه محتوایی نه، مزایای امنیتی، معیارهای انتخاب CDN و نکته‌های پیاده‌سازی را مرور می‌کنیم.

شبکه توزیع محتوا CDN
تحویل محتوا از سرورهای لبه CDN

CDN در یک نگاه

ایده اصلی تحویل محتوا از سرور لبه نزدیک کاربر
اجزا سرور اصلی (Origin) ، نقاط حضور (PoP) ، کش، DNS یا Anycast
بیشترین سود تصاویر، CSS ، JavaScript ، ویدئو و فایل‌های دانلودی
امنیت پنهان‌سازی سرور اصلی، جذب DDoS ، WAF
کنترل کش هدرهای HTTP مثل Cache-Control و پاک‌سازی (Purge)

CDN چطور کار می‌کند

بدون CDN
ارتباط کاربران با سرور بدون CDN
  1. رکورد DNS سایت به CDN اشاره می‌کند؛ کاربر به نزدیک‌ترین نقطه حضور (PoP) هدایت می‌شود. این کار با DNS جغرافیایی یا با Anycast (یک IP مشترک که از چند نقطه دنیا اعلام می‌شود) انجام می‌شود.
  2. اگر محتوای درخواست‌شده در کش آن PoP باشد (Cache Hit) ، همان‌جا تحویل می‌شود.
  3. اگر نباشد (Cache Miss) ، سرور لبه آن را از سرور اصلی (Origin) می‌گیرد، به کاربر می‌دهد و برای درخواست‌های بعدی نگه می‌دارد.

اتصال TLS هم در لبه CDN برقرار می‌شود؛ یعنی دست‌دهی HTTPS با سرور نزدیک انجام می‌شود و تأخیر آن هم کم می‌شود.

چه چیزی کش می‌شود

نوع محتوا کش در لبه توضیح
تصاویر، CSS ، JS ، فونت بله بیشترین بخش حجم صفحه؛ بیشترین سود
ویدئو و فایل دانلودی بله کاهش شدید ترافیک سرور اصلی
صفحه HTML عمومی با تنظیم برای صفحه‌هایی که برای همه یکسان است
صفحه شخصی‌شده، سبد خرید، پنل کاربری خیر باید مستقیم از سرور اصلی بیاید

رفتار کش را هدرهای HTTP تعیین می‌کنند؛ مثلاً Cache-Control: public, max-age=86400 یعنی تا یک روز قابل کش است و Cache-Control: private, no-store یعنی هرگز کش نشود. پس از انتشار نسخه جدید فایل‌ها، با Purge کش را پاک کنید یا نام فایل را نسخه‌دار کنید (مثلاً style.css?v=21).

مزایای امنیتی

  • پنهان‌سازی سرور اصلی: کاربران و مهاجمان فقط IP لبه CDN را می‌بینند.
  • جذب DDoS : ظرفیت توزیع‌شده CDN حملات حجمی را پیش از رسیدن به شبکه شما جذب می‌کند؛ ببینید DDoS و مقابله با آن.
  • WAF : بیشتر CDNها فایروال لایه وب برای مقابله با حملاتی مثل SQL Injection و XSS دارند.
وقتی CDN فعال شد، روی سرور اصلی فقط ترافیک ورودی از IPهای CDN را مجاز کنید؛ وگرنه مهاجم با پیدا کردن IP واقعی سرور، CDN را دور می‌زند.

معیارهای انتخاب CDN

معیار چرا مهم است
نقاط حضور نزدیک به کاربران شما برای کاربران ایرانی، PoP داخل کشور یا نزدیک به آن تفاوت بزرگی در تأخیر ایجاد می‌کند
پشتیبانی از HTTP/2 ، HTTP/3 و TLS 1.3 سرعت و امنیت اتصال
WAF و حفاظت DDoS امنیت در لبه
کنترل کش و API Purge خودکار هنگام انتشار محتوا
گزارش و لاگ تحلیل ترافیک و حملات

پرسش‌های متداول

CDN برای سایت کوچک هم لازم است؟
اگر کاربران از چند منطقه جغرافیایی می‌آیند یا سایت هدف حمله است، بله؛ بسیاری از CDNها پلن رایگان یا ارزان برای سایت‌های کوچک دارند.

CDN با Reverse Proxy چه فرقی دارد؟
CDN در واقع شبکه‌ای از Reverse Proxyهای توزیع‌شده در دنیاست؛ ببینید Reverse Proxy و افزایش امنیت و سرعت وب سرور.

منابع

مشاوره با AKA NET

برای طراحی زیرساخت امن و پرسرعت وب، مقابله با DDoS و امن‌سازی لبه شبکه با آکانت (AKA NET) تماس بگیرید.

تلفن: 09121308444  |  ایمیل: aka@aka.ir  |  aka.ir

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

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