Transmission Algorithm with QoS Considerations for a Sustainable MPEG Streaming Service

With the proliferation of heterogeneous networks, there is a need to provide multimedia stream services in a sustainable manner. It is especially critical to maintain the Quality of Service (QoS) standards. Existing multimedia streaming services have been studied to guarantee QoS on the receiving side. QoS has not been ensured due to the fact that the loss of streaming data to be transmitted has not been considered in network conditions. With an algorithm that considers the QoS and can reduce the overhead of the network, it will be possible to reduce the transmission error and wastage of communication network resources. In this paper, we propose a scheme that improves the reliability of multimedia transmissions by using an adaptive algorithm that switches between UDP (User Datagram Protocol) and TCP (Transmission Control Protocol) based on the size of the data. In addition, we present a method that retransmits essential portions of the multimedia data, thus improving transmission efficiency. We simulate an MPEG (Moving Picture Experts Group) stream service and evaluate the performance of the proposed adaptive MPEG stream service.

The rest of the paper is organized as follows.In Section 2, the layered coding methodology, a data division method for adaptive MPEG system, is described.A description of the adaptive QoS algorithm based on session selection and FEC is provided in Section 3. The evaluation of the proposed algorithm is provided in Section 4. Section 5 concludes the paper by providing an overall summary and describing further research tasks.

Layered Coding Methodology
In order to adapt to changing network environments, multimedia data must be divided.The QoS is improved by adding decoding data.When the network condition is good, the multimedia data is transmitted as a single unit without any interference.However, when the network is relatively slow, we perform basic data encoding to improve the QoS.

Spatial Division Method
The type of division method to be implemented depends on the data resolution.The encoding of the basic layers is performed first and the extension area is encoded based on the in between differential.Figure 1 illustrates the process for an object using the minimum value.There is an expansion of the layers with an increase in the value of the expression layer.The left upper area is designated as the low frequency area while the right lower area has higher frequency.The area information is used to determine the spatial resolution.The rest of the paper is organized as follows.In Section 2, the layered coding methodology, a data division method for adaptive MPEG system, is described.A description of the adaptive QoS algorithm based on session selection and FEC is provided in Section 3. The evaluation of the proposed algorithm is provided in Section 4. Section 5 concludes the paper by providing an overall summary and describing further research tasks.

Layered Coding Methodology
In order to adapt to changing network environments, multimedia data must be divided.The QoS is improved by adding decoding data.When the network condition is good, the multimedia data is transmitted as a single unit without any interference.However, when the network is relatively slow, we perform basic data encoding to improve the QoS.

Spatial Division Method
The type of division method to be implemented depends on the data resolution.The encoding of the basic layers is performed first and the extension area is encoded based on the in between differential.Figure 1 illustrates the process for an object using the minimum value.There is an expansion of the layers with an increase in the value of the expression layer.The left upper area is designated as the low frequency area while the right lower area has higher frequency.The area information is used to determine the spatial resolution.

Time Division Method
In the time division method, the process of dividing the base layer and extended layer is the same as that in the spatial division method.However, the time division method utilizes the time difference between the base layer and the extended layer.This is done by identifying different streams in the frame expression and segregating them.When the base layer is subject to continuous replay, the result is an expression of wide movement.A smooth streaming replay can be acquired by adding the extended layers to the wide movement frame.
The time division method uses the time axis and is shown in Figure 2. The redundancy is removed for coding movements and can be categorized by its application methods.

Time Division Method
In the time division method, the process of dividing the base layer and extended layer is the same as that in the spatial division method.However, the time division method utilizes the time difference between the base layer and the extended layer.This is done by identifying different streams in the frame expression and segregating them.When the base layer is subject to continuous replay, the result is an expression of wide movement.A smooth streaming replay can be acquired by adding the extended layers to the wide movement frame.
The time division method uses the time axis and is shown in Figure 2. The redundancy is removed for coding movements and can be categorized by its application methods.

Relationship between Layers
Theoretically, an MPEG stream can be divided into 192 different layers by applying time and other division methods.The time division method produces up to 15 video layers that exhibit interdependencies as shown in Figure 3. Here, "n" represents the number of layers generated using spatial division.The base layer T_layer1 is a time division layer used to decode T-layer2, which in turn is used to decode T_layer3.
Layers that are divided based on the definition of an image also have dependencies.Each layer exists independently, but is dependent on other layers for replay.For decoding a lower layer, the higher layer should have already been decoded.This results in the existence of a base layer and arbitrary lower layers for encoding and decoding operations.

Adaptive MPEG System
An optimum stream transfer takes into consideration the real-time network bandwidth measurement.Figure 4 represents the proposed MPEG system structure that consists of an algorithm that splits a multimedia stream into many streams and transfers each of them to the client.The transferred streams are merged into a single multimedia stream and are sent to the client through the MPEG player.This process can provide a better service by using the real-time network bandwidth information to estimate the network load and minimize data loss.The proposed system uses an autonomous real-time bandwidth calibration method to monitor the changing stream information.It

Relationship between Layers
Theoretically, an MPEG stream can be divided into 192 different layers by applying time and other division methods.The time division method produces up to 15 video layers that exhibit inter-dependencies as shown in Figure 3. Here, "n" represents the number of layers generated using spatial division.The base layer T_layer1 is a time division layer used to decode T-layer2, which in turn is used to decode T_layer3.

Relationship between Layers
Theoretically, an MPEG stream can be divided into 192 different layers by applying time and other division methods.The time division method produces up to 15 video layers that exhibit interdependencies as shown in Figure 3. Here, "n" represents the number of layers generated using spatial division.The base layer T_layer1 is a time division layer used to decode T-layer2, which in turn is used to decode T_layer3.
Layers that are divided based on the definition of an image also have dependencies.Each layer exists independently, but is dependent on other layers for replay.For decoding a lower layer, the higher layer should have already been decoded.This results in the existence of a base layer and arbitrary lower layers for encoding and decoding operations.

Adaptive MPEG System
An optimum stream transfer takes into consideration the real-time network bandwidth measurement.Figure 4 represents the proposed MPEG system structure that consists of an algorithm that splits a multimedia stream into many streams and transfers each of them to the client.The transferred streams are merged into a single multimedia stream and are sent to the client through the MPEG player.This process can provide a better service by using the real-time network bandwidth information to estimate the network load and minimize data loss.The proposed system uses an autonomous real-time bandwidth calibration method to monitor the changing stream information.It Layers that are divided based on the definition of an image also have dependencies.Each layer exists independently, but is dependent on other layers for replay.For decoding a lower layer, the higher layer should have already been decoded.This results in the existence of a base layer and arbitrary lower layers for encoding and decoding operations.

Adaptive MPEG System
An optimum stream transfer takes into consideration the real-time network bandwidth measurement.Figure 4 represents the proposed MPEG system structure that consists of an algorithm that splits a multimedia stream into many streams and transfers each of them to the client.The transferred streams are merged into a single multimedia stream and are sent to the client through the MPEG player.This process can provide a better service by using the real-time network bandwidth information to estimate the network load and minimize data loss.The proposed system uses an autonomous real-time bandwidth calibration method to monitor the changing stream information.It first sends metadata to the client and initiates stream service.This helps to adapt to bandwidth changes and provide better stream service.
Sustainability 2017, 9, 367 4 of 13 first sends metadata to the client and initiates stream service.This helps to adapt to bandwidth changes and provide better stream service.

Adaptive QoS Transfer Algorithm
Figure 5 illustrates the temporal-fidelity scalability method used in transferring data from a server to the client.Steps 1-4 show the initial server and client states.The server sends a requested multimedia file to the client first and the actual multimedia data later as shown in steps 5-7.The received file is merged into a single file using the merging module.As shown in steps 8-11, this is played back to the client via a player.The QoS Monitor obtains the current session information based on the multimedia data (steps 10-11).This information is resent to the server QoS Adapter, which determines the data to be transferred next (steps 12-13).

Adaptive QoS Transfer Algorithm
Figure 5 illustrates the temporal-fidelity scalability method used in transferring data from a server to the client.Steps 1-4 show the initial server and client states.The server sends a requested multimedia file to the client first and the actual multimedia data later as shown in steps 5-7.The received file is merged into a single file using the merging module.As shown in steps 8-11, this is played back to the client via a player.The QoS Monitor obtains the current session information based on the multimedia data (steps 10-11).This information is resent to the server QoS Adapter, which determines the data to be transferred next (steps 12-13).
Sustainability 2017, 9, 367 4 of 13 first sends metadata to the client and initiates stream service.This helps to adapt to bandwidth changes and provide better stream service.

Adaptive QoS Transfer Algorithm
Figure 5 illustrates the temporal-fidelity scalability method used in transferring data from a server to the client.Steps 1-4 show the initial server and client states.The server sends a requested multimedia file to the client first and the actual multimedia data later as shown in steps 5-7.The received file is merged into a single file using the merging module.As shown in steps 8-11, this is played back to the client via a player.The QoS Monitor obtains the current session information based on the multimedia data (steps 10-11).This information is resent to the server QoS Adapter, which determines the data to be transferred next (steps 12-13).

Session-Based Adaptive QoS Algorithm
Existing streaming services run over UDP, which enables them to meet real-time requirements.However, there is a possibility of losing important data when using UDP, which could result in a loss of integrity.On the other hand, the TCP ensures reliable delivery but at the cost of increased time latency.The proposed session transfer algorithm exploits the advantages of both the protocols.It uses UDP to transfer real-time data and TCP to transfer critical high-priority data.The categorization of the data is determined by client feedback and based on this, the session group is increased or decreased.
Figure 6 illustrates the session size (group) calculation at time instances A and B. The client side counts the number of packets n for the final transfer and the playback time from packet n to packet n + 1, where n >0, to determine whether the receiving operation is complete.When the time of completion is smaller, it indicates that there is still time to receive more packets.The difference value can be used to determine the time required to send more packets and the next session packet number.The steps in the session size (group) calculation algorithm are shown in Algorithm 1.

Session-Based Adaptive QoS Algorithm
Existing streaming services run over UDP, which enables them to meet real-time requirements.However, there is a possibility of losing important data when using UDP, which could result in a loss of integrity.On the other hand, the TCP ensures reliable delivery but at the cost of increased time latency.The proposed session transfer algorithm exploits the advantages of both the protocols.It uses UDP to transfer real-time data and TCP to transfer critical high-priority data.The categorization of the data is determined by client feedback and based on this, the session group is increased or decreased.
Figure 6 illustrates the session size (group) calculation at time instances A and B. The client side counts the number of packets n for the final transfer and the playback time from packet n to packet n + 1, where n >0, to determine whether the receiving operation is complete.When the time of completion is smaller, it indicates that there is still time to receive more packets.The difference value can be used to determine the time required to send more packets and the next session packet number.The steps in the session size (group) calculation algorithm are shown in Algorithm 1.

FEC-Based Adaptive QoS Algorithm
The existing FEC method does not use client feedback information.The server calculation is performed for transmission operations only and places a heavy load on the network bandwidth.It is not suited for a variable network environment as it requires that the transmitted data segments have the same size.To address this issue, we propose that client feedback information be used to obtain knowledge of the network condition.This information is used to implement data redundancy and

FEC-Based Adaptive QoS Algorithm
The existing FEC method does not use client feedback information.The server calculation is performed for transmission operations only and places a heavy load on the network bandwidth.It is not suited for a variable network environment as it requires that the transmitted data segments have the same size.To address this issue, we propose that client feedback information be used to obtain knowledge of the network condition.This information is used to implement data redundancy and minimize data loss.Figure 7 illustrates the indirect loss situation that arises during network transfer after termination assuming that there is no higher layer.minimize data loss.Figure 7 illustrates the indirect loss situation that arises during network transfer after termination assuming that there is no higher layer.Consider a five-layered data (T1F1~T1F5) scenario, where the layers decrease in importance from top to bottom, i.e., T1F1 > T1F2 > T1F3 > T1F4 > T1F5.Here, T1F2 needs T1F1 for replay and so on.Therefore, when transferring data, T1F1 is retransmitted to prevent indirect loss of other levels.The proposed algorithm uses feedback information from the client side to improve the QoS.The amount of data transmitted by the server and received by the client is calculated based on the feedback information and error rate of the current network.The metrics used to quantify this is where Gi is the number of transmitted GoV, SSL is the size of the transmitted data in GoV units, and SRL is the size of the received data in GoV units.
To reduce the network error rate, data can be retransmitted, but this is a waste of network bandwidth.The proposed algorithm uses client feedback information to determine an adaptive quantity of data for retransmission.In this mechanism, the key challenges are related to the determination of the desired QoS and the associated redundancy.The QoS is determined by using feedback information from the client.We assume that the same amount of data is sent again and therefore the size of the next data packet is known.The data quantity decision algorithm is shown in Algorithm 2. The error-rate calculation, transfer determination algorithm, transfer data error rate, and data redundancy should be determined.For meaningful MPEG streaming, higher layer data associated Consider a five-layered data (T1F1~T1F5) scenario, where the layers decrease in importance from top to bottom, i.e., T1F1 > T1F2 > T1F3 > T1F4 > T1F5.Here, T1F2 needs T1F1 for replay and so on.Therefore, when transferring data, T1F1 is retransmitted to prevent indirect loss of other levels.The proposed algorithm uses feedback information from the client side to improve the QoS.The amount of data transmitted by the server and received by the client is calculated based on the feedback information and error rate of the current network.The metrics used to quantify this is where G i is the number of transmitted GoV, SSL is the size of the transmitted data in GoV units, and SRL is the size of the received data in GoV units.
To reduce the network error rate, data can be retransmitted, but this is a waste of network bandwidth.The proposed algorithm uses client feedback information to determine an adaptive quantity of data for retransmission.In this mechanism, the key challenges are related to the determination of the desired QoS and the associated redundancy.The QoS is determined by using feedback information from the client.We assume that the same amount of data is sent again and therefore the size of the next data packet is known.The data quantity decision algorithm is shown in Algorithm 2. The error-rate calculation, transfer determination algorithm, transfer data error rate, and data redundancy should be determined.For meaningful MPEG streaming, higher layer data associated with the current layer should be transmitted first.The proposed algorithm guarantees that this higher layer data is transferred with a higher reliability.The probability of redundant transfer can be derived from Equations ( 2) and (3).
where P ijn is the probability that the nth packet of the T i S j layer will be transmitted, N ij is the number of packets in T i S j layer, and ∆P is the size of the packet.
where ProBotLmt is the minimum probability that a layer should be transmitted and DuP is the amount of redundant transmission.

Experimental Evaluation and Performance Analysis
The performance of the proposed algorithm was analyzed by simulation using a video stream.The adaptive QoS algorithm's performance was compared with a transfer technique that did not consider the QoS.The direct and indirect packet losses were computed in terms of the GoV packet size by processing the merged data at the client side.The result proved that the proposed adaptive QoS algorithm is better than the current methods.
Figure 8 illustrates a simulation environment for the performance evaluation of the proposed algorithms.The streaming server was implemented in Visual C++ under Windows 2000, and the client experimented with a laptop using an Intel Core (TM) i3 CPU.The TS (Transport Stream) Divider is responsible for dividing; the TS Sender is in charge of sending the divided stream; the TS Writer is in charge of data receiving; and the TS Merger decodes the received data.The Error Rate Controller determines the loss of the packet sent and the Error Inspector measures the indirect data loss between the higher layer and lower layer in accordance with the presented error rate.with the current layer should be transmitted first.The proposed algorithm guarantees that this higher layer data is transferred with a higher reliability.The probability of redundant transfer can be derived from Equations ( 2) and (3).
where Pijn is the probability that the nth packet of the TiSj layer will be transmitted, Nij is the number of packets in TiSj layer, and ∆ is the size of the packet.
where ProBotLmt is the minimum probability that a layer should be transmitted and DuP is the amount of redundant transmission.

Experimental Evaluation and Performance Analysis
The performance of the proposed algorithm was analyzed by simulation using a video stream.The adaptive QoS algorithm's performance was compared with a transfer technique that did not consider the QoS.The direct and indirect packet losses were computed in terms of the GoV packet size by processing the merged data at the client side.The result proved that the proposed adaptive QoS algorithm is better than the current methods.
Figure 8 illustrates a simulation environment for the performance evaluation of the proposed algorithms.The streaming server was implemented in Visual C++ under Windows 2000, and the client experimented with a laptop using an Intel Core (TM) i3 CPU.The TS (Transport Stream) Divider is responsible for dividing; the TS Sender is in charge of sending the divided stream; the TS Writer is in charge of data receiving; and the TS Merger decodes the received data.The Error Rate Controller determines the loss of the packet sent and the Error Inspector measures the indirect data loss between the higher layer and lower layer in accordance with the presented error rate.The streaming data used in the experiment is an MPEG-4 stream called Foreman, which is 176 × 144 pixels in size.The total number of frames is 400 frames, and the number of frames per second is 30 frames.We divide the data into 12 layers through the divider of the server and assume that the data that can be transmitted in each time unit is the same.We controlled the error of the network in between 5% and 50% for comparison of send efficiency.The streaming data used in the experiment is an MPEG-4 stream called Foreman, which is 176 × 144 pixels in size.The total number of frames is 400 frames, and the number of frames per second is 30 frames.We divide the data into 12 layers through the divider of the server and assume that the data that can be transmitted in each time unit is the same.We controlled the error of the network in between 5% and 50% for comparison of send efficiency.

Performance of the Session-Based Adaptive QoS and Non-QoS Techniques
The data transmitted using the non-QoS and session-based adaptive QoS techniques was not large in size.However, the final merged multimedia data showed big differences because the relationship between the layers was different.Figure 9a-c show the comparison results.This demonstrates that the lower layer can only be decoded by using higher layer data and that the loss of higher layer data can result in loss of lower layer data.To minimize this, the session-based method transmits this layer using TCP, resulting in a more reliable transfer as compared to UDP.The transfer time is reduced, however, reliable transfer is acquired.This difference widens as the packet size increases.As the data transfer rate decreases, the data transfer failure possibility and the indirect loss size increase.

Performance of the Session-Based Adaptive QoS and Non-QoS Techniques
The data transmitted using the non-QoS and session-based adaptive QoS techniques was not large in size.However, the final merged multimedia data showed big differences because the relationship between the layers was different.Figure 9a-c show the comparison results.This demonstrates that the lower layer can only be decoded by using higher layer data and that the loss of higher layer data can result in loss of lower layer data.To minimize this, the session-based method transmits this layer using TCP, resulting in a more reliable transfer as compared to UDP.The transfer time is reduced, however, reliable transfer is acquired.This difference widens as the packet size increases.As the data transfer rate decreases, the data transfer failure possibility and the indirect loss size increase.To compare the two techniques, the same amount of data is transferred using both.As the sizes of all the layers are not equal, we observe, from Figure 10a-c, that the transferred data is not continuous.The amount of data received using the FEC-based adaptive QoS method is smaller than that received from the non-QoS technique.Nevertheless, the whole data transfer loss rates are similar because of the direct loss factor.In the real-time data quantity comparison, the FEC-based adaptive QoS system shows better results.This is caused by FEC-based redundant retransmission of data.The higher level data is repeatedly sent, resulting in a lower transfer failure rate as compared to the non-QoS system.The FEC-adaptive QoS transfer method reduces the indirect loss of the transfer.

Performance Analysis Result
The performance of the adaptive QoS transfer algorithm and the existing transfer algorithm are compared.The experimental results show that the proposed method exhibits better data transfer results.During the transfer of a large multimedia file, the indirect loss of data caused by network limitations is comparable to the direct loss.It is almost impossible to compensate for direct loss at the client side.Therefore, data recovery techniques based on the transfer data specification that reduce indirect losses play a vital role.The proposed method is based on the principle that the higher layer transmission must be reliable in order to improve overall transmission efficiency.The server determines the data transfer rate by using the real-time bandwidth information.This results in an efficient data transfer system.In order to quantify the efficiency of the system, we measured the error rate in data.The results indicate that the adaptive QoS algorithm system performs better than the non-QoS technique.

Conclusions
Multimedia transmissions have gained research interest due to advances in networking.The emergence of mobile communication technologies and improved device performance are the key factors that have motivated studies on multimedia data transfer.This paper proposed two adaptive QoS transfer algorithms.The first method involved the selection of important data based on relationships and the other advocated setting of data transmission rates in accordance with the network bandwidth.When applied to a network that involves multimedia transmission, this adaptive QoS algorithm can be used to solve different problems.The proposed adaptive QoS data transfer algorithm can be adapted for use in wired and wireless networks.It can be considered as a service for server/client-based network structure that guarantees reliable service.In our future research, we will be analyzing new QoS algorithms and transfer-error prevention methods to address various heterogeneous network quality issues.