ماذا يحدث بالضبط عند زيارة موقع على شبكة الإنترنت ؟
أصبح تصفح الإنترنت أمرًا روتينيًا في حياتنا اليومية، فهناك العديد من مواقع التواصل الاجتماعي التي نزورها بصورة يومية، كذلك عندما تريد البحث عن شيء ما، أو شراء بعض السلع، يتبادر الإنترنت إلى ذهنك بأقصى سرعة، حيث يمكنك بنقرة واحدة زيارة موقع الويب الذي تستهدفه، والحصول على الخدمة التي تريدها او المعلومات التي تستفسر عنها. يبدو الأمر في غاية السهولة، ولكن ما بين تلك النقرة وتحميل الصفحة المستهدفة رحلة طويلة تغطي ألاف الأميال في بضع ثوان هي نفس مقدار الوقت الذي يستغرقه تحميل موقع الويب على جهازك! لذا دعونا في هذا الموضوع نستكشف ما يحدث في كواليس تلك الرحلة الطويلة التي لا تستغرق سوى ثوانٍ معدودة.
العلاقة بين مواقع الويب والخوادم وعناوين IP
تتضمن عملية البحث عدة عناصر، وهي: المتصفح ونظام تشغيل جهاز الكمبيوتر ومزود خدمة الإنترنت الخاص بك والخادم الذي تستضيف فيه الموقع والخدمات التي تعمل على ذلك الخادم. مواقع الويب عبارة عن مجموعة من الملفات، غالبًا ما يكون تنسيقها HTML و CSS وجافا سكريبت، والصور، تجتمع معًا لتخبر متصفحك عن كيفية عرض الموقع. ولأن هذه الملفات وما تحتويه من بيانات يجب أن تكون متوفرة في أي وقت لأي شخص يطلبها، كان من الأفضل أن يقوم جهاز كمبيوتر خارجي قوي متصل بالإنترنت، يسمى الخادم، بتخزين هذه الملفات.
عندما توجه متصفحك إلى عنوان موقع بعينه، يبدأ المتصفح في اكتشاف الخادم الذي يستضيف الموقع، ويقوم بذلك عن طريق فحص دومين الموقع للعثور على عنوانه، ويساعد DNS في العثور على الخادم. حسنًا، لننتقل الآن إلى استعراض كل خطوة من خطوات الرحلة بالتفصيل منذ كتابة عنوان URL الموقع أو الضغط فوق عنوان مرتبط به، حتى الوصول إلى ما تريده على شاشة جهازك.
لنبدأ أولًا باختيار موقع الويب المستهدف
تبدأ الرحلة الطويلة بأبسط خطوة، والتي تتمثل في اختيار موقع الويب المطلوب زيارته، ويتم ذلك سواء من خلال ان تضغط على الموقع من شريط الإشارة المرجعية (Bookmark) أعلى المتصفح، أو كتابة عنوان URL الموقع بنفسك في شريط عنوان المتصفح أو حتى من خلال نتائج مُحرك البحث. بغض النظر، حينما نقول موقع ويب فنحن نشير إلى موقعنا «عالم الكمبيوتر» أو أي من مواقع الإنترنت الأخرى مثل فيسبوك، وتويتر، ويوتيوب وغيرها.
يعمل الإنترنت بشكل رئيسي وفقًا لنموذج خادم العميل (Client-Server)، أي أن مواقع الإنترنت تكون مخزنة فعليًا على أجهزة تسمى الخوادم (Servers). يمكن تخزين هذه الخوادم في أي مكان في العالم. متى أردت زيارة موقع ويب، يقوم جهازك بإنشاء طلب يتم إرساله إلى الخادم. الآن، بمجرد تقديم هذا الطلب، يتم تحقيق الطلب الذي نتقدم به إلى خادم الويب رقميًا في شكل حزمة من البيانات. تحتوي حزمة الشبكة هذه على عنوان IP للجهاز الذي تستخدمه، وعنوان IP للخادم الذي تطلب البيانات منه وستخزن الطلب الفعلي بداخله.
وبصورة أكثر توضيحًا؛ ينقسم عنوان الويب إلى عدة أجزاء لكل منها معناه ووظيفته، ودعنا نختار عنوانًا يساعدنا على شرح الأمر بصورة أكثر وضوحًا.
يبدأ العنوان بالمخطط //:https، وهو بروتوكول نقل النص التشعبي الآمن الذي يخبر المتصفح بإجراء اتصال بالخادم باستخدام بروتوكول أمان TLS، وهو بروتوكول تشفير لتأمين الاتصالات عبر الإنترنت، ويقوم بتشفير البيانات المتبادلة بين المتصفح والخادم، مثل كلمات المرور أو معلومات بطاقة الائتمان. هناك بروتوكولات أخرى تعرف المتصفحات كيفية التعامل معها مثل //:ftp أو //:mailto أو //:file.
بعد البروتوكول يأتي اسم دومين الموقع www.computer-wd.com، ويشير هذا العنوان إلى عنوان IP لخادم معين. بعد اسم الدومين يأتي اسم المسار (رابط الصفحة) الموجود على الخادم والذي تريد عرضه reasons-to-use-guest-network-in-router.html. في هذه الحالة نرى أنه متبوعًا بـ .html، مما يشير إلى أن هذا ملف ثابت على الخادم بمحتوى HTML، ويمكن أن تستخدم صيغ أخرى مثل CSS أو جافا سكريبت.
ما هو دور تقنية فحص التكرار الدوري (CRC) ؟
أثناء نقل حزمة البيانات عبر الإنترنت، قد تفقد بعض بياناتها أو قد تتلف بعض البيانات. لكي يصادق المستلم على أن البيانات أصلية وخالية من الأخطاء، يتم استخدام «التحقق من الموثوقية». ويعد فحص التكرار الدوري (CRC) أحد أكثر طرق الفحص تطبيقًا على نطاق واسع.
من المعلوم أن البيانات تخزن وتحفظ رقميًا على هيئة الرقمين 0 و1، ويستغل تحقق الموثوقية بواسطة فحص التكرار الدوري تلك التقنية، ويقوم بعد (إحصاء عدد) أرقام (1) المخزنة في البيانات ويخزن عددها. عند الاستلام إذا تطابق عدد أرقام (1) المخزن مع العدد المستلم بواسطة جهاز الاستقبال، تكون بذلك الحزمة أصلية.
العثور على عنوان IP المطابق للدومين
بعد التحقق من جاهزية الحزمة للعمل، يحتاج المتصفح إلى معرفة الخادم الذي سيتم الاتصال به على الإنترنت. للقيام بذلك، يحتاج إلى البحث عن عنوان IP للخادم الذي يستضيف موقع الويب باستخدام الدومين الذي كتبته، ويقوم بذلك باستخدام نظام يُدعى DNS وهو أشبه بدفتر أسماء أو قاموس كلمات بالنسبة لشبكة الانترنت.
يترجم DNS عناوين URL المألوفة لنا كبشر (www.computer-wd.com) إلى عناوين IP يفهمها الكمبيوتر ( عادًة هذا العنوان يكون مكون من أربع مجموعات من الأرقام مفصولة بنقاط). فمثلًا عندما تزور موقع فيسبوك (facebook.com) فالمتصفح يترجم دومين الموقع إلى عنوان IP المتطابق وهو 31.13.67.35 وذلك بفضل نظام DNS.
واعتمادًا على ما إذا كنت قد زرت موقع الويب هذا مؤخرًا، يمكن لمتصفحك العثور على معلومات DNS هذه من عدة مصادر، بما في ذلك جهاز الكمبيوتر أو مزود خدمة الإنترنت. يتحقق المتصفح الخاص بك من ذاكرة التخزين المؤقت الخاصة به، وذاكرة التخزين المؤقت لنظام التشغيل، وذاكرة التخزين المؤقت للشبكة المحلية على جهاز الراوتر الخاص بك، وذاكرة التخزين المؤقت لخادم DNS على شبكة شركتك أو لدى مزود خدمة الإنترنت (ISP).
إذا لم يتمكن المستعرض من العثور على عنوان IP في أي من طبقات ذاكرة التخزين المؤقت هذه، فإن خادم DNS على شبكة شركتك أو في ISP الخاص بك يقوم ببحث DNS متكرر. يطلب بحث DNS المتكرر عدة خوادم DNS حول الإنترنت، والتي بدورها تطلب المزيد من خوادم DNS لسجل DNS حتى يتم العثور عليها. بمجرد حصول المتصفح على سجل نظام أسماء النطاقات بعنوان IP، فقد حان الوقت للعثور على الخادم على الإنترنت وإنشاء اتصال.
بدء المتصفح اتصال TCP بالخادم
تنتقل حزم البيانات عبر الهاتف أو سلك الكابل عبر شبكات مختلفة، ثم ينتهي بها الأمر في مركز الإنترنت الرئيسي للبلد أو المنطقة حيث يتم فك تشفير عنوان IP الخاص بالخادم باستخدام بروتوكول التحكم في الإرسال، المعروف باسم TCP، للعثور على الخادم مع عنوان IP للاتصال به، لكن هذه طريقة غير فعالة.
بدلاً من ذلك، تستخدم العديد من المواقع شبكة توصيل المحتوى أو المعروفة اختصارًا بـ CDN، لتخزين محتوى ثابت وديناميكي مؤقتًا بالقرب من المتصفح. وشبكة CDN هي شبكة موزعة عالميًا من خوادم التخزين المؤقت التي تعمل على تحسين أداء موقع الويب من خلال تقريب المحتوى من المستخدمين. بمجرد أن يعثر المستعرض على الخادم على الإنترنت، فإنه ينشئ اتصال TCP بالخادم.
لنفترض أن موقع الويب الذي تريد زيارته به خوادم في الخارج، هنا سيرسل مركز الإنترنت الرئيسي في بلدك الحزمة إلى مركز الإنترنت في البلد الذي يوجد فيه الخادم. سيقوم مركز الإنترنت هذا في النهاية بإرسال الطلب إلى الخادم عبر شبكاته المحلية.
هناك شبكة ضخمة من الأسلاك تربط محاور الإنترنت في جميع أنحاء العالم. تعبر هذه الأسلاك اليابسة والبحار وحتى امتداد المحيطات بأكملها، وكل هذه الأسلاك عبارة عن كابلات ألياف بصرية يمكنها نقل البيانات بسرعة الضوء.
الاستجابة ومعالجة طلب زيارة الموقع
بمجرد أن يتلقى الخادم طلبك، يصبح جاهزًا لإرسال موقع الويب المطلوب. قد يتكون موقع الويب من نصوص أو صور أو مقاطع فيديو كبيرة جدًا بحيث لا يمكن إرسالها كحزمة واحدة من البيانات، وبالتالي، يقسم الخادم موقع الويب إلى حزم متعددة من البيانات ويرسلها معًا. تقوم هذه الحزم المتعددة بنفس الرحلة التي قام بها طلب زيارة الموقع، ولكن ليس من الضروري أن تسير جميع الحزم في المسار ذاته. لتسريع العملية وتجنب التعثر في حركة الاتصال عبر الشبكة، تتخذ كل حزمة طريقها الخاص، أي تختار الحزم المسارات بحيث تصل إلى جهازك في نفس الوقت تقريبًا.
بعد وصول جميع الحزم إلى جهازك، يتبقى إعادة بناء موقع الويب، والذي يتم بواسطة طريقة تسمى التسلسل. عندما قام الخادم بتقسيم موقع الويب إلى حزم متعددة، أعطى رقمًا تسلسليًا لكل حزمة مخزنة بداخله. الآن، يستخدم جهازك نفس التسلسل لإعادة إنشاء موقع الويب الذي تريده. بمجرد تنزيل صفحة ويب، لن تنتهي رحلة متصفحك، فإذا قمت بالنقر فوق ارتباط جديد، فستبدأ الخطوات من جديد.
ما قرأته لتوك هو ما يحدث في الكواليس عند طلبك زيارة موقع إلكتروني معين، وبالطبع قد أثار دهشتك أن تلك الرحلة التي قد تمر عبر آلاف الأميال، لا تستغرق سوى ثوان معدودة لترى النتيجة أمام عينيك على جهازك!
أصبح تصفح الإنترنت أمرًا روتينيًا في حياتنا اليومية، فهناك العديد من مواقع التواصل الاجتماعي التي نزورها بصورة يومية، كذلك عندما تريد البحث عن شيء ما، أو شراء بعض السلع، يتبادر الإنترنت إلى ذهنك بأقصى سرعة، حيث يمكنك بنقرة واحدة زيارة موقع الويب الذي تستهدفه، والحصول على الخدمة التي تريدها او المعلومات التي تستفسر عنها. يبدو الأمر في غاية السهولة، ولكن ما بين تلك النقرة وتحميل الصفحة المستهدفة رحلة طويلة تغطي ألاف الأميال في بضع ثوان هي نفس مقدار الوقت الذي يستغرقه تحميل موقع الويب على جهازك! لذا دعونا في هذا الموضوع نستكشف ما يحدث في كواليس تلك الرحلة الطويلة التي لا تستغرق سوى ثوانٍ معدودة.
العلاقة بين مواقع الويب والخوادم وعناوين IP
تتضمن عملية البحث عدة عناصر، وهي: المتصفح ونظام تشغيل جهاز الكمبيوتر ومزود خدمة الإنترنت الخاص بك والخادم الذي تستضيف فيه الموقع والخدمات التي تعمل على ذلك الخادم. مواقع الويب عبارة عن مجموعة من الملفات، غالبًا ما يكون تنسيقها HTML و CSS وجافا سكريبت، والصور، تجتمع معًا لتخبر متصفحك عن كيفية عرض الموقع. ولأن هذه الملفات وما تحتويه من بيانات يجب أن تكون متوفرة في أي وقت لأي شخص يطلبها، كان من الأفضل أن يقوم جهاز كمبيوتر خارجي قوي متصل بالإنترنت، يسمى الخادم، بتخزين هذه الملفات.
عندما توجه متصفحك إلى عنوان موقع بعينه، يبدأ المتصفح في اكتشاف الخادم الذي يستضيف الموقع، ويقوم بذلك عن طريق فحص دومين الموقع للعثور على عنوانه، ويساعد DNS في العثور على الخادم. حسنًا، لننتقل الآن إلى استعراض كل خطوة من خطوات الرحلة بالتفصيل منذ كتابة عنوان URL الموقع أو الضغط فوق عنوان مرتبط به، حتى الوصول إلى ما تريده على شاشة جهازك.
لنبدأ أولًا باختيار موقع الويب المستهدف
تبدأ الرحلة الطويلة بأبسط خطوة، والتي تتمثل في اختيار موقع الويب المطلوب زيارته، ويتم ذلك سواء من خلال ان تضغط على الموقع من شريط الإشارة المرجعية (Bookmark) أعلى المتصفح، أو كتابة عنوان URL الموقع بنفسك في شريط عنوان المتصفح أو حتى من خلال نتائج مُحرك البحث. بغض النظر، حينما نقول موقع ويب فنحن نشير إلى موقعنا «عالم الكمبيوتر» أو أي من مواقع الإنترنت الأخرى مثل فيسبوك، وتويتر، ويوتيوب وغيرها.
يعمل الإنترنت بشكل رئيسي وفقًا لنموذج خادم العميل (Client-Server)، أي أن مواقع الإنترنت تكون مخزنة فعليًا على أجهزة تسمى الخوادم (Servers). يمكن تخزين هذه الخوادم في أي مكان في العالم. متى أردت زيارة موقع ويب، يقوم جهازك بإنشاء طلب يتم إرساله إلى الخادم. الآن، بمجرد تقديم هذا الطلب، يتم تحقيق الطلب الذي نتقدم به إلى خادم الويب رقميًا في شكل حزمة من البيانات. تحتوي حزمة الشبكة هذه على عنوان IP للجهاز الذي تستخدمه، وعنوان IP للخادم الذي تطلب البيانات منه وستخزن الطلب الفعلي بداخله.
وبصورة أكثر توضيحًا؛ ينقسم عنوان الويب إلى عدة أجزاء لكل منها معناه ووظيفته، ودعنا نختار عنوانًا يساعدنا على شرح الأمر بصورة أكثر وضوحًا.
يبدأ العنوان بالمخطط //:https، وهو بروتوكول نقل النص التشعبي الآمن الذي يخبر المتصفح بإجراء اتصال بالخادم باستخدام بروتوكول أمان TLS، وهو بروتوكول تشفير لتأمين الاتصالات عبر الإنترنت، ويقوم بتشفير البيانات المتبادلة بين المتصفح والخادم، مثل كلمات المرور أو معلومات بطاقة الائتمان. هناك بروتوكولات أخرى تعرف المتصفحات كيفية التعامل معها مثل //:ftp أو //:mailto أو //:file.
بعد البروتوكول يأتي اسم دومين الموقع www.computer-wd.com، ويشير هذا العنوان إلى عنوان IP لخادم معين. بعد اسم الدومين يأتي اسم المسار (رابط الصفحة) الموجود على الخادم والذي تريد عرضه reasons-to-use-guest-network-in-router.html. في هذه الحالة نرى أنه متبوعًا بـ .html، مما يشير إلى أن هذا ملف ثابت على الخادم بمحتوى HTML، ويمكن أن تستخدم صيغ أخرى مثل CSS أو جافا سكريبت.
ما هو دور تقنية فحص التكرار الدوري (CRC) ؟
أثناء نقل حزمة البيانات عبر الإنترنت، قد تفقد بعض بياناتها أو قد تتلف بعض البيانات. لكي يصادق المستلم على أن البيانات أصلية وخالية من الأخطاء، يتم استخدام «التحقق من الموثوقية». ويعد فحص التكرار الدوري (CRC) أحد أكثر طرق الفحص تطبيقًا على نطاق واسع.
من المعلوم أن البيانات تخزن وتحفظ رقميًا على هيئة الرقمين 0 و1، ويستغل تحقق الموثوقية بواسطة فحص التكرار الدوري تلك التقنية، ويقوم بعد (إحصاء عدد) أرقام (1) المخزنة في البيانات ويخزن عددها. عند الاستلام إذا تطابق عدد أرقام (1) المخزن مع العدد المستلم بواسطة جهاز الاستقبال، تكون بذلك الحزمة أصلية.
العثور على عنوان IP المطابق للدومين
بعد التحقق من جاهزية الحزمة للعمل، يحتاج المتصفح إلى معرفة الخادم الذي سيتم الاتصال به على الإنترنت. للقيام بذلك، يحتاج إلى البحث عن عنوان IP للخادم الذي يستضيف موقع الويب باستخدام الدومين الذي كتبته، ويقوم بذلك باستخدام نظام يُدعى DNS وهو أشبه بدفتر أسماء أو قاموس كلمات بالنسبة لشبكة الانترنت.
يترجم DNS عناوين URL المألوفة لنا كبشر (www.computer-wd.com) إلى عناوين IP يفهمها الكمبيوتر ( عادًة هذا العنوان يكون مكون من أربع مجموعات من الأرقام مفصولة بنقاط). فمثلًا عندما تزور موقع فيسبوك (facebook.com) فالمتصفح يترجم دومين الموقع إلى عنوان IP المتطابق وهو 31.13.67.35 وذلك بفضل نظام DNS.
واعتمادًا على ما إذا كنت قد زرت موقع الويب هذا مؤخرًا، يمكن لمتصفحك العثور على معلومات DNS هذه من عدة مصادر، بما في ذلك جهاز الكمبيوتر أو مزود خدمة الإنترنت. يتحقق المتصفح الخاص بك من ذاكرة التخزين المؤقت الخاصة به، وذاكرة التخزين المؤقت لنظام التشغيل، وذاكرة التخزين المؤقت للشبكة المحلية على جهاز الراوتر الخاص بك، وذاكرة التخزين المؤقت لخادم DNS على شبكة شركتك أو لدى مزود خدمة الإنترنت (ISP).
إذا لم يتمكن المستعرض من العثور على عنوان IP في أي من طبقات ذاكرة التخزين المؤقت هذه، فإن خادم DNS على شبكة شركتك أو في ISP الخاص بك يقوم ببحث DNS متكرر. يطلب بحث DNS المتكرر عدة خوادم DNS حول الإنترنت، والتي بدورها تطلب المزيد من خوادم DNS لسجل DNS حتى يتم العثور عليها. بمجرد حصول المتصفح على سجل نظام أسماء النطاقات بعنوان IP، فقد حان الوقت للعثور على الخادم على الإنترنت وإنشاء اتصال.
بدء المتصفح اتصال TCP بالخادم
تنتقل حزم البيانات عبر الهاتف أو سلك الكابل عبر شبكات مختلفة، ثم ينتهي بها الأمر في مركز الإنترنت الرئيسي للبلد أو المنطقة حيث يتم فك تشفير عنوان IP الخاص بالخادم باستخدام بروتوكول التحكم في الإرسال، المعروف باسم TCP، للعثور على الخادم مع عنوان IP للاتصال به، لكن هذه طريقة غير فعالة.
بدلاً من ذلك، تستخدم العديد من المواقع شبكة توصيل المحتوى أو المعروفة اختصارًا بـ CDN، لتخزين محتوى ثابت وديناميكي مؤقتًا بالقرب من المتصفح. وشبكة CDN هي شبكة موزعة عالميًا من خوادم التخزين المؤقت التي تعمل على تحسين أداء موقع الويب من خلال تقريب المحتوى من المستخدمين. بمجرد أن يعثر المستعرض على الخادم على الإنترنت، فإنه ينشئ اتصال TCP بالخادم.
لنفترض أن موقع الويب الذي تريد زيارته به خوادم في الخارج، هنا سيرسل مركز الإنترنت الرئيسي في بلدك الحزمة إلى مركز الإنترنت في البلد الذي يوجد فيه الخادم. سيقوم مركز الإنترنت هذا في النهاية بإرسال الطلب إلى الخادم عبر شبكاته المحلية.
هناك شبكة ضخمة من الأسلاك تربط محاور الإنترنت في جميع أنحاء العالم. تعبر هذه الأسلاك اليابسة والبحار وحتى امتداد المحيطات بأكملها، وكل هذه الأسلاك عبارة عن كابلات ألياف بصرية يمكنها نقل البيانات بسرعة الضوء.
الاستجابة ومعالجة طلب زيارة الموقع
بمجرد أن يتلقى الخادم طلبك، يصبح جاهزًا لإرسال موقع الويب المطلوب. قد يتكون موقع الويب من نصوص أو صور أو مقاطع فيديو كبيرة جدًا بحيث لا يمكن إرسالها كحزمة واحدة من البيانات، وبالتالي، يقسم الخادم موقع الويب إلى حزم متعددة من البيانات ويرسلها معًا. تقوم هذه الحزم المتعددة بنفس الرحلة التي قام بها طلب زيارة الموقع، ولكن ليس من الضروري أن تسير جميع الحزم في المسار ذاته. لتسريع العملية وتجنب التعثر في حركة الاتصال عبر الشبكة، تتخذ كل حزمة طريقها الخاص، أي تختار الحزم المسارات بحيث تصل إلى جهازك في نفس الوقت تقريبًا.
بعد وصول جميع الحزم إلى جهازك، يتبقى إعادة بناء موقع الويب، والذي يتم بواسطة طريقة تسمى التسلسل. عندما قام الخادم بتقسيم موقع الويب إلى حزم متعددة، أعطى رقمًا تسلسليًا لكل حزمة مخزنة بداخله. الآن، يستخدم جهازك نفس التسلسل لإعادة إنشاء موقع الويب الذي تريده. بمجرد تنزيل صفحة ويب، لن تنتهي رحلة متصفحك، فإذا قمت بالنقر فوق ارتباط جديد، فستبدأ الخطوات من جديد.
ما قرأته لتوك هو ما يحدث في الكواليس عند طلبك زيارة موقع إلكتروني معين، وبالطبع قد أثار دهشتك أن تلك الرحلة التي قد تمر عبر آلاف الأميال، لا تستغرق سوى ثوان معدودة لترى النتيجة أمام عينيك على جهازك!