WO2016206513A1 - Procédé de priorisation de traitement de données, et dispositif et commutateur d'attribution utilisant celui-ci - Google Patents

Procédé de priorisation de traitement de données, et dispositif et commutateur d'attribution utilisant celui-ci Download PDF

Info

Publication number
WO2016206513A1
WO2016206513A1 PCT/CN2016/083045 CN2016083045W WO2016206513A1 WO 2016206513 A1 WO2016206513 A1 WO 2016206513A1 CN 2016083045 W CN2016083045 W CN 2016083045W WO 2016206513 A1 WO2016206513 A1 WO 2016206513A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
message
acceleration
accelerated
type
Prior art date
Application number
PCT/CN2016/083045
Other languages
English (en)
Chinese (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 中兴通讯股份有限公司
Publication of WO2016206513A1 publication Critical patent/WO2016206513A1/fr

Links

Images

Definitions

  • the present application relates to, but is not limited to, the field of network technologies, and in particular, a method, a distribution device, and a switch for accelerating processing of data.
  • OAM Operaation Administration and Maintenance
  • CFM Connectivity Fault Management
  • BFD Bidirectional Forwarding Detection
  • the main purpose of the present application is to provide a method, a distribution device, and a switch for speeding up processing of data, thereby effectively improving data processing capabilities.
  • the present application proposes a method for speeding up processing of data, including:
  • the packet is added to the acceleration packet queue to process the acceleration packet in the acceleration packet queue by the acceleration processing device.
  • the packet is added to the non-accelerated packet queue.
  • the non-accelerated message in the non-accelerated message queue is processed by a conventional processing device.
  • the packet is added to the acceleration packet queue, so that the acceleration processing device processes the acceleration packet in the acceleration packet queue.
  • the steps include:
  • the type of the packet is an acceleration packet, determining a service type of the packet;
  • the step of determining the type of the received message includes:
  • the type of the packet is an acceleration packet
  • the type of the packet is a non-accelerated packet.
  • the application further provides a computer readable storage medium storing computer executable instructions that are implemented when the computer executable instructions are executed.
  • the application also provides a device for accelerating the processing of data, comprising:
  • a type judging module configured to determine a type of the message received through the network interface
  • the acceleration message adding module is configured to add the message to the acceleration message queue when the type of the message is an acceleration message, so that the acceleration processing device processes the acceleration report in the acceleration message queue.
  • the non-accelerated message adding module is configured to: when the type of the message is a non-accelerated message, send the message to the non-accelerated message queue to process the non-accelerated message by the conventional processing device. Non-accelerated messages in the queue.
  • the acceleration packet adding module is configured to determine a service type of the packet when the type of the packet is an acceleration packet, and set the packet according to a service type of the packet. Add to And in the acceleration packet queue corresponding to the service type, the acceleration processing device sequentially accelerates and processes the acceleration packets in each of the acceleration message queues.
  • the type determining module is configured to determine, according to a protocol type of the packet, a type of the packet: when the protocol type of the packet is an operation management and maintenance OAM protocol, where the packet is The type is an acceleration packet.
  • the protocol type of the packet is not the OAM protocol, the type of the packet is a non-accelerated packet.
  • the present application also provides a switch for speeding up processing of data, including a distribution device, an acceleration processing device, and a conventional processing device;
  • the dispensing device comprises:
  • a type judging module configured to determine a type of the received message
  • the acceleration message adding module is configured to add the message to the acceleration message queue when the type of the message is an acceleration message, to process, by the acceleration processing device, the cached message queue Accelerate the message;
  • the non-accelerated message adding module is configured to add the message to the non-accelerated message queue when the type of the message is a non-accelerated message, to process the non-accelerated message by the conventional processing device.
  • the acceleration processing device is configured to process an accelerated message in the accelerated message queue
  • the conventional processing device is configured to process non-accelerated messages in the non-accelerated message queue.
  • the acceleration processing device is configured to batch process the accelerated packets in the plurality of the accelerated message queues corresponding to the respective accelerated services according to the accelerated message queue in which the acceleration message is located.
  • the conventional processing device is configured to limit the rate at which the non-accelerated message in the non-accelerated message queue is sent and received.
  • the switch in the present application includes a plurality of processing devices, and the acceleration message and the non-acceleration message are allocated to different processing devices for processing, and the acceleration processing device for processing the accelerated message does not need to determine the need.
  • the priority of the service corresponding to the packet queue in which the processed packet is located can process the accelerated packet in batches, which is beneficial to improving the efficiency of processing the accelerated message, and avoids processing the non-accelerated message by the accelerated processing device.
  • the efficiency of processing the accelerated message is reduced.
  • the conventional processing device has the ability to process the non-accelerated message and the control program without processing the accelerated message requiring more computing resources, thereby reducing the load of the conventional processing device and improving the load. The efficiency of the switch processing messages.
  • FIG. 1 is a flowchart of a first embodiment of a method for speeding up processing of data provided by the present application
  • step S30 of the second embodiment of the method for speeding up processing of data provided by the present application is a flowchart of step S30 of the second embodiment of the method for speeding up processing of data provided by the present application
  • step S20 of the third embodiment of the method for speeding up processing of data provided by the present application is a flowchart of step S20 of the third embodiment of the method for speeding up processing of data provided by the present application
  • FIG. 4 is a schematic diagram of an apparatus for distributing accelerated processing data provided by the present application.
  • FIG. 5 is a schematic structural diagram of a switch for speeding up processing data provided by the present application.
  • FIG. 1 is a flowchart of a first embodiment of a method for speeding up processing of data provided by the present application.
  • the method for speeding up processing data mentioned in this embodiment includes:
  • Step S20 determining the type of the received message
  • the switch in this embodiment includes a plurality of processing devices, and the plurality of processing devices can be divided into two groups, one set is configured to process control messages and other messages requiring less computing resources, and the other group is set to be Accelerated messages requiring more computing resources.
  • This embodiment takes two processing devices as an example.
  • the switch receives the packet through the network interface, and the packet is classified by the distribution device in the switch.
  • the distribution device distinguishes the type of the packet by using an ACL (Access Control List) or a unicast route.
  • ACL Access Control List
  • the packets that require more computing resources are accelerated packets and are added to the accelerated packet queue.
  • the packets of the resource are ordinary packets, that is, non-accelerated packets, which are added to the non-accelerated message queue.
  • Step S30 When the type of the packet is an acceleration packet, the packet is added to the acceleration packet queue, so that the acceleration processing device processes the acceleration packet in the accelerated message queue.
  • the distribution device sequentially adds the acceleration message to the acceleration message queue.
  • the acceleration processing device can process the acceleration packets in the multiple acceleration packet queues corresponding to the multiple acceleration services, and the different types of acceleration packets can be added to different acceleration packet queues, and can be grouped according to the service type of the packet. Or, in the order of the message, put them into each accelerated message queue. After the packets are grouped, the accelerated packets in each accelerated packet queue are accelerated. Because the packets in the accelerated packet queue require more computing resources to speed up the processing, the packets in the same accelerated packet queue can be processed in batches at the same time, which is beneficial to improve the efficiency of processing the packets.
  • Step S40 When the type of the packet is a non-accelerated packet, the packet is added to the non-accelerated packet queue to process the non-accelerated packet in the non-accelerated packet queue by the conventional processing device.
  • the non-accelerated message requires less computing resources and does not require a shorter response time, it does not need to be accelerated, and can be processed by a conventional processing device, thereby avoiding an increase in the load of the acceleration processing device set to handle the accelerated service, while avoiding the non-accelerated report.
  • the longer response time required by the text reduces the efficiency of the acceleration processing device in processing the accelerated message, thereby avoiding the impact on the efficiency of processing the accelerated message.
  • the switch in this embodiment includes an acceleration processing device and a conventional processing device, and the accelerated message and the non-accelerated message are respectively processed by the corresponding acceleration processing device or the conventional processing device, which is beneficial to improving the efficiency of processing the accelerated message and avoiding The efficiency of processing the accelerated message is reduced because the acceleration processing device processes the non-accelerated message.
  • the conventional processing device has the ability to process the non-accelerated message and the control program without processing the acceleration report requiring more computing resources. Therefore, the load of the conventional processing device is reduced, and the efficiency of processing the message by the switch is improved.
  • FIG. 2 is a flowchart of step S30 of the second embodiment of the method for speeding up processing of data provided by the present application.
  • This embodiment includes the steps in the embodiment shown in FIG. 1, wherein step S30 includes:
  • Step S31 When the type of the packet is an acceleration packet, determine the service type of the packet.
  • Step S32 Add the packet to the acceleration packet queue corresponding to the service type according to the service type of the packet, so that the acceleration processing device separately accelerates and processes the acceleration packet in each of the accelerated packet queues.
  • the acceleration processing device of the embodiment processes the acceleration packets in the plurality of accelerated message queues, and the different service types correspond to different acceleration message queues.
  • the distribution device will be different.
  • the service type packet is added to the corresponding acceleration packet queue.
  • FIG. 3 is a flowchart of step S20 of the third embodiment of the method for speeding up processing of data provided by the present application.
  • This embodiment includes the steps in the embodiment shown in FIG. 1, wherein step S20 includes:
  • Step S21 Determine the type of the packet according to the protocol type of the packet:
  • Step S22 When the protocol type of the packet is the OAM protocol, the type of the packet is an acceleration packet.
  • step S23 when the protocol type of the packet is not the OAM protocol, the type of the packet is a non-accelerated packet.
  • the packet when determining the packet type, the packet is classified according to the protocol type of the packet.
  • the OAM protocol such as CFM and BFD, has high requirements on time performance. Therefore, packets with the protocol type of OAM can be accelerated as acceleration packets.
  • the priority of the processing packet can be defined in advance, and the packet with the priority higher than the threshold is used as the acceleration packet to implement packet classification.
  • determining whether the packet is an accelerated packet according to the type of the packet protocol is simple, and the method for determining the efficiency of the packet is improved, thereby improving the processing efficiency of the switch.
  • Embodiments of the present invention further provide a computer readable storage medium storing computer executable instructions that are implemented when the computer executable instructions are executed.
  • FIG. 4 is a schematic diagram of an apparatus for distributing accelerated processing data provided by the present application.
  • the device for accelerating processing data mentioned in this embodiment includes:
  • the type determining module 120 is configured to determine the type of the received message
  • the acceleration message adding module 130 is configured to add the message to the acceleration message queue when the type of the message is an acceleration message, so that the acceleration processing device processes the acceleration message in the accelerated message queue;
  • the non-acceleration packet adding module 110 is configured to add a packet to the non-accelerated packet queue when the type of the packet is a non-accelerated packet, so that the non-acceleration in the non-accelerated packet queue is processed by the conventional processing device. Message.
  • the switch in this embodiment includes a plurality of processing devices, and the plurality of processing devices can be divided into two groups, one set to process control messages and other messages requiring less computing resources, and the other set to process requirements. Accelerated messages with more computing resources.
  • This embodiment takes two processing devices as an example.
  • the switch receives the packet through the network interface, and the packet is classified by the distribution device in the switch.
  • the device allocates packets of different computing resources to the accelerating packet queue by using an ACL or a unicast route.
  • the packets that require less computing resources are ordinary packets. That is, non-accelerated messages are added to the non-accelerated message queue.
  • the distribution device sequentially adds the acceleration message to the acceleration message queue.
  • the acceleration processing device can process the acceleration packets in the multiple acceleration packet queues corresponding to the multiple acceleration services, and the different types of acceleration packets can be added to different acceleration packet queues, and can be grouped according to the service type of the packet. Or, in the order of the message, put them into each accelerated message queue. After the packets are grouped, the accelerated packets in each accelerated packet queue are accelerated. Due to acceleration in the message queue Packets require more computing resources to speed up processing. Therefore, when processing, batches of packets in the same accelerated packet queue can be processed in batches, which is beneficial to improve the efficiency of processing packets.
  • the non-accelerated message requires less computing resources and does not require a shorter response time, it does not need to be accelerated, and can be processed by a conventional processing device, thereby avoiding an increase in the load of the acceleration processing device set to handle the accelerated service, while avoiding the non-accelerated report.
  • the longer response time required by the text reduces the efficiency of the acceleration processing device in processing the accelerated message, thereby avoiding the impact on the efficiency of processing the accelerated message.
  • the switch in this embodiment includes an acceleration processing device and a conventional processing device, and the accelerated message and the non-accelerated message are respectively processed by the corresponding acceleration processing device or the conventional processing device, which is beneficial to improving the efficiency of processing the accelerated message and avoiding The efficiency of processing the accelerated message is reduced because the acceleration processing device processes the non-accelerated message.
  • the conventional processing device has the ability to process the non-accelerated message and the control program without processing the accelerated message requiring more computing resources. Thereby reducing the load of the conventional processing device and improving the efficiency of the switch processing the message.
  • the acceleration packet adding module 130 is configured to determine a service type of the packet when the type of the packet is an acceleration packet.
  • the packet is added to the acceleration packet queue corresponding to the service type, so that the acceleration processing device accelerates the acceleration of the acceleration packet in each of the accelerated packet queues.
  • the acceleration processing device of the embodiment processes the acceleration packets in the plurality of accelerated message queues, and the different service types correspond to different acceleration message queues.
  • the distribution device will be different.
  • the service type packet is added to the corresponding acceleration packet queue.
  • the allocation device in this embodiment adds the packet to the non-additional packet.
  • the fast message queue is sent to the conventional processing device for processing. Since the conventional processing device also needs to process the control message, in order to avoid the burden of the conventional processing device, the conventional processing device needs to limit the rate of sending and receiving non-accelerated messages, and avoids a large number of non-accelerated messages being sent to the conventional processing device, causing the conventional processing device to be overloaded. Big. At the same time, since the accelerated message and the non-accelerated message are classified into their respective queues, the longer response time required to process the control message and the non-accelerated message does not affect the efficiency of processing the accelerated message, which is beneficial to satisfy the acceleration. The processing efficiency of packets improves the efficiency of packets processed by the switch.
  • the type judging module 120 is configured to determine the type of the packet according to the protocol type of the packet: when the protocol type of the packet is OAM, the type of the packet is an accelerated packet; and the protocol type of the packet. When the OAM protocol is not used, the type of the packet is non-accelerated.
  • the packet when determining the packet type, the packet is classified according to the protocol type of the packet.
  • the OAM protocol such as CFM and BFD, has high requirements on time performance. Therefore, packets with the protocol type of OAM can be accelerated as acceleration packets.
  • the priority of the processing packet can be defined in advance, and the packet with the priority higher than the threshold is used as the acceleration packet to implement packet classification.
  • determining whether the packet is an accelerated packet according to the type of the packet protocol is simple, and the method for determining the efficiency of the packet is improved, thereby improving the processing efficiency of the switch.
  • FIG. 5 is a schematic structural diagram of a switch for speeding up processing data provided by the present application.
  • the switch for speeding up processing data proposed in this embodiment includes a distribution device 100, an acceleration processing device 400, and a conventional processing device 500;
  • the dispensing device 100 includes:
  • the type determining module 120 is configured to determine the type of the received message
  • the acceleration message adding module 130 is configured to add the message to the acceleration message queue when the type of the message is an acceleration message, so that the acceleration processing device 400 processes the acceleration message in the accelerated message queue;
  • the non-acceleration packet adding module 110 is configured to report when the type of the packet is a non-accelerated packet.
  • the text is added to the non-accelerated message queue to process the non-accelerated message in the non-accelerated message queue by the conventional processing device 500;
  • the acceleration processing device 400 is configured to process the accelerated message in the accelerated message queue
  • the conventional processing device 500 is configured to process non-accelerated messages in the non-accelerated message queue.
  • the acceleration processing device 400 is configured to batch process the accelerated packets in the plurality of accelerated message queues corresponding to the respective accelerated services according to the accelerated message queue in which the accelerated message is located.
  • the conventional processing device 500 is configured to limit the rate at which the non-accelerated messages in the non-accelerated message queue are sent and received.
  • the switch in this embodiment includes the acceleration processing device 400 and the conventional processing device 500.
  • the acceleration processing device 400 and the conventional processing device 500 can be as shown in FIG. 5, and the structure and principle thereof can be referred to the above embodiments, and details are not described herein. Since the switch in the embodiment includes the acceleration processing device 400 and the normal processing device 500, the acceleration message and the non-acceleration message are allocated to the corresponding acceleration processing device 400 and the conventional processing device 500 for processing, which is advantageous for improving the processing acceleration report.
  • the accelerated message of the resource is calculated, thereby reducing the load of the conventional processing device 500 and improving the efficiency of the switch processing the message.
  • the switch in the present application includes a plurality of processing devices, and the acceleration message and the non-acceleration message are respectively processed to different processing devices, and the acceleration processing device for processing the acceleration message does not need to determine the message in which the message to be processed is located.
  • the priority of the service corresponding to the queue can process the accelerated message in batches, which is beneficial to improving the efficiency of processing the accelerated message, and avoids reducing the efficiency of processing the accelerated message by the accelerated processing device processing the non-accelerated message.
  • the conventional processing device has the ability to process the non-accelerated message and the control program without processing the accelerated message requiring more computing resources, thereby reducing the load of the conventional processing device and improving the efficiency of the switch processing the message.

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Selon l'invention, un procédé de priorisation de traitement de données comprend les étapes suivantes : déterminer un type d'un paquet reçu ; lorsque le type du paquet reçu est un paquet prioritaire, ajouter le paquet reçu à une file d'attente de paquets prioritaires de manière à traiter le paquet prioritaire en utilisant un dispositif de traitement prioritaire ; et lorsque le type du paquet reçu est un paquet non prioritaire, ajouter le paquet reçu à une file d'attente de paquets non prioritaires de manière à traiter le paquet non prioritaire en utilisant un dispositif de traitement normal. L'invention concerne aussi un cœur d'unité central de traitement (CPU) et un commutateur, capables de prioriser le traitement de données. Le commutateur selon un mode de réalisation de l'invention comprend une pluralité de dispositifs de traitement configurés pour attribuer un paquet prioritaire et un paquet non prioritaire à différents dispositifs de traitement pour effectuer un traitement ultérieur, ce qui facilite une augmentation de l'efficacité de traitement du paquet prioritaire, tout en évitant une diminution d'efficacité d'un dispositif de traitement prioritaire à cause du traitement du paquet non prioritaire, et réduit une charge d'un dispositif de traitement normal et augmente l'efficacité de traitement de paquets au niveau du commutateur.
PCT/CN2016/083045 2015-06-26 2016-05-23 Procédé de priorisation de traitement de données, et dispositif et commutateur d'attribution utilisant celui-ci WO2016206513A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510366655.5 2015-06-26
CN201510366655.5A CN106330762A (zh) 2015-06-26 2015-06-26 交换机加速处理数据的方法、cpu核和交换机

Publications (1)

Publication Number Publication Date
WO2016206513A1 true WO2016206513A1 (fr) 2016-12-29

Family

ID=57584603

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/083045 WO2016206513A1 (fr) 2015-06-26 2016-05-23 Procédé de priorisation de traitement de données, et dispositif et commutateur d'attribution utilisant celui-ci

Country Status (2)

Country Link
CN (1) CN106330762A (fr)
WO (1) WO2016206513A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111327526A (zh) * 2018-12-14 2020-06-23 就肆电竞股份有限公司 资料传输加速系统

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108667765A (zh) * 2017-03-28 2018-10-16 深圳市中兴微电子技术有限公司 一种数据处理方法及装置
CN107566289A (zh) * 2017-08-21 2018-01-09 杭州迪普科技股份有限公司 一种基于流分类的控制核流量限速方法及装置
CN107426113B (zh) * 2017-09-13 2020-03-17 迈普通信技术股份有限公司 报文接收方法及网络设备
CN111294291B (zh) * 2020-01-16 2022-07-12 新华三信息安全技术有限公司 一种协议报文的处理方法和装置
CN113114584B (zh) * 2021-03-01 2023-02-28 杭州迪普科技股份有限公司 一种网络设备的保护方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913486A (zh) * 2005-08-10 2007-02-14 中兴通讯股份有限公司 一种增强协议报文安全的方法和装置
CN101056222A (zh) * 2007-05-17 2007-10-17 华为技术有限公司 一种深度报文检测方法、网络设备及系统
CN101471854A (zh) * 2007-12-29 2009-07-01 华为技术有限公司 一种转发报文的方法及装置
CN101541038A (zh) * 2009-04-27 2009-09-23 杭州华三通信技术有限公司 增强无线局域网承载的上层应用稳定性的方法和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913486A (zh) * 2005-08-10 2007-02-14 中兴通讯股份有限公司 一种增强协议报文安全的方法和装置
CN101056222A (zh) * 2007-05-17 2007-10-17 华为技术有限公司 一种深度报文检测方法、网络设备及系统
CN101471854A (zh) * 2007-12-29 2009-07-01 华为技术有限公司 一种转发报文的方法及装置
CN101541038A (zh) * 2009-04-27 2009-09-23 杭州华三通信技术有限公司 增强无线局域网承载的上层应用稳定性的方法和设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111327526A (zh) * 2018-12-14 2020-06-23 就肆电竞股份有限公司 资料传输加速系统

Also Published As

Publication number Publication date
CN106330762A (zh) 2017-01-11

Similar Documents

Publication Publication Date Title
WO2016206513A1 (fr) Procédé de priorisation de traitement de données, et dispositif et commutateur d'attribution utilisant celui-ci
US11422839B2 (en) Network policy implementation with multiple interfaces
US10423790B2 (en) Intelligent identification of stressed machines for data security management
KR101623197B1 (ko) 클라이언트 디바이스 상에서의 패킷 송신을 스케줄링하기 위한 시스템 및 방법
US10942786B2 (en) Network management
US10764132B2 (en) Scale-out association method and apparatus, and system
CN108432194B (zh) 一种拥塞处理的方法、主机及系统
US10545896B2 (en) Service acceleration method and apparatus
WO2016107152A1 (fr) Procédé et appareil ainsi que dispositif de déploiement d'instance de machine virtuelle
WO2015101091A1 (fr) Procédé et dispositif d'ordonnancement distribué de ressources
CN104301066A (zh) 数据包传输方法及装置
CN102891809B (zh) 多核网络设备报文按接口保序方法及系统
US10476746B2 (en) Network management method, device, and system
WO2017185615A1 (fr) Procédé de détermination d'état de service de dispositif de traitement de service et dispositif d'ordonnancement
EP3101965A1 (fr) Procédé et appareil d'enregistrement de noeud adjacent, et procédé et système d'enregistrement de noeud de croisement
CN102611630B (zh) 一种报文接收控制方法及系统
WO2016149945A1 (fr) Procédé de traitement d'événement de cycle de vie et vnfm
JP2011203810A (ja) サーバ、計算機システム及び仮想計算機管理方法
WO2017173728A1 (fr) Procédé et appareil d'envoi de message de diffusion, et terminal mobile
US20220214926A1 (en) Virtual machine monitoring device, virtual machine monitoring method, and program
CN106470421A (zh) 一种防止恶意终端非法占用核心网资源的方法和设备
JP2016046669A (ja) パケット処理装置、プログラム及び方法
CN111427673B (zh) 一种负载均衡方法、装置及设备
CN114124856A (zh) 一种流量控制的方法、装置及存储介质
JP2011124677A (ja) パケット処理装置、パケット振り分け装置、制御プログラム及びパケット分散方法

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16813629

Country of ref document: EP

Kind code of ref document: A1