WO2024085445A1 - 무선통신시스템에서 데이터 통신을 위한 전자 장치 및 그의 동작 방법 - Google Patents

무선통신시스템에서 데이터 통신을 위한 전자 장치 및 그의 동작 방법 Download PDF

Info

Publication number
WO2024085445A1
WO2024085445A1 PCT/KR2023/013582 KR2023013582W WO2024085445A1 WO 2024085445 A1 WO2024085445 A1 WO 2024085445A1 KR 2023013582 W KR2023013582 W KR 2023013582W WO 2024085445 A1 WO2024085445 A1 WO 2024085445A1
Authority
WO
WIPO (PCT)
Prior art keywords
address
pdu session
processor
rtt
electronic device
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2023/013582
Other languages
English (en)
French (fr)
Inventor
김진형
이원보
김성인
김태완
김홍식
장재원
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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
Priority claimed from KR1020220167945A external-priority patent/KR20240053493A/ko
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Priority to EP23880025.4A priority Critical patent/EP4572521A4/en
Priority to US18/467,132 priority patent/US20240137325A1/en
Publication of WO2024085445A1 publication Critical patent/WO2024085445A1/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • 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/50Address allocation
    • H04L61/5053Lease time; Renewal aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/148Migration or transfer of sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/11Allocation or use of connection identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/604Address structures or formats

Definitions

  • Various embodiments of the present invention relate to devices and methods for data communication in a wireless communication system.
  • the 5G communication system is called a Beyond 4G Network communication system or a Post LTE communication system.
  • 5G communication systems will use bands below 6 gigahertz (6 GHz) (e.g., about 1.8 GHz band, or about 3.5 GHz band) or relatively higher frequency bands (e.g., about 28 GHz band, or about 3.5 GHz band).
  • 6 GHz gigahertz
  • relatively higher frequency bands e.g., about 28 GHz band, or about 3.5 GHz band.
  • 39GHz band 39GHz band
  • the 5G communication system uses beamforming, massive MIMO, full dimensional MIMO (FD-MIMO), and array antennas to alleviate radio wave path loss and increase the radio wave transmission distance.
  • Array antenna, analog beam-forming, and large scale antenna technologies are being discussed.
  • the core network of the 5G communication system may provide a session and service continuity (SSC) mode to support various continuity-related requirements of application programs or services (or functions) of electronic devices.
  • the core network can apply a separate SSC mode for each PDU (protocol data unit) session.
  • SSC mode may include three modes.
  • SSC mode 1 may include a mode in which the UPF (eg, anchor UPF) for communication with an external data network (DN) is not changed while the PDU session of the electronic device is maintained.
  • SSC mode 2 is a mode that allows relocation of a UPF (e.g. anchor UPF) for communication with an external data network (DN). When the UPF is changed, the connection with the existing UPF is disconnected and the new UPF is connected.
  • a connection can be established (break-before-make method).
  • SSC mode 3 is a mode that allows changing the UPF (e.g. anchor UPF) for communication with an external data network (DN).
  • UPF e.g. anchor UPF
  • DN external data network
  • the electronic device may require a method to control the connection with the existing UPF and the new UPF while the connection with the existing UPF and the new UPF is established.
  • Various embodiments of the present invention disclose an apparatus and method for satisfying quality of experience (QoE) of data communication related to an application program in an electronic device set to SSC mode 3.
  • QoE quality of experience
  • an electronic device may include a communication circuit and a processor operatively connected to the communication circuit.
  • the processor may perform data communication through a protocol data unit (PDU) session and internet protocol (IP) address 1.
  • the processor may check IP address 2 of the PDU session associated with the change in data path.
  • the processor may check the round trip time (RTT) when using IP address 1 and the RTT when using IP address 2. there is.
  • the processor determines the IP address based on the comparison result of the RTT when using IP address 1 and the RTT when using IP address 2 before the valid lifetime of IP address 1 expires. You can change the data path with 2.
  • the processor may release IP address 1 based on a change in data path to IP address 2.
  • a method of operating an electronic device may include performing data communication through a PDU session and IP address 1.
  • a method of operating an electronic device may include checking IP address 2 of a PDU session related to a change in the data path.
  • a method of operating an electronic device includes checking the RTT when using IP address 1 and the RTT when using IP address 2 while IP address 1 and IP address 2 of the PDU session are assigned. may include.
  • a method of operating an electronic device includes determining an IP address based on a comparison result between the RTT when using IP address 1 and the RTT when using IP address 2 before the expiration of the validity period of IP address 1. 2 may include an operation to change the data path.
  • a method of operating an electronic device may include releasing IP address 1 based on a change in the data path to IP address 2.
  • a non-transitory computer-readable storage medium (or computer program product) storing one or more programs may be described.
  • one or more programs when executed by a processor of an electronic device, one or more programs perform data communication through a PDU session and IP address 1 and check IP address 2 of the PDU session based on a change in UPF.
  • an electronic device when a connection is established with an existing user plane function (UPF) and a new UPF for a PDU session (protocol data unit) set to SSC (session and service continuity) mode 3, the existing UPF and when to transition to a new UPF and/or connect to an existing UPF based on the quality of experience (QoE) associated with the new UPF (e.g., round trip time (RTT), path loss, and/or throughput).
  • QoE quality of experience
  • FIG. 1 is a block diagram of an electronic device in a network environment, according to various embodiments.
  • FIG. 2 is a block diagram of an electronic device for supporting legacy network communication and 5G network communication, according to various embodiments.
  • FIG. 3 is a diagram illustrating a protocol stack structure of a 4G communication and/or 5G communication network according to various embodiments.
  • Figure 4 is a diagram showing the structure of a 5G network according to various embodiments.
  • Figure 5 is a block diagram of an electronic device providing data communication according to various embodiments.
  • Figure 6 is a block diagram illustrating a program according to various embodiments.
  • FIG. 7 is a flowchart for changing a data path using multi-homing in an electronic device according to various embodiments.
  • FIG. 8 is a flowchart for setting a data path switching point based on RTT in an electronic device according to various embodiments.
  • FIG. 9 is a flowchart for setting a data path switching point based on packet loss in an electronic device according to various embodiments.
  • Figure 10 is an example of changing a data path using multi-homing in an electronic device according to various embodiments.
  • FIG. 11 is a flowchart for changing a data path using single homing in an electronic device according to various embodiments.
  • FIG. 12 is a flowchart for setting a data path switching point based on RTT in an electronic device according to various embodiments.
  • FIG. 13 is a flowchart for setting a data path switching point based on packet loss in an electronic device according to various embodiments.
  • Figure 14 is an example of changing a data path using single homing in an electronic device according to various embodiments.
  • Figure 15 is a flowchart for changing a data path in an electronic device according to various embodiments.
  • FIG. 1 is a block diagram of an electronic device 101 in a network environment 100, according to one embodiment.
  • the electronic device 101 communicates with the electronic device 102 through a first network 198 (e.g., a short-range wireless communication network) or a second network 199. It is possible to communicate with the electronic device 104 or the server 108 through (e.g., a long-distance wireless communication network).
  • the electronic device 101 may communicate with the electronic device 104 through the server 108.
  • the electronic device 101 includes a processor 120, a memory 130, an input module 150, an audio output module 155, a display module 160, an audio module 170, and a sensor module ( 176), interface 177, connection terminal 178, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196 , or may include an antenna module 197.
  • at least one of these components eg, the connection terminal 178) may be omitted or one or more other components may be added to the electronic device 101.
  • some of these components e.g., sensor module 176, camera module 180, or antenna module 197) are integrated into one component (e.g., display module 160). It can be.
  • the processor 120 for example, executes software (e.g., program 140) to operate at least one other component (e.g., hardware or software component) of the electronic device 101 connected to the processor 120. It can be controlled and various data processing or calculations can be performed. According to one embodiment, as at least part of data processing or computation, the processor 120 stores commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory 132. The commands or data stored in the volatile memory 132 can be processed, and the resulting data can be stored in the non-volatile memory 134.
  • software e.g., program 140
  • the processor 120 stores commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory 132.
  • the commands or data stored in the volatile memory 132 can be processed, and the resulting data can be stored in the non-volatile memory 134.
  • the processor 120 includes a main processor 121 (e.g., a central processing unit or an application processor) or an auxiliary processor 123 that can operate independently or together (e.g., a graphics processing unit, a neural network processing unit ( It may include a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor).
  • a main processor 121 e.g., a central processing unit or an application processor
  • auxiliary processor 123 e.g., a graphics processing unit, a neural network processing unit ( It may include a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor.
  • the electronic device 101 includes a main processor 121 and a secondary processor 123
  • the secondary processor 123 may be set to use lower power than the main processor 121 or be specialized for a designated function. You can.
  • the auxiliary processor 123 may be implemented separately from the main processor 121 or as part of it.
  • the auxiliary processor 123 may, for example, act on behalf of the main processor 121 while the main processor 121 is in an inactive (e.g., sleep) state, or while the main processor 121 is in an active (e.g., application execution) state. ), together with the main processor 121, at least one of the components of the electronic device 101 (e.g., the display module 160, the sensor module 176, or the communication module 190) At least some of the functions or states related to can be controlled.
  • co-processor 123 e.g., image signal processor or communication processor
  • may be implemented as part of another functionally related component e.g., camera module 180 or communication module 190. there is.
  • the auxiliary processor 123 may include a hardware structure specialized for processing artificial intelligence models.
  • Artificial intelligence models can be created through machine learning. For example, such learning may be performed in the electronic device 101 itself, where artificial intelligence is performed, or may be performed through a separate server (e.g., server 108).
  • Learning algorithms may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but It is not limited.
  • An artificial intelligence model may include multiple artificial neural network layers.
  • Artificial neural networks include deep neural network (DNN), convolutional neural network (CNN), recurrent neural network (RNN), restricted boltzmann machine (RBM), belief deep network (DBN), bidirectional recurrent deep neural network (BRDNN), It may be one of deep Q-networks or a combination of two or more, but is not limited to the examples described above.
  • artificial intelligence models may additionally or alternatively include software structures.
  • the memory 130 may store various data used by at least one component (eg, the processor 120 or the sensor module 176) of the electronic device 101. Data may include, for example, input data or output data for software (e.g., program 140) and instructions related thereto.
  • Memory 130 may include volatile memory 132 or non-volatile memory 134.
  • the program 140 may be stored as software in the memory 130 and may include, for example, an operating system 142, middleware 144, or application 146.
  • the input module 150 may receive commands or data to be used in a component of the electronic device 101 (e.g., the processor 120) from outside the electronic device 101 (e.g., a user).
  • the input module 150 may include, for example, a microphone, mouse, keyboard, keys (eg, buttons), or digital pen (eg, stylus pen).
  • the sound output module 155 may output sound signals to the outside of the electronic device 101.
  • the sound output module 155 may include, for example, a speaker or a receiver. Speakers can be used for general purposes such as multimedia playback or recording playback.
  • the receiver can be used to receive incoming calls. According to one embodiment, the receiver may be implemented separately from the speaker or as part of it.
  • the display module 160 can visually provide information to the outside of the electronic device 101 (eg, a user).
  • the display module 160 may include, for example, a display, a hologram device, or a projector, and a control circuit for controlling the device.
  • the display module 160 may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of force generated by the touch.
  • the audio module 170 can convert sound into an electrical signal or, conversely, convert an electrical signal into sound. According to one embodiment, the audio module 170 acquires sound through the input module 150, the sound output module 155, or an external electronic device (e.g., directly or wirelessly connected to the electronic device 101). Sound may be output through the electronic device 102 (e.g., speaker or headphone).
  • the electronic device 102 e.g., speaker or headphone
  • the sensor module 176 detects the operating state (e.g., power or temperature) of the electronic device 101 or the external environmental state (e.g., user state) and generates an electrical signal or data value corresponding to the detected state. can do.
  • the sensor module 176 includes, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, humidity sensor, or light sensor.
  • the interface 177 may support one or more designated protocols that can be used to connect the electronic device 101 directly or wirelessly with an external electronic device (eg, the electronic device 102).
  • the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
  • HDMI high definition multimedia interface
  • USB universal serial bus
  • SD card interface Secure Digital Card interface
  • audio interface audio interface
  • connection terminal 178 may include a connector through which the electronic device 101 can be physically connected to an external electronic device (eg, the electronic device 102).
  • the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).
  • the haptic module 179 can convert electrical signals into mechanical stimulation (e.g., vibration or movement) or electrical stimulation that the user can perceive through tactile or kinesthetic senses.
  • the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
  • the camera module 180 can capture still images and moving images.
  • the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.
  • the power management module 188 can manage power supplied to the electronic device 101.
  • the power management module 188 may be implemented as at least a part of, for example, a power management integrated circuit (PMIC).
  • PMIC power management integrated circuit
  • the battery 189 may supply power to at least one component of the electronic device 101.
  • the battery 189 may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
  • Communication module 190 is configured to provide a direct (e.g., wired) communication channel or wireless communication channel between electronic device 101 and an external electronic device (e.g., electronic device 102, electronic device 104, or server 108). It can support establishment and communication through established communication channels. Communication module 190 operates independently of processor 120 (e.g., an application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication.
  • processor 120 e.g., an application processor
  • the communication module 190 may be a wireless communication module 192 (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 194 (e.g., : LAN (local area network) communication module, or power line communication module) may be included.
  • a wireless communication module 192 e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module
  • GNSS global navigation satellite system
  • wired communication module 194 e.g., : LAN (local area network) communication module, or power line communication module
  • the corresponding communication module is a first network 198 (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network 199 (e.g., legacy It may communicate with an external electronic device 104 through a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
  • a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
  • a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
  • a telecommunication network such as a cellular network, a 5G network, a next-generation communication network
  • the wireless communication module 192 uses subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196 within a communication network such as the first network 198 or the second network 199.
  • subscriber information e.g., International Mobile Subscriber Identifier (IMSI)
  • IMSI International Mobile Subscriber Identifier
  • the wireless communication module 192 may support 5G networks after 4G networks and next-generation communication technologies, for example, NR access technology (new radio access technology).
  • NR access technology provides high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and access to multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low latency). -latency communications)) can be supported.
  • the wireless communication module 192 may support high frequency bands (eg, mmWave bands), for example, to achieve high data rates.
  • the wireless communication module 192 uses various technologies to secure performance in high frequency bands, for example, beamforming, massive array multiple-input and multiple-output (MIMO), and full-dimensional multiplexing. It can support technologies such as input/output (FD-MIMO: full dimensional MIMO), array antenna, analog beam-forming, or large scale antenna.
  • the wireless communication module 192 may support various requirements specified in the electronic device 101, an external electronic device (e.g., electronic device 104), or a network system (e.g., second network 199).
  • the wireless communication module 192 supports Peak data rate (e.g., 20 Gbps or more) for realizing eMBB, loss coverage (e.g., 164 dB or less) for realizing mmTC, or U-plane latency (e.g., 164 dB or less) for realizing URLLC.
  • Peak data rate e.g., 20 Gbps or more
  • loss coverage e.g., 164 dB or less
  • U-plane latency e.g., 164 dB or less
  • the antenna module 197 may transmit or receive signals or power to or from the outside (eg, an external electronic device).
  • the antenna module 197 may include an antenna including a radiator made of a conductor or a conductive pattern formed on a substrate (eg, PCB).
  • the antenna module 197 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for the communication method used in the communication network, such as the first network 198 or the second network 199, is selected from the plurality of antennas by, for example, the communication module 190. It can be. Signals or power may be transmitted or received between the communication module 190 and an external electronic device through at least one selected antenna.
  • other components eg, radio frequency integrated circuit (RFIC) may be additionally formed as part of the antenna module 197.
  • RFIC radio frequency integrated circuit
  • the antenna module 197 may form a mmWave antenna module.
  • a mmWave antenna module includes a printed circuit board, an RFIC disposed on or adjacent to a first side (e.g., bottom side) of the printed circuit board and supporting a designated high frequency band (e.g., mmWave band), and a printed circuit board. It may include a plurality of antennas (e.g., array antennas) disposed on or adjacent to the second side (e.g., top or side) of the circuit board and capable of transmitting or receiving signals in a designated high frequency band.
  • peripheral devices e.g., bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)
  • signal e.g. : Commands or data
  • commands or data may be transmitted or received between the electronic device 101 and the external electronic device 104 through the server 108 connected to the second network 199.
  • Each of the external electronic devices 102 or 104 may be of the same or different type as the electronic device 101.
  • all or part of the operations performed in the electronic device 101 may be executed in one or more of the external electronic devices 102, 104, or 108.
  • the electronic device 101 may perform the function or service instead of executing the function or service on its own.
  • one or more external electronic devices may be requested to perform at least part of the function or service.
  • One or more external electronic devices that have received the request may execute at least part of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device 101.
  • the electronic device 101 may process the result as is or additionally and provide it as at least part of a response to the request.
  • cloud computing distributed computing, mobile edge computing (MEC), or client-server computing technology can be used.
  • the electronic device 101 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing.
  • the external electronic device 104 may include an Internet of Things (IoT) device.
  • Server 108 may be an intelligent server using machine learning and/or neural networks.
  • the external electronic device 104 or server 108 may be included in the second network 199.
  • the electronic device 101 may be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
  • An electronic device may be of various types.
  • Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances.
  • Electronic devices according to embodiments of this document are not limited to the above-described devices.
  • first, second, or first or second may be used simply to distinguish one component from another, and to refer to those components in other respects (e.g., importance or order) is not limited.
  • One (e.g., first) component is said to be “coupled” or “connected” to another (e.g., second) component, with or without the terms “functionally” or “communicatively.”
  • module used in the embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example. You can.
  • a module may be an integrated part or a minimum unit of the parts or a part thereof that performs one or more functions.
  • the module may be implemented in the form of an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • Embodiments of this document include one or more instructions stored in a storage medium (e.g., built-in memory 136 or external memory 138) that can be read by a machine (e.g., electronic device 101). It may be implemented as software (e.g., program 140).
  • a processor e.g., processor 120
  • a device e.g., electronic device 101
  • the one or more instructions may include code generated by a compiler or code that can be executed by an interpreter.
  • a storage medium that can be read by a device may be provided in the form of a non-transitory storage medium.
  • 'non-transitory' only means that the storage medium is a tangible device and does not contain signals (e.g. electromagnetic waves). This term refers to cases where data is stored semi-permanently in the storage medium. There is no distinction between temporary storage cases.
  • the method according to the embodiment disclosed in this document may be provided and included in a computer program product.
  • Computer program products are commodities and can be traded between sellers and buyers.
  • the computer program product may be distributed in the form of a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)) or via an application store (e.g. Play Store TM ) or on two user devices (e.g. It can be distributed (e.g. downloaded or uploaded) directly between smart phones) or online.
  • a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store server, or a relay server.
  • each component (e.g., module or program) of the above-described components may include a single or multiple entities, and some of the multiple entities may be separately placed in other components.
  • one or more of the above-described corresponding components or operations may be omitted, or one or more other components or operations may be added.
  • multiple components eg, modules or programs
  • the integrated component may perform one or more functions of each component of the plurality of components identically or similarly to those performed by the corresponding component of the plurality of components prior to the integration. .
  • operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or , or one or more other operations may be added.
  • FIG. 2 is a block diagram 200 of an electronic device 101 for supporting legacy network communication and 5G network communication, according to one embodiment.
  • the electronic device 101 includes a first communication processor 212, a second communication processor 214, a first radio frequency integrated circuit (RFIC) 222, and a second RFIC. (224), third RFIC (226), fourth RFIC (228), first radio frequency front end (RFFE) (232), second RFFE (234), first antenna module (242), second antenna module (244), and may include an antenna (248).
  • the electronic device 101 may further include a processor 120 and a memory 130.
  • Network 199 may include a first network 292 and a second network 294. According to one embodiment, the electronic device 101 may further include at least one of the components shown in FIG. 1, and the network 199 may further include at least one other network.
  • the first communication processor 212, the second communication processor 214, the first RFIC 222, the second RFIC 224, the fourth RFIC 228, the first RFFE 232, and second RFFE 234 may form at least a portion of wireless communication module 192.
  • the fourth RFIC 228 may be omitted or may be included as part of the third RFIC 226.
  • the first communication processor 212 may support establishment of a communication channel in a band to be used for wireless communication with the first network 292, and legacy network communication through the established communication channel.
  • the first network may be a legacy network including a second generation (2G), 3G, 4G, or long term evolution (LTE) network.
  • the second communication processor 214 establishes a communication channel corresponding to a designated band (e.g., about 6 GHz to about 60 GHz) among the bands to be used for wireless communication with the second network 294, and 5G network communication through the established communication channel. can support.
  • the second network 294 may be a 5G network (eg, new radio (NR)) defined by 3GPP.
  • NR new radio
  • the first communication processor 212 or the second communication processor 214 corresponds to another designated band (e.g., about 6 GHz or less) among the bands to be used for wireless communication with the second network 294. It can support establishment of a communication channel and 5G network communication through the established communication channel.
  • the first communication processor 212 and the second communication processor 214 may be implemented in a single chip or a single package.
  • the first communication processor 212 or the second communication processor 214 may be formed in a single chip or a single package with the processor 120, the auxiliary processor 123, or the communication module 190. .
  • the first communication processor 212 may transmit and receive data with the second communication processor 214. For example, data that was classified as being transmitted through the second network 294 may be changed to be transmitted through the first network 292.
  • the first communication processor 212 may receive transmission data from the second communication processor 214.
  • the first communication processor 212 may transmit and receive data with the second communication processor 214 through an inter-processor interface.
  • the inter-processor interface may be implemented as a universal asynchronous receiver/transmitter (UART) (e.g., high speed-UART (HS-UART)) or peripheral component interconnect bus express (PCIe) interface, but there is no limitation on the type.
  • UART universal asynchronous receiver/transmitter
  • PCIe peripheral component interconnect bus express
  • the first communication processor 212 and the second communication processor 214 may exchange control information and packet data information using shared memory.
  • the first communication processor 212 may transmit and receive various information such as sensing information, information on output intensity, and resource block (RB) allocation information with the second communication processor 214.
  • RB resource block
  • the first communication processor 212 may not be directly connected to the second communication processor 214.
  • the first communication processor 212 may transmit and receive data through the second communication processor 214 and the processor 120 (eg, application processor).
  • the first communication processor 212 and the second communication processor 214 may transmit and receive data with the processor 120 (e.g., application processor) through an HS-UART interface or a PCIe interface, but the interface's There is no limit to the type.
  • the first communication processor 212 and the second communication processor 214 exchange control information and packet data information using the processor 120 (e.g., application processor) and shared memory. You can.
  • the first communication processor 212 and the second communication processor 214 may be implemented in a single chip or a single package. According to one embodiment, the first communication processor 212 or the second communication processor 214 may be formed in a single chip or a single package with the processor 120, the auxiliary processor 123, or the communication module 190. .
  • the first RFIC 222 When transmitting, the first RFIC 222 converts the baseband signal generated by the first communication processor 212 into a frequency range of about 700 MHz to about 3 GHz for use in the first network 292 (e.g., a legacy network). It can be converted into a radio frequency (RF) signal. Upon reception, the RF signal is obtained from a first network 292 (e.g., a legacy network) via an antenna (e.g., first antenna module 242) and via an RFFE (e.g., first RFFE 232). Can be preprocessed. The first RFIC 222 may convert the pre-processed RF signal into a baseband signal to be processed by the first communication processor 212.
  • a first network 292 e.g., a legacy network
  • an antenna e.g., first antenna module 242
  • an RFFE e.g., first RFFE 232
  • the second RFIC 224 when transmitting, connects the baseband signal generated by the first communications processor 212 or the second communications processor 214 to the second network 294 (e.g., a 5G network). It can be converted to an RF signal (hereinafter referred to as a 5G Sub6 RF signal) in the Sub6 band (e.g., approximately 6 GHz or less).
  • a 5G Sub6 RF signal RF signal
  • the 5G Sub6 RF signal is obtained from the second network 294 (e.g., 5G network) through an antenna (e.g., second antenna module 244) and an RFFE (e.g., second RFFE 234) It can be preprocessed through .
  • the second RFIC 224 may convert the preprocessed 5G Sub6 RF signal into a baseband signal so that it can be processed by a corresponding communication processor of the first communication processor 212 or the second communication processor 214.
  • the third RFIC 226 converts the baseband signal generated by the second communication processor 214 into an RF signal in the 5G Above6 band (e.g., about 6 GHz to about 60 GHz) to be used in the second network 294 (e.g., a 5G network). It can be converted into a signal (hereinafter referred to as 5G Above6 RF signal).
  • the 5G Above6 RF signal may be obtained from a second network 294 (e.g., a 5G network) through an antenna (e.g., antenna 248) and preprocessed through a third RFFE 236.
  • the third RFIC 226 may convert the preprocessed 5G Above6 RF signal into a baseband signal to be processed by the second communication processor 214.
  • the third RFFE 236 may be formed as part of the third RFIC 226.
  • the electronic device 101 may include a fourth RFIC 228 separately from or at least as part of the third RFIC 226.
  • the fourth RFIC 228 converts the baseband signal generated by the second communication processor 214 into an RF signal (hereinafter referred to as an IF signal) in an intermediate frequency band (e.g., about 9 GHz to about 11 GHz). After conversion, the IF signal can be transmitted to the third RFIC (226).
  • the third RFIC 226 can convert the IF signal into a 5G Above6 RF signal.
  • a 5G Above6 RF signal may be received from a second network 294 (e.g., a 5G network) via an antenna (e.g., antenna 248) and converted into an IF signal by a third RFIC 226. .
  • the fourth RFIC 228 may convert the IF signal into a baseband signal so that the second communication processor 214 can process it.
  • the first RFIC 222 and the second RFIC 224 may be implemented as a single chip or at least part of a single package.
  • the first RFFE 232 and the second RFFE 234 may be implemented as a single chip or at least part of a single package.
  • at least one antenna module of the first antenna module 242 or the second antenna module 244 may be omitted or combined with another antenna module to process RF signals of a plurality of corresponding bands.
  • the third RFIC 226 and the antenna 248 may be disposed on the same substrate to form the third antenna module 246.
  • the wireless communication module 192 or the processor 120 may be placed on the first substrate (eg, main PCB).
  • the third RFIC 226 is located in some area (e.g., bottom surface) of the second substrate (e.g., sub PCB) separate from the first substrate, and the antenna 248 is located in another part (e.g., top surface). is disposed, so that the third antenna module 246 can be formed.
  • the third RFIC 226 and the antenna 248 By placing the third RFIC 226 and the antenna 248 on the same substrate, it is possible to reduce the length of the transmission line therebetween. This, for example, can reduce the loss (e.g.
  • the electronic device 101 can improve the quality or speed of communication with the second network 294 (eg, 5G network).
  • the second network 294 e.g, 5G network
  • the antenna 248 may be formed as an antenna array including a plurality of antenna elements that can be used for beamforming.
  • the third RFIC 226, for example, as part of the third RFFE 236, may include a plurality of phase shifters 238 corresponding to a plurality of antenna elements.
  • each of the plurality of phase converters 238 may convert the phase of the 5G Above6 RF signal to be transmitted to the outside of the electronic device 101 (e.g., a base station of a 5G network) through the corresponding antenna element. .
  • each of the plurality of phase converters 238 may convert the phase of the 5G Above6 RF signal received from the outside through the corresponding antenna element into the same or substantially the same phase. This enables transmission or reception through beamforming between the electronic device 101 and the outside.
  • the second network 294 may operate independently (e.g., stand-alone (SA)) or connected to the first network 292 (e.g., a legacy network) (e.g., a legacy network). non-stand alone(NSA)).
  • a 5G network may have only an access network (e.g., 5G radio access network (RAN) or next generation RAN (NG RAN)) and no core network (e.g., next generation core (NGC)).
  • the electronic device 101 may access the access network of the 5G network and then access an external network (eg, the Internet) under the control of the core network (eg, evolved packed core (EPC)) of the legacy network.
  • SA stand-alone
  • NG RAN next generation RAN
  • NGC next generation core
  • the electronic device 101 may access the access network of the 5G network and then access an external network (eg, the Internet) under the control of the core network (eg, evolved packed core (EPC)) of the legacy network.
  • EPC evolved packed core
  • Protocol information for communication with a legacy network e.g., LTE protocol information
  • protocol information for communication with a 5G network e.g., new radio (NR) protocol information
  • NR new radio
  • FIG. 3 is a diagram illustrating the protocol stack structure of a 4G communication and/or 5G communication network 100 according to an embodiment.
  • the network 100 may include an electronic device 101, a 4G network 392, a 5G network 394, and a server 108.
  • the electronic device 101 may include an Internet protocol 312, a first protocol stack 314, and a second protocol stack 316.
  • electronic device 101 may communicate with server 108 via 4G network 392 and/or 5G network 394.
  • the electronic device 101 is connected to the server 108 using the Internet protocol 312 (e.g., transmission control protocol (TCP), user datagram protocol (UDP), and internet protocol (IP)).
  • TCP transmission control protocol
  • UDP user datagram protocol
  • IP internet protocol
  • Associated Internet communications can be performed.
  • the Internet protocol 312 may be executed on a main processor (eg, main processor 121 in FIG. 1) included in the electronic device 101.
  • the electronic device 101 may wirelessly communicate with the 4G network 392 using the first communication protocol stack 314.
  • the electronic device 101 may wirelessly communicate with the 5G network 394 using the second communication protocol stack 316.
  • the first communication protocol stack 314 and the second communication protocol stack 316 may be executed on one or more communication processors (e.g., wireless communication module 192 of FIG. 1) included in the electronic device 101. there is.
  • server 108 may include Internet Protocol 322.
  • the server 108 may transmit and receive data related to the Internet protocol 322 with the electronic device 101 through the 4G network 392 and/or 5G network 394.
  • server 108 may include a cloud computing server that exists outside of 4G network 392 or 5G network 394.
  • the server 108 may include an edge computing server (or mobile edge computing (MEC) server) located inside at least one of the 4G network 392 or the 5G network 394.
  • MEC mobile edge computing
  • the 4G network 392 may include a long term evolution (LTE) base station 340 and an evolved packed core (EPC) 342.
  • LTE base station 340 may include an LTE protocol stack 344.
  • EPC 342 may include a 4G non-access stratum (NAS) protocol 346.
  • the 4G network 392 may perform LTE wireless communication with the electronic device 101 using the LTE protocol stack 344 and the 4G NAS protocol 346.
  • the 5G network 394 may include a new radio (NR) base station 350 and a 5th generation core (5GC) 352.
  • NR base station 350 may include an NR protocol stack 354.
  • 5GC 352 may include 5G NAS protocol 356.
  • the 5G network 394 may perform NR wireless communication with the electronic device 101 using the NR protocol stack 354 and the 5G NAS protocol 356.
  • the first protocol stack 314, the second protocol stack 316, the LTE protocol stack 344, and the NR protocol stack 354 transmit and receive control plane protocols for transmitting and receiving control messages and user data. It may include a user plane protocol to do this.
  • the control message may include messages related to at least one of security control, bearer setup, authentication, registration, or mobility management.
  • user data may include data excluding control messages.
  • control plane protocol and user plane protocol may include physical (PHY), medium access control (MAC), radio link control (RLC), or packet data convergence protocol (PDCP) layers.
  • PHY physical
  • MAC medium access control
  • RLC radio link control
  • PDCP packet data convergence protocol
  • the PHY layer can channel code and modulate data received from a higher layer (e.g., MAC layer) and transmit it to a wireless channel, and demodulate and decode data received through a wireless channel and transmit it to the upper layer.
  • the PHY layer included in the second protocol stack 316 and the NR protocol stack 354 may further perform operations related to beam forming.
  • the MAC layer can logically/physically map data to a wireless channel for transmitting and receiving data and perform HARQ (hybrid automatic repeat request) for error correction.
  • HARQ hybrid automatic repeat request
  • the RLC layer can concatenate, segment, or reassemble data, and perform order checking, reordering, or redundancy checking of data.
  • the PDCP layer may perform operations related to ciphering and data integrity of control data and user data.
  • the second protocol stack 316 and the NR protocol stack 354 may further include a service data adaptation protocol (SDAP).
  • SDAP can manage radio bearer allocation based on the quality of service (QoS) of user data.
  • control plane protocol and user plane protocol may include physical (PHY), medium access control (MAC), radio link control (RLC), or packet data convergence protocol (PDCP) layers.
  • PHY physical
  • MAC medium access control
  • RLC radio link control
  • PDCP packet data convergence protocol
  • the PHY layer can channel code and modulate data received from a higher layer (e.g., MAC layer) and transmit it to a wireless channel, and demodulate and decode data received through a wireless channel and transmit it to the upper layer.
  • the PHY layer included in the second protocol stack 316 and the NR protocol stack 354 may further perform operations related to beam forming.
  • the MAC layer can logically/physically map data to a wireless channel for transmitting and receiving data and perform HARQ (hybrid automatic repeat request) for error correction.
  • HARQ hybrid automatic repeat request
  • the RLC layer can concatenate, segment, or reassemble data, and perform order checking, reordering, or redundancy checking of data.
  • the PDCP layer may perform operations related to ciphering and data integrity of control data and user data.
  • the second protocol stack 316 and the NR protocol stack 354 may further include a service data adaptation protocol (SDAP).
  • SDAP can manage radio bearer allocation based on the quality of service (QoS) of user data.
  • the control plane protocol may include a radio resource control (RRC) layer and a non-access stratum (NAS) layer.
  • RRC radio resource control
  • NAS non-access stratum
  • the RRC layer may process control data related to radio bearer setup, paging, or mobility management.
  • the NAS can handle control messages related to authentication, registration, and mobility management.
  • Figure 4 is a diagram showing the structure of a 5G network according to various embodiments.
  • the 5G network 400 may include a plurality of network functions (NFs) 410 to 460.
  • NFs network functions
  • the 5G network 400 is not limited to the example of FIG. 4 and may include more or fewer NFs than the NFs shown in FIG. 4.
  • (R)AN ((radio) access network) 410 is an entity that performs radio resource allocation of the electronic device 101, and includes eNode B, Node B, BS (base station), NG- It may be at least one of a next generation radio access network (RAN), a 5G-access network (AN), a radio access unit, a base station controller, or a node on a network.
  • the electronic device 101 includes user equipment (UE), next generation UE (NG UE), mobile station (MS), cellular phone, smartphone, computer, or multimedia system capable of performing communication functions. can do.
  • 5G communication system network e.g., 5G network
  • embodiments of the present disclosure may also be applied to other communication systems with similar technical background.
  • embodiments of the present invention may be applied to other communication systems through some modifications without significantly departing from the scope of the present invention at the discretion of a person with skilled technical knowledge.
  • the access and mobility management function (AMF) 420 may be a network function that manages the mobility of the electronic device 101.
  • the session management function (SMF) 430 is a network function that manages a protocol data unit (PDU) session (or packet data network (PDN) connection) provided to the electronic device 101. You can.
  • PDU protocol data unit
  • PDN packet data network
  • the user plane function (UPF) 450 and/or 455 may be a function that serves as a gateway for transmitting user data (eg, PDU) to a data network (DN) 460.
  • PDU user data
  • DN data network
  • the UPF branching point (BP) 440 may be a function that connects the PDU session of the electronic device 101 and the UPF 450 or 455. According to one embodiment, the UPF BP 440 may connect the PDU session of the electronic device 101 to UPF 1 450 or UPF 2 455.
  • the data network (DN) 460 may be a data network through which the electronic device 101 transmits and/or receives data in order to use a network operator's service or a 3rd party service.
  • Figure 5 is a block diagram of an electronic device providing data communication according to various embodiments.
  • the electronic device 101 of FIG. 5 is at least partially similar to the electronic device 101 of FIGS. 1, 2, 3, or 4, or may further include other embodiments of the electronic device. .
  • the electronic device 101 may include a processor 500, a communication circuit 510, and/or a memory 520.
  • the processor 500 may be substantially the same as the processor 120 of FIG. 1 or may be included in the processor 120.
  • the communication circuit 510 may be substantially the same as the wireless communication module 192 of FIG. 1 or may be included in the wireless communication module 192.
  • the memory 520 may be substantially the same as the memory 130 of FIG. 1 or may be included in the memory 130.
  • the processor 500 may be operatively, functionally, and/or electrically connected to the communication circuit 510 and/or the memory 520.
  • the processor 500 may control the communication circuit 510 to establish a protocol data unit (PDU) session for data communication.
  • the processor 500 communicates to transmit a message related to a connection request to a server (or content server) to the network (e.g., RAN 410 in FIG. 4) based on the occurrence of an event related to data communication.
  • the circuit 510 can be controlled.
  • a message related to a connection request may include at least one of PDU session identification information (eg, PDU session ID) or information related to session and service continuity (SSC) mode (eg, SSC mode 3).
  • the processor 500 may control the communication circuit 510 to establish a PDU session for data communication based on control information received from the network in response to transmission of a message related to a connection request. .
  • the processor 500 determines that establishment of a PDU session set in SSC mode 3 is completed based on information related to SSC mode 3 included in information related to PDU establishment acceptance (e.g., PDU session establishment accept) received from the network.
  • the control information received from the network may include information related to PDU establishment acceptance, identification information of the PDU session, information related to at least one of SSC mode, or IP address 1 (or IP prefix 1).
  • an event related to data communication may be generated based on at least one of execution of an application program related to data communication, execution of a function, reception of user input, or reception of a communication signal.
  • the processor 500 may control the communication circuit 510 to perform data communication based on the PDU session and IP address 1.
  • IP address 1 may include an IP address for connection to UPF 1 through a PDU session.
  • the processor 500 may check changes in UPF related to a PDU session.
  • the processor 500 receives an IP address whose preferred lifetime is set to a first value (e.g., '0') from the network through the communication circuit 510. It may be determined that the UPF has changed based on the reception of information related to 1 (or IP prefix 1) and information related to IP address 2 (or IP prefix 2).
  • the processor 500 may generate a new IP address 2 of the PDU session based on information related to IP address 2 (or IP prefix 2) received from the network.
  • IP prefix 1 is information (e.g.
  • IP prefix 2 is information (e.g., network ID) set by the network to configure IP address 2 for accessing UPF 2 based on changes in UPF, along with identification information (e.g., host ID) of the host.
  • IP address 2 can be configured.
  • multi-homing may include a communication method in which the network interface of the electronic device 101 belongs to multiple networks and includes multiple IP addresses.
  • the processor 500 may receive information related to a PDU session change (eg, PDU session modification command) from the network through the communication circuit 510.
  • the processor 500 may control the communication circuit 510 to transmit a response message (eg, PDU session modification complete) to the network for information related to the change of the PDU session.
  • the processor 500 may control the communication circuit 510 to transmit information related to a PDU session change request (eg, PDU session modification request) to the network to establish a new PDU session.
  • the processor 500 may determine that establishment of PDU session 2 set to SSC mode 3 has been completed based on a response signal to information related to the PDU session change request received from the network.
  • information related to a change in a PDU session may include the valid lifetime of IP address 1 (or IP prefix 1) of PDU session 1 (e.g., the PDU session before the change), PDU session 2, or PDU session 2 (e.g., It may contain information related to IP address 2 (or IP prefix 2) of the new PDU session.
  • information related to a change request for a PDU session may include identification information of PDU session 2 to be newly established based on a change in UPF.
  • single homing may include a communication method in which the network interface of the electronic device 101 belongs to one network and includes one IP address.
  • IP address 1 and IP address 2 of the PDU session are assigned to change the UPF in SSC mode 3
  • IP address 1 and/or IP address 1 of the PDU session You can check the quality of experience (QoE) when performing communication (e.g., data communication) using IP address 2.
  • QoE may include at least one of round trip time (RTT), path loss, or throughput.
  • RTT may include an RTT between an application program running in the electronic device 101 (or the processor 500) and a server related to the application program (eg, end-to-end).
  • the processor 500 detects (or measures) the RTT when IP address 1 and/or IP address 2 is used based on a foreground application program among application programs running on the electronic device 101. )can do.
  • the processor 500 may detect (or measure) the RTT when IP address 1 and/or IP address 2 are used for the server associated with the foreground application program.
  • RTT when using IP address 1 is the RTT between the foreground application program connected (or connected) using IP address 1 and the server related to the foreground application program (e.g., end-to-end). It can be included.
  • RTT when using IP address 2 is the RTT between the foreground application program connected (or connected) using IP address 2 and the server related to the foreground application program (e.g., end-to-end). It can be included.
  • the foreground application program may represent a standard application program whose graphic user interface (GUI) is displayed at the top of the display (not shown) of the electronic device 101 among application programs running on the electronic device 101. .
  • GUI graphic user interface
  • the processor 500 may detect (or measure) the RTT when using IP address 1 and/or IP address 2 based on application programs running on the electronic device 101. For example, the processor 500 may detect (or measure) the average of the RTT when using IP Address 1 and/or IP Address 2 for the server associated with each of the application programs running on the electronic device 101. You can.
  • an application program running on the electronic device 101 may include an application program in which a socket for sending and/or receiving a message of the application program is opened (or activated).
  • RTT when using IP address 1 and/or IP address 2, RTT synchronizes TCP (transmission control protocol) based on IP address 1 or IP address 2 to a server related to the application program through an application program. It may include the elapsed time from the time the signal is transmitted to the time the acknowledgment signal (ACK) of the TCP synchronization signal is received from the server.
  • RTT when using IP address 1 and/or IP address 2, RTT is transmitted through an application program to a server related to the application program through QUIC (quick UDP internet connections) based on IP address 1 or IP address 2. It may include the time from when the initial packet related to is transmitted to when the acknowledgment signal (ACK) of the initial packet is received.
  • QUIC quick UDP internet connections
  • the RTT when using IP address 1 and/or IP address 2 is the time from the time of transmitting the ping request signal of ICMP (internet control message protocol) to the time of receiving the ping response signal. Can include time.
  • the RTT when using IP Address 1 and/or IP Address 2 is a combination of at least one of RTT based on a TCP synchronization signal, RTT based on an initial packet associated with QUIC, or RTT based on a ping request signal. can be decided.
  • the ping request signal is a command defined in ICMP and can be used by the electronic device 101 to check the connection status with the network.
  • the processor 500 may detect (or measure) the RTT when using IP address 1 through a server related to an application program running on the electronic device 101.
  • the processor 500 is a server (or server) associated with an application program for connection through IP address 2 through DNS (domain name system) pre-resolving based on the allocation of IP address 2 (or IP prefix 2). IP address) can be checked.
  • the processor 500 may detect (or measure) the RTT when using IP address 2 through a server related to an application program for connection through IP address 2.
  • the server associated with the application program for connection through IP address 2 may be the same as or different from the server associated with the application program for connection through IP address 1.
  • the processor 500 may switch the data path to IP address 2 based on QoE when communication is performed using IP address 1 and/or IP address 2.
  • processor 500 routes data to IP address 2 based on the RTT when using IP address 2 and the RTT when using IP address 1 while the timeout of IP address 1 exists. You can switch. For example, the processor 500 connects the data path (or routing) can be switched. For example, if the difference between the RTT when using IP address 2 and the RTT when using IP address 1 exceeds a specified first reference value, the processor 500 selects the data path of IP address 1 of the PDU session. (or routing) can be maintained.
  • the processor 500 checks the RTT when using IP address 1 and IP address 2 based on the specified cycle and By comparing, you can see if you can switch the data path to IP address 2 of the PDU session. For example, the processor 500 may switch the data path to IP address 2 of the PDU session if the number of times it checks whether the data path is switched while the validity time limit of IP address 1 exists exceeds the specified reference number. . For example, when the validity period of IP address 1 expires, the processor 500 may switch the data path to IP address 2 of the PDU session.
  • expiration of the validity time of IP address 1 may include a state in which the validity time of IP address 1 is less than or equal to a specified minimum validity time. For example, if there is no transmission and reception of data based on IP address 1 of the PDU session for a specified first reference time while the expiration date of IP address 1 exists, the processor 500 determines the IP address of the PDU session. You can switch the data path with 2.
  • the designated first reference time may represent a reference time set to determine whether or not the data path of IP address 1 is used while the validity time limit of IP address 1 exists.
  • a state in which the expiration date of IP address 1 exists may include a state before the expiration of the expiration date of IP address 1.
  • the processor 500 may switch the data path to IP address 2 based on packet loss when using IP address 1 and a specified reference loss while the validity period of IP address 1 exists. For example, the processor 500 may switch the data path to IP address 2 of the PDU session if packet loss when using IP address 1 exceeds a specified reference loss. For example, the processor 500 may maintain the data path of IP address 1 of the PDU session if the packet loss when using IP address 1 is less than or equal to a specified reference loss. If the data path of IP address 1 of the PDU session is maintained while the expiration date of IP address 1 exists, the processor 500 checks packet loss when using IP address 1 based on a specified cycle and determines the packet loss of the PDU session.
  • the processor 500 may switch the data path to IP address 2 of the PDU session if the number of times it checks whether the data path is switched while the validity time limit of IP address 1 exists exceeds the specified reference number. .
  • the processor 500 may switch the data path to IP address 2 of the PDU session when the expiration date of IP address 1 is less than the specified first reference time.
  • the processor 500 may set the IP address of the PDU session if there is a validity timeout of IP address 1, and if there is no transmission and reception of data based on IP address 1 of the PDU session during the specified second reference time. You can switch the data path with 2.
  • packet loss when using IP address 1 can be measured based on TCP.
  • the processor 500 may update the expiration date of IP address 1 based on a switch of the data path to IP address 2. For example, the processor 500 may decrease the validity period of IP address 1 based on a specified interval. As an example, the specified interval may include half of the validity time (e.g., remaining validity time) of IP Address 1 or a fixed interval as a reference range for decreasing the validity time (e.g., remaining validity time) of IP Address 1 at once. there is. If the expiration date of IP address 1 exists, the processor 500 may repeatedly update the expiration time of IP address 1.
  • the processor 500 may release IP address 1 when the validity period of IP address 1 expires. For example, the processor 500 may close the socket of the application program associated with IP address 1.
  • the operation of switching the data path from the processor 500 to IP address 2 may include a routing switching operation of changing the routing table value of the processor 500 based on IP address 2.
  • the processor 500 can check the address of a router (or gateway) for accessing an external data network.
  • the processor 500 can set (or update) a routing table as shown in Table 1 below based on the address of the router. For example, if IP address 1 assigned from the network is "2002::1234/64", "64" represents IP prefix 1, and "2002::/64" represents the network's identification information (e.g. network ID).
  • "::1234" may represent the host's identification information (e.g., host ID), and "2002::1" may represent the address of the router (or gateway).
  • the metric in Higi Table 1 is an arbitrary value, and the larger the metric value, the higher the priority.
  • the processor 500 when the processor 500 is assigned IP address 2 (e.g., 1900::1234/64) of a PDU session from the network, the processor 500 may set (or update) the routing table as shown in Table 2 below.
  • IP address 2 e.g., 1900::1234/64
  • destination address router metric ::0 2002::1 1000 ::0 1900::1 500 2002::/ 64 - 2000 1900::/64 - 1500
  • the processor 500 may set (or update) the routing table as shown in Table 3 below based on the switch of the data path to IP address 2.
  • destination address router metric ::0 2002::1 500 ::0 1900::1 1000 2002::/ 64 - 1500 1900::/64 - 2000
  • the processor 500 may set (or update) the routing table as shown in Table 4 below based on the release of IP address 1.
  • destination address router metric ::0 1900::1 1000 1900::/64 - 2000
  • the QoE can be checked when communication is performed using PDU session 2.
  • QoE may include at least one of RTT, path loss, or throughput.
  • the processor 500 determines the RTT when connecting to the server using PDU Session 1 and/or PDU Session 2 based on a foreground application program among application programs running on the electronic device 101. Can be detected (or measured). For example, the processor 500 may detect (or measure) the RTT when accessing a server related to a foreground application program using PDU Session 1 and/or PDU Session 2.
  • the processor 500 may detect (or measure) the RTT when using PDU session 1 and/or PDU session 2 based on application programs running on the electronic device 101. For example, the processor 500 detects (or measures) the average RTT when connecting to a server associated with each of the application programs running on the electronic device 101 using PDU Session 1 and/or PDU Session 2. can do.
  • the RTT when communicating using PDU Session 1 and/or PDU Session 2, the RTT starts from the time a TCP synchronization signal is transmitted based on IP Address 1 or IP Address 2 to the server related to the application program. It may include the elapsed time until the response signal (ACK) of the TCP synchronization signal is received from the server.
  • RTT when performing communication using PDU Session 1 and/or PDU Session 2, RTT transmits an initial packet related to QUIC based on IP Address 1 or IP Address 2 to a server related to the application program. It may include the time from the point in time to the point in time when the acknowledgment signal (ACK) of the initial packet is received.
  • the RTT when using IP address 1 and/or IP address 2 may include the time from the time of transmitting the ICMP ping request signal to the time of receiving the ping response signal.
  • the RTT when performing communication using PDU Session 1 and/or PDU Session 2 is at least one of RTT based on a TCP synchronization signal, RTT based on an initial packet related to QUIC, or RTT based on a ping request signal. It can be determined as one combination.
  • the processor 500 may detect (or measure) the RTT when accessing a server related to an application program running on the electronic device 101 using PDU session 1.
  • the processor 500 performs DNS pre-resolving based on the assignment of IP address 2 (or IP prefix 2) of PDU session 2 to the server (or server's server) associated with the application program for access through IP address 2. IP address) can be checked.
  • the processor 500 can detect (or measure) the RTT when connecting to a server related to an application program for connection through IP address 2 using PDU session 2.
  • the server associated with the application program for connection through IP address 2 may be the same as or different from the server associated with the application program for connection through IP address 1.
  • the processor 500 may switch the data path to PDU session 2 based on QoE when communication is performed using PDU session 1 and/or PDU session 2.
  • the processor 500 bases the RTT when communicating using PDU Session 2 and the RTT when communicating using PDU Session 1 while the validity time limit of PDU Session 1 exists.
  • the data path can be switched to PDU session 2. For example, if the difference between the RTT when communicating using PDU session 2 and the RTT when communicating using PDU session 1 is less than or equal to a specified first reference value, the processor 500 sets PDU session 2 You can switch the data path with .
  • the processor 500 For example, if the difference between the RTT when communicating using PDU session 2 and the RTT when communicating using PDU session 1 exceeds a specified first reference value, the processor 500 The data path to session 1 can be maintained. If the data path is maintained as PDU Session 1 while the validity time limit of PDU Session 1 exists, the processor 500 checks the RTT when performing communication using PDU Session 1 and PDU Session 2 based on the specified cycle. and compare to determine whether the data path can be switched to PDU session 2. For example, the processor 500 may switch the data path to PDU session 2 if the number of times it checks whether the data path is switched while the validity time limit of PDU session 1 exists exceeds a specified reference number.
  • the processor 500 may switch the data path to PDU session 2.
  • expiration of the validity time of IP address 1 may include a state in which the validity time of IP address 1 is less than or equal to a specified minimum validity time. For example, if there is no transmission or reception of data based on IP address 1 of PDU session 1 during the specified first reference time while the validity time limit of PDU session 1 exists, the processor 500 sends the data to PDU session 2.
  • the data path can be switched.
  • the state in which the validity time limit of PDU session 1 exists may include a state before the validity time limit of PDU session 1 expires.
  • the processor 500 switches the data path to PDU Session 2 based on packet loss and a specified reference loss when communicating using PDU Session 1 while the validity timeout of PDU Session 1 exists. can do.
  • the processor 500 may switch the data path to PDU session 2 when packet loss when performing communication using PDU session 1 exceeds a designated reference loss.
  • the processor 500 may maintain the data path through PDU Session 1 when packet loss when performing communication using PDU Session 1 is less than or equal to a designated reference loss.
  • the processor 500 checks packet loss when performing communication using PDU Session 1 based on a designated cycle and determines the PDU Session 1. You can check whether you can switch the data path to IP address 2 of 2. For example, the processor 500 may switch the data path to PDU session 2 if the number of times it checks whether the data path is switched while the validity time limit of PDU session 1 exists exceeds a specified reference number. For example, when the validity period of PDU session 1 expires, the processor 500 may switch the data path to PDU session 2.
  • the processor 500 sends the data to PDU session 2.
  • the data path can be switched. For example, packet loss when communicating using PDU session 1 can be measured based on TCP.
  • the processor 500 may update the expiration date of PDU session 1 based on a switch of the data path to IP address 2 of PDU session 2. For example, the processor 500 may decrease the validity time of PDU session 1 based on a specified interval. As an example, the specified interval is a reference range for decreasing the validity period (e.g., remaining validity period) of PDU Session 1, and may include half the validity period (e.g., remaining validity period) of PDU Session 1 or a fixed interval. there is. If the validity time limit of PDU session 1 exists, the processor 500 may repeatedly update the validity time of PDU session 1.
  • the specified interval is a reference range for decreasing the validity period (e.g., remaining validity period) of PDU Session 1, and may include half the validity period (e.g., remaining validity period) of PDU Session 1 or a fixed interval. there is. If the validity time limit of PDU session 1 exists, the processor 500 may repeatedly update the validity time of PDU session 1.
  • the processor 500 may release IP address 1 of PDU session 1 when the validity period of PDU session 1 expires. For example, the processor 500 may close the socket of the application program associated with IP address 1.
  • the processor 500 when the validity period of IP address 1 of the PDU session is not set, the processor 500 performs communication using IP address 1 and/or IP address 2 based on QoE. So you can selectively use the data path of IP address 1 or IP address 2.
  • the processor 500 may confirm that the expiration date of IP address 1 of the PDU session is not set through a protocol configuration option (PCO) message received from the network.
  • PCO protocol configuration option
  • the processor 500 sets the validity time limit of IP address 1 of the PDU session when the validity time limit of IP address 1 of the PDU session received from the network has a specified value (e.g., '-1'). It can be judged that it is not in a state of failure.
  • the processor 500 may select the data path of IP address 1 or IP address 2 based on the RTT when using IP address 2 and the RTT when using IP address 1. For example, the processor 500 uses the data path of IP address 2 of the PDU session if the difference between the RTT when using IP address 2 and the RTT when using IP address 1 is less than or equal to the specified first reference value. You can. For example, if the difference between the RTT when using IP address 2 and the RTT when using IP address 1 exceeds the specified first reference value, the processor 500 connects the data path to IP address 1 of the PDU session. can be used.
  • processor 500 determines packet loss when using an IP address (e.g., IP Address 1 or IP Address 2) used as a data path and a specified reference loss for IP Address 1 or IP Address 2. You can select the data path. For example, the processor 500 may use the data path of IP address 2 of the PDU session if the packet loss when using IP address 1 used as the data path exceeds the specified reference loss. For example, the processor 500 may use the data path of IP address 1 of the PDU session if the packet loss when using IP address 1 used as the data path is less than or equal to a specified reference loss.
  • IP address e.g., IP Address 1 or IP Address 2
  • the processor 500 sends a specific IP address (or IP prefix) (e.g., IP address) to a router advertisement (RA) message received from the network while IP address 1 and IP address 2 of the PDU session are assigned.
  • IP address 2 e.g., IP address 2
  • 1 or IP address 2 is set to a first value (e.g. '0'), and the effective time limit is set to a second value different from the first value, then the priority time limit of a specific IP address (e.g. IP address 1 or IP It is possible to use a data path with another IP address (e.g. IP address 2 or IP address 1) that is different from address 2).
  • a specific IP address e.g. IP Address 1 or IP Address 2 may be released based on expiration of its validity period.
  • the processor 500 supports QoE when communication is performed using PDU Session 1 and/or PDU Session 2 when the validity period of IP address 1 of PDU Session 1 is not set in single homing. Based on this, PDU Session 1 or PDU Session 2 can be used as the data path.
  • the processor 500 may check that the expiration date of IP address 1 of PDU session 2 is not set through a PCO message received from the network.
  • the processor 500 sets the validity time limit of IP address 1 of PDU session 1 when the validity time limit of IP address 1 of PDU session 2 received from the network has a specified value (e.g., '-1'). It can be determined that this is not set.
  • the processor 500 generates PDU Session 1 or PDU Session 2 based on the RTT when communicating using PDU Session 2 and the RTT when communicating using PDU Session 1. You can select by route. For example, if the difference between the RTT when communicating using PDU session 2 and the RTT when communicating using PDU session 1 is less than or equal to a specified first reference value, the processor 500 sets PDU session 2 can be used as a data path. For example, if the difference between the RTT when communicating using PDU session 2 and the RTT when communicating using PDU session 1 exceeds a specified first reference value, the processor 500 Session 1 can be used as the data path.
  • the processor 500 determines PDU session 1 based on packet loss and a specified reference loss when performing communication using a PDU session (e.g., PDU session 1 or PDU session 2) used as a data path.
  • PDU Session 2 can be selected as the data path. For example, if packet loss when performing communication using PDU session 1 used as a data path exceeds a specified reference loss, the processor 500 may use PDU session 2 as a data path. For example, the processor 500 may use PDU Session 1 as a data path if the packet loss when performing communication using PDU Session 1 used as a data path is less than or equal to a specified reference loss.
  • a specific PDU session e.g., PDU session 1
  • PDU session 2 a specific PDU session
  • PDU session 1 and PDU session 2 a specific PDU session
  • PDU session 2 a specific PDU session
  • PDU session 2 a specific PDU session
  • PDU session 2 a specific PDU session
  • PDU session 2 a specific PDU session
  • PDU session 2 a specific PDU session
  • PDU session 2 e.g., PDU session 1 and another PDU session
  • PDU session e.g., PDU session 2
  • a specific PDU session e.g., PDU session 1 may be released based on expiration of its validity period.
  • the communication circuit 510 transmits and/or receives signals and/or data to and from at least one external electronic device (e.g., electronic device 102 or 104 or server 108 of FIG. 1). Support is available.
  • the communication circuit 510 may include a radio frequency integrated circuit (RFIC) and/or a radio frequency front end (RFFE) for wireless communication with at least one external electronic device.
  • RFIC radio frequency integrated circuit
  • RFFE radio frequency front end
  • wireless communication may include, but is not limited to, a 5th generation communication method (e.g., NR communication method).
  • the memory 520 may store various data used by at least one component of the electronic device 101 (eg, the processor 500 and/or the communication circuit 510). According to one embodiment, the memory 520 may store various instructions that can be executed through the processor 500.
  • the electronic device 101 may switch or select a data path through the communication circuit 510 (eg, a modem).
  • the communication circuit 510 may switch or select a data path based on instruction information from the processor 500. For example, in the case of multi-homing, the communication circuit 510 may switch the data path to IP address 2 based on QoE when communication is performed using IP address 1 and/or IP address 2. For example, in the case of single homing, the communication circuit 510 may switch the data path to PDU session 2 based on QoE when communication is performed using PDU session 1 and/or PDU session 2.
  • Figure 6 is a block diagram 600 illustrating a program according to various embodiments.
  • the program 140 includes an operating system 142, middleware 144, or an application 146 executable on the operating system 142 for controlling one or more resources of the electronic device 101. can do.
  • operating system 142 may include Android TM , iOS TM , Windows TM , Symbian TM , Tizen TM , or Bada TM .
  • at least some of the programs 140 are preloaded into the electronic device 101 at the time of manufacture, or when used by a user, are stored in an external electronic device (e.g., the electronic device 102 or 104 of FIG. 1, or It can be downloaded or updated from the server 108).
  • the operating system 142 may control management (eg, allocation or recovery) of one or more system resources (eg, process, memory, or power) of the electronic device 101.
  • the operating system 142 may include one or more driver programs for driving other hardware devices (eg, the processor 500 or the communication circuit 510) of the electronic device 101.
  • the operating system 142 checks whether the network to which the electronic device 101 is connected supports CS (circuit switched) communication or an emergency call method to be used by the electronic device 101 (e.g., VoLTE). It may include a radio interface layer (RIL) 631 that controls the emergency call method or CS emergency call method. For example, RIL 631 may control communication circuitry 510 to establish or release a PDU session with the network.
  • CS circuit switched
  • an emergency call method to be used by the electronic device 101
  • RIL radio interface layer
  • RIL 631 may control communication circuitry 510 to establish or release a PDU session with the network.
  • the middleware 144 may provide various functions to the application 146 so that functions or information provided from one or more resources of the electronic device 101 can be used by the application 146.
  • the middleware 144 includes an application manager 601, a window manager 603, a multimedia manager 605, a resource manager 607, a power manager 609, a database manager 611, and a package manager 613.
  • Connectivity Manager (615), Notification Manager (617), Location Manager (619), Graphics Manager (621), Security Manager (623), Call Manager (625), Voice Recognition Manager (627), or SSC Manager (629) may include.
  • the application manager 601 may manage the life cycle of the application 146.
  • the window manager 603 can manage one or more GUI resources used on the screen.
  • the multimedia manager 605 identifies one or more formats required for playback of media files, and encodes or decodes the corresponding media file using a codec suitable for the selected format. It can be done.
  • the resource manager 607 may manage the source code of the application 146 or the memory space of the memory 130.
  • the power manager 609 manages the capacity, temperature, or power of the battery 189, and can use this information to determine or provide related information necessary for the operation of the electronic device 101. there is.
  • the power manager 609 may interface with a basic input/output system (BIOS) (not shown) of the electronic device 101.
  • BIOS basic input/output system
  • the database manager 611 may create, search, or change a database to be used by the application 146.
  • the package manager 613 can manage the installation or update of applications distributed in the form of package files.
  • the connectivity manager 615 may manage a wireless connection or direct connection between the electronic device 101 and an external electronic device. For example, the connectivity manager 615 may provide information related to establishment and/or release of a PDU session between the operating system 142 (or RIL 631) and the application 146.
  • the notification manager 617 may provide a function for notifying the user of the occurrence of a designated event (eg, an incoming call, message, or alarm).
  • the location manager 619 may manage location information of the electronic device 101.
  • the graphics manager 621 may manage one or more graphic effects or a user interface related thereto to be provided to the user.
  • security manager 623 may provide system security or user authentication.
  • the telephony manager 625 may manage the voice call function or video call function provided by the electronic device 101.
  • the voice recognition manager 627 transmits the user's voice data to the server 108 and provides a command corresponding to a function to be performed in the electronic device 101 based at least in part on the voice data. , or text data converted based at least in part on the voice data may be received from the server 108.
  • the SSC manager 629 may control at least one operation of setting a data path to be used for data communication, releasing a PDU session, or DNS dictionary analysis.
  • the data path to be used for data communication can be set up by changing the UPF in SSC mode 3 to the newly assigned IP address 2 while IP address 1 and IP address 2 of the PDU session are assigned.
  • It may include a series of processes for setting the transition point of the data path to
  • the setting of the data path to be used for data communication is, in the case of single homing, with PDU session 1 and PDU session 2 established for a change in UPF in SSC mode 3, the data path to the newly established PDU session 2. It may include a series of processes for setting the transition point.
  • release of a PDU session involves switching the data path to the newly assigned IP address 2 while IP address 1 and IP address 2 of the PDU session are assigned to change UPF in SSC mode 3.
  • a series of processes may be included to control the release of IP address 1 assigned at a previous time.
  • release of a PDU session is based on switching of the data path from established PDU Session 1 and PDU Session 2 to the newly established PDU Session 2 for a change in UPF in SSC mode 3 in the case of single homing. It may include a series of processes for controlling the release of PDU session 1 established at a previous time.
  • DNS dictionary resolution determines the server (or server address) associated with IP address 2 based on the assignment of a new IP address 2 (or IP prefix 2) for a change in UPF in SSC mode 3 in the case of multi-homing. It can include a series of actions to check.
  • DNS pre-resolution performs a series of actions to determine the server (or server address) associated with PDU session 2 based on the establishment of a new PDU session 2 for a change in UPF in SSC mode 3 in the case of single homing. It can be included.
  • the middleware 144 may dynamically delete some existing components or add new components. According to one embodiment, at least a portion of the middleware 144 may be included as part of the operating system 142 or may be implemented as separate software different from the operating system 142.
  • the application 146 may include at least one application program related to a function provided by the electronic device 101. According to one embodiment, the application 146 may include an application program related to data communication.
  • the application 146 may request a PDU session connection to the operating system 142 (or RIL 631) through the connectivity manager 615.
  • the RIL 631 may control transmission of a request message related to connection of a PDU session to the network through the communication circuit 510 (or modem).
  • the communication circuit 510 may transmit a response message (eg, an assigned IP address) to the RIL 631 in response to the request message received from the network.
  • the RIL 631 can create a network interface in the kernel and set the IP address received from the communication circuit 510 to the network interface.
  • the RIL 631 may transmit information related to the connection result of the PDU session to the application 146 through the connectivity manager 615.
  • the application 146 may request PDU session release from the operating system 142 (or RIL 631) through the connectivity manager 615.
  • the RIL 631 may control transmission of a request message related to disconnection of a PDU session to the network through the communication circuit 510 (or modem).
  • the communication circuit 510 may transmit a response message to the request message received from the network to the RIL 631.
  • RIL 631 can delete a network interface in the kernel.
  • the RIL 631 may transmit information related to the disconnection result of the PDU session to the application 146 through the connectivity manager 615.
  • an electronic device e.g., the electronic device 101 of FIGS. 1, 2, 3, 4, or 5 includes a communication circuit (e.g., the wireless communication module 192 of FIG. 1 or 2). ) or the communication circuit 510 of FIG. 5) and a processor operatively connected to the communication circuit (e.g., the processor 120 of FIG. 1 or FIG. 2 or the processor 500 of FIG. 5).
  • the processor may perform data communication through a protocol data unit (PDU) session and internet protocol (IP) address 1.
  • the processor may check IP address 2 of the PDU session associated with the change in data path.
  • PDU protocol data unit
  • IP internet protocol
  • the processor may check the round trip time (RTT) when using IP address 1 and the RTT when using IP address 2. there is. According to one embodiment, the processor determines the IP address based on the comparison result of the RTT when using IP address 1 and the RTT when using IP address 2 before the valid lifetime of IP address 1 expires. You can change the data path with 2. According to one embodiment, the processor may release IP address 1 based on a change in data path to IP address 2.
  • RTT round trip time
  • the processor when set to network and session and service continuity (SSC) mode 3, RTT and IP when using IP address 1 with IP address 1 and IP address 2 of the PDU session assigned. You can check the RTT when using address 2.
  • SSC network and session and service continuity
  • the processor transmits, through a communication circuit, a message related to a connection request to the network, and configures the SSC mode 3 based on information related to SSC mode 3 included in information related to PDU establishment acceptance received from the network.
  • the PDU session set to 3 can be established.
  • the processor may check the RTT when using IP address 1 and the RTT when using IP address 2 through a server related to a reference application program among a plurality of application programs running on the electronic device. there is.
  • the processor may check the RTT when using IP address 1 and the RTT when using IP address 2 through at least one server associated with each of a plurality of application programs running on the electronic device. there is.
  • RTT when using at least one of IP address 1 or IP address 2 is a server related to an application program running on an electronic device and transmits TCP (transmission control protocol) based on IP address 1 or IP address 2.
  • TCP transmission control protocol
  • QUIC based on IP address 1 or IP address 2 to the elapsed time from transmitting the synchronization signal to receiving the acknowledgment signal (ACK) of the TCP synchronization signal from the server, to the server associated with the application program running on the electronic device
  • the elapsed time from the time of transmitting the initial packet related to the time to the time of receiving the response signal (ACK) of the initial packet from the server, or the time that transmits the ping request signal of ICMP (internet control message protocol) It may include at least one of the elapsed times from the point in time to the point in time when the ping response signal is received.
  • the processor is a server associated with an application program to connect via IP address 2 through domain name system (DNS) pre-resolving based on the confirmation of IP address 2, and You can check the RTT when using IP address 2 through the server related to the application program for connection.
  • DNS domain name system
  • the processor before the validity period of IP address 1 expires, if the difference between the RTT when using IP address 2 and the RTT when using IP address 1 is less than or equal to a specified reference value, the processor You can switch the data path with 2.
  • the processor may maintain the data path for IP address 1 if the difference between the RTT when using IP address 2 and the RTT when using IP address 1 exceeds a specified reference value.
  • the processor determines the RTT and IP address when repeatedly using IP address 1 based on a specified period, if the data path of IP address 1 is maintained before the expiration of the validity period of IP address 1. Based on the RTT when using 2, it is determined whether the data path will be switched to IP address 2. If the number of times to determine whether to switch the data path to IP address 2 exceeds the specified number of times, the data path will be switched to IP address 2. You can switch.
  • the processor may reduce the validity period of IP Address 1 based on a change in data path to IP Address 2 and release IP Address 1 based on expiration of the reduced validity period of IP Address 1. there is.
  • an electronic device e.g., the electronic device 101 of FIGS. 1, 2, 3, 4, or 5 includes a communication circuit (e.g., the wireless communication module 192 of FIG. 1 or 2). ) or the communication circuit 510 of FIG. 5) and a processor operatively connected to the communication circuit (e.g., the processor 120 of FIG. 1 or FIG. 2 or the processor 500 of FIG. 5).
  • the processor may perform data communication through protocol data unit (PDU) session 1 and internet protocol (IP) address 1.
  • the processor may check PDU session 2 and IP address 2 based on a change in the PDU session.
  • PDU protocol data unit
  • IP internet protocol
  • the processor may check the round trip time (RTT) associated with PDU Session 1 and the RTT associated with PDU Session 2. According to one embodiment, the processor redirects the data to PDU session 2 based on a comparison result of the RTT associated with PDU session 1 and the RTT associated with PDU session 2 before the valid lifetime of PDU session 1 expires. You can. According to one embodiment, the processor may release PDU session 1 based on a change in data path to PDU session 2.
  • RTT round trip time
  • FIG. 7 is a flowchart 700 for changing a data path using multi-homing in an electronic device according to various embodiments.
  • each operation may be performed sequentially, but is not necessarily performed sequentially.
  • the order of each operation may be changed, and at least two operations may be performed in parallel.
  • the electronic device in FIG. 7 may be the electronic device 101 in FIG. 1, 2, 3, 4, or 5.
  • an electronic device uses a protocol data unit (PDU) session and an IP assigned from the network.
  • Data communication can be performed based on address 1.
  • the processor 500 communicates to transmit a message related to a connection request to a server (or content server) to the network (e.g., RAN 410 in FIG. 4) based on the occurrence of an event related to data communication.
  • the circuit 510 can be controlled.
  • a message related to a connection request may include at least one of PDU session identification information (eg, PDU session ID) or information related to SSC mode (eg, SSC mode 3).
  • an event related to data communication may be generated based on at least one of execution of an application program related to data communication, execution of a function, reception of user input, or reception of a communication signal.
  • the processor 500 may control the communication circuit 510 to establish a PDU session for data communication based on control information received from the network in response to transmission of a message related to a connection request. .
  • the processor 500 determines that establishment of a PDU session set in SSC mode 3 is completed based on information related to SSC mode 3 included in information related to PDU establishment acceptance (e.g., PDU session establishment accept) received from the network.
  • the control information received from the network may include information related to PDU establishment acceptance, identification information of the PDU session, information related to at least one of SSC mode, or IP address 1 (or IP prefix 1).
  • the electronic device may check IP address 2 newly assigned to the PDU session by the network based on a change in the UPF associated with the PDU session.
  • the processor 500 receives an IP prefix whose preferred lifetime is set to a first value (e.g., '0') from the network through the communication circuit 510. Based on the reception of information related to 1 and information related to IP prefix 2, it can be determined that the UPF has changed.
  • the processor 500 may generate IP address 2 of the PDU session based on IP prefix 2 received from the network.
  • IP prefix 1 is information (e.g.
  • IP prefix 2 is information (e.g., network ID) set by the network to configure IP address 2 for accessing UPF 2 based on changes in UPF, along with identification information (e.g., host ID) of the host. IP address 2 can be configured.
  • the electronic device determines the QoE when performing communication using IP Address 1 and/or IP Address 2 of the PDU session set to SSC mode 3. (quality of experience) can be checked.
  • QoE may include at least one of round trip time (RTT), path loss, or throughput.
  • the processor 500 transmits a TCP (transmission control protocol) synchronization signal based on IP address 1 to a server related to an application program from the time it receives a response signal (ACK) of the TCP synchronization signal from the server. The elapsed time can be judged as RTT when using IP address 1.
  • TCP transmission control protocol
  • the processor 500 uses IP address 2 by measuring the elapsed time from the time it transmits the TCP synchronization signal based on IP address 2 to the time it receives the response signal (ACK) of the TCP synchronization signal from the server. It can be judged by the RTT of the case. According to one embodiment, the processor 500 transmits the initial packet related to QUIC based on IP address 1 to the server related to the application program from the time of receiving the acknowledgment signal (ACK) of the initial packet. The time can be judged as RTT when using IP address 1. The processor 500 uses IP address 2 as the time from transmitting the initial packet related to QUIC based on IP address 2 to receiving the acknowledgment signal (ACK) of the initial packet to the server related to the application program.
  • the processor 500 uses IP address 1 to determine the time from transmitting a ping request signal of ICMP (internet control message protocol) to receiving a ping response signal using IP address 1. It can be judged by the RTT when using.
  • the processor 500 may determine the time from transmitting an ICMP ping request signal using IP address 2 to receiving a ping response signal as RTT when using IP address 2.
  • the RTT when using IP Address 1 and/or IP Address 2 is a combination of at least one of RTT based on a TCP synchronization signal, RTT based on an initial packet associated with QUIC, or RTT based on a ping request signal. It may be decided.
  • RTT when using IP address 1 and/or IP address 2 is when using IP address 1 and/or IP address 2 of the foreground application program among the application programs running on the electronic device 101.
  • the RTT when using IP address 1 and/or IP address 2 includes the average of the RTT when using IP address 1 and/or IP address 2 of the application programs running on the electronic device 101. can do.
  • the processor 500 may detect (or measure) the RTT when using IP address 1 through a server related to an application program running on the electronic device 101.
  • the processor 500 is a server (or server) associated with an application program for connection through IP address 2 through DNS (domain name system) pre-resolving based on the allocation of IP address 2 (or IP prefix 2). IP address) can be checked.
  • the processor 500 may detect (or measure) the RTT when using IP address 2 through a server related to an application program for connection through IP address 2.
  • the server associated with the application program for connection through IP address 2 may be the same as or different from the server associated with the application program for connection through IP address 1.
  • the electronic device determines in operation 707 whether the QoE when performing communication using IP Address 1 and/or IP Address 2 satisfies specified transition conditions. You can. According to one embodiment, the processor 500 determines whether a specified transition condition is satisfied based on the RTT when using IP address 2 and the RTT when using IP address 1 while the validity period of IP address 1 exists. You can. For example, a state that satisfies a specified transition condition may include a state in which the difference between the RTT when using IP address 2 and the RTT when using IP address 1 is less than or equal to a specified first reference value.
  • a state in which a specified transition condition is not satisfied may include a state in which the difference between the RTT when using IP address 2 and the RTT when using IP address 1 exceeds the specified first reference value.
  • a state in which the validity time limit of IP address 1 of the PDU session exists may include a state before the validity time limit of IP address 1 of the PDU session expires.
  • the processor 500 may determine whether a specified transition condition is satisfied based on packet loss when using IP address 1 while the validity period of IP address 1 exists.
  • a state that satisfies a specified transition condition may include a state in which packet loss when using IP address 1 exceeds a specified reference loss.
  • a state in which a specified transition condition is not satisfied may include a state in which packet loss when using IP address 1 is less than or equal to a specified reference loss.
  • an electronic device may switch if the QoE when performing communication using IP Address 1 and/or IP Address 2 does not satisfy a specified transition condition (e.g., 'No' in operation 707), one embodiment for switching the data path may end.
  • the processor 500 determines that the QoE when performing communication using IP address 1 and/or IP address 2 while the validity timeout of IP address 1 of the PDU session exists does not satisfy the specified transition condition. If not, it can be determined that the quality of data communication of IP address 1 is relatively better than that of IP address 2.
  • Processor 500 may maintain the data path of IP address 1 of the PDU session.
  • the processor 500 may switch the data path to IP address 2 of the PDU session when the validity period of IP address 1 of the PDU session expires.
  • an electronic device may perform communication using IP address 1 and/or IP address 2 if QoE satisfies a specified transition condition (e.g., operation ('Yes' in 707), in operation 709, the data path may be switched to IP address 2 of the PDU session.
  • the processor 500 determines that the QoE when performing communication using IP address 1 and/or IP address 2 while the validity period of IP address 1 of the PDU session exists satisfies the specified transition condition. In this case, it may be determined that the quality of data communication of IP address 2 is relatively better than that of IP address 1, or that the quality of data communication of IP address 1 and IP address 2 are similar.
  • the processor 500 may switch the data path to IP address 2 of the PDU session while the validity period of IP address 1 of the PDU session exists. For example, switching the data path may include a series of operations that change the routing table value of the processor 500 based on IP address 2.
  • the processor 500 may update the expiration date of IP address 1 based on a data path switch to IP address 2 of the PDU session. For example, the processor 500 may decrease the validity period of IP address 1 based on a specified interval. For example, if the expiration date of IP address 1 exists, the processor 500 may repeatedly update the expiration time of IP address 1. For example, the processor 500 may release IP address 1 when the validity period of IP address 1 expires.
  • the specified interval is a reference range for decreasing the validity period (e.g., remaining validity period) of IP Address 1, and may include half the validity period (e.g., remaining validity period) of IP Address 1 or a fixed interval. there is.
  • an electronic device may perform data communication through IP address 2 of the PDU session in operation 711.
  • FIG. 8 is a flowchart 800 for setting a data path switching point based on RTT in an electronic device according to various embodiments.
  • at least a portion of FIG. 8 may include detailed operations 705 to 711 of FIG. 7 .
  • each operation may be performed sequentially, but is not necessarily performed sequentially.
  • the order of each operation may be changed, and at least two operations may be performed in parallel.
  • the electronic device in FIG. 8 may be the electronic device 101 in FIG. 1, 2, 3, 4, or 5.
  • an electronic device assigns IP address 1 and IP address 2 to a PDU session set to SSC mode 3.
  • the round trip time (RTT) when using IP address 1 and IP address 2 of the PDU session can be checked.
  • the processor 500 detects an RTT when using IP address 1 and/or IP address 2 for a server related to a foreground application program among application programs running on the electronic device 101 ( or measurement) can be performed.
  • the foreground application program may represent an application program with a graphic user interface (GUI) displayed at the top of the display (not shown) of the electronic device 101 among application programs running on the electronic device 101.
  • GUI graphic user interface
  • the processor 500 detects (or measures) the average of the RTT when using IP Address 1 and/or IP Address 2 for servers associated with application programs running on the electronic device 101. can do.
  • an application program running on the electronic device 101 may include an application program in which a socket for sending and/or receiving a message of the application program is opened (or activated).
  • the RTT when using IP address 1 and/or IP address 2 is determined by the server associated with the application program based on at least one of a TCP synchronization signal, an initial packet related to QUIC, or a ping request signal (or measurement) can be made.
  • the processor 500 may detect (or measure) the RTT when using IP address 1 through a server related to an application program running on the electronic device 101.
  • the processor 500 may check the server (or the IP address of the server) related to the application program to access through IP address 2 through DNS dictionary analysis based on the allocation of IP address 2 (or IP prefix 2).
  • the processor 500 may detect (or measure) the RTT when using IP address 2 through a server related to an application program for connection through IP address 2.
  • the electronic device may check whether the RTT when using IP address 1 and IP address 2 satisfies specified switching conditions in operation 803.
  • the processor 500 determines whether a specified transition condition is satisfied based on the RTT when using IP address 2 and the RTT when using IP address 1 while the validity period of IP address 1 exists. You can.
  • a state that satisfies a specified transition condition may include a state in which the difference between the RTT when using IP address 2 and the RTT when using IP address 1 is less than or equal to a specified first reference value.
  • a state in which a specified transition condition is not satisfied may include a state in which the difference between the RTT when using IP address 2 and the RTT when using IP address 1 exceeds a specified first reference value.
  • a state in which the validity time limit of IP address 1 of the PDU session exists may include a state before the validity time limit of IP address 1 of the PDU session expires.
  • the electronic device determines whether the RTT when using IP Address 1 and IP Address 2 satisfies a specified transition condition (e.g., 'Yes' in operation 803). , In operation 805, the data path may be switched to IP address 2 of the PDU session.
  • the processor 500 is configured to switch IP address 2 if the RTT when using IP address 1 and IP address 2 satisfies a specified transition condition while the validity timeout of IP address 1 of the PDU session exists. It may be determined that the quality of data communication is relatively better than that of IP address 1, or that the quality of data communication of IP address 1 and IP address 2 is similar.
  • the processor 500 may switch the data path to IP address 2 of the PDU session while the validity period of IP address 1 of the PDU session exists.
  • the processor 500 may control the communication circuit 510 to perform data communication through IP address 2 of the PDU session based on switching of the data path.
  • the electronic device may update the expiration date (or release time) of IP address 1 of the PDU session in operation 807.
  • the processor 500 may decrease the expiration date of IP address 1 of the PDU session based on a specified interval.
  • the specified interval may include half of the validity time (e.g., remaining validity time) of IP Address 1 or a fixed interval as a reference range for decreasing the validity time (e.g., remaining validity time) of IP Address 1 at once. there is.
  • the electronic device may check in operation 809 whether the updated expiration date (or end time) of IP address 1 of the PDU session has arrived.
  • the electronic device determines that the updated expiration date (or end time) of IP address 1 of the PDU session has not arrived (e.g., 'No' in operation 809).
  • the validity period (or release time) of IP address 1 of the PDU session may be updated.
  • the processor 500 may repeatedly update the validity time of IP address 1. For example, updating the validity time of IP address 1 of the PDU session may be performed based on a designated period.
  • the electronic device when the updated expiration date (or end time) of IP address 1 of the PDU session has arrived (e.g., 'Yes' in operation 809), In operation 811, IP address 1 of the PDU session may be released.
  • the processor 500 may release IP address 1 of the PDU session by closing the socket of the application program associated with IP address 1 of the PDU session.
  • a state in which the expiration time (or updated expiration time) of IP address 1 has arrived may include a state in which the expiration time of IP address 1 is less than or equal to a specified minimum expiration time.
  • an electronic device may determine that an RTT using IP Address 1 and IP Address 2 does not satisfy a specified transition condition (e.g., 'No' in operation 803). ), in operation 813, it can be checked whether the expiration date (or end time) of IP address 1 of the PDU session has arrived.
  • the processor 500 switches IP address 1 of the PDU session if the RTT when using IP address 1 and IP address 2 does not satisfy the specified transition condition while the validity timeout of IP address 1 exists. The data path can be maintained.
  • the electronic device e.g., processor 120 or 500 performs the operation.
  • the electronic device e.g., processor 120 or 500
  • the processor 500 uses IP address 1 and IP address 2 based on a specified period if the data path of IP address 1 of the PDU session is maintained while the validity timeout of IP address 1 exists. You can check and compare the RTTs of the cases to see if you can reroute the data to IP address 2 of the PDU session.
  • the processor 500 switches the data path to IP address 2 of the PDU session if the number of times it checks whether the data path is switched while the validity time limit of IP address 1 exists exceeds the specified reference number. You can.
  • the processor 500 determines the validity period of the PDU session. You can switch the data path to IP address 2.
  • the electronic device e.g., processor 120 or 500 performs operation 811 when the expiration date (or end time) of IP address 1 of the PDU session has arrived (e.g., 'Yes' in operation 813). , IP address 1 of the PDU session can be released.
  • the processor 500 may switch the data path to IP address 2 of the PDU session when the validity period of IP address 1 expires.
  • FIG. 9 is a flowchart 900 for setting a data path switching point based on packet loss in an electronic device according to various embodiments.
  • at least a portion of FIG. 9 may include detailed operations 705 to 711 of FIG. 7 .
  • each operation may be performed sequentially, but is not necessarily performed sequentially.
  • the order of each operation may be changed, and at least two operations may be performed in parallel.
  • the electronic device in FIG. 9 may be the electronic device 101 in FIG. 1, 2, 3, 4, or 5.
  • an electronic device e.g., processor 120 of FIG. 1 or processor 500 of FIG. 5 sends IP address 1 and IP address 1 to the PDU session to change UPF in SSC mode 3. If IP address 2 is assigned (e.g., operation 703 in FIG. 7), packet loss when using IP address 1 of the PDU session can be confirmed in operation 901.
  • the processor 500 may check the loss rate of data (packets) transmitted and/or received based on IP address 1 of the PDU session during a specified time.
  • the electronic device may check whether packet loss when using IP address 1 satisfies a specified transition condition.
  • the processor 500 may determine that the specified transition condition is satisfied if the packet loss when using IP address 1 while the validity timeout of IP address 1 exists exceeds the specified reference loss. there is.
  • the processor 500 may determine that the specified transition condition is not satisfied if the packet loss when using IP address 1 while the validity period of IP address 1 exists is less than or equal to a specified reference loss.
  • a state in which the validity time limit of IP address 1 of the PDU session exists may include a state before the validity time limit of IP address 1 of the PDU session expires.
  • the electronic device e.g., processor 120 or 500
  • the electronic device performs operation 905.
  • the data path can be switched to IP address 2 of the PDU session.
  • the processor 500 switches on data communication of IP address 1 if packet loss when using IP address 1 satisfies a specified transition condition while the validity timeout of IP address 1 of the PDU session exists. It can be judged that the quality has relatively deteriorated.
  • the processor 500 may switch the data path to IP address 2 of the PDU session while the validity period of IP address 1 of the PDU session exists.
  • the processor 500 may control the communication circuit 510 to perform data communication through IP address 2 of the PDU session based on switching of the data path.
  • the electronic device may update the expiration date (or release time) of IP address 1 of the PDU session in operation 907.
  • the processor 500 may decrease the expiration date of IP address 1 of the PDU session based on a specified interval.
  • the electronic device may check in operation 909 whether the updated expiration date (or end time) of IP address 1 of the PDU session has arrived.
  • the electronic device determines that the updated expiration date (or end time) of IP address 1 of the PDU session has not arrived (e.g., 'No' in operation 909).
  • the validity period (or release time) of IP address 1 of the PDU session may be updated.
  • the processor 500 may repeatedly update the validity time of IP address 1. For example, updating the validity time of IP address 1 of the PDU session may be performed based on a designated period.
  • the electronic device when the updated expiration date (or end time) of IP address 1 of the PDU session has arrived (e.g., 'Yes' in operation 909), At operation 911, IP address 1 of the PDU session may be released.
  • releasing IP address 1 of the PDU session may include a series of operations that close the socket of the application program associated with IP address 1 of the PDU session.
  • the electronic device e.g., processor 120 or 500 performs the operation.
  • the electronic device e.g., processor 120 or 500
  • it can be checked whether the expiration date (or expiration time) of IP address 1 of the PDU session has arrived.
  • processor 500 switches the data path to IP address 1 of the PDU session if packet loss when using IP address 1 does not satisfy a specified transition condition while the validity timeout of IP address 1 exists. can be maintained.
  • the electronic device e.g., processor 120 or 500 performs the operation.
  • the electronic device e.g., processor 120 or 500
  • the processor 500 when the data path of IP address 1 of the PDU session is maintained while the expiration date of IP address 1 exists, the processor 500 generates a packet when using IP address 1 based on a designated period. You can verify that the data path can be switched to IP address 2 of the PDU session by checking whether the loss satisfies the specified switching conditions.
  • the processor 500 switches the data path to IP address 2 of the PDU session if the number of times it checks whether the data path is switched while the validity time limit of IP address 1 exists exceeds the specified reference number. You can.
  • the processor 500 determines the validity period of the PDU session. You can switch the data path to IP address 2.
  • the electronic device e.g., processor 120 or 500 performs operation 911 when the expiration date (or end time) of IP address 1 of the PDU session has arrived (e.g., 'Yes' in operation 913). , IP address 1 of the PDU session can be released.
  • the processor 500 may switch the data path to IP address 2 of the PDU session when the validity period of IP address 1 expires.
  • Figure 10 is an example of changing a data path using multi-homing in an electronic device according to various embodiments.
  • the electronic device 101 communicates data with the server 1000 through UPF 1 (450) based on a protocol data unit (PDU) session set to SSC mode 3 and IP address 1. may be performed (operation 1011).
  • UPF BP 440 may connect a PDU session with electronic device 101 to UPF 1 450 based on IP address 1 received from electronic device 101.
  • the electronic device 101 may perform data communication with the server 1000 through UPF 1 (450) connected through UPF BP (440) (operation 1011). For example, when the electronic device 101 is connected and routed through a PDU session, the electronic device 101 may use IP address 1 as the source IP for IP communication.
  • the SMF (430) is executed in the electronic device (101), the location of the electronic device (101), the load (load) of the UPF 1 (450), connection information of the base station (e.g., RAN (410)), or the electronic device (101). Relocation of the UPF may be determined based on at least one of the requirements of the application program (operation 1013).
  • the SMF 430 can use a relatively short data transmission path when the PDU session with the electronic device 101 changes UPF 1 450 to another UPF (e.g., UPF 2 455). If it is determined that there is a benefit to the electronic device 101 and/or the network operator by reducing the data arrival time, it may be decided to change the UPF.
  • the SMF 430 may connect the path (e.g., N9 Session) after the UPF BP 440 to the new UPF 2 455 (operation 1015).
  • the PDU session connected in the electronic device 101 does not change regardless of the change in UPF, and within the network, from UPF BP 440 to UPF (e.g. UPF 1 450 and/or Alternatively, only the path up to UPF 2 (455) (e.g. N9 Session) can be changed.
  • the network (e.g., SMF 430) provides the electronic device 101 with a new IP address, IP Address 2 (or IP Prefix 2), for use by UPF 2 455 based on the UPF change. may be assigned (action 1017).
  • the network e.g., SMF 430
  • the network e.g., SMF 430
  • the expiration date of IP address 1 (or IP prefix 1) may be set to a second value that is different from the first value.
  • the electronic device 101 transmits information related to IP address 1 (or IP prefix 1) and IP address 2 (or IP prefix 2) whose priority time limit is set to a first value (e.g., '0') to the network. ), it can be determined that the UPF has changed.
  • the electronic device 101 may create a new IP address 2 of the PDU session based on information related to IP address 2 (or IP prefix 2) received from the network.
  • the electronic device 101 may switch the data path to IP address 2 of the PDU session (operation 1019).
  • the electronic device 101 may set the source IP address to IP address 2.
  • the electronic device 101 performs quality of experience (QoE) when communicating using IP address 1 and/or IP address 2 of the PDU session allocated for change of UPF in SSC mode 3. ) can be confirmed. If the electronic device 101 determines that the QoE when performing communication using IP address 1 and/or IP address 2 satisfies the specified switching condition, the electronic device 101 may switch the data path to IP address 2 of the PDU session.
  • QoE may include at least one of round trip time (RTT), path loss, or throughput.
  • the electronic device 101 when the electronic device 101 determines that the QoE when performing communication using IP address 1 and/or IP address 2 does not satisfy the specified transition condition, the electronic device 101 switches the IP address based on the specified cycle. By checking the QoE when communicating using IP address 1 and/or IP address 2, you can check whether the specified transition conditions are satisfied.
  • the electronic device 101 may switch the data path to IP address 2 of the PDU session if the number of times it checks whether the data path is switched while the validity time limit of IP address 1 exists exceeds the specified reference number.
  • the electronic device 101 may switch the data path to IP address 2 of the PDU session.
  • a state in which the validity time of IP address 1 expires may include a state in which the validity time of IP address 1 is less than or equal to a specified minimum validity time.
  • the electronic device 101 if there is no transmission and reception of data based on IP address 1 of the PDU session for a specified first reference time while the validity time limit of IP address 1 exists, the electronic device 101 starts the PDU session. You can switch the data path to IP address 2.
  • the electronic device 101 may release IP address 1 when the validity period of IP address 1 expires (operation 1021).
  • the electronic device 101 may update the expiration date of IP address 1 based on switching the data path to IP address 2 of the PDU session.
  • the processor 500 may decrease the validity period of IP address 1 based on a specified interval. For example, if the expiration date of IP address 1 exists, the processor 500 may repeatedly update the expiration time of IP address 1.
  • the electronic device 101 may release IP address 1 when the validity period of updated IP address 1 expires.
  • FIG. 11 is a flowchart 1100 for changing a data path using single homing in an electronic device according to various embodiments.
  • each operation may be performed sequentially, but is not necessarily performed sequentially.
  • the order of each operation may be changed, and at least two operations may be performed in parallel.
  • the electronic device of FIG. 11 may be the electronic device 101 of FIG. 1, 2, 3, 4, or 5.
  • an electronic device uses a protocol data unit (PDU) session 1 and a network allocated from the network. Data communication can be performed based on IP address 1.
  • the processor 500 communicates to transmit a message related to a connection request to a server (or content server) to the network (e.g., RAN 410 in FIG. 4) based on the occurrence of an event related to data communication.
  • the circuit 510 can be controlled.
  • a message related to a connection request may include at least one of PDU session identification information (eg, PDU session ID) or information related to SSC mode (eg, SSC mode 3).
  • an event related to data communication may be generated based on at least one of execution of an application program related to data communication, execution of a function, reception of user input, or reception of a communication signal.
  • the processor 500 may control the communication circuit 510 to establish PDU session 1 for data communication based on control information received from the network in response to transmission of a message related to a connection request. there is.
  • the processor 500 may determine that establishment of PDU session 1 set to SSC mode 3 is complete based on information related to SSC mode 3 included in information related to PDU establishment acceptance received from the network.
  • the control information received from the network may include information related to PDU establishment acceptance, identification information of the PDU session, information related to at least one of SSC mode, or IP address 1 (or IP prefix 1).
  • the electronic device may check PDU session 2 and IP address 2 newly allocated by the network based on a change in the PDU session in operation 1103.
  • the processor 500 may receive information related to a PDU session change (eg, PDU session modification command) from the network through the communication circuit 510.
  • the processor 500 may control the communication circuit 510 to transmit a response message (eg, PDU session modification complete) to the network in response to receipt of information related to a PDU session change.
  • the processor 500 may control the communication circuit 510 to transmit information related to a PDU session change request (eg, PDU session modification request) to the network to establish a new PDU session.
  • the processor 500 may determine that establishment of PDU session 2 set to SSC mode 3 is complete based on a response signal to information related to the PDU session change request received from the network.
  • information related to a change in a PDU session includes the valid lifetime of IP address 1 (or IP prefix 1) of PDU session 1, IP address 2 (or IP prefix 2) of PDU session 2 or PDU session 2, and May contain relevant information.
  • information related to a change request for a PDU session may include identification information of PDU session 2 to be newly established based on a change in UPF.
  • the electronic device determines a QoE (QoE) associated with assigned PDU Session 1 and/or PDU Session 2 based on a change in the PDU session set to SSC mode 3. You can check the quality of experience.
  • QoE related to PDU Session 1 and/or PDU Session 2 may be round trip time (RTT), path loss, or throughput ( throughput) may be included.
  • the processor 500 receives a response signal (ACK) of the TCP synchronization signal from the server from the time of transmitting the TCP (transmission control protocol) synchronization signal based on IP address 1 to the server related to the application program.
  • ACK response signal
  • the elapsed time up to this point can be determined as the RTT related to PDU session 1.
  • the processor 500 records the elapsed time from the time the TCP synchronization signal is transmitted to the server related to the application program based on IP address 2 to the time it receives the TCP synchronization signal response signal (ACK) from the server related to PDU session 2. It can be judged by RTT.
  • the processor 500 transmits an initial packet related to QUIC based on IP address 1 to a server related to an application program from the time of receiving the acknowledgment signal (ACK) of the initial packet.
  • the time of can be determined as the RTT related to PDU session 1.
  • the processor 500 is a server related to the application program and converts the time from transmitting the initial packet related to QUIC based on IP address 2 to receiving the acknowledgment signal (ACK) of the initial packet as RTT related to PDU session 2. You can judge.
  • the processor 500 determines the time from transmitting an ICMP ping request signal using IP address 1 to receiving a ping response signal as the RTT associated with PDU session 1. You can.
  • the processor 500 may determine the time from transmitting an ICMP ping request signal using IP address 2 to receiving a ping response signal as the RTT associated with PDU session 2.
  • the RTT associated with PDU Session 1 and/or PDU Session 2 may be determined as a combination of at least one of an RTT based on a TCP synchronization signal, an RTT based on an initial packet associated with QUIC, or an RTT based on a ping request signal.
  • the RTT associated with PDU Session 1 and/or PDU Session 2 may include the RTT when connecting to the server associated with the foreground application program using PDU Session 1 and/or PDU Session 2.
  • the RTT associated with PDU Session 1 and/or PDU Session 2 is the average of the RTT when connecting PDU Session 1 and/or PDU Session 2 to a server associated with each of the application programs running on the electronic device 101. may include.
  • the processor 500 may detect (or measure) the RTT related to PDU session 1 through a server related to an application program running on the electronic device 101.
  • the processor 500 is a server (or server) associated with an application program for connection through IP address 2 through DNS (domain name system) pre-resolving based on the allocation of IP address 2 (or IP prefix 2). IP address) can be checked.
  • the processor 500 may detect (or measure) the RTT associated with PDU session 2 through a server associated with an application program for connection through IP address 2 (or PDU session 2).
  • the server associated with the application program for connection through IP address 2 (or PDU session 2) may be the same as or different from the server associated with the application program for connection through IP address 1 (or PDU session 1). .
  • the electronic device may determine whether the QoE associated with PDU Session 1 and/or PDU Session 2 satisfies a specified transition condition in operation 1107.
  • the processor 500 may determine whether a specified transition condition is satisfied based on the RTT associated with PDU Session 2 and the RTT associated with PDU Session 1 while the validity timeout of PDU Session 1 exists.
  • a state that satisfies a specified transition condition may include a state where the difference between the RTT associated with PDU session 1 from the RTT associated with PDU session 2 is less than or equal to a specified first reference value.
  • a condition in which a specified transition condition is not met may include a condition in which the difference between the RTT associated with PDU Session 1 from the RTT associated with PDU Session 2 exceeds a specified first reference value.
  • the state in which the validity time limit of PDU session 1 exists may include a state before the validity time limit of PDU session 1 expires.
  • the processor 500 may determine whether a specified transition condition is satisfied based on packet loss associated with PDU Session 1 while the validity timeout of PDU Session 1 exists.
  • a state that satisfies a specified transition condition may include a state in which packet loss associated with PDU Session 1 exceeds a specified baseline loss.
  • a condition in which a specified transition condition is not met may include a condition in which the packet loss associated with PDU session 1 is less than or equal to a specified reference loss.
  • the electronic device determines whether the QoE associated with PDU Session 1 and/or PDU Session 2 does not satisfy a specified transition condition (e.g., 'No' in operation 1107). , an embodiment for switching the data path can be ended.
  • the processor 500 disables the data communication of PDU Session 1 if the QoE associated with PDU Session 1 and/or PDU Session 2 does not satisfy the specified transition condition while the validity timeout of PDU Session 1 exists. The quality can be judged to be relatively better than PDU Session 2.
  • Processor 500 may maintain the data path with PDU session 1.
  • the processor 500 may switch the data path to PDU session 2 when the validity period of PDU session 1 expires.
  • the electronic device e.g., processor 120 or 500
  • the QoE associated with PDU Session 1 and/or PDU Session 2 satisfies a specified transition condition (e.g., 'Yes' in operation 1107)
  • the data path may be switched to PDU session 2.
  • the processor 500 switches on the data communication of PDU session 2 when the QoE associated with PDU session 1 and/or PDU session 2 satisfies the specified transition condition while the validity timeout of PDU session 1 exists. It may be determined that the quality is relatively better than that of PDU Session 1, or that the quality of data communication of PDU Session 1 and PDU Session 2 is similar.
  • the processor 500 may switch the data path to PDU session 2 while the validity time limit of PDU session 1 exists.
  • the processor 500 may update the validity time of PDU session 1 based on the data path switch to PDU session 2. For example, the processor 500 may decrease the validity time of PDU session 1 based on a specified interval. For example, if the validity time of PDU session 1 exists, the processor 500 may repeatedly update the validity time of PDU session 1. For example, the processor 500 may release PDU session 1 when the validity period of PDU session 1 expires.
  • the specified interval is a reference range for decreasing the validity time (e.g., remaining validity time) of PDU Session 1 at once, and may include half of the validity time (e.g., remaining validity time) of PDU Session 1 or a fixed interval. You can.
  • an electronic device may perform data communication through PDU session 2 in operation 1111.
  • FIG. 12 is a flowchart 1200 for setting a data path switching point based on RTT in an electronic device according to various embodiments.
  • at least a portion of FIG. 12 may include detailed descriptions of operations 1105 to 1111 of FIG. 11 .
  • each operation may be performed sequentially, but is not necessarily performed sequentially.
  • the order of each operation may be changed, and at least two operations may be performed in parallel.
  • the electronic device of FIG. 12 may be the electronic device 101 of FIG. 1, 2, 3, 4, or 5.
  • an electronic device changes PDU session 1 and PDU session 1 based on a change in a PDU session set to SSC mode 3.
  • session 2 is allocated (e.g., operation 1103 in FIG. 11)
  • the RTT associated with PDU session 1 and PDU session 2 can be checked.
  • the processor 500 detects the RTT when connecting to a server related to a foreground application program among application programs running on the electronic device 101 using PDU Session 1 and/or PDU Session 2. (or measure).
  • the foreground application program may represent an application program with a graphic user interface (GUI) displayed at the top of the display (not shown) of the electronic device 101 among application programs running on the electronic device 101.
  • GUI graphic user interface
  • the processor 500 detects (or measures) the average RTT when accessing a server related to application programs running on the electronic device 101 using PDU Session 1 and/or PDU Session 2. )can do.
  • an application program running on the electronic device 101 may include an application program in which a socket for sending and/or receiving a message of the application program is opened (or activated).
  • the RTT associated with PDU Session 1 and/or PDU Session 2 is determined (or measured) by the server associated with the application program based on at least one of a TCP synchronization signal, an initial packet associated with QUIC, or a ping request signal. You can.
  • the processor 500 may detect (or measure) the RTT related to PDU session 1 through a server related to an application program running on the electronic device 101.
  • the processor 500 determines the server (or the IP address of the server) associated with the application program for connection through IP address 2 (or PDU session 2) through DNS dictionary analysis based on the assignment of IP address 2 (or IP prefix 2). You can check.
  • the processor 500 may detect (or measure) the RTT associated with PDU session 2 through a server associated with an application program for connection through IP address 2 (or PDU session 2).
  • the electronic device may determine whether the RTTs associated with PDU Session 1 and PDU Session 2 satisfy specified transition conditions in operation 1203.
  • the processor 500 may determine whether a specified transition condition is satisfied based on the RTT associated with PDU session 2 and the RTT associated with PDU session 1 while the validity timeout of PDU session 1 exists.
  • a state that satisfies a specified transition condition may include a state where the difference between the RTT associated with PDU session 1 from the RTT associated with PDU session 2 is less than or equal to a specified first reference value.
  • a condition in which a specified transition condition is not met may include a condition in which the difference between the RTT associated with PDU Session 1 from the RTT associated with PDU Session 2 exceeds a specified first reference value.
  • the state in which the validity time limit of PDU session 1 exists may include a state before the validity time limit of PDU session 1 expires.
  • the electronic device e.g., processor 120 or 500
  • the specified transition condition e.g., 'Yes' in operation 1203
  • the data path can be switched to PDU session 2.
  • processor 500 determines that if the RTTs associated with PDU Session 1 and PDU Session 2 satisfy specified transition conditions while the validity timeout of PDU Session 1 exists, the quality of data communication in PDU Session 2 is changed to PDU Session 2. It may be determined that the data communication quality of PDU Session 1 and PDU Session 2 is relatively better than Session 1, or is similar.
  • Processor 500 may switch the data path to PDU session 2 while the validity timeout of PDU session 1 exists.
  • the processor 500 may control the communication circuit 510 to perform data communication through PDU session 2 based on switching of the data path.
  • the electronic device may update the expiration time (or release time) of PDU session 1 in operation 1207.
  • the processor 500 may decrease the validity time of PDU session 1 based on a specified interval.
  • the electronic device may check in operation 1209 whether the updated expiration date (or end time) of PDU session 1 has arrived.
  • the electronic device e.g., processor 120 or 500 performs operation 1207.
  • the validity period (or release time) of PDU session 1 can be updated.
  • the processor 500 may repeatedly update the validity time of PDU session 1. For example, updating the validity time of PDU session 1 may be performed based on a designated period.
  • the electronic device in operation 1211, when the updated expiration date (or end time) of PDU session 1 has arrived (e.g., 'Yes' in operation 1209) , PDU session 1 can be released.
  • the processor 500 may release PDU session 1 by closing the socket of the application program related to PDU session 1.
  • a state in which the validity time (or updated validity time) of PDU Session 1 has arrived may include a state in which the validity time of PDU Session 1 is less than or equal to the specified minimum validity time.
  • processor 500 may maintain the data path to PDU Session 1 if the RTTs associated with PDU Session 1 and PDU Session 2 do not satisfy a specified transition condition while the validity timeout of PDU Session 1 exists. there is.
  • the electronic device e.g., processor 120 or 500
  • the expiration date (or end time) of PDU session 1 has not arrived (e.g., 'No' in operation 1213), in operation 1201
  • the processor 500 checks the RTTs associated with PDU Session 1 and PDU Session 2 based on a specified period if the data path of PDU Session 1 is maintained while the validity timeout of PDU Session 1 exists. By comparing, you can check whether the data path can be switched to PDU session 2.
  • the processor 500 may switch the data path to PDU session 2 if the number of times it checks whether the data path is switched while the validity time limit of PDU session 1 exists exceeds a specified reference number.
  • the processor 500 routes the data to PDU Session 2 if there is no transmission and reception of data based on PDU Session 1 for a specified first reference time. can be switched.
  • the electronic device e.g., processor 120 or 500
  • the expiration date (or end time) of PDU session 1 has arrived (e.g., 'Yes' in operation 1213), in operation 1211, the PDU Session 1 can be canceled.
  • the processor 500 may switch the data path to PDU session 2 when the validity period of PDU session 1 expires.
  • FIG. 13 is a flowchart 1300 for setting a data path switching point based on packet loss in an electronic device according to various embodiments.
  • at least a portion of FIG. 13 may include detailed descriptions of operations 1105 to 1111 of FIG. 11 .
  • each operation may be performed sequentially, but is not necessarily performed sequentially.
  • the order of each operation may be changed, and at least two operations may be performed in parallel.
  • the electronic device of FIG. 13 may be the electronic device 101 of FIG. 1, 2, 3, 4, or 5.
  • an electronic device e.g., processor 120 of FIG. 1 or processor 500 of FIG. 5 changes PDU session 1 and PDU session 1 based on a change in a PDU session set to SSC mode 3. If session 2 is allocated (e.g., operation 1103 in FIG. 11), packet loss related to PDU session 1 can be checked in operation 1301. According to one embodiment, the processor 500 may check the loss rate of data (packets) transmitted and/or received based on PDU session 1 for a specified time.
  • the electronic device may determine whether packet loss associated with PDU session 1 satisfies a specified transition condition in operation 1303. According to one embodiment, the processor 500 may determine that a specified transition condition is satisfied when packet loss associated with PDU Session 1 exceeds a specified reference loss while the validity timeout of PDU Session 1 exists. According to one embodiment, the processor 500 may determine that a specified transition condition is not satisfied if the packet loss associated with PDU Session 1 is less than or equal to a specified reference loss while the validity timeout of PDU Session 1 exists.
  • the state in which the validity time limit of PDU session 1 exists may include a state before the validity time limit of PDU session 1 expires.
  • the electronic device e.g., processor 120 or 500
  • the processor 500 determines that if the packet loss associated with PDU Session 1 satisfies a specified transition condition while the validity timeout of PDU Session 1 exists, the quality of data communication of PDU Session 1 is relatively degraded. It can be judged that The processor 500 may switch the data path to PDU session 2 while the validity time limit of PDU session 1 exists.
  • the processor 500 may control the communication circuit 510 to perform data communication through PDU session 2 based on switching of the data path.
  • the electronic device may update the expiration time (or release time) of PDU session 1 in operation 1307.
  • the processor 500 may decrease the validity time of PDU session 1 based on a specified interval.
  • the electronic device may check in operation 1309 whether the updated expiration date (or end time) of PDU session 1 has arrived.
  • the electronic device e.g., processor 120 or 500 performs operation 1307.
  • the validity period (or release time) of PDU session 1 can be updated.
  • the processor 500 may repeatedly update the validity time of PDU session 1. For example, updating the validity time of PDU session 1 may be performed based on a designated period.
  • the electronic device in operation 1311, when the updated expiration date (or end time) of PDU session 1 has arrived (e.g., 'Yes' in operation 1309) , PDU session 1 can be released.
  • releasing PDU Session 1 may include a series of operations that close the socket of the application program associated with PDU Session 1.
  • the electronic device e.g., processor 120 or 500
  • a specified transition condition e.g., 'No' in operation 1303
  • processor 500 may maintain the data path to PDU Session 1 if packet loss associated with PDU Session 1 does not meet a specified transition condition while the validity timeout of PDU Session 1 exists.
  • the electronic device e.g., processor 120 or 500
  • the electronic device in operation 1301, if the expiration date (or end time) of PDU session 1 has not arrived (e.g., 'No' in operation 1313), You can check packet loss related to PDU session 1.
  • the processor 500 determines that packet loss associated with PDU Session 1 satisfies a specified transition condition based on a specified period while the data path of PDU Session 1 is maintained while the validity timeout of PDU Session 1 exists. You can check whether the data path can be switched to PDU session 2.
  • the processor 500 may switch the data path to PDU session 2 if the number of times it checks whether the data path is switched while the validity time limit of PDU session 1 exists exceeds a specified reference number.
  • the processor 500 routes the data to PDU Session 2. can be switched.
  • the electronic device e.g., processor 120 or 500
  • the expiration date (or end time) of PDU session 1 has arrived (e.g., 'Yes' in operation 1313), in operation 1311, the PDU Session 1 can be canceled.
  • the processor 500 may switch the data path to PDU session 2 when the validity period of PDU session 1 expires.
  • Figure 14 is an example of changing a data path using single homing in an electronic device according to various embodiments.
  • the electronic device 101 performs data communication with the server through UPF 1 450 based on PDU (protocol data unit) session 1 and IP address 1 set to SSC mode 3. May (action 1411).
  • the electronic device 101 may establish PDU session 1 with UPF 1 450 based on IP address 1.
  • the electronic device 101 may perform data communication with the server through UPF 1 (450) (operation 1411). For example, when the electronic device 101 is connected and routed to PDU session 1, the electronic device 101 may use IP address 1 as the source IP for IP communication.
  • the SMF (430) is executed in the electronic device (101), the location of the electronic device (101), the load (load) of the UPF 1 (450), connection information of the base station (e.g., RAN (410)), or the electronic device (101). Relocation of the UPF may be determined based on at least one of the requirements of the application program (operation 1413).
  • the SMF 430 can use a relatively short data transmission path when the PDU session with the electronic device 101 changes UPF 1 450 to another UPF (e.g., UPF 2 455). If it is determined that there is a benefit to the electronic device 101 and/or the network operator by reducing the data arrival time, it may be decided to change the UPF.
  • the SMF 430 may transmit information related to the change of the PDU session (e.g., PDU session modification command) to the electronic device 101 (operation 1415).
  • information related to a change in a PDU session includes the valid lifetime of IP address 1 (or IP prefix 1) of PDU session 1, IP address 2 (or IP prefix 2) of PDU session 2 or PDU session 2, and May contain relevant information.
  • the electronic device 101 may perform establishment of PDU session 2 based on receiving information related to a change in the PDU session from the network (operation 1417). According to one embodiment, the electronic device 101 may transmit a response message (eg, PDU session modification complete) to the network for information related to the change of the PDU session. The electronic device 101 may transmit information related to a PDU session change request (eg, PDU session modification request) to the network to establish a new PDU session. The electronic device 101 may determine that establishment of PDU session 2 set to SSC mode 3 has been completed based on a response signal to information related to the PDU session change request received from the network.
  • a response message eg, PDU session modification complete
  • PDU session change request eg, PDU session modification request
  • the electronic device 101 may switch the data path to PDU session 2 (operation 1419).
  • the electronic device 101 may check quality of experience (QoE) related to PDU session 1 and/or PDU session 2 established based on a change in the PDU session set to SSC mode 3.
  • QoE quality of experience
  • the electronic device 101 may switch the data path to PDU session 2.
  • QoE may include at least one of round trip time (RTT), path loss, or throughput when communicating using PDU session 1 and/or PDU session 2.
  • PDU Session 1 and/or PDU Session 2 when the electronic device 101 determines that the QoE associated with PDU Session 1 and/or PDU Session 2 does not satisfy the specified transition condition, PDU Session 1 and/or PDU Session 2 based on the specified cycle. You can check whether the specified transition conditions are satisfied by checking the QoE related to.
  • the electronic device 101 may switch the data path to PDU session 2 if the number of times it checks whether the data path is switched while the validity time limit of PDU session 1 exists exceeds a specified reference number.
  • the electronic device 101 if there is no transmission and reception of data based on PDU session 1 for a specified first reference time while the validity time limit of PDU session 1 exists, the electronic device 101 transmits data to PDU session 2. You can change the route.
  • the electronic device 101 may release PDU session 1 when the validity time limit of PDU session 1 expires (operation 1421).
  • the electronic device 101 may update the validity time of PDU session 1 based on the data path switching to PDU session 2.
  • the processor 500 may decrease the validity time of PDU session 1 based on a specified interval. For example, if the validity time of PDU session 1 exists, the processor 500 may repeatedly update the validity time of PDU session 1.
  • the electronic device 101 may release PDU session 1 when the validity period of updated PDU session 1 expires.
  • FIG. 15 is a flowchart 1500 for changing a data path in an electronic device according to various embodiments.
  • each operation may be performed sequentially, but is not necessarily performed sequentially.
  • the order of each operation may be changed, and at least two operations may be performed in parallel.
  • the electronic device of FIG. 15 may be the electronic device 101 of FIG. 1, 2, 3, 4, or 5.
  • an electronic device e.g., processor 120 of FIG. 1 or processor 500 of FIG. 5
  • a protocol data unit (PDU) session set to SSC mode 3 and Data communication can be performed based on IP address 1 assigned from the network.
  • the processor 500 communicates to transmit a message related to a connection request to a server (or content server) to the network (e.g., RAN 410 in FIG. 4) based on the occurrence of an event related to data communication.
  • the circuit 510 can be controlled.
  • the processor 500 may control the communication circuit 510 to establish a PDU session for data communication based on control information received from the network in response to transmission of a message related to a connection request.
  • the electronic device may check IP address 2 newly assigned to the PDU session by the network based on a change in the UPF associated with the PDU session.
  • the processor 500 receives information related to IP prefix 1 and IP prefix 2 with a priority time limit set to a first value (e.g., '0') from the network through the communication circuit 510. It can be determined that the UPF has changed based on the receipt of information related to .
  • the processor 500 may generate IP address 2 of the PDU session based on IP prefix 2 received from the network.
  • the electronic device determines the QoE when performing communication using IP Address 1 and/or IP Address 2 of the PDU session set to SSC mode 3. (quality of experience) can be checked.
  • QoE may include at least one of round trip time (RTT), path loss, or throughput.
  • the processor 500 transmits a TCP (transmission control protocol) synchronization signal based on IP address 1 to a server related to an application program from the time it receives a response signal (ACK) of the TCP synchronization signal from the server. The elapsed time can be judged as RTT when using IP address 1.
  • TCP transmission control protocol
  • the processor 500 uses IP address 2 by measuring the elapsed time from the time it transmits the TCP synchronization signal based on IP address 2 to the time it receives the response signal (ACK) of the TCP synchronization signal from the server. It can be judged by the RTT of the case. According to one embodiment, the processor 500 transmits an initial packet related to QUIC based on IP address 1 to a server related to an application program from the time of receiving the acknowledgment signal (ACK) of the initial packet. The time can be judged as RTT when using IP address 1. The processor 500 uses IP address 2 as the time from transmitting the initial packet related to QUIC based on IP address 2 to receiving the acknowledgment signal (ACK) of the initial packet to the server related to the application program.
  • the processor 500 uses IP address 1 to calculate the time from transmitting an ICMP ping request signal to receiving a ping response signal as RTT when using IP address 1. It can be judged as follows.
  • the processor 500 may determine the time from transmitting an ICMP ping request signal using IP address 2 to receiving a ping response signal as RTT when using IP address 2.
  • the RTT when using IP Address 1 and/or IP Address 2 is a combination of at least one of RTT based on a TCP synchronization signal, RTT based on an initial packet associated with QUIC, or RTT based on a ping request signal. It may be decided.
  • RTT uses IP address 1 and/or IP address 2 based on the foreground application program among the application programs running on the electronic device 101. RTT may be included in this case.
  • the RTT when using IP address 1 and/or IP address 2 includes the average of the RTT when using IP address 1 and/or IP address 2 of the application programs running on the electronic device 101. can do.
  • the processor 500 may detect (or measure) the RTT when using IP address 1 through a server related to an application program running on the electronic device 101.
  • the processor 500 may check the server (or the IP address of the server) related to the application program to access through IP address 2 through DNS dictionary analysis based on the allocation of IP address 2 (or IP prefix 2).
  • the processor 500 may detect (or measure) the RTT when using IP address 2 through a server related to an application program for connection through IP address 2.
  • the server associated with the application program for connection through IP address 2 may be the same as or different from the server associated with the application program for connection through IP address 1.
  • the electronic device determines in operation 1507 whether the QoE when performing communication using IP Address 1 and/or IP Address 2 satisfies specified transition conditions. You can. According to one embodiment, if the expiration date of IP address 1 of the PDU session is not set, the processor 500 sets the IP address based on QoE when communication is performed using IP address 1 and/or IP address 2. You can optionally use the data path with IP address 1 or IP address 2. For example, the state that the validity period of IP address 1 of the PDU session is not set can be confirmed through a PCO message received from the network.
  • the state where the validity timeout of IP address 1 of the PDU session is not set is checked based on the case where the validity timeout of IP address 1 of the PDU session received from the network has a specified value (e.g. '-1'). It can be.
  • the processor 500 determines whether a specified transition condition is satisfied based on the RTT when using IP address 2 and the RTT when using IP address 1 while the validity period of IP address 1 exists.
  • a state that satisfies a specified transition condition may include a state in which the difference between the RTT when using IP address 2 and the RTT when using IP address 1 is less than or equal to a specified first reference value.
  • a state in which a specified transition condition is not satisfied may include a state in which the difference between the RTT when using IP address 2 and the RTT when using IP address 1 exceeds a specified first reference value.
  • a state in which the validity time limit of IP address 1 of the PDU session exists may include a state before the validity time limit of IP address 1 of the PDU session expires.
  • the processor 500 may determine whether a specified transition condition is satisfied based on packet loss when using IP address 1 while the validity period of IP address 1 exists.
  • a state that satisfies a specified transition condition may include a state in which packet loss when using IP address 1 exceeds a specified reference loss.
  • a state in which a specified transition condition is not satisfied may include a state in which packet loss when using IP address 1 is less than or equal to a specified reference loss.
  • an electronic device may perform communication using IP address 1 and/or IP address 2 if QoE satisfies a specified transition condition (e.g., operation ('Yes' in 1507), in operation 1509, data communication may be performed based on IP address 2 of the PDU session.
  • the processor 500 determines that when QoE when performing communication using IP address 1 and/or IP address 2 satisfies a specified transition condition, the quality of data communication of IP address 2 is changed to IP address 2. It can be judged that it is relatively better than 1, or that the quality of data communication between IP address 1 and IP address 2 is similar.
  • the processor 500 switches the data path to IP address 2 of the PDU session and performs data communication based on IP address 2 of the PDU session. (510) can be controlled.
  • the processor 500 may control the communication circuit 510 to perform data communication through the data path of IP address 2 of the PDU session.
  • an electronic device may switch if the QoE when performing communication using IP Address 1 and/or IP Address 2 does not satisfy a specified transition condition (e.g., 'No' in operation 1507), in operation 1511, data communication may be performed based on IP address 1 of the PDU session.
  • the processor 500 determines that if the QoE when performing communication using IP address 1 and/or IP address 2 does not satisfy the specified transition condition, the quality of data communication of IP address 1 is changed to IP address 1. It can be judged to be relatively better than Address 2.
  • the processor 500 may control the communication circuit 510 to perform data communication through the data path of IP address 1 of the PDU session. For example, if the data path is set to IP address 1 of the PDU session, the processor 500 switches the data path to IP address 1 of the PDU session and switches the communication circuit to perform data communication based on IP address 1 of the PDU session. (510) can be controlled.
  • the electronic device may check whether release time information for IP address 1 or IP address 2 is received from the network.
  • the processor 500 receives a router advertisement (RA) message including release point information of IP address 1 or IP address 2 from the network. You can check if it works.
  • the release timing information for IP address 1 or IP address 2 sets the priority time limit of a specific IP address (or IP prefix) (e.g., IP address 1 or IP address 2) to a first value (e.g., '0'). and may include information in which the effective time limit is set to a second value that is different from the first value.
  • the electronic device e.g., processor 120 or 500 performs operation 1505. In, you can check the QoE when communication is performed using IP address 1 and/or IP address 2 of the PDU session.
  • the processor 500 may determine that IP address 1 or IP address 2 of the PDU session can be selectively used. there is. The processor 500 may check the QoE when communication is performed using IP address 1 and/or IP address 2 of the PDU session to select IP address 1 or IP address 2 of the PDU session.
  • the electronic device e.g., processor 120 or 500
  • receives release time information of IP address 1 or IP address 2 from the network e.g., 'Yes' in operation 1513
  • the release time of a specific IP address e.g. IP address 1 or IP address 2 may be set based on the expiration time of the validity period of the specific IP address.
  • a specific IP address e.g., IP address 1 or IP address 2
  • an electronic device e.g., processor 120 or 500
  • a specific IP address (e.g., IP address 1 or IP address 2) received from the network of an electronic device (e.g., processor 120 or 500) has arrived (e.g., 'in operation 1515), Yes')
  • a specific IP address (e.g., IP Address 1 or IP Address 2) may be released.
  • the processor 500 releases a specific IP address (e.g., IP address 1 or IP address 2) based on the release of another IP address (e.g., IP address 2 or IP address 1) that is different from the specific IP address.
  • a data path can be used.
  • the electronic device 101 selects PDU session 1 or PDU session 1 based on the QoE associated with PDU session 1 and/or PDU session 2.
  • the data path of PDU session 2 can optionally be used.
  • the processor 500 may check that the expiration date of IP address 1 of PDU session 1 is not set through a PCO message received from the network.
  • the processor 500 sets the validity time limit of IP address 1 of PDU session 1 when the validity time limit of IP address 1 of PDU session 1 received from the network has a specified value (e.g., '-1'). It can be determined that this is not set.
  • a method of operating an electronic device includes performing data communication through a PDU session and IP address 1.
  • a method of operating an electronic device may include checking IP address 2 of a PDU session related to a change in the data path.
  • a method of operating an electronic device includes checking the RTT when using IP address 1 and the RTT when using IP address 2 while IP address 1 and IP address 2 of the PDU session are assigned. may include.
  • a method of operating an electronic device includes determining an IP address based on a comparison result between the RTT when using IP address 1 and the RTT when using IP address 2 before the expiration of the validity period of IP address 1. 2 may include an operation to change the data path. According to one embodiment, a method of operating an electronic device may include releasing IP address 1 based on a change in the data path to IP address 2.
  • the operation of checking the RTT is performed when network and SSC (session and service continuity) mode 3 is set and IP address 1 is used while IP address 1 and IP address 2 of the PDU session are assigned. It may include an operation to check the RTT of and the RTT when using IP address 2.
  • the operation of performing data communication includes transmitting a message related to a connection request to the network and SSC mode 3 based on information related to SSC mode 3 included in information related to PDU establishment acceptance received from the network. It may include an operation of establishing a PDU session set to SSC mode 3, and an operation of performing data communication through a PDU session set to SSC mode 3.
  • the operation of checking the RTT includes RTT when using IP address 1 and RTT when using IP address 2 through a server related to a reference application program among a plurality of application programs running on the electronic device. It may include an operation to check the RTT.
  • the operation of checking the RTT includes RTT when using IP address 1 and RTT when using IP address 2 through at least one server associated with each of a plurality of application programs running on the electronic device. It may include an operation to check the RTT.
  • RTT when using at least one of IP address 1 or IP address 2 transmits a TCP synchronization signal based on IP address 1 or IP address 2 to a server associated with an application program running on the electronic device.
  • the elapsed time from one point in time to the point in time when the acknowledgment signal (ACK) of the TCP synchronization signal is received, and the initial packet associated with QUIC based on IP address 1 or IP address 2 to the server associated with the application program running on the electronic device.
  • the elapsed time from the point of transmitting the initial packet's response signal (ACK) to the point of receiving the response signal (ACK) of the initial packet, or the elapsed time from the point of transmitting the ICMP ping request signal to the point of receiving the ping response signal. may include.
  • the operation of confirming the RTT includes a server associated with an application program to connect through IP address 2 through domain name system (DNS) pre-resolving based on confirmation of IP address 2.
  • DNS domain name system
  • An operation may include checking the RTT when using IP address 2 through a server associated with an application program for connection through IP address 2.
  • the operation of switching the data path to IP address 2 is the difference between the RTT when using IP address 2 and the RTT when using IP address 1 before the validity period of IP address 1 expires. If is less than or equal to a specified reference value, an operation of switching the data path to IP address 2 may be included.
  • a method of operating an electronic device includes selecting a data path for IP address 1 when the difference between the RTT when using IP address 2 and the RTT when using IP address 1 exceeds a specified reference value. It may include maintenance actions.
  • a method of operating an electronic device includes repeatedly using IP address 1 based on a designated cycle when the data path of IP address 1 is maintained before the expiration of the validity period of IP address 1.
  • releasing IP Address 1 comprises reducing the validity period of IP Address 1 based on a change in data path to IP Address 2, and expiration of the reduced validity period of IP Address 1. This may include an operation to release IP address 1.
  • a method of operating an electronic device includes performing data communication through PDU session 1 and IP address 1. Can include actions.
  • a method of operating an electronic device may include checking PDU session 2 and IP address 2 based on a change in the PDU session.
  • a method of operating an electronic device may include checking the RTT related to PDU session 1 and the RTT related to PDU session 2 while PDU session 1 and PDU session 2 are allocated.
  • a method of operating an electronic device changes the data path to PDU session 2 based on a comparison result of the RTT associated with PDU session 1 and the RTT associated with PDU session 2 before the validity period of PDU session 1 expires. It may include actions such as: According to one embodiment, a method of operating an electronic device may include releasing PDU session 1 based on a change in the data path to PDU session 2.

Landscapes

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

Abstract

본 발명의 다양한 실시예는 전자 장치에서 UPF의 변경을 위한 장치 및 방법에 관한 것이다. 전자 장치는, 통신 회로, 및 프로세서를 포함하며, 프로세서는, PDU 세션 및 IP 주소 1을 통해 데이터 통신을 수행하고, UPF의 변경에 기반하여 상기 PDU 세션의 IP 주소 2를 확인하고, 상기 IP 주소 1을 사용하는 경우 RTT와 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하고, 상기 IP 주소 1의 유효 시한이 만료되기 이전에 상기 IP 주소 1을 사용하는 경우의 RTT와 상기 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 상기 IP 주소 2로 데이터 경로를 변경하고, 상기 IP 주소 2로 데이터 경로의 변경에 기반하여 상기 IP 주소 1을 해제할 수 있다. 다른 실시예도 가능할 수 있다.

Description

무선통신시스템에서 데이터 통신을 위한 전자 장치 및 그의 동작 방법
본 발명의 다양한 실시예는 무선통신시스템에서 데이터 통신을 위한 장치 및 방법에 관한 것이다.
4G 통신 시스템 상용화 이후 증가 추세에 있는 무선 데이터 트래픽 수요를 충족시키기 위해, 개선된 5G 통신 시스템을 개발하기 위한 노력이 이루어지고 있다. 이러한 이유로, 5G 통신 시스템은 4G 네트워크 이후 (Beyond 4G Network) 통신 시스템 또는 LTE 시스템 이후 (Post LTE) 통신 시스템이라 불리어 지고 있다. 상대적으로 높은 데이터 전송률을 달성하기 위해, 5G 통신 시스템은 6기가(6GHz) 이하의 대역(예: 약 1.8GHz 대역 또는 약 3.5GHz 대역) 또는 상대적으로 더 높은 주파수 대역 (예: 약 28GHz 대역 또는 약 39GHz 대역)에서의 구현이 고려되고 있다. 5G 통신 시스템은 전파의 경로손실 완화 및 전파의 전달 거리를 증가시키기 위해, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO), 전차원 다중입출력(full dimensional MIMO: FD-MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 및 대규모 안테나 (large scale antenna) 기술들이 논의되고 있다.
5G 통신 시스템의 코어 네트워크(core network)는 전자 장치의 어플리케이션 프로그램 또는 서비스(또는 기능)의 다양한 연속성에 관한 요구조건을 지원하기 위해 SSC (session and service continuity) 모드를 제공할 수 있다. 코어 네트워크는 PDU(protocol data unit) 세션 별로 별도의 SSC 모드를 적용할 수 있다. SSC 모드는 3가지 모드들을 포함할 수 있다. 예를 들어, SSC 모드 1은 전자 장치의 PDU 세션이 유지되는 동안 외부 데이터 네트워크(DN: data network)와의 통신을 위한 UPF(예: anchor UPF)를 변경하지 않는 모드를 포함할 수 있다. 예를 들어, SSC 모드 2는 외부 데이터 네트워크(DN)와의 통신을 위한 UPF(예: anchor UPF)의 변경(relocation)을 허용하는 모드로, UPF 변경 시, 기존 UPF와의 연결을 끊고, 새로운 UPF와의 연결을 설정할 수 있다(break-before-make 방식). 예를 들어, SSC 모드 3은 외부 데이터 네트워크(DN)와의 통신을 위한 UPF(예: anchor UPF)의 변경을 허용하는 모드로, UPF 변경 시, 새로운 UPF와의 연결을 설정하는 동안에 기존 UPF와의 연결을 유지할 수 있다(make-before-break 방식).
5G 통신 시스템의 전자 장치는 SSC 모드 3을 사용하는 경우, 동시에 복수의 UPF들을 통해 데이터의 전송이 가능할 수 있다. 전자 장치는 기존 UPF 및 새로운 UPF와의 연결이 설정된 상태에서 기존 UPF 및 새로운 UPF와의 연결을 제어하기 위한 방안을 필요로 할 수 있다.
본 발명의 다양한 실시예는 SSC 모드 3으로 설정된 전자 장치에서 어플리케이션 프로그램과 관련된 데이터 통신의 QoE(quality of experience)를 만족시키기 위한 위한 장치 및 방법에 대해 개시한다.
본 문서에서 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
다양한 실시예에 따르면, 전자 장치는, 통신 회로 및 통신 회로와 작동적으로 연결된 프로세서를 포함할 수 있다. 일 실시예에 따르면, 프로세서는 PDU(protocol data unit) 세션 및 IP(internet protocol) 주소 1을 통해 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서는 데이터 경로의 변경과 관련된 PDU 세션의 IP 주소 2를 확인할 수 있다. 일 실시예에 따르면, 프로세서는 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 IP 주소 1을 사용하는 경우의 RTT(round trip time)와 IP 주소 2를 사용하는 경우의 RTT를 확인할 수 있다. 일 실시예에 따르면, 프로세서는 IP 주소 1의 유효 시한(valid lifetime)이 만료되기 이전에 IP 주소 1을 사용하는 경우의 RTT와 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 IP 주소 2로 데이터 경로를 변경할 수 있다. 일 실시예에 따르면, 프로세서는 IP 주소 2로 데이터 경로의 변경에 기반하여 IP 주소 1을 해제할 수 있다.
다양한 실시예에 따르면, 전자 장치의 동작 방법은 PDU 세션 및 IP 주소 1을 통해 데이터 통신을 수행하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 데이터 경로의 변경과 관련된 PDU 세션의 IP 주소 2를 확인하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 IP 주소 1을 사용하는 경우의 RTT와 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 IP 주소 1의 유효 시한이 만료되기 이전에 IP 주소 1을 사용하는 경우의 RTT와 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 IP 주소 2로 데이터 경로를 변경하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 IP 주소 2로 데이터 경로의 변경에 기반하여 IP 주소 1을 해제하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 하나 이상의 프로그램들을 저장하는 비일시적인 컴퓨터 판독 가능 저장 매체(또는 컴퓨터 프로그램 제품(product))가 기술될 수 있다. 일 실시예에 따르면, 하나 이상의 프로그램들은, 전자 장치의 프로세서에 의해 실행될 시, PDU 세션 및 IP 주소 1을 통해 데이터 통신을 수행하는 동작과 UPF의 변경에 기반하여 상기 PDU 세션의 IP 주소 2를 확인하는 동작과 상기 PDU 세션의 상기 IP 주소 1 및 상기 IP 주소 2가 할당된 상태에서 상기 IP 주소 1을 사용하는 경우의 RTT와 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작과 상기 IP 주소 1의 유효 시한이 만료되기 이전에 상기 IP 주소 1을 사용하는 경우의 RTT와 상기 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 상기 IP 주소 2로 데이터 경로를 변경하는 동작, 및 상기 IP 주소 2로 데이터 경로의 변경에 기반하여 상기 IP 주소 1을 해제하는 동작을 포함하는 명령어를 포함할 수 있다.
본 발명의 다양한 실시예에 따르면, 전자 장치에서 SSC(session and service continuity) 모드 3으로 설정된 PDU 세션(protocol data unit)에 대해서 기존 UPF(user plane function) 및 새로운 UPF와 연결이 설정된 상태에서 기존 UPF 및 새로운 UPF와 관련된 QoE(quality of experience)(예: RTT(round trip time), 경로 손실(path loss) 및/또는 처리율(throughput))에 기반하여 새로운 UPF로의 전환 시점 및/또는 기존 UPF와의 연결 해제 시점을 설정함으로써, 사용자에게 보다 나은 QoE를 제공할 수 있다.
본 발명의 다양한 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명의 다양한 실시예들이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 다양한 실시예에 따른, 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 다양한 실시예에 따른, 레거시 네트워크 통신 및 5G 네트워크 통신을 지원하기 위한 전자 장치의 블록도이다.
도 3은 다양한 실시예에 따른 4G 통신 및/또는 5G 통신의 네트워크의 프로토콜 스택 구조를 도시한 도면이다.
도 4는 다양한 실시예에 따른 5G 네트워크의 구조를 도시한 도면이다.
도 5는 다양한 실시예에 따른 데이터 통신을 제공하는 전자 장치의 블록도이다.
도 6은 다양한 실시예에 따른 프로그램을 예시하는 블록도이다.
도 7은 다양한 실시예에 따른 전자 장치에서 멀티 호밍을 이용하여 데이터 경로의 변경을 위한 흐름도이다.
도 8은 다양한 실시예에 따른 전자 장치에서 RTT에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도이다.
도 9는 다양한 실시예에 따른 전자 장치에서 패킷 손실에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도이다.
도 10은 다양한 실시예에 따른 전자 장치에서 멀티 호밍을 이용하여 데이터 경로의 변경을 위한 일예이다.
도 11은 다양한 실시예에 따른 전자 장치에서 싱글 호밍을 이용하여 데이터 경로의 변경을 위한 흐름도이다.
도 12는 다양한 실시예에 따른 전자 장치에서 RTT에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도이다.
도 13은 다양한 실시예에 따른 전자 장치에서 패킷 손실에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도이다.
도 14는 다양한 실시예에 따른 전자 장치에서 싱글 호밍을 이용하여 데이터 경로의 변경을 위한 일예이다.
도 15는 다양한 실시예에 따른 전자 장치에서 데이터 경로의 변경을 위한 흐름도이다.
이하 일 실시예들이 첨부된 도면을 참고하여 상세히 설명된다.
도 1은, 일 실시예에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일 실시예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다.
무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
일 실시예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일 실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원하는 RFIC, 및 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 일 실시예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.
본 문서에 개시된 일 실시예에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 실시예 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서의 실시예에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 실시예는 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시예에 따르면, 본 문서에 개시된 실시예에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
일 실시예에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 일 실시예에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 일 실시예에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
도 2는 일 실시예에 따른, 레거시 네트워크 통신 및 5G 네트워크 통신을 지원하기 위한 전자 장치(101)의 블록도(200)이다.
도 2를 참조하면, 일 실시예에 따르면, 전자 장치(101)는 제 1 커뮤니케이션 프로세서(212), 제 2 커뮤니케이션 프로세서(214), 제 1 radio frequency integrated circuit(RFIC)(222), 제 2 RFIC(224), 제 3 RFIC(226), 제 4 RFIC(228), 제 1 radio frequency front end(RFFE)(232), 제 2 RFFE(234), 제 1 안테나 모듈(242), 제 2 안테나 모듈(244), 및 안테나(248)를 포함할 수 있다. 전자 장치(101)는 프로세서(120) 및 메모리(130)를 더 포함할 수 있다. 네트워크(199)는 제 1 네트워크(292)와 제 2 네트워크(294)를 포함할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 도 1에 기재된 부품들 중 적어도 하나의 부품을 더 포함할 수 있고, 네트워크(199)는 적어도 하나의 다른 네트워크를 더 포함할 수 있다. 일 실시예에 따르면, 제 1 커뮤니케이션 프로세서(212), 제 2 커뮤니케이션 프로세서(214), 제 1 RFIC(222), 제 2 RFIC(224), 제 4 RFIC(228), 제 1 RFFE(232), 및 제 2 RFFE(234)는 무선 통신 모듈(192)의 적어도 일부를 형성할 수 있다. 일 실시예에 따르면, 제 4 RFIC(228)는 생략되거나, 제 3 RFIC(226)의 일부로서 포함될 수 있다.
제 1 커뮤니케이션 프로세서(212)는 제 1 네트워크(292)와의 무선 통신에 사용될 대역의 통신 채널의 수립, 및 수립된 통신 채널을 통한 레거시 네트워크 통신을 지원할 수 있다. 일 실시예에 따르면, 제 1 네트워크는 2세대(2G), 3G, 4G, 또는 long term evolution(LTE) 네트워크를 포함하는 레거시 네트워크일 수 있다. 제 2 커뮤니케이션 프로세서(214)는 제 2 네트워크(294)와의 무선 통신에 사용될 대역 중 지정된 대역(예: 약 6GHz ~ 약 60GHz)에 대응하는 통신 채널의 수립, 및 수립된 통신 채널을 통한 5G 네트워크 통신을 지원할 수 있다. 일 실시예에 따르면, 제 2 네트워크(294)는 3GPP에서 정의하는 5G 네트워크(예: NR(new radio))일 수 있다. 추가적으로, 일 실시예에 따르면, 제 1 커뮤니케이션 프로세서(212) 또는 제 2 커뮤니케이션 프로세서(214)는 제 2 네트워크(294)와의 무선 통신에 사용될 대역 중 다른 지정된 대역(예: 약 6GHz 이하)에 대응하는 통신 채널의 수립, 및 수립된 통신 채널을 통한 5G 네트워크 통신을 지원할 수 있다. 일 실시예에 따르면, 제 1 커뮤니케이션 프로세서(212)와 제 2 커뮤니케이션 프로세서(214)는 단일(single) 칩 또는 단일 패키지 내에 구현될 수 있다. 일 실시예에 따르면, 제 1 커뮤니케이션 프로세서(212) 또는 제 2 커뮤니케이션 프로세서(214)는 프로세서(120), 보조 프로세서(123), 또는 통신 모듈(190)과 단일 칩 또는 단일 패키지 내에 형성될 수 있다.
일 실시예에 따르면, 제 1 커뮤니케이션 프로세서(212)는 제 2 커뮤니케이션 프로세서(214)와 데이터를 송수신할 수 있다. 예를 들어, 제 2 네트워크(294)를 통하여 송신되기로 분류되었던 데이터가, 제 1 네트워크(292)를 통하여 송신되는 것으로 변경될 수 있다.
이 경우, 제 1 커뮤니케이션 프로세서(212)는 제 2 커뮤니케이션 프로세서(214)로부터 송신 데이터를 전달받을 수 있다. 예를 들어, 제 1 커뮤니케이션 프로세서(212)는 제 2 커뮤니케이션 프로세서(214)와 프로세서간 인터페이스를 통하여 데이터를 송수신할 수 있다. 일예로, 프로세서간 인터페이스는 UART(universal asynchronous receiver/transmitter)(예: HS-UART(high speed-UART)) 또는 PCIe(peripheral component interconnect bus express) 인터페이스로 구현될 수 있으나, 그 종류에는 제한이 없다. 예를 들어, 제 1 커뮤니케이션 프로세서(212)와 제 2 커뮤니케이션 프로세서(214)는 공유 메모리(shared memory)를 이용하여 컨트롤 정보와 패킷 데이터 정보를 교환할 수 있다. 일예로, 제 1 커뮤니케이션 프로세서(212)는, 제 2 커뮤니케이션 프로세서(214)와, 센싱 정보, 출력 세기에 대한 정보, RB(resource block) 할당 정보와 같은 다양한 정보를 송수신할 수 있다.
구현에 따라, 제 1 커뮤니케이션 프로세서(212)는 제 2 커뮤니케이션 프로세서(214)와 직접 연결되지 않을 수도 있다. 이 경우, 제 1 커뮤니케이션 프로세서(212)는 제 2 커뮤니케이션 프로세서(214)와, 프로세서(120)(예: application processor)를 통하여 데이터를 송수신할 수도 있다. 예를 들어, 제 1 커뮤니케이션 프로세서(212) 및 제 2 커뮤니케이션 프로세서(214)는, 프로세서(120)(예: application processor)와 HS-UART 인터페이스 또는 PCIe 인터페이스를 통하여 데이터를 송수신할 수 있으나, 인터페이스의 종류에는 제한이 없다. 예를 들어, 제 1 커뮤니케이션 프로세서(212) 및 제 2 커뮤니케이션 프로세서(214)는, 프로세서(120)(예: application processor)와 공유 메모리(shared memory)를 이용하여 컨트롤 정보와 패킷 데이터 정보를 교환할 수 있다. 일 실시예에 따르면, 제 1 커뮤니케이션 프로세서(212)와 제 2 커뮤니케이션 프로세서(214)는 단일(single) 칩 또는 단일 패키지 내에 구현될 수 있다. 일 실시예에 따르면, 제 1 커뮤니케이션 프로세서(212) 또는 제 2 커뮤니케이션 프로세서(214)는 프로세서(120), 보조 프로세서(123), 또는 통신 모듈(190)과 단일 칩 또는 단일 패키지 내에 형성될 수 있다.
제 1 RFIC(222)는, 송신 시에, 제 1 커뮤니케이션 프로세서(212)에 의해 생성된 기저대역(baseband) 신호를 제 1 네트워크(292)(예: 레거시 네트워크)에 사용되는 약 700MHz 내지 약 3GHz의 라디오 주파수(RF) 신호로 변환할 수 있다. 수신 시에는, RF 신호가 안테나(예: 제 1 안테나 모듈(242))를 통해 제 1 네트워크(292)(예: 레거시 네트워크)로부터 획득되고, RFFE(예: 제 1 RFFE(232))를 통해 전처리(preprocess)될 수 있다. 제 1 RFIC(222)는 전처리된 RF 신호를 제 1 커뮤니케이션 프로세서(212)에 의해 처리될 수 있도록 기저대역 신호로 변환할 수 있다.
제 2 RFIC(224)는, 송신 시에, 제 1 커뮤니케이션 프로세서(212) 또는 제 2 커뮤니케이션 프로세서(214)에 의해 생성된 기저대역 신호를 제 2 네트워크(294)(예: 5G 네트워크)에 사용되는 Sub6 대역(예: 약 6GHz 이하)의 RF 신호(이하, 5G Sub6 RF 신호)로 변환할 수 있다. 수신 시에는, 5G Sub6 RF 신호가 안테나(예: 제 2 안테나 모듈(244))를 통해 제 2 네트워크(294)(예: 5G 네트워크)로부터 획득되고, RFFE(예: 제 2 RFFE(234))를 통해 전처리될 수 있다. 제 2 RFIC(224)는 전처리된 5G Sub6 RF 신호를 제 1 커뮤니케이션 프로세서(212) 또는 제 2 커뮤니케이션 프로세서(214) 중 대응하는 커뮤니케이션 프로세서에 의해 처리될 수 있도록 기저대역 신호로 변환할 수 있다.
제 3 RFIC(226)는 제 2 커뮤니케이션 프로세서(214)에 의해 생성된 기저대역 신호를 제 2 네트워크(294)(예: 5G 네트워크)에서 사용될 5G Above6 대역(예: 약 6GHz ~ 약 60GHz)의 RF 신호(이하, 5G Above6 RF 신호)로 변환할 수 있다. 수신 시에는, 5G Above6 RF 신호가 안테나(예: 안테나(248))를 통해 제 2 네트워크(294)(예: 5G 네트워크)로부터 획득되고 제 3 RFFE(236)를 통해 전처리될 수 있다. 제 3 RFIC(226)는 전처리된 5G Above6 RF 신호를 제 2 커뮤니케이션 프로세서(214)에 의해 처리될 수 있도록 기저대역 신호로 변환할 수 있다. 일 실시예에 따르면, 제 3 RFFE(236)는 제 3 RFIC(226)의 일부로서 형성될 수 있다.
전자 장치(101)는, 일 실시예에 따르면, 제 3 RFIC(226)와 별개로 또는 적어도 그 일부로서, 제 4 RFIC(228)를 포함할 수 있다. 이런 경우, 제 4 RFIC(228)는 제 2 커뮤니케이션 프로세서(214)에 의해 생성된 기저대역 신호를 중간(intermediate) 주파수 대역(예: 약 9GHz ~ 약 11GHz)의 RF 신호(이하, IF 신호)로 변환한 뒤, 상기 IF 신호를 제 3 RFIC(226)로 전달할 수 있다. 제 3 RFIC(226)는 IF 신호를 5G Above6 RF 신호로 변환할 수 있다. 수신 시에, 5G Above6 RF 신호가 안테나(예: 안테나(248))를 통해 제 2 네트워크(294)(예: 5G 네트워크)로부터 수신되고 제 3 RFIC(226)에 의해 IF 신호로 변환될 수 있다. 제 4 RFIC(228)는 IF 신호를 제 2 커뮤니케이션 프로세서(214)가 처리할 수 있도록 기저대역 신호로 변환할 수 있다.
일 실시예에 따르면, 제 1 RFIC(222)와 제 2 RFIC(224)는 단일 칩 또는 단일 패키지의 적어도 일부로 구현될 수 있다. 일 실시예에 따르면, 제 1 RFFE(232)와 제 2 RFFE(234)는 단일 칩 또는 단일 패키지의 적어도 일부로 구현될 수 있다. 일 실시예에 따르면, 제 1 안테나 모듈(242) 또는 제 2 안테나 모듈(244) 중 적어도 하나의 안테나 모듈은 생략되거나 다른 안테나 모듈과 결합되어 대응하는 복수의 대역들의 RF 신호들을 처리할 수 있다.
일 실시예에 따르면, 제 3 RFIC(226)와 안테나(248)는 동일한 서브스트레이트에 배치되어 제 3 안테나 모듈(246)을 형성할 수 있다. 예를 들어, 무선 통신 모듈(192) 또는 프로세서(120)가 제 1 서브스트레이트(예: main PCB)에 배치될 수 있다. 이런 경우, 제 1 서브스트레이트와 별도의 제 2 서브스트레이트(예: sub PCB)의 일부 영역(예: 하면)에 제 3 RFIC(226)가, 다른 일부 영역(예: 상면)에 안테나(248)가 배치되어, 제 3 안테나 모듈(246)이 형성될 수 있다. 제 3 RFIC(226)와 안테나(248)를 동일한 서브스트레이트에 배치함으로써 그 사이의 전송 선로의 길이를 줄이는 것이 가능하다. 이는, 예를 들면, 5G 네트워크 통신에 사용되는 고주파 대역(예: 약 6GHz ~ 약 60GHz)의 신호가 전송 선로에 의해 손실(예: 감쇄)되는 것을 줄일 수 있다. 이로 인해, 전자 장치(101)는 제 2 네트워크(294)(예: 5G 네트워크)와의 통신의 품질 또는 속도를 향상시킬 수 있다.
일 실시예에 따르면, 안테나(248)는 빔포밍에 사용될 수 있는 복수 개의 안테나 엘리먼트들을 포함하는 안테나 어레이로 형성될 수 있다. 이런 경우, 제 3 RFIC(226)는, 예를 들면, 제 3 RFFE(236)의 일부로서, 복수 개의 안테나 엘리먼트들에 대응하는 복수 개의 위상 변환기(phase shifter)(238)들을 포함할 수 있다. 송신 시에, 복수 개의 위상 변환기(238)들 각각은 대응하는 안테나 엘리먼트를 통해 전자 장치(101)의 외부(예: 5G 네트워크의 베이스 스테이션)로 송신될 5G Above6 RF 신호의 위상을 변환할 수 있다. 수신 시에, 복수 개의 위상 변환기(238)들 각각은 대응하는 안테나 엘리먼트를 통해 외부로부터 수신된 5G Above6 RF 신호의 위상을 동일한 또는 실질적으로 동일한 위상으로 변환할 수 있다. 이것은 전자 장치(101)와 외부 간의 빔포밍을 통한 송신 또는 수신을 가능하게 한다.
제 2 네트워크(294)(예: 5G 네트워크)는 제 1 네트워크(292)(예: 레거시 네트워크)와 독립적으로 운영되거나(예: stand-alone(SA)), 연결되어 운영될 수 있다(예: non-stand alone(NSA)). 예를 들면, 5G 네트워크에는 액세스 네트워크(예: 5G radio access network(RAN) 또는 next generation RAN(NG RAN))만 있고, 코어 네트워크(예: next generation core(NGC))는 없을 수 있다. 이런 경우, 전자 장치(101)는 5G 네트워크의 액세스 네트워크에 액세스한 후, 레거시 네트워크의 코어 네트워크(예: evolved packed core(EPC))의 제어 하에 외부 네트워크(예: 인터넷)에 액세스할 수 있다. 레거시 네트워크와 통신을 위한 프로토콜 정보(예: LTE 프로토콜 정보) 또는 5G 네트워크와 통신을 위한 프로토콜 정보(예: new radio(NR) 프로토콜 정보)는 메모리(130)에 저장되어, 다른 부품(예: 프로세서(120), 제 1 커뮤니케이션 프로세서(212), 또는 제 2 커뮤니케이션 프로세서(214))에 의해 액세스될 수 있다.
도 3은 일 실시예에 따른 4G 통신 및/또는 5G 통신의 네트워크(100)의 프로토콜 스택 구조를 도시한 도면이다.
도 3를 참조하는 다양한 실시예에 따르면, 네트워크(100)는, 전자 장치(101), 4G 네트워크(392), 5G 네트워크(394) 및 서버(server)(108)을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는, 인터넷 프로토콜(312), 제 1 프로토콜 스택(314) 및 제 2 프로토콜 스택(316)을 포함할 수 있다. 예를 들어, 전자 장치(101)는 4G 네트워크(392) 및/또는 5G 네트워크(394)를 통하여 서버(108)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 인터넷 프로토콜(312)(예를 들어, TCP(transmission control protocol), UDP(user datagram protocol), IP(internet protocol))을 이용하여 서버(108)와 연관된 인터넷 통신을 수행할 수 있다. 예를 들어, 인터넷 프로토콜(312)은 전자 장치(101)에 포함된 메인 프로세서(예: 도 1의 메인 프로세서(121))에서 실행될 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 제 1 통신 프로토콜 스택(314)을 이용하여 4G 네트워크(392)와 무선 통신할 수 있다. 전자 장치(101)는 제 2 통신 프로토콜 스택(316)을 이용하여 5G 네트워크(394)와 무선 통신할 수 있다. 예를 들어, 제 1 통신 프로토콜 스택(314) 및 제 2 통신 프로토콜 스택(316)은 전자 장치(101)에 포함된 하나 이상의 통신 프로세서(예: 도 1의 무선 통신 모듈(192))에서 실행될 수 있다.
다양한 실시예에 따르면, 서버(108)는 인터넷 프로토콜(322)을 포함할 수 있다. 서버(108)는 4G 네트워크(392) 및/또는 5G 네트워크(394)를 통하여 전자 장치(101)와 인터넷 프로토콜(322)과 관련된 데이터를 송수신할 수 있다. 일 실시예에 따르면, 서버(108)는 4G 네트워크(392) 또는 5G 네트워크(394) 외부에 존재하는 클라우드 컴퓨팅 서버를 포함할 수 있다. 다른 실시예에 따르면, 서버(108)는 4G 네트워크(392) 또는 5G 네트워크(394) 중 적어도 하나의 내부에 위치하는 에지 컴퓨팅 서버(또는, MEC(mobile edge computing) 서버)를 포함할 수 있다.
다양한 실시예에 따르면, 4G 네트워크(392)는 LTE (long term evolution) 기지국(340) 및 EPC(evolved packed core)(342)를 포함할 수 있다. LTE 기지국(340)은 LTE 프로토콜 스택(344)을 포함할 수 있다. EPC(342)는 4G NAS (non-access stratum) 프로토콜(346)을 포함할 수 있다. 4G 네트워크(392)는 LTE 프로토콜 스택(344) 및 4G NAS 프로토콜(346)을 이용하여 전자 장치(101)와 LTE 무선 통신을 수행할 수 있다.
다양한 실시예에 따르면, 5G 네트워크(394)는 NR (new radio) 기지국(350) 및 5GC(5th generation core)(352)를 포함할 수 있다. NR 기지국(350)은 NR 프로토콜 스택(354)을 포함할 수 있다. 5GC(352)는 5G NAS 프로토콜(356)을 포함할 수 있다. 5G 네트워크(394)는 NR 프로토콜 스택(354) 및 5G NAS 프로토콜(356)을 이용하여 전자 장치(101)와 NR 무선 통신을 수행할 수 있다.
다양한 실시예에 따르면, 제 1 프로토콜 스택(314), 제 2 프로토콜 스택(316), LTE 프로토콜 스택(344) 및 NR 프로토콜 스택(354)은 제어 메시지를 송수신하기 위한 제어 평면 프로토콜 및 사용자 데이터를 송수신하기 위한 사용자 평면 프로토콜을 포함할 수 있다. 예를 들어, 제어 메시지는 보안 제어, 베어러(bearer)설정, 인증, 등록 또는 이동성 관리 중 적어도 하나와 관련된 메시지를 포함할 수 있다. 예를 들어, 사용자 데이터는 제어 메시지를 제외한 나머지 데이터를 포함할 수 있다.
다양한 실시예에 따르면, 제어 평면 프로토콜 및 사용자 평면 프로토콜은 PHY(physical), MAC(medium access control), RLC(radio link control) 또는 PDCP(packet data convergence protocol) 레이어들을 포함할 수 있다. 예를 들어, PHY 레이어는 상위 계층(예를 들어, MAC 레이어)으로부터 수신한 데이터를 채널 코딩 및 변조하여 무선 채널로 전송하고, 무선 채널을 통해 수신한 데이터를 복조 및 디코딩하여 상위 계층으로 전달할 수 있다. 제 2 프로토콜 스택(316) 및 NR 프로토콜 스택(354)에 포함된 PHY 레이어는 빔 포밍(beam forming)과 관련된 동작을 더 수행할 수 있다. 예를 들어, MAC 레이어는 데이터를 송수신할 무선 채널에 논리적/물리적으로 매핑하고, 오류 정정을 위한 HARQ(hybrid automatic repeat request)를 수행할 수 있다. 예를 들어, RLC 레이어는 데이터를 접합(concatenation), 분할(segmentation), 또는 재조립(reassembly)하고, 데이터의 순서 확인, 재정렬, 또는 중복 확인을 수행할 수 있다. 예를 들어, PDCP 레이어는 제어 데이터 및 사용자 데이터의 암호화 (ciphering) 및 데이터 무결성 (data integrity)과 관련된 동작을 수행할 수 있다. 제 2 프로토콜 스택(316) 및 NR 프로토콜 스택(354)은 SDAP(service data adaptation protocol)을 더 포함할 수 있다. 예를 들어, SDAP는 사용자 데이터의 QoS(quality of service)에 기반한 무선 베어러할당을 관리할 수 있다.
다양한 실시예에 따르면, 제어 평면 프로토콜 및 사용자 평면 프로토콜은 PHY(physical), MAC(medium access control), RLC(radio link control) 또는 PDCP(packet data convergence protocol) 레이어들을 포함할 수 있다. 예를 들어, PHY 레이어는 상위 계층(예를 들어, MAC 레이어)로부터 수신한 데이터를 채널 코딩 및 변조하여 무선 채널로 전송하고, 무선 채널을 통해 수신한 데이터를 복조 및 디코딩하여 상위 계층으로 전달할 수 있다. 제 2 프로토콜 스택(316) 및 NR 프로토콜 스택(354)에 포함된 PHY 레이어는 빔 포밍(beam forming)과 관련된 동작을 더 수행할 수 있다. 예를 들어, MAC 레이어는 데이터를 송수신할 무선 채널에 논리적/물리적으로 매핑하고, 오류 정정을 위한 HARQ(hybrid automatic repeat request)를 수행할 수 있다. 예를 들어, RLC 레이어는 데이터를 접합(concatenation), 분할(segmentation), 또는 재조립(reassembly)하고, 데이터의 순서 확인, 재정렬, 또는 중복 확인을 수행할 수 있다. 예를 들어, PDCP 레이어는 제어 데이터 및 사용자 데이터의 암호화 (ciphering) 및 데이터 무결성 (data integrity)과 관련된 동작을 수행할 수 있다. 제 2 프로토콜 스택(316) 및 NR 프로토콜 스택(354)은 SDAP(service data adaptation protocol)을 더 포함할 수 있다. 예를 들어, SDAP는 사용자 데이터의 QoS(quality of service)에 기반한 무선 베어러할당을 관리할 수 있다.
다양한 실시예에 따르면, 제어 평면 프로토콜은 RRC(radio resource control) 레이어 및 NAS(non-access stratum) 레이어를 포함할 수 있다. 예를 들어, RRC 레이어는 무선 베어러 설정, 페이징(paging), 또는 이동성 관리와 관련된 제어 데이터를 처리할 수 있다. 예를 들어, NAS는 인증, 등록, 이동성 관리와 관련된 제어 메시지를 처리할 수 있다.
도 4는 다양한 실시예에 따른 5G 네트워크의 구조를 도시한 도면이다.
도 4를 참조하는 다양한 실시예에 따르면, 5G 네트워크(400)는 복수의 NF(network function)들(410 내지 460)을 포함할 수 있다. 하지만, 5G 네트워크(400)는 도 4의 예시에 제한되는 것이 아니며, 도 4에 도시된 NF보다 더 많은 수의 NF를 포함할 수도 있고 또는 더 적은 수의 NF를 포함할 수도 있다.
다양한 실시예에 따르면, (R)AN((radio) access network)(410)는 전자 장치(101)의 무선 자원할당을 수행하는 주체로서, eNode B, Node B, BS(base station), NG-RAN(next generation radio access network), 5G-AN(access network), 무선 접속 유닛, 기지국 제어기, 또는 네트워크 상의 노드 중 적어도 하나일 수 있다. 예를 들어, 전자 장치(101)는 UE(user equipment), NG UE(next generation UE), MS(mobile station), 셀룰러폰, 스마트폰, 컴퓨터, 또는 통신기능을 수행할 수 있는 멀티미디어시스템을 포함할 수 있다. 이하 설명에서 5G 통신 시스템의 네트워크(예: 5G 네트워크)를 일례로서 본 발명의 실시 예를 설명하지만, 유사한 기술적 배경을 갖는 여타의 다른 통신 시스템에도 본 개시의 실시 예가 적용될 수 있다. 또한, 본 발명의 실시 예는 숙련된 기술적 지식을 가진 자의 판단으로써 본 발명의 범위를 크게 벗어나지 아니하는 범위에서 일부 변형을 통해 다른 통신 시스템에도 적용될 수 있다.
다양한 실시예에 따르면, AMF(access and mobility management function)(420)는 전자 장치(101)의 이동성을 관리하는 네트워크 기능일 수 있다.
다양한 실시예에 따르면, SMF(session management function)(430)는 전자 장치(101)에게 제공하는 PDU(protocol data unit) 세션(session)(또는 PDN(packet data network) 연결)을 관리하는 네트워크 기능일 수 있다.
다양한 실시예에 따르면, UPF(user plane function)(450 및/또는 455)는 사용자 데이터(예: PDU)를 DN(data network)(460)으로 전달하는 게이트웨이 역할을 수행하는 기능일 수 있다.
다양한 실시예에 따르면, UPF BP(branching point)(440)는 전자 장치(101)의 PDU 세션과 UPF(450 또는 455)를 연결하는 기능일 수 있다. 일 실시예에 따르면, UPF BP(440)는 전자 장치(101)의 PDU 세션을 UPF 1(450) 또는 UPF 2(455)에 연결할 수 있다.
다양한 실시예에 따르면, DN(data network)(460)은 망 사업자의 서비스나 3rd party 서비스를 이용하기 위해서 전자 장치(101)가 데이터를 송신 및/또는 수신하는 데이터 네트워크일 수 있다.
도 5는 다양한 실시예에 따른 데이터 통신을 제공하는 전자 장치의 블록도이다. 일 실시예에 따르면, 도 5의 전자 장치(101)는 도 1, 도 2, 도 3 또는 도 4의 전자 장치(101)와 적어도 일부 유사하거나, 전자 장치의 다른 실시예들을 더 포함할 수 있다.
도 5를 참조하면 다양한 실시예에 따르면, 전자 장치(101)는 프로세서(500), 통신 회로(510) 및/또는 메모리(520)를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 도 1의 프로세서(120)와 실질적으로 동일하거나, 프로세서(120)에 포함될 수 있다. 통신 회로(510)는 도 1의 무선 통신 모듈(192)과 실질적으로 동일하거나, 무선 통신 모듈(192)에 포함될 수 있다. 메모리(520)는 도 1의 메모리(130)와 실질적으로 동일하거나, 메모리(130)에 포함될 수 있다. 일 실시예에 따르면, 프로세서(500)는 통신 회로(510) 및/또는 메모리(520)와 작동적으로(operatively), 기능적으로(functionally) 및/또는 전기적으로(electrically) 연결될 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 데이터 통신을 위한 PDU(protocol data unit) 세션을 수립하도록 통신 회로(510)를 제어할 수 있다. 일 실시예에 따르면, 프로세서(500)는 데이터 통신과 관련된 이벤트의 발생에 기반하여 서버(또는 콘텐트 서버)로의 접속 요청과 관련된 메시지를 네트워크(예: 도 4의 RAN(410))로 전송하도록 통신 회로(510)를 제어할 수 있다. 일예로, 접속 요청과 관련된 메시지는 PDU 세션의 식별 정보(예: PDU session ID) 또는 SSC(session and service continuity) 모드와 관련된 정보(예: SSC mode 3) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 접속 요청과 관련된 메시지의 전송에 대한 응답으로 네트워크로부터 수신한 제어 정보에 기반하여 데이터 통신을 위한 PDU 세션을 수립하도록 통신 회로(510)를 제어할 수 있다. 예를 들어, 프로세서(500)는 네트워크로부터 수신한 PDU 수립 수락과 관련된 정보(예: PDU session establishment accept)에 포함된 SSC 모드 3과 관련된 정보에 기반하여 SSC 모드 3으로 설정된 PDU 세션의 수립이 완료된 것으로 판단할 수 있다. 일예로, 네트워크로부터 수신한 제어 정보는 PDU 수립 수락과 관련된 정보, PDU 세션의 식별 정보, SSC 모드 또는 IP 주소 1(또는 IP 프리픽스 1) 중 적어도 하나와 관련된 정보를 포함할 수 있다. 일예로, 데이터 통신과 관련된 이벤트는 데이터 통신과 관련된 어플리케이션 프로그램의 실행, 기능의 실행, 사용자 입력 수신, 또는 통신 신호의 수신 중 적어도 하나에 기반하여 발생될 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 PDU 세션 및 IP 주소 1에 기반하여 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다. 일예로, IP 주소 1은 PDU 세션을 통해 UPF 1로의 접속을 위한 IP 주소를 포함할 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 PDU 세션과 관련된 UPF의 변경을 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 멀티 호밍(multi homing)의 경우, 통신 회로(510)를 통해 네트워크로부터 우선 시한(preferred lifetime)이 제 1 값(예: '0')으로 설정된 IP 주소 1(또는 IP 프리픽스 1)과 관련된 정보 및 IP 주소 2(또는 IP 프리픽스 2)와 관련된 정보의 수신에 기반하여 UPF가 변경된 것으로 판단할 수 있다. 프로세서(500)는 네트워크로부터 수신한 IP 주소 2(또는 IP 프리픽스 2)와 관련된 정보에 기반하여 PDU 세션의 새로운 IP 주소 2를 생성할 수 있다. 일예로, IP 프리픽스 1은 UPF 1로의 접속을 위한 IP 주소 1을 구성하도록 네트워크에 의해 설정된 정보(예: 네트워크 ID)로, 호스트의 식별 정보(예: 호스트 ID)와 함께 IP 주소 1을 구성할 수 있다. 일예로, IP 프리픽스 2는 UPF의 변경에 기반하여 UPF 2에 접속하기 위한 IP 주소 2를 구성하도록 네트워크에 의해 설정된 정보(예: 네트워크 ID)로, 호스트의 식별 정보(예: 호스트 ID)와 함께 IP 주소 2를 구성할 수 있다. 일예로, 멀티 호밍은 전자 장치(101)의 네트워크 인터페이스가 복수의 네트워크들에 소속되어 복수의 IP 주소들을 포함하는 경우의 통신 방식을 포함할 수 있다.
일 실시예에 따르면, 프로세서(500)는 싱글 호밍(single homing)의 경우, 통신 회로(510)를 통해 네트워크로부터 PDU 세션의 변경과 관련된 정보(예: PDU session modification command)를 수신할 수 있다. 프로세서(500)는 PDU 세션의 변경과 관련된 정보에 대한 응답 메시지(예: PDU session modification complete)를 네트워크로 전송하도록 통신 회로(510)를 제어할 수 있다. 프로세서(500)는 새로운 PDU 세션의 수립을 위해 PDU 세션의 변경 요청과 관련된 정보(예: PDU session modification request)를 네트워크로 전송하도록 통신 회로(510)를 제어할 수 있다. 프로세서(500)는 네트워크로부터 수신한 PDU 세션의 변경 요청과 관련된 정보에 대한 응답 신호에 기반하여 SSC 모드 3으로 설정된 PDU 세션 2의 수립이 완료된 것으로 판단할 수 있다. 일예로, PDU 세션의 변경과 관련된 정보는 PDU 세션 1(예: 변경 전의 PDU 세션)의 IP 주소 1(또는 IP 프리픽스 1)의 유효 시한(valid lifetime), PDU 세션 2 또는 PDU 세션 2(예: 새로운 PDU 세션)의 IP 주소 2(또는 IP 프리픽스 2)와 관련된 정보를 포함할 수 있다. 일예로, PDU 세션의 변경 요청과 관련된 정보는 UPF의 변경에 기반하여 새롭게 수립하기 위한 PDU 세션 2의 식별 정보를 포함할 수 있다. 일예로, 싱글 호밍은 전자 장치(101)의 네트워크 인터페이스가 하나의 네트워크에 소속되어 하나의 IP 주소를 포함하는 경우의 통신 방식을 포함할 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 멀티 호밍의 경우, SSC 모드 3에서의 UPF의 변경을 위해 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 경우, PDU 세션의 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신(예: 데이터 통신)을 수행하는 경우의 QoE(quality of experience)를 확인할 수 있다. 일예로, QoE는 RTT(round trip time), 경로 손실(path loss) 또는 처리율(throughput) 중 적어도 하나를 포함할 수 있다. 일예로, RTT는 전자 장치(101)(또는 프로세서(500))에서 구동 중인 어플리케이션 프로그램 및 어플리케이션 프로그램과 관련된 서버 사이(예: end-to-end)의 RTT를 포함할 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 포그라운드 어플리케이션 프로그램에 기반하여 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 예를 들어, 프로세서(500)는 포그라운드 어플리케이션 프로그램과 관련된 서버에 대해 IP 주소 1 및/또는 IP 주소2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 일예로, IP 주소 1을 사용하는 경우의 RTT는 IP주소 1을 사용하여 접속(또는 연결)된 포그라운드 어플리케이션 프로그램 및 포그라운드 어플리케이션 프로그램과 관련된 서버 사이(예: end-to-end)의 RTT를 포함할 수 있다. 일예로, IP 주소 2를 사용하는 경우의 RTT는 IP주소 2를 사용하여 접속(또는 연결)된 포그라운드 어플리케이션 프로그램 및 포그라운드 어플리케이션 프로그램과 관련된 서버 사이(예: end-to-end)의 RTT를 포함할 수 있다. 일예로, 포그라운드 어플리케이션 프로그램은 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 전자 장치(101)의 디스플레이(미 도시)의 최상단에 GUI(graphic user interface)가 표시되는 기준 어플리케이션 프로그램을 나타낼 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들에 기반하여 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 예를 들어, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 각각과 관련된 서버에 대한 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT의 평균을 검출(또는 측정)할 수 있다. 일예로, 전자 장치(101)에서 실행되는 어플리케이션 프로그램은 어플리케이션 프로그램의 메시지를 송신 및/또는 수신하기 위한 소켓(socket)이 열린(또는 활성화된) 어플리케이션 프로그램을 포함할 수 있다.
일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 어플리케이션 프로그램을 통해, 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 TCP(transmission control protocol) 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 포함할 수 있다. 일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 어플리케이션 프로그램을 통해, 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 QUIC(quick UDP internet connections)와 관련된 초기 패킷(initial packet)을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 포함할 수 있다. 일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 ICMP(internet control message protocol)의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 포함할 수 있다. 일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 TCP 동기 신호에 기반한 RTT, QUIC와 관련된 초기 패킷에 기반한 RTT 또는 핑 요청 신호에 기반한 RTT 중 적어도 하나의 조합으로 결정될 수 있다. 일예로, 핑 요청 신호는 ICMP에 정의된 명령어로, 전자 장치(101)가 네트워크와의 연결 상태를 확인하기 위해 사용될 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 1을 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 프로세서(500)는 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 DNS(domain name system) 사전 분석(pre-resolving)을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버(또는 서버의 IP 주소)를 확인할 수 있다. 프로세서(500)는 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 일예로, IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버는 IP 주소 1을 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버와 동일하거나 또는 상이할 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 멀티 호밍의 경우, IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE에 기반하여 IP 주소 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT에 기반하여 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값 이하인 경우, PDU 세션의 IP 주소 2로 데이터 경로(또는 라우팅)를 전환할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값을 초과하는 경우, PDU 세션의 IP 주소 1의 데이터 경로(또는 라우팅)를 유지할 수 있다. 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 PDU 세션의 IP 주소 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT를 확인 및 비교하여 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있는지 확인할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 만료되는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일예로, IP 주소 1의 유효 시간의 만료는 IP 주소 1의 유효 시간이 지정된 최소 유효 시한 이하인 상태를 포함할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션의 IP 주소 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일예로, 지정된 제 1 기준 시간은 IP 주소 1의 유효 시한이 존재하는 상태에서 IP 주소 1의 데이터 경로의 사용 여부를 판단하기 위해 설정된 기준 시간을 나타낼 수 있다. 일예로, IP 주소 1의 유효 시한이 존재하는 상태는 IP 주소 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1을 사용하는 경우의 패킷 손실 및 지정된 기준 손실에 기반하여 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실을 초과하는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실 이하인 경우, PDU 세션의 IP 주소 1의 데이터 경로를 유지할 수 있다. 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 PDU 세션의 IP 주소 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 IP 주소 1을 사용하는 경우의 패킷 손실을 확인하여 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있는지 확인할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 지정된 제 1 기준 시간 이하로 존재하는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 경우, 지정된 제 2 기준 시간 동안 PDU 세션의 IP 주소 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일예로, IP 주소 1을 사용하는 경우의 패킷 손실은 TCP에 기반한 측정될 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 2로의 데이터 경로의 전환에 기반하여 IP 주소 1의 유효 시한을 갱신할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다. 일예로, 지정된 간격은 IP 주소 1의 유효 시한(예: 남은 유효 시한)을 한번에 감소시키기 위한 기준 범위로 IP 주소 1의 유효 시한(예: 남은 유효 시한)의 절반 또는 고정된 간격을 포함할 수 있다. 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 경우, 반복적으로 IP 주소 1의 유효 시간을 갱신할 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 만료된 경우, IP 주소 1을 해제할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1과 관련된 어플리케이션 프로그램의 소켓을 닫을 수 있다.
일 실시예에 따르면, 프로세서(500)에서 IP 주소 2로 데이터 경로를 전환하는 동작은 프로세서(500)의 라우팅 테이블 값을 IP 주소 2에 기반하여 변경하는 라우팅 전환하는 동작을 포함할 수 있다. 예를 들어, 프로세서(500)는 네트워크로부터 PDU 세션의 IP 주소 1을 할당받는 경우, 외부 데이터 네트워크에 접속하기 위한 라우터(또는 게이트웨이)의 주소를 확인할 수 있다. 프로세서(500)는 라우터의 주소에 기반하여 라우팅 테이블을 하기 표 1과 같이 설정(또는 갱신)할 수 있다. 일예로, 네트워크로부터 할당받은 IP 주소 1이 "2002::1234/64"인 경우, "64"는 IP 프리픽스 1을 나타내고, "2002::/64"는 네트워크의 식별 정보(예: 네트워크 ID)를 나타내고, "::1234"는 호스트의 식별 정보(예: 호스트 ID)를 나타내고, "2002::1"는 라우터(또는 게이트웨이)의 주소를 나타낼 수 있다. 일예로, 히기 표 1의 메트릭은 임의의 값으로, 메트릭의 값이 클수록 우선순위가 높을 수 있다.
목적지 주소 라우터 메트릭
::0 2002::1 1000
2002::/64 - 2000
예를 들어, 프로세서(500)는 네트워크로부터 PDU 세션의 IP 주소 2(예: 1900::1234/64)을 할당받는 경우, 라우팅 테이블을 하기 표 2와 같이 설정(또는 갱신)할 수 있다.
목적지 주소 라우터 메트릭
::0 2002::1 1000
::0 1900::1 500
2002::/ 64 - 2000
1900::/64 - 1500
예를 들어, 프로세서(500)는 IP 주소 2로 데이터 경로의 전환에 기반하여 라우팅 테이블을 하기 표 3과 같이 설정(또는 갱신)할 수 있다.
목적지 주소 라우터 메트릭
::0 2002::1 500
::0 1900::1 1000
2002::/ 64 - 1500
1900::/64 - 2000
예를 들어, 프로세서(500)는 IP 주소 1의 해제에 기반하여 라우팅 테이블을 하기 표 4와 같이 설정(또는 갱신)할 수 있다.
목적지 주소 라우터 메트릭
::0 1900::1 1000
1900::/64 - 2000
다양한 실시예에 따르면, 프로세서(500)는 싱글 호밍의 경우, SSC 모드 3에서의 UPF의 변경을 위해 PDU 세션 1의 IP 주소 1 및 PDU 세션 2의 IP 주소 2가 할당된 경우, PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 QoE를 확인할 수 있다. 일예로, QoE는 RTT, 경로 손실 또는 처리율 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 포그라운드 어플리케이션 프로그램에 기반하여 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 서버에 접속하는 경우의 RTT를 검출(또는 측정)할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 포그라운드 어플리케이션 프로그램과 관련된 서버에 접속하는 경우의 RTT를 검출(또는 측정)할 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들에 기반하여 PDU 세션 1 및/또는 PDU 세션 2를 이용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 각각과 관련된 서버에 접속하는 경우의 RTT의 평균을 검출(또는 측정)할 수 있다.
일 실시예에 따르면, PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 TCP 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 포함할 수 있다. 일 실시예에 따르면, PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 QUIC와 관련된 초기 패킷을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 포함할 수 있다. 일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 ICMP의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 포함할 수 있다. 일 실시예에 따르면, PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT는 TCP 동기 신호에 기반한 RTT, QUIC와 관련된 초기 패킷에 기반한 RTT 또는 핑 요청 신호에 기반한 RTT 중 적어도 하나의 조합으로 결정될 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1을 이용하여 전자 장치(101)에서 실행되는 어플리케이션 프로그램과 관련된 서버에 접속하는 경우의 RTT를 검출(또는 측정)할 수 있다. 프로세서(500)는 PDU 세션 2의 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 DNS 사전 분석(pre-resolving)을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버(또는 서버의 IP 주소)를 확인할 수 있다. 프로세서(500)는 PDU 세션 2를 이용하여 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버에 접속하는 경우의 RTT를 검출(또는 측정)할 수 있다. 일예로, IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버는 IP 주소 1을 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버와 동일하거나 또는 상이할 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 싱글 호밍의 경우, PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 QoE에 기반하여 PDU 세션 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT와 PDU 세션 1을 이용하여 통신을 수행하는 경우의 RTT에 기반하여 PDU 세션 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT로부터 PDU 세션 1을 이용하여 통신을 수행하는 경우의 RTT의 차이가 지정된 제 1 기준 값 이하인 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT로부터 PDU 세션 1을 이용하여 통신을 수행하는 경우의 RTT의 차이가 지정된 제 1 기준 값을 초과하는 경우, PDU 세션 1로의 데이터 경로를 유지할 수 있다. 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 데이터 경로가 PDU 세션 1로 유지되는 경우, 지정된 주기에 기반하여 PDU 세션 1 및 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT를 확인 및 비교하여 데이터 경로를 PDU 세션 2로 전환할 수 있는지 확인할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 만료되는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 일예로, IP 주소 1의 유효 시간의 만료는 IP 주소 1의 유효 시간이 지정된 최소 유효 시한 이하인 상태를 포함할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션 1의 IP 주소 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 일예로, PDU 세션 1의 유효 시한이 존재하는 상태는 PDU 세션 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1을 이용하여 통신을 수행하는 경우의 패킷 손실 및 지정된 기준 손실에 기반하여 PDU 세션 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1을 이용하여 통신을 수행하는 경우의 패킷 손실이 지정된 기준 손실을 초과하는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1을 이용하여 통신을 수행하는 경우의 패킷 손실이 지정된 기준 손실 이하인 경우, PDU 세션 1로 데이터 경로를 유지할 수 있다. 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 데이터 경로가 PDU 세션 1로 유지되는 경우, 지정된 주기에 기반하여 PDU 세션 1을 이용하여 통신을 수행하는 경우의 패킷 손실을 확인하여 PDU 세션 2의 IP 주소 2로 데이터 경로를 전환할 수 있는지 확인할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 만료되는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션 1의 IP 주소 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 일예로, PDU 세션 1을 이용하여 통신을 수행하는 경우의 패킷 손실은 TCP에 기반한 측정될 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 2의 IP 주소 2로의 데이터 경로의 전환에 기반하여 PDU 세션 1의 유효 시한을 갱신할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다. 일예로, 지정된 간격은 PDU 세션 1의 유효 시한(예: 남은 유효 시한)을 감소시키기 위한 기준 범위로, PDU 세션 1의 유효 시한(예: 남은 유효 시한)의 절반 또는 고정된 간격을 포함할 수 있다. 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 경우, 반복적으로 PDU 세션 1의 유효 시간을 갱신할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 만료된 경우, PDU 세션 1의 IP 주소 1을 해제할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1과 관련된 어플리케이션 프로그램의 소켓을 닫을 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 멀티 호밍에서 PDU 세션의 IP 주소 1의 유효 시한이 설정되지 않은 경우, IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE에 기반하여 IP 주소 1 또는 IP 주소 2의 데이터 경로를 선택적으로 사용할 수 있다. 일 실시예에 따르면, 프로세서(500)는 네트워크로부터 수신한 PCO(protocol configuration option) 메시지를 통해 PDU 세션의 IP 주소 1의 유효 시한이 설정되지 않은 상태를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 네트워크로부터 수신한 PDU 세션의 IP 주소 1의 유효 시한이 지정된 값(예: '-1')을 갖는 경우, PDU 세션의 IP 주소 1의 유효 시한이 설정되지 않은 상태인 것으로 판단할 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 2를 사용하는 경우의 RTT와 IP 주소 1을 사용하는 경우의 RTT에 기반하여 IP 주소 1 또는 IP 주소 2의 데이터 경로의 선택할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 2를 사용하는 경우의 RTT와 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값 이하인 경우, PDU 세션의 IP 주소 2의 데이터 경로를 사용할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 2를 사용하는 경우의 RTT와 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값을 초과하는 경우, PDU 세션의 IP 주소 1의 데이터 경로를 사용할 수 있다.
일 실시예에 따르면, 프로세서(500)는 데이터 경로로 사용되는 IP 주소(예: IP 주소 1 또는 IP 주소 2)를 사용하는 경우의 패킷 손실 및 지정된 기준 손실에 기반하여 IP 주소 1 또는 IP 주소 2의 데이터 경로를 선택할 수 있다. 예를 들어, 프로세서(500)는 데이터 경로로 사용되는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실을 초과하는 경우, PDU 세션의 IP 주소 2의 데이터 경로를 사용할 수 있다. 예를 들어, 프로세서(500)는 데이터 경로로 사용되는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실 이하인 경우, PDU 세션의 IP 주소 1의 데이터 경로를 사용할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 네트워크로부터 수신한 RA(router advertisement) 메시지에 특정 IP 주소(또는 IP 프리픽스)(예: IP 주소 1 또는 IP 주소 2)의 우선 시한이 제 1 값(예: '0')으로 설정되고, 유효 시한이 제 1 값과 상이한 제 2 값으로 설정된 경우, 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)와 상이한 다른 IP 주소(예: IP 주소 2 또는 IP 주소 1)의 데이터 경로를 사용할 수 있다. 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)는 유효 시한의 만료에 기반하여 해제될 수 있다.
다양한 실시예에 따르면, 프로세서(500)는 싱글 호밍에서 PDU 세션 1의 IP 주소 1의 유효 시한이 설정되지 않은 경우, PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 QoE에 기반하여 PDU 세션 1 또는 PDU 세션 2를 데이터 경로로 사용할 수 있다. 일 실시예에 따르면, 프로세서(500)는 네트워크로부터 수신한 PCO 메시지를 통해 PDU 세션 2의 IP 주소 1의 유효 시한이 설정되지 않은 상태를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 네트워크로부터 수신한 PDU 세션 2의 IP 주소 1의 유효 시한이 지정된 값(예: '-1')을 갖는 경우, PDU 세션 1의 IP 주소 1의 유효 시한이 설정되지 않은 상태인 것으로 판단할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT와 PDU 세션 1을 이용하여 통신을 수행하는 경우의 RTT에 기반하여 PDU 세션 1 또는 PDU 세션 2를 데이터 경로로 선택할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT로부터 PDU 세션 1을 이용하여 통신을 수행하는 경우의 RTT의 차이가 지정된 제 1 기준 값 이하인 경우, PDU 세션 2를 데이터 경로로 사용할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT로부터 PDU 세션 1을 이용하여 통신을 수행하는 경우의 RTT의 차이가 지정된 제 1 기준 값을 초과하는 경우, PDU 세션 1을 데이터 경로로 사용할 수 있다.
일 실시예에 따르면, 프로세서(500)는 데이터 경로로 사용되는 PDU 세션(예: PDU 세션 1 또는 PDU 세션 2)을 이용하여 통신을 수행하는 경우의 패킷 손실 및 지정된 기준 손실에 기반하여 PDU 세션 1 또는 PDU 세션 2를 데이터 경로를 선택할 수 있다. 예를 들어, 프로세서(500)는 데이터 경로로 사용되는 PDU 세션 1을 이용하여 통신을 수행하는 경우의 패킷 손실이 지정된 기준 손실을 초과하는 경우, PDU 세션 2를 데이터 경로로 사용할 수 있다. 예를 들어, 프로세서(500)는 데이터 경로로 사용되는 PDU 세션 1을 이용하여 통신을 수행하는 경우의 패킷 손실이 지정된 기준 손실 이하인 경우, PDU 세션 1을 데이터 경로로 사용할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1 및 PDU 세션 2가 수립된 상태에서 네트워크로부터 수신한 PCO 메시지에서 특정 PDU 세션(예: PDU 세션 1)의 유효 시한이 제 3 값으로 설정된 경우, 특정 PDU 세션(예: PDU 세션 1)과 상이한 다른 PDU 세션(예: PDU 세션 2)을 데이터 경로로 사용할 수 있다. 특정 PDU 세션(예: PDU 세션 1)은 유효 시한의 만료에 기반하여 해제될 수 있다.
다양한 실시예에 따르면, 통신 회로(510)는 적어도 하나의 외부 전자 장치(예: 도 1의 전자 장치(102 또는 104) 또는 서버(108))와의 신호 및/또는 데이터의 송신 및/또는 수신을 지원할 수 있다. 예를 들어, 통신 회로(510)는 적어도 하나의 외부 전자 장치와의 무선 통신을 위한 RFIC(radio frequency integrated circuit) 및/또는 RFFE(radio frequency front end)를 포함할 수 있다. 일예로, 무선 통신은 5세대 통신 방식(예: NR 통신 방식)을 포함할 수 있으나 제한은 없다.
다양한 실시예에 따르면, 메모리(520)는 전자 장치(101)의 적어도 하나의 구성 요소(예: 프로세서(500) 및/또는 통신 회로(510))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 일 실시예에 따르면, 메모리(520)는 프로세서(500)를 통해 실행될 수 있는 다양한 인스트럭션들을 저장할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 통신 회로(510)(예: 모뎀)를 통해 데이터 경로를 전환 또는 선택할 수 있다. 일 실시예에 따르면, 통신 회로(510)는 프로세서(500)의 지시 정보에 기반하여 데이터 경로를 전환 또는 선택할 수 있다. 예를 들어, 통신 회로(510)는 멀티 호밍의 경우, IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE에 기반하여 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 통신 회로(510)는 싱글 호밍의 경우, PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 QoE에 기반하여 PDU 세션 2로 데이터 경로를 전환할 수 있다.
도 6은 다양한 실시예에 따른 프로그램을 예시하는 블록도(600)이다.
일 실시예에 따르면, 프로그램(140)은 전자 장치(101)의 하나 이상의 리소스들을 제어하기 위한 운영 체제(142), 미들웨어(144), 또는 운영 체제(142)에서 실행 가능한 어플리케이션(146)을 포함할 수 있다. 예를 들어, 운영 체제(142)는 AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, 또는 BadaTM를 포함할 수 있다. 예를 들어, 프로그램(140) 중 적어도 일부 프로그램은 제조 시에 전자 장치(101)에 프리로드되거나, 또는 사용자에 의해 사용 시 외부 전자 장치(예: 도 1의 전자 장치(102 또는 104), 또는 서버(108))로부터 다운로드되거나 갱신 될 수 있다.
다양한 실시예에 따르면, 운영 체제(142)는 전자 장치(101)의 하나 이상의 시스템 리소스들(예: 프로세스, 메모리, 또는 전원)의 관리(예: 할당 또는 회수)를 제어할 수 있다. 일 실시예에 따르면, 운영 체제(142)는 전자 장치(101)의 다른 하드웨어 디바이스(예: 프로세서(500) 또는 통신 회로(510))를 구동하기 위한 하나 이상의 드라이버 프로그램들을 포함할 수 있다.
일 실시예에 따르면, 운영 체제(142)는 전자 장치(101)가 접속된 네트워크가 CS(circuit switched) 통신을 지원하는지 여부를 확인하거나 또는 전자 장치(101)에서 사용할 긴급 호 방식(예: VoLTE 긴급 호 방식 또는 CS 긴급 호 방식)을 제어하는 RIL(radio interface layer)(631)를 포함할 수 있다. 예를 들어, RIL(631)은 통신 회로(510)가 네트워크와의 PDU 세션을 수립하거나 해제하도록 제어할 수 있다.
다양한 실시예에 따르면, 미들웨어(144)는 전자 장치(101)의 하나 이상의 리소스들로부터 제공되는 기능 또는 정보가 어플리케이션(146)에 의해 사용될 수 있도록 다양한 기능들을 어플리케이션(146)으로 제공할 수 있다. 예를 들어, 미들웨어(144)는 어플리케이션 매니저(601), 윈도우 매니저(603), 멀티미디어 매니저(605), 리소스 매니저(607), 파워 매니저(609), 데이터베이스 매니저(611), 패키지 매니저(613), 커넥티비티 매니저(615), 노티피케이션 매니저(617), 로케이션 매니저(619), 그래픽 매니저(621), 시큐리티 매니저(623), 통화 매니저(625), 음성 인식 매니저(627) 또는 SSC 매니저(629)를 포함할 수 있다.
일 실시예에 따르면, 어플리케이션 매니저(601)는 어플리케이션(146)의 생명 주기를 관리할 수 있다. 일 실시예에 따르면, 윈도우 매니저(603)는 화면에서 사용되는 하나 이상의 GUI 자원들을 관리할 수 있다. 일 실시예에 따르면, 멀티미디어 매니저(605)는 미디어 파일들의 재생에 필요한 하나 이상의 포맷들을 파악하고, 그 중 선택된 해당하는 포맷에 맞는 코덱을 이용하여 미디어 파일들 중 해당하는 미디어 파일의 인코딩 또는 디코딩을 수행할 수 있다. 일 실시예에 따르면, 리소스 매니저(607)는 어플리케이션(146)의 소스 코드 또는 메모리(130)의 메모리의 공간을 관리할 수 있다. 일 실시예에 따르면, 파워 매니저(609)는 배터리(189)의 용량, 온도 또는 전원을 관리하고, 이 중 해당 정보를 이용하여 전자 장치(101)의 동작에 필요한 관련 정보를 결정 또는 제공할 수 있다. 일 실시예에 따르면, 파워 매니저(609)는 전자 장치(101)의 바이오스(BIOS: basic input/output system)(미도시)와 연동할 수 있다.
일 실시예에 따르면, 데이터베이스 매니저(611)는 어플리케이션(146)에 의해 사용될 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 일 실시예에 따르면, 패키지 매니저(613)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 갱신을 관리할 수 있다. 일 실시예에 따르면, 커넥티비티 매니저(615)는 전자 장치(101)와 외부 전자 장치 간의 무선 연결 또는 직접 연결을 관리할 수 있다. 예를 들어, 커넥티비티 매니저(615)는 운영 체제(142)(또는 RIL(631))와 어플리케이션(146)의 사이에서 PDU 세션의 수립 및/또는 해제와 관련된 정보를 제공할 수 있다.
일 실시예에 따르면, 노티피케이션 매니저(617)는 지정된 이벤트(예: 착신 통화, 메시지, 또는 알람)의 발생을 사용자에게 알리기 위한 기능을 제공할 수 있다. 일 실시예에 따르면, 로케이션 매니저(619)는 전자 장치(101)의 위치 정보를 관리할 수 있다. 일 실시예에 따르면, 그래픽 매니저(621)는 사용자에게 제공될 하나 이상의 그래픽 효과들 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다.
일 실시예에 따르면, 시큐리티 매니저(623)는 시스템 보안 또는 사용자 인증을 제공할 수 있다. 일 실시예에 따르면, 통화(telephony) 매니저(625)는 전자 장치(101)에 의해 제공되는 음성 통화 기능 또는 영상 통화 기능을 관리할 수 있다. 일 실시예에 따르면, 음성 인식 매니저(627)는 사용자의 음성 데이터를 서버(108)로 전송하고, 그 음성 데이터에 적어도 일부 기반하여 전자 장치(101)에서 수행될 기능에 대응하는 명령어(command), 또는 그 음성 데이터에 적어도 일부 기반하여 변환된 문자 데이터를 서버(108)로부터 수신할 수 있다.
일 실시예에 따르면, SSC 매니저(629)는 데이터 통신을 위해 사용할 데이터 경로의 설정, PDU 세션의 해제 또는 DNS 사전 분석 중 적어도 하나의 동작을 제어할 수 있다. 예를 들어, 데이터 통신을 위해 사용할 데이터 경로의 설정은 멀티 호밍의 경우, SSC 모드 3에서의 UPF의 변경을 위해 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 새롭게 할당받은 IP 주소 2로의 데이터 경로의 전환 시점을 설정하는 일련의 과정을 포함할 수 있다. 예를 들어, 데이터 통신을 위해 사용할 데이터 경로의 설정은 싱글 호밍의 경우, SSC 모드 3에서 UPF의 변경을 위해 PDU 세션 1 및 PDU 세션 2가 수립된 상태에서 새롭게 수립된 PDU 세션 2로의 데이터 경로의 전환 시점을 설정하는 일련의 과정을 포함할 수 있다.
예를 들어, PDU 세션의 해제는 멀티 호밍의 경우, SSC 모드 3에서의 UPF의 변경을 위해 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 새롭게 할당받은 IP 주소 2로의 데이터 경로의 전환에 기반하여 이전 시점에 할당받은 IP 주소 1의 해제를 제어하는 일련의 과정을 포함할 수 있다. 예를 들어, PDU 세션의 해제는 싱글 호밍의 경우, SSC 모드 3에서의 UPF의 변경을 위해 PDU 세션 1 및 PDU 세션 2가 수립된 상태에서 새롭게 수립된 PDU 세션 2로의 데이터 경로의 전환에 기반하여 이전 시점에 수립된 PDU 세션 1의 해제를 제어하는 일련의 과정을 포함할 수 있다.
예를 들어, DNS 사전 분석은 멀티 호밍의 경우, SSC 모드 3에서의 UPF의 변경을 위해 새로운 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 IP 주소 2와 관련된 서버(또는 서버 주소)를 확인하는 일련의 동작을 포함할 수 있다. 예를 들어, DNS 사전 분석은 싱글 호밍의 경우, SSC 모드 3에서의 UPF의 변경을 위해 새로운 PDU 세션 2의 수립에 기반하여 PDU 세션 2와 관련된 서버(또는 서버 주소)를 확인하는 일련의 동작을 포함할 수 있다.
일 실시예에 따르면, 미들웨어(144)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 일 실시예에 따르면, 미들웨어(144)의 적어도 일부는 운영 체제(142)의 일부로 포함되거나, 또는 운영 체제(142)와는 다른 별도의 소프트웨어로 구현될 수 있다.
다양한 실시예에 따르면, 어플리케이션(146)은 전자 장치(101)에서 제공하는 기능과 관련된 적어도 하나의 어플리케이션 프로그램을 포함할 수 있다. 일 실시예에 따르면, 어플리케이션(146)은 데이터 통신과 관련된 어플리케이션 프로그램을 포함할 수 있다.
다양한 실시예에 따르면, 어플리케이션(146)은 커넥티비티 매니저(615)를 통해 운영 체제(142)(또는 RIL(631))로 PDU 세션 연결을 요청할 수 있다. RIL(631)은 통신 회로(510)(또는 모뎀)을 통해, PDU 세션의 연결과 관련된 요청 메시지를 네트워크로 전송하도록 제어할 수 있다. 통신 회로(510)는 네트워크로부터 수신한 요청 메시지에 대한 응답 메시지(예: 할당받은 IP 주소)를 RIL(631)로 전송할 수 있다. RIL(631)은 커널에 네트워크 인터페이스를 생성하고, 통신 회로(510)로부터 수신한 IP 주소를 네트워크 인터페이스에 설정할 수 있다. RIL(631)은 커넥티비티 매니저(615)를 통해 PDU 세션의 연결 결과와 관련된 정보를 어플리케이션(146)로 전송할 수 있다.
다양한 실시예에 따르면, 어플리케이션(146)은 커넥티비티 매니저(615)를 통해 운영 체제(142)(또는 RIL(631))로 PDU 세션 해제를 요청할 수 있다. RIL(631)은 통신 회로(510)(또는 모뎀)을 통해, PDU 세션의 연결 해제와 관련된 요청 메시지를 네트워크로 전송하도록 제어할 수 있다. 통신 회로(510)는 네트워크로부터 수신한 요청 메시지에 대한 응답 메시지를 RIL(631)로 전송할 수 있다. RIL(631)은 커널에 네트워크 인터페이스를 삭제할 수 있다. RIL(631)은 커넥티비티 매니저(615)를 통해 PDU 세션의 연결 해제 결과와 관련된 정보를 어플리케이션(146)로 전송할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101))는, 통신 회로(예: 도 1 또는 도 2의 무선 통신 모듈(192) 또는 도 5의 통신 회로(510)) 및 통신 회로와 작동적으로 연결된 프로세서(예: 도 1 또는 도 2의 프로세서(120) 또는 도 5의 프로세서(500))를 포함할 수 있다. 일 실시예에 따르면, 프로세서는 PDU(protocol data unit) 세션 및 IP(internet protocol) 주소 1을 통해 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서는 데이터 경로의 변경과 관련된 PDU 세션의 IP 주소 2를 확인할 수 있다. 일 실시예에 따르면, 프로세서는 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 IP 주소 1을 사용하는 경우의 RTT(round trip time)와 IP 주소 2를 사용하는 경우의 RTT를 확인할 수 있다. 일 실시예에 따르면, 프로세서는 IP 주소 1의 유효 시한(valid lifetime)이 만료되기 이전에 IP 주소 1을 사용하는 경우의 RTT와 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 IP 주소 2로 데이터 경로를 변경할 수 있다. 일 실시예에 따르면, 프로세서는 IP 주소 2로 데이터 경로의 변경에 기반하여 IP 주소 1을 해제할 수 있다.
다양한 실시예에 따르면, 프로세서는, 네트워크와 SSC(session and service continuity) 모드 3로 설정된 경우, PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT를 확인할 수 있다.
다양한 실시예에 따르면, 프로세서는, 통신 회로를 통해, 접속 요청과 관련된 메시지를 네트워크로 전송하고, 네트워크로부터 수신한 PDU 수립 수락과 관련된 정보에 포함된 SSC 모드 3과 관련된 정보에 기반하여 상기 SSC 모드 3으로 설정된 상기 PDU 세션을 수립할 수 있다.
다양한 실시예에 따르면, 프로세서는, 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 중 기준 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT를 확인할 수 있다.
다양한 실시예에 따르면, 프로세서는, 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 각각과 관련된 적어도 하나의 서버를 통해 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT를 확인할 수 있다.
다양한 실시예에 따르면, IP 주소 1 또는 IP 주소 2 중 적어도 하나를 사용하는 경우의 RTT는, 전자 장치에서 실행 중인 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 TCP(transmission control protocol) 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간, 전자 장치에서 실행 중인 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 QUIC와 관련된 초기 패킷(initial packet)을 전송한 시점부터 서버로부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 경과 시간, 또는 ICMP(internet control message protocol)의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 경과 시간 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따르면, 프로세서는, IP 주소 2의 확인에 기반하여 DNS(domain name system) 사전 분석(pre-resolving)을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버하고, IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 2를 사용하는 경우의 RTT를 확인할 수 있다.
다양한 실시예에 따르면, 프로세서는, IP 주소 1의 유효 시한이 만료되기 이전에 IP 주소 2를 사용하는 경우의 RTT에서 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 기준 값 이하인 경우, IP 주소 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 프로세서는, IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 기준 값을 초과하는 경우, IP 주소 1의 데이터 경로를 유지할 수 있다.
다양한 실시예에 따르면, 프로세서는, IP 주소 1의 유효 시한이 만료되기 이전에 IP 주소 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 반복적으로 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT에 기반하여 IP 주소 2로 데이터 경로의 전환 여부를 판단하고, IP 주소 2로 데이터 경로의 전환 여부의 판단 횟수가 지정된 횟수를 초과하는 경우, IP 주소 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 프로세서는, IP 주소 2로 데이터 경로의 변경에 기반하여 IP 주소 1의 유효 시한을 축소하고, 축소된 IP 주소 1의 유효 시한의 만료에 기반하여 IP 주소 1을 해제할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101))는, 통신 회로(예: 도 1 또는 도 2의 무선 통신 모듈(192) 또는 도 5의 통신 회로(510)) 및 통신 회로와 작동적으로 연결된 프로세서(예: 도 1 또는 도 2의 프로세서(120) 또는 도 5의 프로세서(500))를 포함할 수 있다. 일 실시예에 따르면, 프로세서는 PDU(protocol data unit) 세션 1 및 IP(internet protocol) 주소 1을 통해 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서는 PDU 세션의 변경에 기반하여 PDU 세션 2 및 IP 주소 2를 확인할 수 있다. 일 실시예에 따르면, 프로세서는 PDU 세션 1 및 PDU 세션 2가 할당된 상태에서 PDU 세션 1과 관련된 RTT(round trip time)와 PDU 세션 2와 관련된 RTT를 확인할 수 있다. 일 실시예에 따르면, 프로세서는 PDU 세션 1의 유효 시한(valid lifetime)이 만료되기 이전에 PDU 세션 1과 관련된 RTT와 PDU 세션 2와 관련된 RTT의 비교 결과에 기반하여 PDU 세션 2로 데이터 경로를 변경할 수 있다. 일 실시예에 따르면, 프로세서는 PDU 세션 2로 데이터 경로의 변경에 기반하여 PDU 세션 1을 해제할 수 있다.
도 7은 다양한 실시예에 따른 전자 장치에서 멀티 호밍을 이용하여 데이터 경로의 변경을 위한 흐름도(700)이다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. 일예로, 도 7의 전자 장치는 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101) 일 수 있다.
도 7을 참조하는 다양한 실시예에 따르면, 전자 장치(예: 도 1의 프로세서(120) 또는 도 5의 프로세서(500))는 동작 701에서, PDU(protocol data unit) 세션 및 네트워크로부터 할당받은 IP 주소 1에 기반하여 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서(500)는 데이터 통신과 관련된 이벤트의 발생에 기반하여 서버(또는 콘텐트 서버)로의 접속 요청과 관련된 메시지를 네트워크(예: 도 4의 RAN(410))로 전송하도록 통신 회로(510)를 제어할 수 있다. 일예로, 접속 요청과 관련된 메시지는 PDU 세션의 식별 정보(예: PDU session ID) 또는 SSC 모드와 관련된 정보(예: SSC mode 3) 중 적어도 하나를 포함할 수 있다. 일예로, 데이터 통신과 관련된 이벤트는 데이터 통신과 관련된 어플리케이션 프로그램의 실행, 기능의 실행, 사용자 입력 수신, 또는 통신 신호의 수신 중 적어도 하나에 기반하여 발생될 수 있다. 일 실시예에 따르면, 프로세서(500)는 접속 요청과 관련된 메시지의 전송에 대한 응답으로 네트워크로부터 수신한 제어 정보에 기반하여 데이터 통신을 위한 PDU 세션을 수립하도록 통신 회로(510)를 제어할 수 있다. 예를 들어, 프로세서(500)는 네트워크로부터 수신한 PDU 수립 수락과 관련된 정보(예: PDU session establishment accept)에 포함된 SSC 모드 3과 관련된 정보에 기반하여 SSC 모드 3으로 설정된 PDU 세션의 수립이 완료된 것으로 판단할 수 있다. 일예로, 네트워크로부터 수신한 제어 정보는 PDU 수립 수락과 관련된 정보, PDU 세션의 식별 정보, SSC 모드 또는 IP 주소 1(또는 IP 프리픽스 1) 중 적어도 하나와 관련된 정보를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 703에서, PDU 세션과 관련된 UPF의 변경에 기반하여 네트워크에 의해 PDU 세션에 새롭게 할당된 IP 주소 2를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 멀티 호밍(multi homing)의 경우, 통신 회로(510)를 통해 네트워크로부터 우선 시한(preferred lifetime)이 제 1 값(예: '0')으로 설정된 IP 프리픽스 1과 관련된 정보 및 IP 프리픽스 2와 관련된 정보의 수신에 기반하여 UPF가 변경된 것으로 판단할 수 있다. 프로세서(500)는 네트워크로부터 수신한 IP 프리픽스 2에 기반하여 PDU 세션의 IP 주소 2를 생성할 수 있다. 일예로, IP 프리픽스 1은 UPF 1로의 접속을 위한 IP 주소 1을 구성하도록 네트워크에 의해 설정된 정보(예: 네트워크 ID)로, 호스트의 식별 정보(예: 호스트 ID)와 함께 IP 주소 1을 구성할 수 있다. 일예로, IP 프리픽스 2는 UPF의 변경에 기반하여 UPF 2에 접속하기 위한 IP 주소 2를 구성하도록 네트워크에 의해 설정된 정보(예: 네트워크 ID)로, 호스트의 식별 정보(예: 호스트 ID)와 함께 IP 주소 2를 구성할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 705에서, SSC 모드 3로 설정된 PDU 세션의 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE(quality of experience)를 확인할 수 있다. 일예로, QoE는 RTT(round trip time), 경로 손실(path loss) 또는 처리율(throughput) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1에 기반한 TCP(transmission control protocol) 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 IP 주소 1을 사용하는 경우의 RTT로 판단할 수 있다. 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 2에 기반한 TCP 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 IP 주소 2를 사용하는 경우의 RTT로 판단할 수 있다. 일 실시예에 따르면, 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1에 기반한 QUIC와 관련된 초기 패킷(initial packet)을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 IP 주소 1을 사용하는 경우의 RTT로 판단할 수 있다. 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 2에 기반한 QUIC와 관련된 초기 패킷(initial packet)을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 IP 주소 2를 사용하는 경우의 RTT로 판단할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1를 사용하여 ICMP(internet control message protocol)의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 IP 주소 1을 사용하는 경우의 RTT로 판단할 수 있다. 프로세서(500)는 IP 주소 2를 사용하여 ICMP의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 IP 주소 2를 사용하는 경우의 RTT로 판단할 수 있다. 일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 TCP 동기 신호에 기반한 RTT, QUIC와 관련된 초기 패킷에 기반한 RTT 또는 핑 요청 신호에 기반한 RTT 중 적어도 하나의 조합으로 결정될 수도 있다. 예를 들어, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 포그라운드 어플리케이션 프로그램의 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT를 포함할 수 있다. 예를 들어, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들의 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT의 평균을 포함할 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 1을 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 프로세서(500)는 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 DNS(domain name system) 사전 분석(pre-resolving)을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버(또는 서버의 IP 주소)를 확인할 수 있다. 프로세서(500)는 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 일예로, IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버는 IP 주소 1을 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버와 동일하거나 또는 상이할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 707에서, IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 2를 사용하는 경우의 RTT와 IP 주소 1을 사용하는 경우의 RTT에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 IP 주소 2 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값 이하인 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 IP 주소 2 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값을 초과하는 상태를 포함할 수 있다. 일예로, PDU 세션의 IP 주소 1의 유효 시한이 존재하는 상태는 PDU 세션의 IP 주소 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1을 사용하는 경우의 패킷 손실에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실을 초과하는 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실 이하인 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하지 않는 경우(예: 동작 707의 '아니오'), 데이터 경로의 전환을 위한 일 실시예를 종료할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하지 않는 경우, IP 주소 1의 데이터 통신의 품질이 IP 주소 2보다 상대적으로 좋은 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션의 IP 주소 1의 데이터 경로를 유지할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP주소 1의 유효 시한이 만료되는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하는 경우(예: 동작 707의 '예'), 동작 709에서, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하는 경우, IP 주소 2의 데이터 통신의 품질이 IP 주소 1보다 상대적으로 좋거나, 또는 IP 주소 1 및 IP 주소 2의 데이터 통신의 품질이 유사한 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 존재하는 동안 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 예를 들어, 데이터 경로의 전환은 프로세서(500)의 라우팅 테이블 값을 IP 주소 2에 기반하여 변경하는 라우팅 전환하는 일련의 동작을 포함할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 2로의 데이터 경로 전환에 기반하여 IP 주소 1의 유효 시한을 갱신할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 경우, 반복적으로 IP 주소 1의 유효 시간을 갱신할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 만료된 경우, IP 주소 1을 해제할 수 있다. 일예로, 지정된 간격은 IP 주소 1의 유효 시한(예: 남은 유효 시한)을 감소시키기 위한 기준 범위로, IP 주소 1의 유효 시한(예: 남은 유효 시한)의 절반 또는 고정된 간격을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 711에서, PDU 세션의 IP 주소 2를 통해 데이터 통신을 수행할 수 있다.
도 8은 다양한 실시예에 따른 전자 장치에서 RTT에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도(800)이다. 일 실시예에 따르면, 도 8의 적어도 일부는 도 7의 동작 705 내지 동작 711의 상세한 동작을 포함할 수 있다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. 일예로, 도 8의 전자 장치는 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101) 일 수 있다.
도 8을 참조하는 다양한 실시예에 따르면, 전자 장치(예: 도 1의 프로세서(120) 또는 도 5의 프로세서(500))는 SSC 모드 3로 설정된 PDU 세션에 IP 주소 1 및 IP 주소 2가 할당된 경우(예: 도 7의 동작 703), 동작 801에서, PDU 세션의 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT(round trip time)를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 포그라운드 어플리케이션 프로그램과 관련된 서버에 대한 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 일예로, 포그라운드 어플리케이션 프로그램은 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 전자 장치(101)의 디스플레이(미 도시)의 최상단에 GUI(graphic user interface)가 표시된 어플리케이션 프로그램을 나타낼 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들과 관련된 서버에 대한 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT의 평균을 검출(또는 측정)할 수 있다. 일예로, 전자 장치(101)에서 실행되는 어플리케이션 프로그램은 어플리케이션 프로그램의 메시지를 송신 및/또는 수신하기 위한 소켓(socket)이 열린(또는 활성화된) 어플리케이션 프로그램을 포함할 수 있다.
일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 어플리케이션 프로그램과 관련된 서버로 TCP 동기 신호, QUIC와 관련된 초기 패킷 또는 핑 요청 신호 중 적어도 하나에 기반하여 결정(또는 측정)될 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 1을 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 프로세서(500)는 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 DNS 사전 분석을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버(또는 서버의 IP 주소)를 확인할 수 있다. 프로세서(500)는 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 803에서, IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT가 지정된 전환 조건을 만족하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 2를 사용하는 경우의 RTT와 IP 주소 1을 사용하는 경우의 RTT에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값 이하인 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값을 초과하는 상태를 포함할 수 있다. 일예로, PDU 세션의 IP 주소 1의 유효 시한이 존재하는 상태는 PDU 세션의 IP 주소 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT가 지정된 전환 조건을 만족하는 경우(예: 동작 803의 '예'), 동작 805에서, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT가 지정된 전환 조건을 만족하는 경우, IP 주소 2의 데이터 통신의 품질이 IP 주소 1보다 상대적으로 좋거나, 또는 IP 주소 1 및 IP 주소 2의 데이터 통신의 품질이 유사한 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 존재하는 동안 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 프로세서(500))는 데이터 경로의 전환에 기반하여 PDU 세션의 IP 주소 2를 통해 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 807에서, PDU 세션의 IP 주소 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다. 일예로, 지정된 간격은 IP 주소 1의 유효 시한(예: 남은 유효 시한)을 한번에 감소시키기 위한 기준 범위로 IP 주소 1의 유효 시한(예: 남은 유효 시한)의 절반 또는 고정된 간격을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 809에서, PDU 세션의 IP 주소 1의 갱신된 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 갱신된 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 809의 '아니오'), 동작 807에서, PDU 세션의 IP 주소 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 경우, 반복적으로 IP 주소 1의 유효 시간을 갱신할 수 있다. 일예로, PDU 세션의 IP 주소 1의 유효 시간의 갱신은 지정된 주기에 기반하여 수행될 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 갱신된 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 809의 '예'), 동작 811에서, PDU 세션의 IP 주소 1을 해제할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1과 관련된 어플리케이션 프로그램의 소켓을 닫음으로써 PDU 세션의 IP 주소 1을 해제할 수 있다. 일예로, IP 주소 1의 유효 시간(또는 갱신된 유효 시한)이 도래하는 상태는 IP 주소 1의 유효 시간이 지정된 최소 유효 시한 이하인 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT가 지정된 전환 조건을 만족하지 않는 경우(예: 동작 803의 '아니오'), 동작 813에서, PDU 세션의 IP 주소 1의 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT가 지정된 전환 조건을 만족하지 않는 경우, PDU 세션의 IP 주소 1의 데이터 경로를 유지할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 813의 '아니오'), 동작 801에서, PDU 세션의 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 PDU 세션의 IP 주소 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 IP 주소 1 및 IP 주소 2를 사용하는 경우의 RTT를 확인 및 비교하여 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있는지 확인할 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션의 IP 주소 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 813의 '예'), 동작 811에서, PDU 세션의 IP 주소 1을 해제할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 만료되는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
도 9는 다양한 실시예에 따른 전자 장치에서 패킷 손실에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도(900)이다. 일 실시예에 따르면, 도 9의 적어도 일부는 도 7의 동작 705 내지 동작 711의 상세한 동작을 포함할 수 있다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. 일예로, 도 9의 전자 장치는 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101) 일 수 있다.
도 9를 참조하는 다양한 실시예에 따르면, 전자 장치(예: 도 1의 프로세서(120) 또는 도 5의 프로세서(500))는 SSC 모드 3에서의 UPF의 변경을 위해 PDU 세션에 IP 주소 1 및 IP 주소 2가 할당된 경우(예: 도 7의 동작 703), 동작 901에서, PDU 세션의 IP 주소 1을 사용하는 경우의 패킷 손실을 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 지정된 시간 동안 PDU 세션의 IP 주소 1에 기반하여 송신 및/또는 수신하는 데이터(패킷)의 손실률을 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 903에서, IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 전환 조건을 만족하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실을 초과하는 경우, 지정된 전환 조건을 만족하는 것으로 판단할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실 이하인 경우, 지정된 전환 조건을 만족하지 않는 것으로 판단할 수 있다. 일예로, PDU 세션의 IP 주소 1의 유효 시한이 존재하는 상태는 PDU 세션의 IP 주소 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 전환 조건을 만족하는 경우(예: 동작 903의 '예'), 동작 905에서, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 전환 조건을 만족하는 경우, IP 주소 1의 데이터 통신의 품질이 상대적으로 저하된 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 존재하는 동안 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 프로세서(500))는 데이터 경로의 전환에 기반하여 PDU 세션의 IP 주소 2를 통해 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 907에서, PDU 세션의 IP 주소 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 909에서, PDU 세션의 IP 주소 1의 갱신된 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 갱신된 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 909의 '아니오'), 동작 907에서, PDU 세션의 IP 주소 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 경우, 반복적으로 IP 주소 1의 유효 시간을 갱신할 수 있다. 일예로, PDU 세션의 IP 주소 1의 유효 시간의 갱신은 지정된 주기에 기반하여 수행될 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 갱신된 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 909의 '예'), 동작 911에서, PDU 세션의 IP 주소 1을 해제할 수 있다. 일예로, PDU 세션의 IP 주소 1의 해제는 PDU 세션의 IP 주소 1과 관련된 어플리케이션 프로그램의 소켓을 닫는 일련의 동작을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 전환 조건을 만족하지 않는 경우(예: 동작 903의 '아니오'), 동작 913에서, PDU 세션의 IP 주소 1의 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 전환 조건을 만족하지 않는 경우, PDU 세션의 IP 주소 1의 데이터 경로를 유지할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 913의 '아니오'), 동작 901에서, PDU 세션의 IP 주소 1을 사용하는 경우의 패킷 손실을 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 상태에서 PDU 세션의 IP 주소 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 전환 조건을 만족하는지 확인하여 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있는지 확인할 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션의 IP 주소 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션의 IP 주소 1의 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 913의 '예'), 동작 911에서, PDU 세션의 IP 주소 1을 해제할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 만료되는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
도 10은 다양한 실시예에 따른 전자 장치에서 멀티 호밍을 이용하여 데이터 경로의 변경을 위한 일예이다.
도 10을 참조하는 다양한 실시예에 따르면, 전자 장치(101)는 SSC 모드 3으로 설정된 PDU(protocol data unit) 세션 및 IP 주소 1에 기반하여 UPF 1(450)를 통해 서버(1000)와 데이터 통신을 수행할 수 있다(동작 1011). 일 실시예에 따르면, UPF BP(440)는 전자 장치(101)로부터 수신한 IP 주소 1에 기반하여 전자 장치(101)와의 PDU 세션을 UPF 1(450)로 연결할 수 있다. 전자 장치(101)는 UPF BP(440)를 통해 연결된 UPF 1(450)을 통해 서버(1000)와 데이터 통신을 수행할 수 있다(동작 1011). 예를 들어, 전자 장치(101)는 PDU세션으로 접속 라우팅되는 경우, IP통신의 소스 IP로 IP 주소 1을 사용할 수 있다.
다양한 실시예에 따르면, SMF(430)는 전자 장치(101)의 위치, UPF 1(450)의 부하(load), 기지국(예: RAN(410))의 연결 정보 또는 전자 장치(101)에서 실행되는 어플리케이션 프로그램의 요구 사항 중 적어도 하나에 기반하여 UPF의 변경(relocation)을 결정할 수 있다(동작 1013). 일 실시예에 따르면, SMF(430)는 전자 장치(101)와의 PDU 세션이 UPF 1(450)을 다른 UPF(예: UPF 2(455))로 변경했을 때 상대적으로 짧은 데이터 전송 경로를 이용할 수 있거나 또는 데이터가 도달하는 시간이 감소하는 전자 장치(101) 및/또는 망사업자에게 이득이 있다고 판단되는 경우, UPF의 변경을 결정할 수 있다.
다양한 실시예에 따르면, SMF(430)는 UPF의 변경을 결정한 경우(동작 1013), UPF BP(440) 이후의 경로(예: N9 Session)를 새로운 UPF 2(455)로 연결할 수 있다(동작 1015). 예를 들어, 멀티 호밍의 경우, 전자 장치(101)에서 연결되는 PDU 세션은 UPF의 변경과 무관하게 변화가 없고, 네트워크 내에서 UPF BP(440)부터 UPF(예: UPF 1(450) 및/또는 UPF 2(455))까지의 경로(예: N9 Session)만 변화될 수 있다.
다양한 실시예에 따르면, 네트워크(예: SMF(430))는 UPF 변경에 기반하여 전자 장치(101)에 UPF 2(455)에서 이용하게 위한 새로운 IP 주소인 IP 주소 2(또는 IP 프리픽스 2)를 할당할 수 있다(동작 1017). 네트워크(예: SMF(430))는 전자 장치(101)에 이전에 할당한 IP 주소 1(또는 IP 프리픽스 1)의 유효 시한을 전자 장치(101)에 제공할 수 있다(동작 1017). 네트워크(예: SMF(430))는 제 1 값(예: '0')으로 설정된 IP 주소 1(또는 IP 프리픽스 1)의 우선 시한(preferred lifetime)과 관련된 정보를 전자 장치(101)에 제공할 수 있다. 일예로, IP 주소 1(또는 IP 프리픽스 1)의 유효 시한은 제 1 값과 상이한 제 2 값으로 설정될 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 네트워크로 우선 시한이 제 1 값(예: '0')으로 설정된 IP 주소 1(또는 IP 프리픽스 1)과 관련된 정보 및 IP 주소 2(또는 IP 프리픽스 2)와 관련된 정보를 수신한 경우, UPF가 변경된 것으로 판단할 수 있다. 전자 장치(101)는 네트워크로부터 수신한 IP 주소 2(또는 IP 프리픽스 2)와 관련된 정보 에 기반하여 PDU 세션의 새로운 IP 주소 2를 생성할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다(동작 1019). 일 실시예에 따르면, 전자 장치(101)는 소스 IP 주소를 IP 주소 2로 설정할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 SSC 모드 3에서의 UPF의 변경을 위해 할당된 PDU 세션의 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE(quality of experience)를 확인할 수 있다. 전자 장치(101)는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하는 것으로 판단한 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일예로, QoE는 RTT(round trip time), 경로 손실(path loss) 또는 처리율(throughput) 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 전자 장치(101)는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하지 않는 것으로 판단한 경우, 지정된 주기에 기반하여 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE를 확인하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 전자 장치(101)는 IP 주소 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
일 실시예에 따르면, 전자 장치(101)는 IP 주소 1의 유효 시한이 만료되는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다. 일예로, IP 주소 1의 유효 시간이 만료되는 상태는 IP 주소 1의 유효 시간이 지정된 최소 유효 시한 이하인 상태를 포함할 수 있다.
일 실시예에 따르면, 전자 장치(101)는 IP 주소 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션의 IP 주소 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 IP 주소 1의 유효 시한이 만료되는 경우, IP 주소 1을 해제할 수 있다(동작 1021). 일 실시예에 따르면, 전자 장치(101)는 PDU 세션의 IP 주소 2로의 데이터 경로 전환에 기반하여 IP 주소 1의 유효 시한을 갱신할 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다. 예를 들어, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 경우, 반복적으로 IP 주소 1의 유효 시간을 갱신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 갱신된 IP 주소 1의 유효 시한이 만료된 경우, IP 주소 1을 해제할 수 있다.
도 11은 다양한 실시예에 따른 전자 장치에서 싱글 호밍을 이용하여 데이터 경로의 변경을 위한 흐름도(1100)이다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. 일예로, 도 11의 전자 장치는 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101) 일 수 있다.
도 11을 참조하는 다양한 실시예에 따르면, 전자 장치(예: 도 1의 프로세서(120) 또는 도 5의 프로세서(500))는 동작 1101에서, PDU(protocol data unit) 세션 1 및 네트워크로부터 할당받은 IP 주소 1에 기반하여 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서(500)는 데이터 통신과 관련된 이벤트의 발생에 기반하여 서버(또는 콘텐트 서버)로의 접속 요청과 관련된 메시지를 네트워크(예: 도 4의 RAN(410))로 전송하도록 통신 회로(510)를 제어할 수 있다. 일예로, 접속 요청과 관련된 메시지는 PDU 세션의 식별 정보(예: PDU session ID) 또는 SSC 모드와 관련된 정보(예: SSC mode 3) 중 적어도 하나를 포함할 수 있다. 일예로, 데이터 통신과 관련된 이벤트는 데이터 통신과 관련된 어플리케이션 프로그램의 실행, 기능의 실행, 사용자 입력 수신, 또는 통신 신호의 수신 중 적어도 하나에 기반하여 발생될 수 있다. 일 실시예에 따르면, 프로세서(500)는 접속 요청과 관련된 메시지의 전송에 대한 응답으로 네트워크로부터 수신한 제어 정보에 기반하여 데이터 통신을 위한 PDU 세션 1을 수립하도록 통신 회로(510)를 제어할 수 있다. 예를 들어, 프로세서(500)는 네트워크로부터 수신한 PDU 수립 수락과 관련된 정보에 포함된 SSC 모드 3과 관련된 정보에 기반하여 SSC 모드 3으로 설정된 PDU 세션 1의 수립이 완료된 것으로 판단할 수 있다. 일예로, 네트워크로부터 수신한 제어 정보는 PDU 수립 수락과 관련된 정보, PDU 세션의 식별 정보, SSC 모드 또는 IP 주소 1(또는 IP 프리픽스 1) 중 적어도 하나와 관련된 정보를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1103에서, PDU 세션의 변경에 기반하여 네트워크에 의해 새롭게 할당된 PDU 세션 2 및 IP 주소 2를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 싱글 호밍(single homing)의 경우, 통신 회로(510)를 통해 네트워크로부터 PDU 세션의 변경과 관련된 정보(예: PDU session modification command)를 수신할 수 있다. 프로세서(500)는 PDU 세션의 변경과 관련된 정보의 수신에 대한 응답 메시지(예: PDU session modification complete)를 네트워크로 전송하도록 통신 회로(510)를 제어할 수 있다. 프로세서(500)는 새로운 PDU 세션의 수립을 위해 PDU 세션의 변경 요청과 관련된 정보(예: PDU session modification request)를 네트워크로 전송하도록 통신 회로(510)를 제어할 수 있다. 프로세서(500)는 네트워크로부터 수신한 PDU 세션의 변경 요청과 관련된 정보에 대한 응답 신호에 기반하여 SSC 모드 3으로 설정된 PDU 세션 2의 수립이 완료된 것으로 판단할 수 있다. 일예로, PDU 세션의 변경과 관련된 정보는 PDU 세션 1의 IP 주소 1(또는 IP 프리픽스 1)의 유효 시한(valid lifetime), PDU 세션 2 또는 PDU 세션 2의 IP 주소 2(또는 IP 프리픽스 2)와 관련된 정보를 포함할 수 있다. 일예로, PDU 세션의 변경 요청과 관련된 정보는 UPF의 변경에 기반하여 새롭게 수립하기 위한 PDU 세션 2의 식별 정보를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1105에서, SSC 모드 3로 설정된 PDU 세션의 변경에 기반하여 할당된 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE(quality of experience)를 확인할 수 있다. 일예로, PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE는 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT(round trip time), 경로 손실(path loss) 또는 처리율(throughput) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1에 기반하여 TCP(transmission control protocol) 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 PDU 세션 1과 관련된 RTT로 판단할 수 있다. 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 2에 기반하여 TCP 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 PDU 세션 2와 관련된 RTT로 판단할 수 있다.
일 실시예에 따르면, 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1에 기반하여 QUIC와 관련된 초기 패킷(initial packet)을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 PDU 세션 1과 관련된 RTT로 판단할 수 있다. 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 2에 기반하여 QUIC와 관련된 초기 패킷을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 PDU 세션 2와 관련된 RTT로 판단할 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 1를 사용하여 ICMP의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 PDU 세션 1과 관련된 RTT로 판단할 수 있다. 프로세서(500)는 IP 주소 2를 사용하여 ICMP의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 PDU 세션 2와 관련된 RTT로 판단할 수 있다.
일 실시예에 따르면, PDU 세션 1 및/또는 PDU 세션 2와 관련된 RTT는 TCP 동기 신호에 기반한 RTT, QUIC와 관련된 초기 패킷에 기반한 RTT 또는 핑 요청 신호에 기반한 RTT 중 적어도 하나의 조합으로 결정될 수도 있다. 예를 들어, PDU 세션 1 및/또는 PDU 세션 2와 관련된 RTT는 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 포그라운드 어플리케이션 프로그램과 관련된 서버에 접속하는 경우의 RTT를 포함할 수 있다. 예를 들어, PDU 세션 1 및/또는 PDU 세션 2와 관련된 RTT는 PDU 세션 1 및/또는 PDU 세션 2를 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 각각과 관련된 서버에 접속하는 경우의 RTT의 평균을 포함할 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램과 관련된 서버를 통해 PDU 세션 1과 관련된 RTT를 검출(또는 측정)할 수 있다. 프로세서(500)는 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 DNS(domain name system) 사전 분석(pre-resolving)을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버(또는 서버의 IP 주소)를 확인할 수 있다. 프로세서(500)는 IP 주소 2(또는 PDU 세션 2)를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 PDU 세션 2와 관련된 RTT를 검출(또는 측정)할 수 있다. 일예로, IP 주소 2(또는 PDU 세션 2)를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버는 IP 주소 1(또는 PDU 세션 1)을 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버와 동일하거나 또는 상이할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1107에서, PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE가 지정된 전환 조건을 만족하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 2와 관련된 RTT와 PDU 세션 1과 관련된 RTT에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 PDU 세션 2와 관련된 RTT로부터 PDU 세션 1과 관련된 RTT의 차이가 지정된 제 1 기준 값 이하인 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 PDU 세션 2와 관련된 RTT로부터 PDU 세션 1과 관련된 RTT의 차이가 지정된 제 1 기준 값을 초과하는 상태를 포함할 수 있다. 일예로, PDU 세션 1의 유효 시한이 존재하는 상태는 PDU 세션 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1과 관련된 패킷 손실에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 PDU 세션 1과 관련된 패킷 손실이 지정된 기준 손실을 초과하는 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 PDU 세션 1과 관련된 패킷 손실이 지정된 기준 손실 이하인 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE가 지정된 전환 조건을 만족하지 않는 경우(예: 동작 1107의 '아니오'), 데이터 경로의 전환을 위한 일 실시예를 종료할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE가 지정된 전환 조건을 만족하지 않는 경우, PDU 세션 1의 데이터 통신의 품질이 PDU 세션 2보다 상대적으로 좋은 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션 1로 데이터 경로를 유지할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 만료되는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE가 지정된 전환 조건을 만족하는 경우(예: 동작 1107의 '예'), 동작 1109에서, PDU 세션 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 상태에서 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE가 지정된 전환 조건을 만족하는 경우, PDU 세션 2의 데이터 통신의 품질이 PDU 세션 1보다 상대적으로 좋거나, 또는 PDU 세션 1 및 PDU 세션 2의 데이터 통신의 품질이 유사한 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 상태에서 PDU 세션 2로 데이터 경로를 전환할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 2로의 데이터 경로 전환에 기반하여 PDU 세션 1의 유효 시한을 갱신할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 경우, 반복적으로 PDU 세션 1의 유효 시간을 갱신할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 만료된 경우, PDU 세션 1을 해제할 수 있다. 일예로, 지정된 간격은 PDU 세션 1의 유효 시한(예: 남은 유효 시한)을 한번에 감소시키기 위한 기준 범위로, PDU 세션 1의 유효 시한(예: 남은 유효 시한)의 절반 또는 고정된 간격을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1111에서, PDU 세션 2를 통해 데이터 통신을 수행할 수 있다.
도 12는 다양한 실시예에 따른 전자 장치에서 RTT에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도(1200)이다. 일 실시예에 따르면, 도 12의 적어도 일부는 도 11의 동작 1105 내지 동작 1111의 상세한 설명을 포함할 수 있다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. 일예로, 도 12의 전자 장치는 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101) 일 수 있다.
도 12를 참조하는 다양한 실시예에 따르면, 전자 장치(예: 도 1의 프로세서(120) 또는 도 5의 프로세서(500))는 SSC 모드 3으로 설정된 PDU 세션의 변경에 기반하여 PDU 세션 1 및 PDU 세션 2가 할당된 경우(예: 도 11의 동작 1103), 동작 1201에서, PDU 세션 1 및 PDU 세션 2와 관련된 RTT를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 포그라운드 어플리케이션 프로그램과 관련된 서버에 접속하는 경우의 RTT를 검출(또는 측정)할 수 있다. 일예로, 포그라운드 어플리케이션 프로그램은 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 전자 장치(101)의 디스플레이(미 도시)의 최상단에 GUI(graphic user interface)가 표시된 어플리케이션 프로그램을 나타낼 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 전자 장치(101)에서 실행되는 어플리케이션 프로그램들과 관련된 서버에 접속하는 경우의 RTT의 평균을 검출(또는 측정)할 수 있다. 일예로, 전자 장치(101)에서 실행되는 어플리케이션 프로그램은 어플리케이션 프로그램의 메시지를 송신 및/또는 수신하기 위한 소켓이 열린(또는 활성화된) 어플리케이션 프로그램을 포함할 수 있다.
일 실시예에 따르면, PDU 세션 1 및/또는 PDU 세션 2와 관련된 RTT는 어플리케이션 프로그램과 관련된 서버로 TCP 동기 신호, QUIC와 관련된 초기 패킷 또는 핑 요청 신호 중 적어도 하나에 기반하여 결정(또는 측정)될 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램과 관련된 서버를 통해 PDU 세션 1과 관련된 RTT를 검출(또는 측정)할 수 있다. 프로세서(500)는 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 DNS 사전 분석을 통해 IP 주소 2(또는 PDU 세션 2)를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버(또는 서버의 IP 주소)를 확인할 수 있다. 프로세서(500)는 IP 주소 2(또는 PDU 세션 2)를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 PDU 세션 2와 관련된 RTT를 검출(또는 측정)할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1203에서, PDU 세션 1 및 PDU 세션 2와 관련된 RTT가 지정된 전환 조건을 만족하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 2와 관련된 RTT와 PDU 세션 1과 관련된 RTT에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 PDU 세션 2와 관련된 RTT로부터 PDU 세션 1과 관련된 RTT의 차이가 지정된 제 1 기준 값 이하인 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 PDU 세션 2와 관련된 RTT로부터 PDU 세션 1과 관련된 RTT의 차이가 지정된 제 1 기준 값을 초과하는 상태를 포함할 수 있다. 일예로, PDU 세션 1의 유효 시한이 존재하는 상태는 PDU 세션 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1 및 PDU 세션 2와 관련된 RTT가 지정된 전환 조건을 만족하는 경우(예: 동작 1203의 '예'), 동작 1205에서, PDU 세션 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1 및 PDU 세션 2와 관련된 RTT가 지정된 전환 조건을 만족하는 경우, PDU 세션 2의 데이터 통신의 품질이 PDU 세션 1보다 상대적으로 좋거나, 또는 PDU 세션 1 및 PDU 세션 2의 데이터 통신의 품질이 유사한 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 2로 데이터 경로를 전환할 수 있다. 프로세서(500))는 데이터 경로의 전환에 기반하여 PDU 세션 2를 통해 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1207에서, PDU 세션 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1209에서, PDU 세션 1의 갱신된 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 갱신된 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 1209의 '아니오'), 동작 1207에서, PDU 세션 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 경우, 반복적으로 PDU 세션 1의 유효 시간을 갱신할 수 있다. 일예로, PDU 세션 1의 유효 시간의 갱신은 지정된 주기에 기반하여 수행될 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 갱신된 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 1209의 '예'), 동작 1211에서, PDU 세션 1을 해제할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1과 관련된 어플리케이션 프로그램의 소켓을 닫음으로써 PDU 세션 1을 해제할 수 있다. 일예로, PDU 세션 1의 유효 시간(또는 갱신된 유효 시한)이 도래하는 상태는 PDU 세션 1의 유효 시간이 지정된 최소 유효 시한 이하인 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1 및 PDU 세션 2와 관련된 RTT가 지정된 전환 조건을 만족하지 않는 경우(예: 동작 1203의 '아니오'), 동작 1213에서, PDU 세션 1의 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1 및 PDU 세션 2와 관련된 RTT가 지정된 전환 조건을 만족하지 않는 경우, PDU 세션 1로 데이터 경로를 유지할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 1213의 '아니오'), 동작 1201에서, PDU 세션 1 및 PDU 세션 2와 관련된 RTT를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 PDU 세션 1 및 PDU 세션 2와 관련된 RTT를 확인 및 비교하여 PDU 세션 2로 데이터 경로를 전환할 수 있는지 확인할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 경우, 지정된 제 1 기준 시간 동안 PDU 세션 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 1213의 '예'), 동작 1211에서, PDU 세션 1을 해제할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 만료되는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
도 13은 다양한 실시예에 따른 전자 장치에서 패킷 손실에 기반하여 데이터 경로의 전환 시점을 설정하기 위한 흐름도(1300)이다. 일 실시예에 따르면, 도 13의 적어도 일부는 도 11의 동작 1105 내지 동작 1111의 상세한 설명을 포함할 수 있다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. 일예로, 도 13의 전자 장치는 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101) 일 수 있다.
도 13을 참조하는 다양한 실시예에 따르면, 전자 장치(예: 도 1의 프로세서(120) 또는 도 5의 프로세서(500))는 SSC 모드 3로 설정된 PDU 세션의 변경에 기반하여 PDU 세션 1 및 PDU 세션 2가 할당된 경우(예: 도 11의 동작 1103), 동작 1301에서, PDU 세션 1과 관련된 패킷 손실을 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 지정된 시간 동안 PDU 세션 1에 기반하여 송신 및/또는 수신하는 데이터(패킷)의 손실률을 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1303에서, PDU 세션 1과 관련된 패킷 손실이 지정된 전환 조건을 만족하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1과 관련된 패킷 손실이 지정된 기준 손실을 초과하는 경우, 지정된 전환 조건을 만족하는 것으로 판단할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1과 관련된 패킷 손실이 지정된 기준 손실 이하인 경우, 지정된 전환 조건을 만족하지 않는 것으로 판단할 수 있다. 일예로, PDU 세션 1의 유효 시한이 존재하는 상태는 PDU 세션 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1과 관련된 패킷 손실이 지정된 전환 조건을 만족하는 경우(예: 동작 1303의 '예'), 동작 1305에서, PDU 세션 2로 데이터 경로를 전환할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1과 관련된 패킷 손실이 지정된 전환 조건을 만족하는 경우, PDU 세션 1의 데이터 통신의 품질이 상대적으로 저하된 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 상태에서 PDU 세션 2로 데이터 경로를 전환할 수 있다. 프로세서(500))는 데이터 경로의 전환에 기반하여 PDU 세션 2를 통해 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1307에서, PDU 세션 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1309에서, PDU 세션 1의 갱신된 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 갱신된 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 1309의 '아니오'), 동작 1307에서, PDU 세션 1의 유효 시한(또는 해제 시점)을 갱신할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 경우, 반복적으로 PDU 세션 1의 유효 시간을 갱신할 수 있다. 일예로, PDU 세션 1의 유효 시간의 갱신은 지정된 주기에 기반하여 수행될 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 갱신된 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 1309의 '예'), 동작 1311에서, PDU 세션 1을 해제할 수 있다. 일예로, PDU 세션 1의 해제는 PDU 세션 1과 관련된 어플리케이션 프로그램의 소켓을 닫는 일련의 동작을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1과 관련된 패킷 손실이 지정된 전환 조건을 만족하지 않는 경우(예: 동작 1303의 '아니오'), 동작 1313에서, PDU 세션 1의 유효 시한(또는 종료 시점)이 도래하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1과 관련된 패킷 손실이 지정된 전환 조건을 만족하지 않는 경우, PDU 세션 1로 데이터 경로를 유지할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 유효 시한(또는 종료 시점)이 도래하지 않은 경우(예: 동작 1313의 '아니오'), 동작 1301에서, PDU 세션 1과 관련된 패킷 손실을 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 PDU 세션 1의 데이터 경로가 유지되는 상태에서 지정된 주기에 기반하여 PDU 세션 1과 관련된 패킷 손실이 지정된 전환 조건을 만족하는지 확인하여 PDU 세션 2로 데이터 경로를 전환할 수 있는지 확인할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 PDU 세션 1의 유효 시한(또는 종료 시점)이 도래한 경우(예: 동작 1313의 '예'), 동작 1311에서, PDU 세션 1을 해제할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션 1의 유효 시한이 만료되는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
도 14는 다양한 실시예에 따른 전자 장치에서 싱글 호밍을 이용하여 데이터 경로의 변경을 위한 일예이다.
도 14를 참조하는 다양한 실시예에 따르면, 전자 장치(101)는 SSC 모드 3으로 설정된 PDU(protocol data unit) 세션 1 및 IP 주소 1에 기반하여 UPF 1(450)를 통해 서버와 데이터 통신을 수행할 수 있다(동작 1411). 일 실시예에 따르면, 전자 장치(101)는 IP 주소 1에 기반하여 UPF 1(450)와 PDU 세션 1을 수립할 수 있다. 전자 장치(101)는 UPF 1(450)을 통해 서버와 데이터 통신을 수행할 수 있다(동작 1411). 예를 들어, 전자 장치(101)는 PDU 세션 1로 접속 라우팅되는 경우, IP통신의 소스 IP로 IP 주소 1을 사용할 수 있다.
다양한 실시예에 따르면, SMF(430)는 전자 장치(101)의 위치, UPF 1(450)의 부하(load), 기지국(예: RAN(410))의 연결 정보 또는 전자 장치(101)에서 실행되는 어플리케이션 프로그램의 요구 사항 중 적어도 하나에 기반하여 UPF의 변경(relocation)을 결정할 수 있다(동작 1413). 일 실시예에 따르면, SMF(430)는 전자 장치(101)와의 PDU 세션이 UPF 1(450)을 다른 UPF(예: UPF 2(455))로 변경했을 때 상대적으로 짧은 데이터 전송 경로를 이용할 수 있거나 또는 데이터가 도달하는 시간이 감소하는 전자 장치(101) 및/또는 망사업자에게 이득이 있다고 판단되는 경우, UPF의 변경을 결정할 수 있다.
다양한 실시예에 따르면, SMF(430)는 UPF의 변경을 결정한 경우(동작 1413), PDU 세션의 변경과 관련된 정보(예: PDU session modification command)를 전자 장치(101)로 전송할 수 있다(동작 1415). 일예로, PDU 세션의 변경과 관련된 정보는 PDU 세션 1의 IP 주소 1(또는 IP 프리픽스 1)의 유효 시한(valid lifetime), PDU 세션 2 또는 PDU 세션 2의 IP 주소 2(또는 IP 프리픽스 2)와 관련된 정보를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 네트워크로부터 PDU 세션의 변경과 관련된 정보의 수신에 기반하여 PDU 세션 2의 수립을 수행할 수 있다(동작 1417). 일 실시예에 따르면, 전자 장치(101)는 PDU 세션의 변경과 관련된 정보에 대한 응답 메시지(예: PDU session modification complete)를 네트워크로 전송할 수 있다. 전자 장치(101)는 새로운 PDU 세션의 수립을 위해 PDU 세션의 변경 요청과 관련된 정보(예: PDU session modification request)를 네트워크로 전송할 수 있다. 전자 장치(101)는 네트워크로부터 수신한 PDU 세션의 변경 요청과 관련된 정보에 대한 응답 신호에 기반하여 SSC 모드 3으로 설정된 PDU 세션 2의 수립이 완료된 것으로 판단할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 PDU 세션 2로 데이터 경로를 전환할 수 있다(동작 1419). 일 실시예에 따르면, 전자 장치(101)는 SSC 모드 3로 설정된 PDU 세션의 변경에 기반하여 수립된 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE(quality of experience)를 확인할 수 있다. 전자 장치(101)는 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE가 지정된 전환 조건을 만족하는 것으로 판단한 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다. 일예로, QoE는 PDU 세션 1 및/또는 PDU 세션 2를 이용하여 통신을 수행하는 경우의 RTT(round trip time), 경로 손실(path loss) 또는 처리율(throughput) 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 전자 장치(101)는 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE가 지정된 전환 조건을 만족하지 않는 것으로 판단한 경우, 지정된 주기에 기반하여 PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE를 확인하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 전자 장치(101)는 PDU 세션 1의 유효 시한이 존재하는 동안 데이터 경로의 전환 여부의 확인 횟수가 지정된 기준 횟수를 초과하는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
일 실시예에 따르면, 전자 장치(101)는 PDU 세션 1의 유효 시한이 존재하는 상태에서 지정된 제 1 기준 시간 동안 PDU 세션 1에 기반한 데이터의 송신 및 수신이 존재하지 않는 경우, PDU 세션 2로 데이터 경로를 전환할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 PDU 세션 1의 유효 시한이 만료되는 경우, PDU 세션 1을 해제할 수 있다(동작 1421). 일 실시예에 따르면, 전자 장치(101)는 PDU 세션 2로의 데이터 경로 전환에 기반하여 PDU 세션 1의 유효 시한을 갱신할 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한을 지정된 간격을 기준으로 감소시킬 수 있다. 예를 들어, 프로세서(500)는 PDU 세션 1의 유효 시한이 존재하는 경우, 반복적으로 PDU 세션 1의 유효 시간을 갱신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 갱신된 PDU 세션 1의 유효 시한이 만료된 경우, PDU 세션 1을 해제할 수 있다.
도 15는 다양한 실시예에 따른 전자 장치에서 데이터 경로의 변경을 위한 흐름도(1500)이다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. 일예로, 도 15의 전자 장치는 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101) 일 수 있다.
도 15를 참조하는 다양한 실시예에 따르면, 전자 장치(예: 도 1의 프로세서(120) 또는 도 5의 프로세서(500))는 동작 1501에서, SSC 모드 3으로 설정된 PDU(protocol data unit) 세션 및 네트워크로부터 할당받은 IP 주소 1에 기반하여 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서(500)는 데이터 통신과 관련된 이벤트의 발생에 기반하여 서버(또는 콘텐트 서버)로의 접속 요청과 관련된 메시지를 네트워크(예: 도 4의 RAN(410))로 전송하도록 통신 회로(510)를 제어할 수 있다. 프로세서(500)는 접속 요청과 관련된 메시지의 전송에 대한 응답으로 네트워크로부터 수신한 제어 정보에 기반하여 데이터 통신을 위한 PDU 세션을 수립하도록 통신 회로(510)를 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1503에서, PDU 세션과 관련된 UPF의 변경에 기반하여 네트워크에 의해 PDU 세션에 새롭게 할당된 IP 주소 2를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 멀티 호밍의 경우, 통신 회로(510)를 통해 네트워크로부터 우선 시한이 제 1 값(예: '0')으로 설정된 IP 프리픽스 1과 관련된 정보 및 IP 프리픽스 2와 관련된 정보의 수신에 기반하여 UPF가 변경된 것으로 판단할 수 있다. 프로세서(500)는 네트워크로부터 수신한 IP 프리픽스 2에 기반하여 PDU 세션의 IP 주소 2를 생성할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1505에서, SSC 모드 3로 설정된 PDU 세션의 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE(quality of experience)를 확인할 수 있다. 일예로, QoE는 RTT(round trip time), 경로 손실(path loss) 또는 처리율(throughput) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1에 기반한 TCP(transmission control protocol) 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 IP 주소 1을 사용하는 경우의 RTT로 판단할 수 있다. 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 2에 기반한 TCP 동기 신호를 전송한 시점부터 서버로부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간을 IP 주소 2를 사용하는 경우의 RTT로 판단할 수 있다. 일 실시예에 따르면, 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 1에 기반한 QUIC와 관련된 초기 패킷(initial packet)을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 IP 주소 1을 사용하는 경우의 RTT로 판단할 수 있다. 프로세서(500)는 어플리케이션 프로그램과 관련된 서버로 IP 주소 2에 기반한 QUIC와 관련된 초기 패킷(initial packet)을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 시간을 IP 주소 2를 사용하는 경우의 RTT로 판단할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1를 사용하여 ICMP의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 IP 주소 1을 사용하는 경우의 RTT로 판단할 수 있다. 프로세서(500)는 IP 주소 2를 사용하여 ICMP의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 시간을 IP 주소 2를 사용하는 경우의 RTT로 판단할 수 있다. 일 실시예에 따르면, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 TCP 동기 신호에 기반한 RTT, QUIC와 관련된 초기 패킷에 기반한 RTT 또는 핑 요청 신호에 기반한 RTT 중 적어도 하나의 조합으로 결정될 수도 있다. 예를 들어, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들 중 포그라운드 어플리케이션 프로그램에 기반하여 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT를 포함할 수 있다. 예를 들어, IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT는 전자 장치(101)에서 실행되는 어플리케이션 프로그램들의 IP 주소 1 및/또는 IP 주소 2를 사용하는 경우의 RTT의 평균을 포함할 수 있다.
일 실시예에 따르면, 프로세서(500)는 전자 장치(101)에서 실행되는 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 1을 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 프로세서(500)는 IP 주소 2(또는 IP 프리픽스 2)의 할당에 기반하여 DNS 사전 분석을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버(또는 서버의 IP 주소)를 확인할 수 있다. 프로세서(500)는 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 2를 사용하는 경우의 RTT를 검출(또는 측정)할 수 있다. 일예로, IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버는 IP 주소 1을 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버와 동일하거나 또는 상이할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1507에서, IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1의 유효 시한이 설정되지 않은 경우, IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE에 기반하여 IP 주소 1 또는 IP 주소 2의 데이터 경로를 선택적으로 사용할 수 있다. 예를 들어, PDU 세션의 IP 주소 1의 유효 시한이 설정되지 않은 상태는 네트워크로부터 수신한 PCO 메시지를 통해 확인될 수 있다. 예를 들어, PDU 세션의 IP 주소 1의 유효 시한이 설정되지 않은 상태는 네트워크로부터 수신한 PDU 세션의 IP 주소 1의 유효 시한이 지정된 값(예: '-1')을 갖는 경우에 기반하여 확인될 수 있다.
일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 2를 사용하는 경우의 RTT와 IP 주소 1을 사용하는 경우의 RTT에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값 이하인 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 제 1 기준 값을 초과하는 상태를 포함할 수 있다. 일예로, PDU 세션의 IP 주소 1의 유효 시한이 존재하는 상태는 PDU 세션의 IP 주소 1의 유효 시한이 만료되기 이전의 상태를 포함할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1의 유효 시한이 존재하는 동안 IP 주소 1을 사용하는 경우의 패킷 손실에 기반하여 지정된 전환 조건을 만족하는지 확인할 수 있다. 예를 들어, 지정된 전환 조건을 만족하는 상태는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실을 초과하는 상태를 포함할 수 있다. 예를 들어, 지정된 전환 조건을 만족하지 않는 상태는 IP 주소 1을 사용하는 경우의 패킷 손실이 지정된 기준 손실 이하인 상태를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하는 경우(예: 동작 1507의 '예'), 동작 1509에서, PDU 세션의 IP 주소 2에 기반하여 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하는 경우, IP 주소 2의 데이터 통신의 품질이 IP 주소 1보다 상대적으로 좋거나, 또는 IP 주소 1 및 IP 주소 2의 데이터 통신의 품질이 유사한 것으로 판단할 수 있다. 예를 들어, 프로세서(500)는 데이터 경로가 PDU 세션의 IP 주소 1에 설정된 경우, PDU 세션의 IP 주소 2로 데이터 경로를 전환하여 PDU 세션의 IP 주소 2에 기반하여 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다. 예를 들어, 프로세서(500)는 데이터 경로가 PDU 세션의 IP 주소 2에 설정된 경우, PDU 세션의 IP 주소 2의 데이터 경로를 통해 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하지 않는 경우(예: 동작 1507의 '아니오'), 동작 1511에서, PDU 세션의 IP 주소 1에 기반하여 데이터 통신을 수행할 수 있다. 일 실시예에 따르면, 프로세서(500)는 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE가 지정된 전환 조건을 만족하지 않는 경우, IP 주소 1의 데이터 통신의 품질이 IP 주소 2보다 상대적으로 좋은 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션의 IP 주소 1의 데이터 경로를 통해 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다. 예를 들어, 프로세서(500)는 데이터 경로가 PDU 세션의 IP 주소 1에 설정된 경우, PDU 세션의 IP 주소 1로 데이터 경로를 전환하여 PDU 세션의 IP 주소 1에 기반하여 데이터 통신을 수행하도록 통신 회로(510)를 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 동작 1513에서, 네트워크로부터 IP 주소 1 또는 IP 주소 2의 해제 시점 정보가 수신되는지 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 네트워크로부터 IP 주소 1 또는 IP 주소 2의 해제 시점 정보를 포함하는 RA(router advertisement) 메시지가 수신되는지 확인할 수 있다. 일예로, IP 주소 1 또는 IP 주소 2의 해제 시점 정보는 특정 IP 주소(또는 IP 프리픽스)(예: IP 주소 1 또는 IP 주소 2)의 우선 시한이 제 1 값(예: '0')으로 설정되고, 유효 시한이 제 1 값과 상이한 제 2 값으로 설정된 정보를 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 네트워크로부터 IP 주소 1 또는 IP 주소 2의 해제 시점 정보가 수신되지 않은 경우(예: 동작 1513의 '아니오'), 동작 1505에서, PDU 세션의 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 네트워크로부터 IP 주소 1 또는 IP 주소 2의 해제 시점 정보가 수신되지 않는 경우, PDU 세션의 IP 주소 1 또는 IP 주소 2를 선택적으로 사용할 수 있는 것으로 판단할 수 있다. 프로세서(500)는 PDU 세션의 IP 주소 1 또는 IP 주소 2의 선택을 위해 PDU 세션의 IP 주소 1 및/또는 IP 주소 2를 사용하여 통신을 수행하는 경우의 QoE를 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500))는 네트워크로부터 IP 주소 1 또는 IP 주소 2의 해제 시점 정보를 수신한 경우(예: 동작 1513의 '예'), 동작 1515에서, 네트워크로부터 수신한 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)의 해제 시점이 도래하는지 확인할 수 있다. 일예로, 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)의 해제 시점은 특정 IP 주소의 유효 시한의 만료 시점에 기반하여 설정될 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500)) 네트워크로부터 수신한 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)의 해제 시점이 도래하지 않은 경우(예: 동작 1515의 '아니오'), 동작 1515에서, 네트워크로부터 수신한 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)의 해제 시점이 도래하는지 다시 확인할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 프로세서(120 또는 500)) 네트워크로부터 수신한 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)의 해제 시점이 도래한 경우(예: 동작 1515의 '예'), 동작 1517에서, 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)를 해제할 수 있다. 일 실시예에 따르면, 프로세서(500)는 특정 IP 주소(예: IP 주소 1 또는 IP 주소 2)의 해제에 기반하여 특정 IP 주소와 상이한 다른 IP 주소(예: IP 주소 2 또는 IP 주소 1)의 데이터 경로를 사용할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 싱글 호밍에서 PDU 세션 1의 IP 주소 1의 유효 시한이 설정되지 않은 경우, PDU 세션 1 및/또는 PDU 세션 2와 관련된 QoE에 기반하여 PDU 세션 1 또는 PDU 세션 2의 데이터 경로를 선택적으로 사용할 수도 있다. 일 실시예에 따르면, 프로세서(500)는 네트워크로부터 수신한 PCO 메시지를 통해 PDU 세션 1의 IP 주소 1의 유효 시한이 설정되지 않은 상태를 확인할 수 있다. 일 실시예에 따르면, 프로세서(500)는 네트워크로부터 수신한 PDU 세션 1의 IP 주소 1의 유효 시한이 지정된 값(예: '-1')을 갖는 경우, PDU 세션 1의 IP 주소 1의 유효 시한이 설정되지 않은 상태인 것으로 판단할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101))의 동작 방법은 PDU 세션 및 IP 주소 1을 통해 데이터 통신을 수행하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 데이터 경로의 변경과 관련된 PDU 세션의 IP 주소 2를 확인하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 IP 주소 1을 사용하는 경우의 RTT와 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 IP 주소 1의 유효 시한이 만료되기 이전에 IP 주소 1을 사용하는 경우의 RTT와 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 IP 주소 2로 데이터 경로를 변경하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 IP 주소 2로 데이터 경로의 변경에 기반하여 IP 주소 1을 해제하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, RTT를 확인하는 동작은, 네트워크와 SSC(session and service continuity) 모드 3로 설정된 경우, PDU 세션의 IP 주소 1 및 IP 주소 2가 할당된 상태에서 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 데이터 통신을 수행하는 동작은, 접속 요청과 관련된 메시지를 네트워크로 전송하는 동작과 네트워크로부터 수신한 PDU 수립 수락과 관련된 정보에 포함된 SSC 모드 3과 관련된 정보에 기반하여 SSC 모드 3으로 설정된 PDU 세션을 수립하는 동작, 및 SSC 모드 3으로 설정된 PDU 세션을 통해 데이터 통신을 수행하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, RTT를 확인하는 동작은, 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 중 기준 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, RTT를 확인하는 동작은, 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 각각과 관련된 적어도 하나의 서버를 통해 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, IP 주소 1 또는 IP 주소 2 중 적어도 하나를 사용하는 경우의 RTT는, 전자 장치에서 실행 중인 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 TCP 동기 신호를 전송한 시점부터 TCP 동기 신호의 응답 신호(ACK)를 수신한 시점까지의 경과 시간, 전자 장치에서 실행 중인 어플리케이션 프로그램과 관련된 서버로 IP 주소 1 또는 IP 주소 2에 기반하여 QUIC와 관련된 초기 패킷(initial packet)을 전송한 시점부터 초기 패킷의 응답 신호(ACK)를 수신한 시점까지의 경과 시간 또는 ICMP의 핑(ping) 요청 신호를 전송하는 시점부터 핑 응답 신호를 수신하는 시점까지의 경과 시간 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따르면, RTT를 확인하는 동작은, IP 주소 2의 확인에 기반하여 DNS(domain name system) 사전 분석(pre-resolving)을 통해 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버하는 동작, 및 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, IP 주소 2로 데이터 경로를 전환하는 동작은, IP 주소 1의 유효 시한이 만료되기 이전에 IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 기준 값 이하인 경우, IP 주소 2로 데이터 경로를 전환하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치의 동작 방법은, IP 주소 2를 사용하는 경우의 RTT 및 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 기준 값을 초과하는 경우, IP 주소 1의 데이터 경로를 유지하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치의 동작 방법은, IP 주소 1의 유효 시한이 만료되기 이전에 IP 주소 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 반복적으로 IP 주소 1을 사용하는 경우의 RTT 및 IP 주소 2를 사용하는 경우의 RTT에 기반하여 IP 주소 2로 데이터 경로의 전환 여부를 판단하는 동작, 및 IP 주소 2로 데이터 경로의 전환 여부의 판단 횟수가 지정된 횟수를 초과하는 경우, IP 주소 2로 데이터 경로를 전환하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, IP 주소 1을 해제하는 동작은, IP 주소 2로 데이터 경로의 변경에 기반하여 IP 주소 1의 유효 시한을 축소하는 동작, 및 축소된 IP 주소 1의 유효 시한의 만료에 기반하여 IP 주소 1을 해제하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 도 1, 도 2, 도 3, 도 4 또는 도 5의 전자 장치(101))의 동작 방법은 PDU 세션 1 및 IP 주소 1을 통해 데이터 통신을 수행하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 PDU 세션의의 변경에 기반하여 PDU 세션 2 및 IP 주소 2를 확인하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 PDU 세션 1 및 PDU 세션 2가 할당된 상태에서 PDU 세션 1과 관련된 RTT와 PDU 세션 2와 관련된 RTT를 확인하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 PDU 세션 1의 유효 시한이 만료되기 이전에 PDU 세션 1과 관련된 RTT와 PDU 세션 2와 관련된 RTT의 비교 결과에 기반하여 PDU 세션 2로 데이터 경로를 변경하는 동작을 포함할 수 있다. 일 실시예에 따르면, 전자 장치의 동작 방법은 PDU 세션 2로 데이터 경로의 변경에 기반하여 PDU 세션 1을 해제하는 동작을 포함할 수 있다.
본 명세서와 도면에 개시된 본 발명의 실시예는 본 발명의 실시예에 따른 기술 내용을 쉽게 설명하고 본 발명의 실시예의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 실시예의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 다양한 실시예의 범위는 여기에 개시된 실시예 이외에도 본 발명의 다양한 실시예의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 다양한 실시예의 범위에 포함되는 것으로 해석되어야 한다.

Claims (15)

  1. 전자 장치에 있어서,
    통신 회로, 및
    상기 통신 회로와 작동적으로 연결된 프로세서를 포함하며,
    상기 프로세서는,
    PDU(protocol data unit) 세션 및 IP(internet protocol) 주소 1을 통해 데이터 통신을 수행하고,
    데이터 경로의 변경과 관련된 상기 PDU 세션의 IP 주소 2를 확인하고,
    상기 PDU 세션의 상기 IP 주소 1 및 상기 IP 주소 2가 할당된 상태에서 상기 IP 주소 1을 사용하는 경우의 RTT와 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하고,
    상기 IP 주소 1의 유효 시한(valid lifetime)이 만료되기 이전에 상기 IP 주소 1을 사용하는 경우의 RTT와 상기 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 상기 IP 주소 2로 데이터 경로를 변경하고,
    상기 IP 주소 2로 데이터 경로의 변경에 기반하여 상기 IP 주소 1을 해제하는 전자 장치.
  2. 제 1항에 있어서,
    상기 프로세서는, 상기 통신 회로를 통해, 접속 요청과 관련된 메시지를 네트워크로 전송하고,
    상기 통신 회로를 통해, 상기 네트워크로부터 수신한 PDU 수립 수락과 관련된 정보에 포함된 SSC(session and service continuity) 모드 3과 관련된 정보에 기반하여 상기 SSC 모드 3으로 설정된 상기 PDU 세션을 수립하는 전자 장치.
  3. 제 1항에 있어서,
    상기 프로세서는, 상기 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 중 기준 어플리케이션 프로그램과 관련된 서버를 통해 상기 IP 주소 1을 사용하는 경우의 RTT 및 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하는 전자 장치.
  4. 제 1항에 있어서,
    상기 프로세서는, 상기 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 각각과 관련된 적어도 하나의 서버를 통해 상기 IP 주소 1을 사용하는 경우의 RTT 및 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하는 전자 장치.
  5. 제 1항에 있어서,
    상기 프로세서는, 상기 IP 주소 2의 확인에 기반하여 DNS(domain name system) 사전 분석(pre-resolving)을 통해 상기 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버하고,
    상기 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하는 전자 장치.
  6. 제 1항에 있어서,
    상기 프로세서는, 상기 IP 주소 1의 유효 시한이 만료되기 이전에 상기 IP 주소 2를 사용하는 경우의 RTT로부터 상기 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 기준 값 이하인 경우, 상기 IP 주소 2로 데이터 경로를 전환하는 전자 장치.
  7. 제 6항에 있어서,
    상기 프로세서는, 상기 IP 주소 2를 사용하는 경우의 RTT로부터 상기 IP 주소 1을 사용하는 경우의 RTT의 차이가 상기 지정된 기준 값을 초과하는 경우, 상기 IP 주소 1의 데이터 경로를 유지하는 전자 장치.
  8. 제 7항에 있어서,
    상기 프로세서는, 상기 IP 주소 1의 유효 시한이 만료되기 이전에 상기 IP 주소 1의 데이터 경로가 유지되는 경우, 지정된 주기에 기반하여 반복적으로 상기 IP 주소 1을 사용하는 경우의 RTT 및 상기 IP 주소 2를 사용하는 경우의 RTT에 기반하여 상기 IP 주소 2로 데이터 경로의 전환 여부를 판단하고,
    상기 IP 주소 2로 데이터 경로의 전환 여부의 판단 횟수가 지정된 횟수를 초과하는 경우, 상기 IP 주소 2로 데이터 경로를 전환하는 전자 장치.
  9. 제 1항에 있어서,
    상기 프로세서는, 상기 IP 주소 2로 데이터 경로의 변경에 기반하여 상기 IP 주소 1의 유효 시한을 축소하고,
    상기 축소된 상기 IP 주소 1의 유효 시한의 만료에 기반하여 상기 IP 주소 1을 해제하는 전자 장치.
  10. 전자 장치의 동작 방법에 있어서,
    PDU(protocol data unit) 세션 및 IP(internet protocol) 주소 1을 통해 데이터 통신을 수행하는 동작,
    데이터 경로의 변경과 관련된 상기 PDU 세션의 IP 주소 2를 확인하는 동작,
    상기 PDU 세션의 상기 IP 주소 1 및 상기 IP 주소 2가 할당된 상태에서 상기 IP 주소 1을 사용하는 경우의 RTT(round trip time)와 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작,
    상기 IP 주소 1의 유효 시한(valid lifetime)이 만료되기 이전에 상기 IP 주소 1을 사용하는 경우의 RTT와 상기 IP 주소 2를 사용하는 경우의 RTT의 비교 결과에 기반하여 상기 IP 주소 2로 데이터 경로를 변경하는 동작, 및
    상기 IP 주소 2로 데이터 경로의 변경에 기반하여 상기 IP 주소 1을 해제하는 동작을 포함하는 방법.
  11. 제 10항에 있어서,
    상기 데이터 통신을 수행하는 동작은,
    접속 요청과 관련된 메시지를 네트워크로 전송하는 동작,
    상기 네트워크로부터 수신한 PDU 수립 수락과 관련된 정보에 포함된 SSC(session and service continuity) 모드 3과 관련된 정보에 기반하여 상기 SSC 모드 3으로 설정된 상기 PDU 세션을 수립하는 동작, 및
    상기 SSC 모드 3으로 설정된 상기 PDU 세션을 통해 데이터 통신을 수행하는 동작을 포함하는 방법.
  12. 제 10항에 있어서,
    상기 RTT를 확인하는 동작은, 상기 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 중 기준 어플리케이션 프로그램과 관련된 서버를 통해 상기 IP 주소 1을 사용하는 경우의 RTT 및 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함하는 방법.
  13. 제 10항에 있어서,
    상기 RTT를 확인하는 동작은, 상기 전자 장치에서 실행 중인 복수의 어플리케이션 프로그램들 각각과 관련된 적어도 하나의 서버를 통해 상기 IP 주소 1을 사용하는 경우의 RTT 및 상기 IP 주소 2을 사용하는 경우의 RTT를 확인하는 동작을 포함하는 방법.
  14. 제 10항에 있어서,
    상기 RTT를 확인하는 동작은,
    상기 IP 주소 2의 확인에 기반하여 DNS(domain name system) 사전 분석(pre-resolving)을 통해 상기 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버하는 동작, 및
    상기 IP 주소 2를 통해 접속하기 위한 어플리케이션 프로그램과 관련된 서버를 통해 상기 IP 주소 2를 사용하는 경우의 RTT를 확인하는 동작을 포함하는 방법.
  15. 제 10항에 있어서,
    상기 IP 주소 2로 데이터 경로를 전환하는 동작은, 상기 IP 주소 1의 유효 시한이 만료되기 이전에 상기 IP 주소 2를 사용하는 경우의 RTT로부터 상기 IP 주소 1을 사용하는 경우의 RTT의 차이가 지정된 기준 값 이하인 경우, 상기 IP 주소 2로 데이터 경로를 전환하는 동작을 포함하는 방법.
PCT/KR2023/013582 2022-10-17 2023-09-11 무선통신시스템에서 데이터 통신을 위한 전자 장치 및 그의 동작 방법 Ceased WO2024085445A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP23880025.4A EP4572521A4 (en) 2022-10-17 2023-09-11 ELECTRONIC DEVICE FOR DATA COMMUNICATION IN A WIRELESS COMMUNICATION SYSTEM, AND ITS OPERATING METHOD
US18/467,132 US20240137325A1 (en) 2022-10-17 2023-09-14 Electronic device for data communication in wireless communication system and method for operating same

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20220132859 2022-10-17
KR10-2022-0132859 2022-10-17
KR1020220167945A KR20240053493A (ko) 2022-10-17 2022-12-05 무선통신시스템에서 데이터 통신을 위한 전자 장치 및 그의 동작 방법
KR10-2022-0167945 2022-12-05

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/467,132 Continuation US20240137325A1 (en) 2022-10-17 2023-09-14 Electronic device for data communication in wireless communication system and method for operating same

Publications (1)

Publication Number Publication Date
WO2024085445A1 true WO2024085445A1 (ko) 2024-04-25

Family

ID=90737813

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/013582 Ceased WO2024085445A1 (ko) 2022-10-17 2023-09-11 무선통신시스템에서 데이터 통신을 위한 전자 장치 및 그의 동작 방법

Country Status (3)

Country Link
US (1) US20240137325A1 (ko)
EP (1) EP4572521A4 (ko)
WO (1) WO2024085445A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180088248A (ko) * 2017-01-26 2018-08-03 삼성전자주식회사 다중 경로 전송 시스템의 데이터 전송 방법 및 장치
KR20210099386A (ko) * 2020-02-04 2021-08-12 한국전자통신연구원 동시 다중 액세스 네트워크에서 액세스 트래픽 스티어링 방법 및 장치
KR20210135962A (ko) * 2013-07-04 2021-11-16 한국전자통신연구원 이동 통신 시스템에서 복수 연결을 지원하기 위한 제어 방법 및 복수 연결 지원 장치
US20220166724A1 (en) * 2018-06-27 2022-05-26 Nokia Solutions And Networks Oy Application-based traffic control in multipath networks

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103532841A (zh) * 2013-10-23 2014-01-22 国家电网公司 一种用于电力通信异构网络环境的路径切换方法
KR102289879B1 (ko) * 2017-03-20 2021-08-13 삼성전자 주식회사 셀룰러망에서 세션의 다양한 ssc 모드 지원을 위한 upf 변경 방안
US20210368373A1 (en) * 2019-02-14 2021-11-25 Lg Electronics Inc. Ma pdu session method and device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210135962A (ko) * 2013-07-04 2021-11-16 한국전자통신연구원 이동 통신 시스템에서 복수 연결을 지원하기 위한 제어 방법 및 복수 연결 지원 장치
KR20180088248A (ko) * 2017-01-26 2018-08-03 삼성전자주식회사 다중 경로 전송 시스템의 데이터 전송 방법 및 장치
US20220166724A1 (en) * 2018-06-27 2022-05-26 Nokia Solutions And Networks Oy Application-based traffic control in multipath networks
KR20210099386A (ko) * 2020-02-04 2021-08-12 한국전자통신연구원 동시 다중 액세스 네트워크에서 액세스 트래픽 스티어링 방법 및 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Procedures for the 5G System (5GS); Stage 2 (Release 17)", 3GPP TS 23.502, no. V17.6.0, 22 September 2022 (2022-09-22), pages 1 - 748, XP052210899 *
See also references of EP4572521A4 *

Also Published As

Publication number Publication date
EP4572521A4 (en) 2025-11-12
EP4572521A1 (en) 2025-06-18
US20240137325A1 (en) 2024-04-25

Similar Documents

Publication Publication Date Title
WO2024071871A1 (ko) 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법
WO2022220436A1 (ko) 네트워크 억세스 동작을 수행하는 전자 장치 및 그 동작 방법
WO2024075925A1 (ko) 복수의 링크를 통해 동일한 데이터를 전송하는 전자 장치 및 전자 장치의 동작 방법
WO2023136453A1 (ko) Wlan을 위한 가용 채널들을 설정하는 방법 및 그 방법을 수행하는 전자 장치
WO2022005149A1 (en) Electronic device for providing call function continuity and operating method thereof
WO2024075993A1 (ko) 패킷 데이터 네트워크 연결을 제어하는 전자 장치 및 그 동작 방법
WO2024085445A1 (ko) 무선통신시스템에서 데이터 통신을 위한 전자 장치 및 그의 동작 방법
WO2024019356A1 (ko) 복수의 링크의 지연 시간에 기반한 동작을 수행하는 전자 장치 및 전자 장치의 동작 방법
WO2023059012A1 (ko) 다른 bss의 외부 전자 장치로부터 수신한 응답 신호에 기반하여 twt 파라미터를 설정하는 전자 장치 및 전자 장치의 동작 방법
WO2023277335A1 (ko) 네트워크 관리 동작을 수행하는 전자 장치 및 그 동작 방법
WO2022231140A1 (ko) 장치 식별 정보를 송신 및/또는 수신하는 전자 장치 및 그 동작 방법
WO2022196898A1 (ko) 통신의 품질을 측정하는 전자 장치 및 전자 장치의 동작 방법
WO2024058375A1 (ko) 멀티 심을 지원하는 전자 장치 및 전자 장치의 동작 방법
WO2024117461A1 (ko) 측정 보고를 전송하는 전자 장치 및 전자 장치의 동작 방법
WO2024053857A1 (ko) 대역폭 부분의 사용률에 기반하여 셀룰러 통신의 전환 여부를 결정하는 전자 장치 및 전자 장치의 동작 방법
WO2025079944A1 (ko) 링크의 응답 메시지 전송 정책을 결정하는 전자 장치 및 전자 장치의 동작 방법
WO2024010191A1 (ko) Nsa를 지원하는 노드에 연결을 수행하는 전자 장치 및 전자 장치의 동작 방법
WO2025143880A1 (ko) 브로드캐스트 서비스를 관리하는 전자 장치 및 그 동작 방법
WO2023234522A1 (ko) D2d 통신 연결을 전환하는 전자 장치 및 전자 장치의 동작 방법
WO2025206937A1 (ko) 네트워크 슬라이스를 이용하는 전자 장치, 그 동작 방법 및 저장 매체
WO2025173957A1 (ko) 양자 암호 통화를 수행하는 전자 장치 및 이의 동작 방법
WO2023017965A1 (ko) 전자 장치의 상태에 기반하여 셀룰러 통신 또는 셀룰러 통신의 동작 모드를 전환하는 전자 장치 및 전자 장치의 동작 방법
WO2023058900A1 (ko) 어플리케이션의 특성에 기반하여 전자 장치 및 외부 전자 장치 사이의 채널을 선택하는 전자 장치 및 동작 방법
WO2023090711A1 (ko) 링크의 스캔을 수행하는 전자 장치 및 전자 장치의 동작 방법
WO2024196069A1 (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: 23880025

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023880025

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2023880025

Country of ref document: EP

Effective date: 20250314

NENP Non-entry into the national phase

Ref country code: DE

WWP Wipo information: published in national office

Ref document number: 2023880025

Country of ref document: EP