A method for state changing of stream control transmission protocol, said method comprising the following steps of: if a local end stream control transmission protocol (SCTP) determining that there are unsent data in a sending buffer and a receiving window of an opposite end SCTP is larger than or equal to the length of a first unsent data currently after an association of the local end SCTP enters into a SHUTDOWN-PENDING state, then the local end SCTP sending the first unsent data to the opposite end SCTP, and closing the SCTP association if no response is received from the opposite end SCTP; the method further comprising the following steps when the local end SCTP determines that there is unsent data in a sending buffer and the receiving window of the opposite end SCTP is smaller than the length of the first unsent data currently: the local end SCTP sending a probing message to the opposite end SCTP, the probing message being the first data marked as unsent in the sending buffer; starting a probing message transmission waiting timer Tw, if the local end SCTP receives a response message from the opposite end SCTP before the probing message transmission waiting timer Tw times out, the local end SCTP determining a Transmission Sequence Number and a receiving window in Selective Acknowledgement (SACK) in the response message; and determining the TSN received from the opposite SCTP is larger than or equal to the TSN of the first data marked as unsent in the sending buffer and the receiving window in the response message is larger than or equal to the length of the first data marked as unsent in the sending buffer, then deleting data whose TSN is equal to the TSN in the SACK and all data before said data in the sending buffer, and setting all remaining data in the sending buffer as unsent; wherein, said receiving window refers to a size of remaining space in a receiving buffer of the opposite end SCTP, which is carried in response data of the opposite end SCTP; said probing message refers to a message transmitted from the local end SCTP to the opposite end SCTP for detecting data received by the opposite end SCTP and the length of the receiving window. if a local end stream control transmission protocol (SCTP) determining that there are unsent data in a sending buffer and a receiving window of an opposite end SCTP is larger than or equal to the length of a first unsent data currently after an association of the local end SCTP enters into a SHUTDOWN-PENDING state, then the local end SCTP sending the first unsent data to the opposite end SCTP, and closing the SCTP association if no response is received from the opposite end SCTP; the method further comprising the following steps when the local end SCTP determines that there is unsent data in a sending buffer and the receiving window of the opposite end SCTP is smaller than the length of the first unsent data currently: the local end SCTP sending a probing message to the opposite end SCTP, the probing message being the first data marked as unsent in the sending buffer; starting a probing message transmission waiting timer Tw, if the local end SCTP receives a response message from the opposite end SCTP before the probing message transmission waiting timer Tw times out, the local end SCTP determining a Transmission Sequence Number and a receiving window in Selective Acknowledgement (SACK) in the response message; and determining the TSN received from the opposite SCTP is larger than or equal to the TSN of the first data marked as unsent in the sending buffer and the receiving window in the response message is larger than or equal to the length of the first data marked as unsent in the sending buffer, then deleting data whose TSN is equal to the TSN in the SACK and all data before said data in the sending buffer, and setting all remaining data in the sending buffer as unsent; wherein, said receiving window refers to a size of remaining space in a receiving buffer of the opposite end SCTP, which is carried in response data of the opposite end SCTP; said probing message refers to a message transmitted from the local end SCTP to the opposite end SCTP for detecting data received by the opposite end SCTP and the length of the receiving window. the local end SCTP sending a probing message to the opposite end SCTP, the probing message being the first data marked as unsent in the sending buffer; starting a probing message transmission waiting timer Tw, if the local end SCTP receives a response message from the opposite end SCTP before the probing message transmission waiting timer Tw times out, the local end SCTP determining a Transmission Sequence Number and a receiving window in Selective Acknowledgement (SACK) in the response message; and determining the TSN received from the opposite SCTP is larger than or equal to the TSN of the first data marked as unsent in the sending buffer and the receiving window in the response message is larger than or equal to the length of the first data marked as unsent in the sending buffer, then deleting data whose TSN is equal to the TSN in the SACK and all data before said data in the sending buffer, and setting all remaining data in the sending buffer as unsent; wherein, said receiving window refers to a size of remaining space in a receiving buffer of the opposite end SCTP, which is carried in response data of the opposite end SCTP; said probing message refers to a message transmitted from the local end SCTP to the opposite end SCTP for detecting data received by the opposite end SCTP and the length of the receiving window.