A method for implementing a service chain, used in a service chain-enabled domain network, wherein service nodes SNs and a service chain path from an ingress SN to an egress SN through an intermediate SN are deployed in the service chain-enabled domain network, the SNs comprise the ingress SN, the intermediate SN, and the egress SN, and the method comprises: Receiving, by the intermediate SN, an extended first Border Gateway Protocol BGP packet sent by a downstream SN that is on the service chain path and immediately adjacent to the intermediate SN, wherein the extended first BGP packet comprises a service chain path identifier and a first service chain path, the service chain path identifier is used to identify the service chain path, and the first service chain path is a path comprising a service chain path from the ingress SN to the intermediate SN; Determining, by the intermediate SN, an upstream SN that is on the first service chain path and immediately adjacent to the intermediate SN; Generating, by the intermediate SN, a second service chain path from the first service chain path; and Sending, by the intermediate SN, an extended second BGP packet to the upstream SN, wherein the extended second BGP packet comprises the service chain path identifier and the second service chain path, and the second service chain path is a path comprising a service chain path from the ingress SN to the upstream SN; wherein after the receiving, by the intermediate SN, an extended first BGP packet sent by a downstream SN that is on the service chain path and immediately adjacent to the intermediate SN, the method further comprises: establishing, by the intermediate SN, a first tunnel from the intermediate SN to the downstream SN with the downstream SN, and linking the first tunnel to a second tunnel to form one tunnel according to the service chain path identifier, wherein the second tunnel is a tunnel that is from the upstream SN to the intermediate SN and established by the upstream SN with the intermediate SN. Receiving, by the intermediate SN, an extended first Border Gateway Protocol BGP packet sent by a downstream SN that is on the service chain path and immediately adjacent to the intermediate SN, wherein the extended first BGP packet comprises a service chain path identifier and a first service chain path, the service chain path identifier is used to identify the service chain path, and the first service chain path is a path comprising a service chain path from the ingress SN to the intermediate SN; Determining, by the intermediate SN, an upstream SN that is on the first service chain path and immediately adjacent to the intermediate SN; Generating, by the intermediate SN, a second service chain path from the first service chain path; and Sending, by the intermediate SN, an extended second BGP packet to the upstream SN, wherein the extended second BGP packet comprises the service chain path identifier and the second service chain path, and the second service chain path is a path comprising a service chain path from the ingress SN to the upstream SN; wherein after the receiving, by the intermediate SN, an extended first BGP packet sent by a downstream SN that is on the service chain path and immediately adjacent to the intermediate SN, the method further comprises: establishing, by the intermediate SN, a first tunnel from the intermediate SN to the downstream SN with the downstream SN, and linking the first tunnel to a second tunnel to form one tunnel according to the service chain path identifier, wherein the second tunnel is a tunnel that is from the upstream SN to the intermediate SN and established by the upstream SN with the intermediate SN.