[Nsi-wg] Issue 24 in ogf-nsi-project: ServiceException needs further details

ogf-nsi-project at googlecode.com ogf-nsi-project at googlecode.com
Wed Oct 12 12:36:10 CDT 2011


Comment #8 on issue 24 by jmacau... at gmail.com: ServiceException needs  
further details
http://code.google.com/p/ogf-nsi-project/issues/detail?id=24

Peoples,

I took and action to start the error handling discussion so that we, as a  
group, can document the error messages and behaviors.  I would like to  
start it off with when an NSIServiceException is returned as a SOAP fault  
to a request, and when it is returned in a specific failed response message.

OpenDRAC used the strategy of validating a “key” set of attributes in the  
request before returning an ACK response or SOAP fault.  This gives  
OpenDRAC the opportunity to validate parameters needed to accept the  
message for processing, and possibly return the asynchronous failed message  
at a later time.  Here is the list of parameters I will validate in a  
reservation message and return a SOAP fault if they are incorrect or  
missing.

HTTP authentication – if you don’t have valid credentials you are rejected  
with an HTTP 40x message.

correlationId - needed for any acknowledgment, confirmation, or failed  
message.  Must be unique within the context of the providerNSA otherwise  
the request cannot be accepted.

replyTo - we will send the confirmation, or failed message back to this  
location.  We do not validate the contents of the endpoint, just that it  
exists.

Reservation – if the reservation parameters are not present then we reject.

requesterNSA and providerNSA – must be present and resolve to an NsNetwork  
in topology.  Also, the providerNSA must be the NsNetwork OpenDRAC is  
managing or we reject the message.

connectionId – this is used as the primary reference attribute for  
reservation state machines and must be present.

If any of  these fields are missing or invalid OpenDRAC will return a SOAP  
fault containing the NSIServiceException set to an appropriate error  
message.

Here is a list of error messages currently implemented in OpenDRAC.  The  
list continues to expand.  I have kept the text generic with the specific  
error values being returned in the associated attribute list.  We will also  
need to agree on the format of the message/errorId.

MISSINGPARAMETER, “SVC0001", "Invalid or missing parameter"
UNSUPPORTEDOPTION, “SVC0002", "Parameter provided contains an unsupported  
value which MUST be processed"
ALREADYEXISTS, “SVC0003", "Schedule already exists for connectionId"
DOESNOTEXISTS, "SVC0004", "Schedule does not exists for connectionId"
MISSINGSECURITY, “SVC0005", "Invalid or missing user credentials"
TOPOLOGYRESOLUTION_STP, "SVC0006", "Could not resolve STP in Topology  
database"
TOPOLOGYRESOLUTION_STP_NSA, SVC0007", "Could not resolve STP to managing  
NSA"
PATHCOMPUTATION_NO_PATH, “SVC0008", "Path computation failed to resolve  
route for reservation"
INVALIDSTATE, “SVC0009", "Connection state machine is in invalid state for  
received message"
INTERNALERROR, "SVC0010", "An internal error has cause a message processing  
failure"

Would people like to add to the list?

Comments?

John.



More information about the nsi-wg mailing list