First of all:
Good work Alex!
I think this draft covers pretty well what has been discussed on
the list so far. I vote for turning a later version of this
document into a WG draft.
- The sentence "A SERVER MUST NOT send this message" should also
be added to the connection-service message and maybe also to
connection-priority
- I am not sure whether the ability to change the service with
connection-service and within xaction-start is really needed.
It increases the implementation requirements for a callout
server but is it really needed?
Setting a service will usually also mean to negotiate further
parameters.
Couldn't we just put this into connection-start?
Using different services will then mean to start different
connections. Isn't this just ok?
- I forget about the motivation of the "ack" flag and data-ack
messsage. I thought we wanted to have this done by the
transport layer binding. Can you point me to the thread in
which this has been discussed?
- Isn't there a problem with data-pause?
If the SERVER sends data-pause to the CLIENT, the CLIENT
MUST stop sending but before the CLIENT receives and
processes this message it may already have sent additional
data-have messages. The SERVER will then receive unexpected
data any MAY abort.
Second problem: A CLIENT may not be able to pause as long
as the server likes it to pause. If it is not able to keep
a copy of the complete message and if it is not be able to
pause the origin server for the same time, it may easily run
into an internal buffer overflow problem.
How about defining that data-pause MUST NOT be send by the
SERVER but adding a new message data-pause-request which is
only to be sent by the SERVER. Upon receiving this message
the CLIENT MAY pause by sending data-pause to the SERVER.
Regards
Martin