এই লেখায় আমরা দেখাব কিভাবে উইন্ডোজ সার্ভার ২০১৬ এবং উইন্ডোজ ১০-এ বিল্ট-ইন এবং থার্ড-পার্টি টুলস ব্যবহার করে নেটওয়ার্ক ডেটা ট্রান্সফার রেট ইনকামিং/আউটগোइং সীমাবদ্ধ করা যায়। আপনি জানতে পারেন যে উইন্ডোজ অ্যাপস ডিফল্টভাবে উপলব্ধ নেটওয়ার্ক ইন্টারফেস ব্যান্ডউইথের অধিকাংশ ব্যবহার করে। এতে কিছু সমস্যা হতে পারে যদি একটি টাস্ক (প্রধানত SMB শেয়ার্ড নেটওয়ার্ক ফোল্ডার) নেটওয়ার্ক অ্যাডাপ্টারের সকল উপলব্ধ ব্যান্ডউইথ ব্যবহার করে। আপনি নেটওয়ার্ক শেয়ার্ড ফোল্ডার থেকে ফাইল কপি রেটের সর্বোচ্চ সীমা বাধা দিতে পারেন, যাতে অন্যান্য অ্যাপের ব্যবহারকারীদের নেটওয়ার্ক অ্যাডাপ্টার রিসোর্স গ্যারান্টেড থাকে।
TCP/IP নেটওয়ার্কে ট্রাফিক ক্লাস বা প্রায়োরিটি ম্যানেজ করতে QoS (Quality of Service) টেকনোলজি ব্যবহার করা হয়।
উইন্ডোজে QoS গ্রুপ পলিসি কনফিগার করা
আপনি QoS GPO সেটিংস ব্যবহার করে উইন্ডোজে ট্রাফিক প্রায়োরিটি ম্যানেজ করতে পারেন। এই সিন্যারিওতে, আমি সকল আউটবাউন্ড কানেকশনের জন্য ডেটা ট্রান্সফার রেট সীমাবদ্ধ করব। (পলিসিটি প্রযোজ্য হবে حتی যখন ব্যবহারকারীরা আপনার সার্ভার থেকে ফাইল কপি করে।) এই উদাহরণ ব্যবহার করে আপনি যেকোনো অ্যাপ, পোর্ট বা হোস্ট/সাইটের জন্য রেট সীমাবদ্ধ করতে পারেন।
QoS গ্রুপ পলিসিস সাপোর্টেড:
- Windows Server 2008 বা উচ্চতর
- Windows Vista বা উচ্চতর
প্রথমে, আপনার নেটওয়ার্ক অ্যাডাপ্টার সেটিংস চেক করুন নিশ্চিত করতে যে Qos Packet Scheduler অপশন সক্রিয় আছে।
- লোকাল গ্রুপ পলিসি এডিটর কনসোল (
gpedit.msc) চালান, যান Computer Configuration -> Windows Settings -> Policy-based QoS-এ এবং Create new policy ক্লিক করুন; - পলিসি নাম দিন, Specify Outbound Throttle Rate অপশন চেক করুন এবং Throttle Rate সেট করুন। এটি MBps/KBps-এ আউটবাউন্ড ট্রাফিকের রেট সীমাবদ্ধ করার রেট;দ্রষ্টব্য. আপনি DSCP ভ্যালুও সেট করতে পারেন। DSCP (Differenciated Services Code Point) এডভান্সড রাউটার যেমন Cisco/Mikrotik-এ ব্যবহার হতে পারে। নেটওয়ার্ক প্যাকেটের DSCP ভ্যালুর উপর ভিত্তি করে, রাউটাররা তার জন্য প্রায়োরিটি সেট করবে। আপনি যদি আপনার রাউটারগুলোর DSCP QoS সেটিংস নিয়ে নিশ্চিত না হন, তবে এই অপশন ব্যবহার করবেন না।
- তারপর আপনি একটি প্রসেস/অ্যাপ (এক্সিকিউটেবল ফাইল .exe) বা একটি IIS http(s) সাইট সিলেক্ট করতে পারেন যেটিতে পলিসি প্রযোজ্য হবে। আমি All applications অপশন চেকড রেখেছি;
- আপনি আপনার কম্পিউটারের IP ইন্টারফেস নির্দিষ্ট করতে পারেন যেটিতে পলিসি প্রযোজ্য হবে। আপনার একাধিক নেটওয়ার্ক অ্যাডাপ্টার বা IP অ্যালায়াস থাকলে এটি দরকার হতে পারে;
- আপনি ডেস্টিনেশন IP ঠিকানাও নির্দিষ্ট করতে পারেন সেটার জন্য ট্রান্সফার রেট সীমাবদ্ধ করতে;

- তারপর পলিসি যেটি প্রযোজ্য হবে সেরকম প্রোটোকল নির্দিষ্ট করুন (TCP, UDP, বা TCP এবং UDP)। আপনি একটি সোর্স এবং টার্গেট পোর্টও সিলেক্ট করতে পারেন। আপনি যদি নিশ্চিত না হন আপনার অ্যাপ কোন প্রোটোকল ব্যবহার করছে, তবে TCP and UDP বেছে নিন। আপনি যদি SMB ফোল্ডারে শেয়ার্ড ফাইল অ্যাক্সেস রেট সীমাবদ্ধ করতে চান, তবে TCP এবং পোর্ট 445 বেছে নিন।
উইন্ডোজে QoS পলিসি কনফিগার হয়ে গেছে। আপনাকে কম্পিউটার রিবুট করার দরকার নেই, পরিবর্তন প্রযোজ্য করার সাথে সাথে নেটওয়ার্কে ডেটা ট্রান্সফার রেট শেপ হবে। দ্রষ্টব্য, Throttle Rate পলিসি এডিটরে কিলোবাইটে দেখানো হয়, আপনি যদি MB ভ্যালু সিলেক্ট করে থাকেন।
কারণ আমি সকল অ্যাপ এবং সকল পোর্ট সিলেক্ট করেছিলাম, পলিসিটি নেটওয়ার্ক ফাইল ট্রান্সফার রেট সর্বোচ্চ 3 MB-এ থ্রটল করবে (ফাইল এক্সপ্লোরার — explorer.exe ব্যবহার করে ফাইল কপি সহ)। নিচের স্ক্রিনশটে আপনি দেখতে পাচ্ছেন যে কনফিগার্ড QoS পলিসি উইন্ডোজে নেটওয়ার্ক ফাইল ট্রান্সফার রেট স্লো করছে।
এছাড়া, Advanced QoS পলিসিস আছে যা শুধু Computer Configuration গ্রুপ পলিসি সেকশনে উপলব্ধ। আপনি Inbound TCP Traffic ট্যাবে ইনবাউন্ড TCP ট্রাফিক সীমাবদ্ধ করতে পারেন (DSCP Marking Override ট্যাব DSCP সেটিংসকে রেফার করে, আমরা এখানে আলোচনা করব না)।
আপনি দেখতে পাচ্ছেন, ট্রাফিক রেস্ট্রিকশনের ৪ লেভেল আছে। নিচের টেবিলে লেভেলগুলো এবং তাদের রেট দেখানো হয়েছে।
| Inbound TCP throughput level | Maximum Transfer Rate |
| 0 | 64 KB |
| 1 | 256 KB |
| 2 | 1 MB |
| 3 | 16 MB |
পাওয়ারশেল দিয়ে উইন্ডোজ নেটওয়ার্ক QoS পলিসি ম্যানেজ করা
আপনি পাওয়ারশেল ব্যবহার করে নেটওয়ার্ক QoS পলিসি তৈরি ও ম্যানেজ করতে পারেন। উদাহরণস্বরূপ, SMB (শেয়ার্ড ফাইল) ট্রাফিকের জন্য ব্যান্ডউইথ সীমাবদ্ধ করতে একটি QoS পলিসি তৈরি করতে, নিচের কমান্ড ব্যবহার করুন:
New-NetQosPolicy -Name "SMBRestrictFileCopySpeed" -SMB -ThrottleRateActionBitsPerSecond 10MB
Name : SMBRestrictFileCopySpeed Owner : Group Policy (Machine) NetworkProfile : All Precedence : 127 Template : SMB JobObject : ThrottleRate : 10.486 MBits/sec
কম্পিউটারে প্রযোজ্য QoS পলিসি তালিকা দেখতে এই কমান্ড চালান:
Get-NetQosPolicy
QoS পলিসি এডিট বা রিমুভ করতে, Set-NetQosPolicy এবং Remove-NetQosPolicy কmdলেটগুলো ব্যবহার করা হয়।
Remove-NetQosPolicy -Name SMBRestrictFileCopySpeed
Set-SmbBandwidthLimit: পাওয়ারশেল দিয়ে SMB ব্যান্ডউইথ লিমিট কনফিগার করা
Set-SmbBandwidthLimit কmdলেট SMB প্রোটোকলের ওপর ফাইল ট্রান্সফার রেট সীমাবদ্ধ করতে দেয়। প্রথমে, উইন্ডোজ সার্ভার কম্পোনেন্ট SMB Bandwidth Limit পাওয়ারশেল ব্যবহার করে ইনস্টল করুন:
Add-WindowsFeature -Name FS-SMBBW
অথবা আপনি গ্রাফিক্যাল Server Manager থেকে ইনস্টল করতে পারেন (Add Windows Feature -> SMB Bandwidth Limit)।
সাধারণত এই মডিউলটি Hyper-V Live Migration-এর জন্য ব্যান্ডউইথ লিমিট কনফিগার করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, নিচের কমান্ড ভার্চুয়াল মেশিন মাইগ্রেশন স্পিড সর্বোচ্চ ১০০ MB/s-এ সীমাবদ্ধ করবে।
Set-SmbBandwidthLimit -Category LiveMigration -BytesPerSecond 100MB
আপনি -Category Default প্যারামিটারও ব্যবহার করতে পারেন সাধারণ ফাইল ট্রান্সফার ট্রাফিক SMB-এ সীমাবদ্ধ করতে।
Set-SmbBandwidthLimit -Category Default -BytesPerSecond 10MB
FS-SMBBW উইন্ডোজ সার্ভার ২০১২ R2 বা উচ্চতরে উপলব্ধ।
Robocopy-এ ফাইল ট্রান্সফার ব্যান্ডউইথ থ্রটলিং
Robocopy-এ কাজ করার সময়, আপনি নেটওয়ার্কের ওপর ফাইল কপি/মুভ করার স্পিড সীমাবদ্ধ করতে একটি স্পেশাল প্যারামিটার ব্যবহার করতে পারেন। এটি /ipg (Inter packet Gap)। কীটি মিলিসেকেন্ডে প্যাকেজের মধ্যে গ্যাপ সেট করে এবং কম স্পিড চ্যানেলে ফাইল কপি করার সময় নেটওয়ার্ক লোড কমানোর জন্য ব্যবহৃত হয়। Robocopy নেটওয়ার্কের ওপর ৬৪ KB ব্লকে ডেটা ট্রান্সমিট করে। সুতরাং আপনি যদি আপনার নেটওয়ার্ক লিংকের ব্যান্ডউইথ জানেন, তবে ট্রান্সফার রেট রিকোয়ারেমেন্ট অনুযায়ী প্রাসঙ্গিক /ipg ভ্যালু ক্যালকুলেট করতে পারেন।
আপনি যদি ফর্মুলা গভীরে যেতে চান না, তবে একটি রেডি Robocopy IPG ক্যালকুলেটর ব্যবহার করতে পারেন: https://www.zeda.nl/index.php/en/robocopyipgcalculator-en-2
আপনি BITS প্রোটোকলও ব্যবহার করতে পারেন ধীর বা অস্থির নেটওয়ার্ক লিংকে ডেটা কপি করতে (BITS এবং পাওয়ারশেল ব্যবহার করে বড় ফাইল কপি করার আর্টিকেলের উদাহরণ দেখুন)। BITS প্রোটোকল দুটি হোস্টের মধ্যে চ্যানেল লোডের উপর ভিত্তি করে ডাইনামিক্যালি ডেটা ট্রান্সফার স্পিড ম্যানেজ করতে দেয় এবং ডাউনলোড রিজিউম সাপোর্ট করে।
থার্ড-পার্টি টুলস ব্যবহার করে ট্রাফিক শেপিং
পোর্ট, অ্যাপ বা ডেস্টিনেশন অনুযায়ী উইন্ডোজে থ্রুপুট সীমাবদ্ধ করার সবচেয়ে জনপ্রিয় কমার্শিয়াল সমাধান হলো NetLimiter। সবচেয়ে জনপ্রিয় ফ্রি টুল হলো TMeter Free।
এছাড়া অন্যদের মধ্যেও উল্লেখযোগ্য:
- Glasswire — ফায়ারওয়াল এবং নেটওয়ার্ক মনিটরও অন্তর্ভুক্ত;
- NetBalancer — নেটওয়ার্ক মনিটরিং এবং ট্রাফিক নিয়ম সেট করা;
- cFosSpeed — অ্যাপের জন্য ট্রাফিক প্রায়োরিটি কনফিগার করতে পারে;
- Net Peeker — Glasswire-এর মতো, এটিতে ফায়ারওয়াল ফিচার আছে এবং ট্রাফিক প্রায়োরিটি সেট করতে পারে।
উইন্ডোজ QoS পলিসিস নেটওয়ার্কে ডেটা ট্রান্সফার রেট ভালোভাবে সীমাবদ্ধ করতে পারে, তাই আপনি যদি এটি করতে চান, তবে প্রথমে QoS চেষ্টা করুন। যেকোনো অন্যান্য পলিসির মতো, আপনি সেগুলো ডোমেন লেভেলে gpmc.msc কনসোল ব্যবহার করে কনফিগার করতে পারেন।
থার্ড-পার্টি সফটওয়্যারে বেশি ফিচার এবং গ্রাফিক্যাল ইন্টারফেস থাকে, কিন্তু এই অ্যাপগুলো অধিকাংশ কমার্শিয়াল।