I have experience of two.
I bought the Marumi ringflash which I used on my 40D. When I tried it on my 7D all sorts of weird things happened like the whole camera locking up and reporting an error (8 I think) It so spooked me that I took it off the camera and never used it again.
In truth it could have been down to the humidity in the butterfly house.
Anyway I eventually bought the Canon MR-24 EX twin flash. This is expensive, (but let's face it no more expensive than a good lens) and really is the dog's danglies.
The cheaper and less powerful MR-14 EX is a ringflash and would probably be fine.
I would personally go for Canon branded kit if you can possibly afford it as you can pretty much guarantee that all the ubits will co-operate with each other.