Internet DRAFT - draft-jeong-eman-network-proxy-protocol

draft-jeong-eman-network-proxy-protocol







Network Working Group                                           S. Jeong
Internet-Draft                                                      ETRI
Intended status: Informational                         February 15, 2014
Expires: August 19, 2014


                         Network Proxy Protocol
             draft-jeong-eman-network-proxy-protocol-02.txt

Abstract

   In the current Internet, it is implicitly assumed that a network node
   is always active so that it can receive the incoming packets at any
   time.  Current networking services and applications are commonly
   designed to be fully available at all times with minimal response
   times.  This assumption keeps network nodes from entering sleeping
   mode in order to reduce energy consumption.  Further, during sleeping
   mode, network nodes may not immediately respond to the incoming
   packets or even lose them.  If network nodes are allowed to go into a
   sleeping mode, they can effectively reduce energy consumption during
   idle period.  Network proxy allows to delegate network node's traffic
   processing to an external system within a network, so that the nodes
   maintain network presence during their sleep.  This document
   describes communication mechanism between network nodes and proxy in
   order to accelerate the wider deployment of network proxy mechanism.

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 August 19, 2014.

Copyright Notice

   Copyright (c) 2014 IETF Trust and the persons identified as the
   document authors.  All rights reserved.




Jeong                    Expires August 19, 2014                [Page 1]

Internet-Draft                Network Proxy                February 2014


   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.  Conventions and Terminology . . . . . . . . . . . . . . . . .   4
   3.  Overview of Network Proxy . . . . . . . . . . . . . . . . . .   4
   4.  Network Proxy Operation . . . . . . . . . . . . . . . . . . .   6
     4.1.  ARP Operation . . . . . . . . . . . . . . . . . . . . . .   9
     4.2.  DHCP Operation  . . . . . . . . . . . . . . . . . . . . .  10
   5.  Message Formats . . . . . . . . . . . . . . . . . . . . . . .  12
     5.1.  Proxy Solicitation Message  . . . . . . . . . . . . . . .  14
     5.2.  Proxy Advertisement Message . . . . . . . . . . . . . . .  14
     5.3.  Sleep Request Message . . . . . . . . . . . . . . . . . .  16
       5.3.1.  IPv4 ARP Configuration Option . . . . . . . . . . . .  16
       5.3.2.  DHCP Configuration Option . . . . . . . . . . . . . .  17
     5.4.  Sleep Confirm Message . . . . . . . . . . . . . . . . . .  17
     5.5.  Wakeup Report Message . . . . . . . . . . . . . . . . . .  18
     5.6.  Wakeup Confirm Message  . . . . . . . . . . . . . . . . .  18
       5.6.1.  DHCP Notification Option  . . . . . . . . . . . . . .  19
   6.  Usecases of Network Proxy . . . . . . . . . . . . . . . . . .  19
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .  19
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  19
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  20
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .  20
     9.2.  Informative References  . . . . . . . . . . . . . . . . .  20
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  21

1.  Introduction

   Information and Communications Technology (ICT) sector is facing
   rapid growth and consuming a lot of power in order to provide large
   bandwidth and complex application services.

   According to an ITU-T report, wired and wireless networks consume
   large amount of power and the amount of green-house gas emissions
   caused by ICT sector is estimated 2% of total man-made emissions.  It
   is also estimated that network sector including network equipment and
   equipment connected to networks contributes to 4% of world power
   consumption.  Further, it is observed that the power consumption is



Jeong                    Expires August 19, 2014                [Page 2]

Internet-Draft                Network Proxy                February 2014


   higher at access networks and users, so how to reduce the power
   consumption in these areas is becoming an important issue [ITU].

   According to recent surveys, network equipment show a constant power
   consumption profile irrespective of their utilization level, i.e.,
   energy-agnostic power profile.  Such equipment represent the worst
   case in terms of utilization and power consumption profile.  On the
   contrary, ideally, energy-aware equipment represent power consumption
   pattern proportional to their utilization or offered load.  Practical
   approaches for realizing the energy-aware equipment are implementing
   multi-stepped power profiles in order to adapt to the utilization
   level [EPC][GreenSurvey][EEE].

   There is another researh direction for improving energy efficiency of
   network equipment using network proxy technology
   [I-D.winter-energy-efficient-internet][PROXZZZY][NCP].  Network proxy
   describes technologies that maintain network connectivity for other
   devices so that these can go into low power sleep modes.  This mainly
   targets the reduction of unnecessary energy waste through edge
   devices.

   There are typically two types of network proxies: internal and
   external, respectively.

   o  Internal Proxy: proxy functionality is implemented within the ICT
      product, such as network interface card.

   o  External Proxy: proxy functionality is placed within other network
      equipment such as switch and external server in networks.

   This document describes a protocol that is need for communication
   between external proxies and network hosts.

   ECMA International has published a proxying document [PROXZZZY].
   This specification describes an overall architecture for network
   proxying and provides capabilities that a proxy may expose to a host.
   Also, information that must be exchanged between a host and a proxy,
   and required and optional behavior of a proxy during its operation
   are described.

   Within IETF, there are several documents related with the
   functionality of network proxy
   [RFC6762][RFC6763][I-D.cheshire-edns0-owner-option].  These documents
   defines DNS messages-based service discovery mechanisms, which can be
   used for facilitating various services.  These mechanisms may be used
   for providing some of network proxy functionality, but generalized
   network proxy functionality is not fully supported.




Jeong                    Expires August 19, 2014                [Page 3]

Internet-Draft                Network Proxy                February 2014


   Generalized network proxy is capable of providing full network
   presence for a broad range of network protocols and applications.
   The generalized network proxy include a list of packet types that may
   require routine reply, autogeneration, and wakeup, as well as the
   detailed steps and methods for state information transfer each
   requires [EEEC].

   It is well known that many network hosts are in active state in order
   to maintain network presence and this behavior hinders hosts from
   entering energy saving state.  Even when a node is idle with no
   running applications, background traffic is received that needs to be
   processed which inhibits the node from sleeping.  Network proxy is
   one of the possible solutions for resolve this issue.  The general
   framework of network proxy was developed, but the control and
   communication mechanisms between network hosts and proxies has not
   been developed.  Thus, in order to promote the wider deployment of
   network proxy mechanism, the control and communication protocol
   should be specified.

   This document defines a control protocol for external network proxy
   operation and relevant messages in order to increase energy
   efficiency of network hosts.

2.  Conventions and Terminology

   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 [RFC2119].

3.  Overview of Network Proxy

   Network proxy refers to a set of mechanisms dedicated to put network
   interfaces and network nodes into energy saving sleeping mode.
   Energy consumption in sleeping mode is less than active mode in
   general, so the longer the sleeping periods is, the higher the
   achievable energy saving can be.  The network proxy enables network
   nodes to maintain network connectivity during sleep period.  Figure 1
   shows the typical operational scenario of network proxy [PROXZZZY].
   When a host wants to enter sleeping mode, the host delivers its
   network status and state to a network proxy and goes into sleeping
   mode.  Then, the network proxy responds to periodic messages on
   behalf of the host in sleeping mode.  If the proxy receives a message
   that it cannot process, it sends a wake-up message to the host so
   that the host can process the message after wake-up.







Jeong                    Expires August 19, 2014                [Page 4]

Internet-Draft                Network Proxy                February 2014


                  Host                Proxy              Network
                   |                                        |
                   |                                        |
                   |         Full Network Connectivity      |
                   |<-------------------------------------->|
                   |                                        |
           Enter   |                    |                   |
           Sleeping|  Context Exchange  |                   |
           Mode    |<------------------>|                   |
                   |                    |                   |
           In      |                    | Selective Network |
           Sleep   |                    |     Connection    |
           Mode    |                    |<----------------->|
            .      |                    |                   |
            .      |                    |                   |
                   |                    |  Wake-up Event    |
                   |      Wake-up       |<------------------|
                   |<-------------------|                   |
                   |                    |                   |
                   |  Context Exchange  |                   |
                   |<------------------>|                   |
                   |                    |                   |
                   |      Network Connectivity Resumed      |
           Wake-up |<-------------------------------------->|
                   |                                        |

              Figure 1: Operational scenario of network proxy

   According to the survey, even though a host is in idle mode,
   background network traffic is received and needs to be processed,
   which prevents the host from going into sleeping mode.  Also, it is
   known that most of the incoming traffic received during the host's
   idle period may be simply dropped or do not require more than a
   minimal computation and response.  For instance, most broadcast
   packets or traffic related to port scanning may simply be ignored.
   Usual exchanges, such as Address Resolution Protocol (ARP)
   processing, Internet Control Message Protocol (ICMP) echo answering
   or Dynamic Host Configuration Protocol (DHCP) rebinding, are simple
   tasks that could be easily performed directly by network proxy.  The
   idea behind network proxy is delegating the processing of such
   traffic.  Processing can imply plain filtering or may require simple
   responses (e.g., in the case of ARP, ICMP, DHCP), or even more
   complex task.  Such tasks can be delegated from the CPUs of hosts to
   an external network proxy in networks [GreenSurvey].

   The following list summarizes requirement status about what types of
   protocols network proxy should support [PROXZZZY].  Among them, this




Jeong                    Expires August 19, 2014                [Page 5]

Internet-Draft                Network Proxy                February 2014


   document describes ARP related operation first and other mandatory
   protocols will be defined later version of this document.

   Mandatory 1:  Media (802.3, 802.11)

   Mandatory 2:  IPv4 ARP

   Mandatory 3:  IPv6 Neighbor Discovery

   Mandatory 4:  Wake Packets

   Option 1:  DNS

   Option 2:  DHCP

   Option 3:  IGMP

   Option 4:  MLD

   Option 5:  Remote Access using SIP and IPv4

   Option 6:  Remote Access using Teredo for IPv6

   Option 7:  SNMP

   Option 8:  Service Discovery using mDNS

   Option 9:  Name Resolution with LLMNR

4.  Network Proxy Operation

   This section describes network proxy operation between proxy server
   and network nodes to support mandatory protocols.  Figure 2 shows
   network proxy operations.  When a network host wants to enter
   sleeping mode in order to save energy, the host exchanges Proxy
   Solicitation and Advertisement messages with network proxy in
   network.  Proxy may be implemented as a function within a switch or
   router, or it may be implemented as a separate server.  Proxy
   Solicitation message queries to network, whether network proxy
   functionality can be supported within the host's network.  If there
   is a network proxy that can provide proxy functionality, it replies
   to the host by using Proxy Advertisement message.  Network proxy
   supports required functional requirements defined in [PROXZZZY] in
   order to support proxy operation.

   After the network proxy discovery procedure, the host sends Sleep
   Request message to network proxy.  The Request message contains the
   host's state information such as MAC address(es), IP address(es),



Jeong                    Expires August 19, 2014                [Page 6]

Internet-Draft                Network Proxy                February 2014


   protocol operations to be delegated to the network proxy, and so on.
   After receiving the Sleep Confirm message from the network proxy, the
   host enters sleeping mode.  Then the network proxy responds to
   incoming packets to the sleeping host.  By doing so, the host can
   sleep without processing incoming packets.  When the network proxy
   receives a packet that it cannot process, the proxy sends a Wake-up
   message to the sleeping host in order to wake it up.  During its
   wake-up process, proxy may buffer additional packets destined to the
   sleeping hosts.  After the sleeping node wakes up, it exchanges the
   update on the host's state information with the network proxy and
   communicates with remote hosts.  When Sleep Timer expires, the
   sleeping host wakes up and sends a Wake-up Report message to the
   network proxy.  Then, the network proxy cleans up the state
   information for the sleeping host and replies with Wake-up confirm
   message.

   Note that Figure 2 shows network proxy high level operation and the
   detailed operations for mandatory and optional protocols specified in
   [PROXZZZY] are presented in the following sections.  Among the
   mandatory and optional protocols, this document describes operations
   for IPv4 ARP and DHCPv4.  Operations for other protocols will be
   presented in the revised version of this document.





























Jeong                    Expires August 19, 2014                [Page 7]

Internet-Draft                Network Proxy                February 2014


                Sleeping             Network             Remote
                  Host                Proxy               Host
                   |                    |                   |
                   | Proxy Solicitation |                   |
                   |------------------->|                   |
                   | Proxy Advertisement|                   |
                   |<-------------------|                   |
                   |         Full Network Connectivity      |
                   |<-------------------------------------->|
                   |   Sleep Request    |                   |
                   |------------------->|                   |
                   |   Sleep Confirm    |                   |
                   |<-------------------|                   |
                   |   Exchange State   |                   |
                   |    Information     |                   |
                   |<------------------>|                   |
                   |                    |                   |
                   |                    | Incoming Packets  |
                   |                    | for Sleeping Host |
                   |                    |<------------------|
                   |                    | Respond instead of|
                   |                    |   Sleeping Host   |
                   |                    |------------------>|
                   |                    |                   |
                 ++|++++++++++++++++++++|+++++++++++++++++++|++
                 + |                    |Packet for Sleeping| +
                 + |                    |  Host that Proxy  | +
           Case1 + |                    |   cannot process  | +
                 + |   Wakeup Packet    |<------------------| +
                 + |<-------------------|                   | +
                 ++|++++++++++++++++++++|+++++++++++++++++++|++
                 ++|++++++++++++++++++++|+++++++++++++++++++|++
                 + |   Wakeup Report    |                   | +
           Case2 + |------------------->|                   | +
                 + |   Wakeup Confirm   |                   | +
                 + |<-------------------|                   | +
                 ++|++++++++++++++++++++|+++++++++++++++++++|++
                   |   Exchange State   |                   |
                   |    Information     |                   |
                   |<------------------>|                   |
                   |        Full Network Connectivity       |
                   |<-------------------------------------->|
                   |                                        |

               Figure 2: Network proxy high level operation






Jeong                    Expires August 19, 2014                [Page 8]

Internet-Draft                Network Proxy                February 2014


4.1.  ARP Operation

   Figure 3 depicts network proxy operation for IPv4 ARP.  A host
   performs network proxy and proxy capability discovery procedures by
   using Proxy Solicitation/Advertisement meesages with Procy Service
   Option.  After the discovery procedure, the host and discovered
   network proxy perform Sleep Request/Confirm procedure that exchanges
   the host's MAC address(es) and IP address(es) by using ARP
   Configuration Option so that the host can enter sleeping mode.  Then
   the network proxy discards ARP Request messages sent from other hosts
   in the network.  By doing so, the host can sleep without receiving or
   processing ARP broadcast message not destined to the node itself.  If
   the network proxy receives an ARP request message for sleeping host,
   it sends a reply message on behalf of the sleeping hosts using the
   host's MAC and IP address.  When the network proxy receives a packet
   that it cannot process, the proxy wakes up the sleeping hosts so that
   the host can process the incoming packet.


































Jeong                    Expires August 19, 2014                [Page 9]

Internet-Draft                Network Proxy                February 2014


                Sleeping             Network             Remote
                  Host                Proxy               Host
                   |                    |                   |
                   |Proxy Solicitation/ |                   |
                   |   Advertisement    |                   |
                   |w/ Proxy Serv. Opt. |                   |
                   |<------------------>|                   |
                   |                    |                   |
                   |   Sleep Request/   |                   |
                   |      Confirm       |                   |
                   | w/ ARP Conf. Opt.  |                   |
                   |<------------------>|                   |
                   .                    .                   .
                   .                    .                   .
                   |                    | ARP Broadcast not |
                   |                    | for Sleeping Host |
                   |                    |<------------------|
                   |                Discard ARP             |
                   |                 Broadcast              |
                   |                    |                   |
                   |                    | ARP Request for   |
                   |                    |  Sleeping Host    |
                   |                    |<------------------|
                   |                    |  ARP Reply for    |
                   |                    |  Sleeping Host    |
                   |                    |------------------>|
                   .                    .                   .
                   .                    .                   .
               Wakeup event             |                   |
                   |                    |                   |
                   |   Wakeup Report/   |                   |
                   |       Confirm      |                   |
                   |<------------------>|                   |
                   |                    |                   |

              Figure 3: Network proxy operation for IPv4 ARP

4.2.  DHCP Operation

   Figure 4 depicts network proxy operation for DHCP.  After the Sleep
   Request/Confirm procedure that exchanges the host's DHCP-related
   parameters, the host enters sleeping mode.  When 50% of DHCP Lease
   Time for the sleeping host expires, the network proxy sends DHCP
   Request message to the DHCP server and tries to renew the DHCP lease
   time on behalf of the sleeping host.  In case of successful DHCP
   renewal, the sleeping host can keep sleeping mode.  However, in case
   of DHCP renewal failure as shown in Figure 5, the network proxy
   initiates wakeup procedure by sending Wakeup packet to the sleeping



Jeong                    Expires August 19, 2014               [Page 10]

Internet-Draft                Network Proxy                February 2014


   host.  When the sleeping host wakes up, the network proxy delivers
   the current DHCP state information to the host by using DHCP
   Notification Option so that the host can perform relevant DHCP
   operation.

                Sleeping             Network               DHCP
                  Host                Proxy               Server
                   |                    |                   |
                   |Proxy Solicitation/ |                   |
                   |   Advertisement    |                   |
                   |w/ Proxy Serv. Opt. |                   |
                   |<------------------>|                   |
                   |                    |                   |
                   |   Sleep Request/   |                   |
                   |      Confirm       |                   |
                   | w/ DHCP Conf. Opt. |                   |
                   |<------------------>|                   |
                   .                    .                   .
                   .                    .                   .
                   |                    |                   |
                   |         50% of DHCP Lease time         |
                   |         for sleeping host expired      |
                   |                    |                   |
                   |                    | DHCP Request for   |
                   |                    |  Sleeping Host    |
                   |                    |------------------>|
                   |                    |    DHCP Ack       |
                   |                    |  Sleeping Host    |
                   |                    |<------------------|
                   .                    .                   .
                   .                    .                   .
               Wakeup event             |                   |
                   |                    |                   |
                   |   Wakeup Report/   |                   |
                   |       Confirm      |                   |
                   | w/ DHCP Noti. Opt. |                   |
                   |<------------------>|                   |
                   |                    |                   |

        Figure 4: Network proxy operation for DHCP renewal success











Jeong                    Expires August 19, 2014               [Page 11]

Internet-Draft                Network Proxy                February 2014


                Sleeping             Network               DHCP
                  Host                Proxy               Server
                   |                    |                   |
                   |Proxy Solicitation/ |                   |
                   |   Advertisement    |                   |
                   |w/ Proxy Serv. Opt. |                   |
                   |<------------------>|                   |
                   |                    |                   |
                   |   Sleep Request/   |                   |
                   |      Confirm       |                   |
                   | w/ DHCP Conf. Opt. |                   |
                   |<------------------>|                   |
                   .                    .                   .
                   .                    .                   .
                   |                    |                   |
                   |         50% of DHCP Lease time         |
                   |         for sleeping host expired      |
                   |                    |                   |
                   |                    | DHCP Request for   |
                   |                    |  Sleeping Host    |
                   |                    |------------------>|
                   |         87.5% of DHCP Lease time         |
                   |         for sleeping host expired      |
                   |                    |                   |
                   |                    | DHCP Request for   |
                   |                    |  Sleeping Host    |
                   |                    |------------------>|
                   |         Lease time Expired             |
                   |            or DHCP NACK                |
                   |                    |                   |
                   |   Wakeup Packet    |                   |
                   |<-------------------|                   |
                   |   Wakeup Report/   |                   |
                   |       Confirm      |                   |
                   | w/ DHCP Noti. Opt. |                   |
                   |<------------------>|                   |
                   |                    |                   |

        Figure 5: Network proxy operation for DHCP renewal failure

5.  Message Formats

   Figure 6 depicts a new ICMP message for Network Proxy operation.  The
   message is defined as follows.







Jeong                    Expires August 19, 2014               [Page 12]

Internet-Draft                Network Proxy                February 2014


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Type      |     Code      |           Checksum            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Transaction ID         | Msg. Sub-Type |   Length      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                   Option (variable size)                     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                 Figure 6: ICMP message for network proxy

   Type                <TBD> (Network Proxy Request)

   Code                0 Success
                       1 Fail

   Checksum            The 16-bit one's complement of the one's
                       complement sum of the ICMP message, starting with
                       the ICMP Type.

   Message Sub-Type    1 Proxy Solicitation Message
                       2 Proxy Advertisement Message
                       3 Sleep Request Message
                       4 Sleep Confirm Message
                       5 Wakeup Report Message
                       6 Wakeup Confirm Message

   Transaction ID      Unique identifier created each time a host starts
                       proxy operation

   Options             Options for Sub-Type messages

   Figure 7 shows the Option format for Sub-Type messages.  The Option
   format is defined as a TLV format.


                 0                   1                   2
                 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2
                +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
                |     Type      |    Length     |    Data ...
                +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-


                          Figure 7: Option format

   Type                Indicates the particular sub-type option.



Jeong                    Expires August 19, 2014               [Page 13]

Internet-Draft                Network Proxy                February 2014


                       1 Proxy Solicitation Option
                       2 Proxy Advertisement Option
                       3 Sleep Request Option
                       4 Sleep Confirm Option
                       5 Wake-up Report Option
                       6 Wake-up Confirm Option

   Length              Indicates the length (in bytes) of the data field
                       within this option.  The length does not include
                       the Type and Length bytes.

   Data                The particular data associated with this option.
                       This field may be zero or more bytes in length.
                       The format and length of the data field is
                       determined by the type and length fields.

5.1.  Proxy Solicitation Message

   A host that wants to go into sleeping model sends a Proxy
   Solicitation message to discover a network proxy in the host's
   network.  Proxy Solicitation message contains Proxy Solication Option
   shown in Figure 8.  It contains 2 bytes Identifier and 2 bytes
   sequence number.


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Opt. Type    |    Length     |          Identifier           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Sequence Number           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                    Figure 8: Proxy solicitation option

5.2.  Proxy Advertisement Message

   Proxy Advertisement message is used for notifying the Proxy Server's
   presence in network and it is periodically broadcasted to networks
   and unicasted to a network node that sent a Proxy Solicitation
   message.  Proxy Advertisement message it can contatin two options,
   Proxy Advertisement Option and Proxy Service Option.  Figure 9 shows
   format for Proxy Advertisement Option that contains the address of
   Proxy Server's IP address(es) and Preference(s).






Jeong                    Expires August 19, 2014               [Page 14]

Internet-Draft                Network Proxy                February 2014


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Opt. Type    |    Length     |  Num. of Addr |Addr Entry Size|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |           Lifetime            |        Proxy Address 1        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Proxy Address 1        |      Address Preference 1     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      Address Preference 1     |        Proxy Address 2        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Proxy Address 2        |      Address Preference 2     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      Address Preference 2     |            ...                |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                   Figure 9: Proxy advertisement option

   Figure 10 indicates Proxy Service Option format that contains the
   list of services and protocols supported by a proxy server.  Service
   Type indicate the mandatory and optional protocols specified in
   [PROXZZZY]

   Type                Indicates the service types supported by network
                       proxy in this document.


                       1 IPv4 ARP
                       2 DHCPv4
                       3 ...


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Opt. Type    |    Length     |       Service Type 1          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |               ...             |       Service Type N          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                      Figure 10: Proxy service option








Jeong                    Expires August 19, 2014               [Page 15]

Internet-Draft                Network Proxy                February 2014


5.3.  Sleep Request Message

   Sleep Request Message is unicasted to Network Proxy Server and it
   informs the host's entering to sleep mode.  It also includes the
   host's context information for proxyed sprotocols.  Figure 11 shows
   Sleep Request option header format.  Request Option Type indicates
   the type of service or protocol to be proxyed.


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Opt. Type    |    Length     | Req. Opt. Type|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


               Figure 11: Sleep request option header format

5.3.1.  IPv4 ARP Configuration Option

   Figure 12 shows the format of IPv4 ARP Configuration Option included
   within Sleep Request Option.  Hardware Address Type and Protocol Type
   indicate the hardware address type and the protocol address type of
   ARP entry sleeping host's ARP table.  Hardware Length and Protocol
   Length indicate the length of hardware address and protocol address
   of sleeping host.  Number of addresses indicates the number of
   hardware and protocol pairs.
























Jeong                    Expires August 19, 2014               [Page 16]

Internet-Draft                Network Proxy                February 2014


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                                                     +-+-+-+-+-+-+-+-+
                                                     | H/W Addr. Type|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |          Protocol Type        |   H/W Length  | Protocol Len. |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Number of Address      |   Sender Hardware Address 1   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |   Sender Hardware Address 1   |   Sender Protocol Address 1   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |   Sender Protocol Address 1   |   Sender Hardware Address 2   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |   Sender Hardware Address 2   |   Sender Protocol Address 2   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |   Sender Protocol Address 2   |            ...                |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                 Figure 12: IPv4 ARP configuration option

5.3.2.  DHCP Configuration Option

   Figure 13 shows the format of DHCP Configuration Oprtion included
   within Sleep Request Option.  Total Lease Time and Lease Time Left
   indicate the total address lease time and remaining address lease
   time in seconds.  DHCP Server IP Address indicates the IPv4 address
   of DHCP server.


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                                                     +-+-+-+-+-+-+-+-+
                                                     |    All Zero   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |          Total Lease Time     |        Lease Time Left        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                      DHCP Server IP Address                   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                   Figure 13: DHCP Configuration Option

5.4.  Sleep Confirm Message

   Figure 14 describes the format for Sleep Confirm message that is sent
   from a Proxy Server to Client as a response of Sleep Request message.
   Sleep Confirm message contains Sleep Confirm Option.  Code indicates



Jeong                    Expires August 19, 2014               [Page 17]

Internet-Draft                Network Proxy                February 2014


   the result of Sleep Request operation. 0 indicates success and 1
   indicates failure.  Client Identifier is a unique ID for identifying
   Client and will be allocated by Proxy Server.


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Opt. Type    |    Code       |        Checksum               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Client Identifier      |         All zero              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                      Figure 14: Sleep confirm option

5.5.  Wakeup Report Message

   Figure 15 describes the format for Wakeup Report message that is sent
   by a client to Proxy Server in order to notify the wakeup event of
   the client.  It is unicasted to the Proxy Server.  Client Identifier
   is the same Identifier assigned by Sleep Confirm message.


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Opt. Type    |    Code       |        Checksum               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Client Identifier      |         All zero              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                      Figure 15: Wakeup report option

5.6.  Wakeup Confirm Message

   Figure 16 shows the format for Wakeup Confirm message that is
   unicasted to a Client as a reply of the Client's Wakeup Report
   message.  It contains Wakeup Confirm Option.  Code 0 means success
   and 1 means failure.  Client Identifier is the same Identifier
   assigned by Sleep Confirm message.









Jeong                    Expires August 19, 2014               [Page 18]

Internet-Draft                Network Proxy                February 2014


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Opt. Type    |    Code       |        Checksum               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Client Identifier      |         Req. Opt. Type        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                     Figure 16: Wakeup confirm option

5.6.1.  DHCP Notification Option

   Figure 17 describes the format for DHCP Notification Option included
   within Wakeup Confirm message.  It is sent by a Proxy Server to the
   waken host in order to notify the DHCP lease time information to the
   host.  It is unicasted to the host.


      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            Code               |        Total Lease Time       |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Lease Time Left        |         All zero              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                    Figure 17: DHCP notification option

   Code      1: DHCP Renewal Success
             2: DHCP Renewal Failure

6.  Usecases of Network Proxy

   [TBD]

7.  Security Considerations

   [TBD]

8.  IANA Considerations

   [TBD]







Jeong                    Expires August 19, 2014               [Page 19]

Internet-Draft                Network Proxy                February 2014


9.  References

9.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

9.2.  Informative References

   [EEEC]     Nordman, B. and K. Christensen, "Improving the Energy
              Efficiency of Ethernet-Connected: A Proposal for
              Proxying", Ethernet Alliance , September 2007.

   [EEE]      "802.3az-2010", IEEE std , 2010.

   [EPC]      Barroso, L. and U. Holzle, "The Case for Energy-
              Proportional Computing", Proc. IEEE International
              Conference on Network Protocols (ICNP) , December 2007.

   [GreenSurvey]
              Bianzino, A., Chaudet, C., Rossi, D., and J. Rougier, "A
              survey of green networking research", IEEE Communications
              Surveys Tutorials , 2012.

   [I-D.cheshire-edns0-owner-option]
              Cheshire, S. and M. Krochmal, "EDNS0 OWNER Option", draft-
              cheshire-edns0-owner-option-00 (work in progress), July
              2009.

   [I-D.winter-energy-efficient-internet]
              Winter, R., Jeong, S., and J. Choi, "Towards an Energy-
              Efficient Internet", draft-winter-energy-efficient-
              internet-01 (work in progress), October 2012.

   [ITU]      "Resolution 73 - Information and communication
              technologies and climate change", October 2008.

   [NCP]      Jimeno, M., Christensen, K., and B. Nordman, "A Network
              Connection Proxy to Enable Hosts to Sleep and Save
              Energy", Proc. IEEE Internat. Performance Computing and
              Communications Conf , 2008.

   [PROXZZZY]
              "ProxZZZy for sleeping hosts", ECMA International
              ECMA-393, June 2012.

   [RFC6762]  Cheshire, S. and M. Krochmal, "Multicast DNS", RFC 6762,
              February 2013.



Jeong                    Expires August 19, 2014               [Page 20]

Internet-Draft                Network Proxy                February 2014


   [RFC6763]  Cheshire, S. and M. Krochmal, "DNS-Based Service
              Discovery", RFC 6763, February 2013.

   [SKILL]    Nedevschi, S., Liu, J., Nordman, B., Ratnasamy, S., and N.
              Taft, "Skilled in the Art of Being Idle: Reducing Energy
              Waste in Networked Systems", Proc. USENIX Symposium on
              Networked Systems Design and Implementation , 2009.

Author's Address

   Sangjin Jeong
   ETRI
   218 Gajeongno, Yuseong
   Daejeon  305-700
   Korea

   Phone: +82 42 860 1877
   Email: sjjeong@etri.re.kr

































Jeong                    Expires August 19, 2014               [Page 21]