The invention addresses issues regarding establishing network connections between network elements, in particular, when multi-homing technology is being deployed in a network.
Multi-homing is a technique to increase the reliability of the Internet connection for an IP network. In such deployment, Stream Control Transmission Protocol (SCTP) is normally the ideal choice for transport layer protocol. The basic idea of multi-homing is that a network entity is equipped with a few physical interfaces and each of the physical interfaces is assigned with a different IP address as shown in
In a prior art solution as shown in
However, if the network connection based on primary IP address can not be established (due to some disruption in the network, for instance) during the start-up phase, it would be not able to use any secondary IP address to establish any network connection either because they are not known to the network element. Thus, the connection between NE1 (11) and NE2 (12) can not be established. The only remedy is to manually configure the IP addresses of NE2 (12) in NE1 (11). The IP addresses centrally stored in DNS can not be used. It is especially troublesome when these network elements are located in different administrative domains.
It is an object of the invention to provide a solution to overcome the above-mentioned problems.
The present invention and its embodiments seek to address one or more of the above-described drawbacks and shortcomings.
According to an exemplary first aspect of the invention, there is provided a method for establishing connection. The method comprises sending a first message comprising the domain name of a network element to a server; receiving a response message comprising server record and domain names relevant to primary IP address and secondary IP address of the network element from the server; determining, on the basis of the received response message, the domain names relevant to the primary IP address and secondary IP address of the network element respectively; sending a second message comprising the determined domain name relevant to the primary IP address of the network element to the server; receiving the primary IP address of the network element from the server; attempting to establish a first connection towards the network element based on the obtained primary IP address; sending a third message comprising the determined domain name relevant to the secondary IP address of the network element to the server in the event that the first connection establishment attempt fails; receiving the secondary IP address of the network element from the server in response to the third message; and attempting to establish a second connection towards the network element based on the obtained secondary IP address.
According to further development or modification of the invention, the order of the domain names in said response message indicates the domain name relevant to the primary IP address. Alternatively, the domain name relevant to the primary IP address is indicated by a pre-defined domain name in said response message. Optionally, the domain name relevant to the primary IP address is indicated by a priority or/and a weight field of server record in said response message.
According to another aspect of the invention, there is provided a method (typically operated at a server). The method comprises receiving, from a first network element, a first message comprising a domain name of a second network element; retrieving, from a database of the server, domain names relevant to primary IP address and secondary IP address of the second network element; sending a response message comprising a server record, the retrieved domain names and an indication indicating the domain name relevant to the primary IP address to the first network element.
According to further development or modification of the invention, the order of the domain names in said response message indicates the domain name relevant to the primary IP address.
Alternatively, the domain name relevant to the primary IP address is indicated by a pre-defined domain name in said response message. Optionally, the domain name relevant to the primary IP address is indicated by a priority or/and a weight field of server record in said response message.
According to a third aspect of the invention, there is provided a network element comprising a processor, a first interface unit and a second interface unit. Said processor is configured to: send a first message comprising the domain name of a first network element to a server through said first interface unit; receive a response message comprising server record and domain names relevant to primary IP address and secondary IP address of the first network element from the server through said first interface unit; determine, on the basis of the received response message, the domain names relevant to the primary IP address and secondary IP address of the first network element respectively; send a second message comprising the domain name relevant to the primary IP address of the first network element to the server through said first interface unit; receive the primary IP address of the first network element from the server through said first interface unit; attempt to establish a first connection towards the first network element based on the obtained primary IP address through said first interface unit; send a third message comprising the domain name relevant to the secondary IP address of the first network element to the server through said second interface unit in the event that the first connection establishment attempt fails; receive the secondary IP address of the first network element from the server through said second interface unit in response to the third message; and attempt to establish a second connection towards the first network element based on the obtained secondary IP address through said second interface unit.
According to one embodiment of the invention, the order of the domain names in said response message indicates the domain name relevant to the primary IP address.
Alternatively, the domain name relevant to the primary IP address is indicated by a pre-defined domain name.
Optionally, the domain name relevant to the primary IP address is indicated by a priority or/and a weight field of server record in said response message.
According to a fourth aspect of the invention, there is provided a server comprising a processor, an interface unit and a database. Said processor is configured to: receive, from a first network element, a first message comprising a domain name of a second network element through said interface unit; retrieve, from said database, domain names relevant to primary IP address and secondary IP address of the second network element; and send a response message comprising server record, the retrieved domain names and an indication indicating the domain name relevant to the primary IP address to the first network element through said interface unit.
According to another embodiment of the invention, the order of the domain names in said response message indicates the domain name relevant to the primary IP address.
Alternatively, the domain name relevant to the primary IP address is indicated by a pre-defined domain name in said response message. Optionally, the domain name relevant to the primary IP address is indicated by a priority or/and a weight field of server record in said response message.
According to a fifth aspect of the invention, there is provided a computer program. The computer program comprises: code (or other means) for sending a first message comprising the domain name of a network element to a server; code (or other means) for receiving a response message comprising server record and domain names relevant to primary IP address and secondary IP address of the network element from the server; code (or other means) for determining, on the basis of the received response message, the domain names relevant to the primary IP address and secondary IP address of the network element respectively; code (or other means) for sending a second message comprising the determined domain name relevant to the primary IP address of the network element to the server; code (or other means) for receiving the primary IP address of the network element from the server; code (or other means) for attempting to establish a first connection towards the network element based on the obtained primary IP address; code (or other means) for sending a third message comprising the determined domain name relevant to the secondary IP address of the network element to the server in the event that the first connection establishment attempt fails; code (or other means) for receiving the secondary IP address of the network element from the server in response to the third message; code (or other means) for attempting to establish a second connection towards the network element based on the obtained secondary IP address. The computer program may be a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer.
According to a sixth aspect of the invention, there is provided a computer program (for a server). The computer program comprises: code (or other means) for receiving, from a first network element, a first message comprising a domain name of a second network element; code (or other means) for retrieving, from a database of the server, domain names relevant to primary IP address and secondary IP address of the second network element; code (or other means) for sending a response message comprising server record, the retrieved domain names and an indication indicating the domain name relevant to the primary IP address to the first network element. The computer program may be a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer.
Exemplary embodiments of the invention are described below, by way of example only, with reference to the following numbered drawings.
As explained previously, before attempting to establish a connection towards another network element, e.g. NE1, NE3 may request relevant IP addresses of NE1 from a server, e.g. a DNS. In step 31, NE3 may send a server record query (SRV, defined in IETF RFC2782) message comprising the domain name of NE1 to the DNS. “_sip” and “_sctp” indicate the underlying protocols being used for sending the query. Although Session Initiation Protocol (SIP) and Stream Control Transmission Protocol (SCTP) are the preferred protocols in the arrangement, any other suitable protocols may also be used instead. Upon receiving the message, DNS may response with a message comprising the domain names relevant to the primary and secondary IP addresses of NE1 as shown in step 32.
The response message may also indicate which domain name is relevant to primary IP address and which one is relevant to secondary IP address. According to one embodiment, the order of the domain names in the response message may indicate so, for example, the first/last domain name in the response message is always the one for primary IP address. As the domain name is normally contained a SRV record as part of the message, the priority field or/and the weight field of the SRV record may also be used to indicate which domain name is relevant to primary IP address according to another embodiment of the invention. A pre-defined domain name, for instance, pr.nel.nsn.com, may be used to specifically indicate the domain name relevant to primary IP address as well.
Alternatively, two response messages may be sent from the DNS to NE3 although it is not shown in
Based on the pre-defined rules as mentioned above, NE3 may determine the domain name relevant to the primary IP address of NE1. Then NE3 may send another query message comprising the determined domain name relevant to the primary IP address of NE1 to DNS as described in step 33. The DNS may then provide the primary IP address of NE1 to NE3 as shown in step 34. NE3 may try to establish a connection to NE1 by using the primary IP address. If the attempt fails as illustrated in step 35, NE3 may send a third query message comprising the domain name relevant to the secondary IP address of NE1 to DNS (step 36). In step 37, the DNS may provide the secondary IP address to NE3, which may be used by NE3 to initiate another attempt to establish connection to NE1 in step 38.
The above described message flow typically happens during start-up phase according to one aspect of the invention. However, it may be applicable in any other suitable situations.
The response message may also indicate which domain name is relevant to primary IP address and which one is relevant to secondary IP address. According to one embodiment, the order of the domain names in the response message may indicate so, for example, the first/last domain name in the response message is always the one for primary IP address. As the domain name is normally contained a SRV record as part of the message, the priority field or/and the weight field of the SRV record may also be used to indicate which domain name is relevant to primary IP address according to another embodiment of the invention. A pre-defined domain name, for instance, pr.nel.nsn.com, may be used to specifically indicate the domain name relevant to primary IP address as well.
Alternatively, the DNS may send two response messages. One response message may comprise the domain name relevant to the primary IP address of NE1 and another may comprise the domain name relevant to the secondary IP address of NE1. The order of sending the response messages may indicate the domain name relevant to the primary IP address. For example, the first or second message received by NE3 may comprise the domain name relevant to the primary IP address. The priority field or/and the weight field of the SRV record in the messages may also be used to indicate the domain name relevant to the primary IP address.
Through the interface unit (44), the DNS (41) may receive another query comprising the domain name relevant to the primary/secondary IP address of a network element, e.g. NE1. The processor (43) may retrieve its database (42) to find the primary/secondary IP address of NE1 and send it back to the sender via the interface unit (44).
The response message may also indicate which domain name is relevant to primary IP address and which one is relevant to secondary IP address. According to one embodiment, the order of the domain names in the response message may indicate so, for example, the first/last domain name in the response message is always the one for primary IP address. As the domain name is normally contained a SRV record as part of the message, the priority field or/and the weight field of the SRV record may also be used to indicate which domain name is relevant to primary IP address according to another embodiment of the invention. A pre-defined domain name, for instance, pr.nel.nsn.com, may be used to specifically indicate the domain name relevant to primary IP address as well.
Alternatively, said network element may receive two response messages from the DNS. One response message may comprise the domain name relevant to the primary IP address of NE1 and another may comprise the domain name relevant to the secondary IP address of NE1. The order of receiving the response messages may indicate the domain name relevant to the primary IP address. For example, the first or second message received by NE3 may comprise the domain name relevant to the primary IP address. The priority field or/and the weight field of the SRV record in the messages may also be used to indicate the domain name relevant to the primary IP address.
After determining the domain name relevant to the primary IP address of NE1 based on the predefined rules as discussed above, the processor (or processing means) (52) of said network element (51) may send another query to the DNS through interface unit 1 (54). The query may comprise the domain name relevant to the primary IP address of NE1. The network element (51) may receive, from the DNS, a response message comprising the primary IP address of NE1. The processor (52) of said network element (51) may attempt to connect NE1 by using the primary IP address. If it is successful, the connection is established. If not, the processor (52) of said network element (51) may send a third query to the DNS through interface unit 2 (53). The query may comprise the domain name relevant to the secondary IP address of NE1. The network element (51) may, from the DNS, receive a response comprising the secondary IP address of NE1 via interface unit 2 (53). The processor (52) may initiate a second attempt to connect NE1 by using the secondary IP address.
For the purpose of the present invention as described above, it should be noted that
It is to be understood that the above description is illustrative of the invention and is not to be construed as limiting the invention. Various modifications and applications may occur to those skilled in the art without departing from the scope of the invention as defined by the appended claims.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2010/068666 | 12/1/2010 | WO | 00 | 5/20/2013 |