TCP (Transmission Control Protocol) هو بروتوكول طبقة النقل الذي تعتمد عليه معظم التطبيقات التي لا تحتمل فقد البيانات، مثل تصفح الويب والبريد ونقل الملفات وSSH. يوصف بأنه Connection-Oriented لأنه ينشئ جلسة قبل إرسال البيانات، وReliable لأنه يضمن وصول كل البايتات بالترتيب الصحيح ويعيد إرسال ما يُفقد.
المصافحة الثلاثية Three-Way Handshake
- العميل يرسل SYN برقم تسلسل ابتدائي.
- الخادم يرد بـ SYN-ACK برقم تسلسله ويقر برقم العميل.
- العميل يرسل ACK، فتبدأ الجلسة.
وتُغلق الجلسة عادة بتبادل رسائل FIN وACK من الطرفين، أو بشكل مفاجئ برسالة RST.
آليات الموثوقية
- Sequence وAcknowledgment Numbers: ترقيم كل بايت وتأكيد استلامه، فيعرف المرسل ما يجب إعادة إرساله.
- Flow Control: عبر حقل Window يخبر المستقبل المرسل بحجم البيانات التي يستطيع استقبالها قبل الإقرار.
- Congestion Control: خوارزميات مثل Slow Start تخفض معدل الإرسال عند ملاحظة فقد الحزم، حتى لا تنهار الشبكة.
- Segmentation: تقسيم البيانات إلى مقاطع بحجم لا يتجاوز MSS.
أقل حجم لترويسة TCP هو 20 بايت، مقابل 8 بايت فقط في UDP، وهذا جزء من ثمن الموثوقية.
منافذ شائعة
| الخدمة | المنفذ |
|---|---|
| HTTP / HTTPS | 80 / 443 |
| SSH / Telnet | 22 / 23 |
| SMTP | 25 |
| BGP | 179 |
| RDP | 3389 |
مثال لاختبار منفذ
PS C:\> Test-NetConnection 203.0.113.10 -Port 443
$ nc -zv 203.0.113.10 22
نجاح الاختبار يعني أن المصافحة الثلاثية اكتملت، أي أن الطريق سليم والجدار الناري يسمح والخدمة تستمع فعلاً. وهذا أدق من ping الذي يختبر ICMP فقط.
الفرق بين TCP و UDP
TCP يضمن الوصول والترتيب لكنه يضيف تأخيراً وحملاً، بينما UDP يرسل دون جلسة ولا إقرار، فيناسب الصوت والفيديو المباشر وDNS. ولا تخلط بين TCP وحده ونموذج TCP/IP الذي يضم مجموعة البروتوكولات كلها. وفي الأمان، تستغل هجمات مثل SYN Flood المصافحة الثلاثية بإرسال طلبات SYN كثيرة دون إكمالها لاستنزاف موارد الخادم.





