Constraint Based Communication Network Design Using Genetic Algorithm: Data Communication Networks