40
Towards Content-Centric Internetworking based on the Publish/Subscribe paradigm Christian Esteve et al. [email protected] School of Electrical and Computer Engineering (FEEC) University of Campinas (UNICAMP), Brazil 15/06/2008 1

Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Towards Content-Centric Internetworking based on the Publish/Subscribe paradigm

Christian Esteve et [email protected]

School of Electrical and Computer Engineering (FEEC)

University of Campinas (UNICAMP), Brazil

15/06/2008 1

Page 2: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Agenda

• Motivation• Concepts of Content-Centric Internetworking

– Content routing– Publish/Subscribe mode of communication– Related work– The RTFM architecture

• Routing and forwarding in CCNGI– Goals and challenges– Efficient data structures: Bloom Filters– First steps on SPSwitch

• Conclusions• References

15/06/2008 2

Page 3: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Motivation

• Original Internet:

– 70s technology, conversational pipes, host-to-host C/S communications

• Now, Internet use (>90%):

– Content retrieval & Service access

– Request & Delivery of named data

– CDNs and P2P: ad-hoc fixes

• Next Generation Internet approaches up today solving the “old” E2E connectivity problem

• Shift to a content-centric point of view :

– A new problem to solve (!):

• End-to-Data (E2D)

• Answering the clean-slate question…

– Add content-awareness and massive storage capacity at routers

15/06/2008 3

Page 4: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Motivation

• Current Internet´s ad-hoc fixes for content distribution– The beauty of the Internet design is that it was able to

accommodate very successful overlay workarounds:• Content Delivery Networks (CDN)• Peer-to-Peer Networks (P2P)

– Most innovation in the last decade coming from P2P and CDN• NAT transversal, DHTs, swarming protocols, distributed mgm, overlay

routing

• But, TCP/IP host-to-host communication is inefficient for content dissemination:– End-to-end content-agnostic communications involving a heavy

weight “connection” (stable IP).– The same pieces of data transmitted in a short period of time

over the same links (at client and server sides).– Over 99% network´s use to retrieve named pieces of data,

actually independent from the host holding the data.15/06/2008 4

Page 5: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Introduction

What is “content-routing”?• Indirection point for multiplexing data messages based on their

content (semantic & syntactic) rather than network host addresses.• Equals “name-based routing” where name ≠ host/interface name.• Content routing from a functional point of view:

– Application layer• DNS tricks, HTTP redirects, P2P systems (routing on content hashes)• XML routers, EDA / ESB, DPI systems, Publish/Subscribe systems

– Transport layer: • Load balancing HTML switches in data centers

– Network layer:• IP Multicast: Multicast address not really a “host address”, rather a name for a

set of interfaces…

– Lower layer:• Sensor networks data-centric routing

15/06/2008 5

Page 6: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Content-Centric NGI Concept

• Content-centric / data-oriented paradigm– Information is indexed by keys

and retrieved by subscription.

– Publish/Subscribe communication model

• Protocols are declarative – Say what you want, not where/who to get it from

• Data is self-certified – Self-validating data (hash, signature, PKI)

– Secure the data, not the channel

• Network nodes more than simple routers– Are caches of content, indexes, and buffers.

– Forward information while caching, in the style of MANETS, DTNs, sensor and P2P.

– How?15/06/2008 6

Page 7: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Traditional Internet vs. Content-Centric New Internet

Source: Uni54 Report-Draft15/06/2008 7

Page 8: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Publish/Subscribe Communication Model

PH

P

S

Publication Handler Subscription Routing

Publication Dissemination

Content Advertisements

Publisher

Subscriber

Source: Uni54 Report-Draft

Rendevouz

Publication Data Delivery

Cache!

SubID

PubID

15/06/2008 8

Page 9: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

• What is a publication?– Any collection of data: A file, a website, a service, a stream, a message, etc.

• When a node publishes data, no data transfer actually takes place (the rendezvous system is informed of its existence).

• Only when a node subscribes to a named piece of data, the network finds the publication and creates a delivery path from the publisher to the subscriber(s).

• Publish() & Subscribe() are uncoupled in timeand space:– Content creation uncoupled from

content consumption– Subscribers identity & location

are unknown to Publishers.

• Push (receive) to Pull (send) architectural shift• Data delivery problem in

publish/subscribe based systems is similar to the multicast routing problem.

Publish/Subscribe Communication Model

CCNGI PubSub

Arch.

P

P

S

Srvs

Subscribe() == Publish (Subscription)‏

Subscribe()‏

Publish()

Notify()‏

Subscribe()‏

Rendevouzpub/sub match

Subscribe()‏

Data delivery

time

DeliveryPath

15/06/2008 9

Page 10: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

• Mode of Communication: Names, Naming, Routing & Forwarding

Comparison to related work

Name Identifier Locator

Triad(FQDN)

NodeID(DID/NID)

Internet(IP prefix)

Res.() Res.()

Out−of−band(e.g. Google, Application)

machine-friendlysemantic-freesynthatic-intenselocation-indep

user-friendlysemantic-intenselocation-indep

address-friendlylocation-dep

Res.()

Domain-scope(e.g. NodeID RVS)

Enhanced Name Resolution Services

Resolution

Routing

DONA(P:L)

host-centric

data-centric

Goal

Connect to Host

Get Data

Flat IDentifiers15/06/2008 10

Page 11: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Comparison to related workPSIRP / CCNGI DONA I3

Data Name Subscription IDh(PubID)

Principal:Label (P:L)h(PubKey):h(data)

Trigger IDh(data)

Data DescriptorMetadata

Publication IDh(Data)+Publickey

Signature (data)Public Key

-

Data owner Publisher ID Principal (P:*)h(PublicKey)

IP trigger

Primitive Snd Publish Register Put

Primitive Rec Subscribe Find Get

Network techn. Replace IPAll above L2

Above IP Above IP(overlay)

Routing&Forwarding

P/S: Semi-hierarchicalRVZ or DHT.

Data: Forwardingcontexts

• Registration Table• Proactive forwarding of Registrations up in the AS hierarchy

DHT

15/06/2008 11

Page 12: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Forwarding Tables

• Internet Protocol: Max Prefix matching in FIB• DONA: Overlay routing Data Handlers

– Register– Find

• RTFM: MPLS-like label swap/pop/push (+ push-down/pop-up)‏– Publish– Subscribe– Notify

Label IN Label OUT Port OUT

X AX 1

Y Y 1

Y Y 2

Z* * 3

Forwarding Context

Data ID Next Hop DH

P:L

1A3D3AA 213.192.120.1

A0D32B1 160.132.100.1

* 210.172.90.1

IPDH

IP Prefix IP Next Hop

130.87.0.0 213.192.100.1

15/06/2008 12

Page 13: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Related Projects• Next generation Internet proposals:

– LNA, TRIAD, NIRA, ROFL, i3, Data Oriented Network Architecture (DONA)

• Van Jacobsen Content-Centric Networking - Assurable Global Network @ PARC

• PSIRP (Publish/Subscribe Internet Routing Paradigm)– RTFM architecture

• 4WARD - Architecture and Design for the Future Internet– NetInf

• NSIS FIND Projects– Postcards from the Edge: A Cache-and-Forward Arch. Future Int

– Service-Centric End-to-End Abstractions in Network Archit.

• Disruption and Delay-tolerant Networks (DTN) - RFC 4838

• Traditional Publish/Subscribe Systems, P2P and sensor networks

• Past projects: OceanStore, Freenet

15/06/2008 13

Page 14: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

RTFM Architecture*

• Building Blocks– Rendevouz: Matches the subscription to a publication, and this can happen in

more than one network location. Distributed (DHT), semi-hierarchical (DONA), ...

– Topology: Creates and maintains delivery trees used for forwarding traffic. It acts both proactively (establishment, optimization) and reactively (on-demand).

– Forwarding: Actual data delivery data from one location to another. Based on label switching (each packet has a or a stack of labels) and a forwarding table

– Mediation: Node-to-node link data transfer

• Recursive– per “level”, “context”, ”domain”, “scope”

• Hierarchy of contexts• Metadata• RTF functions not necessary

co-located in nodes

*[Särelä et al. 2008]15/06/2008 14

Page 15: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

RTFM Organization

• RTF domains/zones

– Overlapping domains

• Rendezvous

• Topology

• Forwarding‏

15/06/2008 15

Page 16: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Agenda

• Motivation• Concepts of Content-Centric Internetworking

– Content routing– Publish/Subscribe mode of communication– Related work– The RTFM architecture

• Routing and forwarding in CCNGI– Goals and challenges– Efficient data structures: Bloom Filters– First steps on SPSwitch

• Conclusions• References

15/06/2008 16

Page 17: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Routing and Forwarding in CCNGI

SubID DataLabelLabel

Flat IDs

Orders of magnitude(approx.)

Edge(first-hop domain)

10 6 10 8

Aggregation 10 4 10 12

Core 10 3 10 16

S

SS

S

S

P

P

15/06/2008 17

Page 18: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Scalability Issues on flat ID forwarding

• Need to make forwarding decisions on flat IDs.– But compactly; routers have small space.– No aggregation possible of flat ID– Pub/Sub IDs and labels can be ~200 bits long. – Can’t keep a big lookup table for thousands or millions of flows!

• We need efficient data structures!– Hash tables

– Classic Bloom Filter• E.g., 10 bits per element yields 1% false positive.

– Other compact data structures

• Goals:– Few bits per entry, high memory utlization , retrieval of values

from associated to keys, hardware specifics

15/06/2008 18

Page 19: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

19

The revised main point of Bloom filters

• Whenever you have a set or list or function and space is an issue, an approximate representation, like a Bloom filter may be a useful alternative.

• Just be sure to consider the effects of the false positives!

• Typical applications of Bloom filters:• Originally: Dictionaries• Networking: Cache digest, loopback, P2P,

resource location, measurement, DPI, …

Source: Mitzenmacher et al.

15/06/2008

Page 20: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Bloom Filters

• Given a set S = {x1,x2,x3,…xn} on a universe U, want to answer queries of the form:

• Bloom filter provides an answer in– “Constant” time (time to hash).

– Small amount of space.

– But with some probability of being wrong.

• Alternative to hashing with interesting tradeoffs.

.SyIs

Source: Mitzenmacher et al.15/06/2008 20

Page 21: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Bloom Filters

Parametersm bits of memory n elementsk hash functions p false positive prob.

15/06/2008 21

Page 22: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Bloom FiltersStart with an m bit array, filled with 0s.

Hash each item xj in S k times. If Hi(xj) = a, set B[a] = 1.

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0B

0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0B

To check if y is in S, check B at Hi(y). All k values must be 1.

0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0B

0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0B

Possible to have a false positive; all k values are 1, but y is not in S.

n items m = cn bits k hash functions Source: Mitzenmacher et al.15/06/2008 22

Page 23: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

The maths behind Bloom filters

• Probability that a certain bit is not set during the insertion:

• Probability that it is not set by any of the k hash functions is:

• If we have inserted n elements

– the probability that a certain bit is still 0 is:

– the probability that it is 1 is :

False positive:

• Test membership of an element that is not in the set:

– Compute the k functions. The probability of all of them being 1, which would cause the algorithm to erroneously claim that the element is in the set:

• For a given m and n, the optimal value of k (the number of hash functions) that minimizes the probability is:

– which gives the false positive probability of:15/06/2008 23

Page 24: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

The maths behind Bloom filters

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

0 1 2 3 4 5 6 7 8 9 10

Hash functions

Fa

lse p

osi

tiv

e r

ate m/n = 8

Opt k = 8 ln 2 = 5.45...

n items m = cn bits k hash functions Source: Mitzenmacher et al.15/06/2008 24

Page 25: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

The maths behind Bloom filters

-8

-7

-6

-5

-4

-3

-2

-1

0

Inserted Elements vs False Positive Probability

Standard BF

K = 6M = 2Mbit

N

P(10y)

15/06/2008 25

Page 26: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Handling Deletions

• Bloom filters can handle insertions, but not deletions.

• If deleting xi means resetting 1s to 0s, then deleting xi will “delete” xj.

0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0B

xi xj

Source: Mitzenmacher et al.15/06/2008 26

Page 27: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Counting Bloom Filters

Start with an m bit array, filled with 0s.

Hash each item xj in S k times. If Hi(xj) = a, add 1 to B[a].

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0B

0 3 0 0 1 0 2 0 0 3 2 1 0 2 1 0B

To delete xj decrement the corresponding counters.

0 2 0 0 0 0 2 0 0 3 2 1 0 1 1 0B

Can obtain a corresponding Bloom filter by reducing to 0/1.

0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 0BSource: Mitzenmacher et al.

15/06/2008 27

Page 28: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Issues with Bloom Filters

Recall: – Bloom Filters use a randomized technique to test membership queries

on a set of strings.

Limitations of Bloom filters:

• No associated values:– Just binary probabilistic set-membership response

• yes/no

• Deletion is expensive:– Counting Bloom Filter approach

• Size and false negatives!

• No notion of time:– Costly association of every filter element or cell with a timer

Page 29: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Pub/Sub Forwarding

Problem statement• Need to make forwarding decisions on flat IDs.

– But compactly; routers have small space.• Memory and computation requirements of routers

– Fast, on-chip TCAM, SRAM only a few Mbits– In addition, off-chip, commercial slow DRAM available

• Requirements for Pub/Sub Forwarding– Dynamic: Need to insert and delete forwarding states.– Space and hardware-level simplicity are key.– Can allow some errors.

• Pub/Sub model, and Pt=P1*P2*…*Pn

• One question to be answered (bottom-up-approach):

Given a flat ID (label/Subscritpion ID), which is the output port/interface?

… at wire speed – Gbps!

15/06/2008 29

Page 30: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Pub/Sub Router Model

Port 4Port 1

Pub ContentCache

CC_BF

Data packets (Labels, PubID) Subscription (Labels, SubID)

after Rendesvouzmatch and Notification

Label IN Label OUT Port OUT

X AX 1

Y Y 1

Y Y 2

Z* * 3

Label operations

Q: Given an incoming packet identified by a

flat ID, which is the output port/interface?

P S

Pub/Sub Control Plane T

15/06/2008 30

Page 31: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Issues with Bloom Filters

Recall: – Bloom Filters use a randomized technique to test membership queries

on a set of strings.

Limitations of Bloom filters:

• No associated values:– Just binary probabilistic set-membership response

• yes/no

• Deletion is expensive:– Counting Bloom Filter approach

• Size and false negatives!

• No notion of time:– Costly association of every filter element or cell with a timer

Port Out

Refreshness

15/06/2008 31

Page 32: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

SPSwitching - Goal

-8

-7

-6

-5

-4

-3

-2

-1

0

Inserted Elements vs False Positive Probability

Goal BF Standard BF

K = 7M = 2MB

N

P(10y)

15/06/2008 32

Page 33: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Refreshing Bloom Filters

• Trigger to re-program the filter:

– Timing based approach.

– # Inserted elements reaches pre-computed max fpr.

– False positive indication threshold from FN• A node receiving a message with no entry in the Forwarding Table

implies a false positive of the last hop FN.

• Sends a notification back (piggybacked or aka IGMP)

• Refreshness / Re-programming technique

– Counters or counting bits approach

– Novel circular BF concept

15/06/2008 33

Page 34: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Topology Management

Major issue:How to build and maintain a topology in a networking architecture

that does not base on aggregatable host addresses?

Build topology between RTF domains Monitor and exchange network path information (e.g., link identifiers)

Delivery Tree Protocol Discover neighbouring RTF zones and nodes

Inspection of Pub/Sub messages Establish delivery trees

Based on active forwarding contexts Maintain delivery trees

Keep alive forwarding contexts Optimize delivery trees

Aggregation of delivery pathss

Discovery

Establishment

MaintenanceOptimization15/06/2008 34

Page 35: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Next Steps

• Topology management

• Rendevouz

• Big picture of information-centric Internetworking

• Efficient data structures– How to apply other data structures to our

problem?

– Review problem statement

– Evaluate the Bloom Filter alternatives:

• Memory usage (efficiency m/n)

• Computational requirements (k)

• False positive rate (p)

• Memory technology limitations (pins in

SRAM, TCAM) - hardware15/06/2008 35

Page 36: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Conclusion

• Internet usage for content dissemination and information access makes worth rethinking the new generation Internet architectures– Focus on Data retrieval & and Service access

• The publish/subscribe communication paradigm has suitable characteristics to be the primitives of the envisioned CCNGI– Space, time decoupling, security, etc.

• Still many issues to solve:– How to achieve scalable forwarding on flat Ids?

• Efficient data structures like Bloom Filters seem to be part of the solution

– How to build a topology without naming end-hosts?

– …

15/06/2008 36

Page 37: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

References• Van Jacobson’s Google Tech-talk “A New Way to look at Networking,” Aug 30, 2006,

http://video.google.com/videoplay?docid=-6972678839686672840

• P.Nikander, “Towards Understanding Pure Publish/Subscribe Cryptographic Protocols”, Sixteenth International Workshop on Security Protocols, Cambridge, England, April 2008

• M. Särelä, S.Tarkoma, et al. RTFM: Publish/Subscribe Internetworking Architecture. IST Mobile Summit 2008. June, Stockholm.

• S. Tarkoma, D. Trossen, M. Särelä. Black Boxed Rendezvous Based Networking. Accepted to ACM MobiArch 2008.

• Bloom filter networking applications, http://www.arl.wustl.edu/projects/fpx/references/pubs-ip_lookup.html

• Eugster, P.T., et al., The Many Faces of Publish/Subscribe. ACM Computing Surveys, 2003. 35(2). Available from: http://portal.acm.org/citation.cfm?id=857078

• Bonomi, F., Mitzenmacher, M., Panigrah, R., Singh, S., and Varghese, G. 2006. Beyond bloom filters: from approximate membership checks to approximate state machines. SIGCOMM Comput. Commun. Rev. 36, 4 (Aug. 2006),

• Towards a Modern Communications API. (PDF) by Michael Demmer, Kevin Fall, Teemu Koponen, and Scott Shenker. In the Proceedings of HotNets-VI, November 2007.

• On Publish/Subscribe, http://www-serl.cs.colorado.edu/downloads/serl-talks/2002.02.18-Publish.ppt

• http://www.dca.fee.unicamp.br/~chesteve/15/06/2008 37

Page 38: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Obrigado!

15/06/2008 38

Page 39: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

Comm. Flow

P AE F

D

SH

Match!

Topology Query:-> RTFMsub

<- FwdContext

F

F

F

T

R

F

R

Label IN Label OUT Port OUT

X AX 1

Y Y 1

Y Y 2

Z* * 3

Subscribe(SubID)‏

Publish(SubID,

RTFMmax) Publish()‏

+RTFMpub

Subscribe()

+ RTFMsub‏F

Publish/Subscribe(PubList)

+FwdState

Subscribe()‏

+FwdContext

Publish(FwdCtxt)

Notify(SubID,RTFMpub+Tpaths)‏

Subscribe()+ RTFMsub+ Preferred path

R

R

- Check local Subs- Layer up forward

TPreferred Path

Swap

Push-up

Pop-down Swap

15/06/2008 39

Page 40: Towards Content-Centric Internetworking based on the ...chesteve/pubs/Towards... · (e.g. Google, Application) machine-friendly semantic-free synthatic-intense location-indep user-friendly

A bigger picture

15/06/2008 40