With the rapidly growth of the network technology, broadband communication systems have become very important. However, most scheduling algorithms in network devices lacks of the ability to dynamically allocate bandwidth among connection with various quality demand. In this paper, we propose an adaptive bandwidth allocation mechanism to enhance the network quality to meet the requirements of various applications. The proposed scheme can allocate the resources of the network bandwidth according to the queue dynamics of each router and a weight-adjusting mechanism that comprises priorities. In this algorithm, we not only consider the priority of each queue, but also will efficiently utilize the link bandwidth. To verify the proposed scheme, we develop a packet schedule based on Linux kernel. The result shows that the proposed scheduling algorithm indeed improves the bandwidth utilization and comprises the priority mechanism.