Top Banner
FileWall : Implementing File Access Policies Using Dynamic Access Context Stephen Smaldone, Aniruddha Bohra, and Liviu Iftode DiscoLab Department of Computer Science Rutgers University Workshop on Spontaneous Networking May 12, 2006
49

FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Jun 04, 2018

Download

Documents

ngominh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

FileWall : Implementing File Access Policies Using Dynamic Access Context

Stephen Smaldone, Aniruddha Bohra, and Liviu Iftode

DiscoLab

Department of Computer Science

Rutgers University

Workshop on Spontaneous Networking

May 12, 2006

Page 2: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Organization:Too many files, directories, servers

Protection:Left to the discretion of the owner

Dynamism:Cannot be incorporated without file system extension

Page 3: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Organization:Too many files, directories, servers

Protection:Left to the discretion of the owner

Dynamism:Cannot be incorporated without file system extension

Administrator has little control over file access policiesAdministrator has little control over file access policies

Page 4: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

File names are powerfulCan be used to implement access policies

All file system access are performed through messages

Message transformations can be used to enforce policies

File system state can be constructed using information contained in messages

Page 5: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

File names are powerfulCan be used to implement access policies

All file system access are performed through messages

Message transformations can be used to enforce policies

File system state can be constructed using information contained in messages

Access policies can be implemented by interposition and message transformation

Access policies can be implemented by interposition and message transformation

Page 6: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Interposes on the client-server path

Stores network flow history

Evaluates each message against the firewall policies

Passes-through, drops, or transforms network packets

Page 7: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Interposes on client-server path

Stores file access history

Evaluates each message against FileWall policies

Transforms file systemmessages

Page 8: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Interposes on client-server path

Stores file access history

Evaluates each message against FileWall policies

Transforms file systemmessages

FileWall constructs virtual namespaces using file system namespaces and access policies through

message transformation

FileWall constructs virtual namespaces using file system namespaces and access policies through

message transformation

Page 9: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Access controlQuality of Service (QoS)File system organizationIntrusion detectionInformation Lifecycle Management (ILM)Data transformations

Page 10: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

MotivationDesign

Access ContextFileWall Policies

ImplementationEvaluationRelated WorkConclusions

Page 11: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Access historyAccess statistics

Sequence of accessesDescribes user behavior

EnvironmentTime, available disk space, CPU load, etc.

Page 12: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

RequirementsCompact representation

Contain semantic information which describes user behavior

Easy to understand and specify

Soft state

Page 13: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Node = file runGroups of accesses performed by same applicationOpen to close or approximate using clustered accesses

AttributesFile nameType of run (READ, WRITE, etc.)Operation count

EdgeRun started after and ended before parent

Depth-first traversal defines sequence of runs in an access tree

Page 14: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Root

Page 15: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Read 1

Root

1

Page 16: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Read 1, Create/Delete 2

Root

1

2

Page 17: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Read 1, Create/Delete 2, Read/Write 3

Root

1

2

3

Page 18: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Read 1, Create/Delete 2, Read/Write 3, Write 1

Root

1

2

3 1

Page 19: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

MotivationDesign

Access ContextFileWall Policies

ImplementationEvaluationRelated WorkConclusions

Page 20: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Transform messages (requests and replies)Sequence of rules

INPUT and OUTPUT

Use:Access context

File attributes contained in messages

Page 21: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Policy: Show files accessed today

For each client-visible file:Access Time = TODAY

Transform directory listing messagesREADDIR and READDIRPLUS

Page 22: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

FileWall

Page 23: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

MREADDIR

FileWall

Page 24: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

READDIR

FileWall

Page 25: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

READDIR

FileWall

Page 26: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

READDIR READDIRPLUS

FileWall

Page 27: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

READDIRPLUS

FileWall

Page 28: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

READDIRPLUS

FileWall

Page 29: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

READDIRPLUS

FileWall

Page 30: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

AccessContext

Policies

READDIRPLUSREADDIR

FileWall

Page 31: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

INPUT Rule:int fwin(rpc_msg request) {

if (request.proc == READDIR) {

request.proc = READDIRPLUS;

return FORWARD;

}

}

OUTPUT Rule:int fwout(rpc_msg reply) {

if (reply.proc == READDIRPLUS) {

FOREACH entp in reply {

if (entp.atime == TODAY)

copy_entry(resp_entp, entp)

}

reply.entries = res_entp;

reply.proc = READDIR;

return FORWARD;

}

}

Specified as C programs and compiled as loadable shared modules

Specified as C programs and compiled as loadable shared modules

Page 32: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

MotivationDesign

Access ContextFileWall Policies

ImplementationEvaluationRelated WorkConclusions

Page 33: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

FileWall:Click Modular Router

NFS over UDP

Page 34: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

FileWallClick Modular Router

NFS over UDP

FileWall ClientSFS toolkit

Session establishment

BootstrappingIdentify list of available file systems

Page 35: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

MotivationDesign

Access ContextFileWall Policies

ImplementationEvaluationRelated WorkConclusions

Page 36: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Page 37: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

General purpose serverEmail, user homes, web server

Files mounted over NFS

Web servers are prone to flash crowds

Current policiesRate limit number of requests

Disable web server

Page 38: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Access contextRate of sequential file reads, directory listings, etc.

PolicyHide files with rate greater than a thresholdShow files again when rate falls below threshold

Only the source of the flash crowd disappears from the namespace

Page 39: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Page 40: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Infokernel [Arpaci-Dusseau 03], firewall/NAT

Access ContextDesktop search [Soules 03]

File system prefetching [Amer 02, Lei 97]

Enforcing enterprise-wide policies [He 05]

Semantic file systems [Sheldon 91, Pike 93, Neuman 92, Rao 93]

Extensible file systems [Zadok 00, Tewari 05]

Page 41: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

User studyReal deployment

Behavior models

Page 42: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

User studyReal deployment

Behavior models

Policy languageConstraints

Debugging and logging

Page 43: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

User studyReal deploymentBehavior models

Policy languageConstraintsDebugging and logging

Data transformationsCensorshipProtocol translations

NFS -> CIFSRecipe-based file system (CASPER)IP -> RDMA

Video encodingContent adaptation

Page 44: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Per-file access policies can be enforced using virtual namespaces

No client or server modification required

Soft state maintenance required

Page 45: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Per-file access policies can be enforced using virtual namespaces

No client or server modification required

Soft state maintenance required

Provides administrators the ability to define a wide variety of access policies

Protect file systems

Provide quality of service

Page 46: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,
Page 47: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Dell Poweredge 2600 systemsDual 2.4GHz Intel Xeon processors

1GB RAM

36GB 15000 RPM SCSI disk

Linux

Gigabit Ethernet switch

Page 48: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Page 49: FileWall: Implementing File Access Policies Using Dynamic ...discolab.rutgers.edu/workshops/2006/helsinki/slides/smaldone.pdf · Using Dynamic Access Context Stephen Smaldone, AniruddhaBohra,

Workshop on Spontaneous Networking

Expressive

Deployable

Scalable

Available