BRITE separates the placement of the nodes from the process of growing the topology and interconnecting the nodes. By placing a node we mean just selecting a location in the plane for it and creating and initializing the data structures for the node in the graph. This phase does not mean that the nodes already belong to the topology because the specific joining time of a node to the topology will depend on the growth model employed.

The class *RouterModel* provides a method called *PlaceNodes* that
places the nodes on the plane in one of two ways: randomly or heavy
tailed. The motivation behind providing heavy-tailed distributions is
explained in Appendix A. When node placement is
random, each node is placed in a randomly selected location of the
plane. When the placement is heavy-tailed, BRITE divides the plane
into squares (the size of the plane and the size of the squares is
controlled by parameters passed to BRITE. See Section
3.8). Each of these squares is assigned a number
of nodes drawn from a heavy-tailed distribution. Once that value is
assigned, then that many nodes are placed randomly in the
square. Again, this placement mechanism can be modified or overridden
by particular models.

Figure 4 shows the difference between random and heavy-tailed node placement. The clustering provided by heavy-tailed placement can be used for specific generation models [16].