فناوري پوش (Push)، يا سرور پوش، نوعي از ارتباطات مبتني
بر اينترنت است كه درخواست براي تراكنش جديد از سوي سرور يا ناشر اطلاعات
ارسال ميشود. اين فناوري درست نقطه مقابل فناوري پول (Pull) است كه
درخواست براي تراكنش و ارسال اطلاعات از سمت گيرنده يا مشتري (Client)
ارسال ميشود.
سرويسهاي مبتني بر فناوري پوش بر
مبناي اطلاعاتي هستند كه در ادامه توضيح داده خواهد شد. اين معماري از
انتشار اطلاعات را، مدل انتشار/اشتراك ميگويند. مشتري در كانالهاي مختلف
اطلاعاتي مشترك ميشود. هر موقع محتواي جديدي در اين كانال ايجاد شود، سرور
اين اطلاعات را به كاربر ميفرستد.
كنفرانسهاي همزمان و پيامرسانهاي
برخط مثالهاي عادي سرويس پوش هستند. پيغامهاي چت و گاهي اوقات فايلها
بهمحض اينكه توسط سرويسگيرنده دريافت شد، از طريق همين فناوري پوش به
كاربر منتقل ميشوند. هم برنامههاي غيرمتمركز ازجمله (WASTE) و برنامههاي
متمركز مثل IRC از اين سرويس پشتيباني ميكنند. ارسال فايل از طريق سرويس
پوش به اين معناست كه فرستنده ارسال داده را شروع ميكند و گيرنده درخواستي
براي آن ارسال نميكند.
ايميل نيز يك سرويس پوش بهحساب ميآيد: پروتكل SMTP بر
مبناي پروتكل پوش عمل ميكند. هر چند در آخرين گام، يعني از سرور ايميل به
كامپيوتر روميزي از يك پروتكل پول مثل POP
3
يا IMAP استفاده ميشود.
سيستمهاي ايميلخوان مدرن اين قسمت
را با عمليات پل كردن سرور بهصورت مداوم انجام ميدهند و بهصورت مداوم
ايميلهاي جديد را چك ميكنند. پروتكل IMAP نيز دستوري بهنام IDLE دارد كه
بهسرور اجازه ميدهد با كاربر تماس گرفته و زمان رسيدن نامه جديد را به
او اطلاع دهد. تلفنهاي همراه بلكبري اوليه نيز اولين مثال موبايلي فناوري
پوش در ايميلخواني روي موبايل بودند.
يكي ديگر از انواع استفادههاي فناوري
پوش، شبكه PointCast است كه در دهه 90 توجه زيادي را بهخود جلب كرد. اين
شبكه اخبار و نتايج بازار بورس را به كاربران ميفرستاد. نتاسكيپ و
مايكروسافت اين شبكه را در زمان اوج نبرد مرورگرها بهطور پيشفرض پشتيباني
ميكردند اما اين شبكه بعدها با ظهور RSS كه از فناوري پول استفاده
ميكرد، محو شد.
از
ديگر كاربردهاي پوش در نرمافزارهاي وب است كه وبسايتهايي چون
وبسايتهاي خريد و فروش سهام از سيستمهاي چت آنلاين، حراج آنلاين،
بازيهاي آنلاين، نتايج مسابقات ورزشي، نظارت بر كنسولها و شبكهها و...
از همين فناوري استفاده ميكنند.
HTTP Server push
پوش از نوع
سروري HTTP كه بهآن در اصطلاحHTTP Streaming هم ميگويند، مكانيزمي براي
ارسال داده از وبسرور به مرورگر وب است. پوش سروري ميتواند از
مكانيزمهاي مختلفي به مرورگر برسد.
سرورهاي وب عموما اتصال را بعد از
ارسال كامل داده پاسخ به مشتري نميبندند. وبسرور اتصال را براي اين باز
ميگذارد كه اگر رويدادي دريافت شد، بتواند فورا به يك يا چند مشتري ديگر
همان نتيجه را بفرستد. در غير اينصورت داده در صف باقي ميماند تا مشتري
ديگر درخواست بعدي را بفرستد. بيشتر سرورهاي وب اين كار را از طريق CGI
انجام ميدهند.
يكي ديگر از مكانيزمها، مرتبط با نوع خاصي از
MIME
است كه
multipart/x-mixed-replace
تعريف ميشود و توسط
Netscape در سال 1995 معرفي شده است. مرورگرهاي وب وقتي با اين نوع روبهرو
ميشوند، بهعنوان تغيير سند با آن رفتار ميكنند. يعني اين نوع باعث
ميشود سرور نگارش جديدي به كاربر بفرستد. اين نوع هنوز توسط فايرفاكس،
اپرا و سافاري پشتيباني ميشود اما مايكروسافت ديگر آن را پشتيباني
نميكند.
اين نوع
را تصاوير وبكمها و همچنين سندهاي HTML ميتوانند بهخود بگيرند.
همچنين مكانيزم ديگري براي
ارسال اطلاعات بهكاربر وجود دارد. در سال 2006، مرورگر وب اپرا فناوري
جديدي را ابداع كرد كه نام آن را رخدادهاي فرستاده شده از سوي سرور ناميد.
اين ويژگي امروزه بهعنوان بخشي از استاندارد
HTML5
پيادهسازي شده است. يكي ديگر از بخشهاي
HTML5
، API سوكتهاي وب است كه وبسرور و كلاينت ميتوانند از
طريق پورت TCP ارتباطي دوطرفه داشته باشند. از گوگل كروم نگارش4 به بعد،
سوكتهاي وب در آن پشتيباني شد.
جاوا و ورود به سرويس پوش
جاوا با
ارائه تكنيكي بهنام پوشلت، اين فناوري را با حقه ديگري پياده كرده است كه
بعد از بارگذاري كامل صفحه، آن را در حالت لود كردن نگاه ميدارد و عمليات
پوش را شبيهسازي ميكند. سرور سپس در بازههاي زماني منظم، تكههاي كد
جاواسكريپتي را به مشتري ميفرستد تا محتواي صفحه را بهروز كند. مشتري با
استفاده از اين تكنيك نيازي به اپلتهاي جاوا يا پلاگينهاي ديگري ندارد و
ميتواند با سرور اتصال باز داشته باشد. مشتري از اتفاقات جديد باخبر
ميشود. اما يكي از مشكلات جدي اين روش، اين است كه سرور روي تايمآوت
مرورگر كنترلي ندارد و گاها صفحه از دور خارج ميشود و بايد مجددا صفحه را
رفرش كرد.
Long
Polling
اين روش، يكي از تكنيكهاي سنتي با
كمي تغيير است و عمليات پوش كردن از سرور به كاربر را شبيهسازي ميكند. در
پولينگ درازمدت، كاربر همانند يك پول معمولي اطلاعات را از سرور درخواست
ميكند. با اين تفاوت كه اگر سرور اطلاعات جديدي در دست نداشته باشد،
بهجاي ارسال يك پاسخ خالي، درخواست را نگه ميدارد و منتظر ميشود تا
اطلاعات جديدي بهدست بيايد و بعد بهكاربر پاسخ ميدهد. مشتري نيز معمولا
فورا اطلاعات را از سمت سرور درخواست ميكند و بههمين ترتيب سرور هميشه يك
درخواست معلق دارد تا هنگام آماده شدن اطلاعات به كاربر ارسال كند.
پولينگ درازمدت سرويس پوش
نيست، اما تحت شرايطي ميتواند بسيار شبيه به سرويس پوش عمل كند.
ايميل پوش
يكي از
بزرگترين كاربردهاي پوش در دنياي امروزه، سرويسهاي موبايل و دريافت ايميل
روي تلفن همراه است. Push email، سيستمي است كه قابليت هميشه روشن بودن را
به يك تلفن همراه ميدهد و هر موقع كه ايميل رسيد، بهگيرنده ايميل ارسال
ميكند. همانطور كه گفتيم در مقايسه با سيستمهاي پولينگ ايميل مثل POP
3
، كلاينت در زمان ورود به سيستم و در بازههاي زماني مختلف
سرور را چك ميكند تا ببيند نامه جديدي رسيده است يا نه؟ و در صورت مثبت
بودن اين پاسخ، اطلاعات را از سرور دريافت ميكند. هر چند كه ايميلهاي
ارسالي از طريق مشترك به سمت سرور فرستاده ميشوند. اگر بتوان مرحله اول را
هم تغيير داد، يك سيستم از نوع كاملا پوش وجود خواهد داشت. دليل اينكه
سرويسهاي پولينگ در اغلب شبكهها كاربرد بيشتري دارند اين است كه سرور
هميشه نميداند مشتري وي در چه آدرسي و كدام محل قرار دارد. مثلا فرض كنيد
كه كاربري با يك لپتاپ در يك شبكه بيسيم در حال حركت است و مدام آدرس
آيپي تغيير ميكند. سرور نميتواند كاربر را رهگيري كند و استفاده از پوش
بيمعنا ميشود.
كاربران موبايل
اولين
استفادهها از ايميل پوش برخلاف تصور در سرويسهاي بيسيم مخابراتي بهكار
گرفته شد. در ژاپن سرويس ايميل پوش از سال 2000 در اختيار همگان قرار گرفت و
در ايران نيز اپراتور ايرانسل به ارائه چنين سرويسي اقدام كرده است. سرويس
پوش آيفون و آيپادتاچ، از سرويسهاي ياهو، جيميل، مايكروسافت، زيمبرا، و
چند سرويسدهنده ديگر پشتيباني ميكنند. همچنين آندرويد از جيميل و
مايكروسافت پشتيباني ميكند. سيستم عامل ويندوز موبايل نيز از زمان ويندوز
موبايل 2003 تاكنون از سرويس پوش پشتيباني ميكند. سري 60 سيستمهاي عامل
نوكيا سيمبيان نيز از مدل ساده IMAP IDLE كه گفته شد، پشتيباني ميكنند تا
پوش را شبيهسازي كنند. همچنين سوني اريكسون، بلكبري و ديگر
سرويسدهندگان و توليدكنندگان گوشي نيز با شبيهسازي و متدهاي مختلف اين
فناوري را پياده ميكنند.
ميلاد پيكاني
منبع: ويكيپديا