יום חמישי, 13 במרץ 2014

ברירת מחדל תמוהה של חלונות 7 גורמת לעתים לתפקוד גרוע ברשת האלחוטית

בפרוטוקול התקשורת TCP IP קיים פרמטר של גודל החלון, שהוא כמות המידע שיכולה להישלח מבלי שהתקבל אישור (ACK) מהמקבל. בגרסאות חלונות קודמות לויסטה גודל החלון היה קבוע ואפשר היה להיעזר בתוכנה כגון TCP Optimizer כדי לבחור ערך מיטבי לגודל החלון.

מחלונות ויסטה והלאה (חלונות 7, 8) מומש אלגוריתם המכוונן את גודל חלון לפי הצורך, כדי לחסוך את התהליך הידני ולהגיע להתאמה טובה יותר לתנאי הרשת השונים. לאלגוריתם יש רמות פעולה שונות, כאשר ברירת המחדל ה"נורמלית" (normal) מתאימה לרוב הרשתות ושאר הרמות מיועדות למקרים יוצאי דופן שונים. 

מסתבר שלא תמיד ברירת המחדל היא "נורמלית"!
בחלונות 7, ברירת המחדל עבור רשת אלחוטית ביתית פרטית (ביתית) אינה נורמלית (normal) אלא מוגבלת (restricted), מה שגורם לבעיות בגישה לאתרי אינטרנט שונים. הבעיות לא תמיד ברורות למשתמש, כיוון שכעבור זמן מה האלגוריתם גם ברמה "מוגבלת" מצליח ליצור קשר והאתר בסופו של דבר מוצג. הביטוי הבולט לבעיה הוא השהיה של חמש-עשרים שניות בפעולה מול האתר שבהן נראה ש"לא קורה כלום" ולאחר מכן האתר חוזר לפעול במהירות מלאה.

כדי לבדוק את ברירת המחדל יש להריץ את הפקודה

netsh interface tcp show heuristics

כדי לשנות את ברירת המחדל ל"נורמלית" יש להריץ את הפקודה

netsh interface tcp set global autotuninglevel=normal

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