SlideShare a Scribd company logo
CSM13: Software AgentsCSM13: Software Agents
Agents and P2PAgents and P2P
James Salter
j.salter@surrey.ac.uk
19 March 2004
OutlineOutline
 What is Peer-to-Peer?
 Relationship to Agents
 Locating resources in P2P Networks
 Problems with Napster and Gnutella
 Solutions
 Other Issues with P2P & Agents
What is “P2P Computing”?What is “P2P Computing”?
 Everybody seems to have a different
idea
 File sharing
 Distributed computing
 Inter-connected communities of users
 Hideouts for virus writers and associated
criminals
 Opposite of client/server network
 All nodes can function as clients and servers
 These are all valid definitions
Network ArchitecturesNetwork Architectures
Client/Server Pure Peer-to-Peer
 Clients send requests
to/via a central server
 Small #messages
 Single point of failure
 No central server
 Clients connected to
one or more peers
 Resilient
 Large #messages
Hybrid Peer-to-Peer NetworksHybrid Peer-to-Peer Networks
 Some nodes act as group managers/routers
 More robust than client/server
 Potentially lower #messages than pure P2P
Characteristics of a P2P NetworkCharacteristics of a P2P Network
 Nodes can act as clients and servers
 No centralised server/authority
 In Pure P2P Networks
 Network is highly dynamic
 Nodes join and leave regularly
 Large-scale
 Potentially millions of nodes
 Nodes are autonomous
 But co-operate to share/retrieve resources
The Agent RelationshipThe Agent Relationship
 How does this relate to agents?
 P2P network platform for mobile agents
 Access agents over P2P network
 Agents administer P2P network
 P2P Networks are useless if agents,
users and applications cannot find
resources they require
 Queries can be represented as agents
Searching for ResourcesSearching for Resources
Napster
 Hybrid P2P
 Queries sent to
central server
 Nodes upload list of
files they hold
 Server returns IPs of
nodes hosting
matching files
 Direct connection
between nodes for
transferring files File
Transfer
Searching for ResourcesSearching for Resources
Gnutella
 Pure P2P Network
 Queries flooded from
node to node
 Query has Time-To-
Live (TTL) counter
 Decremented each
time visits a node
 Query discarded when
TTL=0
 Prevents endless
loops
The ProblemThe Problem
 Scalability
 Napster: central server is a bottleneck
 Gnutella: large volumes of query traffic
 Number of Messages
 Gnutella: query must be sent to every node
 Fault Tolerance
 Napster: single point of failure
 Ability to Find Resources
 Gnutella: query horizon (TTL limit)
SolutionSolution
Combine benefits of Gnutella and Napster
 Scalability and Number of Messages
some form of structure to avoid visiting every node
but more than one point of contact
 Fault Tolerance
structure to avoid central server
 Ability to Find Resources
provide alternative structure to remove TTL
Introduce Structure
Hash TablesHash Tables
 Hash functions map data keys to buckets
 Keys are stored in buckets in index table
 Example:
Distributed Hash Tables
 Each node hosts part of the index (one
or more buckets)
0
1
2
3
4
5
f(x) = x mod 6
f(15) = 15 mod 6 = 3
12, 24, 30
19, 61
20, 26, 56
3, 9
10, 16, 28, 34
23, 35, 65
f(36) = 36 mod 6 = 0
Chord: ArchitectureChord: Architecture
 Nodes hosting part of the index table
organised in a ring 1
41
7
22
28
34
48
52
70
73
 Each node is given
an identifier
 Hash function
determines node
host for a key(word)
 Nodes provide
pointers to machines
hosting resources
Chord: QueryingChord: Querying
 Queries routed around the ring following
finger table information
 Finger table stores
more information
about nodes closer
to it than those
further away
 Routing ~ O(log N)
 Search space
halved every hop
1
41
7
22
28
34
48
52
70
73
QueriesQueries
 Queries may be a list of keywords:
“ford AND fiesta”
 We may need more complex queries,
specifying keyword-value pairs:
“make=ford AND model=fiesta AND
mileage=20000”
 Boolean Operators: AND, OR, NOT
keyword
keyword value
A Ring of Chord RingsA Ring of Chord Rings
 Create a ring for every keyword
 Super Ring stores pointers to Keyword
Rings
Super Ring
Keyword
Ring
Keyword
Ring
Keyword
Ring
Keyword
Ring
Keyword
Ring
A Ring of Chord RingsA Ring of Chord Rings
 Support for name-value queries
 Each physical machine can take part in
multiple rings
 Each node in super ring runs an agent
responsible for keyword ring organisation
and maintenance
 Agents on each node handle incoming
queries
 Queries can be spawned as agents
 Multiple keyword queries (CPU=1.8 AND RAM=128)
 More complex queries?
Further ImprovementsFurther Improvements
 Record address of keyword rings
 Can route queries for previous keywords
directly to keyword ring
 Cache previous search results
 Direct mapping between providers and
consumers
 Cache becomes Preference List
 Ordered list of resource providers most likely
to provide the required resource
Other Issues in P2P/AgentsOther Issues in P2P/Agents
 P2P applications cannot (usually)
communicate with each other
 Agent collaboration over P2P networks
 Enhancements to existing P2P protocols
using agents
 Enhance agent co-ordination schemes
using P2P co-ordination mechanisms
 Self organisation of P2P networks
 Micro-payments for resources/brokers
SummarySummary
 P2P can be used for sharing resources
 Removes need for central management
 Large scale, dynamic networks
 P2P can enhance agent systems
 Agents can enhance P2P
 Resource Discovery research area
 Agents and P2P can be closely related

More Related Content

Viewers also liked

Software agents
Software agentsSoftware agents
Software agents
Aryan Rathore
 
Software agents
Software agentsSoftware agents
Software agents
rajsandhu1989
 
parallel language and compiler
parallel language and compilerparallel language and compiler
parallel language and compiler
Vignesh Tamil
 
Foreign trade
Foreign tradeForeign trade
Foreign trade
ProColombia
 
buscadores de internet
buscadores de internetbuscadores de internet
buscadores de internet
jeffrey velasco cardona
 
Práctica panel de control
Práctica panel de controlPráctica panel de control
Práctica panel de control
Javy Buenaño
 
Manejo de excel
Manejo de excelManejo de excel
Manejo de excel
Javy Buenaño
 
Lecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer NetworksLecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer Networks
James Salter
 
Manual casio
Manual casioManual casio
Manual casio
franklyn Merino
 
SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...
SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...
SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...
Sai Butchi babu Manepalli
 
vitamina k
vitamina kvitamina k
vitamina k
lennynere
 
Discuss the role of marketing in a business organization techno assignment 2016
Discuss the role of marketing in a business organization techno assignment  2016Discuss the role of marketing in a business organization techno assignment  2016
Discuss the role of marketing in a business organization techno assignment 2016
Mandla handirisi
 
Software Agents for Internet of Things - at AINL 2014
Software Agents for Internet of Things - at AINL 2014Software Agents for Internet of Things - at AINL 2014
Software Agents for Internet of Things - at AINL 2014
Anton Kolonin
 
Elemental ad:tech case study
Elemental ad:tech case studyElemental ad:tech case study
Elemental ad:tech case study
Elemental Communications
 
Hr audit
Hr audit Hr audit
Hr audit
sowmya cn
 
Net banking
Net bankingNet banking
Net banking
ahmedtani
 
Recolhendo o lixo jogado
Recolhendo o lixo jogadoRecolhendo o lixo jogado
Recolhendo o lixo jogado
Freekidstories
 
Energy crisis in pakistan
Energy crisis in pakistanEnergy crisis in pakistan
Energy crisis in pakistan
Muhammad Salman Naimee
 
Apache kafka
Apache kafkaApache kafka
Apache kafka
Jemin Patel
 
Verifying Microservice Integrations with Contract Testing
Verifying Microservice Integrations with Contract TestingVerifying Microservice Integrations with Contract Testing
Verifying Microservice Integrations with Contract Testing
Atlassian
 

Viewers also liked (20)

Software agents
Software agentsSoftware agents
Software agents
 
Software agents
Software agentsSoftware agents
Software agents
 
parallel language and compiler
parallel language and compilerparallel language and compiler
parallel language and compiler
 
Foreign trade
Foreign tradeForeign trade
Foreign trade
 
buscadores de internet
buscadores de internetbuscadores de internet
buscadores de internet
 
Práctica panel de control
Práctica panel de controlPráctica panel de control
Práctica panel de control
 
Manejo de excel
Manejo de excelManejo de excel
Manejo de excel
 
Lecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer NetworksLecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer Networks
 
Manual casio
Manual casioManual casio
Manual casio
 
SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...
SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...
SaaAS (Software as an Agent Service) : SaaS - THE MOBILE AGENT BASED SERVICE ...
 
vitamina k
vitamina kvitamina k
vitamina k
 
Discuss the role of marketing in a business organization techno assignment 2016
Discuss the role of marketing in a business organization techno assignment  2016Discuss the role of marketing in a business organization techno assignment  2016
Discuss the role of marketing in a business organization techno assignment 2016
 
Software Agents for Internet of Things - at AINL 2014
Software Agents for Internet of Things - at AINL 2014Software Agents for Internet of Things - at AINL 2014
Software Agents for Internet of Things - at AINL 2014
 
Elemental ad:tech case study
Elemental ad:tech case studyElemental ad:tech case study
Elemental ad:tech case study
 
Hr audit
Hr audit Hr audit
Hr audit
 
Net banking
Net bankingNet banking
Net banking
 
Recolhendo o lixo jogado
Recolhendo o lixo jogadoRecolhendo o lixo jogado
Recolhendo o lixo jogado
 
Energy crisis in pakistan
Energy crisis in pakistanEnergy crisis in pakistan
Energy crisis in pakistan
 
Apache kafka
Apache kafkaApache kafka
Apache kafka
 
Verifying Microservice Integrations with Contract Testing
Verifying Microservice Integrations with Contract TestingVerifying Microservice Integrations with Contract Testing
Verifying Microservice Integrations with Contract Testing
 

Similar to Lecture: Software Agents and P2P

Agents and P2P Networks
Agents and P2P NetworksAgents and P2P Networks
Agents and P2P Networks
James Salter
 
Introduction P2p
Introduction P2pIntroduction P2p
Introduction P2p
Davide Carboni
 
Handling Data in Mega Scale Web Systems
Handling Data in Mega Scale Web SystemsHandling Data in Mega Scale Web Systems
Handling Data in Mega Scale Web SystemsVineet Gupta
 
Peer-to-Peer Networking Systems and Streaming
Peer-to-Peer Networking Systems and StreamingPeer-to-Peer Networking Systems and Streaming
Peer-to-Peer Networking Systems and Streaming
Dilum Bandara
 
Scaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, GoalsScaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, Goals
kamaelian
 
INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks
INC 2005 - ROME: Optimising DHT-based Peer-to-Peer NetworksINC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks
INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks
James Salter
 
Week2 lec3-bscs1
Week2 lec3-bscs1Week2 lec3-bscs1
Week2 lec3-bscs1
syedhaiderraza
 
Serverless (Distributed computing)
Serverless (Distributed computing)Serverless (Distributed computing)
Serverless (Distributed computing)Sri Prasanna
 
Peer to peer Paradigms
Peer to peer ParadigmsPeer to peer Paradigms
Peer to peer Paradigms
hassan ahmed
 
lec3_10.ppt
lec3_10.pptlec3_10.ppt
lec3_10.ppt
ImXaib
 
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in GridsINC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
James Salter
 
P2P Seminar
P2P SeminarP2P Seminar
P2P SeminarCoRehab
 
Peerto Peer Networks
Peerto Peer NetworksPeerto Peer Networks
Peerto Peer Networkssanjoysanyal
 
Protocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNProtocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDN
Gerardo Pardo-Castellote
 
Signpost at FOCI 2013
Signpost at FOCI 2013Signpost at FOCI 2013
Signpost at FOCI 2013
Amir Chaudhry
 
Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...
Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...
Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...
HostedbyConfluent
 
Developing Actors in Azure with .net
Developing Actors in Azure with .netDeveloping Actors in Azure with .net
Developing Actors in Azure with .net
Marco Parenzan
 
Monitoring as an entry point for collaboration
Monitoring as an entry point for collaborationMonitoring as an entry point for collaboration
Monitoring as an entry point for collaboration
Julien Pivotto
 
Peer to Peer services and File systems
Peer to Peer services and File systemsPeer to Peer services and File systems
Peer to Peer services and File systems
MNM Jain Engineering College
 

Similar to Lecture: Software Agents and P2P (20)

Agents and P2P Networks
Agents and P2P NetworksAgents and P2P Networks
Agents and P2P Networks
 
Introduction P2p
Introduction P2pIntroduction P2p
Introduction P2p
 
Handling Data in Mega Scale Web Systems
Handling Data in Mega Scale Web SystemsHandling Data in Mega Scale Web Systems
Handling Data in Mega Scale Web Systems
 
Peer-to-Peer Networking Systems and Streaming
Peer-to-Peer Networking Systems and StreamingPeer-to-Peer Networking Systems and Streaming
Peer-to-Peer Networking Systems and Streaming
 
Scaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, GoalsScaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, Goals
 
ppt
pptppt
ppt
 
INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks
INC 2005 - ROME: Optimising DHT-based Peer-to-Peer NetworksINC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks
INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks
 
Week2 lec3-bscs1
Week2 lec3-bscs1Week2 lec3-bscs1
Week2 lec3-bscs1
 
Serverless (Distributed computing)
Serverless (Distributed computing)Serverless (Distributed computing)
Serverless (Distributed computing)
 
Peer to peer Paradigms
Peer to peer ParadigmsPeer to peer Paradigms
Peer to peer Paradigms
 
lec3_10.ppt
lec3_10.pptlec3_10.ppt
lec3_10.ppt
 
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in GridsINC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
INC 2004: An Efficient Mechanism for Adaptive Resource Discovery in Grids
 
P2P Seminar
P2P SeminarP2P Seminar
P2P Seminar
 
Peerto Peer Networks
Peerto Peer NetworksPeerto Peer Networks
Peerto Peer Networks
 
Protocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNProtocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDN
 
Signpost at FOCI 2013
Signpost at FOCI 2013Signpost at FOCI 2013
Signpost at FOCI 2013
 
Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...
Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...
Next Gen Data Modeling in the Open Data Platform With Doron Porat and Liran Y...
 
Developing Actors in Azure with .net
Developing Actors in Azure with .netDeveloping Actors in Azure with .net
Developing Actors in Azure with .net
 
Monitoring as an entry point for collaboration
Monitoring as an entry point for collaborationMonitoring as an entry point for collaboration
Monitoring as an entry point for collaboration
 
Peer to Peer services and File systems
Peer to Peer services and File systemsPeer to Peer services and File systems
Peer to Peer services and File systems
 

More from James Salter

Security for The Machine: By Design
Security for The Machine: By DesignSecurity for The Machine: By Design
Security for The Machine: By Design
James Salter
 
The Machine - a vision for the future of computing
The Machine - a vision for the future of computingThe Machine - a vision for the future of computing
The Machine - a vision for the future of computing
James Salter
 
Big data ... for security
Big data ... for securityBig data ... for security
Big data ... for security
James Salter
 
Accumulo: A Quick Introduction
Accumulo: A Quick IntroductionAccumulo: A Quick Introduction
Accumulo: A Quick Introduction
James Salter
 
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
James Salter
 
PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...
PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...
PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...
James Salter
 
FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...
FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...
FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...
James Salter
 

More from James Salter (7)

Security for The Machine: By Design
Security for The Machine: By DesignSecurity for The Machine: By Design
Security for The Machine: By Design
 
The Machine - a vision for the future of computing
The Machine - a vision for the future of computingThe Machine - a vision for the future of computing
The Machine - a vision for the future of computing
 
Big data ... for security
Big data ... for securityBig data ... for security
Big data ... for security
 
Accumulo: A Quick Introduction
Accumulo: A Quick IntroductionAccumulo: A Quick Introduction
Accumulo: A Quick Introduction
 
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
An Efficient Reactive Model for Resource Discovery in DHT-Based Peer-to-Peer ...
 
PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...
PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...
PDPTA 05 Poster: ROME: Optimising Lookup and Load-Balancing in DHT-Based P2P ...
 
FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...
FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...
FCS 05: A Multi-Ring Method for Efficient Multi-Dimensional Data Lookup in P2...
 

Recently uploaded

guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
Rogerio Filho
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
JungkooksNonexistent
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
natyesu
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
3ipehhoa
 
ER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAEER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAE
Himani415946
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
JeyaPerumal1
 
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptxLiving-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
TristanJasperRamos
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
3ipehhoa
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
Arif0071
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
laozhuseo02
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
nirahealhty
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Sanjeev Rampal
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
laozhuseo02
 
Output determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CCOutput determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CC
ShahulHameed54211
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
Gal Baras
 

Recently uploaded (16)

guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
 
ER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAEER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAE
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
 
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptxLiving-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
 
Output determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CCOutput determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CC
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
 

Lecture: Software Agents and P2P

  • 1. CSM13: Software AgentsCSM13: Software Agents Agents and P2PAgents and P2P James Salter j.salter@surrey.ac.uk 19 March 2004
  • 2. OutlineOutline  What is Peer-to-Peer?  Relationship to Agents  Locating resources in P2P Networks  Problems with Napster and Gnutella  Solutions  Other Issues with P2P & Agents
  • 3. What is “P2P Computing”?What is “P2P Computing”?  Everybody seems to have a different idea  File sharing  Distributed computing  Inter-connected communities of users  Hideouts for virus writers and associated criminals  Opposite of client/server network  All nodes can function as clients and servers  These are all valid definitions
  • 4. Network ArchitecturesNetwork Architectures Client/Server Pure Peer-to-Peer  Clients send requests to/via a central server  Small #messages  Single point of failure  No central server  Clients connected to one or more peers  Resilient  Large #messages
  • 5. Hybrid Peer-to-Peer NetworksHybrid Peer-to-Peer Networks  Some nodes act as group managers/routers  More robust than client/server  Potentially lower #messages than pure P2P
  • 6. Characteristics of a P2P NetworkCharacteristics of a P2P Network  Nodes can act as clients and servers  No centralised server/authority  In Pure P2P Networks  Network is highly dynamic  Nodes join and leave regularly  Large-scale  Potentially millions of nodes  Nodes are autonomous  But co-operate to share/retrieve resources
  • 7. The Agent RelationshipThe Agent Relationship  How does this relate to agents?  P2P network platform for mobile agents  Access agents over P2P network  Agents administer P2P network  P2P Networks are useless if agents, users and applications cannot find resources they require  Queries can be represented as agents
  • 8. Searching for ResourcesSearching for Resources Napster  Hybrid P2P  Queries sent to central server  Nodes upload list of files they hold  Server returns IPs of nodes hosting matching files  Direct connection between nodes for transferring files File Transfer
  • 9. Searching for ResourcesSearching for Resources Gnutella  Pure P2P Network  Queries flooded from node to node  Query has Time-To- Live (TTL) counter  Decremented each time visits a node  Query discarded when TTL=0  Prevents endless loops
  • 10. The ProblemThe Problem  Scalability  Napster: central server is a bottleneck  Gnutella: large volumes of query traffic  Number of Messages  Gnutella: query must be sent to every node  Fault Tolerance  Napster: single point of failure  Ability to Find Resources  Gnutella: query horizon (TTL limit)
  • 11. SolutionSolution Combine benefits of Gnutella and Napster  Scalability and Number of Messages some form of structure to avoid visiting every node but more than one point of contact  Fault Tolerance structure to avoid central server  Ability to Find Resources provide alternative structure to remove TTL Introduce Structure
  • 12. Hash TablesHash Tables  Hash functions map data keys to buckets  Keys are stored in buckets in index table  Example: Distributed Hash Tables  Each node hosts part of the index (one or more buckets) 0 1 2 3 4 5 f(x) = x mod 6 f(15) = 15 mod 6 = 3 12, 24, 30 19, 61 20, 26, 56 3, 9 10, 16, 28, 34 23, 35, 65 f(36) = 36 mod 6 = 0
  • 13. Chord: ArchitectureChord: Architecture  Nodes hosting part of the index table organised in a ring 1 41 7 22 28 34 48 52 70 73  Each node is given an identifier  Hash function determines node host for a key(word)  Nodes provide pointers to machines hosting resources
  • 14. Chord: QueryingChord: Querying  Queries routed around the ring following finger table information  Finger table stores more information about nodes closer to it than those further away  Routing ~ O(log N)  Search space halved every hop 1 41 7 22 28 34 48 52 70 73
  • 15. QueriesQueries  Queries may be a list of keywords: “ford AND fiesta”  We may need more complex queries, specifying keyword-value pairs: “make=ford AND model=fiesta AND mileage=20000”  Boolean Operators: AND, OR, NOT keyword keyword value
  • 16. A Ring of Chord RingsA Ring of Chord Rings  Create a ring for every keyword  Super Ring stores pointers to Keyword Rings Super Ring Keyword Ring Keyword Ring Keyword Ring Keyword Ring Keyword Ring
  • 17. A Ring of Chord RingsA Ring of Chord Rings  Support for name-value queries  Each physical machine can take part in multiple rings  Each node in super ring runs an agent responsible for keyword ring organisation and maintenance  Agents on each node handle incoming queries  Queries can be spawned as agents  Multiple keyword queries (CPU=1.8 AND RAM=128)  More complex queries?
  • 18. Further ImprovementsFurther Improvements  Record address of keyword rings  Can route queries for previous keywords directly to keyword ring  Cache previous search results  Direct mapping between providers and consumers  Cache becomes Preference List  Ordered list of resource providers most likely to provide the required resource
  • 19. Other Issues in P2P/AgentsOther Issues in P2P/Agents  P2P applications cannot (usually) communicate with each other  Agent collaboration over P2P networks  Enhancements to existing P2P protocols using agents  Enhance agent co-ordination schemes using P2P co-ordination mechanisms  Self organisation of P2P networks  Micro-payments for resources/brokers
  • 20. SummarySummary  P2P can be used for sharing resources  Removes need for central management  Large scale, dynamic networks  P2P can enhance agent systems  Agents can enhance P2P  Resource Discovery research area  Agents and P2P can be closely related

Editor's Notes

  1. File Sharing – virtually unlimited music, movies, software and “other” material all available for free 24/7. E.g. Napster (a few years ago), Gnutella, Kazaa, Limewire… Distributed Computing – harnessing unused processing power of millions of computers. E.g. the SETI@home project searching for aliens. 4.9million users, donated 1.8million years worth of CPU time. Inter-connected communities of users. E.g. Instant Messaging. MSN Messenger has 100million users worldwide. Hideouts for virus writers – Slapper one of the first viruses to build a peer to peer network of machines that creators can utilise – e.g. to launch a Denial of Service Attack. Opposite of a client/server network – machines can act as servers and clients. All valid definitions – but let’s look at the last one in more detail
  2. In traditional client/server environment all requests are handled by the server. No direct client to client communication. There are only a small number of messages required to send data to the server. Each machine knows where the server is on the network. Having a single server leads to a single point of failure. If the server goes down, nobody can access any resources. Opposite of this is a pure peer-to-peer environment. Each machine can be both a client and server, so we remove the need for a single central server and therefore the single point of failure. Clients no longer know exactly where the machine hosting the resource they need is. Increase in #messages required to find the resource.
  3. Not all P2P networks “pure”. In fact, many are hybrids somewhere between client/server and pure P2P. More organisation – group managers hold more information about the network so resources can be found in less messages.
  4. Notice many of the characteristics are similar to agents
  5. Agents can communicate over P2P - autonomous agents more suited to autonomous environments than client/server.
  6. Napster had a central server where all search queries were sent. Server held list of all machines that hosted the requested file. Direct connection between peers only set up to actually download the file. The single centralised server ultimately led to Napster’s downfall. Lawyers for the Recording Industry Association of America (RIAA) were able to show Napster knew their users were sharing copyrighted material (and could stop it) because everything passed through their servers. When the central server was shut down, the Napster network was broken.
  7. Huge amounts of traffic can be generated if many users are submitting queries at the same time What happens if a machine hosting the file you are searching for lies outside the query “horizon”? – It will not be found.
  8. Developed in 1960s Like pigeon holes in the common room.
  9. Nodes organised in ring according to the identifier they have been given. Could be generated by hashing their IP address. Nodes host portion of hash table around their identifier. The node hosting the index is not necessarily the node actually providing the resource – separation of index from resource (like Napster, unlike Gnutella)
  10. What do queries look like?
  11. Improve over existing Chord No need to route through a single large ring containing every node – can route using less messages.
  12. Record address of keyword rings as queries are conducted: Reduces #messages necessary to route query through ring. Improves fault-tolerance – these queries no longer rely on ANY node in Super Ring. Cache previous results: no reliance on indexing structure Preference List: further reduce #messages required to find required resource. Whether resource exists on located node may not be only consideration: Is node regularly too busy to provide resource? Is node willing to provide you with the resource? Do you have compatible security policies?
  13. P2P can be used for file sharing, distributed computing, creating communities – more generally sharing resources. No need for centralised indexes or servers – this also means the network must be self organising. Not talking about company networks – looking at worldwide scale networks (think Internet) P2P can enhance agent systems: Agents can communicate over P2P. Agents can be nodes at edges of P2P network. Agents can enhance P2P: Help in management of network (P2P networks must be self-organising – no central server). Agents can be used to discover resources. Resource Discovery in P2P networks is an ongoing research area. Agents can be useful in this. Current research activities looking at many uses of P2P and agents.