נגמר ה-CPU בנתב או במחשב הנייד? למה מהירות ה-VPN שלכם נעצרת מוקדם
נתב או מחשב נייד עלולים לאבד כוח עיבוד לפני שהקישור מתמלא. עקבו אחר העומס בכל ליבה במהלך העברה מבוקרת, ואז בדקו את ההאצה לפני שאתם מאשימים.
נתב מפרסם Wi-Fi מהיר ואז מתקשה להצפין תעבורה של שלושה מכשירים בבת אחת. מחשב נייד מגיע לגבול עיבוד בזמן שבקישור הגישה עוד יש מקום. בדרך כלל מאשימים קודם את השרת, ובדרך כלל הוא חף מפשע. הגבול נמצא במכונה שעושה את עבודת המנהרה, ומציאתו דורשת להתבונן באותה מכונה ולא במבחן המהירות.
התסמין מצביע על מכונה אחת, לא על האינטרנט
המקום שבו רצה המנהרה קובע איזה מעבד משלם עליה. אם הנתב מסיים אותה, כל לקוח מכוסה חולק את התקציב של אותו נתב. אם המחשב הנייד מריץ לקוח, המחשב משלם והנתב לא. מנהרות בשני הקצוות יוצרות שתי עומסות שכל אחת מהן יכולה להפוך לגבול ביום אחר. לתת שם למכונה הוא הצעד הראשון, וזה בדיוק הצעד שאנשים מדלגים עליו כשהם פותחים קריאה נגד הספק.
ספרו את המכשירים בין היישום לקצה המרוחק, ואז סמנו את זה שמצפין. כל השאר הוא רק נושא בתים שהוא לא יכול לקרוא.
התבוננו בעומס בכל ליבה במהלך העברה
אחוז CPU כולל הוא הכלי הלא נכון, כי עבודת הצפנה לעתים קרובות נועלת ליבה אחת בזמן שהשאר בטלות. הסתכלו בנתונים בכל ליבה במהלך העברה מבוקרת ושימו לב לליבה קרובה לרוויה. ממוצע מתון עם נימה אחת עסוקה הוא אות חזק, ואילו ממוצע גבוה בלי נימה עסוקה בדרך כלל מצביע על תוכנית לא קשורה. הדפוס חשוב יותר מהמספר.
mpstat -P ALL 1 5
top -H -b -n 1 | head -20
lscpu | grep -i -E "model name|aes"
הפקודה השלישית אומרת לכם אם המעבד חושף הוראות AES, מה שמשנה את עלות אותו צופן במידה ניכרת. היא לא אומרת אם מימוש ה-VPN משתמש בהן, והפער בין שתי העובדות האלה הוא המקור לרוב טענות האופטימיזציה.
הפרידו הצפנה מטיפול בחבילות
הצפנה היא עלות אחת מבין כמה. העתקת חבילות בין הליבה למרחב המשתמש, חיפושי ניתוב, כללי חומת אש וטיפול בממשקים כולם תורמים, ומימושים מסוימים משלמים יותר על העתקה מאשר על קריפטוגרפיה. שימו לב איזה מונה עולה יחד עם ההעברה במקום לסמוך על שם התהליך שיסביר כל מחזור. מנהרה במרחב המשתמש ומנהרה בתוך הליבה יכולות להציג פרופילים שונים לגמרי לאותה תעבורה.
אם ליבה אחת עסוקה בתוך הליבה, התיקון שונה מנימה עסוקה במרחב המשתמש, והפרופיל אומר לכם איזה מקרה יש לכם. ההבחנה הזאת שווה שעה לפני שקונים חומרה.
השוו דומה לדומה לפני שאתם מסיקים מסקנה
השוואה מועילה רק אם המשימה, רשת הגישה ונקודת הקצה נשארות זהות. החליפו את השרת והתוצאה כוללת את המסלול והקיבולת של אותו שרת; החליפו את הרשת והיא כוללת את הספק. השתמשו באותו קובץ, באותו יעד ובאותה שעה ביום, והפסיקו את העבודה שלכם ברקע. אם חייבים להחליף מכשיר, החליפו רק את המכשיר.
חשמל וחום משנים ביצועים מתמשכים, ולכן ריצה קצרה על מכונה קרה אינה אותה מדידה כמו העברה ארוכה על חמה. השוו תנאי חשמל דומים ורשמו אותם, כי מגבלה תרמית נראית בדיוק כמו מגבלת עיבוד בגרף.
השתמשו בהאצה נתמכת וודאו שהיא באמת הופעלה
מימושים מסוימים יכולים להעביר חלק מנתיב הנתונים אל הליבה או אל החומרה, והזמינות תלויה בלקוח, במערכת ההפעלה, בשרת ובתצורה. קראו את התיעוד של הגרסה שאתם מריצים והשתמשו בפלט המצב או ביומנים שלה כדי לאשר שהתכונה פעילה. חבילה מותקנת או תיבה מסומנת אינן הוכחה. המדריך של OpenVPN מתעד אפשרויות של ערוץ הנתונים לגרסאות שלו, והאפשרויות האלה שונות בין גרסאות.
כששינוי נתמך מזיז את התקרה, הריצו שוב גם את משימת היישום וגם העברה גורפת, ושמרו את הפרופיל הקודם כדי שתוכלו לחזור. קצב גורפ שהוכפל בזמן שהיישום נשאר איטי העביר את צוואר הבקבוק במקום להסיר אותו.
אם תצפיות המעבד לא עוקבות אחר התסמין, חזרו לצד הרשת. ניסיונות חוזרים של Wi-Fi, תור ודרך היציאה מפיקים את אותה תוצאה בלי שום מעורבות CPU.