[Sis-ams] notation for delivery point names
Stuart Fowell
Stuart.Fowell at scisys.co.uk
Tue Nov 11 05:34:17 EST 2008
Scott,
There is a two steps to processing a delivery point name:
1. Do I support the underlying transport service
2. If 1 is true, then can I use it to transfer to the destination
Step 2 is particular to the underlying transport service - this allows
for different formats etc for different underlying transport service
types.
"vxmq2113451256:11311876" merges the two together whereas
"vxmq:2113451256:11311876" separates these two steps into independent
information
FYI, this is the mechanism that CORBA uses, with an ID for each
transport type so that a particular ORB implementation only needs to
process those transport types that it supports.
Stuart D. Fowell BEng MBCS
Distributed, Real-Time Embedded (DRE) Consultant
SciSys UK Ltd
Clothier Road
Bristol
BS4 5SS
UK
Tel: +44 (0)117 916 5165
Mob: +44 (0)7715 750 255
Fax: +44 (0)119 916 5299
Email: stuart.fowell at scisys.co.uk
Website: www.scisys.co.uk <http://www.scisys.co.uk/>
This message is private and confidential. If you have received this
message in error, please notify us and remove it from your system. If
you are not the intended recipient, please do not read, copy, use or
disclose this communication to others. E-mail transmission cannot be
guaranteed to be secure or error-free as information could be
intercepted, corrupted, lost, destroyed, arrive late or incomplete, or
contain viruses. SciSys UK Limited therefore does not accept liability
for any errors or omissions in the contents of this message, which arise
as a result of e-mail transmission. Whilst SciSys UK Limited take
reasonable precautions to minimise risk, you must carry out your own
virus checks before opening attachments or reading e-mails and SciSys UK
Ltd does not accept liability for any damage or loss in this respect.
Contracts cannot be concluded with SciSys UK Limited by email.
________________________________
From: sis-ams-bounces at mailman.ccsds.org
[mailto:sis-ams-bounces at mailman.ccsds.org] On Behalf Of Scott Burleigh
Sent: 08 November 2008 00:24
To: sis-ams at mailman.ccsds.org
Subject: [Sis-ams] notation for delivery point names
Hi, gang. At the October meetings we left one spec issue unresolved,
because it seemed subtle and complex enough to deserve some off-line
thought and discussion by email. That issue was the notation we use for
delivery point names.
The spec currently says that a delivery point name is the concatenation
of a transport service name, an equals ('=') sign, and an endpoint name
in transport-service-specific format. Currently the syntax of the
transport service name for TCP is the intuitively obvious "tcp", and
endpoint names are in the similarly obvious format hostname:portnumber;
likewise for UDP. But for VxWorks message queues the spec says the
transport service name is "vxmqhostnumber", with msgqID as the endpoint
name. The idea under discussion, as I recall, was to simplify the
protocol by using the general structure
protocolname:qualifier:qualifier:...:qualifier for all delivery point
names, e.g. "tcp:amroc.jpl.nasa.gov:5453" and
"vxmq:2113451256:11311876".
I've given this some thought and have concluded that, while I agree that
the proposed notation's generality is appealing, this is one of those
rare cases where the more intuitively elegant approach is
disadvantageous in implementation.
The intent of the current design is to simplify the processing of
delivery vectors in MAMS messages: a receiving MAMS entity can always
know whether or not a given delivery point is one that it can use for
message transmission to the sending entity, simply by looking for the
'=' character and then comparing the preceding character string to the
names of the transport services to which it has access.
The proposed design is, paradoxically, more complex. In the case of
"tcp:amroc.jpl.nasa.gov:5453" the receiving entity would know that the
delivery point is usable if "tcp" -- the token preceding the first colon
-- is one of its transport services. But in the case of
"vxmq:2113451256:11311876" the delivery point would be usable only if
"vxmq:2113451256" -- the string preceding the *second* colon -- was one
of its transport services, because message-queue transport is possible
only between tasks residing on the same machine. Tasks residing on
different computers running VxWorks cannot exchange messages among
themselves via message queue; "vxmq" alone would not be enough to assure
connectivity.
In order to make the proposed syntax work, we would have to build
transport-service-specific rules into the code that processes delivery
vectors in inbound MAMS messages, indicating how much of the delivery
point name constitutes the transport service name. To avoid adding any
more complexity to an already complex specification, I think we should
stick with the current notation. Does anyone have strong feelings
otherwise?
Scott
SciSys UK Limited. Registered in England and Wales No. 4373530.
Registered Office: Methuen Park, Chippenham, Wiltshire SN14 0GB, UK.
* Before printing, please think about the environment.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ccsds.org/pipermail/sis-ams/attachments/20081111/f4e89020/attachment.htm
More information about the Sis-ams
mailing list