KR101686073B1 - 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체 - Google Patents

클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체 Download PDF

Info

Publication number
KR101686073B1
KR101686073B1 KR1020150103821A KR20150103821A KR101686073B1 KR 101686073 B1 KR101686073 B1 KR 101686073B1 KR 1020150103821 A KR1020150103821 A KR 1020150103821A KR 20150103821 A KR20150103821 A KR 20150103821A KR 101686073 B1 KR101686073 B1 KR 101686073B1
Authority
KR
South Korea
Prior art keywords
information
service
data
client terminal
server
Prior art date
Application number
KR1020150103821A
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 KR1020150103821A priority Critical patent/KR101686073B1/ko
Priority to US15/210,132 priority patent/US10038759B2/en
Application granted granted Critical
Publication of KR101686073B1 publication Critical patent/KR101686073B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/509Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to media content delivery, e.g. audio, video or TV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play

Abstract

본 발명의 일 태양에 따르면, 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법에 있어서, (a) 상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면, 관리 서버가, 데이터베이스를 참조로 하여 상기 서비스 타입 정보 및 상기 상태 정보에 대응되는 정보로서, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 단계, 및 (b) 상기 관리 서버가, 상기 획득된 네트워크 설정 정보를 상기 클라이언트 단말에 전송하여 상기 클라이언트 단말이 상기 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원하는 단계를 포함하는 방법이 제공된다.

Description

클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체{METHOD, MANAGEMENT SERVER AND COMPUTER-READABLE RECORDING MEDIUM FOR ALLOWING CLIENT TERMINAL TO BE PROVIDED WITH SERVICES BY CONVERTING NETWORK TOPOLOGY ADAPTIVELY ACCORDING TO CHARACTERISTICS OF THE SERVICES}
본 발명은, 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체에 관한 것으로, 좀더 상세하게는 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면, 데이터베이스를 참조로 하여 서비스 타입 정보 및 상태 정보에 대응되는 정보로서, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 프로세스 및 상기 획득된 네트워크 설정 정보를 상기 클라이언트 단말에 전송하여 상기 클라이언트 단말이 상기 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원하는 프로세스를 수행하기 위한 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체에 관한 것이다.
네트워크를 통해 원격 사용자 간 데이터를 송수신할 수 있는 다양한 기술이 개발되고 있다. 특히, 최근에는 3차원 가상 현실 렌더링 기술이 발달하면서 원격 사용자 간에 실감 데이터를 교류할 수 있는 기술에 대한 니즈가 증가하고 있다. 이러한 기술은 군사, 의료, 산업 디자인, 게임 등 다양한 분야에서 활용될 수 있을 것으로 기대된다.
일반적으로 실감 데이터는 영상 데이터, 음성 데이터, 촉감 데이터 등 다양한 종류의 데이터로 구성될 수 있고, 가상 현실 화면을 처리하기 위해 물리 서버 자원을 필요로 하거나 동영상 데이터를 송수신하기 위해 스트리밍 서비스 자원이 필요할 수 있다. 이처럼 실감 데이터의 송수신 환경은 일반적인 데이터 송수신 환경에 비해 데이터 구성과 서비스 특성면에서 훨씬 복잡하다.
따라서, 종래의 고정된 네트워크 토폴로지를 이용하는 경우 다양한 종류의 데이터 송수신이 다양한 형태로 이루어지는 실감 데이터 교류 환경에서 효율성이 떨어지는 문제가 있다.
예를 들어, 다수의 사용자들 간에 저용량의 메시지를 1:1로 교환하는 서비스는 P2P 서버(예를 들어, Napster 방식)가 담당할 수 있는데, 실감 데이터 교류 환경에서 가상 공간을 나타내는 화면 렌더링이 필요한 경우 저용량의 메시지 전송을 위한 P2P 서버는 화면 렌더링에 필요한 대용량 데이터 처리에 부적합할 수 있다.
따라서, 다수의 사용자 간에 실시간으로 다양한 종류의 실감 데이터를 송수신하고 처리하기 위해서는 좀더 유연한 네트워크 토폴로지가 필요함을 알 수 있다.
이에 본 발명자는 실감 데이터 송수신 환경에서 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 빠르고 효율적으로 실감 데이터 송수신을 할 수 있는 기술을 발명하기에 이르렀다.
본 발명은 상술한 문제점들을 모두 해결하는 것을 그 목적으로 한다.
또한, 본 발명은, 실감 데이터 송수신 환경에서 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 빠르고 효율적으로 실감 데이터 송수신을 할 수 있는 것을 다른 목적으로 한다.
또한, 본 발명은, 클라이언트 단말이 제공받고자 하는 서비스 타입 및 서비스 제공 서버의 상태에 따라 적응적으로 클라이언트 단말의 네트워크를 설정함으로써 효율적으로 실감 데이터 송수신을 할 수 있는 것을 또 다른 목적으로 한다.
또한, 본 발명은, 클라이언트 단말이 송수신하는 데이터의 종류와 상대방 단말의 특성을 더 고려하여 클라이언트 단말의 네트워크 채널을 설정함으로써 효율적으로 실감 데이터 송수신을 할 수 있는 것을 또 다른 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.
본 발명의 일 태양에 따르면, 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법에 있어서, (a) 상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면, 관리 서버가, 데이터베이스를 참조로 하여 상기 서비스 타입 정보 및 상기 상태 정보에 대응되는 정보로서, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 단계, 및 (b) 상기 관리 서버가, 상기 획득된 네트워크 설정 정보를 상기 클라이언트 단말에 전송하여 상기 클라이언트 단말이 상기 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원하는 단계를 포함하는 방법이 제공된다.
본 발명의 다른 태양에 따르면, 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 관리 서버에 있어서, 상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면, 데이터베이스를 참조로 하여 상기 서비스 타입 정보 및 상기 상태 정보에 대응되는 정보로서, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 네트워크 설정 정보 획득부, 및 상기 획득된 네트워크 설정 정보를 상기 클라이언트 단말에 전송하여 상기 클라이언트 단말이 상기 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원하는 통신부를 포함하는 관리 서버가 제공된다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 장치 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명에 의하면, 다음과 같은 효과가 있다.
본 발명은 실감 데이터 송수신 환경에서 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 빠르고 효율적으로 실감 데이터 송수신을 할 수 있는 효과가 있다.
또한, 본 발명은, 클라이언트 단말이 제공받고자 하는 서비스 타입 및 서비스 제공 서버의 상태에 따라 적응적으로 클라이언트 단말의 네트워크를 설정함으로써 효율적으로 실감 데이터 송수신을 할 수 있는 효과가 있다.
또한, 본 발명은, 클라이언트 단말이 송수신하는 데이터의 종류와 상대방 단말의 특성을 더 고려하여 클라이언트 단말의 네트워크 채널을 설정함으로써 효율적으로 실감 데이터 송수신을 할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형시키는 관리 서버의 동작을 설명하기 위한 개념도이다.
도 2는 본 발명의 일 실시예에 따른 관리 서버의 구성을 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 관리 서버의 동작을 좀더 상세하게 설명하기 위한 참고도이다.
도 4는 서비스 타입 정보가 스트리밍 서비스인 경우의 네트워크 토폴로지를 도시한 도면이다.
도 5는 서비스 타입 정보가 데이터 처리 서비스인 경우의 네트워크 토폴로지를 도시한 도면이다.
도 6은 서비스 타입 정보가 1:1 통신 서비스인 경우의 네트워크 토폴로지를 도시한 도면이다.
도 7 및 8은 데이터의 크기 및 주기에 따른 채널할당의 예를 도시한 도면이다.
도 9는 데이터의 크기에 따라서 송수신 채널을 동일하게 하거나 독립적으로 설정하는 예를 도시한 도면이다.
도 10은 본 발명의 다른 실시예에 따른 관리 서버의 구성과 동작을 도시한 개념도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
도 1은 본 발명의 일 실시예에 따른 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형시키는 관리 서버의 동작을 설명하기 위한 개념도이다.
도 1을 참조하면, 관리 서버(100)는 적어도 하나의 클라이언트 단말(200-1, 200-2, …, 200-n) 각각이 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형시킬 수 있다. 그리고, 변형된 네트워크 토폴로지 정보를 적어도 하나의 클라이언트 단말(200-1, 200-2, …, 200-n)에 제공하여 적어도 하나의 클라이언트 단말(200-1, 200-2, …, 200-n) 각각이 제공받고자 하는 서비스 특성에 따라 네트워크를 설정할 수 있도록 지원할 수 있다.
좀더 구체적으로 설명하면, 우선, 관리 서버(100)는 적어도 하나의 클라이언트 단말(200-1, 200-2, …, 200-n) 각각으로부터 각 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 소위 서비스 타입 정보를 획득할 수 있다. 여기서, 서비스 타입 정보는 스트리밍 서비스, 1:1 통신 서비스, 데이터 처리 서비스 등을 포함할 수 있다. 스트리밍 서비스는 영상 데이터 및 음성 데이터 중 적어도 일부를 실시간으로 스트리밍하여 송수신하는 서비스이다. 스트리밍 서비스는 릴레이 서버를 통해 복수의 사용자 간(클라이언트 단말 간)에 이루어질 수 있다. 1:1 통신 서비스는 복수의 사용자 간에 1:1 통신을 지원하는 서비스이다. 주로 텍스트 메시지의 송수신이 이루어질 수 있으나, 음성 데이터, 영상 데이터의 송수신도 이루어질 수 있다. 데이터 처리 서비스는 특정 클라이언트 단말의 요청이 있는 경우 데이터를 연산하고 결과를 돌려주는 서비스이다. 이때, 데이터 연산은 물리 엔진을 통해 수행될 수 있다. 여기서, 물리 엔진은 컴퓨터 그래픽이나 가상 현실을 시뮬레이션하는 미들웨어에 한정되지 않고, 실감 데이터와 관련된 연산을 수행하는 프로세서 및 애플리케이션을 포함하는 다양한 장치가 될 수 있다.
한편, 서비스 타입 정보의 획득은 특정 클라이언트 단말로부터의 서비스 제공 요청을 통해 이루어질 수 있다. 즉, 특정 클라이언트 단말은 관리 서버(100)에 서비스 제공을 요청하면서 서비스 타입 정보를 전송할 수 있다.
또한, 관리 서버(100)는, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)의 상태를 나타내는 상태 정보를 획득할 수 있다. 상태 정보는 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)와 관련되거나 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)에 접속한 클라이언트 단말과 관련된 상태에 대한 정보를 의미한다. 예를 들어, 현재 서비스를 제공하고 있는 서비스 제공 서버(300-1, 300-2, …, 300-m)의 수 정보, 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 서비스를 제공받고 있는 사용자의 수(클라이언트 단말 수) 정보 및 서비스 제공이 이루어지고 있는 채널 수 정보 중 적어도 일부일 수 있다. 또한, 상태 정보는, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)에 대한 기본 정보를 포함할 수 있다. 예를 들어, 특정 서비스 제공 서버의 식별자, 각 서버가 제공하는 서비스 타입 정보, 대역폭 정보 등을 포함할 수 있다.
또한, 관리 서버(100)는, 데이터베이스(400)를 참조로 하여 서비스 타입 정보 및 상태 정보에 대응되는 정보로서, 각 클라이언트 단말이 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m) 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득할 수 있다.
예를 들어, 관리 서버(100)는 특정 클라이언트 단말로부터 스트리밍 서비스(서비스 타입 정보의 일례)를 획득하고, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 서비스를 제공받고 있는 사용자의 수 정보(상태 정보의 일례)를 획득할 수 있다. 이 경우, 관리 서버(100)는 상기 획득된 정보들을 키값으로 데이터베이스(400)를 검색하여 특정 클라이언트 단말이 사용자 수가 소정의 수 미만인 특정 미디어 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득할 수 있다.
관리 서버(100)는 상기와 같이 획득된 네트워크 설정 정보를 특정 클라이언트 단말에 전송하여 상기 특정 클라이언트 단말이 상기 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원할 수 있다. 이때, 네트워크 설정 정보는 특정 클라이언트 단말에서 채널을 자동으로 구성할 수 있도록 파라미터 계산이 이루어진 정보일 수 있다. 예를 들어, 네트워크 설정 정보는 특정 서버의 포트 정보, IP 정보를 포함할 수 있다.
한편, 관리 서버(100)는 통상적인 네이밍(naming) 서비스 기능을 수행할 수 있다. 즉, 각 서버의 이름과 주소, 각 클라이언트 단말의 이름, 패스워드, 접근 허용 정보 등을 저장하고 관리할 수 있다.
이하에서는 본 발명의 일 실시예에 따른 관리 서버(100)의 구성 및 동작을 좀더 상세하게 설명한다.
도 2는 본 발명의 일 실시예에 따른 관리 서버의 구성을 도시한 블록도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 관리 서버(100)는, 네트워크 설정 정보 획득부(110), 통신부(120) 및 제어부(130)를 포함할 수 있다.
네트워크 설정 정보 획득부(110)는, 특정 클라이언트 단말로부터 상기 특정 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)의 상태를 나타내는 상태 정보가 획득되면, 데이터베이스(400)를 참조로 하여 서비스 타입 정보 및 상태 정보에 대응되는 정보로서, 특정 클라이언트 단말이 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m) 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득할 수 있다.
좀더 구체적으로 설명하면, 네트워크 설정 정보 획득부(110)는, 특정 클라이언트 단말로부터 상기 서비스 타입 정보가 획득되고 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)의 상태를 나타내는 제1 상태 정보가 획득되면, 데이터베이스(400)를 참조로 하여 서비스 타입 정보 및 제1 상태 정보에 대응되는 네트워크 토폴로지 정보를 획득할 수 있다.
또한, 네트워크 설정 정보 획득부(110)는, 상기 획득된 네트워크 토폴로지 정보 및 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)의 상태를 나타내는 제2 상태 정보에 기초하여, 특정 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m) 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 파라미터 정보를 결정할 수 있다.
즉, 네트워크 설정 정보 획득부(110)는, 획득된 서비스 타입 정보와 제1 상태 정보를 키값으로 하여 데이터베이스(400)로부터 네트워크 토폴로지 정보를 획득하고, 획득된 네트워크 토폴로지 정보 및 제2 상태 정보에 기초하여 네트워크 파라미터 정보를 결정할 수 있다. 이때, 데이터베이스 검색 없이 이와 같은 네트워크 파라미터 정보를 결정할 수도 있을 것이다.
여기서, 제1 상태 정보 및 제2 상태 정보는, 현재 서비스를 제공하고 있는 서비스 제공 서버(300-1, 300-2, …, 300-m)의 수 정보, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 서비스를 제공받고 있는 사용자의 수 정보 및 서비스 제공이 이루어지고 있는 채널 수 정보 중 적어도 일부일 수 있다. 또한, 제1 상태 정보는 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)에 대한 기본 정보를 포함할 수도 있다.
예를 들어, 관리 서버(100)는 특정 클라이언트 단말로부터 서비스 타입 정보로서 스트리밍 서비스를 획득하고, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 제1 상태 정보로서 현재 동작 중인 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)에 대한 기본 정보를 획득할 수 있다. 이 경우, 관리 서버(100)는 상기 획득된 정보들을 키값으로 데이터베이스(400)를 검색하여 현재 동작 중인 릴레이 서버를 통해 스트리밍 서비스를 제공받기 위한 네트워크 토폴로지 정보를 획득할 수 있다. 또한, 관리 서버(100)는 제2 상태 정보로서 서비스를 제공받고 있는 사용자의 수 정보를 획득할 수 있다. 이 경우, 관리 서버(100)는 사용자 수가 상대적으로 적은 릴레이 서버로부터 서비스를 제공받도록 네트워크 파라미터를 결정할 수 있다.
다만 위의 경우와 달리, 네트워크 설정 정보 획득부(110)는, 데이터베이스(400)를 참조로 하여 네트워크 토폴로지 정보 및 네트워크 파라미터 정보를 모두 획득할 수도 있다. 즉, 네트워크 설정 정보 획득부(110)는, 특정 클라이언트 단말로부터 상기 특정 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 상기 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)의 상태를 나타내는 상태 정보가 획득되면, 데이터베이스(400)를 참조로 하여, 서비스 타입 정보 및 상태 정보에 대응되는 (i) 네트워크 토폴로지 정보 및 (ii) 네트워크 파라미터 정보를 획득할 수도 있다.
이하에서 설명하는 본 발명의 다양한 실시예에서는 상기 두 가지 경우를 구별하지 않고 네트워크 설정 정보(네트워크 토폴로지 정보 및 네트워크 파라미터 정보)를 획득하는 것으로 설명하나, 이하의 실시예는 위의 두 가지 경우에 모두 적용될 수 있음을 밝혀둔다.
도 3은 본 발명의 일 실시예에 따른 관리 서버의 동작을 좀더 상세하게 설명하기 위한 참고도이다.
도 3을 참조하면, 관리 서버(100)는, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)로부터 서비스를 제공받고 있는 사용자 수 정보를 획득할 수 있음을 알 수 있다. 관리 서버(100)는, 특정 서비스 제공 서버로부터 서비스를 제공받고 있는 사용자 수 정보가 최대가 되고, 특정 클라이언트 단말이 상기 특정 서비스 제공 서버로부터 서비스를 제공받을 필요가 있는 경우 유사한 서비스를 제공하는 새로운 서비스 제공 서버를 상기 특정 클라이언트 단말에 할당할 수 있다. 즉, 관리 서버(100)의 네트워크 설정 정보 획득부(110)는, 획득된 상태 정보가 특정 서비스 제공 서버로부터 특정 서비스를 제공받고 있는 사용자 수 정보를 포함하고 상기 사용자 수가 상기 특정 서비스를 제공하는 상기 특정 서비스 제공 서버의 최대 사용자 수와 동일한 경우, 특정 클라이언트 단말이 새로운 서비스 제공 서버로부터 특정 서비스를 제공받기 위한 네트워크 설정 정보를 획득할 수 있다. 이 경우 관리 서버(100)는 새로운 서버를 활성화시켜 유사한 서비스를 수행하는 서버의 숫자를 늘릴 수 있다. 반대로, 관리 서버(100)는 특정 서비스 제공 서버로부터 서비스를 제공받고 있는 사용자 수가 0이 되는 경우 특정 서비스 제공 서버를 불활성화시킬 수도 있다.
또한, 관리 서버(100)는, 특정 클라이언트 단말이 서비스를 제공받을 때에 송수신되는 데이터의 종류 정보 및 상기 특정 클라이언트 단말과 데이터를 송수신하는 상대방 단말의 수 정보 중 적어도 하나를 특정 클라이언트 단말로부터 더 획득할 수 있다. 특정 클라이언트 단말로부터 획득된 이들 정보는 클라이언트 단말에 따라 달라지는 정보이므로 동적 정보(Dynamic Information)라고 명명할 수 있다. 이에 반해 데이터베이스(400)로부터 얻어지는 정보는 정적 정보(static information)로 명명할 수 있다. 데이터의 종류 정보로는 영상 데이터, 음성 데이터, MoCAP 햅틱 데이터, 진동 반지 햅틱 데이터 등이 있을 수 있다. 데이터의 종류에 따라 데이터를 송수신하는 채널의 수가 달라질 수 있다. 예를 들어, 영상 데이터나 음성 데이터의 경우 데이터 크기가 크므로 독립적인 채널을 통해 데이터를 송신 또는 수신하는 것이 효율적이다. 반면, 햅틱 데이터는 데이터 크기가 작으므로 필수적으로 데이터 한 개당 한 개의 전용 채널을 할당할 필요가 없을 수 있다. 이와 유사하게 데이터를 송수신하는 상대방 단말의 수에 따라 데이터를 송수신하는 채널의 수가 달라질 수 있다. 즉, 상대방이 한 명인 경우는 송수신용 채널을 별도로 두는 경우 두 개의 채널이 필요한데 반해, 상대방이 두 명인 경우는 송신용 채널 한 개와 수신용 채널 두 개를 두어 세 개의 채널이 필요할 수 있다. 따라서, 네트워크 설정 정보 획득부(110)는, 획득된 데이터의 종류 정보 및 상대방 단말의 수 정보 중 적어도 하나에 대응되는 데이터 송수신 채널의 수 정보를 네트워크 설정 정보로서 획득할 수 있다.
그 밖에도 관리 서버(100)는 서비스 제공 서버들로 이루어진 서버 리소스 풀을 관리하고 현재 운영되는 서버 정보, 해당 서버에 접속한 클라이언트 단말의 상태 정보를 모니터링할 수 있다.
다시 도 2를 참조하면, 통신부(120)는 적어도 하나의 클라이언트 단말(200-1, 200-2, …, 200-n)과 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m)와 통신하는 구성이다. 구체적으로 통신부(120)는 적어도 하나의 클라이언트 단말(200-1, 200-2, …, 200-n) 각각으로부터 서비스 타입 정보를 수신하고, 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m) 각각으로부터 상태 정보를 수신할 수 있다. 또한, 통신부(120)는 적어도 하나의 클라이언트 단말(200-1, 200-2, …, 200-n) 각각으로부터 서비스 요청을 수신할 수도 있다. 통신부(120)는 네트워크 설정 정보를 획득하여 특정 클라이언트 단말에 전송하여, 특정 클라이언트 단말이 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원할 수 있다.
이하에서는 주로 서비스 타입 정보에 따라 결정되는 상이한 네트워크 설정 정보에 대해 설명한다. 물론, 네트워크 설정 정보의 결정에는 전술한 바와 같이 서비스 제공 서버의 상태 정보가 더 고려될 수 있다.
도 4는 서비스 타입 정보가 스트리밍 서비스인 경우의 네트워크 토폴로지를 도시한 도면이다.
도 4를 참조하면, 서비스 타입 정보가 스트리밍 서비스인 경우, 네트워크 설정 정보 획득부(110)는, 데이터베이스(400)를 참조로 하여 클라이언트 단말(200-1, 200-2, …, 200-n) 중 하나인 특정 클라이언트 단말(200-k)이 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m) 중 하나인 특정 릴레이 서버(300-l)를 통해 스트리밍 서비스를 제공받기 위한 네트워크 설정 정보를 획득할 수 있다. 여기서, k 는 1 이상 n 이하의 임의의 정수일 수 있고, l 은 1이상 m 이하의 임의의 정수일 수 있다. 먼저, 특정 클라이언트 단말(200-k)이 다른 클라이언트 단말(501, 502)과의 사이에서의 실감 데이터 스트리밍 송수신을 관리 서버(100)에 요청하면(도 4의 ①), 네트워크 설정 정보 획득부(110)는, 데이터베이스(400)를 참조로 하여 적어도 하나의 서비스 제공 서버(300-1, 300-2, …, 300-m) 중 특정 릴레이 서버(300-l)를 통해 스트리밍 서비스를 특정 클라이언트 단말(200-k)이 제공받을 수 있도록 하기 위한 네트워크 설정 정보를 획득하고, 통신부(120)는 특정 릴레이 서버(300-l) 정보를 포함하는 네트워크 설정 정보를 특정 클라이언트 단말(200-k)에 전송할 수 있다(도 4의 ②). 특정 클라이언트 단말(200-k)은 특정 릴레이 서버(300-l)를 통해 다른 클라이언트 단말(501, 502)과 데이터 스트리밍을 할 수 있다(도 4의 ③, ④).
도 5는 서비스 타입 정보가 데이터 처리 서비스인 경우의 네트워크 토폴로지를 도시한 도면이다.
도 5를 참조하면, 서비스 타입 정보가 데이터 처리 서비스인 경우, 네트워크 설정 정보 획득부(110)는, 데이터베이스(400)를 참조로 하여 적어도 하나의 서비스 제공 서버(300-1, 300-2, ..., 300-m) 중 특정 물리 엔진 서버(300-l)를 통해 데이터 처리 서비스를 제공받기 위한 네트워크 설정 정보를 획득할 수 있다. 여기서, 도 5에서의 l 값은 도 4에서의 l 값과 다른 것으로 가정한다. 데이터 처리 서비스를 제공받는 과정을 설명하면, 특정 클라이언트 단말(200-k)이 데이터 처리 서비스를 요청하면(도 5의 ①), 네트워크 설정 정보 획득부(110)는, 데이터베이스(400)를 참조로 하여 적어도 하나의 서비스 제공 서버(300-1, 300-2, ..., 300-m) 중 특정 물리 엔진 서버(300-l)를 통해 데이터 처리 서비스를 제공받기 위한 네트워크 설정 정보를 획득하고, 통신부(120)는 특정 물리 엔진 서버(300-l)에 대한 정보를 포함하는 네트워크 설정 정보를 특정 클라이언트 단말(200-k)에 전송할 수 있다(도 5의 ②). 특정 클라이언트 단말(200-k)은 특정 물리 엔진 서버(300-l)를 통해 데이터 처리를 요청하고 데이터가 처리된 결과를 수신할 수 있다(도 5의 ③, ④).
도 6은 서비스 타입 정보가 1:1 통신 서비스인 경우의 네트워크 토폴로지를 도시한 도면이다.
도 6을 참조하면, 서비스 타입 정보가 1:1 통신 서비스인 경우, 네트워크 설정 정보 획득부(110)는, 데이터베이스(400)를 참조로 하여 적어도 하나의 서비스 제공 서버(300-1, 300-2, ..., 300-m) 중 특정 P2P 서버(300-l)를 통해 1:1 통신 서비스를 제공받기 위한 네트워크 설정 정보를 획득할 수 있다. 여기서, 도 6에서의 l 값은 도 4 및 도 5에서의 l 값과 다른 것으로 가정한다. 특정 클라이언트 단말(200-k)이 1:1 통신 서비스를 요청하면(도 6의 ①), 네트워크 설정 정보 획득부(110)는, 데이터베이스(400)를 참조로 하여 적어도 하나의 서비스 제공 서버(300-1, 300-2, ..., 300-m) 중 특정 P2P 서버(300-l)를 통해 1:1 통신 서비스를 제공받기 위한 네트워크 설정 정보를 획득하고, 통신부(120)는 특정 P2P 서버(300-l) 정보를 포함하는 네트워크 설정 정보를 특정 클라이언트 단말(200-k)에 전송할 수 있다(도 6의 ②). 특정 클라이언트 단말(200-k)은 특정 P2P 서버(300-l)를 통해 1:1 통신 서비스를 제공받을 수 있다(도 6의 ③, ④).
다시 도 3을 참조하면, 네트워크 설정 정보 획득부(110)는, 특정 클라이언트 단말로부터 서비스 타입 정보 외에도 특정 클라이언트 단말의 스펙 정보를 더 획득할 수 있음을 알 수 있다. 특정 클라이언트 단말의 스펙 정보도 클라이언트 단말에 따라 달라지는 정보이므로 동적 정보이다. 스펙 정보에는 특정 클라이언트 단말이 전송하는 데이터를 센싱하는 센서 정보, 특정 클라이언트 단말이 촬영하거나 녹음하는 카메라나 마이크 정보, 디스플레이 해상도 정보 등이 포함될 수 있다. 이들 정보는 송수신되는 데이터의 크기에 대응되므로 이들 정보를 통해 적절한 채널할당이 가능하다. 예를 들어, 송신단에서 FHD급 영상을 송신하는 경우 수신단의 디스플레이는 단지 HD급의 영상 재상만을 지원한다면 송신단에서 굳이 FHD급 영상을 전송할 필요가 없어진다. 관리 장치(100)는 이러한 정보를 네트워크 정보 설정에 이용할 수 있을 뿐 아니라 송신단에 제공하여 전송되는 데이터양을 줄이도록 지원할 수도 있을 것이다.
이 밖에도 데이터의 송수신 주기 정보, 송수신되는 데이터의 크기 정보 및 송수신되는 최대 패킷의 크기 정보 등이 특정 클라이언트 단말로부터 획득될 수 있다. 즉, 네트워크 설정 정보 획득부(110)는, 특정 클라이언트 단말로부터 특정 클라이언트 단말의 스펙 정보, 데이터의 송수신 주기 정보, 송수신되는 데이터의 크기 정보 및 송수신되는 최대 패킷의 크기 정보 중 적어도 일부가 부가 판단 정보로서 더 획득되면, 특정 클라이언트 단말의 스펙 정보, 데이터의 송수신 주기 정보, 송수신되는 데이터의 크기 정보 및 송수신되는 최대 패킷의 크기 정보 중 적어도 일부를 더 고려하여 네트워크 설정 정보를 획득할 수 있다.
이때, 네트워크 설정 정보 획득부(110)는, 송수신되는 데이터의 크기가 소정의 크기 이상인 경우 전용 채널을 통해 상기 데이터가 송수신되도록 설정된 네트워크 설정 정보를 획득하고, 송수신되는 데이터 및 다른 송수신 데이터의 크기가 소정의 크기 미만이고 주기가 서로 유사한 경우, 상기 송수신되는 데이터 및 상기 다른 데이터들이 공유 채널을 통해 송수신되도록 설정된 네트워크 설정 정보를 획득할 수 있다. 여기서 주기란, 네트워크 상에서 단위 시간 당 단위 데이터의 전송 횟수를 의미한다. 이와 같이 본 발명은 네트워크 자원을 효율적으로 할당함으로써 데이터 송수신을 효율적으로 수행할 수 있도록 할 수 있다.
도 7 및 8은 데이터의 크기 및 주기에 따른 채널할당의 예를 도시한 도면이다.
도 7을 참조하면, 영상 데이터와 음성 데이터는 각각 채널 1과 채널 2를 할당한 반면, 두 종류의 햅틱 데이터는 송수신 데이터의 주기가 100FPS로 동일하므로 공유 채널로 할당된 것을 알 수 있다.
또한, 도 8을 참조하면, 데이터의 크기에 따른 채널 할당의 예가 도시된다. 영상 데이터와 음성 데이터는 각각 데이터 크기가 600KB, 4096byte로 비교적 큰 편이므로 전용 채널을 통해 데이터 송수신이 이루어지는 반면, 햅틱 데이터는 크기가 100byte로 비교적 작고 서로 다른 종류의 햅틱 데이터의 주기가 유사하므로 공유 채널을 통해 데이터 송수신이 이루어질 수 있다.
한편, 데이터의 크기에 따라서 송수신 채널을 동일하게 하거나 독립적으로 설정할 수도 있다.
도 9는 데이터의 크기에 따라서 송수신 채널을 동일하게 하거나 독립적으로 설정하는 예를 도시한 도면이다.
도 9의 (a)는 송수신되는 데이터의 크기에 관계없이 네트워크 파라미터를 일률적으로 설정하는 경우를 도시한 것이다. 이에 반해 본 발명은 도 9의 (b)와 같이 특정 클라이언트 단말로부터 획득되는 부가 판단 정보에 따라 적응적으로 특정 클라이언트 단말의 네트워크 설정이 가능하다. 즉, 네트워크 설정 정보 획득부(110)는, 송수신되는 데이터의 크기가 소정의 크기 이상인 경우 데이터 송신과 데이터 수신이 각각 송신용 스레드와 수신용 스레드를 통해 별도로 이루어지도록 설정된 네트워크 설정 정보를 획득할 수 있다. 달리 말해, 송신 소켓과 수신 소켓을 별도로 구성할 수 있다. 이에 반해, 송수신되는 데이터의 크기가 소정의 크기 미만인 경우 데이터 송신과 데이터 수신이 하나의 스레드를 통해 이루어지도록 설정된 네트워크 설정 정보를 획득할 수 있다. 달리 말해, 송수신 소켓을 하나로 구성할 수 있다.
또한, 네트워크 설정 정보 획득부(110)는, 송수신되는 데이터의 최대 패킷의 크기보다 소켓 버퍼 사이즈가 크도록 설정된 네트워크 설정 정보를 획득할 수 있다. 즉, 도 9의 (b)와 같이 송수신되는 데이터의 크기에 따라 소켓 버퍼 사이즈를 가변할 수 있다.
또한, 네트워크 설정 정보 획득부(110)는, 데이터가 실시간으로 송수신되는 경우 송수신용 스레드의 우선순위가 상대적으로 높게 설정되고 Nagle 알고리즘이 비활성화되도록 설정된 네트워크 설정 정보를 획득할 수 있다. Nagle 알고리즘은 작은 데이터를 모아서 전송하는 것으로 네트워크 congestion을 감소시키는 장점이 있으나 데이터를 모아서 전송하는데 시간 지연이 발생하므로 실시간 고속 전송에는 불리한 점이 있다. 따라서, 데이터가 실시간으로 송수신되는 경우는 Nagle 알고리즘을 비활성화시킬 수 있다. 이는 햅틱 데이터와 같이 크기가 작은 데이터를 고속으로 전송할 때 적용하여 성능을 향상시킬 수 있다. Nagle 알고리즘의 적용여부는 No delay option으로 설정될 수 있다.
다시 도 2를 참조하면, 제어부(130)는 네트워크 설정 정보 획득부(110), 통신부(120) 간의 데이터의 흐름을 제어하는 기능을 수행한다. 즉, 제어부(130)는 관리 서버(100)의 각 구성요소 간의 데이터의 흐름을 제어함으로써, 네트워크 설정 정보 획득부(110), 통신부(120)에서 각각 고유 기능을 수행하도록 제어한다.
제어부(130)는 MPU(Micro Processing Unit) 또는 CPU(Central Processing Unit), 캐쉬 메모리(Cache Memory), 데이터 버스(Data Bus) 등의 하드웨어 구성과, 운영체제, 특정 목적을 수행하는 어플리케이션의 소프트웨어 구성을 포함한다. 시스템 클럭에 따라 관리 서버(100)의 동작을 위한 각 구성요소에 대한 제어 명령이 메모리에서 읽혀지며, 읽혀진 제어 명령에 따라 전기 신호를 발생시켜 하드웨어의 각 구성요소들을 동작시킨다.
이하에서는 본 발명의 다른 실시예에 따른 관리 서버(100')의 구성과 동작을 설명한다.
도 10은 본 발명의 다른 실시예에 따른 관리 서버의 구성과 동작을 도시한 개념도이다.
도 10을 참조하면, 본 발명의 다른 실시예에 따른 관리 서버(100')는 Front-end Server(140)과 Back-end Server(150)를 포함할 수 있다.
Front-end Server(140)는 네이밍 서비스 역할을 하면서 클라이언트 단말(200-1, 200-2. 예시적으로 두 개만 표시됨)로부터의 service-provisioning 요청을 처리하고 Back-end Server(150)에 의한 처리 결과 획득된 Service Session Configuration(이하 “SSG”라 함) 정보를 클라이언트 단말(200-1, 200-2)에 제공할 수 있다. 여기서, SSG 정보는 전술한 네트워크 설정 정보(네트워크 파라미터 정보 및 네트워크 토폴로지 정보)에 해당한다.
Back-end Server(150)는 클라이언트 단말(200-1, 200-2)의 요청을 처리하여 provisioning 을 수행할 수 있다. 구체적으로 Back-end Server(150)의 Service-Aware Provisioning Manager(152)는 데이터베이스(미도시)로부터 획득된 static provisioning configuration 정보와 클라이언트 단말(200-1, 200-2)이나 Server Resource Pool(300)로부터 획득된 dynamic provisioning configuration 정보를 동시에 고려하여 provisioning을 수행할 수 있다. 여기서, static provisioning configuration 정보는 전술한 실시예에서 데이터베이스(400)로부터 획득된 네트워크 토폴로지 정보가 될 수 있다. dynamic provisioning configuration 정보는 클라이언트 단말(200-1, 200-2)이나 서비스 제공 서버(300-1, 300-2, 300-3)들로 구성된 Server Resource Pool(300)로부터 획득된 상태 정보, 서비스 타입 정보, 데이터 종류 정보 등을 의미한다. Back-end Server(150)의 Service-Aware Provisioning Manager(152)는 이들 정보를 고려하여 전술한 실시예에서의 네트워크 토폴로지 정보 및 네트워크 파라미터 정보를 획득하여 제공할 수 있다.
한편, Back-end Server(150)의 Service-server manager(151)는 Server Resource Pool(300)을 관리하고 모니터링하여 상태 정보를 획득한다. 그리고, 특정 서비스 서버에 사용자 수가 최대가 된 경우 특정 클라이언트 단말의 서비스 요청이 있으면, 특정 클라이언트 단말에 새로운 서비스 서버를 할당하기 위해 운영 중인 서버의 수를 늘릴 수 있다.
Server Resource Pool(300)은 복수의 서비스 제공 서버(300-1, 300-2, 300-3)를 포함할 수 있다. 도 10에서는 제공하는 서비스 특성이 상이한 Media Relay Server(300-1), C/S Server(300-2), P2P Server(300-3)를 예시적으로 도시하였다. 각 서비스 제공 서버는 Session Manager(310)를 통해 Back-end Server(150)와 인터랙션하며 설정된 채널(320)을 통해 클라이언트 단말(200-1, 200-2)과 통신한다.
클라이언트 단말(200-1, 200-2)도 Session Manager(210)을 통해 Front-end Server(140)와 인터랙션하며 설정된 채널(220)을 통해 서비스 제공 서버와 통신한다.
전체적인 서비스 제공 흐름은 다음과 같다.
우선, 특정 클라이언트 단말은 Front-end Server(140)에 SSG 정보를 요청한다(①). 그러면, Front-end Server(140)의 Naming Service Manager(141)는 특정 클라이언트 단말의 provisioning을 Service-Aware Provisioning Manager(152)에 요청한다(②). Service-Aware Provisioning Manager(152)는 Service-Server Manager(151)로부터 서버 상태 정보를 가져오고(③), Service-Aware Provisioning Manager(152)는 서버 상태 정보와 Naming Service Manager(141)로부터 제공받은 특정 클라이언트 단말의 요청(서비스 타입 정보 등을 포함)을 고려하여 provisioning 결과를 획득하여 Naming Service Manager(141)에 돌려준다(④). 이때 provisioning 결과는 포트 정보, IP 정보, 채널 정보 등 네트워크 설정을 위한 계산된 정보가 포함될 수 있다. Naming Service Manager(141)는 이들 정보를 SSG 정보로서 특정 클라이언트 단말에 제공한다(⑤). 특정 클라이언트 단말은 수신된 정보에 따라 네트워크 설정을 수행하고 서비스 제공 서버에 서비스를 요청한다(⑥).
한편, 이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.
100, 100' : 관리 서버
200-1, 200-2, 200-n, 200-k : 클라이언트 단말
300 : Server Resource Pool
300-1, 300-2, 300-m : 서비스 제공 서버
300-l : 릴레이 서버, 물리 엔진 서버, P2P 서버
400 : 데이터베이스
110 : 네트워크 설정 정보 획득부
120 : 통신부
130 : 제어부
140 : Front-end Server
150 : Back-end Server
141 : Naming Service Manager
151 : Service-Server Manager
152 : Service-Aware Provisioning Manager

Claims (27)

  1. 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법에 있어서,
    (a) 상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면, 관리 서버가, 데이터베이스를 참조로 하여 상기 서비스 타입 정보 및 상기 상태 정보에 대응되는 정보로서, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 단계, 및
    (b) 상기 관리 서버가, 상기 획득된 네트워크 설정 정보를 상기 클라이언트 단말에 전송하여 상기 클라이언트 단말이 상기 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 (a) 단계는,
    (a1) 상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 제1 상태 정보가 획득되면, 관리 서버가, 데이터베이스를 참조로 하여 상기 서비스 타입 정보 및 상기 제1 상태 정보에 대응되는 네트워크 토폴로지 정보를 획득하는 단계, 및
    (a2) 상기 관리 서버가, 상기 획득된 네트워크 토폴로지 정보 및 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 제2 상태 정보에 기초하여, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 파라미터 정보를 결정하는 단계를 포함하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 제1 상태 정보 및 상기 제2 상태 정보는, 현재 서비스를 제공하고 있는 서비스 제공 서버의 수 정보, 상기 적어도 하나의 서비스 제공 서버로부터 서비스를 제공받고 있는 사용자의 수 정보 및 서비스 제공이 이루어지고 있는 채널 수 정보 중 적어도 일부인 것을 특징으로 하는 방법.
  4. 제1항에 있어서,
    상기 (a) 단계는,
    상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고, 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면,
    상기 관리 서버가, 상기 데이터베이스를 참조로 하여, 상기 서비스 타입 정보 및 상기 상태 정보에 대응되는 (i) 네트워크 토폴로지 정보 및 (ii) 네트워크 파라미터 정보를 획득하는 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 (a) 단계에서,
    상기 상태 정보가 특정 서비스 제공 서버로부터 특정 서비스를 제공받고 있는 사용자 수 정보를 포함하고 상기 사용자 수가 상기 특정 서비스를 제공하는 상기 특정 서비스 제공 서버의 최대 사용자 수와 동일한 경우,
    상기 관리 서버는, 상기 클라이언트 단말이 새로운 서비스 제공 서버로부터 상기 특정 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 (a) 단계에서,
    상기 클라이언트 단말이 서비스를 제공받을 때에 송수신되는 데이터의 종류 정보 및 상기 클라이언트 단말과 데이터를 송수신하는 상대방 단말의 수 정보 중 적어도 하나가 상기 클라이언트 단말로부터 더 획득되면,
    상기 관리 서버는, 상기 데이터의 종류 정보 및 상기 상대방 단말의 수 정보 중 적어도 하나에 대응되는 데이터 송수신 채널의 수 정보를 상기 네트워크 설정 정보로서 획득하는 것을 특징으로 하는 방법.
  7. 제6항에 있어서,
    상기 송수신되는 데이터가 영상 데이터 및 음성 데이터 중 적어도 하나인 경우, 상기 송수신되는 데이터 각각은 독립적인 채널에 할당되는 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 서비스 타입 정보가 스트리밍 서비스인 경우,
    상기 관리 서버는, 상기 데이터베이스를 참조로 하여, 상기 적어도 하나의 서비스 제공 서버 중 특정 릴레이 서버를 통해 스트리밍 서비스를 제공받기 위한 네트워크 설정 정보를 획득하고,
    상기 서비스 타입 정보가 1:1 통신 서비스인 경우,
    상기 관리 서버는, 상기 데이터베이스를 참조로 하여, 상기 적어도 하나의 서비스 제공 서버 중 특정 P2P 서버를 통해 1:1 통신 서비스를 제공받기 위한 네트워크 설정 정보를 획득하며,
    상기 서비스 타입 정보가 데이터 처리 서비스인 경우,
    상기 관리 서버는, 상기 데이터베이스를 참조로 하여, 상기 적어도 하나의 서비스 제공 서버 중 특정 물리 엔진 서버를 통해 데이터 처리 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 것을 특징으로 하는 방법.
  9. 제1항에 있어서,
    상기 클라이언트 단말로부터 상기 클라이언트 단말의 스펙 정보, 데이터의 송수신 주기 정보, 송수신되는 데이터의 크기 정보 및 송수신되는 최대 패킷의 크기 정보 중 적어도 일부가 부가 판단 정보로서 더 획득되면,
    상기 관리 서버는, 상기 클라이언트 단말의 스펙 정보, 데이터의 송수신 주기 정보, 송수신되는 데이터의 크기 정보 및 송수신되는 최대 패킷의 크기 정보 중 적어도 일부를 더 고려하여 상기 네트워크 설정 정보를 획득하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    상기 송수신되는 데이터의 크기가 소정의 크기 이상인 경우 전용 채널을 통해 상기 데이터가 송수신되도록 설정된 네트워크 설정 정보가 획득되고, 상기 송수신되는 데이터 및 다른 송수신 데이터의 크기가 소정의 크기 미만이고 주기가 서로 유사한 경우, 상기 송수신되는 데이터 및 다른 데이터들이 공유 채널을 통해 송수신되도록 설정된 네트워크 설정 정보가 획득되는 것을 특징으로 하는 방법.
  11. 제9항에 있어서,
    상기 송수신되는 데이터의 크기가 소정의 크기 이상인 경우 데이터 송신과 데이터 수신이 각각 송신용 스레드와 수신용 스레드를 통해 별도로 이루어지도록 설정된 네트워크 설정 정보가 획득되고, 상기 송수신되는 데이터의 크기가 소정의 크기 미만인 경우 데이터 송신과 데이터 수신이 하나의 스레드를 통해 이루어지도록 설정된 네트워크 설정 정보가 획득되는 것을 특징으로 하는 방법.
  12. 제9 항에 있어서,
    상기 송수신되는 데이터의 최대 패킷의 크기보다 소켓 버퍼 사이즈가 크도록 설정되고, 상기 데이터가 실시간으로 송수신되는 경우 송수신용 스레드의 우선순위가 상대적으로 높게 설정되고 Nagle 알고리즘이 비활성화되도록 설정된 네트워크 설정 정보가 획득되는 것을 특징으로 하는 방법.
  13. 제1항에 있어서,
    상기 관리 서버는, 통상적인 네이밍(naming) 서비스 기능 또한 수행하는 것을 특징으로 하는 방법.
  14. 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 관리 서버에 있어서,
    상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면, 데이터베이스를 참조로 하여 상기 서비스 타입 정보 및 상기 상태 정보에 대응되는 정보로서, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 네트워크 설정 정보 획득부, 및
    상기 획득된 네트워크 설정 정보를 상기 클라이언트 단말에 전송하여 상기 클라이언트 단말이 상기 네트워크 설정 정보에 기초하여 네트워크 설정을 수행하도록 지원하는 통신부를 포함하는 관리 서버.
  15. 제14항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 상기 서비스 타입 정보가 획득되고 상기 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 제1 상태 정보가 획득되면, 상기 데이터베이스를 참조로 하여 상기 서비스 타입 정보 및 상기 제1 상태 정보에 대응되는 네트워크 토폴로지 정보를 획득하고,
    상기 획득된 네트워크 토폴로지 정보 및 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 제2 상태 정보에 기초하여, 상기 클라이언트 단말이 상기 적어도 하나의 서비스 제공 서버 중 특정 서비스 제공 서버로부터 서비스를 제공받기 위한 네트워크 파라미터 정보를 결정하는 것을 특징으로 하는 관리 서버.
  16. 제15항에 있어서,
    상기 제1 상태 정보 및 상기 제2 상태 정보는, 현재 서비스를 제공하고 있는 서비스 제공 서버의 수 정보, 상기 적어도 하나의 서비스 제공 서버로부터 서비스를 제공받고 있는 사용자의 수 정보 및 서비스 제공이 이루어지고 있는 채널 수 정보 중 적어도 일부인 것을 특징으로 하는 관리 서버.
  17. 제14항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 클라이언트 단말로부터 상기 클라이언트 단말이 제공받고자 하는 서비스 타입을 나타내는 서비스 타입 정보가 획득되고, 적어도 하나의 서비스 제공 서버로부터 상기 적어도 하나의 서비스 제공 서버의 상태를 나타내는 상태 정보가 획득되면,
    상기 데이터베이스를 참조로 하여, 상기 서비스 타입 정보 및 상기 상태 정보에 대응되는 네트워크 토폴로지 정보 및 네트워크 파라미터 정보를 획득하는 것을 특징으로 하는 관리 서버.
  18. 제14항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 상태 정보가 특정 서비스 제공 서버로부터 특정 서비스를 제공받고 있는 사용자 수 정보를 포함하고 상기 사용자 수가 상기 특정 서비스를 제공하는 상기 특정 서비스 제공 서버의 최대 사용자 수와 동일한 경우, 상기 클라이언트 단말이 새로운 서비스 제공 서버로부터 상기 특정 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 것을 특징으로 하는 관리 서버.
  19. 제14항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 클라이언트 단말이 서비스를 제공받을 때에 송수신되는 데이터의 종류 정보 및 상기 클라이언트 단말과 데이터를 송수신하는 상대방 단말의 수 정보 중 적어도 하나가 상기 클라이언트 단말로부터 더 획득되면, 상기 데이터의 종류 정보 및 상기 상대방 단말의 수 정보 중 적어도 하나에 대응되는 데이터 송수신 채널의 수 정보를 상기 네트워크 설정 정보로서 획득하는 것을 특징으로 하는 관리 서버.
  20. 제19항에 있어서,
    상기 송수신되는 데이터가 영상 데이터 및 음성 데이터 중 적어도 하나인 경우, 상기 송수신되는 데이터 각각은 독립적인 채널에 할당되는 것을 특징으로 하는 관리 서버.
  21. 제14항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 서비스 타입 정보가 스트리밍 서비스인 경우, 상기 데이터베이스를 참조로 하여, 상기 적어도 하나의 서비스 제공 서버 중 특정 릴레이 서버를 통해 스트리밍 서비스를 제공받기 위한 네트워크 설정 정보를 획득하고,
    상기 서비스 타입 정보가 1:1 통신 서비스인 경우, 상기 데이터베이스를 참조로 하여, 상기 적어도 하나의 서비스 제공 서버 중 특정 P2P 서버를 통해 1:1 통신 서비스를 제공받기 위한 네트워크 설정 정보를 획득하며,
    상기 서비스 타입 정보가 데이터 처리 서비스인 경우, 상기 데이터베이스를 참조로 하여, 상기 적어도 하나의 서비스 제공 서버 중 특정 물리 엔진 서버를 통해 데이터 처리 서비스를 제공받기 위한 네트워크 설정 정보를 획득하는 것을 특징으로 하는 관리 서버.
  22. 제14항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 클라이언트 단말로부터 상기 클라이언트 단말의 스펙 정보, 데이터의 송수신 주기 정보, 송수신되는 데이터의 크기 정보 및 송수신되는 최대 패킷의 크기 정보 중 적어도 일부가 부가 판단 정보로서 더 획득되면, 상기 클라이언트 단말의 스펙 정보, 데이터의 송수신 주기 정보, 송수신되는 데이터의 크기 정보 및 송수신되는 최대 패킷의 크기 정보 중 적어도 일부를 더 고려하여 상기 네트워크 설정 정보를 획득하는 것을 특징으로 하는 관리 서버.
  23. 제22항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 송수신되는 데이터의 크기가 소정의 크기 이상인 경우 전용 채널을 통해 상기 데이터가 송수신되도록 설정된 네트워크 설정 정보를 획득하고, 상기 송수신되는 데이터 및 다른 송수신 데이터의 크기가 소정의 크기 미만이고 주기가 서로 유사한 경우, 상기 송수신되는 데이터 및 다른 데이터들이 공유 채널을 통해 송수신되도록 설정된 네트워크 설정 정보를 획득하는 것을 특징으로 하는 관리 서버.
  24. 제22항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 송수신되는 데이터의 크기가 소정의 크기 이상인 경우 데이터 송신과 데이터 수신이 각각 송신용 스레드와 수신용 스레드를 통해 별도로 이루어지도록 설정된 네트워크 설정 정보를 획득하고, 상기 송수신되는 데이터의 크기가 소정의 크기 미만인 경우 데이터 송신과 데이터 수신이 하나의 스레드를 통해 이루어지도록 설정된 네트워크 설정 정보를 획득하는 것을 특징으로 하는 관리 서버.
  25. 제22항에 있어서,
    상기 네트워크 설정 정보 획득부는,
    상기 송수신되는 데이터의 최대 패킷의 크기보다 소켓 버퍼 사이즈가 크도록 설정되고, 상기 데이터가 실시간으로 송수신되는 경우 송수신용 스레드의 우선순위가 상대적으로 높게 설정되고 Nagle 알고리즘이 비활성화되도록 설정된 네트워크 설정 정보를 획득하는 것을 특징으로 하는 관리 서버.
  26. 제14항에 있어서,
    상기 관리 서버는, 통상적인 네이밍(naming) 서비스 기능 또한 수행하는 것을 특징으로 하는 관리 서버.
  27. 제1항 내지 제13항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
KR1020150103821A 2015-07-22 2015-07-22 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체 KR101686073B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150103821A KR101686073B1 (ko) 2015-07-22 2015-07-22 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체
US15/210,132 US10038759B2 (en) 2015-07-22 2016-07-14 Method, management server, and computer-readable storage medium for supporting provision of service desired by client terminal by adaptively modifying network topology depending on properties of service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150103821A KR101686073B1 (ko) 2015-07-22 2015-07-22 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체

Publications (1)

Publication Number Publication Date
KR101686073B1 true KR101686073B1 (ko) 2016-12-28

Family

ID=57724077

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150103821A KR101686073B1 (ko) 2015-07-22 2015-07-22 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체

Country Status (2)

Country Link
US (1) US10038759B2 (ko)
KR (1) KR101686073B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190122292A (ko) * 2018-04-20 2019-10-30 에릭슨엘지엔터프라이즈 주식회사 통합 통신 환경에서의 서비스 제공 방법 및 그를 위한 통합 통신 서버
KR102144092B1 (ko) * 2019-04-26 2020-08-13 재단법인 실감교류인체감응솔루션연구단 동적 네트워크 설정 및 서버 확장 방법 및 그 시스템
KR20210025385A (ko) * 2019-08-27 2021-03-09 주식회사 케이티 멀티뷰 스트리밍 서비스를 테스트하는 클라이언트 서버, 방법 및 컴퓨터 프로그램

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10623787B1 (en) * 2017-11-01 2020-04-14 Amazon Technologies, Inc. Optimizing adaptive bit rate streaming for content delivery
CN108847988B (zh) * 2018-06-29 2019-09-17 百度在线网络技术(北京)有限公司 动态拓扑维护方法、装置及设备
CN112367367A (zh) * 2020-10-27 2021-02-12 西安万像电子科技有限公司 图像管理方法、设备及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130070947A (ko) * 2011-12-20 2013-06-28 주식회사 케이티 단말의 음성인식을 제어하는 서버 및 방법, 그리고 단말
KR20130093717A (ko) * 2011-12-23 2013-08-23 주식회사 케이티 컨텐츠 서비스 제공을 위한 네트워크 자원 동적 할당 시스템 및 방법
KR20130107618A (ko) * 2012-03-22 2013-10-02 한국전자통신연구원 Usb 디바이스 장치의 데이터를 클라이언트 단말을 통해 서버로 전송하는 데이터 처리 방법 및 클라이언트 단말
KR20140047203A (ko) * 2012-10-08 2014-04-22 에스케이텔레콤 주식회사 동영상 서비스 장치 및 동영상 서비스 방법

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162539B2 (en) * 2000-03-16 2007-01-09 Adara Networks, Inc. System and method for discovering information objects and information object repositories in computer networks
NO318887B1 (no) * 2003-09-05 2005-05-18 Paradial As Sanntidsproxyer
US7340744B2 (en) * 2005-04-08 2008-03-04 Cisco Technology, Inc. System and method for optimizing sessions and network resources in a loadbalancing environment
US7802286B2 (en) * 2007-07-24 2010-09-21 Time Warner Cable Inc. Methods and apparatus for format selection for network optimization
US8468267B2 (en) * 2007-12-01 2013-06-18 Alcatel Lucent IMS diameter router with load balancing
US8015281B2 (en) * 2008-04-21 2011-09-06 Microsoft Corporation Dynamic server flow control in a hybrid peer-to-peer network
US8819561B2 (en) * 2008-11-12 2014-08-26 Citrix Systems, Inc. Tool for visualizing configuration and status of a network appliance
US8260926B2 (en) * 2008-11-25 2012-09-04 Citrix Systems, Inc. Systems and methods for GSLB site persistence
US8041823B2 (en) * 2008-12-23 2011-10-18 At & T Intellectual Property I, L.P. Optimization of media flows in a telecommunications system
US8838830B2 (en) * 2010-10-12 2014-09-16 Sap Portals Israel Ltd Optimizing distributed computer networks
US9398473B2 (en) * 2011-12-21 2016-07-19 Cisco Technology, Inc. System and method for load based optimization in communication networks
US9172753B1 (en) * 2012-02-20 2015-10-27 F5 Networks, Inc. Methods for optimizing HTTP header based authentication and devices thereof
US9247436B2 (en) * 2012-07-27 2016-01-26 Nokia Solutions And Networks Oy Insight based orchestration of network optimization in communication networks
JP6232126B2 (ja) * 2013-05-08 2017-11-15 コンヴィーダ ワイヤレス, エルエルシー 仮想化ブローカおよびコンテキスト情報を使用するリソースの仮想化のための方法および装置
US9305086B2 (en) * 2013-05-24 2016-04-05 Worldrelay, Inc. Numeric channel tuner and directory server for media and services
US9466278B2 (en) * 2014-05-08 2016-10-11 High Fidelity, Inc. Systems and methods for providing immersive audio experiences in computer-generated virtual environments

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130070947A (ko) * 2011-12-20 2013-06-28 주식회사 케이티 단말의 음성인식을 제어하는 서버 및 방법, 그리고 단말
KR20130093717A (ko) * 2011-12-23 2013-08-23 주식회사 케이티 컨텐츠 서비스 제공을 위한 네트워크 자원 동적 할당 시스템 및 방법
KR20130107618A (ko) * 2012-03-22 2013-10-02 한국전자통신연구원 Usb 디바이스 장치의 데이터를 클라이언트 단말을 통해 서버로 전송하는 데이터 처리 방법 및 클라이언트 단말
KR20140047203A (ko) * 2012-10-08 2014-04-22 에스케이텔레콤 주식회사 동영상 서비스 장치 및 동영상 서비스 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190122292A (ko) * 2018-04-20 2019-10-30 에릭슨엘지엔터프라이즈 주식회사 통합 통신 환경에서의 서비스 제공 방법 및 그를 위한 통합 통신 서버
KR102360698B1 (ko) * 2018-04-20 2022-02-10 에릭슨엘지엔터프라이즈 주식회사 통합 통신 환경에서의 서비스 제공 방법 및 그를 위한 통합 통신 서버
KR102144092B1 (ko) * 2019-04-26 2020-08-13 재단법인 실감교류인체감응솔루션연구단 동적 네트워크 설정 및 서버 확장 방법 및 그 시스템
KR20210025385A (ko) * 2019-08-27 2021-03-09 주식회사 케이티 멀티뷰 스트리밍 서비스를 테스트하는 클라이언트 서버, 방법 및 컴퓨터 프로그램
KR102413647B1 (ko) * 2019-08-27 2022-06-27 주식회사 케이티 멀티뷰 스트리밍 서비스를 테스트하는 클라이언트 서버, 방법 및 컴퓨터 프로그램

Also Published As

Publication number Publication date
US20170026490A1 (en) 2017-01-26
US10038759B2 (en) 2018-07-31

Similar Documents

Publication Publication Date Title
KR101686073B1 (ko) 클라이언트 단말이 제공받고자 하는 서비스 특성에 따라 네트워크 토폴로지를 적응적으로 변형하여 서비스를 제공받도록 지원하는 방법, 관리 서버 및 컴퓨터 판독 가능한 기록매체
CN109274707B (zh) 一种负载调度方法及装置
WO2017088384A1 (zh) 一种直播视频的上传方法、装置及系统
CN110839084B (zh) 会话管理方法、装置、设备和介质
WO2022020092A1 (en) Content adaptive data center routing and forwarding in cloud computing environments
CN109672711B (zh) 一种基于反向代理服务器Nginx的http请求处理方法及系统
TW201822013A (zh) 伺服器負載均衡的方法、裝置及伺服器設備
CN108933829A (zh) 一种负载均衡方法及装置
US20230069240A1 (en) Dynamic cloning of application infrastructures
US20150149524A1 (en) Network system, constant connection method, electronic device, server, and program
CN113453025B (zh) 数据获取方法及装置
JP2017062827A (ja) マルチメディア・マルチパーティ・ピアリング(m2p2)のためのシステムおよび方法
JP2016119583A (ja) Ip電話ネットワークシステムとサーバ装置、ip交換機及びリソース容量拡張方法
WO2020082839A1 (zh) 报文处理方法、相关设备及计算机存储介质
KR20130130295A (ko) 단말을 서버에 할당하고 단말로의 효율적인 메시징을 위한 시스템 및 방법
CN106686635B (zh) 基于无线接入点的控制和配置协议的数据传输方法和装置
CN105577546A (zh) 一种基于QoS的主动请求连接方法
US20150207687A1 (en) Computer ecosystem providing device announcements of session needs and rule-based establishment of network sharing based thereon
KR101883671B1 (ko) 노드 분산 방법 및 이를 수행하는 관리 서버
KR101758065B1 (ko) 부하분산 시스템, 그 제어방법 및 이를 수행하기 위한 기록매체
WO2021115438A1 (zh) 网络切片容量设置方法、控制方法、装置、设备及介质
US9166897B1 (en) System and method for supporting dynamic offloading of video processing for user account management in a computing environment
CN108055305B (zh) 一种存储扩展方法及存储扩展装置
US20140164608A1 (en) Content transmission system
CN113873301A (zh) 视频流的获取方法及装置、服务器和存储介质

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant