FD-OMAC: A Novel Full-Duplex Optical Media Access Control for IEEE 802.15.7

Optical wireless communication (OWC), the IEEE 802.15.7 standard (revised 2018) is developed in normative reference to low-rate wireless personal area networks IEEE 802.15.4 standard. One significant difference between the two standards is the highly directional transmitters in the OWC networks. This difference opens up the possibility of adding full-duplex communication to wireless networks. Our work proposes adding full-duplex functionality in the contention-free period (CFP) of the OWC media access control (MAC) layer. We justify the significance of our proposal by implementing IEEE 802.15.7 resource allocation scheme for both our proposed full-duplex optical MAC (FD-OMAC) and the IEEE standard MAC. Our simulation results demonstrate that the proposed work improves the spectral efficiency in the CFP without compromising delays. We also discuss the minor changes required in the IEEE standard MAC for implementing FD-OMAC. We further extend the FD-OMAC to a multiple access point network and evaluate its performance in comparison with IEEE 802.15.7 MAC.


I. INTRODUCTION
Internet traffic is experiencing unprecedented growth due to increased global mobile technology penetration and mushrooming data-hungry real-time applications. Nearly 92% of internet users use mobile devices [1], and 80% of the data is consumed indoors [2]. The indoor data mainly rely on Wi-Fi due to poor indoor cellular connectivity. The report in [2] also points out that regardless of the data capacity increased indoors, all of it will be exhausted. These increasing data demand trends suggest updating last-mile wireless networks, and the solutions constitute 5G technology, enhanced wireless fidelity (Wi-Fi 6), optical wireless communication (OWC) or visible light communication (VLC), and light fidelity (Li-Fi). OWC and Li-Fi holds the key to greener, safer, and securer communication and can be used in radio frequency (RF) interference-sensitive environments. It uses unlicensed electromagnetic spectrum (wavelength from 10000 nm to 190 nm) and can be 100 times faster than Wi-Fi, i.e., its transmission speeds can go over 100 Gbps [3]. In OWC, lightemitting diodes (LEDs) serve two purposes: a light source and a data transmitter simultaneously. The high switching speed of the LEDs for communication makes the intensity variations unnoticeable to the human eye, motivates using infrastructure LEDs as numerous OWC access points (APs). Various standardization activities [4]- [7] target to facilitate the smooth commercialization of OWC technology.
OWC and Wi-Fi have similar applications, are considered complementing technologies in futuristic networks [6]. However, there are several differences between the two technologies. Besides using the different electromagnetic spectrum, OWC technology is highly directional, has a small coverage area, and does not use an antenna in its transceiver like Wi-Fi. A Wi-Fi antenna cannot perform transmission and reception simultaneously due to the self-interference problem. Therefore, even the latest Wi-Fi MAC protocols are standardized for half-duplex communication [8], i.e., only transmission or only reception of data can happen at a time. However, in OWC, the transmitter uses an LED for data transmission, and the receiver uses a photodetector (PD) for the data reception. It is also preferable to use different wavelengths for upstream (infrared) and downstream in indoor environments (visible light) [9]. This setup of using two different wavelengths in OWC inherently resolves the problem of self-interference of the RF networks. Despite that, the current OWC standard IEEE 802.15.7 [5] defines only half-duplex MAC for communication.
IEEE 802. 15.7 was published in 2011 for half-duplex visible light communication (780 nm -380 nm). The standard has adopted many features of low-rate wireless personal area network standard IEEE 802.15.4 [10], which is also halfduplex. Meanwhile, Li-Fi (under standardization [6]) has aided the popularity of LED communication. Li-Fi proposes to use infrastructure LEDs for downlink (visible light) and invisible infrared light in the uplink to eliminate constant user eye obstruction. In 2018, IEEE 802.15.7 was revised to include visible and infrared light (10000 nm -190 nm), although it remained half-duplex. Therefore, the IEEE 802.15.7 MAC half-duplex nature is most likely a legacy issue. Now that the researchers are working in this area, it is likely that full-duplex communication may be included in IEEE 802. 15.7. Ongoing research in OWC is more focused on the PHY layer with very little attention to the MAC layer. The IEEE 802.15.7 MAC is spectrally inefficient since OWC MAC can be full-duplex. Consequently, our work provides solutions for a full-duplex OWC MAC by modifying the IEEE 802.15.7 MAC. We refer to the IEEE 802.15.7 MAC as IEEE-MAC in this paper.

A. LITERATURE REVIEW
OWC, with LEDs as transmitters, uses intensity modulation (IM) by changing the input current at the transmitter and direct detection (DD) by converting received intensity (power) variations back to the electrical signal. It is important to remember that the LED output must agree with illumination requirements and does not affect the normal working of the users. LEDs cannot send negative or complex signals, as output power or intensity cannot be negative. Furthermore, they are incoherent sources of light and cannot be phase modulated. Therefore, the unique characteristics of the LEDs prompted the adaptation of several modulation techniques from peer technologies like Wi-Fi.
For IM OWC systems, orthogonal frequency division multiplexing (OFDM) has two frequently studied variants DC-biased optical OFDM [11] and an asymmetrically-clipped optical OFDM [12]. [13]- [15] proposes optical code division multiple access (OCDMA). Color shift keying (CSK) using red-green-blue (RGB) LED is supported in [5], [15]. While OFDM suffers from high peak power to the average power ratio (PAPR), CDMA has hardware limitations, and CSK has the problem of maintaining white light at the transmitter (for illumination). Space division multiplexing (SDM) and multiple-input multiple-output (MIMO) scenarios [16]- [18] uses multiple LEDs for handling multiple users and are comparatively complex technologies. Non-orthogonal multiple access (NOMA) [19]- [20] is recently proposed to further enhance the user capacity by allocating different power to different users while using successive interference cancellation (SIC) processors at the receivers.
The MAC layer requires adjustments to utilize the new modulation schemes introduced at the physical layer. However, the implementation of the above-proposed modulation methods for MAC is discussed only for optical OFDM in [21]- [23]. In optical OFDM, users get different frequency-time blocks for communication and separate subbands for control message exchange. Authors in [24]- [25] propose VLC-CDMA hardware designs, but there is no literature on VLC-CDMA MAC. Camera-based communication popularly uses VLC with CSK modulation [7], [26]- [27], and as of MAC, the author of [28] proposes CSK with optical OFDM while standards suggest timedivision multiple access (TDMA) [5]. TDMA has been around for ages, and its straightforward hardware and software specifications favored its standardization.
A combination of contention-based carrier sense multiple access with collision avoidance (CSMA/CA) and contentionfree TDMA is standardized in IEEE 802.15.7. The IEEE-MAC is responsible for beacon synchronization, security, mobility, multiple access, and reliability. For performing these functions, the standard specifies a superframe structure ( Figure 1). A superframe contains two different parts, active period and optional inactive period. The active period further consists of a beacon frame followed by a contention access period (CAP) and an optional contention-free period (CFP), while the inactive period provides illumination. The beacon frame holds the information about the network, the CAP length, and the CFP. Best effort data services choose to transfer in the CAP, whereas the quality of service (QoS) users request the CFP. For assigning bandwidth to QoS applications, IEEE-MAC uses a guaranteed time slot (GTS) allocation procedure in the CFP. Section II further details IEEE-MAC.  [5]. The active period contains 16 superframe slots to bound the beacon frame, the contention access period, and the contention-free period. No data transfer happens during the optional inactive period.

B. RELATED WORK
We can classify the present literature on the full-duplex OWC-MAC into two categories: those proposing a new MAC structure incompatible with the standards and those proposing improvements to IEEE-MAC. IEEE-MAC can have two types of improvements: full-duplex in the CAP and full-duplex in the CFP. Msongaleli et al. [29] submit their own MAC, adaptive polling medium access (APMAC) protocol for fullduplex operation. In APMAC, a superframe consists of association phase (CSMA/CA), transmission phase (contention free), dissociation phase (CSMA/CA). Although the concept is similar to the standard, it lacks comparative and parametric research. Furthermore, each superframe does not need to have a distinct association and dissociation phase; the standard outlines a better mechanism in this case. Chen et al. [30] propose a new MAC structure, called central coordinated resource reservation multiple access (CRMA) system, comparable to APMAC without the dissociation phase and a more detailed parametric analysis. However, each user must contend in the association phase or access procedure in every cycle, which is unnecessary. Both research works do not consider the hidden node problem of their contention periods. The hidden node problem occurs in carrier sense multiple access with collision avoidance (CSMA/CA) scheme. In CSMA/CA, multiple nodes contend to gain access to a shared wireless channel. The nodes accomplish this by sensing the channel for ongoing transmission and transmitting their data if the channel is free. However, it is possible that the two nodes are in the range of an access point (AP) but not within the range of each other and therefore are unable to hear the uplink transmission of each other. As a result, the nodes transmit their uplink data simultaneously, causing a collision at the AP. Such nodes are referred to as hidden nodes for each other. This problem is relevant since IEEE 802.15.7 also uses CSMA/CA in the CAP. Authors of [31]- [32] use contention access similar to Wi-Fi, but their APs broadcast a busy tone or the same packet in the downstream direction while receiving an upstream packet to mitigate the hidden node problem. The works on full-duplex in the IEEE-MAC CAP suggest minimizing the hidden node problem with AP broadcasting a busy tone [33] in downstream during an upstream reception.
Authors of [34] suggest employing request-to-send/clear-tosend (RTS/CTS) signals along with a busy tone to minimize collisions. Wang et al. [35] suggest using a full-duplex mechanism during the CAP of the superframe. The proposed full-duplex operation is entirely dependent on the secondary transmission probability of the receiving node. Like Wang et al., authors of [36] propose CSMA/CD with hidden avoidance (CSMA/CD-HD) to mitigate hidden node problems, and the receiver can send additional in-band data to the transmitter during ongoing reception. The authors of [37]   The contributions of our work are: 1. We propose and evaluate a novel full-duplex scheme FD-OMAC, increasing the IEEE-MAC CFP spectral efficiency. 2. We suggest changes in the IEEE-MAC beacon frame for the implementation of FD-OMAC without increasing the overheads. 3. We compare FD-OMAC with IEEE-MAC using a standard GTS allocation scheme. 4. We analyze the performance both in terms of the throughput and the delay. 5. We implement the basic structure of the IEEE-MAC superframe, considering both the CAP and CFP. In addition, we use indirect transmission (discussed in section II). We compare our work with IEEE-MAC, while we compare works of various authors who have worked on modifications of MAC based on salient features and corresponding outcomes in Table 1.We have used mathematical analysis to prove the validity of our simulation model. 6. We present a novel superframe structure using two beacons (macro and micro) for a network containing multiple OWC access points. 7. We incorporate a novel algorithm for allocating a minimum number of time-slots to the OWC access points in a network for interference-free channel access. We do not consider the backward compatibility of fullduplex and half-duplex systems in our work. A half-duplex user device works without any problems in the CAP of the FD-OMAC. Therefore, the device discovery, association, dissociation, and the other MAC-related functions stay unaffected. However, allocating GTS to a half-duplex user in the different superframe slots for upstream and downstream communication is outside the scope of our work.
The paper outline is as follows: Section II briefs the IEEE-MAC; in section III, we outline the proposed MAC scheme, and in sections IV and V, we evaluate the FD-OMAC performance using comprehensive simulations. Section VI and VII provide the performance of FD-OMAC in a multiple access point scenario in comparison to IEEE-MAC. We discuss use cases in section VIII. Finally, section IX concludes our work.

II. IEEE 802.15.7 OWC-MAC OVERVIEW
An OWC network consists of two main types of devices; fullfunction devices and reduced-function devices. A fullfunction device can act either as a network coordinator or a user device, while a reduced-function device can only act as a user device. The coordinator, usually mains powered, acts as the chief controller for global synchronization, transmitting beacon frames to identify, associate, and perform other network control functions. The devices, also called end nodes or users, have simple, power-constrained functionalities as the user devices are generally battery-operated.
The IEEE 802.15.7 standard offers three basic network topologies: peer-to-peer, star, and broadcast. A set of full-function devices can form a peer-to-peer topology. For communication, one of the peers acts as a coordinator and the other as a user. In a star topology, a coordinator or access point (AP) initiates a network to start communication with other users. The standard also suggests broadcast mode, i.e., unidirectional communication between the devices.
The IEEE 802.15.7 standard specifies PHY and MAC layer for OWC networks. According to data rate and application, there are six different types of OWC-PHY: PHY I to PHY VI. PHY I is designed for low rate (a few hundred kbps) outdoor applications. PHY II and PHY III are intended for high rate (tens of Mbps) indoor applications. The difference between PHY II and PHY III is that PHY III supports color shift keying (CSK). PHY IV and PHY V are proposed for very low datarate (bps to few kbps) discrete and diffused light sources. PHY VI (bps to a few hundred kbps) is aimed for communication through video display or optical camera communication. IEEE-MAC layer supports beacon-enabled and non-beaconenabled operational modes. The former is slotted, i.e., employs periodic transmission of beacon frames, whereas the latter is non-slotted. Our work considers the beacon-enabled mode, as it allows GTS allocation in a superframe structure. PHY I, PHYII, PHY III, and a few applications of PHY VI may use beacon-enabled mode and may choose to use our proposed full-duplex GTS allocation scheme. PHY III and PHY VI may use colors for additional features in FD-OMAC and is outside the scope of our work. Our focus is on indoor applications where multiple access points may be located within close vicinity and use a simple modulation scheme. We choose PHY II using on-off keying (OOK) for our implementation scenario. We do not discuss PHY any further since our work is related to the MAC layer.
We have briefly introduced the superframe structure in section IA. The active period consists of sixteen equal time slots, also known as superframe slots. The coordinator sends a beacon frame to notify the beginning of a superframe. The users contend in the CAP to access the channel using the CSMA/CA technique. Since the users are battery-operated, their receivers are active only for beacon reception, receiving CSMA/CA indirect transmission and allotted GTS reception. A user can commence upstream transmission in the CAP or during its assigned GTS in the CFP. The coordinator cannot transmit downstream data on its own during the CAP. Instead, it broadcasts the downstream data pending information in the beacon frame. On receiving the beacon, the user starts the data extraction (of the pending data) process by sending a data request command packet. After receiving the data request, the coordinator responds with an acknowledgment (ACK) frame and delivers downstream data via CSMA/CA in the CAP. Such a user-initiated coordinator transmission is termed indirect transmission. In the CFP, the coordinator assigns one or more superframe slots (called GTS) to the users for contention-free access. Section IIA details the GTS allocation method.
Two variables, beacon order ( ) and superframe order ( ) decide superframe slot length (SS), active period or superframe duration (SD), and superframe length or beacon interval ( ), in optical clocks as: there is no inactive period in a superframe. In Figure 1, the beacon frame lies in the 1st superframe slot (at the starting of the superframe), and the CAP length is slightly less than ten superframe slots. The CFP contains three GTS of different sizes. Since ≠ , there is an inactive period. The CAP length keeps decreasing with more number of GTS allocations. For further discussions, we consider only the active part of the superframe, which means = .

A. GTS ALLOCATION PROCESS
The higher networking layers of the users are responsible for initiating a GTS allocation process by transmitting a GTS request to the coordinator. These layers estimate the necessity of the GTS based on user service requirements. A GTS request, sent in CAP, contains information about the number of superframe slots required for the user and the data flow direction. When the coordinator receives the GTS request, it immediately acknowledges it. It then assigns superframe slots for the GTS depending on the GTS request requirement and the currently available resources in the superframe. The coordinator transmits the GTS assignment information in the GTS list of the next beacon frame. The GTS allocation starts from the right to the left of the superframe and must occupy contiguous superframe slots. The coordinator can assign at most seven GTS in a superframe, and a user can request a maximum of two different GTS, one for upstream (US) and one for downstream (DS) separately. The coordinator accepts the request on the first come first serve (FCFS) basis and does not allocate a GTS if there are already 7 GTS in the CFP or insufficient resources (when the CAP length equals minimum length, 440 optical clocks per standard). Figure 2 presents the US GTS allotment process. DS GTS allotment follows the same procedure.  users already know when they will receive or transmit the data in the CFP and keep their transmitters and receivers active accordingly. As a result, the full-duplex Wi-Fi protocols cannot be implemented directly in OWC, which are developed for the CAP. However, Wang et al. [35] recognized such a difficulty, and they stressed that the full-duplex in the CAP might only occur between one user and an AP at a time, whereas in Wi-Fi, it can occur between two users and an AP at the same time. Therefore, Wi-Fi offers higher full-duplex flexibility than IEEE-MAC in the CAP. On the other hand, for IEEE-MAC CFP, both types of full-duplex paths are possible, as displayed in Figure 3. Therefore, our work offers changes over the IEEE-MAC for providing full-duplex functionality in the CFP of the superframe structure.

A. FD-OMAC
A GTS is allotted during the CAP, as discussed in section IIA, for QoS applications. The CAP is usually crucial for exchanging MAC control messages, and multiple users randomly access the channel during this period. Two or more users can sense a channel free simultaneously and start sending the data, causing a collision at the coordinator. Therefore, the receivers usually send an ACK for the successful reception of a packet in the CAP. In contrast, the CFP grants a dedicated bandwidth (collision-free) to a user (in the form of GTS) for either sending or receiving data along with optional ACK exchange. As a result, during the CFP, users access the channel in a predefined manner, i.e. they turn on their transmitter or receiver during their corresponding GTS only. Therefore, the simultaneous data exchange of different users in the US and DS of a CFP is a superior choice. Such an operation is complex during the CAP due to the coordinator's inability of initiating a downstream transmission on its own. The following example further explains the process. Figure 3 presents an example of half-duplex communication during the CAP and full-duplex communication during the CFP. Let us assume that User A requires a DS GTS while User B requires a US GTS, and the coordinator assigns the same superframe slots for User A and User B during the GTS allocation process. User A receives the GTS data till the time 0 whereas User B successfully sends the data by time 1 . Since two parallel communication paths are maintained, the spectrum efficiency of CFP increases. In contrast, when User A sends data in upstream during CAP, the coordinator cannot send data to User B, as User B receiver need not be active. The only possibility is to send downstream to User A, if downstream data is available, as discussed in [35], [36]. Such a communication path is also possible in the CFP, where User A sends and receives the data simultaneously, as shown in Figure 3. Therefore, it is worth noting that the full-duplex versions mentioned in the CAP can only work for the same coordinator-user combination, whereas in FD-OMAC, two separate users and the coordinator can also communicate.

B. BEACON FRAME CHANGES
A coordinator broadcasts the GTS allotment information in the GTS fields of the beacon. Figure 5 shows the GTS fields: specification (1 octet), directions (1 octet), and list (number of GTS × 3 octets). Although the specification field always persists in a beacon frame, the direction and list fields are only present if the AP broadcasts new GTS allocation information. The specification field conveys the list length by the GTS descriptor count (0-7), and the GTS permit flag indicates whether the coordinator accepts new GTS requests. The directions and list fields are present if the descriptor count value is greater than 0. GTS direction mask is a 7-bit field containing the descriptor direction (US or DS). A zero value indicates downstream direction, while one indicates the upstream direction of the allocated descriptor. A descriptor contains the assigned GTS information in the form of user address, starting superframe slot for the GTS, and the number of assigned superframe slots. The descriptors make up the list.  Since FD-OMAC doubles the spectrum efficiency of the IEEE-MAC CFP, it can support up to 14 GTS (7 US and 7 DS). Therefore, we choose the GTS descriptor count field as 4 bits in the proposed beacon frame. GTS permit bit, which depicts whether the coordinator accepts GTS requests or not, is separate for US and DS GTS, as depicted in Figure 6. The directions field contains the count of US and DS descriptors of the list. The list field is unchanged. DS GTS descriptors, however, follow US GTS descriptors. Therefore, the beacon overhead length stays unchanged in the proposed beacon frame.

IV. PERFORMANCE EVALUATION
For performance evaluation, we refer to [41]- [43]. As upper networking layers of users notify GTS requirement (described in section IIA), the IEEE-MAC does not provide any GTS request size selection method. Therefore several authors have proposed GTS allocation schemes for increasing the throughput of IEEE 802.15.4 [42], [43]- [44], also suitable for IEEE-MAC. The authors mainly considered two parameters for assigning the GTS length: delay bound and burst tolerance of the incoming traffic at a node. They further used network calculus for calculating GTS length and throughput while complying with the chosen QoS parameters. However, our simulation approach is generic, where we choose offered load at a user for requesting GTS length. We compare our simulation results with the analytical results of the network calculus.

A. NETWORK CALCULUS
Network calculus [41] provides the theory for analyzing deterministic queuing systems of the computer networks. There are two essential curves: an arrival curve and a service curve. The arrival curve ( ) represents upper bound to the cumulative data arrival function ( ) at a node such that The arrival curve ( ) in Figure 7, has average arrival rate and burst tolerance. The curve signifies that the maximum incoming burst size is bits while the average rate of incoming traffic is not more than bits/s over a long period of time. Such a limited peak flow is generally known as a constant bit rate (CBR) traffic flow. The service curve ( ) is the minimum guaranteed service to the arrival function ( ) at bits/s. The service curve is a minimum bound to the cumulative service function curve * ( ) such that * ( ) − * ( ) ≥ ( − ), ∀ ∈ [0, ]. The maximum delay encountered by a packet is the highest positive horizontal distance between the arrival curve ( ) and the service curve ( ). Therefore, the delay is finite only when ≤ . The maximum positive vertical gap between ( ) and ( ) is the maximum buffer requirement at a node. Mathematically, an arrival curve ( ) with burst tolerance and average arrival rate is written as: Service curve ( ) for the arrival curve ( ), with as the constant service rate, and as the maximum latency for the burst waiting for service, is: where ( ) + = max(0, ). The guaranteed delay bound ( max ) is: The required buffer size (in bits) at a user is: = + (7) Koubâa et al. [42] present a more accurate service-delay bound for the IEEE 802.15.4 cumulative GTS service function. Kurunathan et al. [38] further adapt the analysis for the IEEE 802.15.7 systems. The cumulative GTS service function * ( ) is a staircase function. Figure 8 (adapted from [42] and the same is gratefully acknowledged) displays the cumulative service function for the GTS length of 1, 2, 3 superframe slots, with respective service curves 1SS (t), 2SS (t), 3SS (t), and respective delay bounds 1max , 2max , 3max for an input arrival curve of slope . , , and are the superframe slots duration, average transmission time and average idle time per superframe slot of the GTS. is the beacon interval or superframe length (in sec) and is the channel data rate. One step of the staircase service function has been expanded in Figure 8 to show the relationship between , , , and . Therefore, the guaranteed bandwidth provided by a GTS of superframe slots is: Buffer bound VOLUME XX, 2021 The maximum latency for the service is: The maximum guaranteed delay bound by the service curve SS (t) is:

B. SIMULATION ENVIRONMENT
We use Riverbed Modeler version 18.8 for the simulations. The simulation environment consists of an access point and ten users in a star topology. We consider a standard [5] channel data rate of 48 Mbps and an optical clock rate of 120 MHz for our work. Here, the forward error correction scheme of RS (64, 32) and run-length limited code of 8B10B converts 48 Mbps data to on-off keying (OOK) data of 120 Mbps (same as clock rate). Therefore, we divide the parameter by the optical clock rate to convert optical clock units to time (s) units. We use different wavelengths for upstream (infrared) and downstream (visible) as it suits an indoor multi-user environment [9]. Table 2 summarizes the essential simulation parameters. We use beacon-enabled mode with acknowledged CAP transmissions with busy tone [33] and unacknowledged CFP transmissions. The superframe comprises only of the active period and no inactive period, i.e., = . The beacon frame and minimum CAP time are one superframe slot for our simulations (conforms to the standard). Therefore, the maximum length of the CFP can be 15 superframe slots. Five users out of 10 users require US GTS and the other five users need DS GTS. The AP assigns GTS on an FCFS basis. We assume the incoming traffic to be Ethernet frame payload encapsulated by IEEE-MAC and OWC-PHY overheads. Therefore, the maximum OWC-PHY packet size can be 1523 bytes (PHY header 13 bytes, MAC header 10 bytes, and payload of 1500 bytes). An unacknowledged packet transmission (packet size greater than 18 bytes) in IEEE-MAC follows long interframe space (LIFS = 400 optical clocks) for adjusting receiver MAC processing delays. A user must transmit or receive a maximum OWC-PHY packet size in one GTS along with the required interframe spacing. Therefore, GTS request length is affected by maximum OWC-PHY packet size ( ) and rate of the arrival curve. The length of the buffer at the network interface card (NIC) depends upon the device driver. A high value of buffer causes buffer bloat issues, while a low value causes packets drops. We consider generic buffer size ( ) of 50 packets [45] used in Wi-Fi device drivers. The per-user US or DS traffic arrival rate varies between 0.96 Mbps (4.8 Mbps/5) and 9.6 Mbps (48 Mbps/5) for a normalized offered traffic load of 0.1 to 1. We use a constant bit rate traffic model where the interarrival time between the fixed-length packets is constant.

C. ANALYTICAL CALCULATIONS
A user application knows the required average arrival rate of the US or DS traffic, hence demands superframe slots in a GTS. We discuss the method the user employs for choosing in this section. The service time ( − ) required for a packet is: where is the transmission time of a packet and ℎ is the associated overhead for transmitting a packet of size (in bytes). and ℎ are given below: is the time between successful reception of an ACK after transmitting a packet. Since the work is for unacknowledged data transmission, we do not expect an acknowledgement after is the time equivalent of . We solve (11) for our simulations as follows, and we consider =1523 bytes in this subsection: 48×10 6 + 400 120×10 6 = 0.000257 s The average packets in an superframe slot of superframe slot GTS can be given as: where floor operator ⌊ ⌋ rounds down a real number to its nearest integer value. We calculate and (displayed in Figure 8) for an superframe slot GTS as follows: A user chooses the minimum value of such that the service curve slope is equal to or greater than the slope of the arrival curve. Using (8) We solve (17) for different values of and offered load of a user to receive different values (Figure 9). It can be seen that even at lesser loads, a user requires two or more superframe slots per GTS at lower values (< 10). The reason is that the transmission time for the chosen (1523 bytes) is more than a single superframe slot duration. Let us consider the case of = 7 where 5 superframe slots are required per GTS at all the load values. Therefore, AP connects only 3 users (3 × 5 = 15 superframe slots) in the CFP throughout the simulation causing underutilized resources. Hence, the plays an important role in selecting and deciding the throughput in the CFP. We perform analytical calculations for the delay and the CFP throughput as follows:

1) DELAY CALCULATIONS
The packet delay is the time difference between the packet arrival time at the source (transmitter) queue and the reception of its last bit at the destination (receiver). We can calculate the average delay per packet in CFP for the associated users using . Let us call GTS duration ( ) the service time, and the rest of the superframe time ( − ) the buffering time. However, the queueing buffers determine the actual buffering and service times. It may be possible that the duration ( − ) is high, causing the buffer overflow. To consider such cases, let us say the buffering time is and the service time is , as shown in Figure 10. for superframe slot GTS, and, consequently, the service time is = − . The average service time in the GTS is /2, and the transmission time for each packet is . The following formula provides the average delay calculations: Equation (20) presents an approximate delay analysis and captures delay trends of up to 3 significant figures. We neglect the factor of delays of the unserved packets arriving during the GTS (if arrival is between − − and ), and channel delay (ns) in our delay calculations.

2) THROUGHPUT CALCULATIONS
Based on (17) where 15 marks the maximum number of superframe slots that can be allotted in the CFP (as at least one superframe slot out of the total 16 superframe slots is required for sending beacon and the CAP). Similarly, for FD-OMAC, A total of ( ) packets receive service during CFP. We calculate throughput ( ) of the CFP as follows: where the numerator signifies the number of bits received service in the CFP, and the denominator denotes the superframe duration (in s). Normalized throughput is the throughput in reference to the channel data rate . It can be given as: where the factor of two is for considering both upstream and downstream channel.

V. SIMULATION RESULTS
In this section, we initially compare the simulation results with the analytical results of IEEE-MAC. After that, we present a comparison of FD-OMAC and IEEE-MAC. We simulate our network for between 7-14. For smaller = values, is small (for = 6, = 0.512 ms), but it implies a frequent beacon broadcast. Therefore, MAC overhead increases as decreases. From (9), service delay is directly proportional to the and therefore, the service delay in the CFP reduces with decreasing . Considering the trade-off, we chose our simulations from = 7 for which the average delay is less than 1 ms and up to = 14 for minimum beacon overhead. In Figure 9, the requested superframe slots per GTS are dependent on = 1523 bytes. For a fair comparison, we choose a smaller value of = 103 bytes (payload = 80 bytes) such that the requested GTS slots are no more dependent on the (for values between 7-14). Moreover, most IoT applications [46] and real-time voice applications [47] use smaller packet sizes and lower data rates during communication. GTS allocation algorithm i-GAME [42], [43] removes the limit of GTS allocation in the IEEE 802.15.4 CFP for low-rate applications and is also suitable for handling low rate applications of OWC-MAC. However, we assume a high data rate requirement per user (0.96 Mbps to 9.6 Mbps).

A. IEEE-MAC SIMULATION AND ANALYTICAL RESULTS
In our network, ten users request GTS where = = 5. IEEE-MAC, however, can only handle 7 GTS per superframe. As a result, at least three users are not assigned a GTS and must communicate in the CAP. Figure 11 displays the number of users connected in the CAP and the CFP at different load values and is plotted using (21). Because the is small enough to pass through a superframe slot for all the considered values, the user division among the CAP and the CFP remains same for all values.   Figure 12a, the throughput is low for higher values because the buffering time per beacon interval increases with increasing superframe size. Since we use limited buffers, we observe packet drops for > 9. The throughput curve declines at the transition points (offered load = 0.6, 0.8) when the number of superframe slots per GTS grows, leading in fewer users connected to the CFP (refer section IVC throughput calculations). The slope of the service curve at these transition points is higher than the arrival rate per user, and hence, the assigned resources (GTS) are underutilized. At the points after transition (offered load = 0.7, 0.9), we notice a positive slope as the value of per GTS stays unchanged while the arrival rate per user increases, resulting in improved utilization of the same resources. Since IEEE-MAC is half-duplex, normalized network throughput stays below 0.5. Figure 12b displays the average delay on a logarithmic scale. For larger values, the superframe size grows, and more packets get queued in the buffer. Therefore, the average queuing delay increases as more packets wait for a longer superframe to get their service. It can also be validated from (20), where the average delay is directly proportional to the number of queued packets and the superframe size ( ). Furthermore, the delay decreases with increasing network load. It happens because, with increasing load, per-user GTS size (superframe slots per GTS) increases and the user has to wait for a smaller part of the superframe to get its service. Equation (20) supports it as the delay and GTS demand size hold a negative proportional relation.
Our goal is to examine the overall network throughput and determine the optimal value for achieving maximum throughput.  Figure 13 shows the simulation findings for the total normalized throughput considering both the CAP and CFP transmissions. The users that do not receive service in the CFP send their data in the CAP. A significant increase in the throughput is visible at the points where the CAP length is longer (load 0.8 to 1). For load values of 0.8 to 1, each user demands 4 superframe slots per GTS, and therefore, only 3 users are served in the CFP, resulting in the CAP length of slightly less than 4 superframe slots (first superframe slot contains the beacon frame). Our network performs best for = 9 for the considered simulation parameters.

B. IEEE-MAC vs FD-OMAC
We compare our results at value of 9 for IEEE-MAC and FD-OMAC since IEEE-MAC attains the highest throughput at this value. Figure 14a presents the number of users not assigned GTS at different load values. It is clear from the results that FD-OMAC can assign more users at the same load since it increases spectral efficiency. Figure 14b  From the plot, we tabularize spectrum efficiency at different load values in Table 3. We notice that FD-OMAC increases the total spectral efficiency by 90.7 percent. The results are expected since FD-OMAC can perform full-duplex communication in the CFP.

VI. MULTIPLE ACCESS POINT SCENARIO
In this section, we discuss the performance of the FD-OMAC with multiple APs. The methodology of interference mitigation in the multi-AP scenario has been discussed by [48] using the time-division multiplexing scheme, wavelength division duplexing, and color graph approach. We propose a new scheme using macro-beacon and micro-beacon for CAP Normalized offered load and CFP to implement our FD-OMAC using a novel microbeacon time-slot allotment algorithm. Figure 15 presents a multi-AP deployment scenario causing DS interference. We are considering static users in the network. A master controller (MC) synchronizes all the APs in the network to perform the following functions.

A. MICRO-BEACON SYNCHRONIZATION
For a user device to join a network and work correctly, the user must know the start and end of a superframe structure, the CAP, and the CFP. All this information is embedded in the beacon frame. However, if a user is in the interference region (shown in Figure 15), it may never receive a DS beacon. To deal with the problem, the MC allocates different time slots for sending DS interference-free beacons. MC interacts with the APs at the network layer to define their micro-beacon start time while APs update their microbeacon frame lengths to the MC. For that, the MC uses the cell search algorithm defined in the standard [5]. After using cell search (considering each AP as one cell), the MC has a relation matrix (RM) as to which users are present under which APs. . Therefore, we start with an AP ( ), and assign the different time-slots to its neighboring APs such that the previously assigned time-slots to any of the neighboring APs' neighbors are not conflicted. A user present within the interference region defines the neighbor relation of the APs. As a result, if there is no user in any network interference region, all the APs work independently and see no neighbors. The algorithm loops through allocated APs from the array which is not in served AP array (line 23) after the first assignment (line 5) of . It ensures that the algorithm moves from a dense user concentration to a sparse user concentration. The algorithm also takes care of multiple unrelated user concentrations (disconnected graph) as it traverses every AP in the network (lines [24][25][26]. In the end, we receive output array that contains the assigned interference-free micro-beacon time-slot numbers in the range [1, ]. The MC receives micro-beacon time-slot assignment array from algorithm 1. To calculate the time-slot lengths, the MC loops over all APs assigned the same micro-beacon timeslot to get the maximum beacon length for that time slot. This way, MC gets the maximum beacon length corresponding to each micro-beacon time slot and defines the start of each micro-beacon time slot. The MC then shares the assigned time-slots and their start times with the APs at the network layer.

B. NETWORK SUPERFRAME STRUCTURE
The MC synchronizes all the APs to start their superframe structures simultaneously. Consider the case of 4 APs A, B, C, and D in Figure 16a, where U1, U2, U3, U4, and U5 are the user devices. User U1 and U4 lie in the interference-free region, while U2, U3, U5 lie in the interference region of (A, C), (A, B, C, D), and (A, B, D). The MC visualizes the superframe at the network level in 3 parts displayed in Figure  16b: beacon assembly, macro-CAP, and micro-CAP and CFP. All the APs transmit the same macro-beacon at the start of the superframe. Beacon Assembly: All the users in the network ensure to receive beacon assembly to maintain synchronization. Each AP broadcasts the macro-beacon (received from the MC at the network layer) and a dedicated micro-beacon in the beacon assembly. In addition to the standard beacon information, a macro-beacon defines beacon assembly length (in bytes), end of macro-CAP (measured in superframe slot units), and the MC source address. On the other hand, the micro-beacons contain the information dedicated to the AP, such as the CAP and the CFP related information. The MC allocates microbeacon time-slots such that they are non-interfering. We display interference-free micro-beacons for APs A, B, C, and D on the left side of Figure 16b in orange color. Therefore, the macro-beacon and micro-beacon structures are the same as the FD-OMAC beacon (defined in section IIIB). However, for the macro-beacon, three extra bytes are sent in the beacon payload to define the length of the beacon assembly, and the reserved bit (b12) [5] of the superframe specification field specifies that the MC is sending the beacon. Macro-CAP: All the network APs share a common macro-CAP. Its length is min( 1 , . . , ), where is the CAP length for ℎ AP in the network containing APs. Therefore, it is a network-level contention period to ensure that every user (new or old) can contend throughout the network without interfering with the CFP. The busy tone solves the hidden node problem during the macro-CAP. As a result, a user present in the interference region may simultaneously initiate the busy tone of two or more APs while transmitting its data. Consider the case of 4 APs of Figure 16a. When user U5 transmits US data in the macro-CAP, APs A, B, and D send a busy tone as it lies in the interference region of the above 3 APs. Micro-CAP and CFP: The remaining part of the superframe structure after removing the beacon assembly and macro-CAP form the micro-CAP and CFP. Only the connected users who are not experiencing DS interference may use micro-CAP for random access. We can calculate the micro-CAP start time and end time by using the beacon assembly information. A macrobeacon defines the macro-CAP length, while a micro-beacon defines the AP CAP and CFP length. Since macro-CAP is the minimum CAP length of any AP on the network, the macro-CAP length is less than or equal to the CAP length. As a result, the micro-CAP start time coincides with the macro-CAP end time, and the micro-CAP end time coincides with the CAP end time. The CFP follows the CAP. The CFP contains GTS such that no collisions or interference occur in the US and DS. For example, user U3 is connected to AP A and requests a DS GTS while it is in the interference region of all the APs of Figure  16a. The MC assigns the GTS to U3 and blocks the corresponding resources of AP B, C, and D in DS to ensure interference-free GTS, as shown in Figure 16b. It allocates the GTS to a user under maximum interference on the right side of the CFP (U3, U5 in our example) to minimize the CFP and maximize the macro-CAP.

VII. MULTIPLE ACCESS POINT RESULTS
We choose the multi-AP scenario of Figure 16a for comparing the network performance. In Figure 16a, the network has five users, where 4 users U1, U2, U3, U4 demand for DS GTS, and the 2 users U1, U5 demand for US GTS. We evaluate the multi-AP scenario using the methodology given in section IVC for IEEE-MAC, FD-OMAC, and IEEE-MAC with interference mitigation (IM-IEEE-MAC). The IEEE-MAC does not define interference mitigation techniques and divides the network into smaller cells (formed of multiple APs), such that no user is in the interference region. Therefore, all the APs of the network displayed in Figure 16a form a single cell for IEEE-MAC. For FD-OMAC, we present interference-free GTS allocation in Figure 16b where all the APs are treated as different cells. Some of the GTS are filled with patterns to present the effect of interference-free allocation in the CFP. We also consider the case of interference mitigation along with IEEE-MAC, where the network uses the concept of beacon assembly and allocates half-duplex interference-free GTS. Therefore, a network with IM-IEEE-MAC treats our example scenario as a network of 4 cells but assigns halfduplex interference-free GTS. We compare throughput by varying offered load for our multi-AP scenario in Figure 17. We vary per-user DS traffic arrival rate between 1.2 Mbps   Table 4 provides the number of superframe slots required per GTS for each US and DS user at the transition points of Figure 17. Although the GTS are assigned on an FCFS basis, our plot considers the best possible GTS assignment for maximum throughput in all three MACs. IM-IEEE-MAC closely follows IEEE-MAC but is always able to support extra user U4 using interference mitigation. FD-OMAC can fulfill all the GTS demands but fails when US users U1 and U5 start demanding 8 superframe slots per GTS at a network load of 0.8 because the maximum number of superframe slots that can be allocated to the CFP is 15 only.  More simulation studies are required for more extensive networks to understand better the benefit of interference mitigation in multi-AP scenarios and is a matter of future work. We must note that we have considered the case of static users. However, macro-CAP may be used to perform mobility-related functions and is also to be considered in the future.

VIII. USE CASES
FD-OMAC provides a method to increase spectral efficiency in the CFP and supports media access in multiple-AP scenarios. Therefore, FD-OMAC can provide better performance in the OWC devices of the following systems: Dense user environments: Since FD-OMAC considers both hidden node and downstream interference, it can support standalone OWC networks. Furthermore, OWC has the potential of providing a very high data rate per unit area. Therefore, we can deploy it in scenarios with higher user concentration. Offices, airports, schools, and conference halls are examples of such networks. IoT: Mobile cellphones, laptops, desktop computers are no longer the only devices that require continuous internet connectivity. The concept of home automation and smart cities is spawning a slew of internet-connected IoT applications. Most of these applications require periodic transmission or reception of data, and therefore, GTS of the CFP may find its use for such applications. FD-OMAC can increase the CFP throughput and support up to 14 such devices per superframe. Radio-frequency (RF) sensitive environments: OWC does not produce RF interference and is suitable for RF-sensitive environments such as hospitals, airplanes. FD-OMAC may be beneficial since it provides better performance in the multiple-AP scenario. Security: Wireless communication in RF poses a security risk as radio waves can pass through walls. Therefore, many government organizations, banks, companies, and defense units rely on wired networks to exchange sensitive data. OWC may be used in such organizations as light cannot pass through walls, and therefore, the network is available only within the office premises. FD-OMAC can be used in such scenarios since it supports a standalone multiple-AP OWC network.

IX. CONCLUSION AND FUTURE WORK
IEEE 802.15.7 proposes a half-duplex MAC for OWC networks, but OWC hardware can perform full-duplex communication. This paper contributes by proposing a novel full-duplex optical MAC (FD-OMAC) with slight modifications in the standard, as outlined earlier, for increasing spectral efficiency in the contention-free period. We also present a modified beacon frame structure for supporting FD-OMAC and discuss the evaluation methodology of throughput and delay. Our simulation model establishes the feasibility of full-duplex communication in the IEEE-MAC CFP. The simulation results indicate that the proposed approach enhances the OWC-MAC spectral efficiency by 90 percent. Furthermore, FD-OMAC can support fourteen GTS in comparison to seven GTS per superframe of IEEE-MAC.
We conclude that the choice of superframe order ( ) depends upon the maximum packet size for proper utilization of the resources. In our simulations, the throughput is low for values higher than 9 as the buffer overflows, and we notice packet drops. The throughput dips at the load values of 0.6 and 0.8, since the number of superframe slots per GTS increases while the nodes linked in the CFP decreases, resulting in underutilization of the GTS resources. Furthermore, the service delay in the CFP grows with increasing value, and hence average delay increases as well. Our findings in this paper are based on unacknowledged transmission in the CFP. In the future, we will discuss and assess acknowledgementbased transmission in FD-OMAC.
Additionally, we present the FD-OMAC structure in a multiple access point scenario using macro-beacon and microbeacon concept. A novel micro-beacon time-slot assignment algorithm has been proposed in this paper. This algorithm provides methodology to assign the minimum number of timeslots to the access points for sending interference-free beacon information. The mobility and handover can be explored in future by using macro-CAP introduced in our work.
Our work focused on the CFP of the IEEE-MAC. However, the CAP can be analyzed for various CSMA/CA parameters. The maximum permitted latency, packet sizes, and the type of applications can all influence the choice of various and beacon order ( ) values for the network, and they can be studied in the future. OWC may support multiple traffic types. Therefore, a study of priority-based traffic differentiation in the network can provide better service to latency-sensitive applications.