Ethernet Passive Optical Network (EPON) has been considered as the best candidate of the next generation access network, because of it’s particular advantages, such as inexpensive, simple, scalable, and capable of delivering bundled voice, data and video services. However, the standard isn’t approved, many questions are still discussing. Dynamic Bandwidth Allocation (DBA) is one of the hop topics. If we use static bandwidth allocation in EPON system, slots may not be filled to capacity in the case when the OLT grants to an ONU a slot smaller than the ONU requested based on its queue size. Then the packet will have to wait for the next slot, so there is an unused remainder at the end of the slot. As a result variable-length packets don’t fill the static slot completely. Conventional E-PON uses a slot-size based DBA algorithm. Packets of all priorities are put in the same slot. Due to the burstness of traffic and packet length variation, the starting point of each slot is push-pulled from frame to frame, as a result delay variation of packet is not under control. We can not support appropriate Qos to real-time traffic. In our design, we divide Ethernet data into three parts, one is the steady part that has N time slots for voice traffic, corresponding to N ONUs. In this case, there are M ONUs those has video traffic for transmit, the second part having M time slots will be established named Quasi-dynamic. And the other is the dynamic part that is basically one giant slot for data traffic, shared by all ONUs. Since the steady part of the frame can be approximated by constant flows, it will make influence upon voice. Establish or remove Quasi-dynamic channels will take less than 50ms delay variation. So this arithmetic can match the video’s character of less than 100-ms maximum jitter. Usually, for the low priority class traffic, there is no requirement on any QoS parameters; therefore, optimizing throughput is the goal. So we use IPACT algorithm in the third part, making utilization almost 100%.