A packet transmission method, wherein the method comprises: generating, by a first router, a first routing information update packet; generating, by the first router, a first source-tracing packet, wherein the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and determining, by the first router, that a second router adjacent to the first router has a source-tracing capability, and sending the first source-tracing packet and the first routing information update packet to the second router, wherein the determining, by the first router, that a second router adjacent to the first router has a source-tracing capability comprises: sending, by the first router, a first source-tracing capability negotiation packet to the second router, wherein the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determining, by the first router, that the second router has the source-tracing capability, wherein the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability, wherein the method further comprises: receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, wherein the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router. generating, by a first router, a first routing information update packet; generating, by the first router, a first source-tracing packet, wherein the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and determining, by the first router, that a second router adjacent to the first router has a source-tracing capability, and sending the first source-tracing packet and the first routing information update packet to the second router, wherein the determining, by the first router, that a second router adjacent to the first router has a source-tracing capability comprises: sending, by the first router, a first source-tracing capability negotiation packet to the second router, wherein the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determining, by the first router, that the second router has the source-tracing capability, wherein the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability, wherein the method further comprises: receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, wherein the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router. sending, by the first router, a first source-tracing capability negotiation packet to the second router, wherein the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determining, by the first router, that the second router has the source-tracing capability, wherein the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability, wherein the method further comprises: receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, wherein the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router. receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, wherein the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router.