WO2016053045A1 - 무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법 - Google Patents

무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법 Download PDF

Info

Publication number
WO2016053045A1
WO2016053045A1 PCT/KR2015/010423 KR2015010423W WO2016053045A1 WO 2016053045 A1 WO2016053045 A1 WO 2016053045A1 KR 2015010423 W KR2015010423 W KR 2015010423W WO 2016053045 A1 WO2016053045 A1 WO 2016053045A1
Authority
WO
WIPO (PCT)
Prior art keywords
dns
communication interface
information
query
transmitting
Prior art date
Application number
PCT/KR2015/010423
Other languages
English (en)
French (fr)
Inventor
쉬지앙웨이
이경훈
김진형
이진호
마노하르 싱흐크리쉬나
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US15/512,389 priority Critical patent/US10448325B2/en
Priority to EP15846781.1A priority patent/EP3203706B1/en
Publication of WO2016053045A1 publication Critical patent/WO2016053045A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0212Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/58Caching of addresses or names
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present invention relates to an apparatus and method for transmitting and receiving data by a terminal in a wireless communication system.
  • Terminals that support multiple wireless access technologies e.g., Long Term Evolution (LTE) and wireless LAN (Wi-Fi), etc.
  • LTE Long Term Evolution
  • Wi-Fi wireless LAN
  • portable terminals use the wireless access technology to perform downloads over WiFi and LTE.
  • HTTP session is performed through the supported communication interface.
  • the portable terminal Before conducting the HTTP session, the portable terminal first needs to obtain a host IP address corresponding to the host name from a DNS (Domain Name Service) server. As such, the procedure for obtaining an IP address is referred to as DNS resolution.
  • DNS resolution the procedure for obtaining an IP address is referred to as DNS resolution.
  • the portable terminal sends a DNS query to the DNS server to obtain an IP address, and receives a DNS response including the IP address in response. DNS queries are sent through the communication interface determined (automatically selected) by default on the portable terminal.
  • a case where a transmission speed of a communication interface determined by default may be slower than that of another communication interface may occur.
  • the portable terminal may send a DNS query through a communication interface that does not support the IP version of the desired host server. It can cause wrong results for resolution.
  • the time for DNS resolution may be longer.
  • a DNS resolution can be obtained through one communication interface, but the other communication interface continues. Because it is active, it can cause power waste. Further, even if the portable terminal obtains a DNS resolution for a DNS query through a first communication interface having a higher transmission speed among the communication interfaces, when the HTTP request is made through a second communication interface having a slow transmission speed, I can't get a quick response to an HTTP request over a communication interface.
  • various embodiments of the present disclosure provide an apparatus and a method for efficiently performing DNS resolution while minimizing power consumption in a portable terminal supporting a multi-RAT technology.
  • a terminal when a terminal receives a Domain Name Service (DNS) query for a host from a Uniform Resource Locator (URL) protocol handler, the DNS cache information and the DNS query are stored in advance. Comparing the DNS query information contained in the; And transmitting the IP (Internet Protocol) address information corresponding to the host to the URL protocol handler according to the comparison result.
  • DNS Domain Name Service
  • URL Uniform Resource Locator
  • Various embodiments of the present invention can minimize the time for the current DNS resolution by using the IP address information stored by the previous DNS resolution.
  • various embodiments of the present disclosure may provide high-speed HTTP access by performing DNS resolution through a communication interface having a high transmission speed among a plurality of communication interfaces.
  • power consumption of a portable terminal may be minimized by maintaining a non-selected communication interface among a plurality of communication interfaces.
  • 1 is a diagram for performing a DNS resolution operation through communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • FIG. 2 is a diagram illustrating a DNS resolution operation through communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • 3 is a diagram for performing a DNS resolution operation through communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • FIG. 4 is a diagram illustrating a DNS resolution operation in a portable terminal having communication interfaces supporting WiFi and 3G / LTE in the portable terminal according to the related art of the present invention.
  • FIG. 5 is a graph illustrating DNS resolution times corresponding to communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • FIG. 6 is a diagram illustrating a DNS resolution operation through communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • FIG. 7 is a block diagram of a portable terminal according to an embodiment of the present invention.
  • FIG. 8 is a flowchart illustrating DNS handling in a mobile terminal according to a first embodiment of the present invention.
  • FIG. 9 is a diagram illustrating a format of information stored in a DNS cache according to an embodiment of the present invention.
  • FIG. 10 is a graph illustrating DNS response replies for each subhandler according to an embodiment of the present invention.
  • FIG. 11 is a flowchart illustrating DNS handling in a mobile terminal according to a second embodiment of the present invention.
  • FIGS. 12A and 12B are flowcharts of mapping IP address information stored in a DNS cache in a portable terminal according to an exemplary embodiment of the present invention.
  • FIG. 13 is a flowchart illustrating transmitting a DNS query in a mobile terminal according to an embodiment of the present invention.
  • FIG. 14 is a graph illustrating an association between thresholds and previous DNS resolution times according to an embodiment of the present invention.
  • FIG. 15 is a graph illustrating a DNS response according to a DNS query corresponding to the association of FIG. 14 according to an embodiment of the present invention.
  • 16 is a flowchart for requesting HTTP according to a DNS response in a portable terminal according to an embodiment of the present invention.
  • 17 is a flowchart illustrating a DNS resolution in a portable terminal according to an embodiment of the present invention.
  • FIG. 18 is a flowchart for transmitting a DNS query signal to a DNS server in a portable terminal according to an embodiment of the present invention.
  • FIG. 19 is a block diagram of a portable terminal according to an embodiment of the present invention.
  • FIG. 20 is a block diagram of a portable terminal including a plurality of communication interfaces having different IP versions according to an embodiment of the present invention.
  • 21 is a diagram illustrating DNS resolution in a mobile terminal according to the first embodiment of the present invention.
  • FIG. 22 is a diagram illustrating DNS resolution in a portable terminal according to a second embodiment of the present invention.
  • FIG. 23 is a diagram illustrating DNS resolution in a mobile terminal according to a third embodiment of the present invention.
  • FIG. 24 is a diagram illustrating DNS resolution in a mobile terminal according to a fourth embodiment of the present invention.
  • 25 is a graph illustrating DNS resolution times for communication interfaces according to an embodiment of the present invention.
  • 26 is a diagram illustrating DNS resolution in a mobile terminal according to a fifth embodiment of the present invention.
  • the module 103 may include a Uniform Resource Locator (URL) protocol handler 105, a DNS handler 107, a Wi-Fi communication interface 109, and a 3G / LTE communication interface 111.
  • URL Uniform Resource Locator
  • the application module 103 may request a host connection (HTTP request) to the URL protocol handler 105 (step (1)).
  • the URL protocol handler 105 is connected to the DNS server 107 and the preset WiFi communication interface 109 together with the DNS server 121.
  • DNS resolution corresponding to IPv4 may be performed, and the web server 131 may be accessed through the WiFi communication interface 109 based on the IP address of the host obtained through the DNS resolution. ((2, 3, 4) steps)
  • the URL protocol handler 105 will pass the IPv4 over the DNS handler 107 and the WiFi communication interface 109.
  • FIG. 2 is a diagram illustrating a DNS resolution operation through communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • the WiFi communication interface has a weak signal
  • the 3G / LTE communication interface has a strong signal.
  • the application module 103 may request a connection of a host (HTTP request) to the URL protocol handler 105.
  • the URL protocol handler 105 performs DNS resolution corresponding to IPv4 for HTTP requests through the DNS handler 107 and the preset WiFi communication interface 109 from the DNS server 121, and obtains the IP of the host obtained through the DNS resolution.
  • the web server 131 may be accessed through the WiFi communication interface 109 based on the address. ((2, 3, 4) steps).
  • the URL protocol handler 105 obtains the IP address of the host by performing a DNS resolution corresponding to IPv4 through the WiFi communication interface 109. can do. ((5, 6) steps)
  • the URL protocol handler 105 may send an HTTP request to the web server 131 via the 3G / LTE communication interface 111 based on the obtained IP address. (Step 7)
  • the 3G / LTE communication interface 111 has a high transfer rate (for example, 0.5 [sec]), DNS resolution (transmission of DNS queries requesting the IP address of the host and As a result, the DNS response reception may be performed through the WiFi communication interface 109 having a weak signal, so that it may take a long time (eg, 10 [sec]) for the DNS resolution.
  • a high transfer rate for example, 0.5 [sec]
  • DNS resolution transmission of DNS queries requesting the IP address of the host and
  • the DNS response reception may be performed through the WiFi communication interface 109 having a weak signal, so that it may take a long time (eg, 10 [sec]) for the DNS resolution.
  • 3 is a diagram for performing a DNS resolution operation through communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • the portable terminal 101 may include an application module 103, a URL protocol handler 105, a DNS handler 107, a WiFi communication interface 109, and a 3G / LTE communication interface 111.
  • the DNS handler 107 may include a controller 301, a subhandler 1 303, and a subhandler 2 305.
  • the sub handler 1 303 is connected to the WiFi communication interface 109 and, upon receiving a DNS query, may transmit the DNS query to the Wi-Fi DNS server 121 through the WiFi communication interface 109.
  • the subhandler 1 303 may receive a DNS response from the Wi-Fi DNS server 121 through the WiFi communication interface 109 in response to the DNS query.
  • the DNS response may include the IP address of the host.
  • the sub handler 2 305 is connected to the 3G / LTE communication interface 111 and, when receiving the DNS query, may transmit the DNS query to the 3G / LTE DNS server 311 through the 3G / LTE communication interface 111.
  • the subhandler 2 305 may receive a DNS response from the 3G / LTE DNS server 311 through the 3G / LTE communication interface 111 in response to the DNS query.
  • the controller 301 may control the sub handler 1 303 and the sub handler 2 305.
  • the controller 301 may transmit the DNS query through at least one of the subhandler 1 303 and the subhandler 2 305.
  • the controller 301 may transmit a DNS query to both the WiFi communication interface 109 and the 3G / LTE communication interface 111 through the sub handler 1 303 and the sub handler 2 305. For example, if the transmission speed of the WiFi communication interface 109 is faster than the 3G / LTE communication interface 111, the WiFi communication interface 109 and the 3G / LTE communication interface 111 switch from the idle state to the active state at time point 323 as shown in the graph 321. After that, the DNS query can be sent.
  • the WiFi communication interface 109 may receive a DNS response at time 2 325, and switch the active state to an idle state.
  • the 3G / LTE communication interface 111 may receive a DNS response at time 3327 and switch the active state to the idle state.
  • the 3G / LTE communication interface 111 may cause power waste by being active for a period of time 329 (time 2 325 to time 3 327) even after receiving a DNS response through the WiFi communication interface 109.
  • FIG. 4 is a diagram illustrating a DNS resolution operation in a portable terminal having communication interfaces supporting WiFi and 3G / LTE in the portable terminal according to the related art of the present invention.
  • the DNS query is a WiFi communication interface 109 and 3G. Suppose that it is sent to one of the / LTE communication interfaces 111.
  • the controller 301 transmits a DNS query for "A.COM" to the Wi-Fi DNS server 121 through the sub handler 1 303 and the WiFi communication interface 109.
  • the DNS response may be received from the WiFi DNS server 121 through the WiFi communication interface 109.
  • the 3G / LTE communication interface 111 may be in an inactive state (idle state).
  • the controller 301 sends a DNS query for "A.COM" to the 3G / L via the subhandler 2 305 and the 3G / LTE communication interface 111.
  • the controller 301 can perform DNS resolution via the 3G / LTE communication interface 111.
  • the 3G / LTE communication interface in that it already performs a DNS resolution for "A.COM” via WiFi communication interface 109 and then again performs a DNS resolution for "A.COM” via 3G / LTE communication interface 111.
  • the unnecessary operation of 111 may result in power consumption.
  • the time for DNS resolution may be delayed in that the DNS response is re-received via the 3G / LTE communication interface 111.
  • FIG. 5 is a graph illustrating DNS resolution times corresponding to communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • the operation time 505 of the DNS resolution through the 3G / LTE communication interface 111 is determined by the DNS resolution through the WiFi communication interface 109.
  • the operating time is shorter than 503.
  • the URL protocol handler 105 may receive a quick response to the HTTP request.
  • the URL protocol handler 105 may not receive a quick response to the HTTP request when the HTTP request is made through the WiFi communication interface 109.
  • FIG. 6 is a diagram illustrating a DNS resolution operation through communication interfaces supporting WiFi and 3G / LTE in a portable terminal according to the related art of the present invention.
  • a DNS resolution mechanism using a multi-radio access technology is applicable from a second URL request (HTTP request). Accordingly, DNS resolution by the first URL request may be performed through a plurality of communication interfaces preset communication interface.
  • the portable terminal cannot efficiently perform the DNS resolution.
  • FIG. 7 is a block diagram of a portable terminal according to an embodiment of the present invention.
  • the portable terminal 701 may include an application module 703, a URL protocol handler 705, a DNS handler 707, a WiFi communication interface 719, and a 3G / LTE communication interface 721.
  • the DNS handler 707 may include a controller 709, a network state manager 711, a subhandler 1 713, a subhandler 2 715, and a DNS cache 717.
  • the controller 709 may be called a controller.
  • the network state manager 711 may detect the connection state of the WiFi communication interface 719 and the 3G / LTE communication interface 721, and store history information on DNS resolution time of each communication interface.
  • the DNS cache 717 may match and store the name and IP address of the host and the IP version and ID of the communication interface that received the IP address.
  • the DNS cache 717 searches for an IP address corresponding to the received host information among the stored host IP addresses, The retrieved IP address can be sent to the controller 709.
  • the DNS cache 717 may transmit the retrieved IP address and information about the corresponding communication interface (eg, ID and IP version of the communication interface) together.
  • the controller 709 may receive a DNS query from the URL protocol handler 705 and transmit the IP address of the host according to the DNS query to the URL protocol handler 705 in response to the DNS query.
  • the controller 709 may check the DNS cache 717 and the network state manager 711 and determine an operation to perform a DNS query.
  • the controller 709 may transmit the searched IP address to the URL protocol handler 705.
  • the controller 709 transmits the DNS query simultaneously through the plurality of communication interfaces or transmits the plurality of communications according to a preset condition. Among the interfaces, it can transmit through a relatively fast communication interface.
  • the preset condition may include whether transmission rates of the plurality of communication interfaces are substantially the same or which communication interface among the plurality of communication interfaces has a relatively high transmission rate. This preset condition may be determined based on history information on DNS resolution time stored in the network state manager 711.
  • the subhandler 1 713 may be connected to the WiFi communication interface 719 and the subhandler 2 715 may be connected to the 3G / LTE communication interface 721.
  • the DNS handler 709 may include a plurality of subhandlers for the DNS resolution mechanism using Multi-RAT.
  • the WiFi communication interface 719 is wirelessly connected to the WiFi DNS server 731, and the 3G / LTE communication interface 721 is wirelessly connected to the 3G / LTE DNS server 741.
  • FIG. 8 is a flowchart illustrating DNS handling in a mobile terminal according to a first embodiment of the present invention.
  • the application module 703 may transmit the received HTTP request to the URL protocol handler 705.
  • the URL protocol handler 705 may transmit a DNS query to the DNS handler 707.
  • the controller 709 of the DNS handler 707 may check whether a name of a host requesting a DNS query exists in the DNS cache 717. As a result of the check, if the IP address exists in the DNS cache 717, the controller 709 may proceed to step S807, otherwise, proceed to step S809.
  • the DNS cache 717 may store an IP address for a specific host as shown in FIG. 9.
  • the IP address may be stored with the ID of the particular communication interface that received the DNS response, including the IP version of communication interface X, the host name and the IP address, such as 901 through 907.
  • the controller 709 may search for an IP address matching the host name and the IP version of the communication interface X among the IP addresses stored in the DNS cache 717 and return the retrieved IP address to the URL protocol handler 705.
  • the controller 709 may transmit an IP address matching the ID of a preset communication interface among the plurality of IP addresses to the URL protocol handler 705.
  • the controller 709 may transmit another IP address to the URL protocol handler 705.
  • the controller 709 may determine that a cache error has occurred and proceed to step S809.
  • the cache error means that an IP address having the same host name among the IP addresses stored in the DNS cache 717 is different, or an IP address having the same host name does not exist.
  • the controller 709 can identify all communication interfaces having the same IP version as the communication interface X among the plurality of communication interfaces.
  • the communication interface having the same IP version as the communication interface X is called a valid communication interface
  • the effective communication interface means a communication interface connected with the IP address of the host.
  • the controller 709 may check the number of valid communication interfaces. As a result of the check, if there is no effective communication interface, the controller 709 may proceed to step S813. If there is one effective communication interface, the controller 709 may proceed to step S815, and if there are two or more effective communication interfaces, the controller 709 may proceed to step S823.
  • controller 709 may transmit information to the URL protocol handler 705 that no valid communication interface exists.
  • the controller 709 is connected to a corresponding communication interface (eg, one of the WiFi communication interface 719 and the 3G / LTE communication interface 721) (eg, one of the subhandler 1 713 and the subhandler 2 715).
  • DNS queries can be sent to
  • the subhandler may generate a DNS query packet and transmit the DNS query packet to a DNS server (one of the WiFi DNS server 731 and the 3G / LTE DNS server 741) through the corresponding communication interface.
  • the subhandler may receive a DNS response packet from the DNS server and transmit the received DNS response packet to the controller 709.
  • the DNS response packet may include the host's IP address.
  • the controller 709 may return the IP address according to the DNS response to the URL protocol handler 705 and then store it in the DNS cache 717.
  • the controller 709 may return the identifier of the communication interface that received the DNS response together with the IP address.
  • the controller 709 may store an IP address in a format as shown in FIG. 9.
  • each of the subhandlers eg, subhandler 1 713 and subhandler 2 715) connected to valid communication interfaces (eg, WiFi communication interface 719 and 3G / LTE communication interface 721). DNS queries can be sent.
  • each of the subhandlers may generate a DNS query packet and transmit a DNS query packet to a DNS server (one of a WiFi DNS server 731 and a 3G / LTE DNS server 741) through a corresponding communication interface.
  • a DNS query can be sent simultaneously over a plurality of valid communication interfaces.
  • the DNS query may be sequentially transmitted through a plurality of valid communication interfaces.
  • the communication interface through which the DNS query is preferentially transmitted may be set in consideration of the DNS resolution time and low power consumption.
  • the subhandler may sequentially receive DNS response packets from DNS servers and transmit the received DNS response packets to the controller 709.
  • the controller 709 may return the IP address according to the earliest received DNS response to the URL protocol handler 705 and then store it in the DNS cache 717. In this case, the controller 709 may return the identifier of the communication interface that received the DNS response together with the IP address.
  • the controller 709 may store the IP address according to the DNS response received thereafter in the DNS cache 717.
  • a URL protocol handler 705 receives a new HTTP request for a host from an application module 703. And send a DNS query to DNS handler 707.
  • the controller 709 of the DNS handler 707 may receive a DNS query and check the IP version of the communication interface X indicating the host name and the HTTP request.
  • the controller 709 may determine whether an IP address corresponding to the host name and the IP version identified in the DNS cache exists. As a result of the check, if the IP address exists, the controller 709 may proceed to step S1107, otherwise, proceed to step S1109.
  • the controller 709 may return IP address information (eg, an IP address) corresponding to the checked host name and IP version among the IP addresses stored in the DNS cache 717 and return the URL protocol handler 705. If the process proceeds to step S1109, the controller 709 can transmit a DNS query to the DNS server through all valid communication interfaces.
  • the controller 709 may receive a DNS response in response to a DNS query from a DNS server, and store the received DNS response in the DNS cache 717.
  • the controller 709 may first transmit an IP address corresponding to the received DNS response to the URL protocol handler 705.
  • the controller 709 may be performed by reversing the order of steps S1111 and S1113.
  • the controller 709 may first transmit an IP address corresponding to the received DNS response to the URL protocol handler 705 and then store it in the DNS cache 717.
  • the controller 709 may store the IP address corresponding to the received DNS response in the DNS cache 717 without replying.
  • FIGS. 12A and 12B are flowcharts of mapping IP address information stored in a DNS cache in a portable terminal according to an exemplary embodiment of the present invention.
  • the URL protocol handler 705 may transmit a DNS query according to the determined communication interface to the DNS handler 707.
  • the URL protocol handler 705 may transmit the DNS mapping request to the DNS handler 707 together with the URL query signal.
  • the DNS mapping request can include identification information (eg, InfX) and host name (eg, Host X) of the communication interface.
  • the controller 709 of the DNS handler 707 may obtain an IP version (eg, IPvX) of the communication interface from the identification information (eg, InfX) of the communication interface.
  • the controller 709 may search the DNS cache 717 for IP address information mapped to a host name (eg, Host X) and an IP version (eg, IPvX).
  • the controller 709 may check the number of mapped IP address information. If the mapped IP address information does not exist, the controller 709 proceeds to step S1209, if the mapped IP address information is one, proceeds to step S1211, and if the mapped IP address information is two or more, step S1213. You can proceed to.
  • step S1209 the controller 709 may determine that the cache error Miss. If the process proceeds to step S1211, the controller 709 may transmit the mapped IP address information to the URL protocol handler 705.
  • the controller 709 may determine whether there is IP address information that matches the identification information (eg, InfX) of the communication interface among the mapped IP address information. As a result of the determination, if there is matching IP address information, the controller 709 may proceed to step S1215, otherwise, proceed to step S1217.
  • the identification information eg, InfX
  • the controller 709 may transmit IP address information corresponding to identification information (eg, InfX) of the communication interface to the URL protocol handler 705.
  • IP address information corresponding to identification information (eg, InfX) of the communication interface
  • the communication priority may be set in advance in consideration of the degree of power consumption or the transmission speed.
  • the Wi-Fi communication interface 719 may be set to the first priority
  • the 3G / LTE communication interface 721 may be set to the second priority.
  • the URL protocol handler 705 may transmit a URL query according to an undetermined communication interface to the DNS handler 707.
  • the URL protocol handler 705 may transmit the DNS mapping request to the DNS handler 707 along with the URL query.
  • the DNS mapping request may include only a host name (eg, Host X).
  • the controller 709 of the DNS handler 707 may search the DNS cache 717 for IP address information mapped to the host name (eg, Host X).
  • the controller 709 may check the number of mapped IP address information. As a result of the check, if the IP address information does not exist, the controller 709 may proceed to step S1227, if the IP address information is one, proceed to step S1229, and if the IP address information is two or more, proceed to step S1231. .
  • the controller 709 may determine that it is a cache error. If the process proceeds to step S1229, the controller 709 may transmit the mapped IP address information to the URL protocol handler 705. If proceeding to step S1231, the controller 709 may transmit IP address information having a high communication priority among the two or more mapped IP address information to the URL protocol handler 705.
  • FIG. 13 is a flowchart illustrating transmitting a DNS query in a mobile terminal according to an embodiment of the present invention. Assume that the communication interface Inf1 is a communication interface preset for power saving.
  • the controller 709 may use the previous DNS resolution time (first DNS) of communication interface 1 (eg, WiFi communication interface 719) based on history information of DNS resolution time for each communication interface stored in the network state manager 711. Resolution Time, Inf1 Time).
  • the controller 709 may determine whether the first DNS resolution time of the communication interface 1 is less than a first threshold time (eg, a minimum time value for DNS resolution). As a result of the check, if the first DNS resolution time is less than the first threshold time, the controller 709 may proceed to step S1309, otherwise, proceed to step S1305.
  • a first threshold time eg, a minimum time value for DNS resolution
  • the controller 709 determines that the first DNS resolution time of the communication interface 1 is equal to the previous DNS resolution time (the second DNS resolution time, Inf2 Time) of the communication interface 2 (eg, the 3G / LTE communication interface 721). As a reference, it may be determined whether the present time is within the second threshold time range.
  • the second threshold time is a predetermined value. As a result of the check, if the first DNS resolution time is within the second threshold time range of the second DNS resolution time, the controller 709 may proceed to step S1307, otherwise, proceed to step S1309.
  • the controller 709 determines that the transmission rates between the plurality of communication interfaces 1 and 2 are about the same, and transmits a DNS query to the DNS server through the plurality of communication interfaces 1 and 2. For example, as shown in FIG. 14A, when the first DNS resolution time 1401 of the communication interface 1 exists within the second threshold time range based on the second DNS resolution time of the communication interface 2, the controller 709 may be configured to have a control function of the controller 709 of FIG. 15. As shown in (a), a DNS query may be simultaneously transmitted to DNS servers through a plurality of communication interfaces 1 and 2 (for example, WiFi communication interface 719 and 3G / LTE communication interface 721) at time 1501.
  • a DNS query may be simultaneously transmitted to DNS servers through a plurality of communication interfaces 1 and 2 (for example, WiFi communication interface 719 and 3G / LTE communication interface 721) at time 1501.
  • the controller 1309 determines that the transmission speed of the communication interface 1 is faster than the communication interface 2, and transmits a DNS query through the communication interface 1. For example, as shown in (b) or (c) of FIG. 14, the first DNS resolution time 1403 is less than the first threshold time or the first DNS resolution time 1405 is outside the second threshold time range of the second DNS resolution time.
  • the controller 709 may transmit a DNS query to the DNS server through communication interface 1 (eg, WiFi communication interface 719) at time 1503.
  • the controller 709 may determine whether a DNS response to the transmitted DNS query is received within a third threshold time.
  • the third threshold time may be a predetermined value or an average DNS resolution time of DNS resolution times for communication interfaces. As a result of the check, if the DNS response is received within the third threshold time, the controller 709 may terminate the DNS query transmission procedure. Alternatively, if the DNS response is not received within the third threshold time, the controller 709 may proceed to step S1313.
  • the controller 709 may determine whether communication interface 2 is activated. As a result of the check, when the communication interface 2 is activated, the controller 709 may proceed to step S1317, otherwise, proceed to step S1315. If the process proceeds to step S1315, the controller 709 may activate the communication interface 2. For example, the controller 709 can switch the communication interface 2 from the idle state to the active state.
  • the controller 709 may transmit a DNS query to the DNS server through the activated communication interface 2. For example, as shown in FIG. 15C, when the third threshold time elapses to the time point 1503, the controller 709 may transmit a DNS query through the communication interface 2 at time point 1505.
  • FIG. 14 is a graph illustrating an association between thresholds and previous DNS resolution times according to an embodiment of the present invention
  • FIG. 15 is a DNS query corresponding to the association of FIG. 14 according to an embodiment of the present invention.
  • FIG. 14A illustrates that a first DNS resolution time 1401 of communication interface 1 is greater than a first threshold time 1 min and a second DNS resolution time Inf2 time of communication interface 2. It is a graph showing the case of falling within the threshold 2 range.
  • the controller 709 sends a DNS query to DNS servers through all communication interfaces (WiFi and 3G / LTE), and receives DNS responses from DNS servers. Can be stored (cached) in the DNS cache 717.
  • the controller 709 may transmit IP address information corresponding to the received DNS response to the URL protocol handler 705.
  • FIG. 14B is a graph showing the case where the first DNS resolution time 1403 of the communication interface 1 is less than the first threshold time
  • FIG. 14C shows the first DNS resolution time 1405 of the communication interface 1 being the first. It is a graph showing the case where it is larger than the threshold time and falls outside the second threshold time range of the second DNS resolution time of communication interface 2.
  • the controller 709 transmits a DNS query to the DNS server through communication interface 1 (eg, WiFi communication interface 719).
  • the DNS response can be received from the DNS server through communication interface 1 and stored.
  • the controller 709 may transmit IP address information corresponding to the received DNS response to the URL protocol handler 705.
  • the controller 709 transmits a DNS query to a DNS server through a communication interface 2 (for example, 3G / LTE communication interface 721) instead of the communication interface 1, and receives and stores (caches) a DNS response from the DNS server.
  • the controller 709 may transmit IP address information corresponding to the received DNS response to the URL protocol handler 705.
  • information about a DNS response may be stored in DNS cache 717 or network state manager 711.
  • the information about the DNS response may be used as information for determining the network status for the next DNS query transmission.
  • the controller 709 when transmitting IP address information corresponding to the DNS response received through the plurality of communication interfaces (WiFi and 3G / LTE communication interfaces 719 and 721) to the URL protocol handler 705, the controller 709 identifies each of the communication interfaces. Communication interface identification information may be transmitted to the URL protocol handler 705 together with the IP address information.
  • 16 is a flowchart for requesting HTTP according to a DNS response in a portable terminal according to an embodiment of the present invention.
  • the DNS handler 707 may check whether a DNS query is transmitted through one communication interface. For example, the DNS handler 707 may determine a communication interface to transmit a DNS query based on the DNS resolution time for each communication interface.
  • the DNS handler 707 may proceed to step S1603, otherwise, proceed to step S1605.
  • the DNS handler 707 may simultaneously transmit a DNS query through a plurality of communication interfaces. If the process proceeds to step S1605, the DNS handler 707 may transmit a DNS query to the DNS server through the communication interface 1. In operation S1607, the DNS handler 707 may confirm that a predetermined time (for example, the third threshold time) elapses after transmitting the DNS query. In operation S1609, the DNS handler 707 activates communication interface 2, and in operation S1611, transmits a DNS query to the DNS server through communication interface 2. That is, the DNS handler 707 may sequentially transmit DNS queries through the plurality of communication interfaces by performing steps S1605 to S1611.
  • a predetermined time for example, the third threshold time
  • the DNS handler 707 may receive a DNS response through the plurality of communication interfaces.
  • the DNS handler 707 may transmit IP address information corresponding to the received DNS response to the URL protocol handler 705 together with the corresponding communication interface identification information.
  • the URL protocol handler 705 may determine through which communication interface the received IP address information is received by checking the received communication interface identification information. According to the determination result, the URL protocol handler 705 may transmit an HTTP request through a communication interface corresponding to the received IP address information.
  • FIG. 17 is a flowchart of performing a DNS resolution in a portable terminal according to an embodiment of the present disclosure.
  • operation S1701 when the DNS handler 707 receives a DNS query for a host from a URL protocol handler 705, DNS cache information stored in a memory may be compared with DNS query information included in the DNS query.
  • the memory is a component corresponding to the DNS cache 717 of FIG.
  • the DNS cache information may include host name information, communication interface identification information, IP version information corresponding to the communication interface, and IP address information corresponding to the host name.
  • the host name information, the communication interface identification information, the IP version information corresponding to the communication interface, and the IP address information corresponding to the host name may be mapped to each other.
  • the DNS cache information 901 stored in the memory includes IPv6 corresponding to IP version information, ABC corresponding to host name information, Inf0 corresponding to communication interface identification information, and IP address. IP0 corresponding to the information may be included.
  • the DNS cache information 903 may include IPv4 corresponding to IP version information, ABC corresponding to host name information, Inf1 corresponding to communication interface identification information, and IP1 corresponding to IP address information.
  • the DNS cache information 905 includes Inf0 and Inf1 corresponding to communication interface identification information, and ABC2 corresponding to IP version information, and IP2 and IP3 corresponding to IP address information, along with ABC corresponding to IPv6 and host name information. can do.
  • the DNS cache information may include one IP version information and host name information, a plurality of different communication interface identification information, and a plurality of different IP address information.
  • the DNS cache information 907 includes Inf0 and Inf1 corresponding to communication interface identification information, and IP4 and NoHost corresponding to IP address information, along with ABC corresponding to IPv6 and host name information corresponding to IP version information. can do.
  • NoHost means that IP address information of a host mapped to IP version information, host name information, and communication interface identification information does not exist.
  • the DNS query information may include communication interface identification information, IP version information corresponding to the communication interface, host name information, and the like.
  • the communication interface identification information, the IP version information, and the host name information are information for obtaining IP address information of the host.
  • the DNS handler 705 may proceed to step S1703, otherwise, proceed to step S1705.
  • the DNS handler 707 may transmit IP address information of the matching DNS cache information to the URL protocol handler 705. For example, if the IP version information and / or host name information included in each of the plurality of DNS cache information matches the IP version information and / or host name information included in the DNS query information, the DNS handler 707 may set the IP version information. And / or IP address information corresponding to the host name information may be transmitted to the URL protocol handler 705.
  • the DNS handler 707 may display the IP among the DNS cache information 901 to 907.
  • DNS cache information 903 having a version of IPv4 and a host name of ABC may be searched, and communication interface identification information Inf1 and IP address information IP1 included in the retrieved DNS cache information may be transmitted to the URL protocol handler 705.
  • the DNS cache information 905 is the IP version information.
  • DNS handler 707 is included in DNS cache information 905 because it includes IPv6 corresponding to ABC and ABC corresponding to host name information, Inf0 and Inf1 corresponding to communication interface identification information, and IP2 and IP3 corresponding to IP address information.
  • the communication interface identification information Inf0 and the IP address information IP2 may be transmitted to the URL protocol handler 705, or the communication interface identification information Inf1 and IP address information IP3 may be transmitted to the URL protocol handler 705.
  • DNS handler 707 is one IP address according to a preset method from among the plurality of IP address information
  • the information can be selected and sent to the URL protocol handler 705.
  • the preset method may be to select IP address information that consumes relatively little power among the plurality of IP address information, or to select IP address information corresponding to a communication interface having a high transmission speed among the IP address information. Can be.
  • the DNS handler 707 The IP address information IP2 corresponding to the communication interface identification information Inf0 may be transmitted to the URL protocol handler 705.
  • the DNS cache information 907 is the IPv6 corresponding to the IP version information.
  • the DNS handler 707 identifies the communication interface included in the DNS cache information 907.
  • the information Inf1 and the IP address information IP4 may be transmitted to the URL protocol handler 705.
  • the DNS handler 707 may not transmit the communication interface identification information Inf0 and the corresponding NoHost information to the URL protocol handler 705.
  • the DNS handler 707 may transmit a DNS query to the DNS server through at least one communication interface. Step S1705 will be described in detail later with reference to FIG. 18.
  • the DNS handler 707 may receive a DNS response including IP address information in response to a DNS query from the DNS server.
  • the DNS handler 707 may receive a DNS response corresponding to a DNS query from the DNS server through the network.
  • DNS responses can be received via a communication interface that sends DNS queries to a DNS server.
  • the DNS handler 707 may receive a DNS response through the WiFi communication interface 719.
  • the DNS handler 707 may receive a DNS response through the 3G / LTE communication interface 721.
  • the DNS handler 707 may store IP address information included in the received DNS response and transmit the information to the URL protocol handler 705. For example, when a DNS response is received through each of the plurality of communication interfaces, the DNS handler 707 may first transmit IP address information corresponding to the received DNS response to the URL protocol handler 705.
  • the DNS handler 707 may transmit the communication interface identification information that receives the DNS response to the URL protocol handler 705 together with the IP address information. For example, if a DNS response is received via 3G / LTE communication interface 721, DNS handler 707 sends the IP address information included in the received DNS response and identification information of 3G / LTE communication interface 721 to URL protocol handler 705. Can be. Accordingly, the URL protocol handler 705 may determine through which communication interface the received IP address information is first received by checking the communication interface identification information together with the IP address information. The URL protocol handler 705 may first transmit an HTTP request through a communication interface corresponding to the received IP address information.
  • IP address information included in the received DNS response may be stored in memory as DNS cache information.
  • the DNS cache information may include IP version information, host name information, communication interface identification information, and IP address information received from a DNS server corresponding to the received DNS response.
  • DNS cache information stored in memory may be used as information for subsequent DNS resolution.
  • the DNS handler 705 may determine at least one communication interface among the plurality of communication interfaces and transmit a DNS query to the DNS server through the determined communication interface.
  • the DNS handler 705 may determine any one of a plurality of communication interfaces according to a preset method.
  • the preset method may be selecting a communication interface that consumes relatively little power among a plurality of communication interfaces or selecting a communication interface having a high transmission speed.
  • the DNS handler 705 may query the WiFi communication interface 719 for DNS query. This can be determined by the communication interface for transmission to the DNS server.
  • the DNS handler 705 determines whether a first DNS resolution time inf1 time through a communication interface 1 corresponding to one of two or more communication interfaces is less than or equal to a first threshold time.
  • the first DNS resolution time means the time required according to the previous DNS resolution by the first communication interface. That is, the time elapsed to achieve DNS resolution through communication interface 1 in the previous process.
  • Such a first DNS resolution time may be stored in the network state manager 711 described later.
  • the DNS handler 705 may determine whether the first DNS resolution time 1403 (Inf1 Time) of the communication interface 1 is less than or equal to the first threshold time (Min Threshold 1).
  • the DNS handler 705 may proceed to S1807, otherwise, proceed to S1803.
  • the DNS handler 705 may determine that the first DNS resolution time is within the second threshold time range based on the second DNS resolution time through the communication interface 2 corresponding to the other one of the two or more communication interfaces. It can be determined whether it exists.
  • the second DNS resolution time means the time required according to the previous DNS resolution by the communication interface 2. That is, the time elapsed to achieve DNS resolution through communication interface 2 in the previous process.
  • This second DNS resolution time may also be stored in the network state manager 711. For example, as shown in 14, the DNS handler 705 may determine that the first DNS resolution time is equal to the second DNS resolution time when the first DNS resolution time 1401 of the communication interface 1 is greater than the first threshold time Min Threshold1. It may be determined whether it is within the second threshold time range Threshold2 of Inf2 Time).
  • the DNS handler 705 may proceed to step S1805, otherwise, proceed to step S1807.
  • the DNS handler 705 may transmit a DNS query to the DNS server 1 and the DNS server 2 through the communication interface 1 and the communication interface 2. For example, as shown in FIG. 14A, the first DNS resolution time Inf1 of communication interface 1 exceeds the first threshold time Min Threshold1 and the second DNS resolution time of communication interface 2 is shown. If it falls within the second threshold time range Threshold2 of Inf2 Time, the DNS handler 705 forwards the DNS query through all communication interfaces (WiFi and 3G / LTE), as shown in FIG. Can send to server 1 and DNS server 2 respectively.
  • the DNS handler 705 may transmit a DNS query to the DNS server 1 through the communication interface 1.
  • the DNS handler 705 of FIG. 14B when the first DNS resolution time Inf1 time of the communication interface 1 is less than or equal to the first threshold time Min Threshold1, the DNS handler 705 of FIG. As shown in (b), the DNS query may be transmitted to the DNS server 1 through the first communication interface (WiFi). As another example, as shown in FIG. 14C, the first DNS resolution time Inf1 time of the communication interface 1 is greater than the first threshold time Min Threshold1, and the second DNS resolution time of the communication interface 2 may be determined. If not within the second threshold time range Threshold2 of Inf2 Time, the DNS handler 705 may send a DNS query to DNS server 2 via communication interface 1 (WiFi), as shown in FIG. have.
  • WiFi communication interface 1
  • the DNS handler 705 may determine whether a DNS response corresponding to the transmitted DNS query is received within a third threshold time.
  • the third threshold time means an average time for DNS resolution.
  • the average time for DNS resolution means the sum of the time of each DNS resolution divided by the number of DNS resolutions.
  • the DNS handler 705 may terminate the DNS query transmission procedure. Alternatively, if the DNS response is not received within the third threshold time, the DNS handler 705 may proceed to step S1811.
  • the DNS handler 705 may transmit a DNS query to the DNS server 2 through the communication interface 2 among the two or more communication interfaces.
  • the DNS query has been sent to DNS server 1 via communication interface 1
  • the failure to receive a DNS response within the third threshold time means that the transmission speed of communication interface 1 is slow. Therefore, at this time, as shown in FIG. 15C, the DNS handler 705 queries the DNS server 2 via a communication interface other than communication interface 1 (WiFi), that is, communication interface 2 (3G / LTE). Can be transmitted.
  • WiFi communication interface 1
  • FIG. 19 is a block diagram of a portable terminal according to an embodiment of the present invention.
  • the DNS resolution device 1901 is provided in a portable terminal.
  • the portable terminal includes a URL protocol handler 1913, a communication interface 1 1915, and a communication interface 2 1917 in addition to the DNS resolution device 1901.
  • the components are not shown.
  • DNS server 1 1921 and DNS server 2 1931 are shown.
  • FIG. 19 illustrates two DNS subhandlers and communication interfaces, respectively, this is merely exemplary and the number may increase as necessary.
  • the portable terminal may be a smart phone, a tablet personal computer, a mobile phone, a video phone, an e-book reader, a netbook computer, a personal digital assistant (PDA). assistant, portable multimedia player, MP3 player, mobile medical device, camera, or wearable device (e.g. head-mounted-device (HMD) such as electronic glasses, electronic clothing, electronics) Bracelets, electronic necklaces, electronic accessories, electronic tattoos, or smart watches.
  • HMD head-mounted-device
  • the DNS resolution device 1901 includes a memory 1905, a controller 1903, a network state manager 1907, a DNS subhandler 1 1909, and a DNS subhandler 2 1911.
  • the memory 1905 stores DNS cache information.
  • the memory 1905 may mutually map and store host name information, communication interface identification information, IP version information corresponding to the communication interface, IP address information corresponding to the host name, and the like.
  • the DNS cache information may include the same IP version information and host name information, communication interface identification information, and IP address information.
  • the memory 1905 may store at least one DNS cache information.
  • the controller 1903 When the controller 1903 receives a DNS query for a host from the URL protocol handler 1913, the controller 1903 compares the DNS cache information stored in the memory 1905 with the DNS query information included in the DNS query, and according to the comparison result of the DNS cache information and the DNS query information, The IP address information corresponding to the host is transmitted to the URL protocol handler 1913.
  • the DNS query information may include communication interface identification information, IP version information and host name information.
  • the controller 1903 accesses the memory 1905 and, if the IP version information and / or host name information included in the DNS cache information matches the IP version information and / or host name information included in the DNS query information, the IP version information and / or The IP address information corresponding to the host name information is transmitted to the URL protocol handler 1913.
  • the controller 1903 transmits the IP address information according to a preset method among the two or more IP address information to the URL protocol handler 1913. At this time, the controller 1903 consumes relatively little power among two or more pieces of IP address information, or transmits IP address information corresponding to a communication interface having a high transmission speed, to the URL protocol handler 1913.
  • the DNS subhandler 1 1909 and the DNS subhandler 2 1911 transmit DNS queries to the DNS server 1 1921 and the DNS server 2 1931 through the communication interface 1 1915 and the communication interface 2 1917, respectively, under the control of the controller 1903.
  • the controller 1903 accesses the memory 1905, and if the IP version information and the host name information included in the DNS cache information do not match the IP version information and the host name information included in the DNS query information, the controller 1903 transmits the DNS query to the communication interface 1 1915 and the communication. Controls transmission to DNS server 1 1921 and DNS server 2 1931 through at least one communication interface of interface 2 1917. Subsequently, upon receiving from the DNS server 1 1921 and / or DNS server 2 1931 a DNS response containing the IP address information corresponding to the DNS query via one or more communication interfaces, the controller 1903 receives the IP address included in the received DNS response. Send the information to the URL protocol handler 1913.
  • the controller 1903 determines at least one or more communication interfaces among the two or more communication interfaces, and controls to transmit a DNS query to the DNS server through the determined communication interface.
  • the controller 1903 determines a communication interface that consumes relatively little power among two or more communication interfaces or that transmits a DNS query as a communication interface that transmits a DNS query.
  • the network state manager 1907 stores and manages DNS resolution time, which means time required according to previous DNS resolution by at least one communication interface.
  • the network state manager 1907 stores and manages the DNS resolution time according to each communication interface on which the DNS resolution is performed. For example, the network state manager 1907 stores the first DNS resolution time according to the DNS resolution performed through communication interface 1 1915, and stores the second DNS resolution time according to the DNS resolution performed through communication interface 2 1917. .
  • the controller 1903 accesses the network state manager 1907 to determine whether the first DNS resolution time through the communication interface 1 1915 corresponding to one of the two or more communication interfaces is equal to or less than the first threshold time, and the first DNS resolution. If the time corresponds to the first threshold time or less, it is controlled to transmit the DNS query to the DNS server 1 1921 corresponding to the communication interface 1 1915 through the communication interface 1 1915.
  • the controller 1903 determines a second threshold of the second DNS resolution time over communication interface 2 1917 where the first DNS resolution time corresponds to another one of the two or more communication interfaces if the first DNS resolution time exceeds the first threshold time. If the first DNS resolution time does not fall within the second threshold time range, the DNS query signal is transmitted to the DNS server 1 1921 through the communication interface 1 1915.
  • the controller 1903 controls to transmit the DNS query signal to the DNS server 1 1921 and the DNS server 2 1931 through the communication interface 1 1915 and the communication interface 2 1917, respectively.
  • the controller 1903 After transmitting the DNS query to the DNS server through the determined communication interface, the controller 1903 determines whether a DNS response corresponding to the DNS query is received within the third threshold time, and if the DNS response is not received within the third threshold time, 2 Controls the transmission of DNS queries to the DNS server through any one of the communication interfaces.
  • the third threshold time corresponds to the average time for DNS resolution.
  • the controller 1903 When the controller 1903 receives a DNS response corresponding to the DNS query through two or more communication interfaces, the controller 1903 first transmits IP address information corresponding to the received DNS response to the URL protocol handler 1913. At this time, the controller 1903 transmits identification information of the communication interface that receives the DNS response among the two or more communication interfaces together with the IP address information to the URL protocol handler 1913.
  • the controller 1903 controls to store the IP address information included in the received DNS response in the memory 1905 as DNS cache information.
  • the controller 1903 controls to map and store IP version information, host name information, and communication interface identification information corresponding to the received DNS response with IP address information, respectively.
  • FIG. 20 is a block diagram of a portable terminal including a plurality of communication interfaces having different IP versions according to an embodiment of the present invention.
  • communication interface 0 2003 corresponds to IPv4 and communication interface 1 corresponds to IPv6.
  • DNS handler 2001 receives a DNS query for IPv4
  • the DNS query is sent to DNS server 1 through communication interface 0 2003
  • a DNS response corresponding to the DNS query is sent to DNS server 1 through communication interface 0 2003.
  • DNS handler 2005 receives a DNS query for IPv6
  • the DNS query is sent to DNS server 2 through communication interface 2 2007, and a DNS response corresponding to the DNS query is sent from DNS server 2 through communication interface 2 2007.
  • 21 is a diagram illustrating DNS resolution in a mobile terminal according to the first embodiment of the present invention.
  • the controller of the DNS handler 2101 may check whether IP address information corresponding to the DNS query exists among the IP address information stored in the DNS cache.
  • the controller sends a DNS query to DNS servers 1 and 2 through a plurality of DNS subhandlers 1 and 2 and communication interfaces 1 and 2, and DNS servers 1 and 2
  • the IP address information included in the DNS response received first from the URL may be transmitted to the URL protocol handler 2103. This makes it possible to perform DNS resolution quickly according to the transmission speed of each of the communication interfaces 1 and 2.
  • FIG. 22 is a diagram illustrating DNS resolution in a portable terminal according to a second embodiment of the present invention.
  • the controller of the DNS handler 2201 may transmit the DNS query 1 to the DNS server 1 through the communication interface 1 using the subhandler 1.
  • the controller receives the DNS response from the DNS server 1 through the communication interface 1 using the sub handler 1, stores the IP address information included in the received DNS response in the DNS cache, Send to URL protocol handler 2203.
  • the controller may retrieve IP address information corresponding to the DNS query from the IP address information stored in the DNS cache. For example, when DNS queries 1 and 2 are DNS queries for the same host, the controller may detect IP address information corresponding to DNS query 1 from the DNS cache and transmit the information to the URL protocol handler 2203.
  • DNS resolution can be performed quickly even without access to each communication interface and the corresponding DNS server.
  • FIG. 23 is a diagram illustrating DNS resolution in a mobile terminal according to a third embodiment of the present invention.
  • the controller 2303 of the DNS handler 2301 may identify a communication interface having a high transmission speed among the plurality of communication interfaces (WiFi and 3G / LTE). For example, the controller 2303 may identify the communication interface based on the DNS resolution time information for each communication interface stored in the network state manager 2305.
  • the controller 2303 may transmit a DNS query to the WiFi DNS server 2311 through the WiFi communication interface 2309 using the subhandler 2307.
  • the controller 2303 performs DNS resolution by transmitting a DNS query only through the WiFi communication interface, and the 3G / LTE communication interface maintains the idle mode. Accordingly, power consumption due to deactivation of the 3G / LTE communication interface can be prevented.
  • FIG. 24 is a diagram illustrating DNS resolution in a mobile terminal according to a fourth embodiment of the present invention.
  • the controller 2403 of the DNS handler 2401 may receive a DNS query for the host from the URL protocol handler.
  • the controller 2403 may transmit a DNS query to the WiFi DNS server 2411 through the WiFi communication interface 2409 using the subhandler 1 2405.
  • the controller 2403 may receive a DNS response from the WiFi DNS server 2411 and generate IP address information (eg, DNS cache information) based on the received DNS response and store it in the DNS cache 2407.
  • IP address information eg, DNS cache information
  • DNS handler 2401 receives a DNS query for another host from the URL protocol handler, the IP address information stored in DNS cache 2407 (eg, DNS cache information), even if either communication interface is not connected to the network. ) Can be used to perform DNS resolution.
  • DNS cache information e.g, DNS cache information
  • 25 is a graph illustrating DNS resolution times for communication interfaces according to an embodiment of the present invention.
  • the URL protocol handler is preferentially over a communication interface (eg, 3G / LTE communication interface) corresponding to the shorter DNS resolution time among the DNS resolution times 2503 and 2505 of the two or more communication interfaces.
  • a URL query (HTTP request) 2507 can be sent.
  • 26 is a diagram illustrating DNS resolution in a mobile terminal according to a fifth embodiment of the present invention.
  • an effective communication interface eg, WiFi communication interface 2611
  • the controller 2603 may transmit a DNS query to the WiFi DNS server 2621 through the WiFi interface 2611 using the subhandler 1 2607.
  • the controller 2603 uses a subhandler 2 2609 to establish another communication interface, a 3G / LTE communication interface.
  • the 2613 allows DNS queries to be sent to the 3G / LTE DNS server 2631. Accordingly, the DNS handler 2601 can quickly receive a DNS response through the 3G / LTE communication interface 2631.
  • Methods according to the embodiments described in the claims and / or specification of the present invention may be implemented in the form of hardware, software, or a combination of hardware and software.
  • a computer-readable storage medium for storing one or more programs may be provided.
  • One or more programs stored in a computer readable storage medium are configured for execution by one or more processors in an electronic device.
  • One or more programs include instructions that cause an electronic device to execute methods in accordance with embodiments described in the claims and / or specifications of the present invention.
  • Such programs may include random access memory, non-volatile memory including flash memory, read only memory (ROM), and electrically erasable programmable ROM.
  • EEPROM Electrically Erasable Programmable Read Only Memory
  • magnetic disc storage device compact disc ROM (CD-ROM), digital versatile discs (DVDs) or other forms
  • CD-ROM compact disc ROM
  • DVDs digital versatile discs
  • It can be stored in an optical storage device, a magnetic cassette. Or, it may be stored in a memory composed of some or all of these combinations.
  • each configuration memory may be included in plural.
  • the electronic device may be connected to a communication network such as the Internet, an intranet, a local area network (LAN), a wide area network (WLAN), or a storage area network (SAN), or a combination thereof. It may be stored in an attachable storage device that is accessible. Such a storage device may access an electronic device through an external port. In addition, a separate storage device on the communication network may connect to the portable electronic device.
  • a communication network such as the Internet, an intranet, a local area network (LAN), a wide area network (WLAN), or a storage area network (SAN), or a combination thereof. It may be stored in an attachable storage device that is accessible. Such a storage device may access an electronic device through an external port.
  • a separate storage device on the communication network may connect to the portable electronic device.

Landscapes

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

Abstract

본 개시는 무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법에 관한 것이다. 무선 통신 시스템에서 단말의 동작 방법은, URL(Uniform Resource Locator) 프로토콜 핸들러로부터 호스트에 대한 DNS(Domain Name Service) 문의를 수신하면, 미리 저장된 DNS 캐쉬 정보와 상기 DNS 문의에 포함된 DNS 문의 정보를 비교하고, 상기 비교 결과에 따라, 상기 호스트에 대응하는 IP(Internet Protocol) 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정을 포함할 수 있다.

Description

무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법
본 발명은 무선 통신 시스템에서 단말기가 데이터를 송수신하는 장치 및 방법에 관한 것이다.
다중 무선 접속 기술(예: Long Term Evolution(LTE) 및 무선랜(와이파이) 등)을 지원하는 단말기(예: 휴대용 단말기)는 와이파이(WiFi) 및 LTE를 통해 다운로드를 수행하기 위해 해당 무선 접속 기술을 지원하는 통신 인터페이스를 통해 HTTP 세션을 수행한다.
HTTP 세션을 수행하기 전에, 휴대용 단말기는 우선적으로 DNS(Domain Name Service) 서버로부터 호스트 네임에 대응되는 호스트 IP 주소를 획득할 필요가 있다. 이와 같이, IP 주소를 획득하는 절차를 DNS 레졸루션(resolution)이라 한다. 휴대용 단말기는 IP 주소를 획득하기 위해 DNS 서버로 DNS 문의를 전송하고, 그에 대한 응답으로 IP 주소를 포함하는 DNS 응답을 수신한다. DNS 문의는 휴대용 단말기에서 디폴트로 결정된(자동으로 선택된) 통신 인터페이스를 통해 전송된다.
이것은 몇 가지 이슈를 야기할 것이다. 예를 들면, 서로 다른 통신 인터페이스들이 서로 다른 IP버전을 사용하는 경우, 디폴트로 결정된 통신 인터페이스의 전송 속도가 다른 통신 인터페이스의 전송 속도보다 느린 경우가 발생할 수 있다. 예를 들면, 2 종류 이상의 통신 인터페이스들이 사용될 때, 통신 인터페이스들 각각의 IP버전이 다른 경우, 휴대용 단말기는 원하는 호스트 서버의 IP버전을 지원하지 않는 통신 인터페이스를 통해 DNS 문의를 전송할 수 있기 때문에, DNS 레졸루션에 대해 잘못된 결과를 초래할 수 있다.
또한, 디폴트로 결정된 통신 인터페이스가 다른 통신 인터페이스보다 상대적으로 느린 속도를 갖는 경우, DNS 레졸루션을 위한 시간이 길어질 수 있다.
또한, 2 종류 이상의 통신 인터페이스들을 지원하는 휴대용 단말기에서 DNS 문의(쿼리)가 2 종류 이상의 통신 인터페이스들을 통해 전송되는 경우, 어느 하나의 통신 인터페이스를 통해 DNS 레졸루션을 획득할 수 있지만, 다른 통신 인터페이스가 계속 활성화되어 있기 때문에 전력 낭비를 초래할 수 있다. 또한, 휴대용 단말기가 통신 인터페이스들 중에서 빠른 전송 속도를 갖는 제1통신 인터페이스를 통해 DNS 문의에 대한 DNS 레졸루션을 획득한다고 하더라도, 느린 전송 속도를 갖는 제2 통신 인터페이스를 통해 HTTP 요청이 이루어지는 경우에는, 제2통신 인터페이스를 통해 HTTP 요청에 대해 빠른 응답을 받을 수 없다.
따라서, 본 발명의 다양한 실시 예들은 다중 무선 접속 기술(Multi-RAT)을 지원하는 휴대용 단말기에서 전력 소모를 최소화하면서 효율적으로 DNS 레졸루션을 수행할 수 있는 장치 및 방법을 제공하기 위한 것이다.
본 발명의 실시 예에 따르면, 무선 통신 시스템에서 단말의 동작 방법은, URL(Uniform Resource Locator) 프로토콜 핸들러로부터 호스트에 대한 DNS(Domain Name Service) 문의를 수신하면, 미리 저장된 DNS 캐쉬 정보와 상기 DNS 문의에 포함된 DNS 문의 정보를 비교하는 과정; 및 상기 비교 결과에 따라, 상기 호스트에 대응하는 IP(Internet Protocol) 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정을 포함할 수 있다.
본 발명의 다양한 실시 예들은 이전의 DNS 레졸루션에 의해 저장된 IP 주소 정보를 이용함으로써 현재의 DNS 레졸루션을 위한 시간을 최소화할 수 있다.
또한, 본 발명의 다양한 실시 예들은 복수의 통신 인터페이스들 중에서 전송 속도가 빠른 통신 인터페이스를 통해서 DNS 레졸루션을 수행함으로써, 고속의 HTTP 액세스를 제공할 수 있다.
또한, 본 발명의 다양한 실시 예들은 복수의 통신 인터페이스들 중에서 선택되지 않는 통신 인터페이스를 비활성화 상태로 유지함으로써 휴대용 단말기의 전력 소모를 최소화할 수 있다.
본 발명 및 그의 효과에 대한 보다 완벽한 이해를 위해, 첨부되는 도면들을 참조하여 하기의 설명들이 이루어질 것이고, 여기서 동일한 참조 부호들은 동일한 부분들을 나타낸다.
도 1은 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 수행하는 도면이다.
도 2는 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 수행하는 도면이다.
도 3은 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 수행하는 도면이다.
도 4는 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 갖는 휴대용 단말기에서 DNS 레졸루션 동작을 도시한 도면이다.
도 5는 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들에 대응되는 DNS 레졸루션 타임들을 도시한 그래프이다.
도 6은 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 도시한 도면이다.
도 7은 본 발명의 실시 예에 따른 휴대용 단말기의 블록 구성도이다.
도 8은 본 발명의 제1실시 예에 따른 휴대용 단말기에서 DNS 핸들링을 수행하는 흐름도이다.
도 9는 본 발명의 실시 예에 따른 DNS 캐쉬에 저장된 정보의 형식을 도시한 도면이다.
도 10은 본 발명의 실시 예에 따른 서브 핸들러별 DNS 응답 회신을 도시한 그래프이다.
도 11은 본 발명의 제2실시 예에 따른 휴대용 단말기에서 DNS 핸들링을 수행하는 흐름도이다.
도 12A 및 도 12B는 본 발명의 실시 예에 따른 휴대용 단말기에서DNS 캐쉬에 저장된 IP 주소 정보를 매핑하는 흐름도이다.
도 13은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 문의를 전송하는 흐름도이다.
도 14는 본 발명의 실시 예에 따른 임계값들과 이전 DNS 레졸루션 타임들 간의 연관관계를 도시한 그래프이다.
도 15는 본 발명의 실시 예에 따른 도 14의 연관관계에 대응되는 DNS 문의에 따른 DNS 응답을 도시한 그래프이다.
도 16은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 응답에 따라 HTTP를 요청하는 흐름도이다.
도 17은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 레졸루션을 수행하는 흐름도이다.
도 18은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 문의 신호를DNS 서버로 전송하는 흐름도이다.
도 19는 본 발명의 실시 예에 따른 휴대용 단말기의 블록 구성도이다.
도 20은 본 발명의 실시 예에 따라 서로 다른 IP 버전을 가지는 복수의 통신 인터페이스들을 포함하는 휴대용 단말기의 블록 구성도이다.
도 21은 본 발명의 제1실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 22는 본 발명의 제2실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 23은 본 발명의 제3실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 24는 본 발명의 제4실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 25는 본 발명의 실시 예에 따른 통신 인터페이스별 DNS 레졸루션 타임을 도시한 그래프이다.
도 26은 본 발명의 제5실시 예에 따른 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
본 기재에서 본 발명의 원리들을 설명하기 위해 사용되는 도 1 내지 도 26은 단지 예시를 위한 것인 바, 발명의 범위를 제한하는 어떠한 것으로도 해석되어서는 아니 된다. 당해 분야에서 통상의 지식을 가진 자는 본 발명의 원리들이 적절하게 배치된 임의의 무선 통신시스템에서도 구현될 수 있음을 이해할 것이다.
도 1은 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 수행하는 도면이다.도 1에 따르면, 휴대용 단말기 101은 어플리케이션(Application(APP)) 모듈 103과 URL(Uniform Resource Locator) 프로토콜 핸들러(protocol handler) 105와 DNS 핸들러 107과 와이파이(Wi-Fi) 통신 인터페이스 109와 3G/LTE 통신 인터페이스 111을 포함할 수 있다.
어플리케이션 모듈 103은 URL 프로토콜 핸들러 105로 호스트의 접속을 요청(HTTP 요청)할 수 있다.((1) 단계) URL 프로토콜 핸들러 105는 DNS 서버 121과 함께 DNS 핸들러 107과 기 설정된 WiFi 통신 인터페이스 109를 통해 IPv4에 대응하는 DNS 레졸루션을 수행하고, DNS 레졸루션을 통해 획득한 호스트의 IP 주소를 기반으로 WiFi 통신 인터페이스 109를 통해 웹 서버 131에 접속할 수 있다. ((2, 3, 4) 단계들) 그리고 3G/LTE 통신 인터페이스 111이 활성화된 상태에서 두 번째로 호스트의 HTTP 요청이 수신되면, URL 프로토콜 핸들러 105는 DNS 핸들러 107과 WiFi 통신 인터페이스 109를 통해 IPv4에 대응하는 DNS 레졸루션을 수행함으로써 IP 버전이 IPv4인 호스트의 IP 주소를 획득할 수 있다. ((5, 6) 단계들) 그 후에, URL 프로토콜 핸들러 105가 IP 버전이 IPv6인 3G/LTE 통신 인터페이스 111을 통해 IPv4 웹 서버 131로 HTTP 요청을 전송하기 위해 시도하면, 이러한 HTTP 요청은 3G/LTE 통신 인터페이스 111와 웹 서버 131 간의 IP 버전 차이로 인해 실패할 수 있다. ((7) 단계)
도 2는 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 수행하는 도면이다. 여기서, WiFi 통신 인터페이스는 약한 신호(weak signal)를 가지며, 3G/LTE 통신 인터페이스는 강한 신호(strong signal)를 갖는 것으로 가정한다.
도 2에 따르면, 어플리케이션 모듈 103은 URL 프로토콜 핸들러 105로 호스트의 접속을 요청(HTTP 요청)할 수 있다. ((1) 단계) URL 프로토콜 핸들러 105는 DNS 서버 121로부터 DNS 핸들러 107와 기 설정된 WiFi 통신 인터페이스 109를 통해 HTTP 요청을 위한 IPv4에 대응하는 DNS 레졸루션을 수행하고, DNS 레졸루션을 통해 획득한 호스트의 IP 주소를 기반으로 WiFi 통신 인터페이스 109를 통해 웹 서버 131에 접속할 수 있다. ((2, 3, 4) 단계들). 그리고 3G/LTE 통신 인터페이스 111이 활성화된 상태에서 두 번째로 호스트의 HTTP 요청이 수신되면, URL 프로토콜 핸들러 105는 WiFi 통신 인터페이스 109를 통해 IPv4에 대응하는 DNS 레졸루션을 수행함으로써 해당 호스트의 IP 주소를 획득할 수 있다. ((5, 6) 단계들)
그 후에, URL 프로토콜 핸들러 105는 획득된 IP 주소를 기반으로 3G/LTE 통신 인터페이스 111을 통해 웹 서버 131로 HTTP 요청을 전송할 수 있다. ((7) 단계)
그러나 3번째와 6번째 단계에서, 3G/LTE 통신 인터페이스 111가 고속의 전송 속도(예를 들어, 0.5[sec])를 가짐에도 불구하고, DNS 레졸루션(호스트의 IP 주소를 요청하는 DNS 문의 전송 및 그에 따른 DNS 응답 수신)이 약한 신호를 갖는 WiFi 통신 인터페이스 109를 통해 수행됨으로써 DNS 레졸루션을 위해 오랜 시간(예를 들어, 10[sec])이 소요될 수 있다.
도 3은 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 수행하는 도면이다.
도 3에 따르면, 휴대용 단말기 101은 어플리케이션 모듈 103과 URL 프로토콜 핸들러 105와 DNS 핸들러 107과 WiFi 통신 인터페이스 109와 3G/LTE 통신 인터페이스 111을 포함할 수 있다. 그리고 DNS 핸들러 107은 콘트롤러 301과 서브 핸들러1 303과 서브 핸들러2 305를 포함할 수 있다.
각 구성요소를 살펴보면, 서브 핸들러1 303은 WiFi 통신 인터페이스 109와 연결되며, DNS 문의를 수신하면, WiFi 통신 인터페이스 109를 통해 Wi-Fi DNS 서버 121로 DNS 문의를 전송할 수 있다. 그리고 서브 핸들러1 303은 DNS 문의에 대한 응답으로, Wi-Fi DNS 서버 121로부터 WiFi 통신 인터페이스 109를 통해 DNS 응답을 수신할 수 있다. 여기서, DNS 응답은 해당 호스트의 IP 주소를 포함할 수 있다.
서브 핸들러2 305는 3G/LTE 통신 인터페이스 111와 연결되며, DNS 문의를 수신하면, 3G/LTE 통신 인터페이스 111을 통해 3G/LTE DNS 서버 311로 DNS 문의를 전송할 수 있다. 그리고 서브 핸들러2 305는 DNS 문의에 대한 응답으로, 3G/LTE DNS 서버 311로부터 3G/LTE 통신 인터페이스 111을 통해 DNS 응답을 수신할 수 있다.
콘트롤러 301은 서브 핸들러1 303과 서브 핸들러2 305를 제어할 수 있다. 그리고 콘트롤러 301은 URL 프로토콜 핸들러 105로부터 DNS 문의를 수신하면, 서브 핸들러1 303과 서브 핸들러2 305 중 적어도 하나를 통해 DNS 문의를 전송할 수 있다.
예를 들면, 콘트롤러 301은 서브 핸들러1 303과 서브 핸들러2 305를 통해 DNS 문의를 WiFi 통신 인터페이스 109 및 3G/LTE 통신 인터페이스 111로 모두 전송할 수 있다. 예를 들면, WiFi 통신 인터페이스 109의 전송 속도가 3G/LTE 통신 인터페이스 111보다 빠른 경우, WiFi 통신 인터페이스 109 및 3G/LTE 통신 인터페이스 111는 그래프 321과 같이, 시점1 323에서 아이들 상태에서 액티브 상태로 전환한 후, DNS 문의를 전송할 수 있다. 그리고 WiFi 통신 인터페이스 109가 시점2 325에서 DNS 응답을 수신하고, 액티브 상태를 아이들 상태로 전환할 수 있다. 그리고 3G/LTE 통신 인터페이스 111은 시점3 327에서 DNS 응답을 수신하고, 액티브 상태를 아이들 상태로 전환할 수 있다.
그러나 3G/LTE 통신 인터페이스 111은 WiFi 통신 인터페이스 109를 통해 DNS 응답을 수신한 후에도 일정 시구간 329(시점2 325에서부터 시점3 327까지) 동안 액티브 상태를 유지함으로써 전력 낭비를 초래할 수 있다.
도 4는 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 갖는 휴대용 단말기에서 DNS 레졸루션 동작을 도시한 도면이다.도 4에서는, DNS 문의가 WiFi 통신 인터페이스 109 및 3G/LTE 통신 인터페이스 111 중 하나의 인터페이스로 전송된다고 가정한다.
도 4의 (a)에 도시된 바와 같이, 콘트롤러 301은 "A.COM"에 대한 DNS 문의(Query)를 서브 핸들러1 303과 WiFi 통신 인터페이스 109를 통해 Wi-Fi DNS 서버 121로 전송하고, Wi-Fi DNS 서버 121로부터 WiFi 통신 인터페이스 109를 통해 DNS 응답을 수신할 수 있다. 이때, 3G/LTE 통신 인터페이스 111은 비활성화 상태(아이들 상태)일 수 있다. 그 후에, 도 4의 (b) 또는 (c)에 도시된 바와 같이, 콘트롤러 301은 "A.COM"에 대한 DNS 문의(Query)를 서브 핸들러2 305와 3G/LTE 통신 인터페이스 111을 통해 3G/LTE DNS 서버 311로 전송하고, 3G/LTE DNS 서버 311로부터 3G/LTE 통신 인터페이스 111을 통해 DNS 응답을 수신할 수 있다. 이후부터, 콘트롤러 301은 3G/LTE 통신 인터페이스 111을 통해 DNS 레졸루션을 수행할 수 있다.
그러나 WiFi 통신 인터페이스 109를 통해 "A.COM"에 대한 DNS 레졸루션을 이미 수행한 후에 다시 3G/LTE 통신 인터페이스 111을 통해 "A.COM"에 대한 DNS 레졸루션을 수행한다는 점에서, 3G/LTE 통신 인터페이스 111의 불필요한 동작에 따른 전력 소모를 초래할 수 있다. 또한, 3G/LTE 통신 인터페이스 111을 통해 DNS 응답을 재수신한다는 점에서, DNS 레졸루션을 위한 시간이 지연될 수 있다.
도 5는 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들에 대응되는 DNS 레졸루션 타임들을 도시한 그래프이다.
도 5의 그래프 501에 따르면, 3G/LTE 통신 인터페이스 111의 전송 속도가 WiFi 통신 인터페이스 109보다 빠르기 때문에, 3G/LTE 통신 인터페이스 111을 통한 DNS 레졸루션의 동작시간 505이 WiFi 통신 인터페이스 109를 통한 DNS 레졸루션의 동작시간 503보다 짧다. 이후에, HTTP 요청 507이 3G/LTE 통신 인터페이스 111을 통해 진행되는 경우, URL 프로토콜 핸들러 105는 HTTP 요청에 대해 빠른 응답을 수신할 수 있다.
그러나 3G/LTE 통신 인터페이스 111을 통해 DNS 레졸루션을 완료하였다고 하더라도, HTTP 요청이 WiFi 통신 인터페이스 109를 통해 진행되는 경우에는, URL 프로토콜 핸들러 105는 HTTP 요청에 대해 빠른 응답을 수신할 수 없다.
도 6은 본 발명의 관련 기술에 따른 휴대용 단말기에서 WiFi 및 3G/LTE를 지원하는 통신 인터페이스들을 통해 DNS 레졸루션 동작을 도시한 도면이다.
도 6에 따르면, 일반적으로 다중 무선 접속 기술(Multi-RAT(Radio Access Technology))을 이용한 DNS 레졸루션 메카니즘은 두 번째 URL 요청(HTTP 요청)부터 적용 가능하다. 따라서, 첫 번째 URL 요청에 의한 DNS 레졸루션은 복수의 통신 인터페이스들 주엥서 미리 설정된 통신 인터페이스를 통해 수행될 수 있다.
그러나 미리 설정된 통신 인터페이스가 3G/LTE 통신 인터페이스 111보다 느린 전송속도를 가지는 WiFi 통신 인터페이스 109인 경우, 휴대용 단말기는 효율적으로 DNS 레졸루션을 수행할 수 없다.
도 7은 본 발명의 실시 예에 따른 휴대용 단말기의 블록 구성도이다.
도 7에 따르면, 휴대용 단말기 701은 어플리케이션 모듈 703과 URL 프로토콜 핸들러 705와 DNS 핸들러 707과 WiFi 통신 인터페이스 719와 3G/LTE 통신 인터페이스 721을 포함할 수 있다. 그리고 DNS 핸들러 707은 콘트롤러 709와 네트워크 상태 매니저 711과 서브 핸들러1 713과 서브 핸들러2 715와 DNS 캐쉬(Cache) 717을 포함할 수 있다. 한 실시 예로, 콘트롤러 709는 제어부라고 불릴 수 있다.
각 구성요소를 살펴보면, 네트워크 상태 매니저 711은 WiFi 통신 인터페이스 719 및 3G/LTE 통신 인터페이스 721의 연결 상태를 검출하고, 각 통신 인터페이스의 DNS 레졸루션 타임에 대한 히스토리 정보를 저장할 수 있다.
DNS 캐쉬 717은 호스트의 네임과 IP 주소와 해당 IP 주소를 수신한 통신 인터페이스의 IP 버전 및 ID를 매칭하여 저장할 수 있다. DNS 캐쉬 717은 콘트롤러 709 또는 서브 핸들러1 713 또는 서브 핸들러2 715로부터 호스트 정보(예: 호스트의 네임)이 수신되면, 저장된 호스트의 IP 주소들 중에서 수신된 호스트 정보에 대응되는 IP 주소를 검색하고, 검색된 IP 주소를 콘트롤러 709로 전송할 수 있다. 예를 들면, DNS 캐쉬 717은 검색된 IP 주소와 해당 통신 인터페이스에 관한 정보(예: 통신 인터페이스의 ID 및 IP 버전)을 함께 전송할 수 있다.
콘트롤러 709는 URL 프로토콜 핸들러 705로부터 DNS 문의(Query)을 수신하고, DNS 문의에 대한 응답으로 DNS 문의에 따른 호스트의 IP 주소를 URL 프로토콜 핸들러 705로 전송할 수 있다. 콘트롤러 709는 DNS 캐쉬 717과 네트워크 상태 매니저 711을 확인하고, DNS 문의에 대한 수행 동작을 결정할 수 있다.
만일, DNS 문의에 따른 호스트 네임 또는 호스트 네임 및 IP 버전과 매칭되는 IP 주소가 DNS 캐쉬 717 내에서 검색되면, 콘트롤러 709는 검색된 IP 주소를 URL 프로토콜 핸들러 705로 전송할 수 있다.
이와 달리, DNS 문의에 따른 호스트 네임 및 IP 버전과 매칭되는 IP 주소가 DNS 캐쉬 717 내에서 검색되지 않으면, 콘트롤러 709는 미리 설정된 조건에 따라 DNS 문의를 복수의 통신 인터페이스들을 통해 동시에 전송하거나 복수의 통신 인터페이스들 중에서 상대적으로 빠른 통신 인터페이스를 통해 전송할 수 있다.
여기서, 미리 설정된 조건은, 복수의 통신 인터페이스들의 전송 속도들이 거의 동일한지 또는 복수의 통신 인터페이스들 중에서 어떤 통신 인터페이스가 상대적으로 빠른 전송 속도를 가지는지를 포함할 수 있다. 이러한 미리 설정된 조건은 네트워크 상태 매니저 711에 저장된 DNS 레졸루션 타임에 대한 히스토리 정보를 기반으로 결정될 수 있다.
서브 핸들러1 713은 WiFi 통신 인터페이스 719와 연결되며, 서브 핸들러2 715는 3G/LTE 통신 인터페이스 721과 연결될 수 있다. 이와 같이, DNS 핸들러 709는 다중 무선 접속 기술(Multi-RAT) 이용한 DNS 레졸루션 메카니즘을 위해 복수의 서브 핸들러들을 포함할 수 있다.
WiFi 통신 인터페이스 719는 WiFi DNS 서버 731과 무선으로 연결되며, 3G/LTE 통신 인터페이스 721은 3G/LTE DNS 서버 741과 무선으로 연결되어 있다.
도 8은 본 발명의 제1실시 예에 따른 휴대용 단말기에서 DNS 핸들링을 수행하는 흐름도이다. 도 8을 참조하면, S801 단계에서, 어플리케이션 모듈 703은 통신 통신 인터페이스 X를 통해 새로운 HTTP 요청이 수신되면, 수신된 HTTP 요청을 URL 프로토콜 핸들러 705로 전송할 수 있다. S803 단계에서, URL 프로토콜 핸들러 705는 DNS 문의를 DNS 핸들러 707으로 전송할 수 있다.
S805 단계에서, DNS 핸들러 707의 콘트롤러 709는 DNS 문의를 요구하는 호스트의 네임이 DNS 캐쉬 717 내에 존재하는지 여부를 확인할 수 있다. 확인 결과, IP 주소가 DNS 캐쉬 717에 존재하면, 콘트롤러 709는 S807 단계로 진행하고, 그렇지 않으면, S809 단계로 진행할 수 있다.
예를 들면, DNS 캐쉬 717은 도 9와 같이, 특정 호스트에 대한 IP 주소를 저장할 수 있다. 예를 들면, IP 주소는 901 내지 907과 같이, 통신 인터페이스 X의 IP 버전과 호스트 네임과 IP 주소를 포함하는 DNS 응답을 수신한 특정 통신 인터페이스의 ID와 함께 저장될 수 있다.
만일, S807로 진행하면, 콘트롤러 709는 DNS 캐쉬 717에 저장된 IP 주소 중에서 호스트 네임과 통신 인터페이스 X의 IP 버전에 매칭되는 IP 주소를 검색하고, 검색된 IP 주소를 URL 프로토콜 핸들러 705로 회신할 수 있다.
예를 들면, 서로 다른 통신 인터페이스 ID를 가지는 복수의 IP 주소들이 검색되면, 콘트롤러 709는 복수의 IP 주소들 중에서 미리 설정된 통신 인터페이스의 ID와 매칭되는 IP 주소를 URL 프로토콜 핸들러 705로 전송할 수 있다. 다른 예로, 검색된 복수의 IP 주소 중에서 하나가 IP 주소가 존재하지 않음을 나타내는 “NoHost”인 경우, 콘트롤러 709는 다른 IP 주소를 URL 프로토콜 핸들러 705로 전송할 수 있다.
또 다른 예로, 저장된 IP 주소 중에서 호스트 네임은 동일하지만, IP 버전이 다른 IP 주소가 검색되면, 콘트롤러 709는 캐쉬 오류가 발생한 것으로 결정하고, S809 단계로 진행할 수 있다. 여기서, 캐쉬 오류는 DNS 캐쉬 717에 저장된 IP 주소 중에서 호스트 네임은 동일하지만, IP 버전이 다른 IP 주소가 존재하거나 호스트 네임이 동일한 IP 주소가 존재하지 않는 것을 의미한다.
만일, S809 단계로 진행하면, 콘트롤러 709는 복수의 통신 인터페이스들 중에서 통신 인터페이스 X와 동일한 IP 버전을 갖는 모든 통신 인터페이스를 확인할 수 있다. 여기서, 통신 인터페이스 X와 동일한 IP 버전을 가지는 통신 인터페이스는 유효 통신 인터페이스라고 불리며, 유효 통신 인터페이스는 호스트의 IP 주소와 연결된 통신 인터페이스를 의미한다. S811 단계에서, 콘트롤러 709는 유효 통신 인터페이스의 개수를 확인할 수 있다. 확인 결과, 유효 통신 인터페이스가 존재하지 않으면, 콘트롤러 709는 S813 단계로 진행하고, 유효 통신 인터페이스가 1개이면, S815 단계로 진행하고, 유효 통신 인터페이스가 2개 이상이면, S823 단계로 진행할 수 있다.
만일, S813 단계로 진행하면, 콘트롤러 709는 유효 통신 인터페이스가 존재하지 않는다는 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
만일, S815 단계로 진행하면, 콘트롤러 709는 해당 통신 인터페이스(예: WiFi 통신 인터페이스 719와 3G/LTE 통신 인터페이스 721 중 하나)와 연결된 서브 핸들러(예: 서브 핸들러 1 713과 서브 핸들러 2 715 중 하나)로 DNS 문의를 전송할 수 있다. S817 단계에서, 서브 핸들러는 DNS 문의 패킷을 생성하고, 해당 통신 인터페이스를 통해 DNS 문의 패킷을 DNS 서버(WiFi DNS 서버 731과 3G/LTE DNS 서버 741 중 하나)로 전송할 수 있다. 그리고 S819 단계에서, 서브 핸들러는 DNS 서버로부터 DNS 응답 패킷을 수신하여 콘트롤러 709로 전송할 수 있다. 예를 들면, DNS 응답 패킷은 호스트의 IP 주소를 포함할 수 있다.
그리고 S821 단계에서, 콘트롤러 709는 DNS 응답에 따른 IP 주소를 URL 프로토콜 핸들러 705로 회신한 후, DNS 캐쉬 717에 저장할 수 있다. 이때, 콘트롤러 709는 IP 주소와 함께 DNS 응답을 수신한 통신 인터페이스의 식별자를 함께 회신할 수 있다. 예를 들면, 콘트롤러 709는 도 9와 같은 형식으로 IP 주소를 저장할 수 있다.
만일, S823 단계로 진행하면, 콘트롤러 709는 유효 통신 인터페이스들(예: WiFi 통신 인터페이스 719와 3G/LTE 통신 인터페이스 721)과 연결된 서브 핸들러들(예: 서브 핸들러 1 713과 서브 핸들러 2 715) 각각으로 DNS 문의를 전송할 수 있다. 그리고 S825 단계에서, 서브 핸들러들 각각은 DNS 문의 패킷을 생성하고, 해당 통신 인터페이스를 통해 DNS 문의 패킷을 DNS 서버(WiFi DNS 서버 731과 3G/LTE DNS 서버 741 중 하나)로 전송할 수 있다.
예를 들면, 도 10의 1001 그래프와 같이, DNS 문의는 복수의 유효 통신 인터페이스들을 통해 동시에 전송될 수 있다. 다른 예로, 도 10의 1003 그래프와 같이, DNS 문의는 복수개의 유효 통신 인터페이스들을 통해 순차적으로 전송될 수 있다. 예를 들면, DNS 문의가 우선적으로 전송되는 통신 인터페이스는 DNS 레졸루션 타임 및 낮은 전력 소모 등을 고려하여 설정될 수 있다.
그리고 S827 단계에서, 서브 핸들러는 DNS 서버들로부터 순차적으로 DNS 응답 패킷들을 수신하여 콘트롤러 709로 전송할 수 있다. 그리고 S829 단계에서, 콘트롤러 709는 가장 빨리 수신한 DNS 응답에 따른 IP 주소를 URL 프로토콜 핸들러 705로 회신한 후, DNS 캐쉬 717에 저장할 수 있다. 이때, 콘트롤러 709는 IP 주소와 함께 DNS 응답을 수신한 통신 인터페이스의 식별자를 함께 회신할 수 있다. 그리고 S831 단계에서, 콘트롤러 709는 그 이후에 수신한 DNS 응답에 따른 IP 주소를 DNS 캐쉬 717에 저장할 수 있다.
도 11은 본 발명의 제2실시 예에 따른 휴대용 단말기에서 DNS 핸들링을 수행하는 흐름도이다.도 11을 참조하면, S1101 단계에서, URL 프로토콜 핸들러 705는 어플리케이션 모듈 703으로부터 호스트에 대한 새로운 HTTP 요청을 수신하고, DNS 문의를 DNS 핸들러 707로 전송할 수 있다. S1103 단계에서, DNS 핸들러 707의 콘트롤러 709는 DNS 문의를 수신하고, 호스트의 네임과 HTTP 요청을 지시한 통신 인터페이스 X의 IP 버전을 확인할 수 있다.
S1105 단계에서, 콘트롤러 709는 DNS 캐쉬에 확인된 호스트 네임 및 IP 버전에 대응되는 IP 주소가 존재하는지 여부를 확인할 수 있다. 확인 결과, IP 주소가 존재하면, 콘트롤러 709는 S1107 단계로 진행하고, 그렇지 않으면, S1109 단계로 진행할 수 있다.
만일, S1107로 진행하면, 콘트롤러 709는 DNS 캐쉬 717에 저장된 IP 주소 중에서 확인된 호스트 네임 및 IP 버전에 대응되는 IP 주소 정보(예: IP 주소)를 검색하여 URL 프로토콜 핸들러 705로 회신할 수 있다. 만일, S1109 단계로 진행하면, 콘트롤러 709는 모든 유효 통신 인터페이스를 통해 DNS 서버로 DNS 문의를 전송할 수 있다. 그리고 S1111 단계에서, 콘트롤러 709는 DNS 서버로부터 DNS 문의에 대한 응답으로 DNS 응답을 수신하고, 수신된 DNS 응답을 DNS 캐쉬 717에 저장할 수 있다. S1113 단계에서, 콘트롤러 709는 우선적으로 수신된 DNS 응답에 대응하는 IP 주소를 URL 프로토콜 핸들러 705로 전송할 수 있다.다른 실시 예로, 콘트롤러 709는 S1111 단계와 S1113 단계의 순서를 바꿔서 수행할 수 있다. 예를 들면, 콘트롤러 709는 우선적으로 수신된 DNS 응답에 대응하는 IP 주소를 URL 프로토콜 핸들러 705로 전송한 후, DNS 캐쉬 717에 저장할 수 있다. 그리고 콘트롤러 709는 그 이후에 수신된 DNS 응답에 대응되는 IP 주소를 회신 없이, DNS 캐쉬 717에 저장할 수 있다.
도 12A 및 도 12B는 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 캐쉬에 저장된 IP 주소 정보를 매핑하는 흐름도이다.
도 12A는 DNS 레졸루션을 수행할 통신 인터페이스가 결정된 것으로 가정한다. 도 12A에 따르면, S1201 단계에서, URL 프로토콜 핸들러 705는 결정된 통신 인터페이스에 따른 DNS 문의를 DNS 핸들러 707로 전송할 수 있다. 이때, URL 프로토콜 핸들러 705는 DNS 매핑 요청을 URL 문의신호와 함께 DNS 핸들러 707로 전송할 수 있다. 예를 들면, DNS 매핑 요청은 통신 인터페이스의 식별 정보(예를 들어, InfX) 및 호스트 네임(예를 들어, Host X)을 포함할 수 있다.
S1203 단계에서, DNS 핸들러 707의 콘트롤러 709는 통신 인터페이스의 식별 정보(예를 들어, InfX)로부터 통신 인터페이스의 IP 버전(예를 들어, IPvX)을 획득할 수 있다. S1205 단계에서, 콘트롤러 709는 호스트 네임(예를 들어, Host X) 및 IP 버전(예를 들어, IPvX)과 매핑되는 IP 주소 정보를 DNS 캐쉬 717에서 검색할 수 있다.
S1207 단계에서, 콘트롤러 709는 매핑된 IP 주소 정보의 개수를 확인할 수 있다. 만일, 매핑된 IP 주소 정보가 존재하지 않으면, 콘트롤러 709는 S1209 단계로 진행하고, 매핑된 IP 주소 정보가 1개이면, S1211 단계로 진행하고, 매핑된 IP 주소 정보가 2개 이상이면, S1213 단계로 진행할 수 있다.
만일, S1209 단계로 진행하면, 콘트롤러 709는 캐쉬 오류(Miss)라고 결정할 수 있다. 만일, S1211 단계로 진행하면, 콘트롤러 709는 매핑된 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
만일, S1213 단계로 진행하면, 콘트롤러 709는 맵핑된 IP 주소 정보들 중에서 통신 인터페이스의 식별정보(예를 들어, InfX)와 일치하는 IP 주소 정보가 존재하는지를 판단할 수 있다. 판단 결과, 일치하는 IP 주소 정보가 존재하면, 콘트롤러 709는 S1215 단계로 진행하고, 그렇지 않으면, S1217 단계로 진행할 수 있다.
만일, S1215 단계로 진행하면, 콘트롤러 709는 통신 인터페이스의 식별 정보(예를 들어, InfX)와 일치하는 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다. 만일, S1217 단계로 진행하면, 맵핑된 2개 이상의 IP 주소 정보들 중에서 통신 우선순위가 높은 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다. 여기서, 통신 우선순위는 전력 소비 정도 또는 전송 속도 등을 고려하여 미리 설정될 수 있다. 예를 들어, Wi-Fi 통신 인터페이스 719가 1순위로 설정되고, 3G/LTE 통신 인터페이스 721가 2순위로 설정될 수 있다.
도 12B는 DNS 레졸루션을 수행할 통신 인터페이스가 결정되지 않은 것으로 가정한다. 도 12B에 따르면, S1221 단계에서, URL 프로토콜 핸들러 705는 결정되지 않은 통신 인터페이스에 따른 URL 문의를 DNS 핸들러 707로 전송할 수 있다. 이때, URL 프로토콜 핸들러 705는 DNS 매핑 요청을 URL 문의와 함께 DNS 핸들러 707로 전송할 수 있다. 예를 들면, DNS 매핑 요청은 호스트 네임(예를 들어, Host X)만을 포함할 수 있다. S1223 단계에서, DNS 핸들러 707의 콘트롤러 709는 호스트 네임(예를 들어, Host X)과 매핑되는 IP 주소 정보를 DNS 캐쉬 717에서 검색할 수 있다.
S1225 단계에서, 콘트롤러 709는 매핑된 IP 주소 정보의 개수를 확인할 수 있다. 확인 결과, IP 주소 정보가 존재하지 않는 경우, 콘트롤러 709는 S1227 단계로 진행하며, IP 주소 정보가 1개인 경우, S1229 단계로 진행하고, IP 주소 정보가 2개 이상인 경우, S1231 단계로 진행할 수 있다.
만일, S1227 단계로 진행하면, 콘트롤러 709는 캐쉬 오류라고 결정할 수 있다. 만일, S1229 단계로 진행하면, 콘트롤러 709는 맵핑된 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다. 만일, S1231 단계로 진행하면, 콘트롤러 709는 맵핑된 2개 이상의 IP 주소 정보들 중에서 통신 우선순위가 높은 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
도 13은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 문의를 전송하는 흐름도이다. 통신 인터페이스 Inf1이 전력 절감을 위해 미리 설정된 통신 인터페이스라고 가정한다.
도 13에 따르면, S1301 단계에서, 콘트롤러 709는 네트워크 상태 매니저 711에 저장된 통신 인터페이스별 DNS 레졸루션 타임의 히스토리 정보를 기반으로 통신 인터페이스 1(예: WiFi 통신 인터페이스 719)의 이전 DNS 레졸루션 타임(제1 DNS 레졸루션 타임, Inf1 Time)을 확인할 수 있다. S1303 단계에서, 콘트롤러 709는 통신 인터페이스1의 제1 DNS 레졸루션 타임이 제1 임계시간(예를 들어, DNS 레졸루션을 위한 최소 시간 값) 미만인지 여부를 확인할 수 있다. 확인 결과, 제1 DNS 레졸루션 타임이 제1 임계시간 미만인 경우, 콘트롤러 709는 S1309 단계로 진행하고, 그렇지 않으면, S1305 단계로 진행할 수 있다.
만일, S1305 단계로 진행하면, 콘트롤러 709는 통신 인터페이스 1의 제1 DNS 레졸루션 타임이 통신 인터페이스 2(예: 3G/LTE 통신 인터페이스 721)의 이전 DNS 레졸루션 타임(제2 DNS 레졸루션 타임, Inf2 Time)을 기준으로 제2 임계시간 범위 내에 존재하는지 여부를 확인할 수 있다. 여기서, 제2 임계시간은 미리 지정된 값이다. 확인 결과, 제1 DNS 레졸루션 타임이 제2 DNS 레졸루션 타임의 제2 임계시간 범위 내에 존재하면, 콘트롤러 709는 S1307 단계로 진행하고, 그렇지 않으면, S1309 단계로 진행할 수 있다.
만일, S1307 단계로 진행하면, 콘트롤러 709는 복수의 통신 인터페이스들 1과 2간의 전송 속도가 거의 동일하다고 결정하고, 복수의 통신 인터페이스들 1과 2를 통해 DNS 문의를 DNS 서버로 전송할 수 있다. 예를 들면, 도 14의 (a)와 같이, 통신 인터페이스 1의 제1 DNS 레졸루션 타임 1401이 통신 인터페이스 2의 제2 DNS 레졸루션 타임을 기준으로 제2 임계시간 범위 내에 존재하면, 콘트롤러 709는 도 15(a)와 같이, 1501 시점에서 복수의 통신 인터페이스들 1과 2(예: WiFi 통신 인터페이스 719와 3G/LTE 통신 인터페이스 721)를 통해 DNS 문의를 동시에 DNS 서버들로 전송할 수 있다.
만일, S1309 단계로 진행하면, 콘트롤러 1309는 통신 인터페이스 1의 전송 속도가 통신 인터페이스 2보다 빠르다고 결정하고, 통신 인터페이스 1을 통해 DNS 문의를 전송할 수 있다. 예를 들면, 도 14의 (b) 또는 (c)와 같이, 제1 DNS 레졸루션 타임 1403이 제1임계시간 미만이거나 제1 DNS 레졸루션 타임 1405이 제2 DNS 레졸루션 타임의 제2 임계시간 범위 밖에 존재하면, 콘트롤러 709는 도 15의 (b)와 같이, 1503 시점에서 통신 인터페이스 1(예: WiFi 통신 인터페이스 719)를 통해 DNS 문의를 DNS 서버로 전송할 수 있다.
S1311 단계에서, 콘트롤러 709는 전송한 DNS 문의에 대한 DNS 응답이 제3 임계시간 이내에 수신되는지 여부를 확인할 수 있다. 여기서, 제3 임계시간은, 미리 지정된 값이거나 통신 인터페이스들에 대한 DNS 레졸루션 타임들의 평균 DNS 레졸루션 타임이 될 수 있다. 확인 결과, DNS 응답이 제3 임계시간 이내에 수신되면, 콘트롤러 709는 DNS 문의 전송 절차를 종료할 수 있다. 이와 달리, DNS 응답이 제3 임계시간 이내에 수신되지 않으면, 콘트롤러 709는 S1313 단계로 진행할 수 있다.
S1313 단계에서, 콘트롤러 709는 통신 인터페이스 2가 활성화되었는지 여부를 확인할 수 있다. 확인 결과, 통신 인터페이스 2가 활성화된 경우, 콘트롤러 709는 S1317 단계로 진행하고, 그렇지 않으면, S1315 단계로 진행할 수 있다. 만일, S1315 단계로 진행하면, 콘트롤러 709는 통신 인터페이스 2를 활성화시킬 수 있다. 예를 들면, 콘트롤러 709는 통신 인터페이스 2를 아이들 상태에서 액티브 상태로 전환할 수 있다.
그리고 S1317 단계에서, 콘트롤러 709는 활성화된 통신 인터페이스 2를 통해 DNS 문의를 DNS 서버로 전송할 수 있다. 예를 들면, 도 15의 (c)와 같이, 1503 시점으로 제3 임계시간이 경과하면, 콘트롤러 709는 1505 시점에서 통신 인터페이스 2를 통해 DNS 문의를 전송할 수 있다.
도 14는 본 발명의 실시 예에 따른 임계값들과 이전 DNS 레졸루션 타임들 간의 연관관계를 도시한 그래프이고, 도 15는 본 발명의 실시 예에 따른 도 14의 연관관계에 대응되는 DNS 문의에 따른 DNS 응답을 도시한 그래프이다.
도 14의 (a)는 통신 인터페이스 1의 제1 DNS 레졸루션 타임 1401(Inf1 Time)이 제1 임계시간(Min Threshold 1)보다 크고, 통신 인터페이스 2의 제2 DNS 레졸루션 타임(Inf2 Time)의 제2 임계시간(Threshold 2) 범위 내에 속하는 경우를 도시한 그래프이다. 이러한 경우에는, 도 15의 (a)에 도시된 바와 같이, 콘트롤러 709는 DNS 문의를 모든 통신 인터페이스들(WiFi 및 3G/LTE)을 통해 DNS 서버들로 전송하고, DNS 서버들로부터 DNS 응답들을 수신하여 DNS 캐쉬 717에 저장(캐쉬)할 수 있다. 이때, 콘트롤러 709는 먼저 수신된 DNS 응답에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
도 14의 (b)는 통신 인터페이스 1의 제1 DNS 레졸루션 타임 1403이 제1 임계시간 미만인 경우를 도시한 그래프이고, 도 14의 (c)는 통신 인터페이스 1의 제1 DNS 레졸루션 타임 1405가 제1 임계시간보다 크고, 통신 인터페이스 2의 제2 DNS 레졸루션 타임의 제2 임계시간 범위 밖에 속하는 경우를 도시한 그래프이다. 도 14의 (b) 및 (c)의 경우에는, 도 15의 (b)에 도시된 바와 같이, 콘트롤러 709는 DNS 문의를 통신 인터페이스 1(예: WiFi 통신 인터페이스 719)를 통해 DNS 서버로 전송하고, DNS 서버로부터 통신 인터페이스 1을 통해 DNS 응답을 수신하여 저장할 수 있다. 그리고 콘트롤러 709는 수신된 DNS 응답에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
도 15 (b)에서, DNS 문의가 DNS 서버로 전송된 후에, DNS 서버로부터 제3 임계시간(Threshold 3) 동안에 DNS 응답이 수신되지 못하는 경우에는, 도 15의 (c)에 도시된 바와 같이, 콘트롤러 709는 통신 인터페이스 1이 아닌 통신 인터페이스 2(예: 3G/LTE 통신 인터페이스 721)를 통해 DNS 서버로 DNS 문의를 전송하며, DNS 서버로부터 DNS 응답을 수신하여 저장(캐쉬)할 수 있다. 그리고, 콘트롤러 709는 수신된 DNS 응답에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
예를 들면, DNS 응답에 관한 정보(예: 통신 인터페이스 1 또는 2의 DNS 레졸루션 타임)는 DNS 캐쉬 717 또는 네트워크 상태 매니저 711에 저장될 수 있다. DNS 응답에 관한 정보는 다음 DNS 문의 전송에 대한 네트워크 상태를 판단하기 위한 정보로서 이용될 수 있다.
한편, 복수의 통신 인터페이스들(WiFi 및 3G/LTE 통신 인터페이스들 719 및 721)을 통해 수신된 DNS 응답에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 때, 콘트롤러 709는 통신 인터페이스들 각각을 식별하기 위한 통신 인터페이스 식별정보를 IP 주소 정보와 함께 URL 프로토콜 핸들러 705로 전송할 수 있다.
도 16은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 응답에 따라 HTTP를 요청하는 흐름도이다.
도 16에 따르면, S1601 단계에서, DNS 핸들러 707은 DNS 문의가 하나의 통신 인터페이스를 통해 전송되는지 여부를 확인할 수 있다. 예를 들면, DNS 핸들러 707은 통신 인터페이스별 DNS 레졸루션 타임을 기반으로 DNS 문의를 전송할 통신 인터페이스를 결정할 수 있다.
확인 결과, DNS 문의가 하나의 통신 인터페이스를 통해 전송되면, DNS 핸들러 707은 S1603 단계로 진행하고, 그렇지 않으면, S1605로 진행할 수 있다.
만일, S1603 단계로 진행하면, DNS 핸들러 707은 복수의 통신 인터페이스들을 통해 동시에 DNS 문의를 전송할 수 있다. 만일, S1605 단계로 진행하면, DNS 핸들러 707은 통신 인터페이스 1을 통해 DNS 문의를 DNS 서버로 전송할 수 있다. S1607 단계에서, DNS 핸들러 707은 DNS 문의를 전송한 후에 미리 지정된 시간(예를 들면, 제3임계시간)이 경과하는 것을 확인할 수 있다. S1609 단계에서, DNS 핸들러 707은 통신 인터페이스 2를 활성화시키고, S1611 단계에서, 통신 인터페이스 2를 통해 DNS 문의를 DNS 서버로 전송할 수 있다. 즉, DNS 핸들러 707은 S1605 내지 S1611 단계들을 수행함으로써 복수의 통신 인터페이스들을 통해 순차적으로 DNS 문의를 전송할 수 있다.
S1613 단계에서, DNS 핸들러 707은 복수의 통신 인터페이스들을 통해 DNS 응답을 수신할 수 있다. S1615 단계에서, DNS 핸들러 707은 수신된 DNS 응답에 대응하는 IP 주소 정보를 해당 통신 인터페이스 식별정보와 함께 URL 프로토콜 핸들러 705로 전송할 수 있다. S1617 단계에서, URL 프로토콜 핸들러 705는 수신된 통신 인터페이스 식별정보를 확인함으로써 수신된 IP 주소 정보가 어느 통신 인터페이스를 통해 수신되는지를 판단할 수 있다. 그 판단 결과에 따라, URL 프로토콜 핸들러 705는 수신된 IP 주소 정보에 대응하는 통신 인터페이스를 통해 HTTP 요청을 전송할 수 있다.
도 17은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 레졸루션을 수행하는 흐름도이다.도 17을 참조하면, S1701 단계에서, DNS 핸들러 707은, URL 프로토콜 핸들러 705로부터 호스트에 대한 DNS 문의를 수신하면, 메모리에 저장된 DNS 캐쉬 정보와 상기 DNS 문의에 포함된 DNS 문의 정보를 비교할 수 있다. 여기서, 메모리는 도 7의 DNS 캐쉬 717에 대응하는 구성요소이다.
DNS 캐쉬 정보는 호스트 네임 정보, 통신 인터페이스 식별 정보, 통신 인터페이스에 대응하는 IP 버전 정보 및 호스트 네임에 대응하는 IP 주소 정보를 포함할 수 있다. 호스트 네임 정보, 통신 인터페이스 식별 정보, 통신 인터페이스에 대응하는 IP 버전 정보 및 호스트 네임에 대응하는 IP 주소 정보는 상호 매핑될 수 있다.
예를 들어, 도 9에 도시된 바와 같이, 메모리에 저장된 DNS 캐쉬 정보 901은 IP 버전 정보에 해당하는 IPv6와, 호스트 네임 정보에 해당하는 ABC와, 통신 인터페이스 식별 정보에 해당하는 Inf0와, IP 주소 정보에 해당하는 IP0를 포함할 수 있다. 다른 예로, DNS 캐쉬 정보 903은 IP 버전 정보에 해당하는 IPv4와, 호스트 네임 정보에 해당하는 ABC와, 통신 인터페이스 식별 정보에 해당하는 Inf1과, IP 주소 정보에 해당하는 IP1을 포함할 수 있다. 또 다른 예로, DNS 캐쉬 정보 905는 IP 버전 정보에 해당하는 IPv6와 호스트 네임 정보에 해당하는 ABC와 함께, 통신 인터페이스 식별 정보에 해당하는 Inf0 및 Inf1과, IP 주소 정보에 해당하는 IP2 및 IP3을 포함할 수 있다. 즉, DNS 캐쉬 정보는 하나의IP 버전 정보 및 호스트 네임 정보와, 서로 다른 복수의 통신 인터페이스 식별 정보들 및 서로 다른 복수의 IP 주소 정보들을 포함할 수 있다. 또 다른 예로, DNS 캐쉬 정보 907은 IP 버전 정보에 해당하는 IPv6와 호스트 네임 정보에 해당하는 ABC와 함께, 통신 인터페이스 식별 정보에 해당하는 Inf0 및 Inf1과, IP 주소 정보에 해당하는 IP4 및 NoHost를 포함할 수 있다. 여기서, NoHost는 IP 버전 정보, 호스트 네임 정보 및 통신 인터페이스 식별 정보에 매핑되는 호스트의 IP 주소 정보가 존재하지 않음을 의미한다.
DNS 문의 정보는 통신 인터페이스 식별 정보, 통신 인터페이스에 대응하는 IP 버전 정보 및 호스트 네임 정보 등을 포함할 수 있다. 통신 인터페이스 식별 정보, IP 버전 정보 및 호스트 네임 정보는 호스트의 IP 주소 정보를 획득하기 위한 정보이다.
비교 결과, 복수의 DNS 캐쉬 정보들 중에서 DNS 문의 정보와 일치하는 DNS 캐쉬 정보가 존재하면, DNS 핸들러 705는 S1703 단계로 진행하고, 그렇지 않으면, S1705 단계로 진행할 수 있다.
만일, S1703 단계로 진행하면, DNS 핸들러 707은 일치하는 DNS 캐쉬 정보의 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다. 예를 들면, 복수의 DNS 캐쉬 정보들 각각에 포함된 IP 버전 정보 및/또는 호스트 네임 정보가 DNS 문의 정보에 포함된 IP 버전 정보 및/또는 호스트 네임 정보와 일치하면, DNS 핸들러 707은 IP 버전 정보 및/또는 호스트 네임 정보에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
예를 들면, DNS 문의 정보에 포함된 IP 버전 정보가 IPv4이며 호스트 네임이 ABC일 때, 메모리가 DNS 캐쉬 정보들 901 내지 907을 포함하는 경우, DNS 핸들러 707은 DNS 캐쉬 정보들 901 내지 907 중에서 IP 버전이 IPv4이며 호스트 네임이 ABC인 DNS 캐쉬 정보 903을 검색하고, 검색된 DNS 캐쉬 정보에 포함된 통신 인터페이스 식별 정보 Inf1과 IP 주소 정보 IP1을 URL 프로토콜 핸들러 705로 전송할 수 있다.
다른 예로, DNS 문의 정보에 포함된 IP 버전 정보가 IPv6이고, 호스트 네임 정보가 ABC에 해당하고, 메모리에 저장된 DNS 캐쉬 정보가 도 9의 DNS 캐쉬 정보 905인 경우, DNS 캐쉬 정보 905가 IP 버전 정보에 해당하는 IPv6와 호스트 네임 정보에 해당하는 ABC와 함께, 통신 인터페이스 식별 정보에 해당하는 Inf0 및 Inf1과, IP 주소 정보에 해당하는 IP2 및 IP3를 포함하므로, DNS 핸들러 707은 DNS 캐쉬 정보 905에 포함된 통신 인터페이스 식별 정보 Inf0와 IP 주소 정보 IP2를 URL 프로토콜 핸들러 705로 전송하거나 통신 인터페이스 식별 정보 Inf1과 IP 주소 정보 IP3을 URL 프로토콜 핸들러 705로 전송할 수 있다.
이때, DNS 캐쉬 정보 내에 DNS 문의 정보의 IP 버전 정보 및 호스트 네임 정보에 대응하는 IP 주소 정보가 2개 이상 존재하면, DNS 핸들러 707은 복수의 IP 주소 정보들 중에서 미리 설정된 방식에 따라 하나의 IP 주소 정보를 선택하여 URL 프로토콜 핸들러 705로 전송할 수 있다. 여기서, 미리 설정된 방식은, 복수의 IP 주소 정보들 중에서 상대적으로 적은 전력을 소비하는 IP 주소 정보를 선택하거나, IP 주소 정보들 중에서 전송 속도가 빠른 통신 인터페이스에 대응하는 IP 주소 정보를 선택하는 것이 될 수 있다.
예를 들어, DNS 캐쉬 정보 905에 저장된 정보 중에서 통신 인터페이스 식별 정보 Inf0에 해당하는 WiFi 통신 인터페이스 719의 전송 속도가 통신 인터페이스 식별 정보 Inf1에 해당하는 3G/LTE 통신 인터페이스 721보다 빠른 경우에는, DNS 핸들러 707은 통신 인터페이스 식별 정보 Inf0에 대응되는 IP 주소 정보 IP2를 URL 프로토콜 핸들러 705로 전송할 수 있다.
또 다른 예로, DNS 문의 정보에 포함된 IP 버전 정보가 IPv6이고, 호스트 네임 정보가 ABC이며, DNS 캐쉬 정보가 도 9의 DNS 캐쉬 정보 907인 경우,DNS 캐쉬 정보 907이 IP 버전 정보에 해당하는 IPv6와 호스트 네임 정보에 해당하는 ABC와 함께, 통신 인터페이스 식별 정보에 해당하는 Inf0 및 Inf1과, IP 주소 정보에 해당하는 IP4 및 NoHost를 포함하므로, DNS 핸들러 707은 DNS 캐쉬 정보 907에 포함된 통신 인터페이스 식별 정보 Inf1과 IP 주소 정보 IP4를 URL 프로토콜 핸들러 705로 전송할 수 있다. 이때, 통신 인터페이스 식별 정보 Inf0에 매칭되는 IP 주소 정보가 존재하지 않으므로(NoHost), DNS 핸들러 707은 통신 인터페이스 식별정보 Inf0 및 이에 대응하는 NoHost 정보를 URL 프로토콜 핸들러 705로 전송하지 않을 수 있다.
만일, S1705 단계로 진행하면, DNS 핸들러 707은 DNS 문의를 적어도 하나 이상의 통신 인터페이스를 통해 DNS 서버로 전송할 수 있다. S1705 단계는 후술하는 도 18에서 상세히 설명한다.
S1707 단계에서, DNS 핸들러 707은 DNS 서버로부터 DNS 문의에 대한 응답으로 IP 주소 정보를 포함하는 DNS 응답을 수신할 수 있다. 이때, DNS 핸들러 707은 DNS 서버로부터 DNS 문의에 따른 DNS 응답을 네트워크를 통해 수신할 수 있다. DNS 응답은 DNS 문의를 DNS 서버로 전송한 통신 인터페이스를 통해 수신될 수 있다. 예를 들어, DNS 문의가 WiFi 통신 인터페이스 719를 통해 DNS 서버로 전송되면, DNS 핸들러 707은 DNS 응답을 WiFi 통신 인터페이스 719를 통해 수신할 수 있다. 다른 예로, DNS 문의가 3G/LTE 통신 인터페이스 721을 통해 DNS 서버로 전송되면, DNS 핸들러 707은 DNS 응답을 3G/LTE 통신 인터페이스 721을 통해 수신할 수 있다.
S1709 단계에서, DNS 핸들러 707은 수신된 DNS 응답에 포함된 IP 주소 정보를 저장하고 URL 프로토콜 핸들러 705로 전송할 수 있다. 예를 들면, DNS 응답이 복수의 통신 인터페이스들 각각을 통해 수신되는 경우에는, DNS 핸들러 707은 먼저 수신된 DNS 응답에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다.
이때, DNS 핸들러 707은 IP 주소 정보와 함께 DNS 응답을 수신한 통신 인터페이스 식별 정보를 상기 URL 프로토콜 핸들러 705로 전송할 수 있다. 예를 들면, DNS 응답이 3G/LTE 통신 인터페이스 721을 통해 수신되는 경우, DNS 핸들러 707은 수신된 DNS 응답에 포함된 IP 주소 정보와 3G/LTE 통신 인터페이스 721의 식별 정보를 URL 프로토콜 핸들러 705로 전송할 수 있다. 이에 따라, URL 프로토콜 핸들러 705는 IP 주소 정보와 함께 통신 인터페이스 식별 정보를 확인함으로써 우선 수신된 IP 주소 정보가 어느 통신 인터페이스를 통해 수신되는지를 판단할 수 있다. 그리고 URL 프로토콜 핸들러 705는 우선 수신된 IP 주소 정보에 대응하는 통신 인터페이스를 통해 HTTP 요청을 전송할 수 있다.
한 실시 예에 따르면, 수신된 DNS 응답에 포함된 IP 주소 정보가 DNS 캐쉬 정보로서 메모리에 저장될 수 있다. DNS 캐쉬 정보는 수신된 DNS 응답에 대응하는 IP 버전 정보, 호스트 네임 정보, 통신 인터페이스 식별 정보 및 DNS 서버로부터 수신된 IP 주소 정보를 포함할 수 있다. 메모리에 저장된 DNS 캐쉬 정보는 이후의 DNS 레졸루션을 위한 정보로 이용될 수 있다.
도 18은 본 발명의 실시 예에 따른 휴대용 단말기에서 DNS 문의 신호를DNS 서버로 전송하는 흐름도이다. 특히, 통신 인터페이스의 종류가 2개 이상인 경우, DNS 핸들러 705는 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스를 결정하고, 결정된 통신 인터페이스를 통해 DNS 문의를 DNS 서버로 전송할 수 있다.
이때, DNS 핸들러 705는 미리 설정된 방식에 따라 복수의 통신 인터페이스들 중에서 어느 하나의 통신 인터페이스를 결정할 수 있다. 여기서, 미리 설정된 방식은, 복수의 통신 인터페이스들 중에서 상대적으로 적은 전력을 소비하는 통신 인터페이스를 선택하거나 전송 속도가 빠른 통신 인터페이스를 선택하는 것이 될 수 있다. 예를 들면, WiFi 통신 인터페이스 719 및 3G/LTE 통신 인터페이스 721이 존재할 때, WiFi 통신 인터페이스 719의 전송 속도가 3G/LTE 통신 인터페이스 721보다 빠른 경우에는, DNS 핸들러 705는 WiFi 통신 인터페이스 719를 DNS 문의를 DNS 서버로 전송하기 위한 통신 인터페이스로 결정할 수 있다.
도 18을 참조하면, S1801 단계에서, DNS 핸들러 705는2개 이상의 통신 인터페이스들 중 하나에 해당하는 통신 인터페이스 1을 통한 제1 DNS 레졸루션 시간(inf1 Time)이 제1 임계시간 이하인지 여부를 판단한다. 여기서, 제1 DNS 레졸루션 시간은 제1 통신 인터페이스에 의한 이전의 DNS 레졸루션에 따른 소요 시간을 의미한다. 즉, 이전 과정에서 통신 인터페이스 1을 통해 DNS 레졸루션을 달성하는데 경과한 시간을 의미한다. 이러한, 제1 DNS 레졸루션 시간은 후술하는 네트워크 상태 매니저 711에 저장될 수 있다. 예를 들어, 도 14에 도시된 바와 같이, DNS 핸들러 705는 통신 인터페이스 1의 제1 DNS 레졸루션 시간 1403(Inf1 Time)이 제1 임계시간(Min Threshold 1) 이하인지 여부를 판단할 수 있다.
판단 결과, 제1 DNS 레졸루션 시간이 제1 임계시간 이하이면, DNS 핸들러 705는 S1807로 진행하고, 그렇지 않으면, S1803으로 진행할 수 있다.
만일, S1803 단계로 진행하면, DNS 핸들러 705는, 제1 DNS 레졸루션 시간이 2개 이상의 통신 인터페이스들 중 다른 하나에 해당하는 통신 인터페이스 2를 통한 제2 DNS 레졸루션 시간을 기준으로 제2 임계시간 범위 내에 존재하는지 여부를 판단할 수 있다. 여기서, 제2 DNS 레졸루션 시간은 통신 인터페이스 2에 의한 이전의 DNS 레졸루션에 따른 소요 시간을 의미한다. 즉, 이전 과정에서 통신 인터페이스 2를 통해 DNS 레졸루션을 달성하는데 경과한 시간을 의미한다. 이러한, 제2 DNS 레졸루션 시간도 네트워크 상태 매니저 711에 저장될 수 있다. 예를 들면, 14에 도시된 바와 같이, DNS 핸들러 705는 통신 인터페이스 1의 제1 DNS 레졸루션 시간 1401이 제1 임계시간(Min Threshold1) 보다 클 때, 제1 DNS 레졸루션 시간이 제2 DNS 레졸루션 시간(Inf2 Time)의 제2 임계시간 범위(Threshold2) 내에 속하는지 여부를 판단할 수 있다.
판단 결과, 제1 DNS 레졸루션 시간이 제2 임계시간 범위 내에 존재하면, DNS 핸들러 705는 S1805 단계로 진행하고, 그렇지 않으면, S1807 단계로 진행할 수 있다.
만일, S1805 단계로 진행하면, DNS 핸들러 705는 DNS 문의를 통신 인터페이스 1 및 통신 인터페이스 2를 통해 DNS 서버 1 및 DNS 서버 2로 전송할 수 있다. 예를 들어, 도 14의 (a)에 도시된 바와 같이, 통신 인터페이스 1의 제1 DNS 레졸루션 시간(Inf1 Time)이 제1 임계시간(Min Threshold1)을 초과하고 통신 인터페이스 2의 제2 DNS 레졸루션 시간(Inf2 Time)의 제2 임계시간 범위(Threshold2) 내에 속하는 경우, DNS 핸들러 705는 도 15의 (a)에 도시된 바와 같이, DNS 문의를 모든 통신 인터페이스들(WiFi 및 3G/LTE)을 통해 DNS 서버 1 및 DNS 서버 2로 각각 전송할 수 있다.
만일, S1807 단계로 진행하면, DNS 핸들러 705는 통신 인터페이스 1을 통해 DNS 문의를 DNS 서버 1로 전송할 수 있다.
예를 들어, 도 14의 (b)에 도시된 바와 같이, 통신 인터페이스 1의 제1 DNS 레졸루션 시간(Inf1 Time)이 제1 임계시간(Min Threshold1) 이하에 존재하면, DNS 핸들러 705는 도 15의 (b)와 같이, DNS 문의를 제1 통신 인터페이스(WiFi)를 통해 DNS 서버 1로 전송할 수 있다. 다른 예로, 도 14의 (c)에 도시된 바와 같이, 통신 인터페이스 1의 제1 DNS 레졸루션 시간(Inf1 Time)이 제1 임계시간(Min Threshold1)보다 크고, 통신 인터페이스 2의 제2 DNS 레졸루션 시간(Inf2 Time)의 제2 임계시간 범위(Threshold2) 내에 속하지 않는 경우, DNS 핸들러 705는 도 15의 (b)에 도시된 바와 같이, DNS 문의를 통신 인터페이스 1(WiFi)을 통해 DNS 서버 2로 전송할 수 있다.
S1809 단계에서, DNS 핸들러 705는 전송한 DNS 문의에 대응하는 DNS 응답이 제3 임계시간 내에 수신되는지 여부를 판단할 수 있다. 여기서, 제3 임계시간은 DNS 레졸루션을 위한 평균 시간을 의미한다. DNS 레졸루션을 위한 평균 시간은 각 DNS 레졸루션의 시간의 합산값을 DNS 레졸루션 횟수로 나눈 값을 의미한다.
판단 결과, DNS 응답이 제3 임계시간 내에 수신되면, DNS 핸들러 705는 DNS 문의 전송 절차를 종료할 수 있다. 이와 달리, DNS 응답이 제3 임계시간 내에 수신되지 않으면, DNS 핸들러 705는 S1811 단계로 진행할 수 있다.
S1811 단계에서, DNS 핸들러 705는 2개 이상의 통신 인터페이스들 중에서 통신 인터페이스 2를 통해 DNS 문의를 DNS 서버 2로 전송할 수 있다. DNS 문의가 통신 인터페이스 1을 통해 DNS 서버 1로 전송된 후에, 제3 임계시간 이내에 DNS 응답을 수신하지 못하였다는 것은, 통신 인터페이스 1의 전송 속도가 늦다는 것을 의미한다. 따라서, 이때에는, 도 15의 (c)에 도시된 바와 같이, DNS 핸들러 705는 통신 인터페이스 1(WiFi)이 아닌 다른 통신 인터페이스 즉, 통신 인터페이스 2(3G/LTE)를 통해 DNS 서버 2로 DNS 문의를 전송할 수 있다.
도 19는 본 발명의 실시 예에 따른 휴대용 단말기의 블록 구성도이다.
본 발명에 따른 DNS 레졸루션 장치 1901은 휴대용 단말기 내에 구비되어 있는 것으로, 휴대용 단말기는 DNS 레졸루션 장치 1901 이외에 URL 프로토콜 핸들러 1913, 통신 인터페이스 1 1915 및 통신 인터페이스 2 1917을 포함하며, 휴대용 단말기의 일반적인 동작을 위한 구성요소는 도시되어 있지 않다. 기타 구성요소로서, 설명의 편의를 위해, DNS 서버 1 1921 및 DNS 서버 2 1931이 도시되어 있다. 한편, 도 19에서는 2개의 DNS 서브 핸들러들과 통신 인터페이스들을 각각 도시하였지만, 이것은 예시적인 것에 불과하며 필요에 따라 그 개수는 증가할 수 있다.
여기서, 휴대용 단말기는 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상전화기, 전자북 리더기(e-book reader), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 전자장치(wearable device)(예: 전자 안경과 같은 head-mounted-device(HMD), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 또는 스마트 와치(smart watch)) 등을 포함한다.
DNS 레졸루션 장치 1901은 메모리 1905, 콘트롤러 1903, 네트워크 상태 매니저 1907, DNS 서브 핸들러 1 1909 및 DNS 서브 핸들러 2 1911을 포함한다.
메모리 1905는 DNS 캐쉬 정보를 저장한다. 메모리 1905는 호스트 네임 정보, 통신 인터페이스 식별 정보, 통신 인터페이스에 대응하는 IP 버전 정보 및 호스트 네임에 대응하는 IP 주소 정보 등을 상호 매핑하여 저장한다. DNS 캐쉬 정보는 동일한 IP 버전 정보 및 호스트 네임 정보, 통신 인터페이스 식별 정보 및 IP 주소 정보를 포함할 수 있다. 메모리 1905는 DNS 캐쉬 정보를 적어도 하나 저장할 수 있다.
콘트롤러 1903은 URL 프로토콜 핸들러 1913으로부터 호스트에 대한 DNS 문의를 수신하면, 메모리 1905에 저장된 DNS 캐쉬 정보와 DNS 문의에 포함된 DNS 문의 정보를 비교하고, DNS 캐쉬 정보와 DNS 문의 정보의 비교 결과에 따라, 호스트에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 1913으로 전송한다. 여기서, DNS 문의 정보는 통신 인터페이스 식별 정보, IP 버전 정보 및 호스트 네임 정보 등을 포함할 수 있다.
콘트롤러 1903은 메모리 1905를 액세스하여, DNS 캐쉬 정보에 포함된 IP 버전 정보 및/또는 호스트 네임 정보가 DNS 문의 정보에 포함된 IP 버전 정보 및/또는 호스트 네임 정보와 일치하면, IP 버전 정보 및/또는 호스트 네임 정보에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 1913으로 전송한다.
콘트롤러 1903은 IP 버전 정보 및 호스트 네임 정보에 대응하는 IP 주소 정보가 2개 이상 존재한다면, 2개 이상의 IP 주소 정보들 중에서 미리 설정된 방식에 따른 IP 주소 정보를 URL 프로토콜 핸들러 1913으로 전송한다. 이때, 콘트롤러 1903은 2개 이상의 IP 주소 정보들 중에서 상대적으로 적은 전력을 소비하거나, 전송 속도가 빠른 통신 인터페이스에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 1913으로 전송한다.
DNS 서브 핸들러 1 1909 및 DNS 서브 핸들러 2 1911은 각각 콘트롤러 1903의 제어에 따라, DNS 문의를 통신 인터페이스 1 1915 및 통신 인터페이스 2 1917을 통해 각각 DNS 서버 1 1921 및 DNS 서버 2 1931로 전송한다.
콘트롤러 1903은 메모리 1905를 액세스하여, DNS 캐쉬 정보에 포함된 IP 버전 정보 및 호스트 네임 정보가 DNS 문의 정보에 포함된 IP 버전 정보 및 호스트 네임 정보와 일치하지 않는다면, DNS 문의를 통신 인터페이스 1 1915 및 통신 인터페이스 2 1917 중 적어도 하나의 통신 인터페이스를 통해 DNS 서버 1 1921 및 DNS 서버 2 1931로 전송하도록 제어한다. 그 후, DNS 서버 1 1921 및/또는 DNS 서버 2 1931으로부터 DNS 문의에 대응하는 IP 주소 정보를 포함하는 DNS 응답을 하나 이상의 통신 인터페이스를 통해 수신하면, 콘트롤러 1903은 수신된 DNS 응답에 포함된 IP 주소 정보를 URL 프로토콜 핸들러 1913으로 전송한다.
콘트롤러 1903은 통신 인터페이스가 2개 이상인 경우, 2개 이상의 통신 인터페이스들 중 적어도 하나 이상의 통신 인터페이스를 결정하고, 결정된 통신 인터페이스를 통해 DNS 문의를 DNS 서버로 전송하도록 제어한다. 콘트롤러 1903은 2개 이상의 통신 인터페이스들 중에서 상대적으로 적은 전력을 소비하거나, 전송 속도가 빠른 통신 인터페이스를 DNS 문의를 전송하는 통신 인터페이스로 결정한다.
네트워크 상태 매니저 1907은 적어도 하나 이상의 통신 인터페이스에 의한 이전의 DNS 레졸루션에 따른 소요 시간을 의미하는 DNS 레졸루션 시간을 저장 및 관리한다. 네트워크 상태 매니저 1907은 DNS 레졸루션이 수행된 각각의 통신 인터페이스 별로 구분하여 DNS 레졸루션 시간을 저장 및 관리한다. 예를 들어, 네트워크 상태 매니저 1907은 통신 인터페이스 1 1915를 통해 수행된 DNS 레졸루션에 따른 제1 DNS 레졸루션 시간을 저장하며, 통신 인터페이스 2 1917을 통해 수행된 DNS 레졸루션에 따른 제2 DNS 레졸루션 시간을 저장한다.
콘트롤러 1903은 네트워크 상태 매니저 1907을 액세스하여, 2개 이상의 통신 인터페이스들 중 하나에 해당하는 통신 인터페이스 1 1915를 통한 제1 DNS 레졸루션 시간이 제1 임계시간 이하에 해당하는가를 판단하고, 제1 DNS 레졸루션 시간이 제1 임계시간 이하에 해당한다면, 통신 인터페이스 1 1915를 통해 DNS 문의를 통신 인터페이스 1 1915에 대응하는 DNS 서버 1 1921로 전송하도록 제어한다.
콘트롤러 1903은 제1 DNS 레졸루션 시간이 제1 임계시간을 초과한다면, 제1 DNS 레졸루션 시간이 2개 이상의 통신 인터페이스들 중 다른 하나에 해당하는 통신 인터페이스 2 1917을 통한 제2 DNS 레졸루션 시간의 제2 임계시간 범위 내에 해당하는가를 판단하고, 제1 DNS 레졸루션 시간이 제2 임계시간 범위 내에 해당하지 않는다면, 통신 인터페이스 1 1915를 통해 DNS 문의신호를 DNS 서버 1 1921로 전송하도록 제어한다.
콘트롤러 1903은 제1 DNS 레졸루션 시간이 제2 임계시간 범위 내에 해당한다면, DNS 문의신호를 통신 인터페이스 1 1915 및 통신 인터페이스 2 1917을 통해 각각 DNS 서버 1 1921 및 DNS 서버 2 1931로 전송하도록 제어한다.
콘트롤러 1903은 결정된 통신 인터페이스를 통해 DNS 문의를 DNS 서버로 전송한 후에, DNS 문의에 대응하는 DNS 응답을 제3 임계시간 내에 수신하였는가를 판단하고, DNS 응답이 제3 임계시간 내에 수신되지 않았다면, 2개 이상의 통신 인터페이스들 중에서 어느 하나의 통신 인터페이스를 통해 DNS 문의를 DNS 서버로 전송하도록 제어한다. 제3 임계시간은 DNS 레졸루션을 위한 평균 시간에 해당한다.
콘트롤러 1903은 DNS 문의에 대응하는 DNS 응답이 2개 이상의 통신 인터페이스들을 통해 수신되는 경우에, 먼저 수신된 DNS 응답에 대응하는 IP 주소 정보를 URL 프로토콜 핸들러 1913으로 전송한다. 이때, 콘트롤러 1903은 2개 이상의 통신 인터페이스들 중에서 DNS 응답을 수신한 통신 인터페이스의 식별 정보를 IP 주소 정보와 함께 URL 프로토콜 핸들러 1913으로 전송한다.
콘트롤러 1903은 수신된 DNS 응답에 포함된 IP 주소 정보를 DNS 캐쉬 정보로서 메모리 1905에 저장하도록 제어한다. 콘트롤러 1903은 수신된 DNS 응답에 대응하는 IP 버전 정보, 호스트 네임 정보, 통신 인터페이스 식별 정보를 IP 주소 정보와 각각 매핑하여 저장하도록 제어한다.
본 발명에 따르면, DNS 레졸루션에 대해 다음과 같은 동작 특성이 있다.
도 20은 본 발명의 실시 예에 따라 서로 다른 IP 버전을 가지는 복수의 통신 인터페이스들을 포함하는 휴대용 단말기의 블록 구성도이다.
도 20에 따르면, 통신 인터페이스 0 2003이 IPv4에 해당하고, 통신 인터페이스 1이 IPv6에 해당하는 경우이다. 예를 들면, DNS 핸들러 2001이 IPv4에 대한 DNS 문의를 수신하면, DNS 문의가 통신 인터페이스 0 2003을 통해 DNS 서버 1로 전송되고, DNS 문의에 대응되는 DNS 응답이 통신 인터페이스 0 2003을 통해 DNS 서버 1으로부터 수신될 수 잇다. 다른 예로, DNS 핸들러 2005가 IPv6에 대한 DNS 문의를 수신하면, DNS 문의가 통신 인터페이스 2 2007을 통해 DNS 서버 2로 전송되고, DNS 문의에 대응되는 DNS 응답이 통신 인터페이스 2 2007을 통해 DNS 서버 2로부터 수신될 수 있다.
도 21은 본 발명의 제1실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 21에 따르면, DNS 핸들러 2101의 콘트롤러는 URL 프로토콜 핸들러 2103으로부터 DNS 문의를 수신하면, DNS 캐쉬에 저장된 IP 주소 정보 중에서 DNS 문의에 대응되는 IP 주소 정보가 존재하는지 여부를 확인할 수 있다.
확인 결과, IP 주소 정보가 존재하지 않으면, 콘트롤러는 복수의 DNS 서브 핸들러들 1과 2 및 통신 인터페이스들 1과 2를 통해 DNS 문의를 DNS 서버들 1과 2로 전송하고, DNS 서버들 1과 2로부터 우선적으로 수신된 DNS 응답에 포함된 IP 주소 정보를 URL 프로토콜 핸들러 2103으로 전송할 수 있다. 이에 따르면, 통신 인터페이스들 1과 2 각각의 전송 속도에 따라 DNS 레졸루션을 신속하게 수행할 수 있도록 한다.
도 22는 본 발명의 제2실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 22에 따르면, DNS 핸들러 2201의 콘트롤러는 URL 프로토콜 핸들러 2203으로부터 특정 호스트에 대한 DNS 문의 1을 수신하면, 서브 핸들러 1을 이용하여 통신 인터페이스 1을 통해 DNS 서버 1로 DNS 문의 1을 전송할 수 있다. 그리고 콘트롤러는 DNS 문의 1에 대한 응답으로, 서브 핸들러 1을 이용하여 통신 인터페이스 1을 통해 DNS 서버 1로부터 DNS 응답을 수신하고, 수신된 DNS 응답에 포함된 IP 주소 정보를 DNS 캐쉬에 저장한 후, URL 프로토콜 핸들러 2203로 전송할 수 있다.
그 후에, 콘트롤러는 URL 프토토콜 핸들러 2203으로부터 특정 호스트에 대한 DNS 문의 2를 수신하면, DNS 캐쉬에 저장된 IP 주소 정보 중에서 DNS 문의에 대응되는 IP 주소 정보를 검색할 수 있다. 예를 들면, DNS 문의들 1과 2가 동일한 호스트에 대한 DNS 문의인 경우, 콘트롤러는 DNS 캐쉬로부터 DNS 문의 1에 대응되는 IP 주소 정보를 검출하여 URL 프로토콜 핸들러 2203으로 전송할 수 있다.
이에 따르면, 각각의 통신 인터페이스와 이와 대응하는 DNS 서버에 접속하지 않은 상태에서도 신속하게 DNS 레졸루션을 수행할 수 있도록 한다.
도 23은 본 발명의 제3실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 23에 따르면, DNS 핸들러 2301의 콘트롤러 2303은 URL 프로토콜 핸들러로부터 DNS 문의를 수신하면, 복수의 통신 인터페이스들(WiFi 및 3G/LTE) 중에서 전송 속도가 빠른 통신 인터페이스를 확인할 수 있다. 예를 들면, 콘트롤러 2303은 네트워크 상태 매니저 2305에 저장된 통신 인터페이스별 DNS 레졸루션 타임 정보를 기반으로 통신 인터페이스를 확인할 수 있다.
만일, WiFi 통신 인터페이스가 전송 속도가 빠른 통신 인터페이스로 확인되면, 콘트롤러 2303은 서브 핸들러 2307을 이용하여 WiFi 통신 인터페이스 2309를 통해 WiFi DNS 서버 2311로 DNS 문의를 전송할 수 있다
이와 같이, 콘트롤러 2303은 WiFi 통신 인터페이스를 통해서만 DNS 문의를 전송함으로써 DNS 레졸루션이 수행되며, 3G/LTE 통신 인터페이스는 대기 모드(Idle) 상태를 유지하게 된다. 이에 따라, 3G/LTE 통신 인터페이스의 비활성화로 인한 전력 소모를 방지할 수 있다.
도 24는 본 발명의 제4실시 예에 따라 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 24에 따르면, DNS 핸들러 2401의 콘트롤러 2403은 URL 프로토콜 핸들러로부터 호스트에 대한 DNS 문의를 수신할 수 있다. 그리고 콘트롤러 2403은 서브 핸들러 1 2405를 이용하여 WiFi 통신 인터페이스 2409를 통해 DNS 문의를 WiFi DNS 서버 2411로 전송할 수 있다. 그리고 콘트롤러 2403은 WiFi DNS 서버 2411로부터 DNS 응답을 수신하고, 수신된 DNS 응답을 기반으로 IP 주소 정보(예: DNS 캐쉬 정보)를 생성하여 DNS 캐쉬 2407에 저장할 수 있다.
그 이후에, DNS 핸들러 2401은 URL 프로토콜 핸들러로부터 다른 호스트에 대한 DNS 문의를 수신하면, 어느 하나의 통신 인터페이스가 네트워크와 연결되어 있지 않다고 하더라도, DNS 캐쉬 2407에 저장된 IP 주소 정보(예: DNS 캐쉬 정보)를 이용하여 DNS 레졸루션을 수행할 수 있다.
도 25는 본 발명의 실시 예에 따른 통신 인터페이스별 DNS 레졸루션 타임을 도시한 그래프이다.
도 25의 그래프 2501에 따르면, URL 프로토콜 핸들러는 2개 이상의 통신 인터페이스들의 DNS 레졸루션 타임들 2503과 2505 중에서 짧은 DNS 레졸루션 타임에 대응되는 통신 인터페이스(예를 들어, 3G/LTE 통신 인터페이스)를 통해 우선적으로 URL 문의(HTTP 요청) 2507을 전송할 수 있다.
도 26은 본 발명의 제5실시 예에 따른 휴대용 단말기에서 DNS 레졸루션을 수행하는 도면이다.
도 26에 따르면, DNS 핸들러 2601의 콘트롤러 2603은 URL 프로토콜 핸들러로부터 DNS 문의를 수신하면, 네트워크 상태 매니저 2605에 포함된 통신 인터페이스별 DNS 레졸류션 타임 정보를 기반으로 유효 통신 인터페이스(예: WiFi 통신 인터페이스 2611)를 결정할 수 있다. 그리고 콘트롤러 2603은 서브 핸들러 1 2607을 이용하여 WiFi 인터페이스 2611을 통해 DNS 문의를 WiFi DNS 서버 2621로 전송할 수 있다.
그 이후에, WiFi 통신 인터페이스 2621을 통해 DNS 응답이 일정 시간(예: 제3 임계시간)이 지나도 수신되지 않는 경우에는, 콘트롤러 2603은 서브 핸들러 2 2609를 이용하여 다른 통신 인터페이스인 3G/LTE 통신 인터페이스 2613을 통해 DNS 문의를 3G/LTE DNS 서버 2631로 전송할 수 있다. 이에 따라, DNS 핸들러 2601은 3G/LTE 통신 인터페이스 2631을 통해 DNS 응답을 신속하게 수신할 수 있다.
본 발명의 청구항 및/또는 명세서에 기재된 실시 예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다. 소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금, 본 발명의 청구항 및/또는 명세서에 기재된 실시 예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(ROM, Read Only Memory), 전기적 삭제가능 프로그램가능 롬(EEPROM, Electrically Erasable Programmable Read Only Memory), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(CD-ROM, Compact Disc-ROM), 디지털 다목적 디스크(DVDs, Digital Versatile Discs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 전자 장치에 인터넷(Internet), 인트라넷(Intranet), LAN(Local Area Network), WLAN(Wide LAN), 또는 SAN(Storage Area Network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 전자 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 휴대용 전자 장치에 접속할 수도 있다.

Claims (15)

  1. 무선 통신 시스템에서 단말의 동작 방법에 있어서,
    URL(Uniform Resource Locator) 프로토콜 핸들러로부터 호스트에 대한 DNS(Domain Name Service) 문의를 수신하면, 미리 저장된 DNS 캐쉬 정보와 상기 DNS 문의에 포함된 DNS 문의 정보를 비교하는 과정; 및
    상기 비교 결과에 따라, 상기 호스트에 대응하는 IP(Internet Protocol) 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정을 포함하는 방법.
  2. 제1항에 있어서,
    상기 DNS 캐쉬 정보는 호스트 네임 정보, 통신 인터페이스 식별 정보, 통신 인터페이스에 대응하는 IP 버전 정보 및 호스트 네임에 대응하는 IP 주소 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 DNS 문의 정보는 통신 인터페이스 식별 정보, 통신 인터페이스에 대응하는 IP 버전 정보 및 호스트 네임 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서, 상기 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정은,
    상기 DNS 캐쉬 정보에 포함된 호스트 네임 정보가 상기 DNS 문의 정보에 포함된 호스트 네임 정보와 일치한다면, 상기 호스트 네임 정보에 대응하는 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 것을 특징으로 하는 방법.
  5. 제1항에 있어서, 상기 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정은,
    상기 DNS 캐쉬정보에 포함된 IP 버전 정보 및 호스트 네임 정보가 상기 DNS 문의 정보에 포함된 IP 버전 정보 및 호스트 네임 정보와 일치한다면, 상기 IP 버전 정보 및 상기 호스트 네임 정보에 대응하는 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 것을 특징으로 하는 방법.
  6. 제5항에 있어서, 상기 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정은,
    상기 IP 버전 정보 및 상기 호스트 네임 정보에 대응하는 상기 IP 주소 정보가 적어도 2개 이상 존재하면, 복수의 통신 인터페이스들에 대한 전송 속도 및 전력 소비량 중 적어도 하나를 기반으로 상기 2개 이상의 IP 주소 정보들 중에서 하나의 IP 주소 정보를 선택하여 상기 URL 프로토콜 핸들러로 전송하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서, 상기 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정은,
    상기 DNS 캐쉬 정보에 포함된 호스트 네임 정보와 상기 DNS 문의 정보에 포함된 호스트 네임 정보와 일치하지 않으면, 상기 DNS 문의를 적어도 하나의 통신 인터페이스를 통해 DNS 서버로 전송하는 과정;
    상기 DNS 서버로부터 상기 DNS 문의에 대응하는 DNS 응답을 수신하여 저장하는 과정; 및
    상기 저장된 DNS 응답에 포함된 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정을 포함하는 것을 특징으로 하는 방법.
  8. 제7항에 있어서, 상기 DNS 문의를 상기 적어도 하나의 통신 인터페이스를 통해 상기 DNS 서버로 전송하는 과정은,
    복수의 통신 인터페이스들의 전력 소모량과 전송 속도 중 적어도 하나를 기반으로 상기 복수의 통신 인터페이스들 중 적어도 하나 이상의 통신 인터페이스를 결정하고, 상기 결정된 통신 인터페이스를 통해 상기 DNS 문의를 상기 DNS 서버로 전송하는 것을 특징으로 하는 방법.
  9. 제8항에 있어서, 상기 DNS 문의를 상기 적어도 하나의 통신인터페이스를 통해 상기 DNS 서버로 전송하는 과정은,
    상기 복수의 통신 인터페이스들 중 제1 통신 인터페이스를 통한 이전 DNS 레졸루션(resolution) 시간을 나타내는 제1 DNS 레졸루션 시간이 미리 지정된 제1 임계시간 이하인지를 판단하는 과정; 및
    상기 제1 DNS 레졸루션 시간이 상기 제1 임계시간 이하이면, 상기 제1 통신 인터페이스를 통해 상기 DNS 문의를 상기 제1 통신 인터페이스에 대응하는 제1 DNS 서버로 전송하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서, 상기 제1 DNS 레졸루션 시간이 상기 제1 임계시간을 초과하면, 상기 제1 DNS 레졸루션 시간이 상기 복수의 통신 인터페이스들 중 제2 통신 인터페이스를 통한 이전 DNS 레졸루션 시간을 나타내는 제2 DNS 레졸루션 시간의 제2 임계시간 범위 내에 존재하는지를 판단하는 과정; 및
    상기 제1 DNS 레졸루션 시간이 상기 제2 임계시간 범위 내에 존재하지 않으면, 상기 제1 통신 인터페이스를 통해 상기 DNS 문의를 상기 제1 DNS 서버로 전송하는 과정을 더 포함하는 방법.
  11. 제10항에 있어서, 상기 제1 DNS 레졸루션 시간이 상기 제2 임계시간 범위 내에 존재하면, 상기 DNS 문의를 상기 제1 통신 인터페이스 및 상기 제2 통신 인터페이스를 통해 상기 제1 DNS 서버 및 상기 제2 통신 인터페이스에 대응하는 제2 DNS 서버로 각각 전송하는 과정을 더 포함하는 방법.
  12. 제8항에 있어서, 상기 DNS 문의에 대응하는 상기 DNS 응답이 미리 지정된 제3 임계시간 내에 수신되는지를 판단하는 과정; 및
    상기 DNS 응답이 상기 제3 임계시간 내에 수신되지 않으면, 상기 복수의 통신 인터페이스들 중 다른 통신 인터페이스를 통해 상기 DNS 문의를 전송하는 과정을 더 포함하는 방법.
  13. 제8항에 있어서, 상기 DNS 문의에 대응하는 상기 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정은,
    상기 DNS 문의에 대응하는 상기 DNS 응답이 상기 복수의 통신 인터페이스들을 통해 수신되는 경우, 먼저 수신된 DNS 응답에 대응하는 IP 주소 정보를 저장한 후, 상기 URL 프로토콜 핸들러로 전송하는 것을 특징으로 하는 방법.
  14. 제8항에 있어서, 상기 DNS 문의에 대응하는 상기 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 과정은,
    상기 DNS 응답을 수신한 통신 인터페이스의 식별 정보와 상기 IP 주소 정보를 상기 URL 프로토콜 핸들러로 전송하는 것을 특징으로 하는 방법.
  15. 무선 통신 시스템에서 단말에 있어서,
    제1항 내지 제14항 중 어느 하나의 방법을 실행하는 제어부를 포함하는 단말.
PCT/KR2015/010423 2014-10-02 2015-10-02 무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법 WO2016053045A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/512,389 US10448325B2 (en) 2014-10-02 2015-10-02 Device and method for transmitting and receiving data to and from terminal in wireless communication system
EP15846781.1A EP3203706B1 (en) 2014-10-02 2015-10-02 Device and method for transmitting and receiving data to and from terminal in wireless communication system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020140133161A KR102154788B1 (ko) 2014-10-02 2014-10-02 무선 통신 시스템의 단말에서 DNS(Domain Name Service) 레졸루션 방법 및 장치
KR10-2014-0133161 2014-10-02

Publications (1)

Publication Number Publication Date
WO2016053045A1 true WO2016053045A1 (ko) 2016-04-07

Family

ID=55630987

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2015/010423 WO2016053045A1 (ko) 2014-10-02 2015-10-02 무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법

Country Status (4)

Country Link
US (1) US10448325B2 (ko)
EP (1) EP3203706B1 (ko)
KR (1) KR102154788B1 (ko)
WO (1) WO2016053045A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109218050A (zh) * 2017-06-30 2019-01-15 贵州白山云科技股份有限公司 一种域名系统故障处理方法和系统

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10142282B2 (en) * 2012-11-05 2018-11-27 Pismo Labs Technology Limited Methods and gateways for processing DNS request
KR101942158B1 (ko) * 2016-11-04 2019-02-19 주식회사 시큐아이 네트워크 보안 방법 및 그 장치
US10666603B2 (en) * 2017-07-13 2020-05-26 T-Mobile Usa, Inc. Optimizing routing of access to network domains via a wireless communication network
CN112565481B (zh) 2018-11-21 2022-04-12 Oppo广东移动通信有限公司 电子设备、域名查询方法及相关产品
CN110674098B (zh) * 2019-09-19 2022-04-22 浪潮电子信息产业股份有限公司 一种分布式文件系统中的域名解析方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100765238B1 (ko) * 2006-08-24 2007-10-09 엘지전자 주식회사 이동통신단말의 dns 정보 획득방법 및 이를 위한이동통신단말기
US20120179801A1 (en) * 2011-01-07 2012-07-12 Michael Luna System and method for reduction of mobile network traffic used for domain name system (dns) queries
KR20140036981A (ko) * 2012-09-16 2014-03-26 엘지전자 주식회사 클라이언트 기기 및 그 통신 수행 방법
US20140173123A1 (en) * 2012-12-14 2014-06-19 Apple Inc. Address family preference in multiple network interface environments
KR20140115197A (ko) * 2013-03-20 2014-09-30 주식회사에어플러그 무선 통신망에의 추가 접속시의 망 사용을 제어하는 방법과 그 방법을 위한 장치

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444371B2 (en) * 2004-03-11 2008-10-28 At&T Intellectual Property Ii, L.P. Method and apparatus for limiting reuse of domain name system response information
CN100502367C (zh) * 2007-04-04 2009-06-17 华为技术有限公司 保存域名系统记录的方法、装置
US7970940B1 (en) * 2009-12-22 2011-06-28 Intel Corporation Domain name system lookup latency reduction
US8671221B2 (en) * 2010-11-17 2014-03-11 Hola Networks Ltd. Method and system for increasing speed of domain name system resolution within a computing device
US8738765B2 (en) * 2011-06-14 2014-05-27 Lookout, Inc. Mobile device DNS optimization
KR20130014226A (ko) * 2011-07-29 2013-02-07 한국전자통신연구원 공격 트래픽 형태별 특성에 따른 dns 플러딩 공격 탐지 방법
US9215283B2 (en) 2011-09-30 2015-12-15 Alcatel Lucent System and method for mobility and multi-homing content retrieval applications
US8874790B2 (en) * 2011-12-30 2014-10-28 Verisign, Inc. DNS package in a partitioned network
US9866448B2 (en) * 2012-09-18 2018-01-09 Htc Corporation Electronic device and method for DNS processing
US9407530B2 (en) * 2012-09-21 2016-08-02 Interdigital Patent Holdings, Inc. Systems and methods for providing DNS server selection using ANDSF in multi-interface hosts
WO2014188233A1 (en) * 2013-05-23 2014-11-27 Pismo Labs Technology Ltd. Methods and systems for dynamic domain name system (ddns)
US9444916B2 (en) * 2013-08-26 2016-09-13 Seven Networks, Llc Enhanced caching of domain name system (DNS) and reverse DNS queries for traffic management for signaling optimization in a mobile network
US10296925B2 (en) * 2014-02-05 2019-05-21 PushSpring, Inc. Automatic profiling of a mobile device and/or its user
US9131032B1 (en) * 2014-03-10 2015-09-08 Cellco Partnership Methods and improvements in UICC polling mechanism for UICC management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100765238B1 (ko) * 2006-08-24 2007-10-09 엘지전자 주식회사 이동통신단말의 dns 정보 획득방법 및 이를 위한이동통신단말기
US20120179801A1 (en) * 2011-01-07 2012-07-12 Michael Luna System and method for reduction of mobile network traffic used for domain name system (dns) queries
KR20140036981A (ko) * 2012-09-16 2014-03-26 엘지전자 주식회사 클라이언트 기기 및 그 통신 수행 방법
US20140173123A1 (en) * 2012-12-14 2014-06-19 Apple Inc. Address family preference in multiple network interface environments
KR20140115197A (ko) * 2013-03-20 2014-09-30 주식회사에어플러그 무선 통신망에의 추가 접속시의 망 사용을 제어하는 방법과 그 방법을 위한 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109218050A (zh) * 2017-06-30 2019-01-15 贵州白山云科技股份有限公司 一种域名系统故障处理方法和系统
CN109218050B (zh) * 2017-06-30 2021-07-13 贵州白山云科技股份有限公司 一种域名系统故障处理方法和系统

Also Published As

Publication number Publication date
EP3203706A1 (en) 2017-08-09
US20170280386A1 (en) 2017-09-28
KR20160039882A (ko) 2016-04-12
KR102154788B1 (ko) 2020-09-11
EP3203706B1 (en) 2020-04-15
US10448325B2 (en) 2019-10-15
EP3203706A4 (en) 2017-09-27

Similar Documents

Publication Publication Date Title
WO2016053045A1 (ko) 무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법
WO2021040334A1 (en) Method and apparatus for providing data in edge computing system
WO2014010992A1 (ko) 컨텐츠 이름 기반의 컨텐츠 중심 네트워크에서 컨텐츠 및 실시간 스트리밍 컨텐츠 제공을 위한 컨텐츠 요청자 및 컨텐츠 제공자의 통신 방법
WO2014081264A1 (en) Method of packet transmission from node and contentowner in content-centric networking
WO2011087210A2 (ko) 전자기기 및 전자기기의 동작 방법
WO2015167258A1 (en) Proximity communication method and apparatus
WO2015016627A1 (ko) 동일한 네트워크 상의 복수개의 ap 장치 중 하나의 ap 장치와 단말기를 연결하는 방법 및 장치
WO2014168335A1 (ko) 콘텐츠 전송 네트워크에서의 거리 계산 방법 및 장치
WO2014030889A1 (en) Method and apparatus for sharing content
WO2016039576A2 (ko) 무선 통신 시스템에서 다중 망 접속을 위한 장치 및 방법
WO2019156506A1 (en) System and method for providing conversational contents
WO2020159283A1 (en) Electronic device and control method thereof
WO2015008953A1 (en) Method and apparatus for calculating location of electronic device
WO2020256497A1 (ko) 블루투스 통신 연결 방법 및 그 전자 장치
WO2014092505A1 (ko) 디앤에스 서비스 제공 방법 및 장치
WO2018076873A1 (zh) 数据分享方法、装置、介质、电子设备及系统
WO2022114483A1 (ko) 에지 컴퓨팅 서비스를 수행하는 전자 장치 및 전자 장치의 동작 방법
WO2019112241A1 (en) Server and method for defending malicious code using same
WO2019039713A1 (en) METHOD AND APPARATUS FOR LOCATION DETERMINATION USING IDENTIFICATION INFORMATION CORRESPONDING TO AN EXTERNAL ELECTRONIC DEVICE
WO2018076446A1 (zh) 一种消息同步方法、装置及系统
WO2013125920A1 (ko) 로케이션 기반의 언솔리시티드 다운로드 방법, 장치 및 시스템
WO2020111759A1 (ko) M2m 시스템에서 리소스 관리, 리소스 오프로딩 수행 방법 및 장치
WO2015105263A1 (ko) 웹 페이지 접속 방법과 웹 서버 접속 방법
WO2022102949A1 (ko) 엣지설정서버, 엣지인에이블서버 및 그 동작 방법
WO2015093640A1 (ko) 사용자 단말 장치 및 그의 인터랙션 서비스 제공 방법

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15512389

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2015846781

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015846781

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE