Android 12 বা উচ্চতর সংস্করণে চলমান ডিভাইসগুলির জন্য, Android 5G নেটওয়ার্ক স্লাইসিংয়ের জন্য সমর্থন প্রদান করে, নেটওয়ার্ক ভার্চুয়ালাইজেশন ব্যবহার করে একক নেটওয়ার্ক সংযোগগুলিকে একাধিক স্বতন্ত্র ভার্চুয়াল সংযোগে ভাগ করে যা বিভিন্ন ধরণের ট্র্যাফিকের জন্য বিভিন্ন পরিমাণে সংস্থান সরবরাহ করে। 5G নেটওয়ার্ক স্লাইসিং নেটওয়ার্ক অপারেটরদের গ্রাহকদের একটি নির্দিষ্ট অংশের জন্য নির্দিষ্ট বৈশিষ্ট্য প্রদানের জন্য নেটওয়ার্কের একটি অংশ উৎসর্গ করার অনুমতি দেয়। Android 12 নিম্নলিখিত 5G এন্টারপ্রাইজ নেটওয়ার্ক স্লাইসিং ক্ষমতাগুলি প্রবর্তন করে, যা নেটওয়ার্ক অপারেটররা তাদের এন্টারপ্রাইজ ক্লায়েন্টদের প্রদান করতে পারে:
সম্পূর্ণরূপে পরিচালিত ডিভাইসের জন্য এন্টারপ্রাইজ ডিভাইস স্লাইসিং
যে উদ্যোগগুলি তাদের কর্মীদের সম্পূর্ণরূপে পরিচালিত কোম্পানির ডিভাইসগুলি প্রদান করে, নেটওয়ার্ক প্রদানকারীরা তাদের এক বা একাধিক সক্রিয় এন্টারপ্রাইজ নেটওয়ার্ক স্লাইস প্রদান করতে পারে যেখানে কোম্পানির ডিভাইসগুলিতে ট্র্যাফিক রুট করা হয়। Android 12 থেকে, Android APN-এর মাধ্যমে স্লাইস সেট আপ করার পরিবর্তে URSP নিয়মের মাধ্যমে ক্যারিয়ারদের এন্টারপ্রাইজ স্লাইস প্রদান করার অনুমতি দেয়।
কাজের প্রোফাইল সহ ডিভাইসগুলির জন্য এন্টারপ্রাইজ বিজনেস অ্যাপ স্লাইসিং
কাজের প্রোফাইল সমাধান ব্যবহার করে এন্টারপ্রাইজগুলির জন্য, Android 12 ডিভাইসগুলিকে কাজের প্রোফাইলের সমস্ত অ্যাপ থেকে একটি এন্টারপ্রাইজ নেটওয়ার্ক স্লাইসে ট্র্যাফিক রুট করার অনুমতি দেয়। এন্টারপ্রাইজগুলি একটি ডিভাইস পলিসি কন্ট্রোলার (ডিপিসি) এর মাধ্যমে এই ক্ষমতা সক্ষম করতে পারে৷
কাজের প্রোফাইল সলিউশন একটি স্বয়ংক্রিয় স্তরের প্রমাণীকরণ এবং অ্যাক্সেস নিয়ন্ত্রণ প্রদান করে যা এন্টারপ্রাইজগুলিকে নিশ্চিত করার জন্য প্রয়োজন যে শুধুমাত্র কাজের প্রোফাইলে থাকা এন্টারপ্রাইজ অ্যাপ থেকে ট্র্যাফিক এন্টারপ্রাইজ নেটওয়ার্ক স্লাইসে রুট করা হয়। এন্টারপ্রাইজ নেটওয়ার্ক স্লাইসকে স্পষ্টভাবে অনুরোধ করার জন্য কাজের প্রোফাইলে থাকা অ্যাপগুলিকে সংশোধন করার প্রয়োজন নেই৷
AOSP-এ 5G নেটওয়ার্ক স্লাইসিং কীভাবে কাজ করে
Android 12 AOSP-এ টেলিফোনি কোডবেসে সংযোজনের মাধ্যমে 5G নেটওয়ার্ক স্লাইসিং এবং নেটওয়ার্ক স্লাইসিংয়ের জন্য প্রয়োজনীয় বিদ্যমান কানেক্টিভিটি APIগুলিকে অন্তর্ভুক্ত করার জন্য টিথারিং মডিউলের জন্য সমর্থন প্রবর্তন করেছে।
অ্যান্ড্রয়েড টেলিফোনি প্ল্যাটফর্ম HAL এবং টেলিফোনি এপিআইগুলিকে কোর নেটওয়ার্কিং কোড এবং মডেমে 5G স্লাইসিং ক্ষমতা দ্বারা ফাইল করা নেটওয়ার্ক অনুরোধের ভিত্তিতে স্লাইসিং সমর্থন করে। চিত্র 1 5G নেটওয়ার্ক স্লাইসিং বৈশিষ্ট্যের উপাদানগুলি বর্ণনা করে৷
চিত্র 1. AOSP-এ 5G নেটওয়ার্ক স্লাইসিং আর্কিটেকচার।
টেলিফোনি এবং সংযোগ প্ল্যাটফর্ম সমর্থন করে:
- স্লাইস বিভাগগুলির জন্য নেটওয়ার্ক অনুরোধগুলিকে ট্র্যাফিক বর্ণনাকারীতে রূপান্তর করা যা পরে ইউআরএসপি ট্র্যাফিক ম্যাচিং এবং রুট নির্বাচনের জন্য মডেমে পাস করা হয়
- এন্টারপ্রাইজ নেটওয়ার্ক স্লাইস উপলব্ধ না হলে ডিফল্ট নেটওয়ার্কে ফিরে যাওয়া
- কাজের প্রোফাইলের অধীনে থাকা সমস্ত অ্যাপ থেকে সংশ্লিষ্ট সংযোগে ট্রাফিক রাউটিং করা
এন্টারপ্রাইজ স্লাইসিং সমর্থনকারী
- ডিভাইসে কাজের প্রোফাইলের উপস্থিতি শনাক্ত করা হচ্ছে
- এন্টারপ্রাইজের আইটি অ্যাডমিন দ্বারা ব্যবহৃত ডিপিসি থেকে প্রদত্ত অনুমতি বা রাউটিং নির্দেশাবলী পরীক্ষা করা হচ্ছে
মূল নেটওয়ার্কিং পরিষেবাটি Android 12-এর টিথারিং মডিউলে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত করে:
- টিথারিং মডিউলে বেশিরভাগ
android.net.*
পাবলিক বা সিস্টেম API ক্লাস যোগ করে অন্তর্ভুক্ত করতে টিথারিং মডিউল সীমানা প্রসারিত করে:
-
f/b/core/java/android/net/…
-
f/b/services/net/…
-
f/b/services/core/java/com/android/server/connectivity/…
-
f/b/services/core/java/com/android/server/ConnectivityService.java
-
f/b/services/core/java/com/android/server/TestNetworkService.java
-
টিথারিং মডিউল থেকে VPN কোড সরানো হয়
অ্যান্ড্রয়েড 12 টিথারিং মডিউলে নিম্নলিখিত ক্ষমতা সহ কোড সরান:
- নেটওয়ার্ক সংযোগের জন্য অ্যাপ্লিকেশানগুলি থেকে অনুরোধ গ্রহণ করা হচ্ছে৷
- সিস্টেম থেকে অনুরোধ গ্রহণ করা (উদাহরণস্বরূপ, "এই অ্যাপগুলিকে একটি এন্টারপ্রাইজ স্লাইসে রাখুন"; Android 12 এ চালু করা হয়েছে)
- সিস্টেম থেকে টেলিফোনি কোডে অনুরোধ পাঠানো যা HAL API এবং মডেমের মাধ্যমে নেটওয়ার্ক বা স্লাইস সেট আপ করার চেষ্টা করে
- প্রতি-অ্যাপ ভিত্তিতে কীভাবে ট্র্যাফিক রুট করতে হয় তা নেটকে জানানো (অ্যান্ড্রয়েড 12-এ চালু করা হয়েছে)
-
ConnectivityManager
API যেমনNetworkCallback
,getActiveNetwork
,getNetworkCapabilities
মাধ্যমে অ্যাপগুলিকে তাদের নেটওয়ার্ক ট্রাফিকের সাথে কী ঘটছে তা জানানো।
বাস্তবায়ন
একটি ডিভাইসে 5G স্লাইসিং সমর্থন করতে, ডিভাইসটিতে অবশ্যই একটি মডেম থাকতে হবে যা IRadio 1.6 HAL সমর্থন করে যার setupDataCall_1_6
API রয়েছে। এই API একটি ডেটা সংযোগ সেট আপ করে এবং 5G স্লাইসিং সমর্থন করার জন্য নিম্নলিখিত পরামিতিগুলি অন্তর্ভুক্ত করে:
-
trafficDescriptor
: মোডেমে পাঠানো ট্র্যাফিক বর্ণনাকারীকে নির্দিষ্ট করে -
sliceInfo
: EPDG থেকে 5G হস্তান্তরের ক্ষেত্রে ব্যবহার করা নেটওয়ার্ক স্লাইসের জন্য তথ্য নির্দিষ্ট করে -
matchAllRuleAllowed
: একটি ডিফল্ট ম্যাচ-সমস্ত URSP নিয়ম ব্যবহার করা অনুমোদিত কিনা তা নির্দিষ্ট করে। টেলিফোনি এটিকে ডিফল্ট নেটওয়ার্কের জন্য সত্য হিসাবে সেট করে কিন্তু স্লাইসের জন্য নয়। ম্যাচ সব নিয়ম ডিফল্ট নেটওয়ার্কে প্রয়োগ করা হয়। যখন একটি অ্যাপ উপলব্ধ নয় এমন একটি নির্দিষ্ট স্লাইস অনুরোধ করে, তখন নির্দিষ্ট স্লাইসটি উপলব্ধ নয় বলে রিপোর্ট করা হয়। এন্টারপ্রাইজ অ্যাপ্লিকেশানগুলির জন্য, এন্টারপ্রাইজ নেটওয়ার্ক উপলব্ধ না হলে টেলিফোনি ফ্রেমওয়ার্ক ডিফল্ট নেটওয়ার্কে ফিরে যেতে পারে৷
মডেমগুলিকে অবশ্যই getSlicingConfig
API প্রয়োগ করতে হবে যদি না এটি getHalDeviceCapabilities
API দ্বারা অসমর্থিত হিসাবে রিপোর্ট করা হয়।
এন্টারপ্রাইজের প্রয়োজনীয়তা
নিম্নলিখিতটি একটি Android এন্টারপ্রাইজ স্থাপনায় ডিভাইসগুলিতে 5G নেটওয়ার্ক স্লাইসিং ব্যবহার করার জন্য উদ্যোগগুলির প্রয়োজনীয়তা বর্ণনা করে৷
- নিশ্চিত করুন যে একটি কাজের প্রোফাইলের সাথে সম্পূর্ণরূপে পরিচালিত বা কর্মচারী ডিভাইসগুলি সেটআপ
setupDataCall_1_6
API সমর্থন করে এমন মডেমগুলির সাথে 5G SA-সক্ষম। - স্লাইস সেটআপ এবং পারফরম্যান্স বা SLA বৈশিষ্ট্যগুলিতে ক্যারিয়ার অংশীদারের সাথে কাজ করুন।
একটি কাজের প্রোফাইলের সাথে সেট আপ করা ডিভাইসগুলিতে 5G স্লাইসিং সক্ষম করুন৷
কাজের প্রোফাইলের সাথে সেট আপ করা ডিভাইসগুলির জন্য, AOSP-এ ডিফল্টরূপে 5G নেটওয়ার্ক স্লাইসিং বন্ধ থাকে। নেটওয়ার্ক স্লাইসিং সক্ষম করতে, এন্টারপ্রাইজ আইটি প্রশাসকরা EMM DPC-এর মাধ্যমে প্রতি-কর্মচারী ভিত্তিতে এন্টারপ্রাইজ নেটওয়ার্ক স্লাইসে কাজের প্রোফাইল অ্যাপ ট্র্যাফিক রাউটিং চালু বা বন্ধ করতে পারেন, যা DevicePolicyManager
(DPM) API এ setPreferentialNetworkServiceEnabled
পদ্ধতি ব্যবহার করে (এন্ড্রয়েডে প্রবর্তিত 12)।
কাস্টম DPC সহ EMM বিক্রেতাদের অবশ্যই এন্টারপ্রাইজ ক্লায়েন্টদের সমর্থন করার জন্য DevicePolicyManager
API একীভূত করতে হবে।
ইউআরএসপি নিয়ম
এই বিভাগে এন্টারপ্রাইজ, CBS, কম লেটেন্সি, এবং উচ্চ ব্যান্ডউইথ ট্র্যাফিক সহ বিভিন্ন স্লাইস বিভাগের জন্য URSP নিয়মগুলি কনফিগার করার বিষয়ে ক্যারিয়ারগুলির তথ্য অন্তর্ভুক্ত রয়েছে। বিভিন্ন স্লাইস বিভাগের জন্য URSP নিয়মগুলি কনফিগার করার সময়, ক্যারিয়ারদের অবশ্যই নিম্নলিখিত Android-নির্দিষ্ট মানগুলি ব্যবহার করতে হবে৷
আইডি | মান | বর্ণনা |
---|---|---|
OSId | 97a498e3-fc92-5c94-8986-0333d06e4e47 | অ্যান্ড্রয়েডের জন্য OSId হল একটি সংস্করণ 5 UUID যা নামস্থান ISO OID এবং "Android" নাম দিয়ে তৈরি করা হয়েছে। |
"OS Id + OS অ্যাপ আইডি টাইপ" হিসাবে ট্রাফিক বর্ণনাকারী উপাদানের সাথে ক্যারিয়ারগুলিকে প্রতিটি স্লাইস ট্র্যাফিকের জন্য URSP নিয়মগুলি কনফিগার করতে হবে৷ উদাহরণস্বরূপ, "ENTERPRISE" স্লাইসের একটি মান 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345
থাকতে হবে। এই মানটি হল OSId, OSAppId এর দৈর্ঘ্য ( 0x0A
), এবং OSAppId এর সংমিশ্রণ। ট্র্যাফিক বর্ণনাকারী উপাদানের প্রকার সম্পর্কে আরও তথ্যের জন্য, 3GPP TS 24.526 টেবিল 5.2.1 দেখুন।
নিম্নলিখিত সারণীটি বিভিন্ন স্লাইস বিভাগের জন্য OSAppId মান বর্ণনা করে।
স্লাইস বিভাগ | OSAppId | বর্ণনা |
---|---|---|
এন্টারপ্রাইজ | 0x454E5445525052495345 | OSAppId হল "ENTERPRISE" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
এন্টারপ্রাইজ2 | 0x454E544552505249534532 | OSAppId হল "ENTERPRISE2" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
এন্টারপ্রাইজ3 | 0x454E544552505249534533 | OSAppId হল "ENTERPRISE3" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
এন্টারপ্রাইজ4 | 0x454E544552505249534534 | OSAppId হল "ENTERPRISE4" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
এন্টারপ্রাইজ5 | 0x454E544552505249534535 | OSAppId হল "ENTERPRISE5" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
সিবিএস | 0x434253 | OSAppId হল "CBS" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
PRIORITIZE_LATENCY | 0x5052494f524954495a455f4c4154454e4359 | OSAppId হল "PRIORITIZE_LATENCY" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
PRIORITIZE_BANDWIDTH | 0x5052494f524954495a455f42414e445749445448 | OSAppId হল "PRIORITIZE_BANDWIDTH" স্ট্রিং এর একটি বাইট অ্যারে উপস্থাপনা |
ইউআরএসপি নিয়মের উদাহরণ
নিম্নলিখিত টেবিলগুলি এন্টারপ্রাইজ, সিবিএস, কম লেটেন্সি, উচ্চ ব্যান্ডউইথ এবং ডিফল্ট ট্র্যাফিকের জন্য ইউআরএসপি নিয়মের উদাহরণ দেখায়।
এন্টারপ্রাইজ 1
এন্টারপ্রাইজ 1 এর জন্য সমর্থন Android 12 এবং উচ্চতর সংস্করণে উপলব্ধ। ENTERPRISE1 ট্রাফিকের জন্য URSP নিয়মের উদাহরণ নিচে দেওয়া হল:
ইউআরএসপি নিয়ম #1 (এন্টারপ্রাইজ1) | |
---|---|
অগ্রাধিকার | 1 (0x01) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | এন্টারপ্রাইজ |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | এন্টারপ্রাইজ |
এন্টারপ্রাইজ 2
এন্টারপ্রাইজ 2 এর জন্য সমর্থন Android 13 এবং উচ্চতর সংস্করণে উপলব্ধ। ENTERPRISE2 ট্রাফিকের জন্য নিচের একটি উদাহরণ URSP নিয়ম:
ইউআরএসপি নিয়ম #2 (এন্টারপ্রাইজ2) | |
---|---|
অগ্রাধিকার | 2 (0x02) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534532 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | এন্টারপ্রাইজ2 |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | এন্টারপ্রাইজ2 |
এন্টারপ্রাইজ 3
এন্টারপ্রাইজ 3 এর জন্য সমর্থন Android 13 এবং উচ্চতর সংস্করণে উপলব্ধ। ENTERPRISE3 ট্রাফিকের জন্য নিম্নোক্ত একটি উদাহরণ URSP নিয়ম:
ইউআরএসপি নিয়ম #3 (এন্টারপ্রাইজ3) | |
---|---|
অগ্রাধিকার | 3 (0x03) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534533 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | এন্টারপ্রাইজ3 |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | এন্টারপ্রাইজ3 |
এন্টারপ্রাইজ 4
এন্টারপ্রাইজ 4 এর জন্য সমর্থন Android 13 এবং উচ্চতর সংস্করণে উপলব্ধ। ENTERPRISE4 ট্র্যাফিকের জন্য নিম্নলিখিত URSP নিয়মের উদাহরণ:
ইউআরএসপি নিয়ম #4 (এন্টারপ্রাইজ4) | |
---|---|
অগ্রাধিকার | 4 (0x04) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534534 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | এন্টারপ্রাইজ4 |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | এন্টারপ্রাইজ4 |
এন্টারপ্রাইজ 5
এন্টারপ্রাইজ 5 এর জন্য সমর্থন Android 13 এবং উচ্চতর সংস্করণে উপলব্ধ। ENTERPRISE5 ট্রাফিকের জন্য URSP নিয়মের উদাহরণ নিচে দেওয়া হল:
ইউআরএসপি নিয়ম #5 (এন্টারপ্রাইজ5) | |
---|---|
অগ্রাধিকার | 5 (0x05) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534535 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | এন্টারপ্রাইজ5 |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | এন্টারপ্রাইজ5 |
সিবিএস
CBS-এর জন্য সমর্থন Android 13 এবং উচ্চতর সংস্করণে উপলব্ধ। নিচে CBS ট্রাফিকের জন্য URSP নিয়মের উদাহরণ দেওয়া হল:
ইউআরএসপি নিয়ম #6 (সিবিএস) | |
---|---|
অগ্রাধিকার | 6 (0x06) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 0x97A498E3FC925C9489860333D06E4E4703434253 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | cbs |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | cbs |
কম বিলম্ব
কম লেটেন্সির জন্য সমর্থন Android 13 এবং উচ্চতর সংস্করণে উপলব্ধ। নিম্নে LOW_LATENCY ট্রাফিকের জন্য একটি উদাহরণ URSP নিয়ম:
ইউআরএসপি নিয়ম #7 (কম বিলম্বিতা) | |
---|---|
অগ্রাধিকার | 7 (0x07) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 0x97A498E3FC925C9489860333D06E4E47125052494f524954495a455f4c4154454e4359 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | বিলম্ব |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | বিলম্ব |
উচ্চ ব্যান্ডউইথ
উচ্চ ব্যান্ডউইথের জন্য সমর্থন Android 13 এবং উচ্চতর সংস্করণে উপলব্ধ। নিম্নে HIGH_BANDWIDTH ট্রাফিকের জন্য URSP নিয়মের উদাহরণ দেওয়া হল:
ইউআরএসপি নিয়ম #8 (উচ্চ ব্যান্ডউইথ) | |
---|---|
অগ্রাধিকার | 8 (0x08) |
ট্রাফিক বর্ণনাকারী #1 | |
ওএস আইডি + ওএস অ্যাপ আইডি টাইপ | 97A498E3FC925C9489860333D06E4E47145052494f524954495a455f42414e445749445448 |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
কম্পোনেন্ট #2: DNN | ব্যান্ডউইথ |
রুট নির্বাচন বর্ণনাকারী #2 | |
অগ্রাধিকার | 2 (0x02) |
কম্পোনেন্ট #1: DNN | ব্যান্ডউইথ |
ডিফল্ট
ইউআরএসপি নিয়ম #9 (ডিফল্ট) | |
---|---|
অগ্রাধিকার | 9 (0x09) |
ট্রাফিক বর্ণনাকারী #1 | |
ম্যাচ সব | N/A |
রুট নির্বাচন বর্ণনাকারী #1 | |
অগ্রাধিকার | 1 (0x01) |
উপাদান #1: S-NSSAI | SST:XX SD:YYYYYY |
টেস্টিং
5G নেটওয়ার্ক স্লাইসিং পরীক্ষা করতে, নিম্নলিখিত ম্যানুয়াল পরীক্ষাটি ব্যবহার করুন।
পরীক্ষার জন্য একটি ডিভাইস সেটআপ করতে, নিম্নলিখিতগুলি করুন:
নিশ্চিত করুন যে ইউআরএসপি নীতিটি একটি নন-ডিফল্ট নিয়মের সাথে কনফিগার করা হয়েছে যা এন্টারপ্রাইজ বিভাগের সাথে মেলে এবং সংশ্লিষ্ট রুট-নির্বাচন বর্ণনাকারী এন্টারপ্রাইজ বিভাগকে এন্টারপ্রাইজ স্লাইসে ম্যাপ করে; এবং একটি ডিফল্ট নিয়ম যা ট্রাফিককে ডিফল্ট ইন্টারনেট স্লাইসে নির্দেশ করে।
ডিভাইসে একটি কাজের প্রোফাইল কনফিগার করা আছে তা নিশ্চিত করুন।
DPC এর মাধ্যমে নেটওয়ার্ক স্লাইসিং ব্যবহার করার জন্য নির্বাচন করুন
5G নেটওয়ার্ক স্লাইসিং আচরণ পরীক্ষা করতে, নিম্নলিখিতগুলি করুন:
- যাচাই করুন যে এন্টারপ্রাইজ স্লাইসের সাথে একটি PDU সেশন প্রতিষ্ঠিত হয়েছে (উদাহরণস্বরূপ, একটি নির্দিষ্ট IP ঠিকানা ব্যবহার করে) এবং কাজের প্রোফাইলে থাকা অ্যাপগুলি সেই PDU সেশন ব্যবহার করে।
- ডিফল্ট ইন্টারনেট স্লাইসের সাথে একটি পৃথক PDU সেশন প্রতিষ্ঠিত হয়েছে এবং ব্যক্তিগত প্রোফাইলে থাকা অ্যাপগুলি PDU সেশন ব্যবহার করে তা যাচাই করুন।
5G স্লাইসিং আপসেল
Android 14-QPR1 থেকে উপলব্ধ 5G স্লাইসিং আপসেল বৈশিষ্ট্য, ক্যারিয়ারগুলিকে 5G নেটওয়ার্ক স্লাইসিংয়ের মাধ্যমে তাদের ব্যবহারকারীদের উন্নত নেটওয়ার্ক ক্ষমতা (লেটেন্সি এবং ব্যান্ডউইথ) অফার করতে দেয়।
5G স্লাইসিং আপসেল বৈশিষ্ট্যটি ক্রয় প্রবাহ চালাতে ক্যারিয়ার এনটাইটেলমেন্ট সার্ভার থেকে TS.43 প্রতিক্রিয়া ব্যবহার করে। ক্যারিয়ারগুলি ক্যারিয়ারের ক্রয় ওয়েবভিউয়ের URL নির্দিষ্ট করতে, ওয়েবভিউতে অতিরিক্ত ডেটা পাঠাতে এবং স্লাইসটি ক্যারিয়ার নেটওয়ার্কে উপলব্ধ এবং উপলব্ধ কিনা তা নির্দেশ করতে প্রতিক্রিয়া ব্যবহার করতে পারে৷
ক্যারিয়ার কনফিগারেশন ব্যবহার করে 5G স্লাইসিং আপসেল বৈশিষ্ট্যের আচরণ কাস্টমাইজ করতে পারে, যা ক্রয়ের অনুরোধ করা যাবে কিনা, কখন অ্যাপগুলিকে প্রিমিয়াম ক্ষমতার অনুরোধ করার অনুমতি দেওয়া হয় এবং কতক্ষণ টেলিফোনি ফ্রেমওয়ার্ক ব্যবহারকারী বা নেটওয়ার্ক থেকে প্রতিক্রিয়ার জন্য অপেক্ষা করে তা নিয়ন্ত্রণ করে।
5G স্লাইসিং আপসেল বৈশিষ্ট্যটি একটি ইন্টারফেস প্রদান করে, যাকে বলা হয় DataBoostWebServiceFlow
, যা Android এবং ক্যারিয়ার ওয়েবভিউয়ের মধ্যে যোগাযোগের অনুমতি দেয়৷
চিত্র 2 5G স্লাইসিং আপসেল ক্রয় প্রবাহ দেখায়:
চিত্র 2. 5G স্লাইসিং আপসেল ক্রয় প্রবাহ।
TS.43 এনটাইটেলমেন্ট প্রক্রিয়া
যখন একজন ব্যবহারকারী উন্নত নেটওয়ার্ক ক্ষমতার জন্য অনুরোধ করে, তখন টেলিফোনি ফ্রেমওয়ার্ক অনুরোধ করা প্রিমিয়াম ক্ষমতার জন্য পরিষেবা এনটাইটেলমেন্ট কনফিগারেশনের অনুরোধ করে। TS.43 প্রতিক্রিয়া বৈধ হলে, টেলিফোনি ফ্রেমওয়ার্ক HTTP প্রতিক্রিয়া থেকে ক্ষেত্রগুলি ব্যবহার করে ক্রয়ের অনুরোধ চালায়।
স্লাইস ক্রয় ক্ষেত্র
TS.43 এনটাইটেলমেন্ট কনফিগারেশনে নিম্নলিখিত স্লাইস ক্রয় ক্ষেত্রগুলি অন্তর্ভুক্ত রয়েছে:
- এনটাইটেলমেন্ট স্ট্যাটাস
কী:
EntitlementStatus
প্রকার:
int
সমর্থিত মান:
0
(অক্ষম),1
(সক্ষম),2
(বেমানান),3
(বিধান),4
(অন্তর্ভুক্ত)- প্রভিশনিং স্ট্যাটাস
কী:
ProvStatus
প্রকার:
int
সমর্থিত মান:
0
(বিধান করা হয়নি),1
(বিধান করা হয়েছে),2
(উপলব্ধ নয়),3
(প্রগতিতে আছে)
টেলিফোনি ফ্রেমওয়ার্ক বর্তমান স্লাইস ক্রয়ের অবস্থা নির্ধারণ করতে এনটাইটেলমেন্ট স্ট্যাটাস এবং প্রভিশনিং স্ট্যাটাসের সমন্বয় ব্যবহার করে। ফলাফল নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_PURCHASED
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_IN_PROGRESS
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_ENTITLEMENT_CHECK_FAILED
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_ERROR
যদি এনটাইটেলমেন্ট স্ট্যাটাস 1
(সক্রিয়) হয় এবং প্রভিশনিং স্ট্যাটাস 0
হয় (প্রভিশন করা হয়নি), তাহলে টেলিফোনি ফ্রেমওয়ার্ক ক্যারিয়ার ওয়েবভিউ-এর মাধ্যমে বুস্ট কেনার জন্য ব্যবহারকারীকে একটি আপসেল বিজ্ঞপ্তি প্রদর্শন করে। নিম্নলিখিত সারণীটি প্রভিশনিং এবং এনটাইটেলমেন্ট স্ট্যাটাস মানের বিভিন্ন সমন্বয়ের জন্য টেলিফোনি ফ্রেমওয়ার্কের আচরণ বর্ণনা করে।
প্রভিশনিং স্ট্যাটাস | |||||
---|---|---|---|---|---|
বিধান করা হয়নি ( 0 ) | বিধান করা হয়েছে ( 1 ) 1 ) | উপলব্ধ নয় ( 2 ) | চলছে ( 3 ) | ||
এনটাইটেলমেন্ট স্ট্যাটাস | অক্ষম ( 0 ) | ব্যর্থ হয়েছে | ব্যর্থ হয়েছে | ব্যর্থ হয়েছে | ব্যর্থ হয়েছে |
সক্রিয় ( 1 ) | ওয়েবভিউ দেখান | ইতিমধ্যে কেনা | ইতিমধ্যে কেনা | চলছে | |
বেমানান ( 2 ) | ব্যর্থ হয়েছে | ব্যর্থ হয়েছে | ব্যর্থ হয়েছে | ব্যর্থ হয়েছে | |
বিধান ( 3 ) | ক্যারিয়ার ত্রুটি | ক্যারিয়ার ত্রুটি | চলছে | চলছে | |
অন্তর্ভুক্ত ( 4 ) | ক্যারিয়ার ত্রুটি | ইতিমধ্যে কেনা | ইতিমধ্যে কেনা | ক্যারিয়ার ত্রুটি |
পরিষেবা প্রবাহ ক্ষেত্র
ক্যারিয়ার ক্রয় ওয়েবভিউ আচরণ কাস্টমাইজ করতে TS.43 প্রতিক্রিয়া URL, ব্যবহারকারীর ডেটা এবং বিষয়বস্তুর ধরন নির্দিষ্ট করে। বিষয়বস্তুর প্রকার অনির্দিষ্ট হলে, URL একটি GET অনুরোধ হিসাবে লোড করা হয়। ব্যবহারকারীর ডেটা বিদ্যমান থাকলে, এটি একটি ক্যোয়ারী প্যারামিটার হিসাবে URL-এর সাথে যুক্ত করা হয় (উদাহরণস্বরূপ, https://www.android.com?encodedValue=Base64EncodedUserData
); এবং যদি এটি বিদ্যমান না থাকে, URLটি যেমন ব্যবহার করা হয় (উদাহরণস্বরূপ, https://www.android.com
)।
যদি বিষয়বস্তুর ধরন JSON বা XML ফর্ম্যাটে নির্দিষ্ট করা হয়, তাহলে URL একটি POST অনুরোধ হিসাবে লোড করা হয় এবং ব্যবহারকারীর ডেটা (যদি এটি বেস 64-এ এনকোড করা থাকে তবে ডিকোড করা হয়) পোস্ট অনুরোধের ডেটা হিসাবে পাঠানো হয়।
- URL
কী:
ServiceFlow_URL
প্রকার:
String
উদাহরণ:
"https://www.android.com"
- ব্যবহারকারীর ডেটা
কী:
ServiceFlow_UserData
প্রকার:
String
উদাহরণ:
"encodedValue=Base64EncodedUserData"
- বিষয়বস্তুর প্রকার
কী:
ServiceFlow_ContentsType
প্রকার:
String
সমর্থিত মান:
0
(অনির্দিষ্ট),1
(JSON),2
(XML)
ক্যারিয়ার কনফিগারেশন
5G স্লাইসিং আপসেল বৈশিষ্ট্যের আচরণ কাস্টমাইজ করার জন্য নিম্নলিখিত ক্যারিয়ার কনফিগারেশন উপলব্ধ।
-
KEY_SUPPORTED_PREMIUM_CAPABILITIES_INT_ARRAY
সমর্থিত প্রিমিয়াম ক্ষমতার একটি তালিকা। এটি
TelephonyManager.PremiumCapability
এর একটি int অ্যারে। এই প্রিমিয়াম ক্ষমতাগুলি সংশ্লিষ্টNetworkCapabilities.NetCapability
ক্লাসের মতো একই মান শেয়ার করে৷ যদি একটি প্রিমিয়াম ক্ষমতার অনুরোধ করা হয় এবং এটি এই কনফিগারেশনে অন্তর্ভুক্ত না হয়, তাহলে ক্রয়ের অনুরোধCARRIER_DISABLED
ফলাফলের সাথে ব্যর্থ হয়৷Android 14-এ, শুধুমাত্র
PREMIUM_CAPABILITY_PRIORITIZE_LATENCY
সমর্থিত।-
KEY_PREMIUM_CAPABILITY_MAXIMUM_DAILY_NOTIFICATION_COUNT_INT
দৈনিক সর্বোচ্চ কতবার ক্রয় আপসেল বিজ্ঞপ্তি ব্যবহারকারীকে দেখানো হয়। যদি দৈনিক সর্বোচ্চ পূরণ করা হয়, আপসেল বিজ্ঞপ্তি দেখানো হয় না এবং ক্রয়ের অনুরোধ (এনটাইটেলমেন্ট সার্ভার অনুরোধ সহ) পরের দিনের মধ্যরাত পর্যন্ত থ্রোটল করা হয়। দৈনিক সর্বোচ্চে পৌঁছানোর পরে করা ক্রয়ের অনুরোধ
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
ফলাফলের সাথে ব্যর্থ হয়৷-
KEY_PREMIUM_CAPABILITY_MAXIMUM_MONTHLY_NOTIFICATION_COUNT_INT
মাসিক সর্বোচ্চ কতবার ক্রয় আপসেল বিজ্ঞপ্তি ব্যবহারকারীকে দেখানো হয়। মাসিক সর্বোচ্চ পূরণ হলে, আপসেল বিজ্ঞপ্তি দেখানো হয় না এবং ক্রয়ের অনুরোধগুলি (এনটাইটেলমেন্ট সার্ভারের অনুরোধ সহ) পরবর্তী মাসের প্রথম দিন পর্যন্ত থ্রোটল করা হয়।
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
ফলাফলের সাথে মাসিক সর্বোচ্চে পৌঁছানোর পরে করা ক্রয়ের অনুরোধগুলি ব্যর্থ হয়৷-
KEY_PREMIUM_CAPABILITY_PURCHASE_URL_STRING
ব্যাকআপ ক্যারিয়ার ক্রয় ইউআরএল ব্যবহারকারীরা যখন আপসেল বিজ্ঞপ্তিতে ক্লিক করেন তখন তাদের কাছে প্রদর্শিত হবে। এনটাইটেলমেন্ট সার্ভার থেকে TS.43 প্রতিক্রিয়াতে ক্রয় URL না পাওয়া গেলে, এই মানটি পরিবর্তে ব্যবহার করা হয়। যদি TS.43 প্রতিক্রিয়া বা ক্যারিয়ার কনফিগারেশন থেকে URL দুটিই বৈধ না হয়, তাহলে ক্রয়ের অনুরোধ
PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_DISABLED
ফলাফলের সাথে ব্যর্থ হয়৷-
KEY_PREMIUM_CAPABILITY_SUPPORTED_ON_LTE_BOOL
ডিভাইসটি লং-টার্ম ইভোলিউশন (LTE) এর সাথে সংযুক্ত থাকলে প্রিমিয়াম ক্ষমতা কেনার অনুমতি দেওয়া হবে কিনা।
true
হলে, LTE এবং নিউ রেডিও (NR) উভয় ক্ষেত্রেই ক্রয়ের অনুরোধ করা যেতে পারে।false
হলে, ক্রয়ের অনুরোধগুলি শুধুমাত্র NR-এ করা যেতে পারে এবং LTE-এ করা অনুরোধগুলিPURCHASE_PREMIUM_CAPABILITY_RESULT_NETWORK_NOT_AVAILABLE
ফলাফলে ব্যর্থ হয়৷-
KEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONG
স্বয়ংক্রিয়ভাবে বাতিল হওয়ার আগে ব্যবহারকারীকে ক্রয় আপসেল বিজ্ঞপ্তিটি দেখানোর জন্য সময়ের পরিমাণ। যখন বিজ্ঞপ্তি বাতিল করা হয়, পরবর্তী অনুরোধগুলি থ্রোটল করা হয় এবং
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
ফলাফলের সাথে ব্যর্থ হয়৷-
KEY_PREMIUM_CAPABILITY_NOTIFICATION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG
টাইমআউট বা ব্যবহারকারী বাতিলের কারণে ব্যর্থতার পরে পরবর্তী ক্রয়ের অনুরোধগুলি যে পরিমাণ সময় থ্রোটল করা উচিত। ব্যবহারকারী যদি
KEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONG
দ্বারা নির্দিষ্ট সময়সীমার মধ্যে ক্রয় আপসেল বিজ্ঞপ্তিতে ক্লিক না করে বা যদি তারা বিজ্ঞপ্তিটি বাতিল বা খারিজ করে তবে এই ব্যাকঅফ টাইমারটি শুরু হয়। এই টাইমার সক্রিয় থাকাকালীন, ক্রয়ের অনুরোধPURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
ফলাফলের সাথে ব্যর্থ হয়৷-
KEY_PREMIUM_CAPABILITY_PURCHASE_CONDITION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG
ক্যারিয়ার বা নেটওয়ার্কের কারণে ব্যর্থতার পরে পরবর্তী ক্রয়ের অনুরোধগুলি থ্রোটল করা উচিত এমন সময়ের পরিমাণ। যদি এনটাইটেলমেন্ট চেক ব্যর্থ হয়, URL অনুপলব্ধ হয়, বা ক্যারিয়ার ক্রয় URL একটি ব্যর্থতা নির্দেশ করে, এই ব্যাকঅফ টাইমার শুরু হয়। এই টাইমার সক্রিয় থাকাকালীন, ক্রয়ের অনুরোধ
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
ফলাফলের সাথে ব্যর্থ হয়৷-
KEY_PREMIUM_CAPABILITY_NETWORK_SETUP_TIME_MILLIS_LONG
যে সময়ের মধ্যে নেটওয়ার্ককে ক্রয় প্রিমিয়াম ক্ষমতার জন্য একটি স্লাইসিং কনফিগারেশন সেট আপ করতে হবে। এই সময়ের মধ্যে, পরবর্তী ক্রয়ের অনুরোধগুলি ব্লক করা হয় এবং
PURCHASE_PREMIUM_CAPABILITY_RESULT_PENDING_NETWORK_SETUP
ফলাফল ফেরত দেয়৷ নেটওয়ার্ক সময়মতো স্লাইসিং কনফিগারেশন সেট আপ করতে ব্যর্থ হলে, অ্যাপগুলি আবার প্রিমিয়াম ক্ষমতা কেনার জন্য অনুরোধ করতে পারে। সংশ্লিষ্ট স্লাইসিং কনফিগারেশন পাঠানো না হওয়া পর্যন্ত টেলিফোনি একটি ক্রয়কে সম্পূর্ণ বলে মনে করে না, ব্যবহারকারী ক্যারিয়ারকে অর্থপ্রদান করেছেন কি না তা নির্বিশেষে।
জাভাস্ক্রিপ্ট ইন্টারফেস
ব্যবহারকারী নেটওয়ার্ক বুস্ট বিজ্ঞপ্তিতে ক্লিক করলে, ক্যারিয়ার ক্রয় URL সহ একটি WebView
অবজেক্ট ব্যবহারকারীকে দেখানো হয়। বাহক স্লাইস ক্রয় অ্যাপের সাথে যোগাযোগ করতে তাদের ক্রয় ওয়েবসাইটে DataBoostWebServiceFlow
Javascript ইন্টারফেসে প্রদত্ত API ব্যবহার করতে পারে।
ক্যারিয়ার ওয়েবসাইট getRequestedCapability()
পদ্ধতির মাধ্যমে অনুরোধকৃত প্রিমিয়াম ক্ষমতা পেতে পারে।
ক্রয় সফল হলে, ক্যারিয়ারের ওয়েবসাইটকে অবশ্যই notifyPurchaseSuccessful()
বা notifyPurchaseSuccessful(duration)
এর মাধ্যমে স্লাইস ক্রয়ের অ্যাপকে অবহিত করতে হবে যেখানে duration
একটি ঐচ্ছিক পরামিতি যা স্লাইসের উদ্দেশ্যে সময়কাল নির্দেশ করে।
ক্রয় সফল না হলে, ক্যারিয়ারের ওয়েবসাইটটিকে অবশ্যই notifyPurchaseFailed(code, reason)
পদ্ধতির মাধ্যমে স্লাইস ক্রয় অ্যাপকে অবহিত করতে হবে, যেখানে code
ব্যর্থতার কারণ নির্দেশ করে এবং reason
ব্যর্থতার জন্য মানব-পাঠযোগ্য কারণ যদি ব্যর্থতা কোড অজানা।
যদি এই প্রতিক্রিয়া পদ্ধতিগুলির যেকোন একটিকে কল না করা হয়, তাহলে কেনাকাটা সম্পন্ন বলে বিবেচিত হবে না এবং ক্রয়ের অনুরোধ শেষ পর্যন্ত শেষ হয়ে যাবে।
নিম্নলিখিত বৈধ ব্যর্থতা কোড যা ক্যারিয়ার ওয়েবসাইট ক্রয় ব্যর্থতার জন্য ফেরত দিতে পারে:
-
FAILURE_CODE_UNKNOWN
-
FAILURE_CODE_CARRIER_URL_UNAVAILABLE
-
FAILURE_CODE_AUTHENTICATION_FAILED
-
FAILURE_CODE_PAYMENT_FAILED
-
FAILURE_CODE_NO_USER_DATA
ক্রয় সম্পন্ন হলে ক্যারিয়ারকে অবশ্যই ব্যবহারকারীর ডিভাইসে PRIORITIZE_LATENCY
স্লাইস দিয়ে URSP নিয়ম আপডেট করতে হবে।