There are two reasons why the effective pixels are less than the actual number of sensor pixels (sensing elements, or sensels.) First, Bayer sensors are composed of "pixels" that have color filters over them, allowing more light the same color as the filter through than light of different colors. Usually, we call them red, green, and blue filters organized in row pairs in the form of:
RGRGRGRG
GBGBGBGB
A single "pixel" as most of us are familiar with it, the RGB style pixel of a computer screen, is generated from a Bayer sensor by combining four sensels, an RGBG quartet:
R G
(sensor) --> RGB (computer)
G B
Since a 2x2 grid of four RGBG sensels is used to generate a single RGB computer pixel, there are not always enough pixels along the edge of a sensor to create a full pixel. An "extra" border of pixels is usually present on Bayer sensors to accommodate this. An additional border of pixels may also be present simply to compensate for the full design of a sensor, serve as calibration pixels, and accommodate extra-sensor components which usually includes IR and UV filters, anti-aliasing filters, etc. that may obstruct a full amount of light from reaching the outer periphery of the sensor.
Finally, Bayer sensors must be "demosaiced" to produce a normal RGB image of computer pixels. There are a variety of different ways to demosaic a Bayer sensor, however most algorithms try to maximize the amount of RGB pixels that can be extracted by blending RGB pixels from every possible overlapping set of 2x2 RGBG quartets:

For a sensor with a total of 36 single-color sensels, a grand total of 24 RGB pixels can be extracted. Notice the overlapping nature of the demosaicing algorithm by watching the animated GIF above. Also note how during the third and fourth passes, the top and bottom rows were not used. This demonstrates how the border pixels of a sensor may not always be utilized when demosaicing a Bayer sensel array.
As for the DPReview page, I believe they may have their information wrong. I believe the total number of sensels (pixels) on the Canon 550D Bayer sensor is 18.0mp, while the effective pixels, or the number of RGB computer pixels that can be generated from that base 18mp, is 5184x3456 or 17,915,904 (17.9mp). The difference would boil down to those border pixels that can't quite make up a full quartet, and possibly some additional border pixels to compensate for the design of the filters and mounting hardware that go in front of the sensor.