WO2022119375A1 - 무선 접속 네트워크 기능을 수행하는 방법 및 장치 - Google Patents

무선 접속 네트워크 기능을 수행하는 방법 및 장치 Download PDF

Info

Publication number
WO2022119375A1
WO2022119375A1 PCT/KR2021/018213 KR2021018213W WO2022119375A1 WO 2022119375 A1 WO2022119375 A1 WO 2022119375A1 KR 2021018213 W KR2021018213 W KR 2021018213W WO 2022119375 A1 WO2022119375 A1 WO 2022119375A1
Authority
WO
WIPO (PCT)
Prior art keywords
traffic
information
server
processor
resource
Prior art date
Application number
PCT/KR2021/018213
Other languages
English (en)
French (fr)
Inventor
조현아
윤창배
Original Assignee
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Priority to CN202180081657.3A priority Critical patent/CN116584079A/zh
Priority to EP21901063.4A priority patent/EP4243374A4/en
Priority to US17/567,374 priority patent/US20220183026A1/en
Publication of WO2022119375A1 publication Critical patent/WO2022119375A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/74Admission control; Resource allocation measures in reaction to resource unavailability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1515Non-blocking multistage, e.g. Clos
    • H04L49/1546Non-blocking multistage, e.g. Clos using pipelined operation
    • 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/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Definitions

  • the present disclosure relates to a method and apparatus for performing a radio access network function.
  • the 5G communication system or the pre-5G communication system is called a system after the 4G network (Beyond 4G Network) communication system or the LTE system after (Post LTE).
  • an evolved small cell for network improvement of the system, in the 5G communication system, an evolved small cell, an advanced small cell, a cloud radio access network (cloud RAN), an ultra-dense network, Device to Device communication (D2D), wireless backhaul, moving network, cooperative communication, Coordinated Multi-Points (CoMP), and interference cancellation, etc. of technology is being developed.
  • cloud RAN cloud radio access network
  • D2D Device to Device communication
  • CoMP Coordinated Multi-Points
  • interference cancellation etc.
  • IoT Internet of Things
  • IoE Internet of Everything
  • IoT Internet Technology
  • IoT Internet Technology
  • IoT is a field of smart home, smart building, smart city, smart car or connected car, smart grid, health care, smart home appliance, advanced medical service, etc. can be applied to
  • 5G communication such as sensor network, machine to machine communication (M2M), and machine type communication (MTC) is being implemented by techniques such as beam forming, MIMO, and array antenna.
  • M2M machine to machine communication
  • MTC machine type communication
  • cloud RAN cloud radio access network
  • One aspect of the present disclosure is to provide a method and apparatus for performing a radio access network function in a wireless communication system.
  • a server obtains information on traffic to be generated in one or more base stations based on a scheduling request to one or more base stations, and makes a request for traffic based on the information about traffic to be generated
  • Determines information on radio resources and time delays to be used, based on the information about radio resources and time delays and available processor resources in the server, to processor resources allocated for processing the traffic in at least one pipeline of the processor related scheduling information may be determined, and traffic may be processed in at least one pipeline based on the scheduling information.
  • FIG. 1 is a diagram for explaining the structure of a centralized/cloud radio access network (cRAN) according to an embodiment of the present disclosure.
  • cRAN centralized/cloud radio access network
  • FIG. 2 is a diagram for explaining a RAN virtualization method according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram illustrating a virtualized RAN scheduling processor resources according to an embodiment of the present disclosure.
  • FIG. 4 is a flowchart illustrating a method for scheduling processor resources in a virtualized RAN according to an embodiment of the present disclosure.
  • FIG. 5 is a flowchart illustrating a method of scheduling processor resources in a virtualized RAN according to another embodiment of the present disclosure.
  • FIG. 6 is a diagram for describing a method of scheduling processor resources in a virtualized RAN according to an embodiment of the present disclosure.
  • FIG. 7 is a diagram for describing a method of scheduling processor resources in a virtualized RAN according to an embodiment of the present disclosure.
  • FIG. 8 is a diagram for explaining a method of scheduling processor resources in a virtualized RAN according to an embodiment of the present disclosure.
  • FIG. 9 is a diagram for explaining a method of scheduling processor resources in a virtualized RAN according to an embodiment of the present disclosure.
  • FIG. 10 is a diagram for explaining a time delay occurring during traffic processing in a virtualized RAN according to an embodiment of the present disclosure.
  • FIG. 11 is a diagram for describing a method of scheduling a processor resource for processing traffic having different time delay restrictions in vRAN according to an embodiment of the present disclosure.
  • FIG. 12 is a diagram for describing a virtualized RAN scheduling processor resources according to an embodiment of the present disclosure.
  • FIG. 13 illustrates a method for a server to schedule processor resources based on traffic to be generated in an MEC package and a vRAN package according to an embodiment of the present disclosure.
  • FIG. 14 is a diagram for describing an AI model used for scheduling processor resources in vRAN according to an embodiment of the present disclosure.
  • a method for a server to perform a radio access network function includes: obtaining information about traffic to be generated in the one or more base stations based on a scheduling request to the one or more base stations; determining information about a radio resource and latency required for the traffic based on information about the traffic to be generated; determining scheduling information about processor resources allocated for traffic processing in at least one pipeline of a processor based on the information about radio resources and time delays and available processor resources in the server; and processing traffic in at least one pipeline based on the scheduling information.
  • the determining of the scheduling information comprises: allocating all processor resources necessary for processing the traffic when a time delay required for the traffic is less than a threshold value
  • Scheduling information may be determined as a result, and when a time delay required for traffic is equal to or greater than a threshold, the scheduling information may be determined by allocating a minimum processor resource of a preset size.
  • the processing of traffic may include: when a size of a processor resource allocated to traffic exceeds a size of processor resources available in the server, at least one After processing the traffic allocated in advance to the pipeline, the traffic is processed, and when the size of the processor resources allocated to the traffic is less than or equal to the size of the processor resources available in the server, the traffic is transferred in a new pipeline created for processing the traffic. can be processed
  • the processing of the traffic includes: a size of a processor resource allocated to the traffic exceeds a size of an available processor resource in the server, and the processing of the traffic If the priority is higher than the processing of the pre-allocated traffic to the at least one pipeline, the pre-allocated traffic processing may be stopped and the traffic may be processed.
  • the processing of traffic may include: generating a new pipeline for processing of traffic when processing of pre-allocated traffic is stopped; and processing traffic in the created new pipeline.
  • a method for a server to perform a radio access network function further includes acquiring resource monitoring information on a processor resource required to process traffic generated before a scheduling request, and determining the scheduling information Steps.
  • the method may include determining a processor resource required for processing the traffic based on information about a radio resource and a latency required for the traffic.
  • the information on traffic to be generated in the base station includes information about the size and type of traffic to be generated in the base station, and the type of traffic includes: may be classified according to the performance of at least one of a data transmission rate, a transmission latency, and a maximum number of connections (connection density) required for each service that has generated .
  • the acquiring information about to-be-generated traffic includes: traffic generated for each type of traffic based on traffic processing information in the server prior to a scheduling request identifying a pattern of; and based on the identified traffic pattern, obtaining information about traffic to be generated by the base station.
  • information on radio resources includes a time-frequency resource for transmitting and receiving traffic, a transmission/reception mode between the base station and the terminal, the number of antenna ports, layers, and channels It may include information about at least one of a coding and a modulation technique.
  • the step of determining scheduling information comprises: Scheduling information about the processor resource may be determined based on the information on the radio resource and the time delay and the processor resource available in the server by using the pre-generated learning network model.
  • a server performing a radio access network function may be provided.
  • the server includes a transceiver; a memory storing one or more instructions; and at least one processor executing one or more instructions stored in the memory, wherein the at least one processor is configured to obtain information about traffic to be generated in one or more base stations based on a scheduling request to the one or more base stations, and generate Based on the information about the to-be-traveled traffic, information about the radio resource and latency required for the traffic is determined, and based on the information about the radio resource and the time delay and the processor resources available in the server, Scheduling information about a processor resource allocated for traffic processing in at least one pipeline may be determined, and traffic may be processed in at least one pipeline based on the scheduling information.
  • the expression “at least one of a, b or c” means “a”, “b”, “c”, “a and b”, “a and c”, “b and c”, “a, b” and c all", or variations thereof.
  • each block of the process flow diagrams and combinations of the flowchart diagrams may be executed by computer program instructions.
  • These computer program instructions may be embodied in a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, such that the instructions performed by the processor of the computer or other programmable data processing equipment are not described in the flowchart block(s). It creates a means to perform functions.
  • These computer program instructions may also be stored in a computer-usable or computer-readable memory that may direct a computer or other programmable data processing equipment to implement a function in a particular manner, and thus the computer-usable or computer-readable memory.
  • the instructions stored in the flow chart block(s) produce an article of manufacture containing instruction means for performing the function described in the flowchart block(s).
  • the computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operational steps are performed on the computer or other programmable data processing equipment to create a computer-executed process to create a computer or other programmable data processing equipment. It is also possible that instructions for performing the processing equipment provide steps for performing the functions described in the flowchart block(s).
  • each block may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s). It should also be noted that in some alternative implementations it is also possible for the functions recited in blocks to occur out of order. For example, two blocks shown one after another may be performed substantially simultaneously, or the blocks may sometimes be performed in the reverse order according to a corresponding function.
  • ' ⁇ unit' means software or a hardware component such as an FPGA (Field Programmable Gate Array) or ASIC (Application Specific Integrated Circuit), and ' ⁇ unit' performs certain roles.
  • '-part' is not limited to software or hardware.
  • ' ⁇ ' may be configured to reside on an addressable storage medium or may be configured to refresh one or more processors.
  • ' ⁇ ' refers to components such as software components, object-oriented software components, class components, and task components, and processes, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
  • components and ' ⁇ units' may be combined into a smaller number of components and ' ⁇ units' or further separated into additional components and ' ⁇ units'.
  • components and ' ⁇ units' may be implemented to play one or more CPUs in a device or secure multimedia card.
  • ' ⁇ unit' may include one or more processors.
  • a wireless communication system for example, 3GPP's HSPA (High Speed Packet Access), LTE (Long Term Evolution or E-UTRA (Evolved Universal Terrestrial Radio Access)), LTE-Advanced (LTE-A), 3GPP2 HRPD (High Rate Packet Data), UMB (Ultra Mobile Broadband), and IEEE 802.16e, such as communication standards, such as high-speed, high-quality packet data service is developed as a broadband wireless communication system are doing
  • a wireless communication system of 5G or NR (new radio) is being made as a next-generation wireless communication system.
  • eMBB enhanced mobile broadband
  • mmTC massive machine type communications
  • URLLC ultra-reliable and low-latency communications
  • eMBB may be a high-speed transmission of high-capacity data
  • mMTC may be a service that minimizes terminal power and multiple terminals are connected
  • URLLC may be a service that aims for high reliability and low latency, but is not limited thereto.
  • Such a service may be a major scenario in an LTE system or a wireless communication system such as 5G/NR (new radio, next radio) after LTE.
  • 5G/NR new radio, next radio
  • the present disclosure uses terms and names defined in the 3rd Generation Partnership Project Long Term Evolution (3GPP) standard, or terms and names modified based on the terms and names.
  • 3GPP 3rd Generation Partnership Project Long Term Evolution
  • the present disclosure is not limited by the above-mentioned terms and names, and may be equally applied to a wireless communication system conforming to other standards.
  • an embodiment of the present disclosure is described by taking a 5G, new radio, NR system as an example, the present disclosure may also be used in other wireless communication systems having a similar technical background or channel type. Examples may be applied.
  • an embodiment of the present disclosure may be applied to LTE or LTE-A, which is a wireless communication system before NR, and further, an embodiment of the present disclosure may be applied to a wireless communication system developed after NR. Furthermore, the embodiment of the present disclosure may be applied to other wireless communication systems through some modifications within a range that does not significantly deviate from the scope of the present disclosure as determined by a person having skilled technical knowledge.
  • a term for identifying an access node a term referring to network entities, a term referring to messages, a term referring to an interface between network objects, a term referring to various identification information and the like are exemplified for convenience of description. Accordingly, the present disclosure is not limited to the terms described below, and other terms referring to objects having equivalent technical meanings may be used.
  • the base station is a subject that performs resource allocation of the terminal, and may be at least one of gNode B, eNode B, Node B, a base station (BS), a radio access unit, a base station controller, or a node on a network.
  • the terminal may include a user equipment (UE), a mobile station (MS), a cellular phone, a smart phone, a computer, or a multimedia system capable of performing a communication function.
  • UE user equipment
  • MS mobile station
  • cellular phone a smart phone
  • computer a multimedia system capable of performing a communication function.
  • a cell may indicate an area covered by one base station in wireless communication.
  • Cells may be classified into mega cells, macro cells, micro cells, and pico cells according to their size, but this is only an example, and the types of cells are described above. It is not limited to bars.
  • a downlink (DL) is a wireless transmission path of a signal transmitted from a base station to a terminal
  • an uplink (UL) is a wireless transmission path of a signal transmitted from the terminal to a flag station.
  • OFDM Orthogonal Frequency Division Multiplexing
  • SC-FDMA Single Carrier Frequency Division Multiple Access
  • Uplink refers to a radio link in which a terminal (terminal or user equipment, UE) or mobile station (MS) transmits data or control signals to a base station (gNode B, or base station (BS)) It means a wireless link that transmits data or control signals.
  • UE terminal or user equipment
  • MS mobile station
  • BS base station
  • FIG. 1 is a diagram of a structure of a centralized/cloud radio access network (cRAN) according to an embodiment of the present disclosure.
  • cRAN centralized/cloud radio access network
  • a radio transceiver (RU) and a data unit (DU) included in an existing base station are separated, and the radio transceiver (eg, 111) is a cell site. It may be located in the base station (eg, 111), and the data processing unit 120 (eg, 121) may be located in the central server.
  • a cell corresponds to an area covered by a base station in a wireless communication system, and at least one cell may exist per base station.
  • the radio transceivers are disposed in the base stations 111, 113, 115, 117, 119 of the cell site, and the data processing units 121 , 123, 125) may be gathered in one place to execute at least some of the radio access network functions.
  • a description of the radio access network functions will be provided later.
  • cRAN can easily adjust inter-cell interference by collecting and managing the data processing units 121, 123, and 125 in one place, and can provide services such as coordinated multi-point transmission and reception (CoMP). have.
  • CoMP coordinated multi-point transmission and reception
  • the base stations of the cell site may include an RF device and the like, and may transmit a signal to the data processing unit (eg, 121 ) through a fronthaul.
  • the fronthaul is a part of a network that connects one or more base stations of a cell site to a data processing unit (eg, 121 ), and may perform digital signal processing (DSP), power amplification and filtering functions, and the like.
  • DSP digital signal processing
  • the data processing unit may process a signal received from the base station of the cell site and transmit the processed signal to the core network device 130 through a backhaul.
  • the core network device 130 may include devices that connect an end system composed of a base station and a terminal.
  • the core network device 130 may include a packet data network gateway (P-GW), a serving gateway (S-GW), and a mobile management entity (MME).
  • P-GW packet data network gateway
  • S-GW serving gateway
  • MME mobile management entity
  • the P-GW can connect the internal node of the core network and the external Internet, set an IP address in the terminal, and perform IP packet filtering.
  • RRC radio resource control
  • the MME may process control signals related to location registration, authentication, and call of the terminal. Meanwhile, this is only an example, and the configuration of the core network device 130 is not limited to the above-described example.
  • the backhaul is a network part connecting the data processing unit (eg, 121 ) and the core network device 130 , and may be implemented as a wired interface such as optical fiber, but this is only an example, and the backhaul may also be implemented as a wireless network. have.
  • the data processing unit may perform various wireless access network functions for signal processing.
  • the radio access network function may include, for example, a packet data convergence protocol (PDCP) layer function, a radio link control (RLC) layer function, a medium access control (MAC) layer function, and a physical (PHY) layer function, etc. , this is only an example, and the radio access network function is not limited to the above-described example.
  • PDCP packet data convergence protocol
  • RLC radio link control
  • MAC medium access control
  • PHY physical
  • the function of the PDCP layer may include at least one of the following functions.
  • the reordering function of the PDCP layer refers to the function of reordering PDCP PDUs received from the lower layer in order based on the PDCP sequence number (SN). It may include at least one of a function of reordering and recording the lost PDCP PDUs, a function of reporting a status on the lost PDCP PDUs to the transmitting side, and a function of requesting retransmission of the lost PDCP PDUs.
  • the function of the RLC layer may include at least one of the following functions.
  • In-sequence delivery of the RLC layer indicates a function of sequentially delivering RLC service data units (SDUs) received from a lower layer to an upper layer.
  • SDUs RLC service data units
  • One RLC SDU is divided into several RLC SDUs. When it is received, it may include a function of reassembling it and delivering it.
  • the sequential delivery function is a function of rearranging the received RLC PDUs based on an RLC sequence number (SN) or a PDCP sequence number (SN), a function of reordering the order to record the lost RLC PDUs, and a function for the lost RLC PDUs It may include at least one of a function of sending a status report to the transmitting side.
  • the sequential delivery function may include a function of requesting retransmission of the lost RLC PDUs. function may be included.
  • the sequential delivery function may include a function of sequentially delivering all RLC SDUs received before a timer starts to an upper layer if a predetermined timer has expired even if there is a lost RLC SDU, or even if there is a lost RLC SDU If a predetermined timer has expired, it may include a function of sequentially transferring all RLC SDUs received so far to a higher layer.
  • the RLC layer may process RLC PDUs in the order in which they are received and deliver them to the PDCP layer, regardless of sequence order.
  • the RLC layer combines them with a segment stored in the buffer or segments to be received later to reconstruct a complete RLC PDU, and then transmits the RLC PDU to the PDCP layer.
  • the RLC layer may not include a concatenation function, and the concatenation function may be performed in the MAC layer or replaced with a multiplexing function of the MAC layer.
  • the MAC layer function may include at least one of the following functions.
  • the PHY layer may perform at least one of the following functions.
  • the PHY layer may perform channel coding and modulation on data of an upper layer, make it an OFDM symbol, and transmit it through a wireless channel.
  • the PHY layer may perform demodulation and channel decoding on an OFDM symbol received through a radio channel, and deliver data obtained as a result to an upper layer.
  • the base station of the cell site may be described in terms such as RU or remote radio head (RRH), and the data processing unit (eg, 121) may be described in terms such as DU or base band unit (BBU). .
  • the present disclosure intends to provide a method of performing at least one radio access network function performed by the data processing units 121 , 123 , and 125 through virtualization.
  • Virtualization is a technology that can expand resources available in one device by integrating and managing multiple physical resources. to explain about it.
  • FIG. 2 is a diagram for explaining a RAN virtualization method according to an embodiment of the present disclosure.
  • the server 200 may include hardware 210 capable of driving software for performing a vRAN function.
  • Hardware 210 is CPU (central processing unit, 211), RAM (random access memory, 212), FPGA (field programmable gate array, 213), GPU (graphics processing unit, 214), NIC (network interface controller, 215) and storage 216 , but this is only an example, and components of the hardware 210 are not limited to the above-described example.
  • the storage 216 may include a hard disk drive (HDD), a solid state drive (SDD), or the like.
  • the hardware 210 may execute one operating system (OS) 220 .
  • the OS 220 may manage the hardware 210 and software (eg, virtualization software 230 ) executed in the server 200 .
  • the virtualization software 230 may logically separate the resources managed by the OS 220 and allow multiple software components (SCs) to share the logically separated resources.
  • a resource is an item used to process traffic in vRAN packages 240 , 250 .
  • the resource may include a CPU 211 , a RAM 212 , an FPGA 213 , a GPU 214 , a NIC 215 , and a storage 216 , but this is only an example, and the resource is described above. Examples are not limited thereto.
  • Logical separation of resources may be performed by distributing a physical communication line connecting the resource and a plurality of SCs through a switch.
  • SC is a collection of libraries or applications required to perform a specific function so that it can be used as if it were a separate server, and it can be created or removed in a package unit.
  • a package is a minimum unit that can include one or more SCs while sharing one IP.
  • Kubernetes may be included, and the SC may correspond to a container of Kubernetes.
  • the virtualization software 230 may include software for managing arithmetic processing of processor resources such as the GPU 214 , and may include, for example, computed unified device architecture (CUDA).
  • CUDA computed unified device architecture
  • SC may be used to perform network functions of vRAN.
  • the operation of the server 200 for vRAN implementation will be described in more detail.
  • the server 200 may be connected to a plurality of base stations 12 , 14 , and 16 of a cell site through an Ethernet interface unit (EIU) 50 .
  • the EIU 50 is a part of a passage connecting a plurality of base stations 12, 14, 16 and the server 200 of a cell site, and the traffic of the base station is transferred to the vRAN packages 240 and 250 through the EIU 50. can be transmitted. For example, information about the vRAN package (eg, 240) allocated to the base station (eg, 12, 14) of the cell site through the EIU (50) may be transmitted.
  • the server 200 may perform radio access network functions performed by the data processing unit of the integrated base station.
  • the data processing unit may correspond to the data processing unit described above with reference to FIG. 1 .
  • a wireless transceiver including an RF device is present in each of the plurality of base stations 12 , 14 , and 16 of the cell site, and other wireless access network functions may be performed by the server 200 .
  • vRAN packages 240 and 250 including PHY SCs 241 and 251, MAC SCs 243 and 253, and RLC SCs 245 and 255 may be generated in the server 200, respectively.
  • the PHY SCs 241 and 251 , MAC SCs 243 , 253 , and RLC SCs 245 and 255 may perform the aforementioned PHY layer function, MAC layer function, and RLC layer function, respectively.
  • the wireless access network function performed by the server 200 is not limited to the above-described example.
  • the server 200 may perform an RLC layer function, a PDCP layer function, and the like.
  • the vRAN package is a minimum unit that can include one or more SCs performing a radio access network function.
  • the vRAN package may be configured with instructions that enable virtualization and execution of radio access network functions previously performed in hardware devices, and SC may be removed or created in units of vRAN packages.
  • Server 200 may include one or more vRAN packages 240 , 250 .
  • the virtualization master 260 is a system that controls the vRAN package.
  • the virtualization master 260 may be located in the server 200 , or according to another example, may be located in a device other than the server 200 .
  • the virtualization master 260 may transmit a command such as creation or removal of a vRAN package to the virtualization software 230 and update and store vRAN package information changed by the command.
  • the virtualization master 260 may deliver the updated vRAN package information to an operation and maintenance (O&M) 270 .
  • O&M operation and maintenance
  • the O&M 270 is a device for controlling the degree of traffic congestion in the user plane of the terminal.
  • the O&M 270 is shown to exist outside the server 200 , but according to another embodiment of the present disclosure, the O&M 270 may be located inside the server 200 .
  • the O&M 270 may instruct the EIU 50 to allocate traffic generated from the plurality of base stations 12 , 14 , and 16 to each vRAN package.
  • the above-described virtualization method is only an example for implementing vRAN in the present disclosure, and other virtualization methods may be used.
  • a hypervisor-based virtualization method may be used for vRAN implementation.
  • FIG. 3 is a diagram of a virtualized RAN scheduling processor resources according to one embodiment.
  • the server 300 may include hardware 310 capable of running software for performing a vRAN function.
  • the hardware 310 may include a CPU, RAM, storage, and NIC in addition to the GPU, but components other than the GPU are omitted for convenience of description.
  • FIG. 3 it has been described that a plurality of GPUs 311 to 315 are included in the server 300 , but this is only an example, and the server 300 may include one GPU.
  • the server 300 may include an OS 320 and virtualization software 330 .
  • the vRAN package 340 may obtain scheduling requests for one or more base stations.
  • the scheduling request is obtained when the terminal requests allocation of time-frequency resources to the base station to transmit UL traffic to the base station according to one embodiment, or, according to another embodiment, the service server to a plurality of terminals accessing the base station It may be obtained to provide traffic information to be transmitted on the DL.
  • Traffic is the flow of data through a communication network within a certain period of time.
  • the traffic may include a data flow between the terminal and the base station, and may be expressed as, for example, a data rate per unit time.
  • the traffic information is information that can directly or indirectly indicate the amount and characteristics of traffic.
  • Traffic information includes the type of service that generated traffic (eg, smart home/building/city, V2X, streaming, AR/VR (augment reality/virtual reality), MC (mission critical)), and device type (eg, For example, it may include a smartphone, a sensor, a narrowband internet of things (NB-IoT) device, a type of a wireless communication system in which the traffic is generated (eg, NR or LTE), and the like.
  • NB-IoT narrowband internet of things
  • traffic information includes the number of terminals requesting traffic transmission/reception, the amount of traffic of the terminal to transmit/receive (eg, LTE/NR buffer status report), time/frequency allocation amount allocated for traffic transmission/reception, and PHY used for traffic transmission/reception It may include techniques of layers (modulation, channel coding, etc.). However, this is only an example, and information included in the traffic information is not limited to the above-described example.
  • Traffic information included in the scheduling request may be transmitted to the scheduling SC 351 through processing in the RLC SC 341 and the MAC SC 343 .
  • the scheduling SC 351 may determine information about a radio resource and a time delay required for the traffic based on the information about the traffic to be generated.
  • a radio resource is a resource that affects the computational complexity of the PHY layer.
  • at least a time-frequency resource for transmission and reception of traffic, a transmission/reception mode between a base station and a terminal, the number of antenna ports, the number of layers, and a channel coding and modulation technique. may contain one.
  • the server may determine the transmission/reception mode, the number of antenna ports, the number of layers, the number, and the channel coding and modulation technique based on the type of the terminal requesting scheduling or the terminal to receive traffic, or the capability information of the terminal.
  • Information on latency may include a restriction on a time taken from when traffic is generated to when it is processed.
  • the information on the time delay may be different depending on the type of service generating the traffic, the type of the device, the type of the wireless communication system in which the traffic is generated, and the like.
  • the type of service that generates traffic can be largely classified into URLLC, mMTC, and eMBB in the case of an NR system, and services classified as URLLC (eg, tectile Internet service, industrial automation service, AR service, In the case of V2X service, etc.), the time delay is limited to 0.1 ⁇ 1ms, whereas for services classified as mMTC and eMBB, the time delay may be limited to 100ms.
  • the resource information is information that can directly or indirectly indicate a physical resource used for traffic processing.
  • the resource information may include, for example, the ratio of GPUs used for traffic processing among GPUs allocated to the vRAN package, the number of clock cycles used for traffic processing compared to the maximum GPU clock cycles, and the memory allocated to the vRAN package for traffic processing. size, and the like.
  • traffic information or resource information is not limited to the above-described examples.
  • Scheduling SC 351 is based on information about radio resources and time delay and available processor resources in the server 300, processor resources allocated for traffic processing in at least one pipeline of GPUs 311 to 315. related scheduling information may be determined.
  • a pipeline is a data processing structure in which the output of one data processing stage leads to the input of the next stage.
  • the scheduling SC 351 may identify available processor resources in a server for processing of traffic to be generated by one or more base stations.
  • the processor resource is a physical resource used for traffic processing, and the available processor resource means a physical resource that can be used by the server for processing traffic to be generated by the base station.
  • available processor resources may be allocated for traffic processing, the ratio of CPUs or GPUs among the total CPUs or GPUs that can be allocated for traffic processing, the number of clock cycles that can be used for traffic processing compared to the maximum GPU clock cycles, It may include the size of the available memory, etc.
  • the above-described examples are only examples, and processor resources are not limited to the above-described examples.
  • the scheduling SC 351 may obtain, from the monitoring SC 355 , resource monitoring information about a processor resource used when processing traffic generated before the scheduling request.
  • the scheduling SC 351 may predict a processor resource required for processing traffic based on information about a radio resource and time delay required for generated traffic, using the resource monitoring information.
  • the scheduling SC 351 may determine the scheduling information as allocating all processor resources necessary for processing the traffic. Also, according to another example, when a time delay required for traffic is equal to or greater than a threshold, the scheduling SC 351 may determine the scheduling information by allocating a minimum processor resource of a preset size.
  • the scheduling SC 351 processes the traffic after processing the traffic pre-allocated to at least one pipeline when the size of the processor resource allocated to the traffic exceeds the size of the processor resource available in the server.
  • Scheduling information can be determined by
  • the scheduling SC 351 indicates that the size of the processor resource allocated to the traffic exceeds the size of the available processor resources in the server, and the processing of the traffic is higher than the processing of the traffic previously allocated to at least one pipeline. If the priority is high, the scheduling information may be determined by stopping the processing of the pre-allocated traffic and processing the newly generated traffic. The priority may be determined based on the above-described time delay information, as an embodiment. In this case, the scheduling SC 351 may instruct the pipeline management SC 353 to newly create a pipeline as processing of pre-allocated traffic is stopped and available processor resources are generated.
  • the scheduling SC 351 may determine the scheduling information as processing the traffic in a new pipeline created for processing the traffic when the size of the processor resource allocated to the traffic is less than or equal to the size of the processor resources available in the server.
  • the processing is performed in parallel with the traffic being processed in the existing pipeline, so that a time delay occurring in the processing of the traffic can be reduced.
  • the pipeline SC 353 may create a new pipeline or maintain an existing pipeline based on the scheduling information received from the scheduling SC 351 .
  • the pipeline SC 353 may provide the PHY SC 345 with information about a pipeline through which traffic to be generated is to be processed, based on the scheduling information.
  • the monitoring SC 355 may monitor processor resources used in traffic processing and store the monitored information.
  • the monitoring SC 355 may provide the scheduling SC 351 with resource monitoring information regarding a processor resource used when processing traffic generated before the scheduling request.
  • FIG. 4 is a flowchart illustrating a method of scheduling processor resources in a virtualized RAN according to an embodiment.
  • the server may obtain information about traffic to be generated from one or more base stations based on a scheduling request for one or more base stations.
  • the server may obtain a scheduling request transmitted from a plurality of terminals connected to one or more base stations.
  • the scheduling request may include a message requesting allocation of a time-frequency resource so that the terminal transmits traffic to the UL, and the scheduling request may include information on traffic that the terminal intends to transmit. Specific examples of traffic information may correspond to those described above in FIG. 3 .
  • the server may receive a scheduling request including traffic information to be transmitted through DL to a plurality of terminals accessing one or more base stations from the service server.
  • the service server is a server that provides traffic related to a service used by a plurality of terminals connected to one or more base stations.
  • an origin server that stores streaming content, etc. may be included in the service server.
  • the service server is not limited to the above-described example.
  • the server may determine information about a radio resource and time delay required for the traffic based on the information about the traffic to be generated.
  • the radio resource may include at least one of a time-frequency resource for transmission and reception of traffic, a transmission/reception mode between a base station and a terminal, the number of antenna ports, the number of layers, and a channel coding and modulation technique.
  • the server may determine information about a transmission/reception mode, the number of antenna ports, layers, number, and channel coding and modulation schemes based on the type of the terminal requesting scheduling or the terminal to receive traffic or capability information of the terminal.
  • the above-described capability information of the terminal may be obtained from the server through a configuration process between the terminal and the base station, such as, for example, RRC configuration.
  • the time-frequency resource may be allocated from the server to the terminal according to the amount of traffic that the terminal intends to transmit on the UL.
  • the information on the time delay may be different depending on the type of service generating the traffic, the type of the device, the type of the wireless communication system in which the traffic is generated, and the like. For example, if the type of service that generated traffic is a V2X service, the server may determine information about the time delay of the traffic as 1 ms.
  • the server may determine scheduling information regarding a processor resource allocated for traffic processing in at least one pipeline of the processor based on the information about the radio resource and time delay and the processor resource available in the server.
  • the server may identify available processor resources at the server for processing of traffic to be generated at one or more base stations. For example, the server may acquire resource monitoring information on processor resources used when processing traffic generated before the scheduling request. The server may use the resource monitoring information to estimate the processor resource required for processing the traffic based on the radio resource and time delay information required for the generated traffic.
  • the server may determine the scheduling information by allocating all processor resources required to process the traffic.
  • the server may determine the scheduling information by allocating a minimum processor resource of a preset size when a time delay required for traffic is equal to or greater than a threshold value.
  • the server may process traffic in at least one pipeline based on the scheduling information.
  • the server may process the traffic after processing the traffic allocated in advance to at least one pipeline.
  • the server may process the traffic in a new pipeline generated for processing the traffic.
  • the server when the size of the processor resource allocated to the traffic exceeds the size of the processor resources available in the server, and the processing of the traffic has a higher priority than the processing of the traffic allocated in advance to at least one pipeline , it is possible to stop the processing of the pre-allocated traffic and process the newly generated traffic.
  • the priority may be determined based on the above-described time delay information, as an embodiment. For example, if the time delay required by the pre-allocated first traffic is 10 ms, while the time delay of the newly generated second traffic is 1 ms, the server should preferentially process the second traffic over the first traffic. can decide to do As processing of the pre-allocated traffic is stopped, the server may create a new pipeline for processing the traffic. According to another example, the server may discard data related to the stopped traffic in the existing pipeline and process the newly generated traffic.
  • FIG. 5 is a flowchart illustrating a method of scheduling processor resources in a virtualized RAN according to an embodiment.
  • the server may obtain traffic information to be generated from one or more base stations.
  • the server may obtain information about the type of service used by the terminal accessing one or more base stations as traffic information.
  • the traffic information may correspond to the traffic information described above with reference to FIG. 3 .
  • the server may acquire information about a technique of the PHY layer used for transmission and reception of traffic, or may acquire information about the amount of traffic to be generated.
  • the server may acquire information about a specification required for processing of traffic to be generated. For example, the server may obtain information regarding a required time delay for the traffic.
  • the server may determine the radio resource allocation amount of the traffic based on the traffic information.
  • the radio resource is a resource that affects the computational complexity of the PHY layer, and the radio resource allocation may increase in proportion to the complexity.
  • the server may determine a radio resource allocation amount corresponding to the V2X service.
  • the code rate in order to satisfy a low error rate (error rate), as the length of the codeword of the channel coding increases, the code rate (code rate) may be set low.
  • the server may determine the radio resource allocation based on the computational complexity of the PHY layer when transmitting and receiving traffic by applying a code rate corresponding to the required performance (requirement) of the V2X service.
  • error rate error rate
  • the code rate code rate
  • the server may determine the radio resource allocation based on the computational complexity of the PHY layer when transmitting and receiving traffic by applying a code rate corresponding to the required performance (requirement) of the V2X service.
  • this is only an example, and various PHY layer techniques may be used to determine the radio resource allocation amount.
  • the computational complexity of the PHY layer increases in proportion to the number of symbols of the demodulation reference signal (DMRS), the number of antenna ports, the number of layers, and the number of UEs, and the radio resource allocation is correspondingly increased can do.
  • DMRS demodulation reference signal
  • the server may determine a required processor resource and a scheduling method based on information about a processor resource used for previous traffic processing. For example, the server may determine a processor resource required to process the generated traffic based on information about the processor resource used for each radio resource quota of previously processed traffic.
  • the processor resource required to process the traffic to be generated may be determined by the ratio of the CPU or GPU required among all CPUs or GPUs, the number of clock cycles required to the maximum GPU clock cycle, memory size, etc., but this is only an example, and information indicating processor resources is not limited to the above example.
  • the server may determine a scheduling method.
  • the scheduling method may be classified according to information about a time delay required for traffic processing. For example, when the required time delay is less than Ams, the server may determine to perform scheduling according to the first method of allocating the entire processor resource required for processing the traffic. Also, when the time delay required for traffic is Ams or more, the server may determine to perform scheduling according to the second method of allocating a minimum processor resource of a preset size.
  • the server may determine whether the size of the necessary processor resources required for traffic processing is smaller than the size of the available processor resources.
  • the server may determine whether total processor resources required for processing traffic are smaller than the size of available processor resources.
  • the server may determine whether the minimum processor resource of a preset size is smaller than the size of the available processor resources.
  • step S525 the server may create a new pipeline.
  • the server may create a new pipeline when the required processor resource determined according to the scheduling method is smaller than the available processor resource.
  • the server may determine information on processor resource usage of traffic waiting to be processed in the existing pipeline.
  • the server may determine whether to additionally secure the available processor resource.
  • the server may determine information on processor resource usage of traffic waiting to be processed in an existing pipeline.
  • the server may determine whether the traffic can be processed in parallel based on the processor resource usage of the traffic waiting to be processed in the existing pipeline.
  • the server determines whether there is an available processor resource that can be additionally secured based on the processor resource usage of the traffic waiting to be processed in the existing pipeline. size can be compared. When the size of the processor resource required for the generated traffic is smaller than the size of the updated available processor resource, the server may determine that the traffic can be processed in parallel and create a new pipeline.
  • step S540 when it is determined that the server cannot process traffic in parallel, it may select an existing pipeline.
  • step S545 the server may allocate traffic to the pipeline.
  • the server when the server determines to allocate traffic to the existing pipeline, the server may compare priorities between traffic waiting to be processed in the existing pipeline and traffic to be generated. The server may determine the traffic to be allocated to the existing pipeline based on the priority comparison result. For example, when the time delay limit of the generated traffic is stricter than the time delay limit of the waiting traffic, the server may perform scheduling by processing the to-be-generated traffic before the waiting traffic. According to another embodiment, when the server creates a new pipeline, the server may allocate traffic to the new pipeline.
  • step S550 the server may process the traffic.
  • the traffic can be processed in parallel with the existing traffic.
  • the traffic may be processed after processing of the existing traffic.
  • the processing of the existing traffic may be stopped and the traffic may be processed.
  • FIG. 6 is a diagram of a method for scheduling processor resources in a virtualized RAN according to an embodiment.
  • traffic may be generated from each of a plurality of base stations 610 and 620 .
  • Traffic generated by the plurality of base stations 610 and 620 may be transmitted to the server 300 .
  • the server 300 is processing a physical uplink shared channel (PUSCH) #A-1 generated by the base station A 610 and PUSCH #B-1 generated by the base station B 620 .
  • PUSCH corresponds to a UL channel for data transmission, but in the present specification, for convenience of description, PUSCH is used to refer to traffic received through the PUSCH.
  • the server 300 may obtain information about the newly generated traffic PUSCH #A-2 from the base station A 610 .
  • the scheduling SC 351 may determine information on radio resources and time delay required for PUSCH #A-2. For example, the scheduling SC 351 may determine that the time/frequency axis resource allocation of PUSCH #A-2 corresponds to 8 resource blocks (RBs) and the number of layers is 2. Also, the scheduling SC 351 may determine that the time delay limit of PUSCH #A-2 is Xms.
  • the scheduling SC 351 may predict a processor resource required for processing traffic based on information about a radio resource and time delay required for generated traffic, using the resource monitoring information.
  • the resource monitoring information may be generated as a result of monitoring the processor resource used in the previous traffic processing by the monitoring SC 355 , and may include information about the processor resource used based on the radio resource allocation amount.
  • the scheduling SC 351 may allocate all processor resources necessary for processing PUSCH #A-2. Also, the scheduling SC 351 may determine whether the size of the total required processor resources is smaller than the size of the available processor resources in the GPU 345 . The scheduling SC 351 may determine to generate the pipeline when the size of the total required processor resources is smaller than the size of the available processor resources in the GPU 345 . According to the determination of the scheduling SC 351 , the pipeline management SC 353 may create a new pipeline 636 , and PUSCH #A-2 may be allocated to the new pipeline 636 . Accordingly, PUSCH #A-2 may be processed in parallel with PUSCH #A-1 and PUSCH #B-1 being processed in the existing pipelines 632 and 634 .
  • FIG. 7 is a diagram of a method for scheduling processor resources in a virtualized RAN according to an embodiment.
  • traffic may be generated from each of the plurality of base stations 710 and 720 .
  • Traffic generated by the plurality of base stations 710 and 720 may be transmitted to the server 300 .
  • the server 300 is processing PUSCH #A-1 generated by the base station A 710 and PUSCH #B-1 generated by the base station B 720 .
  • the server 300 may obtain information about the newly generated traffic PUSCH #A-2 from the base station A 710 .
  • the scheduling SC 351 may determine information on radio resources and time delay required for PUSCH #A-2. For example, the scheduling SC 351 may determine that the time/frequency axis resource allocation of PUSCH #A-2 corresponds to 8 resource blocks (RBs) and the number of layers is 2. Also, the scheduling SC 351 may determine that the time delay limit of PUSCH #A-2 is Yms.
  • the scheduling SC 351 may predict a processor resource required for processing traffic based on information about a radio resource and time delay required for generated traffic, using the resource monitoring information.
  • the resource monitoring information may be generated as a result of monitoring the processor resource used in the previous traffic processing by the monitoring SC 355 , and may include information about the processor resource used based on the radio resource allocation amount.
  • the scheduling SC 351 may allocate all processor resources necessary for processing PUSCH #A-2. Also, the scheduling SC 351 may determine whether the size of the total required processor resources is smaller than the size of the available processor resources in the GPU 345 . The scheduling SC 351 may determine to allocate PUSCH #A-2 to the existing pipeline when the size of the total required processor resources is larger than the size of the available processor resources in the GPU 345 . According to the determination of the scheduling SC 351 , the pipeline management SC 353 may allocate PUSCH #A-2 to the second pipeline 734 among the existing pipelines 732 and 734 .
  • a criterion for determining a pipeline to which traffic is allocated among existing pipelines may be the amount of traffic waiting to be processed in each pipeline, but this is only an example, and the criterion for determining a pipeline is not limited thereto.
  • PUSCH #A-2 may be processed after processing of PUSCH #B-1 being processed in the existing second pipeline 734 is completed.
  • FIG. 8 is a diagram of a method for scheduling processor resources in a virtualized RAN according to an embodiment.
  • traffic may be generated from each of the plurality of base stations 810 and 820 .
  • Traffic generated by the plurality of base stations 810 and 820 may be transmitted to the server 300 .
  • the server 300 is processing PUSCH #A-1 generated by the base station A 810 and PUSCH #B-1 generated by the base station B 820 .
  • the server 300 may obtain information about the newly generated traffic PUSCH #A-2 from the base station A 810 .
  • the scheduling SC 351 may determine information on radio resources and time delay required for PUSCH #A-2. For example, the scheduling SC 351 may determine that the time/frequency axis resource allocation of PUSCH #A-2 corresponds to 8 resource blocks (RBs) and the number of layers is 2. Also, the scheduling SC 351 may determine that the time delay limit of PUSCH #A-2 is Yms.
  • the scheduling SC 351 may predict a processor resource required for processing traffic based on information about a radio resource and time delay required for generated traffic, using the resource monitoring information.
  • the resource monitoring information may be generated as a result of monitoring the processor resource used in the previous traffic processing by the monitoring SC 355 , and may include information about the processor resource used based on the radio resource allocation amount.
  • the scheduling SC 351 may allocate all processor resources necessary for processing PUSCH #A-2. Also, the scheduling SC 351 may determine whether the size of the total required processor resources is smaller than the size of the available processor resources in the GPU 345 . The scheduling SC 351 may determine to allocate PUSCH #A-2 to the existing pipeline when the size of the total required processor resources is larger than the size of the available processor resources in the GPU 345 .
  • the scheduling SC 351 may compare the priorities of PUSCH #A-1 and PUSCH #B-1 being processed in the existing pipeline and PUSCH #A-2 to be newly generated. As an example as a criterion for determining the priority, a time delay limitation may be included. When the time delay limit of PUSCH #A-2 is shorter than the time delay limit of PUSCH #A-1, the scheduling SC 351 may stop processing PUSCH #A-1. Also, the scheduling SC 351 may determine to generate a new pipeline 836 as additional available processor resources are secured due to interruption of processing of PUSCH #A-1. Accordingly, the pipeline management SC may create a new pipeline 836 , and PUSCH #A-2 may be allocated to the new pipeline 836 . Accordingly, PUSCH #A-2 may be processed in parallel with PUSCH #B-1 being processed in the existing pipeline 834 .
  • FIG. 9 is a diagram of a method for scheduling processor resources in a virtualized RAN according to an embodiment.
  • traffic may be generated from each of the plurality of base stations 910 and 920 .
  • Traffic generated by the plurality of base stations 910 and 920 may be transmitted to the server 300 .
  • the server 300 is processing a physical uplink shared channel (PUSCH) #A1 generated by the base station A 910 and a PUSCH #B-1 generated by the base station B 920 .
  • PUSCH corresponds to a UL channel for data transmission, but in the present specification, for convenience of description, PUSCH is used to refer to traffic received through the PUSCH.
  • the server 300 may obtain information about the newly generated traffic PUSCH #A-2 from the base station A 910 and the newly generated traffic PUSCH #B-2 from the base station B 920 .
  • the scheduling SC 351 performs radio resources and time delay required for PUSCH #A-2 and PUSCH #B-2. information can be determined.
  • the time/frequency axis resource allocation of PUSCH #A-2 corresponds to 8 RBs
  • the number of layers is 2
  • the time/frequency axis resource allocation of PUSCH #A-2 is 8 RBs.
  • the scheduling SC 351 may determine that the time delay limitation of PUSCH #A-2 is Mms and that the time delay limitation of PUSCH #B-2 is Nms.
  • the scheduling SC 351 may predict a processor resource required for processing traffic based on information about a radio resource and time delay required for generated traffic, using the resource monitoring information.
  • the resource monitoring information may be generated as a result of monitoring the processor resource used in the previous traffic processing by the monitoring SC 355 , and may include information about the processor resource used based on the radio resource allocation amount.
  • the scheduling SC 351 may allocate a minimum processor resource of a preset size when the time delay required for PUSCH #A-2 is equal to or greater than a threshold value. Also, when the time delay required for PUSCH #B-2 is equal to or greater than a threshold, the scheduling SC 351 may allocate a minimum processor resource of a preset size. The scheduling SC 351 may determine whether the size of the minimum processor resource required to be allocated for PUSCH #A-2 and PUSCH #B-2 is smaller than the size of the processor resource available in the GPU 345 . The scheduling SC 351 determines to generate a pipeline when the size of the minimum processor resource required to be allocated for PUSCH #A-2 and PUSCH #B-2 is smaller than the size of the processor resource available in the GPU 345 .
  • the pipeline management SC 353 creates a new pipeline 936 , and presets for PUSCH #A-2 and PUSCH #B-2 in the new pipeline 936 .
  • a minimum processor resource of size may be allocated.
  • the minimum processor resources of PUSCH #A-2 and PUSCH #B-2 allocated to the new pipeline 936 are parallel to PUSCH #A-1 and PUSCH #B-1 being processed in the existing pipelines 632 and 634 . can be treated as
  • FIG. 9 illustrates that the remaining processor resources except for the minimum processor resources of preset sizes in PUSCH #A-2 and PUSCH #B-2 are allocated to the existing pipelines 932 and 934, but this is only an example, and the remaining Processor resources may also be allocated to the new pipeline 936 .
  • FIG. 10 is a diagram for describing a time delay occurring during traffic processing in a virtualized RAN according to an embodiment.
  • the server 300 may obtain respective traffic information from a base station A 1010 and a base station B 1020 .
  • the server 300 may obtain information about PUSCH #3 and PUSCH #4 from the base station A 1010 and the base station B 1020 .
  • the scheduling SC 351 may determine information about radio resources and time delay required for PUSCH #3 and PUSCH #4. For example, the scheduling SC 351 determines the length of codewords used for channel coding of PUSCH #3 and PUSCH #4, the number of symbols constituting the DMRS used for channel estimation, the number of data symbols used for channel equalization, the layer The radio resource allocation amount may be determined based on the number or the like. In addition, the scheduling SC 351 has a time delay limit of 10 PUSCH #3. s, and the time delay limit of PUSCH #4 is 50 It can be determined that s is
  • the scheduling SC 351 may use the resource monitoring information obtained from the monitoring SC 355 to predict the processor resources required for processing the traffic based on the radio resource and time delay information required for the traffic to be generated. .
  • the scheduling SC 351 may determine a scheduling method by determining whether a time delay required for each of PUSCH #3 and PUSCH #4 is less than a threshold value. In the embodiment shown in FIG. 10 , it is assumed that a time delay required for each of PUSCH #3 and PUSCH #4 is less than a threshold value. In this case, the scheduling SC 351 may allocate all processor resources required for processing each of PUSCH #3 and PUSCH #4.
  • the scheduling SC 351 may determine whether the size of the processor resource that needs to be allocated for PUSCH #3 and PUSCH #4 is smaller than the size of the processor resource available in the GPU.
  • the size of the processor resource required to be allocated for each of PUSCH #3 and PUSCH #4 may be determined as 40 stream multiprocessors (SM) and 60 SMs.
  • the SM may include a plurality of cores for executing a program code for traffic processing, at least one cache memory, and a plurality of registers.
  • the scheduling SC 351 may determine to generate the pipeline when the size of the required processor resource is smaller than the size of the available processor resource.
  • the server 300 may perform processing on previously allocated PUSCH #1 and PUSCH #2, and among all processor resources, except for processor resources used for processing PUSCH #1 and PUSCH #2, the remaining available processor resources can be determined as In the embodiment shown in FIG. 10 , each of the required processor resources for PUSCH #3 and the required processor resources for PUSCH #4 is smaller than the size of the available processor resources, but the size of the sum of the required processor resources is greater than the size of the available processor resources. assumed to be large.
  • the scheduling SC 351 may select traffic having a relatively shorter time delay limitation from among PUSCH #3 and PUSCH #4, and perform scheduling such that the selected traffic is preferentially processed.
  • the scheduling SC 351 has a time delay limit of 10 PUSCH #3 with s and a time delay limit of 50 PUSCH #3 may be selected among PUSCH #4 that is s.
  • the pipeline management SC 353 may create a new pipeline in GPU #2 in which available processor resources exist among GPU #1 1030 and GPU #2 1040 .
  • PUSCH #3 may be allocated to a new pipeline, and PUSCH #3 may be processed in parallel with PUSCH #2.
  • the scheduling SC 351 may allocate PUSCH #4 to the pipeline of GPU #1 1030 .
  • the remaining processing time of PUSCH #1 allocated to GPU #1 (1030) is 10 s, while the remaining processing time of PUSCH #2 is 100
  • the scheduling SC 351 may allocate PUSCH #4 to the pipeline of GPU #1 1030 having a relatively short remaining processing time.
  • PUSCH #4 may be processed in the pipeline of GPU #1 1030 after PUSCH #1 is processed.
  • 11 is a diagram for describing a method of scheduling processor resources for processing traffic having different time delay restrictions in vRAN according to an embodiment.
  • the server 300 may obtain traffic information from a plurality of base stations 1110 , 1120 , and 1130 .
  • the server 300 may obtain information about a service type that generated traffic as traffic information.
  • the scheduling SC 351 in the server 300 receives the traffic generated in the URLLC service from the base station A 1110 and the traffic generated in the eMBB service from the base station B 1120 through the obtained information, and the base station It can be confirmed that traffic generated from the mMTC service and the eMBB service is scheduled to be received from C 1130 .
  • eMBB traffic traffic generated by the eMBB service
  • mMTC traffic traffic generated by the mMTC service
  • URLLC traffic traffic generated by the URLLC service
  • Scheduling SC 351 may determine information regarding time delay and radio resources required for eMBB traffic, mMTC traffic, and URLLC traffic. For example, the scheduling SC 351 may determine the radio resource allocation based on requirements (eg, data rate, error rate, connectivity) of eMBB traffic, mMTC traffic, and URLLC traffic. In addition, the scheduling SC 351 may determine information on time delays of eMBB traffic, mMTC traffic, and URLLC traffic.
  • requirements eg, data rate, error rate, connectivity
  • the scheduling SC 351 may determine information on time delays of eMBB traffic, mMTC traffic, and URLLC traffic.
  • the scheduling SC 351 may use the resource monitoring information obtained from the monitoring SC 355 to predict the processor resources required for processing the traffic based on the radio resource and time delay information required for the traffic to be generated. .
  • the scheduling SC 351 may determine a scheduling method by determining whether a time delay required for each of the eMBB traffic, mMTC traffic, and URLLC traffic is less than a threshold value.
  • the scheduling SC 351 may determine the scheduling information by allocating all of the processor resources required for processing the URLLC traffic to the pipelines 1142 , 1144 , and 1146 as the time delay of the URLLC traffic is less than a threshold value. In addition, in the case of eMBB traffic and mMTC traffic, the scheduling SC 351 determines scheduling information by allocating a minimum processor resource of a preset size to the pipelines 1142 , 1144 , and 1146 as the time delay is equal to or greater than a threshold value.
  • the scheduling SC 351 may determine whether the size of the processor resource required to be allocated for the URLLC traffic, the eMBB traffic, and the mMTC traffic is smaller than the size of the processor resources available in the GPU. When the total sum of processor resources required for processing URLLC traffic, eMBB traffic, and mMTC traffic is larger than the size of available processor resources in the GPU, the scheduling SC 351 performs parallel processing in consideration of the time delay limit of each traffic. You can select the traffic you want to handle. For example, since the time delay limit of the URLLC traffic and the eMBB traffic is relatively shorter than the time delay limit of the mMTC traffic, the scheduling SC 351 processes the mMTC traffic after the processing of any one of the URLLC traffic and the eMBB traffic is completed.
  • the scheduling SC 351 may determine to allocate the mMTC traffic to the second pipeline 1144 to which the URLLC traffic is allocated. Accordingly, the pipeline management SC 353 may allocate the mMTC traffic to the second pipeline 1144 , and the mMTC traffic may be processed after the URLLC traffic is processed.
  • FIG. 12 is a diagram of a virtualized RAN scheduling processor resources according to an embodiment.
  • the server 1200 may include hardware 1210 capable of running software for performing a vRAN function.
  • the server 1200 may include a CPU, RAM, storage, and NIC in addition to the GPU, but components other than the GPU are omitted for convenience of description.
  • a plurality of GPUs 1211 to 1215 are included in the server 1200 in the embodiment of FIG. 12 , this is only an example and the server 1200 may include one GPU.
  • the server 1200 may include an OS 120 , virtualization software 1230 , and a virtualization master 1270 .
  • the vRAN package 1240 may obtain scheduling requests for one or more base stations.
  • the scheduling request is obtained when the terminal requests allocation of time-frequency resources to the base station to transmit UL traffic to the base station according to one embodiment, or, according to another embodiment, the service server to a plurality of terminals accessing the base station It may be obtained to provide traffic information to be transmitted on the DL.
  • the vRAN package 1240 may include an RLC SC 1241 , a MAC SC 1243 , and a PHY SC 1245 .
  • traffic generated due to application execution using a mobile edge computing (MEC) service may be delivered to the MEC package 1250 .
  • the MEC package 1250 may execute an edge application and process traffic generated due to the execution of the edge application or traffic received in connection with the edge application.
  • the edge application may be executed on the edge data network, and the edge data network provides content that is at least partially identical to the content provided by the external server, which is located inside or geographically close to the base station of the 3GPP network to which the terminal is connected. can do.
  • traffic that does not use the MEC service may be transferred to another server outside the server 1200 , and in the present disclosure, another server outside the server 1200 processes traffic. A description of the method will be omitted.
  • the MEC package 1250 may include an edge enabler SC 1255 and a plurality of edge app SCs 1251 and 1253 .
  • the plurality of edge app SCs 1251 and 1253 is an application application provided by a third party in an edge data network that provides MEC service to the terminal, and may form a data session with the application client in order to transmit and receive data related to the application client.
  • the edge enabler SC 1255 may provide a service to edge applications included in the edge data network, and may provide information about the MEC service.
  • the scheduling SC 1261 may determine information about a radio resource and time delay required for the traffic based on the information about the traffic received from the vRAN package. Scheduling SC 1261 is based on information about radio resources and time delays and processor resources available in server 1200, processor resources allocated for traffic processing in at least one pipeline of GPUs 1211 to 1215. related scheduling information may be determined.
  • the server may identify available processor resources at the server for processing of traffic to be generated at one or more base stations.
  • the scheduling SC 1261 may obtain resource monitoring information about a processor resource used in processing traffic generated before the scheduling request from the GPU monitoring SC 1265 .
  • the scheduling SC 1261 may use the resource monitoring information to predict a processor resource required for processing traffic based on information about a time delay and a radio resource required for the traffic to be generated.
  • the scheduling SC 1261 may determine the scheduling information as allocating all processor resources necessary for processing the traffic. Also, according to another example, when a time delay required for traffic is equal to or greater than a threshold, the scheduling SC 1261 may determine the scheduling information by allocating a minimum processor resource of a preset size.
  • the scheduling SC 1261 may check the size of the traffic waiting for processing in the MEC package 1250 . As a result of checking the size of the traffic waiting in the MEC package 1250 , the scheduling SC 1261 determines that the processor resources allocated for the MEC package 1250 may be reduced, the processor resources previously allocated to the MEC package 1250 . can reduce
  • the pipeline management SC 1263 may create a new pipeline.
  • the pipeline SC 1263 may create a new pipeline or maintain an existing pipeline based on the scheduling information received from the scheduling SC 1261 .
  • the pipeline SC 1263 may provide the PHY SC 1245 with information about a pipeline through which traffic to be generated is to be processed, based on the scheduling information.
  • the GPU monitoring SC 1265 may monitor processor resources used in traffic processing and store the monitored information.
  • the GPU monitoring SC 1265 may provide the scheduling SC 1261 with resource monitoring information regarding a processor resource used when processing traffic generated before the scheduling request.
  • FIG. 13 is a diagram of a method for a server to schedule processor resources based on traffic to be generated in an MEC package and a vRAN package according to an embodiment.
  • the server may check the size of the vRAN GPU resource 1310 currently allocated for the vRAN package and the MEC GPU resource 1320 allocated for the MEC package. In addition, the server may obtain information about traffic to be generated in the vRAN package and traffic to be generated in the MEC package.
  • the server may confirm that the traffic to be generated by the vRAN package will be reduced compared to the traffic currently being processed.
  • the server may accordingly estimate that only 40% of the GPU resources currently allocated for the vRAN package will be used, and may adjust the GPU resources allocated for each of the vRAN package and the MEC package accordingly.
  • the server may reduce the size of the vRAN GPU resource 1310 allocated for the vRAN package as traffic to be generated in the vRAN package is predicted to decrease.
  • the server may process traffic generated from the vRAN package and the MEC package through the coordinated vRAN GPU resource 1315 and the MEC GPU resource 1325 , respectively.
  • FIG. 14 is a diagram of an AI model used to schedule processor resources in vRAN according to an embodiment.
  • the server described above with reference to FIG. 14 may train the AI model 1400 based on a result of comparing the output data and evaluation data obtained as a result of the aforementioned input data being applied to the AI model 1400 .
  • the server may apply various input data to the AI model 1400 until the difference between the output data and the evaluation data is less than a preset threshold value.
  • the server may train the AI model 1200 by applying the difference value between the output data and the evaluation data together with the input data to the AI model 1400 .
  • the values of parameters of the layers constituting the neural network of the AI model 1400 may be updated.
  • the server may acquire scheduling information by inputting newly acquired information on required radio resource allocation amount, allowed time delay, and available processor resources to the trained AI model 1400 .
  • the scheduling information may be the same as described above with reference to FIG. 3 .
  • Each component of the block diagram may be integrated, added, or omitted according to the specifications of the actually implemented device. That is, two or more components may be combined into one component, or one component may be subdivided into two or more components as needed.
  • the function performed in each block is for describing the embodiments, and the specific operation or device does not limit the scope of the present invention.
  • a computer-readable storage medium storing one or more programs (software modules) may be provided.
  • One or more programs stored in the computer-readable storage medium are configured to be executable by one or more processors in an electronic device (device).
  • One or more programs include instructions for causing an electronic device to execute methods according to embodiments described in a claim or specification of the present disclosure.
  • Such programs include random access memory, non-volatile memory including flash memory, read only memory (ROM), electrically erasable programmable ROM (EEPROM: Electrically Erasable Programmable Read Only Memory), magnetic disc storage device, Compact Disc-ROM (CD-ROM), Digital Versatile Discs (DVDs), or any other form of It may be stored in an optical storage device or a magnetic cassette. Alternatively, it may be stored in a memory composed of a combination of some or all thereof. In addition, each configuration memory may be included in plurality.
  • the program accesses through a communication network composed of a communication network such as the Internet, Intranet, Local Area Network (LAN), Wide LAN (WLAN), or Storage Area Network (SAN), or a combination thereof. It may be stored in an attachable storage device that can be accessed. Such a storage device may be connected to a device implementing an embodiment of the present disclosure through an external port. In addition, a separate storage device on the communication network may be connected to the device implementing the embodiment of the present disclosure.
  • a communication network such as the Internet, Intranet, Local Area Network (LAN), Wide LAN (WLAN), or Storage Area Network (SAN), or a combination thereof. It may be stored in an attachable storage device that can be accessed.
  • Such a storage device may be connected to a device implementing an embodiment of the present disclosure through an external port.
  • a separate storage device on the communication network may be connected to the device implementing the embodiment of the present disclosure.
  • each of the above embodiments may be operated in combination with each other as needed.
  • the base station and the terminal may be operated by combining parts of one embodiment and another embodiment of the present disclosure.
  • other modifications based on the technical idea of the above embodiments may be implemented in various systems such as FDD LTE system, TDD LTE system, 5G or NR system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

무선 접속 네트워크 기능을 수행하는 기술이 제공된다. 본 개시의 일 실시예에 따르면, 서버는 하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득하고, 발생될 트래픽에 관한 정보에 기초하여, 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정하며, 무선 자원 및 시간 지연에 관한 정보와 서버에서의 가용 프로세서 자원을 기초로, 프로세서의 적어도 하나의 파이프라인에서 상기 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정하고, 스케줄링 정보에 기초하여, 적어도 하나의 파이프라인에서 트래픽을 처리할 수 있다.

Description

무선 접속 네트워크 기능을 수행하는 방법 및 장치
본 개시는 무선 접속 네트워크 기능을 수행하는 방법 및 그 장치에 관한 것이다.
4G 통신 시스템 상용화 이후 증가 추세에 있는 무선 데이터 트래픽 수요를 충족시키기 위해, 개선된 5G 통신 시스템 또는 pre-5G 통신 시스템을 개발하기 위한 노력이 이루어지고 있다. 이러한 이유로, 5G 통신 시스템 또는 pre-5G 통신 시스템은 4G 네트워크 이후 (Beyond 4G Network) 통신 시스템 또는 LTE 시스템 이후 (Post LTE) 이후의 시스템이라 불리어지고 있다.
시스템의 네트워크 개선을 위해, 5G 통신 시스템에서는 진화된 소형 셀, 개선된 소형 셀 (advanced small cell), 클라우드 무선 액세스 네트워크 (cloud radio access network: cloud RAN), 초고밀도 네트워크 (ultra-dense network), 기기 간 통신 (Device to Device communication: D2D), 무선 백홀 (wireless backhaul), 이동 네트워크 (moving network), 협력 통신 (cooperative communication), CoMP (Coordinated Multi-Points), 및 수신 간섭제거 (interference cancellation) 등의 기술 개발이 이루어지고 있다.
한편, 인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 사물인터넷(Internet of Things, 이하 IoT) 망으로 진화하고 있다. 클라우드 서버 등과의 연결을 통한 빅데이터(Big data) 처리 기술 등이 IoT 기술에 결합된 IoE (Internet of Everything) 기술도 대두되고 있다. IoT 환경에서는 연결된 사물들에서 생성된 데이터를 수집, 분석하여 인간의 삶에 새로운 가치를 창출하는 지능형 IT(Internet Technology) 서비스가 제공될 수 있다. IoT는 기존의 IT(Information Technology)기술과 다양한 산업 간의 융합 및 복합을 통하여 스마트홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 스마트 그리드, 헬스 케어, 스마트 가전, 첨단의료서비스 등의 분야에 응용될 수 있다.
이에, 5G 통신 시스템을 IoT 망에 적용하기 위한 다양한 시도들이 이루어지고 있다. 예를 들어, 센서 네트워크(sensor network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication)등의 5G 통신이 빔 포밍, MIMO, 및 어레이 안테나 등의 기법에 의해 구현되고 있는 것이다. 앞서 설명한 빅데이터 처리 기술로써 클라우드 무선 접속 네트워크(cloud RAN)가 적용되는 것도 5G 기술과 IoT 기술 융합의 일 예라고 할 수 있을 것이다.
상술한 것과 무선 통신 시스템의 발전에 따라 다양한 기술이 적용될 수 있게 됨으로써, 이러한 다양한 기술을 통해 무선 접속 네트워크를 효율적으로 관리하기 위한 방안이 요구되고 있다.
전술한 정보는 본 개시의 이해를 돕기 위한 배경 기술로서 기술된 것이다. 전술한 내용들 중 어떠한 내용이 본 개시에 관한 선행 기술로서 적용될 수 있는지는 결정되지 않았으며, 이에 대해 어떠한 주장도 이루어지지 않았다.
본 개시의 측면들은 위에서 언급된 문제 및/또는 단점을 해결하고 적어도 아래에서 설명되는 이점을 제공하는 것이다. 본 개시의 일 측면은 무선 통신 시스템에서 무선 접속 네트워크 기능을 수행하기 위한 방법 및 장치를 제공하는 것이다.
추가적인 측면들은, 다음의 설명의 일 부분을 통해 설명될 것이고, 다음의 설명의 일 부분으로부터 명백할 것이며, 또는 개시된 실시예들의 실행에 의해 학습될 수 있다.
무선 접속 네트워크 기능을 수행하는 기술이 제공된다. 본 개시의 일 실시예에 따르면, 서버는 하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득하고, 발생될 트래픽에 관한 정보에 기초하여, 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정하며, 무선 자원 및 시간 지연에 관한 정보와 서버에서의 가용 프로세서 자원을 기초로, 프로세서의 적어도 하나의 파이프라인에서 상기 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정하고, 스케줄링 정보에 기초하여, 적어도 하나의 파이프라인에서 트래픽을 처리할 수 있다.
본 개시 내용의 상기 측면 및 다른 측면들, 특징들 및 이점들은 첨부된 도면들과 동반된 다음의 설명으로부터 더욱 명백할 것이며, 여기서:
도 1은 본 개시의 일 실시예에 따라 cRAN(centralized/cloud radio access network)의 구조를 설명하기 위한 도면이다.
도 2는 본 개시의 일 실시예에 따라 RAN의 가상화 방법을 설명하기 위한 도면이다.
도 3은 본 개시의 일 실시예에 따라 프로세서 자원을 스케줄링하는 가상화된 RAN을 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링 방법을 설명하기 위한 흐름도이다.
도 5는 본 개시의 다른 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 흐름도이다.
도 6은 본 개시의 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 도면이다.
도 8은 본 개시의 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시예에 따른 가상화된 RAN에서의 트래픽 처리 시 발생하는 시간 지연에 대해 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 vRAN에서 시간 지연 제한이 상이한 트래픽들의 처리를 위해 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 도면이다.
도 12는 본 개시의 일 실시예에 따라 프로세서 자원을 스케줄링하는 가상화된 RAN을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시예에 따른 서버가 MEC 패키지 및 vRAN 패키지에서 발생될 트래픽을 기초로 프로세서 자원을 스케줄링 하는 방법을 설명하도록 한다.
도 14는 본 개시의 일 실시예에 따라 vRAN 에서 프로세서 자원을 스케줄링하는데 이용되는 AI 모델을 설명하기 위한 도면이다.
도면 전체에 걸쳐, 유사한 참조 번호는 유사한 부분들, 구성요소들 및 구조들을 지칭하는 것으로 이해될 것이다.
본 개시의 일 실시예에 따른 서버가 무선 접속 네트워크(radio access network) 기능을 수행하는 방법이 제공된다. 상기 방법은, 하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 상기 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득하는 단계; 발생될 트래픽에 관한 정보에 기초하여, 상기 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 결정하는 단계; 무선 자원 및 시간 지연에 관한 정보와 서버에서의 가용 프로세서 자원을 기초로, 프로세서의 적어도 하나의 파이프라인에서 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정하는 단계; 및 스케줄링 정보에 기초하여, 적어도 하나의 파이프라인에서 트래픽을 처리하는 단계를 포함할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 스케줄링 정보를 결정하는 단계는, 트래픽에 대해 요구되는 시간 지연이 임계값 미만인 경우, 트래픽의 처리에 필요한 전체 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정하고, 트래픽에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 트래픽을 처리하는 단계는, 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기를 초과하는 경우, 적어도 하나의 파이프라인에 미리 할당된 트래픽 처리 이후에, 트래픽을 처리하고, 트래픽에 할당되는 프로세서 자원의 크기가 상기 서버에서의 가용 프로세서 자원의 크기 이하인 경우, 트래픽의 처리를 위해 생성된 신규 파이프라인에서 트래픽을 처리할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 트래픽을 처리하는 단계는, 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기를 초과하고, 트래픽의 처리가 상기 적어도 하나의 파이프라인에 미리 할당된 트래픽의 처리보다 우선 순위가 높은 경우, 미리 할당된 트래픽의 처리를 중단하고, 트래픽을 처리할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 트래픽을 처리하는 단계는, 미리 할당된 트래픽의 처리가 중단됨에 따라, 트래픽의 처리를 위해 신규 파이프라인을 생성하는 단계; 및 생성된 신규 파이프라인에서 트래픽을 처리하는 단계를 포함할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법은, 스케줄링 요청 이전에 발생된 트래픽을 처리하는데 요구된 프로세서 자원에 관한 자원 모니터링 정보를 획득하는 단계를 더 포함하고, 스케줄링 정보를 결정하는 단계는. 자원 모니터링 정보를 이용하여, 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 결정하는 단계를 포함할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 기지국에서 발생될 트래픽에 관한 정보는, 기지국에서 발생될 트래픽의 크기 및 타입에 관한 정보를 포함하고, 트래픽의 타입은, 트래픽을 발생시킨 각 서비스 별로 요구되는 데이터 전송 속도, 전송 지연(latency) 및 최대 연결 수(connection density) 중 적어도 하나의 성능에 따라 분류될 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 발생될 트래픽에 관한 정보를 획득하는 단계는, 스케줄링 요청 이전의 서버에서의 트래픽 처리 정보를 기초로 트래픽의 타입 별로 발생된 트래픽의 패턴을 식별하는 단계; 및 식별된 트래픽의 패턴에 기초하여, 기지국에서 발생될 트래픽에 관한 정보를 획득하는 단계를 포함할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 무선 자원에 관한 정보는, 트래픽의 송수신을 위한 시간-주파수 자원, 상기 기지국과 단말 간의 송수신 모드, 안테나 포트 수, 레이어, 채널 코딩 및 모듈레이션 기법 중 적어도 하나에 관한 정보를 포함할 수 있다.
일 실시예에 따른 서버가 무선 접속 네트워크 기능을 수행하는 방법에 있어서, 스케줄링 정보를 결정하는 단계는. 기 생성된 학습 네트워크 모델을 이용하여, 무선 자원 및 시간 지연에 관한 정보와 서버에서의 가용 프로세서 자원을 기초로, 프로세서 자원에 관한 스케줄링 정보를 결정할 수 있다.
본 개시의 일 실시예에 따라 무선 접속 네트워크(radio access network) 기능을 수행하는 서버가 제공될 수 있다. 상기 서버는 송수신부; 하나 이상의 인스트럭션들을 저장하는 메모리; 및 메모리에 저장된 하나 이상의 인스트럭션들을 실행하는 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로세서는, 하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득하고, 발생될 트래픽에 관한 정보에 기초하여, 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 결정하며, 무선 자원 및 시간 지연에 관한 정보와 서버에서의 가용 프로세서 자원을 기초로, 프로세서의 적어도 하나의 파이프라인에서 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정하고, 스케줄링 정보에 기초하여, 적어도 하나의 파이프라인에서 트래픽을 처리할 수 있다.
본 개시의 다른 측면, 이점, 및 두드러진 특징들은 첨부된 도면들과 관련하여 다양한 실시예를 개시하는 다음의 상세한 설명으로부터 당업자에게 자명할 수 있다.
첨부된 도면을 참조한 다음의 설명은 청구범위 및 그 균등물에 의해 정의된 바와 같은 본 개시내용의 다양한 실시양태의 포괄적인 이해를 돕기 위해 제공된다. 여기에는 이해를 돕기 위한 다양한 특정 세부 사항이 포함되어 있지만 이는 단지 예시적인 것으로 간주되어야 합니다. 따라서, 본 기술분야의 통상의 지식을 가진 자는 본 개시의 범위 및 사상을 벗어나지 않고 본 명세서에 기술된 다양한 실시예의 다양한 변경 및 수정이 이루어질 수 있음을 인식할 것이다. 또한, 명료함과 간결함을 위해 잘 알려진 기능 및 구성에 대한 설명은 생략할 수 있다.
하기 설명 및 청구범위에서 사용된 용어 및 단어는 서지적 의미에 제한되지 않으며, 본 개시의 명확하고 일관된 이해를 가능하게 하기 위해 사용하였다. 따라서, 본 개시의 다양한 실시예에 대한 다음의 설명은 단지 예시의 목적으로 제공되고 첨부된 청구범위 및 그 균등물에 의해 정의된 바와 같은 본 개시를 제한하기 위한 것이 아님이 당업자에게 명백하다.
단수 형태는 문맥이 명백하게 달리 지시하지 않는 한 복수 지시 대상을 포함하는 것으로 이해되어야 한다. 따라서, 예를 들어 "구성요소 표면"에 대한 언급은 그러한 표면들 중 하나 이상에 대한 언급을 포함한다.
본 개시에서, "a, b 또는 c 중 적어도 하나" 표현은 " a", " b", " c", "a 및 b", "a 및 c", "b 및 c", "a, b 및 c 모두", 혹은 그 변형들을 지칭할 수 있다.
이하 본 개시의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 실시예를 설명함에 있어서 본 개시가 속하는 기술 분야에 익히 알려져 있고 본 개시와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 개시의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.
마찬가지 이유로 첨부된 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성 요소에는 동일한 참조 번호를 부여하였다.
본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시의 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
본 개시에서 '~부'라는 용어는 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다. 또한 실시예에서 '~부'는 하나 이상의 프로세서를 포함할 수 있다.
무선 통신 시스템은 초기의 음성 위주의 서비스를 제공하던 것에서 벗어나 예를 들어, 3GPP의 HSPA(High Speed Packet Access), LTE(Long Term Evolution 또는 E-UTRA (Evolved Universal Terrestrial Radio Access)), LTE-Advanced (LTE-A), 3GPP2의 HRPD(High Rate Packet Data), UMB(Ultra Mobile Broadband), 및 IEEE의 802.16e 등의 통신 표준과 같이 고속, 고품질의 패킷 데이터 서비스를 제공하는 광대역 무선 통신 시스템으로 발전하고 있다. 또한, 차세대 무선 통신 시스템으로 5G 또는 NR (new radio)의 무선 통신 시스템이 만들어지고 있다.
차세대 무선 통신 시스템에서는, eMBB(enhanced Mobile BroadBand), mMTC (massive Machine Type Communications) 및 URLLC(Ultra-Reliable and Low-Latency Communications) 중 적어도 하나의 서비스가 단말에 제공될 수 있다. 이러한 서비스들은 동일한 시구간 동안에 동일한 단말 또는 서로 다른 단말에 제공될 수 있다. eMBB는 고용량 데이터의 고속 전송, mMTC는 단말 전력 최소화와 다수 단말의 접속, URLLC는 고신뢰도와 저지연을 목표로 하는 서비스일 수 있으나 이에 제한되지는 않는다. 이러한 서비스는 LTE 시스템 또는 LTE 이후의 5G/NR(new radio, next radio) 등의 무선 통신 시스템에서 주요한 시나리오일 수 있다.
이하 설명의 편의를 위하여, 본 개시는 3GPP(3rd Generation Partnership Project Long Term Evolution) 규격에서 정의하고 있는 용어 및 명칭들, 혹은 이를 기반으로 변형한 용어 및 명칭들을 사용한다. 하지만, 본 개시가 상술된 용어 및 명칭들에 의해 한정되는 것은 아니며, 다른 규격에 따르는 무선 통신 시스템에도 동일하게 적용될 수 있다. 예를 들어, 5세대 무선 통신 기술(5G, new radio, NR) 시스템을 일례로 들어, 본 개시의 실시예를 설명하지만, 유사한 기술적 배경 또는 채널형태를 갖는 여타의 무선 통신 시스템에도 본 개시의 일 실시예가 적용될 수 있다. 다른 예에 따라, NR 이전의 무선 통신 시스템인 LTE 또는 LTE-A에 본 개시의 실시예가 적용될 수 있으며, 더 나아가 NR 이후에 개발되는 무선 통신 시스템에도 본 개시의 실시예가 적용될 수 있다. 나아가, 숙련된 기술적 지식을 가진 자의 판단으로써 본 개시의 범위를 크게 벗어나지 아니하는 범위에서 일부 변형을 통해 본 개시의 실시예를 다른 무선 통신 시스템에도 적용할 수도 있다.
본 개시에서 사용되는 접속 노드(node)를 식별하기 위한 용어, 망 객체(network entity)들을 지칭하는 용어, 메시지들을 지칭하는 용어, 망 객체들 간 인터페이스를 지칭하는 용어, 다양한 식별 정보들을 지칭하는 용어 등은 설명의 편의를 위해 예시된 것이다. 따라서, 본 개시가 후술되는 용어들에 한정되는 것은 아니며, 동등한 기술적 의미를 가지는 대상을 지칭하는 다른 용어가 사용될 수 있다.
본 개시에서, 기지국은 단말의 자원할당을 수행하는 주체로서, gNode B, eNode B, Node B, BS (Base Station), 무선 접속 유닛, 기지국 제어기, 또는 네트워크 상의 노드 중 적어도 하나일 수 있다.
본 개시에서, 단말은 UE (User Equipment), MS (Mobile Station), 셀룰러폰, 스마트폰, 컴퓨터, 또는 통신기능을 수행할 수 있는 멀티미디어시스템을 포함할 수 있다.
본 개시에서 셀은 무선 통신에서 하나의 기지국이 포괄하는 지역을 나타낼 수 있다. 셀은 크기에 따라 메가 셀(mega cell), 매크로 셀(macro cell), 마이크로 셀(micro cell) 및 피코 셀(pico cell) 등으로 분류될 수 있으나, 이는 일 예일 뿐, 셀의 종류가 전술한 바에 한정되는 것은 아니다.
본 개시에서, 하향링크(Downlink; DL)는 기지국이 단말에게 전송하는 신호의 무선 전송 경로이고, 상향링크는(Uplink; UL)는 단말이 기국에게 전송하는 신호의 무선 전송 경로를 의미한다. 보다 구체적으로 설명하면, 광대역 무선 통신 시스템의 대표적인 예로, LTE 시스템에서는 하향링크(Downlink; DL)에서는 OFDM(Orthogonal Frequency Division Multiplexing) 방식을 채용하고 있고, 상향링크(Uplink; UL)에서는 SC-FDMA(Single Carrier Frequency Division Multiple Access) 방식을 채용하고 있다. 상향링크는 단말(terminal 또는 User Equipment, UE) 또는 Mobile Station(MS)이 기지국(gNode B, 또는 base station(BS)으로 데이터 또는 제어신호를 전송하는 무선링크를 뜻하고, 하향링크는 기지국이 단말로 데이터 또는 제어신호를 전송하는 무선링크를 뜻한다.
도 1은 본 개시의 일 실시예에 따른 cRAN(centralized/cloud radio access network)의 구조의 도면이다.
도 1을 참조하면, cRAN에서는 기존에 기지국에 포함된 무선 송수신부(RU, radio unit)와 데이터 처리부(DU, data unit)가 분리되어, 무선 송수신부(예를 들어, 111)는 셀 사이트의 기지국(예를 들어, 111)에 위치하고, 데이터 처리부(120, 예를 들어, 121)는 중앙 서버에 위치할 수 있다. 셀은 무선 통신 시스템에서 기지국이 포괄하는 지역에 해당하고, 기지국당 적어도 하나의 셀이 존재할 수 있다. 무선 송수신부와 데이터 처리부가 모두 셀 사이트에 존재하는 일체형 기지국과는 달리, cRAN에서는 무선 송수신부들이 셀 사이트의 기지국들(111, 113, 115, 117, 119)에 배치되고, 데이터 처리부들(121, 123, 125)이 한 곳에 모아져 무선 접속 네트워크 기능들 중 적어도 일부를 실행할 수 있다. 무선 접속 네트워크 기능들에 대한 설명은 후술하도록 한다. cRAN은 데이터 처리부들(121, 123, 125)을 한 곳에 모아 관리함으로써 셀 간 간섭을 용이하게 조정할 수 있을 뿐만 아니라, 협력 통신(CoMP, coordinated multi-point transmission and reception) 등의 서비스를 제공할 수 있다.
셀 사이트의 기지국들은 RF 장치 등을 포함할 수 있으며, 프론트홀 (fronthaul)을 통해 신호를 데이터 처리부(예를 들어, 121)로 전달할 수 있다. 프론트홀은 셀 사이트의 하나 이상의 기지국을 데이터 처리부(예를 들어, 121)에 연결하는 네트워크 부분으로서, DSP(digital signal processing), 전력 증폭 및 필터링 기능 등을 수행할 수 있다.
데이터 처리부(예를 들어, 121)는 셀 사이트의 기지국으로부터 수신한 신호를 처리하고, 처리한 신호를 백홀(backhaul)을 통해 코어 네트워크 장치(130)에 전달할 수 있다. 코어 네트워크 장치(130)는 기지국과 단말로 구성된 종단 시스템을 연결하는 장치들을 포함할 수 있다. 예를 들어, 코어 네트워크 장치(130)에는 P-GW(packet data network gateway), S-GW(serving gateway) 및 MME (mobile management entity) 등이 포함될 수 있다. P-GW는 코어 네트워크의 내부 노드와 외부 인터넷을 연결하고, 단말에 IP 주소를 설정하며, IP 패킷 필터링을 수행할 수 있다. S-GW는 단말에 RRC (radio resource control) 연결이 설정되지 않은 경우, 외부 인터넷으로부터 도착된 다운 링크 패킷을 버퍼링할 수 있다. MME는 단말의 위치 등록, 인증, 통화와 관련된 제어 신호를 처리할 수 있다. 한편, 이는 일 예일 뿐, 코어 네트워크 장치(130)의 구성이 전술한 예에 한정되는 것은 아니다.
백홀은 데이터 처리부(예를 들어, 121)와 코어 네트워크 장치(130)를 연결하는 네트워크 부분으로서, 광섬유 등의 유선 인터페이스로 구현될 수 있으나, 이는 일 예일 뿐, 백홀은 무선망으로도 구현될 수 있다.
데이터 처리부(예를 들어, 121)는 신호의 처리를 위해 다양한 무선 접속 네트워크 기능을 수행할 수 있다. 무선 접속 네트워크 기능은, 예를 들어, PDCP(packet data convergence protocol) 레이어 기능, RLC(radio link control) 레이어 기능, MAC(medium access control) 레이어 기능 및 PHY(physical) 레이어 기능 등을 포함할 수 있으나, 이는 일 예일 뿐, 무선 접속 네트워크 기능이 전술한 예에 한정되는 것은 아니다. 이하에서는 PDCP 레이어, RLC 레이어, MAC 레이어 및 PHY 레이어의 기능에 대해 설명하도록 한다.
PDCP 레이어의 기능은 다음의 기능들 중 적어도 하나를 포함할 수 있다.
- 헤더 압축 및 압축 해제 기능(Header compression and decompression: ROHC only)
- 사용자 데이터 전송 기능 (Transfer of user data)
- 상위 레이어 PDU(protocol data unit)의 순차적 전달 기능(In-sequence delivery of upper layer PDUs)
- PDCP PDU 순서 재정렬 기능(PDCP PDU reordering)
- 하위 레이어 SDU(service data unit)의 중복 탐지 기능(Duplicate detection of lower layer SDUs)
- 재전송 기능(Retransmission of PDCP SDUs)
- 암호화 및 복호화 기능(Ciphering and deciphering)
- 업링크에서 타이머 기반 SDU 삭제 기능(Timer-based SDU discard in uplink.)
PDCP 레이어의 순서 재정렬 기능(reordering)은 하위 계층에서 수신한 PDCP PDU들을 PDCP SN(sequence number)을 기반으로 순서대로 재정렬하는 기능을 나타내며, 재정렬된 순서대로 데이터를 상위 계층에 전달하는 기능, 순서를 재정렬하여 유실된 PDCP PDU들을 기록하는 기능, 유실된 PDCP PDU들에 대한 상태 보고를 송신 측에 하는 기능 및 유실된 PDCP PDU들에 대한 재전송을 요청하는 기능 중 적어도 하나를 포함할 수 있다.
RLC 레이어의 기능은 다음의 기능들 중 적어도 하나를 포함할 수 있다.
- 상위 레이어 PDU의 전송 기능(Transfer of upper layer PDUs)
- 상위 레이어 PDU의 순차적 전달 기능(In-sequence delivery of upper layer PDUs)
- 상위 레이어 PDU의 비순차적 전달 기능(Out-of-sequence delivery of upper layer PDUs)
- ARQ를 통한 에러 정정 기능(Error Correction through ARQ)
- RLC SDU의 접합, 분할, 재조립 기능(Concatenation, segmentation and reassembly of RLC SDUs)
- RLC 데이터의 재분할 기능(Re-segmentation of RLC data)
- RLC 데이터의 순서 재정렬 기능(Reordering of RLC data)
- 중복 탐지 기능(Duplicate detection)
- 오류 탐지 기능(Protocol error detection)
- RLC SDU 삭제 기능(RLC SDU discard)
- RLC 재수립 기능(RLC re-establishment)
RLC 레이어의 순차적 전달 기능(In-sequence delivery)은 하위 레이어로부터 수신한 RLC SDU(service data unit)들을 순서대로 상위 레이어에 전달하는 기능을 나타내며, 하나의 RLC SDU가 여러 개의 RLC SDU들로 분할되어 수신된 경우, 이를 재조립하여 전달하는 기능을 포함할 수 있다. 순차적 전달 기능은, 수신한 RLC PDU들을 RLC SN(sequence number) 또는 PDCP SN(sequence number)를 기준으로 재정렬하는 기능, 순서를 재정렬하여 유실된 RLC PDU들을 기록하는 기능 및 유실된 RLC PDU들에 대한 상태 보고를 송신 측에 하는 기능 중 적어도 하나를 포함할 수 있다. 또한, 순차적 전달 기능은 유실된 RLC PDU들에 대한 재전송을 요청하는 기능을 포함할 수 있으며, 유실된 RLC SDU가 있을 경우, 유실된 RLC SDU 이전까지의 RLC SDU들만을 순서대로 상위 레이어에 전달하는 기능을 포함할 수 있다. 또한, 순차적 전달 기능은 유실된 RLC SDU가 있어도 소정의 타이머가 만료되었다면 타이머가 시작되기 전에 수신된 모든 RLC SDU들을 순서대로 상위 레이어에 전달하는 기능을 포함할 수 있으며, 또는 유실된 RLC SDU가 있어도 소정의 타이머가 만료되었다면 현재까지 수신된 모든 RLC SDU들을 순서대로 상위 레이어에 전달하는 기능을 포함할 수 있다.
RLC 레이어는, 시퀀스 순서와 상관없이, RLC PDU들을 수신하는 순서대로 처리하여 PDCP 레이어로 전달할 수 있다. RLC 레이어는 세그먼트(segment)가 수신된 경우에는 버퍼에 저장되어 있는 세그먼트 또는 추후에 수신될 세그먼트들과 이를 결합하여 온전한 하나의 RLC PDU로 재구성한 후, RLC PDU를 PDCP 레이어로 전달할 수 있다. 한편, NR(new radio)에서 RLC 레이어는 접합(Concatenation) 기능을 포함하지 않을 수 있고, 접합 기능은 MAC 레이어에서 수행되거나 MAC 레이어의 다중화(multiplexing) 기능으로 대체될 수 있다.
MAC 레이어의 기능은 다음의 기능들 중 적어도 하나를 포함할 수 있다.
- 로지컬 채널과 전송 채널 간의 맵핑 기능(Mapping between logical channels and transport channels)
- MAC SDU의 다중화 및 역다중화 기능(Multiplexing/demultiplexing of MAC SDUs)
- 스케쥴링 정보 보고 기능(Scheduling information reporting)
- HARQ를 통한 에러 정정 기능(Error correction through HARQ)
- 로지컬 채널 간 우선 순위 조절 기능(Priority handling between logical channels of one UE)
- 다이나믹 스케줄링을 통한 단말간 우선 순위 조절 기능(Priority handling between UEs by means of dynamic scheduling)
- MBMS 서비스 식별 기능(MBMS service identification)
- 전송 포맷 선택 기능(Transport format selection)
- 패딩 기능(Padding)
PHY 레이어는 다음의 기능들 중 적어도 하나를 수행할 수 있다.
- 전기적 신호를 이용한 데이터 송수신
- 채널 코딩/디코딩 기능
- 변조/복조 기능
- 전력 제어
- 셀 검색
PHY 레이어는 상위 레이어의 데이터에 채널 코딩 및 변조를 수행하고, 이를 OFDM 심벌로 만들어서 무선 채널을 통해 전송할 수 있다. 또한, PHY 레이어는 무선 채널을 통해 수신한 OFDM 심벌에 대해 복조 및 채널 디코딩을 수행하고, 그 결과 획득된 데이터를 상위 계층으로 전달할 수도 있다.
한편, 셀 사이트의 기지국은 RU 또는 RRH(remote radio head) 등의 용어로 설명될 수 있으며, 데이터 처리부(예를 들어, 121)는 DU 또는 BBU(base band unit) 등의 용어로 설명될 수 있다.
전술한 무선 접속 네트워크 기능들을 수행하는 데이터 처리부들(121, 123, 125)을 한 곳에 모아 관리하기 위해서는 데이터 처리에 필요한 물리적인 자원들을 효율적으로 사용할 수 있는 방법이 필요하다. 이를 위해, 본 개시는 데이터 처리부들(121, 123, 125)에서 수행되는 적어도 하나의 무선 접속 네트워크 기능들을 가상화를 통해 수행하는 방법을 제공하고자 한다. 가상화란 여러 개의 물리적인 자원들을 통합하여 관리함으로써, 하나의 장치에서 가용할 수 있었던 자원을 확장할 수 있는 기술로서, 이하에서는 도 2를 참조하여, 가상화된 RAN(virtualized RAN, 이하 vRAN)의 예시에 대해 설명하도록 한다.
도 2는 본 개시의 일 실시예에 따라 RAN의 가상화 방법을 설명하기 위한 도면이다.
도 2를 참조하면, 서버(200)는 vRAN 기능을 수행하기 위한 소프트웨어를 구동(drive)시킬 수 있는 하드웨어(210)를 포함할 수 있다. 하드웨어(210)는 CPU(central processing unit, 211), RAM(random access memory, 212), FPGA(field programmable gate array, 213), GPU(graphics processing unit, 214), NIC(network interface controller, 215) 및 스토리지(216)를 포함할 수 있으나, 이는 일 예일 뿐, 하드웨어(210)의 구성 요소가 전술한 예에 한정되는 것은 아니다. 또한, 스토리지(216)는 HDD(hard disk drive), SDD(solid state drive) 등을 포함할 수 있다.
하드웨어(210)는 하나의 OS(operating system, 220)를 실행할 수 있다. OS(220)는 하드웨어(210) 및 서버(200)에서 실행되는 소프트웨어(예를 들어, 가상화 소프트웨어(230))를 관리할 수 있다.
가상화 소프트웨어(230)는 OS(220)에서 관리하는 리소스를 논리적으로 분리시키고, 여러 개의 SC(software component)가 논리적으로 분리된 리소스를 공유하도록 할 수 있다. 리소스는 vRAN 패키지들(240, 250)에서 트래픽을 처리하는데 이용되는 항목이다. 예를 들어, 리소스에는 CPU(211), RAM(212), FPGA(213), GPU(214), NIC(215) 및 스토리지(216) 등이 포함될 수 있으나, 이는 일 예일 뿐, 리소스가 전술한 예에 한정되는 것은 아니다. 리소스의 논리적 분리는 리소스와 복수의 SC를 연결하는 물리적인 통신 선로를 스위치를 통해 분배함으로써 수행될 수 있다. SC는 특정 기능을 수행하기 위해 필요한 라이브러리나 어플리케이션 등을 모아 별도의 서버인 것처럼 사용할 수 있게 만든 것으로, 패키지 단위로 생성되거나 제거될 수 있다. 패키지는 하나의 IP를 공유하면서, 하나 이상의 SC를 포함할 수 있는 최소 단위이다. 가상화 소프트웨어(230)의 예로는, 쿠버네티스가 포함될 수 있으며, SC는 쿠버네티스의 컨테이너(container)에 대응될 수 있다. 또한, 가상화 소프트웨어(230)는 GPU(214) 등의 프로세서 자원의 연산 처리를 관리하기 위한 소프트웨어를 포함할 수 있으며, 일 예로 CUDA(computed unified device architecture)가 포함될 수 있다.
SC는 vRAN의 네트워크 기능을 수행하기 위해 이용될 수 있다. 이하에서는 vRAN 구현을 위한 서버(200)의 동작에 대해 보다 구체적으로 설명하도록 한다.
서버(200)는 셀 사이트의 복수의 기지국(12, 14, 16)과 EIU(ethernet interface unit, 50)를 통해 연결될 수 있다. EIU(50)는 셀 사이트의 복수의 기지국(12, 14, 16)과 서버(200)를 연결하는 통로의 일부로서, EIU(50)를 통해 기지국의 트래픽이 vRAN 패키지들(240, 250)로 전달될 수 있다. 예를 들어, EIU(50)를 통해 셀 사이트의 기지국(예를 들어, 12, 14)에 할당된 vRAN 패키지(예를 들어, 240)에 관한 정보가 전달될 수도 있다.
서버(200)는 일체형 기지국의 데이터 처리부에서 수행되었던 무선 접속 네트워크 기능들을 수행할 수 있다. 여기에서, 데이터 처리부는 도 1을 참조하여 전술한 데이터 처리부와 대응될 수 있다. 이에 따라, 셀 사이트의 복수의 기지국(12, 14, 16) 각각에는 RF 장치를 포함하는 무선 송수신부가 존재하게 되며, 이외의 무선 접속 네트워크 기능들은 서버(200)에서 수행될 수 있다. 예를 들어, 서버(200)에는 각각 PHY SC(241, 251), MAC SC(243, 253), RLC SC(245, 255)가 포함된 vRAN 패키지들(240, 250)이 생성될 수 있으며, PHY SC(241, 251), MAC SC(243, 253), RLC SC(245, 255)는 각각 전술한 PHY 레이어 기능, MAC 레이어 기능 및 RLC 레이어 기능을 수행할 수 있다. 다만, 이는 일 예일 뿐, 서버(200)에서 수행되는 무선 접속 네트워크 기능이 전술한 예에 한정되는 것은 아니다. 다른 예에 따라, 서버(200)에서는 RLC 레이어 기능, PDCP 레이어 기능 등이 수행될 수도 있다.
vRAN 패키지는 무선 접속 네트워크 기능을 수행하는 하나 이상의 SC를 포함할 수 있는 최소 단위이다. vRAN 패키지는 기존에 하드웨어 장치에서 수행되었던 무선 접속 네트워크 기능들을 가상화하여 수행할 수 있도록 하는 명령어들로 구성될 수 있으며, vRAN 패키지 단위로, SC가 제거 또는 생성될 수 있다. 서버(200)에는 하나 이상의 vRAN 패키지(240, 250)가 포함될 수 있다.
가상화 마스터(260)는 vRAN 패키지를 제어하는 시스템이다. 가상화 마스터(260)는 서버(200) 내에 위치할 수도 있고, 다른 예에 따라, 서버(200) 외의 다른 장치에 위치할 수도 있다. 가상화 마스터(260)는 vRAN 패키지의 생성 또는 제거 등의 명령을 가상화 소프트웨어(230)에 전달하고, 명령에 의해 변경되는 vRAN 패키지 정보를 갱신하여 저장할 수 있다. 또한, 가상화 마스터(260)는 O&M(operation and maintenance, 270)에 갱신된 vRAN 패키지 정보를 전달할 수 있다.
O&M(270)은 단말의 사용자 평면(user plane)에서의 트래픽 혼잡도를 제어하는 장치이다. 본 실시예에서는 O&M(270)이 서버(200)의 외부에 존재하는 것으로 도시하였으나, 본 개시의 다른 실시예에 따라 O&M(270)은 서버(200) 내부에 위치할 수도 있다. O&M(270)은 복수의 기지국(12, 14, 16)에서 발생되는 트래픽을, 각 vRAN 패키지에 할당할 것을 EIU(50)에 명령할 수 있다.
전술한 가상화 방법은 본 개시에서 vRAN을 구현하기 위한 일 예시일 뿐, 다른 가상화 방법이 이용될 수도 있다. 예를 들어, 하이퍼바이저 기반의 가상화 방법이 vRAN 구현에 이용될 수도 있다.
도 3은 일 실시예에 따라 프로세서 자원을 스케줄링하는 가상화된 RAN의 도면이다.
도 3을 참조하면, 서버(300)는 vRAN 기능을 수행하기 위한 소프트웨어를 구동시킬 수 있는 하드웨어(310)를 포함할 수 있다. 하드웨어(310)에는 GPU 이외에도 CPU, RAM, 스토리지 및 NIC가 포함될 수 있으나, 설명의 편의상 GPU 이외의 구성 요소들은 생략되었다. 도 3에 도시된 바와 같이, 복수의 GPU(311 내지 315)가 서버(300)에 포함되는 것으로 설명하였으나, 이는 일 실시예일 뿐, 서버(300)는 하나의 GPU를 포함할 수도 있다. 서버(300)는 OS(320) 및 가상화 소프트웨어(330)를 포함할 수도 있다.
vRAN 패키지(340)는 하나 이상의 기지국에 대한 스케줄링 요청을 획득할 수 있다. 스케줄링 요청은, 일 실시예에 따라 단말이 기지국에 UL로 트래픽을 전송하기 위해 시간-주파수 자원의 할당을 요청하는 경우 획득되거나, 다른 실시예에 따라 서비스 서버가 기지국에 접속한 복수의 단말들에게 DL로 송신하고자 하는 트래픽 정보를 제공하기 위해 획득될 수 있다.
트래픽은 일정 시간 내에 통신망을 통과하는 데이터의 흐름이다. 트래픽은 단말과 기지국 사이의 데이터 흐름을 포함할 수 있으며, 예를 들어, 단위 시간당 데이터 전송률 등으로 나타낼 수 있다.
트래픽 정보는 트래픽의 양 및 특성을 직접적 또는 간접적으로 나타낼 수 있는 정보이다. 트래픽 정보는, 트래픽을 발생시킨 서비스의 종류(예를 들어, 스마트 홈/빌딩/시티, V2X, 스트리밍, AR/VR(augment reality/virtual reality), MC(mission critical)), 디바이스의 종류(예를 들어, 스마스폰, 센서, NB-IoT(narrowband internet of things) 디바이스), 트래픽이 발생된 무선 통신 시스템의 종류(예를 들어, NR 또는 LTE) 등을 포함할 수 있다. 또한, 트래픽 정보는 트래픽 송수신을 요청한 단말의 수, 송수신하고자 하는 단말의 트래픽 양(예를 들어, LTE/NR의 버퍼 상태 리포트), 트래픽 송수신에 할당된 시간/주파수 할당량 및 트래픽 송수신에 사용된 PHY 레이어의 기법(모듈레이션, 채널 코딩 등)을 포함할 수 있다. 다만, 이는 일 예일 뿐, 트래픽 정보에 포함되는 정보가 전술한 예에 한정되는 것은 아니다.
스케줄링 요청에 포함된 트래픽 정보는 RLC SC(341) 및 MAC SC(343)에서의 처리 과정을 거쳐 스케줄링 SC(351)에 전달될 수 있다.
스케줄링 SC(351)는 발생될 트래픽에 관한 정보에 기초하여 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다.
무선 자원은 PHY 레이어의 연산 복잡도에 영향을 주는 자원으로, 예를 들어, 트래픽의 송수신을 위한 시간-주파수 자원, 기지국과 단말 간의 송수신 모드, 안테나 포트 수, 레이어 수, 채널 코딩 및 모듈레이션 기법 중 적어도 하나를 포함할 수 있다. 서버는 스케줄링을 요청한 단말 또는 트래픽을 수신할 단말의 종류 또는 단말의 캐퍼빌리티 정보를 기초로 송수신 모드, 안테나 포트 수, 레이어, 수, 채널 코딩 및 모듈레이션 기법에 관한 정보를 결정할 수 있다.
시간 지연(latency)에 관한 정보는 트래픽이 발생한 시점으로부터 처리되는 시점까지 소요되는 시간에 대한 제한을 포함할 수 있다. 시간 지연에 관한 정보는 트래픽을 발생시킨 서비스의 종류, 디바이스의 종류 및 트래픽이 발생된 무선 통신 시스템의 종류 등에 따라 상이할 수 있다. 예를 들어, 트래픽을 발생시킨 서비스의 종류는, NR 시스템의 경우 크게 URLLC, mMTC, eMBB로 분류될 수 있으며, URLLC로 분류되는 서비스(예를 들어, tectile 인터넷 서비스, 산업 자동화 서비스, AR 서비스, V2X 서비스 등)의 경우, 시간 지연이 0.1~1ms로 제한되는 반면에, mMTC, eMBB로 분류되는 서비스는 시간 지연이 100ms로 제한될 수 있다.
리소스 정보는 트래픽 처리에 이용된 물리적 자원을 직접적 또는 간접적으로 나타낼 수 있는 정보이다. 리소스 정보는, 예를 들어, vRAN 패키지에 할당된 GPU 중 트래픽 처리를 위해 사용된 GPU의 비율, 최대 GPU 클락 사이클 대비 트래픽 처리를 위해 사용되는 클락 사이클 수, 트래픽 처리를 위해 vRAN 패키지에 할당된 메모리 크기 등을 포함할 수 있다. 다만, 전술한 예시들은 일 예일 뿐, 트래픽 정보 또는 리소스 정보가 전술한 예에 한정되는 것은 아니다.
스케줄링 SC(351)는 무선 자원 및 시간 지연에 관한 정보와 서버(300)에서의 가용 프로세서 자원을 기초로, GPU(311~315)의 적어도 하나의 파이프라인에서 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정할 수 있다. 파이프라인은 한 데이터 처리 단계의 출력이 다음 단계의 입력으로 이어지는 형태의 데이터 처리 구조이다.
스케줄링 SC(351)는 하나 이상의 기지국에서 발생될 트래픽의 처리를 위해, 서버에서의 가용 프로세서 자원을 식별할 수 있다. 프로세서 자원은 트래픽 처리에 이용된 물리적 자원이며, 가용 프로세서 자원은 기지국에서 발생될 트래픽의 처리를 위해 서버에서 이용할 수 있는 물리적 자원을 의미한다. 예를 들어, 가용 프로세서 자원은 전체 CPU 또는 GPU 중 트래픽 처리를 위해 할당될 수 있는 CPU 또는 GPU의 비율, 최대 GPU 클락 사이클 대비 트래픽 처리를 위해 사용될 수 있는 클락 사이클 수, 트래픽 처리를 위해 할당될 수 있는 메모리 크기 등을 포함할 수 있다. 다만, 전술한 예시들은 일 예일 뿐, 프로세서 자원이 전술한 예에 한정되는 것은 아니다.
스케줄링 SC(351)는 모니터링 SC(355)로부터 스케줄링 요청 이전에 발생된 트래픽 처리시 이용된 프로세서 자원에 관한 자원 모니터링 정보를 획득할 수 있다. 스케줄링 SC(351)는 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다.
스케줄링 SC(351)는 트래픽에 대해 요구되는 시간 지연이 임계값 미만인 경우, 트래픽의 처리에 필요한 전체 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정할 수 있다. 또한, 다른 예에 따라 스케줄링 SC(351)는 트래픽에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정할 수 있다.
일 실시예에 따른, 스케줄링 SC(351)는 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기를 초과하는 경우, 적어도 하나의 파이프라인에 미리 할당된 트래픽 처리 이후에 트래픽을 처리하는 것으로 스케줄링 정보를 결정할 수 있다. 다른 실시예에 따라, 스케줄링 SC(351)는 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기를 초과하고, 트래픽의 처리가 적어도 하나의 파이프라인에 미리 할당된 트래픽의 처리보다 우선 순위가 높은 경우, 미리 할당된 트래픽의 처리를 중단하고, 새롭게 발생된 트래픽을 처리하는 것으로 스케줄링 정보를 결정할 수 있다. 우선 순위는 일 실시예로, 전술한 시간 지연에 관한 정보를 기초로 결정될 수 있다. 이 경우, 스케줄링 SC(351)는 미리 할당된 트래픽의 처리가 중단되어 가용 프로세서 자원이 발생함에 따라, 파이프라인 관리 SC(353)에 새롭게 파이프라인을 생성할 것을 명령할 수 있다.
스케줄링 SC(351)는 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기 이하인 경우, 트래픽의 처리를 위해 생성된 새로운 파이프라인에서 트래픽을 처리하는 것으로 스케줄링 정보를 결정할 수 있다. 새로운 파이프라인에서 트래픽이 처리되는 경우, 기존 파이프라인에서 처리 중인 트래픽과 병렬적으로 처리가 수행됨으로써, 트래픽의 처리에서 발생하는 시간 지연을 줄일 수 있다.
파이프라인 SC(353)는 스케줄링 SC(351)로부터 수신한 스케줄링 정보를 기초로, 파이프라인을 새롭게 생성하거나 기존의 파이프라인을 유지할 수 있다. 또한, 파이프라인 SC(353)는 스케줄링 정보에 기초하여, 발생될 트래픽이 처리되어야 하는 파이프라인에 관한 정보를 PHY SC(345)에 제공할 수 있다.
모니터링 SC(355)는 트래픽 처리시 이용되는 프로세서 자원을 모니터링하고, 모니터링된 정보를 저장할 수 있다. 모니터링 SC(355)는 스케줄링 SC(351)에 스케줄링 요청 이전에 발생된 트래픽 처리시 이용된 프로세서 자원에 관한 자원 모니터링 정보를 제공할 수 있다.
도 4는 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 흐름도이다.
도 4를 참조하면, 단계 S410에서, 서버는 하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득할 수 있다.
서버는 하나 이상의 기지국에 접속한 복수의 단말들로부터 송신된 스케줄링 요청을 획득할 수 있다. 스케줄링 요청은 단말이 UL로 트래픽을 송신하기 위해, 시간-주파수 자원의 할당을 요청하는 메시지를 포함할 수 있으며, 스케줄링 요청에는 단말이 송신하고자 하는 트래픽 정보가 포함될 수 있다. 트래픽 정보의 구체적인 예시는 도 3에서 전술한 바와 대응될 수 있다.
다른 실시예에 따라 서버는 서비스 서버로부터 하나 이상의 기지국에 접속한 복수의 단말들에게 DL로 송신하고자 하는 트래픽 정보를 포함하는 스케줄링 요청을 수신할 수도 있다. 서비스 서버는 하나 이상의 기지국에 접속한 복수의 단말들이 이용하고 있는 서비스에 관한 트래픽을 제공하는 서버로서, 예를 들어, 스트리밍 컨텐트 등을 저장하고 있는 오리진(origin) 서버가 서비스 서버에 포함될 수 있다. 다만, 이는 일 예일 뿐, 서비스 서버가 전술한 예에 한정되는 것은 아니다.
단계 S420에서 서버는 발생될 트래픽에 관한 정보에 기초하여 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다.
무선 자원은, 예를 들어, 트래픽의 송수신을 위한 시간-주파수 자원, 기지국과 단말 간의 송수신 모드, 안테나 포트 수, 레이어 수, 채널 코딩 및 모듈레이션 기법 중 적어도 하나를 포함할 수 있다.
서버는 스케줄링을 요청한 단말 또는 트래픽을 수신할 단말의 종류 또는 단말의 캐퍼빌리티 정보를 기초로 송수신 모드, 안테나 포트 수, 레이어, 수, 채널 코딩 및 모듈레이션 기법에 관한 정보를 결정할 수 있다. 전술한 단말의 캐퍼빌리티 정보는 예를 들어, RRC configuration 등과 같은, 단말과 기지국 간의 설정 프로세스를 통해 서버에 획득될 수 있다. 또한, 시간-주파수 자원은 단말이 UL로 전송하고자 하는 트래픽의 양 등에 따라, 서버로부터 단말에 할당될 수 있다.
시간 지연에 관한 정보는 트래픽을 발생시킨 서비스의 종류, 디바이스의 종류 및 트래픽이 발생된 무선 통신 시스템의 종류 등에 따라 상이할 수 있다. 예를 들어, 트래픽을 발생시킨 서비스의 종류가 V2X 서비스인 경우, 서버는 트래픽의 시간 지연에 관한 정보를 1ms로 결정할 수 있다.
단계 S430에서, 서버는 무선 자원 및 시간 지연에 관한 정보와 서버에서의 가용 프로세서 자원을 기초로, 프로세서의 적어도 하나의 파이프라인에서 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정할 수 있다.
서버는 하나 이상의 기지국에서 발생될 트래픽의 처리를 위해, 서버에서의 가용 프로세서 자원을 식별할 수 있다. 예를 들어, 서버는 스케줄링 요청 이전에 발생된 트래픽 처리시 이용된 프로세서 자원에 관한 자원 모니터링 정보를 획득할 수 있다. 서버는 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다.
일 실시예에 따른 서버는 트래픽에 대해 요구되는 시간 지연이 임계값 미만인 경우, 트래픽의 처리에 필요한 전체 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정할 수 있다. 다른 실시예에 따른 서버는 트래픽에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정할 수 있다.
단계 S440에서, 서버는 스케줄링 정보에 기초하여 적어도 하나의 파이프라인에서 트래픽을 처리할 수 있다.
일 실시예에 따른 서버는 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기를 초과하는 경우, 적어도 하나의 파이프라인에 미리 할당된 트래픽 처리 이후에 트래픽을 처리할 수 있다. 다른 예에 따라, 서버는 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기 이하인 경우, 트래픽의 처리를 위해 생성된 신규 파이프라인에서 트래픽을 처리할 수 있다.
다른 실시예에 따른 서버는 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기를 초과하고, 트래픽의 처리가 적어도 하나의 파이프라인에 미리 할당된 트래픽의 처리보다 우선 순위가 높은 경우, 미리 할당된 트래픽의 처리를 중단하고, 새롭게 발생된 트래픽을 처리할 수 있다. 우선 순위는 일 실시예로, 전술한 시간 지연에 관한 정보를 기초로 결정될 수 있다. 예를 들어, 미리 할당된 제 1 트래픽에서 요구하는 시간 지연이 10ms인 반면에, 새롭게 발생된 제 2 트래픽의 시간 지연이 1ms인 경우, 서버는 제 2 트래픽이 제 1 트래픽에 비해 우선적으로 처리되어야 하는 것으로 결정할 수 있다. 서버는 미리 할당된 트래픽의 처리가 중단됨에 따라, 트래픽의 처리를 위해 신규 파이프라인을 생성할 수 있다. 다른 예에 따라, 서버는 기존의 파이프라인에서 중단된 트래픽에 관한 데이터를 버리고(discard), 새롭게 발생된 트래픽을 처리할 수도 있다.
도 5는 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 흐름도이다.
도 5를 참조하면, 단계 S505에서, 서버는 하나 이상의 기지국에서 발생될 트래픽 정보를 획득할 수 있다. 일 실시예에 따라, 서버는 하나 이상의 기지국에 접속한 단말이 이용하고 있는 서비스의 종류에 관한 정보를 트래픽 정보로 획득할 수 있다. 다만, 이는 일 예일 뿐, 트래픽 정보는 도 3에서 전술한 트래픽 정보와 대응될 수 있다. 다른 실시예에 따라, 서버는 트래픽의 송수신에 사용되는 PHY 레이어의 기법에 관한 정보를 획득할 수도 있고, 발생될 트래픽 양에 관한 정보를 획득할 수도 있다. 또다른 실시예에 따라, 서버는 발생될 트래픽의 처리에 요구되는 스펙에 관한 정보를 획득할 수도 있다. 예를 들어, 서버는 트래픽에 대해 요구되는 시간 지연에 관한 정보를 획득할 수 있다.
단계 S510에서, 서버는 트래픽 정보를 기초로 트래픽의 무선 자원 할당량을 결정할 수 있다. 무선 자원은 PHY 레이어의 연산 복잡도에 영향을 주는 자원으로, 복잡도에 비례하여 무선 자원 할당량이 증가할 수 있다.
예를 들어, 전술한 단계 S505에서 단말이 이용하고 있는 서비스의 종류가 V2X 서비스인 경우, 서버는 V2X 서비스에 대응되는 무선 자원 할당량을 결정할 수 있다. V2X 서비스의 경우, 낮은 에러율(error rate)을 만족시키기 위해, 채널 코딩의 코드워드의 길이가 길어짐에 따라, 코드레이트(code rate)가 낮게 설정될 수 있다. 서버는 V2X 서비스의 요구 성능(requirement)에 대응하는 코드레이트를 적용하여 트래픽을 송수신 할 경우에 대한 PHY 레이어의 연산 복잡도를 기초로 무선 자원 할당량을 결정할 수 있다. 다만, 이는 일 예일 뿐, 다양한 PHY 레이어 기법이 무선 자원 할당량을 결정하는데 이용될 수 있다. 예를 들어, 채널 추정 프로세스의 경우, DMRS(demodulation reference signal)의 심볼 수, 안테나 포트 수, 레이어 수 및 UE의 수에 비례하여 PHY 레이어의 연산 복잡도가 증가하고, 이에 대응하여 무선 자원 할당량이 증가할 수 있다.
단계 S515에서, 서버는 이전 트래픽 처리에 이용된 프로세서 자원에 관한 정보를 기초로, 필요 프로세서 자원 및 스케줄링 방법을 결정할 수 있다. 예를 들어, 서버는 이전에 처리된 트래픽들의 무선 자원 할당량 별로 이용된 프로세서 자원에 관한 정보를 기초로, 발생될 트래픽을 처리하는데 필요한 프로세서 자원을 결정할 수 있다. 발생될 트래픽을 처리하는데 필요한 프로세서 자원은 전체 CPU 또는 GPU 중 필요한 CPU 또는 GPU의 비율, 최대 GPU 클락 사이클 대비 필요한 클락 사이클 수, 메모리 크기 등으로 결정될 수 있으나, 이는 일 예일 뿐, 프로세서 자원을 나타내는 정보가 전술한 예에 한정되는 것은 아니다.
또한, 서버는 스케줄링 방법을 결정할 수 있다. 우선, 스케줄링 방법은 트래픽의 처리에 요구되는 시간 지연에 관한 정보에 의해 분류될 수 있다. 예를 들어, 요구되는 시간 지연이 Ams 미만인 경우, 서버는 트래픽의 처리에 필요한 전체 프로세서 자원을 할당하는 제 1 방법에 따라 스케줄링을 수행하는 것으로 결정할 수 있다. 또한, 트래픽에 요구되는 시간 지연이 Ams 이상인 경우, 서버는 기 설정된 크기의 최소 프로세서 자원을 할당하는 제 2 방법에 따라 스케줄링을 수행하는 것으로 결정할 수 있다.
단계 S520에서, 서버는 트래픽 처리에 요구되는 필요 프로세서 자원의 크기가 가용 프로세서 자원의 크기보다 작은지 여부를 판단할 수 있다.
예를 들어, 스케줄링 방법이 제 1 방법으로 결정된 경우, 서버는 트래픽의 처리에 필요한 전체 프로세서 자원이 가용 프로세서 자원의 크기보다 작은지 여부를 판단할 수 있다. 다른 예에 따라, 스케줄링 방법이 제 2 방법으로 결정된 경우, 서버는 기 설정된 크기의 최소 프로세서 자원이 가용 프로세서 자원의 크기보다 작은지 여부를 판단할 수 있다.
단계 S525에서, 서버는 새로운 파이프라인을 생성할 수 있다.
서버는 단계 S520에서의 판단 결과, 스케줄링 방법에 따라 결정된 필요 프로세서 자원이 가용 프로세서 자원보다 작은 경우, 새로운 파이프라인을 생성할 수 있다.
단계 S530에서, 서버는 기존 파이프라인에서 처리 대기 중인 트래픽들의 프로세서 자원 사용량에 관한 정보를 결정할 수 있다.
서버는 단계 S520에서의 판단 결과, 스케줄링 방법에 따라 결정된 필요 프로세서 자원이 가용 프로세서 자원 이상인 경우, 가용 프로세서 자원을 추가로 확보할 수 있는지 여부를 판단할 수 있다. 가용 프로세서 자원의 추가 확보 여부에 대한 확인을 위해, 서버는 기존 파이프라인에서 처리 대기 중인 트래픽들의 프로세서 자원 사용량에 관한 정보를 결정할 수 있다.
단계 S535에서, 서버는 기존 파이프라인에서 처리 대기 중인 트래픽들의 프로세서 자원 사용량을 기초로, 트래픽을 병렬 처리할 수 있는지 여부를 판단할 수 있다. 서버는 기존 파이프라인에서 처리 대기 중인 트래픽의 프로세서 자원 사용량을 기초로 추가로 확보될 수 있는 가용 프로세서 자원이 존재하는지 여부가 확인됨에 따라, 업데이트된 가용 프로세서 자원과 발생될 트래픽을 위해 필요한 프로세서 자원의 크기를 비교할 수 있다. 발생될 트래픽을 위해 필요한 프로세서 자원의 크기가 업데이트된 가용 프로세서 자원의 크기 보다 작은 경우, 서버는 트래픽을 병렬 처리할 수 있는 것으로 판단하여, 새로운 파이프라인을 생성할 수 있다.
단계 S540에서, 서버는 트래픽을 병렬 처리할 수 없다고 판단된 경우, 기존 파이프라인을 선택할 수 있다.
단계 S545에서, 서버는 파이프라인에 트래픽을 할당할 수 있다.
일 실시예에 따라, 서버가 기존 파이프라인에 트래픽을 할당하는 것으로 결정한 경우, 서버는 기존 파이프라인에서 처리 대기 중인 트래픽들과 발생될 트래픽 간의 우선 순위를 비교할 수 있다. 서버는 우선 순위 비교 결과에 기초하여 기존 파이프라인에 할당할 트래픽을 결정할 수 있다. 예를 들어, 발생될 트래픽의 시간 지연에 대한 제한이 처리 대기 중인 트래픽들의 시간 지연에 대한 제한 보다 엄격한 경우, 서버는 발생될 트래픽을 대기 중인 트래픽 보다 먼저 처리하는 것으로 스케줄링을 수행할 수 있다. 다른 실시예에 따라, 서버가 새로운 파이프라인을 생성한 경우, 서버는 새로운 파이프라인에 트래픽을 할당할 수 있다.
단계 S550에서, 서버는 트래픽을 처리할 수 있다.
서버가 새로운 파이프라인에 트래픽을 할당한 경우, 트래픽은 기존에 처리 중인 트래픽과 함께 병렬적으로 처리될 수 있다. 다른 예에 따라, 서버가 기존 파이프라인에 트래픽을 할당한 경우, 트래픽은 기존에 처리 중인 트래픽의 처리 이후에 처리될 수 있다. 다만, 트래픽이 기존에 처리 중인 트래픽 보다 시간 지연 제한 등으로 인해, 우선 순위가 높은 경우, 기존 트래픽의 처리가 중단되고, 트래픽이 처리될 수 있다.
도 6은 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법의 도면이다.
도 6을 참조하면, 복수의 기지국(610, 620)에서 각각 트래픽이 발생할 수 있다. 복수의 기지국(610, 620)에서 발생된 트래픽은 서버(300)로 전달될 수 있다. 본 실시예에서는, 기지국 A(610)에서 발생한 PUSCH(physical uplink shared channel) #A-1 및 기지국 B(620)에서 발생한 PUSCH #B-1를 서버(300)에서 처리 중인 것으로 가정한다. PUSCH는 데이터 전송을 위한 UL 채널에 해당하나, 본 명세서에서는 설명의 편의를 위해, PUSCH를 이를 통해 수신되는 트래픽을 지칭하는데 사용하도록 한다.
한서버(300)는 기지국 A(610)로부터 새롭게 발생될 트래픽 PUSCH #A-2에 관한 정보를 획득할 수 있다. 서버(300)에 PUSCH #A-2에 관한 정보가 획득됨에 따라, 스케줄링 SC(351)는 PUSCH #A-2에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다. 예를 들어, 스케줄링 SC(351)는 PUSCH #A-2의 시간/주파수 축 자원 할당량이 8개의 RB(resource block)에 해당하고, 레이어 수가 2인 것으로 결정할 수 있다. 또한, 스케줄링 SC(351)는 PUSCH #A-2의 시간 지연 제한이 Xms인 것으로 결정할 수 있다.
스케줄링 SC(351)는 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다. 자원 모니터링 정보는, 모니터링 SC(355)에서 이전 트래픽 처리 시 사용된 프로세서 자원을 모니터링한 결과 생성될 수 있으며, 무선 자원 할당량을 기준으로 사용된 프로세서 자원에 관한 정보를 포함할 수 있다.
스케줄링 SC(351)는 PUSCH #A-2에 대해 요구되는 시간 지연이 임계값 미만인 경우, PUSCH #A-2의 처리에 필요한 전체 프로세서 자원을 할당할 수 있다. 또한, 스케줄링 SC(351)는 필요한 전체 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 작은 지 여부를 판단할 수 있다. 스케줄링 SC(351)는 필요한 전체 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 작은 경우, 파이프라인을 생성하는 것으로 결정할 수 있다. 스케줄링 SC(351)의 결정에 따라, 파이프라인 관리 SC(353)는 새로운 파이프라인(636)을 생성하고, 새로운 파이프라인(636)에 PUSCH #A-2가 할당될 수 있다. 이에 따라, PUSCH #A-2는 기존 파이프라인(632, 634)에서 처리 중인 PUSCH #A-1, PUSCH #B-1과 병렬적으로 처리될 수 있다.
도 7은 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법의 도면이다.
도 7을 참조하면, 복수의 기지국(710, 720)에서 각각 트래픽이 발생할 수 있다. 복수의 기지국(710, 720)에서 발생된 트래픽은 서버(300)로 전달될 수 있다. 본 실시예에서는, 기지국 A(710)에서 발생한 PUSCH #A-1 및 기지국 B(720)에서 발생한 PUSCH #B-1을 서버(300)에서 처리 중인 것으로 가정한다.
서버(300)는 기지국 A(710)로부터 새롭게 발생될 트래픽 PUSCH #A-2에 관한 정보를 획득할 수 있다. 서버(300)에 PUSCH #A-2에 관한 정보가 획득됨에 따라, 스케줄링 SC(351)는 PUSCH #A-2에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다. 예를 들어, 스케줄링 SC(351)는 PUSCH #A-2의 시간/주파수 축 자원 할당량이 8개의 RB(resource block)에 해당하고, 레이어 수가 2인 것으로 결정할 수 있다. 또한, 스케줄링 SC(351)는 PUSCH #A-2의 시간 지연 제한이 Yms인 것으로 결정할 수 있다.
스케줄링 SC(351)는 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다. 자원 모니터링 정보는, 모니터링 SC(355)에서 이전 트래픽 처리 시 사용된 프로세서 자원을 모니터링한 결과 생성될 수 있으며, 무선 자원 할당량을 기준으로 사용된 프로세서 자원에 관한 정보를 포함할 수 있다.
스케줄링 SC(351)는 PUSCH #A-2에 대해 요구되는 시간 지연이 임계값 미만인 경우, PUSCH #A-2의 처리에 필요한 전체 프로세서 자원을 할당할 수 있다. 또한, 스케줄링 SC(351)는 필요한 전체 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 작은 지 여부를 판단할 수 있다. 스케줄링 SC(351)는 필요한 전체 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 큰 경우, 기존 파이프라인에 PUSCH #A-2를 할당하는 것으로 결정할 수 있다. 스케줄링 SC(351)의 결정에 따라, 파이프라인 관리 SC(353)는 기존 파이프라인들(732, 734) 중 제 2 파이프라인(734)에 PUSCH #A-2를 할당할 수 있다. 기존 파이프라인들 중 트래픽을 할당할 파이프라인을 결정하는 기준은 각 파이프라인에서 처리 대기 중인 트래픽의 양이 될 수 있으나, 이는 일 예일 뿐, 파이프라인을 결정하는 기준이 이에 한정되는 것은 아니다. PUSCH #A-2는 기존 제 2 파이프라인(734)에서 처리 중인 PUSCH #B-1의 처리가 완료된 후에 처리될 수 있다.
도 8은 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법의 도면이다.
도 8을 참조하면, 복수의 기지국(810, 820)에서 각각 트래픽이 발생할 수 있다. 복수의 기지국(810, 820)에서 발생된 트래픽은 서버(300)로 전달될 수 있다. 본 실시예에서는, 기지국 A(810)에서 발생한 PUSCH #A-1 및 기지국 B(820)에서 발생한 PUSCH #B-1을 서버(300)에서 처리 중인 것으로 가정한다.
서버(300)는 기지국 A(810)로부터 새롭게 발생될 트래픽 PUSCH #A-2에 관한 정보를 획득할 수 있다. 서버(300)에 PUSCH #A-2에 관한 정보가 획득됨에 따라, 스케줄링 SC(351)는 PUSCH #A-2에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다. 예를 들어, 스케줄링 SC(351)는 PUSCH #A-2의 시간/주파수 축 자원 할당량이 8개의 RB(resource block)에 해당하고, 레이어 수가 2인 것으로 결정할 수 있다. 또한, 스케줄링 SC(351)는 PUSCH #A-2의 시간 지연 제한이 Yms인 것으로 결정할 수 있다.
스케줄링 SC(351)는 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다. 자원 모니터링 정보는, 모니터링 SC(355)에서 이전 트래픽 처리 시 사용된 프로세서 자원을 모니터링한 결과 생성될 수 있으며, 무선 자원 할당량을 기준으로 사용된 프로세서 자원에 관한 정보를 포함할 수 있다.
스케줄링 SC(351)는 PUSCH #A-2에 대해 요구되는 시간 지연이 임계값 미만인 경우, PUSCH #A-2의 처리에 필요한 전체 프로세서 자원을 할당할 수 있다. 또한, 스케줄링 SC(351)는 필요한 전체 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 작은 지 여부를 판단할 수 있다. 스케줄링 SC(351)는 필요한 전체 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 큰 경우, 기존 파이프라인에 PUSCH #A-2를 할당하는 것으로 결정할 수 있다.
또한, 스케줄링 SC(351)는 기존 파이프라인에서 처리 중인 PUSCH #A-1 및 PUSCH #B-1과 새롭게 발생될 PUSCH #A-2의 우선 순위를 비교할 수 있다. 우선 순위를 결정하는데 기준이 되는 일 예로 시간 지연 제한이 포함될 수 있다. 스케줄링 SC(351)는 PUSCH #A-2의 시간 지연 제한이 PUSCH #A-1의 시간 지연 제한 보다 짧은 경우, PUSCH #A-1의 처리를 중단할 수 있다. 또한, 스케줄링 SC(351)는 PUSCH #A-1의 처리 중단으로 인해, 추가 가용 프로세서 자원이 확보됨에 따라, 새로운 파이프라인(836)을 생성하는 것으로 결정할 수 있다. 이에 따라, 파이프라인 관리 SC는 새로운 파이프라인(836)을 생성하고, 새로운 파이프라인(836)에 PUSCH #A-2가 할당될 수 있다. 이에 따라, PUSCH #A-2는 기존 파이프라인(834)에서 처리 중인 PUSCH #B-1과 병렬적으로 처리될 수 있다.
도 9는 일 실시예에 따른 가상화된 RAN에서 프로세서 자원을 스케줄링하는 방법의 도면이다.
도 9를 참조하면, 복수의 기지국(910, 920)에서 각각 트래픽이 발생할 수 있다. 복수의 기지국(910, 920)에서 발생된 트래픽은 서버(300)로 전달될 수 있다. 본 실시예에서는, 기지국 A(910)에서 발생한 PUSCH(physical uplink shared channel) #A1 및 기지국 B(920)에서 발생한 PUSCH #B-1를 서버(300)에서 처리 중인 것으로 가정한다. PUSCH는 데이터 전송을 위한 UL 채널에 해당하나, 본 명세서에서는 설명의 편의를 위해, PUSCH를 이를 통해 수신되는 트래픽을 지칭하는데 사용하도록 한다.
서버(300)는 기지국 A(910)로부터 새롭게 발생될 트래픽 PUSCH #A-2 및 기지국 B(920)로부터 새롭게 발생될 트래픽 PUSCH #B-2에 관한 정보를 획득할 수 있다. 서버(300)에 PUSCH #A-2 및 PUSCH #B-2에 관한 정보가 획득됨에 따라, 스케줄링 SC(351)는 PUSCH #A-2 및 PUSCH #B-2에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다. 예를 들어, 스케줄링 SC(351)는 PUSCH #A-2의 시간/주파수 축 자원 할당량이 8개의 RB에 해당하고, 레이어 수가 2이며, PUSCH #A-2의 시간/주파수 축 자원 할당량이 8개의 RB에 해당하고, 레이어 수가 4인 것으로 결정할 수 있다. 또한, 스케줄링 SC(351)는 PUSCH #A-2의 시간 지연 제한이 Mms이고, PUSCH #B-2의 시간 지연 제한이 Nms인 것으로 결정할 수 있다.
스케줄링 SC(351)는 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다. 자원 모니터링 정보는, 모니터링 SC(355)에서 이전 트래픽 처리 시 사용된 프로세서 자원을 모니터링한 결과 생성될 수 있으며, 무선 자원 할당량을 기준으로 사용된 프로세서 자원에 관한 정보를 포함할 수 있다.
스케줄링 SC(351)는 PUSCH #A-2에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당할 수 있다. 또한, 스케줄링 SC(351)는 PUSCH #B-2에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당할 수 있다. 스케줄링 SC(351)는 PUSCH #A-2 및 PUSCH #B-2에 대해 할당이 필요한 최소 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 작은 지 여부를 판단할 수 있다. 스케줄링 SC(351)는 PUSCH #A-2 및 PUSCH #B-2에 대해 할당이 필요한 최소 프로세서 자원의 크기가 GPU(345)에서의 가용 프로세서 자원의 크기 보다 작은 경우, 파이프라인을 생성하는 것으로 결정할 수 있다. 스케줄링 SC(351)의 결정에 따라, 파이프라인 관리 SC(353)는 새로운 파이프라인(936)을 생성하고, 새로운 파이프라인(936)에 PUSCH #A-2 및 PUSCH #B-2에 대한 기 설정된 크기의 최소 프로세서 자원이 할당될 수 있다. 가 할당될 수 있다. 새로운 파이프라인(936)에 할당된 PUSCH #A-2 및 PUSCH #B-2의 최소 프로세서 자원은 기존 파이프라인(632, 634)에서 처리 중인 PUSCH #A-1, PUSCH #B-1과 병렬적으로 처리될 수 있다.
도 9는 PUSCH #A-2 및 PUSCH #B-2에서 기 설정된 크기의 최소 프로세서 자원을 제외한 나머지 프로세서 자원은 기존 파이프라인(932, 934)에 할당되는 것으로 도시하고 있으나, 이는 일 예일 뿐, 나머지 프로세서 자원 역시 새로운 파이프라인(936)에 할당될 수 있다.
도 10은 일 실시예에 따른 가상화된 RAN에서의 트래픽 처리 시 발생하는 시간 지연에 대해 설명하기 위한 도면이다.
도 10을 참조하면, 서버(300)는 기지국 A(1010) 및 기지국 B(1020) 로부터 각각의 트래픽 정보를 획득할 수 있다. 예를 들어, 서버(300)는 기지국 A(1010) 및 기지국 B(1020)로부터 PUSCH #3 및 PUSCH #4에 관한 정보를 획득할 수 있다.
서버(300)에 PUSCH #3 및 PUSCH #4에 관한 정보가 획득됨에 따라, 스케줄링 SC(351)는 PUSCH #3 및 PUSCH #4에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다. 예를 들어, 스케줄링 SC(351)는 PUSCH #3, PUSCH #4의 채널 코딩에 사용된 코드워드의 길이, 채널 추정에 사용된 DMRS를 구성하는 심볼 수, 채널 등화에 사용된 데이터 심볼 수, 레이어 수 등에 기초하여 무선 자원 할당량을 결정할 수 있다. 또한, 스케줄링 SC(351)는 PUSCH #3의 시간 지연 제한이 10
Figure PCTKR2021018213-appb-img-000001
s이고, PUSCH #4의 시간 지연 제한이 50
Figure PCTKR2021018213-appb-img-000002
s 인 것으로 결정할 수 있다.
스케줄링 SC(351)는 모니터링 SC(355)으로부터 획득한 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다. 스케줄링 SC(351)는 PUSCH #3 및 PUSCH #4 각각에 대해 요구되는 시간 지연이 임계값 미만인지 여부를 판단하여, 스케줄링 방법을 결정할 수 있다. 도 10에 도시된 실시예에서는, PUSCH #3 및 PUSCH #4 각각에 대해 요구되는 시간 지연이 임계값 미만인 것으로 가정한다. 이 경우, 스케줄링 SC(351)는 PUSCH #3 및 PUSCH #4 각각의 처리에 요구되는 전체 프로세서 자원을 할당할 수 있다.
또한, 스케줄링 SC(351)는 PUSCH #3 및 PUSCH #4에 대해 할당이 필요한 프로세서 자원의 크기가 GPU에서의 가용 프로세서 자원의 크기 보다 작은 지 여부를 판단할 수 있다. 예를 들어, PUSCH #3 및 PUSCH #4 각각에 대해 할당이 필요한 프로세서 자원의 크기가 40개의 SM(stream multiprocessor) 및 60개의 SM으로 결정될 수 있다. SM은 트래픽 처리를 위한 프로그램 코드를 수행하는 다수의 코어(core), 적어도 하나의 캐쉬 메모리, 복수의 레지스터들을 포함할 수 있다.
스케줄링 SC(351)는 필요 프로세서 자원의 크기가 가용 프로세서 자원의 크기 보다 작은 경우, 파이프라인을 생성하는 것으로 결정할 수 있다. 서버(300)에서는 이전에 할당된 PUSCH #1 및 PUSCH #2에 대한 처리가 수행될 수 있고, 전체 프로세서 자원 중 PUSCH #1 및 PUSCH #2의 처리에 사용되는 프로세서 자원을 제외한 나머지가 가용 프로세서 자원으로 결정될 수 있다. 도 10에 도시된 실시예에서는, PUSCH #3에 대한 필요 프로세서 자원 및 PUSCH #4에 대한 필요 프로세서 자원 각각은 가용 프로세서 자원의 크기 보다 작으나, 필요 프로세서 자원의 총합의 크기는 가용 프로세서 자원의 크기 보다 큰 것으로 가정한다. 이에 따라, 스케줄링 SC(351)는 PUSCH #3 및 PUSCH #4 중 시간 지연 제한이 상대적으로 더 짧은 트래픽을 선택하여, 선택된 트래픽이 우선적으로 처리되도록 스케줄링을 수행할 수 있다. 예를 들어, 스케줄링 SC(351)는 시간 지연 제한이 10
Figure PCTKR2021018213-appb-img-000003
s 인 PUSCH #3와 시간 지연 제한이 50
Figure PCTKR2021018213-appb-img-000004
s 인 PUSCH #4 중 PUSCH #3를 선택할 수 있다.
스케줄링 SC(351)의 결정에 따라, 파이프라인 관리 SC(353)는 GPU #1(1030) 및 GPU #2(1040) 중 가용 프로세서 자원이 존재하는 GPU #2에 새로운 파이프라인을 생성할 수 있다. 또한, 새로운 파이프라인에 PUSCH #3이 할당될 수 있으며, PUSCH #3는 PUSCH #2와 병렬적으로 처리될 수 있다. 한편, 스케줄링 SC(351)는 PUSCH #4를 GPU #1(1030)의 파이프라인에 할당할 수 있다. GPU #1(1030)에 할당되어 있는 PUSCH #1의 잔여 처리 시간은 10
Figure PCTKR2021018213-appb-img-000005
s인 반면에, PUSCH #2의 잔여 처리 시간은 100
Figure PCTKR2021018213-appb-img-000006
s임에 따라 스케줄링 SC(351)는 상대적으로 잔여 처리 시간이 짧은 GPU #1(1030)의 파이프라인에 PUSCH #4를 할당할 수 있다. PUSCH #4는 PUSCH #1이 처리된 후에 GPU #1(1030)의 파이프라인에서 처리될 수 있다.
도 11은 일 실시예에 따른 vRAN에서 시간 지연 제한이 상이한 트래픽들의 처리를 위해 프로세서 자원을 스케줄링하는 방법을 설명하기 위한 도면이다.
도 11을 참조하면, 서버(300)는 복수의 기지국들(1110, 1120, 1130)로부터 트래픽 정보를 획득할 수 있다. 예를 들어, 서버(300)는 트래픽 정보로서 트래픽을 발생시킨 서비스 종류에 관한 정보를 획득할 수 있다. 서버(300) 내의 스케줄링 SC(351)는 획득한 정보를 통해, 기지국 A(1110)로부터 URLLC 서비스에서 발생된 트래픽이 수신되고, 기지국 B(1120)로부터 eMBB 서비스에서 발생된 트래픽이 수신되며, 기지국 C(1130)로부터 mMTC 서비스 및 eMBB 서비스에서 발생된 트래픽이 수신될 예정임을 확인할 수 있다. 본 실시예에서는 설명의 편의상 eMBB 서비스에서 발생된 트래픽을 eMBB 트래픽, mMTC 서비스에서 발생된 트래픽을 mMTC 트래픽 및 URLLC 서비스에서 발생된 트래픽을 URLLC 트래픽으로 지칭하도록 한다.
스케줄링 SC(351)는 eMBB 트래픽, mMTC 트래픽 및 URLLC 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다. 예를 들어, 스케줄링 SC(351)는 eMBB 트래픽, mMTC 트래픽 및 URLLC 트래픽의 요구 사항(requirement. 예를 들어, 데이터 레이트, 에러율, 커넥티비티)에 기초하여 무선 자원 할당량을 결정할 수 있다. 또한, 스케줄링 SC(351)는 eMBB 트래픽, mMTC 트래픽 및 URLLC 트래픽의 시간 지연에 대한 정보를 결정할 수 있다.
스케줄링 SC(351)는 모니터링 SC(355)으로부터 획득한 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다. 스케줄링 SC(351)는 eMBB 트래픽, mMTC 트래픽 및 URLLC 트래픽 각각에 대해 요구되는 시간 지연이 임계값 미만인지 여부를 판단하여, 스케줄링 방법을 결정할 수 있다.
스케줄링 SC(351)는 URLLC 트래픽의 시간 지연이 임계값 미만임에 따라, URLLC 트래픽 처리에 필요한 프로세서 자원 전체를 파이프라인(1142, 1144, 1146)에 할당하는 것으로 스케줄링 정보를 결정할 수 있다. 또한, 스케줄링 SC(351)는 eMBB 트래픽 및 mMTC 트래픽의 경우, 시간 지연이 임계값 이상임에 따라, 기 설정된 크기의 최소 프로세서 자원을 파이프라인(1142, 1144, 1146)에 할당하는 것으로 스케줄링 정보를 결정할 수 있다.
또한, 스케줄링 SC(351)는 URLLC 트래픽, eMBB 트래픽 및 mMTC 트래픽에 대해 할당이 필요한 프로세서 자원의 크기가 GPU에서의 가용 프로세서 자원의 크기 보다 작은 지 여부를 판단할 수 있다. 스케줄링 SC(351)는 URLLC 트래픽, eMBB 트래픽 및 mMTC 트래픽의 처리를 위해 필요한 프로세서 자원의 총 합의 크기가 GPU에서의 가용 프로세서 자원의 크기 보다 큰 경우, 각 트래픽의 시간 지연 제한을 고려하여, 병렬적으로 처리할 트래픽을 선택할 수 있다. 예를 들어, 스케줄링 SC(351)는 URLLC 트래픽 및 eMBB 트래픽의 시간 지연 제한이 mMTC 트래픽의 시간 지연 제한 보다 상대적으로 짧음에 따라, mMTC 트래픽을 URLLC 트래픽 및 eMBB 트래픽 중 어느 하나의 처리가 완료된 후에 처리하는 것으로 스케줄링할 수 있다. 이 경우, URLLC 트래픽의 처리 시간이 eMBB 트래픽의 처리 시간 보다 상대적으로 짧으므로, 스케줄링 SC(351)는 mMTC 트래픽을 URLLC 트래픽이 할당된 제 2 파이프라인(1144)에 할당하는 것으로 결정할 수 있다. 이에 따라, 파이프라인 관리 SC(353)는 mMTC 트래픽을 제 2 파이프라인(1144)에 할당할 수 있으며, mMTC 트래픽은 URLLC 트래픽이 처리된 이후에 처리될 수 있다.
도 12는 일 실시예에 따라 프로세서 자원을 스케줄링하는 가상화된 RAN의 도면이다.
도 12를 참조하면, 서버(1200)는 vRAN 기능을 수행하기 위한 소프트웨어를 구동시킬 수 있는 하드웨어(1210)를 포함할 수 있다. 도 12의 실시예에서, 서버(1200)는 GPU 이외에도 CPU, RAM, 스토리지 및 NIC를 포함할 수 있으나, 설명의 편의상 GPU 이외의 구성 요소들은 생략되었다. 또한, 도 12의 실시예에서는 복수의 GPU(1211 내지 1215)가 서버(1200)에 포함되는 것으로 설명하였으나, 이는 일 실시예일 뿐, 서버(1200)는 하나의 GPU를 포함할 수도 있다. 또한, 서버(1200)는 OS(120), 가상화 소프트웨어(1230) 및 가상화 마스터(1270)를 포함할 수 있다.
도 12의 서버(1200)에 포함된 구성 요소들 중 도 3의 서버(300)에서 전술한 바와 그 기능이 동일한 구성 요소에 대해서는 설명을 생략하도록 한다.
vRAN 패키지(1240)는 하나 이상의 기지국에 대한 스케줄링 요청을 획득할 수 있다. 스케줄링 요청은, 일 실시예에 따라 단말이 기지국에 UL로 트래픽을 전송하기 위해 시간-주파수 자원의 할당을 요청하는 경우 획득되거나, 다른 실시예에 따라 서비스 서버가 기지국에 접속한 복수의 단말들에게 DL로 송신하고자 하는 트래픽 정보를 제공하기 위해 획득될 수 있다. vRAN 패키지(1240)는 RLC SC (1241), MAC SC(1243) 및 PHY SC(1245)를 포함할 수 있다.
vRAN 패키지(1240)에 전달된 트래픽 중 MEC (mobile edge computing) 서비스를 이용하는 애플리케이션 실행으로 인하여 발생된 트래픽은 MEC 패키지(1250)로 전달될 수 있다. MEC 패키지(1250)는 엣지 애플리케이션을 실행하고, 엣지 애플리케이션 실행으로 인해 발생한 트래픽 또는 엣지 애플리케이션과 관련하여 수신한 트래픽을 처리할 수 있다. 엣지 애플리케이션은 엣지 데이터 네트워크 상에서 실행될 수 있으며, 엣지 데이터 네트워크는, 단말이 연결된 3GPP 네트워크의 기지국의 내부 또는 기지국과 지리적으로 가까운 위치에 배치되고, 외부 서버에서 제공되는 컨텐츠와 적어도 일부가 동일한 컨텐츠를 제공할 수 있다. vRAN 패키지(1240)에 전달된 트래픽 중 MEC 서비스를 이용하지 않는 트래픽의 경우는 서버(1200) 외부의 다른 서버로 전달될 수 있으며, 본 개시에서는 서버(1200) 외부의 다른 서버에서 트래픽을 처리하는 방법에 대해서는 설명을 생략하도록 한다.
MEC 패키지(1250)는 엣지 인에이블러 SC(1255) 및 복수의 edge app SC(1251, 1253)를 포함할 수 있다. 복수의 edge app SC(1251, 1253)은 단말에 MEC 서비스를 제공하는 엣지 데이터 네트워크 내 제 3자가 제공하는 응용 애플리케이션으로서, 애플리케이션 클라이언트와 관련된 데이터를 송수신하기 위하여, 애플리케이션 클라이언트와 데이터 세션을 형성할 수 있다. 엣지 인에이블러 SC(1255)는 엣지 데이터 네트워크에 포함된 엣지 애플리케이션들에 서비스를 제공할 수 있고, MEC 서비스에 관한 정보를 제공할 수 있다.
스케줄링 SC(1261)는 vRAN 패키지로부터 수신한 트래픽에 관한 정보에 기초하여 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 결정할 수 있다. 스케줄링 SC(1261)는 무선 자원 및 시간 지연에 관한 정보와 서버(1200)에서의 가용 프로세서 자원을 기초로, GPU(1211~1215)의 적어도 하나의 파이프라인에서 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정할 수 있다. 서버는 하나 이상의 기지국에서 발생될 트래픽의 처리를 위해, 서버에서의 가용 프로세서 자원을 식별할 수 있다.
스케줄링 SC(1261)는 GPU 모니터링 SC(1265)로부터 스케줄링 요청 이전에 발생된 트래픽 처리시 이용된 프로세서 자원에 관한 자원 모니터링 정보를 획득할 수 있다. 스케줄링 SC(1261)는 자원 모니터링 정보를 이용하여, 발생될 트래픽에 대해 요구되는 무선 자원 및 시간 지연에 관한 정보를 기초로 트래픽의 처리에 필요한 프로세서 자원을 예측할 수 있다.
스케줄링 SC(1261)는 트래픽에 대해 요구되는 시간 지연이 임계값 미만인 경우, 트래픽의 처리에 필요한 전체 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정할 수 있다. 또한, 다른 예에 따라 스케줄링 SC(1261)는 트래픽에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당하는 것으로 스케줄링 정보를 결정할 수 있다.
스케줄링 SC(1261)는 트래픽에 할당되는 프로세서 자원의 크기가 서버에서의 가용 프로세서 자원의 크기를 초과하는 경우, MEC 패키지(1250) 에서 처리를 위해 대기 중인 트래픽의 크기를 확인할 수 있다. 스케줄링 SC(1261)는 MEC 패키지(1250)에서 대기 중인 트래픽의 크기를 확인한 결과, MEC 패키지(1250)를 위해 할당된 프로세서 자원을 줄여도 된다고 판단한 경우, 기존에 MEC 패키지(1250)에 할당된 프로세서 자원을 줄일 수 있다.
이를 통해 가용 프로세서 자원이 추가로 확보됨에 따라, 파이프라인 관리 SC(1263)는 새로운 파이프라인을 생성할 수 있다. 파이프라인 SC(1263)는 스케줄링 SC(1261)로부터 수신한 스케줄링 정보를 기초로, 파이프라인을 새롭게 생성하거나 기존의 파이프라인을 유지할 수 있다. 또한, 파이프라인 SC(1263)는 스케줄링 정보에 기초하여, 발생될 트래픽이 처리되어야 하는 파이프라인에 관한 정보를 PHY SC(1245)에 제공할 수 있다.
GPU 모니터링 SC(1265)는 트래픽 처리시 이용되는 프로세서 자원을 모니터링하고, 모니터링 된 정보를 저장할 수 있다. GPU 모니터링 SC(1265)는 스케줄링 SC(1261)에 스케줄링 요청 이전에 발생된 트래픽 처리시 이용된 프로세서 자원에 관한 자원 모니터링 정보를 제공할 수 있다.
도 13은 일 실시예에 따른 서버가 MEC 패키지 및 vRAN 패키지에서 발생될 트래픽을 기초로 프로세서 자원을 스케줄링 하는 방법의 도면이다.
도 13을 참조하면, 서버는 현재 vRAN 패키지를 위해 할당된 vRAN GPU 자원(1310) 및 MEC 패키지를 위해 할당된 MEC GPU 자원(1320)의 크기를 확인할 수 있다. 또한, 서버는 vRAN 패키지에서 발생할 트래픽 및 MEC 패키지에서 발생할 트래픽에 관한 정보를 획득할 수 있다.
서버는 획득한 정보를 기초로, vRAN 패키지에서 발생할 트래픽이 현재 처리 중인 트래픽에 비하여 감소할 것임을 확인할 수 있다. 서버는 이에 따라, 현재 vRAN 패키지를 위해 할당된 GPU 자원의 40%만이 이용될 것이라고 추정할 수 있고, 이에 따라, vRAN 패키지 및 MEC 패키지 각각을 위해 할당된 GPU 자원을 조정할 수 있다. 예를 들어, 서버는 vRAN 패키지에서 발생될 트래픽이 감소할 것으로 예측됨에 따라, vRAN 패키지를 위해 할당된 vRAN GPU 자원(1310)의 크기를 줄일 수 있다. 서버는 조정된 vRAN GPU 자원(1315) 및 MEC GPU 자원(1325)을 통해 각각 vRAN 패키지 및 MEC 패키지에서 발생하는 트래픽을 처리할 수 있다.
도 14는 일 실시예에 따라 vRAN 에서 프로세서 자원을 스케줄링하는데 이용되는 AI 모델의 도면이다.
도 14를 참조하면, AI 모델(1400)에 입력 데이터로, 필요 무선 자원 할당량, 허용 시간 지연 및 가용 프로세서 자원에 관한 정보가 적용될 수 있다. 도 14를 참조하여 전술한 서버는 전술한 입력 데이터가 AI 모델(1400)에 적용된 결과, 획득되는 출력 데이터와 평가 데이터를 비교 결과에 기초하여, AI 모델(1400)을 훈련시킬 수 있다. 예를 들어, 서버는 출력 데이터와 평가 데이터의 차이가 기 설정된 임계값 미만이 될 때까지 다양한 입력 데이터를 AI 모델(1400)에 적용할 수 있다. 다른 예에 따라, 서버는 출력 데이터와 평가 데이터의 차이 값을 입력 데이터와 함께 AI 모델(1400)에 적용함으로써, AI 모델(1200)을 훈련시킬 수 있다. 훈련에 의해, AI 모델(1400)의 신경망을 구성하는 레이어의 파라미터의 값은 갱신될 수 있다. 다만, 이는 일 예일 뿐, AI 모델의 훈련 방법이 전술한 예에 한정되는 것은 아니다.
일 실시예에 따른 서버는 훈련이 완료된 AI 모델(1400)에 새롭게 획득한 필요 무선 자원 할당량, 허용 시간 지연 및 가용 프로세서 자원에 관한 정보를 입력하여, 스케줄링 정보를 획득할 수 있다. 스케줄링 정보는 도 3을 참조하여 전술한 바와 동일할 수 있다.
블록도의 각 구성요소는 실제 구현되는 기기의 사양에 따라 통합, 추가, 또는 생략될 수 있다. 즉, 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다. 또한, 각 블록에서 수행하는 기능은 실시예들을 설명하기 위한 것이며, 그 구체적인 동작이나 장치는 본 발명의 권리범위를 제한하지 아니한다.
본 개시의 청구항 또는 명세서에 기재된 실시예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다.
소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금 본 개시의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(ROM: Read Only Memory), 전기적 삭제가능 프로그램가능 롬(EEPROM: Electrically Erasable Programmable Read Only Memory), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(CD-ROM: Compact Disc-ROM), 디지털 다목적 디스크(DVDs: Digital Versatile Discs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 프로그램은 인터넷(Internet), 인트라넷(Intranet), LAN(Local Area Network), WLAN(Wide LAN), 또는 SAN(Storage Area Network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 본 개시의 실시 예를 수행하는 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 본 개시의 실시 예를 수행하는 장치에 접속할 수도 있다.
한편, 본 명세서와 도면에 개시된 본 개시의 실시예들은 본 개시의 기술 내용을 쉽게 설명하고 본 개시의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 개시의 범위를 한정하고자 하는 것은 아니다. 즉 본 개시의 기술적 사상에 바탕을 둔 다른 변형예들이 실시 가능하다는 것은 본 개시의 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한 상기 각각의 실시 예는 필요에 따라 서로 조합되어 운용할 수 있다. 예컨대, 본 개시의 일 실시예와 다른 일 실시예의 일부분들이 서로 조합되어 기지국과 단말이 운용될 수 있다. 또한 FDD LTE 시스템, TDD LTE 시스템, 5G 혹은 NR 시스템 등 다양한 시스템에서 상기 실시예의 기술적 사상에 바탕을 둔 다른 변형예들이 실시 가능할 것이다.
본 개시가 다양한 실시예들을 참조하여 도시되고 설명되었지만, 본 개시가 속한 기술 분야에서 통상의 지식을 가진 자라면, 첨부된 청구항 및 이에 상응하는 사항들에 의해 정의된 본 개시의 사상 및 범위를 벗어나지 않으면서 형태 및 세부 사항의 다양한 변경이 이루어질 수 있음을 이해할 것이다.

Claims (15)

  1. 서버가 무선 접속 네트워크(radio access network) 기능을 수행하는 방법에 있어서,
    하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 상기 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득하는 단계;
    상기 발생될 트래픽에 관한 정보에 기초하여, 상기 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 결정하는 단계;
    상기 무선 자원 및 시간 지연에 관한 정보와 상기 서버에서의 가용 프로세서 자원을 기초로, 상기 프로세서의 적어도 하나의 파이프라인에서 상기 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정하는 단계; 및
    상기 스케줄링 정보에 기초하여, 상기 적어도 하나의 파이프라인에서 상기 트래픽을 처리하는 단계를 포함하는, 방법.
  2. 제 1항에 있어서, 상기 스케줄링 정보를 결정하는 단계는,
    상기 트래픽에 대해 요구되는 시간 지연이 임계값 미만인 경우, 상기 트래픽의 처리에 필요한 전체 프로세서 자원을 할당하는 것으로 상기 스케줄링 정보를 결정하고,
    상기 트래픽에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당하는 것으로 상기 스케줄링 정보를 결정하는, 방법.
  3. 제 1항에 있어서,
    상기 스케줄링 요청 이전에 발생된 트래픽을 처리하는데 요구된 프로세서 자원에 관한 자원 모니터링 정보를 획득하는 단계를 더 포함하고,
    상기 스케줄링 정보를 결정하는 단계는.
    상기 자원 모니터링 정보를 이용하여, 상기 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 기초로 상기 트래픽의 처리에 필요한 프로세서 자원을 결정하는 단계를 포함하는, 방법.
  4. 제1항에 있어서,
    상기 기지국에서 발생될 트래픽에 관한 정보는, 상기 기지국에서 발생될 트래픽의 크기 및 타입에 관한 정보를 포함하고,
    상기 트래픽의 타입은,
    상기 트래픽을 발생시킨 각 서비스 별로 요구되는 데이터 전송 속도, 전송 지연(latency) 및 최대 연결 수(connection density) 중 적어도 하나의 성능에 따라 분류되는, 방법.
  5. 제 1항에 있어서,
    상기 무선 자원에 관한 정보는, 상기 트래픽의 송수신을 위한 시간-주파수 자원, 상기 기지국과 단말 간의 송수신 모드, 안테나 포트 수, 레이어, 채널 코딩 및 모듈레이션 기법 중 적어도 하나에 관한 정보를 포함하는, 방법.
  6. 제 1항에 있어서, 상기 스케줄링 정보를 결정하는 단계는.
    기 생성된 학습 네트워크 모델을 이용하여, 상기 무선 자원 및 시간 지연에 관한 정보와 상기 서버에서의 가용 프로세서 자원을 기초로, 상기 프로세서 자원에 관한 스케줄링 정보를 결정하는, 방법.
  7. 무선 접속 네트워크(radio access network) 기능을 수행하는 서버에 있어서,
    송수신부;
    하나 이상의 인스트럭션들을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 상기 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득하고,
    상기 발생될 트래픽에 관한 정보에 기초하여, 상기 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 결정하며,
    상기 무선 자원 및 시간 지연에 관한 정보와 상기 서버에서의 가용 프로세서 자원을 기초로, 상기 프로세서의 적어도 하나의 파이프라인에서 상기 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정하고,
    상기 스케줄링 정보에 기초하여, 상기 적어도 하나의 파이프라인에서 상기 트래픽을 처리하는, 서버.
  8. 제 7항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 트래픽에 대해 요구되는 시간 지연이 임계값 미만인 경우, 상기 트래픽의 처리에 필요한 전체 프로세서 자원을 할당하는 것으로 상기 스케줄링 정보를 결정하고,
    상기 트래픽에 대해 요구되는 시간 지연이 임계값 이상인 경우, 기 설정된 크기의 최소 프로세서 자원을 할당하는 것으로 상기 스케줄링 정보를 결정하는, 서버.
  9. 제 8항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 트래픽에 할당되는 프로세서 자원의 크기가 상기 서버에서의 가용 프로세서 자원의 크기를 초과하는 경우, 상기 적어도 하나의 파이프라인에 미리 할당된 트래픽 처리 이후에, 상기 트래픽을 처리하고,
    상기 트래픽에 할당되는 프로세서 자원의 크기가 상기 서버에서의 가용 프로세서 자원의 크기 이하인 경우, 상기 트래픽의 처리를 위해 생성된 신규 파이프라인에서 상기 트래픽을 처리하는, 서버.
  10. 제 8항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 트래픽에 할당되는 프로세서 자원의 크기가 상기 서버에서의 가용 프로세서 자원의 크기를 초과하고, 상기 트래픽의 처리가 상기 적어도 하나의 파이프라인에 미리 할당된 트래픽의 처리보다 우선 순위가 높은 경우, 상기 미리 할당된 트래픽의 처리를 중단하고, 상기 트래픽을 처리하는, 서버.
  11. 제 10항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 미리 할당된 트래픽의 처리가 중단됨에 따라, 상기 트래픽의 처리를 위해 신규 파이프라인을 생성하고,
    상기 생성된 신규 파이프라인에서 상기 트래픽을 처리하는, 서버.
  12. 제 7항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 스케줄링 요청 이전에 발생된 트래픽을 처리하는데 요구된 프로세서 자원에 관한 자원 모니터링 정보를 획득하고,
    상기 자원 모니터링 정보를 이용하여, 상기 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 기초로 상기 트래픽의 처리에 필요한 프로세서 자원을 결정하는, 서버.
  13. 제7항에 있어서,
    상기 기지국에서 발생될 트래픽에 관한 정보는, 상기 기지국에서 발생될 트래픽의 크기 및 타입에 관한 정보를 포함하고,
    상기 트래픽의 타입은,
    상기 트래픽을 발생시킨 각 서비스 별로 요구되는 데이터 전송 속도, 전송 지연(latency) 및 최대 연결 수(connection density) 중 적어도 하나의 성능에 따라 분류되는, 서버.
  14. 제 7항에 있어서, 상기 적어도 하나의 프로세서는,
    기 생성된 학습 네트워크 모델을 이용하여, 상기 무선 자원 및 시간 지연에 관한 정보와 상기 서버에서의 가용 프로세서 자원을 기초로, 상기 프로세서 자원에 관한 스케줄링 정보를 결정하는, 서버.
  15. 서버가 무선 접속 네트워크(radio access network) 기능을 수행하는 방법을 수행하도록 하는 프로그램이 저장된 기록매체를 포함하는 컴퓨터 프로그램 제품에 있어서,
    하나 이상의 기지국에 대한 스케줄링 요청을 기초로, 상기 하나 이상의 기지국에서 발생될 트래픽에 관한 정보를 획득하는 동작;
    상기 발생될 트래픽에 관한 정보에 기초하여, 상기 트래픽에 대해 요구되는 무선 자원 및 시간 지연(latency)에 관한 정보를 결정하는 동작;
    상기 무선 자원 및 시간 지연에 관한 정보와 상기 서버에서의 가용 프로세서 자원을 기초로, 상기 프로세서의 적어도 하나의 파이프라인에서 상기 트래픽 처리를 위해 할당되는 프로세서 자원에 관한 스케줄링 정보를 결정하는 동작; 및
    상기 스케줄링 정보에 기초하여, 상기 적어도 하나의 파이프라인에서 상기 트래픽을 처리하는 동작을 수행하도록 하는 프로그램이 저장된 기록매체.
PCT/KR2021/018213 2020-12-04 2021-12-03 무선 접속 네트워크 기능을 수행하는 방법 및 장치 WO2022119375A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202180081657.3A CN116584079A (zh) 2020-12-04 2021-12-03 执行无线接入网络功能的方法和装置
EP21901063.4A EP4243374A4 (en) 2020-12-04 2021-12-03 METHOD AND APPARATUS FOR PERFORMING A RADIO ACCESS NETWORK FUNCTION
US17/567,374 US20220183026A1 (en) 2020-12-04 2022-01-03 Method and apparatus for performing radio access network function

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200168719A KR20220079191A (ko) 2020-12-04 2020-12-04 무선 접속 네트워크 기능을 수행하는 방법 및 장치
KR10-2020-0168719 2020-12-04

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/567,374 Continuation US20220183026A1 (en) 2020-12-04 2022-01-03 Method and apparatus for performing radio access network function

Publications (1)

Publication Number Publication Date
WO2022119375A1 true WO2022119375A1 (ko) 2022-06-09

Family

ID=81853332

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/018213 WO2022119375A1 (ko) 2020-12-04 2021-12-03 무선 접속 네트워크 기능을 수행하는 방법 및 장치

Country Status (2)

Country Link
KR (1) KR20220079191A (ko)
WO (1) WO2022119375A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116528369A (zh) * 2023-06-29 2023-08-01 阿里巴巴(中国)有限公司 专网基站的控制方法、设备及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090052784A (ko) * 2007-11-21 2009-05-26 엘지전자 주식회사 릴레이를 통한 통신 방법
KR101075238B1 (ko) * 2005-11-02 2011-10-19 한국전자통신연구원 이동통신 시스템의 패킷 스케줄링 방법, 그리고 그 장치
KR20130139684A (ko) * 2012-06-13 2013-12-23 주식회사 케이티 통화 트래픽을 위한 자원할당 방법, 그리고 이를 수행하는 자원할당장치
KR20140116899A (ko) * 2012-01-04 2014-10-06 퀄컴 인코포레이티드 매크로 셀에 대한 최소 간섭을 갖는 단문 메시지 송신
KR20190062213A (ko) * 2017-11-28 2019-06-05 연세대학교 산학협력단 무허가 다중 접속을 위한 스케줄링 방법 및 이를 위한 사용자 단말

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101075238B1 (ko) * 2005-11-02 2011-10-19 한국전자통신연구원 이동통신 시스템의 패킷 스케줄링 방법, 그리고 그 장치
KR20090052784A (ko) * 2007-11-21 2009-05-26 엘지전자 주식회사 릴레이를 통한 통신 방법
KR20140116899A (ko) * 2012-01-04 2014-10-06 퀄컴 인코포레이티드 매크로 셀에 대한 최소 간섭을 갖는 단문 메시지 송신
KR20130139684A (ko) * 2012-06-13 2013-12-23 주식회사 케이티 통화 트래픽을 위한 자원할당 방법, 그리고 이를 수행하는 자원할당장치
KR20190062213A (ko) * 2017-11-28 2019-06-05 연세대학교 산학협력단 무허가 다중 접속을 위한 스케줄링 방법 및 이를 위한 사용자 단말

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116528369A (zh) * 2023-06-29 2023-08-01 阿里巴巴(中国)有限公司 专网基站的控制方法、设备及系统
CN116528369B (zh) * 2023-06-29 2023-11-17 阿里巴巴(中国)有限公司 专网基站的控制方法、设备及系统

Also Published As

Publication number Publication date
KR20220079191A (ko) 2022-06-13

Similar Documents

Publication Publication Date Title
WO2021002737A1 (en) Method and apparatus for measuring and reporting cross-link interference in next-generation mobile communication system
WO2019160327A1 (ko) 이동통신 시스템에서 셀 재선택을 수행하는 방법 및 장치
WO2019216668A1 (en) Method and apparatus for indicating semi-persistent sounding reference signal as reference signal of neighboring cell in next-generation mobile communication system
WO2020197343A1 (en) Method and apparatus for reporting ue capability for mr-dc in nr system
WO2019035670A1 (en) METHOD AND APPARATUS FOR TRANSMITTING AND RECEIVING DOUBLE PACKETS IN A NEXT GENERATION MOBILE COMMUNICATION SYSTEM
WO2018131990A1 (en) Method and apparatus for processing data in a wireless communication system
WO2020226389A1 (ko) 무선 통신 시스템에서 단말 능력을 보고하는 방법 및 장치
WO2021251741A1 (ko) 무선 통신 시스템에서 스케줄링 방법 및 장치
WO2021125712A1 (ko) 차세대 이동통신 시스템에서 rrc 메시지의 분할 전송과 관련된 타이머 관리 방법 및 장치
WO2021194123A1 (ko) 차세대 이동 통신 시스템에서 크로스 캐리어 스케줄링 방법 및 장치
WO2021215884A1 (ko) 무선 통신 시스템에서 신호를 송수신하는 방법 및 장치
EP3818761A1 (en) Data communication method and apparatus in wireless communication system
WO2021066433A1 (en) Measurement method and apparatus for conditional handover
WO2020235851A1 (en) Method and apparatus for controlling packet transmission for reducing latency in wireless communication system
WO2021172874A1 (en) Method and apparatus for executing virtualized network function
WO2017026847A1 (ko) 무선 통신 시스템에서 복수 개의 자원 요청을 처리하는 장치 및 방법
WO2022010135A1 (ko) 무선 통신 시스템에서 단말 능력 정보를 제공하는 방법 및 장치
WO2022119375A1 (ko) 무선 접속 네트워크 기능을 수행하는 방법 및 장치
WO2020055209A1 (en) Method and apparatus for transmitting packet in wireless communication system
WO2018155966A1 (ko) 무선 통신 시스템에서 기지국들 간 데이터 전송을 위한 장치 및 방법
WO2018097624A1 (en) Method and apparatus for adjusting transmission power
WO2020197315A1 (ko) 차세대 이동 통신 시스템에서 데이터 송수신 중단이 없는 핸드오버 방법 및 장치
WO2019132454A1 (ko) 무선 통신 네트워크에서 네트워크 디바이스의 트래픽 제어 방법 및 장치
WO2021215739A1 (ko) 무선 통신 시스템에서 단말 능력 보고를 위한 방법 및 장치
WO2021221409A1 (ko) 무선 통신 시스템에서 제어 정보를 설정하는 방법 및 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21901063

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202180081657.3

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2021901063

Country of ref document: EP

Effective date: 20230609

NENP Non-entry into the national phase

Ref country code: DE