+

WO2009114995A1 - Système et procédé d'enregistrement de nom orienté application dans un environnement nat - Google Patents

Système et procédé d'enregistrement de nom orienté application dans un environnement nat Download PDF

Info

Publication number
WO2009114995A1
WO2009114995A1 PCT/CN2009/000298 CN2009000298W WO2009114995A1 WO 2009114995 A1 WO2009114995 A1 WO 2009114995A1 CN 2009000298 W CN2009000298 W CN 2009000298W WO 2009114995 A1 WO2009114995 A1 WO 2009114995A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
registration
message
network
registration service
Prior art date
Application number
PCT/CN2009/000298
Other languages
English (en)
Chinese (zh)
Inventor
傅川
王迪
张国清
秦卓琼
Original Assignee
中国科学院计算技术研究所
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 中国科学院计算技术研究所 filed Critical 中国科学院计算技术研究所
Publication of WO2009114995A1 publication Critical patent/WO2009114995A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers

Definitions

  • Multi-layer NAT environment to register the name of the application and its service method
  • the invention belongs to the technical field of computer networks, in particular to a method for registering names of applications under the NAT environment. Background technique
  • NAT Network Addres s Trans lator
  • the NAT device provides the address translation function for the private network address of the NAT.
  • the host in the private network can transparently access the external network address. Otherwise, the private network address of the host in the NAT is not routable on the external network. The host cannot directly access the host located in the private network. Therefore, a large number of services deployed in the private network, such as Web services, instant messages, and FTP services nodes, cannot be directly accessed by the external network of the private network.
  • NAT Network Address Translation
  • FTP service node Services on the private IP address of the NAT
  • the peer-to-peer communication services (such as instant messaging, file sharing, and media transmission) deployed on the private network IP in the NAT can generally use the protocol of the RFC standard such as the ST volume, TURN, and ICE to relay through the public network service node.
  • NAT tunneling, reverse join and other technologies provide services to hosts on the Internet.
  • the task of the present invention is to provide a system and method for making a service in a private network visible to its external network, independent of a specific application, and providing a more reasonable access path for an external network node in a multi-layer NAT environment. .
  • the multi-layer NAT environment registers a system with an application name
  • the multi-layer NAT environment has a public network and at least one private network, and the private network accesses the public network through the address translation unit or Other private network
  • the application-oriented name registration system includes a system terminal device for transmitting a login request and a registration service unit for receiving a login request, the registration service unit including a top-level registration service unit accessing the public network and connecting a basic registration service unit of the private network
  • the registration service unit is configured to receive a login request message of the system terminal device, and record user login information of the system terminal device, where the user login information includes at least a user identifier and a system terminal used by the user The user access point of the device in the network accessed by the registration service unit and the system terminal device access point used by the system terminal device used by the user in the network accessed by the registration service unit.
  • the registration service unit is further configured to perform an inquiry according to the recorded user login information, and determine a forwarding node between the system terminal devices.
  • the user login point is a network address and port of the registration service unit or the system terminal device, or may be converted into a network address and a port of the registration service unit or the system terminal device.
  • the query is to find the user login point with the shortest distance from the called party to the calling party NAT in all the user login points of the called party according to the user login information.
  • the access point of the system terminal device is a network address and a port of the NAT device, or may be converted into a network address and an identifier of the port of the NAT device.
  • the top-level registration service unit accesses the public network through the top-level service bus
  • the basic registration service unit accesses the private network through the service bus
  • the top-level registration service unit uses the network address of the public network for addressing
  • the basic The registration service unit is addressed using the network address of the connected private network.
  • the registration service unit includes: a registration service logic control unit, a basic configuration information record table, a hierarchical information record, a target registration server record, a sub-registration server record table, a user login information record table, and a user registration information record table. , message buffer and communication unit;
  • the registration service logic control unit is configured to control execution of the registration service;
  • the basic configuration information record table is used to record the identity of the unit, the host address of the unit, and the service port of the unit;
  • the hierarchical information record is used for recording hierarchy information;
  • the target registration server record Used to record the network address and port of the ancestor registration server;
  • the sub-registration server record table is used to record the network address, port, identifier, and network address and port of the corresponding NAT device of the sub-registration service unit;
  • the user login information record table is used for recording User identification, user login point and system terminal device access point;
  • user registration information record table is used to record user account opening information;
  • message buffer area is used for temporarily storing information in the received data packet and forwarding relationship record table; communication unit with top level
  • the service bus device or the service bus device is connected and is responsible for transmitting and receiving data.
  • the registration service logic control unit reads the unit identifier, the unit host address, the unit service port from the basic configuration information record table according to the execution requirement, reads the level information from the hierarchical information record, and reads the ancestor registration server from the target registration server record.
  • the network address, the port, the network address, the port, the identifier, and the network address and port of the corresponding NAT device are read from the sub-registration server record table, and the user ID and the user login point are read from the user login information record table.
  • a system terminal device access point reading the user identifier from the user registration information record table; reading from the message buffer area temporarily storing the information and the forwarding relationship in the received data packet, and reading the received data from the communication unit;
  • the registration service logic control unit writes the unit identifier, the unit host address, and the unit service port to the basic configuration information record table according to the execution requirement, records the network address and port of the ancestor login server, and registers with the target registration server.
  • Server record table Write the network address, port, identifier, and network address and port of the corresponding NAT device of the record sub-registration service unit, and write the user ID, the user login point, and the corresponding system terminal device access point to the user login information record table.
  • the user registration information record table writes the user identifier; writes to the message buffer area to temporarily store the information in the received data packet, and forwards the relationship, and writes the data to be sent to the communication unit.
  • the system terminal device includes: a terminal device control unit, a basic configuration information record table, a target registration service device record, a message buffer area, and a communication list.
  • the terminal device control unit is configured to control execution of the terminal device;
  • the basic configuration information record table is used to record the user identifier, the network address and port of the terminal device; and the target registration service device records the network address used to record the registration service device.
  • a port the message buffer is used to temporarily store received or sent messages;
  • the communication unit is used to connect to a public network or a private network;
  • the terminal device control unit reads and writes information in the basic configuration information record table, the target registration service device record, and the message buffer area; and the terminal device control unit further transmits and receives data from the network through the communication unit.
  • the method provided by the present invention for performing user login to the name registration system of the application under the multi-layer NAT environment includes the following steps:
  • the system terminal device obtains a service entry of the basic registration service unit, and the service entry is a network address and a port or an identifier that can be converted into a network address and a port;
  • the system terminal device sends a user login message to the basic registration service unit according to the service portal, where the user login message carries the user login information;
  • the user login information described in this step includes at least the user identifier and the network address of the terminal device using the system. And the user login point defined by the port;
  • the registration service unit records the user login information, and the registration service unit of the upper layer network forwards the user login message carrying the user login information; the user login information described in this step includes at least the user identifier;
  • the registration service unit of the upper layer network After receiving the forwarded user login message, the registration service unit of the upper layer network repeats the operation of step 3) until the user login message is forwarded to the top-level registration service unit of the access public network.
  • the user login point in the step 2), is a network address and a port, or may be converted into an identifier of a network address and a port; in the step 3), the user login point is a network address. And a port, or an identifier that can be translated into a network address and port; the system terminal device access point is a network address and port, or can be converted to an identifier for the network to the address and port.
  • the registration service unit after receiving the user login message directly sent by the system terminal device, the registration service unit returns a response message to the system terminal device.
  • an initialization step is further performed before the step 1), the initialization step is: firstly, starting a top-level registration service unit accessing the public network, and then starting the basic registration service unit of the private network to start layer by layer and Register with the name registration system to join the name registration system.
  • the step 1) includes the following sub-steps:
  • the system terminal device sends a service entry query message to a global service portal known to the name registration system;
  • the registration service unit of the global service entry mapping determines whether it can directly serve as a service entry for providing service to the terminal device of the system. If the determination is yes, a success message is returned; if the determination is no, the system returns a redirect to the system terminal device. a message, the redirect message carries a service entry of a registration service unit of a lower layer network of a network to which the registration service unit to which the global service portal is mapped;
  • the system terminal device sends a service entry query message to the registration service unit provided by the redirect message;
  • the registration service unit determines whether it can directly serve as a service entry for providing service to the terminal device of the system. If the determination is yes, a success message is returned; if the determination is no, a redirect message is returned to the system terminal device, the weight
  • the directed message carries a service entry of a registration service unit that accesses a lower layer network of a network to which the current registration service unit belongs;
  • the global service entry is a network address and a port of a top-level registration service unit.
  • step 1) includes the following sub-steps:
  • the registration service unit broadcasts a broadcast message containing the local login service entry in the network to which it belongs;
  • the system terminal device listens to the broadcast message to obtain a service entry.
  • the registration service unit may send the broadcast message by using a registration service unit proxy.
  • the processing method after the registration service unit receives the user login message includes the following steps:
  • step 31 determining, according to the user login point in the message, whether the sender of the message is a lower layer registration service unit, if yes, go to step 32), if not, go to step 34);
  • the user identifier in the message is used as the user identifier
  • the source address and the source port point of the data packet carrying the message are used as the system terminal device access point
  • the unit identifier is used as the user login point
  • the user information record table stored in the unit is stored. In, go to step 38);
  • the network address determines whether the user terminal is behind the NAT, if not, go to step 35), if yes, go to step 36);
  • step 39 Determine whether the unit is a top-level registration service unit, if not, go to step 39); if yes, the registration process ends;
  • step 33), step 33) is further performed as follows:
  • the method for sending the user login message to the upper layer registration service unit is as follows:
  • the user login point in the locally received user login message is replaced with the identifier of the local registration service unit, a new user login message is generated, and then the new user login message is sent to the upper registration service unit.
  • the method further includes the step 5), and the step 5) is as follows:
  • the registration service unit performs an inquiry according to the recorded user login information, and determines a forwarding node between the system terminal devices.
  • the system terminal device sends a user login point search request message to the service portal of the name registration system, where the message includes at least the requested user identifier;
  • the registration service unit searches the local user login information record table for the presence or absence of the user identifier of the requested user, and if yes, returns the user login point of the requested user; if not, the current registration service is accessed.
  • the registration service unit of the upper layer network of the network to which the unit is connected forwards the user login point lookup request message;
  • the registration service unit accessing the upper layer network searches the local user login information record table for the presence or absence of the requested user identifier, and if so, returns the user login point of the system terminal device of the requested user; if not, Access to the current registration service
  • the registration service unit of the upper layer network of the network to which the unit is connected forwards the user login point lookup request message;
  • step 53 repeating step 52) until the user login point of the requested system terminal device is obtained;
  • the method for providing a forwarding service to the name registration system of the application provided by the present invention is characterized in that the registration service unit further includes a data forwarding module, and the method for providing a forwarding service includes the following steps:
  • the system terminal device sends a forwarding service request message to the service portal of the name registration system, where the message includes at least the requested user identifier;
  • the registration service unit searches the local user login information record table for the presence or absence of the user identifier of the requested user. If the user identifier of the requested user exists, it is determined whether the registration service unit includes a data forwarding module, such as determining that there is data.
  • the forwarding module allocates and returns a network address and port that can forward data to the requesting user for the requesting user; if the user identifier of the requested user does not exist, or does not have a data forwarding module, accessing the current registered service unit
  • the registration service unit of the upper layer network of the accessed network forwards the forwarding service request message;
  • the registration service unit accessing the upper layer network searches for the presence of the requested user identifier in the local user login record table. If the user identifier of the requested user exists, it is determined whether the registration service unit includes a data forwarding module, such as determining There is a data forwarding module, which allocates and returns a network address and port that can forward data to the requesting user for the requesting user; if the user identifier of the requested user does not exist, or does not have a data forwarding module, the current registration is accessed.
  • the registration service unit of the upper layer network to which the service unit accesses the network forwards the forwarding service request message;
  • step 63 repeating step 62) until the requesting user obtains a network address and port that can forward data to the requested user;
  • the present invention enables applications, services, users, etc. to be located by identification, enabling the services in the private network to be visible to its external network and independent of the specific application.
  • the present invention also provides a system and method for providing a more reasonable access path for external network nodes.
  • the invention utilizes the user login information saved in the system, and in the multi-layer NAT network, the system terminal device that requests the user to use finds the minimum NAT distance from the user, and can A node that forwards data to a system terminal device used by a requesting user.
  • the invention can realize the delivery of the call message, thereby achieving the purpose of transmitting the connection request between the terminal devices of the system.
  • applications, services, and users can be located by identification.
  • Figure 1 is a schematic diagram of the same-root multi-layer NAT network
  • Figure 2 is a schematic diagram of the structure of the application-oriented name registration system.
  • Figure 3a is a schematic diagram of a NAT device accessing a network
  • Figure 3b is a schematic diagram of the NAT device connection matrix
  • Figure 4a is a schematic diagram of the structure of the registration service device
  • Figure 4b is a schematic diagram of the structure of the registration service unit
  • Figure 5 is the first setup process of the registration service device.
  • Figure 6 is the second set up process of the registration service device
  • Figure 7 is the third set up process for the registration service device.
  • Figure 8 is a flow chart of the system service device requesting a local service entry from the registration service device based on the global service portal of the registration service device in the public network.
  • Figure 9 is a flow chart of obtaining a local service entry by the system terminal device by listening to the service entry including the registration service device
  • Figure 10 is another flow chart for the system terminal device to obtain the local service entry by listening to the service entry containing the registration service device.
  • Figure 11 is a process in which the system terminal device used by the user sends user registration information (user account opening information) to the registration service device.
  • Figure 12 is a process in which the system terminal device used by the user sends user login information to the registration service device.
  • Figure 13 is the process of actively requesting the user to obtain the user login point of the requested user through the registration service system.
  • FIG. 14 is a processing method after the registration service unit receives the "service unit registration message".
  • FIG. 15 is a method for the registration service unit to register with the registration service device.
  • FIG. 16 is a processing method after the registration service unit receives the "service entry inquiry message”.
  • FIG. 17 is a method for the system terminal device to acquire the registration service device network address and port.
  • FIG. 18 is a process for the registration service unit in the registration service device to receive "user”. Processing method after registration message
  • FIG. 19 is a schematic diagram of a user sending user login information to a registration service device through a system terminal device.
  • 21 is a schematic diagram of a user querying a registration service device for a user login point through a system terminal device
  • Figure 22 is a schematic diagram of a registration service unit with a forwarding module
  • FIG. 3 is the "forwarding service request" processing flow
  • Figure 1 shows the same-root multi-layer NAT network, which is an example of the same-root multi-layer NAT network. Its characteristics are: Private network 4 through the NAT device 1 000 access to the public network 3, private network 4. Accessing the public network through the NAT device 1 000.
  • the private network 4 of the private network 4 is the network controlled by the NAT device.
  • the NAT device directly connected to the public network 3 is the root NAT device.
  • the number of the minimum number of NAT devices that the NAT device controls from the private network to the public network 3 is the number of layers of the private network controlled by the NAT device, and the path is the shortest path from the private network controlled by the NAT device to the public network 3.
  • a multi-layer NAT network can be thought of as a combination of multiple multi-rooted NAT networks. .
  • Multi-layer NAT networks increase the number of users' accesses and make the relative positions of the two parties more complicated.
  • the multi-layer NAT network turns the public network flat communication mode into a hierarchical communication mode.
  • the typical relationship between the two parties is: (1) the two communicating parties are in the public network; (2) the communicating party is in the private network controlled by the NAT device and extended by the NAT device, and the other party is in the public network; The two communicating parties are in a private network controlled by the same NAT device; (4) the two communicating parties are in a private network controlled by different NAT devices, and the two NAT devices are connected to the public network through different root NATs; (5) communication Both parties are in a private network controlled by different NAT devices, and the two NAT devices are connected to the public network through the same root NAT.
  • the network address of the NAT device refers to the network address bound to the external network interface of the NAT device.
  • the NAT device NAT router external network interface can be bound to multiple network addresses. In network management, you can enumerate addresses or enumerate network segments.
  • the method maps multiple network addresses to one NAT device. Ordinary users can access the network through the NAT device NAT router through the terminal (the basic function).
  • the NAT device NAT router external network interface is generally bound to a network address. In the following description of the NAT device NAT router, a NAT device NAT router external network interface is only bound to one network address. Therefore, a NAT device can be represented by a network address bound to the external network interface of the NAT device. Development designers can easily find that the method described below is also applicable to NAT routers with external network interfaces bound to multiple network addresses.
  • the network address of the NAT device is the network address bound to the NAT device's external network interface, or the NAT router address.
  • the address can be either a public address or a private address.
  • the network range controlled by the NAT device From the intranet interface of the NAT device, the network connected along the interface extends to another NAT external network interface, and the network between the two NAT devices does not exist between the two NAT devices. .
  • the network cartridge is called a NAT-controlled network, or a network controlled by a NAT router.
  • the NAT is the controlling NAT device of the network.
  • Direct upper layer network If the external network interface of NAT device A is directly connected to the network controlled by NAT device B, the network controlled by NAT device B is the direct upper layer network of the network controlled by NAT device A; the public network is the network controlled by the root NAT device. Direct upper network.
  • Direct lower layer network If the external network interface of NAT device A is directly connected to the network controlled by NAT device B, the network controlled by NAT device A is the direct lower layer network of the network controlled by NAT device B; the network controlled by the root NAT device is the public network. Directly underlying network.
  • NAT path length The number of NAT devices in the reachable path from host A to B is the length of the NAT path.
  • the shortest NAT path In the NAT environment, among the NAT paths of hosts A to B, the shortest NAT path is called the shortest NAT path from A to B. The number of NATs passing through is the shortest NAT path length.
  • Upper-layer network The network from the direct upper-layer network of the network controlled by the current NAT device to the network controlled by each NAT device and the public network, which is the upper-layer network of the network controlled by the current NAT device.
  • Lower layer network The network controlled by each NAT device from the direct network of the public network or the network directly controlled by the current NAT device, which is the lower layer network of the public network or the network controlled by the current NAT device.
  • the network to which the device deployed on the public network belongs is a public network.
  • the network to which the device of the network controlled by the NAT device belongs is a network controlled by the NAT device.
  • the network to which the device belongs is the public network or the lower layer network of the network controlled by the current NAT device, then the device is behind the NAT.
  • Parent Server The server located in the direct upper-layer network of the current NAT-controlled network is the parent server of the server in the network controlled by the current NAT device.
  • Subserver A server located in the direct lower layer network of the public network or the current NAT controlled network is a subserver of the public network or the server in the current NAT controlled network.
  • Ancestor server The current server and the parent server of the current server are the ancestor servers of the child servers of the current server.
  • the multi-layer NAT network registers the system with the name of the application.
  • a 0 is a new registration system, as shown in Figure 2.
  • the system includes a registration service device 2001 and a system terminal device 6001.
  • the registration service device 2001 is configured to record user registration (opening account) information, user login information, and provide user registration information and user login information query; the user uses the system terminal device 6001 to register user information with the registration service device 2001, log in to the system, and query user registration information. Query user login information.
  • the invention can be used not only in the network environment in which the NAT device is built, but also in the network changing environment formed by other devices having the address translation function.
  • the registration service device 2001 records the content of the user login information as: the user identifier, the user login point mapped to the public network and the related private network, and the user mapping to the public network and the related private network. System terminal access point.
  • the registration service device 2001 can help the user to actively request the user to log in to the user login point of the requested user to determine the user login point with the shortest NAT path of the current communication device of the requesting user according to the user login information recorded by the system.
  • the user login point in the network is the network address and port of the system terminal device used by the user; when the user is in the network controlled by the NAT device
  • the user login point in the upper layer network of the network controlled by the NAT device is a network address and port for receiving the user login request message by the service unit of the network controlled by the access public network or the NAT device, or may be converted into a receiving user.
  • System Terminal Access Point This access point is located on the NAT device and is generated when a user login message traverses the NAT device.
  • the access point can be represented in two ways: 1) the network address and port of the NAT device; 2) the network address and port identifier that can be calculated or converted to the NAT device.
  • Figure 2 shows the name registration service system.
  • the name registration service system 1 0 includes: the registration service device 2001 is at least used for recording user registration information, user login information, and providing The user registration information and the user login information query, the registration service device service portal query, etc.; the top service bus 1 is used to access the registration service device to the public network 3; the service bus 2 is used to access the registration service device to the private network 4.
  • the registration service device 2001 is connected to the public network 3 via the top service bus 1, and is connected to the private network 4 via the service bus 2.
  • the public network 3 and the private network 4 are connected together through a NAT device connection matrix 1001.
  • the system terminal device 6001 and the service device 2001 are connected to the public network 3 and the private network 4.
  • FIG. 3 shows the connection mode of the NAT device connection matrix 1001.
  • NAT device connection matrix The relationship between NAT devices within the 1001 is determined by the private network and the public network connected to the NAT device connection matrix 1001.
  • the connection rules between the private network and the public network and the NAT device are:
  • the NAT device connection matrix 1001 has at least one line 5 accessing the public network; each private network has at least one line 6 that accesses the NAT device connection matrix 1001; each private The network may not have, and there may be multiple lines 7 that are connected to the private network by the NAT device connection matrix 1001.
  • b of FIG. 3 is a schematic diagram of a NAT device connection matrix 1001 connection.
  • the public network 3, the private network 4, the NAT device connection matrix 1001 access to the public network line 5, the private network access the NAT device connection matrix 1001 line 6; the NAT device is connected to the matrix 1001 to access the private network line 7.
  • the problem of overlapping between segments needs to be considered when deploying a multi-layer NAT network.
  • the system must have the ability to discriminate and deal with overlapping problems between network segments.
  • FIG. 4 shows the structure of the registration service device.
  • the registration service device 2001 shown in Fig. 4a is composed of a top-level registration service unit 2011 and a plurality of basic registration service units 2021.
  • the top-level registration service unit 2011 is connected to the public network 3 through the top-level service bus device 1, and is addressed using the network address of the public network;
  • the basic registration service unit 2021 is connected to the private network 4 through the service bus device 2, and uses the connected private network.
  • the network address is addressed.
  • the registration service unit is a general term for the top-level registration service unit 2011 and the basic registration service unit 2021.
  • the registration service unit 2801 is the basic functional structure of the top-level registration service unit 2011 and the basic registration service unit 2021.
  • a registration service logic control unit 2100 at least includes: a registration service logic control unit 2100, a basic configuration information record table 2101, a hierarchy information record table 2102, a target registration server record table 2103, a child registration service unit record table 2104, and user login information.
  • a function module such as a record table 2105, a user registration information record table 2106, a message buffer area 2109, and a communication unit 2110.
  • the registration service logic control unit 2100 is configured to control the execution of the registration service;
  • the basic configuration information record table 2101 is used to record the identity of the unit, the host address of the unit, and the service port of the unit;
  • the hierarchical information record 2102 is used to record hierarchical information;
  • the target registration server Record 2103 is used to record the network address and port of the ancestor registration server; sub-registration service
  • the device record table 2104 is used to record the network address, port, identifier of the sub-registration service unit and the network address and port of the corresponding NAT device, as shown in Table la;
  • the user login information record table 2105 is used to record the user ID, the user login point, and the system.
  • the terminal device access point is shown in the table lb; the user registration information record table 2106 records at least the account opening information such as the user identifier of the account opening user; the message buffer area 2109 is used for temporarily storing the information in the received data packet and the forwarding relationship record table, see the table.
  • the communication unit 2110 is connected to the top service bus device or the service bus device, and is responsible for transmitting and receiving data.
  • the registration service logic control unit 2100 reads the unit identifier, the unit unit address, and the unit service port from the basic configuration information record table 2101 according to the execution requirement, reads the record level information from the hierarchical information record 2102, and reads from the target registration server record 2103.
  • the network address and port of the registration service device are read, and the network address, port, identifier, and network address and port of the corresponding NAT device are read from the sub-registration server record table 2104, and read from the user login information record table 2105.
  • the user identifier, the user login point, and the system terminal device access point are read, the user identifier is read from the user registration information record table 2106, and the information and the forwarding relationship in the temporarily stored received data packet are read from the message buffer 2109, and the communication is performed.
  • the unit 2110 reads the received data; at the same time, the registration service logic control unit writes the unit identifier, the unit host address, the unit service port, and the target registration server record 2103 to the basic configuration information record table 2101 according to the execution requirement.
  • Register the service device's network address To the sub-registration server record table 2104, write the network address, port, identifier, and network address and port of the corresponding NAT device of the record sub-registration service unit, and write the user ID, user login point, system to the user information record table 2105.
  • the terminal device access point writes the user identifier to the user registration information record table 2106, and writes to the message buffer 2109 to temporarily save the received data packet.
  • the information and forwarding relationship are written to the communication unit 21 1 0 to be sent.
  • Service unit agent a special service unit. It is mainly used to expand the coverage of the service unit being served, or to provide a unified service portal to the system terminal equipment.
  • the service unit agent can be deployed on the network or public network controlled by the same NAT device as the agent, or in the direct lower layer network of the network controlled by the NAT device to which the agent belongs.
  • the service unit agent may broadcast the service entry of the agent or forward the message between the requester of the service device and the proxy service device.
  • the network address and port that receive various messages in the service unit are hereinafter referred to as the monthly service portal.
  • the system terminal device is at least configured to exchange information with the registration service device: obtaining a service entry from the registration service device, transmitting a user registration message to the registration service device, querying the registration service device for the user login point, and requesting the registration service device for the service unit having the forwarding capability .
  • the terminal device includes at least the following: a terminal device control unit, a basic configuration information record table, a target registration service device record, a message buffer area, a communication unit, and the like.
  • the terminal device control unit is configured to control the execution of the terminal device;
  • the basic configuration information record table is used to record the user identifier, the network address of the terminal device, the port, and the like;
  • the target registration service device records the network address and port used to record the registration service device.
  • the message buffer is used to temporarily store received or sent messages; the communication unit is used for public or private network connections.
  • the terminal device control unit reads and writes information from the basic configuration information record table, the target registration service device record, and the message buffer area.
  • the terminal device control unit transmits and receives data from the network through a function module such as a communication unit.
  • Data or messaging relationships are complex in multi-level NAT networks.
  • the most single data or message delivery form is: without the NAT device, the system terminal device and the service unit communicate directly; after the NAT device, the system terminal device communicates with the service unit; without the NAT device, the service unit and the service unit communicate directly; After NAT equipment, service unit and service unit communication.
  • the system terminal device and the service unit are data senders or message transmissions. If the data passes through the NAT device, the NAT device is a data sender or a message sender, and the NAT device receives data from the system terminal device and the service unit. Since the NAT device has a data transmission and reception relationship mapping table, the response message can be automatically forwarded.
  • the registration service device stores user registration and login information. At the same time, the user registration and login information is returned for the user information finder.
  • the process of registering the service unit to join the registration service device Starting by the top-level registration service unit, the registration service device is initially recognized, that is, the user information registration, the user login, the user registration and the login information inquiry service, and the service entry point inquiry service can be provided;
  • the basic registration service unit in the network controlled by the root NAT device registers with the registration service device to join the system; again, the second layer NAT basic registration service unit registers with the registration service device to join the system; again, the third layer NAT basic registration service unit
  • the registration service device is registered to join the system.
  • the basic registration service unit sequentially joins the registration service device to provide services for the name registration service system 10 as needed.
  • each registration service unit runs on a server.
  • the registration service unit is composed of multiple servers, at least the existing user registration information and the content of the user login information are required, and the characteristics of the distributed system need to be expanded based on the existing information content to maintain the multi-service portal.
  • the mapping relationship with the NAT device and the access relationship between the registered units When the registration service unit is composed of multiple servers, the developer is not difficult to extend the spirit of the method, and the features of the distributed system are extended in registration, login, query, and the like.
  • FIG. 5 shows the process of establishing a registration service device.
  • This process is an example of a registration service unit joining a registration service device.
  • the registration service device 2001 performs initial recognition by the top-level registration server 201 1 installed in the public network.
  • the top level registration service unit 201 1 is provided with a public network network address, which is a well-known service portal within the system, or can be obtained by a system defined method.
  • the NAT device 1 01 0 directly accesses the public network and is the root NAT device.
  • the registration service unit 2021 is deployed in a network controlled by the root NAT device.
  • the NAT device modifies the source or destination address of the traversed data packet. The description of the modification of the data packet by the NAT device is ignored in the figure.
  • the registration service unit 2021 in the network controlled by the root NAT device sends a "service unit registration message" to the top-level registration service unit 201 1; the message includes the network address, port, identity, and pre-fabricated level information of the registration service unit 2021. It indicates that the registration service unit 2021 is the first layer registration service unit, and the shortest distance of the network controlled by the belonging NAT device to the public network is 1.
  • the top-level registration service unit 201 1 receives the "service unit registration message, and then, according to the network address of the data packet carrying the message and the registration service carried in the message Whether the network address of the service unit is the same, whether the message is converted by the NAT device; if the NAT device converts, extracts the hierarchical information in the registration request, if the level is greater than the current registered service unit, then in the sub-registration service unit record table Recording the network address, port, identity, and network address and port of the corresponding NAT device, and sending the message to return a registration success message; if the level of the hierarchy is less than 1 at the level of the currently registered service unit, The registration service unit record table does not have a record of the registration service unit corresponding to the NAT device, and returns a registration failure message; if the NAT device is not converted, a registration failure message is returned.
  • FIG. 6 shows the process of establishing a registration service device.
  • This process is an example of a registration service unit joining a registration service device.
  • the top-level registration service unit 201 1 is provided with a public network network address, which is a well-known service portal within the system, or can be obtained by a system-defined method.
  • the first NAT device 1 01 0 directly accesses the public network and is the root NAT device.
  • the first registration service unit 2021 is deployed in a network controlled by the root NAT device 1000-1.
  • the second NAT device 1 020 directly accesses the root NAT device 1 01 0 controlled network, and the second registration service unit 2031 is deployed in the network controlled by the second NAT device 1 020.
  • the networked host and the networked device in the network controlled by the second NAT device 1 020 can access the networked host and the networked device in the network controlled by the root NAT device.
  • the NAT device modifies the passed data packet source or destination address. The description of the data packet modification by the NAT device is ignored in the figure.
  • the second registration service unit 2031 in the network controlled by the second NAT device 1 020 sends a "service unit registration message" to the top-level registration service unit 201 1 , the message including the network address, port, identity of the registration service unit 2031,
  • the prefabricated level information is 2, indicating that the registration service unit 2031 belongs to the shortest distance 2 of the network controlled by the NAT device 1 020 to the public network.
  • the top-level registration service unit 201 1 receives the service unit registration message, and then determines whether the message passes through the NAT device according to whether the network address of the data packet carrying the message and the registration server network address carried in the registration application message are the same. Converting; if the NAT device converts, extracts the hierarchical information in the registration request, if the level difference between the level and the current registered service unit is greater than 1, the sub-registration service unit record table searches for the registration service unit corresponding to the NAT device, If the registration service unit exists, a redirect response message including the network address and port of the registration service unit corresponding to the NAT device 101 is returned to the second registration service unit 2031.
  • the second registration service unit 2031 After receiving the redirect response message of the registration service device, the second registration service unit 2031 sends a "service unit registration message" to the registration service device according to the network address and port information of the registration service unit included in the message; the message includes The network address, port, and prefabricated level information of the second registration service unit 2031 is 2, indicating the shortest distance of the network controlled by the NAT device 1 020 to the public network to which the registration service unit 2031 belongs.
  • the first registration service unit 2021 determines whether the message is converted by the NAT device according to whether the network address of the data packet carrying the message and the network address of the registration server carried in the registration application message are the same. If the NAT device converts, the hierarchical information in the registration request is extracted, and if the hierarchy is greater than the current registered service unit, the network address, port, and corresponding NAT of the registration service unit 2031 are recorded in the sub-registration service unit record table. The network address and port of the device 1 020 return a registration success message to the second registration service unit 2031; if the level difference between the level and the current registration service unit is greater than 1, the sub-registration service unit record table does not have the corresponding NAT device. Register the record of the service unit and return the registration failure message; if the NAT device has not been converted, return the registration failure message.
  • FIG. 7 shows the registration service device assembly process.
  • This process is an example of a registration service unit joining a registration service device.
  • the top-level registration service unit 201 1 is provided with a public network network address, which is a well-known service portal within the system, or can be obtained by a system-defined method.
  • the first NAT device 101 0 directly accesses the public network and is a root NAT device.
  • the first registration service unit 2021 is deployed in the network controlled by the root NAT device 1010-1; the second NAT device 1 020 directly accesses the network controlled by the root NAT device 101, the first registration service unit agent 2032 and the second registration service.
  • the unit 2031 is deployed in a network controlled by the second NAT device 1 020.
  • the networked host and the networked device in the network controlled by the second NAT device 1 020 can access the networked host and the networked device in the network controlled by the root NAT device.
  • the source or destination of the data packet passed by the NAT device The address is modified, and the description of the data packet modification by the NAT device is ignored in the figure.
  • the first registration service unit agent 2032 broadcasts a message containing the first registration service device network address and port in the network controlled by the second NAT device 1 020.
  • the second registration service unit 2031 listens for a message containing the first registration service device network address and port broadcast in the network controlled by the second NAT device 1 020.
  • the second registration service unit 2031 After receiving the message including the registration service device network address and port, the second registration service unit 2031 sends a "service unit registration message" to the registration service device according to the network address and port of the registration service device provided in the message, and the message includes The network address, port, and prefabricated level information 2 of the second registration service unit 2031 indicate the shortest distance of the network controlled by the NAT device 1 020 to which the registration service unit 2031 belongs to the public network.
  • the first registration service unit 2021 determines whether the message passes through the NAT device according to whether the network address of the data packet carrying the message and the registration server network address carried in the registration application message are the same; If the level information in the registration request is extracted by the NAT device, if the level is greater than the current registered service unit, the network address, the port, and the corresponding NAT device 1 of the registration service unit 2031 are recorded in the sub-registration service unit record table.
  • the network address and port of 020 return a registration success message to the second registration service unit 2031; if the level difference between the level and the current registration service unit is greater than 1, the registration service unit record table does not have the registration service corresponding to the NAT device.
  • the unit's record returns a registration failure message; if the NAT device is not passed, a registration failure message is returned.
  • the second registration service unit agent shown in Figure 7 does not provide message forwarding. If necessary, it is not difficult for developers to develop a registration server proxy with message forwarding capabilities.
  • the broadcast mode can use wired, wireless or wired and wireless, etc. depending on the network environment in which the various service agents are located.
  • registration messages can be fully or partially encrypted for security reasons.
  • Figure 14 is a registration service unit in the registration service device receives a "service unit registration message" Post processing method
  • S1002 Whether the data packet is received, if no data packet is received, go to S1001, if the data packet is received, go to S1003;
  • S1004 Determine whether it is "service unit registration message", if not, go to S1200, if yes, go to S1100;
  • S1100 Determine whether the message passes through the NAT device according to the source address of the data packet carrying the message and the network address of the service unit in the message. If not, go to S1130, and if yes, go to S1120.
  • S 1121 determining whether the difference between the level information of the layer and the current service unit is equal to 1, if not, transferring to S1140, if yes, to S1122;
  • S1122 Record the service unit identifier, the network address, the port, the network address and port of the corresponding NAT in the sub-registration server record table,
  • S1140 determining whether there is a sub-registration server in the network controlled by the NAT device corresponding to the source address of the data packet in the sub-registration server record, if not, transferring to S1130, if yes, to S1141;
  • SI 141 return a redirect message containing the network address and port of the sub-registration server to the sender of the message, and return to S1001;
  • S1200 discriminate whether it is a system response message, if not, go to S1300, if yes, go to S1201;
  • S1201 Whether it is a failure message, if not, go to S1210, if yes, go to S1202; S1202: end
  • S1210 Determine whether it is a redirect message, if not, go to S1220, if yes, go to S1211;
  • S1211 trigger a redirect message processing process corresponding to the "service unit registration message", and return to S1001;
  • FIG. 15 is a method of registering a registration service unit with a registration service device. In order to maintain the data transmission and reception mapping relationship in the NAT device, the registration service unit needs to perform this method periodically.
  • S1801 Initialize the target registration server record as a top-level registry service unit service entry on the public network, and send a "service unit registration message" to the top-level registration service unit deployed on the public network.
  • S1803 Determine whether the received information is a failure, if yes, go to S1804, if not, go to S1810;
  • S1810 Determine whether the received information is successful. If yes, go to S1804. If not, go to S1820;
  • S1820 Determine whether the received information is a redirect, if not, go to S1802, and if yes, go to S1821;
  • S1822 Send the registration service device according to the network address and port in the redirect message.
  • the network address and port of the registration service device 2001 serves as a service entry for the registration service device 2001.
  • the name registration service device 2001 has different service entries for the public network and the private network.
  • the service portal of the public network can be accessed by the system terminal device in the network controlled by the public network and each NAT device without special restrictions.
  • This type of port is a global service entry; otherwise, the port can only be accessed by some system terminal devices. For local service entrances. After the terminal system 6001 obtains the service entry, it can make a request for registration, login, and inquiry to the registration service device 2001.
  • the flowchart is an example in which the system terminal device obtains a registration service device service entry.
  • the top-level registration service unit 2011 is equipped with a public network network address, which is a well-known service portal within the system, or can be obtained by a system-defined method.
  • First NAT device 1010 Direct access to the public network, which is the root NAT device.
  • the first basic registration service unit 2021 is deployed in the network controlled by the root NAT device 101; the second NAT device 1 020 directly accesses the network controlled by the root NAT device 101, and the second basic registration service unit 2022 is deployed in the second.
  • the system terminal device 6001 is deployed in the network controlled by the second NAT device 1 020.
  • the networked host and the networked device in the network controlled by the second NAT device 1 020 can access the networked host and the networked device in the network controlled by the root NAT device.
  • the NAT device modifies the source or destination address of the data packet that has passed. The description of the modification of the data packet by the NAT device is ignored in the figure.
  • System terminal device 6001 global service portal "Service Portal Query Message" to the registration service device;
  • the top-level registration service unit 201 1 determines whether it can be executed according to logic (see Figure 16). If the return success message can be executed, if it cannot be executed, it is determined whether it can be redirected to the sub-registration service unit. , if a redirect message can be returned; (in this example, a redirect message containing the first basic registration service unit 2021 network address and port is returned)
  • the system terminal device 6001 After receiving the redirect response message, the system terminal device 6001 sends a “service portal query message” to the registration service device according to the service portal of the registration service device included in the message;
  • the first basic registration service unit 2021 determines whether it can be executed according to logic. If the return success message can be executed, if it cannot be executed, it is determined whether it can be redirected to the child registration service unit, if it can be returned Redirect message; (Redirect message containing the second basic registration service unit 2022 network address and port is returned in this example)
  • the system terminal device 6001 sends a "service portal query message" to the registration service device according to the service portal of the registration service device included in the message; • the second basic registration service unit 2022 receives the "service portal query” After the message ", according to the logic to determine whether it can be executed, if the return success message can be executed, if it can not be executed, it is judged whether it can be redirected to the sub-registration service unit, if the redirect message can be returned, (the success response message is returned in this example)
  • the system terminal device 6001 After receiving the success response message, the system terminal device 6001 stores the service entry of the registered service device included in the message in the local target registration service device record.
  • the request message in Figure 8 can be sent or received via wired or / and wireless
  • Figure 9 shows the flow of the local terminal entry by the system terminal device 6001 by listening to the service entry containing the registration service device.
  • the flowchart is an example in which the system terminal device obtains a registration service device service entry.
  • the top registration service unit 201 1 is equipped with a public network network address, The address and the port providing the service are well-known service portals within the system or can be obtained by a system defined method.
  • the first NAT device 101 0 directly accesses the public network and is a root NAT device.
  • the first basic registration service unit 2021 is deployed in the network controlled by the root NAT device 101 Q; the second NAT device 1 020 directly accesses the network controlled by the root NAT device 101, and the second basic registration service unit 2022 is deployed in the second In the network controlled by the NAT device 1 020, the system terminal device 6001 is deployed in the network controlled by the second NAT device 1 020.
  • the networked host and the networked device in the network controlled by the second NAT device 1 020 can access the networked host and the networked device in the network controlled by the root NAT device.
  • the NAT device modifies the passed data packet source or destination address. The description of the data packet modification by the NAT device is ignored in the figure.
  • the second basic registration service unit 2022 broadcasts a message containing the registration service device network address and port in the network to which the NAT is controlled;
  • the system terminal device 6001 is listening for a broadcast message containing a message registering the service device network address and port;
  • the system terminal device 6001 After receiving the broadcast message, the system terminal device 6001 stores the service entry of the registration service device included in the message in the record of the local target registration service device.
  • the manner in which the service portal is published in the form of a broadcast as described in FIG. 9 can be replaced by means of publicity, pre-notification of the user, etc., and the system terminal device 6001 is manually configured by the user.
  • FIG 10 shows the process of obtaining a local service entry by the system terminal device 6001 by listening to the service entry containing the registration service device.
  • the flow chart is an example of a system terminal device obtaining a registration service device service entry.
  • the top-level registration service unit 201 1 is provided with a public network network address, which is a well-known service portal within the system, or can be obtained by a system-defined method.
  • the first NAT device 1 01 0 directly accesses the public network and is the root NAT device.
  • the first basic registration service unit 2021 is deployed in the network controlled by the root NAT device 101.
  • the second NAT device 1 020 directly accesses the network controlled by the root NAT device 100.
  • the first basic registration service unit agent 202 3 is deployed in the network.
  • the system terminal device 6001 is deployed in the network controlled by the second NAT device 1 020.
  • the networked host and the networked device in the network controlled by the second NAT device 1 020 can access the networked host and the networked device in the network controlled by the root NAT device.
  • the NAT device modifies the source or destination address of the data packet that has passed. The description of the modification of the data packet by the NAT device is ignored in the figure.
  • the first basic registration service unit agent 2023 broadcasts a message containing the registration service device network address and port in the network to which the NAT is controlled; • The system terminal device 6001 is listening for a broadcast message containing a message registering the service device network address and port;
  • the system terminal device 6001 After receiving the broadcast message, the system terminal device 6001 stores the service entry of the registration service device included in the message in the record of the local target registration service device.
  • the first registration service unit agent does not provide a message forwarding function. If necessary, it is not difficult for developers to develop a registration server proxy with message forwarding capabilities.
  • the manner in which the service portal is published by broadcast in Fig. 10 can be replaced by means of publicity, advance notice to the user, and the like.
  • the service client is manually configured by the user.
  • Figure 16 shows the processing method after the registration service unit in the registration service device receives the "service entry inquiry message".
  • S2004 Determine whether it is "service entry query message", if not, go to S2005, if yes, go to S2100;
  • S2100 determining, according to the source address of the data packet carrying the message and the network address of the system terminal device in the message, whether the terminal device of the system is after the NAT, if not, then transferring to S2101, if yes, to S2200;
  • S2200 Whether there is a sub-registration server in the network controlled by the NAT device corresponding to the source address of the data packet in the sub-registration server record table. If not, go to S2101, if yes, go to S2201;
  • S2101 returning a success response message to the sender of the message, including the network address and port of the available registration service unit, and returning to S2001;
  • Figure 17 shows how the system terminal device obtains the network address and port of the registration service device. In order to maintain the data transmission and reception mapping relationship in the NAT device, the system terminal device needs to perform the method periodically.
  • S2802 Whether a broadcast message containing the service entry of the registration service device is received, if yes, go to S2806, if not, go to S2803;
  • S2803 Send a "service portal query message" to a top-level registration service unit deployed on the public network, and initialize a local target registration service device record with a service portal of a top-level registration service unit deployed on the public network;
  • S2805 Determine whether the received information is successful. If yes, go to S2807. If not, go to S2810.
  • S2810 Determine whether the received information is a redirect, if not, go to S2804, if yes, go to S2811;
  • S2811 The network address and port of the registration service device in the redirect message are stored in the local target registration service device record, and the service entry query message is sent to the registration service device according to the network address and port in the redirect message, and is returned.
  • the top-level registration service unit 2011 is equipped with a public network network address, which is a well-known service portal within the system, or can be obtained by a system-defined method.
  • the first NAT device 1010 directly accesses the public network and is a root NAT device.
  • the first basic registration service unit 2021 is deployed in the network controlled by the root NAT device 1010; the second NAT device 1020 directly accesses the network controlled by the root NAT device 1010, and the second basic registration service unit 2031 is deployed in the second NAT device 1020.
  • the system terminal device 6001 is deployed in the network controlled by the second NAT device 1020; the system terminal device 6001 has obtained the service portal of the registration service device.
  • the networked host and the networked device in the network controlled by the second NAT device 1020 can access the networked host and the networked device in the network controlled by the root NAT device.
  • the NAT device modifies the source or destination address of the passed data packet. In this figure, the NAT device pair data is ignored. Description of group modification
  • the system terminal device 6001 sends a “user registration message” to the top-level registration service unit 201 1 , where the message includes at least the user identifier and the network address of the user-used terminal; • the top-level registration service unit 201 1 registers with the user after receiving the user registration message.
  • the NAT device determines whether the "user registration message" passes through the NAT device (for example, according to the carrying)
  • the user registration message "the source address of the data packet and the user in the message use the network address of the terminal to determine whether the message passes through the NAT device", and if the NAT device passes, look up the sub-registration associated with the NAT device in the sub-registration server record a service unit, if the sub-registration service unit exists, returning a redirect response message including the service entry of the registration service unit; if the NAT device is not passed, or the NAT device does not have an associated registration service unit, a successful registration message is returned ; if the user is marked Presence, failed to return a reply message.
  • the system terminal device After receiving the response message, the system terminal device ends the registration if it is a failure response message or a success response message. If it is a redirect response message, it sends a "user registration message" according to the registration service unit service entry in the message.
  • the message includes at least User ID, the network address of the user using the terminal;
  • the first registration service unit 2021 After the first registration service unit 2021 receives the user registration message, it searches for the same user identifier in the user registration information record table, and if the same user identifier does not add the user identifier and related information of the user to the user registration information record table, Determining whether the "user registration message" passes through the NAT device (for example, according to the source address of the data packet carrying the "user registration message” and the network address of the user using the terminal in the message to determine whether the message passes through the NAT device), if NAT is passed
  • the device searches for a sub-registration service unit associated with the NAT device in the sub-registration server record, and if the sub-registration service unit exists, returns a redirect response message, where the message includes the service entry of the registration service unit; if not through NAT
  • the device, or the NAT device does not have an associated sub-registration service unit returns a successful registration message; if the user identification exists, a failure response message is returned.
  • the system terminal device After receiving the response message, the system terminal device ends the registration if it is a failure response message or a success response message. If it is a redirect response message, it sends a "user registration message" according to the registration service unit service entry in the message.
  • the message includes at least User ID, the network address of the user using the terminal;
  • the second registration service unit 2031 After the second registration service unit 2031 receives the user registration message, the user registration letter If the same user identifier is not found in the information record table, if the user ID and related information are not added to the user registration information record table, it is determined whether the "user registration message" passes through the NAT device (for example, according to the carrying)
  • the user registration message "the source address of the data packet and the user in the message use the network address of the terminal to determine whether the message passes through the NAT device", and if the NAT device passes, look up the sub-registration associated with the NAT device in the sub-registration server record a service unit, if the sub-registration service unit exists, returning a redirect response message including the service entry of the registration service unit; if the NAT device is not passed, or the NAT device does not have an associated sub-registration service unit, the successful registration is returned Message; if the user ID exists, a failure reply message is returned.
  • the system terminal device After receiving the response message, the system terminal device ends the registration if it is a failure response message or a success response message. If it is a redirect response message, it sends a "user registration message" according to the registration service unit service entry in the message.
  • the message includes at least User ID, network address of the user's use terminal; Since the user registration information exists in a hierarchical manner in a multi-level NAT network, when the registration service unit receives the "user registration information query message", it can use multiple policies to query.
  • first look up in the local user registration record table if the user exists, return a success message to the query requester; if the user does not exist, query the top-level registration service unit, if receiving the success message returned by the top-level registration service unit, The query requester returns a success message; if a failure message returned by the top-level registration service unit is received, a failure message is returned to the query requester.
  • FIG. 1 2 shows the process in which the system terminal device used by the user sends user login information to the registration service device.
  • the top-level registration service unit 201 1 is provided with a public network network address, which is a well-known service portal within the system, or can be obtained by a system-defined method.
  • the first NAT device 101 0 directly accesses the public network and is a root NAT device.
  • the first basic registration service unit 2021 is deployed in the network controlled by the root NAT device 101.
  • the second NAT device 1 020 directly accesses the network controlled by the root NAT device 101, and the second basic registration service unit 2031 is deployed in the second.
  • the system terminal device 6001 In the network controlled by the NAT device 1 020, the system terminal device 6001 is deployed in the network controlled by the second NAT device 1 020; the system terminal device 6001 has obtained the service portal of the registration service device. Second NAT device 1 020
  • the networked host and networked device in the controlled network can access the networked host and the networked device in the network controlled by the root NAT device.
  • the NAT device modifies the source or destination address of the passed data packet. The description of the modification of the data packet by the NAT device is ignored in the figure.
  • the system terminal device 6001 sets the user login status to not registered, and sends a “user login message” to the registration service device according to the service portal of the locally stored registration service device, where the message includes at least a user identifier, a user login point, and the user login point.
  • the network address and port of the system terminal device used by the user After receiving the user login message, the second basic registration service unit 2031 determines whether to record the user identification and related information according to logic, and decides whether to return the response message and return the response. Message; After recording the user login information, if the unit is not a top-level registration service unit, the user login message forwarded to the registration service device is recorded according to the local target registration server.
  • the system terminal device After receiving the success response message, the system terminal device sets the user login status to login.
  • the first basic registration service unit 2021 determines whether to record the user identification and related information according to logic, and determines whether to return the response message and return the response message; after recording the user login information, if the unit is recorded Not a top-level registration service unit, according to the local target registration server records the user login message forwarded to the registration service device,
  • the top-level registration service unit 2011 After the top-level registration service unit 2011 user registration message, it is logically determined whether to record the user's identification and related information, and decide whether to return the response message and return the response message; after recording the user login information, if the unit is not the top registration service The unit records the user login message forwarded to the registration service device according to the local target registration server.
  • the user needs to periodically send a user login message to the registration service device to ensure that the user status in the registration service device is online. If the registration service device does not receive a user login message for a certain user within a certain period of time, the registration service device sets the user's status to offline. If the system terminal device moves, the system terminal device needs to resend the user login message.
  • S3002 Whether to receive the data packet, if no data packet is received, go to S3001, such as Received data packet, go to S3003
  • S3004 Determine whether it is "user login message”. If not, go to S3005. If yes, go to S3100.
  • S 3100 determining, according to the user login point in the message, whether the sender of the message is a child registration server, and if so, transferring to S3101, if not, to S3200;
  • S3101 the user identifier in the message is used as the user identifier, the data packet source address and the source port carrying the message are the system terminal device access point, and the unit identifier is used as the user login point, and is stored in the user login information record table.
  • S3300 is executed sequentially;
  • S 3200 Find whether the user is registered in the system. If there is no registration, go to S 3290, if already registered, go to S3201,
  • S 3201 Determine whether the system terminal device is behind the NAT according to the source address of the data packet carrying the message and the network address of the system terminal device used by the user in the message. If not, go to S3202, and if yes, go to S3203;
  • S 3202 The user identifier in the message is used as the user identifier, and the user login point is used as the user login point, and is stored in the user login information record table;
  • S3203 The user identifier in the message is used as the user identifier, the data packet source address and the source port carrying the message are the system terminal device access point, and the unit identifier is used as the user login point, and is stored in the user login information record table; S3204: return a success response message to the message sender;
  • S3300 Determine whether the unit is a top-level registration server. If yes, go to S 3001, if not, go to S3301;
  • S 3301 Generate a new user registration message by using the identifier of the unit instead of the user login point of the received message;
  • S3302 Send a new user login message to the registration service device according to the local target registration server record, and return to S3001.
  • FIG. 19 is a diagram in which a user sends user login information to a registration service device through a system terminal device.
  • S3805 Determine whether it times out; if yes, go to S3809, if not, go to S3806
  • S3806 judge whether it is a success message, if not, go to S3808, if yes, go to S3807
  • S3807 set the terminal status to login
  • S3808 Determine whether it is a failure message. If yes, go to S 3809. If not, go to S 3804. It is not difficult for the developer to improve according to the user login method described above and the user registration requirements, to complete the user registration and account opening tasks.
  • FIG. 13 is a process of actively requesting a user to acquire a user login point of a requested user through a registration service system, and the process is an example of a process of acquiring a user login point of a requested user.
  • the top-level registration service unit 2011 is equipped with a public network network address, which is a well-known service portal within the system or can be obtained by a system-defined method.
  • the first NAT device 1010 directly accesses the public network and is the root NAT device.
  • the first basic registration service unit 2021 is deployed in the network controlled by the root NAT device 1010; the second NAT device 1020 directly accesses the network controlled by the root NAT device 1010, and the second basic registration service unit 2031 is deployed in the second NAT device 1020.
  • the system terminal device 6001 is deployed in the network controlled by the second NAT device 1020; the system terminal device 6001 has obtained the service portal of the registration service device.
  • the networked host and the networked device in the network controlled by the second NAT device 1020 can access the networked host and the networked device in the network controlled by the root NAT device.
  • the NAT device modifies the passed data packet source or destination address. The description of the data packet modification by the NAT device is ignored in the figure.
  • the system terminal device 6001 sends a "user login point lookup request message" to the registration service device according to the locally stored target registration service device record port, and the message includes at least the requested user identifier and the random serial number.
  • the second registration service unit 2031 After receiving the "user login point lookup request message", the second registration service unit 2031 extracts the requested user identifier in the message, and searches in the user login information record table, if the requested user identifier exists in the user login information record table. Returning to the message sender a success message containing the current user login point of the requested user, including the pair The random sequence number in the original request message; if the requested user identifier does not exist in the user login information record table, and the service node is not the top-level registration service unit, the mapping relationship between the message and the message sender is established according to the random sequence number in the message. And saving the mapping relationship in the message buffer, and forwarding the "user login point lookup request message" to the registration service device according to the local registration server record;
  • the first registration service unit 2021 After receiving the "user login point lookup request message", the first registration service unit 2021 extracts the requested user identifier in the message, and searches in the user login information record table, if the requested user identifier exists in the user login information record table. Returning a success message including the current user login point of the requested user to the message sender, where the message includes a random sequence number in the corresponding original request message; if the requested user identifier does not exist in the user login information record table, and the service node It is not the top-level registration service unit, and the mapping relationship between the message and the sender of the message is established according to the random sequence number in the message, and the mapping relationship is saved in the message buffer area, and the user login point search is forwarded to the registration service device according to the local registration server record.
  • Request message
  • the top-level registration service unit 201 1 After receiving the "user login point lookup request message", the top-level registration service unit 201 1 extracts the requested user identifier in the message, and searches in the user login information record table, if the requested user identifier exists in the user login information record table. Returning a success message including the current user login point of the requested user to the message sender, where the message includes a random sequence number in the corresponding original request message; if the requested user identifier does not exist in the user login information record table, and the service node Is a top-level registration service unit, and returns a failure message to the message sender, where the message includes a random sequence number in the corresponding original request message;
  • the first registration service unit 2021 After receiving the response message, the first registration service unit 2021 finds the corresponding sender node lookup request message sender according to the random number in the response message, and forwards the response message to the sender.
  • the second registration service unit 2022 After receiving the response message, the second registration service unit 2022 finds the corresponding sender node lookup request message sender according to the random number in the response message, and forwards the response message to the sender.
  • the system terminal device 6001 After receiving the response message, the system terminal device 6001 records the user login point of the requested user in the message if it is a success response message; if it is a failure response message, it ends.
  • the above process is the basic process of finding a user login point that satisfies the condition. It is not difficult for developers to extend, change, and find the above processes based on the needs of specific applications. After the user logs in, the subsequent execution process is changed. However, it does not affect the nature of the process of querying the user's login point based on the requested user ID. 20 is a processing method after the registration service unit in the registration service device receives the "user login point lookup request message"
  • S4002 Whether to receive the data packet, if no data packet is received, go to S4001, if the data packet is received, go to S4003;
  • S4004 Determine whether it is "user login point lookup request message", if not, go to S4005, if yes, go to S4100;
  • S4101 Find the corresponding sender in the forwarding relationship list, if any, go to S4106, if not, go to S4102;
  • S4103 Query whether the requested user identifier exists in the user login information record table, if yes, go to S4200, if not, go to S4104;
  • S4104 Determine whether the unit is a top-level registration server, if yes, go to S4107, if not, go to S4105;
  • S 4105 Establish a correspondence between the sender of the message and the message according to the random sequence in the message, and store the information in the forwarding relationship table.
  • S4106 Forward a "user login point lookup request message" to the registration service device according to the local target registration server record, and return to S4001;
  • S4200 returning a success message to the sender of the message, where the message includes the user login point of the requested user in the user login information record table, and returns to S4001;
  • S4005 Determine whether it is a response message of "user login point lookup request message", if not, go to S4006, if yes, go to S4300;
  • S4301 Find the corresponding sender in the forwarding relationship list, if any, go to S4302, if not, go to S4001;
  • S4302 Forward the response message to the sender of the message corresponding to the random sequence, and delete the related items in the forwarding relationship list, and return to S4001;
  • 21 is a user querying a registration service device for a user login point through a system terminal device.
  • S4803 Send a “user login point lookup request message” to the registration service device according to the record of the local target registration server, where the message includes a random serial number;
  • S4805 Determine whether it times out, if yes, go to S4806, if not, go to S4810;
  • S4810 Determine whether the random numbers in the message are the same, if different, go to S4804;
  • S4820 Whether it is a success message, if not, go to S4830, if yes , to S4821;
  • S4821 extract the network address and port in the message;
  • S4806 Send a "user login point lookup request message" to the registration service device according to the record of the local target registration server, and the message includes a random serial number, and returns to S4804.
  • Information request message including user login point
  • For "ingress query messages” include the network address and port.
  • Failure response Send a message type identifier to the message.
  • the messager returns a failure.
  • the response message is paired.
  • the redirected outgoing message is sent with a message type identifier, and the redirected message returns one of the respondent messages including the corresponding reply for the respondent.
  • Register service request message type Query the registration device's network location Service entry message, address and port Return to the corresponding network
  • Figure 22 is a registration service unit with a forwarding module.
  • the registration service unit with the data forwarding module is an example in which the registration service device provides a forwarding service for the user.
  • the data forwarding service unit 2108 is for forwarding data between system terminal devices.
  • the flow of the registration service device processing the forwarding service request is as shown in FIG. 23.
  • "Forwarding Service Request" submitted by the system terminal device The message includes at least: the message type, the random number, and the identifier of the requester.
  • S5004 Determine whether it is "forwarding service request”. If yes, go to S5100, if not, go to S5005
  • S5100 Extract the sequence number in the message, and find in the corresponding table whether the sequence number exists. If it exists, go to S5202. If it does not exist, go to S5101.
  • S5101 Determine whether the service unit has a forwarding service module. If yes, go to S5102. If not, go to S5200.
  • S5102 determining whether the requested identifier is in the user login information record table, if yes, go to S5103, if not, go to S5200;
  • S5103 Allocating a network address and a port that can forward data to the requester according to the requester information
  • S5104 Returning a success response message to the message sender, where the message includes a network address and port that can provide a forwarding service, and returns to S5001;
  • S5200 Determine whether the unit is a top-level service unit. If yes, go to S5203. If not, go to S5201.
  • S5201 Extract a random sequence number in the message, and establish a forwarding correspondence relationship with the message sender based on the sequence number, and store in the forwarding correspondence table;
  • S5202 According to the local target registration server record, forward the "forwarding service request" to the registration service device, and return to S5001;

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

La présente invention concerne un système d'enregistrement de nom orienté application dans un environnement NAT qui comprend un dispositif terminal du système et une unité service d'enregistrement qui comprend une unité service d'enregistrement de couche supérieure reliée à une unité service d'enregistrement de base et de réseau public reliée à un réseau privé, l'unité service d'enregistrement étant utilisée pour recevoir des message de demande d'ouverture de session émanant du dispositif terminal du système, lesdites informations d'ouverture de session d'utilisateur comprenant au moins l'identification de l'utilisateur, le point d'ouverture de session de l'utilisateur du dispositif terminal du système utilisé par l'utilisateur dans le réseau auquel l'unité service d'enregistrement est connectée et le point d'accès du dispositif terminal du système utilisé par l'utilisateur dans le réseau auquel l'unité service d'enregistrement est connectée. Cette invention peut permettre de localiser la position par l'identification dans l'environnement de réseau NAT et rendre le service dans le réseau privé visible pour le réseau extérieur et inadapté à des applications spécifiques. La présente invention porte également sur un système et un procédé qui assurent une route d'accès plus appropriée aux noeuds du réseau extérieur.
PCT/CN2009/000298 2008-03-19 2009-03-19 Système et procédé d'enregistrement de nom orienté application dans un environnement nat WO2009114995A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2008101022784A CN101242421B (zh) 2008-03-19 2008-03-19 多层nat环境下面向应用的名字注册系统及其服务方法
CN200810102278.4 2008-03-19

Publications (1)

Publication Number Publication Date
WO2009114995A1 true WO2009114995A1 (fr) 2009-09-24

Family

ID=39933630

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/000298 WO2009114995A1 (fr) 2008-03-19 2009-03-19 Système et procédé d'enregistrement de nom orienté application dans un environnement nat

Country Status (2)

Country Link
CN (1) CN101242421B (fr)
WO (1) WO2009114995A1 (fr)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101242421B (zh) * 2008-03-19 2012-06-13 中国科学院计算技术研究所 多层nat环境下面向应用的名字注册系统及其服务方法
CN101247408B (zh) * 2008-03-20 2010-11-03 中国科学院计算技术研究所 多层nat网络中面向应用的名字注册系统及方法
JP5239618B2 (ja) * 2008-08-19 2013-07-17 沖電気工業株式会社 アドレス変換装置、方法及びプログラム、並びにノード
CN102073503B (zh) * 2011-01-19 2013-08-21 上海交通大学 基于情境感知的网构软件演化方法
CN103023805A (zh) * 2012-11-22 2013-04-03 北京航空航天大学 一种MapReduce系统
CN106559509B (zh) * 2015-09-30 2019-10-22 中国电信股份有限公司 登记服务器、cgn设备、服务提供系统及索引、转发方法
CN109561161B (zh) * 2017-09-25 2020-05-26 中国科学院声学研究所 一种基于时空约束现场的名字注册及解析方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040139225A1 (en) * 2002-11-01 2004-07-15 Sony Corporation Information processing system, information processing apparatus, information processing method, and information processing program
US20040205245A1 (en) * 2003-03-28 2004-10-14 Jean-Francois Le Pennec Data transmission system with a mechanism enabling any application to run transparently over a network address translation device
US20050086373A1 (en) * 2003-10-16 2005-04-21 International Business Machines Corporation Accessing data processing systems behind a NAT enabled network
CN101098284A (zh) * 2006-07-02 2008-01-02 冼剑光 实现网络无缝互连的方法
CN101242421A (zh) * 2008-03-19 2008-08-13 中国科学院计算技术研究所 多层nat环境下面向应用的名字注册系统及其服务方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100403729C (zh) * 2004-09-28 2008-07-16 王安生 Sip软交换系统中呼叫控制与媒体流穿越私网的方法
CN101064712B (zh) * 2006-04-24 2013-04-24 上海信息安全基础设施研究中心 一种基于Linux内核实现双通道穿越多级NAT和防火墙的系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040139225A1 (en) * 2002-11-01 2004-07-15 Sony Corporation Information processing system, information processing apparatus, information processing method, and information processing program
US20040205245A1 (en) * 2003-03-28 2004-10-14 Jean-Francois Le Pennec Data transmission system with a mechanism enabling any application to run transparently over a network address translation device
US20050086373A1 (en) * 2003-10-16 2005-04-21 International Business Machines Corporation Accessing data processing systems behind a NAT enabled network
CN101098284A (zh) * 2006-07-02 2008-01-02 冼剑光 实现网络无缝互连的方法
CN101242421A (zh) * 2008-03-19 2008-08-13 中国科学院计算技术研究所 多层nat环境下面向应用的名字注册系统及其服务方法

Also Published As

Publication number Publication date
CN101242421A (zh) 2008-08-13
CN101242421B (zh) 2012-06-13

Similar Documents

Publication Publication Date Title
WO2009114995A1 (fr) Système et procédé d'enregistrement de nom orienté application dans un environnement nat
WO2016119747A1 (fr) Système et procédé pour communiquer dans un réseau vpn ssl
KR100782266B1 (ko) 패킷 네트워크 인터페이스와 그 동작방법
US7792995B2 (en) Accessing data processing systems behind a NAT enabled network
CN101242413B (zh) 同根多层nat网络中服务资源地址获取系统及方法
US6101552A (en) Virtual internet protocol gate and the network constructed with the same
JP4354294B2 (ja) ネットワーク・セグメントが互いに異なる複数のネットワークに接続されたゲートウェイ装置、およびipパケットを転送するためのプログラムおよび方法
US10027623B2 (en) Internet protocol address resolution
US6157950A (en) Methods and apparatus for interfacing a computer or small network to a wide area network such as the internet
CN102055816A (zh) 一种通信方法、业务服务器、中间设备、终端及通信系统
CN1273394A (zh) 综合ip网络
CN101262447B (zh) 一种系统终端设备建立nat穿越通道的方法
CN112437168B (zh) 一种内网穿透系统
US8612557B2 (en) Method for establishing connection between user-network of other technology and domain name system proxy server for controlling the same
CN101321128A (zh) 通信设备、通信网络系统和通信方法
JP3666654B2 (ja) インターネット通信方法{AmethodforanInternetCommunication}
EP2095599B1 (fr) Procédé d'établissement d'une liaison d'égal à égal entre des supports de communication
WO2009114997A1 (fr) Système d'enregistrement de noms en fonction de l'application destiné à un environnement de traduction d'adresse multicouche et procédé correspondant
US7440466B2 (en) Method, apparatus and system for accessing multiple nodes on a private network
SE517217C2 (sv) Metod och system för kommunikation mellan olika nätverk
JP3902597B2 (ja) ルータ及びスタティックドメインネームルーティング
CN110691113A (zh) 一种双方为非对称型的nat的穿透方法
CN101572729B (zh) 一种虚拟专用网节点信息的处理方法及相关设备、系统
CN114629956B (zh) 用于实现边缘计算网络加速的方法和区块链网络
CN101227507B (zh) 同根多层nat网络中服务资源地址获取系统及方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09722230

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09722230

Country of ref document: EP

Kind code of ref document: A1

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载