95-702 Distributed Systems 1!Master of Information System Management Distributed Systems Review For Midterm95-702 Distributed Systems 2!Master of Information System Management Introduction(1) • Characteristics concurrent execution message passing no global clock • Motivation Sharing and communication95-702 Distributed Systems 3!Master of Information System Management Introduction (2) • Challenges Security, scalability, heterogeneity, transparency, partials failure, concurrency • Examples The internet The world wide web three main technological components Intranets Mobile and ubiquitous computing95-702 Distributed Systems 4!Master of Information System Management Sockets and Servlets (1) • NetworkServer.java TCP sockets Java's ServerSocket and Socket classes The decorator design pattern • EchoServer.java Inheritance Adding HTTP to TCP Adding HTML95-702 Distributed Systems 5!Master of Information System Management Sockets and Servlets (2) • QueryData.java Adding a layer of abstraction J2EE Servlets Java's HttpServlet, HttpServletRequest and HttpServletResponse classes95-702 Distributed Systems 6!Master of Information System Management Servlets and Sockets(3) • Stateful services Session tracking The singleton design pattern Java's synchronized key word for concurrent use Java's Cookie and HttpSession classes95-702 Distributed Systems 7!Master of Information System Management Models and Architectures Fundamental models (interaction, failure, security) Architectural Models Software/Hardware Layers Middleware Replication for performance, reliability, and fault tolerance Thin clients Network computers Mobile agents Mobile devices and service discovery95-702 Distributed Systems Android • Applications • Application Frameworks • Component Model (Four types) • Interprocess communication (Intents and AIDL) 8!Master of Information System Management95-702 Distributed Systems 9!Master of Information System Management Web Services(1) • JAX-WS 2.0 • Annotations • apt tool • wsimport tool • singleton design95-702 Distributed Systems 10!Master of Information System Management Web Services(2) • XML • SOAP request/response format • WSDL as IDL • XML Schema • Operations, Interfaces, and bindings • registry lookup and bind • Synchronous or asynchronous • RPC style tightly coupled • Document style less tightly coupled95-702 Distributed Systems 11!Master of Information System Management Web Services(3) • URN (URI's and URL's) • Web service composition • SOAP intermediaries • Message Exchange Patterns • WS-Addressing95-702 Distributed Systems 12!Master of Information System Management Internetworking(1) • IP as a key tool • protocol layers • TCP • UDP • IEEE 802 Standards • IP addressing • Ethernet (CSMA/CD) • Ethernet addressing • Routers • RIP95-702 Distributed Systems 13!Master of Information System Management Internetworking(2) • Subnet masking • DNS • ARP • DHCP • ESwitches and Hubs • NAT based routing • MobileIP • Wireless (CSMA/CA)95-702 Distributed Systems 14!Master of Information System Management Interprocess Communications (1) • Request/Reply protocol, failure handling, idempotent operations and histories • When is Request/Reply/Acknowledge Reply used? • Marshalling and external data representation • Binary and Unicode • Corba's CDR • Java's Serializable interface • Representation of Remote Object References • Representation of request/reply95-702 Distributed Systems 15!Master of Information System Management Interprocess Communications (2) • UDP client and server • Java's DatagramSocket and DatagramPacket classes • TCP client and server • Java's Socket and ServerSocket classes • Multi-threaded server • Java's Thread class • Java's ObjectInputStream and ObjectOutputStream classes • Hand coding skeletons and stubs example95-702 Distributed Systems Cloud Computing • New opportunities • Azure • EC2 • AppEngine 16!Master of Information System Management95-702 Distributed Systems 17!Master of Information System Management Three Projects • Servlets, Java Server Pages, web.xml configuration files • Cryptographic hashin • Knock Knock Web Application • Sessions and cookies • Knock Knock Web Service • The apt tool and wsimport tool • TCP/UDP Sockets • Low Level
View Full Document