Rich,

I also would like not to replicate and, for the sake of discussion, say, return 
(-1) or bytes read to the ALTO layer.

But the current status is more complicated. We already have a mixed bag of 
things crossing layers.

We already replicate ALTO error codes into HTTP (ALTO->HTTP direction)


"   The HTTP status codes corresponding to each ALTO Error Code are
   defined to provide correct behavior with HTTP intermediaries and
   clients.  When an ALTO Server returns a particular ALTO Error Code,
   it MUST indicate one of the corresponding HTTP status codes in

Table 1 in the HTTP response. "

And we ask clients to interpret HTTP status codes  (HTTP->ALTO direction)


"  o  Return an HTTP 503 ("Service Unavailable") status code to the ALTO
      Client.  As indicated by [RFC2616<http://tools.ietf.org/html/rfc2616>], a 
the Retry-After HTTP header
      may be used to indicate when the ALTO Client should retry the
      request."



As far as your last point…



"My difference in opinion is that I think that should be an implementation 
detail hidden behind the API an ALTO Client exposes."

If something does not change the on the wire protocol or reaction to it (such 
as, e.g., congestion control) would be okay to categorize it as an 
implementation  issue. But in this case it does, and that's why we are having 
this discussion.  Otherwise, yes, I agree with you.

Let's find some wording.

Thanks,

Reinaldo




From: Richard Alimi <[email protected]<mailto:[email protected]>>
Date: Fri, 15 Mar 2013 07:34:53 -0700
To: "[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>>
Subject: [alto] Error codes in ALTO

There is a discussion as to whether the ALTO client needs to interpret HTTP 
status codes.  I've started this thread to discuss that.

Here's my view:

We now have a REST-ful protocol and made a conscious decision to go this way.  
REST-ful protocols are built upon making requests and following links to other 
resources. (This is why we restructured the existing protocol to remove all 
references to "ALTO Request" and "ALTO Response".)

Therefore, the ALTO protocol is *not* a traditional client-server protocol like 
TCP, but is instead an encoding for HTTP resources that allow clients to 
discover the type of information described in the initial problem statement.

Replicating HTTP status codes to the ALTO layer sounds like we are replicating 
a lot of what HTTP does already.

I understand that someone using ALTO should not be burdened with HTTP status 
codes.  My difference in opinion is that I think that should be an 
implementation detail hidden behind the API an ALTO Client exposes.

Thanks,
Rich
_______________________________________________ alto mailing list 
[email protected]<mailto:[email protected]> https://www.ietf.org/mailman/listinfo/alto
_______________________________________________
alto mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/alto

Reply via email to