A method for establishing a multi protocol label switching, MPLS, traffic engineering, TE, bidirectional tunnel, comprising initiating, by a first node, the establishment of a bidirectional tunnel, comprising sending, by the first node, a resource reservation protocol traffic engineering, RSVP-TE, Path message to a second node through an intermediate node, when establishing a first unidirectional tunnel; wherein the RSVP-TE Path message carries Session object and SessionAttribute object of the current protocol standard, and Reverse Session object and ReverseSession Attribute objects, wherein the ReverseSession Attribute object specifies the requirement for the reverse tunnel, wherein the content of the ReverseSession Object is the same as the content of the Session object; receiving, by the intermediate node, the RSVP-TE Path message sent from the first node, and establishing a forward tunnel; receiving, by the second node, the RSVP-TE Path message sent from the intermediate node, finding that the RSVP-TE Path message already reaches the egress node of the forward tunnel, and then sending a reservation, Resv, message of the forward tunnel to the first node; initiating, by the second node, the establishment of a reverse tunnel and constructing a path message of the reverse tunnel to be sent to the first node, after the second node finds that the RSVP-TE Path message carries the ReverseSession object and that the content of the ReverseSession object is the same as the content of the Session object; calculating, by the second node an Explicit Route Object, ERO, by invoking Constrained Shortest Path First, CSPF, according to a Flag field of the ReverseSessionAttribute object carried in the RSVP-TE Path message and Record Route Object, RRO, in the RSVP-TE Path message; sending, by the second node, the path message of the reverse tunnel to the first node, wherein the path message of the reverse tunnel carries a Session object, a SessionAttribute object, a ReverseSession object, a ReverseSessionAttribute object and the calculated ERO, wherein resource affinity information and bandwidth in the SessionAttribute object comes from the ReverseSessionAttribute object carried in the RSVP-TE, Path message, wherein the content of the ReverseSession object is the same as the content of the Session object carried in the RSVP-TE, Path message, wherein the content of the ReverseSessionAttribute object is the same as the content of the SessionAttribute object in the RSVP-TE, Path message; recording, by the second node, the information of the forward tunnel corresponding to the reverse tunnel; receiving, by an intermediate node, the path message of the reverse tunnel sent from the second node, and establishing a reverse tunnel according to the content in the path message of the reverse tunnel; sending, by the first node, a ResvConfirm message indicating the successful establishment of the forward tunnel to the second node, after receiving the Resv message from the second node; sending, by the first node, a Resv message of the reverse tunnel to the second node, after receiving the path message of the reverse tunnel from the second node and finding that the node is the egress node of the reverse tunnel; recording, by the first node, the reverse tunnel information being the content in the ReverseSession object of the path message of the reverse tunnel; binding, by the second node, the forward tunnel to the reverse tunnel, after receiving the ResvConfirm message indicating the successful establishment of the forward tunnel from the first node, and sending a ResvConfirm message indicating the successful establishment of the reverse tunnel to the first node; binding, by the first node, the forward tunnel to the reverse tunnel, after receiving the ResvConfirm message indicating the successful establishment of the reverse tunnel from the second node.