EdgeRouter - Is Equal-Cost Multi Path (ECMP) routing supported?

Yes, EdgeRouter supports Equal-Cost Multi Path (ECMP) routing. Assuming multiple routes exist for the same destination network, with same prefix and administrative distance, traffic will be balanced equally between links. ECMP is supported per the linux kernel.

The following example shows a default route of 0.0.0.0/0 with two static routes (via 10.1.0.1, eth0 & via 172.16.3.242, eth1). The router balances between the two routes in round robin fashion, unlike on versions  1.6 and earlier where the two routes would flow-hash manner.

ubnt@R1:~$ show ip route 
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
I - ISIS, B - BGP, > - selected route, * - FIB route

S>* 0.0.0.0/0 via 10.1.0.1, eth0
* via 172.16.3.242, eth1
C>* 10.1.0.0/23 is directly connected, eth0
C>* 127.0.0.0/8 is directly connected, lo
C>* 172.16.3.0/24 is directly connected, eth1

After pinging 8.8.8.8 (Google DNS server) and 23.21.93.68 (ubnt.com), the IP route summary shows ECMP statistics.

ubnt@R1:~$  show ip route summary 
IP routing table name is Default-IP-Routing-Table(0)
IP routing table maximum-paths   : 8
Total number of IPv4 routes      : 20
Total number of IPv4 paths       : 24
Route Source    Networks
connected       12
static          8
Total           20
FIB             0
ECMP statistics (active in ASIC):
---------------------------------
Total number of IPv4 ECMP routes : 4
Total number of IPv4 ECMP paths    : 8
Number of routes with 2 ECMP paths : 4