Re: [mif] Adoption of API document as the MIF WG document

Simon Perreault <simon.perreault@viagenie.ca> Tue, 20 December 2011 14:11 UTC

Return-Path: <simon.perreault@viagenie.ca>
X-Original-To: mif@ietfa.amsl.com
Delivered-To: mif@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B1F7F21F8AFD for <mif@ietfa.amsl.com>; Tue, 20 Dec 2011 06:11:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.351
X-Spam-Level:
X-Spam-Status: No, score=-2.351 tagged_above=-999 required=5 tests=[AWL=0.248, BAYES_00=-2.599]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HFOLiqqGG839 for <mif@ietfa.amsl.com>; Tue, 20 Dec 2011 06:11:18 -0800 (PST)
Received: from jazz.viagenie.ca (jazz.viagenie.ca [206.123.31.2]) by ietfa.amsl.com (Postfix) with ESMTP id 35A8221F8AF7 for <mif@ietf.org>; Tue, 20 Dec 2011 06:11:18 -0800 (PST)
Received: from ringo.viagenie.ca (ringo.viagenie.ca [IPv6:2620:0:230:c000::67]) by jazz.viagenie.ca (Postfix) with ESMTPSA id 66A1F20D2A; Tue, 20 Dec 2011 09:10:47 -0500 (EST)
Message-ID: <4EF09766.9090800@viagenie.ca>
Date: Tue, 20 Dec 2011 09:10:46 -0500
From: Simon Perreault <simon.perreault@viagenie.ca>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:8.0) Gecko/20111115 Thunderbird/8.0
MIME-Version: 1.0
To: pierrick.seite@orange.com
References: <COL118-W224376376AE7A3CC854753B1A30@phx.gbl><4EEB70DF.3070201@viagenie.ca><79DAA562-B463-4D11-A4E5-AEE1325531A0@nominum.com><4EEF5278.8040103@viagenie.ca><50824C2C-A4A8-4E92-A12D-45082B9CF5DC@nominum.com><4EEF5D26.3080203@viagenie.ca><0FECAD9E-E1EB-4849-BF8E-227F49975559@nominum.com><4EEF6714.40804@viagenie.ca> <CANF0JMBt=7rB0++NYxnMrfRLz2XJDg40OLMrgOPj6fYAUTWNYg@mail.gmail.com> <843DA8228A1BA74CA31FB4E111A5C46202169D56@ftrdmel0.rd.francetelecom.fr>
In-Reply-To: <843DA8228A1BA74CA31FB4E111A5C46202169D56@ftrdmel0.rd.francetelecom.fr>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 8bit
Cc: mif@ietf.org
Subject: Re: [mif] Adoption of API document as the MIF WG document
X-BeenThere: mif@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Multiple Interface Discussion List <mif.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mif>, <mailto:mif-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mif>
List-Post: <mailto:mif@ietf.org>
List-Help: <mailto:mif-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mif>, <mailto:mif-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 20 Dec 2011 14:11:18 -0000

On 2011-12-20 08:48, pierrick.seite@orange.com wrote:
> I’m just trying to understand the scope of the MIF API and meaning of high/low
> level API.
>
> So, thinking about high-level requirements: IMU, the MIF API should address
> issues from the problem statement : DNS selection, source address selection and
> routing. Right? Considering these problems, the MIF API should be able to provide
> command/services to high level API (e.g. OMA-DM API), or even applications (if we
> imagine application with MIF management capabilities…). Typically, I’m thinking
> to the following requirements for the MIF API:
>
> DNS selection:
>
> -bound some DNS servers to an interface and suffixes.
>
> source address selection:
>
> -return the type of IP address (e.g. local, remote, mobile IP anchored
>
> -provide a valid IP address with a given type on a given interface
>
> routing / first-hop selection:
>
> -the API should allow to differentiate the traffic (i.e. provide capability to
> configure traffic selector)
>
> -associate a routing table per type of traffic

I think this is all low-level stuff.

Ideally, an application shouldn't have to deal with this stuff. It should be 
handled as automatically as possible by the stack. The high-level API should be 
as close to the "use case" as possible. For example, (I'm just inventing stuff 
now, not sure it makes sense), with an appropriate high-level API an application 
could just pass a flag saying "don't use a cellular interface".

The idea is that you don't want all apps to have to reimplement similar logic 
each time. The similar stuff can be abstracted away and put in the platform's stack.

Simon
-- 
DTN made easy, lean, and smart --> http://postellation.viagenie.ca
NAT64/DNS64 open-source        --> http://ecdysis.viagenie.ca
STUN/TURN server               --> http://numb.viagenie.ca