Download
1 / 51

Agents Transacting in Open Environments - PowerPoint PPT Presentation


  • 78 Views
  • Uploaded on

Agents Transacting in Open Environments. Two phases: Locating appropriate agents through different kinds of discovery infrastructure Agent Name Services (System level) Middle Agents (Knowledge level) Performing the transaction with or without middleware infrastructure.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Agents Transacting in Open Environments' - vilina


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Agents transacting in open environments
Agents Transacting in Open Environments

Two phases:

  • Locating appropriate agents through different kinds of discovery infrastructure

    • Agent Name Services (System level)

    • Middle Agents (Knowledge level)

  • Performing the transaction

    • with or without middleware infrastructure


Agent name service v 2 ans
Agent Name Service v.2 (ANS)

The ANS is a name registration and lookup service to facilitate communication among agent applications.

Agent 2

Agent 1


DNS

  • Most hosts that have an IP address know of (are preconfigured or learned via DHCP) of at least one DNS server

  • Entries hardcoded and infrequently changed

  • New specs (DNS update/DDNS) allow for dynamic updates of entries

  • Hierarchical and distributed

  • Primary and secondary masters for redundancy

  • Local caching for “learned” entries to speed up future resolution requests

  • New SRV Resource Records to indicate service type, address, port, and load balencing information


Ans features benefits
ANS Features & Benefits

  • Acts as a “white-pages” service similar to the Domain Name Service (DNS)

  • Provides extended features that do not exist in DNS

  • Integrates new features that have not yet been standardized, or made widely available with DNS (service type and port numbers, service discovery)

  • Provides platform for testing agent interactions without requiring immediate implementation and integration of new technologies into centrally administered network infrastructure


Ans acts as an extension to dns
ANS acts as an extension to DNS

Agent

Name lookup

ANS Infrastructure

Partial resolution but with extra info:

Location = protocol://hostname:port-number

hostname lookup

DNS Infrastructure

IP Address


Agent communications
Agent Communications

Now, I

need to find

other agents,

and let them

find me

I want to

talk on the

network to

other agents

Agent 1

Agent 1

Agent 1

Communicator

Communicator

ANS Client


Recent enhancements
Recent Enhancements

  • Automatic fail-over from one ANS server to another

  • Ability to dynamically “discover” ANS servers (in both clients and servers)

  • Ability for Client to perform operations on all known ANS servers

  • Ability for Server to automatically “push” register and unregister requests

  • Ability for Server to propagate lookup requests to other ANS Server systems

  • Multiple avenues for Server to gain knowledge of Agent registration entry


Ans client initialization initialize internal list of ans servers
ANS Client Initializationinitialize internal list of ANS servers

ANS

Server

“apple”

Agent 1

  • apple

  • lemon

ANS

Server

“pear”

Communicator

ANS Client

ANS

Server

“banana”

1

File with

list of servers

  • apple

  • lemon


Dynamic discovery of ans servers
Dynamic “discovery” of ANS servers

  • Available in both clients and servers

  • Search for existing servers on system startup

  • Discover new servers as they come online

  • Remove servers that cleanly shut down and leave the network

  • Remove servers that are unreachable (avoid future delays)

  • Search for previously undiscovered servers when server-list falls below safe threshold

  • Limit repeated discovery requests to avoid multicast storms

  • Allow discovery to be disabled for single server sites, or in installations where Multicast traffic is prohibited

  • Core discovery module based on Universal Plug-N-Play (UPnP) Simple Service Discovery Protocol (SSDP)


Ans client initialization search via ssdp discovery process
ANS Client Initializationsearch via SSDP discovery process

ANS

Server

“apple”

2

Agent 1

Who's Out There?

ANS

Server

“pear”

Communicator

ANS Client

ANS

Server

“banana”

  • apple

  • lemon


Ans client initialization active servers reply that they are available
ANS Client Initializationactive servers reply that they are available

ANS

Server

“apple”

I’m here

Agent 1

ANS

Server

“pear”

3

Communicator

ANS Client

I’m here

ANS

Server

“banana”

  • apple

  • lemon

  • pear


Ans client operation new servers announce that they are alive
ANS Client Operationnew servers announce that they are alive

ANS

Server

“apple”

Agent 1

ANS

Server

“pear”

4

Communicator

ANS Client

ANS

Server

“banana”

  • apple

  • lemon

  • pear

  • banana

Hey

Everyone

I just came

online


Ans client operation entries are pruned if they are unreachable
ANS Client Operationentries are “pruned” if they are unreachable

ANS

Server

“apple”

5

To:

apple

Agent 1

To:

lemon

?

ANS

Server

“pear”

Communicator

ANS Client

To:

pear

ANS

Server

“banana”

  • apple

  • lemon

  • pear

  • banana

To:

banana


Ans client operation client can interact with one or all servers
ANS Client Operationclient can interact with one or all servers

ANS

Server

“apple”

5

To:

apple

Agent 1

To:

lemon

?

ANS

Server

“pear”

Communicator

ANS Client

To:

pear

ANS

Server

“banana”

  • apple

  • lemon

  • pear

  • banana

To:

banana


Ans client server operation agent registration with server push
ANS Client/Server OperationAgent Registration with Server “Push”

ANS

Server

“apple”

Push

to

pear

To:

apple

Agent 1

ANS

Server

“pear”

Communicator

Push to

banana

ANS Client

ANS

Server

“banana”

  • apple

  • lemon

  • pear

  • banana


Server propagation of lookup requests
Server propagation of lookup requests

  • Lookup in local cache, then possibly in SQL database

  • Lookup with partner ANS servers in same discovery group

  • Lookup sent to a user defined set of non-discoverable servers that can be used to implement an cross-organizational hierarchy of ANS systems

  • Discovery group partners look in local cache only

  • Hierarchy ANS servers look locally, then to their partners, then to their hierarchy systems

  • Search path is propagated with lookup request to assist in loop avoidance and handling request Time-To-Live limits

  • Successful non-local searches result in interim ANS servers “learning” and registering agent entry in their local cache


Ans client server operation agent lookup with server forwarding
ANS Client/Server OperationAgent Lookup with Server Forwarding

To:

apple

Agent 1

Lookup “Susan”

Check

Hierarchy

Servers

ANS

Server

“apple”

3

2

Check

with

Group

Partners

1

Lookup in Local Cache


Branching nature of extended ans lookup
Branching Nature of Extended ANS Lookup

Agent

  • Discovery Group-Partners provide scaling and fault tolerance

  • Hierarchy Partners allow linking different organizational groups

Primary ANS

Primary’s

discovered

partners

Discovered

partners of

other servers

in hierarchy


Linked ans organizations
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations1
Linked ANS Organizations

Art

Robotics

Software Eng

English

Not

found

Lookup

“Bubba”

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations2
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Not

found

Nokia

Computer

Services

Not

found

Not

found

Microsoft

You

Are

Here


Linked ans organizations3
Linked ANS Organizations

Art

Robotics

Software Eng

English

Not

found

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations4
Linked ANS Organizations

Art

Robotics

Software Eng

English

Not

found

CMU

Agents

Group

Not

found

Not

found

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations5
Linked ANS Organizations

Art

Not

found

Robotics

Software Eng

English

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations6
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Not

found

Not

found

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations7
Linked ANS Organizations

Art

Robotics

Software Eng

English

Not

found

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations8
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Not

found

Nokia

Computer

Services

Not

found

Not

found

Microsoft

You

Are

Here


Linked ans organizations9
Linked ANS Organizations

Not

found

Art

Robotics

Software Eng

English

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations10
Linked ANS Organizations

5

Art

Robotics

Software Eng

2

English

3

4

CMU

Agents

Group

1

Nokia

Computer

Services

A Time-To-Live (TTL) of 5 (default) has been reached!

Lookup will occur to local cache of “English” ANS server,

but will not be forwarded to any of the English discovery

group partners, or its hierarchy systems (Art).

Going back through the progression, 5 to 4 to 3…

the next hierarchy server branch found will be checked.

Microsoft

You

Are

Here


Linked ans organizations11
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Not

found

Nokia

Computer

Services

Microsoft

You

Are

Here


Linked ans organizations12
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

You

Are

Here

Not

found

Not

found


Linked ans organizations13
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

Not

found

You

Are

Here


Linked ans organizations14
Linked ANS Organizations

Art

Robotics

Software Eng

English

CMU

Agents

Group

Nokia

Computer

Services

Microsoft

You

Are

Here

Bubba

Found!


Linked ans organizations15
Linked ANS Organizations

Bubba “Learned”

(registered)

CMU

Agents

Group

Bubba “Learned”

(registered)

Nokia

Bubba “Learned”

(registered)

Microsoft

Bubba

Found

Answer to Bubba

Lookup “Learned”


JINI

  • Clients Agents (CA) and Service Agents/providers (SA) use Directory Agents (DA) to locate needed resources

  • Discovery mechanism used for CAs and SAs to find DAs

  • preferred DA(s) may be pre-populated instead of using discovery

  • UA, SA, DA in JINI must have a DA (SLP and mDNS allow UA to discover SA without DA)

  • Lookup of service type and attributes has lookup service performing “matchmaker”-type functions

  • Lookup services periodically re-announce themselves on the network to allow services to register them selves with the new or recovered lookup service

  • Non-responding lookup services are not automatically pruned from registering service’s list


Ans summary
ANS summary

  • Provides name resolution of agent’s friendly advertised name to a location (host & port)

  • Augments DNS service

  • May be replaced by newer DNS services

  • Like JINI, SLP, and SSDP, ANS implements discovery search for ANS servers (as DA’s) and uses unicast for the back channel

  • Uses TCP sockets for client lookup queries

  • Uses TCP sockets for agent registration


Providers and requesters
Providers and Requesters

  • Agents can be categorized as either providers of services or requesters

  • These roles are not exclusive

  • Providers and requesters want to find each other based on functionality/capability

  • This is done through advertisement and request via middle agents


Issues with locating agents 1
Issues with Locating Agents (1)

  • Evaluation criteria

    • performance

    • robustness

    • scalability

    • load balancing

    • privacy

  • Where the matching is done

    • At the requester (preserving the privacy of requesters)

    • middle agents

    • service providers


Transaction phase
Transaction Phase

  • Providers and requesters interact with each other directly

    • a negotiation phase to find out service parameters and preferences (if not taken into account in the locating phase)

    • delegation of service

  • Providers and requesters interact through middle agents

    • middle agent finds provider and delegates

    • hybrid protocols

  • Reasons for interacting through middle agents

    • privacy issues (anonymization of requesters and providers)

    • trust issues (enforcement of honesty; not necessarily keep anonymity of principals); e.g. NetBill


Protocols
Protocols

  • Who to talk to: principals involved

  • Message content:

    • ex: a LARKS specification

  • Local processing:

    • ex: implied by KQML performatives (service-request, request-for-service-providers)


Matching engine for service providers requesters
Matching Engine for Service Providers & Requesters

sorted list of agent contact info

unsorted list of agent contact info

decision algorithm

matching capabilities with requests

(LARKS)

matching capabilities with requests

(LARKS)

service request

+ parameters

service request

capability parameters

capability parameters


Broadcaster

Request for service

Requester

Broadcaster

Broadcast

service request

Offer of service

Delegation of service

Results of

service request

Provider 1

Provider n


Yellow Page

Request for service

Requester

Yellow Page

Unsorted list of contact info

of (P1,P2, …, Pk)

Advertisement

of capabilities

Delegation of service

Results of

service request

Provider 1

Provider n


Matchmaking
Matchmaking

Request for service

Requester

Matchmaker

Unsorted full description

of (P1,P2, …, Pk)

Advertisement

of capabilities

+para.

Delegation of service

Results of

service request

Provider 1

Provider n


Classified ads
Classified Ads

Requester 1

Request for service+pref.

Classified Ads

Request for service+pref.

Advertisement

of capabilities

(R1,R2, …, Rk)

contact info.

Requester n

Offer of service

Provider

selects

requester

Delegation of service

Provider 1

Service results


Recommender

Request for service+pref.

Requester

Recommender

Sorted full description

of (P1,P2, …, Pk)

Advertisement

of capabilities

+para.

Delegation

of service

Results of

service request

Provider 1

Provider n


FacilitatorCombines Agent Location and Transaction Phases

Request for service+pref.

Requester

Facilitator

Results of service

Advertisement

of capabilities

+ para.

Service

result

Delegation

of service

Provider 1

Provider n


The contract net protocol
The Contract Net Protocol

  • An agent coordination and distributed task allocation mechanism, where:

    • multiple heterogeneous agents can perform tasks

    • agents can play two roles: managers, contractees

    • managers receive tasks, select prospective contractees and ask for bids

    • best bid wins task, performs it, manager monitors

  • Pros and cons:

    • simple to implement, base for many other protocols

    • fully distributed

    • performance quality not checked

    • easy to manipulate (free riders), may cause loops


Contract net
Contract Net

Request for service

+ preferences

Requester

Manager

Results of service

Delegation

of service

Broadcast service

request + pref

Broadcast

Results of

Service

Offer

of service

Broadcast

Offer

of service

Provider 1

Provider 2

Provider n


Conclusions
Conclusions

  • Flexible services for locating agents are crucial for agile e-commerce

  • Emerging competing standards

  • No thought or standards at the knowledge level yet


ad