توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : بهترین نرم افزار کنترل پهنای باند در لینوکس
babrab
September 24th, 2010, 17:46
سلام
دوستان به نظر شما بهترین نرم افزاربرای کنترل پهنای باند توی لینوکس چیه؟البته کنترل پهنای باند تو یه lan منظورم نیست کنترل پهنا برای یک سرور که همه بهش وصل میشن، جایی خوندم که اسکویید اصلا مناسب نیست حتی برای یه lan!
ممنون از کمکهاتون
TukaNet
September 24th, 2010, 18:32
منظورتون از کنترل چیه ؟ قصد کم کردن مصرف رو دارید یا مانیتورینگ ؟
سرور برای چه کاری استفاده میشه ؟ چه نرم افزارهایی روش نصب هستند ؟
کامل توضیح بدید :)
Online24
September 24th, 2010, 18:57
squid بهترین ابزار مناسب برای این کار هست .
جایی خوندم که اسکویید اصلا مناسب نیست حتی برای یه lan!
کجا خوندید ؟ :دی
persianwhois
September 24th, 2010, 20:18
squid بهترین ابزار مناسب برای این کار هست .
کجا خوندید ؟ :دی
این چه حرفی هست که شما می زنید؟ Squid یک مقوله کاملاً متفاوت است!!
برای راهنمایی بهتر شما نیاز به اطلاعات بیشتری است.
این سرور قرار است چه کاری را در شبکه انجام دهد؟
ضمناً برای مانیتورینگ پهنای باند مصرفی از Cacti یا MRTG هم می توانید استفاده کنید.
babrab
September 25th, 2010, 00:04
ممنون از پاسخ همه
من میخام کنترل پهنای باند رو داشته باشم( یعنی اگر همزمان 10 نفر به سرور وصل شوند به یک اندازه از پهنای باند استفاده کنند و در صورت تقاضاهای زیاد سرور از بین نرود.) اما مشکل اصلی من کاربرانی هستند که جز lan نیستند و من ip این افراد رو ندارم که بخام اونا رو کنترل کنم.
بسیار ممنون
persianwhois
September 25th, 2010, 00:38
آیا کاربران این سرور ثابت هستند؟
TukaNet
September 25th, 2010, 01:09
خوب پس یه بار بگید قصد راه اندازی کش دارید :d
برای کش بهتر هست از یک سرور مجزا استفاده کنید و قبل سرور کنونی قرارش بدید
بهترین گزینه برای کش هم همون اسکویید هست ، البته با شرطی که خوب کانفیگ بشه !
babrab
September 25th, 2010, 11:41
ممنون از تمام دوستان
اینطور که من خوندم بهترین راه استفاده از اسکویید هست، یه مقاله هست که تا حدودی جواب سوالم رو داده اینو برا دوستان هم میذارم:
کنترل مصرف پهنای باند شبکه با استفاده از squid
یکی از مشکلاتی که معمولا بر روی شبکههای داخلی وجود دارد، مصرف پهنای باند توسط کاربرانی خاص و عدم پخش مناسب آن بر روی کل شبکه است. به طوری که یک کاربر میتواند کل پهنای باند شبکه را مصرف کرده و سایر کاربران را دچار مشکل کند.
راههای متعددی برای کنترل مصرف پهنای باند مانند ابزارهای traffic shaper و... شبکه وجود دارد که از حوصله این مقاله خارج است. ما در این مقاله کوچک سعی داریم تا نحوه کنترل مصرف پهنای باند را توسط سرویس دهنده squid آموزش دهیم.
قدم اول
فرض میکنیم که یک اتصال مودم یا dsl به شبکه اینترنت داریم که رابط آن ppp0 بوده، رابط شبکه محلی نیز eth0 و آدرس شبکه داخلی 192.168.0.0/24 میباشد. مواردی که برای پیاده سازی کنترل مصرف پهنای باند شبکه نیاز داریم عبارتند از یک سرویسدهنده squid و سیستم iptables که بر روی هر ماشین گنو/لینوکس وجود دارد. مراحل نصب، پیکربندی و تنظیم بسیار ساده است.
Squid چگونه کار میکند؟
سرویسدهنده squid پیشرفتهترین سرویسدهنده پراکسی موجود برای سیستمعامل گنو/لینوکس میباشد. این سرویسدهنده به دو روش میتواند در پهنای باند صرفه جویی نماید:
۱) نخست از طریق حفظ صفحات، تصاویر و سایر اقلام دریافت شده بر روی حافظه یا فضای دیسک. بنابراین در صورتی که کاربران تقاضای دریافت مجدد یک صفحه تکراری را نمایند، این صفحه از روی اینترنت دریافت نخواهد شد.
۲) در کنار سیستم caching معمولی، squid دارای قابلیتی به نام delay pools است که از طریق آن میتوانید ترافیک اینترنت را بطور معقولانهای کنترل نمایید. این کار از طریق تعریف کلمات کلیدی موجود در آدرسهای url انجام میگیرد. برای مثال میتوانید کلماتی مانند mp3، mpg، exe و... را بعنوان کلمات کلیدی تعریف نمایید. با استفاده از این کلمات کلیدی، میتوانیم به squid بگوییم تا آنها را حداکثر با سرعت خاصی دریافت نماید. میتوان پهنای باند باقیمانده را برای سرویسهای دیگر مانند مرور وب، پست الکترونیکی و... باقی گذاشت و یا حتی آنرا نیز محدود کرد.
نصب و پیکربندی ابزارهای لازم
در این بخش به بررسی چگونگی نصب و پیکربندی ابزارهای لازم میپردازیم. مهمترین نکته در این بخش، فعال بودن ویژگی delay pools در squid میباشد. در صورتی که squid را از طریق کامپایل نصب کردهاید، حتما بررسی کنید که به همراه گزینه enable-delay-pools-- کامپایل شده باشد، در غیر اینصورت باید آنرا مجددا کامپایل کنید. معمولا بستههایی که به همراه توزیعها ارائه میشود، دارای چنین ویژگیی به صورت پیشگزیده میباشد. با فرض اینکه از توزیع دبیان استفاده میکنید، squid را نصب میکنیم:
# apt-get install squid
سرویسدهنده squid از روی مخازن مربوطه دریافت و نصب خواهد شد. در قدم دوم، باید این سرویسدهنده را برای مقاصد خودمان تنظیم کنیم. به همراه تنظیم delay pools، سرویسدهنده برای ارائه سرویس transparent ***** نیز تنظیم خواهد شد. فایل پیکربندی مورد استفاده در squid به شکل زیر خواهد بود:
delay_class 2 2
delay_parameters 2 4500/40000 4500/40000
delay_access 2 allow day
delay_access 2 deny !day
delay_access 2 allow magic_words2
این فایل پیکربندی در آدرس etc/squid/squid.conf/ قرار میگیرد. مهمترین بخش این فایل برای کنترل ترافیک، بخش مشخص شده با delay pools است.
در خط نخست این بخش یک acl برای شبکه داخلی تعریف شده و در خط دوم انواع فایلهایی که مایل به محدود کردن دریافت آنها هستیم، مشخص شده است.
در خط سوم، ساعات کاری که محدودیتها در آن اعمال میشوند مشخص شده و در خط بعدی، دو delay pool مختلف تعریف شده است.
خط delay_class مشخص کننده نوع کلاس pool بکار رفته میباشد. سه نوع کلاس delay pool وجود دارد که برای اطلاع دقیق از انها میتوانید به مستندات سرویسدهنده squid مراجعه نمایید.
خط delay_parameters 1 مشخص کننده محدودیتهای اعمالی برای شبکه داخلی است. در این خط مشخص شده که در صورتی که کل شبکه یا یک آدرس ip خاص مقدار حجم دریافتی معادل ۴۰ مگابایت داشت، از آن پس، سرعت دریافت آن به ۴/۵ کیلوبایت در ثانیه کاهش یابد. درصورتی که مایلید تا محدودیت برای مرور صفحات وجود نداشته باشد و در هنگام مرور صفحات، همیشه حداکثر سرعت در اختیار باشد، این خط را به صورت زیر تغییر دهید:
Delay_parameters 1 -1/-1 -1/-1
عدد منفی یک مشخص کننده عدم وجود محدودیت است. همانطور که در مثال بالا میبینید، محدودیت ساعت در خطوط تنظیم کننده مربوط به delay_parameters 2 اعمال شده است. توجه داشته باشید که اعدادی فایل پیکربندی فوق تماما مثال بوده و آنها را باید بنا به شرایط شبکه خودتان تنظیم کنید.
پس از اعمال تنظیمات فوق، سرویسدهنده squid را راهاندازی میکنیم:
# squid -z
# /etc/init.d/squid start
در مرحله بعدی تنظیم و پیکربندی، باید اشتراک اینترنت و تنظیمات iptables را برای transparent ***** انجام دهیم. برای این کار میتوان از یک اسکریپت ساده مانند زیر استفاده کرد:
echo 1 > /proc/sys/net/ipv4/ip_forward
echo starting internet connection sharing...
کافی است این اسکریپت را در شاخه etc/init.d/ با نامی مانند ics ذخیره کرده و آنرا با chmod +x اجرایی کنید. سپس برای اینکه در هنگام بوت اجرا شود، از دستور زیر استفاده نمایید:
# ln -s /etc/init.d/ics /etc/rc2.d/s99ics
از این پس هنگام بوت سیستم (سطح اجرایی ۲ در دبیان) اسکریپت ics اجرا خواهد شد و میتوانید ببینید که تنظیمات کنترلی به خوبی کار میکنند.
منبع تکنو تاکس
mal2moh
April 12th, 2011, 00:45
با سلام
بدینوسیله به اطلاع شما میرساند شرکت توسعه افزار مانی اقدام به فروش و پشتیبانی محصولات نرم افزاری و تضمینی ایرانی و خارجی با امکانات
کنترل پهنای باند ، کنترل مصرف اینترنت ، اکانتینگ اینترنت ، *****ینگ
نموده است
برای دیدن توضیحات و قیمت ها به لینک زیر مراجعه نمائید
شرکت توسعه افزار مانی کرمانشاه ، طراحی سایت کرمانشاه،فایروال کرمانشاه،آنتی ویروس نود32 کرمانشاه،پیام کوتاه کرمانشاه،سرور کرمانشاه،سیس (http://www.Manisoft.ir)