WO2014169883A2 - 虚拟输出队列授权管理方法、装置及计算机存储介质 - Google Patents

虚拟输出队列授权管理方法、装置及计算机存储介质 Download PDF

Info

Publication number
WO2014169883A2
WO2014169883A2 PCT/CN2014/079972 CN2014079972W WO2014169883A2 WO 2014169883 A2 WO2014169883 A2 WO 2014169883A2 CN 2014079972 W CN2014079972 W CN 2014079972W WO 2014169883 A2 WO2014169883 A2 WO 2014169883A2
Authority
WO
WIPO (PCT)
Prior art keywords
scheduling
level
index
scheduler
unit
Prior art date
Application number
PCT/CN2014/079972
Other languages
English (en)
French (fr)
Other versions
WO2014169883A3 (zh
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 US14/909,223 priority Critical patent/US9940471B2/en
Priority to RU2016106827A priority patent/RU2643666C2/ru
Priority to EP14785615.7A priority patent/EP3029898B1/en
Publication of WO2014169883A2 publication Critical patent/WO2014169883A2/zh
Publication of WO2014169883A3 publication Critical patent/WO2014169883A3/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Definitions

  • the present invention relates to communications technologies, and in particular, to a virtual output queue (VOQ) authorization management method, apparatus, and computer storage medium.
  • VOQ virtual output queue
  • QoS Quality of Service
  • the basic idea of this Diffserv policy is to classify the user's data stream according to QoS requirements: When the network is idle, any user's data stream can enter and leave the network freely; when the network is busy, the high-level data stream is queued. When the resource is occupied, the data stream with lower level has higher priority, that is, priority scheduling is implemented, thereby ensuring better service quality.
  • the pull-level hierarchical scheduling technology is gradually configured as a high-speed packet data transmission network because of its flexible scheduling mode and strong bandwidth scalability. Operators can assign scheduling levels, scheduling algorithms, priorities, weights, etc. to better ensure service quality according to different service requirements, such as voice, video, and data services.
  • the received message is allocated to the corresponding VOQ according to the service level, and then the authorization is sent from the physical port layer to the VOQ, VOQ message according to the scheduling hierarchical relationship preset by the QoS.
  • the polling scheduling is dequeued according to the number of authorizations obtained by the queue. Therefore, the algorithm and scheme of multi-level authorization distribution is the key to realize QoS, which determines important parameters such as delay, jitter, throughput and validity of each service.
  • the SP Small Priority
  • WFQ Weighted Fair Queuing
  • WRR Weighted Round
  • FIG. 1 is a schematic diagram of pull-level hierarchical scheduling of the related art.
  • the (ln+1)-level scheduler is attached to the In-level scheduler.
  • the authorization distribution process after the In-class scheduler obtains the authorization from its superior scheduler, it delivers the authorization to the (ln+1)-level scheduler according to its scheduling algorithm. Assuming that the (ln+1)-level scheduler is an SP scheduler, the service level division of the SP cannot be reflected on its previous level In scheduler.
  • the embodiment of the invention provides a virtual output queue authorization management method, a device and a computer storage medium, so as to solve the problem that the related technology does not support the service priority transmission and cannot realize the convergence and shaping according to the user service.
  • An embodiment of the present invention provides a VOQ authorization management method, where the method includes:
  • the current authorization is sent from the physical port layer by layer to the VOQ corresponding to the VOQ index to be authorized according to the index of the scheduler to be authorized and the VOQ index.
  • the method further includes:
  • the current scheduling level is updated according to the scheduling algorithm of the scheduler included in the scheduling unit in the current scheduling hierarchy and the weight and priority of the scheduling unit of the next scheduling level of the current scheduling level.
  • the method further includes:
  • the corresponding shaping state information is obtained according to the index of the scheduling unit of the next scheduling level of the current scheduling layer, and the next scheduling level of the current scheduling level is determined according to the acquired shaping state information, corresponding to the current authorization.
  • the index of the scheduler that needs authorization for the same service level until the index of the VOQ to be authorized that corresponds to the same service level as the current authorization is determined.
  • the index of the scheduling unit is an index with consecutive serial numbers, and the scheduling priority of the scheduling unit at the corresponding scheduling level is determined according to a pre-configured connection relationship, and the index of the scheduler includes the scheduler in the Authorization priority information in the scheduling unit;
  • the scheduling list information and the shaping state information of the scheduler are indexed by the scheduler in the scheduling unit to which the scheduler belongs.
  • the method further includes: determining that the priority delivery identifier of the current scheduling level is a set state;
  • the method further includes: acquiring, according to an index of the scheduling unit of the next scheduling layer, a scheduler of the scheduling unit of the scheduling unit of the next scheduling layer The linked list information, determining, according to the acquired scheduling list information, an index of the scheduler that needs to be authorized in the scheduling unit of the next scheduling level, until determining an index of the VOQ to be authorized;
  • the method further includes: storing the storage description information of the packet according to the service quality QoS level and destination port of the service Deposit the corresponding VOQ;
  • the method further includes:
  • the first storage information is extracted from the authorized VOQ, the corresponding packet is obtained according to the extracted storage information, and the acquired packet is output to the VOQ corresponding to the authorization.
  • the destination port After the authorization is delivered to the corresponding VOQ, the first storage information is extracted from the authorized VOQ, the corresponding packet is obtained according to the extracted storage information, and the acquired packet is output to the VOQ corresponding to the authorization.
  • the destination port After the authorization is delivered to the corresponding VOQ, the first storage information is extracted from the authorized VOQ, the corresponding packet is obtained according to the extracted storage information, and the acquired packet is output to the VOQ corresponding to the authorization.
  • the destination port After the authorization is delivered to the corresponding VOQ, the first storage information is extracted from the authorized VOQ, the corresponding packet is obtained according to the extracted storage information, and the acquired packet is output to the VOQ corresponding to the authorization.
  • the present invention further provides a VOQ authorization management apparatus, where the apparatus includes: a first determining unit, a second determining unit, and an authorized issuing unit;
  • the first determining unit is configured to determine the next scheduling according to a scheduling algorithm of a scheduler of a scheduling unit directly connected to the physical port, and a weight and a priority of a scheduling unit of a next scheduling level of the scheduling unit.
  • the second determining unit is configured to acquire scheduling list information of each scheduler of the scheduling unit of the next scheduling level according to an index of the scheduling unit of the next scheduling level, and determine, according to the scheduling linked list information, An index of the scheduler to be authorized that corresponds to the same service level in the scheduling unit of the next scheduling level, until the VOQ index of the same service level corresponding to the current authorization is determined;
  • the authorization issuance unit is configured to deliver the current authorization from the physical port to the VOQ corresponding to the VOQ index to be authorized, layer by layer according to the index of the scheduler to be authorized and the VOQ index.
  • the device further includes:
  • the updating unit is configured to: according to a scheduling algorithm of the scheduler included in the scheduling unit in the current scheduling hierarchy, and a weight and a priority of the scheduling unit of the next scheduling level of the current scheduling level, before the new authorization is issued in each scheduling level, Updates the index of the scheduling unit of the next scheduling level of the current scheduling hierarchy.
  • the first determining unit is further configured to determine, according to the scheduler shaping state information included in the scheduling unit directly connected to the physical port, an index of a scheduling unit of a next scheduling level of the current scheduling level;
  • the second determining unit is further configured to acquire a corresponding shaping state letter according to an index of a scheduling unit of a next scheduling level of the current scheduling layer, and determine, according to the acquired shaping state information, In the next scheduling level of the pre-scheduling hierarchy, the index of the scheduler that needs to be authorized to correspond to the same service level as the current authorization, until the index of the VOQ to be authorized that corresponds to the same service level as the current authorization is determined.
  • the index of the scheduling unit is an index with consecutive serial numbers
  • the authorization priority of the scheduling unit is determined according to a pre-configured connection relationship
  • the index of the scheduler includes the scheduler in the scheduling unit.
  • the scheduling list information and the shaping state information of the scheduler are indexed by the scheduler in the scheduling unit to which the scheduler belongs.
  • the device further includes: a third determining unit, a fourth determining unit, and a fifth determining unit;
  • a third determining unit configured to: when the priority delivery identifier of the current scheduling layer is set to a set state, triggering the first determining unit; and determining that the priority delivery identifier of the current scheduling layer is not set, triggering the first Four determining unit;
  • a fourth determining unit configured to acquire scheduling list information of a scheduler of the scheduling unit of the next scheduling layer according to an index of the scheduling unit of the next scheduling level, and determine the next step according to the acquired scheduling list information An index of the scheduler that needs to be authorized in the scheduling unit of the scheduling hierarchy until the index of the VOQ to be authorized is determined;
  • the fifth determining unit is configured to deliver the current authorization from the physical port to the VOQ corresponding to the index of the VOQ layer by layer according to the index of the scheduler to be authorized and the VOQ index.
  • the device further includes:
  • the VOQ management unit is configured to store the storage description information of the packet into the corresponding VOQ according to the QoS class and the destination port of the corresponding service of the packet; after the authorization is sent to the corresponding VOQ, extract the first storage from the authorized VOQ.
  • the information acquires a corresponding packet according to the extracted storage information, and outputs the acquired packet to a destination port corresponding to the authorized VOQ.
  • the embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores computer executable instructions, and the computer executable instructions are used to execute the virtual output queue VOQ authorization management method described above. 3 ⁇ 4
  • the scheduling list information of each scheduler of the scheduling unit of the next scheduling level is obtained according to the index of the scheduling unit of the next scheduling level of the current scheduling level, and the scheduling unit of the next scheduling level is determined and current.
  • the scheduler of the scheduling unit can be configured to correspond to different services, and a plurality of schedulers are configured according to different scenario requirements to form a scheduling unit, and the convergence shaping of multiple services of the user is implemented according to the corresponding shaping state information.
  • FIG. 1 is a schematic diagram of a pull-type hierarchical scheduling of a related art
  • FIG. 2 is a schematic flowchart of an implementation process of a VOQ authorization management method according to an embodiment of the present invention
  • FIG. 3 is a schematic structural diagram of a scheduling unit according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of a VOQ authorization management apparatus according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of VOQ authorization management according to an embodiment of the present invention.
  • the scheduling of the next scheduling layer is determined according to a scheduling algorithm of a scheduler of a scheduling unit directly connected to a physical port, and a weight and a priority of a scheduling unit of a scheduling level of the scheduling unit.
  • the index of the unit is obtained according to the index of the scheduling unit of the next scheduling level, and the scheduling list information of each scheduler of the scheduling unit of the next scheduling level is obtained, and the next scheduling level is determined according to the scheduling list information.
  • FIG. 2 is a schematic flowchart of a VOQ authorization management method according to an embodiment of the present invention. As shown in FIG. 2, the method includes the following steps:
  • Step 201 Determine an index of the scheduling unit of the second level according to a scheduling algorithm of the scheduler of the scheduling unit of the first scheduling level and a weight and a priority of the scheduling unit of the second scheduling level.
  • the storage description information of the packet is stored in the corresponding VOQ according to the service quality QoS level and the destination port of the corresponding service of the packet; the authorization is generated and delivered to the physical port.
  • the authorization is generated according to a fixed period, and the authorization is evenly distributed to each physical port by using a WFQ algorithm or a WRR algorithm according to a rate allocation requirement of the physical port.
  • the total amount of authorization generated is determined according to the traffic demand of all physical ports, and is sent to each physical port.
  • the total amount of authorization is determined according to the traffic of each physical port.
  • the authorization is distributed to the corresponding user's VOQ corresponding to different services according to parameters such as validity, delay, jitter, and throughput of different services.
  • the present invention is described by taking three scheduling levels as an example in the embodiment of the present invention.
  • the technical solution of the embodiment of the present invention is still applicable.
  • the scheduling layer directly connected to the physical port is a first scheduling layer, the scheduling unit in the first scheduling layer is a first-level scheduling unit, and the scheduler in each first-level scheduling unit is a first-level scheduling device;
  • the scheduling level directly connected to the scheduling level is the second scheduling level, and so on.
  • the authorization priority of the scheduling unit may be based on the pre-configured connection relationship information of the user.
  • the index of the first level scheduler of the first scheduling level is identified in the first level scheduling unit.
  • Authorization priority of each first-level scheduler; the weight and priority of the scheduling unit of the first level may be pre-configured;
  • the scheduling priority of the scheduler is determined according to the weights and priorities of the eight schedulers, and the identifiers are assigned to the eight first level schedulers. 0 to 7 (corresponding to different authorization priorities), and the ascending order of the preset index is the ascending order of the authorization priority, the first-level scheduler 0 has the highest authorization priority, and the first-level scheduler 7 has the lowest authorization priority;
  • the index of the first-level scheduling unit is identified by a four-digit binary number, the lower three bits correspond to a binary number of 0 ⁇ 7 representing the priority of the first-level scheduler in the (ln+1)-level scheduling unit (a total of seven authorizations) Priority), with a high bit of 0 indicating the index of the first-level scheduling unit at the corresponding first scheduling level; according to the above strategy, the index of the first-level scheduling unit 0 is a binary number 0000 ⁇ 0111 (corresponding to the decimal number 0 ⁇ 7) Wherein the
  • the authorization priority of the second-level scheduling unit of the second scheduling layer is determined by the authorization priority of the directly scheduled (slave) scheduler of the first scheduling level, that is, directly connected to the scheduler with high authorization priority (hanging).
  • the scheduling unit has a high priority, if, if there are m second-level scheduling units in the n second-level scheduling units of the second scheduling level and directly connected to the scheduler 0 of the first-level scheduling unit, then when authorized When the scheduler 0 is distributed to the scheduler 0, the scheduler 0 delivers the authorization to the scheduling unit in the second scheduling level according to the weights pre-configured by the m second-level scheduling units.
  • the scheduling algorithm of the second scheduler of the second-level scheduling unit according to the second scheduling level, and the weight and priority of the scheduling unit of the next scheduling level of the scheduling unit are further And shaping state information of the second level scheduler, determining an index of the scheduling unit of the second scheduling level.
  • the shaping state information of the scheduler is stored in the scheduling unit of the scheduler by the scheduler.
  • the indexing and shaping status information is determined according to the traffic requirements and the number of distribution authorizations pre-configured by each scheduler.
  • the shaping status information is 1, the corresponding scheduler can obtain the authorization, and the shaping status information is 0 to identify the corresponding scheduler traffic. If the requirements are met, no authorization is required.
  • Step 202 Obtain the scheduling list information of the second-level scheduler according to the index of the second-level scheduling unit, and determine, according to the scheduling linked list information, that the scheduling unit of the second scheduling level needs authorization for the same service level corresponding to the current authorization.
  • the index of the scheduler is a list of the scheduler according to the index of the second-level scheduling unit.
  • the scheduling list information of the scheduler is indexed by the scheduler in the scheduling unit to which the scheduler belongs, so that the scheduling unit index is used as a basic unit for storing, extracting, and updating the linked list information, thereby avoiding the extra time of authorization distribution. Gap and linked list storage resources.
  • the scheduling list information includes information about the status (empty or full) of the scheduler of the scheduler.
  • the scheduler can be distributed and authorized, and the schedule information of the schedule can be preset, when the scheduler is in the next scheduling hierarchy.
  • the scheduler's linked list is empty.
  • the corresponding shaping state information is obtained according to the index of the scheduling unit of the second scheduling layer, and according to the obtained shaping state information, determining that the second scheduling level corresponds to the same service level as the current authorization.
  • the index of the scheduler that needs to be authorized is obtained according to the index of the scheduler that needs to be authorized.
  • Step 203 The authorization is delivered to the scheduler corresponding to the index of the scheduler that needs to be authorized in the second scheduling level and corresponding to the current authorization.
  • Step 204 Determine an index of the scheduling unit of the third scheduling level according to the weight and priority of the scheduling unit of the second scheduling level.
  • step 204 of determining the scheduling unit index is the same as the basic idea of the step 201 determining the scheduling unit index, and details are not described herein again.
  • Step 205 Acquire, according to the index of the scheduling unit of the third scheduling level, the scheduling list information of the scheduler of the third scheduling level, and determine, according to the scheduling linked list information, an index of the VOQ to be authorized corresponding to the current service level;
  • the scheduling units of the first scheduling layer and the second scheduling layer further update the scheduling list of the scheduler according to the corresponding scheduling algorithm, to obtain the requirement of the same service level corresponding to the next authorization in the scheduling unit of the next scheduling level.
  • the index of the authorized scheduler until the VOQ index to be authorized that corresponds to the same service level as the next authorization is determined.
  • the priority of the same service in each scheduling layer is the same.
  • the authorization priority of the scheduling unit can be determined according to the pre-configured connection relationship. Therefore, the services with the same service level in each scheduling level are attached (subordinated) to the same service.
  • the level of the previous scheduling level on the scheduler For example, it is assumed that the VOQ corresponding to the standard-definition television service is authorized and delivered by the first-level scheduler 0 of each first-level scheduling unit in the first scheduling level, and correspondingly, the second scheduling of the first-level scheduler 0 is attached.
  • the scheduler in the hierarchy and the third scheduling level is also responsible for authorizing the delivery of the VOQ corresponding to the standard definition television service, and thus, the schedules of the schedulers of the second scheduling hierarchy and the third scheduling hierarchical scheduling unit and the scheduling unit of the previous hierarchy
  • the device establishes a one-to-one mapping relationship for the same service.
  • step 201 it is also required to determine that the priority delivery identifier of the current scheduling level is set to a state
  • the scheduling list information of the scheduler of the scheduling unit of the third scheduling level is obtained according to the index of the scheduling unit of the third level, and the index of the VOQ to be authorized in the scheduling unit of the third scheduling level is determined according to the acquired scheduling list information.
  • Step 206 The scheduler that obtains the authorization from the second scheduling level is delivered to the VOQ corresponding to the VOQ index to be authorized according to the VOQ index to be authorized.
  • the authorization priority of the scheduling unit of each scheduling level is determined by the authorization priority of the directly connected (slave) scheduler of the previous scheduling level, so the scheduling units directly connected to the same scheduler have the same authorization priority, thus, VOQ
  • the authorization priority may be traced to the scheduler corresponding to the first scheduling level (the highest scheduling level) according to the directly connected scheduler, and the authorization priority of the scheduler in the associated scheduling unit is the authorization priority corresponding to the VOQ.
  • the number of different priority schedulers included in the scheduling unit in the first scheduling hierarchy is determined according to the number of service service levels, that is, the authorization divides the authorization priority according to the service level from the first scheduling level, and different services.
  • the levels correspond to different authorization priorities.
  • the VOQ is associated with a different level of service of the user, extracts the first stored information from the authorized VOQ, acquires a corresponding packet according to the extracted storage information, and outputs the acquired packet to the VOQ corresponding to the authorized VOQ. Destination port.
  • the number of VOQs authorized the number of bytes of the packet scheduling output of the queue, that is, the throughput; the interval at which the VOQ is authorized, determines the packet scheduling output delay and jitter of the VOQ; the priority of the VOQ, determines the user corresponding to the VOQ
  • the index of the unit acquires the scheduling list information of each scheduler of the scheduling unit of the next scheduling level, and determines the index of the scheduler to be authorized corresponding to the current service level in the scheduling unit of the next scheduling level until the current and determined Authorizing a VOQ index to be authorized for the same service level; locating the current authorization from the physical port to the VOQ corresponding to the VOQ index to be authorized according to the index of the scheduler and the VOQ index to be authorized
  • the service level transfer between the various scheduling levels is realized, and the delivery of the service priority is realized;
  • the scheduler of the scheduling unit can be configured to correspond to different services, and a plurality of schedulers are configured according to different scenario requirements to form a scheduling unit, and the convergence shaping of multiple services of the user is implemented according to the corresponding shaping state information;
  • the index of the scheduling unit is a continuous index, and the scheduling priority of the scheduling unit is determined according to the pre-configured connection relationship at the corresponding scheduling level, so that the scheduling list information and the shaping of the scheduler can be configured according to different needs.
  • the status information is indexed by the scheduler in the associated scheduling unit index, and the user-based multi-service refinement management is implemented without occupying additional hardware resources.
  • FIG. 3 is a schematic structural diagram of a scheduling unit according to an embodiment of the present invention.
  • the scheduling unit is composed of a group of indexed consecutive schedulers, and the scheduler index and The scheduler is associated with a priority in the scheduling unit, and the algorithm of each scheduler can be independently configured according to actual application requirements, including: SP, WFQ, WRR, and FQ;
  • the scheduling unit shown in Figure 3 consists of eight schedulers.
  • the lower three bits of the scheduler index (the corresponding decimal numbers are 0, 1, 2, 3, 4, 5, 6, and 7 respectively) identify the scheduler in the scheduling unit.
  • Priority in the middle where 0 identifies the highest priority, 7 identifies the lowest priority, and the scheduler in the scheduling unit indexes the consecutive scheduler, which is called as a complete scheduling unit by the scheduler (the priority delivery identifier is not set), Can be established as a scheduler for the same service as in the previous hierarchical scheduling unit Mapping relationship (priority delivery identifier is set);
  • each scheduling unit includes the number of dispatchers that need to be aggregated and shaped. determine.
  • users' services can be divided into: Internet Protocol (IP) voice, video communication, HDTV, standard definition television, standard definition on-demand, online games, high-speed Internet access, and so on. It is assumed that the IP voice service priority of the user is higher than that of the video communication, and the two need to be aggregated and shaped, that is, when the user IP voice service has residual traffic, and the remaining traffic is allocated to the video communication service, then one can be set by two.
  • IP Internet Protocol
  • the scheduling unit composed of the scheduler associates the VOQ of the IP voice service mapping with the scheduling unit high priority scheduler, and manages the VOQ of the video communication mapping and the scheduling unit with a low priority of the scheduling unit.
  • a scheduling unit composed of four schedulers when it is necessary to aggregate and shape HDTV, standard definition television, standard definition on-demand, and online game services, it can also be implemented by a scheduling unit composed of four schedulers, and the VOQs of the above four service mappings are different from those in the scheduling unit. Priority scheduler association.
  • the number of aggregation shaping services of the scheduling unit can be configured according to the actual application scenario, thus achieving high-precision management for QoS and saving resources.
  • the embodiment of the invention further describes a computer storage medium, wherein the computer storage medium stores computer executable instructions, and the computer executable instructions are used to execute the method shown in FIG.
  • FIG. 4 is a schematic structural diagram of a VOQ authorization management apparatus according to an embodiment of the present invention. As shown in FIG. 4, the method includes: a first determining unit 41 and a second determining unit 42. Authorizing the delivery unit 43 and the scheduling unit 44; wherein
  • the first determining unit 41 is configured to determine, according to a scheduling algorithm of a scheduler of the scheduling unit 44 directly connected to the physical port, and a weight and a priority of the scheduling unit 44 of the next scheduling level of the scheduling unit 44. An index of the scheduling unit 44 of the next scheduling level;
  • the second determining unit 42 is configured to acquire scheduling list information of each scheduler of the scheduling unit 44 of the next scheduling layer according to an index of the scheduling unit 44 of the next scheduling level, Determining, according to the scheduling list information, an index of an authorized scheduler corresponding to the same service level in the scheduling unit 44 of the next scheduling level, until determining an authorized VOQ corresponding to the current service level corresponding to the current authorization. index;
  • the authorization issuance unit 43 is configured to deliver the current authorization from the physical port layer by layer to the VOQ corresponding to the VOQ index to be authorized according to the index of the scheduler to be authorized and the VOQ index.
  • the device further includes:
  • the updating unit 45 is configured to: according to the scheduling algorithm of the scheduler included in the scheduling unit 44 in the current scheduling hierarchy, and the weight of the scheduling unit 44 of the next scheduling level of the current scheduling level, before the new authorization is issued in each scheduling level, Priority, the index of the scheduling unit 44 of the next scheduling level of the current scheduling hierarchy is updated.
  • the first determining unit 41 is further configured to determine an index of the scheduling unit 44 of the next scheduling level of the current scheduling layer according to the scheduler shaping state information included by the scheduling unit 44 directly connected to the physical port;
  • the second determining unit 42 is further configured to acquire the corresponding shaping state information according to the index of the scheduling unit 44 of the next scheduling layer of the current scheduling layer, and determine the next row of the current scheduling layer according to the acquired shaping state information.
  • the index of the scheduler that needs to be authorized with the same service level as the current authorization, until the index of the VOQ to be authorized that corresponds to the same service level as the current authorization is determined.
  • the index of the scheduling unit 44 is an index with consecutive serial numbers, the index of the scheduling unit 44 includes authorization priority information of the scheduling unit 44 at a corresponding scheduling level, and the scheduler in the scheduling unit 44 is Authorization priority information in the scheduling unit 44;
  • the scheduler information and the shaping status information of the scheduler are indexed by the scheduler in the associated scheduling unit 44 as a storage index.
  • the apparatus further includes: a third determining unit 46, a fourth determining unit 47, and a fifth Determining unit 48; wherein
  • the third determining unit 46 is configured to: when the priority delivery identifier of the current scheduling layer is set to the set state, trigger the first determining unit 41; when determining that the priority delivery identifier of the current scheduling layer is not set, Triggering the fourth determining unit 47;
  • the fourth determining unit 47 is configured to acquire the scheduling list information of the scheduler of the scheduling unit 44 of the next scheduling layer according to the index of the scheduling unit 44 of the next scheduling level, according to the acquired scheduling list information, Determining an index of a scheduler that needs to be authorized in the scheduling unit 44 of the next scheduling level until determining an index of the VOQ to be authorized;
  • the fifth determining unit 48 is configured to deliver the current authorization from the physical port to the VOQ corresponding to the index of the VOQ layer by layer according to the index of the scheduler to be authorized and the VOQ index.
  • the device further includes:
  • the VOQ management unit 49 is configured to store the storage description information of the packet into the corresponding VOQ according to the quality of service QoS level of the packet corresponding service, and the destination port; after the authorization is sent to the corresponding VOQ, the VOQ is extracted from the authorized VOQ.
  • the first storage information acquires a corresponding packet according to the extracted storage information, and outputs the acquired packet to a destination port corresponding to the authorized VOQ.
  • each unit shown in FIG. 4 can be implemented by a central processing unit (CPU) in a VOQ authorization management device, a digital signal processor (DSP), or a field programmable gate array (FPGA, Field). Programmable Gate Array ) implementation.
  • CPU central processing unit
  • DSP digital signal processor
  • FPGA field programmable gate array
  • Programmable Gate Array Programmable Gate Array
  • FIG. 5 is a schematic diagram of VOQ authorization management according to an embodiment of the present invention.
  • the scheduling structure in this embodiment is constructed based on a network model of an application scenario and a service layer protocol, where scheduling level 1, scheduling level 2, scheduling Level 3 can correspond to the authorization management scheduling of port level, service level and user level respectively.
  • User 1, User 2 and User 3 have 8 different priority services and are different Dispatching the scheduler of the corresponding scheduling unit in the level 2, and then the scheduler of the corresponding scheduling unit in the scheduling level 2 is mapped to the scheduler of the corresponding scheduling unit in the scheduling level 1;
  • the services of the eight different priorities owned by the user 1 are mapped to the corresponding VOQs respectively, and the priorities of the VOQs are mapped to the scheduling unit 21 of the scheduling hierarchy 2 by the scheduler 0 to the scheduler 7 of the corresponding scheduling unit 31 in the scheduling hierarchy 3 Scheduler 0 to scheduler 7, and by scheduler 0 to scheduler 7 of the corresponding scheduling unit 21 in the scheduling hierarchy 2, to the scheduler 0 to the scheduler 7 of the scheduling unit 11 of the scheduling hierarchy 1;
  • the service is mapped to the eight schedulers of the same scheduling unit 31 in the scheduling layer 3, so that the eight services of the user 1 are uniformly aggregated and shaped;
  • the services of the eight different priorities owned by the user 2 are respectively mapped into the corresponding VOQs, and the priorities of the VOQs are mapped to the scheduling level 2 by the scheduler 0 to the scheduler 4 of the corresponding scheduling units 321 and 322 in the scheduling hierarchy 3
  • the scheduler 0 to the scheduler 7 of the scheduling unit 21 are mapped to the scheduler 0 to the scheduler 7 of the scheduling unit 11 of the scheduling hierarchy 1 by the scheduler 0 to the scheduler 7 of the corresponding scheduling unit 21 in the scheduling hierarchy 2;
  • the eight services of the user 2 are respectively mapped to the two scheduling units 32 and 33 of the scheduling level 2, and the scheduler 0 to the scheduler 4, so that the user 2 side performs convergence shaping of the service in units of four services;
  • the services of the eight different priorities owned by the user 3 are respectively mapped into the corresponding VOQs, and the priorities of the VOQs are mapped by the scheduler 0 to the scheduler 7 of the corresponding scheduling units 331, 332, 333, 334 in the scheduling hierarchy 3.
  • the 8 services of the user 3 are respectively mapped to the scheduler 0 to the scheduler 1 of the four scheduling units 331, 332, 333, and 334 of the scheduling level 3, and therefore, the user 3 side is divided into two services. Convergence shaping of services.
  • user 2 has two scheduling units in scheduling level 3, and the two scheduling units are respectively composed of four schedulers, which are connected to scheduler 0 to scheduler 3 of scheduling level 2.
  • the scheduling unit has a higher priority and has a lower priority attached to the scheduler 4 to the scheduler 7.
  • the scheduling level 3 has a plurality of scheduling units subordinate to the scheduler 0 of the scheduling level 2, and at this time, the authorized distribution is distributed according to the weight of each scheduling unit, and the weight value is It is user-configurable. For example, in the scheduling unit 0 and the scheduling unit 1, the scheduler is attached to the same scheduler of the previous level.
  • the weight of the scheduling unit 0 is 2, and the weight of the scheduling unit 1 is 3, then the average in the authorization process.
  • the authorization ratio distributed to scheduling unit 0 and scheduling unit 1 is 2 to 3. That is to say, the scheduling unit is prioritized according to the index, and the scheduling units are prioritized according to the hooking relationship, and are connected to the scheduler with the higher priority in the upper layer, then the priority is high; On the same priority scheduler, the priority is the same, and the authorization is distributed according to the configured weight. Therefore, the priority assigned by the same scheduler authorization is the same.
  • the scheduling priority of the scheduling unit of each scheduling level is determined by the dependent connection relationship, so the corresponding scheduling units in the scheduling unit connected to the same scheduler have the same priority.
  • the authorization priority of the VOQ can be traced back to the scheduler on the scheduling level 1 according to the connection configuration relationship layer.
  • the authorization priority of the scheduler in the scheduling unit is the authorization priority corresponding to the VOQ, and the scheduling level 1 is usually scheduled.
  • the number of different priority schedulers included in the unit is determined according to the number of service service levels, that is, the authorization is distributed according to the service level from the scheduling level 1.
  • the priority delivery identifier of each scheduling level is set to be set.
  • the process of VOQ authorization management includes the following steps:
  • Step 501 Deliver an authorization to the physical port according to the traffic demand of the physical port.
  • Step 502 The authorization is sent from the physical port to the scheduler in the scheduling unit of the scheduling hierarchy 1.
  • the scheduler 0 of the scheduling unit 11 that is currently issued to the scheduling level 1 is set.
  • Step 503 Determine an index of the scheduling unit of the scheduling level 2 according to the scheduling algorithm of the scheduler of the scheduling level 1, the shaping state information, and the weight and priority of the scheduling unit of the scheduling layer 2.
  • the number of scheduling units in the scheduling level 1 and the scheduling level 2 in this embodiment is not limited to As shown in FIG. 5, the number of scheduling units in each scheduling layer may be multiple.
  • the scheduler of each hierarchical scheduling unit uses the SP algorithm.
  • the WFQ algorithm may also be used.
  • the scheduling unit 21 in the scheduling level 2 is set, and the index of the scheduling unit in the scheduling level 2 is a binary number 0000 ⁇ 0111, wherein the highest bit 0 identifies the index of the scheduling unit 21 in the scheduling level 2, and the lower three bits are 000 ⁇ 111 (corresponding to The scheduler 0 to the scheduler 7 of the scheduling unit 21 are indexes of the seven schedulers of the scheduling unit 21 in the scheduling unit 21, and the lower three-bit index also identifies the authorization priorities of the seven schedulers, wherein the scheduler 0 The authorization priority is the highest, and the scheduler 7 authorizes the lowest priority.
  • Step 504 Obtain the scheduling list information and the shaping status information of each scheduler of the scheduling unit of the scheduling level 2 according to the index of the scheduling unit of the scheduling level 2, according to the acquired scheduling.
  • the linked list and the information shaping state information determine the index of the scheduler to be authorized that corresponds to the same service level in the scheduling unit of the scheduling level 2.
  • the current authorization is delivered by the scheduler 0 of the scheduling unit 11 of the scheduling layer 1, that is, the authorization can be delivered only to the scheduling of the same service level in the scheduling level 2 scheduling unit corresponding to the scheduler 0 of the scheduling unit 11 of the scheduling layer 1. Therefore, if the scheduling list of the scheduler 0 of the scheduling unit 21 of the scheduling hierarchy 2 is determined to be non-empty and the shaping state information is 1 according to the scheduling list information of the scheduler 0 of the scheduling unit 21 of the scheduling level 2 of the acquired scheduling level 2, Delivering the current authorization to the scheduler 0 of the scheduling unit 21 of the scheduling level 2;
  • the shaping status information is determined according to the traffic requirements and the number of distribution authorizations pre-configured by the scheduler.
  • the shaping status information is 1, the corresponding scheduler can be authorized to obtain authorization; and the scheduling list information includes the status (empty or full) of the scheduler's linked list.
  • the information can be distributed only when the linked list is not empty.
  • the schedule information can be preset. When there is no scheduling unit or VOQ in the next scheduling level of the scheduler, the schedule of the scheduler is empty.
  • Step 505 Determine an index of the scheduling unit of the scheduling level 3 according to the scheduling algorithm of the scheduler 0 of the scheduling unit 21 of the scheduling layer 2, the shaping state information, and the weight and priority of the scheduling unit of the scheduling layer 3.
  • the scheduling unit 31 in the scheduling level 3 and the index of the scheduling unit 31 is a binary number 0000 ⁇ 0111, wherein the highest one bit 0 identifies the index of the scheduling unit 31 in the scheduling level 3, and the lower three bits 000 - 111 identifies the scheduling unit 31.
  • Step 506 Obtain the scheduling list information and the shaping state information of each scheduler of the scheduling unit of the scheduling layer 3 according to the index of the scheduling unit of the scheduling level 3, and determine the scheduling of the scheduling level 3 according to the acquired scheduling list and information shaping state information.
  • the current authorization is delivered by the scheduler 0 of the scheduling unit 21 of the scheduling layer 2, that is, the authorization can only be delivered to the scheduler with the same service level as the scheduler 0 of the scheduling unit 21 of the scheduling level 2 in the scheduling level 3 scheduling unit. Therefore, if the scheduling list information of the scheduler 0 of the scheduling unit 31, 321 , 331 of the scheduling hierarchy 3 is determined to be non-empty and shaped according to the scheduling list information of the scheduler 0 of the scheduling units 31, 321, 331 of the acquired scheduling level 3 When the status information is 1, the weight of the current authorization is set to the scheduling unit of the scheduling level 3 by the scheduling unit 31, 321, and 331; if the scheduling list of the scheduler 0 of the scheduling unit 31 of the scheduling level 3 is determined to be empty or The shaping status information is 0, that is, the scheduling unit 31 does not need to authorize, and then the weight of the current authorization according to the scheduling unit 321, 331 is sent to the scheduling unit of the scheduling level 3; and so on, the scheduling of the same authorization priority is attached.
  • Step 507 The scheduler 0 of the scheduling unit 31 of the scheduling layer 3 acquires the corresponding VOQ index to be authorized, and delivers the authorization to the VOQ corresponding to the VOQ index to be authorized.
  • the priority transfer between the scheduling levels is implemented, and the scheduling unit of the scheduling level 1 has a service priority division, and the priority corresponds to the service service level; Then, according to the scheduling unit structure and the scheduler algorithm of each level, the authorization is sequentially sent to the scheduler in the specific scheduling unit of the scheduling level 2 and the scheduling level 3; Obtained authorization, VOQ corresponds to the service of a certain service level of the user.
  • the user-level scheduling of user 1, user 2, and user 3 is composed of different scheduling units: user 1 implements eight service aggregation shaping, user 2 implements four service aggregation shaping, and user 3 implements convergence aggregation of each two services; The priority transmission of each service and multiple service aggregation and shaping implement end-to-end QoS refined management.
  • embodiments of the invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of a hardware embodiment, a software embodiment, or a combination of software and hardware. Moreover, the invention can be embodied in the form of one or more computer program products embodied on a computer usable storage medium (including but not limited to disk storage and optical storage, etc.) in which computer usable program code is embodied.
  • a computer usable storage medium including but not limited to disk storage and optical storage, etc.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明实施例公开了一种虚拟输出队列授权管理方法、装置及计算机存储介质;所述方法包括:根据与物理端口直连的调度单元的调度器的调度算法、以及调度单元的下一调度层次的调度单元的权重、优先级,确定下一调度层次的调度单元的索引,获取下一调度层次的调度单元的各调度器的调度链表信息,根据所述调度链表信息,确定所述下一调度层次的调度单元中与当前授权对应同一业务等级的需授权的调度器的索引,直至确定出与当前授权对应同一业务等级的需授权的VOQ索引。

Description

虚拟输出队列授权管理方法、 装置及计算 储介质 技术领域
本发明涉及通信技术, 尤其涉及一种虚拟输出队列 (VOQ, Virtual Output Queue )授权管理方法、 装置及计算机存储介质。 背景技术
随着用户数量和用户业务种类的快速增长,分组传送数据网流量不断增加, 全业务运营能力要求持续提升。 当网络出现拥塞时, 不同的业务流按照各自的 服务质量(QoS, Quality of Service ) 区别对待, 来满足网络管理需求是必不可 少的。 这种差分服务(Diffserv ) 策略的基本思想是将用户的数据流按照 QoS 要求来划分等级: 网络空闲时, 任何用户的数据流都可以自由进出网络; 网络 繁忙时, 级别高的数据流在排队和占用资源时比级别低的数据流拥有更高的优 先权, 即实行优先调度, 从而保证较好的服务质量。
拉动式层次化调度技术因其调度方式灵活、 带宽扩展性强等优点, 逐步被 应配置为高速分组数据传送网。运营商可以按照不同服务需求, 如语音、 视频、 数据等业务, 分配调度层次、 调度算法、 优先级、 权重等来更好地保证服务质 量。
在拉动式层次化调度结构中, 将接收到的报文根据业务等级分配到相应的 VOQ , 再根据 QoS 预先设置的调度层次关系将授权从物理端口层层下发到 VOQ, VOQ中的报文依据该队列获得的授权个数进行轮询调度出队。 因此, 多 层次授权分发的算法和方案是实现 QoS的关键, 决定着各业务的延时、 抖动、 吞吐量和有效性等重要参数。从 QoS实现角度来看,主要釆用严格优先级(SP, Strict Priority ) 调度器实现各业务的服务优先等级区分, 釆用加权平均队列 ( WFQ, Weighted Fair Queuing ), 加权循环 ( WRR, Weighted Round Robin )、 平均队列 (FQ, Fair Queuing )调度器按一定权重分配带宽。 然而, 相关技术提供的拉动式层次化调度的授权分发技术是每一层次调度 器按照各自的算法相对独立的运行, 通常无法实现各调度层次间的业务等级传 递。 图 1为相关技术的拉动式层次化调度的示意图, 如图 1所示, (ln+1 )级调 度器挂接在 In级调度器上。 在授权分发过程中, In级调度器从其上级调度器获 得授权后, 按照其调度算法将授权下发给(ln+1 )级调度器。 假设(ln+1 )级 调度器是 SP调度器, SP的业务等级划分在其上一层次 In调度器上无法体现。
综上所述, 相关技术存在以下主要问题:
1 )每级调度器独立调度的授权分发技术实现简单, 由于不同优先级业务流 与其上层调度器为 "多对一" 映射, 不支持业务优先级传递, 上层调度器只能 将下层调度器的不同优先级业务流强制为同一个优先级;
2 )由于每个调度器独立, 无法实现按用户业务的汇聚整形, 因此在实现基 于用户的多业务精细化管理时, 只能实现有限的 QoS差分服务。 发明内容
本发明实施例提供一种虚拟输出队列授权管理方法、 装置及计算机存储介 质, 以解决相关技术不支持业务优先级传递、 无法实现按用户业务的汇聚整形 的问题。
本发明实施例提供了一种 VOQ授权管理方法, 所述方法包括:
根据与物理端口直连的调度单元的调度器的调度算法、 以及所述调度单元 的下一调度层次的调度单元的权重、 优先级, 确定所述下一调度层次的调度单 元的索引;
根据所述下一调度层次的调度单元的索引获取所述下一调度层次的调度单 元的各调度器的调度链表信息, 根据所述调度链表信息, 确定所述下一调度层 次的调度单元中与当前授权对应同一业务等级的需授权的调度器的索引, 直至 确定出与当前授权对应同一业务等级的需授权的 VOQ索引;
根据所述需授权的调度器的索引和 VOQ 索引, 将当前授权从所述物理端 口逐层下发至与所述需授权的 VOQ索引对应的 VOQ。 优选地, 所述方法还包括:
各调度层次中下发新的授权之前, 根据当前调度层次中调度单元包括的调 度器的调度算法、 以及当前调度层次的下一调度层次的调度单元的权重、 优先 级, 更新当前调度层次的下一调度层次的调度单元的索引。
优选地, 所述方法还包括:
根据与物理端口直连的调度单元包括的调度器整形状态信息, 确定当前调 度层次的下一调度层次的调度单元的索引;
相应地, 还根据所述当前调度层次的下一调度层次的调度单元的索引获取 相应的整形状态信息, 根据所获取的整形状态信息, 确定当前调度层次的下一 调度层次中, 与当前授权对应同一业务等级的需要授权的调度器的索引, 直至 确定出与当前授权对应同一业务等级的需授权的 VOQ的索引。
优选地, 所述调度单元的索引为序号连续的索引, 所述调度单元在相应调 度层次的授权优先级根据预配置的挂接关系决定, 所述调度器的索引包括所述 调度器在所述调度单元中的授权优先级信息;
所述调度器的调度链表信息、 整形状态信息以所述调度器在所属调度单元 索引为存储索引。
优选地, 所述确定对应同一业务等级的需要授权的调度器的索引之前, 所 述方法还包括: 确定当前调度层次的优先级传递标识为置位状态;
相应地,确定当前调度层次的优先级传递标识未置位时, 所述方法还包括: 根据所述下一调度层次的调度单元的索引获取所述下一调度层次的调度单 元的调度器的调度链表信息, 根据所获取的调度链表信息, 确定所述下一调度 层次的调度单元中需要授权的调度器的索引, 直至确定出需授权的 VOQ 的索 引;
根据所述需授权的调度器的索引和 VOQ 索引, 将当前授权从所述物理端 口逐层下发至与所述 VOQ的索引对应的 VOQ。
优选地, 所述确定下一调度层次的调度单元的索引之前, 所述方法还包括: 将分组的存储描述信息根据分纽^ "应业务的服务质量 QoS等级、 目的端口 存入相应的 VOQ;
相应地, 所述方法还包括:
所述授权下发至对应的 VOQ之后,从获得授权的 VOQ中提取首个存储信 息, 根据所提取的存储信息获取相应的分组, 并将所获取的分组输出至与所述 获得授权的 VOQ对应的目的端口。
本发明还提供了一种 VOQ授权管理装置, 所述装置包括: 第一确定单元、 第二确定单元和授权下发单元; 其中,
所述第一确定单元, 配置为根据与物理端口直连的调度单元的调度器的调 度算法、 以及所述调度单元的下一调度层次的调度单元的权重、 优先级, 确定 所述下一调度层次的调度单元的索引;
所述第二确定单元, 配置为根据所述下一调度层次的调度单元的索引获取 所述下一调度层次的调度单元的各调度器的调度链表信息, 根据所述调度链表 信息, 确定所述下一调度层次的调度单元中与当前授权对应同一业务等级的需 授权的调度器的索引, 直至确定出与当前授权对应同一业务等级的需授权的 VOQ索引;
所述授权下发单元, 配置为根据所述需授权的调度器的索引和 VOQ索引, 将当前授权从所述物理端口逐层下发至与所述需授权的 VOQ 索引对应的 VOQ。
优选地, 所述装置还包括:
更新单元, 配置为在各调度层次中下发新的授权之前, 根据当前调度层次 中调度单元包括的调度器的调度算法、 以及当前调度层次的下一调度层次的调 度单元的权重、优先级, 更新当前调度层次的下一调度层次的调度单元的索引。
优选地, 所述第一确定单元, 还配置为根据与物理端口直连的调度单元包 括的调度器整形状态信息, 确定当前调度层次的下一调度层次的调度单元的索 引;
所述第二确定单元, 还配置为根据所述当前调度层次的下一调度层次的调 度单元的索引获取相应的整形状态信 -, 根据所获取的整形状态信息, 确定当 前调度层次的下一调度层次中, 与当前授权对应同一业务等级的需要授权的调 度器的索引, 直至确定出与当前授权对应同一业务等级的需授权的 VOQ 的索 引。
优选地, 所述调度单元的索引为序号连续的索引, 所述调度单元的授权优 先级根据预配置的挂接关系确定, 所述调度器的索引包括所述调度器在所述调 度单元中的授权优先级信息;
所述调度器的调度链表信息、 整形状态信息以所述调度器在所属调度单元 索引为存储索引。
优选地, 所述装置还包括: 第三确定单元、 第四确定单元和第五确定单元; 其中,
第三确定单元,配置为确定当前调度层次的优先级传递标识为置位状态时, 触发所述第一确定单元;确定当前调度层次的优先级传递标识为未置位状态时, 触发所述第四确定单元;
第四确定单元, 配置为根据所述下一调度层次的调度单元的索引获取所述 下一调度层次的调度单元的调度器的调度链表信息, 根据所获取的调度链表信 息, 确定所述下一调度层次的调度单元中需要授权的调度器的索引, 直至确定 出需授权的 VOQ的索引;
第五确定单元, 配置为根据所述需授权的调度器的索引和 VOQ 索引, 将 当前授权从所述物理端口逐层下发至与所述 VOQ的索引对应的 VOQ。
优选地, 所述装置还包括:
VOQ 管理单元, 配置为将分组的存储描述信息根据分组对应业务的 QoS 等级、 目的端口存入相应的 VOQ; 在所述授权下发至对应的 VOQ之后, 从获 得授权的 VOQ中提取首个存储信息, 根据所提取的存储信息获取相应的分组, 并将所获取的分组输出至与所述获得授权的 VOQ对应的目的端口。
本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储 有计算机可执行指令, 所述计算机可执行指令用于执行以上所述的虚拟输出 队列 VOQ授权管理方法。 ¾ 本发明实施例的技术方案, 根据当前调度层次的下一调度层次的调度 单元的索引获取下一调度层次的调度单元的各调度器的调度链表信息, 确 定下一调度层次的调度单元中与当前授权对应同一业务等级的需授权的调 度器的索引,直至确定出与当前授权对应同一业务等级的需授权的 VOQ索 引; 根据所述需授权的调度器的索引和 VOQ索引, 将当前授权从所述物理 端口逐层下发至与所述需授权的 VOQ索引对应的 VOQ实现了各调度层次 间的业务等级传递, 实现了业务优先级的传递;
并且, 调度单元的调度器可以对应不同的业务, 根据不同的场景需求 设置数量不一的调度器组成调度单元, 根据相应的整形状态信息, 实现了 用户多个业务的汇聚整形。 附图说明
图 1为相关技术的拉动式层次化调度的示意图;
图 2为本发明实施例的 VOQ授权管理方法的实现流程示意图; 图 3 为本发明实施例的调度单元结构示意图;
图 4为本发明实施例的 VOQ授权管理装置的组成结构示意图; 图 5为本发明实施例的 VOQ授权管理示意图。 具体实施方式
本发明实施例中, 根据与物理端口直连的调度单元的调度器的调度算 法、 以及所述调度单元的下一调度层次的调度单元的权重、 优先级, 确定 所述下一调度层次的调度单元的索引; 根据所述下一调度层次的调度单元 的索引获取所述下一调度层次的调度单元的各调度器的调度链表信息, 根 据所述调度链表信息, 确定所述下一调度层次的调度单元中与当前授权对 应同一业务等级的需授权的调度器的索引, 直至确定出与当前授权对应同 一业务等级的需授权的 VOQ索引;根据所述需授权的调度器的索引和 VOQ 索引,将当前授权从所述物理端口逐层下发至与所述需授权的 VOQ索引对 应的 VOQ。
下面结合附图及具体实施例对本发明作进一步详细说明。
本发明实施例记载了一种 VOQ授权管理方法, 图 2为本发明实施例的 VOQ授权管理方法的实现流程示意图, 如图 2所示, 包括以下步骤:
步骤 201 : 根据第一调度层次的调度单元的调度器的调度算法、 以及第 二调度层次的调度单元的权重、 优先级, 确定第二层次的调度单元的索引。
在步骤 201 之前, 将分组的存储描述信息根据分组对应业务的服务质 量 QoS等级、 目的端口存入相应的 VOQ; 产生授权并下发给物理端口。
其中, 在产生授权并下发给物理端口的一个优选地实施方式中, 按照 固定周期产生授权, 并根据物理端口的速率分配要求, 通过 WFQ 算法或 WRR算法将授权均匀分发给各个物理端口。
其中, 产生的授权总量根据所有物理端口的流量需求确定, 下发至各 个物理端口授权总量, 根据各个物理端口的流量需确定。
其中, 授权按照不同业务的有效性、 延迟、 抖动、 吞吐量等参数, 分 发给相应用户不同业务对应的 VOQ。
本发明实施例中以三个调度层次为例对本发明进行说明, 对于三个以 上调度层次的场景, 本发明实施例的技术方案仍然适用。
其中, 与物理端口直连的调度层次为第一调度层次, 第一调度层次的 调度单元为第一级调度单元, 各个第一级调度单元中的调度器为第一级调 度器; 与第一调度层次直连的调度层次为第二调度层次, 并以此类推。
其中, 所述调度单元的授权优先级可以根据用户预先配置的挂接关系 信息。
例如, 第一调度层次的第一级调度器的索引标识在第一级调度单元中 各个第一级调度器的授权优先级; 第一级的调度单元的权重、 优先级可以 预先配置;
当第一级调度单元 0 包括八个第一级调度器时, 根据所述八个调度器 的权重、 优先级确定所述调度器的授权优先级, 并为八个第一级调度器分 配标识 0 ~ 7 (对应不同授权优先级), 并预设索引的升序为授权优先级的升 序, 则第一级调度器 0的授权优先级最高, 第一级调度器 7的授权优先级 最低; 当第一级调度单元的索引以四位二进制数标识时, 可以低三位对应 0 ~ 7 的二进制数代表第一级调度器在 (ln+1 )级调度单元内的优先级(共 七个授权优先级), 以高一位 0表示第一级调度单元在相应的第一调度层次 的索引; 按照上述策略, 第一级调度单元 0的索引为二进制数 0000 ~ 0111 (对应十进制数 0 ~ 7 ),其中索引高一位 0标识第一级调度单元 0在所述一 级调度层次的索引, 索引低三位 000 ~ 111标识第一级调度单元 0的调度器 的授权优先级, 如此, 调度器的索引隐含了调度单元的调度器在所属调度 单元的授权优先级信息。
其中, 第二调度层次的第二级调度单元的授权优先级由其直连(从属) 的第一调度层次的调度器的授权优先级决定, 即与授权优先级高的调度器 直连(挂接) 的调度单元具有高优先级, 假如, 当第二调度层次的 n个第 二级调度单元中有 m个第二级调度单元与第一级调度单元的调度器 0直连, 那么当授权分发给所述调度器 0时, 所述调度器 0根据 m个第二级调度单 元预先配置的权重, 下发授权给第二调度层次中的调度单元。
其中, 当需要实现流量的汇聚整形时, 还根据第二调度层次的第二级 调度单元的第二调度器的调度算法、 以及所述调度单元的下一调度层次的 调度单元的权重、 优先级和第二级调度器的整形状态信息, 确定第二调度 层次的调度单元的索引。
所述调度器的整形状态信息以所述调度器在所属调度单元索引为存储 索引, 整形状态信息是指根据每个调度器预先配置的流量要求和分发授权 数量确定, 整形状态信息为 1 时标识相应的调度器可以获得授权, 整形状 态信息为 0标识相应的调度器流量已满足要求, 不需要再获得授权, 每次 授权分发过程都会查询各调度器的整形状态。
步骤 202:根据第二级调度单元的索引获取第二级调度器的调度链表信 息, 根据所述调度链表信息, 确定所述第二调度层次的调度单元中与当前 授权对应同一业务等级的需授权的调度器的索引。
其中, 所述调度器的调度链表信息、 以所述调度器在所属调度单元索 引为存储索引, 如此, 调度单元索引作为链表信息存储、 提取、 更新的基 本单位, 避免了授权分发的占用额外时隙和链表存储资源。
其中, 调度链表信息包括调度器的链表的状态 (空或满) 的信息, 只 有链表非空时, 调度器能被分发授权, 该调度链表信息可以预设, 当调度 器的下一调度层次中没有调度单元或 VOQ时, 则该调度器的链表为空。
其中, 当需要实现汇聚整形时, 还根据第二调度层次的调度单元的索 引获取相应的整形状态信息, 根据所获取的整形状态信息, 确定第二调度 层次中, 与当前授权对应同一业务等级的需要授权的调度器的索引。
步骤 203:将授权下发给第二调度层次中与当前授权对应同一业务等级 的需要授权的调度器的索引对应的调度器。
步骤 204: 根据第二调度层次的调度单元的权重、 优先级, 确定第三调 度层次的调度单元的索引。
步骤 204确定调度单元索引的基本思想与步骤 201确定调度单元索引 的基本思想相同, 这里不再赘述。
步骤 205:根据第三调度层次的调度单元的索引获取第三调度层次的调 度器的调度链表信息, 根据所述调度链表信息, 确定与当前授权对应同一 业务等级的需授权的 VOQ的索引; 其中, 在每一次授权下发之后, 还根据第一调度层次和第二调度层次 的调度单元的调度器的调度算法、 以及第二调度层次和第三调度层次的调 度单元的权重、 优先级, 重新确定第二调度层次和第三调度层次的调度单 元的索引;
相应地, 第一调度层次和第二调度层次的调度单元还根据相应的调度 算法进行调度器的调度链表的更新, 以获得下一调度层次的调度单元中与 下一次授权对应同一业务等级的需授权的调度器的索引, 直至确定出与下 一次授权对应同一业务等级的需授权的 VOQ索引。
其中, 各调度层次中相同业务的优先级相同, 由于调度单元的授权优 先级可以根据预先配置的挂接关系确定, 因此各调度层次中对应服务等级 相同的业务挂接到 (从属于) 同一服务等级的上一调度层次的调度器上。 例如, 假设在第一调度层次中由各一级调度单元的第一级调度器 0对标清 电视业务对应的 VOQ进行授权下发, 相应地, 挂接到第一级调度器 0的第 二调度层次和第三调度层次中的调度器也负责标清电视业务对应的 VOQ 进行授权下发, 如此, 第二调度层次和第三调度层次调度单元的各调度器 与上一层次的调度单元的各调度器就相同业务建立一一映射关系。
在步骤 201 之前, 还需要确定当前调度层次的优先级传递标识为置位 状态;
相应地, 确定当前调度层次的优先级传递标识未置位时, 根据所述第 二调度层次的调度单元的索引获取第二调度层次的调度单元的调度器的调 度链表信息, 根据所获取的调度链表信息, 确定第二调度层次的调度单元 中需要授权的调度器的索引;
根据第二调度层次的调度单元中需要授权的调度器的索引, 获取第二 调度层次的调度单元的各调度器的调度链表信息, 根据所述调度链表信息, 确定所述第二调度层次的调度单元中需授权的调度器的索引, 其中, 所述 需要授权的调度器可以与当前授权对应不同的业务;
将当前授权下发至第二调度层次中与当前授权对应同一业务等级的需 授权的调度器的索引对应的调度器;
根据第二层次调度单元的调度器的调度算法、 以及第三调度层次的调 度单元的权重、 优先级, 确定第三调度层次的调度单元的索引;
根据第三层次的调度单元的索引获取第三调度层次的调度单元的调度 器的调度链表信息, 根据所获取的调度链表信息, 确定第三调度层次的调 度单元中需要授权的 VOQ的索引。
步骤 206: 根据所述需授权的 VOQ索引, 将当前授权从第二调度层次 中获得授权的调度器下发至与所述需授权的 VOQ索引对应的 VOQ。
各调度层次的调度单元的授权优先级是由所直连(从属)上一调度层 次的调度器的授权优先级决定的, 因此直连同一调度器的调度单元的授权 优先级相同, 如此, VOQ的授权优先级可根据其直连的调度器, 追溯到第 一调度层次(最高调度层次)对应的调度器, 该调度器在所属调度单元中 的授权优先级即该 VOQ对应的授权优先级,通常第一调度层次中调度单元 包含的不同优先级调度器个数是根据业务服务等级个数决定的, 也就是说, 授权从第一调度层次开始就按业务等级划分授权优先级, 不同的业务等级 对应不同的授权优先级。
VOQ与用户的不同等级的业务关联, 从获得授权的 VOQ中提取首个 存储信息, 根据所提取的存储信息获取相应的分组, 并将所获取的分组输 出至与所述获得授权的 VOQ对应的目的端口。
VOQ获得授权的数量, 决定该队列的分组调度输出的字节数, 即吞吐 量; VOQ获得授权的间隔,决定该 VOQ的分组调度输出延迟和抖动; VOQ 的优先级, 决定该 VOQ对应的用户的业务在网络拥塞时的服务等级。
本发明实施例的技术方案, 根据当前调度层次的下一调度层次的调度 单元的索引获取下一调度层次的调度单元的各调度器的调度链表信息, 确 定下一调度层次的调度单元中与当前授权对应同一业务等级的需授权的调 度器的索引,直至确定出与当前授权对应同一业务等级的需授权的 VOQ索 引; 根据所述需授权的调度器的索引和 VOQ索引, 将当前授权从所述物理 端口逐层下发至与所述需授权的 VOQ索引对应的 VOQ实现了各调度层次 间的业务等级传递, 实现了业务优先级的传递;
并且, 调度单元的调度器可以对应不同的业务, 根据不同的场景需求 设置数量不一的调度器组成调度单元, 根据相应的整形状态信息, 实现了 用户多个业务的汇聚整形;
所述调度单元的索引为连续的索引, 所述调度单元在相应调度层次的 授权优先级根据预配置的挂接关系确定, 如此可由根据不同的需要进行配 所述调度器的调度链表信息、 整形状态信息以所述调度器在所属调度单元 索引为存储索引, 在不占用额外硬件资源的情况下, 实现了基于用户的多 业务精细化管理。
下面对本发明实施例中的调度单元作进一步详细说明, 图 3 为本发明 实施例的调度单元结构示意图, 如图 3 所示, 调度单元由一组索引连续的 调度器组成, 并且调度器索引与该调度器在调度单元中的优先级关联, 每 个调度器的算法可根据实际应用需求独立配置, 包括: SP、 WFQ、 WRR 和 FQ等;
图 3 示出的调度单元由八个调度器组成, 调度器索引的低三比特(对 应的十进制数分别为 0、 1、 2、 3、 4、 5、 6、 7 )标识调度器在调度单元中 的优先级, 其中, 0标识最高优先级, 7标识最低优先级, 调度单元中索引 连续的调度器, 既作为一个完整的调度单元被调度器调用 (优先级传递标 识未置位), 又可作为分别与上一层次调度单元中的相同业务的调度器建立 映射关系 (优先级传递标识置位);
当调度器分别与上一层次调度单元中的调度器就相同业务建立映射关 系时, 可实现调度单元间的优先级传递, 每个调度单元包含调度器的个数 由需要汇聚整形的业务个数确定。例如,用户的业务可分为: 网际协议(IP, Internet Protocol )语音、 视频通信、 高清电视、 标清电视、 标清点播、 网络 游戏、 高速上网等。 假设用户的 IP语音业务优先级高于视频通信, 而且这 两者需要汇聚整形, 即在用户 IP语音业务有剩余流量时, 将剩余流量分配 给视频通信业务使用, 那么, 可以设置一个由两个调度器组成的调度单元, 将 IP语音业务映射的 VOQ与调度单元高优先级调度器关联, 而将视频通 信映射的 VOQ与调度单元低优先级的调度器管理。 同理, 当需要对高清电 视、 标清电视、 标清点播、 和网络游戏业务汇聚整形时, 亦可通过四个调 度器组成的调度单元实现,将上述四个业务映射的 VOQ分别与调度单元中 不同优先级的调度器关联。 调度单元的汇聚整形业务的数量可根据实际应 用场景配置, 如此, 实现了针对 QoS的高精度管理, 并且节约了资源。
本发明实施例还记载一种计算机存储介质, 所述计算机存储介质中 存储有计算机可执行指令, 所述计算机可执行指令用于执行图 2所示的
VOQ授权管理方法。
本发明实施例还记载了一种 VOQ授权管理装置, 图 4为本发明实施例 的 VOQ授权管理装置的组成结构示意图, 如图 4所示, 包括: 第一确定单 元 41、 第二确定单元 42、 授权下发单元 43和调度单元 44; 其中,
所述第一确定单元 41,配置为根据与物理端口直连的调度单元 44的调 度器的调度算法、 以及所述调度单元 44的下一调度层次的调度单元 44的 权重、 优先级, 确定所述下一调度层次的调度单元 44的索引;
所述第二确定单元 42,配置为根据所述下一调度层次的调度单元 44的 索引获取所述下一调度层次的调度单元 44的各调度器的调度链表信息, 根 据所述调度链表信息, 确定所述下一调度层次的调度单元 44中与当前授权 对应同一业务等级的需授权的调度器的索引, 直至确定出与当前授权对应 同一业务等级的需授权的 VOQ索引;
所述授权下发单元 43,配置为根据所述需授权的调度器的索引和 VOQ 索引,将当前授权从所述物理端口逐层下发至与所述需授权的 VOQ索引对 应的 VOQ。
优选地, 所述装置还包括:
更新单元 45, 配置为在各调度层次中下发新的授权之前, 根据当前调 度层次中调度单元 44包括的调度器的调度算法、 以及当前调度层次的下一 调度层次的调度单元 44的权重、 优先级, 更新当前调度层次的下一调度层 次的调度单元 44的索引。
优选地, 所述第一确定单元 41, 还配置为根据与物理端口直连的调度 单元 44包括的调度器整形状态信息, 确定当前调度层次的下一调度层次的 调度单元 44的索引;
所述第二确定单元 42, 还配置为根据所述当前调度层次的下一调度层 次的调度单元 44的索引获取相应的整形状态信息, 根据所获取的整形状态 信息, 确定当前调度层次的下一调度层次中, 与当前授权对应同一业务等 级的需要授权的调度器的索引, 直至确定出与当前授权对应同一业务等级 的需授权的 VOQ的索引。
优选地, 所述调度单元 44的索引为序号连续的索引, 所述调度单元 44 的索引包括所述调度单元 44在相应调度层次的授权优先级信息, 以及所述 调度单元 44中的调度器在所述调度单元 44中的授权优先级信息;
所述调度器的调度链表信息、 整形状态信息以所述调度器在所属调度 单元 44索引为存储索引。
优选地, 所述装置还包括: 第三确定单元 46、 第四确定单元 47和第五 确定单元 48; 其中,
所述第三确定单元 46, 配置为确定当前调度层次的优先级传递标识为 置位状态时, 触发所述第一确定单元 41 ; 确定当前调度层次的优先级传递 标识为未置位状态时, 触发所述第四确定单元 47;
所述第四确定单元 47,配置为根据所述下一调度层次的调度单元 44的 索引获取所述下一调度层次的调度单元 44的调度器的调度链表信息, 根据 所获取的调度链表信息, 确定所述下一调度层次的调度单元 44中需要授权 的调度器的索引, 直至确定出需授权的 VOQ的索引;
所述第五确定单元 48,配置为根据所述需授权的调度器的索引和 VOQ 索引, 将当前授权从所述物理端口逐层下发至与所述 VOQ 的索引对应的 VOQ。
优选地, 所述装置还包括:
VOQ管理单元 49,配置为将分组的存储描述信息根据分组对应业务的 服务质量 QoS等级、 目的端口存入相应的 VOQ; 在所述授权下发至对应的 VOQ之后, 从获得授权的 VOQ中提取首个存储信息, 根据所提取的存储 信息获取相应的分组,并将所获取的分组输出至与所述获得授权的 VOQ对 应的目的端口。
实际应用中, 图 4所示的各单元可由 VOQ授权管理装置中的中央处理 器(CPU, Central Processing Unit )、 数字信号处理器(DSP, Digital Signal Processor )或现场可编程门阵列 ( FPGA, Field Programmable Gate Array ) 实现。
图 5为本发明实施例的 VOQ授权管理示意图, 如图 5所示, 本实施例 中的调度结构是基于应用场景和服务层协议的网络模型构建, 图中调度层 次 1、 调度层次 2、 调度层次 3分别可对应端口级、 业务级和用户级的授权 管理调度。 用户 1、 用户 2和用户 3拥有 8个不同优先级的业务, 并且不同 调度层次 2中相应调度单元的调度器, 再由调度层次 2中相应调度单元的 调度器映射到调度层次 1中相应调度单元的调度器; 其中,
用户 1拥有的八个不同优先级的业务分别映射到相应的 VOQ中, VOQ 的优先级通过调度层次 3中相应调度单元 31的调度器 0 ~调度器 7映射到 调度层次 2的调度单元 21的调度器 0 ~调度器 7, 并通过调度层次 2中相 应调度单元 21的调度器 0 ~调度器 7映射到调度层次 1的调度单元 11的调 度器 0〜调度器 7; 由于用户 1的八个业务映射到调度层次 3同一个调度单 元 31的 8个调度器中, 因此用户 1的八个业务统一进行汇聚整形;
类似地, 用户 2拥有的八个不同优先级的业务分别映射到相应的 VOQ 中, VOQ的优先级通过调度层次 3中相应调度单元 321、 322的调度器 0 ~ 调度器 4映射到调度层次 2的调度单元 21的调度器 0 ~调度器 7, 并通过 调度层次 2中相应调度单元 21的调度器 0 ~调度器 7映射到调度层次 1的 调度单元 11的调度器 0〜调度器 7; 其中, 用户 2的 8个业务分别映射到 调度层次 2的两个调度单元 32、 33调度器 0〜调度器 4, 因此, 用户 2侧, 以 4个业务为单位进行业务的汇聚整形;
类似地, 用户 3拥有的 8个不同优先级的业务分别映射到相应的 VOQ 中, VOQ 的优先级通过调度层次 3 中相应调度单元 331、 332、 333、 334 的调度器 0 ~调度器 7映射到调度层次 2的调度单元 21的调度器 0 ~调度 器 7, 并通过调度层次 2中相应调度单元 21的调度器 0 ~调度器 7映射到 调度层次 1的调度单元 11的调度器 0〜调度器 7; 其中, 用户 3的 8个业 务分别映射到调度层次 3的四个调度单元 331、 332、 333、 334的调度器 0 ~ 调度器 1, 因此, 用户 3侧, 以两个业务为单位进行业务的汇聚整形。
如图 5所示, 用户 2在调度层次 3有两个调度单元, 这两个调度单元 分别由 4个调度器组成,其中挂接在调度层次 2的调度器 0 ~调度器 3上的 调度单元的优先级较高, 挂接到调度器 4〜调度器 7上的优先级较低。授权 从调度层次 2的调度器 0分发到调度层次 3时, 调度层次 3具有多个调度 单元从属于调度层次 2的调度器 0,此时授权分发是按各调度单元的权重分 发的, 权重值是用户配置的。 比如, 调度单元 0和调度单元 1 中都有调度 器挂接在上一层次的相同调度器上, 调度单元 0的权重配置为 2, 而调度单 元 1的权重配置为 3, 那么授权过程中平均分发给调度单元 0和调度单元 1 的授权比为 2比 3。也就是说调度单元内是按索引分优先级的, 而调度单元 之间是按挂接关系分优先级, 挂接到上一层优先级高的调度器上, 那么其 优先级高; 挂接到相同优先级的调度器上, 那么优先级相同, 授权分发按 照配置的权重。 因此同一调度器授权传递下来的优先级是相同的。
各调度层次的调度单元具有的授权优先级是由所从属的挂接关系决定 的,因此挂接到同一调度器上的调度单元中对应的调度器优先级相同。 VOQ 所在的授权优先级可根据挂接配置关系层层追溯到调度层次 1上的调度器, 该调度器在所在调度单元中的授权优先级即该 VOQ对应的授权优先级,通 常调度层次 1 调度单元包含的不同优先级调度器个数是根据业务服务等级 个数决定的, 也就是授权从调度层次 1开始就按业务等级分发。
本实施例中, 设各调度层次的优先级传递标识为置位状态, 相应地, VOQ授权管理的过程包括以下步骤:
步骤 501: 根据物理端口的流量需求下发授权至物理端口。
步骤 502:将授权从物理端口下发给调度层次 1的调度单元中的调度器。 设当前授权下发到调度层次 1中的调度单元 11的调度器 0。
步骤 503: 根据调度层次 1的调度器的调度算法、 整形状态信息、 以及 调度层次 2的调度单元的权重、 优先级, 确定调度层次 2的调度单元的索 引。
本实施例中调度层次 1和调度层次 2中的调度单元的数量并非仅限于 图 5 所示, 每一调度层次的调度单元的数量都可以为多个; 本实施例中, 各层次调度单元的调度器均釆用 SP算法, 当然, 也可以釆用 WFQ算法。
设调度层次 2中的调度单元 21, 且调度单元在调度层次 2的索引为二 进制数 0000 ~ 0111,其中最高位 0标识调度单元 21在调度层次 2中的索引, 低三位 000 ~ 111 (对应调度单元 21的调度器 0〜调度器 7 )为调度单元 21 的 7个调度器在调度单元 21 内的索引,该低三位索引还标识 7个调度器的 授权优先级, 其中, 调度器 0授权优先级最高, 调度器 7授权优先级最低; 步骤 504:根据调度层次 2的调度单元的索引获取调度层次 2的调度单 元的各调度器的调度链表信息、 整形状态信息, 根据所获取的调度链表、 信息整形状态信息, 确定调度层次 2 的调度单元中与当前授权对应同一业 务等级的需授权的调度器的索引。
由于当前授权由调度层次 1的调度单元 11的调度器 0下发, 即该授权 只能下发至调度层次 2调度单元中与调度层次 1的调度单元 11的调度器 0 对应同一业务等级的调度器, 因此, 若根据获取的调度层次 2 的调度单元 21的调度器 0的调度链表信息, 确定调度层次 2的调度单元 21的调度器 0 的调度链表非空且整形状态信息为 1 时, 则将当前授权下发至调度层次 2 的调度单元 21的调度器 0;
其中, 整形状态信息根据调度器预先配置的流量要求和分发授权数量 确定, 整形状态信息为 1 时标识相应的调度器可以获得授权; 调度链表信 息包括调度器的链表的状态 (空或满) 的信息, 只有链表非空时, 调度器 能被分发授权, 该调度链表信息可以预设, 当调度器的下一调度层次中没 有调度单元或 VOQ时, 则该调度器的链表为空。
步骤 505: 根据调度层次 2的调度单元 21的调度器 0的调度算法、 整 形状态信息、 以及调度层次 3的调度单元的权重、 优先级, 确定调度层次 3 的调度单元的索引。 假设调度层次 3 中调度单元 31, 且调度单元 31 的索引为二进制数 0000 ~ 0111, 其中, 最高一位 0标识调度单元 31在调度层次 3中的索引, 低三位 000 -111标识调度单元 31的调度器 0 ~调度器 7在调度单元 31内 的授权优先级, 其中, 调度器 0具有最高授权优先级。
步骤 506:根据调度层次 3的调度单元的索引获取调度层次 3的调度单 元的各调度器的调度链表信息、 整形状态信息, 根据所获取的调度链表、 信息整形状态信息, 确定调度层次 3 的调度单元中与当前授权对应同一业 务等级的需授权的调度器的索引。
由于当前授权由调度层次 2的调度单元 21的调度器 0下发, 即该授权 只能下发至调度层次 3调度单元中与调度层次 2的调度单元 21的调度器 0 业务等级相同的调度器, 因此, 若根据获取的调度层次 3的调度单元 31、 321、 331的调度器 0的调度链表信息,确定调度层次 3的调度单元 31、 321、 331的调度器 0的调度链表非空且整形状态信息为 1时,则将当前授权按调 度单元 31、 321、 331设置的权重下发至调度层次 3的调度单元; 若确定调 度层次 3的调度单元 31的调度器 0的调度链表为空或整形状态信息为 0, 即调度单元 31不需要授权, 则将当前授权按调度单元 321、 331设置的权 重下发至调度层次 3 的调度单元; 依此类推, 挂接到同一授权优先级的调 度单元均按所配置的权重分配授权。
后续步骤的处理基于授权分发至调度层次 3的调度单元 31的调度器 0。 步骤 507: 调度层次 3的调度单元 31的调度器 0获取对应的需授权的 VOQ索引, 并将授权下发至需授权的 VOQ索引对应的 VOQ。
综上所述, 在各层次的优先级传递标识置位时, 实现了调度层次间的 优先级传递, 调度层次 1 的调度单元具有业务优先级的划分, 其优先级与 业务服务等级相对应; 再根据各级调度单元结构和调度器算法, 将授权依 次下发给调度层次 2、 调度层次 3的具体调度单元中的调度器; 最后 VOQ 获得授权, VOQ对应于用户的某一服务等级的业务。 用户 1、 用户 2和用 户 3的用户级调度由不同的调度单元组成: 用户 1实现八个业务汇聚整形, 用户 2实现每四个业务汇聚整形, 用户 3实现每两个业务汇聚整形; 实现 用户各业务的优先级传递和多个的业务汇聚整形, 实现了端到端的 QoS精 细化管理。
本领域内的技术人员应明白, 本发明实施例可提供为方法、 系统、 或 计算机程序产品。 因此, 本发明可釆用硬件实施例、 软件实施例、 或结合 软件和硬件方面的实施例的形式。 而且, 本发明可釆用在一个或多个其中 包含有计算机可用程序代码的计算机可用存储介质 (包括但不限于磁盘存 储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、 设备(系统)、 和计算机程序 产品的流程图和 /或方框图来描述的。 应理解可由计算机程序指令实现流程 图和 /或方框图中的每一流程和 /或方框、以及流程图和 /或方框图中的流程和 /或方框的结合。 可提供这些计算机程序指令到通用计算机、 专用计算机、 嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器, 使得 通过计算机或其他可编程数据处理设备的处理器执行的指令产生配置为实 现在流程图一个流程或多个流程和 /或方框图一个方框或多个方框中指定的 功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理 设备以特定方式工作的计算机可读存储器中, 使得存储在该计算机可读存 储器中的指令产生包括指令装置的制造品, 该指令装置实现在流程图一个 流程或多个流程和 /或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备 上, 使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机 实现的处理, 从而在计算机或其他可编程设备上执行的指令提供配置为实 现在流程图一个流程或多个流程和 /或方框图一个方框或多个方框中指定的 功能的步骤。
以上所述仅是本发明的优选实施方式, 应当指出, 对于本技术领域的 普通技术人员来说, 在不脱离本发明原理的前提下, 还可以做出若干改进 和润饰, 这些改进和润饰也应视为本发明的保护范围。

Claims

权利要求书
1、 一种虚拟输出队列 VOQ授权管理方法, 所述方法包括:
根据与物理端口直连的调度单元的调度器的调度算法、 以及所述调度 单元的下一调度层次的调度单元的权重、 优先级, 确定所述下一调度层次 的调度单元的索引;
根据所述下一调度层次的调度单元的索引获取所述下一调度层次的调 度单元的各调度器的调度链表信息, 根据所述调度链表信息, 确定所述下 一调度层次的调度单元中与当前授权对应同一业务等级的需授权的调度器 的索引, 直至确定出与当前授权对应同一业务等级的需授权的 VOQ索引; 根据所述需授权的调度器的索引和 VOQ索引,将当前授权从所述物理 端口逐层下发至与所述需授权的 VOQ索引对应的 VOQ。
2、 根据权利要求 1所述的方法, 其中, 所述方法还包括:
在各调度层次中下发新的授权之前, 根据当前调度层次中调度单元包 括的调度器的调度算法、 以及当前调度层次的下一调度层次的调度单元的 权重、 优先级, 更新当前调度层次的下一调度层次的调度单元的索引。
3、 根据权利要求 1所述的方法, 其中, 所述方法还包括:
根据与物理端口直连的调度单元包括的调度器整形状态信息, 确定当 前调度层次的下一调度层次的调度单元的索引;
根据所述当前调度层次的下一调度层次的调度单元的索引获取相应的 整形状态信息, 根据所获取的整形状态信息, 确定当前调度层次的下一调 度层次中, 与当前授权对应同一业务等级的需要授权的调度器的索引, 直 至确定出与当前授权对应同一业务等级的需授权的 VOQ的索引。
4、 根据权利要求 3所述的方法, 其中,
所述调度单元的索引为序号连续的索引, 所述调度单元在相应调度层 次的授权优先级根据预配置的挂接关系决定, 所述调度器的索引包括所述 调度器在所述调度单元中的授权优先级信息;
所述调度器的调度链表信息、 整形状态信息以所述调度器在所属调度 单元的索引为存储索引。
5、 根据权利要求 1所述的方法, 其中, 所述确定对应同一业务等级的 需授权的调度器的索引之前, 所述方法还包括: 确定当前调度层次的优先 级传递标识为置位状态;
相应地, 确定当前调度层次的优先级传递标识未置位时, 所述方法还 包括:
根据所述下一调度层次的调度单元的索引获取所述下一调度层次的调 度单元的调度器的调度链表信息, 根据所获取的调度链表信息, 确定所述 下一调度层次的调度单元中需要授权的调度器的索引, 直至确定出需授权 的 VOQ的索引;
根据所述需授权的调度器的索引和 VOQ索引,将当前授权从所述物理 端口逐层下发至与所述 VOQ的索引对应的 VOQ。
6、 根据权利要求 1至 5任一项所述的方法, 其中, 所述确定下一调度 层次的调度单元的索引之前, 所述方法还包括:
将分组的存储描述信息根据分组对应业务的服务质量 QoS等级、 目的 端口存入相应的 VOQ;
当所述授权下发至对应的 VOQ之后, 从获得授权的 VOQ中提取首个 存储信息, 根据所提取的存储信息获取相应的分组, 并将所获取的分组输 出至与所述获得授权的 VOQ对应的目的端口。
7、 一种 VOQ授权管理装置, 所述装置包括: 第一确定单元、 第二确 定单元、 授权下发单元和调度单元; 其中,
所述第一确定单元, 配置为根据与物理端口直连的调度单元的调度器 的调度算法、 以及所述调度单元的下一调度层次的调度单元的权重、 优先 级, 确定所述下一调度层次的调度单元的索引;
所述第二确定单元, 配置为根据所述下一调度层次的调度单元的索引 获取所述下一调度层次的调度单元的各调度器的调度链表信息, 根据所述 调度链表信息, 确定所述下一调度层次的调度单元中与当前授权对应同一 业务等级的需授权的调度器的索引, 直至确定出与当前授权对应同一业务 等级的需授权的 VOQ索引;
所述授权下发单元,配置为根据所述需授权的调度器的索引和 VOQ索 引,将当前授权从所述物理端口逐层下发至与所述需授权的 VOQ索引对应 的 VOQ。
8、 根据权利要求 7所述的装置, 其中, 所述装置还包括:
更新单元, 配置为在各调度层次中下发新的授权之前, 根据当前调度 层次中调度单元包括的调度器的调度算法、 以及当前调度层次的下一调度 层次的调度单元的权重、 优先级, 更新当前调度层次的下一调度层次的调 度单元的索引。
9、 根据权利要求 7所述的装置, 其中,
所述第一确定单元, 还配置为根据与物理端口直连的调度单元包括的 调度器整形状态信息, 确定当前调度层次的下一调度层次的调度单元的索 引;
所述第二确定单元, 还配置为根据所述当前调度层次的下一调度层次 的调度单元的索引获取相应的整形状态信息, 根据所获取的整形状态信息, 确定当前调度层次的下一调度层次中, 与当前授权对应同一业务等级的需 要授权的调度器的索引, 直至确定出与当前授权对应同一业务等级的需授 权的 VOQ的索引。
10、 根据权利要求 9所述的装置, 其中,
所述调度单元的索引为序号连续的索引, 所述调度单元的授权优先级 根据预配置的挂接关系确定, 所述调度器的索引包括所述调度器在所述调 度单元中的授权优先级信息;
所述调度器的调度链表信息、 整形状态信息以所述调度器在所属调度 单元的索引为存储索引。
11、 根据权利要求 7 所述的装置, 其中, 所述装置还包括: 第三确定 单元、 第四确定单元和第五确定单元; 其中,
所述第三确定单元, 配置为确定当前调度层次的优先级传递标识为置 位状态时, 触发所述第一确定单元; 确定当前调度层次的优先级传递标识 为未置位状态时, 触发所述第四确定单元;
所述第四确定单元, 配置为根据所述下一调度层次的调度单元的索引 获取所述下一调度层次的调度单元的调度器的调度链表信息, 根据所获取 的调度链表信息, 确定所述下一调度层次的调度单元中需要授权的调度器 的索引, 直至确定出需授权的 VOQ的索引;
所述第五确定单元,配置为根据所述需授权的调度器的索引和 VOQ索 引, 将当前授权从所述物理端口逐层下发至与所述 VOQ 的索引对应的 VOQ。
12、根据权利要求 7至 11任一项所述的装置, 其中, 所述装置还包括: VOQ 管理单元, 配置为将分组的存储描述信息根据分组对应业务的
QoS等级、 目的端口存入相应的 VOQ; 在所述授权下发至对应的 VOQ之 后, 从获得授权的 VOQ中提取首个存储信息, 根据所提取的存储信息获取 相应的分组,并将所获取的分组输出至与所述获得授权的 VOQ对应的目的 端口。
13、 一种计算机存储介质, 所述计算机存储介质中存储有计算机可 执行指令, 所述计算机可执行指令用于为执行权利要求 1至 6任一项所 述的虚拟输出队列 VOQ授权管理方法。
PCT/CN2014/079972 2013-07-31 2014-06-16 虚拟输出队列授权管理方法、装置及计算机存储介质 WO2014169883A2 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US14/909,223 US9940471B2 (en) 2013-07-31 2014-06-16 Virtual output queue authorization management method and device, and computer storage medium
RU2016106827A RU2643666C2 (ru) 2013-07-31 2014-06-16 Способ и устройство для управления авторизацией виртуальной очереди вывода, а также компьютерный носитель информации
EP14785615.7A EP3029898B1 (en) 2013-07-31 2014-06-16 Virtual output queue authorization management method and device, and computer storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310330273.8 2013-07-31
CN201310330273.8A CN104348751B (zh) 2013-07-31 2013-07-31 虚拟输出队列授权管理方法及装置

Publications (2)

Publication Number Publication Date
WO2014169883A2 true WO2014169883A2 (zh) 2014-10-23
WO2014169883A3 WO2014169883A3 (zh) 2014-12-11

Family

ID=51731907

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/079972 WO2014169883A2 (zh) 2013-07-31 2014-06-16 虚拟输出队列授权管理方法、装置及计算机存储介质

Country Status (5)

Country Link
US (1) US9940471B2 (zh)
EP (1) EP3029898B1 (zh)
CN (1) CN104348751B (zh)
RU (1) RU2643666C2 (zh)
WO (1) WO2014169883A2 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107483361B (zh) * 2016-06-08 2022-04-15 中兴通讯股份有限公司 一种调度模型构建方法和装置
KR102269068B1 (ko) * 2017-03-10 2021-06-24 한국전자통신연구원 스위칭을 위한 스케줄링 방법 및 스케줄러
CN109150722B (zh) * 2017-06-16 2021-03-30 华为技术有限公司 一种业务转发的方法及网络设备
CN112995056B (zh) * 2019-12-16 2023-09-15 中兴通讯股份有限公司 一种流量调度方法、电子设备及存储介质
CN113472684A (zh) * 2020-03-31 2021-10-01 深圳市中兴微电子技术有限公司 一种流量调度方法和网络处理器
CN113518046B (zh) * 2021-03-31 2023-12-26 新华三信息安全技术有限公司 一种报文转发方法及框式交换设备
CN114338499B (zh) * 2021-12-29 2024-05-14 中国电信股份有限公司 数据传输方法、其装置以及电子设备
CN114721984B (zh) * 2022-03-30 2024-03-26 湖南长城银河科技有限公司 面向低延时应用的sata接口数据传输方法和系统

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064651A (en) 1996-06-27 2000-05-16 Xerox Corporation Rate shaping in per-flow output queued routing mechanisms for statistical bit rate service
US5864540A (en) 1997-04-04 1999-01-26 At&T Corp/Csi Zeinet(A Cabletron Co.) Method for integrated traffic shaping in a packet-switched network
US6052375A (en) 1997-11-26 2000-04-18 International Business Machines Corporation High speed internetworking traffic scaler and shaper
US6487213B1 (en) * 1998-01-05 2002-11-26 Polytechnic University Methods and apparatus for fairly arbitrating contention for an output port
US6262989B1 (en) 1998-03-18 2001-07-17 Conexant Systems, Inc. Apparatus and method for providing different quality of service connections in a tunnel mode
JP3584859B2 (ja) 2000-06-29 2004-11-04 日本電気株式会社 パケットスケジューリング装置
EP1215931B1 (en) 2000-12-14 2006-10-11 Lucent Technologies Inc. Distributed scheduler for packet switches and passive optical networks
US7023840B2 (en) 2001-02-17 2006-04-04 Alcatel Multiserver scheduling system and method for a fast switching element
CN1611035A (zh) 2001-04-13 2005-04-27 飞思卡尔半导体公司 数据流处理器中的数据流管理
US7372857B1 (en) 2003-05-28 2008-05-13 Cisco Technology, Inc. Methods and apparatus for scheduling tasks
US7324536B1 (en) 2003-06-26 2008-01-29 Nortel Networks Limited Queue scheduling with priority and weight sharing
EP1517484A1 (en) 2003-09-16 2005-03-23 Siemens Aktiengesellschaft Method and apparatus for traffic scheduling
US7559062B2 (en) 2003-10-30 2009-07-07 Alcatel Lucent Intelligent scheduler for multi-level exhaustive scheduling
US7876763B2 (en) * 2004-08-05 2011-01-25 Cisco Technology, Inc. Pipeline scheduler including a hierarchy of schedulers and multiple scheduling lanes
US7643493B1 (en) 2004-09-29 2010-01-05 Altera Corporation Method and apparatus for priority-provisioned arbitration scheduling for a switch fabric
KR20060032103A (ko) 2004-10-11 2006-04-14 한국전자통신연구원 크로스포인트 버퍼 스위치의 출력 스케줄링 방법
DE102005014852A1 (de) 2005-03-30 2006-10-05 Siemens Ag Entscheidung zur Zuordnung und Ressourcenvergabe für mindestens einem Datenstrom und mindestens eine Nutzverbindung
CN100583869C (zh) 2005-04-30 2010-01-20 华为技术有限公司 多业务通信系统中业务传输优先级的调度方法
US8165144B2 (en) 2005-08-17 2012-04-24 Cisco Technology, Inc. Shaper-scheduling method and system to implement prioritized policing
CN100440802C (zh) 2005-12-26 2008-12-03 北京航空航天大学 服务网格系统及处理作业的方法
CN100463451C (zh) 2005-12-29 2009-02-18 中山大学 一种网络数据流的多维队列调度与管理方法
WO2007121674A1 (fr) 2006-04-21 2007-11-01 Huawei Technologies Co., Ltd. Procédé et appareil de programmation dans des systèmes de communication
CN1968186A (zh) 2006-06-19 2007-05-23 华为技术有限公司 一种调度报文发送的装置及方法
US20080112318A1 (en) 2006-11-13 2008-05-15 Rejean Groleau Traffic shaping and scheduling in a network
US8503465B2 (en) 2007-09-17 2013-08-06 Qualcomm Incorporated Priority scheduling and admission control in a communication network
CN101399763A (zh) 2007-09-30 2009-04-01 华为技术有限公司 下行业务数据调度方法和装置
CN101232716B (zh) 2007-11-09 2011-05-11 中兴通讯股份有限公司 业务优先级的确定方法与装置及调度方法与装置
CN101217499B (zh) 2008-01-21 2010-12-01 中兴通讯股份有限公司 队列调度方法
JP4881887B2 (ja) 2008-01-30 2012-02-22 アラクサラネットワークス株式会社 トラフィックシェーピング機能および装置
CN101237417B (zh) 2008-02-29 2010-09-08 华为技术有限公司 队列索引方法及装置和流量整形的方法及装置
CN101257453A (zh) 2008-03-12 2008-09-03 中兴通讯股份有限公司 一种基于网络处理器的流量整形实现方法及其装置
CN101621460B (zh) * 2008-06-30 2011-11-30 中兴通讯股份有限公司 一种分组调度方法和装置
CN101707556B (zh) 2009-11-20 2011-12-07 华为技术有限公司 一种交换网中的数据调度方法、设备和系统
CN102082765A (zh) * 2009-11-26 2011-06-01 上海大学 一种Linux环境下基于用户和业务的QoS系统
CN101741751B (zh) 2010-02-09 2012-04-04 华为技术有限公司 流量整形调度方法、流量整形调度装置及路由设备
CN102202410A (zh) 2010-03-23 2011-09-28 中兴通讯股份有限公司 无线通信网络的多用户多业务的调度方法及装置
CN102143035B (zh) 2010-06-04 2013-06-12 华为技术有限公司 数据业务处理方法、网络设备和网络系统
CN102611608B (zh) 2011-01-21 2015-05-13 中兴通讯股份有限公司 一种管理虚拟输出队列授权盈余的方法及装置
CN102075431B (zh) * 2011-01-25 2013-09-25 武汉迈威光电技术有限公司 一种同时支持多种优先级的非屏蔽式QoS流调度策略
CN102387076B (zh) 2011-10-19 2014-07-02 烽火通信科技股份有限公司 一种结合整形的分级式队列调度方法
CN102420758B (zh) 2011-11-30 2014-04-30 华为技术有限公司 队列调度方法及装置
CN102368741A (zh) 2011-12-05 2012-03-07 盛科网络(苏州)有限公司 支持层次化队列调度和流量整形的方法及装置
CN102546098B (zh) 2011-12-15 2015-01-21 福建星网锐捷网络有限公司 数据传输装置、方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None

Also Published As

Publication number Publication date
CN104348751A (zh) 2015-02-11
US9940471B2 (en) 2018-04-10
EP3029898B1 (en) 2017-11-22
CN104348751B (zh) 2019-03-12
RU2643666C2 (ru) 2018-02-02
EP3029898A2 (en) 2016-06-08
EP3029898A4 (en) 2016-07-27
US20160180105A1 (en) 2016-06-23
WO2014169883A3 (zh) 2014-12-11
RU2016106827A (ru) 2017-09-01

Similar Documents

Publication Publication Date Title
WO2014169883A2 (zh) 虚拟输出队列授权管理方法、装置及计算机存储介质
CN101009655B (zh) 流量调度方法及装置
US7742411B2 (en) Highly-scalable hardware-based traffic management within a network processor integrated circuit
US9112809B2 (en) Method and apparatus for controlling utilization in a horizontally scaled software application
CN101621460B (zh) 一种分组调度方法和装置
US8339949B2 (en) Priority-aware hierarchical communication traffic scheduling
CN101964758A (zh) 一种基于区分服务的队列调度方法
CN101436987A (zh) QoS服务的调度配置方法和装置
CN101286949A (zh) 基于IEEE802.16d标准的无线Mesh网MAC层资源调度策略
JP6569374B2 (ja) スイッチ装置及びスイッチ装置の制御方法
CN104753809B (zh) 一种流量整形中添加令牌的方法及装置
CN105700940B (zh) 一种调度器及调度器的动态复用方法
CN105577563B (zh) 流量管理方法
US9128755B2 (en) Method and apparatus for scheduling resources in system architecture
US8467401B1 (en) Scheduling variable length packets
WO2014089779A1 (zh) 用户调度方法及其装置
CN105323189A (zh) 一种用户队列调度的方法和装置
Victoria et al. Efficient bandwidth allocation for packet scheduling
WO2021197198A1 (zh) 流量调度方法和网络处理器
CN112929294A (zh) 一种报文调度方法及装置
EP2667554B1 (en) Hierarchal maximum information rate enforcement
Yang et al. Pre-order bonded deficit round robin for channel bonding system
Yoo et al. A fair scheduling algorithm for wireless internet differentiated service networks
Kim Deficit round-robin-based ISP traffic control scheme enabling excess bandwidth allocation in shared access networks

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

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2014785615

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014785615

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016106827

Country of ref document: RU

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14909223

Country of ref document: US