Subject: [smartpowerdir] Fwd: LWIG WG proposal

From: Russ Housley <[email-masked]>
Date: Sun, 9 Jan 2011 19:26:43 -0500

Please review the attached draft charter.  I'll provide any concerns to the IESG.

Russ

Begin forwarded message:

> From: Jari Arkko <[email-masked]>
> Date: January 9, 2011 6:44:04 PM EST
> To: IAB <[email-masked]>, IESG <[email-masked]>, "[email-masked]" <[email-masked]>, TSV Dir <[email-masked]>, "'Cao,Zhen'" <[email-masked]>, Bob Hinden <[email-masked]>
> Subject: LWIG WG proposal
> 
> Secretary (Bcced),
> 
> Please put this working group creation to the agenda of the next IESG telechat:
> 
> All,
> 
> After thinking about the results of the LWIP BOF for a while and talking to various people, my proposal is to create a focused working group to produce one document. The key to the success of this effort is recruiting the smart guys who have actually built some of the existing implementations. We are in talks with several such experts, though our exact recruitment ability is yet to be seen. I have Adam Dunkels from SICS (implementor of uIP) on board as an example, but many people have not responded to our e-mails yet. Here's a proposed charter. Comments appreciated.
> 
> -----
> 
> Light-Weight Implementation Guidance (LWIG)
> 
> Current Status: Proposed
> 
> Chairs:
>    TBD
> 
> Internet Area Directors:
>    Ralph Droms <[email-masked]>
>    Jari Arkko <[email-masked]>
> 
> Internet Area Advisor:
>    Jari Arkko <[email-masked]>
> 
> Transport Area Advisor:
>   TBD
> 
> Mailing Lists:
>    General Discussion: [email-masked]
>    To Subscribe:       https://www.ietf.org/mailman/listinfo/lwip
>    Archive:            http://www.ietf.org/mail-archive/web/lwip
> 
> Description of Working Group:
> 
> Communications technology is being embedded into our environment. Different types of devices in our buildings, vehicles, equipment and other objects have a need to communicate. It is expected that most of these devices employ the Internet Protocol suite. However, there is a lot of variation in the capabilities between different types of devices, and it is not always easy to embed all the necessary features. The Light-Weight Implementation Guidance (LWIG) Working Group focuses on helping the implementors of the smallest devices. The goal is to be able to build minimal yet interoperable IP-capable devices for the most constrained environments.
> 
> Building a small implementation does not have to be hard. Many small devices use stripped down versions of general purpose operating systems and their TCP/IP stacks. However, there are implementations that go even further in minimization and can exist in as few as a couple of kilobytes of code, as on some devices this level of optimization is necessary. Technical and cost considerations may limit the computing power, battery capacity, available memory, or communications bandwidth that can be provided. To overcome these limitations the implementors have to employ the right hardware and software mechanisms. For instance, certain types of memory management or even fixed memory allocation may be required. It is also useful to understand what is necessary from the point of view of the communications protocols and the application employing them. For instance, a device that only acts as a client or only requires one connection can simplify its TCP implementation.
> 
> The purpose of the LWIG working group is to collect experiences from existing small IP stacks with regards to protocol implementation. The group shall focus only on techniques that have been used in actual implementations and do not impact interoperability with other devices. The techniques shall also not affect conformance to the relevant specifications. The output of this work is a document that describes implementation techniques for reducing complexity, memory footprint, or power usage. The main focus is in the IPv4, IPv6, UDP, TCP, and associated protocols. This document would be helpful for the implementors of new devices or for the implementors of new general-purpose small IP stacks. It is also expected that the document increases our knowledge of what existing small implementations do, and helps in the further optimization of the existing implementations.
> 
> Generic hardware design advice and software implementation techniques are outside the scope of this work, as such expertise is not within the IETF domain. The group shall also not develop any new protocols or protocol behavior modifications beyond what is already allowed by existing RFCs, because it is important to ensure that different types of devices can work together. The group shall not develop assumptions or profiles about the operating environment of the devices, because, in general, it is not possible to guarantee any special configuration.
> 
> Given that the group works on both IP and transport layer protocols it is necessary to ensure that expertise in both aspects is present in the group. Participation from the implementors of existing small IP stacks is also required.
> 
> Milestones:
> 
> February 2011   Design team of experts and a document editor recruited
> March 2011       Working group chartered
> August 2011       First version of the implementation guidance document submitted
> March 2012      Submit the implementation guidance document to the IESG for publication as an Informational RFC
>

---

From: "Ersue, Mehmet (NSN - DE/Munich)" <[email-masked]>
Date: Wed, 12 Jan 2011 18:50:21 +0100

Hi Russ, Jari,

I believe this work is valuable and different IETF WGs can benefit from
the results. However, ...

although IETF working groups often report from implementation and
interoperability experiences it is not very common to develop a document
on "implementation techniques". I think the charter text should make it
clear why the development of such a document should be done at an SDO
like IETF.

People who propose this WG do not seem to be the main contributors and
we need to find some smart guys first with LW implementation experience.
I would like to see more willing contributors with experience before we
start the work.

It would be also interesting if the charter mentions 6LoWPAN (e.g.
"associated protocols such as 6LoWPAN").

Cheers,
Mehmet

> -----Original Message-----
> From: [email-masked] [mailto:smartpowerdir-
> [email-masked]] On Behalf Of ext Russ Housley
> Sent: Monday, January 10, 2011 1:27 AM
> To: IETF SmartPowerDir
> Subject: [smartpowerdir] Fwd: LWIG WG proposal
> 
> Please review the attached draft charter.  I'll provide any concerns
to
> the IESG.
> > To: IAB <[email-masked]>, IESG <[email-masked]>, "[email-masked]"
> <[email-masked]>, TSV Dir <[email-masked]>, "'Cao,Zhen'"
> <[email-masked]>, Bob Hinden <[email-masked]>
> > Please put this working group creation to the agenda of the next
IESG
> telechat:
> >
> > All,
> >
> > After thinking about the results of the LWIP BOF for a while and
> talking to various people, my proposal is to create a focused working
> group to produce one document. The key to the success of this effort
is
> recruiting the smart guys who have actually built some of the existing
> implementations. We are in talks with several such experts, though our
> exact recruitment ability is yet to be seen. I have Adam Dunkels from
> SICS (implementor of uIP) on board as an example, but many people have
> not responded to our e-mails yet. Here's a proposed charter. Comments
> appreciated.
> >
> > -----
> >
> > Communications technology is being embedded into our environment.
> Different types of devices in our buildings, vehicles, equipment and
> other objects have a need to communicate. It is expected that most of
> these devices employ the Internet Protocol suite. However, there is a
> lot of variation in the capabilities between different types of
> devices, and it is not always easy to embed all the necessary
features.
> The Light-Weight Implementation Guidance (LWIG) Working Group focuses
> on helping the implementors of the smallest devices. The goal is to be
> able to build minimal yet interoperable IP-capable devices for the
most
> constrained environments.
> >
> > Building a small implementation does not have to be hard. Many small
> devices use stripped down versions of general purpose operating
systems
> and their TCP/IP stacks. However, there are implementations that go
> even further in minimization and can exist in as few as a couple of
> kilobytes of code, as on some devices this level of optimization is
> necessary. Technical and cost considerations may limit the computing
> power, battery capacity, available memory, or communications bandwidth
> that can be provided. To overcome these limitations the implementors
> have to employ the right hardware and software mechanisms. For
> instance, certain types of memory management or even fixed memory
> allocation may be required. It is also useful to understand what is
> necessary from the point of view of the communications protocols and
> the application employing them. For instance, a device that only acts
> as a client or only requires one connection can simplify its TCP
> implementation.
> >
> > The purpose of the LWIG working group is to collect experiences from
> existing small IP stacks with regards to protocol implementation. The
> group shall focus only on techniques that have been used in actual
> implementations and do not impact interoperability with other devices.
> The techniques shall also not affect conformance to the relevant
> specifications. The output of this work is a document that describes
> implementation techniques for reducing complexity, memory footprint,
or
> power usage. The main focus is in the IPv4, IPv6, UDP, TCP, and
> associated protocols. This document would be helpful for the
> implementors of new devices or for the implementors of new general-
> purpose small IP stacks. It is also expected that the document
> increases our knowledge of what existing small implementations do, and
> helps in the further optimization of the existing implementations.
> >
> > Generic hardware design advice and software implementation
techniques
> are outside the scope of this work, as such expertise is not within
the
> IETF domain. The group shall also not develop any new protocols or
> protocol behavior modifications beyond what is already allowed by
> existing RFCs, because it is important to ensure that different types
> of devices can work together. The group shall not develop assumptions
> or profiles about the operating environment of the devices, because,
in
> general, it is not possible to guarantee any special configuration.
> >
> > Given that the group works on both IP and transport layer protocols
> it is necessary to ensure that expertise in both aspects is present in
> the group. Participation from the implementors of existing small IP
> stacks is also required.
> >
> > Milestones:
> >
> > March 2012      Submit the implementation guidance document to the
> IESG for publication as an Informational RFC
> >

---

From: Jari Arkko <[email-masked]>
Date: Sun, 23 Jan 2011 22:01:47 +0200

Thanks for your comments, Mehmet.

> clear why the development of such a document should be done at an SDO

Strictly speaking the general purpose implementation techniques (like 
how to do efficient memory management) are outside the scope. However, I 
think the IETF is a good place to write documents that talk about 
protocol-related implementation issues, such as what parts of an 
implementation are necessary if, say, you only need one client-side TCP 
connection.

> I would like to see more willing contributors with experience before we

I do have a number of willing contributors, some which I would classify 
as major experts in writing small TCP/IP implementations. I have not 
publicly broadcasted the set of the willing experts. But Adam Dunkels, 
Margaret Wasserman,

> "associated protocols such as 6LoWPAN").

I have been asked to be more specific in this text. 6LOWPAN *is* 
included in the latest version. See below. Comments appreciated, this is 
not set in stone.

Jari

Light-Weight Implementation Guidance (lwig)
-------------------------------------------
Current Status: Proposed Working Group

Chairs:
TBD

Internet Area Directors:

Internet Area Advisor:

Transport Area Advisor:
TBD

Mailing Lists:

Communications technology is being embedded into our environment. 
Different types of devices in our buildings, vehicles, equipment and 
other objects have a need to communicate. It is expected that most of 
these devices employ the Internet Protocol suite. However, there is a 
lot of variation in the capabilities between different types of devices, 
and it is not always easy to embed all the necessary features. The 
Light-Weight Implementation Guidance (LWIG) Working Group focuses on 
helping the implementors of the smallest devices. The goal is to be able 
to build minimal yet interoperable IP-capable devices for the most 
constrained environments.

Building a small implementation does not have to be hard. Many small 
devices use stripped down versions of general purpose operating systems 
and their TCP/IP stacks. However, there are implementations that go even 
further in minimization and can exist in as few as a couple of kilobytes 
of code, as on some devices this level of optimization is necessary. 
Technical and cost considerations may limit the computing power, battery 
capacity, available memory, or communications bandwidth that can be 
provided. To overcome these limitations the implementors have to employ 
the right hardware and software mechanisms. For instance, certain types 
of memory management or even fixed memory allocation may be required. It 
is also useful to understand what is necessary from the point of view of 
the communications protocols and the application employing them. For 
instance, a device that only acts as a client or only requires one 
connection can simplify its TCP implementation.

The purpose of the LWIG working group is to collect experiences from 
existing small IP stacks with regards to protocol implementation 
techniques and other details that have been useful in deployments. The 
group shall focus only on techniques that have been used in actual 
implementations and do not impact interoperability with other devices. 
The techniques shall also not affect conformance to the relevant 
specifications. The output of this work is a document that describes 
implementation techniques for reducing complexity, memory footprint, or 
power usage. The main focus is in the IPv4, IPv6, UDP, TCP, ICMPv4/v6, 
MLD/IGMP, ND, DHCPv4/v6, IPsec, 6LOWPAN, and RPL protocols. This 
document would be helpful for the implementors of new devices or for the 
implementors of new general-purpose small IP stacks. It is also expected 
that the document increases our knowledge of what existing small 
implementations do, and helps in the further optimization of the 
existing implementations. On areas where the considerations for small 
implementations have already been documented the group shall make an 
effort to refer to those documents instead of developing its own.

Generic hardware design advice and software implementation techniques 
are outside the scope of this work, as such expertise is not within the 
IETF domain. Protocol implementation experience, however, is within the 
IETF domain. The group shall also not develop any new protocols or 
protocol behavior modifications beyond what is already allowed by 
existing RFCs, because it is important to ensure that different types of 
devices can work together. The group shall not develop assumptions or 
profiles about the operating environment of the devices, because, in 
general, it is not possible to guarantee any special configuration. 
Finally, while implementation techniques relating to security mechanisms 
are within scope, mere removal of security functionality from a protocol 
is not an acceptable recommendation.

Given that the group works on both IP and transport layer protocols it 
is necessary to ensure that expertise in both aspects is present in the 
group. Participation from the implementors of existing small IP stacks 
is also required.

Milestones:

Feb 2011 Design team of experts and a document editor recruited
Aug 2011 First version of the implementation guidance document submitted
Mar 2012 Submit the implementation guidance document to the IESG for 
publication as an Informational RFC