A method for compressing an Ethernet header, comprising: at a data packet transmission end, identifying a header which needs to be compressed and a common header; for the identified header which needs to be compressed, comparing the header which needs to be compressed with a header in a local compression table, and generating a compression number corresponding to the header which needs to be compressed for transmission; and for the identified common header, transmitting directly and transparently the common header; wherein the comparing the header which needs to be compressed with a header in the local compression table, and generating a compression number corresponding to the header which needs to be compressed for transmission comprises: when the comparison indicates that a difference amount value between the header which needs to be compressed and the header in the local compression table is smaller than an upper limiting difference value N, transmitting only the compression number or transmitting both the compression number and difference information content between the header which needs to be compressed and the header in the local compression table acquired through the comparison; further comprising: when the header which needs to be compressed is exactly the same as the header in the local compression table, transmitting only the compression number; and when the header which needs to be compressed is not exactly the same as the header in the local compression table and the difference amount value is smaller than the upper limiting difference value N, transmitting the compression number and the difference information content between the header which needs to be compressed and the header in the local compression table acquired through the comparison. when the comparison indicates that a difference amount value between the header which needs to be compressed and the header in the local compression table is smaller than an upper limiting difference value N, transmitting only the compression number or transmitting both the compression number and difference information content between the header which needs to be compressed and the header in the local compression table acquired through the comparison; further comprising: when the header which needs to be compressed is exactly the same as the header in the local compression table, transmitting only the compression number; and when the header which needs to be compressed is not exactly the same as the header in the local compression table and the difference amount value is smaller than the upper limiting difference value N, transmitting the compression number and the difference information content between the header which needs to be compressed and the header in the local compression table acquired through the comparison. when the header which needs to be compressed is exactly the same as the header in the local compression table, transmitting only the compression number; and when the header which needs to be compressed is not exactly the same as the header in the local compression table and the difference amount value is smaller than the upper limiting difference value N, transmitting the compression number and the difference information content between the header which needs to be compressed and the header in the local compression table acquired through the comparison.