C.O.
Welcome to mamapedia!
This is a hematoma (a bruise) which is blood pooling under the skin on the fatty tissue where the damage/injury was done. However, I have more questions than answers...
What did your son hit his leg on?
Is it red or inflamed?
Has the knot changed shape?
Can you move the knot or is it solid?
Is it hot to the touch?
It can take up to 4 weeks for a bruise to go away. If it is STILL red or painful after three weeks? I'd make a doctor's appointment tomorrow morning and talk to him/her about it.
Good luck!