queue tree in pppoe concentrator: something I miss

Hi all.
In my pppoe concentrator I want to add queue tree after mangle packets.

My pppoe concentrator have one public interface and many pppoe interfaces (inside eoip tunnels).

I have mangle rules in forward chain and I use different marks for packet download and upload (and for different kid of traffic).

In queue tree, which parent must I use:

  1. public interface (ether1) for download and private (ether2) for upload ? In this case could I miss packets in pppoe tunnels?
  2. global-total for download and upload ? single queues use different packet marks for upload and download
  3. global-in for download and upload ? single queues use different packet marks for upload and download.

but global-total and global-in are reached if I mark packets in forward chain ?

There is something I dont understand.

Could someone help me ?

thanks

Ok, I requery:
if I mangle in pre-routing, traffic then goes into global-in.
In prerouting I mangle connections then packets.

Like this:

/ip fire man
add action=mark-connection chain=prerouting disabled=no \
new-connection-mark=P2P-CONN p2p=all-p2p passthrough=yes

add action=mark-packet chain=prerouting connection-mark=P2P-CONN \
disabled=no dst-address-list=my_user new-packet-mark=pm-P2P-in passthrough=no

add action=mark-packet chain=prerouting connection-mark=P2P-CONN \
disabled=no src-address-list=my_user new-packet-mark=pm-P2P-out passthrough=no

In queue tree I have:

/queue tree
add disabled=no limit-at=0 max-limit=9M \
name=Total-Out parent=global-in priority=1
add disabled=no limit-at=500k max-limit=5M \
name=P2P-out packet-mark=pm-P2P-out parent=Total-Out priority=8 queue=default

add disabled=no limit-at=0 max-limit=7M \
name=Total-In parent=global-in priority=1
add disabled=no limit-at=1M max-limit=6M \
name=P2P-in packet-mark=pm-P2P-in parent=Total-In priority=8 queue=default

Is this approach correct or someone knows a best one ?

thanks