WO2022019682A1 - 엣지 컴퓨팅 시스템 및 방법 - Google Patents

엣지 컴퓨팅 시스템 및 방법 Download PDF

Info

Publication number
WO2022019682A1
WO2022019682A1 PCT/KR2021/009497 KR2021009497W WO2022019682A1 WO 2022019682 A1 WO2022019682 A1 WO 2022019682A1 KR 2021009497 W KR2021009497 W KR 2021009497W WO 2022019682 A1 WO2022019682 A1 WO 2022019682A1
Authority
WO
WIPO (PCT)
Prior art keywords
edge
leaf
module
server
leaf device
Prior art date
Application number
PCT/KR2021/009497
Other languages
English (en)
French (fr)
Inventor
이종원
김무현
송가진
이선기
Original Assignee
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Publication of WO2022019682A1 publication Critical patent/WO2022019682A1/ko
Priority to US18/099,754 priority Critical patent/US20230164033A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • H04L12/2834Switching of information between an external network and a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y10/00Economic sectors
    • G16Y10/80Homes; Buildings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Definitions

  • This document relates to an edge computing system, and more particularly, to an edge computing system including a leaf device, an edge device, and a cloud server, and a method for performing an edge computing service.
  • Cloud computing technology is a technology for providing computing services such as servers, storage, software, or analysis by providing computing resources that exist in a different location to the user through a network.
  • User data or contents collected from IoT devices are stored in cloud servers, and cloud services are provided to users through data processing.
  • Cloud computing is being utilized to process data generated in the Internet of Things (IoT).
  • IoT Internet of Things
  • cloud computing as the amount of data and devices constituting the IoT increases, a load is created on the system, and security or privacy issues may occur in the process of data delivery and/or storage, an error may occur in the cloud server, or the Internet If it is not connected to , there may be a problem that the service cannot be provided.
  • Edge computing is an open architecture that extends cloud computing and some of its services to devices at the edge of a network. For example, when edge computing technology is utilized in IoT, applications or services processed in a cloud server, where low latency and privacy are important, can be partially distributed on the edge device.
  • edge computing technology is being used in IoT, the conventional edge computing service provides a service through a module fixed to a fixed edge device.
  • edge device connected to at least one leaf device in the home network and equipped with software and/or hardware for processing data.
  • the edge computing service may not be available depending on the state of the edge device (eg, movement, lack of resources), and resources for edge computing must be secured.
  • Various embodiments of this document provide an edge computing system and dynamically by installing a module and/or service capable of edge computing according to an electronic device registered in an IoT service (eg, SmartThings TM ) and/or a device possessed by a user.
  • An edge computing method can be provided.
  • Various embodiments of the present document provide an edge computing system and edge computing method using devices owned by a user as a leaf device or an edge device without user input for use as a designated device (eg, leaf device, edge device) can do.
  • An electronic device includes a communication module, a memory, and a processor operatively connected to the communication module and the memory, wherein the processor is located in a network from an external server using the communication module Receives a connection test command with a leaf device, and in response to the reception of the connection test command, checks whether it is possible to connect with the leaf device using the communication module, and transmits the verification result to an external server, When connectable with the leaf device, receiving at least one module for performing an edge computing service from an external server, storing and installing it in the memory, and executing the installed at least one module, received from the leaf device It may be configured to perform edge computing services based on data.
  • the edge computing service support method of the IoT server includes at least one of the edge device and the leaf device by issuing a test command for checking whether the edge device and the leaf device selected by the user device are connectable. An operation of transmitting to one, when it is confirmed that the edge device and the leaf device are connectable, an operation of determining at least one module necessary to perform an edge computing service based on device information of the edge device and the leaf device , and transmitting the at least one module stored in the IoT server to the edge device, or requesting an IoT hub server to transmit the at least one module to the edge device.
  • edge computing method of an electronic device in response to receiving a connection test command with a leaf device located in a network from an external server, and receiving the connection test command, using the communication module Checking whether the leaf device is connectable and transmitting the check result to an external server. If the leaf device is connectable, at least one module for performing edge computing service is received from the external server and stored in memory and installed and executing the at least one installed module, and performing an edge computing service based on data received from the leaf device.
  • edge computing may be implemented using a device having idle computing power in a network.
  • various effects directly or indirectly identified through this document may be provided.
  • FIG 1 illustrates devices in an IoT environment according to various embodiments.
  • FIGS. 2A and 2B illustrate respective devices of an edge computing system according to various embodiments.
  • FIG. 3 is a block diagram of a user device within a network environment, in accordance with various embodiments.
  • FIG. 4 is a block diagram of an edge device according to various embodiments of the present disclosure.
  • FIG. 5 is a block diagram of a leaf device according to various embodiments.
  • FIG. 6 is a diagram illustrating operations of devices of an edge computing system according to various embodiments of the present disclosure.
  • FIG. 7 is a flowchart of an edge computing service method according to various embodiments.
  • 8A and 8B are flowcharts of an edge computing service method according to various embodiments.
  • 9A to 9C and 10A to 10C illustrate application screens of a user device according to various embodiments of the present disclosure.
  • FIG. 11 is a flowchart of an edge computing service method of an edge device according to various embodiments of the present disclosure
  • FIG. 12 is a flowchart of an edge computing service method of an IoT server according to various embodiments of the present disclosure
  • FIG 13 illustrates an AI computing distributed processing platform according to various embodiments.
  • FIG. 14 is a flowchart of an AI computing distributed processing method according to various embodiments.
  • FIG 1 illustrates devices in an IoT environment (or IoT system) according to various embodiments.
  • an Internet of thins (IoT) system (or edge computing system) 100 includes at least one leaf device 120 (leaf device), at least one edge device 110 (edge device), and a user. It may include a device 130 (user device) and a cloud network 140 (cloud network).
  • the leaf device 120 , the edge device 110 , and the user device 130 may be disposed in adjacent locations (eg, in a house) and connected to the same home network (eg, the same access point (AP)).
  • the cloud network 140 may be remotely located, but may be connected to the leaf device 120 , the edge device 110 , and the user device 130 through the Internet.
  • the leaf device 120, the edge device 110, and the user device 130 are classified and described according to the function and operation of each device in the edge computing system 100, but the same device (eg, a smart phone, a tablet PC) may operate as any one of the leaf device 120 , the edge device 110 , and the user device 130 in some cases.
  • the names and definitions of devices described in this document do not limit the functions and/or operations of the devices.
  • the leaf device 120 may collect various data using a sensor as an end point of the IoT system 100 and transmit it to the edge device 110 or the cloud network 140 . Also, the leaf device 120 may perform various operations according to a command transmitted from the cloud network 140 or the user device 130 .
  • a device such as a camera 121 , a refrigerator 122 , a light bulb 123a , and a digital thermometer 123b may be the leaf device 120 .
  • the leaf device 120 may access the cloud network 140 through the Internet, and devices that do not support Internet Protocol (IP) among the leaf devices 120 (eg, the light bulb 123a, digital
  • IP Internet Protocol
  • the thermometer 123b) transmits the sensed data to the hub device 124 through supported non-IP-based communication (eg, bluetooth, zigbee), and the hub device 124 sends each leaf to the cloud network 140 via the Internet. Sensing data of the devices 123a and 123b may be transmitted.
  • IP Internet Protocol
  • the cloud network 140 is located on the network and may include various server devices (eg, IoT management server and IoT hub server) supporting cloud computing services in the IoT system 100 .
  • the cloud network 140 may perform computing processing on the sensing data received from the leaf device 120 and transmit a command for controlling the leaf device 120 .
  • the cloud network 140 may perform a function of operating and managing a specific device in the home network to operate as the edge device 110 .
  • the cloud network 140 includes an IoT server (eg, an IoT management server or an IoT hub server), and the IoT server is an edge device such as registration, connection, and management of the edge device 110 and the leaf device 120 .
  • a computing service may be performed and a module (eg, a device module, a service module) necessary for the edge computing service may be provided to the edge device 110 .
  • the edge device 110 may directly process data received from the leaf device 120 or transmit it to the cloud network 140 (eg, an IoT server).
  • the edge device 110 may be a device including hardware and/or software resources necessary for an edge computing service, such as a TV 112 and a tablet PC 111 .
  • the edge device 110 may be connected to the cloud network 140 through the Internet, and may form a home network with the leaf device 120 .
  • a plurality of edge devices 110 may exist in the home network, and the leaf device 120 may be connected to any one of the plurality of edge devices 110 to transmit data.
  • the edge device 110 may download and execute a module (eg, a device module, a service module) required for an edge computing service from the cloud network 140 .
  • the edge device 110 may perform a device-specific function (eg, an image output function of a TV), and may perform hardware at least partially simultaneously with the performance of the unique function or during an idle time that does not perform the unique function. and/or may perform edge computing services through software resources.
  • a device-specific function eg, an image output function of a TV
  • the edge device 110 may perform hardware at least partially simultaneously with the performance of the unique function or during an idle time that does not perform the unique function. and/or may perform edge computing services through software resources.
  • edge device 110 A detailed configuration and operation of the edge device 110 will be described in more detail with reference to FIG. 4 .
  • the user device 130 may provide various user interfaces related to edge computing services through applications. For example, the user device 130 may obtain data (eg, camera image streaming) acquired from the leaf device 120 or data as a result of processing the data in the edge device 110 or the cloud network 140 (eg, a person). recognition) can be displayed on the display. In addition, the user device 130 may receive a user input such as connection of the edge device 110 and/or the leaf device 120 and server registration, and transmit it to the cloud network 140 . A detailed configuration and operation of the user device 130 will be described in more detail with reference to FIG. 3 .
  • data eg, camera image streaming
  • the cloud network 140 e.g, a person
  • the user device 130 may receive a user input such as connection of the edge device 110 and/or the leaf device 120 and server registration, and transmit it to the cloud network 140 .
  • Various embodiments of the present document may dynamically implement an edge computing service using a device having idle computing power in a home network.
  • the edge computing system 100 when the edge computing system 100 is determined as the edge device 110 for a specific leaf device 120 in the home network, the edge computing system (eg, device module, service module) necessary for the edge computing service. It can be downloaded from the device 110 and installed, and an edge computing service can be performed using the corresponding modules. Accordingly, unlike the conventional technology of providing an edge computing service through a module fixed to a fixed device, the edge device 110 can be dynamically configured.
  • FIGS. 2A and 2B illustrate respective devices of an edge computing system according to various embodiments.
  • the edge computing system may include a leaf device 220 , an edge device 210 , a user device 230 , an IoT hub server 250 , and an IoT management server 240 .
  • various IoT devices may exist on the home network, and in FIG. 2 , one leaf device (eg, the camera 121 of FIG. 1 ) and one edge device ) (eg, the TV 112 of FIG. 1 ) will be described as an example.
  • the IoT management server 240 (eg, SmartThings TM server) is a server device that provides various services for determining, connecting and/or operating edge computing services, and includes a provision manager 242, a module It may include a manager 244 and an edge-leaf manager 246 .
  • the provision manager 242 may perform a relay function in the middle so that the edge device 210 can be connected to the IoT hub server 250 .
  • the provision manager 242 provides a connection string ( connection string) to the edge device 210 .
  • the module manager 244 may manage information on various modules provided for edge computing services and devices supporting each service.
  • the module required to perform the edge computing service is a device module 219 that enables the edge device 210 to transmit data transmitted from the leaf device 220 to an external server (eg, IoT hub server 250).
  • an external server eg, IoT hub server 250
  • a service module 218 including programs executed to implement a service in the edge device 210 based on data transmitted from the leaf device 220 .
  • the edge-leaf manager 246 may manage the connection state between the edge device 210 and the leaf device 220 existing in several home networks. For example, when the edge device 210 and the leaf device 220 registered in the IoT management server 240 are connected or disconnected from each other, the edge device 210 and/or the leaf device 220 connects or connects. The release information is transmitted to the IoT management server 240, and the IoT management server 240 can store information about which edge device 210 and leaf device 220 are connected in real time, and which service is being performed. have.
  • the IoT hub server 250 supports a cloud computing platform, and provides data necessary for the leaf device 220 and the edge device 210 in the cloud environment to be connected to each other.
  • the IoT hub server 250 may include an IoT hub 252 and a module registry 254 .
  • the module registry 254 may be a storage of modules (eg, the device module 219 and the service module 218 ) required to perform an edge computing service.
  • the IoT hub 252 maintains a connection with the edge device 210 , provides a module stored in the module registry 254 to the edge device 210 , and provides multiple edge devices 210 . ) can maintain information of installed modules.
  • the edge device 210 (eg, the edge device 110 of FIG. 1 ) has device-specific functions such as a TV, a tablet PC, and a laptop PC, and configures hardware and/or software for an edge computing service. It can be a device containing (eg edge runtime, base module).
  • the edge computing service may be performed through hardware and/or software resources at least partially concurrently with the performance of the intrinsic function or during idle time when the intrinsic function is not performed.
  • the edge device 210 includes an interface 212 and an operating system (OS) 214 for communicating with the cloud (eg, the IoT management server 240 and the IoT hub server 250 ). and edge runtime 216 .
  • OS operating system
  • the edge device 210 may require hardware conditions (eg, CPU performance) for operating the operating system 214 , and may be configured as a real time operating system (RTOS).
  • RTOS real time operating system
  • An edge runtime 216 (edge runtime) and a basic module for edge computing may be installed in the edge device 210 through a process process or software upgrade of the edge device 210 .
  • the edge runtime 216 may include a daemon program for interworking with the IoT server, and the basic module may be configured as a container as a program necessary for communication with the IoT server.
  • the basic module may be a container installed in the edge runtime 216 environment.
  • the edge device 210 when the edge device 210 is connected to a specific leaf device 220 , it may receive and install at least one module for performing an edge computing service from the IoT hub server 250 .
  • the at least one module may be determined according to the type of the leaf apparatus 220 to be connected and/or the type of service that can be performed, and a device module 219 corresponding to the leaf apparatus 220 and / or may include a service module 218 corresponding to the type of service to be performed.
  • a device module 219 corresponding to the leaf apparatus 220 and / or may include a service module 218 corresponding to the type of service to be performed.
  • the edge device 210 is connected to the IoT hub server 250 by executing the edge runtime 216 in the provisioning process, and the at least one module is additionally installed according to the type of the leaf device 220 and can be executed
  • the edge device 210 may activate or deactivate the edge mode according to a command received from the IoT hub server 250 or the IoT management server 240 .
  • the edge device 210 performs only a unique function (eg, an image output function of the TV), and the device module 219 and the service module 218 may not be executed.
  • the leaf device 220 (eg, the leaf device 120 of FIG. 1 ) transmits data acquired using a sensor to the connected edge device 210 or a cloud network (eg, IoT management server 240 ); It can be transmitted to the IoT hub server (250).
  • a cloud network eg, IoT management server 240
  • IoT hub server 250
  • IP internet protocol
  • the user device 230 may be a device including a display capable of executing various applications, such as a smart phone or a tablet PC, and displaying a user interface (UI).
  • the user device 230 may install and/or execute an application for an edge computing service, and receive content and a notification generated by the leaf device 220 through the corresponding application.
  • the edge device 210 and the leaf device 220 are connected, the content or notification generated by the leaf device 220 may be transmitted to the user device 230 through the edge device 210 .
  • the functions of the IoT hub server 250 and the IoT management server 240 may be performed by one server device (eg, the IoT server 260 of FIG. 2B ).
  • the IoT server 260 includes the IoT hub 261 (eg, the IoT hub 252 of FIG. 2A ) that is a configuration of the IoT hub server 250 and the IoT management server 240 described above. ), module registry 262 (eg, module registry 254 in FIG. 2A ), provision manager 263 (eg, provision manager 242 in FIG. 2A ), module manager 264 (eg, FIG. 2A ). of the module manager 244) and the edge-leaf manager 265 (eg, the edge-leaf manager 246 of FIG. 2A).
  • the edge-leaf manager 265 eg, the edge-leaf manager 246 of FIG. 2A.
  • each configuration of the IoT hub server 250 and the IoT management server 240 of FIG. 2A is distributedly arranged by three or more plurality of server devices existing on the network, or some operations performed in each configuration It may also be distributed by several server devices.
  • FIG. 3 is a block diagram of a user device within a network environment, in accordance with various embodiments.
  • a user device of the edge computing system eg, the user device 130 of FIG. 1 and the user device 230 of FIG. 2A
  • an electronic device 301 may be referred to as an electronic device 301 .
  • FIG. 3 is a block diagram of an electronic device 301 in a network environment 300 , according to various embodiments.
  • the electronic device 301 communicates with the electronic device 302 through a first network 398 (eg, a short-range wireless communication network) or a second network 399 . It may communicate with the electronic device 304 or the server 308 through (eg, a long-distance wireless communication network). According to an embodiment, the electronic device 301 may communicate with the electronic device 304 through the server 308 .
  • the electronic device 301 includes a processor 320 , a memory 330 , an input module 350 , a sound output module 355 , a display module 360 , an audio module 370 , and a sensor module ( 376 , interface 377 , connection terminal 378 , haptic module 379 , camera module 380 , power management module 388 , battery 389 , communication module 390 , subscriber identification module 396 ) , or an antenna module 397 .
  • at least one of these components eg, the connection terminal 378
  • some of these components are integrated into one component (eg, display module 360 ). can be
  • the processor 320 for example, executes software (eg, a program 340) to execute at least one other component (eg, a hardware or software component) of the electronic device 301 connected to the processor 320 . It can control and perform various data processing or operations. According to one embodiment, as at least part of data processing or computation, the processor 320 converts commands or data received from other components (eg, the sensor module 376 or the communication module 390 ) to the volatile memory 332 . may be stored in , process commands or data stored in the volatile memory 332 , and store the result data in the non-volatile memory 334 .
  • software eg, a program 340
  • the processor 320 converts commands or data received from other components (eg, the sensor module 376 or the communication module 390 ) to the volatile memory 332 .
  • the volatile memory 332 may be stored in , process commands or data stored in the volatile memory 332 , and store the result data in the non-volatile memory 334 .
  • the processor 320 is a main processor 321 (eg, central processing unit or application processor) or a secondary processor 323 (eg, a graphics processing unit, a neural network processing unit) a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor).
  • main processor 321 eg, central processing unit or application processor
  • secondary processor 323 eg, a graphics processing unit, a neural network processing unit
  • NPU neural processing unit
  • an image signal processor e.g., a sensor hub processor, or a communication processor.
  • the coprocessor 323 may be, for example, on behalf of the main processor 321 while the main processor 321 is in an inactive (eg, sleep) state, or when the main processor 321 is active (eg, executing an application). ), together with the main processor 321, at least one of the components of the electronic device 301 (eg, the display module 360, the sensor module 376, or the communication module 390) It is possible to control at least some of the related functions or states.
  • the coprocessor 323 eg, image signal processor or communication processor
  • may be implemented as part of another functionally related component eg, camera module 380 or communication module 390). have.
  • the auxiliary processor 323 may include a hardware structure specialized for processing an artificial intelligence model.
  • Artificial intelligence models can be created through machine learning. Such learning may be performed, for example, in the electronic device 301 itself on which artificial intelligence is performed, or may be performed through a separate server (eg, the server 308 ).
  • the learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but in the above example not limited
  • the artificial intelligence model may include a plurality of artificial neural network layers.
  • Artificial neural networks include deep neural networks (DNNs), convolutional neural networks (CNNs), recurrent neural networks (RNNs), restricted boltzmann machines (RBMs), deep belief networks (DBNs), bidirectional recurrent deep neural networks (BRDNNs), It may be one of deep Q-networks or a combination of two or more of the above, but is not limited to the above example.
  • the artificial intelligence model may include, in addition to, or alternatively, a software structure in addition to the hardware structure.
  • the memory 330 may store various data used by at least one component (eg, the processor 320 or the sensor module 376 ) of the electronic device 301 .
  • the data may include, for example, input data or output data for software (eg, the program 340 ) and instructions related thereto.
  • the memory 330 may include a volatile memory 332 or a non-volatile memory 334 .
  • the program 340 may be stored as software in the memory 330 , and may include, for example, an operating system 342 , middleware 344 , or an application 346 .
  • the input module 350 may receive a command or data to be used in a component (eg, the processor 320 ) of the electronic device 301 from the outside (eg, a user) of the electronic device 301 .
  • the input module 350 may include, for example, a microphone, a mouse, a keyboard, a key (eg, a button), or a digital pen (eg, a stylus pen).
  • the sound output module 355 may output a sound signal to the outside of the electronic device 301 .
  • the sound output module 355 may include, for example, a speaker or a receiver.
  • the speaker can be used for general purposes such as multimedia playback or recording playback.
  • the receiver may be used to receive an incoming call. According to one embodiment, the receiver may be implemented separately from or as part of the speaker.
  • the display module 360 may visually provide information to the outside (eg, a user) of the electronic device 301 .
  • the display module 360 may include, for example, a control circuit for controlling a display, a hologram device, or a projector and a corresponding device.
  • the display module 360 may include a touch sensor configured to sense a touch or a pressure sensor configured to measure the intensity of a force generated by the touch.
  • the audio module 370 may convert a sound into an electric signal or, conversely, convert an electric signal into a sound. According to an embodiment, the audio module 370 obtains a sound through the input module 350 or an external electronic device (eg, a sound output module 355 ) connected directly or wirelessly with the electronic device 301 .
  • the electronic device 302 may output sound through (eg, a speaker or headphones).
  • the sensor module 376 detects an operating state (eg, power or temperature) of the electronic device 301 or an external environmental state (eg, a user state), and generates an electrical signal or data value corresponding to the sensed state. can do.
  • the sensor module 376 may include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, a humidity sensor, or an illuminance sensor.
  • the interface 377 may support one or more specified protocols that may be used by the electronic device 301 to directly or wirelessly connect with an external electronic device (eg, the electronic device 302 ).
  • the interface 377 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
  • HDMI high definition multimedia interface
  • USB universal serial bus
  • SD card interface Secure Digital Card
  • connection terminal 378 may include a connector through which the electronic device 301 can be physically connected to an external electronic device (eg, the electronic device 302 ).
  • the connection terminal 378 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).
  • the haptic module 379 may convert an electrical signal into a mechanical stimulus (eg, vibration or movement) or an electrical stimulus that the user can perceive through tactile or kinesthetic sense.
  • the haptic module 379 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
  • the camera module 380 may capture still images and moving images. According to one embodiment, the camera module 380 may include one or more lenses, image sensors, image signal processors, or flashes.
  • the power management module 388 may manage power supplied to the electronic device 301 .
  • the power management module 388 may be implemented as, for example, at least a part of a power management integrated circuit (PMIC).
  • PMIC power management integrated circuit
  • the battery 389 may supply power to at least one component of the electronic device 301 .
  • battery 389 may include, for example, a non-rechargeable primary cell, a rechargeable secondary cell, or a fuel cell.
  • the communication module 390 is a direct (eg, wired) communication channel or a wireless communication channel between the electronic device 301 and an external electronic device (eg, the electronic device 302, the electronic device 304, or the server 308). It can support establishment and communication performance through the established communication channel.
  • the communication module 390 may include one or more communication processors that operate independently of the processor 320 (eg, an application processor) and support direct (eg, wired) communication or wireless communication.
  • the communication module 390 is a wireless communication module 392 (eg, a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 394 (eg, : It may include a LAN (local area network) communication module, or a power line communication module).
  • GNSS global navigation satellite system
  • a corresponding communication module among these communication modules is a first network 398 (eg, a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network 399 (eg, legacy It may communicate with the external electronic device 304 through a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (eg, a telecommunication network such as a LAN or a WAN).
  • a first network 398 eg, a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)
  • a second network 399 eg, legacy It may communicate with the external electronic device 304 through a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (eg, a telecommunication network such as a LAN or a WAN).
  • a telecommunication network
  • the wireless communication module 392 uses the subscriber information (eg, International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 396 within a communication network, such as the first network 398 or the second network 399 .
  • the electronic device 301 may be identified or authenticated.
  • the wireless communication module 392 may support a 5G network after a 4G network and a next-generation communication technology, for example, a new radio access technology (NR).
  • NR access technology includes high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and access to multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency) -latency communications)).
  • eMBB enhanced mobile broadband
  • mMTC massive machine type communications
  • URLLC ultra-reliable and low-latency
  • the wireless communication module 392 may support a high frequency band (eg, mmWave band) to achieve a high data rate, for example.
  • a high frequency band eg, mmWave band
  • the wireless communication module 392 uses various techniques for securing performance in a high frequency band, for example, beamforming, massive multiple-input and multiple-output (MIMO), all-dimensional multiplexing. It may support technologies such as full dimensional MIMO (FD-MIMO), an array antenna, analog beam-forming, or a large scale antenna.
  • the wireless communication module 392 may support various requirements specified in the electronic device 301 , an external electronic device (eg, the electronic device 304 ), or a network system (eg, the second network 399 ).
  • the wireless communication module 392 may include a peak data rate (eg, 20 Gbps or more) for realizing eMBB, loss coverage (eg, 164 dB or less) for realizing mMTC, or U-plane latency for realizing URLLC ( Example: downlink (DL) and uplink (UL) each 0.5 ms or less, or round trip 1 ms or less).
  • a peak data rate eg, 20 Gbps or more
  • loss coverage eg, 164 dB or less
  • U-plane latency for realizing URLLC
  • the antenna module 397 may transmit or receive a signal or power to the outside (eg, an external electronic device).
  • the antenna module 397 may include an antenna including a conductor formed on a substrate (eg, a PCB) or a radiator formed of a conductive pattern.
  • the antenna module 397 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for a communication scheme used in a communication network such as the first network 398 or the second network 399 is connected from the plurality of antennas by, for example, the communication module 390 . can be chosen.
  • a signal or power may be transmitted or received between the communication module 390 and an external electronic device through the selected at least one antenna.
  • other components eg, a radio frequency integrated circuit (RFIC)
  • RFIC radio frequency integrated circuit
  • the antenna module 397 may form a mmWave antenna module.
  • the mmWave antenna module comprises a printed circuit board, an RFIC disposed on or adjacent to a first side (eg, bottom side) of the printed circuit board and capable of supporting a designated high frequency band (eg, mmWave band); and a plurality of antennas (eg, an array antenna) disposed on or adjacent to a second side (eg, top or side) of the printed circuit board and capable of transmitting or receiving signals of the designated high frequency band. can do.
  • peripheral devices eg, a bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)
  • GPIO general purpose input and output
  • SPI serial peripheral interface
  • MIPI mobile industry processor interface
  • the command or data may be transmitted or received between the electronic device 301 and the external electronic device 304 through the server 308 connected to the second network 399 .
  • Each of the external electronic devices 302 or 304 may be the same as or different from the electronic device 301 .
  • all or part of the operations executed by the electronic device 301 may be executed by one or more external electronic devices 302 , 304 , or 308 .
  • the electronic device 301 may perform the function or service itself instead of executing the function or service itself.
  • one or more external electronic devices may be requested to perform at least a part of the function or the service.
  • One or more external electronic devices that have received the request may execute at least a part of the requested function or service, or an additional function or service related to the request, and transmit a result of the execution to the electronic device 301 .
  • the electronic device 301 may process the result as it is or additionally and provide it as at least a part of a response to the request.
  • cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used.
  • the electronic device 301 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing.
  • the external electronic device 304 may include an Internet of things (IoT) device.
  • the server 308 may be an intelligent server using machine learning and/or neural networks.
  • the external electronic device 304 or the server 308 may be included in the second network 399 .
  • the electronic device 301 may be applied to an intelligent service (eg, smart home, smart city, smart car, or health care) based on 5G communication technology and IoT-related technology.
  • the processor 320 connects an edge device (eg, the edge device 210 of FIG. 2A ) and a leaf device (eg, the leaf device 220 of FIG. 2A ) in the home network using the application 346 ). Control related to the edge computing service used can be performed.
  • an edge device eg, the edge device 210 of FIG. 2A
  • a leaf device eg, the leaf device 220 of FIG. 2A
  • Control related to the edge computing service used can be performed.
  • the application 346 may provide a function of registering the edge device and the leaf device with the IoT server (eg, the IoT management server 240 of FIG. 2A ).
  • the processor 320 may discover at least one edge device and a leaf device in the home network using the communication module 390 and receive device information (eg, identification information, network information) of each device. .
  • the processor 320 may display a list of the identified devices on the application 346 .
  • the processor 320 may request registration by transmitting device information of the edge device or the leaf device selected based on the user input to the IoT server.
  • the processor 320 may receive the name and/or location information of each device on the application 346 .
  • the processor 320 may receive data (eg, image streaming, sound data) obtained from a sensor of the leaf device from the leaf device from the cloud network while the edge mode of the edge device is deactivated. Thereafter, when the edge computing service is started, the data acquired from the leaf device is transmitted to the edge device, and the user device (eg, the user device 130 of FIG. 1 , the user device 230 of FIG. 2A , or the electronic device) 301 ) may receive sensor data and analysis data directly from the edge device or through a cloud network (eg, the cloud network 140 of FIG. 1 ) from the edge device.
  • data eg, image streaming, sound data
  • At least one of the components of the edge device or the leaf device may be configured to be at least partially identical to or similar to components of the electronic device 301 (eg, a user device).
  • the sensor of the leaf device may perform substantially the same function and/or operation as the sensor module 376 of the electronic device 301 .
  • the communication module of the edge device eg, the communication module 420 of FIG. 4
  • the interface eg, the interface 212 of FIG. 2A
  • the electronic device 301 may perform substantially the same function and/or operation as that of the interface 377 .
  • FIG. 4 is a block diagram of an edge device according to various embodiments of the present disclosure.
  • the edge device 400 may include a communication module 420 , a processor 410 , and a memory 430 , and even if some of the illustrated components are omitted or replaced, this document Various embodiments of can be implemented.
  • a plurality of edge devices may exist, and each edge device may be a different type of device.
  • the edge device 400 may be implemented as a TV, a tablet PC, a laptop PC, or the like.
  • descriptions of features for the edge device 400 to execute device-specific functions will be omitted, and only operations necessary to operate as the edge device 400 in the edge computing system will be described.
  • the communication module 420 supports wireless communication (eg, short-range communication (Wi-Fi), cellular communication), a leaf device (eg, the leaf device 220 of FIG. 2A ), a user device ( For example: the user device 230 of FIG. 2A ) and an external server (eg, the IoT management server and the IoT hub server of FIG. 2A ) may transmit/receive data.
  • the communication module 420 is short-range wireless communication, near field communication (NFC), Bluetooth, bluetooth low energy (BLE), WiFi Direct, and a mesh network (eg, zigbee, z-wave). ) and/or UWB (ultra-wideband), and cellular communication, may be connected to a 4G network, and/or a 5G network (eg, standalone (SA), non-standalone (NSA)).
  • the memory 430 may include a volatile memory and/or a non-volatile memory, and may store various data used in at least one component (eg, the processor 410 ) of the edge device 400 . It may be stored temporarily and/or permanently.
  • the memory 430 may store various instructions that may be executed by the processor 410 . Such instructions may include various control commands including arithmetic and logical operations, data movement, and input/output that can be recognized by the processor 410 .
  • the memory 430 may store device information, edge runtime, basic module, device module, and service module.
  • the device information may include identification information of the edge device 400 , for example, a device ID, a manufacturer, a model name, capabilities, and a device type. Also, the device information may further include at least some of location information (eg, a room, living room) and network information (eg, an IP address) of the edge device 400 . At least some of the device information (eg, location information) may be input by the user on an application of the user device (eg, the electronic device 301 of FIG. 3 or the user device 301 of FIG. 3 ).
  • the edge runtime may include a daemon program for interworking with the IoT server.
  • the edge runtime is not executed when the edge mode of the edge device 400 is deactivated.
  • this value is It can be implemented using
  • the basic module may be configured as a container as a program necessary for communication with the IoT server.
  • a basic module for edge runtime and edge computing may be installed in the edge device 400 through a process process or software upgrade of the edge device 400 .
  • the edge device 400 may perform an over the air (OTA) software update as a software upgrade.
  • the OTA software update may include an open mobile alliance (OMA) download, a firmware OTA (FOTA), or a plain FTP (FTP).
  • the edge device 400 may store a device module and a service module as a module required for an edge computing service.
  • the device module may correspond to each connected leaf device, and the service module may correspond to each service to be performed.
  • a plurality of device modules and/or service modules may be installed according to the number of connected leaf devices and the number of services to be performed. (Example: device module 1 (219a) and device module 2 (219b) in FIG. 2A)
  • the device module converts data received according to the first protocol from the leaf device according to the second protocol (eg, message queue telemetry transport (MQTT)) and transmits it to an external server.
  • the first protocol and the second protocol are protocols related to a control channel for the edge device 400 to communicate with the IoT server, and the first protocol is a web socket.
  • the control channel is a channel for providing and/or processing device information
  • the edge device 400 may communicate with the IoT server using the control channel.
  • the service module may include programs that process and/or analyze the received data.
  • the edge device 400 During the process or software upgrade of the edge device 400 , only the edge runtime and the basic module may be installed, and the device module and the service module may not be installed. Thereafter, when the edge device 400 is connected to the leaf device, the device module and the service module may be downloaded and installed from the IoT server (eg, the module registry 254 of FIG. 2A ).
  • the IoT server eg, the module registry 254 of FIG. 2A
  • the memory 430 may further store various programs for executing a unique function of the edge device 400 (eg, an image output function of a TV).
  • the processor 410 is a configuration capable of performing an operation or data processing related to control and/or communication of each component of the edge device 400 , and includes a communication module 420 and a memory 430 . It may be operatively, functionally, and/or electrically coupled to each component of the back edge device 400 .
  • the processing and data processing functions that the processor 410 can implement within the edge device 400 will not be limited, but below, the edge device 400 connects with the leaf device for edge computing service and , operations for receiving and installing modules required for edge computing services will be described.
  • the processor 410 may register device information of the edge device 400 to the IoT server (eg, the IoT management server 240 of FIG. 2A ).
  • the device information may include at least some of identification information, location information, and network information of the edge device 400 .
  • the processor 410 transmits device information stored in the memory 430 to the user device, and the device information of the edge device 400 is transmitted to the IoT server through the application of the user device, so that the edge device 400 can be registered.
  • the processor 410 may transmit the updated information to the user device and/or the IoT server.
  • the edge device 400 may be in a state in which the edge mode is activated and the edge runtime is operating (executed).
  • the processor 410 may receive a connection test command from the IoT server (eg, the IoT management server 240 of FIG. 2A ) through the communication module 420 .
  • the connection test command may include identification information and/or network information of the leaf device.
  • the IoT server may search for at least one leaf device connectable to the edge device 400 among several pre-registered leaf devices, and transmit a connection test command to the leaf device selected by the user device to the edge device 400 .
  • the processor 410 may use the communication module 420 to identify at least one external device located in the same network as the electronic device, and transmit identification information of the at least one external device to the IoT server. . Also, when a specific leaf device among at least one external device is selected by the user device, the IoT server may transmit a connection test command with the corresponding leaf device to the edge device 400 .
  • the processor 410 may determine whether it is possible to connect to the leaf device using the communication module 420 in response to the reception of the connection test command.
  • the processor 410 may transmit the connection test result to the IoT server.
  • the processor 410 includes at least one module (eg, a device module) for performing an edge computing service from an IoT server (eg, the IoT hub server 250 of FIG. 2A ) through the communication module 420 . , service module), and store and install the received module in the memory 430 .
  • the IoT server includes device information of the edge device 400 (eg, device ID, manufacturer, model name, capability, and device type of the edge device 400) and device information of the leaf device (eg, device ID of the leaf device, An edge computing service that can be performed based on a manufacturer, model name, capability, and device type) may be checked, and a module necessary to perform the corresponding service may be provided to the processor 410 .
  • the IoT server receives the video streaming transmitted from the leaf device and transmits the video from the AV module (audio video module) and AI vision (artificial intelligence vision) service required to transmit to the cloud network.
  • An artificial intelligence vision module that performs analysis may be provided.
  • the IoT server may provide a sound module necessary for receiving and transmitting sound data transmitted from the leaf device to the cloud network and an AI sound analysis module for analyzing the received sound data.
  • the edge computing service may be dynamically implemented using the idle computing resources of the edge device 400 .
  • the edge device and the leaf device process a third channel (eg, control channel) for processing control information (eg, control information, event information, or device information) and image information (eg, video streaming)
  • a fourth channel (eg, streaming channel) for (eg, delivery) may be created.
  • the second channel eg streaming channel
  • the first channel eg control channel
  • the second channel (streaming channel) between the existing leaf device and the IoT server is used instead, image information may be transmitted to the edge device using the fourth channel.
  • the processor 410 may execute a stored device module and a service module, and may perform an edge computing service based on data received from the leaf device.
  • the edge device 400 may provide various image analysis-based services such as face recognition, user recognition, and tracking by analyzing a received image using an AI vision module.
  • the edge device 400 may analyze sound data using the AI sound analysis module to perform services such as pet monitoring, window breakage detection, and alarm sound detection.
  • the processor 410 may transmit sensor data received from the leaf device and analysis data generated by the service module to the IoT server in real time using the communication module 420 .
  • the edge device 400 may transmit information (eg, image information, sensor data, or analysis data) obtained from the leaf device to the user device without using the IoT server.
  • the processor 410 may disconnect the two devices. In this case, the processor 410 may report the disconnection of the two devices to the IoT server.
  • the Leaf device can connect to the cloud network again and continue to provide services. For example, the leaf device may provide a service of the leaf device to the user device using the IoT server and the generated first channel (eg, control channel) and second channel (eg, streaming channel).
  • FIG. 5 is a block diagram of a leaf device according to various embodiments.
  • the leaf device 500 may include a communication module 520 , a processor 510 , and a sensor 540 , and even if some of the illustrated components are omitted or replaced, this document Various embodiments of can be implemented.
  • each leaf device 500 may be a different type of device.
  • the leaf device may be implemented as a camera, a refrigerator, a light bulb, a digital thermometer, or the like.
  • descriptions of features for the leaf device 500 to execute device-specific functions will be omitted, and only operations necessary to operate as the leaf device 500 in the edge computing system will be described.
  • the communication module 520 supports wireless communication (eg, Wi-Fi, cellular communication), and an edge device (eg, the edge device 210 of FIG. 2A , the edge device 400 of FIG. 4 ) ), a user device (eg, the user device 230 of FIG. 2A , the user device 301 of FIG. 3 ), an external server (eg, the IoT management server 240 of FIG. 2A , the IoT hub server 250 ) and data can send and receive
  • wireless communication eg, Wi-Fi, cellular communication
  • an edge device eg, the edge device 210 of FIG. 2A , the edge device 400 of FIG. 4
  • a user device eg, the user device 230 of FIG. 2A , the user device 301 of FIG. 3
  • an external server eg, the IoT management server 240 of FIG. 2A , the IoT hub server 250
  • data can send and receive
  • the leaf device 500 may include at least one sensor 540 .
  • the leaf device 500 may include an IP camera, it may include an image sensor for acquiring surrounding image data, and if it is an AI speaker, it may include a microphone for detecting surrounding sound.
  • a sensor 540 for sensing various data such as temperature, pressure, and impact amount may be provided according to the type of the leaf device 500 .
  • the processor 510 is a configuration capable of performing an operation or data processing related to control and/or communication of each component of the leaf device 500 , and a communication module 520 , a sensor 540 . It may be operatively, functionally, and/or electrically coupled with each component of the back leaf device 500 .
  • the processor 510 may register device information of the leaf device 500 to the IoT server.
  • the device information may include at least some of identification information, location information, and network information of the edge device.
  • the processor 510 may transmit device information stored in the memory to the user device, and the device information of the leaf device 500 may be transmitted to the IoT server through the application of the user device to register the leaf device 500 . have.
  • the processor 510 may transmit data (eg, image streaming) acquired through the sensor 540 to the IoT server.
  • the leaf device 500 may form a first channel (eg, a control channel) and a second channel (eg, a streaming channel) with the IoT server, and the leaf device 500 and the IoT server Control information and/or event information may be transmitted and received through one channel, and video streaming obtained from the leaf device 500 may be transmitted to the IoT server (or cloud network) through a second channel.
  • the processor 510 may attempt to connect with the edge device through the communication module 520 in response to a connection test command received from the IoT server and transmit the test result to the IoT server. Thereafter, the processor 510 may establish a connection with the edge device through the communication module 520 .
  • the processor 510 responds to a connection test command received from the IoT server, data sensed and transmitted by the leaf device 500 (eg, video streaming) and a service that can be performed using the leaf device 500 .
  • a signal containing the signal can be broadcast on a local network.
  • the edge device may broadcast a signal including an edge computing service that the edge device can perform on the local network.
  • the processor 510 checks which services can be provided by the edge device in the signal broadcast from the edge device, checks whether an edge computing service is available for the data of the leaf device 500, and attempts to connect with the edge device. can
  • the leaf device 500 when the leaf device 500 is connected to the edge device and the edge mode of the edge device is activated, the leaf device 500 may transmit sensor data to the edge device through the established connection.
  • the edge device and the leaf device 500 form a third channel (eg, a control channel) for transmitting and receiving control information and/or event information, and a fourth channel (eg, a streaming channel) for transmitting and receiving video streaming. ) can be formed.
  • a third channel eg, a control channel
  • a fourth channel eg, a streaming channel
  • the processor 510 may transmit sensor data back to the IoT server.
  • FIG. 6 is a diagram illustrating operations of devices of an edge computing system according to various embodiments of the present disclosure.
  • FIG. 6 shows an IoT management server 640 (eg, IoT management server 240 in FIG. 2A ) and an IoT hub server 650 (eg, IoT hub server 250 in FIG. 2A ) as devices on a cloud network, and
  • the functions of the IoT management server 640 and the IoT hub server 650 may be implemented by one server device (eg, the IoT server 260 in FIG. 2B ) or distributed processing may be performed by three or more devices. have.
  • the edge device 610 and the leaf device 620 may be connected to each other on the same home network.
  • the leaf device 620 transmits device information of the leaf device 620 to the IoT management server ( 640) (eg SmartThings TM Server).
  • the device information of the leaf device 620 includes identification information (device ID, manufacturer, model name, capability and device type) of the leaf device 620, location information (eg, room, living room) and network information (eg: IP address).
  • identification information device ID, manufacturer, model name, capability and device type
  • location information eg, room, living room
  • network information eg: IP address
  • the leaf device 620 may connect to an IoT server (eg, IoT management server 640 ) using a service set identifier (SSID), and an IP-based device If not (eg, BLE, zigbee, z-wave), via a hub device (eg, hub device 124 in FIG. 1 ) or through a user device (eg, user device 230 in FIG. 2A , user in FIG. 3 )
  • the device 301) may be used as a hub device to connect to an IoT server (eg, the IoT management server 640).
  • the edge device 610 eg, as shown in FIG. 2A ).
  • the edge device 210 and the edge device 400 of FIG. 4 may register device information of the edge device 610 to the IoT management server 640 .
  • the device information of the edge device 610 includes identification information (device ID, manufacturer, model name, capability, and device type) of the edge device 610, location information (eg, room, living room), and network information (eg, IP). address) may be included.
  • the edge device 610 may transmit device information of the edge device 610 to the IoT management server 640 in a state in which the edge mode is deactivated.
  • the edge device 610 may transmit device information by executing a basic module for edge computing (eg, a container of a program required for communication with the IoT management server 640) while the edge runtime is not executed.
  • a basic module for edge computing eg, a container of a program required for communication with the IoT management server 640
  • the edge device 610 installs a basic module for edge runtime and edge computing, but a module for executing an edge computing service for data transmitted from the leaf device 620 (eg, the device of FIG. 2A )
  • the module 219 and the service module 218) may not yet be installed.
  • the IoT management server 640 may store device information received from at least one leaf device 620 and/or an edge device 610 in a memory (eg, a database).
  • a memory eg, a database
  • operations 1 to 2 may be referred to as a registration process with the IoT server device.
  • the user selects the edge mode execution of the edge device 610 on the application of the user device (eg, the user device 230 of FIG. 2A , the user device 301 of FIG. 3 ).
  • the application of the user device may transmit information on the selected edge device 610 and/or leaf device 620 to the IoT management server 640.
  • the IoT management server 640 eg, the provision manager 242 of FIG. 2A
  • the edge device 610 may receive the connection string, execute the edge runtime with this value, and activate the edge mode.
  • the edge device 610 may be connected to the IoT hub server 650 by executing the edge runtime.
  • the connection string may be data that can identify the IoT hub server 650 as an ID (identification) for interworking with the IoT hub server 650.
  • operations 2′ to operations 2′ to 4 can be referred to as the installation process of Edge Runtime.
  • the edge device 610 and the leaf device 620 may discover whether a device capable of edge computing exists on the home network, respectively.
  • the edge device 610 may check the leaf devices 620 connected to the same access point (AP).
  • the edge device 610 and the leaf device 420 may discover whether a device capable of edge computing exists in a device to device (D2D) method, not an IP-based AP device.
  • the edge device 610 and the leaf device 420 may perform a discovery process (eg, operations 5 and 5 ′) through a communication connection such as BLE or WiFi Direct.
  • the edge device 610 and/or the leaf device 620 may transmit information on devices connectable on the home network to the IoT management server 640 .
  • the IoT management server 640 searches for a leaf device 620 connectable to the edge device 610 based on account and/or location information in device information of registered devices, and searches for the edge device 610 ) and/or to the leaf device 620 .
  • the edge device Available services may be checked through 610 and the leaf device 620 .
  • the leaf device 620 is an IP camera, it can be confirmed that an AI vision service including image analysis is possible.
  • the IoT management server 640 may identify at least one module required by the edge device 610 for the checked edge computing service.
  • the module necessary for the edge computing service includes a device module that receives data transmitted from the leaf device 620 and supports to transmit it to the cloud network, and programs for performing the edge computing service based on the received data. service module to be included.
  • the IoT management server 640 performs image analysis in the AV module and AI vision service required for the edge device 610 to transmit the video streaming transmitted from the leaf device 620, which is an IP camera, to the cloud network. You can check the AI vision module.
  • the IoT management server 640 may store information of modules necessary for each edge computing service in a database as described above. According to various embodiments, operations 5 and 5 ′ may be referred to as a discovery process.
  • the edge runtime installation process in operations 2′ to 4 may be executed after the discovery process in operations 5 and 5′.
  • the edge device 610 and the leaf device 620 may be connected to each other through an authentication process.
  • the connection between the two devices to the IoT management server 640 eg, the edge-leaf manager of FIG. 2A .
  • the IoT management server 640 (eg, the module manager of FIG. 2A ) transmits information of a module required for an edge computing service (eg, AI vision service) to the IoT hub server 650 and / or may be transmitted to the edge device 610 .
  • the edge device 610 may receive the necessary module information, download the corresponding module from the IoT hub server 650 (eg, the module registry 254 in FIG. 2A ) at the edge runtime, and install it on the edge device 610 . have.
  • the edge device 610 when an installed module (eg, a device module, a service module) is updated, the edge device 610 installs a new module in the IoT hub server 650 (eg, the module registry 254 of FIG. 2A ). It can be downloaded and updated.
  • the existing edge device 610 performs an image classification function through data received through the leaf device 620 (eg, an IP camera), based on the update operation, the new edge device ( 610) may perform an image analysis function related to image classification and an additional function (eg, face recognition).
  • a device module corresponding to the leaf device 620 may always be executed in order to receive data from the leaf device 620 .
  • the device module may receive data from the leaf device 620 through the first protocol and transmit data to the IoT server through the second protocol.
  • the leaf device 620 transmits data (eg, video streaming) acquired to a cloud network (eg, IoT management server 640 ) before being connected to the edge device 610 , and is connected to the edge device 610 . may transmit data and events to the edge device 610 .
  • the edge device 610 may transmit at least a portion of data and events received from the leaf device 620 to a cloud network (eg, the IoT management server 640 ).
  • the edge device 610 and/or the leaf device 620 disappears from the home network (eg, disconnection from the AP)
  • the connection between the two devices may be disconnected.
  • the disconnection of the two devices may be updated in the IoT management server 640 (eg, the edge-leaf manager 246 of FIG. 2A ).
  • the leaf device 620 may access the cloud network again and continue to provide the service.
  • FIG. 7 is a flowchart of an edge computing service method according to various embodiments.
  • the edge computing system may include a user device 730 , a leaf device 720 , an edge device 710 , and an IoT server 740 .
  • the IoT server 740 may include a plurality of server devices (eg, the IoT management server 240 and the IoT hub server 250 of FIG. 2A ) existing on the cloud network, and each operation is performed by several server devices. can be distributed by
  • the user device 730 may check device information of the leaf device 720 and register the device information of the leaf device 720 to the IoT server 740 .
  • the user device 730 may check device information of the leaf device 720 through a discovery process on the home network, and the device information of the leaf device 720 includes identification information (device ID, manufacturer, model name) of the leaf device 720 . , capability and device type), location information (eg, room, living room), and network information (eg, IP address) may be included.
  • identification information device ID, manufacturer, model name
  • location information eg, room, living room
  • network information eg, IP address
  • registration may be requested to the IoT server 740 as the leaf device 720 .
  • location information (eg, a room, living room, etc.) of the leaf device 720 may be registered on the application of the user device 730 and transmitted to the IoT server 740 .
  • the user device 730 may check device information of the edge device 710 and register device information of the edge device 710 in the IoT server 740 .
  • the user device 730 may check device information of the edge device 710 through a discovery process on the home network, and the device information of the edge device 710 includes identification information (device ID, manufacturer, model name) of the edge device 710 . , capability and device type), location information (eg, room, living room), and network information (eg, IP address) may be included.
  • identification information device ID, manufacturer, model name
  • location information eg, room, living room
  • network information eg, IP address
  • location information eg, a room, living room, etc.
  • location information eg, a room, living room, etc.
  • the edge mode of the edge device 710 may not be activated.
  • the device information received from the at least one leaf device 720 and the edge device 710 may be stored in a database, and the registered account and location information of each device and the leaf device 720 or edge device ( 710) may be stored.
  • the edge device 710 may execute an edge runtime and activate an edge mode.
  • the edge device 710 may receive a connection string from the IoT server 740 and execute an edge runtime with this value.
  • the IoT server 740 may search for at least one leaf device 720 connectable to the edge device 710 from among several previously registered leaf devices 720 .
  • the IoT server 740 checks a user account, device information and location information of the selected edge device 710, and a local network, , it is possible to search for leaf devices 720 connectable to the edge device 710 on the database based on the corresponding information.
  • the IoT server 740 may provide a list of leaf devices 720 connectable to the edge device 710 to the user device 730 .
  • the user device 730 provides the received list through the application, selects the leaf device 720 to be connected to the edge device 710 from the list according to the user input, and the IoT server ( 740).
  • the user device 730 may provide a user interface (eg, FIGS. 9A to 9C ) related to the operation of selecting a leaf device.
  • the user device 730 may provide a user interface (eg, FIGS. 10A to 10C ) related to an operation of selecting an edge device based on a user input obtained from the user device 730 . .
  • the IoT server 740 may transmit a connection test command to the edge device 710 and the leaf device 720 .
  • the IoT server 740 may transmit identification information and/or network information of the counterpart device to request to confirm whether a connection with the counterpart device is possible.
  • the edge device 710 and the leaf device 720 may attempt to interconnect on a home network, and may transmit a test result to the IoT server 740 .
  • the IoT server 740 may transmit a connection test result between the edge device 710 and the leaf device 720 to the user device 730 , and the user device 730 may provide a user interface related to the connection test result.
  • the user interface 730 may provide an edge device 710 and a leaf device 720 a connection attempt process such as a connection request on a home network, connection failure, and formation of a connectivity channel, and/or mutually transmit/receive messages through a connection channel, and may provide information related to authentication success or failure when the authentication process of whether the device is a trusted device is completed.
  • a connection attempt process such as a connection request on a home network, connection failure, and formation of a connectivity channel, and/or mutually transmit/receive messages through a connection channel, and may provide information related to authentication success or failure when the authentication process of whether the device is a trusted device is completed.
  • the IoT server 740 may identify at least one module required for the edge computing service.
  • the IoT server 740 includes device information of the edge device 710 (eg, device ID, manufacturer, model name, capability, and device type of the edge device 710 ) and the device of the leaf device 720 .
  • An edge computing service that can be performed may be checked based on information (eg, device ID, manufacturer, model name, capability, and device type of the leaf device 720 ).
  • the IoT server 740 may match device information of various devices and services that can be performed and store them in a database.
  • the IoT server 740 may store modules necessary for each service and modules necessary for transmitting and/or processing data of a specific device.
  • the at least one module required for the edge computing service may include a device module that receives data transmitted from the leaf device 720 and supports transmission to the cloud network, and an edge computing service based on the received data. It may include a service module including programs for performing For example, the device module includes programs that support converting data received according to a first protocol from the leaf device 720 according to a second protocol (eg, message queue telemetry transport (MQTT)) and transmitting it to an external server. can do.
  • the service module may include programs that process and/or analyze the received data.
  • the IoT server 740 receives the video streaming transmitted from the leaf device 720 and analyzes the video from the AV module and AI vision service required to transmit it to the cloud network. You can check the AI vision module that performs Alternatively, the IoT server 740 receives the sound data transmitted from the leaf device 720 and transmits the sound data to the cloud network when the leaf device 720 is an AI speaker, and a sound module and AI that analyzes the received sound data You can check the sound analysis module.
  • the IoT server 740 may transmit the identified module (eg, an AV module or an AI vision module) to the edge device 710 .
  • the identified module eg, an AV module or an AI vision module
  • the edge device 710 may install and execute the received modules.
  • the edge device 710 and the leaf device 720 may establish a connection through mutual authentication.
  • the leaf device 720 may transmit data (eg, image streaming) acquired using a sensor to the edge device 710 using an established connection.
  • data eg, image streaming
  • the edge device 710 may analyze data received from the leaf device 720 .
  • the edge device 710 can provide various image analysis-based services such as face recognition, user recognition and tracking by analyzing a received image using an AI vision module. have.
  • the edge device 710 may analyze sound data using an AI sound analysis module to perform services such as pet monitoring, window breakage detection, and alarm sound detection.
  • the edge device 710 may transmit data received from the leaf device 720 and data analyzed by the edge device 710 to the IoT server 740 in real time.
  • the IoT server 740 may transmit sensor data and analysis data received from the edge device 710 to the user device 730 .
  • the user device 730 may provide the received data (eg, video streaming, alarm) to the user through the application.
  • 8A and 8B are flowcharts of an edge computing service method according to various embodiments.
  • FIG. 8A shows a leaf device 820 (eg, leaf device 220 of FIG. 2A , leaf device 500 of FIG. 5 ) and an edge device 810 (eg, edge device 210 of FIG. 2A , FIG. 4 ).
  • the operation of the leaf device 820 connected to the cloud network is shown before the edge device 400 is connected.
  • a TV located in the home network may operate as an edge device 810 , and an IP camera may be newly installed as the leaf device 820 .
  • the edge device 810 may be in a pre-registered state by transmitting device information to the IoT server 840 (eg, the IoT management server 240 of FIG. 2A ).
  • a user may newly purchase the leaf device 820 and install it indoors to be connected to the home network through the AP.
  • the leaf device 820 may be registered by transmitting device information of the leaf device 820 to the IoT server 840 .
  • the leaf device 820 in a state before the leaf device 820 is registered and connected to the edge device 810, the leaf device 820 includes data acquired through a sensor (eg, the sensor 540 in FIG. 5) ( Example: video streaming) may be transmitted to the IoT server 840 .
  • a sensor eg, the sensor 540 in FIG. 5
  • Example: video streaming may be transmitted to the IoT server 840 .
  • the leaf device 820 may form a first channel 851 and a second channel 852 with the IoT server 840 , and the leaf device 820 and the IoT server 840 are the first Transmits and receives control information and/or event information through the first channel 851, and the video streaming obtained from the leaf device 820 through the second channel 852 is transmitted to the IoT server 840 (or cloud network) can
  • the IoT server 840 may transmit the acquired video streaming to the user device 830 .
  • the edge device 810 is not connected to the leaf device 820 , and the edge device 810 and the IoT server 840 may form a channel for transmitting and receiving control information and/or event information. .
  • the leaf device 820 and the edge device 810 may broadcast a signal for notifying that they are devices capable of edge computing on a local network.
  • the leaf device 820 checks the TV that is the edge device 810
  • the leaf device 820 is the IoT server 840 of the edge device 810 (eg, the edge-leaf manager 246 of FIG. 2A , FIG. 2b (edge-leaf manager 265))) to request confirmation of which services can be provided.
  • IoT server 840 eg, edge-leaf manager 246 and module manager 244 of FIG.
  • the edge device 810 and the leaf A service usable between the devices 820 and at least one module required for the edge device 810 to perform the corresponding service may be identified.
  • the IoT server 840 may provide a module necessary for performing the checked service to the edge device 810 .
  • the IoT server 840 routes the video streaming of the leaf device 820 to the IoT server 840 (or cloud network), and an AV in charge of communication between the edge device 810 and the IoT server 840 .
  • An audio/video module and an AI vision module for performing image analysis may be provided to the edge device 810 .
  • FIG 8B illustrates an operation after the leaf device 820 and the edge device 810 are connected.
  • the edge device 810 and the leaf device 820 may establish a connection on a home network, and the edge device 810 may execute an installed module.
  • the leaf device 820 may transmit video streaming to the edge device 810 through the established connection, and the edge device 810 may transmit the received video streaming to the IoT server 840 .
  • the edge device 810 receives video streaming and control information and/or event information received from the leaf device 820 through the AV module, and the AI vision module analyzes the received image to perform functions such as face recognition, user recognition and tracking.
  • Various image analysis-based services can be provided.
  • the video streaming and analyzed data may be transmitted in real time to the user device 830 through the IoT server 840 .
  • the edge device 810 may form a direct connection with the user device 830 to directly transmit data to the user device 830 without going through the IoT server 840 .
  • the edge device 810 analyzes the video streaming received from the leaf device 820 (eg, image information-based user recognition, marking, behavior tracking, etc.) and transmits the generated data and video streaming data to the user device ( 830) and can be transmitted directly through the established connection.
  • the edge device 810 and the leaf device 820 form a third channel 861 for transmitting and receiving control information and/or event information, and a fourth channel 862 for transmitting and receiving video streaming. ) can be formed.
  • a third channel 861 for transmitting and receiving control information and/or event information
  • a fourth channel 862 for transmitting and receiving video streaming.
  • FIG. 8B while video streaming is transmitted to the edge device 810 through edge computing, the second channel 852 for transmitting and receiving video streaming between the leaf device 820 and the IoT server 840 will not be used.
  • the new leaf device 820 (eg, AI speaker) in a state in which the leaf device 820 (eg, IP camera) and the edge device 810 (eg, TV) are connected to perform edge computing service ) can be connected.
  • the leaf device 820 eg, IP camera
  • the edge device 810 eg, TV
  • AI speakers can broadcast on the local network, enabling them to do edge computing.
  • the AI speaker finds a TV that is an edge device, it can connect to the IoT server 840 (eg, edge-leaf manager, module manager of FIG. 2A ) to check which services are available.
  • the AI speaker makes a connection request to the TV, and the TV can be connected to the AI speaker through an authentication process.
  • the TV may install a module related to a service to be provided to the AI speaker from the IoT server 840 .
  • the TV installs the sound module for receiving the sound data input from the microphone of the AI speaker and the AI sound analysis module for analyzing the received sound data to the IoT server 840 (eg, the module registry 254 in FIG. 2A ). ))) and can be downloaded and installed.
  • the TV can perform edge computing services by executing the installed module.
  • the AI speaker may detect ambient sounds and transmit sound data to the sound module of the TV, the AI sound analysis module may analyze the received sound data, and transmit the result to the IoT server 840 through the sound module. According to the analysis of such sound data, services such as pet monitoring, window breakage detection, and alarm sound detection can be performed.
  • the edge device may provide various edge computing services according to data transmitted from the leaf device, and the IoT server may store modules necessary for each edge computing service.
  • edge computing services available for leaf devices and device modules and service modules required accordingly are as follows.
  • Device Edge Computing Services device service module Camera Face Recognition, Object Detection MQTT Broker av stream gateway Face AI, Vision AI (Doorbell Service, Delivery notification) AI Speaker Speaker Recognition MQTT Broker av stream gateway Speaker AI (Personalized Service) TV Contents Recognition MQTT Broker av stream gateway Contents AI (AD Service (Advertising), Shopping Service) Robot Vacuum Cleaner Pet Recognition, Bark detection MQTT Broker av stream gateway Pet AI (Pet Service) Camera Daily Summary MQTT Broker av stream gateway Face AI, Pet AI (Daily Summary Video Clip)
  • the MQTT broker may be a module that provides a channel for exchanging commands and/or events between the leaf device and the edge device.
  • the message queuing telemetry transport (MQTT) protocol includes a broker, a publisher, and a subscriber, and when an MQTT broker is installed in the edge device 810, the MQTT broker of the edge device relays a topic published by the publisher to the subscriber. function can be performed.
  • the AV stream gateway may perform a function of relaying audio and/or video streaming transmitted from the leaf device to an artificial intelligence (AI) module.
  • AI artificial intelligence
  • 9A to 9C and 10A to 10C illustrate application screens of a user device according to various embodiments of the present disclosure.
  • 9A to 9C show a user interface of an application for selecting a leaf device (eg, the leaf device 220 of FIG. 2A , and the leaf device 500 of FIG. 5 ) to be connected to the edge device in the user device 900 .
  • a leaf device eg, the leaf device 220 of FIG. 2A , and the leaf device 500 of FIG. 5
  • the user device 900 may provide a user interface (UI) for initiating a search for a leaf device to be connected with the edge device upon initial registration or reconfiguration of a specific edge device.
  • UI user interface
  • the user device 900 uses a communication module (eg, the communication module 390 of FIG. 3 ) on the home network (eg, the same At least one leaf device (connected to the AP) may be searched for.
  • the user device 900 may display lists 921 and 922 of at least one leaf device identified on the home network.
  • the user device 900 may display the leaf devices by classifying them according to the location (eg, living room, kitchen) of the leaf devices.
  • the UI of the user device 900 is not limited to the illustrated example, and the leaf devices are displayed by classifying them for each type of leaf device (eg, camera, speaker, light bulb), or a plurality of criteria (eg: The leaf devices can be displayed based on the type, network registration date, and distance from the user device).
  • the user device 900 may receive a selection of a leaf device to be connected to the edge device from among the displayed at least one leaf device.
  • the user device 900 may transmit device information of the selected leaf device to the IoT server through the communication module.
  • the IoT server may transmit a connection test command to the corresponding edge device and the leaf device.
  • the edge device and/or the leaf device may transmit a connection test result to the IoT server, and the IoT server may transmit a connection test result to the user device 900 .
  • the user device 900 may display a UI (eg, connectable 931 and non-connectable 932 ) indicating whether the selected edge device and leaf device are connectable.
  • a UI eg, connectable 931 and non-connectable 932
  • the edge device when an edge device and a leaf device are connected to each other, data acquired from the leaf device (eg, video streaming) is transmitted to the edge device, and the edge device can transmit the data received from the leaf device to the IoT server. .
  • the user device 900 may receive data of the leaf device from the IoT server and display it on the application.
  • the edge device may encrypt data (eg, an image) received from the leaf device and transmit it to the IoT server, and the user device 900 may use a designated key (eg, password or authentication key) based on the , it is possible to receive the decrypted data of the leaf device.
  • a designated key eg, password or authentication key
  • the edge device when data between the leaf device and the edge device is transmitted to the IoT server, it may be processed and delivered in a different form.
  • the edge device may acquire image data from the leaf device, and may perform a user recognition function based on the acquired image data.
  • the edge device may transmit alarm information related to the recognized user (eg, processed leaf device data) to the IoT server and/or the user device 900 based on user recognition, and the user device ( 900) may obtain the alarm information from the IoT server.
  • data obtained from a sensor of a leaf device may be stored on a home network in which the leaf device and the edge device exist, and the IoT server and/or the user device 900 may receive data from the edge device 900 in another form ( For example, information processed as alarm information) can be received.
  • FIGS. 9A to 9C are diagrams illustrating a user interface of an application for selecting an edge device to be connected to a leaf device in a user device.
  • the user interface of the application for selecting the edge device may be configured to be at least partially similar to the user interface of the application for selecting the leaf device (eg, FIGS. 9A to 9C ).
  • the user device 1000 may provide a UI for initiating a search for an edge device to be connected to a leaf device upon initial registration or reconfiguration of a specific leaf device.
  • the user device 1000 uses a communication module (eg, the communication module 420 of FIG. 4 ) on the home network (eg, the same At least one edge device (connected to the AP) may be searched for. For example, it is possible to search for a device in which an edge runtime is installed among various electronic devices in the home network.
  • the user device 1000 may display lists 1021 and 1022 of at least one edge device identified on the home network. According to various embodiments, the user device 1000 may display the edge devices by classifying them by location (eg, living room, kitchen) of the edge device. The user may select any one edge device connected to the leaf device from the displayed list.
  • location eg, living room, kitchen
  • the IoT server may store the user account and/or location information of the edge device and the leaf device in a database, and the user device 1000 has the same user account as the corresponding edge device or the leaf device when searching for a peripheral device. and/or a list of leaf devices or edge devices registered as locations may be displayed.
  • the user device 1000 may display a UI (eg, connectable 1031 and unconnectable 1032 ) indicating whether the selected edge device and leaf device are connectable.
  • a UI eg, connectable 1031 and unconnectable 1032
  • the edge device when an edge device and a leaf device are connected to each other, data acquired from the leaf device (eg, video streaming) is transmitted to the edge device, and the edge device can transmit the data received from the leaf device to the IoT server. .
  • the user device 1000 may receive data of the leaf device from the IoT server and display it on the application.
  • the IoT server is not a list 921 , 922 of at least one leaf device of FIG. 9B and/or a list of at least one edge device 1021 , 1022 of FIG. 10B , but a designated leaf device and/or Alternatively, an edge device may be provided.
  • the IoT server may determine an optimal leaf device from the database of the IoT server, and may provide the determined leaf device to the user device 900 .
  • the IoT server may determine an optimal edge device from a database of the IoT server, and may provide the determined edge device to the user device 1000 .
  • the operation of determining the optimal leaf device and/or edge device may include numerical information (eg, ranking) about hardware conditions (eg, CPU, GPU, memory) of the leaf device and/or edge device; Or it may be performed based on at least one of the network registration date.
  • numerical information eg, ranking
  • hardware conditions eg, CPU, GPU, memory
  • FIG. 11 is a flowchart of an edge computing service method of an edge device according to various embodiments of the present disclosure
  • the illustrated method is performed by the aforementioned edge device (eg, the edge device 210 of FIG. 2A , the edge device 400 of FIG. 4 , the edge device 610 of FIG. 6 , and the edge device 710 of FIG. 7 ).
  • the aforementioned edge device eg, the edge device 210 of FIG. 2A , the edge device 400 of FIG. 4 , the edge device 610 of FIG. 6 , and the edge device 710 of FIG. 7 .
  • the edge device may receive a connection test command with the leaf device from an external server (eg, the IoT management server 240 of FIG. 2A ).
  • the connection test command may include identification information and/or network information of the leaf device.
  • the external server may search for at least one leaf device connectable to the edge device from among several pre-registered leaf devices, and transmit a connection test command with the leaf device selected by the user device to the edge device.
  • the edge device in response to receiving the connection test command, may check whether a connection with the leaf device is possible using the communication module, and may transmit the check result to the external server.
  • the edge device may receive at least one module for performing an edge computing service from an external server, store it in a memory, and install it.
  • the external server provides device information of the edge device, such as identification information (device ID, manufacturer, model name, capability, and device type), location information (eg room, living room), and network information (eg IP address). It is possible to check the edge computing service that can be performed based on the device information of the and leaf device, and provide a module necessary to perform the service to the edge device.
  • the external server may provide an AV module and an AI vision module that performs video analysis in the AI vision service required to receive and transmit video streaming from the leaf device to the cloud network.
  • the external server may provide a sound module necessary for receiving and transmitting sound data transmitted from the leaf device to the cloud network and an AI sound analysis module for analyzing the received sound data.
  • the edge device may execute at least one installed module, and may perform an edge computing service based on data received from the leaf device.
  • the edge device may analyze a received image using an AI vision module to provide various image analysis-based services such as face recognition, user recognition, and tracking.
  • the edge device may analyze sound data using the AI sound analysis module to perform services such as pet monitoring, window breakage detection, and alarm sound detection.
  • the processor may transmit sensor data received from the leaf device and analysis data generated by the service module to the cloud network in real time using the communication module.
  • FIG. 12 is a flowchart of a method for supporting edge computing of an IoT server according to various embodiments of the present disclosure
  • the illustrated method may be performed in the aforementioned IoT server (eg, the IoT server 740 of FIG. 7 ), and descriptions of the aforementioned technical features will be omitted below.
  • the illustrated method may be performed by one IoT server, and some of the operations illustrated by a plurality of server devices (eg, the IoT management server 240 and the IoT hub server 250 of FIG. 2A ) are distributed processing it might be
  • the IoT server may receive a selection of an edge device and a leaf device from the user device.
  • the user device may select the edge device and leaf device to be connected for the edge computing service on the user interface of the application and transmit it to the IoT server.
  • the IoT server may transmit a test command for checking whether the edge device and the leaf device are connectable.
  • the edge device and/or the leaf device may notify the IoT server of the result after attempting a wireless connection with the counterpart device.
  • the IoT server may determine at least one module required to perform the edge computing service based on device information of the edge device and the leaf device. For example, if the leaf device is an IP camera, the IoT server may provide an AV module and AI vision module that performs video analysis in the AI vision service required to receive and transmit video streaming from the leaf device to the cloud network. can Alternatively, when the leaf device is an AI speaker, the IoT server may provide a sound module necessary for receiving and transmitting sound data transmitted from the leaf device to the cloud network and an AI sound analysis module for analyzing the received sound data.
  • the IoT server may transmit at least one module stored in the IoT server to the edge device.
  • the IoT hub server may be requested to transmit at least one module to the edge device.
  • FIG 13 illustrates an AI computing distributed processing platform according to various embodiments.
  • the AI computing distributed processing platform 1300 includes a leaf device 1320 , an edge device 1310 , and a cloud network 1340 (eg, the IoT management server 240 of FIG. 2A , the IoT hub server 250 ). ), the IoT server 260 of FIG. 2B ).
  • the edge device 1310 is a TV (eg, TV 112 of FIG. 1 ), or a tablet PC (eg, tablet PC 111 of FIG. 1 ), as well as fixed 4G and 5G communication. It may include consumer premises equipment (CPE) in the form of fixed wireless access (FWA).
  • CPE consumer premises equipment
  • FWA fixed wireless access
  • the AI computing distributed processing platform 1300 may perform distributed processing of AI computing processing related to data obtained from the leaf device 1320 based on the sensitivity of the data and/or the computing resources of each device. .
  • the leaf device may perform on-device AI computing processing using hardware and/or software resources of the leaf device.
  • the leaf device 1320 is connected to the edge device 1310 and the edge device 1310 can execute a module for AI computing processing, data with high sensitivity among data generated by the leaf device 1320 is the edge device ( 1310), and low-sensitivity data (eg, general data) is transmitted to the cloud network 1340 through the edge device 1310 to perform AI computing (cloud AI computing) on the cloud.
  • AI computing cloud AI computing
  • the leaf device 1320 includes hardware capable of AI computing processing
  • a portion of the AI computing on the leaf device 1320 may be distributed as on-device AI computing.
  • FIG. 14 is a flowchart of an AI computing distributed processing method according to various embodiments.
  • the illustrated method may be performed by the leaf device, the edge device, and the cloud network of FIG. 13 (eg, the IoT management server of FIG. 2A , the IoT hub server, and the IoT server of FIG. 2B ).
  • the cloud network of FIG. 13 eg, the IoT management server of FIG. 2A , the IoT hub server, and the IoT server of FIG. 2B .
  • the edge device as a TV may execute edge runtime in addition to the intrinsic function of image output.
  • the edge device may be registered in the IoT server by transmitting device information.
  • a leaf device may include an AI speaker or an AI camera.
  • the IoT server may identify a module required for AI operation on data generated by the leaf device.
  • AI operation may include an AI vision service that analyzes image data acquired from a leaf device (eg, an IP camera) and an AI sound service that analyzes sound data acquired from a leaf device (eg, an AI speaker). have.
  • the IoT server may check whether AI operation can be performed by the leaf device. For example, the IoT server can check whether the leaf device satisfies the hardware conditions (eg CPU, GPU, memory) required by modules (eg, AI vision module, AI sound module) required for AI operation.
  • the hardware conditions eg CPU, GPU, memory
  • modules eg, AI vision module, AI sound module
  • the IoT server may transmit a module necessary for the AI operation to the leaf device, and store and install the corresponding module in the leaf device.
  • the leaf device may perform on-device AI computing processing using the installed module.
  • the leaf device may transmit the AI computing processing result to the IoT server, and AI computing may not be performed on the edge device.
  • the edge device and the leaf device may establish an interconnection in order to distributedly process the AI operation in the edge device.
  • an edge device and a leaf device may broadcast that they are devices capable of edge computing, respectively, on the same local network.
  • a leaf device finds an edge device, it connects to the IoT server, checks what services are available, and requests a connection.
  • the edge device receiving the connection request may be connected to the leaf device through an authentication process.
  • the edge device may check whether computing resources are sufficient to perform the AI operation requested from at least one connected leaf device. For example, if only one leaf device is connected to the edge device, it may be determined that the computing resource is sufficient, and when the number of connected leaf devices is greater than or equal to a predetermined number, it may be determined that the computing resource is insufficient.
  • a first service module for performing an AI operation may be installed in the edge device, and a second service module may be installed in the leaf device.
  • the first service module and the second service module are part of modules for performing AI sound service
  • the second service module may be a voice signal preprocessing module
  • the first service module may be other voice recognition modules.
  • the first service module and the second service module may be changed according to hardware characteristics (eg, CPU, memory, etc.) of the leaf device.
  • the second service module may include a voice signal preprocessing module
  • the first service module may include other voice recognition modules.
  • the leaf device may include a speech recognition module including a speech signal preprocessing module.
  • the edge device and the leaf device may distribute edge AI computing using installed modules.
  • the priority of leaf devices connected to the edge device may be determined.
  • Edge devices have higher computing resources compared to leaf devices, but may have limited computing resources compared to cloud devices. Accordingly, when the number of leaf devices connected to the edge device is large, AI distributed processing by the edge device may be difficult.
  • the edge device may determine a priority among leaf devices according to the sensitivity (eg, privacy) of data transmitted from each leaf device.
  • the sensitivity of the AI vision service may be higher than the sensitivity of the AI voice recognition service.
  • the sensitivity of the AI camera for photographing indoors may be higher than the sensitivity of the AI camera for photographing outdoors.
  • Such sensitivity and/or priority may be determined according to a user's selection.
  • the settings related to the sensitivity of the service eg, AI vision service, AI voice recognition
  • the sensitivity of the camera, and/or whether personal information is not limited to the described example are not limited to the described example, and may be based on user selection or specified policy information. Based on it, it may be determined (or changed).
  • the designated policy information may include policy information previously stored in the leaf device 1320 , the edge device 1310 , and/or the cloud network 1340 .
  • the edge device may receive and install a service module related to a leaf device having a high priority from the IoT server.
  • a leaf device with a low priority can be connected to a new edge device to perform AI distributed processing or perform AI computation through cloud computing.
  • An electronic device includes a communication module, a memory, and a processor operatively connected to the communication module and the memory, wherein the processor is located in a network from an external server using the communication module to receive a connection test command with a leaf device, and in response to the reception of the connection test command, check whether a connection with the leaf device is possible using the communication module, and transmit the verification result to an external server;
  • the processor is located in a network from an external server using the communication module to receive a connection test command with a leaf device, and in response to the reception of the connection test command, check whether a connection with the leaf device is possible using the communication module, and transmit the verification result to an external server;
  • receiving at least one module for performing an edge computing service from an external server receiving at least one module for performing an edge computing service from an external server, storing and installing it in the memory, and executing the installed at least one module, received from the leaf device It may be configured to perform edge computing services based on data.
  • the processor may be configured to request registration of the electronic device by transmitting device information including at least one of identification information, location information, and network information of the electronic device to an external server.
  • the processor identifies at least one external device located in the same network as the electronic device using the communication module, and transmits identification information of at least one external device identified using the communication module to the external device. and transmit to a server, and receive a connection test command with the leaf device selected by the external server or the user device among the at least one external device.
  • the at least one module may include a device module configured to receive data transmitted from the leaf device and transmit the received data to an external server.
  • the processor may be configured to transmit data received from the leaf device according to a first protocol to the external server according to a second protocol using the device module.
  • the at least one module may include a service module configured to perform the edge computing service based on the received data.
  • the at least one module analyzes image data received from the leaf device to perform a service including at least one of object recognition and object tracking.
  • Service modules may be included.
  • connection test command may be received from an IoT management server, and the at least one module may be received from an IoT hub server.
  • the edge computing service support method of the IoT server includes at least one of the edge device and the leaf device by issuing a test command for checking whether the edge device and the leaf device selected by the user device are connectable. An operation of transmitting to one, when it is confirmed that the edge device and the leaf device are connectable, an operation of determining at least one module necessary to perform an edge computing service based on device information of the edge device and the leaf device , and transmitting the at least one module stored in the IoT server to the edge device, or requesting an IoT hub server to transmit the at least one module to the edge device.
  • receiving device information of the edge device from the user device or the edge device, registering the edge device, and receiving device information of the leaf device from the user device or the leaf device may further include the operation of registering the leaf device.
  • the device information of the edge device may include at least a part of identification information, location information, and network information of the edge device.
  • the determining of at least one module required to perform the edge computing service may include identifying an edge computing service that can be performed in response to device information of the edge device and device information of the leaf device. , determining at least one module required to perform the edge computing service on the database.
  • the at least one module may include a device module configured to allow the edge device to receive data transmitted from the leaf device, and transmit the received data to an external server, and the edge device to be the leaf device It may include a service module for performing the service by analyzing data transmitted from the .
  • the service module analyzes image data received from the leaf device to perform a service including at least one of object recognition and object tracking.
  • a service including at least one of object recognition and object tracking.
  • control information is transmitted and received through a first channel connected to the leaf device, and in the leaf device through a second channel connected to the leaf device
  • the method may include receiving the acquired data, and receiving the data acquired from the leaf device from the edge device while maintaining the first channel while the edge device and the leaf device are connected.
  • edge computing method of an electronic device in response to receiving a connection test command with a leaf device located in a network from an external server, and receiving the connection test command, using the communication module Checking whether the leaf device is connectable and transmitting the check result to an external server. If the leaf device is connectable, at least one module for performing edge computing service is received from the external server and stored in memory and installed and executing the at least one installed module, and performing an edge computing service based on data received from the leaf device.
  • the method may further include requesting registration of the electronic device by transmitting device information including at least one of identification information, location information, and network information of the electronic device to an external server.
  • the at least one module may include a device module configured to receive data transmitted from the leaf device and transmit the received data to an external server.
  • the operation of performing the edge computing service includes using the device module to transmit data received from the leaf device according to a first protocol to the external server according to a second protocol. can do.
  • the at least one module may include a service module configured to perform the edge computing service based on the received data.
  • the electronic device (eg, the user device, leaf device, and edge device of FIG. 2A ) according to various embodiments disclosed in this document may have various types of devices.
  • the electronic device may include, for example, a portable communication device (eg, a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance device.
  • a portable communication device eg, a smart phone
  • a computer device eg, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance device.
  • the electronic device according to the embodiment of the present document is not limited to the above-described devices.
  • first, second, or first or second may be used simply to distinguish the element from other elements in question, and may refer to elements in other aspects (e.g., importance or order) is not limited. It is said that one (eg, first) component is “coupled” or “connected” to another (eg, second) component, with or without the terms “functionally” or “communicatively”. When referenced, it means that one component can be connected to the other component directly (eg by wire), wirelessly, or through a third component.
  • module used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and is interchangeable with terms such as, for example, logic, logic block, component, or circuit.
  • a module may be an integrally formed part or a minimum unit or a part of the part that performs one or more functions.
  • the module may be implemented in the form of an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • Various embodiments of the present document include one or more instructions stored in a storage medium (eg, internal memory 336 or external memory 338) readable by a machine (eg, electronic device 301). may be implemented as software (eg, the program 340) including
  • a processor eg, processor 320
  • a device eg, electronic device 301
  • the one or more instructions may include code generated by a compiler or code executable by an interpreter.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-transitory' only means that the storage medium is a tangible device and does not contain a signal (eg, electromagnetic wave), and this term refers to the case where data is semi-permanently stored in the storage medium and It does not distinguish between temporary storage cases.
  • a signal eg, electromagnetic wave
  • the method according to various embodiments disclosed in this document may be provided as included in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product is distributed in the form of a machine-readable storage medium (eg compact disc read only memory (CD-ROM)), or via an application store (eg Play StoreTM) or on two user devices ( It can be distributed online (eg download or upload), directly between smartphones (eg smartphones).
  • a part of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server.
  • each component (eg, module or program) of the above-described components may include a singular or a plurality of entities, and some of the plurality of entities may be separately disposed in other components. have.
  • one or more components or operations among the above-described corresponding components may be omitted, or one or more other components or operations may be added.
  • a plurality of components eg, a module or a program
  • the integrated component may perform one or more functions of each component of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. .
  • operations performed by a module, program, or other component are executed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations are executed in a different order, or omitted. or one or more other operations may be added.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Environmental & Geological Engineering (AREA)
  • Architecture (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Civil Engineering (AREA)
  • Structural Engineering (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

다양한 실시예에 따른 전자 장치는 통신 모듈, 메모리, 및 상기 통신 모듈 및 상기 메모리와 작동적으로(operatively) 연결되는 프로세서를 포함하고, 상기 프로세서는, 상기 통신 모듈을 이용해, 외부 서버로부터 네트워크 내에 위치하는 리프 장치(leaf device)와의 연결 테스트 명령을 수신하고, 상기 연결 테스트 명령의 수신에 대응하여, 상기 통신 모듈을 이용해 상기 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송하고, 상기 리프 장치와 연결 가능한 경우, 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 상기 메모리에 저장 및 설치하고, 및 상기 설치된 적어도 하나의 모듈을 실행하고, 상기 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행하도록 설정될 수 있다. 그 외에 다양한 실시예가 가능하다.

Description

엣지 컴퓨팅 시스템 및 방법
본 문서는 엣지 컴퓨팅 시스템에 대한 것이며, 보다 상세하게는 리프 장치, 엣지 장치, 및 클라우드 서버를 포함하는 엣지 컴퓨팅 시스템 및 엣지 컴퓨팅 서비스를 수행하기 위한 방법에 대한 것이다.
클라우드 컴퓨팅(cloud computing) 기술은 사용자와 다른 위치에 존재하는 컴퓨팅 자원을 네트워크를 통해 사용자에게 제공하여 서버, 저장소, 소프트웨어, 또는 분석 등의 컴퓨팅 서비스를 제공하는 기술이다. IoT 기기에서 수집한 사용자의 데이터나 컨텐츠는 클라우드 서버에 저장되고, 데이터의 가공을 통해 클라우드 서비스가 사용자에게 제공 되었다.
사물 인터넷(internet of things, 이하 IoT)에서 생성된 데이터를 처리하기 위해 클라우드 컴퓨팅이 활용되고 있다. 클라우드 컴퓨팅은 IoT를 구성하는 장치, 데이터의 양이 증가함에 따라, 시스템에 부하가 생기게 되고, 데이터의 전달 및/또는 저장 과정에서 보안 또는 프라이버시 이슈가 발생할 수 있으며, 클라우드 서버에 오류가 생기거나 인터넷에 연결되지 않는 경우 서비스를 제공할 수 없는 문제점이 발생할 수 있다.
이러한 클라우드 컴퓨팅의 문제점을 해결하기 위해 엣지 컴퓨팅(edge computing) 기술이 활용되고 있다. 엣지 컴퓨팅은 클라우드 컴퓨팅 및 서비스 중 일부를 네트워크의 엣지 단에 있는 장치로 확장하는 개방형 아키텍처이다. 예를 들어, 엣지 컴퓨팅 기술을 IoT에서 활용 하면, 클라우드 서버에서 처리되는 어플리케이션 또는 서비스 중 낮은 지연 및 프라이버시가 중요한 것은 엣지 장치 상에서 일부 분산 처리될 수 있다.
엣지 컴퓨팅 기술이 IoT에 활용되고 있으나, 종래의 엣지 컴퓨팅 서비스는 고정된 엣지 장치(edge device)에 고정된 모듈을 통해 서비스를 제공하고 있다. 예를 들어, 홈 네트워크 내에 적어도 하나의 리프 장치(leaf device)와 연결되어 데이터를 처리하기 위한 소프트웨어 및/또는 하드웨어를 갖춘 엣지 장치가 존재해야 한다.
상기 종래 기술에 따르면, 엣지 장치의 상태(예: 이동, 리소스 부족)에 따라 엣지 컴퓨팅 서비스가 불가할 수 있고, 엣지 컴퓨팅을 위한 리소스가 확보되어야 한다.
본 문서의 다양한 실시예들은 네트워크 내에 유휴한 컴퓨팅 파워를 가진 기기를 이용하여 엣지 컴퓨팅을 구현할 수 있는 엣지 컴퓨팅 시스템 및 엣지 컴퓨팅 방법을 제공함에 그 목적이 있다.
본 문서의 다양한 실시예들은 IoT 서비스(예: SmartThingsTM)에 등록되는 전자 장치 및/또는 사용자가 가지고 있는 기기들에 따라 엣지 컴퓨팅이 가능한 모듈 및/또는 서비스를 설치하여, 동적으로 엣지 컴퓨팅 시스템 및 엣지 컴퓨팅 방법을 제공할 수 있다.
본 문서의 다양한 실시예들은, 지정된 장치(예: 리프 장치, 엣지 장치)로의 사용을 위한 사용자 입력이 없이, 사용자가 가지고 있는 기기들을 리프 장치 또는 엣지 장치로 이용하는 엣지 컴퓨팅 시스템 및 엣지 컴퓨팅 방법을 제공할 수 있다.
본 개시에서 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
다양한 실시예에 따른 전자 장치는 통신 모듈, 메모리, 및 상기 통신 모듈 및 상기 메모리와 작동적으로(operatively) 연결되는 프로세서를 포함하고, 상기 프로세서는, 상기 통신 모듈을 이용해, 외부 서버로부터 네트워크 내에 위치하는 리프 장치(leaf device)와의 연결 테스트 명령을 수신하고, 상기 연결 테스트 명령의 수신에 대응하여, 상기 통신 모듈을 이용해 상기 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송하고, 상기 리프 장치와 연결 가능한 경우, 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 상기 메모리에 저장 및 설치하고, 및 상기 설치된 적어도 하나의 모듈을 실행하고, 상기 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행하도록 설정될 수 있다.
다양한 실시예에 따른 IoT 서버의 엣지 컴퓨팅(edge computing) 서비스 지원 방법은, 사용자 장치에 의해 선택된 엣지 장치 및 리프 장치가 연결 가능한 지 여부를 확인하기 위한 테스트 명령을 상기 엣지 장치 및 상기 리프 장치 중 적어도 하나에 전송하는 동작, 상기 엣지 장치 및 상기 리프 장치가 연결 가능한 것으로 확인되는 경우, 상기 엣지 장치와 상기 리프 장치의 디바이스 정보에 기초하여 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정하는 동작, 및 상기 IoT 서버에 저장된 상기 적어도 하나의 모듈을 상기 엣지 장치에 전송하거나, 또는 상기 적어도 하나의 모듈을 상기 엣지 장치에 전송하도록 IoT 허브 서버에 요청하는 동작을 포함할 수 있다.
다양한 실시예 따른 전자 장치의 엣지 컴퓨팅 방법은, 외부 서버로부터 네트워크 내에 위치하는 리프 장치(leaf device)와의 연결 테스트 명령을 수신하는 동작, 상기 연결 테스트 명령의 수신에 대응하여, 상기 통신 모듈을 이용해 상기 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송하는 동작, 상기 리프 장치와 연결 가능한 경우, 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 메모리에 저장 및 설치하는 동작, 및 상기 설치된 적어도 하나의 모듈을 실행하고, 상기 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행하는 동작을 포함할 수 있다.
본 문서의 다양한 실시예에 따르면, 네트워크 내에 유휴한 컴퓨팅 파워를 가진 기기를 이용하여 엣지 컴퓨팅을 구현할 수 있다. 이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.
도 1은 다양한 실시예에 따른 IoT 환경 내의 장치들을 도시한 것이다.
도 2a 및 도 2b는 다양한 실시예에 따른 엣지 컴퓨팅 시스템의 각 장치들을 도시한 것이다.
도 3은 다양한 실시예들에 따른, 네트워크 환경 내의 사용자 장치의 블록도이다.
도 4는 다양한 실시예에 따른 엣지 장치의 블록도이다.
도 5는 다양한 실시예에 따른 리프 장치의 블록도이다.
도 6은 다양한 실시예에 따른 엣지 컴퓨팅 시스템의 각 장치들의 동작을 도시한 것이다.
도 7은 다양한 실시예에 따른 엣지 컴퓨팅 서비스 방법의 흐름도이다.
도 8a 및 도 8b는 다양한 실시예에 따른 엣지 컴퓨팅 서비스 방법의 흐름도이다.
도 9a 내지 도 9c 및 도 10a 내지 도 10c는 다양한 실시예에 따른 사용자 장치의 어플리케이션 화면을 도시한 것이다.
도 11은 다양한 실시예에 따른 엣지 장치의 엣지 컴퓨팅 서비스 방법의 흐름도이다.
도 12는 다양한 실시예에 따른 IoT 서버의 엣지 컴퓨팅 서비스 방법의 흐름도이다.
도 13은 다양한 실시예에 따른 AI 컴퓨팅 분산 처리 플랫폼을 도시한 것이다.
도 14는 다양한 실시예에 따른 AI 컴퓨팅 분산 처리 방법의 흐름도이다.
도 1은 다양한 실시예에 따른 IoT 환경(또는 IoT 시스템) 내의 장치들을 도시한 것이다.
도 1을 참조 하면, IoT(internet of thins) 시스템(또는 엣지 컴퓨팅 시스템)(100)은 적어도 하나의 리프 장치(120)(leaf device), 적어도 하나의 엣지 장치(110)(edge device), 사용자 장치(130)(user device) 및 클라우드 네트워크(140)(cloud network)를 포함할 수 있다. 예를 들면, 리프 장치(120), 엣지 장치(110), 및 사용자 장치(130)는 인접하는 위치(예: 집 안)에 배치되어 동일한 홈 네트워크(예: 동일한 AP(access point))에 연결될 수 있고, 클라우드 네트워크(140)는 원격으로 위치하되 인터넷을 통해 리프 장치(120), 엣지 장치(110), 및 사용자 장치(130)와 연결될 수 있다.
본 문서에서는 엣지 컴퓨팅 시스템(edge computing system)(100) 내에서 각 장치의 기능, 동작에 따라서 리프 장치(120), 엣지 장치(110), 및 사용자 장치(130)로 분류해서 설명하나, 동일한 장치(예: 스마트 폰, 태블릿 PC)가 경우에 따라 리프 장치(120), 엣지 장치(110), 및 사용자 장치(130) 중 어느 하나로 동작할 수도 있다. 다시 말하면, 본 문서에서 설명하는 장치의 명칭, 정의가 해당 장치의 기능 및/또는 동작을 제한하지 않는다.
다양한 실시예에 따르면, 리프 장치(120)는 IoT 시스템(100)의 엔드 포인트(end point)로써 센서를 이용해 다양한 데이터를 수집하여 엣지 장치(110) 또는 클라우드 네트워크(140)로 전송할 수 있다. 또한, 리프 장치(120)는 클라우드 네트워크(140) 또는 사용자 장치(130)로부터 전달되는 커맨드에 따라 다양한 동작을 수행할 수 있다. 도 1을 참조 하면, 카메라(121), 냉장고(122), 전구(123a), 디지털 온도계(123b) 등의 장치가 리프 장치(120)가 될 수 있다.
다양한 실시예에 따르면, 리프 장치(120)는 인터넷을 통해 클라우드 네트워크(140)에 접속할 수 있으며, 리프 장치(120) 중 인터넷 프로토콜(IP)을 지원하지 않는 장치(예: 전구(123a), 디지털 온도계(123b))는 지원하는 비 IP 기반 통신(예: bluetooth, zigbee)으로 허브 장치(124)에 센싱한 데이터를 전송하고, 허브 장치(124)는 인터넷을 통해 클라우드 네트워크(140)에 각 리프 장치(123a, 123b)의 센싱 데이터를 전송할 수 있다. 리프 장치(120)의 세부 구성 및 동작에 대해서는 도 5를 통해 보다 상세히 설명하기로 한다.
다양한 실시예에 따르면, 클라우드 네트워크(140)는 네트워크 상에 위치하고, IoT 시스템(100)에서 클라우드 컴퓨팅 서비스를 지원하는 다양한 서버 장치(예: IoT 매니지 서버, IoT 허브 서버)를 포함할 수 있다. 클라우드 네트워크(140)는 리프 장치(120)에서 수신한 센싱 데이터에 대한 컴퓨팅 처리를 수행하고, 리프 장치(120)의 제어를 위한 명령을 전송할 수 있다.
다양한 실시예에 따르면, 클라우드 네트워크(140)는 홈 네트워크 내의 특정 장치가 엣지 장치(110)로 동작할 수 있도록 운영 및 관리하는 기능을 수행할 수 있다. 예를 들어, 클라우드 네트워크(140)는 IoT 서버(예: IoT 매니지 서버, 또는 IoT 허브 서버)를 포함하며, IoT 서버는 엣지 장치(110)와 리프 장치(120)의 등록, 연결, 관리 등 엣지 컴퓨팅 서비스를 수행하고, 엣지 컴퓨팅 서비스를 위해 필요한 모듈(예: 디바이스 모듈, 서비스 모듈)을 엣지 장치(110)에 제공할 수 있다.
다양한 실시예에 따르면, 엣지 장치(110)는 리프 장치(120)로부터 수신되는 데이터를 직접 처리하거나, 클라우드 네트워크(140)(예: IoT 서버)로 전송할 수 있다. 엣지 장치(110)는 TV(112), 태블릿 PC(111) 등 엣지 컴퓨팅 서비스를 위해 필요한 하드웨어 및/또는 소프트웨어 자원을 포함하는 장치일 수 있다. 엣지 장치(110)는 인터넷을 통해 클라우드 네트워크(140)와 연결될 수 있고, 리프 장치(120)와는 홈 네트워크를 형성할 수 있다.
다양한 실시예에 따르면, 홈 네트워크 내에 복수의 엣지 장치들(110)이 존재할 수 있으며, 리프 장치(120)는 복수의 엣지 장치들(110) 중 어느 하나와 연결되어 데이터를 전송할 수 있다. 예를 들면, 엣지 장치(110)는 특정 리프 장치(120)가 연결될 때, 엣지 컴퓨팅 서비스를 위해 필요한 모듈(예: 디바이스 모듈, 서비스 모듈)을 클라우드 네트워크(140)로부터 다운로드 받아 실행할 수 있다.
다양한 실시예에 따르면, 엣지 장치(110)는 기기 고유의 기능(예: TV의 영상 출력 기능)을 수행할 수 있으며, 고유 기능의 수행과 적어도 일부 동시에 또는 고유 기능을 수행하지 않는 유휴 시간 동안 하드웨어 및/또는 소프트웨어 자원을 통해 엣지 컴퓨팅 서비스를 수행할 수 있다.
엣지 장치(110)의 세부 구성 및 동작에 대해서는 도 4를 통해 보다 상세히 설명하기로 한다.
다양한 실시예에 따르면, 사용자 장치(130)는 어플리케이션을 통해 엣지 컴퓨팅 서비스(edge computing service)와 관련된 다양한 사용자 인터페이스(user interface)를 제공할 수 있다. 예를 들어, 사용자 장치(130)는 리프 장치(120)에서 획득한 데이터(예: 카메라 영상 스트리밍) 또는 상기 데이터를 엣지 장치(110) 또는 클라우드 네트워크(140)에서 처리한 결과 데이터(예: 사람 인식)를 디스플레이 상에 표시할 수 있다. 또한, 사용자 장치(130)는 엣지 장치(110) 및/또는 리프 장치(120)의 연결, 서버 등록과 같은 사용자 입력을 수신하여 클라우드 네트워크(140)로 전송할 수 있다. 사용자 장치(130)의 세부 구성 및 동작에 대해서는 도 3을 통해 보다 상세히 설명하기로 한다.
본 문서의 다양한 실시예들은 홈 네트워크 내에 유휴한 컴퓨팅 파워를 가진 기기를 이용하여 동적으로 엣지 컴퓨팅 서비스를 구현할 수 있다. 이를 위해, 엣지 컴퓨팅 시스템(100)은 홈 네트워크 내에서 특정 리프 장치(120)에 대해 엣지 장치(110)로 결정이 되면, 엣지 컴퓨팅 서비스를 위해 필요한 모듈(예: 디바이스 모듈, 서비스 모듈)을 엣지 장치(110)에서 다운로드 받아 설치하고, 해당 모듈들을 이용해 엣지 컴퓨팅 서비스를 수행할 수 있다. 이에 따라, 고정된 기기에 고정된 모듈을 통해 엣지 컴퓨팅 서비스를 제공하는 종래의 기술과 달리 엣지 장치(110)를 동적으로 구성할 수 있다.
도 2a 및 도 2b는 다양한 실시예에 따른 엣지 컴퓨팅 시스템의 각 장치들을 도시한 것이다.
도 2a를 참조 하면, 엣지 컴퓨팅 시스템은 리프 장치(220), 엣지 장치(210), 사용자 장치(230), IoT 허브 서버(250) 및 IoT 매니지 서버(240)를 포함할 수 있다. 도 1을 통해 설명한 바와 같이, 홈 네트워크 상에 다양한 IoT 기기들이 존재할 수 있으며, 도 2에서는 하나의 리프 장치(leaf device)(예: 도 1의 카메라(121))와 하나의 엣지 장치(edge device)(예: 도 1의 TV(112))를 예로 들어 설명하기로 한다.
다양한 실시예에 따르면, IoT 매니지 서버(240)(예: SmartThingsTM 서버)는 엣지 컴퓨팅 서비스의 결정, 연결 및/또는 운영을 위해 다양한 서비스를 제공하는 서버 장치로써, 프로비전 매니저(242), 모듈 매니저(244) 및 엣지-리프 매니저(246)를 포함할 수 있다.
다양한 실시예에 따르면, 프로비전 매니저(242)(provision manager)는 엣지 장치(210)가 IoT 허브 서버(250)와 연결될 수 있도록 중간에서 중계하는 기능을 수행할 수 있다. 예를 들어, 프로비전 매니저(242)는 엣지 장치(210)가 IoT 매니지 서버(240)에 최초 등록되는 경우에, 엣지 장치(210)가 IoT 허브 서버(250)와 연결될 수 있도록 하는 연결 스트링(connection string)을 엣지 장치(210)에 전송할 수 있다.
다양한 실시예에 따르면, 모듈 매니저(244)(module manager)는 엣지 컴퓨팅 서비스를 위해 제공하는 다양한 모듈 및 각 서비스를 지원하는 기기에 대한 정보들을 관리할 수 있다. 여기서, 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 모듈은 엣지 장치(210)가 리프 장치(220)로부터 전송되는 데이터를 외부 서버(예: IoT 허브 서버(250))로 전송할 수 있도록 하는 디바이스 모듈(219), 및 리프 장치(220)에서 전송되는 데이터를 기반으로 엣지 장치(210)에서 서비스를 구현하기 위해 실행되는 프로그램들을 포함하는 서비스 모듈(218)을 포함할 수 있다.
다양한 실시예에 따르면, 엣지-리프 매니저(246)(edge-leaf manager)는 여러 홈 네트워크에 존재하는 엣지 장치(210)와 리프 장치(220)의 연결 상태를 관리할 수 있다. 예를 들어, IoT 매니지 서버(240)에 등록된 엣지 장치(210)와 리프 장치(220)가 서로 연결 또는 연결 해제 되는 경우, 엣지 장치(210) 및/또는 리프 장치(220)에서 연결 또는 연결 해제 정보를 IoT 매니지 서버(240)에 전송하고, IoT 매니지 서버(240)는 실시간으로 어떠한 엣지 장치(210)와 리프 장치(220)가 연결되었는지, 어떠한 서비스를 수행하는 중인지에 대한 정보를 저장할 수 있다.
다양한 실시예에 따르면, IoT 허브 서버(250)는 클라우드 컴퓨팅 플랫폼(cloud computing platform)을 지원 하며, 클라우드 환경 내에 있는 리프 장치(220)와 엣지 장치(210)가 서로 연결되는 데 필요한 데이터를 제공할 수 있다. IoT 허브 서버(250)는 IoT 허브(252) 및 모듈 레지스트리(254)를 포함할 수 있다.
다양한 실시예에 따르면, 모듈 레지스트리(254)(module registry)는 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 모듈들(예: 디바이스 모듈(219), 서비스 모듈(218))의 저장소일 수 있다.
다양한 실시예에 따르면, IoT 허브(IoT hub)(252)는 엣지 장치(210)와 연결을 유지하며, 모듈 레지스트리(254)에 저장된 모듈을 엣지 장치(210)에 제공하고, 여러 엣지 장치(210)에 설치된 모듈들의 정보를 유지할 수 있다.
다양한 실시예에 따르면, 엣지 장치(210)(예: 도 1의 엣지 장치(110))는 TV, 태블릿 PC, 랩톱 PC 등 기기 고유의 기능을 가지고, 엣지 컴퓨팅 서비스를 위한 하드웨어 및/또는 소프트웨어 구성(예: 엣지 런타임, 기본 모듈)을 포함하는 장치일 수 있다. 고유 기능의 수행과 적어도 일부 동시에 또는 고유 기능을 수행하지 않는 유휴 시간 동안 하드웨어 및/또는 소프트웨어 자원을 통해 엣지 컴퓨팅 서비스를 수행할 수 있다.
다양한 실시예에 따르면, 엣지 장치(210)는 클라우드(예: IoT 매니지 서버(240), IoT 허브 서버(250))와 통신하기 위한 인터페이스(212), 운영 체제(OS, operating system)(214) 및 엣지 런타임(216)을 포함할 수 있다. 예를 들면, 엣지 장치(210)는 운영 체제(214)를 동작하기 위한 하드웨어 조건(예: CPU 성능)이 필요할 수 있고, RTOS(real time operating system)로 구성될 수 있다.
엣지 장치(210)의 공정 과정 또는 소프트웨어 업그레이드를 통해 엣지 장치(210)에 엣지 런타임(216)(edge runtime) 및 엣지 컴퓨팅을 위한 기본 모듈이 설치될 수 있다. 여기서, 엣지 런타임(216)은 IoT 서버와 연동을 위한 데몬(daemon) 프로그램을 포함할 수 있으며, 기본 모듈은 IoT 서버와 통신에 필요한 프로그램으로써 컨테이너(container)로 구성될 수 있다. 예를 들면, 기본 모듈은 엣지 런타임(216) 환경에서 설치되는 컨테이너일 수 있다.
다양한 실시예에 따르면, 엣지 장치(210)는 특정 리프 장치(220)와 연결되는 경우, IoT 허브 서버(250)로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 설치할 수 있다.
예를 들면, 적어도 하나의 모듈은, 연결되는 리프 장치(220)의 종류 및/또는 수행할 수 있는 서비스의 종류에 따라 결정될 수 있으며, 해당 리프 장치(220)에 대응하는 디바이스 모듈(219) 및/또는 수행할 서비스의 종류에 대응하는 서비스 모듈(218)을 포함할 수 있다. 엣지 장치(210)가 복수의 리프 장치들(220)과 연결되는 경우, 각각의 리프 장치(220)와 대응하는 디바이스 모듈(219)(예: 디바이스 모듈 1(219a), 디바이스 모듈 2(219b))이 설치될 수 있다. 엣지 장치(210)는 프로비전(provision) 과정에서 엣지 런타임(216)을 실행하여 IoT 허브 서버(250)와 연결되고, 리프 장치(220)의 종류에 따라 상기 적어도 하나의 모듈이 추가로 설치되고 실행될 수 있다. 엣지 장치(210)는 IoT 허브 서버(250) 또는 IoT 매니지 서버(240)로부터 수신되는 커맨드에 따라 엣지 모드를 활성화 또는 비활성화 할 수 있다. 엣지 모드가 비활성화 된 경우 엣지 장치(210)는 고유의 기능(예: TV의 영상 출력 기능)만 수행하게 되고, 디바이스 모듈(219) 및 서비스 모듈(218)은 실행되지 않을 수 있다.
다양한 실시예에 따르면, 리프 장치(220)(예: 도 1의 리프 장치(120))는 센서를 이용해 획득한 데이터를 연결된 엣지 장치(210) 또는 클라우드 네트워크(예: IoT 매니지 서버(240), IoT 허브 서버(250))에 전송할 수 있다. 예를 들어, 리프 장치(220)로 동작하는 IP(internet protocol) 카메라의 경우, 엣지 장치(210)와 연결되어 영상 스트리밍을 엣지 장치(210)에 전송할 수 있다.
다양한 실시예에 따르면, 사용자 장치(230)는 스마트 폰, 태블릿 PC 등 다양한 어플리케이션을 실행할 수 있고, 사용자 인터페이스(UI, user interface)를 표시할 수 있는 디스플레이를 포함하는 장치일 수 있다. 사용자 장치(230)는 엣지 컴퓨팅 서비스를 위한 어플리케이션을 설치 및/또는 실행하고, 해당 어플리케이션을 통해 리프 장치(220)에서 생성된 컨텐츠와 알림(notification)을 수신할 수 있다. 엣지 장치(210)와 리프 장치(220)가 연결된 경우, 리프 장치(220)에서 생성된 컨텐츠나 알림은, 엣지 장치(210)를 통하여 사용자 장치(230)에 전송될 수 있다.
다양한 실시예에 따르면, IoT 허브 서버(250) 및 IoT 매니지 서버(240)의 기능은 하나의 서버 장치(예: 도 2b의 IoT 서버(260))에 의해 수행될 수 있다. 예를 들어, 도 2b를 참조 하면, IoT 서버(260)는 앞서 설명한 IoT 허브 서버(250) 및 IoT 매니지 서버(240)의 구성인 IoT 허브(261)(예: 도 2a의 IoT 허브(252)), 모듈 레지스트리(262)(예: 도 2a의 모듈 레지스트리(254)), 프로비전 매니저(263)(예: 도 2a의 프로비전 매니저(242)), 모듈 매니저(264)(예: 도 2a의 모듈 매니저(244)) 및 엣지-리프 매니저(265)(예: 도 2a의 엣지-리프 매니저(246))를 포함할 수 있다.
또는 상기 기능들은 3 이상의 복수의 서버 장치들에 의해 수행될 수도 있다. 예를 들어, 도 2a의 IoT 허브 서버(250), IoT 매니지 서버(240)의 각 구성들이 네트워크 상에 존재하는 3 이상의 복수의 서버 장치들에 의해 분산 배치 되거나, 각 구성에서 수행되는 일부 동작들도 여러 서버 장치들에 의해 분산 수행될 수 있다.
도 3은 다양한 실시예들에 따른, 네트워크 환경 내의 사용자 장치의 블록도이다. 이하에서는 엣지 컴퓨팅 시스템의 사용자 장치(예: 도 1의 사용자 장치(130), 도 2a의 사용자 장치(230))를 전자 장치(301)로 지칭할 수도 있다.
도 3은, 다양한 실시예들에 따른, 네트워크 환경(300) 내의 전자 장치(301)의 블록도이다. 도 3을 참조하면, 네트워크 환경(300)에서 전자 장치(301)는 제 1 네트워크(398)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(302)와 통신하거나, 또는 제 2 네트워크(399)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(304) 또는 서버(308)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(301)는 서버(308)를 통하여 전자 장치(304)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(301)는 프로세서(320), 메모리(330), 입력 모듈(350), 음향 출력 모듈(355), 디스플레이 모듈(360), 오디오 모듈(370), 센서 모듈(376), 인터페이스(377), 연결 단자(378), 햅틱 모듈(379), 카메라 모듈(380), 전력 관리 모듈(388), 배터리(389), 통신 모듈(390), 가입자 식별 모듈(396), 또는 안테나 모듈(397)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(301)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(378))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(376), 카메라 모듈(380), 또는 안테나 모듈(397))은 하나의 구성요소(예: 디스플레이 모듈(360))로 통합될 수 있다.
프로세서(320)는, 예를 들면, 소프트웨어(예: 프로그램(340))를 실행하여 프로세서(320)에 연결된 전자 장치(301)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(320)는 다른 구성요소(예: 센서 모듈(376) 또는 통신 모듈(390))로부터 수신된 명령 또는 데이터를 휘발성 메모리(332)에 저장하고, 휘발성 메모리(332)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(334)에 저장할 수 있다. 일실시예에 따르면, 프로세서(320)는 메인 프로세서(321)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(323)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(301)가 메인 프로세서(321) 및 보조 프로세서(323)를 포함하는 경우, 보조 프로세서(323)는 메인 프로세서(321)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(323)는 메인 프로세서(321)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(323)는, 예를 들면, 메인 프로세서(321)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(321)를 대신하여, 또는 메인 프로세서(321)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(321)와 함께, 전자 장치(301)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(360), 센서 모듈(376), 또는 통신 모듈(390))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(323)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(380) 또는 통신 모듈(390))의 일부로서 구현될 수 있다. 일실시예에 따르면, 보조 프로세서(323)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능이 수행되는 전자 장치(301) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(308))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
메모리(330)는, 전자 장치(301)의 적어도 하나의 구성요소(예: 프로세서(320) 또는 센서 모듈(376))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(340)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(330)는, 휘발성 메모리(332) 또는 비휘발성 메모리(334)를 포함할 수 있다.
프로그램(340)은 메모리(330)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(342), 미들 웨어(344) 또는 어플리케이션(346)을 포함할 수 있다.
입력 모듈(350)은, 전자 장치(301)의 구성요소(예: 프로세서(320))에 사용될 명령 또는 데이터를 전자 장치(301)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(350)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 모듈(355)은 음향 신호를 전자 장치(301)의 외부로 출력할 수 있다. 음향 출력 모듈(355)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
디스플레이 모듈(360)은 전자 장치(301)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(360)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 디스플레이 모듈(360)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
오디오 모듈(370)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(370)은, 입력 모듈(350)을 통해 소리를 획득하거나, 음향 출력 모듈(355), 또는 전자 장치(301)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(302))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(376)은 전자 장치(301)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(376)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(377)는 전자 장치(301)가 외부 전자 장치(예: 전자 장치(302))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(377)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(378)는, 그를 통해서 전자 장치(301)가 외부 전자 장치(예: 전자 장치(302))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(378)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(379)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(379)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(380)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(380)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(388)은 전자 장치(301)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(388)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(389)는 전자 장치(301)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(389)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(390)은 전자 장치(301)와 외부 전자 장치(예: 전자 장치(302), 전자 장치(304), 또는 서버(308)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(390)은 프로세서(320)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(390)은 무선 통신 모듈(392)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(394)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(398)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(399)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(304)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(392)은 가입자 식별 모듈(396)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(398) 또는 제 2 네트워크(399)와 같은 통신 네트워크 내에서 전자 장치(301)를 확인 또는 인증할 수 있다.
무선 통신 모듈(392)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(392)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(392)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(392)은 전자 장치(301), 외부 전자 장치(예: 전자 장치(304)) 또는 네트워크 시스템(예: 제 2 네트워크(399))에 규정되는 다양한 요구사항을 지원할 수 있다. 일실시예에 따르면, 무선 통신 모듈(392)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.
안테나 모듈(397)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(397)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(397)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(398) 또는 제 2 네트워크(399)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(390)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(390)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(397)의 일부로 형성될 수 있다.
다양한 실시예에 따르면, 안테나 모듈(397)은 mmWave 안테나 모듈을 형성할 수 있다. 일실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(399)에 연결된 서버(308)를 통해서 전자 장치(301)와 외부의 전자 장치(304)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(302, 또는 304) 각각은 전자 장치(301)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(301)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(302, 304, 또는 308) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(301)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(301)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(301)로 전달할 수 있다. 전자 장치(301)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(301)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(304)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(308)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일실시예에 따르면, 외부의 전자 장치(304) 또는 서버(308)는 제 2 네트워크(399) 내에 포함될 수 있다. 전자 장치(301)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.
다양한 실시예에 따르면, 프로세서(320)는 어플리케이션(346)을 이용해 홈 네트워크 내의 엣지 장치(예: 도 2a의 엣지 장치(210))와 리프 장치(예: 도 2a의 리프 장치(220))를 이용한 엣지 컴퓨팅 서비스와 관련된 제어를 수행할 수 있다.
다양한 실시예에 따르면, 어플리케이션(346)은 엣지 장치 및 리프 장치를 IoT 서버(예: 도 2a의 IoT 매니지 서버(240))에 등록하는 기능을 제공할 수 있다. 예를 들어, 프로세서(320)는 통신 모듈(390)을 이용해 홈 네트워크 내의 적어도 하나의 엣지 장치 및 리프 장치를 디스커버리 하고, 각 장치의 디바이스 정보(예: 식별 정보, 네트워크 정보)를 수신할 수 있다.
프로세서(320)는 확인된 장치들의 리스트를 어플리케이션(346) 상에 표시할 수 있다. 프로세서(320)는 사용자 입력에 기초하여 선택된 엣지 장치 또는 리프 장치의 디바이스 정보를 IoT 서버에 전송하여 등록을 요청할 수 있다. 또한, 프로세서(320)는 어플리케이션(346) 상에서 각 장치의 명칭, 및/또는 위치 정보 등을 입력 받을 수 있다.
다양한 실시예에 따르면, 프로세서(320)는 엣지 장치의 엣지 모드가 비활성화 된 상태에서는 리프 장치로부터 리프 장치의 센서에서 획득한 데이터(예: 영상 스트리밍, 사운드 데이터)를 클라우드 네트워크로부터 수신할 수 있다. 이 후, 엣지 컴퓨팅 서비스가 개시 되는 경우, 리프 장치에서 획득한 데이터는 엣지 장치로 전송되고, 사용자 장치(예: 도 1의 사용자 장치(130), 도 2a의 사용자 장치(230), 또는 전자 장치(301))는 센서 데이터 및 분석 데이터를 엣지 장치로부터 직접 수신하거나, 엣지 장치로부터 클라우드 네트워크(예: 도 1의 클라우드 네트워크(140))를 거쳐 수신할 수 있다.
다양한 실시예에 따르면, 엣지 장치, 또는 리프 장치의 구성 요소 중 적어도 하나는, 전자 장치(301)(예: 사용자 장치)의 구성 요소와 적어도 일부 동일하거나 유사하게 구성될 수 있다. 예를 들면, 리프 장치의 센서는 전자 장치(301)의 센서 모듈(376)과 실질적으로 동일한 기능 및/또는 동작을 수행할 수 있다. 또한, 엣지 장치의 통신 모듈(예: 도 4의 통신 모듈(420))은 전자 장치(301)의 통신 모듈(190)과, 인터페이스(예: 도 2a의 인터페이스(212))는 전자 장치(301)의 인터페이스(377)와 실질적으로 동일한 기능 및/또는 동작을 수행할 수 있다.
도 4는 다양한 실시예에 따른 엣지 장치의 블록도이다.
도 4를 참조 하면, 다양한 실시예에 따른 엣지 장치(400)는 통신 모듈(420), 프로세서(410) 및 메모리(430)를 포함할 수 있으며, 도시된 구성 중 일부가 생략 또는 치환되더라도 본 문서의 다양한 실시예들을 구현할 수 있다.
다양한 실시예에 따른 엣지 컴퓨팅 시스템(edge computing system)에서 복수의 엣지 장치들이 존재할 수 있고, 각 엣지 장치는 서로 다른 종류의 장치일 수 있다. 예를 들어, 엣지 장치(400)(edge device)는 TV, 태블릿 PC, 랩탑 PC 등으로 구현될 수 있다. 이하에서는, 엣지 장치(400)가 기기 고유의 기능을 실행하기 위한 특징들의 설명은 생략하고, 엣지 컴퓨팅 시스템에서 엣지 장치(400)로 동작하기 위해 필요한 동작들에 한해서 설명하기로 한다.
다양한 실시예에 따르면, 통신 모듈(420)은 무선 통신(예: 근거리 통신(Wi-Fi), 셀룰러 통신)을 지원하며, 리프 장치(예: 도 2a의 리프 장치(220)), 사용자 장치(예: 도 2a의 사용자 장치(230)), 외부 서버(예: 도 2a의 IoT 매니지 서버, IoT 허브 서버)와 데이터를 송수신할 수 있다. 일 실시예에 따르면, 통신 모듈(420)은 근거리 무선 통신으로, NFC(near field communication), 블루투스, BLE(bluetooth low energy), WiFi Direct, 메시 네트워크(mesh network)(예: zigbee, z-wave) 및/또는 UWB(ultra-wideband)로 연결될 수 있고, 셀룰러 통신으로, 4G 네트워크, 및/또는 5G 네트워크(예: SA(standalone), NSA(non-standalone))로 연결될 수 있다.
다양한 실시예에 따르면, 메모리(430)는 휘발성 메모리 및/또는 비휘발성 메모리를 포함할 수 있으며, 엣지 장치(400)의 적어도 하나의 구성요소(예: 프로세서(410))에서 사용되는 다양한 데이터를 일시적 및/또는 영구적으로 저장할 수 있다. 메모리(430)는 프로세서(410)에서 수행될 수 있는 다양한 인스트럭션(instruction)들을 저장할 수 있다. 이와 같은 인스트럭션들은 프로세서(410)에 의해 인식될 수 있는 산술 및 논리 연산, 데이터 이동, 입출력을 포함하는 다양한 제어 명령을 포함할 수 있다.
도 4를 참조 하면, 메모리(430)는 디바이스 정보, 엣지 런타임, 기본 모듈, 디바이스 모듈 및 서비스 모듈을 저장할 수 있다.
다양한 실시예에 따르면, 디바이스 정보는 엣지 장치(400)의 식별 정보를 포함할 수 있으며, 예를 들어, 디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류를 포함할 수 있다. 또한, 디바이스 정보는 엣지 장치(400)의 위치 정보(예: 방, 거실) 및 네트워크 정보(예: IP 주소) 중 적어도 일부를 더 포함할 수 있다. 디바이스 정보 중 적어도 일부(예: 위치 정보)는 사용자가 사용자 장치(예: 도 3의 전자 장치(301), 또는 사용자 장치(301))의 어플리케이션 상에서 입력한 것일 수 있다.
다양한 실시예에 따르면, 엣지 런타임(edge runtime)은 IoT 서버와 연동을 위한 데몬(daemon) 프로그램을 포함할 수 있다. 엣지 런타임은 엣지 장치(400)의 엣지 모드가 비활성화 된 상태에서는 실행되지 않고, IoT 서버(예: 도 2a의 IoT 매니지 서버(240))로부터 연결 스트링(connection string)을 수신하는 경우, 이 값을 이용하여 실행될 수 있다.
다양한 실시예에 따르면, 기본 모듈은 IoT 서버와 통신에 필요한 프로그램으로써 컨테이너(container)로 구성될 수 있다. 엣지 장치(400)의 공정 과정 또는 소프트웨어 업그레이드를 통해, 엣지 장치(400)에 엣지 런타임(edge runtime) 및 엣지 컴퓨팅을 위한 기본 모듈이 설치될 수 있다. 일 실시예에 따르면, 엣지 장치(400)는 소프트웨어 업그레이드로 OTA(over the air) 소프트웨어 업데이트를 수행할 수 있다. 예를 들면, OTA 소프트웨어 업데이트로 OMA(open mobile alliance) 다운로드, FOTA(firmware OTA), 또는 플레인 FTP(plain FTP)를 포함할 수 있다.
다양한 실시예에 따르면, 엣지 장치(400)는 엣지 컴퓨팅 서비스에 필요한 모듈로써, 디바이스 모듈(device module) 및 서비스 모듈(service module)을 저장할 수 있다. 디바이스 모듈은 연결되는 리프 장치 각각에 대응할 수 있고, 서비스 모듈은 수행할 서비스 각각에 대응할 수 있다. 예를 들면, 디바이스 모듈 및/또는 서비스 모듈은 연결되는 리프 장치의 개수, 수행할 서비스의 개수에 따라 복수 개가 설치될 수도 있다. (예: 도 2a의 디바이스 모듈 1(219a) 및 디바이스 모듈 2(219b))
다양한 실시예에 따르면, 디바이스 모듈은 리프 장치에서 제1 프로토콜에 따라 수신되는 데이터를 제2 프로토콜(예: MQTT(message queue telemetry transport))에 따라 변환하여 외부 서버로 전송하도록 지원하는 프로그램들을 포함할 수 있다. 일 실시예에 따라, 제1 프로토콜 및 제2 프로토콜은, 엣지 장치(400)가 IoT 서버와의 통신을 위한 컨트롤 채널(control channel)과 관련된 프로토콜이며, 제1 프로토콜은 웹 소켓(web socket)을 포함할 수 있다. 예를 들면, 컨트롤 채널은, 디바이스 정보의 제공 및/또는 처리를 위한 채널로, 엣지 장치(400)는, 컨트롤 채널을 이용하여 IoT 서버와 통신을 수행할 수 있다. 또한, 서비스 모듈은 수신되는 데이터를 처리 및/분석하는 프로그램들을 포함할 수 있다.
엣지 장치(400)의 공정 과정 또는 소프트웨어 업그레이드 시에는 엣지 런타임 및 기본 모듈만 설치되고, 디바이스 모듈 및 서비스 모듈은 설치되지 않을 수 있다. 이 후, 엣지 장치(400)가 리프 장치와 연결되는 경우 IoT 서버(예: 도 2a의 모듈 레지스트리(254))로부터 디바이스 모듈 및 서비스 모듈을 다운로드 받아 설치할 수 있다.
메모리(430)는 도시된 구성 외에 엣지 장치(400)의 고유 기능(예: TV의 영상 출력 기능)을 실행하기 위한 다양한 프로그램을 더 저장할 수 있다.
다양한 실시예에 따르면, 프로세서(410)는 엣지 장치(400)의 각 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 수행할 수 있는 구성으로써, 통신 모듈(420), 메모리(430) 등 엣지 장치(400)의 각 구성요소와 작동적으로(operatively), 기능적으로(functionally) 및/또는 전기적으로(electrically) 연결될 수 있다.
다양한 실시예에 따르면, 프로세서(410)가 엣지 장치(400) 내에서 구현할 수 있는 연산 및 데이터 처리 기능에는 한정됨이 없을 것이나, 이하에서는 엣지 장치(400)가 엣지 컴퓨팅 서비스를 위해 리프 장치와 연결하고, 엣지 컴퓨팅 서비스에 필요한 모듈을 수신 및 설치하기 위한 동작들에 대해 설명하기로 한다.
다양한 실시예에 따르면, 프로세서(410)는 엣지 장치(400)의 디바이스 정보를 IoT 서버(예: 도 2a의 IoT 매니지 서버(240))에 등록할 수 있다. 여기서, 디바이스 정보는 엣지 장치(400)의 식별 정보, 위치 정보 및 네트워크 정보 중 적어도 일부를 포함할 수 있다. 예를 들어, 프로세서(410)는 메모리(430)에 저장된 디바이스 정보를 사용자 장치로 전송하고, 사용자 장치의 어플리케이션을 통해 엣지 장치(400)의 디바이스 정보가 IoT 서버에 전송되어 엣지 장치(400)가 등록될 수 있다. 프로세서(410)는 엣지 장치(400)의 디바이스 정보가 변경되는 경우, 사용자 장치 및/또는 IoT 서버에 업데이트 된 정보를 전송할 수 있다. 또한, 예를 들면, 엣지 장치(400)는 엣지 모드가 활성화되어 엣지 런타임이 동작(실행) 중인 상태일 수 있다. 다양한 실시예에 따르면, 프로세서(410)는 통신 모듈(420)을 통해 IoT 서버(예: 도 2a의 IoT 매니지 서버(240))로부터 연결 테스트 명령을 수신할 수 있다. 연결 테스트 명령은 리프 장치의 식별 정보 및/또는 네트워크 정보를 포함할 수 있다. IoT 서버는 기 등록된 여러 리프 장치 중, 엣지 장치(400)와 연결 가능한 적어도 하나의 리프 장치를 검색하고, 사용자 장치에 의해 선택된 리프 장치와의 연결 테스트 명령을 엣지 장치(400)에 전송할 수 있다.
다양한 실시예에 따르면, 프로세서(410)는 통신 모듈(420)을 이용해 전자 장치와 동일한 네트워크에 위치하는 적어도 하나의 외부 장치를 확인하고, 적어도 하나의 외부 장치의 식별 정보를 IoT 서버에 전송할 수 있다. 또한, IoT 서버는 사용자 장치에 의해 적어도 하나의 외부 장치 중 특정 리프 장치가 선택되는 경우, 해당 리프 장치와의 연결 테스트 명령을 엣지 장치(400)에 전송할 수 있다.
다양한 실시예에 따르면, 프로세서(410)는 연결 테스트 명령의 수신에 대응하여, 통신 모듈(420)을 이용해 리프 장치와 연결 가능한 지 확인할 수 있다. 프로세서(410)는 연결 테스트 결과를 IoT 서버에 전송할 수 있다.
다양한 실시예에 따르면, 프로세서(410)는 통신 모듈(420)을 통해 IoT 서버(예: 도 2a의 IoT 허브 서버(250))로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈(예: 디바이스 모듈, 서비스 모듈)을 수신하고, 수신된 모듈을 메모리(430)에 저장 및 설치할 수 있다. IoT 서버는 엣지 장치(400)의 디바이스 정보(예: 엣지 장치(400)의 디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류)와 리프 장치의 디바이스 정보(예: 리프 장치의 디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류)를 기반으로 수행할 수 있는 엣지 컴퓨팅 서비스를 확인하고, 해당 서비스를 수행하기 위해 필요한 모듈을 프로세서(410)에 제공할 수 있다.
예를 들어, IoT 서버는 리프 장치가 IP 카메라인 경우, 리프 장치에서 전송되는 영상 스트리밍을 수신 및 클라우드 네트워크로 전송하기 위해 필요한 AV 모듈(audio video module) 및 AI vision(artificial intelligence vision) 서비스에서 영상 분석을 수행하는 AI vision 모듈(artificial intelligence vision module)을 제공할 수 있다. 또는, IoT 서버는 리프 장치가 AI 스피커인 경우, 리프 장치에서 전송되는 사운드 데이터를 수신 및 클라우드 네트워크로 전송하기 위해 필요한 사운드 모듈 및 수신한 사운드 데이터를 분석하는 AI 사운드 분석 모듈을 제공할 수 있다.
상기와 같이, 리프 장치의 연결 시 엣지 컴퓨팅 서비스를 위해 필요한 모듈들을 엣지 장치(400)에서 설치함에 따라, 엣지 장치(400)의 유휴 컴퓨팅 자원을 이용해 동적으로 엣지 컴퓨팅 서비스를 구현할 수 있다. 일 실시예에 따라, 엣지 장치와 리프 장치는 제어 정보(예: 제어 정보, 이벤트 정보, 또는 디바이스 정보) 처리를 위한 제3 채널(예: 컨트롤 채널) 및 영상 정보(예: 영상 스트리밍)의 처리(예: 전달)을 위한 제4 채널(예: 스트리밍 채널)을 생성할 수 있다. 또한, 엣지 장치와 리프 장치가 연결되는 경우, 기존의 리프 장치와 IoT 서버 간의 제1 채널(예: 컨트롤 채널) 및 제2 채널(스트리밍 채널) 중, 제2 채널(예: 스트리밍 채널)은 사용하지 않고, 제4 채널을 이용하여 엣지 장치로 영상 정보를 전달될 수 있다. 다양한 실시예에 따르면, 프로세서(410)는 저장된 디바이스 모듈 및 서비스 모듈을 실행하고, 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행할 수 있다. 예를 들어, 리프 장치가 IP 카메라인 경우, 엣지 장치(400)는 AI vision 모듈을 이용해 수신되는 영상을 분석하여 얼굴 인식, 사용자 인식 및 추적과 같은 다양한 영상 분석 기반 서비스를 제공할 수 있다. 또는, 리프 장치가 AI 스피커인 경우, 엣지 장치(400)는 AI 사운드 분석 모듈을 이용해 사운드 데이터를 분석하여 애완동물 모니터링, 창문 파손 감지, 알람 소리 감지 등의 서비스를 수행할 수 있다.
프로세서(410)는 통신 모듈(420)을 이용해 리프 장치에서 수신되는 센서 데이터 및 서비스 모듈에 의해 생성된 분석 데이터를 IoT 서버에 실시간으로 전송할 수 있다. 다른 실시예에 따르면, 엣지 장치(400)는 리프 장치에서 획득된 정보(예: 영상 정보, 센서 데이터, 또는 분석 데이터)를, IoT 서버를 이용하지 않고, 사용자 장치로 전달할 수 있다.
다양한 실시예에 따르면, 프로세서(410)는 리프 장치가 홈 네트워크 상에서 사라지는 경우(예: AP와 접속 해제), 두 기기의 연결을 해제할 수 있다. 이 경우, 프로세서(410)는 IoT 서버에 두 기기의 연결 해제를 리포트 할 수 있다. 두 기기의 연결이 해제되면, 리프 장치는 다시 클라우드 네트워크에 접속하여 계속 서비스가 제공될 수 있다. 예를 들면, 리프 장치는 IoT 서버와 생성된 제1 채널(예: 컨트롤 채널) 및 제2 채널(예: 스트리밍 채널)을 이용하여, 리프 장치의 서비스를 사용자 장치에 제공할 수 있다.
도 5는 다양한 실시예에 따른 리프 장치의 블록도이다.
도 5를 참조 하면, 다양한 실시예에 따른 리프 장치(500)는 통신 모듈(520), 프로세서(510) 및 센서(540)를 포함할 수 있으며, 도시된 구성 중 일부가 생략 또는 치환되더라도 본 문서의 다양한 실시예들을 구현할 수 있다.
다양한 실시예에 따른 엣지 컴퓨팅 시스템(edge computing system)에서 복수의 리프 장치들(500)이 존재할 수 있고, 각 리프 장치(500)는 서로 다른 종류의 장치일 수 있다. 예를 들어, 리프 장치는 카메라, 냉장고, 전구, 디지털 온도계 등으로 구현될 수 있다. 이하에서는, 리프 장치(500)가 기기 고유의 기능을 실행하기 위한 특징들의 설명은 생략하고, 엣지 컴퓨팅 시스템에서 리프 장치(500)로 동작하기 위해 필요한 동작들에 한해서 설명하기로 한다.
다양한 실시예에 따르면, 통신 모듈(520)은 무선 통신(예: Wi-Fi, 셀룰러 통신)을 지원하며, 엣지 장치(예: 도 2a의 엣지 장치(210), 도 4의 엣지 장치(400)), 사용자 장치(예: 도 2a의 사용자 장치(230), 도 3의 사용자 장치(301)), 외부 서버(예: 도 2a의 IoT 매니지 서버(240), IoT 허브 서버(250))와 데이터를 송수신할 수 있다.
다양한 실시예에 따르면, 리프 장치(500)는 적어도 하나의 센서(540)를 포함할 수 있다. 예를 들어, 리프 장치(500)가 IP 카메라인 경우 주변의 영상 데이터를 획득하는 이미지 센서를 포함하고, AI 스피커인 경우, 주변의 사운드를 감지하는 마이크로 폰을 포함할 수 있다. 또는, 리프 장치(500)의 종류에 따라 온도, 압력, 충격량 등 다양한 데이터를 감지하기 위한 센서(540)가 구비될 수 있다.
다양한 실시예에 따르면, 프로세서(510)는 리프 장치(500)의 각 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 수행할 수 있는 구성으로써, 통신 모듈(520), 센서(540) 등 리프 장치(500)의 각 구성요소와 작동적으로(operatively), 기능적으로(functionally) 및/또는 전기적으로(electrically) 연결될 수 있다.
다양한 실시예에 따르면, 프로세서(510)는 리프 장치(500)의 디바이스 정보를 IoT 서버에 등록할 수 있다. 여기서, 디바이스 정보는 엣지 장치의 식별 정보, 위치 정보 및 네트워크 정보 중 적어도 일부를 포함할 수 있다. 예를 들어, 프로세서(510)는 메모리에 저장된 디바이스 정보를 사용자 장치로 전송하고, 사용자 장치의 어플리케이션을 통해 리프 장치(500)의 디바이스 정보가 IoT 서버에 전송되어 리프 장치(500)가 등록될 수 있다.
다양한 실시예에 따르면, 리프 장치(500)가 엣지 장치와 연결되지 않은 상태에서, 프로세서(510)는 센서(540)를 통해 획득한 데이터(예: 영상 스트리밍)를 IoT 서버로 전송할 수 있다. 다양한 실시예에 따르면, 리프 장치(500)는 IoT 서버와 제1 채널(예: 컨트롤 채널) 및 제2 채널(예: 스트리밍 채널)을 형성할 수 있고, 리프 장치(500)와 IoT 서버는 제1 채널을 통해 제어 정보 및/또는 이벤트 정보를 송수신하고, 제2 채널을 통해 리프 장치(500)에서 획득한 영상 스트리밍이 IoT 서버(또는 클라우드 네트워크)로 전송될 수 있다.
다양한 실시예에 따르면, 프로세서(510)는 IoT 서버로부터 수신되는 연결 테스트 명령에 대응하여, 통신 모듈(520)을 통해 엣지 장치와 연결을 시도하고 테스트 결과를 IoT 서버로 전송할 수 있다. 이 후, 프로세서(510)는 통신 모듈(520)을 통해 엣지 장치와 연결을 수립할 수 있다.
예를 들어, 프로세서(510)는 IoT 서버로부터 수신되는 연결 테스트 명령에 대응하여, 리프 장치(500)에서 센싱 및 전송하는 데이터(예: 영상 스트리밍) 및 리프 장치(500)를 이용해 수행 가능한 서비스를 포함하는 신호를 로컬 네트워크 상에 브로드캐스팅 할 수 있다. 이와 적어도 일부 동시에, 엣지 장치는 엣지 장치가 수행 가능한 엣지 컴퓨팅 서비스를 포함하는 신호를 로컬 네트워크 상에 브로드캐스팅 할 수 있다. 프로세서(510)는 엣지 장치로부터 브로드캐스팅 되는 신호에서 엣지 장치가 어떤 서비스가 제공 가능한 지 확인한 후, 리프 장치(500)의 데이터에 대한 엣지 컴퓨팅 서비스가 가능한 지 확인하고, 엣지 장치와 연결을 시도할 수 있다.
다양한 실시예에 따르면, 리프 장치(500)가 엣지 장치와 연결되고 엣지 장치의 엣지 모드가 활성화 되는 경우, 리프 장치(500)는 수립된 연결을 통해 엣지 장치에 센서 데이터를 전송할 수 있다. 이 경우, 엣지 장치 및 리프 장치(500)는 제어 정보 및/또는 이벤트 정보를 송수신하기 위한 제3 채널(예: 컨트롤 채널)을 형성하고, 영상 스트리밍을 송수신하기 위한 제4 채널(예: 스트리밍 채널)을 형성할 수 있다. 엣지 컴퓨팅을 통해 영상 스트리밍이 엣지 장치로 전송되는 동안 리프 장치(500)와 IoT 서버 간 센서 데이터의 송수신을 위한 제2 채널을 사용되지 않을 수 있다.
다양한 실시예에 따르면, 프로세서(510)는 엣지 장치와 연결이 해제되는 경우, 다시 센서 데이터를 IoT 서버로 전송할 수 있다.
도 6은 다양한 실시예에 따른 엣지 컴퓨팅 시스템의 각 장치들의 동작을 도시한 것이다.
도 6에서는 클라우드 네트워크 상의 장치로써 IoT 매니지 서버(640)(예: 도 2a의 IoT 매니지 서버(240)) 및 IoT 허브 서버(650)(예: 도 2a의 IoT 허브 서버(250))를 도시하고 있으나, IoT 매니지 서버(640) 및 IoT 허브 서버(650)의 기능은 하나의 서버 장치(예: 도 2b의 IoT 서버(260))에 의해 구현될 수 있고 또는 3 이상의 장치에 의해 분산 처리 될 수도 있다. 엣지 장치(610) 및 리프 장치(620)는 동일한 홈 네트워크 상에서 서로 연결될 수 있다.
다양한 실시예에 따르면, 동작 1에서, 리프 장치(620)(예: 도 2a의 리프 장치(210), 도 5의 리프 장치(500))는 리프 장치(620)의 디바이스 정보를 IoT 매니지 서버(640)(예: SmartThingsTM 서버)에 등록할 수 있다. 리프 장치(620)의 디바이스 정보는, 리프 장치(620)의 식별 정보(디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류), 위치 정보(예: 방, 거실) 및 네트워크 정보(예: IP 주소) 중 적어도 일부를 포함할 수 있다. 일 실시예에 따르면, 리프 장치(620)의 디바이스 정보에 따라 IoT 서버에 연결하는 방법이 다양할 수 있다. 예를 들면, 리프 장치(620)가 IP 기반(IP 주소) 장치인 경우, SSID(service set identifier)를 이용하여, IoT 서버(예: IoT 매니지 서버(640))에 연결할 수 있고, IP 기반 장치가 아닌 경우(예: BLE, zigbee, z-wave), 허브 장치(예: 도 1의 허브 장치(124))를 통해 또는 사용자 장치(예: 도 2a의 사용자 장치(230), 도 3의 사용자 장치(301))를 허브 장치로 이용하여, IoT 서버(예: IoT 매니지 서버(640))에 연결할 수 있다.다양한 실시예에 따르면, 동작 2에서, 엣지 장치(610)(예: 도 2a의 엣지 장치(210), 도 4의 엣지 장치(400))는 엣지 장치(610)의 디바이스 정보를 IoT 매니지 서버(640)에 등록할 수 있다. 엣지 장치(610)의 디바이스 정보는 엣지 장치(610)의 식별 정보(디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류), 위치 정보(예: 방, 거실) 및 네트워크 정보(예: IP 주소) 중 적어도 일부를 포함할 수 있다. 예를 들면, 엣지 장치(610)는 엣지 모드가 비활성화 된 상태(deactivated state)로 엣지 장치(610)의 디바이스 정보를 IoT 매니지 서버(640)에 전송할 수 있다. 예를 들어, 엣지 장치(610)는 엣지 런타임이 실행되지 않은 상태에서, 엣지 컴퓨팅을 위한 기본 모듈(예: IoT 매니지 서버(640)와 통신에 필요한 프로그램의 컨테이너)을 실행하여 디바이스 정보를 전송할 수 있다. 본 실시예에서 엣지 장치(610)는 엣지 런타임 및 엣지 컴퓨팅을 위한 기본 모듈은 설치하고 있으나, 리프 장치(620)에서 전송되는 데이터에 대한 엣지 컴퓨팅 서비스를 실행하기 위한 모듈(예: 도 2a의 디바이스 모듈(219), 서비스 모듈(218))은 아직 설치하지 않은 상태일 수 있다.
다양한 실시예에 따르면, IoT 매니지 서버(640)는 적어도 하나의 리프 장치(620) 및/또는 엣지 장치(610)로부터 수신한 디바이스 정보들을 메모리(예: 데이터베이스)에 저장할 수 있다.
다양한 실시예에 따라, 동작 1 내지 동작 2는 IoT 서버 장치로의 등록 과정으로 일컬어 질 수 있다.
다양한 실시예에 따르면, 동작 2`에서, 사용자 장치(예: 도 2a의 사용자 장치(230), 도 3의 사용자 장치(301))의 어플리케이션 상에서 사용자는 엣지 장치(610)의 엣지 모드 실행을 선택할 수 있다. 사용자 장치의 어플리케이션은 선택된 엣지 장치(610) 및/또는 리프 장치(620)에 대한 정보를 IoT 매니지 서버(640)에 전송할 수 있다.다양한 실시예에 따르면, 동작 3에서, IoT 매니지 서버(640)(예: 도 2a의 프로비전 매니저(242))는 IoT 허브 서버(650)와 연결될 수 있도록 연결 스트링(connection string)을 엣지 장치(610)에 전송할 수 있다. 다양한 실시예에 따르면, 동작 4에서, 엣지 장치(610)는 연결 스트링을 발급 받아 이 값으로 엣지 런타임을 실행하고 엣지 모드를 활성화할 수 있다. 엣지 장치(610)는 엣지 런타임의 실행에 의해 IoT 허브 서버(650)와 연결될 수 있다. 예를 들면, 연결 스트링은, IoT 허브 서버(650)와의 연동을 위한 ID(identification)로 IoT 허브 서버(650)을 식별할 수 있는 데이터일 수 있다.다양한 실시예에 따라, 동작 2` 내지 동작 4는 엣지 런타임의 설치 과정으로 일컬어 질 수 있다.
다양한 실시예에 따르면, 동작 5에서, 엣지 장치(610) 및 리프 장치(620)는 각각 홈 네트워크 상에서 엣지 컴퓨팅이 가능한 기기가 존재하는 지 확인(discovery)할 수 있다. 예를 들어, 엣지 장치(610)는 동일한 AP(access point)에 접속한 리프 장치(620)들을 확인할 수 있다. 다양한 실시예에 따라, 엣지 장치(610)와 리프 장치(420)는 IP 기반의 AP 장치가 아닌, D2D(device to device) 방식으로 엣지 컴퓨팅이 가능한 기기가 존재하는 지 확인(discovery)할 수 있다. 예를 들면, 엣지 장치(610)와 리프 장치(420)는 BLE, WiFi Direct와 같은 통신 연결로 디스커버리 과정(예: 동작 5 및 동작 5`)을 수행할 수 있다.
다양한 실시예에 따르면, 동작 5`에서, 엣지 장치(610) 및/또는 리프 장치(620)는 홈 네트워크 상에서 연결될 수 있는 기기의 정보를 IoT 매니지 서버(640)에 전송할 수 있다. 다른 실시예에 따르면, IoT 매니지 서버(640)는 등록된 기기들의 디바이스 정보에서 계정 및/또는 위치 정보를 기반으로 엣지 장치(610)와 연결 가능한 리프 장치(620)를 검색하여, 엣지 장치(610) 및/또는 리프 장치(620)에 전달할 수 있다.
다양한 실시예에 따르면, IoT 매니지 서버(640)(예: 도 2a의 엣지-리프 매니저(246))는 엣지 장치(610)와 리프 장치(620)가 서로 연결될 수 있는 것으로 전송하는 경우, 엣지 장치(610) 및 리프 장치(620)를 통해 가능한 서비스를 확인할 수 있다. 예를 들어, 리프 장치(620)가 IP 카메라인 경우, 영상 분석을 포함하는 AI vision 서비스가 가능한 것을 확인할 수 있다.
다양한 실시예에 따르면, IoT 매니지 서버(640)는 확인된 엣지 컴퓨팅 서비스를 위해 엣지 장치(610)에서 필요한 적어도 하나의 모듈을 확인할 수 있다. 여기서, 엣지 컴퓨팅 서비스를 위해 필요한 모듈은, 리프 장치(620)로부터 전송되는 데이터를 수신하고 클라우드 네트워크로 전송할 수 있도록 지원하는 디바이스 모듈 및 수신되는 데이터에 기반하여 엣지 컴퓨팅 서비스를 수행하기 위한 프로그램들을 포함하는 서비스 모듈을 포함할 수 있다. 예를 들어, IoT 매니지 서버(640)는 엣지 장치(610)가 IP 카메라인 리프 장치(620)에서 전송되는 영상 스트리밍을 클라우드 네트워크로 전송하기 위해 필요한 AV 모듈 및 AI vision 서비스에서 영상 분석을 수행하는 AI vision 모듈을 확인할 수 있다. IoT 매니지 서버(640)는 이와 같이, 각각의 엣지 컴퓨팅 서비스를 위해 필요한 모듈들의 정보를 데이터베이스에 저장할 수 있다. 다양한 실시예에 따라, 동작 5 및 동작 5`는 디스커버리 과정으로 일컬어 질 수 있다.
또 다른 실시예에 따라, 동작 2` 내지 동작 4의 엣지 런타임의 설치 과정은, 도시된 실시예와 달리, 동작 5 및 동작 5`의 디스커버리 과정 이후에, 엣지 런타임의 설치 과정이 실행될 수 있다.
다양한 실시예에 따르면, 엣지 장치(610)와 리프 장치(620)는 인증 과정을 거쳐 서로 연결될 수 있다. 엣지 장치(610)와 리프 장치(620)가 서로 연결되는 경우, IoT 매니지 서버(640)(예: 도 2a의 엣지-리프 매니저)에 두 기기의 연결이 업데이트 될 수 있다.
다양한 실시예에 따르면, 동작 6에서, IoT 매니지 서버(640)(예: 도 2a의 모듈 매니저)는, 엣지 컴퓨팅 서비스(예: AI vision 서비스)에 필요한 모듈의 정보를 IoT 허브 서버(650) 및/또는 엣지 장치(610)에 전송할 수 있다. 엣지 장치(610)는 필요한 모듈의 정보를 수신하고, 엣지 런타임에서 IoT 허브 서버(650)(예: 도 2a의 모듈 레지스트리(254))로부터 해당 모듈을 다운로드 받아 엣지 장치(610) 상에 설치할 수 있다.
다양한 실시예에 따르면, 엣지 장치(610)는 설치된 모듈(예: 디바이스 모듈, 서비스 모듈)이 업데이트 되는 경우, IoT 허브 서버(650)(예: 도 2a의 모듈 레지스트리(254))에서 새로운 모듈을 다운로드 받아 업데이트 할 수 있다. 다양한 실시예에 따라, 기존의 엣지 장치(610)가 리프 장치(620)(예: IP 카메라)를 통해 수신된 데이터를 통한 이미지 분류 기능을 수행하는 경우, 업데이트 동작에 기반하여, 새로운 엣지 장치(610)는, 이미지 분류 및 추가적인 기능(예: 얼굴 인식)과 관련된 이미지 분석 기능을 수행할 수 있다.
다양한 실시예에 따르면, 엣지 장치(610)는 리프 장치(620)와 연결된 상태에서는 리프 장치(620)로부터 데이터를 수신하기 위해 해당 리프 장치(620)에 대응하는 디바이스 모듈은 항상 실행할 수 있다. 디바이스 모듈은 제1 프로토콜을 통해 리프 장치(620)로부터 데이터를 수신하고, 제2 프로토콜을 통해 IoT 서버로 데이터를 전송할 수 있다.
리프 장치(620)는 엣지 장치(610)와 연결되기 이전에는 클라우드 네트워크(예: IoT 매니지 서버(640))로 획득한 데이터(예: 영상 스트리밍)를 전송하고, 엣지 장치(610)와 연결된 상태에서는 엣지 장치(610)로 데이터 및 이벤트들을 전송할 수 있다. 엣지 장치(610)는 리프 장치(620)에서 수신되는 데이터 및 이벤트 중 적어도 일부를 클라우드 네트워크(예: IoT 매니지 서버(640))에 전송할 수 있다.
다양한 실시예에 따르면, 엣지 장치(610) 및/또는 리프 장치(620)가 홈 네트워크 상에서 사라지는 경우(예: AP와 접속 해제), 두 기기의 연결을 끊어질 수 있다. 이 경우, IoT 매니지 서버(640)(예: 도 2a의 엣지-리프 매니저(246))에 두 기기의 연결 해제가 업데이트 될 수 있다. 두 기기의 연결이 해제되면, 리프 장치(620)는 다시 클라우드 네트워크에 접속하여 계속 서비스가 제공될 수 있다.
도 7은 다양한 실시예에 따른 엣지 컴퓨팅 서비스 방법의 흐름도이다.
도 7을 참조 하면, 엣지 컴퓨팅 시스템은 사용자 장치(730), 리프 장치(720), 엣지 장치(710) 및 IoT 서버(740)를 포함할 수 있다. IoT 서버(740)는 클라우드 네트워크 상에 존재하는 복수의 서버 장치들(예: 도 2a의 IoT 매니지 서버(240), IoT 허브 서버(250))를 포함할 수 있으며, 각각의 동작들은 여러 서버 장치에 의해 분산 처리 될 수 있다.
다양한 실시예에 따르면, 동작 751에서, 사용자 장치(730)는 리프 장치(720)의 디바이스 정보를 확인하고, 리프 장치(720)의 디바이스 정보를 IoT 서버(740)에 등록할 수 있다. 사용자 장치(730)는 홈 네트워크 상에서 디스커버리 과정을 거쳐 리프 장치(720)의 디바이스 정보를 확인할 수 있으며, 리프 장치(720)의 디바이스 정보는 리프 장치(720)의 식별 정보(디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류), 위치 정보(예: 방, 거실) 및 네트워크 정보(예: IP 주소) 중 적어도 일부를 포함할 수 있다. 사용자 장치(730)의 어플리케이션 상에서 해당 장치가 리프 장치(720)인 지 여부를 체크하는 경우, 리프 장치(720)로써 IoT 서버(740)에 등록을 요청할 수 있다. 또한, 사용자 장치(730)의 어플리케이션 상에서 리프 장치(720)의 위치 정보(예: 방, 거실 등)를 등록 받아 IoT 서버(740)에 전송할 수 있다.
다양한 실시예에 따르면, 동작 752에서, 사용자 장치(730)는 엣지 장치(710)의 디바이스 정보를 확인하고, 엣지 장치(710)의 디바이스 정보를 IoT 서버(740)에 등록할 수 있다. 사용자 장치(730)는 홈 네트워크 상에서 디스커버리 과정을 거쳐 엣지 장치(710)의 디바이스 정보를 확인할 수 있으며, 엣지 장치(710)의 디바이스 정보는 엣지 장치(710)의 식별 정보(디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류), 위치 정보(예: 방, 거실) 및 네트워크 정보(예: IP 주소) 중 적어도 일부를 포함할 수 있다. 사용자 장치(730)의 어플리케이션 상에서 해당 장치가 엣지 장치(710)인 지 여부를 체크하는 경우, 엣지 장치(710)로써 IoT 서버(740)에 등록을 요청할 수 있다. 또한, 사용자 장치(730)의 어플리케이션 상에서 엣지 장치(710)의 위치 정보(예: 방, 거실 등)를 등록 받아 IoT 서버(740)에 전송할 수 있다. 엣지 장치(710)를 등록하는 과정에서 엣지 장치(710)의 엣지 모드는 활성화되지 않은 상태일 수 있다.
다양한 실시예에 따르면, 적어도 하나의 리프 장치(720) 및 엣지 장치(710)로부터 수신한 디바이스 정보들을 데이터베이스에 저장할 수 있으며, 각 장치의 등록 계정, 위치 정보와 리프 장치(720) 또는 엣지 장치(710) 인지 여부를 저장할 수 있다.
다양한 실시예에 따르면, 동작 761에서, 엣지 장치(710)는 엣지 런타임을 실행하고, 엣지 모드를 활성화할 수 있다. 엣지 장치(710)는 IoT 서버(740)로부터 연결 스트링(connection string)을 발급 받아 이 값으로 엣지 런타임(edge runtime)을 실행할 수 있다.
다양한 실시예에 따르면, 동작 762에서, IoT 서버(740)는 기 등록된 여러 리프 장치(720) 중, 엣지 장치(710)와 연결 가능한 적어도 하나의 리프 장치(720)를 검색할 수 있다. IoT 서버(740)는 사용자 장치(730)가 엣지 컴퓨팅 서비스를 수행할 특정 엣지 장치(710)를 선택하는 경우, 사용자 계정, 선택된 엣지 장치(710)의 디바이스 정보 및 위치 정보, 로컬 네트워크를 확인하고, 해당 정보들을 기반으로 데이터베이스 상에서 엣지 장치(710)와 연결 가능한 리프 장치(720)들을 검색할 수 있다.
다양한 실시예에 따르면, 동작 763에서, IoT 서버(740)는 엣지 장치(710)와 연결 가능한 리프 장치(720)들의 리스트를 사용자 장치(730)에 제공할 수 있다.
다양한 실시예에 따르면, 동작 764에서, 사용자 장치(730)는 수신한 리스트를 어플리케이션을 통해 제공하고, 사용자 입력에 따라 리스트 상에서 엣지 장치(710)와 연결할 리프 장치(720)를 선택하여 IoT 서버(740)에 전송할 수 있다.
일 실시예에 따르면, 동작 763 및 동작 764의 경우, 사용자 장치(730)는 리프 장치를 선택하는 동작과 관련된 사용자 인터페이스(예: 도 9a 내지 도 9c)를 제공할 수 있다. 다른 실시예에 따르면, 사용자 장치(730)은, 사용자 장치(730)로부터 획득된 사용자 입력에 기반하여, 엣지 장치를 선택하는 동작과 관련된 사용자 인터페이스(예: 도 10a 내지 10c)를 제공할 수 있다.
다양한 실시예에 따르면, 동작 765 및 동작 766에서, IoT 서버(740)는 엣지 장치(710) 및 리프 장치(720)에 연결 테스트 명령을 전송할 수 있다. 예를 들어, IoT 서버(740)는 상대방 기기의 식별 정보 및/또는 네트워크 정보를 전송하여, 상대방 기기와의 연결이 가능한 지 확인하도록 요청할 수 있다.
다양한 실시예에 따르면, 동작 767 및 동작 768에서, 엣지 장치(710) 및 리프 장치(720)는 홈 네트워크 상에서 상호 연결을 시도하고, 테스트 결과를 IoT 서버(740)에 전송할 수 있다. IoT 서버(740)는 엣지 장치(710)와 리프 장치(720)의 연결 테스트 결과를 사용자 장치(730)에 전송하고, 사용자 장치(730)는 연결 테스트 결과와 관련된 사용자 인터페이스를 제공할 수 있다. 예를 들어, 사용자 인터페이스(730)는 엣지 장치(710)와 리프 장치(720)가 홈 네트워크 상의 연결 요청, 연결 실패, 연결 채널(connectivity channel)의 형성과 같은 연결 시도 과정을 제공할 수 있고, 및/또는 연결 채널을 통해 메시지를 상호 송수신 하고, 신뢰할 수 있는 기기인지 여부의 인증 과정을 완료하는 경우 인증 성공 또는 실패와 관련된 정보를 제공할 수 있다.
다양한 실시예에 따르면, 동작 771에서, IoT 서버(740)는 엣지 장치(710)와 리프 장치(720)가 상호 연결 가능한 것으로 확인되는 경우, 엣지 컴퓨팅 서비스에 필요한 적어도 하나의 모듈을 확인할 수 있다. 예를 들어, IoT 서버(740)는 엣지 장치(710)의 디바이스 정보(예: 엣지 장치(710)의 디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류)와 리프 장치(720)의 디바이스 정보(예: 리프 장치(720)의 디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류)를 기반으로 수행할 수 있는 엣지 컴퓨팅 서비스를 확인할 수 있다.
다양한 실시예에 따르면, IoT 서버(740)는 여러 장치들의 디바이스 정보와 수행 가능한 서비스를 매칭하여 데이터베이스에 저장할 수 있다. 또한, IoT 서버(740)는 각각의 서비스를 위해 필요한 모듈, 특정 기기의 데이터를 전송 및/또는 처리하기 위해 필요한 모듈들을 저장할 수 있다.
다양한 실시예에 따르면, 엣지 컴퓨팅 서비스를 위해 필요한 적어도 하나의 모듈은, 리프 장치(720)로부터 전송되는 데이터를 수신하고 클라우드 네트워크로 전송할 수 있도록 지원하는 디바이스 모듈 및 수신되는 데이터에 기반하여 엣지 컴퓨팅 서비스를 수행하기 위한 프로그램들을 포함하는 서비스 모듈을 포함할 수 있다. 예를 들면, 디바이스 모듈은 리프 장치(720)에서 제1 프로토콜에 따라 수신되는 데이터를 제2 프로토콜(예: MQTT(message queue telemetry transport))에 따라 변환하여 외부 서버로 전송하도록 지원하는 프로그램들을 포함할 수 있다. 또한, 서비스 모듈은 수신되는 데이터를 처리 및/분석하는 프로그램들을 포함할 수 있다.
예를 들어, IoT 서버(740)는 리프 장치(720)가 IP 카메라인 경우, 리프 장치(720)에서 전송되는 영상 스트리밍을 수신 및 클라우드 네트워크로 전송하기 위해 필요한 AV 모듈 및 AI vision 서비스에서 영상 분석을 수행하는 AI vision 모듈을 확인할 수 있다. 또는, IoT 서버(740)는 리프 장치(720)가 AI 스피커인 경우, 리프 장치(720)에서 전송되는 사운드 데이터를 수신 및 클라우드 네트워크로 전송하기 위해 필요한 사운드 모듈 및 수신한 사운드 데이터를 분석하는 AI 사운드 분석 모듈을 확인할 수 있다.
다양한 실시예에 따르면, 동작 772에서, IoT 서버(740)는 확인된 모듈(예: AV 모듈, AI vision 모듈)을 엣지 장치(710)에 전송할 수 있다.
다양한 실시예에 따르면, 동작 773에서, 엣지 장치(710)는 수신한 모듈들을 설치하고, 실행할 수 있다.
다양한 실시예에 따르면, 동작 781에서, 엣지 장치(710)와 리프 장치(720)는 상호 인증을 거쳐 연결을 수립할 수 있다.
다양한 실시예에 따르면, 동작 782에서, 리프 장치(720)는 수립된 연결을 이용하여 센서를 이용해 획득한 데이터(예: 영상 스트리밍)를 엣지 장치(710)에 전송할 수 있다.
다양한 실시예에 따르면, 동작 783에서, 엣지 장치(710)는 리프 장치(720)에서 수신한 데이터를 분석할 수 있다. 예를 들어, 리프 장치(720)가 IP 카메라인 경우, 엣지 장치(710)는 AI vision 모듈을 이용해 수신되는 영상을 분석하여 얼굴 인식, 사용자 인식 및 추적과 같은 다양한 영상 분석 기반 서비스를 제공할 수 있다. 또는, 리프 장치(720)가 AI 스피커인 경우, 엣지 장치(710)는 AI 사운드 분석 모듈을 이용해 사운드 데이터를 분석하여 애완동물 모니터링, 창문 파손 감지, 알람 소리 감지 등의 서비스를 수행할 수 있다.
다양한 실시예에 따르면, 동작 784에서, 엣지 장치(710)는 리프 장치(720)에서 수신한 데이터 및 엣지 장치(710)에서 분석한 데이터를 IoT 서버(740)로 실시간으로 전송할 수 있다.
다양한 실시예에 따르면, 동작 785에서, IoT 서버(740)는 엣지 장치(710)에서 수신되는 센서 데이터 및 분석 데이터를 사용자 장치(730)로 전송할 수 있다. 사용자 장치(730)는 수신한 데이터(예: 영상 스트리밍, 알람)를 어플리케이션을 통해 사용자에게 제공할 수 있다.
도 8a 및 도 8b는 다양한 실시예에 따른 엣지 컴퓨팅 서비스 방법의 흐름도이다.
도 8a는 리프 장치(820)(예: 도 2a의 리프 장치(220), 도 5의 리프 장치(500))와 엣지 장치(810)(예: 도 2a의 엣지 장치(210), 도 4의 엣지 장치(400))가 연결되기 이전에 리프 장치(820)가 클라우드 네트워크와 연결된 상태의 동작을 도시한 것이다.
도 8a를 참조 하면, 홈 네트워크에 위치하는 TV가 엣지 장치(810)로 동작할 수 있고, 리프 장치(820)로 IP 카메라가 새로 설치될 수 있다. 엣지 장치(810)는 IoT 서버(840)(예: 도 2a의 IoT 매니지 서버(240))에 디바이스 정보를 전송하여 기 등록된 상태일 수 있다.
사용자는 리프 장치(820)를 새로 구매하여 실내에 설치하여 AP를 통해 홈 네트워크에 연결될 수 있다. 리프 장치(820)는 리프 장치(820)의 디바이스 정보를 IoT 서버(840)에 전송하여 등록될 수 있다.
도 8a를 참조 하면, 리프 장치(820)가 등록되고 엣지 장치(810)와 연결되기 이전 상태에서, 리프 장치(820)는 센서(예: 도 5의 센서(540))를 통해 획득한 데이터(예: 영상 스트리밍)를 IoT 서버(840)로 전송할 수 있다. 다양한 실시예에 따르면, 리프 장치(820)는 IoT 서버(840)와 제1 채널(851) 및 제2 채널(852)을 형성할 수 있고, 리프 장치(820)와 IoT 서버(840)는 제1 채널(851)을 통해 제어 정보 및/또는 이벤트 정보를 송수신하고, 제2 채널(852)을 통해 리프 장치(820)에서 획득한 영상 스트리밍이 IoT 서버(840)(또는 클라우드 네트워크)로 전송될 수 있다. IoT 서버(840)는 획득한 영상 스트리밍을 사용자 장치(830)에 전송할 수 있다. 이 때, 엣지 장치(810)는 리프 장치(820)와 연결되지 않은 상태이고, 엣지 장치(810)와 IoT 서버(840)는 제어 정보 및/또는 이벤트 정보를 송수신하기 위한 채널을 형성할 수 있다.
다양한 실시예에 따르면, 리프 장치(820) 및 엣지 장치(810)는 로컬 네트워크 상에 자신이 엣지 컴퓨팅을 할 수 있는 기기임을 알리기 위한 신호를 브로드캐스팅(broadcasting)할 수 있다. 리프 장치(820)가 엣지 장치(810)인 TV를 확인하는 경우, 리프 장치(820)는 엣지 장치(810)의 IoT 서버(840)(예: 도 2a의 엣지-리프 매니저(246), 도 2b의 엣지-리프 매니저(265)))에 연결하여 어떠한 서비스가 제공 가능한 지 확인을 요청할 수 있다. IoT 서버(840)(예: 도 2a의 엣지-리프 매니저(246), 모듈 매니저(244))는 리프 장치(820) 및 엣지 장치(810)의 디바이스 정보를 기반으로 엣지 장치(810) 및 리프 장치(820) 간에 사용할 수 있는 서비스 및 해당 서비스를 수행하기 위해 엣지 장치(810)에 필요한 적어도 하나의 모듈을 확인할 수 있다.
다양한 실시예에 따르면, IoT 서버(840)는 확인된 서비스를 수행하기 위해 필요한 모듈을 엣지 장치(810)에 제공할 수 있다. 예를 들어, IoT 서버(840)는 리프 장치(820)의 영상 스트리밍을 IoT 서버(840)(또는 클라우드 네트워크)로 라우팅 하고, 엣지 장치(810)와 IoT 서버(840)간 통신을 담당하는 AV 모듈(audio/video module) 및 영상 분석을 수행하는 AI vision 모듈을 엣지 장치(810)에 제공할 수 있다.
도 8b는 리프 장치(820)와 엣지 장치(810)가 연결된 이후의 동작을 도시한 것이다.
다양한 실시예에 따르면, 엣지 장치(810) 및 리프 장치(820)는 홈 네트워크 상에서 연결을 수립하고, 엣지 장치(810)는 설치한 모듈을 실행할 수 있다. 리프 장치(820)는 수립된 연결을 통해 엣지 장치(810)에 영상 스트리밍을 전송하고, 엣지 장치(810)는 수신한 영상 스트리밍을 IoT 서버(840)에 전송할 수 있다. 엣지 장치(810)는 AV 모듈을 통해 리프 장치(820)로부터 수신되는 영상 스트리밍와 제어 정보 및/또는 이벤트 정보를 수신하고, AI vision 모듈은 수신되는 영상을 분석하여 얼굴 인식, 사용자 인식 및 추적과 같은 다양한 영상 분석 기반 서비스를 제공할 수 있다. 영상 스트리밍 및 분석된 데이터는 IoT 서버(840)를 통해 사용자 장치(830)에 실시간으로 전송될 수 있다.
다른 실시예에 따르면, 엣지 장치(810)는 사용자 장치(830)와 직접 연결을 형성하여, IoT 서버(840)를 거치지 않고 데이터를 바로 사용자 장치(830)에 전송할 수 있다. 예를 들어, 엣지 장치(810)는 리프 장치(820)로부터 수신한 영상 스트리밍을 분석하여(예: 영상 정보 기반 사용자 인식, marking, 행동 추적 등) 생성된 데이터 및 영상 스티리밍 데이터를 사용자 장치(830)와 형성된 연결을 통해 직접 전송할 수 있다.
다양한 실시예에 따르면, 엣지 장치(810) 및 리프 장치(820)는 제어 정보 및/또는 이벤트 정보를 송수신하기 위한 제3 채널(861)을 형성하고, 영상 스트리밍을 송수신하기 위한 제4 채널(862)을 형성할 수 있다. 도 8b를 참조 하면, 엣지 컴퓨팅을 통해 영상 스트리밍이 엣지 장치(810)로 전송되는 동안 리프 장치(820)와 IoT 서버(840) 간 영상 스트리밍의 송수신을 위한 제2 채널(852)을 사용되지 않을 수 있다.
다양한 실시예에 따르면, 리프 장치(820)(예: IP 카메라)와 엣지 장치(810)(예: TV)가 연결되어 엣지 컴퓨팅 서비스를 수행하는 상태에서 새로운 리프 장치(820)(예: AI 스피커)가 연결될 수 있다.
AI 스피커는 로컬 네트워크 상에 자신이 엣지 컴퓨팅을 할 수 있는 브로드캐스팅 할 수 있다. AI 스피커가 엣지 디바이스 인 TV를 찾으면, IoT 서버(840)(예: 도 2a의 엣지-리프 매니저, 모듈 매니저)에 연결하여 어떤 서비스가 제공 가능한 지 확인할 수 있다. 예를 들면, AI 스피커는 TV에 연결 요청을 하고, TV는 인증 과정을 거쳐 AI 스피커와 연결될 수 있다.
AI 스피커와 TV가 연결 후, TV는 IoT 서버(840)로부터 AI 스피커에 제공될 서비스와 관련된 모듈을 설치할 수 있다. 예를 들어, TV는 AI 스피커의 마이크로 폰에서 입력된 사운드 데이터를 수신하기 위한 사운드 모듈 및 수신한 사운드 데이터를 분석하는 AI 사운드 분석 모듈을 IoT 서버(840)(예: 도 2a의 모듈 레지스트리(254))로부터 다운로드 받아 설치할 수 있다.
TV는 설치한 모듈을 실행하여 엣지 컴퓨팅 서비스를 수행할 수 있다. AI 스피커는 주변의 소리를 감지하여 사운드 데이터를 TV의 사운드 모듈에 전달하고, AI 사운드 분석 모듈은 수신된 사운드 데이터를 분석하고, 사운드 모듈을 통해 그 결과를 IoT 서버(840)에 전달할 수 있다. 이와 같은 사운드 데이터의 분석에 따라 애완동물 모니터링, 창문 파손 감지, 알람 소리 감지 등의 서비스를 수행할 수 있다.
다양한 실시예에 따르면, 엣지 장치는 리프 장치에서 전송되는 데이터에 따라 다양한 엣지 컴퓨팅 서비스를 제공할 수 있으며, IoT 서버는 각각의 엣지 컴퓨팅 서비스를 위해 필요한 모듈들을 저장할 수 있다.
리프 장치에 대해 가능한 엣지 컴퓨팅 서비스와 그에 따라 필요한 디바이스 모듈 및 서비스 모듈의 예는 다음과 같다.
장치 엣지 컴퓨팅 서비스 디바이스 모듈 서비스 모듈
Camera Face Recognition, Object Detection MQTT Broker
av stream gateway
Face AI, Vision AI
(Doorbell Service, Delivery notification)
AI Speaker Speaker Recognition MQTT Broker
av stream gateway
Speaker AI
(Personalized Service)
TV Contents Recognition  MQTT Broker
av stream gateway
Contents AI 
(AD Service (광고), Shopping Service)
Robot Vaccum Cleaner  Pet Recognition, Bark detection MQTT Broker
av stream gateway
Pet AI
(Pet Service) 
Camera Daily Summary MQTT Broker
av stream gateway
Face AI, Pet AI
(Daily Summary Video Clip)
상기 표 1에서, MQTT broker는 리프 장치와 엣지 장치 간의 커맨드 및/또는 이벤트를 주고 받는 채널을 제공하는 모듈일 수 있다. 예를 들어, MQTT(message queueing telemetry transport) 프로토콜은 broker, publisher, subscriber를 포함하고, 엣지 장치(810)에 MQTT broker가 설치되는 경우, 엣지 장치의 MQTT broker에서 publisher에서 발행된 topic을 subscriber로 중계하는 기능을 수행할 수 있다.
AV 스트림 게이트웨이(audio video stream gateway)는 리프 장치에서 전송되는 오디오 및/또는 비디오 스트리밍을 AI(artificial intelligence) 모듈에 중계해주는 기능을 수행할 수 있다.
도 9a 내지 도 9c 및 도 10a 내지 도 10c는 다양한 실시예에 따른 사용자 장치의 어플리케이션 화면을 도시한 것이다.
도 9a 내지 도 9c는 사용자 장치(900)에서 엣지 장치에 연결할 리프 장치(예: 도 2a의 리프 장치(220), 도 5의 리프 장치(500))를 선택하기 위한 어플리케이션의 사용자 인터페이스를 도시한 것이다.
도 9a를 참조 하면, 사용자 장치(900)가 특정 엣지 장치의 최초 등록 시 또는 재설정 시에 엣지 장치와 연결할 리프 장치의 탐색을 개시하기 위한 UI(user interface)를 제공할 수 있다. 다양한 실시예에 따르면, 사용자 장치(900)는 UI 상에서 리프 장치의 탐색 메뉴(910)를 선택하는 경우, 통신 모듈(예: 도 3의 통신 모듈(390))을 이용해 홈 네트워크 상의(예: 동일한 AP에 접속된) 적어도 하나의 리프 장치를 검색할 수 있다.
도 9b를 참조 하면, 사용자 장치(900)는 홈 네트워크 상에서 확인된 적어도 하나의 리프 장치의 리스트(921, 922)를 표시할 수 있다. 다양한 실시예에 따르면, 사용자 장치(900)는 리프 장치의 위치(예: 거실, 부엌) 별로 구분해서 리프 장치들을 표시할 수 있다. 다양한 실시예에 따라, 사용자 장치(900)의 UI는 도시된 예에 한정하지 않으며, 리프 장치의 종류(예: 카메라, 스피커, 전구) 별로 구분해서 리프 장치들을 표시하거나 복수의 기준들(예: 종류, 네트워크 등록일자, 사용자 장치와의 거리)에 기반하여 리프 장치들을 표시할 수 있다. 사용자 장치(900)는 표시된 적어도 하나의 리프 장치 중, 엣지 장치와 연결할 리프 장치의 선택을 입력 받을 수 있다. 사용자 장치(900)는 통신 모듈을 통해 IoT 서버에 선택된 리프 장치의 디바이스 정보를 전송할 수 있다.
사용자 장치(900)에 의해 엣지 장치와 연결할 리프 장치가 선택되는 경우, IoT 서버는 해당 엣지 장치 및 리프 장치에 연결 테스트 명령을 전송할 수 있다. 엣지 장치 및/또는 리프 장치는 연결 테스트 결과를 IoT 서버에 전송하고, IoT 서버는 연결 테스트 결과를 사용자 장치(900)에 전송할 수 있다.
도 9c를 참조 하면, 사용자 장치(900)는 선택된 엣지 장치 및 리프 장치가 연결 가능한 지 여부를 나타내는 UI(예: 연결 가능(931), 연결 불가능(932))를 표시할 수 있다.
예를 들면, 엣지 장치 및 리프 장치가 서로 연결되는 경우, 리프 장치에서 획득한 데이터(예: 영상 스트리밍)는 엣지 장치로 전송되고, 엣지 장치는 리프 장치에서 수신한 데이터를 IoT 서버에 전송할 수 있다. 사용자 장치(900)는 IoT 서버로부터 리프 장치의 데이터를 수신하여 어플리케이션 상에서 표시할 수 있다. 다양한 실시예에 따라, 엣지 장치는, 리프 장치로부터 수신한 데이터(예: 영상)를 암호화하여 IoT 서버에 전송할 수 있고, 사용자 장치(900)는 지정된 키(예: 패스워드 또는 인증키)에 기반하여, 복호화된 리프 장치의 데이터를 수신할 수 있다.
다양한 실시예에 따라, 리프 장치와 엣지 장치 간의 데이터는 IoT 서버로 전송 시, 다른 형태로 처리하여 전달될 수 있다. 예를 들면, 엣지 장치는 리프 장치로부터 영상 데이터를 획득할 수 있고, 획득된 영상 데이터에 기반하여, 사용자 인식 기능을 수행할 수 있다. 예를 들면, 엣지 장치는, 사용자 인식에 기반하여, 인식된 사용자와 관련된 알람 정보(예: 처리된 리프 장치의 데이터)를 IoT 서버 및/또는 사용자 장치(900)에 전달할 수 있고, 사용자 장치(900)는 IoT 서버로부터 상기 알람 정보를 획득할 수 있다. 예를 들면, 리프 장치의 센서로부터 획득된 데이터는 리프 장치 및 엣지 장치가 존재하는 홈 네트워크 상에 저장될 수 있고, IoT 서버 및/또는 사용자 장치(900)는 엣지 장치(900)으로부터 다른 형태(예: 알람 정보)로 처리된 정보를 수신할 수 있다.
도 10a 내지 도 10c는 사용자 장치에서 리프 장치에 연결할 엣지 장치를 선택하기 위한 어플리케이션의 사용자 인터페이스를 도시한 것이다. 다양한 실시예에 따라, 엣지 장치를 선택하기 위한 어플리케이션의 사용자 인터페이스는, 리프 장치를 선택하기 위한 어플리케이션의 사용자 인터페이스(예: 도 9a 내지 도 9c)와 적어도 일부 유사하게 구성될 수 있다.
도 10a를 참조 하면, 사용자 장치(1000)가 특정 리프 장치의 최초 등록 시 또는 재설정 시에 리프 장치와 연결할 엣지 장치의 탐색을 개시하기 위한 UI를 제공할 수 있다. 다양한 실시예에 따르면, 사용자 장치(1000)는 UI 상에서 엣지 장치의 탐색 메뉴(1010)를 선택하는 경우, 통신 모듈(예: 도 4의 통신 모듈(420))을 이용해 홈 네트워크 상의(예: 동일한 AP에 접속된) 적어도 하나의 엣지 장치를 검색할 수 있다. 예를 들어, 홈 네트워크의 여러 전자 장치 중 엣지 런타임(edge runtime)이 설치된 장치를 검색할 수 있다.
도 10b를 참조 하면, 사용자 장치(1000)는 홈 네트워크 상에서 확인된 적어도 하나의 엣지 장치의 리스트(1021, 1022)를 표시할 수 있다. 다양한 실시예에 따르면, 사용자 장치(1000)는 엣지 장치의 위치(예: 거실, 부엌) 별로 구분해서 엣지 장치들을 표시할 수 있다. 사용자는 표시된 리스트 상에서 리프 장치와 연결된 어느 하나의 엣지 장치를 선택할 수 있다.
다양한 실시예에 따르면, IoT 서버는 엣지 장치 및 리프 장치의 사용자 계정 및/또는 위치 정보를 데이터베이스에 저장할 수 있고, 사용자 장치(1000)는 주변 장치의 탐색 시 해당 엣지 장치 또는 리프 장치와 동일한 사용자 계정 및/또는 위치로 등록된 리프 장치 또는 엣지 장치의 리스트를 표시할 수 있다.
도 10c를 참조 하면, 사용자 장치(1000)는 선택된 엣지 장치 및 리프 장치가 연결 가능한 지 여부를 나타내는 UI(예: 연결 가능(1031), 연결 불가능(1032))를 표시할 수 있다.
예를 들면, 엣지 장치 및 리프 장치가 서로 연결되는 경우, 리프 장치에서 획득한 데이터(예: 영상 스트리밍)는 엣지 장치로 전송되고, 엣지 장치는 리프 장치에서 수신한 데이터를 IoT 서버에 전송할 수 있다. 사용자 장치(1000)는 IoT 서버로부터 리프 장치의 데이터를 수신하여 어플리케이션 상에서 표시할 수 있다.
다양한 실시예에 따라, IoT 서버는 도 9b의 적어도 하나의 리프 장치의 리스트(921, 922) 및/또는 도 10b의 적어도 하나의 엣지 장치의 리스트(1021, 1022)가 아닌, 지정된 리프 장치 및/또는 엣지 장치를 제공할 수 있다. 예를 들면 IoT 서버는 리프 장치의 탐색과 관련된 동작인 경우, IoT 서버의 데이터베이스에서, 최적의 리프 장치를 결정할 수 있고, 결정된 리프 장치를 사용자 장치(900)에 제공할 수 있다. 또한, IoT 서버는 엣지 장치의 탐색과 관련된 동작인 경우, IoT 서버의 데이터베이스에서, 최적의 엣지 장치를 결정할 수 있고, 결정된 엣지 장치를 사용자 장치(1000)에 제공할 수 있다. 다양한 실시예에 따라, 최적의 리프 장치 및/또는 엣지 장치를 결정하는 동작은, 리프 장치 및/또는 엣지 장치의 하드웨어 조건(예: CPU, GPU, 메모리)에 대한 수치 정보(예: 순위), 또는 네트워크 등록일자 중 적어도 하나에 기반하여 수행될 수 있다.
도 11은 다양한 실시예에 따른 엣지 장치의 엣지 컴퓨팅 서비스 방법의 흐름도이다.
도시된 방법은 앞서 설명한 엣지 장치(예: 도 2a의 엣지 장치(210), 도 4의 엣지 장치(400), 도 6의 엣지 장치(610), 도 7의 엣지 장치(710))에 의해 수행될 수 있으며, 앞서 설명한 바 있는 기술적 특징에 대해서는 이하에서 설명을 생략하기로 한다.
동작 1110에서, 엣지 장치는 외부 서버(예: 도 2a의 IoT 매니지 서버(240))로부터 리프 장치와의 연결 테스트 명령을 수신할 수 있다. 연결 테스트 명령은 리프 장치의 식별 정보 및/또는 네트워크 정보를 포함할 수 있다. 외부 서버는 기 등록된 여러 리프 장치 중 엣지 장치와 연결 가능한 적어도 하나의 리프 장치를 검색하고, 사용자 장치에 의해 선택된 리프 장치와의 연결 테스트 명령을 엣지 장치에 전송할 수 있다.
동작 1120에서, 엣지 장치는 연결 테스트 명령의 수신에 대응하여, 통신 모듈을 이용해 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송할 수 있다.
동작 1130에서, 연결 테스트 결과 리프 장치와 연결 가능한 경우, 엣지 장치는 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 메모리에 저장 및 설치 할 수 있다. 외부 서버는 엣지 장치의 디바이스 정보, 예를 들어, 식별 정보(디바이스 ID, 제조사, 모델명, 성능(capability) 및 기기 종류), 위치 정보(예: 방, 거실) 및 네트워크 정보(예: IP 주소)와 리프 장치의 디바이스 정보를 기반으로 수행할 수 있는 엣지 컴퓨팅 서비스를 확인하고, 해당 서비스를 수행하기 위해 필요한 모듈을 엣지 장치에 제공할 수 있다.
예를 들어, 외부 서버는 리프 장치가 IP 카메라인 경우, 리프 장치에서 전송되는 영상 스트리밍을 수신 및 클라우드 네트워크로 전송하기 위해 필요한 AV 모듈 및 AI vision 서비스에서 영상 분석을 수행하는 AI vision 모듈을 제공할 수 있다. 또는, 외부 서버는 리프 장치가 AI 스피커인 경우, 리프 장치에서 전송되는 사운드 데이터를 수신 및 클라우드 네트워크로 전송하기 위해 필요한 사운드 모듈 및 수신한 사운드 데이터를 분석하는 AI 사운드 분석 모듈을 제공할 수 있다.
동작 1140에서, 엣지 장치는 설치된 적어도 하나의 모듈을 실행하고, 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행할 수 있다. 예를 들어, 리프 장치가 IP 카메라인 경우, 엣지 장치는 AI vision 모듈을 이용해 수신되는 영상을 분석하여 얼굴 인식, 사용자 인식 및 추적과 같은 다양한 영상 분석 기반 서비스를 제공할 수 있다. 또는, 리프 장치가 AI 스피커인 경우, 엣지 장치는 AI 사운드 분석 모듈을 이용해 사운드 데이터를 분석하여 애완동물 모니터링, 창문 파손 감지, 알람 소리 감지 등의 서비스를 수행할 수 있다. 프로세서는 통신 모듈을 이용해 리프 장치에서 수신되는 센서 데이터 및 서비스 모듈에 의해 생성된 분석 데이터를 클라우드 네트워크에 실시간으로 전송할 수 있다.
도 12는 다양한 실시예에 따른 IoT 서버의 엣지 컴퓨팅 지원 방법의 흐름도이다.
도시된 방법은 앞서 설명한 IoT 서버(예: 도 7의 IoT 서버(740))에 수행될 수 있으며, 앞서 설명한 바 있는 기술적 특징에 대해서는 이하에서 설명을 생략하기로 한다. 도시된 방법은 하나의 IoT 서버에 의해 수행될 수 있으며, 복수의 서버 장치들(예: 도 2a의 IoT 매니지 서버(240), IoT 허브 서버(250))에 의해 도시된 동작 중 일부가 분산 처리 될 수도 있다.
동작 1210에서, IoT 서버는 사용자 장치로부터 엣지 장치 및 리프 장치의 선택을 수신할 수 있다. 사용자 장치는 어플리케이션의 사용자 인터페이스 상에서 엣지 컴퓨팅 서비스를 위해 연결 하고자 하는 엣지 장치 및 리프 장치를 선택하여, IoT 서버에 전송할 수 있다.
동작 1220에서, IoT 서버는 엣지 장치 및 리프 장치가 연결 가능한 지 여부를 확인하기 위한 테스트 명령을 전송할 수 있다. 엣지 장치 및/또는 리프 장치는 상대방 기기와 무선 연결을 시도한 후, IoT 서버에 그 결과를 통지할 수 있다.
동작 1230에서, IoT 서버는 엣지 장치 및 리프 장치가 연결 가능한 것으로 확인되는 경우, 엣지 장치와 리프 장치의 디바이스 정보에 기초하여 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정할 수 있다. 예를 들어, IoT 서버는 리프 장치가 IP 카메라인 경우, 리프 장치에서 전송되는 영상 스트리밍을 수신 및 클라우드 네트워크로 전송하기 위해 필요한 AV 모듈 및 AI vision 서비스에서 영상 분석을 수행하는 AI vision 모듈을 제공할 수 있다. 또는, IoT 서버는 리프 장치가 AI 스피커인 경우, 리프 장치에서 전송되는 사운드 데이터를 수신 및 클라우드 네트워크로 전송하기 위해 필요한 사운드 모듈 및 수신한 사운드 데이터를 분석하는 AI 사운드 분석 모듈을 제공할 수 있다.
동작 1240에서, IoT 서버는 IoT 서버에 저장된 적어도 하나의 모듈을 엣지 장치에 전송할 수 있다. 또는 도 2a와 같이 엣지 컴퓨팅 서비스에 필요한 모듈이 다른 서버 장치(예: IoT 허브 서버)에 저장되어 있는 경우, 적어도 하나의 모듈을 상기 엣지 장치에 전송하도록 IoT 허브 서버에 요청할 수 있다.
도 13은 다양한 실시예에 따른 AI 컴퓨팅 분산 처리 플랫폼을 도시한 것이다.
도 13을 참조 하면, AI 컴퓨팅 분산 처리 플랫폼(1300)은 리프 장치(1320), 엣지 장치(1310) 및 클라우드 네트워크(1340)(예: 도 2a의 IoT 매니지 서버(240), IoT 허브 서버(250), 도 2b의 IoT 서버(260))를 포함할 수 있다. 다양한 실시예에 따라, 엣지 장치(1310)는, TV(예: 도 1의 TV(112)), 또는 태블릿 PC(예: 도 1의 태블릿 PC(111)) 뿐 아니라, 4G 및 5G 통신의 고정 무선 접속(FWA, fixed wireless access)형태인 CPE(consumer premises equipment)를 포함할 수 있다.
다양한 실시예에 따르면, AI 컴퓨팅 분산 처리 플랫폼(1300)은 리프 장치(1320)에서 획득한 데이터와 관련된 AI 컴퓨팅 처리를, 데이터의 민감도 및/또는 각 장치의 컴퓨팅 자원에 기초하여 분산 처리 할 수 있다.
예를 들어, 리프 장치는 엣지 장치 또는 클라우드 네트워크와 연결되지 않은 경우, 리프 장치의 하드웨어 및/또는 소프트웨어 리소스를 이용하여 온 디바이스(on device) AI 컴퓨팅 처리를 수행할 수 있다. 리프 장치(1320)가 엣지 장치(1310)에 연결되고 엣지 장치(1310)가 AI 컴퓨팅 처리를 위한 모듈을 실행할 수 있는 경우, 리프 장치(1320)에서 생성된 데이터 중 민감도가 높은 데이터는 엣지 장치(1310) 상에서 AI 컴퓨팅(엣지 AI 컴퓨팅)을 처리하고, 민감도가 낮은 데이터(예: 일반 데이터)는 엣지 장치(1310)를 통해 클라우드 네트워크(1340)로 전송하여 클라우드 상에서 AI 컴퓨팅(클라우드 AI 컴퓨팅)을 처리할 수 있다. 또는, 리프 장치(1320)가 AI 컴퓨팅 처리가 가능한 하드웨어를 포함하는 경우, 리프 장치(1320) 상에서 AI 컴퓨팅의 일부가 온 디바이스(on device) AI 컴퓨팅으로 분산 처리 될 수 있다.
도 14는 다양한 실시예에 따른 AI 컴퓨팅 분산 처리 방법의 흐름도이다.
도시된 방법은 도 13의 리프 장치, 엣지 장치 및 클라우드 네트워크(예: 도 2a의 IoT 매니지 서버, IoT 허브 서버, 도 2b의 IoT 서버)에 의해 수행될 수 있다.
본 실시예에서 엣지 장치는 TV로써 영상 출력의 고유 기능 이외에 엣지 런타임을 실행할 수 있다. 엣지 장치는 디바이스 정보를 전송하여 IoT 서버에 등록될 수 있다. 리프 장치는 AI 스피커 또는 AI 카메라를 포함할 수 있다.
동작 1410에서, IoT 서버는 리프 장치에서 생성된 데이터에 대한 AI 연산을 위해 필요한 모듈을 확인할 수 있다. 예를 들어, AI 연산은 리프 장치(예: IP 카메라)에서 획득한 영상 데이터를 분석하는 AI vision 서비스 및 리프 장치(예: AI 스피커)에서 획득한 사운드 데이터를 분석하는 AI 사운드 서비스를 포함할 수 있다.
동작 1420에서, IoT 서버는 리프 장치에 의해 AI 연산이 수행 가능한 지 확인할 수 있다. 예를 들어, IoT 서버는 AI 연산을 위해 필요한 모듈(예: AI vision 모듈, AI 사운드 모듈)이 요구하는 하드웨어 조건(예: CPU, GPU, 메모리)을 리프 디바이스가 만족하는 지 확인할 수 있다.
동작 1420의 판단 결과, 리프 장치에 의해 AI 연산이 수행 가능한 경우, 동작 1431에서, IoT 서버는 리프 장치에 AI 연산을 위해 필요한 모듈을 전송하고, 리프 장치에서 해당 모듈을 저장 및 설치할 수 있다.
동작 1433에서, 리프 장치는 설치 된 모듈을 이용하여, 온 디바이스(on device) AI 컴퓨팅 처리를 수행할 수 있다. 이 경우, 리프 장치는 AI 컴퓨팅 처리 결과를 IoT 서버로 전송할 수 있으며, 엣지 장치 상에서는 AI 컴퓨팅이 수행되지 않을 수 있다.
리프 장치만으로 AI 연산이 수행될 수 없는 경우, 동작 1441에서, AI 연산을 엣지 장치에서 분산 처리 하기 위해, 엣지 장치와 리프 장치가 상호 연결을 수립할 수 있다. 예를 들어, 엣지 장치 및 리프 장치는 같은 로컬 네트워크 상에 각각 자신이 엣지 컴퓨팅을 할 수 있는 기기임을 브로드캐스팅 할 수 있다. 리프 장치가 엣지 장치를 찾으면 IoT 서버에 연결하여 어떤 서비스가 제공 가능한 지 확인 후 연결을 요청할 수 있다. 연결 요청을 받은 엣지 장치는 인증 과정을 거쳐 리프 장치와 연결될 수 있다.
동작 1443에서, 엣지 장치는 연결된 적어도 하나의 리프 장치로부터 요청 받은 AI 연산을 수행하기 위한 컴퓨팅 자원이 충분한 지 확인할 수 있다. 예를 들어, 하나의 리프 장치만 엣지 장치에 연결되는 경우 컴퓨팅 자원이 충분한 것으로 결정할 수 있고, 연결된 리프 장치의 수가 정해진 개수 이상인 경우 컴퓨팅 자원이 충분하지 않은 것으로 결정할 수 있다.
엣지 장치의 컴퓨팅 자원이 충분한 경우, 동작 1545에서, AI 연산을 수행하기 위한 제1 서비스 모듈이 엣지 장치에 설치 되고, 제2 서비스 모듈이 리프 장치에 설치 될 수 있다.
예를 들어, 제1 서비스 모듈 및 제2 서비스 모듈은 AI 사운드 서비스를 수행하기 위한 모듈들의 일부로써, 제2 서비스 모듈은 음성 신호 전처리 모듈일 수 있고, 제1 서비스 모듈은 그 외의 음성 인식 모듈일 수 있다. 다양한 실시예에 따르면, 제1 서비스 모듈 및 제2 서비스 모듈은 리프 장치의 하드웨어 특성(예: CPU, 메모리 등)에 따라 변경될 수 있다. 예를 들어, 리프 장치가 충분한 하드웨어 자원을 가지지 못하는 경우, 제2 서비스 모듈은 음성 신호 전처리 모듈을 포함하고, 제1 서비스 모듈은 그 외의 음성 인식 모듈을 포함할 수 있다. 이와 달리, 리프 장치가 충분한 하드웨어 자원을 가지는 경우, 리프 장치는 음성 신호 전처리 모듈을 포함한 음성 인식 모듈을 포함할 수 있다.
동작 1447에서, 엣지 장치 및 리프 장치는 설치된 모듈들을 이용하여 엣지(edge) AI 컴퓨팅을 분산 수행 할 수 있다.
동작 1443의 확인 결과, 엣지 장치가 연결된 적어도 하나의 리프 장치로부터 요청 받은 AI 연산을 수행하기 위한 컴퓨팅 자원이 충분하지 않은 경우, 동작 1451에서, 엣지 장치에 연결된 리프 장치들의 우선 순위를 결정할 수 있다. 엣지 장치는 리프 장치와 비교하여 보다 높은 컴퓨팅 자원을 가지나, 클라우드에 비해서는 제한적인 컴퓨팅 자원을 가질 수 있다. 이에, 엣지 장치에 연결되는 리프 장치의 개수가 많은 경우, 엣지 장치에 의한 AI 분산 처리가 어려울 수 있다.
다양한 실시예에 따르면, 엣지 장치는 각 리프 장치에서 전송되는 데이터의 민감도(예: privacy)에 따라 리프 장치 간의 우선 순위를 결정할 수 있다. 예를 들어, AI vision 서비스의 민감도는, AI 음성 인식 서비스의 민감도보다 높을 수 있다. 또한, 실내를 촬영하는 AI 카메라의 민감도는, 실외를 촬영하는 AI 카메라의 민감도보다 높을 수 있다. 이와 같은 민감도 및/또는 우선 순위는 사용자의 선택에 따라 결정될 수도 있다. 다양한 실시예에 따르면, 서비스(예: AI vision 서비스, AI 음성 인식)의 민감도, 카메라의 민감도, 및/또는 개인 정보 여부와 관련된 설정은 서술된 예에 한정하지 않으며, 사용자 선택 또는 지정된 정책 정보에 기반하여, 결정(또는 변경)될 수 있다. 또한, 상기 지정된 정책 정보는, 리프 장치(1320), 엣지 장치(1310), 및/또는 클라우드 네트워크(1340)에 기 저장된 정책 정보를 포함할 수 있다.
동작 1453에서, 엣지 장치는 우선 순위가 높은 리프 장치와 관련된 서비스 모듈을 IoT 서버로부터 수신하여 설치 할 수 있다. 또한, 우선 순위가 낮은 리프 장치는 새로운 엣지 장치와 연결되어 AI 분산 처리를 수행하거나, 클라우드(cloud) 컴퓨팅을 통해 AI 연산을 수행할 수 있다.
다양한 실시예에 따른 전자 장치는 통신 모듈, 메모리, 및 상기 통신 모듈 및 상기 메모리와 작동적으로(operatively) 연결되는 프로세서를 포함하고, 상기 프로세서는, 상기 통신 모듈을 이용해, 외부 서버로부터 네트워크 내에 위치하는 리프 장치(leaf device)와의 연결 테스트 명령을 수신하고, 상기 연결 테스트 명령의 수신에 대응하여, 상기 통신 모듈을 이용해 상기 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송하고, 상기 리프 장치와 연결 가능한 경우, 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 상기 메모리에 저장 및 설치하고, 및 상기 설치된 적어도 하나의 모듈을 실행하고, 상기 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행하도록 설정될 수 있다.
다양한 실시예에 따르면, 상기 프로세서는, 상기 전자 장치의 식별 정보, 위치 정보 및 네트워크 정보 중 적어도 하나를 포함하는 디바이스 정보를 외부 서버로 전송하여, 상기 전자 장치의 등록을 요청하도록 설정될 수 있다.
다양한 실시예에 따르면, 상기 프로세서는, 상기 통신 모듈을 이용해 전자 장치와 동일한 네트워크에 위치하는 적어도 하나의 외부 장치를 확인하고, 상기 통신 모듈을 이용해 확인된 적어도 하나의 외부 장치의 식별 정보를 상기 외부 서버에 전송하고, 상기 적어도 하나의 외부 장치 중 상기 외부 서버 또는 사용자 장치에 의해 선택된 상기 리프 장치와의 연결 테스트 명령을 수신하도록 설정될 수 있다.
다양한 실시예에 따르면, 상기 적어도 하나의 모듈은 상기 리프 장치로부터 전송되는 데이터를 수신하고, 상기 수신되는 데이터를 외부 서버로 전송할 수 있도록 하는 디바이스 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 프로세서는, 기 디바이스 모듈을 이용하여, 상기 리프 장치에서 제1프로토콜에 따라 수신되는 데이터를 제2프로토콜에 따라 상기 외부 서버로 전송하도록 설정될 수 있다.
다양한 실시예에 따르면, 상기 적어도 하나의 모듈은 상기 수신되는 데이터에 기반하여 상기 엣지 컴퓨팅 서비스를 수행하도록 하는 서비스 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 리프 장치가 카메라를 포함하는 경우, 상기 적어도 하나의 모듈은, 상기 리프 장치로부터 수신되는 영상 데이터를 분석하여 객체 인식, 객체 추적 중 적어도 하나를 포함하는 서비스를 수행하기 위한 서비스 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 연결 테스트 명령은 IoT 매니지 서버로부터 수신되고, 상기 적어도 하나의 모듈은 IoT 허브 서버로부터 수신될 수 있다.
다양한 실시예에 따른 IoT 서버의 엣지 컴퓨팅(edge computing) 서비스 지원 방법은, 사용자 장치에 의해 선택된 엣지 장치 및 리프 장치가 연결 가능한 지 여부를 확인하기 위한 테스트 명령을 상기 엣지 장치 및 상기 리프 장치 중 적어도 하나에 전송하는 동작, 상기 엣지 장치 및 상기 리프 장치가 연결 가능한 것으로 확인되는 경우, 상기 엣지 장치와 상기 리프 장치의 디바이스 정보에 기초하여 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정하는 동작, 및 상기 IoT 서버에 저장된 상기 적어도 하나의 모듈을 상기 엣지 장치에 전송하거나, 또는 상기 적어도 하나의 모듈을 상기 엣지 장치에 전송하도록 IoT 허브 서버에 요청하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 사용자 장치 또는 상기 엣지 장치로부터 상기 엣지 장치의 디바이스 정보를 수신하고, 상기 엣지 장치를 등록하는 동작, 및 상기 사용자 장치 또는 상기 리프 장치로부터 상기 리프 장치의 디바이스 정보를 수신하고, 상기 리프 장치를 등록하는 동작을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 엣지 장치의 디바이스 정보는 상기 엣지 장치의 식별 정보, 위치 정보 및 네트워크 정보 중 적어도 일부를 포함할 수 있다.
다양한 실시예에 따르면, 상기 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정하는 동작은, 상기 엣지 장치의 디바이스 정보 및 상기 리프 장치의 디바이스 정보에 대응하여 수행 가능한 엣지 컴퓨팅 서비스를 확인하는 동작, 데이터베이스 상에서 상기 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 적어도 하나의 모듈은, 상기 엣지 장치가 상기 리프 장치로부터 전송되는 데이터를 수신하고, 상기 수신되는 데이터를 외부 서버로 전송할 수 있도록 하는 디바이스 모듈 및 상기 엣지 장치가 상기 리프 장치로부터 전송되는 데이터를 분석하여 상기 서비스를 수행하기 위한 서비스 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 리프 장치가 카메라를 포함하는 경우, 상기 서비스 모듈은, 상기 리프 장치로부터 수신되는 영상 데이터를 분석하여 객체 인식, 객체 추적 중 적어도 하나를 포함하는 서비스를 수행하기 위한 서비스 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 엣지 장치와 상기 리프 장치가 연결되지 않은 상태에서, 상기 리프 장치와 연결된 제1채널을 통해 제어 정보를 송수신하고, 상기 리프 장치와 연결된 제2채널을 통해 상기 리프 장치에서 획득한 데이터를 수신하는 동작, 및 상기 엣지 장치와 상기 리프 장치가 연결된 상태에서 상기 제1채널은 유지하면서, 상기 엣지 장치로부터 상기 리프 장치에서 획득한 데이터를 수신하는 동작을 포함할 수 있다.
다양한 실시예 따른 전자 장치의 엣지 컴퓨팅 방법은, 외부 서버로부터 네트워크 내에 위치하는 리프 장치(leaf device)와의 연결 테스트 명령을 수신하는 동작, 상기 연결 테스트 명령의 수신에 대응하여, 상기 통신 모듈을 이용해 상기 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송하는 동작, 상기 리프 장치와 연결 가능한 경우, 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 메모리에 저장 및 설치하는 동작, 및 상기 설치된 적어도 하나의 모듈을 실행하고, 상기 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 전자 장치의 식별 정보, 위치 정보 및 네트워크 정보 중 적어도 하나를 포함하는 디바이스 정보를 외부 서버로 전송하여, 상기 전자 장치의 등록을 요청하는 동작을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 적어도 하나의 모듈은 상기 리프 장치로부터 전송되는 데이터를 수신하고, 상기 수신되는 데이터를 외부 서버로 전송할 수 있도록 하는 디바이스 모듈을 포함할 수 있다.
다양한 실시예에 따르면, 상기 엣지 컴퓨팅 서비스를 수행하는 동작은, 상기 디바이스 모듈을 이용하여, 상기 리프 장치에서 제1프로토콜에 따라 수신되는 데이터를 제2프로토콜에 따라 상기 외부 서버로 전송하는 동작을 포함할 수 있다.
다양한 실시예에 따르면, 상기 적어도 하나의 모듈은 상기 수신되는 데이터에 기반하여 상기 엣지 컴퓨팅 서비스를 수행하도록 하는 서비스 모듈을 포함할 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치(예: 도 2a의 사용자 장치, 리프 장치, 엣지 장치)는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(301)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(336) 또는 외장 메모리(338))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(340))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(301))의 프로세서(예: 프로세서(320))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.

Claims (15)

  1. 전자 장치에 있어서,
    통신 모듈;
    메모리; 및
    상기 통신 모듈 및 상기 메모리와 작동적으로(operatively) 연결되는 프로세서를 포함하고,
    상기 프로세서는,
    상기 통신 모듈을 이용해, 외부 서버로부터 네트워크 내에 위치하는 리프 장치(leaf device)와의 연결 테스트 명령을 수신하고,
    상기 연결 테스트 명령의 수신에 대응하여, 상기 통신 모듈을 이용해 상기 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송하고,
    상기 리프 장치와 연결 가능한 경우, 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 상기 메모리에 저장 및 설치하고, 및
    상기 설치된 적어도 하나의 모듈을 실행하고, 상기 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행하도록 설정된 전자 장치.
  2. 제 1항에 있어서,
    상기 프로세서는,
    상기 전자 장치의 식별 정보, 위치 정보 및 네트워크 정보 중 적어도 하나를 포함하는 디바이스 정보를 외부 서버로 전송하여, 상기 전자 장치의 등록을 요청하도록 설정된 전자 장치.
  3. 제 1항에 있어서,
    상기 프로세서는,
    상기 통신 모듈을 이용해 전자 장치와 동일한 네트워크에 위치하는 적어도 하나의 외부 장치를 확인하고,
    상기 통신 모듈을 이용해 확인된 적어도 하나의 외부 장치의 식별 정보를 상기 외부 서버에 전송하고,
    상기 적어도 하나의 외부 장치 중 상기 외부 서버 또는 사용자 장치에 의해 선택된 상기 리프 장치와의 연결 테스트 명령을 수신하도록 설정된 전자 장치.
  4. 제 1항에 있어서,
    상기 적어도 하나의 모듈은 상기 리프 장치로부터 전송되는 데이터를 수신하고, 상기 수신되는 데이터를 외부 서버로 전송할 수 있도록 하는 디바이스 모듈을 포함하는 전자 장치.
  5. 제 4항에 있어서,
    상기 프로세서는,
    상기 디바이스 모듈을 이용하여, 상기 리프 장치에서 제1프로토콜에 따라 수신되는 데이터를 제2프로토콜에 따라 상기 외부 서버로 전송하도록 설정된 전자 장치.
  6. 제 1항에 있어서,
    상기 적어도 하나의 모듈은 상기 수신되는 데이터에 기반하여 상기 엣지 컴퓨팅 서비스를 수행하도록 하는 서비스 모듈을 포함하는 전자 장치.
  7. 제 6항에 있어서,
    상기 리프 장치가 카메라를 포함하는 경우,
    상기 적어도 하나의 모듈은,
    상기 리프 장치로부터 수신되는 영상 데이터를 분석하여 객체 인식, 객체 추적 중 적어도 하나를 포함하는 서비스를 수행하기 위한 서비스 모듈을 포함하는 전자 장치.
  8. 제 1항에 있어서,
    상기 연결 테스트 명령은 IoT 매니지 서버로부터 수신되고,
    상기 적어도 하나의 모듈은 IoT 허브 서버로부터 수신되는 전자 장치.
  9. IoT 서버의 엣지 컴퓨팅(edge computing) 서비스 지원 방법에 있어서,
    사용자 장치에 의해 선택된 엣지 장치 및 리프 장치가 연결 가능한 지 여부를 확인하기 위한 테스트 명령을 상기 엣지 장치 및 상기 리프 장치 중 적어도 하나에 전송하는 동작;
    상기 엣지 장치 및 상기 리프 장치가 연결 가능한 것으로 확인되는 경우, 상기 엣지 장치와 상기 리프 장치의 디바이스 정보에 기초하여 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정하는 동작; 및
    상기 IoT 서버에 저장된 상기 적어도 하나의 모듈을 상기 엣지 장치에 전송하거나, 또는 상기 적어도 하나의 모듈을 상기 엣지 장치에 전송하도록 IoT 허브 서버에 요청하는 동작을 포함하는 방법.
  10. 제 9항에 있어서,
    상기 사용자 장치 또는 상기 엣지 장치로부터 상기 엣지 장치의 디바이스 정보를 수신하고, 상기 엣지 장치를 등록하는 동작; 및
    상기 사용자 장치 또는 상기 리프 장치로부터 상기 리프 장치의 디바이스 정보를 수신하고, 상기 리프 장치를 등록하는 동작을 더 포함하는 방법.
  11. 제 9항에 있어서,
    상기 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정하는 동작은,
    상기 엣지 장치의 디바이스 정보 및 상기 리프 장치의 디바이스 정보에 대응하여 수행 가능한 엣지 컴퓨팅 서비스를 확인하는 동작;
    데이터베이스 상에서 상기 엣지 컴퓨팅 서비스를 수행하기 위해 필요한 적어도 하나의 모듈을 결정하는 동작을 포함하는 방법.
  12. 제 11항에 있어서,
    상기 적어도 하나의 모듈은,
    상기 엣지 장치가 상기 리프 장치로부터 전송되는 데이터를 수신하고, 상기 수신되는 데이터를 외부 서버로 전송할 수 있도록 하는 디바이스 모듈 및 상기 엣지 장치가 상기 리프 장치로부터 전송되는 데이터를 분석하여 상기 서비스를 수행하기 위한 서비스 모듈을 포함하는 방법.
  13. 제 12항에 있어서,
    상기 리프 장치가 카메라를 포함하는 경우,
    상기 서비스 모듈은,
    상기 리프 장치로부터 수신되는 영상 데이터를 분석하여 객체 인식, 객체 추적 중 적어도 하나를 포함하는 서비스를 수행하기 위한 서비스 모듈을 포함하는 방법.
  14. 제 9항에 있어서,
    상기 엣지 장치와 상기 리프 장치가 연결되지 않은 상태에서, 상기 리프 장치와 연결된 제1채널을 통해 제어 정보를 송수신하고, 상기 리프 장치와 연결된 제2채널을 통해 상기 리프 장치에서 획득한 데이터를 수신하는 동작; 및
    상기 엣지 장치와 상기 리프 장치가 연결된 상태에서 상기 제1채널은 유지하면서, 상기 엣지 장치로부터 상기 리프 장치에서 획득한 데이터를 수신하는 동작을 포함하는 방법.
  15. 전자 장치의 엣지 컴퓨팅 방법에 있어서,
    외부 서버로부터 네트워크 내에 위치하는 리프 장치(leaf device)와의 연결 테스트 명령을 수신하는 동작;
    상기 연결 테스트 명령의 수신에 대응하여, 상기 통신 모듈을 이용해 상기 리프 장치와 연결 가능한 지 확인하여, 상기 확인 결과를 외부 서버로 전송하는 동작;
    상기 리프 장치와 연결 가능한 경우, 외부 서버로부터 엣지 컴퓨팅 서비스를 수행하기 위한 적어도 하나의 모듈을 수신하여 메모리에 저장 및 설치하는 동작; 및
    상기 설치된 적어도 하나의 모듈을 실행하고, 상기 리프 장치로부터 수신되는 데이터에 기초하여 엣지 컴퓨팅 서비스를 수행하는 동작을 포함하는 방법.
PCT/KR2021/009497 2020-07-22 2021-07-22 엣지 컴퓨팅 시스템 및 방법 WO2022019682A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/099,754 US20230164033A1 (en) 2020-07-22 2023-01-20 Edge computing system and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0091083 2020-07-22
KR1020200091083A KR20220012042A (ko) 2020-07-22 2020-07-22 엣지 컴퓨팅 시스템 및 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/099,754 Continuation US20230164033A1 (en) 2020-07-22 2023-01-20 Edge computing system and method

Publications (1)

Publication Number Publication Date
WO2022019682A1 true WO2022019682A1 (ko) 2022-01-27

Family

ID=79729956

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/009497 WO2022019682A1 (ko) 2020-07-22 2021-07-22 엣지 컴퓨팅 시스템 및 방법

Country Status (3)

Country Link
US (1) US20230164033A1 (ko)
KR (1) KR20220012042A (ko)
WO (1) WO2022019682A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024085356A1 (ko) * 2022-10-20 2024-04-25 삼성전자 주식회사 장치 변경을 위한 전자 장치 및 그 동작 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11977830B2 (en) * 2022-09-13 2024-05-07 International Business Machines Corporation Demand-based deployment of font server to an edge device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130113490A (ko) * 2011-01-09 2013-10-15 보잉고 와일레스, 인코. 동적 무선 네트워크 탐색을 위한 시스템, 방법, 및 장치
KR20180119162A (ko) * 2016-02-25 2018-11-01 에이씨에스 (유에쓰), 인코포레이티드 모바일 엣지에서의 컴퓨팅을 위한 플랫폼
KR20190056957A (ko) * 2017-11-17 2019-05-27 한국전자통신연구원 지능형 IoE 정보 프레임워크를 위한 컴퓨팅 시스템 및 방법
KR20200007754A (ko) * 2018-07-13 2020-01-22 삼성전자주식회사 엣지 컴퓨팅 서비스를 위한 방법 및 그의 전자 장치
KR20200033092A (ko) * 2018-09-19 2020-03-27 주식회사맥데이타 엣지 컴퓨팅 기반 네트워크 모니터링 방법, 장치 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130113490A (ko) * 2011-01-09 2013-10-15 보잉고 와일레스, 인코. 동적 무선 네트워크 탐색을 위한 시스템, 방법, 및 장치
KR20180119162A (ko) * 2016-02-25 2018-11-01 에이씨에스 (유에쓰), 인코포레이티드 모바일 엣지에서의 컴퓨팅을 위한 플랫폼
KR20190056957A (ko) * 2017-11-17 2019-05-27 한국전자통신연구원 지능형 IoE 정보 프레임워크를 위한 컴퓨팅 시스템 및 방법
KR20200007754A (ko) * 2018-07-13 2020-01-22 삼성전자주식회사 엣지 컴퓨팅 서비스를 위한 방법 및 그의 전자 장치
KR20200033092A (ko) * 2018-09-19 2020-03-27 주식회사맥데이타 엣지 컴퓨팅 기반 네트워크 모니터링 방법, 장치 및 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024085356A1 (ko) * 2022-10-20 2024-04-25 삼성전자 주식회사 장치 변경을 위한 전자 장치 및 그 동작 방법

Also Published As

Publication number Publication date
US20230164033A1 (en) 2023-05-25
KR20220012042A (ko) 2022-02-03

Similar Documents

Publication Publication Date Title
WO2020050555A1 (en) Method for uwb transaction and electronic device therefor
WO2019039868A1 (en) ELECTRONIC DISPLAY DEVICE FOR APPLICATION AND METHOD FOR OPERATING THE SAME
WO2022019682A1 (ko) 엣지 컴퓨팅 시스템 및 방법
WO2022154272A1 (ko) Iot 장치 및 iot 장치를 서버에 온보딩 하는 방법
WO2022031029A1 (ko) 전자 장치 및 전자 장치가 외부 장치 디스플레이 상에 어플리케이션 화면을 제공하는 방법
EP3808116A1 (en) Method for uwb transaction and electronic device therefor
WO2022019681A1 (ko) 엣지 컴퓨팅 시스템 및 연결 기기 추천 방법
WO2022203168A1 (ko) Uwb 통신을 통해 데이터를 전송하는 전자 장치 및 전자 장치의 동작 방법
WO2021033961A1 (en) Electronic device and method for providing service by electronic device
WO2022124846A1 (ko) Iot 환경의 허브 장치 및 로컬 네트워크 기반 이벤트 처리 방법
WO2022060046A1 (ko) 엣지 컴퓨팅 시스템 및 엣지 컴퓨팅 장치의 핸드오버 방법
WO2022030814A1 (ko) 전자 장치의 무선 연결을 관리하는 방법 및 그 장치
WO2022030801A1 (ko) 전자 장치의 무선 연결을 관리하는 방법 및 그 장치
WO2022031019A1 (ko) Uwb와 ar를 이용한 분실기기 찾는 방법 및 그 장치
WO2022030860A1 (ko) Iot 환경에서 타겟 전자 장치를 제어하기 위한 전자 장치 및 그에 관한 방법
WO2021221317A1 (ko) 광고 공유 방법 및 그 장치
WO2022173144A1 (ko) 전자 장치 및 엣지 컴퓨팅 네트워크에서 프로비저닝 장치를 결정하는 방법
WO2024034787A1 (ko) 피제어 장치를 관리하는 전자 장치 및 그 동작 방법
WO2024029715A1 (ko) 알림을 제공하기 위한 방법 및 이를 지원하는 전자 장치
WO2022154364A1 (ko) 전자 장치의 무선 연결을 관리하는 방법 및 그 장치
WO2023075207A1 (ko) 위치 기반 서비스를 제공하는 전자 장치 및 그 동작 방법
WO2023090722A1 (ko) 응답 패킷 송신 장치 및 방법
WO2024080543A1 (ko) 비디오 서머리를 생성하는 전자 장치 및 그 동작 방법
WO2022169276A1 (ko) 복수의 외부 전자 장치와 관련된 사용자 인터페이스를 제공하는 전자 장치 및 전자 장치의 동작 방법
WO2022203184A1 (ko) 기능 공유를 위한 전자 장치 및 그의 동작 방법

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21847275

Country of ref document: EP

Kind code of ref document: A1