I have 5 BGP peers and use mangle to take a control to upstream traffic (balancing 3 international providers), how can I do that with BGP ?
Traffic management with BGP is not an exact science. Because of the dynamic nature of the worldwide BGP routing table it's more of a moving target and an ongoing process. The results of BGP traffic management are often much less fine-grained then you'd hope for.
That being said you can use AS-PATH prepending and/or local preference to influence BGP routing (and thereby traffic flow). Some people like to announce sub-networks (longer prefixes) of their aggregate differently to different upstreams, or some sub-networks only to one upstream and other sub-networks to another upstream, but that is strongly discouraged as it makes the global BGP routing table larger and increases the opportunities of flapping routes (which, in turn, may get your AS dampened by your upstreams).