All of lore.kernel.org
 help / color / mirror / Atom feed
* [LARTC] Shaping per IP in PPPoE
@ 2006-04-11 15:49 Rani Ahmed
  2006-04-11 19:58 ` Martin A. Brown
  2006-04-12  1:04 ` Roberto Scattini
  0 siblings, 2 replies; 3+ messages in thread
From: Rani Ahmed @ 2006-04-11 15:49 UTC (permalink / raw)
  To: lartc

hi all.
i am currently now serving PPPoE in my area.
i had a script  generated  from tcng that worked perfectly before i 
started serving PPPoE.
the issue is not in the script it self BUT in  that "tc" code is not 
shaping on the ethernet anymore BUT INSTEAD
on the pppX devices. I tested it and talking jargon, what should i do?

The issue is that for each PPPoE login, PPPoE-server creates on the 
server a pppX device. that is 10 logins means 10 ppp devices. from ppp0 
till ppp9. and one might die upon disconnection.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [LARTC] Shaping per IP in PPPoE
  2006-04-11 15:49 [LARTC] Shaping per IP in PPPoE Rani Ahmed
@ 2006-04-11 19:58 ` Martin A. Brown
  2006-04-12  1:04 ` Roberto Scattini
  1 sibling, 0 replies; 3+ messages in thread
From: Martin A. Brown @ 2006-04-11 19:58 UTC (permalink / raw)
  To: lartc


Hello Rani,

 : i am currently now serving PPPoE in my area. i had a script 
 : generated from tcng that worked perfectly before i started 
 : serving PPPoE. the issue is not in the script it self BUT in that 
 : "tc" code is not shaping on the ethernet anymore BUT INSTEAD on 
 : the pppX devices. I tested it and talking jargon, what should i 
 : do?
 : 
 : The issue is that for each PPPoE login, PPPoE-server creates on 
 : the server a pppX device. that is 10 logins means 10 ppp devices. 
 : from ppp0 till ppp9. and one might die upon disconnection. 

I'd suggest simply using the pppoe ip-up configuration scripts to 
call the appropriate tc or tcng commands.  Since ip-up should be 
called something like this:

  ip-up ppp0 $TTY $SPEED 192.168.0.4 10.0.0.4 $OTHER

Is ip-up called by YOUR pppoe-server binary? I am not able to test 
this.

you should be able to create a script that would either execute tc 
commands or a create tcng file on the fly.  I created the basic 
structure of such a script below, although you could probably 
add/replace your own shell functions (tc_sfq, tc_my_complex_config) 
with a much more complex traffic control configuration.

Good luck,

-Martin

#! /bin/bash
#
# -- add queuing to an interface brought up by pppd, 2006-04-11; -MAB
#    GPL
#
# ip-up <iface> <tty> <speed> <local-IP> <remote-IP> <ipparm>
dev="$1"    && shift
pty="$1"    && shift
spd="$1"    && shift
lip="$1"    && shift
rip="$1"    && shift


logger () { command logger -it "${0##*/}" -- "$@" ; }
abort  () { logger "$@" ; exit 1 ; }

tc_tbf () {
  local dev="$1"    && shift
  local lip="$1"    && shift
  local rip="$1"    && shift
  test "$dev" = ""  && abort "${FUNCNAME}() called with no device name"
  test "$lip" = ""  && abort "${FUNCNAME}() called with no local IP"
  test "$rip" = ""  && abort "${FUNCNAME}() called with no remote IP"

  cat <<-EOTC
	tc qdisc add dev $dev root handle 1:0 tbf rate 1544kbit limit 20kB burst 3kB
EOTC
}

# -- run all commands in a single shell that we instruct to quit on any error
#
tc_tbf  "$dev" "$lip" "$rip" | bash -e

# -- did the shell complete successfully?
#
test "$?" -gt 0 && abort "Could not install traffic control on $dev."

logger "Installed traffic control configuration on $dev."

# -- end of file



-- 
Martin A. Brown --- Wonderfrog Enterprises --- martin@wonderfrog.net
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: [LARTC] Shaping per IP in PPPoE
  2006-04-11 15:49 [LARTC] Shaping per IP in PPPoE Rani Ahmed
  2006-04-11 19:58 ` Martin A. Brown
@ 2006-04-12  1:04 ` Roberto Scattini
  1 sibling, 0 replies; 3+ messages in thread
From: Roberto Scattini @ 2006-04-12  1:04 UTC (permalink / raw)
  To: lartc


hi, i use the roaringpenguin pppoe-server and limit the bandwidth per 
interface with this script:
(im using freeradius plugins too, thats the reason of the 
/var/run/radattr.pppx file)
(/etc/ppp/ip-up.d/0pppx_up)

#!/bin/sh

DOWN=`cat /var/run/radattr.$1 | grep 'RP-Downstream-Speed-Limit' | cut -d ' 
' -f 2`
UP=`cat /var/run/radattr.$1 | grep 'RP-Upstream-Speed-Limit' | cut -d ' ' -f 
2`

# limit Download Bandwidth with a simple htb qdisc and class (add QoS 
here?...)
/sbin/tc qdisc add dev $1 root handle 1: htb default 1
/sbin/tc class add dev $1 parent 1: classid 1:1 htb rate ${DOWN}kbit ceil 
${DOWN}kbit burst 1540


/sbin/tc qdisc add dev $1 handle ffff: ingress
/sbin/tc filter add dev $1 parent ffff: protocol ip prio 50 u32 \
    match ip src 0.0.0.0/0 \
    police rate ${UP}kbit burst 10k drop flowid :1

and have another script for deleting the rules 
(/etc/ppp/ip-down.d/0pppx_down):

#!/bin/sh

/sbin/tc qdisc del dev $1 root
/sbin/tc qdisc del dev $1 ingress

ppp executes this scripts each time an interface gets up or down.

hope it helps.

Roberto Scattini




From: Rani Ahmed <rani79@idm.net.lb>
To: lartc@mailman.ds9a.nl
Subject: [LARTC] Shaping per IP in PPPoE
Date: Tue, 11 Apr 2006 18:49:29 +0300

hi all.
i am currently now serving PPPoE in my area.
i had a script  generated  from tcng that worked perfectly before i started 
serving PPPoE.
the issue is not in the script it self BUT in  that "tc" code is not shaping 
on the ethernet anymore BUT INSTEAD
on the pppX devices. I tested it and talking jargon, what should i do?

The issue is that for each PPPoE login, PPPoE-server creates on the server a 
pppX device. that is 10 logins means 10 ppp devices. from ppp0 till ppp9. 
and one might die upon disconnection.
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

_________________________________________________________________
Sabe más sobre la próxima generación del MSN Messenger. 
http://imagine-msn.com/minisites/messenger/default.aspx?locale=es-ar

_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-04-12  1:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-04-11 15:49 [LARTC] Shaping per IP in PPPoE Rani Ahmed
2006-04-11 19:58 ` Martin A. Brown
2006-04-12  1:04 ` Roberto Scattini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.