Due to huge wireless channel access overhead for transporting small packets in the wireless LAN, it is inefficient to transmit a large number of VoIP packets directly. To improve the channel efficiency and increase the effective network capacity of such a network, the approach of concatenating multiple similar packets has attracted high attentions in both research and industry. However, to concatenate multiple packets into one frame, packets may be held in the queue and their delay may increase. Unfortunately, the voice quality of VoIP is sensitive to the end-to-end delay. Packet concatenation may lead to a conflict with QoS. In order to improve the network capacity and keep the voice quality of VoIP at the same time, we propose a novel packet concatenation mechanism in this study. The proposed packet concatenation mechanism can handle traffic flows in different types and allow easy implementation. Under such architecture, we first analyze the VoIP packet delay due to concatenation. Based on the analysis, we then implement the prototype of the packet concatenation mechanism on Linux platform and conduct experiments and performance measurement. In addition to significant network capacity improvement, our design provides a solution which controls the VoIP packet concatenation delay in a good manner. We also evaluate the computation cost caused by the packet concatenation mechanism in the Linux prototype. Last but not least, the throughout of non-real-time traffic such as FTP is found to also benefit significantly from the concatenation mechanism while the concurrent VoIP calls is kept to enjoy low average delay.