A packet processing method, wherein the method is applied to a router, the router comprises an input line card (11, 21), an output line card (12, 22), at least one switching module (13, 23) connecting the input line card and the output line card, and a first buffer module connected to the switching module, the first buffer module comprises at least one first buffer block, the input line card comprises at least one second buffer module, and each second buffer module comprises at least one second buffer block; and the method comprises: receiving, by the input line card (11, 21), at least one packet; obtaining, by the input line card (11, 21), information about an available first buffer block in a third buffer module, wherein the third buffer module is the first buffer module that comprises the available first buffer block; characterized in that the method further comprises: allocating, by the input line card (11, 21), a third buffer block to each of the at least one packet based on at least one buffer information block stored in the input line card and the information about the available first buffer block, wherein the third buffer block is a first buffer block of the at least one first buffer blocks or a second buffer block of the at least one second buffer blocks, each buffer information block corresponds to at least one fourth buffer block, wherein each first buffer block or second buffer block which corresponds to a particular buffer information block is the fourth buffer block, and wherein each of the at least one fourth buffer block is the first buffer block or the second buffer block, and each buffer information block is used to indicate an occupation status of each fourth buffer block; and buffering, by the input line card (11, 21), each packet into the third buffer block, wherein after the buffering, by the input line card (11, 21), each packet into the third buffer block, the method further comprises: sending, by the input line card (11, 21), a packet queue status to the output line card (12, 22); determining, by the output line card (12, 22), a size of a schedulable packet based on the packet queue status, and sending the size of the schedulable packet to the input line card (11, 21); and scheduling, by the input line card (11, 21), a packet based on the size of the schedulable packet, in a sequence of the at least one buffer information block, and in a sequence of the at least one fourth buffer block corresponding to each buffer information block. receiving, by the input line card (11, 21), at least one packet; obtaining, by the input line card (11, 21), information about an available first buffer block in a third buffer module, wherein the third buffer module is the first buffer module that comprises the available first buffer block; allocating, by the input line card (11, 21), a third buffer block to each of the at least one packet based on at least one buffer information block stored in the input line card and the information about the available first buffer block, wherein the third buffer block is a first buffer block of the at least one first buffer blocks or a second buffer block of the at least one second buffer blocks, each buffer information block corresponds to at least one fourth buffer block, wherein each first buffer block or second buffer block which corresponds to a particular buffer information block is the fourth buffer block, and wherein each of the at least one fourth buffer block is the first buffer block or the second buffer block, and each buffer information block is used to indicate an occupation status of each fourth buffer block; and buffering, by the input line card (11, 21), each packet into the third buffer block, wherein after the buffering, by the input line card (11, 21), each packet into the third buffer block, the method further comprises: sending, by the input line card (11, 21), a packet queue status to the output line card (12, 22); determining, by the output line card (12, 22), a size of a schedulable packet based on the packet queue status, and sending the size of the schedulable packet to the input line card (11, 21); and scheduling, by the input line card (11, 21), a packet based on the size of the schedulable packet, in a sequence of the at least one buffer information block, and in a sequence of the at least one fourth buffer block corresponding to each buffer information block. sending, by the input line card (11, 21), a packet queue status to the output line card (12, 22); determining, by the output line card (12, 22), a size of a schedulable packet based on the packet queue status, and sending the size of the schedulable packet to the input line card (11, 21); and scheduling, by the input line card (11, 21), a packet based on the size of the schedulable packet, in a sequence of the at least one buffer information block, and in a sequence of the at least one fourth buffer block corresponding to each buffer information block.