WAP سیستمی است که در آن پروتکل ارتباطی و محیط برنامهنویسی جهت پیادهسازی سیستمهای اطلاعاتی مبتنیبر وب روی گوشیهای تلفن همراه ارایه میشود.
پروتکل ارتباطی
پروتکل ارتباطی که در حال حاضر در اینترنت برای دیدن صفحات وب استفاده میشود HTTP است. (البته در سطح شبکه اینترنت برای فعالیتهای متفاوت پروتکلهای متفاوتی در سطح لایه Application استفاده میشود ولی پروتکلی که جهت دیدن سایتها از آن استفاده میشود HTTP است).
وقتی آدرس سایتی را به اینترنت اکسپلورر میدهید تا صفحه مربوط به آن سایت را ببینید، در پشت پرده، اینترنت اکسپلورر بستهای را که حاوی اطلاعاتی جهت درخواست صفحه آن سایت است به اینترنت میفرستد. اطلاعات این بسته به فرمتی است که در پروتکل HTTP تعریف شده است. با این توصیف، وقتی صحبت از تلفن همراه میشود در نگاه اول مسأله حل شده است و فقط کافی است اینبار تلفن همراه شما چنین بستهای را ساخته و به اینترنت بفرستد. ولی اینکار برای یک تلفن همراه شدنی نیست. زیرا بستههایی که در پروتکل HTTP ساخته میشوند حجم زیادی دارند و لذا لازم است فرستنده دارای حافظه مناسبی باشد.
Wireless Application Environment (WAE) |
6 |
Wireless Session Protocol (WSP) |
5 |
Wireless Transacthion Protocol (WTP) |
4 |
Wireless Transport layer Security (WTLS) |
3 |
Wireless Datagram Protocol (WDP) |
2 |
Bearer layer (GSM,CDMA,GPRS) |
1 |
لایه های پروتکل WAP |
در حالی که تلفن همراه از نظر حافظه بسیار محدود است (البته به تازگی گروهی از تلفنهای همراه با نام Smart phone وارد بازار شدهاند که از نظر حافظه نسبت به انواع قدیمیتر بسیار قویترند.) همچنین جهت پردازش بستههایی که با پروتکل HTTP ارسال و دریافت میشوند، نیاز به پردازشگری قویتر از آنچه که در یک تلفن همراه وجود دارد، میباشد. لذا جهت ورود تلفن همراه، به دنیای اینترنت ضروری است با توجه به قابلیتهای یک تلفن همراه پروتکل ویژهای طراحی شود. این پروتکل WAP نام دارد. البته WAP فراتر از یک پروتکل ساده در لایهApplication میباشد و بهتر است به آن پشته پروتکل Protocol Stack) WAP) بگوییم.
پشته پروتکلWAP دارای شش لایه میباشد و یک ارتباط connection less را در دنیای تلفنهای همراه ایجاد میکند. در اینجا اشاره مختصری به کار هر یک از لایهها میکنیم.
Bearer Layer:
1 - معادل همان لایه فیزیکی در TCP/IP میباشد ولی اینبار محیط ارتباطی wireless است و لذا پروتکلهای دیگری در این لایه استفاه میشود.
WDP:
2 - این لایه در واقع همان UDP است. به عبارت دیگر فعالیت و ساختاری مانند پروتکلUDP در لایه انتقال TCP/IP دارد.
3- WTLS: لایهای است که امنیت ارتباطات را فراهم میکند. در این لایه از پروتکل SSL استفاده میشود.
4- WTP: این لایه مدیریت درخواستها و پاسخها را برعهده دارد.
5- WSP: همانند لایه session در OSI میباشد، با تفاوتهای مختصری جهت بهینهسازی.
6- WAE: همانند لایه Application در TCP/IP میباشد. در واقع تمام برنامههایی که پیادهسازی میشوند در این لایه قرار دارند و کاربر تلفن همراه و برنامهنویس WAP، هر دو، با این لایه ارتباط برقرار میکنند.
مشکل عدم توانایی تلفن همراه جهت استفاده از پروتکل HTTP با طراحی پشته پروتکلی جدیدی با در نظر گرفتن محدودیتهای تلفن همراه حل شد، ولی استفاده از این پروتکل مشکل جدیدی را ایجاد میکند. که ضروری است تدبیر خاصی برای حل آن اندیشیده شود.
دو پروتکل متفاوت، دو دنیای متفاوت
فرض کنید تصمیم داریم که با استفاده از تلفن همراه به اینترنت وصل شویم و از اطلاعات موجود در اینترنت استفاده کنیم. برای اینکار ضروریست تلفن همراه با زبانی (یا پروتکلی) که در حال حاضر در اینترنت استفاده میشود
(HTTP) صحبت کند ولی همانطور که اشاره شد این امر امکانپذیر نمیباشد. راهحل مشکل استفاده از یک مترجم میباشد، مترجمی که پروتکل تلفنهای همراه (WAP) را به پروتکل وب کنونی (HTTP) و برعکس ترجمه کند. این مترجم اصطلاحا ًWAP gateway نامیده میشود. (به شکل نگاه کنید.)
WAP gateway در واقع یک نرمافزار است که بین این دو شبکه قرار میگیرد و وقتی که درخواست صفحه خاصی از تلفن همراه ارسال میشود،WAP gateway این درخواست را گرفته و به درخواستی با فرمت HTTP تبدیل کرده و به اینترنت میفرستد و در ادامه پس از دریافت پاسخ ازweb server مربوطه، پاسخ را به فرمت پروتکل WAP تبدیل کرده و به تلفن همراه برمیگرداند.WAP gateway میتواند در شبکه مخابراتی و یا در شبکه ISP و یا در شبکه خودتان قرار گیرد. درحالحاضر شرکتهای مختلف گونههای متفاوتیاز WAP gateway را ارایه کردهاند. توجه کنید که برخی از تولیدکنندگان قابلیتهای RAS را هم به gateway خود اضافه کردهاند تا به نصبRAS server و تنظیم آن وجود نداشته باشد.
Browser
تا اینجا پروتکل ارتباطی و نحوه ارتباط با اینترنت مشخص شد. مشکل دیگری که وجود دارد عدم وجود Browser یا مرورگر در تلفن همراه میباشد. تلفن همراه نمیتواند از IE که در PC استفاده میشود استفاده کند. برای حل این مشکل، تولیدکنندگان گوشی در قسمتی از ROM دستگاه یک micro browser قرار دادهاند که در واقع کاری شبیه به اینترنت اکسپلورر ویندوز میکند. البته در چند سال آینده این ریزمرورگرها روی سیمکارت قرار خواهند گرفت که این امر جهت راحتی در پیادهسازی سیستمهای WAP میگیرد. (همانطور که در حال حاضر ممکن است یک مرورگر صفحهای را به گونه خاصی نمایش دهد و مرورگر دیگری به شکل دیگر، در دنیای تلفنهای همراه هم مرورگرهای مختلفی وجود دارد.
محتویات سایت
محتویات سایتهای اینترنتی که در اینترنت اکسپلورر مشاهده میکنید با زبان HTML و یا XML و... نوشته میشوند. اینترنت اکسپلورر محتویات یک فایل HTML را خوانده و آنرا تفسیر میکند و به صورتی که لازم است نمایش میدهد بااینوصف، ریزمرورگر هم لازم است صفحات HTML را گرفته و تفسیر کرده و نمایش دهد. ولی اینکار عملی نیست. اولاً جهت نمایش یک صفحه HTML، صفحه نمایش بزرگی لازم است که یک تلفن همراه ندارد. ثانیاً حجم فایلهای HTML زیادتر از آن است که در یک تلفن همراه معمولی قرار بگیرد. ثالثا جهت پردازش TagهایHTML نیاز به پردازندهای قویتر از آنچه که در تلفن همراه موجود است میباشد. طراحان WAP با ارایه زبانی مانندHTML ولی مناسب برای یک تلفن همراه این مشکل را حل کردند.
یعنی زبانی به نام WMLیا Wireless Markup Language که جهت پردازش صفحات WML هم زبانی به نام WML Script ایجاد شده است. برای تبدیل کدهایHTML به WML نیز نرمافزارهای دیگری ساخته شده است ولیکن عملکرد آنها چندان مطلوب نبوده است. لذا اگر قصد دارید سایتی را جهت استفاده تلفنهای همراه پیادهسازی کنید بهتر است از همان ابتدا صفحاتWML را خودتان بنویسید (WMLبسیار شبیه بهHTML است) و رویweb server تان قرار دهید. اگر با ASP.NET آشنایی کافی دارید میتوانید با استفاده از امکاناتی که مایکروسافت درVS.NET جهت تولید سایت برای PDA ها قرار داده است سایت خود را پیادهسازی کنید. البته درVS.NET مفاهیمی غیرازآنچه که درWML خواهید دید نیز مطرح میشود.
در موردweb server هم میتوانید از IIS مایکروسافت استفاده کنید و فقط تنظیمات خاصی را روی آن باید انجام دهید.
دنیایWAP مفاهیم ومسایل دیگری هم دارد که در اینجا مطرح نشدند ولی امیدوارم این مقاله دید اولیهای را جهت وارد شدن به این وادی به شما داده باشد