Package rdma-core-devel

RDMA core development libraries and headers

https://github.com/linux-rdma/rdma-core

Version: 54.0

See also: rdma-core.

Library Functions

efadv_create_driver_qp
efadv_create_qp_ex Create EFA specific extended Queue Pair
efadv_query_ah Query EFA specific Address Handle attributes
efadv_query_device Query device capabilities
efadv_query_mr Query EFA specific Memory Region attributes
hnsdv_create_qp creates a HNS specific queue pair (QP)
hnsdv_is_supported Check whether an RDMA device implemented by the hns provider
hnsdv_query_device Query hns device specific attributes
ibnd_debug alias for ibnd_discover_fabric
ibnd_destroy_fabric alias for ibnd_discover_fabric
ibnd_discover_fabric initialize ibnetdiscover library.
ibnd_find_node_dr alias for ibnd_find_node_guid
ibnd_find_node_guid given a fabric object find the node object within it which matches the guid or directed route specified.
ibnd_iter_nodes given a fabric object and a function itterate over the nodes in the fabric.
ibnd_iter_nodes_type alias for ibnd_iter_nodes
ibnd_set_max_smps_on_wire alias for ibnd_discover_fabric
ibnd_show_progress alias for ibnd_discover_fabric
ibv_ack_async_event alias for ibv_get_async_event
ibv_ack_cq_events alias for ibv_get_cq_event
ibv_advise_mr Gives advice or directions to the kernel about an address range belongs to a memory region (MR).
ibv_alloc_dm allocate or free a device memory buffer (DMs) and perform memory copy to or from it
ibv_alloc_mw allocate or deallocate a memory window (MW)
ibv_alloc_null_mr allocate a null memory region (MR)
ibv_alloc_parent_domain allocate and deallocate the parent domain object
ibv_alloc_pd allocate or deallocate a protection domain (PDs)
ibv_alloc_td allocate and deallocate thread domain object
ibv_attach_counters_point_flow attach individual counter definition to a flow object
ibv_attach_mcast attach and detach a queue pair (QPs) to/from a multicast group
ibv_bind_mw post a request to bind a type 1 memory window to a memory region
ibv_close_device alias for ibv_open_device
ibv_close_xrcd alias for ibv_open_xrcd
ibv_create_ah create or destroy an address handle (AH)
ibv_create_ah_from_wc initialize or create an address handle (AH) from a work completion
ibv_create_comp_channel create or destroy a completion event channel
ibv_create_counters Create or destroy a counters handle
ibv_create_cq create or destroy a completion queue (CQ)
ibv_create_cq_ex create a completion queue (CQ)
ibv_create_flow create or destroy flow steering rules
ibv_create_flow_action Flow action esp for verbs
ibv_create_qp create or destroy a queue pair (QP)
ibv_create_qp_ex create or destroy a queue pair (QP)
ibv_create_rwq_ind_table create or destroy a Receive Work Queue Indirection Table (RWQ IND TBL).
ibv_create_srq create or destroy a shared receive queue (SRQ)
ibv_create_srq_ex create or destroy a shared receive queue (SRQ)
ibv_create_wq create or destroy a Work Queue (WQ).
ibv_dealloc_mw alias for ibv_alloc_mw
ibv_dealloc_pd alias for ibv_alloc_pd
ibv_dealloc_td alias for ibv_alloc_td
ibv_dereg_mr alias for ibv_reg_mr
ibv_destroy_ah alias for ibv_create_ah
ibv_destroy_comp_channel alias for ibv_create_comp_channel
ibv_destroy_counters alias for ibv_create_counters
ibv_destroy_cq alias for ibv_create_cq
ibv_destroy_flow alias for ibv_create_flow
ibv_destroy_flow_action alias for ibv_create_flow_action
ibv_destroy_qp alias for ibv_create_qp
ibv_destroy_rwq_ind_table alias for ibv_create_rwq_ind_table
ibv_destroy_srq alias for ibv_create_srq
ibv_destroy_wq alias for ibv_create_wq
ibv_detach_mcast alias for ibv_attach_mcast
ibv_event_type_str
ibv_fork_init initialize libibverbs to support fork()
ibv_free_device_list alias for ibv_get_device_list
ibv_free_dm alias for ibv_alloc_dm
ibv_get_async_event get or acknowledge asynchronous events
ibv_get_cq_event get and acknowledge completion queue (CQ) events
ibv_get_device_guid get an RDMA device’s GUID
ibv_get_device_index get an RDMA device index
ibv_get_device_list get and release list of available RDMA devices
ibv_get_device_name get an RDMA device’s name
ibv_get_pkey_index obtain the index in the P_Key table of a P_Key
ibv_get_srq_num return srq number associated with the given shared receive queue (SRQ)
ibv_import_device import a device from a given command FD
ibv_import_dm
ibv_import_mr
ibv_import_pd
ibv_inc_rkey creates a new rkey from the given one
ibv_init_ah_from_wc alias for ibv_create_ah_from_wc
ibv_is_fork_initialized check if fork support (ibv_fork_init) is enabled
ibv_memcpy_from_dm alias for ibv_alloc_dm
ibv_memcpy_to_dm alias for ibv_alloc_dm
ibv_modify_cq modify a completion queue (CQ)
ibv_modify_flow_action alias for ibv_create_flow_action
ibv_modify_qp modify the attributes of a queue pair (QP)
ibv_modify_qp_rate_limit modify the send rate limits attributes of a queue pair (QP)
ibv_modify_srq modify attributes of a shared receive queue (SRQ)
ibv_modify_wq Modify a Work Queue (WQ).
ibv_node_type_str alias for ibv_event_type_str
ibv_open_device open and close an RDMA device context
ibv_open_qp open a shareable queue pair (QP)
ibv_open_xrcd open or close an XRC protection domain (XRCDs)
ibv_poll_cq poll a completion queue (CQ)
ibv_port_state_str alias for ibv_event_type_str
ibv_post_recv post a list of work requests (WRs) to a receive queue
ibv_post_send post a list of work requests (WRs) to a send queue
ibv_post_srq_ops perform on a special shared receive queue (SRQ) configuration manipulations
ibv_post_srq_recv post a list of work requests (WRs) to a shared receive queue (SRQ)
ibv_query_device query an RDMA device's attributes
ibv_query_device_ex query an RDMA device's attributes including extended device properties.
ibv_query_ece query ECE options.
ibv_query_gid query an InfiniBand port’s GID table
ibv_query_gid_ex Query an InfiniBand port’s GID table entry
ibv_query_gid_table query an InfiniBand device’s GID table
ibv_query_pkey query an InfiniBand port’s P_Key table
ibv_query_port query an RDMA port's attributes
ibv_query_qp get the attributes of a queue pair (QP)
ibv_query_qp_data_in_order check if qp data is guaranteed to be in order.
ibv_query_rt_values_ex query an RDMA device for some real time values
ibv_query_srq get the attributes of a shared receive queue (SRQ)
ibv_rate_to_mbps
ibv_rate_to_mult
ibv_read_counters Read counter values
ibv_reg_dm_mr alias for ibv_alloc_dm
ibv_reg_mr register or deregister a memory region (MR)
ibv_req_notify_cq request completion notification on a completion queue (CQ)
ibv_rereg_mr re-register a memory region (MR)
ibv_resize_cq resize a completion queue (CQ)
ibv_set_ece set ECE options and use them for QP configuration stage.
ibv_unimport_dm alias for ibv_import_dm
ibv_unimport_mr alias for ibv_import_mr
ibv_unimport_pd alias for ibv_import_pd
ibv_wr_abort alias for ibv_wr_post
ibv_wr_atomic_cmp_swp alias for ibv_wr_post
ibv_wr_atomic_fetch_add alias for ibv_wr_post
ibv_wr_bind_mw alias for ibv_wr_post
ibv_wr_complete alias for ibv_wr_post
ibv_wr_flush alias for ibv_wr_post
ibv_wr_local_inv alias for ibv_wr_post
ibv_wr_post
ibv_wr_rdma_read alias for ibv_wr_post
ibv_wr_rdma_write alias for ibv_wr_post
ibv_wr_rdma_write_imm alias for ibv_wr_post
ibv_wr_send alias for ibv_wr_post
ibv_wr_send_imm alias for ibv_wr_post
ibv_wr_send_inv alias for ibv_wr_post
ibv_wr_send_tso alias for ibv_wr_post
ibv_wr_set_inline_data alias for ibv_wr_post
ibv_wr_set_inline_data_list alias for ibv_wr_post
ibv_wr_set_sge alias for ibv_wr_post
ibv_wr_set_sge_list alias for ibv_wr_post
ibv_wr_set_ud_addr alias for ibv_wr_post
ibv_wr_set_xrc_srqn alias for ibv_wr_post
ibv_wr_start alias for ibv_wr_post
manadv_init_obj Initialize mana direct verbs object from ibv_xxx structures
manadv_set_context_attr Set context attributes
mbps_to_ibv_rate alias for ibv_rate_to_mbps
mlx4dv_init_obj Initialize mlx4 direct verbs object from ibv_xxx structures
mlx4dv_query_device Query device capabilities specific to mlx4
mlx4dv_set_context_attr Set context attributes
mlx5dv_alloc_dm allocates device memory (DM)
mlx5dv_alloc_var
mlx5dv_create_cq creates a completion queue (CQ)
mlx5dv_create_flow creates a steering flow rule
mlx5dv_create_flow_action_modify_header Flow action modify header for mlx5 provider
mlx5dv_create_flow_action_packet_reformat Flow action reformat packet for mlx5 provider
mlx5dv_create_flow_matcher creates a matcher to be used with mlx5dv_create_flow(3)
mlx5dv_create_mkey
mlx5dv_create_qp creates a queue pair (QP)
mlx5dv_create_steering_anchor
mlx5dv_crypto_login
mlx5dv_crypto_login_create
mlx5dv_crypto_login_destroy alias for mlx5dv_crypto_login_create
mlx5dv_crypto_login_query alias for mlx5dv_crypto_login_create
mlx5dv_crypto_login_query_state alias for mlx5dv_crypto_login
mlx5dv_crypto_logout alias for mlx5dv_crypto_login
mlx5dv_dci_stream_id_reset Reset stream_id of a given DCI QP
mlx5dv_dek_create
mlx5dv_dek_destroy alias for mlx5dv_dek_create
mlx5dv_dek_query alias for mlx5dv_dek_create
mlx5dv_destroy_mkey alias for mlx5dv_create_mkey
mlx5dv_destroy_steering_anchor alias for mlx5dv_create_steering_anchor
mlx5dv_devx_alloc_msi_vector
mlx5dv_devx_alloc_uar
mlx5dv_devx_cq_modify alias for mlx5dv_devx_qp_modify
mlx5dv_devx_cq_query alias for mlx5dv_devx_qp_modify
mlx5dv_devx_create_cmd_comp
mlx5dv_devx_create_eq
mlx5dv_devx_create_event_channel
mlx5dv_devx_destroy_cmd_comp alias for mlx5dv_devx_create_cmd_comp
mlx5dv_devx_destroy_eq alias for mlx5dv_devx_create_eq
mlx5dv_devx_destroy_event_channel alias for mlx5dv_devx_create_event_channel
mlx5dv_devx_free_msi_vector alias for mlx5dv_devx_alloc_msi_vector
mlx5dv_devx_free_uar alias for mlx5dv_devx_alloc_uar
mlx5dv_devx_general_cmd alias for mlx5dv_devx_obj_create
mlx5dv_devx_get_async_cmd_comp alias for mlx5dv_devx_create_cmd_comp
mlx5dv_devx_get_event Get an asynchronous event.
mlx5dv_devx_ind_tbl_modify alias for mlx5dv_devx_qp_modify
mlx5dv_devx_ind_tbl_query alias for mlx5dv_devx_qp_modify
mlx5dv_devx_obj_create
mlx5dv_devx_obj_destroy alias for mlx5dv_devx_obj_create
mlx5dv_devx_obj_modify alias for mlx5dv_devx_obj_create
mlx5dv_devx_obj_query alias for mlx5dv_devx_obj_create
mlx5dv_devx_obj_query_async alias for mlx5dv_devx_obj_create
mlx5dv_devx_qp_modify
mlx5dv_devx_qp_query alias for mlx5dv_devx_qp_modify
mlx5dv_devx_query_eqn Query EQN for a given vector id.
mlx5dv_devx_srq_modify alias for mlx5dv_devx_qp_modify
mlx5dv_devx_srq_query alias for mlx5dv_devx_qp_modify
mlx5dv_devx_subscribe_devx_event
mlx5dv_devx_subscribe_devx_event_fd alias for mlx5dv_devx_subscribe_devx_event
mlx5dv_devx_umem_dereg alias for mlx5dv_devx_umem_reg
mlx5dv_devx_umem_reg
mlx5dv_devx_umem_reg_ex alias for mlx5dv_devx_umem_reg
mlx5dv_devx_wq_modify alias for mlx5dv_devx_qp_modify
mlx5dv_devx_wq_query alias for mlx5dv_devx_qp_modify
mlx5dv_dm_map_op_addr Get operation address of a device memory (DM)
mlx5dv_dr_action_create_aso alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_default_miss alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_dest_array alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_dest_devx_tir alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_dest_ib_port alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_dest_ibv_qp alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_dest_root_table alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_dest_table alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_dest_vport alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_drop alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_flow_counter alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_flow_meter alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_flow_sampler alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_modify_header alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_packet_reformat alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_pop_vlan alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_push_vlan alias for mlx5dv_dr_flow
mlx5dv_dr_action_create_tag alias for mlx5dv_dr_flow
mlx5dv_dr_action_destroy alias for mlx5dv_dr_flow
mlx5dv_dr_action_modify_aso alias for mlx5dv_dr_flow
mlx5dv_dr_action_modify_flow_meter alias for mlx5dv_dr_flow
mlx5dv_dr_aso_other_domain_link alias for mlx5dv_dr_flow
mlx5dv_dr_aso_other_domain_unlink alias for mlx5dv_dr_flow
mlx5dv_dr_domain_allow_duplicate_rules alias for mlx5dv_dr_flow
mlx5dv_dr_domain_create alias for mlx5dv_dr_flow
mlx5dv_dr_domain_destroy alias for mlx5dv_dr_flow
mlx5dv_dr_domain_set_reclaim_device_memory alias for mlx5dv_dr_flow
mlx5dv_dr_domain_sync alias for mlx5dv_dr_flow
mlx5dv_dr_flow
mlx5dv_dr_matcher_create alias for mlx5dv_dr_flow
mlx5dv_dr_matcher_destroy alias for mlx5dv_dr_flow
mlx5dv_dr_matcher_set_layout alias for mlx5dv_dr_flow
mlx5dv_dr_rule_create alias for mlx5dv_dr_flow
mlx5dv_dr_rule_destroy alias for mlx5dv_dr_flow
mlx5dv_dr_table_create alias for mlx5dv_dr_flow
mlx5dv_dr_table_destroy alias for mlx5dv_dr_flow
mlx5dv_dump
mlx5dv_dump_dr_domain alias for mlx5dv_dump
mlx5dv_dump_dr_matcher alias for mlx5dv_dump
mlx5dv_dump_dr_rule alias for mlx5dv_dump
mlx5dv_dump_dr_table alias for mlx5dv_dump
mlx5dv_flow_action_esp Flow action esp for mlx5 provider
mlx5dv_free_var alias for mlx5dv_alloc_var
mlx5dv_get_clock_info Get device clock information
mlx5dv_get_data_direct_sysfs_path Get the sysfs path of a data direct device
mlx5dv_get_vfio_device_list Get list of available devices to be used over VFIO
mlx5dv_init_obj Initialize mlx5 direct verbs object from ibv_xxx or mlx5dv_xxx structures
mlx5dv_is_supported Check whether an RDMA device implemented by the mlx5 provider
mlx5dv_map_ah_to_qp Map the destination path information in address handle (AH) to the information extracted from the qp.
mlx5dv_mkey_check Check a MKEY for errors
mlx5dv_modify_qp_lag_port Modify the lag port information of a given QP
mlx5dv_modify_qp_sched_elem Connect a QP with a requestor and/or a responder scheduling element
mlx5dv_modify_qp_udp_sport Modify the UDP source port of a given QP
mlx5dv_open_device Open an RDMA device context for the mlx5 provider
mlx5dv_pp_alloc
mlx5dv_pp_free alias for mlx5dv_pp_alloc
mlx5dv_qp_cancel_posted_send_wrs Cancel all pending send work requests with supplied WRID in a QP in SQD state
mlx5dv_qp_ex_from_ibv_qp_ex alias for mlx5dv_wr_post
mlx5dv_query_device Query device capabilities specific to mlx5
mlx5dv_query_port Query non standard attributes of IB device port.
mlx5dv_query_qp_lag_port Query the lag port information of a given QP
mlx5dv_reg_dmabuf_mr Register a dma-buf based memory region (MR)
mlx5dv_reserved_qpn_alloc
mlx5dv_reserved_qpn_dealloc alias for mlx5dv_reserved_qpn_alloc
mlx5dv_sched_leaf_create alias for mlx5dv_sched_node_create
mlx5dv_sched_leaf_destroy alias for mlx5dv_sched_node_create
mlx5dv_sched_leaf_modify alias for mlx5dv_sched_node_create
mlx5dv_sched_node_create
mlx5dv_sched_node_destroy alias for mlx5dv_sched_node_create
mlx5dv_sched_node_modify alias for mlx5dv_sched_node_create
mlx5dv_ts_to_ns Convert device timestamp from HCA core clock units to the corresponding nanosecond counts
mlx5dv_vfio_get_events_fd Get the file descriptor to manage driver events.
mlx5dv_vfio_process_events process vfio driver events
mlx5dv_wr_memcpy alias for mlx5dv_wr_post
mlx5dv_wr_mkey_configure
mlx5dv_wr_mr_interleaved alias for mlx5dv_wr_post
mlx5dv_wr_mr_list alias for mlx5dv_wr_post
mlx5dv_wr_post
mlx5dv_wr_raw_wqe alias for mlx5dv_wr_post
mlx5dv_wr_set_dc_addr alias for mlx5dv_wr_post
mlx5dv_wr_set_dc_addr_stream alias for mlx5dv_wr_post
mlx5dv_wr_set_mkey_access_flags alias for mlx5dv_wr_mkey_configure
mlx5dv_wr_set_mkey_crypto Configure a MKey for crypto operation.
mlx5dv_wr_set_mkey_layout_interleaved alias for mlx5dv_wr_mkey_configure
mlx5dv_wr_set_mkey_layout_list alias for mlx5dv_wr_mkey_configure
mlx5dv_wr_set_mkey_sig_block Configure a MKEY for block signature (data integrity) operation.
mult_to_ibv_rate alias for ibv_rate_to_mult
rdma_accept Called to accept a connection request.
rdma_ack_cm_event Free a communication event.
rdma_bind_addr Bind an RDMA identifier to a source address.
rdma_connect Initiate an active connection request.
rdma_create_ep Allocate a communication identifier and optional QP.
rdma_create_event_channel Open a channel used to report communication events.
rdma_create_id Allocate a communication identifier.
rdma_create_qp Allocate a QP.
rdma_create_srq Allocate a shared receive queue.
rdma_dereg_mr deregisters a registered memory region.
rdma_destroy_ep Release a communication identifier.
rdma_destroy_event_channel Close an event communication channel.
rdma_destroy_id Release a communication identifier.
rdma_destroy_qp Deallocate a QP.
rdma_destroy_srq Deallocate a SRQ.
rdma_disconnect This function disconnects a connection.
rdma_establish Complete an active connection request.
rdma_event_str Returns a string representation of an rdma cm event.
rdma_free_devices Frees the list of devices returned by rdma_get_devices.
rdma_get_cm_event Retrieves the next pending communication event.
rdma_get_devices Get a list of RDMA devices currently available.
rdma_get_dst_port Returns the remote port number of a bound rdma_cm_id.
rdma_get_local_addr Returns the local IP address of a bound rdma_cm_id.
rdma_get_peer_addr Returns the remote IP address of a bound rdma_cm_id.
rdma_get_recv_comp retrieves a completed receive request.
rdma_get_remote_ece Get remote ECE paraemters as received from the peer.
rdma_get_request Retrieves the next pending connection request event.
rdma_get_send_comp retrieves a completed send, read, or write request.
rdma_get_src_port Returns the local port number of a bound rdma_cm_id.
rdma_getaddrinfo Provides transport independent address translation.
rdma_init_qp_attr Returns qp attributes of an rdma_cm_id.
rdma_join_multicast Joins a multicast group.
rdma_join_multicast_ex Joins a multicast group with extended options.
rdma_leave_multicast Leaves a multicast group.
rdma_listen Listen for incoming connection requests.
rdma_migrate_id Move a communication identifier to a different event channel.
rdma_notify Notifies the librdmacm of an asynchronous event.
rdma_post_read post an RDMA read work request.
rdma_post_readv post an RDMA read work request.
rdma_post_recv post a work request to receive an incoming message.
rdma_post_recvv post a work request to receive incoming messages.
rdma_post_send post a work request to send a message.
rdma_post_sendv post a work request to send a message.
rdma_post_ud_send post a work request to send a datagram.
rdma_post_write post an RDMA write work request.
rdma_post_writev post an RDMA write work request.
rdma_reg_msgs register data buffer(s) for sending or receiving messages.
rdma_reg_read register data buffer(s) for remote RDMA read access.
rdma_reg_write register data buffer(s) for remote RDMA write access.
rdma_reject Called to reject a connection request.
rdma_resolve_addr Resolve destination and optional source addresses.
rdma_resolve_route Resolve the route information needed to establish a connection.
rdma_set_local_ece Set local ECE paraemters to be used for REQ/REP communication.
rdma_set_option Set communication options for an rdma_cm_id.
umad_addr_dump dump addr structure to stderr
umad_alloc allocate memory for umad buffers
umad_attribute_str alias for umad_class_str
umad_class_str class of functions to return string representations of enums
umad_close_port close InfiniBand device port for umad access
umad_debug set debug level
umad_done alias for umad_init
umad_dump dump umad buffer to stderr
umad_free frees memory of umad buffers
umad_get_ca get and release InfiniBand device port attributes
umad_get_ca_portguids get the InfiniBand device ports GUIDs
umad_get_cas_names get list of available InfiniBand device names
umad_get_fd get the umad fd for the requested port
umad_get_issm_path get path of issm device
umad_get_mad get the MAD pointer of a umad buffer
umad_get_mad_addr get the address of the ib_mad_addr from a umad buffer
umad_get_pkey get pkey index from umad buffer
umad_get_port open and close an InfiniBand port
umad_init perform library initialization and finalization
umad_mad_status_str alias for umad_class_str
umad_method_str alias for umad_class_str
umad_open_port open InfiniBand device port for umad access
umad_poll poll umad
umad_recv receive umad
umad_register register the specified management class and version for port
umad_register2 register the specified management class and version for port
umad_register_oui register the specified class in vendor range 2 for port
umad_release_ca alias for umad_get_ca
umad_release_port alias for umad_get_port
umad_send send umad
umad_set_addr set MAD address fields within umad buffer using host ordering
umad_set_addr_net set MAD address fields within umad buffer using network ordering
umad_set_grh set GRH fields within umad buffer using host ordering
umad_set_grh_net set GRH fields within umad buffer using network ordering
umad_set_pkey set pkey index within umad buffer
umad_size get the size of umad buffer
umad_status get the status of a umad buffer
umad_unregister unregister umad agent

Miscellanea

efadv The libibverbs API is an abstract one. It is agnostic to any underlying provider specific implementation.
hnsdv The libibverbs API is an abstract one. It is agnostic to any underlying provider specific implementation.
manadv The libibverbs API is an abstract one. It is agnostic to any underlying provider specific implementation.
mlx4dv The libibverbs API is an abstract one. It is agnostic to any underlying provider specific implementation.
mlx5dv The libibverbs API is an abstract one. It is agnostic to any underlying provider specific implementation.
rdma_cm RDMA communication manager.