TCP Optimal Window Size Calculator

.calc-header { margin-bottom: 30px; padding: 25px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 12px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); color: white; } .calc-header h2 { margin-top: 0; color: white; font-size: 28px; margin-bottom: 10px; } .calc-header p { margin: 10px 0; opacity: 0.95; font-size: 15px; } .input-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-top: 20px; } .input-group { display: flex; flex-direction: column; gap: 8px; } .input-group label { font-weight: 600; font-size: 14px; color: rgba(255,255,255,0.95); } .input-group input { padding: 14px; font-size: 16px; border: 2px solid rgba(255,255,255,0.3); border-radius: 6px; font-family: 'Courier New', monospace; background: rgba(255,255,255,0.95); transition: all 0.3s ease; } .input-group input:focus { outline: none; border-color: #4CAF50; background: white; box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.1); } .button-group { margin-top: 15px; } .calc-button { padding: 14px 35px; font-size: 16px; background: #4CAF50; color: white; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; transition: all 0.3s ease; box-shadow: 0 2px 4px rgba(0,0,0,0.2); } .calc-button:hover { background: #45a049; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(0,0,0,0.3); } .calc-button:active { background: #3d8b40; transform: translateY(0); } .result-section { background: white; border: 1px solid #e0e0e0; border-radius: 8px; margin-bottom: 15px; overflow: hidden; box-shadow: 0 2px 4px rgba(0,0,0,0.05); transition: all 0.3s ease; display: none; } .result-section.show { display: block; } .result-section:hover { box-shadow: 0 4px 8px rgba(0,0,0,0.1); } .section-header { background: linear-gradient(135deg, #4CAF50 0%, #45a049 100%); color: white; padding: 15px 20px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; user-select: none; transition: background 0.3s ease; } .section-header:hover { background: linear-gradient(135deg, #45a049 0%, #3d8b40 100%); } .section-header h3 { margin: 0; font-size: 18px; display: flex; align-items: center; gap: 10px; } .section-header .icon { font-size: 20px; } .section-toggle { font-size: 24px; transition: transform 0.3s ease; } .section-header.collapsed .section-toggle { transform: rotate(-90deg); } .section-content { padding: 20px; background: #fafafa; max-height: 2000px; overflow: hidden; transition: max-height 0.3s ease, padding 0.3s ease; } .section-content.collapsed { max-height: 0; padding: 0 20px; } .data-row { display: flex; margin: 12px 0; padding: 10px; background: white; border-radius: 4px; border-left: 3px solid #4CAF50; } .data-label { font-weight: bold; color: #555; min-width: 180px; flex-shrink: 0; } .data-value { color: #333; font-family: 'Courier New', monospace; word-break: break-word; font-size: 18px; } .data-value.highlight { color: #4CAF50; font-weight: bold; font-size: 20px; } .formula-box { background: #e3f2fd; border-left: 4px solid #2196F3; padding: 15px 20px; border-radius: 4px; margin: 15px 0; font-family: 'Courier New', monospace; color: #1565c0; } .info-section { background: white; border: 1px solid #e0e0e0; border-radius: 8px; margin-top: 20px; overflow: hidden; box-shadow: 0 2px 4px rgba(0,0,0,0.05); } .info-section h3 { background: #f5f5f5; margin: 0; padding: 15px 20px; border-bottom: 1px solid #e0e0e0; color: #333; } .info-section h4 { color: #4CAF50; margin: 20px 0 10px 0; font-size: 16px; } .info-section p, .info-section ul { margin: 10px 0; line-height: 1.6; color: #555; } .info-section ul { padding-left: 20px; } .info-section li { margin: 8px 0; } .info-section code { background: #f5f5f5; padding: 2px 6px; border-radius: 3px; font-family: 'Courier New', monospace; color: #d32f2f; } .info-content { padding: 20px; } .help-text { margin-top: 15px; font-size: 14px; color: rgba(255,255,255,0.9); background: rgba(0,0,0,0.1); padding: 10px 15px; border-radius: 4px; } /* Responsive design */ @media (max-width: 768px) { .input-grid { grid-template-columns: 1fr; } .data-row { flex-direction: column; } .data-label { margin-bottom: 5px; min-width: auto; } }

حاسبة حجم النافذة الأمثل لـ TCP

قم بحساب الحجم الأمثل لنافذة TCP اللازمة لزيادة الإنتاجية بناءً على سرعة الارتباط وزمن وصول الشبكة.

نصيحة:قيم RTT الشائعة: الشبكة المحلية (0.001 ثانية)، الإقليمية (0.01 ثانية)، عبر البلاد (0.05 ثانية)، الدولية (0.1 ثانية)

📊نتائج الحساب

حجم نافذة TCP:
-
حجم نافذة TCP:
-
صيغة:عرض النطاق الترددي (بت في الثانية) × RTT (ثواني) ÷ 8 = نافذة TCP (بايت)

تغييرات تكوين النظام

يتطلب كل نظام تشغيل تغييرات مختلفة في التكوين لضبط نافذة استلام TCP.

ويندوز إكس بي

  • يفتحregedit.exe
  • تصفح لHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  • يمكنك تغييرTcpWindowSizeوGlobalMaxTcpWindowSize

يرجى ملاحظة أنه يمكن تعديل العديد من العوامل الأخرى في أداء النقل في نفس الصفحة. يرجى زيارة مايكروسوفت للحصول على تفاصيل إضافية.

ويندوز 7 و 8 و 10

  • يفتحregedit.exe
  • تصفح لHKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  • يمكنك تغييرGlobalMaxTcpWindowSize

يرجى ملاحظة أنه يمكن تعديل العديد من العوامل الأخرى في أداء النقل في نفس الصفحة. يرجى زيارة مايكروسوفت للحصول على تفاصيل إضافية.

لينكس

نظرًا لوجود العديد من إصدارات Linux، لم يتم توضيح جميع خيارات التكوين أدناه. لكن الأوامر التالية قد تساعدك. أولاً لعرض إعدادات الشبكة التي تم تكوينها حاليًا، استخدم:

  • cat /proc/sys/net/ipv4/tcp_mem
  • cat /proc/sys/net/core/rmem_default
  • cat /proc/sys/net/core/rmem_max
  • cat /proc/sys/net/core/wmem_default
  • cat /proc/sys/net/core/wmem_max
  • cat /proc/sys/net/core/optmem_max

لتحرير التكوين:

  • sysctl -p /etc/sysctl.conf
  • sysctl -w net.core.rmem_max=8388608
    • تكوين الحد الأقصى لحجم المخزن المؤقت لنظام التشغيل
  • sysctl -w net.core.wmem_max=8388608
    • تكوين الحد الأقصى لحجم المخزن المؤقت لإرسال نظام التشغيل
  • sysctl -w net.core.rmem_default=65536
    • تكوين نظام التشغيل الافتراضي يتلقى حجم المخزن المؤقت
  • sysctl -w net.core.wmem_default=65536
    • تكوين حجم المخزن المؤقت لإرسال نظام التشغيل الافتراضي

يرجى ملاحظة أن هذه القيم ليست بالضرورة الإعدادات النهائية التي تريد استخدامها. إذا كان لديك دعم مؤسسة Redhat أو دعم مؤسسة Ubuntu، فيمكنهم تقديم المزيد من المساعدة.

ملحوظة:65.535 بايت هي القيمة القصوى تاريخيًا. ومع ذلك فإن IETF RFC 1323 يستوعب الأحجام الأكبر.