انتقل إلى المحتوى

تغليف (شبكات)

من ويكيبيديا، الموسوعة الحرة

هذه نسخة قديمة من هذه الصفحة، وقام بتعديلها Michel Bakni (نقاش | مساهمات) في 22:19، 22 يوليو 2017 (←‏المبادئ البنيويّة الأساسيّة للنموذج). العنوان الحالي (URL) هو وصلة دائمة لهذه النسخة، وقد تختلف اختلافًا كبيرًا عن النسخة الحالية.


حزمة بروتوكولات الإنترنت (بالإنجليزية: Internet Protocol Suite)‏[1] أو نموذج الإنترنت (بالإنجليزية: TCP/IP Model)‏، أو نموذج وزارة الدفاع (بالإنجليزية: Department of Defense DoD Model)‏ هو نموذج مُجرّد يربط عمل مجموعة من بروتوكولات الاتصالات المُستعملة في شبكة الإنترنت وفي شبكات حواسِب أُخرى. يُعرَف هذا النموذج باسم نموذج الإنترنت، ويُشار إليّه اختصاراً بالرمز (TCP/IP)، الذي يجّمع بروتوكول الإنترنت (IP)[2] وبروتوكول التحكّم بالنقل (TCP)[3] لأنّهما أول بروتوكولين أُضيفا للحزمة. ويُدعى النموذج في بعض الأحيان باسم نموذج وزارة الدفاع، لأنّ تمويل المشروع جاء عن طريق وكالة مشاريع البُحوث المتطوّرة الدفاعيّة (DARPA)، وهي إحدى وكالات وزارة الدفاع في الولايات المتحدة الأميركيّة.

بهدف نقل المُعطيات، تُؤمّن حزمة بروتوكولات الإنترنت اتصالاً بين طرفيّتين، وتحدد كيف يتمّ تغليف وعنونة ونقل وتوجيه واستقبال المُعطيات. يجري تنظيم الوظائف في أربع مستويات يُسمّى كل منها طبقة (Layer)، ويتمّ تجميع البروتوكولات في هذه الطبقات بحسب الوظيفة. [4] إنّ الطبقات من الأدنى إلى الأعلى هي: طبقة الربط (Link Layer)، وتتضمّن طرق الاتصال لنقل المُعطيات ضمن مجال بثٍّ عامٍ واحد (Broadcast domain)، وطبقة الإنترنت (Internet Layer)، وتربط بين مجالات البثّ العام المُختلفة، وتشمل القضايا المُتعلّقة بالتوجيه، وطبقة النقل (Transport Layer) وتعالِج الوظائِف المُرتبطة بقنوات الاتصال بين المُضيفين (Host-to-Host)، وطبقة التطبيق (Application Layer) والتي تهتمُ بالعلاقة بين العمليات (Process-to-Process) بهدف نقل المُعطيات بين تطبيقات الطرفيّتين.

إنّ مجموعة مُهندسي الإنترنت (IETF) هي الجهة المُخوّلة بإصدار وحفظ وثائِق المعايير الخاصة ببروتوكولات الحزمة، أو التعليق عليها بهدف شرح وتوضيح آليّات عملِها. تمّ تطوير حزمة بروتوكولات الإنترنت قبل تطوير نموذج الاتصال المعياريّ ( OSI Model)[5] وهي أكثرُ بساطةً مِنه.

نبذة تاريخيّة

استغرقت عملية تطوير حزمة بروتوكولات الإنترنت (TCP/IP) حوالي عقّدين من الزمن، حيث ابتدأت الدراسات الخاصّة بها منذُ مطلع السبعنيّات من القرن الماضي، وصُولاً إلى مطلع التسعينيّات حيث بات انتشار النموذج عامّاً على نطاقٍ واسعٍ.

الأبحاث الأولى

جاء تطوير حزمة بروتوكولات الإنترنت كنتيجة للأبحاث والدراسات التي أجرتها وكالة مشاريع البُحوث المتطوّرة الدفاعيّة (DARPA) في نهاية الستينيّات، [6] فبعد إطلاق شبكة الأربانت الرائدة في عام 1969م، بدأت الوكالة في العمل على عددٍ من تقنيّات نقل المُعطيات. في عام 1972م، انضمّ بوب خان (Bob Khan) إلى مكتب تقانة مُعالجة المعلومات (Information Processing Technology Office)، حيث عمل على في شبكات نقل الرزم باستعمال الأقمار الصناعيّة، وباستعمال محطات الراديو الأرضيّة، وأدرك حينها الحاجة لشبكات مُعطيات عالميّة. في ربيع العام 1973م، انضمّ فينت سيرف (Vint Cerf)، مُطوّر بروتوكول برنامج التحكّم بشكبة الأربانت (ARPANET Network Control Program NCP protocol)، إلى خان وابتدآ العمل على تطوير نموذج لبنيّة شبكات الاتصال وذلك بهدف تصميم الجيل التالي من بروتوكولات شبكة الأربانت .

مع حلول صيف العام 1973م، كان خان وسيرف قد نجحا في إعادة صياغة الشكل العام للنموذج، وبدلاً من أن تكون الوثوقيّة هي مسؤوليّة الشبكة، كما هو الحال في الأربانت ، فقد تمّ تفويض المُضيفين بذلك، نتج عن ذلك تطّوير بروتوكول جديد هو بروتوكول التحكّم بالنقل (TCP)، ونشر الإثنان ورقة بحثيّة [7] بذلك في العام 1974م.

في البداية، كان بروتوكول التحكّم بالنقل (TCP) مسؤولاً عن نقل الرزم وعن التوجيه. ولكن مع التطوير الحاصل، استحسن بعض الباحثين تنظيم البروتوكولات عن طرق فصلها بحسب وظائفها وتجميعها في مجموعة من المستويات أو الطبقات، من دُعاة هذه الفكرة جوناثان بوستل (Jon Postel) من معهد تقانة المعلومات في جامعة كاليفورنيا الجنوبيّة، الذي عمل كمُحرر لوثائق الإنترنت (RFC)، بوستل علّق على الموضوع: " إنّنا نقوم بإفشال تصميم شبكة الإنترنت من خلال إنتهاك مبدأ الطبقات ". [8] كان الهدف الأساسي من طرح فكرة التغليف (Encapsulation) هو خلق بيئة عمل مُكوّنة من مجموعة من الطبقات المُتتاليّة حيث يُمكن لكل طبقة علّيا منها أن تصل إلى ما تحتاجه فقط من معلومات الطبقات الدنّيا. زادت هذه الفكرة مُرونة التصميم كما أنّها جعلته قابلاً للتوسّع (Scalable)، ونتيجة لذلك فقد تمّ تقسيم برنامج التحكّم بالنقل إلى بروتوكولين مُتمايزين هما بروتوكول الإنترنت (IP) وبروتوكول التحكّم بالنقل (TCP). حلّت حزمة البروتوكولات الجديدة محلّ كل البروتوكولات المُستعملة سابقاً، [9] مثل شبكة الرزم الراديويّةّ (Packet Radio Network PRnet) [10] وشبكة الأقمار الصناعية (Satellite network SATnet). [11] [12]

تضمّن تصميم الشبكة إقراراً بأنّها يجب أن تُؤمّن فقط الوظائف المتعلّقة بنقل المُعطيات وتوجيهها بين العُقد بشكلٍ فعّال، وبأنّ جميع الآليات الأخرى يجب أن تتوضع في الطرفيّات. عُرف هذا بمبدأ العلاقة بين طرفيتين (End-to-end Principle). واعتماداً على هذا المبدأ أصبح بالإمكان وصل أيّ شبكة مع شبكة الأربانت ، بغضّ النظر عن الخواص المحليّة، وكان هذا حلّاً مثاليّاً لهذه المشكلة التي وصفها خان سابقاً.

تمّ الاعتماد على حاسبٍ خاص، سُمّي المُوجّه (Router)، وتمّ تزويده بعدد من بطاقات الشبكة ليتصل مع كل الشبكات، ويقوم بتوجيه الرزم فيما بينها. [13] في الأصل سُمّي هذا الحاسب بالبوّابة (Gateway)، ولكنّ لاحقاً جرى تغيير الاسم لتجنّب الإلتباس مع تجهيزات شبكة أخرى ذات استخدامات أمنيّة تُسمّى البوابات أيضاً.

تطوير المُحددات

دور معهد ستانفورد للأبحاث (SRI) في أول عملية اتصال تتم عبر شبكات غير مُتجانسة.
عربة النقل المستعملة من قبل معهد ستانفورد للأبحاث (SRI) من أجل إجراء أول عملية اتصال عبر شبكات غير متجانسة.

في الفترة المُمتدّة بين عامي 1973 و1974م، طوّر سيرف مع مجموعة بحث في معهد ستانفورد للأبحاث (Stanford Research Institute SRI) التفاصيلَ المُتعلّقة بهذه الفكرة، وكانت النتيجة هي أول مُحددات خاصّة ببروتوكول التحكّم بالنقل (TCP).[14] تأثّر هذا العمل بشكلٍ ملحوظ بالأعمال السابقة التي أنجزت في زيروكس بارك (Xerox PARC) والتي نتج عنها تطوير حزمة بروتوكولات بارك العامة ( PARC Universal Packet Protocol Suite).

بعد ذلك، تعاقدت وكالة مشاريع البُحوث المتطوّرة الدفاعيّة (DARPA) مع شركة بي بي إن للتكنولوجيا (BBN Technologies) وجامعة ستانفورد و كلّية لندن الجامعيّة (UCL) بهدف تطوير إصدارات تشغيليّة على مِنصّات مُختلفة، وكانت النتيجة هي تطوير أربعة إصدارات مُتتاليّة من بروتوكول الإنترنت (IP) وبروتوكول التحكّم بالنقل (TCP) وصُولاً إلى الإصدار الرابع لكلٍ منهُماالذي ما يزال مُستخدماً حتى اليوم.

في عام 1975م، تمّ إجراء تجربة لإقامة اتصال بين شبكتين في جامعة ستانفورد و كلّية لندن الجامعيّة (UCL) باعتماد حزمة بروتوكولات الإنترنت (TCP/IP). وفي نوفمبر عام 1977م، تمّ توصيل شبكات ثلاث مواقع في الولايات المتحدة الأميركيّة والمملكة المُتحدة والنرويج باعتماد حزمة بروتوكولات الإنترنت (TCP/IP). جرى أيضاً تطوير عدّة نماذج من حزمة بروتوكولات الإنترنت (TCP/IP) في العديد من المراكز البحثيّة في الفترة المُمتدّة بين عامي 1978 و1983م. تمّ الانتقال من استعمال شبكة الأربانت (ARPANET) إلى حزمة بروتوكولات الإنترنت (TCP/IP) رسمياً في 1 يناير 1983 حيث تمّ تفعيل هذه البروتوكولات بشكلٍ دائم.[15]

اعتماد النموذج

في مارس عام 1982م أعلنت وزارة الدفاع الأميركية اعتماد حزمة بروتوكولات الإنترنت كمعيار في كل شبكات الحواسب العسكريّة. [16] في عام 1985م، أقام مجلس الإنترنت الاستشاري (Internet Advisory Board) (الذي سُمي لاحقاً مجلس هندسة الإنترنت (Internet Architecture Board IAB)) ورشة عملٍ لمدّة ثلاثة أيّامٍ حوّل حزمة بروتوكولات الإنترنت (TCP/IP) لمُصنّعي الحواسيب، حضرها مُمثلون عن 250 مُصنّع، تمّ فيها تسويق الحزمة للاستخدام التجاري.

في عام 1985، عُقد أوّل مؤتمر حول التشغيل المُشترك للشبكات من خلال اعتماد أوسع لحزمة بروتوكولات الإنترنت (TCP/IP). تمّ تمويل المؤتمر من قبل دان لينش (Dan Lynch)، وهو أحد أوائل الناشطين في شبكة الإنترنت، وشهد المُؤتمر مشاركة واسعة من شركات عملاقة مثل أي بي أم (IBM) و ديجيتال إكوبمينت (DEC) وهو يُعقد سنوياً بانتظام منذ ذلك الوقت.

كانت أي بي أم (IBM) و ديجيتال إكوبمينت (DEC) وإيه تي أند تي (AT&T) هي الشركات الأولى التي اعتمدت حزمة بروتوكولات الإنترنت (TCP/IP). على الرغم من امتلاك كلٍ منها لحزمة بروتوكولات مُنافِسة خاصّةٍ بها. في أي بي أم (IBM)، ومُنذ العام 1984م، تمّ البدء بالتطوير اعتماداً على حزمة بروتوكولات الإنترنت (TCP/IP).لاحقاً بدأت شركات أصغر تُقدّم إضافة توسيعيّة لدعم حزمة البروتوكولات لنظام التشغيل دوس (DOS) وأنظمة مايكروسوفت ويندوز مثل شركة أف تي بي للبرمجيّات (FTP Software) ومجموعة ولونغونغ (The Wollongong Group). أمّا أوّل إضافة توسيعيّة لدعم حزمة بروتوكولات الإنترنت (TCP/IP) لنظام تشغيل أي بي أم (IBM) المُسمّى (VM/CMS) فقد جاءت من جامعة ويسكونسن. [17]

بعض الإضافات التوسيعيّة تمّت كتابتها من قبل بعض المُبرمجين بدون أيّ مساعدة، مثلاً، قام جاي إلنسكي (Jay Elinsky) وأوليغ فيشنيبولسكي (Oleg Vishnepolsky) من فريق الأبحاث في أي بي أم (IBM) بكتابة الإضافة التوسيعيّة لدعم حزمة بروتوكولات الإنترنت (TCP/IP) لنظامي تشغيل (VM/CMS) و(OS/2).

في يونيو 1989م، حصلت عملية انتشار حزمة بروتوكولات الإنترنت (TCP/IP) على دفعةٍ جديدةٍ، فقد وافقت شركة إيه تي أند تي (AT&T) على وضع شيفرة مصدريّة لحزمة البروتوكولات طُوّرت لأجل أنظمة يونكس (UNIX) تحت ترخيصٍ مفتوح المصدر . وقد قام عدد من المُصنّعين، من ضمنهم أي بي أم (IBM) بتضمين هذه الشيفرة في الإضافات التوسيعيّة الخاصّة بهم. قامت العديد من الشركات ببيع الإضافات التوسيعيّة لدعم حزمة بروتوكولات الإنترنت (TCP/IP) في أنظمة ويندوز حتى قيام مايكروسوفت بإصدار ويندوز 95 الذي تضمّن دعماً أساسيّاً لحزمة بروتوكولات الإنترنت (TCP/IP). على الرغم من أنّ هذه الخطوة جاءت مُتأخّرة قيّاساً بتطوّر شبكة الإنترنت، ولكنّها كانت بمثابة الإعلان عن السيطرة المُطلقة لحزمة بروتوكولات الإنترنت (TCP/IP) في مقابل تراجُع النماذج الأُخرى وأهمّها: نموذج بُنية شبكة النظم (Systems Network Architecture SNA) الخاصّ بشركة أي بي أم (IBM) وحزمة بروتوكولات ديسي نت (DECnet) الخاصّة بشركة ديجيتال إكوبمينت (DEC) ونموذج الاتصال المعياريّ (OSI).

المبادئ البنيويّة الأساسيّة للنموذج

أكّدت الوثيقة (RFC 1122) [1] المُعنونّة: " مُتطلبات مُضيفي الإنترنت، طبقات الإتصال " (Requirements for Internet Hosts, Communication Layers) اعتماد كدسة من الطبقات كمبدأ رئيسيّ في حزمة بروتوكولات الإنترنت (TCP/IP).

تطوّر مبدأ العلاقة بين طرفيتين مع مُرور الوقت، فقد وَضَع المبدأ الأصليّ كافّة أشكال الذكاء وإدارة الشبكة أو القدرة على اكتشاف حالة الشبكة وحاجتها للصيانة في الطرفيّات، وافترض بأنّ شبكة الإنترنت التي تربط بين هذه الطرفيّات لا تحتفظ بأيّ معلومات عن حالتها ويكون جُلّ عملها مُركّزاً على السُرعة والبساطة. ولكنّ في العالم الواقعيّ هُناك مُتطلبات من جدران الحماية أو خدمات ترجمة عناوين الشبكة (NAT) [18] أو من غيرها أدّت إلى إحداث تغييرات في هذا المبدأ. [19]

ينصّ مبدأ المتانة (Robustness Principle) أو قانون بُوستال (Postal's Law) على ما يلي: "بشكلٍ عام، يجب على التطبيق أن يكون مُتخفّظاً بسلوكه عند الإرسال، ومُتحرراً بسلوكه عند الاستقبال. ولهذّا، يجب توخّي الحذر عند الإرسال وإرسال رزم مُعدّة بشكلٍ جيّد، ولكنّ يجب قُبُول أيّ رزمة يُمكن فهمُها (مثلاً، حالة وجود أخطاء تقنيّة حيث المعنى لا يزال واضِحاً) ". وفي موقعٍ آخر: "قد تحتوي البرمجيّات في بقيّة المُضيفين على أوجه قصور، لذلك ليس من الحكمة استخدام ميّزات البروتوكول القانونيّة الغامضة".[1] قد صاغ بُوستال هذا المبدأ بشكلٍ مُختصر بالشكل: "كُنّ مُحافظاً فيما تقوم به، ومُتحرراً فيما تقبلُه من الآخرين".

طبقات النموذج

عمل حزمة بروتوكولات الإنترنت بين مُضيفين مُتصلين مع شبكة تضمّ موجّهين كما يُوَضّح القسم الأعلى من الصورة، أما القسم الأدنى فيظهر طبقات النموذج في كل مرحلة عبر المسار. يستخدِم كل لمُضيفين طبقة الإنترنت لتوجيه الرزم نحو الخطوة التالية بحسب عنوان بروتوكول الإنترنت، في حين أنّ الطبقات العُليا لا تُستخدم إلا من قبل المُضيفين لإرسال واستقبال مُعطيات التطبيقات. في طبقتي النقل والتطبيق، يُمكن القول أنّ المُضيفين مُتّصلان بمسارٍ افتراضيّ يربطُهما (على افتراض استخدام بروتوكول يتطلب تهيئة اتصال في طبقة النقل)، أما بقيّة الطبقات فلا تملك معلومات إلا عن الجار الموجود على بعد خطوة واحدة فقط عبر المسار.
تغليف مُعطيات التطبيق أثناء نزولها عبر الطبقات الموصُوفة بالوثيقة (RFC 1122)

يُستعمل التغليف لوصف آليّة العمل المُشتركة للبروتوكولات مع بعضها البعض، وغالباً ما يرتبط هذا المفهوم بفكرة تقسيم حزمة البروتوكولات إلى عددٍ من الطبقات بحسب الوظيفة. بشكلٍ عام، يقوم تطبيق ما، يتواجد في أعلى مستوى من النموذج، باستعمال مجموعة من البروتوكولات لإرسال مُعطياته عبر الشبكة مروراً بالطبقات الأدنى، حيث تقوم كل منها بتغليف المُعطيات بمّا يتناسب مع البروتوكول المُستعمل في تلك الطبقة.

إنّ طبقات النمُوذج المُتموضعة بالقرب من القمة تكون ذات وظائف ترتبط بالتطبيقات ، أمّا تلك القريبة من أسفل النمُوذج فتهتم بكيفية إرسال المُعطيات عبر وسط النقل في الشبكة. إنّ استعراض عمل الطبقات عند تقديم خدمة ما هو طريقة مُجرّدة لعزل بروتوكولات الطبقات العُلّيا عن التفاصيل المُتعلقة بكيفية إرسال كل بت عبر الشبكة. وفي نفس الوقت، يجري عزل بروتوكولات الطيقات الدُنّيا عن تفاصيل التطبيقات المُستعمَلة وبروتوكولاتها.

لا تطرح المعايير والوثائق الخاصّة بالحزمة بُنية مُحددة بشكلٍ صارمٍ للنموذج، وهذا ما يجعلُه مُلائماً لشرح آليّة عمل البروتوكولات في العالم الواقعيّ، على عكس نموذج الاتصال المعياريّ (OSI)، الذي يُعرّف الطبقات ضمن قالبٍ جامد. على سبيل المثال، فإنّ الوثيقة (RFC 1958)، المُعنونة: "مبادئ بنيويّة لشبكة الإنترنت" (Architectural Principles of the Internet)، [20] لا تحتوي ذكراً مُباشراً لوجود كدسة من الطبقات، بل تشير إلى وجود طبقة الإنترنت، ومجموعة من الطبقات العُليّا. إنّ ضعف التركيز على تعزيز مفهوم كدسة الطبقات هو أحد الاختلافات الأساسية بين نموذج الانترنت (TCP/IP) وبين نموذج الاتصال المعياريّ (OSI).

أمّا الوثيقة (RFC 1122)، المُعنونة: " مُتطلبات مُضيفي الإنترنت، طبقات الاتصال " فهي تذكر وجود نموذج مُكوّن من أربع طبقاتٍ، حيث تُميّز كل طبقة باسم يُعرّفُها لا برقم بالشكل التالي:

إنّ نموذج الإنترنت (TCP/IP) ومفهوم الطبقات كانا قيّد الاستخدام قبل تطوير نموذج الاتصال المعياريّ (OSI). ومُنذ ذلك الحين، فإنّ المُقارنة بين النموذجين هي موضُوع دائم في الكتب وقاعات المُحاضرات، وغالباً ما تسبب ارتباكاً لأنّ لكلّ نموذجٍ افتراضاتُه الخاصّة وأهدافه التي طُوّر من أجلها، ويشمل ذلك تفاوتاً في أهميّة الالتزام الصارم بمفهوم الطبقات بين النموذجين، ولا يُعدّ نموذج الاتصال المعياريّ (OSI) إضافة توسيعيّة لاحقة لنموذج الإنترنت (TCP/IP).

إنّ نموذج الإنترنت (TCP/IP) هو طريقة لشرح آليّات عمل البروتوكولات مع بعضها البعض وليس نموذجاً لتطوير البروتوكولات ، ولذلك فهو يفتقد للبنية الشكليّة المثاليّة الموجُودة في نموذج الاتصال المعياريّ (OSI). لا تعتمد مجموعة مهندسي شبكة الإنترنت (IETF) على نموذجٍ رسميّ ولا ترى في ذلك قيداً يُشترط الالتزام به. ويُعبّر ديفيد كلارك (David Clark) عن ذلك بقوله: "نحن نرفُض: الملوك والرؤساء والتصويت. نحن نُؤمِن: بتوافق الآراء وبالشفيرة المصدريّة السليمة".

فيما يلي، وصفٌ توضيحيّ لكل طبقةٍ من حزمة بروتكوكولات الإنترنت (TCP/IP) بدءاً من المستوى الأدنى:

طبقة الربط

تدفّق المُعطيات بين طرفيتين عبر شبكة مُتباعدة بحسب نموذج الإنترنت (TCP/IP).


إنّ إطار عمل طبقة الربط هو الشبكة المحليّة التي يتصل معها المُضيف. وهي الطبقة الدُنيا في نموذج بالإنترنت (TCP/IP)، على اعتبار أن النموذج مُستقل عن عتاد الشبكة (Network Hardware). ونتيجة لذلك، فإن هذا النموذج قابل للتشغيل على أيّ منصّة ، بِمعزل عن تكنولوجيا العتاد المُستعملة.

تقوم هذه الطبقة بنقل الرزم بين طبقتي إنترنت في مُضيفين مُختلفين مُتصّلين مع نفس الشبكة المحليّة. يتمّ التحكّم بعملية إرسال واستقبال الرزم عبر وسط ما من خلال برنامج التعريف في بطاقة الشبكة وأيضاً عبر برنامجها الدّائم (Firmware) أو شريحة التعريف (Chipset) فيها، ويشمل ذلك إضافة الترويسة وإرسال الإطار عبر وسط النقل الفيزيائيّ. أيّ تفاصيل أعمق من هذا المُستوى، يُفترض وجُودُها ولكنّها غير مشمُولة في النموذج.

في هذه الطبقة، يُمكن أن يتمّ فرز الرزمة لتُرسل عبر شبكةٍ افتراضيّةٍ خاصّة (VPN) [25] أو لتُسلّم إلى أحد بروتوكولات الأنفاق لإعدادها للمرور عبر نفقٍ ما. وفي هذه الحالة ستتمّ عملية التغليف مُجدداً وكأنّ الرزمةَ كاملةٌ هي مُعطيات في طبقة التطبيق. يشتمل نموذج الإنترنت (TCP/IP) أيضاً على بروتوكولات مُطابقة العناوين، التي تعمل على المُطابقة بين عناوين طبقة الإنترنت وعناوين طبقة الربط، في حال وجُودها. على الرغم من أنّ وظيفة هذا النوع من البروتوكولات لا تُؤهّلها لتُصنّف أنّها عاملة في هذه الطبقة، لكن جزءاً من عملها على الأقلّ يحصُل فيها.

إنّ طبقة الربط في نموذج الإنترنت (TCP/IP) تتوافق مع الطبقة الفيزيائيّة (Physical Layer) وطبقة ربط المُعطيات (Data Link Layer)، وهما الطبقتين الأولى والثانية في نموذج الاتصال المعياريّ (OSI).

طبقة الإنترنت

هي الطبقة المسؤُولة عن انتقال الرزمةَ عبر عدّة شبكاتٍ من مصدرها إلى وجهتها. وبشكلٍ أساسيّ، فإنّها تهتمُّ بقضيتين أساسيتيّن هُما عنونة المُضيفين وتوجيه الرزم.

إنّ بروتوكول الإنترنت (IP) هو البروتوكول العامِل على هذه الطبقة، وهناك إصداران لهُ قيّد التشغيل اليوم، هما الإصدار الرابع (IPv4) والإصدار السادس (IPv6)، [26] ويملك البروتوكول آليّة خاصّة تتيح له التعرّف على البروتوكول المُستعمل في المستوى التالي، فجميع رزم بروتوكول الإنترنت (IP) تحتوي على حقل خاص يضمّ رقماً يميّز بروتوكول المستوى التالي،ويملك كل بروتوكول يعمل فوق بروتوكول الإنترنت مُعرّفاً خاصّاً به يُمنح من قبل الهيئة المانحة لأرقام وعناوين شبكة الإنترنت (IANA).

يتمّ استخدم بروتوكول الإنترنت (IP) من قبل بروتوكولات أخرى تعمل في المستوى التالي، وقد تكون هذه البروتوكولات عاملة في طبقة النقل مثل بروتوكول التحكّم بالنقل (TCP) أو بروتوكول رزم المُستخدم (UDP)، أو بروتوكولات لا تناسب وظيفتها طبقة النقل، ولكنها تعمل بأيّ حال في المستوى التالي لبروتوكول الإنترنت (IP)، مثل بروتوكول رسائل التحكّم في شبكة الإنترنت (ICMP) [27] أو بروتوكول إدارة المجموعات في شبكة الإنترنت (IGMP). [28]

تُؤمّن طبقة الانترنت نقل مُعطياتٍ غيرَ موثُوقٍ بين عُقدتين مُوجودتين في شبكتين مُختلفيتن تُسمّيان المَصدر والوجّهة، والاختلاف بين الشبكات يكون بشكلٍ أساسيّ اختلافاً في العنونة، وتُسمّى هذه العملية بالتوجيه. يحصُل التوجيه عن طريق إيّجاد أفضل مسارٍ مُتاح يربط مصدر كل رزمة مع وجهتها، ثم يجري نقل الرزمة عبر هذا المسار من خلال عددٍ من النقلات بين عُقد الشبكة، التي تكون مُوجّهاتٍ بشكلٍ رئيسي، وتسمى هذه النقلات عادةً بالقفزات (Hop).

إنّ طبقة الإنترنت في نموذج الإنترنت (TCP/IP) تتوافق مع طبقة الشبكة (Network Layer)، وهي الطبقة الثالثة في نموذج الاتصال المعياريّ (OSI).

طبقة النقل

تُنشئ طبقة النقل قنوات اتصال لنقل المُعطيات بين المُضيفين، وذلك بمعزل عن البُنية الحقيقيّة للشبكة وتوزُّعها. ويتمّ استخدام هذه القنوات من قبل طبقة التطبيق. تتضمن مُسؤوليّة هذه الطبقة التحكّم بالأخطاء (Error Control) وتقطيع المُعطيّات (Segmentation) والتحكّم بالتدفّق (Flow Control) والتحكّم بالازدحام (Congestion Control)، بالإضافة إلى عنونّة الخدمات باستعمال أرقام المنافذ. يمكن تصنيف قنوات الاتصال التي يتمّ إنشاؤها في هذه الطبقة إلى نوعين: قنواتٍ تتطلب تهيئة الاتصال (Connection-Oriented)، ويقوم بروتوكول التحكم بالنقل (TCP) بإنشاء هذا النوع من القنوات، و قنواتٍ لا تتطب تهيئة الاتصال (Connection-less)، مثل تلك التي يقوم بروتوكول رزم المستخدم (UDP) بإنشائها.

تُعرّف هذه الطبقة مفهُوماً جديداً هو المنفذ (Port)، والهدف الأساسيّ من استعمالِه هو إيجادُ طريقةٍ لعنونّة الخدمات التي يتمّ تقديمها في طبقة التطبيق، يجري منح كل قناةٍ تمّ إنشاؤُها رقمي منفذ خاصّين بها، الأول رقم منفذ المصدر والآخر للوجهة. إنّ هناك معياراً عامّاً لأرقام منافذ الخدمات الأساسيّة، ويتيح ذلك للمُستخدمين طلب الحصول على هذه الخدمات بشكل ٍ بسيط بالاعتماد نموذج طلب الخدمة (Client/Server Model). إنّ جمعَ رقم المنفذ مع عنوان بروتكول الإنترنت (IP) الخاصّ بالمُضيف، ينتج مقبساً (Socket) وهو المعرّف المُميز للقناة التي تمّ إنشاؤها.

تهتمُ هذه الطبقة بمطلب الوثوقيّة في الشبكة. يُوصف بروتوكول الإنترنت (IP) بأنه غيرُ موثوقٍ، وهو يُؤمّن أفضل ما يمكن لتوصيل الرزم، بدون ضمان وصولُها، وهو إمّا أن يعتمد على بروتوكول التحكّم بالنقل (TCP) العامل في هذه الطبقة، لتأمين مطلب الوثوقيّة، أو أن يعملَ في المستوى التالي لبروتوكولٍ مَوثُوقٍ مثل بروتوكول التحكّم عاليّ المُستوى في ارتباط البيانات (HDLC). [29]

يُؤمّن بروتوكول التحكّم بالنقل (TCP) قضايّا الوثوقيّة مثل توفيره لآليّة لترتيب المُعطيات الواردة بغير تسلسل إرسالها، كما أنّه يضمن مُعدّلَ خطأ أصغريّ بسبب إمكانيّة تصحيح الأخطاء في حال حصُولِها، ويتخلّص من الرزم المُكررة، ويمنع تشكّل الازدحام في الشبكة.

يعمل بروتوكول التحكّم بتدفق النقل (Streaming Control Transmission Protocol SCTP) [30] على تقديم خدمة نقلٍ مَوّثوقٍ أيضاً في هذه الطبقة، وهو يعتمد على قنواتٍ تتطلب تهيئة الاتصال، كما أنّه يدّعم تدفّقاً للرسائل، على عكس بروتوكول التحكّم بالنقل (TCP) الذي يدّعم تدفّقاً للبايتات، بالإضافة إلى إمكانيّة تنضيد (Multiplexing) أكثر من تدفّقٍ معاً عبر نفسِ القناة. يدّعم بروتوكول التحكّم بتدفق النقل (SCTP) مفهوم الاستضافة المُتعددة (Multihoming)، وبالتالي يُمكن أن يعمل على طرفيّة تملك أكثر من عنوان بروتوكول الإنترنت (IP) وأكثر من بطاقة شبكة، بحيث لا يتوقّف الاتصال إذا فشلت أحدُ البطاقات.

إنّ بروتوكول رزم المستخدم (UDP) هو أحد البروتوكولات العاملة في هذه الطبقة، وهو بروتوكول غير موّثوق ويُؤمّن خدمة لنقل المُعطيات بأفضلِ مجهُودٍ للتوّصيل (Best Effort Delivery)، على الرغم من احتوائِه على آليّةٍ لفحص التحقق الجمعيّ (Checksum)، لكنّها تعتمد خوارزميّة بسيطة وغير كافيّة. يُعدّ بروتوكول رزم المستخدم (UDP) خيّاراً مثاليّاً للتطبيقات التي تتضمّن تدفّقاً للوسائِط المُتعددة (Multimedia Streaming) كالصوت والصورة أو تطبيقات نقل الصوت باستعمال بوتوكول الإنترنت (VoIP) وغيرُها من التطبيقات العاملة في الزمن الحقيقي، حيث يكون وصول المُعطيات إلى هدفِها ذو أولويّة أعلى من وثوقيّة الشبكة.

يعمل في هذه الطبقة أيضاً، بروتوكول النقل في الزمن الحقيقيّ (Real-Time Transmission Protocol RTP)، [31] وهو مُصمم من أجل نقل المُعطيات في الزمن الحقيقي مثل تدفّقات الصوت أو الفيديو.

إنّ طبقة النقل، أو طبقة الوصل بين المُضيفين، في نموذج الإنترنت (TCP/IP) تتوافق مع الطبقة الرابعة في نموذج الاتصال المعياريّ (OSI)، والتي تسمّى أيضاً طبقة النقل.

طبقة التطبيق

تتضمّن طبقة التطبيق البروتوكولات المُستخدمة من قبل التطبيقات وذلك إمّا لتقديم الخدمات للمُستخدمين أو لتبادل المُعطيات بين التطبيقات عبر قنوات الاتصال التي تمّ إنشاؤها ضمن الشبكة باستخدام بروتوكولات الطبقات الأدنى، وقد يتضمّن عمل البروتوكولات في هذه الطبقة خدمات أساسيّة مثل التوجيه أو تهيئة المُضيفين. من الأمثلة عن بروتوكولات طبقة التطبيق بروتوكول نقل النص التشعّبي (HTTP) و بروتوكول نقل البريد البسيط (SMTP) [32] بروتوكول نقل الملفات (FTP) وبروتوكول التهيئة الآليّة للمُضيفين (DHCP).[33] في هذه الطبقة، يتمّ توليد البيانات التي يجبُ أن تُرسل عبر الشبكة ، ثم يجري تغليفُها بترويسة أحد بروتوكولات طبقة التطبيق وتمريرُها إلى طبقة النقل.

لا يوجد في نموذج الإنترنت (TCP/IP) أي مُحددات خاصّة بتنسيق أو عرض البيانات، كما لا يوجد أي طبقات إضافيّة تفصل بين طبقتي التطبيق والنقل، وتترك المهمّات المُقابلة لطبقتي العرض (Presentation Layer) والجلسة (Session Layer) في النموذج المعياريّ (OSI) إلى المكاتب البرمجيّة ولواجهة برمجة التطبيقات (Application Programming Interface API).

تُعامل بروتوكولات طبقة التطبيق بروتوكولات الطبقات الدُنيّا وكأنّها صندوقٌ أسود، أيّ أنّها لا تهتمّ بكيفيّة عملها، بل بنتيجته وهي وجود قنوات اتصالٍ صالحةٌ لتبادل المُعطيات بين المُضيفين، وذلك على الرغم من أنّ التطبيقات عادة تكون مُدركةً لبعض المفاهيم المتعلّقة بالشبكة مثل عنوان بروتوكول الإنترنت (IP) ورقم المنفذ.

غالباً ما ترتبط بروتوكولات طبقة التطبيق بتطبيقاتٍ مُحددة عاملةٍ وفق نموذج طلب الخدمة (Client/Server Model)، أو خدمات معرُوفة تمّ منحُها أرقامَ منافذَ مُميّزة من قبل الهيّئة المانحة لأرقام وعناوين شبكة الإنترنت (IANA)، على سبيل المثال، فإنّ مُخدّم بروتوكول نقل النص التشعّبي (HTTP) يستخدم دائماً رقم المنفذ (80)، أمّا بروتوكول تل نت (Telnet) فيستخدم رقم المنفذ (23). أمّا العُملاء (Client)، فعادةً ما يحصلون على أرقام منافذ مُؤقّتة وعشوائيّة، تُسمّى المنافذ العابرة (Ephemeral Port)، ويتمّ تهيئة التطبيقات لتوليد هذه الأرقام من ضمن مجال مُحدد.

لا تهتمّ طبقة النقل وما يليّها ببروتوكولات طبقة التطبيق، ولا تفحص الموجّهات أو المبدلات (Switch) المُعطيات المارّة عبّرها. ولكن بعض جدران الحماية (Firewall) أو البروتوكولات مثل بروتوكول حجز الموارد (RSVP) [34] أو الخدمات مثل خدمة ترجمة عناوين الشبكة (NAT) معنيّة بالحمل في هذه الطبقة.

يُميّز نموذج الإنترنت (TCP/IP) بين بروتوكولات المُستخدم وبروتوكولات دعم الشبكة، فالأولى تُستخدم من من أجل خدمة تطبيقات المُستخدم، مثل بروتوكول نقل الملفات (FTP)، أما الثانيّة فتؤمّن الخدمات الأساسيّة المُرتبطة بالشبكة، مثل نظام أسماء النطاقات (DNS).[35]

غالباً ما تُقارن طبقة التطبيق في نموذج الإنترنت (TCP/IP) مع الطبقة الخامسة والسادسة والسابعة في نموذج الاتصال المعياريّ (OSI)، وهي على الترتيب طبقات الجلسة والعرض والتطبيق.

أسماء الطبقات وعددها في أدبيات الشبكات

يُظهر الجدول التالي نماذج متعددة لشبكات الاتصال. يتراوح عدد الطبقات فيها بين ثلاثة وسبعة.

الوثيقة (RFC 1123)، معيار شبكة الإنترنت أكاديمية سيسكو (Cisco) كوروس (Kurose)، فوروزان (Forouzan) كومير (Comer)، كوزيروك (Kozierok) ستالينغز (Stallings) تانين بام (Tanenbaum) الوثيقة (RFC 871)، نموذج الأربانت نموذج الاتصال المعياريّ (OSI)
أربع طبقات أربع طبقات خمس طبقات خمس طبقات أربع طبقات أربع طبقات ثلاث طبقات سبع طبقات
نموذج الإنترنت نموذج الإنترنت نموذج الإنترنت خماسي الطبقات أو حزمة بروتوكولات الإنترنت نموذج الإنترنت المرجعي خماسي الطبقات نموذج الإنترنت نموذج الإنترنت المرجعي خماسي الطبقات "نموذج شبكة أربانت المرجعي" نموذج الاتصال المعياريّ (OSI)
التطبيق التطبيق التطبيق التطبيق التطبيق التطبيق التطبيق/العمليات التطبيق
العرض
الجلسة
النقل النقل النقل النقل الربط بين المضيفين أو النقل النقل الربط بين المضيفين النقل
الإنترنت الربط بين الشبكات (Internetwork) الشبكة الإنترنت الإنترنت الإنترنت الشبكة
الربط منفذ الشبكة ربط المُعطيات ربط المُعطيات (النفاذ إلى الشبكة) النفاذ إلى الشبكة ربط المُعطيات منفذ الشبكة ربط المُعطيات
الفيزيائية العتاد الفيزيائية الفيزيائية الفيزيائية

مقارنة بين نموذج الإنترنت (TCP/IP) ونموذج الاتصال المعياريّ (OSI)

مقارنة بين طبقات نموذج الإنترنت (TCP/IP) و نموذج الاتصال المعياريّ (OSI).


إنّ الطبقات الثلاثة العُليّا نموذج الاتصال المعياريّ (OSI)، أي طبقات التطبيق والعرض والجلّسة، غير مُتمايّزة في نموذج الإنترنت (TCP/IP) الذي يحتوي على طبقة وحيدة فقط فوق طبقة النقل. لا يوجد مُتطلّبات تصميميّة في نموذج الإنترنت (TCP/IP) تفرض وجود بنية مُتجانسة مُحددة فوق طبقة النقل. بعض التطبيقات التي تعتمد النموذج المعياريّ (OSI)، مثل تطبيق أكس 400 (X.400)، تقوم بدمج الطبقات الثلاثة السابقة.

يبدو تأثير دمج طبقتي العرض والجلّسة في طبقة واحدة هي التطبيق ذو أثرٍ ضئيل في بروتوكولات مثل بروتوكول نقل النص التشعبي (HTTP) وبروتوكول إرسال البريد البسيط (SMTP)، لكن هذا الأثر يُصبح جليّاً عند استعمال بروتوكولات أخرى مثل بروتوكول الاتصال الآمن (SSH) وبروتوكول بدء الجلسة (SIP). [36] في نموذج الإنترنت (TCP/IP) هناك إضافة توسيعيّة لتغطية وظائف طبقة العرض في النموذج المعياريّ (OSI)، تُسمى هذه الإضافة توسيعيّة بمُلحق البريد الإلكتروني مُتعدد الأغراض (Multipurpose Internet Mail Extensions MIME).

لا تلتزم مجموعة مهندسي شبكة الإنترنت (IETF) بشكلٍ صارم بكدسة مُحددة من الطبقات عند تطوير البروتوكولات، ولذلك فإنّ بعض البروتكولات لا تتوافق من حيث الوظيفة مع طبقة مُعيّنة بحدّ ذاتِها، من الأمثلة على ذلك بعض البروتوكولات التي تسمح بالوصول المُتعدد (Multi-access) مثل الإيثرنت (Ethernet) [37] وهي تملك نظامَ عنونةٍ خاصاً بها، وإذا استُعمِلَ هذا البروتوكول مع بروتوكول الإنترنت (IP)، الذي يملك نظام عنونته الخاص أيضاً، لابدّ من وجود بروتوكولٍ لمُطابقة العناوين بين النظامين، مثل بروتوكول مُطابقة العناوين (ARP)، [38] وهذا البروتكول يجب أن يوجد وظيفيّاً تحت طبقة الإنترنت ولكن فوق طبقة الربط. شملت الإضافة التوسيعيّة للنموذج المعياريّ (OSI) حالات كهذه ضمن التنظيم الداخلي لطبقة الشبكة (Internal Organization of The Network Layer IONL). تشمل الوثيقة (RFC 3439) المُعنونّة: "بعض المبادئ التوجيهيّة لبُنيّة وفلسفة شبكة الإنترنت " (Some Internet Architectural Guidelines and Philosophy) [39] تصنيفاً للحالات التي يكون الاستعمال الصارم لكدسة الطبقات فيها ضارّاً بعملية التطوير.

بشكلٍ مُماثل، فإنّ بروتوكولات مثل بروتوكول رسائل التحكّم في شبكة الإنترنت (ICMP) وبروتوكول إدارة المجموعات في شبكة الإنترنت (IGMP)، تعمل فوق بروتوكول الإنترنت (IP) ولكن تحت طبقة النقل. شملت الإضافة التوسيعيّة للنموذج المعياريّ (OSI) حالات كهذه ضمن الإطار الإداري لنموذج الاتصال المعياريّ (OSI Reference model Management Framework OSIRM MF) من خلال إضافة طبقة فرعيّة هي طبقة الإدارة (Management Layer)، بالمُقابل أشارت الوثيقة (RFC 792)، المُعنونّة: "بروتوكول رسائل التحكّم في شبكة الإنترنت" (Internet Control Message Protocol)، [27] إلى أنّ بروتوكول رسائل التحكّم في شبكة الإنترنت (ICMP) هو جزء مُدمج من بروتوكول الإنترنت (IP).

في نموذج الإنترنت (TCP/IP)، لا يوجد إجماع حول ما الذي يقابل الطبقة الفيزيائيّة الموجودة في نموذج الاتصال المعياريّ (OSI)، والآراء تنقسم بين فريقين أحدهُما يقول أنّ نموذج الإنترنت (TCP/IP) لا يغطّي هذه القضايّا، والآخر يفترض وجود طبقة أخرى تحت طبقة الربط هي طبقةُ العتاد (Hardware Layer) أو طبقة النقاذ إلى الشبكة (Network Access Layer) وقد اعتُمد هذا النموذج المُكوّن من خمس طبقات من قبل مُنظّماتٍ بارزةٍ مثل معهد مُهندسي الكهرباء والإلكترونيات (IEEE) والاتحاد الدُوليّ للاتصالات (ITU).

تدعم بروتوكولات نموذج الإنترنت (TCP/IP) مفهوم التغليف المُتكرر (Recursive Encapsulation)، وأوضح الأمثلة على ذلك هو بروتوكول التوجيه والتغليف العام (GRE). [40]

الاستعمالات التطبيقيّة

لا تفرض حزمة بروتوكولات الإنترنت (TCP/IP) أيّ متطلّبات خاصّة للعتاد أو أيّ متطلّبات برمجية من أجل استعمالها، فقط يجب أن يمتلك العتاد و البرمجيّات قدرة على تبادل المُعطيات عبر الشبكة، ونتيجةً لذلك، فإنّ هذه الحزمة مدعومة بشكلٍ أساسيّ في جميع المنصّات اليوم. إنّ استعمال الحزمة بالحدّ الأدنى يتطلب استخدام البروتوكولات التالية: بروتوكول الإنترنت (IP) وبروتوكول مُطابقة العناوين (ARP) وبروتوكول رسائل التحكم في شبكة الإنترنت (ICMP) وبروتوكول التحكّم بالنقل (TCP) وبروتوكول رزم المُستخدم (UDP) وبروتوكول إدارة المجموعات في شبكة الإنترنت (IGMP).

إنّ استعمال الإصدار السادس من بروتوكول الإنترنت (IPv6) يتطلّب إصداراً خاصّةً من بروتوكول رسائل التحكّم، هو الإصدار السادس (ICMPv6)، [41] وغالباً ما يكون هذا الاستعمال مُرفقاً بحزمة بروتوكول الإنترنت الأمنيّة (IPSec).[42]

بشكلٍ عام، يهتمّ مُبرمجو التطبيقات بطبقتي التطبيق والنقل، أمّا الخدمات التي تقدمُّها الطبقات الدُنيّا فهي مدعُومة بشكل افتراضيّ من نظام التشغيل. يُمكن للمبرمجين استعمال حزمة بروتوكولات الإنترنت إمّا عن طريق المقابِس أو عن طريق واجهة برمجة التطبيقات (API). هناك تطبيقاتٌ خاصةٌ للنموذج مثل نموذج الإنترنت البسيط (Lightweight TCP/IP)، وهو كدسة بروتوكولات بشيفرة مصدريّة مفتُوحة مخصصة للأنظمة المُدمجة.

تُعالج البرامج الثابتة في المُتحكّمات الصغريّة في بطاقة الشبكة (NIC) القضايا المُتعلّقة بوسط النقل، وهي بحاجة للبرامج التعريفيّة في نظام التشغيل لتنجح في ذلك. في المستوى التاليّ تسيطر العناصر الإلكترونيّة، وهي غير قابلة للبرمجة، وغالباً ما تُستخدم دارات مُتكاملة مُحددة التطبيقات (Application-Specific integrated circuit ASIC) لهذا الغرض.

انظر أيضاً

المراجع

  1. ^ ا ب ج Socolofsky, T.; Kale, C. (يناير1991). "RFC 1180, A TCP/IP Tutorial". The Internet Society (بالإنجليزية). Retrieved 22 يوليو 2017. {{استشهاد ويب}}: تحقق من التاريخ في: |تاريخ= (help) and الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  2. ^ Postel, J. (سبتمبر 1981). "RFC 791, Internet Protocol, DARPA Internet Program Protocol Specification". The Internet Society (بالإنجليزية). Retrieved 22 يوليو2017. {{استشهاد ويب}}: تحقق من التاريخ في: |تاريخ الوصول= (help) and الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  3. ^ Postal, J. (Sep 1981). "RFC 793, Transmission control protocol, DARPA internet program,protocol specification". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  4. ^ Braden, R. (أوكتوبر 1989). "RFC 1123, Requirements for Internet Hosts -- Application and Support". The Internet Society (بالإنجليزية). Retrieved 22 يوليو 2017. {{استشهاد ويب}}: تحقق من التاريخ في: |تاريخ= (help) and الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  5. ^ "ISO/IEC 7498-1:1994, Information technology -- Open Systems Interconnection -- Basic Reference Model: The Basic Model". International Organization for Standardization (ISO) (بالإنجليزية). 1994. Retrieved 2017-07-22. {{استشهاد ويب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |شهر= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  6. ^ Vinton G., Cerf; Cain, Edward (1983). Computer Networks 7 (PDF) (بالإنجليزية). North-Holland: Elsevier Science Publishers. p. 307-318. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  7. ^ Vinton, G. Cerf; Robert, E. Khan (May 1974). "A Protocol for Packet Network Intercommunication". Institute of Electrical and Electronic Engineers (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  8. ^ Postel, Jon (1977). IEN #2, 2.3.3.2 Comments on Internet Protocol and TCP (TXT) (بالإنجليزية). Internet Society. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  9. ^ Abramson, Norman (1970). Fall Joint Computer Conference, The Aloha system - another alternative for computer communications (PDF) (بالإنجليزية). p. 281-285. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  10. ^ Robert M. Metcalfe; David R. Boggs (1976). Communications of the ACM, Volume 19 Issue 7,Ethernet: distributed packet switching for local computer networks (بالإنجليزية). ACM. p. 395-405. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  11. ^ Kahn, R. E. (1979). The introduction of packet satellite communications (بالإنجليزية). National Telecommunications Conference. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  12. ^ Janet Annbate (2000). Inventing the Internet (بالإنجليزية). The MIT Press. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  13. ^ Baker, F. (Jun 1995). "RFC 1812, Requirements for IP Version 4 Routers". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  14. ^ Baker, F. (Dec 1974). "RFC 675, Specification of Internet Transmission Control Program". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  15. ^ "Internet History, TCP/IP Internet Protocol". Internet History, Who invented the Internet, When was the Internet invented (بالإنجليزية). 1994. Retrieved 2017-07-22. {{استشهاد ويب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |شهر= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  16. ^ Hauben, Ronda (Jun 1998). "From the ARPANET to the Internet. A Study of the ARPANET TCP/IP Digest and of the Role of Online Communication in the Transition from the ARPANET to the Internet". Columbia University (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  17. ^ Segal, Ben (Apr 1995). "A Short History of Internet Protocols at CERN". WebLab (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  18. ^ Egevang, K. (Jan 2001). "RFC 3022, Traditional IP Network Address Translator (Traditional NAT)". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  19. ^ Marjory S. Blumenthal; David D. Clark (2001). Communications Policy in Transition, Rethinking the design of the Internet: the end-to-end arguments vs. the brave new world (بالإنجليزية). ACM. p. 91-139. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  20. ^ Carpenter, B. (Jun 1996). "RFC 1958, Architectural Principles of the Internet". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  21. ^ Fielding, R.; Gettys, J.; Mogul, J.; Frystyk, H.; Masinter, L.; Leach, P.; Berners-Lee, T. (Jun 1999). "Hypertext Transfer Protocol -- HTTP/1.1". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  22. ^ Ylonen, T.; Lonvick, Ed., C. (Jan 2006). "The Secure Shell (SSH) Protocol Architecture". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  23. ^ Postel, J.; Reynolds, J. (أوكتوبر 1985). "RFC 959, file trransfer protocol (FTP)". The Internet Society (بالإنجليزية). Retrieved 22 يوليو 2017. {{استشهاد ويب}}: تحقق من التاريخ في: |تاريخ= (help) and الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  24. ^ Postal, J. (Aug 1980). "RFC 768, User Datagram Protocol". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  25. ^ Rosen, E.; Rekhter, Y. (Feb 2006). "RFC 4363, BGP/MPLS IP Virtual Private Networks (VPNs)". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  26. ^ Deering, S.; Hinden, R. (Dec 1998). "RFC 2460, Network Working Group: version 6 of the Internet Protocol (IPv6)". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  27. ^ ا ب Postal, J. (Aug 1981). "RFC 792, Internet Control Message protocol, DARPA internet program,protocol specification". The Internet Society (بالإنجليزية). Retrieved 2017-07-14. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  28. ^ Cain, B.; Deering, S.; Kouvelas, I.; Fenner, B.; Thyagarajan, A. (أوكتوبر 2002). "RFC 3376, Internet Group Management Protocol, Version 3". The Internet Society (بالإنجليزية). Retrieved 22 يوليو 2017. {{استشهاد ويب}}: تحقق من التاريخ في: |تاريخ= (help) and الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  29. ^ "ISO/IEC 13239:2002, Information technology -- Telecommunications and information exchange between systems -- High-level data link control (HDLC) procedures". International Organization for Standardization (ISO) (بالإنجليزية). 2002. Retrieved 22 يوليو 2017. {{استشهاد ويب}}: تحقق من التاريخ في: |سنة= / |تاريخ= mismatch (help) and يحتوي الاستشهاد على وسيط غير معروف وفارغ: |شهر= (help)
  30. ^ Stewart, R. (سبتمبر 2007). "RFC 4960, Stream Control Transmission Protocol". The Internet Society (بالإنجليزية). Retrieved 13 يوليو2017. {{استشهاد ويب}}: تحقق من التاريخ في: |تاريخ الوصول= (help) and الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  31. ^ Jacobson, V. (Jul 2003). "RFC 3350, RTP: A Transport Protocol for Real-Time Applications". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  32. ^ Klensin, J. (Apr 2001). "RFC 2821, Simple Mail Transfer Protocol". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  33. ^ Droms, R. (Mar 1997). "RFC 2131, Dynamic Host Configuration Protocol". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  34. ^ Jamin, S. (Sep 1997). "RFC 2205, Resource ReSerVation Protocol (RSVP),Version 1 Functional Specification". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  35. ^ Mockapetris, P. (Nov 1987). "RFC 1035, Domain names - implementation and specification". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  36. ^ Rosenberg, J.; Schulzrinne, H.; Camarillo, G.; Johnston, A.; Peterson, J.; Sparks, R.; Handley, M.; Schooler, E. (Jun 2002). "RFC 2543, SIP: Session Initiation Protocol". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  37. ^ "IEEE 802.3-2015, IEEE Standard for Ethernet". Institute of Electrical and Electronics Engineers (IEEE) (بالإنجليزية). 2015. Retrieved 2017-07-22. {{استشهاد ويب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |شهر= (help)
  38. ^ C. Plummer, David (Nov 1982). "RFC 826, An Ethernet Address Resolution Protocol or Converting Network Protocol Addresses". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  39. ^ Meyer, D. (Dec 2002). "RFC 3439, Some Internet Architectural Guidelines and Philosophy". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  40. ^ Hanks, S.; Farinacci, D.; Traina, P.; Li, T. (Oct 1994). "Generic Routing Encapsulation (GRE)". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  41. ^ Gupta, M. (Mar 2006). "RFC 4443, Internet Control Message Protocol (ICMPv6),for the Internet Protocol Version 6 (IPv6) Specification". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)
  42. ^ Kent, S.; Seo, K. (Dec 2005). "RFC 4301,Security Architecture for the Internet Protocol". The Internet Society (بالإنجليزية). Retrieved 2017-07-22. {{استشهاد ويب}}: الوسيط غير المعروف |شهر= تم تجاهله يقترح استخدام |تاريخ= (help)صيانة الاستشهاد: التاريخ والسنة (link)

قراءة موسَّعة

  • Douglas Comer (2001). Internetworking with TCP/IP: Principles, protocols, and architecture (بالإنجليزية) (الأولى ed.). CET. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • Joseph Davies; Thomas Lee (2003). Microsoft Windows Server 2003 TCP/IP Protocols and Services Technical Reference (بالإنجليزية) (الثانية ed.). Microsoft Press. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • Behrouz A Forouzan (2002). TCP/IP Protocol Suite (بالإنجليزية) (الثانية ed.). McGraw-Hill. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • Craig Hunt (1997). TCP/IP Network Administration (بالإنجليزية) (الثانية ed.). O'Reilly & Associates. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • Thomas Albert Maufer (1999). IP Fundamentals: What Everyone Needs to Know About Addressing and Routing (بالإنجليزية) (الأولى ed.). Prentice Hall. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • Ian McLean (2000). Windows 2000 TCP/IP Black Book: An Essential Guide To Enhanced TCP/IP in Microsoft Windows 2000 (بالإنجليزية). Coriolis Group Books. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • Pro .NET 1.1 Network Programming, Second Edition (بالإنجليزية) (الثانية ed.). Apress. 1997. {{استشهاد بكتاب}}: الوسيط غير المعروف |المؤلفين المشاركين= تم تجاهله يقترح استخدام |authors= (help)
  • W. Richard Stevens (1993). TCP/IP Illustrated, Vol. 1: The Protocols (بالإنجليزية) (الأولى ed.). Addison-Wesley Professional. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • W. Richard Stevens; Gary R. Wright (1995). TCP/IP Illustrated: The Implementation, Vol. 2 (بالإنجليزية) (الأولى ed.). Addison-Wesley Professional. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • W. Richard Stevens (1996). TCP/IP Illustrated: v. 3: TCP for Transactions, HTTP, NNTP and the Unix Domain Protocols (بالإنجليزية) (الأولى ed.). Addison-Wesley Professional. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)
  • Andrew S. Tanenbaum (2002). Computer Networks (بالإنجليزية) (الرابعة ed.). Prentice Hall. {{استشهاد بكتاب}}: يحتوي الاستشهاد على وسيط غير معروف وفارغ: |المؤلفين المشاركين= (help)

وصلات خارجية