home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / ietf / sipp / sipp-minutes-94mar.txt < prev   
Text File  |  1994-06-08  |  34KB  |  820 lines

  1.  
  2. CURRENT_MEETING_REPORT_
  3.  
  4. Reported by Bob Hinden/Sun Microsystems
  5.  
  6. Minutes of the Simple Internet Protocol Plus Working Group (SIPP)
  7.  
  8. The SIPP Working Group held an implementors' meeting on Sunday, and two
  9. working group sessions during the week.  The first session was on
  10. Wednesday and the second session was on Thursday.  The first session was
  11. multicast on the Internet.
  12.  
  13. The minutes from the implementors' meeting were taken and written by Jim
  14. Bound.
  15.  
  16.  
  17. Review Agenda
  18.  
  19. The agenda for the meeting was:
  20.  
  21.  
  22.    o Review Agenda
  23.    o Working Group Status
  24.    o Implementors Meeting Report
  25.    o SIPP Specification Update
  26.    o Discover / Auto Configuration
  27.    o IPAE Overview
  28.  
  29.  
  30. Working Group Status
  31.  
  32. Bob Hinden reported that the working group charter was approved.  The
  33. SIPP Working Group is now official!
  34.  
  35. A ``white paper'' on SIPP was written and submitted to the IPng Area
  36. Directors.  It has been published as an Internet-Draft and will appear
  37. as a ConneXions article.  This was the only IPng white paper which was
  38. submitted on time.
  39.  
  40. A large number of documents were published as Internet-Drafts.  They
  41. include:
  42.  
  43. R. Atkinson, ``SIPP Authentication Payload,'' Internet-Draft,
  44. draft-ietf-sipp-ap-01.txt, January, 1994.
  45.  
  46. W. Simpson, ``SIPP Neighbor Discovery,'' Internet-Draft,
  47. draft-ietf-sipp-discovery-04.txt, March 1994.
  48.  
  49. W. Simpson, ``SIPP Neighbor Discovery -- ICMP Message Format,''
  50. Internet-Draft, draft-ietf-sipp-discovery-formats-00.txt March 1994.
  51.  
  52. S. Thomson, ``Simple Internet Protocol Plus (SIPP): Automatic Host
  53.  
  54. Address Assignment,'' Internet-Draft, draft-ietf-sipp-auto-addr-00.txt,
  55. March 1994.
  56.  
  57. S. Thomson, C. Huitema, ``DNS Extensions to support Simple Internet
  58. Protocol Plus (SIPP),'' Internet-Draft, draft-ietf-sipp-dns-01.txt,
  59. March 1994.
  60.  
  61. S. Thomson, ``Simple Internet Protocol Plus (SIPP): DHCP Options and
  62. BOOTP Vendor Extensions,'' Internet-Draft,
  63. draft-ietf-sipp-dhcpopt-01.txt, March 1994.
  64.  
  65. R. Govindan, S. Deering, ``ICMP and IGMP for the Simple Internet
  66. Protocol Plus (SIPP),'' draft-ietf-sipp-icmp-igmp-00.txt,
  67. Internet-Draft, March 1994
  68.  
  69. S. Hares, ``IDRP for SIP,'' Internet-Draft,
  70. draft-ietf-ipidrp-sip-01.txt, November 1993.
  71.  
  72. R. Gilligan, et.  al., ``IPAE: The SIPP Interoperability and Transition
  73. Mechanism,'' Internet-Draft, draft-ietf-sipp-ipae-transition-01.txt,
  74. March 1994.
  75.  
  76. P. Francis, ``OSPF for SIPP,'' Internet-Draft,
  77. draft-ietf-sip-ospf-00.txt, February 1994.
  78.  
  79. G. Malkin, C. Huitema, ``SIP-RIP,'' Internet-Draft,
  80. draft-ietf-sip-rip-00.txt, March 1993.
  81.  
  82. S. Deering, et al, ``Simple Internet Protocol Plus (SIPP): Routing and
  83. Addressing,'' Internet-Draft, draft-ietf-sip-routing-addr-01.txt,
  84. February, 1994.
  85.  
  86. R. Atkinson, ``SIPP Security Architecture,'' Internet-Draft,
  87. draft-ietf-sipp-sa-01.txt, March 1994.
  88.  
  89. R. Atkinson, ``SIPP Encapsulating Security Payload (ESP),''
  90. Internet-Draft, draft-ietf-sipp-esp-01.txt, March 1994.
  91.  
  92. S. Deering, ``Simple Internet Protocol Plus (SIPP) Specification,''
  93. Internet-Draft, draft-ietf-sipp-spec-00.txt, February 1994.
  94.  
  95. P. Francis, ``Simple Internet Protocol Plus (SIPP): Unicast Hierarchical
  96. Address Assignment,'' Internet-Draft,
  97. draft-ietf-sip-unicast-addr-00.txt, January 1994.
  98.  
  99. A SIPP Mosaic page has been created on http://town.hall.org.
  100.  
  101. The SIPP Mosaic page includes an overview of SIPP, information on the
  102. working group, a summary of current specifications, and information on
  103. SIPP implementations.  Authors of SIPP documents should send a short
  104. biography and picture (in GIF format) to Bob Hinden.
  105.  
  106.  
  107.  
  108. Implementors' Meeting
  109.  
  110.  
  111. The SIPP implementors' meeting was organized by Jim Bound, in
  112. collaboration with Steve Deering, Paul Francis and Bob Hinden, the SIPP
  113. co-Chairs.
  114.  
  115. The SIPP Working Group would like to thank Megan Walnut from CNRI for
  116. assisting the group to obtain a meeting room for this meeting.
  117.  
  118. The meeting was attended by the following main participants:  Steve
  119. Deering, Bill Simpson, Ran Atkinson, Dan McDonald, Sue Thomson, Ramesh
  120. Govindan, Bob Gilligan, Steve Alexander, Jim Bound, Alex Conta and Peter
  121. Grehan.  Also in and out were:  Christian Huitema, Sue Hares, Dino
  122. Farinacci and Allison Mankin.
  123.  
  124. The meeting focused on the SIPP protocol specifications and
  125. implementations issues.  The meeting was lead by Steve Deering.
  126.  
  127. The first part of the meeting consisted of status reports.  Each
  128. participant presented his/her implementation status:
  129.  
  130.  
  131.    o Bob Gilligan of SunSoft:  The SIPP/IPAE prototype can exchange
  132.      messages with IP hosts using the IPAE mechanisms.
  133.  
  134.    o Dan McDonald and Ran Atkinson are working on a NRL implementation
  135.      which is at a very initial stage.  The intention is to place the
  136.      NRL implementation in the public domain.
  137.  
  138.    o Sue Thomson and Ramesh Govindan from Bellcore are also working on
  139.      an experimental implementation, which may be made available in
  140.      public domain.
  141.  
  142.    o Alex Conta, Peter Grehan, and Jim Bound presented the status on the
  143.      Digital IPng prototypes - OSF/1 and OpenVMS. Digital's approach is
  144.      to begin the prototype with kernel development for the SIPP
  145.      protocol engine that will in the future support SIPP
  146.      interoperability testing for the specifications.
  147.  
  148.  
  149. The second part of the meeting consisted of a protocol specifications
  150. walk through from the prospective of specific implementations.
  151.  
  152. The review went deep into the specifics of the SIPP protocol design and
  153. SIPP headers layout.  All discussion cannot be possibly captured in
  154. these minutes, and will focus on what was altered as a result of this
  155. meeting.
  156.  
  157. Steve started the SIPP header review by providing more details regarding
  158. the flow ID field, which is supposed to contain a traffic class
  159. subfield, a quality of service (QOS) subfield and a flow ID number,
  160. which is randomly chosen or negotiated.  For setting and getting the
  161. values, Alex Conta, Jim Bound, Ran Atkinson and Bob Gilligan discussed
  162. the potential of using a `setsockopt/getsockopt' type of API operation,
  163. similar to IPv4 in setting IP options.  We all agreed on the mechanism
  164. to be used.  Alex Conta further mentioned that the model should be
  165. extended to management, such that the implementations will no longer
  166. rely on operating system platform specific mechanisms.  Eventually we
  167. could document the mechanisms as part of the SIPP documents or as a
  168. separate document.
  169.  
  170. Further, during the review of the SIPP header, several commented that
  171. the size of the header and the position of the fields are very well
  172. thought out.  Having a header which is a multiple of 64 bits optimizes
  173. caching and memory access, most likely on the 32-bit RISC processors,
  174. but it is optimal in particular on the 64-bit machine architectures like
  175. Alpha AXP.
  176.  
  177. Alex made the comment that the `payload type' field being used
  178. concurrently for both multiplexing SIPP options and SIPP transport
  179. protocols, presents the risk of limiting the future number of SIPP
  180. options, and SIPP transport protocols.  Additional comments on the size
  181. of the `hop limit' field were made, which seems too small - maximum 255.
  182. Though these comments have been made before, Alex felt they should be
  183. made again for clarity of a possible future issue.
  184.  
  185. Steve commented that the decision on the current field sizes was made
  186. knowing the possible negative effects, and so they were left unchanged.
  187. Further, Alex made the comment that the SIPP payload length limit of 64
  188. Kbytes may be too small in the future.  This was also a topic discussed
  189. previously at length in the working group, with the current decision
  190. being defended vigorously by Steve Deering, Bill Simpson, and Ran
  191. Atkinson.  It was decided to leave this discussion for now.
  192.  
  193. Before starting the walk through the SIPP routing header, at the request
  194. of the attendees, Steve briefly presented a transparency on how the SIPP
  195. addressing is used in the SIPP advanced routing-hierarchy of provider,
  196. subscriber, subnet and node ID. Steve mentioned that this explanation
  197. was given to him by Paul Francis, the author of the SIPP advanced
  198. routing.  The group felt this kind of clarity in the specifications was
  199. important to capture.
  200.  
  201. During the SIPP routing header review, Alex made the proposal to shift
  202. the `next addr' field to the right 8 bits, such that accessing and
  203. computation on this field will not require additional shift
  204. instructions.  The proposal was accepted in unanimity:
  205.  
  206. Old:
  207.  
  208.  
  209.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  210.    |  Payload Type |   Num Addrs   |   Next Addr   |               |
  211.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               +
  212.    |                           Reserved                            |
  213.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  214.    |                                                               |
  215.    .                               .                               .
  216.  
  217.  
  218. New:
  219.  
  220.  
  221.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  222.    |  Payload Type |   Num Addrs   | Reserved - MBZ|   Next Addr   |
  223.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  224.    |                           Reserved                            |
  225.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  226.    |                                                               |
  227.    .                               .                               .
  228.  
  229.  
  230. During the SIPP fragment header review, Alex made the proposal to shift
  231. the `more fragment' bit to the very left, and leave the reserved bits
  232. next to the fragment offset.  Then Alex proposed that the fragment
  233. offset be the natural offset value rather than the offset shifted by 3
  234. bit positions to the right.  The proposal was accepted in unanimity:
  235.  
  236. Old:
  237.  
  238.  
  239.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  240.    |  Payload Type |       Reserved    |M|      Fragment Offset    |
  241.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  242.    |                        Identification                         |
  243.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  244.    .                               .                               .
  245.  
  246.  
  247. New:
  248.  
  249.  
  250.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  251.    |  Payload Type |M|  Reserved   |      Fragment Offset    |0 0 0|
  252.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  253.    |                        Identification                         |
  254.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  255.    .                               .                               .
  256.  
  257.  
  258. Additionally, Alex commented that since the offset is now a natural
  259. value, there is no other reason to require the 3 lowest significant bits
  260. to be zero and thus the fragments size be a multiple of 8 bytes, other
  261. than compatibility with IPv4 fragments, which is important for IPv4 to
  262. SIPP transition and coexistence.
  263.  
  264. Everyone in the room liked the way the header looked after the change,
  265. and the general comment from Steve Deering and Bill Simpson was that the
  266. meeting was very substantive and therefore successful, and that they
  267. would like the working group meeting to be the same.
  268.  
  269. During the discussions, Dino Farinacci joined the participants, and
  270. requested a move of the flow ID next to the SIPP source address for
  271. speeding up the flow ID-based caching and lookup.  The group in general
  272. thought this was a very good idea, but unfortunately the field sizes did
  273. not allow an easy move, and therefore the change was dropped for now and
  274. would need some thought.  It was generally accepted that we needed to
  275. keep the source and destination addresses aligned on 32-bit boundaries,
  276. as this is a big win perceived from most participants.
  277.  
  278. On the authentication header, Peter Grehan mentioned that it is apparent
  279. that the MD5 algorithm is costly from a performance point of view.  Ran
  280. Atkinson mentioned that there are other algorithms that could be looked
  281. at, and he will do that.  A brief discussion followed about the position
  282. of the header, and how this affects its processing.  Peter further tried
  283. to explain to the group his knowledge gained on the host kernel after
  284. building a prototype analysis for the SIPP security specifications, but
  285. it appeared most had not started this kind of kernel work and the group
  286. was not prepared to discuss this in depth.
  287.  
  288. At this point, after about 2 or 3 hours of work, the group decided to
  289. break for registration and dinner, and return to continue the discussion
  290. afterwards.  The registration and reception took about 30 to 45 minutes.
  291. Slowly the people regrouped and continued the discussion.
  292.  
  293. On the hop-by-hop option header, Alex proposed a change to make the
  294. options in the header 8-byte aligned, since each hop-by-hop is a
  295. multiple of 8 bytes in length.  While discussing the proposal, it became
  296. obvious that the text was not clear, which lead to a misunderstanding
  297. regarding the length of the options.  Correctly, hop-by-hop options can
  298. be of any length, but the length of the header is a multiple of 8 bytes.
  299. The text will be corrected, and enriched with a suggestion to align
  300. hop-by-hop options to their natural boundaries.
  301.  
  302. Christian Huitema underlined the importance of alignment for caching.
  303.  
  304. Then, when discussing the `packet size issues' Alex reiterated that SIPP
  305. fragmentation/reassembly is allowed in end hosts, and that should be
  306. kept that way.  Path MTU discovery will eliminate fragmentation in
  307. routers, but sender end hosts can fragment for UDP/IP applications that
  308. have user messages larger than the MTU size.  The discussion that
  309. followed focused on payload size, so Alex presented graphs of the
  310. experiments and measurements done in Digital on OSF/1 and OpenVMS UDP/IP
  311. and FDDI on Alpha AXP. The graphs showed that the UDP/IP packet loss is
  312. a continuously decreasing function of user message size with a minimum
  313. at 64 Kbytes.  The explanation is that the CPU time spent for
  314. user-to-kernel space crossing is significantly larger than the time
  315. taken for fragment reassembly, and therefore the system time spent per
  316. user message is inversely proportional the size of the message.
  317. Additionally, Alex argued that for using the pipeline effect of the SIPP
  318. fragmentation for UDP/IP, the size of a datagram must be several times
  319. larger than the maximum data link packet size, and already today there
  320. are 3 data links that have or allow 64KByte MTUs (HIPPI, Fiber Channel,
  321. and ATM). For achieving high performance pipeline for TCP, the window
  322. size limit of 64Kbytes had to be broken.  Alex added that future data
  323. links may do fragmentation/reassembly at the link level, similarly to
  324. ATM, thus making the MTU size rather optional, and negotiable, with
  325. values larger than 64Kbytes.  Applications such as audio/video use large
  326. messages, etc.
  327.  
  328. Steve Deering and Bill Simpson argued that the per-packet system cost
  329. should be such that even at a payload size equal to MTU, the network
  330. should be efficient.  Given that it was close to 9:00 p.m., Alex gave
  331. up, knowing that there are other ways to fix this.
  332.  
  333. A short discussion, but no less passionate, followed about transport
  334. layer checksum.  Alex and Jim argued for preserving in SIPP the IPv4
  335. checksum characteristics.  A slight change in the specifications will
  336. reflect the consensus reached.
  337.  
  338. Around 9:00 p.m., we all left the meeting with a sense of
  339. accomplishment.  Everyone was tired, but the general consensus among all
  340. participants was that the meeting was extremely productive, on target,
  341. and very successful.
  342.  
  343. Participants at the meeting felt this was a very worthwhile event, and
  344. that it had the technical spirit of the work we should be doing at
  345. working group meetings for any work.
  346.  
  347.  
  348. SIPP Specification Update
  349.  
  350. Steve Deering presented a summary of the changes reflected in the
  351. current SIPP specification.
  352.  
  353.  
  354.    o The `flow label' is now specified as follows:
  355.  
  356.             4      4           24
  357.          +-----+--------+------------------+
  358.          | Ver | TCLASS | FLOW ID          |
  359.          +-----+--------+------------------+
  360.  
  361.      A flow is uniquely identified by the source address and flow ID.
  362.      The flow ID is chosen randomly by the source.  (There was some
  363.      discussion about the value of random flow IDs for authentication.)
  364.      Flow forwarding state is obtained from a control protocol or from
  365.      information elsewhere in packet.  All packets in the same flow must
  366.      originate with the same destination address, hop-by-hop header
  367.      options, and routing header.
  368.      `Traffic class' (TCLASS) specifies the priority of a packet
  369.      relative to other packets from the same source.  Two priority
  370.      ranges are defined:  flow controlled traffic and non-flow-control
  371.      traffic.
  372.  
  373.    o The authentication header in included in the main specification.
  374.      It currently specifies MD5.  Some concern was expressed that MD5
  375.      might be too slow.
  376.  
  377.    o The hop-by-hop options header was added.
  378.  
  379.    o Addressing details, ICMP, and IGMP were moved to separate
  380.      documents.  There was some discussion that the basic address
  381.      formats should be in the base SIPP document.
  382.  
  383.  
  384. Steve Deering also pointed out some corrections to the latest
  385. specification.
  386.  
  387.  
  388.    o Minor layout changes to fragment header and the routing header
  389.    o UDP checksum value of zero disallowed from SIPP source
  390.    o Corrected language for hop-by-hop options field size
  391.  
  392.  
  393. These changes will be reflected in the next version of the
  394. specification.
  395.  
  396.  
  397. ICMP and IGMP for SIPP
  398.  
  399. Ramesh Govindan presented a summary of the current ICMP and IGMP for
  400. SIPP specification.
  401.  
  402. The ICMP message format:  The header preceding the ICMP message must
  403. have a payload type of 1.  The pseudo-header checksum is the same as for
  404. TCP (except for IPv4 (C-Bit = 1) omit packet length).
  405.  
  406. The processing rules for SIPP ICMP are:
  407.  
  408.  
  409.   a) Silently discard unknown type messages.
  410.  
  411.   b) Include as much as possible of offending packet as will fit in 576
  412.      octets.
  413.      A comment was made that it might be better if all pertinent
  414.      information was included.  Concern was raised about the case when
  415.      the routing header had 255 entries.
  416.  
  417.   c) De-multiplex based on the original message payload type.
  418.  
  419.   d) Must not send error messages in response to:
  420.  
  421.       -  Error messages
  422.       -  Packets addressed to multicast destination
  423.       -  Packet sent as link-layer broadcast
  424.       -  Not-initial fragment
  425.       -  SIPP special address
  426.  
  427.      Should not send more than n ICMP message per second for each error
  428.      source
  429.  
  430.  
  431. Deering suggested an extension to allow MTU discovery when using
  432. multicast.  There was also a discussion about rate limiting ICMP error
  433. messages.
  434.  
  435. For ICMP destination unreachable there are five codes defined:
  436.  
  437.  
  438.      Destination address unknown
  439.      Payload type unknown
  440.      Port unreachable
  441.      Packet too big
  442.      Administrative prohibited
  443.  
  444.  
  445. There was a discussion about need for `router unreachable' (to replace
  446. network unreachable)
  447.  
  448. It was noted that the original ICMP codes should be used.
  449.  
  450. There was a discussion to add `prefix unreachable.'  It was decided to
  451. add a `cluster unreachable' type.
  452.  
  453. A question was raised about the need for a non-authenticated code point?
  454.  
  455. A question was raised about the need for a flow state lost message?
  456. Perhaps a new ICMP message?  Steve Deering said that currently this is
  457. done in the flow state mechanism, and a separate message is not
  458. required.  If a router can not use the flow ID, then it should just
  459. forward the packet with best effort.
  460.  
  461. The discovery message will be used for both solicitation and
  462. advertisement and will have type/length/value (TLV) encoded
  463. ``extensions'' similar to the SIPP hop-by-hop option.  The group reached
  464. consensus on basic formats.  Bill Simpson will put out document on new
  465. formats.
  466.  
  467. Media address extension contains the link layer address of the interface
  468. on which the message was sent.  Erik Nordmark said this is needed for
  469. things like redirect (to avoid separate address resolution messages).
  470.  
  471. Dino Farinacci asked if these can these be unicast for networks like
  472. X.25?  Bill Simpson said that on networks which support multicast no,
  473. but on nets that do not support multicast it would be okay.
  474.  
  475. Erik Nordmark said we need to define formats for specific media types.
  476. Bill Simpson said to use assigned number, just like ARP. Dino said that
  477. IDRP has a similar feature, and we might want to use that method.
  478.  
  479. The routing information extensions include:
  480.  
  481.      Address sequence
  482.      Prefix length
  483.      Preference
  484.  
  485.  
  486. There were some concerns raised about the contents of these documents.
  487. Should there be a single ICMP messages document?  A separate document
  488. for discovery formats?  Something else?  The group consensus was to have
  489. a single message format specification with a separate ``explanations''
  490. document.
  491.  
  492.  
  493. SIPP Dynamic Host Address Assignment
  494.  
  495. Susan Thompson presented the work on dynamic host address assignment.
  496. There are four different combinations which the dynamic mechanisms need
  497. to work.  These are:
  498.  
  499.  
  500.    o DHCP (with new options) for hosts without any routers
  501.  
  502.    o SIPP router discovery to allow host to discover subnet prefix from
  503.      a router
  504.  
  505.    o SIPP router discovery and IPv4 DHCP
  506.  
  507.    o SIPP router discovery and SIPP DHCP
  508.  
  509.  
  510. All of these mechanisms assume the host has an unique identifier.
  511.  
  512. Three new DHCP options are defined to support IPAE hosts.  These are:
  513.  
  514.  
  515.      SIPP prefix
  516.      IPAE IPv4 reachability mask
  517.      List of address sequences of SIPP routers
  518.  
  519.  
  520. Options are encoded as tag octet, length octet, and value.  The options
  521. support address sequences and support a single SIPP prefix.
  522.  
  523. SIPP router discovery works by a router advertising local use and global
  524. subnet prefixes.  It can solicit a router advertisement on startup or
  525. when an interface is enabled.  Hosts maintain lists of subnet prefixes,
  526. masks, and timer, local use addresses, and global address sequences.
  527. Their lists are updated on receipt of a router advertisement.  Lists are
  528. also updated on expiration of a timer.
  529.  
  530. On receipt of a router advertisement per interface a host will:
  531.  
  532.  
  533.    o Add a local use address when it gets a new local prefix
  534.    o Add a global address sequence when it gets a new global prefix
  535.    o Add new subnet prefixes to list
  536.    o Update lifetime of existing subnet prefixes
  537.  
  538.  
  539. The choice of subnet prefixes used should be configurable.  Hosts will
  540. delete the associated address sequence when a prefix times out.
  541.  
  542. Address sequences are formed generally by concatenation of a subnet
  543. prefix and an interface ID. Hosts can use localuse prefix to form a
  544. local use address.  Interface can be an IEEE 802 MAC layer address.
  545. This is useful for intra-site communication and for communicating with
  546. SIPP DHCP.
  547.  
  548. The global prefix is used to form a global address sequence.  In this
  549. case the identifying address is a globally unique address.  These
  550. address sequences are not IPv4 compatible and the address sequence must
  551. be at least length two.  The interface ID is the MAC hardware address,
  552. if it fits in an 64bit address.  SIPP DHCP can be used to acquire an
  553. interface identifier.
  554.  
  555. The use of SIPP router discovery and IPv4 DHCP work by learning the SIPP
  556. prefix by listening to router advertisements and using IPv4 DHCP to
  557. acquire an IPv4 address.  These are concatenated to form an IPv4
  558. compatible SIPP address.  This only supports single subnet prefix per
  559. interface.
  560.  
  561. SIPP router discovery and SIPP DHCP work by using the router discovery
  562. to learn the global prefix and SIPP DHCP to acquire a SIPP address
  563. sequence.  This approach supports multiple prefixes per interface.
  564.  
  565. The reason for defining SIPP DHCP is that current DHCP is IPv4 specific.
  566. It needs to support multiple bindings per interface.  SIPP DHCP is
  567. simpler because the SIPP host can form a local use address itself
  568. because the SIPP host learns its subnet from SIPP router discovery.
  569.  
  570. A SIPP DHCP server will support both IPv4 and SIPP clients.  The two
  571. types are distinguished by the use of different opcodes in the message.
  572. IPv4 compatible addresses are allocated out of a common database with
  573. IPv4 addresses.
  574.  
  575. SIPP DHCP maps subnet prefix and client identifier to an address
  576. sequence and lease time.  The operations supported are:
  577.  
  578.  
  579.    o Allocate and bind an address sequence to a client in the subnet
  580.    o Look up an existing address sequence in a subnet
  581.    o Renew the lease time of a specified address sequence
  582.    o Delete specified binding and deallocate address sequence
  583.  
  584.  
  585. After the lease time expires, the server may delete the binding and
  586. deallocate the address sequence.
  587.  
  588. DHCP should allow for multiple servers to offer address sequences in the
  589. same subnet.  Unfortunately, no mechanism to ensure consistency between
  590. them exists today.  Servers cannot administer the same range of
  591. addresses in a subnet and ensure that a single binding exists per host
  592. per subnet.  The implications are that a potential tow step allocation
  593. procedure (discover and select) and identify single binding when
  594. necessary are required.
  595.  
  596. Address allocation with multiple servers works by the client
  597. multicasting a discovery message specifying the subnet.  The servers
  598. make offers.  The client chooses one offered address sequence.  The
  599. client multicasts assign specifying offer and server.  Specified servers
  600. send an acknowledgement, and others retract their offer.  Other choices
  601. for this are that servers assign address sequence with zero lease.
  602. Servers return an acknowledgement when binding exists.
  603.  
  604. Address renewal works by a client unicasting a renew message specifying
  605. the binding and server.  The client multicasts a renew when the lease
  606. time nears expiration, and retransmits at half of the remaining lease
  607. time.  Specified server extends and returns lease time in
  608. acknowledgement.
  609.  
  610. Addresses are looked up by a client multicasting a query message
  611. specifying the subnet.  Servers with a binding return address sequence.
  612. More than one address sequence may be returned.  It is useful to avoid a
  613. two step operation on look up and to determine whether binding exists.
  614. The DHCP equivalent is to verify a specified address.
  615.  
  616.  
  617. IPAE Overview
  618.  
  619. Bob Gilligan presented an overview of IPAE.
  620.  
  621. The objectives of IPAE are to:
  622.  
  623.  
  624.    o Allow SIPP and IPv4 hosts and routers to interoperate
  625.    o Allow the Internet to transition smoothly from IPv4 to SIPP
  626.    o Extend the life of the installed base of IPv4 hosts and routers
  627.  
  628.  
  629. IPAE's features include:
  630.  
  631.  
  632.    o SIPP and IPv4 hosts can interoperate until IPv4 addresses run out.
  633.    o Hosts do not need to change addresses when upgraded.
  634.    o Hosts and routers can upgrade incrementally.
  635.    o No upgrade interdependencies between hosts, routers, or DNS.
  636.    o SIPP and IPv4 within a domain interoperate after IPv4 addresses run
  637.      out.
  638.    o Leverages installed base of IPv4 routers.
  639.  
  640.  
  641. IPAE mechanisms are composed of a number of mechanisms to make
  642. transition possible.  Most visible is SIPP address format that is
  643. designed to be compatible with IPv4 address (contains IPv4 address).
  644. IPv4 are treated as subnet in SIPP routing.  This allows SIPP to be run
  645. over an IPv4 cloud.  Part of this is a mechanism to tunnel SIPP traffic
  646. in IPv4 (tunneling).  Other is to translate IPv4 and SIPP. This permits
  647. SIPP traffic to flow over most of the Internet.  IPv4 to SIPP
  648. translation to help with IPv4 routing scaling.
  649.  
  650. The IPAE address format is:
  651.  
  652. 64-bit compatible SIPP address format:
  653.  
  654.  
  655.       1      31               32
  656.     +---+---------------+---------------+
  657.     | C |  SIPP Prefix  | IPv4 Address  |
  658.     +---+---------------+---------------+
  659.  
  660.  
  661. This allows IPAE addresses to be assigned to SIPP hosts, with the C bit
  662. defining which (C=1 is IPv4, C=0 is SIPP).
  663.  
  664. The idea behind the IPAE routing model is that we can treat clusters of
  665. IPv4 as a single SIPP subnet.  Packets to SIPP destinations within a
  666. cluster are tunneled SIPP in IPv4.  Packets to IPv4 destinations within
  667. clusters are translated to IPv4.  Packets to on-subnet destinations sent
  668. in raw SIPP or IPv4 form.  Tunnel/translate/raw decision is made by
  669. using the C-bit and IPv4 reachability mask.
  670.  
  671.  
  672.    o IPv4 clusters
  673.  
  674.      Requirement is that IPv4 be routable to all subnets in a cluster,
  675.      with at least one IPAE router at the border.  Cluster can be
  676.      identified by a single SIPP address prefix.  IPv4 routing is
  677.      allowed between clusters and can run parallel to SIPP routing.
  678.      Cluster can range from the entire Internet to one subnet.
  679.  
  680.    o SIPP/IPv4 routing model
  681.  
  682.      IPAE routers must route both SIPP and IPv4 traffic.  They
  683.      participate in both SIPP and IPv4 routing protocols.  IPAE hosts
  684.      have neighbor IPv4 and SIPP routers.  Neighbor SIPP routers may be
  685.      on the same subnet, and off subnet but on the same cluster.
  686.  
  687.    o Host and router configuration
  688.  
  689.      IPv4 reachability mask (cluster mask) defines the IPv4 scope of the
  690.      cluster.  SIPP address of neighbor SIPP routers (both on subnet and
  691.      off subnet within cluster).  Configuration mechanisms in system
  692.      discovery, BOOTP/DHCP extensions, and configuration files.
  693.  
  694.      SIPP in IPv4 tunneling is used to reach SIPP destination in clouds.
  695.      Can always tunnel to a destination in an IPv4 cloud if you have its
  696.      SIPP address.
  697.  
  698.    o Translation of SIPP to IPv4
  699.  
  700.      C-bit and reachability mask tell if packet should be translated.
  701.      No configuration or mapping table is needed.
  702.  
  703.    o DNS Algorithm
  704.  
  705.      A new DNS record format has been defined.  Records may be added for
  706.      both IPv4 and SIPP hosts.  SIPP records are optional, IPv4 records
  707.      must exist.  The hostname lookup algorithm is:
  708.  
  709.       1. Lookup SIPP records first, IPv4 records second.
  710.       2. Traffic is SIPP if SIPP record is found.
  711.       3. Traffic is IPv4 if IPv4 record is found.
  712.  
  713.  
  714. Jim Bound suggested getting rid of the term IPAE Address; he said it
  715. should just be a SIPP address and thinks naming is important to make
  716. these issues clear.
  717.  
  718. There was discussion about what can and cannot talk to a IPv4 address.
  719. How will host know if its SIPP address is an IPv4 address capable
  720. address, or is non-IPv4 capable.  Need to know if it can be translated
  721. or not.
  722.  
  723. This lead to a long discussion about the complexity of IPAE. It would
  724. appear that many people are having difficulty understanding why the
  725. mechanisms are there and how they work.  The conclusion was that IPAE
  726. will need to be simplified and a new document written which makes the
  727. issues clear.
  728.  
  729.  
  730. Attendees
  731.  
  732. Kannan Alagappan         kannan@sejour.lkg.dec.com
  733. Steve Alexander          stevea@lachman.com
  734. Michael Anello           mike@xlnt.com
  735. David Arneson            arneson@ctron.com
  736. Randall Atkinson         atkinson@itd.nrl.navy.mil
  737. Jim Binkley              jrb@cs.pdx.edu
  738. Ute Bormann              ute@informatik.uni-bremen.de
  739. Michael Bradley          bradley@mdd.comm.mot.com
  740. Michael Bringmann        michael@rd.qms.com
  741. Jerry Burchfield         burchfiel@bbn.com
  742. Ross Callon              rcallon@wellfleet.com
  743. Frank Cannata            cannata@cabletron.com
  744. John Carlson             johnc@cac.washington.edu
  745. Paul Chang               pchangmac@asante.com
  746. Ping Chen                ping@apple.com
  747. Robert Christ            rchrist@fhcrc.org
  748. Paul Ciarfella           ciarfella@took.lkg.dec.com
  749. Bobby Clay               clay@pscni.nasa.gov
  750. Alex Conta               conta@lassie.lkg.dec.com
  751. Matt Crawford            crawdad@fncent.fnal.gov
  752. Jonathon Crowhurst       crowhurs@admin.ogi.edu
  753. Stephen Deering          deering@parc.xerox.com
  754. Chuck deSostoa           chuckd@cup.hp.com
  755. Peter DiCamillo          Peter_DiCamillo@brown.edu
  756. Donald Eastlake          dee@lkg.dec.com
  757. Kjeld Borch Egevang      kbe@craycom.dk
  758. William Fink             bill@wizard.gsfc.nasa.gov
  759. H. Tom Fitzpatrick       fitz@ddn.af.mil
  760. Paul Francis             francis@cactus.slab.ntt.jp
  761. Jerome Freedman          jfjr@mbunix.mitre.org
  762. William Gilliam          wag@cup.hp.com
  763. Robert Gilligan          Bob.Gilligan@Eng.Sun.Com
  764. Ramesh Govindan          rxg@thumper.bellcore.com
  765. Peter Grehan             grehan@flotsm.ozy.dec.com
  766. Chris Gunner             gunner@dsmail.lkg.dec.com
  767. William Haggerty         haggerty@ctron.com
  768. Marc Hasson              marc@mentat.com
  769. Robert Hinden            hinden@eng.sun.com
  770. Richard Hovey            hovey@silkie.enet.dec.com
  771. Christian Huitema        Christian.Huitema@sophia.inria.fr
  772. Yoshinobu Inoue          shin@hodaka.mfd.cs.fujitsu.co.jp
  773. Ronald Jacoby            rj@sgi.com
  774. Robert Karsten           robert@lachman.com
  775. Alan Katz                katz@adonis.com
  776. Manu Kaycee              kaycee_m@timeplex.com
  777. John Larson              jlarson@parc.xerox.com
  778. Paul Leach               paulle@microsoft.com
  779. Fong-Ching Liaw          fong@eng.sun.com
  780. Joshua Littlefield       josh@cayman.com
  781. Charles Lynn             clynn@bbn.com
  782. J. Scott Marcus          smarcus@bbn.com
  783. David Marlow             dmarlow@relay.nswc.navy.mil
  784. Michael Massa            mikemas@microsoft.com
  785. Daniel McDonald          danmcd@itd.nrl.navy.mil
  786. Glenn McGregor           glenn@lloyd.com
  787. Michael Michnikov        mbmg@mitre.org
  788. Stephen Nahm             sxn@sun.com
  789. Rina Nathaniel           rina@rnd-gate.rad.co.il
  790. Erik Nordmark            nordmark@eng.sun.com
  791. William Nowicki          nowicki@sgi.com
  792. David O'Leary            doleary@cisco.com
  793. Krishnan Parameshwaran   krishnap@microsoft.com
  794. Brad Parker              brad@fcr.com
  795. Andrew Pearson           pearson@snmp.com
  796. Alan Perelman            a_perelman@emulex.com
  797. George Phillips          phillips@cs.ubc.ca
  798. Ram Ramanathan           ramanath@bbn.com
  799. Ron Roberts              rgr@stanford.edu
  800. William Robertson        rob@agate.berkeley.edu
  801. Chris Seabrook           cds@ossi.com
  802. Katsuhiro Sebayashi      sebayasi@tnlab.ntt.jp
  803. William Simpson          Bill.Simpson@um.cc.umich.edu
  804. Frank Solensky           solensky@ftp.com
  805. Fumio Teraoka            tera@csl.sony.co.jp
  806. Richard Thomas           rjthomas@bnr.ca
  807. Susan Thomson            set@bellcore.com
  808. Randy Turner             rturner@qms.com
  809. Tony Valle               valle@huntsville.sparta.com
  810. John Veizades            veizades@wco.ftp.com
  811. Gary Veum                veum@boa.gsfc.nasa.gov
  812. Mark Vickers             mvickers@fhcrc.org
  813. Justin Walker            justin@apple.com
  814. Jost Weinmiller          jost@prz.tu-berlin.de
  815. Geoff White              geoff@nexsys.net
  816. Walter Wimer             ww0n+@andrew.cmu.edu
  817. Jane Wojcik              jwojcik@bbn.com
  818. Shian-Tung Wong          shian@dcsd.sj.nec.com
  819.  
  820.