A method for a source virtual tunnel endpoint 'VTEP' to perform congestion-aware load balancing in a data center network that includes the source VTEP, a destination VTEP, a source endpoint, a destination endpoint and multiple intermediate switches, the method comprising: performing path learning to learn multiple different paths connecting the source VTEP with the destination VTEP provided by respective multiple intermediate switches in the data center network; learning, by the source VTEP based on first packets from the destination VTEP, congestion state information associated with each of the multiple paths, wherein the congestion state information includes a mapping of each path with its respective outer source port number and with an indication of congestion for that path; receiving, by the source VTEP, second packets that are sent by the source endpoint and destined for the destination endpoint associated with the destination VTEP; selecting, by the source VTEP, a particular path from amongst the multiple different paths connecting the source VTEP with the destination VTEP, based on the congestion state information; generating, by the source VTEP, encapsulated second packets by encapsulating each of the second packets with layer 4 outer header information that includes a set of tuples associated with the particular path, including determining a particular outer source port number associated with the particular path according to the mapping, and configuring the set of tuples in the header information in each of the second packets to include the particular outer source port number; and sending, by the source VTEP, the encapsulated second packets to the destination endpoint wherein the encapsulated second packets are forwarded via the particular path based on the set of tuples by performing load balancing in the intermediate switches using as an entropy the outer source port number in the layer 4 outer header information of the encapsulated second packets. performing path learning to learn multiple different paths connecting the source VTEP with the destination VTEP provided by respective multiple intermediate switches in the data center network; learning, by the source VTEP based on first packets from the destination VTEP, congestion state information associated with each of the multiple paths, wherein the congestion state information includes a mapping of each path with its respective outer source port number and with an indication of congestion for that path; receiving, by the source VTEP, second packets that are sent by the source endpoint and destined for the destination endpoint associated with the destination VTEP; selecting, by the source VTEP, a particular path from amongst the multiple different paths connecting the source VTEP with the destination VTEP, based on the congestion state information; generating, by the source VTEP, encapsulated second packets by encapsulating each of the second packets with layer 4 outer header information that includes a set of tuples associated with the particular path, including determining a particular outer source port number associated with the particular path according to the mapping, and configuring the set of tuples in the header information in each of the second packets to include the particular outer source port number; and sending, by the source VTEP, the encapsulated second packets to the destination endpoint wherein the encapsulated second packets are forwarded via the particular path based on the set of tuples by performing load balancing in the intermediate switches using as an entropy the outer source port number in the layer 4 outer header information of the encapsulated second packets.