Basically you need the 'bonding' kernel module (should ship standard on most distros) and the ifenslave toolset (should either ship standard or be available as an official package). That's it, really. The tricky part is usually figuring out how to get your distro to set it all up properly at boot time.