xio_transport 协议类型,目前只有rdma,包含协议名和该协议相关的所有操作函数 ,rdma模块中定义了一个xio_rdma_transport全局变量,实现了xio_transport中所有函数,同时还有一个struct xio_rdma_transport结构,该类型是对底层驱动接口的封装,同时包含了上下文,每个conn对象都包含一个单独的,该结构实际应该是和xio_transport_base在同一层次
xio_transport_base 底层通信的上下文,每个conn对应一个
xio_conn 对transport_base的简单封装,处理框架内部定义的一些消息,握手消息之类
xio_connection 对xio_conn的封装,管理连接buf,上层请求
xio_session 网络session,一个addr对应一个session,每个session可以包含多个连接
xio_server 服务端,xio_bind调用时返回,处理session未建立前的一些事件
xio_msg,用户需要发送的内容
xio_task,打包msg,加入消息头
xio_connecton_send中,XIO_MSG_RSP_FLAG_FIRST标记和XIO_MSG_RSP_FLAG_LAST标记,如果仅设置FIRST标记,发送消息时,不使用原有的task,重新生成,这种情况出现在xio_connection_send_read_receipt的时候
RDMA_CM_EVENT_ADDR_RESOLVED
RDMA_CM_EVENT_ROUTE_RESOLVED
RDMA_CM_EVENT_CONNECT_REQUEST
RDMA_CM_EVENT_ESTABLISHED
RDMA_CM_EVENT_REJECTED
RDMA_CM_EVENT_ADDR_CHANGE
RDMA_CM_EVENT_DISCONNECTED
RDMA_CM_EVENT_TIMEWAIT_EXIT
RDMA_CM_EVENT_MULTICAST_JOIN
RDMA_CM_EVENT_MULTICAST_ERROR
RDMA_CM_EVENT_DEVICE_REMOVAL
RDMA_CM_EVENT_CONNECT_RESPONSE
enum xio_session_state {
XIO_SESSION_STATE_INIT,
XIO_SESSION_STATE_CONNECT,
XIO_SESSION_STATE_ONLINE,
XIO_SESSION_STATE_REDIRECTED,
XIO_SESSION_STATE_ACCEPTED,
XIO_SESSION_STATE_REJECTED,
XIO_SESSION_STATE_REFUSED,
XIO_SESSION_STATE_CLOSING,
XIO_SESSION_STATE_CLOSED,
};
#define XIO_MSG_REQ XIO_MSG_TYPE_REQ
#define XIO_MSG_RSP XIO_MSG_TYPE_RSP
#define XIO_CREDIT_NOP (XIO_CREDIT | XIO_NOP)
#define XIO_CONN_SETUP_REQ (XIO_CONN_SETUP | XIO_REQUEST)
#define XIO_CONN_SETUP_RSP (XIO_CONN_SETUP | XIO_RESPONSE)
#define XIO_SESSION_SETUP_REQ (XIO_SESSION_SETUP | XIO_REQUEST)
#define XIO_SESSION_SETUP_RSP (XIO_SESSION_SETUP | XIO_RESPONSE)
#define XIO_ONE_WAY_REQ XIO_MSG_TYPE_ONE_WAY
#define XIO_ONE_WAY_RSP (XIO_ONE_WAY | XIO_RESPONSE)
#define XIO_FIN_REQ (XIO_FIN | XIO_REQUEST)
#define XIO_FIN_RSP (XIO_FIN | XIO_RESPONSE)
#define XIO_CANCEL_REQ (XIO_CANCEL | XIO_REQUEST)
#define XIO_CANCEL_RSP (XIO_CANCEL | XIO_RESPONSE)
#define XIO_CONNECTION_HELLO_REQ (XIO_CONNECTION_HELLO | XIO_REQUEST)
#define XIO_CONNECTION_HELLO_RSP (XIO_CONNECTION_HELLO | XIO_RESPONSE)
xio_data_handler
声明:转载本博文章须在文章明显处注明作者及附上原文链接,便于读者找到原文的更新版。