راه پرداخت
رسانه فناوری‌های مالی ایران

همه چیز درباره پروتکل USSD

USSD یک مکانیزم انتقال اطلاعات بر بستر شبکه GSM می باشد. USSD یک ارتباط REAL-TIME در شبکه را در اختیار قرار می دهد. در این روش مدت زمان انتظار جهت پاسخگویی بسیار کمتر از روش SMS است وبر مبنای یک جلسه کاری (SESSION-BASED) استوار است.

 .

یک پیام USSD می‌تواند در حدود ۱۸۲ کاراکتر باشد. با استفاده از USSD می‌توان بین نرم‌افزارهای نوشته شده برای موبایل و شبکه اپراتور موبایل ارتباط برقرار نمود. پیام‌ها به صورت دیجیتالی و با استفاده از کلیدهای * و # ارسال می‌گردند و به کاربر اجازه می‌دهد که به سادگی اطلاعاتی را به شبکه ارسال و یا دریافت نماید.

.

اولین نسخه از USSD با عنوان «PHASE1» یا «MAP1» نامگذاری شده بود و حرفا قادر به ارسال اطلاعات از یک HEADSET به گوشی موبایل بود و هیچگونه جلسه کاری را بین گوشی و HEADSET ایجاد نمی‌کرد.

.

در MAP2 از USSD قابلیت‌های بیشتری افزوده گردید که این تکنولوژی را قادر به برقراری جلسات کاری می‌نمود. در این نسخه سرور شبکه موبایل قادر به ذخیره سازی پیام در USSD می‌باشد.

 .

به صورت کلی عملکرد USSD به دو حالت زیر تقسیم بندی می‌شود

۱- مدیریت در سمت موبایل (PULL) (پشتیبانی شده در GSM2.94)

2- مدیریت در سمت شبکه (PUSH) (پشتیبانی شده در GSM3.9)

 .

در بعد امنیتی، USSD دارای ساختاری مجزا برای تامین امنیت نمی باشد و از استانداردها و مکانیزم‌های امنیتی شبکه GSM/UMTS استفاده می‌کند.

در واقع یکی از مشخصه‌های اصلی پیام‌های USSD عدم ذخیره سازی در سمت کلاینت یا همان موبایل می‌باشد، در مقام مقایسه، USSD بیشتر مشابه TELNET بوده و SMS مشابه EMAIL است.

.

زیر ساخت‌های مورد نیاز در USSD

یک شبکه موبایل شامل تجهیزات و دستگاه‌های مربوط به مکالمات END- TO – END، مدیریت مشترکین و جابجایی گیرنده‌ها می باشد و همانند یک رابطه بین سیستم GSM و تلفن ثابت PSTN عمل می‌کند. این شبکه شامل سرورهای متعددی ازجمله MSCها AUC ، HLR ، VLR، EIR می‌باشد.

.

MSC

مرکز سرویس‌های سوئیچینگ موبایل است که وظیفه راه اندازی یک مکالمه جدید را بر عهده دارد (CALL SETUP)، این سرور یک ارتباط با مرکز تلفن ثابت برقرار می‌کند، عملکردهایی مانند ارائه صورت حساب مشترکین نیز بر عهده این مرکز می‌باشد.

.

Home Location Register User

یا ثبت کننده محل اصلی کاربر، یک پایگاه داده متمرکز شامل اطلاعات تماس مشترکین شبکه می باشد خاصیت اصلی این سرورها این است که هر مشترک می تواند تنها در یک HLR ثبت شده باشد.

.

Visitor Location Resisl

یا ثبت کننده محل یک استفاده کننده، در واقع پایگاه داده ای شامل اطلاعات موبایل‌هایی است که در حال حاضر در حوزه MSC کنترلی در حال حرکت می باشند. زمانی که یک موبایل وارد محدوده یک MSC جدیدی وارد می شود، سرور VLR که به آن MSC متصل است، اطلاعات موبایل مورد نظر از ULR را درخواست می کند. ULR نیز اطلاعات موبایل را به آن MSC ارسال می کند.

زمانی که آن موبایل بخواهد مکالمه ای را برقرار کند سرور VLR تمامی اطلاعات مورد نیاز جهت برقراری تماس را ارائه می کند و نیازی به پرسش مجدد از سرور HLR نمی باشد . بطور خلاصه می‌توان گفت که VLR یک HLR توزیع شده است.

.

روش دریافت و ارسال اطلاعات از موبایل به مرکز

با توجه به تغییر دائم مکان مشترکین در شبکه نیاز به مرکزی داریم که اطلاعات تمام مشترکین یک کشور یا یک شرکت ارائه سرویس موبایل در آن ثبت شده باشد تا هر زمان که به این اطلاعات نیاز بود بتواند در اختیار شبکه قرار دهد. به این مرکز HLR گویند. این مرکز به صورت متمرکز در یک یا نقاط محدودی در یک کشور ایجاد می شود و برای اینکه یک مشترک امکان استفاده از شبکه را داشته باشد به مشترک کارتی به نام SIM داده می شود که این کارت وسیله شناسایی مشترک در شبکه می باشد. بنابراین مشترک با این کارت می تواند به راحتی در هر نقطه کشور با شبکه ارتباط برقرار نماید.

.

نحوه انتقال پیام‌های USSD به سرور

برخلاف SMS که ازفضای خالی داده ای شبکه جهت ارسال اطلاعات استفاده می کند ، در USSD از فضای ارسال صوت استفاده می شود بنابراین از لحاظ میزان امنیت در حد بسیار بالایی قرارداشته و امکان شنود آن به سختی امکان پذیر می باشد. روش کار بدین صورت می باشد ،زمانیکه یک پیام با فرمت USSD ارسال می شود، دستگاه موبایل با آن پیام همچون یک تماس صوتی برخورد کرده و تماس مربوطه را به گیرنده BTS ارسال می نماید. BTS نیزپس از دریافت پیام آن را به سرور اصلی و در نهایت به MSC منتقل می کند.

.

MSC بدون هیچگونه پردازشی بر روی USSD آن را به سرور VLR و سپس به HLR ارسال می کند. حال نرم افزاری که به منظور پردازش پیام در USSD در نظر گرفته شده است بر روی سرور HLR و پس از پردازش پیام رسیده و تهیه پاسخ لازم، نسبت به ارسال پاسخ به سرور VLR. و سپس MSC و در نهایت دستگاه موبایل یا MS اقدام می کند.

.

مسئله حایز اهمیت در خصوص استفاده از USSD همزمانی آن در انجام تراکنش‌ها و استفاده از فضای VOICE در ارسال داده‌ها می باشد. چراکه در صورت ازدست رفتن آنتن دهی به هنگام برگزاری یک جلسه با شبکه، کلیه اطلاعات رد و بدل شده از بین می‌رود که به منظور برطرف کردن این قضیه بایستی از ترکیب این روش با یک روش نرم افزاری استفاده کرد.

.

در حال حاضر براساس استانداردها و پروتکل های ارائه شده توسط «انیستتو استاندارد ارتباطی اروپا» هیچکدام از سرویس دهندگان خدمات موبایل داده های رد و بدل شده در قالب USSD بربستر شبکه را بر روی سرور URL , VLR ذخیره نمی کنند. البته این مسئله به عنوان یک ممنوعیت مطرح نشده است و صرفا به منظور حفظ بازدهی شبکه ها توصیه شده است.

.

قالب پیام‌های USSD

براساس استاندارد شماره ۱۰۰۶۲۵ موسسه ETSI روش شماره گذاری در USSD به صورت *۱XX# تعریف شده است یک اپراتور ممکن است که براساس نیازهای خود سرویس‌هایی را از *۱۰۰# تا *۱۴۹# تعریف نموده باشد که پس از شماره گیری توسط کاربر، سرویس مناسب ه وی داده شود. کدهایی که درباره *۱۵۰# تا *۱۹۹# جهت استفاده خود اپراتورهای موبایل ذخیره شده اند که ارتباط دستگاه کاربر با شبکه موبایل را مدیریت نماید.

.

USSD پروتکلی در کنار SMS

USSD پروتکلی که در بستر شبکه GSM کار میکند و یک ارتباط بلادرنگ (real time) را در شبکه قرار میدهد و یک تکنولوژی منحصر بفرد GSM است.

اولین نسخه از USSD به عنوان phase1 یا map1 نامگذاری شده بود و قادر به ارسال اطلاعات از یک هدست و گوشی موبایل بود و هیچگونه جلسه کاری بین این دو صورت نمی‌گرفت که چنین مشکلی در نسخه بعدی USSD یعنی map2 حل شد و دو طرف ارتباط قادر به برقراری جلسات کاری (session) شدند و سرور شبکه موبایل قادر به ذخیرسازی پیام در USSD شد.

در این پروتکل مدت زمان انتظار جهت پاسخگویی خیلی کمتر از SMS است و بر مبنای یک جلسه کاری (session-bassed) می باشد. یک پیام USSD میتواند در حدود 182 کاراکتر باشد که پیام‌ها با استفاده از کلیدهای * و # بصورت دیجیتالی ارسال می گردند.

.

با استفاده از USSD می‌توان بین نرم‌افزارهای نوشته شده برای تلفن همراه و شبکه اپراتور تلفن همراه ارتباط برقرار نمود و کارکرد آن به دو دسته تقسیم می‌شود:

1- مدیریت در سمت موبایل (کاربر یا کلاینت Pull)

2- مدیریت در سمت شبکه (سرویس دهنده یا سرور Push)

از مشخصه‌های اصلی پیام های USSD عدم ذخیره سازی در سمت کاربر است.

.

تفاوت USSD با SMS را اگر بخواهیم با یک مثال کاری بیان کنیم اینگونه است که USSD بیشتر شبیه telnet می باشد و هیچ منوی خاصی برای ارسال و دریافت دستورات USSD وجود ندارد و کاربر می تواند مستقیما از طریق صفحه اولیه تلفن همراه اقدام به ارسال دستورات USSD کند اما SMS بیشتر شبیه Email است.

USSD براساس ارتباط است و این ارتباط از طریق کانال صوتی (کانالی تلفنی در آن مبادله میشوند) و سوییچ مداری می باشد و دستورات را بصورت صوت می شناسد و می تواند برای شناسایی مشتری هم مورد استفاده قرار بگیرد پس مشکل تاخیر SMS را ندارد ولی خاصیت ذخیره هم ندارد و اگر پوشش شبکه از بین برود تعامل با کاربر قطع میشود و کاربر باید ارتباط را مجددا آغاز کند و مسلما ارتباط مستقیم تلفن با تلفن را پشتیبانی نخواهد کرد.

USSD خودش به تنهایی از لحاظ امنیتی دارای ساختاری برای تامین امنیت نیست و از استاندارد و مکانیزم کانال صوتی که در شبکه GSM قرار دارد استفاده می کند.

.

از کاربردهای استفاده از این پروتکل را می توان به مثال‌های زیر اشاره کرد:

  • – بانکداری تلفن همراه
  • – تماس خدمات
  • – خدماتی نظیر(اعلام اخبار،آب و هوا،…)
  • – خدمات گفتگو (مسابقه،نظرسنجی،A&Q)
  • – سرویس نظرسنجی
  • – سرویس دایرکتوری
  • – و …

.

کاربرد تماس خدمات از نمونه های بارز استفاده از این پروتکل در ایران می باشد که به وسیله آن می توان از مانده اعتبار سیم کارت های اعتباری مطلع شد.

.

در اینجا نگاهی کوتاه به سرویس دایرکتوری می اندازیم؛

این سرویس احتیاج به سیستم Back end دارد (تمام فعالیت های مربوط به سفارش گیری،مدیریت موجودی،پردازش پرداخت،محاسبات و امورمالی،بسته بندی و ارسال در Back end تجارت قرار میگیرد) که پایه ان بر دو نوع سرویس می‌باشد. یکی سرویس دایرکتوری معکوس است و دیگری هم سرویس دایرکتوری طبیعی است.

در سرویس دایرکتوری معکوس کاربر با کد دستوری مثل *111* shomare fard ya sherkat mored nazar# با فرد یا شرکت مورد نظر خود درخواست جلسه می کند و سیستم فرد یا شرکتی که به این شماره اختصاص دارد را برمیگرداند.

در حالی که در سرویس دایرکتوری طبیعی با ارسال کد دستوری مثل *111# یک گفتگو با کاربر آغاز می شود به اینگونه که جهت جستجو شروع به پرسش هایی نظیرنام فرد یا شرکت مورد نظر کاربر خواهد شد و اطلاعاتی هم نظیر شهر یا خیابان محل سکونت کاربر داده خواهد شد تا کاربر راحت تر بتواند فرد یا شرکت مورد نظر خود را پیدا کند که مسلما این سرویس تا زمانی که فرد مورد نظر پیدا شود ادامه دارد.

.

پس سرویس دایرکتوری معکوس فقط در یک مرحله انجام خواهد شد و سرویس دایرکتوری طبیعی به بیش از یک مرحله جهت پیدا کردن افراد بطول می انجامد.

در بازار ایران اپراتورها هنوز قابلیت محاسبه هزینه سرویس این پروتکل را ندارند و رایگان می باشد.

تنها کاربرد از این پروتکل که در حال حاضر در ایران رو به رشد است سیستم بانکداری تلفن همراه می باشد که اکثریت بانک ها استفاده از این پروتکل را در برنامه های کاربردی (که مختص تلفن همراه می باشند) گنجانده اند.که در این صورت جهت استفاده از خدمات بانک احتیاج به گوشی تلفن همراهی خواهد بود که برنامه کاربردی اختصاص داده شده را پشتیبانی کند(گوشی های برنامه خور).که در این صورت نوع شبکه تلفن همراه مد نظر نیست و از هر شبکه ای از تلفن همراه می توان استفاده نمود و فقط محدودیت استفاده از این خدمات ، در نوع گوشی های تلفن همراه می باشد یعنی فقط گوشی های برنامه خور…

اما فقط معدود بانک هایی هستند که این برنامه کاربردی را بر روی سیستم مراکز اپراتور پیاده کردند تا بتوان با هر گوشی تلفن همراه دلخواه (حتی گوشی هایی که برنامه خور هم نیستند) و با استفاده از شبکه اپراتور از خدمات این بانک ها بهره مند شد.که محدودیت در این نوع روشِ استفاده از USSD ،فقط در نوع شبکه تلفن همراه می باشد و باید آن شبکه ای از تلفن همراه انتخاب شود که بانک مورد نظر برنامه کاربردی خود را روی آن پیاده سازی کرده است.

در صورت علاقه می‌توانید لیست تمام کد‌های USSD بانکی و شرکت‌های پرداخت را به همراه خدماتی که هر کدام ارائه می‌دهند در سایت راه پرداخت مشاهده کنید. (+)

منبع: وبلاگ بانک روید – علیرضا اسلامی زاد

24 دیدگاه
  1. saeid می‌گوید

    با سلام و تشکر از سایت خوبتون
    من اطلاعات زیاذی تو زمینه پرداخت الکترونیک و سیستم های بانکی ندارم
    اما یه سوال بد جور ذهنم رو مشغول کرده و اونم این که درآمد شرکت های مثل آسان پرداخت و… چیه که تا این حد تبلیغات دارن و جوایز میدن ؟
    بر چه آساس این درآمد محاسبه و از کجا تامین میشه
    چون ار مشترکین که هیچ هزینه ای دریافت نمیشه ؟

    1. ناشناس می‌گوید

      سلام دوست عزیز.
      خب این معلومه درامدشان از همان بانکها تعمین میشه با هر بار استفاده از اپلیکیشن یا کدهای ussd مقدار درصدی از بانک دریافت میکنند.
      ناچیز اما زیاد.
      مثال قطره قطره وانگهی دریا شود را که شنیدی.
      اگه خوب به ریال های حسابت باشه متوجه میشی

    2. طاهره می‌گوید

      چرا ussd گوشی من فارسی نیست

  2. milad G p H می‌گوید

    سلام
    ؟ داشتم در مورد ussd
    چطور میشه مواردی رو که در استفاده از ussd در اون ثبت شده، پاک کرد ؟
    مثلا برای خرید شارژ در دفعات بعد یکسری از داده ها ذخیره می شن ، چطور میشه پاکشون کرد؟
    —– در صورت امکان پاسخ رو ایمیل کنید،ممنون.

    1. ناشناس می‌گوید

      2

  3. ناشناس می‌گوید

    با سلام
    خدمات USSD می تواند مشکلات مربوط به پایین بودن سرعت اینترنت در ایران را برطرف کند
    باتشکر

  4. اشکان می‌گوید

    سلام
    از لحاظ امنیت متوجه نشدم مشکلی داره یا نه؟
    آیا کاملا تظمین شده هست؟

    1. صبا می‌گوید

      سلام،شرکت ما میتونه این کد رو خدمتتون ارائه بده تا شما یک کد ussd در اختیار داشته باشین

  5. حسن قلیچ لی می‌گوید

    سلام خسته نباشید من چطور میتونم کد ussd برای خودم طراحی و اجرا کنم تا بقیه مردم هم بتونن از اون خدمات بگیرن؟

    1. پویا می‌گوید

      سلام
      مجوز خاصی نیاز نیست،تماس بگیرید در خدمت هستم.

      1. محمد می‌گوید

        سلام و خسته نباشید ببخشید من میخواهم کد دستوری ussd برای خودم فعال کنم امکانش هست راهنمایی کنید

    2. ناشناس می‌گوید

      شرکت شما چیه؟

  6. ناشناس می‌گوید

    چگونه میتوان سرویسussd را برای یک شرکت یا شخص حقیقی دریافت
    کرد

  7. مجید می‌گوید

    چطور میشه برای یه استارتاپ جدید کد USSD گرفت؟ مجوز خاصی میخواد؟

    1. فاطمه قوّتی می‌گوید

      با شرکت‌های PSP که ارائه‌دهنده کد دستوری هستند تماس بگیرید.

  8. مرتضی می‌گوید

    بسیار عالی بود مرسی

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.