internet concepts all
Upcoming SlideShare
Loading in...5
×
 

internet concepts all

on

  • 3,359 views

thank for visting

thank for visting

Statistics

Views

Total Views
3,359
Views on SlideShare
3,194
Embed Views
165

Actions

Likes
1
Downloads
23
Comments
0

1 Embed 165

http://www.techgig.com 165

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Also, the caching resolver can insert data into the cache, and can "query" the cache and the database server.

internet concepts all internet concepts all Presentation Transcript

  • Introduction to Computers and the Internet Outline Introduction History of the Internet Personal Computing History of the World Wide Web Hardware Trends Key Software Trend: Object Technology JavaScript: Object-Based Scripting for the Web C and C++ Java
  • History of the Internet
    • ARPANET
      • Implemented in late 1960’s by ARPA (Advanced Research Projects Agency of DOD)
      • Networked computer systems of a dozen universities and institutions with 56KB communications lines
      • Grandparent of today’s Internet
      • Intended to allow computers to be shared
  • History of the Internet
    • ARPA’s goals
      • Allow multiple users to send and receive info at same time
      • Network operated packet switching technique
        • Digital data sent in small packages called packets
        • Packets contained data, address info, error-control info and sequencing info
        • Greatly reduced transmission costs of dedicated communications lines
      • Network designed to be operated without centralized control
        • If portion of network fails, remaining portions still able to route packets
  • History of the Internet
    • T ransmission C ontrol P rotocol (TCP)
      • Name of protocols for communicating over ARPAnet
      • Ensured that messages were properly routed and that they arrived intact
    • Organizations implemented own networks
      • Used both for intra-organization and communication
  • History of the Internet
    • Huge variety of networking hardware and software appeared
      • ARPA achieved inter-communication between all platforms with development of the IP
        • Internetworking Protocol
        • Current architecture of Internet
      • Combined set of protocols called TCP/IP
    • The Internet
      • Limited to universities and research institutions
      • Military became big user
      • Next, government decided to access Internet for commercial purposes
  • History of the Internet
    • Internet traffic grew
      • Businesses spent heavily to improve Internet
        • Better service their clients
      • Fierce competition among communications carriers and hardware and software suppliers
      • Result
        • Bandwidth (info carrying capacity) of Internet increased tremendously
        • Costs plummeted
  • Personal Computing
    • Computers today
      • As powerful as million dollar machines from 20 years ago
      • Workstations
        • Most powerful desktops today
        • Provide users with enormous capabilities
      • Information easily shared over networks
        • Networks controlled by servers
          • Common programs and data used by client computers
      • Popular operating systems
        • UNIX, Mac OS X, Windows, Windows NT, Linux
  • History of the World Wide Web
    • WWW
      • Allows computer users to locate and view multimedia-based documents
      • Introduced in 1990 by Tim Berners-Lee
    • Internet today
      • Mixes computing and communications technologies
      • Makes information constantly and instantly available to anyone with a connection
  • The Key Software Trend: Object Technology
    • Objects
      • Reusable software components that model items in the real world
      • Makes software developers more productive
      • Object-oriented programs often easier to understand, correct and modify than older types of programs
  • The Key Software Trend: Object Technology
    • Object technology
      • C++, developed in 1980s, based on two languages
        • C – Developed to implement the UNIX OS in early 1970’s
        • Simula 67 – Simulation programming language from 1967
  • JavaScript: Object-Based Scripting for the Web
    • JavaScript
      • Attractive package for advancing level of programming language education
      • Object-based language
      • Supports proper software engineering techniques
  • C and C++
    • History of C and C++
      • Evolved from B language (developed by Dennis Ritchie)
      • C Implemented in 1972 as contemporary of Pascal
        • C++ developed by Bjarne Stroustrup in 1980s
        • C++ Initially used in Unix, today used in virtually all new operating systems
    • Advantages of C++
      • Extends C programming into object orientation
      • Older C code may be integrated into C++
  • Java
    • History of Java
      • Project Green (1991): developed C based language (later called Java) for intelligent consumer electronic devices
        • Advanced by World Wide Web explosion in 1993: potential to create Web pages with dynamic content
        • Java introduced in May of 1995
    • Advantages of Java
      • Allows Web pages with dynamic and interactive content
      • Allows Large-scale enterprise applications
      • Enhances Web Servers
      • Now one of most widely implemented languages in world
  • Microsoft .NET
    • .NET initiative
      • June 2000
      • Use multiple programming languages in same project
      • Internet and Web development
        • ASP.NET allows complex Web-based client-server applications
        • Brings software reuse to Web
  • Dynamic HTML
    • DHTML
      • Two versions
        • Microsoft
        • Netscape
      • Consists of number of technologies freely available for download
      • Used for developing high-performance, Web-based applications
        • Much of application’s work performed directly on client rather than on server or Internet
  • Microsoft Internet Explorer 6 Outline Introduction to the Internet Explorer 6 Web Browser Connecting to the Internet Internet Explorer 6 Features Searching the Internet Online Help and Tutorials Keeping Track of Favorite Sites File Transfer Protocol (FTP) Electronic Mail Instant Messaging Other Web Browsers
  • Objectives
    • In this tutorial, you will learn:
      • To become familiar with the Microsoft Internet Explorer 6 (IE6) Web browser’s capabilities.
      • To be able to use IE6 to search the “world of information” available on the World Wide Web.
      • To be able to use the Internet as an information tool.
      • To become familiar with e-mail.
      • To learn about instant messaging.
      • To become aware of the differences between various browsers.
  • Introduction
    • Internet
      • Medium for communication and interaction
      • Web Browsers
        • Software that allows users to view Web content
          • Microsoft Internet Explorer
          • Netscape Navigator
          • Others
  • Connecting to the Internet
    • Computer hardware
      • Computer hardware
        • Modem
          • Transmits data over phone lines
        • Network card (NIC)
    • Internet Service Provider (ISP)
      • Commercial
        • AOL ( www.aol.com )
        • Microsoft Network ( join.msn.com )
        • NetZero ( www.netzero.com )
  • Connecting to the Internet
    • Internet Service Provider (ISP), cont.
      • Considerations
        • Cost
        • Bandwidth
          • Amount of data transferred through communications medium in a fixed amount of time
      • Broadband
        • Constantly connected
        • 100’s of kbps (kilo-bits per second)
        • DSL (Digital Subscriber Line)
          • Uses existing phone lines
          • Requires DSL modem
  • Connecting to the Internet
    • Internet Service Provider (ISP), cont.
      • Broadband, cont.
        • Cable Modem
          • Use cable television lines
          • Requires cable modem
        • ISDN (Integrated Services Digital Network)
          • Uses digital or standard telephone lines
          • Requires a terminal adaptor
      • Dial-up connection
        • Uses existing phone lines
        • Interferes with phone use
        • Must dial-up with modem.
        • Usually 56 kbps (kilo-bits per second)
  • Connecting to the Internet
    • Internet Connection Wizard
      • Use this application to configure computer’s Internet connection.
      • Start > Programs > Accessories > Communications > Internet Connection Wizard
        • Tutorial available on Windows 2000
  • Connecting to the Internet Fig. 2.1 Internet Connection Wizard helps configure Internet access. Tutorial button Specify what type of connection to use by clicking one of the option buttons
  • Internet Explorer 6 Features
    • Web browser
      • Program which displays Internet content
        • Microsoft Internet Explorer 6
        • Netscape 7.1
      • URL (Uniform/Universal Resource Locator)
        • Web page address
          • HTTP (hyper-text transfer protocol)
            • Protocol for transferring data over the Internet
        • Type in Address field
      • Hyperlinks
        • Graphical or textual elements
          • Click to link to another Web page
          • Loads new page into browser window
  • Internet Explorer 6 Features
    • Web browser, cont.
      • History
        • Lists recently visited Web sites
        • Forward / Back buttons
        • Refresh button
        • History button
          • Divides window and lists recently-visited sites on left
  • Internet Explorer 6 Features Fig. 2.2 Deitel Website. Back Recent history Forward Stop Refresh Address bar Go Pointer (over a hyperlink) Scroll bars
  • Internet Explorer 6 Features Fig. 2.3 The History menu lists previously visited Web sites. Interactive History window History date options Site from folder Web site folder Click and drag here to resize Content window
  • Internet Explorer 6 Features
    • Web browser, cont.
      • Autocomplete
        • Completes Web address as it is being typed
        • Completes form information as it is being typed
      • File options
        • Save Web page for off-line use
          • File > Save As
        • Save pictures from a Web site
          • Right click image
            • Choose Save Picture As…
  • Internet Explorer 6 Features Fig. 2.4 AutoComplete suggests possible URLs when given a partial address. Partial address URLs
  • Internet Explorer 6 Features Fig. 2.5 Saving a picture from a Web site.
  • Searching the Internet
    • Search engines
      • Web sites that sort through by keywords and categories
        • Google ( www.google.com )
        • Yahoo! ( www.yahoo.com )
        • Lycos ( www.lycos.com )
        • Altavista ( www.altavista.com )
      • Store information in databases
      • Returns list of sites as hyperlinks
    • Meta-search engines
      • Do not maintain databases
      • Aggregate results from multiple search engines
      • Microsoft Network ( www.msn.com )
        • Click Search button in toolbar
      • MetaCrawler ( www.metacrawler.com )
  • Online Help and Tutorials Fig. 2.6 Searching the Internet with IE6. New search Search window Search categories Search words Search button Toolbar
  • Online Help and Tutorials
    • IE 6 built-in help feature
      • Help > Tour
        • Overview of IE 6
      • Help > Contents and Index
        • Search for help on specific topic
  • Online Help and Tutorials Fig. 2.7 IE6 Help dialog. Help menu Categories
  • Keeping Track of Favorite Sites
    • Favorites
      • List organizes frequently-visited sites
      • Add sites to list
        • Favorites > Add to Favorites…
      • Organize list
        • Favorites > Organize Favorites…
  • Keeping Track of Favorite Sites Fig. 2.8 Favorites menu helps organize frequently visited Web sites. Add/Organize Favorites Favorites Favorites window Site information Organize Favorites dialog
  • File Transfer Protocol (FTP)
    • Downloading
      • Transfer files from remote servers over the Internet to a local computer
        • Usually applications, browser plug-ins or files
        • Plug-ins
          • Applications which work with Web browsers to add functionality
            • Shockwave ( www.shockwave.com )
            • Adobe Acrobat ( www.adobe.com )
      • Use FTP (File Transfer Protocol)
        • ftp://
        • FTP site
          • May require login and password
          • Right click file in FTP directory and copy to hard drive
  • File Transfer Protocol (FTP) Fig. 2.9 FTP site access in IE6. FTP address Folders in the FTP directory File Login window
  • Electronic Mail
    • E-mail (electronic mail)
      • Delivers formatted messages over Internet
      • E-mail address
        • [email_address]
      • Email Programs
        • Eudora
        • Pegasus
        • Outlook Express
      • Free email accounts
        • Hotmail ( www.hotmail.com )
        • Yahoo! ( mail.yahoo.com )
  • Electronic Mail
    • E-mail (electronic mail), cont.
      • Post Office Protocol (POP)
        • Remote server
        • Download to local client
        • E-mail scattered
      • Internet Message Access Protocol (IMAP)
        • Manipulate messages directly on server
        • Access all your e-mail from any machine
      • Simple Mail Transfer Protocol (SMTP)
        • Used to send e-mail
  • Instant Messaging Fig. 2.11 Outlook Express e-mail main screen.. Message list Address book Preview pane Mailboxes Message toolbar items
  • Instant Messaging
    • Instant Messaging
      • Communicate (“chat”) in real time
      • Send audio, video and files
      • Several popular services
        • AOL Instant Messenger ( www.aim.com )
        • Yahoo! Messenger ( messenger.yahoo.com )
        • ICQ ( web.icq.com )
        • MSN Messenger ( messenger.msn.com )
      • Trillian ( www.trillian.cc )
        • Able to communicate with all of the above
  • Instant Messaging
    • Instant Messaging
      • Communicate (“chat”) in real time
      • Send audio, video and files
      • Several popular services
        • AOL Instant Messenger ( www.aim.com )
        • Yahoo! Messenger ( messenger.yahoo.com )
        • ICQ ( web.icq.com )
        • MSN Messenger ( messenger.msn.com )
      • Trillian ( www.trillian.cc )
        • Able to communicate with all of the above
  • Instant Messaging
    • Instant Messaging, cont.
      • Some instant messaging tools designed for collaboration
        • NetMeeting
        • Windows Messenger
        • Include whiteboard feature to share drawings
      • Screen name
        • Unique identifier
      • Buddy List
        • Maintains list of screen names
  • Instant Messaging Fig. 2.12 Buddy list and an instant message. Buddy list Instant message
  • Other Browsers
    • Alternatives to Internet Explorer and Netscape
      • Offer new/different features and layout engines
        • Mozilla ( www.mozilla.org )
          • Uses Gecko layout engine, basis for Netscape 7.1
        • Opera ( www.opera.com )
          • Lightweight
        • Amaya ( www.w3.org/Amaya )
          • Browser/editor
          • Demonstrates W3C standards
      • Each layout engine displays websites differently
        • Testing on multiple browsers important
  • Other Browsers Fig. 2.13 Mozilla web browser.
  • SMTP and FTP
  • 26.1 Electronic Mail Sending/Receiving Mail Addresses User Agent MIME Mail Transfer Agent Mail Access Protocols
  • Figure 26.2 Email address
  • Figure 26.3 User agent
  • Figure 26.4 MIME
  • Figure 26.5 MIME header
  • Table 26.1 Data types and subtypes in MIME General binary data (8-bit bytes) Octet-Stream Adobe PostScript PostScript Application Single-channel encoding of voice at 8 KHz Basic Audio Video is in MPEG format MPEG Video Video is in GIF format GIF Image is in JPEG JPEG Image Body is a reference to another message Ext. Body Partial RFC822 Alternative Digest Parallel Mixed Plain Subtype Body is a fragment of a bigger message Body is an encapsulated message Message Parts are different versions of the same message Similar to mixed, but the default is message/RFC822 Same as above, but no order Body contains ordered parts of different data types Multiport Unformatted text Text Description Type
  • Table 26.2 Content-transfer encoding Non-ASCII characters are encoded as an equal sign followed by an ASCII code 6-bit blocks of data are encoded into 8-bit ASCII characters Non-ASCII characters with unlimited-length lines Non-ASCII characters and short lines ASCII characters and short lines Description Base64 Binary 8bit 7bit Type Category
  • Figure 26. 6 Base64
  • Table 26.3 Base64 encoding table 2 1 0 z y x w v u t s Code 63 62 61 60 59 58 57 56 55 Value / + 9 8 7 6 5 4 3 Code 43 42 41 40 39 38 37 36 35 34 33 Value r q p o n m l k j i h Code 54 53 52 51 50 49 48 47 46 45 44 Value V U T S R Q P O N M L Code 32 31 30 29 28 27 26 25 24 23 22 Value g f e d c b a Z Y X W Code 21 20 19 18 17 16 15 14 13 12 11 Value K J I H G F E D C B A Code 9 10 6 7 8 3 4 5 2 1 0 Value
  • Figure 26.7 Quoted-printable
  • Figure 26.8 MTA client and server
  • Figure 26.9 Commands and responses
  • Figure 26.10 Email delivery
  • Figure 26.11 POP3
  • 26.2 File Transfer Connections Communication File Transfer User Interface Anonymous
  • Figure 26.12 FTP
  • Figure 26.13 Using the control connection
  • Figure 26.14 Using the data connection
  • Figure 26.15 File transfer
  • Example 1
    • Figure 26.16 (next slide) shows an example of how a file is stored.
    • The control connection is created, and several control commands and responses are exchanged.
    • Data are transferred record by record.
    • A few commands and responses are exchanged to close the connection.
  • Figure 26.16 Example 1
  • Table 26.4 List of FTP commands in UNIX !, $, account, append, ascii, bell, binary, bye, case, cd, cdup, close, cr, delete, debug, dir, discount, form, get, glob, hash, help, lcd, ls, macdef, mdelete, mdir, mget, mkdir, mls, mode, mput, nmap, ntrans, open, prompt, proxy, sendport, put, pwd, quit, quote, recv, remotehelp, rename, reset, rmdir, runique, send, status, struct, sunique, tenex, trace, type, user, verbose,? Commands
  • Example 2 We show some of the user interface commands that accomplish the same task as in Example 1. The user input is shown in boldface. As shown below, some of the commands are provided automatically by the interface. The user receives a prompt and provides only the arguments. $ ftp challenger.atc.fhda.edu Connected to challenger.atc.fhda.edu 220 Server ready Name: forouzan Password: xxxxxxx ftp > ls /usr/user/report 200 OK 150 Opening ASCII mode ........... ........... 226 transfer complete ftp > close 221 Goodbye ftp > quit
  • Example 3 We show an example of using anonymous FTP. We connect to internic.net, where we assume there are some public data available. $ ftp internic.net Connected to internic.net 220 Server ready Name: anonymous 331 Guest login OK, send "guest" as password Password: guest ftp > pwd 257 '/' is current directory ftp > ls 200 OK 150 Opening ASCII mode bin ... ftp > close 221 Goodbye ftp > quit
    • Domain Name System (DNS)
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  • TCP/IP Transmission Control Protocol / Internet Protocol
  • TCP Transmission Control Protocol
    • TCP is an alternative transport layer protocol over IP.
    • TCP provides:
      • Connection-oriented
      • Reliable
      • Full-duplex
      • Byte-Stream
  • Connection-Oriented
    • Connection oriented means that a virtual connection is established before any user data is transferred.
    • If the connection cannot be established - the user program is notified.
    • If the connection is ever interrupted - the user program(s) is notified.
  • Reliable
    • Reliable means that every transmission of data is acknowledged by the receiver.
    • If the sender does not receive acknowledgement within a specified amount of time, the sender retransmits the data.
  • Byte Stream
    • Stream means that the connection is treated as a stream of bytes.
    • The user application does not need to package data in individual datagrams (as with UDP).
  • Full Duplex
    • TCP provides transfer in both directions.
  • TCP Ports
    • Interprocess communication via TCP is achieved with the use of ports (just like UDP).
    • UDP ports have no relation to TCP ports (different name spaces).
  • TCP Segments
    • The chunk of data that TCP asks IP to deliver is called a TCP segment .
    • Each segment contains:
      • data bytes from the byte stream
      • control information that identifies the data bytes
  • TCP Segment Format Destination Port Options (if any) Data 1 byte 1 byte Source Port Sequence Number Acknowledgment Number 1 byte 1 byte offset Reser. Control Window Checksum Urgent Pointer
  • TCP Lingo
    • When a client requests a connection it sends a “SYN” segment (a special TCP segment) to the server port.
    • SYN stands for synchronize. The SYN message includes the client’s ISN.
    • ISN is Initial Sequence Number.
  • More...
    • Every TCP segment includes a Sequence Number that refers to the first byte of data included in the segment.
    • Every TCP segment includes an Acknowledgement Number that indicates the byte number of the next data that is expected to be received.
      • All bytes up through this number have already been received.
  • And more...
    • There are a bunch of control flags:
      • URG: urgent data included.
      • ACK: this segment is (among other things) an acknowledgement.
      • RST: error – connection must be reset.
      • SYN: synchronize Sequence Numbers (setup)
      • FIN: polite connection termination.
  • TCP Connection Creation
    • A server accepts a connection.
      • Must be looking for new connections!
    • A client requests a connection.
      • Must know where the server is!
  • Client Starts
    • A client starts by sending a SYN segment with the following information:
      • Client’s ISN (generated pseudo-randomly)
      • Maximum Receive Window for client.
  • Server Response
    • When a waiting server sees a new connection request, the server sends back a SYN segment with:
      • Server’s ISN (generated pseudo-randomly)
      • Request Number is Client ISN+1
  • Finally
    • When the Server’s SYN is received, the client sends back an ACK with:
      • Acknowledgment Number is Server’s ISN+1
  • SYN ISN= X Client Server SYN ISN= Y ACK= X +1 ACK= Y +1 1 2 3
  • Why 3-Way?
    • Why is the third message necessary?
    • HINTS:
      • TCP is a reliable service.
      • IP delivers each TCP segment.
      • IP is not reliable.
  • TCP Data and ACK
    • Once the connection is established, data can be sent.
    • Each data segment includes a sequence number identifying the first byte in the segment.
    • Each segment (data or empty) includes a request number indicating what data has been received.
  • TCP Buffers
    • Both the client and server allocate buffers to hold incoming and outgoing data
      • The TCP layer does this.
    • Both the client and server announce with every ACK how much buffer space remains (the Window field in a TCP segment).
  • Send Buffers
    • The application gives the TCP layer some data to send.
    • The data is put in a send buffer, where it stays until the data is ACK’d.
    • The TCP layer won’t accept data from the application unless (or until) there is buffer space.
  • ACKs
    • A receiver doesn’t have to ACK every segment (it can ACK many segments with a single ACK segment).
    • If a sender doesn’t get an ACK after some time limit, it resends the data.
  • Termination
    • The TCP layer can send a RST segment that terminates a connection if something is wrong.
    • Usually the application tells TCP to terminate the connection politely with a FIN segment.
  • FIN
    • Either end of the connection can initiate termination.
    • A FIN is sent, which means the application is done sending data.
    • The FIN is ACK’d.
    • The other end must now send a FIN.
    • That FIN must be ACK’d.
  • FIN SN= X App1 App2 ACK= X +1 ACK= Y +1 1 2 4 FIN SN= Y 3 ...
  • TCP TIME_WAIT
    • Once a TCP connection has been terminated (the last ACK sent) there is some unfinished business:
      • What if the ACK is lost? The last FIN will be resent and it must be ACK’d.
  • TCP Sockets Programming
    • Creating a passive mode (server) socket.
    • Establishing an application-level connection .
    • Sending/receiving data.
    • Terminating a connection.
  • Establishing a passive mode TCP socket
    • Passive mode:
      • Address already determined.
      • Tell the kernel to accept incoming connection requests directed at the socket address.
        • 3-way handshake
      • Tell the kernel to queue incoming connections for us.
  • Accepting an incoming connection.
    • Once we start listening on a socket, the O.S. will queue incoming connections
      • Handles the 3-way handshake
      • Queues up multiple connections.
    • When our application is ready to handle a new connection, we need to ask the O.S. for the next connection.
  • Terminating a TCP connection
    • Either end of the connection can call the close() system call.
    • If the other end has closed the connection, and there is no buffered data, reading from a TCP socket returns 0 to indicate EOF.
  • Client Code
    • TCP clients can connect to a server, which:
      • takes care of establishing an endpoint address for the client socket.
      • Attempts to establish a connection to the specified server.
        • 3-way handshake
  • Reading from a TCP socket
    • By default read() will block until data is available.
    • Reading from a TCP socket may return less than max bytes (whatever is available).
    • You must be prepared to read data 1 byte at a time!
  • Writing to a TCP socket
    • write might not be able to write all bytes (on a nonblocking socket).
  • Java Sockets Programming
    • The package java.net provides support for sockets programming
    • Typically you import everything defined in this package with:
    • import java.net.*;
  • Classes
    • InetAddress
    • Socket
    • ServerSocket
    • DatagramSocket
    • DatagramPacket
    UDP
  • Socket class
    • Corresponds to active TCP sockets only!
      • client sockets
      • socket returned by accept();
    • Passive sockets are supported by a different class: ServerSocket
  • Socket Constructors
    • Constructor creates a TCP connection to a named TCP server.
      • There are a number of constructors:
      • Socket(InetAddress server, int port);
      • Socket(InetAddress server, int port,
      • InetAddress local, int localport);
      • Socket(String hostname, int port);
  • Socket Methods
    • void close();
    • InetAddress getInetAddress(); getpeername
    • InetAddress getLocalAddress(); getsockname
    • InputStream getInputStream();
    • OutputStream getOutputStream();
    • Lots more (setting/getting socket options, partial close, etc.)
  • Socket I/O
    • Socket I/O is based on the Java I/O support (in the package java.io ).
    • InputStream and OutputStream are abstract classes
      • common operations defined for all kinds of InputStreams, OutputStreams…
  • ServerSocket Class (TCP Passive Socket)
    • Constructors:
    • ServerSocket(int port);
    • ServerSocket(int port, int backlog);
    • ServerSocket(int port, int backlog,
    • InetAddress bindAddr);
  • ServerSocket Methods
    • Socket accept();
    • void close();
    • InetAddress getInetAddress();
    • int getLocalPort();
    • throw IOException, SecurityException
  • NEWSGROUPS
  • Newsgroups
    • Newsgroups-electronic discussion groups where user reads and post message “posted” by a user can be read by several people
    • Usenet-network of news groups
    • Messages posted on one newsgroup are distributed through Usenet network
    • Different topics covered by newsgroups
          • Recreational
          • Technical
          • Social area
          • Etc.
    • To access newsgroups you need
      • access to a news server
      • a news reader (client)
      • You must “subscribe” to the group
    • News server must be maintained by a news administrator
      • Decides which groups will be delivered to a site
    Newsgroups
  • Top Level for Names in News
    • Groups
    • rec – Arts, hobbies, etc.
    • news – Usenet news
    • comp – Computer topics
    • soc – Social issues
    • sci – Scientific topics
    • misc – Topics don’t fit into any other category
    • alt – Alternative groups – often specific to the site
  • Format for Posted Articles
    • Two parts: header and body
    • Header (some common fields)
    • Path: list of news servers involved in the transit of the article
    • From: Address of person that posted the message
    • Newsgroups: List of groups to which article was posted
    • Subject or Summary
    • Organization: Company or school associated with the person who posted the article
  • UUCP – Unix to Unix copy
    • Allows remote execution of commands and transfer of files, email and net news between computers
    • Most commanly used for dial up connections
    • Equipped with modem – so that they can communicate remotly.
    • Each uucp network has the list of neighbor systems with phone number, login names and passwords.
  • Internet Explorer and the World Wide Web
  • Terminology
    • HTTP – HyperText Transfer Protocol is used to transmit Web documents
    • HTTPS – Secure protocol for confidential transactions
    • HTML – The language in which all Web documents are displayed
    • TCP/IP – A suite of protocols that allows multiple platforms to communicate
    • URL – Uniform Resource Locator
    • Web Server – Computers that store hypertext and/or hypermedia documents and make them available to other computers
    • Web Client – Personal computers that access files held by web servers
    • Web Browser – Software application to locate and display web pages
  • Hyperlinks
    • The essence of the Web as you click on a link to more to the next document, which may be stored on a different computer
    • Hyperlinks may contain text, graphics, sound, or video links
      • Blue underlined fonts are unexplored
      • Magenta links have been previously accessed
    www.microsoft.com www.microsoft.com
  • The Web is always changing Address bar (address is constant, but the content changes) Hyperlinks Print button
  • Uniform Resource Locator (URL) http://www.annex.com/southwest/museum.htm Means of access, HyperText Transfer Protocol Internet Address (Web site) Document Path (Directory or Folder)
  • Domain Names
    • Original Six:
      • .edu (education)
      • .com (commercial)
      • .gov (government)
      • .mil (military)
      • .net (network administration)
      • .org (non-profit)
    • New domains:
      • .biz (business)
      • .pro (licensed professional)
      • .info (information services)
      • .uk (United Kingdom)
      • .ca (Canada)
      • .au (Australia)
  • Examples of URLs
    • My school: www.miami.edu
    • Exploring Windows: www.prenhall.com/grauer
    • My favorite site: www.refdesk.com
    • Anti-virus updates: www.symantec.com
    • Download software: www.tucows.com
  • A message travels the Internet
      • All that matters is the beginning and ending address
  • Searching the Web
    • Search Engines
    • Web Directories
    • Meta Search Engines
    • Clearinghouse
  • Search Engines
    • A program that systematically searches the Web for documents on a specific topic
    • Uses a key word or words as a query
    • Several search engines are available
    • Each search engine has its own database
    • No search engine is best
    • Uses Boolean (logical) operators
    • Returns “hits” or documents once search has been submitted
  • Popular Web Search Engines http://www.search.com/ http://www.yahoo.com http://www.google.com/ http://www.webcrawler.com/ http://www.askjeeves.com/ http://www.lycos.com http://www.excite.com/ http://www.go.com/ http://www.msn.com/ http://www.altavista.com/
  • Web Site and Saving an Image Choose Save Picture As command Right click picture for context-sensitive menu
  • Security and Privacy
    • Secure transactions
      • https protocol
      • Encryption
    • Privacy
      • Cookie is a small file written to your disk each time you visit a site
      • Problem is when one site can read many cookies, e.g., DoubleClick.com
  • Returning to a Previous Site History folder Favorites folder
  • Organize Favorites Move a favorite Create a new folder Delete a favorite Rename a favorite
  • The TELNET Protocol
  • TELNET vs. telnet
    • TELNET is a protocol that provides “a general, bi-directional, eight-bit byte oriented communications facility”.
    • telnet is a program that supports the TELNET protocol over TCP.
    • Many application protocols are built upon the TELNET protocol.
  • The TELNET Protocol
    • TCP connection
    • data and control over the same connection.
    • Network Virtual Terminal
    • negotiated options
  • Network Virtual Terminal
    • intermediate representation of a generic terminal.
    • provides a standard language for communication of terminal control functions.
  • Network Virtual Terminal NVT NVT Server Process TCP TCP
  • Negotiated Options
    • All NVTs support a minimal set of capabilities.
    • Some terminals have more capabilities than the minimal set.
    • The 2 endpoints negotiate a set of mutually acceptable options (character set, echo mode, etc).
  • Negotiated Options
    • The protocol for requesting optional features is well defined and includes rules for eliminating possible negotiation “loops”.
    • The set of options is not part of the TELNET protocol, so that new terminal features can be incorporated without changing the TELNET protocol.
  • Option examples
    • Line mode vs. character mode
    • echo modes
    • character set (EBCDIC vs. ASCII)
  • Control Functions
    • TELNET includes support for a series of control functions commonly supported by servers.
    • This provides a uniform mechanism for communication of (the supported) control functions.
  • Control Functions
    • Interrupt Process (IP)
      • suspend/abort process.
    • Abort Output (AO)
      • process can complete, but send no more output to user’s terminal.
    • Are You There (AYT)
      • check to see if system is still running.
  • More Control Functions
    • Erase Character (EC)
      • delete last character sent
      • typically used to edit keyboard input.
    • Erase Line (EL)
      • delete all input in current line.
  • Command Structure
    • All TELNET commands and data flow through the same TCP connection.
    • Commands start with a special character called the Interpret as Command escape character (IAC).
    • The IAC code is 255.
    • If a 255 is sent as data - it must be followed by another 255.
  • Looking for Commands
    • Each receiver must look at each byte that arrives and look for IAC.
    • If IAC is found and the next byte is IAC - a single byte is presented to the application/terminal (a 255).
    • If IAC is followed by any other code - the TELNET layer interprets this as a command.
  • Command Codes
    • IP 243
    • AO 244
    • AYT 245
    • EC 246
    • EL 247
    • WILL 251
    • WON’T 252
    • DO 253
    • DON’T 254
    • IAC 255
  • Playing with TELNET
    • You can use the telnet program to play with the TELNET protocol.
    • telnet is a generic TCP client.
      • Sends whatever you type to the TCP socket.
      • Prints whatever comes back through the TCP socket.
      • Useful for testing TCP servers (ASCII based protocols).
  • Some TCP Servers you can play with
    • Many Unix systems have these servers running (by default):
      • echo port 7
      • discard port 9
      • daytime port 13
      • chargen port 19
  • telnet hostname port
    • > telnet rcs.rpi.edu 7
    • Trying 128.113.113.33...
    • Connected to cortez.sss.rpi.edu (128.113.113.33).
    • Escape character is '^]'.
    • Hi dave
    • Hi dave
    • stop it
    • stop it
    • ^]
    • telnet> quit
    • Connection closed.
  • telnet vs. TCP
    • Not all TCP servers talk TELNET (most don't)
    • You can use the telnet program to play with these servers, but the fancy commands won't do anything.
      • type ^], then "help" for a list of fancy TELNET stuff you can do in telnet .
  • Introduction to HTML
  • Agenda
    • Introduction to HTML
    • Creating and Publishing Web pages
    • Main HTML elements
    • Block-Level HTML elements
    • Text-Level HTML elements
    • Creating Hyperlinks
    • Adding Images
    • Creating Tables, Forms and Frames
  • Hypertext Markup Language
    • Language used to design web pages
    • Text mixed with Markup tags
    • Markup tags describe
      • Appearance
      • Layout
      • Content
  • HTML Document Template
    • <!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 EN&quot;>
    • <html>
    • <head>
    • <title>Title</title>
    • </head>
    • <body>
    • <!-- all the HTML for display -->
    • : :
    • : :
    • : :
    • </body>
    • </html>
  • Main HTML Elements
    • DOCTYPE
    • HTML
    • HEAD
    • Elements that can be included inside HEAD tag:
        • TITLE
        • BASE
        • META
        • SCRIPT,NOSCRIPT
        • STYLE
        • LINK
  • Main HTML Elements (Continued)
    • BODY
    • Attributes:
    • BACKGROUND
    • BGCOLOR
    • TEXT
    • LINK,ALINK,VLINK
    • Elements inside BODY tag
    • <body>
    • HTML tags
    • </body>
  • Block-Level Elements
    • Headings
      • H1…H6
      • ALIGN
    • Basic Text Sections
      • P
      • ALGN
      • PRE
      • ADDRESS
      • BLOCKQUOTE
      • WIDTH
      • ADDRESS
    • Lists
      • OL
      • LI
      • UL
      • DL
      • DT
      • DD
    • Tables , Forms & Frames
    • Misc.
      • HR
      • BR
      • CENTER
  • P: The Basic Paragraph
    • Attributes
      • ALIGN
        • LEFT (Default), RIGHT,CENTER
        • White Space is ignored
        • Consecutive <P>s don’t yield multiple lines
        • End tag is optional
        • <body>
        • <p>
        • Paragraph 1
        • </p>
        • <p>
        • Paragraph 2
        • </p>
        • </body>
  • LISTS
    • Ordered Lists (OL) <OL>
      • <LI>
      • <LI>
      • :
      • </OL>
      • Attributes : TYPE, START, COMPACT
      • List Entries (LI)
      • End Tag optional
      • Attributes: VALUE, TYPE
  • LISTS (Continued)
    • Unordered Lists (Bulleted Lists) <UL><LI><LI>….</UL>
      • Attributes: TYPE, COMPACT TYPE can be DISC, CIRCLE, SQUARE
      • Ordered & Unordered lists can be nested.
  • Text-Level Elements
    • Physical Character Styles
      • B, I, TT, U, SUB, SUP, BIG, SMALL, STRIKE, S, BLINK
      • FONT
        • SIZE
        • COLOR
        • FACE
      • BASEFONT
      • SIZE
    • Logical Character Styles
      • EM, STRONG, CODE, SAMP, KBD, DFN, VAR, CITE
  • Text – Level Elements (Continued)
    • Hypertext links
      • A
        • Attributes: HREF, TARGET, NAME,….
    • Images
      • IMG
        • Attributes: SRC (required), ALT, ALIGN, WIDTH, HEIGHT, VSPACE, HSPACE, BORDER, USEMAP, ISMAP
    • Misc.
      • BR (Explicit line break)
      • AREA (Client side image maps)
      • APPLET (Java)
      • HR ( Horizontal Line)
  • Hypertext Links
    • Links can contain images and other text level elements
      • <A HREF=…..>………</A>
    • Link to absolute URL
      • Use a complete URL starting with http://
    • Link to relative URL
      • Use a filename or relative path to filename
        • Interpreted with respect to current file
  • Hypertext Links (Continued)
    • Link to a section
      • Use a section name preceded by #
      • <A HREF=“#Section2”>Section 2</A>
    • Link to a section in a URL
      • Use absolute or relative URL, then #, then section name
    • Naming a section
      • Use <A NAME=“…..”>and do not include # sign
      • <A NAME=“Section2”>Images</A>
  • IMG – Embedding Images
    • Example
      • <IMG SRC=“SomeFile.gif” ALT=“My Page” WIDTH=400 HEIGHT=300>
    • Attributes
      • SRC (Required)
      • ALT (Technically Required)
      • ALIGN
      • WIDTH, HEIGHT
      • HSPACE, VSPACE
      • BORDER
      • USEMAP, ISMAP
  • Tables
    • Template
    • <TABLE BORDER=1>
    • <CAPTION>Table Caption</CAPTION>
    • <TR><TH>Heading 1</TH><TH>Heading 2</TH></TR>
    • <TR><TD>Row 1 Col 1 </TD><TD>Row 1 Col 2</TD></TR>
    • <TR><TD>Row 2 Col 1 </TD><TD>Row 2 Col 2</TD></TR>
    • </TABLE>
    • TABLE Element Attributes
      • ALIGN : Horizontal alignment of the table .Values can be LEFT (default), RIGHT, CENTER.
      • BORDER : Specifies the width in pixels around the table .Default 0
      • CELLSPACING : Gives the space in pixels between adjacent cells. Default 3
      • CELLPADDING : Determines the empty space between the cell’s border and table element. Default is 1.
      • WIDTH : Specifies the width of the table in pixel or as percentage of the browser window.
      • BGCOLOR : Specifies the background color of the table
  • Tables (Continued)
    • Table CAPTION
    • Attribute : ALIGN (Values: TOP, BOTTOM)
    • Table Row (TR)
      • Used to define each row in the table
      • Each row will contain <TH> & <TD>
      • Attributes:
        • ALIGN, VALIGN, BGCOLOR
  • Tables (Continued)
    • Table Cells TH & TD
    • Attributes :
      • COLSPAN defines a heading or a cell data that spans more than one column.
      • ROWSPAN defines a heading or a cell data that spans more than one row.
      • ALIGN
      • VALIGN
      • WIDTH, HEIGHT
  • Frames
    • Frame Template
    • <html>
    • <head><title>DocumentTitle</title></head>
    • <frameset …>
    • <!– Frame and nested Frameset entries here -->
    • <noframes>
    • <body>
    • <!-- For non frame browsers -->
    • </body>
    • </noframes>
    • </frameset>
    • <html>
  • Frames (Continued)
    • Attributes
      • COLS, ROWS
        • A comma separated list of pixel values, percentages and weighted remainders.
        • Frameset entries should always specify atleast two rows or columns.
        • Examples
        • <frameset rows=“50,10%,*,2*”>…</frameset>
        • <frameset cols=“25,*,*”>….</frameset>
  • Frames (Continued)
    • Frame Attributes (Continued)
      • FRAMEBORDER
        • Indicates whether borders will be drawn between frame cells.
        • Yes or 1 specifies border & No or 0 specifies no border.
      • BORDER (Netscape), FRAMESPACING (IE)
        • Specifies the border between frame cells.
      • BORDERCOLOR
        • Sets the color of the border between cells.
  • Frames (Continued)
    • Specifying contents of frame cells.
      • SRC
        • URL of the document to place in the frame cell.
      • NAME
        • Supplies destination for TARGET attribute for hypertext links.
      • BORDERCOLOR, FRAMEBORDER
      • MARGINWIDTH, MARGINHEIGHT
        • Sets left/right & top/bottom cell margins.
      • SCROLLING
        • Indicates whether cells should have margins.
      • NORESIZE
        • Disables the ability to resize the frame cells.
  • Targeting Frame Cells
    • Specify the cell in which place a page referenced by a hyperlink.
    • The NAME attribute of the <FRAME>
      • <FRAME SRC=“” NAME=“Cell name”>
    • The TARGET attribute of the <A HREF>
      • <A HREF=“ “ TARGET=“Cell name”>
  • Forms
    • Adds interactivity to the html pages.
    • Template
      • <form action=“url” method=“get/post”>
      • … form elements
      • </form>
    • Attributes
      • ACTION
        • Specifies the location of a script or program that will process the data sent by the browser via the selections in the form.
      • METHOD
        • define one of two ways the data from the form is sent to the program that will process the data.
  • Forms (Continued)
    • Basic Form Elements
      • Text fields
      • Password fields
      • Textarea fields
      • Radio buttons
      • Checkboxes
      • Menu selections
      • Buttons
  • Forms (Continued)
    • Text input elements
      • Creates a textbox.
      • Type attribute of input set to “text”.
      • Attributes: name, size, value, maxlength
    • Password input elements
      • Creates a textbox to enter password.
      • Type attribute of input set to “password”.
      • Attributes: name, size, value, maxlength
  • Forms (Continued)
    • Check Boxes
      • Adds check boxes to the web page.
      • Type attribute of input set to “checkbox”.
      • Attributes: name, value, checked.
      • More than one can be selected.
      • Each has different value for name attribute.
    • Radio Buttons
      • Adds radio buttons to the web page.
      • Type attribute of input set to “radio”.
      • Attributes: name, value, checked.
      • Only one button can be selected.
      • Same name for all radio buttons in the group.
  • Forms (Continued)
    • Menu Selection
      • Provides drop-down menus.
      • Here type=“select”
      • <OPTION>..</OPTION> tag defines the text displayed in the menu.
      • Attributes for OPTION: selected
    • Submit & Reset Buttons
      • For submit, type=“submit”
      • For reset, type=“reset”
      • Both have attribute : value
  • Summary
    • HTML document should be enclosed in the HTML,HEAD & BODY tags.
    • Documents are composed of block-level and text-level elements.
    • Hypertext links can be absolute or relative.
    • Tables are built using TABLE, TR, TH & TD tags.
    • Frames are created by FRAMESET & FRAME tags with attributes like ROWS, COLS, SRC..
    • Forms contain elements like textboxes, radio buttons, checkboxes, drop-down menu & buttons for submit and reset.
  • Dynamic HTML: Object Model and Collections Outline Introduction Object Referencing Collections all and children Dynamic Styles Dynamic Positioning Using the frames Collection navigator Object Summary of the DHTML Object Model
  • Objectives
    • In this lesson, you will learn:
      • To use the Dynamic HTML Object Model and scripting to create dynamic Web pages.
      • To understand the Dynamic HTML object hierarchy.
      • To use the all and children collections to enumerate all of the XHTML elements of a Web page.
      • To use dynamic styles and dynamic positioning.
      • To use the frames collection to access objects in a separate frame on your Web page.
      • To use the navigator object to determine which browser is being used to access your page.
  • Introduction
    • Dynamic HTML Object Model
      • Allows Web authors to control the presentation of their pages
      • Gives them access to all the elements on their pages
    • Web page
      • Elements, forms, frames, tables
      • Represented in an object hierarchy
    • Scripting
      • Retrieve and modify properties and attributes
  •   Object Referencing
    • The simplest way to reference an element is by using the element’s id attribute.
    • The element is represented as an object
      • XHTML attributes become properties that can be manipulated by scripting
  • Outline reference.html (1 of 2)
  • Outline reference.html (2 of 2)
  •    Collections all and children
    • Collections
      • Arrays of related objects on a page
      • all
        • all the XHTML elements in a document
      • children
        • Specific element contains that element’s child elements
  • Outline all.html (1 of 2)
  • Outline all.html (2 of 2)
  • Outline children.html (1 of 3)
  • Outline children.html (2 of 3)
  • Outline children.html (3 of 3)
  •  
  •    Dynamic Styles
    • Element’s style can be changed dynamically
    • Dynamic HTML Object Model also allows you to change the class attribute
  • Outline dynamicstyle.html (1 of 2)
  • Outline dynamicstyle.html (2 of 2)
  • Outline dynamicstyle2.html (1 of 2)
  • Outline dynamicstyle2.html (2 of 2)
  •  
  •    Dynamic Positioning
    • XHTML elements can be positioned with scripting
      • Declare an element’s CSS position property to be either absolute or relative
      • Move the element by manipulating any of the top , left , right or bottom CSS properties
  • Outline dynamicposition .html (1 of 3)
  • Outline dynamicposition .html (2 of 3)
  • Outline dynamicposition .html (3 of 3)
  •  
  •   Using the frames Collection
    • Referencing elements and objects in different frames by using the frames collection
  • Outline index.html (1 of 1)
  • Outline top.html (1 of 2)
  • Outline top.html (2 of 2)
  •  
  •    navigator Object
    • Netscape, Mozilla, Microsoft’s Internet Explorer
      • Others as well
    • Contains information about the Web browser
    • Allows Web authors to determine what browser the user is using
  • Outline navigator.html (1 of 2)
  • Outline navigator.html (2 of 2)
  •    Summary of the DHTML Object Model Fig. 13.10 DHTML Object Model. applets all anchors embeds forms filters images links plugins styleSheets scripts frames plugins collection body screen document history navigator location event document document object window Key
  •    Summary of the DHTML Object Model
  •   Summary of the DHTML Object Model
  •    Summary of the DHTML Object Model
  • Cascading Style Sheets™ (CSS) Outline Introduction Inline Styles Embedded Style Sheets Conflicting Styles Linking External Style Sheets W3C CSS Validation Service Positioning Elements Backgrounds Element Dimensions Text Flow and the Box Model User Style Sheets Web Resources
  • Objectives
    • In this lesson, you will learn:
      • To control the appearance of a Web site by creating style sheets.
      • To use a style sheet to give all the pages of a Web site the same look and feel.
      • To use the class attribute to apply styles.
      • To specify the precise font, size, color and other properties of displayed text.
      • To specify element backgrounds and colors.
      • To understand the box model and how to control the margins, borders and padding.
      • To use style sheets to separate presentation from content.
  •    Introduction
    • Cascading Style Sheets (CSS)
      • Separation of structure from presentation
  •    Inline Styles
    • Declare an individual element’s format
      • Attribute style
      • CSS property
        • Followed by a colon and a value
  • inline.html (1 of 2)
  • inline.html (2 of 2)
  •    Embedded Style Sheets
    • Embed an entire CSS document in an XHTML document’s head section
      • Multipurpose Internet Mail Extensions (MIME) type
        • Describes a file’s content
      • Property background-color
        • Specifies the background color
      • Property font-family
        • Specifies the name of the font to use
      • Property font-size
        • Specifies a 14-point font
  • declared.html (1 of 3)
  • declared.html (2 of 3)
  • declared.html (3 of 3)
  •   Conflicting Styles
    • Inheritance
      • Descendant’s properties have greater specificity than ancestor’s properties
  • advance.html (1 of 3)
  • advance.html (2 of 3)
  • advance.html (3 of 3)
  •    Linking External Style Sheets
    • External style sheets
      • Can provide uniform look and feel to entire site
  • styles.css (1 of 1)
  • external.html (1 of 2)
  • external.html (2 of 2)
  •    W3C CSS Validation Service
    • Validates external CSS documents
    • Ensures that style sheets are syntactically correct
  •   W3C CSS Validation Service Fig. 6.6 Validating a CSS document. (Courtesy of World Wide Web Consortium (W3C).)
  •    W3C CSS Validation Service Fig. 6.7 CSS validation results. (Courtesy of World Wide Web Consortium (W3C).)
  •    Positioning Elements
    • Absolute positioning
      • z-index attribute
        • Layer overlapping elements properly
    • Relative positioning
      • Elements are positioned relative to other elements
  • positioning.html (1 of 1)
  •  
  • positioning2.html (1 of 2)
  • positioning2.html 2 of 2
  •  
  •   Backgrounds
    • background-image
      • Specifies the image URL
    • background-position
      • Places the image on the page
    • background-repeat
      • Controls the tiling of the background image
    • background-attachment
      • fixed
      • scroll
    • font-weight
      • Specify the “boldness” of text
  • background.html (1 of 2)
  • background.html (2 of 2)
  •  
  •   Element Dimensions
    • CSS rules can specify the actual dimensions of each page element
  • width.html (1 of 2)
  • width.html (2 of 2)
  •    Text Flow and the Box Model
    • Floating
      • Move an element to one side of the screen
    • Box model
      • Margins
        • margin-top, margin-right, margin-left, margin-bottom
      • Padding
        • padding-top, padding-right, padding-left, and padding-bottom
      • Border
        • border-width
          • thin, medium, thick
        • border-color
          • Sets the color
        • border-style
          • none, hidden, dotted, dashed, solid, double, groove, ridge, inset and outset
  • floating.html (1 of 3)
  • floating.html (2 of 3)
  • floating.html (3 of 3)
  •   Text Flow and the Box Model Fig. 6.13 Box model for block-level elements.
  • borders.html (1 of 2)
  • borders.html (2 of 2)
  •  
  • borders2.html (1 of 2)
  • borders2.html (2 of 2)
  •    User Style Sheets
    • Format pages based on preferences
  • User_absolute.html (1 of 2)
  • User_absolute.html (2 of 2)
  • userstyles.css 1 of 1
  •    User Style Sheets Fig. 6.18 User style sheet in Internet Explorer 6.
  •    User Style Sheets Fig. 6.19 User style sheet applied with pt measurement.
  • User_relative.html (1 of 2)
  • User_relative.html (2 of 2)
  •    User Style Sheets Fig. 6.21 User style sheet applied with em measurement.
  • Introduction to XHTML Outline Introduction Editing XHTML First XHTML Example W3C XHTML Validation Service Headers Linking Images Special Characters and More Line Breaks Unordered Lists Nested and Ordered Lists Web Resources
  • Objectives
    • In this chapter, you will learn:
      • To understand important components of XHTML documents.
      • To use XHTML to create Web pages.
      • To be able to add images to Web pages.
      • To understand how to create and use hyperlinks to navigate Web pages.
      • To be able to mark up lists of information.
  •    Introduction
    • Extensible HyperText Markup Language
      • XHTML
      • A markup language
      • Separation of the presentation of a document from the structure of the document’s information
      • Based on HTML
        • Technology of the World Wide Web Consortium (W3C)
  •    Editing XHTML
    • XHTML documents
      • Source-code form
      • Text editor (e.g. Notepad, Wordpad, emacs, etc.)
      • .html or .htm file-name extension
      • Web server
        • Stores XHTML documents
      • Web browser
        • Requests XHTML documents
  •    First XHTML Example
    • XHTML comments
      • Start with <!-- and end with -->
      • html element
        • head element
          • Head section
            • Title of the document
            • Style sheets and scripts
        • body element
          • Body section
            • Page’s content the browser displays
      • Start tag
        • attributes (provide additional information about an element)
          • name and value (separated by an equal sign)
      • End tag
  • main.html (1 of 1)
  •    W3C XHTML Validation Service
    • Validation service ( validator.w3.org )
      • Checking a document’s syntax
        • URL that specifies the location of the file
        • Uploading a file to the site validator.w3.org/file-upload.html
  •    W3C XHTML Validation Service
  •   W3C XHTML Validation Service
  •    Headers
    • Six headers ( header elements)
      • h1 through h6
  • header.html (1 of 1)
  •  
  •    Linking
    • Hyperlink
      • References other sources such as XHTML documents and images
      • Both text and images can act as hyperlinks
      • Created using the a (anchor) element
        • Attribute href
          • Specifies the location of a linked resource
        • Link to e-mail addresses using mailto: URL
    • <strong> tag
      • Bold
  • links.html (1 of 2)
  • links.html (2 of 2)
  • contact.html (1 of 1)
  •  
  •    Images
    • Three most popular formats
      • Graphics Interchange Format (GIF)
      • Joint Photographic Experts Group (JPEG)
      • Portable Network Graphics (PNG)
      • img element
        • src attribute
          • Specifies the location of the image file
        • width and height
    • Pixels (“picture elements”)
    • Empty elements
      • Terminated by character / inside the closing right angle bracket ( > ), or by explicitly including the end tag
    • br element
      • Line break
  • picture.html (1 of 1)
  •  
  • nav.html (1 of 2)
  • nav.html (2 of 2)
  •  
  •    Special Characters and More Line Breaks
    • Character entity references (in the form &code; )
    • Numeric character references (e.g. &#38; )
    • del
      • Strike-out text
    • sup
      • Superscript text
    • sub
      • Subscript text
    • <hr />
      • Horizontal rule (horizontal line)
  • contact2.html (1 of 2)
  • contact2.html (2 of 2)
  •  
  •   Unordered Lists
    • Unordered list element ul
      • Creates a list in which each item begins with a bullet symbol (called a disc)
      • li (list item)
        • Entry in an unordered list
  • links2.html (1 of 2)
  • links2.html (2 of 2)
  •    Nested and Ordered Lists
    • Represent hierarchical relationships
    • Ordered lists ( ol )
      • Creates a list in which each item begins with a number
  • list.html (1 of 3)
  • list.html (2 of 3)
  • list.html (3 of 3)
  •  
  • Domain Name System (DNS)
  • Overview
    • Introduction to the DNS
    • DNS Components
    • DNS Structure and Hierarchy
    • The DNS in Context
  • Overview
    • Introduction to the DNS
    • DNS Components
      • The name space
      • The servers
      • The resolvers
    • DNS Structure and Hierarchy
    • The DNS in Context
  • The Name Space
    • The name space is the structure of the DNS database
      • An inverted tree with the root node at the top
    • Each node has a label
      • The root node has a null label, written as “”
  • Domain names and labels
  • FQDN and PQDN
  • Domain Names
    • A domain name is the sequence of labels from a node to the root, separated by dots (“.”s), read left to right
      • The name space has a maximum depth of 127 levels
      • Domain names are limited to 255 characters in length
    • A node’s domain name identifies its position in the name space
  • Hierarchy of name servers
  • DNS in the Internet
  • Generic domains
  • Country domains
  • Inverse domain
  • Name Servers
    • Name servers store information about the name space in units called “zones”
      • The name servers that load a complete zone are said to “have authority for” or “be authoritative for” the zone
    • Also, a single name server may be authoritative for many zones
  • Types of Name Servers
    • Two main types of servers
      • Authoritative – maintains the data
        • Master – where the data is edited
        • Slave – where data is replicated to
      • Caching – stores data obtained from an authoritative server
      • The most common name server implementation (BIND) combines these two into a single process
  • Name Server Architecture
    • You can think of a name server as part:
      • database server, answering queries about the parts of the name space it knows about (i.e., is authoritative for),
      • cache, temporarily storing data it learns from other name servers, and
      • agent, helping resolvers and other name servers find data that other name servers know about
  • Name Server Architecture Zone transfer From disk Master server Zone data file Authoritative Data (primary master and slave zones) Agent (looks up queries on behalf of resolvers) Cache Data (responses from other name servers) Name Server Process
  • Authoritative Data Query Response Resolver Authoritative Data (primary master and slave zones) Agent (looks up queries on behalf of resolvers) Cache Data (responses from other name servers) Name Server Process
  • Using Other Name Servers Response Query Query Response Arbitrary name server Resolver Authoritative Data (primary master and slave zones) Agent (looks up queries on behalf of resolvers) Cache Data (responses from other name servers) Name Server Process
  • Cached Data Query Response Authoritative Data (primary master and slave zones) Agent (looks up queries on behalf of resolvers) Cache Data (responses from other name servers) Name Server Process Resolver
  • Overview
    • Introduction to the DNS
    • DNS Components
      • The name space
      • The servers
      • The resolvers
    • DNS Structure and Hierarchy
    • The DNS in Context
  • Name Resolution
    • Name resolution is the process by which resolvers and name servers cooperate to find data in the name space
    • To find information anywhere in the name space, a name server only needs the names and IP addresses of the name servers for the root zone (the “root name servers”)
      • The root name servers know about the top-level zones and can tell name servers whom to contact for all TLDs
  • Name Resolution
    • A DNS query has three parameters:
      • A domain name (e.g., www.nominum.com ),
        • Remember, every node has a domain name!
      • A class (e.g., IN ), and
      • A type (e.g., A )
    • A name server receiving a query from a resolver looks for the answer in its authoritative data and its cache
      • If the answer isn’t in the cache and the server isn’t authoritative for the answer, the answer must be looked up
  • The Resolution Process
    • Let’s look at the resolution process step-by-step:
    ping www.nominum.com. annie.west.sprockets.com
  • The Resolution Process
    • The workstation annie asks its configured name server, dakota, for www.nominum.com’s address
    ping www.nominum.com. annie.west.sprockets.com dakota.west.sprockets.com What’s the IP address of www.nominum.com?
  • The Resolution Process
    • The name server dakota asks a root name server, m , for www.nominum.com’s address
    ping www.nominum.com. annie.west.sprockets.com m.root-servers.net dakota.west.sprockets.com What’s the IP address of www.nominum.com?
  • The Resolution Process
    • The root server m refers dakota to the com name servers
    • This type of response is called a “referral”
    ping www.nominum.com. annie.west.sprockets.com m.root-servers.net dakota.west.sprockets.com Here’s a list of the com name servers. Ask one of them .
  • The Resolution Process
    • The name server dakota asks a com name server, f , for www.nominum.com’s address
    ping www.nominum.com. annie.west.sprockets.com m.root-servers.net dakota.west.sprockets.com f.gtld-servers.net What’s the IP address of www.nominum.com?
  • The Resolution Process
    • The com name server f refers dakota to the nominum.com name servers
    ping www.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com Here’s a list of the nominum.com name servers. Ask one of them .
  • The Resolution Process
    • The name server dakota asks an nominum.com name server, ns1.sanjose , for www.nominum.com’s address
    ping www.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com ns1.sanjose.nominum.net What’s the IP address of www.nominum.com?
  • The Resolution Process
    • The nominum.com name server ns1.sanjose responds with www.nominum.com’s address
    ping www.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com ns1.sanjose.nominum.net Here’s the IP address for www.nominum.com
  • The Resolution Process
    • The name server dakota responds to annie with www.nominum.com’s address
    ping www.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com ns1.sanjose.nominum.net Here’s the IP address for www.nominum.com
  • Resolution Process (Caching)
    • After the previous query, the name server dakota now knows:
      • The names and IP addresses of the com name servers
      • The names and IP addresses of the nominum.com name servers
      • The IP address of www.nominum.com
    • Let’s look at the resolution process again
    ping ftp .nominum.com. annie.west.sprockets.com
  • Resolution Process (Caching)
    • The workstation annie asks its configured name server, dakota, for ftp.nominum.com’s address
    ping ftp.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com ns1.sanjose.nominum.net What’s the IP address of ftp.nominum.com?
  • Resolution Process (Caching)
    • dakota has cached an NS record indicating ns1.sanjose is an nominum.com name server, so it asks it for ftp.nominum.com’s address
    ping ftp.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com ns1.sanjose.nominum.net What’s the IP address of ftp.nominum.com?
  • Resolution Process (Caching)
    • The nominum.com name server ns1.sanjose responds with ftp.nominum.com’s address
    ping ftp.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com ns1.sanjose.nominum.net Here’s the IP address for ftp.nominum.com
  • Resolution Process (Caching)
    • The name server dakota responds to annie with ftp.nominum.com’s address
    ping ftp.nominum.com. annie.west.sprockets.com f.gtld-servers.net m.root-servers.net dakota.west.sprockets.com ns1.sanjose.nominum.net Here’s the IP address for ftp.nominum.com
  • Overview
    • Introduction to the DNS
    • DNS Components
    • DNS Structure and Hierarchy
    • The DNS in Context
  • The Current TLDs
  • Registries, Registrars, and Registrants Registry Zone DB Registrants End user requests add/modify/delete Registrar submits add/modify/delete to registry Registrar Registrar Registrar Master updated Registry updates zone Slaves updated
  • The “Generic” Top-Level Domains (gTLDs)
    • .COM, .NET, and .ORG
      • By far the largest top level domains on the Internet today
        • .COM has approx. 20,000,000 names
      • Essentially no restriction on what can be registered
    • Network Solutions (now Verisign) received the contract for the registry for .COM, .NET, and .ORG
      • also a registrar for these TLDs
  • New Top Level Domains
    • Recently, ICANN created 7 new top level domains:
      • .aero, .biz, .coop, .info, .museum, .name, .pro
        • Some are chartered (.aero, .coop, .museum, .name, .pro)
        • Some are generic (.biz, .info)
      • Expect these new TLDs to show up around 2Q01
    • Many people unhappy with the process by which these new TLDs were created
      • Expect continued “discussion”
  • ccTLD Organization
    • How each country top-level domain is organized is up to the country
      • Some, like Australia’s au, follow the functional definitions
        • com.au , edu.au , etc.
      • Others, like Great Britain’s uk and Japan’s jp, divide the domain functionally but use their own abbreviations
        • ac.uk , co.uk , ne.jp , ad.jp , etc.
      • A few, like the United State’s us, are largely geographical
        • co.us , md.us , etc.
      • Canada uses organizational scope
        • bnr.ca has national scope, risq.qc.ca has Quebec scope
      • Some are flat, that is, no hierarchy
        • nlnet.nl , univ-st-etienne.fr
      • Considered a question of national sovereignty
  • .arpa
    • Now, Address and Routing Parameter Area
      • Was Advanced Research Projects Administration
    • Used for infrastructure domains
      • IPv4 reverse (address to name) lookups
      • IPv6 reverse lookups
      • E.164
  • Other TLDs
    • .GOV – used by US Governmental organizations
      • E.g., state.gov, doj.gov, whitehouse.gov, etc.
    • .MIL – used by the US Military
      • E.g., af.mil, army.mil, etc.
    • .EDU – used for Educational institutions
      • Higher learning, not only US-based ones
      • E.g., harvard.edu, unu.edu, utoronto.edu
    • .INT – international treaty organizations
      • E.g., itu.int, nato.int, wipo.int
  • Figure 18-11 Recursive resolution
  • Figure 18-12 Iterative resolution
  • Questions? ?
  • TELNET
  • CONTENTS
    • CONCEPT
    • NETWORK VIRTUAL TERMINAL (NVT)
    • NVT CHARACTER SET
    • EMBEDDING
    • OPTIONS
    • OPTION NEGOTIATION
    • SUBOPTION NEGOTIATION
    • CONTROLLING THE SERVER
    • OUT-OF-BAND SIGNALING
  • CONTENTS (Continued)
    • ESCAPE CHARACTER
    • MODE OF OPERATION
    • EXAMPLES
    • USER INTERFACE
    • RLOGIN (REMOTE LOGIN)
    • SECURITY ISSUE
  • TELNET and Rlogin are general-purpose client-server application programs.
  • CONCEPT
  • Local login
  • Remote login
  • NETWORK VIRTUAL TERMINAL
  • Figure 19-3 NVT
  • NVT CHARACTER SET
  • Figure 19-4 Format of data characters
  • Figure 19-5 Format of control characters
  • EMBEDDING
  • Figure 19-6 Embedding
  • OPTIONS
  • OPTION NEGOTIATION
  • Offer to enable
  • Request to enable
  • Offer to disable
  • Request to disable
  • Echo option example
  • SUBOPTION NEGOTIATION
  • Example of suboption negotiation
  • CONTROLLING THE SERVER
  • Example of interrupting an application program
  • OUT-OF-BAND SIGNALING
  • Out-of-band signaling
  • ESCAPE CHARACTER
  • Two different interruptions
  • MODE OF OPERATION
  • EXAMPLES
  • Example 1 In this example, we use the default mode to show the concept and its deficiencies even though it is almost obsolete today. The client and the server negotiate the terminal type and terminal speed and then the server checks the login and password of the user. See Figure 19.16.
  • Example1
  • Example 2 In this example, we show how the client switches to the character mode. This requires that the client request the server to enable the SUPPRESS GO AHEAD and ECHO options.
  • Figure 19-17 Example 2