• No results found

THE GEOMORPHIC VIEW OF NETWORKING: A NETWORK MODEL AND ITS USES

N/A
N/A
Protected

Academic year: 2021

Share "THE GEOMORPHIC VIEW OF NETWORKING: A NETWORK MODEL AND ITS USES"

Copied!
17
0
0

Loading.... (view fulltext now)

Full text

(1)

Pamela Zave

AT&T Laboratories—Research Florham Park, New Jersey, USA

Jennifer Rexford Princeton University Princeton, New Jersey, USA

THE GEOMORPHIC VIEW

OF NETWORKING:

(2)

THE “CLASSIC” INTERNET ARCHITECTURE

APPLICATION LAYER TRANSPORT LAYER NETWORK LAYER LINK LAYER PHYSICAL LAYER this architecture has

succeeded (beyond most peoples’ wildest dreams) in fostering innovation and

shaping the world we live in

however, it is now widely agreed that it does not meet

society’s present and future requirements security dependability mobility scalability quality of service resource management

the trend is toward a more pluralistic architecture . . . . . . with multiple, customized protocol stacks

(3)

A REAL EXAMPLE

headers in a typical AT&T packet (12 instead of 4)

Application HTTP TCP IP IPsec IP GTP UDP IP MPLS MPLS Ethernet multiple layers of resource management cellular service

(mobility, QoS, billing) security

HTTP being used as a transport protocol ( ! ) because it is the only way to traverse NAT boxes and firewalls

(4)

A REAL EXAMPLE:

WHAT ARE THE PROBLEMS?

Application HTTP TCP IP IPsec IP GTP UDP IP MPLS MPLS Ethernet COMMUNICATION SERVICES DESIGN PRINCIPLES SOFTWARE DEVELOPMENT we need . . .

a broader range of services

security appropriate to each application . . . so that all applications can be developed easily and efficiently

this is not the most efficient way to satisfy the stakeholders’ requirements!

15 load-balancing algorithms apply to each packet; each

designed and analyzed in isolation we need principles that apply to all levels, produce modular and predictable behavior we need to develop all this custom software through code re-use and code generation

(5)

A NEW LAYER MODEL:

MEMBERS, ROUTING, AND

FORWARDING

E D B A C LAYER member a process, which is merely a locus of state and control

with the potential for autonomous action

unique and persistent

within the layer name

link acommunication channel

forwarding protocol enables members to send messages to one another, using the links

routes often there is not a link between every pair of members; routes tell the forwarding protocol how to reach one member from another over the existing links,

with forwarding by intermediate members

(6)

e d

b a

A NEW LAYER MODEL:

COMMUNICATION SERVICES

channel an instance of a communication service

session protocol implements an end-to-end communication service, on top of the basic, fundamentally unreliable,

message delivery provided by the forwarding protocol

link

session a communication channel (as are links)

LAYER

session

from the perspective of one layer,

sessions are more convenient than links

they have longer reach; might be more

reliable, better-behaved (with FIFO delivery), with guaranteed performance, etc.

(7)

e d

b a

A NEW LAYER MODEL:

THE “USES” HIERARCHY

session E A link OVERLAY (higher layer) UNDERLAY (lower layer)

when an overlay uses an underlay, a link in the overlay is implemented by a session in the underlay

registration

relates an overlay member to the underlay member that it is using on the same machine

members on the same machine communicate reliably through its operating system

to set up this link/session: A sends request to a

a looks up registration of E, finds e a sends request to e e sends request to E 1 2 3 4

(8)

A NEW LAYER MODEL:

THE MAJOR COMPONENTS

STATE PROTOCOLS ALGORITHMS can be centralized or distributed across the members in any way can be centralized or distributed across the members in any way every member must participate members attachments locations sessions links routes session protocol forwarding protocol where members are registered in underlays registrations of overlay members in this layer member algorithm attachment algorithm location algorithm link algorithm routing algorithm

(9)

A NEW LAYER MODEL:

SCOPE AND LEVEL

APPLICATION LAYERS INTERNET CORE (IP, TCP, UDP) LANs application process IP interface of machine Ethernet interface

layers are arranged in a “uses” hierarchy, which defines levels

the scope of a layer is the set or class of processes that could be members

gateway this describes the classic Internet architecture in terms of the new layer model or “geomorphic view” 1 1 2 2

(10)

THE GEOMORPHIC VIEW

OF NETWORKING

CLASSIC LAYERS OR

OSI REFERENCE MODEL

there is a fixed number of levels there can be any number of levels

each layer/level has a specialized function

each layer is a microcosm of

networking, containing all the basic components (state components and mechanisms)

the scope of each layer is global, so layer = level

some layers have small or local scopes

(11)

WE CALL THIS THE “GEOMORPHIC VIEW”

OF NETWORKING . . .

. . . BECAUSE THE COMPLEX ARRANGEMENT OF LAYERS RESEMBLES THE EARTH’S CRUST

(12)

HOW CAN THE GEOMORPHIC VIEW HELP?

SIMPLICITY

NO MORE TUNNELS NO MORE ARGUING ABOUT NAMES

vs. IDENTIFIERS vs. LOCATORS vs. ADDRESSES

the only encapsulation is inter-layer encapsulation

each layer has exactly one name space, designed for the purposes of the layer (whatever you wish to call the names)

the goal is to describe architectures with fewer, better-understood mechanisms . . . . . . rather than many ad hoc mechanisms whose interactions we do not understand

hopefully, there will be no constraints on which architectures can be described

(13)

purpose of routing is reachability purpose of routing is security

routing is vestigial

browser user

host host host

service

server security

filter

router router

HOW CAN THE GEOMORPHIC VIEW HELP?

GENERALIZATION

APPLICATION LAYER CLOUD LAYER INTERNET LAYER

the same basic mechanism is used for different purposes in different layers . . .

. . . so all layers can

benefit from the same general

(14)

A B

b1 b2

b1’ b2’

a

a1’ a2’

HOW CAN THE GEOMORPHIC VIEW HELP?

UNDERSTANDING

SESSION-LOCATION MOBILITY

layer state components

that change: layer state componentsthat change:

attachments links

routes locationssessions

BENEFITING LAYER LAYER IMPLEMENTING MOBILITY LAYERS WHERE ATTACH-MENT CHANGES

THERE ARE TWO DISTINCT

PATTERNS FOR MOBILITY a discovery enabled by the geomorphic view

DYNAMIC ROUTING MOBILITY

as the attachments of a member change, its links change,

and the routing

algorithm must find new routes to it

as the session endpoint in the overlay changes its location in this layer, the session state changes to match it

(15)

work session registration when laptop is on the bus registration when laptop is elsewhere bus company router port on bus LAN appli-cation layer implements session-location mobility for laptop —active when

laptop moves on and off bus, not when bus moves

b00 b35

b30

layer implements dynamic routing mobility for bus—active when bus moves, does nothing with individual devices on bus

HOW CAN THE GEOMORPHIC VIEW HELP?

DESIGN

COMPARISON

A DESIGN HAS ONLY ONE

CORRECT DESCRIPTION AN ORGANIZED SPACE OF POSSIBLE DESIGNS CAN BE GENERATED

picture shows a scalable design for

mobility of routers as well as endpoints (a previously unsolved problem)

(16)

layer implements session-location mobility for laptop layer implements dynamic routing

mobility for bus

HOW CAN THE GEOMORPHIC VIEW HELP?

FORMALIZATION

WE HAVE A FORMAL MODEL OF LAYERS AND

LAYER COMPOSITION (the “uses” hierarchy) IN ALLOY

this model becomes more complete as we use it to investigate more issues

FOR EXAMPLE, WE HAVE A COMPLETE MODEL OF DYNAMIC ROUTING AND

SESSION-LOCATION MOBILITY this model has been used to provethat dynamic routing and session-location mobility are compositional within a layer: they co-exist and work without interference

(17)

SUMMARY

WE NEED MULTIPLE, CUSTOMIZED PROTOCOL STACKS WITH . . .

better communication services design principles

code generation and re-use

THE GEOMORPHIC VIEW OF

NETWORKING IS A USEFUL TOOL— IT OFFERS . . . simplicity generalization understanding design comparison formalization

Isn’t this all too low-level for middleware and service-oriented architecture? NO! For example, mobility is everywhere you look.

my employer’s payroll my bank account bank A

ident bank Bident FINANCIAL

APPLICATION LAYER BANKING

LAYER

link used for direct deposit if I change banks, the direct deposit of my paycheck should still work

References

Related documents

D-Pantothenic Acid (calcium pantothenate) 50 mg Vitamin B6 (pyridoxine hydrochloride) 50 mg Vitamin B12 (cyanocobalamin) 50 mcg Biotin 50 mcg Folic Acid 1 mg Lipotropic Factors:

Sorting nodes and vertices is exe- cuted by a developed function where the number of connecting edges (outgoing and incoming) determines whether that point is only a break point

All participating countries are recognizing the great need and value of vocational training, especially in this period of time, where many people are unemployed,

A review and analysis of the privacy and security policies of the top ten VoIP software companies will provide a first step in determining how well VoIP software systems

(Alternately, the chose in action could be retained by the personal representative and the probate kept open until the litigation is completed.) Similarly, where the property

Elegant events is an event company who mainly organize events with an elegant touch.. Exchange of ideas, innovations, knowledge and experiences keeps

The Bellport Academic Center services students who have mild behavioral and/or intensive counseling concerns and/or mild to moderate learning disabilities. Ninth and tenth