Clustering means partitioning nodes into groups called clusters, providing the network with a hierarchical organization. A self-stabilizing protocol, regardless of the initial system state, automatically converges to a set of states that satisfy the problem specification without external intervention. Due to this property, self-stabilizing protocols are adapted to highly dynamic networks as ad hoc or sensors networks. In this paper, we propose a self-stabilizing clustering protocol. Our protocol guarantees a threshold (size bound) on the number of nodes that a clusterhead handle. Therefore, none of the clusterheads are overloaded at anytime. The criterion of the clusterheads election is based on their weight value, a general parameter that can be computed according to several node parameters as transmission power, battery power, ... .