1 Introduction

Modern communication networks have rapidly increased during the last decade and estimated that the power consumption of these networks has increased from 0.4 % of the entire global electricity consumption to 1 % [1]. The current network consumes 10,000 times more energy than the absolute minimum requirement, and the broadband access network constitutes 80 % of the total power consumption of wire-line networks [2, 3]. With the increasing demands for broadband access in information and communication technology (ICT), the number of subscribers and data rate are expected to significantly increase consequently. Thus, the explosive growth of access networks results in enormous power consumption and makes the energy-saving technologies and system architecture desirable [4]. Among broadband access technologies, fiber-to-the-home (FTTH) is one of major emerging technologies widely employed to deliver data to end users. As it offers huge bandwidth, cost efficiency, and efficient energy consumption, FTTH technology will supersede broadband access networks in the near future. FTTH infrastructure can be point-to-point (PtP) or point-to multi-point (PtmP), where PtmP topology, such as passive optical network (PON), plays a key to the realization of FTTH. PON provides the lowest energy-consuming solution for broadband access, clearly outperforming optical point-to-point (PtP) access networks as well as hybrid fiber-copper-based access technologies and wireless access solutions, e.g., WiMAX, in terms of energy per bit [5].

In order to realize the PON, different optical access technologies, including time-division multiplexing PON (TDM-PON), time and wavelength division multiplexing PON (TWDM-PON), wavelength division multiplexing PON (WDM-PON), and orthogonal frequency division multiple access PON (OFDMA-PON) have been developed [6]. As an optical line terminal (OLT) interface is shared by multiple optical network units (ONUs), TDM-PON is the most energy-efficient optical access solution currently deployed [3, 7]. An Ethernet passive optical network (EPON) is a well-known TDM-PON infrastructure with the packets encapsulating in the Ethernet frame. Whereas, with regard to Ethernet frame usage, EPON is friendlier to the user equipment, can adapt the data exchange between local area networks (LAN), and can access the network with minimum encoding/decoding overhead and time. Moreover, EPON is a cost-effective PON, having the benefit of low-cost Ethernet equipment. To assign the transmission time to each ONU, the OLT runs a dynamic bandwidth allocation (DBA) which plays a key component of the EPON systems. During the last decade, many DBA refinements were proposed to improve the efficiency of the EPON upstream bandwidth in response to the ONU burst traffic requirement [815]. Although the power consumption of the TDM-EPON is the best among access network technology, it is still receiving considerable attention in the global energy-saving plan of modern telecommunication. Unfortunately, the IEEE802.3ah and IEEE802.3av EPON standards have not provided energy-efficient mechanisms for the OLT and ONU devices.

Recently, hardware-based and software-based techniques have been proposed to reduce the EPON energy consumption of the ONUs by up to 80 % [16, 17]. The hardware-based techniques can involve either the design of new ONU architectures and/or the optical noise reuse. Turning off/on the ONU’s devices to achieve energy saving that imposes overhead time (required to change the ONU state which consists of laser turn-on time, clock recovery time, and synchronization) to the system relies on which parts of ONU are chosen. Furthermore, software-based protocols embedded in these architectures need to manipulate their sleep functionality. ONU power shedding, dozing, adaptive link rate (ALR), and sleep are the main techniques in the software-based category [6, 18]. Regarding to ONU power shedding, the ONU turns some of its devices off in order to reduce power consumption; however, the optical link has full functionality during ONU power shedding; thus, the power reduction is minimized. Similarly, the doze mode turns the Tx off whenever there is no traffic in the upstream direction, while keeping the receiver (Rx) on to receive downstream traffic. The ALR is the capability of selecting the transmission rate dynamically that is useful for multi-rate TDM-PON, such as 10G EPON. Finally, the state during which the ONU turns off both the Rx and Tx for a period, which is referred to as sleep. Deep and cyclic sleeps are two forms of ONU sleep. In deep sleep, the ONU turns off the Rx and Tx when there are no traffic in the upstream and downstream directions. However, incorrect estimation of sleep duration in the sleep mode will cause an increase in delays, packet dropping, and decline the system performance. In cyclic sleep, the sleep cycle contains consecutive sleep and active periods to improve the drawbacks of deep sleep. Overall, the ONU sleep scheme saves more energy than the power shedding and dozing schemes. However, sleep duration is a critical value when realizing green TDM-PON as setting an overlong sleep duration can reduce the QoS, while short sleep duration increases the ONU power consumption [6]. Several ONU sleep-based techniques are proposed to adjust the sleep duration [1924] based on just-in-time sleep control, fixed bandwidth allocation, downstream-centric scheme (DCS), upstream-centric scheme (UCS), adaptive delay-aware energy efficient (ADAEE), and double-sleep-state and dynamic double-threshold receiver selection (EDDS). Table 1 summarizes the abovementioned technique characteristics.

Table 1 Recent ONU sleep-based techniques

The abovementioned studies have tried to achieve maximum energy saving; however, their assumptions regarding high-priority traffic for QoS are not in accordance with the ITU-T recommendations that the end-to-end delay for voice calls is \({<}150\,\hbox {ms}\) and the delay in the local exchange should be \({<}5\,\mathrm{ms}\) [25]. Moreover, putting the ONU into the sleep mode for long time or keeping traffic in the OLT for a significant time increases delays, jitter, and packet loss, while consequently decreasing the QoS metrics are against the energy efficiency. The challenging issue is how to balance the trade-off between achieving maximum energy saving and guaranteeing QoS. To tackle this problem, we will introduce an enhanced EPON architecture and energy-saving mechanism that reduce the energy consumption while guarantee the QoS metrics for high-priority traffic. The sleep manager (SM) and energy-saving management (ESM) components are major components to enable the energy-saving mechanism. The SM is liable to calculate dynamic sleep durations for Tx/Rx, manages the queue in downstream direction, runs the DBA to grant time slot to the ONUs in the upstream direction, and reports the sleep duration to the ONUs. The ESM is responsible to turn off/on the Tx and/or Rx with the granted Tx and Rx sleep durations and supports early wakeup function in an unexpected situation. To construct the system with minimum complexity, the proposed energy-saving mechanism adopts the IEEE 802.3ah MPCP for message passing between OLT and ONUs. Furthermore, the proposed mechanism is adapted for EPON that also can be used in other TDM-based PONs.

The rest of this paper is organized as follows. Section 2 introduces the proposed enhanced EPON architecture and energy-saving mechanism. Section 3 describes the performance evaluation of energy-saving mechanism without impairing the overall QoS in terms of mean packet delay, system throughput, jitter and packet loss. We conclude the study in the Sect. 4.

2 System architecture and energy-saving mechanism

In the proposed energy-saving mechanism, four ONU modes and their possible transitions are defined in the energy-saving mechanism, shown in Fig. 1a, which are active, transmission, doze, and sleep that ONU can transit and operate independently without interfering with each other. In the active mode, an ONU can receive/transmit packets. The doze mode keeps the ONU’s receiver (Rx) on and the transmitter (Tx) off, and therefore, in this mode the ONU cannot transmit. In the transmission mode, the ONU turns on the Tx to send the data to the OLT while keeping the Rx off. Finally, the sleep mode keeps both reception and transmission off. Table 2 shows the ONU modes and the Tx and Rx status in each mode. Figure 1b describes the general transmitter queue state diagram which follows the Markov chain that \(a\) is the arrival rate and \(s\) is the data processing rate. Moreover, the total queue size of ONU is \(N\) and the data in the queue is \(k\). When \(k=0\), Q(0) is the state that the transmitter has no packet to process. When \(1\le k\le N\) is the state that transmitter queue in process, and \(k\) is less than threshold that ONU are able to turn off transmitter. Figure 2 shows the timing diagram and message passing between OLT and ONU. The sleep duration consists of the time that ONU is in one of the doze, transmission, sleep modes, and the time that power off/on delay for turning off/on Tx/Rx, clock recovery, and synchronization. The sleep duration is a critical value to satisfy the QoS metrics, which setting an overlong sleep duration reduces the QoS, while short sleep duration increases the ONU power consumption. The power off/on delay is a hardware-based with fixed value, and the sleep duration is dynamic in one of the doze, transmission and sleep modes. To guarantee the QoS metrics, different boundary delay based on traffic types [i.e., expedited forwarding (EF), assured forwarding (AF), and best effort (BE)] are defined. To support energy saving, an enhanced EPON is proposed in which system architecture and its operations are described as follows.

Fig. 1
figure 1

ONU modes transitions and transmitter queue state diagram. a ONU modes and possible transitions. b Transmitter queue state diagram

Fig. 2
figure 2

Proposed timing diagram and message passing

Table 2 ONU modes and the transmitter (Tx)/receiver (Rx) status

2.1 OLT

Figure 3 shows the proposed OLT architecture which includes three new components - traffic classifier, downstream packet scheduling (DPS), and sleep manager (SM). The traffic classifier is used to classify the packets based on different classes of services (CoS), ONU logical link identifier (LLID), and differentiated services (DiffServ). The DPS reorders the frames in the downstream direction, while the separated buffer for each ONU is defined to retain the ONU’s traffic based on the EF, AF, and BE traffics. The SM consists of downstream bandwidth management (DBM) unit, ONU state and sleep duration calculation (OSSDC) unit, and upstream DBA (UDBA) unit. The DBM monitors the DPS, reports the DPS queues to OSSDC for calculating receiver (Rx) sleep duration, while the UDBA runs the DBA to assign bandwidth to the ONUs in the upstream direction, sends the REPORT message to OSSDC to calculate transmitter (Tx) sleep duration, and finally bypasses the Tx/Rx sleep durations to the ONUs by GATE message. The calculations of the Tx/Rx sleep duration in OSSDC are described in detail as follows.

Fig. 3
figure 3

Proposed OLT architecture

2.1.1 Calculations of Tx and Rx sleep duration

To calculate the Tx sleep duration shown in Fig. 4, \(T\) is defined as the time difference between two sequential ONU’s reports at \(T_{i+1}\) and \(T_i\), and the \(\mathrm{Tx}_\mathrm{sleep}\) is the Tx sleep duration is calculated as the following steps:

Step 1) :

IF \(\mathrm{EF}_\mathrm{REPORT} >0\), the \(T_{\mathrm{EF}-\mathrm{Max}-\mathrm{sleep}}\) is \(T_{\mathrm{EF-Max-boudary-delay}} -T\), where \(T_{\mathrm{EF-Max-boudary-delay}}\) is the boundary delay requirements for EF traffic (i.e., 5 ms in the access networks), and the EF queue requirement for \(T_{\mathrm{EF-Max-sleep}} \) is \(Q_{\mathrm{EF-Max-sleep}} \!=\!\mathrm{EF_{REPORT}} \times T_{\mathrm{EF-Max-sleep}} /T\). The total number of EF bits accumulated in the ONU during the \(T_{\mathrm{EF-Max-sleep}}\) is \(Q_{\mathrm{EF-Total}} =Q_{\mathrm{EF-Max-sleep}} +\mathrm{EF}_{\mathrm{REPORT}} \). The length of Queue#0 report (used to report EF traffic) in the REPORT message shown in Fig. 5 is two bytes; therefore, the maximum number of bit which ONU can report for EF queue is \(Q_{\mathrm{EF-Max-report}} =32,767\). Then, the \(\mathrm{Tx}_\mathrm{sleep}\) is expressed as Eq. (1):

$$\begin{aligned} \mathrm{Tx}_\mathrm{sleep} =\left\{ {_{{(T\times Q_\mathrm{EF-Max-report} )}/\mathrm{EF_{REPORT} }}^{T_\mathrm{EF-Max-sleep} } } \right. { }_{\;\; \mathrm otherwise}^{\;\; Q_\mathrm{EF-Total\le Q_\mathrm{EF-Max-report} } } \end{aligned}$$
(1)
Step 2) :

IF \(\mathrm{EF}_\mathrm{REPORT} =0\) and \(\mathrm{AF}_\mathrm{REPORT} >0\), \(T_\mathrm{AF-Max-sleep} =T_\mathrm{AF-Max-boudary-delay} -T\), where \(T_\mathrm{AF-Max-boudary-delay}\) is the boundary delay requirements for AF traffic (i.e., 5 ms in the access networks). The AF queue is \(Q_\mathrm{AF-Max-sleep} =\mathrm{AF}_\mathrm{REPORT} \times T_\mathrm{AF-Max-sleep} /T\) and the \(Q_\mathrm{AF-Total} =Q_\mathrm{AF-Max-sleep} +\mathrm{AF}_\mathrm{REPORT}\) is the total AF bits accumulated in the ONU during the \(T_\mathrm{AF-Max-sleep}\). The length of Queue#1 report (used to report AF traffic) in the REPORT message shown in Fig. 5 is two bytes; therefore, the \(Q_\mathrm{AF-Max-report}\) is the maximum number of bits which ONU can report for AF queue is 32,767. Then, the \(\mathrm{Tx}_\mathrm{sleep}\) is expressed as Eq. (2):

$$\begin{aligned} \mathrm{Tx}_\mathrm{sleep} \!=\!\left\{ {_{{(T\times Q_\mathrm{AF-Max-report} )}/{\mathrm{AF}_\mathrm{REPORT} }}^{T_\mathrm{AF-Max-sleep} } } \right. { }_{\;\; \mathrm otherwise}^{\;\; Q_\mathrm{AF-Total\le Q_\mathrm{AF-Max-report} } } , \end{aligned}$$
(2)
Step 3) :

IF \(\mathrm{EF}_\mathrm{REPORT} =0\) and \(\mathrm{AF}_\mathrm{REPORT} =0\) and \(\mathrm{BE}_\mathrm{REPORT} {>}0, T_\mathrm{BE\!-\!Max\!-\!sleep} {=}T_\mathrm{BE\!-\!Max\!-boudary\!-delay} -T\), where \(T_\mathrm{BE-Max-boudary-delay}\) is the boundary delay requirements for BE traffic (i.e., 20 ms) and the BE queue during the \(T_\mathrm{BE-Max-sleep}\) is \(Q_\mathrm{BE-Max-sleep} ={\mathrm{BE}_\mathrm{REPORT} \times T_\mathrm{BE-Max-sleep} }/T\). Then, the \(\mathrm{Tx}_\mathrm{sleep}\) is expressed as Eq. (3):

$$\begin{aligned} \mathrm{Tx}_\mathrm{sleep} =\left\{ {_{{(T\times Q_\mathrm{BE} )}/{\mathrm{BE}_\mathrm{REPORT} }}^{T_\mathrm{BE-Max-sleep} } } \right. { }_{\;\;\mathrm otherwise}^{\;\; Q_\mathrm{BE-Total\le Q_\mathrm{BE} } } , \end{aligned}$$
(3)

where the \(Q_\mathrm{BE}\) is the ONU’s BE queue.

Step 4) :

IF \(\mathrm{EF}_\mathrm{REPORT} =0\) and \(\mathrm{AF}_\mathrm{REPORT} =0\) and \(\mathrm{BE}_\mathrm{REPORT} =0, \mathrm{Tx}_\mathrm{sleep} =T_\mathrm{MAX-boudary-delay}\), where the \(T_\mathrm{MAX-boudary-delay}\) is the maximum boundary delay (i.e., 10 ms) when there is no data in the ONU queue.

Fig. 4
figure 4

Tx sleep duration calculation

Fig. 5
figure 5

Report and Gate messages. a Report message, b Gate message

Table 3 summarizes the notations of Tx sleep duration calculation, and the same mechanism is used to calculate the Rx sleep duration. After calculations, the Tx/Rx sleep durations forward to the ONU through the UDBA that the detailed operation of UDBA is described as follows.

Table 3 Tx sleep duration calculation variables

2.1.2 Upstream DBA (UDBA)

The UDBA executes the DBA to calculate the grant bandwidth for each ONU, sends the REPORT message to OSSDC to calculate Tx sleep duration, and inserts the Tx/Rx sleep durations to the GATE message shown in Fig. 5. The Grant#1 to Grant#3 of the GATE messages are used for UDBA granted times, the Grant#4 start time is used for Tx sleep duration, and Grant#4 length field is used for Rx sleep duration. The DBA works automatically to assign bandwidth based on the ONU reports, and to improve the efficiency of the EPON upstream bandwidth. The DBA uses the benefits of the offline paradigm that the OLT begins bandwidth allocation computation after collecting the REPORT messages from the entire ONUs. The UDBA uses the limited-service DBA [7] to assign a bandwidth to each type of traffic, and each ONU has guaranteed time slot to prevent bandwidth monopoly by highly loaded ONUs. The calculation of guaranteed timeslots for each ONU \((W_\mathrm{Max})\) is based on Eq. (4),

$$\begin{aligned} W_\mathrm{Max} =R_N \times \left( {\frac{T_\mathrm{Cycle}^\mathrm{Max} }{N}-G} \right) , \end{aligned}$$
(4)

where \(R_N\) is the transmission speed (bps), \(T_\mathrm{Cycle}^\mathrm{Max}\) is the maximum cycle time, \(N\) is the number of ONUs, and \(G\) is the guard time. Consequently, even if the requested time-slot size from an ONU is greater than the predefined \(W_\mathrm{Max}\), the OLT can only grant a certain maximum \(W_\mathrm{Max}\). The OSSDC(EF,AF,BE) function forwards the EF, AF, and BE reports to OSSDC for the sleep duration calculation, and the OSSDC returns the values of Tx/Rx sleep duration and sends to the ONU by the GATE message. The pseudo-code of the proposed upstream DBA (UDBA) is shown below.

figure e

2.2 ONU

Figure 6 depicts the ONU architectures that new components including traffic classifier, energy-saving management (ESM), and queue manager. The traffic classifier arranges the incoming user traffic and forwards the traffic to the queue manager. The queue manager consists of three queues for different types of traffic and the intra-scheduler and keeps the output of the traffic classifier in the EF, AF, and BE queues. The intra-scheduler is responsible for managing these queues and allowing them to proceed to the OLT in the upstream direction. When the ONU receives the GATE message, the Grant#4 start time and Grant#4 lengths will pass to the ESM for further processing. The ESM is in charge to turn off/on the transmitter and/or receiver with the granted Tx and Rx sleep durations and monitors the high-priority traffic incoming. If the Tx sleep duration is greater than zero and less than power off/on delay, the ESM sets the Tx sleep duration to zero; otherwise, the Tx sleep duration is equal to granted Tx sleep durations. The same logic is also applied for Rx sleep duration. Moreover, the ESM has the ability to interrupt the sleep mode (transmission, doze, and sleep) in an unexpected situation and sends a REPORT message to inform the OLT. For example, if the ONU enters to the sleep mode for more than 5ms for non-EF traffic and ESM detects an incoming voice call, the sleep duration will be adjusted less than 5ms to meet QoS requirement. The sleep durations (Tx and Rx) selected by the ESM will forward to the OLT at the end of granted time slot by report message, where the Tx sleep duration in the Queue#6 report of the report message and Rx sleep duration in the Queue#7 report of the report message, respectively.

Fig. 6
figure 6

Proposed ONU architecture

3 System performance evaluation

To evaluate the system performance of the proposed scheme in terms of average packet delay, system throughput, jitter, packet loss, energy saving, and queue size, the system model is set up in the OPNET simulator with one OLT and 32 ONUs. We compare the system performance of upstream DBA (UDBA) with the IPACT DBA for different traffic proportions. The efficient downstream/upstream channel rate between the OLT and ONUs is set to1Gbps. The ONU buffer size is set to 5 Mb, and the distance between the OLT and the ONUs is uniform over the range from 10 to 20 km. Self-similarity and long-range dependence is used as the network traffic model for AF and BE [2629]. High-priority traffic (i.e., EF traffic) is modeled using the Poisson distribution with a fixed packet size (70 bytes). This model generates high burst AF and BE traffics with a Hurst parameter of 0.7. The packet size is uniformly distributed between 64 and 1518 bytes. Three significant scenarios are designed and analyzed with various EF service, AF service, and BE service proportions to show the effectiveness of the high-priority traffic management. To minimize the overhead time during the ONU changes its status from sleep mode to active mode, the Green ONU2 (GR-ONU2) architecture is used [18]. To satisfy the QoS requirement, the EF, AF, and BE boundary delays are set to 5, 5, and 20 ms, respectively. The ONU active and sleep power consumption is set to 3.85 and 1.08 W, respectively. The simulation scenario is summarized in Table 4, and Table 5 shows the traffic proportions in different scenarios.

Table 4 Simulation parameters
Table 5 Simulation scenarios

3.1 Mean packet delay

Mean packet delay occurs when the packets arrive at the ONU at random times. Each packet has to wait for the appropriate time slot to transmit in the upstream direction. This waiting time is referred to as the packet delay which consists of the polling, granting, and queuing delays. The polling delay is a fundamental delay that cannot be avoided and is defined as the time between packet arrival and the next request sent by the ONU; the granting delay is the time interval from an ONU’s request for a transmission window until the beginning of the time slot in which this frame is to be transmitted, and the queue delay is the delay from the beginning of the time slot until frame transmission begins [25]. Figures 7a–d give the packet delay versus traffic loads for the EF, AF, BE, and the total average delays in different scenarios. The mean delays of the UDBA in the light load is higher than IPACT because the ONU enters into the sleep mode for sleep duration and during this time, arriving packets are buffered in the queue, thus increasing the delay. The EF, AF, and BE mean delays are decreased when the traffic load increases up to 60 % because by increasing traffic load, the number of bits in the REPORT message increases; therefore, the sleep duration is decreased. The mean packet delay is not the end-to-end delay, and the packet delay requirements in the EPON for EF and AF should be less than 5ms [30, 31]. The BE delay, shown in Fig. 7c, also has the same trend as the high-priority traffic; however, in the high load, it is saturated in both the IPACT and the proposed UDBA. Figure 7d shows the total average delay versus traffic loads.

Fig. 7
figure 7

Average delay of IPACT DBA and UDBA with different traffic loads. a Comparison of average EF delay for different traffic proportions. b Comparison of average AF delay for different traffic proportions. c Comparison of average BE delay for different traffic proportions. d Comparison of average total delay for different traffic proportions

3.2 Upstream system throughput

The upstream system throughput is the number of bits successfully received at the OLT in the upstream direction which is calculated by multiplying the combined efficiency by the EPON line rate (i.e., 1 Gbps). The combined efficiency consists of the scheduling and the encapsulation overheads [32]. Figure 8 shows the upstream system throughput for different traffic proportions versus traffic load. The upstream system throughput of the proposed UDBA in the lightly load is lower than the IPACT because the UDBA has more chance to enter to the sleep modes. However, in the high load, the system throughput of the UDBA and the IPACT are almost the same.

Fig. 8
figure 8

System throughput of IPACT DBA and UDBA with different traffic loads

3.3 EF jitter

Jitter is calculated as \({\sigma }^{2}=\mathop \sum \limits _{i=1}^N \left( {\hbox {d}_i^{\mathrm{EF}} -\bar{\hbox {d}}} \right) ^{2}/N\), where \(\hbox {d}_i^{\mathrm{EF}}\) is the delay time of ,the EF packet \(i, \bar{\hbox {d}}\) is the average delay time of the EF traffic, and \(N\) is the total number of received EF packets. Jitter or delay variance has a significant impact on voice quality when a smaller jitter value is required to deliver a high-quality voice transmission [33]. Figure 9 depicts the EF jitter versus traffic load. The EF jitter for the proposed scheme in the light load has a higher value than the IPACT because the proposed scheme puts the ONUs into the sleep or doze mode, and as a result, the delay variance is increased. Moreover, when the traffic load is increased, the EF jitter of the proposed model will decrease because the ONU sleep duration is decreased. In the high load, the EF jitter of the IPACT and the UDBA are the same because there is no opportunity for the ONUs goes to sleep. The maximum EF jitter performance in the proposed model is less than 3 which is less than the jitter threshold requirement \(({<}50)\) [34].

Fig. 9
figure 9

EF Jitter of IPACT DBA and UDBA with different traffic loads

3.4 Packet loss

Cycle time and buffer size are two main metrics triggering packet loss at the ONU. Increasing the buffer size obviously reduces the packet loss, but the queuing delay is increased. In contrast, a larger cycle time reduces the packet loss because each ONU has more time slots to send data; however, a larger cycle time leads to a higher packet delay. Figure 10 compares the average BE packet loss probability in the different scenarios against the offered load. The packet loss probability for high-priority traffic, such as EF and AF, are zero in all scenarios for the IPACT and the proposed UDBA. The packet loss ratio occurs for traffic loads that are greater than 90 % load. In the light load, the BE packet loss ratio for the proposed method is zero, and for the high load it is the same as the IPACT which means the proposed scheme will not affect packet loss. Moreover, there will be an increment in packet loss when the EF ratio is increasing because the DBA should satisfy the bandwidth requirement for high-priority traffic.

Fig. 10
figure 10

BE packet loss ratio of IPACT DBA and UDBA with different traffic loads

3.5 Energy efficiency

Figure 11 describes the power saving ratio versus the offered load for 32 ONUs. The power saving ratio of the proposed scheme is decreased when traffic load is increased. In the light load, the number of bits for EF and AF in the REPORT message (Queue#0 report, and Queue#1 report) is low; therefore, ONU remains in the sleep mode (transition, doze, and sleep) for maximum boundary delays \((T_\mathrm{EF-Max-boudary-delay}, T_\mathrm{AF-Max-boudary-delay}, T_\mathrm{BE-Max-boudary-delay}\), and \(T_\mathrm{MAX-boudary-delay})\). Moreover, the power saving ratio is decreased when the ratio of EF traffic is increased. The power saving ratio in the 10 % traffic load for UDBA_case1, UDBA_case2, and UDBA_case3 are 47, 44, and 41 %, respectively. The power saving ratio in 100 % traffic load is nearby zero, because the EF queue is reached to the maximum number of bits in the Queue#0 report \((Q_\mathrm{EF-Max-report})\), as a result the ONU cannot stay in the sleep mode for long time.

Fig. 11
figure 11

Energy efficiency of UDBA with different traffic loads

3.6 Queue size

Figure 12 shows the average queue size for EF and AF versus traffic load. The queuing size of the proposed scheme is higher than the IPACT in the light load, because the ONU turns off the transmitter and keeps the arriving packets in the buffer. The EF buffer size and AF buffer size are increased when their traffic portions are increased. Moreover, the AF queue size is larger than EF traffic in the same offered load because the size of AF packets is larger than EF packet size. In the high load, the ONU cannot enter to the sleep mode; therefore, the buffer size of the UDBA and IPACT are equal.

Fig. 12
figure 12

Average EF and AF queue lengths for different traffic loads a Comparison of EF buffer size for different traffic proportions. b Comparison of AF buffer size for different traffic proportions

4 Conclusion

TDM-PON is a ‘green’ access network in comparison with other access network technologies. However, the further reducing of energy consumption is putting the ONU into doze, transmission, or sleep modes for a substantial time. Sleep duration is a critical value to satisfy the QoS metrics in which setting overlong sleep duration reduces the QoS, while short sleep duration increases the ONU power consumption. In this paper, we have introduced an enhanced EPON architecture and energy-saving mechanism with two independent sleep durations for ONU transmitter (Tx) and receiver (Rx). The sleep duration (incorporating the sleep, doze, and transmission modes) is calculated based on the traffic types boundary delay, OLT/ONU queue status, maximum number of bits in the REPORT message, and the time between two sequential ONU reports. The upstream DBA is modified to grant the time slot to each ONU efficiently, sends the REPORT message to the ONU state and sleep duration calculation (OSSDC) to calculate the sleep durations, inserts the Tx/Rx sleep durations to the GATE message, and forwards GATE message to the ONU. Simulation results show that the proposed enhanced EPON architecture and energy-saving mechanism can significantly reduce power consumption without impairing the QoS metrics. For the future work, we try to set up a queuing system model for different priority traffics and boundary delay requirements with buffer size and cycling time. Moreover, we will optimize the power saving with prediction parameter without sacrificing QoS/QoE performance.