1. مفاهيم الشبكة الأساسية
أولاً ، توضيح مفهوم: برمجة الشبكة! = برمجة موقع الويب ، تسمى برمجة الشبكة الآن بشكل عام برمجة TCP/IP.
2. بروتوكول اتصال الشبكة والواجهة
3. فكرة طبقة بروتوكول الاتصالات
4. النموذج المرجعي
خامسا بروتوكول IP
يحتوي الكمبيوتر على عنوان IP فريد من نوعه حتى لا يتم إرسال رسالة الخطأ عند التواصل مع بعضها البعض.
ينقسم عنوان IP إلى أربعة قطاعات بواسطة نقطة واحدة. يتم تمثيل عنوان IP داخل الكمبيوتر بأربعة بايت. يمثل بايت واحد جزءًا ، ويمكن للرقم الأقصى الذي يمثله كل بايت الوصول إلى 255 فقط.
السادس. بروتوكول TCP وبروتوكول UDP
يوجد TCP و UDP على نفس الطبقة ويعتمدان على طبقة IP. نظرًا لأن جهاز الكمبيوتر الخاصين بهما عناوين IP مختلفة ، يمكن تمييز جهاز الكمبيوتران ويمكنهما التحدث مع بعضهما البعض. هناك عمومًا طريقتان للحديث: الأول هو TCP والثاني هو UDP. TCP هو اتصال موثوق به. TCP يشبه إجراء مكالمة هاتفية. تحتاج إلى استدعاء الطرف الآخر أولاً وانتظار الاستجابة للطرف الآخر قبل الاستمرار في التحدث إلى الطرف الآخر. وهذا هو ، يجب أن تؤكد أنه يمكنك إرسال الرسالة قبل إرسال الرسالة. TCP تحميل أي شيء موثوق. طالما تم إنشاء اتصال على جهازين ، سيتم بالتأكيد نقل البيانات المرسلة على الجهاز إلى جهاز الطرف الآخر. يشبه UDP إرسال برقية ، وسيتم ذلك إذا تم إرساله. لا يهم ما إذا كان الطرف الآخر يتلقى ذلك أم لا ، لذا فإن UDP غير موثوق به. على الرغم من أن TCP ينقل البيانات بشكل موثوق ، إلا أنه ينتقل ببطء. ينقل UDP البيانات غير موثوق بها ، ولكن يتم نقلها بسرعة.
7. برمجة المقبس
بشكل عام ، تسمى برمجة الشبكة برمجة المقبس ، ويعني المقبس "المقبس" باللغة الإنجليزية.
قم بتركيب مقبس على كلا الكمبيوترين ، ثم قم بتوصيل طرفي الكبل في مآخذ جهاز الكمبيوتر الخاصين ، بحيث يمكن لجهاز الكمبيوتران إنشاء اتصال. هذا المقبس هو المقبس.
نظرًا لأنهم يمكنهم التواصل مع بعضهم البعض ، قلت إنك خادمي ، لكن بالمعنى المنطقي ، يجب أن أرسل الأشياء إليك أولاً ، وبعد ذلك سوف تتعامل معها وإعادة توجيهها. لذلك تسميه خادمه. ولكن بالمعنى التقني ، سيقوم فقط TCP بتقسيم الخادم والعميل. بالنسبة إلى UDP ، بمعنى صارم ، لا يوجد ما يسمى الخادم والعميل. يسمى مقبس خادم TCP ServersOcept ، ويسمى مقبس العميل Socket.
عندما يتم توصيل جهاز كمبيوتر ببعضهما البعض ، يجب أولاً معرفة عناوين IP الخاصة بهم ، ولكن توفير عناوين IP فقط لا يكفي. يجب أن يكون لديك أيضًا رقم منفذ الاتصال ، أي تطبيق الاتصال به.
يتم استخدام رقم المنفذ لتمييز التطبيقات المختلفة على الجهاز. يحتل رقم المنفذ 2 بايت داخل الكمبيوتر. هناك ما يصل إلى 65536 أرقام المنافذ على الجهاز. يمكن أن يشغل التطبيق أرقام منافذ متعددة. إذا تم احتلال رقم المنفذ بواسطة تطبيق ، فلن تتمكن التطبيقات الأخرى من استخدام رقم المنفذ هذا. تذكر أنه إذا كان البرنامج الذي نكتبه يجب أن يشغل رقم المنفذ ، إذا أراد احتلال رقم المنفذ أعلاه 1024 ، فلا يشغل رقم المنفذ أقل من 1024 ، لأنه قد يتم طلب النظام في أي وقت. يتم تقسيم رقم المنفذ نفسه إلى منفذ TCP ومنفذ UDP. TCP Port 8888 ومنفذ UDP 8888 هما منفذان مختلفان تمامًا. هناك 65536 منافذ TCP ومنافذ UDP.
8. نموذج اتصال مقبس TCP
9. أمثلة استخدام المقبس
Serversocket
استيراد java.net.*؛ استيراد java.io.*؛ الفئة العامة testServersOcket {public static void main (string args []) reswors {serversocket ss = new serversocket (6666) ؛ /* عند إنشاء كائن ServersOcept ، غالبًا ما يتم تعيينه رقم منفذ. المعنى هو استخدام رقم المنفذ الذي يجب أن يستخدمه كائن ServersOcket الجديد وأي منفذ للاستماع إلى اتصال العميل. لذلك ، فإن معنى تحديد رقم المنفذ هو إخبار الكمبيوتر الذي يستمع فيه كائن ServersoCket إلى اتصال العميل. */ * يتلقى جانب الخادم طلبات اتصال العميل بشكل مستمر ، وبالتالي فإن البرمجة من جانب الخادم هي عمومًا حلقة ميتة ويتم تشغيلها إلى ما لا نهاية. */ بينما (صحيح) {socket s = s.accept () ؛ /*استدعاء طريقة قبول () على جانب الخادم لقبول كائن اتصال العميل. طريقة القبول () هي طريقة حظر. لقد كنت أنتظر بحماقة لما إذا كان العميل يتقدم بالاتصال. ثم يقوم مقبس المقبس على جانب الخادم بإنشاء اتصال بمقبس المقبس على العميل. * / /* ما إذا كان يمكن للعميل الاتصال بجانب الخادم يعتمد على ما إذا كان جانب الخادم يقبل طلب اتصال العميل. إذا قبل العميل طلب الاتصال ، فقم بتثبيت مأخذ توصيل على جانب الخادم لإنشاء اتصال مع العميل من خلال هذا المقبس ، والتواصل مع بعضها البعض. */ system.out.println ("عميل متصل!") ؛ /* استخدم دفق InputStream لتلقي المعلومات المرسلة من العميل ، واستخدم دفق بيانات DataInputStream لمعالجة المعلومات المستلمة*/ datainputstream dis = datainputstream جديدة (S.GetInputStream ()) ؛ ) يتم حظر البرنامج من جانب الخادم ، بحيث لا يمكن للاتصال بالاتصال بالخادم ، ومع ذلك ، فيجب أن يتم استدعاء طريقة القبول () ، يجب أن يتم استدعاء طريقة القبول في الحلقة التالية. أن تكون قادرة على قراءة المعلومات. مقبس العميل
استيراد java.net.*؛ استيراد java.io.*؛ الفئة العامة testclientsocket {public static void main (string args []) request {socket s = new Socket ("127.0.0.1" ، 6666) ؛ /*يتقدم العميل بالاتصال بجانب الخادم* / /*بعد الاتصال بجانب الخادم ، يمكنك إخراج المعلومات إلى جانب الخادم واستلام المعلومات التي يتم إرجاعها من جانب الخادم ، واستلام معلومات إخراج المعلومات واستلام معلومات الإرجاع. يجب استخدام كل من مبدأ إدخال الدفق والإخراج لمعالجة المعلومات*//*فيما يلي معلومات الإخراج دفق الإخراج إلى جانب الخادم*/ OutputSream OS = S.GetOutputStream () ؛ DataOutputStream DOS = جديد dataoutputStream (OS) ؛ thread.sleep (30000) ؛/*ينام العميل لمدة 30 ثانية قبل إرسال المعلومات إلى الخادم*/ dos.writeutf ("Hello Server!") ؛ }}يطلب العميل اتصالًا بالخادم من خلال المنفذ 6666. بعد أن يقبل الخادم طلب اتصال العميل ، يقوم بتثبيت مأخذ توصيل على الخادم ثم يقوم بتوصيل هذا المقبس بمقبس العميل ، بحيث يمكن للخادم التواصل مع العميل. عندما يتقدم عميل آخر للاتصال ، بعد قبوله الخادم ، سيتم تثبيت مقبس آخر للاتصال بمقبس العميل.