The present disclosure relates to an electronic device performing data communication and a method for operating the same.
As a result of a popularization of various portable devices and advancements in communication technology, various data communication schemes may be being developed. For example, users may utilize various electronic devices in their daily lives, such as, but not limited to, smartphones, cellular phones, tablet computers, digital cameras, personal digital assistants (PDA), wearable devices, or the like. A mobile broad band (MBB) device and/or a MBB modem refers to a portable wireless modem device that may connect one or more electronic devices to a wireless network, such as, for example, the Internet.
A wireless modem device may communicate with a host based on a designated interface (e.g., a network adapter interface). A wireless modem device may be connected to a host (e.g., an electronic device) via a network adapter interface, and the user may use the electronic device to access a desired service of a wireless network (e.g., Ethernet, a broadband network, or a cellular network). A wireless modem device may connect an electronic device with a wireless network and may transfer packets related to user traffic.
Provided are an electronic device and a method for operating the same that may perform data communication through a wireless modem device such as a mobile broad band (MBB) device.
According to an aspect of the disclosure, an electronic device includes an interface, one or more processors operatively connected to the interface, and memory storing instructions. The instructions are configured to, when executed by the one or more processors individually or collectively, cause the electronic device to connect, using a wireless modem device coupled through the interface, a data session for cellular data communication, receive, via the data session, a first router advertisement (RA) message, obtain, from the first RA message, at least one lifetime for the data session, determine whether the at least one lifetime is updated until a predetermined time before expiration of the at least one lifetime, based on determining that the at least one lifetime is not updated until the predetermined time before the expiration of the at least one lifetime, transmit a signal requesting an Internet Protocol (IP) reconfiguration to the wireless modem device, receive, from the wireless modem device based on the transmitting of the signal requesting the IP reconfiguration, a second RA message, and update the at least one lifetime based on the second RA message.
According to an aspect of the disclosure, an electronic device includes an interface, one or more processors operatively connected to the interface, and memory storing instructions. The instructions are configured to, when executed by the one or more processors individually or collectively, cause the electronic device to connect, using a wireless modem device coupled through the interface, a data session for cellular data communication, receive, via the data session, a first RA message, obtain, from the first RA message, at least one lifetime for the data session, determine whether the at least one lifetime is updated until a predetermined time before expiration of the at least one lifetime, based on determining that the at least one lifetime is not updated until the predetermined time before the expiration of the at least one lifetime, transmit a router request (RS) message to a router through the wireless modem device, receive, from the router through the wireless modem device based on the transmitting of the RS request message, a second RA message, and update the at least one lifetime based on the second RA message.
According to an aspect of the disclosure, a method for operating an electronic device coupled with a wireless modem device includes establishing, using the wireless modem device, a data session for cellular data communication, receiving, via the data session, a first RA message, obtaining, from the first RA message, at least one lifetime for the data session, determining whether the at least one lifetime is updated until a predetermined time before expiration of the at least one lifetime, based on determining that the at least one lifetime is not updated until the predetermined time before the expiration of the at least one lifetime, transmitting a signal requesting an IP reconfiguration to the wireless modem device, receiving, from the wireless modem device based on the transmitting of the signal requesting the IP reconfiguration, a second RA message, and updating the at least one lifetime based on the second RA message.
According to an aspect of the disclosure, a method for operating an electronic device coupled with a wireless modem device includes establishing, using the wireless modem device, a data session for cellular data communication, receiving, via the data session, a first RA message, obtaining, from the first RA message, at least one lifetime for the data session, determining whether the at least one lifetime is updated until a predetermined time before expiration of the at least one lifetime, based on determining that the at least one lifetime is not updated until the predetermined time before the expiration of the at least one lifetime, transmitting a RS message to a router through the wireless modem device, receiving, through the wireless modem device based on the transmitting of the RS message, a second RA message, and updating the at least one lifetime based on the second RA message.
According to an aspect of the disclosure, a non-transitory computer-readable storage medium storing one or more programs, the one or more programs including instructions to, when executed by one or more processors of an electronic device individually or collectively, cause the electronic device to establish, using a wireless modem device coupled through an interface, a data session for cellular data communication, receive, via the data session, a first RA message, obtain, from the first RA message, at least one lifetime for the data session, determine whether the at least one lifetime is updated until a predetermined time before expiration of the at least one lifetime, based on determining that the at least one lifetime is not updated until the predetermined time before the expiration of the at least one lifetime, transmit a signal requesting an IP reconfiguration to the wireless modem device, receive, from the wireless modem device based on the transmitting of the signal requesting the IP reconfiguration, a second RA message, and update the at least one lifetime based on the second RA message.
Additional aspects may be set forth in part in the description which follows and, in part, may be apparent from the description, and/or may be learned by practice of the presented embodiments.
The above and other aspects, features, and advantages of certain embodiments of the present disclosure may be more apparent from the following description taken in conjunction with the accompanying drawings, in which:
The following description with reference to the accompanying drawings is provided to assist in a comprehensive understanding of embodiments of the present disclosure defined by the claims and their equivalents. Various specific details are included to assist in understanding, but these details are considered to be exemplary only. Therefore, those of ordinary skill in the art may recognize that various changes and modifications of the embodiments described herein may be made without departing from the scope and spirit of the disclosure. In addition, descriptions of well-known functions and structures are omitted for clarity and conciseness.
With regard to the description of the drawings, similar reference numerals may be used to refer to similar or related elements. It is to be understood that a singular form of a noun corresponding to an item may include one or more of the things, unless the relevant context clearly indicates otherwise.
Reference throughout the present disclosure to “one embodiment,” “an embodiment,” “an example embodiment,” or similar language may indicate that a particular feature, structure, or characteristic described in connection with the indicated embodiment is included in at least one embodiment of the present solution. Thus, the phrases “in one embodiment”, “in an embodiment,” “in an example embodiment,” and similar language throughout this disclosure may, but do not necessarily, all refer to the same embodiment. The embodiments described herein are example embodiments, and thus, the disclosure is not limited thereto and may be realized in various other forms.
It is to be understood that the specific order or hierarchy of blocks in the processes/flowcharts disclosed are an illustration of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of blocks in the processes/flowcharts may be rearranged. Further, some blocks may be combined or omitted. The accompanying claims present elements of the various blocks in a sample order, and are not meant to be limited to the specific order or hierarchy presented.
The embodiments herein may be described and illustrated in terms of blocks, as shown in the drawings, which carry out a described function or functions. These blocks, which may be referred to herein as units or modules or the like, or by names such as device, logic, circuit, controller, counter, comparator, generator, converter, or the like, may be physically implemented by analog and/or digital circuits including one or more of a logic gate, an integrated circuit, a microprocessor, a microcontroller, a memory circuit, a passive electronic component, an active electronic component, an optical component, and the like.
In the present disclosure, the articles “a” and “an” are intended to include one or more items, and may be used interchangeably with “one or more.” Where only one item is intended, the term “one” or similar language is used. For example, the term “a processor” may refer to either a single processor or multiple processors. When a processor is described as carrying out an operation and the processor is referred to perform an additional operation, the multiple operations may be executed by either a single processor or any one or a combination of multiple processors.
Hereinafter, various embodiments of the present disclosure are described with reference to the accompanying drawings.
Referring to
In an embodiment, the wireless modem device 110 may use a standard protocol according to communications device class (CDC) designated in USB implementers forum (USB-IF) to support USB to serial or USB to Ethernet. CDC may include subclasses such as, but not limited to, abstract control model (ACM), Ethernet networking control model (ECM), Ethernet emulation model (EEM), network control model (NCM), mobile broadband interface model (MBIM), or the like. In an embodiment, the USB-based wireless modem device 110 may support Internet access using Ethernet communication and a cellular network may be connected to the electronic device 100 using the MBIM protocol. In an embodiment, in order to support the data speed of a high-speed cellular network such as a fifth generation (5G) cellular network, the wireless modem device 110 may be connected to the electronic device 100 using a PCI express (PCIE) interface instead of USB. However, the present disclosure is not limited in this regard, and the wireless modem device 110 may be connected to the electronic device 100 using various other interfaces.
Referring to
The communication circuit 202 may transmit/receive wireless signals to/from an external electronic device using at least one antenna. The communication circuit 202 may include at least one of a transmission circuit and a reception circuit. The transmission circuit may include a radio frequency (RF) transmitter that frequency-upconverts and amplifies the transmitted signal. The reception circuit may include an RF receiver for low noise amplification and frequency down-conversion of the received signal. The communication circuit 202 may receive a signal through a wireless channel, output the signal to the processor 204, and transmit the signal output from the processor 204 through a wireless channel. In an embodiment, the communication circuit 202 may support a short-range wireless communication scheme such as, but not limited to, Bluetooth™ or Wireless Fidelity (Wi-Fi), and/or a long-range communication scheme such as, but not limited to, a legacy cellular network, a 5G network, a next-generation communication network, the Internet, a computer network (e.g., local area network (LAN), wide-area network (WAN), or the like). In an embodiment, the electronic device 100 may not support a communication function, and the communication circuit 202 may be omitted.
The processor 204 may include and/or execute a modem and/or software modules that may operate according to at least one or a combination of the embodiments of the disclosure. The processor 204 may perform and/or control the operation of the electronic device 100 for performing at least one, or a combination of embodiments of the disclosure. The processor 204 may include at least one processing circuit. In an embodiment, the processor 204 may include at least one of a communication processor (CP) that may perform control for communication and/or an application processor (AP) that may control a higher layer (e.g., an application). In an embodiment, the CP may include a modem.
The memory 206 may store control information (e.g., network connection information obtained from the electronic device 100) and/or data, and may have areas for storing data necessary for the operation of the processor 204, and/or areas for data generated through the operation of the processor 204.
The interface 208 may support one or more designated protocols that may be used for the electronic device 100 to be directly (e.g., wiredly) and/or wirelessly connected to an external electronic device (e.g., the wireless modem device 110). According to an embodiment, the interface 208 may include a USB interface and/or a PCI express interface.
The display 210 may visually provide information to the outside (e.g., the user) of the electronic device 100. The display 210 may be and/or may include, but not be limited to, a display module, a hologram device, or a projector and a control circuit for controlling the device. According to an embodiment, the display 210 may include a touch sensor configured to detect a touch, and/or a pressure sensor configured to measure the strength of a force generated by the touch. According to an embodiment, the display 210 may visually display information related to the network connection and/or the network status.
Referring to
The communication circuit 302 may transmit/receive wireless signals to/from an external electronic device using at least one antenna. The communication circuit 302 may include at least one of a transmission circuit and a reception circuit. The transmission circuit may include a radio frequency (RF) transmitter that frequency-upconverts and amplifies the transmitted signal. The reception circuit may include an RF receiver for low noise amplification and frequency down-conversion of the received signal. The communication circuit 302 may receive a signal through a wireless channel, output the signal to the processor 304, and transmit the signal output from the processor 304 through a wireless channel. In an embodiment, the communication circuit 302 may support a short-range wireless communication scheme such as, but not limited to, Bluetooth™ or Wi-Fi, and/or a long-range communication scheme such as, but not limited to, a legacy cellular network, 5G network, next-generation communication network, Internet, or computer network (e.g., LAN or WAN).
The processor 304 may include and/or execute a modem and/or software modules that may operate according to at least one or a combination of the embodiments of the disclosure. The processor 304 may perform or control the operation of the wireless modem device 110 for performing at least one, or a combination of embodiments of the disclosure. The processor 204 may include at least one processing circuit. In an embodiment, the processor 204 may include at least one of a CP that performs control for communication or an AP that controls a higher layer (e.g., an application). In an embodiment, the CP may include a modem (e.g., modem 622 of
The memory 306 may store control information (e.g., network connection information obtained from the wireless modem device 110) and/or data, and may have areas for storing data necessary for the operation of the processor 304, and/or areas for data generated through the operation of the processor 304.
The interface 308 may support one or more designated protocols that may be used for the wireless modem device 110 to be directly (e.g., wiredly) and/or wirelessly connected to an external electronic device (e.g., the electronic device 100). According to an embodiment, the interface 308 may include a USB interface and/or a PCI express interface.
The electronic device 100 using the wireless modem device 110 supporting the 5G communication scheme may perform cellular data communication using the Internet Protocol (IP) address (e.g., IP version 6 (IPv6) address).
There may be largely three (3) IPv6 address allocation schemes as follows. First, manual configuration may refer to an allocation scheme in which the administrator and/or the user directly inputs an IPv6 address. Second, a stateless address auto configuration (SLAAC) may refer to an allocation scheme in which the electronic device 100 may automatically obtain an IPV6 address without a dynamic host configuration protocol (DHCP) server. Third, a stateful address auto configuration may refer to an allocation scheme in which the DHCP server may automatically allocate an IPV6 address of the electronic device 100.
Table 1 below illustrates address allocation schemes of IPV4 and IPV6.
The wireless modem device 110 may use the SLAAC scheme among the schemes shown in Table 1. The SLAAC scheme may provide an IPV6 address to the electronic device 100, and may use the neighbor discovery protocol (NDP) defined in the Internet Control Message Protocol version 6 (ICMPv6) to secure the validity of the IPV6 address. ICMPv6 may refer to an Internet Control Message Protocol for IPV6. The ICMPv6 may provide NDP messages for IPV6 address allocation and securing validity. The NDP messages may include a router solicitation (RS) message and a router advertising (RA) message. The RA message may include network connection information such as, but not limited to, default router, router lifetime, retransmission timer, maximum transmission unit (MTU), or prefix information about the IP address, and may be transmitted from the data network 120 (e.g., the router 125). The prefix information may include at least one of the IP address, the prefix of the IP address, the valid lifetime, and the preferred lifetime. In an embodiment, the router 125 may transmit an RA message to inform that its IP address is available for routing.
The RA message may be divided into an unsolicited RA message periodically transmitted from the data network 120 and an unsolicited RA message transmitted in response to the RS message transmitted by the electronic device 100. The RS message may be transferred from the electronic device 100 to receive the RA message from the data network 120. The electronic device 100 may transmit an RS message to inform routers (e.g., the routers 125) of the data network 120 of the existence of the electronic device 100. The router 125 may be configured to receive the RS message and transmit a policed RA message in response thereto.
The electronic device 100 may be connected to a wireless modem device 110 (e.g., an MBB device) using, e.g., the MBIM protocol for cellular network connection. In MBIM, each device service may be identified by a universally unique identifier (UUID). The instructions (e.g., instruction identifier (CID) exchanged between the electronic device 100 and the wireless modem device 110 may include the UUID for identifying the transferred data service.
Referring to
In operation 404, the electronic device 100 may transmit a data connection request message to the wireless modem device 110. The data connection request message may include MBIM_CID_CONNECT including information for activating a designated data session. The MBB device 110 may activate a designated data session (e.g., a pre-connected IP data session or a newly connected IP data session) for the electronic device 100 in response to the data connection request message. In operation 406, the MBB device 110 may transmit a data connection response message to the electronic device 100. The data connection response message may include MBIM_CID_CONNECT indicating the active state of the data session activated for the electronic device 100.
In operation 408, the MBB device 110 may transmit an IP configuration notification message to the electronic device 100. The IP configuration notification message may include MBIM_CID_IP_CONFIGURATION_INFO indicating IP configuration information about the link layer for the data session. In operation 410, the electronic device 100 may identify that the data session is connected based on the reception of the IP configuration notification message. The electronic device 100 may perform data communication via the data session.
In operation 412, the electronic device 100 may transmit an RS message for requesting network connection information of ICMPv6 to the wireless modem device 110, and the RS message may reach the router 125 in the data network 120 through the MBB device 110. The network connection information may include at least one of the valid lifetime of the IP address or the router lifetime. In operation 414, the electronic device 100 may receive an RA message (e.g., a solicited RA message) responsive to the RS message. In operation 416, the electronic device 100 may complete establishment of the network connection by obtaining network connection information (e.g., valid IP address and/or gateway information) from the RA message. Accordingly, the electronic device 100 may be in a state in which data packet exchange and communication with the data network 120 are possible.
The RA message (e.g., the solicited RA message in operation 414) received by the electronic device 100 may include at least one of the valid lifetime of the IP address or the router lifetime. For example, the valid lifetime of the IP address may be 2,592,000 seconds. As another example, the router lifetime may be 21,840 seconds. When the valid lifetime or router lifetime expires, the IP address or router (e.g., the router 125) may no longer be used, and the electronic device 100 may not exchange packets with the data network 120 (e.g., the router 125).
The router 120 may periodically transmit the unsolicited RA message before the IP address and router lifetime included in the previously transmitted RA message expire. The electronic device 100 may update the valid lifetime of the IP address and/or router lifetime based on the unsolicited RA message, and may continuously perform data communication by linking and securing the validity of the IP address and the router 125.
The electronic device 100 may not receive RA messages transmitted from the data network (e.g., the router 125) before the IP address and router lifetime expire for various reasons (e.g., at least one of network non-transmission, packet traffic, or an error on the data flow) or for unknown reasons. After the valid lifetime of the IP address in the electronic device 100 expires or the router lifetime expires, the electronic device 100 may no longer perform packet transmission even though the data session through the wireless modem device 110 is active.
Referring to
In operation 508, the electronic device 100 may obtain the IP address from the RA message. In operation 510, the electronic device 100 may perform normal cellular data communication with the router 125 through the MBB device 110 using the IP address.
In operation 512, the router 125 periodically transmits an RA message (e.g., an unsolicited RA message), however the electronic device 100 may not receive the RA message for at least one reason (e.g., at least one of a network failure, a packet traffic overload, or an error on the data flow).
In operation 514, the electronic device 100 may identify that the lifetime (e.g., at least one of the valid lifetime or the router lifetime) expires. In operation 516, as the lifetime expires, the electronic device 100 may not perform normal cellular data communication.
In an embodiment, the electronic device 100 may be configured to request an RA message when at least one of the following conditions is met.
Based on the above-described conditions, when failing to continuously receive the unsolicited RA message from the router 125 although the data session of the electronic device 100 is connected, the electronic device 100 may no longer perform data communication. Embodiments of the disclosure may prevent a state of being incapable of data packet communication due to loss of validity of the IP address and router (e.g., the router 125) due to non-reception of the RA message in a state in which the data session of the electronic device 100 is normally connected.
Referring to
The modem 622 may be configured to perform encoding and modulation of the transmission signal and demodulation and decoding of the reception signal according to the wireless communication scheme (e.g., third generation (3G), fourth generation (4G), or 5G communication scheme). In an embodiment, the modem 622 may be implemented as a software module included in the CP in the processor 304.
The SIM card 624 may be implemented as an embedded or external card including subscriber information, network configuration information, and authentication information.
The MBIM interface 626 may communicate with the electronic device 100 according to the MBIM protocol. In an embodiment, the MBIM interface 626 may be implemented as a software module included in the CP in the processor 304. The wireless modem device 110 may transfer network status information to the electronic device 100 through the MBIM interface 626, and may receive and process a network-related request such as a connection request from the electronic device 100 through the MBIM interface 626. The electronic device 100 may include additional information in the MBIM message using the MBIM extension protocol.
The interface driver 630 may manage a wired link (e.g., the interface 308) for a physical connection between the electronic device 100 and the wireless modem device 110. In an embodiment, the interface driver 630 may support at least one of a USB interface or a PCI express interface. However, the present disclosure is not limited in this regard, and the interface driver 630 may support other interfaces.
The RS/RA module 628 may be implemented as a software module included in the CP in the processor 304. In an embodiment, the RS/RA module 628 may generate an RS message in response to a request (e.g., an IP reconfiguration request) from the electronic device 100. The RS message may be transmitted to a router (e.g., the router 125) by the modem 622. The RS/RA module 628 may receive an RA message (e.g., a solicited RA message) transmitted from the router 125 in response to the RS message through the modem 622. The RA message may be transferred to the electronic device 100 through the MBIM interface 626 and the interface driver 630.
The electronic device 100 may include at least one of a connection manager 602, a wireless wide area network (WWAN) service module 604, a user application (APP) 606, a network monitor 608, a Transport Control Protocol/Internet Protocol (TCP/IP) module 610, a network driver 612, or an interface driver 614. At least one of the above-described components may be implemented as a software module included in the processor 204.
The WWAN service module 604 may be and/or may include, for example, a software module included in an operating system, and may manage network status information received from the wireless modem device 110 and/or may transmit a network-related request such as a connection request to the wireless modem device 110.
The TCP/IP module 610 may be and/or may include, for example, a software module included in an operating system, and may perform at least one of IP address allocation, gateway allocation, or packet flow control for a cellular network connection.
The network driver 612 may include a software module operating as a network adapter based on a network driver interface specification (NDIS), and may perform at least one of MBIM interface communication, packet transmission, or modem control with the wireless modem device 110.
The interface driver 614 may manage a wired link (e.g., the interface 208) for a physical connection between the wireless modem device 110 and the electronic device 100. In an embodiment, the interface driver 614 may support at least one of a USB interface or a PCI express interface. However, the present disclosure is not limited in this regard, and the interface driver 614 may support other interfaces.
The network monitor 608 may be a software module in the form of the user-mode driver framework. In an embodiment, the network monitor 608 may monitor network information (e.g., connection status, valid lifetime, and/or router lifetime) in real time using mobile broadband classes (e.g., instructions supporting mobile broadband account management supported by the operating system) supported by the application programming interface (API), and detect problem situations (e.g., non-reception of RA message or expiration of lifetime) based on the monitoring.
The network monitor 608 may start operating when the electronic device 100 is driven (e.g., booted) or when data communication is started through the wireless modem device 110. The network monitor 608 may obtain at least one of network information, network status information (e.g., connection status and/or packet transmission state), valid lifetime of the IP address, or router lifetime from the WWAN service module 04 in real time using a window runtime (WinRT) API.
The network monitor 608 may use the timer to determine the time when the first lifetime (e.g., either the valid lifetime of the IP address or the router lifetime) expires. The timer may be set to a time shorter than the first lifetime by a designated (or predetermined) value, and may be terminated (e.g., expires) at a time immediately before the first lifetime expires. The timer may be restarted whenever an RA message including a new value of the first lifetime is received. When the timer expires, the network monitor 608 may check the first lifetime again. When the first light beam is not updated because an RA message (e.g., an unsolicited RA message) is not received, the network monitor 608 may determine that a problem situation has occurred.
The network monitor 608 may lead the wireless modem device 110 to generate an RS message by notifying the wireless modem device 110 of the occurrence of the problem situation using an MBIM message (e.g., an MBIM extension message).
Referring to
In operation 720, the electronic device 100 (e.g., the processor 204) may identify a designated time before the expiration of the first lifetime (e.g., either the valid lifetime of the IP address or the router lifetime). In an embodiment, the electronic device 100 (e.g., the processor 204) may activate a timer (e.g., either a first timer based on the valid lifetime of the IP address or a second timer based on the router lifetime) that starts at the time of obtaining the first lifetime through the first RA message and may be set to be shorter than the time designated by the first lifetime by a designated value. In operation 725, the electronic device 100 (e.g., the processor 204) may wait until the timer terminates (e.g., expires). For example, the electronic device 100 (e.g., the processor 204) may loop back to operation 725 (‘No’ in operation 725) until the timer terminates. When the timer is terminated (‘Yes’ in operation 725), the electronic device 100 (e.g., the processor 204) may determine that the first lifetime is not updated until the designated time before the expiration of the first lifetime and proceed to operation 730.
In operation 730, the electronic device 100 (e.g., the processor 204) may determine whether a new RA message (e.g., an unsolicited RA message or a solicited RA message) is received after the first RA message of operation 710 related to the starting of the timer is received. If a new RA message is received (‘Yes’ in operation 730), the electronic device 100 (e.g., the processor 204) may proceed to operation 745. On the other hand, if a new RA message is not received (‘No’ in operation 730), the electronic device 100 (e.g., the processor 204) may proceed to operation 735.
In operation 735, the electronic device 100 (e.g., the processor 204) may transmit a signal requesting IP reconfiguration to the wireless modem device 110 (e.g., the MBB device). In an embodiment, the signal may be transferred to the wireless modem device 110 through an MBIM message or an MBIM extension message. The wireless modem device 110 may perform IP reconfiguration in response to the signal requesting the IP reconfiguration, and the IP reconfiguration may include the operation of the wireless modem device 110 transmitting an RS message to the data network 120 (e.g., the router 125). The wireless modem device 110 may receive a second RA message (e.g., a solicited RA message) in response to the RS message, and may transmit the second RA message to the electronic device 100.
In operation 740, the electronic device 100 may receive the second RA message from the wireless modem device 110. In operation 745, the electronic device 100 may obtain a new value of the first lifetime (e.g., either the valid lifetime of the IP address or router lifetime) from the second RA message, and may update the first lifetime based on the obtained value. The electronic device 100 may perform normal packet exchange (e.g., at least one of packet transmission or packet reception) based on the updated first lifetime.
Referring to
In operation 804, the electronic device 100 (e.g., the TCP/IP module 610) may transmit an RS message to the router 125 through the wireless modem device 110. The RS message may be transmitted using the ICMPv6 protocol through the connected data session. In operation 806, the electronic device 100 (e.g., the TCP/IP module 610) may receive an RA message (e.g., a solicited RA message) from the router 125 through the wireless modem device 110. In an embodiment, the RA message may include a valid lifetime for the IP address and/or the router lifetime. In operation 808, the electronic device 100 (e.g., the TCP/IP module 610) may normally perform packet transmission through a data session based on the valid IP address and/or router lifetime obtained through the RA message. In an embodiment, the electronic device 100 (e.g., the TCP/IP module 610) may share network connection information (e.g., valid lifetime and/or router lifetime) obtained through the RA message with the WWAN service module 604.
In operation 810, the electronic device 100 (e.g., the WWAN service module 604) may transfer network information (e.g., at least one of connection status, valid lifetime, or router lifetime) related to the data session to the network monitor 608. In operation 812, the electronic device 100 (e.g., the network monitor 608) may identify the connection status and at least one lifetime of the data session based on the received network information. In an embodiment, the electronic device 100 (e.g., the network monitor 608) may start at least one timer corresponding to the valid lifetime and/or the router lifetime. In an embodiment, the at least one timer may include a first timer and/or a second timer. The first timer may be set to be shorter than the valid lifetime by a designated value. The second timer may be set to be shorter than the router lifetime by a designated value. The electronic device 100 (e.g., the network monitor 608) may reset and/or restart at least one of the first timer or the second timer whenever a new RA message (e.g., a solicited RA message or an unsolicited RA message) is received.
In operation 814, the RA message (e.g., an unsolicited RA message) transmitted from the data network 120 (e.g., the router 125) may not reach the electronic device 100 for some reason (e.g., packet traffic overload, or an error on the data flow). In an embodiment, the router 125 may not transmit the RA message due to a malfunction.
In operation 816, the electronic device 100 (e.g., the network monitor 608) may detect that an RA message (e.g., a solicited RA message or an unsolicited RA message) is not received until at least one of the first timer or the second timer expires. In an embodiment, the electronic device 100 (e.g., the network monitor 608) may determine that the RA message is not received based on the expiration of at least one of the first timer and the second timer.
In operation 818, the electronic device 100 (e.g., the network monitor 608) may transmit an IP/gateway information request signal (e.g., an API instruction) for requesting a new lifetime from the TCP/IP module 610. In operation 820, the electronic device 100 (e.g., the TCP/IP module 610) may transmit an IP/gateway information response signal (e.g., an API instruction) including the lifetime stored in the TCP/IP module 610 to the network monitor 608. In operation 822, the electronic device 100 (e.g., the network monitor 608) may identify that the lifetime has already expired, and may determine that packet transmission is impossible.
Referring to
In an embodiment, the electronic device 100 (e.g., the network monitor 608) may detect that at least one timer based on at least one lifetime is terminated. In an embodiment, the electronic device 100 (e.g., the network monitor 608) may detect that the first timer based on the valid lifetime obtained from the RA message (e.g., the RA message of operation 806) ends. The first timer may expire at a designated value before the expiration of the valid lifetime. In an embodiment, the electronic device 100 (e.g., the network monitor 608) may detect that the second timer based on the router lifetime obtained from the RA message (e.g., the RA message of operation 806) ends. The second timer may expire at a designated value before the expiration of the router lifetime.
In operation 904, the electronic device 100 (e.g., the network monitor 608) may transmit a signal requesting IP reconfiguration to the wireless modem device 110 (e.g., the MBB device). In an embodiment, the signal may be transferred to the wireless modem device 110 (e.g., the RS/RA module 628) through the MBIM message and the MBIM extension message.
In operation 906, the wireless modem device 110 (e.g., RS/RA module 628) may transmit an RS message to the data network 120 (e.g., the router 125) for the IP reconfiguration. In operation 908, the wireless modem device 110 (e.g., RS/RA module 628) may receive an RA message (e.g., a solicited RA message) from the router 125 in response to the RS message.
In operation 910, the wireless modem device 110 (e.g., the RS/RA module 628) may transmit the RA message to the electronic device 100 (e.g., the TCP/IP module 610). In an embodiment, the wireless modem device 110 (e.g., the RS/RA module 628) may convert the solicited RA message received from the router 125 into an unsolicited RA message and transfer the unsolicited RA message to the electronic device 100. In operation 912, the wireless modem device 110 (e.g., the RS/RA module 628) may transmit a signal indicating that IP reconfiguration is completed to the electronic device 100 (e.g., the network monitor 608).
In operation 914, the electronic device 100 (e.g., the TCP/IP module 610) may normally perform packet transmission via the data session based on the valid IP address and/or router lifetime obtained through the RA message (e.g., an unsolicited RA message). In an embodiment, the electronic device 100 (e.g., the TCP/IP module 610) may share network connection information (e.g., valid lifetime and/or router lifetime) obtained through the RA message with the WWAN service module 604. In an embodiment, the electronic device 100 (e.g., the WWAN module 604) may share network connection information (e.g., valid lifetime and/or router lifetime) obtained through the RA message with the network monitor 608.
Referring to
In operation 1020, the electronic device 100 (e.g., the processor 204) may identify a designated time before the expiration of the first lifetime (e.g., either the valid lifetime of the IP address or the router lifetime). In an embodiment, the electronic device 100 (e.g., the processor 204) may activate a timer (e.g., either a first timer based on the valid lifetime of the IP address or a second timer based on the router lifetime) that starts at the time of obtaining the first lifetime through the first RA message and is set to be shorted than the time designated by the first lifetime by a designated value. In operation 1025, the electronic device 100 (e.g., the processor 204) may wait until the timer terminates (e.g., expires). For example, the electronic device 100 (e.g., the processor 204) may loop back to operation 1025 (‘No’ in operation 1025) until the timer terminates. When the timer is terminated (‘Yes’ in operation 1025), the electronic device 100 (e.g., the processor 204) may determine that the first lifetime is not updated until the designated time before the expiration of the first lifetime and proceed to operation 1030.
In operation 1030, the electronic device 100 (e.g., the processor 204) may determine whether a new RA message (e.g., an unsolicited RA message or a solicited RA message) is received after the first RA message of operation 1010 related to the starting of the timer is received. If a new RA message is received (‘Yes’ in operation 1030), the electronic device 100 (e.g., the processor 204) may proceed to operation 1045. On the other hand, if a new RA message is not received (‘No’ in operation 1030), the electronic device 100 (e.g., the processor 204) may proceed to operation 1035.
In operation 1035, the electronic device 100 (e.g., the processor 204) may transmit an RS message to the data network 120 (e.g., the router 125) through the wireless modem device 110 (e.g., an MBB device). In an embodiment, the RS message may be transmitted by the TCP/IP module 610 of the electronic device 100. The RS message may be transferred to the router 125 via the wireless modem device 110. The router 125 may transmit a second RA message (e.g., a solicited RA message) to the wireless modem device 110 in response to the RS message.
In operation 1040, the electronic device 100 may receive the second RA message from the wireless modem device 110. In operation 1045, the electronic device 100 may obtain a new value of the first lifetime (e.g., either the valid lifetime of the IP address or router lifetime) from the second RA message, and may update the first lifetime based on the obtained value. The electronic device 100 may perform normal packet exchange (e.g., at least one of packet transmission or packet reception) based on the updated first lifetime.
Referring to
In an embodiment, the electronic device 100 (e.g., the network monitor 608) may detect that at least one timer based on at least one lifetime is terminated. In an embodiment, the electronic device 100 (e.g., the network monitor 608) may detect that the first timer based on the valid lifetime obtained from the RA message (e.g., the RA message of operation 806) ends. The first timer may expire at a designated value before the expiration of the valid lifetime. In an embodiment, the electronic device 100 (e.g., the network monitor 608) may detect that the second timer based on the router lifetime obtained from the RA message (e.g., the RA message of operation 806) ends. The second timer may expire at a designated value before the expiration of the router lifetime.
In operation 1104, the electronic device 100 (e.g., the network monitor 608) may transmit a signal (e.g., a WinRT API instruction) indicating that IP reconfiguration is required to the WWAN service module 604. In an embodiment, the signal may include an MBIM message (e.g., MBIM_CID_IP_CONFIGURATION) including the connection status information. In operation 1106, the electronic device 100 (e.g., the WWAN service module 604) may transmit a signal for triggering an RS message to the TCP/IP module 610.
In operation 1108, the electronic device 100 (e.g., the TCP/IP module 610) may transmit an RS message to the data network 120 (e.g., the router 125) through the wireless modem device 110 in response to the RS message trigger. In operation 1110, the electronic device 100 (e.g., the TCP/IP module 610) may receive an RA message (e.g., a solicited RA message) from the router 125 in response to the RS message.
In operation 1112, the electronic device 100 (e.g., the TCP/IP module 610) may normally perform packet transmission via the data session based on the valid IP address and/or router lifetime obtained through the RA message (e.g., a solicited RA message). In an embodiment, the electronic device 100 (e.g., the TCP/IP module 610) may share network connection information (e.g., valid lifetime and/or router lifetime) obtained through the RA message with the WWAN service module 604. In an embodiment, the electronic device 100 (e.g., the WWAN module 604) may share network connection information (e.g., valid lifetime and/or router lifetime) obtained through the RA message with the network monitor 608.
In an embodiment, an electronic device 100, according to embodiments of the disclosure may include at least one of the components of the electronic device 1201 of
Referring to
The processor 1220 may execute, for example, software (e.g., a program 1240) to control at least one other component (e.g., a hardware or software component) of the electronic device 1201 coupled with the processor 1220, and may perform various data processing or computation. According to one embodiment, as at least part of the data processing or computation, the processor 1220 may store a command or data received from another component (e.g., the sensor module 1276 or the communication module 1290) in volatile memory 1232, process the command or the data stored in the volatile memory 1232, and store resulting data in non-volatile memory 1234. According to an embodiment, the processor 1220 may include a main processor 1221 (e.g., a central processing unit (CPU) or an application processor (AP)), or an auxiliary processor 1223 (e.g., a graphics processing unit (GPU), a neural processing unit (NPU), an image signal processor (ISP), a sensor hub processor, or a communication processor (CP)) that is operable independently from, or in conjunction with, the main processor 121. For example, when the electronic device 1201 includes the main processor 1221 and the auxiliary processor 1223, the auxiliary processor 1223 may be configured to use lower power than the main processor 1221 or to be specified for a designated function. The auxiliary processor 1223 may be implemented as separate from, or as part of the main processor 1221.
The auxiliary processor 1223 may control at least some of functions or states related to at least one component (e.g., the display module 1260, the sensor module 1276, or the communication module 1290) among the components of the electronic device 1201, instead of the main processor 1221 while the main processor 1221 is in an inactive (e.g., sleep) state, or together with the main processor 1221 while the main processor 1221 is in an active state (e.g., executing an application). According to an embodiment, the auxiliary processor 1223 (e.g., an image signal processor or a communication processor) may be implemented as part of another component (e.g., the camera module 1280 or the communication module 1290) functionally related to the auxiliary processor 123. According to an embodiment, the auxiliary processor 1223 (e.g., the neural processing unit) may include a hardware structure specified for artificial intelligence model processing. The artificial intelligence model may be generated via machine learning. Such learning may be performed, e.g., by the electronic device 1201 where the artificial intelligence is performed or via a separate server (e.g., the server 1208). Learning algorithms may include, but are not limited to, e.g., supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. The artificial intelligence model may include a plurality of artificial neural network layers. The artificial neural network may be a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), deep Q-network or a combination of two or more thereof but is not limited thereto. The artificial intelligence model may, additionally or alternatively, include a software structure other than the hardware structure.
The memory 1230 may store various data used by at least one component (e.g., the processor 1220 or the sensor module 1276) of the electronic device 1201. The various data may include, for example, software (e.g., the program 1240) and input data or output data for a command related thereto. The memory 1230 may include the volatile memory 1232 or the non-volatile memory 1234.
The program 1240 may be stored in the memory 1230 as software, and may include, for example, an operating system (OS) 1242, middleware 1244, or an application 1246.
The input module 1250 may receive a command or data to be used by other component (e.g., the processor 1220) of the electronic device 1201, from the outside (e.g., a user) of the electronic device 1201. The input module 1250 may include, for example, a microphone, a mouse, a keyboard, keys (e.g., buttons), or a digital pen (e.g., a stylus pen).
The sound output module 1255 may output sound signals to the outside of the electronic device 1201. The sound output module 1255 may include, for example, a speaker or a receiver. The speaker may be used for general purposes, such as playing multimedia or playing record. The receiver may be used for receiving incoming calls. According to an embodiment, the receiver may be implemented as separate from, or as part of the speaker.
The display module 1260 may visually provide information to the outside (e.g., a user) of the electronic device 1201. The display 1260 may include, for example, a display, a hologram device, or a projector and control circuitry to control a corresponding one of the display, hologram device, and projector. According to an embodiment, the display 1260 may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.
The audio module 1270 may convert a sound into an electrical signal and vice versa. According to an embodiment, the audio module 1270 may obtain the sound via the input module 1250, or output the sound via the sound output module 1255 or a headphone of an external electronic device (e.g., an electronic device 1202) directly (e.g., wiredly) or wirelessly coupled with the electronic device 1201.
The sensor module 1276 may detect an operational state (e.g., power or temperature) of the electronic device 1201 or an environmental state (e.g., a state of a user) external to the electronic device 101, and then generate an electrical signal or data value corresponding to the detected state. According to an embodiment, the sensor module 1276 may include, for example, a gesture sensor, a gyro sensor, an atmospheric pressure sensor, a magnetic sensor, an accelerometer, a grip sensor, a proximity sensor, a color sensor, an infrared (IR) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
The interface 1277 may support one or more specified protocols to be used for the electronic device 1201 to be coupled with the external electronic device (e.g., the electronic device 1202) directly (e.g., wiredly) or wirelessly. According to an embodiment, the interface 1277 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, a secure digital (SD) card interface, or an audio interface.
A connecting terminal 1278 may include a connector via which the electronic device 1201 may be physically connected with the external electronic device (e.g., the electronic device 1202). According to an embodiment, the connecting terminal 1278 may include, for example, a HDMI connector, a USB connector, a SD card connector, or an audio connector (e.g., a headphone connector).
The haptic module 1279 may convert an electrical signal into a mechanical stimulus (e.g., a vibration or motion) or electrical stimulus which may be recognized by a user via his tactile sensation or kinesthetic sensation. According to an embodiment, the haptic module 1279 may include, for example, a motor, a piezoelectric element, or an electric stimulator.
The camera module 1280 may capture a still image or moving images. According to an embodiment, the camera module 1280 may include one or more lenses, image sensors, image signal processors, or flashes.
The power management module 1288 may manage power supplied to the electronic device 1201. According to an embodiment, the power management module 1288 may be implemented as at least part of, for example, a power management integrated circuit (PMIC).
The battery 1289 may supply power to at least one component of the electronic device 1201. According to an embodiment, the battery 1289 may include, for example, a primary cell which is not rechargeable, a secondary cell which is rechargeable, or a fuel cell.
The communication module 1290 may support establishing a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device 1201 and the external electronic device (e.g., the electronic device 1202, the electronic device 1204, or the server 1208) and performing communication via the established communication channel. The communication module 1290 may include one or more communication processors that are operable independently from the processor 1220 (e.g., the application processor (AP)) and supports a direct (e.g., wired) communication or a wireless communication. According to an embodiment, the communication module 1290 may include a wireless communication module 1292 (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 1294 (e.g., a local area network (LAN) communication module or a power line communication (PLC) module). A corresponding one of these communication modules may communicate with the external electronic device 1204 via a first network 1298 (e.g., a short-range communication network, such as Bluetooth™, wireless-fidelity (Wi-Fi) direct, or infrared data association (IrDA)) or a second network 1299 (e.g., a long-range communication network, such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., local area network (LAN) or wide area network (WAN)). These various types of communication modules may be implemented as a single component (e.g., a single chip), or may be implemented as multi components (e.g., multi chips) separate from each other. The wireless communication module 1292 may identify or authenticate the electronic device 1201 in a communication network, such as the first network 1298 or the second network 1299, using subscriber information (e.g., international mobile subscriber identity (IMSI)) stored in the subscriber identification module 1296.
The wireless communication module 1292 may support a 5G network, after a 4G network, and next-generation communication technology, e.g., new radio (NR) access technology. The NR access technology may support enhanced mobile broadband (eMBB), massive machine type communications (mMTC), or ultra-reliable and low-latency communications (URLLC). The wireless communication module 1292 may support a high-frequency band (e.g., the mmWave band) to achieve, e.g., a high data transmission rate. The wireless communication module 1292 may support various technologies for securing performance on a high-frequency band, such as, e.g., beamforming, massive multiple-input and multiple-output (massive MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module 1292 may support various requirements specified in the electronic device 1201, an external electronic device (e.g., the electronic device 1204), or a network system (e.g., the second network 1299). According to an embodiment, the wireless communication module 1292 may support a peak data rate (e.g., 20 Gbps or more) for implementing eMBB, loss coverage (e.g., 164 dB or less) for implementing mMTC, or U-plane latency (e.g., 0.5 ms or less for each of downlink (DL) and uplink (UL), or a round trip of 1 ms or less) for implementing URLLC.
The antenna module 1297 may transmit or receive a signal or power to or from the outside (e.g., the external electronic device). According to an embodiment, the antenna module 1297 may include one antenna including a radiator formed of a conductor or conductive pattern formed on a substrate (e.g., a printed circuit board (PCB)). According to an embodiment, the antenna module 1297 may include a plurality of antennas (e.g., an antenna array). In this case, at least one antenna appropriate for a communication scheme used in a communication network, such as the first network 1298 or the second network 1299, may be selected from the plurality of antennas by, e.g., the communication module 1290. The signal or the power may then be transmitted or received between the communication module 1290 and the external electronic device via the selected at least one antenna. According to an embodiment, other parts (e.g., radio frequency integrated circuit (RFIC)) than the radiator may be further formed as part of the antenna module 1297.
According to various embodiments, the antenna module 1297 may form a mmWave antenna module. According to an embodiment, the mmWave antenna module may include a printed circuit board, a RFIC disposed on a first surface (e.g., the bottom surface) of the printed circuit board, or adjacent to the first surface and capable of supporting a designated high-frequency band (e.g., the mmWave band), and a plurality of antennas (e.g., array antennas) disposed on a second surface (e.g., the top or a side surface) of the printed circuit board, or adjacent to the second surface and capable of transmitting or receiving signals of the designated high-frequency band.
At least some of the above-described components may be coupled mutually and communicate signals (e.g., commands or data) therebetween via an inter-peripheral communication scheme (e.g., a bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)).
According to an embodiment, instructions or data may be transmitted or received between the electronic device 1201 and the external electronic device 1204 via the server 1208 coupled with the second network 1299. The external electronic devices 1202 or 1204 each may be a device of the same or a different type from the electronic device 1201. According to an embodiment, all or some of operations to be executed at the electronic device 1201 may be executed at one or more of the external electronic devices 1202, 1204, or 1208. For example, if the electronic device 1201 should perform a function or a service automatically, or in response to a request from a user or another device, the electronic device 1201, instead of, or in addition to, executing the function or the service, may request the one or more external electronic devices to perform at least part of the function or the service. The one or more external electronic devices receiving the request may perform the at least part of the function or the service requested, or an additional function or an additional service related to the request, and transfer an outcome of the performing to the electronic device 1201. The electronic device 1201 may provide the outcome, with or without further processing of the outcome, as at least part of a reply to the request. To that end, a cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device 1201 may provide ultra low-latency services using, e.g., distributed computing or mobile edge computing. In another embodiment, the external electronic device 1204 may include an Internet-of-things (IoT) device. The server 1208 may be an intelligent server using machine learning and/or a neural network. According to an embodiment, the external electronic device 1204 or the server 1208 may be included in the second network 1299. The electronic device 1201 may be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology or IoT-related technology.
Embodiments of the disclosure may prevent the electronic device 100 using the wireless modem device 110 (e.g., an MBB device) from being incapable of cellular data communication due to expiration of the valid lifetime of the IP address or the router lifetime.
According to embodiments of the disclosure, the electronic device 100 may perform IP reconfiguration based on detecting that expiration of the lifetime may be imminent without the user directly rebooting the electronic device 100 or, after deactivating cellular communication, reactivating cellular communication.
According to embodiments of the disclosure, the electronic device 100 may monitor and/or detect impending expiration of lifetime to actively restore a problem situation, keep the cellular network connection normal and seamless without a user operation, and prevent inconvenience of restoration of a cellular data communication error.
Effects obtainable from the disclosure may not be limited to the above-mentioned effects, and other effects not mentioned may be apparent to one of ordinary skill in the art from the following description.
An electronic device 100, according to an embodiment, may comprise an interface 208, a processor 204 functionally connected to the interface, and memory 206 storing instructions. The instructions may be configured to, when executed by the processor, cause the electronic device to connect a data session for cellular data communication using a wireless modem device 110 connected through the interface. The instructions may be configured to, when executed by the processor, cause the electronic device to receive a first router advertisement (RA) message via the data session. The instructions may be configured to, when executed by the processor, cause the electronic device to obtain at least one lifetime for the data session from the first RA message. The instructions may be configured to, when executed by the processor, cause the electronic device to determine whether the at least one lifetime is updated until a designated time before expiration of the at least one lifetime. The instructions may be configured to, when executed by the processor, cause the electronic device to, if the at least one lifetime is not updated until the designated time before the expiration of the at least one lifetime, transmit a signal requesting an IP reconfiguration to the wireless modem device. The instructions may be configured to, when executed by the processor, cause the electronic device to after transmitting the signal requesting the IP reconfiguration, receive a second RA message from the wireless modem device. The instructions may be configured to, when executed by the processor, cause the electronic device to update the at least one lifetime based on the second RA message.
In an embodiment, the at least one lifetime may include at least one of a valid lifetime of an IP address or a router lifetime.
In an embodiment, the second RA message may include an unsolicited RA message.
In an embodiment, the instructions may be configured to, when executed by the processor, cause the electronic device to start at least one timer set to a time shorter than the at least one lifetime by a designated value, if a third RA message including a new value of the at least one lifetime is received, restart the at least one timer, and to transmit the signal requesting the IP reconfiguration if the at least one timer is terminated.
In an embodiment, the instructions may be configured to, when executed by the processor, cause the electronic device to transmit the signal requesting the IP reconfiguration if a connection status of the data session is normal at the designated time before the expiration of the at least one lifetime.
An electronic device 100, according to an embodiment, may comprise an interface 208, a processor 204 functionally connected to the interface, and memory 206 storing instructions. The instructions may be configured to, when executed by the processor, cause the electronic device to connect a data session for cellular data communication using a wireless modem device 110 connected through the interface. The instructions may be configured to, when executed by the processor, cause the electronic device to receive a first router advertisement (RA) message via the data session. The instructions may be configured to, when executed by the processor, cause the electronic device to obtain at least one lifetime for the data session from the first RA message. The instructions may be configured to, when executed by the processor, cause the electronic device to determine whether the at least one lifetime is updated until a designated time before expiration of the at least one lifetime. The instructions may be configured to, when executed by the processor, cause the electronic device to, if the at least one lifetime is not updated until the designated time before the expiration of the at least one lifetime, transmit a router request (RS) message to a router through the wireless modem device. The instructions may be configured to, when executed by the processor, cause the electronic device to, after transmitting the RS request message, receive a second RA message from the router through the wireless modem device. The instructions may be configured to, when executed by the processor, cause the electronic device to update the at least one lifetime based on the second RA message.
In an embodiment, the at least one lifetime may include at least one of an effective lifetime or a router lifetime of an IP address.
In an embodiment, the second RA message may include a solicited RA message.
In an embodiment, the instructions may be configured to, when executed by the processor, cause the electronic device to start at least one timer set to a time shorter than the at least one lifetime by a designated value, if a third RA message including a new value of the at least one lifetime is received, restart the at least one timer, and to transmit the RS message if the at least one timer is terminated.
In an embodiment, the instructions may be configured to, when executed by the processor, cause the electronic device to transmit the RS message if a connection status of the data session is normal at the designated time before the expiration of the at least one lifetime.
A method for operating an electronic device 100 connected to a wireless modem device 110 according to an embodiment may comprise connecting a data session for cellular data communication using the wireless modem device. The method may comprise receiving a first router advertisement (RA) message via the data session. The method may comprise obtaining at least one lifetime for the data session from the first RA message. The method may comprise determining whether the at least one lifetime is updated until a designated time before expiration of the at least one lifetime. The method may comprise, if the at least one lifetime is not updated until the designated time before the expiration of the at least one lifetime, transmitting a signal requesting an IP reconfiguration to the wireless modem device. The method may comprise, after transmitting the signal requesting the IP reconfiguration, receiving a second RA message from the wireless modem device. The method may comprise updating the at least one lifetime based on the second RA message.
In an embodiment, the at least one lifetime may include at least one of an effective lifetime or a router lifetime of an IP address.
In an embodiment, the second RA message may include an unsolicited RA message.
In an embodiment, requesting the IP reconfiguration may include starting at least one timer set to a time shorter than the at least one lifetime by a designated value, if a third RA message including a new value of the at least one lifetime is received, restarting the at least one timer, and transmitting the signal requesting the IP reconfiguration if the at least one timer is terminated.
In an embodiment, transmitting the signal requesting the IP reconfiguration may include determining to transmit the signal requesting the IP reconfiguration if a connection status of the data session is normal at the designated time before the expiration of the at least one lifetime.
A method for operating an electronic device 100 connected to a wireless modem device 110 according to an embodiment may comprise connecting a data session for cellular data communication using the wireless modem device. The method may comprise receiving a first router advertisement (RA) message via the data session. The method may comprise obtaining at least one lifetime for the data session from the first RA message. The method may comprise determining whether the at least one lifetime is updated until a designated time before expiration of the at least one lifetime. The method may comprise, if the at least one lifetime is not updated until the designated time before the expiration of the at least one lifetime, transmitting a router request (RS) message to a router through the wireless modem device. The method may comprise, after transmitting the RS message, receiving a second RA message from the router through the wireless modem device. The method may comprise updating the at least one lifetime based on the second RA message.
In an embodiment, the at least one lifetime may include at least one of a valid lifetime of an IP address or a router lifetime.
In an embodiment, the second RA message may include a solicited RA message.
In an embodiment, transmitting the RS message may include starting at least one timer set to a time shorter than the at least one lifetime by a designated value, if a third RA message including a new value of the at least one lifetime is received, restarting the at least one timer, and determining to transmit the RS message if the at least one timer is terminated.
In an embodiment, transmitting the RS message may include determining to transmit the RS message if a connection status of the data session is normal at the designated time before the expiration of the at least one lifetime.
The electronic device according to various embodiments of the disclosure may be one of various types of electronic devices. The electronic devices may include, for example, a portable communication device (e.g., a smartphone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance. According to an embodiment of the disclosure, the electronic devices are not limited to those described above.
It should be appreciated that various embodiments of the present disclosure and the terms used therein are not intended to limit the technological features set forth herein to particular embodiments and include various changes, equivalents, or replacements for a corresponding embodiment. With regard to the description of the drawings, similar reference numerals may be used to refer to similar or related elements. It is to be understood that a singular form of a noun corresponding to an item may include one or more of the things, unless the relevant context clearly indicates otherwise. As used herein, each of such phrases as “A or B,” “at least one of A and B,” “at least one of A or B,” “A, B, or C,” “at least one of A, B, and C,” and “at least one of A, B, or C,” may include all possible combinations of the items enumerated together in a corresponding one of the phrases. As used herein, such terms as “1st” and “2nd,” or “first” and “second” may be used to simply distinguish a corresponding component from another, and does not limit the components in other aspect (e.g., importance or order). It is to be understood that if an element (e.g., a first element) is referred to, with or without the term “operatively” or “communicatively”, as “coupled with,” “coupled to,” “connected with,” or “connected to” another element (e.g., a second element), it means that the element may be coupled with the other element directly (e.g., wiredly), wirelessly, or via a third element.
As used herein, the term “module” may include a unit implemented in hardware, software, or firmware, and may interchangeably be used with other terms, for example, “logic,” “logic block,” “part,” or “circuitry”. A module may be a single integral component, or a minimum unit or part thereof, adapted to perform one or more functions. For example, according to an embodiment, the module may be implemented in a form of an application-specific integrated circuit (ASIC).
Various embodiments as set forth herein may be implemented as software (e.g., the program) including one or more instructions that are stored in a storage medium (e.g., internal memory or external memory) that is readable by a machine (e.g., the electronic device). For example, a processor (e.g., the processor) of the machine (e.g., the electronic device) may invoke at least one of the one or more instructions stored in the storage medium, and execute it, with or without using one or more other components under the control of the processor. This allows the machine to be operated to perform at least one function according to the at least one instruction invoked. The one or more instructions may include a code generated by a complier or a code executable by an interpreter. The storage medium readable by the machine may be provided in the form of a non-transitory storage medium. Wherein, the term “non-transitory” simply means that the storage medium is a tangible device, and does not include a signal (e.g., an electromagnetic wave), but this term does not differentiate between where data is semi-permanently stored in the storage medium and where the data is temporarily stored in the storage medium.
According to an embodiment, a method according to various embodiments of the disclosure may be included and provided in a computer program product. The computer program products may be traded as commodities between sellers and buyers. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read only memory (CD-ROM)), or be distributed (e.g., downloaded or uploaded) online via an application store (e.g., Play Store™), or between two user devices (e.g., smart phones) directly. If distributed online, at least part of the computer program product may be temporarily generated or at least temporarily stored in the machine-readable storage medium, such as memory of the manufacturer's server, a server of the application store, or a relay server.
According to various embodiments, each component (e.g., a module or a program) of the above-described components may include a single entity or multiple entities. Some of the plurality of entities may be separately disposed in different components. According to various embodiments, one or more of the above-described components may be omitted, or one or more other components may be added. Alternatively or additionally, a plurality of components (e.g., modules or programs) may be integrated into a single component. In such a case, according to various embodiments, the integrated component may still perform one or more functions of each of the plurality of components in the same or similar manner as they are performed by a corresponding one of the plurality of components before the integration. According to various embodiments, operations performed by the module, the program, or another component may be carried out sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations may be executed in a different order or omitted, or one or more other operations may be added.
Number | Date | Country | Kind |
---|---|---|---|
10-2022-0127533 | Oct 2022 | KR | national |
10-2022-0145460 | Nov 2022 | KR | national |
This application is a continuation application of International Application No. PCT/KR2023/013322, filed on Sep. 6, 2023, which claims priority to Korean Patent Application No. 10-2022-0127533, filed on Oct. 6, 2022, and Korean Patent Application No. 10-2022-0145460, filed on Nov. 3, 2022, in the Korean Intellectual Property Office, the disclosures of which are incorporated by reference herein in their entireties
Number | Date | Country | |
---|---|---|---|
Parent | PCT/KR2023/013322 | Sep 2023 | WO |
Child | 19057360 | US |