What is the l2 cache & l 3 cache

Generally it is there to help improve overall processing performance. L2 is faster than L3. If the CPU needs to store even more data it will then go to the RAM installed on the motherboard which is slower than L3 cache.

More amount of cache is not necessarily better since the CPU must search through the cache to find the data it is looking for. If it is not there then basically the cache gets flushed, other data is loaded, then the CPU searches again. Not exaclty precise, but easy enough to understand.
 
The various levels of CPU cache are fast access memory built on to teh CPU die. Different CPU's have different levels/amounts of built in cache. As a general rule, the higher level the cache is, the more of it exists, but the slower access time is as well.

In todays CPU's, you typically have 3 levels of built in CPU cache. In this case, Main Memory would sometimes be considered the L4 cache. [I still have a lot of books that refer to the L3 cache as main memory...]