A data transmission method, comprising: selecting (101, 201), by a coordinator, two channels as a prescribed channel and a spare channel respectively, and generating (101, 201) channel selection information comprising information of the prescribed channel and the spare channel, wherein the prescribed channel is used to re-transmit data that a node fails to transmit on another channel, and the spare channel is used to re-transmit data that the node fails to transmit on the prescribed channel; dividing (102, 202) a contention free period, CFP, of a superframe into three sub contention free periods, SCFPs, the CFP being in an active period of the superframe, and generating (102, 202) timeslot division information comprising information of the three SCFPs, wherein the three SCFPs comprise a first SCFP, a second SCFP, and a third SCFP; the second SCFP is used to re-transmit data that the node fails to transmit in the first SCFP; the third SCFP is used to re-transmit data that the node fails to transmit in the second SCFP; and wherein, by the coordinator, a timeslot is allocated in the first SCFP to the node and used to transmit data in the first SCFP; broadcasting (103, 203) a beacon frame on the prescribed channel in a beacon period of the superframe, wherein the beacon frame comprises the channel selection information and the timeslot division information; and receiving (104, 204) data that the node transmits based on the channel selection information and the timeslot division information, and transmitting an acknowledgement frame; characterized in that the timeslot used to transmit data in the first SCFP is the same as a timeslot used to re-transmit the data in the second SCFP. selecting (101, 201), by a coordinator, two channels as a prescribed channel and a spare channel respectively, and generating (101, 201) channel selection information comprising information of the prescribed channel and the spare channel, wherein the prescribed channel is used to re-transmit data that a node fails to transmit on another channel, and the spare channel is used to re-transmit data that the node fails to transmit on the prescribed channel; dividing (102, 202) a contention free period, CFP, of a superframe into three sub contention free periods, SCFPs, the CFP being in an active period of the superframe, and generating (102, 202) timeslot division information comprising information of the three SCFPs, wherein the three SCFPs comprise a first SCFP, a second SCFP, and a third SCFP; the second SCFP is used to re-transmit data that the node fails to transmit in the first SCFP; the third SCFP is used to re-transmit data that the node fails to transmit in the second SCFP; and wherein, by the coordinator, a timeslot is allocated in the first SCFP to the node and used to transmit data in the first SCFP; broadcasting (103, 203) a beacon frame on the prescribed channel in a beacon period of the superframe, wherein the beacon frame comprises the channel selection information and the timeslot division information; and receiving (104, 204) data that the node transmits based on the channel selection information and the timeslot division information, and transmitting an acknowledgement frame;