Notes for Class 9

advertisement
Internet / Intranet
Fall 2000
Class 9
Class 9 Agenda
Milestone#3 - Discussion
Presentations
Miscellaneous Topics
Cybersquatting
Plug-Ins, Multimedia
Development Environments
Brandeis University Internet/Intranet Spring 2000
2
Cybersquatting
Cybersquatting
Registering a Domain Name
Contains or Resembles Well-Know Commercial Names or Names of
Individuals
With Intent to:
Prevent Others From Using the Name
Profit by Selling Domain Name to Trademark Owner or
Individual
Trademark Law
Legal Action Only if Domain Name is Used
Anticybersquatting Consumer Protection Act
November 29, 1999
Civil Lawsuits May be Filed by Trademark Holder
Against anyone who Registers, Traffics In, or Uses
Domain Name Identical or Confusingly Similar to
Protected Trademark
Bad Faith Intent to Profit
“Confusingly Similar” to be Decided By Courts
Brandeis University Internet/Intranet Spring 2000
3
Cybersquatting (2)
Effects
Reduce the Number of Domain Names
Legitimate Holders May Face Litigation
Bad Faith Factors:
Harm Goodwill of Trademark Holder
Offer to Sell Domain Without Actually Using it in
Bona Fide Offering of Goods and Services (or past
pattern of such conduct)
Obtained Under False Pretenses
Acquisition of Multiple Domain Names With
Knowledge That They are Similar to Protected Marks
Brandeis University Internet/Intranet Spring 2000
4
Cybersquatting (2)
Effects
Reduce the Number of Domain Names
Legitimate Holders May Face Litigation
Bad Faith Factors:
Harm Goodwill of Trademark Holder
Offer to Sell Domain Without Actually Using it in
Bona Fide Offering of Goods and Services (or past
pattern of such conduct)
Obtained Under False Pretenses
Acquisition of Multiple Domain Names With
Knowledge That They are Similar to Protected Marks
Brandeis University Internet/Intranet Spring 2000
5
Cybersquatting (3)
Absence of Bad Faith:
Domain Holder Has Legal Rights to It
Domain Name Commonly Used by Its Holder
Past Use of Name in Conjunction with Bona Fide Goods or
Services
Noncommercial or Fair-Use Purposes
Name Not Distinctive and Famous When Registered
Reasonable Grounds to Believe it was Lawful
Penalties
Domain Name Cancelled or Forfeited to Rightful Owner
Damages Up to $100,000 per Domain Name
Jurisdiction
Court Where Domain Name Registrar is Located
Network Solutions Located in Virginia
Domain Name Registrars are Protected
Brandeis University Internet/Intranet Spring 2000
6
Cybersquatting(4)
ICANN Policies as a Result
Mandatory Arbitration
Most Registrars Expected to Adopt it
Some Ambiguities in the Law
Challenges Expected
Brandeis University Internet/Intranet Spring 2000
7
A Quick Word About Java
JavaScript is Interpreted By the Browser
Run Within Browser Environment
Limited by Browser’s Capabilities
Source Code is Part of HTML Page
Java is a Completely Separate Language
Browser Transfers a Java Program (“Applet”) to the
Local Machine and Runs It
Output of Java Can Be Displayed Within the Browser
Designed to Be Safe For Web Use
Otherwise Similar to Transfering .exe Programs
Compiled Into .class Files
Pseudo-code: Requires a Java Virtual Machine to Run
Source Code Hidden From Users
Does Not Have Access to Page Internals (DOM)
Brandeis University Internet/Intranet Spring 2000
8
Including a Java Applet in Your Page
<APPLET CODEBASE=“./japplets”
CODE=“myapplet.class” HEIGHT=100 WIDTH=200 >
<PARAM Name=Whirl Value=“True”>
<PARAM Name=Title Value=“WhirlyDemo”>
</APPLET>
Brandeis University Internet/Intranet Spring 2000
9
Plug-Ins
Platform Specific Extensions to Web Browsers
Client Side Equivalent to Server Extensions
Associated With a File Extension
Similar to MS-Windows Associations
If Installed, Files With Extension Will Invoke Program on Browser
Including a Plug-In in HTML
<EMBED SRC=“filename.ext” WIDTH=200 HEIGHT=200 PINAMEx
= VALUE PINAMEy = VALUE >
Height, Width Where Data is to Be Displayed in Browser Window
Name/Value Pairs are Arguments to the Plug-In
<NOMBED> </NOEMBED> Used to Provide Alternative
Plug-In Must Be From a Trusted Source
Like Any Other Program. Has Full Access to Local Computer
Plug-In Development
Netscape, Microsoft Provide SDK’s
Brandeis University Internet/Intranet Spring 2000
10
Active X
Microsoft Specific
“Plug-In” Technology That Allows Components to Run in Browser
Components are Accessible By Other Programs via OLE
Allows Developers to Develop Internal Controls That are Web Enabled
Key Advantage is Distribution
Active X Components Can Be Distributed via the Web
Automatically Downloaded As Part of Web Page (Unlike Plug-Ins)
Default Security Asks for Confirmation
Must Come From a Trusted Source
Typically Used For Intranet Type Applications
Or Large Commercial (“Trusted”) Organization
E.g. Microsoft
Certificates Verify Creator of Control
Third Party Verifies Sender is Who They Say They Are
OLE Documents Allow Including a Document in Another
Application
E.g. Microsoft Office Applications Can Run Within Browser
Embed Into Web Page Using <CONTROL> Tag
Many Arguments. Typically Use ActiveX Control Pad to Insert Info
Brandeis University Internet/Intranet Spring 2000
11
Multimedia
Sound
<BGSOUND SRC=“URL” LOOP=“Infinite”>
Internet Explorer Only
Can Appear Anywhere in <BODY>
Best to Place it Near End
Otherwise Graphics Won’t Load Until Sound is Loaded
Default: Loop = 1
Supports .wav, .au, .mid Formats
<EMBED src=“music.wav”>
Requires Sound Plug-In (e.g. Real Audio)
Video
<EMBED src=“movie.mpg”>
Requires Plug-In (or Download and Play Separately)
<IMG DYNSRC=“movie.mpg” START=“mouseover”
WIDTH=“150” HEIGHT=“100” LOOP=“-1”>
START – indicates when video should play
Brandeis University Internet/Intranet Spring 2000
12
Multimedia (2)
Environments
Shockwave / Flash
Development Environment Plus Plug-In Playback
Allows Development of Animations
User Interactivity
Audio Formats
.mid – Provides the Music “Score”
Algorithm Generates the Music
.wav – Microsoft Windows Sound File
.au, .aif – Sun, Apple Sound Files
.mp3 – Near CD-Quality Format. Great Compression.
Video Formats
.avi – Microsoft Windows Video File
.qt, .mov – Apple QuickTime Movie Format
.mpg, .mpeg – Current Internet Video Standard
.rm – Real Media. Proprietary Video Format
Brandeis University Internet/Intranet Spring 2000
13
Streaming Multimedia
Problem: Audio/Video Take a Long Time To
Download
Technologies Require File to Be Downloaded Before Playing
Client Pull: Poor Solution
Requires Breaking Up the A/V into Small Files
Choppy Results
Solution: Stream the Transmission : Play in Near Real
Time
Play the A/V as It’s Being Sent
Requires a Session to Be Efficient
HTTP is Stateless (No Sessions)
Plug-Ins Don’t Have to Use HTTP
Can Use TCP/IP Directly
Brandeis University Internet/Intranet Spring 2000
14
Streaming (2)
Streaming Issues
Broadcast vs. PlayBack
Coordination of Video/Sound is Non Trivial
Require Significant Compression (Scalable)
Lower Resolution as Bandwidth Degrades
Many Compression Algorithms Don’t Work in Real Time
Must Deal With Differing Bandwidths
Server Performance
Internet Issues
Packet Based
Can’t Rely on Consistent Bandwidth
Packets May Arrive in Different Order
Errors Require Retransmission
“Human Processing”
Video Can Become Choppy With Minor Inconvenience
Lost Packets Can Be Skipped
Choppy Audio is Unintelligible
Lost Packets Can Not Be Skipped
Brandeis University Internet/Intranet Spring 2000
15
Streaming Tricks
Continued Improvements Expected
Compression (Hardware and Software)
Buffering
Buffered Transmission Can Cover Glitches
Technology
UDP
Faster Than TCP
Doesn’t Resend Packets in Error
New Real Time Control Protocols
Developing New Internet Protocols
Use Multicasting
Packet Transmission
Humans Can Deal With 1ms Loss, So:
Break Audio Into 1 ms Chunks
Packets Too Small to Efficiently Send as 1ms
Send ms: 1, 4, 7, 10 in First Packet. 2, 5, 8, 11 in Second, etc.
If One Packet Is Lost
Lose 1ms Every 4, Instead of a Contiguous 4 ms Chunk
Brandeis University Internet/Intranet Spring 2000
16
Streaming Multimedia Plug-Ins
Server Push (Data)
Server Updates HTML Page as Needed
Sports Scores, etc.
Audio
Almost There
Phone Quality Audio: 64kbps, 5 kbps Compressed
CD Quality Audio: 700kbps, 64kbps Compressed
RealAudio
Broadcast – AM Radio Quality
mp3 – Downloads of CD Quality Audio
Video
Bandwidth Still an Issue
320x240x256 = 2.5 MB
Video Refreshes at 30 times per Second
75 Mbps Required for Video
Still Pretty Crude
Compression Improving All the Time
Current: About 100x
Brandeis University Internet/Intranet Spring 2000
17
Other Common Plug-Ins
Adobe Acrobat
PDF Files – Portable Document Format
Portable Distribution of “Printed” Documents
Allows Links, Some Text Search Capabilities
Viewable/Printable on Multiple Platforms
Author Can Restrict Access (e.g. Restrict Printing)
Proprietary Format
Viewers are Freeware
Brandeis University Internet/Intranet Spring 2000
18
VRML
Virtual Reality Modeling Language
3-D “Equivalent” of HTML
Standalone Browsers or Plug-Ins
Netscape, IE Make Plug-Ins Available
.wrl Extension. MIME type: x-world/x-vrml
Web 3D Consortium
http://www.web3d.org
Brandeis University Internet/Intranet Spring 2000
19
Development Environments
Target Customer
Novice – (Hide HTML From User)
Experienced Developer – Make Process More Efficient
HTML Editors
Tag Editors
Graphical WYSIWYG Editors
Validation
Site Management
Macros/Pre-Processor’s/”Compilers”
Shorthand For More Complex Tags
Typically Use Custom Tags
GUI Development Environment
Conversion Tools
Convert Pages Designed in Other Environment Into HTML
E.g. Microsoft Office
Brandeis University Internet/Intranet Spring 2000
20
Common Development Environments
Microsoft Frontpage
Novice Target
Hides Internals From User
Netscape Navigator Gold
Adobe PageMill
Dreamweaver
Macromedia Flash
Brandeis University Internet/Intranet Spring 2000
21
Cookies Revisited
Cookies Are Name Value Pairs
Passed in the HTTP Header
Cookies Have Associated Expiration
Session (Default)
Date / Time
Associated With a URL Path, Not a Page!
Allows Passing Parameters Between Web Pages
Thus Cookies are Used to Provide State
Information to a Stateless Protocol
Brandeis University Internet/Intranet Spring 2000
22
Cookie Jar
Cookie Storage
Internet Explorer
c:\windows\cookies
Each Has its Own File
Netscape Navigator
cookies.txt (all kept in the file)
Limits
20 Cookies
4K Per Name/Value Pair
Brandeis University Internet/Intranet Spring 2000
23
More Cookies
Cookies are Traditionally Set By Server
Set-Cookie
Browser is Responsible For Maintaining Them
Stored On Client’s Computer
Passed to Server When Web Site is Revisited
HTTP-Cookie
Cookie Attributes
Name – The Name of the Cookie
Subsequent References to Same Name Overwrites Cookie
Attributes
Value – The Value of the Cookie Identified by Name
Expiration – When the Cookie Expires
No Date Specified – Cookie Expires at End of Session
Past Date/Time – Delete the Cookie
Future Date/Time – Delete the Cookie After This Date
Example
Brandeis University Internet/Intranet Spring 2000
24
Cookie Bits
Example Cookie
Set-Cookie: tollhouse=favorite;expires=Thursday,
16-Mar-2000 00:00:00 GMT;path=“”
Note That Date Must Follow This Format:
Weekday, DD-MMM-YYYY HH:MM:SS GMT
RFCs specify GMT as the mechanism for handling
time problems on the Internet
HTTP-Cookie Only Sends Name/Value Pair
Brandeis University Internet/Intranet Spring 2000
25
Cookies - JavaScript
Cookies Can be Set in JavaScript
document.cookie = “ “
Use Date.toGMTString() to set expiration date
E.g.
document.cookie = “version=1.0; ” + “expires=“ + edate.toGMTString();
To Read a Cookie Value in JavaScript
var allcookies= document.cookie;
var pos = allcookies.indexOf(“version=“);
if (pos != -1) {
var start = pos +8;
var end = allcookies.indexOf(“;”,start);
if (end == -1) end = allcookies.length;
var value = allcookies.substring(start,end);
vervalue = unescape(value);
}
Brandeis University Internet/Intranet Spring 2000
26
Cookie Structure
Path Information
Default is to Send Cookie to Any URL in the Same Directory or
any Subdirectory of the Page Which Set Cookie
Path Attribute Can Request That Cookie Be Sent to All URLs in
Path (and its Subdirectories)
Only Paths That are a Prefix of Current URL are Allowed
If Cookies Overlap, All are Sent.
Ordered by Most Specific to Least Specific Match
Domain Attribute – Allows Cookies to Be Shared Across Sites
Must Be Part of Same Domain
E.g. boston.brandeis.edu and lab.brandeis.edu are part of the
same domain but may be different servers
Secure – Only Sends Cookie If Secure Protocol is Used (e.g.
SSL)
Brandeis University Internet/Intranet Spring 2000
27
Security Issues
Protections:
Cookie Can Only Store Information Already Known to Server
Can’t Access Hard Disk, etc.
Data Only – Not Executed by Client Machine
Data Can’t Be Shared Across Sites
Concerns:
Of Course This Assumes That Browser Follows the Rules
Browser Can Store Sensitive Information
E.g. If Server Doesn’t Set Secure Tag, a Credit Card # May Be
Passed in Clear to Another Page in Same Path
“Invisible” to Users
Paths Are Not Always Obvious
E.g. Multiple Sites Receive Graphics From DoubleClick Server
DoubleClick Can Now Gather “Cross-Site” Information
Zealous privacy folks advocate turning off cookies
Brandeis University Internet/Intranet Spring 2000
28
Download