דפים שמרגישים תקועים בזמן שהורדות פועלות בקצב רגיל מתארים הליכות הלוך ושוב, לא רוחב פס. VPN מוסיף קפיצה מוצפנת אחת וסשן Tor מוסיף כמה, וכל קפיצה נוספת עולה לחיצת יד לפני שזז בייט שימושי אחד. העלות הזו נראית בדף שפותח חיבורים קצרים רבים וכמעט נעלמת בהעברה גדולה אחת. ברגע שהתבנית נראית, הוויכוח מפסיק להיות על איזה כלי מהיר יותר.

התסמין מצביע על עלות ההקמה, לא על הקיבולת

טעינת דף היא שרשרת של חילופים תלויים: חיפוש שם, לחיצת יד של תעבורה, לחיצת יד TLS ואז הבקשה הראשונה. כל קפיצה בנתיב מכניסה את ההלוך-ושוב שלה לשרשרת הזו לפני שמשהו מצויר. הורדה גדולה משלמת את אותה עלות הקמה פעם אחת ואז זורמת, וזה בדיוק למה שני עומסי העבודה לא מסכימים.

קראו בפאנל הרשת את הזמן שמבלים בהמתנה לפני הבייט הראשון, לא את הסך הכול. המתנה ארוכה עם הורדת תוכן קצרה מצביעה על הליכות הלוך ושוב, ואילו הורדת תוכן ארוכה עם המתנה קצרה מצביעה על תפוקה. חזרו על הבדיקה מול יעד שני, כי מארח אחד מאחורי ממסר עמוס לא מוכיח דבר. כשההעברה תקינה והלחיצה איטית, חשדו בעלות ההקמה הרבה לפני רוחב הפס.

ההשהיה והקיבולת נכשלות בדרכים שונות

קחו שתי קריאות ורוב הבלבול נפתר מעצמו. השהיה היא עלות קבועה לכל חילוף וקיבולת היא קצב לאורך זמן, כך שנתיב אחד יכול להיות טוב בראשונה ורע בשנייה. נקודת קצה רחוקה עם מעבד פנוי עונה מהר לבקשה קטנה ועדיין מגבילה העברה מתמשכת למה שהקישור העולה שלה מאפשר. משתמשים חווים את הפיצול הזה כלחיצה זריזה שאחריה פס התקדמות שכמעט לא זז.

בדקו קיבולת בהעברה מתמשכת וראו אם הקצב נשאר יציב או נע במסור. בדקו השהיה בבקשה קטנה שחוזרת פעמים רבות וקראו את הפיזור במקום את המדגם הטוב ביותר, כי פיזור רחב מורגש גרוע ממה שהממוצע שלו מרמז. רשמו את שני המספרים לפני ואחרי כל שינוי, אחרת תזקפו מאוחר יותר לזכות המשתנה הלא נכון.

התייחסות לשניים כמספר אחד מייצרת תיקונים שלעולם לא מזיזים את המדידה שחשובה לכם. זו הדרך הנפוצה ביותר שבה תלונה על השהיה נענית בשדרוג רוחב פס.

ניתוב הבצל מוסיף קפיצות שלא בחרתם

סשן Tor משתמש בדרך כלל בשלושה ממסרים — שומר, צומת אמצעי ויציאה — והלקוח בוחר אותם מקונצנזוס, לא ממפה. לכן הנתיב יכול להיות ארוך בהרבה מהקו הישיר ליעד. כל ממסר נושא גם תעבורה של אחרים, כך שהזרם שלכם חולק את הקיבולת שנותרה לאותו ממסר.

שימוש חוזר בסשן מרכך את העלות, כי זרם חדש יכול לרכוב על סשן קיים במקום לשלם על בנייה נוספת. לקוח שבונה סשן חדש לכל בקשה משלם את ההקמה שוב ושוב ומרגיש גרוע בהרבה מזה שמשתמש חוזר. גם בחירת היציאה חשובה, כי חלק מהיציאות נושאות עומס כבד יותר ושום דבר בממשק לא אומר לכם על איזו נחתתם. השיתוף הזה הוא מטרת התכנון והסיבה לכך שאי אפשר לכוונן השהיה לערך קבוע, ולכן יציאה איטית אחת היא סיבה גרועה לוותר על הסידור.

שינוי סדר השרשרת משנה את הניסוי

VPN קודם ו-Tor אחר כך הוא ניסוי שונה מ-Tor קודם ו-VPN אחר כך. בסידור הראשון נקודת הקצה של ה-VPN נושאת את כל הסשן, כך שרשת הגישה שלכם לומדת רק את כתובת ה-VPN. בשני, חיבור ה-VPN עצמו נישא בתוך נתיב הבצל, והיציאה רואה תעבורת VPN. שניהם עיצובים לגיטימיים, והשוואת כל אחד מהם ל-VPN חשוף מודדת משהו אחר, ולכן הדף של פרויקט Tor על שילוב השניים מציג זאת כשאלה מה אתם מנסים להסתיר לפני שזו שאלה של תזמון.

החזיקו את המכשיר, רשת הגישה והיעד קבועים, ושנו בדיוק רכיב אחד בין ריצות. הזזת שרתים, סשנים ומארחי בדיקה יחד יוצרת הבדל שאיש לא יכול לייחס. רשמו מה כל סידור מסתיר ממי לפני שאתם מייעלים אותו, כי שרשרת מהירה שחושפת את מה שרציתם להסתיר אינה שיפור.

השוואה ששורדת ריצה שנייה

בחרו שניים או שלושה יעדים שאתם באמת משתמשים בהם ותזמנו את אותה אינטראקציה בכל אחד, כולל דף שמושך משאבים קטנים רבים והעברה גדולה אחת. חזרו על כל הסט בשעה אחרת של היום.

דווחו על החציון והמקרה הגרוע במקום המדגם המהיר ביותר, כי עבודה אינטראקטיבית נשפטת לפי הרגעים הרעים שלה. ציינו את הלקוח, נקודת הקצה או היציאה, והאם הסשן או המנהרה נוצלו מחדש באותה ריצה. אם שינוי משפר את החציון אך מחמיר את הזנב, זו סחר חליפין ולא ניצחון, וההחלטה אם המשתמשים יבחינו בכך היא ההחלטה האמיתית.

מאמרים קשורים