VPN-এর মধ্য দিয়ে 2 GB-র একটি ফাইল কপি করুন, স্থানান্তর ঠিকঠাক দেখায়। দশ হাজার ছোট নথির একটি ফোল্ডার কপি করুন, একই লিংক ভাঙা মনে হয়। পার্থক্যটি দুই কাজের মধ্যে বদলে যাওয়া কোনো ব্যান্ডউইথ সেটিং নয়। দ্বিতীয় কাজটি সময় ব্যয় করে সেটআপ, মেটাডেটা এবং উত্তরের জন্য অপেক্ষায়, আর টানেলের লেটেন্সিই সেই অপেক্ষাকে দৃশ্যমান করে।

একটি ফাইল স্ট্রিম করে; ফাইলের ফোল্ডার দরকষাকষি করে

একটি বড় কপি তার জীবনের বেশিরভাগ সময় কয়েকটি খোলা হ্যান্ডেলের ওপর পড়া-লেখার লুপে কাটায়। প্রোটোকলের ব্যয় প্রতি ফাইলে একবার দেওয়া হয়, আর ডেটা বড় ব্লকে চলে। ব্যান্ডউইথ ফলাফলটি নির্ধারণ করে।

ফোল্ডার কপি প্রতি ফাইলে খরচ দেয়: তৈরি, অ্যাট্রিবিউট জিজ্ঞাসা, খোলা, লেখা, বন্ধ এবং ডিরেক্টরি মেটাডেটা হালনাগাদ। এর প্রতিটি হলো এমন একটি অনুরোধ যা পরের ধাপ এগোনোর আগে উত্তরের জন্য অপেক্ষা করে। বাইটগুলো ছোট; সমন্বয়টা নয়।

এই কারণেই কম লিংক-ব্যবহারের গ্রাফ প্রায় কিছুই প্রমাণ করে না। লিংকটি নিষ্ক্রিয় কারণ ক্লায়েন্ট অপেক্ষা করছে, টানেল ধীর বলে নয়। একটি স্টোরেজ অ্যারে বা এন্ডপয়েন্ট স্ক্যানার একই ধরনের বিলম্ব যোগ করতে পারে। কোনো নেটওয়ার্ক সেটিং বদলানোর আগে শনাক্ত করুন কোন ধাপটি অপেক্ষা করছে।

রাউন্ড ট্রিপ বাইটের চেয়ে দ্রুত জমে

লেটেন্সি হলো একটি নির্ভরশীল বিনিময়ের খরচ। যদি একটি ফাইলের কয়েকটি ধারাবাহিক বিনিময় লাগে এবং টানেল প্রতি দিকে 40 ms যোগ করে, তবে প্রতি ফাইলের খরচ দ্রুত বাড়ে। দশ হাজার ফাইল সেটিকে মিনিটে পরিণত করে।

হিসাবটি দৃষ্টান্তমূলক, বেঞ্চমার্ক নয়: একটি ফাইল এক রাউন্ড ট্রিপেই খরচ করবে এমন নিশ্চয়তা নেই, আর ক্লায়েন্টরা কিছু কাজ ওভারল্যাপ করে।

দুটি লিভার মোটটি বদলায়। প্রতি ফাইলে নির্ভরশীল বিনিময়ের সংখ্যা কমান, অথবা সেগুলোর আরও বেশি একসঙ্গে চালু রাখুন। প্রথমটি প্রোটোকল বা কাজের চাপের পরিবর্তন; দ্বিতীয়টি সমান্তরালতা। কোনোটিই ধীর লিংককে দ্রুত করে না।

কাজের চাপ মাপুন, লিংক নয়

একই এন্ডপয়েন্ট ও অ্যাক্সেস নীতির তিনটি কাজ তুলনা করুন: একটি বড় ফাইল, ছোট ফাইলের ফোল্ডার এবং প্রকৃত ব্যবসায়িক অপারেশন। প্রতিটি ফলাফলের সঙ্গে ফাইলের সংখ্যা, আকারের বণ্টন, কপি টুল এবং নেটওয়ার্ক অবস্থা লিপিবদ্ধ করুন।

সেই বিবরণ ছাড়া একটি একক MB/s সংখ্যা অন্য কারও সংখ্যার সঙ্গে তুলনা করা যায় না।

থ্রুপুট থেকে আলাদাভাবে লেটেন্সি মাপুন। ফাইল সার্ভারে একটি সাধারণ রাউন্ড ট্রিপ পরীক্ষা সেই সংখ্যা দেয় যা ছোট অপারেশনজুড়ে গুণ হয়। তারপর কপির গড় হার নয়, অনুরোধের ধরন লক্ষ্য করুন। যদি হার কম হয় আর লিংক নিষ্ক্রিয় থাকে, তবে সংকীর্ণ স্থানটি টানেলের উপরে।

কাজটি বদলান: সমান্তরালতা ও আর্কাইভ

অনুমোদিত বাল্ক কপির জন্য নিয়ন্ত্রিত সমান্তরালতাসম্পন্ন টুল বেশি অনুরোধ চালু রাখে। Robocopy-র /MT অপশনটি Windows-এ প্রচলিত উদাহরণ। থ্রেড যোগ করলে দ্রুততর কপির নিশ্চয়তা নেই।

এমন একটি সংখ্যা বেছে নিন যা ক্লায়েন্ট, সার্ভার ও স্টোরেজ চালিয়ে যেতে পারে, এবং কাজের লগ ও যেকোনো ত্রুটি সংরক্ষণ করুন।

উৎসে আর্কাইভ করা এবং স্থানীয়ভাবে খোলা প্রতি ফাইলের দূরবর্তী কাজ সরিয়ে দেয়। তুলনায় প্রস্তুতি ও নিষ্কাশনের সময় অন্তর্ভুক্ত করুন, এবং নিশ্চিত করুন যে আর্কাইভটি কাজের প্রয়োজনীয় মেটাডেটা ও অনুমতি সংরক্ষণ করে। কোনোটিই অ্যাপ্লিকেশনকে নিজের ফাইল অপারেশন ব্যাচ করতে বাধ্য করে না।

নিয়ন্ত্রিত পরীক্ষায় কাউন্টার যাচাই করুন

একটি ভেরিয়েবল বদলে একই কাজ দুবার চালান, এবং দুটি সংখ্যাই লিপিবদ্ধ করুন। নিয়ন্ত্রিত পরীক্ষাই একমাত্র উপায় জানার, সেটিং সাহায্য করেছে কি না নাকি নেটওয়ার্ক আকস্মিকভাবে শান্ত ছিল।

দুটি কমান্ড ফাইলের সংখ্যা এবং রাউন্ড ট্রিপের ভিত্তিরেখা দেয়:

Get-ChildItem \\fileserver.hq.example\\share -Recurse | Measure-Object -Property Length -Sum
ping -n 20 fileserver.hq.example

তারপর সীমিত থ্রেড সংখ্যায় কপিটি চালান এবং লগটি আগের রানের সঙ্গে তুলনা করুন:

robocopy \\fileserver.hq.example\\share C:\\local /E /MT:16 /LOG:copy.log /TEE

কাউন্টার উন্নত করতে SMB সাইনিং, এনক্রিপশন বা এন্ডপয়েন্ট সুরক্ষা বন্ধ করবেন না। সেই পরিবর্তনগুলো একটি নিরাপত্তা বৈশিষ্ট্যের সঙ্গে এমন একটি সংখ্যার বিনিময় করে যা হয়তো সংকীর্ণ স্থান ছিল না। আর আপনার নোটে VPN পরিবহনকে SMB-র নিজস্ব পরিবহন থেকে আলাদা রাখুন, কারণ একটিতে সংশোধন অন্যটি সম্পর্কে প্রমাণ নয়।

সম্পর্কিত নিবন্ধ