home *** CD-ROM | disk | FTP | other *** search
/ Internet Standards / CD1.mdf / INET / IETF / ST2 / 94MAR.MIN < prev    next >
Encoding:
Text File  |  1994-06-07  |  14.2 KB  |  403 lines

  1.  
  2. CURRENT_MEETING_REPORT_
  3.  
  4.  
  5.  
  6. Reported by Steve Jackowski/Syzygy Communications
  7.  
  8. Minutes of the Internet Stream Protocol V2 Working Group (ST2)
  9.  
  10. This session of the IETF ST-II Working Group meeting was convened on 30
  11. March 1994 at the Seattle Sheraton.  Luca Delgrossi chaired the meeting
  12. and it was announced that Lou Berger would co-chair.
  13.  
  14. The main goal of the meeting was to continue progress on the new RFCs
  15. for ST-II. In particular, ideas presented at the GMU meeting, and
  16. debated since, were to be finalized to be incorporated into the draft
  17. documents.
  18.  
  19. The agenda for this meeting was as follows:
  20.  
  21.  
  22.    o Review the results and discussion from the 9-10 February 1994 GMU
  23.      meeting
  24.  
  25.    o Review the initial draft documents.
  26.  
  27.    o Present planned modifications/clarifications to ST-II for final
  28.      approval.
  29.  
  30.    o Discuss and finalize ST-II service definitions.
  31.  
  32.    o Finalize both service and implementation state diagrams.
  33.  
  34.    o Attempt to reach consensus on the outstanding technical issues:
  35.  
  36.       -  How to implement groups of streams.
  37.       -  Refine definition of the JOIN implementation.
  38.       -  Discuss problems of source routing
  39.       -  Standardize FlowSpec formats.
  40.  
  41.    o Identify open issues.
  42.  
  43.    o Establish an attack plan for resolving open issues and finalizing
  44.      RFCs.
  45.  
  46.  
  47. The group then reviewed the discussions from the GMU meeting.  The major
  48. topics included:
  49.  
  50.  
  51.    o State diagrams for both the ST-II service and implementation.
  52.  
  53.    o Elimination of HIDs to simplify connection setup and
  54.      implementation.
  55.  
  56.    o Elimination of options/parameters which are redundant or seldom
  57.      used today.
  58.  
  59.    o The requirement for groups of streams.
  60.  
  61.    o Simplification of the process for stream joining by receivers.
  62.  
  63.    o The RFC structure:  There will be three initial Internet-Drafts
  64.       -  Intro to ST-II
  65.       -  High Level Design
  66.       -  Protocol
  67.  
  68.  
  69. The current drafts of the new RFC documents were discussed.  The
  70. documents are available via FTP at:  ibminet.awdpa.ibm.com in pub/st.
  71.  
  72. Comments were requested to be sent to the mail list by 15 April.
  73.  
  74. Based on the GMU meeting and ongoing discussion since, several
  75. modifications and clarifications to ST-II were presented, discussed, and
  76. finalized.
  77.  
  78. It was noted that RFC 1190 needed clarification on how ST-II fits from
  79. both a macroscopic (user application) and implementor's (with respect to
  80. other system resources) point of view.  ST-II requires associated
  81. entities:  Resource manager with access control, resource reservation,
  82. resource scheduling, routing functions, and regulation/policing/data
  83. enforcement are critical to a successful ST-II implementation.  These
  84. co-requisites will be described in the new Introduction to ST-II
  85. document.
  86.  
  87. ST-II service needs to be described via high level state diagrams to
  88. enable applications to properly use the service and for implementors to
  89. understand how applications will actually be used.  In particular,
  90. clarification as to when data can be sent is crucial.  That is, is it
  91. acceptable for data to be sent before a connection is completely
  92. established?.
  93.  
  94. Implementor state diagrams/state machines and transitions are separate
  95. from the service level diagrams.  They will actually describe internal
  96. state transitions for origin, router, and target ST-II agents.
  97.  
  98. It was agreed to eliminate the full duplex connect.  It was pointed out
  99. that though this was seldom used in most implementations, it was the
  100. only way to allow a target to initiate a JOIN to an existing stream.
  101. This capability will be preserved through the use of a much simpler
  102. explicit JOIN request to be discussed later.
  103.  
  104. HID negotiation was eliminated because it can fail, and is complicated
  105. in multicast environments.  Instead ST-II will use a stream ID (SID) as
  106. a globally unique identifier.  This is composed of the origin IP address
  107. plus a unique ID. Use of SID will not only simplify the connection
  108. establishment, it means that the origin will be known for each data
  109. packet.  This will have major implications in simplifying routing and
  110. error handling.
  111.  
  112. Timestamps were eliminated and it was agreed to use a bit in the header
  113. to differentiate data from SCMP. There will still be unused bits in the
  114. header - originally drop priority.  These may now be free or reused
  115. depending on final conclusions regarding use of sub-streams.
  116.  
  117. It was agreed to eliminate the RVLID and SVLID in SCMP packets.  This is
  118. a consequence of elimination HIDs.
  119.  
  120. To simplify the CONNECT process with long target lists, it was agreed to
  121. add a fragmentation capability for SCMP packets.  Data will not be
  122. segmented.  The fragmentation feature will be written up and distributed
  123. to the list.
  124.  
  125. For stream setup we must create a stream ID, invoke the routing
  126. function, and set up TargetList which is either empty, less than the
  127. MTU, or larger than MTU where fragmentation is used.  Then make the
  128. reservation and propagate the CONNECT.
  129.  
  130. Error_in_response is eliminated.
  131.  
  132. How do we handle ERROR_IN_REQUEST? First, eliminate pointer to error.
  133. This is awkward.  After some discussion, it was agreed to send back the
  134. errored PDU.
  135.  
  136. As a consequence of these clarifications and modifications, ST-II has
  137. been significantly simplified.  The following ST-II messages and
  138. associated parameters will be eliminated:
  139.  
  140.  
  141.      Error in response
  142.      HID APPROVE
  143.      HID CHANGE
  144.      HID CHANGE REQ
  145.      FreeHIDs
  146.      HID
  147.      NAME
  148.      RFlowSpec
  149.      Rgroup
  150.      RHID
  151.      RNAME
  152.      HID REJECT
  153.      Timestamps
  154.      FDX
  155.      point to point
  156.      Rev-charge
  157.  
  158.  
  159. The functionality message type, JOIN, has been added.
  160.  
  161.  
  162. JOIN
  163.  
  164. The JOIN message is an additional SCMP message with a TargetList,
  165. Flowspec and user data.  It will be used to simplify the addition of a
  166. target system to a pre-existing stream at the target's request.
  167.  
  168. At connect time, there are four authorization levels that the stream
  169. origin can specify with respect to JOINs:
  170.  
  171.  
  172.      00 do not allow joins
  173.      01 ask the origin before allowing target to join.
  174.      10 okay to join but notify origin
  175.      11 okay to join (do not have to notify)
  176.  
  177.  
  178. In attempting to JOIN a stream, the target could specify a FlowSpec with
  179. resource requirements that are equal to, less, or greater than the
  180. original stream's requirement.  If the JOINing target needs more than
  181. the current FlowSpec, it must first accept the current FlowSpec and then
  182. propose a change later.
  183.  
  184. Note that this is not an enhancement.  The previous RFC allowed joining
  185. through full duplex.  That is, a full duplex session could be requested
  186. with the main stream FlowSpec set to zero, this created a reverse stream
  187. only:  effectively an inefficient JOIN request by the receiver.
  188.  
  189. This explicit implementation of JOIN simplifies this function.  It is
  190. the best solution now that full duplex CONNECT is eliminated from the
  191. protocol.
  192.  
  193.  
  194. Service Model and Implementation State Machines
  195.  
  196. The service model for application state information was accepted with
  197. some discussion about empty streams skipping the pending state.  This
  198. resulted in some discussion about combining ADD and PENDing states.
  199. Although it is not necessarily optimal, the current model is sufficient.
  200. Implementors may reduce states as long as service is identical.  Refer
  201. to state transition table for details, not just to the service model
  202. state diagram.  Note that the diagram will be corrected to include DROPs
  203. only from the established state.
  204.  
  205. The Origin state machine is complicated because of target status.  The
  206. Target state machine is simple.  The Router has two state machines.  One
  207. for the origin side, one for the target side.
  208.  
  209. These state machines will be updated by Murali by 15 April to reflect
  210. the results of the discussions and posted for review.
  211.  
  212. We then continued with discussion of outstanding technical issues and
  213. this resulted in the bulk of the discussion for the meeting.
  214.  
  215. Although the actual state diagrams seem to be solid a question was
  216. raised:  should the states be kept on a per-target or per next-hop
  217. basis?  This was tabled for more discussion on pros and cons.
  218.  
  219. One topic was whether ACKs should be sent in response to a connect
  220. before an ACCEPT or REFUSE is generated.  This is consistent with most
  221. SCMP messages but requires an additional state transition during session
  222. setup.  Opinion was split so this topic was tabled for later discussion.
  223.  
  224.  
  225. Transmission of Data
  226.  
  227. There was much discussion about when data can be sent.  I.e., can data
  228. be sent before the stream is established, and if so is this an error
  229. condition, or should the data be handled if possible?
  230.  
  231. The strongest arguments against are that the receiver(s) may not have
  232. resources, and the routers may have significant overhead and complex
  233. decision processes in deciding what to do with data for streams that are
  234. not established.
  235.  
  236. Decision:  No data will be sent unless an ACCEPT has been received on
  237. that path for that stream.
  238.  
  239.  
  240.  
  241. Groups of Streams
  242.  
  243. Groups of streams are required to allow resource sharing.  Groups are
  244. mentioned in RFC 1190 but not well defined.  As such there was
  245. discussion on implementation of groups.  It was agreed that group
  246. processing would be performed.  Key points about groups include:
  247.  
  248.  
  249.    o Group membership is defined at stream creation time.
  250.    o The group persists until the stream is deleted.
  251.    o A stream may belong to multiple groups.
  252.  
  253.  
  254. A group is equal to a stream plus a relationship.
  255.  
  256. Initial possible sharing relationships will include:
  257.  
  258.  
  259.    o bandwidth sharing (mandatory)
  260.    o fate
  261.    o path
  262.    o subnet addresses
  263.  
  264.  
  265. The last three should be done by an ST agent on a best-effort basis, and
  266. depend on the capabilities of ancillary modules like the MAC for
  267. multicast group sharing.
  268.  
  269. A GROUP parameter will be added to the CONNECT packet.  Routers are
  270. responsible for keeping group information.
  271.  
  272. Format of the GROUP parameter will include a unique ID as well as the
  273. group requestor's IP address.  This is based on the current group
  274. mechanism.
  275.  
  276. There was concern over tying the group to a requester since the
  277. originator may leave the group.  A timestamp will be a part of the group
  278. identifier to assure uniqueness.  Each relationship is represented by a
  279. bitmap in the GROUP parameter.  If bandwidth sharing is specified, an
  280. additional parameter is included to represent the maximum number of
  281. maximum bandwidth streams that can send simultaneously.  For example, if
  282. audio were sent to multiple receivers, the total number of acceptable
  283. simultaneous audio streams is represented.
  284.  
  285.  
  286. Data Received from Multiple Previous Hops Simultaneously on a Single
  287. Stream
  288.  
  289. It was pointed out that multiple copies of data can be sent on a stream
  290. in certain circumstances.  This problem can occur when the data path is
  291. bifurcated (because of a temporary error), if there are multiple targets
  292. with different policies, or if source routing based on the target is
  293. used.
  294.  
  295. The group decided to select a simple approach.  The solution is to
  296. refuse the connection or to create an error message when it is detected
  297. that the same stream is received at an agent from two different network
  298. interfaces.  This means that certain types of policies or source routing
  299. combination will not be supported.
  300.  
  301.  
  302. FlowSpec
  303.  
  304. The group agreed to add FlowSpec version 0 to facilitate
  305. interoperability testing.  Version 0 means that no FlowSpec checking is
  306. done.  A new FlowSpec is proposed as the base standard.  Version 7 will
  307. be structured as follows:
  308.  
  309. QoS class will be added to offer guaranteed or predictive options.
  310.  
  311. It is proposed that each negotiable parameter have two values:  desired
  312. and min/max acceptable value.  The desired is updated as the FlowSpec
  313. moves to reflect the best reservation that can be made by that node.
  314.  
  315. Delay is handled specially.  It includes both desired and maximum delay,
  316. current delay, and minimum delay to assist in jitter control.  Current
  317. delay includes this agent's delay as well as propagation delay to the
  318. downstream node.  Target nodes will add queuing delay to the
  319. applications.
  320.  
  321. IP tunnelling count, hop count, and recovery timeout will be added to
  322. the ACCEPT and CONNECT packets, not placed in the FlowSpec as some
  323. suggested.
  324.  
  325.  
  326. Sub-streams
  327.  
  328. Discussion of sub-streams was a hot issue that was temporarily suspended
  329. until all have read Luca's paper on filtering.
  330.  
  331.  
  332. ST-II over sub-net
  333.  
  334. Ethertype is an issue.  Current ST-II implementations use an unassigned
  335. Ethertype (0x5354 = ``ST''). Either an assigned type value should be
  336. used or, as specified in the RFC, IP's Ethertype should be used.  Chairs
  337. will make a proposal whether Xerox should be contacted and an official
  338. type requested.
  339.  
  340.  
  341. Conclusion
  342.  
  343. Because time was running out, and most of the technical issues were
  344. discussed, we assigned action items for short-term deliverables to the
  345. responsible parties:
  346.  
  347.  
  348.    o State machines (Murali by 4/15)
  349.    o Groups, JOIN and FlowSpec (Luca)
  350.    o Fragmentation of SCMP (Lou)
  351.    o Sub-streams (All ! Luca)
  352.    o Review of drafts (All by 4/18)
  353.    o Drafts for Toronto (Luca)
  354.  
  355.  
  356. We also listed most of the open issues which we have not had a chance to
  357. discuss in detail and assigned a few responsible parties to prepare
  358. proposals for later discussion.  These included:
  359.  
  360.  
  361.    o HID - SID (Charlie)
  362.    o Sub-streams (Luca)
  363.    o Hello/Status/Notify (Murali)
  364.    o recovery
  365.    o Routing
  366.    o IP encapsulation
  367.    o ST-II MIB
  368.    o subnets
  369.    o Preemption
  370.    o Reason Codes
  371.  
  372.  
  373. With time running out, Luca brought the meeting to a close, noting that
  374. there was still much work to be done before the July meeting in Toronto.
  375.  
  376.  
  377. Attendees
  378.  
  379. Edward Allen             eallen@wellfleet.com
  380. Stephen Batsell          batsell@itd.nrl.navy.mil
  381. Lou Berger               lberger@bbn.com
  382. Carsten Bormann          cabo@informatik.uni-bremen.de
  383. Ute Bormann              ute@informatik.uni-bremen.de
  384. Michael Brescia          brescia@bbn.com
  385. Stephen Casner           casner@isi.edu
  386. Eric Crawley             kaufman@scrc.symbolics.com
  387. Luca Delgrossi           luca@ibmpa.awdpa.ibm.com
  388. Paul Goransson           paulg@wellfleet.com
  389. Don Hoffman              hoffman@eng.sun.com
  390. Kathy Huber              khuber@wellfleet.com
  391. Phil Irey                pirey@relay.nswc.navy.mil
  392. Steven Jackowski         stevej@syzygycomm.com
  393. Charles Lynn             clynn@bbn.com
  394. Joseph Pang              pang@bodega.stanford.edu
  395. J. Mark Pullen           mpullen@cs.gmu.edu
  396. Murali Rajagopal         murali@mitre.org
  397. Sibylle Schaller         schaller@ibmpa.awdpa.ibm.com
  398. Ming-Jye Sheu            msheu@vnet.ibm.com
  399. Michael Speer            michael.speer@sun.com
  400. Sally Tarquinio          sallyt@gateway.mitre.org
  401. Claudio Topolcic         topolcic@bbn.com
  402.  
  403.