Jabber Technical Overview Presenter: Ming-Wei Lin.

Slides:



Advertisements
Similar presentations
…and a natural peer-to-peer platform!. Jabber as P2P Platform Agenda Why spend time in this session? What is Jabber? Who cares about Jabber? How does.
Advertisements

VON Europe /19/00 SIP and the Future of VON Protocols SIP and the Future of VON Protocols: Presence and IM Jonathan Rosenberg.
Fall VoN 2000 SIP for IP Communications Jonathan Rosenberg Chief Scientist.
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Jabber and Extensible Messaging and Presence Protocol (XMPP) Presenter: Michael Smith Cisc 856 Dec. 6, 2005.
Network Layer and Transport Layer.
P2P (Peer To Peer) Used: when applications need to communicate between devices. Examples: – Interactive game of checkers – Instant Messaging P2P can be.
Technical Architectures
Instant Messaging Internet Technologies and Applications.
© 2005 Prentice Hall7-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
A New Computing Paradigm. Overview of Web Services Over 66 percent of respondents to a 2001 InfoWorld magazine poll agreed that "Web services are likely.
Instant Messaging (IM) Systems Product Lifecycle and the Case for Interoperability.
Introduction1-1 Introduction to Computer Networks Our goal:  get “feel” and terminology  more depth, detail later in course  approach:  use Internet.
XMPP (eXtensible Messaging and Presence Protocol ) Reporter : Allen.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
1 Chapter 7 IT Infrastructures Business-Driven Technology
Computer Networks: Internet Introduction 1 Internet Introduction and HTTP and DNS Examples.
V1.00 © 2009 Research In Motion Limited Introduction to Mobile Device Web Development Trainer name Date.
Series DATA MANAGEMENT. 1 Why ? Alarm/Status Notification –Remote unattended sites »Pumping stations –Pharmaceutical/Plant maintenance.
Distributed Systems: Client/Server Computing
Client/Server Architecture
© 2007 Cisco Systems, Inc. All rights reserved.ICND1 v1.0—1-1 Building a Simple Network Understanding the Host-to-Host Communications Model.
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
FTP. SMS based FTP Introduction Existing System Proposed Solution Block Diagram Hardware and Software Features Benefits Future Scope Conclusion.
Windows Internet Connection Sharing Dave Eitelbach Program Manager Networking And Communications Microsoft Corporation.
Publishing and transporting Web Services over XMPP
Guide to TCP/IP, Second Edition1 Guide To TCP/IP, Second Edition Chapter 6 Basic TCP/IP Services.
XMPP Extensible Messaging and Presence Protocol. Chat In the beginning there was instant messaging and chat. Lots of binary standards: Unix talk, IRC,
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
Layer 4 of the TCP/IP protocol stack: Application level Services: TELNET, FTP, SMTP, HTTP, DNS, RIP, NFS Hierarchy of protocols and services.
Application Layer CHAPTER 2. Announcements and Outline  Administrative Items  Questions? Recap 1.Introduction to Networks 1.Network Type 2.N etwork.
An XMPP (Extensible Message and Presence Protocol) based implementation for NHIN Direct 1.
Instant Messaging for the Workplace A pure collaborative communication tool that does not distract users from their normal activities.
Integration Broker PeopleTools Integration Broker Steps –Introduction & terminologies –Application Server PUB/SUB services (Application Server)
Networks QUME 185 Introduction to Computer Applications.
XMPP – Extensible Messaging and Presence Protocol Vidya Satyanarayanan.
CIS 1310 – HTML & CSS 1 Introduction to the Internet.
CVSQL 2 The Revenge of the SQL. The present Read-only access to CVS repository logs Language is a subset of SQL XML interface for returning results Built-in.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Jabber Client Jeevan Varma Anga Distributed Systems(CSC8530) Villanova University.
7-1 Management Information Systems for the Information Age Copyright 2004 The McGraw-Hill Companies, Inc. All rights reserved Chapter 7 IT Infrastructures.
PIC.edu Survey Review Internet2 Presence & Integrated Communications Working Group Fall Member Meeting, 2007.
A Comparative Study of Signaling Protocols for Data Management and Synchronization # Department of Computer Engineering, Kocaeli University.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
4BP1 Electronic & Computer Engineering Paul Gildea th Year Interim Project Presentation.
Chap 15 Application Layer Andres, Wen-Yuan Liao Department of Computer Science and Engineering De Lin Institute of Technology
Copyright © 2007 Pearson Education, Inc. Slide 3-1 E-commerce Kenneth C. Laudon Carol Guercio Traver business. technology. society. Third Edition.
OS Services And Networking Support Juan Wang Qi Pan Department of Computer Science Southeastern University August 1999.
The State of SIP Application Development Brian Schwarz VP – Engineering RedSky Technologies, Inc.
Introduction to 學校:大同大學 班級: GI1 學號: 姓名:李奕銳 教師:葉慶隆 Jabber 1.
1 Pre-Introduction What is computer network?. 2 Pre-Introduction Suppose you want to build a computer network The question is: –What available technologies.
Toshiba Confidential 1 Presented by: Philipe BC Da’Silva SESSION INITIATION PROTOCOL.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Living in a Network Centric World Network Fundamentals – Chapter 1.
INTERNET PROTOCOLS. Microsoft’s Internet Information Server Home Page Figure IT2031 UNIT-3.
An Analysis of XMPP Security Team “Vision” Chris Nelson Ashwin Kulkarni Nitin Khatri Taulant Haka Yong Chen CMPE 209 Spring 2009.
1/30/20161 Introduction to Web Services Bina Ramamurthy
1 Active Directory Service in Windows 2000 Li Yang SID: November 2000.
External Messaging Services. Page 2 External Messaging: Extends the power of Presence and Instant Messaging outside corporate Network Provided only to.
NetChat Communications Systems Steven Fuqua Barnett Trzcinski Andy Street.
15 May 2006 IVOA - Victoria: VOEvent 11 Jabber/XMPP Matthew J. Graham Caltech T HE US N ATIONAL V IRTUAL O BSERVATORY.
The Internet Technological Background. Topic Objectives At the end of this topic, you should be able to do the following: Able to define the Internet.
WREC Working Group IETF 49, San Diego Co-Chairs: Mark Nottingham Ian Cooper WREC Working Group.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
March 16, 2009 Jabber IM Client. March 16, 2009 What is Jabber? An open instant message protocol Defines client/server communication Uses XMPP –XML-Based.
IP Telephony (VoIP).
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Custom Administration Package
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Client-Server Interaction
Presentation transcript:

Jabber Technical Overview Presenter: Ming-Wei Lin

Introduction The term "Jabber" is widely used to refer to a set of open protocols for streaming XML elements between any two points on a network, and to the technologies built using those protocols The term "Jabber" is widely used to refer to a set of open protocols for streaming XML elements between any two points on a network, and to the technologies built using those protocols The core protocols provide an XML streaming infrastructure that has been used to build a wide variety of real-time communications systems. The core protocols provide an XML streaming infrastructure that has been used to build a wide variety of real-time communications systems.

A Quick Example The architecture of Jabber IM systems is extremely similar to that of the most time-tested messaging system on the planet: The architecture of Jabber IM systems is extremely similar to that of the most time-tested messaging system on the planet:

Architectural Foundations Communications both in and in Jabber are made possible by a distributed network of servers that use a common protocol Communications both in and in Jabber are made possible by a distributed network of servers that use a common protocol Specialized clients connect to servers in order to receive messages from other users and send messages to users on the same server or any other server that is connected to the network Specialized clients connect to servers in order to receive messages from other users and send messages to users on the same server or any other server that is connected to the network Jabber servers deliver messages in close to real time Jabber servers deliver messages in close to real time

Architectural Foundations (cont.) Three additional features Three additional features The first is a set of open, well-documented, easy-to- understand protocols The first is a set of open, well-documented, easy-to- understand protocols The second is the fact that the Jabber protocols are 100% XML The second is the fact that the Jabber protocols are 100% XML The third is that Jabber uses addresses that are based on DNS and recognized URI schemes, resulting in addresses of the same form as those used in The third is that Jabber uses addresses that are based on DNS and recognized URI schemes, resulting in addresses of the same form as those used in

Client/Server Jabber technologies use a client-server architecture Jabber technologies use a client-server architecture This connection is "always-on" for the life of the client's session on the server, which means the client does not have to poll for messages as an client does. This connection is "always-on" for the life of the client's session on the server, which means the client does not have to poll for messages as an client does.

Open Protocols the original Jabber team defined an open protocol for streaming XML over the wire. the original Jabber team defined an open protocol for streaming XML over the wire. This protocol continues to grow in depth and breadth This protocol continues to grow in depth and breadth The depth comes mainly from work completed by the XMPP Working Group within the Internet Engineering Task Force (IETF) The depth comes mainly from work completed by the XMPP Working Group within the Internet Engineering Task Force (IETF) The breadth comes mainly from work by the Jabber Software Foundation in defining extensions to the core protocols for a wide variety of features, including groupchat, file transfer, service discovery, avatars, and much more. The breadth comes mainly from work by the Jabber Software Foundation in defining extensions to the core protocols for a wide variety of features, including groupchat, file transfer, service discovery, avatars, and much more.

XML Data Format XML is an integral part of Jabber technologies XML is an integral part of Jabber technologies It makes them fundamentally extensible and able to express almost any structured data It makes them fundamentally extensible and able to express almost any structured data A client connects to a server, it opens a one-way XML stream from the client to the server, and the server responds with a one-way XML stream from the server to the client. A client connects to a server, it opens a one-way XML stream from the client to the server, and the server responds with a one-way XML stream from the server to the client.

XML Data Format (cont.) Example Example Wherefore art thou, Romeo? Wherefore art thou, Romeo?

Distributed Network Each user connects to a "home" server, which receives information for them, and the servers transfer data among themselves on behalf of users. Each user connects to a "home" server, which receives information for them, and the servers transfer data among themselves on behalf of users.

Modular Servers Handling client connections and communicating directly with Jabber clients. Handling client connections and communicating directly with Jabber clients. Communicating with other Jabber servers Communicating with other Jabber servers Coordinating the various server components associated with the server. Coordinating the various server components associated with the server.

Modular Servers (cont.) Jabber servers are designed to be modular, with specific internal code packages. Jabber servers are designed to be modular, with specific internal code packages. Jabber servers can be extended with external components, which enable server administrators to supplement the core server with additional services Jabber servers can be extended with external components, which enable server administrators to supplement the core server with additional services

Simple Clients The only things a Jabber client must do are: The only things a Jabber client must do are: Communicate with the Jabber server over TCP sockets. Communicate with the Jabber server over TCP sockets. Parse and interpret well-formed XML "stanzas" over an XML stream. Parse and interpret well-formed XML "stanzas" over an XML stream. Understand the core Jabber data types Understand the core Jabber data types In practice, many of the low-level functions of the client (e.g., parsing XML and understanding the core Jabber data types) are handled by Jabber client libraries, enabling client developers to focus on the user interface In practice, many of the low-level functions of the client (e.g., parsing XML and understanding the core Jabber data types) are handled by Jabber client libraries, enabling client developers to focus on the user interface

Standards-Based Addressing There are many different entities that need to communicate with each other. These entities can represent servers, gateways, groupchat rooms, a single Jabber user, etc. Jabber IDs are used both externally and internally to express ownership or routing information. There are many different entities that need to communicate with each other. These entities can represent servers, gateways, groupchat rooms, a single Jabber user, etc. Jabber IDs are used both externally and internally to express ownership or routing information.

Standards-Based Addressing (cont.) Key characteristics of Jabber IDs include: Key characteristics of Jabber IDs include: They uniquely identify individual objects or entities for communicating instant messages and presence information. They uniquely identify individual objects or entities for communicating instant messages and presence information. They are easy for users to remember and express in the real world.Ex They are easy for users to remember and express in the real world.Ex They are flexible enough to enable the inclusion of other IM and presence schemes They are flexible enough to enable the inclusion of other IM and presence schemes

Conclusion Jabber protocols and technologies provide a true open alternative to the closed, proprietary services offered by legacy IM vendors such as AIM and MSN. Jabber protocols and technologies provide a true open alternative to the closed, proprietary services offered by legacy IM vendors such as AIM and MSN. Jabber's IETF pedigree and XML foundation enable developers to create robust, near-real-time messaging and presence solutions for IM and beyond. Jabber's IETF pedigree and XML foundation enable developers to create robust, near-real-time messaging and presence solutions for IM and beyond.