Ahoj
Mam konkretni problem, ktery se snazim vyresit pomoci PF ALTQ.
Server obsluhuje radove tisice spojeni přes http, kde standardne system
neomezuje sirku komunikacniho pasma. Protože nektere stroje maji problemy
s datovymi prenosy, obecne se jedna o retransmity (každý druhy - treti
paket), rad bych omezil odchozi komunikaci. Moje predstava je limit
například 5mbs/IP a zaroven 16 connections /IP. Cilem je zaroven nastavit
pocet spojeni na maximalni hranici (napr 5000).

Otazkou je, jak toto pravidlo nebo tato pravidla nastavit.

V konfiguracnich pravidlech kernelu jsem nasel nasledujici moznosti, kde
prvni cast mam povolenou:
options         ALTQ
options         ALTQ_CBQ                # Class Based Queueing
options         ALTQ_RED                # Random Early Detection
options         ALTQ_RIO                # RED In/Out
options         ALTQ_HFSC               # Hierarchical Packet Scheduler
options         ALTQ_CDNR               # Traffic conditioner
options         ALTQ_PRIQ               # Priority Queueing
options         ALTQ_DEBUG

A tento parametr ne:
options         ALTQ_NOPCC              # Required if the TSC is unusable


Prvni moznost, která mne napadla je pouziti pravidel pro spojeni:

set timeout src.track   1

# allow http/https
pass in quick on $ext_if proto tcp to port { 80, 443 } modulate state
(source-track, max-src-conn 16, max-src-conn-rate 8/5, max-src-nodes 5000,
overload <potential_DOS> flush global)

Bohuzel, stale tapu nad druhou casti, ted jak definovat maximalni bandwith
per IP. Je tu moznost pouzit ad hoc vahy, typu fronty a limitu:

queue q1 bandwidth 40%
queue q2 bandwidth 30%
queue q3 bandwidth 20%
queue q4 bandwidth 10%

pass out on $ext_if queue q1 probability 10%
pass out on $ext_if queue q2 probability 20%
pass out on $ext_if queue q3 probability 30%
pass out on $ext_if queue q4 probability 40%

coz mi sice nezaruci 5mbs/ip, ale umozni mi to alespon minimalne rozvazit
odchozi datovy tok. V pripade 1gbs interface to ale znamena vytvorit 200
front (není problem s generovanim), nasledna pravidla ale zpomaluji
prochazeni filtru.

Napada nekoho reseni, kde se mohu vyhnout implementaci dummynet a zaroven
nastavit strop pro IP adresu nebo spojeni?

Diky

Honza


-- 
FreeBSD mailing list ([email protected])
http://www.freebsd.cz/listserv/listinfo/users-l

Odpovedet emailem