วิธีทดสอบความเร็วเครือข่ายโดยใช้เครื่องมือ iPerf3 ใน Linux
iperf3 เป็นโปรแกรมที่ใช้บรรทัดคำสั่งข้ามแพลตฟอร์มโอเพ่นซอร์สฟรีสำหรับการวัดปริมาณงานเครือข่ายแบบเรียลไทม์ เป็นหนึ่งในเครื่องมือที่ทรงพลังที่สุดในการทดสอบแบนด์วิดท์สูงสุดที่ทำได้ในเครือข่าย IP (รองรับ IPv4 และ IPv6)
ด้วย iperf คุณสามารถปรับแต่งพารามิเตอร์ต่างๆ ที่เกี่ยวข้องกับเวลา บัฟเฟอร์ และโปรโตคอล เช่น TCP, UDP และ SCTP มันมีประโยชน์สำหรับการดำเนินการปรับแต่งประสิทธิภาพของเครือข่าย
เพื่อให้ได้ประสิทธิภาพเครือข่ายสูงสุดหรือค่อนข้างดีขึ้น คุณจะต้องเพิ่มปริมาณงานตลอดจนเวลาแฝงของความสามารถในการรับและส่งของเครือข่ายของคุณ
อย่างไรก็ตาม ก่อนที่คุณจะทำการปรับแต่งได้จริง คุณต้องทำการทดสอบบางอย่างเพื่อรวบรวมสถิติประสิทธิภาพเครือข่ายโดยรวมที่จะแนะนำกระบวนการปรับแต่งของคุณ
ผลลัพธ์ประกอบด้วยช่วงเวลาเป็นวินาที การถ่ายโอนข้อมูล แบนด์วิธ (อัตราการถ่ายโอน) การสูญเสีย และพารามิเตอร์ประสิทธิภาพเครือข่ายที่มีประโยชน์อื่นๆ มีจุดประสงค์หลักเพื่อช่วยในการปรับแต่งการเชื่อมต่อ TCP บนเส้นทางเฉพาะ และนี่คือสิ่งที่เราจะเน้นในคู่มือนี้
ความต้องการ:
- คอมพิวเตอร์สองเครื่องในเครือข่ายซึ่งทั้งสองเครื่องได้ติดตั้ง iperf3 แล้ว
วิธีการติดตั้ง iPerf3 ในระบบ Linux
ก่อนที่คุณจะเริ่มใช้ iperf3 คุณต้องติดตั้งลงในเครื่องทั้งสองที่คุณจะใช้สำหรับการเปรียบเทียบ เนื่องจาก iperf3 มีอยู่ในคลังซอฟต์แวร์อย่างเป็นทางการของ Linux ทั่วไปส่วนใหญ่ การติดตั้งจึงควรเป็นเรื่องง่าย โดยใช้ตัวจัดการแพ็คเกจดังที่แสดง
sudo apt install iperf3 [On Debian, Ubuntu and Mint]
sudo yum install iperf3 [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a net-misc/iperf [On Gentoo Linux]
sudo apk add iperf3 [On Alpine Linux]
sudo pacman -S iperf3 [On Arch Linux]
sudo zypper install iperf3 [On OpenSUSE]
เมื่อคุณติดตั้ง iperf3 บนทั้งสองเครื่องแล้ว คุณสามารถเริ่มทดสอบอัตราการส่งข้อมูลของเครือข่ายได้
วิธีทดสอบความเร็วเครือข่ายระหว่างเซิร์ฟเวอร์ Linux สองเครื่อง
ขั้นแรก เชื่อมต่อกับเครื่องระยะไกลที่คุณจะใช้เป็น เซิร์ฟเวอร์ และเริ่มทำงาน iperf3 ในโหมดเซิร์ฟเวอร์โดยใช้แฟล็ก -s
มันจะ ฟังพอร์ต 5201 ตามค่าเริ่มต้น
คุณสามารถระบุรูปแบบ (k, m, g สำหรับ Kbits, Mbits , Gbits หรือ K, M, G สำหรับ KBytes, Mbytes , Gbytes) เพื่อรายงานโดยใช้สวิตช์ -f
ตามที่แสดง
iperf3 -s -f K
หากโปรแกรมอื่นบนเซิร์ฟเวอร์ของคุณใช้พอร์ต 5201 คุณสามารถระบุพอร์ตอื่นได้ (เช่น 3000) โดยใช้สวิตช์ -p
เป็น แสดง
iperf3 -s -p 3000
ทางเลือก คุณสามารถรันเซิร์ฟเวอร์เป็น daemon โดยใช้แฟล็ก -D
และเขียนข้อความเซิร์ฟเวอร์ลงในล็อกไฟล์ ดังต่อไปนี้
iperf3 -s -D > iperf3log
จากนั้นบนเครื่องของคุณซึ่งเราจะถือว่าเป็น ไคลเอนต์ (ที่เกิดการเปรียบเทียบจริง) ให้รัน iperf3 ในโหมดไคลเอนต์โดยใช้ -c
ตั้งค่าสถานะและระบุโฮสต์ที่เซิร์ฟเวอร์กำลังทำงานอยู่ (ไม่ว่าจะใช้ที่อยู่ IP หรือโดเมนหรือชื่อโฮสต์)
iperf3 -c 192.168.10.1 -f K
หลังจากนั้นประมาณ 18 ถึง 20 วินาที ไคลเอนต์ควรยุติและสร้างผลลัพธ์ที่ระบุปริมาณงานเฉลี่ยสำหรับการวัดประสิทธิภาพ ดังที่แสดงในภาพหน้าจอต่อไปนี้
จากผลลัพธ์การวัดประสิทธิภาพ ดังที่แสดงในภาพหน้าจอด้านบน มีการเปลี่ยนแปลงในค่าจาก เซิร์ฟเวอร์ และ ไคลเอนต์ แต่คุณควรพิจารณาใช้ผลลัพธ์ที่ได้รับจากเครื่อง ไคลเอ็นต์ iperf ในทุกการทดสอบที่คุณดำเนินการ
วิธีดำเนินการทดสอบเครือข่ายขั้นสูงใน Linux
มีตัวเลือกเฉพาะไคลเอนต์จำนวนหนึ่งสำหรับการดำเนินการทดสอบขั้นสูง ตามที่อธิบายไว้ด้านล่าง
ปัจจัยสำคัญประการหนึ่งที่กำหนดจำนวนข้อมูลในเครือข่าย ณ เวลาที่กำหนดคือขนาดหน้าต่าง TCP ซึ่งเป็นสิ่งสำคัญในการปรับการเชื่อมต่อ TCP คุณสามารถตั้งค่าขนาดหน้าต่าง/ขนาดบัฟเฟอร์ซ็อกเก็ตได้โดยใช้แฟล็ก -w
ดังที่แสดง
iperf3 -c 192.168.10.1 -f K -w 500K
หากต้องการรันใน โหมดย้อนกลับ โดยที่ เซิร์ฟเวอร์ ส่งและ ไคลเอนต์ ได้รับ ให้เพิ่มสวิตช์ -R
iperf3 -c 192.168.10.1 -f K -w 500K -R
หากต้องการรัน การทดสอบแบบสองทิศทาง ซึ่งหมายความว่าคุณวัดแบนด์วิดท์ในทั้งสองทิศทางพร้อมกัน ให้ใช้ตัวเลือก -d
iperf3 -c 192.168.10.1 -f K -w 500K -d
หากคุณต้องการได้รับ ผลลัพธ์ของเซิร์ฟเวอร์ ในเอาต์พุต ไคลเอ็นต์ ให้ใช้ตัวเลือก --get-server-output
iperf3 -c 192.168.10.1 -f K -w 500K -R --get-server-output
นอกจากนี้ยังสามารถตั้งค่าจำนวนสตรีมไคลเอ็นต์แบบขนาน (สองรายการในตัวอย่างนี้) ซึ่งทำงานพร้อมกัน โดยใช้ตัวเลือก -P
iperf3 -c 192.168.10.1 -f K -w 500K -P 2
สำหรับข้อมูลเพิ่มเติม โปรดดูที่เพจ iperf3 man
man iperf3
นั่นคือทั้งหมด! อย่าลืมทำการทดสอบประสิทธิภาพเครือข่ายทุกครั้งก่อนที่จะทำการปรับแต่งประสิทธิภาพเครือข่ายจริง iperf3 เป็นเครื่องมืออันทรงพลังซึ่งมีประโยชน์สำหรับการทดสอบปริมาณงานเครือข่าย
คุณมีความคิดที่จะแบ่งปันหรือคำถามที่จะถามใช้แบบฟอร์มแสดงความคิดเห็นด้านล่าง