US11095692B2 - Method for transmitting content on heterogeneous network and apparatus therefor - Google Patents

Method for transmitting content on heterogeneous network and apparatus therefor Download PDF

Info

Publication number
US11095692B2
US11095692B2 US16/503,880 US201916503880A US11095692B2 US 11095692 B2 US11095692 B2 US 11095692B2 US 201916503880 A US201916503880 A US 201916503880A US 11095692 B2 US11095692 B2 US 11095692B2
Authority
US
United States
Prior art keywords
session
information
content
terminal device
protocol
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
US16/503,880
Other versions
US20190334955A1 (en
Inventor
Jongmin Lee
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Telecom Co Ltd
Original Assignee
SK Telecom Co Ltd
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 SK Telecom Co Ltd filed Critical SK Telecom Co Ltd
Assigned to SK TELECOM CO., LTD. reassignment SK TELECOM CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LEE, JONGMIN
Publication of US20190334955A1 publication Critical patent/US20190334955A1/en
Application granted granted Critical
Publication of US11095692B2 publication Critical patent/US11095692B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • H04L65/1003
    • 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/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/1101Session protocols
    • H04L65/4076
    • 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
    • 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

Definitions

  • the present disclosure relates to a content transmission method and apparatus for a streaming service.
  • the present disclosure relates to a content transmission method and apparatus capable of providing a low-delay broadcast service even to a user using a home Wi-Fi or router based on NAT technology through an adaptive content transmission scheme according to a network type of provides a streaming service.
  • a mobile live streaming service has a problem of causing a considerable delay (e.g., 30 seconds) as compared with an original video of a streaming service provider.
  • the main reasons for this delay are that a typical adaptive streaming scheme needs a manifest file provided in response to a request for a series of video chunks and also uses a TCP congestion control technique to stably receive a data stream through a retransmission of a packet.
  • a technique to transmit broadcast contents in a UDP scheme using an MPEG media transport protocol may be considered.
  • This broadcast content transmission scheme of UDP type has, however, a problem of NAT traversal in a heterogeneous mobile network. As a result, it is difficult to provide a low-delay broadcast service to a user who uses Home Wi-Fi or router.
  • the disclosure addresses a content transmission method and apparatus for a streaming service capable of providing streaming content without a delay in a mobile environment that utilizes NAT technology.
  • the present disclosure addresses a content providing device that establishes a TCP session with a terminal device to control streaming transmission, registers a UDP session for content transmission by transmitting a session key for authentication and session information for UDP transmission to the terminal device, and transmits streaming content through the registered UDP session when a request for streaming content transmission is received from the terminal device.
  • a content providing method of a content providing device may include transmitting first session information to a terminal device through a first session; receiving second session information from the terminal device through a second session; registering the second session information, based on the first session information; and providing requested content to the terminal device through the second session, based on the registered second session information, when receiving a content transmission request from the terminal device through the first session.
  • the first session may be a transmission control protocol (TCP) session for transmission of control information required for content transmission
  • the second session may be a user datagram protocol (UDP) session for the content transmission.
  • TCP transmission control protocol
  • UDP user datagram protocol
  • the session information may contain at least one of a port number, IP address information, session identification information for authentication of a session between the terminal device and the content providing device, content identification information, a packet group sequence number, packet ID information, a packet sequence number, protocol information, and retry indication information, and the session identification information may be a session key or identification information of the terminal device.
  • the registering the second session information may include comparing the session identification information contained in the second session information received from the terminal device through the second session with the session identification information contained in the first session information transmitted through the first session, and registering the second session information when the session identification information contained in the second session information is identical with the session identification information contained in the first session information.
  • the providing requested content may include providing the content composed of an MPEG media transport (MMT) packet including at least one media fragment unit (MFU), which is a minimum decoding unit contained in a payload of the packet, or at least one media processing unit (MPU) which includes the at least one MFU.
  • MMT MPEG media transport
  • MFU media fragment unit
  • MPU media processing unit
  • the content identification information may indicate asset ID information or package ID information
  • the packet group sequence number may indicate an MPU sequence number.
  • the method may further include, when transmission of the requested content is stopped at the content providing device for a predetermined time after the providing requested content, receiving again the second session information from the terminal device; updating the registered second session information, based on the received second session information; and providing content to the terminal device through the second session, based on the updated second session information.
  • a content receiving method of a terminal device may include establishing a first session with a content providing device to transmit control information required for content transmission; receiving first session information from the content providing device through the first session; transmitting second session information to the content providing device through a second session; registering the second session information, based on the first session information; receiving requested content from the content providing device through the second session, based on the registered second session information, by transmitting a content transmission request to the content providing device through the first session; retransmitting the second session information to the content providing device when transmission of the requested content is stopped at the content providing device for a predetermined time; and receiving the requested content through the second session, based on the second session information updated using the retransmitted second session information.
  • the present disclosure may provide a non-transitory computer-readable recording medium storing a program for executing the above-described method.
  • the present disclosure may provide a computer program stored in a non-transitory computer-readable recording medium, the computer program being implemented to execute the above-described method.
  • a content providing device of the present disclosure may include a communication module configured to transmit and receive data to and from a terminal device via a communication network; and a control module configured to transmit first session information to the terminal device through a first session, to receive second session information from the terminal device through a second session, to register the second session information, based on the first session information, and provide requested content to the terminal device through the second session, based on the registered second session information, when receiving a content transmission request from the terminal device through the first session.
  • a session key and UDP port information for content transmission in a UDP scheme are transmitted and received through a TCP session, and then a UDP session is generated between a terminal device and a content providing device.
  • streaming content requested by the terminal device is provided through the generated UDP session. Therefore, it is possible to provide streaming content without a delay even in a heterogeneous mobile network environment that utilizes NAT technology.
  • FIGS. 1 and 2 are diagrams illustrating a main configuration of a content providing system according to an embodiment of the present disclosure.
  • FIG. 3 is a block diagram illustrating a main configuration of a terminal device according to an embodiment of the present disclosure.
  • FIG. 4 is a block diagram illustrating a main configuration of a content providing device according to an embodiment of the present disclosure.
  • FIG. 5 is a data flow diagram illustrating a content providing method according to an embodiment of the present disclosure.
  • FIG. 6 is a diagram illustrating the syntax of a session notification message for UDP session registration according to one embodiment of the present disclosure.
  • FIG. 7 is a diagram illustrating the syntax of a session notification message for UDP session registration according to another embodiment of the present disclosure.
  • FIG. 8 is a diagram illustrating an MMT packet structure according to an embodiment of the present disclosure.
  • first and second may indicate various elements.
  • the above expressions do not limit the sequence or importance of the elements, and are used merely for the purpose to distinguish one element from the others.
  • a first element may be referred to as a second element, and similarly a second element may be also referred to as a first element.
  • module or “unit” used herein may refer to an element for performing at least one particular function, operation, or task and may be implemented by software and/or hardware.
  • the terms “a”, “an”, “one”, and “the” may be used as both singular and plural meanings unless the context clearly indicates otherwise.
  • embodiments within the scope of the present disclosure include computer-readable media having computer-executable instructions or data structures stored on computer-readable media.
  • Such computer-readable media can be any available media that is accessible by a general purpose or special purpose computer system.
  • Such computer-readable media may include, but not limited to, RAM, ROM, EPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other physical storage medium that can be used to store or deliver certain program codes formed of computer-executable instructions, computer-readable instructions or data structures and which can be accessed by a general purpose or special purpose computer system.
  • MMT MPEG media transport
  • FIG. 1 is a diagram illustrating the configuration of a streaming content transmission system according to an embodiment of the present disclosure.
  • the streaming content transmission system may include a content providing device 300 and a terminal device 200 , which may be connected to each other through a communication network 100 .
  • the communication network 100 performs data transmission/reception between the terminal device 200 and the content providing device 300 .
  • the communication network 100 may use wired communication schemes, such as Ethernet, xDSL (ADSL, VDSL), HFC (Hybrid Fiber Coaxial cable), FTTC (Fiber to the Curb), or FTTH (Fiber to the Home), or use wireless communication schemes, such as WLAN (Wireless LAN), Wi-Fi, Wibro, Wimax, HSDPA (High Speed Downlink Packet Access), LTE (Long Term Evolution), or LTE-A (LTE Advanced).
  • wired communication schemes such as Ethernet, xDSL (ADSL, VDSL), HFC (Hybrid Fiber Coaxial cable), FTTC (Fiber to the Curb), or FTTH (Fiber to the Home
  • wireless communication schemes such as WLAN (Wireless LAN), Wi-Fi, Wibro, Wimax, HSDPA (High Speed Downlink Packet Access), LTE (Long Term Evolution), or LTE-A (L
  • the terminal device 200 refers to a user device capable of transmitting and receiving various kinds of data to and from the content providing device 300 through the communication network 100 , based on a user's manipulation.
  • the terminal device 200 is able to perform voice or data communication through the communication network 100 , and may include a memory for storing a program and protocol for data transmission/reception and processing, a microprocessor for executing, operating and controlling various programs, and the like.
  • the terminal device 200 may be implemented in various forms.
  • the terminal device 200 may be a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA), a portable multimedia player (PMP), or an MP3 player, or be a stationary terminal such as a smart TV, a laptop computer, or a desktop computer.
  • PDA personal digital assistant
  • PMP portable multimedia player
  • MP3 player MP3 player
  • any other apparatus capable of transmitting and receiving data according to the present disclosure may be used as the terminal device 200 in embodiments.
  • the terminal device 200 may transmit a request for content transmission to the content providing device 300 in response to a user input, and may receive requested content from the content providing device 300 in a streaming manner.
  • the content may be received in packet units, and the packet may be an MMT packet.
  • the content providing device 300 is a device for transmitting content, such as video stored therein or received from an external apparatus (not shown), to the terminal device 200 through the communication network 100
  • the content providing device 300 may transmit streaming content divided into packet units to the terminal device 200 .
  • streaming content transmitted by the content providing device 300 may be delivered to the terminal device 200 via an NAT router.
  • One example is a case where the terminal device 200 is connected to the communication network 100 by using a home Wi-Fi or router.
  • the content providing device 300 transmits the streaming content by considering only an IP address of the NAT router. Therefore, when the content transmission is performed based on a user datagram protocol (UDP) type, a problem of NAT traversal is caused.
  • UDP user datagram protocol
  • one or more terminal devices 200 are connected to the communication network 100 via an NAT router 400 .
  • the network address translation (NAT) router 400 is an address translator of the communication network 100 used to convert a private IP address into a public IP address or vice versa. Allowing a public IP address to be used together, it is possible to save a limited public IP address. In addition, making only a public IP address known outside and using only a private IP address internally, it is possible to protect the internal network from attacks by external intruders.
  • an NAT technique is applied to a home Wi-Fi AP or router to convert an IP of a terminal device used locally into a public IP assigned to the Wi-Fi AP or router, or is applied to an access point for accessing an external network (e.g., Internet) at the mobile communication network to convert a private IP address of a terminal device used in the mobile communication network into a public IP address.
  • an external network e.g., Internet
  • TCP transmission control protocol
  • content data is not provided to the terminal device 200 in real time, but delayed for a certain time (e.g., 30 seconds).
  • This problem may be solved by providing content in a UDP scheme rather than providing the content through the TCP session.
  • the use of the UDP scheme may arise the above-mentioned NAT traversal problem. That is, it is impossible to provide a low-delay content providing service to the terminal device 200 connected to the NAT router 400 .
  • the present disclosure proposes a method for providing a low-delay content providing service to the terminal device 200 without causing the NAT traversal problem by registering a UDP session between the content-requesting terminal device 200 and the content providing device 300 and providing content through the UDP session.
  • a first session connected between the terminal device 200 and the content providing device 300 may be a TCP session, and a second session may be a UDP session.
  • a first communication scheme may be a TCP scheme
  • a second communication scheme may be a UDP scheme
  • FIG. 3 is a block diagram illustrating the configuration of a terminal device 200 according to the present disclosure
  • FIG. 4 is a block diagram illustrating the configuration of a content providing device 300 according to the present disclosure.
  • the terminal device 200 may include a communication module 210 , a storage module 230 , and a control module 250 .
  • the communication module 210 is configured to transmit and receive data to and from the content providing device 300 through the communication network 100 .
  • the communication module 210 may transmit a request for content through the first session or the second session, based on a user input, and receive the requested content.
  • the communication module 210 may transmit and receive session information for the registration of the second session.
  • the storage module 230 is configured to store content or session information received through the communication module 210 .
  • the control module 250 is configured to control the overall operation of the terminal device 200 according to the present disclosure.
  • the operating process of the terminal device 200 controlled by the control module 250 will be described in detail with reference to FIG. 5 together with the operating process of the content providing device 300 .
  • the terminal device 200 may further include an input module (not shown) for receiving a user input, an output module (not shown) for reproducing content received from the content providing device 300 , and the like.
  • the content providing device 300 may include a communication module 310 , a storage module 330 , and a control module 350 .
  • the communication module 310 is configured to transmit and receive data to and from the terminal device 200 through the communication network 100 .
  • the communication module 310 may receive a request for content from the terminal device 200 through the first session or the second session, and transmit the requested content.
  • the communication module 310 may transmit and receive session information for the registration of the second session.
  • the storage module 330 is configured to store data of various contents to be transmitted to the terminal device 200 through the communication module 310 , and store session information for transmission of data through the second session with the terminal device 200 .
  • the control module 350 is configured to control the overall operation of the content providing device 300 according to the present disclosure.
  • the operating process of the content providing device 300 controlled by the control module 350 will be described hereinafter in detail with reference to FIG. 5 together with the operating process of the terminal device 200 .
  • FIG. 5 there are a solid line and a dotted line that indicate data transmission between the terminal device 200 and the content providing device 300 .
  • the solid line indicates data transmission through the first session
  • the dotted line indicates data transmission through the second session.
  • steps shown by solid lines may be implemented using the TCP session, and steps shown by dotted lines may be implemented using the UDP session.
  • the first communication scheme may indicate the TCP scheme
  • the second communication scheme may indicate the UDP scheme
  • the terminal device 200 and the content providing device 300 establish the first session therebetween to transmit control information necessary for content transmission (S 101 ).
  • control information may be a streaming content request message, a streaming content transmission stop message, a lost packet retransmission request message, or the like of the terminal device 200 .
  • the content providing device 300 transmits session information thereof (i.e., first session information) required for content transmission to the terminal device 200 through the established first session (S 103 ).
  • the first session information transmitted from the content providing device 300 to the terminal device 200 may include information, such as a session notification (SN) message, for providing content through the second session.
  • FIG. 6 shows one embodiment of the syntax of the session notification message.
  • the session notification message (SN) may contain at least one of a port number (port number), IP address information (IP_address), a session key (session_Key) for authentication of a session between the terminal device and the content providing device, content identification information, a packet group sequence number, packet ID information (Packet_id), a packet sequence number (Packet_sequence_number), protocol information (protocol), and retry indication information (retry_flag).
  • the content identification information may be asset ID information (asset_id)
  • the packet group sequence number may be an MPU sequence number (MPU_seq).
  • the port number may include a UDP port number transmission of a packet (or streaming content).
  • the length of the port number field may be set to 32 bits.
  • IP_address may include an IPv4 address of a transmitter transmitting a packet (or streaming content).
  • the length of the IP address information field may be set to 32 bits.
  • the session key information may include a randomly generated key value to identify a session created or registered between the terminal device 200 and the content providing device 300 .
  • the length of the session key information field may be set to 32 bits.
  • the asset ID information which is the content identification information, may include an identifier of an asset defined in the MMT.
  • the MPU sequence number (MPU_seq) which is the packet group sequence number, may refer to a sequence number of an MPU provided at the next MPU presentation time (mpu_presentation_time).
  • the packet ID information (Packet id) is an integer value assigned to each packet to distinguish packets included in each asset.
  • the integer value is allocated based on a signaling message and an FEC parity flow.
  • the packet sequence number (Packet_sequence_number) is identification information for detecting a packet lost during transmission and requesting a packet retransmission, and may correspond to a packet sequence number of the first packet indicated by mask_byte.
  • the protocol information may include information about a protocol used for streaming data transmission, and the length of the protocol information field may be set to 16 bits.
  • the retry indication information may include information about session continuity in a streaming session. That is, if the value of the retry indication information is set, it means that handover occurs in the terminal device 200 during streaming or the network connection is interrupted.
  • the length of the retry indication information field may be set to 1 bit.
  • the terminal device 200 that receives the session information containing the above information transmits session information thereof (i.e., second session information) to the content providing device 300 by using the second communication scheme, based on an IP address or port number included in the first session information (S 105 ).
  • the second session information may have the same syntax as the first session information of the content providing device 300 .
  • the second session information and the first session information may contain the same kind information.
  • the session information of the terminal device 200 may contain at least one of a port number (port_number), IP address information (IP_address), a session key (session_Key) for authentication of a session between the terminal device and the content providing device, content identification information, a packet group sequence number, packet ID information (Packet id), a packet sequence number (Packet_sequence_number), protocol information (protocol), and retry indication information (retry_flag).
  • port_number port number
  • IP_address IP address information
  • session_Key session key for authentication of a session between the terminal device and the content providing device
  • content identification information a packet group sequence number
  • Packet id packet ID information
  • Packet_sequence_number a packet sequence number
  • protocol information protocol
  • retry_flag retry indication information
  • the value of each information may be different from that of the session information of the content providing device 300 .
  • the port number and the IP address information contained in the first session information are those of the content providing device 300
  • the IP address information contained in the second session information may be that of the terminal device 200 .
  • the content providing device 300 that receives the second session information registers the received second session information, based on the second session information and the first session information (S 107 ).
  • the content providing device 300 may compare a session key contained in the second session information with a session key contained in the first session information. Then, if two session keys are identical with each other, the content providing device 300 may register the second session information necessary for data transmission with the terminal device 200 in the second communication scheme.
  • the terminal device 200 transmits a request for streaming content to the content providing device 300 through the established first session (S 109 ). Then, the content providing device 300 transmits the requested content to the terminal device 200 through the second session by using the registered second session information (S 111 ).
  • the content providing device 300 transmits content to the terminal device 200
  • the content transmission may be stopped because of a handover caused by the movement of the terminal device 200 or because of the deterioration of a network environment (S 113 ).
  • the terminal device 200 transmits the second session information to the content providing device 300 through the second session by using the session key, the IP address information, and the port number, which are contained in the first session information received at step S 103 , in order to continuously receive the requested content (S 115 ). Then, using the session key, the IP address information, and the port number, which are contained in the received second session information, the content providing device 300 updates the registered second session information and transmits the stopped content to the terminal device 200 again (S 117 ).
  • the content providing device 300 may retransmit the content from the point of time when the content transmission is stopped.
  • the second session information transmitted at step S 115 may contain the same value and information as those of the second session information transmitted at step S 105 , or may contain different value and information.
  • the IP address information allocated to the terminal device 200 may be changed.
  • the terminal device 200 changes the IP address information contained in the second session information and transmits the changed IP address information to the content providing device 300 . Then, the content providing device 300 updates the second session information, based on the changed IP address information.
  • the syntax of the session notification message according to one embodiment of FIG. 6 may be insufficient for solving the NAT traversal problem on a heterogeneous mobile network. Therefore, the modified session notification message syntax according to another embodiment of FIG. 7 may be used.
  • Table 1 below describes parameters included in the modified session notification message syntax according to another embodiment of FIG. 7 .
  • message_id indicates the message ID.
  • the length of this field is 16 bits. version indicates the version of the messages. MMT receiving entity may check whether the version of the received message is new or not. The length of this field is 8 bits. length indicates the length of the messages in bytes, counting from the beginning of the next field to the last byte of the SN message. The value “0” shall not be used for this field.
  • ip_addr_version this field indicates the version of the IP address.
  • MMT_package_id this field is a unique identifier of the Package that is being served.
  • MMT_package_id_length the length in bytes of the MMT_package_id string, excluding the terminating null character.
  • MMT_package_id_byte a byte in the MMT_package_id.
  • the terminating null character is not included in the string.
  • ipv4_src_addr This field is the IPv4 address of the sender of the packet. The length of this field is 32 bits.
  • ipv6_src_addr This field is the IPv6 address of the sender of the packet. The length of this field is 128 bits.
  • the content identification information may be MMT package ID (MMT_package_id) information.
  • the value of the ip_addr_version field indicating the version of an IP address may be defined as shown in Table 2 below.
  • IP address information indicates an IPv4 address in one embodiment, it may be an IPv4 address or an IPv6 address in another embodiment.
  • modified session notification message syntax according to another embodiment of FIG. 7 further defines a mobile information descriptor (mobile_info_descriptor), which relates to information associated with the terminal device 100 and may be composed of parameters shown in Table 3 below.
  • mobile_info_descriptor relates to information associated with the terminal device 100 and may be composed of parameters shown in Table 3 below.
  • descriptor_tag a tag value indicating the type of this descriptor.
  • descriptor_length indicates the length in bytes counting from the next byte after this field to the last byte of the descriptor.
  • MSISDN_flag indicates whether MSISDN is included or not. If it is set to ‘1’, the descriptor is included.
  • IMSI_flag indicates whether IMSI is included or not. If it is set to ‘1’, the descriptor is included.
  • current_cell_id_flag indicates whether current_cell_ID is included or not. If it is set to ‘1’, the descriptor is included.
  • MSISDN indicates MSISDN (Mobile Subscriber International Subscriber Directory Number) number of MMT receiving entity.
  • the length of this field is 15 decimal digits, which is coded into 60 binary digits where each decimal digit is assigned 4 binary bits.
  • IMSI indicates IMSI (International Mobile Subscriber Identity) number of MMT receiving entity.
  • the length of this field is 15 decimal digits, which is coded into 60 binary digits where each decimal digit is assigned 4 binary bits.
  • current_cell_id indicates current cell ID (CGI for 2G/3G and eCGI for 4G). It is assigned a 15 decimal digit code which corresponds to totally 60 bits where 4 bits are assigned for each 1 decimal digit.
  • the packet group sequence number, the packet ID information, the packet sequence number, the protocol information, and the retry indication information are called together whenever the session notification message is called.
  • the port number (src_port), the IP address version information (ip_addr_version), the content identification information (MMT_package_id), and the mobile information descriptor (mobile_info_descriptor) are called.
  • the mobile information descriptor containing detailed information of the terminal device 200 such as identification information of the terminal device 200 , e.g., MSISDN or IMSI.
  • the information contained in the mobile information descriptor may be called together or not, depending on flag information.
  • MSISDN information which is identification information of the terminal device 200
  • the value of MSISDN flag is set to 1.
  • the terminal device 200 transmits the session information thereof to the content providing device 300 through the registered second session by using the identification information thereof, the IP address information according to the IP address version information, and the port number, which are contained in the session information. Then, the content providing device 300 updates the registered second session information by using the identification information, the IP address information, and the port number contained in the received session information of the terminal device 200 , and transmits the stopped content to the terminal device 200 again.
  • the second session information transmitted for update of the second session information at step S 115 may contain the same value and information as those of the second session information transmitted at step S 105 , or may contain different value and information.
  • the IP address information allocated to the terminal device 200 may be changed.
  • the terminal device 200 changes the IP address information contained in the second session information and transmits the changed IP address information to the content providing device 300 . Then, the content providing device 300 updates the second session information, based on the changed IP address information.
  • the session key is used for session authentication.
  • the identification information of the terminal device 200 such as the MSISDN information or the IMSI information contained in the mobile information descriptor, may be used.
  • the content providing device 300 transmits content data to the terminal device 200 in packet units.
  • the packet may be an MMT packet as mentioned above. This MMT packet structure will be described with reference to FIG. 8 .
  • an MMT package 10 is the largest logically structured MMT entity among data models defined in an MMT function area, and refers to one independent content such as a movie.
  • the content providing device 300 that provides streaming content such as a video is capable of generating the MMT package and providing the generated MMT package to the terminal device 200 .
  • the MMT package 10 may be a logically structured collection composed of several elements. Specifically, the MMT package 10 may include one or more assets 20 , presentation information 11 , transport characteristics 13, and descriptive information, e.g., package information.
  • the presentation information 11 includes information about a relationship, namely, a spatial and temporal relationship, between the assets 20 .
  • the presentation information 11 may further include information for indicating a relationship between the MMT packages.
  • a combination of a hypertext markup language (HTML) and a composition information document is one example of the presentation information 11 .
  • the assets 20 may be associated with one of the transport characteristics 13.
  • the transport characteristics (ADC) 13 may be used to set up parameters of MMT payload and MMT protocol by an entity that encapsulates the package for effective delivery of the assets 20 .
  • the transport characteristics 13 may include delivery characteristic information, such as a traffic description parameter and a QoS descriptor, needed to determine a delivery condition of the MMT assets 20 or MMT packets. This delivery characteristic information may be expressed in the form of parameters irrespective of a network environment.
  • the asset 20 refers to the largest logical data unit, meaning an element of the package that encapsulates encoded media data such as audio, video, or web page having a timed or non-timed attribute.
  • the asset 20 indicates a data entity that contains data with the same delivery characteristics. That is, while the MMT package 10 is the largest entity among data models defined in the MMT function area and indicates one independent content such as a movie, the asset 20 indicates a data unit, such as audio data, video data, or script data, forming the MMT package 10 .
  • the asset 20 logically groups MPUs that share the same asset ID.
  • the MMT packet of the present disclosure may be substantially composed of an MMT packet header and an MMT payload.
  • the present disclosure relates to a content transmission method and apparatus for a streaming service.
  • the present disclosure relates to a content transmission method and apparatus capable of providing a low-delay broadcast service even to a user using a home Wi-Fi or router based on NAT technology through an adaptive content transmission scheme according to a network type of provides a streaming service.
  • a session key and UDP port information for content transmission in a UDP scheme are transmitted and received through a TCP session, and then a UDP session is generated between a terminal device and a content providing device.
  • streaming content requested by the terminal device is provided through the generated UDP session. Therefore, it is possible to provide streaming content without a delay even in a heterogeneous mobile network environment that utilizes NAT technology.
  • the present disclosure can contribute to the development of the streaming service industry. Also, the present disclosure has a good possibility of sales on the market or business and therefore has industrial applicability suitable for practical and apparent implementation.

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

The present invention relates to a method and an apparatus for transmitting content for a streaming service and can provide streaming content without delay even in a heterogeneous mobile network environment utilizing NAT technology, by transmitting and receiving a session key and UDP port information for transmitting the content using a UDP method through a TCP session, generating a UDP session between a terminal device and a content providing device, and providing the streaming content requested from the terminal device through the generated UDP session.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
The present application is a continuation-in-part of International Patent Application No. PCT/KR2017/005317, filed on May 23, 2017, which is based upon and claims the benefit of priorities to Korean Patent Application No. 10-2017-0002257, filed on Jan. 6, 2017, and Korean Patent Application No. 10-2017-0003835, filed on Jan. 10, 2017. The disclosures of the above-listed applications are hereby incorporated by reference herein in their entirety.
TECHNICAL FIELD
The present disclosure relates to a content transmission method and apparatus for a streaming service. Particularly, the present disclosure relates to a content transmission method and apparatus capable of providing a low-delay broadcast service even to a user using a home Wi-Fi or router based on NAT technology through an adaptive content transmission scheme according to a network type of provides a streaming service.
BACKGROUND ART
Descriptions made in this section merely provide background information of embodiments of the present disclosure and do not constitute conventional art.
In the past, consumers consumed broadcast contents through TV. Recently, as the trend of consuming broadcast contents has moved from viewing TV to using mobile devices, mobile video streaming traffic has been increasing explosively.
However, a mobile live streaming service has a problem of causing a considerable delay (e.g., 30 seconds) as compared with an original video of a streaming service provider. The main reasons for this delay are that a typical adaptive streaming scheme needs a manifest file provided in response to a request for a series of video chunks and also uses a TCP congestion control technique to stably receive a data stream through a retransmission of a packet.
In order to solve such a problem and provide broadcast contents in substantially real time with a small overhead and a reduced delay time, a technique to transmit broadcast contents in a UDP scheme using an MPEG media transport protocol (MMTP) may be considered. This broadcast content transmission scheme of UDP type has, however, a problem of NAT traversal in a heterogeneous mobile network. As a result, it is difficult to provide a low-delay broadcast service to a user who uses Home Wi-Fi or router.
SUMMARY
In order to solve the above-discussed problems, the disclosure addresses a content transmission method and apparatus for a streaming service capable of providing streaming content without a delay in a mobile environment that utilizes NAT technology.
Specifically, in order to provide streaming content without a delay even in a mobile environment that utilizes NAT technology, the present disclosure addresses a content providing device that establishes a TCP session with a terminal device to control streaming transmission, registers a UDP session for content transmission by transmitting a session key for authentication and session information for UDP transmission to the terminal device, and transmits streaming content through the registered UDP session when a request for streaming content transmission is received from the terminal device.
However, the present disclosure is not limited to the above objects, and any other object, even though not mentioned herein, may be well understood from the following description.
In order to accomplish the above objects, a content providing method of a content providing device according to the present disclosure may include transmitting first session information to a terminal device through a first session; receiving second session information from the terminal device through a second session; registering the second session information, based on the first session information; and providing requested content to the terminal device through the second session, based on the registered second session information, when receiving a content transmission request from the terminal device through the first session.
In the method, the first session may be a transmission control protocol (TCP) session for transmission of control information required for content transmission, and the second session may be a user datagram protocol (UDP) session for the content transmission.
In the method, the session information may contain at least one of a port number, IP address information, session identification information for authentication of a session between the terminal device and the content providing device, content identification information, a packet group sequence number, packet ID information, a packet sequence number, protocol information, and retry indication information, and the session identification information may be a session key or identification information of the terminal device.
In the method, the registering the second session information may include comparing the session identification information contained in the second session information received from the terminal device through the second session with the session identification information contained in the first session information transmitted through the first session, and registering the second session information when the session identification information contained in the second session information is identical with the session identification information contained in the first session information.
In the method, the providing requested content may include providing the content composed of an MPEG media transport (MMT) packet including at least one media fragment unit (MFU), which is a minimum decoding unit contained in a payload of the packet, or at least one media processing unit (MPU) which includes the at least one MFU. The content identification information may indicate asset ID information or package ID information, and the packet group sequence number may indicate an MPU sequence number.
The method may further include, when transmission of the requested content is stopped at the content providing device for a predetermined time after the providing requested content, receiving again the second session information from the terminal device; updating the registered second session information, based on the received second session information; and providing content to the terminal device through the second session, based on the updated second session information.
In order to accomplish the above objects, a content receiving method of a terminal device according to the present disclosure may include establishing a first session with a content providing device to transmit control information required for content transmission; receiving first session information from the content providing device through the first session; transmitting second session information to the content providing device through a second session; registering the second session information, based on the first session information; receiving requested content from the content providing device through the second session, based on the registered second session information, by transmitting a content transmission request to the content providing device through the first session; retransmitting the second session information to the content providing device when transmission of the requested content is stopped at the content providing device for a predetermined time; and receiving the requested content through the second session, based on the second session information updated using the retransmitted second session information.
In addition, the present disclosure may provide a non-transitory computer-readable recording medium storing a program for executing the above-described method.
Also, the present disclosure may provide a computer program stored in a non-transitory computer-readable recording medium, the computer program being implemented to execute the above-described method.
In order to accomplish the above objects, a content providing device of the present disclosure may include a communication module configured to transmit and receive data to and from a terminal device via a communication network; and a control module configured to transmit first session information to the terminal device through a first session, to receive second session information from the terminal device through a second session, to register the second session information, based on the first session information, and provide requested content to the terminal device through the second session, based on the registered second session information, when receiving a content transmission request from the terminal device through the first session.
According to the present disclosure, a session key and UDP port information for content transmission in a UDP scheme are transmitted and received through a TCP session, and then a UDP session is generated between a terminal device and a content providing device. In addition, streaming content requested by the terminal device is provided through the generated UDP session. Therefore, it is possible to provide streaming content without a delay even in a heterogeneous mobile network environment that utilizes NAT technology.
Particularly, even in a situation where a transmission environment is changed, such as a handover, it is possible to transmit streaming content seamlessly in the UDP scheme.
Other various advantages and effects will be disclosed explicitly or implicitly in embodiments of this disclosure to be described below in detail.
BRIEF DESCRIPTION OF DRAWINGS
FIGS. 1 and 2 are diagrams illustrating a main configuration of a content providing system according to an embodiment of the present disclosure.
FIG. 3 is a block diagram illustrating a main configuration of a terminal device according to an embodiment of the present disclosure.
FIG. 4 is a block diagram illustrating a main configuration of a content providing device according to an embodiment of the present disclosure.
FIG. 5 is a data flow diagram illustrating a content providing method according to an embodiment of the present disclosure.
FIG. 6 is a diagram illustrating the syntax of a session notification message for UDP session registration according to one embodiment of the present disclosure.
FIG. 7 is a diagram illustrating the syntax of a session notification message for UDP session registration according to another embodiment of the present disclosure.
FIG. 8 is a diagram illustrating an MMT packet structure according to an embodiment of the present disclosure.
DETAILED DESCRIPTION
Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
In the following description and the accompanying drawings, well-known functions or elements may not be described or illustrated in detail to avoid obscuring the subject matter of the present disclosure. The same elements may be denoted by the same reference numerals throughout the drawings.
The terms and words used herein should not be construed as limited to ordinary or dictionary definition terms, but should be construed in light of the meanings and concepts consistent with the subject matter of the present disclosure on the basis of the principle that the inventor can properly define his own disclosure as the concept of the term to describe it in the best way. It is therefore to be understood that embodiments disclosed herein are merely exemplary and various equivalents or modifications thereof are possible.
In addition, expressions including ordinal numbers such as “first” and “second” may indicate various elements. The above expressions do not limit the sequence or importance of the elements, and are used merely for the purpose to distinguish one element from the others. For example, without departing from the scope of the present disclosure, a first element may be referred to as a second element, and similarly a second element may be also referred to as a first element.
Terms used herein may be merely to describe a certain embodiment, and may not be intended to limit the disclosure. The singular expressions may include plural expressions unless the context clearly dictates otherwise. In this disclosure, the terms such as “comprise”, “include”, and “have” denote the presence of stated elements, components, operations, functions, features, and the like, but do not exclude the presence of or a possibility of addition of one or more other elements, components, operations, functions, features, and the like.
In addition, the term “module” or “unit” used herein may refer to an element for performing at least one particular function, operation, or task and may be implemented by software and/or hardware. Also, in the following description, especially in claims, the terms “a”, “an”, “one”, and “the” may be used as both singular and plural meanings unless the context clearly indicates otherwise.
In addition, the terms used herein are only examples for describing a specific embodiment and do not limit various embodiments of the present disclosure.
In addition, embodiments within the scope of the present disclosure include computer-readable media having computer-executable instructions or data structures stored on computer-readable media. Such computer-readable media can be any available media that is accessible by a general purpose or special purpose computer system. By way of example, such computer-readable media may include, but not limited to, RAM, ROM, EPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other physical storage medium that can be used to store or deliver certain program codes formed of computer-executable instructions, computer-readable instructions or data structures and which can be accessed by a general purpose or special purpose computer system.
In the following description and claims, it is assumed that the technical background for implementing a method and apparatus for streaming content transmission in a heterogeneous network is an MPEG media transport (MMT).
However, this is only an example for convenience of understanding the present disclosure, and the present disclosure is not necessarily limited to the MMT technology.
Now, a method for transmitting streaming content over a heterogeneous network in a system according to an embodiment of the present disclosure will be described in detail with reference to the drawings.
FIG. 1 is a diagram illustrating the configuration of a streaming content transmission system according to an embodiment of the present disclosure.
Referring to FIG. 1, the streaming content transmission system according to an embodiment of the present disclosure may include a content providing device 300 and a terminal device 200, which may be connected to each other through a communication network 100.
Hereinafter, the above elements will be described with reference to FIG. 1.
The communication network 100 performs data transmission/reception between the terminal device 200 and the content providing device 300. Based on a system implementation type, the communication network 100 may use wired communication schemes, such as Ethernet, xDSL (ADSL, VDSL), HFC (Hybrid Fiber Coaxial cable), FTTC (Fiber to the Curb), or FTTH (Fiber to the Home), or use wireless communication schemes, such as WLAN (Wireless LAN), Wi-Fi, Wibro, Wimax, HSDPA (High Speed Downlink Packet Access), LTE (Long Term Evolution), or LTE-A (LTE Advanced). In addition to the above communication schemes, any other communication scheme which is well known or to be developed may be used.
The terminal device 200 refers to a user device capable of transmitting and receiving various kinds of data to and from the content providing device 300 through the communication network 100, based on a user's manipulation.
The terminal device 200 is able to perform voice or data communication through the communication network 100, and may include a memory for storing a program and protocol for data transmission/reception and processing, a microprocessor for executing, operating and controlling various programs, and the like. In addition, the terminal device 200 may be implemented in various forms. For example, the terminal device 200 may be a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA), a portable multimedia player (PMP), or an MP3 player, or be a stationary terminal such as a smart TV, a laptop computer, or a desktop computer. Besides, any other apparatus capable of transmitting and receiving data according to the present disclosure may be used as the terminal device 200 in embodiments.
Meanwhile, the terminal device 200 may transmit a request for content transmission to the content providing device 300 in response to a user input, and may receive requested content from the content providing device 300 in a streaming manner.
At this time, the content may be received in packet units, and the packet may be an MMT packet.
The content providing device 300 is a device for transmitting content, such as video stored therein or received from an external apparatus (not shown), to the terminal device 200 through the communication network 100
In order to stream such content to the terminal device 200, the content providing device 300 may transmit streaming content divided into packet units to the terminal device 200.
Meanwhile, such streaming content transmitted by the content providing device 300 may be delivered to the terminal device 200 via an NAT router.
One example is a case where the terminal device 200 is connected to the communication network 100 by using a home Wi-Fi or router.
In this case, the content providing device 300 transmits the streaming content by considering only an IP address of the NAT router. Therefore, when the content transmission is performed based on a user datagram protocol (UDP) type, a problem of NAT traversal is caused.
This will be described in detail with reference to FIG. 2.
In FIG. 2, one or more terminal devices 200 are connected to the communication network 100 via an NAT router 400.
The network address translation (NAT) router 400 is an address translator of the communication network 100 used to convert a private IP address into a public IP address or vice versa. Allowing a public IP address to be used together, it is possible to save a limited public IP address. In addition, making only a public IP address known outside and using only a private IP address internally, it is possible to protect the internal network from attacks by external intruders.
For example, an NAT technique is applied to a home Wi-Fi AP or router to convert an IP of a terminal device used locally into a public IP assigned to the Wi-Fi AP or router, or is applied to an access point for accessing an external network (e.g., Internet) at the mobile communication network to convert a private IP address of a terminal device used in the mobile communication network into a public IP address.
In case of applying the NAT technique, typically a transmission control protocol (TCP) session has been used to provide streaming content to the terminal device 200. However, when content is provided through the TCP session, a considerable delay occurs in comparison with original content of the streaming service provider.
That is, in case of content such as sports broadcast that requires real-time provision, content data is not provided to the terminal device 200 in real time, but delayed for a certain time (e.g., 30 seconds).
This problem may be solved by providing content in a UDP scheme rather than providing the content through the TCP session. However, the use of the UDP scheme may arise the above-mentioned NAT traversal problem. That is, it is impossible to provide a low-delay content providing service to the terminal device 200 connected to the NAT router 400.
Therefore, in order to solve the above-described problems, the present disclosure proposes a method for providing a low-delay content providing service to the terminal device 200 without causing the NAT traversal problem by registering a UDP session between the content-requesting terminal device 200 and the content providing device 300 and providing content through the UDP session.
Now, the configurations and operating processes of the terminal device 200 and the content providing device 300 according to the present disclosure will be described.
In the following description, a first session connected between the terminal device 200 and the content providing device 300 may be a TCP session, and a second session may be a UDP session.
Similarly, a first communication scheme may be a TCP scheme, and a second communication scheme may be a UDP scheme.
FIG. 3 is a block diagram illustrating the configuration of a terminal device 200 according to the present disclosure, and FIG. 4 is a block diagram illustrating the configuration of a content providing device 300 according to the present disclosure.
Referring to FIG. 3, the terminal device 200 may include a communication module 210, a storage module 230, and a control module 250.
The communication module 210 is configured to transmit and receive data to and from the content providing device 300 through the communication network 100. In addition, the communication module 210 may transmit a request for content through the first session or the second session, based on a user input, and receive the requested content. Also, the communication module 210 may transmit and receive session information for the registration of the second session.
The storage module 230 is configured to store content or session information received through the communication module 210.
The control module 250 is configured to control the overall operation of the terminal device 200 according to the present disclosure.
The operating process of the terminal device 200 controlled by the control module 250 will be described in detail with reference to FIG. 5 together with the operating process of the content providing device 300.
Although not shown in FIG. 3, the terminal device 200 according to the present disclosure may further include an input module (not shown) for receiving a user input, an output module (not shown) for reproducing content received from the content providing device 300, and the like.
Referring to FIG. 4, the content providing device 300 may include a communication module 310, a storage module 330, and a control module 350.
The communication module 310 is configured to transmit and receive data to and from the terminal device 200 through the communication network 100. In addition, the communication module 310 may receive a request for content from the terminal device 200 through the first session or the second session, and transmit the requested content. Also, the communication module 310 may transmit and receive session information for the registration of the second session.
The storage module 330 is configured to store data of various contents to be transmitted to the terminal device 200 through the communication module 310, and store session information for transmission of data through the second session with the terminal device 200.
The control module 350 is configured to control the overall operation of the content providing device 300 according to the present disclosure.
The operating process of the content providing device 300 controlled by the control module 350 will be described hereinafter in detail with reference to FIG. 5 together with the operating process of the terminal device 200.
In FIG. 5, there are a solid line and a dotted line that indicate data transmission between the terminal device 200 and the content providing device 300. The solid line indicates data transmission through the first session, and the dotted line indicates data transmission through the second session.
For example, steps shown by solid lines may be implemented using the TCP session, and steps shown by dotted lines may be implemented using the UDP session.
In addition, in the description about FIG. 5, the first communication scheme may indicate the TCP scheme, and the second communication scheme may indicate the UDP scheme.
Referring to FIG. 5, at the outset, the terminal device 200 and the content providing device 300 establish the first session therebetween to transmit control information necessary for content transmission (S101).
For example, the control information may be a streaming content request message, a streaming content transmission stop message, a lost packet retransmission request message, or the like of the terminal device 200.
When the first session is established between the terminal device 200 and the content providing device 300, the content providing device 300 transmits session information thereof (i.e., first session information) required for content transmission to the terminal device 200 through the established first session (S103).
The first session information transmitted from the content providing device 300 to the terminal device 200 may include information, such as a session notification (SN) message, for providing content through the second session. FIG. 6 shows one embodiment of the syntax of the session notification message. As shown, the session notification message (SN) may contain at least one of a port number (port number), IP address information (IP_address), a session key (session_Key) for authentication of a session between the terminal device and the content providing device, content identification information, a packet group sequence number, packet ID information (Packet_id), a packet sequence number (Packet_sequence_number), protocol information (protocol), and retry indication information (retry_flag).
In case where the terminal device 200 and the content providing device 300 transmit content by using an MMT protocol, the content identification information may be asset ID information (asset_id), and the packet group sequence number may be an MPU sequence number (MPU_seq).
Now, each information contained in the session notification message will be described. The port number (port_number) may include a UDP port number transmission of a packet (or streaming content). The length of the port number field may be set to 32 bits.
The IP address information (IP_address) may include an IPv4 address of a transmitter transmitting a packet (or streaming content). The length of the IP address information field may be set to 32 bits.
The session key information may include a randomly generated key value to identify a session created or registered between the terminal device 200 and the content providing device 300. The length of the session key information field may be set to 32 bits.
The asset ID information, which is the content identification information, may include an identifier of an asset defined in the MMT.
The MPU sequence number (MPU_seq), which is the packet group sequence number, may refer to a sequence number of an MPU provided at the next MPU presentation time (mpu_presentation_time).
The packet ID information (Packet id) is an integer value assigned to each packet to distinguish packets included in each asset. In this case, the integer value is allocated based on a signaling message and an FEC parity flow.
The packet sequence number (Packet_sequence_number) is identification information for detecting a packet lost during transmission and requesting a packet retransmission, and may correspond to a packet sequence number of the first packet indicated by mask_byte.
The protocol information may include information about a protocol used for streaming data transmission, and the length of the protocol information field may be set to 16 bits.
The retry indication information (retry_flag) may include information about session continuity in a streaming session. That is, if the value of the retry indication information is set, it means that handover occurs in the terminal device 200 during streaming or the network connection is interrupted.
The length of the retry indication information field may be set to 1 bit.
The terminal device 200 that receives the session information containing the above information transmits session information thereof (i.e., second session information) to the content providing device 300 by using the second communication scheme, based on an IP address or port number included in the first session information (S105).
The second session information may have the same syntax as the first session information of the content providing device 300.
That is, the second session information and the first session information may contain the same kind information.
In other words, the session information of the terminal device 200 as well may contain at least one of a port number (port_number), IP address information (IP_address), a session key (session_Key) for authentication of a session between the terminal device and the content providing device, content identification information, a packet group sequence number, packet ID information (Packet id), a packet sequence number (Packet_sequence_number), protocol information (protocol), and retry indication information (retry_flag).
However, excluding the session key, the value of each information may be different from that of the session information of the content providing device 300.
For example, the port number and the IP address information contained in the first session information are those of the content providing device 300, whereas the IP address information contained in the second session information may be that of the terminal device 200.
The content providing device 300 that receives the second session information registers the received second session information, based on the second session information and the first session information (S107).
At this time, the content providing device 300 may compare a session key contained in the second session information with a session key contained in the first session information. Then, if two session keys are identical with each other, the content providing device 300 may register the second session information necessary for data transmission with the terminal device 200 in the second communication scheme.
The terminal device 200 transmits a request for streaming content to the content providing device 300 through the established first session (S109). Then, the content providing device 300 transmits the requested content to the terminal device 200 through the second session by using the registered second session information (S111).
Meanwhile, while the content providing device 300 transmits content to the terminal device 200, the content transmission may be stopped because of a handover caused by the movement of the terminal device 200 or because of the deterioration of a network environment (S113).
When the transmission of the requested content is stopped for a predetermined time, the terminal device 200 transmits the second session information to the content providing device 300 through the second session by using the session key, the IP address information, and the port number, which are contained in the first session information received at step S103, in order to continuously receive the requested content (S115). Then, using the session key, the IP address information, and the port number, which are contained in the received second session information, the content providing device 300 updates the registered second session information and transmits the stopped content to the terminal device 200 again (S117).
In this case, the content providing device 300 may retransmit the content from the point of time when the content transmission is stopped.
Meanwhile, the second session information transmitted at step S115 may contain the same value and information as those of the second session information transmitted at step S105, or may contain different value and information.
For example, when the content transmission is stopped because of a handover caused by the movement of the terminal device 200, the IP address information allocated to the terminal device 200 may be changed.
In this case, at step S115, the terminal device 200 changes the IP address information contained in the second session information and transmits the changed IP address information to the content providing device 300. Then, the content providing device 300 updates the second session information, based on the changed IP address information.
Meanwhile, the syntax of the session notification message described with reference to FIGS. 5 and 6 may be modified as shown in FIG. 7 according to another embodiment.
The syntax of the session notification message according to one embodiment of FIG. 6 may be insufficient for solving the NAT traversal problem on a heterogeneous mobile network. Therefore, the modified session notification message syntax according to another embodiment of FIG. 7 may be used.
Table 1 below describes parameters included in the modified session notification message syntax according to another embodiment of FIG. 7.
TABLE 1
Parameter Description
message_id indicates the message ID. The length of this field is 16
bits.
version indicates the version of the messages. MMT receiving
entity may check whether the version of the received
message is new or not. The length of this field is 8 bits.
length indicates the length of the messages in bytes, counting
from the beginning of the next field to the last byte of
the SN message. The value “0” shall not be used for this
field.
ip_addr_version this field indicates the version of the IP address.
MMT_package_id this field is a unique identifier of the Package that is
being served.
MMT_package_id_length the length in bytes of the MMT_package_id string,
excluding the terminating null character.
MMT_package_id_byte a byte in the MMT_package_id. When the
MMT_package_id_byte is string, the terminating null
character is not included in the string.
ipv4_src_addr This field is the IPv4 address of the sender of the packet.
The length of this field is 32 bits.
ipv6_src_addr This field is the IPv6 address of the sender of the packet.
The length of this field is 128 bits.
src_port It indicates the sending port number. The length of this
field is 16 bits.
In the session notification message syntax according to another embodiment, the content identification information may be MMT package ID (MMT_package_id) information.
Among the above fields, the value of the ip_addr_version field indicating the version of an IP address may be defined as shown in Table 2 below.
TABLE 2
Value Description
00 MMTP packet flow over UDP/IP (version 4)
01 MMTP packet flow over UDP/IP (version 6)
10~11 reserved
That is, although the IP address information indicates an IPv4 address in one embodiment, it may be an IPv4 address or an IPv6 address in another embodiment.
In addition, the modified session notification message syntax according to another embodiment of FIG. 7 further defines a mobile information descriptor (mobile_info_descriptor), which relates to information associated with the terminal device 100 and may be composed of parameters shown in Table 3 below.
TABLE 3
Parameter Description
descriptor_tag a tag value indicating the type of this descriptor.
descriptor_length indicates the length in bytes counting from the next byte
after this field to the last byte of the descriptor.
MSISDN_flag indicates whether MSISDN is included or not. If it is set to
‘1’, the descriptor is included.
IMSI_flag indicates whether IMSI is included or not. If it is set to ‘1’,
the descriptor is included.
current_cell_id_flag indicates whether current_cell_ID is included or not. If it is
set to ‘1’, the descriptor is included.
MSISDN indicates MSISDN (Mobile Subscriber International
Subscriber Directory Number) number of MMT receiving
entity. The length of this field is 15 decimal digits, which is
coded into 60 binary digits where each decimal digit is
assigned 4 binary bits.
IMSI indicates IMSI (International Mobile Subscriber Identity)
number of MMT receiving entity. The length of this field is
15 decimal digits, which is coded into 60 binary digits where
each decimal digit is assigned 4 binary bits.
current_cell_id indicates current cell ID (CGI for 2G/3G and eCGI for 4G).
It is assigned a 15 decimal digit code which corresponds to
totally 60 bits where 4 bits are assigned for each 1 decimal
digit.
In case of the session notification message syntax according to one embodiment, the packet group sequence number, the packet ID information, the packet sequence number, the protocol information, and the retry indication information are called together whenever the session notification message is called. However, in another embodiment, the port number (src_port), the IP address version information (ip_addr_version), the content identification information (MMT_package_id), and the mobile information descriptor (mobile_info_descriptor) are called.
That is, in another embodiment, the mobile information descriptor containing detailed information of the terminal device 200 such as identification information of the terminal device 200, e.g., MSISDN or IMSI, is used. When the mobile information descriptor is called, the information contained in the mobile information descriptor may be called together or not, depending on flag information. For example, when MSISDN information, which is identification information of the terminal device 200, is required, the value of MSISDN flag is set to 1. By setting the flag value to 1 through the mobile information descriptor only when the corresponding information is required, it is possible to reduce the length of the message syntax. Therefore, the session notification message syntax according to another embodiment may have smaller transmission traffic and a more reduced delay time than the session notification message syntax according to one embodiment has.
In addition, according to another embodiment of the present disclosure, when the content transmission is stopped because of a handover caused by the movement of the terminal device 200 or because of the deterioration of a network environment, the terminal device 200 transmits the session information thereof to the content providing device 300 through the registered second session by using the identification information thereof, the IP address information according to the IP address version information, and the port number, which are contained in the session information. Then, the content providing device 300 updates the registered second session information by using the identification information, the IP address information, and the port number contained in the received session information of the terminal device 200, and transmits the stopped content to the terminal device 200 again.
Meanwhile, the second session information transmitted for update of the second session information at step S115 may contain the same value and information as those of the second session information transmitted at step S105, or may contain different value and information.
For example, when the content transmission is stopped because of a handover caused by the movement of the terminal device 200, the IP address information allocated to the terminal device 200 may be changed.
In this case, at step S115, the terminal device 200 changes the IP address information contained in the second session information and transmits the changed IP address information to the content providing device 300. Then, the content providing device 300 updates the second session information, based on the changed IP address information.
That is, in one embodiment, when registering the second session information between the terminal device 200 and the content providing device 300, and when updating the registered second session information due to a handover or the like, the session key is used for session authentication. However, in another embodiment, the identification information of the terminal device 200, such as the MSISDN information or the IMSI information contained in the mobile information descriptor, may be used.
Meanwhile, as described above, the content providing device 300 transmits content data to the terminal device 200 in packet units. In an embodiment of the present disclosure, the packet may be an MMT packet as mentioned above. This MMT packet structure will be described with reference to FIG. 8.
Referring to FIG. 8, an MMT package 10 is the largest logically structured MMT entity among data models defined in an MMT function area, and refers to one independent content such as a movie. The content providing device 300 that provides streaming content such as a video is capable of generating the MMT package and providing the generated MMT package to the terminal device 200. The MMT package 10 may be a logically structured collection composed of several elements. Specifically, the MMT package 10 may include one or more assets 20, presentation information 11, transport characteristics 13, and descriptive information, e.g., package information.
The presentation information 11 includes information about a relationship, namely, a spatial and temporal relationship, between the assets 20. When one content is composed of a plurality of MMT packages, the presentation information 11 may further include information for indicating a relationship between the MMT packages. A combination of a hypertext markup language (HTML) and a composition information document is one example of the presentation information 11.
The transport characteristics 13, also referred to as asset delivery characteristics (ADC), represent quality of service (QoS) requirements and statistics for delivery of the assets 20. The assets 20 may be associated with one of the transport characteristics 13. In this case, the transport characteristics (ADC) 13 may be used to set up parameters of MMT payload and MMT protocol by an entity that encapsulates the package for effective delivery of the assets 20. In addition, the transport characteristics 13 may include delivery characteristic information, such as a traffic description parameter and a QoS descriptor, needed to determine a delivery condition of the MMT assets 20 or MMT packets. This delivery characteristic information may be expressed in the form of parameters irrespective of a network environment.
The asset 20 refers to the largest logical data unit, meaning an element of the package that encapsulates encoded media data such as audio, video, or web page having a timed or non-timed attribute. In addition, the asset 20 indicates a data entity that contains data with the same delivery characteristics. That is, while the MMT package 10 is the largest entity among data models defined in the MMT function area and indicates one independent content such as a movie, the asset 20 indicates a data unit, such as audio data, video data, or script data, forming the MMT package 10. The asset 20 logically groups MPUs that share the same asset ID.
In addition, the MMT packet of the present disclosure may be substantially composed of an MMT packet header and an MMT payload.
While the specification contains many specific implementation details, these should not be construed as limitations on the scope of any disclosure or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of particular disclosures.
Although operations are illustrated as being performed in a predetermined order in the drawings, it should not be construed that the operations are required to be performed sequentially or in the predetermined order, which is illustrated to obtain a preferable result, or that all of the illustrated operations are required to be performed. In some cases, multi-tasking and parallel processing may be advantageous. Also, it should not be construed that the division of various system components are required in all types of implementation. It should be understood that the described program components and systems are generally integrated as a single software product or packaged into a multiple-software product.
This disclosure shows the best mode of the disclosure and provides examples to illustrate the disclosure and to enable a person skilled in the art to make and use the disclosure. The present disclosure is not limited by the specific terms used in the disclosure. Based on the present disclosure, one of ordinary skill in the art can modify, alter, or change the disclosure without departing from the scope of the disclosure.
Accordingly, the scope of the present disclosure should not be limited by embodiments described in the disclosure but should be defined by the appended claims.
The present disclosure relates to a content transmission method and apparatus for a streaming service. Particularly, the present disclosure relates to a content transmission method and apparatus capable of providing a low-delay broadcast service even to a user using a home Wi-Fi or router based on NAT technology through an adaptive content transmission scheme according to a network type of provides a streaming service.
According to the present disclosure, a session key and UDP port information for content transmission in a UDP scheme are transmitted and received through a TCP session, and then a UDP session is generated between a terminal device and a content providing device. In addition, streaming content requested by the terminal device is provided through the generated UDP session. Therefore, it is possible to provide streaming content without a delay even in a heterogeneous mobile network environment that utilizes NAT technology.
Accordingly, the present disclosure can contribute to the development of the streaming service industry. Also, the present disclosure has a good possibility of sales on the market or business and therefore has industrial applicability suitable for practical and apparent implementation.

Claims (6)

What is claimed is:
1. A content providing method of a content providing device for providing a streaming service to a terminal device, the method comprising:
establishing a first session in a first protocol between the content providing device providing the streaming service and the terminal device;
transmitting, by the content providing device, first session information to the terminal device through the first session in the first protocol, the first session information including a first session key;
receiving, by the content providing device, second session information for a second protocol from the terminal device through the second session, the second protocol different from the first protocol, the second session information including a second session key;
determining, by the content providing device, whether the first session key of the first session information matches the second session key in the second session information; and
providing, by the content providing device, requested content to the terminal device through the second session in the second protocol at a first time responsive to determining that the first session key of the first session information matches the second session key in the second session information,
wherein the first session is a transmission control protocol (TCP) session for transmission of control information required for content transmission, and the second session is a user datagram protocol (UDP) session for the content transmission.
2. The method of claim 1, wherein the session information contains at least one of a port number, IP address information, content identification information, a packet group sequence number, packet ID information, a packet sequence number, protocol information, and retry indication information.
3. The method of claim 2, wherein providing the requested content includes:
providing the content composed of an MPEG media transport (MMT) packet including at least one media fragment unit (MFU), which is a minimum decoding unit contained in a payload of the packet, or at least one media processing unit (MPU) which includes the at least one MFU, and
wherein the content identification information indicates asset ID information or package ID information, and the packet group sequence number indicates an MPU sequence number.
4. The method of claim 1, further comprising:
stopping transmission of the requested content at the content providing device responsive to elapsing of a predetermined time after providing of the requested content;
receiving the second session information from the terminal device at a second time subsequent to the first time responsive to stopping the transmission of the requested content; and
resuming providing of the requested content to the terminal device responsive to receiving the second session information at the second time.
5. A content receiving method of a terminal device for receiving a streaming service from a content providing device, the method comprising:
establishing, by the terminal device, a first session in a transmission control protocol (TCP) with the content providing device to transmit control information required for content transmission;
receiving, by the terminal device, first session information from the content providing device through the first session in the TCP protocol, the first session information including a session key;
generating, by the terminal device, second session information to include the session key;
transmitting the second session information to the content providing device through a second session in a user datagram protocol (UDP);
receiving requested content from the content providing device through the second session in the UDP responsive to transmitting the second session information.
6. A content providing device for providing a streaming service to a terminal device, the content providing device comprising:
a processor;
a communication circuit configured to transmit and receive data to and from the terminal device via a communication network; and
memory storing instructions thereon, the instructions when executed by the processor cause the processor to:
establish a first session in a transmission control protocol (TCP) with the terminal device for transmission of control information required for content transmission;
transmit first session information to the terminal device through the first session in the TCP protocol, the first session information including a first session key,
receive second session information for a user datagram protocol (UDP) from the terminal device through the second session for content transmission, the second session information including a second session key;
determining whether the first session key of the first session information matches the second session key in the second session information,
provide requested content to the terminal device through the second session in the UDP protocol responsive to determining that the first session key of the first session information matches the second session key in the second session information.
US16/503,880 2016-02-18 2019-07-05 Method for transmitting content on heterogeneous network and apparatus therefor Active US11095692B2 (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR20160019289 2016-02-18
KR1020170002257A KR20170097546A (en) 2016-02-18 2017-01-06 Contents Transmission Method in Heterogeneous Network and Apparatus therefor
KR10-2017-0002257 2017-01-06
KR10-2017-0003835 2017-01-10
KR1020170003835A KR101991388B1 (en) 2016-02-18 2017-01-10 Contents Transmission Method in Heterogeneous Network and Apparatus therefor
PCT/KR2017/005317 WO2018128226A1 (en) 2016-02-18 2017-05-23 Method for transmitting content on heterogeneous network and apparatus therefor

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
PCT/KR2017/005317 Continuation WO2018128226A1 (en) 2016-02-18 2017-05-23 Method for transmitting content on heterogeneous network and apparatus therefor
PCT/KR2017/005317 Continuation-In-Part WO2018128226A1 (en) 2016-02-18 2017-05-23 Method for transmitting content on heterogeneous network and apparatus therefor

Publications (2)

Publication Number Publication Date
US20190334955A1 US20190334955A1 (en) 2019-10-31
US11095692B2 true US11095692B2 (en) 2021-08-17

Family

ID=59759649

Family Applications (1)

Application Number Title Priority Date Filing Date
US16/503,880 Active US11095692B2 (en) 2016-02-18 2019-07-05 Method for transmitting content on heterogeneous network and apparatus therefor

Country Status (4)

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

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170097546A (en) 2016-02-18 2017-08-28 에스케이텔레콤 주식회사 Contents Transmission Method in Heterogeneous Network and Apparatus therefor
US10897489B2 (en) * 2017-12-07 2021-01-19 Mcom Media Comunications Dmcc Managing content casting
KR20200114707A (en) * 2019-03-29 2020-10-07 삼성전자주식회사 Electronic device and method for processing a streaming application in electronic device
US20210119802A1 (en) * 2019-10-21 2021-04-22 Vmware, Inc. Two-way authentication for voice-activated devices
KR102674142B1 (en) * 2020-03-10 2024-06-10 한화비전 주식회사 Method and apparatus for transmitting media data
CN111885602B (en) * 2020-07-27 2021-04-27 西南交通大学 Heterogeneous network-oriented batch switching authentication and key agreement method
CN114531473A (en) * 2022-02-17 2022-05-24 辽宁向日葵教育科技有限公司 Image real-time rendering method based on virtual simulation engine

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030063752A1 (en) * 2001-09-26 2003-04-03 General Instrument Corporation Access control and key management system for streaming media
US20070223443A1 (en) * 2004-02-12 2007-09-27 Ye-Kui Wang Transmission of Asset Information in Streaming Services
JP2008158575A (en) * 2006-12-20 2008-07-10 Sharp Corp Contents delivery system, contents delivery method, terminal device, object device and reference device
US20100023625A1 (en) * 2007-04-11 2010-01-28 Kt Corporation Terminal unit for handling session on the basis of session initiation protocol, method of transmitting and receiving thereof
US20100107205A1 (en) * 2008-10-27 2010-04-29 Telefonaktiebolaget Lm Ericsson (Publ) Methods and systems for resuming, transferring or copying a multimedia session
US20100122303A1 (en) * 2008-11-12 2010-05-13 Level 3 Communications, Llc User authentication in a content delivery network
US20110107379A1 (en) * 2009-10-30 2011-05-05 Lajoie Michael L Methods and apparatus for packetized content delivery over a content delivery network
KR20110117302A (en) 2010-04-21 2011-10-27 주식회사 엘지유플러스 Mobile communication apparatus for communicating with a video proving server and playing a video, and control method thereof
KR20110119229A (en) 2010-04-27 2011-11-02 주식회사 나우콤 P2p live streaming system for high-definition media broadcasting and the method therefor
US8381301B1 (en) * 2009-02-11 2013-02-19 Sprint Communications Company L.P. Split-flow attack detection
KR20130137923A (en) 2012-06-08 2013-12-18 엘지전자 주식회사 Image display apparatus, mobile terminal and method for operating the same
KR101395405B1 (en) 2009-11-02 2014-05-14 엘지전자 주식회사 Nat traversal for local ip access
KR20140099976A (en) 2013-02-04 2014-08-14 삼성전자주식회사 Method and system for transmitting wirelessly video in portable terminal
US20140344875A1 (en) * 2012-01-20 2014-11-20 Electronics And Telecommunications Research Institute Method for transmitting media data having access unit divided into media fragment units in heterogeneous network
US20150009956A1 (en) * 2013-07-05 2015-01-08 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving streaming service data in mobile communication network
US20150295982A1 (en) * 2014-04-10 2015-10-15 Qualcomm Incorporated Streaming control for real-time transport protocol
US20150358363A1 (en) * 2013-02-07 2015-12-10 Lg Electronics Inc. Method and apparatus for controlling session between devices on network including multiple devices
WO2016129965A1 (en) 2015-02-13 2016-08-18 에스케이텔레콤 주식회사 Method for providing streaming data through base station interworking node, and base station interworking node therefor
WO2018128226A1 (en) 2016-02-18 2018-07-12 에스케이텔레콤 주식회사 Method for transmitting content on heterogeneous network and apparatus therefor

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4649162B2 (en) * 2004-10-05 2011-03-09 株式会社エヌ・ティ・ティ・ドコモ Mobile communication method, mobile communication system, and session control apparatus
KR20140008237A (en) * 2012-07-10 2014-01-21 한국전자통신연구원 Packet transmission and reception apparatus and method in mmt hybrid transmissing service
US9467425B2 (en) * 2013-03-18 2016-10-11 Intel Corporation Key refresh between trusted units
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

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030063752A1 (en) * 2001-09-26 2003-04-03 General Instrument Corporation Access control and key management system for streaming media
US20070223443A1 (en) * 2004-02-12 2007-09-27 Ye-Kui Wang Transmission of Asset Information in Streaming Services
JP2008158575A (en) * 2006-12-20 2008-07-10 Sharp Corp Contents delivery system, contents delivery method, terminal device, object device and reference device
US20100023625A1 (en) * 2007-04-11 2010-01-28 Kt Corporation Terminal unit for handling session on the basis of session initiation protocol, method of transmitting and receiving thereof
US20100107205A1 (en) * 2008-10-27 2010-04-29 Telefonaktiebolaget Lm Ericsson (Publ) Methods and systems for resuming, transferring or copying a multimedia session
US20100122303A1 (en) * 2008-11-12 2010-05-13 Level 3 Communications, Llc User authentication in a content delivery network
US8381301B1 (en) * 2009-02-11 2013-02-19 Sprint Communications Company L.P. Split-flow attack detection
US20110107379A1 (en) * 2009-10-30 2011-05-05 Lajoie Michael L Methods and apparatus for packetized content delivery over a content delivery network
KR101395405B1 (en) 2009-11-02 2014-05-14 엘지전자 주식회사 Nat traversal for local ip access
KR20110117302A (en) 2010-04-21 2011-10-27 주식회사 엘지유플러스 Mobile communication apparatus for communicating with a video proving server and playing a video, and control method thereof
KR20110119229A (en) 2010-04-27 2011-11-02 주식회사 나우콤 P2p live streaming system for high-definition media broadcasting and the method therefor
US20140344875A1 (en) * 2012-01-20 2014-11-20 Electronics And Telecommunications Research Institute Method for transmitting media data having access unit divided into media fragment units in heterogeneous network
KR20130137923A (en) 2012-06-08 2013-12-18 엘지전자 주식회사 Image display apparatus, mobile terminal and method for operating the same
KR20140099976A (en) 2013-02-04 2014-08-14 삼성전자주식회사 Method and system for transmitting wirelessly video in portable terminal
US20150358363A1 (en) * 2013-02-07 2015-12-10 Lg Electronics Inc. Method and apparatus for controlling session between devices on network including multiple devices
US20150009956A1 (en) * 2013-07-05 2015-01-08 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving streaming service data in mobile communication network
US20150295982A1 (en) * 2014-04-10 2015-10-15 Qualcomm Incorporated Streaming control for real-time transport protocol
WO2016129965A1 (en) 2015-02-13 2016-08-18 에스케이텔레콤 주식회사 Method for providing streaming data through base station interworking node, and base station interworking node therefor
WO2018128226A1 (en) 2016-02-18 2018-07-12 에스케이텔레콤 주식회사 Method for transmitting content on heterogeneous network and apparatus therefor

Also Published As

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

Similar Documents

Publication Publication Date Title
US11095692B2 (en) Method for transmitting content on heterogeneous network and apparatus therefor
US10587544B2 (en) Message processing method, processing server, terminal, and storage medium
CN110086578B (en) Data transmission method, device and system
US11277313B2 (en) Data transmission method and corresponding device
US20210185039A1 (en) Information synchronization method, authentication method, and apparatus
US9615113B2 (en) Video content delivery over wireless access networks with quality of service (QOS) guarantees
US20180192156A1 (en) Multicast transmission method, apparatus and system for ott media
CN109196842B (en) Session keeping method, device and storage medium
CN110875799A (en) Transmission control method and device
US11432140B2 (en) Multicast service processing method and access point
US20120311121A1 (en) Classification of http multimedia traffic per session
US10136375B2 (en) Method for service data management, apparatus, and system
US20130298175A1 (en) Constructing a customized message in a video-on-demand service
US10165311B2 (en) Non-transitory computer-readable recording medium having program recorded therein for providing network-adaptive content and apparatus for providing network-adaptive content
CN110545230A (en) method and device for forwarding VXLAN message
WO2017041534A1 (en) Power line network communication method and device, and computer storage media
KR102302772B1 (en) Apparatus and method for managing buffers for rate pacing
US10587569B2 (en) Streaming service providing method and device
CN112383801B (en) Media stream distribution method, device, distribution server and storage medium
EP3910892A1 (en) Service type determining method and related device
US20140330942A1 (en) Method and apparatus for providing content according to type of communication network
KR102193480B1 (en) Method and apparatus for controlling media contents delivery
CN118413580A (en) Communication method, device and system
CN118101782A (en) Data transmission method, device, electronic equipment and storage medium

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

AS Assignment

Owner name: SK TELECOM CO., LTD., KOREA, REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LEE, JONGMIN;REEL/FRAME:050409/0741

Effective date: 20190823

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE