WO2015065003A1 - Method for controlling qos by handling traffic depending on service - Google Patents

Method for controlling qos by handling traffic depending on service Download PDF

Info

Publication number
WO2015065003A1
WO2015065003A1 PCT/KR2014/010169 KR2014010169W WO2015065003A1 WO 2015065003 A1 WO2015065003 A1 WO 2015065003A1 KR 2014010169 W KR2014010169 W KR 2014010169W WO 2015065003 A1 WO2015065003 A1 WO 2015065003A1
Authority
WO
WIPO (PCT)
Prior art keywords
queue
service
traffic
qos
network device
Prior art date
Application number
PCT/KR2014/010169
Other languages
French (fr)
Korean (ko)
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 US15/032,707 priority Critical patent/US20160323189A1/en
Priority claimed from KR1020140147076A external-priority patent/KR101877595B1/en
Publication of WO2015065003A1 publication Critical patent/WO2015065003A1/en

Links

Images

Classifications

    • 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/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • 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

Definitions

  • the present invention relates to QoS control, and more particularly, to a QoS control method through traffic processing for each service in a software defined networking environment.
  • SDN Software Defined Network
  • Open Networking Foundation defines an interface between hardware (switch) and controller (Network OS). This is a protocol for interacting with the data plane by separating the control plane from the physical network to control how data packets are delivered through the network.
  • An object of the present invention for solving the above problems is to provide a QoS control method in an SDN environment.
  • Another object of the present invention for solving the above problems is to provide a QoS control method using traffic processing according to a service.
  • Another object of the present invention for solving the above problems is to provide a method for adding or deleting a queue for processing traffic according to a service, and a QoS control method using traffic processing according to queue statistics and network types.
  • a method for controlling QoS by a controller includes performing at least one of adding, deleting, and changing at least one queue configured at an output port of a network device. Determining a setting change of the queue for; And transmitting a queue state change message including information on the setting change of the determined queue to a network device, to perform setting change of the queue.
  • the setting change of the queue may be determined based on a service requirement or a QoS policy change.
  • the method includes receiving queue characteristic information for at least one queue set at an output port of a network device; Generating a flow entry for mapping between a service and at least one queue based on the queue characteristic information; The method may further include controlling the network device to process traffic for each service according to the generated flow entry.
  • the queue status message including the queue characteristic information may be received from a network device.
  • each service may be mapped to at least one queue set separately by being divided into a priority queue and at least one weighted round robin (WRR) queue.
  • WRR weighted round robin
  • the generating of the flow entry may include mapping traffic for the highest rank service to be assigned to a priority queue and mapping traffic for the next rank service to be sequentially assigned to at least one WRR queue. have.
  • the generating of the flow entry may sequentially process traffic for the service of the highest rank and sequentially perform traffic for the service of the next rank based on a weight applied to each of the at least one WRR queue in the remaining traffic range. Can be mapped to be assigned.
  • traffic allocated to at least one critical server may be mapped to different WRR queues.
  • the controlling of the network device may include: transmitting a flow table change message including a generated flow entry to the network device; Updating the flow table of the network device using the flow table change message;
  • the method may include controlling the network device to process traffic for each service based on the updated flow table.
  • the queue that can be supported by the output port of the network device from the network device (Queue) Receiving a queue setting information message including information about; Mapping between a service and at least one queue based on a queue establishment information message and a QoS policy; Sending a queue state change message to the network device to establish at least one queue based on a mapping relationship between a service and at least one queue.
  • mapping between the service and at least one queue comprises: setting each of the at least one queue to a Priority queue or at least one Weighted Round Robin (WRR) queue; Mapping each service to at least one queue based on the priority of each service.
  • WRR Weighted Round Robin
  • the mapping of the services to the at least one queue based on the priority of each service may include mapping traffic for the highest priority service to be allocated to the priority queue and at least traffic for the next rank service. It can be mapped to be sequentially assigned to one WRR queue.
  • mapping the services to the at least one queue based on the priority of each service may be performed by processing the traffic for the highest priority service and applying a weight to each of the at least one WRR queue in the remaining traffic range. Based on this, traffic for next-order services may be mapped sequentially.
  • the queue state change message may include a command for adding or deleting a queue to an output port of the network device.
  • the method comprises the steps of: receiving information about a lost packet from a network device to calculate a packet loss rate; The method may further include changing a weight applied to each of the at least one WRR queue based on the packet loss rate.
  • the changing of the weights applied to each of the at least one WRR queue may be performed by including a command for changing a weight in the queue state change message and transmitting the weight change command to the network device.
  • the method comprises the steps of: receiving a queue status message comprising queue characteristic information for at least one queue set based on the queue status change message; Generating a flow entry for mapping between a service and at least one queue based on the queue characteristic information; The method may further include controlling the network device to process traffic for each service according to the generated flow entry.
  • a queue (support) supported by the output port of the network device Transmitting a queue setting information message including information on the controller to the controller; Receiving a queue state change message generated by the controller based on the queue setting information message and the QoS policy; Setting at least one queue to an output port according to the queue state change message.
  • the queue state change message may include information generated by a controller by mapping between a service and at least one queue based on a queue setting information message and a QoS policy.
  • the queue state change message may include information generated by the controller by mapping between a network and at least one queue according to a network type priority based on a queue setting information message and a QoS policy.
  • the setting of the output port may be configured such that traffic for a service of the highest rank is allocated to a priority queue and traffic for a service of a next rank may be sequentially assigned to at least one WRR queue. .
  • the setting of the output port may include sequentially processing traffic for a service of the highest priority and sequentially processing traffic for a service of the next rank based on a weight applied to each of the at least one WRR queue in the remaining traffic range. Can be set to be assigned.
  • the QoS control method using the traffic processing according to the service according to the present invention as described above it is possible to efficiently use the network resources while satisfying the service quality by differentiating and processing the various services according to the traffic characteristics.
  • the controller can accurately determine the queue status of the switch in real time so that it can issue appropriate QoS control commands to the switch.
  • FIG. 1 is a block diagram illustrating a configuration of a controller and a network apparatus for performing a QoS control method using traffic processing according to a service according to an embodiment of the present invention.
  • FIG. 2 is a conceptual diagram illustrating a priority queue and a weighted round robin queue according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating a method of controlling QoS by mapping a queue for each service according to an embodiment of the present invention.
  • FIG. 4 is an exemplary diagram for explaining a queue status message according to an embodiment of the present invention.
  • FIG. 5 is a flowchart illustrating a method of controlling QoS by changing a queue state according to an embodiment of the present invention.
  • FIG. 6 is a flowchart illustrating a procedure of adding a queue according to an embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating a procedure of a method of deleting a queue according to an embodiment of the present invention.
  • FIG. 8 is a flowchart illustrating a procedure of changing a queue characteristic based on a lost packet rate according to an embodiment of the present invention.
  • FIG. 9 is a flowchart illustrating a procedure of mapping traffic allocated to a critical server to different queues according to an embodiment of the present invention.
  • FIG. 10 is a flowchart illustrating a method of controlling QoS by mapping queues for each network type according to an embodiment of the present invention.
  • 11 is a conceptual diagram illustrating a case where a queue is mapped for each network type according to an embodiment of the present invention.
  • first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • the controller referred to in the present invention is an integrated SDN controller, which may mean a function element for controlling related components (eg, a switch, a router, etc.) to control the flow of traffic. Can be.
  • related components eg, a switch, a router, etc.
  • controller is not limited to the physical implementation form or implementation location.
  • a controller refers to a controller function entity defined by OpenFlow (ONF), Internet Engineering Task Force (IETF), European Telecommunication Standards Institute (ETSI) and / or International Telecommunication Union Telecommunication (ITU-T). can do.
  • OpenFlow OpenFlow
  • IETF Internet Engineering Task Force
  • ETSI European Telecommunication Standards Institute
  • ITU-T International Telecommunication Union Telecommunication
  • the network device referred to in the present invention may refer to a functional element that substantially forwards, switches, or routes traffic (or packets), such as 'switch' or 'router'. Therefore, in the present invention, the network device may be referred to as a switch or a router.
  • a network device may mean a switch, a router, a switching element, a routing element, a forwarding element, and the like defined in ONF, IETF, ETSI, and / or ITU-T. Can be.
  • the parameter and / or message type (for example, flow table entry) defined in the ONF is used in the operation for QoS control in the openflow switch.
  • the mapping is not limited to the contents defined in ONF, and various parameters that can distinguish a controller from a switch can be used in transmitting a QoS control command between a controller and a switch, and messages used in an operation process for QoS control. Nor is it limited to the specific message mentioned later.
  • FIG. 1 is a block diagram illustrating a configuration of a controller and a network apparatus for performing a QoS control method using traffic processing according to a service according to an embodiment of the present invention.
  • a QoS control method using traffic processing according to a service may be performed by a controller and a switch.
  • the controller 100 includes a QoS policy management unit 110, a switch control unit 120, a flow table management unit 130, and a switch interworking processing unit 140.
  • the QoS policy manager 110 may manage a QoS policy for a domain managed by the controller 100.
  • the switch controller 120 may control the switch 200 to communicate with the controller 100 through the switch interworking processor 140. For example, the switch controller 120 may generate a control command for adding, modifying, and deleting a flow entry based on the QoS policy managed by the QoS policy manager 110, and may generate a control command.
  • the switch 200 can be controlled.
  • the flow table manager 130 may store and manage a parameter and a flow table for synchronizing the flow table.
  • the switch interworking processor 140 may process a protocol so that the switch 200 and the controller 100 can communicate.
  • the switch 200 includes a Qos controller 210, a switch controller 220, a flow table manager 230, and a controller interworking processor 240.
  • the QoS controller 210 may actually perform QoS control on the packet delivered to the output port.
  • the switch controller 220 may control the switch such as setting a queue characteristic for the output port. In addition, the switch controller 220 may receive and execute a control command from the controller 100.
  • the flow table manager 230 may manage the flow table received from the controller 100. That is, the flow table manager 230 may store and manage the parameters and the flow table for synchronizing the flow table for the switch.
  • the controller interworking processor 240 processes the protocol so that the controller 100 and the switch 200 can communicate.
  • FIG. 2 is a conceptual diagram illustrating a priority queue and a weighted round robin queue according to an embodiment of the present invention.
  • At least one queue may be set at an output port of a network device.
  • WRR weighted round robin
  • Service traffic can be classified into gold, silver, bronze, and best effort (BE) according to their characteristics.
  • Gold traffic is assigned to the priority queue and can be processed with the highest priority. In other words, if a packet is in a Priority queue, it can always be processed first, even if there is a packet in another queue.
  • Silver traffic has priority after Gold traffic. However, not all Silver traffic will always be processed before other Bronze or Best effort traffic, but will be processed by the assigned weight and then Bronze traffic.
  • Bronze traffic may also be processed by the assigned weight, followed by Best effort traffic.
  • Silver traffic can use 50% of the remaining bands used by Gold traffic
  • Bronze traffic can use 30% of the remaining bands used by Gold traffic
  • Best effort traffic can use the remaining bands left by Gold traffic. It may be set to use 20% of the band. Therefore, silver traffic may be processed with a higher priority than Bronze traffic, and Bronze traffic may be processed with a higher priority than Best effort traffic.
  • FIG. 3 is a flowchart illustrating a method of controlling QoS by mapping a queue for each service according to an embodiment of the present invention.
  • the switch may set a queue property for the output port x by using a command line interface (CLI) or a configuration protocol (S310).
  • CLI command line interface
  • S310 configuration protocol
  • the switch sets four queues for output port x, one queue (Q1) to Priority queue and the other three queues (Q2, Q3, Q4) to WRR (weighted round robin) queues. Can be set.
  • the switch sets four queues for output port x.However, the number of queues that can be set for an output port may vary depending on the functions or capabilities provided by the switch. The number of possible queues may also be three or more.
  • Weights may be set to w1% (Q2), w2% (Q3), and w3% (Q4) for the three queues Q2, Q3, and Q4 set to WRR, respectively.
  • high weights may be set for Q2, medium weights for Q3, and low weights for Q4.
  • the switch may newly set the queue characteristic for the output port x or, if the parameter value of the previously set queue characteristic is changed, may immediately notify the controller through the queue status message (S320).
  • the queue status message may include queue characteristic information such as output port x where the queue status change occurred, queue list, and queue characteristic values for the queue included in the queue list.
  • the queue characteristic value may include information on whether the corresponding queue is a priority queue or a WRR queue, and information on weight when the queue is a WRR queue.
  • the controller Since the controller receives the queue status message from the switch and knows the characteristics of each queue from the queue characteristic information, the controller configures a service-specific queue mapping table to determine which queues to assign flows to each service characteristic. It may be (S330).
  • Which queue to allocate for each service is determined by establishing QoS policy considering the importance of each service and sensitivity to delay or loss of packets according to network operation policy.
  • very important packets used for Broadband convergence Network (BcN) service or routing protocol can be assigned to Q1 queue as Gold service and important packets such as VoIP or IPTV service can be assigned to Q2 queue. have.
  • BcN Broadband convergence Network
  • packets such as VoD or VPN service may be assigned to the Q3 queue by defining it as a Bronze service, and general Internet service may be assigned to the Q4 queue by setting it as a best effort service.
  • the controller may configure or generate a flow entry so that the actual service-specific flow may be mapped to the corresponding queue (S340).
  • a flow entry may be divided into a match field for distinguishing flows and an action field indicating what action to perform on a corresponding flow packet.
  • the controller sends Flow 1 for BcN or routing protocol packets to Q1, Flow 2 for VoIP or real-time IPTV packets to Q2, and Flow 3 for VoD or VPN packets to Q3.
  • Flow 4 which is a normal Internet packet, can configure a flow entry to send a command to the switch to send to Q4.
  • the controller may include them in a flow table change message and transmit them to the switch (S350).
  • the switch may receive a flow table change message from the controller and update the flow table of the switch using a flow entry list included therein (S360).
  • QoS control according to queue characteristics may be performed by transmitting to the corresponding queue of the corresponding output port according to the action content set in the action field. That is, the switch may perform QoS control by allocating flows to different queues for each service (for example, a priority queue or a WRR queue) (S370).
  • FIG. 4 is an exemplary diagram for explaining a queue status message according to an embodiment of the present invention.
  • a queue status message transmitted by a switch to a controller will be described as an example.
  • Q2 can assign property to WRR and assign value to 50%
  • Q3 can assign property to WRR and assign value to 30%
  • Q4 can assign property to WRR. And value to 20%.
  • the value allocated to each queue can be determined by predicting the priority and traffic amount for each service, and the value can be changed by periodically collecting traffic during operation.
  • FIG. 5 is a flowchart illustrating a method of controlling QoS by changing a queue state according to an embodiment of the present invention.
  • the controller may control the QoS by transmitting a queue state change message to the switch.
  • the controller in order for the controller to change (e.g., add / modify / delete) the queue state of output switch x of the switch, it is necessary to provide configuration information such as the maximum number of queues that can be set on output port x or the supported queue characteristics. You must know.
  • the controller may transmit a queue setting information request message to the switch in order to know the queue setting information of the switch (S510).
  • the switch may transmit a queue setting information message for the output port x to the controller (S520).
  • the queue setting information message may include setting information such as the maximum number of queues that can be set in the output port x or the queue characteristics that can be supported.
  • the output port parameter is set to 'ANY' instead of x, it may mean that the queue setting information for all output ports of the switch is sent.
  • the switch may receive the queue configuration information request message and include the configuration information such as the maximum number of queues that can be set for the output port x and the queue characteristics that can be supported in the queue configuration information message and transmit the same to the controller.
  • the switch can configure the configuration information such as the maximum queue count and the supported queue characteristics of all output ports in a list form and send them to the controller. .
  • configuration information such as the maximum queue number that can be set for all output ports and the queue characteristics that can be supported may be identical.
  • the controller may determine to which service to map the corresponding queues according to the QoS policy (S530).
  • the switch may set four queues for output port x, and one of the queues Q1 as a priority queue and the other three queues Q2, Q3, and Q4 as weighted round robin (WRR) queues.
  • WRR weighted round robin
  • the controller maps the very important packets used for BcN service or routing protocol to Q1 queue by mapping Gold service, and important packets such as VoIP or IPTV service are mapped to Silver service, and high weight among WRR queues. Can be assigned to the Q2 queue with.
  • packets such as VoD or VPN service are mapped to the Bronze service and assigned to the Q3 queue having the middle weight among the WRR queues, and general Internet services are mapped to the best effort service to the Q4 queue having the lowest weight among the WRR queues. Can be.
  • the controller may transmit a queue state change message to the switch to reflect this to the switch (S540).
  • the queue state change message may include an output port x, a command, a queue list, and property information for each queue as an output port parameter.
  • the command may indicate a command to add, delete, or change the queue.
  • the queue characteristic information can be understood with reference to the table shown in FIG.
  • the switch may set the queue characteristic for the output port x by receiving a queue state change message from the controller (S550).
  • the switch sets one queue (Q1) to Priority Q for output port x, and the other three queues (Q2, Q3, and Q4) to weighted round robin (WRR) queues, and the weights of Q2, Q3, and Q4.
  • WRR weighted round robin
  • (weight) can be set to w1%, w2% and w3%, respectively.
  • the switch may transmit a queue status message to the controller (S560).
  • the queue status message may include an output port x, a queue list, a queue characteristic value, and the like.
  • the controller may generate a flow entry for QoS control after receiving the queue status message from the switch (S570), and load the generated flow entry into a flow table change message to the switch (S580).
  • the switch receiving the flow table change message may update the flow table (S590), and execute QoS control on the actual packet (S593).
  • FIG. 6 is a flowchart illustrating a procedure of adding a queue according to an embodiment of the present invention.
  • the controller may add a queue to a corresponding output port by sending an 'ADD' command to the switch.
  • the controller can add a queue with new queue characteristics to the switch according to the request of the service system or the change of the QoS policy.
  • the Q1 set on an existing switch can't handle this requirement if it is requested from a service system or QoS policy. You need to add a queue.
  • Q2 guarantees minimum bandwidth a bps (kbps, Mbps) for traffic (e.g., if output port x is a 1 Gbps port, the minimum bandwidth is a ⁇ 10 Mbps), while the maximum bandwidth is b bps (kbps, Mbps). For example, if the output port x is a 1 Gbps port, it may mean that the maximum bandwidth is limited to b ⁇ 10 Mbps.
  • the controller may transmit a queue state change message to the switch (S620).
  • the queue state change message may include parameters such as an output port x, a command to add a new queue, an id of a queue to be added, and property information on the queue to be added. Therefore, Q2 is added to output port x using a queue state change message that includes a command to add a new queue (ADD), and the minimum bandwidth (min_rate) is a% of the maximum transmission speed of output port x by the characteristic of Q2.
  • the maximum bandwidth (max_rate) can be set to be b% of the maximum transmission rate of the output port x.
  • the switch may further set Q2 to the output port x after receiving the queue state change message from the controller (S630). For example, two queues Q1 and Q2 may be set at the output port x.
  • the switch can send a queue status message to the controller (S640).
  • the queue status message may include an output port x, queue lists Q1 and Q2, and queue property values.
  • the controller may generate a flow entry for QoS control with reference to this (S650).
  • the controller could create a flow entry to send all packets destined for the destination (Dest. IP) to Q2 on output port x.
  • the controller may load the flow table change message to the switch (S660).
  • the flow table change message may include a parameter such as a new flow entry and a command to add it to the flow table.
  • the switch receiving the flow table change message may add a newly received flow entry to the flow table (S670). Therefore, the switch may transmit all packets destined for the destination (Dest. IP) to 10.1.1.0 among the packets entering the switch to Q2 of the output port x to perform QoS control according to the properties of Q2 (S680). ).
  • FIG. 7 is a flowchart illustrating a procedure of a method of deleting a queue according to an embodiment of the present invention.
  • the controller transmits a 'DELETE' command to a switch to delete a queue at a corresponding output port.
  • the output port x of the switch is currently assigned two queues, Q1 and Q2, and the property of Q1 is assigned to BE (Best Effort), and the property of Q2 is that the minimum bandwidth is equal to the maximum transmission speed of output port x.
  • the controller may determine to delete the queue set in the switch according to the request of the service system or the change of the QoS policy (S710). For example, you can guarantee at least some bandwidth for traffic destined for a particular server, but when the server stops service, you no longer need to guarantee bandwidth. In addition, if you guarantee a minimum amount of bandwidth for traffic to a specific customer site, and the customer terminates or changes the service, you may not need the minimum bandwidth guarantee. In this case, it is necessary to delete Q2 set at the output port x of the switch.
  • the controller may transmit a queue state change message to the switch (S720).
  • the queue state change message may include parameters such as an output port x, a command to DELETE the queue, and a queue id to be deleted.
  • the switch may delete Q2 at the output port x after receiving the queue state change message from the controller (S730). Therefore, output port x can delete Q2 from the two queues Q1 and Q2 and leave only Q1.
  • the switch may transmit a queue status message to the controller (S740).
  • the queue status message may include an output port x, a queue list Q1, a queue property value, and the like.
  • the switch may delete the flow entry related to Q2 of the output port x in the flow table (S750) and transmit a flow entry delete message to the controller (S760).
  • the controller may delete the flow entry after receiving the flow entry deletion message from the switch (S770).
  • the switch could delete the flow entry to send all packets destined for the destination (Dest. IP) to Q2 on output port x. Therefore, all packets coming into the output port x of the switch may be delivered to Q1 and processed as BE (Best Effort) (S780).
  • BE Best Effort
  • FIG. 8 is a flowchart illustrating a procedure of changing a queue characteristic based on a lost packet rate according to an embodiment of the present invention.
  • the controller may analyze the overall traffic situation as well as change the QoS policy during operation of the switch, and change the previously set queue property as needed.
  • the weight of the queue can be changed flexibly according to traffic conditions.
  • the controller may periodically send a queue statistics request message to the switch to request traffic statistics data for the queues (S810).
  • the queue statistics request message may include parameters such as a corresponding output port and a queue id.
  • the switch may transmit the queue statistics message including the traffic statistics data for the corresponding queue according to the queue statistics request message to the controller (S820).
  • the queue statistics message may include an output port, a queue id, a number of transmission packets, and a number of lost packets.
  • the controller may calculate a packet loss rate for the corresponding queue by receiving the queue statistics message (S830).
  • the packet loss rate may be calculated as lost packets / (transmitted packets + lost packets).
  • the controller may change the weights of the WRR queues by comparing the packet loss rate of the queues with a threshold preset for each queue (S830).
  • the weight of Q2 assigned to the silver service is increased to handle more traffic.
  • the controller may transfer information on the changed queue characteristic to a queue state change message and transmit the information to the switch (S840).
  • the queue status change message may include parameters such as an output port x, a command to change the queue characteristics (MODIFY), information about a queue id and queue characteristics to be changed, and the like.
  • the switch may change the weight for each queue according to the queue state change message (S850), and transmit the result to the queue state message to the controller (S860). For example, the switch may change the weights w1%, w2%, and w3% applied to the WRR queues Q2, Q3, and Q4 to y1%, y2%, and y3%, respectively.
  • FIG. 9 is a flowchart illustrating a procedure of mapping traffic allocated to a critical server to different queues according to an embodiment of the present invention.
  • the controller may map a queue to handle traffic destined for important servers differently from general data traffic.
  • the switch may set the characteristics of the queue and the set queue to the output port, respectively (S910).
  • the controller can know the information on the queue set in the switch by receiving a queue status message from the switch (S920).
  • the controller may configure a queue mapping table for processing traffic to important servers differently from general data traffic according to the QoS policy (S930).
  • the controller can map traffic to the SDN Controller to Q2 for processing as Silver service, and traffic to SIP Call Server to Q3 for processing to Bronze service.
  • the controller may generate a flow entry so that the actual flow may be mapped to the corresponding queue (S940).
  • the SDN Controller uses 10.1.1.1 as the IP address and yyyy as the port for the TCP connection with the switch.
  • the SIP Call Server uses 20.1.1.1 as the IP address and the TCP connection for the terminal. It is assumed that zzzz is used as the port.
  • the flow entry generated by the controller may be divided into a match field for distinguishing flows and an action field indicating what action to perform on packets of the flow.
  • the source IP and port can be represented by '*' indicating Any, and the traffic to the SIP Call Server.
  • the source IP and port may be marked with '*' because the destination IP only needs to specify the destination IP and port.
  • the action field may include an action to send the traffic flow to the SDN controller to Q2, and to send the traffic flow to the SIP Call Server to Q3.
  • the controller may load the flow table change message to the switch (S950).
  • the switch may receive the flow table change message from the controller and update the flow table of the switch by using the flow entry included in the flow table change message (S960).
  • the switch forwards it to Q2 of the output port x and processes it as WRR-type Silver traffic.
  • the switch forwards it to Q3 of the output port x and Bronze of WRR method. Traffic may be processed, and through this, QoS control according to a corresponding queue property may be performed (S970).
  • FIG. 10 is a flowchart illustrating a method of controlling QoS by mapping a queue for each network type according to an embodiment of the present invention
  • FIG. 11 illustrates a case of mapping a queue for each network type according to an embodiment of the present invention. This is a conceptual diagram.
  • the controller may perform QoS control according to the type of network in association with a switch.
  • the switch may set the characteristics of the queue and the set queue to the output port, respectively (S1010).
  • the controller can know the information on the queue set in the switch by receiving a queue status message from the switch (S1020).
  • the controller may configure a queue mapping table that may set a QoS policy differently according to the network type by referring to the queue status message (S1030).
  • the controller maps Q2 to process Silver Internet for wireless Internet traffic coming from 3G or 4G wireless access networks, and Q3 to process Bronze service for wireless Internet traffic coming from WIBRO wireless access networks.
  • Q4 For wired Internet traffic coming from a wired access network, it can be mapped to Q4 to be treated as a Best Effort (BE) service.
  • BE Best Effort
  • the cost to process the same data is highest for the 3G / 4G wireless Internet, followed by the higher WIBRO Internet and the lowest wired Internet. Therefore, the 3G / 4G wireless Internet is treated as a Silver service, the WIBRO wireless Internet is treated as a Bronze service, the QoS policy is set to treat the wired Internet as a BE (Best Effort) service, and the controller is assigned to the QoS policy for each network type. QoS can be controlled based on this.
  • the controller may configure a queue mapping table to differentiate traffic for each network type, and then generate a flow entry for allowing the actual flow to be mapped to the corresponding queue (S1040).
  • 3G / 4G wireless Internet traffic may enter Ingress 1 of the switch, WIBRO wireless Internet traffic may enter Ingress 2, and wired Internet traffic may enter Ingress 3.
  • the controller sets the Action field to forward flows coming into Ingress 1 of the match field to Q2 on output port x, and the Action field sets forwarding flows to Ingress 2 of the match field to Q3 of output port x.
  • the Action field can be configured to forward the flow into Ingress 3 of the Match field to Q4 of the output port x.
  • the controller may load it on the flow table change message to the switch (S1050).
  • the switch may receive a flow table change message from the controller and update the flow table of the switch using the flow entry included in the flow table change message.
  • the switch forwards 3G / 4G wireless Internet packets from Ingress 1 to Q2 on output port x for WRR-based Silver service, and WIBRO wireless Internet packets from Ingress 2 are forwarded to Q3 on output port x to WRR.
  • Processed by the Bronze service of the method, and wired Internet packets from Ingress 3 are delivered to Q4 of the output port x and processed by the BE (Best Effort) service of the WRR method to perform QoS control for each network type (S1060). .
  • QoS can be controlled through traffic discrimination processing for each service in the open flow switch.
  • WRR weighted round robin
  • the controller when the queue state is changed in the switch, the controller immediately informs the controller of the change, so that the controller can effectively change the queue state of the switch according to a network operation policy or traffic condition. QoS control can be effectively performed.

Abstract

A method for controlling QoS by handling traffic for each service in a software defined network environment is disclosed. The method of a controller controlling QoS comprises the steps of: determining a queue configuration change that includes performing one or more of adding, deleting and changing one or more queues configured to an output port of a network apparatus; and performing the configuration change by transmitting to the network apparatus a queue status change message including information about the determined queue configuration change. As a result, various services can be processed differently according to their traffic characteristics, thereby providing sufficient quality for each service and efficiently using network resources.

Description

서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법OS control method using traffic processing according to service
본 발명은 QoS 제어에 관한 것으로, 더욱 상세하게는 소프트웨어 정의 네트워킹 환경에서 서비스 별 트래픽 처리를 통한 QoS 제어 방법에 관한 것이다.The present invention relates to QoS control, and more particularly, to a QoS control method through traffic processing for each service in a software defined networking environment.
최근 들어, 스위치의 트래픽 포워딩 기능과 스위치의 제어 기능을 분리하여 통신 시스템을 효율적으로 운용하는 기술에 대한 표준화가 ONF(Open Networking Foundation), IETF(Internet Engineering Task Force), ETSI(European Telecommunications Standards Institute) ISG NFV(Network Function Virtualization) 및 ITU-T(International Telecommunications Union Telecommunication) 등을 중심으로 진행되고 있다.Recently, standardization of technologies that efficiently operate communication systems by separating the traffic forwarding function of the switch and the control function of the switch has been carried out by the Open Networking Foundation (ONF), Internet Engineering Task Force (IETF), and European Telecommunications Standards Institute ISG Network Function Virtualization (NFV) and ITU-T (International Telecommunications Union Telecommunication) are being conducted mainly.
소프트웨어 정의 네트워킹(SDN: Software Defined Network)은 라우터나 스위치 등의 기본 네트워크 장치에 관계없이 사용자가 통제 권한을 가지며, 별도의 소프트웨어 컨트롤러가 트래픽 흐름을 제어하는 사용자 중심의 네트워크를 의미한다.Software Defined Network (SDN) refers to a user-oriented network in which a user has control regardless of basic network devices such as a router or a switch, and a separate software controller controls traffic flow.
SDN의 기술 중의 하나인 OpenFlow 기술 표준화를 추진하고 있는 표준화 단체들 중 ONF(Open Networking Foundation)는 하드웨어(스위치)와 컨트롤러(Network OS) 사이를 연결하는 인터페이스를 정의하고 있다. 이는 네트워크를 통해 데이터 패킷을 어떻게 전달할 것인지 제어하기 위한 기능(Control Plane)을 물리적 네트워크와 분리하여 데이터 전달 기능(Data Plane)과 상호작용 하기 위한 프로토콜이다.Among standardization organizations that promote standardization of OpenFlow technology, one of SDN's technologies, Open Networking Foundation (ONF) defines an interface between hardware (switch) and controller (Network OS). This is a protocol for interacting with the data plane by separating the control plane from the physical network to control how data packets are delivered through the network.
한편, 인터넷에서는 음성, 영상, 데이터, 유선, 무선 등 다양한 서비스들이 단일 네트워크로 통합되면서, 이들의 개별적인 특성에 맞는 서비스 품질을 보장하면서도 네트워크 자원을 효율적으로 사용할 수 있는 기법들이 매우 중요해졌다. Meanwhile, in the Internet, as various services such as voice, video, data, wired and wireless are integrated into a single network, techniques that can efficiently use network resources while ensuring service quality for their individual characteristics have become very important.
이에 따라 기존의 스위치에는 서비스들의 특성에 따라 트래픽을 차별적으로 처리해주기 위한 여러 가지 QoS 제어 방법들이 개발되어 사용되고 있으나, 현재의 ONF OpenFlow 표준안에는 기본적인 QoS 제어 방법들만 정의되어 있어서 다양한 특성을 갖는 서비스를 위한 트래픽들에 대해 효율적으로 QoS(Quality of Service)를 제어하기 어려운 문제점이 있다.Accordingly, various QoS control methods have been developed and used in the existing switch to handle traffic differently according to the characteristics of services. However, only basic QoS control methods are defined in the current ONF OpenFlow standard. There is a problem in that it is difficult to efficiently control the quality of service (QoS) for traffic.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, SDN 환경에서의 QoS 제어 방법을 제공하는데 있다.An object of the present invention for solving the above problems is to provide a QoS control method in an SDN environment.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법을 제공하는데 있다.Another object of the present invention for solving the above problems is to provide a QoS control method using traffic processing according to a service.
상기와 같은 문제점을 해결하기 위한 본 발명의 또 다른 목적은, 서비스에 따른 트래픽 처리를 위해 큐를 추가 또는 삭제하는 방법과 큐 통계 및 네트워크 종류에 따른 트래픽 처리를 이용한 QoS 제어 방법을 제공하는데 있다.Another object of the present invention for solving the above problems is to provide a method for adding or deleting a queue for processing traffic according to a service, and a QoS control method using traffic processing according to queue statistics and network types.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 컨트롤러가 QoS를 제어하는 방법은, 네트워크 장치의 출력 포트에 설정되는 적어도 하나의 큐(Queue)에 대한 추가, 삭제 및 변경 중 적어도 하나의 수행을 위한 큐의 설정 변경을 결정하는 단계와; 결정된 큐의 설정 변경에 대한 정보를 포함하는 큐 상태 변경 메시지를 네트워크 장치로 전송하여 큐의 설정 변경을 수행시키는 단계를 포함한다. A method for controlling QoS by a controller according to an aspect of the present invention for achieving the above object includes performing at least one of adding, deleting, and changing at least one queue configured at an output port of a network device. Determining a setting change of the queue for; And transmitting a queue state change message including information on the setting change of the determined queue to a network device, to perform setting change of the queue.
여기에서, 상기 큐의 설정 변경을 결정하는 단계는, 서비스 요구사항 또는 QoS 정책 변경에 기반하여 큐의 설정 변경을 결정할 수 있다. Here, in the determining of the setting change of the queue, the setting change of the queue may be determined based on a service requirement or a QoS policy change.
여기에서, 상기 방법은, 네트워크 장치의 출력 포트에 설정된 적어도 하나의 큐(Queue)에 대한 큐 특성 정보를 수신하는 단계와; 큐 특성 정보에 기반하여 서비스와 적어도 하나의 큐 사이를 매핑하는 플로우 엔트리(Flow entry)를 생성하는 단계와; 생성된 플로우 엔트리에 따라 서비스 별로 트래픽을 처리하도록 네트워크 장치를 제어하는 단계를 더 포함할 수 있다.Here, the method includes receiving queue characteristic information for at least one queue set at an output port of a network device; Generating a flow entry for mapping between a service and at least one queue based on the queue characteristic information; The method may further include controlling the network device to process traffic for each service according to the generated flow entry.
여기에서, 상기 큐 특성 정보를 수신하는 단계는, 큐 특성 정보를 포함한 큐 상태 메시지를 네트워크 장치로부터 수신할 수 있다. In the receiving of the queue characteristic information, the queue status message including the queue characteristic information may be received from a network device.
여기에서, 상기 플로우 엔트리를 생성하는 단계는, Priority 큐 및 적어도 하나의 Weighted Round Robin(WRR) 큐로 구분하여 설정된 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑할 수 있다. In the generating of the flow entry, each service may be mapped to at least one queue set separately by being divided into a priority queue and at least one weighted round robin (WRR) queue.
여기에서, 상기 플로우 엔트리를 생성하는 단계는, 가장 높은 순위의 서비스를 위한 트래픽이 Priority 큐에 할당되도록 매핑하고, 다음 순위의 서비스들을 위한 트래픽이 적어도 하나의 WRR 큐에 순차적으로 할당되도록 매핑할 수 있다. The generating of the flow entry may include mapping traffic for the highest rank service to be assigned to a priority queue and mapping traffic for the next rank service to be sequentially assigned to at least one WRR queue. have.
여기에서, 상기 플로우 엔트리를 생성하는 단계는, 가장 높은 순위의 서비스를 위한 트래픽을 처리하고 남은 트래픽의 범위에서 적어도 하나의 WRR 큐 각각에 적용된 가중치에 기반하여 다음 순위의 서비스들을 위한 트래픽이 순차적으로 할당되도록 매핑할 수 있다. Herein, the generating of the flow entry may sequentially process traffic for the service of the highest rank and sequentially perform traffic for the service of the next rank based on a weight applied to each of the at least one WRR queue in the remaining traffic range. Can be mapped to be assigned.
여기에서, 상기 플로우 엔트리를 생성하는 단계는, 적어도 하나의 중요 서버로 할당되는 트래픽을 서로 다른 WRR 큐에 매핑할 수 있다. In the generating of the flow entry, traffic allocated to at least one critical server may be mapped to different WRR queues.
여기에서, 상기 네트워크 장치를 제어하는 단계는, 생성된 플로우 엔트리를 포함하는 플로우 테이블 변경 메시지를 네트워크 장치로 전송하는 단계와; 플로우 테이블 변경 메시지를 이용하여 네트워크 장치의 플로우 테이블을 업데이트시키는 단계와; 업데이트된 플로우 테이블에 기반하여 서비스 별로 트래픽을 처리하도록 상기 네트워크 장치를 제어하는 단계를 포함할 수 있다. The controlling of the network device may include: transmitting a flow table change message including a generated flow entry to the network device; Updating the flow table of the network device using the flow table change message; The method may include controlling the network device to process traffic for each service based on the updated flow table.
상기 목적을 달성하기 위한 본 발명의 다른 측면에 따른 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법은, 컨트롤러가 QoS를 제어하는 방법에 있어서, 네트워크 장치로부터 네트워크 장치의 출력 포트에 의해 지원 가능한 큐(Queue)에 대한 정보를 포함하는 큐 설정 정보 메시지를 수신하는 단계와; 큐 설정 정보 메시지 및 QoS 정책에 기반하여 서비스와 적어도 하나의 큐 사이를 매핑하는 단계와; 서비스와 적어도 하나의 큐 사이의 매핑 관계에 기반하여 적어도 하나의 큐를 설정하도록 큐 상태 변경 메시지를 상기 네트워크 장치로 전송하는 단계를 포함한다. QoS control method using the traffic processing according to the service according to another aspect of the present invention for achieving the above object, in the method for the controller to control the QoS, the queue that can be supported by the output port of the network device from the network device (Queue) Receiving a queue setting information message including information about; Mapping between a service and at least one queue based on a queue establishment information message and a QoS policy; Sending a queue state change message to the network device to establish at least one queue based on a mapping relationship between a service and at least one queue.
여기에서, 상기 서비스와 적어도 하나의 큐 사이를 매핑하는 단계는, 적어도 하나의 큐 각각을 Priority 큐 또는 적어도 하나의 Weighted Round Robin(WRR) 큐로 설정하는 단계와; 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑하는 단계를 포함할 수 있다. Here, mapping between the service and at least one queue comprises: setting each of the at least one queue to a Priority queue or at least one Weighted Round Robin (WRR) queue; Mapping each service to at least one queue based on the priority of each service.
여기에서, 상기 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑하는 단계는, 가장 높은 순위의 서비스를 위한 트래픽이 Priority 큐에 할당되도록 매핑하고, 다음 순위의 서비스들을 위한 트래픽이 적어도 하나의 WRR 큐에 순차적으로 할당되도록 매핑할 수 있다. The mapping of the services to the at least one queue based on the priority of each service may include mapping traffic for the highest priority service to be allocated to the priority queue and at least traffic for the next rank service. It can be mapped to be sequentially assigned to one WRR queue.
여기에서, 상기 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑하는 단계는, 가장 높은 순위의 서비스를 위한 트래픽을 처리하고 남은 트래픽의 범위에서 적어도 하나의 WRR 큐 각각에 적용된 가중치에 기반하여 다음 순위의 서비스들을 위한 트래픽이 순차적으로 할당되도록 매핑할 수 있다. Here, mapping the services to the at least one queue based on the priority of each service may be performed by processing the traffic for the highest priority service and applying a weight to each of the at least one WRR queue in the remaining traffic range. Based on this, traffic for next-order services may be mapped sequentially.
여기에서, 상기 큐 상태 변경 메시지는, 네트워크 장치의 출력 포트에 큐가 추가 또는 삭제되도록 하는 명령을 포함할 수 있다. Here, the queue state change message may include a command for adding or deleting a queue to an output port of the network device.
여기에서, 상기 방법은, 네트워크 장치로부터 손실 패킷에 대한 정보를 수신하여 패킷 손실률을 계산하는 단계와; 패킷 손실률에 기반하여 적어도 하나의 WRR 큐 각각에 적용되는 가중치를 변경시키는 단계를 더 포함할 수 있다. Wherein the method comprises the steps of: receiving information about a lost packet from a network device to calculate a packet loss rate; The method may further include changing a weight applied to each of the at least one WRR queue based on the packet loss rate.
여기에서, 상기 적어도 하나의 WRR 큐 각각에 적용되는 가중치를 변경시키는 단계는, 큐 상태 변경 메시지에 가중치 변경을 위한 명령을 포함시켜 네트워크 장치로 전송함으로써 수행할 수 있다. Here, the changing of the weights applied to each of the at least one WRR queue may be performed by including a command for changing a weight in the queue state change message and transmitting the weight change command to the network device.
여기에서, 상기 방법은, 큐 상태 변경 메시지에 기반하여 설정된 적어도 하나의 큐에 대한 큐 특성 정보를 포함하는 큐 상태 메시지를 수신하는 단계와; 큐 특성 정보에 기반하여 서비스와 적어도 하나의 큐 사이를 매핑하는 플로우 엔트리(Flow entry)를 생성하는 단계와; 생성된 플로우 엔트리에 따라 서비스 별로 트래픽을 처리하도록 네트워크 장치를 제어하는 단계를 더 포함할 수 있다. Here, the method comprises the steps of: receiving a queue status message comprising queue characteristic information for at least one queue set based on the queue status change message; Generating a flow entry for mapping between a service and at least one queue based on the queue characteristic information; The method may further include controlling the network device to process traffic for each service according to the generated flow entry.
상기 목적을 달성하기 위한 본 발명의 또 다른 측면에 따른 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법은, 네트워크 장치가 QoS를 제어하는 방법에 있어서, 네트워크 장치의 출력 포트에 의해 지원 가능한 큐(Queue)에 대한 정보를 포함하는 큐 설정 정보 메시지를 컨트롤러로 전송하는 단계와; 큐 설정 정보 메시지 및 QoS 정책에 기반하여 컨트롤러에 의해 생성된 큐 상태 변경 메시지를 수신하는 단계와; 큐 상태 변경 메시지에 따라 적어도 하나의 큐를 출력 포트에 설정하는 단계를 포함한다. QoS control method using the traffic processing according to the service according to another aspect of the present invention for achieving the above object, in the method for controlling the QoS by the network device, a queue (support) supported by the output port of the network device (Queue) Transmitting a queue setting information message including information on the controller to the controller; Receiving a queue state change message generated by the controller based on the queue setting information message and the QoS policy; Setting at least one queue to an output port according to the queue state change message.
여기에서, 상기 큐 상태 변경 메시지는, 큐 설정 정보 메시지 및 QoS 정책에 기반하여 서비스와 적어도 하나의 큐 사이를 매핑하여 컨트롤러가 생성한 정보를 포함할 수 있다. Here, the queue state change message may include information generated by a controller by mapping between a service and at least one queue based on a queue setting information message and a QoS policy.
여기에서, 상기 큐 상태 변경 메시지는, 큐 설정 정보 메시지 및 QoS 정책에 기반한 네트워크 종류 별 우선 순위에 따라 네트워크와 적어도 하나의 큐 사이를 매핑하여 상기 컨트롤러가 생성한 정보를 포함할 수 있다. Here, the queue state change message may include information generated by the controller by mapping between a network and at least one queue according to a network type priority based on a queue setting information message and a QoS policy.
여기에서, 상기 출력 포트에 설정하는 단계는, 가장 높은 순위의 서비스를 위한 트래픽이 Priority 큐에 할당되도록 설정하고, 다음 순위의 서비스들을 위한 트래픽이 적어도 하나의 WRR 큐에 순차적으로 할당되도록 설정할 수 있다. Here, the setting of the output port may be configured such that traffic for a service of the highest rank is allocated to a priority queue and traffic for a service of a next rank may be sequentially assigned to at least one WRR queue. .
여기에서, 상기 출력 포트에 설정하는 단계는, 가장 높은 순위의 서비스를 위한 트래픽을 처리하고 남은 트래픽의 범위에서 적어도 하나의 WRR 큐 각각에 적용된 가중치에 기반하여 다음 순위의 서비스들을 위한 트래픽이 순차적으로 할당되도록 설정할 수 있다. Herein, the setting of the output port may include sequentially processing traffic for a service of the highest priority and sequentially processing traffic for a service of the next rank based on a weight applied to each of the at least one WRR queue in the remaining traffic range. Can be set to be assigned.
상기와 같은 본 발명에 따른 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법은, 다양한 서비스들을 트래픽 특성에 따라 차별화하여 처리해 줌으로써 서비스 별 품질을 만족시켜 주면서 네트워크 자원을 효율적으로 사용할 수 있도록 한다. The QoS control method using the traffic processing according to the service according to the present invention as described above, it is possible to efficiently use the network resources while satisfying the service quality by differentiating and processing the various services according to the traffic characteristics.
또한, 컨트롤러가 스위치의 큐 상태를 실시간으로 정확히 파악하여 적합한 QoS 제어 명령을 스위치에 내려줄 수 있도록 할 수 있다.In addition, the controller can accurately determine the queue status of the switch in real time so that it can issue appropriate QoS control commands to the switch.
도 1은 본 발명의 실시예에 따라 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법을 수행하는 컨트롤러와 네트워크 장치의 구성을 설명하기 위한 블록도이다. 1 is a block diagram illustrating a configuration of a controller and a network apparatus for performing a QoS control method using traffic processing according to a service according to an embodiment of the present invention.
도 2는 본 발명의 실시예에 따른 Priority 큐와 Weighted Round Robin 큐를 설명하기 위한 개념도이다. 2 is a conceptual diagram illustrating a priority queue and a weighted round robin queue according to an embodiment of the present invention.
도 3은 본 발명의 실시예에 따라 서비스 별로 큐를 매핑하여 QoS를 제어하는 방법을 설명하기 위한 순서도이다. 3 is a flowchart illustrating a method of controlling QoS by mapping a queue for each service according to an embodiment of the present invention.
도 4는 본 발명의 실시예에 따른 큐 상태 메시지를 설명하기 위한 예시도이다. 4 is an exemplary diagram for explaining a queue status message according to an embodiment of the present invention.
도 5는 본 발명의 실시예에 따라 큐 상태 변경을 통하여 QoS를 제어하는 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a method of controlling QoS by changing a queue state according to an embodiment of the present invention.
도 6은 본 발명의 실시예에 따라 큐를 추가하는 절차를 설명하기 위한 순서도이다. 6 is a flowchart illustrating a procedure of adding a queue according to an embodiment of the present invention.
도 7은 본 발명의 실시예에 따라 큐를 삭제하는 방법을 절차를 설명하기 위한 순서도이다. 7 is a flowchart illustrating a procedure of a method of deleting a queue according to an embodiment of the present invention.
도 8은 본 발명의 실시예에 따라 손실 패킷률에 기반하여 큐 특성을 변경하는 절차를 설명하기 위한 순서도이다. 8 is a flowchart illustrating a procedure of changing a queue characteristic based on a lost packet rate according to an embodiment of the present invention.
도 9는 본 발명의 실시예에 따라 중요 서버로 할당되는 트래픽을 서로 다른 큐에 매핑하는 절차를 설명하기 위한 순서도이다. 9 is a flowchart illustrating a procedure of mapping traffic allocated to a critical server to different queues according to an embodiment of the present invention.
도 10은 본 발명의 실시예에 따라 네트워크 종류 별로 큐를 매핑하여 QoS를 제어하는 방법을 설명하기 위한 순서도이다.10 is a flowchart illustrating a method of controlling QoS by mapping queues for each network type according to an embodiment of the present invention.
도 11은 본 발명의 실시예에 따라 네트워크 종류 별로 큐를 매핑한 경우를 설명하기 위한 개념도이다. 11 is a conceptual diagram illustrating a case where a queue is mapped for each network type according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for similar elements.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
이하, 본 발명에서 언급되는 컨트롤러는 통합 SDN 컨트롤러(Unified SDN controller)로, 트래픽의 흐름을 제어하기 위해 관련 구성 요소(예를 들면, 스위치, 라우터 등)를 제어하는 기능 요소(entity)를 의미할 수 있다. Hereinafter, the controller referred to in the present invention is an integrated SDN controller, which may mean a function element for controlling related components (eg, a switch, a router, etc.) to control the flow of traffic. Can be.
또한, 컨트롤러는 물리적인 구현 형태나 구현 위치 등에 의해 한정되지 않는다. 예를 들어, 컨트롤러는 ONF(OpenFlow), IETF(Internet Engineering Task Force), ETSI(European Telecommunication Standards Institute) 및/또는 ITU-T(International Telecommunication Union Telecommunication) 등에서 정의하고 있는 컨트롤러 기능 요소(entity)를 의미할 수 있다. In addition, the controller is not limited to the physical implementation form or implementation location. For example, a controller refers to a controller function entity defined by OpenFlow (ONF), Internet Engineering Task Force (IETF), European Telecommunication Standards Institute (ETSI) and / or International Telecommunication Union Telecommunication (ITU-T). can do.
본 발명에서 언급되는 네트워크 장치는 '스위치(switch)' 또는 '라우터(router)'와 같이 트래픽(또는 패킷)을 실질적으로 포워딩하거나 스위칭 또는 라우팅하는 기능 요소를 의미할 수 있다. 따라서, 본 발명에서 네트워트 장치는 스위치 또는 라우터로 명명될 수 있다. The network device referred to in the present invention may refer to a functional element that substantially forwards, switches, or routes traffic (or packets), such as 'switch' or 'router'. Therefore, in the present invention, the network device may be referred to as a switch or a router.
예를 들어, 네트워크 장치는 ONF, IETF, ETSI 및/또는 ITU-T 등에서 정의하고 있는 스위치, 라우터, 스위치 요소(Switching Element), 라우터 요소(Routing Element), 포워딩 요소(Forwarding Element) 등을 의미할 수 있다.For example, a network device may mean a switch, a router, a switching element, a routing element, a forwarding element, and the like defined in ONF, IETF, ETSI, and / or ITU-T. Can be.
본 발명의 실시예들에서는 오픈플로우 스위치에서 QoS 제어를 위한 동작 과정에서 ONF에서 정의된 파라미터 및/또는 메시지 형태(예를 들면, Flow table entry)를 이용하는 것으로 예를 들어 도시하였으나, 본 발명의 기술적 사상이 ONF에 정의된 내용으로만 한정되는 것은 아니며 컨트롤러와 스위치간 QoS 제어 명령을 전달하는 과정에서 컨트롤러와 스위치를 구분할 수 있는 다양한 파라미터를 이용할 수 있고, QoS 제어를 위한 동작 과정에서 사용되는 메시지들도 후술하는 특정 메시지에 한정되지 않는다.In the embodiments of the present invention, for example, the parameter and / or message type (for example, flow table entry) defined in the ONF is used in the operation for QoS control in the openflow switch. The mapping is not limited to the contents defined in ONF, and various parameters that can distinguish a controller from a switch can be used in transmitting a QoS control command between a controller and a switch, and messages used in an operation process for QoS control. Nor is it limited to the specific message mentioned later.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 실시예에 따라 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법을 수행하는 컨트롤러와 네트워크 장치의 구성을 설명하기 위한 블록도이다. 1 is a block diagram illustrating a configuration of a controller and a network apparatus for performing a QoS control method using traffic processing according to a service according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 실시예에 따른 서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법은 컨트롤러와 스위치가 연동하여 수행할 수 있다. Referring to FIG. 1, a QoS control method using traffic processing according to a service according to an embodiment of the present invention may be performed by a controller and a switch.
먼저, 본 발명의 실시예에 따른 컨트롤러(100)는 QoS 정책 관리부(110), 스위치 제어부(120), 플로우 테이블 관리부(130) 및 스위치 연동 처리부(140)를 포함한다. First, the controller 100 according to an exemplary embodiment of the present invention includes a QoS policy management unit 110, a switch control unit 120, a flow table management unit 130, and a switch interworking processing unit 140.
QoS 정책 관리부(110)는 컨트롤러(100)가 관리하는 도메인에 대한 QoS 정책을 관리할 수 있다. The QoS policy manager 110 may manage a QoS policy for a domain managed by the controller 100.
스위치 제어부(120)는 스위치 연동 처리부(140)를 통하여 컨트롤러(100)와 통신하는 스위치(200)를 제어할 수 있다. 예를 들어, 스위치 제어부(120)는 QoS 정책 관리부(110)가 관리하는 QoS 정책에 기반하여 플로우 엔트리(Flow entry)의 추가, 수정 및 삭제 등을 위한 제어 명령을 생성할 수 있고, 제어 명령을 이용하여 스위치(200)를 제어할 수 있다. The switch controller 120 may control the switch 200 to communicate with the controller 100 through the switch interworking processor 140. For example, the switch controller 120 may generate a control command for adding, modifying, and deleting a flow entry based on the QoS policy managed by the QoS policy manager 110, and may generate a control command. The switch 200 can be controlled.
플로우 테이블 관리부(130)는 플로우 테이블(Flow table)을 동기화하기 위한 파라미터와 플로우 테이블을 저장하고 관리할 수 있다.The flow table manager 130 may store and manage a parameter and a flow table for synchronizing the flow table.
스위치 연동 처리부(140)는 스위치(200)와 컨트롤러(100)가 통신할 수 있도록 프로토콜을 처리할 수 있다. The switch interworking processor 140 may process a protocol so that the switch 200 and the controller 100 can communicate.
다음으로, 본 발명의 실시예에 따른 스위치(200)는 Qos 제어부(210), 스위치 제어부(220), 플로우 테이블 관리부(230) 및 컨트롤러 연동 처리부(240)를 포함한다. Next, the switch 200 according to the embodiment of the present invention includes a Qos controller 210, a switch controller 220, a flow table manager 230, and a controller interworking processor 240.
QoS 제어부(210)는 출력 포트로 전달된 패킷에 대해 실제로 QoS 제어를 수행할 수 있다. The QoS controller 210 may actually perform QoS control on the packet delivered to the output port.
스위치 제어부(220)는 출력 포트에 대한 큐 특성 설정 등과 같은 스위치에 대한 제어를 실행할 수 있다. 또한, 스위치 제어부(220)는 컨트롤러(100)로부터 제어 명령을 수신하여 실행할 수 있다.The switch controller 220 may control the switch such as setting a queue characteristic for the output port. In addition, the switch controller 220 may receive and execute a control command from the controller 100.
플로우 테이블 관리부(230)는 컨트롤러(100)로부터 전달받은 플로우 테이블을 관리할 수 있다. 즉, 플로우 테이블 관리부(230)는 스위치에 대한 플로우 테이블을 동기화하기 위한 파라미터와 플로우 테이블을 저장하고 관리할 수 있다.The flow table manager 230 may manage the flow table received from the controller 100. That is, the flow table manager 230 may store and manage the parameters and the flow table for synchronizing the flow table for the switch.
컨트롤러 연동 처리부(240)는 컨트롤러(100)와 스위치(200)가 통신할 수 있도록 프로토콜을 처리한다.The controller interworking processor 240 processes the protocol so that the controller 100 and the switch 200 can communicate.
도 2는 본 발명의 실시예에 따른 Priority 큐와 Weighted Round Robin 큐를 설명하기 위한 개념도이다. 2 is a conceptual diagram illustrating a priority queue and a weighted round robin queue according to an embodiment of the present invention.
도 2를 참조하면, 네트워크 장치의 출력 포트에는 적어도 하나의 큐(Queue)가 설정될 수 있다. Referring to FIG. 2, at least one queue may be set at an output port of a network device.
네트워크 장치의 출력 포트에 4개의 큐가 있는 경우를 예로 들어 보다 상세히 설명하면 다음과 같다. The case where there are four queues at the output port of the network device will be described in more detail as an example.
네트워크 장치의 출력 포트에 4개의 큐가 있는 경우에 하나의 큐는 Priority 큐로 사용하고, 나머지 3개의 큐는 Weighted Round Robin(WRR) 큐로 사용하도록 할당하는 것에 대한 예시이다. If there are four queues at the output port of the network device, one queue is used as a priority queue and the other three queues are assigned as weighted round robin (WRR) queues.
서비스 트래픽은 그 특성에 따라 우선 순위를 Gold, Silver, Bronze, Best effort(BE)로 나눌 수 있다. Service traffic can be classified into gold, silver, bronze, and best effort (BE) according to their characteristics.
Gold 트래픽은 Priority 큐에 할당되며 가장 높은 순위로 처리될 수 있다. 즉, 패킷이 Priority 큐에 있으면 다른 큐에 패킷이 있더라도 항상 먼저 처리될 수 있다. Gold traffic is assigned to the priority queue and can be processed with the highest priority. In other words, if a packet is in a Priority queue, it can always be processed first, even if there is a packet in another queue.
Silver 트래픽은 Gold 트래픽 다음의 우선 순위를 갖는다. 그러나 모든 Silver 트래픽이 다른 Bronze 또는 Best effort 트래픽 보다 항상 먼저 처리되는 것은 아니고, 할당된 가중치(weight)만큼 처리되고 다음으로 Bronze 트래픽이 처리될 수 있다. Silver traffic has priority after Gold traffic. However, not all Silver traffic will always be processed before other Bronze or Best effort traffic, but will be processed by the assigned weight and then Bronze traffic.
Bronze 트래픽도 할당된 가중치(weight)만큼 처리되고 다음으로 Best effort 트래픽이 처리될 수 있다. Bronze traffic may also be processed by the assigned weight, followed by Best effort traffic.
예를 들어, Silver 트래픽은 Gold 트래픽이 사용하고 남은 대역의 50%를 사용할 수 있고, Bronze 트래픽은 Gold 트래픽이 사용하고 남은 대역의 30%를 사용할 수 있으며, Best effort 트래픽은 Gold 트래픽이 사용하고 남은 대역의 20%를 사용하도록 설정될 수 있다. 따라서, Silver 트래픽은 Bronze 트래픽에 비해 우선 순위가 높게 처리되고, Bronze 트래픽은 Best effort 트래픽에 비해 우선 순위가 높게 처리될 수 있다. For example, Silver traffic can use 50% of the remaining bands used by Gold traffic, Bronze traffic can use 30% of the remaining bands used by Gold traffic, and Best effort traffic can use the remaining bands left by Gold traffic. It may be set to use 20% of the band. Therefore, silver traffic may be processed with a higher priority than Bronze traffic, and Bronze traffic may be processed with a higher priority than Best effort traffic.
도 3은 본 발명의 실시예에 따라 서비스 별로 큐를 매핑하여 QoS를 제어하는 방법을 설명하기 위한 순서도이다. 3 is a flowchart illustrating a method of controlling QoS by mapping a queue for each service according to an embodiment of the present invention.
도 3을 참조하면, 스위치는 CLI(Command Line Interface)나 configuration protocol을 이용하여 출력 포트 x에 대한 큐 특성(property)을 설정할 수 있다(S310). Referring to FIG. 3, the switch may set a queue property for the output port x by using a command line interface (CLI) or a configuration protocol (S310).
보다 상세하게는, 스위치는 출력 포트 x에 대해 4개의 큐를 설정하고, 그 중 하나의 큐(Q1)를 Priority 큐로, 나머지 3개의 큐(Q2, Q3, Q4)를 WRR(Weighted Round Robin) 큐로 설정할 수 있다. 다만, 스위치가 출력 포트 x에 대해 큐를 4개 설정하는 것으로 예를 들어 설명하나, 스위치에서 제공 가능한 기능이나 성능에 따라 출력 포트에 설정할 수 있는 큐의 개수는 달라질 수 있고, 그에 따라 WRR 로 설정할 수 있는 큐의 개수도 3개 이상일 수 있다. More specifically, the switch sets four queues for output port x, one queue (Q1) to Priority queue and the other three queues (Q2, Q3, Q4) to WRR (weighted round robin) queues. Can be set. For example, the switch sets four queues for output port x.However, the number of queues that can be set for an output port may vary depending on the functions or capabilities provided by the switch. The number of possible queues may also be three or more.
WRR로 설정된 3개의 큐(Q2, Q3, Q4)에 대해 가중치(weight)가 각각 w1%(Q2), w2%(Q3), w3%(Q4) 로 설정될 수 있다. Weights may be set to w1% (Q2), w2% (Q3), and w3% (Q4) for the three queues Q2, Q3, and Q4 set to WRR, respectively.
예를 들어, Q2에는 높은 가중치를 설정하고, Q3에는 중간 가중치를 설정하며, Q4에는 낮은 가중치를 설정할 수 있다.For example, high weights may be set for Q2, medium weights for Q3, and low weights for Q4.
스위치는 출력 포트 x에 대해 큐 특성을 새로 설정하거나, 기존에 설정된 큐 특성의 파라미터 값이 변경된 경우에는 이를 즉시 큐 상태 메시지를 통해서 컨트롤러에게 알려줄 수 있다(S320). The switch may newly set the queue characteristic for the output port x or, if the parameter value of the previously set queue characteristic is changed, may immediately notify the controller through the queue status message (S320).
큐 상태 메시지는 큐 상태 변경이 발생한 출력 포트 x, 큐 리스트 및 큐 리스트에 포함된 큐에 대한 큐 특성 값들과 같은 큐 특성 정보를 포함할 수 있다. 여기서, 큐 특성 값은 해당 큐가 Priority 큐인지 WRR 큐인지 여부에 대한 정보 및 WRR 큐인 경우 가중치(weight)에 대한 정보를 포함할 수 있다. The queue status message may include queue characteristic information such as output port x where the queue status change occurred, queue list, and queue characteristic values for the queue included in the queue list. Here, the queue characteristic value may include information on whether the corresponding queue is a priority queue or a WRR queue, and information on weight when the queue is a WRR queue.
컨트롤러는 스위치로부터 큐 상태 메시지를 수신하여 큐 특성 정보로부터 각각의 큐에 대한 특징을 알 수 있기 때문에 서비스 특성 별로 플루우(Flow)들을 어떤 큐에 할당할지 정해주기 위한 서비스 별 큐 매핑 테이블을 구성할 수 있다(S330). Since the controller receives the queue status message from the switch and knows the characteristics of each queue from the queue characteristic information, the controller configures a service-specific queue mapping table to determine which queues to assign flows to each service characteristic. It may be (S330).
서비스 별 어떤 큐에 할당할지는 네트워크 운용정책에 따라 서비스 별 중요도와 패킷의 지연이나 손실 등에 대한 민감도를 고려하여 QoS 정책을 수립해서 결정한다. Which queue to allocate for each service is determined by establishing QoS policy considering the importance of each service and sensitivity to delay or loss of packets according to network operation policy.
예를 들어, BcN(Broadband convergence Network) 서비스나 라우팅 프로토콜에 사용되는 매우 중요한 패킷들은 Gold 서비스로 정하여 Q1 큐에 할당하고, VoIP나 IPTV 서비스와 같이 중요한 패킷들은 Silver 서비스로 정하여 Q2 큐에 할당할 수 있다. For example, very important packets used for Broadband convergence Network (BcN) service or routing protocol can be assigned to Q1 queue as Gold service and important packets such as VoIP or IPTV service can be assigned to Q2 queue. have.
또한, VoD나 VPN 서비스와 같은 패킷들은 Bronze 서비스로 정하여 Q3 큐에 할당하고, 일반 인터넷 서비스는 Best effort 서비스로 정하여 Q4 큐에 할당할 수 있다. In addition, packets such as VoD or VPN service may be assigned to the Q3 queue by defining it as a Bronze service, and general Internet service may be assigned to the Q4 queue by setting it as a best effort service.
컨트롤러는 서비스 별 큐 매핑 테이블을 구성하고 나면, 실제 서비스 별 플로우가 해당 큐에 매핑될 수 있도록 플로우 엔트리(Flow entry)를 구성 또는 생성할 수 있다(S340). After configuring the queue mapping table for each service, the controller may configure or generate a flow entry so that the actual service-specific flow may be mapped to the corresponding queue (S340).
플로우 엔트리(Flow entry)는 플로우를 구분하기 위한 Match field와 해당 플로우 패킷에 대해 어떤 action을 수행할 지 나타내는 Action field로 나누질 수 있다. A flow entry may be divided into a match field for distinguishing flows and an action field indicating what action to perform on a corresponding flow packet.
예를 들어, 컨트롤러는 BcN이나 라우팅 프로토콜 패킷에 해당되는 Flow 1 은 Q1으로 보내고, VoIP나 실시간 IPTV 패킷에 해당되는 Flow 2는 Q2로 보내고, VoD나 VPN 패킷에 해당되는 Flow 3는 Q3로 보내며, 일반 인터넷 패킷에 해당되는 Flow 4는 Q4로 보내라는 명령을 스위치로 내려 보내기 위한 플로우 엔트리를 구성할 수 있다.For example, the controller sends Flow 1 for BcN or routing protocol packets to Q1, Flow 2 for VoIP or real-time IPTV packets to Q2, and Flow 3 for VoD or VPN packets to Q3. Flow 4, which is a normal Internet packet, can configure a flow entry to send a command to the switch to send to Q4.
컨트롤러는 플로우 엔트리를 생성한 후에, 이들을 플로우 테이블 변경 메시지에 담아서 스위치로 전송할 수 있다(S350). After the controller generates the flow entries, the controller may include them in a flow table change message and transmit them to the switch (S350).
스위치는 컨트롤러로부터 플로우 테이블 변경 메시지를 수신하여 그 안에 포함된 플로우 엔트리 리스트(Flow entry list)를 이용하여 스위치의 플로우 테이블을 업데이트시킬 수 있다(S360).The switch may receive a flow table change message from the controller and update the flow table of the switch using a flow entry list included therein (S360).
따라서, 해당 플로우에 매칭되는 패킷이 들어오면 action field 에 설정된 action 내용에 따라 해당 출력 포트의 해당 큐로 전송하여 큐 특성에 따른 QoS 제어를 수행할 수 있다. 즉, 스위치는 서비스 별로 플로우들을 서로 다른 큐에 할당(예를 들어, Priority 큐 또는 WRR 큐)하여 QoS 제어를 수행할 수 있다(S370). Therefore, when a packet matching the corresponding flow arrives, QoS control according to queue characteristics may be performed by transmitting to the corresponding queue of the corresponding output port according to the action content set in the action field. That is, the switch may perform QoS control by allocating flows to different queues for each service (for example, a priority queue or a WRR queue) (S370).
도 4는 본 발명의 실시예에 따른 큐 상태 메시지를 설명하기 위한 예시도이다. 4 is an exemplary diagram for explaining a queue status message according to an embodiment of the present invention.
도 4를 참조하여, 스위치가 컨트롤러로 전송하는 큐 상태 메시지를 예를 들어 설명하면 다음과 같다. Referring to FIG. 4, a queue status message transmitted by a switch to a controller will be described as an example.
출력 포트 x에는 4개의 큐가 할당되었으며, 그 중에 Q1은 특성(property)을 Priorty Q로 할당하고 value를 Null로 할당할 수 있다. Four queues are assigned to output port x, of which Q1 can assign a property of Priority Q and a value of Null.
Q2는 특성(property)을 WRR로 할당하고 value를 50 %로 할당할 수 있고, Q3는 특성(property)을 WRR로 할당하고 value를 30 %로 할당할 수 있으며, Q4는 특성(property)을 WRR로 할당하고 value를 20 %로 할당할 수 있다.Q2 can assign property to WRR and assign value to 50%, Q3 can assign property to WRR and assign value to 30%, and Q4 can assign property to WRR. And value to 20%.
또한, WRR 방식에서 각각의 큐에 할당되는 value는 서비스 별로 우선 순위와 트래픽 양을 예측하여 정할 수 있으며, 운용 중에도 트래픽을 주기적으로 수집하여 value를 변경할 수 있다.In addition, in the WRR method, the value allocated to each queue can be determined by predicting the priority and traffic amount for each service, and the value can be changed by periodically collecting traffic during operation.
도 5는 본 발명의 실시예에 따라 큐 상태 변경을 통하여 QoS를 제어하는 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a method of controlling QoS by changing a queue state according to an embodiment of the present invention.
도 5를 참조하면, 컨트롤러는 큐 상태 변경 메시지를 스위치에 전송하여 QoS를 제어할 수 있다. Referring to FIG. 5, the controller may control the QoS by transmitting a queue state change message to the switch.
상세하게는, 컨트롤러가 스위치의 출력 포트 x의 큐 상태를 변경(예를 들어, Add/Modify/Delete)하기 위해서는 출력 포트 x에 설정할 수 있는 큐의 최대 개수 또는 지원 가능한 큐 특성과 같은 설정 정보를 알고 있어야 한다. Specifically, in order for the controller to change (e.g., add / modify / delete) the queue state of output switch x of the switch, it is necessary to provide configuration information such as the maximum number of queues that can be set on output port x or the supported queue characteristics. You must know.
컨트롤러는 스위치의 큐 설정 정보를 알기 위해 큐 설정 정보 요청 메시지를 스위치로 전송할 수 있다(S510). 이때 출력 포트 파라미터를 x로 설정하면, 스위치는 출력 포트 x에 대한 큐 설정 정보 메시지를 컨트롤러로 전송할 수 있다(S520). 여기서, 큐 설정 정보 메시지는 출력 포트 x에 설정할 수 있는 큐의 최대 개수 또는 지원 가능한 큐 특성과 같은 설정 정보를 포함할 수 있다. The controller may transmit a queue setting information request message to the switch in order to know the queue setting information of the switch (S510). In this case, if the output port parameter is set to x, the switch may transmit a queue setting information message for the output port x to the controller (S520). Here, the queue setting information message may include setting information such as the maximum number of queues that can be set in the output port x or the queue characteristics that can be supported.
또한, 출력 포트 파라미터를 x 대신에 'ANY'를 설정하면, 스위치가 가지고 있는 모든 출력 포트에 대한 큐 설정 정보를 보내달라는 의미일 수 있다. In addition, if the output port parameter is set to 'ANY' instead of x, it may mean that the queue setting information for all output ports of the switch is sent.
상세하게는, 스위치는 큐 설정 정보 요청 메시지를 수신하여 출력 포트 x에 대해 최대로 설정할 수 있는 큐 개수와 지원 가능한 큐 특성과 같은 설정 정보를 큐 설정 정보 메시지에 포함시켜 컨트롤러로 전송할 수 있다. In detail, the switch may receive the queue configuration information request message and include the configuration information such as the maximum number of queues that can be set for the output port x and the queue characteristics that can be supported in the queue configuration information message and transmit the same to the controller.
마찬가지로, 큐 설정 정보 요청 메시지에 출력 포트 파라미터가 'ANY'로 설정되어 있으면, 스위치는 모든 출력 포트에 대한 최대 큐 개수와 지원 가능한 큐 특성과 같은 설정 정보를 리스트 형태로 구성하여 컨트롤러로 전송할 수 있다. Similarly, if the output port parameter is set to 'ANY' in the queue configuration information request message, the switch can configure the configuration information such as the maximum queue count and the supported queue characteristics of all output ports in a list form and send them to the controller. .
스위치에 따라서는 모든 출력 포트에 대해 설정할 수 있는 최대 큐 개수와 지원 가능한 큐 특성과 같은 설정 정보가 동일할 수도 있다. 이러한 스위치의 경우에는 출력 포트 파라미터에 'ANY'를 사용하고 최대 큐 개수와 지원 가능한 큐 특성과 같은 설정 정보를 하나로 보내줄 수 있다.Depending on the switch, configuration information such as the maximum queue number that can be set for all output ports and the queue characteristics that can be supported may be identical. For these switches, you can use 'ANY' for the output port parameter and send the configuration information such as maximum queue count and supported queue characteristics to one.
컨트롤러는 큐 설정 정보 메시지를 받은 후에 QoS 정책에 따라 해당 큐들을 어떤 서비스에 매핑할지 결정할 수 있다(S530).After receiving the queue configuration information message, the controller may determine to which service to map the corresponding queues according to the QoS policy (S530).
스위치는 출력 포트 x에 대해 4개의 큐를 설정하고, 그 중 하나의 큐(Q1)를 Priority 큐로, 나머지 3개의 큐(Q2, Q3, Q4)를 WRR(Weighted Round Robin) 큐로 설정할 수 있다.The switch may set four queues for output port x, and one of the queues Q1 as a priority queue and the other three queues Q2, Q3, and Q4 as weighted round robin (WRR) queues.
예를 들어, 컨트롤러는 BcN 서비스나 라우팅 프로토콜에 사용되는 매우 중요한 패킷들은 Gold 서비스 매핑하여 Q1 큐에 할당하고, VoIP나 IPTV 서비스와 같이 중요한 패킷들은 Silver 서비스로 매핑하여 WRR 큐 중에서도 높은 가중치(weight)를 갖는 Q2 큐에 할당할 수 있다.For example, the controller maps the very important packets used for BcN service or routing protocol to Q1 queue by mapping Gold service, and important packets such as VoIP or IPTV service are mapped to Silver service, and high weight among WRR queues. Can be assigned to the Q2 queue with.
또한, VoD나 VPN 서비스와 같은 패킷들은 Bronze 서비스로 매핑하여 WRR 큐 중에서 중간 가중치를 갖는 Q3 큐에 할당하고, 일반 인터넷 서비스는 Best effort 서비스로 매핑하여 WRR 큐 중에서 낮은 가중치를 갖는 Q4 큐에 할당할 수 있다. In addition, packets such as VoD or VPN service are mapped to the Bronze service and assigned to the Q3 queue having the middle weight among the WRR queues, and general Internet services are mapped to the best effort service to the Q4 queue having the lowest weight among the WRR queues. Can be.
컨트롤러는 QoS 정책에 따른 서비스 별 큐 매핑을 수행하고 난 후, 이를 스위치에 반영하기 위하여 큐 상태 변경 메시지를 스위치로 전송할 수 있다(S540).After performing the queue mapping for each service according to the QoS policy, the controller may transmit a queue state change message to the switch to reflect this to the switch (S540).
큐 상태 변경 메시지는 출력 포트 파라미터로 출력 포트 x, 명령(command), 큐 리스트 및 각각의 큐에 대한 특성(property) 정보를 포함할 수 있다. 여기서, 명령(command)는 큐를 추가(ADD)하거나, 삭제(DELETE)하거나 변경(MODIFY) 하라는 명령을 나타낼 수 있다. 또한, 큐 특성 정보는 도 4의 도시된 테이블을 참조하여 이해할 수 있다. The queue state change message may include an output port x, a command, a queue list, and property information for each queue as an output port parameter. Here, the command may indicate a command to add, delete, or change the queue. Further, the queue characteristic information can be understood with reference to the table shown in FIG.
스위치는 컨트롤러로부터 큐 상태 변경 메시지를 수신하여 출력 포트 x에 대한 큐 특성을 설정할 수 있다(S550). The switch may set the queue characteristic for the output port x by receiving a queue state change message from the controller (S550).
예를 들어, 스위치는 출력 포트 x에 대해 하나의 큐(Q1)는 Priority Q로 나머지 3개의 큐(Q2, Q3, Q4)는 WRR(Weighted Round Robin) 큐로 설정하고, Q2, Q3, Q4의 가중치(weight)를 각각 w1%, w2%, w3%로 설정할 수 있다. For example, the switch sets one queue (Q1) to Priority Q for output port x, and the other three queues (Q2, Q3, and Q4) to weighted round robin (WRR) queues, and the weights of Q2, Q3, and Q4. (weight) can be set to w1%, w2% and w3%, respectively.
출력 포트 x에 대한 큐 특성에 대한 설정이 끝나면 스위치는 큐 상태 메시지를 컨트롤러로 전송할 수 있다(S560). 여기서, 큐 상태 메시지는 출력 포트 x, 큐 리스트 및 큐 특성 값 등을 포함할 수 있다.When the setting of the queue characteristic for the output port x is finished, the switch may transmit a queue status message to the controller (S560). Here, the queue status message may include an output port x, a queue list, a queue characteristic value, and the like.
컨트롤러는 스위치로부터 큐 상태 메시지를 수신한 후에 QoS 제어를 위한 플로우 엔트리를 생성할 수 있고(S570), 생성된 플로우 엔트리를 플로우 테이블 변경 메시지에 실어서 스위치로 전송할 수 있다(S580). The controller may generate a flow entry for QoS control after receiving the queue status message from the switch (S570), and load the generated flow entry into a flow table change message to the switch (S580).
따라서, 플로우 테이블 변경 메시지를 수신한 스위치는 플로우 테이블(Flow table)을 업데이트하고(S590), 실제 패킷에 대하여 QoS 제어를 실행할 수 있다(S593)Accordingly, the switch receiving the flow table change message may update the flow table (S590), and execute QoS control on the actual packet (S593).
도 6은 본 발명의 실시예에 따라 큐를 추가하는 절차를 설명하기 위한 순서도이다. 6 is a flowchart illustrating a procedure of adding a queue according to an embodiment of the present invention.
도 6을 참조하면, 컨트롤러는 스위치에 'ADD' 명령을 전송을 하여 해당 출력 포트에 큐를 추가할 수 있다.Referring to FIG. 6, the controller may add a queue to a corresponding output port by sending an 'ADD' command to the switch.
스위치의 출력 포트 x에 큐가 Q1 하나만 할당되어 있고, Q1의 특성(property)은 BE(Best Effort)로 할당되어 있는 경우를 예를 들어 설명한다. For example, a case where only one Q1 is assigned to the output port x of the switch and the property of Q1 is assigned to BE (Best Effort) will be described.
이러한 경우, 출력 포트 x로 들어오는 모든 패킷들은 Q1을 통하여 동일하게 처리된다.In this case, all packets coming into output port x are processed equally through Q1.
컨트롤러는 서비스 시스템의 요청이나 QoS 정책의 변경에 따라 스위치에 새로운 큐 특성을 갖는 큐를 추가할 수 있다. The controller can add a queue with new queue characteristics to the switch according to the request of the service system or the change of the QoS policy.
예를 들어, 특정한 목적지로 가는 트래픽은 최소 어느 정도의 대역폭을 보장해 주어야 한다는 요구사항이 서비스 시스템이나 QoS 정책으로부터 요청되면 기존 스위치에 설정된 Q1 하나만으로는 이러한 요구사항을 처리해 줄 수 없기 때문에 새로운 특성을 갖는 큐의 추가가 필요하다. For example, if a requirement that traffic to a specific destination must guarantee at least some bandwidth, then the Q1 set on an existing switch can't handle this requirement if it is requested from a service system or QoS policy. You need to add a queue.
도 6에 따르면, 컨트롤러는 QoS 정책에 따라 출력 포트 x에 Q2를 추가하기로 결정하고, Q2의 특성에 따른 대역폭은 min_rate=a 와 max_rate=b 로 할당할 수 있다(S610).According to FIG. 6, the controller may decide to add Q2 to the output port x according to the QoS policy, and the bandwidth according to the characteristic of Q2 may be allocated as min_rate = a and max_rate = b (S610).
즉, Q2는 트래픽에 대해 최소 대역폭 a bps(kbps, Mbps) (예를 들어, 출력 포트 x가 1Gbps 포트이면, 최소 대역폭은 a × 10Mbps)를 보장하면서, 최대 대역폭은 b bps(kbps, Mbps) (예를 들어, 출력 포트 x가 1Gbps 포트이면, 최대 대역폭은 b × 10Mbps)까지로 제한하는 것을 의미할 수 있다. That is, Q2 guarantees minimum bandwidth a bps (kbps, Mbps) for traffic (e.g., if output port x is a 1 Gbps port, the minimum bandwidth is a × 10 Mbps), while the maximum bandwidth is b bps (kbps, Mbps). For example, if the output port x is a 1 Gbps port, it may mean that the maximum bandwidth is limited to b × 10 Mbps.
컨트롤러는 큐 상태 변경 메시지를 스위치로 전송할 수 있다(S620). 여기서, 큐 상태 변경 메시지는 출력 포트 x, 새로운 큐를 ADD하라는 명령(command), 추가하는 큐의 id 및 추가하는 큐에 대한 특성(property) 정보 등과 같은 파라미터를 포함할 수 있다. 따라서, 새로운 큐를 추가(ADD)하라는 명령을 포함하는 큐 상태 변경 메시지를 이용하여 출력 포트 x에 Q2를 추가하고, Q2의 특성으로 최소 대역폭(min_rate)이 출력 포트 x의 최대 전송속도의 a% 이고, 최대 대역폭(max_rate)이 출력 포트 x의 최대 전송속도의 b% 가 되도록 설정할 수 있다. The controller may transmit a queue state change message to the switch (S620). Here, the queue state change message may include parameters such as an output port x, a command to add a new queue, an id of a queue to be added, and property information on the queue to be added. Therefore, Q2 is added to output port x using a queue state change message that includes a command to add a new queue (ADD), and the minimum bandwidth (min_rate) is a% of the maximum transmission speed of output port x by the characteristic of Q2. The maximum bandwidth (max_rate) can be set to be b% of the maximum transmission rate of the output port x.
보다 상세하게는, 스위치는 컨트롤러로부터 큐 상태 변경 메시지를 수신한 후에 출력 포트 x에 Q2를 추가로 설정할 수 있다(S630). 예를 들어, 출력 포트 x에는 두 개의 큐(Q1, Q2)가 설정될 수 있다. More specifically, the switch may further set Q2 to the output port x after receiving the queue state change message from the controller (S630). For example, two queues Q1 and Q2 may be set at the output port x.
출력 포트 x에 대한 새로운 큐(Q2) 설정이 끝나면, 스위치는 큐 상태 메시지를 컨트롤러로 전송할 수 있다(S640). 여기서, 큐 상태 메시지는 출력 포트 x, 큐 리스트(Q1, Q2) 및 큐 특성(property) 값 등을 포함할 수 있다. After setting a new queue (Q2) for the output port x, the switch can send a queue status message to the controller (S640). Here, the queue status message may include an output port x, queue lists Q1 and Q2, and queue property values.
컨트롤러는 스위치로부터 큐 상태 메시지를 수신한 후에, 이를 참조하여 QoS 제어를 위한 플로우 엔트리(Flow entry)를 생성할 수 있다(S650). After the controller receives the queue status message from the switch, the controller may generate a flow entry for QoS control with reference to this (S650).
예를 들어, 컨트롤러는 목적지(Dest. IP)인 10.1.1.0로 가는 모든 패킷들을 출력 포트 x의 Q2로 보내라는 플로우 엔트리를 생성할 수 있다. For example, the controller could create a flow entry to send all packets destined for the destination (Dest. IP) to Q2 on output port x.
컨트롤러는 새로운 플로우 엔트리를 생성한 후에, 이를 플로우 테이블 변경 메시지에 실어서 스위치로 전송할 수 있다(S660). 여기서, 플로우 테이블 변경 메시지는 새로운 플로우 엔트리와 이를 플로우 테이블에 추가(ADD)하라는 명령(command)과 같은 파라미터를 포함할 수 있다. After the controller generates a new flow entry, the controller may load the flow table change message to the switch (S660). Here, the flow table change message may include a parameter such as a new flow entry and a command to add it to the flow table.
플로우 테이블 변경 메시지를 수신한 스위치는 플로우 테이블에 새로 수신한 플로우 엔트리를 추가할 수 있다(S670). 따라서, 스위치는 스위치로 들어오는 패킷들 중 목적지(Dest. IP)인 10.1.1.0로 가는 모든 패킷들은 출력 포트 x의 Q2로 전달하여 Q2의 특성(property)에 따른 QoS 제어를 수행할 수 있다(S680).The switch receiving the flow table change message may add a newly received flow entry to the flow table (S670). Therefore, the switch may transmit all packets destined for the destination (Dest. IP) to 10.1.1.0 among the packets entering the switch to Q2 of the output port x to perform QoS control according to the properties of Q2 (S680). ).
도 7은 본 발명의 실시예에 따라 큐를 삭제하는 방법을 절차를 설명하기 위한 순서도이다. 7 is a flowchart illustrating a procedure of a method of deleting a queue according to an embodiment of the present invention.
도 7을 참조하면, 컨트롤러는 스위치에 'DELETE' 명령을 전송을 하여 해당 출력 포트에서 큐를 삭제할 수 있다.Referring to FIG. 7, the controller transmits a 'DELETE' command to a switch to delete a queue at a corresponding output port.
스위치의 출력 포트 x에 현재 Q1과 Q2 두 개의 큐가 할당되어 있으며, Q1의 특성(property)은 BE(Best Effort)로 할당되어 있고, Q2의 특성은 최소 대역폭이 출력 포트 x의 최대 전송속도의 a%(min_rate=a)로, 최대 대역폭이 출력 포트 x의 최대 전송속도의 b%(max_rate=b)로 할당되어 있는 경우를 예로 들어 설명한다. The output port x of the switch is currently assigned two queues, Q1 and Q2, and the property of Q1 is assigned to BE (Best Effort), and the property of Q2 is that the minimum bandwidth is equal to the maximum transmission speed of output port x. The case where a maximum bandwidth is allocated by a% (min_rate = a) and b% (max_rate = b) of the maximum transmission rate of the output port x will be described as an example.
컨트롤러는 서비스 시스템의 요청이나 QoS 정책의 변경에 따라 스위치에 설정되어 있는 큐를 삭제할 것을 결정할 수 있다(S710). 예를 들어, 특정한 서버로 가는 트래픽에 대해 최소 어느 정도의 대역폭을 보장해 주다가 서버가 서비스를 중지하면 더 이상 대역폭을 보장해 줄 필요가 없어지게 된다. 또한, 특정 고객 사이트로 가는 트래픽에 대해 최소 어느 정도의 대역폭을 보장해 주다가 고객이 서비스를 해지하거나 변경하면 최소 대역폭 보장이 필요없게 될 수 있다. 이런 경우에는 스위치의 출력 포트 x에 설정된 Q2를 삭제할 필요가 있다.The controller may determine to delete the queue set in the switch according to the request of the service system or the change of the QoS policy (S710). For example, you can guarantee at least some bandwidth for traffic destined for a particular server, but when the server stops service, you no longer need to guarantee bandwidth. In addition, if you guarantee a minimum amount of bandwidth for traffic to a specific customer site, and the customer terminates or changes the service, you may not need the minimum bandwidth guarantee. In this case, it is necessary to delete Q2 set at the output port x of the switch.
컨트롤러는 스위치의 출력 포트 x에서 Q2를 삭제하기로 결정하였으면 큐 상태 변경 메시지를 스위치로 전송할 수 있다(S720). 여기서, 큐 상태 변경 메시지는 출력 포트 x, 큐를 DELETE하라는 명령(command), 삭제하려는 큐 id 등과 같은 파라미터를 포함할 수 있다.If the controller determines to delete Q2 at the output port x of the switch, the controller may transmit a queue state change message to the switch (S720). Here, the queue state change message may include parameters such as an output port x, a command to DELETE the queue, and a queue id to be deleted.
스위치는 컨트롤러로부터 큐 상태 변경 메시지를 수신한 후에 출력 포트 x에서 Q2를 삭제할 수 있다(S730). 따라서 출력 포트 x에는 두 개의 큐(Q1, Q2)에서 Q2가 삭제되고 Q1 만 남을 수 있다. The switch may delete Q2 at the output port x after receiving the queue state change message from the controller (S730). Therefore, output port x can delete Q2 from the two queues Q1 and Q2 and leave only Q1.
Q2에 대한 삭제가 완료되면 스위치는 큐 상태 메시지를 컨트롤러로 전송할 수 있다(S740). 여기서, 큐 상태 메시지는 출력 포트 x, 큐 리스트(Q1), 큐 특성(property) 값 등을 포함할 수 있다.When the deletion for Q2 is completed, the switch may transmit a queue status message to the controller (S740). Here, the queue status message may include an output port x, a queue list Q1, a queue property value, and the like.
또한, 스위치는 플로우 테이블에서 출력 포트 x의 Q2와 관련된 플로우 엔트리를 삭제하고(S750), 플로우 엔트리 삭제 메시지를 컨트롤러로 전송할 수 있다(S760).In addition, the switch may delete the flow entry related to Q2 of the output port x in the flow table (S750) and transmit a flow entry delete message to the controller (S760).
컨트롤러는 스위치로부터 플로우 엔트리 삭제 메시지를 수신한 후에 해당 플로우 엔트리를 삭제할 수 있다(S770). The controller may delete the flow entry after receiving the flow entry deletion message from the switch (S770).
예를 들어, 스위치는 목적지(Dest. IP)인 10.1.1.0로 가는 모든 패킷들을 출력 포트 x의 Q2로 보내라는 플로우 엔트리를 삭제할 수 있다. 따라서, 스위치의 출력 포트 x로 들어오는 모든 패킷들은 Q1으로 전달되어 BE(Best Effort)로 처리될 수 있다(S780). For example, the switch could delete the flow entry to send all packets destined for the destination (Dest. IP) to Q2 on output port x. Therefore, all packets coming into the output port x of the switch may be delivered to Q1 and processed as BE (Best Effort) (S780).
도 8은 본 발명의 실시예에 따라 손실 패킷률에 기반하여 큐 특성을 변경하는 절차를 설명하기 위한 순서도이다. 8 is a flowchart illustrating a procedure of changing a queue characteristic based on a lost packet rate according to an embodiment of the present invention.
도 8을 참조하면, 컨트롤러는 스위치 운용 중에 QoS 정책의 변경뿐 아니라, 전체적인 트래픽 상황을 분석하여 필요에 따라 기존에 설정된 큐 특성(property) 변경할 수 있다. Referring to FIG. 8, the controller may analyze the overall traffic situation as well as change the QoS policy during operation of the switch, and change the previously set queue property as needed.
예를 들어, 출력 포트 x에 WRR 큐가 적용되었다면, 트래픽 상황에 따라 큐의 가중치(weight)를 플렉서블(flexible)하게 변경할 수 있다. For example, if the WRR queue is applied to the output port x, the weight of the queue can be changed flexibly according to traffic conditions.
보다 상세하게는, 컨트롤러는 주기적으로 큐 통계 요청 메시지를 스위치로 전송하여 큐들에 대한 트래픽 통계 데이터를 요청할 수 있다(S810). 여기서, 큐 통계 요청 메시지는 해당 출력 포트, 큐 id 등과 같은 파라미터를 포함할 수 있다.More specifically, the controller may periodically send a queue statistics request message to the switch to request traffic statistics data for the queues (S810). Here, the queue statistics request message may include parameters such as a corresponding output port and a queue id.
스위치는 큐 통계 요청 메시지에 따른 해당 큐에 대한 트래픽 통계 데이터를 포함하는 큐 통계 메시지를 컨트롤러로 전송할 수 있다(S820). 여기서, 큐 통계 메시지는 출력 포트, 큐 id, 전송 패킷수 및 손실 패킷수를 포함할 수 있다. The switch may transmit the queue statistics message including the traffic statistics data for the corresponding queue according to the queue statistics request message to the controller (S820). Here, the queue statistics message may include an output port, a queue id, a number of transmission packets, and a number of lost packets.
컨트롤러는 큐 통계 메시지를 수신하여 해당 큐에 대한 패킷 손실률을 계산할 수 있다(S830). 여기서, 패킷 손실률은 손실 패킷수/(전송 패킷수 + 손실 패킷수)로 계산될 수 있다. The controller may calculate a packet loss rate for the corresponding queue by receiving the queue statistics message (S830). Here, the packet loss rate may be calculated as lost packets / (transmitted packets + lost packets).
컨트롤러는 큐들의 패킷 손실률을 각 큐마다 미리 설정해 놓은 임계치와 비교하여 WRR 큐의 가중치들을 변경할 수 있다(S830). The controller may change the weights of the WRR queues by comparing the packet loss rate of the queues with a threshold preset for each queue (S830).
예를 들어, 만일 Silver 서비스 트래픽이 초기에 예상했던 것보다 많이 증가하여 서비스 품질이 저하되면 Silver 서비스에 할당된 Q2의 가중치를 높여 주어 더 많은 트래픽을 처리할 수 있도록 한다. For example, if silver service traffic increases more than initially anticipated and the quality of service is degraded, the weight of Q2 assigned to the silver service is increased to handle more traffic.
컨트롤러는 큐 특성이 변경되면 변경된 큐 특성에 대한 정보를 큐 상태 변경 메시지에 실어서 스위치로 전송할 수 있다(S840). 여기서, 큐 상태 변경 메시지는 출력 포트 x, 큐 특성을 변경(MODIFY)하라는 명령(command), 변경하려는 큐 id 및 큐 특성에 대한 정보 등과 같은 파라미터를 포함할 수 있다. When the queue characteristic is changed, the controller may transfer information on the changed queue characteristic to a queue state change message and transmit the information to the switch (S840). Here, the queue status change message may include parameters such as an output port x, a command to change the queue characteristics (MODIFY), information about a queue id and queue characteristics to be changed, and the like.
스위치는 큐 상태 변경 메시지에 따라 각각의 큐에 대한 가중치를 변경하고(S850), 그 결과를 큐 상태 메시지에 실어서 컨트롤러로 전송할 수 있다(S860). 예를 들어, 스위치는 WRR 큐인 Q2, Q3, Q4에 적용되었던 가중치 w1%, w2%, w3% 각각을 y1%, y2%, y3%로 변경할 수 있다. The switch may change the weight for each queue according to the queue state change message (S850), and transmit the result to the queue state message to the controller (S860). For example, the switch may change the weights w1%, w2%, and w3% applied to the WRR queues Q2, Q3, and Q4 to y1%, y2%, and y3%, respectively.
도 9는 본 발명의 실시예에 따라 중요 서버로 할당되는 트래픽을 서로 다른 큐에 매핑하는 절차를 설명하기 위한 순서도이다. 9 is a flowchart illustrating a procedure of mapping traffic allocated to a critical server to different queues according to an embodiment of the present invention.
도 9를 참조하면, 컨트롤러는 중요 서버들로 가는 트래픽들을 일반 데이터 트래픽과 차별적으로 처리하도록 큐를 매핑할 수 있다. Referring to FIG. 9, the controller may map a queue to handle traffic destined for important servers differently from general data traffic.
먼저, 스위치는 출력 포트에 큐 및 설정된 큐의 특성을 각각 설정할 수 있다(S910). 컨트롤러는 스위치로부터 큐 상태 메시지를 수신함으로써 스위치에 설정된 큐에 대한 정보를 알 수 있다(S920).First, the switch may set the characteristics of the queue and the set queue to the output port, respectively (S910). The controller can know the information on the queue set in the switch by receiving a queue status message from the switch (S920).
컨트롤러는 QoS 정책에 따라 중요 서버들로 가는 트래픽들을 일반 데이터 트래픽과 차별적으로 처리해 주기 위한 큐 매핑 테이블을 구성할 수 있다(S930).The controller may configure a queue mapping table for processing traffic to important servers differently from general data traffic according to the QoS policy (S930).
예를 들어, 컨트롤러는 SDN Controller로 가는 트래픽은 Silver 서비스로 처리해 주기 위하여 Q2에 매핑하고, SIP Call Server로 가는 트래픽은 Bronze 서비스로 처리해 주기 위하여 Q3에 매핑할 수 있다.For example, the controller can map traffic to the SDN Controller to Q2 for processing as Silver service, and traffic to SIP Call Server to Q3 for processing to Bronze service.
컨트롤러는 중요 서버들에 대한 큐 매핑 테이블을 구성한 후, 실제 플로우(Flow)가 해당 큐에 매핑될 수 있도록 플로우 엔트리를 생성할 수 있다(S940).After configuring the queue mapping table for the important servers, the controller may generate a flow entry so that the actual flow may be mapped to the corresponding queue (S940).
예를 들어, SDN Controller는 IP 주소로 10.1.1.1을 사용하고 스위치와 TCP 연결을 위한 port로 yyyy를 사용한다고 가정하고, SIP Call Server는 IP주소로 20.1.1.1을 사용하고 단말과 TCP 연결을 위한 port로 zzzz를 사용한다고 가정하여 설명한다. For example, suppose the SDN Controller uses 10.1.1.1 as the IP address and yyyy as the port for the TCP connection with the switch. The SIP Call Server uses 20.1.1.1 as the IP address and the TCP connection for the terminal. It is assumed that zzzz is used as the port.
컨트롤러가 생성한 플로우 엔트리는 플로우(Flow)를 구분하기 위한 Match field와 해당 플로우의 패킷에 대해 어떤 action을 수행할지 나타내는 Action field로 나뉘어 구성될 수 있다. The flow entry generated by the controller may be divided into a match field for distinguishing flows and an action field indicating what action to perform on packets of the flow.
예를 들어, SDN Controller로 가는 트래픽의 플로우는 목적(destination) IP와 port만 지정해 주면 되기 때문에 소스(source) IP와 port는 Any를 나타내는 '*'로 표시될 수 있고, SIP Call Server로 가는 트래픽의 플로우도 목적(destination) IP와 port만 지정해 주면 되기 때문에 소스(source) IP와 port는 '*'로 표시될 수 있다. For example, since the flow of traffic to the SDN Controller only needs to specify the destination IP and port, the source IP and port can be represented by '*' indicating Any, and the traffic to the SIP Call Server. The source IP and port may be marked with '*' because the destination IP only needs to specify the destination IP and port.
또한, Action field는 SDN Controller 로 가는 트래픽 플로우는 Q2로 보내고, SIP Call Server로 가는 트래픽 플로우는 Q3로 보내라는 Action을 포함할 수 있다. In addition, the action field may include an action to send the traffic flow to the SDN controller to Q2, and to send the traffic flow to the SIP Call Server to Q3.
컨트롤러는 플로우 엔트리를 생성한 후에, 이를 플로우 테이블 변경 메시지에 실어서 스위치로 전송할 수 있다(S950). After generating the flow entry, the controller may load the flow table change message to the switch (S950).
스위치는 컨트롤러로부터 플로우 테이블 변경 메시지를 수신하고, 플로우 테이블 변경 메시지에 포함된 플로우 엔트리를 이용하여 스위치의 플로우 테이블을 업데이트할 수 있다(S960).The switch may receive the flow table change message from the controller and update the flow table of the switch by using the flow entry included in the flow table change message (S960).
따라서, 스위치는 SDN Controller로 가는 패킷이 들어오면 출력 포트 x의 Q2로 전달하여 WRR 방식의 Silver 트래픽으로 처리하고, SIP Call Server로 가는 패킷이 들어오면 출력 포트 x의 Q3로 전달하여 WRR 방식의 Bronze 트래픽으로 처리할 수 있으며, 이를 통하여 해당 큐 특성(property)에 따른 QoS 제어를 수행할 수 있다(S970).Therefore, when the packet goes to SDN Controller, the switch forwards it to Q2 of the output port x and processes it as WRR-type Silver traffic. When the packet goes to SIP Call Server, the switch forwards it to Q3 of the output port x and Bronze of WRR method. Traffic may be processed, and through this, QoS control according to a corresponding queue property may be performed (S970).
도 10은 본 발명의 실시예에 따라 네트워크 종류 별로 큐를 매핑하여 QoS를 제어하는 방법을 설명하기 위한 순서도이고, 도 11은 본 발명의 실시예에 따라 네트워크 종류 별로 큐를 매핑한 경우를 설명하기 위한 개념도이다.FIG. 10 is a flowchart illustrating a method of controlling QoS by mapping a queue for each network type according to an embodiment of the present invention, and FIG. 11 illustrates a case of mapping a queue for each network type according to an embodiment of the present invention. This is a conceptual diagram.
도 10을 참조하면, 컨트롤러는 스위치와 연동하여 네트워크의 종류 따른 QoS 제어를 수행할 수 있다. Referring to FIG. 10, the controller may perform QoS control according to the type of network in association with a switch.
먼저, 스위치는 출력 포트에 큐 및 설정된 큐의 특성을 각각 설정할 수 있다(S1010). 컨트롤러는 스위치로부터 큐 상태 메시지를 수신함으로써 스위치에 설정된 큐에 대한 정보를 알 수 있다(S1020).First, the switch may set the characteristics of the queue and the set queue to the output port, respectively (S1010). The controller can know the information on the queue set in the switch by receiving a queue status message from the switch (S1020).
컨트롤러는 큐 상태 메시지를 참조하여 네트워크 종류에 따라 QoS 정책을 다르게 설정할 수 있는 큐 매핑 테이블을 구성할 수 있다(S1030).The controller may configure a queue mapping table that may set a QoS policy differently according to the network type by referring to the queue status message (S1030).
예를 들어, 컨트롤러는 3G 또는 4G 무선 액세스망으로부터 들어오는 무선 인터넷 트래픽에 대해서는 Silver 서비스로 처리하도록 Q2에 매핑하고, WIBRO 무선 액세스망으로부터 들어오는 무선 인터넷 트래픽에 대해서는 Bronze 서비스로 처리하도록 Q3에 매핑하며, 유선 액세스 망으로부터 들어오는 유선 인터넷 트래픽에 대해서는 BE(Best Effort) 서비스로 처리하도록 Q4에 매핑할 수 있다.For example, the controller maps Q2 to process Silver Internet for wireless Internet traffic coming from 3G or 4G wireless access networks, and Q3 to process Bronze service for wireless Internet traffic coming from WIBRO wireless access networks. For wired Internet traffic coming from a wired access network, it can be mapped to Q4 to be treated as a Best Effort (BE) service.
일반적으로 동일한 데이터를 처리하기 위해 소요되는 비용은 3G/4G 무선 인터넷이 가장 높고, 그 다음으로 WIBRO 인터넷이 높으며, 유선 인터넷이 가장 낮다. 따라서, 3G/4G 무선 인터넷을 Silver 서비스로 처리하고, WIBRO 무선 인터넷을 Bronze 서비스로 처리하며, 유선 인터넷을 BE(Best Effort) 서비스로 처리하도록 QoS 정책을 세우고, 컨트롤러를 이러한 네트워크 종류 별 QoS 정책에 기반하여 QoS를 제어할 수 있다. In general, the cost to process the same data is highest for the 3G / 4G wireless Internet, followed by the higher WIBRO Internet and the lowest wired Internet. Therefore, the 3G / 4G wireless Internet is treated as a Silver service, the WIBRO wireless Internet is treated as a Bronze service, the QoS policy is set to treat the wired Internet as a BE (Best Effort) service, and the controller is assigned to the QoS policy for each network type. QoS can be controlled based on this.
컨트롤러는 네트워크 종류 별로 트래픽을 차별화할 수 있도록 큐 매핑 테이블을 구성하고 난 후, 실제 플로우가 해당 큐에 매핑될 수 있도록 하는 플로우 엔트리를 생성할 수 있다(S1040). The controller may configure a queue mapping table to differentiate traffic for each network type, and then generate a flow entry for allowing the actual flow to be mapped to the corresponding queue (S1040).
도 10 및 도 11을 참조하면, 3G/4G 무선 인터넷 트래픽은 스위치의 Ingress 1으로 들어오고, WIBRO 무선 인터넷 트래픽은 Ingress 2로 들어오며, 유선 인터넷 트래픽은 Ingress 3로 들어오도록 설정할 수 있다. 10 and 11, 3G / 4G wireless Internet traffic may enter Ingress 1 of the switch, WIBRO wireless Internet traffic may enter Ingress 2, and wired Internet traffic may enter Ingress 3.
예를 들어, 컨트롤러는 Match field의 Ingress 1으로 들어오는 플로우는 출력 포트 x의 Q2로 전달하도록 Action field를 설정하고, Match field의 Ingress 2로 들어오는 플로우는 출력 포트 x의 Q3로 전달하도록 Action field를 설정하며, Match field의 Ingress 3로 들어오는 플로우는 출력 포트 x의 Q4로 전달하도록 Action field를 설정할 수 있다.For example, the controller sets the Action field to forward flows coming into Ingress 1 of the match field to Q2 on output port x, and the Action field sets forwarding flows to Ingress 2 of the match field to Q3 of output port x. In addition, the Action field can be configured to forward the flow into Ingress 3 of the Match field to Q4 of the output port x.
컨트롤러는 플로우 엔트리를 생성한 후, 이를 플로우 테이블 변경 메시지에 실어서 스위치로 전송할 수 있다(S1050). After generating the flow entry, the controller may load it on the flow table change message to the switch (S1050).
스위치는 컨트롤러로부터 플로우 테이블 변경 메시지를 수신하고, 플로우 테이블 변경 메시지에 포함된 플로우 엔트리를 이용하여 스위치의 플로우 테이블을 업데이트할 수 있다.The switch may receive a flow table change message from the controller and update the flow table of the switch using the flow entry included in the flow table change message.
따라서, 스위치는 Ingress 1으로부터 들어오는 3G/4G 무선 인터넷 패킷은 출력 포트 x의 Q2로 전달하여 WRR 방식의 Silver 서비스로 처리하고, Ingress 2로부터 들어오는 WIBRO 무선 인터넷 패킷은 출력 포트 x의 Q3로 전달하여 WRR 방식의 Bronze 서비스로 처리하며, Ingress 3로부터 들어오는 유선 인터넷 패킷은 출력 포트 x의 Q4로 전달하여 WRR 방식의 BE(Best Effort) 서비스로 처리함으로써, 네트워크 종류 별로 QoS 제어를 수행할 수 있다(S1060). Therefore, the switch forwards 3G / 4G wireless Internet packets from Ingress 1 to Q2 on output port x for WRR-based Silver service, and WIBRO wireless Internet packets from Ingress 2 are forwarded to Q3 on output port x to WRR. Processed by the Bronze service of the method, and wired Internet packets from Ingress 3 are delivered to Q4 of the output port x and processed by the BE (Best Effort) service of the WRR method to perform QoS control for each network type (S1060). .
상술한 본 발명의 실시예에 따르면, 오픈 플로우 스위치에서 서비스 별 트래픽 차별 처리를 통하여 QoS를 제어할 수 있다. According to the embodiment of the present invention described above, QoS can be controlled through traffic discrimination processing for each service in the open flow switch.
또한, 본 발명의 실시예에 따르면, WRR(Weighted Round Robin) 방법을 오픈 플로우 스위치에 적용하여 다양한 서비스들을 트래픽 특성에 따라 차별화하여 처리할 수 있다. In addition, according to an embodiment of the present invention, by applying a weighted round robin (WRR) method to an open flow switch, it is possible to differentiate and process various services according to traffic characteristics.
더 나아가, 본 발명의 실시예에 따르면, 스위치에서 큐 상태가 변경된 경우, 변경 내용을 컨트롤러에게 즉시 알려줌으로써, 컨트롤러가 네트워크 운용 정책이나 트래픽 상황에 따라 스위치의 큐 상태를 효과적으로 변경할 수 있으며, 이를 통하여 효과적으로 QoS 제어를 수행할 수 있다. Furthermore, according to an embodiment of the present invention, when the queue state is changed in the switch, the controller immediately informs the controller of the change, so that the controller can effectively change the queue state of the switch according to a network operation policy or traffic condition. QoS control can be effectively performed.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although described above with reference to a preferred embodiment of the present invention, those skilled in the art will be variously modified and changed within the scope of the invention without departing from the spirit and scope of the invention described in the claims below I can understand that you can.

Claims (22)

  1. 컨트롤러가 QoS를 제어하는 방법에 있어서, In the method for the controller to control the QoS,
    네트워크 장치의 출력 포트에 설정되는 적어도 하나의 큐(Queue)에 대한 추가, 삭제 및 변경 중 적어도 하나의 수행을 위한 큐의 설정 변경을 결정하는 단계; 및Determining a setting change of a queue for performing at least one of adding, deleting, and changing at least one queue set at an output port of the network device; And
    상기 결정된 큐의 설정 변경에 대한 정보를 포함하는 큐 상태 변경 메시지를 상기 네트워크 장치로 전송하여 큐의 설정 변경을 수행시키는 단계를 포함하는, Transmitting a queue state change message including information on a setting change of the determined queue to the network device to perform a setting change of the queue;
    QoS 제어하는 방법. How to control QoS.
  2. 청구항 1에 있어서, The method according to claim 1,
    상기 큐의 설정 변경을 결정하는 단계는, Determining a setting change of the queue,
    서비스 요구사항 또는 QoS 정책 변경에 기반하여 큐의 설정 변경을 결정하는 것을 특징으로 하는, Characterized by determining a setting change of the queue based on a service requirement or QoS policy change,
    QoS 제어하는 방법.How to control QoS.
  3. 청구항 1에 있어서, The method according to claim 1,
    상기 네트워크 장치의 출력 포트에 설정된 상기 적어도 하나의 큐에 대한 큐 특성 정보를 수신하는 단계; Receiving queue characteristic information for the at least one queue set at an output port of the network device;
    상기 큐 특성 정보에 기반하여 서비스와 상기 적어도 하나의 큐 사이를 매핑하는 플로우 엔트리(Flow entry)를 생성하는 단계; 및Generating a flow entry for mapping between a service and the at least one queue based on the queue characteristic information; And
    상기 생성된 플로우 엔트리에 따라 서비스 별로 트래픽을 처리하도록 상기 네트워크 장치를 제어하는 단계를 더 포함하는, Controlling the network device to process traffic for each service according to the generated flow entry;
    QoS 제어 방법.QoS control method.
  4. 청구항 3에 있어서, The method according to claim 3,
    상기 큐 특성 정보를 수신하는 단계는, Receiving the queue characteristic information,
    상기 큐 특성 정보를 포함한 큐 상태 메시지를 상기 네트워크 장치로부터 수신하는 것을 특징으로 하는, Receiving a queue status message including the queue characteristic information from the network device;
    QoS 제어 방법.QoS control method.
  5. 청구항 3에 있어서, The method according to claim 3,
    상기 플로우 엔트리를 생성하는 단계는, Generating the flow entry,
    Priority 큐 및 적어도 하나의 Weighted Round Robin(WRR) 큐로 구분하여 설정된 상기 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑하는 것을 특징으로 하는, Characterized in that each of the mapping on the basis of the priority of each service to the at least one queue set to be divided into a priority queue and at least one Weighted Round Robin (WRR) queue,
    QoS 제어 방법.QoS control method.
  6. 청구항 5에 있어서, The method according to claim 5,
    상기 플로우 엔트리를 생성하는 단계는,Generating the flow entry,
    가장 높은 순위의 서비스를 위한 트래픽이 상기 Priority 큐에 할당되도록 매핑하고, 다음 순위의 서비스들을 위한 트래픽이 상기 적어도 하나의 WRR 큐에 순차적으로 할당되도록 매핑하는 것을 특징으로 하는,And to map traffic for the highest priority service to be allocated to the Priority queue and to map traffic for a next rank service to the at least one WRR queue sequentially.
    QoS 제어 방법.QoS control method.
  7. 청구항 6에 있어서, The method according to claim 6,
    상기 플로우 엔트리를 생성하는 단계는,Generating the flow entry,
    상기 가장 높은 순위의 서비스를 위한 트래픽을 처리하고 남은 트래픽의 범위에서 상기 적어도 하나의 WRR 큐 각각에 적용된 가중치에 기반하여 다음 순위의 서비스들을 위한 트래픽이 순차적으로 할당되도록 매핑하는 것을 특징으로 하는,Process the traffic for the highest-ranked service and map the traffic for the next-ranked services sequentially based on a weight applied to each of the at least one WRR queue in the remaining traffic range;
    QoS 제어 방법.QoS control method.
  8. 청구항 5에 있어서, The method according to claim 5,
    상기 플로우 엔트리를 생성하는 단계는,Generating the flow entry,
    적어도 하나의 중요 서버로 할당되는 트래픽을 서로 다른 WRR 큐에 매핑하는 것을 특징으로 하는, Characterized by mapping traffic allocated to at least one critical server to different WRR queues,
    QoS 제어 방법.QoS control method.
  9. 청구항 3에 있어서, The method according to claim 3,
    상기 네트워크 장치를 제어하는 단계는, Controlling the network device,
    상기 생성된 플로우 엔트리를 포함하는 플로우 테이블 변경 메시지를 상기 네트워크 장치로 전송하는 단계;Sending a flow table change message including the generated flow entry to the network device;
    상기 플로우 테이블 변경 메시지를 이용하여 상기 네트워크 장치의 플로우 테이블을 업데이트시키는 단계; 및Updating the flow table of the network device using the flow table change message; And
    상기 업데이트된 플로우 테이블에 기반하여 서비스 별로 트래픽을 처리하도록 상기 네트워크 장치를 제어하는 단계를 포함하는 것을 특징으로 하는, And controlling the network device to process traffic for each service based on the updated flow table.
    QoS 제어 방법.QoS control method.
  10. 컨트롤러가 QoS를 제어하는 방법에 있어서, In the method for the controller to control the QoS,
    네트워크 장치로부터 상기 네트워크 장치의 출력 포트에 의해 지원 가능한 큐(Queue)에 대한 정보를 포함하는 큐 설정 정보 메시지를 수신하는 단계; Receiving a queue setting information message from a network device, the queue setting information message including information on a queue that can be supported by the output port of the network device;
    상기 큐 설정 정보 메시지 및 QoS 정책에 기반하여 서비스와 적어도 하나의 큐 사이를 매핑하는 단계; 및Mapping between a service and at least one queue based on the queue establishment information message and a QoS policy; And
    상기 서비스와 상기 적어도 하나의 큐 사이의 매핑 관계에 기반하여 상기 적어도 하나의 큐를 설정하도록 큐 상태 변경 메시지를 상기 네트워크 장치로 전송하는 단계를 포함하는, Sending a queue state change message to the network device to establish the at least one queue based on a mapping relationship between the service and the at least one queue,
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  11. 청구항 10에 있어서, The method according to claim 10,
    상기 서비스와 적어도 하나의 큐 사이를 매핑하는 단계는, Mapping between the service and at least one queue,
    상기 적어도 하나의 큐 각각을 Priority 큐 또는 적어도 하나의 Weighted Round Robin(WRR) 큐로 설정하는 단계; 및Setting each of the at least one queue to a Priority queue or at least one Weighted Round Robin (WRR) queue; And
    상기 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑하는 단계를 포함하는, Mapping services to the at least one queue based on the priority of each service.
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  12. 청구항 11에 있어서, The method according to claim 11,
    상기 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑하는 단계는, The mapping of the services to the at least one queue based on the priority of each service may include:
    가장 높은 순위의 서비스를 위한 트래픽이 상기 Priority 큐에 할당되도록 매핑하고, 다음 순위의 서비스들을 위한 트래픽이 상기 적어도 하나의 WRR 큐에 순차적으로 할당되도록 매핑하는 것을 특징으로 하는, And to map traffic for the highest priority service to be allocated to the Priority queue and to map traffic for a next rank service to the at least one WRR queue sequentially.
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  13. 청구항 12에 있어서, The method according to claim 12,
    상기 적어도 하나의 큐에 서비스 별 우선 순위에 기반하여 서비스를 각각 매핑하는 단계는,The mapping of the services to the at least one queue based on the priority of each service may include:
    상기 가장 높은 순위의 서비스를 위한 트래픽을 처리하고 남은 트래픽의 범위에서 상기 적어도 하나의 WRR 큐 각각에 적용된 가중치에 기반하여 다음 순위의 서비스들을 위한 트래픽이 순차적으로 할당되도록 매핑하는 것을 특징으로 하는,Process the traffic for the highest-ranked service and map the traffic for the next-ranked services sequentially based on a weight applied to each of the at least one WRR queue in the remaining traffic range;
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  14. 청구항 10에 있어서, The method according to claim 10,
    상기 큐 상태 변경 메시지는, The queue state change message is
    상기 네트워크 장치의 출력 포트에 큐가 추가 또는 삭제되도록 하는 명령을 포함하는 것을 특징으로 하는, And a command for adding or deleting a queue to an output port of the network device.
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  15. 청구항 11에 있어서, The method according to claim 11,
    상기 네트워크 장치로부터 손실 패킷에 대한 정보를 수신하여 패킷 손실률을 계산하는 단계; 및Calculating a packet loss rate by receiving information on a lost packet from the network device; And
    상기 패킷 손실률에 기반하여 상기 적어도 하나의 WRR 큐 각각에 적용되는 가중치를 변경시키는 단계를 더 포함하는, Changing a weight applied to each of the at least one WRR queue based on the packet loss rate;
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  16. 청구항 15에 있어서, The method according to claim 15,
    상기 적어도 하나의 WRR 큐 각각에 적용되는 가중치를 변경시키는 단계는, Changing the weight applied to each of the at least one WRR queue,
    상기 큐 상태 변경 메시지에 상기 가중치 변경을 위한 명령을 포함시켜 상기 네트워크 장치로 전송함으로써 수행하는 것을 특징으로 하는, And performing a command for changing the weight in the queue state change message and transmitting the same to the network device.
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  17. 청구항 10에 있어서, The method according to claim 10,
    상기 큐 상태 변경 메시지에 기반하여 설정된 상기 적어도 하나의 큐에 대한 큐 특성 정보를 포함하는 큐 상태 메시지를 수신하는 단계; Receiving a queue status message including queue characteristic information for the at least one queue set based on the queue status change message;
    상기 큐 특성 정보에 기반하여 상기 서비스와 상기 적어도 하나의 큐 사이를 매핑하는 플로우 엔트리(Flow entry)를 생성하는 단계; 및Generating a flow entry for mapping between the service and the at least one queue based on the queue characteristic information; And
    상기 생성된 플로우 엔트리에 따라 서비스 별로 트래픽을 처리하도록 상기 네트워크 장치를 제어하는 단계를 더 포함하는 것을 특징으로 하는, And controlling the network device to process traffic for each service according to the generated flow entry.
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  18. 네트워크 장치가 QoS를 제어하는 방법에 있어서,In the method for the network device to control the QoS,
    상기 네트워크 장치의 출력 포트에 의해 지원 가능한 큐(Queue)에 대한 정보를 포함하는 큐 설정 정보 메시지를 컨트롤러로 전송하는 단계;Transmitting a queue setting information message including information on a queue that can be supported by an output port of the network device to a controller;
    상기 큐 설정 정보 메시지 및 QoS 정책에 기반하여 상기 컨트롤러에 의해 생성된 큐 상태 변경 메시지를 수신하는 단계; 및Receiving a queue state change message generated by the controller based on the queue setting information message and a QoS policy; And
    상기 큐 상태 변경 메시지에 따라 적어도 하나의 큐를 상기 출력 포트에 설정하는 단계를 포함하는, Setting at least one queue to the output port according to the queue state change message;
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  19. 청구항 18에 있어서, The method according to claim 18,
    상기 큐 상태 변경 메시지는, The queue state change message is
    상기 큐 설정 정보 메시지 및 상기 QoS 정책에 기반하여 서비스와 상기 적어도 하나의 큐 사이를 매핑하여 상기 컨트롤러가 생성한 정보를 포함하는 것을 특징으로 하는,Characterized by the controller by mapping between the service and the at least one queue based on the queue setting information message and the QoS policy,
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법. QoS control method using traffic processing according to service.
  20. 청구항 18에 있어서, The method according to claim 18,
    상기 큐 상태 변경 메시지는, The queue state change message is
    상기 큐 설정 정보 메시지 및 상기 QoS 정책에 기반한 네트워크 종류 별 우선 순위에 따라 네트워크와 상기 적어도 하나의 큐 사이를 매핑하여 상기 컨트롤러가 생성한 정보를 포함하는 것을 특징으로 하는,Characterized by the controller by mapping between the network and the at least one queue according to the network type priority based on the queue configuration information message and the QoS policy,
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  21. 청구항 18에 있어서, The method according to claim 18,
    상기 출력 포트에 설정하는 단계는, Setting the output port,
    가장 높은 순위의 서비스를 위한 트래픽이 Priority 큐에 할당되도록 설정하고, 다음 순위의 서비스들을 위한 트래픽이 적어도 하나의 WRR 큐에 순차적으로 할당되도록 설정하는 것을 특징으로 하는, Characterized in that the traffic for the highest priority service is set to be assigned to the Priority queue and the traffic for the next highest service is sequentially assigned to the at least one WRR queue.
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
  22. 청구항 21에 있어서, The method according to claim 21,
    상기 출력 포트에 설정하는 단계는,Setting the output port,
    상기 가장 높은 순위의 서비스를 위한 트래픽을 처리하고 남은 트래픽의 범위에서 상기 적어도 하나의 WRR 큐 각각에 적용된 가중치에 기반하여 다음 순위의 서비스들을 위한 트래픽이 순차적으로 할당되도록 설정하는 것을 특징으로 하는, Characterized in that the traffic for the highest-ranked service is processed and traffic for the next-ranked services is sequentially assigned based on a weight applied to each of the at least one WRR queue in the remaining traffic range.
    서비스에 따른 트래픽 처리를 이용한 QoS 제어 방법.QoS control method using traffic processing according to service.
PCT/KR2014/010169 2013-10-28 2014-10-28 Method for controlling qos by handling traffic depending on service WO2015065003A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/032,707 US20160323189A1 (en) 2013-10-28 2014-10-28 Method for controlling qos by handling traffic depending on service

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2013-0128231 2013-10-28
KR20130128231 2013-10-28
KR1020140147076A KR101877595B1 (en) 2013-10-28 2014-10-28 METHOD FOR CONTROLLING QoS USING TRAFFIC PROCESSING BASED ON SERVICE
KR10-2014-0147076 2014-10-28

Publications (1)

Publication Number Publication Date
WO2015065003A1 true WO2015065003A1 (en) 2015-05-07

Family

ID=53004527

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/010169 WO2015065003A1 (en) 2013-10-28 2014-10-28 Method for controlling qos by handling traffic depending on service

Country Status (1)

Country Link
WO (1) WO2015065003A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017052154A1 (en) * 2015-09-24 2017-03-30 엘지전자 주식회사 Method and device by which prioritized service is transmitted
WO2017157347A1 (en) 2016-03-18 2017-09-21 Huawei Technologies Co., Ltd. Method and apparatus for programmable buffers in mobile networks
CN107624230A (en) * 2015-05-11 2018-01-23 华为技术有限公司 The method and entity of service availability management

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030052840A (en) * 2001-12-21 2003-06-27 주식회사 케이티 Packet scheduling method measured load-based of a router in differentiated service network
US20040092278A1 (en) * 2002-11-13 2004-05-13 Wilhelmus Diepstraten Managing priority queues and escalation in wireless communication systems
US20100302946A1 (en) * 2009-05-29 2010-12-02 Futurewei Technologies, Inc. System and Method for Relay Node Flow Control in a Wireless Communications System
US20110058564A1 (en) * 2009-09-09 2011-03-10 Alaxala Networks Corporation Network relay device and memory control method
US8208406B1 (en) * 2008-03-25 2012-06-26 Juniper Networks, Inc. Packet forwarding using feedback controlled weighted queues dynamically adjusted based on processor utilization

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030052840A (en) * 2001-12-21 2003-06-27 주식회사 케이티 Packet scheduling method measured load-based of a router in differentiated service network
US20040092278A1 (en) * 2002-11-13 2004-05-13 Wilhelmus Diepstraten Managing priority queues and escalation in wireless communication systems
US8208406B1 (en) * 2008-03-25 2012-06-26 Juniper Networks, Inc. Packet forwarding using feedback controlled weighted queues dynamically adjusted based on processor utilization
US20100302946A1 (en) * 2009-05-29 2010-12-02 Futurewei Technologies, Inc. System and Method for Relay Node Flow Control in a Wireless Communications System
US20110058564A1 (en) * 2009-09-09 2011-03-10 Alaxala Networks Corporation Network relay device and memory control method

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107624230A (en) * 2015-05-11 2018-01-23 华为技术有限公司 The method and entity of service availability management
US10530668B2 (en) 2015-05-11 2020-01-07 Huawei Technologies Co., Ltd. Method and entities for service availability management
CN107624230B (en) * 2015-05-11 2020-12-15 华为技术有限公司 Method and entity for service availability management
US10972365B2 (en) 2015-05-11 2021-04-06 Huawei Technologies Co., Ltd. Method and entities for service availability management
US11805031B2 (en) 2015-05-11 2023-10-31 Huawei Technologies Co., Ltd. Method and entities for service availability management
WO2017052154A1 (en) * 2015-09-24 2017-03-30 엘지전자 주식회사 Method and device by which prioritized service is transmitted
WO2017157347A1 (en) 2016-03-18 2017-09-21 Huawei Technologies Co., Ltd. Method and apparatus for programmable buffers in mobile networks
CN109155753A (en) * 2016-03-18 2019-01-04 华为技术有限公司 Method and apparatus for the programmable buffer area in mobile network
EP3412007A4 (en) * 2016-03-18 2019-03-13 Huawei Technologies Co., Ltd. Method and apparatus for programmable buffers in mobile networks
US10645009B2 (en) 2016-03-18 2020-05-05 Futurewei Technologies, Inc. Method and apparatus for programmable buffers in mobile networks
CN109155753B (en) * 2016-03-18 2021-01-29 华为技术有限公司 Method and apparatus for programmable buffers in mobile networks
EP3913866A1 (en) * 2016-03-18 2021-11-24 Huawei Technologies Co., Ltd. Method and apparatus for programmable buffers in mobile networks

Similar Documents

Publication Publication Date Title
WO2015030491A1 (en) Bandwidth providing method based on multi-flow grouping
KR101877595B1 (en) METHOD FOR CONTROLLING QoS USING TRAFFIC PROCESSING BASED ON SERVICE
WO2018074703A1 (en) Base station device and qos control method in wireless section
WO2023033585A1 (en) Tunneling and gateway access system optimized for distributed gateway environment, and method related thereto
WO2016023148A1 (en) Packet control method, switch and controller
WO2019200728A1 (en) Primary and backup switching method and device in virtual gateway, and computer readable storage medium
WO2016021773A1 (en) Qos guaranteed video stream method and system, and transmission server
WO2016003234A1 (en) Method and device for receiving and transmitting information in multimedia system
WO2017131285A1 (en) Container network management system and container networking method
WO2015199340A1 (en) Network device and terminal for multi-path communication, operation method thereof, and program implementing operation method
WO2015065003A1 (en) Method for controlling qos by handling traffic depending on service
WO2015080525A1 (en) Method and apparatus for dynamic traffic control in sdn environment
WO2018038412A1 (en) Method and user equipment for connecting by means of plurality of accesses in next generation network
WO2015012454A1 (en) Method of improving network performance by controlling virtual link, and network system employing same
WO2018184302A1 (en) Data transmission method, system, virtual load balancer and readable storage medium
WO2012165805A2 (en) Device and method for simultaneous data transmission service using two or more networks
WO2011136538A2 (en) Method and apparatus for transmitting ethernet data through audio/video interface
WO2015002436A1 (en) Method and apparatus for optimizing data route in mobile communication system
WO2015096040A1 (en) Access node, mobile management network element and paging message processing method
WO2019132454A1 (en) Method and apparatus for controlling traffic of network device in wireless communication network
WO2022092632A2 (en) Offset-based transmission path and slot discovery method for periodic end-to-end low-latency traffic transmission, and control device performing same
WO2015010252A1 (en) Service provisioning method, device and system in coaxial cable system
WO2011031097A2 (en) Method for setting plurality of sessions and node using same
WO2011145896A2 (en) Method and apparatus for determining a coordinator
WO2012091288A1 (en) Method for communication between an ip terminal and a client

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: 14857370

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 15032707

Country of ref document: US

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC ( EPO FORM 1205A DATED 10/08/2016 )

122 Ep: pct application non-entry in european phase

Ref document number: 14857370

Country of ref document: EP

Kind code of ref document: A1