summaryrefslogtreecommitdiff
path: root/share/pf/queue2
blob: 1968d8f3e8a372ca99d4ee4d6e08e190a6238bce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# $OpenBSD: queue2,v 1.4 2006/10/07 04:48:01 mcbride Exp $
# advanced queue example.
# give interactive ssh traffic priority over ssh bulk transfers (scp, sftp)

ext_if="dc0"
developerhosts="192.168.2.0/24"
employeehosts="192.168.0.0/23"

altq on $ext_if cbq bandwidth 5Mb queue { std, http, mail, ssh }

queue std bandwidth 10% cbq(default)
queue http bandwidth 60% priority 2 cbq(borrow red) { employees, developers }
queue  developers bandwidth 75% cbq(borrow)
queue  employees bandwidth 15%
queue mail bandwidth 10% priority 0 cbq(borrow ecn)
queue ssh bandwidth 20% cbq(borrow) { ssh_interactive, ssh_bulk }
queue  ssh_interactive bandwidth 25% priority 7
queue  ssh_bulk bandwidth 75% priority 0

block return out on $ext_if inet all queue std
pass out on $ext_if inet proto tcp from $developerhosts to any port 80 \
    queue developers
pass out on $ext_if inet proto tcp from $employeehosts to any port 80 \
    queue employees
pass out on $ext_if inet proto tcp from any to any port 22 \
    queue(ssh_bulk, ssh_interactive)
pass out on $ext_if inet proto tcp from any to any port 25 \
    queue mail