JGroups: : a Java system for communicating with a group of machines

Similar documents
Mobile Devices: Server and Management Lesson 05 Service Discovery

Print Audit Facilities Manager Technical Overview

Computer Networks CS321

District of Columbia Courts Attachment 1 Video Conference Bridge Infrastructure Equipment Performance Specification

Network Programming TDC 561

Rapid Assessment Key v2 Technical Overview

Building a Highly Available and Scalable Web Farm

Lecture 28: Internet Protocols

IMPLEMENTATION OF AN AGENT MONITORING SYSTEM IN A JINI ENVIRONMENT WITH RESTRICTED USER ACCESS

Network Models OSI vs. TCP/IP

CHAPTER 1 INTRODUCTION

Cisco TelePresence VCR Converter 1.0(1.8)

ni.com Remote Connectivity with LabVIEW

Configure a Microsoft Windows Workstation Internal IP Stateful Firewall

Lab VI Capturing and monitoring the network traffic

IP Networking. Overview. Networks Impact Daily Life. IP Networking - Part 1. How Networks Impact Daily Life. How Networks Impact Daily Life

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Stateful Inspection Technology

Industrial Communication Whitepaper. Principles of EtherNet/IP Communication

Virtual Private Networks Solutions for Secure Remote Access. White Paper

ICTTEN4215A Install and configure internet protocol TV in a service provider network

E-Commerce Security. The Client-Side Vulnerabilities. Securing the Data Transaction LECTURE 7 (SECURITY)

Overview - Using ADAMS With a Firewall

The HTTP Plug-in. Table of contents

Automatic Configuration and Service Discovery for Networked Smart Devices

Overview - Using ADAMS With a Firewall

What is CSG150 about? Fundamentals of Computer Networking. Course Outline. Lecture 1 Outline. Guevara Noubir noubir@ccs.neu.

Network Communication

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

Detailed Table of Contents

Application Note. Onsight Connect Network Requirements v6.3

The TCP/IP Reference Model

ICT SEcurity BASICS. Course: Software Defined Radio. Angelo Liguori. SP4TE lab.

The OSI model has seven layers. The principles that were applied to arrive at the seven layers can be briefly summarized as follows:

The OSI and TCP/IP Models. Lesson 2

Lecture (02) Networking Model (TCP/IP) Networking Standard (OSI) (I)

Tiny Web Services: Design and Implementation of Interoperable and Evolvable Sensor Networks (Priyantha, Kansal, Goraczko, Zhao, 2008)

VIDEOCONFERENCING. Video class

SERVICE DISCOVERY AND MOBILITY MANAGEMENT

Titolo del paragrafo. Titolo del documento - Sottotitolo documento The Benefits of Pushing Real-Time Market Data via a Web Infrastructure

CPS221 Lecture: Layered Network Architecture

The MoCA CIS LIS WSDL Network SOAP/WS

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

CSCI 362 Computer and Network Security

Secured Communications using Linphone & Flexisip

How To Test The Bandwidth Meter For Hyperv On Windows V (Windows) On A Hyperv Server (Windows V2) On An Uniden V2 (Amd64) Or V2A (Windows 2

SSL/TLS. What Layer? History. SSL vs. IPsec. SSL Architecture. SSL Architecture. IT443 Network Security Administration Instructor: Bo Sheng

Can PowerConnect Switches Be Used in IP Multicast Networks?

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

Other VPNs TLS/SSL, PPTP, L2TP. Advanced Computer Networks SS2005 Jürgen Häuselhofer

Immotec Systems, Inc. SQL Server 2005 Installation Document

The Secure Sockets Layer (SSL)

Solution of Exercise Sheet 5

White Paper Three Simple Ways to Optimize Your Bandwidth Management in Video Surveillance

Approaches for DDoS an ISP Perspective.

OSI Model. Application Presentation Session Transport Network Data Link Physical. EE156 Computer Network Architecture

Socket Programming. Announcement. Lectures moved to

Objectives of Lecture. Network Architecture. Protocols. Contents

Voice over IP (VoIP) Overview. Introduction. David Feiner ACN Introduction VoIP & QoS H.323 SIP Comparison of H.323 and SIP Examples

8/27/2014. What is a computer network? Introduction. Business Applications (1) Uses of Computer Networks. Business Applications (2)

How To Design A Layered Network In A Computer Network

Socket = an interface connection between two (dissimilar) pipes. OS provides this API to connect applications to networks. home.comcast.

Quantum Hyper- V plugin

Windows Sockets Network Programming

Internetworking Microsoft TCP/IP on Microsoft Windows NT 4.0

Multi-Homing Security Gateway

Data Communications and Networking Overview

ProxyCap Help. Table of contents. Configuring ProxyCap Proxy Labs

EUROPEAN ORGANIZATION FOR NUCLEAR RESEARCH CERN ACCELERATORS AND TECHNOLOGY SECTOR A REMOTE TRACING FACILITY FOR DISTRIBUTED SYSTEMS

IP - The Internet Protocol

RVS-Seminar Implementation and Evaluation of WinJTAP Interface. Milan Nikolic Universität Bern

CSE 3461 / 5461: Computer Networking & Internet Technologies

Building a Multi-Threaded Web Server

Clustering with Tomcat. Introduction. O'Reilly Network: Clustering with Tomcat. by Shyam Kumar Doddavula 07/17/2002

ALERT & Cisco CallManager

CA CPT CICS Programmers Toolkit for TCP/IP r6.1

ΕΠΛ 674: Εργαστήριο 5 Firewalls

Virtual Private Network Using Peer-to-Peer Techniques

NETWORK SECURITY (W/LAB) Course Syllabus

Required Ports and Protocols. Communication Direction Protocol and Port Purpose Enterprise Controller Port 443, then Port Port 8005

EXPLORER. TFT Filter CONFIGURATION

THE OSI REFERENCE MODEL LES M C LELLAN DEAN WHITTAKER SANDY WORKMAN

SwiftBroadband and IP data connections

Master Kurs Rechnernetze Computer Networks IN2097

Course Syllabus. Fundamentals of Windows Server 2008 Network and Applications Infrastructure. Key Data. Audience. Prerequisites. At Course Completion

3.5. cmsg Developer s Guide. Data Acquisition Group JEFFERSON LAB. Version

Limitations on Monitored Lines

IBM Application Hosting EDI Services Expedite software adds Secure Sockets Layer TCP/IP support

Securing Networks with PIX and ASA

Configuring Network Load Balancing with Cerberus FTP Server

SmartPTT Tutorial Telephone Interconnect

From Centralization to Distribution: A Comparison of File Sharing Protocols

Inmarsat TCP Accelerator V2

Transcription:

Hello IP API JGroups: : a Java system for communicating with a group of machines Savaş Ali TOKMEN MSc in Computer Engineering UFR IMA, Grenoble, FRANCE 2006 - Savaş Ali TOKMEN JGroups - page 1

IP IP API Aim: resource-efficient data transmission to multiple targets IGMP protocol 2006 - Savaş Ali TOKMEN JGroups - page 2

IP IP API Aim: resource-efficient data transmission to multiple targets IGMP protocol 2006 - Savaş Ali TOKMEN JGroups - page 3

IP IP API Aim: resource-efficient data transmission to multiple targets IGMP protocol 2006 - Savaş Ali TOKMEN JGroups - page 4

IP IP API Aim: resource-efficient data transmission to multiple targets IGMP protocol 2006 - Savaş Ali TOKMEN JGroups - page 5

IP IP API Aim: resource-efficient data transmission to multiple targets IGMP protocol 2006 - Savaş Ali TOKMEN JGroups - page 6

IP IP API Aim: resource-efficient data transmission to multiple targets IGMP protocol 2006 - Savaş Ali TOKMEN JGroups - page 7

IP IP API Aim: resource-efficient data transmission to multiple targets IGMP protocol Radio / Video transmission, OSPF 2006 - Savaş Ali TOKMEN JGroups - page 8

JGroups IP API Initial aim: to provide a Java class for IP Extensions: Choice between protocols: UDP, TCP, JMX Subscription and unsubscription notification Crashed member detection Reliable and ordered transmissions Point-to-point messaging Fragmentation of big messages Scheduling policies: atomic (all or none), FIFO, total order Encryption 2006 - Savaş Ali TOKMEN JGroups - page 9

JGroups API IP API Channel creation: new JChannel(props); with properties such as: Transport protocol Reliable or non-reliable transmissions Scheduling policies connect method to join the group send method for or unicast sending receive method (blocking) or publish / subscribe alerts for receiving disconnect method to quit group 2006 - Savaş Ali TOKMEN JGroups - page 10

Example IP API Request distribution system Communication types: Machine types: HTTP request HTTP response JGroups Client Server Network entry point 2006 - Savaş Ali TOKMEN JGroups - page 11

Demonstration IP API Distributor's code public void OnRequest( HTTPRequest request ) { // Get the list of available servers Vector<Address> servers = channel.getview().getmembers(); if( servers.size() <= 1 ){ // In this case, there are no servers! OnError( 501 ); } else { int gatewayposition = servers.indexof(channel.getlocaladdress()); int targetserver = gatewayposition; // Pick a server to process request, make sure it really // is a server and not the distributor while ( targetserver == gatewayposition ) { targetserver = random.nextint(servers.size()); } // Redirect request to server. Server will respond to client directly. channel.send(new Message( servers.get(targetserver), null, request )); } } Servers' code while( true ) { // Wait for a request Object o = channel.receive(0); // Only process normal messages if( o instanceof Message ) { o = ((Message) o).getobject(); // Verify that it's an HTTP request if( o instanceof HTTPRequest ) { // Call the standard HTTP server program with request ProcessRequest( (HTTPRequest) o ); } } } 2006 - Savaş Ali TOKMEN JGroups - page 12

How JGroups IP API Ethereal 2006 - Savaş Ali TOKMEN JGroups - page 13

Pros and perspectives IP API Pros and perspectives Cons Pros: Stable system for dynamic groups Very modular architecture (OSI) Ships with 19 examples and 117 tests Open projects Ethereal plugin Bluetooth support Compatibility with Java standards: JavaSpaces,... HTTP load balancer... 2006 - Savaş Ali TOKMEN JGroups - page 14

Cons IP API Pros and perspectives Cons Functionnalities not offered by JGroups but offered by rivals such as.net: Packet coalescing Priorities Per-message transmission options Subgroups Stream exchanging State exchange JGroups doesn't have a logo! User's manual partially empty 2006 - Savaş Ali TOKMEN JGroups - page 15

Questions? IP API Questions? 2006 - Savaş Ali TOKMEN JGroups - page 16

References IP API JGroups web site and links in it (mostly JBoss presentations) Web sites such as Wikipedia or Cisco for information about grouping and load balancing protocols in TCP/IP Ethereal Didier Donsez' lecture notes on Jini Microsoft's MSDN library 2006 - Savaş Ali TOKMEN JGroups - page 17

Thank you Thank you Documents available on http://scholar.alishomepage.com/master/jgroups/ 2006 - Savaş Ali TOKMEN JGroups - page 18

2006 - Savaş Ali TOKMEN JGroups - page 19