ietf-mxcomp
[Top] [All Lists]

Re: CID sizes

2004-06-02 04:40:13

On Tue, 1 Jun 2004, Eric A. Hall wrote:

On 6/1/2004 12:43 PM, Bob Atkinson wrote:

http://www.lessspam.org/CallerIDPolicyWizard?domain=hotmail.com

399 bytes in "normal" mode, just to reference "includes":

| _ep TXT (
|         "<ep xmlns='http://ms.net/1'>"
|         "  <out>"
|         "    <m>"
|         "      <a />"
|         "    </m>"
|         "    <m>"
|         "      <indirect>list1._ep.hotmail.com</indirect>"
|         "      <indirect>list2._ep.hotmail.com</indirect>"
|         "      <indirect>list3._ep.hotmail.com</indirect>"
|         "    </m>"
|         "  </out>"
|         "</ep>"
|         )

my domain http://www.lessspam.org/CallerIDPolicyWizard?domain=ntrg.com

423 bytes

| _ep TXT (
|         "<ep xmlns='http://ms.net/1'>"
|         "  <out>"
|         "    <m>"
|         "      <r>207.65.0.0/16</r>"
|         "      <mx />"
|         "      <a />"
|         "    </m>"
|         "    <m>"
|         "      <indirect>ehsco.com</indirect>"
|         "      <indirect>ntrg.net</indirect>"
|         "      <indirect>ntrg.org</indirect>"
|         "    </m>"
|         "  </out>"
|         "</ep>"
|         )

FYI

Way, way too long!!! That means lots of records would be over 512 bytes long and
many records would have to include multiple other records which  means longer
time to get the data with multiple lookups. I see several ways out:
1. Change MARID/XML to different protocol (if BEEP over UDP is possible 
   this would be good) and use dns to reference correct MARID policy server
2. Seriously compact the data format into something like SPF. I'll include
   here part of my message to different mail list on this point:

------------------------------------------------------------------------

As far as <spf>..</spf> I actually talked to Meng privately about after the
MARID meeting and I thought this would come out a lot quicker from others 
too. To be valid in XML world, my suggestion is to slightly change spf 
(make "=" primary separator between operator and data instead of ":") 
and to make each spf operand to be xml attribute of <spf> element and make 
<spf> to be parallel element to <out> under <ep> tree (or possibly just
make them attributes of <out> and <spf> can be synonym of <out>) with each
spf attribute being equivalent to proposed elements under <m> (while 
having same attributes for element as subelement is rare, it does happen 
in xml specs - in html for example). Note also that most of proposed marid 
xml elements are actually already identical in name and function to spf 
operators and there is aconversion table (see below). The existing start 
of xml specifying schema should also be considered optional to minimize 
size of the record and standard template could be added by default based 
on very quick version parameter of <out>.. Existing SPF record start would 
do the same specifying similar template possibly particular to SPF style.
While this still leaves large xml records then spf, it is not as bad as 
full xml schema and when necessary convinient xml extension format can be 
used if it  becomes necessary to extend the schema.

Here is the translation table between CallerID and Marid from last draft
(things are quite similar to spf):
      spf mechanism    xml element
      ---------        -------
      a                a
      exists           exists
      include          include
      ip4 without "/"  a        
      ip4 with "/"     r
      ip6 without "/"  a
      ip6 with "/"     r
      mx               mx
      ptr              ptr

Note: I think <r> should have be allowed to include single ip address and 
consider
      that to be same as if /32 was added at the end. If that is done, it would
      make ip4 & ip6 completely equivalent to "r"

Here are also practical examples to what I wrote above:
1. Full xml syntax per CallerID+SPF specification from MARID sent draft:
  <?xml version="1.0" charset="us-ascii"?>
  <root xmlns="urn:ietf:params:xml:schema:marid-1">
     <ep>
       <out default=fail>
         <m result=pass>
           <a>test.example.com</a>
         </m>
     </ep>
  </root>
2. Quicker xml form with out (assumes default for m result attribute is "pass")
  <?xml?><ep v=marid=1><out 
default=fail><m><a>test.example.com></a></m></out></ep>
3. Quick xml form with spf element
  <?xml?><ep v=marid-1><spf +a=test.example.com -all></ep>
4. Same in original SPF style
  v=spf1 +a:test.example.com -all
5. Valid mix of <spf> and <out> elements
  <?xml?><ep v=marid-1><spf +a=test.example.com -all>
  <out default=fail><m><r>10.10.10.0/24</r><m></out><ep>

The attributes for <spf> element would be considered synonyms to longer 
tree of <out><m>... elements:
     SPF Element Parameter      Synonym in Full XML Out Element Spec
      +a=xyz                    <m result=pass<a>xyz</a></m>
      -a=xyz                    <m result=fail><a>xyz</a></m>
      ~a=xyz                    <m result=softfail><a>xyz</a></m>
      ?a=xyz                    <m result=unknown><a>xyz</a></m>>
      +exists=xyz               <m result=pass><exists>xyz</exists></m>
      ..and so on...
      -all                      <out default=fail>
      +all                      <out default=pass>
      ~all                      <out default=softfail>
      ?all                      <out default=unknown>   (default for marid)

-- 
William Leibzon
Elan Networks
william(_at_)elan(_dot_)net



<Prev in Thread] Current Thread [Next in Thread>