Häufig gestellte Fragen
اختبار إنتاجية VPN باستخدام مشاركة ملفات بعيدة ليس فكرة جيدة عادةً لسببين:
السبب الأول هو بروتوكول مشاركة الملفات نفسه. تم تصميم بروتوكولات مشاركة الملفات مثل SMB و AFP و NFS للشبكات المحلية التي تتميز بالسرعة والموثوقية وزمن الوصول المنخفض. الإنترنت، من ناحية أخرى، بطيء (على الأقل الاتصال به)، وغير موثوق به، وله زمن وصول مرتفع للغاية. للحصول على نتائج واقعية، تحتاج إلى استخدام بروتوكول تم تحسينه لمثل هذا الموقف، مثل HTTP أو FTP.
السبب الثاني هو تنفيذ بروتوكول مشاركة الملفات. تستخدم معظم مشاركات الملفات اليوم SMB، وهو بروتوكول مشاركة الملفات الخاص بنظام Windows. لدى Apple تنفيذ خاص بها لهذا البروتوكول، لكن هذا التنفيذ ليس جيدًا على الإطلاق. في حين أن تنفيذ SMB 3.x ضعيف بالفعل، فإن تنفيذ SMB 1.x/2.x (وضع التوافق) فظيع، ولأسباب عديدة غالبًا ما يعود macOS إلى وضع التوافق هذا. عند الاختبار باستخدام مشاركة ملفات NAS محلية، حصلنا على 28 ميجابايت في الثانية باستخدام SMB 3 و 18 ميجابايت في الثانية فقط باستخدام SMB 1، مقارنة بـ 50 ميجابايت في الثانية باستخدام AFP.
إذا كان لديك جهاز Mac على الجانب البعيد، فمن السهل جدًا إعداد خادم HTTP قياسي للاختبار. كل ما عليك فعله هو فتح التطبيق القياسي "Terminal" (استخدم Spotlight للعثور عليه) ثم تشغيل مجموعة الأوامر التالية (يتم تأكيد كل أمر عن طريق Return/Enter):
mkdir /tmp/www-bench
cd /tmp/www-bench
dd count=1048576 bs=1024 if=/dev/random of=1GiB.dat
php -S 0.0.0.0:8080
ينشئ الأمر الأول دليلًا جديدًا، وينتقل الأمر الثاني إلى هذا الدليل، وينشئ الأمر الثالث ملف بيانات بحجم 1 جيجابايت مملوءًا ببيانات عشوائية، ويبدأ الأمر الأخير خادم HTTP بسيطًا يقدم محتوى الدليل الحالي على المنفذ 8080. الآن يمكن لمستخدمي VPN ببساطة فتح هذا العنوان في Safari (أو أي متصفح آخر):
http://a.b.c.d:8080/1GiB.dat
حيث "a.b.c.d" هو عنوان IP الخاص بجهاز Mac الذي أدخلت عليه الأوامر أعلاه. من خلال مراقبة سرعة النقل في المتصفح، يمكنك الحصول على فكرة جيدة عن قدرة VPN لديك. بالطبع، هذا محدود بالعديد من العوامل، مثل سرعة اتصالك بالإنترنت المحلي، وسرعة اتصال الإنترنت البعيد، وقوة معالجة بوابة VPN (والتي عادة ما تكون أقل بكثير من قوة معالجة جهاز Mac).
لتنظيف النظام بعد الاختبار، قم بتنشيط نافذة Terminal مرة أخرى واضغط على CTRL+C لإيقاف خادم HTTP، ثم قم بتشغيل الأوامر التالية:
cd
rm -r /tmp/www-bench