-
Notifications
You must be signed in to change notification settings - Fork 495
Connection establishment
UCT supports either connecting to a remote interface, or connecting to a remote endpoint (p2p mode).
When connecting to an interface, need to create endpoint with uct_ep_create_connected(), and the endpoint can be used immediately. When connecting to a remote endpoint, need to create an endpoint using uct_ep_create() and then connect it using uct_ep_conenct(). This endpoint can be use only after remote side has connected its endpoint as well.
UCP, on the other hand, exposes only one-sided semantics: ucp_ep_create() would create an endpoint which could be used immediately for communications to a remote worker.
Therefore, UCP has to implement a connection establishment protocol - wireup - which would bridge this gap and support the following scenarios:
- Establish connection over p2p transport.
- Create endpoint for sending replies back, for one-sided transports.
- Use multiple transports for different types of operations.