מוניטור netdata
-
@magicode אמר במוניטור netdata:
ifconfig
לא נראה לי, אני לא מבין את הפלט אבל נראה שלא.
~$ ifconfig ens5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001 inet 172.172.172.172 netmask 255.255.240.0 broadcast 172.172.172.172 inet6 fe80::421:8aff:fe3f:1bca prefixlen 64 scopeid 0x20<link> ether 06:21:8a:3f:1b:ca txqueuelen 1000 (Ethernet) RX packets 2882171 bytes 1121107994 (1.1 GB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2061696 bytes 338897887 (338.8 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 644054 bytes 133742433 (133.7 MB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 644054 bytes 133742433 (133.7 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
-
@WWW אמר במוניטור netdata:
הבנת משהו?
פחות או יותר.
א"א להבין בלי לקרוא את הכתבה מההתחלה איך הקרנל מטפל בפקטים נכנסים.
יש buffer שמקבל מצביעים לפקטים נכנסים, וכל כמה זמן הקרנל בודק את ה-buffer ומטפל בדאטה שנכנס. הפונקציה שמטפלת בדאטה הנכנס הוא ksoftirq והוא מוגבל בזמן ובכמות הפקטים.
המשתנה netdev_budget שולט על מספר הפקטים והמשתנה netdev_budget_usecs שולט על הזמן.
באזהרה בתמונה כתוב ש55.5 פעמים ב10 דקות אחרונות קרה ש-ksoftirq הוכרח להפסיק מכיון שהגיע לגבול netdev_budget או לגבול netdev_budget_usecs כאשר עדיין היו עוד פקטים בתור מחכים לטיפול. זה לא בהכרח יגרום לנפילת פקטים, אבל אם קורה בעקביות זה כן יגרום לנפילת פקטים.
בכתבה שם כתוב הפקודות ששולטים על המשתנים הנ"ל.
עד כאן מה שהבנתי, השאר אני משאיר לאחרים שמבינים יותר ממני... -
@yossiz אמר במוניטור netdata:
@WWW אמר במוניטור netdata:
הבנת משהו?
פחות או יותר.
א"א להבין בלי לקרוא את הכתבה מההתחלה איך הקרנל מטפל בפקטים נכנסים.
יש buffer שמקבל מצביעים לפקטים נכנסים, וכל כמה זמן הקרנל בודק את ה-buffer ומטפל בדאטה שנכנס. הפונקציה שמטפלת בדאטה הנכנס הוא ksoftirq והוא מוגבל בזמן ובכמות הפקטים.
המשתנה netdev_budget שולט על מספר הפקטים והמשתנה netdev_budget_usecs שולט על הזמן.
באזהרה בתמונה כתוב ש55.5 פעמים ב10 דקות אחרונות קרה ש-ksoftirq הוכרח להפסיק מכיון שהגיע לגבול netdev_budget או לגבול netdev_budget_usecs כאשר עדיין היו עוד פקטים בתור מחכים לטיפול. זה לא בהכרח יגרום לנפילת פקטים, אבל אם קורה בעקביות זה כן יגרום לנפילת פקטים.
בכתבה שם כתוב הפקודות ששולטים על המשתנים הנ"ל.
עד כאן מה שהבנתי, השאר אני משאיר לאחרים שמבינים יותר ממני...כעת נשאר לנחש האם יש בעיה לשנות את ההגבלה לאפשר יותר חיבורים וזמן
-
@חוקר היה עדיף אם במקום לנחש הייתי מבין מה התועלת של הגבלה זאת.
אני חושב שהטעם להגבלה זו הוא משום שבאמצע softirq א"א להפסיק ולתת צ'אנס לתהליכים להשתמש במעבד. אם תוסיף על הערך של המשתנים, לכאורה תקבל יותר throughput (פחות נפילות של פקטים) במחיר של יותר latency (יותר זמן עד שהתהליך מקבל את הפקט).אם הבנתי את המצב נכון, אז נ"ל שאם בינתיים אין נפילות של פקטים, זה אומר שההגבלה עושה את עבודתו ונותן פחות latency בלי מחיר על throughput.
אשמח אם מישהו יתקן אותי אם אני טועה.