MX2014000641A - System for the simultaneous use of multiple heterogeneous network interfaces for improving the network yield in devices with different interfaces. - Google Patents

System for the simultaneous use of multiple heterogeneous network interfaces for improving the network yield in devices with different interfaces.

Info

Publication number
MX2014000641A
MX2014000641A MX2014000641A MX2014000641A MX2014000641A MX 2014000641 A MX2014000641 A MX 2014000641A MX 2014000641 A MX2014000641 A MX 2014000641A MX 2014000641 A MX2014000641 A MX 2014000641A MX 2014000641 A MX2014000641 A MX 2014000641A
Authority
MX
Mexico
Prior art keywords
information
module
network interfaces
interfaces
network
Prior art date
Application number
MX2014000641A
Other languages
Spanish (es)
Other versions
MX356716B (en
Inventor
Jesús Arturo Pérez Díaz
Ismael Amezcua Valdovinos
Original Assignee
Inst Tecnológico Y De Estudios Superiores De Monterrey
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inst Tecnológico Y De Estudios Superiores De Monterrey filed Critical Inst Tecnológico Y De Estudios Superiores De Monterrey
Priority to MX2014000641A priority Critical patent/MX356716B/en
Publication of MX2014000641A publication Critical patent/MX2014000641A/en
Publication of MX356716B publication Critical patent/MX356716B/en

Links

Abstract

Described is a general brief of one or more embodiments of the process for using multiple heterogeneous network interfaces for the basic understanding of the process intended to send recurrent information, as well as the general aspects of the processes involved in this patent. The invention described as processes allows sending information in a recurrent manner through multiple heterogeneous network interfaces to a remote node maximizing its yield upon using the complete bandwidth of all the active interfaces. The information is sent by a Connection managing module for establishing, maintaining, closing and aborting connections between network devices. The Connection Managing Module maintains the connections and sends them to the Data Managing Module, which is responsible of exchanging information through multiple interfaces of heterogeneous network. The Data Managing Module is formed by the data processing Module that is intended to manage the outgoing data, providing data packets t o the Packet Distribution Module. The Packet Distribution Module evaluates one of the available heterogeneous network interfaces for determining the number of segments that would be sent per each one of the interfaces. When packets are distributed, the module may interact in a direct manner with each one of the network interfaces for sending data through them. All the information sent by the packet distribution module is transported through an Internet Service Provider that is connected to the Internet and finally to a remote Device, which responds with acknowledgment segments to the multi modal device, the Packet Reception Module keeping in separated information queues, the received segments and passing them to the Segment Reassembling Module, which reassembles the original information from the separated information queues using a number of segments included in each one of the segments by means of the Data Processing Module. When all the information is reassembled and rearranged in a n arranged information queue, the data managing module passes this information to the application layer for being subsequently processed.

Description

System for the simultaneous use of multiple heterogeneous network interfaces to improve network performance in devices with several interfaces TECHNICAL FIELD OF THE INVENTION The present invention belongs to the technical field of telecommunications. In particular, the field of Wired and Wireless Technologies, as well as the field of Communication Protocols.
STATE OF THE ART Nowadays, wireless access technologies are widely used because they allow users to be connected to any network anywhere and at any time. The desire for mobility without requiring a means of physical communication for the transport of data may be the reason why these technologies are so popular. The wireless communication systems of the future aim to integrate multiple wireless access technologies to provide high-speed communication services to mobile users.
A considerable number of wireless access technologies have been developed in recent years. Each technology differs significantly in terms of services offered such as bandwidth, coverage area, quality of service, monetary cost, among others. Examples of wireless technologies are IEEE 802.11 (WiFi), IEEE 802.16 (WiMAX), GSM, CDMA2000, and UMTS.
Wireless access technologies are part of a larger communication network that allows users to connect to their Internet Service Provider (ISP) immediately. This general communication network is composed of a central network, which uses high-speed links to transport data from all users, and the access network.
Usually, many wireless access technologies converge in the same geographical area, allowing multi-modal devices to perceive signals from any of these networks. This is possible because each technology uses different frequency spectra, so they can overlap with nothing or little interference. This type of network topology is called heterogeneous networks.
Access networks are not linked only to wireless technologies. Wired links such as the Digital Subscriber Line (DSL) and its variants (xDSL), Internet cable and Fiber to the Home (FTTH) are widely used today to provide access to users with their respective ISP. Armed with wireless access networks, wired networks can converge with previous ones, providing a more heterogeneous network.
The companies that develop mobile devices have embedded in their products multiple network interfaces that correspond to different technologies, allowing the user to be connected using any of the available access networks whether wired or wireless. These devices are commonly called multi-modal devices. Currently, these devices use only one interface at a time to carry out communication with remote devices. This, in our opinion, restricts the exploitation of all the available resources of the device because they can not use the interfaces simultaneously for the creation of a link of greater capacity for the exchange of data.
The use of multiple network interfaces simultaneously offers great advantages. Some of these are listed below: • Sum of bandwidth. When a multi-modal device is using multiple network interfaces simultaneously, it can add up the bandwidths offered by each of the technologies, allowing applications that require large bandwidths to perform smoothly.
• Mobility support. When a multi-modal device moves from one network to another, the time associated with the reassociation process can be significantly reduced when another interface is active at all times.
The sum of bandwidth is a process in which multiple network interfaces are used in a simultaneous and collaborative manner for the creation of a high capacity network link. Ideally, this process uses all the available bandwidth in each of the networks.
The sum of bandwidth is not a new issue. It is a technique widely used in servers where two or more network interfaces work together to obtain better performance from the network perspective.
The most common architecture for the sum of bandwidth involves a device (device A) which has multiple network interfaces which it uses simultaneously for communication with a remote device (device B). The technologies used for communication with the remote device can be wired or wireless (heterogeneous networks) as mentioned above.
Support for mobility can be obtained using a single network interface when implementing mobility protocol as Mobile IP. However, the use of multiple network interfaces simultaneously facilitates the process since the multi-modal device is always connected to the Internet with another active interface. That is, if one network interface stops working, the other active interface can continue with the transfer of data to the remote device.
When a multi-modal device that is associated with a network moves, it can reach the coverage area of the associated network, ending the connection with the remote device. The process of reassociation is the ability to migrate from one network to another dynamically without losing connectivity. The time associated with this process is measurable in seconds. If the multi-modal device migrates from one network to another of the same technology, the process is called horizontal re-association. If the multi-modal device migrates from one network to another of different technology, the process is called vertical reassociation.
If a multi-modal device communicates through its multiple network interfaces simultaneously, it can move and reach the coverage area of a network and remain connected because it still has another network interface associated with another network. This allows the user to continue with their activities without connection interruptions due to connectivity problems.
The document entitled "Splitstream bandwidth management algorithm" with application number US201213648777 20131010 describes a system which provides the management of multiple TCP connections for the distribution of data from a server device to a multi-modal device as an application. The application must run in privileged mode because it collects data coming directly from the applications using Inter-Process Communication processes or data stored in the TCP output information queue. This approach differs from the process described in this patent as there is no need to collect data from the applications because the connection management is done from within a TCP implementation.
The document entitled "HTTP optimization, multi-homing, mobility and priority" with application number W02010US61360 20101220 describes a process that allows a multi-modal device to use multiple connections for the exchange of information based on the HTTP protocol. The architecture presented in this patent focuses on the exchange of information through HTTP. Therefore, its use is intended in restricted scenarios where HTML, images, audio and video resources are available on an HTTP server. The process described in the present patent allows the use of any type of data that TCP can transport.
The document entitled "Systems and methods for multiplexing multiple connections in mobile IP network" with application number MX20100012740 20101122 describes systems and processes based on Mobile IP technology for the use of multiple connections simultaneously. A proxy server for address assignment is used. This server contains mechanisms for multiplexing outgoing packets and demultiplexing incoming packets. The process described here does not require the use of extra hardware in the network because it is an exclusive software implementation.
An article entitled "TCP extension to send trafile simultaneously through multiple heterogeneous network interfaces" published in Proceedings of the 2009 Mexican International Conference on Computer Science with ISBN 978-0-7695-3882-2 of the same authors of the patent, describes mainly the problem of the impossibility of using concurrently more than one interface for sending traffic. Similarly the article proposes an idea of solution but does not include an implementation, or experimental tests, or optimization redesigns that gave rise to the entire process and the different modules described in this patent. After several years of redesign, Analytical experimentation and optimizations were achieved by defining the processes and modules that are described and desired to be protected in the present patent and that are those that truly improve performance.
DETAILED DESCRIPTION OF THE INVENTION In the following description, many specific details are used to provide a complete understanding of one or more aspects of the patent. The terms "component", "module", "system", and the like, are intended to include an entity related to a computer, whether in hardware, software or a combination of both.
The use of multiple heterogeneous network interfaces simultaneously is a challenging problem. For the use of multiple network interfaces, the data must be distributed across all the interfaces, maximizing the exploitation rate of the available bandwidth in each one of them.
In Figure 1 the network architecture is identified where a system 101 with multiple embedded network interfaces 102, 103, 104 are used for communication with the corresponding Internet Service Providers 105, 106, 107 and with a remote Device 110 to through Internet 108 and a corresponding Network Interface 109.
The multi-modal device 101 can be a computer, a mobile phone or a tablet with libraries capable of communicating through the network using the Transmission Control Protocol (TCP).
The multi-modal Device 101 connects to the Internet 108 through multiple network interfaces 102, 103, 104 which are hardware elements that allow any device to transfer information. These network interfaces can use the same network technology (homogeneous network interfaces) or use different network technologies (heterogeneous network interfaces) and are not linked to the use of three network interfaces simultaneously. The multi-modal Device 101 may have two or more network interfaces embedded therein. The process described in this patent dynamically adapts to the number of heterogeneous network interfaces that the multi-modal Device 101 includes.
Each Network Interface 102, 103, 104 is connected to an Internet Service Provider (ISP), which provides network connectivity between the Multi-modal Device 101 and the Remote Device 110.
The Remote Device 110 has a Network Interface 109 which allows the device to be able to communicate with other devices using the Internet 108.
Figure 2 shows the communication process using multiple heterogeneous network interfaces in a transparent way to users and applications. This process is described in detail below.
The Connection Management Module 201 is responsible for the management of creating, maintaining, closing and aborting TCP connections. When the multi-modal device is willing to transfer information, the connection management module sends a synchronization message to the remote device for each network interface that is inside the multi-modal device. If the Remote Device supports the use of multiple network interfaces, it responds with acknowledgment messages to the Multi-modal Device, The Connection Management Module 201 uses a special option message called bandwidth addition option making use of of the TCP options field for the exchange of signaling information.
The extension uses a value of 254 in the Option Type field. The option Data field is composed of the sub-fields of connection ID and number of interfaces. The complete field of Option Data is specified by a 6-digit number which is composed as follows: the first two digits belong to the number of interfaces used by the Multi-modal Device, and the last four digits belong to the identifier of Connection. This identifier is used for the multiplexing and demultiplexing of information in the transport layer and is a randomly generated number.
For the creation or establishment of a connection, the Connection Management Module 201 uses the sum of bandwidth option described above. First, the Connection Management Module 201 sends through one of the network interfaces a SYN segment with the active bandwidth sum option to synchronize with the remote Device. If the remote device supports the option of sum of bandwidth, it responds with a SYN / ACK segment to the Connection Management Module 201 with the option of active bandwidth sum. If the Remote Device does not support the sum of bandwidth, it sends a SYN / ACK segment to the Connection Management Module without the active bandwidth sum option. The Connection Management Module 201 sends an ACK segment to the Remote Device and then sends SYN segments using the rest of the network interfaces available in the Multi-modal Device with the active bandwidth addition option.
BRIEF DESCRIPTION OF THE FIGURES In Figure 1 the network architecture of the system is identified.
Figure 2 shows the communication process using multiple heterogeneous network interfaces transparently to users and applications.
BETTER METHODOPLE TO CARRY OUT THEINVENTION More specifically, the process for creating connections that involve multiple network interfaces has the following steps: 1. The Connection Management Module 201 sends a SYN segment to the Remote Device with the option of sum of active bandwidth using its primary network interface. 2. The Remote Device receives the SYN segment and sends an ACK segment. with the same option of sum of bandwidth towards the Connection Management Module 201 then, it waits for other SYN segments that arrive from the rest of the network interfaces. 3. The Connection Management Module 201 receives the ACK segments, verifying that the Remote Device implements the option of sum of bandwidth. If the Remote Device supports the addition of bandwidth, the remaining network interfaces of the Multi-modal Device send SYN segments with the active bandwidth sum option to the Remote Device. If the Remote Device does not support the sum of bandwidth, the Multi-modal Device only sends an ACK segment to the remote Device to carry out the exchange of information using only a network interface. 4. When the Remote Device receives the SYN segments from the remaining network interfaces of the Multi-modal Device, it sends ACK segments to the network interfaces using their respective IP addresses, creating a TCP connection by adding all the IP addresses and ports of the Multi Device. -modal also using its own IP address and port. 5. The Connection Management Module 201 receives the ACK segments and proceeds to the creation of a TCP connection using the IP address and port of the remote Device and its own IP addresses and ports.
The Connection Management Module 201 is responsible for closing the connections. For this, it sends an FIN segment through the slowest active network interfaces at the moment. The slower network interface is determined by the Package Distribution Module 204 because it collects performance information from each of the network interfaces dynamically and periodically.
After the Connection Management Module 201 establishes a connection, the module hands over the connection to the Data Processing Module 203, which is responsible for the processing of information that is to be sent through multiple 207 Network Interfaces. it is distributed in separate information queues which it delivers to the packet distribution module 204. The number of separate information queues depends on the number of network interfaces with which the multi-modal device counts.
The Data Processing Module 203 opens a resource or file which will be transferred through multiple network interfaces. It saves the resource in a set of information queues according to the number of network interfaces available in the multi-modal Device and the performance of each of them. This module is also responsible for package labeling. Each byte array stored in each information queue has a unique and incremental packet number which is used for the reassembly of segments. This number is stored in the first bytes of the data field of each packet.
After the resource information is stored in information queues and is tagged by the data processing module 203, the packet distribution module 204 determines the network performance of each of the network interfaces by obtaining the size of the network. segment and the time of return of the information of each socket The estimated yield is calculated by dividing the segment size by the return time and delivering the resulting value to a statistical filter such as the Kalman filter to eliminate measurement from the measurements.
The Package Distribution Module 204 uses the measurements evaluated with the Kalman filter to determine the number of segments that will be sent through each of the network interfaces. First, the algorithm is provided with a set of variables such as the weight of the performance for each of the network interfaces to indicate the percentage of performance that the user expects to obtain from each of the interfaces, and a cost weight of each interface to determine the percentage of use of network interfaces that have a monetary cost. These variables must be chosen in such a way that the sum equals 1.
The number of variables considered by the packet distribution algorithm is not linked to the two used in this patent. A set of other variables can be added to the algorithm to overcome specific device or network limitations because each of the variables is normalized to be evaluated as equal.
To obtain an improvement in performance, the variable of performance weight must be configured in 0.7 or more to indicate to the algorithm that the sum of the bandwidth of each of the interfaces is sought.
The Packet Distribution Module 204 obtains a relationship between network interfaces which describes the characteristics and usability range of each of the interfaces that the Multi-modal Device has.
Then, the Package Distribution Module 204 calculates a loading index of each interface which is then used to calculate the number of segments that are to be sent by each of the network interfaces at that moment.
The Package Distribution Module 204 determines by means of a series of formulas the number of segments that each network interface will send. Once the number of segments is calculated, the Network Interfaces 207 are responsible for the conversion of logical to physical information through coding and modulation to be sent through a physical medium to the Internet Service Provider 209.
The Internet Service Provider 209 is responsible for transporting data segments through the Internet 210 directly to the Remote Device. The remote Device can respond with information to the Multi-modal Device through the Internet Service Provider 209. Each packet is delivered to the IP address of the network interface through which it was sent.
The responses of the remote Device come from the Internet Service Provider 209 and are sent directly to the network interfaces using 207 Network Interfaces of the multi-modal Device. Each network interface delivers the responses from the remote Device to the Packet Receiving Module 205.
The Packet Receiving Module 205 is responsible for processing incoming packets. Each network interface has a queue of receiving information, which stores the information sent by the remote Device. The number of information queues is determined by the number of network interfaces of the multi-modal device. This module delivers the information queues to the Segment Reassembly Module 206.
Finally, the last step of the process is implemented by the Segment Reassembly Module 206, which searches for the lower number of packets that are in each of the interfaces' information queues. When it finds the lower number, it deletes the first bytes of the data field corresponding to the package number and the rest of the data is stored in an information queue which will contain the original information in order. The module executes the same algorithm until it finds no data in the network interface information queues.
The information queue where all the original reodemed information is found is delivered to the Connection Management Module 201. The administrator delivers the reordered information queue to the application layer for further processing.
When packet loss occurs, the Connection Management Module 201 employs a retransmission mechanism called selective acknowledgments (SACKs). The SACK option can be sent in the first SYN segment together with the option of sum of bandwidth. The remote device sends selective acknowledgments to each of the network interfaces as it knows the IP address by means of which the packets were sent from the multi-modal device. When the Multi-modal Device receives this information, it retransmits the segments that were lost through the interfaces in which the loss occurred.

Claims (6)

CLAIMS Having sufficiently described my invention, I consider as a novelty and therefore claim as my exclusive property, what is contained in the following clauses:
1. A process for the use of multiple heterogeneous interfaces equipped within a multi-modal Device simultaneously and collaboratively to obtain a better network performance, the process comprising: The creation of multiple connections between the Multi-modal Device and the Remote Device, - The labeling of information that will be sent for subsequent reassembly in the Multi-modal Device and Remote Device respectively; Sending information through multiple heterogeneous network interfaces simultaneously to the Remote Device-, The reception of information from multiple network interfaces simultaneously and the reordering of incoming packets, storing the information in a buffer to be processed by the application layer. The implementation of a packet distribution algorithm which dynamically balances the load between multiple heterogeneous network interfaces taking into account the characteristics of the network and the preferences of the user.
2. The process of claim 1 also comprises: The sending of SYN segments for each network interface with which the Multi-modal Device counts using the Connection Management Module-, and, The creation of a TCP connection using multiple heterogeneous network interfaces using the Connection Management Module.
3. The process of claim 1, wherein the information to be sent is distributed among a set of information queues which are determined by the number of interfaces that the multi-modal device has, and the labeling of the information with a segment number using the first n bytes of the information queue which is a number defined by the implementation and which serves for the reassembly of segments.
4. The process of claim 3, wherein the information in each information queue is delivered to the packet distribution module.
5. The process of claim 1, wherein the sending of information through multiple heterogeneous network interfaces is composed of: Obtaining network information such as the packet size and the return time of each of the network interfaces through the socket layer; Y, The calculation of the number of segments that will be sent through multiple heterogeneous network interfaces using a data distribution algorithm; Y, The distribution of the information contained in the information queues of each of the network interfaces to be sent by them.
6. The process of claim 1, wherein the information sent by the multi-modal device is received by the Remote device comprises: The packet receiver module which receives packets from the multiple network interfaces of the multi-modal device; Y, The Packet Receiving Module delivers each of the information queues to the Segment Reassembly Module; Y, The Segment Reassembly Module processes information from the information queues until it finds the smallest segment number. When it finds it, it stores the segment information in a new information queue which will contain the original information issued by the Multi-modal Device ·, and, The Segment Reassembly Module which delivers the queue of information ordered to the application layer for further processing.
MX2014000641A 2014-01-16 2014-01-16 System for the simultaneous use of multiple heterogeneous network interfaces for improving the network yield in devices with different interfaces. MX356716B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
MX2014000641A MX356716B (en) 2014-01-16 2014-01-16 System for the simultaneous use of multiple heterogeneous network interfaces for improving the network yield in devices with different interfaces.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
MX2014000641A MX356716B (en) 2014-01-16 2014-01-16 System for the simultaneous use of multiple heterogeneous network interfaces for improving the network yield in devices with different interfaces.

Publications (2)

Publication Number Publication Date
MX2014000641A true MX2014000641A (en) 2015-07-16
MX356716B MX356716B (en) 2018-05-24

Family

ID=54557116

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2014000641A MX356716B (en) 2014-01-16 2014-01-16 System for the simultaneous use of multiple heterogeneous network interfaces for improving the network yield in devices with different interfaces.

Country Status (1)

Country Link
MX (1) MX356716B (en)

Also Published As

Publication number Publication date
MX356716B (en) 2018-05-24

Similar Documents

Publication Publication Date Title
EP3278514B1 (en) Data transmission
EP2374319B1 (en) Multi-transport mode devices having improved data throughput
US20170302724A1 (en) Virtual Channel Joining
KR101961049B1 (en) Efficient centralized resource and schedule management in time slotted channel hopping networks
US20150319644A1 (en) A method and a system for sharing wireless broadband connection between devices
EP3534574B1 (en) Techniques for policy management of multi-connectivity network protocols
US9825815B2 (en) System and method for aggregating and estimating the bandwidth of multiple network interfaces
US10812292B2 (en) Packet processing method and device
KR20160091118A (en) Apparatus and Method for transmitting packets through multi homing based network
CN107615729A (en) Data transmission method and communicator
CN110740093B (en) Data forwarding device based on virtual host
TW200845775A (en) Message ordering for network based mobility management systems
JP2018511275A (en) Method and system for scheduling packets in bundling scenarios based on TCP tunnel and native TCP information
US20230033272A1 (en) Method and apparatus for dynamic and efficient load balancing in mobile communication network
Phatak et al. IP-in-IP tunneling to enable the simultaneous use of multiple IP interfaces for network level connection striping
US6950668B2 (en) High data rate communication
CN100544307C (en) The method and system of load control
KR101430853B1 (en) Communication node apparatus, communication system, and method for selecting destination reception interface used for same
De Schepper et al. ORCHESTRA: Supercharging wireless backhaul networks through multi-technology management
MX2014000641A (en) System for the simultaneous use of multiple heterogeneous network interfaces for improving the network yield in devices with different interfaces.
Tachibana et al. Implementation of a proxy-based CMT-SCTP scheme for Android smartphones
US9876724B2 (en) Method for seamless multi-link network connectivity
EP3534586B1 (en) Techniques for interaction between network protocols
US20220303194A1 (en) Enabling Data Exchange Between First and Second Communication Networks Having Different Data Communication Capabilities
CN114760358A (en) Application layer adaptive data forwarding system for distinguishing real-time and non-real-time data streams

Legal Events

Date Code Title Description
FG Grant or registration