الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن استخدام ال Ports

مغلق
بدأه هاني الأتاسي في 13 يوليو 2001 · 3 رد · 1,224 مشاهدة · في منتدى الشبكات العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ،

أريد أن أسئل إذا كانت هناك امكانية من استخدام أو فتح اتصال (socket) عن طريق Port محجوز مسبقا .. حسب تجربتي إذا أراد أحد البرامج فتح Port محجوز مثل 8080 فإن العملية تفشل ، لذا هل من الممكن مثلا اقفال ذاك الPort وفتحه من جديد ؟!؟!؟

وأشكركم جدا ...

Coding on the Cloud and for the Cloud!

My Blog

#2

حسب معلوماتي لا يوجد شيئ اسمه فتح او اقفال منفذ في بروتوكول TCP/IP بهل هناك الاستماع الى منذف او الاتصال عن طريق منفذ

المنفذ يتم فتحه (كما يقال بالعامية) عندما يكون هناك برنامج او ملف DLL او Service يقوم بالاستماع الى هذا المنفذ و انتظار وصول طلبات اليه و يقفل لحظة توقف هذا البرنامج الاستماع الى هذا المنفذ.

و لكن لا يمكن لبرنامجين الاستماع الى نفس المنفذ في لحظة واحدة حيث ان احدهما فقط يجب ان يقوم بالاستجابة للطلبات ، و فكرة المنافذ (Ports) اتت من فكرة تشغيل اكثر من برنامج على الشبكة في ان واحد ، بحيث نفس رقم ال IP يكون قادر على تحويل الطلبات الى اكثر من برنامج و هي عملية تقسيم لبروتوكول TCP/IP

لو كان لديك IIS و هو يستمع الى المنفذ 80 مثلا و قمت ببناء برنامج يستمع الى نفس المنفذ فلو اوقفت ال IIS سيمكنك استخدام برنامجك و العكس صحيح ، ولكن لا يمكن استخدام الاثنين معا

#3

أخي خضر يعطيك العافية ،

كلامك صحيح وكما ذكرت فإن بروتوكول TCP/IP يعتمد في عمله على عنوان ال IP و ال Port أي كل معلومة أو Datagram في الانترنيت أو الشبكة تملك معرفين وهما ال IP و ال Port ..

ولكن ليس من الضروري أن ال Port لا يتم فتحه من طرف السيرفر فقط ولكن أيضا من طرف الClient ، حيث يقوم ال Client بعملية connect مع السيرفر باعطاء ال IP وال Port الذي سوف يتم فيه الاتصال . وهذه العملية تقوم بحجز رقم ال Port في جهاز ال Client أي لا يستطيع أي برنامج آخر استعمال أو فتح نفس المنفذ من أجل عملية الاتصال . أما السيرفر فيقوم بعمليه bind مع عنوانه ال IP و الport الذي سوف يتم عبره استقبال البيانات وبعد ذلك يقوم بعملية الاستماع لذلك ال Port وينتظر عبره أي طلب ، ولكن ليس من الضروري أن يغلق الاتصال أو ال Port ففي ال IIS يتم قفل الاتصال وذلك بسبب أن عملية النقل تتم بسرعة وكمية المعلومات قليلة ومحدودة أما برامج ال chat فلا يتم قفل المنفذ حتى يتم اغلاق برنامج ال chat ..

طبعا لا يوجد طريقة مباشرة تجبر بها برنامج الذي يملك المنفذ من أن يغلق المنفذ . فلذلك ، أنا أبحث عن طريقة غير مباشرة تجبر البرامج مثل ال chat مثلا أن تغلق هذا المنفذ من أجل أن يستخدمه برنامجي . وبحثت قليلا على الانترنيت ووجدت عدة طرق ولكن بشكل غير تفصيلي . فهمت على السريع أن تلك البرامج تقوم بارسال كميات هائلة من البيانات على ال Port ومما يجبره على الاغلاق ..

بدي أسئلك سؤال .. أنا قرأت شوي عن protocol ال UDP/IP ومما فهمت أنو هذا الProtocol لا يحتاج إلى تحديد port من أجل التعامل معاه . ولكنه غير موثوق من أجل نقل البيانات الكبيرة حيث يمكن أن تضيع وهو يستخدم من أجل نقل البيانات الصغيرة .. وأنا أشك أن ال Yahoo Massenger يستعمل protocol ال UDP/IP عوضا عن ال TCP/IP .. فما رأيك بهذا ؟؟؟

:)

Coding on the Cloud and for the Cloud!

My Blog

#4

اخي هاني

وجدت هذا التعريف من كتاب Windows2000 NetWork and Oprerating System Essentials

وهو باختصار يعرف هذه الخاصية ضمن برتكول TCP/IP ومجال استعماله واعتقد انه يمكن الاستفادة منه في الغرض الذي تريد ولكن مع القبول بسلبياته

ولكن هل يكفي تعريف المنفذPort فقط للتعامل به

User Datagram Protocol (UDP)

User Datagram Protocol (UDP) is a transport layer protocol that identifies the destination application in network communications. UDP provides a connectionless packet delivery service that offers fast but unreliable, best-effort delivery of the data. UDP does not require an acknowledgment for the data received and does not attempt to retransmit data that is lost or corrupted. This means that less data is sent, but neither the arrival of packets nor the correct sequencing of delivered packets is acknowledged or guaranteed.

UDP is used by applications that transmit data to multiple computers by using broadcast or multicast transmissions. It is also used for transmitting small amounts of data or data that is not of high importance. Example uses of UDP include multicasting streaming media, such as during a live videoconference, and broadcasting a list of computer names, which are maintained for local communication.

To use UDP, the source application must supply its UDP port number as well as that of the destination application. It is important to note that UDP ports are distinct and separate from TCP ports, even though some of them use the same numbers.

اتمنى لكم التوفيق وارجو ان تخبرنا بتجربتك

هذا الموضوع مغلق.

مواضيع مشابهة