Presentation is loading. Please wait.

Presentation is loading. Please wait.

Networked Applications Chapter 11 Copyright 2001 Prentice Hall Revision 2: July 2001.

Similar presentations


Presentation on theme: "Networked Applications Chapter 11 Copyright 2001 Prentice Hall Revision 2: July 2001."— Presentation transcript:

1 Networked Applications Chapter 11 Copyright 2001 Prentice Hall Revision 2: July 2001

2 2 The Primacy of Applications Users only care about applications The other layers (transport, internet, data link, physical) exist only to support applications

3 Web-Enabled Database Access

4 4 Problem: Database is on a “database server” Mainframe or client/server server These need proprietary client software or a terminal Problem: Most users only have browsers User with BrowserDatabase Server

5 5 Web-Enabled Database Access Solution: an application server (webserver with intermediary software) mediates between the two User with BrowserDatabase ServerApplication Server

6 6 Web-Enabled Database Access Step 1: User types URL of data entry form Step 2: Webserver application sends form User with BrowserDatabase Server URL Form Application Server

7 7 Web-Enabled Database Access Step 3: User types information in form, hits Send Browser puts data in a request line GET keyword /cgi-bin is the absolute path to a directory holding an intermediary program, bogo.exe GET /cgi-bin/bogo.exe?last=Lee&first=Pat

8 8 Web-Enabled Database Access Step 3: User types information in form, hits Send Data separated from absolute path by ? last field contains the value Lee first field contains the value Pat GET /cgi-bin/bogo.exe?last=Lee&first=Pat

9 9 Web-Enabled Database Access Step 3: Application server webserver software passes data form to the intermediary program, Bogo.exe, on the webserver Application Server Webserver Application Software Intermediary Program (Bogo.exe)

10 10 Web-Enabled Database Access Step 4: Bogo.exe puts the data into a query in the database server’s standard format Sends the query to the server User with BrowserDatabase Server Standard Query Application Server (Bogo.exe)

11 11 Web-Enabled Database Access Step 5: Database server sends response in its standard format to the intermediary program, Bogo.exe User with BrowserDatabase Server Standard Response Application Server (Bogo.exe)

12 12 Web-Enabled Database Access Step 6: Application server intermediary software (Bogo.exe) creates a new HTML webpage containing the response Application Server Intermediary Program (Bogo.exe) Webpage

13 13 Web-Enabled Database Access Step 7: Application server intermediary software passes this webpage to the webserver application program Application Server Webserver Application Software Intermediary Program (Bogo.exe) Webpage

14 14 Web-Enabled Database Access Step 8: Webserver application program passes the webpage to the browser User with BrowserDatabase Server Webpage Application Server

15 15 Web-Enabled Database Access CGI and Intermediary Program Intermediary program (Bogo.exe) does the actual translation work Webserver Application Program Webserver Application Program Intermediary Program (Bogo.exe) Intermediary Program (Bogo.exe) Database Application Program Database Application Program

16 16 Web-Enabled Database Access CGI and Other Programs Two standards for communication Common Gateway Interface (CGI) standard Highly standardized Slow Webserver Application Program Webserver Application Program Intermediary Program (Bogo.exe) Intermediary Program (Bogo.exe) Database Application Program Database Application Program CGI

17 17 Web-Enabled Database Access Application Program Interfaces (APIs) Database servers have proprietary Application Program Interfaces (APIs) for communication with other application programs Proprietary (not standardized) Faster than CGI Webserver Application Program Webserver Application Program Database Application Program Database Application Program API

18 18 Web-Enabled Database Access Client-Side Processing Webserver can download webpage with Java or Active-X program Client can then communicate directly with the database server User with BrowserDatabase Server Webpage with Java applet Subsequent Interactions

19 19 Web Services Another way to deal with back-end systems Messages are sent via HTTP Gets through most firewalls Simple standard for easy implementation Database ServerApplication Server Web service HTTP Request Message HTTP Response Method New

20 20 Web Services Web services are objects Web services are objects; expose methods (commands) on one or more interfaces Messages govern exchanges; programming language of Web service is irrelevant Database ServerApplication Server Web service Request (Method, Parameters) New

21 21 Web Services Message Body Follows the SOAP Standard Syntax governed by XML WebService request message HTTP Headers <QuotePrice xmlns=“QuoteInterface” QA78d 47 Rush HTTP Headers <QuotePrice xmlns=“QuoteInterface” QA78d 47 Rush Simplified New

22 22 Web Services Message Body Follows the SOAP Standard WebService response message Messages have well-defined fields HTTP Headers <QuoteResponse xmlns=“QuoteInterface” $750.33 HTTP Headers <QuoteResponse xmlns=“QuoteInterface” $750.33 Simplified New

23 23 Web Services Microsoft.NET Initiative Uses SOAP Web services Database ServerApplication Server Web service SOAP Body New

24 24 Mainframes Contain about 70% of corporate data from operations (accounting, payroll, billing, etc.) Often the “database server” in web-enabled database applications Mainframe market dominated by IBM

25 25 Terminal-Host Communication Traditionally, Just a Terminal, Host, and Transmission Line (Chapter 1) Poor response time Poor user interface: sending graphics over a distance is expensive (and lines usually are slow) Inadequate for production workers who use their terminals hours per day Box

26 26 Mainframe Communication User site has multiple terminal users Called “3270” Terminals Generically High speeds, some color, some graphics User Site 3270 Terminal Box

27 27 Mainframe Communication Cluster Controller at User Site Supports a cluster of terminals and printers Provides limited on-screen text editing power to terminals This elimination of text editing work allows the mainframe to focus on high-value database chores Cluster Controller Limited Text Editing Box

28 28 Mainframe Communication Cluster Controller at User Site Multiplexes transmissions of multiple terminals and printers to the central site This reduces transmission costs, which are expensive for higher-speed long-distance links Central Site Central Site Long- Distance Line Box AAAAAAA B B BB

29 29 Mainframe Communication Transmission Line Long-distance lines are expensive per bit sent But 3270 terminals need high speeds Multiplexes terminal communication onto 56 kbps, 1.544 Mbps or faster line to give high speed but keep cost reasonable Central Site Central Site Long- Distance Line Box

30 30 Mainframe Communication Central Site Communications Controller Handles multiplexing to reduce transmission cost Handles detailed interactions with cluster controllers, freeing mainframe to deal with database processing Communications Controller Box

31 31 Mainframe Communication Reducing Response Time Text editing work is done locally Still delay for heavy database work on mainframe Reducing Transmission Costs Multiplexing, and Cluster controller provides limited local screen editing, so fewer bits need to be transmitted to and from the mainframe Box

32 32 Mainframe Communication Reducing Work the Mainframe Needs to Do, so that it can Focus on High-Value Database Processing Cluster controller handles most text-editing chores freeing mainframe from having to support this work, and Communications controller handles details of communication with cluster controllers, freeing mainframe from having to support this work Box

33 33 Mainframes Use SNA Standards Architecture Instead of TCP/IP Not peer-to-peer control; Master-slave control under a System Services Control Point program on a mainframe SSCP program governs all sessions among devices SSCP Box

34 34 Mainframes SNA Standards Architecture Uses OSI standards at the physical and data link layers Path Control layer is like TCP/IP internet layer Transmission Control layer is like the transport layer However, not peer to peer operation; master- slave operation under the control of the SSCP Box

35 35 Mainframes SNA Standards Architecture Highest layers are like OSI layers Network Addressable Unit (NAU) Services layer is like OSI session layer Data Flow Control layer is like OSI presentation layer There is no SNA application layer Box

36 36 Mainframes SNA NAUs Communication takes place between network addressable units (NAUs) Unit is a general name for a communicating entity In networks, communicating entities must have addresses; So they are network addressable units Box

37 37 Mainframes Logical Units Deal directly with end users Terminals are logical units! Connection points on mainframe (not mainframe itself) deal with application programs,which are considered to be end users LU6 Connection Application Human User Box

38 38 Mainframes Physical Units Do not deal directly with end users Mainframe, communications controller, cluster controller Path control network connects cluster controller and communication controller Path Control Network Path Control Network Box

39 39 Mainframes SSCP Third type of NAU Program located on the mainframe In classic SNA, two other NAUs can only be connected under the control of the SSCP Box

40 40 Mainframes Versions of SNA Classic SNA All communication under the control of SSCP Advanced Peer-to-Peer Networking (APPN) Newer; NAUs can connect directly High-Performance Routing Classic SNA and APPN are difficult to route Newer still; HPR improves routing Box

41 41 Mainframes SNA and Router Networks To link cluster controllers to communications controller over routed networks Data Link Switching (DLSw) standard supports SNA transmission through routers High-Performance Routing (HPR) is better Box

42 42 Mainframes SNA and Router Networks Mainframe can even connect directly to a router instead of to a communications controller Box

43 43 Mainframes Mainframes and TCP/IP Networks TN3270E TN3270E servers communicate with mainframe Users have PCs with TN3270E client software that emulates 3270 terminals TCP/IP Network TCP/IP Network PC with TN3270E Client TN3270E Server Box

44 Electronic Mail

45 45 E-Mail Client Software and Mail Hosts Client PC has E-Mail client software that communicates with user’s mail host Mail hosts deliver outgoing mail to other mail hosts PC with E-Mail Client Mail Host PC with E-Mail Client

46 46 SMTP Simple Mail Transfer Protocol (SMTP) Standard for mail host-mail host exchanges E-Mail Client often sends messages to mail host via SMTP, but not always PC with E-Mail Client Mail Host SMTP

47 47 SMTP Operation For Each Message, the Sending Process Makes a connection Gives name of sender (From) and gets OK Gives names of receivers individually and gets OK for each separately Asks to send message, gets OK Sends message, gets confirmation Closes connection

48 48 Receiving and Sending E-Mail User’s Mail Host Stores Incoming Files in the User’s Mailbox User later retrieves them User also sends outgoing mail Client PC Mail Host With User’s Mailbox Receive Mail Send Mail

49 49 POP Clients POP (Post Office Protocol) is the most popular standard for mail downloading Download messages all or selectively Still send outgoing messages via SMTP Works via Internet PC with Internet E-Mail Client Mail Host SMTP POP

50 50 POP Operation Several client-mail host interactions needed to download new mail Log into mail host Can ask how many new messages there are and how long they are Can download all or download one at a time If download one at a time, can decide based on length Can delete messages on host after downloading Close the session

51 51 IMAP Clients IMAP (Internet Message Access Protocol) More sophisticated than POP for downloading Can manage messages stored on the mail host But not widely adopted PC with Internet E-Mail Client Mail Host IMAP

52 52 Browser Clients (Web-Based E-Mail) Client is Browser Mail Host is a Webserver Mail host sends HTML pages to client User types messages and retrieval data in forms, sends back All communication is via HTTP PC with Browser Webserver Mail Host HTTP SMTP

53 53 Telnet Clients Some mail hosts support Telnet Telnet client on PC emulates a simple terminal No color or graphics Monospaced Text Sometimes only way to interact with a mail host PC with Telnet Client Mail Host Supporting Telnet Mail Host Telnet SMTP

54 54 Recap on Internet E-Mail Transmission Communication Between Mail Hosts SMTP Communication From Client to its Mail Host SMTP Proprietary file server program access on LANs HTTP Telnet

55 55 Recap on Internet E-Mail Transmission Communication to Client from its Mail Host to deliver messages POP or IMAP Proprietary file server program access on LANs HTTP Telnet

56 56 Note on Internet E-Mail Transmission Client and Server can Communicate Over the Internet Except for File Server Program Access You can access your e-mail from anywhere Must have the right client program Client PC Mail Host With User Mail Box Implied in text but not directly stated

57 57 Message Structure Standards RFC 822 Text-only message bodies MIME Multimedia message bodies and headers Not widely used for bodies or headers HTML Bodies Becoming common Not well standardized; Limited interoperability between mail clients

58 58 Attachments Send a message Attach a file (word processing document, spreadsheet, graphic, etc.) E-mail can be a file delivery mechanism Viruses Attachments may contain viruses Virus scanning before opening is critical

59 59 Attachments Problem Attached files use all 8 bits of each byte Called binary data On Internet, can only use the first seven bits Called 7-bit ASCII In Internet transmission, 7 th bit may be truncated if send binary file 10101010 Binary x1010101 Internet

60 60 Attachments Internet Encoding Files must be Internet encoded before transmission to travel over the Internet using only the first 7 bits in each byte At the receiving end, files must be Internet decoded so that applications can read them 10101010 Binary x1010101 Internet x1010101 Internet 10101010 Binary Internet Encoding Internet Transmission Internet Decoding

61 61 Attachments Internet Encoding Example (There are Other Internet Encoding Standards) Break file into groups of three data bytes (24 bits) Create group of four encoded bytes (32 bits) 11111111 00000000 11111111 Data Bytes Encoded Bytes

62 62 Attachments Internet Encoding Example (There are Other Internet Encoding Standards) Put six bits of each data byte in each outgoing byte Leaves two bits free in each outgoing byte 11111111 00000000 11111111 xx111111 xx11 Data Bytes Encoded Bytes 6,2

63 63 Attachments Internet Encoding Example (There are Other Internet Encoding Standards) Put six bits of each data byte in each outgoing byte Leaves two bits free in each outgoing byte 11111111 00000000 xx111111 xx110000 xx0000 Data Bytes Encoded Bytes 4,4

64 64 Attachments Internet Encoding Example (There are Other Internet Encoding Standards) Put six bits of each data byte in each outgoing byte Leaves two bits free in each outgoing byte 11111111 00000000 11111111 xx111111 xx110000 xx000011 xx111111 Data Bytes Encoded Bytes 2,6

65 65 Attachments Internet Encoding Example (There are Other Internet Encoding Standards) Lowest 31 ASCII codes are control codes Add 32 (100000) to each outgoing byte so that it will not become a control code 8 th bit is still fee, as required xx111111 xx110000 xx000011 xx111111 Encoded Bytes x1011111 x1010000 xx100011 x1011111 Encoded Bytes Add 100000

66 66 Attachments Internet Encoding Standards Communicating mail clients must use the same Internet encoding standard to encode and decode MIME Several versions of MIME exist Basic MIME is almost universally supported by e-mail clients today Binhex is commonly used on Macintoshes UUENCODE is common in UNIX

67 67 Attachments E-Mail users should negotiate before sending an attachment Internet encoding standard they will use Application file format they will use If same application program and version, fine If same application program and different versions, send in format of older version If different application programs, send in a format and version the other can import

68 IP Telephony Voice-Data Convergence

69 69 What is IP Telephony? Transmit telephone conversations in IP packets sent over the Internet or another network, such as Ethernet, Frame Relay, or ATM carrying IP packets IP Packet

70 70 IP Telephony Digitize the outgoing voice signal Packetize (place in packets) and send over IP packet-switched networks Reverse at other end Digitize Packetize

71 71 Why IP Telephony? Save Money Digitizing Voice More Efficiently Current telephone system also digitizes voice for at 64 kbps IP telephony can digitize voice with speeds as low as 12 kbps Sending less data per call saves transmission costs Digitize 64 kbps Digitize 12 kbps- 16 kbps

72 72 Why IP Telephony? Packet-Switched Network Delivery Multiplexes trunk lines for reduced transmission line costs Reduced Management Costs Only have to manage one network instead of two Packetize

73 73 Problem of Latency Packet-Switched Networks Often Have Latency (Delay) Latency is Bad for Voice Conversations At latency of 200 milliseconds (ms), conversation is difficult because of turn-taking awkwardness At latency of 500 ms, conversation is impossible Variable latency from one packet to the next makes voice sound jittery (jitter)

74 74 Reducing Latency Solution Connect all corporate sites to a single ISP Possible because some ISPs have access points in many places around the country or even around the world Site Single ISP Site SLA for Low Latency

75 75 Reducing Latency Solution Connect all corporate sites to a single packet- switched PSDN Packet-switched PSDNs also have low latency, SLAs Site PSDN Site SLA for Low Latency

76 76 Evolution of IP Telephony Initially, Only Use Between Sites Add IP telephony modules to PBXs Communicate over the Internet in IP Use traditional telephony within sites Saves on long-distance, which is expensive Site

77 77 Evolution of IP Telephony Eventually, Service to the Desktop Combine with data service to the desktop Computer-Telephony Integration (CTI) applications When caller calls in, automatically linked with relevant data To improve applications, not necessarily to save money Problem: technology is not readily available or standardized

78 78 IP Telephony Standards Based on H.323 Videoconferencing Standard from ITU-T For videoconferencing over the Internet or other IP networks IETF, ITU-T have agreed to work together on IP telephony standards

79 79 Questions about IP Telephony Will it be Sufficiently Reliable? Ordinary telephony is super reliable Available 99.999% of the time Can IP telephony offer sufficient reliability?

80 80 Questions about IP Telephony Will it Really Save Money? Was very promising when long-distance and international costs were very high But these costs are falling rapidly and will continue to do so Will it save enough money to be worthwhile?


Download ppt "Networked Applications Chapter 11 Copyright 2001 Prentice Hall Revision 2: July 2001."

Similar presentations


Ads by Google