1 Introduction

Since the birth of cloud computing network, after years of continuous development, cloud computing system has gradually developed from education and scientific research network to a promising business communication system, which has a profound impact on human society.[1] Business information is an important basis for decision-makers to make decisions. The quality of business information is affected by many factors, mainly human factors. Business informatization can reduce the impact of human factors and improve the quality of business information, and business information system based on cloud computing will become the development direction of enterprise informatization. Cloud computing system can improve the construction of business information, which has an important role in promoting the development of enterprise business information. Using cloud computing system can integrate IT resources and invest less cost to complete enterprise information construction. This is because in the process of enterprise information construction, it needs to purchase software and hardware infrastructure, network construction and later maintenance costs, which all cost a lot of human, material and financial resources; the use of cloud computing system can be provided by a third party, enterprises only need to pay a one-time project cost to complete the information construction, and can adjust resources according to their own system needs. Using cloud computing can also save and process financial data, analyze financial online in the cloud, and then make decisions, which greatly improves the efficiency of accounting information. Cloud computing system can also provide personalized services, and provide personalized office system according to the different needs of different enterprises for accounting information.

With the rapid development of cloud computing system and the continuous expansion of scale, there are a variety of network service calls, cloud computing network is becoming more and more diversified and isomerized. The network resources that can be provided are growing, but the demand for network resources is also growing synchronously, and the network resources can not be unlimited growth. Therefore, the network congestion in a certain range of enterprise cloud system is inevitable.[2, 3] In this case, how to use the existing network resources more effectively, control the network congestion in real time, and choose the dynamic route according to the specific situation is very important. Efficient scheduling algorithm is an important part of an enterprise cloud system, which determines the performance of the system to a large extent.[4] Under the same conditions, a good scheduling algorithm can greatly improve the throughput of the network and reduce the transmission delay of packets. At present, the commonly used routing algorithms mainly include two kinds of distance vector algorithm and link state algorithm. However, neither of these two routing algorithms has enough ability to deal with the increasingly complex network problems.[5] When network congestion occurs, they have no corresponding error handling response mechanism. They simply discard data packets instead of finding other better routing paths, so they can not make full use of network resources. Intelligent models of data processing over network connection are used in [6] to manage home infrastructure, in [7] to detect potential attacks, and in [8] to alert danger.

In reference [9], a cross layer congestion avoidance algorithm is proposed to establish a node neighbor link in multi-hop wireless network, and a cross layer framework is designed to solve the problem of heterogeneous exposure and heterogeneous concealment. At the same time, the threshold of sending rate of interest packets is adjusted by cache interaction to smooth the burst traffic. This method can effectively improve the transmission delay of enterprise cloud system, solve the problems of heterogeneous exposure and heterogeneous concealment, but the network transmission efficiency is not good, and the packet loss rate is high. In reference [10], a congestion avoidance and fault detection method based on data science and technology for wireless sensor network in enterprise cloud system is proposed. According to the current node’s business load information, the transmission rate is controlled, the congestion is classified by support vector machine method, the router buffer is designed, the buffer size is expanded according to the internal deployment of NDN, and the transmission rate of control data packet is effectively improved. At the same time, accuracy of congestion classification also is improved to realize congestion control of enterprise cloud system network. In reference [11], a congestion avoidance control method for enterprise cloud system based on ECODA algorithm is proposed. Double buffer threshold and weighted buffer difference are used for congestion detection, and human-computer interaction method is used to control the source transmission rate of bottleneck nodes and eliminate redundant routes. This method can effectively reduce the congestion probability of enterprise cloud system and improve the load balance, but it will affect the data recall rate. In reference [12], a method of using SDN to alleviate TCP congestion in data center is proposed, and a congestion prediction mechanism is proposed. In the process of route discovery, high load nodes do not need to forward routing request messages, which can effectively avoid high load nodes being selected as forwarding nodes. A multi-path traffic regulation mechanism is designed to timely regulate the traffic of high load nodes in the network, and alleviate the load degree of high load nodes, The simulation results show that the average end-to-end delay and packet delivery success rate are effectively improved.

In order to solve the problem of network congestion in the above methods, a delay-tolerant data congestion avoidance algorithm based on modular computing is proposed. The load balancing control of enterprise cloud system is realized by modular computing, which reduces the system delay and tolerates data congestion probability.The specific research ideas are as follows:

  • First, improve the resource allocation rules of rbfr strategy in traditional enterprise cloud, change the traditional interactive overall mode, and make it modular; .

  • Secondly, the data congestion control algorithm is constructed by modular thinking; .

  • Then, ant colony algorithm is introduced to realize the design of delay tolerant data congestion avoidance algorithm; .

  • Finally, through the design of network transmission efficiency, reduce the packet loss rate of data transmission, the experiment verifies the effectiveness of the algorithm, and draws a conclusion.

2 Design of the delay-tolerant data congestion avoidance algorithm

2.1 Improved modular design of RBFR strategy

According to the traditional design of resource allocation rules,[13] RBFR is modularized and improved to achieve a new RBFR strategy. The RBFR module is designed as shown in Table 1.

Table 1 RBFR module

The specific parameters to be provided for the new business are shown in Table 2 [14,15,16].

Table 2 Specific parameters to be provided for new business

The application module, the statistics module of node resource usage, the node information interaction module, the adaptive adjustment module of resource allocation are used by new business resource to realize the adaptive modular borrowing mechanism of RBFR strategy.[14] All the calculation, statistics and prediction carried out by the statistics module of node resource usage and the node information interaction module serve the adaptive adjustment module of resource allocation and provide the basis and reference for the adaptive adjustment of resource allocation.[15] The utilization and application module of new service resource decides whether to access the new request or not according to the strategy of adaptive adjustment module of resource allocation.[16]

According to the above modularized RBFR strategy, it is mainly used to borrow the idle reserved resources in the enterprise cloud system when the local resources of the nodes in the enterprise cloud system are exhausted, while other nodes have a large number of idle reserved resources.[17] This allocation method of enterprise cloud resources achieves two goals: one is to ensure the priority of the priority business,[18] the other is to improve the utilization rate of resources and the access rate of new services in the system, so as to improve the user’s QoS.[19] The specific flow chart is shown in Fig. 1, in which the part in the dotted box is resource borrowing.

Fig. 1
figure 1

Specific flow chart

The specific steps of the request access of the new modular RBFR policy are shown in Table 3.

Table 3 Specific steps for request access of new RBFR policy

For the requests in the queue, the resource allocation process is shown in Fig. 2.

Fig. 2
figure 2

Flow of request resource allocation in queue

The business resource allocation process in the queue is shown in Table 4.

Table 4 Business resource allocation process in the queue

2.2 Model design

2.2.1 Working logic design of building data congestion module

According to the RBFR strategy and mobile edge computing, the data congestion control model is constructed, which is mainly implemented in the control layer. The model is divided into four modules: topology management module, network status information module, congestion monitoring module and elephant flow detection module. In the data congestion control model, the topology management module is responsible for maintaining the current network topology information and providing the routing module with the network topology map.[20] The network status information module periodically obtains the statistical information of all links and all flows from the data layer through the statistical message request and statistical information reply of OpenFlow protocol, and stores it in the form of table for other modules to call. The function of congestion monitoring module is to dynamically monitor the load, which is realized by requesting link statistics information from network status information. In case of congestion, the information of congestion link is sent to the elephant flow detection module. After obtaining the congestion link information, the elephant flow detection module calls the flow statistics information to the network status information module to detect all the elephant flows on the congestion link, that is to say, the rescheduled flows will be sent to the route in the form of collection.[21] When congestion occurs, the route obtains the current topology information from the topology management module, obtains the statistics information of all current links from the network status information module, calculates new alternative paths for all detected elephant flows with MNL model probabilistic routing algorithm, and then uses OpenFlow protocol to distribute new rules to the corresponding switches. When there is no congestion, Dijkstra algorithm is used to calculate the appropriate shortest path for the new flow into the network, which is sent to the relevant switches under the OpenFlow protocol.[22]

2.2.2 Design of related modules

Topology management module: its function is to maintain the current network topology information, including the location of switches, the links between switches, and the status of links. The topology management module has two working states: topology discovery and topology update. Topology discovery starts at the beginning of controller startup, mainly through LLDP protocol, as shown in Fig. 3. The controller sends a packet out message to each port of each switch, which encapsulates the LLDP frame. The LLDP frame contains the MAC address fields of the source switch and port, as well as the destination MAC address fields. The destination MAC address is a group of multicast addresses.[23] After receiving the LLDP packet, the switch will encapsulate its own information into the source MAC address field of the LLDP frame, and broadcast the LLDP frame to the adjacent nodes in the form of a PACKET OUT.[24] After receiving the PACKET OUT, the adjacent switch will add its own information into the destination MAC address field, encapsulate the LLDP frame into the PACKET IN and upload it to the controller.[25] By analyzing the PACKET IN packet, the controller obtains the information of the source, destination switch and port of the link, and constructs the local network topology. After traversing all ports of all switches, the topology management module has the complete topology information of the current network.

Fig. 3
figure 3

Transfer diagram of link discovery information

Network status information module: its function is to count and store the real-time information of network status for the congestion monitoring module, the elephant flow detection module and the routing module to call. The module variables are shown in Table 5.

Table 5 Module variables

The network status information module manages two tables, link information table and flow information table. The link information table stores the statistical information of the current link, which includes four fields: the source end of the link, the total number of bytes transmitted in the current cycle, the total number of bytes transmitted in the previous cycle and the maximum capacity bandwidth; the flow information table stores the statistical information of the current network flow, which includes three fields: the flow ID, the total bytes transmitted in the current cycle and the total bytes transmitted in the previous cycle.

Function of congestion monitoring module: it is to monitor the link load in real time. In case of congestion, it will send the congestion location to the elephant flow detection module. The module variables are shown in Table 6.

Table 6 Module variables

The function of elephant Flow detection module is to detect the elephant flow on the congestion link and send it to the routing module in the form of collection after congestion. The elephant flow detection module works only when congestion occurs in the network. The module variables are shown in Table 7.

Table 7 Module variables

2.3 Implementation of delay-tolerant data congestion avoidance algorithm

2.3.1 Algorithm implementation

Based on the above modularized data congestion control model, an ant colony algorithm is introduced to implement the delay-tolerant data congestion avoidance algorithm. Each ant represents a packet, which contains some simple information. Ants are sent from the source node and sent to the target node, which is mainly responsible for the path search. The packet structure is shown in Fig. 4, where source-ID and dest-ID represent the IP addresses of the source node and the target node respectively; ant-ID represents the label of ants, and ants in the same batch (i.e. copied or sent by the same node) have the same label, which is used to identify the source of ants; TTL (Time To Live) indicates the maximum life cycle of the packet to avoid the unlimited cycle of the packet in the network due to unpredictable conditions; DestTab is the sequence set of target nodes; tabu is used to record the nodes that the ant has traversed and avoid entering the dead cycle; QoS parameters are used to evaluate the quality of the ant search path.

Fig. 4
figure 4

Packet structure

2.3.2 Design of algorithm step

The specific steps of delay-tolerant data congestion avoidance algorithm are as follows:

  1. (1)

    Ant infestation

The improved ant flooding mechanism is used in the ant routing process. First of all, in order to prevent the unlimited growth of the total number of ants, ants with the same identification number are considered to be the same batch of ants. At the same time, the same source node and all ants copied by it have the same identification number. When the source node sends ants, it also sends ants to all its neighboring nodes. After receiving the ant, the neighboring nodes will judge the path according to the given QoS parameters, select the best ant among the ants of the same number, and copy the ant on all links, of course, do not copy on the link receiving the ant. Each time the node receives an ant, it will compare it with the ant of the same label received previously, copy the superior and die. Through the ant flooding, each node can receive ants, and many ants arriving at the same node must be better, along different paths.

The specific form of pheromone table of a node k in the network is shown in Table 8.

Table 8 Specific form of pheromone table of a node k in the network

Analysis of Fig. 8 shows that there are n target nodes in this paper, which are divided into d1, d2, ..., dn; The corresponding neighbor nodes are a1, a2, ..., am, the pheromones corresponding to the target node d1 and neighbor node a1 are represented by p11, and other pheromones are similar.

During initialization, for the target node in the probability table, the probability of selecting each adjacent node is the same. Ants randomly select the next hop node according to the probability value recorded in the probability table in the process of moving.

  1. (2)

    Pheromone updating strategy and route finding criteria

When the ant passes a certain node, the probability table is updated by formula (1) and formula (2).

The calculation formula of probability increase in pheromone table is as follows:

$$ {P}_{n+1}^i=\left\{\begin{array}{c}\frac{\Delta P}{1-\Delta P}{P}_n^i,{P}_n^i\le 1-\Delta P\\ {}\frac{1-\Delta P}{\Delta P}\left({P}_n^i-1\right)+1,{P}_n^i\ge 1-\Delta P\end{array}\right. $$
(1)

where, \( {P}_n^i \) and \( {P}_{n+1}^i \) respectively represent the probability of ant selecting node i before and after updating; ∆P is the parameter, ∆P ∈ [0.5,1], and its value depends on the required search criteria.

The probability reduction formula is:

$$ {P}_{n+1}^i=\left\{\begin{array}{c}\frac{1-\Delta P}{\Delta P}{P}_n^i,{P}_n^i\le \Delta P\\ {}\frac{\Delta P}{1-\Delta P}\left({P}_n^i-1\right),{P}_n^i\ge 1-\Delta P\end{array}\right. $$
(2)

Taking the optimal route as the route finding criterion, the ants that reach the destination node are queued according to the optimal route to form the optimal path set according to the QoS performance.

During the pathfinding process, the following information is saved in each node:

Routing Table RT – is used to record the information from the local router to its neighboring routers, in which the information of neighboring nodes and links is updated regularly;

Bandwidth state information - this algorithm takes bandwidth and delay as the constraints of QoS, so the router needs to save the bandwidth state information. There are three bandwidth state parameters of a link: Available, Used and Lockedo.

  1. (3)

    Congestion avoidance

To judge the congestion state of the link, we need to calculate the average length of the waiting queue, and then compare the length with the threshold value of the upper and lower limit. At the same time, the burst characteristics of the arrival traffic are also the factor to be considered when calculating the queue length. When the two ants meet, it is a new feasible path. Obviously, the exploration speed of the new path is greatly improved. Using this new search path, the transmission of network data will not cause a strong shock, thus improving the stability of the network. In the process of data transmission, it will summarize and judge independently according to the situation of network packet transmission, and can predict the state of the network by learning the previous network traffic. Therefore, when a node is predicted to be congested, the following three actions occur:

  1. 1.

    From the previous node of the congestion node, a new path is sent to detect ants and a new optimal path is explored;

  2. 2.

    Other paths to transmit packets are selected from path set;

  3. 3.

    Sending congestion notification to the target node, then the selected path is used. After receiving the ant, the target node starts to respond to the ant, which searches for the path and updates the pheromone just like the path seeking ant.

When the congestion response ant and the new pathfinder ant meet at a certain node in the network, the new path exploration is completed, and the packets begin to transmit on the new path. When the congestion is relieved, it switches to the original path. The delay-tolerant data congestion avoidance is realized.

3 Experimental research and analysis

3.1 Experiment process

Using OPNET simulation platform to simulate the network environment, the performance of the delay-tolerant data congestion avoidance algorithm for large enterprise cloud is studied. In the experiment, the enterprise cloud topology of the network environment and its parameter settings are shown in Fig. 5.

Fig. 5
figure 5

Network topology and parameter setting of the platform

From the analysis of Fig. 5, we can see that there are a total of 0–9 ten nodes in this paper. The data transmission speed between nodes 0 and 1, nodes 1 and 2, nodes 0 and 8, nodes 2 and 9, nodes 8 and 6, nodes 9 and 6, nodes 5 and 4, and nodes 4 and 3 is 10 MB / s, and the data transmission speed of other nodes is 2 Mb / s. Figure 5 shows the network topology parameter settings.

The source node is composed of data flow generation and transmission module. The destination node is composed of the receiving module and the processing module, which respectively completes the receiving of data flow and the collection and processing of statistical data.

The routing entries for the enterprise cloud environment are shown in Table 9.

Table 9 Route entry of network environment

The simulated enterprise cloud platform environment is used to make the data congestion avoidance algorithm experiment. In order to ensure the effectiveness of the experimental results, the traditional delay-tolerant data congestion avoidance algorithm is compared with the delay-tolerant data congestion avoidance algorithm designed in this paper. The packet loss rate and data recall rate of each delay-tolerant congestion avoidance algorithm are compared.

3.2 Analysis of experimental results

In order to verify the congestion avoidance of different methods for enterprise cloud platform, and to verify the congestion avoidance of different methods, the congestion avoidance algorithm based on cross layer processing, [9] the congestion avoidance algorithm based on data science and technology, [10] the congestion avoidance algorithm based on ECODA algorithm [11] and the congestion avoidance algorithm based on modular computing algorithm are used to detect the packet loss rate of delay-tolerant data. The experimental results are shown in Fig. 6.

Fig. 6
figure 6

Packet loss rate under different algorithms

When the experimental time is 10 min, the delay tolerable packet loss rate of the congestion avoidance algorithm of data science and technology is 0.47, the delay tolerable packet loss rate of the ecoda algorithm is 0.33, the delay tolerable packet loss rate of the cross layer congestion avoidance algorithm is 0.20, and the delay tolerable packet loss rate of the modular algorithm is 0.11.When the experimental time is 30 min, the delay tolerable packet loss rate of data science and technology congestion avoidance algorithm is 0.61, that of ECODA algorithm is 0.40, that of cross layer congestion avoidance algorithm is 0.43, and that of modular algorithm is 0.18. This method always has a low delay tolerance packet loss rate, can effectively avoid data congestion, and the data transmission effect is good. This is because the method in this paper changes the traditional interactive overall mode, uses modular thinking to build data congestion control algorithm, and effectively reduces the packet loss rate. On the basis of the above, the recall rate of the delay-tolerant data of the above methods is detected, and the results are shown in Fig. 7.

Fig. 7
figure 7

Data recall of different algorithms

According to Fig. 7, packet loss rate is related to data volume. When the delay-tolerant data is 5 GB, the data recall rate of the congestion avoidance algorithm based on cross layer is 76%, that of the congestion avoidance algorithm based on data science and technology is 68%, that of the congestion avoidance algorithm based on ECODA algorithm is 74%, and that of the congestion avoidance algorithm based on modular algorithm is 93%. When the delay-tolerant data is 50GB, the data recall rate of the congestion avoidance algorithm based on cross layer is 73%, that of the congestion avoidance algorithm based on data science and technology is 64%, that of the congestion avoidance algorithm based on ECODA algorithm is 73%, and that of the congestion avoidance algorithm based on modular algorithm is 96%. The algorithm in this paper can keep high recall rate in different data size. It shows that this algorithm can effectively avoid data congestion and has high data accuracy. This is because this method can improve the resource allocation rules of RBFR strategy in traditional enterprise cloud, make the data allocation more reasonable and improve the data recall rate. In order to verify the data throughput of different methods, the above methods are compared with the methods in this paper, and the experimental results are shown in Fig. 8.

Fig. 8
figure 8

Data throughput under different methods

According to Fig. 8, the data throughput is different under different methods. When the time is 800 ms, the data throughput of the congestion avoidance algorithm based on cross layer is 7 TPS, that of the congestion avoidance algorithm based on data science and technology is 10 TPS, that of the congestion avoidance algorithm based on ECODA algorithm is 16 TPS, and that of the congestion avoidance algorithm based on modular algorithm is 38 TPS. When the time is 880 ms, the data throughput of the congestion avoidance algorithm based on cross layer is 38 TPS, that of the congestion avoidance algorithm based on data science and technology is 42 TPS, that of the congestion avoidance algorithm based on ECODA algorithm is 53 TPS, and that of the congestion avoidance algorithm based on modular algorithm is 108 TPS. The proposed method has high data throughput, because this method changes the traditional interactive overall mode, and uses modular thinking to build data congestion control algorithm, effectively avoiding network congestion.

4 Conclusion

Modular cloud platform delay can tolerate data congestion avoidance algorithm, make full use of the characteristics of cognitive cloud computing network, predict the congestion state of cloud computing system, and use modular thinking to disperse traffic before congestion occurs. In addition, when congestion occurs, two-way and fast congestion avoidance mechanism is applied, which greatly reduces the packet loss rate of enterprise cloud platform network, especially in the case of large load of enterprise cloud system, the effect is more obvious, so as to realize the effective utilization of resources. According to the experiment, the following conclusions are drawn:

  1. (1)

    This method has low delay and good data transmission effect, which can tolerate packet loss rate and effectively avoid data congestion.

  2. (2)

    The algorithm in this paper can maintain high recall rate in different data size. When the delay tolerant data is 50GB, the data recall rate of congestion avoidance algorithm in mobile edge computing is as high as 96%.

  3. (3)

    The data throughput of the proposed method is high, when the time is 880 ms, the data throughput of the mobile edge computing algorithm can reach 108 TPS.

In the future, the congestion avoidance process will be further improved and the data processing efficiency will be improved.