A method for determining a state of a terminal device, comprising: determining , by the terminal device, an amount of data to be sent; and determining , by the terminal device, whether the terminal device needs to be in a first state or a second state, wherein in the first state, the terminal is in idle mode and in the second state, the terminal device is in a Radio Resource Control, RRC, connected mode; the method being characterised by determining whether the terminal device needs to be in the first state or the second state comprises one of the following alternatives: determining, by the terminal device, according to an available uplink transmission resource in the first state, an amount of data that can be transmitted at a time; and if the amount of data that can be transmitted at a time is less than the amount of data to be sent, determining, by the terminal device, that the terminal device needs to be in the second state; or determining, by the terminal device, according to the available uplink transmission resource in the first state, an amount of data that can be transmitted at a time; further determining, by the terminal device, according to the amount of data that can be transmitted at a time, a transmission duration necessary to transmit the amount of data to be sent and/or the number of transmission attempts necessary to transmit the amount of data to be sent; and if the transmission duration is greater than a first threshold and/or the number of transmission attempts is greater than a second threshold, determining, by the terminal device, that the terminal device needs to be in the second state. determining , by the terminal device, an amount of data to be sent; and determining , by the terminal device, whether the terminal device needs to be in a first state or a second state, wherein in the first state, the terminal is in idle mode and in the second state, the terminal device is in a Radio Resource Control, RRC, connected mode; the method being characterised by determining whether the terminal device needs to be in the first state or the second state comprises one of the following alternatives: determining, by the terminal device, according to an available uplink transmission resource in the first state, an amount of data that can be transmitted at a time; and if the amount of data that can be transmitted at a time is less than the amount of data to be sent, determining, by the terminal device, that the terminal device needs to be in the second state; or determining, by the terminal device, according to the available uplink transmission resource in the first state, an amount of data that can be transmitted at a time; further determining, by the terminal device, according to the amount of data that can be transmitted at a time, a transmission duration necessary to transmit the amount of data to be sent and/or the number of transmission attempts necessary to transmit the amount of data to be sent; and if the transmission duration is greater than a first threshold and/or the number of transmission attempts is greater than a second threshold, determining, by the terminal device, that the terminal device needs to be in the second state. <EOS>