Стоит следующая задача. Есть три группы тарифов: на скоростях 500 кбит, 128 кбит, и анлимиты на скоростях 128, 56 и 28 кбит.Нужно сделать так что бы приоритет был только у первых 2х тарифов (500, 128), потому что они считаются по трафику. Т.е. что бы общая полоса делилась на эти тарифы равномерно. Общая пропускная способность инета 500 килобит. Пользователям которые сидят на 500 килобит отдавать весь канал когда они активны, 128 килобит тоже отдавать максимум 128 на каждого пользователя. Но в общей своей массе если одновременно выходит много пользователей на этих тарифах что бы там всё между ними делилось равномерно. А анлимиты запихать на самый последний приоритет. Т.е. если канал забит вышеописанными тарифами, то скорость на анлимитах 10 килобит. А если ночью никого нет из приоритетных тарифов, то скорость должна повышаться на полную в зависимости от выбранного тарифа анлимита 128 или 56 или 28...как можно реализовать такую задачу?вот есть некоторые намётки: #################################### ipfw pipe 1 config bw 500Kbit/s ipfw pipe 2 config mask dst-ip 0x000000ff bw 128Kbit/s ipfw pipe 3 config mask dst-ip 0x000000ff bw 56Kbit/s ipfw pipe 4 config mask dst-ip 0x000000ff bw 28Kbit/s #-------------------------------------------------------------- ipfw queue 1 config pipe 1 weight 100 ipfw queue 2 config pipe 1 weight 2 #-------------------------------------------------------------- ipfw add 500 pipe 1 ip from any to ${client_500} ipfw add 499 pipe 2 ip from any to ${client_128} ipfw add 498 pipe 3 ip from any to ${client_56} ipfw add 497 pipe 4 ip from any to ${client_28} #-------------------------------------------------------------- ipfw add 300 queue 1 ip from any to ${client_500} ipfw add 299 queue 1 ip from any to ${client_128} ipfw add 298 queue 2 ip from any to ${client_128_unlim} ipfw add 299 queue 2 ip from any to ${client_56} ipfw add 299 queue 2 ip from any to ${client_28} #################################### как считаете? заработает такая писанина ???
|