USB কনটেনশন — ডিভাইস একসাথে ধীর
প্রতিটি USB পোর্ট স্বাধীন এই সাধারণ বিশ্বাসটি ভুল। একই আপস্ট্রিম লিংক, হাব, স্পিড ডোমেইন বা কন্ট্রোলার শিডিউলিং রিসোর্স শেয়ার করা ডিভাইসগুলি ব্যান্ডউইডথের জন্য প্রতিযোগিতা করে। ক্যামেরা বা এক্সটার্নাল ড্রাইভের মতো ব্যান্ডউইডথ-নিবিড় ডিভাইস একই কন্ট্রোলারে চললে সবগুলি ধীর হতে পারে। এই গাইড USB টপোলজি ব্যাখ্যা করে, কনটেনশনের লক্ষণ চিহ্নিত করে, এবং পুনঃসংযোগ কৌশল দেয়।
বেশিরভাগ মানুষ ধরে নেয় কম্পিউটারের প্রতিটি USB পোর্ট সিস্টেমের সাথে নিজস্ব ব্যক্তিগত সংযোগ সহ একটি স্বাধীন লেন। এক পোর্টে ড্রাইভ এবং অন্যটিতে ক্যামেরা প্লাগ করুন, স্বাভাবিক প্রত্যাশা যে কেউ অপরকে প্রভাবিত করতে পারে না। এক ডজন ব্যবহারকারীকে জিজ্ঞেস করুন কেন তাদের ডিভাইস একসাথে ধীর হয়, এবং সংখ্যাগরিষ্ঠ ডিভাইস, ক্যাবল, বা অপারেটিং সিস্টেমকে দোষ দেবে। সেই মানসিক মডেলটি ভুল, এবং এটিই কারণ যে অনেক USB ট্রাবলশুটিং সেশন হতাশায় শেষ হয়।
USB পোর্ট স্বাধীন নয়। এগুলি কন্ট্রোলারের অধীনে গোষ্ঠীবদ্ধ, এবং একটি কন্ট্রোলারে সংযুক্ত প্রতিটি ডিভাইস নির্দিষ্ট মোট ব্যান্ডউইডথ সহ একটি বাস শেয়ার করে। যখন সেই বাসের ডিভাইসগুলি এটি যা সরবরাহ করতে পারে তার চেয়ে বেশি চায়, তারা প্রতিযোগিতা করে এবং বাসের সবাই ধীর হয় — যার মধ্যে এমন ডিভাইসও আছে যা নিজে সামান্য ব্যান্ডউইডথ ব্যবহার করে। সেই প্রতিযোগিতাই বাস কনটেনশন।
কনটেনশন রহস্যময় লক্ষণের একটি দীর্ঘ তালিকা ব্যাখ্যা করে: একটি ওয়েবক্যাম যা এক্সটার্নাল ড্রাইভ কপি শুরু করার সাথে সাথে ফ্রেম ড্রপ করে, অডিও যা প্রিন্টার একটি কাজ শুরু করলে ক্র্যাকল করে, একটি MIDI কন্ট্রোলার যা পারফরম্যান্সের মাঝখানে সংযোগ বিচ্ছিন্ন করে। এই ক্ষেত্রের অনেকগুলিতে ডিভাইস ত্রুটিপূর্ণ নয় — তারা স্টার্ভড, এবং স্টারভেশন হার্ডওয়্যার নয় বরং সংযোগ লেআউট দ্বারা সৃষ্ট। একই ডিভাইস ভিন্ন পোর্টে সরালে সমস্যা প্রায়শই অদৃশ্য হয়ে যায়, যা ব্যাখ্যা করে কেন অভিন্ন পেরিফেরাল এক বন্ধুর মেশিনে নিখুঁত কাজ করে। মনে রাখবেন USB অস্বাভাবিকতা পাওয়ার ডেলিভারি, ক্যাবল কোয়ালিটি, ড্রাইভার বাগ, কন্ট্রোলার শিডিউলিং, আইসোক্রোনাস ট্রান্সফার সীমা, USB 3.x RF ইন্টারফেরেন্স, বা ফার্মওয়্যার সমস্যা থেকেও আসতে পারে — ব্যান্ডউইডথ কনটেনশন প্রথমে যাচাই করার জন্য একটি প্রধান প্রার্থী, সার্বজনীন ব্যাখ্যা নয়।
ভাল খবর হল কনটেনশন নির্ণয়যোগ্য এবং প্রায়শই বিদ্যমান পোর্ট পুনর্বিন্যাস করে ঠিক করা যায়। একটি প্রায়শই উদ্ধৃত উদাহরণ: একটি Dell XPS 15-এ Logitech C920 ওয়েবক্যাম ফ্রেম ড্রপ করছিল একটি Samsung T7 ড্রাইভ ভিন্ন কন্ট্রোলারে সরানোর মাধ্যমে সমাধান হয়েছিল — সমাধানে খরচ শূন্য ডলার। (এটি ব্যবহারকারীদের দ্বারা রিপোর্ট করা একটি উদাহরণ, নিয়ন্ত্রিত ল্যাব পরিমাপ নয়।) এই পৃষ্ঠা ব্যাখ্যা করে USB টপোলজি আসলে কীভাবে কাজ করে, কেন নির্দিষ্ট সংযোগ প্যাটার্ন আপনার ডিভাইসকে স্টার্ভ করতে পারে, এবং কীভাবে সমস্যা কমাতে বা দূর করতে হয় তা পোর্ট পুনর্বিন্যাস করতে হয়।

USB টপোলজি আসলে কীভাবে কাজ করে
USB ট্রাফিক কঠোর হায়ারার্কি অনুসরণ করে। শীর্ষে বসে হোস্ট কন্ট্রোলার, মাদারবোর্ডের একটি চিপ যা সিস্টেমের পক্ষে USB প্রোটোকল চালায়। প্রতিটি কন্ট্রোলার এক বা একাধিক রুট হাব এর মালিক, যা ব্যাক প্যানেলে আপনি যে ফিজিক্যাল পোর্ট দেখেন সেখানে শেষ হয়। ক্যাবল এবং বাহ্যিক ডাউনস্ট্রিম হাব বাসকে আরও প্রসারিত করে, এবং ডিভাইস প্রান্তে সংযুক্ত হয়। ডিভাইস আসলে প্রতিযোগিতা করে কিনা তা নির্ভর করে তারা একই আপস্ট্রিম লিংক, হাব, স্পিড ডোমেইন, এবং কন্ট্রোলার শিডিউলিং রিসোর্স শেয়ার করে কিনা তার উপর। ভিন্ন স্পিড ডোমেইনে (USB 2.0 বনাম USB 3.x) বা একই কন্ট্রোলারের অধীনে ভিন্ন রুট হাব শাখায় থাকা ডিভাইস একই ব্যান্ডউইডথ পুল থেকে টানে না — শুধু একই কন্ট্রোলার নাম দেখলেই তারা এক ব্যান্ডউইডথ পুল ব্যবহার করে তার প্রমাণ নয়। তবে নির্ণয়ের সময় এক কন্ট্রোলারের অধীনে সবকিছু শেয়ার্ড বলে ধরা নিরাপদ।
আধুনিক সিস্টেমে কন্ট্রোলারগুলি চিপসেটের ভিতরে থাকে আলাদা চিপ হিসেবে নয়, যা কারণ মাদারবোর্ডের পোর্ট লেআউট স্বেচ্ছাচারী মনে হতে পারে। প্রস্তুতকরকারী সিদ্ধান্ত নেয় কোন ফিজিক্যাল পোর্ট কোন কন্ট্রোলারে সংযুক্ত, এবং সেই গ্রুপিং কেসে কোথাও ছাপানো নেই। চারটি রিয়ার পোর্ট এক কন্ট্রোলারে ঝুলতে পারে যখন ফ্রন্ট-প্যানেল হেডার অন্যটিতে রুট হয়, কোনো ভিজ্যুয়াল ইঙ্গিত ছাড়াই। গ্রুপিং জানার একমাত্র নির্ভরযোগ্য উপায় হল সফটওয়্যারে এটি পরিদর্শন করা।
বাহ্যিক হাব ট্রিকে আরেক স্তর গভীরতা যোগ করে, কিন্তু নতুন বাস তৈরি করে না — এগুলি একই কন্ট্রোলারে ডাউনস্ট্রিম শাখা যোগ করে, এবং প্রতিটি হপ কিছুটা লেটেন্সি যোগ করে। ব্যবহারিক নিয়ম হল হাব আপনার সংযোগ বিকল্প বহুগুণ করে যখন একটি ব্যান্ডউইডথ বাজেট শেয়ার করে।
Windows Device Manager USB সংযোগগুলিকে Universal Serial Bus controllers এর অধীনে গ্রুপ করে। প্রতিটি USB Root Hub এন্ট্রি USB ট্রির একটি শাখা উপস্থাপন করে, কিন্তু মনে রাখবেন একটি হোস্ট কন্ট্রোলার একাধিক রুট হাব পরিচালনা করতে পারে এবং Device Manager সর্বদা সম্পূর্ণ ফিজিক্যাল কন্ট্রোলার গ্রুপিং প্রকাশ করে না। আরও নির্ভুল টপোলজি ভিউয়ের জন্য, USB Device Tree Viewer বা USBView এর মতো টুল প্রকৃত কন্ট্রোলার-টু-হাব-টু-ডিভাইস হায়ারার্কি দেখায়। macOS System Report-এ USB এর অধীনে একই তথ্য দেখায়, এবং Linux lsusb -t দিয়ে ট্রি প্রদর্শন করে।
একটি কংক্রিট উদাহরণ বিবেচনা করুন একটি মেইনস্ট্রিম কনজিউমার মাদারবোর্ড থেকে। এতে সাধারণত ২-৩টি USB কন্ট্রোলার থাকে: চিপসেটের নেটিভ USB 2.0 কন্ট্রোলার, একটি থার্ড-পার্টি USB 3.x কন্ট্রোলার (প্রায়শই ASMedia বা অনুরূপ), এবং সম্ভবত একটি থান্ডারবোল্ট কন্ট্রোলার যা USB-ও বহন করে। রিয়ার প্যানেল পোর্ট কন্ট্রোলার অনুযায়ী গ্রুপ করা, প্রজন্ম অনুযায়ী নয়। সঠিক ম্যাপিং প্রস্তুতকরকারী অনুযায়ী পরিবর্তিত হয় এবং অবশ্যই মাদারবোর্ড ম্যানুয়াল বা USB ট্রি টুলের বিপরীতে যাচাই করতে হবে।
এখন ওয়্যারিং কল্পনা করুন: একটি ওয়েবক্যাম রিয়ার USB 2.0 পোর্টে, একটি এক্সটার্নাল ড্রাইভ অন্য রিয়ার USB 2.0 পোর্টে, এবং একটি মাউস রিসিভার তৃতীয়টিতে। তিনটিই একই বাসে বসে আছে, প্রায় ২৮০ Mbps ক্ষমতার জন্য প্রতিযোগিতা করছে। ড্রাইভটি দ্বিতীয় কন্ট্রোলারের USB 3.0 পোর্টে সরান, এবং ক্যামেরার হঠাৎ USB 2.0 বাস একা পেল। টপোলজি, হার্ডওয়্যার নয়, বটলনেক ছিল।
সেটাই টপোলজি শেখার মূল বিন্দু: এটি এলোমেলো পোর্ট-সোয়াপিংকে একটি ইচ্ছাকৃত পরিকল্পনায় পরিণত করে।
যে ব্যান্ডউইডথ আসলে গুরুত্বপূর্ণ
ব্যান্ডউইডথ হল কনটেনশনের ভাষা, এবং দুটি সংখ্যা অন্য যেকোনোটির চেয়ে বেশি গুরুত্বপূর্ণ। একটি USB 2.0 বাস তাত্ত্বিকভাবে ৪৮০ Mbps রেটেড (USB-IF: USB 2.0 Specification, Section 5.7.6)। প্রোটোকল ওভারহেডের পরে, ব্যবহারিক সীমা সাধারণত ২৫০-২৮০ Mbps ব্যবহারযোগ্য থ্রুপুট (প্রায় ৩০-৩৫ MB/s) (USB-IF: USB 2.0 Specification; শিল্প পরিমাপে কমপ্লায়েন্ট কন্ট্রোলারে ~২৮০ Mbps সাস্টেইনড), কন্ট্রোলার এবং সিস্টেম লোডের উপর নির্ভর করে। একটি USB 3.0 বাস ৫ Gbps রেটেড, প্রায় দশ গুণ বেশি, ব্যবহারিক সীমা সাধারণত ৩০০-৪০০ MB/s কন্ট্রোলার এবং ক্যাবল কোয়ালিটির উপর নির্ভর করে। এককগুলি খেয়াল করুন: Mbps হল মেগাবিট প্রতি সেকেন্ড, MB/s হল মেগাবাইট প্রতি সেকেন্ড; ১ MB/s = ৮ Mbps।
এখন তুলনা করুন আপনার ডিভাইস আসলে কত খরচ করে। USB 2.0 বাসে একটি Logitech C920 ১০৮০p30 MJPEG-এ প্রায় ৩৫ Mbps সাস্টেইনড স্ট্রিম করে, অন্য ডিভাইসের জন্য প্রায় ২৪৫ Mbps অবশিষ্ট রাখে — এবং এটি আইসোক্রোনাস ট্রান্সফারে প্রোটোকল ওভারহেডের আগে:
- একটি ১০৮০p ওয়েবক্যাম ৩০ fps-এ MJPEG বা H.264 এর মতো কম্প্রেসড ফরম্যাটে সাধারণত ২০-৫০ Mbps স্ট্রিম করে, ক্যামেরার এনকোডিং কোয়ালিটির উপর নির্ভর করে (Logitech Support: C920 Specifications; OBSBOT: Tiny 4K Streaming Guide)। একই রেজোলিউশনে আনকম্প্রেসড YUY2 স্ট্রিম উল্লেখযোগ্যভাবে বেশি — প্রায়শই কয়েকশো Mbps বা তার বেশি।
- একটি এক্সটার্নাল SSD বড় ফাইল কপির সময় সাধারণত ১০০-৪০০ MB/s (মেগাবাইট প্রতি সেকেন্ড) ড্রাইভ এবং ইন্টারফেসের উপর নির্ভর করে; কিছু হাই-এন্ড ড্রাইভ এর চেয়ে বেশি।
- একটি প্রিন্টার ছোট, ভারী পালসে ডেটা বার্স্ট করে যখন একটি কাজ প্রিন্ট হয়।
- একটি মাউস, কিবোর্ড, বা ওয়্যারলেস রিসিভার নগণ্য কয়েক কিলোবিট প্রতি সেকেন্ড ব্যবহার করে।
অঙ্কটিই হল প্রকাশ। একটি ক্যামেরা এবং একটি এক্সটার্নাল ড্রাইভ একই USB 2.0 বাসে রাখুন, এবং ড্রাইভ একা সম্পূর্ণ ব্যবহারিক ব্যান্ডউইডথ খেয়ে ফেলতে পারে, ক্যামেরার জন্য প্রায় কিছুই না রেখে। একটি তৃতীয় সক্রিয় ডিভাইস যোগ করুন, এবং কন্ট্রোলার সবার অনুরোধ মেটাতে পারে না, তাই এটি পালা ক্রমে সার্ভিস করে। বাসের প্রতিটি ডিভাইস ফলস্বরূপ বিলম্ব অনুভব করে: ড্রাইভ ধীরে কপি করে, ক্যামেরা ফ্রেম ড্রপ করে, এবং মাউসও অনুত্তরদায়ী মনে হতে পারে কারণ এর ছোট পোলিং প্যাকেট বড় ট্রান্সফারের পিছনে সারিবদ্ধ হয়।
বাজেট কোথায় যায় তা বোঝা কাঁচা সংখ্যার চেয়ে বেশি গুরুত্বপূর্ণ। অনেক ক্যামেরা এবং অডিও ইন্টারফেস আইসোক্রোনাস ট্রান্সফার নেগোশিয়েট করে: তারা বাসের একটি পুনরাবৃত্তিমূলক স্লাইস আগে থেকেই সংরক্ষণ করে, অন্য সবার জন্য কম রেখে তাদের স্ট্রিম সুরক্ষিত করে। কিছু ডিভাইস বাল্ক ট্রান্সফার ব্যবহার করে, যা ভিন্নভাবে প্রতিযোগিতা করে — কিন্তু বাস ভিড় হলে ব্যবহারিক প্রভাব একই। যখন সংরক্ষিত স্লাইস এবং বার্স্ট ট্রান্সফার সেই সীমাকে অতিক্রম করে, কন্ট্রোলার best-effort ট্রান্সফার পাতলা করে এবং সবচেয়ে খারাপ ক্ষেত্রে সংরক্ষণ ব্যর্থ করে — যা ঠিক সেই সময় ক্যামেরা ফ্রেম ড্রপ শুরু করে।
সংখ্যাগুলি কেন USB 3.0 সবকিছুর সমাধান মনে হয় তাও ব্যাখ্যা করে। এর ব্যবহারিক সীমা একটি মাত্রার ক্রমে বড় — ৫ Gbps তাত্ত্বিক (USB-IF: USB 3.0 Specification, Section 5.6.6) সাধারণ রিয়েল-ওয়ার্ল্ড সীমা প্রায় ৩০০-৪০০ MB/s (Samsung T7 Portable SSD) — তাই দুই বা তিনটি ভারী ডিভাইস একটি ৫ Gbps বাসে নির্ণয়যোগ্য কনটেনশন ছাড়া সহাবস্থান করতে পারে। কিন্তু একই লজিক ঊর্ধ্বমুখী স্কেল করে: কয়েকটি ড্রাইভ সমান্তরালে লেখার সময় একটি USB 3.0 বাসও স্যাচুরেট করতে পারে। কনটেনশন চাহিদা অনুসরণ করে, পোর্টের লেবেল নয়।

USB সম্পর্কে চারটি মিথ
USB ব্যান্ডউইডথ সম্পর্কে চারটি বিশ্বাস বন্যপ্রাণীতে বেশিরভাগ মিসকনফিগারেশন সৃষ্টি করে। প্রতিটি যুক্তিযুক্ত শোনায়, প্রতিটি ফোরামে পুনরাবৃত্তি হয়, এবং প্রতিটি একই ভুল উপসংহারে নির্দেশ করে: লেআউট দোষী হলে ডিভাইসকে দোষ দিন।
মিথ এক: “USB 3.0 এবং 2.0 স্বাধীন।” এগুলি electrically আলাদা, হ্যাঁ — কিন্তু শুধু মাদারবোর্ডে। জটিলতা হল হাব। USB 2.0 ডিভাইসকে USB 3.0 হাবে প্লাগ করুন। একটি কমপ্লায়েন্ট হাবে আলাদা USB 2.0 এবং SuperSpeed পথ আছে, তাই আপনার 2.0 ডিভাইস USB 2.0 পথে High-Speed 480 Mbps-এ চলে (USB-IF: USB 2.0 Specification)। কিন্তু কিছু পুরোনো হাব ডিভাইসকে Full-Speed 12 Mbps-এ নেগোশিয়েট করে (USB-IF: USB 2.0 Specification, Section 5.4.4) — কোনো সতর্কতা নেই, কোনো এরর নেই, থ্রুপুটে দশগুণ বা তার বেশি পতন কোনো এরর বা সতর্কতা ছাড়াই। Device Manager-এ নেগোশিয়েটেড স্পিড সর্বদা যাচাই করুন।
মিথ দুই: “বেশি পোর্ট, বেশি ব্যান্ডউইডথ।” হাব যোগ করা বা অবশিষ্ট পোর্টে ডিভাইস প্লাগ করা থ্রুপুট তৈরি করে না। একটি কন্ট্রোলারে ছয়টি পোর্ট সহ একটি রিয়ার প্যানেল সেই কন্ট্রোলারের একটি পোর্টের মতোই একই মোট ব্যান্ডউইডথ অফার করে। বেশি পোর্ট হল সুবিধা, ব্যান্ডউইডথ কখনও নয়। একটি আট-পোর্ট USB 2.0 হাব এর সব পোর্টে একসাথে প্রায় ২৮০ Mbps ডেলিভার করে — হাব একটি প্রতি-পোর্ট বাজেট নয়, একটি আপস্ট্রিম লিংকে অ্যাক্সেস সমন্বয় করে।
মিথ তিন: “ওয়্যারলেস রিসিভারের জন্য USB 3.0 দরকার।” একটি মাউস বা কিবোর্ড রিসিভার কয়েক কিলোবিট প্রতি সেকেন্ড প্রেরণ করে — একটি USB 2.0 পোর্ট এক হাজার গুণ বেশি যথেষ্ট। আসল শত্রু হল RF ইন্টারফেরেন্স। USB 3.0 সিগন্যালিং প্রায় ২ থেকে ২.৮ GHz জুড়ে রেডিও নয়েজ তৈরি করে (Logitech Support: USB 3.0 Interference Guide, 2013; Intel: USB 3.x Interference Whitepaper, 2015), যা আপনার রিসিভার ব্যবহার করা 2.4 GHz ব্যান্ডের সাথে ওভারল্যাপ করে। এটি USB 3.0 পোর্টের পাশে প্লাগ করুন এবং অ্যান্টেনা রেডিও নয়েজের জোনে বসে। বাক্সের এক্সটেনশন ক্যাবল সহ একটি সরাসরি USB 2.0 পোর্ট ব্যবহার করুন — এটি একা প্রায়শই পুনরাবৃত্তিমূলক মাউস স্টাটারিং সমাধান করে।
মিথ চার: “ব্যান্ডউইডথ কনটেনশন বিরল।” এটি USB ডিভাইস সমস্যার সবচেয়ে উপেক্ষিত কারণগুলির একটি, ঠিক কারণ এটি অদৃশ্য। ডিভাইস কদাচিৎ ঘোষণা করে যে তারা স্টার্ভড। তারা ফ্রেম ড্রপ করে, ক্র্যাকল করে, স্টাটার করে, বা ইন্টারমিটেন্টলি ডিসকানেক্ট হয় — এবং প্রতিটি লক্ষণ ডিভাইস নিজেকে দোষ দেওয়া হয়। ফলাফল হল RMA’d ওয়েবক্যাম, অডিও ইন্টারফেস, এবং ড্রাইভের একটি গ্রেভইয়ার্ড যা ভিন্ন পোর্ট লেআউটে নিখুঁত কাজ করতে পারে। কনটেনশনকে ইন্টারমিটেন্ট USB ব্যর্থতার জন্য প্রথমে যাচাই করার একটি প্রধান প্রার্থী হিসেবে বিবেচনা করুন — কিন্তু একমাত্র সম্ভাব্য কারণ নয়।
ল্যাপটপ বা ডেস্কটপ? ভিন্ন সমস্যা
ল্যাপটপ এবং ডেস্কটপ ভিন্নভাবে ব্যর্থ হয়, এবং টপোলজি এর কারণ ব্যাখ্যা করে।
ল্যাপটপে সবকিছুর জন্য এক থেকে তিনটি কন্ট্রোলার থাকে: সব USB পোর্ট, বিল্ট-ইন ওয়েবক্যাম, ফিঙ্গারপ্রিন্ট রিডার, এবং প্রায়শই ইন্টার্নাল ব্লুটুথ। আপনি যা প্লাগ করেন তা অন্যান্য পেরিফেরাল এবং বিল্ট-ইন হার্ডওয়্যার উভয়ের সাথে একই বাসে প্রতিযোগিতা করে। ল্যাপটপ ক্রমে থান্ডারবোল্ট এবং USB কে এক কন্ট্রোলারে একত্রিত করছে, তাই ডক যা ডিসপ্লে, ড্রাইভ এবং পেরিফেরাল বহন করে তা সব এক বাসে চলে। আগ্রাসী BIOS পাওয়ার ম্যানেজমেন্ট ব্যাটারি বাঁচাতে কন্ট্রোলার আইডল বা ডিসেবল করতে পারে, এমন ডিভাইস তৈরি করে যা সতর্ক ছাড়া অদৃশ্য হয় এবং পুনরায় আবির্ভূত হয়।
ডেস্কটপে সাধারণত বেশি কন্ট্রোলার — দুই থেকে চারটি — যা একটি সুবিধা। লেআউট, তবে, প্রায়শই অনেক রিয়ার পোর্ট এক কন্ট্রোলারে গোষ্ঠীবদ্ধ করে, এবং এক হাব চেইন ডজন ডিভাইসকে এক বাসে নিয়ে যেতে পারে। ডেস্কটপের সাধারণ সমস্যা কন্ট্রোলারের অভাব নয় বরং খারাপ পোর্ট বরাদ্দ: ভারী ডিভাইস অন্য সবার সাথে একই বাসে চলে যায়।
ল্যাপটপে অগ্রাধিকার দিয়ে সমাধান করুন: কোন ডিভাইসগুলি দুর্লভ ব্যান্ডউইডথ পাবে তা ঠিক করুন, এবং বাকিগুলি ডকের USB 2.0 পোর্ট বা পাওয়ার্ড হাবে সরিয়ে দিন। ডেস্কটপে ছড়িয়ে দিয়ে সমাধান করুন: কোন রিয়ার এবং ফ্রন্ট পোর্ট কোন কন্ট্রোলারে তা ম্যাপ করুন, তারপর ভারী ডিভাইস সব কন্ট্রোলারে ছড়িয়ে দিন।
লক্ষণ নির্ণয় টেবিল
প্রতিটি লক্ষণ নিচে তার সবচেয়ে সম্ভাব্য কারণের দিকে নির্দেশ করে, একটি হতাশাজনক অনুমানকে যাচাইযোগ্য হাইপোথিসিসে পরিণত করে।
- ক্যামেরা ফ্রেম ড্রপ — শেয়ার্ড কন্ট্রোলারে ব্যান্ডউইডথ স্যাচুরেশন। স্ট্রিমিং ক্যামেরা হল ক্লাসিক ক্যানারি: এটি ক্রমাগত ব্যান্ডউইডথ খরচ করে, তাই বাসে অন্য কিছু চাইলে এটিই প্রথম দৃশ্যমান ব্যর্থতা। অন্য ডিভাইসগুলি আনপ্লাগ করুন এবং ক্যামেরা তৎক্ষণাৎ পুনরুদ্ধার হয়। এটিও এর কারণ যে একটি ওয়েবক্যাম রিয়েল-স্ট্রিম টেস্ট একটি পরিষ্কার স্থানীয় প্রিভিউ দেখাতে পারে যখন এনকোডেড স্ট্রিমটি অবনমিত হয় — বাস এনকোডার চলার আগেই ক্যামেরাকে অনাহারী করতে পারে।
- অডিও ক্র্যাকলিং — শেয়ার্ড হাবে ব্যান্ডউইডথ বা পাওয়ার সমস্যা। অডিও ইন্টারফেস লেটেন্সি-সংবেদনশীল। বাস স্যাচুরেটেড হলে তাদের নির্ধারিত ট্রান্সফার দেরিতে আসে, এবং বিলম্ব ক্লিক ও ক্র্যাকল হিসেবে দেখা দেয়। লক্ষণটি সাধারণত শুধু তখন দেখা দেয় যখন একটি দ্বিতীয় ডিভাইস সক্রিয়ভাবে ট্রান্সফার করছে।
- MIDI কন্ট্রোলার বিচ্ছিন্ন — স্যাচুরেটেড বাসে লেটেন্সি সংবেদনশীলতা। MIDI কম-লেটেন্সি ডেলিভারির উপর নির্ভর করে। কন্ট্রোলারের ট্রান্সফার স্লট স্টার্ভ হলে হোস্ট ডিভাইসকে অসাড় মনে করে সংযোগ বিচ্ছিন্ন করে। রিপ্লাগিং পরবর্তী কনটেনশন ইভেন্ট পর্যন্ত এটি পুনরুদ্ধার করে।
- ওয়্যারলেস রিসিভার স্টাটারিং — USB 3.0 থেকে RF ইন্টারফেরেন্স, বা ব্যান্ডউইডথ কনটেনশন। রিসিভার USB 3.0 পোর্টের পাশে থাকলে প্রথমে RF সন্দেহ করুন। আইডলে কাজ করে কিন্তু লোডে স্টাটার করে তবে বাস সন্দেহ করুন।
- এক্সটার্নাল ড্রাইভ ধীর কপি — অন্য সক্রিয় ডিভাইসের সাথে ব্যান্ডউইডথ শেয়ারিং। একই বাসে ক্যামেরা বা দ্বিতীয় ড্রাইভ সক্রিয় থাকলে ড্রাইভ থ্রুপুট ধসে যায়। একই ড্রাইভ আইডল বাসে তৎক্ষণাৎ পূর্ণ স্পিডে ফিরে যায়।
- ইন্টারমিটেন্ট ডিসকানেক্ট — পাওয়ার বা ব্যান্ডউইডথ থ্রেশহোল্ড অতিক্রান্ত। ডিসকানেক্ট অন্য ডিভাইস ব্যস্ত থাকার সাথে ট্র্যাক করে তবে কারণ ব্যান্ডউইডথ। আরও ডিভাইস যোগ করলে হয় তবে কারণ পাওয়ার।
দ্রুততম নির্ণয় হল লোড পরিবর্তন করা। একটি ডিভাইস যা অন্য সব আনপ্লাগ করলে নিখুঁত কাজ করে, এবং বাস ব্যস্ত হলেই সমস্যা করে, তা কনটেনশনের শিকার। সেই একক পর্যবেক্ষণ মিনিটের মধ্যে হার্ডওয়্যার ত্রুটি এবং লেআউট ত্রুটি আলাদা করে।
ম্যাপ করুন। আলাদা করুন। টেস্ট করুন।
একবার আপনি আপনার কন্ট্রোলার ম্যাপ করে লক্ষণ নিশ্চিত করলে, সমাধান হল একটি ইচ্ছাকৃত পুনঃসংযোগ। একটি সাধারণ উদাহরণ: একটি অডিও ইন্টারফেস ক্র্যাকল করে যখনই প্রিন্টার চলে কারণ উভয় একই USB 2.0 বাস শেয়ার করে। এই ক্রমানুসারে কাজ করলে সাধারণত দশ মিনিটে সমাধান হয়:
- কন্ট্রোলার চিহ্নিত করুন। Device Manager খুলুন এবং Universal Serial Bus controllers প্রসারিত করুন। মনে রাখবেন প্রতিটি USB Root Hub হল USB ট্রির একটি শাখা, আলাদা কন্ট্রোলার নয়; একটি হোস্ট কন্ট্রোলার একাধিক রুট হাব পরিচালনা করতে পারে। সবচেয়ে নির্ভুল কন্ট্রোলার-টু-ডিভাইস ম্যাপিংয়ের জন্য USB Device Tree Viewer বা USBView এর মতো টুল ব্যবহার করুন।
- ব্যান্ডউইডথ-ভারী ডিভাইস আলাদা কন্ট্রোলারে রাখুন। ক্যামেরা এক কন্ট্রোলারে এবং এক্সটার্নাল ড্রাইভ অন্যটিতে রাখুন। ডেস্কটপে এর সাধারণত মানে ক্যামেরার জন্য রিয়ার কন্ট্রোলার এবং ড্রাইভের জন্য ফ্রন্ট-প্যানেল হেডার — প্রায়শই একটি ভিন্ন কন্ট্রোলার।
- গুরুত্বপূর্ণ ডিভাইসের জন্য সরাসরি মাদারবোর্ড পোর্ট ব্যবহার করুন। গেমিং মাউস, অডিও ইন্টারফেস, বা MIDI কন্ট্রোলারের জন্য, হাব এবং ফ্রন্ট প্যানেল এড়িয়ে যান। সরাসরি রিয়ার I/O-তে সবচেয়ে ছোট ক্যাবল দিয়ে প্লাগ করুন যা পৌঁছায়।
- পাওয়ার-হাঙ্গ্রি ডিভাইসের জন্য পাওয়ার্ড হাব, ব্যান্ডউইডথের জন্য নয়। পাওয়ার্ড হাব এমন ডিভাইস স্থিতিশীল করে যা অপর্যাপ্ত পাওয়ারে ড্রপ আউট হয়, কিন্তু এটি কোনো থ্রুপুট যোগ করে না। ভারী ডিভাইস সরাসরি পোর্টে; পাওয়ার-হাঙ্গ্রি অ্যাক্সেসরিজ হাবে।
- ওয়্যারলেস রিসিভার USB 3.0 থেকে দূরে রাখুন। রিয়ার USB 2.0 পোর্ট ব্যবহার করুন, বা রিসিভারের এক্সটেনশন ক্যাবল, যাতে অ্যান্টেনা USB 3.0 নয়েজ থেকে দূরে থাকে।
- প্রতিটি পরিবর্তনের পরে লোডে পুনরায় টেস্ট করুন। একই সাথে একটি ক্যামেরা স্ট্রিম এবং একটি ড্রাইভ কপি শুরু করুন। লেআউট সঠিক যখন কোনোটিই ডিগ্রেড করে না।

পুনঃসংযোগে কোনো খরচ নেই এবং এটি কনটেনশনের অনেক ক্ষেত্রে সমাধান করতে পারে। লেআউট সঠিক হওয়ার পরেও লক্ষণ থেকে গেলে, তখনই ডিভাইস নিজেই যাচাই পাওয়ার ডেলিভারি, ক্যাবল কোয়ালিটি, এবং ড্রাইভার সেটিংস সহ যাচাই করার যোগ্য।
ব্রাউজার একটি টপোলজি টুল নয়
ব্রাউজারের USB-সম্পর্কিত API-গুলির মধ্যে, WebHID হল এই সাইট যেটি ব্যবহার করে; এটি স্পষ্ট ব্যবহারকারী অনুমতি পাওয়ার পর কিবোর্ড, মাউস, এবং গেম কন্ট্রোলারের মতো সংযুক্ত HID ডিভাইস চিহ্নিত করতে পারে। (WebUSB এর মতো অন্যান্য ব্রাউজার API নন-HID পেরিফেরাল হ্যান্ডেল করে, কিন্তু স্টোরেজ ডিভাইস এবং বেশিরভাগ ক্যামেরা এখনও কোনো ব্রাউজার API-এ নিজেদের প্রকাশ করে না।) এটি বেসিক ডিভাইস তথ্য যেমন ভেন্ডর এবং প্রোডাক্ট ID প্রকাশ করতে পারে, কিন্তু এটি সম্পূর্ণ USB কন্ট্রোলার টপোলজি, প্রতি-ডিভাইস ব্যান্ডউইডথ ব্যবহার, বা কন্ট্রোলার-টু-হাব-টু-ডিভাইস হায়ারার্কি দেখায় না। WebHID-এর প্রতি-ডিভাইস অনুমতি প্রয়োজন এবং অনেক পেরিফেরাল — স্টোরেজ ডিভাইস এবং বেশিরভাগ ক্যামেরা সহ — ব্রাউজারে একেবারে নিজেদের প্রকাশ করে না। USB device info টুল WebHID ব্যবহার করে কোন HID ডিভাইস সংযুক্ত এবং এর ভেন্ডর ও প্রোডাক্ট ID দেখায়; এটি একটি ডিভাইস শনাক্তকরণ সহায়ক, টপোলজি অ্যানালাইজার নয়।
সম্পূর্ণ টপোলজি ম্যাপিংয়ের জন্য, USB Device Tree Viewer (Windows), USBView, বা system_profiler SPUSBDataType (macOS) ব্যবহার করুন। এই সিস্টেম টুলগুলি প্রকৃত কন্ট্রোলার-টু-রুট-হাব-টু-হাব-টু-ডিভাইস ট্রি দেখায় এবং কোন ডিভাইসগুলি একটি বাস শেয়ার করে তা চিহ্নিত করতে সাহায্য করতে পারে।
সিস্টেম টুল ভিউকে Device Manager এর সাথে কন্ট্রোলার ম্যাপিংয়ের জন্য এবং HWiNFO এর সাথে প্রতি-ডিভাইস থ্রুপুটের জন্য যুক্ত করুন। সিস্টেম টুলগুলি উত্তর দেয় এটি কীভাবে সংযুক্ত এবং কতটা কঠোর কাজ করছে — আপনি আনপ্লাগ করার আগে একটি কনটেনশন নির্ণয় নিশ্চিত করে।
উপসংহার
USB শেয়ার্ড, ডেডিকেটেড নয়। আপনার কম্পিউটারের প্রতিটি পোর্ট হল একটি নির্দিষ্ট ব্যান্ডউইডথ সহ একটি বাসে দরজা, এবং সেই বাসে প্লাগ করা প্রতিটি ডিভাইস নিজেদের মধ্যে ক্ষমতা ভাগ করে। যখন ডিভাইস একসাথে ধীর হয়, তারা প্রায়শই ত্রুটিপূর্ণ নয় — তারা সম্ভবত কনটেন্ড করছে।
সমাধান প্রায়শই নতুন হার্ডওয়্যার নয় — এবং কখনো, পাল্টা-স্বজ্ঞাতভাবে, সেরা পদক্ষেপ হল আনপ্লাগ করা, যোগ করা নয়। একটি প্রায়শই রিপোর্ট করা উদাহরণ: একটি Logitech C920 ওয়েবক্যাম যা ফ্রেম ড্রপ করছিল তা একটি ফ্ল্যাশ ড্রাইভ আনপ্লাগ করায় ঠিক হয়েছিল যা এর কন্ট্রোলার শেয়ার করত। পাল্টা-স্বজ্ঞাত, কিন্তু সম্ভব: দ্রুততম USB সেটআপে প্রায়শই প্রতিটি বাসে কম ডিভাইস থাকে, বেশি নয়। আপনার টপোলজি ম্যাপ করুন, ব্যান্ডউইডথ-ভারী ডিভাইস ভিন্ন কন্ট্রোলারে আলাদা করুন, গুরুত্বপূর্ণ পেরিফেরাল সরাসরি মাদারবোর্ড পোর্টে রাখুন, এবং ওয়্যারলেস রিসিভারকে একটি পরিষ্কার USB 2.0 সংযোগ দিন। তারপর আসল সংযোগ পথ টেস্ট করুন: একই সাথে একটি ক্যামেরা স্ট্রিম এবং একটি ড্রাইভ কপি চালান এবং দেখুন কী ভেঙে যায়। যে লেআউট সেই টেস্টে টিকে তা রাখার মতো লেআউট।