Hi Tom, Tom Marshall wrote:
No, I agree but we should be clear with what a certain answer means so. That way we can avoid ambiguities if different content policies are used.If the media content changes it should be published as a new resourcesI agree that it is desirable to have a new URI for a changed resource,
with an new URI.
but I
don't think it should not be a MUST. I don't think the spec should
dictate
content policy to this degree.
I don't know actually. Lets start deciding what resource that a If-Modified-Since header actually relates to in a SETUP request. Comparing this with Last-Modified header which for a SETUP relates to the media stream. In that case it seems valid that the If-Modified-Since header in a request relates to the media stream also. In that case a 304 would mean that the media stream which the URL in the request points at has not be changed.
SETUP2. Same issue with SETUP, but in reverse. Does 304 necessarily implyWhat is your suggestion for the semantics of receiving a 304 to a
that the resource description is identical?
request? I have earlier asked what happens when one do SETUP to change
parameters and it does not work correctly, see bug 513737:
https://sourceforge.net/tracker/?group_id=23194&atid=377744&func=detail& aid=513737 The answer to my question is implied: a 304 response to a SETUP does not guarantee that the resource description is unchanged. Correct?
I don't think this problem of overloading is that problematic. I simply think that we need to clarify the behavior of reSETUP request that fails.
I admit that I have not thought about the issue in 513737 before. It
seems
to come from overloading the semantics of SETUP.
Looking at the RFC2326 state machine nothing of this is explicitly declared. Therefore I don't think there is a problem of fixing this in the new state machine.
as3. The RTSP state machine mandates that a 3xx response to a request
changes
the state to Init. This is fairly logical for the other 3xx codes,
issuesthey
are used for redirection. Should 304 also follow this rule? Suppose
that a
client has a Session and is PLAYing a resource. The client then
ana
DESCRIBE on that same resource, specifying the existing Session and
serverIf-Modified-Since header. The server returns a 304 response. What
happens
to the Session? Should it be considered torn down? Should the
stopI think 304 needs to be excluded from this behavior. Is it not in fact
sending data packets?
that a 304 response is the result of that the session state has notbeen
changed?Yes, it would be logical to exclude 304 from the state change in this
case. But wouldn't this break compatibility with 2326? Are there existing
RTSP
implementations that would reset the state to Init in this case?
Yes, this needs consideration and clarification. I haven't thought before of the case that one actually desires to do a new describe of the session description of the session currently set up. This case might imply that a server needs to know that this request is in the context of the given session so it does not move a requesting party around due to load balancing, etc. In all other cases it looks like the DESCRIBE can be stateless and simply be a tool for requesting session descriptions related to a certain media resource. Have you any clarifying thoughts on when a session context is needed for a DESCRIBE?
theFurther, suppose that the same scenario as (3) above plays out but
theserver returns 302 instead. What happens to the session, and should
I think there is a conflict in the state change rules. Perhaps theserver stop sending data packets?The scenario you think of is a DESCRIBE request with session header relating to a active session. That DESCRIBE request results in a 302 response. However as DESCRIBE does not effect the session state (see table 6).
rules
for state changes need to be re-examined, or at least clarified?
Yes, as RFC 2326 is obvious in error and can easily be showed to contradict itself, this is not an argument. The valid argument for session header in request is simply: Are there reasons when the content of a DESCRIBE request is dependent on a already established session? If yes, session header shall be allowed in DESCRIBE, else not.
Also currently session header is not applicable for DESCRIBE requests (See table 4).This is true for draft-02, but 2326 section 12 says:
Header type support methods
...
Session Rr req. all but SETUP, OPTIONS
This is not strictly correct, as the Session header is indeed meaningful
in
SETUP, but it does allow Session to be used in DESCRIBE.