One could argue that the application should inform the "stack" about the lifetime of the communication, perhaps by defining some new "open" and "close" APIs, i.e. getting close to defining a session layer. But my gut feel is that this requires more changes to the applications than is warranted.