Recap of P: Message Processing Language Presented by Abbie Barbir [email protected].

6
Recap of P: Message Processing Language Presented by Presented by Abbie Barbir Abbie Barbir [email protected]

Transcript of Recap of P: Message Processing Language Presented by Abbie Barbir [email protected].

Page 1: Recap of P: Message Processing Language Presented by Abbie Barbir abbieb@nortelnetworks.com.

Recap ofP: Message Processing Language

Presented byPresented by

Abbie BarbirAbbie [email protected]

Page 2: Recap of P: Message Processing Language Presented by Abbie Barbir abbieb@nortelnetworks.com.

August 3, 2004 2

P: Message Processing Language

• P is a simple configuration language designed for specification of message processing instructions (service) at application proxies– P can be used to instruct an intermediary on how to

manipulate the application message that is being processed

• Original draft work was submitted by– Alex Rousskov ([email protected]) and – Andre Beck ([email protected])• draft-ietf-opes-rules-p-02

Page 3: Recap of P: Message Processing Language Presented by Abbie Barbir abbieb@nortelnetworks.com.

August 3, 2004 3

P Design Objectives

• P language primary objective is to express statements similar to:

– If message meets criteria C,

– Then apply service S;

• P programs mostly deal with formulating message-dependent conditions and executing authorized services

• P design is meant to be applicable for a variety of similar intermediary configuration tasks such as

– Access Control List (ACL) specification

– Message routing in proxy meshes or

– Load-balancing environments

Page 4: Recap of P: Message Processing Language Presented by Abbie Barbir abbieb@nortelnetworks.com.

August 3, 2004 4

Characteristics of “P”• P is a single-assignment, lazy evaluation, strongly typed

functional programming language• Centered around the concept of an “object”, similar to objects

of object-oriented languages• An object is, essentially, a piece of data or information• Value of an object is indistinguishable from the object itself• Object type is defined by the semantics of applicable

operations and manipulations• Almost everything in P is an object, even a piece of code• General approach is application protocol agnostic– Supports loadable modules for adding support of (existing

and new) application protocols

Page 5: Recap of P: Message Processing Language Presented by Abbie Barbir abbieb@nortelnetworks.com.

August 3, 2004 5

Open Issues/Problems

• What (message) information can the P interpreter access, i.e. what information can be part of a rule condition?

• For example:

– Complete message (including message body),

– Meta-information only (e.g. HTTP headers only),

– Where to draw the line?

– Does the WG have to specify this?

• Should the WG document an HTTP module for P?

– If yes, in what document?

• Should the WG define interfaces between P interpreters and module suppliers and/or callout services?

– How do services return results?

Page 6: Recap of P: Message Processing Language Presented by Abbie Barbir abbieb@nortelnetworks.com.

August 3, 2004 6

Q&A