Presentation is loading. Please wait.

Presentation is loading. Please wait.

Network Applications (typically) CLIENT-SERVER Examples of the Application level of the OSI model One typically provides a service to the other Servers.

Similar presentations


Presentation on theme: "Network Applications (typically) CLIENT-SERVER Examples of the Application level of the OSI model One typically provides a service to the other Servers."— Presentation transcript:

1 Network Applications (typically) CLIENT-SERVER Examples of the Application level of the OSI model One typically provides a service to the other Servers for hardware –file –printer –fax Servers for software support –providing “terminal” access –providing translation from internet name addresses (pcs.cnu.edu) to internet numeric addresses (137.155.10.2) –A\ND LOTS OF OTHER FUNCTIONALITY!!! Application

2 Common CLIENT-SERVERs FTP for transferring files from one machine to another WITHOUT having an account at both machines. TELNET for providing remote command- line (shell) access when you have an account on both machines. TELNET also will provide other functionality as we will see later. Info services from ARCHIE, WAIS (Wide Area Information Servers), GOPHER, etc. MAIL transfer agents WWW (WorldWideWeb) servers/browsers

3 Terminal - little local intelligence Terminal NO local processing per se. Only a conduit to the Mainframe. Keyboard Here the PC has the program instead of the mainframe! In previously graphic, terminal is a relay. Mainframe Application Keyboard (Display and) xmit PC Application Display

4 Remote terminal Run program remotely Like a long cable to a keyboard at your house Hyperterminal on Windows 95/98 Typically requires a modem Only run command shell, not windows apps. What if you want a terminal access through the internet? Telnet is your answer

5 Telnet example telnet cambria@pcs.cnu.edu SunOS 5.6 login: dgame Password:(….) Last login: Tue Jan 25 19:07:04 from cx81733-c.nwptn1 You have new mail. {dgame@cambria:~ } pwd /home/faculty1/dgame {dgame@cambria:~ }exit {dgame@cambria:~ }logout (back on the original machine)

6 How is telnet organized? Computer to Use Telnet Server Computer now using Telnet Client Internet Keyboard Terminal Display and xmit Display Mainframe Unix Shell

7 Let’s Probe a Little Deeper!

8 Quick Review of Ascii 7 bit character code internally or elsewhere the 8th bit is 0 standard “char” data keyboard input PLUS communications characters be sure to understand HEX notation 000000000NUL 000000101SOH … 000100008BS … 00010100ALF … 00011010DCR … 001011016SYN … 010000020SP 010000121! … No 8 bit value defined! In binary 0..127 (0000000..1111111) Comm Chars Display Chars

9 Computer to Use Telnet Server Computer now using Telnet Client Internet Unix Shell Focus on the server and shell

10 Control Characters in telnet 8 bit values really transmitted Values greater than 127 interpreted differently Any character less than 128 passed directly to the shell Any character greater than 127 is not to be passed through but used to interpret. Telnet server (holds 128-255) (0-255 chars) Unix shell (0-127 chars) Control

11 The basic idea (not actually fact - see the text for the real story) mkdirr(245)(OD) Unix shell Control mkdir(OD) Data intended for the receiving program is passed through. The control character (245) tells the server to delete the previous character before passing the character to the shell. Telnet server (245) holds r

12 General Interaction Most Often: Telnet Server Telnet Client Internet Telnet: Appl or shell ServerClient Internet

13 Another View! Telnet Client USERUnix Shell Telnet Server Types ls.. gets directory Additional layering of application on top of standard applications such as telnet, ftp, etc.

14 ftp ftp Server ftp Client Internet Commands Files Telnet distinguishes data from commands by code value. Ftp distinguishes data from commands by channel.

15 FTP A program for copying files from one machine to another Lets you do a FEW unix-type commands in the command-line version CLIENT SERVER connect request login login request file send file logoff General Exchange of Messages FTP

16 Sample client interaction w/ftp {dgame@cambria} ftp ftp.pcs.cnu.edu Connected to ftp.pcs.cnu.edu. 220 america3 FTP server (UNIX(r) System V Release 4.0) ready. Name (ftp.pcs.cnu.edu:dgame): anonymous 331 Guest login ok, send ident as password. Password: (your id) 230 Guest login ok, access restrictions apply. ftp> cd pub/dgame/335 250 CWD command successful. ftp> binary 200 Type set to I. ftp> mget * mget AaronsFavCar.bmp? y 200 PORT command successful. 150 Binary data connection for AaronsFavCar.bmp (137.155.2.17,33136) (177562 bytes). 226 Binary Transfer complete. local: AaronsFavCar.bmp remote: AaronsFavCar.bmp 32768 bytes received in 0.017 seconds (1880.25 Kbytes/s) ftp> bye 221 Goodbye. {dgame@cambria} Client to Server Server to Client

17 Commands to use Table 8.3 Not like a shell, but a few of the commands –cd –close –pwd –lcd (change on the client side!) –binary –get –put –mget –prompt

18 Archie FTP provides a unix-look directory which you navigate, “ls”, and copy/send files If you have trouble managing your own account, how much trouble do you have locating information when the entire FTP world is your directory? Database server containing information on the contents of FTP sites around the world Being replaced with good WWW search engines which envelope ftp sites.

19 Other Client Servers SMTP (Simple Mail Transfer Protocol) –More than meets the eye –Server can also be a client (same process) WWW (World-Wide Web) –(more to come)

20 SMTP SERVER mail.pcs.cnu.edu SERVER mail.uva.edu pine Whatever client the user chooses POP or IMAP SMTP Here a local server and remote server in addition to a remote and local client. For SMTP, the servers also function as clients depending on which “server” makes the request. See Figure 8.7

21 General Issues at Application Layer Timing of interaction (Time Sequence Diagrams) Types of problems encountered How does one approach programming one of them?

22 HORIZONTAL communication between Client and Server Consider the timing of the interaction This is a TIME-SEQUENCE DIAGRAM. TIME Send CLIENT SERVER 1 Receive 1. SERVER waits GetAnswer 2 2. SERVER works Wait 3 3. CLIENT waits Process Answer 4 4. CLIENT works

23 Problems which can occur Messages are lost Message are altered Messages arrive out of order Client and Server are not synchronized for each other. Client does not have room for the answer. Client can not wait any longer for the answer. Server machine may not be turned on Connection between the two machines may not be functioning

24 How do you write programs to interact over a network? Although you may not actually write the code, you’ll learn how in this course. Different ways. (ignore the text, middle p. 483) –Ad hoc... you do all of the work –Use libraries »socket libraries for tcp/ip based communication »RPC (Remote Procedure Calls) are a little more involved than using a library of procedures but that model is sufficient for now –We will cover DOS (ad hoc) and Unix (sockets) In ALL cases, messages are exchanged


Download ppt "Network Applications (typically) CLIENT-SERVER Examples of the Application level of the OSI model One typically provides a service to the other Servers."

Similar presentations


Ads by Google