.de Sc
\\s-1\\$1\\s0\\$2
..
.ds cA 2006/475
.ds aR \s-1PSARC\s0
.LP
.so ../../amac
.Co
.ds LF \fI\*(aR/\*(cA\fP
.ds RF \fICopyright 2007 Sun Microsystems\fP
.if n .ds CF
.IP \fBSubject:\fP 15
Clearview: IP Observability Devices
.IP "\fBSubmitted by:\fP" 15
Philip Kirk
.IP \fBFile:\fP 15
\*(aR/\*(cA/opinion.ms
.IP \fBDate:\fP 15
June 6, 2007
.IP "\fBCommittee:\fP" 15
Kais Belgaied (opinion written by Sebastien Roy),
James D Carlson,
Bill Sommerfeld,
Gary Winiger.
.IP "\fBProduct Approval Committee:\fP" 15

Solaris PAC
.br
solaris-pac-opinion@sun.com

.pn 2
.NH
Summary
.LP
This project provides observability of IP-layer traffic by introducing a
new /dev/ipnet directory populated with "IP Observability Devices".  The
/dev/ipnet directory contains a DLPI style-1 device for each IP
interface on the system, and each device exports enough of the DLPI
state machine to allow traditional network observability tools such as
snoop and wireshark to observe packets flowing over its associated IP
interface.

In addition, some Unix variants provide IP-level loopback observability
through a special /dev/lo0 device which provides observability of all IP
loopback packets (packets originated locally and destined locally.)  For
compatibility with those other implementations, this project also
provides a /dev/lo0 DLPI device with those semantics.
.NH
Decision & Precedence Information
.LP
The project is approved as specified in references [1-3].
.LP
The project may be delivered in a patch release of Solaris as part of
the ON consolidation.
.NH
Interfaces
.LP
The project exports the following interfaces.
.if n .ne 8
.if t .ne 3
.TS H
box;
c s s
l | l | l.
Interfaces Exported
_
Interface	Classification	Comments
_
.TH
DLIOCIPNETINFO	Committed	<inet/ipnet.h>
struct dl_ipnet_info	Committed	<inet/ipnet.h>
DL_IPNETINFO_VERSION	Committed	<inet/ipnet.h>
DL_IPNET	Committed	<sys/dlpi.h>
PRIV_NET_OBSERVABILITY	Committed	<sys/priv_names.h>
/dev/lo0	Committed	See lo0(7D) in [2]
/dev/ipnet/*	Committed	See ipnet(7D) in [2]
<inet/ipnet.h>	Committed
zoneid	Committed	See snoop(1m) in [2]
net_getlifzone()	Committed	<sys/neti.h>
net_getlif_flags()	Committed	<sys/neti.h>
ip_register_cb()	Project Private	<inet/ip.h>
ip_unregister_cb()	Project Private	<inet/ip.h>
.TE
.LP
The project imports the following interfaces.
.if n .ne 8
.if t .ne 3
.TS H
box;
c s s
l | l | l.
Interfaces Imported
_
Interface	Classification	Comments
_
.TH
netinfo(9F)	Uncommitted	PSARC/2005/334
.TE
.NH
Opinion
.LP
The IP Observability Devices being introduced by this project are
designed to be of general use by any observability application which can
open DLPI device nodes today (e.g., snoop, wireshark, tcpdump.)  The
only missing piece to allow those tools to handle the packets provided
by these devices is a decoder for the ipnet header format described in
[3].  Since snoop(1M) is part of the ON consolidation, it will be
enhanced to handle ipnet devices as part of this project.  While the
project will also work with third party open source projects such as
wireshark to implement a decoder for ipnet devices, something more is
needed to allow any third party developer to independently provide such
support on their own.

As such, the committee advises the project to document the ipnet header
format in an IETF informational RFC (in the form of advice, as detailed
in Appendix B.)
.NH
Minority Opinion(s)
.LP
None.
.NH
Advisory Information
.LP
None.
.NH
Appendices
.NH 2
Appendix A: Technical Changes Required
.LP
.RS
None.
.RE
.NH 2
Appendix B: Technical Changes Advised
.LP
.RS
.IP 1.
To help third parties implement tools that access ipnet devices, the
project team is advised to create an IETF informational RFC that
documents the header formats needed to interact with those devices.
.RE
.NH 2
Appendix C: Reference Material
.LP
Unless stated otherwise, path names are relative to the case
directory \*(aR/\*(cA.
.IP 1.
PSARC 20 Questions
.br
File:
final.materials/20_questions.txt      
.IP 2.
Architecture Specification
.br
File:
final.materials/spec.txt
.IP 3.
Design Specification
.br
File:
final.materials/design-document.pdf
