Patent Description:
This research is research that has been conducted with the support of the "Cross-Departmental Giga KOREA Project" funded by the Korean government (the Ministry of Science and ICT) in <NUM> (No. GK17N0100, millimeter wave <NUM> mobile communication system development).

To meet the demand for wireless data traffic having increased since deployment of 4th generation (<NUM>) communication systems, efforts have been made to develop an improved 5th generation (<NUM>) or pre-<NUM> communication system. Therefore, the <NUM> or pre-<NUM> communication system is also called a 'Beyond <NUM> Network' or a 'Post Long Term Evolution (LTE) System'.

In the <NUM> system, Hybrid frequency shift keying (FSK) and quadrature amplitude modulation (FQAM) and sliding window superposition coding (SWSC) as an advanced coding modulation (ACM), and filter bank multi carrier (FBMC), non-orthogonal multiple access (NOMA), and sparse code multiple access (SCMA) as an advanced access technology have been developed.

<NUM> communication systems provide multimedia broadcast services for mobile terminals through evolved multimedia broadcast multicast services (eMBMS). As the development of various technologies enables a high data transmission rate, <NUM> communication systems are required to extend a service range in order not only to provide multimedia broadcast services for existing mobile terminals but also to provide multimedia broadcast services for a <NUM> fixed wireless access (FWA) environment. In similar regards, publication <CIT> relates to methods for establishing and removing multicast tunnels for in a communication system under multicast label distribution protocol (MLDP), wherein the requests to join or leave the multicast are initiated by a user device, publication "Software-Defined Multicast network Overlay Framework, draft-qi-bitar-intarea-sdn-multicast-overlay-<NUM>. Qi et al) relates to a framework for software-defined multicast network, and publication <CIT> relates to methods and systems for self-routing multicast in a network.

In view of the foregoing aspects, the disclosure provides a method and an apparatus for effectively implementing a multicast service in a wireless communication system.

Further, the disclosure provides a method and an apparatus for requesting a multicast service in a wireless communication system.

In addition, the disclosure provides a method and an apparatus for providing a multicast service in a wireless communication system.

According to various embodiments of the disclosure, an operating method of a service management apparatus for requesting a multicast service in a wireless communication system is provided in accordance with independent claim <NUM>.

According to various embodiments of the disclosure, a service management apparatus for requesting a multicast service in a wireless communication system is provided in accordance with independent claim <NUM>.

An apparatus and a method according to independent claims <NUM> and <NUM> implement a multicast service using software-defined networking (SDN) in a communication system, thereby improving the availability of existing infrastructure and efficiently implementing a multicast service with enhanced resource efficiency.

Effects which can be acquired by the disclosure are not limited to the above described effects, and other effects that have not been mentioned may be clearly understood by those skilled in the art from the following description.

The terms used in the disclosure are only used to describe specific embodiments, and are not intended to limit the disclosure. A singular expression may include a plural expression unless they are definitely different in a context. Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as those commonly understood by a person skilled in the art to which the disclosure pertains. Such terms as those defined in a generally used dictionary may be interpreted to have the meanings equal to the contextual meanings in the relevant field of art, and are not to be interpreted to have ideal or excessively formal meanings unless clearly defined in the disclosure. In some cases, even the term defined in the disclosure should not be interpreted to exclude embodiments of the disclosure.

Hereinafter, various embodiments of the disclosure will be described based on an approach of hardware. However, various embodiments of the disclosure include a technology that uses both hardware and software and thus, the various embodiments of the disclosure may not exclude the perspective of software.

As used herein, the expression "A or B" or "at least one of A and/or B" may include all possible combinations of items enumerated together. The expression "a first", "a second", "the first", or "the second" may modify various elements regardless of the order and/or the importance, and is used merely to distinguish one element from another element without limiting the corresponding elements. When an element (e.g., first element) is referred to as being "(functionally or communicatively) connected," or "directly coupled" to another element (second element), the element may be connected directly to the another element or connected to the another element through yet another element (e.g., third element).

The expression "configured to" as used in various embodiments may be interchangeably used with, for example, "suitable for", "having the capacity to", "adapted to", "made to", "capable of", or "designed to" in terms of hardware or software, according to circumstances. Alternatively, in some situations, the expression "device configured to" may mean that the device, together with other devices or components, "is able to". For example, the phrase "processor adapted (or configured) to perform A, B, and C" may mean a dedicated processor (e.g., embedded processor) only for performing the corresponding operations or a generic-purpose processor (e.g., central processing unit (CPU) or application processor (AP)) that can perform the corresponding operations by executing one or more software programs stored in a memory device.

The disclosure illustrated below relates to an apparatus and a method for providing a multicast service in a wireless communication system. Specifically, the disclosure illustrates a technology for providing a multicast service using a software-defined network (SDN) in a wireless communication system. A multicast service to be provided in the disclosure includes a service providing, through a wireless communication system, various types of multimedia content, such as television, video, audio, and text, provided in a packet through a multicast-based content provider, for example, an Internet Protocol television (IPTV). As used herein, terms related to various communication protocols, terms referring to network entities, terms referring to components of a device (properly modified depending on the disclosure), and the like are used for convenience of description. Therefore, the disclosure is not limited by the following terms, and other terms having equivalent technical meanings may be used.

As used herein, terms referring to information (e.g., an identifier (ID), a tunnel ID, an Internet Protocol (IP) address, a session ID, a tunnel IP, and a multicast IP), terms referring to network entities (e.g., a settop, a terminal, a node, and an apparatus), terms referring to messages (e.g. a signal, data, a packet, a report, a response, and a request), terms referring to components of a device (e.g., a controller and a sensor), and the like are used for convenience of description. Therefore, the disclosure is not limited by the following terms, and other terms having equivalent technical meanings may be used.

Further, although the disclosure illustrates various embodiments using terms used in some communication standards (e.g., 3rd Generation Partnership Project (3GPP)), these standards are provided merely for convenience of description. Various embodiments of the disclosure may be easily modified and applied to other communication systems.

Hereinafter, terms used in the disclosure are defined as follows.

Software-defined networking (SDN) refers to a technology for separating a control area from individual network elements (NEs) forming a network as an accessible apparatus and enabling the accessible apparatus to logically control and manage the network using an application. In SDN, each individual NE may be programmed via an open application programming interface (API), thus being controlled or managed. That is, SDN enables the network and/or the NEs to be managed in a centralized manner.

<FIG> illustrates a communication system <NUM> according to various embodiments of the disclosure. Referring to <FIG>, the system <NUM> for providing a multicast service (or simply "system" <NUM>) includes a service management apparatus (multicast service management function (SMF)) <NUM>, a software-defined networking (SDN) controller <NUM>, an SDN switch <NUM>, a gateway (multicast user-plane function: UPF) <NUM>, and a base station (gNodeB or eNodeB) <NUM>. The communication system may further include a user apparatus or a terminal <NUM>-<NUM> or <NUM>-<NUM>. Each of the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> may be connected via a cable or wirelessly with an apparatus <NUM>-<NUM> or <NUM>-<NUM>, for example, a set-top box, which receives and provides multimedia content, such as a terrestrial, cable, or satellite broadcast, through a cable, such as a telephone line or a dedicated line, thus communicating therewith. Hereinafter, for convenience, the apparatus <NUM>-<NUM> and the apparatus <NUM>-<NUM> are referred to as set-top boxes.

The service management apparatus <NUM>, which is a network entity (NE) or a network function (NF) of a control plane, manages a session and allocates IP addresses of the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> in the communication system <NUM>. The service management apparatus <NUM> selects and controls the gateway <NUM> for data transmission. In addition, the service management apparatus <NUM> performs a service management function, such as routing path management, billing information generation, and quality of service (QoS) control, for supporting the mobility of a terminal. The service management apparatus <NUM> also performs a multicast service management function according to various embodiments.

The SDN control apparatus <NUM> communicates with the service management apparatus <NUM>, thereby controlling and managing the SDN switch <NUM>. The SDN control apparatus <NUM> provides functions for controlling other apparatuses in the network, particularly SDN switch-related settings/functions. The SDN control apparatus <NUM> may be configured, for example, in a general-purpose server, and may perform various roles according to programs/applications to be installed.

The SDN switch <NUM> is a network apparatus that is connected to the SDN control apparatus <NUM> to transmit data to other apparatuses (e.g., the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM>) in the communication system <NUM>. The SDN switch <NUM> performs tunneling for multicast packet forwarding to the gateway <NUM> under the control of the SDN control apparatus <NUM>. The SDN control apparatus <NUM> and the SDN switch <NUM> may include at least one application having an open API and may communicate with a different apparatus through the at least one application. In the following description, an SDN control apparatus may be referred to as a controller, and an SDN switch may be referred to as a switch.

The gateway <NUM>, which is a network entity (NE) or a network function (NF) of a user plane, functions to forward packets transmitted from the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> or packets transmitted to the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM>. Further, the gateway <NUM> applies QoS or controls traffic flow through packet priority control, rate limiting, QoS marking, packet inspection, or downlink buffering. According to various embodiments, the gateway <NUM> also performs a tunneling function for providing a multicast service to the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM>.

The gateway <NUM> may be disposed close to the terminals in order to reduce round-trip time (RTT) for bidirectional communication via a data network with the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> and may be configured as a plurality of apparatuses on a suitable platform, such as a cloud infrastructure.

The base station <NUM> is a network infrastructure that provides wireless access for the terminal <NUM>-<NUM> or <NUM>-<NUM>. The base station <NUM> has coverage defined as a certain geographic area based on the distance over which the base station <NUM> can transmit a signal. The base station <NUM> may be referred to as an access point (AP), an eNodeB (eNB), a 5th-generation (<NUM>) node, a wireless point, a transmission/reception point (TRP), or other terms with equivalent technical meanings, in addition to a base station. Although <FIG> illustrates only one base station, a different base station equivalent or similar to the base station <NUM> may be further included.

Each of the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> is an apparatus used by a user and communicates with the base station <NUM> through a wireless channel. In some cases, at least one of the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> may be operated without a user's involvement. For example, at least one of the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> may be an apparatus performing machine-type communication (MTC) and may not be carried by a user. Each of the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> may be referred to as a user equipment (UE), a mobile station, a subscriber station, a customer-premises equipment (CPE), a remote terminal, a wireless terminal, an electronic device, a user device, or other terms with equivalent technical meanings in addition to a terminal.

The base station <NUM>, the terminal <NUM>-<NUM>, and the terminal <NUM>-<NUM> may transmit and receive radio signals in a millimeter wave (mmWave) band (e.g., <NUM>, <NUM>, <NUM>, or <NUM>). Here, the base station <NUM>, the terminal <NUM>-<NUM>, and the terminal <NUM>-<NUM> may perform beamforming in order to improve channel gain. Here, the beamforming may include transmission beamforming and reception beamforming. That is, the base station <NUM>, the terminal <NUM>-<NUM>, and the terminal <NUM>-<NUM> may assign directivity to a transmission signal or a reception signal. To this end, the base station <NUM> and the terminals <NUM>-<NUM> and <NUM>-<NUM> may select serving beams (not shown) through a beam search or beam management procedure. After the serving beams (not shown) are selected, communication may then be performed through a resource in a quasi co-located (QCL) relationship with a resource for transmitting the serving beams (not shown).

As described above, the service management apparatus <NUM>, the SDN control apparatus <NUM>, the gateway <NUM>, and the like are described herein as device elements but are not limited thereto. The service management apparatus <NUM>, the SDN control apparatus <NUM>, the gateway <NUM>, and the like may be configured as network components on dedicated hardware or as software instances on dedicated hardware or may be configured by virtualizing functions thereof on a suitable platform, such as a cloud infrastructure. Further, in some cases, particular functions or different functions of the service management apparatus <NUM>, the SDN control apparatus <NUM>, the gateway <NUM>, and the like may be configured in separate pieces of hardware, or two or more thereof may be integrated to be configured in one or more pieces of hardware.

<FIG> illustrates a structure for requesting multicast participation in a communication system according to various embodiments of the disclosure.

A set-top box <NUM> is an apparatus corresponding to the set-top box <NUM>-<NUM> and the set-top box <NUM>-<NUM> of <FIG> and is an Internet Protocol television (IPTV) receiver, which provides a service through a service provider-specific protocol based on IP multicast. The set-top box <NUM> may report an event or a change to a network using a protocol for multicast membership group management for a local network or subnet, for example, an Internet group management protocol (IGMP).

The set-top box <NUM> may request a multicast service using an IGMP message. To request a multicast service, the set-top box <NUM> generates and transmits an IGMP message (e.g., a membership report) including information about a group to join among a plurality of multicast groups, for example, a specific multicast IP address (e.g., a <NUM>-bit IPv4 multicast group address).

A terminal <NUM> is an apparatus corresponding to the terminal <NUM>-<NUM> and the terminal <NUM>-<NUM> of <FIG> and may be installed, for example, indoors to connect various communication devices with a service of a communication service provider through a local area network (LAN) and to relay communication between the communication devices and the base station.

The terminal <NUM> generates at least one communication session on the basis of communication session information, and transmits and receives IP packets through the generated communication session. The terminal <NUM> may, for example, separately operate a multicast service session for a multicast service and a unicast session for a unicast service and may provide a session, for example, using a separate port. In this case, the terminal <NUM> may determine a communication session and perform routing on the basis of communication session information, such as policy-based routing (PBR), predetermined for routing various IP packets. Alternatively, the terminal <NUM> may operate a multicast session and a unicast session without division.

The terminal <NUM> receives an IGMP message from the set-top box <NUM> and transmits the IGMP message to a gateway <NUM> through the base station <NUM>. Here, when the terminal separately operates a multicast service session and a unicast service session, the terminal may generate a multicast service session, for example, on the basis of PBR and may transmit the IGMP message to the gateway <NUM> through this session.

When the terminal <NUM> operates a multicast session and a unicast session without division, the terminal <NUM> may arbitrarily generate a session for communication with the gateway <NUM> and may transmit the IGMP message to the gateway <NUM> through this session. Hereinafter, a communication session generated to transmit an IGMP message is referred to as a multicast session for convenience.

<FIG> illustrates a structure for processing a multicast participation request in a communication system according to various embodiments of the disclosure.

Upon receiving an IGMP message transmitted from a terminal <NUM> via a base station <NUM> through a multicast session, a gateway <NUM> snoops on the IGMP message. To this end, the gateway <NUM> has an IGMP protocol analysis function. Accordingly, the gateway <NUM> may determine that the terminal <NUM> requests multicast traffic for a multicast IP group corresponding to a multicast IP address.

The gateway <NUM> may generate an uplink (UL) filter for snooping on the IGMP message when generating a communication session or a multicast session for transmitting the IGMP message. Accordingly, the gateway <NUM> may insert the analyzed IGMP message as content of a signaling message between the gateway <NUM> and a service management apparatus <NUM> and may transmit the IGMP message, along with the ID of the multicast session for transmitting the IGMP message, to the service management apparatus <NUM> through an uplink. Here, the gateway <NUM> may record, for example, a communication session ID (or port ID) with the terminal <NUM> and the multicast IP address in a table, for example, an IGMP snoop table.

The service management apparatus <NUM> generates a multicast tunnel for transmitting multicast IP packets, received in the multicast group, to the gateway <NUM> through an SDN switch <NUM> in response to a request for participation in the multicast group corresponding to the multicast IP address included in the IGMP message. The service management apparatus <NUM> may map the multicast tunnel terminating at the gateway <NUM>, for example, to a downlink (DL) of the multicast session in which the IGMP message for requesting the participation in the multicast group is received.

The service management apparatus <NUM> transmits information about the generation of the multicast tunnel to the SDN control apparatus <NUM>. For example, the service management apparatus <NUM> may generate a service rule for transmitting a multicast IP packet on the basis of information including the ID of the generated multicast tunnel, information about the mapped multicast session, and the multicast IP address and may transmit the service rule to the SDN control apparatus <NUM>.

The SDN control apparatus <NUM> receives the information about the generation of the multicast tunnel for transmitting the IP packet from the service management apparatus <NUM>, controls the SDN switch <NUM> accordingly to generate the multicast tunnel from the SDN switch <NUM> to the gateway <NUM>, and transmits the multicast IP packets designated to the multicast IP address of the multicast group of the participation request to the gateway <NUM> through the generated multicast tunnel.

<FIG> illustrates the configuration of a service management apparatus in a communication system according to various embodiments of the disclosure.

The configuration illustrated in <FIG> may be understood as the configuration of the service management apparatus <NUM>. The terms 'unit,' '-or/er,' and the like used herein indicate a unit for processing at least one function or operation, which may be implemented by hardware, software, or a combination thereof.

Referring to <FIG>, the service management apparatus <NUM> includes a communication unit <NUM>, a storage unit <NUM>, and a controller <NUM>.

The communication unit <NUM> may perform functions for transmitting or receiving a signal through a wireless channel. The communication unit <NUM> may perform a function of conversion between a baseband signal and a bit stream according to the physical layer specification of a system. For example, in data transmission, the communication unit <NUM> may encode and modulate a transmitted bit stream to generate complex symbols. In another example, in data reception, the communication unit <NUM> may demodulate and decode a baseband signal to reconstruct a received bit stream.

The communication unit <NUM> provides an interface for performing communication with other apparatuses or nodes in the communication system. That is, the communication unit <NUM> converts a bit stream, which is transmitted from the service management apparatus <NUM> to another apparatus, for example, a gateway, an SDN control apparatus, a core network, or the like, into a physical signal, and converts a physical signal, which is received from the other apparatus, into a bit stream. That is, the communication unit <NUM> may transmit and receive signals. Accordingly, the communication unit <NUM> may be referred to as a transmitter, a receiver, or a transceiver.

The communication unit <NUM> enables the service management apparatus <NUM> to communicate with other apparatuses or systems via a backhaul connection or via a network. The communication unit <NUM> may support communication through an appropriate wired or wireless connection. For example, when the service management apparatus <NUM> is configured as a part of a mobile communication system (to support <NUM>, LTE, or LTE-A), the communication unit <NUM> may enables the service management apparatus <NUM> to communicate with other apparatuses via a wired or wireless backhaul connection. When the service management apparatus <NUM> is configured as an access point, the communication unit <NUM> may enable the service management apparatus <NUM> to communicate via a wired or wireless local area network or through a larger-scale network (such as the Internet) via a wired or wireless connection. The communication unit <NUM> may include a structure for supporting communication via a wired or wireless connection, such as an Ethernet or RF transceiver.

The storage unit <NUM> may store a control instruction code, control data, or user data to control the service management apparatus <NUM>. For example, the storage unit <NUM> may include an application, an operating system (OS), middleware, and a device driver. The storage unit <NUM> may include at least one of a volatile memory or a non-volatile memory. The volatile memory may include a dynamic RAM (DRAM), a static RAM (SRAM), a synchronous DRAM (SDRAM), a phase-change RAM (PRAM), a magnetic RAM (MRAM), a resistive RAM (RRAM), a ferroelectric RAM (FeRAM), and the like. The non-volatile memory may include a read-only memory (ROM), a programmable ROM (PROM), an electrically programmable ROM (EPROM), an electrically erasable ROM (EEPROM), a flash memory, and the like. The storage unit <NUM> may include a non-volatile medium, such as a hard disk drive (HDD), a solid state disk (SSD), an embedded MultiMediaCard (eMMC), and a universal flash storage (UFS). The storage unit <NUM> may be operatively coupled to the controller <NUM>.

The controller <NUM> may control the overall operations of the service management apparatus <NUM>. For example, the controller <NUM> may transmit or receive a signal through the communication unit <NUM>. The controller <NUM> may record data in the storage unit <NUM> and may read data recorded in the storage unit <NUM>. To this end, the controller <NUM> may include at least one processor or at least one microprocessor. The controller <NUM> may be configured to implement an operation procedure and/or methods of the service management apparatus <NUM> proposed in the disclosure. The controller <NUM> may control the service management apparatus <NUM> to perform operations associated with provision of a multicast service according to various embodiments described above or to be described below.

Further, the controller <NUM> records and reads data in the storage unit <NUM>. The controller <NUM> may perform at least functions a protocol stack required in a communication standard. To this end, the controller <NUM> may include at least one processor. According to various embodiments, the controller <NUM> includes a session manager <NUM> to generate a session for communication with a gateway <NUM>, to receive a signaling message including an IGMP message through this session, and to parse and analyze the message and a multicast service manager <NUM> to receive session information and a multicast IP address from the session manager and to generate information about generation of a multicast tunnel. Here, the session manager <NUM> and the multicast service manager <NUM> are instruction sets or codes stored in the storage unit <NUM> and may be instructions/codes at least temporarily residing in the controller <NUM>, storage spaces storing an instruction/code, or part of circuitry forming the controller <NUM>.

<FIG> illustrates the configuration of an SDN control apparatus in a communication system according to various embodiments of the disclosure.

The configuration illustrated in <FIG> may be understood as the configuration of the SDN control apparatus <NUM>. The terms 'unit,' '-or/er,' and the like used herein indicate a unit for processing at least one function or operation, which may be implemented by hardware, software, or a combination thereof.

Referring to <FIG>, the SDN control apparatus <NUM> includes a communication unit <NUM>, a storage unit <NUM>, and a controller <NUM>.

The communication unit <NUM> provides an interface for performing communication with other apparatuses or nodes in the communication system. That is, the communication unit <NUM> converts a bit stream, which is transmitted from the SDN control apparatus <NUM> to another apparatus, for example, a service management apparatus, an SDN switch, a core network, or the like, into a physical signal, and converts a physical signal, which is received from the other apparatus, into a bit stream. That is, the communication unit <NUM> may transmit and receive signals. Accordingly, the communication unit <NUM> may be referred to as a transmitter, a receiver, or a transceiver.

The communication unit <NUM> enables the SDN control apparatus <NUM> to communicate with other apparatuses or systems via a backhaul connection or via a network. The communication unit <NUM> may support communication through an appropriate wired or wireless connection. For example, when the SDN control apparatus <NUM> is configured as a part of a mobile communication system (to support <NUM>, LTE, or LTE-A), the communication unit <NUM> may enables the SDN control apparatus <NUM> to communicate with other apparatuses via a wired or wireless backhaul connection. When the SDN control apparatus <NUM> is configured as an access point, the communication unit <NUM> may enable the SDN control apparatus <NUM> to communicate via a wired or wireless local area network or through a larger-scale network (such as the Internet) via a wired or wireless connection. The communication unit <NUM> may include a structure for supporting communication via a wired or wireless connection, such as an Ethernet or RF transceiver.

The storage unit <NUM> may store a control instruction code, control data, or user data to control the SDN control apparatus <NUM>. For example, the storage unit <NUM> may include an application, an operating system (OS), middleware, and a device driver. The storage unit <NUM> may include at least one of a volatile memory or a non-volatile memory. The volatile memory may include a dynamic RAM (DRAM), a static RAM (SRAM), a synchronous DRAM (SDRAM), a phase-change RAM (PRAM), a magnetic RAM (MRAM), a resistive RAM (RRAM), a ferroelectric RAM (FeRAM), and the like. The non-volatile memory may include a read-only memory (ROM), a programmable ROM (PROM), an electrically programmable ROM (EPROM), an electrically erasable ROM (EEPROM), a flash memory, and the like. The storage unit <NUM> may include a non-volatile medium, such as a hard disk drive (HDD), a solid state disk (SSD), an embedded MultiMediaCard (eMMC), and a universal flash storage (UFS). The storage unit <NUM> may be operatively coupled to the controller <NUM>.

The controller <NUM> may control the overall operations of the SDN control apparatus <NUM>. For example, the controller <NUM> may transmit or receive a signal through the communication unit <NUM>. The controller <NUM> may record data in the storage unit <NUM> and may read data recorded in the storage unit <NUM>. To this end, the controller <NUM> may include at least one processor or at least one microprocessor. The controller <NUM> may be configured to implement an operation procedure and/or methods of the SDN control apparatus <NUM> proposed in the disclosure. The controller <NUM> may control the SDN control apparatus <NUM> to perform operations associated with provision of a multicast service according to various embodiments described above or to be described below.

Further, the controller <NUM> records and reads data in the storage unit <NUM>. The controller <NUM> may perform at least functions a protocol stack required in a communication standard. To this end, the controller <NUM> may include at least one processor. According to various embodiments, the controller <NUM> includes an SDN switch manager <NUM> to control an SDN switch f according to service rules for transmitting a multicast IP packet received from a service management apparatus <NUM>. The SDN switch manager <NUM> transmits a multicast tunnel ID and information about a mapped multicast session to an SDN switch <NUM> to generate a multicast tunnel between the SDN switch and a gateway <NUM>. Further, the SDN switch manager <NUM> enables corresponding multicast IP packets to be transmitted through the generated multicast tunnel on the basis of information including a multicast IP address. Here, the SDN switch manager <NUM> is an instruction set or code stored in the storage unit <NUM> and may be an instruction/code at least temporarily residing in the controller <NUM>, a storage space storing an instruction/code, or part of circuitry forming the controller <NUM>.

<FIG> illustrates the configuration of a gateway (user-plane function) in a communication system according to various embodiments of the disclosure.

The configuration illustrated in <FIG> may be understood as the configuration of the gateway <NUM>. The terms 'unit,' '-or/er,' and the like used herein indicate a unit for processing at least one function or operation, which may be implemented by hardware, software, or a combination thereof.

Referring to <FIG>, the gateway <NUM> includes a communication unit <NUM>, a storage unit <NUM>, and a controller <NUM>.

The communication unit <NUM> provides an interface for performing communication with other apparatuses or nodes in the communication system. That is, the communication unit <NUM> converts a bit stream, which is transmitted from the gateway <NUM> to another apparatus, for example, a base station, a service management apparatus, a core network, or the like, into a physical signal, and converts a physical signal, which is received from the other apparatus, into a bit stream. That is, the communication unit <NUM> may transmit and receive signals. Accordingly, the communication unit <NUM> may be referred to as a transmitter, a receiver, or a transceiver.

The communication unit <NUM> enables the gateway <NUM> to communicate with other apparatuses or systems via a backhaul connection or via a network. The communication unit <NUM> may support communication through an appropriate wired or wireless connection. For example, when the gateway <NUM> is configured as a part of a mobile communication system (to support <NUM>, LTE, or LTE-A), the communication unit <NUM> may enables the gateway <NUM> to communicate with other apparatuses via a wired or wireless backhaul connection. When the gateway <NUM> is configured as an access point, the communication unit <NUM> may enable the gateway <NUM> to communicate via a wired or wireless local area network or through a larger-scale network (such as the Internet) via a wired or wireless connection. The communication unit <NUM> may include a structure for supporting communication via a wired or wireless connection, such as an Ethernet or RF transceiver.

The storage unit <NUM> may store a control instruction code, control data, or user data to control the gateway <NUM>. For example, the storage unit <NUM> may include an application, an operating system (OS), middleware, and a device driver. The storage unit <NUM> may include at least one of a volatile memory or a non-volatile memory. The volatile memory may include a dynamic RAM (DRAM), a static RAM (SRAM), a synchronous DRAM (SDRAM), a phase-change RAM (PRAM), a magnetic RAM (MRAM), a resistive RAM (RRAM), a ferroelectric RAM (FeRAM), and the like. The non-volatile memory may include a read-only memory (ROM), a programmable ROM (PROM), an electrically programmable ROM (EPROM), an electrically erasable ROM (EEPROM), a flash memory, and the like. The storage unit <NUM> may include a non-volatile medium, such as a hard disk drive (HDD), a solid state disk (SSD), an embedded MultiMediaCard (eMMC), and a universal flash storage (UFS). The storage unit <NUM> may be operatively coupled to the controller <NUM>.

The controller <NUM> may control the overall operations of the gateway <NUM>. For example, the controller <NUM> may transmit or receive a signal through the communication unit <NUM>. The controller <NUM> may record data in the storage unit <NUM> and may read data recorded in the storage unit <NUM>. To this end, the controller <NUM> may include at least one processor or at least one microprocessor. The controller <NUM> may be configured to implement an operation procedure and/or methods of the gateway <NUM> proposed in the disclosure. The controller <NUM> may control the gateway <NUM> to perform operations associated with provision of a multicast service according to various embodiments described above or to be described below.

Further, the controller <NUM> records and reads data in the storage unit <NUM>. The controller <NUM> may perform at least functions a protocol stack required in a communication standard. To this end, the controller <NUM> may include at least one processor. According to various embodiments, the controller <NUM> includes an IGMP snooper <NUM> to interpret control information included in a header of an IGMP message packet and a multicast service processor <NUM> to transmit an IGMP message to a service management apparatus <NUM> by inserting the interpreted IGMP message into a payload of a signaling message packet, to receive a multicast IP packet through a multicast tunnel, and to transmit the multicast IP packet to a terminal <NUM>, a terminal <NUM>-<NUM>, or a terminal <NUM>. Here, the IGMP snooper <NUM> and the multicast service processor <NUM> are instruction sets or codes stored in the storage unit <NUM> and may be instructions/codes at least temporarily residing in the controller <NUM>, storage spaces storing an instruction/code, or part of circuitry forming the controller <NUM>.

<FIG> illustrates the flow of an operation of a service management apparatus for providing a multicast service in a communication system according to various embodiments of the disclosure.

In operation <NUM>, the service management apparatus receives a multicast group participation message from a terminal <NUM>, a terminal <NUM>-<NUM>, or a terminal <NUM>-<NUM> via a communication session for a gateway <NUM>. The service management apparatus <NUM> analyzes the multicast group participation message transmitted via the communication session. Accordingly, the service management apparatus <NUM> may manage whether to provide a multicast service to a terminal requesting participation in a multicast group, billing information about the terminal, and authentication of the terminal. Further, the service management apparatus <NUM> may obtain information, such as a communication session ID and a participation request multicast IP address related to the requested participation, through the analysis of the multicast group participation message.

In operation <NUM>, the service management apparatus <NUM> generates a multicast tunnel generation request message. The multicast tunnel generation request message may include, for example, a multicast tunnel ID and a multicast tunnel IP address. To this end, the service management apparatus may generate the multicast tunnel ID and may designate the IP address of a multicast port of the gateway <NUM> as the terminating IP address of a multicast tunnel, that is, the multicast tunnel IP address. The multicast tunnel generation request message may further include the ID of the communication session. The service management apparatus <NUM> may transmit the generated multicast tunnel generation request message to the gateway <NUM> and may receive a response thereto.

Accordingly, in operation <NUM>, the service management apparatus <NUM> generates a multicast tunnel between an SDN switch <NUM> and the gateway <NUM> and requests a multicast service through an SDN control apparatus <NUM> to provide the multicast service to the terminal.

To this end, the service management apparatus <NUM> may generate a multicast service request message including the multicast tunnel ID and the multicast tunnel IP address. The multicast service request message may include a multicast IP address.

The service management apparatus <NUM> transmits the multicast service request message to the SDN control apparatus <NUM>. Accordingly, the SDN control apparatus <NUM> controls the SDN switch <NUM> on the basis of the multicast service request message, generates the multicast tunnel from the SDN switch <NUM> to the gateway <NUM>, and enables the SDN switch <NUM> to transmit multicast IP packets corresponding to the multicast IP address to the gateway <NUM> through the generated multicast tunnel. The gateway <NUM> generates the multicast tunnel on the basis of the multicast tunnel generation request message, and transmits the multicast IP packets received through this tunnel to the terminal transmitting the multicast group participation message by mapping the multicast IP packets to the communication session via which the multicast group participation message is received.

<FIG> illustrates the flow of an operation of providing a multicast service in a communication system according to various embodiments of the disclosure.

In operation <NUM>, a gateway device <NUM> receives a multicast group participation message from a terminal <NUM>, a terminal <NUM>-<NUM>, or a terminal <NUM>-<NUM> through a communication session.

In operation <NUM>, the gateway <NUM> analyzes, that is, snoops on, the multicast group participation message transmitted from the terminal and transmits the same to a service management apparatus <NUM>. The service management apparatus <NUM> transmits a multicast service request message to an SDN control apparatus <NUM> on the basis of the multicast group participation message.

In operation <NUM>, the gateway <NUM> receives a multicast tunnel generation message generated on the basis of the multicast group participation message from the service management apparatus <NUM>. The multicast tunnel generation request message may include a multicast tunnel ID and/or a multicast tunnel IP address.

In operation <NUM>, the gateway <NUM> receives multicast packets through a multicast tunnel generated to receive multicast packets from an SDN switch on the basis of the multicast tunnel generation message. The multicast packets are transmitted to the gateway <NUM> via the multicast tunnel generated from the SDN switch <NUM> controlled by the SDN control apparatus <NUM> on the basis of the multicast service request message. The multicast service request message may include information, such as the multicast tunnel ID, the multicast tunnel IP address, a multicast IP address, and/or the ID of the communication session.

In operation <NUM>, the gateway <NUM> transmits the received multicast packets to the terminal having received the multicast group participation message through the communication session mapped to the multicast tunnel.

In operation <NUM>, a terminal <NUM> (e.g., the terminal <NUM>-<NUM> or the terminal <NUM>-<NUM>) receives a multicast group participation request message, for example, a membership report of an IGMP message, from a set-top box <NUM> (e.g., the set-top box <NUM>-<NUM> or the set-top box <NUM>-<NUM>). The IGMP message may include information about a multicast group which the set-top box <NUM> joins through the terminal <NUM> among a plurality of multicast group, that is, a specific multicast IP address (e.g., a <NUM>-bit IPv4 multicast group address).

In operation <NUM>, the terminal <NUM> checks the received multicast group participation request message, that is, the IGMP message, generates an uplink (UL) communication session on the basis of IP communication session information, and transmits the received IGMP message to a gateway <NUM> through the communication session. In this case, the terminal <NUM> may generate a multicast session, may transmit the IGMP message via an uplink (UL) through the multicast session, and may receive a multicast IP packet via a downlink (DL) through the multicast session.

In operation <NUM>, upon receiving the IGMP message, the gateway <NUM> checks the IGMP message by snooping on the IGMP message according to an IGMP protocol analysis function, inserts the IGMP message as content of a signaling message, and transmits the signaling message along with the ID of the multicast session in which the IGMP message is transmitted to a service management apparatus <NUM>, thereby reporting that the IGMP message for a multicast group participation request is received from the terminal <NUM>. In this case, the gateway <NUM> may record, for example, a communication session ID (or port ID) with the terminal <NUM> and the multicast IP address in a table (e.g., an IGMP snoop table).

In operation <NUM>, upon receiving the signaling message from the gateway <NUM>, the service management apparatus <NUM> parses the message to analyze the IGMP multicast group participation message included in the content of the message and generates a multicast tunnel ID and a multicast tunnel IP address in order to generate a multicast tunnel for providing a multicast service to a terminal requesting participation in a multicast group. The multicast tunnel IP address may be an address of a multicast tunnel terminating at the gateway <NUM>. In addition, the multicast tunnel IP address may be an IP address of a tunnel starting from an SDN switch <NUM>. The service management apparatus <NUM> obtains a communication session ID between the terminal <NUM> and the gateway <NUM> and a multicast IP address.

In operation <NUM>, the service management apparatus <NUM> generates a multicast tunnel generation request message and transmits the message to the gateway <NUM>. The multicast tunnel generation request message may be generated using, for example, a signaling message between the service management apparatus <NUM> and the gateway <NUM>. The multicast tunnel generation request message includes the multicast tunnel ID and the multicast tunnel IP address. The multicast tunnel generation request message may include the session ID of the communication session in which the IGMP message is transmitted from the terminal <NUM> to the gateway <NUM>. The gateway <NUM> may match the generated multicast tunnel with the communication session. That is, the gateway <NUM> may allocate multicast IP packets received through the generated multicast tunnel to a downlink (DL) of the communication session (or port number) to the terminal <NUM> and may transmit the same to the terminal <NUM>, for example, by referring to the table or on the basis of multicast tunnel generation request message received from the service management apparatus <NUM>.

In operation <NUM>, upon receiving the multicast tunnel generation request message, the gateway <NUM> checks the multicast tunnel generation request message and transmits a response message, for example, in the form of a signaling message, to the service management apparatus <NUM>.

In operation <NUM>, the service management apparatus <NUM> generates a multicast service request message and transmits the multicast service request message to an SDN control apparatus <NUM>. The multicast service request message may include the multicast IP address, the multicast tunnel ID, and the multicast tunnel IP address.

In operation <NUM>, upon receiving the multicast service request message, the SDN control apparatus <NUM> may generate and transmit a control signal to the SDN switch <NUM> so that the SDN switch <NUM> generates the multicast tunnel to the gateway <NUM> on the basis of the multicast tunnel ID and the multicast tunnel IP address included in the multicast service request message. The control signal may also include the multicast IP address.

In operation <NUM>, the SDN switch <NUM> transmits a response signal in response to reception of the control signal from the SDN control apparatus <NUM>. In operation <NUM>, the SDN control apparatus <NUM> transmits a multicast service response signal to the service management apparatus <NUM> according to the response signal from the SDN switch <NUM>. In operation <NUM>, the SDN switch <NUM> generates a multicast tunnel which starts from the SDN switch <NUM> and terminates at the gateway <NUM> on the basis of information included in the control signal. In operation <NUM>, the SDN switch <NUM> transmits the multicast IP packets designated by the multicast IP address received from the SDN control apparatus <NUM> to the gateway <NUM> through the generated multicast tunnel. In this case, the multicast IP packets may be transmitted by being encapsulated into packets including the multicast tunnel ID and the multicast tunnel IP address in a header. To this end, the SDN switch <NUM> may duplicate a multicast IP packet and may perform multicast tunneling using a tunneling technique, for example, generic routing encapsulation (GRE) or virtual extensible local area network (VxLAN), for transmitting a packet by overlaying.

In operation <NUM>, the gateway <NUM> transmits the multicast packets received through the multicast tunnel to the terminal <NUM> through a downlink (DL) multicast session of the communication session matched with the multicast tunnel in operation <NUM> and operation <NUM>. In operation <NUM>, upon receiving the multicast packets, the terminal <NUM> transmits the multicast packets to the set-top device <NUM> having transmitted the IGMP message.

<FIG> illustrates the flow of an operation of stopping providing a multicast service in a communication system according to various embodiments of the disclosure.

In operation <NUM>, a terminal <NUM> (e.g., the terminal <NUM>-<NUM> or the terminal <NUM>-<NUM>) receives a multicast group leave request message), for example, an IGMP leave message (leave group), from a set-top box <NUM> (e.g., the set-top box <NUM>-<NUM> or the set-top box <NUM>-<NUM>). The IGMP leave message may include information about a multicast group which the set-top box <NUM> leaves through the terminal <NUM>.

In operation <NUM>, the terminal <NUM> checks the received multicast group leave request message, that is, the IGMP message, and transmits the received IGMP message to a gateway <NUM> through an uplink (UL) multicast session.

In operation <NUM>, upon receiving the IGMP message, the gateway <NUM> checks the IGMP message by snooping on the IGMP message, inserts the IGMP message as content of a signaling message, and transmits the signaling message along with the ID of the multicast session in which the IGMP message is transmitted to a service management apparatus <NUM>, thereby reporting that the IGMP message for a multicast group leave request is received from the terminal <NUM>. Here, the gateway <NUM> may delete information stored in an IGMP snoop table, or may delete the information after operation <NUM>.

In operation <NUM>, upon receiving the signaling message from the gateway <NUM>, the service management apparatus <NUM> parses the message to analyze the IGMP multicast group leave message included in the content of the message and deletes a multicast tunnel ID and a multicast tunnel IP address, which are previously generated and stored, in order to terminate a multicast service for the terminal <NUM> making a multicast group leave request.

In operation <NUM>, the service management apparatus <NUM> generates a multicast tunnel deletion request message and transmits the message to the gateway <NUM>. The multicast tunnel deletion request message may be generated using, for example, a signaling message between the service management apparatus <NUM> and the gateway device <NUM>. The multicast tunnel deletion request message includes the multicast tunnel ID and the multicast tunnel IP address and may include the session ID (or port ID) of the communication session in which the IGMP message is transmitted from the terminal <NUM> to the gateway <NUM>.

In operation <NUM>, upon receiving the multicast tunnel deletion request message, the gateway <NUM> checks the multicast tunnel deletion request message, deletes information about a multicast tunnel matched with the communication session, and transmits a response message, for example, in the form of a signaling message, to the service management apparatus <NUM>.

In operation <NUM>, the service management apparatus <NUM> generates a multicast service stop message and transmits the multicast service stop message to an SDN control apparatus <NUM>. The multicast service stop message may include a multicast IP address, the multicast tunnel ID, and the multicast tunnel IP address.

In operation <NUM>, upon receiving the multicast service stop message, the SDN control apparatus <NUM> may generate and transmit a control signal to an SDN switch <NUM> so that the SDN switch <NUM> deletes the multicast tunnel to the gateway <NUM> on the basis of the multicast tunnel ID and the multicast tunnel IP address included in the multicast service stop message. The control signal may also include the multicast IP address.

In operation <NUM>, the SDN switch <NUM> transmits a response signal to the SDN control apparatus <NUM> in response to reception of the control signal from the SDN control apparatus <NUM>. In operation <NUM>, the SDN control apparatus <NUM> transmits a multicast service stop response signal to the service management apparatus <NUM> according to the response signal from the SDN switch <NUM>. In operation <NUM>, the SDN switch <NUM> deletes the multicast tunnel which starts from the SDN switch <NUM> and terminates at the gateway <NUM> on the basis of information included in the control signal and stops transmitting a multicast packet.

According to various embodiments, a <NUM> communication system may provide a multicast service to a customer-premises equipment (CPE) by extending the range of services using FWA.

According to various embodiments, a <NUM> communication system may provide a multicast service using an existing infrastructure, such as an existing set-top box and an IPTV server.

According to various embodiments, a <NUM> communication system may provide a multicast service using SDN. Therefore, it is possible to efficiently utilize a virtualization equipment server supporting a multicast service.

According to various embodiments, a <NUM> communication system may apply a multicast overlay function to a user-plane function.

According to various embodiments, a <NUM> communication system may apply a multicast overlay function to a user plane, in which a packet duplication function for multicast transmission may be separately applied with a hardware device.

According to various embodiments, a <NUM> communication system may provide a packet duplication function for providing a multicast service using an SDN switch.

According to various embodiments, a <NUM> communication system may provide a multicast service by performing a packet replication function and a tunneling function for multicast forwarding of a duplicated packet by overlaying using an SDN switch.

According to various embodiments, a control plane and a user plane of a <NUM> core network are functionally separated, and a function provided by SDN and hardware are combined, thereby maximizing gains from the separation of the control plane and the user plane and reducing additional costs for a <NUM> communication system.

According to various embodiments, a control plane and a user plane of a <NUM> core network are functionally separated, and a function provided by SDN and hardware are combined, thereby providing various services through a <NUM> communication system without causing loads on virtualization equipment and thus preventing an increase in cost for establishing the user plane.

According to various embodiments, it is not necessary to install separate hardware for a virtualization server, thus reducing the number of servers of virtualization equipment for supporting a multicast service and efficiently operating existing server resources.

Methods according to embodiments stated in claims and/or specifications of the disclosure may be implemented in hardware, software, or a combination of hardware and software.

The programs (software modules or software) may be stored in non-volatile memories including a random access memory and a flash memory, a Read Only Memory (ROM), an Electrically Erasable Programmable Read Only Memory (EEPROM), a magnetic disc storage device, a Compact Disc-ROM (CD-ROM), Digital Versatile Discs (DVDs), or other type optical storage devices, or a magnetic cassette. Alternatively, any combination of some or all of the may form a memory in which the program is stored.

In addition, the programs may be stored in an attachable storage device which is accessible through communication networks such as the Internet, Intranet, local area network (LAN), wide area network (WAN), and storage area network (SAN), or a combination thereof.

In the above-described detailed embodiments of the disclosure, a component included in the disclosure is expressed in the singular or the plural according to a presented detailed embodiment. However, the singular form or plural form is selected for convenience of description suitable for the presented situation, and various embodiments of the disclosure are not limited to a single element or multiple elements thereof. Further, either multiple elements expressed in the description may be configured into a single element or a single element in the description may be configured into multiple elements.

Claim 1:
A service management apparatus (<NUM>) in a communication system, the service management apparatus comprising:
a transceiver (<NUM>); and
at least one processor (<NUM>) operably coupled to the transceiver, characterized in that the at least one processor is configured to:
receive, from a user plane function, UPF (<NUM>), an internet group management protocol, IGMP, join message including a multicast internet protocol, IP, address and identification, ID, of a multicast session between a terminal and the UPF (<NUM>),
generate information on a multicast tunnel between the UPF (<NUM>) and a software defined network, SDN, switch (<NUM>) based on the IGMP join message, wherein the information on the multicast tunnel includes an ID of the multicast tunnel and an IP address of the multicast tunnel,
transmit, to the UPF (<NUM>), a multicast tunnel generation request message including the ID of the multicast session and the information on the multicast tunnel,
generate a service rule for transmitting multicast packets based on the ID of the multicast tunnel, the multicast IP address, and information on the multicast session,
transmit the service rule to a SDN controller (<NUM>) for controlling the SDN switch (<NUM>) based on the service rule, and
transmit, to the SDN switch (<NUM>) through the SDN controller (<NUM>), a multicast service request message including the multicast IP address and the information on the multicast tunnel,
wherein the multicast IP address is used to transmit multicast packets duplicated at the SDN switch (<NUM>) from the SDN switch (<NUM>) to the UPF (<NUM>) through the multicast tunnel generated by the SDN switch (<NUM>), wherein the multicast tunnel starts from the SDN switch (<NUM>) and terminates at the UPF (<NUM>) based on information included in the multicast service request message, and
wherein the ID of the multicast session is used to transmit the multicast packets duplicated at the SDN switch (<NUM>) from the UPF (<NUM>) to the terminal through the multicast session.