לא מעט שנים מגיעים אלי לקוחות עם תקלות של "הרשת עובדת לאט", "הרשת לא זזה" וכד'. במאמר קצר זה אני רוצה להביא כמה כללים פשוטים לבדיקה של המערכות ברשת, ובמקרים מסוימים גם דרך לפתרון.
אז אחרי שהבנו ש"הרשת עובדת לאט", ומיקמנו את מקור הבעיה, למשל עבודה איטית מול שרת או שרתים מסוימים, עבודה איטית מול האינטרנט או עבודה איטית מול סניף מסוים ברשת, נבדוק מספר דברים.
דבר ראשון חשוב להבין: לא כל הבעיות הן בעיות תקשורת. להיות מדויק יותר – רוב הבעיות הן לא בעיות תקשורת. בעיה של "הרשת עובדת לאט" יכול להיות מאחת מהסיבות הבאות:
- בעיית תוכנה או מערכת הפעלה
- בעיית חומרה – שרתים או תחנות עבודה
- בעיית תקשורת
מניסיון אם הייתי מחלק את הבעיות לפי הסיכוי שיקרו – 50-60% יהיו בעיות תוכנה או מערכת הפעלה, 20-30% בעיות חומרה כמו מעט מדי זיכרון, דיסק איטי וכד', ורק מה שנשאר יהיה בתחום התקשורת.
לצורך איתור תקלה, חשוב גם להבין מה היישומים צריכים מהרשת. כך למשל לא מעט בעיות של "רשת עובדת לאט" ייגרמו מ- Delay גבוה, שיבושים באיכות שיחת טלפון (מעל IP) יהיו בגלל Jitter וכד'. פירוט על נושא זה כתבתי במאמר "קו תקשורת זה לא רק רוחב פס: קווי תקשורת נתונים, ואיך Bandwidth, Delay, Jitter ו- Packet Loss משפיעים על הביצועים."
לפני גישה לפתרון הבעיה אנחנו צריכים לוודא כי יש לנו:
- שרטוט עדכני ומדויק של הרשת, כולל מבנה הרשת: ב- L2 (מתגים, VLANs וכד'), ב- L3 (נתבים ורשתות IP וכד'), קווי תקשורת, סוג הקווים ורוחבי פס וכד'.
- תרשים תנועה שאומר איפה מותקנים היישומים ואיך אנחנו מגיעים אליהם: למשל האם עובדים על שרתים מקומיים או מרוחקים, דרך איזה קווים עובדים וכד'.
ברשת פשוטה, יהיה קל מאוד לוודא את מיפוי הרשת ולבדוק כי מה שיש לנו הוא הנכון. ברשת גדולה ויותר מורכבת יהיה בד"כ מספיק להבין איך בנויה הרשת באזור הבעייתי ולא להיכנס לאזורים אחרים, תהליך שייקח זמן ולא יעזור לנו בפתרון.
ועכשיו ניגש לתקלה. במטרה לפתור תקלות ברשת התקשורת, אנחנו חייבים ללכת בצורה מסודרת, ליצור תכנית וללכת לפיה, לתעד מה שאנחנו עושים והתקלה תיפתר. את התהלך אנחנו רואים בתמונה הבאה.
השלב הראשון, שלב הגדרת הבעיה, נשמע פשוט אבל אם נגדיר את הבעיה בצורה נכונה ונוודא שאכן זאת הבעיה, אנחנו בדרך הנכונה. כאן אנחנו מגדירים מה בעצם אנחנו מחפשים.
מה חשוב להגדיר כאן:
- האם הבעיה קוראת באופן קבוע? באופן קבוע כשעושים פעולה מסוימת? בשעה מסוימת ביום? בסניף מרוחק? בכמה סניפים? בכל הרשת? דוגמאות:
- כל רבע שעה הרשת עובדת לאט: הבעיה הייתה שכל רבע שעה מתבצעת סריקה של אנטי-וירוס על שרת מאוד ישן שמחוברים אליו.
- בעיית איטיות בבנק מסוים, הקוראת כל 15 לחודש. הבעייה הייתה שב- 15 לחודש זה יום תשלומים, והרבה לקוחות באים לבנק לשלם שוברים. הקופאי סורק את הצ'ק, הסריקה יוצרת קובץ גדול, שמעמיס מאוד את השרתים הישנים.
- בפרקי זמן אקראיים, העבודה בסניפים נעשית איטית. מסתבר שכל פעם שמדפיסים הקווים מועמסים על ידי ההדפסה והכל זוחל.
- האם הבעיה קוראת בכל היישומים? ביישום מסוים? ביישום מסוים בפעולה מסוימת? דוגמאות:
- בעבודה מסניפים מרוחקים מול מרכז הרשת, התלונה הייתה (כמו תמיד..) על "רשת שעובדת לאט" ועל "ספק התקשורת שלא מספק את מהירות הקו שנרכש ממנו". בבדיקת Wireshark פשוטה מסתבר כי הבעיה היא בשרת FTP איטי שפשוט לא מנצל את רוחב הפס…
- האם הבעיה קוראת אצל כל המשתמשים, משתמש מסוים, קבוצה של משתמשים שעובדים באפליקציה מסוימת? ברוב המקרים משתמשים לא יענו לכם על זה עד שתשאלו שאלות מאוד מדויקות ותכוונו אותם לתשובות שאתם מצפים. מבחינת המשתמש הוא עובד מול "הרשת", וצריך להבין כי הוא/היא לא מבינים שיכול להיות הבדל מאוד משמעותי בין מסך אחד לאחר (כמו שאתם לא תבינו מה הם עושים).
- אצל לקוח מסוים, מתלוננים ממחלקת הנהח"ש כי "הרשת עובדת לאט". כששאלתי את העובדים במחלקה אצל מי יש בעיה, מסתבר שזאת עובדת אחת. כשביקשתי ממנה להראות לי את הבעיה, מסתבר שאיטיות קוראת בפעולה מסוימת במסך מסוים (רואים את זה יפה ב- Wireshark שהתקנתי על התחנה). מסתבר שזה פשוט באג בתוכנה.
- בתוכנה מסוימת שעובדת עם מפות, תגובות התוכנה היו מאוד איטיות. מסתבר שעבור כל פעולה עם מפה התוכנה טוענת את המפה מרחוק, ומכיוון שהתקשורת הייתה סלולארית הטעינה הייתה איטית ובחלק מהפעולות טעינת המפה עקבה את עבודת התוכנה.
במאמרים הבאים נעבור לשלבים הבאים, ונראה איך הולכים כל הדרך לפתרון.
סדרת מאמרים אלו מתבססת על הפרק “Introduction to Network Troubleshooting” שהינה הרצאת המבוא לקורס Wireshark. ניתן לראות את המצגת במלואה ב- www.slideshare.net