Research on TCP/IP network performance measurement methods with satellite links

Source: Internet
Author: User
Tags rfc

1 Overview
A TCP/IP network system for measurement and control, transmitting multimedia information including video, voice, and real-time data. Because the system runs in an inaccessible environment, the evaluation of its service carrying capacity and transmission quality needs to be carried out on the simulation system, including the construction of a network experimental platform, the design of reasonable measurement methods, and the development of Performance Testing integrated software. Measure the signal transmission quality and network performance on the simulation platform, sort out and analyze the test data, and perform performance evaluation based on the actual network configuration. The network includes a long-chain satellite access channel with the transmission rate configurable.
  
In order to achieve the above objectives, the following work has been carried out: ① build a simulated network experimental platform, a satellite analog link with high latency and Les noise; you can manually set the access bandwidth, the maximum transmission rate is 2 Mb/s, and the variable speed is n? 64kb/s; ② simulate multi-channel digital video and voice access, and increase or decrease the number of services to control the network background traffic; ③ when there is a certain background traffic, the network transmission capability and signal transmission quality are measured by increasing or decreasing the controllable rate of data services, including available link bandwidth, link latency and delay jitter, and data signal packet loss rate; ④ analyze the relationship between network parameters and transmission quality based on the measured data, draw a curve and summarize the model, and provide a basis for network design and channel leasing.

2. Design of satellite link Simulator
When using TCP protocol for high-speed data transmission on satellite channels, it is subject to the "bottleneck" of BDP (latency bandwidth product) [1]. TCP uses the timeout and retransmission policy for traffic control. Its window byte (16 bits in TCP) restricts the data transmission performance, the 16-bit window in traditional TCP limits the maximum latency bandwidth product to only 64 KB, which limits the throughput on long delay links. (When transmitting data to a synchronous orbit satellite, the latency is about 200 ms.) [2], we can get: 64 KB/0.2 = 320 k. To adapt to this feature, a "large window" should be allowed to exist, so that the window value exceeds 64 KB, so that more data groups can be transmitted on the channel at the same time, to mitigate the impact of time extension, TCP will gradually increase the window value to improve transmission efficiency while avoiding congestion.
  
In satellite communication, a high error rate is also a feature that must be noted. Like other wireless communication methods, information is vulnerable to white noise, sudden noise interference, climate, and other factors will affect the channel's error code characteristics. On the data receiving end, TCP uses "checksum" to determine whether the data is affected. packets with "checksum" errors are discarded. However, at the beginning of the data, TCP assumes that the primary cause of incorrect data arrival is channel congestion. It will adapt to the channel characteristics by adjusting the transmission window. In this way, the data transmission rate will gradually decrease, resulting in low satellite communication efficiency.
  
As mentioned above, the satellite channel simulator in the experimental network will have the following features: ① only covers the satellite link; ② the satellite link simulator mainly considers the transmission delay and wireless error code.
  
For satellite channel transmission latency, the circular storage structure is proposed for [3] [4]. Because FPGA memory resources on the chip are limited, the transmission latency of satellite channels ranges from several milliseconds to several hundred milliseconds. Therefore, the simulation of transmission latency is implemented using external SDRAM, each channel uses an independent input/output buffer and FIFO to connect to the SDRAM.
  
Satellite Channel Errors include propagation loss, fading, Doppler shift, and noise. Based on theoretical studies on satellite channels, satellite channels can be modeled using multiple models, such as C. Loo models and corraza models. All these models assume that the channel fading characteristic is subject to a certain probability distribution. The signal-to-noise ratio (SNR) of the receiver is ultimately affected by the free transmission loss, antenna gain, polarization loss, and transformer power loss in satellite channels. Therefore, from the perspective of simulation, the entire satellite channel can be regarded as composed of the agwn channel that directly affects the signal-to-noise ratio and the multi-path fading channel that affects the fading characteristic, assume that the multi-path fading channel has direct components, the channel fading feature has the distribution of the number of places [3] [4].
  
Figure 1 shows the structure of the channel simulation module.

Figure 1 satellite channel simulator Structure
  
3. variable bandwidth network experiment model with satellite access Link
Figure 2 shows a network experimental platform designed and built according to project requirements. The features are as follows: ① SDH forms a ring backbone network with a transmission bandwidth of 155 Mb/s; ② 2 m speed PCM terminal, can I manually set n? 64 KB/s Ethernet port, SET network bottleneck bandwidth in the experiment; ③ satellite channel simulator, simulate a satellite channel with a long latency bandwidth product, used to improve the default window of TCP protocol, increase the maximum throughput of the satellite link.

Figure 2 variable bandwidth experiment network model with satellite access Link
 
4 network measurement methods
Network measurement methods and tools are diverse and can be divided into active measurement and passive measurement. Proactive measurement is performed by injecting probe traffic into the network, and network status information is obtained through response data; passive measurement is to listen to and record the group traffic in the network at the main entrances and exits of the network and perform measurement to extract and analyze the data to obtain the network status information.

In the network evaluation, determining network performance indicators or measures is the most critical and directly affects the network evaluation content and its comprehensiveness, rationality and effectiveness. For example, bandwidth, latency, latency jitter, packet loss rate, traffic or throughput are all well-known measurements. Currently, the network measurement indicators defined by ietfs Ippm (IP performance metrics) are divided into the defined indicators defined by RFC and a draft indicator in IETF. The former includes connectivity (RFC 2678), one-way latency (RFC 2679), one-way packet loss (RFC 2680), round-trip latency (RFC 2681 ), the latter includes instantaneous packet delay changes, IP packet delay changes, and unidirectional loss mode sampling [5] [6].
  
4.1 Test Method and Performance Parameter Selection
This project uses the active Test method: assigns the test machine on the network and actively sends the test traffic, for example, from client a to client B, to obtain the test result information between the two ends.
  
The Network Measurement content selected in this project includes bandwidth, latency, latency jitter, packet loss rate, traffic and throughput.

4.2 test points
① Set the lab network as a dedicated network bandwidth, gradually increase the business, measure indicators such as information packet loss rate, latency and latency jitter, visually test the quality of video transmission, and calibrate the tolerance of the above indicators.
② Gradually lower the network transmission rate under the given service capacity, and Judge Based on the calibration indicator to obtain the minimum bandwidth required for the transmission of the given service.
③ Add a satellite channel simulator, gradually add noise or increase latency, test the packet loss rate of information transmission, and draw a two-variable curve of packet loss rate, latency, and noise power.
④ Change the number of services, record changes in video quality, bandwidth values, latency values, packet loss rate indicators, and find the "bottleneck" of the dedicated network in terms of bandwidth and latency ". The latency here refers to the transmission delay, not the transmission delay, because the transmission delay has been reflected by the Bottleneck Bandwidth [7].

4.3 testing program architecture
  
The measurement program adopts the hierarchical Measurement Architecture of Winpcap + Winsock.
  
Winpcap is derived from the BPF (Berkley Packet Filter) and Libpcap function libraries and supports Win32 network monitoring program design. Winsock is a familiar windows socket programming tool, originated from Berkley socket technology. The two network development tools have their own characteristics. They can be used together to improve the efficiency of software development and improve the running performance of software. Winpcap supports receiving and sending original network data packets, bypassing the TCP/IP protocol stack, which is conducive to high-speed packet detection and analysis. It also supports packet filtering, processing only the data that the application is interested in can improve program running performance and reduce system overhead, but cannot provide connection-oriented and connectionless network services for end-to-end applications.
  
Winsock is a program development tool built on the TCP/IP protocol stack. It provides connection-oriented and connected network services, greatly reducing the workload of program development. However, network programs must obtain data packets from the protocol stack, which increases operation overhead and reduces performance. Because the link layer frame header has been removed before it is submitted to the IP layer, it is not easy to Analyze Low-layer network data and has limited application scope.

Figure 3 architecture of the measurement program
  
The program adopts a three-tier architecture: network interface layer, network layer, and test layer.
  
The network interface layer is the NIC driver module, which is responsible for interaction between programs and network devices.
  
The network layer consists of two parts: a network module based on NPF (Network Packet Filter) and a network module based on TCP/IP.
  
The test layer accesses NPF through the Winpcap programming interface, detects the original data packets and obtains the arrival time of the data packets, and accesses TCP/IP through the WinSock programming interface to obtain TCP session information. The master-slave program test layer includes two basic functional modules: Packet detection and TCP session. The data packet detection module uses the Winpcap interface to obtain the original data packet in the network. After the measurement starts, the data packet detection module of the main program directly parses the IP packet ID issued by the sending computer and records the data packet in the main test window, the packet detection module of the program directly parses the IP address of the packet received by the computer at the receiving end, records the packet into the test window, and records the arrival time of the video packet; the TCP session module uses the Winsock interface to establish a TCP connection between the master and slave programs, control the measurement steps, and exchange the data obtained during the measurement process. The window adjustment module dynamically adjusts the size of the test window using these two basic functions. Based on the correctly received packets and the packet sequence confirmed by the main program notification, check the packet loss from the program's packet loss confirmation module, and report the packet loss data to the main program. Based on the feedback packet loss information, the main program's packet loss rate calculation analysis module calculates the packet loss rate. The latency calculation module computes the latency that arrives at video packets one after another through time extraction, and returns the last latency statistical value to the latency acquisition module of the main program through the TCP session connection.

5 conclusion
The measurement software is used for testing on the experimental platform to verify the availability of the selected performance measurement indicators and the effectiveness of the measurement methods. Specifically for the specific circumstances of the private network, a priority plan suitable for the network to carry business transmission is formulated, and measures to improve the network performance are proposed, laying the foundation for the smooth completion of the project. In the future work, we will strengthen the research on fault management functions according to the requirements of the target task book, and promote the network performance testing and fault locating technologies to the new generation of self-organizing networks. In terms of satellite channel simulators, a comprehensive multi-functional simulator with interstellar networks will be studied as the target.
  
The author's innovation in this article is: (1) the variable rate design of the test platform provides conditions for testing the available bandwidth of the network; (2) introducing the satellite channel simulator, research on TCP/IP Transmission for large-latency channels.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.