এই ব্লগ পোস্টে, আমরা বিশ্লেষণ করব কিভাবে NVOD এবং RVOD পদ্ধতিগুলি VOD পরিষেবাগুলিতে ব্যবহারকারীর অভিজ্ঞতা এবং নেটওয়ার্ক দক্ষতাকে প্রভাবিত করে।
ভিডিও অন ডিমান্ড (VOD) বলতে এমন একটি পরিষেবা বোঝায় যেখানে একটি সার্ভার ব্যবহারকারীর অনুরোধের প্রতিক্রিয়ায় রিয়েল টাইমে একটি নেটওয়ার্কের মাধ্যমে ভিডিও সামগ্রী প্রেরণ করে এবং একই সাথে এটি রিসিভিং এন্ডে প্লে করে। এই পরিষেবাগুলি ঐতিহ্যবাহী সম্প্রচার ব্যবস্থা থেকে আলাদা যে তারা ব্যবহারকারীদের যখন ইচ্ছা তখন তাদের পছন্দের সামগ্রী অ্যাক্সেস করার অনুমতি দেয়। VOD এর নমনীয়তা এটিকে অনেক ব্যবহারকারীর জন্য পছন্দের পদ্ধতিতে পরিণত করেছে এবং এর ফলে বিভিন্ন পরিষেবা মডেলের বিকাশ ঘটেছে।
যখন বিষয়বস্তু রিয়েল টাইমে বিতরণ করা হয়, তখন এটি গুরুত্বপূর্ণ যে ডেটা একটি গ্রহণযোগ্য সময়সীমার মধ্যে বিতরণ করা হয়, তাই এটি একটি ওভার-দ্য-এয়ার সম্প্রচারের মতো নেটওয়ার্কে ডেটা ছড়িয়ে দেওয়ার রূপ নেয়৷ এই কারণেই রিয়েল-টাইম স্ট্রিমিং গুরুত্বপূর্ণ, কারণ ব্যবহারকারীদের কোনো বাধা ছাড়াই ভিডিও সামগ্রী দেখতে সক্ষম হতে হবে। বিষয়বস্তুর ডেলিভারি সফ্টওয়্যার-সংজ্ঞায়িত চ্যানেলের মাধ্যমে ঘটে, যা হাইওয়েতে লেনের মতো মসৃণভাবে ডেটা প্রবাহে সহায়তা করে। একটি চ্যানেল বিষয়বস্তু ডেটার ব্লকগুলির জন্য একটি আউটলেট হিসাবে কাজ করে এবং এটির আকার একটি "ব্যান্ড" দ্বারা প্রতিনিধিত্ব করা হয়, যা এটি সময়ের প্রতি ইউনিটে যে পরিমাণ ডেটা প্রেরণ করে। যত বেশি ডেটা প্রেরণ করা হবে, ব্যান্ডউইথের প্রয়োজন তত বেশি, যা উচ্চ-মানের ভিডিও সরবরাহের জন্য অপরিহার্য।
অন্যদিকে, একটি সার্ভার যে ব্যান্ডের আকার বা সর্বোচ্চ ট্রান্সমিশন ক্ষমতাকে মিটমাট করতে পারে, তাকে "ব্যান্ডউইথ" বলা হয় এবং প্রতি সেকেন্ডে বিটে প্রকাশ করা হয়। ব্যান্ডউইথ যত বেশি হবে, তত বেশি ব্যবহারকারীদের একই সময়ে উচ্চ মানের ভিডিও পরিবেশন করা যাবে। যাইহোক, ব্যান্ডউইথ অসীম নয়, এবং পরিষেবা প্রদানকারীদের এই সংস্থানটি দক্ষতার সাথে পরিচালনা করতে হবে। নেটওয়ার্ক অবকাঠামোর অগ্রগতি এর জন্য অপরিহার্য, এবং পরবর্তী প্রজন্মের নেটওয়ার্ক প্রযুক্তি যেমন 5G VOD পরিষেবার মান উন্নত করতে গুরুত্বপূর্ণ ভূমিকা পালন করবে বলে আশা করা হচ্ছে।
VOD-এর বিভিন্ন পদ্ধতির মধ্যে, প্রতিটি ব্যবহারকারীর অনুরোধের জন্য একটি পৃথক চ্যানেল তৈরি করে এমন পদ্ধতিকে RVOD (রিয়েল VOD) বলা হয়। যেহেতু প্রতিটি ট্রান্সমিশন চ্যানেল প্রতিটি ব্যবহারকারীর থেকে স্বাধীন, ব্যবহারকারীরা সরাসরি 'পজ' এবং 'ফাস্ট ফরোয়ার্ড'-এর মতো রিয়েল-টাইম ট্রান্সমিশন নিয়ন্ত্রণ নিয়ন্ত্রণ করতে পারেন, যা ব্যবহারকারীদের জন্য তুলনামূলকভাবে সুবিধাজনক এবং সীমিত ব্যান্ডউইথের সাথেও বিভিন্ন বিষয়বস্তুর একযোগে পরিষেবা সক্ষম করে। RVOD-এর সবচেয়ে বড় সুবিধা হল ব্যবহারকারীর অভিজ্ঞতা অপ্টিমাইজ করার ক্ষমতা। ব্যবহারকারীরা তাদের পছন্দের মুহূর্তে অবাধে তাদের পছন্দের বিষয়বস্তু ম্যানিপুলেট করতে পারেন, যা ব্যক্তিগতকৃত পরিষেবা প্রদানের মূল চাবিকাঠি। তবে, সার্ভারের যে পরিমাণ ডেটা প্রেরণ করতে হয় তা সমসাময়িক ব্যবহারকারীর সংখ্যার অনুপাতে বৃদ্ধি পায়, তাই ব্যান্ডউইথ সীমিত থাকলে একই সময়ে কতজন ব্যবহারকারী সংযোগ করতে পারবেন তার একটি সীমা রয়েছে। এটি পিক আওয়ারে পরিষেবার মান হ্রাস করার সম্ভাবনা রাখে, যা কাটিয়ে উঠতে একটি প্রযুক্তিগত সমাধান প্রয়োজন।
এই ত্রুটি দূর করার জন্য প্রস্তাবিত নিয়ার ভিওডি (NVOD) হল একটি নির্দিষ্ট সময়ের মধ্যে প্রাপ্ত পরিষেবা অনুরোধগুলিকে একত্রিত করার এবং এমন একটি পদ্ধতির মাধ্যমে পরিষেবা প্রদানের একটি পদ্ধতি যেখানে একাধিক প্রাপক একই সাথে একটি চ্যানেলের সাথে সংযুক্ত থাকে। যেহেতু NVOD-এর একটি চ্যানেলের জন্য একযোগে গ্রাহকের সংখ্যা নির্বিশেষে একটি নির্দিষ্ট ব্যান্ডউইথের প্রয়োজন হয়, তাই এটি একযোগে ব্যবহারকারীর সংখ্যার সীমাবদ্ধতা অতিক্রম করতে পারে, তবে পরিষেবা গ্রহণের জন্য ব্যবহারকারীদের একটি নির্দিষ্ট সময়ের জন্য অপেক্ষা করতে হওয়া অসুবিধাজনক। এটি ঐতিহ্যবাহী সম্প্রচারের ধারণার অনুরূপ, যেখানে সম্প্রচারের সময় নির্ধারণ করা হয় এবং দর্শকদের সেই সময়ে টিউন ইন করতে হয়। পরিষেবা প্রদানকারীর দৃষ্টিকোণ থেকে, পরিষেবা অনুরোধ বাতিল না করে একজন ব্যবহারকারী যে পরিমাণ অপেক্ষার সময় সহ্য করতে পারেন তাকে "সহনীয় বিলম্ব" বলা হয় এবং এটি ভিওডির মান নির্ধারণের ক্ষেত্রে একটি গুরুত্বপূর্ণ বিষয়। সহনীয় বিলম্ব কমানো হল এনভিওডির সাফল্য নির্ধারণকারী মূল বিষয়গুলির মধ্যে একটি এবং এর জন্য একটি দক্ষ সময়সূচী অ্যালগরিদম অপরিহার্য।
"টাইম-স্লাইসড এনভিওডি" হল ল্যাটেন্সি কমানোর একটি উপায় যার মাধ্যমে একই কন্টেন্ট বারবার একাধিক চ্যানেলে পর্যায়ক্রমে বিতরণ করা হয়। লক্ষ্য হল অনুরোধের সময় পরে ব্যবহারকারীকে সর্বনিম্ন ল্যাটেন্সি সহ চ্যানেলে শুনতে দিয়ে অপেক্ষা কমানো। অনুরোধের সময় পরে ব্যবহারকারী সর্বনিম্ন ল্যাটেন্সি সহ চ্যানেলে শোনেন এবং ডেটা ব্লকের শুরু থেকে সেই চ্যানেলে ট্রান্সমিশন পুনরায় শুরু হলে শুনতে শুরু করেন। ল্যাটেন্সি সার্ভারে চ্যানেলের সংখ্যা এবং কন্টেন্টের দৈর্ঘ্য দ্বারা নির্ধারিত হয়: যদি 120 মিনিটের একটি সিনেমা 12 মিনিটের ব্যবধানে 10টি চ্যানেলে বিতরণ করা হয়, তাহলে ল্যাটেন্সি 10 মিনিটের কম হবে। ল্যাটেন্সি কমাতে, প্রচুর সংখ্যক চ্যানেলের প্রয়োজন হয়, যেমন 120টি চ্যানেল যাতে এটি 1 মিনিটের কম হয়। এই পদ্ধতির মাধ্যমে, ল্যাটেন্সি সরাসরি চ্যানেলের সংখ্যা দ্বারা প্রভাবিত হয়, তাই পরিষেবা প্রদানকারীর অবকাঠামোর খরচ একটি গুরুত্বপূর্ণ পরিবর্তনশীল হয়ে ওঠে।
ডেটা-স্প্লিট NVOD কন্টেন্টকে একাধিক ডেটা ব্লকে ভাগ করে এবং প্রতিটি আলাদাভাবে একাধিক চ্যানেলে ট্রান্সমিট করে ল্যাটেন্সি নিয়ন্ত্রণ করে। এই পদ্ধতিটি ডেলিভারি দক্ষতা বৃদ্ধির জন্য ডিজাইন করা হয়েছে এবং ঐতিহ্যবাহী টাইম-স্লাইসিংয়ের জন্য একটি ভিন্ন পদ্ধতি প্রদান করে। প্রথম ব্লকটিকে যুক্তিসঙ্গত আকারে তৈরি করে, সম্পূর্ণ কন্টেন্টকে এমনভাবে ভাগ করা হয় যাতে ব্লকের সংখ্যা উপলব্ধ চ্যানেলের সংখ্যার সমান হয়, পরবর্তী ব্লকগুলি ক্রমান্বয়ে আকারে দ্বিগুণ হয়। প্রতিটি চ্যানেল একই সময়ে ক্রমানুসারে তার বরাদ্দকৃত ব্লকগুলি প্রেরণ শুরু করে এবং প্রতিটি ব্লকের আকারের উপর ভিত্তি করে পর্যায়ক্রমে ট্রান্সমিশন পুনরাবৃত্তি করে। রিসিভিং এন্ড অনুরোধের সময় প্রথম ব্লক থেকে শুরু করে ক্রমানুসারে কন্টেন্ট গ্রহণ করে এবং যখন এটি একটি ব্লক গ্রহণ শেষ করে, তখন এটি স্বয়ংক্রিয়ভাবে সেই চ্যানেলে স্যুইচ করে যেখানে পরবর্তী ব্লকটি ট্রান্সমিট করা হচ্ছে এবং ব্লকের শুরু থেকে এটি গ্রহণ করে। যাইহোক, চ্যানেলের ব্যান্ডউইথ কন্টেন্ট চালানোর জন্য প্রয়োজনীয় পরিমাণের কমপক্ষে দ্বিগুণ হতে হবে, যাতে ইতিমধ্যে প্রাপ্ত অংশটি চালানোর সময় পরবর্তী ব্লকের রিসেপশন নিশ্চিত করা হয় এবং ক্রমাগত প্লেব্যাক সম্ভব হয়।
এই পদ্ধতিটি ল্যাটেন্সি কমায় কারণ প্রথম ব্লকের আকার তুলনামূলকভাবে ছোট। পূর্ববর্তী উদাহরণে, যদি 120টি চ্যানেলে 6x গতিতে 2 মিনিটের কন্টেন্ট পরিবেশন করা হয়, তাহলে ল্যাটেন্সি 1 মিনিটেরও কম হয়। এটি ব্যবহারকারীর সন্তুষ্টির জন্য একটি গুরুত্বপূর্ণ বিষয় হতে পারে এবং প্রকৃতপক্ষে, ল্যাটেন্সি-সংবেদনশীল ব্যবহারকারীদের দ্বারা এই পদ্ধতিটি আরও ইতিবাচকভাবে গ্রহণ করা যেতে পারে। এটি টাইম-স্লাইসিং পদ্ধতির তুলনায় একই পরিমাণ ব্যান্ডউইথ দখল করে 90% এরও বেশি ল্যাটেন্সি কমাতে পারে এবং ল্যাটেন্সির তুলনায় ব্যবহৃত চ্যানেলের সংখ্যা কমিয়ে একক সার্ভারে একসাথে পরিবেশন করা যেতে পারে এমন কন্টেন্টের পরিমাণ বৃদ্ধি করা যেতে পারে। যাইহোক, যেহেতু সম্পূর্ণ কন্টেন্টের ট্রান্সমিশন সময় কন্টেন্টের মোট প্লেব্যাক সময়ের অর্ধেকেরও কম, তাই প্রতিটি চ্যানেলকে ট্রান্সমিশন ক্ষমতার দ্বিগুণেরও বেশি বজায় রাখতে হবে এবং রিসিভিং এন্ডে কন্টেন্টের অর্ধেকের জন্য ডেটা সংরক্ষণ করার জন্য পর্যাপ্ত জায়গা থাকতে হবে।
NVOD সাধারণত ল্যাটেন্সি নিয়ন্ত্রণের জন্য একাধিক চ্যানেল ব্যবহার করে, তাই পরিষেবার জন্য সর্বদা একটি নির্দিষ্ট পরিমাণ ব্যান্ডউইথ উপলব্ধ থাকে। একটি NVOD সিস্টেম ডিজাইন করার সময় এটি একটি গুরুত্বপূর্ণ বিবেচনা, এবং নেটওয়ার্ক অবকাঠামোর স্কেলেবিলিটি এবং নির্ভরযোগ্যতা গুরুত্বপূর্ণ। অতএব, যখন প্রতি কন্টেন্টে সমসাময়িক ব্যবহারকারীর সংখ্যা কম থাকে তখন এটি খুব কার্যকর হয় না। এমনকি একজন একক ব্যবহারকারীর চরম ক্ষেত্রেও, উপরের উদাহরণে ছয়টি চ্যানেলের জন্য প্রয়োজনীয় ব্যান্ডউইথ দখল করা হবে, যার ফলে নেটওয়ার্ক সংস্থানগুলির উল্লেখযোগ্য অপচয় হবে। এর ক্ষতিপূরণ দেওয়ার জন্য, বিষয়বস্তুর প্রকৃতির উপর নির্ভর করে বিভিন্ন NVOD পদ্ধতি নির্বাচন করা প্রয়োজন হতে পারে, অথবা এমন একটি সিস্টেম চালু করা যেতে পারে যা ব্যবহারকারীর প্যাটার্ন বিশ্লেষণ করে স্বয়ংক্রিয়ভাবে সবচেয়ে উপযুক্ত ডেলিভারি পদ্ধতি নির্বাচন করে। এই ধরনের একটি সিস্টেম দক্ষতার সাথে নেটওয়ার্ক সংস্থান ব্যবহার করতে পারে, যার ফলে আরও বেশি ব্যবহারকারী একই সাথে পরিষেবা অ্যাক্সেস করতে পারবেন।