5G नेटवर्क स्लाइसिंग

Android 12 या इसके बाद के वर्शन वाले डिवाइसों के लिए, Android नेटवर्क को अलग-अलग हिस्सों में बांटने की सुविधा देता है. इसे 5G नेटवर्क स्लाइसिंग कहते हैं. इसमें नेटवर्क को वर्चुअलाइज़ करके, एक नेटवर्क कनेक्शन को कई अलग-अलग वर्चुअल कनेक्शन में बांटा जाता है. इससे अलग-अलग तरह के ट्रैफ़िक को अलग-अलग संसाधन मिलते हैं. 5G नेटवर्क स्लाइसिंग की मदद से, नेटवर्क ऑपरेटर अपने नेटवर्क का एक हिस्सा, ग्राहकों के किसी खास सेगमेंट को खास सुविधाएं देने के लिए तय कर सकते हैं. Android 12 में, 5G एंटरप्राइज़ नेटवर्क स्लाइसिंग की ये सुविधाएं उपलब्ध हैं. नेटवर्क ऑपरेटर, अपने एंटरप्राइज़ क्लाइंट को ये सुविधाएं दे सकते हैं:

पूरी तरह से मैनेज किए जाने वाले डिवाइसों के लिए, एंटरप्राइज़ डिवाइस स्लाइसिंग

जिन एंटरप्राइज़ अपने कर्मचारियों को कंपनी के ऐसे डिवाइस देते हैं जिन्हें पूरी तरह से मैनेज किया जाता है उनके लिए, नेटवर्क सेवा देने वाली कंपनियां एक या उससे ज़्यादा चालू एंटरप्राइज़ नेटवर्क स्लाइस उपलब्ध करा सकती हैं. इन स्लाइस पर, कंपनी के डिवाइसों से आने वाला ट्रैफ़िक रूट किया जाता है. Android 12 में, Android ने कैरियर को APNs के ज़रिए स्लाइस सेट अप करने के बजाय, यूआरएसपी नियमों के ज़रिए एंटरप्राइज़ स्लाइस उपलब्ध कराने की अनुमति दी है.

वर्क प्रोफ़ाइल वाले डिवाइसों के लिए, एंटरप्राइज़ के कारोबार का ऐप्लिकेशन स्लाइस करना

वर्क प्रोफ़ाइल के समाधान का इस्तेमाल करने वाले एंटरप्राइज़ के लिए, Android 12 की मदद से डिवाइसों पर, वर्क प्रोफ़ाइल में मौजूद सभी ऐप्लिकेशन से आने वाले ट्रैफ़िक को एंटरप्राइज़ नेटवर्क स्लाइस पर भेजा जा सकता है. एंटरप्राइज़, डिवाइस नीति कंट्रोलर (डीपीसी) की मदद से, इस सुविधा को चालू कर सकते हैं.

वर्क प्रोफ़ाइल का सलूशन, पुष्टि करने और ऐक्सेस कंट्रोल करने की सुविधा अपने-आप देता है. यह सुविधा, एंटरप्राइज़ को यह पक्का करने में मदद करती है कि वर्क प्रोफ़ाइल में मौजूद एंटरप्राइज़ ऐप्लिकेशन का ट्रैफ़िक ही एंटरप्राइज़ नेटवर्क स्लाइस पर भेजा जाए. एंटरप्राइज़ नेटवर्क स्लाइस का साफ़ तौर पर अनुरोध करने के लिए, वर्क प्रोफ़ाइल में मौजूद ऐप्लिकेशन में बदलाव करने की ज़रूरत नहीं होती.

AOSP में 5G नेटवर्क स्लाइसिंग कैसे काम करती है

Android 12 में 5G नेटवर्क स्लाइसिंग की सुविधा जोड़ी गई है. इसके लिए, AOSP में टेलीफ़ोनी कोडबेस और तेथरिंग मॉड्यूल में बदलाव किए गए हैं. इससे, नेटवर्क स्लाइसिंग के लिए ज़रूरी मौजूदा कनेक्टिविटी एपीआई शामिल किए जा सकेंगे.

Android टेलीफ़ोन प्लैटफ़ॉर्म, एचएएल और टेलीफ़ोन एपीआई उपलब्ध कराता है, ताकि कोर नेटवर्किंग कोड और मॉडेम में 5G स्लाइसिंग की सुविधाओं से किए गए नेटवर्क अनुरोधों के आधार पर, स्लाइसिंग की सुविधा काम कर सके. पहली इमेज में, 5G नेटवर्क स्लाइसिंग की सुविधा के कॉम्पोनेंट के बारे में बताया गया है.

5G नेटवर्क स्लाइसिंग के कॉम्पोनेंट

पहली इमेज. AOSP में 5G नेटवर्क स्लाइसिंग आर्किटेक्चर.

टेलीफ़ोन और कनेक्टिविटी प्लैटफ़ॉर्म पर ये काम किए जा सकते हैं:

  • स्लाइस कैटगरी के लिए नेटवर्क अनुरोधों को ट्रैफ़िक डिस्क्रिप्टर में बदलना. इसके बाद, इन्हें यूआरएसपी ट्रैफ़िक मैचिंग और रूट चुनने के लिए मॉडेम को भेजा जाता है
  • एंटरप्राइज़ नेटवर्क स्लाइस उपलब्ध न होने पर, डिफ़ॉल्ट नेटवर्क पर स्विच करना
  • वर्क प्रोफ़ाइल में मौजूद सभी ऐप्लिकेशन के ट्रैफ़िक को उससे जुड़े कनेक्शन पर रूट करना
  • एंटरप्राइज़ स्लाइसिंग की सुविधा

    • डिवाइस पर वर्क प्रोफ़ाइल की मौजूदगी का पता लगाना
    • एंटरप्राइज़ के आईटी एडमिन के इस्तेमाल किए गए डीपीसी से मिली अनुमतियों या रूटिंग निर्देशों की जांच करना

Android 12 में, मुख्य नेटवर्किंग सेवा के तौर पर काम करने वाले मॉड्यूल में ये बदलाव किए गए हैं:

  • android.net.* की ज़्यादातर सार्वजनिक या सिस्टम एपीआई क्लास को, कनेक्ट करने की सुविधा वाले मॉड्यूल में जोड़ता है
  • टिथरिंग मॉड्यूल की सीमाओं को बड़ा करके, इन चीज़ों को शामिल किया जा सकता है:

    • 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
  • वीपीएन कोड को टेदरिंग मॉड्यूल से बाहर ले जाता है

Android 12, इन सुविधाओं के साथ कोड को 'तेथरिंग' मॉड्यूल में ले जाता है:

  • ऐप्लिकेशन से नेटवर्क कनेक्शन के लिए अनुरोध मिलना
  • सिस्टम से अनुरोध मिलना (उदाहरण के लिए, "इन ऐप्लिकेशन को एंटरप्राइज़ स्लाइस में डालें"; इसे Android 12 में जोड़ा गया है)
  • सिस्टम से टेलीफ़ोन कोड को अनुरोध भेजना, जो एचएएल एपीआई और मॉडेम की मदद से नेटवर्क या स्लाइस सेट अप करने की कोशिश करता है
  • netd को यह बताना कि हर ऐप्लिकेशन के हिसाब से ट्रैफ़िक को कैसे रूट किया जाए (Android 12 में जोड़ा गया)
  • NetworkCallback, getActiveNetwork, getNetworkCapabilities जैसे ConnectivityManager एपीआई की मदद से, ऐप्लिकेशन को यह बताना कि उनके नेटवर्क ट्रैफ़िक का क्या हो रहा है.

लागू करना

किसी डिवाइस पर 5G स्लाइसिंग की सुविधा इस्तेमाल करने के लिए, उस डिवाइस में ऐसा मॉडम होना चाहिए जो IRadio 1.6 HAL के साथ काम करता हो. साथ ही, उसमें setupDataCall_1_6 एपीआई होना चाहिए. यह एपीआई, डेटा कनेक्शन सेट अप करता है. साथ ही, 5G स्लाइसिंग की सुविधा के साथ काम करने के लिए, इन पैरामीटर को शामिल करता है:

  • trafficDescriptor: इससे मॉडेम को भेजे गए ट्रैफ़िक डिस्क्रिप्टर के बारे में पता चलता है
  • sliceInfo: EPDG से 5G हैंडओवर के मामले में इस्तेमाल किए जाने वाले नेटवर्क स्लाइस की जानकारी देता है
  • matchAllRuleAllowed: यह बताता है कि सभी मैच करने वाले डिफ़ॉल्ट यूआरएसपी के नियम का इस्तेमाल करने की अनुमति है या नहीं. टेलीफ़ोनी, डिफ़ॉल्ट नेटवर्क के लिए इसे 'सही है' पर सेट करता है, लेकिन स्लाइस के लिए नहीं. सभी मैच करने वाला नियम, डिफ़ॉल्ट नेटवर्क पर लागू होता है. जब कोई ऐप्लिकेशन किसी ऐसे स्लाइस का अनुरोध करता है जो उपलब्ध नहीं है, तो उस स्लाइस को 'उपलब्ध नहीं है' के तौर पर रिपोर्ट किया जाता है. अगर एंटरप्राइज़ नेटवर्क उपलब्ध नहीं है, तो एंटरप्राइज़ ऐप्लिकेशन के लिए, टेलीफ़ोनी फ़्रेमवर्क डिफ़ॉल्ट नेटवर्क पर स्विच कर सकता है.

मोडेम को getSlicingConfig एपीआई भी लागू करना होगा. ऐसा तब तक करना होगा, जब तक कि getHalDeviceCapabilities एपीआई के मुताबिक यह एपीआई काम न करता हो.

एंटरप्राइज़ के लिए ज़रूरी शर्तें

यहां उन ज़रूरी शर्तों के बारे में बताया गया है जिन्हें पूरा करने के बाद, Android Enterprise डिप्लॉयमेंट में डिवाइसों पर 5G नेटवर्क स्लाइसिंग का इस्तेमाल किया जा सकता है.

  • पक्का करें कि पूरी तरह से मैनेज किए जा रहे डिवाइस या वर्क प्रोफ़ाइल के साथ सेट अप किए गए कर्मचारी के डिवाइस, 5G SA मोड में काम करते हों. साथ ही, उनमें ऐसे मॉडेम हों जो setupDataCall_1_6 एपीआई के साथ काम करते हों.
  • स्लाइस के सेटअप और परफ़ॉर्मेंस या एसएलए की विशेषताओं पर, कैरियर पार्टनर के साथ काम करें.

वर्क प्रोफ़ाइल की मदद से सेट अप किए गए डिवाइसों पर, 5G स्लाइसिंग की सुविधा चालू करना

जिन डिवाइसों पर वर्क प्रोफ़ाइल सेट अप की गई है उनके लिए, AOSP में 5G नेटवर्क स्लाइसिंग डिफ़ॉल्ट रूप से बंद रहती है. नेटवर्क स्लाइसिंग की सुविधा चालू करने के लिए, एंटरप्राइज़ के आईटी एडमिन, EMM DPC की मदद से, हर कर्मचारी के हिसाब से, एंटरप्राइज़ नेटवर्क स्लाइस पर वर्क प्रोफ़ाइल ऐप्लिकेशन ट्रैफ़िक को रूट करने की सुविधा को चालू या बंद कर सकते हैं. इसके लिए, DevicePolicyManager (DPM) एपीआई (Android 12 में लॉन्च किया गया) में setPreferentialNetworkServiceEnabled वाले तरीके का इस्तेमाल किया जाता है.

कस्टम डीपीसी वाले EMM वेंडर को एंटरप्राइज़ क्लाइंट के साथ काम करने के लिए, DevicePolicyManager एपीआई को इंटिग्रेट करना होगा.

यूआरएसपी के नियम

इस सेक्शन में, कैरियर के लिए अलग-अलग स्लाइस कैटगरी के लिए यूआरएसपी के नियमों को कॉन्फ़िगर करने के बारे में जानकारी दी गई है. इन कैटगरी में, एंटरप्राइज़, सीबीएस, कम इंतज़ार, और ज़्यादा बैंडविड्थ वाला ट्रैफ़िक शामिल है. अलग-अलग स्लाइस कैटगरी के लिए यूआरएसपी नियमों को कॉन्फ़िगर करते समय, कैरियर को Android के हिसाब से इन वैल्यू का इस्तेमाल करना होगा.

आईडी वैल्यू ब्यौरा
OSId 97a498e3-fc92-5c94-8986-0333d06e4e47 Android के लिए OSId, वर्शन 5 का यूनीक आइडेंटिफ़ायर (यूआईडी) है. इसे नेमस्पेस ISO OID और "Android" नाम के साथ जनरेट किया जाता है.

कैरियर को हर स्लाइस ट्रैफ़िक के लिए, ट्रैफ़िक डिस्क्रिप्टर कॉम्पोनेंट के तौर पर "ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप" के साथ यूआरएसपी नियम कॉन्फ़िगर करने होंगे. उदाहरण के लिए, "ENTERPRISE" स्लाइस की वैल्यू 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345 होनी चाहिए. यह वैल्यू, OSId, OSAppId (0x0A) की लंबाई, और OSAppId को जोड़कर बनाई जाती है. ट्रैफ़िक डिस्क्रिप्टर कॉम्पोनेंट टाइप के बारे में ज़्यादा जानने के लिए, 3GPP TS 24.526 टेबल 5.2.1 देखें.

नीचे दी गई टेबल में, अलग-अलग स्लाइस कैटगरी के लिए OSAppId की वैल्यू के बारे में बताया गया है.

स्लाइस की कैटगरी OSAppId ब्यौरा
ENTERPRISE 0x454E5445525052495345 OSAppId, स्ट्रिंग "ENTERPRISE" का बाइट कलेक्शन है
ENTERPRISE2 0x454E544552505249534532 OSAppId, स्ट्रिंग "ENTERPRISE2" का बाइट कलेक्शन है
ENTERPRISE3 0x454E544552505249534533 OSAppId, स्ट्रिंग "ENTERPRISE3" का बाइट कलेक्शन है
ENTERPRISE4 0x454E544552505249534534 OSAppId, स्ट्रिंग "ENTERPRISE4" का बाइट कलेक्शन है
ENTERPRISE5 0x454E544552505249534535 OSAppId, "ENTERPRISE5" स्ट्रिंग का बाइट कलेक्शन है
CBS 0x434253 OSAppId, "CBS" स्ट्रिंग का बाइट कलेक्शन है
PRIORITIZE_LATENCY 0x5052494f524954495a455f4c4154454e4359 OSAppId, "PRIORITIZE_LATENCY" स्ट्रिंग का बाइट कलेक्शन है
PRIORITIZE_BANDWIDTH 0x5052494f524954495a455f42414e445749445448 OSAppId, "PRIORITIZE_BANDWIDTH" स्ट्रिंग का बाइट कलेक्शन है

यूआरएसपी के नियमों के उदाहरण

नीचे दी गई टेबल में, एंटरप्राइज़, सीबीएस, कम इंतज़ार, ज़्यादा बैंडविड्थ, और डिफ़ॉल्ट ट्रैफ़िक के लिए यूआरएसपी के नियमों के उदाहरण दिए गए हैं.

Enterprise 1

Enterprise 1 के लिए सहायता, Android 12 और उसके बाद के वर्शन में उपलब्ध है. ENTERPRISE1 ट्रैफ़िक के लिए, यूआरएसपी नियम का यह उदाहरण है:

यूआरएसपी नियम #1 (enterprise1)
प्राथमिकता 1 (0x01)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन एंटरप्राइज़
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन एंटरप्राइज़

Enterprise 2

Enterprise 2 के लिए सहायता, Android 13 और इसके बाद के वर्शन में उपलब्ध है. ENTERPRISE2 ट्रैफ़िक के लिए, यूआरएसपी के नियम का यह उदाहरण है:

यूआरएसपी का दूसरा नियम (enterprise2)
प्राथमिकता 2 (0x02)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534532
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन enterprise2
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन enterprise2

Enterprise 3

Enterprise 3 के लिए सहायता, Android 13 और उसके बाद के वर्शन में उपलब्ध है. ENTERPRISE3 ट्रैफ़िक के लिए, यूआरएसपी के नियम का यह उदाहरण है:

यूआरएसपी का नियम #3 (enterprise3)
प्राथमिकता 3 (0x03)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534533
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन enterprise3
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन enterprise3

Enterprise 4

Enterprise 4 के लिए सहायता, Android 13 और उसके बाद के वर्शन में उपलब्ध है. ENTERPRISE4 ट्रैफ़िक के लिए, यूआरएसपी नियम का यह उदाहरण है:

यूआरएसपी का नियम #4 (enterprise4)
प्राथमिकता 4 (0x04)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534534
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन enterprise4
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन enterprise4

Enterprise 5

Enterprise 5 के लिए सहायता, Android 13 और उसके बाद के वर्शन में उपलब्ध है. यहां ENTERPRISE5 ट्रैफ़िक के लिए यूआरएसपी नियम का उदाहरण दिया गया है:

यूआरएसपी का नियम #5 (enterprise5)
प्राथमिकता 5 (0x05)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534535
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन enterprise5
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन enterprise5

CBS

सीबीएस की सुविधा, Android 13 और इसके बाद के वर्शन में उपलब्ध है. सीबीएस ट्रैफ़िक के लिए यूआरएसपी नियम का उदाहरण यहां दिया गया है:

यूआरएसपी का नियम #6 (सीबीएस)
प्राथमिकता 6 (0x06)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 0x97A498E3FC925C9489860333D06E4E4703434253
रास्ता चुनने का ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन cbs
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन cbs

लाइव स्ट्रीमिंग करने और उसके दिखने के बीच इंतज़ार का समय कम रखना

कम इंतज़ार का समय, Android 13 और उसके बाद के वर्शन में उपलब्ध है. यहां LOW_LATENCY ट्रैफ़िक के लिए, यूआरएसपी नियम का उदाहरण दिया गया है:

यूआरएसपी का नियम #7 (इंतज़ार का समय कम होना)
प्राथमिकता 7 (0x07)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 0x97A498E3FC925C9489860333D06E4E47125052494f524954495a455f4c4154454e4359
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन प्रतीक्षा अवधि
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन प्रतीक्षा अवधि

ज़्यादा बैंडविड्थ

ज़्यादा बैंडविड्थ की सुविधा, Android 13 और उसके बाद के वर्शन में उपलब्ध है. HIGH_BANDWIDTH ट्रैफ़िक के लिए, यूआरएसपी नियम का यह उदाहरण है:

यूआरएसपी का नियम #8 (ज़्यादा बैंडविड्थ)
प्राथमिकता 8 (0x08)
ट्रैफ़िक के बारे में बताने वाला टैग #1
ओएस आईडी + ओएस ऐप्लिकेशन आईडी टाइप 97A498E3FC925C9489860333D06E4E47145052494f524954495a455f42414e445749445448
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY
दूसरा कॉम्पोनेंट: डीएनएन बैंडविथ
रास्ता चुनने का डिस्क्रिप्टर #2
प्राथमिकता 2 (0x02)
कॉम्पोनेंट #1: डीएनएन बैंडविथ

डिफ़ॉल्ट

यूआरएसपी नियम #9 (डिफ़ॉल्ट)
प्राथमिकता 9 (0x09)
ट्रैफ़िक के बारे में बताने वाला टैग #1
match-all लागू नहीं
रास्ता चुनने के लिए ब्यौरा #1
प्राथमिकता 1 (0x01)
कॉम्पोनेंट #1: एस-एनएसएसएआई एसएसटी:XX एसडी:YYYYYY

टेस्ट करना

5G नेटवर्क स्लाइसिंग की जांच करने के लिए, मैन्युअल तरीके से किए जाने वाले इस टेस्ट का इस्तेमाल करें.

जांच के लिए डिवाइस सेट अप करने के लिए, यह तरीका अपनाएं:

  1. पक्का करें कि यूआरएसपी नीति को ऐसे गैर-डिफ़ॉल्ट नियम के साथ कॉन्फ़िगर किया गया हो जो एंटरप्राइज़ कैटगरी से मैच करता हो. साथ ही, उससे जुड़ा रूट-सलेक्शन डिस्क्रिप्टर, एंटरप्राइज़ कैटगरी को एंटरप्राइज़ स्लाइस से मैप करता हो. साथ ही, ट्रैफ़िक को डिफ़ॉल्ट इंटरनेट स्लाइस पर ले जाने वाला डिफ़ॉल्ट नियम भी हो.

  2. पक्का करें कि डिवाइस पर वर्क प्रोफ़ाइल कॉन्फ़िगर की गई हो.

  3. डीपीसी के ज़रिए नेटवर्क स्लाइसिंग का इस्तेमाल करने के लिए ऑप्ट-इन करना

5G नेटवर्क स्लाइसिंग के व्यवहार की जांच करने के लिए, यह तरीका अपनाएं:

  1. पुष्टि करें कि एंटरप्राइज़ स्लाइस के साथ पीडीयू सेशन शुरू किया गया है (उदाहरण के लिए, किसी खास आईपी पते का इस्तेमाल करके) और वर्क प्रोफ़ाइल में मौजूद ऐप्लिकेशन उस पीडीयू सेशन का इस्तेमाल करते हैं.
  2. पुष्टि करें कि डिफ़ॉल्ट इंटरनेट स्लाइस के साथ एक अलग पीडीयू सेशन सेट अप किया गया है और निजी प्रोफ़ाइल में मौजूद ऐप्लिकेशन, पीडीयू सेशन का इस्तेमाल करते हैं.

5G स्लाइसिंग की सुविधा के लिए अपसेल

5G नेटवर्क स्लाइसिंग की सुविधा, Android 14-QPR1 से उपलब्ध है. इसकी मदद से, मोबाइल और इंटरनेट सेवा देने वाली कंपनियां अपने उपयोगकर्ताओं को 5G नेटवर्क स्लाइसिंग की मदद से, बेहतर नेटवर्क सुविधाएं (देरी और बैंडविड्थ) दे सकती हैं.

5G स्लाइसिंग अपसेल की सुविधा, खरीदारी के फ़्लो को चलाने के लिए, मोबाइल और इंटरनेट सेवा देने वाली कंपनी के एनटाइटलमेंट सर्वर से मिले TS.43 रिस्पॉन्स का इस्तेमाल करती है. कैरियर, रिस्पॉन्स का इस्तेमाल करके, कैरियर के खरीदारी वेबव्यू के यूआरएल की जानकारी दे सकते हैं. साथ ही, वेबव्यू पर ज़्यादा डेटा भेज सकते हैं और यह बता सकते हैं कि स्लाइस को कैरियर नेटवर्क पर उपलब्ध कराया गया है या नहीं.

कैरियर, कैरियर कॉन्फ़िगरेशन का इस्तेमाल करके, 5G स्लाइसिंग अपसेल की सुविधा के व्यवहार को पसंद के मुताबिक बना सकते हैं. इससे यह कंट्रोल होता है कि खरीदारी के अनुरोध किए जा सकते हैं या नहीं, ऐप्लिकेशन को प्रीमियम सुविधाओं का अनुरोध करने की अनुमति कब दी जाती है, और टेलीफ़ोन फ़्रेमवर्क, उपयोगकर्ता या नेटवर्क से जवाब मिलने में कितना समय इंतज़ार करता है.

5G स्लाइसिंग अपसेल की सुविधा, एक इंटरफ़ेस उपलब्ध कराती है. इसे DataBoostWebServiceFlow कहा जाता है. इसकी मदद से, Android और मोबाइल और इंटरनेट सेवा देने वाली कंपनी के वेबव्यू के बीच कम्यूनिकेशन की सुविधा मिलती है.

दूसरी इमेज में, 5G स्लाइसिंग अपसेल की खरीदारी का फ़्लो दिखाया गया है:

5G स्लाइसिंग अपसेल खरीदारी का फ़्लो

दूसरी इमेज. 5G स्लाइसिंग के लिए, अपसेल की सुविधा के साथ खरीदारी का फ़्लो.

TS.43 एनटाइटलमेंट प्रोसेस

जब कोई उपयोगकर्ता बेहतर नेटवर्क सुविधाओं का अनुरोध करता है, तो टेलीफ़ोनी फ़्रेमवर्क, अनुरोध की गई प्रीमियम सुविधा के लिए सेवा एनटाइटलमेंट कॉन्फ़िगरेशन का अनुरोध करता है. अगर TS.43 रिस्पॉन्स मान्य है, तो खरीदारी के अनुरोध को पूरा करने के लिए, टेलीफ़ोन फ़्रेमवर्क, एचटीटीपी रिस्पॉन्स के फ़ील्ड का इस्तेमाल करता है.

खरीदारी के फ़ील्ड को स्लाइस करना

TS.43 एनटाइटलमेंट कॉन्फ़िगरेशन में, स्लाइस की खरीदारी से जुड़े ये फ़ील्ड शामिल होते हैं:

पात्रता स्थिति

बटन: EntitlementStatus

शेड्यूल किस तरह का है: int

इस्तेमाल की जा सकने वाली वैल्यू: 0 (बंद है), 1 (चालू है), 2 (काम नहीं करती), 3 (प्रावधान), 4 (शामिल है)

प्रावधान स्थिति

बटन: ProvStatus

शेड्यूल किस तरह का है: int

इस्तेमाल की जा सकने वाली वैल्यू: 0 (प्रावधान नहीं किया गया), 1 (प्रावधान किया गया), 2 (उपलब्ध नहीं है), 3 (प्रोसेस जारी है)

स्लाइस की खरीदारी की मौजूदा स्थिति का पता लगाने के लिए, टेलीफ़ोन फ़्रेमवर्क, एनटाइटलमेंट स्टेटस और प्रोवाइज़न करने की स्थिति के कॉम्बिनेशन का इस्तेमाल करता है. नतीजा, इनमें से कोई एक हो सकता है:

अगर एनटाइटलमेंट की स्थिति 1 (चालू है) और प्रोविज़न करने की स्थिति 0 (प्रोविज़न नहीं किया गया) है, तो कैरियर वेबव्यू के ज़रिए बूस्टर खरीदने के लिए, उपयोगकर्ता को अपसेल सूचना दिखाई जाती है. नीचे दी गई टेबल में, प्रोवाइज़निंग और एनटाइटलमेंट स्टेटस वैल्यू के अलग-अलग कॉम्बिनेशन के लिए, टेलीफ़ोन फ़्रेमवर्क के व्यवहार के बारे में बताया गया है.

प्रावधान की स्थिति
तय नहीं किया गया (0) तय किया गया (1) उपलब्ध नहीं है (2) प्रोसेस जारी है (3)
एनटाइटलमेंट की स्थिति बंद है (0) काम नहीं हुआ काम नहीं हुआ काम नहीं हुआ काम नहीं हुआ
चालू है (1) वेबव्यू दिखाना पहले से खरीदा गया पहले से खरीदा गया जारी है
काम नहीं करता (2) काम नहीं हुआ काम नहीं हुआ काम नहीं हुआ काम नहीं हुआ
प्रोसवाइज़न (3) मोबाइल और इंटरनेट सेवा देने वाली कंपनी से जुड़ी गड़बड़ी मोबाइल और इंटरनेट सेवा देने वाली कंपनी से जुड़ी गड़बड़ी जारी है जारी है
शामिल है (4) मोबाइल और इंटरनेट सेवा देने वाली कंपनी से जुड़ी गड़बड़ी पहले से खरीदा गया पहले से खरीदा गया मोबाइल और इंटरनेट सेवा देने वाली कंपनी से जुड़ी गड़बड़ी

सेवा फ़्लो फ़ील्ड

TS.43 रिस्पॉन्स में, यूआरएल, उपयोगकर्ता का डेटा, और कॉन्टेंट टाइप की जानकारी दी जाती है, ताकि कैरियर की खरीदारी वाले वेबव्यू के व्यवहार को पसंद के मुताबिक बनाया जा सके. अगर कॉन्टेंट टाइप की जानकारी नहीं दी गई है, तो यूआरएल को GET अनुरोध के तौर पर लोड किया जाता है. अगर उपयोगकर्ता डेटा मौजूद है, तो उसे क्वेरी पैरामीटर (उदाहरण के लिए, https://www.android.com?encodedValue=Base64EncodedUserData) के तौर पर यूआरएल में जोड़ा जाता है. अगर वह मौजूद नहीं है, तो यूआरएल का इस्तेमाल वैसे ही किया जाता है (उदाहरण के लिए, https://www.android.com).
अगर कॉन्टेंट टाइप को JSON या एक्सएमएल फ़ॉर्मैट में बताया गया है, तो यूआरएल को 'पोस्ट करें' अनुरोध के तौर पर लोड किया जाता है. साथ ही, उपयोगकर्ता डेटा (अगर उसे Base 64 में एन्कोड किया गया है, तो उसे डिकोड किया जाता है) को 'पोस्ट करें' अनुरोध के डेटा के तौर पर भेजा जाता है.

यूआरएल

बटन: ServiceFlow_URL

शेड्यूल किस तरह का है: String

उदाहरण: "https://www.android.com"

उपयोगकर्ता का डेटा

बटन: ServiceFlow_UserData

शेड्यूल किस तरह का है: String

उदाहरण: "encodedValue=Base64EncodedUserData"

कॉन्टेंट का टाइप

बटन: ServiceFlow_ContentsType

शेड्यूल किस तरह का है: String

इस्तेमाल की जा सकने वाली वैल्यू: 0 (तय नहीं की गई), 1 (JSON), 2 (एक्सएमएल)

मोबाइल और इंटरनेट सेवा देने वाली कंपनी के कॉन्फ़िगरेशन

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 रिस्पॉन्स में खरीदारी का यूआरएल नहीं मिलता है, तो इस वैल्यू का इस्तेमाल किया जाता है. अगर TS.43 रिस्पॉन्स का यूआरएल या कैरियर कॉन्फ़िगरेशन, दोनों में से कोई भी मान्य नहीं है, तो खरीदारी का अनुरोध PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_DISABLED के नतीजे के साथ पूरा नहीं होता.

KEY_PREMIUM_CAPABILITY_SUPPORTED_ON_LTE_BOOL

डिवाइस के Long-Term Evolution (LTE) से कनेक्ट होने पर, प्रीमियम सुविधाओं को खरीदने की अनुमति है या नहीं. अगर true है, तो LTE और New Radio (NR), दोनों पर खरीदारी के अनुरोध किए जा सकते हैं. अगर false है, तो खरीदारी के अनुरोध सिर्फ़ एनआर पर किए जा सकते हैं. साथ ही, 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

मोबाइल और इंटरनेट सेवा देने वाली कंपनी या नेटवर्क की वजह से खरीदारी न हो पाने के बाद, खरीदारी के अगले अनुरोधों को रोकने के लिए तय किया गया समय. अगर एनटाइटलमेंट की जांच पूरी नहीं हो पाती है, यूआरएल उपलब्ध नहीं होता है या कैरियर के खरीदारी वाले यूआरएल से पता चलता है कि कोई समस्या है, तो यह बैकऑफ़ टाइमर शुरू हो जाता है. यह टाइमर चालू होने पर, खरीदारी के अनुरोध PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED के नतीजे के साथ पूरे नहीं होते.

KEY_PREMIUM_CAPABILITY_NETWORK_SETUP_TIME_MILLIS_LONG

वह समय जिसके अंदर नेटवर्क को प्रीमियम खरीदारी की सुविधा के लिए, स्लाइसिंग कॉन्फ़िगरेशन सेट अप करना होगा. इस दौरान, खरीदारी के लिए किए गए बाद के अनुरोध ब्लॉक कर दिए जाते हैं और PURCHASE_PREMIUM_CAPABILITY_RESULT_PENDING_NETWORK_SETUP का नतीजा दिखाया जाता है. अगर नेटवर्क समय पर स्लाइसिंग कॉन्फ़िगरेशन सेट अप नहीं कर पाता है, तो ऐप्लिकेशन फिर से प्रीमियम सुविधाओं को खरीदने का अनुरोध कर सकते हैं. जब तक स्लाइसिंग कॉन्फ़िगरेशन नहीं भेजा जाता, तब तक Telephony किसी खरीदारी को पूरा नहीं मानता. भले ही, उपयोगकर्ता ने कैरियर को पैसे चुकाए हों या नहीं.

JavaScript इंटरफ़ेस

जब उपयोगकर्ता, नेटवर्क बूस्ट की सूचना पर क्लिक करता है, तो उसे कैरियर की खरीदारी के यूआरएल वाला WebView ऑब्जेक्ट दिखता है. कैरियर, स्लाइस खरीदने के ऐप्लिकेशन के साथ इंटरैक्ट करने के लिए, अपनी खरीदारी वाली वेबसाइट में DataBoostWebServiceFlow JavaScript इंटरफ़ेस में दिए गए एपीआई का इस्तेमाल कर सकते हैं.

मोबाइल और इंटरनेट सेवा देने वाली कंपनी की वेबसाइट, getRequestedCapability() तरीके से अनुरोध की गई प्रीमियम सुविधाएं पा सकती है.

खरीदारी पूरी होने पर, कैरियर की वेबसाइट को notifyPurchaseSuccessful() या notifyPurchaseSuccessful(duration) के ज़रिए, स्लाइस खरीदने वाले ऐप्लिकेशन को सूचना देनी होगी. duration एक वैकल्पिक पैरामीटर है, जो स्लाइस की अवधि के बारे में बताता है.

अगर खरीदारी पूरी नहीं होती है, तो कैरियर की वेबसाइट को notifyPurchaseFailed(code, reason) तरीके से, स्लाइस खरीदने वाले ऐप्लिकेशन को इसकी सूचना देनी होगी. इसमें code, गड़बड़ी का कोड होता है, जो गड़बड़ी की वजह बताता है. अगर गड़बड़ी का कोड नहीं पता है, तो reason, गड़बड़ी की ऐसी वजह होती है जिसे कोई भी व्यक्ति पढ़ सकता है.

अगर इनमें से किसी भी तरीके को कॉल नहीं किया जाता है, तो खरीदारी को पूरा नहीं माना जाएगा और खरीदारी के अनुरोध की समयसीमा खत्म हो जाएगी.

यहां दिए गए कोड, खरीदारी न हो पाने की वजह बताने वाले मान्य कोड हैं. इन्हें कैरियर की वेबसाइट दिखा सकती है:

खरीदारी पूरी होने के बाद, कैरियर को उपयोगकर्ता के डिवाइस पर PRIORITIZE_LATENCY स्लाइस के साथ, यूआरएसपी के नियम अपडेट करने होंगे.