SlideShare a Scribd company logo
Natarajan Meghanathan, et al. (Eds): SIPM, FCST, ITCA, WSE, ACSIT, CS & IT 06, pp. 529–534, 2012.
© CS & IT-CSCP 2012 DOI : 10.5121/csit.2012.2351
NEW APPROACH TO DEVELOP THE
MESSENGER APPLICATION: FROM CLIENT-
SERVER DESIGN TO P2P IMPLEMENTATION
Ha Quoc Trung1
1
Department of Data Communication and Computer Network, School of
Information and Telecommunication Technology, Hanoi University of Science
and Technology, Hanoi, Vietnam
trunghq@soict.hut.edu.vn
ABSTRACT
Client server application architecture is widely used in design and development of distributed
application. Its advantage is the protocol design simplicity. However the architecture has
several drawbacks such as server bottleneck and weak scalability. P2P architecture resolves
these drawbacks by distributing computing tasks on both the client and server, making them
equal in the system. However, P2P application development and protocol design are far difficult
than client server model. This article proposes a solution to get the advantages of both models:
the distributivity of the P2P architecture and the simplicity of the client server architecture. The
solution uses local proxies, which interact with the client as the server and sharing information
among them via P2P system. The solution is implemented and experimented for text information
and services: messaging application.
KEYWORDS
Client Server, P2P, Messenger Application, distributed system.
1. INTRODUCTION
Most of recent applications and protocols are developed base on client-server architecture, due to
its simplicity. Computational task in the client-server architecture is concentrated on the server, so
the server will quickly become bottleneck in term of processing power and communication
bandwidth. Extended client-server models are proposed to improve the performance. Load
balancing and replication techniques allow distributing load on number of servers [1,2]. Caching
is a kind of asymmetric replication of the server’s data on client side. Caching is used exclusively
in the proxy model, where the proxy is delegated from many clients to access server’s data, and
can provide information from proxy cache when possible. The proxy can be used in reversed
direction, i.e. delegated from the server part. These approaches still remain in the client server
model, so they cannot resolve the server’s bottleneck problem [1,2].
When design application with client-server architecture, the designer has to consider interaction
between multiple clients and a server. So in fact, the only kind of interaction between a client and
a server need to be considered, taking account of the fact that multiple clients can interact with
the server at the same time. The fact that data is concentrated on the server makes many problems
of distributed system trivial: synchronization, replication, security, access control and so on.
530 Computer Science & Information Technology ( CS & IT )
P2P model resolves these disadvantages by distributing the computational workload on peers (i.e.
the host – members of the system). Using this model, the interaction of the system’s component is
changed conceptually, so the protocols and applications design is complicated. Instead of
designing a protocol between client and server, now a complicated interaction between peers
must be considered.
In fact, P2P architecture resolves the problem of communication and processing performance of
the hosts, but it doesn’t concern the interaction between peers. That explains that it is possible to
mix P2P model and client server model so that the client server model is used for interaction
between user agents, while the P2P model is used for communication between hosts. The system
then consists of the client-server component and the P2P subsystem. The problems remained to be
resolved are: (i) interaction between the client-server and P2P subsystem; (ii) adapting the system
with data and application specific requirement.
In this article, a solution using local proxy agent is presented. The solutions are implemented,
experimented and adapted with text data and application: the messaging application.
The article is organized as the following: section 2 introduces some related works. Section 3
introduces the Client-Server based design for P2P Application using Local Proxy. Section 4
presents the implementation experiments of the messaging application using the local proxy
model. Section 5 concludes and presents some future works.
2. RELATED WORKS
Client server is most used architecture in distributed application. In [1] a review of client-server is
presented. Several solutions for performance, scalability and fail tolerance are discussed:
application layering; multi-tiered architecture. Other methods such as application gateway and
replication are found in [2]. These methods cannot resolve the problem of scalability. P2P
architecture has better performance in large scale, but it is far difficult to design a P2P protocol
than a Client-server protocol with the same functionality. In [3] the P2P architecture and several
P2P protocol and system are discussed and compared.
For applying P2P in client-server application, in [4] a software system allowing using P2P file
subsystem for distribution of software sources. In this solution, client remains the same, but a
local agent that can share software sources with similar agents on other hosts replaces the server.
The problem of apt-p2p is that the client cannot function in offline mode, event if there are
multiple apt-p2p agents in the same LAN.
In [5] P2P Skype is presented and analyzed in details. P2P subsystem with super peers is used to
transfer multimedia data between hosts in an efficient way.
Some common characteristics of reviewed works can be summarized here:
- Proposed architectures are suitable for different types of information
- Application protocol design depends is P2P based design.
- No common way for design P2P application and protocol.
The summary shows that we need a solution, an approach to design application with client server
architecture, but then implement them with P2P architecture.
Computer Science & Information Technology ( CS & IT ) 531
3. CLIENT SERVER BASED DESIGN FOR P2P APPLICATION USING LOCAL
PROXY
Consider the design of a distributed application. User needs to communicate each other by some
protocol, regardless the fact that the system is P2P or Client-Server. In Client-Server architecture,
this protocol defines interaction between each client and the server. Client to client interaction is
realized based on client-server communication. In P2P application, host-to-host communication is
point to point, no need of a central intermediate host (server).
To profit the advantages of both client server and P2P architecture, our goal is to:
• Design the protocol using the client server architecture for simplicity,
• Implement the protocol using P2P communication for better performance.
Our approach is to keep the protocol design by client-server architecture unchanged, while
the implementation will adapt with P2P communication system. So the client remains
unchanged. The server will accept request from client and transfers it to P2P system; it acts
as a proxy. The location of the server must be the same as the client; it will be a local server.
This is the reason why the server is called local proxy and the model is called the local proxy
model. The model is described in
Figure 1: Local Proxy Model. The system consists of following components:
• The client modules: the same as the client modules in classical client-server architecture.
• The local proxy module: each client host has an install of this local proxy module. The
module interacts with client module and updates local data.
• The P2P subsystem agent: accept request for sharing and updating data, propagandas it
on the P2P network.
Client
Local
Proxy
P2P
Agent
Client
Local
Proxy
P2P
Agent
Client
Local
Proxy
P2P
Agent
P2P
Figure 1: Local Proxy Model
532 Computer Science & Information Technology ( CS & IT )
The local proxy model gives the opportunity to develop a P2P application using client-server
design. Of course, the protocol and application logic, in point view of host-to-host
communication is realized by communication between P2P Agent and P2P subsystem. This
interaction can be trivial as a simple data sharing mechanism, but to have a good efficiency, the
data structure has to be well designed following the logic of the application and the P2P protocol.
In next section, via the case study of messenger application, this point will be discussed in details
4. THE MESSENGER APPLICATION
The client server messenger protocol and application
The comparison of messenger protocol can be found in [6] and in [7]. Of course, what we are
interested in is how to design the application with P2P communication, so we’ll chose minimal
functionality of the protocol.
The main functions of the messenger application and the information exchanges between client
and server are described in Table 1: Messenger Protocol Functional description.
Table 1: Messenger Protocol Functional description
No Name Description
1 Login, Registration Accept login request and register user in the whole
system
2 Get logged user lists Get the list of ‘Online’ users that can receive messages
3 Get messages from inbox Get all the message from inbox
4 Read a messages Get a specific message from inbox and visualize it for
user.
5 Send messages to user Send a message to specific users
7 Delete messages Delete specified messages
8 Logout, Unregistered Logout and remove users from the whole system
From this description a client and a server are built following the classic client-server model. This
application is for testing only, so we use a very simple, command line interface.
The local proxy P2P messenger application design
Our goal is to build a P2P messenger application, but the interaction between client and
server remains the same so that we can profit the description in Table 1: Messenger Protocol
Functional description. We follow the model in
Figure 1: Local Proxy Model. The client module remains unchanged. No server module is
needed. A local proxy module will be implemented, accept all requests from client module as a
server, but share it via P2P with local
proxy on other hosts. For simplicity, our technical choices are:
- Information exchanges are organized in files and folders.
- Files and folders are synchronized between local proxies using P2P file sharing system as
a communication base.
With these assumptions, each client has a shared folder: inbox and outbox. In the folder,
messages are stored as a file. When user logged in for the firs time, o token file with the name
Computer Science & Information Technology ( CS & IT ) 533
<logged><user-id> is created and stored in the shared folder. Getting list of users is done via
P2P-search function for the filename <logged>. When the user logs out, the local proxy will
delete the corresponding file.
The same mechanism is used for sending and receiving messages. When the user send a message,
the content of the message is stored in a file with the form of the name:
<message><sender><receiver><subject><controlling information>. Each time user read a
message; the local proxy will send a query <message><sender> to the P2P system for
downloading from other hosts’ local proxies.
The functions in the Table 1 will be implemented by creating and modifying files as in Table 2:
Local Proxy Data.
Table 2: Local Proxy Data
No Name Local proxy action
1 Login, Registration Create a token <logged-in><user-id> file
2 Get logged user lists Download by query “logged-in” from P2P system.
3 Get messages from inbox Download from P2P by searching with
<message><receiver-id>
4 Read a messages Get the message from the shared folder
5 Send message to user Put a message with file name:
<message><sender><receiver><subject> to the
shared folder.
7 Delete messages Delete specified file from P2P system
8 Logout, Unregistered Remove the user token from the shared folder.
The local proxy P2P messenger application implementation and experimentation
The application is built using JXTA library. For P2P subsystem we use Chord protocols, but for
the ease of integration of local proxy, we re-code the chord file-sharing agent by our-self. This
helps us to experiment the system without interference of peer not participating in our system.
For experimentation and evaluation, we face a problem of lacking a large-scale test environment.
This is the reason why our experimental result is only qualitative. It proves only that the P2P
messenger application has the same functionality of the client-server one. From analytic point of
view, when the system become large, the P2P application should have better performance that the
client server application.
5. CONCLUSIONS
In this article, we have presented an approach to implement P2P application with client-server
design. The main idea of the approach is to use a local proxy in each host-participant in P2P
application, keeping client unchanged. This local proxy will accept request from client, modified
local data and shared it with other hosts’ local proxies. This approach has several advantages for
development of P2P application:
- It makes the protocol design unchanged (same as the client-server protocol design).
- It provides the performance and scalability of P2P application.
- The local proxy model can be extended to LAN proxy model, in which local proxy will
serve not only for local client, but any client in the LAN section.
534 Computer Science & Information Technology ( CS & IT )
Based on this approach, from the client-server design of messenger application, a P2P messenger
application is developed and implemented. The applications are tested and the results show that
the functionality of both applications is the same as the design. No quantitative and performance
evaluation is executed.
In the future, the following works should be completed:
- Joining the test-bed community such as Planet-Lab, G-Lab to have the possibility to
evaluate the P2P and Client-Server application in large-scale system.
- Applying the method for other application with different kind of information exchanged:
audio, video, raw and so on.
REFERENCES
[1] Tanenbaum, A. S. & Steen, M. v. (2006) Distributed Systems: Principles and Paradigms (2nd
Edition). Prentice Hall
[2] Coulouris, G., Dollimore, J., Kindberg, T., & Blair, G. (2011) Distributed Systems: Concepts and
Design. Addison Wesley
[3] Lua, E. K., Crowcroft, J., Pias, M., Sharma, R., Lim, S., & Lim, S. (2005) A Survey and Comparison of
Peer-to-Peer Overlay Network Schemes. Communications Surveys & Tutorials, IEEE, 72--93
[4] Dale, C. & Liu, J. (2009) apt-p2p: A Peer-to-Peer Distribution System for Software Package Releases
and Updates. INFOCOM 2009, 864-872.
[5] S. A. Baset, H. G. Schulzrinne, 2006. An Analysis of the Skype Peer-to-Peer Internet Telephony
Protocol. INFOCOM 2006
[6] Reed, D. (1992) A Discussion on Computer Network Conferencing., Request for Comments: 1324
[7] Carl von Loesch, 2003, Functionality provided by systems for synchronous conferencing.
http://http://www.psyc.eu/ ,
Author
Ha Quoc Trung (Ph. D.) Graduated from Technical University of Sofia in 1996,
speciality “Electronic, Microelectronic and Automation”. In 2004 he completed his
Ph. D. degree in School of Advance Research Practice (Ecole Pratique de Hautes
Etudes-Paris, France). From 1999 to recent he is lecturer at department of data
communication and computer network. His research interests are: distributed
algorithm, system and application, ubiquitous computing.

More Related Content

What's hot

Client Server Model and Distributed Computing
Client Server Model and Distributed ComputingClient Server Model and Distributed Computing
Client Server Model and Distributed Computing
Abhishek Jaisingh
 
Client server computing
Client server computingClient server computing
Client server computing
jorge cabiao
 
Client server chat
Client server chatClient server chat
Client server chat
Freelancer
 
Chat application
Chat applicationChat application
Chat application
Mudasir Sunasara
 
client server protocol
client server protocolclient server protocol
client server protocol
bmuhire
 
Internet mail system java project
Internet mail system java projectInternet mail system java project
Internet mail system java project
Tutorial Learners
 
Performance in soa context
Performance in soa contextPerformance in soa context
Performance in soa context
eSAT Publishing House
 
Web services
Web servicesWeb services
Web services
Divya Tiwari
 
Mail server report
Mail server reportMail server report
Mail server report
Navjot Navi
 
Csc network
Csc networkCsc network
Multiuser chat application using java
Multiuser chat application using javaMultiuser chat application using java
Multiuser chat application using java
asifnoman240
 
Cs556 section2
Cs556 section2Cs556 section2
Cs556 section2
farshad33
 
Mule execution
Mule executionMule execution
Mule execution
Anand kalla
 
Middleware
MiddlewareMiddleware
Middleware
nava rathna
 
04 Client Server Technology
04 Client Server Technology04 Client Server Technology
04 Client Server Technology
Laguna State Polytechnic University
 
Patterns&Antipatternsof SOA
Patterns&Antipatternsof SOAPatterns&Antipatternsof SOA
Patterns&Antipatternsof SOA
Mohamed Samy
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middleware
sanjoysanyal
 
The Middleware technology that connects the enterprise
The Middleware technology that connects the enterpriseThe Middleware technology that connects the enterprise
The Middleware technology that connects the enterprise
Kasun Indrasiri
 
Enhancement in Web Service Architecture
Enhancement in Web Service ArchitectureEnhancement in Web Service Architecture
Enhancement in Web Service Architecture
IJERA Editor
 
Peer peer messaging system (synopsis)
Peer peer messaging system (synopsis)Peer peer messaging system (synopsis)
Peer peer messaging system (synopsis)
Mumbai Academisc
 

What's hot (20)

Client Server Model and Distributed Computing
Client Server Model and Distributed ComputingClient Server Model and Distributed Computing
Client Server Model and Distributed Computing
 
Client server computing
Client server computingClient server computing
Client server computing
 
Client server chat
Client server chatClient server chat
Client server chat
 
Chat application
Chat applicationChat application
Chat application
 
client server protocol
client server protocolclient server protocol
client server protocol
 
Internet mail system java project
Internet mail system java projectInternet mail system java project
Internet mail system java project
 
Performance in soa context
Performance in soa contextPerformance in soa context
Performance in soa context
 
Web services
Web servicesWeb services
Web services
 
Mail server report
Mail server reportMail server report
Mail server report
 
Csc network
Csc networkCsc network
Csc network
 
Multiuser chat application using java
Multiuser chat application using javaMultiuser chat application using java
Multiuser chat application using java
 
Cs556 section2
Cs556 section2Cs556 section2
Cs556 section2
 
Mule execution
Mule executionMule execution
Mule execution
 
Middleware
MiddlewareMiddleware
Middleware
 
04 Client Server Technology
04 Client Server Technology04 Client Server Technology
04 Client Server Technology
 
Patterns&Antipatternsof SOA
Patterns&Antipatternsof SOAPatterns&Antipatternsof SOA
Patterns&Antipatternsof SOA
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middleware
 
The Middleware technology that connects the enterprise
The Middleware technology that connects the enterpriseThe Middleware technology that connects the enterprise
The Middleware technology that connects the enterprise
 
Enhancement in Web Service Architecture
Enhancement in Web Service ArchitectureEnhancement in Web Service Architecture
Enhancement in Web Service Architecture
 
Peer peer messaging system (synopsis)
Peer peer messaging system (synopsis)Peer peer messaging system (synopsis)
Peer peer messaging system (synopsis)
 

Similar to NEW APPROACH TO DEVELOP THE MESSENGER APPLICATION: FROM CLIENTSERVER DESIGN TO P2P IMPLEMENTATION

Lecture5 architecture styles.pdf
Lecture5 architecture styles.pdfLecture5 architecture styles.pdf
Lecture5 architecture styles.pdf
ssuser9d62d6
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer Protocol
Vinod Gurram
 
Chat application through client server management system project.pdf
Chat application through client server management system project.pdfChat application through client server management system project.pdf
Chat application through client server management system project.pdf
Kamal Acharya
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecture
suks_87
 
Microservices
MicroservicesMicroservices
Microservices
Ramesh (@Mavuluri)
 
Cc unit 2 updated
Cc unit 2 updatedCc unit 2 updated
Cc unit 2 updated
Dr. Radhey Shyam
 
JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...
JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...
JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...
IEEEGLOBALSOFTTECHNOLOGIES
 
Client server computing
Client server computingClient server computing
Client server computing
StudsPlanet.com
 
Subscription based control system to automate management of events for robots
Subscription based control system to automate management of events for robotsSubscription based control system to automate management of events for robots
Subscription based control system to automate management of events for robots
dbpublications
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architecture
Amit rai Raaz
 
Study on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture DevelopmentStudy on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture Development
ijbuiiir1
 
Study on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture DevelopmentStudy on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture Development
ijwtiir
 
Overview of web services
Overview of web servicesOverview of web services
Overview of web services
People Strategists
 
Java Networking
Java NetworkingJava Networking
Java Networking
68SachinYadavSYCS
 
Distributed system architecture
Distributed system architectureDistributed system architecture
Distributed system architecture
Yisal Khan
 
Study on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture DevelopmentStudy on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture Development
ijcnes
 
An in-building multi-server cloud system based on shortest Path algorithm dep...
An in-building multi-server cloud system based on shortest Path algorithm dep...An in-building multi-server cloud system based on shortest Path algorithm dep...
An in-building multi-server cloud system based on shortest Path algorithm dep...
IOSR Journals
 
H017113842
H017113842H017113842
H017113842
IOSR Journals
 
Sending the data already gathered from the client to the Server
Sending the data already gathered from the client to the ServerSending the data already gathered from the client to the Server
Sending the data already gathered from the client to the Server
hussam242
 
Chapter 6-Remoting
Chapter 6-RemotingChapter 6-Remoting
Chapter 6-Remoting
Hoàng Hải Nguyễn
 

Similar to NEW APPROACH TO DEVELOP THE MESSENGER APPLICATION: FROM CLIENTSERVER DESIGN TO P2P IMPLEMENTATION (20)

Lecture5 architecture styles.pdf
Lecture5 architecture styles.pdfLecture5 architecture styles.pdf
Lecture5 architecture styles.pdf
 
Simple Mail Transfer Protocol
Simple Mail Transfer ProtocolSimple Mail Transfer Protocol
Simple Mail Transfer Protocol
 
Chat application through client server management system project.pdf
Chat application through client server management system project.pdfChat application through client server management system project.pdf
Chat application through client server management system project.pdf
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecture
 
Microservices
MicroservicesMicroservices
Microservices
 
Cc unit 2 updated
Cc unit 2 updatedCc unit 2 updated
Cc unit 2 updated
 
JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...
JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...
JAVA 2013 IEEE MOBILECOMPUTING PROJECT A scalable server architecture for mob...
 
Client server computing
Client server computingClient server computing
Client server computing
 
Subscription based control system to automate management of events for robots
Subscription based control system to automate management of events for robotsSubscription based control system to automate management of events for robots
Subscription based control system to automate management of events for robots
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architecture
 
Study on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture DevelopmentStudy on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture Development
 
Study on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture DevelopmentStudy on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture Development
 
Overview of web services
Overview of web servicesOverview of web services
Overview of web services
 
Java Networking
Java NetworkingJava Networking
Java Networking
 
Distributed system architecture
Distributed system architectureDistributed system architecture
Distributed system architecture
 
Study on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture DevelopmentStudy on Use Case Model for Service Oriented Architecture Development
Study on Use Case Model for Service Oriented Architecture Development
 
An in-building multi-server cloud system based on shortest Path algorithm dep...
An in-building multi-server cloud system based on shortest Path algorithm dep...An in-building multi-server cloud system based on shortest Path algorithm dep...
An in-building multi-server cloud system based on shortest Path algorithm dep...
 
H017113842
H017113842H017113842
H017113842
 
Sending the data already gathered from the client to the Server
Sending the data already gathered from the client to the ServerSending the data already gathered from the client to the Server
Sending the data already gathered from the client to the Server
 
Chapter 6-Remoting
Chapter 6-RemotingChapter 6-Remoting
Chapter 6-Remoting
 

More from cscpconf

ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR
ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR
ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR
cscpconf
 
4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION
4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION
4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION
cscpconf
 
MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...
MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...
MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...
cscpconf
 
PROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIES
PROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIESPROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIES
PROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIES
cscpconf
 
A SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGIC
A SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGICA SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGIC
A SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGIC
cscpconf
 
DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS
DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS
DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS
cscpconf
 
INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS
INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS
INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS
cscpconf
 
TWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTIC
TWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTICTWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTIC
TWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTIC
cscpconf
 
DETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAIN
DETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAINDETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAIN
DETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAIN
cscpconf
 
GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...
GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...
GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...
cscpconf
 
IMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEM
IMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEMIMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEM
IMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEM
cscpconf
 
EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...
EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...
EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...
cscpconf
 
AUTOMATED PENETRATION TESTING: AN OVERVIEW
AUTOMATED PENETRATION TESTING: AN OVERVIEWAUTOMATED PENETRATION TESTING: AN OVERVIEW
AUTOMATED PENETRATION TESTING: AN OVERVIEW
cscpconf
 
CLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORK
CLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORKCLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORK
CLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORK
cscpconf
 
VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...
VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...
VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...
cscpconf
 
PROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATA
PROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATAPROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATA
PROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATA
cscpconf
 
CHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCH
CHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCHCHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCH
CHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCH
cscpconf
 
SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...
SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...
SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...
cscpconf
 
SOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGE
SOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGESOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGE
SOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGE
cscpconf
 
GENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXT
GENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXTGENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXT
GENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXT
cscpconf
 

More from cscpconf (20)

ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR
ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR
ANALYSIS OF LAND SURFACE DEFORMATION GRADIENT BY DINSAR
 
4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION
4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION
4D AUTOMATIC LIP-READING FOR SPEAKER'S FACE IDENTIFCATION
 
MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...
MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...
MOVING FROM WATERFALL TO AGILE PROCESS IN SOFTWARE ENGINEERING CAPSTONE PROJE...
 
PROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIES
PROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIESPROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIES
PROMOTING STUDENT ENGAGEMENT USING SOCIAL MEDIA TECHNOLOGIES
 
A SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGIC
A SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGICA SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGIC
A SURVEY ON QUESTION ANSWERING SYSTEMS: THE ADVANCES OF FUZZY LOGIC
 
DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS
DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS
DYNAMIC PHONE WARPING – A METHOD TO MEASURE THE DISTANCE BETWEEN PRONUNCIATIONS
 
INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS
INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS
INTELLIGENT ELECTRONIC ASSESSMENT FOR SUBJECTIVE EXAMS
 
TWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTIC
TWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTICTWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTIC
TWO DISCRETE BINARY VERSIONS OF AFRICAN BUFFALO OPTIMIZATION METAHEURISTIC
 
DETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAIN
DETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAINDETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAIN
DETECTION OF ALGORITHMICALLY GENERATED MALICIOUS DOMAIN
 
GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...
GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...
GLOBAL MUSIC ASSET ASSURANCE DIGITAL CURRENCY: A DRM SOLUTION FOR STREAMING C...
 
IMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEM
IMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEMIMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEM
IMPORTANCE OF VERB SUFFIX MAPPING IN DISCOURSE TRANSLATION SYSTEM
 
EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...
EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...
EXACT SOLUTIONS OF A FAMILY OF HIGHER-DIMENSIONAL SPACE-TIME FRACTIONAL KDV-T...
 
AUTOMATED PENETRATION TESTING: AN OVERVIEW
AUTOMATED PENETRATION TESTING: AN OVERVIEWAUTOMATED PENETRATION TESTING: AN OVERVIEW
AUTOMATED PENETRATION TESTING: AN OVERVIEW
 
CLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORK
CLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORKCLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORK
CLASSIFICATION OF ALZHEIMER USING fMRI DATA AND BRAIN NETWORK
 
VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...
VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...
VALIDATION METHOD OF FUZZY ASSOCIATION RULES BASED ON FUZZY FORMAL CONCEPT AN...
 
PROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATA
PROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATAPROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATA
PROBABILITY BASED CLUSTER EXPANSION OVERSAMPLING TECHNIQUE FOR IMBALANCED DATA
 
CHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCH
CHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCHCHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCH
CHARACTER AND IMAGE RECOGNITION FOR DATA CATALOGING IN ECOLOGICAL RESEARCH
 
SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...
SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...
SOCIAL MEDIA ANALYTICS FOR SENTIMENT ANALYSIS AND EVENT DETECTION IN SMART CI...
 
SOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGE
SOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGESOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGE
SOCIAL NETWORK HATE SPEECH DETECTION FOR AMHARIC LANGUAGE
 
GENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXT
GENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXTGENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXT
GENERAL REGRESSION NEURAL NETWORK BASED POS TAGGING FOR NEPALI TEXT
 

Recently uploaded

Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)
nitinpv4ai
 
A Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two HeartsA Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two Hearts
Steve Thomason
 
MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025
khuleseema60
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
haiqairshad
 
skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)
Mohammad Al-Dhahabi
 
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
Nguyen Thanh Tu Collection
 
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
National Information Standards Organization (NISO)
 
Skimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S EliotSkimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S Eliot
nitinpv4ai
 
Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
deepaannamalai16
 
Pharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brubPharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brub
danielkiash986
 
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem studentsRHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
Himanshu Rai
 
SWOT analysis in the project Keeping the Memory @live.pptx
SWOT analysis in the project Keeping the Memory @live.pptxSWOT analysis in the project Keeping the Memory @live.pptx
SWOT analysis in the project Keeping the Memory @live.pptx
zuzanka
 
Data Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsxData Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsx
Prof. Dr. K. Adisesha
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
iammrhaywood
 
Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"
National Information Standards Organization (NISO)
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
EduSkills OECD
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
siemaillard
 
Educational Technology in the Health Sciences
Educational Technology in the Health SciencesEducational Technology in the Health Sciences
Educational Technology in the Health Sciences
Iris Thiele Isip-Tan
 
Bonku-Babus-Friend by Sathyajith Ray (9)
Bonku-Babus-Friend by Sathyajith Ray  (9)Bonku-Babus-Friend by Sathyajith Ray  (9)
Bonku-Babus-Friend by Sathyajith Ray (9)
nitinpv4ai
 
How to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in useHow to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in use
Celine George
 

Recently uploaded (20)

Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)
 
A Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two HeartsA Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two Hearts
 
MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025MDP on air pollution of class 8 year 2024-2025
MDP on air pollution of class 8 year 2024-2025
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
 
skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)
 
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN TẬP VÀ PHÁT TRIỂN CÂU HỎI TRONG ĐỀ MINH HỌA THI TỐT NGHIỆP THPT ...
 
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
 
Skimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S EliotSkimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S Eliot
 
Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
 
Pharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brubPharmaceutics Pharmaceuticals best of brub
Pharmaceutics Pharmaceuticals best of brub
 
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem studentsRHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
 
SWOT analysis in the project Keeping the Memory @live.pptx
SWOT analysis in the project Keeping the Memory @live.pptxSWOT analysis in the project Keeping the Memory @live.pptx
SWOT analysis in the project Keeping the Memory @live.pptx
 
Data Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsxData Structure using C by Dr. K Adisesha .ppsx
Data Structure using C by Dr. K Adisesha .ppsx
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
 
Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"
 
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
Andreas Schleicher presents PISA 2022 Volume III - Creative Thinking - 18 Jun...
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
 
Educational Technology in the Health Sciences
Educational Technology in the Health SciencesEducational Technology in the Health Sciences
Educational Technology in the Health Sciences
 
Bonku-Babus-Friend by Sathyajith Ray (9)
Bonku-Babus-Friend by Sathyajith Ray  (9)Bonku-Babus-Friend by Sathyajith Ray  (9)
Bonku-Babus-Friend by Sathyajith Ray (9)
 
How to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in useHow to Fix [Errno 98] address already in use
How to Fix [Errno 98] address already in use
 

NEW APPROACH TO DEVELOP THE MESSENGER APPLICATION: FROM CLIENTSERVER DESIGN TO P2P IMPLEMENTATION

  • 1. Natarajan Meghanathan, et al. (Eds): SIPM, FCST, ITCA, WSE, ACSIT, CS & IT 06, pp. 529–534, 2012. © CS & IT-CSCP 2012 DOI : 10.5121/csit.2012.2351 NEW APPROACH TO DEVELOP THE MESSENGER APPLICATION: FROM CLIENT- SERVER DESIGN TO P2P IMPLEMENTATION Ha Quoc Trung1 1 Department of Data Communication and Computer Network, School of Information and Telecommunication Technology, Hanoi University of Science and Technology, Hanoi, Vietnam trunghq@soict.hut.edu.vn ABSTRACT Client server application architecture is widely used in design and development of distributed application. Its advantage is the protocol design simplicity. However the architecture has several drawbacks such as server bottleneck and weak scalability. P2P architecture resolves these drawbacks by distributing computing tasks on both the client and server, making them equal in the system. However, P2P application development and protocol design are far difficult than client server model. This article proposes a solution to get the advantages of both models: the distributivity of the P2P architecture and the simplicity of the client server architecture. The solution uses local proxies, which interact with the client as the server and sharing information among them via P2P system. The solution is implemented and experimented for text information and services: messaging application. KEYWORDS Client Server, P2P, Messenger Application, distributed system. 1. INTRODUCTION Most of recent applications and protocols are developed base on client-server architecture, due to its simplicity. Computational task in the client-server architecture is concentrated on the server, so the server will quickly become bottleneck in term of processing power and communication bandwidth. Extended client-server models are proposed to improve the performance. Load balancing and replication techniques allow distributing load on number of servers [1,2]. Caching is a kind of asymmetric replication of the server’s data on client side. Caching is used exclusively in the proxy model, where the proxy is delegated from many clients to access server’s data, and can provide information from proxy cache when possible. The proxy can be used in reversed direction, i.e. delegated from the server part. These approaches still remain in the client server model, so they cannot resolve the server’s bottleneck problem [1,2]. When design application with client-server architecture, the designer has to consider interaction between multiple clients and a server. So in fact, the only kind of interaction between a client and a server need to be considered, taking account of the fact that multiple clients can interact with the server at the same time. The fact that data is concentrated on the server makes many problems of distributed system trivial: synchronization, replication, security, access control and so on.
  • 2. 530 Computer Science & Information Technology ( CS & IT ) P2P model resolves these disadvantages by distributing the computational workload on peers (i.e. the host – members of the system). Using this model, the interaction of the system’s component is changed conceptually, so the protocols and applications design is complicated. Instead of designing a protocol between client and server, now a complicated interaction between peers must be considered. In fact, P2P architecture resolves the problem of communication and processing performance of the hosts, but it doesn’t concern the interaction between peers. That explains that it is possible to mix P2P model and client server model so that the client server model is used for interaction between user agents, while the P2P model is used for communication between hosts. The system then consists of the client-server component and the P2P subsystem. The problems remained to be resolved are: (i) interaction between the client-server and P2P subsystem; (ii) adapting the system with data and application specific requirement. In this article, a solution using local proxy agent is presented. The solutions are implemented, experimented and adapted with text data and application: the messaging application. The article is organized as the following: section 2 introduces some related works. Section 3 introduces the Client-Server based design for P2P Application using Local Proxy. Section 4 presents the implementation experiments of the messaging application using the local proxy model. Section 5 concludes and presents some future works. 2. RELATED WORKS Client server is most used architecture in distributed application. In [1] a review of client-server is presented. Several solutions for performance, scalability and fail tolerance are discussed: application layering; multi-tiered architecture. Other methods such as application gateway and replication are found in [2]. These methods cannot resolve the problem of scalability. P2P architecture has better performance in large scale, but it is far difficult to design a P2P protocol than a Client-server protocol with the same functionality. In [3] the P2P architecture and several P2P protocol and system are discussed and compared. For applying P2P in client-server application, in [4] a software system allowing using P2P file subsystem for distribution of software sources. In this solution, client remains the same, but a local agent that can share software sources with similar agents on other hosts replaces the server. The problem of apt-p2p is that the client cannot function in offline mode, event if there are multiple apt-p2p agents in the same LAN. In [5] P2P Skype is presented and analyzed in details. P2P subsystem with super peers is used to transfer multimedia data between hosts in an efficient way. Some common characteristics of reviewed works can be summarized here: - Proposed architectures are suitable for different types of information - Application protocol design depends is P2P based design. - No common way for design P2P application and protocol. The summary shows that we need a solution, an approach to design application with client server architecture, but then implement them with P2P architecture.
  • 3. Computer Science & Information Technology ( CS & IT ) 531 3. CLIENT SERVER BASED DESIGN FOR P2P APPLICATION USING LOCAL PROXY Consider the design of a distributed application. User needs to communicate each other by some protocol, regardless the fact that the system is P2P or Client-Server. In Client-Server architecture, this protocol defines interaction between each client and the server. Client to client interaction is realized based on client-server communication. In P2P application, host-to-host communication is point to point, no need of a central intermediate host (server). To profit the advantages of both client server and P2P architecture, our goal is to: • Design the protocol using the client server architecture for simplicity, • Implement the protocol using P2P communication for better performance. Our approach is to keep the protocol design by client-server architecture unchanged, while the implementation will adapt with P2P communication system. So the client remains unchanged. The server will accept request from client and transfers it to P2P system; it acts as a proxy. The location of the server must be the same as the client; it will be a local server. This is the reason why the server is called local proxy and the model is called the local proxy model. The model is described in Figure 1: Local Proxy Model. The system consists of following components: • The client modules: the same as the client modules in classical client-server architecture. • The local proxy module: each client host has an install of this local proxy module. The module interacts with client module and updates local data. • The P2P subsystem agent: accept request for sharing and updating data, propagandas it on the P2P network. Client Local Proxy P2P Agent Client Local Proxy P2P Agent Client Local Proxy P2P Agent P2P Figure 1: Local Proxy Model
  • 4. 532 Computer Science & Information Technology ( CS & IT ) The local proxy model gives the opportunity to develop a P2P application using client-server design. Of course, the protocol and application logic, in point view of host-to-host communication is realized by communication between P2P Agent and P2P subsystem. This interaction can be trivial as a simple data sharing mechanism, but to have a good efficiency, the data structure has to be well designed following the logic of the application and the P2P protocol. In next section, via the case study of messenger application, this point will be discussed in details 4. THE MESSENGER APPLICATION The client server messenger protocol and application The comparison of messenger protocol can be found in [6] and in [7]. Of course, what we are interested in is how to design the application with P2P communication, so we’ll chose minimal functionality of the protocol. The main functions of the messenger application and the information exchanges between client and server are described in Table 1: Messenger Protocol Functional description. Table 1: Messenger Protocol Functional description No Name Description 1 Login, Registration Accept login request and register user in the whole system 2 Get logged user lists Get the list of ‘Online’ users that can receive messages 3 Get messages from inbox Get all the message from inbox 4 Read a messages Get a specific message from inbox and visualize it for user. 5 Send messages to user Send a message to specific users 7 Delete messages Delete specified messages 8 Logout, Unregistered Logout and remove users from the whole system From this description a client and a server are built following the classic client-server model. This application is for testing only, so we use a very simple, command line interface. The local proxy P2P messenger application design Our goal is to build a P2P messenger application, but the interaction between client and server remains the same so that we can profit the description in Table 1: Messenger Protocol Functional description. We follow the model in Figure 1: Local Proxy Model. The client module remains unchanged. No server module is needed. A local proxy module will be implemented, accept all requests from client module as a server, but share it via P2P with local proxy on other hosts. For simplicity, our technical choices are: - Information exchanges are organized in files and folders. - Files and folders are synchronized between local proxies using P2P file sharing system as a communication base. With these assumptions, each client has a shared folder: inbox and outbox. In the folder, messages are stored as a file. When user logged in for the firs time, o token file with the name
  • 5. Computer Science & Information Technology ( CS & IT ) 533 <logged><user-id> is created and stored in the shared folder. Getting list of users is done via P2P-search function for the filename <logged>. When the user logs out, the local proxy will delete the corresponding file. The same mechanism is used for sending and receiving messages. When the user send a message, the content of the message is stored in a file with the form of the name: <message><sender><receiver><subject><controlling information>. Each time user read a message; the local proxy will send a query <message><sender> to the P2P system for downloading from other hosts’ local proxies. The functions in the Table 1 will be implemented by creating and modifying files as in Table 2: Local Proxy Data. Table 2: Local Proxy Data No Name Local proxy action 1 Login, Registration Create a token <logged-in><user-id> file 2 Get logged user lists Download by query “logged-in” from P2P system. 3 Get messages from inbox Download from P2P by searching with <message><receiver-id> 4 Read a messages Get the message from the shared folder 5 Send message to user Put a message with file name: <message><sender><receiver><subject> to the shared folder. 7 Delete messages Delete specified file from P2P system 8 Logout, Unregistered Remove the user token from the shared folder. The local proxy P2P messenger application implementation and experimentation The application is built using JXTA library. For P2P subsystem we use Chord protocols, but for the ease of integration of local proxy, we re-code the chord file-sharing agent by our-self. This helps us to experiment the system without interference of peer not participating in our system. For experimentation and evaluation, we face a problem of lacking a large-scale test environment. This is the reason why our experimental result is only qualitative. It proves only that the P2P messenger application has the same functionality of the client-server one. From analytic point of view, when the system become large, the P2P application should have better performance that the client server application. 5. CONCLUSIONS In this article, we have presented an approach to implement P2P application with client-server design. The main idea of the approach is to use a local proxy in each host-participant in P2P application, keeping client unchanged. This local proxy will accept request from client, modified local data and shared it with other hosts’ local proxies. This approach has several advantages for development of P2P application: - It makes the protocol design unchanged (same as the client-server protocol design). - It provides the performance and scalability of P2P application. - The local proxy model can be extended to LAN proxy model, in which local proxy will serve not only for local client, but any client in the LAN section.
  • 6. 534 Computer Science & Information Technology ( CS & IT ) Based on this approach, from the client-server design of messenger application, a P2P messenger application is developed and implemented. The applications are tested and the results show that the functionality of both applications is the same as the design. No quantitative and performance evaluation is executed. In the future, the following works should be completed: - Joining the test-bed community such as Planet-Lab, G-Lab to have the possibility to evaluate the P2P and Client-Server application in large-scale system. - Applying the method for other application with different kind of information exchanged: audio, video, raw and so on. REFERENCES [1] Tanenbaum, A. S. & Steen, M. v. (2006) Distributed Systems: Principles and Paradigms (2nd Edition). Prentice Hall [2] Coulouris, G., Dollimore, J., Kindberg, T., & Blair, G. (2011) Distributed Systems: Concepts and Design. Addison Wesley [3] Lua, E. K., Crowcroft, J., Pias, M., Sharma, R., Lim, S., & Lim, S. (2005) A Survey and Comparison of Peer-to-Peer Overlay Network Schemes. Communications Surveys & Tutorials, IEEE, 72--93 [4] Dale, C. & Liu, J. (2009) apt-p2p: A Peer-to-Peer Distribution System for Software Package Releases and Updates. INFOCOM 2009, 864-872. [5] S. A. Baset, H. G. Schulzrinne, 2006. An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol. INFOCOM 2006 [6] Reed, D. (1992) A Discussion on Computer Network Conferencing., Request for Comments: 1324 [7] Carl von Loesch, 2003, Functionality provided by systems for synchronous conferencing. http://http://www.psyc.eu/ , Author Ha Quoc Trung (Ph. D.) Graduated from Technical University of Sofia in 1996, speciality “Electronic, Microelectronic and Automation”. In 2004 he completed his Ph. D. degree in School of Advance Research Practice (Ecole Pratique de Hautes Etudes-Paris, France). From 1999 to recent he is lecturer at department of data communication and computer network. His research interests are: distributed algorithm, system and application, ubiquitous computing.