Design of strict variable-weight optical orthogonal codes for differentiated quality of service in optical CDMA networks

Design of strict variable-weight optical orthogonal codes for differentiated quality of service in optical CDMA networks

Computer Networks 52 (2008) 2077–2086 Contents lists available at ScienceDirect Computer Networks journal homepage: www.elsevier.com/locate/comnet ...

306KB Sizes 0 Downloads 60 Views

Computer Networks 52 (2008) 2077–2086

Contents lists available at ScienceDirect

Computer Networks journal homepage: www.elsevier.com/locate/comnet

Design of strict variable-weight optical orthogonal codes for differentiated quality of service in optical CDMA networks Nasaruddin *, Tetsuo Tsujioka Graduate School of Engineering, Osaka City University, 3-3-138, Sugimoto, Sumiyoshi-ku, Osaka 558-8585, Japan

a r t i c l e

i n f o

Article history: Received 31 May 2007 Received in revised form 4 December 2007 Accepted 6 February 2008 Available online 13 March 2008

Keywords: Optical orthogonal codes (OOCs) Variable-weight Differentiated quality of service (QoS) Optical CDMA (OCDMA) network

a b s t r a c t Variable-weight optical orthogonal codes (VW-OOCs) are one of the alternative designs for providing differentiated quality of service (QoS) at the physical level in optical CDMA (OCDMA) systems. In this paper, we address two novel designs for strict VW-OOCs which can guarantee the code correlation value of one. The proposed strict VW-OOCs enable many types of data transmission to be supported over OCDMA networks. Two algorithms for new codes are presented, where a number of codewords and a number of different code weights can be selected. The designs of strict VW-OOCs with several different code weights are discussed. An evaluation method for the new codes is presented; this considers intervals used for all codewords in each code set and offers a comparison with those of conventional codes. The correlation constraints of the proposed codes, based on the used intervals, are more strict than for some conventional codes. In addition, the bit error probability performance of the proposed codes in an OCDMA network with a triplet-service is evaluated analytically. Results show that the proposed codes can allow the differentiated QoS to support multi-service in OCDMA networks. Ó 2008 Elsevier B.V. All rights reserved.

1. Introduction Recently, there has been renewed interest in the optical code division multiple access (OCDMA) system due to its potential for simplicity in all-optical implementation, privacy and security in transmission, asynchronous access, and ability to support multimedia services [1]. The OCDMA system is very suitable for access networks and possibly metropolitan area networks (MANs), because it is easy to assign channels in the system. Typically, traffic in access networks and MANs is characterized by its bursty nature. Such networks should be able to accommodate growing numbers of users and to support various types of services including Internet telephony, real-time image sharing, data transfer, video and so on. They also should provide differentiated quality of service (QoS) for their services; this

* Corresponding author. Tel.: +81 666052192; fax: +81 666902746. E-mail address: [email protected] (Nasaruddin). 1389-1286/$ - see front matter Ó 2008 Elsevier B.V. All rights reserved. doi:10.1016/j.comnet.2008.02.014

can be achieved by making a distinction in bit error probability and/or data rate [1,5–11]. The OCDMA system employs different optical codewords with low crosscorrelation as destination addresses, so that it permits a multi-user to simultaneously access a common channel with no delay. In most incoherent OCDMA systems, only unipolar (0, 1) codes can be used. Therefore, a special class of unipolar codes, called optical orthogonal codes (OOCs), has been considered mainly as optical signature codes due to their low correlation value. However, most conventional OOCs were considered with respect to identical code length and weight to satisfy code correlation properties; that is to guarantee a certain number of active equal data rates and equal error performance among users [2–4]. When these OOCs are used for multi-service applications, their correlation properties can be changed. To meet multi-service requirements, therefore, variable-weight OOCs have been studied recently. A variable-weight OOC (VWOOC) belongs to a class of OOCs where all codewords are the same code length but may have different code weights. A main purpose of using variable-weight is that the code

2078

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

weight has a direct effect on the performance of an OCDMA system. A codeword with a larger weight is less sensitive to interference than that with a smaller code weight. In previous works, VW-OOCs based on various combinatorial techniques were proposed in [8,9] where the codes are available only for two different weights, which are able to support only two different services. In another study [10], multiweight OOCs were proposed which relaxed the number of weights in the codes for synchronous and asynchronous applications. However, the cross-correlation (kc ) of the codes is two, which can degrade system performance. The newest multi-weight single-length OOCs (MWSL-OOCs) were studied in [11] with strict correlation property or ka ¼ kc ¼ k ¼ 1 but they were strict only for the codewords with the same code weight, where ka and k are auto-correlation and maximum correlation value, respectively. However, when several different code weights in the codes coexist to support multi-service in the network, their correlation value is violated; this can cause high multiple access interference (MAI). Therefore, more strict and flexible VW-OOCs designs are required for differentiated QoS in OCDMA networks. In this paper, we propose two novel designs for strict VW-OOCs. The first design uses the distinct sets approach [6,7] for obtaining strict VW-OOCs. The second design is based on the random method where the codes are obtained by a computer search from randomly generated code sets. It therefore has reconfigurability of codes, an aspect that can be used to enhance security [12]. Furthermore, the number of codewords and the number of code weights for both methods can be selected or input as parameters to the designed algorithms. This flexibility is desirable as an easy way to plan the network system in terms of the multiple needs of users and types of services. A code analysis for obtaining the maximum correlation value of codes is also suggested. The correlation value of the proposed codes is bounded by one, and more strict than those of some conventional codes [9–11]. Moreover, bit error probability of the proposed codes is evaluated analytically. The results show that users with larger code weight perform better than those with smaller code weight. This is an alternative method for providing differentiated QoS in OCDMA networks. The rest of the paper is organized as follows. Section 2 provides a system model and definition as well as code property. Two novel algorithms, a code evaluation method and codes comparison are presented in Section 3. In Section 4, the bit error probability performance of the proposed codes and numerical results are evaluated and discussed. Finally, we conclude with a brief summary of results. 2. Preliminaries 2.1. System model Fig. 1 shows a typical optical CDMA network. There are M users in the network where any pair of transmitter and receiver wants to send data through a star coupler to share a channel using a multi-access technique. Every user is assigned with a (0, 1) codeword from a strict VW-OOC. At the

Transmitter 1

Data source

LD

Receiver 1

OM Encoder

Transmitter 2

. . .

PD Decoder

Star Coupler

Transmitter M LD: Laser Diode

Data Recovery

Receiver 2

. . . Receiver M

OM: Optical Modulator

PD: Photo Diode

Fig. 1. A typical optical CDMA network.

transmitter end, the laser source produces very short optical pulses which are encoded by using an optical encoder. The number of encoder taps determines the code address and the code weight. The data at active transmitters using an ON–OFF keying (OOK) modulation are encoded with the desired codeword. After the encoding and modulating processes, the active transmitters superimpose their transmissions over a common channel and are then distributed to each receiver. At the receiver end, the decoder is matched to the desired code address with optical delays which are equal to the complements of the delays at the encoder. If any pair of transmitter and receiver codeword match exactly, the output of the correlator is an auto-correlation peak which recognizes that the transmitter has transmitted a ‘‘1” data bit. Otherwise, the correlator output is the cross-correlation between other codeword users. The output of the photo detector is fed to a threshold detector for data recovery. Such a network should be able to support multi-service applications with different performance levels and varied QoS. By employing VW-OOCs in the network, such requirements can be met. 2.2. Definition and code property Definition 1. A VW-OOC, C, is a collection of binary (0, 1) sequences with the same code length and different code weights, generally denoted by ðn; W; k; Q Þ where n, W, k, and Q are the code length, a set of code weights W ¼ fw1 ; w2 ; . . . ; wL g, a maximum value of auto- and cross-correlation, and a set of fraction of codewords Q ¼ fq1 ; q2 ; . . . ; qL g, respectively, where L is the number of different weights in a code set. The (0, 1) sequences of a VW-OOC are called its codewords. The total number of ‘‘1s” in each codeword defines the code weight wl , where wl is lth code weight and l ¼ 1; 2; . . . ; L. A VW-OOC can also be viewed as a family of wl -set of integer modulo n, in which each wl -set corresponds to a codeword and the integers within each wl -set specify the ‘‘1s” positions in the codeword. The cardinality of a VW-OOC, denoted by jCj, is the number of codewords in a code set. In this paper, we consider a VW-OOC with a maximum correlation value of ka ¼ kc ¼ k ¼ 1, and therefore classified as a strict VW-OOC. This is the case with the smallest cor-

2079

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

relation value in an incoherent OCDMA system. A strict VW-OOC must satisfy the following three properties:

intervals by a code set in C. The following conditions are sufficient to ensure that a code is a strict VW-OOC.

i. Weight distribution: Every n-tuple in C has code weight wl contained in the set W. ii. Auto-correlation: For any codeword x 2 C and any integer s 2 f1; 2; . . . ; n  1g, the auto-correlation is bounded by

 The intervals used by a sub code set C wl , Dwl with elements of f1; 2; . . . ; n  1g, must be distinct and formally, D1;wl \    \ Dm;wl \    \ DjC wl j;wl ¼ £, where Dm;wl is intevals used by mth codeword in the C wl .  All intervals used by the code set C, D ¼ fDw1 ;    ; Dwl ; . . . ; DwL g and D with elements of f1; 2;    ; n  1g, must be distinct and formally, Dw1 \    \ Dwl \    \ DwL ¼ ; such that wl 6¼ wl0 .

Rxx ¼

n1 X

xt xðtþsÞmodn 6 ka ;

ð1Þ

t¼0

where x ¼ ðx0 ; x1 ; . . . ; xn1 Þ and xt 2 f0; 1g for t ¼ 0; 1; . . . ; n  1. iii. Cross-correlation: For any two distinct codewords x; y 2 C such that x 6¼ y and any integer s 2 f0; 1; 2; . . . ; n  1g, the cross-correlation is bounded by Rxy ¼

n1 X

xt yðtþsÞmodn 6 kc ;

ð2Þ

t¼0

where y ¼ ðy0 ; y1 ; . . . ; yn1 Þ t ¼ 0; 1; . . . ; n  1.

and

yt 2 f0; 1g

for

The nonshifted auto-correlation value in (1) should be made as large as possible, and is equal to the value of the code weight, to ensure that the received signal will be stronger than any background noise in the system. On the other hand, for shifted auto-correlation, the value should be made as small as possible and is set to one in our codes. This is to ensure that the output of the correlator can be operated for fully asynchronous access. The crosscorrelation in (2) is also set to one, so that each codeword is easily distinguished from every other code address. Hence, the level of MAI will be quite insignificant in the system. To satisfy (1) and (2) in a strict VW-OOC, there is no repeated interval between two ‘‘1s” within a codeword and among codewords. Let x be a codeword of C with code weight of wl where x consists of xj0 ¼ xj1 ¼    ¼ xjw 1 ¼ 1, l then the set of intervals between two ‘‘1s” positions associated with x is denoted by Dx;wl ¼ fd0 ; d1 ; . . . ; dwl 1 g and defined as ( for i ¼ 0; 1; . . . ; wl  2 jiþ1  ji di ¼ ð3Þ n þ j0  jwl 1 ; for i ¼ wl  1; where wl is lth code weight. Now, let Rx;wl ¼ ½r x ði; jÞ denote the ðwl  1Þ  wl array of integers of which the ði; jÞth interval is given by r x ði; jÞ ¼

i X

dðjþkÞmodwl ;

ð4Þ

k¼0

where i ¼ 0; 1; . . . ; wl  2 and j ¼ 0; 1; . . . ; wl  1. To ensure that a code is a strict VW-OOC, the used intervals in a code set have to comply with the theorem stated below. Theorem. Let C ¼ fC w1 ; . . . ; C wl ; . . . ; C wL g be a code set of a strict VW-OOC of size jCj, where C wl ¼ fc1;wl ; . . . ; cm;wl ; . . . ; cjC w j;wl g is a sub code set with code weight wl and cm;wl is mth l codeword, for l ¼ 1; . . . ; L. Suppose D is a collection used

The above theorem can be proved by analyzing all used intervals in the code set of a strict VW-OOC using (3) and (4). If there is no repeated used interval among codewords with the same code weight of wl , the first condition is satisfied. The second condition requires that the used intervals among codewords with different code weights, wl 6¼ w0l , are not repeated. Therefore, a strict VW-OOC is obtained. A generalization of an upper bound for an ðn; W; k; Q Þ VW-OOC with the case of ka ¼ kc ¼ k is modified from [8] as jCj 6

ðn  1Þðn  2Þ    ðn  kÞ L P

:

ð5Þ

ql wl ðwl  1Þðwl  2Þ    ðwl  kÞ

l¼1

By substituting k ¼ 1 into (5), the upper bound on the number of codewords in the proposed strict VW-OOC, C, can be obtained as jCj 6 PL

ðn  1Þ

l¼1 ql wl ðwl

 1Þ

;

ð6Þ

where ql is the fraction of codewords with weight wl . A code which satisfies (6) with equality is said to be an optimal strict VW-OOC, which yields a maximum system capacity. By a simple manipulation of (6), the code length for a strict VW-OOC can be obtained as nP

XL l¼1

wl ðwl  1Þql jCj þ 1:

ð7Þ

3. Proposed design of strict VW-OOCs 3.1. Distinct sets approach A distinct set is a collection of integer intervals where each interval represents the distance between a specific pair of marks, such that all intervals in the set must be distinct. For instance, with w marks, there will be w  ðw  1Þ=2 entries in a distinct set. First order differences are the intervals for every pair of adjacent marks in the set. Second order differences are the intervals between marks placed two apart on the set. A set with w marks will have w  1 first order differences, w  2 second order differences and so on, up to a single ðw  1Þth order difference. Let w ¼ 4 marks and the terms m1 , m2 and m3 are the intervals for the first order differences; the second and third order differences in a distinct set are shown in Fig. 2.

2080

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

first order……… m1 second order…...

m2 m1+m2

third order……...

number of ‘‘1s” positions in C can be denoted by bmax and satisfies

m3 m2+m3

bmax P

m1+m2+m3

Fig. 2. Order differences of a distinct set.

Example 1. Let a distinct set have w ¼ 4 marks and consider intervals for the first order differences of fm1 ; m2 ; m3 g ¼ f1; 3; 2g. As in Fig. 2, the second and third orders differences are f4; 5g and f6g, respectively. All entries (intervals) in the set, I ¼ f1; 3; 2; 4; 5; 6g, are distinct. The maximum interval in this distinct set is denoted by Imax and Imax ¼ 6. The Imax also defines length of set and is then given by Imax P

wðw  1Þ : 2

ð8Þ

This distinct set is an optimal set since the Imax satisfies (8) with equality. Definition 2. Let S be a family of distinct sets and sl is a   wl posdistinct set with wl marks. In each sl , there are 2 sible intervals. It contains intervals for the first order differences Ið1Þ where Ið1Þ wl ;sl ¼ fm1;sl ; m2;sl ; . . . ; mwl 1;sl g, wl ;sl ¼ fmr;sl jr ¼ 1; . . . ; wl  1g, for each sl , such that: i. All the differences mr;sl and mr;s0l with sl 6¼ s0l are distinct, and ii. the other order differences, Ið2Þ wl ;sl ¼ fmr;sl þ mrþ1;sl g; . . . ; ðwl 1Þ Iw ¼ fm þ m þ . . . þ mwl 1;sl g, with sl 6¼ s0l r;s rþ1;s ;s l l l l are also distinct. The algorithm for constructing the strict VW-OOCs based on the distinct sets approach can be described as follows: 1. L different code weights of W ¼ fw1 ; w2 ; . . . ; wL g and the number of codewords of C ¼ fC w1 ; C w2 ; . . . ; C wL g with Q ¼ fq1 ; q2 ; . . . ; qL g are selected for the requirements of L different services and the number of users in each service, respectively, that are to be realized in a network. Then choose the first order differences of distinct sets with specific adjacent intervals for the sl th codeword are given by Ið1Þ wl ;sl ¼ fm1;sl ; m2;sl ; . . . ; mwl 1;sl g;

ð9Þ

where l ¼ 1; . . . ; L, sl ¼ 1; . . . ; jC wl j and jC wl j is the number of codewords for code weight wl . The remaining order differences are specified such that there is no repeated interval within a set, and between other sets. 2. Construct codewords for C wl that contain wl -set of ‘‘1s” positions are given by ð0; b1;sl ; b2;sl ; . . . ; bwl 1;sl Þ;

L X wl ðwl  1Þ ql jCj: 2 l¼1

ð11Þ

4. The code length n for the proposed strict VW-OOCs must satisfy n P 2bmax þ 1;

ð12Þ

which is the same result given in (7) by substituting (11) into (12). 5. Finally, an ðn; fw1 ; w2 ; . . . ; wL g; k; fq1 ; q2 ; . . . ; qL gÞ strict VW-OOC is constructed.

Example 2. An illustration for the construction of a strict VW-OOC based on the above algorithm as follows: 1. Let us select L ¼ 3, W ¼ fw1 ; w2 ; w3 g ¼ f4; 3; 2g, and jCj ¼ fjC w1 j; jC w2 j; jC w3 jg ¼ f1; 1; 1g for Q ¼ fq1 ; q2 ; q3 g ¼ f1=3; 1=3; 1=3g. There are three codewords in this code set or jCj ¼ 3. So s1 ¼ s2 ¼ s3 ¼ 1. Next, choose the first order of three distinct sets with different number of ð1Þ ð1Þ marks according to the W, e.g., fIð1Þ w1 ;s1 ; Iw2 ;s2 ; I w3 ;s3 g ¼ ð1Þ ð1Þ ð1Þ fI4;1 ; I3;1 ; I2;1 g ¼ ff1; 4; 7g; f2; 6g; f3gg. All order differences for the sets are shown in Table. 1, where Iwl ;sl is a collection of all order differences in sl . 2. Now, construct a codeword for weight w1 ¼ 4, C w1 , by using (10) and the Ið1Þ w1 ;s1 where a w1 -set ‘‘1s” positions is C w1 ¼ fð0; 1; 5; 12Þg. In the same way for fw2 ; w3 g ð1Þ and fIð1Þ w2 ;s2 ; Iw3 ;s3 g, C w2 and C w3 are obtained with the codewords of fð0; 2; 8Þg and fð0; 3Þg, respectively. Then, a code set for strict VW-OOC is obtained as C ¼ fC w1 ; C w2 ; C w1 g ¼ ffð0; 1; 5; 12Þg; fð0; 2; 8Þg; fð0; 3Þg, where the three codewords are shown in Fig. 3. 3. From C, we find bmax ¼ 12. 4. The code length of this code is n ¼ 25. 5. Finally, a ð25; f4; 3; 2g; 1; f1=3; 1=3; 1=3gÞ strict VWOOC is constructed. Note that the intervals of a distinct set are related to the used intervals of a codeword of a strict VW-OOC. However, all used intervals by a codeword in the strict VW-OOC should be calculated by (3) and (4). Thus, the intervals used by a ð25; f4; 3; 2g; 1; f1=3; 1=3; 1=3gÞ strict VW-OOC according to (3) and (4) are Dw1 ¼ f1; 4; 7; 13; 5; 11; 20; 14; 12; 24; 21; 18g, Dw2 ¼ f2; 6; 17; 8; 23; 19g, and Dw3 ¼ f3; 22g. As shown, there is no repetition of interval in the code set and Dw1 \ Dw2 \ Dw3 ¼ £. Hence, the correlation value is bounded by one, and our theorem is satisfied. Using this triplet-weight OOC, three different services can be supported simultaneously in the network.

ð10Þ

where b1;sl ¼ m1;sl ; b2;sl ¼ m1;sl þ m2;sl ; . . . ; bwl 1;sl ¼ m1;sl þ m2;sl þ    þ mwl 1;sl . Here, we assume that the first pulse of all codewords is always located in the first chip codeword. 3. According to (8), the maximum interval in a distinct set is given by Imax P wðw  1Þ=2. Thus, the largest chip

Table 1 Order differences of the distinct sets in Example 1 Iw1 ;s1 ¼ I4;1 1

Iw2 ;s2 ¼ I3;1 4

5

7 11

12

2

Iw3 ;s3 ¼ I2;1 6

8

3

2081

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

0 1

0

5

2

0

3

12 Codeword with weight = 4

24

8 Codeword with weight = 3

24

24

Codeword with weight = 2

Fig. 3. The codewords of a ð25; f4; 3; 2g; 1; f1=3; 1=3; 1=3gÞ strict VWOOC.

Example 3. Table 2 shows another example of a strict VWOOC constructed with four different code weights ðL ¼ 4Þ in the code set. The code is denoted by ð427; f5; 4; 3; 2g; 1; f6=50; 8=50; 12=50; 24=50gÞ strict VWOOC. This code can support 50 users with four different services; 6 users of weight 5, 8 users of weight 4, 12 users of weight 3, and 24 users of weight 2. In this code, we considered adding more codewords for the smallest weight, in order to optimize the code without increasing the code length. However, the code was still inferior when comparing its code length with the upper bound of code length in (7) and (12) with the upper bound of bmax in (11). An explanation for this is that the strict VW-OOC needs a relaxing code length to maintain the correlation value between the codewords with the same code weight, and between the codewords with the different code weights. 3.2. Random method In a minimax sense, the random method is more powerful than the deterministic method. It typically involves an iterative process where each iteration searches the progress of a new solution in the neighborhood of the current solution. The local optimization procedure starts from an initial value that is selected in the first step. The stop step is used when global optimum has been found or computer Table 2 A ð427; f5; 4; 3; 2g; 1; f6=50; 8=50; 12=50; 24=50gÞ strict VW-OOC based on the distinct sets Codewords w1 ¼ 5

w2 ¼ 4

w3 ¼ 3

w4 ¼ 2

(0, 1, 8, 25, 53) (0, 2, 11, 29, 60) (0, 3, 13, 33, 68) (0, 4, 16, 38, 70) (0, 5, 19, 42, 82) (0, 6, 21, 47, 90)

(0, 39, 98, 172) (0, 44, 105, 180) (0, 46, 108, 184) (0, 48, 112, 190) (0, 50, 117, 196) (0, 51, 122, 202) (0, 56, 128, 209) (0, 57, 130, 213)

(0, 85, 185) (0, 86, 187) (0, 87, 186) (0, 88, 191) (0, 89, 193) (0, 91, 197) (0,92, 199) (0, 93, 203) (0, 94, 205) (0, 95, 208) (0, 96, 210) (0, 97, 212)

(0, 116) (0, 119) (0, 121) (0, 124) (0, 126) (0, 129) (0, 132) (0, 135) (0, 139) (0, 141) (0, 144) (0, 147)

(0, 118) (0, 120) (0, 123) (0, 125) (0, 127) (0, 131) (0, 134) (0, 137) (0, 140) (0, 143) (0, 145) (0, 148)

time is an exhausted resource. Furthermore, the random method can be altered and adapted to specific needs so that the required strict correlation value for VW-OOC can be fulfilled. To generate VW-OOCs, it starts with an empty code set. A new codeword is attempted to include the code set iteratively. The algorithm for generating of strict VW-OOCs based on the random method can be described as follows: 1. Choose positive integers of W ¼ fw1 ; w2 ; . . . ; wL g for L different weights and the number of codewords of C ¼ fC w1 ; C w2 ; . . . ; C wL g with Q ¼ fq1 ; q2 ; . . . ; qL g for the requirements in the network, as input parameters. 2. Using the parameters of step (1) and according to (7), the code length n can be obtained, where there are n possible assignments of positive integers in the search process. 3. Set ‘‘0” for the first chip position in each codeword. Then assign a random integer of f1; 2; . . . ; n  1g to b1;tl ; b2;tl ; . . . ; bwl 1;tl by computer search, where tl ¼ 1; . . . ; jC wl j, l ¼ 1; . . . ; L and jC wl j is the number of codewords for code weight wl . The wl -set of ‘‘1s” positions for the t l th codeword can be represented by ð0; b1;tl ; b2;tl ; . . . ; bwl 1;tl Þmod n:

ð13Þ

Sort all possible wl -set codewords and store them in look-up tables. 4. Check the used intervals in the codewords as dhk;tl ¼ bk;tl  bh;tl and dhk;tl 6¼ dh0 k0 ;t0 ; l

ð14Þ

where tl ¼ 1; 2; . . . ; jC wl j and t 0l ¼ 1; 2; . . . ; jC wl0 j. For dhk;tl 2 Dwl and dh0 k0 ;t0 2 Dwl0 , h ¼ 0; 1; . . . ; k  1 and k ¼ 0 l 0 1; 2; . . . ; wl  1, h ¼ 0; 1; . . . ; k  1 and k0 ¼ 1; 2; . . . ; wl0  1. After the intervals in each codeword are computed, they are compared with their own used intervals and intervals among others. If they cannot satisfy the correlation properties of a strict VW-OOC, return to the previous step and continue. 5. If all constraint parameters are found, stop searching. Otherwise go back to step (3).

Example 4. We have simulated this algorithm by using a computer and an illustration of the generation of a strict VW-OOC as follows: 1. We choose W ¼ f5; 3; 2g and C ¼ f1; 1; 1g with Q ¼ f1=3; 1=3; 1=3g as input parameters to the algorithm. 2. The code length for this code is n ¼ 29. 3. The computer generates a code set with different number of integers that is: C ¼ ffð0; 12; 14; 20; 25Þg; fð0; 7; 26Þg; fð0; 28Þgg, which is stored in look-up tables. 4. The used intervals in the code set are checked. All used intervals in the code set are Dw1 ¼ f12; 2; 6; 5; 4; 14; 8; 11; 9; 16; 20; 13; 15; 21; 18; 25; 17; 27; 23; 24g, Dw2 ¼ f7; 19; 3; 26; 22; 10g, and Dw3 ¼ f28; 1g, which satisfy the correlation properties for a strict VW-OOC. 5. Once all parameters are found, searching stops. The code is a ð29; f5; 3; 2g; 1; f1=3; 1=3; 1=3gÞ strict VWOOC.

2082

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

Since the codewords are generated randomly, the algorithm can also find many different code sets under arbitrary constraints by removing the stopping criterion in step (5) and changing random seeds. Different code sets can be used for code reconfiguration. A reconfiguration of a ð29; f5; 3; 2g; 1; f1=3; 1=3; 1=3gÞ strict VW-OOC is C ¼ ffð0; 1; 3; 12; 25Þg; fð0; 15; 23Þg; fð0; 19Þgg. Example 5. Another strict VW-OOC based on the random method and its reconfiguration are shown in Tables 3 and 4, respectively, where the ‘‘1s” positions in the code sets are different from each other. A strategy of code reconfiguration is preferred to improve security and eliminate any vulnerability to eavesdropping [12]. Security can be increased by frequently allowing changes of the code set in the network. Thus, a large number of different code sets is important for this purpose. Therefore, the proposed algorithm based on the random method has a new feature, that is the reconfiguration of codes, whereas the conventional methods in [8–11] do not have such a feature, because they were considered well-defined coding structures that produced a fixed code set. However, to search all the possible code sets in our proposed algorithm would prove timeconsuming. Search time increases as jCj or W increases. To reduce search time, a relaxing code length is required, but this code would be less optimal. 3.3. Code evaluation and comparison In the proposed strict VW-OOCs, codewords are classified into L different code weights with the same code length. Therefore, the performance of each user depends on the value of his code weight address. That is, the MAI seen by a user consists of the cross-correlation from active users with the codewords of smaller, equal, or larger code weights. So, good correlation of codes is a property that is a crucial factor for system performance. To ensure that the Table 3 A ð101; f4; 3; 2g; 1; f5=15; 5=15; 5=15gÞ strict VW-OOC based on the random search

correlation constraint of a strict variable/multi-weight OOC is exactly bounded by one for overall codewords, an evaluation method is suggested in this paper, as shown in Fig. 4. Supposing we have L different code weights in the code set with w1 >    > wl >    > wL and the number of users in the lth code weight is jC wl j. The code set can be represented by C ¼ fC w1 ; C w2 ; . . . ; C wl ; . . . ; C wL g, where C wl ¼ fc1;wl ; c2;wl ; . . . ; cjC wl j;wl g is the sub code set of codewords for code weight wl , and each cm;wl is the sub–sub code set that consists of wl ‘‘1s” positions of mth codeword. According to (3) and (4), every codeword in lth code weight must have ðwl  1Þ  wl distinct intervals, and every sub code set of lth code weight must have jC wl jðwl  1Þ  wl distinct intervals. By evaluating all intervals for L code weights of the codes and using the proposed analysis in Fig. 4, the exact value of the maximum correlation property of a strict VW-OOC and any other VW-OOC can be expressed as 0 1 kw1 ;w1 kw1 ;w2 . . . kw1 ;wL B C B ... C B kw2 ;w1 kw2 ;w2 C B C; k¼B ð15Þ C . . . B .. .. C .. @ A kwL ;w1 ... . . . kwL ;wL where kwl ;wl0 is the correlation value between the code weights wl and wl0 , and l; l0 2 f1; . . . ; Lg. When l ¼ l0, it gives an intra-weight correlation which is a correlation between codewords with the same code weight. Otherwise, for 0 l 6¼ l , it gives an inter-weight correlation which is a correlation between codewords with different code weights. We have simulated the intervals used by all codewords in the proposed codes in Tables 2 and 3 according to the above analysis. The result is shown in Fig. 5, where the maximum correlation value of the proposed codes is definitely bounded by one because there is no repeated use of interval in the codes. In addition, code that is generated by the random method is an optimal code since all intervals are distributed uniformly between 1 and n  1. In detail, the correlation constraints for the proposed codes based on the distinct sets (Table 2) and the random method (Table 3) according to (15) are given by

Codewords w1 ¼ 4

w2 ¼ 3

w3 ¼ 2

(0, 21, 70, 99) (0, 14, 79, 82) (0, 7, 34, 64) (0, 46, 63, 89) (0, 32, 73, 86)

(0, 1, 91) (0, 45, 61) (0, 4, 9) (0, 18, 66) (0, 20, 59)

(0, 95) (0, 8) (0, 51) (0, 76) (0, 24)

λ wL,wL

Intra-weight correlation

w3 ¼ 2

(0, 36, 74, 82) (0, 30, 67, 81) (0, 1, 17, 41) (0, 26, 35, 58) (0, 48, 73, 79)

(0, 42, 94) (0, 44, 54) (0, 2, 5) (0, 29, 62) (0, 4, 15)

(0, 13) (0, 45) (0, 80) (0, 12) (0, 83)

C w1

w L ,w 1

w 1 ,w L

w2,w2

,w 2

w2 ¼ 3

Correlation parameters

,w L

λ

Codewords w1 ¼ 4

λ

λw L

λ w1,w1

λw2

Table 4 A reconfiguration of ð101; f4; 3; 2g; 1; f5=15; 5=15; 5=15gÞ strict VW-OOC based on the random search

Inter-weight correlation

C wL

λ w2,w1 λ w1,w2

Cw2

(n, {w1,w2,…,wL}, λ , {q1,q2,…,qL}) VW-OOCs Fig. 4. Proposed code analysis.

2083

# used intervals

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

1

0 0

100

200

300

400

0

0

10

20

30

40

50

60

70

80

90

# used intervals

10

2

# used intervals

1

500

Interval length (a) Distinct sets approach (Table 2)

5 0

1

0

5

10

15

20

25

30

Interval length (b) MW–OOC [10, Table II] for s=0

0 0

20

40

60

80

100

Interval length (b) Random method (Table 3) Fig. 5. Intervals used in the code set of proposed strict VW-OOCs.

0

1

1

1

1

1

B1 B kProp; Table 2 ¼ B @1

1

1

1

1

1C C C 1A

1

1

1

1

1

1

1

and

2

Interval length (a) VW–OOC [9, example 1]

0

B kProp; Table 3 ¼ @ 1 1

C 1 A;

1

1

4 2 0

0

200

400

600

800

1000

Interval length (c) MW–SLOOC [11, Table 1]

ð16Þ

Fig. 6. Intervals used in the code set of some conventional codes.

1

1

# used intervals

# used intervals

2

ð17Þ

respectively. For comparison purposes, we also have simulated some conventional codes in terms of used intervals in their code set, that are related to the correlation value. Note that all used intervals for all codewords in a code set are analyzed in our proposed method. In contrast, most conventional analysis has considered only two distinct codewords for obtaining the cross-correlation value in such a way that the value may be changed. In our comparison, we evaluated three conventional variable-weight codes. Firstly, we considered the used intervals in the ð10; ðf3; 4gÞÞ-pairwise balanced design (PBD) where the codewords can be found in [9, example 1]. The result of used intervals for all codewords in the code is shown in Fig. 6a. The correlation value of this code is truly bounded by one, and the code is an optimal code. Secondly, we considered the Lattice 2  ð28; f1; 3; 4; 5g; f0; 1gÞ PBD design where the seven codewords can be found in [10, Table II] for group s ¼ 0. The cross-correlation value between two codewords was designed for two in order to increase the number of codewords. However, in the case of fully asynchronous access (data transmission), the correlation value of the code group can be changed and can be much larger than two, as shown in Fig. 6b where there is 10 times repetition used for the same interval. As a result, system performance would be very degraded or the system may require an MAI cancellation method. Lastly, we evaluated a strict MWSL-OOC based on mark position difference (MPD) in [11, Table I]. The code is strict only for the codewords with the same

code weight. However, the maximum correlation value of the strict MWSL-OOC may be equal to two as shown in Fig. 6c. In detail, the correlation constraints for VW-OOC [9, example 1], MW-OOC [10, Table II], and MWSL-OOC [11, Table 1] according to (15) are given by   1 1 kVW-OOC ½½9; example 1 ¼ ; ð18Þ 1 1 0 1 1 2 2 6 B2 1 2 7C B C kMW-OOC ½½10; Table II ¼ B ð19Þ C; @2 2 1 7A 6

7

7

6

and 0

1

B kMWSL-OOC ½½11; Table 1 ¼ @ 2 2

2

2

1

1

C 2 A;

2

1

ð20Þ

respectively. Therefore, the proposed codes are more strict than those of some conventional codes. Table 5 shows a general comparison of some conventional codes with the proposed ones. It can be seen from this table that the proposed codes can increase the number of different code weights to support more services in the network, with good correlation properties. 4. Performance analysis 4.1. Bit error probability In general, the performance of an OCDMA system is primarily affected by the MAI from the other users. Here, the performance analysis of a system employing VW-OOCs considers MAI from other users as the only factor to

2084

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

Table 5 Comparison of some variable-weight/multi-weight OOCs Codes

Methods

No. of code weights

kc

VW-OOCs [8] VW-OOCs [9] MW-OOCs [10] MWSL-OOCs [11] VW-OOCs [proposed] VW-OOCs [proposed]

BIBD PBD PBD MPD Distinct sets Random

2 2 4 3 4 3

1 1, 2 2 2 1 1

degrade system performance; the effects of shot noise, thermal noise, and other external factors, are not taken into account. Without these noise sources, an error occurs only when the cumulative effect of MAI, which is receiving a ‘‘0” data bit, reaches over the decision threshold. There is no frame synchronization between the transmitters, but the chip is assumed to be synchronous between users. This means that each chip of a codeword must be perfectly aligned with a chip of another codeword. When M users are transmitting codewords simultaneously, M  1 users contribute to MAI. If a user transmits a pulse or a ‘‘1” data bit, an encoder generates a codeword; however, it generates nothing for a ‘‘0” data bit. In an ðn; W; k; Q Þ strict VW-OOC, each interfering user may contribute only to one chip overlap (hit) with the intended receiver. Then, the probability that one of ‘‘1s” positions of a user codeword with weight wl will overlap with one of ‘‘1s” positions of the desired codeword with weight wl0 , is given by pl;l0 ¼

wl wl0 ; 2n

ð21Þ

0

where l; l 2 f1; . . . ; Lg, wl ; wl0 2 W; W ¼ fw1 ; . . . ; wL g, and wl 6¼ wl0 . To simplify the analysis, let us assume L ¼ 3 for three different weights of codewords’ users that coexist in the network. Then there are M ¼ fM w1 ; M w2 ; M w3 g users with three different services in the network. So a user with weight w1 could be interfered with by other users with weights of W ¼ fw1 ; w2 ; w3 g at one chip position of each weight, because the correlation value of the proposed codes is bounded by one. Without any other noise and hard-limiter, the bit error probability of a user with weight wl of the strict VW-OOC can be evaluated by modifying (26) of [7] as   M 1 X M wl  1 1 PE ; wl ¼ ðpl;l Þgl ð1  pl;l ÞMwl 1gl 2 g þg þþg ¼w gl 1 2 L l  L  Y M wl0 M g  ðpl;l0 Þgl0 ð1  pl;l0 Þ wl0 l0 g l0 l0 ¼1 l0 6¼l

¼

1 1  2 2

w l 1 X

8 > > <

ðM wl  1Þ! :  1  g l Þ!

>g l !ðM wl g 1 þg 2 þþg L ¼0 > :

 ðpl;l Þgl ð1  pl;l ÞMwl 1gl 

L Y l0 ¼1 l0 6¼l

9 > > = M wl0 ! M g ðpl;l0 Þgl0 ð1  pl;l0 Þ wl0 l0 ; > g l0 !ðM wl0  g l0 Þ! > ; ð22Þ

where g l is the number of the interferers with codewords of weight wl . The decision threshold (Th) for users is set to the code weight wl for optimal operation [4]. To make sure that the PE ; wl is valid for k ¼ 1, this can be checked by substituting M wl0 ¼ 0, g l0 ¼ 0 and pl;l0 ¼ 0 into (22). Then the PE ; wl presents the bit error probability for a single weight constant length OOC as PE ; wl ¼

1 1  2 2   w l 1 X ðM wl  1Þ!  ðpl;l Þgl ð1  pl;l ÞMwl 1gl : g l !ðM wl  1  g l Þ! g ¼0 l

ð23Þ Since the P E ; wl in (23) has only a single weight wl ¼ w, the subscript of l can be removed. Now, P E for a single weight is given by PE ¼

X M  1 1 M1 pg ð1  pÞM1g ; 2 g¼Th g

ð24Þ

where p ¼ w2 =2n, which is the same result given in (16) of [3] or (7) of [4] for single weight constant length OOCs with k ¼ 1. 4.2. Numerical results Throughout this section, using a triplet-weight (L ¼ 3) strict VW-OOC, we evaluate the bit error probability for a triplet-service OCDMA system which supports differentiated QoS. In this paper, a ð3101; f6; 5; 4g; 1; f50= 150; 50=150; 50=150gÞ strict VW-OOC is evaluated. This code can be used to support 150 active users with three different services in a network; M w1 ¼ 50 users of weight w1 ¼ 6, Mw2 ¼ 50 users of weight w2 ¼ 5, and M w3 ¼ 50 users of weight w3 ¼ 4. The bit error probability performance in our numerical results is calculated by using (22). The lower bound of bit error probability performance for users with code weight wl can be achieved when there is no user in any other code weight of wl0 . The performance of M w1 users with w1 will be optimal when M w2 ¼ Mw3 ¼ 0. The lower bound of bit error probability, given by (22), versus number of active users for code weight wl , where l ¼ 1; . . . ; L, is shown in Fig. 7. Users with larger weight (i.e., w1 ¼ 6) perform better than those with smaller weight (i.e., w2 ¼ 5 or w3 ¼ 4). Moreover, the performance worsens as the number of active users increases. When users with two and three different code weights are active in the network, the bit error probability, given by (22), versus number of active users is shown in Fig. 8. Here, we consider some combinations of the types of active users based on their code weights. For example, in the case of two weights, we varied the number of active users Mw1 ¼ m with w1 ¼ 6, M w2 ¼ 5 active users with w2 ¼ 5, and there is no active user Mw3 ¼ 0 with w3 ¼ 4. Users with larger code weights always perform better than those with smaller code weights. Performance also worsens as the number of users increases. In addition, the performance is degraded when users with three different code weights transmit simultaneously in the network.

2085

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086 –2

10

Q={q1,q2,q3}={1/4,1/4,1/2} M={Mw1=30,Mw2=30,Mw3=60}= 120 active users

–4

10

Bit error probability

In order to meet the requirements of bit error probability that ranges from 103 (e.g., Internet telephony) to 1011 or less (e.g., real-time transmission service), the variableweight values in the proposed codes should be increased, and then the code length is also increased to guarantee the correlation value k ¼ 1. For this purpose, we have evaluated the bit error probability versus code length (n) by employing the ðn; f10; 8; 6g; 1; f30=120; 30=120; 60=120gÞ strict VW-OOCs which support 120 active users in the network as shown in Fig. 9. To ensure the QoS of the highest priority users, such as real-time transmission service, these users will be assigned to long codewords with the largest code weight. For an example, 30 users of weight 10, 30 users of weight 8, and 60 users of weight 6 are active in the network. The bit error probability is 3:31  1012 for 30 users of weight 10 when the code length n ¼ 12000. The proposed strict VW-OOCs have shown that they can provide different QoS at the physical level in optical CDMA

–6

10

–8

10

–10

10

Code weight w1 = 10 Code weight w2 = 8 Code weight w = 6 3

–12

10

2000

4000

6000

8000

10000

12000

Code length (n) Fig. 9. Bit error probability versus code length (n) for ðn; f10; 8; 6g; 1; f30=120; 30=120; 60=120g strict VW-OOCs with all users are active in the network.

–4

10

networks. Since the performance of a user depends on his code weight, the proposed codes enable a network to support multiple performance requirements. The highest priority user can be assigned to a codeword with the largest weight to guarantee the lowest bit error probability in the system. While the user who can tolerate some transmission errors is then assigned to the smallest weight. Therefore, the proposed codes may allow differentiated QoS at the physical level for multi-service OCDMA networks.

–6

Bit error probability

10

–8

10

–10

10

Code weight w1 = 6 Code weight w2 = 5 Code weight w3 = 4

–12

10

–14

10

0

10

20

30

40

5. Conclusion 50

Number of active users Fig. 7. Lower bound of bit error probability versus number of active users by employing a ð3101; f6; 5; 4g; 1; f50=150; 50=150; 50=150gÞ strict VWOOC.

–4

10

Two different code weights users are active Three different code weights users are active

Bit error probability

–6

10

w3 = 4

–8

10

Mw1=m, Mw2= 5 Mw1=m, Mw2= 5,Mw3=5 Mw2=m, Mw1= 5 Mw2=m, Mw1= 5,Mw3=5 M =m, M = 5 w3 w1 M =m, M = 5,M =5

w =5 2

–10

10

w1 = 6

w3

–12

10

0

10

20

30

w1

40

w2

50

Number of active users (m) Fig. 8. Bit error probability versus number of active users by employing a ð3101; f6; 5; 4g; 1; f50=150; 50=150; 50=150gÞ strict VW-OOC for two and three different code weights of active users.

In this paper, we have proposed two novel designs for strict VW-OOCs with correlation value at most one to achieve differentiated QoS in optical CDMA networks. The distinct sets approach and random method for constructing and generating strict VW-OOCs, respectively, have been discussed. The need of codewords (users) and code weights (services) can be selected in both proposed designs. Designed strict VW-OOCs with up to four different code weights have been presented. The proposed codes based on the distinct sets approach and the random method have been evaluated, and found to be more strict than those of some conventional codes. Furthermore, the random method can provide many different code sets for given code parameters, which can be used for code reconfiguration to enhance security. The bit error probability for the triplet-service OCDMA system, employing the triplet-weight of strict VW-OOCs, has been analyzed. The results have shown that the performance of users with the same code weight is optimal when there is no active user with the different code weights. Users with larger code weight always perform better than those with smaller code weights. Moreover, performance worsens as the number of active users increases, and also when users with two or three different code weights are active simultaneously in the network. Therefore, the proposed strict VW-OOCs have shown that

2086

Nasaruddin, T. Tsujioka / Computer Networks 52 (2008) 2077–2086

they can provide the differentiated QoS needed to support multi-service in OCDMA networks. References [1] P.R. Prucnal, Optical Code Division Multiple Access: Fundamentals and Applications, Taylor & Francis, Boca Raton, 2006. [2] J.A. Salehi, Code division multiple-access techniques in optical fiber networks – part I: fundamental principles, IEEE Trans. Commun. 37 (8) (1989) 824–833. [3] J.A. Salehi, C.A. Bracket, Code division multiple-access techniques in optical fiber networks – part II: System performance analysis, IEEE Trans. Commun. 37 (8) (1989) 834–842. [4] M. Azizoglu, J.A. Salehi, Y. Li, Optical CDMA via temporal codes, IEEE Trans. Commun. 40 (7) (1992) 1162–1170. [5] A. Stok, E.H. Sargent, Lighting the local area: optical code-division multiple access and quality of service provisioning, IEEE Network 14 (6) (2000) 42–46. [6] Nasaruddin, T. Tsujioka, Multiple-length variable-weight optical orthogonal codes for multi-rate multi-quality optical CDMA Systems, IEEE GLOBECOM 2006 Proceeding (2006), pp. OPN02–1. [7] Nasaruddin, T. Tsujioka, Multiple-length variable-weight optical orthogonal codes for supporting multirate multimedia services in optical CDMA Networks, IEICE Trans. Commun. E90–B (8) (2007) 1968–1978. [8] G.C. Yang, Variable-weight optical orthogonal codes for CDMA network with multiple performance requirements, IEEE Trans. Commun. 44 (1) (1996) 47–55. [9] F.R. Gu, J. Wu, Construction and performance analysis of variableweight optical orthogonal codes for asynchronous optical CDMA systems, J. Lightwave Technol. 23 (2) (2005) 740–748. [10] I.B. Djordjevic, B. Vasic, J. Rorison, Design of multiweight unipolar codes for multimedia optical CDMA applications based on pairwise balanced designs, J. Lightwave Technol. 21 (9) (2003) 1850–1856. [11] N.G. Tarhuni, T.O. Korhoen, E. Mutafungwa, M.S. Elmusrati, Multiclass optical orthogonal codes for multiservice optical CDMA networks, J. Lightwave Technol. 24 (2) (2006) 694–704.

[12] T.H. Shake, Security performance of optical CDMA against eavesdropping, J. Lightwave Technol. 23 (2) (2005) 655–670.

Nasaruddin was born in Aceh, Indonesia, in 1974. He received the B.E. degree in Electrical Engineering from Sepuluh Nopember Institute of Technology, Surabaya, Indonesia, in 1997 and the M.E. degree in Physical Electronics and Informatics from Osaka City University (OCU), Japan, in 2006. He is currently working toward the Ph.D. degree at OCU and on study leave from Electrical Engineering Department, Syiah Kuala University, Banda Aceh, Indonesia. His research interests include codes design and optical CDMA networks. He is a student member of IEEE and IEICE of Japan.

Tetsuo Tsujioka was born in Osaka, Japan, in 1968. He received the B.E. degree from University of Electro-Communications in Tokyo in 1992, and the M.E. and D.E. degrees from Osaka City University in 1994 and 2003, respectively. From 1994 to 2000, he was with the NTT Optical Network Systems Laboratories and Network Inn99ovation Laboratories in Japan. Currently, he is a lecturer at Osaka City University. His technical interests include computer networking, channel coding and modulations. He is a member of IEEE, IEICE, and the Society of Information Theory and its Applications (SITA).