Part of the reason, of course, is war -- treating the wounded from Iraq and Afghanistan. Another contribution is that Congress added several hundred thousand reservists and National Guardsmen to the rolls of the Tricare program. This was designed to only cover active-duty personnel, their dependents and retirees. Reservists and National Guardsmen received no health care benefits except when they were activated for extended periods.
Tricare, in effect, is an HMO paid for by the U.S. government. Active-duty personnel pay no premiums. Retirees do, but the rate has not gone up since the program was established in 1995; the $1.2 billion generated in 2009 does not come close to covering costs. Congress and the Pentagon are considering raising these premiums. This would be a hard political act to carry out as it would look like those who served 20 years or more were being asked to carry a bigger burden during a time of war and economic stress.
Nobody wants to be seen as short-changing military health care during wartime. But it's hard to see how this cost curve can keep rising so steeply.