고구려, 요동에서 수나라에 맞서다.

마침내 수의 군대가 요하를 건너 요동성에 도착했어요.
고구려군이 성문을 닫고 굳게 지키자 수나라 군대는 성을 겹겹이 포위하였어요.
그리고 당시 가장 발달한 공성 무기들을 사용해 요동성을 공격하였어요.
수의 군대는 맹렬하게 공격했지만 요동성의 고구려군과 백성들은 효과적으로 잘 막아냈어요.
요동성이 오랫동안 함락되지 않자, 수나라 황제는 베주머니 백만여 개를 만들어 보냈어요.
그 베주머니에 흙을 채우고, 그것을 쌓아올려 성의 높이와 같게 해 공격하게 하였어요.
그러나 이 방법으로도 요동성을 함락시킬 수는 없었어요.
고구려군의 항전
요동성에서 몇 달간 발목이 잡힌 수나라 대군은 점점 초조해지기 시작했어요.
가장 시급한 것은 식량이었어요.
수 황제는 많은 수의 병사들을 동원한다면 빠른 기간 안에 고구려의 항복을 받을 수 있으리라 예상했지요.
그러나 예상과는 달리 전쟁이 길어지면서 식량이 가장 큰 문제가 되었던 거예요.
수 황제는 어쩔 수 없이 요동성을 돌아서 평양성을 직접 공격하기 위한 별동대를 만들었어요.
수나라 별동대는 약 30만 명 정도였어요.
여유가 없었던 수나라 별동대는 보급 부대 없이 군사들 각자가 100일치 식량을 짊어지고 평양성 공격에 나섰어요.