FI111890B - A method for optimizing network traffic - Google Patents
A method for optimizing network traffic Download PDFInfo
- Publication number
- FI111890B FI111890B FI20011645A FI20011645A FI111890B FI 111890 B FI111890 B FI 111890B FI 20011645 A FI20011645 A FI 20011645A FI 20011645 A FI20011645 A FI 20011645A FI 111890 B FI111890 B FI 111890B
- Authority
- FI
- Finland
- Prior art keywords
- virtual connection
- server
- optimizer
- communication link
- packet
- Prior art date
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
f 111890 /f 111890 /
Menetelmä verkkoliikenteen optimointiin Tämän keksinnön kohteena on menetelmä tietoliikenneverkkojen liikenteen optimointiin, jossa muodostetaan ainakin yksi tiedonsiirtoyhteys pakettimuotoisen verkkoliikenteen toteuttamiseksi päätelaitteen ja tietoliikenneverkkoon tiedonsiirtoyhtey-5 dessä olevan ainakin yhden palvelimen välillä, ja päätelaitteen protokollapinossa reititetään ainakin osa tiedonsiirtoyhteydestä optimoijan kautta. Lisäksi keksintö kohdistuu järjestelmään pakettimuotoisen verkkoliikenteen optimoimiseksi, joka käsittää välineet ainakin yhden tiedonsiirtoyhteyden muodostamiseksi pakettimuotoisen verkkoliikenteen toteuttamiseksi päätelaitteen ja tietoliikenneverkkoon tiedonsiirto-10 yhteydessä olevan ainakin yhden palvelimen välillä, jossa päätelaitteessa on ainakin yksi protokollapinoja ainakin osa tiedonsiirtoyhteydestä on järjestetty reititettäväksi optimoijan kautta.The present invention relates to a method for optimizing traffic in telecommunications networks, wherein at least one communication link is established for implementing packet-switched network traffic between the terminal and at least one server in the communication link, and at least a portion of the data link is routed in the protocol stack of the terminal. The invention further relates to a system for optimizing packet data traffic comprising means for establishing at least one data link between a terminal and at least one server communicating with a data network 10, wherein the terminal has at least one protocol stack for routing at least a portion of the data link.
Nykyiset tietoverkoissa, kuten Internetissä, käytettävät protokollat on suunniteltu toimimaan kiinteän yhteyden verkoissa, joissa on suhteellisen pieni latenssi (viive) ja 15 kohtalaisen suuri tiedonsiirtokaista. Protokolla tyypillisesti keskustelee vastapään kanssa, lähettäen pyyntöjä ja saaden näille kuittauksia sekä vastauksia. Kun näitä samoja protokollia, esimerkiksi TCP, HTTP, POP3 ja IMAP, käytetään verkoissa • · ··*/ joissa on suuri latenssi, tuloksena on heikko tehokkuus johtuen kuittausten ja vas- tausten odotusajan kasvamisesta. Lisäksi epävarmoissa verkoissa tapahtuva tietolii- ‘ . 20 kennepakettien katoaminen omalta osaltaan heikentää protokollan toimintaa.Current protocols used in data networks, such as the Internet, are designed to operate on wired networks with relatively low latency (delay) and 15 medium bandwidths. The protocol typically communicates with the opposite, sending requests and receiving acknowledgments and responses. When these same protocols, such as TCP, HTTP, POP3, and IMAP, are used on networks with high latency, · · ·· *, the result is poor performance due to increased acknowledgment and response waiting times. In addition, communication over insecure networks. The loss of kernel packages, for its part, undermines protocol performance.
• ‘: Tätä ongelmaa ratkaisemaan on kehitetty useita eri menetelmiä, joilla pyritään opti- *...· moimaan verkkosovellusten käytettävyys eri tavoin. Tunnetut verkkoliikenteen op timointiin tarkoitetut menetelmät perustuvat protokollakohtaiseen optimointiin, jossa * ' esimerkiksi HTTP-protokollaa hyödyntävän sovelluksen verkkoliikenne kierrätetään * · · ’ 25 välityspalvelimen 13 (proxy) kautta, joka optimoi pyynnöt ennen verkkoon lähetystä.• ': To solve this problem, a variety of methods have been developed to optimize * ... · the usability of web applications. Known methods for optimizing network traffic are based on protocol-specific optimization, where * 'the network traffic of an application using, for example, the HTTP protocol is circulated through a proxy 13 that optimizes requests before being sent to the network.
: Kuvassa 3 on esitetty eräs tällainen tunnetun tekniikan mukainen järjestelmä pelkis- * · * tettynä kaaviona. Etuja ovat mm. älykäs optimointi, koska välityspalvelin ymmärtää : sovelluksen käyttäytymistä sekä mahdollisuus pitää usein käytettyjä tietoja asiakas- ·:*·· koneen muistissa. Tällaisen ratkaisun haittapuolia ovat kuitenkin muun muassa pro- 2 111890 tokollasidonnaisuus, tarve konfiguroida sovellukset käyttämään välityspalvelinta sekä heikko tehokkuus suuren latenssin omaavissa tietoliikenneverkoissa, kuten GSM-ja GPRS-matkaviestinverkot. Osassa menetelmistä on lisäksi käytetty optimoitua protokollaa proxy-asiakkaan ja palvelimen (server) välillä, jotta verkon latenssin 5 tuomat ongelmat pystytään minimoimaan.Figure 3 shows one such prior art system in a reduced * · * diagram. Benefits include: intelligent optimization because the proxy understands: application behavior and the ability to store frequently used data in the client ·: * ·· machine memory. However, the disadvantages of such a solution include, but are not limited to, protocols, the need to configure applications to use a proxy server, and poor performance in high latency communication networks such as GSM and GPRS mobile networks. In addition, some methods utilize an optimized protocol between the proxy client and the server to minimize the problems caused by network latency.
Keksinnön perusajatus on suorittaa verkkoliikenteen optimointi verkkoprotokollapi-non alemmalla tasolla, jolloin keksintö kykenee optimoimaan kaikkien sovelluksien verkkoliikenteen täysin läpinäkyvästi. Menetelmässä sovelluksen käyttämä TCP-yh-teys (Transmission Control Protocol, RFC 777) siepataan protokollapinossa olevalla 10 komponentilla ja se korvataan virtuaalisella yhteydellä verkon toisessa osassa sijaitsevaan palvelimeen. Palvelin muuttaa virtuaaliyhteyden jälleen TCP-yhteydeksi alkuperäiseen kohteeseen. Virtuaaliyhteys hyödyntää protokollaa, joka on optimoitu epävarmoille verkoille, joissa on paljon latenssia. Lisäksi virtuaaliyhteydessä hyödynnetään myös muita optimointeja, kuten tiedon pakkausta ja useiden TCP-yhteyk-15 sien paketoimista.The basic idea of the invention is to perform network traffic optimization at a lower level of network protocol coupling, whereby the invention is able to optimize network traffic for all applications in a fully transparent manner. In the method, the TCP connection (Transmission Control Protocol, RFC 777) used by the application is intercepted by 10 components in the protocol stack and replaced by a virtual connection to a server located in another part of the network. The server again changes the virtual connection to a TCP connection to the original destination. The virtual connection utilizes a protocol optimized for uncertain networks with high latency. In addition, other optimizations, such as data compression and packet wrapping for multiple TCP connections, are utilized in the virtual connection.
Täsmällisemmin ilmaistuna keksinnön mukaiselle menetelmälle on pääasiassa tunnusomaista se, mikä on esitetty patenttivaatimuksen 1 tunnusmerkkiosassa. Keksin-: nön mukaiselle järjestelmälle on pääasiassa tunnusomaista se, mikä on esitetty pa- tenttivaatimuksen 7 tunnusmerkkiosassa.More specifically, the method of the invention is essentially characterized by what is stated in the characterizing part of claim 1. The system according to the invention is essentially characterized by what is set forth in the characterizing part of claim 7.
....: 20 Keksinnöllä saavutetaan merkittäviä etuja tunnetun tekniikan mukaisiin ratkaisuihin •. · · | verrattuna. Keksintö tarjoaa ratkaisun, joka ei ole protokolla- tai sovellussidonnai- nen, eikä vaadi sovellusten konfigurointia verkkoliikenteen optimoimiseksi, ja joka » · · on samalla suunniteltu toimimaan optimaalisesti tietoliikenneverkoissa joissa on suu-·:·*! ri latenssi. Protokollariippumattomuus antaa käyttäjälle mahdollisuuden hyödyntää • : 25 keksinnön etuja lukuisissa eri tietoliikennesovelluksissa, kuten web-selaimissa, säh- köpostissa, tiedostojen siirrossa sekä etäkäytössä. Koska sovelluksia ei tarvitse erik-.' “. seen konfiguroida käyttämään keksintöä, on sen käyttöönotto ja käyttäminen hyvin . \ suoraviivaista ja helppoa.....: 20 The invention provides significant advantages to prior art solutions. · · | compared to. The invention provides a solution that is not protocol-specific or application-specific, and does not require application configuration to optimize network traffic, and which is · · · designed to work optimally on communication networks with large ·: · *! ri latency. Protocol independence allows the user to take advantage of •: 25 inventions in a variety of communication applications such as web browsers, email, file transfer, and remote access. Because there is no need for applications. ' ". In order to be configured to use the invention, it is well implemented and used. \ Straightforward and easy.
• * » * » · 3 111890• * »*» · 3 111890
Keksintöä selostetaan seuraavassa tarkemmin viitaten samalla oheisiin piirustuksiin, joissaThe invention will now be described in more detail with reference to the accompanying drawings in which
Kuvio 1 esittää kaavallisesti menetelmän toimintaa tyypillisessä verkkora-5 kenteessa.Figure 1 schematically illustrates the operation of the method in a typical mesh structure.
Kuvio 2 esittää menetelmän toimintaa VPN-ohjelmiston kanssa.Figure 2 illustrates the operation of the method with the VPN software.
Kuvio 3 esittää tyypillisen nykyratkaisun toimintaperiaatetta, jossa käytetään välityspalvelinta.Figure 3 illustrates the working principle of a typical state-of-the-art solution using a proxy server.
Seuraavissa esimerkeissä käytetään protokollapinon 12 eri kerroksissa käytettävistä 10 protokollista esimerkkinä TCP, UDP ja IP, mutta on selvää, että keksintöä ei ole rajoitettu ainoastaan näitä protokollia käyttäviin järjestelmiin.The following examples use TCP, UDP and IP as protocols 10 for use in different layers of the protocol stack 12, but it is to be understood that the invention is not limited to systems using only these protocols.
Menetelmä perustuu asiakas-palvelin malliin, jossa asiakkaan 10 protokollapinoon 12 on lisätty suodatin 3 joka sieppaa tietyt ehdot täyttävät tietoliikennepaketit ja välittää ne optimoijalle 4. Tässä keksinnön edullisessa suoritusmuodossa, jota on pel-15 kistetysti kuvattu oheisessa kuvassa 1, suodatin 3 tarkastelee ainoastaan TCP-',:t* protokollan 1 kautta kulkevaa tietoa, jolloin UDP-protokollan 2 kautta kulkeva tieto • 4 « *"* jatkaa suoraan läpi IP-protokollaan 5. Tyypillinen sovellusesimerkki on sellainen, t I t “ *. jossa sovellus 15 avaa TCP-yhteyden palvelimelle 9 ja siirtää dataa tätä yhteyttä pit- • * * . kin. Optimoinnin ollessa kytketty päälle, suodatin 3 havaitsee TCP-yhteyden avaus-The method is based on a client / server model where a filter 3 is added to the protocol stack 12 of the client 10 to intercept certain communication packets and pass them on to the optimizer 4. In this preferred embodiment of the invention, illustrated in p-15, filter 3 only considers TCP- ',: t * information passing through protocol 1, whereby information passing through UDP protocol 2 • 4 «*" * proceeds directly through to IP protocol 5. A typical application example is t I t "*. where application 15 opens TCP- connection to server 9 and transfer data over this connection. * * * When optimization is enabled, filter 3 detects the opening of the TCP connection.
* I* I
20 pyynnön, välittää sen optimoijalle 4, joka muodostaa virtuaaliyhteyden (11) verkon 6 • · läpi optimointipalvelimelle 7. Samalla kun virtuaaliyhteyttä muodostetaan, simuloi suodatin 3 TCP-protokollalle 1 onnistuneen yhteydenmuodostuksen, jolloin sovellus 15 voi olennaisesti välittömästi lähettää pyyntöjä palvelimelle 9. Optimointipalvelin 4 I · ,·. 7 avaa TCP-yhteyden verkon 8 kautta palvelimelle 9 ja välittää virtuaaliyhteyden • * · !.! 25 kautta kulkevan datan palvelimelle 9 sekä palvelimelta tulevan datan takaisin opti- • · » * moijalle 4, joka välittää sen sovellukselle 15. Kun TCP-yhteys suljetaan, välitetään • * · •‘ · *· · tämä tieto optimointipalvelimelle 7, joka sulkee oman yhteytensä palvelimelle 9.20, passes it to the optimizer 4, which establishes a virtual connection (11) through the network 6 to the optimization server 7. While establishing the virtual connection, the filter 3 simulates successful connection establishment for TCP protocol 1, whereby application 15 can essentially immediately send requests to server 9. I ·, ·. 7 opens a TCP connection through network 8 to server 9 and transmits the virtual connection • * ·!! 25 data to server 9, and data from the server back to the optimizer 4, which passes it to application 15. When the TCP connection is closed, this information is passed to the optimization server 7, which closes its own connect to server 9.
• * 4 111890• * 4 111890
Virtuaaliyhteydessä 11 menetelmä käyttää edullisesti optimoitua protokollaa, jonka avulla saavutetaan parempi tiedonsiirron tehokkuus kuin TCP-protokollalla. Virtuaaliyhteydessä kulkevaa tietoa voidaan tarvittaessa myös pakata jollakin pakkausalgo-ritmilla pienempään tilaan. Lisäksi tietoa voidaan salata jollakin salausalgoritmilla, 5 jolloin tiedonsiirtoyhteydessä välitettävän informaation selvittäminen ilman asianmukaista salauksen purkavaa avainta on hankalaa.In the virtual connection 11, the method preferably uses an optimized protocol that provides better data transmission efficiency than the TCP protocol. The information passing through the virtual connection may also be compressed, if necessary, by a compression algorithm into a smaller space. In addition, the data may be encrypted by some encryption algorithm, 5 which makes it difficult to determine the information to be transmitted in the data transmission connection without a proper decryption key.
Toisessa esimerkissä, jota esittää kuvio 2, asiakkaalla on tarve saada yhteys kahteen eri palvelimeen 9, 19, joista toinen sijaitsee suojatun VPN-yhteyden (Virtual Private Network, virtuaalinen sisäverkko) takana yrityksen sisäverkossa 18. VPN-teknologia 10 käyttää olennaisesti samanlaista siepparimenetelmää kuin keksintökin, siepaten kaikki virtuaaliseen sisäverkkoon 18 lähetettävät paketit. Tällöin TCP-yhteydet tulee jakaa kahden eri palvelimen 9, 19 välille IP-osoitteiden perusteella, esimerkiksi lO.x.x.x osoitteet VPN-yhteyden kautta sisäverkon palvelimelle 19, ja muut julkiselle palvelimelle 9. Kuvassa 2 VPN-yhteyden osalta suodattimen 3 lähettämät ja vastaan-15 ottamat paketit kulkevat VPN-suodattimen 16 läpi, joka paketoi ne omalla tavallaan. Paketit jatkavat matkaansa virtuaaliyhteydessä 21 normaaleina IP-paketteina verkon 22 yli VPN-palvelimelle 17, joka avaa VPN-paketit ja välittää pakettien sisällön op- , timointipalvelimelle 20. Tästä eteenpäin toiminta on olennaisilta osiltaan identtistä • · "Y edellisen esimerkin kanssa. Verkot 22 ja 6 voivat olla myös yksi ja sama verkko, s · · "'20 esimerkiksi Internet.In the second example shown in Figure 2, the client needs to connect to two different servers 9, 19, one of which is behind a secure VPN (Virtual Private Network) connection on an enterprise intranet 18. VPN technology 10 employs a method substantially similar to that of the invention. , intercepting all packets sent to the virtual intranet 18. In this case, TCP connections should be split between two different servers 9, 19 based on IP addresses, for example, 10.0xx addresses via VPN to intranet server 19, and others to public server 9. In Figure 2, the VPN connection sends and receives the packets taken pass through the VPN filter 16, which packets them in its own way. The packets continue their journey in the virtual connection 21 as normal IP packets over the network 22 to the VPN server 17, which opens the VPN packets and forwards the contents of the packets to the optimization server 20. From now on, operation is essentially identical to the previous example. 6 can also be the same network, s · · "'20 for example the Internet.
* · 1 i 1 1 I < · • ’ 1 1 ‘: Vaihtoehtoisesti menetelmä voidaan toteuttaa protokollapinon 12 ulkopuolelle tule- : ' · valla laitteella, joka sieppaa IP-paketit ja prosessoi ne optimoijan kautta. Tällainen < « « ·'... 1 laite on tyypillisesti osa verkon infrastruktuuria, esimerkiksi reititin (ei esitetty).Alternatively, the method may be implemented by a device outside the protocol stack 12 that intercepts IP packets and processes them through the optimizer. Such a device is typically part of a network infrastructure, such as a router (not shown).
·;··· Menetelmä voidaan myös toteuttaa suoraan protokollapinon 12 sisälle, esimerkiksi **": 25 TCP-protokollaan. Tällöin keksintö toimii osana käyttöjärjestelmää. Etuna tässä 11 · , V. vaihtoehdossa on selkeämpi toimintamalli ja mahdollinen teho- ja muistisäästö, jolla » > · > » voi olla suurikin merkitys esimerkiksi pienikokoisessa kannettavassa laitteessa.·; ··· The method can also be implemented directly inside the protocol stack 12, for example ** ": 25 TCP protocol. In this case, the invention operates as part of the operating system. The advantage of this 11 ·, V. option is a clearer operating model and > ·> »Can play a big role in a small portable device, for example.
t ·t ·
I I II I I
t I 1 j, j I Menetelmä voidaan toteuttaa myös osana VPN-ratkaisua. Ohjelmistopohjaiset VPN- * ratkaisut käyttävät samankaltaista IP-pakettien suodatusta kuin keksintökin, joten 5 111890 optimoijan lisääminen VPN-suodattimeen 16 on varsin suoraviivainen ja tehokas ratkaisu.t I 1 j, j I The method can also be implemented as part of a VPN solution. Software-based VPN * solutions use similar IP packet filtering as the invention, so adding the 5111890 optimizer to the VPN filter 16 is a very straightforward and efficient solution.
Menetelmään voidaan lisäksi toteuttaa lisäpalveluita, jotka näkyvät asiakassovelluksille normaaleina verkkopalveluina. Tällä tavoin toteutettuna esimerkiksi HTTP-5 proxy voi toimia optimoijan 4 sisällä.In addition, the method can provide additional services that appear to client applications as normal web services. When implemented in this manner, for example, the HTTP-5 proxy can operate within the optimizer 4.
On selvää, että nyt esillä olevaa keksintöä ei ole rajoitettu ainoastaan edellä esitettyihin suoritusmuotoihin, vaan sitä voidaan muunnella oheisten patenttivaatimusten puitteissa.It will be understood that the present invention is not limited to the above embodiments, but may be modified within the scope of the appended claims.
♦ ·· • ♦ · · • · · · » · · » · · • · «tl • · · • · • · · • · • · · 1 I · · · ·♦ · • ♦ ♦ »t t t l l l l l l l 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI20011645A FI111890B (en) | 2001-08-14 | 2001-08-14 | A method for optimizing network traffic |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI20011645A FI111890B (en) | 2001-08-14 | 2001-08-14 | A method for optimizing network traffic |
FI20011645 | 2001-08-14 |
Publications (3)
Publication Number | Publication Date |
---|---|
FI20011645A0 FI20011645A0 (en) | 2001-08-14 |
FI20011645A FI20011645A (en) | 2003-02-15 |
FI111890B true FI111890B (en) | 2003-09-30 |
Family
ID=8561738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FI20011645A FI111890B (en) | 2001-08-14 | 2001-08-14 | A method for optimizing network traffic |
Country Status (1)
Country | Link |
---|---|
FI (1) | FI111890B (en) |
-
2001
- 2001-08-14 FI FI20011645A patent/FI111890B/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
FI20011645A0 (en) | 2001-08-14 |
FI20011645A (en) | 2003-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210119975A1 (en) | Secure network communication system and method | |
Knutsson et al. | Transparent proxy signalling | |
US8938553B2 (en) | Cooperative proxy auto-discovery and connection interception through network address translation | |
Koponen et al. | Architecting for innovation | |
JP4727125B2 (en) | Secure dual channel communication system and method through a firewall | |
Schulzrinne et al. | GIST: general internet signalling transport | |
US7441262B2 (en) | Integrated VPN/firewall system | |
US7318100B2 (en) | Cooperative proxy auto-discovery and connection interception | |
JP4902635B2 (en) | Connection forwarding | |
US8976798B2 (en) | Method and system for communicating over a segmented virtual private network (VPN) | |
US8762569B1 (en) | System for selecting a proxy pair based on configurations of autodiscovered proxies on a network | |
US8111692B2 (en) | System and method for modifying network traffic | |
US7643416B2 (en) | Method and system for adaptively applying performance enhancing functions | |
Touch et al. | A recursive network architecture | |
EP1443731A2 (en) | Method and system for providing security in performance enhanced network | |
WO2022151867A1 (en) | Method and apparatus for converting http into https bidirectional transparent proxy | |
US20080320154A1 (en) | Cooperative proxy auto-discovery and connection interception | |
EP1443713A2 (en) | Method and system for utilizing virtual private network (VPN) connections in a performance enhanced network | |
US9332091B2 (en) | Address manipulation to provide for the use of network tools even when transaction acceleration is in use over a network | |
US20030217149A1 (en) | Method and apparatus for tunneling TCP/IP over HTTP and HTTPS | |
US20060190612A1 (en) | Delayed network protocol proxy for packet inspection in a network | |
KR19980070104A (en) | How to Improve Session and Transport Layer Proxies with Transport Control Protocol Glue | |
Barré | Implementation and assessment of modern host-based multipath solutions. | |
CA2668611A1 (en) | Selective session interception method | |
US8650632B2 (en) | Scalable transparent proxy |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM | Patent lapsed |