قد يحتفظ الخادم باتصال مفتوح مع أحد العملاء لساعات، بينما يكون العميل قد انقطع عن الشبكة أو أغلق التطبيق دون إنهاء الاتصال بشكل صحيح.
إذا لم يكتشف النظام ذلك، فقد تستمر هذه الاتصالات في استهلاك الموارد دون أي فائدة. وهنا يأتي دور TCP Keepalive.
TCP Keepalive هو آلية داخل بروتوكول TCP ترسل حزمًا صغيرة بشكل دوري للتحقق من أن الطرف الآخر ما زال متصلًا.
إذا لم تصل استجابة بعد عدة محاولات، يعتبر الاتصال منتهيًا ويتم إغلاقه.
إغلاق الاتصالات غير المستخدمة.
منع تراكم الاتصالات الميتة.
مثل قواعد البيانات وخوادم الألعاب.
Keepalive يتحقق من وجود الاتصال على مستوى بروتوكول TCP.
أما Heartbeat فهو رسالة يرسلها التطبيق نفسه للتأكد من أن الخدمة تعمل بشكل صحيح، وليس فقط أن الاتصال ما زال مفتوحًا.
بشكل طفيف جدًا، لأن الحزم صغيرة وتُرسل على فترات متباعدة.
يعتمد على نظام التشغيل وإعدادات التطبيق.
يساعد TCP Keepalive على اكتشاف الاتصالات التي لم تعد صالحة، مما يحافظ على موارد الخادم ويحسن استقرار التطبيقات التي تعتمد على اتصالات طويلة الأمد.