A method implemented in a network, wherein the network contains a plurality of network devices, wherein the network offers a set of services to one or more subscribers, wherein each subscriber of the network consumes a bandwidth and utilizes a subset of the set of services, wherein the subset of the set of services is included in a chain of services for each subscriber, wherein an order of entries within the chain of services is defined, and wherein the method associates a service with a network device of the network when a group of one or more services have not been placed with any network device of the network, the method comprising: determining a list of bandwidth consumption entities of a service for each service within the set of services, wherein each bandwidth consumption entity is based on one or more chains of services, wherein each bandwidth consumption entity of a service is a value of bandwidth consumption to or from an entry of the one or more chains of services that the service is included in; calculating a weight of each service based on the list of bandwidth consumption entities of the service, wherein the weight is calculated as the sum of values of bandwidth consumptions of all bandwidth consumption entities of the service; selecting a service with a highest weight within the group of one or more services that have not been placed with any network device of the network; and selecting a network device of the network for the selected service based at least partially on calculating bandwidth impacts to the network by the service by: calculating a bandwidth utilization by the selected service at each available network device of the network if the selected service is placed at the available network device; and selecting a network device in which to place the selected service, for which the bandwidth utilization at the network is the lowest. determining a list of bandwidth consumption entities of a service for each service within the set of services, wherein each bandwidth consumption entity is based on one or more chains of services, wherein each bandwidth consumption entity of a service is a value of bandwidth consumption to or from an entry of the one or more chains of services that the service is included in; calculating a weight of each service based on the list of bandwidth consumption entities of the service, wherein the weight is calculated as the sum of values of bandwidth consumptions of all bandwidth consumption entities of the service; selecting a service with a highest weight within the group of one or more services that have not been placed with any network device of the network; and selecting a network device of the network for the selected service based at least partially on calculating bandwidth impacts to the network by the service by: calculating a bandwidth utilization by the selected service at each available network device of the network if the selected service is placed at the available network device; and selecting a network device in which to place the selected service, for which the bandwidth utilization at the network is the lowest. calculating a bandwidth utilization by the selected service at each available network device of the network if the selected service is placed at the available network device; and selecting a network device in which to place the selected service, for which the bandwidth utilization at the network is the lowest.