Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 14-Day Trial for You or Your Team.

Learn More →

Multi-Level Buffering Services Based on Optical Packet Encoding of Composite Maximal-Length Sequences in a GMPLS Network

Multi-Level Buffering Services Based on Optical Packet Encoding of Composite Maximal-Length... applied sciences Article Multi-Level Bu ering Services Based on Optical Packet Encoding of Composite Maximal-Length Sequences in a GMPLS Network 1 2 , Kai-Sheng Chen and Wien Hong * School of Electrical and Computer Engineering, Nanfang College of Sun Yat-Sen University, Guangzhou 510970, China; 17304@mail.nfu.edu.cn College of Intelligence, National Taichung University of Science and Technology, Taichung 40401, Taiwan * Correspondence: wienhong@nutc.edu.tw Received: 5 December 2019; Accepted: 20 January 2020; Published: 21 January 2020 Abstract: Generalized multi-protocol label-switching (GMPLS) provides packet-switching with multiple speeds and quality-of-services (QoSs). Packet bu ering in GMPLS reduces packet loss by resolving the conflicts between packets requesting for a common channel. Presently, due to the diversity of multimedia applications, enabling multiple services in networks has become necessary. In this paper, a family of codes known as composite maximal-length sequence (CMLS) codes is introduced into an optical bu ering scheme based on code-switching. A given number of available CMLS codes is divided into several code subsets. The bu er selects an unused CMLS code from a code subset and assigns it to the incoming packet. When all codes in a specific subset have been distributed to the queued packets, a free CMLS code in another subset is chosen for the new arrival. To achieve multi-level bu ering services, the partition scenario with a lower subset number but with a higher number of codes in an individual subset is used as a code-assigning method for bu ering high-QoS users. A two-level bu ering system is demonstrated by examining the QoS of each class in terms of packet-dropping probability (PDP). The results show that di erent levels of PDPs can be e ectively supported by a common bu er architecture. Keywords: generalized multi-protocol label-switching (GMPLS); quality-of-service (QoS); optical packet bu ering; code-switching 1. Introduction Generalized multi-protocol label-switching (GMPLS) provides packet-switching with multiple speeds and quality-of-services (QoSs) over optical networks in the time, wavelength, and space domains [1–3]. The typical quality comes from adopting the packet process operated by an internet protocol. The superiority of GMPLS is due to a unified control plane that includes separate network layers, and transparent data transmissions can be supported in a continuously changing environment. If the edge nodes for a connection of a packet flow are in di erent networks, GMPLS can merge new and previous networks and automatically set up a link configuration. Such advantages have drawn attention to GMPLS and it has achieved a lot in optical packet-switching (OPS) networks [4–6]. However, a packet stops switching in GMPLS if conflicts about the resources of channels or paths happen. When conflicts come into existence, resolution algorithms based on optical bu ering take action. Bu ering management at the core codes deals with packets that simultaneously compete to obtain the same resource [7–12]. The goal of packet bu ering is to reduce the packet loss to the lowest possible level. As the OPS network will experience less packet-dropping, GMPLS with conflict resolution can support the development of future OPS networks. Optical bu ering schemes can be Appl. Sci. 2020, 10, 730; doi:10.3390/app10030730 www.mdpi.com/journal/applsci Appl. Sci. 2020, 10, 730 2 of 10 generally boiled down to three categories: fiber delay line [7,8], wavelength conversion [9,10], and code-switching [11,12]. As the components of optical codecs have reached a mature state, code-switching has been emphasized in all optical bu ering designs. The multiplexing technique of optical coding provides users with a shared bandwidth to employ asynchronous packet transmission [13–15]. Presently, networks are known for their diverse multimedia applications, so enabling multi-service data transmissions has become necessary. Several optical coding schemes have been proposed to achieve di erentiated services in access networks. In [16], the parameters of optical code-words, such as length and weight, were changed to o er new data rates. To change the QoS, frequency hopping was combined with multi-wavelength optical codes in a two-dimension coding system [17]. In this paper, a family of codes known as composite maximal-length sequence (CMLS) codes [18,19] is introduced into a bu ering scheme where packets are queued in the optical domain. Although code-switching can be treated as a promising scheme in optical bu ering, it only provides a single-level bu ering service in most cases. The contribution of this paper is that we consider the multiple schemes of partitioning a CMLS code set, design the corresponding CMLS codec in the bu er architecture, and model the bu ering processes to obtain the performance curves that show various levels of packet-dropping probabilities (PDPs). In the proposed scheme, a fixed number of CMLS codes is equally divided into several subsets. The partition scenario with a lower subset number but with a higher number of codes in an individual subset is used as an encoding method to achieve packet bu ering for high-QoS users. To examine the bu ering performance in detail, the QoS index of the PDP of di erent classes of users is studied. The PDP is applied to describe a scenario in which a bu er is full, and no more packets are allowed to enter it. In the bu ering model that we use to derive the PDP, the packet trac at the system inputs and outputs behaves as described in Erlang’s model [20,21]. 2. Procedures for Constructing a Composite Maximal-Length Sequence (CMLS) and the Codec Design In this paper, packet bu ering in GMPLS is achieved by encoding each queued packet with a CMLS code composed of two extended maximal-length sequences (MLSs). A family of MLS codes M M M includes K code-words, where K is called code cardinality. Each code-word has N binary elements M m of {0, 1}, where N = 2 1 is known as the MLS length and m is a positive integer larger than 1. A M M general way to describe the characteristics of a family of codes is to employ the expression of (N , ! , M M M M ), where ! and  denote the auto- and cross-correlation of MLS codes. ! is also known as the code weight, or the number of chips “1” in a MLS code-word, while  is defined as the number of the overlapping chips “1” between any two di erent code-words in a family of MLS codes. The correlation M M properties between two MLSs in a code set are ! = (N + 1)/2 and  = (N + 1)/4. Moreover, MLSs have a periodical-shift property, where an MLS belongs to the original code set after cyclically shifting any number of chips. The construction of a CMLS can be performed in three steps. First, select two M M M M M MLS codes, M (N ) and M (N ), with the code length of N and N , respectively, where 1  i  N i j 1 2 1 2 1 M M M and 1  j  N ; second, extend both M (N ) and M (N ) to the vectors with the length of the lowest i j 2 1 2 M M common multiple of N and N by repeating them multiple times; finally, add these two extended 1 2 code-words via the module-2 summation. Based on the above steps, the structuring of the CMLS code M M set of length N = N N can be summarized as follows: 1 2 M M N times N times 2 1 z }| { z }| { h      i h      i M M M M M M M M C N N = M N M N ::: M N  M N M N ::: M N (1) (i,j) i i i j j j 2 2 2 2 1 1 1 1 where  denotes the operation of module-2 summation. Based on (1), one can find a CMLS set made of M M M (N ) and M (N ) that has N code-words in it. Figure 1 shows the construction of C (21) with N i j (1,1) 1 2 = 21 based on M (3) = [110] and M (7) = [1110010]. 1 1 Appl. Sci. 2020, 10, 730 3 of 10 Appl. Sci. 2020, 10, 730 3 of 10 Appl. Sci. 2020, 10, 730 3 of 10 M1(3) M1(3) 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 M1(7) M1(7) 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 0 0 0 1 0 0 C(1,1)(21) C(1,1)(21) Figure 1. Construction of a composite maximal-length sequence (CMLS) with a length of 21 based on Figure 1. Construction of a composite maximal-length sequence (CMLS) with a length of 21 based on Figure 1. Construction of a composite maximal-length sequence (CMLS) with a length of 21 based on two maximal-length sequence (MLS) codes with a length of 3 and 7. two maximal-length sequence (MLS) codes with a length of 3 and 7. two maximal-length sequence (MLS) codes with a length of 3 and 7. The correlation property between any two code-words in a common family of CMLS codes is an The correlation property between any two code-words in a common family of CMLS codes is an The correlation property between any two code-words in a common family of CMLS codes is an important index for describing the code characteristics. The correlation values among CMLS codes important index for describing the code characteristics. The correlation values among CMLS codes important index for describing the code characteristics. The correlation values among CMLS codes with N are expressed as: with N are expressed as: with N are expressed as:  = C N C N ( ) ( )  i , j ,k ,l= C ( i , j ) N C ( k ,l ) N ( = ) C ((N)) C ((N)) (i,j,k,l) (( ii , , j )j) ( k(,k l, )l) (i , j ,k ,l) > (N N− 1 1)//2 2, , ii==kk , , j j== l l ( ) (2) (2)  N− 1 / 2, i = k, j = l ( )    (2) => > M M = MM  N N 2 /4, N N 2 /4, (N 1)/4, i , k, j , l MM N− N − 2 / 4, N− N − 2 / 4, N− 1 / 4, i  k, j  l ( 1 ) ( 2 ) ( ) N− N12 − 2 / 4, N− N − 2 / 4, N− 1 / 4, i  k, j  l ( ) ( ) ( )  12 where denotes the dot-product operation. Based on (2), the autocorrelation for a CMLS code- where denotes the dot-product operation. Based on (2), the autocorrelation for a CMLS code-word is where denotes the dot-product operation. Based on (2), the autocorrelation for a CMLS code- word is fixed, while the cross-correlations between any two different CMLS code-words may vary, fixed, while the cross-correlations between any two di erent CMLS code-words may vary, where the word is fixed, while the cross-correlations between any two different CMLS code-words may vary, where the values are limited to three levels. As a CMLS is made from MLSs, both types of sequences values are limited to three levels. As a CMLS is made from MLSs, both types of sequences have several where the values are limited to three levels. As a CMLS is made from MLSs, both types of sequences have several similar characteristics, such as the mathematical expression of code weight or similar characteristics, such as the mathematical expression of code weight or autocorrelation, and the have several similar characteristics, such as the mathematical expression of code weight or autocorrelation, and the cyclic-shift property. The latter indicates that when a CMLS C(i,j)(N) is known, cyclic-shift property. The latter indicates that when a CMLS C (N) is known, all sequences in the (i,j) autocorrelation, and the cyclic-shift property. The latter indicates that when a CMLS C(i,j)(N) is known, m m m m all sequences in the code set can be found in T [C(i,j)(N)], where T [ ] denotes an operator that code set can be found in T [C (N)], where T [ ] denotes m an operator that m cyclically shifts a CMLS for all sequences in the code set (i,jcan ) be found in T [C(i,j)(N)], where T [ ] denotes an operator that cyclically shifts a CMLS for m elements in right direction, where 0 ≦ m ≦ N − 1. Figure 2 shows m elements in right direction, where 0  m  N 1. Figure 2 shows two correlation functions,  = cyclically shifts a CMLS for m elements in right direction, where 0 ≦ m ≦ N − 1. Figure 2 shows m mm m two correlation functions, θ = C(1,1)(21)⊙T [C(1,1)(21)] and θ = C(1,1)(21)⊙T [C(1,1)(21)], where C(1,1)(21) C (21) T [C (21)] and  = C (21) mT [C (21)], where C (21) is m the complementary CMLS (1,1) (1,1) (1,1) (1,1) (1,1) two correlation functions, θ = C(1,1)(21)⊙T [C(1,1)(21)] and θ = C(1,1)(21)⊙T [C(1,1)(21)], where C(1,1)(21) that is the describes complethat ment chips ary C“1” MLS and that “0” desc arerin ibes the th inverse at chips positions “1” and of “0” C are (21). in the In this inverse figur po e, sit it can ions be of (1,1) is the complementary CMLS that describes that chips “1” and “0” are in the inverse positions of C(1,1)(21). In this figure, it can be observed that the CMLS has a good correlation property, as the observed that the CMLS has a good correlation property, as the autocorrelation value is large while the C(1,1)(21). In this figure, it can be observed that the CMLS has a good correlation property, as the cr autocorre oss-correlation lation val values ue isr la emain rge whi relatively le the cross small. -correlation values remain relatively small. autocorrelation value is large while the cross-correlation values remain relatively small. Figure 2. The correlation values and the complementary correlation values of CMLS C (21). (1,1) Figure 2. The correlation values and the complementary correlation values of CMLS C(1,1)(21). Figure 2. The correlation values and the complementary correlation values of CMLS C(1,1)(21). To design the codecs of the CMLS codes, arrayed waveguide grating (AWG) was employed. AWG To design the codecs of the CMLS codes, arrayed waveguide grating (AWG) was employed. To design the codecs of the CMLS codes, arrayed waveguide grating (AWG) was employed. acts as a de-multiplexer that routes each of the input wavelengths to a specific output port. Figure 3 AWG acts as a de-multiplexer that routes each of the input wavelengths to a specific output port. AWG acts as a de-multiplexer that routes each of the input wavelengths to a specific output port. shows the encoder of C (21), which consists of a 3  3 and a 7  7 AWG. The encoder input is a light (1,1) Figure 3 shows the encoder of C(1,1)(21), which consists of a 3 × 3 and a 7 × 7 AWG. The encoder input Figure 3 shows the encoder of C(1,1)(21), which consists of a 3 × 3 and a 7 × 7 AWG. The encoder input source with a bandwidth that ranges from  to  , including 21 wavelengths. One of the basic codes 1 21 is a light source with a bandwidth that ranges from λ1 to λ21, including 21 wavelengths. One of the is a light source with a bandwidth that ranges from λ1 to λ21, including 21 wavelengths. One of the for constructing C (21) is M (3) = (110), which is represented as the optical signal of (  0). These (1,1) 1 1 2 basic codes for constructing C(1,1)(21) is M1 (3) = (110), which is represented as the optical signal of basic codes for constructing C(1,1)(21) is M1 (3) = (110), which is represented as the optical signal of two wavelengths,  and  , are obtained at the first and the second output of the 3  3 AWG. As 1 2 (λ1λ20). These two wavelengths, λ1 and λ2, are obtained at the first and the second output of the 3 × 3 (λ1λ20). These two wavelengths, λ1 and λ2, are obtained at the first and the second output of the 3 × 3 shown in Figure 1, before generating C (21), an extended vector that includes seven duplicates of (1,1) AWG. As shown in Figure 1, before generating C(1,1)(21), an extended vector that includes seven AWG. As shown in Figure 1, before generating C(1,1)(21), an extended vector that includes seven duplicates of M1 (3) is required. The signal of each duplicate in the extended vector is obtained by duplicates of M1 (3) is required. The signal of each duplicate in the extended vector is obtained by Appl. Sci. 2020, 10, 730 4 of 10 employing the wavelength routing property of AWG known as the free-spectral range (FSR). For an M × M AWG, if the signal of the light source enters the 1st input port, the wavelengths shown at the i-th output port are λi, λi+M, λi+2M …, where i + kM is less than or equal to the maximum wavelength number. Therefore, the second duplicate of M1 (3) is represented as the signal of (λ4λ50), while the third is (λ7λ80), and the remaining duplicates have similar wavelength distributions. The other code basis, M1 (7) = (1110010), is composed of four wavelengths in its signal representation (λ1λ2λ300λ60). Similarly, the signal component of the extended vector of M1 (7) is obtained from the wavelengths appearing at 1st, 2nd, 3rd, and 5th outputs of the 7 × 7 AWG. The wavelength components at each AWG’s outputs are combined and sent to a module-2 adder for Appl. Sci. 2020, 10, 730 4 of 10 generating the final CMLS. Using optical wavelength signals to represent the chip distribution in a code sequence is known as spectral-amplitude-coding (SAC), which has been used a lot in optical M (3) is required. The signal of each duplicate in the extended vector is obtained by employing the acces 1 s and switching networks due to its system simplicity. In addition to C(1,1)(21), other CMLS codes wavelength routing property of AWG known as the free-spectral range (FSR). For an M  M AWG, if in the same code set can be generated from the shared encoder, as AWG has the cyclic-shift property the signal of the light source enters the 1st input port, the wavelengths shown at the i-th output port are for wavelength distributing. Such a property can also be found in the chip distributions of CMLSs ,  ,  ::: , where i + kM is less than or equal to the maximum wavelength number. Therefore, and i i + ML M Ssi. + 2 AM n arbitrary CMLS C(i,j)(21) can be obtained by passing the light source signal to the i-th the second duplicate of M (3) is represented as the signal of (  0), while the third is (  0), and the input of the 3 × 3 AWG an 1 d the j-th input of the 7 × 7 AWG wi 4 tho 5 ut modifying any con 7 nect 8 ions and remaining duplicates have similar wavelength distributions. components at the grating’s output ports. M1 (3) l ~ l 1 21 l l l l l l l Light 1 4 7 10 13 16 19 Sour ce 3 x 3 l l l l l l l 2 5 8 11 14 17 20 Mux AW G l l l l l l l 3 6 9 12 15 18 21 C(1,1) (21) l l l 1 8 15 l l l 2 9 16 l l l 3 10 17 7 x 7 l l l 4 11 18 Mux AW G l l l 5 12 19 l l l 6 13 20 l l l 7 14 21 (7) M1 Figure 3. The encoder architecture of CMLS C (21) based on arrayed waveguide grating (AWG). Figure 3. The encoder architecture of CMLS C (1,1) (1,1)(21) based on arrayed waveguide grating (AWG). Mux: Multiplexer. Mux: Multiplexer. The other code basis, M (7) = (1110010), is composed of four wavelengths in its signal Figure 4 depicts the decoder of C(1,1)(21) with a 21 × 21 AWG. The received signal is directed to representation (   00 0). Similarly, the signal component of the extended vector of M (7) 1 2 3 6 1 the 1st input port. The wavelength signals sent to the upper multiplexer match the positions of chip is obtained from the wavelengths appearing at 1st, 2nd, 3rd, and 5th outputs of the 7  7 AWG. The “1” in C(1,1)(21), while the ones sent to the lower multiplexer match the positions of chip “0”. The wavelength components at each AWG’s outputs are combined and sent to a module-2 adder for optical signals at each multiplexer’s output are converted to an electrical current by a photodetector. generating the final CMLS. Using optical wavelength signals to represent the chip distribution in a After the lower current is subtracted from the upper, the subtraction result is passed to a threshed code sequence is known as spectral-amplitude-coding (SAC), which has been used a lot in optical device. To identify CMLS code C(i,j)(21) = T [C(1,1)(21)], the received signal is sent to the m-th input of access and switching networks due to its system simplicity. In addition to C (21), other CMLS codes (1,1) the AWG decoder. The decoding function can be expressed by the following equation of correlation in the same code set can be generated from the shared encoder, as AWG has the cyclic-shift property subtraction: for wavelength distributing. Such a property can also be found in the chip distributions of CMLSs N− 1 / 2, i = k , j = l ( ) and MLSs. An arbitrary CMLS C (21) can be obtained by passing the light source signal to the i-th (i,j)  − = . (3) i , j , k ,l ( i , j ,k ,l) ( ) MM − N + 1 / 2, - N + 1 / 2, 0, i  k, j  l input of the 3  3 AWG and the j-th input of( the 7) 7 AWG ( without ) modifying any connections and  12 components at the grating’s output ports. According to (3), if a packet encoded with C(1,1)(21) enters the corresponding decoder, the output value Figure 4 depicts the decoder of C (21) with a 21  21 AWG. The received signal is directed to (1,1) M M N N is 10, which can be obtained from the upper case in (3) by substituting = 3 and = 7. If the 1 2 the 1st input port. The wavelength signals sent to the upper multiplexer match the positions of chip “1” decoder does not match the code carried by the packet, the output values would be −2, −4, and 0. We in C (21), while the ones sent to the lower multiplexer match the positions of chip “0”. The optical (1,1) select the median between 10 and 0 as the threshold to determine whether the decoder matches the signals at each multiplexer ’s output are converted to an electrical current by a photodetector. After the received coded signal. If the signal value at the decoder output is larger than 5, it indicates that lower current is subtracted from the upper, the subtraction result is passed to a threshed device. To C(1,1)(21) is presented. identify CMLS code C (21) = T [C (21)], the received signal is sent to the m-th input of the AWG (i,j) (1,1) decoder. The decoding function can be expressed by the following equation of correlation subtraction: > ( ) N 1 /2, i = k, j = l = . (3) (i,j,k,l) M M (i,j,k,l) > N + 1 /2, N + 1 /2, 0, i , k, j , l 1 2 According to (3), if a packet encoded with C (21) enters the corresponding decoder, the output value (1,1) M M is 10, which can be obtained from the upper case in (3) by substituting N = 3 and N = 7. If the 1 2 decoder does not match the code carried by the packet, the output values would be 2, 4, and 0. We select the median between 10 and 0 as the threshold to determine whether the decoder matches Appl. Sci. 2020, 10, 730 5 of 10 the received coded signal. If the signal value at the decoder output is larger than 5, it indicates that C (21) is presented. Appl. Sci. 2020, 10, 730 5 of 10 Ap(1,1) pl. Sci. 2020, 10, 730 5 of 10 C(1,1)(21) C(1,1)(21) Received Received l 3 Signal Signal l . MUX MUX PD PD l 19 21 × 21 21 × 21 . OXC OXC AW G l 1 AW G . l . l 2 MUX PD MUX PD l 21 C(1,1)(21) C(1,1)(21) Figure 4. The decoder architecture of CMLS C(1,1)(21) based on AWG. Mux: Multiplexer. PD: Figure 4. The decoder architecture of CMLS C(1,1)(21) based on AWG. Mux: Multiplexer. PD: Figure 4. The decoder architecture of CMLS C (21) based on AWG. Mux: Multiplexer. (1,1) Photodetector. Photodetector. PD: Photodetector. 3. Scenarios of Multi-Level Bu ering Services and Performance Evaluations 3. Scenarios of Multi-Level Buffering Services and Performance Evaluations 3. Scenarios of Multi-Level Buffering Services and Performance Evaluations The architecture of the proposed scheme capable of providing multi-service bu ering is shown The architecture of the proposed scheme capable of providing multi-service buffering is shown The architecture of the proposed scheme capable of providing multi-service buffering is shown in Figure 5. In this scenario, two packets competing for a common output port are considered. At in Figure 5. In this scenario, two packets competing for a common output port are considered. At the in Figure 5. In this scenario, two packets competing for a common output port are considered. At the the bu er input ports, packets carrying CMLS signals are decoded by decoder arrays to generate buffer input ports, packets carrying CMLS signals are decoded by decoder arrays to generate buffer input ports, packets carrying CMLS signals are decoded by decoder arrays to generate photocurrents with amplitudes that are proportional to the power variations of the optical payloads. photocurrents with amplitudes that are proportional to the power variations of the optical payloads. photocurrents with amplitudes that are proportional to the power variations of the optical payloads. By considering the CMLSs that had been occupied by the existing optical packets in the bu er, the By considering the CMLSs that had been occupied by the existing optical packets in the buffer, the By considering the CMLSs that had been occupied by the existing optical packets in the buffer, the control unit decides which new sequences will be used to encode the incoming packets waiting to be control unit decides which new sequences will be used to encode the incoming packets waiting to be control unit decides which new sequences will be used to encode the incoming packets waiting to be queued. To perform optical encoding, an electrical switch forwards the baseband-decoded signals to queued. To perform optical encoding, an electrical switch forwards the baseband-decoded signals to queued. To perform optical encoding, an electrical switch forwards the baseband-decoded signals to optical modulators, and then the optical carriers are sent to the corresponding encoders. Please note optical modulators, and then the optical carriers are sent to the corresponding encoders. Please note optical modulators, and then the optical carriers are sent to the corresponding encoders. Please note that in this case, a packet carrying C (21) has existed in the bu er, so the identical sequence carried that in this case, a packet carrying C(1,1) (1,1)(21) has existed in the buffer, so the identical sequence carried that in this case, a packet carrying C(1,1)(21) has existed in the buffer, so the identical sequence carried by the input packet is switched into another available code C (21). The other input packet retains by the input packet is switched into another available code C (3,1) (3,1)(21). The other input packet retains by the input packet is switched into another available code C(3,1)(21). The other input packet retains its code C (21) since it is not used by any queued packets. After renewing the attached codes, the its code C(2,1) (2,1)(21) since it is not used by any queued packets. After renewing the attached codes, the its code C(2,1)(21) since it is not used by any queued packets. After renewing the attached codes, the encoded packets of di erent CMLSs are combined and passed to the output port. encoded packets of different CMLSs are combined and passed to the output port. encoded packets of different CMLSs are combined and passed to the output port. Control Unit Control Unit C(1,1)(21) C(1,1)(21) OD A E/O OE A C(1,1)(21) C(1,1)(21) OD A E/O OE A C(2,1)(21) C(2,1)(21) OD A E/O OE A C(2,1)(21) OD A E/O OE A C(2,1)(21) C(3,1)(21) C(3,1)(21) E/O OE A E/O OE A Electrical Electrical Swi tch Swi tch Figure 5. The optical bu ering architecture with optical encoding/decoding of the CMLS. ODA: optical Figure 5. The optical buffering architecture with optical encoding/decoding of the CMLS. ODA: Figure 5. The optical buffering architecture with optical encoding/decoding of the CMLS. ODA: decoder array; OEA: optical encoder array; E/O: electrical-to-optical conversion. optical decoder array; OEA: optical encoder array; E/O: electrical-to-optical conversion. optical decoder array; OEA: optical encoder array; E/O: electrical-to-optical conversion. The use of CMLS codes in encoding packets provides the bu ering service with variable The use of CMLS codes in encoding packets provides the buffering service with variable The use of CMLS codes in encoding packets provides the buffering service with variable performance. The partition of code set C (21) for high-QoS users is shown in Figure 6a, where seven (i,j) performance. The partition of code set C(i,j)(21) for high-QoS users is shown in Figure 6a, where seven performance. The partition of code set C(i,j)(21) for high-QoS users is shown in Figure 6a, where seven subsets C(i,1), C(i,2), ::: , C(i,7) are obtained, and each of them has three CMLS codes with a common subsets C(i,1), C(i,2), …, C(i,7) are obtained, and each of them has three CMLS codes with a common subsets C(i,1), C(i,2), …, C(i,7) are obtained, and each of them has three CMLS codes with a common index i. For high-QoS users, the preferred scenario is to partition the CMLS code set into max{N , index i. For high-QoS users, the preferred scenario is to partition the CMLS code set into max{ N , M M M N index i. For high-QoS users, the preferred scenario is to partition the CMLS code set into max{ , N } subsets. In the example of N = 3 and N = 7, seven code subsets are obtained. If the codes in a 2 1 2 M M M M M M N } subsets. In the example of N = 3 and N = 7, seven code subsets are obtained. If the codes certain N subset are all occupied, the N newly incoming N packets with the codes in the same group will be } subsets. In the example of = 3 and = 7, seven code subsets are obtained. If the codes 2 1 2 2 1 2 sent to a free encoder generating a CMLS of di erent i. Figure 6b shows the encoder implementation in a certain subset are all occupied, the newly incoming packets with the codes in the same group in a certain subset are all occupied, the newly incoming packets with the codes in the same group corresponding to the code distribution in Figure 6a. The connection to the input ports of the upper 3 will be sent to a free encoder generating a CMLS of different i. Figure 6b shows the encoder will be sent to a free encoder generating a CMLS of different i. Figure 6b shows the encoder implementation corresponding to the code distribution in Figure 6a. The connection to the input ports implementation corresponding to the code distribution in Figure 6a. The connection to the input ports of the upper 3 × 3 AWG is varied, and the one to the 1st input port of the lower 7 × 7 AWG is fixed to of the upper 3 × 3 AWG is varied, and the one to the 1st input port of the lower 7 × 7 AWG is fixed to construct the code subset C(i,1), where 1 ≦ i ≦ 3. Another subset C(i,2) can be obtained by construct the code subset C(i,1), where 1 ≦ i ≦ 3. Another subset C(i,2) can be obtained by establishing the link to the 2nd input of the lower AWG. establishing the link to the 2nd input of the lower AWG. Appl. Sci. 2020, 10, 730 6 of 10 3 AWG is varied, and the one to the 1st input port of the lower 7  7 AWG is fixed to construct the code subset C(i,1), where 1  i  3. Another subset C(i,2) can be obtained by establishing the link to the 2nd Appl. Sci. 2020, 10, 730 6 of 10 Apinput pl. Sci. 2020 of the , 10, lower 730 AWG. 6 of 10 C(1,1)(21) C(1,1)(21) 3 x 3 3 x 3 j = 1 C(2,1)(21) j = 1 C(2,1)(21) AW G AW G C(3,1)(21) C(3,1)(21) C(1,2)(21) C(1,2)(21) j = 2 C(2,2)(21) j = 2 C(2,2)(21) C(3,2)(21) C(3,2)(21) 7 x 7 7 x 7 AW G AW G C(1,7)(21) C(1,7)(21) j = 7 C(2,7)(21) j = 7 C(2,7)(21) C(3,7)(21) C(3,7)(21) (a) (b) (a) (b) Figure 6. The optical bu ering scenario for high quality-of-service (QoS) packets. (a) Code partition Figure 6. The optical buffering scenario for high quality-of-service (QoS) packets. (a) Code partition Figure 6. The optical buffering scenario for high quality-of-service (QoS) packets. (a) Code partition method; (b) encoder setup. method; (b) encoder setup. method; (b) encoder setup. The other code distribution for low-QoS users is depicted in Figure 7a. The code set is divided The other code distribution for low-QoS users is depicted in Figure 7a. The code set is divided The other code distribution for low-QoS users is depicted in Figure 7a. The code set is divided into three subsets, C(1,j), C(2,j), and C(3,j). Each subset has seven CMLS codes. If the codes in a specific into three subsets, C(1,j), C(2,j), and C(3,j). Each subset has seven CMLS codes. If the codes in a specific into three subsets, C(1,j), C(2,j), and C(3,j). Each subset has seven CMLS codes. If the codes in a specific subset are assigned to the queued packets, the incoming packet is encoded with an available code subset are assigned to the queued packets, the incoming packet is encoded with an available code subset are assigned to the queued packets, the incoming packet is encoded with an available code signal with a di erent index j. Figure 7b shows the encoding process based on AWGs for low-QoS signal with a different index j. Figure 7b shows the encoding process based on AWGs for low-QoS signal with a different index j. Figure 7b shows the encoding process based on AWGs for low-QoS users. To distribute the codes in C(1,j), the link to the upper AWG is given while the one to the lower users. To distribute the codes in C(1,j), the link to the upper AWG is given while the one to the lower users. To distribute the codes in C(1,j), the link to the upper AWG is given while the one to the lower AWG is changing. AWG is changing. AWG is changing. C(1,1)(21) C(1,1)(21) C(1,2)(21) C(1,2)(21) 3 x 3 i = 1 3 x 3 i = 1 AW G AW G C(1,7)(21) C(1,7)(21) C(2,1)(21) C(2,1)(21) C(2,2)(21) C(2,2)(21) i = 2 i = 2 7 x 7 7 x 7 C(2,7)(21) C(2,7)(21) AW G AW G C(3,1)(21) C(3,1)(21) C(3,2)(21) C(3,2)(21) i = 3 i = 3 C(3,7)(21) C(3,7)(21) (a) (b) (a) (b) Figure Figure 7. 7. The The optic optical al buffering bu ering scenario scenario for lfor ow-low-QoS QoS packet packets. s. (a) Code (a) part Code itiopartition n method;method; (b) encode (br ) Figure 7. The optical buffering scenario for low-QoS packets. (a) Code partition method; (b) encoder encoder setup. setup. setup. In a bu ering system based on a CMLS, N is the maximum number of available codes. These In a buffering system based on a CMLS, N is the maximum number of available codes. These In a buffering system based on a CMLS, N is the maximum number of available codes. These codes are used for queuing packets when they arrive at the bu er. If the system is at capacity, an codes are used for queuing packets when they arrive at the buffer. If the system is at capacity, an codes are used for queuing packets when they arrive at the buffer. If the system is at capacity, an incoming signal is blocked and dropped. The bu ering procedures can be described as a queue system incoming signal is blocked and dropped. The buffering procedures can be described as a queue incoming signal is blocked and dropped. The buffering procedures can be described as a queue where the AWG encoder is the single server, and the packet flow is the data source. The inter-arrival system where the AWG encoder is the single server, and the packet flow is the data source. The inter- system where the AWG encoder is the single server, and the packet flow is the data source. The inter- time  between the two successive input packets is assumed to be the formula of the exponential arrival time μ between the two successive input packets is assumed to be the formula of the arrival time μ between the two successive input packets is assumed to be the formula of the exponential process. The departure time of a packet leaving the buffer γ, which includes the latencies exponential process. The departure time of a packet leaving the buffer γ, which includes the latencies of finding a free code and optical decoding/encoding, is assumed to be the formula of the Poisson of finding a free code and optical decoding/encoding, is assumed to be the formula of the Poisson process. When a buffer of a unit CMLS subset is considered, it follows the characteristics of an process. When a buffer of a unit CMLS subset is considered, it follows the characteristics of an M/M/1/NS system. Here, NS is defined as the number of CMLSs in a code subset. For the example of M/M/1/NS system. Here, NS is defined as the number of CMLSs in a code subset. For the example of Figures 6 and 7, the values of NS for high- and low-QoS users are respectively 7 and 3. The probability Figures 6 and 7, the values of NS for high- and low-QoS users are respectively 7 and 3. The probability Appl. Sci. 2020, 10, 730 7 of 10 process. The departure time of a packet leaving the bu er , which includes the latencies of finding a free code and optical decoding/encoding, is assumed to be the formula of the Poisson process. When a bu er of a unit CMLS subset is considered, it follows the characteristics of an M/M/1/N system. Here, N is defined as the number of CMLSs in a code subset. For the example of Figures 6 and 7, the values of N for high- and low-QoS users are respectively 7 and 3. The probability density function (PDF) of the number of coded packets in a bu er is treated as the steady-state probability of the used queuing system, which is given as [22]: P (k) = P (4) S 0 where 0  k  N . P denotes the probability of zero packets existing in the bu er, which can be S 0 obtained by using the normalized condition and expressed as P = (5) P k k=0 For a bu er that has been assigned CMLS codes of length N, it is at capacity when all N codes are distributed to the bu ered packets. A newly incoming packet is dropped since the bu ering space is not available. Therefore, the PDP is defined as the probability of N packets existing in the bu er, which is given as: ( ) PDP = [P (N )] (6) S S According to (6), the bu er model can be described as N/N parallel M/M/1/N systems. S S In the proposed optical bu ering process, the CMLS code used for encoding a queuing packet is determined by the following steps. First, the control unit in the bu er selects a code subset with at least one unoccupied code in it. Second, one of the unoccupied codes in the selected code subset is assigned to the packet. If the codes in a code subset are all occupied, this subset is neglected by the control unit during the code-searching process. Therefore, the probability of successfully finding an occupied code for packet encoding in the bu ering process is related to N, N , and N/N . In (5) and S S (6), one could observe that PDP is determined by these three parameters. The relation between the parameters of N, N , and N/N is listed as follows: S S N(Code length or the number of codes in a code set) = N (The number of codes in a code subset) (7) (N/N )(The number of code subsets) Figure 8 shows the PDPs of the two levels of bu ering performance versus activity coecient , where  is defined as /. The figure compares the two scenarios of high- and low-QoS users for di erent CMLS lengths. The parameters for code lengths are listed as follows. For N = 21, N = M M M 3, and N = 7, while for N = 45, N = 3, and N = 15. For a given code length (N = 21), the code 2 1 2 assignment based on the partition of the code space with a larger subset number N/N = 7 improves the performance in terms of PDP, compared with the one with a smaller subset number N/N = 3. Please note that the di erence between the twolevels of PDP becomes significant when the length di erence M M between N and N increases. Furthermore, an increase in  leads to worse PDP performance. This is 1 2 because the number of packets waiting in the input line grows, and the incoming packet number may exceed the bu er capacity. Appl. Sci. 2020, 10, 730 8 of 10 Appl. Sci. 2020, 10, 730 8 of 10 Appl. Sci. 2020, 10, 730 8 of 10 Figure Figure 8. The 8. packet-dr The packet opping -dropping probability probabil (PDP) ity (P of DP) two-level of two-bu lev el ering buffering performance perform versus ance vers activity us act coe ivit  y cient. coefficient. M M The PDP of the bu ering system for N = 3 and N = 7 is plotted versus the CMLS code length N in Figure 9. The activity coecient  in the figure is 3.2. The bu er performance is improved by increasing the code length since more packets can be allocated in the system. When N becomes large, M M the di erence between N and N is also increased, and therefore the gap between the two levels of 1 2 PDPs becomes notable. For the high-QoS users, to reach the lowest PDP, the partition scheme with the Figure 8. The packet-dropping probability (PDP) of two-level buffering performance versus activity maximum subset number should be chosen. coefficient. Figure 9. The PDP of two-level buffering performance versus CMLS code length. To design a buffering scheme that supports more than two classes of optical buffering services, we refer to the results of the numerical simulations in Figure 9, where various PDPs can be obtained by varying the code length N. For a given N, at most two levels of PDPs can be supported. Moreover, there are two sizes of AWGs in the encoder. To generate multiple CMLS code sets with different Figure 9. The PDP of two-level bu ering performance versus CMLS code length. lengths, additFigure ional AWGs 9. The P DP are of two require -levd el buffering to be impl perform emen ance ted vers in th us e CMLS codec co . de Su le ch ngenco th. der design diversifies the levels of PDP performance, but the system complexity is also increased as more optical To design a bu ering scheme that supports more than two classes of optical bu ering services, we To design a buffering scheme that supports more than two classes of optical buffering services, components are included in the buffer structure. refer to the results of the numerical simulations in Figure 9, where various PDPs can be obtained by we refer to the results of the numerical simulations in Figure 9, where various PDPs can be obtained varying the code length N. For a given N, at most two levels of PDPs can be supported. Moreover, there 4. by Co vary nclus ing ions the code length N. For a given N, at most two levels of PDPs can be supported. Moreover, are two sizes of AWGs in the encoder. To generate multiple CMLS code sets with di erent lengths, there are two sizes of AWGs in the encoder. To generate multiple CMLS code sets with different In this paper, we have proposed a new approach to support multi-level buffering services in additional AWGs are required to be implemented in the codec. Such encoder design diversifies the lengths, additional AWGs are required to be implemented in the codec. Such encoder design GMPLS networks based on optical packet encoding. In this scheme, a code sequence known as CMLS levels of PDP performance, but the system complexity is also increased as more optical components diversifies the levels of PDP performance, but the system complexity is also increased as more optical and composed of two extended MLS codes is designed. We have presented a partition mechanism are included in the bu er structure. components are included in the buffer structure. that divides the CMLS code space into multiple subsets, with each of them with an identical code numb 4. Conclusions er. To support the desired QoS, a code distribution for encoding the queued packets and an 4. Conclusions encoder setup based on an AWG corresponding to the code space partition are proposed. The In this paper, we have proposed a new approach to support multi-level bu ering services in In this paper, we have proposed a new approach to support multi-level buffering services in partition scenario with a lower subset number but with a higher number of codes in an individual GMPLS networks based on optical packet encoding. In this scheme, a code sequence known as CMLS GMPLS networks based on optical packet encoding. In this scheme, a code sequence known as CMLS subset is used as an encoding method to achieve packet buffering for high-QoS users. To analyze the and composed of two extended MLS codes is designed. We have presented a partition mechanism that and composed of two extended MLS codes is designed. We have presented a partition mechanism system performance, the traffic behavior at the buffer’s input and output and the PDF of the queued divides the CMLS code space into multiple subsets, with each of them with an identical code number. that divides the CMLS code space into multiple subsets, with each of them with an identical code packet number in the buffer were obtained based on Erlang’s model. The results show that the To support the desired QoS, a code distribution for encoding the queued packets and an encoder setup number. To support the desired QoS, a code distribution for encoding the queued packets and an buffering services for different QoS users can be supported by queuing the packets with multi-level based on an AWG corresponding to the code space partition are proposed. The partition scenario M M encoder setup based on an AWG corresponding to the code space partition are proposed. The PDPs. Furthermore, a larger difference between N and N results in a more significant 1 2 with a lower subset number but with a higher number of codes in an individual subset is used as an partition scenario with a lower subset number but with a higher number of codes in an individual performance gap between the high- and low-QoS users. subset is used as an encoding method to achieve packet buffering for high-QoS users. To analyze the system performance, the traffic behavior at the buffer’s input and output and the PDF of the queued packet number in the buffer were obtained based on Erlang’s model. The results show that the buffering services for different QoS users can be supported by queuing the packets with multi-level M M PDPs. Furthermore, a larger difference between N and N results in a more significant 1 2 performance gap between the high- and low-QoS users. Appl. Sci. 2020, 10, 730 9 of 10 encoding method to achieve packet bu ering for high-QoS users. To analyze the system performance, the trac behavior at the bu er ’s input and output and the PDF of the queued packet number in the bu er were obtained based on Erlang’s model. The results show that the bu ering services for di erent QoS users can be supported by queuing the packets with multi-level PDPs. Furthermore, a M M larger di erence between N and N results in a more significant performance gap between the high- and low-QoS users. So far, we have considered the bu ering performance in terms of PDP. Another general degradation in the system is bit-error rate (BER), which comes from the signals of the coded packets multiplexed in the same fiber. Based on the results in [23], the BER for a general SAC system is negligible (<10 ) when the user number is less than 50. However, when N increases, although one can expect a reduced PDP, the BER becomes notable since the number of overlapping coded packets grows. The combined e ect of PDP and BER and their trade-o relation require further investigation. Author Contributions: K.-S.C. contributed to the conceptualization, methodology, and writing of this paper. W.H. conceived the simulation setup and formal analysis and conducted the investigation. All authors have read and agreed to the published version of the manuscript. Funding: This research was funded by the Department of Education of Guangdong Province, grant number 2018KTSCX322. Conflicts of Interest: The authors declare no conflicts of interest. References 1. Kanj, M.; Rouzic, E.L.; Meuric, J.; Cousin, B.; Amar, D. Optical power control in GMPLS control plane. IEEE/OSA J. Opt. Commun. Netw. 2016, 8, 553–568. [CrossRef] 2. Farghal, A.E.; Shalaby, H.M.H.; Kawasaki, Z. Multirate multiservice all-optical code switched GMPLS core network utilizing multicode variable-weight optical code-division multiplexing. IEEE/OSA J. Opt. Commun. Netw. 2014, 6, 670–683. [CrossRef] 3. Huang, S.; Baba, K.; Murata, M.; Kitayama, K. Architecture design and performance evaluation of multi-granularity optical networks based on optical code division multiplexing. IEEE/OSA J. Opt. Commun. Netw. 2016, 5, 1028–1042. [CrossRef] 4. Segawa, T.; Ibrahim, S.; Nakahara, T.; Muranaka, Y.; Takahashi, R. Low-power optical packet switching for 100-Gb/s burst optical packets with a label processor and 8  8 optical switch. IEEE/OSA J. Lightwave Technol. 2016, 34, 1844–1850. [CrossRef] 5. Zhao, Z.; Wu, B.; Li, B.; Xiao, J.; Fu, S.; Liu, D. Multihop routing enabled packet switching with QoS guarantee in optical clos for data centers. IEEE/OSA J. Opt. Commun. Netw. 2018, 10, 624–632. [CrossRef] 6. Lopez, V.; Hernandez, J.A.; De Dios, O.G.; Palacios, J.F.; Aracil, J. Multilayer trac engineering for IP over WDM networks based on Bayesian decision theory. IEEE/OSA J. Opt. Commun. Netw. 2010, 2, 515–529. [CrossRef] 7. Datta, A. Construction of polynomial-size optical priority queues using linear switches and fiber delay lines. IEEE/ACM Trans. Netw. 2017, 25, 974–987. [CrossRef] 8. Lim, H. Number of tunable wavelength converters and internal wavelengths needed for cost-e ective design of asynchronous optical packet switching system with shared or output fibre delay line bu er. IET Commun. 2013, 7, 1419–1429. [CrossRef] 9. Hirayama, T.; Miyazawa, T.; Furukawa, H.; Harai, H. Optical and electronic combined bu er architecture for optical packet switches. J. Opt. Commun. Netw. 2015, 7, 776–784. [CrossRef] 10. Liu, L.; Zhang, Z.; Yang, Y. In-order packet scheduling in optical switch with wavelength division multiplexing and electronic bu er. IEEE Trans. Commun. 2014, 62, 1983–1994. [CrossRef] 11. Kazemi, R.; Rashidinejad, A.; Nashtaali, D.; Salehi, J.A. Virtual optical bu ers: A novel interpretation of OCDMA in packet switch networks. J. Lightwave Technol. 2012, 30, 2964–2975. [CrossRef] 12. Chen, K.S.; Chen, C.S.; Wu, S.L. Two-code keying and code conversion for optical bu er design in optical packet switching networks. Electronics 2019, 8, 1117. [CrossRef] 13. Cherifi, A.; Jellali, N.; Najjar, M.; Aljunid, S.A.; Bouazza, B.S. Development of a novel two-dimensional SWZCC—Code for spectral/spatial optical CDMA system. Opt. Laser Technol. 2019, 109, 233–240. [CrossRef] Appl. Sci. 2020, 10, 730 10 of 10 14. Najjar, M.; Jellali, N.; Ferchichi, M.; Rezig, H. Spectral/spatial optical CDMA code based on diagonal eigenvalue unity. Opt. Fiber Technol. 2017, 38, 61–69. [CrossRef] 15. Liu, M.; Wang, T.; Tseng, S. Throughput performance analysis of asynchronous optical CDMA networks with channel load sensing protocol. IEEE Photonics J. 2017, 9, 1–13. [CrossRef] 16. Lin, J.Y.; Jhou, J.S.; Wen, J.H. Variable-length code construction for incoherent optical CDMA systems. Opt. Fiber Technol. 2007, 13, 180–190. [CrossRef] 17. Baby, V.; Kwong, W.C.; Chang, C.Y.; Yang, G.C.; Prucnal, P.R. Performance analysis of variable-weight multilength optical codes for wavelength-time O-CDMA multimedia systems. IEEE Trans. Commun. 2007, 55, 1325–1333. [CrossRef] 18. Huang, J.F.; Chen, K.S.; Lin, Y.S.; Li, C.Y. Reconfiguring waveguide-gratings-based M-signature codecs to enhance OCDMA network confidentiality. Opt. Commun. 2014, 313, 223–230. [CrossRef] 19. Meng, S.H.; Chen, K.S.; Huang, J.F.; Yang, C.C. Orthogonal stacked composite M-sequence labels for quick packet routing over optical MPLS network. In Proceedings of the IEEE 28th Canadian Conference on Electrical and Computer Engineering (CCECE), Halifax, NS, Canada, 3–6 May 2015. 20. Beyranvand, H.; Salehi, J.A. Multiservice provisioning and quality of service guarantee in WDM optical code switched GMPLS core networks. J. Lightwave Technol. 2009, 27, 1754–1762. [CrossRef] 21. Beyranvand, H.; Salehi, J.A. All-optical multiservice path switching in optical code switched GMPLS core Networks. J. Lightwave Technol. 2009, 27, 2001–2012. [CrossRef] 22. Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems; Springer: New York, NY, USA, 2006. 23. Yang, C.C. The application of spectral-amplitude-coding optical CDMA in passive optical networks. Opt. Fiber Technol. 2008, 14, 134–142. [CrossRef] © 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/). http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png Applied Sciences Multidisciplinary Digital Publishing Institute

Multi-Level Buffering Services Based on Optical Packet Encoding of Composite Maximal-Length Sequences in a GMPLS Network

Applied Sciences , Volume 10 (3) – Jan 21, 2020

Loading next page...
 
/lp/multidisciplinary-digital-publishing-institute/multi-level-buffering-services-based-on-optical-packet-encoding-of-H0FIgRBeHI

References (23)

Publisher
Multidisciplinary Digital Publishing Institute
Copyright
© 1996-2020 MDPI (Basel, Switzerland) unless otherwise stated Disclaimer The statements, opinions and data contained in the journals are solely those of the individual authors and contributors and not of the publisher and the editor(s). Terms and Conditions Privacy Policy
ISSN
2076-3417
DOI
10.3390/app10030730
Publisher site
See Article on Publisher Site

Abstract

applied sciences Article Multi-Level Bu ering Services Based on Optical Packet Encoding of Composite Maximal-Length Sequences in a GMPLS Network 1 2 , Kai-Sheng Chen and Wien Hong * School of Electrical and Computer Engineering, Nanfang College of Sun Yat-Sen University, Guangzhou 510970, China; 17304@mail.nfu.edu.cn College of Intelligence, National Taichung University of Science and Technology, Taichung 40401, Taiwan * Correspondence: wienhong@nutc.edu.tw Received: 5 December 2019; Accepted: 20 January 2020; Published: 21 January 2020 Abstract: Generalized multi-protocol label-switching (GMPLS) provides packet-switching with multiple speeds and quality-of-services (QoSs). Packet bu ering in GMPLS reduces packet loss by resolving the conflicts between packets requesting for a common channel. Presently, due to the diversity of multimedia applications, enabling multiple services in networks has become necessary. In this paper, a family of codes known as composite maximal-length sequence (CMLS) codes is introduced into an optical bu ering scheme based on code-switching. A given number of available CMLS codes is divided into several code subsets. The bu er selects an unused CMLS code from a code subset and assigns it to the incoming packet. When all codes in a specific subset have been distributed to the queued packets, a free CMLS code in another subset is chosen for the new arrival. To achieve multi-level bu ering services, the partition scenario with a lower subset number but with a higher number of codes in an individual subset is used as a code-assigning method for bu ering high-QoS users. A two-level bu ering system is demonstrated by examining the QoS of each class in terms of packet-dropping probability (PDP). The results show that di erent levels of PDPs can be e ectively supported by a common bu er architecture. Keywords: generalized multi-protocol label-switching (GMPLS); quality-of-service (QoS); optical packet bu ering; code-switching 1. Introduction Generalized multi-protocol label-switching (GMPLS) provides packet-switching with multiple speeds and quality-of-services (QoSs) over optical networks in the time, wavelength, and space domains [1–3]. The typical quality comes from adopting the packet process operated by an internet protocol. The superiority of GMPLS is due to a unified control plane that includes separate network layers, and transparent data transmissions can be supported in a continuously changing environment. If the edge nodes for a connection of a packet flow are in di erent networks, GMPLS can merge new and previous networks and automatically set up a link configuration. Such advantages have drawn attention to GMPLS and it has achieved a lot in optical packet-switching (OPS) networks [4–6]. However, a packet stops switching in GMPLS if conflicts about the resources of channels or paths happen. When conflicts come into existence, resolution algorithms based on optical bu ering take action. Bu ering management at the core codes deals with packets that simultaneously compete to obtain the same resource [7–12]. The goal of packet bu ering is to reduce the packet loss to the lowest possible level. As the OPS network will experience less packet-dropping, GMPLS with conflict resolution can support the development of future OPS networks. Optical bu ering schemes can be Appl. Sci. 2020, 10, 730; doi:10.3390/app10030730 www.mdpi.com/journal/applsci Appl. Sci. 2020, 10, 730 2 of 10 generally boiled down to three categories: fiber delay line [7,8], wavelength conversion [9,10], and code-switching [11,12]. As the components of optical codecs have reached a mature state, code-switching has been emphasized in all optical bu ering designs. The multiplexing technique of optical coding provides users with a shared bandwidth to employ asynchronous packet transmission [13–15]. Presently, networks are known for their diverse multimedia applications, so enabling multi-service data transmissions has become necessary. Several optical coding schemes have been proposed to achieve di erentiated services in access networks. In [16], the parameters of optical code-words, such as length and weight, were changed to o er new data rates. To change the QoS, frequency hopping was combined with multi-wavelength optical codes in a two-dimension coding system [17]. In this paper, a family of codes known as composite maximal-length sequence (CMLS) codes [18,19] is introduced into a bu ering scheme where packets are queued in the optical domain. Although code-switching can be treated as a promising scheme in optical bu ering, it only provides a single-level bu ering service in most cases. The contribution of this paper is that we consider the multiple schemes of partitioning a CMLS code set, design the corresponding CMLS codec in the bu er architecture, and model the bu ering processes to obtain the performance curves that show various levels of packet-dropping probabilities (PDPs). In the proposed scheme, a fixed number of CMLS codes is equally divided into several subsets. The partition scenario with a lower subset number but with a higher number of codes in an individual subset is used as an encoding method to achieve packet bu ering for high-QoS users. To examine the bu ering performance in detail, the QoS index of the PDP of di erent classes of users is studied. The PDP is applied to describe a scenario in which a bu er is full, and no more packets are allowed to enter it. In the bu ering model that we use to derive the PDP, the packet trac at the system inputs and outputs behaves as described in Erlang’s model [20,21]. 2. Procedures for Constructing a Composite Maximal-Length Sequence (CMLS) and the Codec Design In this paper, packet bu ering in GMPLS is achieved by encoding each queued packet with a CMLS code composed of two extended maximal-length sequences (MLSs). A family of MLS codes M M M includes K code-words, where K is called code cardinality. Each code-word has N binary elements M m of {0, 1}, where N = 2 1 is known as the MLS length and m is a positive integer larger than 1. A M M general way to describe the characteristics of a family of codes is to employ the expression of (N , ! , M M M M ), where ! and  denote the auto- and cross-correlation of MLS codes. ! is also known as the code weight, or the number of chips “1” in a MLS code-word, while  is defined as the number of the overlapping chips “1” between any two di erent code-words in a family of MLS codes. The correlation M M properties between two MLSs in a code set are ! = (N + 1)/2 and  = (N + 1)/4. Moreover, MLSs have a periodical-shift property, where an MLS belongs to the original code set after cyclically shifting any number of chips. The construction of a CMLS can be performed in three steps. First, select two M M M M M MLS codes, M (N ) and M (N ), with the code length of N and N , respectively, where 1  i  N i j 1 2 1 2 1 M M M and 1  j  N ; second, extend both M (N ) and M (N ) to the vectors with the length of the lowest i j 2 1 2 M M common multiple of N and N by repeating them multiple times; finally, add these two extended 1 2 code-words via the module-2 summation. Based on the above steps, the structuring of the CMLS code M M set of length N = N N can be summarized as follows: 1 2 M M N times N times 2 1 z }| { z }| { h      i h      i M M M M M M M M C N N = M N M N ::: M N  M N M N ::: M N (1) (i,j) i i i j j j 2 2 2 2 1 1 1 1 where  denotes the operation of module-2 summation. Based on (1), one can find a CMLS set made of M M M (N ) and M (N ) that has N code-words in it. Figure 1 shows the construction of C (21) with N i j (1,1) 1 2 = 21 based on M (3) = [110] and M (7) = [1110010]. 1 1 Appl. Sci. 2020, 10, 730 3 of 10 Appl. Sci. 2020, 10, 730 3 of 10 Appl. Sci. 2020, 10, 730 3 of 10 M1(3) M1(3) 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 0 1 0 M1(7) M1(7) 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 0 0 0 1 0 0 C(1,1)(21) C(1,1)(21) Figure 1. Construction of a composite maximal-length sequence (CMLS) with a length of 21 based on Figure 1. Construction of a composite maximal-length sequence (CMLS) with a length of 21 based on Figure 1. Construction of a composite maximal-length sequence (CMLS) with a length of 21 based on two maximal-length sequence (MLS) codes with a length of 3 and 7. two maximal-length sequence (MLS) codes with a length of 3 and 7. two maximal-length sequence (MLS) codes with a length of 3 and 7. The correlation property between any two code-words in a common family of CMLS codes is an The correlation property between any two code-words in a common family of CMLS codes is an The correlation property between any two code-words in a common family of CMLS codes is an important index for describing the code characteristics. The correlation values among CMLS codes important index for describing the code characteristics. The correlation values among CMLS codes important index for describing the code characteristics. The correlation values among CMLS codes with N are expressed as: with N are expressed as: with N are expressed as:  = C N C N ( ) ( )  i , j ,k ,l= C ( i , j ) N C ( k ,l ) N ( = ) C ((N)) C ((N)) (i,j,k,l) (( ii , , j )j) ( k(,k l, )l) (i , j ,k ,l) > (N N− 1 1)//2 2, , ii==kk , , j j== l l ( ) (2) (2)  N− 1 / 2, i = k, j = l ( )    (2) => > M M = MM  N N 2 /4, N N 2 /4, (N 1)/4, i , k, j , l MM N− N − 2 / 4, N− N − 2 / 4, N− 1 / 4, i  k, j  l ( 1 ) ( 2 ) ( ) N− N12 − 2 / 4, N− N − 2 / 4, N− 1 / 4, i  k, j  l ( ) ( ) ( )  12 where denotes the dot-product operation. Based on (2), the autocorrelation for a CMLS code- where denotes the dot-product operation. Based on (2), the autocorrelation for a CMLS code-word is where denotes the dot-product operation. Based on (2), the autocorrelation for a CMLS code- word is fixed, while the cross-correlations between any two different CMLS code-words may vary, fixed, while the cross-correlations between any two di erent CMLS code-words may vary, where the word is fixed, while the cross-correlations between any two different CMLS code-words may vary, where the values are limited to three levels. As a CMLS is made from MLSs, both types of sequences values are limited to three levels. As a CMLS is made from MLSs, both types of sequences have several where the values are limited to three levels. As a CMLS is made from MLSs, both types of sequences have several similar characteristics, such as the mathematical expression of code weight or similar characteristics, such as the mathematical expression of code weight or autocorrelation, and the have several similar characteristics, such as the mathematical expression of code weight or autocorrelation, and the cyclic-shift property. The latter indicates that when a CMLS C(i,j)(N) is known, cyclic-shift property. The latter indicates that when a CMLS C (N) is known, all sequences in the (i,j) autocorrelation, and the cyclic-shift property. The latter indicates that when a CMLS C(i,j)(N) is known, m m m m all sequences in the code set can be found in T [C(i,j)(N)], where T [ ] denotes an operator that code set can be found in T [C (N)], where T [ ] denotes m an operator that m cyclically shifts a CMLS for all sequences in the code set (i,jcan ) be found in T [C(i,j)(N)], where T [ ] denotes an operator that cyclically shifts a CMLS for m elements in right direction, where 0 ≦ m ≦ N − 1. Figure 2 shows m elements in right direction, where 0  m  N 1. Figure 2 shows two correlation functions,  = cyclically shifts a CMLS for m elements in right direction, where 0 ≦ m ≦ N − 1. Figure 2 shows m mm m two correlation functions, θ = C(1,1)(21)⊙T [C(1,1)(21)] and θ = C(1,1)(21)⊙T [C(1,1)(21)], where C(1,1)(21) C (21) T [C (21)] and  = C (21) mT [C (21)], where C (21) is m the complementary CMLS (1,1) (1,1) (1,1) (1,1) (1,1) two correlation functions, θ = C(1,1)(21)⊙T [C(1,1)(21)] and θ = C(1,1)(21)⊙T [C(1,1)(21)], where C(1,1)(21) that is the describes complethat ment chips ary C“1” MLS and that “0” desc arerin ibes the th inverse at chips positions “1” and of “0” C are (21). in the In this inverse figur po e, sit it can ions be of (1,1) is the complementary CMLS that describes that chips “1” and “0” are in the inverse positions of C(1,1)(21). In this figure, it can be observed that the CMLS has a good correlation property, as the observed that the CMLS has a good correlation property, as the autocorrelation value is large while the C(1,1)(21). In this figure, it can be observed that the CMLS has a good correlation property, as the cr autocorre oss-correlation lation val values ue isr la emain rge whi relatively le the cross small. -correlation values remain relatively small. autocorrelation value is large while the cross-correlation values remain relatively small. Figure 2. The correlation values and the complementary correlation values of CMLS C (21). (1,1) Figure 2. The correlation values and the complementary correlation values of CMLS C(1,1)(21). Figure 2. The correlation values and the complementary correlation values of CMLS C(1,1)(21). To design the codecs of the CMLS codes, arrayed waveguide grating (AWG) was employed. AWG To design the codecs of the CMLS codes, arrayed waveguide grating (AWG) was employed. To design the codecs of the CMLS codes, arrayed waveguide grating (AWG) was employed. acts as a de-multiplexer that routes each of the input wavelengths to a specific output port. Figure 3 AWG acts as a de-multiplexer that routes each of the input wavelengths to a specific output port. AWG acts as a de-multiplexer that routes each of the input wavelengths to a specific output port. shows the encoder of C (21), which consists of a 3  3 and a 7  7 AWG. The encoder input is a light (1,1) Figure 3 shows the encoder of C(1,1)(21), which consists of a 3 × 3 and a 7 × 7 AWG. The encoder input Figure 3 shows the encoder of C(1,1)(21), which consists of a 3 × 3 and a 7 × 7 AWG. The encoder input source with a bandwidth that ranges from  to  , including 21 wavelengths. One of the basic codes 1 21 is a light source with a bandwidth that ranges from λ1 to λ21, including 21 wavelengths. One of the is a light source with a bandwidth that ranges from λ1 to λ21, including 21 wavelengths. One of the for constructing C (21) is M (3) = (110), which is represented as the optical signal of (  0). These (1,1) 1 1 2 basic codes for constructing C(1,1)(21) is M1 (3) = (110), which is represented as the optical signal of basic codes for constructing C(1,1)(21) is M1 (3) = (110), which is represented as the optical signal of two wavelengths,  and  , are obtained at the first and the second output of the 3  3 AWG. As 1 2 (λ1λ20). These two wavelengths, λ1 and λ2, are obtained at the first and the second output of the 3 × 3 (λ1λ20). These two wavelengths, λ1 and λ2, are obtained at the first and the second output of the 3 × 3 shown in Figure 1, before generating C (21), an extended vector that includes seven duplicates of (1,1) AWG. As shown in Figure 1, before generating C(1,1)(21), an extended vector that includes seven AWG. As shown in Figure 1, before generating C(1,1)(21), an extended vector that includes seven duplicates of M1 (3) is required. The signal of each duplicate in the extended vector is obtained by duplicates of M1 (3) is required. The signal of each duplicate in the extended vector is obtained by Appl. Sci. 2020, 10, 730 4 of 10 employing the wavelength routing property of AWG known as the free-spectral range (FSR). For an M × M AWG, if the signal of the light source enters the 1st input port, the wavelengths shown at the i-th output port are λi, λi+M, λi+2M …, where i + kM is less than or equal to the maximum wavelength number. Therefore, the second duplicate of M1 (3) is represented as the signal of (λ4λ50), while the third is (λ7λ80), and the remaining duplicates have similar wavelength distributions. The other code basis, M1 (7) = (1110010), is composed of four wavelengths in its signal representation (λ1λ2λ300λ60). Similarly, the signal component of the extended vector of M1 (7) is obtained from the wavelengths appearing at 1st, 2nd, 3rd, and 5th outputs of the 7 × 7 AWG. The wavelength components at each AWG’s outputs are combined and sent to a module-2 adder for Appl. Sci. 2020, 10, 730 4 of 10 generating the final CMLS. Using optical wavelength signals to represent the chip distribution in a code sequence is known as spectral-amplitude-coding (SAC), which has been used a lot in optical M (3) is required. The signal of each duplicate in the extended vector is obtained by employing the acces 1 s and switching networks due to its system simplicity. In addition to C(1,1)(21), other CMLS codes wavelength routing property of AWG known as the free-spectral range (FSR). For an M  M AWG, if in the same code set can be generated from the shared encoder, as AWG has the cyclic-shift property the signal of the light source enters the 1st input port, the wavelengths shown at the i-th output port are for wavelength distributing. Such a property can also be found in the chip distributions of CMLSs ,  ,  ::: , where i + kM is less than or equal to the maximum wavelength number. Therefore, and i i + ML M Ssi. + 2 AM n arbitrary CMLS C(i,j)(21) can be obtained by passing the light source signal to the i-th the second duplicate of M (3) is represented as the signal of (  0), while the third is (  0), and the input of the 3 × 3 AWG an 1 d the j-th input of the 7 × 7 AWG wi 4 tho 5 ut modifying any con 7 nect 8 ions and remaining duplicates have similar wavelength distributions. components at the grating’s output ports. M1 (3) l ~ l 1 21 l l l l l l l Light 1 4 7 10 13 16 19 Sour ce 3 x 3 l l l l l l l 2 5 8 11 14 17 20 Mux AW G l l l l l l l 3 6 9 12 15 18 21 C(1,1) (21) l l l 1 8 15 l l l 2 9 16 l l l 3 10 17 7 x 7 l l l 4 11 18 Mux AW G l l l 5 12 19 l l l 6 13 20 l l l 7 14 21 (7) M1 Figure 3. The encoder architecture of CMLS C (21) based on arrayed waveguide grating (AWG). Figure 3. The encoder architecture of CMLS C (1,1) (1,1)(21) based on arrayed waveguide grating (AWG). Mux: Multiplexer. Mux: Multiplexer. The other code basis, M (7) = (1110010), is composed of four wavelengths in its signal Figure 4 depicts the decoder of C(1,1)(21) with a 21 × 21 AWG. The received signal is directed to representation (   00 0). Similarly, the signal component of the extended vector of M (7) 1 2 3 6 1 the 1st input port. The wavelength signals sent to the upper multiplexer match the positions of chip is obtained from the wavelengths appearing at 1st, 2nd, 3rd, and 5th outputs of the 7  7 AWG. The “1” in C(1,1)(21), while the ones sent to the lower multiplexer match the positions of chip “0”. The wavelength components at each AWG’s outputs are combined and sent to a module-2 adder for optical signals at each multiplexer’s output are converted to an electrical current by a photodetector. generating the final CMLS. Using optical wavelength signals to represent the chip distribution in a After the lower current is subtracted from the upper, the subtraction result is passed to a threshed code sequence is known as spectral-amplitude-coding (SAC), which has been used a lot in optical device. To identify CMLS code C(i,j)(21) = T [C(1,1)(21)], the received signal is sent to the m-th input of access and switching networks due to its system simplicity. In addition to C (21), other CMLS codes (1,1) the AWG decoder. The decoding function can be expressed by the following equation of correlation in the same code set can be generated from the shared encoder, as AWG has the cyclic-shift property subtraction: for wavelength distributing. Such a property can also be found in the chip distributions of CMLSs N− 1 / 2, i = k , j = l ( ) and MLSs. An arbitrary CMLS C (21) can be obtained by passing the light source signal to the i-th (i,j)  − = . (3) i , j , k ,l ( i , j ,k ,l) ( ) MM − N + 1 / 2, - N + 1 / 2, 0, i  k, j  l input of the 3  3 AWG and the j-th input of( the 7) 7 AWG ( without ) modifying any connections and  12 components at the grating’s output ports. According to (3), if a packet encoded with C(1,1)(21) enters the corresponding decoder, the output value Figure 4 depicts the decoder of C (21) with a 21  21 AWG. The received signal is directed to (1,1) M M N N is 10, which can be obtained from the upper case in (3) by substituting = 3 and = 7. If the 1 2 the 1st input port. The wavelength signals sent to the upper multiplexer match the positions of chip “1” decoder does not match the code carried by the packet, the output values would be −2, −4, and 0. We in C (21), while the ones sent to the lower multiplexer match the positions of chip “0”. The optical (1,1) select the median between 10 and 0 as the threshold to determine whether the decoder matches the signals at each multiplexer ’s output are converted to an electrical current by a photodetector. After the received coded signal. If the signal value at the decoder output is larger than 5, it indicates that lower current is subtracted from the upper, the subtraction result is passed to a threshed device. To C(1,1)(21) is presented. identify CMLS code C (21) = T [C (21)], the received signal is sent to the m-th input of the AWG (i,j) (1,1) decoder. The decoding function can be expressed by the following equation of correlation subtraction: > ( ) N 1 /2, i = k, j = l = . (3) (i,j,k,l) M M (i,j,k,l) > N + 1 /2, N + 1 /2, 0, i , k, j , l 1 2 According to (3), if a packet encoded with C (21) enters the corresponding decoder, the output value (1,1) M M is 10, which can be obtained from the upper case in (3) by substituting N = 3 and N = 7. If the 1 2 decoder does not match the code carried by the packet, the output values would be 2, 4, and 0. We select the median between 10 and 0 as the threshold to determine whether the decoder matches Appl. Sci. 2020, 10, 730 5 of 10 the received coded signal. If the signal value at the decoder output is larger than 5, it indicates that C (21) is presented. Appl. Sci. 2020, 10, 730 5 of 10 Ap(1,1) pl. Sci. 2020, 10, 730 5 of 10 C(1,1)(21) C(1,1)(21) Received Received l 3 Signal Signal l . MUX MUX PD PD l 19 21 × 21 21 × 21 . OXC OXC AW G l 1 AW G . l . l 2 MUX PD MUX PD l 21 C(1,1)(21) C(1,1)(21) Figure 4. The decoder architecture of CMLS C(1,1)(21) based on AWG. Mux: Multiplexer. PD: Figure 4. The decoder architecture of CMLS C(1,1)(21) based on AWG. Mux: Multiplexer. PD: Figure 4. The decoder architecture of CMLS C (21) based on AWG. Mux: Multiplexer. (1,1) Photodetector. Photodetector. PD: Photodetector. 3. Scenarios of Multi-Level Bu ering Services and Performance Evaluations 3. Scenarios of Multi-Level Buffering Services and Performance Evaluations 3. Scenarios of Multi-Level Buffering Services and Performance Evaluations The architecture of the proposed scheme capable of providing multi-service bu ering is shown The architecture of the proposed scheme capable of providing multi-service buffering is shown The architecture of the proposed scheme capable of providing multi-service buffering is shown in Figure 5. In this scenario, two packets competing for a common output port are considered. At in Figure 5. In this scenario, two packets competing for a common output port are considered. At the in Figure 5. In this scenario, two packets competing for a common output port are considered. At the the bu er input ports, packets carrying CMLS signals are decoded by decoder arrays to generate buffer input ports, packets carrying CMLS signals are decoded by decoder arrays to generate buffer input ports, packets carrying CMLS signals are decoded by decoder arrays to generate photocurrents with amplitudes that are proportional to the power variations of the optical payloads. photocurrents with amplitudes that are proportional to the power variations of the optical payloads. photocurrents with amplitudes that are proportional to the power variations of the optical payloads. By considering the CMLSs that had been occupied by the existing optical packets in the bu er, the By considering the CMLSs that had been occupied by the existing optical packets in the buffer, the By considering the CMLSs that had been occupied by the existing optical packets in the buffer, the control unit decides which new sequences will be used to encode the incoming packets waiting to be control unit decides which new sequences will be used to encode the incoming packets waiting to be control unit decides which new sequences will be used to encode the incoming packets waiting to be queued. To perform optical encoding, an electrical switch forwards the baseband-decoded signals to queued. To perform optical encoding, an electrical switch forwards the baseband-decoded signals to queued. To perform optical encoding, an electrical switch forwards the baseband-decoded signals to optical modulators, and then the optical carriers are sent to the corresponding encoders. Please note optical modulators, and then the optical carriers are sent to the corresponding encoders. Please note optical modulators, and then the optical carriers are sent to the corresponding encoders. Please note that in this case, a packet carrying C (21) has existed in the bu er, so the identical sequence carried that in this case, a packet carrying C(1,1) (1,1)(21) has existed in the buffer, so the identical sequence carried that in this case, a packet carrying C(1,1)(21) has existed in the buffer, so the identical sequence carried by the input packet is switched into another available code C (21). The other input packet retains by the input packet is switched into another available code C (3,1) (3,1)(21). The other input packet retains by the input packet is switched into another available code C(3,1)(21). The other input packet retains its code C (21) since it is not used by any queued packets. After renewing the attached codes, the its code C(2,1) (2,1)(21) since it is not used by any queued packets. After renewing the attached codes, the its code C(2,1)(21) since it is not used by any queued packets. After renewing the attached codes, the encoded packets of di erent CMLSs are combined and passed to the output port. encoded packets of different CMLSs are combined and passed to the output port. encoded packets of different CMLSs are combined and passed to the output port. Control Unit Control Unit C(1,1)(21) C(1,1)(21) OD A E/O OE A C(1,1)(21) C(1,1)(21) OD A E/O OE A C(2,1)(21) C(2,1)(21) OD A E/O OE A C(2,1)(21) OD A E/O OE A C(2,1)(21) C(3,1)(21) C(3,1)(21) E/O OE A E/O OE A Electrical Electrical Swi tch Swi tch Figure 5. The optical bu ering architecture with optical encoding/decoding of the CMLS. ODA: optical Figure 5. The optical buffering architecture with optical encoding/decoding of the CMLS. ODA: Figure 5. The optical buffering architecture with optical encoding/decoding of the CMLS. ODA: decoder array; OEA: optical encoder array; E/O: electrical-to-optical conversion. optical decoder array; OEA: optical encoder array; E/O: electrical-to-optical conversion. optical decoder array; OEA: optical encoder array; E/O: electrical-to-optical conversion. The use of CMLS codes in encoding packets provides the bu ering service with variable The use of CMLS codes in encoding packets provides the buffering service with variable The use of CMLS codes in encoding packets provides the buffering service with variable performance. The partition of code set C (21) for high-QoS users is shown in Figure 6a, where seven (i,j) performance. The partition of code set C(i,j)(21) for high-QoS users is shown in Figure 6a, where seven performance. The partition of code set C(i,j)(21) for high-QoS users is shown in Figure 6a, where seven subsets C(i,1), C(i,2), ::: , C(i,7) are obtained, and each of them has three CMLS codes with a common subsets C(i,1), C(i,2), …, C(i,7) are obtained, and each of them has three CMLS codes with a common subsets C(i,1), C(i,2), …, C(i,7) are obtained, and each of them has three CMLS codes with a common index i. For high-QoS users, the preferred scenario is to partition the CMLS code set into max{N , index i. For high-QoS users, the preferred scenario is to partition the CMLS code set into max{ N , M M M N index i. For high-QoS users, the preferred scenario is to partition the CMLS code set into max{ , N } subsets. In the example of N = 3 and N = 7, seven code subsets are obtained. If the codes in a 2 1 2 M M M M M M N } subsets. In the example of N = 3 and N = 7, seven code subsets are obtained. If the codes certain N subset are all occupied, the N newly incoming N packets with the codes in the same group will be } subsets. In the example of = 3 and = 7, seven code subsets are obtained. If the codes 2 1 2 2 1 2 sent to a free encoder generating a CMLS of di erent i. Figure 6b shows the encoder implementation in a certain subset are all occupied, the newly incoming packets with the codes in the same group in a certain subset are all occupied, the newly incoming packets with the codes in the same group corresponding to the code distribution in Figure 6a. The connection to the input ports of the upper 3 will be sent to a free encoder generating a CMLS of different i. Figure 6b shows the encoder will be sent to a free encoder generating a CMLS of different i. Figure 6b shows the encoder implementation corresponding to the code distribution in Figure 6a. The connection to the input ports implementation corresponding to the code distribution in Figure 6a. The connection to the input ports of the upper 3 × 3 AWG is varied, and the one to the 1st input port of the lower 7 × 7 AWG is fixed to of the upper 3 × 3 AWG is varied, and the one to the 1st input port of the lower 7 × 7 AWG is fixed to construct the code subset C(i,1), where 1 ≦ i ≦ 3. Another subset C(i,2) can be obtained by construct the code subset C(i,1), where 1 ≦ i ≦ 3. Another subset C(i,2) can be obtained by establishing the link to the 2nd input of the lower AWG. establishing the link to the 2nd input of the lower AWG. Appl. Sci. 2020, 10, 730 6 of 10 3 AWG is varied, and the one to the 1st input port of the lower 7  7 AWG is fixed to construct the code subset C(i,1), where 1  i  3. Another subset C(i,2) can be obtained by establishing the link to the 2nd Appl. Sci. 2020, 10, 730 6 of 10 Apinput pl. Sci. 2020 of the , 10, lower 730 AWG. 6 of 10 C(1,1)(21) C(1,1)(21) 3 x 3 3 x 3 j = 1 C(2,1)(21) j = 1 C(2,1)(21) AW G AW G C(3,1)(21) C(3,1)(21) C(1,2)(21) C(1,2)(21) j = 2 C(2,2)(21) j = 2 C(2,2)(21) C(3,2)(21) C(3,2)(21) 7 x 7 7 x 7 AW G AW G C(1,7)(21) C(1,7)(21) j = 7 C(2,7)(21) j = 7 C(2,7)(21) C(3,7)(21) C(3,7)(21) (a) (b) (a) (b) Figure 6. The optical bu ering scenario for high quality-of-service (QoS) packets. (a) Code partition Figure 6. The optical buffering scenario for high quality-of-service (QoS) packets. (a) Code partition Figure 6. The optical buffering scenario for high quality-of-service (QoS) packets. (a) Code partition method; (b) encoder setup. method; (b) encoder setup. method; (b) encoder setup. The other code distribution for low-QoS users is depicted in Figure 7a. The code set is divided The other code distribution for low-QoS users is depicted in Figure 7a. The code set is divided The other code distribution for low-QoS users is depicted in Figure 7a. The code set is divided into three subsets, C(1,j), C(2,j), and C(3,j). Each subset has seven CMLS codes. If the codes in a specific into three subsets, C(1,j), C(2,j), and C(3,j). Each subset has seven CMLS codes. If the codes in a specific into three subsets, C(1,j), C(2,j), and C(3,j). Each subset has seven CMLS codes. If the codes in a specific subset are assigned to the queued packets, the incoming packet is encoded with an available code subset are assigned to the queued packets, the incoming packet is encoded with an available code subset are assigned to the queued packets, the incoming packet is encoded with an available code signal with a di erent index j. Figure 7b shows the encoding process based on AWGs for low-QoS signal with a different index j. Figure 7b shows the encoding process based on AWGs for low-QoS signal with a different index j. Figure 7b shows the encoding process based on AWGs for low-QoS users. To distribute the codes in C(1,j), the link to the upper AWG is given while the one to the lower users. To distribute the codes in C(1,j), the link to the upper AWG is given while the one to the lower users. To distribute the codes in C(1,j), the link to the upper AWG is given while the one to the lower AWG is changing. AWG is changing. AWG is changing. C(1,1)(21) C(1,1)(21) C(1,2)(21) C(1,2)(21) 3 x 3 i = 1 3 x 3 i = 1 AW G AW G C(1,7)(21) C(1,7)(21) C(2,1)(21) C(2,1)(21) C(2,2)(21) C(2,2)(21) i = 2 i = 2 7 x 7 7 x 7 C(2,7)(21) C(2,7)(21) AW G AW G C(3,1)(21) C(3,1)(21) C(3,2)(21) C(3,2)(21) i = 3 i = 3 C(3,7)(21) C(3,7)(21) (a) (b) (a) (b) Figure Figure 7. 7. The The optic optical al buffering bu ering scenario scenario for lfor ow-low-QoS QoS packet packets. s. (a) Code (a) part Code itiopartition n method;method; (b) encode (br ) Figure 7. The optical buffering scenario for low-QoS packets. (a) Code partition method; (b) encoder encoder setup. setup. setup. In a bu ering system based on a CMLS, N is the maximum number of available codes. These In a buffering system based on a CMLS, N is the maximum number of available codes. These In a buffering system based on a CMLS, N is the maximum number of available codes. These codes are used for queuing packets when they arrive at the bu er. If the system is at capacity, an codes are used for queuing packets when they arrive at the buffer. If the system is at capacity, an codes are used for queuing packets when they arrive at the buffer. If the system is at capacity, an incoming signal is blocked and dropped. The bu ering procedures can be described as a queue system incoming signal is blocked and dropped. The buffering procedures can be described as a queue incoming signal is blocked and dropped. The buffering procedures can be described as a queue where the AWG encoder is the single server, and the packet flow is the data source. The inter-arrival system where the AWG encoder is the single server, and the packet flow is the data source. The inter- system where the AWG encoder is the single server, and the packet flow is the data source. The inter- time  between the two successive input packets is assumed to be the formula of the exponential arrival time μ between the two successive input packets is assumed to be the formula of the arrival time μ between the two successive input packets is assumed to be the formula of the exponential process. The departure time of a packet leaving the buffer γ, which includes the latencies exponential process. The departure time of a packet leaving the buffer γ, which includes the latencies of finding a free code and optical decoding/encoding, is assumed to be the formula of the Poisson of finding a free code and optical decoding/encoding, is assumed to be the formula of the Poisson process. When a buffer of a unit CMLS subset is considered, it follows the characteristics of an process. When a buffer of a unit CMLS subset is considered, it follows the characteristics of an M/M/1/NS system. Here, NS is defined as the number of CMLSs in a code subset. For the example of M/M/1/NS system. Here, NS is defined as the number of CMLSs in a code subset. For the example of Figures 6 and 7, the values of NS for high- and low-QoS users are respectively 7 and 3. The probability Figures 6 and 7, the values of NS for high- and low-QoS users are respectively 7 and 3. The probability Appl. Sci. 2020, 10, 730 7 of 10 process. The departure time of a packet leaving the bu er , which includes the latencies of finding a free code and optical decoding/encoding, is assumed to be the formula of the Poisson process. When a bu er of a unit CMLS subset is considered, it follows the characteristics of an M/M/1/N system. Here, N is defined as the number of CMLSs in a code subset. For the example of Figures 6 and 7, the values of N for high- and low-QoS users are respectively 7 and 3. The probability density function (PDF) of the number of coded packets in a bu er is treated as the steady-state probability of the used queuing system, which is given as [22]: P (k) = P (4) S 0 where 0  k  N . P denotes the probability of zero packets existing in the bu er, which can be S 0 obtained by using the normalized condition and expressed as P = (5) P k k=0 For a bu er that has been assigned CMLS codes of length N, it is at capacity when all N codes are distributed to the bu ered packets. A newly incoming packet is dropped since the bu ering space is not available. Therefore, the PDP is defined as the probability of N packets existing in the bu er, which is given as: ( ) PDP = [P (N )] (6) S S According to (6), the bu er model can be described as N/N parallel M/M/1/N systems. S S In the proposed optical bu ering process, the CMLS code used for encoding a queuing packet is determined by the following steps. First, the control unit in the bu er selects a code subset with at least one unoccupied code in it. Second, one of the unoccupied codes in the selected code subset is assigned to the packet. If the codes in a code subset are all occupied, this subset is neglected by the control unit during the code-searching process. Therefore, the probability of successfully finding an occupied code for packet encoding in the bu ering process is related to N, N , and N/N . In (5) and S S (6), one could observe that PDP is determined by these three parameters. The relation between the parameters of N, N , and N/N is listed as follows: S S N(Code length or the number of codes in a code set) = N (The number of codes in a code subset) (7) (N/N )(The number of code subsets) Figure 8 shows the PDPs of the two levels of bu ering performance versus activity coecient , where  is defined as /. The figure compares the two scenarios of high- and low-QoS users for di erent CMLS lengths. The parameters for code lengths are listed as follows. For N = 21, N = M M M 3, and N = 7, while for N = 45, N = 3, and N = 15. For a given code length (N = 21), the code 2 1 2 assignment based on the partition of the code space with a larger subset number N/N = 7 improves the performance in terms of PDP, compared with the one with a smaller subset number N/N = 3. Please note that the di erence between the twolevels of PDP becomes significant when the length di erence M M between N and N increases. Furthermore, an increase in  leads to worse PDP performance. This is 1 2 because the number of packets waiting in the input line grows, and the incoming packet number may exceed the bu er capacity. Appl. Sci. 2020, 10, 730 8 of 10 Appl. Sci. 2020, 10, 730 8 of 10 Appl. Sci. 2020, 10, 730 8 of 10 Figure Figure 8. The 8. packet-dr The packet opping -dropping probability probabil (PDP) ity (P of DP) two-level of two-bu lev el ering buffering performance perform versus ance vers activity us act coe ivit  y cient. coefficient. M M The PDP of the bu ering system for N = 3 and N = 7 is plotted versus the CMLS code length N in Figure 9. The activity coecient  in the figure is 3.2. The bu er performance is improved by increasing the code length since more packets can be allocated in the system. When N becomes large, M M the di erence between N and N is also increased, and therefore the gap between the two levels of 1 2 PDPs becomes notable. For the high-QoS users, to reach the lowest PDP, the partition scheme with the Figure 8. The packet-dropping probability (PDP) of two-level buffering performance versus activity maximum subset number should be chosen. coefficient. Figure 9. The PDP of two-level buffering performance versus CMLS code length. To design a buffering scheme that supports more than two classes of optical buffering services, we refer to the results of the numerical simulations in Figure 9, where various PDPs can be obtained by varying the code length N. For a given N, at most two levels of PDPs can be supported. Moreover, there are two sizes of AWGs in the encoder. To generate multiple CMLS code sets with different Figure 9. The PDP of two-level bu ering performance versus CMLS code length. lengths, additFigure ional AWGs 9. The P DP are of two require -levd el buffering to be impl perform emen ance ted vers in th us e CMLS codec co . de Su le ch ngenco th. der design diversifies the levels of PDP performance, but the system complexity is also increased as more optical To design a bu ering scheme that supports more than two classes of optical bu ering services, we To design a buffering scheme that supports more than two classes of optical buffering services, components are included in the buffer structure. refer to the results of the numerical simulations in Figure 9, where various PDPs can be obtained by we refer to the results of the numerical simulations in Figure 9, where various PDPs can be obtained varying the code length N. For a given N, at most two levels of PDPs can be supported. Moreover, there 4. by Co vary nclus ing ions the code length N. For a given N, at most two levels of PDPs can be supported. Moreover, are two sizes of AWGs in the encoder. To generate multiple CMLS code sets with di erent lengths, there are two sizes of AWGs in the encoder. To generate multiple CMLS code sets with different In this paper, we have proposed a new approach to support multi-level buffering services in additional AWGs are required to be implemented in the codec. Such encoder design diversifies the lengths, additional AWGs are required to be implemented in the codec. Such encoder design GMPLS networks based on optical packet encoding. In this scheme, a code sequence known as CMLS levels of PDP performance, but the system complexity is also increased as more optical components diversifies the levels of PDP performance, but the system complexity is also increased as more optical and composed of two extended MLS codes is designed. We have presented a partition mechanism are included in the bu er structure. components are included in the buffer structure. that divides the CMLS code space into multiple subsets, with each of them with an identical code numb 4. Conclusions er. To support the desired QoS, a code distribution for encoding the queued packets and an 4. Conclusions encoder setup based on an AWG corresponding to the code space partition are proposed. The In this paper, we have proposed a new approach to support multi-level bu ering services in In this paper, we have proposed a new approach to support multi-level buffering services in partition scenario with a lower subset number but with a higher number of codes in an individual GMPLS networks based on optical packet encoding. In this scheme, a code sequence known as CMLS GMPLS networks based on optical packet encoding. In this scheme, a code sequence known as CMLS subset is used as an encoding method to achieve packet buffering for high-QoS users. To analyze the and composed of two extended MLS codes is designed. We have presented a partition mechanism that and composed of two extended MLS codes is designed. We have presented a partition mechanism system performance, the traffic behavior at the buffer’s input and output and the PDF of the queued divides the CMLS code space into multiple subsets, with each of them with an identical code number. that divides the CMLS code space into multiple subsets, with each of them with an identical code packet number in the buffer were obtained based on Erlang’s model. The results show that the To support the desired QoS, a code distribution for encoding the queued packets and an encoder setup number. To support the desired QoS, a code distribution for encoding the queued packets and an buffering services for different QoS users can be supported by queuing the packets with multi-level based on an AWG corresponding to the code space partition are proposed. The partition scenario M M encoder setup based on an AWG corresponding to the code space partition are proposed. The PDPs. Furthermore, a larger difference between N and N results in a more significant 1 2 with a lower subset number but with a higher number of codes in an individual subset is used as an partition scenario with a lower subset number but with a higher number of codes in an individual performance gap between the high- and low-QoS users. subset is used as an encoding method to achieve packet buffering for high-QoS users. To analyze the system performance, the traffic behavior at the buffer’s input and output and the PDF of the queued packet number in the buffer were obtained based on Erlang’s model. The results show that the buffering services for different QoS users can be supported by queuing the packets with multi-level M M PDPs. Furthermore, a larger difference between N and N results in a more significant 1 2 performance gap between the high- and low-QoS users. Appl. Sci. 2020, 10, 730 9 of 10 encoding method to achieve packet bu ering for high-QoS users. To analyze the system performance, the trac behavior at the bu er ’s input and output and the PDF of the queued packet number in the bu er were obtained based on Erlang’s model. The results show that the bu ering services for di erent QoS users can be supported by queuing the packets with multi-level PDPs. Furthermore, a M M larger di erence between N and N results in a more significant performance gap between the high- and low-QoS users. So far, we have considered the bu ering performance in terms of PDP. Another general degradation in the system is bit-error rate (BER), which comes from the signals of the coded packets multiplexed in the same fiber. Based on the results in [23], the BER for a general SAC system is negligible (<10 ) when the user number is less than 50. However, when N increases, although one can expect a reduced PDP, the BER becomes notable since the number of overlapping coded packets grows. The combined e ect of PDP and BER and their trade-o relation require further investigation. Author Contributions: K.-S.C. contributed to the conceptualization, methodology, and writing of this paper. W.H. conceived the simulation setup and formal analysis and conducted the investigation. All authors have read and agreed to the published version of the manuscript. Funding: This research was funded by the Department of Education of Guangdong Province, grant number 2018KTSCX322. Conflicts of Interest: The authors declare no conflicts of interest. References 1. Kanj, M.; Rouzic, E.L.; Meuric, J.; Cousin, B.; Amar, D. Optical power control in GMPLS control plane. IEEE/OSA J. Opt. Commun. Netw. 2016, 8, 553–568. [CrossRef] 2. Farghal, A.E.; Shalaby, H.M.H.; Kawasaki, Z. Multirate multiservice all-optical code switched GMPLS core network utilizing multicode variable-weight optical code-division multiplexing. IEEE/OSA J. Opt. Commun. Netw. 2014, 6, 670–683. [CrossRef] 3. Huang, S.; Baba, K.; Murata, M.; Kitayama, K. Architecture design and performance evaluation of multi-granularity optical networks based on optical code division multiplexing. IEEE/OSA J. Opt. Commun. Netw. 2016, 5, 1028–1042. [CrossRef] 4. Segawa, T.; Ibrahim, S.; Nakahara, T.; Muranaka, Y.; Takahashi, R. Low-power optical packet switching for 100-Gb/s burst optical packets with a label processor and 8  8 optical switch. IEEE/OSA J. Lightwave Technol. 2016, 34, 1844–1850. [CrossRef] 5. Zhao, Z.; Wu, B.; Li, B.; Xiao, J.; Fu, S.; Liu, D. Multihop routing enabled packet switching with QoS guarantee in optical clos for data centers. IEEE/OSA J. Opt. Commun. Netw. 2018, 10, 624–632. [CrossRef] 6. Lopez, V.; Hernandez, J.A.; De Dios, O.G.; Palacios, J.F.; Aracil, J. Multilayer trac engineering for IP over WDM networks based on Bayesian decision theory. IEEE/OSA J. Opt. Commun. Netw. 2010, 2, 515–529. [CrossRef] 7. Datta, A. Construction of polynomial-size optical priority queues using linear switches and fiber delay lines. IEEE/ACM Trans. Netw. 2017, 25, 974–987. [CrossRef] 8. Lim, H. Number of tunable wavelength converters and internal wavelengths needed for cost-e ective design of asynchronous optical packet switching system with shared or output fibre delay line bu er. IET Commun. 2013, 7, 1419–1429. [CrossRef] 9. Hirayama, T.; Miyazawa, T.; Furukawa, H.; Harai, H. Optical and electronic combined bu er architecture for optical packet switches. J. Opt. Commun. Netw. 2015, 7, 776–784. [CrossRef] 10. Liu, L.; Zhang, Z.; Yang, Y. In-order packet scheduling in optical switch with wavelength division multiplexing and electronic bu er. IEEE Trans. Commun. 2014, 62, 1983–1994. [CrossRef] 11. Kazemi, R.; Rashidinejad, A.; Nashtaali, D.; Salehi, J.A. Virtual optical bu ers: A novel interpretation of OCDMA in packet switch networks. J. Lightwave Technol. 2012, 30, 2964–2975. [CrossRef] 12. Chen, K.S.; Chen, C.S.; Wu, S.L. Two-code keying and code conversion for optical bu er design in optical packet switching networks. Electronics 2019, 8, 1117. [CrossRef] 13. Cherifi, A.; Jellali, N.; Najjar, M.; Aljunid, S.A.; Bouazza, B.S. Development of a novel two-dimensional SWZCC—Code for spectral/spatial optical CDMA system. Opt. Laser Technol. 2019, 109, 233–240. [CrossRef] Appl. Sci. 2020, 10, 730 10 of 10 14. Najjar, M.; Jellali, N.; Ferchichi, M.; Rezig, H. Spectral/spatial optical CDMA code based on diagonal eigenvalue unity. Opt. Fiber Technol. 2017, 38, 61–69. [CrossRef] 15. Liu, M.; Wang, T.; Tseng, S. Throughput performance analysis of asynchronous optical CDMA networks with channel load sensing protocol. IEEE Photonics J. 2017, 9, 1–13. [CrossRef] 16. Lin, J.Y.; Jhou, J.S.; Wen, J.H. Variable-length code construction for incoherent optical CDMA systems. Opt. Fiber Technol. 2007, 13, 180–190. [CrossRef] 17. Baby, V.; Kwong, W.C.; Chang, C.Y.; Yang, G.C.; Prucnal, P.R. Performance analysis of variable-weight multilength optical codes for wavelength-time O-CDMA multimedia systems. IEEE Trans. Commun. 2007, 55, 1325–1333. [CrossRef] 18. Huang, J.F.; Chen, K.S.; Lin, Y.S.; Li, C.Y. Reconfiguring waveguide-gratings-based M-signature codecs to enhance OCDMA network confidentiality. Opt. Commun. 2014, 313, 223–230. [CrossRef] 19. Meng, S.H.; Chen, K.S.; Huang, J.F.; Yang, C.C. Orthogonal stacked composite M-sequence labels for quick packet routing over optical MPLS network. In Proceedings of the IEEE 28th Canadian Conference on Electrical and Computer Engineering (CCECE), Halifax, NS, Canada, 3–6 May 2015. 20. Beyranvand, H.; Salehi, J.A. Multiservice provisioning and quality of service guarantee in WDM optical code switched GMPLS core networks. J. Lightwave Technol. 2009, 27, 1754–1762. [CrossRef] 21. Beyranvand, H.; Salehi, J.A. All-optical multiservice path switching in optical code switched GMPLS core Networks. J. Lightwave Technol. 2009, 27, 2001–2012. [CrossRef] 22. Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems; Springer: New York, NY, USA, 2006. 23. Yang, C.C. The application of spectral-amplitude-coding optical CDMA in passive optical networks. Opt. Fiber Technol. 2008, 14, 134–142. [CrossRef] © 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).

Journal

Applied SciencesMultidisciplinary Digital Publishing Institute

Published: Jan 21, 2020

There are no references for this article.