CN100593781C - Connection forwarding - Google Patents

Connection forwarding Download PDF

Info

Publication number
CN100593781C
CN100593781C CN200680013383A CN200680013383A CN100593781C CN 100593781 C CN100593781 C CN 100593781C CN 200680013383 A CN200680013383 A CN 200680013383A CN 200680013383 A CN200680013383 A CN 200680013383A CN 100593781 C CN100593781 C CN 100593781C
Authority
CN
China
Prior art keywords
message
network
applicable
server
client computer
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
CN200680013383A
Other languages
Chinese (zh)
Other versions
CN101189599A (en
Inventor
K·利埃
J·滕森
S·麦克坎恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NBT Technology Inc
Original Assignee
NBT Technology Inc
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 NBT Technology Inc filed Critical NBT Technology Inc
Publication of CN101189599A publication Critical patent/CN101189599A/en
Application granted granted Critical
Publication of CN100593781C publication Critical patent/CN100593781C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Two or more network traffic processors connected with the same LAN and WAN are identified as neighbors. Neighboring network traffic processors cooperate to overcome asymmetric routing, thereby ensuring that related sequences of network traffic are processed by the same network proxy. A network proxy can be included in a network traffic processor or as a standalone unit. A network traffic processorthat intercepts a new connection initiation by a client assigns a network proxy to handle all messages associated with that connection. The network traffic processor conveys connection information toneighboring network traffic processors. The neighboring network traffic processors use the connection information to redirect network traffic associated with the connection to the assigned network proxy, thereby overcoming the effects of asymmetric routing. The assigned network proxy handles redirected network traffic in much the same way that it would handle network traffic received directly.

Description

Connect and send
The cross reference of related application
The application requires in the right of priority of the 60/663rd, No. 366 U.S. Provisional Patent Application of submission on March 18th, 2005, and this application has been incorporated and is used for various uses.The application be involved in submitted on October 30th, 2002 be entitled as " Transaction Accelerator for Client-Server CommunicationSystems " No. the 10/285th, 351, U.S. Patent application of " McCanne I " hereinafter referred to as; And on August 12nd, 2003 submit to be entitled as " Cooperative Proxy Auto-Discovery andConnection Interception " U.S. Patent application the 10/640th of " McCanne IV " hereinafter referred to as, No. 562, they all have been incorporated and are used for various uses.
Technical field
The present invention relates to field of data networks, relate in particular to the system and method that improves network performance.
Background technology
The network equipment of network agent and other type can be used for high-speed cache or store network data, accelerate network traffic, or control or influence network service between client computer and the server.
As used herein, " client computer " refers generally to make computing machine to the request of data or action, computing equipment, peripherals, electronic equipment etc., and " server " refer generally in response to do by one or more client computer to the request of data or action and computing machine of operating, computing equipment, peripherals, electronic equipment etc.Computing machine or miscellaneous equipment can be considered to client computer, server or both according to the background of its behavior.
As used herein, request can be for the request of operating of computing machine, computing equipment, peripherals, electronic equipment etc. and/or for being carried out by client computer or the request of the application program of control.An example is that operation need be stored in the document of computing machine outside and use the network file system(NFS) client computer to come to make to file server by network the computing machine of the word processor of request.Another example is the request for the action of the server that moves at the execution such as printing server, processing server, database server, Control Server and equipment interface server, I/O (I/O) server etc. itself.
The response message of the action that data that request is usually asked by providing or execution are asked, or such as error message or remind the indications such as warning of unsuccessful or inappropriate request can't satisfy this request responding message to surveillance and satisfy.Server also may stop request, send request, conversion request etc., responds or do not respond this request then.Usually, the request response cycle can be described as " affairs ", and for given affairs, certain object (physics, logic and/or virtual) can be called as " client computer " of these affairs, and certain other object (physics, logic and/or virtual) can be called as " server " of these affairs.
Client computer is sent request message to server, and server will return client computer to the response message delivery of each request message usually.As described in McCanne I and the McCanne IV, the network agent of communicating by letter with one or more equal network proxy can provide on the wide area network between two Local Area Network and quicken affairs, reduce the traffic and other function.Usually, in this class configuration, the request of client computer is delivered to server-side network proxy by the client-side network proxy intercepts that is connected with client computer by client computer LAN and by WAN.Server-side network proxy is delivered to server by server LAN with client request message.Request message can be acted on behalf of conversion or processing by two, makes request message (being likely request message in the future) more effectively not transmit when using cooperative network to act on behalf of on the network between two parties.Usually message can comprise single network grouping or a plurality of network packet with any form or data structure formation that is suitable for uploading at communication network carry information.
In these systems based on the agency, the client side proxy that wraps in that sends from client computer is received; The server-side proxy that wraps in from client side proxy is received; And be received from the server place that wraps in of server-side proxies.In many networks, these settings from the client computer to the server also sufficient to guarantee promptly, receive bag from server in server-side proxy from the reverse link communication of server to client machine; At the bag of client side proxy reception from server-side proxies; And at the bag of client computer place reception from client side proxy.
Yet in some network environment, there are more problems in this reverse link communication.Particularly, the LAN that comprises client computer or server can have with a plurality of redundancies of WAN and is connected.Therefore, asymmetric route can cause from the respond packet of server to client machine and may travel through and situation by different path, the employed path of the request package from the client computer to the server.Can rearrange communicating by letter and need not to understand in the situation of participation of client computer or server or client computer or server between client computer and the server the agency, the reverse link communication of having walked around agency and their cooperation setting can make the connection of acting on behalf of between the client-server degenerate or fall flat.The Knutsson of this problem of network agent and asymmetric route in the Journal in March calendar year 2001 ofCommunication Networks, Bjorn and Peterson mentioned in Larry " Transparent Proxy Signalling ".
Therefore, need a kind of system and method that overcomes above-mentioned influence.Also needing this system and method to connect the correlated series that makes network service by suitable WAN or other network is redirected.Also need this system and method when connecting redirecting network communication, to keep transparent to client-server by suitable WAN or other network.
Summary of the invention
According to an aspect of the present invention, provide a kind of in computer network environment in order to link information is sent to the system of neighbor proxies, each client computer in the described computer network environment can be by two or more network agents and each server intercommunication, and described system comprises:
Be connected the first module between localized network and the wide area network, wherein said first module is applicable to the initial message that receives at least from client computer, and described first module comprises and is applicable to and selects to be used to the handling network agent of the subsequent message that is associated with initial message and generate the logic that is used to identify described initial message and the subsequent message that is associated with described initial message and is redirected to the link information of described network agent; And
Be connected the Unit second between described localized network and the wide area network, wherein said Unit second is applicable to reception message;
Wherein said first module comprises and being applicable to and the be connected logic of information of described Unit second; And
Wherein said Unit second comprises and is applicable to and uses described link information to determine whether the message that received be associated with described initial message and in response to determining that the message that the is received message that will be received that is associated with described initial message is redirected to the logic of selected network agent to handle.
According to a further aspect in the invention, provide a kind of equipment that is used for managing network communication, described equipment comprises:
First interface is applicable to the reception network service by localized network;
Second interface is applicable to the reception network service by wide area network;
Be applicable to the logic of reception from the link information of optional equipment, wherein said link information comprises and is used to identify the information of the network service that is associated with the initial message of first client computer and the information that is used to specify network agent;
Be applicable to and use described link information to identify the logic of the network service that is associated with described initial message; And
Be applicable to and use described link information that the network service that is identified is redirected to logic by the network agent of described link information appointment.
In one embodiment of the invention, the two or more network agents that are connected with WAN with same LAN, for example simple and clear configuration by comprising network agent or by the intervention from the neighbor relationships of other available information is identified into the neighbour.Network agent as the neighbour wraps influence and other influence that overcomes asymmetric route jointly by sending mutually on demand, thereby guarantees to be handled by same network agent the correlated series of network service.
In one embodiment, for example in the neighbor group by receive that SYN wraps that the new connection that intercepts client computer just opens the agency be considered to " all agencies (the owning proxy) " of this connection.When the new connection that receives client computer was just opened, all agencies opened its inside connection on WAN to the bipartite network agency then and just open with the new connection of further reception and registration client computer at first to the identification information of all its neighbor proxies reception and registration about new connection.In some cases, do not convey a message and only some reception and registration of certain in them to all neighbor proxies.In these cases, although this only help to consider the neighbor proxies of failing to give notice in fact be not the neighbour they qualification as the neighbour is arranged.
In one embodiment, handle may be because asymmetric route or other network behavior and to walk around all agencies' bag for other in the neighbor group agency identification information that uses them to receive from all agencies.Receive the addressing information of the variable bag of neighbor proxies of the bag that is complementary with identification information, make it be received by all agencies.All agencies may come pack processing in the bag mode much at one that it directly receives with its processing subsequently.
In one embodiment, neighbor relationships can be finished clearly by agency or neighbor proxies.When neighbor relationships finished, neighbor proxies abandoned identification information.In another embodiment, neighbor proxies can be used the state of identification information to the corresponding connection of all agents query.When neighbor proxies has been closed in all agency's indication connections, or when all act on behalf of this connection of nonrecognition, or when all agencies can't respond, just abandon this information.
Description of drawings
The present invention illustrates with reference to the accompanying drawings, wherein:
The problem that Fig. 1 illustrates an example network and may be caused by asymmetric route.
Fig. 2 A-2B illustrates example network and improved network traffic flow according to an embodiment of the invention.
Fig. 3 illustrates an example that connects to come maintenance information by neighbor network according to an embodiment of the invention.
Fig. 4 illustrates the method that just opens new connection according to an embodiment of the invention.
Fig. 5 illustrates the method for the network service of processing according to an embodiment of the invention and join dependency connection.
In the accompanying drawings, same numeral is used to indicate similar member.
Embodiment
The problem that Fig. 1 illustrates example network 100 and may be caused by asymmetric route.Fig. 1 illustrates client computer 110 on the wide area network (WAN) 130 and the communication between the server 150, wherein should communication by two proxy client sides agencies 120 and server-side proxies 140 as intermediary.In this example network configuration, the message 115 that is sent to server 150 by client computer 110 is intercepted by client side proxy 120.Client side proxy 120 sends message 135 to server-side proxies 140.
In some applications, message 135 is identical with message 115.In other is used, for example, if client side proxy 120 comprises accelerating network or caching function, then client side proxy 120 with message 115 convert to may be in comprising size, coding, framing, being addressed at many aspect or the different equivalent messages 135 of others and message 115.Server-side proxies 140 receives message 135 and converts thereof into identical with origination message 115 or as the acceptable alternative message 145 of origination message 115.When network 100 is configured, can't see two agencies 120 and 140 influence: client computer 110 and server 150 send with receive with in message 115 by direct identical or its message that can accept to substitute that when client computer 110 is sent to server 150, can be occurred simply.
Similarly handle and be applicable to the message that sends in the opposite direction: but message 155 is addressed to client computer 110 serviced device side agency 140 interceptings.Server-side proxies 140 sends message 165 to client side proxy 120.In some applications, message 165 is conversions of message 155.Message 165 can be in comprising size, coding, framing, being addressed at many aspect or others different with message 155.The conversion that produces message 165 from message 155 can be different from the conversion that produces message 135 from message 115 fully.When being received by client side proxy 120, message 165 is converted into identical with origination message 155 or as its message that can accept to substitute 175.Some improvement that this class intercepting can provide is shown in the McCanne I.
In some applications, client side proxy 120 and server-side proxies 140 forms related with the first passage of the message of leading to server 150 via client side proxy 120 and server-side proxies 140 from client computer 110.Be used to similarly conversion of arrangement of the message of reverse transmission about this related information.
When being connected by one or more different network agents or other LAN to WAN with subsequent message, the initial message of asymmetric route between client computer 100 and server 150 take place.This takes place in the time of can having redundant link between WAN 130 and server 150 or client computer 110.One or more redundant links generally are used for load balance and improve reliability.As shown in Figure 1, server 150 is connected with WAN 130 by server-side proxies 140 and Additional servers side agency 141.
In an example shown, if adopt conventional network routing plan, can not guarantee then that from server 150 to client computer 110 message will travel through and 150 the identical link that message traveled through from client computer 110 to server, cause so-called asymmetric route.For example, use the initial communication of message 115,135 and 145 between client computer 110 and server 150 to arrive server 150, but response may not be like this by server-side proxies 140.
For example, the communication of returning of message 156 may be by 141 interceptings of different server-side proxies.Server-side proxies 141 is not known related between client side proxy 120 or client side proxy 120 and the server-side proxies 140.Therefore, server-side proxies 141 is used as message 156 as any other message that does not have additional information that it receives, and for example allows it pass through as message 166 unchangeably.Then, message 166 is striden WAN130 and is arrived client computer 110.In some was provided with, message 166a was directly received by client computer 110, because it is addressed to client computer 110; In other was provided with, all mail to the communication of client computer 110 client side proxy 120 interceptings, but will allow message 166b unchangeably by mailing to client computer 110 as message 176.In any situation, at first the message 156 that mails to client computer 110 from server 150 is not benefited from the association between client side proxy 120 and the server-side proxies 140.
This class " folk prescription " or " midway " communication means that the communication of having only a direction can benefit from the conversions of being carried out by agency 120,140 and 141.In some cases, this class communication pattern may be violated the rule of communication between client computer 110 and 150, causes communication failure.When not having second server side agency 141 or not receiving message 156 when server side 140,141, make it by simply when server 150 is sent to client computer 110 unchangeably, similar problem takes place.
Fig. 2 illustrates the example network that has improved network traffic flow according to an embodiment of the invention.Fig. 2 A illustrates and above-mentioned network 100 similar networks 200.In one embodiment of the invention, the server-side proxies 240 and 241 of network 200 has been configured to the neighbour, so in them each can be communicated by letter with the opposing party and/or recognized the opposing party.
The message 215 that is mail to server 250 by client computer 210 is intercepted by client side proxy 220.Client side proxy 220 sends message 235 to server-side proxies 240.Message 235 can be identical with message 215 or in comprising size, coding, framing, being addressed at aspect and/or the distortion of the different message 215 of others.
When server-side proxies 240 receives message 235, take additional step when message 235 is New Client/server establishment of connection: in this class situation, server-side proxies 240 will offer neighbor server-side proxy 241 from the new link information 248 that message 235 is obtained.Neighbor server-side proxy 241 is stored these new link informations 248 and it is associated with Servers-all side agency 240.
Server-side proxies 240 also converts message 235 to message 245, and the accepting of the identical or origination message 215 of message 245 and origination message 215 substitutes.Therefore, two agencies 220 are sightless with 240 influence: client computer 210 and server 250 send and receive or its message that can accept to substitute identical with the message that can occur when message 215 directly is sent to server 250 simply.For example, the network service that is conveyed to server 250 from server-side proxies 240 may have the source address of client computer 210.
For communicating by letter between server 250 and the client computer 210, neighbor server-side proxy 241 can receive the message 246 that mails to client computer 210 from server 250.Receiving such as from the communication such as message 246 grades of server 250 time, neighbor server-side proxy 241 uses the new link information 248 of its storages to determine that message 246 belongs to the connection by server-side proxies 240 foundation.Certainly, server-side proxies 240 can receive message and directly handle it.These message flows are not shown in Fig. 2 A, but expection carrying out as shown in fig. 1.
Determine that in response to this server-side proxies 241 sends message 247 to server-side proxies 240, in fact handle agency's " transmission " and connect to it.Server-side proxies 240 is processing messages 247 subsequently.Server-side proxies 240 uses it to convert message 247 to message 244 with the related information of client side proxy 220, message 244 and then transmission on WAN 230.Client side proxy 220 converts message 244 to message 249 subsequently, wherein identical the or origination message 246 of message 249 and origination message 246 accept substitute.
Message can send between the neighbor network agency with different ways.In one embodiment, send server side agency becomes the destination address of message the address of another neighbor server-side proxy.In the realization of this embodiment, the source address that the transmission agency does not change the message that is sent makes its matching addresses but the source address of maintenance message, and for example server 250.The agency who receives the message sent keep inside correspond to itself with the original source of message between the connection status that is connected.Therefore, for receiving from the agency of the message of neighbor proxies transmission, it is to receive from the original source of message rather than from neighbor proxies that the message of transmission appears.
In another embodiment, by in general routed encapsulation (" the GRE ") tunnel of for example between neighbor proxies, setting up whole message being encapsulated in another message, message is sent to neighbor proxies from acting on behalf of 241.In another embodiment, by from origination message, extracting service load and destination information and in the similar connection between TCP, SCTP or the agency, sending this service load, message is sent to neighbor proxies from sending the agency with the suitable data structure.
Usually, message can the detection of the one or more network packet that comprise each message and send layer or the neighbor network agency at semantic request and response message more high-rise or any interlayer place of handling between send.
Fig. 2 B illustrates example network 255 according to an embodiment of the invention.Network 255 is similar to network 200 except two client-side network proxy are arranged.In this example, the client side proxy 290 and 291 of network 255 has been configured to the neighbour, so they can intercom mutually and/or recognize the other side.
The message 265 that is mail to server 275 by client computer 260 is intercepted by client side proxy 290.Client side proxy 290 is sent to server-side proxies 270 with message 285.Message 285 can be identical with message 265 or message 265 in comprising size, coding, framework, being addressed at aspect and/or the different distortion of others.
When message 265 is received by client side proxy 290,, then take additional step if message 265 is New Client/server establishment of connections.In this class example, client side proxy 290 provides the new link information of obtaining from message 265 268 to neighbor client-side proxy 291.Neighbor client-side proxy 291 is stored these new link informations 268 and it is associated with All Clients side agency 290.
Server-side proxies 270 receives message 285 and converts thereof into and origination message 265 identical or its message that can accept to substitute 287.Therefore, two agencies 290 are invisible with 270 influence: client computer 260 and server 275 send and receive and identical or its message that can accept to substitute that can occur when message 265 directly is sent to server 275 simply.For example, the network service that is conveyed to server 275 from server-side proxies 270 can have the source address of client computer 260.
For communicating by letter between server 275 and the client computer 260, neighbor client-side proxy 291 can receive the message from server 275.For example, server 275 can send at the message 277 of client computer 260 and server-side proxies 270 can intercepts messages 277 and can convert thereof into may be identical with message 277 or with message 277 in comprising size, coding, framework, being addressed at aspect and/or the message 288 of the different distortion of others.For example, message 288 may be the compressed version of message 277.
Because the routing characteristic of wide area network 280, message 288 may be by any one reception in client side proxy 290 or 291.If the connection between the client side proxy that message 288 had before been set up 290 receptions thereby " having " client-side 260 and the server 275, then client side proxy 290 use about its with the related information of server-side proxies 270 and other in advance canned data convert message 288 to message 295, message 295 and then be sent to client computer 260.The accepting of the identical or original server message 277 of message 295 and original server message 277 substitutes.
Perhaps, if message 288 is received by client side proxy 291, then client side proxy 291 uses the new link information 268 of being stored to determine that message 288 belongs to the connection of setting up by client side proxy 290.Determine that in response to this client side proxy 291 sends message 288 by message 297 to client side proxy 290.Client side proxy 290 converts message 297 to message 295 subsequently, and message 295 is sent to client computer 260 subsequently.The accepting of the identical or original server message 277 of message 295 and original server message 277 substitutes.Can or can be not do not have bag corresponding to bag such as sending various message such as message with the message that converts them to.
For other embodiment, message can send between the neighbor network agency with multitude of different ways.In one embodiment, send the address that client side proxy becomes the destination address of message another neighbor client-side proxy.In the realization of this embodiment, send that source address that the agency do not change the message that is sent is mated its all addresses but the source address that keeps message server 275 for example.The agency who receives the message sent keeps the connection status that is connected between the original source of inner and message own corresponding to it.Therefore, for receiving from the agency of the message of neighbor proxies transmission, it is to receive from the original source of message rather than from neighbor proxies that the message of transmission appears.
In another embodiment,, in the gre tunneling of between neighbor proxies, setting up, whole message is encapsulated in another message, message is sent to neighbor proxies from acting on behalf of 291 by for example.In another embodiment, by from origination message, extracting service load and destination information and in the similar connection between TCP, SCTP or the agency, sending this service load, message is sent to neighbor proxies from sending the agency with the suitable data structure.
As mentioned above, message generally can the detection of the one or more network packet that comprise each message and send the more high-rise of layer, semantic request and response message or the neighbor network agency at any interlayer place of handling between send.
Though the transmission that Fig. 2 A-2B illustrates neighbor configuration, new link information and takes place in server-side proxies or client side proxy, similar techniques is also applicable to client-side and server-side proxies.Therefore, the client computer of message to server exchange can make new link information be sent to the client-side neighbor proxies, make new link information be sent to the server side neighbor proxies then, make message send between the server-side proxies and message is sent between client side proxy then.The details of the quantity of neighbor proxies and new link information is in client-side and can be different at server.In addition, no matter connect in client computer or on server and just opened, these technology can be by suitable use.
In other embodiments, the agency may be by nested.For example, WAN 230 may the actual actual WAN that is comprised by the different sets of client side proxy and server-side proxies that is implemented as.For the nested set of this class agency, a pair of client-side and server-side proxies may have the contiguous of non-zero number and act on behalf of on zero end of WAN, one or both ends; And respectively, another can have the neighbor proxies of non-zero number on the zero end of WAN, one or both ends to client-side and server-side proxies.This class is acted on behalf of nested any degree of depth that may extend to, and is not only above-mentioned two-layer.
Fig. 3 illustrates the example 300 that connects the data structure of keeping that is used to the information of transmitting by neighbor network according to an embodiment of the invention.Fig. 3 illustrates by a part of acting on behalf of the neighbor information of keeping based on the new connection message that is received. Project 301a and 301b respectively comprise target element 310 and owner unit 320.The meaning of projects is to be sent in any communication of mailing to target that this equipment place receives to the corresponding owner.Therefore, project 301 allows the neighbour to receive all agencies that the communication of mailing to 10.3.1.10:1921 replaces sending it to the 10.4.0.1:7810 place.Project 301b refers to that the communication of mailing to 10.3.5.44:2044 also should be sent to same all agencies.(example herein uses the RFC1918 specific address to avoid any of real network disturbed unintentionally; Certainly, public address can appear in the data structure.)
Fig. 3 only is intended to illustrate the essence and the relation thereof of institute's canned data; Actual data structure may comprise that other allows to search for fast, cheapness is inserted/deleted, holds the set of bulk information and reclaims mechanism old or untapped project.In addition, some embodiment will use additional information to distinguish such as project or other information that can easily obtain from the communication that receives such as source address, source port, protocol number, DSCP code points.At last, some embodiment will use the form of pattern match or part standard to allow to represent compactly the big classification of communicating by letter.Being suitable for that all these are possible all is categorical for a person skilled in the art." neighbor table " that partly illustrates in Fig. 3 can be stored in local storage, executive software agency's the storer etc. of computing machine of agent equipment.
Fig. 4 illustrates the method 400 that just opens new connection according to an embodiment of the invention.The method can be carried out and/or is embodied in the computer-readable instruction of this method of execution by the one or more assemblies in the network.In step 410, the agency receives message.In step 420, the agency determines whether this connection can be optimised.Some connects because configuration rule may be optimized, or may not obtain the counterparty agency in the network site that is fit to client-server.If it is unoptimizable connecting, then in step 440, the agency does not handle it by this connection.In other embodiments, method 400 is included in the more high-rise of semantic request and response message or at any interlayer place that handles rather than detecting and sending the step of layer managing message everywhere of one or more network packet that comprise each message.
Can be optimised if connect, then in step 430, the agency determines whether it has the neighbour.If have, then in step 450, the agency that this paper is called " owner agency " provides new link information to its each neighbour.In one embodiment, can use clean culture, multicast or broadcast technology and the new link information of neighbor proxies intercommunication.In due course, some agency who otherwise has neighbour's qualification can be taken as non-neighbour.
No matter whether it has the neighbour, and in step 460, the owner acts on behalf of beginning and is optimized or changes connecting communication with its counterparty agency.
Fig. 5 illustrates the method that is used to handle the network service that joins with join dependency that starts from the agency who receives message according to an embodiment of the invention.In step 510, the agency receives message.In step 520, the destination that the agency determines message whether with its neighbor table in one be complementary, such as shown in Figure 3.If the destination of message not with neighbor table in any project coupling, then process continues step 530, in step 530, acts on behalf of processing messages normally.This can comprise to its destination and sends message and the transforming message for the purpose of adjusting buffer memory or accelerating network or other operation randomly.
On the contrary, mate if determine the project in message and the neighbor table in step 520, then the agency can rewrite this message or its equivalent (step 540) and send it to suitable neighbor network agency and be used for handling (step 550).Transmission can use the various different technologies that comprise address exchange, tunnelling and above-mentioned service load extractive technique to realize.As mentioned above, the embodiment of method 500 can be included in semantic request and response message more high-rise, in any interlayer of handling or in the detection of the one or more network packet that comprise each message with send layer and manage the message that comprises one or more bags everywhere.Message can be the part of bag, and each message comprises a bag, or comprises and specifically depend on context by a plurality of bags.
In another embodiment, network agent can dynamically add.In one implementation, the new agency who adds normally receives and handles all-network and communicate by letter, and be sky as their neighbor table.Therefore, the web transactions of some type will be owing to such as the influence of aforesaid asymmetric route and other web influence and disturbed.Client-server will connect from disturbed web transactions recovery by just opening new network.New network connects by network proxy intercepts and cause new link information to be sent to the agency of new interpolation, thereby upgrades its neighbor table.
Fig. 6 illustrates complementary network 600 according to an embodiment of the invention.Network 600 is illustrated the set that comprises server-side proxies 605,610 and 615.May there be other unshowned networking component.For other embodiment, each in the server-side proxies set can be associated with one or more client side proxy (omitting in Fig. 6 for the sake of simplicity).Client side proxy can improve the conversion of network performance and might carry out other task with related the making between the server-side proxies.In this network configuration 600, server-side proxies needn't be with online with being connected of wide area network.
Network 600 comprises set of routers 620.In the set 620 of router each is connected with one or more wide area networks.Interceptor module set 625 is connected with set of routers 620.As detailed below, interceptor module set 625 is applicable to intercept network communication and where necessary network service is redirected to keep the route symmetry.In one embodiment, in each in the set of routers 620 and the interceptor module set 625 is associated.In alternative embodiment, router can be associated by different ratios with interceptor module.
The set of interceptor module is by comprising localized network such as the network switch 631,633 and one or more network switchs such as 635 and other networking gear and interconnect and being connected with 615 set with server-side proxies 605,610.The set 640 that is labeled as one or more servers of " S " in Fig. 6 also is connected with localized network 630.Server set 640 provides application program, information and service to one or more client computer.For brevity, client computer is omitted from Fig. 6 but can be coupled with router 620.
Interceptor module set 625 keeps the route symmetry of network service between client computer and the server set 640.For example, client computer sends initial message 650 to server.Initial message 650 can be conveyed to network 600 by client-side network proxy and by the wide area network (not shown) from client computer.Message 650 can be in the server set 640 specific one or generally in server set 640 or its subclass any one.
By the router in the set of routers 620 620 (a) when receiving initial message 650, message 650 is passed to the interceptor module 625 (a) that is associated.If desired for client computer therewith this or may be that subsequent communications keeps the route symmetry, then interceptor module 625 (a) selects suitable servers side agency to be associated with the client side proxy of client computer.The embodiment of interceptor module 625 (a) can select server-side proxies to realize load balance or other target in any amount of mode.Example load balance scheme can comprise round-robin, based on the mapping of load, viscous, as to use IP address hash or other message characteristics or any other scheme of load balance that is used to handle network service that is fit to these operations well known in the art.
According to this selection, interceptor module 625 (a) sends initial message 650 to selected server-side proxies.In addition, interceptor module 625 (a) sends new link information message 665 and stores the copy of a this new link information for itself to each other interceptor module of set 625.In one embodiment, new link information message 665 uses clean culture, multicast or radio network agreement to communicate by letter with other interceptor module on network 630.Should understand can be to 620 (a)/625 (a) agency/interceptors in addition to carrying out similar operation.
In one embodiment, new link information message 665 comprises that one or more network services that are used for being associated with the relative clients machine are redirected to the routing table rule of selected server-side proxies.In another embodiment, the routing table rule comprises one or more rules that are used to redirect network traffic from the pertinent client to selected server-side proxies.In addition, the routing table rule comprises that one or more being used for will be redirected to the rule of selected server-side proxies from one or more network services of mailing to this client computer of server set 640.
In a further embodiment, to the unique port of the selected server-side proxies of network communication distribution that is associated with given client computer.In one embodiment, used automatic discovery agreement, so client side proxy is learnt with which port to be connected on selected server-side proxies with interceptor module.In another embodiment, the port that is fit to connection on the set of rule definition server agent about client side proxy and/or interceptor module.
In case other interceptor module of gathering in 625 has received new link information message 665, then all network services that are associated with client computer will be redirected by selected server-side proxies.For example, the message 670 that mails to client computer from server 640 (b) will be propagated by localized network 630.During in arriving set of interceptors 625 one, receive interceptor module the new link information of message 670 with the client computer of its storage is complementary.In response, interceptor module is redirected to message 670 server-side proxies of previous selection.Selected server-side proxies will be handled and/or transforming message 670, by a router being associated in any one interceptor module in the interceptor module set 625 and the set of routers 620 message of gained be sent it back client computer then.In another embodiment, new link information is received by the set of routers 620 of handling network service in a similar fashion.
Similarly, mailing to the subsequent message 680 of a server the server set 640 from client computer will be by an interceptor in the set of interceptors 625, such as the interceptor in this example 625 receptions such as (c).Interceptor module 625 (c) is complementary the new link information of message 680 with the client computer of its storage.In response, interceptor module 625 (c) is redirected to message 680 server-side proxies of previous selection.Selected server-side proxies will be handled and/or transforming message 680, by localized network 630 message of gained be sent it back a server in the server set 640 then.
In an alternative embodiment, some or all-network agency can be integrated with interceptor module, makes the unit of each combination comprise to be used to handle with the network agent of changing related network service and be used for monitoring network to communicate by letter, create new link information and new link information is used for required message is redirected to other independently network agent or the interceptor module of combination and interceptor module of network agent unit.In the present embodiment, independently interceptor module also can be used for covering with the additional of wide area network and is connected.
In another embodiment, network agent can dynamically be removed from network.Neighbor proxies receive new link information and with this information stores in neighbor table.In addition, in this embodiment, neighbor proxies provides acknowledge message to owner agency.If owner agency does not receive the affirmation of returning from its one or more neighbor proxies, then owner agency think do not respond that neighbor proxies is deactivated and can with do not respond project that neighbor proxies is associated and from its oneself neighbor table, remove.
The flow process that outlines is used for each message clearly by receiving agency or the embodiment that the neighbour handles.In certain embodiments, message can be by receiving the agency or being handled by one of its neighbour.Solving in such an embodiment that this class selects to be of value to the mode that receives the agency, Message Processing stream will be included in receive after the message and check " neighbour's entitlement " be used for before determining this message whether with can be by the test of the match messages that receives agent processes.If this message can be by receiving agent processes, then processing will be referred to normal process and need not to check step.
Though with respect to specific embodiment of the present invention it is discussed, these embodiment are example of the present invention and non-limiting.In addition, the said system architecture is used for the example purpose.The present invention can realize with comprising as application program independently or as the many different form with the integrated module of other application program.Therefore, scope of the present invention is only determined by claim.

Claims (15)

  1. One kind in computer network environment in order to link information is sent to the system of neighbor proxies, each client computer in the described computer network environment can be by two or more network agents and each server intercommunication, described system comprises:
    Be connected the first module between localized network and the wide area network, wherein said first module is applicable to the initial message that receives at least from client computer, and described first module comprises and is applicable to and selects to be used to the handling network agent of the subsequent message that is associated with initial message and generate the logic that is used to identify described initial message and the subsequent message that is associated with described initial message and is redirected to the link information of described network agent; And
    Be connected the Unit second between described localized network and the wide area network, wherein said Unit second is applicable to reception message;
    Wherein said first module comprises and being applicable to and the be connected logic of information of described Unit second; And
    Wherein said Unit second comprises and is applicable to and uses described link information to determine whether the message that received be associated with described initial message and in response to determining that the message that the is received message that will be received that is associated with described initial message is redirected to the logic of selected network agent to handle.
  2. 2. the system as claimed in claim 1 is characterized in that, described first module and described Unit second are connected with one or more and described client computer in the wide area network by localized network.
  3. 3. the system as claimed in claim 1 is characterized in that, described first module comprises selected network agent, and perhaps selected network agent is connected with described first module by described localized network.
  4. 4. the system as claimed in claim 1 is characterized in that, described Unit second is applicable to by the destination address of revising the message that is received or by the tunnelling agreement of using at least a portion that encapsulates the message that is received and is redirected the message that is received.
  5. 5. the system as claimed in claim 1, it is characterized in that, described first module is applicable to the described link information of storage, and described first module comprises and is applicable to and uses described link information to determine whether the message that received afterwards be associated with described initial message and in response to determining that the message that the is received message that will be received that is associated with described initial message is redirected to the logic of selected network agent to handle.
  6. 6. the system as claimed in claim 1 is characterized in that, selected network agent is applicable to and forms related with network agent accordingly that described association is applicable to is convenient to transmit message on wide area network.
  7. 7. system as claimed in claim 6 is characterized in that, selected network agent is applicable to that message that processing receives is to produce the message through conversion, described message and the message equivalence that had before been received by corresponding network agent through conversion.
  8. 8. system as claimed in claim 6 is characterized in that, selected network agent is applicable to message that processing receives to produce the message through conversion, and described message through conversion is optimised at the communication on the wide area network.
  9. 9. equipment that is used for managing network communication, described equipment comprises:
    First interface is applicable to the reception network service by localized network;
    Second interface is applicable to the reception network service by wide area network;
    Be applicable to the logic of reception from the link information of optional equipment, wherein said link information comprises and is used to identify the information of the network service that is associated with the initial message of first client computer and the information that is used to specify network agent;
    Be applicable to and use described link information to identify the logic of the network service that is associated with described initial message; And
    Be applicable to and use described link information that the network service that is identified is redirected to logic by the network agent of described link information appointment.
  10. 10. equipment as claimed in claim 9 is characterized in that, also comprises:
    Be applicable to that sign is from the logic of the initial message of second client computer in the network service that receives by described first or second interface;
    Be applicable to the logic of selecting to be used to handle the network agent of the subsequent message that is associated with the initial message of described second client computer;
    Be applicable to that the network service that is associated for the initial message with described second client computer generates the logic of described link information, wherein said link information comprises and is used to identify the information of the network service that is associated with the described initial message of described second client computer and the information that is used to specify selected network agent; And
    Be applicable to and the be connected logic of information of at least one optional equipment.
  11. 11. equipment as claimed in claim 10 is characterized in that, also comprises:
    Selected network agent;
    Be applicable to that reception is redirected to the logic of the network service of selected network agent by at least one optional equipment; And
    Being applicable to provides the logic that is redirected to the network service of selected network agent by at least one optional equipment.
  12. 12. equipment as claimed in claim 11, it is characterized in that, selected network agent is applicable to that the network service that is associated for the initial message with described second client computer forms and being connected of second network agent, and wherein said connection is applicable to is convenient to the network service that transmission is associated with the described initial message of described second client computer on wide area network.
  13. 13. equipment as claimed in claim 12, it is characterized in that, selected network agent is applicable to the network service that conversion is associated with the described initial message of described second client computer, and wherein said network service through conversion is equivalent to the network service that had before been received by described second network agent.
  14. 14. equipment as claimed in claim 10, it is characterized in that, described equipment is applicable to that by the initial message of described first interface reception from described second client computer, perhaps described equipment is applicable to by the initial message of described second interface reception from described second client computer.
  15. 15. equipment as claimed in claim 9 is characterized in that, described being applicable to uses described link information that the logic that the network service that is identified is redirected to by the network agent of described link information appointment is comprised:
    Be applicable to that the logic of the address of the network agent that is provided by described link information is provided the destination address of the network service that will be identified; And
    Be applicable to and utilize the tunnelling agreement to come the logic of the network service that identified with network agent intercommunication by described link information appointment.
CN200680013383A 2005-03-18 2006-03-16 Connection forwarding Expired - Fee Related CN100593781C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US66336605P 2005-03-18 2005-03-18
US60/663,366 2005-03-18
US11/377,906 2006-03-15

Publications (2)

Publication Number Publication Date
CN101189599A CN101189599A (en) 2008-05-28
CN100593781C true CN100593781C (en) 2010-03-10

Family

ID=39481151

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680013383A Expired - Fee Related CN100593781C (en) 2005-03-18 2006-03-16 Connection forwarding

Country Status (1)

Country Link
CN (1) CN100593781C (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5617369B2 (en) * 2010-06-18 2014-11-05 日本電気株式会社 Communication relay system
CN103167022B (en) * 2013-02-04 2017-04-05 北京蓝汛通信技术有限责任公司 A kind of data pack transmission method, relevant device and system

Also Published As

Publication number Publication date
CN101189599A (en) 2008-05-28

Similar Documents

Publication Publication Date Title
US6466574B1 (en) Quality of service improvement of internet real-time media transmission by transmitting redundant voice/media frames
US9253243B2 (en) Systems and methods for network virtualization
CN104205942B (en) Multi-hop Fault recovery
US8477609B1 (en) Method and system for scaling network traffic managers
JP4902635B2 (en) Connection forwarding
EP1760971B1 (en) Processing communication flows in asymmetrically routed networks
CN101573927B (en) Path MTU discovery in network system
US7054276B2 (en) System and method for a multicast network messaging service
US7054948B2 (en) Collaborative host masquerading system
CN101427549B (en) Virtual inline configuration for a network device
US20050185621A1 (en) Systems and methods for parallel communication
CN103618678A (en) Method, device and system for self-adaptation multiple-link aggregation
AU2008333190B2 (en) Method of forwarding messages over a network and system for implementing the method
JP2002508123A (en) System and method for a multilayer network element
JPS62502303A (en) Interconnection method of packet communication networks
CN101124567A (en) Caching engine in a messaging system
CN101632273A (en) Methods, systems, and computer program products for source-aware IP routing at a media gateway
US6611874B1 (en) Method for improving routing distribution within an internet and system for implementing said method
CN105683929A (en) Method and equipment for sensing router by database and memory
CN101617239A (en) Selective session interception method
CN100593781C (en) Connection forwarding
CN101674286B (en) Method for implementing multi-path communications between host computers with single network interfaces
WO2001027772A1 (en) Load balancing via message source selection
Shantaf et al. A comparison study of TCP/IP and named data networking protocol
CN117099356A (en) Instance-affine service scheduling

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100310

Termination date: 20160316