1. Introduction
Challenges posed by communication networks [
1] are attributed to the rapid development of social informatization, the continuous expansion of network users, the constant improvement of service demand and the emergence of new services [
2]. Despite the development of Internet and wireless network technologies, the acceleration of Internet globalization and the increase in bandwidth [
3], most fixed and mobile communication services, such as international and transoceanic long distance services, use optical fiber and cellular communication in current. Satellite networks provide worldwide network access services to users and still have indisputable advantages in many fields. For example, satellite communications remain as the main mode of military communications and the most stable means of emergency communications in areas damaged by natural disasters. Satellite communications also play a crucial role in oceans, disaster and complex terrain areas, as well as places without basic network infrastructure. Meanwhile, satellite communication technology has been widely developed through space explorations and aerospace activities [
4].
The main feature of satellite communications is distance. Distance between communicating users does not considerably affect the quality of communication because of advantages over a long distance, but prolonged communication directly affects a user’s communication experience; and this effect is one of the issues that satellite network’s multiple access technology should solve [
5]. As such, satellite resources have not been properly used when a large number of users access the satellite communication services simultaneously. However, satellite communication resources are limited. Multiple access should consider various factors, such as how to access users, select the communication frame structure and apply satellite resource allocation strategies. Well-designed satellite network multiple access protocols should also be further investigated.
Multiple access protocols involve user access and resource allocation to ensure the quality of service and maximize the use of satellite resources. The three main ways of multiple access protocols are based on fixed bandwidth allocation, random access and bandwidth allocation for demand assignment. In fixed bandwidth allocation, each terminal is allocated a certain amount of bandwidth. Because the channel allocation is static, this way cannot adapt to the change of source. Fixed bandwidth allocation easily causes throughput degradation in the case of more users, and the utilization rate is low in the case of fewer users [
6]. For random access, it can satisfy the dynamic demand of channel resources in the case of low channel load, but in the case of higher channel load, more channel resources will be wasted because of the intensification of packet collisions. As the Aloha protocol, the packet in the transmission process may collide with the incoming packet at the next time and produce a delay. Although the possibility of collision is reduced by the allocation of the time slot in the improved time slot Aloha protocol [
7,
8], the channel instability still has not been properly solved. In bandwidth allocation for demand assignment, the terminal or ground station sends the uplink to the satellite according to its own actual needs. It not only satisfies the user’s demand for the actual bandwidth, but also does not waste the channel resources. However, due to the requirements of appointment and slot allocation, delay is the biggest problem. Therefore, in order for the data to be transmitted in a complete and orderly manner and to make the transmission delay as small as possible, the combination of the advantages of these three ways is typical.
Frequency division multiple access (FDMA), time division multiple access (TDMA) and code division multiple access (CDMA) are based on the fixed allocation multiple access protocol. In fixed allocation, a user occupies a channel to transmit signals, and a specific physical channel is related to multiple access methods. For example, FDMA, TDMA and CDMA channel performance are associated with bandwidth, timeslot and pattern, respectively. Bandwidths, timeslots and patterns are three forms of multiple access channels [
9].
In bandwidth-based demand assignment, satellite network multiple access protocols mainly include the combined free/demand assignment multiple access (CFDAMA) protocol [
10] and the burst targeted demand-assignment multiple access (BTDAMA) protocol [
11]. These two protocols are based on a classical TDMA approach. CFDAMA improves the frame structure of TDMA based on the demand assignment distribution and free allocation method. The principle of CFDAMA and BTDAMA considers a user’s timeslot to apply the information about demand assignment allocation. Thus, the number of timeslots allocated to a user from a system with remaining timeslots is then allocated according to the requirements. These remaining timeslots are freely poll allocated to all active user terminals, and channel resource allocation is reasonable because these protocols have demand assignment and free allocation. The CFDAMA protocol can provide an enhanced communication system, but the communication delay remarkably increases with high service volume. The BTDAMA protocol separates user access requests from satellite resource allocations. Multiple applications are time consuming because burst service terminals continuously occupy channel resources after transmission is completed. Nevertheless, this protocol can achieve good communication performance when burst services are transmitted. Studies on access protocols are based on these two classic protocols, which consider the improvement of the utilization ratio and the purpose of resource sharing. These protocols are mainly enhanced in terms of user request and satellite resource allocation.
Yu et al. made improvements to the channel assignment process and added a weighted free allocation table [
12]. When there are no remaining slots after allocation according to the reserved slots, the terminal sending the reservation request is weighted to allocate the data slots so that each reservation terminal can get a certain data slot after the system is under high channel loading. Using the booking method, the terminal sends a reservation request to the scheduler by predicting the change trend of the source information, which makes the CFDAMA protocol improve the delay performance in the case of burst source transmission [
13]. According to different types and different priorities of services, Xin et al. designed a dynamic data frame format for different services to provide the most appropriate access [
14].
Xin et al. combined the reservation demand and pure demand assignment allocations in [
15]. Before a terminal receives an assigned timeslot, available timeslots for previously generated data packets should be reserved, and queuing delay should be resolved. Distribution involves multiple polling allocation methods by grouping users [
16] to provide different allocation rates for various groups of users. Thus, numerous remaining timeslots can be reserved for high-priority users, providing them with high-quality transmission services.
Demand assignment distribution is the most commonly-used access method by the existing satellite networks. This distribution can allocate demand assignments according to each user’s timeslot request so that the number of users can be changed regularly without wasting channel resources. However, the multiple assignment protocol for the existing satellite network is limited by its inability to satisfy the demand of multimedia services. For example, after a user sends a request for a timeslot, it needs to wait for a certain period before time allocation is received in the order or mechanism allocated to the user when the satellite allocates the timeslot. Therefore, the existing multiple assignment technology for satellite networks should be improved by combining it with multiple allocation mechanisms to enhance the utilization of network channel resources.
On the basis of the achievements and deficiencies of related work, we propose a combined free/demand assignment multiple access-gray forecast (CFDAMA-GF) protocol for satellite network access. In terms of access, the gray forecast method can be combined with the proposed protocol to cause a user who books the number of timeslots to use more than the existing number of bursts. In terms of bandwidth allocation, a user priority allocation method is added to set high priorities for users with high needs and prioritize the allocation satellite channel resources.
The rest of this paper is organized as follows.
Section 2 briefly introduces the combined free/demand assignment multiple access (CFDAMA) protocol.
Section 3 presents the grey forecast model for network access reservation. The overall design of the priority sorting bandwidth allocation method is presented in
Section 4. The CFDAMA-GF frame structure and algorithm flow are depicted in
Section 5. The experimental verification and analysis are presented in
Section 6. Finally, conclusions and future work are derived in
Section 7.
2. Combined Free/Demand Assignment Multiple Access
The CFDAMA-GF protocol proposed in this paper is based on a classic CFDAMA protocol. The combined free/demand assignment access to the CFDAMA communication protocol is based on the original TDMA frame that combines the demand assignment distribution with free allocation. The basic principle of CFDAMA is in accordance with a user’s reservation request for allocation, and remaining timeslots are freely poll assigned to all active user terminals [
17].
A reservation table and a free allocation table are stored in a satellite database.
Table 1 shows that the reservation table contains the user ID number of the current timeslot request, the number of applied timeslots and the priority. The free allocation table shown in
Table 2 includes all of the user ID numbers and the number of allocated timeslots for each user.
After a user sends an initial request, the satellite initializes reservation and free allocation tables in accordance with the received request information. In terms of the number of timeslots that each user applies for prioritizing, the more the timeslots there are, the higher the priority will be. In terms of the reservation schedule, the satellite allocates each user according to individual needs from top to bottom. Demand assignment indicates that the satellite allocates few timeslots for the current user to apply for the number of timeslots. After the allocation of one user ends, the user’s information is deleted from the reservation table. In the free allocation table, the user’s information is moved to the lowest side, which runs in a loop until the demand assignment allocation table is empty. In the demand assignment, the satellite allocates one timeslot from top to bottom for each user in the free allocation list until no remaining timeslots exist. After the time slot assignment is completed, the satellite sends the allocated number of timeslots to the corresponding user. If the reservation table is not empty after the demand assignment is allocated, then certain users do not have a timeslot allocated demand assignment. These users’ requests become accumulated in the next frame for processing.
3. Grey Forecast Model for Network Access Reservation
In the CFDAMA-GF protocol, a forecast method is used in the access procedure so that the number of reservation slots currently sent by a user is greater than the number of packets in the current queue to ensure that the packet arriving at the next moment can be sent in time without queuing. In this paper, the gray forecast method is utilized to predict the user’s access request.
In gray system theory, an uncertain system with known information is considered as a research object [
18]. Although the known information is extracted and developed, this theory makes a scientific forecast through some inherent laws of developments. In summary, the gray system contains both known and unknown information systems or uncertain information systems. Gray forecast is one of the main contents of gray system theory, and it can be understood as a forecast of a range of time-related processes within a certain range. Although this process appears to be random and complex, it has a certain order or boundary, so the process of data collection shows potential for law development.
The most commonly-used model of the gray process is the grey model GM(1,1) forecast model. With this model, the differential equations of the original sequence are solved, and some sequences that can approximate differential equation models are built for other sequences. A certain inherent quality exists because of self-similarity in network data flow, and GM(1,1) can be based on a small amount of known information modeling and prediction and be suitable for the network source forecast in this paper. The modeling process of the gray forecasting model is as follows:
If
is the original sequence, then the original form of the GM (1,1) model can be written as Equation (
1).
where
a and
b are the development coefficients and gray actuating quantity, respectively. An accumulation generation of the original quantity is shown in Equation (
2).
where
.
The mean generation sequence with consecutive neighbors of
is depicted in Equation (
3).
where
An accumulative matrix
B and a constant vector
Y are illustrated in Equations (
4) and (
5), respectively.
If
a is a gray parameter, then the least squares estimate of the gray parameter
of Equation (
1) is satisfied with Equation (
6).
Solving the time response function of Equation (
1), we obtain the following Equation (
7).
Source forecasting is executed. The reducing value
shown in Equation (
8) is the predicted value of the
moment.
In predicting the bursts of service in this paper, the relevant parameters applied to the gray forecast are as follows:
- (1)
The number of user application slots: N.
- (2)
The number of burst service packet arrivals in each cycle: w.
- (3)
Additional time slot currently required by the i-th user: .
- (4)
The i-th user calculated the number of burst packets at the next moment by using the gray forecast: .
If a user has data packets that should be sent in the burst packet state, the number of the reserved slots of the current user can be known as . is stored in a global array. All of the data in this global array constitute the above-mentioned initial request so that the array stores the number of each reservation request in the first n cycles. Lastly, the gray forecast method predicts the next time for the number of packet as .
4. Priority Sorting Bandwidth Allocation
In bandwidth allocation of CFDAMA-GF, a user priority allocation method is considered to set a high priority for users with a high demand. Thus, a priority ranking algorithm is designed. In the algorithm for prioritizing the bandwidth allocation, the parameters are set as follows:
- (1)
Total number of users in the network: N.
- (2)
The number of users who have reserved slots: n.
- (3)
The number of users who have a reserved slot application and : k.
- (4)
The number of slots assigned to the i-th user by the satellite: .
- (5)
The i-th user’s priority number: .
- (6)
Total number of data slots for one frame: .
- (7)
The number of remaining data slots after allocation of demand assignment: .
In the priority allocation stage for the satellite, the satellite initializes the reservation and free allocation tables according to the relevant information in the previous row of frames after the user’s request is received shown in
Table 1 and
Table 2. The priority is set and sorted according to the number of reserved timeslots of each user. The greater the number of reserved timeslots is, the higher the priority will be. With a large number of reserved timeslots, the demand of the current user is high, and the priority is high. High-priority user information is then stored at the top of the table.
Then, Equation (
9) is used to calculate the number of remaining slots after the demand assignment is allocated.
If
, indicating that there are no remaining time slots, the satellite assigns weighted allocations to the requesting user according to Equation (
10).
If 0, indicting that there are remaining time slots, the satellite allocates the demand assignment to each user according to the reservation table from top to bottom. The demand assignment allocation is the number of timeslots allocated by the satellite for which the current user applies. The user information is deleted from the reservation table, and the user information row is simultaneously moved to the lowest end of the free allocation table. This process continues to loop until the demand assignment table is empty. After the demand assignment is allocated, the satellite allocates timeslot from top to bottom to each user in the free allocation table until no remaining timeslots exist. After the timeslots are allocated, the satellite sends the assigned number of time slots to the corresponding user.
5. CFDAMA-GF Frame Structure and Algorithm Flow
The satellite multiple access algorithm is based on fixed allocation, random access and demand assignment. Traditional fixed allocation and random access multiple access can no longer meet the demands because of diverse services arriving in satellite communication networks and high data rates. The multiple access protocols of satellite communication networks are improved compared to original access protocols, such as the classic CFDAMA protocol, which also enhances the TDMA frame structure. Moreover, optimizing the satellite resource allocation algorithm improves the communication system’s delay and channel utilization. However, the disadvantage of this protocol is the waiting delay when a user gains access to a system, thereby influencing the user’s experience. The CFDAMA-GF protocol proposed in this paper is an improved version of the classic CFDAMA protocol. The gray forecast method is used to reserve a timeslot with the access algorithm, and the satellite allocation algorithm adds user prioritization. Therefore, a fair allocation can be made according to the priority level.
The gray model is used for CFDAMA-GF user access slot reservation and user priority-based bandwidth allocation procedures. This section presents the CFDAMA-GF algorithm flowchart and introduces the frame structure.
The uplink frame of the CFDAMA-GF protocol contains a user’s reservation request information and the data packet sent by users. Each user sends data in the corresponding satellite-designed timeslot. The downlink frame contains the allocation response information of the satellite and the data packet information sent by users. After receiving response information, users can determine the timeslot in a frame when data are transmitted. A delay occurs between uplink and downlink frames, which corresponds to the time when the satellite allocates a timeslot. The frame structure is shown in
Figure 1.
The process of the CFDAMA-GF protocol is mainly divided into two phases, namely multiple access and bandwidth allocation. Multiple users access in the multiple access phase, and the bandwidth allocation phase completes the satellite allocation to accomplish the allocation of bandwidth resources based on a user’s requests. The process is shown in
Figure 2. The detailed steps of the access algorithm are as follows:
- Step 1:
The satellite ID received by the broadcast and “ON” status are loaded into the ACK packet and sent to the corresponding satellite when user data are sent.
- Step 2:
After the satellite receives the ACK packet, it detects whether the ID information matches. If so, the satellite allocates a requested timeslot to the user.
- Step 3:
After the user successfully gains access, the gray forecast model is used to predict the next time packets. According to Equation (
11), the timeslot request is sent to the satellite, that is the service information. The frame structure is shown in
Figure 1.
- Step 4:
The satellite sets the priority number according to the number of users queued in descending order and fills in the reservation and free allocation tables.
- Step 5:
The satellite calculates the remaining timeslots after the allocation according to the reservation table, and the number of timeslots is greater than zero. If so, the timeslots for the reservation table are allocated according to priority. After the allocation is completed, polling freely allocates the remaining timeslots. Otherwise, polling allocates the reservation table according to the weighted distribution in Equation (
10).
- Step 6:
After the timeslots allocated by the satellite are received, the user terminal transmits data and occupies the designed timeslot.
- Step 7:
The user sends an end-to-end flag when the user does not have a data request to send. The satellite deletes the user information from the demand assignment table and adds it to the free allocation table.
6. Simulation Analysis
In this paper, OPNET Modeler is used for experimental simulation and comparison analysis to verify the validity of the proposed access protocol. The simulation parameters are shown in
Table 3. The satellite communication channel model used in this paper is the OPNET Transceiver Pipeline model. The comparison and analysis of the packet stacking numbers of the user queues under the different access protocols and the average communication delay are based on the conditions of different channel loads and numbers of users. The multiple access protocols for the comparison of experimental simulations are the CFDAMA-GF algorithm in this paper, the combined free/demand assignment multiple access-piggy back (CFDAMA-PB) algorithm and the pure demand assignment multiple access (PURE-DAMA) algorithm.
The CFDAMA-PB protocol is also an improvement over the CFDAMA protocol by piggy backing the time slot application information of each user in the uplink frame and calculating the number of time slot subscriptions that the user needs to send in the uplink according to Equation (
12).
where
is the timeslot reservation number that needs to be sent,
is the number of packets that have sent the reservation request, but have not been allocated by the timeslot, and
is the actual number of packets in the user sending queue.
The pure algorithm is called the pure demand assignment method. After the satellite completes the demand assignment, it does not consider continuing to process the possible remaining timeslots related to the CFDAMA protocol.
In order to verify the user time slot occupancy of CFDAMA-FP under the burst source, assume that the current number of users as five and the channel load as 0.1. The time slot occupancy distribution of users under the burst source is shown in
Figure 3. In
Figure 3, the x-label represents the current simulation time, and the y-label is the transmitter busy state, radio transmitter.busy. If the current user has time slot requests or data packets sent, the transmitter is busy with a value of one. At the initial stage of the simulation, the user calculated the number of time slots needed to send the data and added the calculated results to the access control packet to send out through the access slot. As illustrated in
Figure 3, five users occupy five different time slot points, respectively. The interval of each time slot point is about 0.0002 s, which meets the slot slot length in the simulation parameters table.
The trend of changes in the stacking number of queue packets and the average communication delay can be obtained for the channel load within the range of 0.1–0.9, as shown in
Figure 4 and
Figure 5, where the number of access user is constant at 50.
Figure 4 shows the relationship between the number of packets in the user queue and the channel load. The channel load is the average throughput of the system, indicating the burst level of the packets sent by the ON/OFF source model, and the unit is bits per timeslot. The queue packet count refers to the number of queued packets in the user’s send queue. The higher the channel load is, the more obvious the trend of group queues in the user’s queue will be because the total amount of data packets for all current users has exceeded the range of the capacity of the entire satellite system. Thus, it should be queued for transmission at the next moment. When the channel load is small, the queue stacking number of the three protocols almost has no difference because the data packets in the user queue do not need to be queued when the system channel load is small. When the channel load increases, the number of queues in the CFDAMA-GF protocol is significantly lower than those of the CFDAMA and PURE-DAMA methods because the CFDAMA-GF protocol adds a gray forecast method to probe the source when a user gains access, thereby creating a user’s current appointment. The number of timeslots is greater than the number of queued packets in the current queue, ensuring that packets arriving at the next moment can be sent in time without queuing.
Figure 5 shows a user’s average communication delay versus channel load. When the channel load is small, the average delay performance of PURE-DAMA is poorer than those of CFDAMA-PB and CFDAMA-GF because the pure DAMA protocol assigns the demand during the satellite resource allocation process and does not do any processing for the remaining timeslots, thereby saving a part of the timeslot’s resources. The average end-to-end delay performances of CFDAMA-PB and CFDAMA-GF are similar because the data packet intensity sent out by the data source is not high when the channel load is low, and only a few users have data transmission demand. Thus, the satellite allocates these users during the demand assignment process, and all users’ data packets can be transmitted and forwarded within one frame.
When the channel load increases, the burst strength of data packets generated by the source increases, and the number of users with service transmission increases, resulting in an insufficient number of remaining timeslots in the satellite after the demand assignment is allocated. The average delay between the CFDAMA-PB and pure DAMA protocol slightly varies. Moreover, the CFDAMA-PB protocol may cause the users with a large demand to fail in obtaining timeslot allocation in time. The CFDAMA-GF protocol sorts users according to the timeslots’ reservation size from high to low when satellites are allocated by demand assignment. In the next step, the corresponding priority number is set. A high number of users with high reservations corresponds to a high priority. This relationship ensures that the user of the slot reservation request can be allocated in time when the channel load increases. A user with a substantial demand preferentially performs processing. Thus, the average communication delay performance of CFDAMA-GF is better than that of the two other methods.
Figure 6 shows the relationship between the average of communication delay and the number of users. When the number of users increases, the average delay increases. When the number of users with access is small, no gaps exist in the delay performance of the three protocols. The CFDAMA-GF delay does not have a clear advantage because the protocol has a gray forecast process and sorts calculations when a user gains access, resulting in a slightly large average delay. When the number of users in the system continuously increases, the average delay of the CFDAMA-GF protocol is better than that of scheduling appointments and priorities. When the number of users further increases, the current service requirements can be sent in time to enable each user to access them in time. Users with a high demand can preferentially obtain timeslot allocations, thereby reducing the average end-to-end delay.
Figure 7 shows the relationship between the average number of stacking packets in the queue and the number of users. When the number of users with access increases, the number of queues increases. The number of service packets and the average number of queues increase as the number of users increases.
Figure 7 further illustrates that the performance of the three protocols is similar when the number of users and the number of service packets are small. As such, the three protocols do not remarkably vary. When the number of users in the system increases, the CFDAMA-GF protocol ensures that multiple users access the gray forecast algorithm, and the number of stacking packets in a user queue decreases.