the network flow language nfl for active sensor networks asns n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
The Network Flow Language (NFL) for Active Sensor Networks (ASNs) PowerPoint Presentation
Download Presentation
The Network Flow Language (NFL) for Active Sensor Networks (ASNs)

Loading in 2 Seconds...

play fullscreen
1 / 24

The Network Flow Language (NFL) for Active Sensor Networks (ASNs) - PowerPoint PPT Presentation


  • 96 Views
  • Uploaded on

The Network Flow Language (NFL) for Active Sensor Networks (ASNs). Danilo Florissi , Yechiam Yemini (YY), Sushil da Silva, Hao Huang Columbia University, New York, NY 10027 http://www.cs.columbia.edu/dcc/asn {df,yy,dasilva,hhuang}@cs.columbia.edu. Toward Programmable Adaptive SNs. ASN.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'The Network Flow Language (NFL) for Active Sensor Networks (ASNs)' - roana


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
the network flow language nfl for active sensor networks asns

The Network Flow Language (NFL)for Active Sensor Networks (ASNs)

Danilo Florissi, Yechiam Yemini (YY),

Sushil da Silva, Hao Huang

Columbia University, New York, NY 10027

http://www.cs.columbia.edu/dcc/asn

{df,yy,dasilva,hhuang}@cs.columbia.edu

toward programmable adaptive sns
Toward Programmable Adaptive SNs

ASN

User Needs

+ A

Resource Availability

SN

Scenario

  • Key ideas
    • Active Networks (ANets) enable programming of network transport and processing functions
    • SNs need to adapt flexibly to limited resources, changing external conditions, and different foci of user interest
  • Goal: facilitate programmable adaptive SNs through ANet
active networks
Active Networks
  • ANet render networks programmable
    • Deploy code dynamically to create new node functionality
    • Approaches: code delegation or packet capsules
the netscript language
The NetScript Language
  • Dataflow model:
    • Active element = packet stream processor engine
  • Active elements are composed from boxes (computational channels)
    • Boxes encapsulate computations
    • Composition through interconnection
    • Synchronization of streams motions
    • Allocation of underlying resources
    • Simple model of inter-operability
netscript dataflow model
NetScript Dataflow Model
  • Example: IP stack
    • Dynamic deployment of new stack components
    • On-the-fly change/upgrade of functionality
marks in web documents
Marks in Web Documents
  • HTML: embedded marks define operations on object
  • XML: support programming of marks
  • Syntax and semantics of marks are programmable
    • DTD files define syntax
    • XSL files define semantics
  • Marks meaning can vary in time and among processors
    • XSL files can be dynamically loaded and changed
nfl language for marked flows
NFL: Language for Marked Flows
  • Marked language to program processing of network flows
  • NFL programs flows ~ XML programs Web documents/objects
  • Marks replace protocol headers and can program:
    • Routing, flow control, admission control, resource reservation, content filtering, caching, etc.
  • Marks can extend or replace protocol stacks
nfl main components
NFL Main Components
  • Mark syntax
    • FTD: Flow Tag Definition ~ DTD
  • Mark semantics
    • XFL: eXtensible Flow Language ~ XSL
    • NetScript: natural candidate for semantics of NFL marks
  • NFL is an execution environment for programming active sensor applications

NFL flow

NetScript

boxes and links

Node

mark processing by nfl
Mark processing by NFL
  • Known marks are routed to processing boxes
  • Unknown marks spawn processing boxes from NFL servers

Server

NFL flow

NetScript

boxes and links

Node

what can you do with marks
What Can You Do With Marks?
  • Create your own protocols
    • Marks replace protocol headers
    • Marks are naturally stacked through nesting
  • Combine networking and computing functions
    • E.g., contents-based routing
    • E.g., contents-based error/QoS control
  • Program a SN dynamically
recent work
Recent Work
  • Design of NFL
    • Overall runtime architecture
    • Language syntax and semantics
    • Integration with NetScript
  • Start design and implementation of sample application
    • Efficient HTTP protocol (UXTP)
      • On-demand control
      • Target is very fast web access
    • Looking at other systems proposed by SenseIT researchers
      • Implement components in NFL
      • Drive the design and implementation of the language
near future challenges
Near Future Challenges
  • Porting NetScript to WINS
    • NetScript currently works on Java VM
      • Heavy use of resources
      • Java VM for Windows CE
    • Port dynamic deployment of boxes
      • Box servers come and go
      • Single hop or multiple-hop
  • Optimize use of limited resources
    • Minimize memory demand on sensors
    • Minimize overhead of NFL runtime
  • NFL implementation of interesting SenseIT applications
example prioritization of samples
Example: Prioritization of Samples
  • Problem: samples have different levels of priorities and the network has to prioritize delivery of flows

Data flows In

7

1

0

5

10

0

NetScript

boxes and links

Priority

Sorter

Priority

Queue

Node

Data flow Out

7

5

1

10

0

0

code priority in nfl
Code: Priority in NFL
  • Samples are marked with name and priority levels

Sensor Server:

<samples URI=”http://www.cs.columbia.edu/multicast1270”>

<data priority=5>

12, 15, 14, 17

</data>

<data priority=10>

7, 75, 882, 1

</data>

<data>

6, 10, 8, 8, 9

</data>

</samples>

example route discovery for wins
Example: Route Discovery for WINS
  • Problem: WINS sensors deployed in battlefield need to discover efficient routing to minimize power consumption
code route discovery for wins
Code: Route Discovery for WINS
  • Sensors broadcast their known distance to peer sensors
  • Small physical distance ~ less power consumption

Sensor Server:

<announce-name URI=”http://www.sensor16.cs.columbia.edu”>

</announce-name>

Sensor Client:

<announce-routes>

<route-entry>

URI=”http://www.sensor25.cs.columbia.edu” 16 sensor17

</route-entry>

<route-entry>

URI=”http://www.sensor5.cs.columbia.edu” 2 sensor9

</route-entry>

</announce-routes>

example simple diffusion routing i
Example: Simple Diffusion Routing (I)
  • Problem: WINS should route data contents, not individual packets

B

A

B

B

Flow A

Flow

Sorter

Flow B

A

A

A

A

A

example simple diffusion routing ii
Example: Simple Diffusion Routing (II)
  • Problem: handling failures to links and nodes
  • New NetScript boxes are loaded to handle enhanced functions

B

A

A

B

B

Flow A

Flow

Sorter

Diffusion

Criteria

Flow B

A

A

A

A

A

A

code simple diffusion routing
Code: Simple Diffusion Routing

Sensor Client:

<event-subscribe id=”102” event-label=”image”

URI=”http://www.sensor1076.cs.columbia.edu”

URI=”http://www.cs.columbia.edu/multicast1270”>

</event-subscribe>

Sensor Server:

<samples URI=”http://www.cs.columbia.edu/multicast1270”>

<data> 12, 15, 14, 17 </data>

<image> <!–- image contents> </image>

<data> 6, 10, 8, 8, 9 </data> </samples>

Manager:

<event-notification id=”765” event=”link-down”

URI=”http://www.cs.columbia.edu/multicast1270”>

URI=”http://www.sensor1053.cs.columbia.edu/link7”

</event-notification>

example trading processor bandwidth
Example: Trading Processor/Bandwidth
  • Problem: flows should compress or expand to minimize use of stressed resources in each sensor

Sensor Server:

<flow URI=”http://www.display7.cs.columbia.edu”>

<conditional-compress condition=”bandwidth < 1Mbps”>

<image>

<!-- image data>

</image>

</conditional-compress>

</flow>

controlling sn with marks
Controlling SN With Marks
  • Marks can be used to configure and control
    • Sensor functions
    • End-end QoS delivery by the network and sensors
    • Routing strategy to maximize QoS, minimize power, etc.
    • Caching of previous samples (for calculation of statistics)
sn event processing with marks
SN Event Processing with Marks
  • Marks can be used to present event data & control processing
    • Specify the type of data (seismic, streaming audio, etc.)
    • The processing of marks at sensors the flow crosses may depend on local conditions (available processor, link bandwidth, etc.)
conclusions plans and schedule
Conclusions, Plans, and Schedule
  • ANet can bring flexibility and simplicity for SN programming
  • NFL marked flow processing paradigm can specify and enhance SN functionality
  • Plans and Tentative Schedule
    • 7/1999: New contract started
    • 8/1999: New SOW
    • 10/1999: Work on design and implementation of NFL
    • 1/2000: Projected first prototype of basic NFL
    • 3/2000: Port to SenseIT devices
    • 6/2000: Implement relevant SenseIT application(s)
    • Interact with SenseIT community to identify key needs
    • Use SenseIT applications to drive design