Proxy Server چیست؟
يكشنبه, ۲۹ آذر ۱۳۸۸، ۰۱:۵۴ ب.ظ
Proxy Server چیست؟ roxy Server نرم افزاری است که در یک شبکه حد واسط بین اینترنت و کاربران واقع می
شود. فلسفه ایجاد Proxy Server قراردادن یک خط اینترنت در اختیار تعداد بیش از یک نفر استفاده کننده
در یک شبکه بوده است ولی بعدها امکانات و قابلیتهایی به Proxy Server افزوده شد که
کاربرد آن را فراتر از به اشتراک نهادن خطوط اینترنت کرد . بطور کلی Proxy Server ها در چند مورد
کلی استفاده می شوند .
یک کاربرد Proxy Server ها ، همان به اشتراک گذاشتن یک خط اینترنت برای چند کاربر است که
باعث کاهش هزینه و کنترل کاربران و همچنین ایجاد امنیت بیشتر می شود . کاربرد دوم Proxy Serverها ، در سایتهای
اینترنتی به عنوان Firewall می باشد . کاربرد سوم که امروزه از آن بسیار استفاده می شود ، Caching اطلاعات است . با توجه به
گران بودن هزینه استفاده از اینترنت و محدود بودن پهنای باند ارتباطی برای ارسال و
دریافت اطلاعات ، معمولا" نمی توان به اطلاعات مورد نظر در زمان کم و با سرعت
مطلوب دست یافت . امکان Caching اطلاعات ، برای کمک به رفع این مشکل در نظر گرفته شده است . Proxy Server ، سایتهایی را که بیشتر
به آنها مراجعه می شود را دریک حافظه جداگانه نگاه می دارد. به این ترتیب برای
مراجعه مجدد به آنها نیازی به ارتباط از طریق اینترنت نیست بلکه به همان حافظه
مخصوص رجوع خواهد شد .
این امر باعث می گردد از یک طرف زمان دسترسی به اطلاعات کمتر شده و
از سوی دیگر چون اطلاعات از اینترنت دریافت نمی شود ، پهنای باند محدود موجود با
اطلاعات تکراری اشغال نشود . بخصوص آنکه معمولا" تغییرات در یک Website محدود به یک یا
دو صفحه می باشد و گرفتن اطلاعات از اینترنت بدون Caching به معنای گرفتن
کل سایت می باشد حال آنکه با استفاده از Proxy Server و امکان Caching اطلاعات ، میتوان
تنها صفحات تغییر کرده را دریافت کرد .
● ویژگیهای Proxy Server
▪ ویژگی اول : با استفاده از Proxy Server می توان از اکثر
پروتکلهای موجود در شبکه های محلی در محدوده نرم افزارهای کاربردی در شبکه های LAN مرتبط با اینترنت استفاده
کرد .
Proxy Server پروتکلهای پر کاربرد شبکه های محلی
مانند IPX/SPX (مورد استفاده در شبکه های ناول) ، NETBEUI (مورد استفاده در شبکه های LAN با تعداد کاربران کم) و TCP/IP (مورد استفاده در
شبکه های Intranet) را پشتیبانی می کند. با این ترتیب برای اینکه بتوان از یک نرم افزار
کاربردی شبکه LAN که مثلا" با پروتکل IPX/SPX روی ناول نوشته شده ، روی اینترنت استفاده کرد نیازی نیست که قسمتهای
مربوط به ارتباط با شبکه که از Function Call های API استفاده کرده را به Function Call های TCP/IP تغییر داد بلکه Proxy Server خود این تغییرات را انجام داده و می توان به راحتی از نرم افزاری که
تا کنون تحت یک شبکه LAN با ناول کار می کرده است را در شبکه ای که مستقیما" به اینترنت
متصل است ، استفاده کرد .
همین ویژگی درباره سرویسهای اینترنت مانند , FTP , Telnet , Gopher , IRC RealAudio , Pop۳ و . . . وجود دارد . به این معنا که هنگام پیاده سازی برنامه با یک
سرویس یا پروتکل خاص ، محدودیتی نبوده و کدی در برنامه برای ایجاد هماهنگی نوشته
نمی شود .
▪ ویژگی دوم : با Cache کردن اطلاعاتی که بیشتر
استفاده می شوند و با بروز نگاه داشتن آنها ، قابلیت سرویسهای اینترنت نمایان تر
شده و مقدار قابل توجهی در پهنای باند ارتباطی صرفه جویی می گردد.
▪ ویژگی سوم : Proxy Server امکانات ویژه ای
برای ایجاد امنیت در شبکه دارد . معمولا" در شبکه ها دو دسته امنیت اطلاعاتی
مد نظر است . یکی آنکه همه کاربران شبکه نتوانند از همه سایتها استفاده کنند و دیگر
آنکه هر کسی نتواند از روی اینترنت به اطلاعات شبکه دسترسی پیدا کند . با استفاده
ازProxy Server نیازی نیست که هر Client بطور مستقیم به اینترنت وصل شود در ضمن از دسترسی غیرمجاز به شبکه
داخلی جلوگیری می شود . همچنین می توان با استفاده از SSL (Secure Sockets Layers) امکان رمز کردن داده ها را نیز فراهم آورد.
▪ ویژگی چهارم : Proxy Server بعنوان نرم
افزاری که می تواند با سیستم عامل شما مجتمع شود و همچنین با IIS (Internet Information Server) سازگار می باشد، استفاده می گردد.
● خدمات Proxy Server
Proxy Server سه سرویس در اختیار کاربران خود
قرار می دهد:
۱) Web Proxy Service : این سرویس
برای Web Publishing یا همان ایجاد Web Site های مختلف درشبکه LAN مفید می باشد . برای این منظور قابلیت مهم Reverse Proxing در نظر گرفته
شده است . Reverse Proxing امکان شبیه سازی محیط اینترنت درمحیط داخل می باشد. به این ترتیب فرد
بدون ایجاد ارتباط فیزیکی با اینترنت می تواند برنامه خود را همچنان که در محیط اینترنت
عمل خواهد کرد، تست کرده و مورد استفاده قرا دهد. این قابلیت در بالا بردن سرعت و
کاهش هزینه تولید نرم افزارهای کاربردی تحت اینترنت موثر است.
۲) Winsock Proxy Service: منظور،
امکان استفاده از API Callهای Winsock در Windows است . در Windows ، Function Call های مورد استفاده در سرویسهای اینترنت مانند Telnet ، FTP ، Gopher و . . . ، تحت عنوان Winsock Protocols معرفی شده اند.
در حقیقت برای استفاده از این سرویسها در نرم افزارهای کاربردی نیازی نیست که
برنامه نویس چگونگی استفاده از این سرویسها را پیش بینی کند.
۳) Socks Proxy Service : این سرویس،
سرویس Socks ۴.۳a را پشتیبانی می کند که در واقع زیر مجموعه ای از Winsock می باشد و امکان
استفاده از Http ۱.۰۲ و بالاتر را فراهم می کند. به این ترتیب می توان در طراحی Website خارج از Firewall ، Security ایجاد کرد.
▪ معیارهای موثر در انتخاب Proxy Server
۱) سخت افزار مورد نیاز : برای هر چه
بهتر شدن توانمندیهای Proxy Server ، باید سخت افزار آن توانایی تحمل بار مورد انتظار را داشته باشد .
۲) نوع رسانه فیزیکی برای ارتباط با
اینترنت : راه حلهای مختلفی برای اتصال به شبکه اینترنت وجود دارد . ساده ترین راه
، استفاده از مودم و خطوط آنالوگ می باشد . راه دیگر استفاده از ISDN و خطوط دیجیتال است که هم
احتیاج به تبدیل اطلاعات از آنالوگ به دیجیتال و برعکس در ارسال و دریافت اطلاعات
ندارد و هم از سرعت بالاتری برخوردار است . روش دیگر استفاده از خط های T۱/E۱ با ظرفیت انتقال گیگا بایت می
باشد .
پیشنهاد می شود که در شبکه های با کمتر از ۲۵۰ کاربر از ISDN و از ۲۵۰ کاربر به بالا از T۱/E۱ استفاده شود . ( البته در ایران
به علت عدم وجود خطوط ISDN و کمبود خطوط T۱/E۱ این استانداردها کمتر قابل پیاده سازی هستند. )
۳) هزینه ارتباط با اینترنت : دو
عامل موثر در هزینه اتصال به اینترنت ، پهنای باند و مانایی ارتباط می باشد . هر
چه مرورگرهای اینترنتی بیشتر و زمان استفاده بیشتر باشد ، هزینه بالاتر خواهد بود
. با توجه به اینکه Proxy Server می تواند با Caching اطلاعات این موارد را بهبود بخشد ، بررسی این عامل می تواند در تعیین
تعداد Proxy های مورد استفاده موثر باشد .
۴) نوع و نحوه مدیریت سایت : این
عامل نیز در تعیین تعداد Proxyها موثر است . مثلا" اگر در شبکه ای مشکل راهبری وجود داشته
باشد ، با اضافه کردن تعداد Proxyها ، مشکل راهبری نیز بیشتر خواهد شد .
۵) پروتکل های مورد استفاده : Proxy Server ها معمولا"
از پروتکلهای TCP/IP و یا IPX/SPX برای ارتباط با Client ها استفاده می کنند . بنابراین برای استفاده از Proxy باید یکی از این پروتکل ها
را در شبکه استفاده کرد .