RNAP Message Processing Procedures
1. Receiver Agent: Query, Reserve and Close Messages
- Query Message
- When a HRN agent receives a query message, it will execute
as a receiver agent after then
- After spawning a thread which are sending a quotation message every
negotiation interval indicated by a sender agent, it will send a quotation
message
- The thread will be triggered by a reserve message
- Reserve Message
- If the message is Reserve message, the receiver agent sends a commit
message to a sender agent
- The receiver agent triggers the thread which was spawned by a
query message to send a quotation message periodically
- Close Message
- If a receiver agent receives a close message, it will clear user
interface and initialize all data structures for this connection
- After then, it sends a release message to a sender agent
2. Sender Agent: Quotation, Commit, Release Messages
- Quotation Message
- After sending a query message, it is waiting for a quotation message
to send a reserve message
- As soon as it receives a quotation message, it will shows up the
price lists which were requested by a query message
- The user selects one of those service lists and request to send
a reserve message
- UpdatingHrn object gets it and calculates the optimized bandwidth
based on the budget and the price.
- If it gets over the maximum bandwidth set up by a user, it will
set the reserve bandwidth to the maximum bandwidth
- Otherwise, it sets the calculated bandwidth to reserve bandwidth
and sends it to a receiver agent
- Commit Message
- If a sender agent receives a quotation message in case that
it doesn't receive a commit message, it ignores it.
- After it receives a commit message, UpdatingHrn object updates the
price list and accumulatedCharge frames
- Then it updates not only the application information window
of HrnMain window, but Statistics information for graphic interface
- It shows the reserved bandwidth as well as the measured bandwidth
for applications
- Release Message
- After sending a close message, if it receives a release message,
it initialize the data structure for that application
KyungTae Kim (kk521@columbia.edu)