summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc6436.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rfc/rfc6436.txt')
-rw-r--r--doc/rfc/rfc6436.txt731
1 files changed, 731 insertions, 0 deletions
diff --git a/doc/rfc/rfc6436.txt b/doc/rfc/rfc6436.txt
new file mode 100644
index 0000000..521846f
--- /dev/null
+++ b/doc/rfc/rfc6436.txt
@@ -0,0 +1,731 @@
+
+
+
+
+
+
+Internet Engineering Task Force (IETF) S. Amante
+Request for Comments: 6436 Level 3
+Category: Informational B. Carpenter
+ISSN: 2070-1721 Univ. of Auckland
+ S. Jiang
+ Huawei
+ November 2011
+
+
+ Rationale for Update to the IPv6 Flow Label Specification
+
+Abstract
+
+ Various published proposals for use of the IPv6 flow label are
+ incompatible with its original specification in RFC 3697.
+ Furthermore, very little practical use is made of the flow label,
+ partly due to some uncertainties about the correct interpretation of
+ the specification. This document discusses and motivates changes to
+ the specification in order to clarify it and to introduce some
+ additional flexibility.
+
+Status of This Memo
+
+ This document is not an Internet Standards Track specification; it is
+ published for informational purposes.
+
+ This document is a product of the Internet Engineering Task Force
+ (IETF). It represents the consensus of the IETF community. It has
+ received public review and has been approved for publication by the
+ Internet Engineering Steering Group (IESG). Not all documents
+ approved by the IESG are a candidate for any level of Internet
+ Standard; see Section 2 of RFC 5741.
+
+ Information about the current status of this document, any errata,
+ and how to provide feedback on it may be obtained at
+ http://www.rfc-editor.org/info/rfc6436.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Amante, et al. Informational [Page 1]
+
+RFC 6436 Flow Label Update November 2011
+
+
+Copyright Notice
+
+ Copyright (c) 2011 IETF Trust and the persons identified as the
+ document authors. All rights reserved.
+
+ This document is subject to BCP 78 and the IETF Trust's Legal
+ Provisions Relating to IETF Documents
+ (http://trustee.ietf.org/license-info) in effect on the date of
+ publication of this document. Please review these documents
+ carefully, as they describe your rights and restrictions with respect
+ to this document. Code Components extracted from this document must
+ include Simplified BSD License text as described in Section 4.e of
+ the Trust Legal Provisions and are provided without warranty as
+ described in the Simplified BSD License.
+
+Table of Contents
+
+ 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2
+ 2. Impact of Current Specification . . . . . . . . . . . . . . . 3
+ 3. Changes to the Specification . . . . . . . . . . . . . . . . . 6
+ 4. Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . 8
+ 5. Security Considerations . . . . . . . . . . . . . . . . . . . 9
+ 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9
+ 7. Informative References . . . . . . . . . . . . . . . . . . . . 10
+ Appendix A. Alternative Approaches . . . . . . . . . . . . . . . 12
+
+1. Introduction
+
+ The flow label field in the IPv6 header was reserved but left
+ Experimental by [RFC2460], which mandates only that "Hosts or routers
+ that do not support the functions of the Flow Label field are
+ required to set the field to zero when originating a packet, pass the
+ field on unchanged when forwarding a packet, and ignore the field
+ when receiving a packet."
+
+ The flow label field was normatively specified by [RFC3697]. In
+ particular, we quote three rules from that RFC:
+
+ a. "The Flow Label value set by the source MUST be delivered
+ unchanged to the destination node(s)."
+
+ b. "IPv6 nodes MUST NOT assume any mathematical or other properties
+ of the Flow Label values assigned by source nodes."
+
+ c. "Router performance SHOULD NOT be dependent on the distribution
+ of the Flow Label values. Especially, the Flow Label bits alone
+ make poor material for a hash key."
+
+
+
+
+Amante, et al. Informational [Page 2]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ Additionally, RFC 3697 does not define the method a host should adopt
+ by default to choose the value of the flow label, if no specific
+ method is in use. It was expected that various signaling methods
+ might be defined for agreeing on values of the flow label, but no
+ such methods have been standardized, except a pre-existing option in
+ RSVP [RFC2205].
+
+ The flow label is hardly used in practice in widespread IPv6
+ implementations, although some operating systems do set it
+ [McGann05]. To some extent, this is due to the main focus being on
+ basic deployment of IPv6, but the absence of a default method of
+ choosing the flow label value means that most host implementations
+ simply set it to zero. There is also anecdotal evidence that the
+ rules quoted above have led to uncertainty about exactly what is
+ possible. Furthermore, various use cases have been proposed that
+ infringe one or another of the rules. None of these proposals has
+ been accepted as a standard and in practice there is no significant
+ deployment of any mechanism to set the flow label.
+
+ The intention of this document is to explain this situation in more
+ detail and to motivate changes to RFC 3697 intended to remove the
+ uncertainties and encourage active usage of the flow label. It does
+ not formally update RFC 3697, but it serves as background material
+ for [RFC6437].
+
+2. Impact of Current Specification
+
+ Rule (a) makes it impossible for the routing system to use the flow
+ label as any form of dynamic routing tag. This was a conscious
+ choice in the early design of IPv6, and there appears to be no
+ practical possibility of revisiting this decision at this stage in
+ the deployment of IPv6, which uses conventional routing mechanisms
+ like those used for IPv4. However, this rule also makes it
+ impossible to make any use at all of the flow label unless hosts
+ choose to set it. It also forbids clearing the flow label for
+ security reasons.
+
+ This last point highlights the security properties, or rather the
+ lack thereof, with regards to the flow label. The flow label field
+ is always unprotected as it travels through the network, because
+ there is no IPv6 header checksum, and the flow label is not included
+ in transport pseudo-header checksums, nor in IPsec checksums. As a
+ result, intentional and malicious changes to its value cannot be
+ detected. Also, it could be used as a covert data channel, since
+ apparently pseudo-random flow label values could in fact consist of
+ covert data [NIST]. If the flow label were to carry quality-of-
+ service semantics, then like the diffserv code point [RFC2474], it
+ would not be intrinsically trustworthy across domain boundaries. As
+
+
+
+Amante, et al. Informational [Page 3]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ a result, some security specialists believe that flow labels should
+ be cleared for safety [LABEL-SEC] [NSA]. These points must be
+ considered when discussing the immutability of the flow label across
+ domain boundaries. In fact, the adjective "immutable" is confusing,
+ since it implies a property that the flow label field does not
+ actually possess. It has therefore been abandoned as a descriptive
+ term in [RFC6437]. It is only used in the present document to
+ explain why it has been abandoned.
+
+ Rule (b) appears to forbid any usage in which the bits of the flow
+ label are encoded with a specific semantic meaning. However, the
+ words "MUST NOT assume" are to be interpreted precisely - if a router
+ knows by configuration or by signaling that the flow label has been
+ assigned in a certain way, it can make use of that knowledge. It is
+ not made clear by the rule that there is an implied distinction
+ between stateless models (in which there is no signaling, so no
+ specific assumption about the meaning of the flow label value can be
+ made) and stateful models (in which there is signaling and the router
+ has explicit knowledge about the label).
+
+ If the word "alone" is overlooked, rule (c) has sometimes been
+ interpreted as forbidding the use of the flow label as part of a hash
+ used by load distribution mechanisms. In this case too, the word
+ "alone" needs to be taken into account - a router is allowed to
+ combine the flow label value with other data in order to produce a
+ uniformly distributed hash.
+
+ Both before and after these rules were laid down, a considerable
+ number of proposals for use of the flow label were published that
+ seem incompatible with them. Numerous examples and an analysis are
+ presented in [RFC6294]. Those examples propose use cases in which
+ some or all of the following apply:
+
+ o The flow label may be changed by intermediate systems.
+
+ o It doesn't matter if the flow label is changed, because the
+ receiver doesn't use it.
+
+ o Some or all bits of the flow label are encoded: they have specific
+ meanings understood by routers and switches along the path.
+
+ o The encoding is related to the required quality of service, as
+ well as identifying a flow.
+
+ o The flow label is used to control forwarding or switching in some
+ way.
+
+
+
+
+
+Amante, et al. Informational [Page 4]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ These proposals require either some form of semantics encoding in the
+ bits of the flow label, or the ability for routers to modify the flow
+ label, or both. Thus, they appear to infringe the rules from RFC
+ 3697 quoted above.
+
+ We can conclude that a considerable number of researchers and
+ designers have been stymied by RFC 3697. On the other hand, some
+ other proposals discussed in [RFC6294] appear to be compatible with
+ RFC 3697. Several are based on the originator of a packet choosing a
+ pseudo-random flow label for each flow, which is one option suggested
+ in RFC 3697. Thus, we can also conclude that there is a useful role
+ for this approach.
+
+ If our goal is for the flow label to be used in practice, the
+ conflict between the various approaches creates a dilemma. There
+ appear to be two major options:
+
+ 1. Discourage locally defined and/or stateful use of the flow label.
+ Strengthen RFC 3697 to say that hosts should set a label value,
+ without necessarily creating state, which would clarify and limit
+ its possible uses. In particular, its use for load distribution
+ and balancing would be encouraged.
+
+ 2. Relax the rules to encourage locally defined and/or stateful use
+ of the flow label. This approach would make the flow label
+ completely mutable and would exclude use cases depending on
+ strict end-to-end immutability. It would encourage applications
+ of a pseudo-random flow label, such as load distribution, on a
+ local basis, but it would exclude end-to-end applications.
+
+ There was considerable debate about these options and their variants
+ during 2010 - 2011, with a variety of proposals in previous versions
+ of this document and in mailing list discussions. After these
+ discussions, there appears to be a view that simplicity should
+ prevail, and that complicated proposals such as defining quality-of-
+ service semantics in the flow label, or sub-dividing the flow label
+ field into smaller sub-fields, will not prove efficient or
+ deployable, especially in high-speed routers. There is also a
+ clearly expressed view that using the flow label for various forms of
+ stateless load distribution is the best simple application for it.
+ At the same time, it is necessary to recognize that the strict
+ immutability rule has drawbacks as noted above.
+
+ Even under the rules of RFC 3697, the flow label is intrinsically
+ untrustworthy, because modifications en route cannot be detected.
+ For this reason, even with the current strict immutability rule,
+ downstream nodes cannot rely mathematically on the value being
+ unchanged. In this sense, any use of the flow label must be viewed
+
+
+
+Amante, et al. Informational [Page 5]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ as an optimization on a best-effort basis; a packet with a changed
+ (or zero) flow label value should never cause a hard failure.
+
+ The remainder of this document discusses specific modifications to
+ the standard, which are defined normatively in a companion document
+ [RFC6437].
+
+3. Changes to the Specification
+
+ Although RFC 3697 requires that the flow label be delivered
+ unchanged, as noted above, it is not included in any transport-layer
+ pseudo-header checksums nor in IPsec authentication [RFC4302]. Both
+ RFC 2460 and RFC 3697 define the default flow label to be zero. At
+ the time of writing, this is the observed value in an overwhelming
+ proportion of IPv6 packets; the most widespread operating systems and
+ applications do not set it, and routers do not rely on it. Thus,
+ there is no reason to expect operational difficulties if a careful
+ change is made to the rules of RFC 3697.
+
+ In particular, the facts that the label is not checksummed and rarely
+ used mean that the "immutability" of the label can be moderated
+ without serious operational consequences.
+
+ The purposes of the proposed changes are to remove the uncertainties
+ left by RFC 3697, in order to encourage setting of the flow label by
+ default, and to enable its generic use. The proposed generic use is
+ to encourage uniformly distributed flow labels that can be used to
+ assist load distribution or balancing. There should be no impact on
+ existing IETF specifications other than RFC 3697 and no impact on
+ currently operational software and hardware.
+
+ A secondary purpose is to allow changes to the flow label in a
+ limited way, to allow hosts that do not set the flow label to benefit
+ from it nevertheless. The fact that the flow label may in practice
+ be changed en route is also reflected in the reformulation of the
+ rules.
+
+ A general description of the changes follows. The normative text is
+ to be found in [RFC6437].
+
+ The definition of a flow is subtly changed from RFC 3697 to allow any
+ node, not just the source node, to set the flow label value.
+ However, it is recommended that sources should set a uniformly
+ distributed flow label value in all flows, replacing the less precise
+ recommendation made in Section 3 of RFC 3697. Both stateful and
+ stateless methods of assigning a uniformly distributed value could be
+ used.
+
+
+
+
+Amante, et al. Informational [Page 6]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ Flow label values should be chosen such that their bits exhibit a
+ high degree of variability, thus making them suitable for use as part
+ of the input to a hash function used in a load distribution scheme.
+ At the same time, third parties should have a low probability of
+ guessing the next value that a source of flow labels will choose.
+
+ In statistics, a discrete uniform distribution is defined as a
+ probability distribution in which each value in a given range of
+ equally spaced values (such as a sequence of integers) is equally
+ likely to be chosen as the next value. The values in such a
+ distribution exhibit both variability and unguessability. Thus, an
+ approximation to a discrete uniform distribution is preferable as the
+ source of flow label values. In contrast, an implementation in which
+ flow labels are assigned sequentially is definitely not recommended,
+ to avoid guessability.
+
+ In practice, it is expected that a uniform distribution of flow label
+ values will be approximated by use of a hash function or a pseudo-
+ random number generator. Either approach will produce values that
+ will appear pseudo-random to an external observer.
+
+ Section 3 of RFC 3697 allows nodes to participate in an unspecified
+ stateful method of flow state establishment. The changes do not
+ remove that option, but clarify that stateless models are also
+ possible and are the recommended default. The specific text on
+ requirements for stateful models has been reduced to a bare minimum
+ requirement that they do not interfere with the stateless model. To
+ enable stateless load distribution at any point in the Internet, a
+ node using a stateful model should never send packets whose flow
+ label values do not conform to a uniform distribution.
+
+ The main novelty is that a forwarding node (typically a first-hop or
+ ingress router) may set the flow label value if the source has not
+ done so, according to the same recommendations that apply to the
+ source. This might place a considerable processing load on ingress
+ routers that choose to do so, even if they adopted a stateless method
+ of flow identification and label assignment.
+
+ The value of the flow label, once it has been set, must not be
+ changed. However, some qualifications are placed on this rule, to
+ allow for the fact that the flow label is an unprotected field and
+ might be misused. No Internet-wide mechanism can depend
+ mathematically on immutable flow labels. The new rules require that
+ flow labels exported to the Internet should always be either zero or
+ uniformly distributed, but even this cannot be relied on
+ mathematically. Use cases need to be robust against non-conforming
+
+
+
+
+
+Amante, et al. Informational [Page 7]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ flow label values. This will also enhance compatibility with any
+ legacy hosts that set the flow label according to RFC 2460 and RFC
+ 3697.
+
+ A complication that led to much discussion is the possibility that
+ hosts inside a particular network domain might use a stateful method
+ of setting the flow label, and that packets bearing stateful labels
+ might then erroneously escape the domain and be received by nodes
+ performing stateless processing, such as load balancing. This might
+ result in undesirable operational implications (e.g., congestion,
+ reordering) for not only the inappropriately flow-labeled packets,
+ but also well-behaved flow-labeled packets, during forwarding at
+ various intermediate devices. It was suggested that border routers
+ might "correct" this problem by overwriting such labels in packets
+ leaving the domain. However, neither domain border egress routers
+ nor intermediate routers/devices (using a flow label, for example, as
+ a part of an input key for a load-distribution hash) can determine by
+ inspection that a value is not part of a uniform distribution. Thus,
+ there is no way that such values can be detected and "corrected".
+ Therefore, the recommendation to choose flow labels from a uniform
+ distribution also applies to stateful schemes.
+
+4. Discussion
+
+ The following are some practical consequences of the above changes:
+
+ o Sending hosts that are not updated will in practice continue to
+ send all-zero labels. If there is no label-setting router along
+ the path taken by a packet, the label will be delivered as zero.
+
+ o Sending hosts conforming to the new specification will by default
+ choose uniformly distributed labels between 1 and 0xFFFFF.
+
+ o Sending hosts may continue to send all-zero labels, in which case
+ an ingress router may set uniformly distributed labels between 1
+ and 0xFFFFF.
+
+ o The flow label is no longer unrealistically asserted to be
+ strictly immutable; it is recognized that it may, incorrectly, be
+ changed en route. In some circumstances, this will break end-to-
+ end usage, e.g., potential detection of third-party spoofing
+ attacks [LABEL-SEC].
+
+ o The expected default usage of the flow label is some form of
+ stateless load distribution, such as the ECMP/LAG usage defined in
+ [RFC6438].
+
+
+
+
+
+Amante, et al. Informational [Page 8]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ o If the new rules are followed, all IPv6 traffic flows on the
+ Internet should have zero or uniformly distributed flow label
+ values.
+
+ From an operational viewpoint, existing IPv6 hosts that set a default
+ (zero) flow label value and ignore the flow label on receipt will be
+ unaffected by implementations of the new specification. In general,
+ it is assumed that hosts will ignore the value of the flow label on
+ receipt; it cannot be relied on as an end-to-end signal. However,
+ this doesn't apply if a cryptographically generated label is being
+ used to detect attackers [LABEL-SEC].
+
+ Similarly, routers that ignore the flow label will be unaffected by
+ implementations of the specification.
+
+ Hosts that set a default (zero) flow label but are in a domain where
+ routers set a label as recommended in Section 3 will benefit from
+ whatever flow label handling is used on the path.
+
+ Hosts and routers that adopt the recommended mechanism will enhance
+ the performance of any load balancing devices that include the flow
+ label in the hash used to select a particular path or server, even
+ when packets leave the local domain.
+
+5. Security Considerations
+
+ See [RFC6437] and [LABEL-SEC] for full discussion. Some useful
+ remarks are in [Partridge].
+
+6. Acknowledgements
+
+ The authors are grateful to Qinwen Hu for general discussion about
+ the flow label and for his work in searching the literature.
+ Valuable comments and contributions were made by Ran Atkinson, Fred
+ Baker, Steve Blake, Remi Despres, Alan Ford, Fernando Gont, Brian
+ Haberman, Tony Hain, Joel Halpern, Chris Morrow, Thomas Narten, Pekka
+ Savola, Mark Smith, Pascal Thubert, Iljitsch van Beijnum, and other
+ participants in the 6man working group.
+
+
+
+
+
+
+
+
+
+
+
+
+
+Amante, et al. Informational [Page 9]
+
+RFC 6436 Flow Label Update November 2011
+
+
+7. Informative References
+
+ [FLOWSWITCH] Beckman, M., "IPv6 Dynamic Flow Label Switching (FLS)",
+ Work in Progress, March 2007.
+
+ [LABEL-SEC] Gont, F., "Security Assessment of the IPv6 Flow Label",
+ Work in Progress, November 2010.
+
+ [McGann05] McGann, O. and D. Malone, "Flow Label Filtering
+ Feasibility", European Conference on Computer Network
+ Defence , 2005.
+
+ [NIST] Frankel, S., Graveman, R., Pearce, J., and M. Rooks,
+ "Guidelines for the Secure Deployment of IPv6",
+ National Institute of Standards and Technology Special
+ Publication 800-119, 2010, <http://csrc.nist.gov/
+ publications/nistpubs/800-119/sp800-119.pdf>.
+
+ [NSA] Potyraj, C., "Firewall Design Considerations for IPv6",
+ National Security Agency I733-041R-2007, 2007,
+ <http://www.nsa.gov/ia/_files/ipv6/I733-041R-2007.pdf>.
+
+ [Partridge] Partridge, C., Arsenault, A., and S. Kent, "Information
+ Assurance and the Transition to IP Version 6 (IPv6)",
+ Military Communications Conference (MILCOM 2007) ,
+ 2007, <http://www.ir.bbn.com/documents/articles/
+ MILCOM_Paper_from_Proceedings.pdf>.
+
+ [RFC2205] Braden, B., Zhang, L., Berson, S., Herzog, S., and S.
+ Jamin, "Resource ReSerVation Protocol (RSVP) -- Version
+ 1 Functional Specification", RFC 2205, September 1997.
+
+ [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version
+ 6 (IPv6) Specification", RFC 2460, December 1998.
+
+ [RFC2474] Nichols, K., Blake, S., Baker, F., and D. Black,
+ "Definition of the Differentiated Services Field (DS
+ Field) in the IPv4 and IPv6 Headers", RFC 2474,
+ December 1998.
+
+ [RFC3697] Rajahalme, J., Conta, A., Carpenter, B., and S.
+ Deering, "IPv6 Flow Label Specification", RFC 3697,
+ March 2004.
+
+ [RFC4302] Kent, S., "IP Authentication Header", RFC 4302,
+ December 2005.
+
+
+
+
+
+Amante, et al. Informational [Page 10]
+
+RFC 6436 Flow Label Update November 2011
+
+
+ [RFC6294] Hu, Q. and B. Carpenter, "Survey of Proposed Use Cases
+ for the IPv6 Flow Label", RFC 6294, June 2011.
+
+ [RFC6437] Amante, S., Carpenter, B., Jiang, S., and J. Rajahalme,
+ "IPv6 Flow Label Specification", RFC 6437, November
+ 2011.
+
+ [RFC6438] Carpenter, B. and S. Amante, "Using the IPv6 Flow Label
+ for Equal Cost Multipath Routing and Link Aggregation
+ in Tunnels", RFC 6438, November 2011.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Amante, et al. Informational [Page 11]
+
+RFC 6436 Flow Label Update November 2011
+
+
+Appendix A. Alternative Approaches
+
+ A model was discussed in an earlier version of this document which
+ defined a notion of 'flow label domain' analogous to a differentiated
+ services domain [RFC2474]. This model would have encouraged local
+ usage of the flow label as an alternative to any form of generic use,
+ but it required complex rules for the behavior of domain boundary
+ routers, and proved controversial in discussion.
+
+ Two even more complex alternative approaches were also considered and
+ rejected.
+
+ The first was to distinguish locally significant flow labels from
+ those conforming to RFC 3697 by setting or clearing the most
+ significant bit (MSB) of the flow label. This led to quite
+ complicated rules, seems impossible to make fully self-consistent,
+ and was not considered practical.
+
+ The second was to use a specific differentiated services code point
+ (DSCP) [RFC2474] in the Traffic Class octet instead of the MSB of the
+ flow label itself, to flag a locally defined behavior. A more
+ elaborate version of this was proposed in [FLOWSWITCH]. There are
+ two issues with that approach. One is that DSCP values are
+ themselves only locally significant, inconsistent with the end-to-end
+ nature of the original flow label definition. Secondly, it seems
+ unwise to meld the semantics of differentiated services, which are
+ currently deployed, with the unknown future semantics of flow label
+ usage. However, this approach, while not recommended, does not
+ appear to violate any basic principles if applied strictly within a
+ single differentiated services domain.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Amante, et al. Informational [Page 12]
+
+RFC 6436 Flow Label Update November 2011
+
+
+Authors' Addresses
+
+ Shane Amante
+ Level 3 Communications, LLC
+ 1025 Eldorado Blvd
+ Broomfield, CO 80021
+ USA
+
+ EMail: shane@level3.net
+
+
+ Brian Carpenter
+ Department of Computer Science
+ University of Auckland
+ PB 92019
+ Auckland, 1142
+ New Zealand
+
+ EMail: brian.e.carpenter@gmail.com
+
+
+ Sheng Jiang
+ Huawei Technologies Co., Ltd
+ Q14, Huawei Campus
+ No.156 Beiqing Road
+ Hai-Dian District, Beijing 100095
+ P.R. China
+
+ EMail: jiangsheng@huawei.com
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Amante, et al. Informational [Page 13]
+