WO2010004363A1 - Procédés, appareils et produits de programme d'ordinateur pour faciliter une transition entre protocoles d'adresse réseau - Google Patents

Procédés, appareils et produits de programme d'ordinateur pour faciliter une transition entre protocoles d'adresse réseau Download PDF

Info

Publication number
WO2010004363A1
WO2010004363A1 PCT/IB2008/052730 IB2008052730W WO2010004363A1 WO 2010004363 A1 WO2010004363 A1 WO 2010004363A1 IB 2008052730 W IB2008052730 W IB 2008052730W WO 2010004363 A1 WO2010004363 A1 WO 2010004363A1
Authority
WO
WIPO (PCT)
Prior art keywords
network address
indication
message
shared public
public network
Prior art date
Application number
PCT/IB2008/052730
Other languages
English (en)
Inventor
Gabor Bajko
Teemu Savolainen
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/IB2008/052730 priority Critical patent/WO2010004363A1/fr
Publication of WO2010004363A1 publication Critical patent/WO2010004363A1/fr

Links

Classifications

    • 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/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]

Definitions

  • Embodiments of the present invention relate generally to mobile communication technology and, more particularly, relate to methods, apparatuses, and computer program products for facilitating transition between network address protocols.
  • a first computing device may be a node in a network and have an assigned address on that network in accordance with a first network address protocol.
  • An application executed on the first computing device may need to communicate with a host computing device having an assigned address in accordance with a second network address protocol but not an assigned address in accordance with the first network address protocol.
  • the first computing device may need a network assigned address in accordance with the second network address protocol.
  • the network may have a limited number of addresses in accordance with the second network address protocol to allocate and thus the network and/or the first computing device may need to implement some means of protocol translation or special address assignment.
  • IPv4 Internet Protocol version 4
  • IPv6 Internet Protocol version 6
  • transition mechanisms may present a problem to the first computing device as several transition mechanisms, such as 6to4 have been defined, but the first computing device may not know what, if any, transition mechanism is implemented by a network and/or the host node.
  • the lack of knowledge of transition mechanisms by the first computing device may particularly pose a problem in instances where the first computing device is a mobile device and traverses multiple networks through network mobility.
  • shortage of available address space for a network address protocol in a network may inhibit the allocation of an address in accordance with a network address protocol, such as IPv4 to a computing device. Accordingly, it may be advantageous to provide computing device users with methods, apparatuses, and computer program products for facilitating transition between network address protocols.
  • Methods, apparatuses, and computer program products are therefore provided, which may facilitate transition between network address protocols.
  • methods, apparatuses, and computer program products may be provided to enable, for example, the discovery of an available and/or preferred network address transition mechanism.
  • Embodiments of the invention may also enable the assignment of a shared public network address.
  • a method is provided which may include receiving a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism. The method may further include using the indicated network address transition mechanism based at least in part upon the received configuration information.
  • the received message may indicate that tunneling is supported and include configuration information for communicating with a tunnel endpoint.
  • the method may additionally include sending a request for a network address for use on a network to the tunnel endpoint based at least in part upon the received configuration information.
  • the method may further include receiving, from the tunnel endpoint, a message comprising an indication of a shared public network address and an indication of a restriction on use of the shared public network address.
  • the method may also include determining the shared public network address and the restriction on use thereof based at least in part upon the received indications.
  • a computer program product in another exemplary embodiment, includes at least one computer-readable storage medium having computer-readable program instructions stored therein.
  • the computer-readable program instructions may include first and second program instructions.
  • the first program instruction is for receiving a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • the second program instruction is for using the indicated network address transition mechanism based at least in part upon the received configuration information.
  • an apparatus may include a processor.
  • the processor may be configured to receive a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • the processor may be further configured to use the indicated network address transition mechanism based at least in part upon the received configuration information.
  • the received message may indicate that tunneling is supported and include configuration information for communicating with a tunnel endpoint.
  • the processor may be configured to use the indicated network address transition mechanism by sending a request for a network address for use on a network to the tunnel endpoint based at least in part upon the received configuration information.
  • the processor may additionally be configured to receive, from the tunnel endpoint, a message comprising an indication of a shared public network address and an indication of a restriction on use of the shared public network address.
  • the processor may further be configured to determine the shared public network address and the restriction on use thereof based at least in part upon the received indications.
  • an apparatus is provided.
  • the apparatus may include means for receiving a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • the apparatus may further include means for using the indicated network address transition mechanism based at least in part upon the received configuration information.
  • a method may include receiving a request for information about a supported network address transition mechanism.
  • the method may additionally include sending a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • sending a message may comprise sending a message indicating that tunneling is supported and comprising configuration information for communicating with a tunnel endpoint.
  • the method may further include receiving a request for a network address for use on a network.
  • the method may also include allocating a shared public network address with a restriction on use thereof.
  • the method may additionally include sending a message comprising an indication of the allocated shared public network address and an indication of the restriction on use of the shared public network address.
  • a computer program product includes at least one computer-readable storage medium having computer-readable program instructions stored therein.
  • the computer-readable program instructions may include first and second program instructions.
  • the first program instruction is for receiving a request for information about a supported network address transition mechanism.
  • the second program instruction is for sending a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • an apparatus may include a processor configured to receive a request for information about a supported network address transition mechanism.
  • the processor may further be configured to send a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • the apparatus may comprise means for receiving a request for information about a supported network address transition mechanism.
  • the apparatus may further comprise means for sending a message comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • a mobile internet protocol home agent apparatus may include a processor configured to receive a request for a network address for use on a network.
  • the processor may be further configured to allocate a shared public network address with a restriction on use thereof.
  • the processor may additionally be configured to send a message comprising an indication of the allocated shared public network address and an indication of the restriction on use of the shared public network address.
  • a mobile internet protocol home agent apparatus may include means for receiving a request for a network address for use on a network.
  • the apparatus may additionally include means for allocating a shared public network address with a restriction on use thereof.
  • the apparatus may further include means for sending a message comprising an indication of the allocated shared public network address and an indication of the restriction on use of the shared public network address.
  • an apparatus is provided, which may comprise a processor configured to receive a request for a network address for use on a network from a client device. The request may be based at least in part upon a message sent to the client device from a network management entity comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism.
  • the processor may be further configured to allocate a shared public network address with a restriction on use thereof to the client device.
  • the processor may also be configured to send a message to the client device, the message comprising an indication of the allocated shared public network address and an indication of the restriction on use of the shared public network address.
  • FIG. 1 is a schematic block diagram of a mobile terminal according to an exemplary embodiment of the present invention
  • FIG. 2 illustrates a block diagram of an example system for facilitating transition between network address protocols according to an exemplary embodiment of the present invention
  • FIG. 3 is a flowchart according to an exemplary method for facilitating transition between network address protocols from the perspective of a client device according to an exemplary embodiment of the present invention.
  • FIG. 4 is a flowchart according to an exemplary method for facilitating transition between network address protocols from the perspective of a network management entity according to an exemplary embodiment of the present invention.
  • FIG. 1 illustrates a block diagram of a mobile terminal 10 that may benefit from embodiments of the present invention.
  • the mobile terminal illustrated and hereinafter described is merely illustrative of one type of electronic device that may benefit from embodiments of the present invention and, therefore, should not be taken to limit the scope of the present invention. While several embodiments of the electronic device are illustrated and will be hereinafter described for purposes of example, other types of electronic devices, such as mobile telephones, mobile computers, portable digital assistants (PDAs), pagers, laptop computers, desktop computers, gaming devices, televisions, and other types of electronic systems, may employ embodiments of the present invention.
  • PDAs portable digital assistants
  • the mobile terminal 10 may include an antenna 12 (or multiple antennas 12) in communication with a transmitter 14 and a receiver 16.
  • the mobile terminal may also include a controller 20 or other processor that provides signals to and receives signals from the transmitter and receiver, respectively.
  • These signals may include signaling information in accordance with an air interface standard of an applicable cellular system, and/or any number of different wireless networking techniques, comprising but not limited to Wireless-Fidelity (Wi-Fi), wireless local access network (WLAN) techniques such as Institute of Electrical and Electronics Engineers (IEEE) 802.11, and/or the like.
  • these signals may include speech data, user generated data, user requested data, and/or the like.
  • the mobile terminal may be capable of operating with one or more air interface standards, communication protocols, modulation types, access types, and/or the like. More particularly, the mobile terminal may be capable of operating in accordance with various first generation (IG), second generation (2G), 2.5G, third-generation (3G) communication protocols, fourth-generation (4G) communication protocols, and/or the like. For example, the mobile terminal may be capable of operating in accordance with 2G wireless communication protocols IS-136 (Time Division Multiple Access (TDMA)), Global System for Mobile communications (GSM), IS-95 (Code Division Multiple Access (CDMA)), and/or the like.
  • IG first generation
  • 2G second generation
  • 2.5G third-generation (3G) communication protocols
  • fourth-generation (4G) communication protocols fourth-generation (4G) communication protocols
  • 2G wireless communication protocols IS-136 (Time Division Multiple Access (TDMA)
  • GSM Global System for Mobile communications
  • CDMA Code Division Multiple Access
  • the mobile terminal may be capable of operating in accordance with 2.5G wireless communication protocols General Packet Radio Service (GPRS), Enhanced Data GSM Environment (EDGE), and/or the like. Further, for example, the mobile terminal may be capable of operating in accordance with 3 G wireless communication protocols such as Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 2000 (CDMA2000), Wideband Code Division Multiple Access
  • GPRS General Packet Radio Service
  • EDGE Enhanced Data GSM Environment
  • 3 G wireless communication protocols such as Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 2000 (CDMA2000), Wideband Code Division Multiple Access
  • the mobile terminal may be additionally capable of operating in accordance with 3.9G wireless communication protocols such as Long Term Evolution (LTE) or Evolved Universal Terrestrial Radio Access Network (E- UTRAN) and/or the like. Additionally, for example, the mobile terminal may be capable of operating in accordance with fourth-generation (4G) wireless communication protocols and/or the like as well as other wireless communication protocols that may be developed in the future.
  • 4G wireless communication protocols such as Long Term Evolution (LTE) or Evolved Universal Terrestrial Radio Access Network (E- UTRAN) and/or the like.
  • 4G fourth-generation
  • NAMPS Narrow-band Advanced Mobile Phone System
  • TACS Total Access Communication System
  • mobile terminals may also benefit from embodiments of this invention, as should dual or higher mode phones (e.g., digital/analog or TDMA/CDMA/analog phones). Additionally, the mobile terminal 10 may be capable of operating according to Wireless Fidelity (Wi-Fi) protocols.
  • Wi-Fi Wireless Fidelity
  • the controller 20 may comprise circuitry for implementing audio/video and logic functions of the mobile terminal 10.
  • the controller 20 may comprise a digital signal processor device, a microprocessor device, an analog-to-digital converter, a digital-to-analog converter, and/or the like. Control and signal processing functions of the mobile terminal may be allocated between these devices according to their respective capabilities.
  • the controller may additionally comprise an internal voice coder (VC) 20a, an internal data modem (DM) 20b, and/or the like.
  • the controller may comprise functionality to operate one or more software programs, which may be stored in memory.
  • the controller 20 may be capable of operating a connectivity program, such as a web browser.
  • the connectivity program may allow the mobile terminal 10 to transmit and receive web content, such as location-based content, according to a protocol, such as Wireless
  • the mobile terminal 10 may be capable of using a Transmission Control Protocol/Internet Protocol (TCP/IP) to transmit and receive web content across the internet or other networks.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • the mobile terminal 10 may also comprise a user interface including, for example, an earphone or speaker 24, a ringer 22, a microphone 26, a display 28, a user input interface, and/or the like, which may be operationally coupled to the controller 20.
  • operationally coupled may include any number or combination of intervening elements (including no intervening elements) such that operationally coupled connections may be direct or indirect and in some instances may merely encompass a functional relationship between components.
  • the mobile terminal may comprise a battery for powering various circuits related to the mobile terminal, for example, a circuit to provide mechanical vibration as a detectable output.
  • the user input interface may comprise devices allowing the mobile terminal to receive data, such as a keypad 30, a touch display (not shown), a joystick (not shown), and/or other input device.
  • the keypad may comprise numeric (0-9) and related keys (#, *), and/or other keys for operating the mobile terminal.
  • the mobile terminal 10 may also include one or more means for sharing and/or obtaining data.
  • the mobile terminal may comprise a short-range radio frequency (RF) transceiver and/or interrogator 64 so data may be shared with and/or obtained from electronic devices in accordance with RF techniques.
  • the mobile terminal may comprise other short-range transceivers, such as, for example, an infrared (IR) transceiver 66, a BluetoothTM (BT) transceiver 68 operating using BluetoothTM brand wireless technology developed by the BluetoothTM Special Interest Group, and/or the like.
  • IR infrared
  • BT BluetoothTM
  • the Bluetooth transceiver 68 may be capable of operating according to WibreeTM radio standards.
  • the mobile terminal 10 and, in particular, the short-range transceiver may be capable of transmitting data to and/or receiving data from electronic devices within a proximity of the mobile terminal, such as within 10 meters, for example.
  • the mobile terminal may be capable of transmitting and/or receiving data from electronic devices according to various wireless networking techniques, including Wireless Fidelity (Wi-Fi), WLAN techniques such as IEEE 802.11 techniques, and/or the like.
  • Wi-Fi Wireless Fidelity
  • WLAN techniques such as IEEE 802.11 techniques
  • the mobile terminal 10 may comprise memory, such as a subscriber identity module (SIM) 38, a removable user identity module (R-UIM), and/or the like, which may store information elements related to a mobile subscriber. In addition to the SIM, the mobile terminal may comprise other removable and/or fixed memory.
  • the mobile terminal 10 may include volatile memory 40 and/or non- volatile memory 42.
  • volatile memory 40 may include Random Access Memory (RAM) including dynamic and/or static RAM, on-chip or off-chip cache memory, and/or the like.
  • RAM Random Access Memory
  • Non-volatile memory 42 which may be embedded and/or removable, may include, for example, read-only memory, flash memory, magnetic storage devices (e.g., hard disks, floppy disk drives, magnetic tape, etc.), optical disc drives and/or media, non-volatile random access memory (NVRAM), and/or the like. Like volatile memory 40 non-volatile memory 42 may include a cache area for temporary storage of data.
  • the memories may store one or more software programs, instructions, pieces of information, data, and/or the like which may be used by the mobile terminal for performing functions of the mobile terminal.
  • the memories may comprise an identifier, such as an international mobile equipment identification (IMEI) code, capable of uniquely identifying the mobile terminal 10.
  • IMEI international mobile equipment identification
  • FIG. 2 illustrates a block diagram of a system 200 for facilitating transition between network address protocols according to an exemplary embodiment of the present invention.
  • exemplary merely means an example and as such represents one example embodiment for the invention and should not be construed to narrow the scope or spirit of the invention in any way. It will be appreciated that the scope of the invention encompasses many potential embodiments in addition to those illustrated and described herein.
  • transition between network address protocols and “network address transition mechanism” refer to any mechanism, protocol, method, device (e.g. a network management entity), and/or architecture for facilitating communications between a first computing device assigned an address in accordance with a first network address protocol and a host computing device assigned an address in accordance with a second network address protocol.
  • a “shared public network address” as used herein refers to a public network address that is allocated to multiple computing devices, such as client devices 202, and thus is “shared” between the computing devices to which it is allocated.
  • a shared public network address allocated to a first computing device may accordingly have an associated set of use restrictions and/or permissions such that the first computing device is restricted to communicate with other devices in accordance with the associated restrictions and/or permissions of the shared public network address.
  • the associated permissions and/or restrictions may comprise, for example, a pool of ports, which the first computing device is allowed to use when communicating with other computing devices using the allocated shared public network address.
  • each computing device sharing the shared public network address may be allocated a unique pool of ports such that communications of one computing device allocated the shared public network address do not interfere with communications of another computing device allocated the same shared public network address.
  • This allocated pool of ports may comprise allocating the pool of ports for all transport protocols and/or transport addresses.
  • the computing device may use ports 100-200 for each transport protocol and/or transport address (e.g., User Datagram Protocol (UDP) ports 100 to 200, Transmission Control Protocol (TCP) ports 100-200, Stream Control Transmission Protocol (SCTP) ports 100-200, Datagram Congestion Control Protocol (DCCP) ports 100-200, etc).
  • a shared public network address may be, for example, a shared public IPv4 address having an allocated plurality of ports.
  • a "message” (e.g. a message sent or received by a computing device) as used herein is not limited with regard to a particular protocol used to send or receive a message. Indeed, a message may be formatted in accordance any protocol, including, for example, internet protocol, dynamic host configuration protocol (DHCP), short message service (SMS) protocol, multimedia messaging service (MMS) protocol, various instant messaging (IM) protocols, and/or the like. Accordingly, where messages discussed herein are described as being formatted according to a certain protocol, the protocol is just for purposes of example and should not be taken to limit the scope of the invention.
  • computing devices, units, modules, etc. described herein in conjunction with various embodiments of the invention may be configured to format sent messages in accordance with any appropriate protocol and/or parse or otherwise extract information from a received message formatted in accordance with protocols in addition to those described herein.
  • the system 200 will be described, for purposes of example, in connection with the mobile terminal 10 of FIG. 1. However, it should be noted that the system of FIG. 2, may also be employed in connection with a variety of other devices, both mobile and fixed, and therefore, embodiments of the present invention should not be limited to application on devices such as the mobile terminal 10 of FIG. 1. It should also be noted, that while FIG. 2 illustrates one example of a configuration of a system for facilitating transition between network address protocols, numerous other configurations may also be used to implement embodiments of the present invention. Referring now to FIG. 2, the system 200 may include a client device 202, network management entity 204, and a host device 206 configured to communicate with each other over a network 208.
  • the client device 202 may be any computing device, mobile or fixed, that is configured to connect to a network, such as the network 208 and communicate with remote network-connected devices, such as the host device 206, and in an exemplary embodiment, may be a mobile terminal 10.
  • the client device 202 may be allocated a network address in accordance with a first network address protocol.
  • the network management entity 204 may be embodied as any computing device, mobile or fixed, and may be embodied as a server, desktop computer, laptop computer, mobile terminal 10, and/or the like configured to provide network side services, such as address allocation and/or facilitation of transition between network address protocols.
  • the network management entity 204 may also be embodied as a combination of a plurality of computing devices configured to provide network side services, such as address allocation and/or facilitation of transition between network address protocols.
  • the network management entity 204 may be embodied, for example, as a server cluster and/or may be embodied as a distributed computing system, such as may be distributed across a plurality of computing devices, such as, for example, mobile terminals 10.
  • the network management entity may be embodied as one or more dynamic host configuration protocol (DHCP) entities.
  • DHCP dynamic host configuration protocol
  • a "DHCP" entity includes both DHCP servers and DHCP relay devices.
  • the network management entity may be embodied as a mobile internet protocol (mobile IP) home agent.
  • mobile IP mobile internet protocol
  • the host device 206 may be any computing device connected to a network, such as the network 208, such that other computing devices, such as a client device 202, may communicate with the host device 206.
  • the host device 206 may be allocated a network address in accordance with a second network address protocol.
  • the network 208 may be any network over which the client device 202, network management entity 204, and/or the host device 206 are configured to communicate. Accordingly, the network 208 may be a wireless or wireline network.
  • the network 208 may further utilize any communications protocol or combination of communications protocols that may facilitate inter-device communication between the client device 202, network management entity 204, and/or the host device 206. Although illustrated in FIG.
  • the network 208 may comprise a plurality of interconnected networks and thus, for example a communication sent from the client device 202 to the host device 206 over the network 208 may actually traverse a plurality of networks in route to the host device 206.
  • the system 200 illustrates a single client device 202, a single network management entity 204, and a single host device 206 for purposes of example, the system 200 may include a plurality of client devices 202, network management entities 204, and/or host devices 206.
  • the client device 202 may include various means, such as a processor 210, memory 212, communication interface 214, user interface 216, and network address transition unit 218 for performing the various functions herein described.
  • the processor 210 may be embodied as a number of different means, including, for example, the processor 210 may be embodied as a microprocessor, a coprocessor, a controller, or various other processing elements including integrated circuits such as, for example, an ASIC (application specific integrated circuit) or FPGA (field programmable gate array).
  • the processor 210 may, for example, be embodied as the controller 20 of a mobile terminal 10.
  • the processor 210 may be configured to execute instructions stored in the memory 212 or otherwise accessible to the processor 210.
  • the processor 210 may comprise a plurality of processors operating in parallel, such as a multi-processor system.
  • the memory 212 may include, for example, volatile and/or non- volatile memory.
  • the memory 212 may be embodied as, for example, volatile memory 40 and/or non- volatile memory 42 of a mobile terminal 10.
  • the memory 212 may be configured to store information, data, applications, instructions, and/or the like for enabling the client device 202 to carry out various functions in accordance with exemplary embodiments of the present invention.
  • the memory 212 may be configured to buffer input data for processing by the processor 210. Additionally or alternatively, the memory 212 may be configured to store instructions for execution by the processor 210.
  • the memory 212 may comprise one or more databases that store information in the form of static and/or dynamic information.
  • the memory 212 may store, for example, a network protocol address(es), such as an IPv4 or IPv6 address, allocated to the client device 202, such as by a network management entity 204.
  • the memory 212 may store a plurality of ports in association with a stored network protocol address that define ports which may be used by the client device 202 when communicating with a host device 206 using the associated network protocol address.
  • the memory 212 may further store information about a network transition mechanism implemented and/or preferred by the network 208. This stored information may be stored and/or used by the network address transition unit 218 during the course of performing its functionalities.
  • the communication interface 214 may be embodied as any device or means embodied in hardware, software, firmware, or a combination thereof that is configured to receive and/or transmit data from/to a network and/or any other device or module in communication with the client device 202.
  • the communication interface 214 may be at least partially embodied as or otherwise controlled by the processor 210.
  • the communication interface 214 may include, for example, an antenna, a transmitter, a receiver, a transceiver and/or supporting hardware or software for enabling communications with other entities of the system 200, such as a network management entity 204 and/or a host device 206 via the network 208.
  • the communication interface 214 may be in communication with the memory 212, user interface 216, and/or network address transition unit 218.
  • the communication interface 214 may be configured to communicate using any protocol by which the client device 202, network management entity 204, and/or host device 206 may communicate over the network 208.
  • the user interface 216 may be in communication with the processor 210 to receive an indication of a user input and/or to provide an audible, visual, mechanical, or other output to the user.
  • the user interface 216 may include, for example, a keyboard, a mouse, a joystick, a display, including, for example, a touch screen display, a microphone, a speaker, and/or other input/output mechanisms.
  • the client device 202 is embodied as a server
  • the user interface 216 may be limited, or even eliminated.
  • the network address transition unit 218 may be embodied as various means, such as hardware, software, firmware, or some combination thereof and, in one embodiment, may be embodied as or otherwise controlled by the processor 210.
  • the network address transition unit 218 may be in communication with the processor 210.
  • the network address transition unit 218 may be embodied as a component of an operating system executed by the client device 202.
  • the network address transition unit 218 may be configured to facilitate transition between network address protocols, such as to enable communication between the client device 202 and the host device 206 in instances where the client device 202 has only a network address in accordance with a first network address protocol and the host device 206 has only a network address in accordance with a second network address protocol.
  • the network address transition unit 218 may be configured to send a message directly to or indirectly to, such as via a network management relay entity (not shown), a network management entity 204 requesting or at least prompting a reply indicating what, if any, network address transition mechanisms are implemented by the network 208.
  • This message is also referred to as a "network address transition mechanism information request message.”
  • the network address transition unit 218 may be configured to receive a message in response directly from or indirectly from, such as via a network management relay entity (not shown), a network management entity 204 indicating one or more network address transition mechanisms implemented by the network 208.
  • This message is also referred to as a "network address transition mechanism information response message.”
  • the indication may indicate one or more network address transition mechanisms available on the network 208.
  • the indicated network address transition mechanism(s) may comprise, for example, teredo, Isatap, 6to4, tunneling, source network address translation (sNAT), a designated network address translation (NAT) entity from which a private network address may be acquired, and/or a DHCP server from which a private, public, and/or shared public network address may be acquired.
  • sNAT source network address translation
  • NAT designated network address translation
  • the received message may further indicate a preferred network address transition mechanism and/or a preferred priority order for using the indicated network address transition mechanisms.
  • the received message may additionally include configuration information for using the one or more indicated network address transition mechanisms.
  • the configuration information may comprise address(es) and/or domain name(s) of network entities that may be needed to use the transition mechanism(s), prefixes of related network entities, lifetime of the configuration information, restrictions on use of the configuration information, quality of service restrictions, information about firewall functionality, any credentials (may be permanent or short-lived temporary credentials) that may be necessary to use the indicated transition mechanism(s), and/or destinations (e.g. devices and/or networks) reachable using the indicated transition mechanism(s).
  • the network management entity 204 is a dynamic host configuration protocol (DHCP) server
  • these messages may be appropriately formatted DHCP messages.
  • the network address transition mechanism information request message may be a DHCP inform request message requesting information about a supported network address transition mechanism.
  • the network address transition mechanism information response message may include one or more options specifying a network address transition mechanism and/or configuration information to facilitate use of the network address transition mechanism.
  • the network address transition unit 218 may further be configured to use an indicated or other network address transition mechanism so as to facilitate communication between the client device 202 and host device 206.
  • the network address transition mechanism information response message may additionally indicate what type of network address (i.e. private, public, shared public) may be requested from an indicated network entity, such as a NAT or DHCP server. Accordingly, the network address transition unit 218 may be configured to utilize information received in the above described network address transition mechanism information response message to determine and use an available network transition mechanism. It will be appreciated, however, that the discovery of supported network address transition mechanism(s) through sending a network address transition mechanism information request message and receipt of a response message is not a prerequisite to using a network address transition mechanism.
  • the network address transition unit 218 may be configured to use a network address transition mechanism based at least in part upon information determined in another manner, such as, for example, pre-stored network address transition mechanism and configuration information stored in memory 212, broadcasting or advertising of supported network address transition mechanism(s) by a network entity, such as a network management entity 204, and/or indications received from a user of the client device 202 via the user interface 216.
  • the network address transition unit 218 may further be configured to send a request for a network address, also referred to as a "network address allocation request message," to a network management entity 204.
  • the address of a network management entity 204 may have been indicated in a response message as described above.
  • the network address allocation request message may comprise, for example, a DHCP discover message.
  • the network address transition unit 218 may be configured to send a DHCP version 4 (DHCPv4) discover message in instances wherein the client device 202 needs an IPv4 address.
  • the network address transition unit 218 may additionally or alternatively be configured to send a DHCP version 6 (DHCPv ⁇ ) discover message in instances wherein the client device 202 needs an IPv6 address.
  • the network management entity 204 is embodied as a mobile IP home agent
  • the network address allocation request message may be a binding update message.
  • the network address allocation request message may comprise an indication of whether the client device 202 supports use of shared public network addresses. Accordingly, this indication may be indicated in a DHCP discover message option parameter or in a field of a binding update message. Additionally or alternatively, the network address transition unit 218 may be configured to send an indication to the network management entity 204 indicating whether shared public network addresses are supported by the client device 202 in response to a query request, such as, for example, a polling request, received from the network management entity 204.
  • the network address transition unit 218 may further be configured to receive a response to the network address allocation request message, also referred to as a "network address allocation response message," from the network management entity 204.
  • the network address allocation response message may comprise an indication of an allocated network address.
  • the allocated network address may be a public address, a private address, or a shared public address.
  • the network address allocation response message may further comprise an indication of permissions and/or restrictions for use of the allocated shared public address, such as an indication of a plurality of ports that may be used by the client device 202 when communicating with a host device 206 using the allocated shared public address.
  • the network address transition unit may be configured to determine an allocated network address, such as a shared public network address from indications in the received network address allocation response message.
  • the network management entity 204 is embodied as a DHCP server
  • the network address transition unit 218 may be configured to receive a DHCP offer message comprising an indication of the allocated network address and any use restrictions or permissions if the allocated network address is a shared public network address.
  • a network address allocation response message such as a DHCP offer message, may comprise an indication of an invalid network address in the option field conventionally used for indicating an allocated network address.
  • the network address transition unit 218 may be configured to determine that the invalid network address is an implicit indication that there is not a unique, unshared network address available and accordingly that the network address allocation response message includes an indication of an allocated shared public network address.
  • An indication of the allocated shared public network address may, for example, be included in another option field of a received DHCP offer message and accordingly the network address transition unit may be configured to determine the allocated network address based at least in part upon this indication upon first determining that the client device 202 was offered an invalid address.
  • the network address allocation response message may further comprise a lease time indicating the duration of a period of time for which the indicated network address is allocated to the client device 202.
  • the network address transition unit 218 may be configured to receive a network address allocation response message and to determine based upon a response code identifying the received message type that the network address allocation response message contains an indication of a shared public network address.
  • messages received by a client device 202 may have a response code, such as may be indicated in a header field of the message that may indicate a type of message.
  • a unique response code may accordingly be assigned to network address allocation response messages that contain an indication of an allocated shared public network address.
  • a client device 202 that is not configured to support shared public network address may then simply disregard the received network address allocation response message as it may not understand the response code.
  • the network address transition unit 218 may implement mobile internet protocol and comprise a dual stack host such that it comprises two network address protocol stacks. Accordingly, for example, the network address transition unit 218 may comprise an IPv4 network address protocol stack and an IPv6 network address protocol stack.
  • the network management entity 204 may be embodied as, for example, a mobile IP home agent.
  • the network address transition unit 218 may be configured in such embodiments to send a network address allocation request message, which may comprise a binding update message, requesting an IPv4 address from the network management entity 204 using dual-stack mobile IPv6 (DSMIPv ⁇ ).
  • DSMIPv ⁇ dual-stack mobile IPv6
  • the network address transition unit 218 may further be configured to receive a network address allocation response message directly from the network management entity 204 or indirectly, such as via a network management relay entity (not shown).
  • the network address allocation response message may comprise a binding acknowledgement message.
  • the binding acknowledgement message may comprise a home address field.
  • the home address field may contain an indication of an allocated public or private network address. Alternatively, the home address field may contain an invalid network address, such as, for example, 0.0.0.0.
  • the network address transition unit 218 may be configured to determine the allocated IPv4 home address based at least in part upon the contents of the home address field.
  • the network address transition unit 218 may be configured to determine that the invalid address is an implicit indication that a unique network address is unavailable and accordingly examine an extension field of the binding acknowledgement message, which may comprise an indication of an allocated shared public IPv4 address.
  • the indication of a shared public IPv4 address may comprise an allocated public IPv4 address and an indication of a plurality of allocated ports, such as a range of ports, which the client device 202 is permitted to use when communicating with a network entity, such as a host device 206, using the allocated IPv4 home address.
  • the network address transition unit 218 may be configured to discover a mobile IP home agent through any of a variety of methods.
  • the mobile IP home agent may be discovered through receiving a message from a network management entity 204, which may, for example, be embodied as a DHCP entity, indicating support for a mobile IP home agent.
  • the network address transition unit may be configured to discover the mobile IP home agent through manual configuration, such as receipt of an indication from a user of the client device 202 or may discover the mobile IP home agent through pre-stored information on memory 212.
  • the network address transition unit 218 may also be configured to discover a mobile IP home agent through dynamic home agent address discovery by sending a home agent address discovery request to the client device's home link and receiving an indication identifying the mobile IP home agent in response.
  • the network management entity 204 may be any computing device or plurality of computing devices configured to provide network side services, such as address allocation and/or network-side facilitation of transition between network address protocols.
  • the network management entity 204 may be embodied as a server or a server cluster.
  • the network management entity 204 may be, for example, a DHCP server or a mobile IP home agent.
  • the network management entity 204 may include various means, such as a processor 220, memory 222, communication interface 224, transition mechanism indication unit 226, and network address allocation unit 228 for performing the various functions herein described.
  • a first network management entity may comprise a processor, such as a processor 220, a memory, such as memory 222, and a transition mechanism indication unit 226.
  • a second network management entity may comprise a processor, such as a processor 220, a memory, such as memory 222, and a network address allocation unit 228.
  • the processor 220 may be embodied as a number of different means, including, for example, the processor 220 may be embodied as a microprocessor, a coprocessor, a controller, or various other processing elements including integrated circuits such as, for example, an ASIC (application specific integrated circuit) or FPGA (field programmable gate array).
  • the processor 220 may be configured to execute instructions stored in the memory 222 or otherwise accessible to the processor 220.
  • the processor 220 may comprise a plurality of processors operating in parallel, such as a multi-processor system.
  • processors 220 may be embodied as multiple processors, the processors may be embodied in a single computing device or distributed among multiple computing devices, such as a server cluster or amongst a plurality of computing devices in operative communication with each other over a network.
  • the memory 222 may include, for example, volatile and/or non-volatile memory.
  • the memory 222 may be configured to store information, data, applications, instructions, or the like for enabling the network management entity 204 to carry out various functions in accordance with exemplary embodiments of the present invention.
  • the memory 222 may be configured to buffer input data for processing by the processor 220.
  • the memory 222 may be configured to store instructions for execution by the processor 220.
  • the memory 222 may comprise one or more databases that store information in the form of static and/or dynamic information.
  • the memory 222 may store, for example, a record of allocated network addresses and for shared public network addresses may store a record of allocated ports for each shared public network address in association with the respective shared public network address.
  • the memory 222 may further store each allocated network address and/or allocated pools of ports for shared public network addresses in association with an indication of the identification of the computing device, such as a client device 202, to which the network address and/or pool of ports is allocated.
  • This indication may comprise, for example, an indication of the computing device's media access control (MAC) address.
  • MAC media access control
  • the communication interface 224 may be embodied as any device or means embodied in hardware, software, firmware, or a combination thereof that is configured to receive and/or transmit data from/to a network and/or any other device or module in communication with the network management entity 204.
  • the communication interface 224 may be at least partially embodied as or otherwise controlled by the processor 220.
  • the communication interface 224 may include, for example, an antenna, a transmitter, a receiver, a transceiver and/or supporting hardware or software for enabling communications with other entities of the system 200, such as a client device 202 via the network 208.
  • the communication interface 224 may be in communication with the memory 222, transition mechanism indication unit 226, and/or network address allocation unit 228.
  • the communication interface 224 may be configured to communicate using any protocol by which the client device 202, network management entity 204, and/or host device 206 may communicate over the network 208.
  • the transition mechanism indication unit 226 may be embodied as various means, such as hardware, software, firmware, or some combination thereof and, in one embodiment, may be embodied as or otherwise controlled by the processor 220. hi embodiments where the transition mechanism indication unit 226 is embodied separately from the processor 220, the transition mechanism indication unit 226 may be in communication with the processor 220.
  • the transition mechanism indication unit 226 may be configured to facilitate transition between network address protocols, such as to enable communication between the client device 202 and the host device 206 in instances where the client device 202 has only a network address in accordance with a first network address protocol and the host device 206 has only a network address in accordance with a second network address protocol.
  • the transition mechanism indication unit 226 may be configured to receive a network address transition mechanism information request message directly from or indirectly from, such as via a network management relay entity (not shown), a client device 202 requesting information about network address transition mechanisms available on the network 208. Accordingly, the transition mechanism indication unit 226 may be configured to send a network address transition mechanism information response message in response to the client device 202 that indicates one or more network address transition mechanisms available on the network 208. Additionally or alternatively, the transition mechanism indication unit 226 may be configured to send a network address transition mechanism information response message to the client device 202 without first being prompted by receiving a request message from the client device 202.
  • the transition mechanism indication unit 226 may be configured to, for example, periodically broadcast or advertise one or more supported network address transition mechanisms.
  • the indicated network address transition mechanism(s) may be, for example, teredo, Isatap, 6to4, tunneling, source network address translation (sNAT), a designated network address translation (NAT) entity from which a private network address may be acquired, and/or a DHCP server from which a private, public, and/or shared public network address may be acquired.
  • the network address transition mechanism information response message may additionally indicate what type of network address (e.g., private, public, shared public) may be requested from an indicated network entity, such as a NAT or DHCP server.
  • the received message may further indicate a preferred network address transition mechanism and/or a preferred priority order for using the indicated network address transition mechanisms.
  • the message may additionally include configuration information for using the one or more indicated network address transition mechanisms.
  • the configuration information may comprise address(es) and/or domain name(s) of network entities that may be needed to use the transition mechanism(s), prefixes of related network entities, lifetime of the configuration information, restrictions on use of the configuration information, quality of service restrictions, information about firewall functionality, any credentials (may be permanent or short-lived temporary credentials) that may be necessary to use the transition mechanism(s), and/or destinations (e.g. devices and/or networks) reachable using the indicated transition mechanism(s).
  • the network management entity 204 is a DHCP server
  • these messages may be appropriately formatted DHCP messages
  • the network address allocation unit 228 may be embodied as various means, such as hardware, software, firmware, or some combination thereof and, in one embodiment, may be embodied as or otherwise controlled by the processor 220. In embodiments where the network address allocation unit 228 is embodied separately from the processor 220, the network address allocation unit 228 may be in communication with the processor 220.
  • the network address allocation unit 228 may be configured to receive network address allocation request messages from a client device 202 and respond to the received message by allocating a network address and sending a network address allocation response message to the client device 202. Accordingly, the network address allocation unit 228 may be configured to receive a request for a network address directly from or indirectly from, such as via a network management relay entity (not shown), a client device 202.
  • the address of the network management entity 204 may have been indicated in a network address transition mechanism information response message as described above.
  • the functionality of the network management entity 204 may be divided amongst multiple computing devices and accordingly, the computing device indicating an available transition mechanism and/or the address of a network entity may not be the same computing device comprising a network address allocation unit 228 configured to receive and respond to network address allocation request messages.
  • the network address allocation request message may comprise an indication of whether the client device 202 supports the use of shared public network addresses.
  • the network address allocation request message may be, for example, a DHCP discover message.
  • the network address allocation unit 228 may be configured to receive a DHCP version 4 (DHCPv4) discover message in instances wherein the network management entity 204 is configured to allocate IPv4 addresses and the client device 202 needs an IPv4 address.
  • the network address allocation unit 228 may additionally or alternatively be configured to receive a DHCP version 6 (DHCPv ⁇ ) discover message in instances wherein the network management entity 204 is configured to allocate IPv6 addresses and the client device 202 needs an IPv6 address.
  • DHCPv4 DHCP version 4
  • DHCPv ⁇ DHCP version 6
  • the network address allocation unit 228 may be configured to send a query request, such as, for example, a polling request, to a client device 202 asking whether the client device 202 supports use of shared public network addresses.
  • the network address allocation unit 228 may be configured to receive an indication of whether the client device 202 supports the use of shared public network addresses in response to the query.
  • the network address allocation unit 228 may further be configured to allocate a network address and send a network allocation response message in response to receipt of a network address request message from a client device 202.
  • the network address allocation unit 228 may be configured to allocate a private, public, and/or shared public network address to a requesting client device 202.
  • the network address allocation unit 228 may be configured to allocate a requested network address type, such as may have been indicated in the network address allocation request message received from a client device 202.
  • the network address allocation unit 228 may be configured to allocate a shared public network address in response to receipt of a network address allocation request message from a client device 202 indicating that the client device 202 supports use of shared public network addresses and/or receipt of a response to a query request indicating that the client device 202 supports use of shared public network addresses. Additionally or alternatively, the network address allocation unit 228 may be configured to determine whether to allocate a public network address or a shared public network address based at least in part upon how many public network addresses are unallocated. In this regard, for example, the network address allocation unit 228 may be configured to allocate a shared public network address if the pool of available public network addresses in the address space managed or otherwise allocable by the network management entity 204 is below a predefined threshold value.
  • This threshold value may be defined as an absolute number of unallocated public network addresses or alternatively may be defined as a percentage of public network addresses that are unallocated. If the number or percentage of unallocated public network addresses is above the predefined threshold value, then the network address allocation unit 228 may be configured to allocate an unshared public network address to a requesting client device 202. Additionally or alternatively, the network address allocation unit 228 may be configured to determine what type of network address to allocate a client device 202 based at least in part on a subscriber directory, which may be stored in the memory 222. In this regard, users of some client devices 202 may pay a premium fee to a network provider to reserve a network address that is not shared with other client devices 202.
  • the identities of client devices 202 owned or used by premium subscribers may be registered in a subscriber directory such that the network address allocation unit 228 may look up the identity of a client device 202 in the subscriber directory and determine whether to allocate an unshared network address to the client device 202.
  • some client devices 202 may be registered as having special needs or otherwise requiring an unshared public network address with a network provider. Such client devices 202 requiring special needs may, for example, implement data server applications or serve as online gaming hosts and thus may require an unshared network address.
  • the network address allocation unit 228 may be configured to look up a client device 202 identity in a subscriber directory and determine whether the client device 202 is registered as requiring an unshared network address and allocate a public network address accordingly.
  • the network address allocation unit 228 may be configured to save an indication of an identity of the requesting client device 202 in memory 222 in association with an indication of an allocated network address such that the network address allocation unit 228 does not allocate the same network address or the same pool of ports for a shared public network address to multiple client devices 202.
  • the network address allocation unit 228 may further allocate a lease time for the allocated network address to the client device 202. This lease time may be stored in the memory 222 or may be otherwise maintained by the network address allocation unit 228 such that when a client device's 202 lease on a network address expires, the network address allocation unit 228 may update any network address registrations maintained in memory 222 to reflect that the particular network address is no longer allocated.
  • the network address allocation unit 228 may further be configured to format and send a network address allocation response message to a requesting client device 202.
  • the network address allocation response message may comprise an indication of an allocated network address.
  • the allocated network address may be a public address, a private address, or a shared public address as determined and allocated by the network address allocation unit 228.
  • the network address allocation response message may further comprise an indication of permissions and/or restrictions for use of the allocated shared public address, such as an indication of a plurality of ports that may be used by the client device 202 when communicating with a host device 206 using the allocated shared public address.
  • the network address allocation response message may further include an indication of a lease time for which the client device 202 is allocated the indicated network address.
  • the network management entity 204 is a DHCP server
  • the network address allocation unit 228 may be configured to send a DHCP offer message comprising an indication of the allocated network address and any use restrictions or permissions if the allocated network address is a shared public network address.
  • the network address allocation response message may comprise an indication of an invalid network address in the field conventionally used for indicating an allocated network address. Instead, an indication of the allocated shared public network address may be included in another field of the network address allocation response message. In this regard, the invalid network address may implicitly indicate that a unique, unshared network address is unavailable for allocation (e.g. due to exhaustion or for policy criteria as enforced by the network address allocation unit 228).
  • a client device 202 configured to use shared public network addresses may determine based at least in part on the presence of the invalid address that a shared public network address indication is also included in the network address allocation response message. A client device 202 that is not configured to use shared public network addresses may simply assume no addresses are available.
  • the network address allocation unit 228 may be configured to format and send a network address allocation response message comprising a response code identifying the sent message type as comprising an indication of an allocated shared public network address.
  • messages sent a client device 202 may have a response code, such as may be indicated in a header field of the message that may indicate a type of message.
  • a unique response code may accordingly be assigned to network address allocation response messages that contain an indication of an allocated shared public network address.
  • a client device 202 that is not configured to support shared public network address may then simply disregard the sent network address allocation response message as it may not understand the response code.
  • the network management entity 204 may be embodied as a mobile IP home agent.
  • the network address allocation unit 228 may be configured to receive a network address allocation request comprising a binding update message requesting an IPv4 address from the network management entity 204 using DSMIPv ⁇ .
  • the binding update message may indicate that the client device 202 supports the use of shared public network addresses.
  • the network address allocation unit 228 may be configured to allocate a network address based at least in part upon any one or more of the criteria and methods described above.
  • the network address allocation unit may further be configured to send a network address allocation response message comprising a binding acknowledgement message.
  • the binding acknowledgement message may comprise a home address field.
  • the home address field may contain an indication of an allocated public or private network address.
  • the home address field may contain an invalid network address, such as, for example, 0.0.0.0 so as to implicitly indicate that no unique network addresses are available.
  • the network address allocation unit 228 may be configured to include an extension field in the binding acknowledgement message, which may comprise an indication of an allocated shared public IPv4 address.
  • the indication of a shared public IPv4 address may comprise an allocated public IPv4 address and an indication of a plurality of allocated ports, such as a range of ports, which the client device 202 is permitted to use when communicating with a network entity, such as a host device 206, using the allocated IPv4 home address.
  • the network address allocation unit 228 may further be configured to enforce restrictions on the use of allocated shared public network addresses. In this regard, if a client device 202 does not comply with restrictions on an allocated shared public network address, such as by using ports outside the range of ports allocated to the client device 202, the network address allocation unit 228 may be configured to drop all packets not complying with the usage restrictions.
  • Three use case scenarios contemplated in accordance with various embodiments of the present invention will now be described in conjunction with FIG. 2. These use case scenarios will be discussed in conjunction with usage of IPv4 and IPv6 network address protocols. It will be appreciated, however, that use of IPv4 and IPv6 addresses are provided merely for example and embodiments of the invention are not limited to facilitating transition between IPv4 and IPv6 network addresses. Accordingly, embodiments of the invention may be used to facilitate transition between any set of network address protocols.
  • the client device 202 may only be allocated an IPv4 address and may need to communicate with the host device 206, which may only be allocated an IPv6 address. Accordingly, the client device 202 may need to utilize some network address transition mechanism to facilitate communicating with the host device 206. The client device 202 may not know, however, what transition mechanism(s) is implemented on and/or preferred by the network 208. Accordingly, the network address transition unit 218 may send an appropriately formatted DHCP message to the network management entity 204, which may be embodied as a DHCP server. In response, the transition mechanism indication unit 226 may send a DHCP response including an option specifying a network address transition mechanism and associated server addresses needed to use the specified transition mechanism.
  • the network address transition unit 218 may then determine the specified network address transition mechanism and associated server addresses from the received response and use the determined specified network address transition mechanism and associated server addresses to initiate communications with the host device 206 using the specified network address transition mechanism.
  • the client device 202 may only be allocated an IPv6 address and the host device 206 may only be allocated an IPv4 address and the network management entity 204 may be embodied as a DHCP server.
  • the network address transition unit 218 may optionally send a message to discover an available or preferred network address transition mechanism as described above in use case 1 to facilitate communication with the host device 206.
  • the network address transition unit 218 may discover a network address transition mechanism and related configuration information in manners other than requesting information from a network management entity 204.
  • the network address transition unit 218 may then send a DHCP discover message to the network management entity 204 requesting allocation of an IPv4 address.
  • the DHCP discover message may comprise an indication of whether the client device 202 supports use of a shared public IPv4 address.
  • the network address allocation unit 228 may then determine to allocate a shared public IPv4 address based at least in part upon one or more of the above described criteria and methods.
  • the network address allocation unit 228 may allocate a shared public IPv4 address and a plurality of ports which the client device 202 may use when communicating with a host device 206 using the allocated shared public IPv4 address.
  • the network address allocation unit 228 may then send a DHCP offer message comprising an indication of the allocated shared public IPv4 address and allocated ports to the client device 202.
  • the network address transition unit 218 may determine the allocated shared public IPv4 address and allocated ports based at least in part upon the received DHCP offer message.
  • the client device 202 may then communicate, such as via the communication interface 214, with the host device 206 using the allocated shared public IPv4 address over one or more of the allocated ports.
  • the client device 202 may be a mobile device, such as a mobile terminal 10.
  • the network management entity may be embodied as a mobile IP home agent and the network 208 may comprise a wireless network, such as a cellular network.
  • the client device 202 may be assigned only an IPv6 address and the host device 206 may be assigned only an IPv4 address and thus the client device 202 may need to be allocated an IPv4 address in order to facilitate communication with the host device 206.
  • the network address transition unit 218 may then send a binding update message to the network management entity 204 requesting allocation of an IPv4 home address.
  • the binding update message may include an invalid address, such as 0.0.0.0 in the field denoting the home address of the client device 202 to indicate that the client device 202 does not have an allocated IPv4 home address.
  • the network address allocation unit 228 may then determine to allocate a shared public IPv4 address based at least in part upon one or more of the above described criteria and methods. Accordingly, the network address allocation unit 228 may allocate a shared public IPv4 address and a plurality of ports which the client device 202 may use when communicating with a host device 206 using the allocated shared public IPv4 address. The network address allocation unit 228 may then send a binding acknowledgement message comprising an indication of the allocated shared public IPv4 address and allocated ports to the client device 202.
  • the binding acknowledgement message may, for example, comprise a home address field and an extension field.
  • the home address field may be set to an invalid address, such as 0.0.0.0 and the extension field may comprise an indication of the allocated shared public IPv4 address and allocated ports.
  • the network address transition unit 218 may determine the allocated shared public IPv4 address and allocated ports based at least in part upon the received binding acknowledgement message.
  • the network address transition unit 218 may be configured to determine based at least in part upon receipt of a binding acknowledgement message including an invalid address in the home address field that the network management entity 204 has allocated the client device 202 a shared public network address that is indicated in the extension field.
  • the client device 202 may then communicate, such as via the communication interface 214, with the host device 206 using the allocated shared public IPv4 address over one or more of the allocated ports.
  • FIGs. 3 and 4 are flowcharts of a system, method, and computer program product according to an exemplary embodiment of the invention. It will be understood that each block or step of the flowcharts, and combinations of blocks in the flowcharts, may be implemented by various means, such as hardware, firmware, and/or software including one or more computer program instructions.
  • one or more of the procedures described above may be embodied by computer program instructions.
  • the computer program instructions which embody the procedures described above may be stored by a memory device of a mobile terminal, server, or other computing device and executed by a processor in the computing device.
  • the computer program instructions which embody the procedures described above may be stored by memory devices of a plurality of computing devices.
  • any such computer program instructions may be loaded onto a computer or other programmable apparatus to produce a machine, such that the instructions which execute on the computer or other programmable apparatus create means for implementing the functions specified in the flowchart block(s) or step(s).
  • These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart block(s) or step(s).
  • the computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer- implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block(s) or step(s).
  • blocks or steps of the flowchart support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that one or more blocks or steps of the flowcharts, and combinations of blocks or steps in the flowcharts, may be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
  • FIG. 3 one exemplary method for facilitating transition between network address protocols from the perspective of a client device according to an exemplary embodiment of the present invention is illustrated in FIG. 3. The method may include the network address transition unit 218 sending a message requesting information about a supported network address transition mechanism to the network management entity 204 at operation 300.
  • Operation 310 may comprise the network address transition unit 218 receiving a message from the network management entity 204 comprising an indication of a supported network address transition mechanism and configuration information for using the indicated supported network address transition mechanism. If the message received at operation 310 indicates that tunneling is supported, the network address transition unit 218 may then send a request for a network address for use on a network to a tunnel endpoint (e.g. a network management entity 204) indicated in the received message based at least in part upon the received configuration mechanism at operation 320. It will be appreciated, however, that operations 300-310 are not prerequisites to operation 320.
  • the network address transition unit 218 may be configured to discover a network address transition mechanism, such as a tunnel endpoint, in manners other than through requesting information from a network management entity 204.
  • Operation 330 may comprise the network address transition unit 218 receiving, from the tunnel endpoint, a message comprising an indication of a shared public network address and an indication of a restriction on use of the shared public network address. The network address transition unit 218 may then determine the shared public network address and the restriction on use thereof based at least in part upon the received indications at operation 340.
  • Operation 350 may comprise the client device 202 communicating with a remote network device, such as a host device 206, over the network 208 using the determined shared public network address based at least in part upon the determined restriction.
  • the method may include the transition mechanism indication unit 226 receiving a request for information about a supported network address transition mechanism from a client device 202 at operation 400.
  • Operation 410 may comprise the transition mechanism indication unit 226 sending a message comprising an indication that tunneling is supported and configuration information for communicating with a tunnel endpoint to the requesting client device 202.
  • Operation 420 may comprise the network address allocation unit 228 receiving a request from a client device 202 for a network address for use on a network. It will be appreciated, however, that operations 400-410 are not prerequisites to operation 420.
  • the client device may discover a network address transition mechanism, such as a tunnel endpoint, in manners other than through requesting information from a network management entity 204.
  • a network address transition mechanism such as a tunnel endpoint
  • operations 400-410 may be performed by a first network management entity and operations 420-440 may be performed by a second network management entity.
  • the network address allocation unit 228 may then allocate a shared public network address with a restriction on use thereof to the requesting client device 202 at operation 430.
  • Operation 440 may comprise the network address allocation unit 228 sending a message comprising an indication of the allocated shared public network address and an indication of the restriction on use thereof to the requesting client device 202.
  • the above described functions may be carried out in many ways.
  • any suitable means for carrying out each of the functions described above may be employed to carry out embodiments of the invention.
  • a suitably configured processor may provide all or a portion of the elements of the invention.
  • all or a portion of the elements of the invention may be configured by and operate under control of a computer program product.
  • the computer program product for performing the methods of embodiments of the invention includes a computer-readable storage medium, such as the non-volatile storage medium, and computer-readable program code portions, such as a series of computer instructions, embodied in the computer-readable storage medium.
  • some embodiments of the invention may provide several advantages to a user of a computing device, such as a mobile terminal 10.
  • Embodiments of the invention may provide for determination of one or more network transition mechanisms available in a network. Embodiments of the invention may further provide for the allocation and use of shared public network addresses. These benefits may be obtained without the need for adding additional network entities, such as network address translation devices to an existing network. Accordingly, users may benefit from their devices being allocated network addresses even though there may be a shortage of unique addresses. Network providers may benefit from having a low cost method for facilitating transition between network address protocols.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

L'invention porte sur un appareil qui peut comprendre un processeur configuré pour recevoir un message comprenant une indication d'un mécanisme de transition d'adresse réseau supporté et des informations de configuration pour utiliser le mécanisme de transition d'adresse réseau supporté indiqué. Le processeur peut être en outre configuré pour utiliser le mécanisme de transition d'adresse réseau indiqué sur la base au moins en partie des informations de configuration reçues. Le message reçu peut indiquer qu'une tunnellisation est supportée et comprendre des informations de configuration pour communiquer avec un point d'extrémité de tunnel. Le processeur peut être configuré pour utiliser le mécanisme de transition d'adresse réseau indiqué par envoi d'une requête demandant une adresse réseau à utiliser sur un réseau vers le point d'extrémité de tunnel sur la base au moins en partie des informations de configuration reçues. L'invention porte également sur des procédés et des produits de programme d'ordinateur correspondants.
PCT/IB2008/052730 2008-07-07 2008-07-07 Procédés, appareils et produits de programme d'ordinateur pour faciliter une transition entre protocoles d'adresse réseau WO2010004363A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/IB2008/052730 WO2010004363A1 (fr) 2008-07-07 2008-07-07 Procédés, appareils et produits de programme d'ordinateur pour faciliter une transition entre protocoles d'adresse réseau

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2008/052730 WO2010004363A1 (fr) 2008-07-07 2008-07-07 Procédés, appareils et produits de programme d'ordinateur pour faciliter une transition entre protocoles d'adresse réseau

Publications (1)

Publication Number Publication Date
WO2010004363A1 true WO2010004363A1 (fr) 2010-01-14

Family

ID=40723143

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2008/052730 WO2010004363A1 (fr) 2008-07-07 2008-07-07 Procédés, appareils et produits de programme d'ordinateur pour faciliter une transition entre protocoles d'adresse réseau

Country Status (1)

Country Link
WO (1) WO2010004363A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110306386A1 (en) * 2010-06-09 2011-12-15 Roke Manor Research Limited Mobile Device and Method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138166A1 (en) * 2003-12-22 2005-06-23 Hexago Inc. IP network node and middleware for establishing connectivity to both the IPv4 and IPv6 networks
US20060092964A1 (en) * 2004-10-28 2006-05-04 Samsung Electronics Co., Ltd. Method and system for establishing bidirectional tunnel

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138166A1 (en) * 2003-12-22 2005-06-23 Hexago Inc. IP network node and middleware for establishing connectivity to both the IPv4 and IPv6 networks
US20060092964A1 (en) * 2004-10-28 2006-05-04 Samsung Electronics Co., Ltd. Method and system for establishing bidirectional tunnel

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110306386A1 (en) * 2010-06-09 2011-12-15 Roke Manor Research Limited Mobile Device and Method
US8948810B2 (en) * 2010-06-09 2015-02-03 Roke Manor Research Limited Mobile device and method for switching communication sessions between alternative network resources
US9231872B2 (en) 2010-06-09 2016-01-05 Roke Manor Research Limited Adapting data transfer rules in a mobile communications network
US9461920B2 (en) 2010-06-09 2016-10-04 Chemring Technology Solutions Limited Mobile device and method for switching communication sessions between alternative network resources

Similar Documents

Publication Publication Date Title
EP2377355B1 (fr) Affectation d'une adresse de réseau commune aux multiples interfaces réseau d'un appareil informatique
US9992813B2 (en) Method and apparatus for keep-alive signalling
US9350814B2 (en) Internet protocol connectivity over a service-oriented architecture bus
US9325382B2 (en) Method and system of providing internet protocol (IP) data communication in a NFC peer to peer communication environment
US10470106B2 (en) Method and apparatus for joint association and address provisioning
US9807176B2 (en) Method and apparatus for connection management
KR102060434B1 (ko) 휴대 단말기에서 무선 통신을 제공하는 장치 및 방법
EP1819133A1 (fr) Procédé et système permettant d'économiser d'énergie de batterie dans un dispositif sans fil opérant dans un réseau local sans fil
CN105637913B (zh) 在通信系统中提供推送服务的方法和装置
US10021512B2 (en) Switching to advertising locator after connection establishment
US20080031189A1 (en) Method and mobile terminal for allocating IP address in wireless network
US10952129B2 (en) Network access technology indication
KR20110039451A (ko) 네트워크 어드레스 할당 방법, 장치 및 컴퓨터 판독 가능한 저장 매체
US20060154662A1 (en) Registering phone numbers of wireless terminals
US7889705B2 (en) Mobile terminal and method for notifying access router of IP address in wireless network
EP2700254B1 (fr) Appareil et procédé pour transmettre et recevoir des informations ip dans un réseau de communication sans fil
KR101213159B1 (ko) 무선 네트워크에서 ip 어드레스를 할당하기 위한 휴대단말기 및 방법
WO2010004363A1 (fr) Procédés, appareils et produits de programme d'ordinateur pour faciliter une transition entre protocoles d'adresse réseau
KR101221596B1 (ko) 무선 네트워크에서 액세스 라우터에 ip 어드레스를공지하기 위한 휴대 단말기 및 방법
WO2011042767A1 (fr) Système, procédé et appareil facilitant la délégation statique de préfixes
US20160330169A1 (en) Base station for ip communications with mobile terminal, and method for acquiring ip of base station
WO2013061116A1 (fr) Procédé et appareil pour faciliter le maintien d'un état de connexion
CN105165040A (zh) 一种ip地址和ip参数的分配方法、装置及系统
CN117793058A (zh) 公网地址分配方法、系统、电子设备及可读存储介质
US20090201897A1 (en) Classification process involving mobile stations

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

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

Country of ref document: EP

Kind code of ref document: A1