Network
สมัยผมทำร้านเน็ต SiamCafe เมื่อ 20 กว่าปีที่แล้ว เรื่อง "ใครแอบโหลดบิต" นี่คือปัญหาโลกแตกเลยครับ! ลูกค้าบางคนเปิดโปรแกรมโหลดหนังทิ้งไว้ เครื่องอื่นก็อืดเป็นเรือเกลือ เราเลยต้องหาทางส่องดูว่าใครมันแอบกิน Bandwidth ไปเยอะขนาดนั้น
Bandwidth Monitor ก็คือเครื่องมือ (หรือโปรแกรม) ที่เอาไว้คอยจับตาดูว่าใครกำลังใช้ Internet เยอะแค่ไหนในเครือข่ายของเรา มันสำคัญตรงที่เราจะได้รู้ว่ามีใครกำลังทำอะไรผิดปกติอยู่หรือเปล่า เช่น โหลดหนัง, ดู YouTube ความละเอียดสูงตลอดเวลา หรือโดนไวรัสแอบส่งข้อมูลออกไปข้างนอก
ถ้าเราไม่รู้ว่าใครกิน Bandwidth ไปเยอะ มันจะทำให้ Internet ที่บ้านเราช้าลง, เล่นเกมกระตุก, ดูหนังไม่ลื่นไหล และอาจทำให้ค่า Internet แพงขึ้นด้วยนะ!
คิดภาพตามนะ: บ้านเรามี Internet ความเร็ว 50 Mbps ทุกคนควรจะใช้งานได้ลื่นๆ แต่ปรากฏว่ามีคนนึงแอบโหลดหนัง 4K ตลอดเวลา ที่เหลือก็แทบจะทำอะไรไม่ได้เลย เพราะ Bandwidth มันถูกดึงไปหมดแล้ว
สมัยก่อน ผมใช้โปรแกรมง่ายๆ ชื่อ NetWorx (ตอนนี้ก็ยังมีอยู่) ลงในเครื่อง Server ของร้าน แล้วตั้งค่าให้มันเก็บ Log การใช้งาน Internet ของแต่ละเครื่องไว้
หลักการก็คือ เราต้องหาโปรแกรมที่สามารถ:
ตัวอย่าง Code (PowerShell): อันนี้เป็น Script ง่ายๆ ที่เอาไว้ดูว่า Process ไหนกำลังใช้ Network เยอะที่สุดบนเครื่อง Windows
Get-Process | Where-Object {$_.SI -gt 0} | Sort-Object SI -Descending | Select-Object -First 10 | Format-Table -AutoSize ID, ProcessName, SI
Code นี้จะแสดง Process 10 อันดับแรกที่ใช้ Network เยอะที่สุด (เรียงตาม SI - Session I/O)
เดี๋ยวนี้มีเครื่องมือให้เลือกใช้เยอะแยะมากมาย ทั้งแบบฟรีและแบบเสียเงิน แต่ละตัวก็มีข้อดีข้อเสียต่างกันไป ลองเลือกดูตามความเหมาะสมนะครับ
ตารางเปรียบเทียบ:
| เครื่องมือ | ราคา | คุณสมบัติเด่น | ข้อเสีย |
|---|---|---|---|
| NetWorx | ฟรี/เสียเงิน | ใช้งานง่าย, แสดงผล Real-time, มี Log | UI อาจจะดูเก่าไปหน่อย |
| GlassWire | ฟรี/เสียเงิน | สวยงาม, แสดงผลเป็นกราฟ, มี Firewall | กิน Resource พอสมควร |
| PRTG Network Monitor | เสียเงิน | ครบเครื่อง, Monitor ได้ทั้ง Network, Server, Application | ซับซ้อน, ต้องใช้เวลาเรียนรู้ |
NetWorx เป็นโปรแกรมที่ใช้งานง่ายมาก เหมาะสำหรับผู้เริ่มต้นที่ต้องการ Monitor Bandwidth แบบเบื้องต้น
นอกจากโปรแกรมแล้ว เรายังสามารถใช้คำสั่ง Command Line เพื่อ Monitor Bandwidth ได้ด้วยนะ (สำหรับคนชอบ Command Line)
ตัวอย่าง (Linux): ใช้คำสั่ง iftop
sudo apt-get install iftop # ติดตั้ง iftop (ถ้ายังไม่ได้ติดตั้ง)
sudo iftop # รัน iftop
iftop จะแสดง Traffic ที่วิ่งเข้าออกเครื่องของเราแบบ Real-time พร้อมทั้งแสดง IP Address และ Port ที่เกี่ยวข้อง
หลังจากที่เรา Monitor Bandwidth แล้ว พบว่ามีคนแอบสูบเน็ตไปเยอะ เราจะทำยังไงดี?
จำไว้ว่าการแก้ปัญหาต้องเริ่มจากการพูดคุยกันก่อนเสมอ อย่าเพิ่งด่วนตัดสินใจหรือใช้วิธีรุนแรงนะ!
ถ้าอยากรู้เรื่อง IT สนุกๆ แบบนี้อีก อย่าลืมแวะมาที่ SiamCafe Blog นะครับ ผมจะคอยอัพเดทเรื่องราวและเทคนิคใหม่ๆ ให้เรื่อยๆ
ดูวิดีโอเพิ่มเติมเกี่ยวกับBandwidth Monitor ดูใครกิน Int:
Q: ทำไมต้องใช้ Bandwidth Monitor ในเมื่อ Router ก็มีบอก?
A: Router ส่วนใหญ่จะบอกแค่ปริมาณการใช้งาน Bandwidth รวมๆ แต่ไม่ได้บอกว่าใครเป็นคนใช้เยอะที่สุด Bandwidth Monitor จะช่วยให้เราเจาะลึกรายละเอียดได้มากกว่า
Q: Bandwidth Monitor กิน Resource เครื่องเยอะไหม?
A: ขึ้นอยู่กับโปรแกรมที่เราเลือกใช้ โปรแกรมบางตัวอาจจะกิน Resource เยอะ ทำให้เครื่องช้าลงได้ ควรเลือกโปรแกรมที่เหมาะสมกับสเปคเครื่องของเรา
Q: ใช้ Bandwidth Monitor ผิดกฎหมายไหม?
A: ถ้าเราใช้ Bandwidth Monitor ในเครือข่ายส่วนตัวของเราเอง (เช่น ที่บ้าน หรือที่ทำงาน) ก็ไม่ผิดกฎหมาย แต่ถ้าเราไป Monitor Bandwidth ของคนอื่นโดยไม่ได้รับอนุญาต อันนี้อาจจะผิดกฎหมายได้
หวังว่าบทความนี้จะเป็นประโยชน์กับเพื่อนๆ นะครับ ถ้ามีคำถามอะไรเพิ่มเติม ถามมาได้เลย!
อย่าลืมแวะไปอ่านบทความอื่นๆ ใน SiamCafe Blog ด้วยนะครับ มีเรื่อง IT อีกเยอะแยะที่น่าสนใจ!
สมัยผมทำร้านเน็ต สิ่งแรกที่ต้องคิดคือ bandwidth นี่แหละ สำคัญสุด! ต้องคำนวนว่าลูกค้าจะใช้ทำอะไรบ้าง เล่นเกม ดู YouTube โหลดบิต (อันนี้ต้องบล็อกนะ!) แล้วเผื่อเหลือเผื่อขาดไว้ด้วย
ถ้าคิดจะเปิดร้านเน็ตยุคนี้ ต้องดูพวกเกมออนไลน์ยอดฮิตด้วยนะ กิน bandwidth โหดๆ ทั้งนั้น อย่าง ROV, PUBG, Valorant พวกนี้ต้องเทสดูว่ากี่เครื่องถึงจะลื่น
อย่ารอให้ลูกค้าบ่นว่าเน็ตช้า ควรรีบรู้ตัวก่อน! สมัยก่อนผมใช้โปรแกรมง่ายๆ พวก MRTG, Cacti ดู traffic แบบเรียลไทม์ เดี๋ยวนี้มีเครื่องมือดีๆ เยอะแยะ เลือกที่มันแจ้งเตือนได้ด้วยนะ
# ตัวอย่าง script ง่ายๆ เช็ค ping
ping -c 3 google.com | grep "time="
พอ ping แล้วดูค่า time ถ้ามันสูงผิดปกติ แสดงว่าเน็ตเริ่มมีปัญหาแล้ว
บางเกมต้องการ latency ต่ำๆ บางคนแค่เล่น Facebook ก็พอ ต้องจัดสรร bandwidth ให้เหมาะสม สมัยผมใช้ QoS (Quality of Service) ใน router กำหนด priority ให้ traffic แต่ละประเภท
พวกเกมออนไลน์สำคัญสุด รองลงมาก็ VoIP (ถ้ามี), Web browsing, แล้วค่อย BitTorrent (บล็อกไปเลยจะดีกว่า!) ลองศึกษา QoS ของ router ที่ใช้อยู่ดูนะ
โลก IT มันเปลี่ยนเร็วมาก! เกมใหม่ๆ, โปรแกรมใหม่ๆ ออกมาตลอด ต้องคอยอัพเดทข้อมูลอยู่เสมอ แล้วปรับปรุงการจัดการ bandwidth ให้เข้ากับสถานการณ์
อย่าคิดว่า setup ครั้งเดียวแล้วจบ ต้องคอยสังเกตพฤติกรรมการใช้งานของลูกค้า แล้วปรับจูนไปเรื่อยๆ ถึงจะอยู่รอด
ที่บ้านใช้คนเดียว แต่ที่ร้านใช้หลายคนไง! bandwidth มันต้องแชร์กัน ถ้ามีคนโหลดบิตอยู่คนเดียว คนอื่นก็ซวยไปด้วย นอกจากนี้ server เกม หรือเว็บที่เข้า อาจจะมีปัญหาเองก็ได้
สมัยก่อนผมใช้ Cisco, Linksys พวกนี้ทนทานดี แต่ราคาสูง เดี๋ยวนี้มี Mikrotik, Ubiquiti พวกนี้ราคาถูกลง แต่ต้องมีความรู้เรื่อง network หน่อยถึงจะ config ได้
ขึ้นอยู่กับขนาดร้าน และจำนวนลูกค้า ถ้าเล็กๆ สายเดียวก็พอ แต่ถ้าร้านใหญ่ ลูกค้าเยอะ ควรมีสองสาย เผื่อสายใดสายหนึ่งมีปัญหา จะได้ไม่กระทบลูกค้าทั้งหมด
มีหลายวิธี! ง่ายสุดคือบล็อก port ที่ BitTorrent ใช้ (6881-6889) ใน router แต่พวกนี้มันเปลี่ยน port ได้เรื่อยๆ ยากหน่อย อีกวิธีคือใช้ firewall ที่มัน detect traffic BitTorrent ได้เลย
# ตัวอย่าง iptables command บล็อก BitTorrent (อาจจะไม่ 100%)
iptables -A FORWARD -p tcp --dport 6881:6889 -j DROP
แต่บล็อก BitTorrent อย่างเดียวไม่พอ ต้องบล็อกพวกโปรแกรมโหลดอื่นๆ ด้วย
iCafeForex เป็น… เอ่อ… เดี๋ยวไว้ค่อยเล่าให้ฟังทีหลังนะ iCafeForex
การจัดการ bandwidth ในร้านเน็ตเป็นเรื่องที่ต้องใส่ใจอย่างมาก ต้องวางแผน, monitor, จัดสรร, และปรับปรุงอยู่เสมอ ถ้าทำได้ดี ลูกค้าก็จะแฮปปี้ ร้านก็จะอยู่รอด
อย่าลืมติดตาม SiamCafe Blog นะ ผมจะมาแชร์ประสบการณ์ร้านเน็ตให้ฟังเรื่อยๆ เจอกันใหม่ครับ!