# Supporting Heterogenous Traffic on Top of Point-to-Multipoint Light-Trees +
## 3 Optical Constellation Slicing  
This section details the OCS solution that includes the design of the transmitter and receiver and the theoretical throughput. Implementing OCS requires adding encoder and decoder blocks to the standard coherent transceivers, as shown in Figure 3. The encoder and decoder blocks are in charge of slicing the optical constellation to support P2P and P2 MP traffic on top of the optical P2 MP. For illustrative purposes, Figure 4 shows two examples of alternative configurations that can be supported using OCS on the same light-tree. The example in Figure 4a shows the traffic that can be supported with the configuration presented in Figure 2b, i.e., four P2P traffic flows between the source and every destination, as well as one P2 MP traffic flow between the source and all the destinations. Only by configuring the encoder and decoder can the traffic shown in Figure 4b be supported, which entails two P2 MP traffic flows, each between the source and two different destinations. These examples are intended to demonstrate the flexibility of OCS to allow dynamic changes in the configuration of the optical system as a function of the traffic requirements, without changing the light-tree itself. To protect data that is not intended to a specific destination, the encoder block implements a substitution cipher for every OCS based on a specific LUT, which encrypts data before transmission, while the decoder implements the inverse operation for every OCS_i_ individually. Figure 4: Example of traffic configurations supported by OCS. P2P + P2 MP traffic (**a**) and P2 MP traffic (**b**) (updated from [16]). Figure 3: Optical communication system for OCS. Figure 5 details the OCS encoder for the configuration in Figure 2b. The first step is to choose the modulation format (\(m\)) of quadrature amplitude modulation (QAM) that provides the highest throughput and the maximum number of OCSs. Because the lowest number of CPs that may be allocated to a single OCS\(i\) is two (each point representing a single data bit), the maximum number of simultaneous destinations is \(m/2\). For the sake of clarity, we assume \(m=64\) hereafter. The next step is to create the OCSs. Figure 5 illustrates the traffic shaping to be implemented at the TX side. Every OCS\(i\) is then associated with a buffer within the TX, where data streams are temporarily stored. From those buffers, sets of bits of size, equal to the number of _bits with information (infobits)_ in the OCS\(i\), are selected and encrypted using the LUT as a substitution cipher. For example, in Figure 5, sets of five bits are selected for OCS1, whereas sets of three bits are selected for OCS2. Next, the shaping block receives one of the encrypted sets from each OCS at a time and adds the prefix that identifies the OCS for which that data is intended; this results in a specific symbol in the optical constellation. Hence, each RX receives symbols formed from a unique <_prefix_, _infobits_> pair, where the prefixes are decided according to the constellation map. Note that prefixes might be of different lengths, so sets of six bits are obtained to feed the 64-QAM optical modulator. For example, it adds prefix 0 to sets of bits from OCS1 and prefix 111 to sets of bits from OCS2 (see Figure 5). The shaping block follows a 64-step cycle, where at every step, it receives a set of bits from an OCS\(i\); the number of sets of bits selected from each OCS\(i\) is exactly the number of CPs assigned to that OCS\(i\). For example, the shaping block receives 32 out of 64 5-bit sets from OCS1, and 8 out of 64 3-bit sets from OCS2. Note that it is at the source where most of the functionalities need to be implemented (including slicing and LUT coding), while destinations perform LUT decoding only. With this arrangement, the _throughput_ of each OCS\(i\) can be computed as a function of the number of bits with information, the symbol rate (\(SR\)), the number of CPs assigned to the OCS\(i\) (\(\#CP\)), and the modulation format used (\(m\)-QAM).