1
|
- Week 3
- LBSC 690
- Information Technology
|
2
|
- Questions
- Finishing networks
- Building the Web
- Building a better Web
|
3
|
|
4
|
- Link layer moves bits
- Ethernet, cable modem, DSL
- Network layer moves packets
- Transport layer provides services to applications
- Application layer uses those services
|
5
|
- The Internet’s basic transport service
- Sends every packet immediately
- Passes received packets to the application
- No delivery guarantee
- Collisions can result in packet loss
- Example: sending clicks on web browser
|
6
|
- Built on the network-layer version of UDP
- Guarantees delivery all data
- Guarantees data will be delivered in order
- “Buffers” subsequent packets if necessary
- No guarantee of delivery time
- Long delays may occur without warning
|
7
|
- Used to move files between machines
- Upload (put) moves from client to server
- Download (get) moves files from server to client
- Available using command line and GUI interfaces
- Normally requires an account on the server
- Userid “anonymous” provides public access
- Web browsers incorporate anonymous FTP
- Automatically converts end-of-line conventions
- Unless you select “binary”
|
8
|
- Start a cmd window
- Type “ftp ftp.umiacs.umd.edu”
- Login in anonymously with
- User: anonymous
- Password: your email address
- Go download a file
- Type “cd pub/gina/lbsc690/”
- Type “binary”
- Type “get hwOne.ppt”
- Exit
- Try it again with a graphical FTP program
|
9
|
- Secret-key systems (e.g., DES)
- Use the same key to encrypt and decrypt
- Public-key systems (e.g., PGP)
- Public key: open, for encryption
- Private key: secret, for decryption
- Digital signatures
- Encrypt with private key, decrypt with public key
|
10
|
- Secure Shell (SSH)
- Secure FTP (SFTP)/Secure Copy (SCP)
- Secure HTTP (HTTPS)
- Used for financial and other private data
- Wired Equivalent Protocol (WEP)
- Used on wireless networks
|
11
|
- Flooding
- Excessive activity, intended to prevent valid activity
- Worms
- Like a virus, but self-propagating
- Sniffing
- Monitoring network traffic (e.g., for passwords)
|
12
|
- Key length
- 128 bits balances speed and protection today
- Trust infrastructure
- How do you prevent “bait and switch”?
- Who certifies a digital signature is valid?
|
13
|
|
14
|
- HTML
- How to write and interpret the information
- URL
- HTTP
|
15
|
- Send request
- GET /path/file.html HTTP/1.0
- From: someuser@jmarshall.com
- User-Agent: HTTPTool/1.0
- Server response
- HTTP/1.0 200 OK
- Date: Fri, 31 Dec 1999 23:59:59 GMT
- Content-Type: text/html
- Content-Length: 1354
- <html><body> <h1>Happy New Millennium!</h1>
… </body> </html>
|
16
|
- Uniquely identify web pages on the WWW
- Domain name
- Directory path
- File name
|
17
|
- Simple document structure language for Web
- Advantages
- Adapts easily to different display capabilities
- Widely available display software (browsers)
- Disadvantages
- Does not directly control layout
|
18
|
- Use Internet Explorer to find a page you like
- http://www.glue.umd.edu/~oard
- On the “View” menu select “Source”
- Opens a notepad window with the source
- Compare HTML source with the Web page
- Observe how each effe=
ct is
achieved
|
19
|
- Modify the HTML source using notepad
- For example, change the page to yours
- Save the HTML source on your “M:” drive
- In the “File” menu, select “Save As”
- Select “All Files” and name it “test.html”<=
/li>
- FTP it to your ~/pub directory on WAM
- sftp wam.umd.edu
- cd ../pub/
- put test.html
- View it
- http://www.wam.umd.edu/~(yourlogin)/test.html
|
20
|
- “Tags” mark structure
- <html>a document</html>
- <ol>an ordered list</ol>
- <i>something in italics</i>
- Tag name in angle brackets <>
- Open/Close pairs
- Close tag may be optional (if unambiguous)
|
21
|
- Head
- Body
- Headers: <h1> <h2> <h3> <h4> <h5>
- Lists: <ol>, <ul> (can be nested)
- Paragraphs:<p>
- Definitions: <dt><dd>
- Tables: <table> <tr> <td> </td> </tr>
</table>
- Role: <cite>, <address>, <strong>, …
|
22
|
- Different devices have different capabilities
- Rendering maps logical tags to physical layout
- Controls line wrap, size, font…
- Place the title in the page border
- Render <h1> as 24pt Times
- Render <strong> as bold
- Somewhat browser-dependent
- Internet Explorer and Netscape make different choices
|
23
|
- Font
- Typeface: <font face=3D“Arial”></font>
- Size: <font size=3D“+1”></font>
- Color: <font color=3D“990000”></font>
- http://webmonkey.wired.com/webmonkey/reference/color_codes/Emphasi=
s
- Bold: <b></b>
- Italics: <i></i>
|
24
|
- Links make the Web a web!
- Internal anchors: somewhere on the same page
- <a href=3D“#students”> Students</a>
- Links to: <a name=3D“students”>Student
Information</a>
- External anchors: to another page
- <a href=3D“http://www.clis.umd.edu”>CLIS</a>=
;
- <a href=3D“http://www.clis.umd.edu#students”>CLIS
students</a>
|
25
|
- <img src=3D“URL”> or <img src=3D“path/fil=
e”>
- <img src=3D“http://www.clis.umd.edu/IMAGES/head.gif”=
>
- SRC: can be url or path/file
- ALT: a text string
- ALIGN: position of the image
- WIDTH and HEIGHT: size of the image
- Can use as anchor:
- <a href=3DURL>&=
lt;img
src=3DURL2></a>
- Example:
- http://www.umiacs.umd.edu/~daqingd/Image-Alignment.html
|
26
|
- <table align=3D“center”>
- <caption align=3D“right”>The caption</caption&g=
t;
- < tr align=3D“LEFT”>
- <th> Header1 </th>
- <th> Header2</th>
- </tr>
- <tr><td>first row, first item </td>
-  =
;
<td>first row, second item</td></tr>
- < tr><td>second row, first item</td>
-  =
;
<td>second row, second item</td></tr>
- </table>
- Example: http://www.umiacs.umd.edu/~daqingd/Simple-Table.html
|
27
|
- Divide browser pages into separate sections
- Useful when you want to scroll separately
- Each section can display an HTML page
- Example 1: menu frame on the left side of a page
- <frameset cols=3D“10%,90%" >
- <frame src=3D“template.html">
- <frame src=3D“images.html">
- </frameset>
- Example 2:
- http://www.hq.nasa.gov/alsj/frame.html
|
28
|
- Key design issues:
- Content: What do you want to publish?
- Style: How do you want to present it?
- Syntax: How can you achieve that presentation?
- Sources of information
- Online tutorials (Yahoo points to lots of these)
- Technical materials (e.g., the HTML 4.0 spec)
|
29
|
- Design for generic browsers
- And test on every version you wish to support
- Provide appropriate “access points”
- User needs and navigation strategies differ
- Design useful navigational aids
- A Web search may lead to the middle of a site
- Include some indication of currency
- Date of last update, “new” icons, etc.
- Indicate who is responsible for the content
- Helps readers assess authority
|
30
|
- Design for device independence
- Maintain backward compatibility
- Provide alternative pages if necessary
- Provide alternatives for aural and visual content
- Alt tags for images, transcripts for audio
- Make is easy for assistive devices to work
- Combine structural markup and style sheets
- Give a title to each frame
- Use HTML tables only for tabular data
- Use markup to indicate language switching
|
31
|
- Goal is to create Web pages, not learn HTML!
- Several are available
- Macromedia Dreamweaver available commercially
- In Netscape, “File” – “Edit Page” for
Composer
- Tend to use physical layout tags extensively
- Detailed control can make hand-editing difficult
- You may still need to edit the HTML file
- Some editors use browser-specific features
- Some HTML features may be missing entirely
- File names may be butchered by FTP
|
32
|
- Syntax checking: cross-browser compatibility
- Style checking: improved accessibility
- http://bobby.watchfire.com
|
33
|
- HTML
- Confounds structure and appearance (XML)
- HTTP
- Can’t recognize related transactions (Cookies)
- URL
- Links breaks when you move a file (PURL)
|
34
|
- Content
- Structure
- Appearance
- Behavior
|
35
|
- Early standards were “typesetting languages”
- HTML was developed for the Web
- Too specialized for other uses
- Specialized standards met other needs
- Change tracking in Word, annotating manuscripts, …
- XML seeks to unify these threads
- One standard format for printing, viewing, processing
|
36
|
- Metalanguage
- A toolkit for design markup languages
- Unambiguous markup
- Separate markup from presentation
- Style info =3D> stylesheet, so easy to change
- Be simple
|
37
|
- Definition: DTD
- Names known types of entities with “labels”
- Defines part-whole and is-a relationships
- Markup: XML
- “Tags” regions of text with labels
- Markup: XLink
- Defines “hypertext” (and other) link relationships
- Presentation: XSL
- Specifies how each type of entity should be “rendered”<=
/li>
|
38
|
- View “The Song of the Wandering Aengus”
- http://www.umiacs.umd.edu/~oard/teaching/690/fall05/notes/3/xml.htm=
- Built from three files
- yeats01.xml
- poem01.dtd
- poem01.xsl
|
39
|
|
40
|
|
41
|
|
42
|
|
43
|
- Text Encoding Initiative
- For adding annotation to historical manuscripts
- http://www.tei-c.org/
- Encoded Archival Description
- To enhance automated processing of finding aids
- http://www.loc.gov/ead/
- Metadata Encoding and Transmission Standard
- Bundles descriptive and administrative metadata
- http://www.loc.gov/standards/mets/
|
44
|
- HTML
- Confounds structure and appearance (XML)
- HTTP
- Can’t recognize related transactions (Cookies)
- URL
- Links breaks when you move a file (PURL)
|
45
|
- Servers know users by IP address and port
- Because that’s where they send the Web pages
- Cookies preserve “state”
- Server sends data to the browser
- Browser later responds with the same data
- A unique code (server-side state)
- Information about the user (client-side state)
|
46
|
|
47
|
- Learning to build simple Web pages is easy
- Which is good news for the homework!
- All documents are structured documents
- XML is a flexible markup language toolkits
- The key is to understand its capabilities
- XML editors can hide much of the complexity
|
48
|
- On a sheet of paper (no names), answer the following question:
- What was the muddiest point in today’s class?
|