2008/688 Sun Cluster TCP/IP Hooks Update
Erik Nordmark
erik.nordmark at sun.com
Tue Nov 11 22:49:03 PST 2008
James Carlson wrote:
> The situation for UDP is a bit different. Since there is no real
> connection in UDP and the same socket can be used to send to
> multiple destinations, the major task is to register the five-tuple
> at the cluster level. Such registration is performed at connect(),
> sendto() and sendmsg(), which call the cl_inet_connect() hook at
> proper time. For performance reasons, sendto()/sendmsg() calls the
> hook only when the destination is new. To facilitate this, two new
> fields are added to the udp_t struct to store the most recent
> destination address and port: in6_addr_t udp_cl_v6lastdst; in_port_t
> udp_cl_lastdstport; In a sendto() or sendmsg(), the
> cl_inet_connect() hook is called only when the destination is
> different from most recent one.
Since UDP currently does not call cl_inet_connect, I assume the above
paragraph refers to the proposed new behavior.
Does the reference to sendmsg/sendto imply that this will be implemented
in sockfs? Or will it be implemented in TCP?
I don't understand why a new udp_cl_v6lastdst is needed since udp
already has a udp_v6lastdst field.
Is the intent that Cluster be useful with exclusive-IP zones in the future?
If so it might make sense to take this opportunity to introduce an
instance identifier to the function signatures.
Erik
More information about the opensolaris-arc
mailing list