DDR stands for Double Data Rate. This means that the IO bus makes two data transfers per oscillator clock cycle. The data is latched on both the rising and falling edge of the clock pulse.
The difference between DDR, DDR2 and DDR3 is the ratio of the IO bus oscillator and the core frequency of the DRAM modules themselves. DDR has a 1:1 ratio between the IO bus frequency and the module frequency, which means that the IO bus makes two transfers (due to the DDR) for every read/write to the DRAM modules.
DDR2 has a 2:1 ratio between the IO bus frequency and the module frequency, meaning that the IO bus makes 4 transfers for every module cycle.
DDR3 has a 4:1 ratio between the IO bus frequency and the module frequency, meaning that the IO bus makes 8 transfers for every module cycle.
It's important to notice that while DRAM IO bus speeds have gone from a paltry 400 Mhz at PC-3200 to 2400 Mhz at PC-19200 the actual DRAM module speeds have only gone from 200Mhz (1*2:1) to 300Mhz (4*2:1) over the same period.
The higher bandwidth on the IO bus for each generation comes from doubling the size of the 'prefetch buffer' which takes advantage of the way DRAM operates by reading or writing multiple words (the size of a word depends on the module) to the same row in memory.