System Session Abstraction
Set of network connections to remote end point
- All involved in single collaborative activity
-
Application identifies end points, initiates connections
System manages tracking
- Maintains semantics of reliable protocols
- Exposes changes to apps that register interest
/* Find remote end point */
dhost = gethostbyname(dst);
/* Validate remote end point */
daddr = valid_address(dhost);
/* Create a new session */
sid = session_create(flags, …);
/* Specify end points discovery */
set_lookupfunc(sid, gethostbyname, dst, hostname);
/* Create two connections */
/* Register interest in changes */
register_handler(sid, mobhandler);