Skip to main content

Complimentary code keying of spectral amplitude coding signals in optical buffering with increased capacity


Signal buffering services such as contention resolution and congestion avoidance are essential in optical packet switching networks. In this paper, an optical memory scheme based on spectral amplitude coding (SAC) and complementary code keying (CCK) is proposed to increase the buffer capacity. CCK is applied to packet buffering by selecting an available code set and encoding the payload bits with either an SAC signal or its complementarity. The capacity constraint is effectively released, as the usable codes for queuing packets are twice those for the conventional code-domain buffers. To minimize system costs by reducing the codec number, a shared structure based on an arrayed waveguide grating (AWG), which is capable of processing both the typical and complimentary coded signals simultaneously, is also investigated.


Optical packet switching (OPS) [1, 2] networks show signs of future success in optical communications with high speed and large capacity. However, OPS deployment is currently limited by packet-buffering issues resulting from the lack of optical memory devices. The buffering function is essential to resolve the competence between two or more packets in the same channel for a common route. A similar approach of electrical buffering based on the store-and-forward technique is not compatible with OPS because optical random-access memory cannot be used. Therefore, the networks face difficulty in performing buffering-based services such as contention resolution and congestion avoidance without the aid of optical memory. To reduce the contention effect on packet switching and enhance network performance, several optical buffering schemes have been proposed for OPS by queuing packets in three signal dimensions: time [3, 4], wavelength [5, 6], and code [7, 8].

For optical buffering in the time domain, fiber delay lines (FDLs) [3, 4] have the ability to execute the first-in-first-out algorithm on the packet flows entering the router. Optical packets travel the FDLs for an arranged length for a specific time until the assigned output port is available. The wavelength-domain buffering in OPS is achieved by tunable wavelength convertors [5, 6] that modulate each buffered packet with a specific wavelength signal. Multiple packets can be kept in a common device with collisions by employing the wavelength-division multiplexing (WDM) technique. Using optical codes enables network routers to create buffering scenarios known as code switching for optical packets. Code switching [7, 8] is a process executed by an optical switch that changes the original code of the input packet into a new output code. In the code-domain buffering, each payload bit in the packet is converted to a code sequence before entering a buffer. Moreover, WDM and optical codes can be combined to improve the buffering model by enlarging its capacity.

Optical buffering in the code domain has several advantages, namely, it has a shorter buffered packet stream length and does not require extra optical bandwidth compared with its counterparts in the time- and wavelength domains. However, the greatest capacity of a code-based buffer is determined by the code length and the codec scale. Although launching more available codes is a solution granting increased capacity, a large-scale codec with a higher system cost is required to generate optical codes with a large cardinality. In the author’s previous work, two-code keying [8] was chosen to encode optical packets, where payload bits “1” and “0” were respectively represented by an optical code and its complement. The performance improvement came from the increased signal-to-noise ratio of the packet signals such that more packets could be stored in the buffer for an acceptable bit-error rate.

The optical code-division multiple access (OCDMA) systems based on spectral-amplitude-coding (SAC) have had significant advancement recently. In particular, several code-construction ways aiming to generate optical codes with very low cross-correlations have been proposed to reduce the noise variance at decoders [9, 10]. Users assigned with such codes have improved bit-error rates (BERs) and high data rates. Furthermore, some algebraic methods, such as the ones based on the Pascal triangle matrix [10] and the Jordan block matrix [11], have been used to design the codes with flexible code lengths, code weights, and accommodated user numbers. These codes have more excellent suitability for the networks with various conditions than the conventional codes.

In this paper, complementary code keying (CCK) [12, 13] is introduced for capacity enhancement. Instead of simply employing typical codes, either one of typical or complementary codes can be assigned to a packet for encoding. Due to the increment of the code number in the buffering system, the scale and the number of codecs are also increased, which causes high system complexity. The optical coding technique of spectral amplitude coding (SAC) [14, 15] and the codec design based on arrayed waveguide grating (AWG) [16, 17] are employed to simplify the buffer architecture. Both processes of coding and complementary coding can be performed by a shared encoder. As the implemented codec number is reduced, the system cost can be decreased.

The buffer processing packets is approximated to a queuing model, where independent random variables with an identical distribution are used to model the inter-arrival times of the incoming packet flow. The inter-arrival times follow the exponential distribution, and therefore the number of arriving packets in the time duration from 0 to t can be treated as a Poisson stream characterized by the mean and variance that are both equal λ. The processing times for each packet performed by the buffer are also independent and identically distributed and have the memoryless property. Their density is an exponential function with the mean 1/μ and the variance 1/μ2. Based on the analysis results, the capacity constraint for the proposed buffer is effectively released, and the packet dropping probability (PDP) is reduced, as the number of available codes for CCK is twice that for previous code-based buffers.

System design

In this section, a code-domain buffer combining CCK and SAC signals is described. By converting packets into coded and complementary coded signals, the buffer capacity is increased. For the conventional memory scheme based on optical codes with amplitude-shift keying (ASK), at most N packets can be queued simultaneously in the same space, where N is the code length or code cardinality. Packet dropping occurs when the number of arriving packets exceeds the buffer capacity, as shown in Fig. 1a. If CCK is adopted, additional N packets can be conveyed to the complementary coded signals. Then, the buffer can store up to 2 N packets during the buffering procedure, as shown in Fig. 2b. Throughout this manuscript, the code sequences selected for encoding packets are known as Walsh-Hadamard codes and their complementarities [18, 19], which are respectively denoted as Hk and Hk* in Fig. 1, where 1kN. Although stored in a common channel at the same time, each encoded packet is identifiable from the multiplexed signals, as the multiple-access interference among them can be canceled by the following algorithm [19]:

$$ {\mathbf{C}}_{\boldsymbol{k}}\odot {\mathbf{H}}_{\boldsymbol{k}}-{\mathbf{C}}_{\boldsymbol{k}}\odot {\mathbf{H}}_{\boldsymbol{k}}^{\ast}=\left\{\begin{array}{c}N/2,\kern1em {\mathbf{C}}_{\boldsymbol{k}}={\mathbf{H}}_{\boldsymbol{k}},k=j\\ {}-N/2,{\mathbf{C}}_{\boldsymbol{k}}={\mathbf{H}}_{\boldsymbol{k}}^{\ast},k=j\\ {}0,\kern4.75em \mathrm{otherwise}\end{array}\right. $$

where denotes the dot-product operator.

Fig. 1
figure 1

Optical code assignment for packet buffering: a amplitude-shift keying (ASK) buffer and b complementary code keying (CCK) buffer

Fig. 2
figure 2

Process of SAC encoding with Hadamard code H1 = (1010)

The other technique employed in the packet buffering in this paper is SAC, which was initially proposed in optical access networks to achieve asynchronous and simultaneous transmissions without signal interferences [14, 15]. The author introduces SAC as a possible method to cancel the interference resulting from overlapping packets in the buffer. In SAC, the code sequence assigned to each user is a binary sequence with elements {0, 1} and is encoded in the spectrum of an optical carrier. Each chip “1” in the sequence is represented by a specific wavelength signal, while each chip “0” is represented by a null wavelength. Figure 2 shows the optical signal in the time-wavelength dimension before and after the SAC encoding is performed. For Hadamard code H1 = (1100) with N = 4, the SAC representation consists of two wavelengths λ1 and λ3, which map the first and the second elements of chip “1” in H1.

An optical buffering scheme based on CCK with a capacity of 2 K is shown in Fig. 3. When electrical payload bits arrive at the buffer input, the buffer manager searches all available code sets that are not occupied by other buffered packets and selects one of them for packet encoding. Once the code set is determined, a link configuration in the first optical cross connect is established to forward the optical carrier generated from a broadband light source to the corresponding encoder. Two optical packets can be structured simultaneously by respectively modulating their payload bits with the typical and complementary signals of the selected code set.

Fig. 3
figure 3

Optical encoding for packet buffering in the code domain on CCK and Hadamard codes. EOM: electrical-to-optical modulator; OXC: optical cross connect

The AWG properties of cyclic-shift and free spectral range are employed to generate the SAC signals of the Hadamard codes. Code sequences with a length of 4 are taken as the example in Fig. 4. Optical spectra consisting of eight wavelengths, λ1 to λ8, are divided into two parts, one for generating H1 and the other for H1*. The wavelength distribution of H1 = (1100) is (λ1λ200), and that of H1* = (0011) is (00λ7λ8). The reason that H1 and H1* are encoded in different optical bands is that the decoder is unable to identify the buffered packets if these two codes are mixed in the same channel. Therefore, the number of usable codes is increased at the expense of the increased signal bandwidth. Based on the encoder design, the proposed system is cost-effective because it is capable of generating a large number of coded signals by using a relatively small number of codecs. Generally, for a code-domain buffer with capacity K, at least K pairs of codecs should be implemented, with each of them generating/detecting a specific code Hk, where 1kK. In CCK, the maximum number of coded packets in the buffer increases from K to 2 K. If a general coding structure is used, up to 2 K pairs of codecs are required. In the proposed encoder based on the AWG, the signals of both Hk and Hk* can be simultaneously created; thus, the implemented codec number is reduced from 2 K to K, which decreases the system cost.

Fig. 4
figure 4

AWG-based encoder of Hadamard codes with a length of 4

Except for spectral-amplitude-coding (SAC), one of the most common coding methods in optical networks is time spreading (TS) [20, 21]. In an optical coding scheme based on TS, a bit signal with duration Tb is divided into N chips with duration Tc = Tb/N, where N is the code length. As Tc < Tb/N for general TS cases, the decoder must have the ability to detect the short pulses, which requires high-speed components and induces an increased receiver bandwidth. For a given Tc, using a long-length code extends the bit duration, causing a lower throughput. Furthermore, due to the time-domain coding, strict chip synchronization between the encoder and decoder is required. On the other hand, codes are encoded on the optical spectrum in SAC, so Tc is constantly the same as Tb and does not increase with the code length. Therefore, for a SAC codec, one could release its requirement of the processing speed so that the system complexity is effectively reduced.

System modeling

In this section, the author models the processes of code-domain buffering as a queuing system, which was employed to model the code-domain packet switches in previous research [20, 21]. The buffer, incoming packet sequence, and optical buffering are considered as the service center, population of customers, and provided service, respectively. The arrival times between packets are a collection of independent and identically distributed random variables of exponential distribution with mean λ. The service time, including the processing delay of the decoding, remodulation, switching, and encoding in the buffer, is also exponentially distributed with mean μ. The arbitrariness of service times comes from the variable lengths of packets. For the server number, despite multiple decoders in the buffer, only the one matching the code carried by the incoming packet has an output signal to activate the optical modulator. Then, the optical carrier is converted to an optical code by the corresponding encoder. Over a small time interval, only one encoder is operated, which implies a single-server scenario. The service discipline of first-in-first-out is assumed, as the buffer processes the incoming packets in order. Based on the above assumptions, the buffering scenario can be described as the Kendall notation of the M/M/1/K model [22], where K is the code number assigned to a buffer.

The properties of the M/M/1/K model are birth–death processes, where only one or none of the events occurs at a time. The events can be a packet arriving at the buffer input or a coded packet leaving from the output. From [22], the steady-state probabilities of k packets in the buffer P(k) are given by:

$$ P(k)=\left\{\begin{array}{c}\frac{\rho^k\left(1-\rho \right)}{1-{\rho}^{K+1}},\rho \ne 1\\ {}\frac{1}{K+1},\kern2em \rho =1\end{array}\right. $$

where ρ is the utilization ratio, defined as λ/μ. The author employs steady-state probabilities as a performance measure of the buffering efficiency. When a new packet gets to the buffer input, several coded packets already exist. One of the codes unused by the queued packets is selected for queuing the received one. If all codes have been distributed, the system fails to perform code conversion, and the packet is abandoned. In this case, the buffer capacity is full, and no available code can be used for buffering. The PDP is defined as the probability that K packets are stored in the buffer, which is given by P(K).

In the CCK scenario, the buffer first reads the code information, and if all Hadamard codes are completely used, the arriving packets are transferred to the encoders that create the complementary signals. If both types of codes are fully assigned to packets, packet dropping is inevitable because the buffer space is not available. Given the same assumptions of the previous modeling method, the only difference in CCK is that when an encoder is activated, it is capable of processing two classes of packets at the same time. This scheme enhances the buffering performance, as the buffer has increased the capacity from K to 2 K. Therefore, it is reasonable to treat the buffer as the M/M/2/2 K model [22]. However, as the bandwidth of CCK packets is half that of the ASK packets, the supporting signal rate is also halved. The utilization ratio is increased to 2ρ because for the same amount of payload bits, the duration of CCK packets is twice that of ASK. The steady-state probability of k packets occupied in the buffer is given by:

$$ {P}^{\ast }(k)=2{\rho}^k{P}^{\ast }(0) $$

where P*(0) is given as:

$$ {P}^{\ast }(0)={\left[1+2\rho \left(1+\frac{1-{\rho}^{2K-1}}{1-\rho}\right)\right]}^{-1} $$

Similarly, as at most 2 K packets can be stored in the buffer, the PDP for CCK is given by P*(2 K).

Except for the PDP, the author uses the mean number in a steady-state queue as another performance measure to more sufficiently describe the merits of the proposed buffer scheme. Q and Q*, respectively representing the average numbers of packets waiting in the queue before entering the ASK and CCK buffers, are given as [22]:

$$ Q=\left\{\begin{array}{c}\frac{\rho \left[K{\rho}^{K+1}-\left(K+1\right){\rho}^K+1\right]}{\left(1-{\rho}^{K+1}\right)\left(1-\rho \right)}-\left[1-P(0)\right],\rho \ne 1\\ {}\frac{K}{2}-\left[1-P(0)\right],\kern9.5em \rho =1\end{array}\right. $$
$$ {Q}^{\ast }=\frac{2{\rho}^3}{{\left(1-\rho \right)}^2}\left\{{\rho}^{2K-2}\left[2\left(\rho -1\right)\left(K-1\right)-1\right]+1\right\}{P}^{\ast }(0),\rho \ne 1 $$

At the end of the buffering process, multiple coded packets are multiplexed and then sent to the common buffer output, as shown in Fig. 3 in the manuscript. The signal quality degrades when the photo-detectors in the decoder perform the optical-to-electrical conversion on the coded packets. Due to the presented noise sources such as phase-intensity induced noise (PIIN) and thermal noise, the decoded photo-current may not correctly reflect the power variations of the original optical signal. Such errors are described by a parameter known as code-error probability, which is expressed as follows [14]:

$$ {P}_{\mathrm{C}}(K)=\frac{1}{2}\mathit{\operatorname{erfc}}\left\{\frac{I}{2\sqrt{\left[{\sigma}_{\mathrm{PIIN}}^2(K)+{\sigma}_{\mathrm{TH}}^2\right]}}\right\} $$

where I is the photo-current at the decoder’s output, \( {\sigma}_{\mathrm{PIIN}}^2(i) \) is the variance of PIIN, and \( {\sigma}_{\mathrm{TH}}^2 \) is the variance of thermal noise. The terms of current and noises are respectively expressed as follows:

$$ I=\left\{\begin{array}{c} RP/2,\mathrm{for}\ \mathrm{ASK}\\ {} RP/4,\mathrm{for}\ \mathrm{CCK}\end{array}\right. $$
$$ {\sigma}_{\mathrm{PIIN}}^2(K)=\left\{\begin{array}{c}{R}^2{P}^2 BK\left(K+1\right)/4,\kern4.5em \mathrm{for}\ \mathrm{ASK}\\ {}{R}^2{P}^2B\left\lfloor K/2\right\rfloor \left(\left\lfloor K/2\right\rfloor +1\right)/8,\mathrm{for}\ \mathrm{CCK}\end{array}\right. $$
$$ {\sigma}_{\mathrm{TH}}^2={BS}_{\mathrm{TH}} $$

, where P is the received optical power, B is the electrical bandwidth of the receiver, v is the bandwidth of the light source, R is the responsiveness of the photo-detector, and STH is the power spectral density (PSD) of the thermal noise. The symbol of · denotes the floor function. For ASK, the encoding is executed on the entire optical bandwidth, while for CCK, the bandwidth is equally divided into two channels, one for the typical encoding and the other for the complementary coding. Two different coding methods result in different mathematical expressions in photo-current and noise sources.

Results and discussions

Figure 5 shows the PDP as a function of buffer capacity K (the number of optical codes assigned to the buffer). The utilization ratio ρ is set at 0.25, 0.4, and 0.55. When K is relatively small, the number of packet droppings for CCK is similar to that of the conventional ASK scheme. As K increases, the proposed buffer can guarantee a lower PDP because each encoder generates an extra coded signal that can be employed for packet buffering. The ASK buffer cannot reduce packet dropping efficiently by increasing K because the complementary coded signals are not used. In Fig. 6, the PDP versus the utilization ratio for the two buffering schemes is shown. As one would anticipate, given a fixed ρ, CCK achieves a lower PDP than that of ASK. For a higher utilization ratio, the PDPs for both buffers become large, as the buffer is more likely to be in full capacity and it is not possible to store any new incoming packets.

Fig. 5
figure 5

The packet-dropping probability (PDP) as a function of the assigned code number K in the CCK and the ASK buffer

Fig. 6
figure 6

The PDP versus utilization ratio ρ for K = 7

In Fig. 7, the average packet numbers in the queue at the inputs of the conventional ASK and CCK buffers are analyzed under different buffer capacities. The increase in K induces an increase in the queue length, as more packets can wait to be buffered in the device before they are possibly dropped due to the larger capacity. The CCK buffer reduces the number of packets waiting in line because each packet has a higher chance of obtaining a free space as soon as it reaches the buffer. In Fig. 8, one can observe the number of packets in queue versus different utilization ratios. This figure shows that Q and Q* increase when ρ increases. The high-intensity traffic has a greater influence on CCK than on ASK because the buffer is required to process packets with a longer length. Therefore, when ρ is relatively large, Q* is expected to exceed Q.

Fig. 7
figure 7

The average packet number in queue as a function of the assigned code number K in the CCK and the ASK buffer for ρ = 0.4

Fig. 8
figure 8

The average packet number in queue versus the utilization ratio ρ for K = 7

Figure 9 shows the code-error probability versus the received optical power P for K = 8. Compared to the ASK-based buffer, the CCK-based one has improved performance in terms of PC(K). A large P indicates a large photo-current and PIIN variance. CCK suppresses noise increment more significantly than ACK does when P increases. The system parameters used in the numerical analysis and following software simulations are listed in Table 1.

Fig. 9
figure 9

Code-error probability versus the received optical power P for K = 8

Table 1 System parameters used in the calculations and simulations

Figures 10 and 11 show the buffered packet signals coded with H1 and H1*, respectively. Each figure includes the power spectral density, the time waveform, the coded packet, and the decoded electrical payload. The wavelength distribution of H1, (λ1λ200), includes two optical pulses centered at 193.1 and 193.2 THz, as shown in Fig. 10a. Figure 10b shows the optical payload sequence, which has a similar amplitude to that of the decoded electrical signal in Fig. 10c. Figure 11a depicts the PSD of the buffered packet coded with H1*, where two pules at 193.7 and 193.8 THz are employed to represent the wavelength distribution of (00λ7λ8). Note that when a complementary coded packet is decoded, the result is the inverse number of the original optical payload, based on eq. (1). Therefore, an additional logic operation of negation is required to recover the original number of payload bits, as shown in Figs. 11b and 11c. The simulations were conducted by using Optisystem 7.0. The light source power is 10 dBm. Each wavelength is filtered out by an optical second-order Bessel filter with a bandwidth of 100 GHz. The electrical signal shown at the photodetector output is passed to a low-pass Bessel filter with a cut-off frequency of 130 MHz and an order of 4 to obtain the final result of the decoded payload sequence. Other parameters are demonstrated in Table 1.

Fig. 10
figure 10

Optical packet signals encoded with H1: a power spectral density; b time waveform; and c decoded payload sequence

Fig. 11
figure 11

Optical packet signals encoded with H1*: a power spectral density; b time waveform; and c decoded payload sequence

When a packet encoded with multiple wavelengths travels through a fiber channel, nonlinear effects lead to crosstalk between code chips. Two of the most dominant effects that impair the quality of SAC signals are self-phase modulation (SPM) and cross-phase modulation (XPM). Figure 12a-c show the optical spectrum of H1* for the transmission distances of 0, 40, and 80 km, respectively. To clearly demonstrate the spectrum distortions caused by SPM and XPM, linear effects such as dispersion and attenuation are neglected in the simulation. One could observe that two peaks corresponding to chips “1” gradually become flat as fiber length increases, while the power levels for chips “0” are raised by the leaked signals from chips “1”. As the chip distribution for a SAC signal is varied, the multiple-access interference could not be completely mitigated in the receiver. The quantification of nonlinear effects on decoding performance requires further investigations.

Fig. 12
figure 12

Power spectral density of H1* after traveling the fiber channel of (a)0 km (b)40 km (c)80 km


An optical buffering scheme of queuing packets in the code domain was proposed in this paper. The buffer capacity was increased by using the SAC signals and CCK for packet encoding. The buffering scenario was modeled as queuing systems to drive the PDP performance measure. The proposed CCK buffer could lead to PDP reduction, as the number of available codes for queuing packets is twice that of the previous ASK buffers. For a cost-effective buffer architecture, the encoders of a specific code and its complement were integrated into a shared device based on the AWG to reduce the required codec number in the proposed system.

Availability of data and materials

The datasets used and/or analyzed during the current study are available from the corresponding author on reasonable request.



Arrayed Waveguide Grating


Amplitude-Shift Keying


Complementary Code Keying


Fiber Delay Line


Optical Packet Switching


Packet Dropping Probability


Spectral Amplitude Coding


Wavelength-Division Multiplexing


  1. 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. J. Lightwave Technol. 34, 1844–1850 (2016)

    Article  ADS  Google Scholar 

  2. 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. 10, 624–632 (2018)

    Article  Google Scholar 

  3. Datta, A.: Construction of polynomial-size optical priority queues using linear switches and fiber delay lines. IEEE/ACM Trans Netw. 25, 974–987 (2017)

    Article  Google Scholar 

  4. Lim, H.: Number of tunable wavelength converters and internal wavelengths needed for cost-effective design of asynchronous optical packet switching system with shared or output fibre delay line buffer. IET Commun. 7, 1419–1429 (2013)

    Article  Google Scholar 

  5. Liu, W., et al.: A wavelength tunable optical buffer based on self-pulsation in an active microring resonator. J. Lightwave Technol. 34, 3466–3472 (2016)

    Article  ADS  Google Scholar 

  6. Hirayama, T., Miyazawa, T., Furukawa, H., Harai, H.: Optical and electronic combined buffer architecture for optical packet switches. J Opt Commun Netw. 7, 776–784 (2015)

    Article  Google Scholar 

  7. Kazemi, R., Rashidinejad, A., Nashtaali, D., Salehi, J.A.: Virtual optical buffers: a novel interpretation of OCDMA in packet switch networks. J. Lightwave Technol. 30, 2964–2975 (2012)

    Article  ADS  Google Scholar 

  8. Chen, K.S., Chen, C.S., Wu, S.L.: Two-code keying and code conversion for optical buffer design in optical packet switching networks. Electronics. 8, 1117 (2019)

    Article  Google Scholar 

  9. Nisar, K.S., Sarangal, H., Thapar, S.S.: Performance evaluation of newly constructed NZCC for SAC-OCDMA using direct detection technique. Photon Netw. Commun. 37, 75–82 (2019)

    Article  Google Scholar 

  10. Nisar, K.S., Djebbari, A., Kandouci, C.: Development and performance analysis zero cross correlation code using a type of Pascal’s triangle matrix for spectral amplitude coding optical code division multiple access networks. Optik. 159, 14–20 (2018)

    Article  ADS  Google Scholar 

  11. Ahmed, H.Y., Nisar, K.S.: Diagonal eigenvalue unity (DEU) code for spectral amplitude coding-optical code division multiple access. Opt. Fiber Technol. 19, 335–347 (2013)

    Article  ADS  Google Scholar 

  12. Yang, C.C.: Code space enlargement for hybrid fiber radio and baseband OCDMA PONs. J. Lightwave Technol. 29, 1394–1400 (2011)

    Article  ADS  Google Scholar 

  13. Yang, C.C., Huang, J.F., Chang, H.H., Chen, K.S.: Radio transmissions over residue-stuffed-QC-coded optical CDMA network. IEEE Commun. Lett. 18, 329–331 (2013)

    Article  Google Scholar 

  14. Chen, K.S., Yang, C.C., Huang, J.F.: Using stuffed quadratic congruence codes for SAC labels in optical packet switching network. IEEE Commun. Lett. 19, 1093–1096 (2015)

    Article  Google Scholar 

  15. Noshad, M., Jamshidi, K.: Bounds for the BER of codes with fixed cross correlation in SAC-OCDMA systems. J. Lightwave Technol. 30, 1944–1950 (2011)

    Article  ADS  Google Scholar 

  16. Yang, C.C.: Hybrid wavelength-division-multiplexing/spectral-amplitude-coding optical CDMA system. IEEE Photon. Technol. Lett. 17, 1343–1345 (2005)

    Article  ADS  Google Scholar 

  17. Yang, C.C., Huang, J.F., Tseng, S.P.: Optical CDMA network codecs structured with M-sequence codes over waveguide-grating routers. IEEE Photon. Technol. Lett. 16, 641–643 (2004)

    Article  ADS  Google Scholar 

  18. Huang, J.F., Yang, C.C., Tseng, S.P.: Complementary Walsh–Hadamard coded optical CDMA coder decoders structured over arrayed-waveguide grating routers. Opt. Commun. 229, 241–248 (2014)

    Article  ADS  Google Scholar 

  19. Wei, Z., Shalaby, H., Ghafouri-Shiraz, H.: Modified quadratic congruence codes for fiber Bragg-grating based spectral-amplitude-coding optical CDMA systems. J. Lightwave Technol. 19, 1274–1281 (2001)

    Article  ADS  Google Scholar 

  20. Beyranvand, H., Salehi, J.A.: All-optical multiservice path switching in optical code switched GMPLS core networks. I J. Lightwave Technol. 27, 2001–2012 (2009)

    Article  ADS  Google Scholar 

  21. Beyranvand, H., Salehi, J.A.: Multiservice provisioning and quality of service guarantee in WDM optical code switched GMPLS core networks. J. Lightwave Technol. 27, 1754–1762 (2009)

    Article  ADS  Google Scholar 

  22. Cassandras, C.G., Lafortune, S.: Introduction to Discrete Event Systems. Springer, New York (2006)

    MATH  Google Scholar 

Download references


Not applicable.


This work is funded by the Department of Education of Guangdong Province, Guangzhou, under grant no. 2018 K TSCX322.

Author information

Authors and Affiliations



K.S. Chen contributed to the conceptualization, methodology, and writing of this paper. W. Hong conceived the simulation setup and formal analysis and conducted the investigation. The author(s) read and approved the final manuscript.

Corresponding author

Correspondence to Wien Hong.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Chen, KS., Hong, W. Complimentary code keying of spectral amplitude coding signals in optical buffering with increased capacity. J. Eur. Opt. Soc.-Rapid Publ. 16, 13 (2020).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: