Java: A to Z

Delivered By: Alexander Day Chaffee, Purple Technology Original Creator of Gamelan (http://java.developer.com/ - EarthWeb) alexc@purpletech.com

Copyright © 1997-8 Alex Chaffee

Purple Technology
Training and Consulting  All levels of courses  http://www.purpletech.com/ 
Java

Copyright © 1997-8 Alex Chaffee

What is Java?
An island 

Largest

island of the equatorial achipelago of Indonesia  Famous for beaches and coffee Copyright © 1997-8 Alex Chaffee

What is Java? A programming language  Developed by Sun Microsystems  Open specification Copyright © 1997-8 Alex Chaffee .

What is Java?  An architecture  Virtual Machine Copyright © 1997-8 Alex Chaffee .

What is Java? A platform  Libraries / APIs  Applications  Applets Copyright © 1997-8 Alex Chaffee .

What is Java?  An Operating System (OS)  Tailored for NCs and Embedded Systems  Not an OS for PCs Copyright © 1997-8 Alex Chaffee .

What is Java? A really good buzzword  Coined by Kim Polese Copyright © 1997-8 Alex Chaffee .

Why Java? Productivity  Low Cost  Run Anywhere  N-tier Applications  High Copyright © 1997-8 Alex Chaffee .

Where is Java? programming  Enterprise computing  Distributed computing  Client-side multimedia  Server-side Copyright © 1997-8 Alex Chaffee .

smart cards) Copyright © 1997-8 Alex Chaffee . collaboration services)  Embedded (TV Set-top.Where is Java heading?  Clients (Network. Distributed Computing with Nodes)  Servers (Web servers. cell phones.

Facts and Figures Copyright © 1997-8 Alex Chaffee .

Number of Java Developers (IDC) Copyright © 1997-8 Alex Chaffee .

RealReal-world Java Examples Copyright © 1997-8 Alex Chaffee .

Andersen Consulting  60.000 employees who travel to client sites  VERY heterogeneous computing environments  On-line travel system for their in-house needs  Privileges according to employee status .

Andersen Consulting (cont." -Elmer Baldwin. we would still be debugging. via World Network.)  "Java is absolutely ready for prime time. Copyright © 1997-8 Alex Chaffee . President. It's the most bulletproof language we've used. We don't have to worry about memory leaks. If we had done this in C.

CSX railway shipping  Find out which train(s) have your freight on map of USA  Click on train and see what freight belongs to your company  Saving CSX $10M in next year Copyright © 1997-8 Alex Chaffee .

expanded reach and selfenabled the customer  CSX.  At the same time. improved satisfaction.CSX railway shipping (cont. Copyright © 1997-8 Alex Chaffee . CSX has moved to a multi-client environment.) using Java. has halved the time to write code and moved to a zero cost software distribution model.

)  "Java is CSX's enterprise computing solution Java is deployed everywhere and at every level of CSX. FL.CSX (cont. And we are working on architecturally purifying CSX development. "Our ROI on projects where we use Java has increased by 10 percent. the IT unit of CSX Corp. assistant VP of enterprise solutions at CSX Technology in Jacksonville." Copyright © 1997-8 Alex Chaffee ." said Marshall Gibbs.

Dun & Bradstreet  On-line office supply catalogue for in-house use  Privileges according to status at company Copyright © 1997-8 Alex Chaffee .

Federal Express  "Java is our primary targeted application platform for internal apps. "No internal application work is occurring for the client aside from Java development." says FedEx CIO Dennis Jones."  Using Symantec Café Copyright © 1997-8 Alex Chaffee .

Ford Credit is currently using Java to provide customers a convenient way to access account information .Ford Motor Credit Company.  "Ford Credit is using Java and the Internet to better serve our customers.24 hours a day. Ford Motor Credit Company Copyright © 1997-8 Alex Chaffee ." -Terry Bone. 7 days a week.

National Library of Medicine (NIH)  Using Java for health and information professionals to access database  Users' displays tailored to suit information (instead of line-oriented displays)  "The development of Java saved us the cost of developing to platform-specific window environments and greatly speeded up our delivery of a working prototype version of HSTAT (roughly six months from design to delivery)." Copyright © 1997-8 Alex Chaffee .

Copyright © 1997-8 Alex Chaffee .  "Java gives us greater selection of what applications we can use." said Michael Love. Well over 90% of development is Java based. vice president of the smart card initiative at First Union Corp in Charlotte.First Union Corp. NC.

Java Foundations Copyright © 1997-8 Alex Chaffee .

What is a computer?  CPU  Memory  Input/output devices .

What is a programming language? of instructions for computer  Stored in memory. executed by CPU  Grammar  Examples  Perl C  C++  BASIC  LISP  Set .

Lifecycle of a program  Source code  Compiler  Object code  Linker  Executable code .

but not all programs are scripts  Scripting Languages:  Lingo  Perl  JavaScript  TCL A .What is a Script? script is a program.

Program  Scripts are«  smaller  easier learning curve  less scalable of developers per script is usually one  number  more task-specific  usually tailored to a specific program or function  fewer functions available .Script vs.

Program  Programs  more are«  usually larger powerful  more task-independent  more scalable  programs can have dozens of programmers  more code libraries  can produce their own graphical user interface .Script vs.

Lifecycle of a script code  Interpreter  Source .

Perl  Right on the line between scripting and programming language  Possible to write large programs in Perl  Not a good idea  Many libraries available for Perl  Not very good GUI support  Contains compiler and interpreter .

Java Code  Simple  Distributed  Robust  Secure  Portable  Multi-Threaded Object Oriented Interpreted Safe Architecture Neutral High Performance Dynamic (GC) Copyright © 1997-8 Alex Chaffee .

Boy Scout Code  trustworthy  helpful  courteous  obedient  thrifty  clean loyal friendly kind cheerful brave reverent Copyright © 1997-8 Alex Chaffee .

History  Green Project / FirstPerson / Oak  Consumer electronics  Set-top boxes  James Gosling. Patrick Naughton Copyright © 1997-8 Alex Chaffee .

Jonathan Payne Polese Copyright © 1997-8 Alex Chaffee .History  LiveOak  Arthur (1993) van Hoff  WebRunner  Java  Kim (1994)  Patrick Naughton.

History Fall 1994: WebRunner written  Spring 1995: Java/HotJava announced at SunWorld µ95  Fall 1995: Java Day New York   Birth of Gamelan  Spring 1996: First JavaOne (San Francisco) Copyright © 1997-8 Alex Chaffee .

What is an Operating System? A program that runs other programs  Sits between programs and devices  Manages scheduling of concurrent programs  Provides API to applications  Application Program Interface .

sometimes means many . API.What is a Platform?  Combination of OS. installed programs. and hardware  Sometimes means one of those things.

run anywhere  One code base to develop  Upwardly compatible with new technology  Writing code  Write that will run on machines that haven't been invented yet  Cross-compatible with existing installed base  E.g.Platform Independent: Why? once. all the computers on the Web Copyright © 1997-8 Alex Chaffee .

OS2. Win95. MacOS. Irix. WinNT. UnixWare. Netware. and others Copyright © 1997-8 Alex Chaffee . HP-UX.CrossCross-Platform  Write-Once-Run-Anywhere  AIX. Solaris.

Platform Independent: How? Application Application Application Virtual Machine Windows MacOS Unix Copyright © 1997-8 Alex Chaffee .

Java Class Lifecycle  Source -> Bytecode -> Interpreter Copyright © 1997-8 Alex Chaffee .

class) Network or File System Security Manager = security gateway Operating System .java) Compiler (javac) Java Virtual Machine (JVM) ClassLoader Bytecode Verifier Just-in-time compiler Interpreter Class File (.Java Class Lifecycle Source File (.

Security Architecure  Has to go through Verifier on one side and Security Manager on the other  Sandbox  Cryptography / signed applets Copyright © 1997-8 Alex Chaffee .

Secure  Java:  Adjustable security: ³untrusted´ through levels of trust  ActiveX:  Binary trust: all or nothing Copyright © 1997-8 Alex Chaffee .

Java vs. ActiveX Java ActiveX File IO yes yes Network IO yes yes Applet Caching yes yes Erase hard disk no yes Upload confidential information no yes Copyright © 1997-8 Alex Chaffee .

Object-Oriented Object Encourages more flexible and reliable designs  Fosters reuse of code and design  Reduces maintenance costs Copyright © 1997-8 Alex Chaffee .

Automatic Memory Management  Greatly improves developer productivity  Reduces ³memory leakage´ problems Copyright © 1997-8 Alex Chaffee .

Powers of ten  Cost of fixing problems  Design = $1  Development = $10  Debugging = $100  Deployment = $1000  Brooks. The Mythical Man Month  Java helps at early stages  Problems are caught early Copyright © 1997-8 Alex Chaffee .

DCOM)  Applications Copyright © 1997-8 Alex Chaffee . CORBA.Distributed Computing reside where they¶re needed saving valuable desktop space  Accessible from any connected location  Native support for distributed app development (java.net. RMI.

Server-side strength Server Built-in support for networking makes development easy Copyright © 1997-8 Alex Chaffee .

3-tier and n-tier development n Flexible implementations separate user interface from business logic and from database storage Copyright © 1997-8 Alex Chaffee .

Client-side Java Client- Copyright © 1997-8 Alex Chaffee .

Applications 
Installed 
Like

locally

any other application (Word, Photoshop) 

Run

as a local process  Can make network connections freely  No security restrictions  Still safety restrictions (e.g. can¶t write to random memory)
Copyright © 1997 Alex Chaffee

Applets 
Live

inside a browser  Stored as class files on a Web server  Are delivered through the internet or intranet 
On-demand, when

needed 

Run

inside a Java-enabled web browser  Always downloads the latest version 
Sometimes cached locally, but

not reliably
Copyright © 1997 Alex Chaffee

Applet Security 
Security

restrictions  Are secure 
Limited

or no access to the local machine (³client´)

html face.Applets (Diagram) Browser Web Server Here is my face: face.class Copyright © 1997 Alex Chaffee .

Sockets and Ports (Diagram) port 13 Client Socket Time Service Web Service port 80 Socket Server Copyright © 1997 Alex Chaffee .

Applet as Input Form  Interactive  Verify input  Can send data to CGI or to custom server  More efficient use of client and server resources Copyright © 1997 Alex Chaffee .

´ i. can¶t act as a server Copyright © 1997 Alex Chaffee . i.Applet Security Model  a/k/a ³The Sandbox´  Can¶t access local files  Can¶t launch local applications  Can only connect to ³applet host.e.e. the host from which the applet itself was downloaded  Can¶t accept connections.

Applet Tag <APPLET CODE=Animator HEIGHT=100 WIDTH=100> <PARAM NAME=speed VALUE=50> </APPLET> .

..Browser Virtual Machine browser has its own VM  Starts up either at launch or the first time Java is needed  ³Starting Java.´  Every .

4.x. yuck  Navigator 2. 3..x  HotJava  We need.x.x. 4. Copyright © 1997-8 Alex Chaffee .x  Internet Explorer 3..Browser compatibility  Every version of Java is slightly different  Browsers.

The Activator Copyright © 1997-8 Alex Chaffee .

Activator. on Internet  Not a perfect solution Copyright © 1997-8 Alex Chaffee . a/k/a Java Plug-in Plug uses latest JRE  to deploy Java on intranets  eventually.

Microsoft's Java Copyright © 1997-8 Alex Chaffee .

is too high  Dynamic HTML is really just window dressing Copyright © 1997-8 Alex Chaffee . HTML  HTML is a presentation format  Was never meant to be used for interactive applications  Latency. or turn-around time.Java vs.

HTML  Java is a full-fledged application language  High-level of interaction with low-latency  More powerful and easier to use interfaces  Flexible enough to play any part in a solution Copyright © 1997-8 Alex Chaffee .Java vs.

Java can do it all or back-end processing  Middleware to transport and translate information  Front-end user interface  Adapts to client: from PC¶s. NC¶s to Handheld devices  Server-side Copyright © 1997-8 Alex Chaffee .

com/  Founded by four original Java team members  Marimba Copyright © 1997-8 Alex Chaffee .Marimba Castanet Castanet delivers applications  Changes nature of software  No more upgrades! Just automatic updates  http://www.marimba.

Java vs. JavaScript 
Totally

different technologies  JavaScript 
Browser scripting language  Integrated with  Similar

HTML page

syntax

Java and Multimedia

Java and Streaming
- starting to play a sound or video before it has completely downloaded  A few streaming players written in Java 
Flash  Shockwave 

Streaming

Multimedia FAQ .

Is Java low-bandwidth lowfriendly?  Con:  Startup time  Need to load class files as well as media files what media you  Pro:  Complete control over download at what time  Class files usually small .

Is there an authoring environment to help you write Java? A few packages allow you to create animations or ads and output class files  There are plenty of IDEs that require you to write code  Many IDEs use Java Beans to make programming more visual .

How does one with no programming knowledge oversee a Java based project? .

What are some simple uses of Java on a Web site?  Playing a sound  Displaying an animation  better to use GIF89  Interactive  better to form banner ad use JavaScript  Interactive .

What's a good price to pay for a Java programmer you aren't sleeping with?  $50-$150 / hr .

com/java/games/ .mplayer. if you keep the window small  MPlayer  http://www.Is Java good for developing games?  Sure.

Will Java be around 2 years from now?  Absolutely .

se .tdb.uu.se/~karl/brain.fragzone.Can you show me some kewl stuff done in Java?  http://www.mplayer.html  http://www.com/java/games/  http://fragisland.

Server-side Java Server- Copyright © 1997-8 Alex Chaffee .

Servlets  Cross-platform server-side scripting  Like CGI. only cooler Copyright © 1997-8 Alex Chaffee .

Java Web Server  Server written in Java  Runs servlets  Cheap Copyright © 1997-8 Alex Chaffee .

Java Application Server  Based on Java Web Server  High-performance  Enterprise Java Beans Copyright © 1997-8 Alex Chaffee .

multithreading to server  Deals with tough issues. etc. JavaSoft. keeping server-side business objects simple  Many EJB servers (IBM. persistence.) Copyright © 1997-8 Alex Chaffee . Weblogic.Enterprise Java Beans  Framework for enterprise servers  Adds transactions.

Java Components Copyright © 1997-8 Alex Chaffee .

Spaghetti Code Business logic mingled with systems code  Ported to legacy systems  Complex to develop  Expensive to maintain  Copyright © 1997-8 Alex Chaffee .

Java Beans software parts  Business applications as reusable components  Leverages legacy systems  Easy to build/extend  Easy to distribute Copyright © 1997-8 Alex Chaffee  Marketable .

What is a component?  Software ³part´  Self-contained. drag-and-drop  Interact and interoperate with other components  Assemble components to create an application  Ready for use by visual programming tools  Marketable Copyright (c) 1997 Alex Chaffee . independent  Plug-and-play.

Split Development  JavaBeans producers user-interface and  Create components for business-logic  JavaBeans  Use consumers JavaScript Applet Embedding for web pages  Use JavaStudio and other visual development tools Copyright © 1997-8 Alex Chaffee .

lotus.klg.com/beans/ Copyright © 1997-8 Alex Chaffee .com)  Rogue Wave  Dundas  Many more: see http://www.Commercial User-Interface UserJavaBeans  JScape (www.com)  KL Group (www.com)  Lotus Kona project (www.javasoft.jscape.

naming. etc.Enterprise Java Beans  Adds business services to Java  Transactions. locking.  Simplified development  don¶t need to worry about threading. transaction issues  IBM heavily involved Copyright © 1997-8 Alex Chaffee .

Java Myths Copyright © 1997-8 Alex Chaffee .

«  Long period of public comment and revision  Several "clean-room" implementations underway  Kaffe  Sun does not compete with application developers does it? (Java Application Server. Oracle. collaboration with other partners Symantec. Intel.Myth: Java is Proprietary  Truly open standards  Developed in  IBM. HotSpot)  Or  Java is an ISO Publically Available Standard Copyright © 1997-8 Alex Chaffee  approved 20 to 2 .

Karl Hornell is God (http://www.Myth: Java has poor performance  Video  Frag Games Island ± Quake Rendering Engine (http://fragisland.html)  Built-in Multi-threading improves performance Copyright © 1997-8 Alex Chaffee .se/)  Warp .fragzone.se/~karl/java/warp.uu.tdb.

Myth: Java has poor performance 
Interpreter

is fine for IO-bound apps (including UI)  Very fast with Just-in-time (JIT) compilers 
Now

available on most platforms 

HotSpot 
Object-oriented optimization  Generational Garbage Collection 
malloc/free

test: JVM 18 sec, MSJVM 8 sec, C++ 6 sec, HotSpot 2 sec. 

Many other

enhancements

Copyright © 1997-8 Alex Chaffee

Myth: Java has poor performance 
Compile

to native code where possible  Compile server-side applications directly to the platform on which they¶ll be used  SuperCede and Symantec Café/Visual Café support this  Note: lose some benefits of Java (notably dynamic linking)
Copyright © 1997-8 Alex Chaffee

Myth: Java is immature 
Compiler 
Almost

Bugs

none in real-world experience  Java Compatibility Test required by all JavaVM licensees

Copyright © 1997-8 Alex Chaffee

1 much improved  JFC takes Java UI to the next level Copyright © 1997-8 Alex Chaffee .Myth: Java is immature  Class Library Bugs  AWT in JDK 1.

run seamlessly across platforms  Activator  Most Copyright © 1997-8 Alex Chaffee .Myth: Java is immature  Java Virtual Machine problems are from implementations in browsers  They lag behind JDK releases  Affects ³cross-platform´ compatibility  100% Pure Java crusade.

run anywhere´  Need a good debugger (like Café) Copyright © 1997-8 Alex Chaffee . ³Write once.Myth: Write once. debug everywhere. run anywhere  Should be.

PCs  PC vs NC: reality both will co-exist and overlap in functionality  Network and server load issues: reality careful system administration and caching required  Don't need to throw everything away and start from scratch Copyright © 1997-8 Alex Chaffee .Java Myths: NCs vs.

Microsoft  Java works great under Microsoft OS  IIS has full Java integration for ASPs Copyright © 1997-8 Alex Chaffee .Myth: Java vs.

Java Libraries and APIs Copyright © 1997-8 Alex Chaffee .

Java API Strategy Copyright © 1997-8 Alex Chaffee .

Core Libraries (APIs)  UI  JFC  IO  Net  JDBC  RMI Copyright © 1997-8 Alex Chaffee .

Web Server or Distributed Applications JavaMedia .Extended APIs        Electronic Commerce Network Management Security JavaBeans .GUI Components Enterprise Java .Multimedia Copyright © 1997-8 Alex Chaffee .Enterprise Wide Backend Database Connectivity Server .

User Interface: AWT  Based on native widgets  Native look-and-feel  Simple components Copyright © 1997-8 Alex Chaffee .

Swing/JFC on AWT and IFC  Pluggable look and feel  Rich set of pre-defined components  Fully customizable  Simplify commercial GUI development  Open component market  Builds Copyright © 1997-8 Alex Chaffee .

Swing GUI Copyright © 1997-8 Alex Chaffee .

AFC / WFC  Microsoft's alternative  Write once. run on Windows  Out as of March 11. 1998 Copyright © 1997-8 Alex Chaffee .

Standard Extensions  Servlets  InfoBus  Java Help  JavaMail Copyright © 1997-8 Alex Chaffee .

Java and Business  JDBC (Java Naming and Directory Interface)  Java Transaction Services  Enterprise Java Beans  JNDI Copyright © 1997-8 Alex Chaffee .

Distributed Computing Copyright © 1997-8 Alex Chaffee .

FTP.80).com´. IMAP  Source code: Socket s = new Socket (³www. SMTP.internet.net  uses TCP/IP  works on all Java platforms  all open protocols of the Internet  HTTP. Copyright © 1997-8 Alex Chaffee .java.

Other Network Technologies  RMI  CORBA  JDBC .

Other Java Initiatives/Environments Copyright © 1997-8 Alex Chaffee .

JavaPC  Turn old PCs into NCs Copyright © 1997-8 Alex Chaffee .

screenphones. midrange mobile phones  Designed to fit in devices with 2 Mb or less  Tailored Copyright © 1997-8 Alex Chaffee .Personal Java for products such as mobile phones. set top boxes.

routers.5 Mb ROM  Doesn't require general purpose applet downloading capabilities  Includes the Java VM and core set of APIs Copyright © 1997-8 Alex Chaffee . switches  Designed to fit in devices < . high volume products  Tailored for products such as industrial controllers.Embedded Java  tailored for small memory. pagers.

Java Card
in Smart Cards  Java Ring 
Dallas Semiconductor  32K 

Use

program RAM, 6K data RAM  Serial port interface  Contains private key crypto  Runs off the ³1´ bits  Auto-zeroing RAM
Copyright © 1997-8 Alex Chaffee

Other Companies

Copyright © 1997-8 Alex Chaffee

Netscape 
First

Java licensee  Recently announced they're canceling their Java program  Java will still work in Netscape with Activator etc.  Also working (halfheartedly) on Javagator

Copyright © 1997-8 Alex Chaffee

Microsoft  COM  IIS  AFC integration / WFC  Visual J++ 6. run on Windows  Did someone say ³lawsuit?´ Copyright © 1997-8 Alex Chaffee .0 just released in beta  Write once.0  SDKJ 3.

a RAD IDE. an IDE. a JIT.Symantec with first out with dev tools. and a database-oriented product  Developing JFC core technologies  Developing JFC look-and-feels  Just-in-time compiler keeps getting better  Enhancing debugger support Copyright © 1997-8 Alex Chaffee  First .

nice RAD tool  San Francisco  Enterprise Java Beans  Licensing picoJava Copyright © 1997-8 Alex Chaffee .IBM  VisualAge for Java .

Developing Java Copyright © 1997-8 Alex Chaffee .

Developing Java:IDEs  Best ones are on PC  Symantec Café  Borland JBuilder  Microsoft Visual J++ Copyright © 1997-8 Alex Chaffee .

Developing Java: Java Studio Copyright © 1997-8 Alex Chaffee .

Conclusion Copyright © 1997-8 Alex Chaffee .

[APPLAUSE] Copyright © 1997-8 Alex Chaffee .

[DINNER] Copyright © 1997-8 Alex Chaffee .

Relevant Web Site Resources  Javasoft & Sun: www.com Copyright © 1997-8 Alex Chaffee .ibm.com & www.com  IBM: www.developer.com  Symantec: www.javasoft.com  Purple Tech: www.com  Developer.com/java  Borland: www.purpletech.sun.supercede.com  SuperCede: www.symantec.com: java.borland.

Gerry Seidman.Credits  Purple  Java Technology Training and Consulting Development Tools  Symantec Corp.  Java-only training. and consulting company Tucker. Ian McFarland Copyright © 1997-8 Alex Chaffee . Microsystems  JavaOne presentations: Lew James Gosling  Personal Thanks  Lew Tucker. Alan Baratz.  Java  Advanced Web  Sun Technologies mentoring.

Appendix: Networking Basics Copyright © 1997 Alex Chaffee .

Networking Basics vocabulary and concepts  WWW vocabulary and concept  TCP/IP Copyright © 1997 Alex Chaffee .

Telnet Application  Demo of time service (port 13)  Demo of login service (port 23)  Demo of HTTP service (port 80) Copyright © 1997 Alex Chaffee .

..  node  any device on the network  host a computer on the network for host  address  computer-readable name  host name for host Copyright © 1997 Alex Chaffee  human-readable name .A Network Is.

..A Network Does.  datagram  little (or ³packet´) bundle of information  sent from one node to another for communication  protocol  roles. rules  IP  the Internet Protocol Copyright © 1997 Alex Chaffee . vocabulary.

TCP/IP: The Internet Protocol Application Layer (HTTP. FTP. SMTP) Transport Layer (TCP. UDP) Internet Layer (IP) Physical Network Copyright © 1997 Alex Chaffee .

ordered  the ³Transport Layer´ datagrams (packets)  unreliable.TCP/UDP/IP  IP  raw packets  the ³Internet Layer´ stream  reliable. unordered  the ³Transport Layer´ Copyright © 1997 Alex Chaffee  TCP  data  UDP  user .

The Three µI¶s  internet  any IP-based network  Internet  the big. world-wide IP network  intranet a corporate LAN-based IP network across the Internet Copyright © 1997 Alex Chaffee  extranet  accessing corporate data . famous.

IP Addresses  IP Address: identifies a host  4 bytes = 2^32 = 4.294.967.296  DNS: converts host names / domain names into IP#s Copyright © 1997 Alex Chaffee .

000.000.000.366.282.000  No Y2K problem: InetAddress Class hides implementation Copyright © 1997 Alex Chaffee .IPv6  aka IP: the Next Generation  16-byte addresses  2^128 = 340.460.920.000.000.938. 000.

temporary  Socket: a two-way connection Copyright © 1997 Alex Chaffee .Sockets and Ports  Port: a meeting place on a host  one service per port  1-1023 = well-known services  1024+ = experimental services.

Sockets and Ports (Diagram) port 13 Client Socket Time Service Web Service port 80 Socket Server Copyright © 1997 Alex Chaffee .

WellWell-Known Ports  20.21: FTP  23: telnet  25: SMTP  43: whois  80: HTTP  119: NNTP  1099: RMI Copyright © 1997 Alex Chaffee .

The World Wide Web  Runs on the Internet  Uses HTTP protocol  Invented by Tim Berners-Lee (and a cast of thousands) Copyright © 1997 Alex Chaffee .

com/pub/java/course.javasoft.javasoft.stinky.zip Copyright © 1997 Alex Chaffee .html  http://www.com/sfaq/  ftp://ftp.com/sfaq/index.URL  protocol://host[:port][/path/][file][#anchor]  http://www.

0 OK 200 Header: value blank line data  telnet demo again Copyright © 1997 Alex Chaffee .0 Header: value blank line  Server: HTTP/1.HTTP  port 80 default  Client: GET path HTTP/1.

This is <B>bold</B> and this is <I>italics</I> Copyright © 1997 Alex Chaffee .g.HTML  Text file  ³Tags´ .markup commands embedded in text  e.

Sign up to vote on this title
UsefulNot useful