KR20130006385A - 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법 - Google Patents

고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법 Download PDF

Info

Publication number
KR20130006385A
KR20130006385A KR1020120093042A KR20120093042A KR20130006385A KR 20130006385 A KR20130006385 A KR 20130006385A KR 1020120093042 A KR1020120093042 A KR 1020120093042A KR 20120093042 A KR20120093042 A KR 20120093042A KR 20130006385 A KR20130006385 A KR 20130006385A
Authority
KR
South Korea
Prior art keywords
communication
socket
address
network
request
Prior art date
Application number
KR1020120093042A
Other languages
English (en)
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 KR1020120093042A priority Critical patent/KR20130006385A/ko
Publication of KR20130006385A publication Critical patent/KR20130006385A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/18Selecting a network or a communication service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/15Setup of multiple wireless link connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals

Abstract

본 발명에 따른, 복수의 이종망(異種網)들을 선택적으로 액세스할 수 있는 이동통신 단말기는, 고정된 값을 갖는 내부 주소를 목적지로 하여 생성된 로컬(local) 통신소켓을 통해 이동통신 단말기에서 실행되는 어플리케이션과의 데이터 교환을 수행하기 위한 프로세스(process)와, 상기 복수의 이종망들중 어느 하나의 통신망에서 할당된 접속 IP주소를 소스(source) 주소로 하고 외부 주소를 목적지로 한 외향(外向) 통신소켓을 적어도 하나 이상 생성하고 그 생성된 외향 통신소켓을 통해 상기 외부 주소의 서버와 데이터 교환을 수행하기 위한 프로세스를 포함하여 구성된다. 그리고, 상기 로컬 통신소켓과 상기 외향 통신소켓은 상호 연계된 관계에 있는 통신소켓간에 데이터 교환이 이루어진다.

Description

고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법 {Apparatus and method for enabling to transceive data using a plurality of heterogeneous networks selectively through a fixed host address}
본 발명은, 이종망, 특히 통신 서비스의 이용자 수, 서비스 권역, 또는 품질 등이 상이한 복수의 이종망들을 선택적으로 사용하여 데이터를 송수신할 수 있게 하는 장치와 그 방법에 관한 것이다.
이동통신망이 발전하면서, 이용자들은 휴대폰은 물론이고, 스마트폰, 태블릿 컴퓨터 등( 이하, “이동통신 단말기”로 통칭한다. )을 이용해 장소에 구애받지 않고, 자신이 필요로 하는 다양한 정보를 브라우징을 통해 확인하거나 또는 원하는 컨텐츠를 받아볼 수 있게 되었다.
통상, 이용자는 도 1에 예시된 바와 같이, 이동통신 단말기(10)에 내장된 브라우저(10a)를 통해 원하는 웹서버(12a)로부터 원하는 정보, 예를 들어 웹페이지를 수신한다(S01). 이 때, 상기 이동통신 단말기(10)의 운영시스템(O/S)과 상기 브라우저(10a)간에는, 현재 접속되어 있는 접속 IP주소를 소스 주소로 그리고 원격지의 상기 웹서버(12a)를 목적지 주소로 하는 통신소켓(socket)이 생성되고 그 통신소켓에 대응하여 상기 웹서버(12a)와의 세션(session)이 형성된다. 상기 통신소켓은 통신의 접점에 위치하는 논리적 객체이며 “프로토콜”, “발신지(originating) IP주소와 포트(port)”, “원격지(destination) IP주소와 포트”를 그 구성요소로 한다. 상기 세션에 대해서는, 상기 운영시스템이 현재 접속하고 있는 통신망(11)이 데이터 경로로서 제공되며, 상기 통신망(11)은 통신상황, 또는 단말기의 환경 등에 따라, 이동전화 통신망( 예를 들어 CDMA2000 또는 W-CDMA 방식의 이동전화 통신망 )이거나 아니면 고속의 무선 네트워크, 예를 들어 Wi-Fi 무선랜망, 또는 그 외의 다른 이동 통신망일 수가 있다.
이용자가 수신된 웹페이지에서 하나의 컨텐트를 선택하는 경우, 그에 따른 데이터 요구, 예를 들어 HTTP (Hyper-Text Transfer Protocol) Request는 전술한 방식에 따라 별도의 세션이 상기 운영시스템에 의해 개설된 후 그 세션을 통해 해당 서버(12b)로 전달되며(S02) 그 서버(12b)는 수신된 HTTP Request를 해석하여 그에 따른 HTTP Response를 구성하여 다운로드 또는 스트리밍(streaming)방식으로, 해당 HTTP Request를 송신한 단말기(10)로 전송한다(S03). HTTP Response가 수신되면 그 Response에 기재된 정보의 마임(MIME) 타입 등에 의해 확인되는 해당 컨텐트의 유형에 연계된 플레이어(10b)가 기동될 수도 있다. 상기 플레이어(10b)가 기동되면 수신된 HTTP Response에 포함되어 있는 해당 컨텐트의 데이터를 렌더링(rendering)하게 된다.
그런데, 이동통신 환경은 유선망에 비해 매우 유동적이다. 특히, 사용하고 있는 통신망이 제한된 지역들로 산포되어 있는 무선랜망, 예를 들어 Wi-Fi 망일 경우에는 더욱 더 그렇다. 따라서, 상기의 예시된 송수신 과정 중에 상기 통신망(11)과의 접속이 해제될 수도 있다. 이와 같이 접속이 해제되면, 상기 단말기(10)의 운영시스템은 현재의 이용가능한 통신망을 확인하고 그 통신망으로부터 새로운 접속IP 주소를 할당받게 된다. 이런 상황이 발생하면, 이전에 사용하였던 접속IP 주소를 소스 주소로 하여 생성된 소켓들은 더 이상 유용하지 않게 되므로 상기 브라우저(10a) 또는 플레이어(10b)는 최종 데이터 수신된 상태에서 멈추어(halt) 있게 된다.
이런 상태에서는, 새로운 접속 IP주소의 할당이 있은 후 상기 단말기(10)의 운영시스템이 행한 화면상의 특정 표시를 인지 하거나 또는 적당한 시간이 흐른 후 사용자의 개입에 따라 전술한 과정을 처음부터 다시 수행함으로써 사용자는 원하는 컨텐트를 수신할 수 있게 된다.
본 발명은, 이종망들을 모두 가용함으로써 일부 통신망과의 통신단절 또는 불안정상태에도 안정적인 통신환경을 제공하는 장치와 방법을 제시하는 데 일 목적이 있다.
본 발명의 다른 일 목적은, 이종망들을 모두 가용함으로써 일부 통신망과의 접속상태의 단속(斷續)에도 불구하고 어플리케이션들이 사용하는 접속 주소가 고정적으로 유지되게 하는 장치와 방법을 제공하는 데 있다.
본 발명의 또 다른 일 목적은, 통신환경이 매우 가변적인 이동통신 환경하에서, 가용할 수 있는 이종망들을 병용하여 데이터의 수신속도를 개선시키는 장치와 방법을 제공하는 데 있다.
본 발명의 또 다른 일 목적은, 통신환경, 요구되는 정보의 양, 서비스이용 요금 등과 같은 다양한 정보에 기반하여, 복수의 이종망들에서 하나 또는 그 이상의 통신망을 선택하여 이용케 하는 최적의 통신 서비스 이용을 위한 장치와 방법을 제공하는 데 있다.
본 발명의 목적은, 상기 명시적으로 서술된 목적에 국한되는 것은 아니며, 본 발명에 대한 구체적이고 예시적인 하기의 설명에서 도출될 수 있는 효과를 달성하는 것을 그 목적에 당연히 포함한다.
본 발명의 일 측면에 따른, 복수의 이종망(異種網)들을 액세스할 수 있는 이동통신 단말기는, 내부 주소를 목적지로 하여 생성된 로컬(local) 통신소켓을 통해 상기 이동통신 단말기에서 실행되는 어플리케이션과의 데이터 교환을 수행하기 위한 내(內) 처리부와, 상기 복수의 이종망들중 어느 하나의 통신망에서 할당된 접속주소를 소스(source) 주소로 하고 외부 주소를 목적지로 한 외향(外向) 통신소켓을 적어도 하나 이상 생성하고 그 생성된 외향 통신소켓을 통해 상기 외부 주소의 서버와 데이터 교환을 수행하기 위한 외(外) 처리부를 포함하여 구성된다. 그리고, 상기 로컬 통신소켓과 상기 외향 통신소켓은 상호 연계된 관계에 있는 통신소켓간에 데이터 교환이 이루어진다.
본 발명에 따른 일 실시예에서는, 상기 로컬 통신소켓은, 상기 이동통신 단말기에 설정된 프록시 정보에 기재된 상기 내부 주소에 기반하여, 임의의 외부 서버로 전송할 통신규약, 예를 들어 HTTP Request에 의한 요구의 목적지 주소에 무관하게 상기 내부 주소를 목적지로 한 통신소켓 생성요청에 의해 생성된다. 그리고, 상기 프록시 정보는, 상기 내 처리부 또는 상기 외 처리부를 포함하는 프로세스의 실행에 의해 설정될 수도 있다.
본 발명에 따른 다른 일 실시예에서는, 상기 로컬 통신소켓은, 임의의 외부 서버에 대해 요청되어 외부로 전송된 통신규약에 의한 요구에 대한 전향(redirection)지시에서 지정된 상기 내부 주소를 목적지로 한 통신소켓의 생성요청에 의해 생성된다.
본 발명에 따른 또 다른 실시예에서는, 상기 로컬 통신소켓은, 상기 이동통신 단말기에서 실행되는 어플리케이션이, 임의의 외부 서버에 전송할 통신규약에 의한 요구의 목적지 주소에 무관하게 상기 어플리케이션에 설정되어 있는 상기 내부 주소를 목적지로 한 통신소켓의 생성을 요청함에 따라 생성된다. 본 실시예에서는, 상기 어플리케이션은 상기 통신규약에 의한 요구에 상기 내부 주소를 호스트(host) 필드에 삽입한 통신규약에 의한 요구를 상기 로컬 통신소켓을 통해 상기 내 처리부에 전달하고, 상기 내 처리부는 수신된 통신규약에 의한 요구의 호스트 필드에 삽입되어 있는 상기 내부 주소를 제거하여 원래의 통신규약에 의한 요구를 복원하여 상기 외 처리부에 전달하도록 구성될 수도 있다. 또한, 본 실시예에서는, 상기 어플리케이션은, 선택되는 항목들에 따른 통신규약에 의한 요구들에 대해 선별적으로, 예를 들어 요구하는 데이터량이 많은 통신규약에 의한 요구들만을 상기 로컬 통신소켓을 통해 상기 내 처리부에 전달하도록 구성될 수도 있다.
본 발명에 따른 일 실시예에서는, 상기 이동통신 단말기는, 상기 복수의 이종망들 중 하나 이상의 통신망의 현재 상태, 또는 설정된 서비스 이용요금 방식에 근거하여 상기 로컬 통신소켓을 통해 수신되는 통신규약에 의한 요구를 전송할 하나 이상의 통신망을 결정하고, 그 결정된 통신망을 상기 외 처리부에 알릴 수 있도록 구성된 망(網) 선택부를 더 포함하여 구성될 수도 있다. 그리고, 상기 망 선택부는, 상기 로컬 통신소켓을 통해 수신된 통신규약에 의한 요구가 수신의도하는 데이터량에 또한 근거하여, 상기 수신한 통신규약에 의한 요구를 전송할 하나 이상의 통신망을 결정하여 상기 외 처리부에 알릴 수 있도록 더 구성될 수도 있다. 상기 망 선택부로부터의 알림에 따라 상기 외 처리부는 결정된 통신망을 사용하기 위한 외향 통신소켓을 생성하거나 또는 그 통신망에 대해 생성되어 있는 기존의 외향 통신소켓을 사용할 수도 있다.
본 발명에 따른 일 실시예에서는, 상기 이동통신 단말기는, 상기 외향 통신소켓을 통해 송신된 통신규약에 의한 요구에 대한 응답을, 완전한 통신규약에 의한 응답의 구성을 위해 또는 재송신을 위해 임시 저장하는 버퍼를 더 포함하여 구성될 수도 있다.
본 발명에 따른 일 실시예에서는, 상기 외 처리부는, 상기 복수의 이종망들 중 어느 하나의 통신망 사용을 중단하면 그 통신망을 사용하는 것으로 생성된 사용중단의 외향 통신소켓이 존재하는 지를 확인하고, 존재하면 그 외향 통신소켓을 통해 송신한 HTTP Request가 있는 경우, 상기 복수의 이종망들 중 다른 하나의 통신망을 위해 할당된 접속주소를 소스주소로 하고 상기 통신규약에 의한 요구에서 지정된 서버 주소를 목적지로 하는 새 외향 통신소켓을 생성하고, 상기 생성된 새 외향 통신소켓을, 상기 사용중단의 외향 통신소켓과 연계되어 있는 상기 로컬 통신소켓에 연계시키고, 상기 생성된 새 외향 통신소켓을 통해 상기 통신규약에 의한 요구를 재송신하거나 상기 통신규약에 의한 요구에 의해 수신의도된 데이터량의 일부분을 요청하는 통신규약에 의한 요구를 송신하도록 구성된다. 본 실시예에서는, 상기 외 처리부는, 상기 일부분을 요청하는 상기 통신규약에 의한 요구에 따른 응답, 예를 들어 HTTP Response에 포함된 데이터를, 상기 사용중단의 외향 통신소켓을 통해 기 수신된 통신규약에 의한 응답에 포함된 데이터와 조합하여 완전한 통신규약에 의한 응답으로 구성하여 상기 내 처리부로 전달하도록 구성될 수도 있다.
본 발명에 따른 일 실시예에서는, 상기 외 처리부는, 임의의 한 제 1외향 통신소켓에 대해, 그 제 1외향 통신소켓이 사용하고 있는 상기 복수의 이종망들중 어느 하나의 제 1통신망과는 다른 제 2통신망을 사용하는 제 2외향 통신소켓을 더 생성하고, 상기 제 1외향 통신소켓을 통해 송신한 원(original) 통신규약에 의한 요구의 수신의도한 전체 데이터의 적어도 일부구간을 요청하는 통신규약에 의한 요구를 작성하여, 상기 제 1외향 통신소켓을 통한 상기 적어도 일부구간의 수신을 방지하면서, 상기 생성된 제 2외향 통신소켓을 통해 송신하고, 상기 제 1외향 통신소켓과 제 2외향 통신소켓을 통해 각기 수신되는 통신규약에 의한 응답을 조합하여 상기 원 통신규약에 의한 요구가 의도하였던 하나의 완성된 통신규약에 의한 응답을 구성하여 상기 내 처리부로 전달하도록 구성된다. 본 실시예에서는, 상기 제 1외향 통신소켓을 통한 상기 적어도 일부구간의 수신을 방지하기 위해서, 상기 적어도 일부구간을 배제하기 위한 요청을 상기 제 1외향 통신소켓을 통해 송신하거나, 아니면 상기 제 1외향 통신소켓을 통해 상기 적어도 일부구간의 데이터가 수신되는 경우에 상기 제 1외향 통신소켓을 폐쇄(close)할 수도 있다.
본 발명에 따른 일 실시예에서는, 상기 외 처리부는, 상기 로컬 통신소켓을 통해 수신된 원(original) 통신규약에 의한 요구가 수신의도하는 전체 데이터를 적어도 2개의 구간들로 구분하고 각 구분된 데이터 구간을 요청하는 통신규약에 의한 요구들을 작성하고, 상기 복수의 이종망들중 2개 이상의 통신망들에 대해 사용하기 위한 상기 외향 통신소켓을 복수개 생성하고, 상기 작성된 통신규약에 의한 요구들이 상기 2개 이상의 통신망들로 분배되는 방식으로 송신되도록 상기 생성된 복수개의 외향 통신소켓들을 통해 송신하고, 상기 복수개의 통신소켓을 통해 각기 수신되는 통신규약에 의한 응답을 조합하여 상기 원 통신규약에 의한 요구가 의도하였던 하나의 완성된 통신규약에 의한 응답을 구성하여 상기 내 처리부로 전달하도록 구성된다.
본 발명에 따른 일 실시예에서는, 상기 내부주소는, 목적지가 내부임을 지시하는 것으로 약속된 IP 주소와, 할당된 포트번호를 포함하여 구성된다.
본 발명에 따른 일 실시예에서는, 상기 로컬 통신소켓과 외향 통신소켓은, 프로토콜, 소스(source) IP주소와 포트, 원격지(destination) IP주소와 포트를 구성요소로서 포함하는 국부 프로세스간의 또는 원격지 프로세스와의 통신을 위한 논리적 객체이다.
본 발명의 다른 일 측면에 따른, 복수의 이종망(異種網)들을 액세스할 수 있는 이동통신 단말기는, 내부 주소를 목적지로 하여 생성된 로컬(local) 통신소켓을 통해 상기 이동통신 단말기에서 실행되는 어플리케이션과의 데이터 교환을 수행하고, 상기 복수의 이종망들중 어느 하나의 통신망에서 할당된 접속주소를 소스(source) 주소로 하고 외부 주소를 목적지로 한 외향(外向) 통신소켓을 상기 로컬 통신소켓과 연계하여 적어도 하나 이상 생성하고 그 생성된 외향 통신소켓을 통해 상기 외부 주소의 서버와 데이터 교환을 수행하며, 상호 연계된 관계에 있는 상기 로컬 통신소켓과 상기 외향 통신소켓간의 데이터 교환을 수행하도록 구성된 다중액세스 처리부와, 상기 외향 통신소켓을 통한 상기 외부 주소의 서버와의 상기 데이터 교환을 위한 신호를 송수신하도록 구성된 통신부를 포함하여 구성된다.
본 발명의 또 다른 일 측면에 따른, 프로그램의 저장공간을 구비하고 있는 장치는, 통신을 통해 외부와 데이터를 송수신할 수 있는 통신수단과, 상기 통신수단을 통해 송신되는, 또는 상기 통신수단을 통해 수신한 이동통신 단말기에서 실행되는 어플리케이션이 수록되어 있는 저장수단을 포함하여 구성되고, 상기 어플리케이션은, 상기 이동통신 단말기에서 실행되는 경우, 내부 주소를 목적지로 하여 생성된 로컬(local) 통신소켓을 통해 상기 이동통신 단말기에서 실행되는 타 어플리케이션과의 데이터 교환을 수행하고, 상기 이동통신 단말기가 사용가능한 복수의 이종망들중 어느 하나의 통신망에서 할당된 접속주소를 소스(source) 주소로 하고 외부 주소를 목적지로 한 외향(外向) 통신소켓을 상기 로컬 통신소켓과 연계하여 적어도 하나 이상 생성하고 그 생성된 외향 통신소켓을 통해 상기 외부 주소의 서버와 데이터 교환을 수행하며, 상호 연계된 관계에 있는 상기 로컬 통신소켓과 상기 외향 통신소켓간의 데이터 교환을 수행할 수 있는 프로그램 구조를 포함한다. 본 발명에 따른 상기 장치는, 이동통신 단말기이거나, 컨텐트나 어플리케이션들을 수록하고 있는 원격지의 서버일 수도 있다.
본 발명의 또 다른 일 측면에 따른, 복수의 이종망(異種網)망을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 일 방법은, 내부 주소를 목적지로 하여 생성된 로컬(local) 통신소켓을 통해 외부 서버를 목적지로 하는 제 1데이터 요구, 예를 들어 HTTP Request를 수신하는 1단계와, 상기 제 1데이터 요구에 따라, 상기 복수의 이종망들중 어느 하나의 통신망에서 할당된 접속주소를 소스(source) 주소로 하고 상기 외부 서버의 주소를 목적지로 한 외향(外向) 통신소켓을 상기 로컬 통신소켓과 연계하여 적어도 하나 이상 생성하고 그 생성된 외향 통신소켓을 통해 제 2데이터 요구를 송신하는 2단계와, 상기 제 2데이터 요구의 송신에 따라 상기 외향 통신소켓을 통해 수신되는 응답 데이터를 그 외향 통신소켓과 연계되어 있는 상기 로컬 통신소켓을 통해 상기 제 1데이터 요구의 발신자(originator)로 전달하는 3단계를 포함하여 이루어진다.
본 발명에 따른 일 실시예에서는, 상기 2단계는, 상기 제 2데이터 요구로서 상기 제 1데이터 요구를 송신하거나, 상기 제 1데이터 요구의 요청내용을 수정하여 작성된 하나 이상의 데이터 요구를 상기 제 2데이터 요구로서 송신한다.
전술한 본 발명 또는, 하기에서 첨부된 도면과 함께 상세히 설명되는 본 발명의 적어도 일 실시예는, 이동통신 단말기에서 실행되는 어플리케이션들이 고정된 호스트 주소, 즉 로컬주소를 사용하게 함으로써, 이동통신 단말기가 현재 접속하고 있는 통신망에 접속장애가 발생하여도, 로컬주소를 사용하는 어플리케이션들은 그러한 장애에 영향을 받지 않게 하고, 또한, 장애가 발생한 통신망을 이용가능한 다른 통신망으로 자연스럽게 대체하므로, 어플리케이션들은 데이터 교환을 항상 안정적으로 수행할 수 있게 된다.
또한, 필요에 따라서는, 고정된 호스트 주소를 사용하는 어플리케이션들에 대하여 이용가능한 복수의 이종망들의 각 접속주소를 모두 사용하여 원하는 외부 서버와의 통신로를 복수개의 이종망들을 통해 개설하여 원하는 데이터를 병행 수신할 수 있게 하므로 데이터 이용 속도가 크게 향상되게 한다.
도 1은, 단말기에서 실행되는 다양한 어플리케이션들이 통신망을 이용하여 원격지의 서버가 제공하는 정보를 이용하는 일반적인 과정을 예시한 것이고,
도 2a는, 본 발명에 따른, 고정 호스트 주소에 기반하여 복수의 이종망(異種網)을 선택적으로 사용할 수 있게 하는 방법의 일 실시예가 구현된 이동통신 단말기의 프로그램적 관점의 논리적 구성과 외부 연결된 구성들을 예시한 것이고,
도 2b는, 본 발명에 따른, 고정 호스트 주소에 기반하여 복수의 이종망을 선택적으로 사용할 수 있게 하는 방법이 구현된 이동통신 단말기의 구성의 일 예를 예시한 것이고,
도 3은, 본 발명의 일 실시예에 따라, 프로세스간의 통신을 위한 통신소켓들이 생성된 것을 예시한 것이고,
도 4는, 본 발명의 일 실시예에 따른, HTTP Request/Response를 내부 프로세스간에 전달하기 위한 한 예인 IP 패킷 포맷을 예시한 것이고,
도 5a 및 5b는, 본 발명의 일 실시예에 따라, HTTP Request를 다수의 이종망들로 송신함으로써 그 Response를 다수의 이종망들로 분배하여 수신하는 과정을 각각 예시한 것이고,
도 6은, 본 발명의 다른 일 실시예에 따른 다중액세스 최적화기의 구성을 예시한 것이고,
도 7은, 본 발명의 다른 일 실시예에 따른, 고정 호스트주소에 기반하여 복수의 이종망을 선택적으로 사용할 수 있게 하는 방법에 의한 과정을 예시한 것이고,
도 8은, 도 7의 실시예에 따라, 프로세스간의 통신을 위한 통신소켓들이 생성된 것을 예시한 것이고,
도 9는, 본 발명의 일 실시예에 따른 다중액세스용 어플리케이션이 이동통신 단말기에 구비되고 그에 따른 HTTP Request의 전달과정을 예시적으로 보여주는 도면이고,
도 10a는, 본 발명의 다른 일 실시예에 따른 다중액세스용 어플리케이션이 이동통신 단말기에 구비되고 그에 따른 HTTP Request의 전달과정을 예시적으로 보여주는 도면이고,
도 10b는, 도 10a의 실시예에 따른 다중액세스용 어플리케이션의 구성과 그 구성간의 HTTP Request의 전달과정을 예시적으로 보여주는 도면이고,
도 11은, 본 발명의 다른 일 실시예에 따른, HTTP Request/Response를 내부 프로세스간에 전달하기 위한 한 예인 IP 패킷 포맷을 예시한 것이다.
이하, 본 발명에 따른 실시예들에 대해 첨부된 도면을 참조하여 상세히 설명한다.
도 2a는, 본 발명에 따른, 고정 호스트(host) 주소에 기반하여 복수의 이종망(異種網)을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 방법의 일 실시예가 구현된 이동통신 단말기의 프로그램적 관점의 논리적 구성과 외부 연결된 구성들을 예시한 것이다.
도면에 예시된 상기 이동통신 단말기(100)의 프로그램적 관점의 논리적 구성은, 상기 이동통신 단말기(100)의 하드웨어 자원( 도 2b에 예시된 )의 구동, 해당 자원과의 적절한 신호 및/또는 정보교환을 수행하기 위한, 통상의 운영시스템( 안드로이드, IOS 등 ) 또는 본 발명을 위해 특화된 운영시스템(100a)을 구비하고 있으며, 또한 상기 운영시스템(100a)하에서 실행되는 통상의 브라우저(10a)와 플레이어(10b)를 선택적으로 포함한다. 물론, 이 들 외의 다양한 어플리케이션들이 구현되어 있을 수 있으나 본 발명의 원리와 개념을 설명하는 데 있어서 불요하므로 통상의 어플리케이션( 이하, “어플”로 약칭한다. )들에 대해서는 예시를 생략한다. 그리고, 상기 예시된 이동통신 단말기(100)는, 본 발명에 따른, 고정 호스트주소에 기반하여 복수의 이종망(異種網)을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 방법의 일 실시예가 구현된 다중액세스 처리부를 포함한다.
도면에 예시된 다중액세스 최적화기(Multi Optimization Agent)(110)는 상기 다중액세스 처리부로서 상기 이동통신 단말기(100)에 구현된 프로세스(process) 또는 어플리케이션으로서, 도 2a에 예시된 바와 같이 상기 운영시스템(100a)을 기반으로 실행되는 프로그램 코드들의 구조를 갖는 소프트웨어의 형태로 제공될 수도 있다. 경우에 따라서는, 미들웨어(middleware), 또는 단말기의 플랫폼(platform) 형태로 제공될 수도 있으며, 상기 다중액세스 처리부는 하드웨어(hardware)의 구성을 포함함으로써, 하기에서 상세히 설명하는 기능의 일부를 그 하드웨어가 수행할 수도 있다. 따라서, 본 발명에 따른 다양한 실시예들에서 구성과 동작방식이 설명되는 “다중액세스 최적화기”로 명명된 다중액세스 처리부는 그 구현하는 자원의 형태에 의해 본 발명의 범위가 제한되는 것은 아니다.
한편, 상기 도면에서 예시된 논리적 구성을 갖는 상기 이동통신 단말기(100)는, 전체적으로 도 2b에 예시된 바와 같은 하드웨어적 구성요소를 포함하는, 공중의 이동전화 통신망과 고속의 무선 데이터망 등을 모두 액세스할 수 있는 스마트 폰, 태블릿 컴퓨터, 노트북 등 중 어느 하나일 수 있다. 그 구성을 구체적으로 살펴 보면, 공중의 이동전화 통신망, 예를 들어 2G 또는 3G의 셀룰러(cellular) 망의 지정된 방식에 따라 신호를 변조 또는 복조하여 상기 이동전화 통신망과 송수신하는 셀룰러 모뎀(1a)( RF신호의 처리모듈을 포함하는 구성요소이다 )과, 상기 이동전화 통신망에서 채택된 통신규약에 따라 데이터를 부호화(encoding)하거나 부호화된 데이터를 복호(decoding)하는 셀룰러 코덱(1b)과, 고속의 무선 데이터망, 예를 들어 Wi-Fi 방식의 무선랜 망의 지정된 방식에 따라 신호를 변조 또는 복조하여 상기 무선 데이터망과 송수신하는 Wi-Fi 모뎀(2a)( RF신호의 처리모듈을 포함하는 구성요소이다 )과, 상기 무선 데이터망에서 채택된 통신규약에 따라 데이터를 부호화하거나 부호화된 데이터틀 복호하는 Wi-Fi 코덱(2b)과, 영상, 문자 등의 표시를 위한 디스플레이 패널(5)과, 임의 데이터가 상기 디스플레이 패널(5)상에서 시각적으로 표시되도록 상기 디스플레이 패널(5)을 구동하는 디스플레이 구동부(4)와, 상기 디스플레이 패널(5)의 전면에 부착된 터치 센서(6a)와, 키(key) 및/또는 버튼(button)이 구비되어 있는 키패드(6b)와, 상기 터치 센서(6a)와 키패드(6b)상의 사용자 입력 및/또는 선택을 감지하여 그에 상응하는 입력 정보를 출력하는 입력 제어부(6)와, 상기 입력 제어부(6)로부터의 입력 정보에 따른 동작이 수행되도록, 상기 구성요소들중 그에 맞는 구성요소에 적절히 데이터를 전송 또는 그로 부터 수신하거나 제어하며 그에 따른 결과나 사용자의 원하는 동작의 선택을 위한 UI 화면의 표시를 위해 상기 디스플레이 구동부(4)를 제어하는 주 제어부(10)와, 상기 주 제어부(10)의 동작을 위해 필요한 데이터 저장공간을 제공하는 메모리부(7)를 포함한다.
그리고, 상기 주 제어부(10)는, 명령코드들을 실행함으로써 상기 운영시스템(100a)이 의도된 기능을 수행하도록 하며, 또한 상기 다중액세스 최적화기(110)의 전부 또는 일부의 명령코드들을 실행함으로써 이하에서 상세히 설명하는 상기 다중액세스 최적화기(110)의 동작들이 수행되도록 한다. 상기 다중액세스 최적화기(110)를 포함한 다양한 어플리케이션들은 상기 운영시스템(100a)이 제공하는 적절한 API( Application Program Interface )를 통해 도 2b에 예시된 구성요소들에 필요한 동작을 요구하거나 데이터를 교환하는 동작을 수행하게 된다.
도 2b에 예시한 이동통신 단말기(100)의 구성은, 본 발명의 개념과 주제에 대한 이해를 돕기 위한 실시예를 구체적이고 예시적으로 설명하기 위한 단지 하나의 예일 뿐, 본 발명에 따른 개념과 주제를 구현하는 단말기들은 도 2b에 도시되지 않은 다양한 기능의 구성요소들을 더 포함하거나 또는 예시된 구성요소를 배제할 수도 있다.
본 발명에 따른 일 실시예에서는, 상기 다중액세스 최적화기(110)는, 내(內) 처리부인 로컬(local)서버(111)와, 외(外) 처리부인 적응 송수신기(Adaptive Transceiving Agent)(112)를 서브(sub) 프로세스로서 포함하며, 또한 송신 또는 수신하는 데이터를, 처리를 위해 상기 메모리(7)상의 일정 공간에 버퍼링하는 버퍼(113)를 포함한다. 상기 로컬서버(111)는 사용할 포트(port) 번호, 예를 들어 “8080”이 설정되며, 로컬 IP주소와 포트번호로 생성되는 통신소켓을 통한 데이터의 송수신을 처리하고 상기 적응 송수신기(112)와의 데이터 송수신을 또한 수행한다. 상기 적응 송수신기(112)는, 이용가능한 복수의 이종망들(11a,11b,…)에서 액세스 가능한 현재의 통신망 또는 통신망들을 상기 운영시스템(100a)을 통해 확인하고 그 통신망으로부터 할당받은 접속 IP주소를 적응적으로 사용하여 단일 또는 복수의 통신망을 통하여 외부 서버와 데이터를 송수신한다. 상기 적응 송수신기(112)의 복수의 통신망들을 병용한 데이터 송수신 방법에 대해서는 이후 보다 상세히 설명한다.
도 2a에 상기 다중액세스 최적화기(110)를 중심으로 그 논리적 구성이 예시된 이동통신 단말기(100)에 의해 이루어지는 데이터 송수신 과정은 다음과 같다.
먼저, 사용자는 상기 이동통신 단말기(100)에서 제공하는 또는 상기 브라우저(10a)가 입출력부( 상기 디스플레이 패널(5), 터치 센서(6a), 키패드(6b) 등 )에 의해 제공하는 적절한 사용자 UI( User Interface )를 통해 통신환경의 프록시(proxy)를 활성화시키고, 그 프록시의 IP주소를 내부임을 지시하는 것으로 약속된 특정의 주소( 이하, “로컬주소” 또는 “내부주소”로 칭한다. ), 예를 들어 “127.0.0.1” 또는 “localhost”를, 포트번호와 함께 설정한다. 이 포트번호는 상기 로컬서버(111)에 할당한 포트번호와 동일한 번호이어야 한다. 이 프록시 정보는 상기 운영시스템(100a) 또는 상기 브라우저(10a)에 설정되고 이에 따라, 프록시 기능은 활성화되고 그 프록시 주소는, 예를 들어, “127.0.0.1:8080” 또는 “localhost:8080”이 된다.
본 발명에 따른 일 실시예에서는, 상기 다중액세스 최적화기(110)가 하드웨어적 요소없이 실행코드들로만 구성되는 경우, 이동통신 단말기용의 다양한 어플리케이션들을 저장수단에 구비하고 이들 중 선택되는 어플리케이션을 구비된 통신수단을 통해 제공하는 원격지의 서버로부터 다운로드 방식에 의해 상기 이동통신 단말기(100)에 설치될 때 또는 설치 후 실행될 때 상기의 프록시 설정과정을 자동적으로 수행할 수도 있다. 상기 다중액세스 최적화기(110)내의 로컬서버(111)와 적응 송수신기(112)가 개별적인 프로세스로서 각기 실행되는 경우에, 상기의 프록시 자동설정과정은 상기 로컬서버(111) 또는 상기 적응 송수신기(112)에 의해 이루어질 수도 있다. 다운로드후 자동적으로 설치되지 않고, 상기 메모리(7)와 같은 저장수단에 저장된 후 사용자의 요청이 있을 때 설치될 수도 있다. 상기 다중액세스 최적화기(110)는 실행될 때 또는 실행중일 때는, 상기 예를 든 바와 같은 로컬주소 및 포트번호가 프록시에 대해 설정되어 있지 않거나 또는 다른 번호로 변경되거나 프록시가 비활성으로 전환설정될 때를 감지하여 사용자에게 적절한 표시를 통해 이를 알릴 수도 있다. 이렇게 알리는 정보에는 예를 들어, “복수의 이종망 사용을 통한 안정된 망액세스 상태를 유지할 수 없다”라는 내용이 포함될 수 있다.
상기 운영시스템(100a) 또는 상기 브라우저(10a)에 상기와 같은 프록시 설정이 있게 되면, 통신망에 대한 액세스 요구는 모두 상기 로컬서버(111)로 향하게 되므로 상기 로컬서버(111)가 그 액세스 요구를 처리하게 된다. 이를 보다 상세히 설명하면 다음과 같다.
통상의 브라우저(10a)상에서 사용자가 외부의 통상의 임의 웹서버(12a)상의 URL, 예를 들어 “http://videomenu.airplug.com”을 선택하면(S20), 상기 브라우저(10a)는 현재의 프록시 설정상태를 확인하고 그 활성화된 정보에 기반하여 선택된 URL에 의한 HTTP Request를 전송하기 위한 통신소켓의 생성(create)을 시도한다. 통신소켓 생성을 위해서는, 통신규약에 의한 요구, 예를 들어 HTTP Request의 목적지 호스트의 주소를 별도의 DNS( Domain Name Service )와의 통신을 통해 알아야 하나 프록시 설정의 확인과정(S21)에서 현재는 프록시 설정이 되어 있는 것을 인지하게 되므로 목적지 주소와 포트번호를 그 프록시에 설정된 주소로 하여 통신소켓 생성을 상기 운영시스템(100a)에 요청하게 된다. 이 요청에 따라 상기 운영시스템(100a)은 생성 요청된 통신소켓이 외부가 아닌 내부(로컬)를 목적지로 하는 것으로 해석하고 그 해석에 따라 생성요청된 포트번호가 할당되어 있는 실행객체, 예를 들어 실행중인 프로세스 또는 어플을 찾는다. 앞서 언급한 바와 같이 프록시에 설정한 포트번호와 동일한 번호가 상기 로컬서버(111)에 할당되어 있으므로 상기 운영시스템(100a)은, 상호간 통신창구를 개념적으로 예시한 도 3에서 보는 바와 같이, 상기 로컬서버(111)와 통신하기 위한 상기 브라우저(10a) 측의 로컬(local) 통신소켓(31a)을 생성하고 그 생성된 로컬 통신소켓의 식별자를 상기 브라우저(10a)에 리턴한다. 상기 운영시스템(100a)은 상기 통신소켓(31a) 생성시에 목적지 주소가 로컬주소이므로 그 소스(source) 주소도 로컬주소로 설정하여( 포트번호는 유일한 번호( 도 3의 pn1 )를 할당하여 ) 생성한다. 물론, 상기 브라우저(10a)측에 생성되는 통신소켓(31a)에 대응하는 상기 로컬서버(111)측 로컬 통신소켓(31b)은 목적지 주소와 소스의 주소는 상기 브라우저(10a)측의 통신소켓(31a)과는 상호 반대이다.
통신소켓 식별자가 수신되면, 상기 브라우저(10a)는 앞서 선택되었던 HTTP Request를 그 리턴된 소켓 식별자를 사용하여 상기 운영시스템(100a)에 전송을 요청하게 되고, 이 요청은 상기 운영시스템(100a)에 의해 상기 로컬 통신소켓쌍(31a,31b)을 통해 상기 로컬서버(111)로 전달된다(S22). 이 때, 상기 로컬서버(111)로 전달되는, 즉 내부의 프로세스간에 전달되는 HTTP Request, 예를 들어 “http://videomenu.airplug.com”의 포맷은 상기 운영시스템(100a)이 구현하고 있는 방식에 따라 다양한 형태를 가질 수 있지만, 표준화된 통신 프로토콜 계층에 순응하여 구성되는 경우 도 4와 같이 로컬주소 및 포트번호( 이하에서는, 특별히 배제하지 않는 한, “로컬주소”의 용어를 포트번호가 포함된 의미로 사용한다. )를 IP 헤더(41)에 포함하는 IP 패킷 포맷을 가질 수도 있다.
상기 로컬서버(111)는 수신된 HTTP Request를 적절한 매개수단(35)( 예를 들어, 광역 변수, 공유된 메모리, 또는 글로벌(global) 함수 호출 등 )을 통해 상기 적응 송수신기(112)로 전송한다(S23). 상기 운영시스템(100a)이 HTTP Request의 전달을 위해 부가한 헤더가 있다면 이를 제거함으로써 HTTP Request만을 추출하여 상기 적응 송수신기(112)로 전송한다.
본 발명에 따른 일 실시예에서는, 내(內) 처리부인 상기 로컬서버(111)와 외(外) 처리부인 상기 적응 송수신기(112)가, 상기 운영시스템(100a) 기반하에 수행되는 단일의 프로세스로서 구현될 수도 있다. 이 경우에는 양 자간의 정보 또는 데이터 교환은 내부변수들 또는 로컬함수의 인자 및/또는 리턴값 등을 통해서 이루어질 수 있다. 따라서, 본 발명의 개념과 주제, 그리고 목적하는 효과 등은, 상기 로컬서버(111)와 적응 송수신기(112)가 반드시 분리되어 각기 실행되는 프로세스를 전제하거나 필요로 하는 것은 아니며, 이하에서 설명하는 각각의 기능들이 단일의 프로세스로써 구현되어도 당연히 달성될 수 있다.
상기 로컬서버(111)로부터 상기 HTTP Request를 수신한 상기 적응 송수신기(112)는, 상기 운영시스템(100a)에 현재의 통신망 접속정보를 문의하여 현재 이용가능한 통신망을 확인하여 복수의 통신망들을 선택적으로 사용하게 된다. 상기 문의를 통해 확인할 수 있는 망접속 정보에는, 통신망에 접속된 경우에는 접속 IP주소와 그 통신망과의 커넥션 유형( 예를 들어, 3G 이동전화 통신망, Wi-Fi 무선랜망 ) 등이 포함된다. 상기 “선택적 사용”의 문구는, 현재 하나의 접속 IP주소만 이용가능한 상태( 물리적으로 하나의 통신망만 액세스 가능한 상태이거나, 또는 상기 운영시스템(100a)이나 통신망 선택을 관리하는 별도의 프로세스가 있는 경우 그 프로세서 등이 액세스 가능한 통신망들중에서 하나만 이용하도록 제한하여 접속 IP주소를 제공하는 상태 )이면 그 접속 IP주소를 사용하고, 만약 복수의 이종망들에 접속되어 있는 상태여서 통신망이 각기 다른 복수의 접속 IP주소를 이용할 수 있는 상태이면 하나 또는 그 이상의 접속 IP주소를 선택하고 그 선택된 접속 IP주소를 소스(source)주소한 외부통신용 통신소켓을 생성하는 것을 포함하는 의미로 사용한다. 통신소켓의 생성은 상기 운영시스템(100a)에 요청된다. 통신소켓의 생성을 위해 함께 전달되는 목적지의 호스트 주소는, 수신한 HTTP Request에 실린 정보( 예를 들어, “videomenu.airplug.com” )를 DNS 서버를 통해 확인한 IP 주소가 된다. 다르게는, 통신소켓 생성 요구시에 상기 HTTP Request를 매개인자( argument )로서 전달함으로써 상기 운영시스템(100a)이 지정된 DNS 서버를 통해 목적지의 호스트 주소를 확인할 수도 있다. 상기의 통신소켓 생성 요구에 따라, 상기 운영시스템(100a)은, 수신한 접속 IP주소에 대응되는 통신망을 통해 HTTP Request의 목적지 주소의 서버( 본 발명의 실시예들의 설명을 위해, 이 때의 서버는 도면상의 웹서버(12a)로 간주한다. )와 세션(session)을 개설한다. 세션이 성공적으로 개설되면 상기 운영시스템(100a)은 통신소켓 생성 요구에 대한 응답으로, 생성한 통신소켓(32)( 목적지 주소가 로컬주소로 생성된 소켓들(31a,31b)과의 용어적 구분을 위해 이하 “외향(外向) 통신소켓”이라 칭한다. )의 식별자를 상기 적응 송수신기(112)에 리턴한다.
상기 적응 송수신기(112)는 리턴된 통신소켓 식별자를 사용하여 앞서 수신되었던 HTTP Request를 상기 운영시스템(100a)에 전달함으로써 그 HTTP Request는, 도 2a상의 예시된 이종망들(11a,11b) 중 어느 하나의 통신망을 통해 상기 웹서버(12a)로 전송된다(S24). 이 때 이동전화 통신망(11a)이 사용되는 경우에는 그 HTTP Request를 실은 IP 패킷이 상기 셀룰러 코덱(1b)에 의해 코딩된 후 상기 셀룰러 모뎀(1a)에 의해 변조되어 송신되고, Wi-Fi 무선랜망(11b)가 사용되는 경우에는 그 HTTP Request를 실은 IP 패킷이 상기 Wi-Fi 코덱(2b)에 의해 코딩된 후 상기 Wi-Fi 모뎀(2a)에 의해 변조되어 송신된다.
한편, 상기 적응 송수신기(112)가 수신된 HTTP Request를 수정하거나 또는 그 HTTP Request( 또는 그 HTTP Request를 전향시키는 Response )에 기반하여 새로운 HTTP Request를 하나 또는 그 이상 작성하여 상기 운영시스템(100a)으로 전송할 수도 있다. 이에 대해서는, 구체적인 예를 들어 후술한다.
상기 웹서버(12a)가 상기 HTTP Request를 해석하고 그에 따른 통신규약에 의한 응답인 HTTP Response, 예를 들어 웹페이지를 상기 이동통신 단말기(100)로 전송하면(S25), 그 응답 웹페이지는 상기 운영시스템(100a)에서 수신되어, 앞서 생성된 상기 외향 통신소켓(32)( 이 통신소켓은 앞서 상기 적응 송수신기(112)와 공유된 통신소켓 식별자에 의해 특정된다. )을 통해 상기 적응 송수신기(112)에 전송된다. 상기 적응 송수신기(112)는 수신된 응답 웹페이지를 앞서 언급한 적절한 매개수단(35)을 통해 상기 로컬서버(111)로 전달하고(S26), 상기 로컬서버(111)는 앞서 생성된 소켓쌍(31a,31b)을 통해 상기 수신된 응답 웹페이지를 상기 브라우저(10a)로 전달한다(S27).
상기 브라우저(10a)는 상기 운영시스템(100a)에 요청하여, 수신한 응답 웹페이지를 상기 디스플레이 구동부(4)를 통해 상기 디스플레이 패널(5) 상에 출력시키고, 상기 입력 제어부(6)를 통해 사용자가 선택한 하나의 항목, 예를 들어 비디오 컨텐트 항목에 대한 정보가 입력되면 그 선택 항목에 대응되는 HTTP Request, 예를 들어 “http://vod.airplug.com/video/example.mp4”를, 앞서 생성되었던 통신소켓(31a)을 통해 상기 로컬서버(111)로 전달 요청한다. 이 때의 HTTP Request에 의한 목적지의 호스트 주소가 앞서의 HTTP Request, 예를 들어 “http://videomenu.airplug.com”의 호스트 주소와 다르더라도 프록시가 설정되어 있고 그 프록시의 설정주소는 고정된 로컬주소이므로 상기 브라우저(10a)는 새 통신소켓의 생성없이 앞서 생성된 소켓(31a)을 사용한다. 다르게는 별도의 새 통신소켓을 생성하여 사용할 수도 있다.
상기 로컬서버(111)는 수신한 HTTP Request를 적절한 매개수단(35)을 통해 상기 적응 송수신기(112)에 전달하고, 상기 적응 송수신기(112)는 수신된 HTTP Request가 기 생성된 외향 통신소켓에 해당하는 IP 주소를 목적지로 하고 있지 않으면 상기 운영시스템(100a)에 새 외향 통신소켓의 생성을 요구하고 그에 따라 해당 목적지와의 세션이 개설됨으로써 외향 통신소켓(33)이 생성되면, 수신된 HTTP Request를 그 생성된 외향 통신소켓(33)으로 상기 운영시스템(100a)에 전송하고 그에 따른 HTTP Response, 예를 들어 스트리밍방식의 특정한 비디오 컨텐트를 수신하게 된다(S28).
상기 적응 송수신기(112)는 만약 상기 수신된 HTTP Request가 지시하는 목적지의 IP와 기 개설된 세션이 있는 경우에도, 지정된 조건에 따라서는, 그 세션이 개설된 통신망과 다른 통신망에 대해 할당된 접속 IP를 사용하여 별도의 세션을 개설하기 위해 상기 운영시스템(100a)에 새로운 외향 통신소켓의 생성을 요구할 수도 있다. 이는 서로 다른 인프라의 이종망들을 선택적으로 병용하기 위해서이다.
하나의 로컬주소의 통신소켓에 대응하여 2개 이상의 다수의 외향 통신소켓이 생성되는 경우, 상기 다중액세스 최적화기(110)는, 예를 들어, 이들 통신소켓간을 상호 매핑시키는 정보를 생성하여 이용하거나, 또는 상호 대응되는 통신소켓군( 로컬주소의 통신소켓-다수의 외향 통신소켓들, 또는 로컬주소의 통신소켓-외향 통신소켓 )을 처리하는 프로세스(process)를 생성하면서 각 프로세스에 대해서 일단(一段)은 공통된 통신소켓( 예를 들어, 도 3의 31b )을, 타단(他端)에 대해서는 다수의 외향 통신소켓들을 함께 지정하거나 또는 다수의 외향 통신소켓들 중 하나를 지정함으로써 하나의 로컬주소의 통신소켓에 다수의 외향 통신소켓을 상호 연계시키게 된다. 전자의 경우는 하나의 프로세스에 의해 로컬주소의 통신소켓에 다수의 외향 통신소켓들을 연계시키게 되고, 후자의 경우는 다수의 프로세스에 의해 다수의 외향 통신소켓들을 하나의 로컬주소의 통신소켓에 연계시키게 된다. 물론, 그 역의 경우( 다수의 로컬주소의 통신소켓들과 공통된 하나의 외향 통신소켓 )에도 같은 원리로 상호 연계시키게 된다. 이러한 상호 연계 방식은 단독으로 또는 조합하여, 로컬주소로써 생성되는 통신소켓과 외향 통신소켓이 모두 다수일 경우에도 그대로 적용될 수 있다. 즉, 로컬주소에 대해 생성된 통신소켓이 N개( N≥2 )이고 그에 대응하여 생성되는 외향 통신소켓이 M개( M≥2 )인 경우에도 그대로 적용될 수 있으며, 예를 들어, N:M 간의 매핑정보를 갖는 1개의 프로세스, 1:M으로 처리 통신소켓이 지정된 N개의 프로세스, 또는 1:1로 처리 통신소켓이 지정된 NxM개의 프로세스들에 의해 상호 연계될 수 있다.
한편, 상기의 과정에 따라 스트리밍 또는 다운로드되는 HTTP Response의 컨텐트 데이터는, 상기 운영시스템(100a)간에 생성된 외향 통신소켓(32 또는 33)을 통해 상기 적응 송수신기(112)에 의해 수신되어, 필요한 경우 상기 버퍼(113)를 거쳐 또는 직접적으로 상기 로컬서버(111)로 전달되고 그 데이터는 그와 연관되어 있는 어플, 예를 들어 비디오 플레이어(10b)에 전달되면서 재생된다(S29).
상기의 HTTP Request에 의해 스트리밍 또는 다운로드되는 컨텐트 데이터가 다수의 이종망들에 개설된 세션들을 통해 수신하기 위해서는 상기 적응 송수신기(112)가 해당 컨텐트 데이터의 구간을 적절히 구분하여 각 구간에 대한 HTTP Request를 생성된 외향 통신소켓을 통해 전송하고 그에 따라 수신되는 각 HTTP Response에 포함되어 있는 컨텐트 데이터 구간을 조합하게 된다. 도 5a 및 5b는 이에 대한 과정의 이해를 돕기 위한 예시이며, 도 5a는 하나의 통신망을 통한 데이터 수신 중 타 통신망을 추가적으로 사용하는 방법에 대한 예시이고, 도 5b는 컨텐트 데이터를 요구하는 최초의 HTTP Request에 대해 처음부터 복수의 통신망을 사용하는 방법에 대한 예시이다.
도중에 복수의 이종망들을 사용하는 도 5a의 예를 보다 상세히 설명하면, 상기 적응 송수신기(112)는 복수의 이종망들을 통한 병행 수신이 필요하다고 판단되면, 현재 컨텐트 데이터가 전송되고 있는 제 1통신망, 예를 들어 이동전화 통신망(11a)에 개설된 세션외에 별도의 세션을 제 2통신망, 예를 들어 Wi-Fi 무선랜망(11b)에 개설하고( 즉, 상기 제 2통신망으로부터 할당받은 접속 IP주소를 사용하여 외향 통신소켓을 생성하고 ) 그 개설된 세션을 통해( 즉, 상기 제 2통신망에 대해 생성한 외향 통신소켓을 통해 ) 현재 수신받고 있는 컨텐트 데이터의 구간(52)( 예를 들어, 해당 컨텐트 파일의 ‘N+1’ 부터 ‘N+K’ 바이트까지 )을 지정하여 HTTP Request를 해당 컨텐트 서버(12b)에 요청한다(t51). 그리고, 기존에 수신받고 있던 제 1통신망의 세션에 대응되는 외향 통신소켓을 통해서는, 현재 수신되고 있는 컨텐트 데이터(51)에 대해 특정 위치( 예를 들어, N 바이트 지점 )부터의 전송 중단을 요청하는 메시지와, 앞서 상기 제 2통신망으로 전송요청한 데이터 구간(52)에 연이어지는 지점( ‘N+K+1’ 바이트 지점 )부터의 구간(53)을 전송요청하는 HTTP Request를 각각 전송한다. 이와 같은 요청들에 의해서 상기 컨텐트 서버(12b)로부터 도 5a에 예시된 바와 같이 서로 다른 인프라의 통신망들에 개설된 세션을 통해 동일 컨텐트의 데이터 구간들이 병행전송된다.
본 발명에 따른 다른 일 실시예에서는, 상기 특정위치( 예를 들어, N 바이트 지점 )부터의 전송 중단을 요청하는 메시지를 송신하지 않을 수도 있다. 대신, 상기 제 1통신망의 세션에 대응되는 외향 통신소켓을 통해서 수신되는 데이터의 위치를 확인하고, 그 위치가 전체에서 상기 특정위치가 되거나 또는 그 특정위치 이후의 데이터가 수신되면 그 외향 통신소켓에 대한 폐쇄를 상기 운영시스템(100a)에 요청한다. 폐쇄요청 이전에 수신된 데이터에 상기 특정위치 이후의 데이터가 포함되어 있는 경우에는, 그 데이터는, 이 후에 설명하는 데이터 구간들의 조합해서 제거된다. 상기 통신소켓의 폐쇄 요청이 있으면 상기 운영시스템(100a)은 그 통신소켓에 할당된 자원을 회수(release)하고 이에 따라 상기 컨텐트 서버(12b)와의 세션도 해제되므로, 상기 컨텐트 서버(12b)는 그 세션을 통한 데이터 전송을 중단하게 된다.
처음부터 복수의 이종망들을 사용하는 도 5b의 예는, 상기 적응 송수신기(112)가, 상기 로컬주소의 통신소켓(31b)을 통해 수신되어 상기 로컬서버(111)로부터 전달된 HTTP Request(S51)가 요구하는 컨텐트 데이터에 대하여, 복수의 이종망들을 병용하여 수신하는 것이 적절하다고 판단되고 2개이상의 통신망들이 현재 사용할 수 있는 상태이면, 그 통신망들 각각에 대해 외향 통신소켓을 생성하여 각 통신망에 대해 해당 서버와의 세션을 개설시킨다. 복수의 세션이 개설되면, 상기 적응 송수신기(112)는 수신한 HTTP Request를, 요구하는 컨텐트 데이터를 구간별로 나누어 요청하는 각각의 HTTP Request로 수정하여(S52a, S52b,…) 이를 개설된 세션별로 송신(t52)함으로써, 이종의 통신망들상으로 분할된 각 구간들이 단일의 서버로부터 동시에 수신될 수 있도록 한다.
도 5b에 예시된 병행 수신은, 수신한 원(original) HTTP Request(S51)가 요구하는 전체 데이터에 대해, 1차적으로, 제 1통신망, 예를 들어 이동전화 통신망(11a)으로 1~N 바이트까지의 구간(541)을, 그리고 제 2통신망, 예를 들어 Wi-Fi 무선랜망(11b)으로 ‘N+1’~’N+K’ 바이트까지의 구간(542)을 요청하는 각각의 HTTP Request를 작성( 상기 원 HTTP Request의 요청 객체에 대한 정보를 수정하거나 또는 그 정보를 반영하여 새로이 작성함으로써 )하여 각 통신망에 대해 생성된 외향 통신소켓으로 송신하고, 2차적으로, 상기 제 2통신망상으로 요청한 데이터 구간(542)이 수신완료되었음에도 여전히 해당 제 2통신망이 액세스가능상태로 유지되고 있음으로 인해, 수신한 데이터 구간(542)의 다음부터인 ‘N+K+1’~’N+K+P’ 바이트까지의 구간(543)을 요청하는 HTTP Request를 작성하여 상기 제 2통신망으로 송신하고(t53), 마지막으로, 상기 제 1통신망으로 통해 요청한 구간(541)이 수신완료되어 그 나머지 ‘N+K+P+1’부터 마지막까지의 구간(544)을 요청하는 HTTP Request를 상기 제 1통신망으로 송신함(t54)에 따라 각 통신망으로 데이터 구간들이 수신되는 것을 예시한 것이다. 도 5b의 예시된 통신망 수는 당연히 3이상일 수도 있으며, 최초 요구된 컨텐트의 전체를 구간별로 구분하고 이를 통신망들로 분배하여 해당 HTTP Request를 송신하는 방법은 도면상에 제한적으로 예시된 방법외에 다양한 방법들이 존재할 수 있다.
한편, 상기와 같은 구간분할한 각 HTTP Request와 함께 상기 적응 송수신기(112)는 각기 요청한 데이터 구간과 그 구간을 요청한 HTTP Request를 송신한 외향 통신소켓을 기억(memorize)한다. 그리고, 이 기억한 정보를 이용해서, 일부가 적어도 하나의 다른 망을 경유하여 해당 외향 통신소켓들을 통해 수신되는 HTTP Response( 이 응답에 컨텐트 데이터의 구간이 포함되어 있다. )들을 순서대로 조합하여 상기 로컬서버(111)로 전달함으로써 그 외향 통신소켓들과 상호 대응관계에 있는 로컬주소의 통신소켓을 통해 차례대로 내부의 어플( 예를 들어, 비디오 플레이어(10b) )에 전달하게 된다. 예를 들어, 도 3에서 각기 다른 통신망에 대해 생성된 외향 통신소켓 32와 33을 통해 수신된 HTTP Response들이 순서대로 조합되어 로컬주소의 통신소켓쌍 31a와 31b를 통해 범용 어플에 전달되는 것이다. 원래 의도된 완전한 HTTP Response를 구성하기 위해 부분적인 HTTP Response들은 상기 버퍼(113)에 임시 저장된다.
한편, 상기 적응 송수신기(111)가 하나 또는 그 이상의 통신망에 대해 접속 IP를 할당받아 접속가능한 상태에서, 그 중 임의의 통신망의 통신환경이 악화되어 접속이 해제되면( 다른 통신망을 사용하기 위해 접속 IP의 전환이 이루어진 경우도 포함한다. ) 상기 운영시스템(100a)은 접속해제된 상태를 알리기 위해, 해제된 접속 IP 정보를 갖는 이벤트(event)를 발생시킨다. 이 이벤트는 상기 다중액세스 최적화기(110)를 포함한 모든 실행 중인 프로세스들에게 전달된다. 하지만, 본 발명에 따라, 실행 중인 프로세스의 요청에 의해 통신소켓을 생성할 때 로컬 주소를 사용하였으므로 각 통신소켓의 소스 주소는 접속 해제된 IP가 아니다. 따라서 발생된 이벤트는 무시되고( 통상의 어플들 중에는 접속 해제된 IP와 생성된 통신소켓의 IP의 동일성 유무를 확인하지 않고 무조건 무시하는 어플들도 있다. ) 여전히 자신이 생성요청한 통신소켓을 통한 데이터 수신을 대기하고 있거나 그 통신소켓을 데이터 송신을 위해 사용한다. 일반적으로 외향 통신소켓을 통해 HTTP Request를 송신한 후 HTTP Response가 수신되지 않으면 지정된 상당한 시간동안 그 HTTP Request를 송신한 어플은 중지상태가 되는 데, 본 발명에서는 프로세스, 예를 들어 브라우저(10a)나 비디오 플레이어(10b)가 로컬주소의 통신소켓을 사용하고 있으므로 상기 다중액세스 최적화기(110)가 그 로컬주소의 통신소켓을 통한 데이터 교환을, 임의 통신망과의 접속해제에도 불구하고 유효하게 유지시키게 되면 프로세스는 통신망의 접속상태의 해제나 전환 등에 영향을 받지 않게 된다. 이를 위해, 상기 적응 송수신기(112)는 임의 통신망과의 접속이 해제되면 그 해제된 접속 IP를 사용하여 생성한 사용중단된 외향 통신소켓( 이하, ‘사고 소켓’이라 칭한다. )이 있는 지를 확인하고, 있는 경우에는 그 사고 소켓의 목적지 주소를 사용하여 현재 유효하게 접속이 유지되고 있는 통신망에 대해 외향 통신소켓을 상기 운영시스템(100a)에 생성요청한다. 이 요청에 의해 외향 통신소켓이 생성되어 상기 운영시스템(100a)으로부터 리턴되면, 상기 적응 송수신기(112)는, 그 사고소켓과 연계되어 있던 로컬주소의 통신소켓과 상기 새로이 생성된 외향 통신소켓을 상호 연계시키고( 이 연계방법은 앞서 설명한 바 있다. ), 상기 사고소켓을 통해 송신했던 HTTP Request가 있으면 그 HTTP Request를 새로이 생성한 외향 통신소켓을 통해 다시 송신한다. 이에 따라, 이전에 HTTP Request의 송신 후 그 통신망과의 접속이 해제되어도 다른 통신망을 통해 그 HTTP Request에 대한 Response를 정상적으로 수신하여 해당 HTTP Request를 최초 발송하였던 프로세스에게 로컬주소의 통신소켓을 통해 전달하여 정상적으로 이를 처리하게 하므로, 프로세스가 통신망 상태의 변화에 의해 중지되는 경우는 발생하지 않게 된다.
한편, 상기 적응 송수신기(112)는 사고소켓에 대한 재송신을 위해, 임의의 외향 통신소켓을 사용하여 요청한 HTTP Request에 대해서 해당 외향 통신소켓과 연관하여 요청한 순서대로 저장하고 해당 통신소켓을 통해 HTTP Response가 수신되면 가장 앞서 저장해 둔 HTTP Request를 삭제하는 동작을 수행한다.
본 발명에 따른 일 실시예에서는, 상기 적응 송수신기(112)는, 사고소켓에 대한 재송신 동작을 행함에 있어서, 사고 소켓에 대해 수신된 일부의 HTTP Response를 반영하여 그 사고소켓에 대해 송신되었던 HTTP Request를 수정하여 새로이 생성한 외향 통신소켓을 통해 송신할 수도 있다. 예를 들어, HTTP Request가 대용량 파일에 대한 다운로드 요청이었고, 그 Response로서 N 바이트까지 수신한 후 통신망 상태에 의해 해당 외향 통신소켓이 사고소켓이 되면, 상기 적응 송수신기(112)는 그 사고소켓에 대해 요청되었던 HTTP Request를 해당 파일에 대한 ‘N+1’ 바이트부터의 다운로드 요청인 것으로 수정하고 새로이 생성한 외향 통신소켓을 통해 송신하게 된다. 물론, 새 외향 통신소켓을 통해 HTTP Response가 수신되면 이 Response는 사고 소켓에 대해 수신되었던 일부의 HTTP Response와 조합하여 완전한 HTTP Response를 구성하여 상기 로컬서버(111)로 전달하게 된다.
사고소켓에 대응하여 새 외향 통신소켓을 생성하여 사용 통신망을 전환하는 전술한 방법은, 상기 적응 송수신기(112)가 상기 운영시스템(100a)으로부터의 접속 IP의 해제 이벤트의 발생이 없는 경우에도 수행할 수도 있다. 예를 들어, 현재 사용하는 외향 통신소켓에 대한 통신망으로부터의 응답이 너무 느리거나, 초당 수신되는 데이터량이 적은 경우, 또는 사용하는 데 소요되는 비용이 상대적으로 낮은 통신망이 이용가능해 진 상태인 경우에, 현재 사용하는 외향 통신소켓에 대한 사용중단을 결정하고 그 사용중단한 외향 통신소켓에 대응하여 다른 통신망의 외향 통신소켓을 생성함으로써 통신망 사용을 전술한 바와 같이 전환할 수도 있다.
전술한 과정에 따라, 통상의 어플들 또는 프로세스들은, 현재 상기 이동통신 단말기(100)가 어떤 통신망에 접속되어 있던지 또한 어떤 통신망을 사용하던지에 무관하게 고정된 호스트(host) 주소, 즉, 로컬주소를 사용하여 상기 로컬서버(111)와 원하는 데이터 교환을 안정적으로 수행하게 된다. 다시 말하면, 다양한 조건에 따라, 통신망의 상태의 상태를 반영하여 현재 사용하고 있는 통신망을 전환하거나 또는 하나의 통신망에서 복수개의 이종 통신망들을 모두 사용하던지 하는 동작을, 로컬주소의 통신소켓들이 통신창구로서 유효하게 유지되게 하면서 상기 다중액세스 최적화기(110)가 수행함으로써, 통상의 어플들은 통신망의 상태에 무관하게 원할하고 안정적인 정보이용 서비스를 제공받게 된다.
전술한 실시예에서, 상기 적응 송수신기(112)는 HTTP Response의 데이터량이 많으면 현재 통신망이 접속가능한 모든 또는 복수의 이종 통신망들을 사용하고, 그렇지 않은 경우에는 다수의 이종 통신망들 중에서 하나의 통신망을 통해서만 데이터 송수신을 수행할 수도 있다( 이 때는 물론 그 통신망이 접속 불가능해 지면 다른 접속가능한 통신망으로 전환 사용하게 된다 ). 그리고, 통신망을 선택할 때는 상기 운영시스템(100a)이 디폴트(default)로 접속하는 통신망을 먼저 선택하고, 앞서 언급한 바와 같이 데이터량에 따라 추가적으로 다른 통신망을 더 선택하여 사용할 수도 있다.
본 발명에 따른 다른 일 실시예에서는, 복수의 이종망들중에서 사용할 통신망을 선택하는 것은 여러 다양한 조건과 정책에 따라 결정될 수도 있다. 도 6은 본 실시예에 따른 다중액세스 최적화기(610)에 대한 구성의 예를 도시한 것으로서, 주어진 조건( 정보량, 통신망의 특성과 현재 상태 등 )과 설정된 정책 등에 따라 통신망을 선택하는 기능을 수행하는 서브(sub) 프로세스인 망 선택기(615)(Network Selecting Agent)를 더 포함한다. 상기 망 선택기(615)는, 이하에서 예를 들어 설명하는 통신망 선택방법에 따라 사용할 통신망을 결정하면 이를 적응 송수신기(612)에 요청 또는 통지(c1)함으로써, 상기 적응 송수신기(612)가 그 통신망에 대해 외향 통신소켓의 생성을 상기 운영시스템(100a)에 요청하거나, 그 통신망에 대해 기 생성되어 있는 외향 통신소켓을 사용하게 한다.
상기 망 선택기(615)는 가용할 수 있는 모든 통신망에 대한 특성을 반영하여 현재 사용할 통신망을 결정하게 되는 데, 통신망에 대한 특성에는, 해당 통신망의 데이터 서비스에 대한 요금 정책( 예를 들어, 유료 또는 무료 ), 데이터 서비스의 속도, 서비스 권역(coverage)의 크기, 서비스 품질의 변동성 등이 있을 수 있다.
사용할 통신망을 결정하는 방법을 보다 구체적이고 예시적으로 설명하면, 만약, HTTP Request를 통해 요구하는 정보의 종류가 데이터량이 많은 컨텐트로 확인되면 상기 망 선택기(615)는 사용할 통신망을 서비스권역은 좁지만 서비스의 속도가 빠른 특성의 통신망, 예를 들어 Wi-Fi 무선랜망을 선택하도록 상기 적응 송수신기(612)에 통지 또는 요청한다. 데이터량이 많지 않고 요구하는 방식이 다운로드가 아니고 스트리밍 방식이면 서비스 속도는 상대적으로 느리지만 서비스권역이 넓은 통신망, 예를 들어 3G 이동전화 통신망을 선택하도록 상기 적응 송수신기(612)에 통지할 수도 있다. 상기와 같은 판단에 따라 사용할 통신망이 결정되도록, 상기 적응 송수신기(612)는 상기 로컬서버(611)로부터 HTTP Request가 수신되고 그 Request에 의해 외향 통신소켓을 새로이 생성해야 하는 경우에는 외향 통신소켓의 생성을 상기 운영시스템(100a)에 요청하기 전에 그 HTTP Request를 또는 그 Request에 기반하여 작성된 요구내용을 상기 망 선택기(615)에 전달하면서 망선택을 문의하게 된다. 물론, 새로운 외향 통신소켓을 생성해야 하는 경우가 아니어도 해당 Request를 통신망을 결정하기 위해 상기 망 선택기(615)에 수신한 Request를 또는 그 Request에 기반하여 작성된 요구내용을 전달하면서 망선택을 문의할 수도 있다.
상기 망 선택기(615)는 또한 가용할 수 있는 통신망들의 상태를 확인하고 최선의 통신망 상태에 있는 통신망을 결정할 수도 있다. 확인하는 통신망 상태에는 전송속도, 수신신호 세기, 또는 외부서버에 질의를 통해 확인되는 트래픽량( 또는 부하량 ) 등이 포함될 수 있으며, 이들 예시된 요소들을 모두 확인할 수 있는 것을 가정할 때 최선의 통신망 상태는 전송속도가 빠르고, 수신신호 세기가 높으며 트래픽량이 적은 상태에 있는 것을 의미한다. 각 통신망의 전송속도를 확인할 수 있도록, 상기 적응 송수신기(612)는, 현재 생성되어 있는 각 외향 통신소켓들을 통해 수신되는 데이터량을 그 외향 통신소켓에 의한 커넥션 유형( 이는 곧 접속되어 있는 통신망의 종류에 대응된다. )별로 취합하고 이를 일정시간당 나눈 값을 상기 망 선택기(615)의 요청시에 제공하거나 또는 외향 통신소켓 생성을 위해 HTTP Request를 상기 망 선택기(615)에 전달할 때 함께 제공한다. 그리고 수신 신호세기는 그 정보를 확인할 수 있는 통신망, 예를 들어 Wi-Fi 무선랜망에 대해서 이루어지며, 이를 위해서 상기 망 선택기(615)는 상기 운영시스템(100a)에 그 정보를 요구하여 수신하게 된다(c2). 상기 운영시스템(100a)은, 해당 통신망과 물리적으로 신호를 송수신할 수 있는 상기 Wi-Fi 모뎀(2a)이 Wi-Fi 신호대역에서 유효신호의 검출 시에 제공하는 RSSI (Received Signal Strength Indicator)의 값 등을 읽어서( 도 2b의 r21 ) 이를 상기 망 선택기(615)에 리턴한다. 각 통신망에 대한 트래픽 정보는, 통신망을 통합적으로 관리하는 서버( 이 서버에 대한 액세스 방식은 상기 망 선택기(615)에 기 설정된다. )에 현재 가용한 통신망중에서 임의의 한 통신망을 통하여 접속하여 해당 정보를 문의하여 수신하게 된다.
본 발명에 따른 일 실시예에서는, 상기 망 선택기(615)가 사용자의 이동전화 서비스 이용을 위해 가입한 요금제에 근거해서 현재 사용할 통신망을 결정할 수도 있다. 이를 위해, 상기 다중액세스 최적화기(610)는 최초 실행시에 상기 운영시스템(100a)이 제공하는 적절한 UI를 통해 사용자로부터 현재 사용하고 있는 서비스이용 요금제를 입력하도록 하여, 입력되는 요금제 정보를 상기 망 선택기(615)에 제공하여 이용할 수 있도록 한다. 요금제 정보는, 예를 들어, 이동전화 통신망을 통한 데이터 이용량의 상한선이 없는 ‘무제한제’, 요금이 부과되기 시작하는 상한 데이터량과 그 상한선 이상의 경우에 요금이 부과되는 방식, 예를 들어 “N MByte당 S원”과 같은 정보를 포함한다. 상기 요금제 정보는, 상기 망 선택기(615)가 사용자의 개인식별정보를, 상기 적응 송수신기(612) 또는 망 선택기(615)를 통해 이동전화 통신 서비스를 제공하는 통신망의 운영서버에 질의하여 수신할 수도 있다. 상기 망 선택기(615)는 현재 서비스 이용요금제가 ‘무제한’이면 상대적으로 품질의 변동성이 적고 광역의 서비스 권역을 갖는 통신망, 예를 들어 3G 이동전화 통신망을 선택하도록 하고, 상한선이 있는 요금제이면, 그 상한선까지 여유가 있을 때는 마찬가지로 3G 이동전화 통신망을, 여유가 없으면, 예를 들어 상한량의 10%이하의 여유가 있을 때는 정책적으로 무료로 제공되고 있는 통신망, 예를 들어 Wi-Fi 무선랜망을 선택하도록 한다. 이를 위해, 상기 적응 송수신기(612)는 기간, 예를 들어 월별로 각 통신망을 사용해 송수신한 데이터량을 누적하여 그 값을 상기 망 선택기(615)에 제공한다.
사용할 통신망의 결정을 위해 사용되는 전술한 각 요소들은 단독으로 사용되는 대신, 각 요소에 적절히 가중치를 부여하여 각 통신망에 대해 합산 산출하는 점수에 근거하여 최고점수의 통신망을 선택할 수도 있다.
전술한 실시예에서는, 상기 망 선택기(615)가 상기 적응 송수신기(612)의 HTTP Requet 또는 그에 기반하여 작성된 요구내용에 따라 사용할 통신망을 결정하여 통지하였으나, 본 발명에 따른 다른 실시에에서는, 상기 망 선택기(615)가 현재 확인되는 상황이나 조건 등[ 예를 들어, 전술한 요소들 중, HTTP Request로부터 확인되는 요소( 정보의 종류 또는 요구 데이터량 등 )들을 배제한 요소들 ]에 따라 사용할 통신망을 적응적으로 선택하고 있다가 상기 적응 송수신기(612)의 문의 시에 현재 선택하고 있는 통신망을 알려줄 수도 있다. 본 실시예에서는, 상기 적응 송수신기(612)는, HTTP Request를 상기 로컬서버(611)로부터 수신하면 상기 망 선택기(615)에 사용할 통신망을 문의하여 통지되는 통신망으로, 상기 수신된 HTTP Request( 또는 그에 따라 작성된 HTTP Request )를 송신하거나, 또는 상기 수신된 HTTP Request( 또는 그에 따라 작성된 HTTP Request )를 먼저 송신한 후, 이 후의 HTTP Request 등의 전송을 위해 사용할 통신망을 상기 망 선택기(615)에 문의할 수도 있다. 상기 수신한 HTTP Request를 먼저 송신할 때는, 디폴트(default)로 지정된 통신망을 사용하여 송신하거나 또는 해당 HTTP Request와 매칭(matching)되는 기 생성되어 있는 외향 통신소켓을 통해 송신하게 된다.
전술한 실시예들에서, 사용하기로 선택한 통신망은 항구적으로 사용되는 것은 아니며, 통신망 상태의 변화에 따라 타 통신망으로 전환되거나 또는 추가적으로 타 통신망( 또는 통신망들 )이 상기 적응 송수신기(112,612)에 의해 병용적으로 사용될 수 있음은 전술한 바와 같다.
전술한 실시예에서는, 범용의 어플들 또는 프로세스들이 통신망을 이용하는 데이터 요구를, 프록시 설정을 통해 본 발명에 따른 다중액세스 최적화기로 향하도록 하고 통신망의 상황변화 등에 대한 것을 상기 다중액세스 최적화기가 전담하여 처리함으로써 범용의 어플들 또는 프로세스들은 그 상황변화 등에 무관하게 안정적인 통신상태를 유지할 수 있도록 하였다. 본 발명에 따른 다른 실시예에서는, 이동통신 단말기(100)의 프록시 설정을 사용하지 않고 외부 가로채기 서버를 사용한다. 도 7은, 본 발명에 따른, 고정 호스트주소에 기반하여 복수의 이종망(異種網)을 선택적으로 사용할 수 있게 하는 방법의 다른 실시예이다. 본 실시예에 따른 이동통신 단말기(700)는, 도 2를 참조로 설명한 실시예에서의 다중액세스 최적화기(110)이거나 도 6을 참조로 설명한 다중액세스 최적화기(610)일 수 있는 다중액세스 최적화기(710)를 포함한다. 그리고, 상기 다중액세스 최적화기(710)는 전술한 실시예들 중 어느 하나에서 설명한 다중액세스 최적화기(110 또는 610)의 동작과 동일한 동작을 수행한다.
본 실시예에 따른 가로채기(preempt) 서버(701)는, 상기 이동통신 단말기(700)에 대해 이동전화 서비스를 제공하는 통신망, 예를 들어 3G 이동전화 통신망(11a)에 별도로 구축되거나, 또는 그 통신망(11a)의 모든 데이터 통신내용을 모니터링하는 서버, 예를 들어 데이터 검열서버내에 통합적으로 구성될 수도 있다. 상기 가로채기 서버(701)는 해당 통신망 또는 자신이 관장하는 모든 통신망들을 통해 요청되는 HTTP Request를 분석하여, 예를 들어 특정의 서버에 대한 Request이거나 또는 대량의 데이터를 요구하는 Request이면 그 Request를 전향(Redirect)시키게 된다. 이하에서는 상기 이동통신 단말기(700)가 요청하는 HTTP Request가 상기 가로채기 서버(701)에서 전향시키는 것으로 설정된 Request에 해당하는 것을 전제하여 설명한다.
통상의 브라우저(10a)상에서 임의 웹서버(12a)상의 URL을 선택하면(S70) 그에 해당하는 통신규약에 의한 요구, 예를 들어 HTTP Request를 전송하기 위한 통신소켓을 운영시스템(100a)에 요청한다. 이 때의 HTTP Request는 그 목적지의 호스트 주소가 외부 서버이므로 생성 요청하는 소켓은 외향 통신소켓이 된다. 상기 운영시스템(100a)이 가용할 수 있는 통신망들 중에서 현재 접속되어 있는 통신망으로부터 할당받은 접속 IP를 소스 주소로 하는 외향 통신소켓을 생성하여 리턴하면 상기 브라우저(10a)는 상기 HTTP Request를 해당 외향 통신소켓을 통해 전송요청한다. 이 HTTP Request는 목적지인 상기 웹서버(12a)로 향해 송신되지만(S71), 그 전에 먼저 상기 가로채기 서버(701)로 전달된다(S71-1). 그러면, 상기 가로채기 서버(701)는 수신한 HTTP Request에 대해 전향을 지시하는 HTTP Response를 상기 이동통신 단말기(700)로 전송한다(S72). 이 때의 HTTP Response에 있는 전향시키는 주소( IP와 포트번호 )는 상기 다중액세스 최적화기(710)에 기 설정되어 있는 로컬주소가 되며, 이 주소는 상기 가로채기 서버(701)와 이동통신 단말기(700)간에 기 공유되어 있게 된다. 그리고, 상기 HTTP Response에는, 상기 수신한 HTTP Request에서 요청하고 있는 객체( 웹페이지, 컨텐트 등 )에 대한 정보, 예를 들어 URL을 그대로, 또는 그 객체를 유일하게 식별할 수 있는, 상기 다중액세스 최적화기(710)내의 로컬서버와 상호 약속된 방식으로 수정한 객체정보가 포함된다.
상기 전향을 지시하는 HTTP Response를 상기 생성한 외향 통신소켓을 통해 수신한 상기 브라우저(10a)는 그 HTTP Response에 의한 지시에 따라 그 Response에 기재된 객체정보를 요구하는 HTTP Request를 구성하여 그 지시한 목적지 주소, 즉 로컬주소로 송신하게 된다. 이를 위해, 상기 브라우저(10a)는 상기 운영시스템(100a)에 로컬주소를 사용하는 통신소켓의 생성을 요청한다. 이 요청에 따라 로컬주소의 통신소켓이 생성되어 상기 브라우저(10a)로 리턴되고, 상기 브라우저(10a)는 리턴된 통신소켓을 사용하여, 앞서 전향지시되었던 객체에 대해 구성된 HTTP Request를 전송한다(S73). 이 HTTP Request는 로컬주소에 의해 상기 다중액세스 최적화기(710)에 의해 수신되므로, 상기 다중액세스 최적화기(710)는 전술한 실시예들에서와 같이, 적절한 방식으로 선택되는 통신망에 대한 외향 통신소켓을 생성하여 수신한 HTTP Request를 해당 목적지 서버로 전송하게 된다(S74). 이 요청에 따라 수신되는 상기 웹서버(12a)의 응답페이지에서 선택되는 컨텐츠에 대한 또 다른 통신규약에 의한 요구인 HTTP Request에 대해서도, 전술한 과정( 가로채기, 전향 지시, 전향 지시에 따른 HTTP Request 구성, 로컬주소 통신소켓을 통한 전달, 외향 통신소켓을 통한 통신망으로의 전송 )을 거쳐 컨텐트 서버(12b)로 전송된다.
도 8은, 전술한 과정에 따라, HTTP Request를 전송하기 위해 생성되는 통신소켓들을 개념적으로 도시한 것이다. 도 3을 참조로 설명한 실시예에서와 달리, 상기 브라우저(10a)와 같은 범용 어플들이 HTTP Request를 전송할 때 외향 통신소켓(81)이 생성되고, 전향된 HTTP Request에 대해 구성한 HTTP Request를 상기 다중액세스 최적화기(710)에 전달하기 위한 로컬주소 소켓쌍(82a,82b)이 생성되며, 이 후 외부의 통신망 또는 통신망들을 통해 목적지의 서버로 HTTP Request를 전송하기 위해 하나 이상의 통신망에 하나 이상의 통신소켓(83,84,…)이 생성된다. 도 8에 예시된 바와 같이 통신소켓들이 생성된 후, 상기 브라우저(10a)와 같은 범용 어플들이 전향지시에 따라 구성된 HTTP Request를 로컬주소 소켓(82a,82b)을 통해 송신한 후에는, 상기 이동통신 단말기(600)가 이용하고 있는 임의 통신망에 상태변화가 발생하여도, 상기 다중액세스 최적화기(710)가 이를 대체하는 다른 통신망을 사용하여, 상기 범용 어플들이 생성한 고정된 호스트 주소를 갖는 통신소켓(82a)에 HTTP Response를 사고없이 제공하게 되므로 상기 범용 어플들은 통신망의 상태변화에 무관하게 안정적이고 원할하게 동작할 수 있게 된다.
또한, 로컬주소의 통신소켓을 통한 HTTP Request의 송신 후에는, 상기 다중액세스 최적화기(710)가 HTTP Request의 유형에 따라 또는 각 이종망의 통신상태에 따라 복수의 이종망들을 병용하는, 전술한 실시예에서 설명한 잇점을 상기 범용 어플들이 향유할 수 있게 된다.
본 발명에 따른 다른 실시예에서는, 외부 통신망과의 데이터 통신을 수행하는 어플이나 또는 브라우저 등이, 프록시에 의한 로컬주소의 참조없이도 HTTP Request를 로컬주소를 대상으로 하여 전송한다. 다시 말하면, 사용자에 의해 선택된 URL에 대한 통신규약에 의한 요구, 예를 들어 HTTP Request가 외부망에 있는 임의 서버에 대한 것이라도, 상기 다중액세스 최적화기(110 또는 610)를 이용하도록 코드화된 브라우저( 이하, “다중액세스용 브라우저”라 칭한다. ) 등은 그 임의 서버의 IP주소에 무관하게 로컬주소의 통신소켓을 운영시스템에 요청하여 생성하고 그 생성된 통신소켓을 통해 상기 다중액세스 최적화기(110 또는 610)로 그 HTTP Request를 전송하게 된다. 도 2 내지 6을 참조로 한 실시예의 설명에서, HTTP Request의 전송을 위해 활성화된 프록시를 확인하고 그 설정된 프록시 주소를 사용하는 것을 배제하고는 모두 동일하게 본 실시예에 적용될 수 있다.
도 9는 상기 다중액세스용 브라우저(901)가 구비되어 있는 이동통신 단말기(900)의 논리적 구성을 예시한 것으로서, 도 2의 실시예에서의 구성에 의한 동작과 비교해 보면, 상기 다중액세스용 브라우저(901)는 사용자가 외부의 임의 서버상의 URL을 선택하면(S90), 기 설정된 또는 코드화된 로컬주소( 상기 다중액세스 최적화기(110 또는 610)에 할당된 IP주소와 포트번호 )로 하여 통신소켓 생성을 상기 운영시스템(100a)에 요청한다. 상기 운영시스템(100a)은, 상기 다중액세스 최적화기(110 또는 610)와 통신하기 위한 통신소켓을 생성하고 그 생성된 통신소켓의 식별자를 상기 다중액세스용 브라우저(901)에 리턴한다. 그러면, 상기 다중액세스용 브라우저(901)는 앞선 선택에 따른 HTTP Request를 그 리턴된 통신소켓 식별자를 사용하여 상기 운영시스템(100a)에 전송요청함으로써 해당 HTTP Request를 상기 다중액세스 최적화기(110 또는 610)에 전달한다(S91). 이 후의 과정은 도 2 내지 6을 참조로 한 실시예의 설명에서와 동일하게 이루어진다.
본 발명에 따른 또 다른 일 실시예에서는, 다중액세스용 브라우저가, 선택된 URL에 따른 HTTP Request의 호스트 필드에 로컬주소를 삽입한 HTTP Request를 다중액세스 최적화기에 전달할 수도 있다. 도 10a는, 본 실시예에 따른 동작을 수행하기 위한 다중액세스용 브라우저(1001)와 다중액세스 최적화기(1010)가 구현된 이동통신 단말기(1000)의 논리적 구성을 예시한 것이다. 그리고, 상기 다중액세스용 브라우저(1001)는 도 10b에 예시된 바와 같이, HTTP 등의 프로토콜에 따른 문서 등을 해석하고, 사용자의 인터페이스 등을 수행하는 전(前)처리부(1001a)와 다른 프로세스 또는 원격지와의 데이터 통신을 수행하기 위한 통신처리부(1001b)로 구분되어 구성되며, 상기 전처리부(1001a)는 사용자로부터 하나의 URL이 선택되면(S100) 그 선택된 URL( 예를 들어, “http://videomenu.airplug.com” )의 호스트 필드에 로컬주소를 삽입한 HTTP Request( 예를 들어, “http://127.0.0.1:8080/videomenu.airplug.com” 또는 “http://localhost:8080/videomenu.airplug.com” 를 구성하여(S101) 상기 통신처리부(1001b)로 전달한다(S102). 그러면, 상기 통신처리부(1001b)는 수신한 HTTP Request의 호스트 주소( 127.0.0.1:8080 또는 localhost:8080 )를 사용하여 운영시스템(100a)에 통신소켓을 요청하게 되는 데, 사용된 주소가 로컬(local)을 지정하면서 상기 다중액세스 최적화기(1010)의 로컬서버(1011)에 할당된 포트번호를 사용하고 있으므로, 상기 운영시스템(100a)은 상기 다중액세스 최적화기(1010)간의 통신소켓을 생성하게 된다. 이렇게 통신소켓이 생성되면 상기 통신처리부(1001b)는 앞서 상기 전처리부(1001a)로부터 수신하였던 호스트 필드에 로컬주소가 삽입된 HTTP Request를 그 통신소켓을 통해 상기 로컬서버(1011)로 전송한다(S103).
상기 로컬서버(1011)로 전송되는, 로컬주소가 삽입된 HTTP Request, 예를 들어 “http://127.0.0.1:8080/videomenu.airplug.com” 또는 “http://localhost:8080/videomenu.airplug.com”의 포맷은 상기 운영시스템(100a)의 구현방식에 따라 다양한 형태를 가질 수 있지만, 표준화된 통신 프로토콜 계층에 순응하여 구성되는 경우 도 11과 같은 IP 패킷 포맷을 가질 수도 있다. 도 11의 포맷은 도 4의 포맷과 비교하여 볼 때, IP 헤더(1101)에 포함되는 IP주소와 동일한 주소를 호스트 필드에 갖는 HTTP Request가 IP 패킷 바디(body)(1102)에 포함된다.
상기 로컬서버(1011)는 수신된 HTTP Request에서 호스트 필드에 삽입된 로컬주소를 제거하여(S104) 원래의 HTTP Request를 복원한 후 그 HTTP Request를 적응 송수신기(1012)에 전달함으로써(S105) 원래의 HTTP Request에 의해 의도되었던 서버로 전송되게 한다. 이에 대한 과정은 앞선 실시예들에서 상세히 설명되었으므로 여기서의 설명은 생략한다.
도 10a 및 10b에 예시된 실시예에서 상기 다중액세스 최적화기(1010)는 도면의 간략화를 위해 생략하였지만 HTTP Response와 같은 데이터의 버퍼링을 위한 버퍼를 포함할 수도 있고 또한 전술한 실시예들에서 상세히 설명한 바의 상기 망 선택기(615)를 포함하여 구성될 수도 있으며 이 때는 상기 적응 송수신기(1012)는 상기 망 선택기(615)와의 필요한 상호 대응동작을 수행하게 된다.
도 9내지 11을 참조로 한 실시예에서, 사용자가 선택한 URL에 따른 HTTP Request는 외부 망으로 송신되지 않고 고정된 주소의 로컬주소에 의한 통신소켓을 통해 상기 다중액세스 최적화기로 전달되므로, 본 실시예에서는, HTTP Request를 전송하기 위한 소켓들이 도 3에 예시된 개념과 동일한 방식으로 생성된다.
본 발명에 따른, 전술한 다중액세스용 브라우저를 이용하는 다른 실시예들에서는, 상기 다중액세스용 브라우저는 사용자가 선택하는 모든 항목에 대한 HTTP Request를 상기 다중액세스 최적화기( 도 9의 110 또는 610, 또는 도 10a의 1010 )로 전달하지 않을 수도 있다. 즉, 항상 로컬주소에 의한 통신소켓을 사용하지 않을 수도 있다. 본 실시예에서는, 다중액세스용 브라우저가 사용자가 선택한 항목이 예를 들어, 간단한 웹페이지 등을 요청하는 것인 경우에는 그에 따른 HTTP Request에 대해서는, 생성한 외향 통신소켓을 통해 바로 원격지의 서버로 송신되게 하고, 예를 들어 데이터량이 많은 항목인 경우에는 전술한 바와 같이 로컬주소의 통신소켓을 이용해 상기 다중액세스 최적화기로 송신하게 된다. 따라서, 본 실시예에서는, 앞서 예시한 다중액세스용 브라우저와 같은 다중액세스용 어플들은, 도 8에 예시된 바와 같이, 로컬주소에 의한 통신소켓(82a)외에 외향 통신소켓(81)을 생성하여 이용할 수도 있다.
이상, 전술한 본 발명의 바람직한 실시예는, 예시의 목적을 위해 개시된 것으로, 당업자라면, 이하 첨부된 특허청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 또 다른 다양한 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.
1a: 셀룰러 모뎀 1b: 셀룰러 코덱
2a: Wi-Fi 모뎀 2b: Wi-Fi 코덱
4: 디스플레이 구동부 5: 디스플레이 패널
6: 입력 제어부 6a: 터치 센서
6b: 키패드 7: 메모리
10: 주 제어부 10a: 브라우저
10b: 플레이어 11a: 이동전화 통신망
11b: Wi-Fi 무선랜망 12a: 웹서버
12b: 컨텐트 서버 31a, 31b: 내부 통신소켓
32, 33: 외향 통신소켓 82a, 82b: 내부 통신소켓
81, 83, 84: 외향 통신소켓
100, 700, 1000: 이동통신 단말기
100a: 운영 시스템(O/S) 110, 610, 710, 1010: 다중액세스 최적화기
111, 611, 1011: 로컬서버
112, 612, 1012: 적응 송수신기
613: 버퍼 615: 망 선택기
1001: 다중액세스용 브라우저
1001a: 전(前) 처리부 1001b: 통신 처리부

Claims (1)

  1. 복수의 이종망(異種網)들을 액세스할 수 있는 이동통신 단말기에 있어서,
    상기 복수의 이종망들 중 하나 이상의 통신망의 현재 상태, 또는 설정된 서비스 이용요금 방식에 근거하여 상기 이동통신 단말기가 사용할 하나 이상의 통신망을 결정하도록 구성된 망(網) 선택부와,
    상기 망 선택부에 의해 결정된 상기 하나 이상의 통신망 각각에 대해, 해당 통신망에서 할당된 접속주소를 소스(source) 주소로 하고 외부 주소를 목적지로 한 외향(外向) 통신소켓을 적어도 하나 이상 생성하고 그 생성된 외향 통신소켓을 통해 상기 외부 주소의 서버와 데이터 교환을 수행하기 위한 외(外) 처리부를 포함하여 구성된 이동통신 단말기.
KR1020120093042A 2012-08-24 2012-08-24 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법 KR20130006385A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120093042A KR20130006385A (ko) 2012-08-24 2012-08-24 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120093042A KR20130006385A (ko) 2012-08-24 2012-08-24 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020110066981A Division KR101222432B1 (ko) 2011-07-06 2011-07-06 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법

Publications (1)

Publication Number Publication Date
KR20130006385A true KR20130006385A (ko) 2013-01-16

Family

ID=47837418

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120093042A KR20130006385A (ko) 2012-08-24 2012-08-24 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법

Country Status (1)

Country Link
KR (1) KR20130006385A (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014193083A1 (ko) * 2013-05-28 2014-12-04 주식회사에어플러그 원격지 컨텐트에 대한 복수의 무선 통신망을 통한 데이터 수신을 제어하는 방법과 그 방법을 위한 장치
WO2015199340A1 (ko) * 2014-06-27 2015-12-30 주식회사 케이티 다중 경로 통신을 위한 네트워크 장치 및 단말, 이들의 동작 방법, 그리고 동작 방법을 구현한 프로그램
WO2016021800A1 (ko) * 2014-08-07 2016-02-11 엘지전자 주식회사 이동단말기 및 그 제어방법
KR101689012B1 (ko) * 2015-06-29 2016-12-22 주식회사 케이티 다중망 병합 전송을 위한 네트워크 장치 및 단말, 그리고 이들의 동작 방법
WO2017003065A1 (ko) * 2015-06-29 2017-01-05 주식회사 케이티 다중망 병합 전송을 위한 네트워크 장치 및 단말, 그리고 이들의 동작 방법
KR20170132608A (ko) * 2016-05-24 2017-12-04 주식회사 케이티 세션 연결을 위한 시그널링 방법, 그리고 이를 구현한 장치
US10355982B2 (en) 2014-06-27 2019-07-16 Kt Corporation Network device and terminal for multi-path communication, operation method thereof, and program implementing operation method

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014193083A1 (ko) * 2013-05-28 2014-12-04 주식회사에어플러그 원격지 컨텐트에 대한 복수의 무선 통신망을 통한 데이터 수신을 제어하는 방법과 그 방법을 위한 장치
WO2015199340A1 (ko) * 2014-06-27 2015-12-30 주식회사 케이티 다중 경로 통신을 위한 네트워크 장치 및 단말, 이들의 동작 방법, 그리고 동작 방법을 구현한 프로그램
US10355982B2 (en) 2014-06-27 2019-07-16 Kt Corporation Network device and terminal for multi-path communication, operation method thereof, and program implementing operation method
WO2016021800A1 (ko) * 2014-08-07 2016-02-11 엘지전자 주식회사 이동단말기 및 그 제어방법
KR20160018000A (ko) * 2014-08-07 2016-02-17 엘지전자 주식회사 이동단말기 및 그 제어방법
US10635265B2 (en) 2014-08-07 2020-04-28 Lg Electronics Inc. Mobile terminal and method for controlling same
KR101689012B1 (ko) * 2015-06-29 2016-12-22 주식회사 케이티 다중망 병합 전송을 위한 네트워크 장치 및 단말, 그리고 이들의 동작 방법
WO2017003065A1 (ko) * 2015-06-29 2017-01-05 주식회사 케이티 다중망 병합 전송을 위한 네트워크 장치 및 단말, 그리고 이들의 동작 방법
KR20170132608A (ko) * 2016-05-24 2017-12-04 주식회사 케이티 세션 연결을 위한 시그널링 방법, 그리고 이를 구현한 장치

Similar Documents

Publication Publication Date Title
KR101222432B1 (ko) 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법
KR20130006385A (ko) 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법
KR101905867B1 (ko) 다중 경로 통신을 위한 네트워크 장치 및 단말, 이들의 동작 방법, 그리고 동작 방법을 구현한 프로그램
US9405685B2 (en) Method of providing content during hand-over and apparatus therefor
KR101354914B1 (ko) 목록정보를 통해 구간들의 정보가 제공되는 미디어 컨텐트의 데이터를 중계하는 방법 및 장치
JP2014528223A (ja) ストリーミングデータの未処理状態による異種網の選択的使用を制御する装置と方法
KR101354925B1 (ko) 복수 무선 통신망의 다중접속에 의한 컨텐트 데이터의 수신을 제어하는 방법과 그 방법을 위한 장치
KR20120067963A (ko) 물리 네트워크들이 변경될 때 tcp 접속을 로밍하기 위한 시스템 및 방법
KR101482516B1 (ko) 무선 통신망에의 추가 접속시의 망 사용을 제어하는 방법과 그 방법을 위한 장치
JP4935260B2 (ja) 通信端末切替方法及びシステム、これに用いる情報処理装置、通信端末、プログラム
KR102641949B1 (ko) 비프록시 기반 다중 경로 전송 시스템, 그리고 이의 세션 연결을 위한 시그널링 방법
KR101358806B1 (ko) 무선통신 단말기가 무선 통신망의 자원을 최소 사용하여 데이터를 수신하면서 이종망간 전환할 수 있게 하는 방법 및 장치
KR20180126133A (ko) 복수의 이종 통신망을 통해 데이터를 선택적으로 이중 전송하는 방법 및 장치
KR101410510B1 (ko) Sctp를 이용한 데이터 전송 방법 및 장치
KR101468155B1 (ko) 원격지 컨텐트에 대한 수신상태에 근거하여 무선 통신망의 접속점과의 접속을 제어하는 방법과 장치
KR101571525B1 (ko) 복수 통신망 연결상태에 있는 무선 단말기의 통신망 사용을 제어하는 방법과 장치
KR101616057B1 (ko) 로컬 중계를 개입시켜 통신상태에 따라 복수의 무선 통신망을 선택적으로 사용하는 방법 및 장치
KR101514027B1 (ko) 무선통신 단말기의 무선 통신망 사용을 사용조건에 따라 제어하는 방법과 그 방법을 위한 장치
KR101616058B1 (ko) 원격지와의 파일 수신/송신에 대한 예상정보에 따라 복수의 무선 통신망을 사용하여 그 파일을 수신/송신하는 방법과 그 방법을 위한 장치
KR101360772B1 (ko) 핸드오버를 고려한 모바일 컨텐츠 제공 방법 및 이를 위한 장치
Farnham et al. Enhancing multimedia streaming over existing wireless LAN technology using the unified link layer API
US20220256362A1 (en) Method To Improve Performance Of A Wireless Data Connection
US11297634B2 (en) Systems, methods, and media for scheduling traffic of a communication session between an application on a WiFi network and another device
KR101373838B1 (ko) 무선통신 단말기로부터의 요구를 선택적으로 그 단말기로 전향시키는 방법과 그 방법을 위한 장치
KR101545485B1 (ko) 망접속 상태에 따라 무선 통신망에의 접속 기능을 제어하는 방법과 그 방법을 위한 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Withdrawal due to no request for examination