700 likes | 946 Views
Internet Applications and Distributed Data Processing. Topic 2. Outline. Internet Applications The Internet Internet applications Network Models Distributed Data Processing Network Architectures Network Configurations. Internet Applications. Internet Applications.
E N D
Internet Applications and Distributed Data Processing Topic 2
Outline • Internet Applications • The Internet • Internet applications • Network Models • Distributed Data Processing • Network Architectures • Network Configurations
Internet Applications There are four important Internet application software tools • the Web • electronic mail (e-mail) • FTP • Telnet Less important applications: WAIS, gopher
World Wide Web One of the fastest growing Internet software applications is the World Wide Web. The Web was first conceived in 1989 by Tim Berners-Lee at the European Laboratory for Particle Physical (CERN) in Geneva. CERN’s first Web browser was written in 1990, but it was 1991 before it was available on the Internet for other organizations to use.
World Wide Web In 1993, Marc Andeessen, a student at the University of Illinois, led a team of students that wrote Mosaic, the first graphical Web browser, as part of a project for the university’s National Center for Supercomputing Applications (NCSA) In 1994, Andreessen and some colleagues left NCSA to form Netscape.
How the Web Works Server computer with Web Server software HTTP Request Client computer with Web Browser software HTTP Response
How the Web Works • Each client computer needs a Web browser. • Each server needs a Web Server. • Web address: Internet Uniform Resource Locator (URL) • The protocol for communication between a Web browser and a Web server: Hypertext Transfer Protocol (HTTP). • Web page design language: Hypertext Markup Language (HTML)
How the Web Works Command URL HTTP version GET http://tcbworks.cba.uga.edu/~adennis/res.htm HTTP/1.1 Date: Mon 03 Aug 1998 17:35:46 GMT User-Agent: Mozilla/3.0 From: adennis@uga.cc.uga.edu Referer: http://tcbworks.cba.uga.edu/~adennis/home.htm ]- Request Line ]- Date ]- Web browser (this is Netscape) Request Header ]- User’s e-mail address URL that contained the link to the requested URL (Request body is optional here) A Request from a Web browser to a Web server using the HTTP standard
A response from a Web server to a Web browser using the HTTP standard HTTP version Status code Reason phrase HTTP/1.1 200 OK Date: Mon 03 Aug 1998 17:35:46 GMT Server: NCSA/1.3 Location: http:// tcbworks.cba.uga.edu/~adennis/res.htm Content-type: text/html <html> <head> <title>Business Data Communications and Networking Web Resources </title> </head> <body> <H2>Resources on the Web </H2> <P>This section contains links to other resources on the WEB that pertain to the field of data communications and networking </P> </body> </html> ]- Date ]- Web server Response Header ]- URL ]- Type of file Response Body
Internet Search Engines Search engines are Web sites that routinely use software spiders to explore the Web. There are literally dozens of search engines and directories on the Web. Three of the best are: • Yahoo (http://www.yahoo.com) • Altavista • Google (More: netscape, GoTo.com, HotBot, Snap, About.com, Lycos, LookSmart) A metasearch engine (like MetaCrawler http://www.metacrawler.com) simultaneously sends requests to many search engines and then integrates the responses.
E-mail Standards Mail Transfer Agents: • Three most commonly used standards are: • SMTP (Simple Mail Transfer Protocol) • X.400 (developed by CCITT in 1984). • CMC (Common Messaging Calls, a simpler version of the X.400 standard, developed by CCITT with IBM, Lotus and Microsoft in 1994.) • All three e-mail standards work in the same basic fashion.
E-mail Standards User agents: • Post Office Protocol 3 (POP3), which defines how operate and how messages to and from mail transfer agents are formatted. • Internet Mail Access Protocol (IMAP). Non-text message transmission: • Multipurpose Internet Mail Extension (MIME), uuencode and binhex.
How the SMTP e-mail works Server computer with e-mail server software (“message transfer agent”) SMTP packet Client computer with e-mail client software (“user agent”) LAN SMTP packet Internet SMTP packet Server computer with e-mail server software (“message transfer agent”) IMAP or SMTP packet Client computer with e-mail client software (“user agent”) LAN SMTP packet
How web-based e-mail works Server computer with Web server software HTTP request Client computer with Web browser SMTP packet Server computer with mail server software LAN HTTP response SMTP packet Internet SMTP packet Server computer with mail server software HTTP request Client computer with Web browser LAN IMAP or SMTP packet HTTP response IMAP packet Server computer with Web server software
How the Instant Messaging works IM packet Client computer with e-mail client software (“user agent”) LAN IM packet Server computer with IM server software LAN IM packet Internet Client computer with IM client software IM packet LAN
E-mail Directories • Before you can send an e-mail message, you must know the receiver’s e-mail address. Currently there are no universal e-mail directories. • X.500 is the directory service for X.400 mail users, but at present there are few standard application software packages that conform to X.500. • Lightweight Directory Access Protocol (LDAP) is a subset of X.500.
Other Network Applications • Groupware: • Discussion groups (e.g. listserv) • Document-based groupware • Group support systems • Videoconferencing. Provides real-time transmission of video and audio signals to enable people in two or more locations to have a meeting.
Listserv Listserv group is similar in concept to the usenet newsgroups but is generally less formal. One part, the listserv processor, processes commands such as requests to subscribe, unsubscribe, or to provide more information about the listserv. The second part is the listserv mailer. Anymessage sent to the listserv mailer is re-sent to everyone on the mailing list.
More Groupware • Multicast Backbone (MBONE) ICQ (web site) ICQ Newsgroups Web Search ICQ Web-Pager ICQ Friendship Pages E-greeting Gaming E-mail Internet Telephony External Applications
Network Model A method of describing and analyzing data communications networks, by breaking the entire set of communications functions into a series of layers, each of which can be defined separately. This allows vendors to develop software and hardware to provide the functions separately.
Open Systems Interconnection (OSI) • Developed by the International Organization for Standardization (ISO) in 1984 • The primary architectural model for intercomputer communications. • A conceptual model composed of seven layers, each specifying particular network functions. • Describes how information from a software application in one computer moves through a network medium to a software application in another computer.
Why Study OSI? • Still an excellent model for conceptualizing and understanding protocol architectures • Key points: • Modular • Hierarchical • Boundaries between layers=interfaces
ISO’s OSI Model OSI has 7 layers: • Application layer • Presentation layer • Session layer • Transport layer • Network layer • Data link layer • Physical layer
OSI Lower Layers • Physical – Layer 1 • Responsible for transmission of bits • Always implemented through hardware • Encompasses mechanical, electrical, and functional interfaces • e.g. RS-232 • Data Link – Layer 2 • Responsible for error-free, reliable transmission of data • Flow control, error correction • e.g. Ethernet • Network – Layer 3 • Responsible for routing of messages through network • Concerned with type of switching used (circuit v. packet) • Handles routing between networks, as well as through packet-switching networks
OSI Upper Layers • Transport • Isolates messages from lower and upper layers • Breaks down message size • Monitors quality of communications channel • Selects most efficient communication service necessary for a given transmission • Session • Establishes logical connections between systems • Manages log-ons, password exchange, log-offs • Terminates connection at end of session • Presentation • Provides format and code conversion services • Example: File conversion from ASCII to EBDIC • Application • Provides access to network for end-user • User’s capabilities are determined by what items are available on this layer • Logic needed to support various applications • Each type of application requires different software on this layer
Application Viewpoint of a Network • Distributed data communications involves three primary components: • Networks • Computers • Applications • Three corresponding layers • Network access layer • Transport layer • Application layer
TCP/IP • Transmission control Protocol/Internet Protocol • Developed by DARPA • No official protocol standard • Can identify five layers • Application • Host-to-Host (transport) • Internet • Network Access • Physical
OSI Model Internet Model OSI Model Application layer: http, telnet, snmp, smtp, nfs, ftp TCP, UDP Internet layer IP layer IPv4, IPv6 Layer 3 Data Link Layer (HDLC) Network access layer Layer 2 Physical layer Layer 1
Sender Receiver Application Layer Application Layer HTTP Request HTTP Request Transport Layer Transport Layer TCP HTTP Request TCP HTTP Request Network Layer Network Layer IP TCP HTTP Request IP TCP HTTP Request Data Link Layer Data Link Layer Ethernet IP TCP HTTP Request Ethernet IP TCP HTTP Request Physical Layer Physical Layer
Data Processing • Centralized data processing • Computer, data, control, staff and processing are centralized • Distributed data processing (DDP) • May include centralized center plus satellite facilities • Involves distributed computer, data, and processing • Greater flexibility in meeting individual needs • More redundancy and more autonomy
Reasons for DDP • Need for new applications • On large centralized systems, development can take years • On small distributed systems, development can be component-based and very fast • Need for short response time • Centralized systems result in contention among users and processes • Distributed systems provide dedicated resources
Networking Implications • Connectivity requirements • What links between components are necessary? • Availability requirements • Percentage of time application or data is available to users • Performance requirements • Response time requirements
Functions of Data Processing System The work done by any application program can be divided into four general functions: • data storage • data access logic • application logic • presentation logic
Network Architecture “Students list” link in course homepage: Student records Web browser Web Server students.pl Data Storage Presentation Logic Application Logic Data Access Logic Geek (129.118.49.111)
Servers A computer’s suitability to serve as the server or host for an online, real-time data communication network depends on both its own capabilities and the capabilities of other attached hardware. There are three typical types of hosts: • Mainframe computers • Minicomputers • Microcomputers
Clients The client is the input/output hardware device at the user’s end of the communications circuit. There are four major categories of clients: • Terminals • Microcomputers / workstations • Network computers • Special purpose terminals
Network Architectures From a viewpoint of distributed application system, there are three fundamental network architectures: • Host-based networks: the host computer performs virtually all of the work • Client-based networks: the client computer performs virtually all of the work • Client-server networks: the work is shared between the hosts and clients
Host-Based Architectures Host-Based Architectures
Client-Based Architectures Example: Novell NetWare 3.12
Client-Server Architectures More organizations today are moving to client-server architectures. Client-Server attempts to balance the processing between the client and the server by having both do some of the processing.
Costs and Benefits of Client-Server Architectures • Client-server architectures are scaleable • Client-server architectures can support many different types of clients and servers. • Because no single host computer supports all the applications, the network is generally more reliable.
Client-Server Architectures • Client-server architectures also have some critical limitations, the most important of which is their complexity. • Even updating the network with a new version of the software is more complicated too. • Much of the debate between host- and client-server networks has centered on cost. Microcomputer hardware is more than 1000 times cheaper than mainframe hardware for the same amount of computing power.
Middleware • Client-server networks enable software and hardware from different vendors to be used together. Unfortunately, they have few standards. One solution is middleware, software that sits between the application software on both the client and the server. • Middleware does two things: • It provides a standard way of communicating that can translate between software from different vendors. • It manages the message transfer from clients to servers so that the clients need not know the specific server that contains the application’s data.