Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows 10

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

IPerf เป็นเครื่องมือโอเพนซอร์ซที่ออกแบบมาเพื่อทดสอบแบนด์วิดท์เครือข่ายระหว่างสองโหนดเครือข่าย iPerf อนุญาตให้สร้างทราฟฟิก/โหลด TCP และ UDP ระหว่างสองโฮสต์ คุณสามารถใช้ iPerf เพื่อวัดแบนด์วิดท์เครือข่ายสูงสุด (ทรูพุต) ระหว่างเซิร์ฟเวอร์และไคลเอนต์ได้อย่างรวดเร็ว ทำการทดสอบความเค้นของช่องทางการสื่อสาร ISP เราเตอร์ เกตเวย์เครือข่าย (ไฟร์วอลล์) อีเธอร์เน็ตหรือเครือข่าย Wi-Fi ของคุณ

ในบทความนี้ เราจะแสดงวิธีการติดตั้งและใช้งาน iPerf เครื่องมือตรวจสอบทรูพุตเครือข่ายบน Windows และ Linux CentOS (มีเวอร์ชัน iPerf สำหรับ Android, MacOS, RouterOS จาก MikroTik และแพลตฟอร์มอื่นๆ)

เวอร์ชัน iPerf:iPerf2 เทียบกับ iPerf3

IPerf เป็นเครื่องมือข้ามแพลตฟอร์มและไม่ต้องติดตั้ง เพียงแค่คัดลอกและเรียกใช้บนอุปกรณ์สองเครื่อง ระหว่างนั้นคุณต้องการทดสอบอัตราการส่งข้อมูลของเครือข่าย

IPerf ทำงานในโหมดเซิร์ฟเวอร์ไคลเอ็นต์ บนอุปกรณ์เครื่องแรก iPerf เริ่มทำงานในโหมดเซิร์ฟเวอร์ (กำลังรอการรับส่งข้อมูลจากไคลเอ็นต์ iPerf) บนคอมพิวเตอร์เครื่องที่สอง iPerf เริ่มทำงานในโหมดไคลเอ็นต์ สร้างการรับส่งข้อมูล TCP หรือ UDP และวัดอัตราการถ่ายโอนข้อมูลสูงสุด

ขณะนี้มีสาขา iPerf อิสระสองสาขาที่พัฒนาควบคู่กัน:iPerf2 และ iPerf3 . การทำงานของเครื่องมือเหล่านี้ส่วนใหญ่เข้ากันได้ แต่ใช้พอร์ตเครือข่ายที่แตกต่างกันตามค่าเริ่มต้น ใน iPerf1/2 คือ 5001 ใน iPerf3 คือ 5201 .

  • ควรใช้ iPerf2 สำหรับเธรดแบบขนาน การทดสอบแบบสองทิศทาง และเวอร์ชันนี้ได้รับการสนับสนุนอย่างเป็นทางการบน Windows OS
  • iPerf3 มีการใช้งานการทดสอบ UDP ความเร็วสูงที่ดีกว่า โค้ด IPerf3 มีขนาดเล็กลงอย่างเห็นได้ชัดและเพิ่มประสิทธิภาพได้ดีขึ้น

ความแตกต่างที่เหลือไม่มีนัยสำคัญนัก ดังนั้นจึงไม่จำเป็นต้องใช้ iPerf เวอร์ชันเฉพาะ (แม้แต่พารามิเตอร์ CLI ก็เหมือนกัน) ในบทความนี้ เราจะใช้ iperf3 .

iPerf3 ไม่รองรับแพลตฟอร์ม Windows อย่างเป็นทางการ แต่ใช้งานได้ดีทีเดียว ฉันไม่ได้สังเกตเห็นข้อบกพร่องใด ๆ ที่ชัดเจน คุณสามารถส่งรายงานข้อบกพร่องของคุณไปที่ https://github.com/esnet/iperf

จะติดตั้ง iPerf บน Windows ได้อย่างไร

คุณสามารถดาวน์โหลด iPerf 3.1.3 สำหรับ Windows จากลิงค์ต่อไปนี้ https://iperf.fr/iperf-download.php หากคุณต้องการใช้ iPerf 2.0 - คุณสามารถรับได้ที่นี่ คุณไม่จำเป็นต้องติดตั้งเครื่องมือ เพียงแค่ดาวน์โหลดไฟล์เก็บถาวร iPerf และแตกไฟล์ไปยังไดเร็กทอรีในเครื่องบนไดรฟ์ มีเพียงสองไฟล์ในไฟล์เก็บถาวร:cygwin1.dll และ iperf3.exe .

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

มีการใช้งาน iPerf GUI หลายอย่างสำหรับ Windows ตัวอย่างเช่น Iperf3-Cygwin-GUI หรือ jperf .

jperf เขียนบน Java (เพื่อที่จะเรียกใช้ jperf ต้องติดตั้ง Java VM บนคอมพิวเตอร์) นอกจากรูปแบบกราฟิกสำหรับอินเทอร์เฟซ CLI แล้ว Jperf ยังสร้างแผนภูมิแบนด์วิดท์กราฟของช่องทางการสื่อสารแบบเรียลไทม์ได้

ในการใช้งาน เพียงแค่ระบุที่อยู่เซิร์ฟเวอร์ iPerf และเรียกใช้การสแกน

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

มี iPerfAutomate . แยกต่างหาก โมดูลในแกลเลอรีสคริปต์ของ PowerShell ที่สามารถใช้เพื่อรับเมตริกประสิทธิภาพเครือข่ายจากสคริปต์ PowerShell ของคุณ คุณสามารถติดตั้งโมดูลด้วยคำสั่ง:Install-Module -Name iPerfAutomate

การติดตั้ง iPerf บน CentOS Linux

ใน CentOS 8 แพ็คเกจ iperf3 จะรวมอยู่ใน AppStream ที่เก็บฐาน (ใน CentOS 7 คุณสามารถค้นหา iperf3 ใน EPEL repo) คุณสามารถติดตั้งได้ด้วยคำสั่ง dnf (yum):

# dnf install iperf3

บน Debian/Ubuntu distros คุณสามารถติดตั้ง iperf3 ด้วยคำสั่ง:

sudo apt install iperf3

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

หากคุณต้องการใช้อินสแตนซ์ Linux เป็นเซิร์ฟเวอร์ iperf3 คุณต้องเปิดพอร์ต TCP/UDP 5201 ในไฟร์วอลล์ (iptables):

# firewall-cmd --permanent --add-port=5201/udp
# firewall-cmd --permanent --add-port=5201/tcp
# firewall-cmd --reload

การใช้คำสั่ง iPerf เพื่อวัดความเร็วเครือข่าย/แบนด์วิดท์

มาดูตัวอย่างการใช้ iPerf เพื่อทดสอบทรูพุตของเครือข่ายกัน ในตัวอย่างนี้ เราจะใช้โฮสต์ Linux CentOS เป็นเซิร์ฟเวอร์ iPerf เรียกใช้เครื่องมือ iPerf3 ในโหมดเซิร์ฟเวอร์:

# iperf3 –s

เซิร์ฟเวอร์ iPerf กำลังทำงาน กำลังรอการเชื่อมต่อบนพอร์ต 5201 TCP

Server listening on 5201.
คำแนะนำ . อาร์กิวเมนต์ iPerf คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่!

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

ขึ้นอยู่กับการตั้งค่าไฟร์วอลล์ระหว่างไคลเอนต์และเซิร์ฟเวอร์ คุณสามารถเปลี่ยนพอร์ตการรับฟังโดยใช้อาร์กิวเมนต์ -p [หมายเลขพอร์ต]. คุณสามารถเรียกใช้เซิร์ฟเวอร์ iPerf ด้วยขนาดหน้าต่าง TCP ขนาดใหญ่และบนพอร์ต TCP อื่น ใช้คำสั่ง:

# iperf3 -s -w 32768 –p 5200

  • -w 32768 – ตั้งค่าขนาดหน้าต่าง TCP เป็น 32 kB (โดยค่าเริ่มต้นจะอยู่ที่ประมาณ 8 kB)
  • –p 5200 – พอร์ตที่ iPerf กำลังรอการเชื่อมต่อ (ฉันเตือนคุณว่า iperf2 ฟังโดยค่าเริ่มต้นที่พอร์ต 5001 และ iperf3 บน 5201)

ฉันใช้คอมพิวเตอร์ที่ติดตั้ง Windows 10 เป็นไคลเอนต์ iPerf เรียกใช้พรอมต์คำสั่งและไปที่ไดเร็กทอรีด้วยไฟล์ปฏิบัติการ iPerf:
cd c:\tools\iperf
ในการเรียกใช้การทดสอบแบนด์วิดท์เครือข่ายจากไคลเอ็นต์ ให้ระบุที่อยู่เซิร์ฟเวอร์ iPerf (หรือชื่อ DNS):
iperf3.exe -c 192.168.1.200
หากคุณเริ่มเซิร์ฟเวอร์ iPerf ด้วยขนาดหน้าต่าง TCP ที่เพิ่มขึ้น คุณสามารถใช้คำสั่งต่อไปนี้เพื่อรับโหลดเครือข่ายสูงสุด:

iperf3.exe -c 192.168.1.200 -P 8 -t 30 -w 32768

  • -c 192.168.1.200 – ที่อยู่ IP ของเซิร์ฟเวอร์ iPerf;
  • -w 32768 – เพิ่มขนาดหน้าต่าง TCP;
  • -t 30 – คือเวลาในหน่วยวินาทีสำหรับการทดสอบ (โดยค่าเริ่มต้น คือ 10 วินาที)
  • -P 8 – คือจำนวนเธรดคู่ขนาน (สตรีม) เพื่อรับโหลดช่องสัญญาณสูงสุด

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

ในตัวอย่างของฉัน การทดสอบใช้เวลา 30 วินาที ในรายงานฉบับสมบูรณ์ เราสนใจค่าของ แบนด์วิดท์ คอลัมน์ที่แสดงใน [SUM]สุดท้าย ไลน์. ในกรณีนี้ แบนด์วิดท์เครือข่ายเฉลี่ยระหว่างสองโฮสต์คือ 85.9 Mbit/s . ข้อมูล 307 MB ถูกโอน (โอน คอลัมน์) ด้วยความเร็วสมมาตร (ผู้ส่ง=ผู้รับ)

การใช้ -f อาร์กิวเมนต์ คุณสามารถเปลี่ยนรูปแบบความเร็วได้ (บิต กิโลบิต หรือเมกะบิต) ในการทดสอบแบบต่อเนื่อง เมื่อคุณต้องประมาณประสิทธิภาพการทำงานในช่วงหลายนาที (ชั่วโมง) คุณสามารถกำหนดระยะเวลาเพื่อแสดงผลลัพธ์ขั้นกลางโดยใช้ –i ตัวเลือก

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

คุณสามารถเรียกใช้ iPerf ในโหมดย้อนกลับ (เซิร์ฟเวอร์ส่งข้อมูลและไคลเอนต์ยอมรับ) ผู้ใช้ –R ตัวเลือกบนไคลเอนต์สำหรับสิ่งนี้

โดยค่าเริ่มต้น ยูทิลิตีจะสร้างการรับส่งข้อมูล TCP หากคุณต้องการตรวจสอบแบนด์วิดท์เครือข่ายของคุณสำหรับแพ็กเก็ต UDP คุณต้องใช้ –u ตัวเลือก. ในกรณีนี้ คุณควรเริ่มต้นเซิร์ฟเวอร์ iPerf ด้วยคำสั่ง:iperf3 -s –u )

หากคุณต้องการทดสอบแบนด์วิดท์ของผู้ให้บริการอินเทอร์เน็ต คุณสามารถใช้เซิร์ฟเวอร์ iPerf สาธารณะตัวใดตัวหนึ่งได้ (รายชื่อโฮสต์สาธารณะของ iPerf มีให้ที่นี่):

iperf3 -c iperf.scottlinux.com

หากคุณต้องการวัดความเร็วเครือข่ายสูงสุดในทั้งสองทิศทาง (ในโหมดดูเพล็กซ์) ให้ใช้ –d ตัวเลือกบนไคลเอนต์:

iperf3.exe -c IP -P 8 -t 30 -w 32768 –d

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

ในระหว่างการทดสอบเครือข่ายโดยใช้ iPerf คุณสามารถตรวจสอบแผนภูมิอัตราการส่งข้อมูลการเชื่อมต่อเครือข่ายได้ผ่านทางตัวจัดการงาน

โปรดทราบว่าในระหว่างการทดสอบ iPerf จะใช้ ทั้งหมด แบนด์วิดท์ที่ใช้ได้ของช่องทางการสื่อสารระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ ซึ่งอาจส่งผลเสียต่อแอปและผู้ใช้ที่มีประสิทธิผล

การใช้ iPerf เพื่อทดสอบความเร็วเครือข่ายและแบนด์วิดท์ (ทรูพุต)

คุณสามารถแสดงรายการตัวเลือกทั้งหมดได้ดังนี้:

iperf3 –help

ไอเพอร์ฟ เป็นยูทิลิตี้เครือข่ายที่ใช้งานง่ายและสะดวกสบาย ซึ่งช่วยให้คุณวัดประสิทธิภาพการเชื่อมต่อเครือข่ายและความเร็วการถ่ายโอนข้อมูลสูงสุดระหว่างอุปกรณ์สองเครื่อง