কম্পিউটার টিউটোরিয়াল

iPerf3 – লিনাক্সের জন্য সঠিক নেটওয়ার্ক থ্রুপুট ও স্পিড টেস্ট

iperf3 একটি ফ্রি ওপেন-सোর্স, ক্রস-প্ল্যাটফর্ম কমান্ড-লাইন-ভিত্তিক প্রোগ্রাম রিয়েল-টাইম নেটওয়ার্ক থ্রুপুট মেজারমেন্ট করার জন্য। এটি IP নেটওয়ার্কে ( IPv4 এবং IPv6 সাপোর্ট করে) সর্বোচ্চ অর্জনযোগ্য ব্যান্ডউইথ টেস্ট করার জন্য সবচেয়ে পাওয়ারফুল টুলসের একটি।

[ আপনি এটাও পছন্দ করতে পারেন: লিনাক্সের জন্য ১৭টি কার্যকর ব্যান্ডউইথ মনিটরিং টুল ]

iperf-এর সাথে, আপনি টাইমিং, বাফার, এবং প্রোটোকল যেমন TCP, UDP, এবং SCTP-সহ জড়িত আপারামিটার টিউন করতে পারেন। এটি নেটওয়ার্ক পারফরম্যান্স টিউনিং অপারেশনের জন্য খুব হ্যান্ডি।

সর্বোচ্চ বা বরং উন্নত নেটওয়ার্ক পারফরম্যান্স অর্জন করতে, আপনাকে আপনার নেটওয়ার্কের রিসিভিং এবং সেন্ডিং ক্যাপাবিলিটির থ্রুপুট এবং ল্যাটেন্সি উভয় বাড়াতে হবে।

যাইহোক, আপনি আকচুয়াল টিউনিং-এ যাওয়ার আগে, আপনাকে কিছু টেস্ট পারফর্ম করতে হবে যাতে ওভারঅল নেটওয়ার্ক পারফরম্যান্স স্ট্যাটিস্টিক্স গ্যাথার করতে পারেন যা আপনার টিউনিং প্রসেস গাইড করবে।

এইর রেজাল্ট شامل: সেকেন্ডে টাইম ইন্টারভাল, ডেটা ট্রান্সফার্ড, ব্যান্ডউইথ (ট্রান্সফার রেট), লস, এবং অন্যান্য উপকারী নেটওয়ার্ক পারফরম্যান্স প্যারামিটার। এটি প্রাথমিকভাবে একটি নির্দিষ্ট পথের ওভার TCP কানেকশন টিউন করতে সাহায্য করার জন্য ইনটেন্ডেড এবং সেটিই আমরা এই গাইডে ফোকাস করব।

প্রয়োজনীয়তা:

  • দুটি নেটওয়ার্কড কম্পিউটার যাদের উভয়ে iperf3 ইনস্টল করা থাকে।

লিনাক্স সিস্টেমে iPerf3 ইনস্টল করা

iperf3 ব্যবহার শুরু করার আগে, আপনাকে এটি ইনস্টল করতে হবে দুটি মেশিনে যেগুলো আপনি বেন্চмар্কিং-এর জন্য ব্যবহার করবেন। যেহেতু iperf3 অধিকাংশ কমন লিনাক্স ডিস্ট্রিবিউশনের অফিসিয়াল সফটওয়্যার রিপোজিটরিতে উপলব্ধ, তাই ইনস্টল করা সহজ, প্যাকেজ ম্যানেজার ব্যবহার করে নিচের মতো।

$ 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 ইনস্টল হলে, আপনি নেটওয়ার্ক থ্রুপুট টেস্টিং শুরু করতে পারেন।

দুটি লিনাক্স সার্ভারের মধ্যে নেটওয়ার্ক স্পিড টেস্ট করা

প্রথমে, রিমোট মেশিনে কানেক্ট করুন যেটি আপনি server, হিসেবে ব্যবহার করবেন, এবং iperf3 সার্ভার মোডে ফায়ার আপ করুন -s ফ্ল্যাগ ব্যবহার করে, এটি ডিফল্টভাবে পোর্ট 5201-এ লিসেন করবে।

আপনি ফরম্যাট স্পেসিফাই করতে পারেন (k, m, g for Kbits, Mbits, Gbits অথবা K, M, G for KBytes, Mbytes, Gbytes) রিপোর্ট করার জন্য, -f স্যুইচ ব্যবহার করে নিচের মতো।

$ iperf3 -s -f K 

যদি পোর্ট 5201 আপনার সার্ভারে অন্য প্রোগ্রাম দ্বারা ব্যবহার করা হয়, তবে আপনি একটি ভিন্ন পোর্ট (যেমন 3000) স্পেসিফাই করতে পারেন -p স্যুইচ ব্যবহার করে নিচের মতো।

$ iperf3 -s -p 3000 

অপশনালি, আপনি সার্ভারকে ডেমন হিসেবে রান করতে পারেন, -D ফ্ল্যাগ ব্যবহার করে এবং সার্ভার মেসেজ লগ ফাইলে লিখতে পারেন, নিচের মতো।

$ iperf3 -s -D > iperf3log 

তারপর আপনার লোকাল মেশিনে যেটিকে আমরা client ধরে নিচ্ছি (যেখানে আকচুয়াল বেন্চмар্কিং হয়), iperf3 ক্লায়েন্ট মোডে রান করুন -c ফ্ল্যাগ ব্যবহার করে এবং সার্ভার চলছে সেই হোস্ট স্পেসিফাই করুন (তের IP অ্যাড্রেস বা ডোমেইন বা হোস্টনেম ব্যবহার করে)।

$ iperf3 -c 192.168.10.1 -f K 

প্রায় ১৮ থেকে ২০ সেকেন্ডের পর, ক্লায়েন্ট টারমিনেট হবে এবং বেন্চمار্কের জন্য অ্যাভারেজ থ্রুপুট ইন্ডিকেট করে রেজাল্ট প্রোডিউস করবে, নিচের স্ক্রিনশটের মতো।

iPerf3 – লিনাক্সের জন্য সঠিক নেটওয়ার্ক থ্রুপুট ও স্পিড টেস্ট

বেন্চмар্ক রেজাল্ট থেকে, নিচের স্ক্রিনশটে দেখানো অনুযায়ী, server এবং client-এর মানগুলোর মধ্যে ভ্যারিয়েশন আছে। কিন্তু, আপনাকে সবসময় আপনার আউট ক্যারি আউট করা প্রতিটি টেস্টে iperf client মেশিন থেকে প্রাপ্ত রেজাল্ট ব্যবহার করা উচিত।

লিনাক্সে অ্যাডভান্সড নেটওয়ার্ক টেস্ট থ্রুপুট পারফর্ম করা

এডভান্সড টেস্ট পারফর্ম করার জন্য ক্লায়েন্ট-স্পেসিফিক অনেক অপশন আছে, নিচে ব্যাখ্যা করা হলো।

নেটওয়ার্কে একটি নির্দিষ্ট সময়ে ডেটার পরিমাণ নির্ধারণকারী একটি গুরুত্বপূর্ণ ফ্যাক্টর হল TCP উইন্ডো সাইজ – এটি TCP কানেকশন টিউনিং-এ গুরুত্বপূর্ণ। আপনি উইন্ডো সাইজ/সকেট বাফার সাইজ সেট করতে পারেন -w ফ্ল্যাগ ব্যবহার করে নিচের মতো।

$ iperf3 -c 192.168.10.1 -f K -w 500K 

রিভার্স মোড-এ রান করতে যেখানে server পাঠায় এবং client রিসিভ করে, -R স্যুইচ অ্যাড করুন।

$ iperf3 -c 192.168.10.1 -f K -w 500K -R 

বায়-ডাইরেকশনাল টেস্ট রান করতে, অর্থাৎ দুডিকে একসাথে ব্যান্ডউইথ মেজার করতে, -d অপশন ব্যবহার করুন।

$ iperf3 -c 192.168.10.1 -f K -w 500K -d 

আপনি যদি server results client আউটপুটে পেতে চান, তবে --get-server-output অপশন ব্যবহার করুন।

$ iperf3 -c 192.168.10.1 -f K -w 500K -R --get-server-output 
iPerf3 – লিনাক্সের জন্য সঠিক নেটওয়ার্ক থ্রুপুট ও স্পিড টেস্ট

প্যারালেল ক্লায়েন্ট স্ট্রিমের সংখ্যা সেট করাও সম্ভব (এই উদাহরণে দুইটি), যেগুলো একই সময়ে চলে, -P অপশন ব্যবহার করে।

$ iperf3 -c 192.168.10.1 -f K -w 500K -P 2 

আরো ইনফরমেশনের জন্য, iperf3 man পেজ দেখুন।

$ man iperf3 

এটোই! আকচুয়াল নেটওয়ার্ক পারফরম্যান্স টিউনিং-এ যাওয়ার আগে সবসময় নেটওয়ার্ক পারফরম্যান্স টেস্ট পারফর্ম করতে মনে রাখবেন। iperf3 একটি পাওয়ারফুল টুল, যা নেটওয়ার্ক থ্রুপুট টেস্ট রান করার জন্য খুব হ্যান্ডি।

আপনার কোথাও মতামত শেয়ার করতে চান বা প্রশ্ন জিজ্ঞাসা করতে চান, নিচের কমেন্ট ফর্ম ব্যবহার করুন।

  1. হেক্সাডেসিমেল স্ট্রিংকে দশমিকে রূপান্তর করার পাইথন প্রোগ্রাম

  2. ওয়ার্ডপ্রেস ডেটাবেস পরিষ্কার করে আপনার সাইট দ্রুত করুন: সম্পূর্ণ গাইড

  3. Spring Boot-এ application.properties-এ MySQL DataSource কনফিগার করা

  4. অ্যান্ড্রয়েড মোবাইল হার্টবিট সেন্সর সাপোর্ট করে কিনা যাচাই