This system originated with Everquest, and has been used in many MMOs since, including the wildly popular World of Warcraft. DKP stands for Dragon Kill Points, and was named so after two of the bosses in EQ. Additionally, several sub-types of the DKP system exist, including Zero-Sum DKP, Simple DKP, and Auction System DKP.
How it works - A "price" in points is assigned to each potential item that the group could receive. Players earn points for participating in raids, and may gain or lose points based on related issues such as being on time, prepared, and willing to stay for the duration of the raid. When an item drops, all interested players communicate as such to the Raid Leader (RL) who will award the item to the player with the highest DKP bank. The price of the item is deducted from that player's banked points. Many guilds will have an entire document dedicated to the rules concerning DKP and loot distribution, and most have established guidelines about bidding on off-spec items, cross-class items, etc.

click to enlarge
Weaknesses - DKP is a virtual currency system, and as such, it requires an accounting of some sort. Keeping track of each individual's earned and spent points, especially with multiple raids per week and guilds of up to 40 dedicated raiders, can be pretty taxing on the leadership. Without supporting guidelines in place, it is possible for players to be able to bid on and receive items that really would benefit another player much more, like players who bid on high-dps weapons simply for the stat bonuses.
It is also very easy for the most active guild members to "game the system." Since the most active members will generally have the highest point total, they will almost always win the "tiebreaker" that allows them to always get first choice on loot they want. Since they replenish their total bank the fastest, it is unlikely that even on subsequent raids a player of the same class would have a higher bank total.
Strengths - In large guilds, like any other social group, there are likely to be cliques and defined circles of friendship among the members. Using a definitive system such as DKP for loot distribution helps to ensure, both to the leaders and all the members, that gear assignment is fair and unbiased. Allocating bonus points to the players who help to make raiding smoother provides a real incentive to show up on time and ready to go.