cdn چیست؟ و چه کاربردی دارد؟

در این مقاله قصد دارم تا شما را با واژه CDN که مخفف واژه Content Delivery Network میباشد آشنا کنم تا با مطالعه این مقاله بتوانید به درک عمیق و صحیحی نسبت به CDN و شبکه های تحویل محتوا برسید. اما پیش از شروع به بررسی موارد گفته شده ابتدا باید ببینیم که تعریف cdn از کجا شروع شد و چه تعریف تخصصی برای آن وجود دارد؟ در پاسخ به این سوال باید گفت که طبق تعریف اتحادیه بین المللی مخابرات به هر گونه شبکه ای که برای تحویل محتوای دیجیتالی بهینه سازی شده باشد شبکه تحویل محتوا می گویند.

منظور از این بهینه سازی اینه که استفاده از اون بتونه در نهایت منجر به افزایش سرعت دسترسی به اطلاعات لازم باشه حالا اینکه چه ترفندی برای دسترسی به داده ها با سرعت بالا به کار رفته به این شکل هستش که وقتی یک شبکه cdn ساخته میشه سرورهایی در نقاط مختلف جهان و در کشورهای مختلف با طول جغرافیایی مشخص و تعیین شده ای کانفیگ و مستقر میشن و در نهایت با دریافت داده ها از سرور اصلی و ذخیره اون به صورت کش شده میان و بر اساس موقعیت جغرافیایی بازدیدکننده که بر اساس ISP مخابراتی کاربر شناسایی میشن داده ها رو از نزدیک ترین cdn به کاربر تحویل میدن تا بتونه با سرعت بیشتری به این داده ها دسترسی داشته باشه. به همین دلیل هست که اگر سایت هایی نظیر گوگل را که از CDN استفاده میکنند باز کنید میبینید که خیلی سریع در کوتاهترین زمان ممکن براتون بالا میاد اما در مقابل یک سایتی که سرور اون داخل کشور باشه و صفحه ای در حجم کم مثل گوگل داشته باشه میبینید که باز هم در مقایسه با گوگل دیرتر براتون باز میشه.

حالا که با یک مفهوم ساده و دید کوتاهی از CDN آشنا شدید در ادامه به بررسی کامل تر اون می پردازیم.

cdn چیست؟ و چه کاربردی دارد؟

همونطور که در بالا اشاره شد با استفاده از cdn میتونیم تا با سرعت بیشتری به داده های مورد نیاز دسترسی داشته باشیم. شبکه تحویل محتوا یا همون cdn با استفاده از سرورهایی که در سرتاسر دنیا توزیع شده و با توجه به موقعیت جغرافیایی کاربر از طریق نزدیک‌ترین سرور به کاربر محتوای ذخیره شده را به وی ارائه می دهد. این سرویس در افزایش سرعت تحویل محتوا و پهنای باند در وب سایت‌های با ترافیک بالا و وب سایت‌های جهانی مانند گوگل، یاهو، فیس بوک و… بسیار تأثیرگذار است. cdn ها انواع مختلفی دارند که میتونند به صورت خصوصی صرفا برای یک کشور یا یک شرکت خاص در دسترس باشند مثل شبکه CDN چایناکش در کشور چین یا cdn گوگل که صرفا در اختیار خود گوگل قرار داره و مورد استفاده قرار میگیره و یا اینکه میتونند تا به صورت عمومی در دسترس باشند تا هرکسی که لازم داره از اون برای وبسایت خودش استفاده کنه که از مشهورترین این مورد میشه به CDN کلود فلر، آکادمی، آمازون و… اشاره کرد که اگر شما هم سایتی دارید که به سرعت بالای اون اهمین میدین و همچنین با حملات به هاست و سرور سایتتون روبه رو هستید با استفاده از CDN میتونید تا علاوه بر افزایش سرعت بالای سایت امنیت اون رو هم در مقابل حملات افزایش دهید.

شرکت‌های بزرگ اینترنتی برای کنترل ترافیک سایت و سرویس‌های اینترنتی خودشون میان و از چندین سرور در نقاط مختلف جهان برای ذخیره‌سازی و تحویل اطلاعات و امکانات خود در سراسر جهان استفاده می‌کنند. حالا این امر باعث میشه که کاربران مختلف در سراسر جهان در هنگام استفاده از سرویس‌های آن‌ها هیچگونه تفاوتی را حس نکنند و همگی با بالاترین سرعت ممکن از نزدیک‌ترین سرور شرکت مورد بحث استفاده کنند. این امکان بسیاری از مزایای دیگه ای مثل امنیت، همیشه در دسترس بودن، پخش صحیح فشار بر روی چندین سرور و … را به همراه دارد. اینجاست که تکنولوژی CDN بسیار کارآمد می‌شود و می‌تواند به تمامی شرکت‌های کوچک و وبمسترهای سایت‌های خصوصی قدرت شرکت‌های بزرگ را بدهد. این سرویس به این شکل کار میکنه که از روی اطلاعات قابل دانلود شدن سایت شما (مانند فایل کدهای CSS، فایل کدهای جاوااسکریپت، فایل‌های مولتی مدیا و …) یک نسخه کپی بر روی nodes یا همون سرورهای مختلف خودش که در سراسر جهان داره ذخیره میکنه و بعد از اینکه کاربری وارد سایت شما میشه و نیاز به این اطلاعات داره همین داده های ذخیره شده روی سرور که به صورت اشتراکی به بسیاری از سایت‌ها سرویس میدهند از نزدیکترین سرور یا node بر اساس موقعیت جغرافیایی بازدیدکننده دانلود و بهش تحویل داده میشن. پس وقتی کاربری با مرورگر خودش وارد سایت میشه اطلاعات از نزدیک‌ترین سرور موجود به اون کاربر ارسال میشن و هر گاه هم سرور CDN به هر دلیلی در دسترس نباشند مشکلی وجود نداره و داده ها از سرور اصلی بارگزاری خواهند شد و تنها تفاوتی که وجود داره همین مبحث سرعت خواهد بود که مثل قبل بستگی به ترافیک سرور کمتر خواهد شد. چون این اطلاعات قبلاً در سرورهای CDN ثبت (Cache) شده‌اند و نیاز به پروسه خاصی نیست تا در اون ثبت بشن با سرعت بیشتری برای بازدیدکننده در دسترس قرار گرفته و دانلود میشوند.

استفاده از cdn میتونه به هاست و سرور شما قدرت بیشتری ببخشه و مزایای بسیار زیادی را برای سایت و کسب و کاری که در اون از CDN استفاده می کنید براتون به ارمغان بیاره که از جمله این موارد میتوان به موارد زیر اشاره کرد:

  • افزایش سرعت بارگذاری و نمایش صفحات وب در سیستم بازدید کنندگان به دلیل لود داده ها از نزدیک ترین cdn
  • افزایش امنیت سایت‌ها (چرا که بیشتر ارتباط‌ها به صورت غیر مستقیم و محافظت شده هستند)
  • افزایش میزان پهنای باند و کاهش مصرف ترافیک اصلی سرور، به عنوان مثال اگر سرور شما ۱۰ گیگابایت پهنای باند به شما ارائه می‌کند وقتی شما از یک CDN که دارای ۱۰ node است استفاده می‌کنید در حقیقت شما ۱۰ * ۱۰ گیگابایت به پهنای باند خود افزوده‌اید
  • هزینه بسیار پایین برای استفاده به دلیل استفاده چندین نفر از سرورها
  • نصب و راه اندازی ساده و آسان
  • افزایش میزان بهینه سازی سایت در موتورهای جستجو نظیر گوگل
  • راهکاری عالی برای جلوگیری از حملات DDOS به سرور سایت
  • افزایش رضایت بازدیدکننده از سایت و کسب و کار شما به دلیل لود بسیار سریع سایت

اگر بخواهیم تا به صورت تصویری به شرح cdn بپردازیم تصویر زیر گویای کارکرد و نحوه رفتار cdn برای ذخیره داده ها و در نهایت تحویل محتوا به کاربران خواهد بود.

cdn چگونه کار می کند؟
cdn چگونه کار می کند؟

همونطور که در تصویر بالا مشاهده می‌کنید با اتصال یک سایت به سرور شبکه CDN داده های قابل ذخیره سازی اون مثل فایل های چند رسانه ای در سرتاسر شبکه cdn که در نقاط مختلف جهان قرار داره ذخیره میشوند، به عبارت دیگه وقتی شما اقدام به انتشار یک فیلم در سایت خودتون میکنید یک نسخه کش شده از این فیلم به تمامی سرورهایی که در این شبکه CDN وجود داره ارسال شده و در اونها ذخیره میشوند و سپس بازدید کننده بر اساس موقعیت جغرافیایی که به نزدیک ترین سرور CDN داره این داده ها رو میتونه با سرعت بیشتری به دلیل اینکه ترافیک کمی از اون هم اشغال شده از طریق همین سرورها دریافت و به اونها دسترسی داشته باشه. از طرف دیگه اگر حملاتی به سایت اتفاق بیفته و افرادی برای سوءاستفاده بیان تا به سرور سایت حمله کنن شکست خواهند خورد، چرا که cdn از این کار جلوگیری میکنه و درواقع وقتی حمله ای بخواد تا به سمت سایت صورت بگیره به cdn صورت میگیره و باید بتونن از cdn عبور کنند تا به سرور اصلی شما برای حملاتی مثل حملات DDOS برسند که این مورد هم امکان پذیر نیست.

رفتار یک شبکه CDN به چه شکلی خواهد بود؟

اگر بخواهیم تا به رفتارهایی که در یک شبکه CDN رخ میده تا داده ها رو در آخرین مرحله به کاربر نهایی که همون بازدیدکننده سایت ما هست برسونه میتونیم به شکل زیر به توضیح رفتار موجود در یک شبکه CDN بپردازیم که عبارتند از:

1- همونطور که در بالا اشاره شد، شبکه توزیع محتوا یا همون CDN تمامی سرورهای شبکه جهانی اینترنت را که در سرتاسر دنیا داره تحت پوشش قرار میده. بنابراین زمانیکه شما از سیستم CDN برای سایت خودتون استفاده کرده و اونو فعال میکنید، اطلاعات شما بر روی تک تک این سرورها که در سرتاسر جهان به صورت شبکه ای پخش شده و وجود دارند کپی و ذخیره میشود و زمانیکه یک بازدیدکننده به سایت یا وبلاگ شما وارد میشه محتوای سایت که میتونه شامل تصاویر، ویدئوها، فایل های CSS، فایل های جاوا اسکریپت و… باشه را از نزدیک ترین سرور نزدیک به خود دریافت کنه که این نزدیکی سرور بر اساس ISP مخابراتی کاربر بازدیدکننده به دست میاد؛ پس در این صورت بازدیدکننده مستقیما به هاست یا سرور شما متصل نیست. بنابراین این کار موجب بهبودی بسیار مناسبی در عملکرد سایت شما خواهد شد.

2- تمامی اطلاعاتی که قابل به‌روزرسانی نیستند، در یک شبکه CDN قابل ذخیره هستند تا در طول این شبکه بزرگ در سرتاسر دنیا از نزدیک ترین سرور در اختیار کاربر قرار بگیرند. البته منظور از اطلاعاتی که به روزرسانی نمیشوند اینه که فایل هایی شامل تصاویر، جاوا اسکریپت، css و… هستند که نیازی به به روزرسانی ندارند اما سایر بخش ها که شامل محتوای صفحات میشه و از دیتابیس خونده میشن قابلیت ذخیره سازی در شبکه CDN رو ندارند و مستقیما از خود سرور بارگزاری میشوند. پس با این کار اگر هزینه ای که برای پهنای باند هاست یا سرور شما صرف میشه بیایدم و کم کنیم و از اون برای تهیه و فعال سازی یک شبکه CDN استفاده کنیم برای ما خیلی بهتر خواهد بود، چرا که ضمن کاهش مصرف پهنای باند مصرفی میتونیم امنیت سایتمونو در مقابل حملات DDOS افزایش بدهیم.

3- سرعت دسترسی به سایت در حالتی که CDN روی اون فعال نباشه در کشوری که سرور در اون قرار داره از بالاترین سرعت برخوردار خواهد بود، بنابراین وقتی که سرور سایت ما داخل ایران باشه و یک بازدیدکننده از کشوری مثل آمریکا بخواهد تا از سایت ما بازدید کنه نسبت به ما از سرعت پایین‌تری برخوردار خواهد بود، اما وقتی که ما بیایم و CDN را روی سایتمون فعال کنیم این سرعت چه در حالتی که بازدیدکننده در نزدیک ترین موقعیت سرور قرار داشته باشه و چه در حالتی که در دورترین موقعیت قرار داشته باشه از سرور به دلیل اینکه داده ها از نزدیک ترین سرور موجود در شبکه CDN لود میشوند از سرعت تقریبا یکسانی برخوردار خواهند بود و تفاوت خیلی محسوسی در این مورد وجود خواهد داشت. برای اینکه بخواهید تا به این موضوع برسید میتونید سایتی رو که از CDN استفاده کرده را توسط ابزاری مثل Pingdom یا GTmetrix تست کنید تا خودتون به این قضیه در حالت عملی پی ببرید.

آیا استفاده از CDN معایبی هم دارد؟

در پاسخ به این سوال باید گفت که استفاده از CDN برای سایت شما هیچ عیبی نداره و اکیدا توصیه میکنم تا از اون استفاده کنید، چرا که در صورت استفاده از CDN نه تنها چندین فاکتور مهم برای سئو و بهینه سازی سایت را دریافت میکنید، بلکه میتونید تا امنیت سایت خودتون رو هم بالا ببرید و با خیالی آسوده به فعالیت در سایت و به روزرسانی اون بپردازید. تنها چیزی که در CDN وجود داره و صد البته نمیشه اون رو به عنوان عیب و کاستی در نظر گرفت اینه که رایگان نیست. البته CDN های رایگان هم وجود دارند اما کلیه امکاناتی که یک CDN در اختیار شما قرار میگیره در اونها فعال نیست و باید هزینه ای رو برای فعال سازی چنین امکاناتی در اونها فعال کنید تا بتونید دسترسی لازم به اونها را داشته باشید.

چه تعداد CDN در سرتاسر جهان وجود داره؟

اینکه بشه گفت به صورت دقیق چندین شبکه CDN در جهان وجود داره نمیشه به قطع اون رو بیان کرد، چرا که تعداد شبکه های CDN به دلیل اینکه برای مصارف عمومی و خصوصی مورد استفاده قرار میگیرند در حال افزایش هستند. اما از جمله معروفترین شبکه های CDN میشه به مواردی مثل MaxCDN، VPS.net، Amazon Cloudfront، cloud Flare و… اشاره کرد که کلود فلر از جمله شبکه های CDN هست که با استفاده از اون میتونید تا از امکانات رایگانی که این CDN در اختیار شما قرار میده استفاده کنید. اما اگه قصد دارید تا هزینه صرف کنید و از یک شبکه CDN تجاری استفاده کنید در میان نمونه های ذکر شده بهترین شرایط هزینه ای را شبکه MaxCDN دارد.

امیدوارم که این مقاله هم مورد توجه شما قرار گرفته باشه و با استفاده از اون تونسته باشید تا به مفهوم کلی و جامعی از شبکه های توزیع محتوا یا CDN دست پیدا کنید و با مزایا و معایبی که استفاده از شبکه CDN میتونه برای شما داشته باشه به یک انتخاب درستی برسید و با استفاده کردن از CDN ضمن افزایش سرعت بارگزاری سایت از مزیت های امنیتی CDN استفاده کنید تا سایت خودتونو در برابر حملات DDOS ایمن کنید. اگر در رابطه با این مقاله هر سوالی برای شما پیش اومده میتونید در بخش دیدگاه ها اعلام کنید تا در کوتاه ترین زمان ممکن پاسخگوی شما عزیزان باشم.

فیسبوک توییتر گوگل + لینکداین تلگرام واتس اپ کلوب

 

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

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

8 − 1 =