Internet DRAFT - draft-sgros-dhcp-and-ipr-claim-analysis
draft-sgros-dhcp-and-ipr-claim-analysis
Internet Engineering Task Force S. Gros, Ed.
Internet-Draft L. Jelenkovic
Intended status: Informational D. Skvorc
Expires: May 26, 2016 University of Zagreb
November 23, 2015
DHCP configuration in MIF and associated IPR claim
draft-sgros-dhcp-and-ipr-claim-analysis-00
Abstract
The purpose of this draft is to analyze different options on how DHCP
can be used to configure PvD aware client. This is done in light of
IPR claim made by Huawei and the necessity to find an option for
implementation. In order for an option to be selected it obviously
must not interfere with IPR, or, IPR has to be somehow invalidated.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on May 26, 2016.
Copyright Notice
Copyright (c) 2015 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
Gros, et al. Expires May 26, 2016 [Page 1]
Internet-Draft DHCP_and_IPR November 2015
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3
2. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Analysis of the IPR Claim made by Huawei . . . . . . . . . . 3
3.1. Detailed analysis of the protocol part . . . . . . . . . 4
3.2. Detailed analysis of the implementation part . . . . . . 6
3.3. Differences between the patent and draft-ietf-mif-mpvd-
dhcp-support . . . . . . . . . . . . . . . . . . . . . . 6
3.4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . 7
4. Possible Solutions . . . . . . . . . . . . . . . . . . . . . 7
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
7. Security Considerations . . . . . . . . . . . . . . . . . . . 9
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
8.1. Normative References . . . . . . . . . . . . . . . . . . 9
8.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction
At IETF94 MIF Working Group decided to abandon drafts written so far
and to wait for implementations that would serve as a basis for a new
drafts [MIFminutes94]. One of the problems was the IPR claim made by
Huawei [HuaweiIPRClaim].
This document has two purposes. The first is to identify the best
path to follow for the implementation of client configuration using
DHCP in a presence of multiple provisioning domains. The second is
to present analysis of the IPR claim made by Huawei in order to see
how it influences possible solutions. Since the licensing terms are
too strict it is mandatory to avoid conflict with the given patent.
This draft contains three core sections. In Section 2 the
requirements on the final solution are given. It is very important
to agree on those in order to have criteria on which different
solutions can be analyzed. Then, in Section 3 we do a thorough
analysis of the IPR claim made by Huawei and also we analyse how it
relates to the existing proposal. Finally, in Section 3 we present
different possibilities and analyze each one of them based on
requirements defined and IPR claim made by Huawei.
Gros, et al. Expires May 26, 2016 [Page 2]
Internet-Draft DHCP_and_IPR November 2015
1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
2. Requirements
The solution to be defined and used has to fulfill the following
requirements:
o No IPR claims. The solution MUST be free of IPR claims, or if
there are any IPR claims then they MUST be licensed in such a way
to allow unrestricted implementations without any fees.
o Backwards compatibility. The solution MUST be be backwards
compatible. This means that the old clients upon seeing messages
defined by the DHCP solution must ignore it and correctly function
without knowing for those messages.
o Efficiency of implementation. The solution SHOULD be as efficient
as possible for the implementation. This means, for example, that
messages defined by the final specification should be constructed
in such a way to make an implementation as simple as possible.
o Efficiency of communication. The solution SHOULD be as efficient
as possible for communication. This means, for example, that as
few messages as possible should be necessary in order for the
client to be fully configured.
3. Analysis of the IPR Claim made by Huawei
Before continuing a big DISCLAIMER. No lawyer has participated in
the development of the following text so you should take a note that
this is only an engineering view of a potentialy very complex
problem.
The IPR claim made by Huawei [HuaweiIPRClaim] is based on US Patent
#US20140344421 [US20140344421]. The abstract of a given patent
describes what is the patent about:
A method for configuring a DHCPv6 client is provided. The method
includes: a DHCPv6 client receiving a DHCPv6 advertisement message
sent by a network device having a DHCPv6 function, the DHCPv6
advertisement message comprising a management domain identifier of
the network device; if the DHCPv6 client does not save the
management domain identifier, the DHCPv6 client sending a DHCPv6
request message to the network device; the DHCPv6 client receiving
Gros, et al. Expires May 26, 2016 [Page 3]
Internet-Draft DHCP_and_IPR November 2015
a DHCPv6 response message sent by the network device and
completing configuration of the DHCPv6 client. A DHCPv6 client, a
network device, and a network system are also provided. Through
the technical solution, multiple network devices supporting a
DHCPv6 server function can configure the same DHCPv6 client, so as
to provide technical support for realizing IPv6 client and network
multi-homing.
In the given paragraph, there are two key informations:
1. The use of the term "management domain identifier".
2. The last sentence which places the mechanism described by the
patent into a context where it is used.
These two key parts are in direct correlation with the mechanism to
configure MPvDs as described in [I-D.ietf-mif-mpvd-dhcp-support].
Namely, "management domain identifier" is basically PvD_ID and the
last sentence describes multi-homing environment, which basically
MPvD is also. Note that "multi-homing environment" can be achieved
on a single network with multiple ISPs and multiple networks, each
with an ISP. The context of the patent is the former one, while of
the MPvD is the latter one. To see that the MPvD context is multiple
ISPs on multiple physical and/or virtual network one should take a
look at Section 4 of MIF Architecture Document [RFC7556]. This is
very important distinction.
In the following subsections we analyze separately two different
parts of the patent, protocol part and the implementation part.
Protocol part is the more important, but implementation is also very
important due to the patentability requirements
[algorithmspatentable].
3.1. Detailed analysis of the protocol part
Figure 1 in the patent claim describes scenario of client
configuration via DHCPv6 when patented configuration mechanism is
used. According to the given description the following sequence of
steps happens:
1. Upon client sending SOLICIT message, DHCPv6 server sends
ADVERTISE message. This message includes an option that defines
"management domain identifier". Additional rules are mentioned
later in the text concerning the SOLICIT message:
1. Paragraph [0045] says that client sends SOLICIT message but
_without_ an option "management domain identifier".
Gros, et al. Expires May 26, 2016 [Page 4]
Internet-Draft DHCP_and_IPR November 2015
Furthermore, judging by the [0045], DHCPv6 server MUST
include "management domain identifier".
2. In paragraph [0050] it says further that when client receives
SOLICIT message with previously unknown "management domain
identifier" then "the DHCPv6 client may send the DHCPv6
request message to the network device and store the
management domain identifier of the network device. The
DHCPv6 request message is adapted to request the network
device to configure the DHCPv6 client."
3. Then, paragraph [0046] contradicts paragraph [0045] by saying
that "management domain identifier" doesn't have to be
included. Yet, in that case the question is what makes so
special this patent from regular DHCPv6 exchange.
4. Also, in paragraph [0046] it says that the "management domain
identifier" defines to WHICH MANAGEMENT DOMAIN NETWORK DEVICE
BELONGS. According to this, "management domain identifier"
identifies some management domain and not a set of
configuration parameters that can belong to some management
domain. This is emphasised by explicitly saying that "...
management domain identifier may be a name of an ISP or a
name of an organization."
2. Client sends REQUEST message. There are few problems with the
description in this part:
1. There is ambiguity here as it doesn't specify weather client
sends "management domain identifier" option in REQUEST or
not.
2. It sounds like there is unfinished sentence here. Namely,
this part in the patent application says:
[0043] 104: The DHCPv6 client sends a DHCPv6 request
message to the network device and stores the management
domain identifier, when the client does not store the
management domain identifier.
Note the last part of the sentence, "when the client does not
store the management domain identifier". It doesn't make any
sense! Reading through the later text (specifically
paragraph [0050]) it seems to be a C/P error.
3. The patent application doesn't define what happens when
client sends REQUEST message to multicast address which is
Gros, et al. Expires May 26, 2016 [Page 5]
Internet-Draft DHCP_and_IPR November 2015
received by all other DHCP servers, i.e. what other DHCP
servers not belonging to a given management domain do.
3. As the final step DHCPv6 client receives configuration data in a
REPLY message. This part is underwritten/underspecified. To see
that here is quote from the relevant part of the patent:
[0044] 106: The DHCPv6 client receives a DHCPv6 reply message
from the network device and configures the DHCPv6 client
according to the DHCPv6 reply message. The DHCPv6 reply
message includes an IPv6 prefix assigned to the DHCPv6 client
by the network device and a network configuration parameter
assigned to the DHCPv6 client by the network device; or the
DHCPv6 reply message includes an IPv6 address assigned to the
DHCPv6 client by the net work device and a network
configuration parameters assigned to the DHCPv6 client by the
network device.
First, it says that IPv6 address or IPv6 prefix MUST be present
in the configuration message. Also, if IPv6 prefix is present
than a single network configuration parameter is assigned, while
if it is IPv6 address then "a network configuration parameters"
are present. In paragraph [0050] both are assumed to have a
single parameter!
3.2. Detailed analysis of the implementation part
Figures 3, 4 and 5 in the patent claim show implementation of the
given patent. The reason for this is that protocols (which are in
essence distributed algorithms) can not be patented
[algorithmspatentable].
Looking at the figures presented, there is no difference between the
implementations that support "management domain identifier". After
all, it is well known from the existing server implementations that
in order to add new option it is necessary just to change a line or
two in the configuration file.
3.3. Differences between the patent and draft-ietf-mif-mpvd-dhcp-
support
There are differences between the patent and the solution as proposed
in the draft:
1. "Management domain" while isn't defined by the patent isn't used
to identify set of a configuration parameters, but a whole domain
managed by some authority. PvD, on the other hand, identifies a
set of configuration parameters no matter to whom they belong.
Gros, et al. Expires May 26, 2016 [Page 6]
Internet-Draft DHCP_and_IPR November 2015
2. The context of the patent is a single network with multipe ISPs,
while the context of MIF is multiple connections, each with a
single ISP.
3. Option with "management domain ID" is like any other option, i.e.
it is not a container for the other options as in MPvD DHCP
proposal.
4. In the given patent there is 1 to 1 mapping between DHCP server
and management domain. In MPvD, on the contrary, one DHCP server
can host multiple provisioning domains.
5. As per the patent only ADVERTISE message has "management domain
identifier" option included.
6. In the patent application management IDs are sent without being
requested by the client. So, in case the client explicitly
requests different management domain the patent doesn't apply.
7. The mechanism in patent, as described, couldn't be implemented
without first resolving some issues not defined precisely enough.
(the case what all DHCP servers should do upon receive REQUEST
possibly without "management domain identifier" within)
8. The patent doesn't specify anything else being part of
"management domain" other then IPv6 address or prefix.
3.4. Conclusion
The first conclusion is that this patent actually patents an
algorithm, and since algorithms aren't patentable than the patent
itself is invalid.
The conclusion is that by introducing a configuration option with
PVD_ID that functions as a container for other options isn't in
collision with the given patent.
4. Possible Solutions
The first step towards the possible solutions is enumeration of all
the options.
For a start, there certainly must be a way for DHCP server to convey
information about specific PvD to a client. This can be done either
implicitly or explicitly and directly or indirectly:
Gros, et al. Expires May 26, 2016 [Page 7]
Internet-Draft DHCP_and_IPR November 2015
o Implicit. The information that the parameters within a message
belong to some particular PvD isn't contained within DHCP message
itself but somewhere outside of it.
o Explicit. The information that certain parameters within the
message belong to some specific PvD is contained within the
message itself.
o Direct. All the necessary information necessary to identify PvD
are placed within the DHCP message.
o Indirect. Information about PvD isn't fully contained within DHCP
message but has to be obtained by some other mean.
When information about PvD is explicit then it can be done in the
following ways:
1. A single option within DHCP message can define PvD the whole
message belongs to. This approach has two problems. The first
is backwards compatibility. Clients not aware of PvD will be
confused with multiple configuration parameters. The second
problem is that it resembles the IPR claim made by Huawei and
analyzed in the previous section.
2. Prefixing each option with an option that identifies PvD to which
the given option belongs to. This approach has the problem of
bloating DHCP message, and also there is a problem with backwards
compatibility.
3. Defining separate set of configuration options in which each
contains PvD ID and appropriate option. The problem with this
approach is the number of options that should be duplicated.
4. Using container option which holds all the options specific for a
given PvD. This approach was used in the existing proposal of
PvD configuration using DHCP messages
[I-D.ietf-mif-mpvd-dhcp-support].
5. There is an indicator within DHCP message about availability of
other PvDs. When PvD aware client receives such message, it
requests additional configuration options, e.g. by using DHCP
INFORM messages. DHCP INFORM messages could be used to obtain a
list of all available PvD_IDs and to request specific PvD_IDs.
This is an example of indirect configuration of a client.
Gros, et al. Expires May 26, 2016 [Page 8]
Internet-Draft DHCP_and_IPR November 2015
5. Acknowledgements
6. IANA Considerations
This memo includes no request to IANA.
All drafts are required to have an IANA considerations section (see
the update of RFC 2434 [I-D.narten-iana-considerations-rfc2434bis]
for a guide). If the draft does not require IANA to do anything, the
section contains an explicit statement that this is the case (as
above). If there are no requirements for IANA, the section will be
removed during conversion into an RFC by the RFC Editor.
7. Security Considerations
All drafts are required to have a security considerations section.
See RFC 3552 [RFC3552] for a guide.
8. References
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC6418] Blanchet, M. and P. Seite, "Multiple Interfaces and
Provisioning Domains Problem Statement", RFC 6418,
DOI 10.17487/RFC6418, November 2011,
<http://www.rfc-editor.org/info/rfc6418>.
[RFC6419] Wasserman, M. and P. Seite, "Current Practices for
Multiple-Interface Hosts", RFC 6419, DOI 10.17487/RFC6419,
November 2011, <http://www.rfc-editor.org/info/rfc6419>.
[RFC7556] Anipko, D., Ed., "Multiple Provisioning Domain
Architecture", RFC 7556, DOI 10.17487/RFC7556, June 2015,
<http://www.rfc-editor.org/info/rfc7556>.
8.2. Informative References
[algorithmspatentable]
StackExchange, "Can an algorithm be patented?", December
2010,
<http://programmers.stackexchange.com/questions/32482/
can-an-algorithm-be-patented>.
Gros, et al. Expires May 26, 2016 [Page 9]
Internet-Draft DHCP_and_IPR November 2015
[HuaweiIPRClaim]
Huawei Technologies Co., "Huawei Technologies Co.,Ltd's
Statement about IPR related to draft-ietf-mif-mpvd-dhcp-
support", August 2014, <https://datatracker.ietf.org/
ipr/2648/>.
[I-D.ietf-mif-mpvd-dhcp-support]
Krishnan, S., Korhonen, J., and S. Bhandari, "Support for
multiple provisioning domains in DHCPv6", draft-ietf-mif-
mpvd-dhcp-support-02 (work in progress), October 2015.
[I-D.narten-iana-considerations-rfc2434bis]
Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", draft-narten-iana-
considerations-rfc2434bis-09 (work in progress), March
2008.
[MIFminutes94]
IETF94, "IETF 94th MIF minutes", November 2015,
<https://www.ietf.org/proceedings/94/minutes/minutes-
94-mif>.
[RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629,
DOI 10.17487/RFC2629, June 1999,
<http://www.rfc-editor.org/info/rfc2629>.
[RFC3552] Rescorla, E. and B. Korver, "Guidelines for Writing RFC
Text on Security Considerations", BCP 72, RFC 3552,
DOI 10.17487/RFC3552, July 2003,
<http://www.rfc-editor.org/info/rfc3552>.
[US20140344421]
Huawei Technologies Co., "Method for configuring dhcpv6
client, dhcpv6 client, network device, and network
system", August 2015,
<http://www.google.com/patents/US20140344421>.
Authors' Addresses
Stjepan Gros (editor)
University of Zagreb
Unska 3
Zagreb 10000
HR
Email: stjepan.gros@fer.hr
Gros, et al. Expires May 26, 2016 [Page 10]
Internet-Draft DHCP_and_IPR November 2015
Leonardo Jelenkovic
University of Zagreb
Unska 3
Zagreb 10000
HR
Email: leonardo.jelenkovic@fer.hr
Dejan Skvorc
University of Zagreb
Unska 3
Zagreb 10000
HR
Email: dejan.skvorc@fer.hr
Gros, et al. Expires May 26, 2016 [Page 11]