KR20170097546A - 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치 - Google Patents

이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR20170097546A
KR20170097546A KR1020170002257A KR20170002257A KR20170097546A KR 20170097546 A KR20170097546 A KR 20170097546A KR 1020170002257 A KR1020170002257 A KR 1020170002257A KR 20170002257 A KR20170002257 A KR 20170002257A KR 20170097546 A KR20170097546 A KR 20170097546A
Authority
KR
South Korea
Prior art keywords
session
content
information
terminal device
content providing
Prior art date
Application number
KR1020170002257A
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 PCT/KR2017/005317 priority Critical patent/WO2018128226A1/ko
Priority to CN201780082469.6A priority patent/CN110169030B/zh
Publication of KR20170097546A publication Critical patent/KR20170097546A/ko
Priority to US16/503,880 priority patent/US11095692B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/4084
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • 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
    • 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/14Multichannel or multilink protocols
    • 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]
    • 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/165Combined use of TCP and UDP protocols; selection criteria therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 스트리밍 서비스를 위한 컨텐츠 전송 방법 및 장치에 관한 것으로서, TCP 세션을 통해 UDP 방식으로 컨텐츠를 전송하기 위한 세션 키 및 UDP 포트 정보를 송수신하여, 단말장치와 컨텐츠 제공 장치 간의 UDP 세션을 생성하고, 상기 생성된 UDP 세션을 통해 단말장치로부터 요청된 스트리밍 컨텐츠를 제공함으로써, NAT 기술을 활용한 이종 모바일 네트워크 환경에서도 지연 없이 스트리밍 컨텐츠를 제공할 수 있다.

Description

이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치{Contents Transmission Method in Heterogeneous Network and Apparatus therefor}
본 발명은 스트리밍 서비스를 위한 컨텐츠 전송 방법 및 장치에 관한 것으로서, 더욱 상세하게는 스트리밍 서비스를 제공하는 네트워크 타입(Network Type)에 따른 적응형 컨텐츠 전송 기법을 제안함으로써, NAT 기술을 활용한 홈 와이파이(Home Wi-Fi) 또는 공유기 등을 사용하는 사용자에게도 저지연 방송 서비스를 제공할 수 있는 컨텐츠 전송 방법 및 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시 예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
기존에는 소비자들이 방송 컨텐츠를 주로 TV를 통해서 소비하였으나, 최근 방송 컨텐츠를 소비하는 소비자들의 시청 형태가 모바일 장치로 이동하면서, 모바일 비디오 스트리밍 트래픽(Mobile Video Streaming Traffic)이 점점 증가하고 있는 실정이다.
하지만 현재 모바일 라이브 스트리밍 서비스(Mobile Live Streaming Service)는 스트리밍 서비스 제공자의 원본 영상과 비교하여 상당한 지연(예를 들면, 30초)이 발생하며, 이러한 지연이 발생하는 주요 원인은 기존의 적응형 스트리밍 방식이 일련의 비디오 청크(Chunks)를 요청함으로써 따라오는 매니페스트 파일(Manifest File)을 포함하고 있고, 패킷(Packet)의 재전송을 통해 데이터 스트림을 안정적으로 수신하기 위한 TCP 혼잡 제어 기술을 사용하고 있기 때문이었다.
한편, 이러한 문제점을 해결하고, 적은 오버헤드(Overhead) 및 지연 시간(Delay Time)을 가지고 실시간에 가깝게 방송 컨텐츠를 제공하기 위하여, MMTP(MPEG Media Transport Protocol) 프로토콜을 활용한 UDP 방식으로 방송 컨텐츠를 전송하는 기법을 생각해볼 수 있지만, 이러한 UDP 타입을 활용한 방송 컨텐츠 전송 방식은 이종 모바일 네트워크 상에서 NAT Traversal 문제가 있었으며, 이러한 문제점들로 인하여 Home Wi-Fi 또는 공유기를 사용하는 사용자에게는 저지연 방송 서비스를 제공하기 어려운 문제점이 있었다.
한국등록특허 제1395405호 (명칭: 로컬 IP 접속을 위한 NAT 횡단, 공개일: 2012.07.17.)
상술한 문제점을 해결하기 위하여, NAT 기술을 활용한 모바일 환경에서 지연 없이 스트리밍 컨텐츠를 제공할 수 있는 스트리밍 서비스를 위한 컨텐츠 전송 방법 및 이를 위한 장치를 제공하고자 한다.
구체적으로 단말장치와 컨텐츠 제공 장치 간에 스트리밍 전송을 제어하기 위한 TCP 세션을 형성하고, 컨텐츠 제공 장치는 인증을 위한 세션 키(Session Key)와 UDP 전송을 위한 세션 정보를 단말장치에 전송하여, 컨텐츠 전송을 위한 UDP 세션을 등록하고, 단말장치로부터 스트리밍 컨텐츠 전송 요청이 수신되면, 상기 상기 등록된 UDP 세션을 통해 스트리밍 컨텐츠를 전송함으로써, NAT 기술을 활용한 모바일 환경에서도 지연 없이 스트리밍 컨텐츠를 제공할 수 있는 방법 및 장치를 제공하고자 한다.
그러나, 이러한 본 발명의 목적은 상기의 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 이종 네트워크 상에서의 컨텐츠 제공 방법은 이종 네트워크 상에서 단말장치에게 스트리밍 서비스를 제공하는 컨텐츠 제공 장치에서의 컨텐츠 전송 방법에 있어서, 컨텐츠 전송에 필요한 제어 정보를 전송하기 위한 제1 세션을 상기 단말 장치와 형성하는 단계, 컨텐츠 전송을 위한 제2 세션의 등록에 필요한 컨텐츠 제공 장치 측 세션 정보를 상기 제1 세션을 통해 상기 단말장치로 전송하는 단계, 상기 단말장치로부터 상기 제2 세션의 등록에 필요한 단말 장치 측 세션 정보를 수신하는 단계, 상기 단말 장치 측 세션 정보 및 상기 컨텐츠 제공 장치 측 세션 정보를 기반으로 상기 제2 세션을 등록하는 단계 및 상기 단말장치로부터 상기 제1 세션을 통해 컨텐츠 전송 요청을 수신하면, 상기 제2 세션을 통해 상기 단말장치로 요청된 컨텐츠를 제공하는 단계를 포함할 수 있다.
이때, 상기 세션 정보는 포트 넘버, IP 주소 정보, 상기 단말장치와 상기 컨텐츠 제공 장치 간의 세션을 인증하기 위한 세션 키(Session Key), 컨텐츠 식별 정보, 패킷 그룹 시퀀스 넘버, 패킷 ID 정보, 패킷 시퀀스 넘버, 프로토콜 정보 및 재시도 표시 정보 중 적어도 하나를 포함할 수 있고, 상기 제2 세션을 등록하는 단계는 상기 단말 장치로부터 수신한 세션 정보에 포함된 세션 키와, 상기 단말 장치로 전송한 세션 정보에 포함된 세션 키를 비교하여, 일치하면, 상기 제2 세션을 등록할 수 있다.
또한, 상기 제공하는 단계는 패킷의 페이로드에 포함되는 최소 디코딩 단위인 적어도 하나의 MFU(Media Fragment Unit) 또는 상기 적어도 하나의 MFU를 포함하여 이루어지는 적어도 하나의 MPU(Media Processing Unit)로 구성되는 MMT(MPEG Media Transport) 패킷으로 구성되는 컨텐츠를 제공하고, 상기 컨텐츠 식별 정보는 애셋 ID 정보를 나타내고, 상기 패킷 그룹 시퀀스 넘버는 MPU 시퀀스 넘버를 나타낼 수 있고, 상기 제1 세션은 TCP(Transmission Control Protocol) 세션이고, 상기 제2 세션은 UDP(User Datagram Protocol) 세션일 수 있으며, 상기 컨텐츠를 제공하는 단계 이후에, 상기 단말 장치로부터 상기 제2 세션의 재등록에 필요한 단말 장치 측 세션 정보를 수신하는 단계 및 상기 수신한 세션 정보를 기반으로 상기 제2 세션 등록을 갱신하는 단계, 상기 갱신된 제2 세션을 기반으로 상기 단말장치에 상기 컨텐츠를 제공하는 단계를 더 포함할 수 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 이종 네트워크 상에서의 컨텐츠 제공 방법은 이종 네트워크 상에서 컨텐츠 제공 장치로부터 스트리밍 서비스를 제공 받는 단말장치에서의 컨텐츠 수신 방법에 있어서, 컨텐츠 전송에 필요한 제어 정보를 전송하기 위한 제1 세션을 상기 컨텐츠 제공 장치와 형성하는 단계, 컨텐츠 전송을 위한 제2 세션의 등록에 필요한 컨텐츠 제공 장치 측 세션 정보를 상기 제1 세션을 통해 상기 컨텐츠 제공 장치로부터 수신하는 단계, 상기 제2 세션의 등록에 필요한 단말 장치 측 세션 정보를 상기 컨텐츠 제공 장치로 전송하는 단계, 상기 단말장치 측 세션 정보 및 상기 컨텐츠 제공 장치 측 세션 정보를 기반으로 상기 제2 세션을 등록하는 단계, 상기 제1 세션을 통해 상기 컨텐츠 제공 장치에 컨텐츠 전송을 요청하고, 상기 제2 세션을 통해 상기 요청한 컨텐츠를 제공 받는 단계, 상기 컨텐츠 제공 장치로부터 일정 시간 동안 상기 요청한 컨텐츠의 전송이 중단되는 경우, 상기 제2 세션의 재등록을 위한 단말장치 측 세션 정보를 상기 컨텐츠 제공 장치로 전송하는 단계 및 상기 제2 세션을 갱신 하여, 상기 요청한 컨텐츠를 제공 받는 단계를 포함할 수 있다.
한편, 상술한 이종 네트워크 상에서의 컨텐츠 제공 방법은 상술한 바와 같은 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체로 제공될 수 있고, 상술한 바와 같은 방법을 실행시키도록 구현되어 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램으로 제공될 수도 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명에 따른 컨텐츠 제공 장치는 이종 네트워크 상에서 단말장치에게 스트리밍 서비스를 제공하는 컨텐츠 제공 장치에 있어서, 통신망과 연동하여 상기 단말장치와 데이터를 송수신하는 통신 모듈 및 컨텐츠 전송에 필요한 제어 정보를 전송하기 위한 제1 세션을 형성하고, 상기 컨텐츠 전송을 위한 제2 세션의 등록에 필요한 컨텐츠 제공 장치 측 세션 정보를 상기 제1 세션을 통해 상기 단말장치로 전송하고, 상기 단말장치로부터 상기 제2세션 등록에 필요한 단말 장치 측 세션 정보를 수신하면, 상기 단말 장치 측 세션 정보 및 상기 컨텐츠 제공 장치 측 세션 정보를 기반으로 상기 제2 세션을 등록하여, 상기 제2 세션을 통해 상기 컨텐츠를 제공하는 제어모듈을 포함할 수 있다.
이때, 상기 제1 세션은 TCP(Transmission Control Protocol) 세션이고, 상기 제2 세션은 UDP(User Datagram Protocol) 세션일 수 있다.
본 발명에 따르면, TCP 세션을 통해 UDP 방식으로 컨텐츠를 전송하기 위한 세션 키 및 UDP 포트 정보를 송수신하여, 단말장치와 컨텐츠 제공 장치 간의 UDP 세션을 생성하고, 상기 생성된 UDP 세션을 통해 단말장치로부터 요청된 스트리밍 컨텐츠를 제공함으로써, NAT 기술을 활용한 이종 모바일 네트워크 환경에서도 지연 없이 스트리밍 컨텐츠를 제공할 수 있다.
특히, 핸드오버 등과 같이 전송 환경이 변경되는 상황에서도, 끊김없이 UDP 방식으로 스트리밍 컨텐츠를 전송할 수 있다.
아울러, 상술한 효과 이외의 다양한 효과들이 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 수 있다.
도1 내지 도2는 본 발명의 실시 예에 따른 컨텐츠 제공 시스템의 주요 구성을 나타낸 도면이다.
도3은 본 발명에 따른 단말 장치의 주요 구성을 설명하기 위한 블록도이다.
도4는 본 발명에 따른 컨텐츠 제공 장치의 주요 구성을 설명하기 위한 블록도이다.
도5는 본 발명의 실시 예에 따른 컨텐츠 제공 방법을 설명하기 위한 데이터 흐름도이다.
도6은 본 발명의 실시 예에 따른 UDP 세션 등록을 위한 세션 정보 메시지의 구문을 설명하기 위한 도면이다.
도7은 본 발명의 실시 예에 따른 MMT 패킷 구조를 설명하기 위한 도면이다.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 명세서에 기재된 "부", "기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사 관련어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.
상술한 용어들 이외에, 이하의 설명에서 사용되는 특정 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광 디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다.
이하의 설명 및 특허청구범위에서 본 발명에 따른 이종 네트워크 상에서의 스트리밍 컨텐츠 전송 방법 및 이를 위한 장치를 구현하기 위한 기술적인 배경은 MMT(MPEG Media Transport) 인 것을 가정하여 설명하도록 한다.
그러나, 이는 본 발명의 이해를 돕기 위한, 편의상 예시일 뿐, 본 발명이 반드시 MMT 기술에만 한정되어 적용되는 것은 아니다.
그러면 이제, 본 발명의 실시 예에 따른 시스템에서의 이종 네트워크 상에서의 스트리밍 컨텐츠 전송 방법에 대하여 도면을 참조하여 상세하게 설명하도록 한다.
도1은 본 발명의 실시 예에 따른 스트리밍 컨텐츠 전송 시스템의 구성을 나타내는 도면이다.
도1을 참조하면, 본 발명의 실시 예에 따른 스트리밍 컨텐츠 전송 시스템은 컨텐츠 제공 장치(200), 단말장치(300)를 포함하여 구성될 수 있으며, 상기 컨텐츠 제공 장치(200)와 단말장치(300)는 통신망(100)을 통해서 연동된다.
그러면, 도1을 참조하여 각 구성요소에 대해 개략적으로 설명하도록 한다.
먼저, 통신망(100)은 단말장치(200)와 컨텐츠 제공 장치(300)간 데이터 송수신을 위해 데이터를 전달하는 역할을 하며, 시스템 구현 방식에 따라 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신 방식을 이용할 수도 있고, WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access), LTE(Long Term Evolution), LTE-A (Long Term Evolution Advanced) 등의 무선 통신 방식을 이용할 수도 있으며, 상술한 통신 방식 이외에도 기타 널리 공지되었거나 향후 개발될 모든 형태의 통신 방식을 포함할 수 있다.
단말장치(200)는 사용자의 조작에 따라 통신망(100)을 통해 컨텐츠 제공 장치(300)와 각종 데이터를 송수신할 수 있는 사용자의 장치를 의미한다.
이러한 단말장치(200)는 통신망(100)을 통하여 음성 또는 데이터 통신을 수행할 수 있으며, 데이터의 송수신 및 처리를 위한 프로그램 및 프로토콜을 저장하는 메모리, 각종 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비할 수 있다. 또한, 이러한 본 발명의 단말장치(200)는 다양한 형태로 구현될 수 있다. 예를 들어, 본 명세서에서 기술되는 단말장치(200)는 스마트 폰(smart phone), 타블렛 PC(Tablet PC), PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), MP3 Player 등의 이동 단말기는 물론, 스마트 TV(Smart TV), 노트북 컴퓨터(Laptop Computer), 데스크탑 컴퓨터 등과 같은 고정 단말기가 사용될 수도 있으며, 본 발명에 따른 데이터를 송수신 할 수 있는 장치라면, 그 어떠한 장치도 본 발명의 실시 예에 따른 단말장치(200)로 이용될 수 있다.
한편, 본 발명에 따른 단말장치(200)는 사용자의 입력에 따라 컨텐츠 제공 장치(300)로 컨텐츠 전송을 요청하여, 컨텐츠 제공 장치(300)로부터 스트리밍 방식으로 컨텐츠를 수신할 수 있다.
이 때, 컨텐츠는 패킷 단위로 수신할 수 있으며, 패킷은 MMT 패킷일 수 있다.
마지막으로 컨텐츠 제공 장치(300)는 컨텐츠 제공 장치(300)에 저장되어 있거나, 외부 장치(미도시)로부터 수신한 동영상 등의 컨텐츠 데이터를 통신망(100)을 통해서 단말장치(200)로 전송하기 위한 장치이다.
이러한 컨텐츠 제공 장치(300)는 단말장치(200)로 컨텐츠를 스트리밍 하기 위하여 단말 장치(200)에 스트리밍 컨텐츠 데이터를 패킷 단위로 나누어 전송할 수 있다.
한편, 컨텐츠 제공 장치(300)에서 단말장치(200)로 스트리밍 컨텐츠를 전송할 때, NAT 라우터를 거쳐서 전달하게 되는 경우가 있다.
대표적인 예로, 단말장치(200)가 Home Wi-Fi 혹은 공유기를 사용하여 통신망(100)에 접속되는 경우를 예로 들 수 있다.
이때, 스트리밍 컨텐츠를 전송하는 컨텐츠 제공 서버(300)는 NAT 라우터의 IP 주소만을 고려하여 컨텐츠를 전송하기 때문에, UDP(User Datagram Protocol) 타입을 활용하여 컨텐츠를 전송하는 경우, NAT 횡단 (NAT Traversal) 문제가 발생하였다.
이에 대하여, 도2를 통해 구체적으로 설명하도록 한다.
도2는 하나 이상의 단말장치(200)가 NAT 라우터(400)를 거쳐서 통신망(100)과 연결된다.
NAT(Network Address Translation) 라우터(400)는 사설 IP 주소를 공인 IP 주소로 바꿔주는데 사용하는 통신망(100)의 주소 변환기로서, 사설 IP 주소를 공인 IP 주소와 상호 변환할 수 있도록 하여 공인 IP 주소를 다수가 함께 사용할 수 있도록 함으로써 한정된 공인 IP 주소를 절약하거나, 공인 IP 주소만 외부에 알려지게 하고, 내부에서는 사설 IP 주소만을 사용함으로써, 외부 침입자의 공격으로부터 내부 네트워크를 보호하기 위해 사용된다.
예를 들어, NAT 기술은 홈 Wi-Fi AP 혹은 공유기에 적용되어, 로컬에서 사용되는 단말 장치의 IP를 Wi-Fi AP 혹은 공유기에 할당된 공인 IP로 변환하거나, 이동통신망에서 외부 망(예를 들어, 인터넷)이 연결되는 접속점에 적용되어, 이동통신망에서 사용되는 단말 장치의 사설 IP 주소를 공인 IP 로 변환한다.
이러한 NAT 기술을 적용하여, 단말장치(200)로 스트리밍 컨텐츠를 제공할 때, 종래에는 TCP(Transmission Control Protocol) 세션을 이용하여 컨텐츠를 제공하였으나, TCP 세션을 이용하여 컨텐츠를 제공하는 경우, 스트리밍 서비스 제공자의 원본 컨텐츠와 비교할 때, 상당한 지연이 발생하는 문제점이 있었다.
즉, 스포츠 중계와 같이, 실시간 제공이 중요한 컨텐츠의 경우, 현재 스포츠 경기의 진행 상황이 실시간으로 단말장치(200)로 전달되지 않고, 딜레이가 발생하여, 예를 들면, 30초 전 상황이 담긴 컨텐츠 데이터가 단말장치(300)로 제공되는 문제가 발생하였다.
한편, 이러한 문제는 TCP 세션으로 컨텐츠를 제공하지 않고, UDP 방식으로 컨텐츠를 제공하면, 해결될 수 있었으나, UDP 방식을 활용하여 컨텐츠를 제공하는 경우, 앞서 설명한 것과 같이 NAT 횡단 문제가 발생하여, NAT 라우터(400)에 연결되어 컨텐츠를 제공받는 단말장치(200)에게는 저지연 컨텐츠 제공 서비스를 제공하지 못한다는 문제점이 있었다.
따라서, 본 발명에서는 상술한 문제점을 해결하기 위하여, 컨텐츠 요청을 한 단말장치(200)와 컨텐츠 제공 장치(300) 간에 UDP 세션을 등록하여, 상기 UDP 세션을 통해 컨텐츠를 제공함으로써, NAT 횡단 문제 없이 저지연 컨텐츠 제공 서비스를 사용자에게 제공할 수 있는 방법을 제안하고자 한다.
그러면 이제, 본 발명에 따른 단말장치(200) 및 컨텐츠 제공 장치(300)의 구성 및 동작 과정에 대해 살펴보도록 한다.
한편, 후술할 단말장치(200) 및 컨텐츠 제공 장치(300) 간에 연결되는 제1 세션은 TCP 세션이 될 수 있으며, 제2 세션은 UDP 세션이 될 수 있음을 감안해야 한다.
마찬가지로, 제1 통신 방식은 TCP 방식을 의미하며, 제2 통신 방식은 UDP 방식으로 데이터를 송수신함을 의미할 수 있다.
도3은 본 발명에 따른 단말장치(200)의 구성을 나타낸 블록도이고, 도4는 본 발명에 따른 컨텐츠 제공 장치(300)의 구성을 나타낸 블록도이다.
우선 도3을 살펴보면, 단말장치(200)는 통신모듈(210), 저장모듈(230) 및 제어모듈(250)을 포함할 수 있다.
통신모듈(210)은 통신망(100)을 통해 컨텐츠 제공 장치(300)와 데이터를 송수신하기 위한 것으로서, 통신모듈(210)을 통해 제1 세션 또는 제2 세션을 통해 사용자의 입력에 따른 컨텐츠 제공을 요청하고, 상기 요청에 따른 컨텐츠를 수신할 수 있으며, 아울러, 제 2 세션 등록을 위한 세션 정보를 송수신 할 수 있다.
저장모듈(230)은 통신모듈(210)을 통해 수신한 컨텐츠 또는 세션 정보를 저장할 수 있다.
제어모듈(250)은 본 발명에 따른 단말장치(200)의 동작 과정 전반을 제어하는 장치이다.
상기 제어모듈(250)에 의해 제어되는 단말장치(200)의 동작 과정은 컨텐츠 제공 장치(300)의 동작과정과 함께 도5를 통해 상세히 후술하도록 한다.
한편, 본 발명에 따른 단말장치(200)는 도3에 도시하지는 않았으나, 사용자의 요청을 입력 받기 위한 입력모듈(미도시), 컨텐츠 전송 장치(300)로부터 수신한 컨텐츠를 재생하는 출력모듈(미도시) 등을 포함할 수 있다.
도4를 통해 컨텐츠 제공 장치(300)의 주요 구성에 대해 살펴보면, 본 발명에 따른 컨텐츠 제공 장치(300)는 통신모듈(310), 저장모듈(330) 및 제어모듈(350)을 포함할 수 있다.
통신모듈(310)은 통신망(100)을 통해 단말장치(200)와 데이터를 송수신하기 위한 것으로서, 제1 세션 또는 제2 세션을 통해 단말장치(200)로부터 컨텐츠 요청을 수신하고, 이에 따른 컨텐츠를 전송할 수 있으며, 제2 세션 등록을 위한 세션 정보를 송수신할 수 있다.
저장모듈(330)은 통신모듈(310)을 통해 단말장치(200)에 전송할 다양한 컨텐츠의 데이터 및 단말장치(200)와 제2 세션을 통해 데이터를 전송하기 위한 세션 정보를 저장할 수 있다.
제어모듈(350)은 본 발명에 따른 컨텐츠 제공 장치(300)의 동작 과정 전반을 제어하는 장치이다.
이러한 제어모듈(350)에 의하여 전반적으로 제어되는 컨텐츠 제공 장치(300)의 동작과정 및 단말장치(200)의 동작과정에 대하여 도5를 통해 상세히 살펴보도록 한다.
도5를 보면, 단말장치(200)와 컨텐츠 제공 장치(300) 간의 데이터 전송에서 실선과 점선을 볼 수 있는데, 실선은 제1 세션을 통한 데이터 전송을, 점선은 제2 세션을 통한 데이터 전송을 나타낸다.
예를 들면, 실선으로 된 부분은 TCP 세션을 이용하여 각 단계가 구현되며, 점선으로 된 부분은 UDP 세션을 이용하여 각 단계를 구현할 수 있는 것이다.
이와 더불어, 도5에 관한 설명에서 제1 통신 방식은 TCP 방식을 의미하며, 제2 통신 방식은 UDP 방식으로 데이터를 송수신함을 의미할 수 있다.
도5를 보면, 우선 단말장치(200)와 컨텐츠 제공 장치(300)는 상호 간에 컨텐츠 전송에 필요한 제어 정보를 전송하기 위해 제1 세션을 형성한다(S101).
상기의 제어 정보를 컨텐츠 전송에 필요한 정보로서, 예를 들면, 단말장치(200)의 스트리밍 컨텐츠 요청 메시지, 스트리밍 컨텐츠 전송 중단 메시지, 유실 패킷 재전송 요청 메시지 등이 될 수 있다.
단말장치(200)와 컨텐츠 제공 장치(300) 간에 제1 세션이 형성되면, 형성된 제1 세션을 통해 컨텐츠 제공 장치(300)는 단말장치(200)에게 컨텐츠 전송을 위한 제2 세션의 등록에 필요한 컨텐츠 제공 장치(300) 측 세션 정보를 전송한다(S103).
이때, 컨텐츠 제공 장치(300)에서 단말장치(200)로 전송되는 컨텐츠 제공 장치 측 세션 정보에는 제2 세션 등록 및 이를 통한 컨텐츠 제공을 위한 정보들이 포함될 수 있는데, 이러한 세션 정보 메시지(Session Notification Message; SN Message) 의 구문에 대하여 도6을 통해 살펴보면, 세션 정보 메시지에는 포트 넘버(port_number), IP 주소(IP_address) 정보, 상기 단말장치와 상기 컨텐츠 제공 장치 간의 세션을 인증하기 위한 세션 키(Session Key), 컨텐츠 식별 정보, 패킷 그룹 시퀀스 넘버, 패킷 ID 정보(Packet_id), 패킷 시퀀스 넘버(Packet_sequence_number), 프로토콜 정보(protocol) 및 재시도 표시(retry_flag) 정보 중 적어도 하나를 포함될 수 있다.
이때, 단말장치(200)와 컨텐츠 제공 장치(300)가 MMT 프로토콜을 활용하여 컨텐츠를 전송하는 경우, 상기 컨텐츠 식별 정보는 애셋 ID(asset_id) 정보가 될 수 있고, 패킷 그룹 시퀀스 넘버는 MPU 시퀀스 넘버(MPU_seq)일 수 있다.
이제, 세션 정보 메시지에 포함된 각 정보들에 대하여 설명하면, 포트 넘버(port_number)는 패킷(또는 스트리밍 컨텐츠)을 전송하는 UDP 포트 넘버를 포함할 수 있고, 포트 넘버 정보 필드의 길이는 32 비트로 설정될 수 있다.
IP 주소(IP_address) 정보는 패킷(또는 스트리밍 컨텐츠)을 전송하는 송신 측의 IPv4 주소를 포함할 수 있고, IP 주소 정보 필드의 길이는 32 비트(bits)로 설정될 수 있다.
세션 키 정보는 단말장치(300)와 스트리밍 서버(200) 간에 생성 또는 등록된 세션을 식별하기 위하여 임의(Random)로 생성된 키 값을 포함할 수 있고, 세션 키 정보 필드의 길이는 32 비트(bits)로 설정될 수 있다.
컨텐츠 식별 정보인 애셋 ID 정보는 MMT에서 정의되는 애셋의 식별자를 포함할 수 있다.
패킷 그룹 시퀀스 넘버인 MPU 시퀀스 넘버(MPU_seq)는 다음 MPU 프리젠테이션 타임(mpu_presentation_time)에 제공되는 MPU의 시퀀스 넘버를 의미할 수 있다.
패킷 ID 정보(Packet_id)는 각 애셋에 포함되어 있는 패킷을 구별하기 위해 각 패킷에 할당된 정수값으로서, 이때, 정수값은 시그널링 메시지와 FEC 패리티 플로우(FEC parity flow)를 기반으로 할당된다.
패킷 시퀀스 넘버(Packet_sequence_number)는 전송 중 유실된 패킷을 검출하고, 이에 따른 패킷 재전송 요청을 하기 위한 식별 정보로서, mask_byte가 가리키는 첫번째 패킷의 패킷 시퀀스 넘버에 대응할 수 있다.
프로토콜(protocol) 정보는 스트리밍 데이터 전송에 사용되는 프로토콜에 관한 정보를 포함할 수 있고, 프로토콜 정보 필드의 길이는 16 비트로 설정될 수 있다.
재시도 표시(retry_flag) 정보는 스트리밍 세션에서의 세션 연속성에 관한 정보를 포함할 수 있다. 즉, 재시도 표시 정보의 값이 설정되어 있다면, 스트리밍을 수행하는 중에 단말장치(300)에 핸드오버가 발생하거나 네트워크 연결이 중단되었음을 의미할 수 있다.
이러한 재시도 표시 정보 필드의 길이는 1 비트로 설정될 수 있다.
상기의 정보들이 포함된 세션 정보를 수신한 단말장치(200)는 제2 통신 방식을 활용하여 상기 세션 정보에 포함된 IP 주소 또는 포트 넘버에 따라, 제2 세션의 등록에 필요한 단말장치(200) 측 세션 정보를 컨텐츠 제공 장치(300)에 전송한다(S105).
이때, 단말장치(200) 측 세션 정보는 컨텐츠 제공 장치(300) 측 세션 정보와 동일한 구문을 가질 수 있다.
즉, 단말장치(200) 측 세션 정보와 컨텐츠 제공 장치(300) 측 세션 정보는 동일한 종류의 정보를 포함할 수 있다.
다시 말해, 단말장치(200) 측 세션 정보도 포트 넘버(port_number), IP 주소(IP_address) 정보, 상기 단말장치와 상기 컨텐츠 제공 장치 간의 세션을 인증하기 위한 세션 키(Session Key), 컨텐츠 식별 정보, 패킷 그룹 시퀀스 넘버, 패킷 ID 정보(Packet_id), 패킷 시퀀스 넘버(Packet_sequence_number), 프로토콜 정보(protocol) 및 재시도 표시(retry_flag) 정보 중 적어도 하나를 포함될 수 있다.
다만, 세션 키(Session Key)를 제외한 각 정보의 값은 컨텐츠 제공 장치(300) 측 세션 정보와 달라질 수 있다.
예를 들어, 컨텐츠 제공 장치(300) 측 세션 정보에 포함된 포트 넘버와 IP 주소 정보는 컨텐츠 제공 장치(300)의 포트 넘버와 IP 주소 값을 기록하고 있으나, 단말장치(200) 측 세션 정보에 포함된 IP 주소 정보는 단말장치(200) 측 IP 주소 정보를 포함하고 있을 수 있다.
단말장치(200) 측 세션 정보를 수신한 컨텐츠 제공 장치(300)는 수신한 단말장치(200) 측 세션 정보 및 컨텐츠 제공 장치(300)가 단말장치(200)로 전송한 컨텐츠 제공 장치(300) 측 세션 정보를 기반으로 상기 제2 세션을 등록한다(S107).
이때, 컨텐츠 제공 장치(300)는 단말장치(200) 측 세션 정보에 포함된 세션 키와 컨텐츠 제공 장치(300) 측 세션 정보에 포함된 세션 키를 비교하여, 두 세션 키가 일치하면, 단말장치(200)와 컨텐츠 제공 장치(300)간에 제2 통신 방식으로 데이터를 전송할 제2 세션을 등록할 수 있다.
제2 세션이 등록되면, 단말장치(200)는 스트리밍 컨텐츠를 전송하여 줄 것을 기 형성된 제1 세션을 통해 컨텐츠 제공 장치(300)에 요청하면(S109), 컨텐츠 제공 장치(300)는 등록된 제2 세션을 통해 단말장치(200)로 요청된 컨텐츠를 전송한다(S111).
한편, 컨텐츠 제공 장치(300)가 단말장치(200)에 컨텐츠를 전송하다가, 단말장치(200)의 이동에 의한 핸드오버가 발생하거나, 네트워크 상황이 악화되어, 컨텐츠 전송이 중단되는 경우가 발생할 수 있다(S113).
이러한 경우, 요청한 컨텐츠를 지속하여 제공 받기 위해 단말장치(200)는 일정 시간 동안 요청한 컨텐츠의 전송이 중단되면, S103단계에서 수신한 컨텐츠 제공 장치(300) 측 세션 정보 내에 포함된 세션 키, IP 주소 정보 및 포트 넘버를 이용하여, 단말장치(200) 측 세션 정보를 등록된 제2 세션을 통해 컨텐츠 제공 장치(300)로 전송하고(S115), 컨텐츠 제공 장치(300)는 수신한 단말장치(200) 측 세션 정보에 포함된 세션 키, IP 주소 정보 및 포트 넘버를 이용하여 제2 세션 등록을 갱신하고, 중단된 컨텐츠를 다시 단말장치(200)로 전송한다(S117).
이때, 컨텐츠 제공 장치(300)는 중단된 시점부터 컨텐츠를 재전송할 수 있다.
한편, S115 단계에서 전송하는 단말장치(200) 측 세션 정보는 S105 단계에서 전송하는 단말장치(200) 측 세션 정보와 동일한 값 및 정보를 포함할 수도 있지만, 서로 다른 값 및 정보를 포함할 수도 있다.
예를 들어, 단말장치(200)의 이동 등에 의한 핸드오버가 발생하여, 컨텐츠 전송이 중단된 경우, 단말장치(200)에 할당되는 IP 주소 정보가 변동될 수 있다.
이러한 경우, S115 단계에서 단말장치(200)는 단말장치(200) 측 세션 정보에 포함된 IP 주소 정보를 변동된 IP 주소 정보로 변경하여 컨텐츠 제공 장치(300)로 전송하며, 컨텐츠 제공 장치(300)는 변경된 IP 주소 정보에 근거하여 제2 세션 등록을 갱신하게 된다.
한편, 상술한 바와 같이 컨텐츠 제공 장치(300)는 단말장치(200)에 패킷 단위로 컨텐츠 데이터를 전송하게 되는데, 본 발명의 실시 예에서 상기 패킷은 상술한 바와 같이 MMT 패킷일 수 있으며, 이러한 MMT 패킷 구조에 대해 도7을 참조하여 설명하도록 한다.
도7을 참조하면, MMT 패키지(10)는 MMT 기능 영역에서 정의하는 데이터 모델 중 논리적으로 구조화된 가장 큰 MMT 개체(entity)로서 영화 한편과 같은 하나의 독립적인 컨텐츠를 의미한다. 동영상 등의 스트리밍 컨텐츠 제공 서비스를 제공하는 컨텐츠 제공 장치(300)는 이러한 MMT 패키지를 생성하여 단말장치(200)로 제공할 수 있는데, MMT 패키지(10)는 여러 개체들의 모음으로 구성되는 논리적으로 구조화된 컬렉션이 될 수 있다. 이러한 MMT 패키지(10)는 하나 이상의 애셋(20), 프리젠테이션 정보(11), 트랜스포트 특성(13) 및 설명적인(descriptive) 정보, 예컨대, 패키지 정보를 포함할 수 있다.
이 중, 프리젠테이션 정보(Presentation Information, 11)은 복수의 애셋(20)들 사이의 관계(relationship), 즉 공간적 및 시간적 관계에 대한 정보를 포함하며, 하나의 컨텐츠(content)가 복수개의 MMT 패키지로 이루어질 경우 복수의 MMT 패키지간의 관계(relationship)를 나타내기 위한 정보를 더 포함할 수 있다. 이러한 프리젠테이션 정보(11)는 하이퍼텍스트 마크업 언어(HTML)와 구성 정보(Composition Information) 도큐먼트들의 조합이 프리젠테이션 정보(11)의 예라 할 수 있다.
트랜스포트 특성(ADC; Asset Delivery Characteristics, 13)은 애셋(20)의 전달을 위한 QoS(Quality of Service) 요구 및 통계를 나타낸다. 복수의 애셋(20)은 하나의 트랜스포트 특성(13)에 관련될 수 있다. 이때의 트랜스포트 특성(전송 특성)(13)은 애셋(20)의 효과적인 전달을 위해 패키지를 캡슐화하는 개체에 의해 MMT 페이로드 및 MMT 프로토콜의 파라미터를 설정하는데 사용될 수 있다. 또한 트랜스포트 특성(13)은 MMT 애셋(20) 또는 MMT 패킷의 전달 조건(delivery condition)을 결정하기 위해 필요한 전달 특성 정보를 포함할 수 있으며, 예를 들어 트래픽 기술 파라미터(traffic description parameter) 및 QoS 기술자(QoS descriptor)를 포함할 수 있다. 이러한 전달 특성 정보는 통신망 환경에 무관한 파라미터 형태로 표현될 수 있다.
애셋(20)은 타임드 또는 넌 타임드 성질을 가진 오디오, 비디오 또는 웹페이지 데이터와 같은 부호화된 미디어 데이터를 캡슐화하는 패키지의 요소를 의미하는 것으로 가장 큰 논리적 데이터 단위를 의미한다. 이러한 애셋(20)은 동일한 전달 특성으로 데이터를 포함하는 데이터 개체를 의미한다. 예컨대, MMT 패키지(10)는 MMT 기능 영역에서 정의하는 데이터 모델 중 가장 큰 개체(entity)로서 영화 한편과 같은 하나의 독립적인 컨텐츠를 의미한다면, 애셋(20)은 오디오 데이터, 비디오 데이터, 스크립트 데이터와 같은 MMT 패키지(10)를 구성하는 데이터 단위를 의미한다. 이러한 애셋(20)은 동일한 애셋 ID를 공유하는 MPU들을 논리적으로 그룹화하게 된다.
아울러, 본 발명의 MMT 패킷은 실질적으로는 MMT 패킷 헤더와 MMT 페이로드를 포함하여 구성될 수 있다.
이상에서 설명한 바와 같이, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다.
또한, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 통상의 기술자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 통상의 기술자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
본 발명은 스트리밍 서비스를 위한 컨텐츠 전송 방법 및 장치에 관한 것으로서, 더욱 상세하게는 스트리밍 서비스를 제공하는 네트워크 타입(Network Type)에 따른 적응형 컨텐츠 전송 기법을 제안함으로써, NAT 기술을 활용한 홈 와이파이(Home Wi-Fi) 또는 공유기 등을 사용하는 사용자에게도 저지연 방송 서비스를 제공할 수 있는 컨텐츠 전송 방법 및 장치에 관한 것이다.
본 발명에 따르면, TCP 세션을 통해 UDP 방식으로 컨텐츠를 전송하기 위한 세션 키 및 UDP 포트 정보를 송수신하여, 단말장치와 컨텐츠 제공 장치 간의 UDP 세션을 생성하고, 상기 생성된 UDP 세션을 통해 단말장치로부터 요청된 스트리밍 컨텐츠를 제공함으로써, NAT 기술을 활용한 이종 모바일 네트워크 환경에서도 지연 없이 스트리밍 컨텐츠를 제공할 수 있다.
따라서, 상기의 컨텐츠 전송 방법을 통해 스트리밍 서비스 산업 발전에 이바지 할 수 있고, 더불어, 본 발명은 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.
100: 통신망
200: 단말장치
300: 컨텐츠 제공 장치
400: NAT 라우터

Claims (11)

  1. 이종 네트워크 상에서 단말장치에게 스트리밍 서비스를 제공하는 컨텐츠 제공 장치에서의 컨텐츠 전송 방법에 있어서,
    컨텐츠 전송에 필요한 제어 정보를 전송하기 위한 제1 세션을 상기 단말 장치와 형성하는 단계;
    컨텐츠 전송을 위한 제2 세션의 등록에 필요한 컨텐츠 제공 장치 측 세션 정보를 상기 제1 세션을 통해 상기 단말장치로 전송하는 단계;
    상기 단말장치로부터 상기 제2 세션의 등록에 필요한 단말 장치 측 세션 정보를 수신하는 단계;
    상기 단말 장치 측 세션 정보 및 상기 컨텐츠 제공 장치 측 세션 정보를 기반으로 상기 제2 세션을 등록하는 단계; 및
    상기 단말장치로부터 상기 제1 세션을 통해 컨텐츠 전송 요청을 수신하면, 상기 제2 세션을 통해 상기 단말장치로 요청된 컨텐츠를 제공하는 단계;
    를 포함하는 이종 네트워크 상에서의 컨텐츠 제공 방법.
  2. 제1항에 있어서, 상기 세션 정보는
    포트 넘버, IP 주소 정보, 상기 단말장치와 상기 컨텐츠 제공 장치 간의 세션을 인증하기 위한 세션 키(Session Key), 컨텐츠 식별 정보, 패킷 그룹 시퀀스 넘버, 패킷 ID 정보, 패킷 시퀀스 넘버, 프로토콜 정보 및 재시도 표시 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 이종 네트워크 상에서의 컨텐츠 제공 방법.
  3. 제2항에 있어서, 상기 제2 세션을 등록하는 단계는
    상기 단말 장치로부터 수신한 세션 정보에 포함된 세션 키와, 상기 단말 장치로 전송한 세션 정보에 포함된 세션 키를 비교하여, 일치하면, 상기 제2 세션을 등록하는 것을 특징으로 하는 이종 네트워크 상에서의 컨텐츠 제공 방법.
  4. 제2항에 있어서, 상기 제공하는 단계는
    패킷의 페이로드에 포함되는 최소 디코딩 단위인 적어도 하나의 MFU(Media Fragment Unit) 또는 상기 적어도 하나의 MFU를 포함하여 이루어지는 적어도 하나의 MPU(Media Processing Unit)로 구성되는 MMT(MPEG Media Transport) 패킷으로 구성되는 컨텐츠를 제공하고,
    상기 컨텐츠 식별 정보는 애셋 ID 정보를 나타내고, 상기 패킷 그룹 시퀀스 넘버는 MPU 시퀀스 넘버를 나타내는 것을 특징으로 하는 이종 네트워크 상에서의 컨텐츠 제공 방법.
  5. 제1항에 있어서,
    상기 제1 세션은 TCP(Transmission Control Protocol) 세션이고, 상기 제2 세션은 UDP(User Datagram Protocol) 세션인 것을 특징으로 하는 이종 네트워크 상에서의 컨텐츠 제공 방법.
  6. 제1항에 있어서, 상기 컨텐츠를 제공하는 단계 이후에,
    상기 단말 장치로부터 상기 제2 세션의 재등록에 필요한 단말 장치 측 세션 정보를 수신하는 단계; 및
    상기 수신한 세션 정보를 기반으로 상기 제2 세션 등록을 갱신하는 단계;
    상기 갱신된 제2 세션을 기반으로 상기 단말장치에 상기 컨텐츠를 제공하는 단계;
    를 더 포함하는 이종 네트워크 상에서의 컨텐츠 제공 방법.
  7. 이종 네트워크 상에서 컨텐츠 제공 장치로부터 스트리밍 서비스를 제공 받는 단말장치에서의 컨텐츠 수신 방법에 있어서,
    컨텐츠 전송에 필요한 제어 정보를 전송하기 위한 제1 세션을 상기 컨텐츠 제공 장치와 형성하는 단계;
    컨텐츠 전송을 위한 제2 세션의 등록에 필요한 컨텐츠 제공 장치 측 세션 정보를 상기 제1 세션을 통해 상기 컨텐츠 제공 장치로부터 수신하는 단계;
    상기 제2 세션의 등록에 필요한 단말 장치 측 세션 정보를 상기 컨텐츠 제공 장치로 전송하는 단계;
    상기 단말장치 측 세션 정보 및 상기 컨텐츠 제공 장치 측 세션 정보를 기반으로 상기 제2 세션을 등록하는 단계;
    상기 제1 세션을 통해 상기 컨텐츠 제공 장치에 컨텐츠 전송을 요청하고, 상기 제2 세션을 통해 상기 요청한 컨텐츠를 제공 받는 단계;
    상기 컨텐츠 제공 장치로부터 일정 시간 동안 상기 요청한 컨텐츠의 전송이 중단되는 경우, 상기 제2 세션의 재등록을 위한 단말장치 측 세션 정보를 상기 컨텐츠 제공 장치로 전송하는 단계; 및
    상기 제2 세션을 갱신 하여, 상기 요청한 컨텐츠를 제공 받는 단계;
    를 포함하는 이종 네트워크 상에서의 컨텐츠 전송 방법.
  8. 제1항 내지 제7항 중 어느 하나의 항에 기재된 방법을 실행시키는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
  9. 제1항 내지 제7항 중 어느 하나의 항에 기재된 방법을 실행시키도록 구현되어 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  10. 이종 네트워크 상에서 단말장치에게 스트리밍 서비스를 제공하는 컨텐츠 제공 장치에 있어서,
    통신망과 연동하여 상기 단말장치와 데이터를 송수신하는 통신 모듈; 및
    컨텐츠 전송에 필요한 제어 정보를 전송하기 위한 제1 세션을 형성하고, 상기 컨텐츠 전송을 위한 제2 세션의 등록에 필요한 컨텐츠 제공 장치 측 세션 정보를 상기 제1 세션을 통해 상기 단말장치로 전송하고, 상기 단말장치로부터 상기 제2세션 등록에 필요한 단말 장치 측 세션 정보를 수신하면, 상기 단말 장치 측 세션 정보 및 상기 컨텐츠 제공 장치 측 세션 정보를 기반으로 상기 제2 세션을 등록하여, 상기 제2 세션을 통해 상기 컨텐츠를 제공하는 제어모듈;
    을 포함하는 컨텐츠 제공 장치.
  11. 제10항에 있어서,
    상기 제1 세션은 TCP(Transmission Control Protocol) 세션이고, 상기 제2 세션은 UDP(User Datagram Protocol) 세션인 것을 특징으로 하는 이종 네트워크 상에서의 컨텐츠 제공 장치.
KR1020170002257A 2016-02-18 2017-01-06 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치 KR20170097546A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/KR2017/005317 WO2018128226A1 (ko) 2016-02-18 2017-05-23 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치
CN201780082469.6A CN110169030B (zh) 2016-02-18 2017-05-23 用于在异构网络上发送内容的方法及其设备
US16/503,880 US11095692B2 (en) 2016-02-18 2019-07-05 Method for transmitting content on heterogeneous network and apparatus therefor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160019289 2016-02-18
KR20160019289 2016-02-18

Publications (1)

Publication Number Publication Date
KR20170097546A true KR20170097546A (ko) 2017-08-28

Family

ID=59759649

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020170002257A KR20170097546A (ko) 2016-02-18 2017-01-06 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치
KR1020170003835A KR101991388B1 (ko) 2016-02-18 2017-01-10 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020170003835A KR101991388B1 (ko) 2016-02-18 2017-01-10 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치

Country Status (4)

Country Link
US (1) US11095692B2 (ko)
KR (2) KR20170097546A (ko)
CN (1) CN110169030B (ko)
WO (1) WO2018128226A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210114141A (ko) * 2020-03-10 2021-09-23 한화테크윈 주식회사 미디어 데이터를 전송하는 방법 및 장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170097546A (ko) 2016-02-18 2017-08-28 에스케이텔레콤 주식회사 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치
US10897489B2 (en) * 2017-12-07 2021-01-19 Mcom Media Comunications Dmcc Managing content casting
KR20200114707A (ko) * 2019-03-29 2020-10-07 삼성전자주식회사 전자 장치 및 전자 장치에서의 스트리밍 어플리케이션 처리 방법
US20210119802A1 (en) * 2019-10-21 2021-04-22 Vmware, Inc. Two-way authentication for voice-activated devices
CN111885602B (zh) * 2020-07-27 2021-04-27 西南交通大学 一种面向异构网络的批量切换认证及密钥协商方法
CN114531473A (zh) * 2022-02-17 2022-05-24 辽宁向日葵教育科技有限公司 一种基于虚拟仿真引擎的图像实时渲染方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8255989B2 (en) * 2001-09-26 2012-08-28 General Instrument Corporation Access control and key management system for streaming media
AU2004317110A1 (en) * 2004-02-12 2005-09-22 Nokia Corporation Transmission of asset information in streaming services
JP4649162B2 (ja) * 2004-10-05 2011-03-09 株式会社エヌ・ティ・ティ・ドコモ 移動通信方法、移動通信システム及びセッション制御装置
JP4858774B2 (ja) * 2006-12-20 2012-01-18 シャープ株式会社 コンテンツ配信システム、コンテンツ配信方法、端末装置、対象装置、および参照装置
KR100815562B1 (ko) * 2007-04-11 2008-03-20 주식회사 케이티프리텔 Sip 기반의 세션 처리를 수행하는 단말장치 및 이를이용한 세션 협상 요청 송/수신 방법
US8032589B2 (en) * 2008-10-27 2011-10-04 Telefonaktiebolaget L M Ericsson (Publ) Methods and systems for resuming, transferring or copying a multimedia session
WO2010056490A2 (en) * 2008-11-12 2010-05-20 Level 3 Communications, Llc Dynamic processing of streamed content
US8381301B1 (en) * 2009-02-11 2013-02-19 Sprint Communications Company L.P. Split-flow attack detection
US10264029B2 (en) * 2009-10-30 2019-04-16 Time Warner Cable Enterprises Llc Methods and apparatus for packetized content delivery over a content delivery network
WO2011053040A2 (en) 2009-11-02 2011-05-05 Lg Electronics Inc. Nat traversal for local ip access
KR101130892B1 (ko) * 2010-04-21 2012-03-28 주식회사 엘지유플러스 동영상 제공 서버와 통신하여 동영상을 처리하는 이동통신 단말기 및 그 제어방법
KR101089562B1 (ko) * 2010-04-27 2011-12-05 주식회사 나우콤 고화질 미디어 방송을 위한 피투피 라이브 스트리밍 시스템 및 방법
KR20130085987A (ko) * 2012-01-20 2013-07-30 한국전자통신연구원 이종망 네트워크에서 미디어 프래그먼트 유닛으로 나누어진 액세스 유닛을 가지는 미디어 데이터를 전송하는 방법
KR101945813B1 (ko) * 2012-06-08 2019-02-08 엘지전자 주식회사 영상표시장치, 이동 단말기, 및 그 동작방법
KR20140008237A (ko) * 2012-07-10 2014-01-21 한국전자통신연구원 엠엠티의 하이브리드 전송 서비스에서 패킷 전송 및 수신 장치 및 방법
KR20140099976A (ko) * 2013-02-04 2014-08-14 삼성전자주식회사 휴대 단말기의 무선 영상 전송 방법 및 시스템
KR101734739B1 (ko) * 2013-02-07 2017-05-11 엘지전자 주식회사 복수개의 디바이스를 포함하는 네트워크 상에서 디바이스 간 세션을 제어하는 방법 및 장치
US9467425B2 (en) * 2013-03-18 2016-10-11 Intel Corporation Key refresh between trusted units
KR20150005478A (ko) * 2013-07-05 2015-01-14 삼성전자주식회사 이동 통신 네트워크에서 스트리밍 서비스 데이터 송/수신 장치 및 방법
US9648073B2 (en) * 2014-04-10 2017-05-09 Qualcomm Incorporated Streaming control for real-time transport protocol
US10142233B2 (en) * 2015-01-21 2018-11-27 Lg Electronics Inc. Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal
KR101743441B1 (ko) * 2015-02-13 2017-06-05 에스케이텔레콤 주식회사 기지국 연동 노드를 통한 스트리밍 데이터 제공 방법, 이를 위한 기지국 연동 노드
KR20170097546A (ko) 2016-02-18 2017-08-28 에스케이텔레콤 주식회사 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210114141A (ko) * 2020-03-10 2021-09-23 한화테크윈 주식회사 미디어 데이터를 전송하는 방법 및 장치

Also Published As

Publication number Publication date
CN110169030A (zh) 2019-08-23
KR101991388B1 (ko) 2019-06-21
KR20170097548A (ko) 2017-08-28
US20190334955A1 (en) 2019-10-31
US11095692B2 (en) 2021-08-17
WO2018128226A1 (ko) 2018-07-12
CN110169030B (zh) 2022-10-25

Similar Documents

Publication Publication Date Title
KR101991388B1 (ko) 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치
US11637887B2 (en) Packet transmission protocol supporting downloading and streaming
JP6393837B2 (ja) Http上の動的適応ストリーミング(dash)における一般化されたhttpヘッダのためのシステムおよび方法
EP2897340B1 (en) Routing proxy for adaptive streaming
US10462529B2 (en) Multicast transmission method, apparatus and system for OTT media
US20190075149A1 (en) Mechanisms to support adaptive constrained application protocol (coap) streaming for internet of things (iot) systems
US9712592B2 (en) Classification of HTTP multimedia traffic per session
KR20160132081A (ko) 메시지들을 대쉬 클라이언트로 송신하는 방법 및 장치
US20100322420A1 (en) Duplicate Address Detection Proxy in Edge Devices
KR20230129247A (ko) 멀티캐스트 신호 처리 방법 및 장치
RU2621961C2 (ru) Шлюз и соответствующие ему способ, компьютерная программа и носитель информации
US10165311B2 (en) Non-transitory computer-readable recording medium having program recorded therein for providing network-adaptive content and apparatus for providing network-adaptive content
WO2016003244A1 (ko) 멀티미디어 시스템에서 미디어 패킷을 수신하는 방법 및 장치
WO2014100973A1 (zh) 视频处理方法、设备及系统
CN108141457B (zh) 用于在多媒体系统中发送/接收分组的方法和装置
US9596210B2 (en) Subscriber-aware duplicate address detection proxy in edge devices
JP6970124B2 (ja) Mmtpパケットを送受信する方法及びその装置
KR20160149811A (ko) 미디어 콘텐츠 전송 제어를 위한 방법 및 장치
KR20160000722A (ko) 통신 시스템에서 이종 네트워크를 통하여 멀티미디어 콘텐츠를 송수신하는 방법 및 장치
CN118101782A (zh) 一种数据传输的方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X601 Decision of rejection after re-examination