KR20160123627A - Electronic device and method of transmitting data usnig multipath - Google Patents

Electronic device and method of transmitting data usnig multipath Download PDF

Info

Publication number
KR20160123627A
KR20160123627A KR1020150053897A KR20150053897A KR20160123627A KR 20160123627 A KR20160123627 A KR 20160123627A KR 1020150053897 A KR1020150053897 A KR 1020150053897A KR 20150053897 A KR20150053897 A KR 20150053897A KR 20160123627 A KR20160123627 A KR 20160123627A
Authority
KR
South Korea
Prior art keywords
electronic device
algorithm
data transmission
multipath
data
Prior art date
Application number
KR1020150053897A
Other languages
Korean (ko)
Inventor
황익순
옥동석
이도광
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020150053897A priority Critical patent/KR20160123627A/en
Publication of KR20160123627A publication Critical patent/KR20160123627A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures

Landscapes

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

Abstract

Provided are an electronic device and a method for transmitting data using multipath, capable of improving a data transmission speed or providing a seamless data service. According to various embodiments, the electronic device includes: a communication unit for transmitting and receiving data; and a control unit for determining, when setting data transmission connection between the electronic device and other electronic devices, a multipath data transmission algorithm to be used for data transmission between the electronic device and the other electronic devices among a plurality of multipath data transmission algorithms, on the basis of information related to at least one multipath data transmission algorithm which are transmitted or received through the communication unit, and for transmitting or receiving the data according to the determined multipath data transmission algorithm.

Description

전자 장치 및 다중 경로를 이용한 데이터 전송 방법{ELECTRONIC DEVICE AND METHOD OF TRANSMITTING DATA USNIG MULTIPATH}TECHNICAL FIELD [0001] The present invention relates to an electronic device and a method of transmitting data using multi-

본 발명의 다양한 실시 예들은 전자 장치 및 다중 경로를 이용한 데이터 전송 방법에 관한 것이다.Various embodiments of the present invention are directed to electronic devices and methods of transmitting data using multipath.

통상적으로 전자 장치라 함은, 가전제품으로부터, 전자 수첩, 휴대용 멀티미디어 재생기, 이동통신 단말기, 태블릿 PC, 영상/음향 장치, 데스크톱/랩톱 컴퓨터, 차량용 내비게이션 등, 탑재된 프로그램에 따라 특정 기능을 수행하는 장치를 의미한다. 예를 들면, 이러한 전자 장치들은 저장된 정보를 음향이나 영상으로 출력할 수 있다. 전자 장치의 집적도가 높아지고, 초고속, 대용량 무선 통신이 보편화되면서, 최근에는 이동통신 단말기 하나에 다양한 기능이 탑재되고 있다.Typically, an electronic device refers to a device that performs a specific function according to a program loaded from a home appliance to an electronic notebook, a portable multimedia player, a mobile communication terminal, a tablet PC, a video / audio device, a desktop / laptop computer, Device. For example, such electronic devices may output stored information as sound or video. As the degree of integration of electronic devices increases, ultra-high-speed and large-capacity wireless communications become popular, and various functions are currently being installed in one mobile communication terminal.

또한, 전자 장치에서는 통신 기능을 통해 다른 전자 장치 또는 서버로부터 다양한 서비스들을 제공받을 수 있다. 전자 장치는 다른 전자 장치 또는 서버와 데이터를 송수신할 때, 다중 경로 전송(multipath transport) 기능을 통해 복수의 전송 연결을 생성하여 데이터를 송수신할 수 있다. 예컨대, 다중 경로 TCP(transmission control protocol)(multipath TCP; MPTCP) 또는 SCTP(stream control transmission protocol) 등과 같은 다중 경로 전송 기능을 지원하는 프로토콜에서는 애플리케이션에서 요청하는 데이터 전송에 대해 각 피어 엔티티(peer entity) 사이에 복수의 전송 연결(transport connection)을 생성하고 이를 이용하여 데이터를 전송할 수 있다.Further, in an electronic device, various services can be provided from another electronic device or server through a communication function. When transmitting and receiving data with other electronic devices or servers, an electronic device can transmit and receive data by generating a plurality of transmission connections through a multipath transport function. For example, in a protocol supporting multi-path transmission function such as multi-path TCP (multiprot TCP) or stream control transmission protocol (SCTP), each peer entity is required to transmit data requested by the application. It is possible to generate a plurality of transport connections and transmit data using them.

현존하는 기술에 의하면, 전자 장치에서 다중 경로 전송 기능을 이용하여 데이터를 송수신하고자 할 때, 애플리케이션의 유형이나 사용자의 특성과 관계없이 송신 측 전자 장치에서 임의로 데이터 전송 알고리즘을 결정하게 된다.According to the existing technology, when an electronic device attempts to transmit / receive data using a multi-path transmission function, the transmission-side electronic device arbitrarily determines a data transmission algorithm irrespective of the type of the application or the characteristics of the user.

이와 같이, 정해진 다중 경로 데이터 전송 알고리즘만을 사용할 경우 각 전자 장치의 사용자별 또는 애플리케이션별로 다양한 데이터 전송 요구 사항에 대해 효율적인 대응이 어렵다는 문제가 있다.As described above, there is a problem that it is difficult to efficiently respond to various data transmission requirements for each user or each application of each electronic device when using only a predetermined multipath data transmission algorithm.

본 발명의 다양한 실시 예들은, 다중 경로 전송 연결 설정 시 각 전자 장치에서 사용을 희망하는 데이터 전송 알고리즘 관련 정보를 다른 전자 장치와 교환함으로써 통신하고자 하는 전자 장치들 간에 서로 동일하거나 유사한 동작 특성을 갖는 다중 경로 데이터 전송 알고리즘을 통해 데이터를 송수신할 수 있는 전자 장치 및 다중 경로를 이용한 데이터 전송 방법을 제공할 수 있다.Various embodiments of the present invention provide a method and apparatus for exchanging data transmission algorithm related information desired to be used in each electronic device with another electronic device in a multi-path transmission connection establishment, It is possible to provide an electronic device capable of transmitting and receiving data through a path data transmission algorithm and a data transmission method using multipath.

또한, 본 발명의 다양한 실시 예들은, 사용자가 애플리케이션별로 다중 경로를 이용한 데이터 전송 알고리즘을 상이하게 설정할 수 있도록 함으로써, 사용자별로 또는 애플리케이션별로 차별화된 데이터 전송 요구사항을 만족시킬 수 있는 전자 장치 및 다중 경로를 이용한 데이터 전송 방법을 제공할 수 있다.In addition, various embodiments of the present invention allow for a user to set different data transmission algorithms on a per application-by-application basis, thereby providing an electronic device capable of satisfying differentiated data transfer requirements on a user- Can be provided.

전술한 과제 또는 다른 과제를 해결하기 위한, 한 실시 예에 따른 전자 장치는, 데이터를 송신 및 수신 처리하는 통신부; 및 다른 전자 장치와의 데이터 전송 연결 설정 시, 상기 통신부를 통해 송신 또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하고, 상기 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하도록 제어하는 제어부;를 포함할 수 있다.According to an embodiment of the present invention, there is provided an electronic device including: a communication unit for transmitting and receiving data; And data associated with the other of the plurality of multipath data transmission algorithms based on information associated with at least one multipath data transmission algorithm transmitted or received via the communication unit when establishing a data transmission connection with another electronic device And a controller for controlling transmission and reception of data according to the determined multi-path data transmission algorithm.

또한, 다양한 실시 예 중 어느 하나에 따른 다중 경로를 이용한 데이터 전송 방법은, 다른 전자 장치와의 데이터 전송 연결 설정 시, 송신 또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하는 동작; 및 상기 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하는 동작;을 포함할 수 있다.In addition, the multi-path data transmission method according to any one of the various embodiments may further include, when setting up a data transmission connection with another electronic device, transmitting, based on information related to at least one multi- Determining a multi-path data transmission algorithm to be used for transmission of data with the other electronic device among the multi-path data transmission algorithms; And transmitting or receiving data according to the determined multipath data transmission algorithm.

다양한 실시 예에 따른 전자 장치 및 전자 장치의 정보 제공 방법은, 다중 경로 전송 기능을 지원하는 프로토콜(예컨대, MPTCP, SCTP 등)을 적용할 경우, 데이터 전송 속도 향상 또는 끊김 없는 데이터 서비스 등을 제공할 수 있다.The electronic device and the information providing method of the electronic device according to various embodiments provide a data transmission speed enhancement or seamless data service when a protocol supporting a multipath transmission function (for example, MPTCP, SCTP, etc.) is applied .

또한, 본 발명의 다양한 실시 예에 따르면, 다중 경로 설정 시 각 엔티티가 사용을 희망하는 데이터 전송 알고리즘 관련 정보를 교환함으로써 각 피어 엔티티 사이에서 동일한 또는 유사한 동작 특성을 갖는 알고리즘을 통해 데이터를 송수신할 수 있다.Further, according to various embodiments of the present invention, it is possible to transmit and receive data through an algorithm having the same or similar operating characteristics among the respective peer entities by exchanging information related to a data transmission algorithm that each entity desires to use in multipath setting have.

이에 따라, 각 사용자별 또는 각 애플리케이션별로 특정 네트워크(예컨대, 셀룰라(cellular) 네트워크)를 사용한 데이터의 전송량을 제어할 수 있게 되며 사용자 또는 애플리케이션의 속성에 맞는 데이터 서비스 제공이 가능하게 된다. 예컨대, 본 발명의 다양한 실시 예에 따르면, 사용자가 각 애플리케이션별로 차별화된 다중 경로 데이터 전송 알고리즘을 설정할 수 있으며, 설정된 알고리즘으로 다중 경로를 이용한 데이터를 송수신함으로써, 각 사용자의 데이터 사용 제한 조건 내에서 사용자의 요구사항 또는 애플리케이션의 특성을 모두 만족시키는 서비스의 제공이 가능하게 된다.Accordingly, it is possible to control the amount of data transmission using a specific network (e.g., a cellular network) for each user or each application, and to provide a data service suited to the attributes of a user or an application. For example, according to various embodiments of the present invention, a user can set up a multi-path data transmission algorithm differentiated for each application, and by transmitting and receiving data using a multi-path with an established algorithm, It is possible to provide a service that satisfies all the requirements of the application or the characteristics of the application.

도 1은 본 발명의 다양한 실시 예에 따른 네트워크 구성 예를 나타내는 도면이다.
도 2는 본 발명의 다양한 실시 예에 따른 전자 장치의 세부 구성 예를 나타내는 블록도이다.
도 3은 본 발명의 다양한 실시 예에 따른 다중 경로를 이용한 데이터 전송 절차를 나타내는 흐름도이다.
도 4는 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다.
도 5는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 전송 연결 설정 절차를 나타내는 흐름도이다.
도 6은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다.
도 7은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 전송 연결 설정 절차를 나타내는 흐름도이다.
도 8은 본 발명의 다양한 실시 예에 따른 전송 알고리즘 식별을 위한 데이터 필드를 나타내는 도면이다.
도 9는 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다.
도 10은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다.
도 11은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다.
도 12는 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다.
도 13은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다.
도 14는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 전송 연결 설정 절차를 나타내는 흐름도이다.
도 15는 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다.
도 16은 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다.
도 17은 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다.
도 18a는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다.
도 18b는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다.
도 19는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다.
도 20은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다.
도 21은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다.
도 22는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 데이터 사용 내역 화면을 나타내는 도면이다.
도 23은 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다.
도 24는 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다.
도 25는 본 발명의 실시 예에 따른 전자 장치의 세부 구조를 나타내는 블록도이다.
도 26은 본 발명의 다양한 실시 예에 따른 프로그램 모듈의 블록도이다.
1 is a diagram showing an example of a network configuration according to various embodiments of the present invention.
2 is a block diagram illustrating a detailed configuration example of an electronic device according to various embodiments of the present invention.
3 is a flowchart illustrating a data transmission procedure using multiple paths according to various embodiments of the present invention.
4 is a signal flow diagram between devices for multipathing in accordance with various embodiments of the present invention.
5 is a flow diagram illustrating a procedure for establishing a transport connection in an electronic device according to various embodiments of the present invention.
6 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention.
7 is a flow diagram illustrating a procedure for establishing a transport connection in an electronic device according to various embodiments of the present invention.
8 is a diagram illustrating a data field for transmission algorithm identification according to various embodiments of the present invention.
9 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention.
10 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention.
11 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention.
12 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention.
Figure 13 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention.
14 is a flow diagram illustrating a procedure for establishing a transport connection in an electronic device according to various embodiments of the present invention.
15 is a diagram illustrating an operational flow in an electronic device according to various embodiments of the present invention.
16 is a diagram illustrating the operational flow within an electronic device according to various embodiments of the present invention.
17 is a diagram illustrating an operational flow in an electronic device according to various embodiments of the present invention.
18A is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention.
18B is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention.
19 is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention.
20 is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention.
21 is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention.
22 is a view showing a data usage history screen in an electronic device according to various embodiments of the present invention.
23 is a diagram illustrating an operational flow within an electronic device according to various embodiments of the present invention.
24 is a diagram illustrating an operational flow within an electronic device according to various embodiments of the present invention.
25 is a block diagram showing a detailed structure of an electronic device according to an embodiment of the present invention.
26 is a block diagram of a program module in accordance with various embodiments of the present invention.

이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.Various embodiments of the invention will now be described with reference to the accompanying drawings. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes various modifications, equivalents, and / or alternatives of the embodiments of the invention. In connection with the description of the drawings, like reference numerals may be used for similar components.

본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.In this document, the expressions "have," "may," "include," or "include" may be used to denote the presence of a feature (eg, a numerical value, a function, Quot ;, and does not exclude the presence of additional features.

본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", " A 및 B 중 적어도 하나", 또는 " A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.In this document, the expressions "A or B," "at least one of A and / or B," or "one or more of A and / or B," etc. may include all possible combinations of the listed items . For example, "A or B," "at least one of A and B," or "at least one of A or B" includes (1) at least one A, (2) Or (3) at least one A and at least one B all together.

다양한 실시 예에서 사용된 "제 1", "제 2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 해당 구성요소들을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 수 있다. 예를 들면, 제 1 사용자 기기와 제 2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.Expressions such as " first, "second," first, "or" second, " as used in various embodiments, Not limited. The representations may be used to distinguish one component from another. For example, the first user equipment and the second user equipment may represent different user equipment, regardless of order or importance. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be named as the first component.

어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.(Or functionally or communicatively) coupled with / to "another component (eg, a second component), or a component (eg, a second component) Quot; connected to ", it is to be understood that any such element may be directly connected to the other element or may be connected through another element (e.g., a third element). On the other hand, when it is mentioned that a component (e.g., a first component) is "directly connected" or "directly connected" to another component (e.g., a second component) It can be understood that there is no other component (e.g., a third component) between other components.

본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성(또는 설정)된 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 애플리케이션 프로세서(application processor))를 의미할 수 있다.As used herein, the phrase " configured to " (or set) to be "adapted to, " To be designed to, "" adapted to, "" made to, "or" capable of ". The term " configured (or set) to "may not necessarily mean " specifically designed to" Instead, in some situations, the expression "configured to" may mean that the device can "do " with other devices or components. For example, a processor configured (or configured) to perform the phrases "A, B, and C" may be a processor dedicated to performing the operation (e.g., an embedded processor), or one or more software programs A generic-purpose processor (e.g., a CPU or an application processor) capable of performing the corresponding operations.

본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 일반적으로 사용되는 사전에 정의된 용어들은 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미를 가지는 것으로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 발명의 실시 예들을 배제하도록 해석될 수 없다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the scope of the other embodiments. The singular expressions may include plural expressions unless the context clearly dictates otherwise. All terms used herein, including technical or scientific terms, may have the same meaning as commonly understood by one of ordinary skill in the art. Commonly used predefined terms may be interpreted to have the same or similar meaning as the contextual meanings of the related art and are not to be construed as ideal or overly formal in meaning unless expressly defined in this document . In some cases, the terms defined in this document can not be construed to exclude embodiments of the present invention.

본 발명의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 전자 장치는 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상 전화기, 전자북 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device)(예: 스마트 안경, 머리 착용형 장치(head-mounted-device(HMD)), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 스마트 미러, 또는 스마트 와치(smart watch))중 적어도 하나를 포함할 수 있다.An electronic device in accordance with various embodiments of the present invention can be used in various applications such as, for example, a smartphone, a tablet personal computer, a mobile phone, a videophone, an e-book reader reader, a desktop personal computer, a laptop personal computer, a netbook computer, a workstation, a server, a personal digital assistant (PDA), a portable multimedia player (PMP) , Mobile medical devices, cameras, or wearable devices such as smart glasses, head-mounted-devices (HMD), electronic apparel, electronic bracelets, electronic necklaces, (e. g., apps, e-tat, smart mirror, or smart watch).

어떤 실시 예들에서, 전자 장치는 스마트 가전 제품(smart home appliance)일 수 있다. 스마트 가전 제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSync™, 애플TV™, 또는 구글 TV™), 게임 콘솔(예: Xbox™, PlayStation™), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.In some embodiments, the electronic device may be a smart home appliance. Smart home appliances include, for example, televisions, digital video disk players, audio, refrigerators, air conditioners, vacuum cleaners, ovens, microwaves, washing machines, air cleaners, set- (Such as a home automation control panel, a security control panel, a TV box such as Samsung HomeSync ™, Apple TV ™ or Google TV ™), a game console (eg Xbox ™, PlayStation ™) A dictionary, an electronic key, a camcorder, or an electronic frame.

다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller’s machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things; IoT)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.In an alternative embodiment, the electronic device may be any of a variety of medical devices (e.g., various portable medical measurement devices such as a blood glucose meter, a heart rate meter, a blood pressure meter, or a body temperature meter), magnetic resonance angiography (MRA) A global positioning system receiver, an event data recorder (EDR), a flight data recorder (FDR), an automotive infotainment device, a navigation system, a navigation system, Electronic devices (eg marine navigation devices, gyro compass, etc.), avionics, security devices, head units for vehicles, industrial or home robots, ATMs (automatic teller's machines) point of sale, or internet of things (IoT), such as light bulbs, various sensors, electricity or gas meters, sprinkler devices, fire alarms, thermostats, streetlights, toasters aster, a fitness equipment, a hot water tank, a heater, a boiler, etc.).

어떤 실시 예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시 예에 따른 전자 장치는 플렉서블 전자 장치일 수 있다. 또한, 본 발명의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.According to some embodiments, the electronic device is a piece of furniture or a part of a building / structure, an electronic board, an electronic signature receiving device, a projector, Water, electricity, gas, or radio wave measuring instruments, etc.). In various embodiments, the electronic device may be a combination of one or more of the various devices described above. An electronic device according to some embodiments may be a flexible electronic device. In addition, the electronic device according to the embodiment of the present invention is not limited to the above-described devices, and may include a new electronic device according to technological advancement.

또한, 후술하는 본 발명의 다양한 실시 예들에서, 전자 장치는 "서버(server)", "호스트(host)" 또는 "피어(peer)"라는 용어로 사용될 수 있으나, 상기 용어는 본 발명의 다양한 실시 예에 대한 이해를 돕기 위한 예로서 사용되었으며, 상기 전자 장치의 예로서 사용된 용어들이 본 발명의 적용 범위를 특정 실시 예로 한정하는 것은 아니다.Also, in various embodiments of the invention described below, an electronic device may be used with the terms "server", "host" or "peer" And the terms used as examples of the electronic device do not limit the scope of the present invention to the specific embodiments.

또한, 후술하는 본 발명의 다양한 실시 예들에서, 본 발명이 적용되는 다중 경로 전송 기능을 지원하는 프로토콜의 예로서 MPTCP 전송 프로토콜을 예를 들어 설명하고 있으나, 본 발명의 실시 예들이 상기 MPTCP 전송 프로토콜에 한정되는 것은 아니며, 다중 경로 전송 기능을 지원하는 어떠한 프로토콜에도 본 발명의 실시 예들이 적용될 수 있다. 예컨대, SCTP(stream control transmission protocol) 등과 같이 다양한 형태의 다중 경로 전송 기능을 지원하는 프로토콜에 적용될 수 있다.Also, in various embodiments of the present invention described below, an MPTCP transmission protocol is exemplified as an example of a protocol supporting the multi-path transmission function to which the present invention is applied. However, when the embodiments of the present invention are applied to the MPTCP transmission protocol The embodiments of the present invention can be applied to any protocol that supports the multipath transmission function. For example, the present invention can be applied to a protocol supporting various types of multipath transmission functions such as a stream control transmission protocol (SCTP).

도 1은 본 발명의 다양한 실시 예에 따른 네트워크 구성 예를 나타내는 도면이다. 도 1을 참조하면, 본 발명의 다양한 실시 예에 따라 제1 전자 장치(101)와 제2 전자 장치(102)는 네트워크(110)를 통해 연결될 수 있다. 예컨대, 제1 전자 장치(101) 및/또는 제2 전자 장치(102)가 다중 경로 전송 프로토콜(예컨대, MPTCP) 기능을 지원할 경우, 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 다중 경로로 연결될 수 있다. 이에 따라, 제1 전자 장치(101)에서는 하나의 애플리케이션에서 요청하는 데이터에 대해 제2 전자 장치(102)와 설정된 복수의 전송 경로(예컨대, Wifi(wireless fidelity) 및 LTE(long term evolution))를 통해 송수신할 수 있다.1 is a diagram showing an example of a network configuration according to various embodiments of the present invention. Referring to FIG. 1, a first electronic device 101 and a second electronic device 102 may be connected through a network 110 in accordance with various embodiments of the present invention. For example, when the first electronic device 101 and / or the second electronic device 102 support a multipath transmission protocol (e.g., MPTCP) function, the first electronic device 101 and the second electronic device 102, Can be connected by multiple paths. Accordingly, the first electronic device 101 transmits a plurality of transmission paths (e.g., wireless fidelity (Wifi) and long term evolution (LTE)) to the second electronic device 102 for the data requested by one application .

상기 네트워크(110)는 적어도 하나의 무선 통신 네트워크 또는 적어도 하나의 유선 통신 네트워크를 포함할 수 있으며, 서버와 전자 장치, 또는 전자 장치들 간의 통신을 제공할 수 있다. 예를 들면, 상기 네트워크(110)는 무선 통신 방식으로서 Wifi, BT(Bluetooth), NFC(near field communication), GPS(global positioning system) 또는 셀룰라(cellular) 통신(예컨대, LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro 또는 GSM 등) 중 적어도 하나를 포함할 수 있다. 또한, 유선 통신 방식으로서, 예를 들어, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 적어도 하나를 포함할 수 있다.The network 110 may include at least one wireless communication network or at least one wired communication network and may provide communication between the server and electronic or electronic devices. For example, the network 110 may be a Wifi, Bluetooth, NFC, GPS, or cellular communication (e.g., LTE, LTE-A, CDMA , WCDMA, UMTS, WiBro or GSM, etc.). The wired communication method may include at least one of a universal serial bus (USB), a high definition multimedia interface (HDMI), a recommended standard 232 (RS-232) or a plain old telephone service (POTS) .

도 2는 본 발명의 다양한 실시 예에 따른 전자 장치의 세부 구성 예를 나타내는 블록도이다. 도 2를 참조하면, 본 발명의 다양한 실시 예에 따른 전자 장치(200)는 제어부(210), 저장부(220), 통신부(230), 또는 표시부(240) 중 적어도 하나를 포함하여 구성될 수 있다. 상기 제어부(210)는 알고리즘 설정부(211), 전송 연결 설정부(212), 알고리즘 결정부(213), 또는 송수신 처리부(214) 중 적어도 하나를 포함할 수 있다. 또한, 상기 저장부(220)는 애플리케이션(221), API(222), 미들웨어(예컨대, 프레임워크)(223), 또는 커널(224) 중 적어도 하나를 포함할 수 있다.2 is a block diagram illustrating a detailed configuration example of an electronic device according to various embodiments of the present invention. 2, an electronic device 200 according to various embodiments of the present invention may include at least one of a control unit 210, a storage unit 220, a communication unit 230, or a display unit 240 have. The control unit 210 may include at least one of an algorithm setting unit 211, a transmission connection setting unit 212, an algorithm determining unit 213, and a transmission / reception processing unit 214. The storage 220 may also include at least one of an application 221, an API 222, a middleware (e.g., a framework 223), or a kernel 224.

예컨대, 저장부(220)에 저장된 애플리케이션(221)이 실행되어 상기 전자 장치(200) 외부의 다른 전자 장치로 데이터를 요청할 수 있다. 이하에서는 상기 전자 장치(200)를 '제1 전자 장치' 또는 '호스트 A'라 하고, 상기 외부의 다른 전자 장치 또는 서버를 '제2 전자 장치' 또는 '호스트 B'라 한다. 본 발명의 다양한 실시 예들에서 상기 전자 장치들은 각각 호스트의 기능을 수행할 수도 있으며, 어느 하나의 전자 장치가 호스트의 기능을 수행하고 다른 하나의 전자 장치가 클라이언트(또는, 슬레이브 장치)의 기능을 수행할 수도 있다.For example, the application 221 stored in the storage unit 220 may be executed to request data from another electronic device outside the electronic device 200. [ Hereinafter, the electronic device 200 will be referred to as a "first electronic device" or "host A", and the external electronic device or server will be referred to as a "second electronic device" or "host B". In the various embodiments of the present invention, the electronic devices may perform functions of a host, one of the electronic devices performs a function of a host, and the other electronic device performs functions of a client (or a slave device) You may.

상기 제어부(210)의 알고리즘 설정부(211)는 복수의 다중 경로 데이터 전송 알고리즘들 중 적어도 하나의 알고리즘을 설정하는 기능을 수행할 수 있다. 상기 알고리즘은 모든 애플리케이션에 동일하게 적용되도록 설정할 수도 있으며, 각 애플리케이션별로 상이하게 적용되도록 설정할 수도 있다. 또한, 상기 알고리즘은 특정 조건에 따라 변경되도록 설정할 수도 있다. 상기 알고리즘을 설정하는 방법에 대한 구체적인 예시들은 도 18a, 도 18b, 도 19, 도 20, 및 도 21에서 설명하기로 한다. 또한, 본 발명의 다양한 실시 예에 따라 상기 알고리즘 설정을 위한 사용자 인터페이스(UI; user interface) 화면을 상기 표시부(240)를 통해 표시할 수도 있다. 상기 알고리즘 설정부(211)를 통한 알고리즘 설정 동작은 선택적으로 수행될 수 있다.The algorithm setting unit 211 of the control unit 210 may perform a function of setting at least one algorithm among a plurality of multipath data transmission algorithms. The algorithm may be set to apply equally to all applications, or may be set to be applied differently for each application. In addition, the algorithm may be set to change according to a specific condition. Specific examples of how to set the algorithm will be described in Figs. 18A, 18B, 19, 20, and 21. Fig. Also, according to various embodiments of the present invention, a user interface (UI) screen for setting the algorithm may be displayed through the display unit 240. The algorithm setting operation through the algorithm setting unit 211 can be selectively performed.

전송 연결 설정부(212)는 상기 전자 장치(200)에서 다른 전자 장치로의 전송 연결을 설정하는 기능을 수행할 수 있다. 상기 전송 연결 설정 동작은 예컨대, TCP 프로토콜에 의한 전송 연결 동작에 기반할 수 있다. 상기 TCP 프로토콜에 의한 전송 연결 방식이 적용될 경우, SYN, SYN+ACK, 및 ACK 의 신호 전송을 포함하는 3-웨이 핸드쉐이킹(3-way handshaking) 절차가 진행될 수 있다. 후술하는 다양한 실시 예들에서는 전송 연결 설정의 방식으로서 상기 3-웨이 핸드쉐이킹을 예로서 설명하나 본 발명의 실시 예들이 상기 방식에 한정되는 것은 아니다.The transmission connection establishing unit 212 may perform a function of establishing a transmission connection from the electronic device 200 to another electronic device. The transport connection establishment operation may be based on, for example, a transport connection operation by the TCP protocol. When a transmission connection scheme based on the TCP protocol is applied, a 3-way handshaking process including SYN, SYN + ACK, and ACK signal transmission may be performed. In the various embodiments described below, the 3-way handshaking is described as an example, but the embodiments of the present invention are not limited thereto.

또한, 상기 전송 연결 설정부(212)는 본 발명의 다양한 실시 예들에 따라 다중 경로 전송 연결을 위한 추가 서브플로우(additional subflow) 설정 동작을 더 포함할 수도 있다. 상기 추가 서브플로우 설정 동작은 예컨대, TCP 프로토콜에 의한 전송 연결 동작에 기반할 수 있다. 상기 추가 서브플로우 설정 동작에 의해 설정된 데이터 전송 연결 설정 방식은 초기 연결 설정 방식과 동일한 통신 방식이 사용될 수도 있으며, 상이한 통신 방식이 사용될 수도 있다. 예컨대, 상기 초기 연결 설정 방식으로는 Wifi 통신 방식이 사용될 수 있으며, 상기 추가 서브플로우 설정 방식으로는 LTE 통신 방식이 사용될 수 있다. 상기 전송 연결 설정부(212)의 세부적인 실시 예들은 도 3 이하에서 후술하기로 한다.In addition, the transport connection establishment unit 212 may further include an additional subflow setting operation for a multi-path transport connection according to various embodiments of the present invention. The additional sub-flow setting operation may be based on, for example, a transport connection operation by the TCP protocol. The data transfer connection setting method set by the additional subflow setting operation may be the same communication method as the initial connection setting method, or a different communication method may be used. For example, a Wifi communication scheme may be used as the initial connection establishment scheme, and an LTE communication scheme may be used as the additional subflow establishment scheme. Detailed embodiments of the transmission connection setting unit 212 will be described later with reference to FIG.

알고리즘 결정부(213)는 본 발명의 다양한 실시 예에 따라 상기 전송 연결 설정부(212))를 통한 초기 연결 설정 동작 및/또는 추가 서브 플로우 설정 동작 시 외부의 전자 장치와 송수신되는 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하는 기능을 수행할 수 있다.The algorithm determining unit 213 may determine whether or not at least one of the plurality of multiplexing / demultiplexing units is to be transmitted / received to / from an external electronic device in the initial connection establishment operation and / or the additional subflow setting operation through the transmission connection establishing unit 212 according to various embodiments of the present invention. Path data transmission algorithm to be used for transmission of data with the other electronic device among a plurality of multipath data transmission algorithms based on information related to the path data transmission algorithm.

상기 송수신 처리부(214)는 상기 알고리즘 결정부(213)를 통해 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하도록 통신부(230)를 제어할 수 있다.The transmission / reception processing unit 214 may control the communication unit 230 to transmit or receive data according to the multipath data transmission algorithm determined through the algorithm determination unit 213.

통신부(230)는 상기 전자 장치(200)가 외부의 다른 전자 장치와 데이터를 통신하는 기능을 수행할 수 있으며, 상기 송수신 처리부(214)의 제어에 따라 다중 경로 데이터 전송 알고리즘에 의한 데이터 송수신을 처리할 수 있다. 또한, 상기 통신부(230)는 본 발명의 다양한 실시 예에 따라 다중 경로 데이터 전송 알고리즘을 적용함에 있어, 복수의 통신 모듈들(예컨대, Wifi 모듈 및 LTE 모듈 등)을 포함할 수 있다.The communication unit 230 can perform a function of communicating data with another electronic device in the outside of the electronic device 200. The communication unit 230 processes data transmission and reception by a multipath data transmission algorithm under the control of the transmission / can do. In addition, the communication unit 230 may include a plurality of communication modules (e.g., a Wifi module and an LTE module) in applying the multi-path data transmission algorithm according to various embodiments of the present invention.

한편, 본 발명의 다양한 실시 예에서 각 기능부 또는 모듈이라 함은, 본 발명의 다양한 실시 예의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 각 기능부 또는 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 실시 예의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.In the various embodiments of the present invention, each functional unit or module may mean a functional and structural combination of hardware for performing the technical idea of various embodiments of the present invention and software for driving the hardware. For example, each functional unit or module may refer to a logical unit of a predetermined code and a hardware resource for executing the predetermined code, and may be a code that is physically connected, or a type of hardware Or may be easily deduced to the average expert in the field of the embodiments of the present invention.

본 발명의 다양한 실시 예 중 어느 하나에 따른 전자 장치는, 데이터를 송신 및 수신 처리하는 통신부; 및 다른 전자 장치와의 데이터 전송 연결 설정 시, 상기 통신부를 통해 송신 또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하고, 상기 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하도록 제어하는 제어부;를 포함할 수 있다.An electronic device according to any one of the various embodiments of the present invention includes: a communication unit for transmitting and receiving data; And data associated with the other of the plurality of multipath data transmission algorithms based on information associated with at least one multipath data transmission algorithm transmitted or received via the communication unit when establishing a data transmission connection with another electronic device And a controller for controlling transmission and reception of data according to the determined multi-path data transmission algorithm.

본 발명의 다양한 실시 예에 따라, 상기 다중 경로 데이터 전송 알고리즘은, 복수의 통신 방식을 동시에 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제1 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제2 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에서 제2 통신 방식으로 전환하여 사용하는 중 미리 설정된 제3 조건을 만족하면 제1 통신 방식으로 다시 전환하여 사용하는 알고리즘 중 어느 하나 이상을 포함할 수 있다.According to various embodiments of the present invention, the multi-path data transmission algorithm may be an algorithm for simultaneously using a plurality of communication methods, an algorithm for simultaneously using a plurality of communication methods, 2 communication scheme, an algorithm for switching to and using a second communication scheme when a second condition set in advance during use by the first communication scheme among the plurality of communication schemes is satisfied, an algorithm for switching among the plurality of communication schemes 1 communication scheme to the second communication scheme and switching to the first communication scheme if the predetermined third condition is satisfied while using the second communication scheme.

본 발명의 다양한 실시 예에 따라, 상기 제1 조건은 상기 제2 조건과 상이한 기준을 가질 수 있다.According to various embodiments of the present invention, the first condition may have a different criterion than the second condition.

본 발명의 다양한 실시 예에 따라, 상기 통신 방식은, Wifi, BT(Bluetooth), NFC(near field communication), GPS(global positioning system), LTE(long term evolution), LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 어느 하나 이상을 포함할 수 있다.According to various embodiments of the present invention, the communication scheme may be one or more of Wifi, Bluetooth, NFC, GPS, LTE, LTE-A, CDMA, WCDMA, (UMTS), WiBro, GSM, universal serial bus (USB), high definition multimedia interface (HDMI), recommended standard 232 (RS-232) or plain old telephone service (POTS).

본 발명의 다양한 실시 예에 따라, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는, 상기 다른 전자 장치와의 초기 연결 설정 시 송신 또는 수신될 수 있다.According to various embodiments of the present invention, the information associated with the at least one multipath data transmission algorithm may be transmitted or received upon initial connection establishment with the other electronic device.

본 발명의 다양한 실시 예에 따라, 상기 초기 연결 설정은, TCP(transmission control protocol) 프로토콜에 의해 설정될 수 있다.According to various embodiments of the present invention, the initial connection establishment may be established by a transmission control protocol (TCP) protocol.

본 발명의 다양한 실시 예에 따라, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는, 상기 다른 전자 장치와의 초기 연결 설정 이후, 다중 경로 연결 설정을 위한 추가 서브플로우 설정 시 송신 또는 수신될 수 있다.According to various embodiments of the present invention, the information associated with the at least one multipath data transmission algorithm may be transmitted or received at additional sub-flow settings for multipath connection establishment after initial connection establishment with the other electronic device have.

본 발명의 다양한 실시 예에 따라, 상기 추가 서브플로우 설정은, MPTCP(multipath transmission control protocol) 프로토콜 및 SCTP(stream control transmission protocol) 중 적어도 하나에 의해 설정될 수 있다.According to various embodiments of the present invention, the additional sub-flow setting may be established by at least one of a multipath transmission control protocol (MPTCP) protocol and a stream control transmission protocol (SCTP).

본 발명의 다양한 실시 예에 따라, 상기 전자 장치는, 상기 다중 경로 데이터 전송 알고리즘에 대한 설정 화면을 표시하는 표시부;를 더 포함할 수 있다.According to various embodiments of the present invention, the electronic device may further include a display unit for displaying a setting screen for the multipath data transmission algorithm.

본 발명의 다양한 실시 예에 따라, 상기 다중 경로 데이터 전송 알고리즘은, 상기 전자 장치에 설치된 복수의 애플리케이션 각각에 대해 상기한 알고리즘으로 설정할 수 있다.According to various embodiments of the present invention, the multi-path data transmission algorithm may be set with the algorithm described above for each of a plurality of applications installed in the electronic device.

도 3은 본 발명의 다양한 실시 예에 따른 다중 경로를 이용한 데이터 전송 절차를 나타내는 흐름도이다. 도 3을 참조하면, 동작 301에서 복수의 다중 경로 데이터 전송 알고리즘들 중에서 적어도 하나의 다중 경로 데이터 전송 알고리즘을 설정할 수 있다. 상기 알고리즘의 설정은 각 애플리케이션별로 설정할 수도 있으며, 사용자별로 설정할 수도 있다. 상기 알고리즘의 설정 동작은 본 발명의 다양한 실시 예에 따라 생략될 수도 있다.3 is a flowchart illustrating a data transmission procedure using multiple paths according to various embodiments of the present invention. Referring to FIG. 3, at operation 301, at least one of the plurality of multipath data transmission algorithms may be set up in a multipath data transmission algorithm. The setting of the algorithm may be set for each application or may be set for each user. The setting operation of the algorithm may be omitted according to various embodiments of the present invention.

동작 303에서, 전자 장치에서 다른 전자 장치로의 데이터 송신 또는 수신이 요청되면, 동작 305에서 적어도 하나의 다중 경로 데이터 전송 알고리즘 정보를 송신 및/또는 수신할 수 있다. 예컨대, 데이터를 송수신할 다른 전자 장치와의 연결 설정(예컨대, TCP 프로토콜에 의한 연결 설정) 시, 본 발명의 다양한 실시 예에 따라 다중 경로 데이터 전송 알고리즘에 관한 정보를 송신하거나 수신함으로써, 전자 장치들 간의 다중 경로 데이터 전송 알고리즘에 관한 정보를 교환할 수 있다.At operation 303, at least one of the multipath data transmission algorithm information may be transmitted and / or received at operation 305 if the transmission or reception of data from the electronic device to another electronic device is requested. By transmitting or receiving information about a multipath data transmission algorithm in accordance with various embodiments of the present invention, for example, in establishing a connection with another electronic device to send and receive data (e.g., establishing a connection by a TCP protocol) Information about the multi-path data transmission algorithm can be exchanged.

동작 307에서는, 상기 송신 및/또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘 관련 정보를 기반으로 데이터 전송에 사용할 알고리즘을 결정할 수 있다. 동작 309에서는, 상기에서 결정된 알고리즘으로 데이터를 전송할 수 있다.In operation 307, an algorithm to be used for data transmission may be determined based on at least one of the transmitted and / or received multi-path data transmission algorithm related information. In operation 309, data may be transmitted with the algorithm determined above.

상기 도 3에 도시된 동작들 중 적어도 하나의 동작이 생략되어 실행될 수도 있으며, 적어도 하나의 다른 동작이 상기 동작들 사이에 추가될 수도 있다. 또한, 상기 도 3의 동작들은 도시된 순서로 처리될 수도 있으며, 적어도 하나의 동작에 대한 실행 순서가 다른 동작의 실행 순서와 변경되어 처리될 수도 있다.At least one of the operations shown in FIG. 3 may be omitted and at least one other operation may be added between the operations. In addition, the operations of FIG. 3 may be processed in the order shown, and the execution order for at least one operation may be changed and processed according to the execution order of other operations.

본 발명의 다양한 실시 예 중 어느 하나에 따른 다중 경로를 이용한 데이터 전송 방법은, 다른 전자 장치와의 데이터 전송 연결 설정 시, 송신 또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하는 동작; 및 상기 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하는 동작;을 포함할 수 있다.The multi-path data transmission method according to any one of the various embodiments of the present invention is a multi-path data transmission method using multiple paths based on information related to at least one multi- Determining a multi-path data transmission algorithm for use in transmission of data with the other electronic device among the multi-path data transmission algorithms of the multi-path data transmission algorithms; And transmitting or receiving data according to the determined multipath data transmission algorithm.

본 발명의 다양한 실시 예에 따라, 상기 다중 경로 데이터 전송 알고리즘은, 복수의 통신 방식을 동시에 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제1 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제2 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에서 제2 통신 방식으로 전환하여 사용하는 중 미리 설정된 제3 조건을 만족하면 제1 통신 방식으로 다시 전환하여 사용하는 알고리즘 중 어느 하나 이상을 포함할 수 있다.According to various embodiments of the present invention, the multi-path data transmission algorithm may be an algorithm for simultaneously using a plurality of communication methods, an algorithm for simultaneously using a plurality of communication methods, 2 communication scheme, an algorithm for switching to and using a second communication scheme when a second condition set in advance during use by the first communication scheme among the plurality of communication schemes is satisfied, an algorithm for switching among the plurality of communication schemes 1 communication scheme to the second communication scheme and switching to the first communication scheme if the predetermined third condition is satisfied while using the second communication scheme.

본 발명의 다양한 실시 예에 따라, 상기 제1 조건은 상기 제2 조건과 상이한 기준을 가질 수 있다.According to various embodiments of the present invention, the first condition may have a different criterion than the second condition.

본 발명의 다양한 실시 예에 따라, 상기 통신 방식은, Wifi, BT(Bluetooth), NFC(near field communication), GPS(global positioning system), LTE(long term evolution), LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 어느 하나 이상을 포함할 수 있다.According to various embodiments of the present invention, the communication scheme may be one or more of Wifi, Bluetooth, NFC, GPS, LTE, LTE-A, CDMA, WCDMA, (UMTS), WiBro, GSM, universal serial bus (USB), high definition multimedia interface (HDMI), recommended standard 232 (RS-232) or plain old telephone service (POTS).

본 발명의 다양한 실시 예에 따라, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는, 상기 다른 전자 장치와의 초기 연결 설정 시 송신 또는 수신될 수 있다.According to various embodiments of the present invention, the information associated with the at least one multipath data transmission algorithm may be transmitted or received upon initial connection establishment with the other electronic device.

본 발명의 다양한 실시 예에 따라, 상기 초기 연결 설정은, TCP(transmission control protocol) 프로토콜에 의해 설정될 수 있다.According to various embodiments of the present invention, the initial connection establishment may be established by a transmission control protocol (TCP) protocol.

본 발명의 다양한 실시 예에 따라, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는, 상기 다른 전자 장치와의 초기 연결 설정 이후, 다중 경로 연결 설정을 위한 추가 서브플로우 설정 시 송신 또는 수신될 수 있다.According to various embodiments of the present invention, the information associated with the at least one multipath data transmission algorithm may be transmitted or received at additional sub-flow settings for multipath connection establishment after initial connection establishment with the other electronic device have.

본 발명의 다양한 실시 예에 따라, 상기 추가 서브플로우 설정은, MPTCP(multipath transmission control protocol) 프로토콜 및 SCTP(stream control transmission protocol) 중 적어도 하나에 의해 설정될 수 있다.According to various embodiments of the present invention, the additional sub-flow setting may be established by at least one of a multipath transmission control protocol (MPTCP) protocol and a stream control transmission protocol (SCTP).

본 발명의 다양한 실시 예에 따라, 상기 다중 경로 데이터 전송 알고리즘을 설정하는 동작;을 더 포함할 수 있다.According to various embodiments of the present invention, the method may further comprise setting the multi-path data transmission algorithm.

본 발명의 다양한 실시 예에 따라, 상기 다중 경로 데이터 전송 알고리즘은, 상기 전자 장치에 설치된 복수의 애플리케이션 각각에 대해 상이한 알고리즘으로 설정할 수 있다.According to various embodiments of the present invention, the multipath data transmission algorithm may be set with a different algorithm for each of a plurality of applications installed in the electronic device.

도 4는 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다. 도 4를 참조하면, 동작 410에서 제1 전자 장치(101)에서는 제2 전자 장치(102)와 초기 연결이 설정될 수 있다. 또한, 다중 경로 전송 연결에 따라 동작 420에서 상기 제1 전자 장치(101)는 상기 제2 전자 장치(102)와 추가 서브플로우가 설정될 수 있다. 예컨대, 상기 초기 연결 설정에 따라 상기 제1 전자 장치(101)의 어드레스 A1으로 상기 제2 전자 장치(102)의 어드레스 B1과 연결될 수 있으며, 상기 추가 서브플로우 설정에 따라 상기 제1 전자 장치(101)의 어드레스 A2로 상기 제2 전자 장치(102)의 어드레스 B1과 연결될 수 있다.4 is a signal flow diagram between devices for multipathing in accordance with various embodiments of the present invention. Referring to FIG. 4, an initial connection may be established with the second electronic device 102 at the first electronic device 101 at operation 410. Further, in operation 420, according to the multipath transmission connection, the first electronic device 101 may be configured with the second electronic device 102 and additional sub-flows. For example, the first electronic device 101 may be connected to the address B1 of the second electronic device 102 with the address A1 of the first electronic device 101 according to the initial connection setting, May be coupled to the address B1 of the second electronic device 102 at address A2.

상기 도 4를 참조하여 본 발명의 실시 예를 구체적으로 설명하기에 앞서, 다중 경로 전송 연결을 위해 사용되는 프로토콜의 예로서 MPTCP를 사용할 경우의 프로토콜 구성을 설명하기로 한다.Before describing the embodiment of the present invention with reference to FIG. 4, a protocol configuration when MPTCP is used as an example of a protocol used for multipath transmission connection will be described.

예컨대, 도 4에 도시된 절차에서 MPTCP를 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 초기 연결은 TCP 연결과 동일한 절차로 이루어질 수 있다. 상기 초기 연결 설정 시 각 전자 장치(101, 102)는 상대방 전자 장치로 MPTCP를 지원함을 알리게 되고, 두 전자 장치(101, 102) 모두 MPTCP를 지원함이 확인되면 초기 연결 설정 이후 추가적인 연결 설정(즉, 추가 서브플로우 설정)이 이루어 질 수 있다. 이러한 절차를 반복하여 두 전자 장치(101, 102) 사이에는 복수의 전송 연결(transport connection)이 생성될 수 있다.For example, the initial connection between the first electronic device 101 supporting the MPTCP and the second electronic device 102 in the procedure shown in FIG. 4 may be the same procedure as the TCP connection. Upon establishment of the initial connection, each of the electronic devices 101 and 102 informs that the partner electronic device supports MPTCP. If it is confirmed that both electronic devices 101 and 102 support MPTCP, Additional sub-flow setting) can be performed. By repeating this procedure, a plurality of transport connections can be created between the two electronic devices 101, 102.

복수의 전송 연결이 생성되면 데이터 전송을 위해 다양한 알고리즘이 사용될 수 있다. 예를 들어 복수의 전송 연결을 동시에 사용하는 알고리즘을 사용함으로써 전송 속도(throughput)를 향상시킬 수도 있고, 여러 개의 전송 연결 중 하나의 전송 연결만을 사용하여 데이터를 전송하다가 데이터의 전송이 원활하지 않을 경우 다른 전송 연결로 전환하여 데이터를 전송하는 알고리즘을 사용함으로써 전송 속도 향상은 없지만 끊김 없이 서비스를 제공할 수도 있다. 또한, 하나의 전송 연결을 사용하여 데이터를 전송하다가 다른 전송 연결로 전환할 때 다양한 전환 기준(예컨대, 전환 감도 또는 성능)에 따라 전환되도록 다양한 알고리즘을 구현할 수도 있다.When multiple transport connections are created, various algorithms can be used for data transmission. For example, it is possible to improve the throughput by using an algorithm that uses a plurality of transmission connections at the same time, or to transmit data using only one transmission connection among a plurality of transmission connections, By using an algorithm that transfers data by switching to another transport connection, there is no improvement in transmission speed, but the service may be provided seamlessly. In addition, various algorithms may be implemented to switch according to various switching criteria (e.g., switching sensitivity or performance) when transferring data using one transmission connection and switching to another transmission connection.

보다 구체적인 실시 예를 들어 설명하면, 모바일 단말에서 Wifi, 셀룰러 네트워크 등 2개 이상의 무선 인터페이스가 제공될 수 있다. 상기 MPTCP와 같이 다중 경로 전송 기능을 지원하는 전송 프로토콜을 모바일 단말에 적용할 경우 데이터 전송 속도 향상 또는 끊김 없는 데이터 서비스 등을 제공할 수 있다.More specifically, two or more wireless interfaces, such as Wifi and a cellular network, may be provided in a mobile terminal. When a transmission protocol supporting the multi-path transmission function such as MPTCP is applied to a mobile terminal, it is possible to provide a data transmission speed improvement or seamless data service.

다중 경로 전송 기능을 지원하는 프로토콜에서는 사용되고 있는 데이터 전송 알고리즘에 따라 셀룰러 네트워크를 사용한 데이터 전송량이 달라질 수 있다. 예를 들어 Wifi와 셀룰러 네트워크를 동시에 사용하여 데이터를 전송하는 알고리즘을 사용하면 셀룰러 네트워크를 사용한 데이터 전송량은 크게 증가할 수 있다. 반면에 Wifi를 우선적으로 사용하여 데이터를 전송하다가 데이터 전송이 원활하지 않을 경우 데이터 전송이 양호한 셀룰러 네트워크로 전환하여 데이터를 전송하는 알고리즘을 사용하면 셀룰러 네트워크를 사용한 데이터 전송량은 줄어들게 된다. 이때, Wifi에서 셀룰러 네트워크로 전환하는 조건에 따라 셀룰러 네트워크를 이용한 데이터 전송량은 달라질 수 있다.In a protocol supporting the multipath transmission function, the data transmission amount using the cellular network may be changed according to the data transmission algorithm being used. For example, using an algorithm that transmits data using Wifi and a cellular network at the same time can greatly increase the amount of data traffic using a cellular network. On the other hand, if Wifi is used for the first time and data transmission is not smooth, data transmission using a cellular network is reduced by using an algorithm for data transmission by switching to a cellular network having good data transmission. At this time, the data transmission amount using the cellular network may be changed according to the condition of switching from Wifi to cellular network.

일반적으로 셀룰러 네트워크에서는 송수신되는 데이터 양에 따라 사용자가 지불해야 하는 비용이 크게 증가할 수 있다. 따라서, 셀룰러 네트워크를 통해 전송되는 데이터 양에 대한 적절한 조절이 필요하며, 이는 사용자의 요금 체계, 사용자의 성향, 애플리케이션의 유형 등을 고려하여 결정될 수 있다. 예를 들어 적은 양의 데이터만 사용 가능한 사용자 A가 있다고 가정할 때, 사용자 A가 많은 데이터를 전송하는 VOD(video on demand) 애플리케이션 사용 시 Wifi와 셀룰러 네트워크를 동시에 사용하여 데이터를 전송한다면 셀룰러 네트워크 사용 요금이 크게 증가할 수 있다. 반면에 채팅 애플리케이션과 같은 경우는 실시간성이 중요하지만 송수신되는 데이터 양이 작으므로 셀룰러 네트워크를 통한 데이터 전송에 큰 문제가 되지 않을 수 있다. 또한, 사용자 A의 경우 웹 서핑(web surfing)을 장시간 사용하게 되면 송수신되는 데이터 양이 커질 수도 있으므로, 웹 서핑 시 셀룰러 네트워크를 사용한 데이터 전송은 가능한 줄일 수 있다. 반면에 많은 양의 데이터 사용이 가능한 사용자 B의 경우에는 웹 서핑 시에도 셀룰러 네트워크를 사용한 데이터 전송이 문제가 되지 않을 수 있다.Generally, in a cellular network, the cost that a user has to pay can be greatly increased depending on the amount of data transmitted and received. Accordingly, an appropriate adjustment to the amount of data transmitted over the cellular network is needed, which may be determined by considering the user's tariff, user preference, type of application, and the like. For example, assume that there is a user A who can use only a small amount of data. If user A uses a video on demand (VOD) application that transmits a large amount of data, The fee can be greatly increased. On the other hand, in the case of a chat application, the real time property is important, but the amount of data to be transmitted / received is small, so that data transmission through the cellular network may not be a big problem. Also, in case of the user A, since the amount of data to be transmitted / received may increase when the web surfing is used for a long time, data transmission using the cellular network during web surfing can be reduced as much as possible. On the other hand, in case of the user B who can use a large amount of data, data transmission using the cellular network may not be a problem even when surfing the web.

본 발명의 다양한 실시 예들에서는 이와 같은 다양한 상황을 고려하여 복수의 다중 경로 데이터 전송 알고리즘들 중에서 최적의 다중 경로 데이터 전송 알고리즘을 적용할 수 있는 다양한 실시 예들을 개시한다.Various embodiments of the present invention disclose various embodiments in which an optimal multi-path data transmission algorithm can be applied among a plurality of multi-path data transmission algorithms in consideration of such various situations.

도 4를 다시 참조하면, 동작 410에서 다중 경로를 이용한 데이터 전송을 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 초기 연결 시 각 전자 장치(101, 102)는 상대방에게 다중 경로(multipath) 기능을 지원한다는 정보와 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(예컨대, 프로파일들(profiles))를 송수신할 수 있다. 두 전자 장치(101, 102)가 모두 다중 경로 전송 기능을 지원할 경우 동작 420에서 추가적인 연결 설정이 수행될 수 있다.Referring again to FIG. 4, at the initial connection between the first electronic device 101 and the second electronic device 102 supporting multi-path data transmission in operation 410, each electronic device 101, (E.g., profiles) related to multipath data transmission algorithms wishing to use with information that supports a multipath function. If both electronic devices 101 and 102 support the multipath transmission function, an additional connection setup may be performed at operation 420.

이후 상기 전자 장치들(101, 102) 중 적어도 하나의 전자 장치는 상대방으로부터 전달받은 다중 경로 데이터 전송 알고리즘 관련 정보를 고려하여 데이터 전송에 사용할 알고리즘을 선택할 수 있으며, 상기 선택된 다중 경로 데이터 전송 알고리즘을 이용하여 데이터를 전송할 수 있다.At least one of the electronic devices 101 and 102 may then select an algorithm to be used for data transmission considering information related to the multipath data transmission algorithm received from the other party, Data can be transmitted.

도 5는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 전송 연결 설정 절차를 나타내는 흐름도이다. 도 5를 참조하면, 동작 501에서 전자 장치(이하, 제1 전자 장치라 한다.)가 다른 전자 장치(이하, 제2 전자 장치라 한다.)와의 전송 연결(transport connection) 설정 요청을 받으면, 동작 503에서 상기 제2 전자 장치와의 초기 연결 설정 동작을 수행할 수 있다. 상기 전송 연결 설정 요청은 애플리케이션의 실행에 따라 요청될 수도 있다.5 is a flow diagram illustrating a procedure for establishing a transport connection in an electronic device according to various embodiments of the present invention. 5, when an electronic device (hereinafter, referred to as a first electronic device) receives a request to establish a transport connection with another electronic device (hereinafter referred to as a second electronic device) in operation 501, At 503, an initial connection establishment operation with the second electronic device can be performed. The transmission connection establishment request may be requested according to the execution of the application.

본 발명의 다양한 실시 예에 따라, 상기 제1 전자 장치는 상기 초기 연결 설정 시 제2 전자 장치로부터 다중 경로 전송 기능을 지원하는지 여부와 상기 제2 전자 장치가 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보를 전달받을 수 있다.According to various embodiments of the present invention, the first electronic device determines whether the second electronic device supports a multipath transmission function from the second electronic device during the initial connection establishment and a multipath data transmission algorithm Related information.

동작 505에서, 상기 제2 전자 장치가 다중 경로 전송 기능을 지원하지 않으면 동작 515에서, 제1 전자 장치는 단일 경로(single path) 통신 모드로 동작할 수 있다.At operation 505, if the second electronic device does not support the multipath transmission function, then at operation 515, the first electronic device may operate in a single path communication mode.

반면, 상기 동작 505에서, 상기 제2 전자 장치가 다중 경로 전송 기능을 지원한다면, 동작 507에서 제1 전자 장치는 상기 제2 전자 장치로부터 수신된 다중 경로 데이터 전송 알고리즘 관련 정보를 저장할 수 있다.On the other hand, if, at the operation 505, the second electronic device supports the multipath transmission function, then at operation 507, the first electronic device may store information related to the multipath data transmission algorithm received from the second electronic device.

동작 509에서, 상기 제1 전자 장치에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘을 고려할 때, 상기 제2 전자 장치로부터 수신된 다중 경로 데이터 전송 알고리즘이 수용 가능(acceptable)하다면, 상기 제1 전자 장치는 동작 511에서 추가 서브플로우 설정(additional subflow setup) 절차를 진행하고, 동작 513에서 다중 경로(multipath) 통신 모드로 동작할 수 있다.In operation 509, if the multipath data transmission algorithm received from the second electronic device is acceptable, considering the multipath data transmission algorithm that it wishes to use in the first electronic device, May proceed in an additional subflow setup procedure at operation 511 and may operate in a multipath communication mode at operation 513. [

반면, 상기 동작 509에서, 상기 제2 전자 장치로부터 수신된 다중 경로 데이터 전송 알고리즘이 상기 제1 전자 장치에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘을 고려할 때 수용 가능하지 않다면, 상기 제1 전자 장치는 상기 제2 전자 장치와 추가 서브플로우 설정 동작을 진행하지 않고, 동작 515에서 단일 경로 통신 모드로 동작할 수 있다.On the other hand, if in operation 509 the multipath data transmission algorithm received from the second electronic device is not acceptable when considering a multipath data transmission algorithm that it wishes to use in the first electronic device, Path communication mode at operation 515 without proceeding with an additional sub-flow setup operation with the second electronic device.

도 6은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다. 도 6을 참조하면, 동작 610에서 다중 경로를 이용한 데이터 전송을 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 초기 연결 시 각 전자 장치(101, 102)는 상대방에게 다중 경로(multipath) 기능을 지원한다는 정보를 송수신할 수 있다. 두 전자 장치(101, 102)가 모두 다중 경로 전송 기능을 지원할 경우 동작 620에서 추가적인 연결 설정이 수행될 수 있다.6 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention. Referring to FIG. 6, during an initial connection between a first electronic device 101 and a second electronic device 102 that support data transmission using multiple paths at operation 610, each electronic device 101, Information that supports the multipath function can be transmitted and received. If both electronic devices 101 and 102 support the multi-path transmission function, an additional connection setup may be performed at operation 620.

본 발명의 다양한 실시 예에 따라 상기 추가적인 연결 설정 동작에서, 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 사용하기를 희망하는 데이터 전송 알고리즘 관련 정보를 송수신할 수 있다. 예컨대, 상기 제1 전자 장치(101) 또는 제2 전자 장치(102)는 상대방으로부터 수신된 알고리즘 관련 정보를 고려하여 데이터 전송에 사용할 알고리즘을 선택할 수 있으며, 상기 선택된 다중 경로 데이터 전송 알고리즘을 이용하여 데이터를 전송할 수 있다.In the additional connection establishment operation according to various embodiments of the present invention, the first electronic device 101 and the second electronic device 102 may send and receive information related to the data transmission algorithm they wish to use. For example, the first electronic device 101 or the second electronic device 102 may select an algorithm to use for data transmission in consideration of algorithm-related information received from the other party, Can be transmitted.

도 7은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 전송 연결 설정 절차를 나타내는 흐름도이다. 도 7을 참조하면, 동작 701에서 전자 장치(이하, 제1 전자 장치라 한다.)가 다른 전자 장치(이하, 제2 전자 장치라 한다.)와의 전송 연결(transport connection) 설정 요청을 받으면, 동작 703에서 상기 제1 전자 장치는 상기 제2 전자 장치와의 초기 연결 설정 동작을 수행할 수 있다. 상기 전송 연결 설정 요청은 애플리케이션의 실행에 따라 요청될 수도 있다.7 is a flow diagram illustrating a procedure for establishing a transport connection in an electronic device according to various embodiments of the present invention. 7, when an electronic device (hereinafter, referred to as a first electronic device) receives a request to establish a transport connection with another electronic device (hereinafter, referred to as a second electronic device) in operation 701, At 703, the first electronic device may perform an initial connection establishment operation with the second electronic device. The transmission connection establishment request may be requested according to the execution of the application.

본 발명의 다양한 실시 예에 따라, 상기 제1 전자 장치는 상기 초기 연결 설정 시 제2 전자 장치로부터 다중 경로 전송 기능을 지원하는지 여부에 관한 정보를 전달받을 수 있다.According to various embodiments of the present invention, the first electronic device may be informed of whether it supports the multipath transmission function from the second electronic device during the initial connection establishment.

동작 705에서, 상기 제2 전자 장치가 다중 경로 전송 기능을 지원하지 않으면 동작 715에서, 제1 전자 장치는 단일 경로(single path) 통신 모드로 동작할 수 있다.At operation 705, if the second electronic device does not support the multipath transmission function, then at operation 715, the first electronic device may operate in a single path communication mode.

반면, 상기 동작 705에서, 상기 제2 전자 장치가 다중 경로 전송 기능을 지원한다면, 동작 707에서 제2 전자 장치와의 추가 서브플로우 설정 절차를 진행할 수 있다. 상기 추가 서브플로우 설정 절차 진행 시, 동작 709에서 제1 전자 장치는 제2 전자 장치로부터 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보를 수신하여 저장할 수 있다.If, on the other hand, in operation 705, the second electronic device supports the multipath transmission function, then in operation 707 an additional sub-flow setup procedure with the second electronic device may proceed. In operation 709, the first electronic device may receive and store multipath data transmission algorithm related information that it desires to use from the second electronic device.

동작 711에서, 상기 제1 전자 장치에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘을 고려할 때, 상기 제2 전자 장치로부터 수신된 다중 경로 데이터 전송 알고리즘이 수용 가능(acceptable)하다면, 상기 제1 전자 장치는 동작 713에서 다중 경로(multipath) 통신 모드로 동작할 수 있다.In operation 711, when considering the multipath data transmission algorithm that the first electronic device desires to use, if the multipath data transmission algorithm received from the second electronic device is acceptable, Lt; RTI ID = 0.0 > 713 < / RTI >

반면, 상기 동작 711에서, 상기 제2 전자 장치로로부터 수신된 다중 경로 데이터 전송 알고리즘이 상기 제1 전자 장치에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘을 고려할 때 수용 가능하지 않다면, 동작 717에서 상기 제1 전자 장치는 상기 제2 전자 장치와 이미 진행된 추가 서브플로우 설정 동작을 종료(close)시키고, 동작 715에서 단일 경로 통신 모드로 동작할 수 있다.On the other hand, if in operation 711 the multipath data transmission algorithm received from the second electronic device is not acceptable considering the multipath data transmission algorithm that it wishes to use in the first electronic device, The first electronic device may close the already performed additional subflow setting operation with the second electronic device and may operate in a single pass communication mode at operation 715. [

도 8은 본 발명의 다양한 실시 예에 따른 전송 알고리즘 식별을 위한 데이터 필드를 나타내는 도면이다. 도 8을 참조하면, 본 발명의 다양한 실시 예에 따라, 전자 장치들 간에 송수신되는 다중 경로 데이터 전송 알고리즘 관련 정보의 예가 개시된다. 도 8에서는 3가지 유형의 다중 경로 데이터 전송 알고리즘을 가정하나, 본 발명의 실시 예들이 이에 한정되는 것은 아니다.8 is a diagram illustrating a data field for transmission algorithm identification according to various embodiments of the present invention. Referring to FIG. 8, an example of information related to multipath data transmission algorithms transmitted and received between electronic devices is disclosed, in accordance with various embodiments of the present invention. Although FIG. 8 assumes three types of multipath data transmission algorithms, the embodiments of the present invention are not limited thereto.

예컨대, 본 발명의 다양한 실시 예에 따라 3가지 유형의 알고리즘으로서, 각각 F(full) 데이터 필드(801), h(half) 데이터 필드(802), l(low) 데이터 필드(803)를 설정함으로써 각 전자 장치가 해당 알고리즘을 지원하는지 여부를 나타낼 수 있다.For example, by setting the F (full) data field 801, the h (half) data field 802, and the l (low) data field 803 as three types of algorithms according to various embodiments of the present invention And may indicate whether or not each electronic device supports the algorithm.

예컨대, F 데이터 필드(801)의 데이터가 1일 경우 해당 전자 장치는 복수의 전송 연결을 동시에 사용하는 알고리즘을 지원함을 나타낼 수 있다. 또한, h 데이터 필드(802)가 1일 경우 해당 전자 장치는 복수의 전송 연결 중 하나의 전송 연결을 사용하여 데이터를 전송하다가 데이터 전송이 원활하지 않을 경우(예컨대, 미리 설정된 제1 조건을 만족할 경우) 데이터 전송이 양호한 다른 전송 연결로 전환하여 데이터를 전송하는 알고리즘을 지원함을 나타낼 수 있다. 또한, l 데이터 필드(803)가 1일 경우 해당 전자 장치는 복수의 전송 연결 중 하나의 전송 연결을 사용하여 데이터를 전송하다가 데이터 전송이 매우 안 좋을 경우(예컨대, 미리 설정된 제2 조건을 만족할 경우) 데이터 전송이 양호한 다른 전송 연결로 전환하여 데이터를 전송하는 알고리즘을 지원함을 나타낼 수 있다. 예컨대, 상기 h 데이터 필드(802)에 대응하는 알고리즘과 상기 l 데이터 필드(803)에 대응하는 알고리즘은 데이터 전송 상태가 불량할 경우 전송 연결을 전환하는 점에는 동일하나, 전환 조건을 상이하게 설정함으로써 서로 다른 알고리즘으로서 구분할 수 있다.For example, if the data of the F data field 801 is 1, the corresponding electronic device may indicate that it supports an algorithm that uses a plurality of transmission connections at the same time. When the h data field 802 is 1, the corresponding electronic device transmits data using one of the plurality of transmission connections. If the data transmission is not smooth (for example, if the first condition is satisfied ) May indicate that the data transmission supports an algorithm for transferring data by switching to another good transport connection. If the data field 803 is 1, the corresponding electronic device transmits data using one of the plurality of transmission connections. If the data transmission is very bad (for example, if the preset second condition is satisfied ) May indicate that the data transmission supports an algorithm for transferring data by switching to another good transport connection. For example, the algorithm corresponding to the h data field 802 and the algorithm corresponding to the l data field 803 are the same as those for switching the transmission connection when the data transmission state is poor, Different algorithms can be distinguished.

보다 구체적인 실시 예를 들어 설명하면, Wifi와 셀룰러 네트워크를 지원하는 모바일 단말에서 예컨대 F 데이터 필드(801)가 1인 경우 셀룰러 네트워크로 많은 데이터가 전송될 수 있다. 또한, 예컨대, h 데이터 필드(802)가 1이고 Wifi를 우선적으로 선택하여 데이터를 전송하게 하면 Wifi 상태가 불안할 경우 수시로 셀룰러 네트워크로 전환되게 되어 끊김 없이 서비스를 제공할 수 있다. 그러나, 이러한 알고리즘은 셀룰러 네트워크로 적지 않은 데이터가 전송될 수 있다. 또한, l 데이터 필드가 1이고 Wifi를 우선적으로 선택하여 데이터를 전송하게 되면 Wifi가 매우 안 좋을 경우에만 셀룰러 네트워크로 전환되므로 약간의 서비스 단절 시간은 있을 수 있지만 셀룰러 네트워크로는 상대적으로 적은 양의 데이터만 전송될 수 있다.For example, if the F data field 801 is 1 in a mobile terminal supporting Wifi and a cellular network, a large amount of data can be transmitted to the cellular network. In addition, for example, if the h data field 802 is 1 and the Wifi is preferentially selected and data is transmitted, if the Wifi state is unstable, the cellular network is switched to the cellular network from time to time, and the service can be seamlessly provided. However, such an algorithm can send less data to the cellular network. In addition, if the data field is 1 and the Wifi is preferentially selected and data is transmitted, the WLAN is switched to the cellular network only when the Wifi is very bad, so there may be some service disconnection time. However, Lt; / RTI >

이하, 도 9 내지 도 13을 참조하여, 본 발명의 다양한 실시 예들에 따라 상기 도 8의 3가지 방식의 알고리즘들을 적용하는 다양한 실시 예들을 설명하기로 한다.Hereinafter, referring to Figs. 9 to 13, various embodiments for applying the three way algorithms of Fig. 8 according to various embodiments of the present invention will be described.

도 9는 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다. 도 9의 실시 예에서는 제1 전자 장치(101)와 제2 전자 장치(102)가 다중 경로 데이터 전송 알고리즘 중 h 데이터 필드가 1인 경우의 알고리즘을 사용하여 데이터를 주고 받기를 희망하는 예를 개시한다.9 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention. In the embodiment of FIG. 9, the first electronic device 101 and the second electronic device 102 illustrate an example of desiring to exchange data by using an algorithm when the h data field of the multipath data transmission algorithm is 1 do.

도 9를 참조하면, 동작 910에서 제1 전자 장치(101)는 제2 전자 장치(102)로 초기 연결을 위한 SYN 신호를 전송할 수 있다. 본 발명의 다양한 실시 예에 따라, 상기 SYN 신호 전송 시, 상기 제1 전자 장치(101)는 MPTCP를 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 연결을 위해 MP_CAPABLE 파라미터를 포함한 SYN 메시지를 제2 전자 장치(102)로 전송할 수 있다. 이때, 상기 MP_CAPABLE 파라미터에는 상기 제1 전자 장치(101)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)가 포함될 수 있다. 후술하는 실시 예들에서는, 상기 다중 경로 데이터 전송 알고리즘 관련 정보가 상기 MP_CAPABLE 파라미터에 포함되어 전송되는 것으로 설명하나, 본 발명의 실시 예들이 이에 한정되는 것은 아니며, 상기 다중 경로 데이터 전송 알고리즘 관련 정보가 상기 MP_CAPABLE 파라미터와는 별도의 정보로 추가되어 전송될 수도 있다.Referring to FIG. 9, at operation 910, the first electronic device 101 may send a SYN signal for initial connection to the second electronic device 102. In accordance with various embodiments of the present invention, upon transmission of the SYN signal, the first electronic device 101 may send an MP_CAPABLE parameter for connection between the first electronic device 101 supporting the MPTCP and the second electronic device 102 To the second electronic device 102. The second electronic device 102 may send a SYN message to the second electronic device 102, In this case, the MP_CAPABLE parameter may include multipath data transmission algorithm related information (F = 0, h = 1, l = 0) desired to be used in the first electronic device 101. In the following embodiments, it is assumed that the MP_CAPABLE parameter includes information related to the multipath data transmission algorithm. However, the present invention is not limited to the MP_CAPABLE parameter, It may be added and transmitted as separate information from the parameter.

제2 전자 장치(102)는 상기 제1 전자 장치(101)로부터 전달받은 알고리즘 관련 정보(F=0, h=1, l=0)와 상기 제2 전자 장치(102)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)를 종합하여 두 전자 장치들 사이에 사용할 다중 경로 데이터 전송 알고리즘을 선택할 수 있다.The second electronic device 102 receives the algorithm related information (F = 0, h = 1, l = 0) transmitted from the first electronic device 101 and the information The multipath data transmission algorithm to be used between the two electronic devices can be selected by combining the information related to the multipath data transmission algorithm (F = 0, h = 1, l = 0).

상기 도 9의 실시 예의 경우, 상기 제1 전자 장치(101)와 제2 전자 장치(102)가 사용을 희망하는 다중 경로 데이터 전송 알고리즘이 동일하므로 h 데이터 필드가 1인 경우의 알고리즘을 사용하기로 결정할 수 있다. 제2 전자 장치(102)는 MP_CAPABLE 파라미터에 상기 제1 전자 장치(101)와의 데이터 전송에 사용하기로 결정한 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)를 포함시켜 전송할 수 있으며, 동작 920에서 상기 정보가 포함된 SYN/ACK 메시지를 제1 전자 장치(101)로 전송할 수 있다.In the case of the embodiment of FIG. 9, since the multipath data transmission algorithm that the first electronic device 101 and the second electronic device 102 desire to use is the same, an algorithm when the h data field is 1 is used You can decide. The second electronic device 102 includes multiprocess data transmission algorithm related information (F = 0, h = 1, l = 0) determined to be used for data transmission with the first electronic device 101 in the MP_CAPABLE parameter And transmit a SYN / ACK message containing the information to the first electronic device 101 at operation 920. [

동작 930에서, 상기 제1 전자 장치(101)는 자신이 희망하는 유형의 알고리즘과 동일한 유형의 알고리즘이 선택되었으므로 연결을 수락하고 ACK 메시지에 MP_CAPABLE 파라미터를 설정하여 제2 전자 장치(102)로 전송할 수 있다.At operation 930, the first electronic device 101 accepts the connection and sets the MP_CAPABLE parameter in the ACK message to the second electronic device 102 since the same type of algorithm as the algorithm of the desired type has been selected have.

이후, 동작 940 내지 동작 960에서, 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 MP_JOIN 파라미터를 포함한 SYN, SYN/ACK, ACK 메시지를 송수신함으로써 추가 서브플로우 설정 절차를 진행할 수 있다. 상기 연결이 설정된 이후 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 h 데이터 필드가 1인 경우에 대응하는 다중 경로 데이터 전송 알고리즘을 사용하여 데이터를 전송할 수 있다.Thereafter, in operation 940 to operation 960, the first electronic device 101 and the second electronic device 102 may proceed to an additional sub-flow setting procedure by transmitting and receiving a SYN, SYN / ACK, and ACK message including the MP_JOIN parameter . After the connection is established, the first electronic device 101 and the second electronic device 102 may transmit data using the corresponding multipath data transmission algorithm if the h data field is one.

도 10은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다. 도 10의 실시 예에서는 제1 전자 장치(101)와 제2 전자 장치(102)가 각각 다중 경로 데이터 전송 알고리즘 중 h 데이터 필드가 1인 경우 및 F 데이터 필드가 1인 경우의 알고리즘을 사용하여 데이터를 송수신하기를 희망하는 예를 개시한다.10 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention. In the embodiment of FIG. 10, the first electronic device 101 and the second electronic device 102 use the algorithm when the h data field is 1 and the F data field is 1, respectively, of the multipath data transmission algorithm, The user wants to transmit / receive the data.

도 10을 참조하면, 동작 1010에서 제1 전자 장치(101)는 제2 전자 장치(102)로 초기 연결을 위한 SYN 신호를 전송할 수 있다. 본 발명의 다양한 실시 예에 따라, 상기 SYN 신호 전송 시, 상기 제1 전자 장치(101)는 MPTCP를 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 연결을 위해 MP_CAPABLE 파라미터를 포함한 SYN 메시지를 제2 전자 장치(102)로 전송할 수 있다. 이때, 상기 MP_CAPABLE 파라미터에는 상기 제1 전자 장치(101)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)가 포함될 수 있다.Referring to FIG. 10, at operation 1010, the first electronic device 101 may transmit a SYN signal for initial connection to the second electronic device 102. In accordance with various embodiments of the present invention, upon transmission of the SYN signal, the first electronic device 101 may send an MP_CAPABLE parameter for connection between the first electronic device 101 supporting the MPTCP and the second electronic device 102 To the second electronic device 102. The second electronic device 102 may send a SYN message to the second electronic device 102, In this case, the MP_CAPABLE parameter may include multipath data transmission algorithm related information (F = 0, h = 1, l = 0) desired to be used in the first electronic device 101.

제2 전자 장치(102)는 상기 제1 전자 장치(101)로부터 전달받은 알고리즘 관련 정보(F=0, h=1, l=0)와 상기 제2 전자 장치(102)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=1, h=0, l=0)를 종합하여 두 전자 장치들 사이에 사용할 다중 경로 데이터 전송 알고리즘을 선택할 수 있다.The second electronic device 102 receives the algorithm related information (F = 0, h = 1, l = 0) transmitted from the first electronic device 101 and the information The multipath data transmission algorithm to be used between the two electronic devices can be selected by combining the information related to the multipath data transmission algorithm (F = 1, h = 0, l = 0).

상기 도 10의 실시 예의 경우, 상기 제1 전자 장치(101)와 제2 전자 장치(102)가 사용을 희망하는 다중 경로 데이터 전송 알고리즘이 서로 상이하지만, 제2 전자 장치(102)에서는 상기 제1 전자 장치(101)에서 전송한 다중 경로 데이터 전송 알고리즘을 수용 가능한 알고리즘으로 판단하고, F 데이터 필드가 1인 경우의 알고리즘을 사용하기로 결정할 수 있다. 제2 전자 장치(102)는 MP_CAPABLE 파라미터에 상기 제1 전자 장치(101)와의 데이터 전송에 사용하기로 결정한 다중 경로 데이터 전송 알고리즘 관련 정보(F=1, h=0, l=0)를 포함시켜 전송할 수 있으며, 동작 1020에서 상기 정보가 포함된 SYN/ACK 메시지를 제1 전자 장치(101)로 전송할 수 있다.In the case of the embodiment of FIG. 10, in the second electronic device 102, the first electronic device 101 and the second electronic device 102 are different from each other in the multipath data transmission algorithm they desire to use, It can be determined that the algorithm of the multipath data transmission transmitted from the electronic device 101 is an acceptable algorithm and that the algorithm when the F data field is 1 is used. The second electronic device 102 includes multiprocess data transmission algorithm related information (F = 1, h = 0, l = 0) determined to be used for data transmission with the first electronic device 101 in the MP_CAPABLE parameter And may send a SYN / ACK message containing the information to the first electronic device 101 at operation 1020. [

제1 전자 장치(101)는 상기 제2 전자 장치(102)로부터 수신된 MP_CAPABLE 파라미터에 포함된 다중 경로 데이터 전송 알고리즘 관련 정보를 확인하고, 상기 수신된 다중 경로 데이터 전송 알고리즘을 수용할 수도 있으며, 상기 제2 전자 장치(102)에서의 판단과는 달리 상기 제2 전자 장치(102)에서 사용하기로 결정한 다중 경로 데이터 전송 알고리즘이 자신이 희망하는 유형의 알고리즘과 차이가 많이 나서 수용할 수 없다고 판단할 수도 있다. 따라서, 예컨대, 상기 제1 전자 장치(101)는 상기 제2 전자 장치(102)와의 MPTCP 연결을 수락하지 않고, 동작 1030에서 ACK 메시지에 MPTCP 옵션을 제거하여 제2 전자 장치(102)로 전송할 수 있다. 이러한 절차를 통해 상기 제1 전자 장치(101)와 제2 전자 장치(102) 사이에는 레거시 TCP(Legacy TCP) 연결이 설정될 수 있다.The first electronic device 101 may identify the multipath data transmission algorithm related information contained in the MP_CAPABLE parameter received from the second electronic device 102 and may accept the received multipath data transmission algorithm, It is determined that the multipath data transmission algorithm determined to be used in the second electronic device 102 is different from the algorithm of the type desired by the second electronic device 102, unlike the judgment in the second electronic device 102 It is possible. Thus, for example, the first electronic device 101 does not accept the MPTCP connection with the second electronic device 102, and can remove the MPTCP option in the ACK message at operation 1030 and send it to the second electronic device 102 have. A legacy TCP (Legacy TCP) connection can be established between the first electronic device 101 and the second electronic device 102 through this procedure.

도 11은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다. 도 11의 실시 예에서는 제1 전자 장치(101)와 제2 전자 장치(102)가 각각 다중 경로 데이터 전송 알고리즘 중 F 데이터 필드가 1인 경우 및 l 데이터 필드가 1인 경우의 알고리즘을 사용하여 데이터를 송수신하기를 희망하는 예를 개시한다.11 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention. In the embodiment of FIG. 11, the first electronic device 101 and the second electronic device 102 each use an algorithm when the F data field of the multipath data transmission algorithm is 1 and the l data field is 1, The user wants to transmit / receive the data.

도 11을 참조하면, 동작 1110에서 제1 전자 장치(101)는 제2 전자 장치(102)로 초기 연결을 위한 SYN 신호를 전송할 수 있다. 본 발명의 다양한 실시 예에 따라, 상기 SYN 신호 전송 시, 상기 제1 전자 장치(101)는 MPTCP를 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 연결을 위해 MP_CAPABLE 파라미터를 포함한 SYN 메시지를 제2 전자 장치(102)로 전송할 수 있다. 이때, 상기 MP_CAPABLE 파라미터에는 상기 제1 전자 장치(101)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=1, h=0, l=0)가 포함될 수 있다.Referring to FIG. 11, at operation 1110, the first electronic device 101 may send a SYN signal for initial connection to the second electronic device 102. In accordance with various embodiments of the present invention, upon transmission of the SYN signal, the first electronic device 101 may send an MP_CAPABLE parameter for connection between the first electronic device 101 supporting the MPTCP and the second electronic device 102 To the second electronic device 102. The second electronic device 102 may send a SYN message to the second electronic device 102, At this time, the MP_CAPABLE parameter may include multipath data transmission algorithm related information (F = 1, h = 0, l = 0) desired to be used in the first electronic device 101.

제2 전자 장치(102)는 상기 제1 전자 장치(101)로부터 전달받은 알고리즘 관련 정보(F=1, h=0, l=0)와 상기 제2 전자 장치(102)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=0, l=1)를 종합하여 두 전자 장치들 사이에 사용할 다중 경로 데이터 전송 알고리즘을 선택할 수 있다.The second electronic device 102 receives the algorithm related information (F = 1, h = 0, l = 0) received from the first electronic device 101 and the information The multipath data transmission algorithm to be used between the two electronic devices can be selected by combining the information related to the multipath data transmission algorithm (F = 0, h = 0, l = 1).

상기 도 11의 실시 예의 경우, 상기 제1 전자 장치(101)와 제2 전자 장치(102)가 사용을 희망하는 다중 경로 데이터 전송 알고리즘이 수용할 수 없을 정도로 차이가 나는 것으로 판단하고, MPTCP 연결을 수락하지 않을 수 있다.In the case of the FIG. 11 embodiment, it is determined that the first electronic device 101 and the second electronic device 102 differ in such a way that the desired multipath data transmission algorithm is unacceptable, and the MPTCP connection You may not accept it.

이에 따라, 동작 1120에서 상기 제2 전자 장치(102)는 SYN/ACK 메시지에 MPTCP 옵션을 제거하여 전송할 수 있다. 상기 제1 전자 장치(101)는 상기 제2 전자 장치(102)로부터 SYN/ACK 메시지에 MPTCP 옵션이 없는 것을 확인하여 MPTCP 연결이 수락되지 않은 것으로 판단할 수 있다. Accordingly, at operation 1120, the second electronic device 102 may remove and transmit the MPTCP option to the SYN / ACK message. The first electronic device 101 may determine from the second electronic device 102 that there is no MPTCP option in the SYN / ACK message to determine that the MPTCP connection is not accepted.

따라서, 상기 제1 전자 장치(101)는 상기 제2 전자 장치(102)와의 MPTCP 연결 절차 없이, 동작 1030에서 ACK 메시지에 MPTCP 옵션을 제거하여 제2 전자 장치(102)로 전송할 수 있다. 이러한 절차를 통해 상기 제1 전자 장치(101)와 제2 전자 장치(102) 사이에는 레거시 TCP(Legacy TCP) 연결이 설정될 수 있다.Thus, the first electronic device 101 may remove the MPTCP option from the ACK message and send it to the second electronic device 102 at operation 1030, without an MPTCP connection procedure with the second electronic device 102. A legacy TCP (Legacy TCP) connection can be established between the first electronic device 101 and the second electronic device 102 through this procedure.

도 12는 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다. 도 12의 실시 예에서는 제1 전자 장치(101)가 3가지 유형의 다중 경로 데이터 전송 알고리즘 중 어느 것을 사용하여도 상관없으며, 제2 전자 장치(102)는 다중 경로 데이터 전송 알고리즘 중 h 데이터 필드가 1인 경우의 알고리즘을 사용하여 데이터를 송수신 하기를 희망하는 예를 개시한다.12 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention. In the embodiment of FIG. 12, the first electronic device 101 may use any of the three types of multipath data transmission algorithms, and the second electronic device 102 may use the h data field of the multipath data transmission algorithm 1 < / RTI > is used to transmit / receive data.

도 12를 참조하면, 동작 1210에서 제1 전자 장치(101)는 제2 전자 장치(102)로 초기 연결을 위한 SYN 신호를 전송할 수 있다. 본 발명의 다양한 실시 예에 따라, 상기 SYN 신호 전송 시, 상기 제1 전자 장치(101)는 MPTCP를 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 연결을 위해 MP_CAPABLE 파라미터를 포함한 SYN 메시지를 제2 전자 장치(102)로 전송할 수 있다. 이때, 상기 MP_CAPABLE 파라미터에는 상기 제1 전자 장치(101)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=1, h=1, l=1)가 포함될 수 있다.Referring to FIG. 12, at operation 1210, the first electronic device 101 may send a SYN signal for initial connection to the second electronic device 102. In accordance with various embodiments of the present invention, upon transmission of the SYN signal, the first electronic device 101 may send an MP_CAPABLE parameter for connection between the first electronic device 101 supporting the MPTCP and the second electronic device 102 To the second electronic device 102. The second electronic device 102 may send a SYN message to the second electronic device 102, In this case, the MP_CAPABLE parameter may include multipath data transmission algorithm related information (F = 1, h = 1, l = 1) desired to be used in the first electronic device 101.

제2 전자 장치(102)는 상기 제1 전자 장치(101)로부터 전달받은 알고리즘 관련 정보(F=1, h=1, l=1)와 상기 제2 전자 장치(102)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)를 종합하여 두 전자 장치들 사이에 사용할 다중 경로 데이터 전송 알고리즘을 선택할 수 있다.The second electronic device 102 receives the algorithm related information (F = 1, h = 1, l = 1) received from the first electronic device 101 and the information The multipath data transmission algorithm to be used between the two electronic devices can be selected by combining the information related to the multipath data transmission algorithm (F = 0, h = 1, l = 0).

상기 도 12의 실시 예의 경우, 상기 제1 전자 장치(101)는 3가지 유형의 다중 경로 데이터 전송 알고리즘 중 어느 것을 사용하여도 상관 없으므로, 상기 제2 전자 장치(102)는 자신이 희망하는 다중 경로 데이터 전송 알고리즘인 h 데이터 필드가 1인 경우의 알고리즘을 사용하기로 결정할 수 있다. 제2 전자 장치(102)는 MP_CAPABLE 파라미터에 상기 제1 전자 장치(101)와의 데이터 전송에 사용하기로 결정한 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)를 포함시킬 수 있으며, 동작 1220에서 상기 정보가 포함된 SYN/ACK 메시지를 제1 전자 장치(101)로 전송할 수 있다.12, the first electronic device 101 may use any of the three types of multipath data transmission algorithms, so that the second electronic device 102 may select one of the multi- It may be decided to use an algorithm when the h data field is 1, which is a data transmission algorithm. The second electronic device 102 may include in the MP_CAPABLE parameter the multipath data transmission algorithm related information (F = 0, h = 1, l = 0) determined to be used for data transmission with the first electronic device 101 And may send a SYN / ACK message containing the information to the first electronic device 101 at operation 1220.

상기 제1 전자 장치(101)는 어느 유형의 알고리즘을 사용하여도 상관이 없으므로 상기 제2 전자 장치(102)가 전송한 MP_CAPABLE 정보를 확인하고, 동작 1230에서, ACK 메시지에 MP_CAPABLE 파라미터를 설정하여 제2 전자 장치(102)로 전송할 수 있다.The first electronic device 101 checks the MP_CAPABLE information transmitted by the second electronic device 102 because it does not matter which type of algorithm is used and in step 1230 sets the MP_CAPABLE parameter in the ACK message 2 < / RTI >

이후, 동작 1240 내지 동작 1260에서, 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 MP_JOIN 파라미터를 포함한 SYN, SYN/ACK, ACK 메시지를 송수신함으로써 추가 서브플로우 설정 절차를 진행할 수 있다. 상기 연결이 설정된 이후 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 h 데이터 필드가 1인 경우에 대응하는 다중 경로 데이터 전송 알고리즘을 사용하여 데이터를 전송할 수 있다.Thereafter, in operation 1240 to operation 1260, the first electronic device 101 and the second electronic device 102 may proceed to an additional sub-flow setup procedure by transmitting and receiving a SYN, SYN / ACK, and ACK message including the MP_JOIN parameter . After the connection is established, the first electronic device 101 and the second electronic device 102 may transmit data using the corresponding multipath data transmission algorithm if the h data field is one.

도 13은 본 발명의 다양한 실시 예에 따른 다중 경로 설정을 위한 장치들 간의 신호 흐름도이다. 도 13의 실시 예에서는 제1 전자 장치(101)와 제2 전자 장치(102)가 다중 경로 데이터 전송 알고리즘 중 h 데이터 필드가 1인 경우의 알고리즘을 사용하여 데이터를 송수신하기를 희망하는 예를 개시한다.Figure 13 is a signal flow diagram between devices for multipath configuration in accordance with various embodiments of the present invention. In the embodiment of Fig. 13, the first electronic device 101 and the second electronic device 102 are examples of desiring to transmit and receive data using an algorithm when the h data field of the multipath data transmission algorithm is 1 do.

도 13을 참조하면, 동작 1310 내지 1330에서 MPTCP를 지원하는 제1 전자 장치(101)와 제2 전자 장치(102) 사이의 연결을 위해, 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 MP_CAPABLE 파라미터를 포함하는 SYN, SYN/ACK, ACK 메시지를 주고 받음으로써 초기 연결 설정 절차를 진행할 수 있다.13, for the connection between the first electronic device 101 and the second electronic device 102 supporting MPTCP in operations 1310 through 1330, the first electronic device 101 and the second electronic device 102 102 may proceed with the initial connection establishment procedure by exchanging SYN, SYN / ACK, and ACK messages including the MP_CAPABLE parameter.

이후, 동작 1340에서 제1 전자 장치(101)는 초기 연결 설정에 새로운 서브 플로우를 추가하기 위해 MP_JOIN 파라미터를 포함한 SYN 메시지를 제2 전자 장치(102)로 전송할 수 있다. 본 발명의 다양한 실시 예에 따라, 상기 MP_JOIN 파라미터에는 상기 제1 전자 장치(101)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)가 포함될 수 있다. 후술하는 실시 예들에서는, 상기 다중 경로 데이터 전송 알고리즘 관련 정보가 상기 MP_JOIN 파라미터에 포함되어 전송되는 것으로 설명하나, 본 발명의 실시 예들이 이에 한정되는 것은 아니며, 상기 MP_JOIN 파라미터와는 별도의 정보로 추가되어 전송될 수도 있다.Thereafter, at operation 1340, the first electronic device 101 may send a SYN message containing the MP_JOIN parameter to the second electronic device 102 to add a new subflow to the initial connection establishment. According to various embodiments of the present invention, the MP_JOIN parameter may include multipath data transmission algorithm related information (F = 0, h = 1, l = 0) that the first electronic device 101 desires to use have. In the following embodiments, it is described that the information related to the multipath data transmission algorithm is included in the MP_JOIN parameter and is transmitted. However, the embodiments of the present invention are not limited thereto, but may be added as separate information from the MP_JOIN parameter Lt; / RTI >

제2 전자 장치(102)는 상기 제1 전자 장치(101)로부터 전달받은 알고리즘 관련 정보(F=0, h=1, l=0)와 상기 제2 전자 장치(102)에서 사용하기를 희망하는 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)를 종합하여 두 전자 장치들 사이에 사용할 다중 경로 데이터 전송 알고리즘을 선택할 수 있다.The second electronic device 102 receives the algorithm related information (F = 0, h = 1, l = 0) transmitted from the first electronic device 101 and the information The multipath data transmission algorithm to be used between the two electronic devices can be selected by combining the information related to the multipath data transmission algorithm (F = 0, h = 1, l = 0).

상기 도 13의 실시 예의 경우, 상기 제1 전자 장치(101)와 제2 전자 장치(102)가 사용을 희망하는 다중 경로 데이터 전송 알고리즘이 동일하므로 h 데이터 필드가 1인 경우의 알고리즘을 사용하기로 결정할 수 있다. 제2 전자 장치(102)는 MP_JOIN 파라미터에 상기 제1 전자 장치(101)와의 데이터 전송에 사용하기로 결정한 다중 경로 데이터 전송 알고리즘 관련 정보(F=0, h=1, l=0)를 포함시킬 수 있으며, 동작 1350에서 상기 정보가 포함된 SYN/ACK 메시지를 제1 전자 장치(101)로 전송할 수 있다.In the case of the embodiment of FIG. 13, since the multipath data transmission algorithms desired by the first electronic device 101 and the second electronic device 102 are the same, an algorithm when the h data field is 1 is used You can decide. The second electronic device 102 may include in the MPJOIN parameter the multipath data transmission algorithm related information (F = 0, h = 1, l = 0) determined to be used for data transmission with the first electronic device 101 And may transmit a SYN / ACK message containing the information to the first electronic device 101 at operation 1350.

동작 1360에서, 상기 제1 전자 장치(101)는 자신이 희망하는 유형의 알고리즘과 동일한 유형의 알고리즘이 선택되었으므로 연결을 수락하고 ACK 메시지에 MP_JOIN 파라미터를 설정하여 제2 전자 장치(102)로 전송함으로써 추가 서브플로우 설정 절차를 진행할 수 있다. 상기 연결이 설정된 이후 상기 제1 전자 장치(101)와 제2 전자 장치(102)는 h 데이터 필드가 1인 경우에 대응하는 다중 경로 데이터 전송 알고리즘을 사용하여 데이터를 전송할 수 있다.At operation 1360, the first electronic device 101 accepts the connection, since the same type of algorithm as the algorithm of its desired type has been selected, and sets the MP_JOIN parameter in the ACK message to send to the second electronic device 102 An additional sub-flow setting procedure can be performed. After the connection is established, the first electronic device 101 and the second electronic device 102 may transmit data using the corresponding multipath data transmission algorithm if the h data field is one.

이하, 도 14 내지 도 24를 참조하여, 본 발명의 다양한 실시 예에 따라 사용자별 또는 애플리케이션별로 다중 경로 데이터 전송 알고리즘을 선택하여 데이터를 전송하는 다양한 실시 예들을 설명하기로 한다.Hereinafter, various embodiments for selecting data and transmitting data by a user or application according to various embodiments of the present invention will be described with reference to FIGS. 14 to 24.

도 14는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 전송 연결 설정 절차를 나타내는 흐름도이다. 도 14를 참조하면, 각 애플리케이션별로 특정한 다중 경로 데이터 전송 알고리즘을 설정하고, 해당 애플리케이션이 실행될 때 설정된 해당 다중 경로 데이터 전송 알고리즘을 적용하여 데이터를 송수신하는 예를 설명한다. 본 발명의 다양한 실시 예에 따라 상기 다중 경로 데이터 전송 알고리즘의 설정 절차는 생략될 수도 있다.14 is a flow diagram illustrating a procedure for establishing a transport connection in an electronic device according to various embodiments of the present invention. Referring to FIG. 14, an example will be described in which a specific multi-path data transmission algorithm is set for each application, and data is transmitted and received by applying the corresponding multi-path data transmission algorithm set when the corresponding application is executed. The procedure for setting up the multi-path data transmission algorithm may be omitted according to various embodiments of the present invention.

동작 1401에서, 전자 장치에서 애플리케이션이 실행되면, 상기 애플리케이션의 실행에 따라 동작 1403에서 데이터 전송이 요청될 수 있다.In operation 1401, when an application is executed in the electronic device, data transfer may be requested in operation 1403 according to the execution of the application.

동작 1405에서, 상기 실행된 애플리케이션에 대응하여 설정된 네트워크 정보(예컨대, 다중 경로 데이터 전송 알고리즘 관련 정보)를 확인하고, 동작 1407에서 상기 확인한 네트워크 정보에 따른 전송 방식으로 데이터를 송수신할 수 있다.In operation 1405, network information (for example, information related to multipath data transmission algorithm) set in response to the executed application is confirmed, and in operation 1407, data can be transmitted and received in a transmission mode according to the confirmed network information.

상기 도 14에 도시된 동작들 중 적어도 하나의 동작이 생략되어 실행될 수도 있으며, 적어도 하나의 다른 동작이 상기 동작들 사이에 추가될 수도 있다. 또한, 상기 도 14의 동작들은 도시된 순서로 처리될 수도 있으며, 적어도 하나의 동작에 대한 실행 순서가 다른 동작의 실행 순서와 변경되어 처리될 수도 있다.At least one of the operations shown in FIG. 14 may be omitted, and at least one other operation may be added between the operations. 14 may be processed in the order shown, and the execution order for at least one operation may be changed and processed in accordance with the execution order of the other operations.

도 15는 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다. 도 15를 참조하면, 애플리케이션(1510)에서 데이터 전송을 위해서는 미들웨어(예컨대, 프레임워크(framework)(1530))에서 제공하는 XX_Socket API(1520)를 사용하여 데이터 전송을 요청할 수 있다. 적어도 하나의 라이브러리(1531)를 포함하는 프레임워크(1530)에서는 애플리케이션(1510)에서 받은 정보와 사용자에 의해 설정된 애플리케이션별 다중 경로 데이터 전송 알고리즘 정보(1532)를 고려하여 커널(kernel)(1550)로 Socket(...) API(1540)를 사용하여 데이터 전송을 요청할 수 있다. 상기 커널(1550)은 해당 정보를 MPTCP와 같은 다중 경로 전송 기능을 제공하는 모듈로 전달할 수 있다. 다중 경로 전송 기능을 제공하는 모듈에서는 설정된 다중 경로 데이터 전송 알고리즘을 사용하여 연결하고자 하는 전자 장치와 다중 경로 연결 설정을 수행하고, 상기 다중 경로 연결에 의해 데이터를 송수신할 수 있다.15 is a diagram illustrating an operational flow in an electronic device according to various embodiments of the present invention. Referring to FIG. 15, in order to transfer data in the application 1510, a data transfer may be requested using the XX_Socket API 1520 provided by the middleware (for example, the framework 1530). The framework 1530 including at least one library 1531 accesses the kernel 1550 in consideration of information received from the application 1510 and application-specific multipath data transmission algorithm information 1532 set by the user The Socket (...) API 1540 can be used to request data transfer. The kernel 1550 may forward the information to a module providing a multipath transmission function such as MPTCP. In a module that provides a multi-path transmission function, a multi-path connection is established with an electronic device to be connected using a set multi-path data transmission algorithm, and data can be transmitted / received through the multi-path connection.

도 16은 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다. 도 16을 참조하면, 애플리케이션(1610)에서 데이터 전송을 위해 프레임워크(framework)(1630)에서 제공하는 XX_Socket API(1620)를 사용하여 데이터 전송을 요청할 수 있다. 프레임워크(1630)에서는 애플리케이션(1610)에서 받은 정보를 고려하여 커널(1680)로 Socket(...) API(1670)를 사용하여 데이터 전송을 요청할 수 있다.16 is a diagram illustrating the operational flow within an electronic device according to various embodiments of the present invention. Referring to FIG. 16, an application 1610 may request a data transfer using the XX_Socket API 1620 provided by a framework 1630 for data transfer. The framework 1630 may request data transmission using the Socket (...) API 1670 in the kernel 1680 in consideration of the information received from the application 1610. [

본 발명의 다양한 실시 예에 따라, 상기 프레임워크(1630)에서 커널(1680)로 전송 요청된 Socket(...) API(1640)는 후킹(hooking)(1660)될 수 있으며, 사용자에 의해 설정된 애플리케이션별 다중 경로 데이터 전송 알고리즘 정보(1650)를 고려하여 커널(kernel)(1680)로 Socket(...) API(1670)를 사용하여 데이터 전송을 요청할 수 있다. 상기 커널(1680)은 해당 정보를 MPTCP와 같은 다중 경로 전송 기능을 제공하는 모듈로 전달할 수 있다. 다중 경로 전송 기능을 제공하는 모듈에서는 설정된 다중 경로 데이터 전송 알고리즘을 사용하여 연결하고자 하는 전자 장치와 다중 경로 연결 설정을 수행하고, 상기 다중 경로 연결에 의해 데이터를 송수신할 수 있다.According to various embodiments of the present invention, the Socket (...) API 1640 requested to be sent from the framework 1630 to the kernel 1680 may be hooked (1660) It is possible to request data transmission using the Socket (...) API 1670 to the kernel 1680 in consideration of the application-specific multi-path data transmission algorithm information 1650. [ The kernel 1680 may forward the information to a module providing a multipath transmission function such as MPTCP. In a module that provides a multi-path transmission function, a multi-path connection is established with an electronic device to be connected using a set multi-path data transmission algorithm, and data can be transmitted / received through the multi-path connection.

도 17은 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다. 도 17을 참조하면, 애플리케이션(1710)에서 데이터 전송을 위해서는 프레임워크(framework)(1730)에서 제공하는 XX_Socket API(1720)를 사용하여 데이터 전송을 요청할 수 있다. 상기 프레임워크(1730)에서는 애플리케이션(1710)에서 받은 정보를 이용하여, 커널(kernel)(1750)로 Socket(...) API(1740)를 사용하여 데이터 전송을 요청할 수 있다.17 is a diagram illustrating an operational flow in an electronic device according to various embodiments of the present invention. Referring to FIG. 17, the application 1710 may request data transmission using the XX_Socket API 1720 provided by the framework 1730 in order to transfer data. The framework 1730 may request data transmission using the Socket API 1740 in the kernel 1750 using the information received from the application 1710.

본 발명의 다양한 실시 예에 따라, 상기 커널(1750)은 사용자에 의해 설정된 애플리케이션별 다중 경로 데이터 전송 알고리즘 정보(1751)를 고려하여 상기 프레임워크(1730)로부터 받은 전송 요청 정보를 MPTCP와 같은 다중 경로 전송 기능을 제공하는 모듈로 전달(1752)할 수 있다. 다중 경로 전송 기능을 제공하는 모듈에서는 설정된 다중 경로 데이터 전송 알고리즘을 사용하여 연결하고자 하는 전자 장치와 다중 경로 연결 설정을 수행하고, 상기 다중 경로 연결에 의해 데이터를 송수신할 수 있다.According to various embodiments of the present invention, the kernel 1750 may transmit transmission request information received from the framework 1730 in consideration of application-specific multi-path data transmission algorithm information 1751 set by the user, (1752) to the module providing the transmission function. In a module that provides a multi-path transmission function, a multi-path connection is established with an electronic device to be connected using a set multi-path data transmission algorithm, and data can be transmitted / received through the multi-path connection.

도 18a는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다. 도 18a는 본 발명의 다양한 실시 예에 따라 전자 장치의 설정 화면(1800)에서 전자 장치에 설치된 모든 애플리케이션에서 공통적으로 사용할 다중 경로 데이터 전송 알고리즘을 설정할 수 있도록 하는 예이다.18A is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention. 18A is an example of enabling a multipath data transmission algorithm to be commonly used in all applications installed in an electronic device in a setting screen 1800 of an electronic device according to various embodiments of the present invention.

상기 도 18a를 참조하면, 예컨대, 사용자는 상기 설정 화면(1800)을 통해 Wifi와 셀룰러 네트워크를 모두 사용하여 데이터를 전송하는 FULL 알고리즘(1810)과 Wifi를 우선적으로 사용하여 데이터를 전송하다가 데이터 전송이 원활하지 않을 경우 데이터 전송이 양호한 셀룰러 네트워크로 전환하는 BACKUP 알고리즘(1820) 중 선택할 수 있다. 또한, 다양한 실시 예에 따라 다중 경로를 이용한 데이터 전송 기능을 OFF(1830)시킬 수도 있다.Referring to FIG. 18A, for example, a user may prefer to use a FULL algorithm 1810 for transmitting data using both Wifi and a cellular network through the setting screen 1800, If it is not, the user can select between the BACKUP algorithm 1820 that switches to a cellular network with good data transmission. Also, according to various embodiments, the data transmission function using the multi-path may be turned off (1830).

도 18b는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다. 도 18b는 본 발명의 다양한 실시 예에 따른 전자 장치의 설정 화면에서 애플리케이션 별로(1840) 상이한 다중 경로 데이터 전송 알고리즘을 설정(1850)할 수 있도록 한 예이다.18B is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention. FIG. 18B is an example of how to set (1850) a different multipath data transmission algorithm for each application 1840 in the configuration screen of an electronic device according to various embodiments of the present invention.

도 18b를 참조하면, 예컨대, 사용자는 상기 설정 화면을 통해 Wifi와 셀룰러 네트워크를 모두 사용하여 데이터를 전송하는 FULL 알고리즘(1810)과 Wifi를 우선적으로 사용하여 데이터를 전송하다가 데이터 전송이 원활하지 않을 경우 데이터 전송이 양호한 셀룰러 네트워크로 전환하는 BACKUP 알고리즘(1820) 중 선택할 수 있다. 또한, 다양한 실시 예에 따라, 각 애플리케이션별로 다중 경로를 이용한 데이터 전송 기능을 OFF(1830)시킬 수도 있다.Referring to FIG. 18B, for example, when a user transmits data using a WIFI and a FULL algorithm 1810 for transmitting data using both the Wifi and the cellular network through the setting screen, if the data transmission is not smooth And a BACKUP algorithm 1820 that switches to a cellular network with good data transmission. Also, according to various embodiments, the data transmission function using multiple paths may be turned off 1830 for each application.

도 19는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다. 도 19를 참조하면, 본 발명의 다양한 실시 예에 따라 사용자는 전자 장치의 설정 화면(1900)에서 다중 경로를 사용하여 데이터를 전송할지 여부를 설정할 수 있다.19 is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention. Referring to FIG. 19, in accordance with various embodiments of the present invention, a user may set whether to transmit data using multipath in the setting screen 1900 of the electronic device.

본 발명의 다양한 실시 예에 따라 다중 경로를 사용하여 데이터를 전송하도록 설정(1910)되어 있을 경우 데이터 전송에 사용될 알고리즘을 선택할 수 있다. 또한, 다중 경로 데이터 전송 알고리즘 설정 메뉴(1920)를 선택하면, 전술한 도 18a에서와 같이 모든 애플리케이션에 공통적으로 적용할 다중 경로 데이터 전송 알고리즘을 선택하게 할 수도 있고, 도 18b에서와 같이 애플리케이션 별로 다른 다중 경로 데이터 전송 알고리즘을 선택하게 할 수도 있다.And may select an algorithm to be used for data transmission if the data is to be transmitted (1910) using multipath in accordance with various embodiments of the present invention. If the multi-path data transmission algorithm setting menu 1920 is selected, a multi-path data transmission algorithm to be commonly applied to all applications may be selected as shown in FIG. 18A. Alternatively, as shown in FIG. 18B, And may select a multipath data transmission algorithm.

도 20은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다.20 is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention.

전술한 바와 같이 Wifi를 우선적으로 사용하여 데이터를 전송하다가 데이터 전송이 원활하지 않을 경우 데이터 전송이 양호한 셀룰러 네트워크로 전환하여 데이터를 전송하는 알고리즘의 경우 Wifi에서 셀룰러 네트워크로 전환하는 조건에 따라 서비스 단절 시간, 셀룰러 네트워크를 이용한 데이터 전송량 등이 달라질 수 있다. 상기 알고리즘에 따르면 데이터를 송수신하는 전자 장치들 사이에 동일한 또는 유사한 동작 특성을 가지는 다중 경로 데이터 전송 알고리즘을 사용할 수 있다.As described above, if the data transmission is not smooth while data is transmitted using Wifi preferentially, in the case of an algorithm for transmitting data by switching to a cellular network having good data transmission, the service disconnection time , The amount of data transmission using a cellular network, and the like. According to the algorithm, a multipath data transmission algorithm having the same or similar operating characteristics can be used between the electronic devices that send and receive data.

상기 도 20에 도시된 실시 예에서는 Wifi를 우선적으로 사용하여 데이터를 송수신하다가 데이터 전송이 어느 정도 안 좋아져 제1 조건을 만족하는 경우에 빠르게 셀룰러 네트워크로 전환되는 HIGH 알고리즘(2010)과 Wifi를 우선적으로 사용하여 데이터를 송수신하다가 데이터 전송이 많이 나빠져 제2 조건을 만족하는 경우에 셀룰러 네트워크로 전환되는 LOW 알고리즘(2020)의 두 개의 알고리즘을 지원하는 실시 예를 고려할 수 있다. 상기 실시 예에서는 애플리케이션별로 HIGH 또는 LOW 알고리즘을 설정할 수 있으며, 다중 경로를 이용한 데이터 전송 기능을 OFF(2030)시킬 수도 있다.In the embodiment shown in FIG. 20, the HIGH algorithm 2010 in which data is transmitted / received preferentially using Wifi, and data transmission is somewhat improved, and is quickly switched to the cellular network when the first condition is satisfied, and Wifi And the LOW algorithm 2020 is switched to the cellular network when the second condition is satisfied when data transmission is much worse when data is transmitted or received using the LOW algorithm. In the above embodiment, a HIGH or LOW algorithm may be set for each application, and a data transmission function using multi-paths may be turned off (2030).

도 21은 본 발명의 다양한 실시 예에 따른 전자 장치에서의 알고리즘 설정 화면을 나타내는 도면이다. 도 21을 참조하면, 본 발명의 다양한 실시 예에 따라 다중 경로 데이터 전송 기능을 지원하는 애플리케이션과 지원하지 않는 기존(Legacy) 애플리케이션이 혼재할 경우, 애플리케이션별로 다른 다중 경로 데이터 전송 알고리즘을 설정할 수 있도록 한 화면(2100) 예이다.21 is a diagram showing an algorithm setting screen in an electronic device according to various embodiments of the present invention. 21, when an application supporting multi-path data transfer function and an unsupported legacy application are mixed according to various embodiments of the present invention, Screen 2100 is an example.

Browser 애플리케이션(2120), Chat 애플리케이션(2040), 및 VOD(2050) 애플리케이션은 다중 경로 데이터 전송 기능을 지원한다고 가정하고, Game1 애플리케이션(2160), Game2 애플리케이션(2070), 및 Weather 애플리케이션(2180)은 다중 경로 데이터 전송 기능을 지원하지 않는 기존(Legacy) 애플리케이션이라고 가정할 수 있다. 다양한 실시 예에 따라 상기 각 애플리케이션 별 다중 경로 데이터 전송 알고리즘 지원 여부는 애플리케이션 개발 시 개발자에 의해 디폴트(default) 값으로 설정될 수도 있다.It is assumed that the Browser application 2120, the Chat application 2040 and the VOD 2050 application support the multipath data transfer function and the Game1 application 2160, the Game2 application 2070, and the Weather application 2180 are multi It can be assumed that it is a legacy application that does not support the path data transfer function. According to various embodiments, whether or not the multi-path data transmission algorithm for each application is supported may be set to a default value by a developer when an application is developed.

사용자는 다중 경로 데이터 전송 기능을 지원하는 애플리케이션의 경우 애플리케이션에서 설정한 알고리즘을 사용할지, 사용자가 별도로 설정한 알고리즘을 사용할지 여부를 오버라이드(Override) 메뉴(2110)를 통해 결정할 수 있다. 본 발명의 다양한 실시 예에 따라, 도 21에서는 Browser 애플리케이션(2120)의 경우 애플리케이션에서 설정된 알고리즘을 사용하도록 할 수 있다. 이러한 경우 사용자에 의한 알고리즘 선택 메뉴는 비활성화(2130)될 수 있다.The user can determine, through an override menu 2110, whether to use an algorithm set by the application or an algorithm set by the user for an application supporting the multipath data transmission function. In accordance with various embodiments of the present invention, in FIG. 21, the Browser application 2120 may be enabled to use an algorithm set in the application. In this case, the algorithm selection menu by the user may be deactivated (2130).

Chat 애플리케이션(2140), VOD 애플리케이션(2150)에서는 애플리케이션에서 설정된 알고리즘을 무시하고 사용자가 별도로 설정한 알고리즘을 사용하도록 할 수 있다. Game1 애플리케이션(2160), Game2 애플리케이션(2170), Weather 애플리케이션(2180)과 같이 다중 경로 데이터 전송 알고리즘을 지원하지 않는 기존(Legacy) 애플리케이션의 경우에는 오버라이드(2110) 선택 메뉴가 비활성화 될 수도 있다.The Chat application 2140 and the VOD application 2150 can ignore the algorithm set in the application and use the algorithm set by the user separately. In the case of legacy applications that do not support multipath data transfer algorithms such as Game1 application 2160, Game2 application 2170, Weather application 2180, the override 2110 selection menu may be deactivated.

도 22는 본 발명의 다양한 실시 예에 따른 전자 장치에서의 데이터 사용 내역 화면을 나타내는 도면이다. 도 22를 참조하면, 사용자가 다중 경로 데이터 전송 알고리즘을 선택하는데 관련 정보를 제공하는 화면(2200)을 제공할 수 있다.22 is a view showing a data usage history screen in an electronic device according to various embodiments of the present invention. Referring to FIG. 22, a user may provide a screen 2200 that provides relevant information in selecting a multipath data transmission algorithm.

본 발명의 다양한 실시 예에 따라, 도 18b에서 상술한 설정 화면에서 각 애플리케이션을 선택하고 기간 정보를 입력하면 해당 애플리케이션(2210)이 주어진 기간 동안 사용한 총 데이터 정보(2220), Wifi를 이용하여 사용한 데이터 정보(2230), 셀룰러 네트워크를 이용하여 사용한 데이터 정보(2240), 다중 경로 전송 기능을 통해 사용한 데이터 정보(2250)를 각각 보여 줄 수 있다. 사용자는 총 사용한 데이터 정보와 본인의 데이터 요금제를 고려하여 해당 애플리케이션에 대해 어떤 다중 경로 데이터 전송 알고리즘을 선택할 것인지 결정할 수 있다.According to various embodiments of the present invention, when each application is selected on the setting screen described above with reference to FIG. 18B and period information is input, the total data information 2220 used by the application 2210 for a given period of time, Information 2230, data information 2240 used using the cellular network, and data information 2250 used through the multipath transmission function, respectively. The user can decide which multi-path data transmission algorithm to choose for the application, taking into account the total data information and his data plan.

도 23은 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다. 도 23은 다중 경로 데이터 전송 기능을 지원하지 않는 기존(Legacy) 애플리케이션(예컨대, Game2)에 대해서 사용자가 Wi-Fi와 셀룰러 네트워크를 동시에 사용하는 다중 경로 데이터 전송 알고리즘(예컨대, HIGH)을 이용하도록 설정한 경우의 동작 예이다.23 is a diagram illustrating an operational flow within an electronic device according to various embodiments of the present invention. 23 is a flowchart illustrating a method for setting up a multi-path data transmission algorithm (e.g., HIGH) in which a user uses Wi-Fi and a cellular network simultaneously for a legacy application (e.g., Game 2) Is an example of the operation in one case.

도 23을 참조하면, 애플리케이션(Game2)(2310)에서 데이터 전송을 위해서는 프레임워크(framework)(2330)에서 제공하는 XX_Socket API(2320)를 사용하여 데이터 전송을 요청할 수 있다. 적어도 하나의 라이브러리(2331)를 포함하는 프레임워크(2330)에서는 애플리케이션(Game2)(2310)에서 받은 정보와 사용자에 의해 설정된 애플리케이션별 다중 경로 데이터 전송 알고리즘 정보(2332)(QoS=HIGH)를 고려하여 커널(kernel)(2350)로 Socket(mptcp, algo_high,...) API(2340)를 사용하여 데이터 전송을 요청할 수 있다. 상기 커널(2350)은 해당 정보를 MPTCP와 같은 다중 경로 전송 기능을 제공하는 모듈로 전달할 수 있다. 다중 경로 전송 기능을 제공하는 모듈에서는 설정된 다중 경로 데이터 전송 알고리즘을 사용하여 연결하고자 하는 전자 장치와 다중 경로 연결 설정을 수행하고, 상기 다중 경로 연결에 의해 데이터를 송수신할 수 있다.Referring to FIG. 23, data transmission may be requested using an XX_Socket API 2320 provided by a framework 2330 for data transmission in an application (Game 2) 2310. The framework 2330 including at least one library 2331 considers the information received from the application (Game2) 2310 and the application-specific multipath data transmission algorithm information 2332 (QoS = HIGH) The kernel 2350 may request the data transfer using the Socket (mptcp, algo_high, ...) API 2340. [ The kernel 2350 may forward the information to a module providing a multipath transmission function such as MPTCP. In a module that provides a multi-path transmission function, a multi-path connection is established with an electronic device to be connected using a set multi-path data transmission algorithm, and data can be transmitted / received through the multi-path connection.

도 24는 본 발명의 다양한 실시 예에 따른 전자 장치 내에서의 동작 흐름을 나타내는 도면이다. 도 24는 다중 경로 데이터 전송 기능을 지원하는 애플리케이션(예컨대, VOD)에 대해서 상기 애플리케이션에서 설정된 알고리즘(예컨대, HIGH)을 무시하고, 사용자가 별도로 설정한 알고리즘(예컨대, LOW)을 사용하도록 설정한 경우의 동작 예이다.24 is a diagram illustrating an operational flow within an electronic device according to various embodiments of the present invention. FIG. 24 shows a case where an algorithm (for example, HIGH) set in the application is ignored for an application (e.g., VOD) supporting the multipath data transmission function and the algorithm is set to use a separately set algorithm Fig.

도 24를 참조하면, 애플리케이션(VOD)(2410)에서 데이터 전송을 위해서는 프레임워크(framework)(2430)에서 제공하는 XX_Socket(mptcp, algo_high,...) API(2420)를 사용하여 데이터 전송을 요청할 수 있다. 적어도 하나의 라이브러리(2431)를 포함하는 프레임워크(2430)에서는 애플리케이션(VOD)(2410)에서 받은 정보를 무시하고 사용자에 의해 설정된 애플리케이션별 다중 경로 데이터 전송 알고리즘 정보(2432)(Override=Yes, QoS=LOW)를 고려하여 커널(kernel)(2450)로 Socket(mptcp, algo_low,...) API(2440)를 사용하여 데이터 전송을 요청할 수 있다. 상기 커널(2450)은 해당 정보를 MPTCP와 같은 다중 경로 전송 기능을 제공하는 모듈로 전달할 수 있다. 다중 경로 전송 기능을 제공하는 모듈에서는 설정된 다중 경로 데이터 전송 알고리즘을 사용하여 연결하고자 하는 전자 장치와 다중 경로 연결 설정을 수행하고, 상기 다중 경로 연결에 의해 데이터를 송수신할 수 있다.Referring to FIG. 24, in order to transmit data in an application (VOD) 2410, a data transmission is requested using an API 2420 of XX_Socket (mptcp, algo_high, ...) provided by a framework 2430 . The framework 2430 including at least one library 2431 ignores the information received from the application (VOD) 2410 and transmits application-specific multipath data transmission algorithm information 2432 (Override = Yes, QoS (Mptcp, algo_low,...) API 2440 to the kernel 2450 in consideration of LOW. The kernel 2450 may forward the information to a module providing a multipath transmission function such as MPTCP. In a module that provides a multi-path transmission function, a multi-path connection is established with an electronic device to be connected using a set multi-path data transmission algorithm, and data can be transmitted / received through the multi-path connection.

도 25는 다양한 실시 예에 따른 전자 장치(2501)의 블록도(2500)이다. 상기 전자 장치(2501)는, 예를 들면, 도 2에 도시된 전자 장치(200)의 전체 또는 일부를 포함할 수 있다. 상기 전자 장치(2501)는 하나 이상의 애플리케이션 프로세서(AP: application processor)(2510), 통신 모듈(2520), SIM(subscriber identification module) 카드(2524), 메모리(2530), 센서 모듈(2540), 입력 장치(2550), 디스플레이(2560), 인터페이스(2570), 오디오 모듈(2580), 카메라 모듈(2591), 전력 관리 모듈(2595), 배터리(2596), 인디케이터(2597), 및 모터(2598)를 포함할 수 있다.25 is a block diagram 2500 of an electronic device 2501 according to various embodiments. The electronic device 2501 may include all or part of the electronic device 200 shown in Fig. 2, for example. The electronic device 2501 includes at least one application processor (AP) 2510, a communication module 2520, a SIM (subscriber identification module) card 2524, a memory 2530, a sensor module 2540, A display 2560, an interface 2570, an audio module 2580, a camera module 2591, a power management module 2595, a battery 2596, an indicator 2597, and a motor 2598 .

상기 AP(2510)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 상기 AP(2510)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 상기 AP(2510)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 한 실시 예에 따르면, 상기 AP(2510)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서(image signal processor)를 더 포함할 수 있다. 상기 AP(2510)는 도 25에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(2521))를 포함할 수도 있다. 상기 AP(2510)는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리하고, 다양한 데이터를 비휘발성 메모리에 저장(store)할 수 있다.The AP 2510 may control a plurality of hardware or software components connected to the AP 2510 by, for example, operating an operating system or an application program, and may perform various data processing and operations. The AP 2510 may be implemented as a system on chip (SoC), for example. According to one embodiment, the AP 2510 may further include a graphics processing unit (GPU) and / or an image signal processor. The AP 2510 may include at least a portion (e.g., a cellular module 2521) of the components shown in FIG. The AP 2510 loads or processes commands or data received from at least one of the other components (e.g., non-volatile memory) into the volatile memory and stores the various data in the non-volatile memory .

상기 통신 모듈(2520)은, 예를 들면, 셀룰러 모듈(2521), WIFI 모듈(2523), BT 모듈(2525), GPS 모듈(2527), NFC 모듈(2528) 및 RF(radio frequency) 모듈(2529)을 포함할 수 있다.The communication module 2520 includes a cellular module 2521, a WIFI module 2523, a BT module 2525, a GPS module 2527, an NFC module 2528, and a radio frequency (RF) module 2529 ).

상기 셀룰러 모듈(2521)은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시 예에 따르면, 상기 셀룰러 모듈(2521)은 가입자 식별 모듈(예: SIM 카드(2524))을 이용하여 통신 네트워크 내에서 전자 장치(2501)의 구별 및 인증을 수행할 수 있다. 한 실시 예에 따르면, 상기 셀룰러 모듈(2521)은 상기 AP(2510)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시 예에 따르면, 상기 셀룰러 모듈(2521)은 커뮤니케이션 프로세서(CP: communication processor)를 포함할 수 있다.The cellular module 2521 may provide a voice call, a video call, a text service, or an Internet service, for example, through a communication network. According to one embodiment, the cellular module 2521 may utilize a subscriber identity module (e.g., a SIM card 2524) to perform the identification and authentication of the electronic device 2501 within the communication network. According to one embodiment, the cellular module 2521 may perform at least some of the functions that the AP 2510 can provide. According to one embodiment, the cellular module 2521 may include a communication processor (CP).

상기 WIFI 모듈(2523), 상기 BT 모듈(2525), 상기 GPS 모듈(2527) 또는 상기 NFC 모듈(2528) 각각은, 예를 들면, 해당하는 모듈을 통해서 송수신되는 데이터를 처리하기 위한 프로세서를 포함할 수 있다. 어떤 실시 예에 따르면, 셀룰러 모듈(2521), WIFI 모듈(2523), BT 모듈(2525), GPS 모듈(2527) 또는 NFC 모듈(2528) 중 적어도 일부(예: 두 개 이상)는 하나의 집적 칩(integrated chip)(IC) 또는 IC 패키지 내에 포함될 수 있다.Each of the WIFI module 2523, the BT module 2525, the GPS module 2527 or the NFC module 2528 includes a processor for processing data transmitted and received through a corresponding module . According to some embodiments, at least some (e.g., two or more) of the cellular module 2521, the WIFI module 2523, the BT module 2525, the GPS module 2527, or the NFC module 2528, (IC) or an IC package.

상기 RF 모듈(2529)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. 상기 RF 모듈(2529)은, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter), LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시 예에 따르면, 셀룰러 모듈(2521), WIFI 모듈(2523), BT 모듈(2525), GPS 모듈(2527) 또는 NFC 모듈(2528) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다.The RF module 2529 can transmit and receive a communication signal (e.g., an RF signal), for example. The RF module 2529 may include, for example, a transceiver, a power amplifier module (PAM), a frequency filter, a low noise amplifier (LNA), or an antenna. According to another embodiment, at least one of the cellular module 2521, the WIFI module 2523, the BT module 2525, the GPS module 2527 or the NFC module 2528 transmits and receives RF signals through separate RF modules .

상기 SIM 카드(2524)는, 예를 들면, 가입자 식별 모듈을 포함하는 카드 및/또는 내장 SIM(embedded SIM)을 포함할 수 있으며, 고유한 식별 정보(예: ICCID (integrated circuit card identifier)) 또는 가입자 정보(예: IMSI (international mobile subscriber identity))를 포함할 수 있다.The SIM card 2524 may include, for example, a card containing a subscriber identity module and / or an embedded SIM and may include unique identification information (e.g., an integrated circuit card identifier (ICCID) Subscriber information (e.g., international mobile subscriber identity (IMSI)).

상기 메모리(2530)(예: 저장부(220))는, 예를 들면, 내장 메모리(2532) 또는 외장 메모리(2534)를 포함할 수 있다. 상기 내장 메모리(2532)는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive (SSD)) 중 적어도 하나를 포함할 수 있다.The memory 2530 (e.g., the storage unit 220) may include, for example, an internal memory 2532 or an external memory 2534. [ The built-in memory 2532 may be a volatile memory such as a dynamic RAM, an SRAM or a synchronous dynamic RAM (SDRAM), a non-volatile memory : Programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash) , A hard drive, or a solid state drive (SSD).

상기 외장 메모리(2534)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 상기 외장 메모리(2534)는 다양한 인터페이스를 통하여 상기 전자 장치(2501)와 기능적으로 및/또는 물리적으로 연결될 수 있다.The external memory 2534 may be a flash drive, for example, a compact flash (CF), a secure digital (SD), a micro secure digital (SD) extreme digital), a memory stick, or the like. The external memory 2534 may be functionally and / or physically connected to the electronic device 2501 through various interfaces.

상기 센서 모듈(2540)은, 예를 들면, 물리량을 계측하거나 전자 장치(2501)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 상기 센서 모듈(2540)은, 예를 들면, 제스처 센서(2540A), 자이로 센서(2540B), 기압 센서(2540C), 마그네틱 센서(2540D), 가속도 센서(2540E), 그립 센서(2540F), 근접 센서(2540G), 컬러(color) 센서(예: RGB(red, green, blue) 센서(2540H)), 생체 센서(2540I), 온/습도 센서(2540J), 조도 센서(2540K), 또는 UV(ultra violet) 센서(2540M) 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대안적으로, 상기 센서 모듈(2540)은, 예를 들면, 후각 센서(E-nose sensor), EMG 센서(electromyography sensor), EEG 센서(electroencephalogram sensor), ECG 센서(electrocardiogram sensor), IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 상기 센서 모듈(2540)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(2501)는 AP(2510)의 일부로서 또는 별도로, 센서 모듈(2540)을 제어하도록 구성된 프로세서를 더 포함하여, 상기 AP(2510)가 슬립 (sleep) 상태에 있는 동안, 센서 모듈(2540)을 제어할 수 있다.The sensor module 2540 may, for example, measure a physical quantity or sense an operating state of the electronic device 2501, and convert the measured or sensed information into an electrical signal. The sensor module 2540 includes a gesture sensor 2540A, a gyro sensor 2540B, an air pressure sensor 2540C, a magnetic sensor 2540D, an acceleration sensor 2540E, a grip sensor 2540F, A light sensor 2540G, a light sensor 2540G, a color sensor (e.g., an RGB (red, green, blue) sensor 2540H), a living body sensor 2540I, violet sensor 2540M. Additionally or alternatively, the sensor module 2540 can be, for example, an E-nose sensor, an EMG sensor, an electroencephalogram sensor, an electrocardiogram sensor, an IR infrared sensor, an iris sensor, and / or a fingerprint sensor. The sensor module 2540 may further include a control circuit for controlling at least one sensor included in the sensor module 2540. In some embodiments, the electronic device 2501 further includes a processor configured to control the sensor module 2540, either as part of the AP 2510 or separately, such that during the time the AP 2510 is in a sleep state , And the sensor module 2540 can be controlled.

상기 입력 장치(2550)는, 예를 들면, 터치 패널 (touch panel)(2552), (디지털) 펜 센서(pen sensor)(2554), 키 (key)(2556), 또는 초음파(ultrasonic) 입력 장치(2558)를 포함할 수 있다. 상기 터치 패널(2552)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 상기 터치 패널(2552)은 제어 회로를 더 포함할 수도 있다. 상기 터치 패널(2552)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다.The input device 2550 may include, for example, a touch panel 2552, a (digital) pen sensor 2554, a key 2556, or an ultrasonic input device (2558). The touch panel 2552 may employ, for example, at least one of an electrostatic type, a pressure sensitive type, an infrared type, and an ultrasonic type. In addition, the touch panel 2552 may further include a control circuit. The touch panel 2552 may further include a tactile layer to provide a tactile response to the user.

상기 (디지털) 펜 센서(2554)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트(sheet)를 포함할 수 있다. 상기 키(2556)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 상기 초음파 입력 장치(2558)는 초음파 신호를 발생하는 입력 도구를 통해, 전자 장치(2501)에서 마이크(예: 마이크(2588))로 음파를 감지하여 데이터를 확인할 수 있다.The (digital) pen sensor 2554 may be, for example, part of a touch panel or may include a separate recognition sheet. The key 2556 may include, for example, a physical button, an optical key, or a keypad. The ultrasonic input device 2558 can sense data by sensing sound waves from the electronic device 2501 to a microphone (e.g., a microphone 2588) through an input tool for generating an ultrasonic signal.

상기 디스플레이(2560)는 패널(2562), 홀로그램 장치(2564), 또는 프로젝터(2566)를 포함할 수 있다. 상기 패널(2562)은, 예를 들면, 유연하게 (flexible), 투명하게 (transparent), 또는 착용할 수 있게 (wearable) 구현될 수 있다. 상기 패널(2562)은 상기 터치 패널(2552)과 하나의 모듈로 구성될 수도 있다. 상기 홀로그램 장치(2564)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 상기 프로젝터(2566)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 상기 스크린은, 예를 들면, 상기 전자 장치(2501)의 내부 또는 외부에 위치할 수 있다. 한 실시 예에 따르면, 상기 디스플레이(2560)은 상기 패널(2562), 상기 홀로그램 장치(2564), 또는 프로젝터(2566)를 제어하기 위한 제어 회로를 더 포함할 수 있다.The display 2560 may include a panel 2562, a hologram device 2564, or a projector 2566. The panel 2562 can be embodied, for example, flexible, transparent, or wearable. The panel 2562 may be composed of one module with the touch panel 2552. [ The hologram device 2564 can display stereoscopic images in the air using interference of light. The projector 2566 can display an image by projecting light onto a screen. The screen may be located, for example, inside or outside the electronic device 2501. According to one embodiment, the display 2560 may further include control circuitry for controlling the panel 2562, the hologram device 2564, or the projector 2566.

상기 인터페이스(2570)는, 예를 들면, HDMI(high-definition multimedia interface)(2572), USB(universal serial bus)(2574), 광 인터페이스(optical interface)(2576), 또는 D-sub(D-subminiature)(2578)를 포함할 수 있다. 추가적으로 또는 대안적으로, 상기 인터페이스(2570)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD(secure digital) 카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.The interface 2570 may include, for example, a high-definition multimedia interface (HDMI) 2572, a universal serial bus (USB) 2574, an optical interface 2576, or a D- subminiature (2578). Additionally or alternatively, the interface 2570 may be implemented using a mobile high-definition link (MHL) interface, a secure digital (SD) card / multi-media card (MMC) Standard interface.

상기 오디오 모듈(2580)은, 예를 들면, 소리(sound)와 전기 신호를 쌍방향으로 변환시킬 수 있다. 상기 오디오 모듈(2580)은, 예를 들면, 스피커(2582), 리시버(2584), 이어폰(2586), 또는 마이크(2588) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다.The audio module 2580 can, for example, convert sound and electrical signals in both directions. The audio module 2580 may process sound information input or output through, for example, a speaker 2582, a receiver 2584, an earphone 2586, a microphone 2588, or the like.

상기 카메라 모듈(2591)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시 예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, ISP(image signal processor), 또는 플래쉬(flash)(예: LED 또는 xenon lamp)를 포함할 수 있다.According to one embodiment, the camera module 2591 is a device capable of capturing a still image and a moving image, for example, one or more image sensors (e.g., a front sensor or a rear sensor), a lens, an image signal processor ), Or a flash (e.g., LED or xenon lamp).

상기 전력 관리 모듈(2595)은, 예를 들면, 상기 전자 장치(2501)의 전력을 관리할 수 있다. 한 실시 예에 따르면, 상기 전력 관리 모듈(2595)은 PMIC(power management integrated circuit), 충전 IC(charger integrated circuit), 또는 배터리 또는 연료 게이지(battery or fuel gauge)를 포함할 수 있다. 상기 PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 상기 배터리 게이지는, 예를 들면, 상기 배터리(2596)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 상기 배터리(2596)는, 예를 들면, 충전식 전지(rechargeable battery) 및/또는 태양 전지(solar battery)를 포함할 수 있다.The power management module 2595 can manage the power of the electronic device 2501, for example. According to one embodiment, the power management module 2595 may include a power management integrated circuit (PMIC), a charger integrated circuit (PMIC), or a battery or fuel gauge. The PMIC may have a wired and / or wireless charging scheme. The wireless charging scheme may include, for example, a magnetic resonance scheme, a magnetic induction scheme, or an electromagnetic wave scheme, and may further include an additional circuit for wireless charging, for example, a coil loop, a resonant circuit, have. The battery gauge can measure the remaining amount of the battery 2596, the voltage during charging, the current, or the temperature, for example. The battery 2596 may include, for example, a rechargeable battery and / or a solar battery.

상기 인디케이터(2597)는 상기 전자 장치(2501) 혹은 그 일부(예: AP(2510))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 상기 모터(2598)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동(vibration), 또는 햅틱(haptic) 효과 등을 발생시킬 수 있다. 도시되지는 않았으나, 상기 전자 장치(2501)는 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 상기 모바일 TV 지원을 위한 처리 장치는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어 플로우 (media flow) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.The indicator 2597 may indicate a specific state of the electronic device 2501 or a part thereof (e.g., AP 2510), for example, a boot state, a message state, or a charged state. The motor 2598 can convert the electrical signal into mechanical vibration, and can generate vibration, haptic effect, or the like. Although not shown, the electronic device 2501 may include a processing unit (e.g., a GPU) for mobile TV support. The processing device for supporting the mobile TV can process media data conforming to standards such as digital multimedia broadcasting (DMB), digital video broadcasting (DVB), or media flow.

상기 전자 장치의 전술한 구성요소들 각각은 하나 또는 그 이상의 부품 (component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시 예에서, 전자 장치는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시 예에 따른 전자 장치의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.Each of the above-described components of the electronic device may be composed of one or more components, and the name of the component may be changed according to the type of the electronic device. In various embodiments, the electronic device may be configured to include at least one of the components described above, with some components omitted or further comprising additional other components. In addition, some of the components of the electronic device according to various embodiments may be combined into one entity, so that the functions of the components before being combined can be performed in the same manner.

도 26은 다양한 실시 예에 따른 프로그램 모듈(2610)의 블록도(2600)이다. 한 실시 예에 따르면, 상기 프로그램 모듈(2610)은 전자 장치에 관련된 자원을 제어하는 운영 체제(operation system (OS)) 및/또는 운영 체제상에서 구동되는 다양한 애플리케이션(예: 애플리케이션 프로그램)을 포함할 수 있다. 상기 운영 체제는, 예를 들면, 안드로이드(android), iOS, 윈도우즈(windows), 심비안(symbian), 타이젠(tizen), 또는 바다(bada) 등이 될 수 있다.26 is a block diagram 2600 of a program module 2610 according to various embodiments. According to one embodiment, the program module 2610 may include an operating system (OS) that controls resources associated with the electronic device and / or various applications (e.g., application programs) running on the operating system have. The operating system may be, for example, android, iOS, windows, symbian, tizen, or bada.

프로그램 모듈(2610)은 커널(2620), 미들웨어(2630), API(application programming interface)(2660), 및/또는 애플리케이션(2670)을 포함할 수 있다. 상기 프로그램 모듈(2610)의 적어도 일부는 전자 장치상에 프리로드(preload) 되거나, 서버로부터 다운로드(download) 가능하다.The program module 2610 may include a kernel 2620, a middleware 2630, an application programming interface (API) 2660, and / or an application 2670. At least a portion of the program module 2610 may be preloaded on an electronic device or downloaded from a server.

상기 커널(2620)은, 예를 들면, 시스템 리소스 매니저(2621) 또는 디바이스 드라이버(2623)를 포함할 수 있다. 상기 시스템 리소스 매니저(2621)는 시스템 리소스의 제어, 할당, 또는 회수 등을 수행할 수 있다. 한 실시 예에 따르면, 상기 시스템 리소스 매니저(2621)는 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부 등을 포함할 수 있다. 상기 디바이스 드라이버(2623)는, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WIFI 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다.The kernel 2620 may include, for example, a system resource manager 2621 or a device driver 2623. [ The system resource manager 2621 can perform control, assignment, or recovery of system resources. According to one embodiment, the system resource manager 2621 may include a process management unit, a memory management unit, or a file system management unit. The device driver 2623 may include, for example, a display driver, a camera driver, a Bluetooth driver, a shared memory driver, a USB driver, a keypad driver, a WIFI driver, an audio driver, or an inter- have.

상기 미들웨어(2630)는, 예를 들면, 상기 애플리케이션(2670)이 공통적으로 필요로 하는 기능을 제공하거나, 상기 애플리케이션(2670)이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 상기 API(2660)를 통해 다양한 기능들을 상기 애플리케이션(2670)으로 제공할 수 있다. 한 실시 예에 따르면, 상기 미들웨어(2630)는 런타임 라이브러리(2635), 애플리케이션 매니저(application manager)(2641), 윈도우 매니저(window manager)(2642), 멀티미디어 매니저(multimedia manager)(2643), 리소스 매니저(resource manager)(2644), 파워 매니저(power manager)(2645), 데이터베이스 매니저(database manager)(2646), 패키지 매니저(package manager)(2647), 연결 매니저(connectivity manager)(2648), 통지 매니저(notification manager)(2649), 위치 매니저 (location manager)(2650), 그래픽 매니저(graphic manager)(2651), 또는 보안 매니저(security manager)(2652) 중 적어도 하나를 포함할 수 있다.The middleware 2630 may provide the functionality commonly required by the application 2670 or may be provided by the API 2660 to allow the application 2670 to efficiently use limited system resources within the electronic device. To provide various functions to the application 2670. According to one embodiment, the middleware 2630 includes a runtime library 2635, an application manager 2641, a window manager 2642, a multimedia manager 2643, a resource manager 2644, a power manager 2645, a database manager 2646, a package manager 2647, a connectivity manager 2648, a notification manager 2649, a location manager 2650, a graphic manager 2651, or a security manager 2652.

상기 런타임 라이브러리(2635)는, 예를 들면, 상기 애플리케이션(2670)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 상기 런타임 라이브러리(2635)는 입출력 관리, 메모리 관리, 또는 산술 함수에 대한 기능 등을 수행할 수 있다.The runtime library 2635 may include, for example, a library module used by the compiler to add new functionality via a programming language while the application 2670 is running. The runtime library 2635 may perform input / output management, memory management, or functions for arithmetic functions.

상기 애플리케이션 매니저(2641)는, 예를 들면, 상기 애플리케이션(2670) 중 적어도 하나의 애플리케이션의 라이프 사이클(life cycle)을 관리할 수 있다. 상기 윈도우 매니저(2642)는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 상기 멀티미디어 매니저(2643)는 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 상기 리소스 매니저(2644)는 상기 애플리케이션(2670) 중 적어도 어느 하나의 애플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.The application manager 2641 may manage the life cycle of at least one of the applications 2670, for example. The window manager 2642 can manage GUI resources used in the screen. The multimedia manager 2643 can recognize a format required for playing various media files and can encode or decode a media file using a codec suitable for the format. The resource manager 2644 can manage resources such as a source code, a memory, or a storage space of at least one of the applications 2670.

상기 파워 매니저(2645)는, 예를 들면, 바이오스(BIOS: basic input/output system) 등과 함께 동작하여 배터리(battery) 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보 등을 제공할 수 있다. 상기 데이터베이스 매니저(2646)는 상기 애플리케이션(2670) 중 적어도 하나의 애플리케이션에서 사용할 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 상기 패키지 매니저(2647)는 패키지 파일의 형태로 배포되는 애플리케이션의 설치 또는 업데이트를 관리할 수 있다.The power manager 2645 may operate with a basic input / output system (BIOS), for example, to manage a battery or a power source, and may provide power information and the like necessary for operation of the electronic device . The database manager 2646 may create, search, or modify a database for use by at least one of the applications 2670. The package manager 2647 can manage installation or update of an application distributed in the form of a package file.

상기 연결 매니저(2648)는, 예를 들면, WIFI 또는 블루투스 등의 무선 연결을 관리할 수 있다. 상기 통지 매니저(2649)는 도착 메시지, 약속, 근접성 알림 등의 사건 (event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 상기 위치 매니저(2650)는 전자 장치의 위치 정보를 관리할 수 있다. 상기 그래픽 매니저(2651)는 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 상기 보안 매니저(2652)는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 한 실시 예에 따르면, 전자 장치 (예: 도 8의 전자 장치)가 전화 기능을 포함한 경우, 상기 미들웨어(2630)는 상기 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager)를 더 포함할 수 있다.The connection manager 2648 may manage wireless connections, such as WIFI or Bluetooth, for example. The notification manager 2649 may display or notify events such as arrival messages, appointments, proximity notifications, etc. in a manner that does not interfere with the user. The location manager 2650 may manage location information of the electronic device. The graphic manager 2651 may manage a graphical effect to be provided to the user or a user interface related thereto. The security manager 2652 may provide security functions necessary for system security or user authentication. According to one embodiment, if the electronic device (e.g., the electronic device of FIG. 8) includes a telephone function, the middleware 2630 may include a telephony manager for managing the voice or video call capabilities of the electronic device .

상기 미들웨어(2630)는 전술한 구성요소들의 다양한 기능의 조합을 형성하는 미들웨어 모듈을 포함할 수 있다. 상기 미들웨어(2630)는 차별화된 기능을 제공하기 위해 운영 체제의 종류별로 특화된 모듈을 제공할 수 있다. 또한, 상기 미들웨어(2630)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.The middleware 2630 may include a middleware module that forms a combination of various functions of the above-described components. The middleware 2630 may provide a module specialized for each type of operating system to provide a differentiated function. In addition, the middleware 2630 may dynamically delete some existing components or add new components.

상기 API(2660)는, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼별로 하나의 API 셋을 제공할 수 있으며, 타이젠(tizen)의 경우, 플랫폼별로 두 개 이상의 API 셋을 제공할 수 있다.The API 2660 may be provided in a different configuration depending on the operating system, for example, as a set of API programming functions. For example, for Android or iOS, you can provide one API set per platform, and for tizen, you can provide more than two API sets per platform.

상기 애플리케이션(2670)은, 예를 들면, 홈(2671), 다이얼러(2672), SMS/MMS(2673), IM(instant message)(2674), 브라우저(2675), 카메라(2676), 알람(2677), 컨택트(2678), 음성 다이얼(2679), 이메일(2680), 달력(2681), 미디어 플레이어(2682), 앨범(2683), 또는 시계(2684), 건강 관리(health care)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보 제공(예: 기압, 습도, 또는 온도 정보 등을 제공) 등의 기능을 제공할 수 있는 하나 이상의 애플리케이션을 포함할 수 있다.The application 2670 may include a home 2671, a dialer 2672, an SMS / MMS 2673, an instant message 2674, a browser 2675, a camera 2676, an alarm 2677 ), Contact 2678, voice dial 2679, email 2680, calendar 2681, media player 2682, album 2683 or clock 2684, health care (e.g., Or providing information on the environment (e.g., providing atmospheric pressure, humidity, or temperature information, etc.), and the like.

한 실시 예에 따르면, 상기 애플리케이션(2670)은 상기 전자 장치(예: 도 2의 전자 장치)와 외부 전자 장치 사이의 정보 교환을 지원하는 애플리케이션(이하, 설명의 편의상, "정보 교환 애플리케이션")을 포함할 수 있다. 상기 정보 교환 애플리케이션은, 예를 들면, 상기 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 애플리케이션, 또는 상기 외부 전자 장치를 관리하기 위한 장치 관리(device management) 애플리케이션을 포함할 수 있다.According to one embodiment, the application 2670 includes an application (e. G., An " information exchange application ") for supporting the exchange of information between the electronic device . The information exchange application may include, for example, a notification relay application for communicating specific information to the external electronic device, or a device management application for managing the external electronic device .

예를 들면, 상기 알림 전달 애플리케이션은 상기 전자 장치의 다른 애플리케이션(예: SMS/MMS 애플리케이션, 이메일 애플리케이션, 건강 관리 애플리케이션, 또는 환경 정보 애플리케이션 등)에서 발생된 알림 정보를 외부 전자 장치로 전달하는 기능을 포함할 수 있다. 또한, 상기 알림 전달 애플리케이션은, 예를 들면, 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 상기 장치 관리 애플리케이션은, 예를 들면, 상기 전자 장치와 통신하는 외부 전자 장치의 적어도 하나의 기능(예: 외부 전자 장치 자체(또는, 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는, 해상도) 조절), 상기 외부 전자 장치에서 동작하는 애플리케이션 또는 상기 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스)를 관리(예: 설치, 삭제, 또는 업데이트)할 수 있다.For example, the notification delivery application may include a function of transmitting notification information generated by another application (e.g., SMS / MMS application, email application, healthcare application, or environment information application) of the electronic device to an external electronic device . In addition, the notification delivery application may receive notification information from, for example, an external electronic device and provide the notification information to the user. The device management application may, for example, control the operation of at least one function of the external electronic device communicating with the electronic device (e.g., turn-on / turn-off of the external electronic device itself (E.g., install, delete, or update) an application running on the external electronic device or a service (e.g., call service or message service) provided on the external electronic device.

한 실시 예에 따르면, 상기 애플리케이션(2670)은 상기 외부 전자 장치의 속성(예: 전자 장치의 속성으로서, 전자 장치의 종류가 모바일 의료 기기)에 따라 지정된 애플리케이션(예: 건강 관리 애플리케이션)을 포함할 수 있다. 한 실시 예에 따르면, 상기 애플리케이션(2670)은 외부 전자 장치로부터 수신된 애플리케이션을 포함할 수 있다. 한 실시 예에 따르면, 상기 애플리케이션(2670)은 프리로드 애플리케이션(preloaded application) 또는 서버로부터 다운로드 가능한 제3자 애플리케이션(third party application)을 포함할 수 있다. 도시된 실시 예에 따른 프로그램 모듈(2610)의 구성요소들의 명칭은 운영 체제의 종류에 따라서 달라질 수 있다.According to one embodiment, the application 2670 includes an application (e.g., a healthcare application) designated according to an attribute of the external electronic device (e.g., an attribute of the electronic device, the type of electronic device is a mobile medical device) . According to one embodiment, the application 2670 may include an application received from an external electronic device. According to one embodiment, the application 2670 may include a preloaded application or a third party application downloadable from a server. The names of the components of the program module 2610 according to the illustrated embodiment may vary depending on the type of the operating system.

다양한 실시 예에 따르면, 상기 프로그램 모듈(2610)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어, 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있다. 상기 프로그램 모듈(1710)의 적어도 일부는, 예를 들면, 프로세서(예: AP(2510))에 의해 구현(implement)(예: 실행)될 수 있다. 상기 프로그램 모듈(2610)의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 또는 프로세스 등을 포함할 수 있다.According to various embodiments, at least some of the program modules 2610 may be implemented in software, firmware, hardware, or a combination of at least two of them. At least some of the program modules 1710 may be implemented (e.g., executed) by, for example, a processor (e.g., AP 2510). At least some of the program modules 2610 may include, for example, modules, programs, routines, sets of instructions or processes, etc. to perform one or more functions.

본 문서에서 사용된 용어 "모듈" 또는 "기능부"는, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈" 또는 "기능부"는, 예를 들면, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component), 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈" 또는 "기능부"는, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈" 또는 "기능부"는 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, "모듈" 또는 "기능부"는, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.The term "module" or "function, " as used herein, may refer to a unit that includes one or a combination of two or more of, for example, hardware, software or firmware. The term "module" or "functional part" is used interchangeably with terms such as, for example, unit, logic, logical block, component, ). A "module" or "function" may be a minimum unit or a part of an integrally constructed component. A "module" may be a minimum unit or a portion thereof that performs one or more functions. "Modules" or "functional parts" may be implemented mechanically or electronically. For example, a "module" or "function" may be an application-specific integrated circuit (ASIC) chip, field-programmable gate arrays (FPGAs) or programmable logic arrays (FPGAs) -logic device).

다양한 실시 예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어는, 프로세서 (예: 제어부(210))에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 상기 저장부(220)가 될 수 있다.At least a portion of a device (e.g., modules or functions thereof) or a method (e.g., operations) according to various embodiments may include, for example, computer-readable storage media in the form of program modules, As shown in FIG. When executed by a processor (e.g., controller 210), the instructions may perform the functions corresponding to the instructions. The computer-readable storage medium may be, for example, the storage unit 220.

상기 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(magnetic media)(예: 자기테이프), 광기록 매체(optical media)(예: CD-ROM(compact disc read only memory), DVD(digital versatile disc), 자기-광 매체(magneto-optical media)(예: 플롭티컬 디스크(floptical disk)), 하드웨어 장치(예: ROM(read only memory), RAM(random access memory), 또는 플래시 메모리 등) 등을 포함할 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 다양한 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.The computer readable recording medium may be a hard disk, a floppy disk, a magnetic media (e.g., a magnetic tape), an optical media (e.g., a compact disc read only memory (CD-ROM) but are not limited to, digital versatile discs, magneto-optical media such as floptical discs, hardware devices such as read only memory (ROM), random access memory (RAM) Etc.), etc. The program instructions may also include machine language code such as those produced by a compiler, as well as high-level language code that may be executed by a computer using an interpreter, etc. The above- May be configured to operate as one or more software modules to perform the operations of the various embodiments, and vice versa.

다양한 실시 예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시 예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱 (heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.Modules or program modules according to various embodiments may include at least one or more of the elements described above, some of which may be omitted, or may further include additional other elements. Operations performed by modules, program modules, or other components in accordance with various embodiments may be performed in a sequential, parallel, iterative, or heuristic manner. Also, some operations may be performed in a different order, omitted, or other operations may be added.

다양한 실시 예에 따르면, 명령들을 저장하고 있는 저장 매체에 있어서, 상기 명령들은 적어도 하나의 프로세서에 의하여 실행될 때에 상기 적어도 하나의 프로세서로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로서, 상기 적어도 하나의 동작은, 다른 전자 장치와의 데이터 전송 연결 설정 시, 송신 또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하는 동작; 및 상기 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하는 동작;을 포함할 수 있다.According to various embodiments, there is provided a storage medium storing instructions which, when executed by at least one processor, cause the at least one processor to be configured to perform at least one operation, , When establishing a data transfer connection with another electronic device, for use in transmission of data with the other of the plurality of multipath data transmission algorithms based on information associated with at least one multipath data transmission algorithm transmitted or received Determining an algorithm for multipath data transmission; And transmitting or receiving data according to the determined multipath data transmission algorithm.

그리고 본 명세서와 도면에 발명된 본 발명의 실시 예들은 본 발명의 실시 예에 따른 기술 내용을 쉽게 설명하고 본 발명의 실시 예의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 실시 예의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 다양한 실시 예의 범위는 여기에 발명된 실시 예들 이외에도 본 발명의 다양한 실시 예의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 다양한 실시 예의 범위에 포함되는 것으로 해석되어야 한다.It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. And the like. Accordingly, the scope of various embodiments of the present invention should be construed as being included in the scope of various embodiments of the present invention without departing from the scope of the present invention, all changes or modifications derived from the technical idea of various embodiments of the present invention .

101, 102 : 전자 장치 110 : 네트워크
200 : 전자 장치 210 : 제어부
211 : 알고리즘 설정부 212 : 전송 연결 설정부
213 : 알고리즘 결정부 214 : 송수신 처리부
220 : 저장부 221 : 애플리케이션
222 : API 223 : 미들웨어
224 : 커널 230 : 통신부
240 : 표시부
101, 102: electronic device 110: network
200: electronic device 210: control unit
211: algorithm setting unit 212: transmission connection setting unit
213: algorithm determining unit 214: transmission /
220: storage unit 221: application
222: API 223: Middleware
224: Kernel 230:
240:

Claims (20)

데이터를 송신 및 수신 처리하는 통신부; 및
다른 전자 장치와의 데이터 전송 연결 설정 시, 상기 통신부를 통해 송신 또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하고, 상기 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하도록 제어하는 제어부;를 포함하는, 전자 장치.
A communication unit for transmitting and receiving data; And
Path data transmission algorithm based on information related to at least one multi-path data transmission algorithm transmitted or received through the communication unit when establishing a data transfer connection with another electronic device, And a control unit for determining a multipath data transmission algorithm to be used for transmission and controlling transmission or reception of data according to the determined multipath data transmission algorithm.
제1항에 있어서, 상기 다중 경로 데이터 전송 알고리즘은,
복수의 통신 방식을 동시에 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제1 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제2 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에서 제2 통신 방식으로 전환하여 사용하는 중 미리 설정된 제3 조건을 만족하면 제1 통신 방식으로 다시 전환하여 사용하는 알고리즘 중 어느 하나 이상을 포함하는, 전자 장치.
2. The method of claim 1, wherein the multi-
An algorithm for simultaneously using a plurality of communication methods, an algorithm for switching to and using a second communication method when a first condition set in advance during use by the first communication method among the plurality of communication methods is satisfied, 1 algorithm is switched to a second communication mode when a predetermined second condition is satisfied during use by the first communication mode, and a second communication mode is switched from a first communication mode to a second communication mode among a plurality of communication modes, 3 < / RTI > condition is met, the method further comprises switching back to the first communication mode and using at least one of the algorithms.
제2항에 있어서, 상기 제1 조건은 상기 제2 조건과 상이한 기준을 갖는, 전자 장치.
3. The electronic device of claim 2, wherein the first condition has a different criterion than the second condition.
제2항에 있어서, 상기 통신 방식은,
Wifi, BT(Bluetooth), NFC(near field communication), GPS(global positioning system), LTE(long term evolution), LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 어느 하나 이상을 포함하는, 전자 장치.
The communication system according to claim 2,
WIFI, Bluetooth, NFC, GPS, LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM, universal serial bus (high definition multimedia interface), RS-232 (recommended standard 232), or plain old telephone service (POTS).
제1항에 있어서, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는,
상기 다른 전자 장치와의 초기 연결 설정 시 송신 또는 수신되는 것을 특징으로 하는, 전자 장치.
2. The method of claim 1, wherein the information associated with the at least one multi-
Characterized in that the electronic device is transmitted or received when establishing an initial connection with the other electronic device.
제5항에 있어서, 상기 초기 연결 설정은,
TCP(transmission control protocol) 프로토콜에 의해 설정되는, 전자 장치.
6. The method of claim 5,
And is set by a transmission control protocol (TCP) protocol.
제1항에 있어서, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는,
상기 다른 전자 장치와의 초기 연결 설정 이후, 다중 경로 연결 설정을 위한 추가 서브플로우 설정 시 송신 또는 수신되는 것을 특징으로 하는, 전자 장치.
2. The method of claim 1, wherein the information associated with the at least one multi-
Characterized in that after the initial connection establishment with the other electronic device, it is transmitted or received in the setting of an additional sub-flow for multi-path connection establishment.
제7항에 있어서, 상기 추가 서브플로우 설정은,
MPTCP(multipath transmission control protocol) 프로토콜 및 SCTP(stream control transmission protocol) 중 적어도 하나에 의해 설정되는, 전자 장치.
8. The method of claim 7, wherein the additional sub-
A multipath transmission control protocol (MPTCP) protocol, and a stream control transmission protocol (SCTP).
제1항에 있어서, 상기 전자 장치는,
상기 다중 경로 데이터 전송 알고리즘에 대한 설정 화면을 표시하는 표시부;를 더 포함하는, 전자 장치.
The electronic device according to claim 1,
And a display unit for displaying a setting screen for the multi-path data transmission algorithm.
제1항에 있어서, 상기 다중 경로 데이터 전송 알고리즘은,
상기 전자 장치에 설치된 복수의 애플리케이션 각각에 대해 상이한 알고리즘으로 설정 가능한, 전자 장치.
2. The method of claim 1, wherein the multi-
Wherein the electronic device is capable of setting a different algorithm for each of a plurality of applications installed in the electronic device.
전자 장치에서 다중 경로를 이용하여 데이터를 전송하는 방법에 있어서,
다른 전자 장치와의 데이터 전송 연결 설정 시, 송신 또는 수신된 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보에 기반하여 복수의 다중 경로 데이터 전송 알고리즘들 중 상기 다른 전자 장치와의 데이터의 전송에 사용할 다중 경로 데이터 전송 알고리즘을 결정하는 동작; 및
상기 결정된 다중 경로 데이터 전송 알고리즘에 따라 데이터를 송신 또는 수신하는 동작;을 포함하는, 다중 경로를 이용한 데이터 전송 방법.
A method of transmitting data using multipath in an electronic device,
A plurality of multi-path data transmission algorithms, based on information associated with at least one multi-path data transmission algorithm transmitted or received, in establishing a data transmission connection with another electronic device, Determining a path data transmission algorithm; And
And transmitting or receiving data according to the determined multipath data transmission algorithm.
제11항에 있어서, 상기 다중 경로 데이터 전송 알고리즘은,
복수의 통신 방식을 동시에 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제1 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에 의한 사용 중 미리 설정된 제2 조건을 만족하면 제2 통신 방식으로 전환하여 사용하는 알고리즘, 복수의 통신 방식들 중 제1 통신 방식에서 제2 통신 방식으로 전환하여 사용하는 중 미리 설정된 제3 조건을 만족하면 제1 통신 방식으로 다시 전환하여 사용하는 알고리즘 중 어느 하나 이상을 포함하는, 다중 경로를 이용한 데이터 전송 방법.
12. The method of claim 11, wherein the multipath data transmission algorithm comprises:
An algorithm for simultaneously using a plurality of communication methods, an algorithm for switching to and using a second communication method when a first condition set in advance during use by the first communication method among the plurality of communication methods is satisfied, 1 algorithm is switched to a second communication mode when a predetermined second condition is satisfied during use by the first communication mode, and a second communication mode is switched from a first communication mode to a second communication mode among a plurality of communication modes, 3 < / RTI > condition is met, the method further comprises switching to a first communication mode and using the at least one algorithm.
제12항에 있어서, 상기 제1 조건은 상기 제2 조건과 상이한 기준을 갖는, 다중 경로를 이용한 데이터 전송 방법.
13. The method of claim 12, wherein the first condition has a different criterion than the second condition.
제12항에 있어서, 상기 통신 방식은,
Wifi, BT(Bluetooth), NFC(near field communication), GPS(global positioning system), LTE(long term evolution), LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232) 또는 POTS(plain old telephone service) 중 어느 하나 이상을 포함하는, 다중 경로를 이용한 데이터 전송 방법.
13. The communication method according to claim 12,
WIFI, Bluetooth, NFC, GPS, LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM, universal serial bus , a high definition multimedia interface (RS-232), a recommended standard (RS-232) or a plain old telephone service (POTS).
제11항에 있어서, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는,
상기 다른 전자 장치와의 초기 연결 설정 시 송신 또는 수신되는 것을 특징으로 하는, 다중 경로를 이용한 데이터 전송 방법.
12. The method of claim 11, wherein the information associated with the at least one multi-
Wherein the data is transmitted or received when establishing an initial connection with the other electronic device.
제15항에 있어서, 상기 초기 연결 설정은,
TCP(transmission control protocol) 프로토콜 및 SCTP(stream control transmission protocol) 중 적어도 하나에 의해 설정되는, 다중 경로를 이용한 데이터 전송 방법.
16. The method of claim 15,
A transmission control protocol (TCP) protocol, and a stream control transmission protocol (SCTP).
제11항에 있어서, 상기 적어도 하나의 다중 경로 데이터 전송 알고리즘과 관련된 정보는,
상기 다른 전자 장치와의 초기 연결 설정 이후, 다중 경로 연결 설정을 위한 추가 서브플로우 설정 시 송신 또는 수신되는 것을 특징으로 하는, 다중 경로를 이용한 데이터 전송 방법.
12. The method of claim 11, wherein the information associated with the at least one multi-
Characterized in that, after the initial connection establishment with the other electronic device, the transmission or reception is performed in the setting of the additional sub-flow for the multi-path connection setting.
제17항에 있어서, 상기 추가 서브플로우 설정은,
MPTCP(multipath transmission control protocol) 프로토콜 및 SCTP(stream control transmission protocol) 중 적어도 하나에 의해 설정되는, 다중 경로를 이용한 데이터 전송 방법.
18. The method of claim 17, wherein the additional sub-
A multipath transmission control protocol (MPTCP) protocol, and a stream control transmission protocol (SCTP).
제11항에 있어서,
상기 다중 경로 데이터 전송 알고리즘을 설정하는 동작;을 더 포함하는, 다중 경로를 이용한 데이터 전송 방법.
12. The method of claim 11,
And setting the multi-path data transmission algorithm.
제11항에 있어서, 상기 다중 경로 데이터 전송 알고리즘은,
상기 전자 장치에 설치된 복수의 애플리케이션 각각에 대해 상이한 알고리즘으로 설정 가능한, 다중 경로를 이용한 데이터 전송 방법.
12. The method of claim 11, wherein the multipath data transmission algorithm comprises:
And setting a different algorithm for each of a plurality of applications installed in the electronic device.
KR1020150053897A 2015-04-16 2015-04-16 Electronic device and method of transmitting data usnig multipath KR20160123627A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150053897A KR20160123627A (en) 2015-04-16 2015-04-16 Electronic device and method of transmitting data usnig multipath

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150053897A KR20160123627A (en) 2015-04-16 2015-04-16 Electronic device and method of transmitting data usnig multipath

Publications (1)

Publication Number Publication Date
KR20160123627A true KR20160123627A (en) 2016-10-26

Family

ID=57251789

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150053897A KR20160123627A (en) 2015-04-16 2015-04-16 Electronic device and method of transmitting data usnig multipath

Country Status (1)

Country Link
KR (1) KR20160123627A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210036957A (en) * 2018-08-02 2021-04-05 후아웨이 테크놀러지 컴퍼니 리미티드 Network switching methods, electronic devices and systems on a chip

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210036957A (en) * 2018-08-02 2021-04-05 후아웨이 테크놀러지 컴퍼니 리미티드 Network switching methods, electronic devices and systems on a chip
US11910489B2 (en) 2018-08-02 2024-02-20 Huawei Technologies Co., Ltd. Network switching method, electronic device, and system on chip

Similar Documents

Publication Publication Date Title
US10721679B2 (en) Method for transmitting and receiving signals in proximity network and electronic device thereof
US10290205B2 (en) Method of controlling function and electronic device supporting same
US9930619B2 (en) Method for selecting communication method and electronic device thereof
EP3021562B1 (en) Method for sharing screen and electronic device thereof
KR102277460B1 (en) Method for sharing a display and electronic device thereof
US10853026B2 (en) Method and apparatus for streaming audio by using wireless link
CN107223327B (en) Method and electronic device employing level-based transmission of configuration information
US20170280494A1 (en) Method for providing video call and electronic device therefor
KR102380322B1 (en) Electronic device and method for performing wireless communication of the same
KR102340917B1 (en) Electronic apparatus and connecting method thereof
US10585453B2 (en) Electronic device and method for communicating with external electronic device
US10912130B2 (en) Electronic device and tethering connection establishment method thereof
US20160066326A1 (en) Communication channel management method and electronic device supporting the same
KR20170058597A (en) Method for wireless communication and electronic device supporting the same
US20170264964A1 (en) Method and apparatus for sharing contents
US20170192746A1 (en) Method for outputting sound and electronic device supporting the same
KR102285158B1 (en) Method and electronic apparatus for providing data
US9544536B2 (en) Video call method in packet-switched network and device supporting the same
US10470134B2 (en) Method of controlling an electronic device according to a communication state of the electronic device
KR102294040B1 (en) Method and apparatus for transmitting and receiving data
KR20180002462A (en) Method for determing role of electronic device and electronic device thereof
KR20160052105A (en) Method for transmitting and receiving data and Electronic device using the same
KR20170090664A (en) Method for providing a tethering service and electronic device using the same
KR20170087350A (en) Electronic device and operating method thereof
KR20160123627A (en) Electronic device and method of transmitting data usnig multipath

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application