اینترنت چیست؟
به طور ساده، اینترنت یک شبکه جهانی از شبکهها (Network of Networks) است. این شبکه شامل میلیونها سرور، کامپیوتر، روتر و تجهیزات شبکه است که از طریق کابلهای فیبر نوری، خطوط مخابراتی، ماهوارهها و شبکههای بیسیم به یکدیگر متصل شدهاند.
این سیستم عظیم با استفاده از پروتکلهای استاندارد ارتباطی امکان انتقال داده میان دستگاهها را فراهم میکند.
به زبان ساده:
اینترنت یک شبکه جهانی است
دستگاهها از طریق پروتکلها با هم ارتباط برقرار میکنند
اطلاعات به صورت بستههای داده (Packets) منتقل میشوند
آدرس IP چیست؟
هر دستگاهی که به اینترنت متصل میشود یک آدرس IP دارد.
IP مخفف Internet Protocol است و نقش آن مانند آدرس پستی در دنیای واقعی است.
نمونه یک IP:
142.250.190.78وقتی شما میخواهید وارد یک سایت شوید، در واقع مرورگر باید آدرس IP سرور آن سایت را پیدا کند.
اما حفظ کردن IPها برای انسان سخت است؛ به همین دلیل DNS به وجود آمد.
چیست و چگونه کار میکند؟
DNS مخفف Domain Name System است و میتوان آن را دفترچه تلفن اینترنت نامید.
وظیفه DNS این است که:
google.comرا به
142.250.190.78تبدیل کند.
فرآیند DNS به صورت زیر انجام میشود:
شما آدرس سایت را در مرورگر وارد میکنید
مرورگر از DNS Resolver سوال میکند
Resolver از سرورهای DNS مختلف پرسوجو میکند
IP سرور پیدا میشود
مرورگر به سرور سایت متصل میشود
این فرآیند معمولاً در چند میلیثانیه انجام میشود.
درخواست شما چگونه به سرور میرسد؟
پس از پیدا شدن IP، مرورگر باید با سرور ارتباط برقرار کند. این کار از طریق پروتکل HTTP یا HTTPS انجام میشود.
مراحل کلی:
مرورگر یک HTTP Request ارسال میکند
درخواست از طریق چندین Router در اینترنت عبور میکند
درخواست به سرور مقصد میرسد
سرور پاسخ (Response) را ارسال میکند
مرورگر صفحه وب را نمایش میدهد
نقش روترها در اینترنت
Router ها مانند چهارراههای اینترنت هستند.
وظیفه آنها:
تعیین بهترین مسیر برای ارسال داده
هدایت بستههای اطلاعاتی
مدیریت ترافیک شبکه
اطلاعات در اینترنت به صورت Packet ارسال میشوند. هر Packet ممکن است از مسیر متفاوتی عبور کند اما در مقصد دوباره کنار هم قرار میگیرند.
سرور چیست؟
سرور در واقع یک کامپیوتر قدرتمند است که اطلاعات وبسایتها، اپلیکیشنها و سرویسهای آنلاین را نگهداری میکند.
انواع سرورها شامل:
Web Server
Database Server
Application Server
Mail Server
File Server
وقتی وارد یک سایت میشوید، سرور فایلهایی مانند:
HTML
CSS
JavaScript
تصاویر
دادههای پایگاه داده
را برای مرورگر شما ارسال میکند.
پروتکل HTTP و HTTPS چیست؟
HTTP مخفف:
HyperText Transfer Protocol
و پروتکل اصلی انتقال صفحات وب است.
اما نسخه امن آن HTTPS است که از رمزنگاری استفاده میکند.
مزایای HTTPS:
امنیت بیشتر
جلوگیری از شنود اطلاعات
اعتبار بیشتر سایت
بهبود سئو
به همین دلیل امروزه اکثر وبسایتها از HTTPS استفاده میکنند.
انتقال داده در اینترنت چگونه انجام میشود؟
اطلاعات در اینترنت به صورت بستههای کوچک داده (Packets) منتقل میشوند.
هر بسته شامل:
آدرس مبدا
آدرس مقصد
بخشی از داده
این بستهها ممکن است از مسیرهای مختلف عبور کنند اما در مقصد دوباره بازسازی (Reassemble) میشوند.
این فرآیند توسط پروتکل TCP/IP مدیریت میشود.
TCP/IP چیست؟
TCP/IP مجموعهای از پروتکلها است که ارتباط در اینترنت را ممکن میکند.
دو بخش اصلی:
TCP (Transmission Control Protocol)
مسئول اطمینان از رسیدن کامل دادهها.
IP (Internet Protocol)
مسئول مسیریابی بستهها در شبکه.
این دو پروتکل ستون اصلی اینترنت هستند.
CDN چیست و چرا استفاده میشود؟
CDN (Content Delivery Network) شبکهای از سرورها در نقاط مختلف جهان است.
هدف آن:
افزایش سرعت بارگذاری سایت
کاهش فشار روی سرور اصلی
بهبود تجربه کاربری
وقتی سایتی از CDN استفاده میکند، دادهها از نزدیکترین سرور به کاربر ارسال میشوند.
وقتی یک سایت را باز میکنید چه اتفاقی میافتد؟
به طور خلاصه مراحل اینگونه است:
کاربر آدرس سایت را وارد میکند
DNS آدرس IP سرور را پیدا میکند
مرورگر درخواست HTTP ارسال میکند
درخواست از طریق روترها عبور میکند
سرور درخواست را پردازش میکند
پاسخ به مرورگر ارسال میشود
مرورگر صفحه را نمایش میدهد
همه این مراحل معمولاً در کمتر از یک ثانیه انجام میشود.
جمعبندی
اینترنت سیستمی بسیار پیچیده اما فوقالعاده کارآمد است که از ترکیب چندین فناوری مختلف ساخته شده است. از DNS و IP گرفته تا سرورها، روترها و پروتکلهای شبکه همگی با هم کار میکنند تا شما بتوانید تنها با چند کلیک به اطلاعات سراسر جهان دسترسی داشته باشید.
درک نحوه کار اینترنت نه تنها برای برنامهنویسان بلکه برای هر کاربری که در دنیای دیجیتال فعالیت میکند مفید است.
اگر به مباحث برنامهنویسی، شبکه و تکنولوژی علاقه دارید، مقالات آموزشی بیشتری را در وبسایت تیواکد دنبال کنید.
آموزشهای تخصصی، ساده و کاربردی برای توسعهدهندگان آینده.
