* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Chapter 11
		                    
		                    
								Survey							
                            
		                
		                
                            
                            
								Document related concepts							
                        
                        
                    
						
						
							Transcript						
					
					Networked Applications Chapter 11 Copyright 2001 Prentice Hall Revision 2: July 2001 2 The Primacy of Applications   Users only care about applications The other layers (transport, internet, data link, physical) exist only to support applications Web-Enabled Database Access 4 Web-Enabled Database Access  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 Browser Database Server 5 Web-Enabled Database Access  Solution: an application server (webserver with intermediary software) mediates between the two User with Browser Application Server Database Server 6 Web-Enabled Database Access  Step 1: User types URL of data entry form  Step 2: Webserver application sends form URL Form User with Browser Application Server Database Server 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 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 Web-Enabled Database Access  Step 3: Application server webserver software passes data form to the intermediary program, Bogo.exe, on the webserver Webserver Application Software Intermediary Program (Bogo.exe) Application Server 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 (Bogo.exe) Standard Query User with Browser Application Server Database Server 11 Web-Enabled Database Access  Step 5: Database server sends response in its standard format to the intermediary program, Bogo.exe (Bogo.exe) Standard Response User with Browser Application Server Database Server 12 Web-Enabled Database Access  Step 6: Application server intermediary software (Bogo.exe) creates a new HTML webpage containing the response Webpage Application Server Intermediary Program (Bogo.exe) 13 Web-Enabled Database Access  Step 7: Application server intermediary software passes this webpage to the webserver application program Webpage Webserver Application Software Application Server Intermediary Program (Bogo.exe) 14 Web-Enabled Database Access  Step 8: Webserver application program passes the webpage to the browser Webpage User with Browser Application Server Database Server 15 Web-Enabled Database Access  CGI and Intermediary Program  Intermediary program (Bogo.exe) does the actual translation work Webserver Application Program Intermediary Program (Bogo.exe) Database Application Program 16 Web-Enabled Database Access  CGI and Other Programs  Two standards for communication  Common Gateway Interface (CGI) standard   Highly standardized Slow Webserver Application Program CGI Intermediary Program (Bogo.exe) Database Application Program 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 API Database Application Program 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 Webpage with Java applet User with Browser Subsequent Interactions Database Server 19 New Web Services  Another way to deal with back-end systems  Messages are sent via HTTP   Gets through most firewalls Simple standard for easy implementation Web service HTTP Request Message Application Server HTTP Response Method Database Server 20 New 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 Web service Request (Method, Parameters) Application Server Database Server 21 Web Services  New Message Body Follows the SOAP Standard   Syntax governed by XML WebService request message HTTP Headers <?xml version=“1.0”?> <BODY> Simplified <QuotePrice xmlns=“QuoteInterface” <PartNum>QA78d<PartNum> <Quantity>47</Quantity> <ShippingType>Rush</ShippingType> </QuotePrice> </BODY> 22 Web Services  New Message Body Follows the SOAP Standard   WebService response message Messages have well-defined fields HTTP Headers <?xml version=“1.0”?> Simplified <BODY> <QuoteResponse xmlns=“QuoteInterface” <Price>$750.33</Price> </QuoteResponse> </BODY> 23 New Web Services  Microsoft .NET Initiative  Uses SOAP Web services SOAP Body Application Server Web service Database Server 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 Box 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 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 Mainframe Communication  Box 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 Limited Text Editing Cluster Controller 28 Mainframe Communication  Box 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 A A A B AAA B B B LongDistance Line A Central Site 29 Mainframe Communication  Box 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 LongDistance Line Central Site 30 Mainframe Communication   Box 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 31 Mainframe Communication  Reducing Response Time    Box 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 32 Mainframe Communication  Box 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 33 Mainframes  Box 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 34 Mainframes  Box 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 35 Mainframes  Box 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 36 Mainframes  Box 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 37 Mainframes  Box 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 Application Human User LU6 Connection 38 Mainframes  Box 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 39 Mainframes  Box 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 40 Mainframes  Versions of SNA  Classic SNA   All communication under the control of SSCP Advanced Peer-to-Peer Networking (APPN)   Box Newer; NAUs can connect directly High-Performance Routing   Classic SNA and APPN are difficult to route Newer still; HPR improves routing 41 Mainframes  Box 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 42 Mainframes  Box SNA and Router Networks  Mainframe can even connect directly to a router instead of to a communications controller 43 Mainframes Box  Mainframes and TCP/IP Networks  TN3270E   PC with TN3270E Client TN3270E servers communicate with mainframe Users have PCs with TN3270E client software that emulates 3270 terminals TCP/IP Network TN3270E Server Electronic Mail 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 Mail Host PC with E-Mail Client 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 SMTP PC with E-Mail Client SMTP Mail Host Mail Host 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 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 Receive Mail Send Mail Client PC Mail Host With User’s Mailbox 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 SMTP SMTP POP PC with Internet E-Mail Client Mail Host Mail Host 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 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 IMAP PC with Internet E-Mail Client Mail Host Mail Host 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 HTTP PC with Browser SMTP Webserver Mail Host Mail Host 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 Telnet PC with Telnet Client SMTP Mail Host Supporting Telnet Mail Host 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 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 Implied in text but not directly stated 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 56 57 Message Structure Standards  RFC 822   MIME    Text-only message bodies 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 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 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 th bit may be  In Internet transmission, 7 truncated if send binary file 10101010 x1010101 Binary Internet 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 Internet Encoding Internet Transmission Internet Decoding 10101010 x1010101 x1010101 10101010 Binary Internet Internet Binary 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) Data Bytes Encoded Bytes 11111111 00000000 11111111 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 6,2 Data Bytes 11111111 00000000 Encoded Bytes xx111111 xx11 11111111 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 4,4 Data Bytes 11111111 00000000 Encoded Bytes xx111111 xx110000 xx0000 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 2,6 Data Bytes 11111111 00000000 11111111 Encoded Bytes xx111111 xx110000 xx000011 xx111111 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 8th bit is still fee, as required Encoded Bytes xx111111 xx110000 xx000011 xx111111 x1011111 x1010000 xx100011 x1011111 Add 100000 Encoded Bytes 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 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 IP Telephony Voice-Data Convergence 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 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 Why IP Telephony? Digitize  Save Money  Digitizing Voice More Efficiently    64 kbps 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 12 kbps16 kbps Why IP Telephony?  Packet-Switched Network Delivery   72 Multiplexes trunk lines for reduced transmission line costs Reduced Management Costs  Only have to manage one network instead of two Packetize 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 Reducing Latency  Solution   Site 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 Single ISP SLA for Low Latency Site 75 Reducing Latency  Solution   Site Connect all corporate sites to a single packet- switched PSDN Packet-switched PSDNs also have low latency, SLAs PSDN SLA for Low Latency Site 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 Site 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 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 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 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?
 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                            