Sedang Disiapkan

219697 Java UDP Server-Client System

Tier Three Middleware Implementation

Part 1

(UDP Transmission with TCP error correction policy)

This part requires that you create an implementation of an UDP Server client

system, simulating multiple clients (10) with a single server (1). The error

correction policy of TCP must be implemented on the UDP connections,

each client must support the error correction policies of TCP, including but

not limited to.

1) The server can go down, the clients wait, all messages in progress will

continue, as if they were not interrupted, when the server returns.

2) Messages that are sent to particular client must only go to that client.

3) A client can be shut down, once restored, will continue with the

interaction to the server.

4) The server must record and display the number of clients that are

currently connected.

5) There will be no data lost during the execution of the simulation

The message that is sent by the server to each client is

“This course presents the concepts and design of client-server and

distributed systems. Protocols, inter-process communication principles,

language issues, system architecture, concurrency, distributed resource

management are among the topics discussed. The role of standards in client-

server development and distributed systems is discussed, along with

middleware, distributed objects, and applications.”

The client will return to the server:

The message sent (or fragment)

1.

Time stamp (when the logging server posted the event)

2.

The client id

3.

The type of connection (UDP/TCP)

4.

Time message received (when the socket received the message)

5.

Time message sent (when the client sent the message)

6.

Port number

7.

Both the Server and each Client will maintain a log of transactions.

Part 2

Three Tier Middleware implementation

The roles:

Client:

In this Part you are to separate out your console from your client, this will

allow your client to accept data from programs or input sources, not

necessarily just a user interface.

To make a clear distinction, create two different applications, one will be the

user interface, one will be the client, they will connect with the policy you

implemented in step one, UDP with error correction. Port Numbers will be

used to connect the correct console to the correct client.

In addition, your user interface will allow for the following commands,

(Same implementation on each client.)

L

– List the last 10 transactions that have been recorded from the Logging

server for this client, if less than 10, display all.

Q

– Exit the client application.

S

– Send a single message to the Server, Wait for the response (the returned

message

Mx

– Send multiple messages to the server, waiting for a response from

each sent message

For example

M3, Send three messages to the server.

T

– Time delay between messages sent, in seconds.

For example

T3, Three seconds between each send.

E

– Place the server in error transmission mode, this command will cause

the server to drop 1/3 of all messages transmitted back to this client from the

server, the client or server must implement your policy for lost data or lost

path, basically your implementation of part one.

P

– Performance and statistics, this information comes from the server,

shows the number of clients attached, number of lost connections, number of

lost messages, number of retransmissions.

Server:

The communication between the clients and the server, implemented in part

one must continue to exist. (This is your transmission policy and is used for

all connections, Clients to server and server to logging server)

In addition:

You are to implement a communication path to a logging server; this will be

a separate application that records all logging information during the

interactions of the client server communications.

In this server, you will implement a cache; this will be a simple list of

current transactions that have occurred, using the following policy:

Reads:

- Every two seconds the cache is wiped clean of read information

from the logging server,

Writes

: Written data (data from client(s)) is always posted immediately to

the logging server.

In addition, the server will collect:

The message received (or fragment)

1.

Time stamp (when the logging server posted the event)

2.

The client id

3.

The type of connection (UDP/TCP)

4.

Time message received (when the socket received the message)

5.

Time message sent (when the client sent the message)

6.

Port number of server for connection to client

7.

In general you will have two different types of message, 1 type will be

communication from the client and the other will be from the server.

Logging server:

This application is UDP connected to the Server, using the policy you

implemented in step one. The function of the logging server is to read and

write information to and from the hard drive. This should be a flat file

format, your access mode and control is up to you.

The logging server is responsible for recording all message data from both

the server and the clients.

The message sent (or fragment)

1.

Time stamp (when the logging server posted the event)

2.

The client id

3.

The type of connection (UDP/TCP)

4.

Time message received (when the socket received the message)

5.

Time message sent (when the client sent the message)

6.

Port number

7.

Deliverables:

The finished project will include the following

• A single file containing a methodology section and a detailed

design for this problem.

• The Java Source code for all applications.

• The executables. (class files)

• A detailed README file describing how to use your

applications

• A detailed README file describing how to test your

applications

User

Interface 1

User

Interface n

Logging

Client 1 Server Cache

Server

Read

Client N

Write

Buffer

Kemahiran: Semua Boleh, Java

Lihat lebih lanjut: java udp server, write on communications, user interface design principles, three p, statistics problem, statistics architecture, single system design, return path, problem statistics, problem of statistics, problem in statistics, problem and statistics, p.c. connection, one up communications, message to client, m3 design, logging standards, l.a. design concepts, java 1.5 for each, inter design, interactions, function of numbers, fragment design, event connect, distributed systems concepts and design

Tentang Majikan:
( 6 ulasan )

ID Projek: #1965930