تقنية

حساب وقت تنزيل ملف: السرعة والوحدات وحدود التقدير

منفذ Ethernet أصفر في غلاف داكن، وتحته حروف LAN
منفذ شبكة محلية في جهاز اتصال؛ الصورة توضيحية ولا تمثل اختبار سرعة. تصوير Tony Webster، 2018، بعنوان LAN Port - Ethernet Port on Cable Modem [6]، بترخيص CC BY 2.0 [7]. حُولت إلى WebP دون قص أو تغيير الأبعاد.

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

الخلاصة السريعة

تقدير زمن التنزيل يبدأ بوحدات واضحة وسرعة مناسبة للملف نفسه، ثم يتغير إذا تغيرت السرعة أو توقفت العملية.

  • البايت يساوي ثمانية بتات؛ انتبه إلى الفرق بين MB/s وMbps، وبين الوحدات العشرية والثنائية. [1]
  • في المثال المؤلف، يحتاج ملف حجمه تسعمئة ميجابايت إلى تسعين ثانية عند وصول بياناته بثبات بمعدل ثمانين ميجابت في الثانية.
  • سعة الاتصال ومعدل النقل وزمن الاستجابة مقاييس مختلفة؛ رقم زمن الاستجابة لا يدخل مكان سرعة التنزيل في المعادلة. [2]
  • ميّز بيانات الملف الجديدة عن رؤوس الحزم والبيانات المعاد إرسالها عند تفسير عدادات النقل. [3]
  • عند تغير المعدل، اجمع أزمنة الأجزاء أو اقسم إجمالي البيانات على إجمالي الزمن، وأضف التوقفات إذا أردت مدة الانتظار كاملة.
  • اختبار السرعة يقيس اتصالًا بشروط محددة؛ راجع ما يقيسه وما يجمعه، ثم حدّث التقدير من تقدم الملف الفعلي. [4]
  • استخدم نطاقًا مشروطًا للتخطيط، واحسب الرفع بمعدل الرفع، ثم خصص وقتًا منفصلًا لأي خطوة لاحقة تحتاجها المهمة. [5]

اقرأ الوحدة كاملة قبل الحساب

يحتوي البايت على ثمانية بتات. ويرمز MB إلى الميجابايت، بينما تعني Mbps ميجابت في الثانية. وتوضح جداول المعهد الوطني الأمريكي للمعايير والتقنية أن الميجابايت العشري يساوي مليون بايت، وأن الميبيبايت، ورمزه MiB، يساوي مليونًا وثمانية وأربعين ألفًا وخمسمئة وستة وسبعين بايتًا. لذلك لا تبدل الرموز في منتصف المسألة، ولا تفترض أن كل ظهور لكلمة «ميجا» يشير إلى المقدار نفسه. [1]

ابدأ بورقة صغيرة تكتب فيها معلومتين: حجم الملف مع رمزه كما ظهر، ومعدل التنزيل مع وحدته كاملة. إذا وجدت الحجم مكتوبًا بالجيجابايت العشري، فكل جيجابايت يساوي ألف ميجابايت. أما إذا ظهر الرمز الثنائي، فحوّل المقدار وفق عدد بايتاته قبل استعمال معادلة مبنية على الوحدات العشرية. وجود حرف إضافي في الرمز ليس تفصيلًا يمكن حذفه عند النسخ. [1]

مثلًا، كتابة «الحجم تسعمئة والسرعة ثمانون» لا تنتج مسألة مكتملة. هل التسعمئة ميجابايت أم ميجابت؟ وهل الثمانون مقدار في الثانية أم في الدقيقة؟ أعد كتابة السؤال بهذه الصورة: «ملف حجمه تسعمئة ميجابايت عشرية، ومعدل وصول بياناته ثمانون ميجابت في الثانية». أصبحت الافتراضات قابلة للمراجعة، وصار بإمكان شخص آخر إعادة الحساب من دون أن يخمن ما تقصده بكلمة السرعة.

طبّق المعادلة ثم راجع النتيجة بالعكس

إذا عرفت حجمًا ومعدلًا ثابتًا بالوحدات المتوافقة، فإن الزمن يساوي الحجم مقسومًا على المعدل. في مثالنا التعليمي، نحول تسعمئة ميجابايت إلى ميجابت بضربها في ثمانية، فيصبح المقدار سبعة آلاف ومئتي ميجابت. نقسمه على ثمانين ميجابت في الثانية، فنحصل على تسعين ثانية، أي دقيقة ونصف. هذه أرقام مؤلفة لتوضيح الحساب، وليست نتيجة اختبار اتصال أو قياسًا لخدمة معينة.

يمكن كتابة العملية مختصرة هكذا: 900 × 8 ÷ 80 = 90 ثانية. وللتأكد من الاتجاه، اضرب الثمانين في التسعين، ثم اقسم الناتج على ثمانية؛ ستعود إلى تسعمئة ميجابايت. هذه المراجعة العكسية تكشف خطأ شائعًا: قسمة الحجم على ثمانية بدل ضربه عندما تريد نقله من البايت إلى البت. ولا تحتاج إلى حفظ طريقتين مختلفتين ما دمت تكتب الوحدة مع كل مقدار.

إذا كانت أداة التنزيل تعرض معدلًا فعليًا قدره عشرة ميجابايت في الثانية، فالمسألة أقصر: تسعمئة مقسومة على عشرة تساوي تسعين ثانية. لا تضرب في ثمانية هنا؛ الحجم والمعدل مكتوبان بالبايت أصلًا. ولو أضفت عامل الثمانية مرة أخرى فستحسب زمنًا يساوي ثمانية أمثال المطلوب، مع أنك بدأت بالمعلومات الصحيحة. سبب الخطأ في هذه الحالة تحويل غير لازم، لا بطء الاتصال.

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

اختر معدل النقل المناسب للملف

تفرق إرشادات Cloudflare بين سعة النقل المتاحة، ومتوسط ما يمر فعليًا خلال مدة، وزمن الاستجابة الذي يقيس تأخر انتقال البيانات. ترتبط هذه المقاييس بالأداء، لكنها لا تعني الشيء نفسه. لذلك لا تضع قراءة زمن الاستجابة بالمللي ثانية في مقام معادلة حجم الملف، ولا تفترض أن رقم السعة المعلن يساوي دائمًا معدل وصول بيانات التنزيل الذي تتابعه. [2]

لنفترض أن ورقتك تتضمن سعة معلنة قدرها مئة ميجابت في الثانية، بينما تقدم الملف في تجربة افتراضية بمعدل ستة ميجابايت في الثانية. حساب الزمن من المئة يجيب عن سؤال مشروط بوصول الملف بذلك المعدل الأعلى؛ أما الستة فتصف المعدل المفترض الذي رصدته للملف. تستطيع الاحتفاظ بالحسابين، لكن سمّ الأول تقديرًا عند السعة المختارة، والثاني تقديرًا مبنيًا على تقدم التنزيل، ولا تعرضهما باعتبارهما قياسًا واحدًا متناقضًا.

اكتب أيضًا اتجاه العملية. تنزيل ملف إلى جهازك يختلف عن إرساله إلى خدمة على الإنترنت؛ ويعرض شرح Cloudflare لاختبار الشبكة الرفع والتنزيل بوصفهما اختبارين منفصلين لاتجاهين متعاكسين. عند إرسال ملف، استعمل معدل الرفع الملائم لذلك الإرسال. اختيار الرقم الأكبر من شاشة النتائج لمجرد أنه يقلل زمن الانتظار المتوقع لا يجعل الحساب أقرب إلى المهمة التي تنفذها. [5]

ميّز تقدم الملف عن كل البيانات المارة

تقدم المذكرة المعلوماتية RFC 3148 مثالًا واضحًا على أهمية تعريف ما نحسبه: تقيس معدل نقل البيانات الفريدة على الزمن المنقضي، وتستبعد رؤوس الحزم، ولا تعد النسخة المعاد إرسالها بيانات جديدة مرة أخرى. هذه وثيقة عن منهج قياس النقل، وليست دليلًا يقول إن كل عداد في كل تطبيق يعرض المقدار نفسه. فائدتها هنا أن تسأل عن معنى العدد قبل إدخاله في المعادلة. [3]

إذا كان المطلوب معرفة ما بقي من الملف، فابحث عن حجمه وما اكتمل منه في عملية التنزيل نفسها. عداد يجمع كل الحركة خلال فترة لا يجيب تلقائيًا عن مقدار ما أضيف إلى هذا الملف تحديدًا. وللمقارنة الحسابية، يجب أن يشير البسط والمقام إلى النوع نفسه من البيانات: حجم الملف ومعدل تقدمه، أو كمية أخرى ومعدلها المعرّف بوضوح. جمع مقدارين مختلفين تحت كلمة «بيانات» يخفي الاختلاف بدل أن يحله. [3]

في سجل افتراضي، قد تكتب: «اكتمل من الملف ثلاثمئة ميجابايت عند بداية الفترة، ثم أصبح المكتمل سبعمئة وخمسين عند نهايتها». الفرق أربعمئة وخمسون ميجابايت. هذا هو مقدار التقدم الذي ستقسمه على زمن الفترة، لا العدد النهائي كله. كتابة قراءة البداية تمنعك من إسناد بيانات نُزلت سابقًا إلى الدقائق التي بدأت قياسها للتو، وتتيح العودة إلى السجل إذا بدا المتوسط غير معقول.

عند تغير السرعة اجمع الأزمنة

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

قد يبدو جمع السرعتين وقسمتهما على اثنين حلًا أسهل، لكنه يعطي أربعة ونصف ميجابايت في الثانية، وهو غير صحيح لهذه الحالة. المرحلتان متساويتان في كمية البيانات، لا في الزمن؛ قضيت وقتًا أطول عند السرعة الأقل. ولو استعملت المتوسط الخاطئ لتقدير زمن الملف، فستحصل على نحو مئة وثلاث وثلاثين ثانية، أي نتيجة أقصر من الزمن الذي حسبته لكل جزء على حدة.

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

أضف الآن توقفًا افتراضيًا مدته أربعون ثانية بين المرحلتين. يظل زمن النقل النشط مئة وخمسين ثانية، لكن مدة الانتظار الكلية تصبح مئة وتسعين ثانية. إذا كان سؤالك «متى أستطيع استخدام الملف؟»، فلا تحذف التوقف من السجل ثم تتوقع أن يصف متوسط النقل النشط الانتظار كله. ويمكن أن تسجل الرقمين معًا بشرط تسميتهما، بدل استخدام كلمة المدة لمعنيين مختلفين في المقارنة نفسها.

حدّث التقدير من التقدم الفعلي

يوضح M-Lab أن اختبار NDT يقيس أداء اتصال باستخدام تدفق واحد، ويعرض مقاييس للرفع والتنزيل وزمن الاستجابة. كما يوضح جمع عنوان الإنترنت ونتائج الاختبار ونشر بيانات الاختبارات للأبحاث. اقرأ وصف الأداة وسياسة بياناتها قبل تشغيلها؛ نتيجة الاختبار تخص قياسًا له طريقة محددة، ولا تصبح بمجرد ظهورها موعدًا مضمونًا لاكتمال كل ملف من كل خدمة. [4]

وفي شرح منشور عام ألفين وعشرين، عرضت Cloudflare استخدام أحجام ملفات متزايدة وتكرار القياسات، وبيّنت أن أعلى قراءة لا تمثل الأداء طوال الوقت. نستفيد من المبدأ عند اختيار معدل للتقدير، دون افتراض أن واجهة الأداة أو تفاصيل حسابها اليوم مطابقة لذلك الشرح التاريخي. لا تبنِ موعدًا ضيقًا على قفزة سريعة في قراءة واحدة ثم تتجاهل ما تلاها. [5]

عد إلى سجل الملف الافتراضي: إذا وصلت أربعمئة وخمسون ميجابايت خلال خمس وسبعين ثانية، فمتوسط تلك الفترة ستة ميجابايت في الثانية. ولنفترض أن الحجم الكلي ألف وثمانمئة ميجابايت، وأن قراءة المكتمل الحالية سبعمئة وخمسون. يبقى ألف وخمسون ميجابايت، يحتاج إلى مئة وخمس وسبعين ثانية إذا استمر المعدل نفسه، أي دقيقتين وخمس وخمسين ثانية. استخدمنا قراءة المكتمل الحالية لحساب الباقي، لا زيادة الفترة وحدها.

سجل وقت هذا التقدير، ثم راجعه إذا تغير تقدم الملف بوضوح. لا تبدأ الحساب من الحجم الأصلي في كل مرة، ولا تعامل التقدير القديم كأنه عداد لا يجوز أن يزيد. شرط الحساب هو بقاء المعدل المختار مناسبًا للجزء القادم؛ فإذا تغير الشرط تغير الجواب. والأرقام المتتابعة في السجل تساعدك على رؤية هذا التغير بدل تفسير كل قفزة في الوقت المتبقي على أنها خطأ في القسمة.

حوّل الحساب إلى وقت يمكنك التخطيط له

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

افصل موعد وصول الملف عن المهمة التي ستنجزها بعده. لنفترض أنك تحتاج، في خطة مؤلفة، إلى ثلاث دقائق لفتح ملف والتأكد من الصفحات المطلوبة ثم حفظ نسخة في مجلد العمل. إذا استغرق نقله دقيقتين، فخطة العمل تحتاج إلى خمس دقائق لهذه الخطوات المتتابعة، قبل أي احتياط تختاره. لا تنسب الدقائق الثلاث إلى بطء الشبكة؛ إنها وقت مهمة إضافية حددتها أنت، وليست مدة تقنية ثابتة لكل ملف.

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

المصادر ومتابعة القراءة

  1. NIST: البايت والبادئات العشرية والثنائية . (يفتح في نافذة جديدة)physics.nist.gov
  2. Cloudflare: السعة ومعدل النقل وزمن الاستجابة . (يفتح في نافذة جديدة)cloudflare.com
  3. RFC 3148: منهج قياس نقل البيانات، 2001 ، مذكرة معلوماتية. (يفتح في نافذة جديدة)rfc-editor.org
  4. M-Lab: اختبار NDT وطبيعة البيانات المجمعة . (يفتح في نافذة جديدة)measurementlab.net
  5. Cloudflare: شرح اختبار الشبكة، 26 مايو 2020 ، مثال تاريخي على منهج القياس. (يفتح في نافذة جديدة)blog.cloudflare.com
  6. Tony Webster: صورة منفذ Ethernet في جهاز شبكة، 2018 ، سجل الصورة ومصدرها الأصلي. (يفتح في نافذة جديدة)commons.wikimedia.org
  7. ترخيص الصورة CC BY 2.0 . (يفتح في نافذة جديدة)creativecommons.org

أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.