A Distributed System Example

Using the Remote Operations facility for reliable applications support, we will design and build (and hopefully document) a simple text based conferencing system, akin to the Berkeley Unix <#1634#> talk<#1634#> program, but capable of supporting multiple users in the conference. An outline of the objects and ports available in the various servers, available to clients, is given below. Compare this with the Z Specification of the conference floor control system in chapter 5. We can decompose the system into three services, and analyze some design decisions for the services: The user program is then a client of these three servers, typically the conference server (to create and join the conference), then the location server (to find another user), then the ping server (to ask the other user if they want to join), then the conference again to send messages to the set of users in the conference. The conference program is a client of the user program to transmit messages that other users have sent to the conference to these users. The system is illustrated in the figure #fncnfros#1638>.

Figure: A ROS Based Conferencing Service