I'm re-submitting this fast-track for myself.  The case was previously 
submitted as "closed" and was approved, but it was later determined that 
it could be made "open".  I'm thus re-starting the timer on this case as 
an open case, and there is no substantive change to the spec since it was 
previously submitted as a closed case.  The timer expires on 06/07/2007.


EOF of Mobile IP
================

This case proposes to announce the obsolescence of Mobile IPv4 in the
next patch or micro release, and remove Mobile IPv4 functionality from
the next minor or major release.


Details
=======

Mobile IPv4 was introduced into Solaris 9 (and later back-ported to
Solaris 8) for at the request of one customer.  The One Pager for PSARC
1999/111 states that this customer was the primary consumer, and that at
the time, the customer had agreed in principle to incorporate Mobile IP
functionality into their product, which was to be built using a Solaris
platform.  This never happened.  The customer evaluated the Mobile IP
implementation that was integrated in Solaris, but never rolled out any
products which used it.

Since then, no customers have been known to use the implementation, and
the code has remained untested and unused (there is an STC mobile IP
test suite, but PIT has never run it).  Many projects have integrated
into Solaris without testing Mobile IP, and have inadvertently broken
some key Mobile IP features such as reverse tunneling (something which
customers would have discovered and escalated had they been using it).

In addition to the inoperative status of reverse tunneling in Solaris 10
and Nevada, mipagent also contains some architectural bugs that cannot
realistically be fixed due to lack of testing infrastructure and
resources.  Namely, as described in 4152864, it configures multiple IP
tunnels between the same pair of IP addresses, creating a demultiplexing
ambiguity that is impossible to untangle.  The upcoming Clearview
project will disallow the creation of more than one tunnel between the
same pair of IP addresses, in theory causing failures in mipagent
operation (if it could be made to work at all).

The mipagent daemon also uses the obsolete SEA SNMP library, which has
been EOF'ed already as part of LSARC/2006/150.  There are no plans to
enhance mipagent to use a more modern interface such as SMA.

Since there is no plan to fix or enhance mipagent, it will either become
more broken, or we can simply remove it.  This case proposes to remove
it and all related interfaces which are of no value other than to
interact with mipagent.

Removing Mobile IP from Solaris is not as simple as undoing everything
that Mobile IP projects previously did.  Some of the interfaces
implemented by Mobile IP projects and previously approved by PSARC will
remain due to their general applicability to other technologies.  The
breakdown of which interfaces are affected by this EOF and which are not
is contained in the interface tables in the "Affected Interfaces"
section below.  The proposal is to modify the documentation of affected
interfaces to reflect their obsolescence in the next solaris patch or
micro release, then remove the interfaces from the next minor or major
release.


Related PSARC Cases:
====================

1999/111  Mobile IP project
1999/439  Mobile IP RFE's
1999/445  Mobile IP Fixups
2000/013  MobileIP IPv4 socket options
2000/072  ARP ioctls for Mobile IP (removed by 2003/088)
2000/094  Bitmask flags for reverse tunneling
2000/117  IP option for reverse tunneling in MobileIP
2000/145  Reverse Tunnel for mipagent
2000/162  Updates to Mobile-IP AAA Interface Specication
2000/202  IP_RECVIF socket option for raw socket
2000/239  IP_UNICAST_IF socket option for Mobile IP (removed by 2001/350)
2000/299  Mobile-IP AAA Interface Specification
2000/409  AAA Protocol Update
2001/138  Mobile IP Dynamic Interface Detection
2001/350  MobileIP Socket Extension
2001/355  Netstat Update for Mobile IP
2001/505  IPsec For Mobile IP


Related CRs
===========

6479886 mipagent and related kernel interfaces should be removed
6511070 mobile IP code in onnv is in dubious state.


Affected Interfaces
===================

_________________________________________________________________________
|                   Interfaces Removed by This Case                     |
|_______________________________|_______________________|_______________|
|Interface                      | Classification        | Comments      |
|_______________________________|_______________________|_______________|
| mipagent(1M)                  | Committed             | 1999/111      |
| mipagentstat(1M)              | Committed             | 1999/111      |
| mipagentconfig(1M)            | Committed             | 1999/111      |
| mipagent.conf                 | Project Private       | 1999/111      |
| IFF_MIPRUNNING                | Committed             | 1999/439      |
| /etc/snmp/conf/mipagent.reg   | Project Private       | 1999/445      |
| /etc/snmp/conf/mipagent.acl   | Project Private       | 1999/445      |
| /var/run/.mipagentstat_door   | Project Private       | 1999/445      |
| RTA_SRCIFP                    | Committed             | 2000/094      |
| netstat -f inif filter        | Committed             | 2001/355      |
| netstat -f src filter         | Committed             | 2001/355      |
|_______________________________|_______________________|_______________|


The following are interfaces introduced by Mobile IP related work and
_not_ being removed by this case.  They are either in use by unrelated
subsystems, or generally useful to administrators.

_________________________________________________________________________
|                 Interfaces Not Removed by This Case                   |
|_______________________________|_______________________|_______________|
|Interface                      | Classification        | Comments      |
|_______________________________|_______________________|_______________|
| /usr/lib/libmd5.so.1          | Committed             | 1999/111      |
|   MD5Init(),                  |                       |               |
|   MD5Update(),                |                       |               |
|   MD5Final(),                 |                       | 1999/111      |
|   md5_calc()                  |                       |               |
| SIOCSLIFNAME                  | Committed             | 1999/439      |
| IFF_NORTEXCH                  | Committed             | 1999/439      |
| RTF_PRIVATE                   | Committed             | 1999/439      |
| route(1M) -private            | Committed             | 1999/439      |
| IP_RECVIF                     | Committed             | 2000/013      |
| IP_RECVSLLA                   | Committed             | 2000/013      |
| RTA_SRC                       | Project Private       | 2000/094      |
| IP_RECVTTL                    | Committed             | 2000/117      |
| IP_XMIT_IF                    | Consolidation Private | 2001/350      |
| netstat -f outif filter       | Committed             | 2001/355      |
| netstat -f dst filter         | Committed             | 2001/355      |
| netstat -f af filter          | Committed             | 2001/355      |
| netstat -f flags filter       | Committed             | 2001/355      |
|_______________________________|_______________________|_______________|

Reply via email to