IPSec使用QAT加速卡函数接口流程

2. IPSec采用QAT加速卡处理流程

加密流程函数调用关系

  • ipsec_xmit_esp
    • ipsec_qat_esp_xmit_proc
      • ipsec_qat_get_cpa_cipher
      • ipsec_qat_get_cpa_hash
      • ipsec_qat_req_priv_malloc
      • ipsec_qat_pkt_enc_info_save
      • ipsec_qat_get_cpa_cipher_hash_type
      • ipsec_qat_get_session
        • ipsec_qat_find_session
        • ipsec_qat_new_session
      • ipsec_send_qat_request_proc
        • ipsec_init_qat_symdp_request
          • ipsec_init_qat_symdp_session
            • ipse_update_qat_setupdata
            • cpaCySymUpdateSession
          • ipsec_init_qat_symdp_opdata
            • 构造CpaCySymDpOpData数据
        • ipsec_send_qat_symdp_request
          • ipsec_submit_qat_symdp_request
            • cpaCySymDpEnqueueOpBatch

解密流程函数调用关系

  • ipsec_rcv_auth_decap
  • ipsec_rcv_auth_calc
    • ipsec_qat_esp_rcv_proc
      • ipsec_qat_get_cpa_cipher
      • ipsec_qat_get_cpa_hash
      • ipsec_qat_req_priv_malloc
      • ipsec_qat_pkt_enc_info_save
      • ipsec_qat_get_cpa_cipher_hash_type
      • ipsec_qat_get_session
        • ipsec_qat_find_session
        • ipsec_qat_new_session
      • ipsec_send_qat_request_proc
        • ipsec_init_qat_symdp_request
          • ipsec_init_qat_symdp_session
            • ipse_update_qat_setupdata
            • cpaCySymUpdateSession
          • ipsec_init_qat_symdp_opdata
            • 构造CpaCySymDpOpData数据
        • ipsec_send_qat_symdp_request
          • ipsec_submit_qat_symdp_request
            • cpaCySymDpEnqueueOpBatch

qat轮询流程

  • ipcom_drv_dpdk_poll_loop
    • ipsec_polling_qat_symdp_response
      • ipsec_submit_qat_symdp_request_batch
        • ipsec_submit_qat_symdp_request
          • cpaCySymDpEnqueueOpBatch
      • icp_sal_CyPollDpInstance
      • ipsec_clean_qat_proc
        • ipsec_clean_qat_private
          • ipsec_memfree_qat_opdata
            • ipsec_qat_mempool_element_add
            • ipsec_qat_check_session
            • ipsec_qat_req_priv_free

QAT 的回调函数处理流程

  • ipsec_process_qat_symdp_response_cb
    • ipsec_qat_tos_input
      • 处理方式和tos_input函数一致,通过qat_enc_flag来标记是否经过qat加解密

猜你喜欢

转载自blog.csdn.net/s2603898260/article/details/107880072