# Enhancing Real-Time Video Streaming Quality via MPT-GRE Multipath Network
## 4 MPT Configuration Guidelines  
The MPT configuration files contain essential information that can be divided into two primary groups: general information for the MPT server and connection specifications.  
The configuration file is organized into multiple sections, with the \"general\" section being mandatory. This section defines the fundamental operational parameters required for the MPT server's functionality. Specifically, it specifies the total number of tunnels to be created, whether remote commands from other MPT servers are accepted for establishing connections not defined in local configuration files, the local command port used for communication with the MPT client, and the command timeout value.  
Each tunnel is described in a separate section and includes parameters such as its unique name and the Maximum Transmission Unit (MTU) crucial for determining packet size (calculated as 1500 minus the combined sizes of the Path IP header, UDP header, and GRE header) and both IPv4 and IPv6 addresses, with at least one address required. A single tunnel can be utilized by multiple connections, with each connection uniquely identified by the IP addresses of its two endpoints, ensuring they belong to the same IP version.  
The connection specifications are organized into three main sections: \"connection\", \"paths\", and the optional \"networks\" section. The \"connection\" section defines essential attributes, including a unique connection name, permissions for sending and receiving updates, the IP version (IPv4 or IPv6), local and remote IP addresses, and various port numbers used for data communication and control commands, including the GRE-in-UDP port number (4754) [20].  
Figure 2: The theoretical process of the MPT-GRE mechanism [17].  
Additionally, this section specifies the number of paths and networks associated with the connection, with a minimum path count of one and a maximum value that is implementation dependent. The initial status of the connection is also indicated, where a value of zero denotes an active connection. The authentication type is specified to determine whether control communication requires authentication. Optional parameters include the reorder window, which enables packet reordering based on GRE sequence numbers; the maximum buffer delay for ordered packet transmission; and an authentication key for secured communication, though some algorithms may not require it.  
The \"paths\" section contains detailed path definitions, which include the physical interface name (e.g., eth0, wlan0), the IP version, the public and remote IP addresses, and the gateway IP for reaching the peer. A weight parameter is included to allocate transmission capacity proportionally when per-packet-based mapping, with values ranging from 1 to 10,000. The initial status of the path can be set as \"up\" for active use or \"down\" for deactivation. Additional optional path parameters include the interface's private IP address. A keepalive mechanism monitors path availability by transmitting periodic messages and a dead-time threshold that marks a path as inactive after a prolonged absence of keepalive responses. There is also a weight-in parameter for adjusting path priorities on the peer side and a command default option that designates a specific path for control command communication.  
The optional \"networks\" section further refines routing configurations by specifying network definitions through IP versions, source and destination addresses, and prefix lengths. This section enables multipath Internet connectivity by defining 0.0.0.0/0 as the destination address, where the source address corresponds to the tunnel's assigned IP.  
These structured configurations collectively ensure the efficient operation of the MPT server, optimized tunnel management, and robust multipath communication capabilities.