WO2018182260A1 - Electronic device and method for communication using plurality of wireless interfaces in electronic device - Google Patents
Electronic device and method for communication using plurality of wireless interfaces in electronic device Download PDFInfo
- Publication number
- WO2018182260A1 WO2018182260A1 PCT/KR2018/003548 KR2018003548W WO2018182260A1 WO 2018182260 A1 WO2018182260 A1 WO 2018182260A1 KR 2018003548 W KR2018003548 W KR 2018003548W WO 2018182260 A1 WO2018182260 A1 WO 2018182260A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- electronic device
- interface
- throughput
- communication circuit
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
- H04W72/1215—Wireless traffic scheduling for collaboration of different radio technologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/50—Allocation or scheduling criteria for wireless resources
- H04W72/56—Allocation or scheduling criteria for wireless resources based on priority criteria
- H04W72/566—Allocation or scheduling criteria for wireless resources based on priority criteria of the information or information source or recipient
- H04W72/569—Allocation or scheduling criteria for wireless resources based on priority criteria of the information or information source or recipient of the traffic information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Definitions
- Various embodiments of the present disclosure relate to an electronic device and a method for performing communication using a plurality of air interfaces in an electronic device.
- Various recently used electronic devices have been developed to include a plurality of air interfaces that independently use a plurality of frequency bands (eg, 2.4 GHz and 5 GHz). For example, the electronic device may communicate through different frequency bands through the plurality of air interfaces.
- a plurality of air interfaces that independently use a plurality of frequency bands (eg, 2.4 GHz and 5 GHz).
- the electronic device may communicate through different frequency bands through the plurality of air interfaces.
- Various network standards (e.g., 802.11ad, 802.11a / ac, 802.11b / g / n, etc.) define various methods for transmitting data in consideration of communication conditions caused by differences in communication environments between multiple frequency bands. Doing.
- a plurality of interfaces may perform communication using non-adjacent first frequency bands and second frequency bands simultaneously.
- MAC medium access control
- an electronic device and a communication method using a plurality of air interfaces in the electronic device may divide data to be transmitted based on throughputs of the plurality of air interfaces, It can be distributed to each of the wireless interfaces.
- an electronic device and a communication method using a plurality of air interfaces in an electronic device may have a priority by distributing priority data to a high-throughput air interface among the plurality of air interfaces.
- the data can be processed first.
- an electronic device may include: a communication circuit including a first communication circuit performing communication through a first frequency band and a second communication circuit performing communication through a second frequency band; And a processor electrically connected to the communication circuit, wherein the processor determines a first data throughput of the first communication circuit and a second data throughput of the second communication circuit, and based on the determination,
- the first communication circuit may be configured to transmit first data having a first size using a first communication circuit, and to transmit second data having a second size larger than the first size using the second communication circuit.
- an electronic device may include: a communication circuit including a first communication circuit performing communication through a first frequency band and a second communication circuit performing communication through a second frequency band; And a processor electrically coupled to the communication circuit, the processor receiving first data through the first communication circuit, receiving second data through the second communication circuit, and receiving the first data. And arranging the first data and the second data as received data based on the order information included in the second data.
- a communication method using a plurality of air interfaces in an electronic device may include determining a first data throughput of a first communication circuit and a second data throughput of a second communication circuit; Based on the determination, transmitting first data of a first size using the first communication circuit; And transmitting second data having a second size larger than the first size by using the second communication circuit.
- a communication method using a plurality of air interfaces in an electronic device may receive first data through a first communication circuit that communicates through a first frequency band, and receive a second frequency band. Receiving second data via a second communication circuit that communicates through; And arranging the first data and the second data as received data based on order information included in the first data and the second data.
- an electronic device may include a housing; A display exposed through a portion of the housing; Wireless communication circuitry located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and configured to support a Wi-Fi protocol; At least one processor electrically connected with the wireless communication circuitry and located within the housing; And a memory electrically coupled with the processor and located within the housing, wherein the memory, when executed, receives the data to be transmitted using the wireless communication circuitry and stores the data in a plurality of data packets.
- Dividing the data into a first data band providing first data including a first number of the plurality of data packets through the first frequency band, and through the second frequency band, the plurality of data.
- Provide second data comprising a second number of packets less than the first number of the data packets of the first and during the selected first time period, the first data is transmitted using the first frequency band, and Instructions for causing the second data to transmit using the second frequency band during a second time period at least partially overlapping a first time period Can be stored.
- an electronic device may include a housing; A display exposed through a portion of the housing; Wireless communication circuitry located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and configured to support a Wi-Fi protocol; At least one processor electrically connected with the wireless communication circuitry and located within the housing; And a memory electrically coupled to the processor and located in the housing, wherein the memory, when executed, is configured to cause the processor to: first data from an external electronic device through the wireless communication circuitry, through the first frequency band; Receive the data, receive the second data through the second frequency band, confirm the order information inserted into the first data and the second data, and based on the order information, the first data and the first data 2 Instructions for arranging data and storing it as received data can be stored.
- a communication method using a plurality of air interfaces in an electronic device and an electronic device may transmit data by dividing, distributing and transmitting data based on throughputs of the plurality of air interfaces, and according to the performance of the air interface. Can be arbitrarily mis-ordered and prevented from being transmitted.
- An electronic device and a communication method using a plurality of air interfaces in an electronic device may transmit the data having priority among data through the air interface having a high throughput, and thus receive the data.
- data having the priority may be first received, and the load for merging the data may be minimized.
- FIG. 1 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
- FIG. 2 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
- FIG. 3 is a block diagram illustrating an example of a configuration of a program module according to various embodiments of the present disclosure.
- FIG. 4 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
- FIG. 5 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
- 6A and 6B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
- FIGS. 7A and 7B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
- FIG. 8 is a block diagram illustrating an example of a data configuration according to various embodiments of the present disclosure.
- FIG. 9 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- FIG. 10 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- FIG. 11 is a flowchart illustrating an example of an operation of receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- FIG. 12 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- FIG. 13 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- FIG. 14 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- 15 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- 16 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
- 17 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- FIG. 18 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
- the expression “device configured to” may mean that the device “can” together with other devices or components.
- processor configured (or configured to) perform A, B, and C may be implemented by executing a dedicated processor (eg, an embedded processor) to perform its operation, or one or more software programs stored in a memory device. It may mean a general-purpose processor (eg, a central processing unit (CPU) or an application processor) capable of performing corresponding operations.
- An electronic device may include, for example, a smartphone, a tablet PC, a mobile phone, a video phone, an e-book reader, a desktop PC, a laptop PC, a netbook computer, a workstation, a server, a PDA, a PMP ( portable multimedia player), an MP3 player, a medical device, a camera, or a wearable device.
- Wearable devices may be accessory (e.g. watches, rings, bracelets, anklets, necklaces, eyeglasses, contact lenses, or head-mounted-devices (HMDs), textiles or clothing integrated (e.g.
- an electronic device may comprise, for example, a television, a digital video disk (DVD) player, Audio, Refrigerator, Air Conditioner, Cleaner, Oven, Microwave Oven, Washing Machine, Air Purifier, Set Top Box, Home Automation Control Panel, Security Control Panel, Media Box (e.g. Samsung HomeSync TM , Apple TV TM , or Google TV TM ) , A game console (eg, Xbox TM , PlayStation TM ), an electronic dictionary, an electronic key, a camcorder, or an electronic picture frame.
- DVD digital video disk
- the electronic device may include a variety of medical devices (e.g., various portable medical measuring devices such as blood glucose meters, heart rate monitors, blood pressure meters, or body temperature meters), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), Computed tomography (CT), cameras or ultrasounds), navigation devices, global navigation satellite systems (GNSS), event data recorders (EDRs), flight data recorders (FDRs), automotive infotainment devices, ship electronics (E.g., various portable medical measuring devices such as blood glucose meters, heart rate monitors, blood pressure meters, or body temperature meters), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), Computed tomography (CT), cameras or ultrasounds), navigation devices, global navigation satellite systems (GNSS), event data recorders (EDRs), flight data recorders (FDRs), automotive infotainment devices, ship electronics (E.g.
- various portable medical measuring devices such as blood glucose meters, heart rate monitors, blood pressure meters, or body temperature meters
- MRA magnetic resonance angiography
- an electronic device may be a part of a furniture, building / structure or automobile, an electronic board, an electronic signature receiving device, a projector, or various measuring devices (eg, water, electricity, Gas, or a radio wave measuring instrument).
- the electronic device may be flexible or a combination of two or more of the aforementioned various devices.
- An electronic device according to an embodiment of the present invention is not limited to the above-described devices.
- the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) that uses an electronic device.
- Data according to various embodiments of the present disclosure is data transmitted and received continuously and may be configured in packet units and may include various contents (eg, multimedia content).
- a radio interface may be configured to perform data communication between an external electronic device (eg, a base station) in a specific frequency band, and operate according to various communication methods. It may be a circuit, module or device.
- FIG. 1 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
- the electronic device 101 may include a bus 110, a processor 120, a memory 130, an input / output interface 150, a display 160, and a communication interface 170.
- the electronic device 101 may omit at least one of the components or additionally include other components.
- the bus 110 may include circuitry that connects the components 110-170 to each other and transfers communication (eg, control messages or data) between the components.
- the processor 120 may include one or more of a central processing unit, an application processor, or a communication processor (CP).
- the processor 120 may execute, for example, an operation or data processing related to control and / or communication of at least one other component of the electronic device 101.
- the memory 130 may include volatile and / or nonvolatile memory.
- the memory 130 may store, for example, commands or data related to at least one other element of the electronic device 101.
- the memory 130 may store software and / or a program 140.
- the program 140 may include, for example, a kernel 141, middleware 143, an application programming interface (API) 145, an application program (or “application”) 147, or the like.
- API application programming interface
- application or “application”
- At least a portion of kernel 141, middleware 143, or API 145 may be referred to as an operating system.
- the kernel 141 may be a system resource (eg, used to execute an action or function implemented in, for example, other programs (eg, middleware 143, API 145, or application program 147).
- the bus 110, the processor 120, or the memory 130 may be controlled or managed.
- the kernel 141 may provide an interface for controlling or managing system resources by accessing individual components of the electronic device 101 from the middleware 143, the API 145, or the application program 147. Can be.
- the middleware 143 may serve as an intermediary for allowing the API 145 or the application program 147 to communicate with the kernel 141 to exchange data.
- the middleware 143 may process one or more work requests received from the application program 147 according to priority.
- the middleware 143 may use system resources (eg, the bus 110, the processor 120, or the memory 130, etc.) of the electronic device 101 for at least one of the application programs 147. Prioritize and process the one or more work requests.
- the API 145 is an interface for the application 147 to control functions provided by the kernel 141 or the middleware 143.
- the API 145 may include at least the following: file control, window control, image processing, or character control. It can contain one interface or function (eg command).
- the input / output interface 150 may transmit, for example, a command or data input from a user or another external device to other component (s) of the electronic device 101, or other components of the electronic device 101 ( Commands or data received from the device) can be output to the user or other external device.
- Display 160 may be, for example, a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, or a microelectromechanical system (MEMS) display, or an electronic paper display. It may include.
- the display 160 may display, for example, various types of content (eg, text, images, videos, icons, and / or symbols) to the user.
- the display 160 may include a touch screen and may receive, for example, a touch, gesture, proximity, or hovering input using an electronic pen or a part of a user's body.
- the communication interface 170 may establish communication between the electronic device 101 and an external device (eg, the first external electronic device 102, the second external electronic device 104, or the server 106). Can be.
- the communication interface 170 may be connected to the network 162 through wireless or wired communication to communicate with an external device (eg, the second external electronic device 104 or the server 106).
- Wireless communication may include, for example, LTE, LTE Advance (LTE-A), code division multiple access (CDMA), wideband CDMA (WCDMA), universal mobile telecommunications system (UMTS), Wireless Broadband (WiBro), or GSM (global). system for mobile communications), and the like.
- the wireless communication may be performed using, for example, wireless fidelity (WiFi), light fidelity (LiFi), Bluetooth, Bluetooth low power (BLE), Zigbee, And at least one of near field communication (NFC), magnetic secure transmission, radio frequency (RF), or body area network (BAN).
- the wireless communication may include GNSS.
- the GNSS may be, for example, a global positioning system (GPS), a global navigation satellite system (Glonass), a Beidou Navigation Satellite System (hereinafter referred to as "Beidou”), or a Galileo, the European global satellite-based navigation system.
- GPS global positioning system
- Beidou Beidou Navigation Satellite System
- Galileo the European global satellite-based navigation system.
- Wired communication may include, for example, at least one of a universal serial bus (USB), a high definition multimedia interface (HDMI), a standard standard232 (RS-232), a power line communication, a plain old telephone service (POTS), and the like.
- the network 162 may comprise a telecommunications network, for example at least one of a computer network (eg, LAN or WAN), the Internet, or a telephone network.
- Each of the first and second external electronic devices 102 and 104 may be a device of the same or different type as the electronic device 101. According to various embodiments of the present disclosure, all or part of operations executed in the electronic device 101 may be executed in another or a plurality of electronic devices (for example, the electronic devices 102 and 104 or the server 106). According to this, when the electronic device 101 needs to perform a function or service automatically or by request, the electronic device 101 may instead execute or execute the function or service by itself, or at least some function associated therewith.
- the other electronic device may request the requested function or The additional function may be executed and the result may be transmitted to the electronic device 101.
- the electronic device 101 may provide the requested function or service by processing the received result as it is or additionally.
- Cloud computing distributed computing, or client-server computing techniques can be used.
- FIG. 2 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
- the electronic device 201 may include, for example, all or part of the electronic device 101 illustrated in FIG. 1.
- the electronic device 201 may include one or more processors (eg, an AP) 210, a communication module 220, a subscriber identification module 224, a memory 230, a sensor module 240, an input device 250, and a display. 260, an interface 270, an audio module 280, a camera module 291, a power management module 295, a battery 296, an indicator 297, and a motor 298.
- the 210 may control a plurality of hardware or software components connected to the processor 210 by running an operating system or an application program, and may perform various data processing and operations.
- the processor 210 may further include a graphic processing unit (GPU) and / or an image signal processor. 210 may include at least some of the components shown in FIG. 2 (eg, cellular module 221). The processor 210 other components: processing by loading the command or data received from at least one (e.g., non-volatile memory) in the volatile memory) and can store the result data into the nonvolatile memory.
- a graphic processing unit GPU
- an image signal processor may include at least some of the components shown in FIG. 2 (eg, cellular module 221).
- the processor 210 other components: processing by loading the command or data received from at least one (e.g., non-volatile memory) in the volatile memory) and can store the result data into the nonvolatile memory.
- the communication module 220 may include, for example, a cellular module 221, a WiFi module 223, a Bluetooth module 225, a GNSS module 227, an NFC module 228, and an RF module 229. have.
- the cellular module 221 may provide, for example, a voice call, a video call, a text service, or an internet service through a communication network.
- the cellular module 221 may perform identification and authentication of the electronic device 201 in a communication network by using a subscriber identification module (eg, a SIM card) 224.
- the cellular module 221 may perform at least some of the functions that the processor 210 may provide.
- the cellular module 221 may include a communication processor (CP).
- CP communication processor
- at least some (eg, two or more) of the cellular module 221, the WiFi module 223, the Bluetooth module 225, the GNSS module 227, or the NFC module 228 may be one integrated chip. (IC) or in an IC package.
- the RF module 229 may transmit / receive a communication signal (for example, an RF signal), for example.
- the RF module 229 may include, for example, a transceiver, a power amp module (PAM), a frequency filter, a low noise amplifier (LNA), an antenna, or the like.
- PAM power amp module
- LNA low noise amplifier
- At least one of the cellular module 221, the WiFi module 223, the Bluetooth module 225, the GNSS module 227, or the NFC module 228 may transmit and receive an RF signal through a separate RF module.
- Subscriber identification module 224 may include, for example, a card or embedded SIM that includes a subscriber identification module, and may include unique identification information (eg, integrated circuit card identifier (ICCID)) or subscriber information (eg, IMSI). (international mobile subscriber identity)).
- ICCID integrated circuit card identifier
- IMSI international mobile subscriber identity
- the memory 230 may include, for example, an internal memory 232 or an external memory 234.
- the internal memory 232 may include, for example, volatile memory (for example, DRAM, SRAM, or SDRAM), nonvolatile memory (for example, one time programmable ROM (OTPROM), PROM, EPROM, EEPROM, mask ROM, flash ROM).
- the flash memory may include at least one of a flash memory, a hard drive, or a solid state drive (SSD)
- the external memory 234 may be a flash drive, for example, a compact flash (CF) or a secure digital (SD). ), Micro-SD, Mini-SD, extreme digital (xD), multi-media card (MMC), memory stick, etc.
- the external memory 234 may be functionally connected to the electronic device 201 through various interfaces. Or physically connected.
- the sensor module 240 may measure, for example, a physical quantity or detect an operation state of the electronic device 201 and convert the measured or detected information into an electrical signal.
- the sensor module 240 includes, for example, a gesture sensor 240A, a gyro sensor 240B, an air pressure sensor 240C, a magnetic sensor 240D, an acceleration sensor 240E, a grip sensor 240F, and a proximity sensor ( 240G), color sensor 240H (e.g., red (green, blue) sensor), biometric sensor 240I, temperature / humidity sensor 240J, illuminance sensor 240K, or UV (ultra violet) ) May include at least one of the sensors 240M.
- sensor module 240 may include, for example, an e-nose sensor, an electromyography (EMG) sensor, an electrocardiogram (EEG) sensor, an electrocardiogram (ECG) sensor, Infrared (IR) sensors, iris sensors and / or fingerprint sensors.
- the sensor module 240 may further include a control circuit for controlling at least one or more sensors belonging therein.
- the electronic device 201 further includes a processor configured to control the sensor module 240 as part of or separately from the processor 210, while the processor 210 is in a sleep state. The sensor module 240 may be controlled.
- the input device 250 may include, for example, a touch panel 252, a (digital) pen sensor 254, a key 256, or an ultrasonic input device 258.
- the touch panel 252 may use at least one of capacitive, resistive, infrared, or ultrasonic methods, for example.
- the touch panel 252 may further include a control circuit.
- the touch panel 252 may further include a tactile layer to provide a tactile response to the user.
- the (digital) pen sensor 254 may be, for example, part of a touch panel or may include a separate recognition sheet.
- the key 256 may include, for example, a physical button, an optical key, or a keypad.
- the ultrasonic input device 258 may detect ultrasonic waves generated by an input tool through a microphone (for example, the microphone 288) and check data corresponding to the detected ultrasonic waves.
- Display 260 may include panel 262, hologram device 264, projector 266, and / or control circuitry to control them.
- the panel 262 may be implemented to be, for example, flexible, transparent, or wearable.
- the panel 262 may be configured with the touch panel 252 and one or more modules.
- panel 262 may include a pressure sensor (or force sensor) capable of measuring the strength of the pressure on the user's touch.
- the pressure sensor may be integrally implemented with the touch panel 252 or one or more sensors separate from the touch panel 252.
- the hologram 264 may show a stereoscopic image in the air by using interference of light.
- the projector 266 may display an image by projecting light onto a screen.
- the screen may be located inside or outside the electronic device 201.
- the interface 270 may include, for example, an HDMI 272, a USB 274, an optical interface 276, or a D-subminiature 278.
- the interface 270 may be included in, for example, the communication interface 170 illustrated in FIG. 1.
- interface 270 may include, for example, a mobile high-definition link (MHL) interface, an SD card / multi-media card (MMC) interface, or an infrared data association (IrDA) compliant interface. have.
- MHL mobile high-definition link
- MMC Secure Digital Card
- IrDA infrared data association
- the audio module 280 may bidirectionally convert, for example, a sound and an electrical signal. At least some components of the audio module 280 may be included in, for example, the input / output interface 145 illustrated in FIG. 1.
- the audio module 280 may process sound information input or output through, for example, a speaker 282, a receiver 284, an earphone 286, a microphone 288, or the like.
- the camera module 291 is, for example, a device capable of capturing still images and moving images. According to one embodiment, the camera module 291 is one or more image sensors (eg, a front sensor or a rear sensor), a lens, and an image signal processor (ISP). Or flash (eg, LED or xenon lamp, etc.).
- the power management module 295 may manage power of the electronic device 201, for example.
- the power management module 295 may include a power management integrated circuit (PMIC), a charger IC, or a battery or fuel gauge.
- the PMIC may have a wired and / or wireless charging scheme.
- the wireless charging method may include, for example, a magnetic resonance method, a magnetic induction method, an electromagnetic wave method, or the like, and may further include additional circuits for wireless charging, such as a coil loop, a resonance circuit, a rectifier, and the like. have.
- the battery gauge may measure, for example, the remaining amount of the battery 296, the voltage, the current, or the temperature during charging.
- the battery 296 may include, for example, a rechargeable cell and / or a solar cell.
- the indicator 297 may display a specific state of the electronic device 201 or a part thereof (for example, the processor 210), for example, a booting state, a message state, or a charging state.
- the motor 298 may convert electrical signals into mechanical vibrations, and may generate vibrations or haptic effects.
- the electronic device 201 may be, for example, a mobile TV supporting device capable of processing media data according to a standard such as digital multimedia broadcasting (DMB), digital video broadcasting (DVB), or mediaFlo TM . : GPU).
- DMB digital multimedia broadcasting
- DVD digital video broadcasting
- mediaFlo TM . : GPU mediaFlo TM .
- Each of the components described in this document may be composed of one or more components, and the names of the corresponding components may vary depending on the type of electronic device.
- the electronic device eg, the electronic device 201) may include some components, omit additional components, or combine some of the components to form a single entity. It is possible to perform the same function of the previous corresponding
- FIG. 3 is a block diagram illustrating an example of a configuration of a program module according to various embodiments of the present disclosure.
- the program module 310 may include an operating system and / or various applications running on the operating system for controlling resources related to the electronic device (eg, the electronic device 101).
- the application program 147 may be included.
- the operating system may include, for example, Android TM , iOS TM , Windows TM , Symbian TM , Tizen TM , or Bada TM .
- the program module 310 may include the kernel 320 (eg, the kernel 141), the middleware 330 (eg, the middleware 143), and the API 360 (eg, the API 145).
- At least a portion of the program module 310 may be preloaded on the electronic device or may be an external electronic device (eg, an electronic device ( 102, 104, server 106, etc.).
- the kernel 320 may include, for example, a system resource manager 321 and / or a device driver 323.
- the system resource manager 321 may perform control, allocation, or retrieval of system resources.
- the system resource manager 321 may include a process manager, a memory manager, or a file system manager.
- the device driver 323 may include, for example, a display driver, a camera driver, a Bluetooth driver, a shared memory driver, a USB driver, a keypad driver, a WiFi driver, an audio driver, or an inter-process communication (IPC) driver.
- the middleware 330 may provide various functions through the API 360, for example, to provide functions commonly required by the application 370, or to allow the application 370 to use limited system resources inside the electronic device.
- the middleware 330 may include a runtime library 335, an application manager 341, a window manager 342, a multimedia manager 343, a resource manager 344, a power manager 345, and a database manager ( 346, a package manager 347, a connectivity manager 348, a notification manager 349, a location manager 350, a graphic manager 351, or a security manager 352.
- the runtime library 335 may include, for example, a library module that the compiler uses to add new functionality through the programming language while the application 370 is running.
- the runtime library 335 may perform input / output management, memory management, or arithmetic function processing.
- the application manager 341 may manage, for example, the life cycle of the application 370.
- the window manager 342 may manage GUI resources used on the screen.
- the multimedia manager 343 may identify a format necessary for playing the media files, and may encode or decode the media file using a codec suitable for the format.
- the resource manager 344 may manage space of source code or memory of the application 370.
- the power manager 345 may manage, for example, the capacity or power of the battery and provide power information necessary for the operation of the electronic device.
- the power manager 345 may interwork with a basic input / output system (BIOS).
- the database manager 346 may create, retrieve, or change a database to be used, for example, in the application 370.
- the package manager 347 may manage installation or update of an application distributed in the form of a package file.
- the connectivity manager 348 may manage, for example, a wireless connection.
- the notification manager 349 may provide the user with events such as, for example, an arrival message, an appointment, a proximity notification, and the like.
- the location manager 350 may manage location information of the electronic device, for example.
- the graphic manager 351 may manage, for example, graphic effects to be provided to the user or a user interface related thereto.
- the security manager 352 may provide system security or user authentication, for example.
- the middleware 330 may include a telephony manager for managing a voice or video call function of the electronic device or a middleware module capable of forming a combination of functions of the above-described components. .
- the middleware 330 may provide a module specialized for each type of operating system.
- the middleware 330 may dynamically delete some of the existing components or add new components.
- API 360 is, for example, a set of API programming functions, which may be provided in different configurations depending on the operating system. For example, in the case of Android or iOS, one API set may be provided for each platform, and in Tizen, two or more API sets may be provided for each platform.
- the application 370 is, for example, a home 371, a dialer 372, an SMS / MMS 373, an instant message (IM) 374, a browser 375, a camera 376, an alarm 377. , Contacts 378, voice dials 379, emails 380, calendars 381, media players 382, albums 383, watches 384, health care (e.g., measures exercise or blood sugar, etc.) Or an application for providing environmental information (eg, barometric pressure, humidity, or temperature information).
- the application 370 may include an information exchange application capable of supporting information exchange between the electronic device and the external electronic device.
- the information exchange application may include, for example, a notification relay application for delivering specific information to the external electronic device, or a device management application for managing the external electronic device.
- the notification delivery application may deliver notification information generated by another application of the electronic device to the external electronic device, or receive notification information from the external electronic device and provide the notification information to the user.
- the device management application may be, for example, the ability of an external electronic device to communicate with the electronic device (e.g. turn-on / turn-off of the external electronic device itself (or some component) or the brightness (or resolution) of the display). Control), or install, delete, or update an application running on the external electronic device.
- the application 370 may include an application (eg, a health care application of a mobile medical device) designated according to an attribute of the external electronic device.
- the application 370 may include an application received from an external electronic device.
- At least a part of the program module 310 may be implemented (eg, executed) in software, firmware, hardware (eg, the processor 510), or a combination of at least two or more thereof, and a module for performing one or more functions; It can include a program, routine, instruction set, or process.
- FIG. 4 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
- an electronic device eg, a smartphone 410 or a smart TV 420
- the electronic device may perform communication using at least two frequency bands among bands in the network environment.
- the bands may include a 60 GHz band 401, a 5 GHz band 402, a 2.4 GHz band 403, a 900 MHz band 404, and a 54-790 MHz band 405.
- the communication standard for the bands may be defined in the 802.11 standard.
- the 60 GHz band 401 is an 802.11ad standard
- the 5 GHz band 402 is an 802.11a / n / ac standard
- the 2.4 GHz band 403 is an 802.11b / g / n standard
- the 900 MHz band 404 is 802.11
- the ah standard and the 54-790 MHz band 405 may be defined in the 802.11af standard, respectively.
- the first electronic device when the network environment 400 performs communication through a plurality of frequency bands, the first electronic device (eg, the smartphone 410) may transmit data according to throughput at each interface. It may be divided into and divided into the interfaces by including the order information in the divided data. For example, in each interface, the distributed data may be transmitted to the second electronic device (eg, the smart TV 420).
- the second electronic device eg, the smart TV 420
- the second electronic device that receives the data transmitted from the first electronic device may generate data by merging the received data according to the order information included in the data.
- the data received by the second electronic device may be sized according to the throughput of the interface, distributed and transmitted to a specific interface based on the throughput, and received by the second electronic device.
- FIG. 5 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
- the electronic device 500 may include a processor ( 510 (eg, processor 120 of FIG. 1 or processor 210 of FIG. 2), communication circuit 520 (eg, communication interface 170 of FIG. 1 or communication module 220 of FIG. 2), memory 530 (eg, the memory 130 of FIG. 1 or the memory 230 of FIG. 2), the distributor 540, the merger 550, and the monitor 560.
- a processor 510
- communication circuit 520 eg, communication interface 170 of FIG. 1 or communication module 220 of FIG. 2
- memory 530 eg, the memory 130 of FIG. 1 or the memory 230 of FIG. 2
- the distributor 540 eg, the merger 550, and the monitor 560.
- the electronic device 500 has been described as including a distributor 540, a merger 550, or a monitor 560, but at least some of them may be omitted or changed.
- the processor 510 or the communication circuit 520 may be configured to perform operations of the corresponding configurations.
- the implementation of the distributor 540, the merger 550, or the monitor 560 is a logical module, and is not limited to a specific manner, but may be implemented in software, firmware or hardware ( hardware), and the like.
- the processor 510 may control the overall operation of the electronic device 500. For example, the processor 510 may control to check throughput of an interface, distribute data, or arrange received data.
- the communication circuit 520 may include a first interface 521 and a second interface 522.
- the communication circuit 520 may control data to be simultaneously transmitted in different frequency bands (for example, 2.4 GHz and 5 GHz) through the first interface 521 and the second interface 522.
- the communication circuit 520 has been described as including two interfaces, but more interfaces for performing communication through various bands may be included.
- the memory 530 may include a first buffer for the first interface 521.
- the memory 530 may include a second buffer for the second interface 522.
- the first buffer may store data received through the first interface 521 or data to be transmitted through the first interface 521 delivered from the distributor 540.
- the second buffer may store data received through the second interface 522 or data to be transmitted through the second interface 522 delivered from the distributor 540.
- the first interface 521 may request data stored in the first buffer.
- the second interface 522 may request data stored in the second buffer.
- the monitor 560 may determine the output amount of the data stored in the first buffer to the first interface 521 as the throughput for the first interface 521.
- the monitor 560 may also determine the output amount of the data stored in the second buffer to the second interface 522 as the throughput for the second interface 522.
- the monitor 560 may check throughput in various configurations included in the electronic device 500 in addition to the output amounts of the first buffer and the second buffer, It may be determined by the throughput for 521 and the throughput for the second interface 222.
- the data stored in the first buffer and the second buffer has a predetermined time elapsed or the amount of data stored in the buffer exceeds a specified value. Can be set to be delivered.
- the distributor 540 may distribute data to each interface based on the throughput of each interface included in the communication circuit 520.
- the distributor 540 may distribute data based on a ratio value of throughput of a specific interface to interfaces calculated in Equation 1 below.
- Equation 1 l i is the size of data to be delivered to interface i (byte), B max is the maximum data size to be processed at the defined interface i, d i is the throughput at interface i for unit time, and max i ' d i ′ may be the maximum throughput for the interfaces included in the communication circuit 520 (eg, the first interface 521 and the second interface 522).
- variables of Equation 1 eg, 'd i ', 'd i '
- the dispenser 540 may change the variable if the difference between the previously measured throughput value and the newly measured throughput value exceeds the set value.
- the merger 550 may process data based on order information included in data received through the communication circuit 520. For example, the merger 550 may remove order information included in the received data, and transmit the data from which the order information has been removed to an upper layer based on the order information.
- the electronic device 500 transfers the received data to the merger 550 to transmit the first buffer and the second buffer.
- the received data in the buffer may be controlled to be delivered to an upper layer based on the received order.
- the monitor 560 may monitor the throughput of the communication circuit 520 in real time or at regular intervals. For example, the monitor 560 may determine the throughput based on the amount of data transmitted and received through a certain time, the amount of change in the buffer for a certain time, or the amount of data transferred to each interface for a certain time.
- the electronic device 500 may perform communication through a first communication circuit (for example, the first interface 521) and a second frequency band for communicating through a first frequency band.
- Communication circuitry 520 including a second communication circuitry (eg, second interface 522); And a processor 510 electrically connected to the communication circuit, wherein the processor 510 determines a first data throughput of the first communication circuit and a second data throughput of the second communication circuit, And based on the determination, to transmit the first data of the first size using the first communication circuit, and to transmit the second data of the second size larger than the first size using the second communication circuit.
- a first communication circuit for example, the first interface 521
- Communication circuitry 520 including a second communication circuitry (eg, second interface 522);
- a processor 510 electrically connected to the communication circuit, wherein the processor 510 determines a first data throughput of the first communication circuit and a second data throughput of the second communication circuit, And based on the determination, to transmit the first data of the first size using the first communication
- the first data throughput may be greater than the second data throughput, and the first data may be data larger than the size of the second data.
- the processor 510 may control to transmit at least a portion of the first data before the second data.
- the processor 510 may determine the first data throughput corresponding to the data processing speed in the first communication circuit for a predetermined time, and determine the second communication for a predetermined time.
- the second data throughput may be determined to correspond to the data processing speed in the circuit.
- the processor 510 may determine the throughput in the first buffer connected to the first communication circuit as the first data throughput, and determine in the second buffer connected to the second communication circuit.
- the throughput of may be determined to be the second data throughput.
- the processor 510 may control to distribute data having priority among the transmission data to a communication circuit having a higher data throughput among the first data throughput and the second data throughput. Can be.
- the processor 510 may be configured to at least one first packet and the second data included in the first data based on the first data throughput and the second data throughput. Inserting order information into at least one second packet included, and transmitting the at least one first packet through the first communication circuit, and corresponding to the order information, and the at least one through the second communication circuit The second packet may be controlled to be transmitted.
- the processor 510 may generate the first data having the first size corresponding to the first ratio of the first data throughput to the total data throughput in the communication circuit.
- the second data may be controlled to generate the second data at the second size corresponding to the second ratio of the second data throughput to the total data throughput.
- the electronic device 500 may perform communication through a first communication circuit (for example, the first interface 521) and a second frequency band for communicating through a first frequency band.
- Communication circuitry 520 including a second communication circuitry (eg, second interface 522); And a processor 510 electrically connected to the communication circuit, wherein the processor 510 receives first data through the first communication circuit and receives second data through the second communication circuit.
- the first data and the second data may be arranged and stored as received data based on the order information included in the first data and the second data.
- the first data is data having a larger size than the second data
- the first communication circuit and the second electronic device in the second electronic device that has transmitted the first data and the second data.
- the second data may be transmitted in preference to the second data.
- the electronic device 500 may include a housing; A display exposed through a portion of the housing; A wireless communication circuit (eg, communication circuitry) located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and support a Wi-Fi protocol; 520)); At least one processor (eg, processor 510) electrically connected with the wireless communication circuitry and located within the housing; And a memory 530 electrically connected to the processor and located within the housing, wherein the memory 530, when executed, receives the data to be transmitted by the processor using the wireless communication circuitry, and Dividing data into a plurality of data packets, and providing first data including a first number of packets of the plurality of data packets through the first frequency band, wherein the second frequency Providing, over a band, second data comprising a second number of packets less than the first number of the plurality of data packets, and for a selected first time period, the first data being in the
- the instructions may include the processor 510 confirming throughput of the wireless communication circuit when the first frequency band and the second frequency band are used, and based on the throughput.
- the first data and the second data may be set to insert order information.
- the first data and the second data may include a header including information indicating that the order information is inserted.
- the first frequency band may include 5.0 GHz
- the second frequency band may include 2.4 GHz.
- the electronic device 500 may include a housing; A display exposed through a portion of the housing; A wireless communication circuit (eg, communication circuitry) located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and support a Wi-Fi protocol; 520)); At least one processor (510) electrically connected to the wireless communication circuitry and located within the housing; And a memory 530 electrically connected to the processor 510 and located in the housing, wherein the memory 530, when executed, is executed by the processor 510 through an wireless communication circuit.
- a wireless communication circuit eg, communication circuitry located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and support a Wi-Fi protocol
- 520 At least one processor (510) electrically connected to the wireless communication circuitry and located within the housing
- a memory 530 electrically connected to the processor 510 and located in the housing, wherein the memory 530, when executed,
- 6A and 6B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
- the electronic device 600 may include a first interface 610, a second interface 620, a distributor 630, or a monitor 640.
- the first interface 610 may be set to transmit data in a frequency band of 5 GHz.
- the second interface 620 may be configured to transmit data in a frequency band of 2.4 GHz.
- the electronic device 600 when the data 601 is input to an upper layer (eg, a transmission control protocol / internet protocol (TCP / IP layer)), the electronic device 600 divides the data 601 into a distributor ( Control to forward to 630.
- the data 601 may include identification information (eg, 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', ' j ',' k ',' l ', etc.).
- the identification information is included in the upper layer and may be used as information for identifying a packet included in the data 601.
- the distributor 630 may convert the data 601 into the first data 601a and the second data according to the throughput of the first interface 610 and the second interface 620.
- the data 601b may be divided and distributed to each interface.
- the data 601 may include first data 601a including packets including identification information 'a' through 'd' or 'g' through 'j' according to the amount of data that can be transmitted at one time on each interface.
- second data 601b including packets including identification information 'e' and 'f', or 'k' and 'l'.
- the amount of data that can be transmitted at one time on each interface is an amount of data that can be received without delay in the electronic device that receives the data 601 and is calculated based on throughput of each interface. Can be.
- the data (eg, the first data 601a or the second data 601b) indicates that identification information of a packet included in each data indicates a specific value (eg, 'a').
- the transmission priority may be distributed to an interface (eg, the first interface 610) having a high throughput among the interfaces included in the electronic device 600.
- the monitor 640 may measure a data transmission rate d1 using the first interface 610 and a data transmission rate d2 using the second interface 620. have.
- the d1 may be measured at 10 Mbps and d2 at 5 Mbps.
- the electronic device 600 may distribute the first data 601a and the second data 601b that are divided from the data 601 based on the speed measured by the monitor 640.
- the interface can be determined. For example, as d1 is measured at a higher transmission speed than d2, data having a larger size among the first data 601a and the second data 601b may be distributed to the first interface 610.
- the monitor 640 checks the size change amount of the buffer connected to each interface or the amount of data to be transmitted for a predetermined time, and divides the first data 601a from the data 601. And an interface through which the second data 601b is distributed.
- the electronic device 600 is an interface connected to a buffer having a large amount of change in the size of the buffer or a large amount of data to be transmitted among the first interface 610 and the second interface 620, and may control some data among the received data to be distributed. have.
- the electronic device 600 may include a TCP / IP module 602, a first air interface 610a, a second air interface 620a, or a distributor 630.
- the electronic device 600 may control the data (eg, data 601) input to the TCP / IP module 602 to be delivered to the distributor 630.
- the first air interface 610a may include a first MAC module 611, a first PHY module 612, or a first RF module 613.
- the second air interface 620a may include a second MAC module 621, a second PHY module 622, or a second RF module 623.
- the first MAC module 611 and the second MAC module 621 may set different MAC addresses to communicate through different MAC layers.
- the electronic device 600 may control the data input to the TCP / IP module 602 to be delivered to the distributor 630.
- the distributor 630 may distribute the data to each interface based on the throughputs of the first air interface 610a and the second air interface 620a.
- the data distributed to the first air interface 610a of the electronic device 600 may be provided through the MAC layer and the PHY through the first MAC module 611 and the first PHY module 612.
- the layer may be transmitted to the layer and then transmitted to the wireless network through the first RF module 613.
- Data distributed through the second air interface 620a may be transmitted to the second MAC module 621 and the second PHY module 622 and then transmitted through the second RF module 623.
- FIGS. 7A and 7B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
- the electronic device 700 may include a first interface 710, a second interface 720, a buffer 730, or a merger 740.
- the first interface 710 may receive the first data 701a through a frequency band of 5 GHz.
- the second interface 720 may receive the second data 701b in the frequency band of 2.4 GHz.
- the received data may be delivered to the buffer 730.
- the first data 701a may include packets including identification information 'a' through 'd' and 'g' through 'j'.
- the second data 701b may include packets including identification information 'e' and 'f'.
- the first data 701a or the second data 701b may be the maximum amount of data that can be transmitted at one time on each interface of the electronic device (eg, the electronic device 700) that has transmitted the data. It may be divided according to.
- the buffer 730 stores the first data 701a and the second data 701b for a predetermined time, and when a specified condition is satisfied (for example, a predetermined time elapses).
- the data may be transferred to the merger 740.
- the merger 740 may arrange the data transferred from the buffer 730. For example, the merger 740 may arrange the data according to the order in which the data is received or the order information included in the received data. When the order information is not included in the received data, the merger 740 may transfer the received data to the TCP / IP layer according to the received order.
- the electronic device 700 may include a TCP / IP module 702, a first air interface 710a, a second air interface 720a, a buffer 730, or a merger 740. have.
- the first air interface 710a may include a first MAC module 711, a first PHY module 712, or a first RF module 713.
- the second air interface 720a may include a second MAC module 721, a second PHY module 722, or a second RF module 723.
- the first MAC module 711 and the second MAC module 721 may be configured to operate in different MAC layers by setting different MAC addresses.
- the first data 701a received through the first air interface 710a may be received from the wireless network through the first RF module 713.
- the first data 701a may be stored in the buffer 730 through the first PHY module 712 and the first MAC module 711.
- the second data 701b received through the second air interface 720a may be received from the wireless network through the second RF module 723.
- the second data 701b may be stored in the buffer 730 through the second PHY module 722 and the second MAC module 721.
- the first data 701a or the second data 701b stored in the buffer 730 may be transferred to the merger 730 in an upper layer (eg, TCP / IP layer).
- the data may be converted into processable data and transferred to the upper layer.
- the merger 730 may remove the order information included in the received data and transmit the data from which the order information has been removed to the TCP / IP module 702.
- the electronic device 700 may include the first data 701a.
- the second data 701b may be transferred to the merger 730 to control the transfer to the TCP / IP module 702 without performing an operation of removing order information.
- FIG. 8 is a block diagram illustrating an example of a data configuration according to various embodiments of the present disclosure.
- the data 800 includes a version, a type of service, a total length information (or size information), identification information, flag information, flags, Protocol information (eg, TCP / IP protocol), a header, a source address, a destination address, or a data packet 820 may be included.
- the order information 810 may include an electronic device (eg, the electronic device 500 of FIG. 5 or the electronic device of FIGS. 6A and 6B) that transmits the data 800 to an external electronic device. It may be inserted in (600).
- the order information 810 may indicate a transmission priority of the data packet 820 included in the data 800 based on the throughput of each of the plurality of interfaces included in the electronic device. For example, the order information 810 may have priority in descending order of throughput values in a particular interface.
- order information 810 has been described as being included in a specific field of the data 800, the order information 810 may be included in the header or may be separate from the data 800 in a separate data packet. It can be configured in various forms as data.
- the total length information may indicate the size of the data 800.
- the total length information may be set according to throughput of each of the plurality of interfaces of the electronic device.
- the size of the data 800 may be set according to a ratio of throughput of a specific interface to throughput of the plurality of interfaces for a predetermined time.
- FIG. 9 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- an electronic device may support a first interface and a second band. It is possible to determine the throughput of the second interface supporting. For example, the electronic device may determine the throughput based on the data communication rates on the first and second interfaces for a predetermined time.
- the electronic device may generate first data and second data to be transmitted through the first and second interfaces based on the throughputs of the first and second interfaces.
- the size of the first data and the second data may be set according to a ratio of throughputs of a specific interface to total throughputs of the first and second interfaces.
- the electronic device may insert order information into the generated first data and the second data.
- an electronic device may display a sequential value (for example, first to third order information, '1' to '2' or numbers 1 to 3) in order of data distributed through a high throughput interface. Or the like) may be included in each data.
- the first data may include first order information (or number 1)
- the second data may include second order information (or number 2).
- the electronic device may transmit first data through the first interface and second data through the second interface.
- the electronic device may distribute data having a large data size in order of an interface having high throughput among the first and second interfaces, and control the distributed data to be transmitted through each interface.
- a communication method using a plurality of air interfaces in an electronic device may receive first data through a first communication circuit that communicates through a first frequency band, and receive a second frequency band. Receiving second data via a second communication circuit that communicates through; And arranging the first data and the second data as received data based on order information included in the first data and the second data.
- the first data is data having a larger size than the second data
- the first communication circuit and the second electronic device in the second electronic device that has transmitted the first data and the second data.
- the second data may be transmitted in preference to the second data.
- FIG. 10 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- an electronic device eg, the electronic device 500 of FIG. 5 or the electronic device 600 of FIGS. 6A and 6B
- an upper layer eg, a TCP / IP layer. You can check the data.
- the electronic device may divide the transmitted data. For example, the electronic device may set a size of data to be divided based on throughput of interfaces included in the electronic device.
- the electronic device may determine whether order information on the divided data is necessary.
- the electronic device may include the first and second data. It may be determined that the same order information is required for the second data.
- the electronic device when the first and second data are to be transmitted in a time interval not overlapping through the same interface, the electronic device prioritizes data having a larger size among the first and second data. It may be determined that order information having a is required.
- an operation of determining whether order information on the divided data is required is described.
- the configuration of the electronic device eg, the communication circuit 520 of FIG. If the throughput cannot be determined in at least some of the memory 530, the first and second interfaces 610 and 620 of FIG. 6A, or the first and second air interfaces 610a and 620b, the operation of 1030 described above may be performed. May be omitted.
- the electronic device may perform operation 1040 and then perform operation 1040 to control at least some of the divided data to be transmitted to an interface having a high throughput.
- the electronic device checks the divided data, and sequential order information corresponding to the identified order information on each divided data.
- data may be partitioned by inserting first order information having a transmission priority into first data of a first size and inserting second order information into second data of a second size smaller than the first size. Can be.
- the electronic device may deliver the divided data in the order of the interface having the high throughput.
- the electronic device may convert some data (for example, data having the largest data size) among the divided data or data including order information having a transmission priority when the order information is inserted into the divided data into the interface having the high throughput. I can deliver it.
- FIG. 11 is a flowchart illustrating an example of an operation of receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- a processor of an electronic device receives third data through a first interface and receives second data through a second interface. Can be controlled to receive.
- the electronic device may perform an operation of determining whether the reordering function is supported.
- the processor of the electronic device may control to determine whether the reordering function is supported according to whether the received third data or the second data includes order information.
- the processor of the electronic device may perform the operation.
- Order information included in the third data or the second data can be confirmed.
- the first data may include third order information.
- the processor of the electronic device may determine whether data including first order information corresponding to the front order of the second order information of the received second data is stored in the buffer.
- the first order information may be an order earlier than the second order information.
- the processor of the electronic device may determine the data including the first order information. It can wait to receive.
- the processor of the electronic device may determine whether the specified waiting time has expired.
- the processor of the electronic device may determine whether data including the first order information is stored in the buffer by performing operation 1140 again.
- the processor (or the merger 550 of FIG. 5) of the electronic device may wait to receive data including the first order information by performing operation 1141 again. have.
- the processor of the electronic device may include data including the first order information as an upper layer.
- Second data including the second order information or third data including the third order information may be delivered.
- the processor of the electronic device may transfer the data to the upper layer based on the order information included in the data.
- FIG. 12 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- the electronic device 1200 may include the upper layer module 1201 (eg, TCP of FIG. 7B). / IP module 702), distributor 1202 (e.g., distributor 540 of FIG. 5), monitor 1203 (e.g., monitor 560 of FIG. 5), and multiple interfaces (e.g., first interface ( 1204 (eg, the first interface 521 of FIG. 5) and the second interface 1205 (eg, the second interface 522 of FIG. 5).
- the upper layer module 1201 eg, TCP of FIG. 7B.
- IP module 702 e.g., distributor 540 of FIG. 5
- monitor 1203 e.g., monitor 560 of FIG. 5
- multiple interfaces e.g., first interface ( 1204 (eg, the first interface 521 of FIG. 5) and the second interface 1205 (eg, the second interface 522 of FIG. 5).
- the processor of the electronic device may control the upper layer module 1201 to transfer data to the distributor 1202.
- the processor of the electronic device may request the monitor 1203 for throughput information about each of the plurality of interfaces so that the distributor 1202 distributes the transferred data.
- the processor of the electronic device may control the monitor 1203 to check the first throughput for the first interface 1204 and the second throughput for the second interface 1205.
- the processor of the electronic device may control the monitor 1203 to transmit the throughput information for each interface including the first throughput information and the second throughput information to the distributor 1202.
- the processor of the electronic device controls the distributor 1202 to determine the size of data to be distributed to the first interface 1204 and the size of data to be distributed to the second interface 1205 based on the throughput information for each interface. can do.
- the processor of the electronic device may determine the size of data to be distributed to each interface by the distributor 1202 corresponding to the ratio of the throughput for the specific interface to the total throughput of the first interface 1204 and the second interface 1205. Control to determine.
- the processor of the electronic device may control the distributor 1202 to transfer the first data to the first interface 1204.
- the first data includes some of the data, and may be set to a data size corresponding to the ratio of the throughput to the maximum data size that can be transmitted by the first interface 1204.
- the processor of the electronic device may control the distributor 1202 to transfer the second data to the second interface 1205.
- the second data may include some of the data except for the first data, and may be set to a data size corresponding to the ratio of the throughput to the maximum data size that can be transmitted from the second interface 1205. have.
- operation 1252 described above is performed after operation 1251, a time at which operation 1251 is performed and a time at which operation 1252 is performed may overlap at least partially.
- operations 1251 and 1252 may be performed during the at least some overlapping time such that the distributor 1202 may deliver first and second data substantially simultaneously to the first interface 1204 and the second interface 1205. .
- the processor of the electronic device transmits the third data including some of the data excluding the first and second data to the first interface 1204 by the distributor 1202, and in operation 1254.
- the second interface 1205 may control to transmit fourth data including some of data except for the first to third data.
- the processor of the electronic device may transmit the data to the first interface.
- the control may be repeatedly performed.
- the first interface 1204 and the second interface 1205 may transmit the transmitted data to the outside through a wireless network.
- FIG. 13 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- the electronic device 1300 (eg, the electronic device 500 of FIG. 5) or the electronic device 600 of FIGS. 6A and 6B may be a higher layer module 1301 (eg, TCP of FIG. 7B). / IP module 702), distributor 1302 (e.g., distributor 540 in FIG. 5), monitor 1303 (e.g., monitor 560 in FIG. 5), and multiple interfaces (e.g., first interface ( 1304 (eg, the first interface 521 of FIG. 5) and the second interface 1305 (eg, the second interface 522 of FIG. 5).
- a higher layer module 1301 eg, TCP of FIG. 7B
- IP module 702 e.g., distributor 540 in FIG. 5
- monitor 1303 e.g., monitor 560 in FIG. 5
- multiple interfaces e.g., first interface ( 1304 (eg, the first interface 521 of FIG. 5) and the second interface 1305 (eg, the second interface 522 of FIG. 5).
- the processor of the electronic device 1300 may control the upper layer module 1301 to transmit data to the distributor 1302.
- the processor of the electronic device 1300 may control the distributor 1302 to request the monitor 1303 for throughput information about the plurality of interfaces.
- the processor of the electronic device 1300 may control the monitor 1303 to transmit throughput information for each interface to the distributor 1302.
- the throughput information for each interface may be measured by the monitor 1303.
- the throughput information for each interface may include first throughput for the first interface 1304 and second throughput information for the second interface 1305.
- the processor of the electronic device 1300 may control the distributor 1302 to determine the size of data to be input for each interface.
- the processor of the electronic device 1300 may include the entire interface (eg, the first interface 1304 and the second interface 1305) among the maximum amount of data that can be transmitted at the first interface 1304 at one time. Data as much as the throughput ratio of the first interface 1304 to the throughput of the first interface 1304 may be determined as the size of the data to be input to the first interface 1304.
- the processor of the electronic device 1300 may control the distributor 1302 to insert order information into the data.
- the order information is for distinguishing data to be distributed to each interface, and may be distributed to an interface having a high throughput in order of data including high order information.
- the electronic device 1300 when the first data and the second data are transmitted through the first interface 1304 and the second interface 1305, the electronic device 1300 receives the first and second data. ), Data may be sorted based on the order information.
- the processor of the electronic device 1300 may control the distributor 1302 to transmit the first data to the first interface 1304.
- the first data may be transmitted to the first interface 1304 having high throughput among the interfaces of the electronic device 1300.
- the processor of the electronic device 1300 may control the distributor 1302 to transmit the second data to the second interface 1305.
- the second data may be transmitted to the second interface 1305 having a lower throughput than the first interface 1304 to which the first data is transmitted.
- the processor of the electronic device 1300 may transmit the third data to the first interface 1304 by the distributor 1302.
- the third data may be the same size as the first data.
- the third data may include order information having a lower rank than the first and second data.
- the processor of the electronic device 1300 may distribute the fourth data to the second interface 1305 by the distributor 1302.
- the fourth data may be the same size as the second data.
- the fourth data may include order information having a lower rank than the third data.
- the processor of the electronic device 1300 may repeatedly perform the above-described operations 1361 to 1364 until all of the data is transferred to the first interface 1304 or the second interface 1305.
- the 1361 operation is performed during a first time period and at least partially overlaps the first time period.
- the operation 1362 may be performed during the second time period.
- operations 1361 and 1362 may be performed for at least some overlapping time such that the distributor 1302 can deliver the first data and the second data to the first interface 1304 and the second interface 1305 substantially simultaneously.
- the first interface 1304 and the second interface 1305 may transmit the transmitted data to the outside through a wireless network.
- FIG. 14 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- the electronic device 1400 may include a plurality of interfaces (eg, the first interface 1401 and the second device).
- Interface 1402, buffer 1403, and merger 1404 eg, merger 550 of FIG. 5).
- the processor of the electronic device 1400 may transfer the first data received through the first interface 1401 to the buffer 1403.
- the first data may include first or second order information provided by the electronic device that transmitted the first data.
- the processor of the electronic device 1400 may transfer the second data received through the second interface 1402 to the buffer 1403.
- the second data may include first or second order information provided by the electronic device that has transmitted the second data.
- the time at which operation 1410 is performed and the time at which operation 1420 is performed may overlap at least partially.
- operations 1410 and 1420 may be performed during the at least some overlapping time so that the first interface 1401 and the second interface 1402 may transfer the first data and the second data to the buffer 1403 substantially simultaneously. .
- the processor of the electronic device 1400 may control the merger 1404 to request data including the first order information to the buffer 1403.
- the processor of the electronic device 1400 may control the merger 1404 to request data including the second order information to the buffer 1403.
- the processor of the electronic device 1400 may determine whether the buffer 1403 has data including first order information or second order information among data received for a predetermined time. It can be controlled to check whether or not.
- the processor of the electronic device may wait for the merger 1404 to receive data including the first order information.
- the processor of the electronic device 1400 may wait for the merger 1404 to receive data including the second order information.
- the processor of the electronic device 1400 may control the buffer 1403 to transfer the first data to the merger 1404.
- the processor of the electronic device 1400 may control the buffer 1403 to transmit the second data to the merger 1404.
- operation 1452 is performed after operation 1451, but in the electronic device 1400, operation 1451 is performed during a first time period, and at least partially overlaps with the first time period.
- the operation 1452 may be performed during the second time period.
- operations 1451 and 1452 may be performed for at least some overlapping time, so that the buffer 1403 may deliver first data and second data to the merger 1404 substantially simultaneously.
- the processor of the electronic device 1400 may control the merger 1404 to sort the data including the first order information.
- the merger 1404 may sort the data including the first order information among the first data or the second data transferred to the merger 1404.
- the processor of the electronic device 1400 may control the merger 1404 to transmit the aligned data to the upper layer module 1405.
- the merger 1404 may remove the order information from the data including the first order information and transmit the order information to the higher layer module 1405.
- the processor of the electronic device 1400 may control the merger 1404 to sort the data including the second order information.
- the merger 1404 may sort data including second order information among the first data or the second data transferred to the merger 1404.
- the processor of the electronic device 1400 may control the merger 1404 to transfer the merged data to the upper layer module 1405.
- the merger 1404 may remove the order information from the data including the merged second order information and transmit the order information to the higher layer module 1405.
- the processor of the electronic device 1400 may control to transmit the third data received through the first interface 1401 to the buffer 1403.
- the third data may include third order information provided by the electronic device that has transmitted the third data.
- the processor of the electronic device 1400 may control to transmit the fourth data received through the second interface 1402 to the buffer 1403.
- the fourth data may include fourth order information provided by the electronic device that has transmitted the fourth data.
- an operation of requesting, waiting, and transferring data in the electronic device 1400 may be performed on two order information (for example, first and second order information or third and fourth order information).
- first and second order information or third and fourth order information may be performed on two order information.
- the present invention is not limited to the size of the order information, and may vary in size depending on the amount of data that can be processed for a predetermined time in the configuration of the electronic device 1400 (for example, the buffer 1403 or the merger 1404). It may be set to process data including the order information of.
- 15 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- the electronic device 1500 (eg, the electronic device 500 of FIG. 5 or the electronic device 700 of FIGS. 7A and 7B) includes a plurality of interfaces (eg, the first interface 1501 and the first interface). 2 interface 1502), a buffer 1503, and a higher layer (eg, TCP / IP layer) module 1504.
- the processor of the electronic device may transfer the first data received through the first interface 1501 to the buffer 1503.
- the first data may include first identification information provided in an upper layer that transmits the first data.
- the processor of the electronic device may transfer the second data received through the second interface 1502 to the buffer 1503.
- the second data may include second identification information provided by an upper layer (eg, a TCP / IP layer) that transmits the second data.
- the processor of the electronic device may control the buffer 1503 to transfer the data stored in the buffer 1503 to the upper layer module 1504.
- the data stored in the buffer 1503 may include the first data and the second data.
- the processor of the electronic device determines that the first data and the second data stored in the buffer 1503 do not include order information.
- the data may be processed to be transferred from the buffer 1503 to the upper layer module 1504 based on the received order.
- the processor of the electronic device may control to identify data in an upper layer (eg, a TCP / IP layer) based on the transmitted identification information. For example, in the upper layer, as the first identification information indicates priority over the second identification information, an order of data including the second identification information in the data including the first identification information among the transferred data. You can merge the data with.
- an upper layer eg, a TCP / IP layer
- 16 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
- a network environment includes a plurality of electronic devices (eg, the first electronic device 1620 (eg, the electronic device 600 of FIGS. 6A and 6B) and the second electronic device 1630 (eg, FIG. 7A). And electronic device 700 of 7b).
- the plurality of electronic devices may transmit and receive data through wireless communication.
- the first electronic device 1620 includes a first communication circuit including a higher layer module 1610 and at least one interface (eg, the first interface 1622 and the second interface 1623). (1621).
- the first electronic device 1620 includes one communication circuit (eg, the first communication circuit 1621) including at least one interface, each of the interfaces It may be configured to include a plurality of communication circuits for.
- the first communication circuit 1621 may divide the input data 1601 into the first data 1602 and the second data 1603 and distribute the divided data to the first interface 1622 and the second interface 1623. have. For example, the first communication circuit 1621 may distribute the first data 1602 and the second data 1603 to an interface having a high throughput in order of data including order information having a higher priority among the first data 1602 and the second data 1603.
- the first communication circuit 1621 distributes the input data 1601 to interfaces.
- the first electronic device 1620 is provided. ) May be controlled to perform an operation of distributing data through another configuration (eg, a divider (not shown)) included in FIG.
- the first data 1602 is set to a data size consisting of two packets based on the throughput of the first interface 1622
- the second data It may be set to a data size consisting of one packet based on the throughput of the two interfaces 1623.
- the first interface 1622 transmits first data 1602 including two packets (eg, 'a' and 'b' packets)
- the second interface 1623 transmits one packet
- the second data 1603 including the 'c' packet may be transmitted to the external electronic device (eg, the second electronic device 1630).
- the second electronic device 1630 may include a second communication circuit 1631 including at least one interface (eg, the third interface 1632 and the fourth interface 1633); It may include a buffer 1640.
- the second electronic device 1630 receives the first data 1602 transmitted from the first electronic device 1620 through the third interface 1632, and receives the second data 1603 from the fourth interface 1633. Can be received via).
- the second electronic device 1630 may receive data (eg, first data 1602 and second data 1603) received through an interface included in the second communication circuit 1163. ) May be stored in the buffer 1640.
- data eg, first data 1602 and second data 1603
- the second electronic device 1630 may control the data 1604 stored in the buffer 1640 to be transmitted to an upper layer (eg, a TCP / IP layer). For example, when the order information included in each data cannot be confirmed, the second electronic device 1630 may determine the order in which data is input (or stored) into the buffer 1640 or the order in which data is received through each interface. Data received from the first electronic device 1620 (for example, the first data 1602 and the second data 1603) may be transmitted to the upper layer.
- an upper layer eg, a TCP / IP layer
- 17 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
- an electronic device (eg, the electronic device 500 of FIG. 5, the electronic device 600 of FIGS. 6A and 6B, or the electronic device 1300 of FIG. 13) supports a first band.
- the throughput of the second interface supporting the first interface and the second band can be determined.
- the electronic device may determine the throughput based on the data communication rates on the first and second interfaces for a predetermined time.
- the electronic device may generate first data and second data to be transmitted through the first and second interfaces, based on the throughputs of the first and second interfaces.
- the size of the first data and the second data may be set according to the throughput of a specific interface relative to the total throughput of the first and second interfaces.
- the electronic device may transmit first data through the first interface and second data through the second interface.
- the electronic device may distribute data having a large data size in order of an interface having high throughput among the first and second interfaces, and control the distributed data to be transmitted through each interface.
- a communication method using a plurality of air interfaces in an electronic device may include communication through a first data throughput and a second frequency band of a first communication circuit performing communication through a first frequency band. Determining a second data throughput of a second communication circuit to perform; Based on the determination, transmitting first data of a first size using the first communication circuit; And transmitting second data having a second size larger than the first size by using the second communication circuit.
- the first data throughput may be greater than the second data throughput, and the first data may be data larger than the size of the second data.
- the communication method using the plurality of air interfaces in the electronic device may further include transmitting at least a portion of the first data before the second data.
- a communication method using a plurality of air interfaces in an electronic device may include determining the first data throughput corresponding to a data processing speed in the first communication circuit for a predetermined time; And determining the second data throughput corresponding to the data processing speed in the second communication circuit for a predetermined time.
- a communication method using a plurality of air interfaces in an electronic device may include determining a throughput in a first buffer connected to the first communication circuit as the first data throughput; And determining the throughput in the second buffer connected to the second communication circuit as the second data throughput.
- a communication method using a plurality of air interfaces in an electronic device may include a communication circuit having a higher data throughput among the first data throughput and the second data throughput and having priority among the transmission data.
- Distributing data may further include.
- a communication method using a plurality of air interfaces in an electronic device may include at least one first packet included in the first data based on the first data throughput and the second data throughput. Inserting order information into at least one second packet included in the second data; And corresponding to the order information, transmitting the at least one first packet through the first communication circuit and transmitting the at least one second packet through the second communication circuit. have.
- a communication method using a plurality of air interfaces in an electronic device may include the first size of the first size corresponding to a first ratio of the total data throughput to the first data throughput in the communication circuit. Generating 1 data; And generating the second data with the second size corresponding to the second ratio of the second data throughput to the total data throughput.
- FIG. 18 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
- a network environment includes a plurality of electronic devices (eg, the first electronic device 1810 (eg, the electronic device 600 of FIGS. 6A and 6B) and the second electronic device 1820 (eg, FIG. 7A). And the electronic device 700 of 7b.
- the plurality of electronic devices may transmit and receive data through wireless communication.
- the first electronic device 1810 may include an upper layer module 1811, at least one interface (eg, the first interface 1821 or the second interface 1822) and the distributor 1831.
- the first electronic device 1810 communicates with the first interface 1821 at a speed d1 of 10 Mbps in a frequency band of 5 GHz, and the second interface 1822 in a frequency band of 2.4 GHz. Communication can be performed at a speed d2 of 5 Mbps.
- the first electronic device 1810 may receive data to be transmitted from the upper layer 1811 to the second electronic device 1820.
- the first electronic device 1810 may control the data to be transmitted to be delivered to the distributor 1831.
- the first electronic device 1810 may divide the transmitted data 1801 into first data 1802 and second data 1803 and insert order information into each data.
- the first electronic device 1810 may determine that the distributor 1831 selects a higher order information value among the first data 1802 and the second data 1803.
- the data to be included may be controlled to be distributed to an interface having a high throughput (eg, d1) (eg, the first interface 1821).
- the first electronic device 1810 may check the size of data transmitted through each interface for a specific time.
- the size of the data may be determined as the data size corresponding to the throughput of a specific interface compared to the throughput of the first interface 1821 and the second interface 1822 among the maximum data B max that can be transmitted at a time on a specific interface. have.
- the size of the first data 1802 transmitted through the first interface 1821 is equal to the size of the first interface 1821 at the first B max of the first interface 1821. It may be set to a size including four packets according to the throughput ratio.
- the size of the second data 1803 transmitted through the second interface 1822 includes two packets according to the throughput ratio of the second interface 1822 at the second B max of the second interface 1822. Can be set to size.
- the first interface 1821 transmits the first data 1802 including first order information (eg, '1') 1802a, and the second interface (
- the first electronic device 1822 may include second data 1803 including second order information (eg, '2') 1803a of a next order of the order information of the first data 1802. Device 1820).
- the first data 1802 includes four 'a' to 'd' packets and the second data 1803 has two 'd' And 'e' packets.
- the second electronic device 1820 may include at least one interface (eg, the third interface 1841 and the fourth interface 1842), a buffer 1850, and a merger 1860.
- the third interface 1841 may communicate at a speed d1 of 10 Mbps in a frequency band of 5 GHz
- the fourth interface 1842 may operate in a frequency band of 2.4 GHz. Communication can be performed at a speed d2 of 5 Mbps.
- the second electronic device 1820 receives the first data 1802 and the second data 1803 transmitted from the first electronic device 1810 through the at least one interface. Can be received.
- first data 1802 is received through a third interface 1841 during a first time interval and second data through a fourth interface 1842 during a second time interval at least partially overlapping the first time interval. 1803 may be received.
- the second electronic device 1820 may control the received first data 1802 and the second data 1803 to be delivered to the buffer 1850.
- the second electronic device 1820 may control the received data to be delivered to the merger 1860.
- the merger 1860 may arrange the data 1804 by arranging the data according to the order information included in the first data 1802 and the second data 1803.
- the merger 1860 may remove the order information included in the data 1804 and transfer the data from which the order information has been removed to an upper layer (eg, a TCP / IP layer).
- the merger In operation 1860, data is arranged based on the order information inserted by the first electronic device 1810 and transmitted to the upper layer, thereby reducing the load on which the upper layer arranges the data.
- module includes a unit composed of hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit.
- the module may be an integrally formed part or a minimum unit or part of performing one or more functions.
- Modules may be implemented mechanically or electronically, for example, application-specific integrated circuit (ASIC) chips, field-programmable gate arrays (FPGAs), or known or future developments that perform certain operations. It can include a programmable logic device.
- ASIC application-specific integrated circuit
- FPGAs field-programmable gate arrays
- At least a portion of an apparatus (eg, modules or functions thereof) or method (eg, operations) may be stored on a computer-readable storage medium (eg, memory 1530) in the form of a program module. It can be implemented as.
- a processor eg, the processor 1520
- the processor may perform a function corresponding to the command.
- Computer-readable recording media include hard disks, floppy disks, magnetic media (e.g. magnetic tape), optical recording media (e.g. CD-ROM, DVD, magnetic-optical media (e.g. floppy disks), internal memory, etc. Instructions may include code generated by a compiler or code that may be executed by an interpreter.
- Modules or program modules may include at least one or more of the above-described components, some may be omitted, or may further include other components. According to various embodiments, operations performed by a module, program module, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or at least some of the operations may be executed in a different order, omitted, or another operation may be added. Can be.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephone Function (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
According to various embodiments of the present invention, an electronic device and a method for communication using a plurality of wireless interfaces in the electronic device may: determine a first data throughput of a first communication circuit for performing communication via a first frequency band and a second data throughput of a second communication circuit for performing communication via a second frequency band; transmit first data having a first size by using the first communication circuit on the basis of the determination; and transmit second data having a second size larger than the first size by using the second communication circuit. In addition, various other embodiments may be possible.
Description
본 발명의 다양한 실시 예들은 전자 장치 및 전자 장치에서 복수의 무선 인터페이스를 이용하여 통신을 수행하는 방법에 관한 것이다. Various embodiments of the present disclosure relate to an electronic device and a method for performing communication using a plurality of air interfaces in an electronic device.
최근 사용되는 다양한 전자 장치들에는 복수의 주파수 대역(예, 2.4GHz 및 5GHz)을 독립적으로 사용하는 복수의 무선 인터페이스가 포함되도록 개발되고 있다. 예컨대, 상기 복수의 무선 인터페이스를 통해 전자 장치에서는 서로 다른 주파수 대역을 통해 통신을 수행할 수 있다. Various recently used electronic devices have been developed to include a plurality of air interfaces that independently use a plurality of frequency bands (eg, 2.4 GHz and 5 GHz). For example, the electronic device may communicate through different frequency bands through the plurality of air interfaces.
다양한 네트워크 표준(예, 802.11ad, 802.11a/ac, 802.11b/g/n 등)에서는 복수의 주파수 대역 간에 통신 환경의 차이로 인해 발생되는 통신 상태를 고려하여 데이터를 전송하기 위한 다양한 방법을 정의하고 있다. Various network standards (e.g., 802.11ad, 802.11a / ac, 802.11b / g / n, etc.) define various methods for transmitting data in consideration of communication conditions caused by differences in communication environments between multiple frequency bands. Doing.
CA(carrier aggregation) 방식을 이용하여 복수의 인터페이스가 비 인접한 제1 주파수 대역과 제2 주파수 대역을 동시에 사용하여 통신을 수행할 수 있다. 복수의 인터페이스가 동일한 MAC(medium access control) 레이어(layer)를 통해 통신을 수행하는 경우 상기 제1 주파수 대역과 상기 제2 주파수 대역 중 성능이 좋지 않은 대역의 성능으로 동작하여 통신 성능이 저하될 수 있다. Using a CA (carrier aggregation) scheme, a plurality of interfaces may perform communication using non-adjacent first frequency bands and second frequency bands simultaneously. When a plurality of interfaces communicate with each other through the same medium access control (MAC) layer, the performance of the first and second frequency bands may be degraded, resulting in poor performance. have.
본 발명의 다양한 실시 예에 따른, 전자 장치 및 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 복수의 무선 인터페이스의 처리량에 기반하여 송신할 데이터를 분할하고, 분할된 데이터가 중복되지 않도록 복수의 무선 인터페이스 각각으로 분배할 수 있다. According to various embodiments of the present disclosure, an electronic device and a communication method using a plurality of air interfaces in the electronic device may divide data to be transmitted based on throughputs of the plurality of air interfaces, It can be distributed to each of the wireless interfaces.
본 발명의 다양한 실시 예에 따른, 전자 장치 및 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 상기 복수의 무선 인터페이스 중 처리량이 높은 무선 인터페이스로 우선 순위를 가지는 데이터를 분배하여 상기 우선 순위를 가지는 데이터가 먼저 전송되도록 처리할 수 있다. According to various embodiments of the present disclosure, an electronic device and a communication method using a plurality of air interfaces in an electronic device may have a priority by distributing priority data to a high-throughput air interface among the plurality of air interfaces. The data can be processed first.
본 발명의 다양한 실시 예에 따르면, 전자 장치는, 제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로 및 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로를 포함하는, 통신 회로; 및 상기 통신 회로에 전기적으로 연결된 프로세서;를 포함하고, 상기 프로세서는, 상기 제1 통신 회로의 제1 데이터 처리량 및 상기 제2 통신 회로의 제2 데이터 처리량을 판단하고, 상기 판단에 기반하여, 상기 제1 통신 회로를 이용하여 제1 크기의 제1 데이터를 전송하고, 상기 제2 통신 회로를 이용하여 상기 제1 크기보다 큰 제2 크기의 제2 데이터를 전송하도록 설정될 수 있다.According to various embodiments of the present disclosure, an electronic device may include: a communication circuit including a first communication circuit performing communication through a first frequency band and a second communication circuit performing communication through a second frequency band; And a processor electrically connected to the communication circuit, wherein the processor determines a first data throughput of the first communication circuit and a second data throughput of the second communication circuit, and based on the determination, The first communication circuit may be configured to transmit first data having a first size using a first communication circuit, and to transmit second data having a second size larger than the first size using the second communication circuit.
본 발명의 다양한 실시 예에 따르면, 전자 장치는, 제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로 및 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로를 포함하는, 통신 회로; 및 상기 통신 회로에 전기적으로 연결된 프로세서;를 포함하며, 상기 프로세서는, 상기 제1 통신 회로를 통해 제1 데이터를 수신하고, 상기 제2 통신 회로를 통해 제2 데이터를 수신하고, 상기 제1 데이터 및 상기 제2 데이터에 포함된 순서 정보에 기반하여 상기 제1 데이터 및 상기 제2 데이터를 배열하여 수신 데이터로 저장하도록 설정될 수 있다. According to various embodiments of the present disclosure, an electronic device may include: a communication circuit including a first communication circuit performing communication through a first frequency band and a second communication circuit performing communication through a second frequency band; And a processor electrically coupled to the communication circuit, the processor receiving first data through the first communication circuit, receiving second data through the second communication circuit, and receiving the first data. And arranging the first data and the second data as received data based on the order information included in the second data.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 제1 통신 회로의 제1 데이터 처리량 및 제2 통신 회로의 제2 데이터 처리량을 판단하는 동작; 상기 판단에 기반하여, 상기 제1 통신 회로를 이용하여 제1 크기의 제1 데이터를 전송하는 동작; 및 상기 제2 통신 회로를 이용하여 상기 제1 크기보다 큰 제2 크기의 제2 데이터를 전송하는 동작;을 포함할 수 있다. According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may include determining a first data throughput of a first communication circuit and a second data throughput of a second communication circuit; Based on the determination, transmitting first data of a first size using the first communication circuit; And transmitting second data having a second size larger than the first size by using the second communication circuit.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로를 통해 제1 데이터를 수신하고, 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로를 통해 제2 데이터를 수신하는 동작; 및 상기 제1 데이터 및 상기 제2 데이터에 포함된 순서 정보에 기반하여 상기 제1 데이터 및 상기 제2 데이터를 배열하여 수신 데이터로 저장하는 동작;을 포함할 수 있다. According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may receive first data through a first communication circuit that communicates through a first frequency band, and receive a second frequency band. Receiving second data via a second communication circuit that communicates through; And arranging the first data and the second data as received data based on order information included in the first data and the second data.
본 발명의 다양한 실시 예에 따르면, 전자 장치는, 하우징; 상기 하우징의 일부를 통하여 노출된 디스플레이; 상기 하우징 내에 위치하며, 제1 주파수 대역, 및 상기 제1 주파수 대역과 분리되고 상기 제1 주파수 대역보다 낮은 제2 주파수 대역을 사용하고, 와이파이 프로토콜을 지원하도록 구성된 무선 통신 회로; 상기 무선 통신 회로와 전기적으로 연결되고 상기 하우징 내에 위치한 적어도 하나의 프로세서; 및 상기 프로세서와 전기적으로 연결되고 상기 하우징 내에 위치한 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 무선 통신 회로를 이용하여 전송될 데이터를 수신하고, 상기 데이터를 복수의 데이터 패킷들로 분할하고, 상기 제1 주파수 대역을 통하여, 상기 복수의 데이터 패킷들 중 제1 수(a first number)의 패킷들을 포함하는 제1 데이터를 제공하고, 상기 제2 주파수 대역을 통하여, 상기 복수의 데이터 패킷들 중, 상기 제1 수보다 적은 제2 수의 패킷들을 포함하는 제2 데이터를 제공하고 선택된 제1 시간 주기 동안, 상기 제1 데이터가 상기 제1 주파수 대역을 사용하여 전송되고, 상기 제1 시간 주기와 적어도 일부 중첩되는 제2 시간 주기 동안 상기 제2 데이터가 상기 제2 주파수 대역을 사용하여, 전송하도록 하는 인스트럭션들을 저장할 수 있다.According to various embodiments of the present disclosure, an electronic device may include a housing; A display exposed through a portion of the housing; Wireless communication circuitry located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and configured to support a Wi-Fi protocol; At least one processor electrically connected with the wireless communication circuitry and located within the housing; And a memory electrically coupled with the processor and located within the housing, wherein the memory, when executed, receives the data to be transmitted using the wireless communication circuitry and stores the data in a plurality of data packets. Dividing the data into a first data band, providing first data including a first number of the plurality of data packets through the first frequency band, and through the second frequency band, the plurality of data. Provide second data comprising a second number of packets less than the first number of the data packets of the first and during the selected first time period, the first data is transmitted using the first frequency band, and Instructions for causing the second data to transmit using the second frequency band during a second time period at least partially overlapping a first time period Can be stored.
본 발명의 다양한 실시 예에 따르면, 전자 장치는, 하우징; 상기 하우징의 일부를 통하여 노출된 디스플레이; 상기 하우징 내에 위치하며, 제1 주파수 대역, 및 상기 제1 주파수 대역과 분리되고 상기 제1 주파수 대역보다 낮은 제2 주파수 대역을 사용하고, 와이파이 프로토콜을 지원하도록 구성된 무선 통신 회로; 상기 무선 통신 회로와 전기적으로 연결되고 상기 하우징 내에 위치한 적어도 하나의 프로세서; 및 상기 프로세서와 전기적으로 연결되고 상기 하우징 내에 위치한 메모리를 포함하며, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 무선 통신 회로를 통해 외부 전자 장치로부터, 상기 제1 주파수 대역을 통하여 제1 데이터를 수신하고, 상기 제2 주파수 대역을 통하여 제2 데이터를 수신하고, 상기 제1 데이터 및 상기 제2 데이터에 삽입된 순서 정보를 확인하고, 상기 순서 정보에 기반하여, 상기 제1 데이터 및 상기 제2 데이터를 배열하여 수신 데이터로 저장하는 인스트럭션들을 저장할 수 있다. According to various embodiments of the present disclosure, an electronic device may include a housing; A display exposed through a portion of the housing; Wireless communication circuitry located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and configured to support a Wi-Fi protocol; At least one processor electrically connected with the wireless communication circuitry and located within the housing; And a memory electrically coupled to the processor and located in the housing, wherein the memory, when executed, is configured to cause the processor to: first data from an external electronic device through the wireless communication circuitry, through the first frequency band; Receive the data, receive the second data through the second frequency band, confirm the order information inserted into the first data and the second data, and based on the order information, the first data and the first data 2 Instructions for arranging data and storing it as received data can be stored.
본 발명의 다양한 실시 예에 따른 전자 장치 및 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 복수의 무선 인터페이스의 처리량에 기반하여 데이터를 분할 및 배분하여 전송함에 따라, 무선 인터페이스의 성능에 따라 데이터가 임의로 오 배열(mis-ordering)되어 송신되는 것을 방지할 수 있다. According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device and an electronic device may transmit data by dividing, distributing and transmitting data based on throughputs of the plurality of air interfaces, and according to the performance of the air interface. Can be arbitrarily mis-ordered and prevented from being transmitted.
본 발명의 다양한 실시 예에 따른 전자 장치 및 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 데이터 중 우선 순위를 가지는 데이터를 처리량이 높은 무선 인터페이스를 통해 전송함에 따라, 상기 데이터를 수신하는 전자 장치에서 상기 우선 순위를 가지는 데이터를 먼저 수신하고, 데이터로 병합하기 위한 부하를 최소화할 수 있다. An electronic device and a communication method using a plurality of air interfaces in an electronic device according to various embodiments of the present disclosure may transmit the data having priority among data through the air interface having a high throughput, and thus receive the data. In the first embodiment, data having the priority may be first received, and the load for merging the data may be minimized.
도 1은 본 발명의 다양한 실시 예에 따른 네트워크 환경의 일 예를 도시한 도면이다. 1 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 일 예를 도시한 블록도이다. 2 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
도 3은 본 발명의 다양한 실시 예에 따른 프로그램 모듈 구성의 일 예를 도시한 블록도이다. 3 is a block diagram illustrating an example of a configuration of a program module according to various embodiments of the present disclosure.
도 4는 본 발명의 다양한 실시 예에 따른 네트워크 환경의 일 예를 도시한 도면이다. 4 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
도 5는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 일 예를 도시한 블록도이다. 5 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
도 6a 및 도 6b는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 다양한 예를 도시한 블록도들이다. 6A and 6B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
도 7a 및 도 7b는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 다양한 예를 도시한 블록도들이다. 7A and 7B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
도 8은 본 발명의 다양한 실시 예에 따라, 데이터 구성의 일 예를 도시한 블록도이다. 8 is a block diagram illustrating an example of a data configuration according to various embodiments of the present disclosure.
도 9는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 송신하는 동작의 일 예를 도시한 흐름도이다. 9 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 10은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 송신하는 동작의 일 예를 도시한 흐름도이다.10 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 11은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 수신하는 동작의 일 예를 도시한 흐름도이다.11 is a flowchart illustrating an example of an operation of receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 12는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 상위 레이어로부터 전달된 데이터를 복수의 인터페이스를 통해 송신하는 동작의 일 예를 도시한 흐름도이다. 12 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 13은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 상위 레이어로부터 전달된 데이터를 복수의 인터페이스를 통해 송신하는 동작의 일 예를 도시한 흐름도이다. 13 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 14는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 수신하여 상위 레이어로 전달하는 동작의 일 예를 도시한 흐름도이다. 14 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 15는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 수신하여 상위 레이어로 전달하는 동작의 일 예를 도시한 흐름도이다. 15 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 16은 본 발명의 다양한 실시 예에 따라, 복수의 인터페이스를 통해 데이터를 송수신하는 네트워크 환경의 일 예를 도시한 도면이다.16 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
도 17은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 송신하는 동작의 일 예를 도시한 흐름도이다. 17 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 18은 본 발명의 다양한 실시 예에 따라, 복수의 인터페이스를 통해 데이터를 송수신하는 네트워크 환경의 일 예를 도시한 도면이다. 18 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
이하, 본 발명의 다양한 실시 예들이 첨부된 도면을 참조하여 기재된다. 실시예 및 이에 사용된 용어들은 본 발명에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 발명에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.Hereinafter, various embodiments of the present disclosure will be described with reference to the accompanying drawings. The examples and terminology used herein are not intended to limit the techniques described herein to a particular embodiment, but should be understood to include various modifications, equivalents, and / or alternatives to the examples. In connection with the description of the drawings, similar reference numerals may be used for similar components. Singular expressions may include plural expressions unless the context clearly indicates otherwise. In the present invention, the expression "A or B" or "at least one of A and / or B" and the like may include all possible combinations of items listed together. Expressions such as "first," "second," "first," or "second," etc. may modify the components, regardless of order or importance, to distinguish one component from another. Used only and do not limit the components. When any (eg first) component is said to be "connected (functionally or communicatively)" or "connected" to another (eg second) component, the other component is said other The component may be directly connected or connected through another component (eg, a third component).
본 발명에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU(central processing unit) 또는 application processor)를 의미할 수 있다. In the present invention, " configured to " has been changed to " " which has the ability to " suitable for, " Can be used interchangeably with "made to", "doing", or "designed to". In some situations, the expression “device configured to” may mean that the device “can” together with other devices or components. For example, the phrase “processor configured (or configured to) perform A, B, and C” may be implemented by executing a dedicated processor (eg, an embedded processor) to perform its operation, or one or more software programs stored in a memory device. It may mean a general-purpose processor (eg, a central processing unit (CPU) or an application processor) capable of performing corresponding operations.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA, PMP(portable multimedia player), MP3 플레이어, 의료기기, 카메라, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드 또는 문신), 또는 생체 이식형 회로 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 전자 장치는, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.An electronic device according to various embodiments of the present disclosure may include, for example, a smartphone, a tablet PC, a mobile phone, a video phone, an e-book reader, a desktop PC, a laptop PC, a netbook computer, a workstation, a server, a PDA, a PMP ( portable multimedia player), an MP3 player, a medical device, a camera, or a wearable device. Wearable devices may be accessory (e.g. watches, rings, bracelets, anklets, necklaces, eyeglasses, contact lenses, or head-mounted-devices (HMDs), textiles or clothing integrated (e.g. electronic clothing), And may include at least one of a body-attachable (eg, skin pad or tattoo), or bio implantable circuit, In certain embodiments, an electronic device may comprise, for example, a television, a digital video disk (DVD) player, Audio, Refrigerator, Air Conditioner, Cleaner, Oven, Microwave Oven, Washing Machine, Air Purifier, Set Top Box, Home Automation Control Panel, Security Control Panel, Media Box (e.g. Samsung HomeSync TM , Apple TV TM , or Google TV TM ) , A game console (eg, Xbox ™ , PlayStation ™ ), an electronic dictionary, an electronic key, a camcorder, or an electronic picture frame.
다른 실시예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 드론(drone), 금융 기관의 ATM, 상점의 POS(point of sales), 또는 사물 인터넷 장치 (예: 전구, 각종 센서, 스프링클러 장치, 화재 경보기, 온도조절기, 가로등, 토스터, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다. 어떤 실시예에 따르면, 전자 장치는 가구, 건물/구조물 또는 자동차의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터, 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에서, 전자 장치는 플렉서블하거나, 또는 전술한 다양한 장치들 중 둘 이상의 조합일 수 있다. 본 발명의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다. 본 발명에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다. In another embodiment, the electronic device may include a variety of medical devices (e.g., various portable medical measuring devices such as blood glucose meters, heart rate monitors, blood pressure meters, or body temperature meters), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), Computed tomography (CT), cameras or ultrasounds), navigation devices, global navigation satellite systems (GNSS), event data recorders (EDRs), flight data recorders (FDRs), automotive infotainment devices, ship electronics (E.g. marine navigation systems, gyro compasses, etc.), avionics, security devices, vehicle head units, industrial or household robots, drones, ATMs in financial institutions, point of sale (POS) points in stores or Internet of Things devices (eg, light bulbs, various sensors, sprinkler devices, fire alarms, thermostats, street lights, toasters, exercise equipment, hot water tanks, heaters, boilers, etc.). . According to some embodiments, an electronic device may be a part of a furniture, building / structure or automobile, an electronic board, an electronic signature receiving device, a projector, or various measuring devices (eg, water, electricity, Gas, or a radio wave measuring instrument). In various embodiments, the electronic device may be flexible or a combination of two or more of the aforementioned various devices. An electronic device according to an embodiment of the present invention is not limited to the above-described devices. In the present invention, the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) that uses an electronic device.
본 발명의 다양한 실시 예에 따른 데이터는 연속적으로 송수신되는 데이터로 패킷 단위로 구성되며 다양한 콘텐트(예, 멀티미디어 콘텐트)를 포함할 수 있다. Data according to various embodiments of the present disclosure is data transmitted and received continuously and may be configured in packet units and may include various contents (eg, multimedia content).
본 발명의 다양한 실시 예에 따른 무선 인터페이스(radio interface)(또는 인터페이스)는, 특정 주파수 대역에서 외부 전자 장치(예, 기지국) 간의 데이터 통신을 수행하기 위한 구성으로 다양한 통신 방식에 따라 동작하는 소프트웨어, 회로, 모듈 또는 장치일 수 있다. According to various embodiments of the present disclosure, a radio interface (or interface) may be configured to perform data communication between an external electronic device (eg, a base station) in a specific frequency band, and operate according to various communication methods. It may be a circuit, module or device.
도 1은 본 발명의 다양한 실시 예에 따른 네트워크 환경의 일 예를 도시한 도면이다. 1 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
도 1을 참조하면, 다양한 실시예에서의, 네트워크 환경(100) 내의 전자 장치(101)가 기재된다. 전자 장치(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(150), 디스플레이(160), 및 통신 인터페이스(170)를 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다. 버스(110)는 구성요소들(110-170)을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 또는 데이터)을 전달하는 회로를 포함할 수 있다. 프로세서(120)는, 중앙처리장치, 어플리케이션 프로세서, 또는 커뮤니케이션 프로세서(communication processor(CP)) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서(120)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. Referring to FIG. 1, in various embodiments, an electronic device 101 in a network environment 100 is described. The electronic device 101 may include a bus 110, a processor 120, a memory 130, an input / output interface 150, a display 160, and a communication interface 170. In some embodiments, the electronic device 101 may omit at least one of the components or additionally include other components. The bus 110 may include circuitry that connects the components 110-170 to each other and transfers communication (eg, control messages or data) between the components. The processor 120 may include one or more of a central processing unit, an application processor, or a communication processor (CP). The processor 120 may execute, for example, an operation or data processing related to control and / or communication of at least one other component of the electronic device 101.
메모리(130)는, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(130)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시예에 따르면, 메모리(130)는 소프트웨어 및/또는 프로그램(140)을 저장할 수 있다. 프로그램(140)은, 예를 들면, 커널(141), 미들웨어(143), 어플리케이션 프로그래밍 인터페이스(API)(145), 및/또는 어플리케이션 프로그램(또는 "어플리케이션")(147) 등을 포함할 수 있다. 커널(141), 미들웨어(143), 또는 API(145)의 적어도 일부는, 운영 시스템으로 지칭될 수 있다. 커널(141)은, 예를 들면, 다른 프로그램들(예: 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147))에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)을 제어 또는 관리할 수 있다. 또한, 커널(141)은 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147)에서 전자 장치(101)의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다. The memory 130 may include volatile and / or nonvolatile memory. The memory 130 may store, for example, commands or data related to at least one other element of the electronic device 101. According to an embodiment of the present disclosure, the memory 130 may store software and / or a program 140. The program 140 may include, for example, a kernel 141, middleware 143, an application programming interface (API) 145, an application program (or “application”) 147, or the like. . At least a portion of kernel 141, middleware 143, or API 145 may be referred to as an operating system. The kernel 141 may be a system resource (eg, used to execute an action or function implemented in, for example, other programs (eg, middleware 143, API 145, or application program 147). The bus 110, the processor 120, or the memory 130 may be controlled or managed. In addition, the kernel 141 may provide an interface for controlling or managing system resources by accessing individual components of the electronic device 101 from the middleware 143, the API 145, or the application program 147. Can be.
미들웨어(143)는, 예를 들면, API(145) 또는 어플리케이션 프로그램(147)이 커널(141)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어(143)는 어플리케이션 프로그램(147)으로부터 수신된 하나 이상의 작업 요청들을 우선 순위에 따라 처리할 수 있다. 예를 들면, 미들웨어(143)는 어플리케이션 프로그램(147) 중 적어도 하나에 전자 장치(101)의 시스템 리소스(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 부여하고, 상기 하나 이상의 작업 요청들을 처리할 수 있다. API(145)는 어플리케이션(147)이 커널(141) 또는 미들웨어(143)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 영상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다. 입출력 인터페이스(150)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(101)의 다른 구성요소(들)에 전달하거나, 또는 전자 장치(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다. The middleware 143 may serve as an intermediary for allowing the API 145 or the application program 147 to communicate with the kernel 141 to exchange data. In addition, the middleware 143 may process one or more work requests received from the application program 147 according to priority. For example, the middleware 143 may use system resources (eg, the bus 110, the processor 120, or the memory 130, etc.) of the electronic device 101 for at least one of the application programs 147. Prioritize and process the one or more work requests. The API 145 is an interface for the application 147 to control functions provided by the kernel 141 or the middleware 143. For example, the API 145 may include at least the following: file control, window control, image processing, or character control. It can contain one interface or function (eg command). The input / output interface 150 may transmit, for example, a command or data input from a user or another external device to other component (s) of the electronic device 101, or other components of the electronic device 101 ( Commands or data received from the device) can be output to the user or other external device.
디스플레이(160)는, 예를 들면, 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 또는 마이크로 전자기계 시스템 (MEMS) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이(160)는, 예를 들면, 사용자에게 각종 콘텐트(예: 텍스트, 이미지, 비디오, 아이콘, 및/또는 심볼 등)을 표시할 수 있다. 디스플레이(160)는, 터치 스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접, 또는 호버링 입력을 수신할 수 있다. 통신 인터페이스(170)는, 예를 들면, 전자 장치(101)와 외부 장치(예: 제 1 외부 전자 장치(102), 제 2 외부 전자 장치(104), 또는 서버(106)) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크(162)에 연결되어 외부 장치(예: 제 2 외부 전자 장치(104) 또는 서버(106))와 통신할 수 있다. Display 160 may be, for example, a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, or a microelectromechanical system (MEMS) display, or an electronic paper display. It may include. The display 160 may display, for example, various types of content (eg, text, images, videos, icons, and / or symbols) to the user. The display 160 may include a touch screen and may receive, for example, a touch, gesture, proximity, or hovering input using an electronic pen or a part of a user's body. The communication interface 170 may establish communication between the electronic device 101 and an external device (eg, the first external electronic device 102, the second external electronic device 104, or the server 106). Can be. For example, the communication interface 170 may be connected to the network 162 through wireless or wired communication to communicate with an external device (eg, the second external electronic device 104 or the server 106).
무선 통신은, 예를 들면, LTE, LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(global system for mobile communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 한 실시예에 따르면, 무선 통신은, 예를 들면, 도 1의 element 164로 예시된 바와 같이, WiFi(wireless fidelity), LiFi(light fidelity), 블루투스, 블루투스 저전력(BLE), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(magnetic secure transmission), 라디오 프리퀀시(RF), 또는 보디 에어리어 네트워크(BAN) 중 적어도 하나를 포함할 수 있다. 한실시예에 따르면, 무선 통신은 GNSS를 포함할 수 있다. GNSS는, 예를 들면, GPS(global positioning system), Glonass(global navigation satellite system), Beidou Navigation Satellite System(이하 "Beidou") 또는 Galileo, the European global satellite-based navigation system일 수 있다. 이하, 본 문서에서는, "GPS"는 "GNSS"와 상호 호환적으로 사용될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크(162)는 텔레커뮤니케이션 네트워크, 예를 들면, 컴퓨터 네트워크(예: LAN 또는 WAN), 인터넷, 또는 텔레폰 네트워크 중 적어도 하나를 포함할 수 있다.Wireless communication may include, for example, LTE, LTE Advance (LTE-A), code division multiple access (CDMA), wideband CDMA (WCDMA), universal mobile telecommunications system (UMTS), Wireless Broadband (WiBro), or GSM (global). system for mobile communications), and the like. According to an embodiment, the wireless communication may be performed using, for example, wireless fidelity (WiFi), light fidelity (LiFi), Bluetooth, Bluetooth low power (BLE), Zigbee, And at least one of near field communication (NFC), magnetic secure transmission, radio frequency (RF), or body area network (BAN). According to an embodiment, the wireless communication may include GNSS. The GNSS may be, for example, a global positioning system (GPS), a global navigation satellite system (Glonass), a Beidou Navigation Satellite System (hereinafter referred to as "Beidou"), or a Galileo, the European global satellite-based navigation system. Hereinafter, in this document, "GPS" may be used interchangeably with "GNSS". Wired communication may include, for example, at least one of a universal serial bus (USB), a high definition multimedia interface (HDMI), a standard standard232 (RS-232), a power line communication, a plain old telephone service (POTS), and the like. have. The network 162 may comprise a telecommunications network, for example at least one of a computer network (eg, LAN or WAN), the Internet, or a telephone network.
제 1 및 제 2 외부 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 다양한 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102,104), 또는 서버(106)에서 실행될 수 있다. 한 실시예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(106))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(106))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.Each of the first and second external electronic devices 102 and 104 may be a device of the same or different type as the electronic device 101. According to various embodiments of the present disclosure, all or part of operations executed in the electronic device 101 may be executed in another or a plurality of electronic devices (for example, the electronic devices 102 and 104 or the server 106). According to this, when the electronic device 101 needs to perform a function or service automatically or by request, the electronic device 101 may instead execute or execute the function or service by itself, or at least some function associated therewith. May be requested to another device (eg, the electronic devices 102 and 104 or the server 106.) The other electronic device (eg, the electronic devices 102 and 104 or the server 106) may request the requested function or The additional function may be executed and the result may be transmitted to the electronic device 101. The electronic device 101 may provide the requested function or service by processing the received result as it is or additionally. For Cloud computing, distributed computing, or client-server computing techniques can be used.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 일 예를 도시한 블록도이다. 2 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
전자 장치(201)는, 예를 들면, 도 1에 도시된 전자 장치(101)의 전체 또는 일부를 포함할 수 있다. 전자 장치(201)는 하나 이상의 프로세서(예: AP)(210), 통신 모듈(220), (가입자 식별 모듈(224), 메모리(230), 센서 모듈(240), 입력 장치(250), 디스플레이(260), 인터페이스(270), 오디오 모듈(280), 카메라 모듈(291), 전력 관리 모듈(295), 배터리(296), 인디케이터(297), 및 모터(298) 를 포함할 수 있다. 프로세서(210)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(210)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 한 실시예에 따르면, 프로세서(210)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서를 더 포함할 수 있다. 프로세서(210)는 도 2에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(221))를 포함할 수도 있다. 프로세서(210)는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드)하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.The electronic device 201 may include, for example, all or part of the electronic device 101 illustrated in FIG. 1. The electronic device 201 may include one or more processors (eg, an AP) 210, a communication module 220, a subscriber identification module 224, a memory 230, a sensor module 240, an input device 250, and a display. 260, an interface 270, an audio module 280, a camera module 291, a power management module 295, a battery 296, an indicator 297, and a motor 298. For example, the 210 may control a plurality of hardware or software components connected to the processor 210 by running an operating system or an application program, and may perform various data processing and operations. In an embodiment, the processor 210 may further include a graphic processing unit (GPU) and / or an image signal processor. 210 may include at least some of the components shown in FIG. 2 (eg, cellular module 221). The processor 210 other components: processing by loading the command or data received from at least one (e.g., non-volatile memory) in the volatile memory) and can store the result data into the nonvolatile memory.
통신 모듈(220)(예: 통신 인터페이스(170))와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(220)은, 예를 들면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227), NFC 모듈(228) 및 RF 모듈(229)를 포함할 수 있다. 셀룰러 모듈(221)은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 가입자 식별 모듈(예: SIM 카드)(224)을 이용하여 통신 네트워크 내에서 전자 장치(201)의 구별 및 인증을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 프로세서(210)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 커뮤니케이션 프로세서(CP)를 포함할 수 있다. 어떤 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 일부(예: 두 개 이상)는 하나의 integrated chip(IC) 또는 IC 패키지 내에 포함될 수 있다. RF 모듈(229)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(229)은, 예를 들면, 트랜시버, PAM(power amp module), 주파수 필터, LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다. 가입자 식별 모듈(224)은, 예를 들면, 가입자 식별 모듈을 포함하는 카드 또는 임베디드 SIM을 포함할 수 있으며, 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다. It may have the same or similar configuration as the communication module 220 (eg, the communication interface 170). The communication module 220 may include, for example, a cellular module 221, a WiFi module 223, a Bluetooth module 225, a GNSS module 227, an NFC module 228, and an RF module 229. have. The cellular module 221 may provide, for example, a voice call, a video call, a text service, or an internet service through a communication network. According to an embodiment, the cellular module 221 may perform identification and authentication of the electronic device 201 in a communication network by using a subscriber identification module (eg, a SIM card) 224. According to an embodiment, the cellular module 221 may perform at least some of the functions that the processor 210 may provide. According to an embodiment, the cellular module 221 may include a communication processor (CP). According to some embodiments, at least some (eg, two or more) of the cellular module 221, the WiFi module 223, the Bluetooth module 225, the GNSS module 227, or the NFC module 228 may be one integrated chip. (IC) or in an IC package. The RF module 229 may transmit / receive a communication signal (for example, an RF signal), for example. The RF module 229 may include, for example, a transceiver, a power amp module (PAM), a frequency filter, a low noise amplifier (LNA), an antenna, or the like. According to another embodiment, at least one of the cellular module 221, the WiFi module 223, the Bluetooth module 225, the GNSS module 227, or the NFC module 228 may transmit and receive an RF signal through a separate RF module. Can be. Subscriber identification module 224 may include, for example, a card or embedded SIM that includes a subscriber identification module, and may include unique identification information (eg, integrated circuit card identifier (ICCID)) or subscriber information (eg, IMSI). (international mobile subscriber identity)).
메모리(230)(예: 메모리(130))는, 예를 들면, 내장 메모리(232) 또는 외장 메모리(234)를 포함할 수 있다. 내장 메모리(232)는, 예를 들면, 휘발성 메모리(예: DRAM, SRAM, 또는 SDRAM 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, 플래시 메모리, 하드 드라이브, 또는 솔리드 스테이트 드라이브 (SSD) 중 적어도 하나를 포함할 수 있다. 외장 메모리(234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱 등을 포함할 수 있다. 외장 메모리(234)는 다양한 인터페이스를 통하여 전자 장치(201)와 기능적으로 또는 물리적으로 연결될 수 있다.The memory 230 (eg, the memory 130) may include, for example, an internal memory 232 or an external memory 234. The internal memory 232 may include, for example, volatile memory (for example, DRAM, SRAM, or SDRAM), nonvolatile memory (for example, one time programmable ROM (OTPROM), PROM, EPROM, EEPROM, mask ROM, flash ROM). The flash memory may include at least one of a flash memory, a hard drive, or a solid state drive (SSD) The external memory 234 may be a flash drive, for example, a compact flash (CF) or a secure digital (SD). ), Micro-SD, Mini-SD, extreme digital (xD), multi-media card (MMC), memory stick, etc. The external memory 234 may be functionally connected to the electronic device 201 through various interfaces. Or physically connected.
센서 모듈(240)은, 예를 들면, 물리량을 계측하거나 전자 장치(201)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈(240)은, 예를 들면, 제스처 센서(240A), 자이로 센서(240B), 기압 센서(240C), 마그네틱 센서(240D), 가속도 센서(240E), 그립 센서(240F), 근접 센서(240G), 컬러(color) 센서(240H)(예: RGB(red, green, blue) 센서), 생체 센서(240I), 온/습도 센서(240J), 조도 센서(240K), 또는 UV(ultra violet) 센서(240M) 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 센서 모듈(240)은, 예를 들면, 후각(e-nose) 센서, 일렉트로마이오그라피(EMG) 센서, 일렉트로엔씨팔로그램(EEG) 센서, 일렉트로카디오그램(ECG) 센서, IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시예에서는, 전자 장치(201)는 프로세서(210)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다.The sensor module 240 may measure, for example, a physical quantity or detect an operation state of the electronic device 201 and convert the measured or detected information into an electrical signal. The sensor module 240 includes, for example, a gesture sensor 240A, a gyro sensor 240B, an air pressure sensor 240C, a magnetic sensor 240D, an acceleration sensor 240E, a grip sensor 240F, and a proximity sensor ( 240G), color sensor 240H (e.g., red (green, blue) sensor), biometric sensor 240I, temperature / humidity sensor 240J, illuminance sensor 240K, or UV (ultra violet) ) May include at least one of the sensors 240M. Additionally or alternatively, sensor module 240 may include, for example, an e-nose sensor, an electromyography (EMG) sensor, an electrocardiogram (EEG) sensor, an electrocardiogram (ECG) sensor, Infrared (IR) sensors, iris sensors and / or fingerprint sensors. The sensor module 240 may further include a control circuit for controlling at least one or more sensors belonging therein. In some embodiments, the electronic device 201 further includes a processor configured to control the sensor module 240 as part of or separately from the processor 210, while the processor 210 is in a sleep state. The sensor module 240 may be controlled.
입력 장치(250)는, 예를 들면, 터치 패널(252), (디지털) 펜 센서(254), 키(256), 또는 초음파 입력 장치(258)를 포함할 수 있다. 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다. (디지털) 펜 센서(254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트를 포함할 수 있다. 키(256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(258)는 마이크(예: 마이크(288))를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.The input device 250 may include, for example, a touch panel 252, a (digital) pen sensor 254, a key 256, or an ultrasonic input device 258. The touch panel 252 may use at least one of capacitive, resistive, infrared, or ultrasonic methods, for example. In addition, the touch panel 252 may further include a control circuit. The touch panel 252 may further include a tactile layer to provide a tactile response to the user. The (digital) pen sensor 254 may be, for example, part of a touch panel or may include a separate recognition sheet. The key 256 may include, for example, a physical button, an optical key, or a keypad. The ultrasonic input device 258 may detect ultrasonic waves generated by an input tool through a microphone (for example, the microphone 288) and check data corresponding to the detected ultrasonic waves.
디스플레이(260)(예: 디스플레이(160))는 패널(262), 홀로그램 장치(264), 프로젝터(266), 및/또는 이들을 제어하기 위한 제어 회로를 포함할 수 있다. 패널(262)은, 예를 들면, 유연하게, 투명하게, 또는 착용할 수 있게 구현될 수 있다. 패널(262)은 터치 패널(252)과 하나 이상의 모듈로 구성될 수 있다. 한 실시예에 따르면, 패널(262)은 사용자의 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서(또는 포스 센서)를 포함할 수 있다. 상기 압력 센서는 터치 패널(252)과 일체형으로 구현되거나, 또는 터치 패널(252)과는 별도의 하나 이상의 센서로 구현될 수 있다. 홀로그램 장치(264)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터(266)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(201)의 내부 또는 외부에 위치할 수 있다. 인터페이스(270)는, 예를 들면, HDMI(272), USB(274), 광 인터페이스(optical interface)(276), 또는 D-sub(D-subminiature)(278)를 포함할 수 있다. 인터페이스(270)는, 예를 들면, 도 1에 도시된 통신 인터페이스(170)에 포함될 수 있다. 추가적으로 또는 대체적으로, 인터페이스(270)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다. Display 260 (eg, display 160) may include panel 262, hologram device 264, projector 266, and / or control circuitry to control them. The panel 262 may be implemented to be, for example, flexible, transparent, or wearable. The panel 262 may be configured with the touch panel 252 and one or more modules. According to one embodiment, panel 262 may include a pressure sensor (or force sensor) capable of measuring the strength of the pressure on the user's touch. The pressure sensor may be integrally implemented with the touch panel 252 or one or more sensors separate from the touch panel 252. The hologram 264 may show a stereoscopic image in the air by using interference of light. The projector 266 may display an image by projecting light onto a screen. For example, the screen may be located inside or outside the electronic device 201. The interface 270 may include, for example, an HDMI 272, a USB 274, an optical interface 276, or a D-subminiature 278. The interface 270 may be included in, for example, the communication interface 170 illustrated in FIG. 1. Additionally or alternatively, interface 270 may include, for example, a mobile high-definition link (MHL) interface, an SD card / multi-media card (MMC) interface, or an infrared data association (IrDA) compliant interface. have.
오디오 모듈(280)은, 예를 들면, 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(280)의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스(145)에 포함될 수 있다. 오디오 모듈(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286), 또는 마이크(288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다. 카메라 모듈(291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, 이미지 시그널 프로세서(ISP), 또는 플래시(예: LED 또는 xenon lamp 등)를 포함할 수 있다. 전력 관리 모듈(295)은, 예를 들면, 전자 장치(201)의 전력을 관리할 수 있다. 한 실시예에 따르면, 전력 관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC, 또는 배터리 또는 연료 게이지를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리(296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리(296)는, 예를 들면, 충전식 전지 및/또는 태양 전지를 포함할 수 있다. The audio module 280 may bidirectionally convert, for example, a sound and an electrical signal. At least some components of the audio module 280 may be included in, for example, the input / output interface 145 illustrated in FIG. 1. The audio module 280 may process sound information input or output through, for example, a speaker 282, a receiver 284, an earphone 286, a microphone 288, or the like. The camera module 291 is, for example, a device capable of capturing still images and moving images. According to one embodiment, the camera module 291 is one or more image sensors (eg, a front sensor or a rear sensor), a lens, and an image signal processor (ISP). Or flash (eg, LED or xenon lamp, etc.). The power management module 295 may manage power of the electronic device 201, for example. According to an embodiment, the power management module 295 may include a power management integrated circuit (PMIC), a charger IC, or a battery or fuel gauge. The PMIC may have a wired and / or wireless charging scheme. The wireless charging method may include, for example, a magnetic resonance method, a magnetic induction method, an electromagnetic wave method, or the like, and may further include additional circuits for wireless charging, such as a coil loop, a resonance circuit, a rectifier, and the like. have. The battery gauge may measure, for example, the remaining amount of the battery 296, the voltage, the current, or the temperature during charging. The battery 296 may include, for example, a rechargeable cell and / or a solar cell.
인디케이터(297)는 전자 장치(201) 또는 그 일부(예: 프로세서(210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동, 또는 햅틱 효과 등을 발생시킬 수 있다. 전자 장치(201)는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어플로(mediaFloTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있는 모바일 TV 지원 장치(예: GPU)를 포함할 수 있다. 본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치(예: 전자 장치(201))는 일부 구성요소가 생략되거나, 추가적인 구성요소를 더 포함하거나, 또는, 구성요소들 중 일부가 결합되어 하나의 개체로 구성되되, 결합 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.The indicator 297 may display a specific state of the electronic device 201 or a part thereof (for example, the processor 210), for example, a booting state, a message state, or a charging state. The motor 298 may convert electrical signals into mechanical vibrations, and may generate vibrations or haptic effects. The electronic device 201 may be, for example, a mobile TV supporting device capable of processing media data according to a standard such as digital multimedia broadcasting (DMB), digital video broadcasting (DVB), or mediaFlo ™ . : GPU). Each of the components described in this document may be composed of one or more components, and the names of the corresponding components may vary depending on the type of electronic device. In various embodiments, the electronic device (eg, the electronic device 201) may include some components, omit additional components, or combine some of the components to form a single entity. It is possible to perform the same function of the previous corresponding components.
도 3은 본 발명의 다양한 실시 예에 따른 프로그램 모듈 구성의 일 예를 도시한 블록도이다. 3 is a block diagram illustrating an example of a configuration of a program module according to various embodiments of the present disclosure.
한 실시예에 따르면, 프로그램 모듈(310)(예: 프로그램(140))은 전자 장치(예: 전자 장치(101))에 관련된 자원을 제어하는 운영 체제 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 운영 체제는, 예를 들면, AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, 또는 BadaTM를 포함할 수 있다. 도 3을 참조하면, 프로그램 모듈(310)은 커널(320)(예: 커널(141)), 미들웨어(330)(예: 미들웨어(143)), (API(360)(예: API(145)), 및/또는 어플리케이션(370)(예: 어플리케이션 프로그램(147))을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 전자 장치 상에 프리로드 되거나, 외부 전자 장치(예: 전자 장치(102, 104), 서버(106) 등)로부터 다운로드 가능하다.According to an embodiment of the present disclosure, the program module 310 (eg, the program 140) may include an operating system and / or various applications running on the operating system for controlling resources related to the electronic device (eg, the electronic device 101). For example, the application program 147 may be included. The operating system may include, for example, Android ™ , iOS ™ , Windows ™ , Symbian ™ , Tizen ™ , or Bada ™ . Referring to FIG. 3, the program module 310 may include the kernel 320 (eg, the kernel 141), the middleware 330 (eg, the middleware 143), and the API 360 (eg, the API 145). And / or an application 370 (eg, an application program 147.) At least a portion of the program module 310 may be preloaded on the electronic device or may be an external electronic device (eg, an electronic device ( 102, 104, server 106, etc.).
커널(320)은, 예를 들면, 시스템 리소스 매니저(321) 및/또는 디바이스 드라이버(323)를 포함할 수 있다. 시스템 리소스 매니저(321)는 시스템 리소스의 제어, 할당, 또는 회수를 수행할 수 있다. 한 실시예에 따르면, 시스템 리소스 매니저(321)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부를 포함할 수 있다. 디바이스 드라이버(323)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다. 미들웨어(330)는, 예를 들면, 어플리케이션(370)이 공통적으로 필요로 하는 기능을 제공하거나, 어플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 사용할 수 있도록 API(360)를 통해 다양한 기능들을 어플리케이션(370)으로 제공할 수 있다. 한 실시예에 따르면, 미들웨어(330)는 런타임 라이브러리(335), 어플리케이션 매니저(341), 윈도우 매니저(342), 멀티미디어 매니저(343), 리소스 매니저(344), 파워 매니저(345), 데이터베이스 매니저(346), 패키지 매니저(347), 커넥티비티 매니저(348), 노티피케이션 매니저(349), 로케이션 매니저(350), 그래픽 매니저(351), 또는 시큐리티 매니저(352) 중 적어도 하나를 포함할 수 있다.The kernel 320 may include, for example, a system resource manager 321 and / or a device driver 323. The system resource manager 321 may perform control, allocation, or retrieval of system resources. According to an embodiment, the system resource manager 321 may include a process manager, a memory manager, or a file system manager. The device driver 323 may include, for example, a display driver, a camera driver, a Bluetooth driver, a shared memory driver, a USB driver, a keypad driver, a WiFi driver, an audio driver, or an inter-process communication (IPC) driver. . The middleware 330 may provide various functions through the API 360, for example, to provide functions commonly required by the application 370, or to allow the application 370 to use limited system resources inside the electronic device. May be provided to the application 370. According to an embodiment, the middleware 330 may include a runtime library 335, an application manager 341, a window manager 342, a multimedia manager 343, a resource manager 344, a power manager 345, and a database manager ( 346, a package manager 347, a connectivity manager 348, a notification manager 349, a location manager 350, a graphic manager 351, or a security manager 352.
런타임 라이브러리(335)는, 예를 들면, 어플리케이션(370)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 런타임 라이브러리(335)는 입출력 관리, 메모리 관리, 또는 산술 함수 처리를 수행할 수 있다. 어플리케이션 매니저(341)는, 예를 들면, 어플리케이션(370)의 생명 주기를 관리할 수 있다. 윈도우 매니저(342)는 화면에서 사용되는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(343)는 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱을 이용하여 미디어 파일의 인코딩 또는 디코딩을 수행할 수 있다. 리소스 매니저(344)는 어플리케이션(370)의 소스 코드 또는 메모리의 공간을 관리할 수 있다. 파워 매니저(345)는, 예를 들면, 배터리의 용량 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보를 제공할 수 있다. 한 실시예에 따르면, 파워 매니저(345)는 바이오스(BIOS: basic input/output system)와 연동할 수 있다. 데이터베이스 매니저(346)는, 예를 들면, 어플리케이션(370)에서 사용될 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(347)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 갱신을 관리할 수 있다. The runtime library 335 may include, for example, a library module that the compiler uses to add new functionality through the programming language while the application 370 is running. The runtime library 335 may perform input / output management, memory management, or arithmetic function processing. The application manager 341 may manage, for example, the life cycle of the application 370. The window manager 342 may manage GUI resources used on the screen. The multimedia manager 343 may identify a format necessary for playing the media files, and may encode or decode the media file using a codec suitable for the format. The resource manager 344 may manage space of source code or memory of the application 370. The power manager 345 may manage, for example, the capacity or power of the battery and provide power information necessary for the operation of the electronic device. According to an embodiment of the present disclosure, the power manager 345 may interwork with a basic input / output system (BIOS). The database manager 346 may create, retrieve, or change a database to be used, for example, in the application 370. The package manager 347 may manage installation or update of an application distributed in the form of a package file.
커넥티비티 매니저(348)는, 예를 들면, 무선 연결을 관리할 수 있다. 노티피케이션 매니저(349)는, 예를 들면, 도착 메시지, 약속, 근접성 알림 등의 이벤트를 사용자에게 제공할 수 있다. 로케이션 매니저(350)는, 예를 들면, 전자 장치의 위치 정보를 관리할 수 있다. 그래픽 매니저(351)는, 예를 들면, 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저(352)는, 예를 들면, 시스템 보안 또는 사용자 인증을 제공할 수 있다. 한 실시예에 따르면, 미들웨어(330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화(telephony) 매니저 또는 전술된 구성요소들의 기능들의 조합을 형성할 수 있는 하는 미들웨어 모듈을 포함할 수 있다. 한 실시예에 따르면, 미들웨어(330)는 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. API(360)는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.The connectivity manager 348 may manage, for example, a wireless connection. The notification manager 349 may provide the user with events such as, for example, an arrival message, an appointment, a proximity notification, and the like. The location manager 350 may manage location information of the electronic device, for example. The graphic manager 351 may manage, for example, graphic effects to be provided to the user or a user interface related thereto. The security manager 352 may provide system security or user authentication, for example. According to an embodiment of the present disclosure, the middleware 330 may include a telephony manager for managing a voice or video call function of the electronic device or a middleware module capable of forming a combination of functions of the above-described components. . According to an embodiment, the middleware 330 may provide a module specialized for each type of operating system. The middleware 330 may dynamically delete some of the existing components or add new components. API 360 is, for example, a set of API programming functions, which may be provided in different configurations depending on the operating system. For example, in the case of Android or iOS, one API set may be provided for each platform, and in Tizen, two or more API sets may be provided for each platform.
어플리케이션(370)은, 예를 들면, 홈(371), 다이얼러(372), SMS/MMS(373), IM(instant message)(374), 브라우저(375), 카메라(376), 알람(377), 컨택트(378), 음성 다이얼(379), 이메일(380), 달력(381), 미디어 플레이어(382), 앨범(383), 와치(384), 헬스 케어(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보(예: 기압, 습도, 또는 온도 정보) 제공 어플리케이션을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 전자 장치와 외부 전자 장치 사이의 정보 교환을 지원할 수 있는 정보 교환 어플리케이션을 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치에 특정 정보를 전달하기 위한 노티피케이션 릴레이 어플리케이션, 또는 외부 전자 장치를 관리하기 위한 장치 관리 어플리케이션을 포함할 수 있다. 예를 들면, 알림 전달 어플리케이션은 전자 장치의 다른 어플리케이션에서 발생된 알림 정보를 외부 전자 장치로 전달하거나, 또는 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 장치 관리 어플리케이션은, 예를 들면, 전자 장치와 통신하는 외부 전자 장치의 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 또는 외부 전자 장치에서 동작하는 어플리케이션을 설치, 삭제, 또는 갱신할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 외부 전자 장치의 속성에 따라 지정된 어플리케이션(예: 모바일 의료 기기의 건강 관리 어플리케이션)을 포함할 수 있다. 한 실시예에 따르면, 어플리케이션(370)은 외부 전자 장치로부터 수신된 어플리케이션을 포함할 수 있다. 프로그램 모듈(310)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어(예: 프로세서(510)), 또는 이들 중 적어도 둘 이상의 조합으로 구현(예: 실행)될 수 있으며, 하나 이상의 기능을 수행하기 위한 모듈, 프로그램, 루틴, 명령어 세트 또는 프로세스를 포함할 수 있다.The application 370 is, for example, a home 371, a dialer 372, an SMS / MMS 373, an instant message (IM) 374, a browser 375, a camera 376, an alarm 377. , Contacts 378, voice dials 379, emails 380, calendars 381, media players 382, albums 383, watches 384, health care (e.g., measures exercise or blood sugar, etc.) Or an application for providing environmental information (eg, barometric pressure, humidity, or temperature information). According to an embodiment of the present disclosure, the application 370 may include an information exchange application capable of supporting information exchange between the electronic device and the external electronic device. The information exchange application may include, for example, a notification relay application for delivering specific information to the external electronic device, or a device management application for managing the external electronic device. For example, the notification delivery application may deliver notification information generated by another application of the electronic device to the external electronic device, or receive notification information from the external electronic device and provide the notification information to the user. The device management application may be, for example, the ability of an external electronic device to communicate with the electronic device (e.g. turn-on / turn-off of the external electronic device itself (or some component) or the brightness (or resolution) of the display). Control), or install, delete, or update an application running on the external electronic device. According to an embodiment of the present disclosure, the application 370 may include an application (eg, a health care application of a mobile medical device) designated according to an attribute of the external electronic device. According to an embodiment of the present disclosure, the application 370 may include an application received from an external electronic device. At least a part of the program module 310 may be implemented (eg, executed) in software, firmware, hardware (eg, the processor 510), or a combination of at least two or more thereof, and a module for performing one or more functions; It can include a program, routine, instruction set, or process.
도 4는 본 발명의 다양한 실시 예에 따른 네트워크 환경의 일 예를 도시한 도면이다. 4 is a diagram illustrating an example of a network environment according to various embodiments of the present disclosure.
도 4를 참조하면, 네트워크 환경(400)에서는 전자 장치(예, 스마트폰(410) 또는 스마트 TV(420))가 포함될 수 있다. 예컨대, 상기 전자 장치는 상기 네트워크 환경 내의 대역들 중 적어도 두 개의 주파수 대역을 이용하여 통신을 수행할 수 있다. 예컨대, 상기 대역들은, 60GHz 대역(401), 5GHz 대역(402), 2.4GHz 대역(403), 900MHz 대역(404) 및 54-790MHz 대역(405)을 포함할 수 있다. Referring to FIG. 4, an electronic device (eg, a smartphone 410 or a smart TV 420) may be included in the network environment 400. For example, the electronic device may perform communication using at least two frequency bands among bands in the network environment. For example, the bands may include a 60 GHz band 401, a 5 GHz band 402, a 2.4 GHz band 403, a 900 MHz band 404, and a 54-790 MHz band 405.
상기 대역들에 대한 통신 규격은 802.11 표준에 정의될 수 있다. 예를 들어, 상기 60GHz 대역(401)은 802.11ad 표준, 5GHz 대역(402)은 802.11a/n/ac 표준 2.4GHz 대역(403)은 802.11b/g/n 표준, 900MHz 대역(404)은 802.11ah 표준 그리고 54-790 MHz 대역(405)은 802.11af 표준에서 각각 통신 규격이 정의될 수 있다. The communication standard for the bands may be defined in the 802.11 standard. For example, the 60 GHz band 401 is an 802.11ad standard, the 5 GHz band 402 is an 802.11a / n / ac standard, the 2.4 GHz band 403 is an 802.11b / g / n standard, and the 900 MHz band 404 is 802.11 The ah standard and the 54-790 MHz band 405 may be defined in the 802.11af standard, respectively.
본 발명의 다양한 실시 예에 따르면, 상기 네트워크 환경(400)에서는 복수의 주파수 대역을 통해 통신을 수행하는 경우, 제1 전자 장치(예, 스마트폰(410))에서는 각 인터페이스에서의 처리량에 따라 데이터를 분할하고 상기 분할된 데이터에 순서 정보를 포함시켜 상기 인터페이스들로 분배할 수 있다. 예컨대, 각 인터페이스에서는 분배된 데이터를 제2 전자 장치(예, 스마트 TV(420))로 전송할 수 있다. According to various embodiments of the present disclosure, when the network environment 400 performs communication through a plurality of frequency bands, the first electronic device (eg, the smartphone 410) may transmit data according to throughput at each interface. It may be divided into and divided into the interfaces by including the order information in the divided data. For example, in each interface, the distributed data may be transmitted to the second electronic device (eg, the smart TV 420).
본 발명의 다양한 실시 예에 따르면, 상기 제1 전자 장치로부터 전송된 데이터를 수신한 상기 제2 전자 장치에서는 데이터에 포함된 순서 정보에 따라 수신된 데이터를 병합하여 데이터를 생성할 수 있다. 예컨대, 상기 제2 전자 장치에서 수신되는 데이터는, 인터페이스의 처리량에 따라 크기가 설정되고, 상기 처리량에 기반하여 특정 인터페이스로 분배 및 전송되어 상기 제2 전자 장치로 수신될 수 있다. According to various embodiments of the present disclosure, the second electronic device that receives the data transmitted from the first electronic device may generate data by merging the received data according to the order information included in the data. For example, the data received by the second electronic device may be sized according to the throughput of the interface, distributed and transmitted to a specific interface based on the throughput, and received by the second electronic device.
도 5는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 일 예를 도시한 블록도이다. 5 is a block diagram illustrating an example of a configuration of an electronic device according to various embodiments of the present disclosure.
도 5를 참조하면, 전자 장치(500)(예: 도 1의 전자 장치(101), 도 2의 전자 장치(201), 도 4의 스마트폰(410) 또는 스마트 TV(420))는 프로세서(510)(예, 도 1의 프로세서(120) 또는 도 2의 프로세서(210)), 통신회로(520)(예, 도 1의 통신 인터페이스(170) 또는 도 2의 통신 모듈(220)), 메모리(530)(예, 도 1의 메모리(130) 또는 도 2의 메모리(230)), 분배기(540), 병합기(550) 및 모니터(560) 중 적어도 하나를 포함할 수 있다. Referring to FIG. 5, the electronic device 500 (eg, the electronic device 101 of FIG. 1, the electronic device 201 of FIG. 2, the smart phone 410 or the smart TV 420 of FIG. 4) may include a processor ( 510 (eg, processor 120 of FIG. 1 or processor 210 of FIG. 2), communication circuit 520 (eg, communication interface 170 of FIG. 1 or communication module 220 of FIG. 2), memory 530 (eg, the memory 130 of FIG. 1 or the memory 230 of FIG. 2), the distributor 540, the merger 550, and the monitor 560.
본 발명의 다양한 실시 예에 따르면, 상기 전자 장치(500)가 분배기(540), 병합기(550) 또는 모니터(560)를 포함하는 것으로 설명하였지만, 적어도 일부는 생략 또는 변경될 수 있다. 상기 전자 장치(500)의 구성 중 일부가 생략 또는 변경될 때, 프로세서(510) 또는 상기 통신회로(520)는 해당 구성들의 동작을 수행하도록 구성될 수 있다. According to various embodiments of the present disclosure, the electronic device 500 has been described as including a distributor 540, a merger 550, or a monitor 560, but at least some of them may be omitted or changed. When a part of the configuration of the electronic device 500 is omitted or changed, the processor 510 or the communication circuit 520 may be configured to perform operations of the corresponding configurations.
본 발명의 다양한 실시 예에 따르면, 분배기(540), 병합기(550) 또는 모니터(560)의 구현은 논리적인 모듈로서, 특정 방식에 제한되지 않고 소프트웨어(software), 펌웨어(firmware) 또는 하드웨어(hardware) 등 다양한 방식으로 구현될 수 있다. According to various embodiments of the present disclosure, the implementation of the distributor 540, the merger 550, or the monitor 560 is a logical module, and is not limited to a specific manner, but may be implemented in software, firmware or hardware ( hardware), and the like.
본 발명의 다양한 실시 예에 따르면, 상기 프로세서(510)는 전자 장치(500)의 전반적인 동작을 제어할 수 있다. 예컨대, 상기 프로세서(510)는 인터페이스의 처리량 확인, 데이터 분배 또는 수신된 데이터를 배열하도록 제어할 수 있다. According to various embodiments of the present disclosure, the processor 510 may control the overall operation of the electronic device 500. For example, the processor 510 may control to check throughput of an interface, distribute data, or arrange received data.
본 발명의 다양한 실시 예에 따르면, 상기 통신회로(520)는 제1 인터페이스(521) 및 제2 인터페이스(522)를 포함할 수 있다. 상기 통신회로(520)는 상기 제1 인터페이스(521) 및 제2 인터페이스(522)를 통해 서로 다른 주파수 대역(예, 2.4GHz 및 5GHz)으로 동시에(concurrently) 데이터가 전송되도록 제어할 수 있다.According to various embodiments of the present disclosure, the communication circuit 520 may include a first interface 521 and a second interface 522. The communication circuit 520 may control data to be simultaneously transmitted in different frequency bands (for example, 2.4 GHz and 5 GHz) through the first interface 521 and the second interface 522.
본 발명의 다양한 실시 예에 따르면, 상기 통신회로(520)가 두 개의 인터페이스를 포함하는 것으로 설명하였지만, 그 외 다양한 대역을 통해 통신을 수행하기 위한 더 많은 인터페이스가 포함될 수 있다. According to various embodiments of the present disclosure, the communication circuit 520 has been described as including two interfaces, but more interfaces for performing communication through various bands may be included.
본 발명의 다양한 실시 예에 따르면, 상기 메모리(530)는 제1 인터페이스(521)에 대한 제1 버퍼를 포함할 수 있다. 상기 메모리(530)는 제2 인터페이스(522)에 대한 제2 버퍼를 포함할 수 있다. 예컨대, 상기 제1 버퍼는 제1 인터페이스(521)를 통해 수신된 데이터 또는 분배기(540)로부터 전달된 제1 인터페이스(521)를 통해 송신할 데이터를 저장할 수 있다. 상기 제2 버퍼는 제2 인터페이스(522)를 통해 수신된 데이터 또는 분배기(540)로부터 전달된 제2 인터페이스(522)를 통해 송신할 데이터를 저장할 수 있다. According to various embodiments of the present disclosure, the memory 530 may include a first buffer for the first interface 521. The memory 530 may include a second buffer for the second interface 522. For example, the first buffer may store data received through the first interface 521 or data to be transmitted through the first interface 521 delivered from the distributor 540. The second buffer may store data received through the second interface 522 or data to be transmitted through the second interface 522 delivered from the distributor 540.
본 발명의 다양한 실시 예에 따르면, 제1 인터페이스(521)는 상기 제1 버퍼에 저장된 데이터를 요청할 수 있다. 제2 인터페이스(522)는 상기 제2 버퍼에 저장된 데이터를 요청할 수 있다. 예컨대, 상기 모니터(560)는 제1 버퍼에 저장된 데이터가 상기 제1 인터페이스(521)로 출력되는 출력량을 제1 인터페이스(521)에 대한 처리량으로 판단할 수 있다. 상기 모니터(560)는 제2 버퍼에 저장된 데이터가 상기 제2 인터페이스(522)로 출력되는 출력량을 제2 인터페이스(522)에 대한 처리량으로도 판단할 수 있다.According to various embodiments of the present disclosure, the first interface 521 may request data stored in the first buffer. The second interface 522 may request data stored in the second buffer. For example, the monitor 560 may determine the output amount of the data stored in the first buffer to the first interface 521 as the throughput for the first interface 521. The monitor 560 may also determine the output amount of the data stored in the second buffer to the second interface 522 as the throughput for the second interface 522.
본 발명의 다양한 실시 예에 따르면, 상기 모니터(560)는 상기 제1 버퍼 및 상기 제2 버퍼의 출력량 외에 상기 전자 장치(500)에 포함된 다양한 구성에서의 처리량을 확인하여, 상기 제1 인터페이스(521)에 대한 처리량 및 제2 인터페이스(222)에 대한 처리량으로 판단할 수 있다. According to various embodiments of the present disclosure, the monitor 560 may check throughput in various configurations included in the electronic device 500 in addition to the output amounts of the first buffer and the second buffer, It may be determined by the throughput for 521 and the throughput for the second interface 222.
본 발명의 다양한 실시 예에 따르면, 상기 제1 버퍼 및 상기 제2 버퍼에 저장된 데이터는 일정 시간이 경과하거나 해당 버퍼에 저장된 데이터 량이 지정된 값을 초과함에 따라, 통신회로(520) 또는 병합기(550)로 전달되도록 설정될 수 있다. According to various embodiments of the present disclosure, the data stored in the first buffer and the second buffer has a predetermined time elapsed or the amount of data stored in the buffer exceeds a specified value. Can be set to be delivered.
상기 분배기(540)는 통신회로(520)에 포함된 인터페이스 각각의 처리량에 기반하여 데이터를 각 인터페이스로 분배시킬 수 있다. The distributor 540 may distribute data to each interface based on the throughput of each interface included in the communication circuit 520.
본 발명의 다양한 실시 예에 따르면, 상기 분배기(540)는 아래 수학식 1에서 계산된 인터페이스들 대비 특정 인터페이스의 처리량의 비율 값에 기반하여 데이터를 분배할 수 있다. According to various embodiments of the present disclosure, the distributor 540 may distribute data based on a ratio value of throughput of a specific interface to interfaces calculated in Equation 1 below.
수학식 1에서 li는 인터페이스 i로 전달될 데이터 크기(byte), Bmax는 정의된 인터페이스 i에서 처리 할 최대 데이터 크기, di는 단위 시간 동안 인터페이스 i에서의 처리량 그리고 maxi' ∈ I(di')은 통신회로(520)에 포함된 인터페이스들(예, 제1 인터페이스(521) 및 제2 인터페이스(522))에 대한 최대 처리량일 수 있다. In Equation 1, l i is the size of data to be delivered to interface i (byte), B max is the maximum data size to be processed at the defined interface i, d i is the throughput at interface i for unit time, and max i ' d i ′ may be the maximum throughput for the interfaces included in the communication circuit 520 (eg, the first interface 521 and the second interface 522).
본 발명의 다양한 실시 예에 따르면, 상기 분배기(540)에서는 모니터(560)를 통해 측정된 통신회로(520)의 처리량에 기반하여 수학식 1의 변수(예, 'di', 'di′' 또는 'Bmax')를 변경할 수 있다. 분배기(540)에서는 이전에 측정된 처리량 값과 새로 측정된 처리량 값과의 차이가 설정된 값을 초과하는 경우 변수를 변경할 수 있다. According to various embodiments of the present disclosure, in the distributor 540, variables of Equation 1 (eg, 'd i ', 'd i ') based on the throughput of the communication circuit 520 measured by the monitor 560. 'Or' B max ') can be changed. The dispenser 540 may change the variable if the difference between the previously measured throughput value and the newly measured throughput value exceeds the set value.
본 발명의 다양한 실시 예에 따르면, 상기 병합기(550)는 통신회로(520)를 통해 수신된 데이터에 포함된 순서 정보에 기반하여 데이터를 처리할 수 있다. 예컨대, 상기 병합기(550)는 상기 수신된 데이터에 포함된 순서 정보를 제거하고, 상기 순서 정보에 기반하여, 상기 순서 정보가 제거된 데이터를 상위 레이어로 전달할 수 있다.According to various embodiments of the present disclosure, the merger 550 may process data based on order information included in data received through the communication circuit 520. For example, the merger 550 may remove order information included in the received data, and transmit the data from which the order information has been removed to an upper layer based on the order information.
본 발명의 다양한 실시 예에 따르면, 상기 수신된 데이터에 순서 정보가 포함되지 않은 경우, 전자 장치(500)는 상기 수신된 데이터를 상기 병합기(550)로 전달하여 상기 제1 버퍼 및 상기 제2 버퍼에서 상기 수신된 데이터가 수신된 순서에 기반하여, 상위 레이어로 전달되도록 제어할 수 있다. According to various embodiments of the present disclosure, when order information is not included in the received data, the electronic device 500 transfers the received data to the merger 550 to transmit the first buffer and the second buffer. The received data in the buffer may be controlled to be delivered to an upper layer based on the received order.
본 발명의 다양한 실시 예에 따르면, 상기 모니터(560)는 통신회로(520)에서의 처리량을 실시간으로 또는 일정 주기로 모니터링할 수 있다. 예컨대, 상기 모니터(560)는 각 인터페이스를 통해 일정 시간 통해 송수신된 데이터 양, 일정 시간 동안 버퍼의 크기 변화량 또는 일정 시간 동안 각 인터페이스로 전달된 데이터 양에 기반하여 처리량을 판단할 수 있다. According to various embodiments of the present disclosure, the monitor 560 may monitor the throughput of the communication circuit 520 in real time or at regular intervals. For example, the monitor 560 may determine the throughput based on the amount of data transmitted and received through a certain time, the amount of change in the buffer for a certain time, or the amount of data transferred to each interface for a certain time.
본 발명의 다양한 실시 예에 따르면, 전자 장치(500)는 제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로(예, 제1 인터페이스(521)) 및 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로(예, 제2 인터페이스(522))를 포함하는, 통신회로(520); 및 상기 통신 회로에 전기적으로 연결된 프로세서(510);를 포함하고, 상기 프로세서(510)는, 상기 제1 통신 회로의 제1 데이터 처리량 및 상기 제2 통신 회로의 제2 데이터 처리량을 판단하고, 상기 판단에 기반하여, 상기 제1 통신 회로를 이용하여 제1 크기의 제1 데이터를 전송하고, 상기 제2 통신 회로를 이용하여 상기 제1 크기보다 큰 제2 크기의 제2 데이터를 전송하도록 설정될 수 있다. According to various embodiments of the present disclosure, the electronic device 500 may perform communication through a first communication circuit (for example, the first interface 521) and a second frequency band for communicating through a first frequency band. Communication circuitry 520, including a second communication circuitry (eg, second interface 522); And a processor 510 electrically connected to the communication circuit, wherein the processor 510 determines a first data throughput of the first communication circuit and a second data throughput of the second communication circuit, And based on the determination, to transmit the first data of the first size using the first communication circuit, and to transmit the second data of the second size larger than the first size using the second communication circuit. Can be.
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터 처리량은 상기 제2 데이터 처리량보다 크고, 상기 제1 데이터는 상기 제2 데이터의 크기보다 큰 데이터일 수 있다.According to various embodiments of the present disclosure, the first data throughput may be greater than the second data throughput, and the first data may be data larger than the size of the second data.
본 발명의 다양한 실시 예에 따르면, 상기 프로세서(510)는, 상기 제1 데이터의 적어도 일부를 상기 제2 데이터보다 먼저 전송하도록 제어할 수 있다. According to various embodiments of the present disclosure, the processor 510 may control to transmit at least a portion of the first data before the second data.
본 발명의 다양한 실시 예에 따르면, 상기 프로세서(510)는, 미리 지정된 시간 동안 상기 제1 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제1 데이터 처리량을 판단하고, 미리 지정된 시간 동안 상기 제2 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제2 데이터 처리량을 판단하도록 제어할 수 있다.According to various embodiments of the present disclosure, the processor 510 may determine the first data throughput corresponding to the data processing speed in the first communication circuit for a predetermined time, and determine the second communication for a predetermined time. The second data throughput may be determined to correspond to the data processing speed in the circuit.
본 발명의 다양한 실시 예에 따르면, 상기 프로세서(510)는, 상기 제1 통신 회로에 연결된 제1 버퍼에서의 처리량을 상기 제1 데이터 처리량으로 판단하고, 상기 제2 통신 회로에 연결된 제2 버퍼에서의 처리량을 상기 제2 데이터 처리량으로 판단하도록 제어할 수 있다. According to various embodiments of the present disclosure, the processor 510 may determine the throughput in the first buffer connected to the first communication circuit as the first data throughput, and determine in the second buffer connected to the second communication circuit. The throughput of may be determined to be the second data throughput.
본 발명의 다양한 실시 예에 따르면, 상기 프로세서(510)는, 상기 제1 데이터 처리량과 상기 제2 데이터 처리량 중 높은 데이터 처리량을 가지는 통신 회로로 상기 송신 데이터 중 우선 순위를 가지는 데이터를 분배하도록 제어할 수 있다.According to various embodiments of the present disclosure, the processor 510 may control to distribute data having priority among the transmission data to a communication circuit having a higher data throughput among the first data throughput and the second data throughput. Can be.
본 발명의 다양한 실시 예에 따르면, 상기 프로세서(510)는, 상기 제1 데이터 처리량 및 상기 제2 데이터 처리량에 기초하여, 상기 제1 데이터에 포함된 적어도 하나의 제1 패킷 및 상기 제2 데이터에 포함된 적어도 하나의 제2 패킷에 순서 정보를 삽입하고, 상기 순서 정보에 대응하게, 상기 제1 통신 회로를 통해 상기 적어도 하나의 제1 패킷을 전송하고, 상기 제2 통신 회로를 통해 상기 적어도 하나의 제2 패킷을 전송하도록 제어할 수 있다. According to various embodiments of the present disclosure, the processor 510 may be configured to at least one first packet and the second data included in the first data based on the first data throughput and the second data throughput. Inserting order information into at least one second packet included, and transmitting the at least one first packet through the first communication circuit, and corresponding to the order information, and the at least one through the second communication circuit The second packet may be controlled to be transmitted.
본 발명의 다양한 실시 예에 따르면, 상기 프로세서(510)는, 상기 통신 회로에서의 전체 데이터 처리량 대비 상기 제1 데이터 처리량의 제1 비율에 대응하게 상기 제1 크기의 상기 제1 데이터를 생성하고, 상기 전체 데이터 처리량 대비 상기 제2 데이터 처리량의 제2 비율에 대응하게 상기 제2 크기로 상기 제2 데이터를 생성하도록 제어할 수 있다.According to various embodiments of the present disclosure, the processor 510 may generate the first data having the first size corresponding to the first ratio of the first data throughput to the total data throughput in the communication circuit. The second data may be controlled to generate the second data at the second size corresponding to the second ratio of the second data throughput to the total data throughput.
본 발명의 다양한 실시 예에 따르면, 전자 장치(500)는 제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로(예, 제1 인터페이스(521)) 및 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로(예, 제2 인터페이스(522))를 포함하는, 통신회로(520); 및 상기 통신 회로에 전기적으로 연결된 프로세서(510);를 포함하며, 상기 프로세서(510)는, 상기 제1 통신 회로를 통해 제1 데이터를 수신하고, 상기 제2 통신 회로를 통해 제2 데이터를 수신하고, 상기 제1 데이터 및 상기 제2 데이터에 포함된 순서 정보에 기반하여 상기 제1 데이터 및 상기 제2 데이터를 배열하여 수신 데이터로 저장하도록 설정될 수 있다. According to various embodiments of the present disclosure, the electronic device 500 may perform communication through a first communication circuit (for example, the first interface 521) and a second frequency band for communicating through a first frequency band. Communication circuitry 520, including a second communication circuitry (eg, second interface 522); And a processor 510 electrically connected to the communication circuit, wherein the processor 510 receives first data through the first communication circuit and receives second data through the second communication circuit. The first data and the second data may be arranged and stored as received data based on the order information included in the first data and the second data.
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터는, 상기 제2 데이터보다 크기가 큰 데이터이며, 상기 제1 데이터 및 상기 제2 데이터를 송신한 제2 전자 장치에서 상기 제1 통신 회로 및 상기 제2 통신 회로에 대응되는 제2 통신 회로에서의 데이터 처리량에 기반하여, 상기 제2 데이터 보다 우선적으로 송신될 수 있다. According to various embodiments of the present disclosure, the first data is data having a larger size than the second data, and the first communication circuit and the second electronic device in the second electronic device that has transmitted the first data and the second data. Based on the data throughput in the second communication circuit corresponding to the second communication circuit, the second data may be transmitted in preference to the second data.
본 발명의 다양한 실시 예에 따르면, 전자 장치(500)는, 하우징; 상기 하우징의 일부를 통하여 노출된 디스플레이; 상기 하우징 내에 위치하며, 제1 주파수 대역, 및 상기 제1 주파수 대역과 분리되고 상기 제1 주파수 대역보다 낮은 제2 주파수 대역을 사용하고, 와이파이 프로토콜을 지원하도록 구성된 무선 통신 회로(예, 통신회로(520)); 상기 무선 통신 회로와 전기적으로 연결되고 상기 하우징 내에 위치한 적어도 하나의 프로세서(예, 프로세서(510)); 및 상기 프로세서와 전기적으로 연결되고 상기 하우징 내에 위치한 메모리(530)를 포함하며, 상기 메모리(530)는, 실행 시에, 상기 프로세서가, 상기 무선 통신 회로를 이용하여 전송될 데이터를 수신하고, 상기 데이터를 복수의 데이터 패킷들로 분할하고, 상기 제1 주파수 대역을 통하여, 상기 복수의 데이터 패킷들 중 제1 수(a first number)의 패킷들을 포함하는 제1 데이터를 제공하고, 상기 제2 주파수 대역을 통하여, 상기 복수의 데이터 패킷들 중, 상기 제1 수보다 적은 제2 수의 패킷들을 포함하는 제2 데이터를 제공하고, 선택된 제1 시간 주기 동안, 상기 제1 데이터가 상기 제1 주파수 대역을 사용하여 전송되고, 상기 제1 시간 주기와 적어도 일부 중첩되는 제2 시간 주기 동안 상기 제2 데이터가 상기 제2 주파수 대역을 사용하여, 전송하도록 하는 인스트럭션들을 저장할 수 있다. According to various embodiments of the present disclosure, the electronic device 500 may include a housing; A display exposed through a portion of the housing; A wireless communication circuit (eg, communication circuitry) located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and support a Wi-Fi protocol; 520)); At least one processor (eg, processor 510) electrically connected with the wireless communication circuitry and located within the housing; And a memory 530 electrically connected to the processor and located within the housing, wherein the memory 530, when executed, receives the data to be transmitted by the processor using the wireless communication circuitry, and Dividing data into a plurality of data packets, and providing first data including a first number of packets of the plurality of data packets through the first frequency band, wherein the second frequency Providing, over a band, second data comprising a second number of packets less than the first number of the plurality of data packets, and for a selected first time period, the first data being in the first frequency band And transmit the second data using the second frequency band during a second time period that is transmitted using at least partially overlapping the first time period. It may store the illustration.
본 발명의 다양한 실시 예에 따르면, 상기 인스트럭션들은, 상기 프로세서(510)가, 상기 제1 주파수 대역 및 상기 제2 주파수 대역을 사용할 때의 상기 무선 통신 회로의 처리량을 확인하고, 상기 처리량에 기반하여, 상기 제1 데이터 및 상기 제2 데이터에 순서 정보를 삽입하도록 설정될 수 있다. According to various embodiments of the present disclosure, the instructions may include the processor 510 confirming throughput of the wireless communication circuit when the first frequency band and the second frequency band are used, and based on the throughput. The first data and the second data may be set to insert order information.
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터 및 상기 제2 데이터는 상기 순서 정보가 삽입됨을 나타내는 정보를 포함하는 헤더를 포함할 수 있다.According to various embodiments of the present disclosure, the first data and the second data may include a header including information indicating that the order information is inserted.
본 발명의 다양한 실시 예에 따르면, 상기 제1 주파수 대역은 5.0 GHz를 포함하며, 상기 제2 주파수 대역은 2.4 GHz를 포함할 수 있다. According to various embodiments of the present disclosure, the first frequency band may include 5.0 GHz, and the second frequency band may include 2.4 GHz.
본 발명의 다양한 실시 예에 따르면, 전자 장치(500)는, 하우징; 상기 하우징의 일부를 통하여 노출된 디스플레이; 상기 하우징 내에 위치하며, 제1 주파수 대역, 및 상기 제1 주파수 대역과 분리되고 상기 제1 주파수 대역보다 낮은 제2 주파수 대역을 사용하고, 와이파이 프로토콜을 지원하도록 구성된 무선 통신 회로(예, 통신회로(520)); 상기 무선 통신 회로와 전기적으로 연결되고 상기 하우징 내에 위치한 적어도 하나의 프로세서(510); 및 상기 프로세서(510)와 전기적으로 연결되고 상기 하우징 내에 위치한 메모리(530)를 포함하며, 상기 메모리(530)는, 실행 시에, 상기 프로세서(510)가, 상기 무선 통신 회로를 통해 외부 전자 장치로부터, 상기 제1 주파수 대역을 통하여 제1 데이터를 수신하고, 상기 제2 주파수 대역을 통하여 제2 데이터를 수신하고, 상기 제1 데이터 및 상기 제2 데이터에 삽입된 순서 정보를 확인하고, 상기 순서 정보에 기반하여, 상기 제1 데이터 및 상기 제2 데이터를 배열하여 수신 데이터로 저장하는 인스트럭션들을 저장할 수 있다.According to various embodiments of the present disclosure, the electronic device 500 may include a housing; A display exposed through a portion of the housing; A wireless communication circuit (eg, communication circuitry) located within the housing and configured to use a first frequency band, and a second frequency band separate from the first frequency band and lower than the first frequency band, and support a Wi-Fi protocol; 520)); At least one processor (510) electrically connected to the wireless communication circuitry and located within the housing; And a memory 530 electrically connected to the processor 510 and located in the housing, wherein the memory 530, when executed, is executed by the processor 510 through an wireless communication circuit. Receiving first data through the first frequency band, receiving second data through the second frequency band, confirming the order information inserted into the first data and the second data, and Based on the information, instructions for arranging the first data and the second data and storing the received data as received data may be stored.
도 6a 및 도 6b는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 다양한 예를 도시한 블록도들이다. 6A and 6B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
도 6a를 참조하면, 전자 장치(600)는 제1 인터페이스(610), 제2 인터페이스(620), 분배기(630) 또는 모니터(640)를 포함할 수 있다. Referring to FIG. 6A, the electronic device 600 may include a first interface 610, a second interface 620, a distributor 630, or a monitor 640.
본 발명의 다양한 실시 예에 따르면, 상기 제1 인터페이스(610)는 5GHz의 주파수 대역으로 데이터를 전송하도록 설정될 수 있다. 상기 제2 인터페이스(620)는 2.4GHz의 주파수 대역에서 데이터를 전송하도록 설정될 수 있다. According to various embodiments of the present disclosure, the first interface 610 may be set to transmit data in a frequency band of 5 GHz. The second interface 620 may be configured to transmit data in a frequency band of 2.4 GHz.
본 발명의 다양한 실시 예에 따르면, 상기 전자 장치(600)는 상위 레이어(예, transmission control protocol/internet protocol: TCP/IP 레이어)로 데이터(601)가 입력되면, 상기 데이터(601)를 분배기(630)로 전달하도록 제어할 수 있다. 예컨대, 상기 데이터(601)는 식별 정보(예: 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l' 등)를 포함하는 복수의 패킷을 포함할 수 있다. 상기 식별 정보는 상기 상위 레이어에서 포함된 것으로, 상기 데이터(601)에 포함된 패킷을 식별하기 위한 정보로 사용될 수 있다. According to various embodiments of the present disclosure, when the data 601 is input to an upper layer (eg, a transmission control protocol / internet protocol (TCP / IP layer)), the electronic device 600 divides the data 601 into a distributor ( Control to forward to 630. For example, the data 601 may include identification information (eg, 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', ' j ',' k ',' l ', etc.). The identification information is included in the upper layer and may be used as information for identifying a packet included in the data 601.
본 발명의 다양한 실시 예에 따르면, 상기 분배기(630)는 상기 제1 인터페이스(610) 및 상기 제2 인터페이스(620)에서의 처리량에 따라 상기 데이터(601)를 제1 데이터(601a)와 제2 데이터(601b)로 분할하여 각 인터페이스로 분배할 수 있다. 예컨대, 각 인터페이스에서의 한번에 전송 가능한 데이터량에 따라 상기 데이터(601)는 식별 정보 'a' 내지 'd', 또는 'g' 내지 'j'를 포함하는 패킷들을 포함하는 제1 데이터(601a) 및 식별 정보 'e' 및 'f', 또는 'k' 및 'l'을 포함하는 패킷들을 포함하는 제2 데이터(601b)로 분할될 수 있다. According to various embodiments of the present disclosure, the distributor 630 may convert the data 601 into the first data 601a and the second data according to the throughput of the first interface 610 and the second interface 620. The data 601b may be divided and distributed to each interface. For example, the data 601 may include first data 601a including packets including identification information 'a' through 'd' or 'g' through 'j' according to the amount of data that can be transmitted at one time on each interface. And second data 601b including packets including identification information 'e' and 'f', or 'k' and 'l'.
본 발명의 다양한 실시 예에 따르면, 상기 각 인터페이스에서 한번에 전송 가능한 데이터량은, 상기 데이터(601)를 수신하는 전자 장치에서 지연 없이 수신할 수 있는 데이터량으로서 각 인터페이스의 처리량에 기반하여 계산된 것일 수 있다. According to various embodiments of the present disclosure, the amount of data that can be transmitted at one time on each interface is an amount of data that can be received without delay in the electronic device that receives the data 601 and is calculated based on throughput of each interface. Can be.
본 발명의 다양한 실시 예에 따르면, 상기 데이터(예, 제1 데이터(601a) 또는 제2 데이터(601b))는 각 데이터에 포함된 패킷의 식별 정보가 특정 값(예, 'a')을 나타냄에 따라 전송 우선 순위를 가지며, 전자 장치(600)에 포함된 인터페이스 중 처리량이 높은 인터페이스(예, 제1 인터페이스(610))로 분배될 수 있다. According to various embodiments of the present disclosure, the data (eg, the first data 601a or the second data 601b) indicates that identification information of a packet included in each data indicates a specific value (eg, 'a'). According to the present invention, the transmission priority may be distributed to an interface (eg, the first interface 610) having a high throughput among the interfaces included in the electronic device 600.
본 발명의 다양한 실시 예에 따르면, 상기 모니터(640)는 상기 제1 인터페이스(610)를 이용한 데이터 송신 속도(d1) 및 상기 제2 인터페이스(620)를 이용한 데이터 송신 속도(d2)를 측정할 수 있다. 예컨대, 상기 d1은 10Mbps로, d2는 5Mbps로 측정될 수 있다. According to various embodiments of the present disclosure, the monitor 640 may measure a data transmission rate d1 using the first interface 610 and a data transmission rate d2 using the second interface 620. have. For example, the d1 may be measured at 10 Mbps and d2 at 5 Mbps.
본 발명의 다양한 실시 예에 따르면, 전자 장치(600)에서는 모니터(640)에서 측정된 속도에 기반하여, 데이터(601)로부터 분할된 제1 데이터(601a) 및 제2 데이터(601b)가 분배되는 인터페이스를 결정할 수 있다. 예컨대, 상기 d1이 d2보다 송신 속도가 높은 값으로 측정됨에 따라, 상기 제1 데이터(601a)와 제2 데이터(601b) 중 크기가 큰 데이터를 제1 인터페이스(610)로 배분할 수 있다. According to various embodiments of the present disclosure, the electronic device 600 may distribute the first data 601a and the second data 601b that are divided from the data 601 based on the speed measured by the monitor 640. The interface can be determined. For example, as d1 is measured at a higher transmission speed than d2, data having a larger size among the first data 601a and the second data 601b may be distributed to the first interface 610.
본 발명의 다양한 실시 예에 따라, 상기 모니터(640)는 일정 시간 동안 각 인터페이스와 연결된 버퍼의 크기 변화량 또는 전달되는 데이터량 등을 확인하여, 상기 데이터(601)로부터 분할된 제1 데이터(601a) 및 제2 데이터(601b)가 분배되는 인터페이스를 결정할 수 있다. 예컨대, 전자 장치(600)에서는 제1 인터페이스(610) 및 제2 인터페이스(620) 중 버퍼의 크기 변화량 또는 전달되는 데이터량이 높은 버퍼와 연결된 인터페이스로, 수신된 데이터 중 일부 데이터가 배분되도록 제어할 수 있다. According to various embodiments of the present disclosure, the monitor 640 checks the size change amount of the buffer connected to each interface or the amount of data to be transmitted for a predetermined time, and divides the first data 601a from the data 601. And an interface through which the second data 601b is distributed. For example, the electronic device 600 is an interface connected to a buffer having a large amount of change in the size of the buffer or a large amount of data to be transmitted among the first interface 610 and the second interface 620, and may control some data among the received data to be distributed. have.
도 6b를 참조하면, 전자 장치(600)는 TCP/IP 모듈(602), 제1 무선 인터페이스(610a), 제2 무선 인터페이스(620a) 또는 분배기(630)를 포함할 수 있다. 예컨대, 상기 전자 장치(600)는 TCP/IP 모듈(602)로 입력된 데이터(예, 데이터(601))가 분배기(630)로 전달되도록 제어할 수 있다. Referring to FIG. 6B, the electronic device 600 may include a TCP / IP module 602, a first air interface 610a, a second air interface 620a, or a distributor 630. For example, the electronic device 600 may control the data (eg, data 601) input to the TCP / IP module 602 to be delivered to the distributor 630.
본 발명의 다양한 실시 예에 따르면, 상기 제1 무선 인터페이스(610a)는 제1 MAC 모듈(611), 제1 PHY 모듈(612) 또는 제1 RF 모듈(613)을 포함할 수 있다. 상기 제2 무선 인터페이스(620a)는 제2 MAC 모듈(621), 제2 PHY 모듈(622) 또는 제2 RF 모듈(623)을 포함할 수 있다. 상기 제1 MAC 모듈(611) 및 제2 MAC 모듈(621)은 서로 다른 MAC 어드레스(address)가 설정되어 서로 다른 MAC 계층을 통해 통신할 수 있다. According to various embodiments of the present disclosure, the first air interface 610a may include a first MAC module 611, a first PHY module 612, or a first RF module 613. The second air interface 620a may include a second MAC module 621, a second PHY module 622, or a second RF module 623. The first MAC module 611 and the second MAC module 621 may set different MAC addresses to communicate through different MAC layers.
본 발명의 다양한 실시 예에 따르면, 상기 전자 장치(600)는 TCP/IP 모듈(602)로 입력된 데이터가 분배기(630)로 전달되도록 제어할 수 있다. 예컨대, 상기 분배기(630)에서는 제1 무선 인터페이스(610a) 및 제2 무선 인터페이스(620a)의 처리량에 기반하여 상기 데이터를 분배하여 각 인터페이스로 전달할 수 있다. According to various embodiments of the present disclosure, the electronic device 600 may control the data input to the TCP / IP module 602 to be delivered to the distributor 630. For example, the distributor 630 may distribute the data to each interface based on the throughputs of the first air interface 610a and the second air interface 620a.
본 발명의 다양한 실시 예에 따르면, 상기 전자 장치(600)는 제1 무선 인터페이스(610a)로 분배된 데이터는 상기 제1 MAC 모듈(611)과 제1 PHY 모듈(612)을 통해 MAC 레이어 및 PHY 레이어로 전달되고 이후 제1 RF 모듈(613)을 통해 무선 망으로 전송될 수 있다. 제2 무선 인터페이스(620a)로 분배된 데이터는 상기 제2 MAC 모듈(621)과 제2 PHY 모듈(622)로 전달되고 이후 제2 RF 모듈(623)을 통해 전송될 수 있다. According to various embodiments of the present disclosure, the data distributed to the first air interface 610a of the electronic device 600 may be provided through the MAC layer and the PHY through the first MAC module 611 and the first PHY module 612. The layer may be transmitted to the layer and then transmitted to the wireless network through the first RF module 613. Data distributed through the second air interface 620a may be transmitted to the second MAC module 621 and the second PHY module 622 and then transmitted through the second RF module 623.
도 7a 및 도 7b는 본 발명의 다양한 실시 예에 따른 전자 장치 구성의 다양한 예를 도시한 블록도들이다. 7A and 7B are block diagrams illustrating various examples of an electronic device configuration according to various embodiments of the present disclosure.
도 7a를 참조하면, 전자 장치(700)는 제1 인터페이스(710), 제2 인터페이스(720), 버퍼(730) 또는 병합기(740)를 포함할 수 있다. Referring to FIG. 7A, the electronic device 700 may include a first interface 710, a second interface 720, a buffer 730, or a merger 740.
본 발명의 다양한 실시 예에 따르면, 상기 제1 인터페이스(710)는 5GHz의 주파수 대역을 통해 제1 데이터(701a)를 수신할 수 있다. 상기 제2 인터페이스(720)는 2.4GHz의 주파수 대역에서 제2 데이터(701b)를 수신할 수 있다. 상기 수신된 데이터는 버퍼(730)로 전달될 수 있다. 예컨대, 상기 제1 데이터(701a)는 식별 정보 'a' 내지 'd' 및 'g' 내지 'j' 를 포함하는 패킷들을 포함할 수 있다. 상기 제2 데이터(701b)는 식별 정보 'e' 및 'f'를 포함하는 패킷들을 포함할 수 있다. According to various embodiments of the present disclosure, the first interface 710 may receive the first data 701a through a frequency band of 5 GHz. The second interface 720 may receive the second data 701b in the frequency band of 2.4 GHz. The received data may be delivered to the buffer 730. For example, the first data 701a may include packets including identification information 'a' through 'd' and 'g' through 'j'. The second data 701b may include packets including identification information 'e' and 'f'.
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터(701a) 또는 제2 데이터(701b)는 상기 데이터를 송신한 전자 장치(예, 전자 장치(700))의 각 인터페이스에서 한번에 전송 가능한 최대 데이터량에 따라 분할된 것일 수 있다. According to various embodiments of the present disclosure, the first data 701a or the second data 701b may be the maximum amount of data that can be transmitted at one time on each interface of the electronic device (eg, the electronic device 700) that has transmitted the data. It may be divided according to.
본 발명의 다양한 실시 예에 따르면, 상기 버퍼(730)는 상기 제1 데이터(701a) 및 상기 제2 데이터(701b)를 일정 시간 동안 저장하고, 지정된 조건을 만족하면(예: 일정 시간이 경과됨) 상기 데이터를 병합기(740)로 전달할 수 있다. According to various embodiments of the present disclosure, the buffer 730 stores the first data 701a and the second data 701b for a predetermined time, and when a specified condition is satisfied (for example, a predetermined time elapses). The data may be transferred to the merger 740.
본 발명의 다양한 실시 예에 따르면, 상기 병합기(740)는 상기 버퍼(730)로부터 전달된 데이터를 배열할 수 있다. 예컨대, 상기 병합기(740)는 데이터가 수신된 순서 또는 수신된 데이터에 포함된 순서 정보에 따라 데이터를 배열할 수 있다. 상기 병합기(740)는 수신된 데이터에 순서 정보가 포함되지 않은 경우, 수신된 순서에 따라 TCP/IP 레이어로 수신된 데이터를 전달할 수 있다.According to various embodiments of the present disclosure, the merger 740 may arrange the data transferred from the buffer 730. For example, the merger 740 may arrange the data according to the order in which the data is received or the order information included in the received data. When the order information is not included in the received data, the merger 740 may transfer the received data to the TCP / IP layer according to the received order.
도 7b를 참조하면, 전자 장치(700)는 TCP/IP 모듈(702), 제1 무선 인터페이스(710a), 제2 무선 인터페이스(720a), 버퍼(730) 또는 병합기(740)를 포함할 수 있다. Referring to FIG. 7B, the electronic device 700 may include a TCP / IP module 702, a first air interface 710a, a second air interface 720a, a buffer 730, or a merger 740. have.
본 발명의 다양한 실시 예에 따르면, 상기 제1 무선 인터페이스(710a)는 제1 MAC 모듈(711), 제1 PHY 모듈(712) 또는 제1 RF 모듈(713)을 포함할 수 있다. 상기 제2 무선 인터페이스(720a)는 제2 MAC 모듈(721), 제2 PHY 모듈(722) 또는 제2 RF 모듈(723)을 포함할 수 있다. 예컨대, 상기 제1 MAC 모듈(711) 및 상기 제2 MAC 모듈(721)은 서로 다른 MAC 어드레스가 설정되어 서로 다른 MAC 레이어에서 동작하도록 구성될 수 있다.According to various embodiments of the present disclosure, the first air interface 710a may include a first MAC module 711, a first PHY module 712, or a first RF module 713. The second air interface 720a may include a second MAC module 721, a second PHY module 722, or a second RF module 723. For example, the first MAC module 711 and the second MAC module 721 may be configured to operate in different MAC layers by setting different MAC addresses.
본 발명의 다양한 실시 예에 따르면, 제1 무선 인터페이스(710a)를 통해 수신된 제1 데이터(701a)는 제1 RF 모듈(713)을 통해 무선 망으로부터 수신될 수 있다. 제1 데이터(701a)는 제1 PHY 모듈(712)과 상기 제1 MAC 모듈(711)를 통해 버퍼(730)에 저장될 수 있다. 제2 무선 인터페이스(720a)를 통해 수신된 제2 데이터(701b)는 제2 RF 모듈(723)을 통해 무선 망으로부터 수신될 수 있다. 제2 데이터(701b)는 제2 PHY 모듈(722)과 제2 MAC 모듈(721)을 통해 버퍼(730)에 저장될 수 있다. According to various embodiments of the present disclosure, the first data 701a received through the first air interface 710a may be received from the wireless network through the first RF module 713. The first data 701a may be stored in the buffer 730 through the first PHY module 712 and the first MAC module 711. The second data 701b received through the second air interface 720a may be received from the wireless network through the second RF module 723. The second data 701b may be stored in the buffer 730 through the second PHY module 722 and the second MAC module 721.
본 발명의 다양한 실시 예에 따르면, 상기 버퍼(730)에 저장된 제1 데이터(701a), 또는 제2 데이터(701b)는 병합기(730)로 전달되어 상위 레이어(예, TCP/IP 레이어)에서 처리 가능한 데이터로 변환하여 상기 상위 레이어로 전달할 수 있다. 예컨대, 병합기(730)은 수신된 데이터에 포함된 순서 정보를 제거하고, 상기 순서 정보가 제거된 데이터를 TCP/IP 모듈(702)로 전달할 수 있다.According to various embodiments of the present disclosure, the first data 701a or the second data 701b stored in the buffer 730 may be transferred to the merger 730 in an upper layer (eg, TCP / IP layer). The data may be converted into processable data and transferred to the upper layer. For example, the merger 730 may remove the order information included in the received data and transmit the data from which the order information has been removed to the TCP / IP module 702.
본 발명의 다양한 실시 예에 따르면, 상기 버퍼(730)에 저장된 제1 데이터(701a) 또는 제2 데이터(701b)에 순서 정보가 포함되지 않은 경우, 전자 장치(700)는 제1 데이터(701a) 또는 제2 데이터(701b)를 병합기(730)로 전달하여 순서 정보를 제거하는 동작을 수행하지 않고, 상기 TCP/IP 모듈(702)로 전달하도록 제어할 수 있다. According to various embodiments of the present disclosure, when order information is not included in the first data 701a or the second data 701b stored in the buffer 730, the electronic device 700 may include the first data 701a. Alternatively, the second data 701b may be transferred to the merger 730 to control the transfer to the TCP / IP module 702 without performing an operation of removing order information.
도 8은 본 발명의 다양한 실시 예에 따라, 데이터 구성의 일 예를 도시한 블록도이다. 8 is a block diagram illustrating an example of a data configuration according to various embodiments of the present disclosure.
도 8을 참조하면, 데이터(800)는, 버전(version), 서비스 종류(type of service), 총 길이 정보(total length)(또는 크기 정보), 식별 정보(identification), 플래그 정보(flags), 프로토콜 정보(protocol)(예, TCP/IP 프로토콜), 헤더(header), 소스 정보(source address), 목적지 정보(destination address) 또는 데이터 패킷(data)(820) 중 적어도 일부를 포함할 수 있다. Referring to FIG. 8, the data 800 includes a version, a type of service, a total length information (or size information), identification information, flag information, flags, Protocol information (eg, TCP / IP protocol), a header, a source address, a destination address, or a data packet 820 may be included.
본 발명의 다양한 실시 예에 따르면, 상기 순서 정보(810)는 상기 데이터(800)를 외부 전자 장치로 송신하는 전자 장치(예: 도 5의 전자 장치(500) 또는 도 6a 및 도 6b의 전자 장치(600))에서 삽입된 것일 수 있다. 상기 순서 정보(810)는 상기 전자 장치에 포함된 복수의 인터페이스들 각각의 처리량에 기반하여 상기 데이터(800)에 포함된 데이터 패킷(820)에 대한 전송 우선 순위를 나타낼 수 있다. 예컨대, 상기 순서 정보(810)는 특정 인터페이스에서의 처리량 값의 내림차순으로 우선 순위를 가질 수 있다. According to various embodiments of the present disclosure, the order information 810 may include an electronic device (eg, the electronic device 500 of FIG. 5 or the electronic device of FIGS. 6A and 6B) that transmits the data 800 to an external electronic device. It may be inserted in (600). The order information 810 may indicate a transmission priority of the data packet 820 included in the data 800 based on the throughput of each of the plurality of interfaces included in the electronic device. For example, the order information 810 may have priority in descending order of throughput values in a particular interface.
본 발명의 다양한 실시 예에 따르면, 상기 순서 정보(810)가 상기 데이터(800)의 특정 필드에 포함되는 것으로 설명하였지만, 상기 헤더에 포함되거나, 별도의 데이터 패킷으로 상기 데이터(800)와는 별도의 데이터로서 다양한 형태로 구성될 수 있다. According to various embodiments of the present disclosure, although the order information 810 has been described as being included in a specific field of the data 800, the order information 810 may be included in the header or may be separate from the data 800 in a separate data packet. It can be configured in various forms as data.
본 발명의 다양한 실시 예에 따르면, 상기 총 길이 정보는 데이터(800)의 크기를 나타낼 수 있다. 상기 총 길이 정보는 상기 전자 장치의 복수의 인터페이스들 각각의 처리량에 따라 설정될 수 있다. 예컨대, 일정 시간 동안의 상기 복수의 인터페이스들의 처리량 대비 특정 인터페이스의 처리량의 비율에 따라, 상기 데이터(800)의 크기가 설정될 수 있다. According to various embodiments of the present disclosure, the total length information may indicate the size of the data 800. The total length information may be set according to throughput of each of the plurality of interfaces of the electronic device. For example, the size of the data 800 may be set according to a ratio of throughput of a specific interface to throughput of the plurality of interfaces for a predetermined time.
도 9는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 송신하는 동작의 일 예를 도시한 흐름도이다. 9 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 9를 참조하면, 910 동작에서, 전자 장치(예: 도 5의 전자 장치(500) 또는 도 6a 및 도 6b의 전자 장치(600))는 제1 대역을 지원하는 제1 인터페이스 및 제2 대역을 지원하는 제2 인터페이스의 처리량을 판단할 수 있다. 예컨대, 전자 장치는 일정 시간 동안 상기 제1 및 제2 인터페이스에서의 데이터 통신 속도에 기반하여 상기 처리량을 판단할 수 있다. Referring to FIG. 9, in operation 910, an electronic device (eg, the electronic device 500 of FIG. 5 or the electronic device 600 of FIGS. 6A and 6B) may support a first interface and a second band. It is possible to determine the throughput of the second interface supporting. For example, the electronic device may determine the throughput based on the data communication rates on the first and second interfaces for a predetermined time.
920 동작에서, 전자 장치는 제1 및 제2 인터페이스의 처리량에 기반하여, 제1 및 제2 인터페이스를 통해 전달할 제1 데이터 및 제2 데이터를 생성할 수 있다. 상기 제1 데이터 및 제2 데이터의 크기는 상기 제1 및 제2 인터페이스의 전체 처리량 대비 특정 인터페이스의 처리량 비율에 따라 설정될 수 있다. In operation 920, the electronic device may generate first data and second data to be transmitted through the first and second interfaces based on the throughputs of the first and second interfaces. The size of the first data and the second data may be set according to a ratio of throughputs of a specific interface to total throughputs of the first and second interfaces.
930 동작에서, 전자 장치는 생성된 제1 데이터 및 제2 데이터에 순서 정보를 삽입할 수 있다. In operation 930, the electronic device may insert order information into the generated first data and the second data.
본 발명의 다양한 실시 예에 따르면, 전자 장치는 처리량이 높은 인터페이스로 분배되는 데이터의 순서로 순차적인 값(예: 제1 내지 제3 순서 정보, '1' 내지 '2' 또는 1번 내지 3번 등)을 포함하는 순서 정보를 데이터 각각에 포함시킬 수 있다. 예컨대, 상기 제1 데이터에는 제1 순서 정보(또는 1번)가 포함되고, 상기 제2 데이터에는 제2 순서 정보(또는 2번)가 포함될 수 있다. According to various embodiments of the present disclosure, an electronic device may display a sequential value (for example, first to third order information, '1' to '2' or numbers 1 to 3) in order of data distributed through a high throughput interface. Or the like) may be included in each data. For example, the first data may include first order information (or number 1), and the second data may include second order information (or number 2).
940 동작에서, 전자 장치는 제1 인터페이스를 통해 제1 데이터를 전송하고, 제2 인터페이스를 통해 제2 데이터를 전송할 수 있다. 예컨대, 전자 장치는 상기 제1 및 제2 인터페이스 중 처리량이 높은 인터페이스의 순서로, 큰 데이터 크기를 가지는 데이터를 분배하고, 분배된 데이터가 각 인터페이스를 통해 전송되도록 제어할 수 있다. In operation 940, the electronic device may transmit first data through the first interface and second data through the second interface. For example, the electronic device may distribute data having a large data size in order of an interface having high throughput among the first and second interfaces, and control the distributed data to be transmitted through each interface.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로를 통해 제1 데이터를 수신하고, 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로를 통해 제2 데이터를 수신하는 동작; 및 상기 제1 데이터 및 상기 제2 데이터에 포함된 순서 정보에 기반하여 상기 제1 데이터 및 상기 제2 데이터를 배열하여 수신 데이터로 저장하는 동작;을 포함할 수 있다. According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may receive first data through a first communication circuit that communicates through a first frequency band, and receive a second frequency band. Receiving second data via a second communication circuit that communicates through; And arranging the first data and the second data as received data based on order information included in the first data and the second data.
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터는, 상기 제2 데이터보다 크기가 큰 데이터이며, 상기 제1 데이터 및 상기 제2 데이터를 송신한 제2 전자 장치에서 상기 제1 통신 회로 및 상기 제2 통신 회로에 대응되는 제2 통신 회로에서의 데이터 처리량에 기반하여, 상기 제2 데이터 보다 우선적으로 송신될 수 있다.According to various embodiments of the present disclosure, the first data is data having a larger size than the second data, and the first communication circuit and the second electronic device in the second electronic device that has transmitted the first data and the second data. Based on the data throughput in the second communication circuit corresponding to the second communication circuit, the second data may be transmitted in preference to the second data.
도 10은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 송신하는 동작의 일 예를 도시한 흐름도이다.10 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 10을 참조하면, 1010 동작에서, 전자 장치(예: 도 5의 전자 장치(500) 또는 도 6a 및 도 6b의 전자 장치(600))는 상위 레이어(예: TCP/IP 레이어)로부터 전달된 데이터를 확인할 수 있다. Referring to FIG. 10, in operation 1010, an electronic device (eg, the electronic device 500 of FIG. 5 or the electronic device 600 of FIGS. 6A and 6B) is transferred from an upper layer (eg, a TCP / IP layer). You can check the data.
1020 동작에서, 전자 장치는 상기 전달된 데이터를 분할할 수 있다. 예컨대, 상기 전자 장치는 상기 전자 장치에 포함된 인터페이스들의 처리량에 기반하여 분할할 데이터의 크기를 설정할 수 있다. In operation 1020, the electronic device may divide the transmitted data. For example, the electronic device may set a size of data to be divided based on throughput of interfaces included in the electronic device.
1030 동작에서, 전자 장치는 상기 분할된 데이터에 대한 순서 정보가 필요한지를 판단할 수 있다. In operation 1030, the electronic device may determine whether order information on the divided data is necessary.
본 발명의 다양한 실시 예에 따르면, 상기 전달된 데이터로부터 분할된 제1 데이터 및 제2 데이터가 서로 다른 인터페이스로 분배되더라도 적어도 일부 중첩된 시간 구간에서 전송되어야 하는 경우, 상기 전자 장치는 상기 제1 및 제2 데이터에 동일한 순서 정보가 필요한 것으로 판단할 수 있다. According to various embodiments of the present disclosure, if the first data and the second data divided from the transmitted data are to be transmitted in at least some overlapping time intervals even if they are distributed to different interfaces, the electronic device may include the first and second data. It may be determined that the same order information is required for the second data.
본 발명의 다양한 실시 예에 따르면, 제1 및 제2 데이터가 동일한 인터페이스를 통해 중첩되지 않는 시간 구간에서 전송되어야 하는 경우, 상기 전자 장치는 상기 제1 및 제2 데이터 중 크기가 큰 데이터가 우선 순위를 가지는 순서 정보가 필요한 것으로 판단할 수 있다. According to various embodiments of the present disclosure, when the first and second data are to be transmitted in a time interval not overlapping through the same interface, the electronic device prioritizes data having a larger size among the first and second data. It may be determined that order information having a is required.
본 발명의 다양한 실시 예에 따르면, 상기 분할된 데이터에 대한 순서 정보가 필요한지를 판단하는 동작을 수행하는 것으로 설명하였지만, 전자 장치에서 상기 전자 장치의 구성(예: 도 5의 통신회로(520) 또는 메모리(530), 도 6a의 제1 및 제2 인터페이스(610 및 620) 또는 제1 및 제2 무선 인터페이스(610a 및 620b)) 중 적어도 일부에서의 처리량을 확인할 수 없는 경우 전술된 1030의 동작은 생략될 수 있다. 예컨대, 상기 전자 장치에서는 1020 동작을 수행한 후 1040 동작을 수행하여, 분할된 데이터 중 적어도 일부를 처리량이 큰 인터페이스로 전달하도록 제어할 수 있다. According to various embodiments of the present disclosure, an operation of determining whether order information on the divided data is required is described. However, the configuration of the electronic device (eg, the communication circuit 520 of FIG. If the throughput cannot be determined in at least some of the memory 530, the first and second interfaces 610 and 620 of FIG. 6A, or the first and second air interfaces 610a and 620b, the operation of 1030 described above may be performed. May be omitted. For example, the electronic device may perform operation 1040 and then perform operation 1040 to control at least some of the divided data to be transmitted to an interface having a high throughput.
1030 동작의 수행 결과, 데이터에 대한 순서 정보가 필요한 것으로 판단되는 경우, 1032 동작에서 전자 장치는 상기 분할된 데이터를 확인하고, 각 분할된 데이터에 대한 상기 확인된 순서 정보에 대응하는 순차적인 순서 정보를 삽입할 수 있다. 예를 들어, 제1 크기의 제1 데이터에 전송 우선 순위를 갖는 제1 순서 정보를 삽입하고, 상기 제1 크기보다 작은 제2 크기의 제2 데이터에 제2 순서 정보를 삽입하여 데이터를 분할할 수 있다. As a result of performing operation 1030, when it is determined that order information about data is required, in operation 1032, the electronic device checks the divided data, and sequential order information corresponding to the identified order information on each divided data. You can insert For example, data may be partitioned by inserting first order information having a transmission priority into first data of a first size and inserting second order information into second data of a second size smaller than the first size. Can be.
1030 동작의 수행 결과 데이터에 대한 순서 정보가 필요하지 않거나 1032 동작의 수행에 따라 분할된 데이터에 순서 정보가 삽입된 경우, 1040 동작에서 전자 장치는 처리량이 큰 인터페이스의 순서로 분할된 데이터를 전달할 수 있다. 예컨대, 전자 장치는 상기 분할된 데이터 중 일부 데이터(예, 데이터 크기가 가장 큰 데이터) 또는 분할된 데이터에 순서 정보가 삽입된 경우 전송 우선 순위를 갖는 순서 정보를 포함한 데이터를 상기 처리량이 큰 인터페이스로 전달할 수 있다. If the order information for the data is not required as the result of the operation 1030 or if the order information is inserted into the divided data according to the operation 1032, in operation 1040, the electronic device may deliver the divided data in the order of the interface having the high throughput. have. For example, the electronic device may convert some data (for example, data having the largest data size) among the divided data or data including order information having a transmission priority when the order information is inserted into the divided data into the interface having the high throughput. I can deliver it.
도 11은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 수신하는 동작의 일 예를 도시한 흐름도이다.11 is a flowchart illustrating an example of an operation of receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 11을 참조하면, 1110 동작에서, 전자 장치(예: 도 5에 도시된 전자 장치(500))의 프로세서는 제1 인터페이스를 통해 제3 데이터를 수신하고, 제2 인터페이스를 통해 제2 데이터를 수신하도록 제어할 수 있다. Referring to FIG. 11, in operation 1110, a processor of an electronic device (eg, the electronic device 500 illustrated in FIG. 5) receives third data through a first interface and receives second data through a second interface. Can be controlled to receive.
1120 동작에서, 전자 장치는 재정렬 기능 지원이 가능한지 판단하는 동작을 수행할 수 있다. 예를 들어, 전자 장치의 프로세서는 상기 수신된 제3 데이터 또는 제2 데이터에 순서 정보가 포함되었는지에 따라, 재정렬 기능이 지원되는지를 판단하도록 제어할 수 있다. In operation 1120, the electronic device may perform an operation of determining whether the reordering function is supported. For example, the processor of the electronic device may control to determine whether the reordering function is supported according to whether the received third data or the second data includes order information.
1120 동작의 수행 결과, 수신된 제3 데이터 또는 제2 데이터에 순서 정보가 포함되어 재정렬 기능이 지원되는 경우, 1130 동작에서, 전자 장치의 프로세서(또는 도 5의 병합기(550))는 상기 제3 데이터 또는 제2 데이터에 포함된 순서 정보를 확인할 수 있다. 예컨대, 제1 데이터는 제3 순서 정보를 포함할 수 있다. As a result of performing the operation 1120, when the received third data or the second data includes the order information and the reordering function is supported, in operation 1130, the processor of the electronic device (or the merger 550 of FIG. 5) may perform the operation. Order information included in the third data or the second data can be confirmed. For example, the first data may include third order information.
1140 동작에서, 전자 장치의 프로세서는 상기 수신된 제2 데이터의 제2 순서 정보의 앞쪽 순번에 해당하는 제1 순서 정보를 포함하는 데이터가 버퍼에 저장되어있는지 여부를 판단할 수 있다. 예컨대, 제1 순서 정보는 제2 순서 정보 보다 앞선 순서일 수 있다.In operation 1140, the processor of the electronic device may determine whether data including first order information corresponding to the front order of the second order information of the received second data is stored in the buffer. For example, the first order information may be an order earlier than the second order information.
1140 동작의 수행 결과, 제1 순서 정보를 포함하는 데이터가 버퍼에 저장되지 않은 경우, 1141 동작에서 전자 장치의 프로세서(또는 도 5의 병합기(550))는 제1 순서 정보를 포함하는 데이터의 수신을 대기할 수 있다. As a result of performing operation 1140, when the data including the first order information is not stored in the buffer, in operation 1141, the processor of the electronic device (or the merger 550 of FIG. 5) may determine the data including the first order information. It can wait to receive.
1142 동작에서, 전자 장치의 프로세서는 지정된 대기시간이 만료되었는지를 판단할 수 있다.In operation 1142, the processor of the electronic device may determine whether the specified waiting time has expired.
1142 동작의 수행 결과 지정된 대기시간이 만료된 경우, 다시 1140 동작을 수행하여 전자 장치의 프로세서는 제1 순서 정보를 포함하는 데이터가 버퍼에 저장되었는지를 판단할 수 있다. When the specified waiting time expires as a result of the operation 1142, the processor of the electronic device may determine whether data including the first order information is stored in the buffer by performing operation 1140 again.
1142 동작의 수행 결과 지정된 대기시간이 만료되지 않은 경우, 다시 1141 동작을 수행하여 전자 장치의 프로세서(또는 도 5의 병합기(550))는 제1 순서 정보를 포함하는 데이터의 수신을 대기할 수 있다. If the specified waiting time has not expired as a result of the operation 1142, the processor (or the merger 550 of FIG. 5) of the electronic device may wait to receive data including the first order information by performing operation 1141 again. have.
1140 동작의 수행 결과, 제1 순서 정보의 데이터가 버퍼에 저장된 경우, 1150 동작에서, 전자 장치의 프로세서(또는 도 5의 병합기(550))는 상위 레이어로 제1 순서 정보를 포함하는 데이터, 제2 순서 정보를 포함하는 제2 데이터, 또는 제3 순서 정보를 포함하는 제3 데이터를 전달할 수 있다. 예를 들어, 전자 장치의 프로세서(또는 도 5의 병합기(550))는 데이터에 포함된 순서 정보에 기반하여 데이터를 상위 레이어로 전달할 수 있다.As a result of performing the operation 1140, when the data of the first order information is stored in the buffer, in operation 1150, the processor of the electronic device (or the merger 550 of FIG. 5) may include data including the first order information as an upper layer. Second data including the second order information or third data including the third order information may be delivered. For example, the processor of the electronic device (or the merger 550 of FIG. 5) may transfer the data to the upper layer based on the order information included in the data.
도 12는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 상위 레이어로부터 전달된 데이터를 복수의 인터페이스를 통해 송신하는 동작의 일 예를 도시한 흐름도이다. 12 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 12를 참조하면, 전자 장치(1200)(예: 도 5의 전자 장치(500)) 또는 도 6a 및 도 6b의 전자 장치(600))는 상위 레이어 모듈(1201)(예: 도 7b의 TCP/IP 모듈(702)), 분배기(1202)(예: 도 5의 분배기(540)), 모니터(1203)(예: 도 5의 모니터(560)) 및 복수의 인터페이스(예, 제1 인터페이스(1204)(예: 도 5의 제1 인터페이스(521)) 및 제2 인터페이스(1205)(예: 도 5의 제2 인터페이스(522)))를 포함할 수 있다. Referring to FIG. 12, the electronic device 1200 (eg, the electronic device 500 of FIG. 5) or the electronic device 600 of FIGS. 6A and 6B may include the upper layer module 1201 (eg, TCP of FIG. 7B). / IP module 702), distributor 1202 (e.g., distributor 540 of FIG. 5), monitor 1203 (e.g., monitor 560 of FIG. 5), and multiple interfaces (e.g., first interface ( 1204 (eg, the first interface 521 of FIG. 5) and the second interface 1205 (eg, the second interface 522 of FIG. 5).
1210 동작에서, 전자 장치의 프로세서(예: 도 5의 프로세서(510))는 상위 레이어 모듈(1201)이 분배기(1202)로 데이터를 전달하도록 제어할 수 있다. In operation 1210, the processor of the electronic device (eg, the processor 510 of FIG. 5) may control the upper layer module 1201 to transfer data to the distributor 1202.
1220 동작에서, 전자 장치의 프로세서는 분배기(1202)가 상기 전달된 데이터를 분배하도록 하기 위해, 상기 복수의 인터페이스 각각에 대한 처리량 정보를 모니터(1203)로 요청할 수 있다. In operation 1220, the processor of the electronic device may request the monitor 1203 for throughput information about each of the plurality of interfaces so that the distributor 1202 distributes the transferred data.
1230 동작에서, 전자 장치의 프로세서는 모니터(1203)가 상기 제1 인터페이스(1204)에 대한 제1처리량 및 제2 인터페이스(1205)에 대한 제2 처리량을 확인하도록 제어할 수 있다. 전자 장치의 프로세서는 모니터(1203)가 상기 제1 처리량 및 상기 제2 처리량 정보를 포함하는 인터페이스 별 처리량 정보를 상기 분배기(1202)로 전송하도록 제어할 수 있다. In operation 1230, the processor of the electronic device may control the monitor 1203 to check the first throughput for the first interface 1204 and the second throughput for the second interface 1205. The processor of the electronic device may control the monitor 1203 to transmit the throughput information for each interface including the first throughput information and the second throughput information to the distributor 1202.
1240 동작에서, 전자 장치의 프로세서는 분배기(1202)가 상기 인터페이스 별 처리량 정보에 기반하여, 제1 인터페이스(1204)로 분배할 데이터 크기 및 제2 인터페이스(1205)로 분배할 데이터 크기를 결정하도록 제어할 수 있다. 예컨대, 전자 장치의 프로세서는 상기 분배기(1202)가 제1 인터페이스(1204) 및 제2 인터페이스(1205)의 전체 처리량 대비 특정 인터페이스에 대한 처리량의 비율에 대응하여, 각 인터페이스로 분배할 데이터의 크기를 결정하도록 제어할 수 있다. In operation 1240, the processor of the electronic device controls the distributor 1202 to determine the size of data to be distributed to the first interface 1204 and the size of data to be distributed to the second interface 1205 based on the throughput information for each interface. can do. For example, the processor of the electronic device may determine the size of data to be distributed to each interface by the distributor 1202 corresponding to the ratio of the throughput for the specific interface to the total throughput of the first interface 1204 and the second interface 1205. Control to determine.
1251 동작에서, 전자 장치의 프로세서는 분배기(1202)가 제1 인터페이스(1204)로 제1 데이터를 전달하도록 제어할 수 있다. 예를 들어, 상기 제1 데이터는 상기 데이터 중 일부를 포함하며, 상기 제1 인터페이스(1204)에서 전송 가능한 최대 데이터 크기에서 상기 처리량의 비율에 해당하는 데이터 크기로 설정될 수 있다. In operation 1251, the processor of the electronic device may control the distributor 1202 to transfer the first data to the first interface 1204. For example, the first data includes some of the data, and may be set to a data size corresponding to the ratio of the throughput to the maximum data size that can be transmitted by the first interface 1204.
1252 동작에서, 전자 장치의 프로세서는 분배기(1202)가 제2 인터페이스(1205)로 제2 데이터를 전달하도록 제어할 수 있다. 예를 들어, 상기 제2 데이터는 상기 제1 데이터를 제외한 상기 데이터 중 일부를 포함하며, 상기 제2 인터페이스(1205)에서 전송 가능한 최대 데이터 크기에서 상기 처리량의 비율에 해당하는 데이터 크기로 설정될 수 있다.In operation 1252, the processor of the electronic device may control the distributor 1202 to transfer the second data to the second interface 1205. For example, the second data may include some of the data except for the first data, and may be set to a data size corresponding to the ratio of the throughput to the maximum data size that can be transmitted from the second interface 1205. have.
본 발명의 다양한 실시 예에 따르면, 전술된 1252 동작이 1251 동작 이후에 수행되는 것으로 도시되었지만, 1251 동작이 수행되는 시간 및 1252 동작이 수행되는 시간이 적어도 일부 중첩될 수 있다. 예컨대, 1251 동작 및 1252 동작이 상기 적어도 일부 중첩된 시간 동안 수행되어 분배기(1202)에서는 제1 인터페이스(1204) 및 제2 인터페이스(1205)로 제1 데이터 및 제2 데이터를 실질적으로 동시에 전달할 수 있다. According to various embodiments of the present disclosure, although operation 1252 described above is performed after operation 1251, a time at which operation 1251 is performed and a time at which operation 1252 is performed may overlap at least partially. For example, operations 1251 and 1252 may be performed during the at least some overlapping time such that the distributor 1202 may deliver first and second data substantially simultaneously to the first interface 1204 and the second interface 1205. .
1253 동작에서, 전자 장치의 프로세서는 분배기(1202)가 제1 인터페이스(1204)로 상기 제1 및 제2 데이터를 제외한 데이터 중 일부를 포함하는 제3 데이터를 전달하고, 1254 동작에서 분배기(1202)는 제2 인터페이스(1205)로 상기 제1 내지 제3 데이터를 제외한 데이터 중 일부를 포함하는 제4 데이터를 전달하도록 제어할 수 있다. In operation 1253, the processor of the electronic device transmits the third data including some of the data excluding the first and second data to the first interface 1204 by the distributor 1202, and in operation 1254. The second interface 1205 may control to transmit fourth data including some of data except for the first to third data.
본 발명의 다양한 실시 예에 따라, 상기 데이터가 모두 상기 제1 인터페이스(1204) 혹은 상기 제2 인터페이스(1205)로 전달될 때까지, 전자 장치의 프로세서는 전자 장치(1200)가 데이터를 제1 인터페이스(1204) 및 제2 인터페이스(1205)로 분배하는 동작(예, 1251 동작 내지 1254 동작)을 반복적으로 수행하도록 제어할 수 있다. According to various embodiments of the present disclosure, until all of the data is transferred to the first interface 1204 or the second interface 1205, the processor of the electronic device may transmit the data to the first interface. In operation 1204 and the operation of distributing to the second interface 1205 (for example, operations 1251 to 1254), the control may be repeatedly performed.
본 발명의 다양한 실시 예에 따라, 제1 인터페이스(1204) 및 제2 인터페이스(1205)에서는 전달된 데이터를 무선망을 통해 외부로 송신할 수 있다. According to various embodiments of the present disclosure, the first interface 1204 and the second interface 1205 may transmit the transmitted data to the outside through a wireless network.
도 13은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 상위 레이어로부터 전달된 데이터를 복수의 인터페이스를 통해 송신하는 동작의 일 예를 도시한 흐름도이다. 13 is a flowchart illustrating an example of an operation of transmitting data transmitted from an upper layer through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 13을 참조하면, 전자 장치(1300)(예: 도 5의 전자 장치(500)) 또는 도 6a 및 도 6b의 전자 장치(600))는 상위 레이어 모듈(1301)(예: 도 7b의 TCP/IP 모듈(702)), 분배기(1302)(예: 도 5의 분배기(540)), 모니터(1303)(예: 도 5의 모니터(560)) 및 복수의 인터페이스(예, 제1 인터페이스(1304)(예: 도 5의 제1 인터페이스(521)) 및 제2 인터페이스(1305)(예: 도 5의 제2 인터페이스(522)))를 포함할 수 있다. Referring to FIG. 13, the electronic device 1300 (eg, the electronic device 500 of FIG. 5) or the electronic device 600 of FIGS. 6A and 6B may be a higher layer module 1301 (eg, TCP of FIG. 7B). / IP module 702), distributor 1302 (e.g., distributor 540 in FIG. 5), monitor 1303 (e.g., monitor 560 in FIG. 5), and multiple interfaces (e.g., first interface ( 1304 (eg, the first interface 521 of FIG. 5) and the second interface 1305 (eg, the second interface 522 of FIG. 5).
1310 동작에서, 전자 장치(1300)의 프로세서(예: 도 5의 프로세서(510))는 상위 레이어 모듈(1301)이 분배기(1302)로 데이터를 전달하도록 제어할 수 있다. In operation 1310, the processor of the electronic device 1300 (eg, the processor 510 of FIG. 5) may control the upper layer module 1301 to transmit data to the distributor 1302.
1320 동작에서, 전자 장치(1300)의 프로세서는 분배기(1302)가 상기 복수의 인터페이스에 대한 처리량 정보를 모니터(1303)로 요청하도록 제어할 수 있다. In operation 1320, the processor of the electronic device 1300 may control the distributor 1302 to request the monitor 1303 for throughput information about the plurality of interfaces.
1330 동작에서, 전자 장치(1300)의 프로세서는 모니터(1303)가 인터페이스 별 처리량 정보를 상기 분배기(1302)로 전송하도록 제어할 수 있다. 상기 인터페이스 별 처리량 정보는 모니터(1303)에 의해 측정될 수 있다. 상기 인터페이스 별 처리량 정보는 상기 제1 인터페이스(1304)에 대한 제1 처리량 및 제2 인터페이스(1305)에 대한 제2 처리량 정보를 포함할 수 있다. In operation 1330, the processor of the electronic device 1300 may control the monitor 1303 to transmit throughput information for each interface to the distributor 1302. The throughput information for each interface may be measured by the monitor 1303. The throughput information for each interface may include first throughput for the first interface 1304 and second throughput information for the second interface 1305.
1340 동작에서, 전자 장치(1300)의 프로세서는 분배기(1302)가 인터페이스 별로 입력될 데이터의 크기를 결정하도록 제어할 수 있다. In operation 1340, the processor of the electronic device 1300 may control the distributor 1302 to determine the size of data to be input for each interface.
본 발명의 다양한 실시 예에 따라, 전자 장치(1300)의 프로세서는 제1 인터페이스(1304)에서 한번에 전송 가능한 최대 데이터량 중 전체 인터페이스(예, 제1 인터페이스(1304) 및 제2 인터페이스(1305))의 처리량 대비 제1 인터페이스(1304)에 대한 처리량 비율만큼의 데이터를 상기 제1 인터페이스(1304)로 입력될 데이터의 크기로 판단할 수 있다. According to various embodiments of the present disclosure, the processor of the electronic device 1300 may include the entire interface (eg, the first interface 1304 and the second interface 1305) among the maximum amount of data that can be transmitted at the first interface 1304 at one time. Data as much as the throughput ratio of the first interface 1304 to the throughput of the first interface 1304 may be determined as the size of the data to be input to the first interface 1304.
1350 동작에서, 전자 장치(1300)의 프로세서는 분배기(1302)가 상기 데이터에 순서 정보를 삽입하도록 제어할 수 있다. 예를 들어, 상기 순서 정보는, 각 인터페이스로 분배될 데이터를 구분하기 위한 것으로, 높은 값의 순서 정보를 포함하는 데이터의 순서로, 높은 처리량을 가지는 인터페이스로 분배될 수 있다. In operation 1350, the processor of the electronic device 1300 may control the distributor 1302 to insert order information into the data. For example, the order information is for distinguishing data to be distributed to each interface, and may be distributed to an interface having a high throughput in order of data including high order information.
본 발명의 다양한 실시 예에 따르면, 제1 인터페이스(1304) 및 제2 인터페이스(1305)를 통해 제1 데이터 및 제2 데이터가 전송될 때, 상기 제1 및 제2 데이터를 수신하는 전자 장치(1300)에서는, 상기 순서 정보에 기반하여 데이터를 정렬시킬 수 있다. According to various embodiments of the present disclosure, when the first data and the second data are transmitted through the first interface 1304 and the second interface 1305, the electronic device 1300 receives the first and second data. ), Data may be sorted based on the order information.
1361 동작에서, 전자 장치(1300)의 프로세서는 분배기(1302)가 제1 인터페이스(1304)로 제1 데이터를 전달하도록 제어할 수 있다. 예를 들어, 상기 제1 데이터는 상대적으로 큰 데이터를 포함함에 따라, 전자 장치(1300)의 인터페이스들 중 처리량이 높은 제1 인터페이스(1304)로 전달될 수 있다. In operation 1361, the processor of the electronic device 1300 may control the distributor 1302 to transmit the first data to the first interface 1304. For example, as the first data includes relatively large data, the first data may be transmitted to the first interface 1304 having high throughput among the interfaces of the electronic device 1300.
1362 동작에서, 전자 장치(1300)의 프로세서는 분배기(1302)가 제2 인터페이스(1305)로 제2 데이터를 전달하도록 제어할 수 있다. 예를 들어, 상기 제2 데이터는 상기 제1 데이터 보다 작은 데이터를 포함함에 따라, 상기 제1 데이터가 전달된 제1 인터페이스(1304) 보다 처리량이 작은 제2 인터페이스(1305)로 전달될 수 있다. In operation 1362, the processor of the electronic device 1300 may control the distributor 1302 to transmit the second data to the second interface 1305. For example, as the second data includes data smaller than the first data, the second data may be transmitted to the second interface 1305 having a lower throughput than the first interface 1304 to which the first data is transmitted.
1363 동작에서, 전자 장치(1300)의 프로세서는 분배기(1302)가 제1 인터페이스(1304)로 제3 데이터를 전달할 수 있다. 예를 들어, 제3 데이터는 상기 제1 데이터와 같은 크기일 수 있다. 제3 데이터는 상기 제1, 제2 데이터 보다 낮은 순위의 순서 정보를 포함할 수 있다. In operation 1363, the processor of the electronic device 1300 may transmit the third data to the first interface 1304 by the distributor 1302. For example, the third data may be the same size as the first data. The third data may include order information having a lower rank than the first and second data.
1364 동작에서, 전자 장치(1300)의 프로세서는 분배기(1302)가 제2 인터페이스(1305)로 제4 데이터를 전달할 수 있다. 예를 들어, 제4 데이터는 제2 데이터와 같은 크기일 수 있다. 제4 데이터는 제3 데이터 보다 낮은 순위의 순서 정보를 포함할 수 있다. 전자 장치(1300)의 프로세서는 상기 데이터가 모두 제1 인터페이스(1304) 또는 제2 인터페이스(1305)로 전달될 때까지 전술된 1361 동작 내지 1364 동작을 반복적으로 수행할 수 있다. In operation 1364, the processor of the electronic device 1300 may distribute the fourth data to the second interface 1305 by the distributor 1302. For example, the fourth data may be the same size as the second data. The fourth data may include order information having a lower rank than the third data. The processor of the electronic device 1300 may repeatedly perform the above-described operations 1361 to 1364 until all of the data is transferred to the first interface 1304 or the second interface 1305.
본 발명의 다양한 실시 예에 따르면, 전술된 1362 동작이 1361 동작 이후에 수행되는 것으로 도시되었지만, 전자 장치(1300)에서는 제1 시간 주기 동안 1361 동작이 수행되고 상기 제1 시간 주기와 적어도 일부 중첩된 제2 시간 주기 동안 1362 동작이 수행되도록 제어할 수 있다. 예컨대, 1361 동작 및 1362 동작이 적어도 일부 중첩된 시간 동안 수행되어 분배기(1302)에서는 제1 인터페이스(1304) 및 제2 인터페이스(1305)로 제1 데이터 및 제2 데이터를 실질적으로 동시에 전달할 수 있다. According to various embodiments of the present disclosure, although the above-described 1362 operation is shown to be performed after the 1361 operation, in the electronic device 1300, the 1361 operation is performed during a first time period and at least partially overlaps the first time period. The operation 1362 may be performed during the second time period. For example, operations 1361 and 1362 may be performed for at least some overlapping time such that the distributor 1302 can deliver the first data and the second data to the first interface 1304 and the second interface 1305 substantially simultaneously.
본 발명의 다양한 실시 예에 따르면, 제1 인터페이스(1304) 및 제2 인터페이스(1305)는 전달된 데이터를 무선망을 통해 외부로 송신할 수 있다. According to various embodiments of the present disclosure, the first interface 1304 and the second interface 1305 may transmit the transmitted data to the outside through a wireless network.
도 14는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 수신하여 상위 레이어로 전달하는 동작의 일 예를 도시한 흐름도이다. 14 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 14를 참조하면, 전자 장치(1400)(예: 도 5의 전자 장치(500) 또는 도 7a 및 7b의 전자 장치(700))는 복수의 인터페이스(예, 제1 인터페이스(1401) 및 제2 인터페이스(1402)), 버퍼(1403) 및 병합기(1404)(예, 도 5의 병합기(550))를 포함할 수 있다. Referring to FIG. 14, the electronic device 1400 (eg, the electronic device 500 of FIG. 5 or the electronic device 700 of FIGS. 7A and 7B) may include a plurality of interfaces (eg, the first interface 1401 and the second device). Interface 1402, buffer 1403, and merger 1404 (eg, merger 550 of FIG. 5).
1410 동작에서, 전자 장치(1400)의 프로세서(예, 도 5의 프로세서(510))는 상기 제1 인터페이스(1401)를 통해 수신된 제1 데이터를 버퍼(1403)로 전달할 수 있다. 예를 들어, 상기 제1 데이터는 상기 제1 데이터를 송신한 전자 장치에서 부여된 제1 또는 제2 순서 정보를 포함할 수 있다. In operation 1410, the processor of the electronic device 1400 (eg, the processor 510 of FIG. 5) may transfer the first data received through the first interface 1401 to the buffer 1403. For example, the first data may include first or second order information provided by the electronic device that transmitted the first data.
1420 동작에서, 전자 장치(1400)의 프로세서는 상기 제2 인터페이스(1402)를 통해 수신된 제2 데이터를 버퍼(1403)로 전달할 수 있다. 예를 들어, 상기 제2 데이터는 상기 제2 데이터를 송신한 전자 장치에서 부여된 제1 또는 제2 순서 정보를 포함할 수 있다. In operation 1420, the processor of the electronic device 1400 may transfer the second data received through the second interface 1402 to the buffer 1403. For example, the second data may include first or second order information provided by the electronic device that has transmitted the second data.
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터는 전술된 1420 동작이 1410 동작 이후에 수행되는 것으로 도시되었지만, 1410 동작이 수행되는 시간 및 1420 동작이 수행되는 시간이 적어도 일부 중첩될 수 있다. 예컨대, 1410 동작 및 1420 동작이 상기 적어도 일부 중첩된 시간동안 수행되어 제1 인터페이스(1401) 및 제2 인터페이스(1402)는 제1 데이터 및 제2 데이터를 실질적으로 동시에 버퍼(1403)로 전달할 수 있다. According to various embodiments of the present disclosure, although the first data is shown as being performed after operation 1410, the time at which operation 1410 is performed and the time at which operation 1420 is performed may overlap at least partially. For example, operations 1410 and 1420 may be performed during the at least some overlapping time so that the first interface 1401 and the second interface 1402 may transfer the first data and the second data to the buffer 1403 substantially simultaneously. .
1431 동작에서, 전자 장치(1400)의 프로세서는 병합기(1404)가 제1 순서 정보를 포함하는 데이터를 버퍼(1403)로 요청하도록 제어할 수 있다. In operation 1431, the processor of the electronic device 1400 may control the merger 1404 to request data including the first order information to the buffer 1403.
1432 동작에서, 전자 장치(1400)의 프로세서는 병합기(1404)가 제2 순서 정보를 포함하는 데이터를 버퍼(1403)로 요청하도록 제어할 수 있다. In operation 1432, the processor of the electronic device 1400 may control the merger 1404 to request data including the second order information to the buffer 1403.
본 발명의 다양한 실시 예에 따르면, 전자 장치(1400)의 프로세서는 상기 요청에 대응하여, 버퍼(1403)가 일정 시간 동안 수신된 데이터 중 제1 순서 정보 또는 제2 순서 정보를 포함하는 데이터가 있는지 여부를 확인하도록 제어할 수 있다. According to various embodiments of the present disclosure, in response to the request, the processor of the electronic device 1400 may determine whether the buffer 1403 has data including first order information or second order information among data received for a predetermined time. It can be controlled to check whether or not.
1441 동작에서, 전자 장치의 프로세서는 병합기(1404)는 제1 순서 정보를 포함하는 데이터의 수신을 대기할 수 있다. In operation 1441, the processor of the electronic device may wait for the merger 1404 to receive data including the first order information.
1442 동작에서, 전자 장치(1400)의 프로세서는 병합기(1404)는 제2 순서 정보를 포함하는 데이터의 수신을 대기할 수 있다. In operation 1442, the processor of the electronic device 1400 may wait for the merger 1404 to receive data including the second order information.
1451 동작에서, 전자 장치(1400)의 프로세서는 버퍼(1403)가 제1 데이터를 병합기(1404)로 전달하도록 제어할 수 있다. In operation 1451, the processor of the electronic device 1400 may control the buffer 1403 to transfer the first data to the merger 1404.
1452 동작에서, 전자 장치(1400)의 프로세서는 버퍼(1403)가 제2 데이터를 병합기(1404)로 전달하도록 제어할 수 있다.In operation 1452, the processor of the electronic device 1400 may control the buffer 1403 to transmit the second data to the merger 1404.
본 발명의 다양한 실시 예에 따라, 1452 동작이 1451 동작 이후에 수행되는 것으로 설명하였지만, 상기 전자 장치(1400)에서는 제1 시간 주기동안 1451 동작이 수행되고, 상기 제1 시간 주기와 적어도 일부 중첩된 제2 시간 주기 동안 1452 동작이 수행되도록 제어할 수 있다. 예컨대, 1451 동작 및 1452 동작이 적어도 일부 중첩된 시간 동안 수행되어, 상기 버퍼(1403)에서는 상기 병합기(1404)로 제1 데이터 및 제2 데이터를 실질적으로 동시에 전달할 수 있다. According to various embodiments of the present disclosure, it has been described that operation 1452 is performed after operation 1451, but in the electronic device 1400, operation 1451 is performed during a first time period, and at least partially overlaps with the first time period. The operation 1452 may be performed during the second time period. For example, operations 1451 and 1452 may be performed for at least some overlapping time, so that the buffer 1403 may deliver first data and second data to the merger 1404 substantially simultaneously.
1461 동작에서, 전자 장치(1400)의 프로세서는 병합기(1404)가 제1 순서 정보를 포함하는 데이터를 정렬하도록 제어할 수 있다. 예컨대, 상기 병합기(1404)는 상기 병합기(1404)로 전달된 제1 데이터 또는 제2 데이터 중 제1 순서 정보를 포함하는 데이터를 정렬할 수 있다. In operation 1461, the processor of the electronic device 1400 may control the merger 1404 to sort the data including the first order information. For example, the merger 1404 may sort the data including the first order information among the first data or the second data transferred to the merger 1404.
1453 동작에서, 전자 장치(1400)의 프로세서는 병합기(1404)가 정렬된 데이터를 상위 레이어 모듈(1405)로 전달하도록 제어할 수 있다. 예컨대, 상기 병합기(1404)는 상기 제1 순서 정보를 포함하는 데이터에서 순서 정보를 제거하여 상위 레이어 모듈(1405)로 전달할 수 있다. In operation 1453, the processor of the electronic device 1400 may control the merger 1404 to transmit the aligned data to the upper layer module 1405. For example, the merger 1404 may remove the order information from the data including the first order information and transmit the order information to the higher layer module 1405.
1463 동작에서, 전자 장치(1400)의 프로세서는 병합기(1404)가 제2 순서 정보를 포함하는 데이터를 정렬하도록 제어할 수 있다. 예컨대, 상기 병합기(1404)는 상기 병합기(1404)로 전달된 제1 데이터 또는 제2 데이터 중 제2 순서 정보를 포함하는 데이터를 정렬할 수 있다. In operation 1463, the processor of the electronic device 1400 may control the merger 1404 to sort the data including the second order information. For example, the merger 1404 may sort data including second order information among the first data or the second data transferred to the merger 1404.
1464 동작에서, 전자 장치(1400)의 프로세서는 병합기(1404)가 병합된 데이터를 상위 레이어 모듈(1405)로 전달하도록 제어할 수 있다. 예컨대, 상기 병합기(1404)는 상기 병합된 제2 순서 정보를 포함하는 데이터에서 순서 정보를 제거하여 상위 레이어 모듈(1405)로 전달할 수 있다.In operation 1464, the processor of the electronic device 1400 may control the merger 1404 to transfer the merged data to the upper layer module 1405. For example, the merger 1404 may remove the order information from the data including the merged second order information and transmit the order information to the higher layer module 1405.
1481 동작에서, 전자 장치(1400)의 프로세서는 상기 제1 인터페이스(1401)를 통해 수신된 제3 데이터를 버퍼(1403)로 전달하도록 제어할 수 있다. 예를 들어, 상기 제3 데이터는 상기 제3 데이터를 송신한 전자 장치에서 부여된 제3 순서 정보를 포함할 수 있다. In operation 1481, the processor of the electronic device 1400 may control to transmit the third data received through the first interface 1401 to the buffer 1403. For example, the third data may include third order information provided by the electronic device that has transmitted the third data.
1482 동작에서, 전자 장치(1400)의 프로세서는 상기 제2 인터페이스(1402)를 통해 수신된 제4 데이터를 버퍼(1403)로 전달하도록 제어할 수 있다. 예를 들어, 상기 제4 데이터는 상기 제4 데이터를 송신한 전자 장치에서 부여된 제4 순서 정보를 포함할 수 있다. In operation 1482, the processor of the electronic device 1400 may control to transmit the fourth data received through the second interface 1402 to the buffer 1403. For example, the fourth data may include fourth order information provided by the electronic device that has transmitted the fourth data.
본 발명의 다양한 실시 예에 따르면, 전자 장치(1400)에서 데이터를 요청, 대기 및 전달하는 동작이 두 개의 순서 정보(예: 제1 및 제2 순서 정보 또는 제3 및 제4 순서 정보)에 대해서 수행하는 것으로 설명하였지만, 순서 정보의 크기에 대해 한정되지 않으며, 상기 전자 장치(1400)의 구성(예: 버퍼(1403) 또는 병합기(1404))에서 일정 시간 동안 처리 가능한 데이터량에 따라 다양한 크기의 순서 정보를 포함하는 데이터를 처리하도록 설정될 수 있다. According to various embodiments of the present disclosure, an operation of requesting, waiting, and transferring data in the electronic device 1400 may be performed on two order information (for example, first and second order information or third and fourth order information). Although described as being performed, the present invention is not limited to the size of the order information, and may vary in size depending on the amount of data that can be processed for a predetermined time in the configuration of the electronic device 1400 (for example, the buffer 1403 or the merger 1404). It may be set to process data including the order information of.
도 15는 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 수신하여 상위 레이어로 전달하는 동작의 일 예를 도시한 흐름도이다. 15 is a flowchart illustrating an example of an operation of transmitting data to an upper layer by receiving data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 15를 참조하면, 전자 장치(1500)(예: 도 5의 전자 장치(500) 또는 도 7a 및 도 7b의 전자 장치(700))는 복수의 인터페이스(예, 제1 인터페이스(1501) 및 제2 인터페이스(1502)), 버퍼(1503) 및 상위 레이어(예, TCP/IP 레이어) 모듈(1504)을 포함할 수 있다. Referring to FIG. 15, the electronic device 1500 (eg, the electronic device 500 of FIG. 5 or the electronic device 700 of FIGS. 7A and 7B) includes a plurality of interfaces (eg, the first interface 1501 and the first interface). 2 interface 1502), a buffer 1503, and a higher layer (eg, TCP / IP layer) module 1504.
1510 동작에서, 전자 장치의 프로세서는 상기 제1 인터페이스(1501)를 통해 수신된 제1 데이터를 버퍼(1503)로 전달할 수 있다. 예를 들어, 상기 제1 데이터는 상기 제1 데이터를 송신한 상위 레이어에서 부여된 제1 식별 정보를 포함할 수 있다. In operation 1510, the processor of the electronic device may transfer the first data received through the first interface 1501 to the buffer 1503. For example, the first data may include first identification information provided in an upper layer that transmits the first data.
1520 동작에서, 전자 장치의 프로세서는 상기 제2 인터페이스(1502)를 통해 수신된 제2 데이터를 버퍼(1503)로 전달할 수 있다. 예를 들어, 상기 제2 데이터는 상기 제2 데이터를 송신한 상위 레이어(예, TCP/IP 레이어)에서 부여된 제2 식별 정보를 포함할 수 있다.In operation 1520, the processor of the electronic device may transfer the second data received through the second interface 1502 to the buffer 1503. For example, the second data may include second identification information provided by an upper layer (eg, a TCP / IP layer) that transmits the second data.
1530 동작에서, 전자 장치의 프로세서는 버퍼(1503)가 상기 버퍼(1503)에 저장된 데이터를 상위 레이어 모듈(1504)로 전달하도록 제어할 수 있다. 예컨대, 상기 버퍼(1503)에 저장된 데이터는 상기 제1 데이터 및 상기 제2 데이터를 포함할 수 있다. In operation 1530, the processor of the electronic device may control the buffer 1503 to transfer the data stored in the buffer 1503 to the upper layer module 1504. For example, the data stored in the buffer 1503 may include the first data and the second data.
본 발명의 다양한 실시 예에 따라, 상기 전자 장치의 프로세서는 상기 버퍼(1503)에 저장된 상기 제1 데이터 및 제2 데이터에 순서 정보가 포함되지 않은 것으로 확인함에 따라, 상기 제1 데이터 및 상기 제2 데이터가 수신된 순서에 기반하여 상기 버퍼(1503)에서 상위 레이어 모듈(1504)로 전달되도록 처리할 수 있다. According to various embodiments of the present disclosure, the processor of the electronic device determines that the first data and the second data stored in the buffer 1503 do not include order information. The data may be processed to be transferred from the buffer 1503 to the upper layer module 1504 based on the received order.
1540 동작에서, 전자 장치의 프로세서는 상기 전달된 데이터의 식별 정보에 기반하여 상위 레이어(예, TCP/IP 레이어)에서 데이터를 확인하도록 제어할 수 있다. 예컨대, 상기 상위 레이어에서는, 제1 식별 정보가 제2 식별 정보보다 우선 순위를 나타냄에 따라, 상기 전달된 데이터 중 상기 제1 식별 정보를 포함하는 데이터에서 상기 제2 식별 정보를 포함하는 데이터의 순서로 데이터를 병합할 수 있다. In operation 1540, the processor of the electronic device may control to identify data in an upper layer (eg, a TCP / IP layer) based on the transmitted identification information. For example, in the upper layer, as the first identification information indicates priority over the second identification information, an order of data including the second identification information in the data including the first identification information among the transferred data. You can merge the data with.
도 16은 본 발명의 다양한 실시 예에 따라, 복수의 인터페이스를 통해 데이터를 송수신하는 네트워크 환경의 일 예를 도시한 도면이다.16 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
도 16을 참조하면, 네트워크 환경은 복수의 전자 장치(예, 제1 전자 장치(1620)(예, 도 6a 및 6b의 전자 장치(600)) 및 제2 전자 장치(1630)(예, 도 7a 및 7b의 전자 장치(700)))를 포함할 수 있다. 상기 복수의 전자 장치는 무선 통신을 통해 데이터를 송수신할 수 있다. Referring to FIG. 16, a network environment includes a plurality of electronic devices (eg, the first electronic device 1620 (eg, the electronic device 600 of FIGS. 6A and 6B) and the second electronic device 1630 (eg, FIG. 7A). And electronic device 700 of 7b). The plurality of electronic devices may transmit and receive data through wireless communication.
일 실시 예에 따르면, 상기 제1 전자 장치(1620)는 상위 레이어 모듈(1610) 및 적어도 하나의 인터페이스(예, 제1 인터페이스(1622) 및 제2 인터페이스(1623))를 포함하는 제1 통신 회로(1621)를 포함할 수 있다. According to an embodiment of the present disclosure, the first electronic device 1620 includes a first communication circuit including a higher layer module 1610 and at least one interface (eg, the first interface 1622 and the second interface 1623). (1621).
본 발명의 다양한 실시 예에 따르면, 상기 제1 전자 장치(1620)에서는 적어도 하나의 인터페이스를 포함하는 하나의 통신 회로(예, 제1 통신 회로(1621))를 포함하는 것으로 도시하였지만, 인터페이스 각각에 대한 복수의 통신 회로를 포함하도록 구성될 수 있다. According to various embodiments of the present disclosure, although illustrated in the first electronic device 1620 includes one communication circuit (eg, the first communication circuit 1621) including at least one interface, each of the interfaces It may be configured to include a plurality of communication circuits for.
상기 제1 통신 회로(1621)는 상기 입력된 데이터(1601)를 제1 데이터(1602) 및 제2 데이터(1603)로 분할하여 제1 인터페이스(1622) 및 제2 인터페이스(1623)로 분배할 수 있다. 예컨대, 제1 통신 회로(1621)는 상기 제1 데이터(1602) 및 제2 데이터(1603) 중 우선 순위가 높은 순서 정보를 포함하는 데이터의 순서로 높은 처리량을 가지는 인터페이스로 분배할 수 있다. The first communication circuit 1621 may divide the input data 1601 into the first data 1602 and the second data 1603 and distribute the divided data to the first interface 1622 and the second interface 1623. have. For example, the first communication circuit 1621 may distribute the first data 1602 and the second data 1603 to an interface having a high throughput in order of data including order information having a higher priority among the first data 1602 and the second data 1603.
본 발명의 다양한 실시 예에 따르면, 상기 제1 통신 회로(1621)가 입력된 데이터(1601)를 인터페이스들로 분배하는 것으로 설명하였지만, 상기 제1 전자 장치(1620)에서는 상기 제1 전자 장치(1620)에 포함된 다른 구성(예, 분배기(미도시))를 통해 데이터를 분배하는 동작이 수행되도록 제어할 수 있다. According to various embodiments of the present disclosure, the first communication circuit 1621 distributes the input data 1601 to interfaces. However, in the first electronic device 1620, the first electronic device 1620 is provided. ) May be controlled to perform an operation of distributing data through another configuration (eg, a divider (not shown)) included in FIG.
본 발명의 다양한 실시 예에 따르면, 특정 순서에서 상기 제1 데이터(1602)는 상기 제1 인터페이스(1622)의 처리량에 기반하여 2개의 패킷으로 구성되는 데이터 크기로 설정되고, 상기 제2 데이터는 제2 인터페이스(1623)의 처리량에 기반하여 1개의 패킷으로 구성되는 데이터 크기로 설정될 수 있다. 예컨대, 상기 제1 인터페이스(1622)는 2개의 패킷(예, 'a' 및 'b' 패킷)을 포함하는 제1 데이터(1602)를 전송하고, 상기 제2 인터페이스(1623)는 1개의 패킷(예, 'c' 패킷)을 포함하는 제2 데이터(1603)를 외부 전자 장치(예, 제2 전자 장치(1630))로 전송할 수 있다. According to various embodiments of the present disclosure, in a specific order, the first data 1602 is set to a data size consisting of two packets based on the throughput of the first interface 1622, and the second data It may be set to a data size consisting of one packet based on the throughput of the two interfaces 1623. For example, the first interface 1622 transmits first data 1602 including two packets (eg, 'a' and 'b' packets), and the second interface 1623 transmits one packet ( For example, the second data 1603 including the 'c' packet may be transmitted to the external electronic device (eg, the second electronic device 1630).
본 발명의 다양한 실시 예에 따르면, 상기 제2 전자 장치(1630)는 적어도 하나의 인터페이스(예, 제3 인터페이스(1632) 및 제4 인터페이스(1633))를 포함하는 제2 통신 회로(1631) 및 버퍼(1640)를 포함할 수 있다. 예컨대, 상기 제2 전자 장치(1630)는 제1 전자 장치(1620)로부터 전송된 제1 데이터(1602)를 제3 인터페이스(1632)를 통해 수신하고 제2 데이터(1603)를 제4 인터페이스(1633)를 통해 수신할 수 있다. According to various embodiments of the present disclosure, the second electronic device 1630 may include a second communication circuit 1631 including at least one interface (eg, the third interface 1632 and the fourth interface 1633); It may include a buffer 1640. For example, the second electronic device 1630 receives the first data 1602 transmitted from the first electronic device 1620 through the third interface 1632, and receives the second data 1603 from the fourth interface 1633. Can be received via).
본 발명의 다양한 실시 예에 따라, 제2 전자 장치(1630)에서는 상기 제2 통신 회로(1631)에 포함된 인터페이스를 통해 수신된 데이터(예: 제1 데이터(1602) 및 제2 데이터(1603))가 버퍼(1640)에 저장되도록 제어할 수 있다. According to various embodiments of the present disclosure, the second electronic device 1630 may receive data (eg, first data 1602 and second data 1603) received through an interface included in the second communication circuit 1163. ) May be stored in the buffer 1640.
본 발명의 다양한 실시 예에 따르면, 상기 제2 전자 장치(1630)에서는 상기 버퍼(1640)에 저장된 데이터(1604)가 상위 레이어(예, TCP/IP 레이어)로 전달되도록 제어할 수 있다. 예컨대, 각 데이터에 포함된 순서 정보를 확인할 수 없는 경우, 상기 제2 전자 장치(1630)는 상기 버퍼(1640)로 데이터가 입력(또는 저장)된 순서 또는 각 인터페이스로 데이터가 수신된 순서에 따라 제1 전자 장치(1620)로부터 수신된 데이터(예: 제1 데이터(1602) 및 제2 데이터(1603))가 상위 레이어로 전달되도록 제어할 수 있다. According to various embodiments of the present disclosure, the second electronic device 1630 may control the data 1604 stored in the buffer 1640 to be transmitted to an upper layer (eg, a TCP / IP layer). For example, when the order information included in each data cannot be confirmed, the second electronic device 1630 may determine the order in which data is input (or stored) into the buffer 1640 or the order in which data is received through each interface. Data received from the first electronic device 1620 (for example, the first data 1602 and the second data 1603) may be transmitted to the upper layer.
도 17은 본 발명의 다양한 실시 예에 따라, 전자 장치에서 복수의 인터페이스를 통해 데이터를 송신하는 동작의 일 예를 도시한 흐름도이다. 17 is a flowchart illustrating an example of an operation of transmitting data through a plurality of interfaces in an electronic device according to various embodiments of the present disclosure.
도 17을 참조하면, 1710 동작에서 전자 장치(예: 도 5의 전자 장치(500), 도 6a 및 도 6b의 전자 장치(600) 또는 도 13의 전자 장치(1300))는 제1 대역을 지원하는 제1 인터페이스 및 제2 대역을 지원하는 제2 인터페이스의 처리량을 판단할 수 있다. 예컨대, 전자 장치는 일정 시간 동안 상기 제1 및 제2 인터페이스에서의 데이터 통신 속도에 기반하여 상기 처리량을 판단할 수 있다. Referring to FIG. 17, in operation 1710, an electronic device (eg, the electronic device 500 of FIG. 5, the electronic device 600 of FIGS. 6A and 6B, or the electronic device 1300 of FIG. 13) supports a first band. The throughput of the second interface supporting the first interface and the second band can be determined. For example, the electronic device may determine the throughput based on the data communication rates on the first and second interfaces for a predetermined time.
1720 동작에서, 전자 장치는 제1 및 제2 인터페이스의 처리량에 기반하여, 제1 및 제2 인터페이스를 통해 전달할 제1 데이터 및 제2 데이터를 생성할 수 있다. 상기 제1 데이터 및 제2 데이터의 크기는 상기 제1 및 제2 인터페이스의 전체 처리량 대비 특정 인터페이스의 처리량에 따라 설정될 수 있다. In operation 1720, the electronic device may generate first data and second data to be transmitted through the first and second interfaces, based on the throughputs of the first and second interfaces. The size of the first data and the second data may be set according to the throughput of a specific interface relative to the total throughput of the first and second interfaces.
1730 동작에서, 전자 장치는 제1 인터페이스를 통해 제1 데이터를 전송하고, 제2 인터페이스를 통해 제2 데이터를 전송할 수 있다. 예컨대, 전자 장치는 상기 제1 및 제2 인터페이스 중 처리량이 높은 인터페이스의 순서로, 큰 데이터 크기를 가지는 데이터를 분배하고, 분배된 데이터가 각 인터페이스를 통해 전송되도록 제어할 수 있다. In operation 1730, the electronic device may transmit first data through the first interface and second data through the second interface. For example, the electronic device may distribute data having a large data size in order of an interface having high throughput among the first and second interfaces, and control the distributed data to be transmitted through each interface.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로의 제1 데이터 처리량 및 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로의 제2 데이터 처리량을 판단하는 동작; 상기 판단에 기반하여, 상기 제1 통신 회로를 이용하여 제1 크기의 제1 데이터를 전송하는 동작; 및 상기 제2 통신 회로를 이용하여 상기 제1 크기보다 큰 제2 크기의 제2 데이터를 전송하는 동작;을 포함할 수 있다. According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may include communication through a first data throughput and a second frequency band of a first communication circuit performing communication through a first frequency band. Determining a second data throughput of a second communication circuit to perform; Based on the determination, transmitting first data of a first size using the first communication circuit; And transmitting second data having a second size larger than the first size by using the second communication circuit.
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터 처리량은 상기 제2 데이터 처리량보다 크고, 상기 제1 데이터는 상기 제2 데이터의 크기보다 큰 데이터일 수 있다.According to various embodiments of the present disclosure, the first data throughput may be greater than the second data throughput, and the first data may be data larger than the size of the second data.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 상기 제1 데이터의 적어도 일부를 상기 제2 데이터보다 먼저 전송하는 동작;을 더 포함할 수 있다. According to various embodiments of the present disclosure, the communication method using the plurality of air interfaces in the electronic device may further include transmitting at least a portion of the first data before the second data.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 미리 지정된 시간 동안 상기 제1 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제1 데이터 처리량을 판단하는 동작; 및 미리 지정된 시간 동안 상기 제2 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제2 데이터 처리량을 판단하는 동작;을 더 포함할 수 있다.According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may include determining the first data throughput corresponding to a data processing speed in the first communication circuit for a predetermined time; And determining the second data throughput corresponding to the data processing speed in the second communication circuit for a predetermined time.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 상기 제1 통신 회로에 연결된 제1 버퍼에서의 처리량을 상기 제1 데이터 처리량으로 판단하는 동작; 및 상기 제2 통신 회로에 연결된 제2 버퍼에서의 처리량을 상기 제2 데이터 처리량으로 판단하는 동작;을 더 포함할 수 있다.According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may include determining a throughput in a first buffer connected to the first communication circuit as the first data throughput; And determining the throughput in the second buffer connected to the second communication circuit as the second data throughput.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 상기 제1 데이터 처리량과 상기 제2 데이터 처리량 중 높은 데이터 처리량을 가지는 통신 회로로 상기 송신 데이터 중 우선 순위를 가지는 데이터를 분배하는 동작;을 더 포함할 수 있다.According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may include a communication circuit having a higher data throughput among the first data throughput and the second data throughput and having priority among the transmission data. Distributing data may further include.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 상기 제1 데이터 처리량 및 상기 제2 데이터 처리량에 기초하여, 상기 제1 데이터에 포함된 적어도 하나의 제1 패킷 및 상기 제2 데이터에 포함된 적어도 하나의 제2 패킷에 순서 정보를 삽입하는 동작; 및 상기 순서 정보에 대응하게, 상기 제1 통신 회로를 통해 상기 적어도 하나의 제1 패킷을 전송하고, 상기 제2 통신 회로를 통해 상기 적어도 하나의 제2 패킷을 전송하는 동작;을 더 포함할 수 있다.According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may include at least one first packet included in the first data based on the first data throughput and the second data throughput. Inserting order information into at least one second packet included in the second data; And corresponding to the order information, transmitting the at least one first packet through the first communication circuit and transmitting the at least one second packet through the second communication circuit. have.
본 발명의 다양한 실시 예에 따르면, 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법은, 상기 통신 회로에서의 전체 데이터 처리량 대비 상기 제1 데이터 처리량의 제1 비율에 대응하게 상기 제1 크기의 상기 제1 데이터를 생성하는 동작; 및 상기 전체 데이터 처리량 대비 상기 제2 데이터 처리량의 제2 비율에 대응하게 상기 제2 크기로 상기 제2 데이터를 생성하는 동작;을 더 포함할 수 있다.According to various embodiments of the present disclosure, a communication method using a plurality of air interfaces in an electronic device may include the first size of the first size corresponding to a first ratio of the total data throughput to the first data throughput in the communication circuit. Generating 1 data; And generating the second data with the second size corresponding to the second ratio of the second data throughput to the total data throughput.
도 18은 본 발명의 다양한 실시 예에 따라, 복수의 인터페이스를 통해 데이터를 송수신하는 네트워크 환경의 일 예를 도시한 도면이다. 18 is a diagram illustrating an example of a network environment for transmitting and receiving data through a plurality of interfaces according to various embodiments of the present disclosure.
도 18을 참조하면, 네트워크 환경은 복수의 전자 장치(예, 제1 전자 장치(1810)(예, 도 6a 및 6b의 전자 장치(600)) 및 제2 전자 장치(1820)(예, 도 7a 및 7b의 전자 장치(700))를 포함할 수 있다. 상기 복수의 전자 장치는 무선 통신을 통해 데이터를 송수신할 수 있다. Referring to FIG. 18, a network environment includes a plurality of electronic devices (eg, the first electronic device 1810 (eg, the electronic device 600 of FIGS. 6A and 6B) and the second electronic device 1820 (eg, FIG. 7A). And the electronic device 700 of 7b.The plurality of electronic devices may transmit and receive data through wireless communication.
상기 제1 전자 장치(1810)는 상위 레이어 모듈(1811), 적어도 하나의 인터페이스(예, 제1 인터페이스(1821) 또는 제2 인터페이스(1822)) 및 분배기(1831)를 포함할 수 있다. 예를 들어, 상기 제1 전자 장치(1810)는 제1 인터페이스(1821)는 5GHz의 주파수 대역에서 10Mbps의 속도(d1)로 통신을 수행하고, 제2 인터페이스(1822)가 2.4GHz의 주파수 대역에서 5Mbps의 속도(d2)로 통신을 수행할 수 있다.The first electronic device 1810 may include an upper layer module 1811, at least one interface (eg, the first interface 1821 or the second interface 1822) and the distributor 1831. For example, the first electronic device 1810 communicates with the first interface 1821 at a speed d1 of 10 Mbps in a frequency band of 5 GHz, and the second interface 1822 in a frequency band of 2.4 GHz. Communication can be performed at a speed d2 of 5 Mbps.
본 발명의 다양한 실시 예에 따라, 상기 제1 전자 장치(1810)는 상위 레이어(1811)로부터 제2 전자 장치(1820)로 전송할 데이터를 입력받을 수 있다. 예컨대, 상기 제1 전자 장치(1810)는 상기 전송할 데이터가 분배기(1831)로 전달되도록 제어할 수 있다. 상기 제1 전자 장치(1810)는 상기 전달된 데이터(1801)를 제1 데이터(1802) 및 제2 데이터(1803)로 분할하고 각 데이터에 순서 정보를 삽입할 수 있다. According to various embodiments of the present disclosure, the first electronic device 1810 may receive data to be transmitted from the upper layer 1811 to the second electronic device 1820. For example, the first electronic device 1810 may control the data to be transmitted to be delivered to the distributor 1831. The first electronic device 1810 may divide the transmitted data 1801 into first data 1802 and second data 1803 and insert order information into each data.
본 발명의 다양한 실시 예에 따라, 상기 순서 정보에 기반하여, 제1 전자 장치(1810)는 상기 분배기(1831)가 상기 제1 데이터(1802) 및 제2 데이터(1803) 중 높은 순서 정보 값을 포함하는 데이터를 높은 처리량(예, d1)을 가지는 인터페이스(예, 제1 인터페이스(1821))로 분배하도록 제어할 수 있다. According to various embodiments of the present disclosure, based on the order information, the first electronic device 1810 may determine that the distributor 1831 selects a higher order information value among the first data 1802 and the second data 1803. The data to be included may be controlled to be distributed to an interface having a high throughput (eg, d1) (eg, the first interface 1821).
본 발명의 다양한 실시 예에 따르면, 제1 전자 장치(1810)는 특정 시간 동안 각 인터페이스에서 전송되는 데이터의 크기를 확인할 수 있다. 예컨대, 상기 데이터의 크기는 특정 인터페이스에서 한번에 전송 가능한 최대 데이터(Bmax) 중 제1 인터페이스(1821) 및 제2 인터페이스(1822)의 처리량 대비 특정 인터페이스에서의 처리량에 해당하는 데이터 크기로 확인될 수 있다. According to various embodiments of the present disclosure, the first electronic device 1810 may check the size of data transmitted through each interface for a specific time. For example, the size of the data may be determined as the data size corresponding to the throughput of a specific interface compared to the throughput of the first interface 1821 and the second interface 1822 among the maximum data B max that can be transmitted at a time on a specific interface. have.
본 발명의 다양한 실시 예에 따르면, 상기 제1 인터페이스(1821)를 통해 전송되는 제1 데이터(1802)의 크기는, 상기 제1 인터페이스(1821)의 제1 Bmax에서 제1 인터페이스(1821)의 처리량 비율에 따라 4개의 패킷을 포함하는 크기로 설정될 수 있다. 제2 인터페이스(1822)를 통해 전송되는 제2 데이터(1803)의 크기는, 상기 제2 인터페이스(1822)의 제2 Bmax에서 제2 인터페이스(1822)의 처리량 비율에 따라 2개의 패킷을 포함하는 크기로 설정될 수 있다. According to various embodiments of the present disclosure, the size of the first data 1802 transmitted through the first interface 1821 is equal to the size of the first interface 1821 at the first B max of the first interface 1821. It may be set to a size including four packets according to the throughput ratio. The size of the second data 1803 transmitted through the second interface 1822 includes two packets according to the throughput ratio of the second interface 1822 at the second B max of the second interface 1822. Can be set to size.
본 발명의 다양한 실시 예에 따르면, 상기 제1 인터페이스(1821)는 제1 순서 정보(예, '1')(1802a)를 포함하는 상기 제1 데이터(1802)를 전송하고, 상기 제2 인터페이스(1822)는 상기 제1 데이터(1802)의 순서 정보의 다음 차수의 제2 순서 정보(예, '2')(1803a)를 포함하는 제2 데이터(1803)를 외부 전자 장치(예, 제2 전자 장치(1820))로 전송할 수 있다. 예컨대, 상기 인터페이스의 처리량 비율에 따라 데이터의 크기가 설정됨에 따라, 상기 제1 데이터(1802)는 4개의 'a' 내지 'd' 패킷을 포함하고 상기 제2 데이터(1803)는 2개의 'd' 및 'e' 패킷을 포함할 수 있다. According to various embodiments of the present disclosure, the first interface 1821 transmits the first data 1802 including first order information (eg, '1') 1802a, and the second interface ( The first electronic device 1822 may include second data 1803 including second order information (eg, '2') 1803a of a next order of the order information of the first data 1802. Device 1820). For example, as the size of data is set according to the throughput ratio of the interface, the first data 1802 includes four 'a' to 'd' packets and the second data 1803 has two 'd' And 'e' packets.
상기 제2 전자 장치(1820)는 적어도 하나의 인터페이스(예: 제3 인터페이스(1841) 및 제4 인터페이스(1842)), 버퍼(1850) 및 병합기(1860)를 포함할 수 있다. 예를 들어, 상기 제2 전자 장치(1820)에서는 제3 인터페이스(1841)가 5GHz의 주파수 대역에서 10Mbps의 속도(d1)로 통신을 수행하고, 제4 인터페이스(1842)가 2.4GHz의 주파수 대역에서 5Mbps의 속도(d2)로 통신을 수행할 수 있다. The second electronic device 1820 may include at least one interface (eg, the third interface 1841 and the fourth interface 1842), a buffer 1850, and a merger 1860. For example, in the second electronic device 1820, the third interface 1841 may communicate at a speed d1 of 10 Mbps in a frequency band of 5 GHz, and the fourth interface 1842 may operate in a frequency band of 2.4 GHz. Communication can be performed at a speed d2 of 5 Mbps.
본 발명의 다양한 실시 예에 따르면, 상기 제2 전자 장치(1820)는 상기 적어도 하나의 인터페이스를 통해, 제1 전자 장치(1810)로부터 전송된 제1 데이터(1802) 및 제2 데이터(1803)를 수신할 수 있다. 예컨대, 제1 시간 구간 동안 제3 인터페이스(1841)를 통해 제1 데이터(1802)가 수신되고 상기 제1 시간 구간과 적어도 일부 중첩된 제2 시간 구간 동안 제4 인터페이스(1842)를 통해 제2 데이터(1803)가 수신될 수 있다. According to various embodiments of the present disclosure, the second electronic device 1820 receives the first data 1802 and the second data 1803 transmitted from the first electronic device 1810 through the at least one interface. Can be received. For example, first data 1802 is received through a third interface 1841 during a first time interval and second data through a fourth interface 1842 during a second time interval at least partially overlapping the first time interval. 1803 may be received.
본 발명의 다양한 실시 예에 따르면, 상기 제2 전자 장치(1820)는 상기 수신된 제1 데이터(1802) 및 제2 데이터(1803)가 버퍼(1850)로 전달되도록 제어할 수 있다. According to various embodiments of the present disclosure, the second electronic device 1820 may control the received first data 1802 and the second data 1803 to be delivered to the buffer 1850.
본 발명의 다양한 실시 예에 따르면, 상기 제2 전자 장치(1820)는 수신된 데이터가 상기 병합기(1860)로 전달되도록 제어할 수 있다. 예컨대, 상기 병합기(1860)에서는 상기 제1 데이터(1802) 및 제2 데이터(1803)에 포함된 순서 정보에 따라 데이터를 나열하여 데이터(1804)로 정렬시킬 수 있다. 예컨대, 상기 병합기(1860)는 상기 데이터(1804)에 포함된 순서 정보를 제거하고 상기 순서 정보가 제거된 데이터를 상위 레이어(예, TCP/IP 레이어)로 전달할 수 있다. According to various embodiments of the present disclosure, the second electronic device 1820 may control the received data to be delivered to the merger 1860. For example, the merger 1860 may arrange the data 1804 by arranging the data according to the order information included in the first data 1802 and the second data 1803. For example, the merger 1860 may remove the order information included in the data 1804 and transfer the data from which the order information has been removed to an upper layer (eg, a TCP / IP layer).
본 발명의 다양한 실시 예에 따르면, 상기 제1 데이터(1802) 및 제2 데이터(1803)를 구성하는 패킷이 통신 상태에 따라 상기 제2 전자 장치(1820)로 무작위하게 전송되더라도, 상기 병합기(1860)는 제1 전자 장치(1810)에서 삽입한 순서 정보에 기반하여 데이터를 나열하여 상위 레이어로 전송함에 따라, 상기 상위 레이어가 데이터를 정렬하는 로드를 줄일 수 있다. According to various embodiments of the present disclosure, even if packets constituting the first data 1802 and the second data 1803 are randomly transmitted to the second electronic device 1820 according to a communication state, the merger ( In operation 1860, data is arranged based on the order information inserted by the first electronic device 1810 and transmitted to the upper layer, thereby reducing the load on which the upper layer arranges the data.
본 발명에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다. As used herein, the term “module” includes a unit composed of hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. The module may be an integrally formed part or a minimum unit or part of performing one or more functions. "Modules" may be implemented mechanically or electronically, for example, application-specific integrated circuit (ASIC) chips, field-programmable gate arrays (FPGAs), or known or future developments that perform certain operations. It can include a programmable logic device.
다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예:메모리(1530))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(1520))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체 (예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. At least a portion of an apparatus (eg, modules or functions thereof) or method (eg, operations) according to various embodiments may be stored on a computer-readable storage medium (eg, memory 1530) in the form of a program module. It can be implemented as. When the command is executed by a processor (eg, the processor 1520), the processor may perform a function corresponding to the command. Computer-readable recording media include hard disks, floppy disks, magnetic media (e.g. magnetic tape), optical recording media (e.g. CD-ROM, DVD, magnetic-optical media (e.g. floppy disks), internal memory, etc. Instructions may include code generated by a compiler or code that may be executed by an interpreter.
다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른, 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.Modules or program modules according to various embodiments may include at least one or more of the above-described components, some may be omitted, or may further include other components. According to various embodiments, operations performed by a module, program module, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or at least some of the operations may be executed in a different order, omitted, or another operation may be added. Can be.
Claims (15)
- 전자 장치에 있어서, In an electronic device,제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로 및 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로를 포함하는, 통신 회로; 및 A communication circuit comprising a first communication circuit for communicating over a first frequency band and a second communication circuit for communicating over a second frequency band; And상기 통신 회로에 전기적으로 연결된 프로세서;를 포함하고, A processor electrically connected to the communication circuit;상기 프로세서는, The processor,상기 제1 통신 회로의 제1 데이터 처리량 및 상기 제2 통신 회로의 제2 데이터 처리량을 판단하고, 상기 판단에 기반하여, 상기 제1 통신 회로를 이용하여 제1 크기의 제1 데이터를 전송하고, 상기 제2 통신 회로를 이용하여 상기 제1 크기보다 큰 제2 크기의 제2 데이터를 전송하도록 설정된, 전자 장치.Determine a first data throughput of the first communication circuit and a second data throughput of the second communication circuit, and transmit first data of a first size using the first communication circuit, based on the determination, And transmit second data of a second size larger than the first size by using the second communication circuit.
- 제1항에 있어서, The method of claim 1,상기 제1 데이터 처리량은 상기 제2 데이터 처리량보다 크고, The first data throughput is greater than the second data throughput,상기 제1 데이터의 크기는 상기 제2 데이터의 크기보다 큰 데이터인 전자 장치.The size of the first data is data larger than the size of the second data.
- 제1항에 있어서, The method of claim 1,상기 프로세서는, The processor,상기 제1 데이터의 적어도 일부를 상기 제2 데이터보다 먼저 전송하도록 제어하는 전자 장치. And control at least a portion of the first data to be transmitted before the second data.
- 제1항에 있어서, The method of claim 1,상기 프로세서는, The processor,미리 지정된 시간 동안 상기 제1 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제1 데이터 처리량을 판단하고, Determine the first data throughput in correspondence with the data processing speed in the first communication circuit for a predetermined time;미리 지정된 시간 동안 상기 제2 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제2 데이터 처리량을 판단하는 전자 장치.And determining the second data throughput corresponding to the data processing speed in the second communication circuit for a predetermined time.
- 제1항에 있어서, The method of claim 1,상기 프로세서는, The processor,상기 제1 통신 회로에 연결된 제1 버퍼에서의 처리량을 상기 제1 데이터 처리량으로 판단하고, Determine the throughput in the first buffer connected to the first communication circuit as the first data throughput,상기 제2 통신 회로에 연결된 제2 버퍼에서의 처리량을 상기 제2 데이터 처리량으로 판단하는 전자 장치. And determine the throughput in the second buffer connected to the second communication circuit as the second data throughput.
- 제1항에 있어서, The method of claim 1,상기 프로세서는, The processor,상기 제1 데이터 처리량과 상기 제2 데이터 처리량 중 높은 데이터 처리량을 가지는 통신 회로로 송신 데이터 중 우선 순위를 가지는 데이터를 분배하는 전자 장치.And distribute data having priority among transmission data to a communication circuit having a higher data throughput among the first data throughput and the second data throughput.
- 제1항에 있어서, The method of claim 1,상기 프로세서는, The processor,상기 제1 데이터 처리량 및 상기 제2 데이터 처리량에 기초하여, 상기 제1 데이터에 포함된 적어도 하나의 제1 패킷 및 상기 제2 데이터에 포함된 적어도 하나의 제2 패킷에 순서 정보를 삽입하고, Inserting order information into at least one first packet included in the first data and at least one second packet included in the second data, based on the first data throughput and the second data throughput;상기 순서 정보에 대응하게, 상기 제1 통신 회로를 통해 상기 적어도 하나의 제1 패킷을 전송하고, 상기 제2 통신 회로를 통해 상기 적어도 하나의 제2 패킷을 전송하도록 설정된 전자 장치. And corresponding to the order information, transmit the at least one first packet through the first communication circuit, and transmit the at least one second packet through the second communication circuit.
- 제1항에 있어서, The method of claim 1,상기 프로세서는, The processor,상기 통신 회로에서의 전체 데이터 처리량 대비 상기 제1 데이터 처리량의 제1 비율에 대응하게 상기 제1 크기의 상기 제1 데이터를 생성하고, Generate the first data of the first size corresponding to a first ratio of the first data throughput to the total data throughput in the communication circuit,상기 전체 데이터 처리량 대비 상기 제2 데이터 처리량의 제2 비율에 대응하게 상기 제2 크기로 상기 제2 데이터를 생성하는 전자 장치.And generate the second data at the second size corresponding to a second ratio of the second data throughput to the total data throughput.
- 전자 장치에서 복수의 무선 인터페이스를 이용한 통신 방법에 있어서, In a communication method using a plurality of air interfaces in an electronic device,제1 주파수 대역을 통해 통신을 수행하는 제1 통신 회로의 제1 데이터 처리량 및 제2 주파수 대역을 통해 통신을 수행하는 제2 통신 회로의 제2 데이터 처리량을 판단하는 동작;Determining a first data throughput of the first communication circuit that communicates through the first frequency band and a second data throughput of the second communication circuit that communicates through the second frequency band;상기 판단에 기반하여, 상기 제1 통신 회로를 이용하여 제1 크기의 제1 데이터를 전송하는 동작; 및 Based on the determination, transmitting first data of a first size using the first communication circuit; And상기 제2 통신 회로를 이용하여 상기 제1 크기보다 큰 제2 크기의 제2 데이터를 전송하는 동작;을 포함하는 통신 방법. And transmitting second data having a second size larger than the first size by using the second communication circuit.
- 제11항에 있어서, The method of claim 11,상기 제1 데이터 처리량은 상기 제2 데이터 처리량보다 크고, 상기 제1 데이터의 크기는 상기 제2 데이터의 크기보다 큰 데이터이며, The first data throughput is greater than the second data throughput, and the size of the first data is data greater than the size of the second data,상기 제1 데이터의 적어도 일부를 상기 제2 데이터보다 먼저 전송하는 동작;을 더 포함하는 통신 방법. Transmitting at least a portion of the first data before the second data.
- 제11항에 있어서, The method of claim 11,미리 지정된 시간 동안 상기 제1 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제1 데이터 처리량을 판단하는 동작; 및 Determining the first data throughput corresponding to the data processing speed in the first communication circuit for a predetermined time; And미리 지정된 시간 동안 상기 제2 통신 회로에서의 데이터 처리 속도에 대응하게 상기 제2 데이터 처리량을 판단하는 동작;을 더 포함하는 통신 방법.And determining the second data throughput corresponding to the data processing speed in the second communication circuit for a predetermined time.
- 제11항에 있어서, The method of claim 11,상기 제1 통신 회로에 연결된 제1 버퍼에서의 처리량을 상기 제1 데이터 처리량으로 판단하는 동작; 및Determining a throughput in a first buffer coupled to the first communication circuit as the first data throughput; And상기 제2 통신 회로에 연결된 제2 버퍼에서의 처리량을 상기 제2 데이터 처리량으로 판단하는 동작;을 더 포함하는 통신 방법.Determining the throughput in the second buffer connected to the second communication circuit as the second data throughput.
- 제11항에 있어서, The method of claim 11,상기 제1 데이터 처리량과 상기 제2 데이터 처리량 중 높은 데이터 처리량을 가지는 통신 회로로 송신 데이터 중 우선 순위를 가지는 데이터를 분배하는 동작;을 더 포함하는 통신 방법.And distributing data having priority among transmission data to a communication circuit having a higher data throughput of the first data throughput and the second data throughput.
- 제11항에 있어서, The method of claim 11,상기 제1 데이터 처리량 및 상기 제2 데이터 처리량에 기초하여, 상기 제1 데이터에 포함된 적어도 하나의 제1 패킷 및 상기 제2 데이터에 포함된 적어도 하나의 제2 패킷에 순서 정보를 삽입하는 동작; 및 Inserting order information into at least one first packet included in the first data and at least one second packet included in the second data based on the first data throughput and the second data throughput; And상기 순서 정보에 대응하게, 상기 제1 통신 회로를 통해 상기 적어도 하나의 제1 패킷을 전송하고, 상기 제2 통신 회로를 통해 상기 적어도 하나의 제2 패킷을 전송하는 동작;을 더 포함하는 통신 방법.In response to the order information, transmitting the at least one first packet through the first communication circuit and transmitting the at least one second packet through the second communication circuit. .
- 제11항에 있어서, The method of claim 11,상기 통신 회로에서의 전체 데이터 처리량 대비 상기 제1 데이터 처리량의 제1 비율에 대응하게 상기 제1 크기의 상기 제1 데이터를 생성하는 동작; 및 Generating the first data of the first size corresponding to a first ratio of the first data throughput to the total data throughput in the communication circuit; And상기 전체 데이터 처리량 대비 상기 제2 데이터 처리량의 제2 비율에 대응하게 상기 제2 크기로 상기 제2 데이터를 생성하는 동작;을 더 포함하는 통신 방법.Generating the second data at the second size corresponding to a second ratio of the second data throughput to the total data throughput.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170040799A KR20180110896A (en) | 2017-03-30 | 2017-03-30 | Electronic device and method for communication using a plurality of radio interfaces |
KR10-2017-0040799 | 2017-03-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018182260A1 true WO2018182260A1 (en) | 2018-10-04 |
Family
ID=63676639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2018/003548 WO2018182260A1 (en) | 2017-03-30 | 2018-03-26 | Electronic device and method for communication using plurality of wireless interfaces in electronic device |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20180110896A (en) |
WO (1) | WO2018182260A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020226332A1 (en) * | 2019-05-08 | 2020-11-12 | Samsung Electronics Co., Ltd. | Electronic device and control method thereof |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102328449B1 (en) | 2017-03-28 | 2021-11-18 | 삼성전자주식회사 | Electronic device and method for operation thereof |
KR20220142054A (en) * | 2021-04-14 | 2022-10-21 | 삼성전자주식회사 | Electronic device and method for controlling communication parameter in multiple communication |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070159996A1 (en) * | 2003-07-23 | 2007-07-12 | In-Soo Park | Wireless internet access repeater and method thereof |
US20140066083A1 (en) * | 2008-12-17 | 2014-03-06 | Airhop Communications, Inc. | Base station with coordinated multiple air-interface operations |
US20160050681A1 (en) * | 2009-10-05 | 2016-02-18 | Apple Inc. | Methods and apparatus for enhanced algorithms in wireless systems |
US20160212745A1 (en) * | 2015-01-21 | 2016-07-21 | Telefonaktiebolaget L M Ericsson (Publ) | Wireless Local Area Network Access Points |
US20160278093A1 (en) * | 2011-08-17 | 2016-09-22 | CBF Networks, Inc. | Hybrid band radio with adaptive antenna arrays |
-
2017
- 2017-03-30 KR KR1020170040799A patent/KR20180110896A/en unknown
-
2018
- 2018-03-26 WO PCT/KR2018/003548 patent/WO2018182260A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070159996A1 (en) * | 2003-07-23 | 2007-07-12 | In-Soo Park | Wireless internet access repeater and method thereof |
US20140066083A1 (en) * | 2008-12-17 | 2014-03-06 | Airhop Communications, Inc. | Base station with coordinated multiple air-interface operations |
US20160050681A1 (en) * | 2009-10-05 | 2016-02-18 | Apple Inc. | Methods and apparatus for enhanced algorithms in wireless systems |
US20160278093A1 (en) * | 2011-08-17 | 2016-09-22 | CBF Networks, Inc. | Hybrid band radio with adaptive antenna arrays |
US20160212745A1 (en) * | 2015-01-21 | 2016-07-21 | Telefonaktiebolaget L M Ericsson (Publ) | Wireless Local Area Network Access Points |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020226332A1 (en) * | 2019-05-08 | 2020-11-12 | Samsung Electronics Co., Ltd. | Electronic device and control method thereof |
US11385690B2 (en) | 2019-05-08 | 2022-07-12 | Samsung Electronics Co., Ltd. | Electronic device for switching between communication channels and control method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20180110896A (en) | 2018-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2017240614B2 (en) | Electronic device including display | |
WO2018182296A1 (en) | Electronic device and screen sharing method of electronic device | |
AU2015350680B2 (en) | Power control method and apparatus for reducing power consumption | |
WO2018043884A1 (en) | Method for controlling camera and electronic device therefor | |
WO2016137187A1 (en) | Apparatus and method for providing screen mirroring service | |
WO2017142373A1 (en) | Method of controlling the sharing of videos and electronic device adapted thereto | |
WO2018026136A1 (en) | Electronic device comprising antenna | |
WO2016137175A1 (en) | Antenna device and electronic device having the same | |
WO2017082685A1 (en) | Display control method, display panel in which same is implemented, display device, and electronic device | |
WO2017082652A1 (en) | Antenna device and electronic device having same | |
WO2017209502A1 (en) | Method for controlling connection between electronic device and charging device, and device for providing same | |
WO2017155326A1 (en) | Electronic device and method for driving display thereof | |
WO2016137221A1 (en) | Electronic device and image display method thereof | |
WO2017142256A1 (en) | Electronic device for authenticating based on biometric data and operating method thereof | |
WO2018135841A1 (en) | Message generation method and wearable electronic device for supporting the same | |
WO2016093543A1 (en) | Method for controlling and electronic device thereof | |
WO2017003218A1 (en) | Method for controlling multiple batteries and electronic device for implementing same | |
WO2017155251A1 (en) | Video streaming apparatus and method in electronic device | |
WO2017099383A1 (en) | Electronic device comprising antenna | |
WO2017119662A1 (en) | Electronic device and operating method thereof | |
WO2018139824A1 (en) | Electronic device and tethering connection establishment method thereof | |
WO2016175504A1 (en) | Electronic device operating method and electronic device for supporting the same | |
WO2018097683A1 (en) | Electronic device, external electronic device and method for connecting electronic device and external electronic device | |
WO2018128432A1 (en) | System for sharing content between electronic devices, and content sharing method for electronic device | |
WO2019050374A1 (en) | Electronic device and method for communicating with external electronic device |
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: 18776428 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18776428 Country of ref document: EP Kind code of ref document: A1 |