WO2010037893A1 - Communication of mapping information - Google Patents

Communication of mapping information Download PDF

Info

Publication number
WO2010037893A1
WO2010037893A1 PCT/FI2008/050547 FI2008050547W WO2010037893A1 WO 2010037893 A1 WO2010037893 A1 WO 2010037893A1 FI 2008050547 W FI2008050547 W FI 2008050547W WO 2010037893 A1 WO2010037893 A1 WO 2010037893A1
Authority
WO
WIPO (PCT)
Prior art keywords
internet protocol
protocol version
address
data packet
mapping
Prior art date
Application number
PCT/FI2008/050547
Other languages
French (fr)
Inventor
Remi Denis-Courmont
Original Assignee
Nokia Corporation
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 Nokia Corporation filed Critical Nokia Corporation
Priority to PCT/FI2008/050547 priority Critical patent/WO2010037893A1/en
Publication of WO2010037893A1 publication Critical patent/WO2010037893A1/en

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/251Translation of Internet protocol [IP] addresses between different IP versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/167Adaptation for transition between two IP versions, e.g. between IPv4 and IPv6
    • 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
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]

Definitions

  • the present invention relates in general to Internet Protocol (IP) address and/or Transmission Control Protocol (TCP) port number mapping, and in particular, but not exclusively, to communicating address and/or port number mapping information to a host in an IP network.
  • IP Internet Protocol
  • TCP Transmission Control Protocol
  • IP Internet Protocol
  • IP based communication has become commonplace in today's communication networks, including wired and wireless communication networks.
  • IP based communication each host has a unique IP address, with which the host can be identified in the IP network.
  • IPv4 Internet Protocol version 4
  • An IPv4 address has a length of 32 bits, which gives a theoretical maximum of a little over 4 billion unique IPv4 addresses. Due to continuously expanding usage of IP based communication, the available IPv4 address space has reached its limits for allocating IPv4 addresses to hosts.
  • IPv6 Internet Protocol version 6
  • IPv6 Internet Protocol version 6
  • private IP networks where addresses are allocated from a specific address space.
  • IPv4 Internet Protocol version 6
  • NAT Network Address Translators
  • Such a gateway element may translate IPv4 data packets that are received from the IPv4 network to IPv6 data packets and pass them on to the IPv6 network, and vice versa.
  • the gateway element may keep track of IP flows that traverse through it and store information on mappings between IPv4 and IPv6 addresses, as well as port numbers or other identifiers used in each network.
  • the gateway element When the gateway element receives an IP packet belonging to a particular flow, it can replace the IP address and/or Transmission Control Protocol (TCP) port number used in one network with the IP address and TCP port number used in the other network. It means that e.g. the IPv4 address and TCP port number used in the IPv4 network are hidden from host(s) in the IPv6 network. Some protocols may need information on the IP address and/or port number used by other communication endpoint(s) in order to function properly.
  • TCP Transmission Control Protocol
  • a method comprising the steps of receiving an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address, translating the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, inserting the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and sending the internet protocol version 6 data packet to the second internet protocol version 6 address.
  • the invention provides an apparatus comprising a communication interface configured to operate a communication connection, a memory configured to store mapping information, and a processor functionally coupled to the communication interface and to the memory, the processor being configured to receive an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address stored in the memory, to translate the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, to insert the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and to send the internet protocol version 6 data packet to the second internet protocol version 6 address via the communication interface.
  • a computer program product embodied on a computer-readable medium, the computer program comprising program code operable to be executed by a processor, the program code being configured to enable, when executed, the processor to receive an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address, to translate the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, to insert the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and to send the internet protocol version 6 data packet to the second internet protocol version 6 address.
  • the invention provides an apparatus comprising communication interface means for operating a communication connection, memory means for storing mapping information, means for receiving an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address stored in the memory means, means for translating the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, means for inserting the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and means for sending the internet protocol version 6 data packet to the second internet protocol version 6 address via the communication interface means.
  • an internet protocol version 4 data packet is received and translated into an internet protocol version 6 data packet.
  • the source internet protocol version 4 address corresponds to a mapping between the internet protocol version 4 address and an internet protocol version 6 address
  • the internet protocol version 4 address may be inserted into an extension header of the internet protocol version 6 data packet that is generated by the translation.
  • Fig. 1 shows a schematic picture of a system where at least one embodiment may be used
  • Fig. 2 outlines an apparatus according to an embodiment
  • Fig. 3 depicts the structure of and IPv6 packet, which can be used to implement some embodiments; and Fig. 4 depicts an example of a method according to an embodiment.
  • Fig. 1 outlines an example of a system where at least one embodiment of the present invention may be implemented and utilized.
  • the system of Fig. 1 comprises a first network 10 where communication is based on Internet Protocol version 4 (IPv4), and a second network 12, where communication is based on Internet Protocol version 6 (IPv6).
  • IPv4 Internet Protocol version 4
  • IPv6 Internet Protocol version 6
  • the first network 10 and the second network 12 may be e.g. logical networks using common or dedicated network infrastructure.
  • the first network 10 and the second network 12 may be connected by means of a gateway element 11.
  • the gateway element 11 may be e.g. a Network Address Translator (NAT) or a Network Address and Port Translator (NAPT).
  • NAT Network Address Translator
  • NAPT Network Address and Port Translator
  • the first network 10 and the second network 12 may comprise a plurality of network elements, such as routers and firewalls, and the networks may be wired networks, wireless networks, or combinations thereof.
  • the first network 10 and the second network 12 support Internet Protocol (IP) based communication, but they may also support other types of communication, such as circuit-switched connections.
  • IP Internet Protocol
  • Fig. 2 outlines an example of the structure of an apparatus according to at least one embodiment.
  • the apparatus 20 of Fig. 2 may represent e.g. the gateway 11 of Fig. 1.
  • the apparatus 20 may comprise communication interface module 21 , a processor 22 coupled to the communication interface module 21 , and a memory 23 coupled to the processor 22.
  • the apparatus may further comprise a computer program 24 stored in the memory 23 and operable to be loaded into and executed on the processor 22, which enables the apparatus 20 to operate according to at least one embodiment of the invention.
  • the memory 23 may further store a table, database or the like that contains information about IP address and/or port mappings. These mappings are described further hereinafter.
  • the communication interface module 21 may be e.g. a radio interface module, such as a WLAN, Bluetooth, GSM/GPRS, CDMA, or WCDMA radio module, or a module for a wired interface connection, such as a LAN interface module.
  • the communication interface module 21 may be integrated into the apparatus 20 or into an adapter, card or the like that may be inserted into a suitable slot or port of the apparatus 20.
  • the communication interface module 21 may support one radio or wired interface technology or a plurality of technologies.
  • Fig. 2 shows one communication interface module 21 , but the apparatus 20 may comprise a plurality of communication interface modules 21 , possibly supporting different communication technologies.
  • the processor 22 may be e.g. a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a graphics processing unit, or the like.
  • Fig. 2 shows one processor 22, but the apparatus 20 may comprise a plurality of processors.
  • the apparatus 20 may e.g. comprise a baseband processor and a media processor.
  • the memory 23 may be for example a non-volatile or a volatile memory, such as a read-only memory (ROM), a programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), a random-access memory (RAM), a flash memory, a data disk, an optical storage, a magnetic storage, a memory card or a smart card, such as a SIM or USIM card, or the like.
  • the apparatus 20 may comprise a plurality of memories 23.
  • the memory 23 may be constructed as a part of the apparatus 20 or it may be inserted into a slot, port, or the like of the apparatus 20.
  • the memory 23 may serve the sole purpose of storing data, or it may be constructed as a part of an apparatus serving other purposes, such as processing data.
  • the apparatus 20 may comprise other circuitry such as input/output (I/O) circuitry, memory chips, application-specific integrated circuits (ASIC), processing circuitry for specific purposes such as source coding/decoding circuitry, channel coding/decoding circuitry, ciphering/deciphering circuitry, and the like.
  • I/O input/output
  • ASIC application-specific integrated circuits
  • the apparatus 20 may comprise communication interface means 21 for operating a communication connection, memory means 23 for storing mapping information, means 22, 24 for receiving an IPv4 data packet comprising an IPv4 address, wherein the IPv4 address may correspond to a mapping between the IPv4 address and a first IPv6 address, the mapping being stored in the memory means 23.
  • the apparatus 20 may further comprise means 22 for translating the IPv4 data packet to an IPv6 data packet comprising the first IPv6 address as a source address and a second IPv6 address as a destination address, means 22 for inserting the IPv4 address into an extension header of the IPv6 data packet, and means 22, 24 for sending the IPv6 data packet to the second IPv6 address via the communication interface means 21.
  • Fig. 3 illustrates the structure of an IPv6 data packet, which can be utilized in implementing at least one embodiment.
  • the IPv6 data packet 300 comprises a header portion 301 and a payload portion 302.
  • the IPv6 packet 300 may also comprise and extension header portion 303.
  • the header portion 301 comprises a version field 304, a traffic class field 305, a flow label field 306, a payload length field 307, a next header field 308, a hop limit field 309, a source address field 310, and a destination address field 311.
  • a value in the version field 304 indicates the version of the IP protocol, in this case version 6.
  • a value in the traffic class field 305 indicates the priority of the packet.
  • the flow label field 306 may be used to identify different flows e.g.
  • the payload length field 307 indicates the length of the payload portion 302 in bytes.
  • the next header field 308 indicates the protocol header that begins the payload portion 302, i.e. the protocol that is encapsulated in the IPv6 data packet 300. In case the IPv6 data packet comprises an extension header portion 303, the next header field 308 indicates the type of the first extension header 312.
  • the hop limit field 309 indicates the number of transmission legs between routers in the network that the IPv6 data packet 300 is allowed to traverse. Each router that receives the data packet 300 decrements the hop limit value prior to forwarding it to the next router in the path to the destination of the packet. For example, if the value of the hop limit is set to zero, the first router in the path discards the IPv6 data packet 300 and sends an Internet Control Message Protocol (ICMP) error message back to the sender to indicate that the data packet was discarded.
  • ICMP Internet Control Message Protocol
  • the source address field 310 contains the IPv6 address of the sender of the IPv6 data packet or datagram 300
  • the destination address field 311 contains the IPv6 address of the destination of the IPv6 data packet 300.
  • the length of the IPv6 addresses are 128 bits, as opposed to IPv4 addresses, which have a length of 32 bits.
  • the payload portion 302 contains the payload carried in the IPv6 data packet 300.
  • the payload may be for example a Transmission Control Protocol (TCP) segment or a User Datagram Protocol (UDP) packet.
  • TCP Transmission Control Protocol
  • UDP User Datagram Protocol
  • the payload portion 302 of the IPv6 data packet begins with a TCP header for a TCP segment and a UDP header for a UDP packet.
  • the next header field 308 of the header portion 301 , or the next header field 315 of the last extension header 314 contains an indication of the protocol contained in the payload portion 302 of the IPv6 data packet 300.
  • the encapsulated protocol may also be the ICMP protocol mentioned hereinbefore.
  • the IPv6 data packet may comprise one or more extension headers.
  • Fig. 3 shows two extension headers 312, 314, including respective next header fields 313, 315, which indicate the next extension header type or the protocol encapsulated in the IPv6 data packet 300.
  • the Request For Comments (RCF) 2460 specification defines a number of extension headers that can be used in an IPv6 data packet, as well as a recommended order, in which the defined extension headers appear in an IPv6 data packet.
  • an IPv4 data packet comprising an IPv4 address is received.
  • the IPv4 address may correspond to a mapping between the IPv4 address and a first IPv6 address.
  • the IPv4 data packet may be received e.g. by the gateway element 11 via the IPv4 network of Fig. 1.
  • the apparatus 20 representing an example of the gateway element 11
  • the IPv4 data packet may be received e.g. by the processor 22, controlled by the computer program 24, via the communication interface module 21.
  • the IPv4 address may correspond to e.g. an IPv6 address that is allocated to the sender of the IPv4 data packet for the purposes of communicating with hosts of the IPv6 network.
  • the mapping between the sender's IPv4 address and IPv6 address may be determined and maintained by the gateway element 11.
  • a mapping database or table may be stored in the memory 23 of the apparatus 20.
  • the received IPv4 data packet is translated to an IPv6 data packet, for example by the gateway element 11 of Fig. 1.
  • the resulting IPv6 data packet may comprise the first IPv6 address as a source address and a second IPv6 address as a destination IPv6 address.
  • the resulting IPv6 data packet may comprise the IPv6 address that has been mapped to the sender's IPv4 address as a source address.
  • the IPv4 to IPv6 translation may be carried out by the processor 22, controlled by the computer program 24.
  • the processor 22 may retrieve mapping information from an IP address mapping database or table stored in the memory 23.
  • step 42 of Fig. 4 the IPv4 address that was included in the received IPv4 data packet is inserted into an extension header of the IPv6 data packet that was the result of the translation.
  • Said inclusion may be performed e.g. by the gateway element 11 of Fig. 1.
  • the inclusion may be performed by the processor 22, controlled by the computer program 24.
  • the IPv4 address may be inserted e.g. in either of the extension headers 312, 314 shown in Fig. 3.
  • the resulting IPv6 data packet is sent to the second IPv6 address, i.e. the destination address of the IPv6 data packet, by e.g. the gateway element 11.
  • said sending may be carried out by the processor 22, controlled by the computer program 24, via the communication interface module 21.
  • the sent IPv6 data packet may now carry both the sender's IPv6 address in the source address field 310 and the sender's IPv4 address in either of the extension headers 312, 314 of the IPv6 data packet 300.
  • the IPv4 address of the sender may be inserted into the extension header of the produced IPv6 data packet only when the produced IPv6 data packet comprises a response to a connection establishment data packet.
  • a connection establishment data packet may be e.g. an IPv6 data packet that encapsulates a
  • the connection establishment data packet may be sent by a host in the IPv6 network 12 to a host in the IPv4 network 10 depicted in Fig. 1.
  • the gateway element 11 may determine a mapping between the IPv4 address and the IPv6 address of the host in the IPv4 network, once the gateway element 11 has received the connection establishment data packet destined to the host in the IPv4 network 10.
  • the mapping may be determined by the processor 22, controlled by the computer program 24, and mapping information may be stored in a mapping database or table in the memory 23.
  • the received IPv4 data packet may further comprise a port number, such as a TCP port number used by a particular application, such as a File Transfer Protocol (FTP) client.
  • An embodiment may further comprise inserting the port number into an extension header of an IPv6 data packet.
  • the port number may be inserted into the same extension header where the IPv4 address of the sender of the IPv4 data packet is inserted, or to another extension header.
  • the address mapping that may be maintained by the gateway element of Fig. 1 may further comprise storing port information in addition to storing IP address information.
  • the mapping information determined and stored by the gateway element 11 may comprise IP address / port number pairs.
  • the mapping may be determined by the processor 22, controlled by the computer program 24, and mapping information may be stored in a mapping database or table in the memory 23.
  • the mapping between the IPv4 address and the first IPv6 address may be determined responsive to receiving a connection establishment data packet destined to the first IPv6 address.
  • the determination may be made e.g. by the gateway element 11 of Fig. 1.
  • the determination may be made by the processor 22, controlled by the computer program 24.
  • the received IPv4 data packet may comprise a control message identifier. This may be the case, when the payload portion of the IPv4 data packet contains e.g. an ICMP control message.
  • the ICMP control message may be a response message to another ICMP control message.
  • an embodiment may further comprise inserting the control message identifier into an extension header of the IPv6 data packet that is produced by translating the IPv4 data packet to an IPv6 data packet.
  • control message identifier may be inserted into an extension header of the resulting IPv6 data packet by the gateway element 11 of Fig. 1.
  • the control message identifier may be inserted into the same extension header as the IPv4 address, or to another extension header.
  • the gateway element may determine and store IPv4 ICMP / IPv6 ICMP mapping.
  • the insertion may be carried out and the mapping be determined by the processor 22, controlled by the computer program 24, and the mapping information may be stored in a mapping database or table in the memory 23.
  • At least one embodiment of the invention enables delivery of IPv4 / IPv6 address and/or port mapping information to an IPv6 host located in an IPv6 network.
  • Said mapping information may be determined, stored, and delivered by a gateway element at the logical border of an IPv4 and IPv6 network.
  • the mapping information may be delivered to the IPv6 host by inserting the mapping information into an extension header of an IPv6 data packet that is produced by translating an IPv4 data packet received from an IPv4 host to an IPv6 data packet.
  • the mapping information may be inserted e.g. into an extension header of an IPv6 data packet, that is a response to a connection establishment data packet.
  • the mapping information may also be inserted into a number of subsequent IPv6 data packets that have been produced in a similar manner, i.e. translating an IPv4 packet to an IPv6 packet.
  • the mapping information can be delivered to an IPv6 host without using out-of-band signaling means or external servers, from which the mapping information is queried.
  • at least one embodiment of the present invention does not restrict the IPv6 address space that is available for IPv6 source and destination addresses.

Landscapes

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

Abstract

The invention relates to enabling communication of mapping information. Said communication is enabled by receiving an internet protocol version 4 data packet from an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address, translating the internet protocol version 4 data packet to an internet protocol version 6 data packet having the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, inserting the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and sending the internet protocol version 6 data packet to the second internet protocol version 6 address.

Description

COMMUNICATION OF MAPPING INFORMATION
FIELD OF THE INVENTION
The present invention relates in general to Internet Protocol (IP) address and/or Transmission Control Protocol (TCP) port number mapping, and in particular, but not exclusively, to communicating address and/or port number mapping information to a host in an IP network.
BACKGROUND OF THE INVENTION
Internet Protocol (IP) based communication has become commonplace in today's communication networks, including wired and wireless communication networks. In IP based communication, each host has a unique IP address, with which the host can be identified in the IP network.
Traditionally, Internet Protocol version 4 (IPv4) has been used in IP based communication. An IPv4 address has a length of 32 bits, which gives a theoretical maximum of a little over 4 billion unique IPv4 addresses. Due to continuously expanding usage of IP based communication, the available IPv4 address space has reached its limits for allocating IPv4 addresses to hosts.
A number of techniques have been developed in order to alleviate the shortage of IPv4 addresses. These techniques include Internet Protocol version 6 (IPv6), which uses 128-bit IP addresses, and the use of private IP networks, where addresses are allocated from a specific address space. As the private IP addresses are not visible to public IP networks, each private network may use the same IPv4 address space for allocating private IPv4 addresses. Communication between private IP networks and public IP networks may take place via particular type of gateway elements, Network Address Translators (NAT), which allocate a public IP address to a host that resides in a private IP network to be used for communication in the public IP network. Network address translator type gateway elements may also be deployed at the logical border between an IPv4 network and an IPv6 network to enable communication between these networks. Such a gateway element may translate IPv4 data packets that are received from the IPv4 network to IPv6 data packets and pass them on to the IPv6 network, and vice versa. The gateway element may keep track of IP flows that traverse through it and store information on mappings between IPv4 and IPv6 addresses, as well as port numbers or other identifiers used in each network.
When the gateway element receives an IP packet belonging to a particular flow, it can replace the IP address and/or Transmission Control Protocol (TCP) port number used in one network with the IP address and TCP port number used in the other network. It means that e.g. the IPv4 address and TCP port number used in the IPv4 network are hidden from host(s) in the IPv6 network. Some protocols may need information on the IP address and/or port number used by other communication endpoint(s) in order to function properly.
SUMMARY
Particular embodiments of the invention aim at addressing at least some of the issues discussed above. According to a first aspect of the invention there is provided a method comprising the steps of receiving an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address, translating the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, inserting the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and sending the internet protocol version 6 data packet to the second internet protocol version 6 address. According to a second aspect the invention provides an apparatus comprising a communication interface configured to operate a communication connection, a memory configured to store mapping information, and a processor functionally coupled to the communication interface and to the memory, the processor being configured to receive an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address stored in the memory, to translate the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, to insert the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and to send the internet protocol version 6 data packet to the second internet protocol version 6 address via the communication interface.
According to a third aspect there is provided a computer program product embodied on a computer-readable medium, the computer program comprising program code operable to be executed by a processor, the program code being configured to enable, when executed, the processor to receive an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address, to translate the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, to insert the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and to send the internet protocol version 6 data packet to the second internet protocol version 6 address.
According to a fourth aspect the invention provides an apparatus comprising communication interface means for operating a communication connection, memory means for storing mapping information, means for receiving an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address stored in the memory means, means for translating the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address, means for inserting the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet, and means for sending the internet protocol version 6 data packet to the second internet protocol version 6 address via the communication interface means.
The aspects described hereinbefore represent non-limiting examples of the invention. According to the exemplary aspects, an internet protocol version 4 data packet is received and translated into an internet protocol version 6 data packet. In case the source internet protocol version 4 address corresponds to a mapping between the internet protocol version 4 address and an internet protocol version 6 address, the internet protocol version 4 address may be inserted into an extension header of the internet protocol version 6 data packet that is generated by the translation.
Various exemplary embodiments of the invention are described hereinafter in the detailed description as well as in the dependent claims appended hereto. The embodiments are described with reference to selected aspects. A person skilled in the art appreciates that any embodiment may apply to a particular aspect either alone or in combination with other embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
The invention will be described, by way of example only, with reference to the accompanying drawings, in which:
Fig. 1 shows a schematic picture of a system where at least one embodiment may be used;
Fig. 2 outlines an apparatus according to an embodiment;
Fig. 3 depicts the structure of and IPv6 packet, which can be used to implement some embodiments; and Fig. 4 depicts an example of a method according to an embodiment.
DETAILED DESCRIPTION
In the following description, like numbers denote like elements.
Fig. 1 outlines an example of a system where at least one embodiment of the present invention may be implemented and utilized. The system of Fig. 1 comprises a first network 10 where communication is based on Internet Protocol version 4 (IPv4), and a second network 12, where communication is based on Internet Protocol version 6 (IPv6). The first network 10 and the second network 12 may be e.g. logical networks using common or dedicated network infrastructure. The first network 10 and the second network 12 may be connected by means of a gateway element 11.
The gateway element 11 may be e.g. a Network Address Translator (NAT) or a Network Address and Port Translator (NAPT). A skilled person appreciates that the first network 10 and the second network 12 may comprise a plurality of network elements, such as routers and firewalls, and the networks may be wired networks, wireless networks, or combinations thereof. The first network 10 and the second network 12 support Internet Protocol (IP) based communication, but they may also support other types of communication, such as circuit-switched connections.
Fig. 2 outlines an example of the structure of an apparatus according to at least one embodiment. The apparatus 20 of Fig. 2 may represent e.g. the gateway 11 of Fig. 1.
The apparatus 20 may comprise communication interface module 21 , a processor 22 coupled to the communication interface module 21 , and a memory 23 coupled to the processor 22. The apparatus may further comprise a computer program 24 stored in the memory 23 and operable to be loaded into and executed on the processor 22, which enables the apparatus 20 to operate according to at least one embodiment of the invention. The memory 23 may further store a table, database or the like that contains information about IP address and/or port mappings. These mappings are described further hereinafter.
The communication interface module 21 may be e.g. a radio interface module, such as a WLAN, Bluetooth, GSM/GPRS, CDMA, or WCDMA radio module, or a module for a wired interface connection, such as a LAN interface module. The communication interface module 21 may be integrated into the apparatus 20 or into an adapter, card or the like that may be inserted into a suitable slot or port of the apparatus 20. The communication interface module 21 may support one radio or wired interface technology or a plurality of technologies. Fig. 2 shows one communication interface module 21 , but the apparatus 20 may comprise a plurality of communication interface modules 21 , possibly supporting different communication technologies.
The processor 22 may be e.g. a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a graphics processing unit, or the like. Fig. 2 shows one processor 22, but the apparatus 20 may comprise a plurality of processors. The apparatus 20 may e.g. comprise a baseband processor and a media processor. The memory 23 may be for example a non-volatile or a volatile memory, such as a read-only memory (ROM), a programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), a random-access memory (RAM), a flash memory, a data disk, an optical storage, a magnetic storage, a memory card or a smart card, such as a SIM or USIM card, or the like. The apparatus 20 may comprise a plurality of memories 23. The memory 23 may be constructed as a part of the apparatus 20 or it may be inserted into a slot, port, or the like of the apparatus 20. The memory 23 may serve the sole purpose of storing data, or it may be constructed as a part of an apparatus serving other purposes, such as processing data.
In addition to the elements shown in Figure 2, the apparatus 20 may comprise other circuitry such as input/output (I/O) circuitry, memory chips, application- specific integrated circuits (ASIC), processing circuitry for specific purposes such as source coding/decoding circuitry, channel coding/decoding circuitry, ciphering/deciphering circuitry, and the like.
In an embodiment, the apparatus 20 may comprise communication interface means 21 for operating a communication connection, memory means 23 for storing mapping information, means 22, 24 for receiving an IPv4 data packet comprising an IPv4 address, wherein the IPv4 address may correspond to a mapping between the IPv4 address and a first IPv6 address, the mapping being stored in the memory means 23. The apparatus 20 may further comprise means 22 for translating the IPv4 data packet to an IPv6 data packet comprising the first IPv6 address as a source address and a second IPv6 address as a destination address, means 22 for inserting the IPv4 address into an extension header of the IPv6 data packet, and means 22, 24 for sending the IPv6 data packet to the second IPv6 address via the communication interface means 21.
Fig. 3 illustrates the structure of an IPv6 data packet, which can be utilized in implementing at least one embodiment. The IPv6 data packet 300 comprises a header portion 301 and a payload portion 302. The IPv6 packet 300 may also comprise and extension header portion 303. The header portion 301 comprises a version field 304, a traffic class field 305, a flow label field 306, a payload length field 307, a next header field 308, a hop limit field 309, a source address field 310, and a destination address field 311. A value in the version field 304 indicates the version of the IP protocol, in this case version 6. A value in the traffic class field 305 indicates the priority of the packet. The flow label field 306 may be used to identify different flows e.g. for Quality of Service (QoS) management purposes. The payload length field 307 indicates the length of the payload portion 302 in bytes. The next header field 308 indicates the protocol header that begins the payload portion 302, i.e. the protocol that is encapsulated in the IPv6 data packet 300. In case the IPv6 data packet comprises an extension header portion 303, the next header field 308 indicates the type of the first extension header 312.
The hop limit field 309 indicates the number of transmission legs between routers in the network that the IPv6 data packet 300 is allowed to traverse. Each router that receives the data packet 300 decrements the hop limit value prior to forwarding it to the next router in the path to the destination of the packet. For example, if the value of the hop limit is set to zero, the first router in the path discards the IPv6 data packet 300 and sends an Internet Control Message Protocol (ICMP) error message back to the sender to indicate that the data packet was discarded.
The source address field 310 contains the IPv6 address of the sender of the IPv6 data packet or datagram 300, and the destination address field 311 contains the IPv6 address of the destination of the IPv6 data packet 300. The length of the IPv6 addresses are 128 bits, as opposed to IPv4 addresses, which have a length of 32 bits.
The payload portion 302 contains the payload carried in the IPv6 data packet 300. The payload may be for example a Transmission Control Protocol (TCP) segment or a User Datagram Protocol (UDP) packet. In these cases, the payload portion 302 of the IPv6 data packet begins with a TCP header for a TCP segment and a UDP header for a UDP packet. Also, the next header field 308 of the header portion 301 , or the next header field 315 of the last extension header 314 contains an indication of the protocol contained in the payload portion 302 of the IPv6 data packet 300. The encapsulated protocol may also be the ICMP protocol mentioned hereinbefore.
As mentioned earlier, the IPv6 data packet may comprise one or more extension headers. Fig. 3 shows two extension headers 312, 314, including respective next header fields 313, 315, which indicate the next extension header type or the protocol encapsulated in the IPv6 data packet 300.
The Request For Comments (RCF) 2460 specification defines a number of extension headers that can be used in an IPv6 data packet, as well as a recommended order, in which the defined extension headers appear in an IPv6 data packet.
Exemplary embodiments of the invention are now described with reference to Fig. 4 and to Figs. 1 , 2, and 3, where applicable. In step 40 of Fig. 4, an IPv4 data packet comprising an IPv4 address is received. The IPv4 address may correspond to a mapping between the IPv4 address and a first IPv6 address.
The IPv4 data packet may be received e.g. by the gateway element 11 via the IPv4 network of Fig. 1. With reference to Fig. 2, the apparatus 20 representing an example of the gateway element 11 , the IPv4 data packet may be received e.g. by the processor 22, controlled by the computer program 24, via the communication interface module 21. The IPv4 address may correspond to e.g. an IPv6 address that is allocated to the sender of the IPv4 data packet for the purposes of communicating with hosts of the IPv6 network. The mapping between the sender's IPv4 address and IPv6 address may be determined and maintained by the gateway element 11. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , a mapping database or table may be stored in the memory 23 of the apparatus 20.
In step 41 , the received IPv4 data packet is translated to an IPv6 data packet, for example by the gateway element 11 of Fig. 1. The resulting IPv6 data packet may comprise the first IPv6 address as a source address and a second IPv6 address as a destination IPv6 address. For example, the resulting IPv6 data packet may comprise the IPv6 address that has been mapped to the sender's IPv4 address as a source address. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , the IPv4 to IPv6 translation may be carried out by the processor 22, controlled by the computer program 24. The processor 22 may retrieve mapping information from an IP address mapping database or table stored in the memory 23.
In step 42 of Fig. 4, the IPv4 address that was included in the received IPv4 data packet is inserted into an extension header of the IPv6 data packet that was the result of the translation. Said inclusion may be performed e.g. by the gateway element 11 of Fig. 1. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , the inclusion may be performed by the processor 22, controlled by the computer program 24. The IPv4 address may be inserted e.g. in either of the extension headers 312, 314 shown in Fig. 3.
In step 43 of Fig. 4, the resulting IPv6 data packet is sent to the second IPv6 address, i.e. the destination address of the IPv6 data packet, by e.g. the gateway element 11. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , said sending may be carried out by the processor 22, controlled by the computer program 24, via the communication interface module 21. With reference to Fig. 3, the sent IPv6 data packet may now carry both the sender's IPv6 address in the source address field 310 and the sender's IPv4 address in either of the extension headers 312, 314 of the IPv6 data packet 300.
The IPv4 address of the sender may be inserted into the extension header of the produced IPv6 data packet only when the produced IPv6 data packet comprises a response to a connection establishment data packet. Such a connection establishment data packet may be e.g. an IPv6 data packet that encapsulates a
TCP SYN segment. The connection establishment data packet may be sent by a host in the IPv6 network 12 to a host in the IPv4 network 10 depicted in Fig. 1. The gateway element 11 may determine a mapping between the IPv4 address and the IPv6 address of the host in the IPv4 network, once the gateway element 11 has received the connection establishment data packet destined to the host in the IPv4 network 10. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , the mapping may be determined by the processor 22, controlled by the computer program 24, and mapping information may be stored in a mapping database or table in the memory 23.
The received IPv4 data packet may further comprise a port number, such as a TCP port number used by a particular application, such as a File Transfer Protocol (FTP) client. An embodiment may further comprise inserting the port number into an extension header of an IPv6 data packet. The port number may be inserted into the same extension header where the IPv4 address of the sender of the IPv4 data packet is inserted, or to another extension header. The address mapping that may be maintained by the gateway element of Fig. 1 may further comprise storing port information in addition to storing IP address information. In other words, the mapping information determined and stored by the gateway element 11 may comprise IP address / port number pairs. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , the mapping may be determined by the processor 22, controlled by the computer program 24, and mapping information may be stored in a mapping database or table in the memory 23.
As noted hereinbefore, the mapping between the IPv4 address and the first IPv6 address, e.g. the IPv6 address assigned to the receiving IPv4 host, may be determined responsive to receiving a connection establishment data packet destined to the first IPv6 address. The determination may be made e.g. by the gateway element 11 of Fig. 1. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , the determination may be made by the processor 22, controlled by the computer program 24.
The received IPv4 data packet may comprise a control message identifier. This may be the case, when the payload portion of the IPv4 data packet contains e.g. an ICMP control message. The ICMP control message may be a response message to another ICMP control message. In this case, an embodiment may further comprise inserting the control message identifier into an extension header of the IPv6 data packet that is produced by translating the IPv4 data packet to an IPv6 data packet.
In a similar manner as descried hereinbefore in connection with inserting an IPv4 address and/or port number into an extension header of an IPv6 data packet that was translated from an IPv4 data packet, the control message identifier may be inserted into an extension header of the resulting IPv6 data packet by the gateway element 11 of Fig. 1. The control message identifier may be inserted into the same extension header as the IPv4 address, or to another extension header.
In this manner, the gateway element may determine and store IPv4 ICMP / IPv6 ICMP mapping. Using the apparatus 20 of Fig. 2 as an example of the structure of the gateway element 11 , the insertion may be carried out and the mapping be determined by the processor 22, controlled by the computer program 24, and the mapping information may be stored in a mapping database or table in the memory 23.
At least one embodiment of the invention enables delivery of IPv4 / IPv6 address and/or port mapping information to an IPv6 host located in an IPv6 network. Said mapping information may be determined, stored, and delivered by a gateway element at the logical border of an IPv4 and IPv6 network. The mapping information may be delivered to the IPv6 host by inserting the mapping information into an extension header of an IPv6 data packet that is produced by translating an IPv4 data packet received from an IPv4 host to an IPv6 data packet. The mapping information may be inserted e.g. into an extension header of an IPv6 data packet, that is a response to a connection establishment data packet. If need be, the mapping information may also be inserted into a number of subsequent IPv6 data packets that have been produced in a similar manner, i.e. translating an IPv4 packet to an IPv6 packet. In this manner, the mapping information can be delivered to an IPv6 host without using out-of-band signaling means or external servers, from which the mapping information is queried. Furthermore, at least one embodiment of the present invention does not restrict the IPv6 address space that is available for IPv6 source and destination addresses.
The foregoing description has provided by way of non-limiting examples of particular implementations and embodiments of the invention a full and informative description of the best mode presently contemplated by the inventors for carrying out the invention. It is however clear to a person skilled in the art that the invention is not restricted to details of the embodiments presented above, but that it can be implemented in other embodiments using equivalent means without deviating from the characteristics of the invention.
Furthermore, some of the features of the above-disclosed embodiments of this invention may be used to advantage without the corresponding use of other features. As such, the foregoing description shall be considered as merely illustrative of the principles of the present invention, and not in limitation thereof. Hence, the scope of the invention is only restricted by the appended patent claims.

Claims

Claims:
1. A method comprising: receiving an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address; translating the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address; inserting the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet; and sending the internet protocol version 6 data packet to the second internet protocol version 6 address.
2. A method according to claim 1 , wherein the internet protocol version 4 address is inserted into the extension header of the internet protocol version 6 data packet only when the internet protocol version 6 data packet comprises a response to a connection establishment data packet.
3. A method according to claim 1 or 2, wherein the internet protocol version 4 data packet further comprises a port number, and wherein the method further comprises: inserting the port number into the extension header of the internet protocol version 6 data packet.
4. A method according to any one of the preceding claims, wherein the mapping between the internet protocol version 4 address and the first internet protocol version 6 address comprises a mapping between IP address / port number pairs.
5. A method according to any one of the preceding claims, wherein the mapping between the internet protocol version 4 address and the first internet protocol version 6 address is determined responsive to receiving a connection establishment packet destined to the first internet protocol version 6 address.
6. A method according to claim 1 , wherein the internet protocol version 4 data packet further comprises a control message identifier, and wherein the method further comprises: inserting the control message identifier into the extension header of the internet protocol version 6 data packet.
7. An apparatus comprising: a communication interface configured to operate a communication connection; a memory configured to store mapping information; and a processor functionally coupled to the communication interface and to the memory, the processor being configured to: receive an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address stored in the memory; translate the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address; insert the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet; and to send the internet protocol version 6 data packet to the second internet protocol version 6 address via the communication interface.
8. An apparatus according to claim 7, wherein the processor is configured to insert the internet protocol version 4 address into the extension header of the internet protocol version 6 data packet only when the internet protocol version 6 data packet comprises a response to a connection establishment data packet.
9. An apparatus according to claim 7 or 8, wherein the internet protocol version 4 data packet further comprises a port number, and wherein the processor is further configured to insert the port number into the extension header of the internet protocol version 6 data packet.
10. An apparatus according to any of claims 7 to 9, wherein the processor is further configured to determine the mapping between the internet protocol version
4 address and the first internet protocol version 6 address responsive to receiving a connection establishment packet destined to the first internet protocol version 6 address.
11. An apparatus according to claim 7, wherein the internet protocol version 4 data packet further comprises a control message identifier, and wherein the processor is further configured to insert the control message identifier into the extension header of the internet protocol version 6 data packet.
12. A computer program product embodied on a computer-readable medium, the computer program comprising program code operable to be executed by a processor, the program code being configured to enable, when executed, the processor to: receive an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address; translate the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address; insert the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet; and to send the internet protocol version 6 data packet to the second internet protocol version 6 address.
13. A computer program product according to claim 12, wherein the program code is further configured to enable the processor to: insert the internet protocol version 4 address into the extension header of the internet protocol version 6 data packet only when the internet protocol version 6 data packet comprises a response to a connection establishment data packet.
14. A computer program product according to claim 12 or 13, wherein the internet protocol version 4 data packet further comprises a port number, and wherein the program code is further configured to enable the processor to: insert the port number into the extension header of the internet protocol version 6 data packet.
15. A computer program product according to any one of claims 12 to 14, wherein the program code is further configured to enable the processor to: determine the mapping between the internet protocol version 4 address and the first internet protocol version 6 address responsive to receiving a connection establishment packet destined to the first internet protocol version 6 address.
16. A computer program product according to claim 12, wherein the internet protocol version 4 data packet further comprises a control message identifier, and wherein the program code is further configured to enable the processor to: insert the control message identifier into the extension header of the internet protocol version 6 data packet.
17. An apparatus comprising: communication interface means for operating a communication connection; memory means for storing mapping information; means for receiving an internet protocol version 4 data packet comprising an internet protocol version 4 address, the internet protocol version 4 address corresponding to a mapping between the internet protocol version 4 address and a first internet protocol version 6 address stored in the memory means; means for translating the internet protocol version 4 data packet to an internet protocol version 6 data packet comprising the first internet protocol version 6 address as a source address and a second internet protocol version 6 address as a destination address; means for inserting the internet protocol version 4 address into an extension header of the internet protocol version 6 data packet; and means for sending the internet protocol version 6 data packet to the second internet protocol version 6 address via the communication interface means.
PCT/FI2008/050547 2008-09-30 2008-09-30 Communication of mapping information WO2010037893A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/FI2008/050547 WO2010037893A1 (en) 2008-09-30 2008-09-30 Communication of mapping information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FI2008/050547 WO2010037893A1 (en) 2008-09-30 2008-09-30 Communication of mapping information

Publications (1)

Publication Number Publication Date
WO2010037893A1 true WO2010037893A1 (en) 2010-04-08

Family

ID=42073026

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FI2008/050547 WO2010037893A1 (en) 2008-09-30 2008-09-30 Communication of mapping information

Country Status (1)

Country Link
WO (1) WO2010037893A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016515371A (en) * 2014-03-19 2016-05-26 ▲華▼▲為▼▲終▼端有限公司 Packet transmission method and apparatus, and server
US10230687B1 (en) 2011-11-16 2019-03-12 Google Llc Apparatus and method for correlating addresses of different Internet protocol versions
CN111163139A (en) * 2019-12-19 2020-05-15 国网冀北电力有限公司信息通信分公司 Polling communication method and device of Internet of things
CN113691650A (en) * 2021-10-21 2021-11-23 北京英迪瑞讯网络科技有限公司 IPv4/IPv6 stateless segmented safety mapping method and control system
CN114095471A (en) * 2020-07-29 2022-02-25 中国电信股份有限公司 Address translation method and device and address tracing method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030185236A1 (en) * 2002-03-27 2003-10-02 Hitachi, Ltd. Method and apparatus for translating protocol
EP1401168A1 (en) * 2002-09-20 2004-03-24 Alcatel A method to transport an internet packet and related network elements
WO2006125726A1 (en) * 2005-05-25 2006-11-30 International Business Machines Corporation Network system and management method thereof, communication terminal and method for sending packet

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030185236A1 (en) * 2002-03-27 2003-10-02 Hitachi, Ltd. Method and apparatus for translating protocol
EP1401168A1 (en) * 2002-09-20 2004-03-24 Alcatel A method to transport an internet packet and related network elements
WO2006125726A1 (en) * 2005-05-25 2006-11-30 International Business Machines Corporation Network system and management method thereof, communication terminal and method for sending packet

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10230687B1 (en) 2011-11-16 2019-03-12 Google Llc Apparatus and method for correlating addresses of different Internet protocol versions
US10938776B2 (en) 2011-11-16 2021-03-02 Google Llc Apparatus and method for correlating addresses of different internet protocol versions
JP2016515371A (en) * 2014-03-19 2016-05-26 ▲華▼▲為▼▲終▼端有限公司 Packet transmission method and apparatus, and server
CN111163139A (en) * 2019-12-19 2020-05-15 国网冀北电力有限公司信息通信分公司 Polling communication method and device of Internet of things
CN114095471A (en) * 2020-07-29 2022-02-25 中国电信股份有限公司 Address translation method and device and address tracing method and device
CN113691650A (en) * 2021-10-21 2021-11-23 北京英迪瑞讯网络科技有限公司 IPv4/IPv6 stateless segmented safety mapping method and control system
CN113691650B (en) * 2021-10-21 2022-02-25 北京英迪瑞讯网络科技有限公司 IPv4/IPv6 stateless segmented safety mapping method and control system

Similar Documents

Publication Publication Date Title
US20240022511A1 (en) Stateless Protocol Translation
Mawatari et al. 464XLAT: Combination of stateful and stateless translation
US9185072B2 (en) Stateless NAT44
JP4130962B2 (en) System and method for using a domain name to route data sent to a destination on a network
US8223780B2 (en) Method for forwarding data packet, system, and device
US9019965B2 (en) Methods and devices for routing data packets between IPv4 and IPv6 networks
US20070030848A1 (en) Network communication system
US20070147421A1 (en) ISATAP router for tunneling packets and method thereof
Li et al. Mapping of address and port using translation (MAP-T)
US8892724B1 (en) Assigning a type of address based on expected port utilization
WO2010037893A1 (en) Communication of mapping information
US11057342B2 (en) Network address translation
WO2013139337A2 (en) SYSTEM AND METHOD FOR DATA COMMUNICATION BETWEEN A FIRST INTERNET PROTOCOL VERSION (IPv4) AND A SECOND INTERNET PROTOCOL VERSION (IPv6)
CN107547687B (en) Message transmission method and device
KR100562390B1 (en) Network Data Flow Identification Method and System Using Host Routing and IP Aliasing Technique
Garg et al. MAC and logical addressing (A Review Study)
Huang et al. Enhancing Teredo IPv6 tunneling to traverse the symmetric NAT
US20220182320A1 (en) Secure data connections in low data rate networks
Bagnulo et al. Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers RFC 6146
AU2021390925A1 (en) Secure data connections in low data rate networks
Mawatari et al. RFC 6877: 464XLAT: Combination of Stateful and Stateless Translation
Byrne Internet Engineering Task Force M. Mawatari Internet-Draft Japan Internet Exchange Co., Ltd. Intended status: BCP M. Kawashima Expires: March 22, 2013 NEC AccessTechnica, Ltd.
Li et al. RFC 7599: Mapping of Address and Port using Translation (MAP-T)
Byrne Internet Engineering Task Force M. Mawatari Internet-Draft Japan Internet Exchange Co., Ltd. Intended status: Informational M. Kawashima Expires: August 27, 2013 NEC AccessTechnica, Ltd.
Byrne Internet Engineering Task Force M. Mawatari Internet-Draft Japan Internet Exchange Co., Ltd. Intended status: BCP M. Kawashima Expires: July 26, 2013 NEC AccessTechnica, Ltd.

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: 08805469

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: 08805469

Country of ref document: EP

Kind code of ref document: A1