TCP בתוך SSTP: מדוע שליחה חוזרת מתרחשת פעמיים
SSTP נושא את המנהרה בזרם TCP מעל TLS. כשהנתיב מאבד מנות, השחזור החיצוני והפנימי נסוגים בו-זמנית.
השמועה מגיעה לפני הפרוטוקול. תשאלו סביב ו-SSTP הוא האיטי, האפשרות שנמנעים ממנה אלא אם משהו מכריח. המוניטין הזה מתאר מצב כשל אחד בסוג אחד של נתיב.
המנגנון אמיתי. הוא גם מותנה, מה שהמוניטין אף פעם לא מזכיר.
שני זרמים אמינים על נתיב אחד
SSTP עוטף את המנהרה שלו בתוך הפעלת HTTPS. HTTPS פועל מעל TCP, והזרם החיצוני הזה מבטיח מסירה מסודרת. לכן סגמנט חסר אחד מעכב את כל מה שעומד בתור מאחוריו. הבייטים המאוחרים ששייכים לשיחות פנימיות אחרות ממתינים בכל מקרה.
זרמי TCP פנימיים שומרים על הסדר ועל בקרת העומס שלהם. הם לא רואים את השחזור החיצוני, ולכן הדבר היחיד שהם מבחינים בו הוא עצירה. עצירה היא האות שאומר להם שהנתיב עמוס.
כעת שתי השכבות נסוגות בו-זמנית. זה כל האינטראקציה, וסגמנט אבוד אחד מספיק כדי להתחיל אותה.
היכן ההשפעה מופיעה והיכן לא
בנתיב נקי הזרם החיצוני משחזר לעתים רחוקות משהו. האינטראקציה לא מופעלת אף פעם, ו-SSTP נושא תעבורה אינטראקטיבית היטב. הטענה הגורפת נכשלת בדיוק בנקודה הזו.
ההשפעה מופיעה כשהאובדן או הסידור מחדש מגיעים לנתיב הבסיסי. קישור Wi-Fi עמוס או חיבור סלולרי עם השהיה משתנה יוצרים את התנאים. תור חיצוני חסום הופך אז לעיכוב גלוי בתוך המנהרה.
היא גם מתעצמת עם עומס העבודה. זרמים מקבילים רבים ממלאים את התור ומחמירים את החסימה בראש התור. הפעלה אינטראקטיבית אחת על אותו נתיב עשויה להיראות סבירה.
מה התסמין בדרך כלל אינו
לא כל הפעלה איטית היא הבעיה הזו. קצב נמוך ויציב מהמנה הראשונה מצביע על קיבולת, עיצוב או מגבלת שרת. הפסקות שמתלכדות עם עומס מקומי מצביעות על תורים בקישור הגישה.
התרופות שונות, ולכן האבחון בא קודם. כוונון מאגרים לא עושה דבר לקישור מעוצב. החלפת פרוטוקולים לא עושה דבר לשרת שנגמרה הקיבולת שלו. איפוסים חוזרים מצביעים למקום אחר לגמרי.
# outer path quality to the SSTP endpoint
ping -c 50 203.0.113.44 | tail -3
mtr -rwc 50 203.0.113.44
# is the local link saturated while the session stalls?
sar -n DEV 2 5
# retransmissions on the outer connection
ss -tin dst 203.0.113.44
בצעו את המדידה בזמן שהבעיה מתרחשת. לכידה שנלקחה בדקה בריאה לא מוכיחה דבר על הלולאה שרצה בדקה הרעה.
השוואה ששווה לסמוך עליה
אם באמת זמין אמצעי תחבורה אחר, השוו אותו בתנאים מבוקרים. אותו מארח, אותה רשת, אותו יעד ואותה משימה. שתי ההרצות צריכות ליפול באותן עשר דקות כדי שתנאי הנתיב יתאימו.
החלפת פורט לא מחליפה פרוטוקול. ייבוא פרופיל לא קשור ללקוח SSTP לא יוצר אמצעי תחבורה חלופי. ההשוואה משמעותית רק כשהשרת מציע את האפשרות השנייה.
השאירו את אימות TLS פעיל לאורך כל הדרך. עבודת ביצועים אינה סיבה לקבל תעודה לא מאומתת. אם העצירות מופיעות בעיקר כשהקישור העולה רווי, בדקו את התורים לפני שאתם מאשימים את השכבות.