A method for optimizing bandwidth allocation of carrying a data stream that is associated with a required bandwidth allocation and is associated with a bandwidth sharing definition that defines the bandwidth sharing of the data stream with allocated bandwidths over a network, the method comprising: defining a first path from a first node (A, 24) to a second node (E, 24) in the network, the first path comprises at least a first (25, A-B) segment that is associated with a first allocated bandwidths; defining a second path from the first node to the second node in the network, the second path comprises at least a second (25, A-D) segment that is associated with a second allocated bandwidths; characterized in that the method further comprising: calculating a first additional allocation bandwidth required for carrying the data stream over the first segment based on the first allocated bandwidth according to the bandwidth sharing definition; calculating a second additional allocation bandwidth required for carrying the data stream over the second segment based on the second allocated bandwidth according to the bandwidth sharing definition; selecting the first or second path in response to comparing the first additional allocation bandwidth to the second additional allocation bandwidth; and transporting the data stream (40, 48) over the selected path, wherein each of the allocated bandwidths or the required bandwidth allocation is associated with guaranteed bandwidth, Committed Information Rate, CIR, average bandwidth, peak bandwidth, or Peak Information Rate, PIR. defining a first path from a first node (A, 24) to a second node (E, 24) in the network, the first path comprises at least a first (25, A-B) segment that is associated with a first allocated bandwidths; defining a second path from the first node to the second node in the network, the second path comprises at least a second (25, A-D) segment that is associated with a second allocated bandwidths; characterized in that the method further comprising: calculating a first additional allocation bandwidth required for carrying the data stream over the first segment based on the first allocated bandwidth according to the bandwidth sharing definition; calculating a second additional allocation bandwidth required for carrying the data stream over the second segment based on the second allocated bandwidth according to the bandwidth sharing definition; selecting the first or second path in response to comparing the first additional allocation bandwidth to the second additional allocation bandwidth; and transporting the data stream (40, 48) over the selected path, wherein each of the allocated bandwidths or the required bandwidth allocation is associated with guaranteed bandwidth, Committed Information Rate, CIR, average bandwidth, peak bandwidth, or Peak Information Rate, PIR. calculating a first additional allocation bandwidth required for carrying the data stream over the first segment based on the first allocated bandwidth according to the bandwidth sharing definition; calculating a second additional allocation bandwidth required for carrying the data stream over the second segment based on the second allocated bandwidth according to the bandwidth sharing definition; selecting the first or second path in response to comparing the first additional allocation bandwidth to the second additional allocation bandwidth; and transporting the data stream (40, 48) over the selected path, wherein each of the allocated bandwidths or the required bandwidth allocation is associated with guaranteed bandwidth, Committed Information Rate, CIR, average bandwidth, peak bandwidth, or Peak Information Rate, PIR.