Subject: [Hipsec] I-D ACTION:draft-ietf-hip-native-api-01.txt

From: [email-masked]
Date: Thu, 08 Mar 2007 18:50:02 -0500

A New Internet-Draft is available from the on-line Internet-Drafts 
directories.
This draft is a work item of the Host Identity Protocol Working Group of the IETF.

	Title		: Native Application Programming Interfaces for 
                          SHIM Layer Prococols
	Author(s)	: M. Komu
	Filename	: draft-ietf-hip-native-api-01.txt
	Pages		: 18
	Date		: 2007-3-8
	
This document proposes extensions to the current networking APIs for
   protocols based on identifier/locator split.  Currently, the document
   focuses on HIP, but the extensions can be used also by other
   protocols implementing identifier locator split.  Using the API
   extensions, new SHIM aware applications can gain a better control of
   the SHIM layer and endpoint identifiers.  For example, the
   applications can query and set SHIM related attributes, or specify
   their own endpoint identifiers for a host.  In addition, a new
   indirection element called endpoint descriptor is defined for SHIM
   aware applications that can be used for implementing opportunistic
   mode in a clean way.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-hip-native-api-01.txt

To remove yourself from the I-D Announcement list, send a message to 
[email-masked] with the word unsubscribe in the body of 
the message. 
You can also visit https://www1.ietf.org/mailman/listinfo/I-D-announce 
to change your subscription settings.

Internet-Drafts are also available by anonymous FTP. Login with the 
username "anonymous" and a password of your e-mail address. After 
logging in, type "cd internet-drafts" and then 
"get draft-ietf-hip-native-api-01.txt".

A list of Internet-Drafts directories can be found in
http://www.ietf.org/shadow.html 
or ftp://ftp.ietf.org/ietf/1shadow-sites.txt

Internet-Drafts can also be obtained by e-mail.

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-hip-native-api-01.txt".
	
NOTE:	The mail server at ietf.org can return the document in
	MIME-encoded form by using the "mpack" utility.  To use this
	feature, insert the command "ENCODING mime" before the "FILE"
	command.  To decode the response(s), you will need "munpack" or
	a MIME-compliant mail reader.  Different MIME-compliant mail readers
	exhibit different behavior, especially when dealing with
	"multipart" MIME messages (i.e. documents which have been split
	up into multiple messages), so check your local documentation on
	how to manipulate these messages.

Below is the data which will enable a MIME compliant mail reader
implementation to automatically retrieve the ASCII version of the
Internet-Draft.
_______________________________________________
Hipsec mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/hipsec

---

From: Miika Komu <[email-masked]>
Date: Wed, 14 Mar 2007 00:25:27 +0200 (EET)

> http://www.ietf.org/internet-drafts/draft-ietf-hip-native-api-01.txt

A brief diff between 00 and 01 versions:

* Juha-Matti Tapio gave some comments regarding to the loading of public
   keys from disk
* I've had several discussion with Teemu Koponen on the usefulness of
   Endpoint Descriptors (ED), including:
   * What is the difference between LSI and ED? Explained in the intro, but
     the main difference is the new address family.
   * Why the ED concept is more useful than HIT? The most practical use
     case is the opportunistic mode which cannot be implemented with HITs
     in a clean way. The ED allows late binding of destination HITs in
     connect().
* Rewrote the intro completely.
* Added motivation for new PF_SHIM family: quick detection of SHIM
   support in the localhost and it is also a consequence of introducing EDs.
* I got feedback of the ED concept in Dagstuhl seminar in Germany:
   * The use cases for the ED concept was confusing, I hope it is now
     motivated better in the draft.
   * Port number is not included in the socket address structure, but is
     queried/set using accessor functions
* Clarifications to the use and effects of ED_SHIM and ED_SHIM_ANY.
* Moved the opportunistic mode from socket attributes (or
   options) to the resolver flag AI_ED_OPP.
* The underlying protocol (PF_HIP) is discovered using the socket
   attribute functions.
* Synchronized the current document with following drafts:

http://www.ietf.org/internet-drafts/draft-komu-btns-api-01.txt
http://www.ietf.org/internet-drafts/draft-ietf-shim6-multihome-shim-api-02.txt

Btw, we have had an implementation of the native API core for 2-3 years 
now. The current version is slightly unsynchronized with the current 
specification but be basic ideas haven't changed much in the design. The 
implementation is a simple, separately built socket handler in linux 
kernel that translates ED based sockets to ipv6 based sockets and vice 
versa. It consists of 900 physical lines of code (SLOC).

Comments are welcome!

-- 
Miika Komu                                       http://www.iki.fi/miika/