Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
The Internet • Computer network: collection of autonomous computers that can exchange information. • Collection of interconnected networks is called internet. – LAN: (local area network) – MAN: (metropolitan area network) – WAN: (wide area network) • Intranet: a local network. Internet Programming (601211) The Internet • The Internet is the largest internet in the world. These include commercial (.com or .co), university (.ac or .edu) and other research networks (.org, .net) and military (.mil) networks and span many different physical networks around the world with various protocols, mainly the Internet Protocol. Internet Programming (601211) The Internet History • 1969: ARPAnet (US government) • 1973: First email message • 1980: CSNET (NSF National Science Foundation) • 1980: BITNET (IBM mainframes) • 1986: join CSNET + ARPAnet • 1987: join CSNET + BITNET • 1991: Tim Berners-Lee (CERN) announced WWW (Gopher is released) • 1993: Public awareness of Internet ( Mosaic is released) Internet Programming (601211) The Internet • Applications – – – – – The World Wide Web (HTTP) Electronic mail Usenet (newsgroups) Remote login (Telnet) File transfer (FTP) Internet Programming (601211) Client-server • Client- server A common form of distributed system in which software is split between server tasks and client tasks. A client sends requests to a server, according to some protocol, asking for information or action, and the server responds. • Protocol A set of formal rules describing how to transmit data, especially across a network. Internet Programming (601211) Client-server Advantages • Centralised storage • Server is a powerful machine, efficient processing Disadvantages • “Eggs in one basket” • Increasing load Thin client vs. Reduce server load and network communication Internet Programming (601211) TCP/IP • Internet Protocol (IP) A connectionless, non-guaranteed best-effort packet switching protocol. – Packet: unit of data sent across a network. – Connectionless: Packets sent between two hosts may take different routes. Application (HTTP) Host-to-Host (TCP) Internet (IP) Physical •Transmission Control Protocol (TCP) Reliable connection-oriented (fragment, no error) Internet Programming (601211) World Wide Web • An architectural framework for accessing linked document spread out over the Internet. • 1989 at CERN (European Center for Nuclear Research) – Tim Berners-Lee. • Mosaic (1994) – Netscape (1995) • CERN + M.I.T W3C (1994) • Languages used (HTML, Java, ….) Internet Programming (601211) Client-server Web The Client side Network Client connection •Browser •Helper application •Plug in Internet Programming (601211) World Wide Web •Documents (web pages) •Links (hypertext) Client-server Web The server side Network connection Server •Server name •IP address •Web document •Listen to port 80 Internet Programming (601211) Client-server Web • User type the URL • Browser ask DNS for IP address (host name) • Client connect to port 80 of IP address •GET (file name) •Client release connection •Browser display the file •Browser get and display images Host Name IP address Internet Programming (601211) •Receive request •Send the file DNS Uniform Resource Locator • A standard way of specifying the location of an object on the Internet. URLs are the form of address used on the World-Wide Web. – – – – – – http://www.w3.org/default.html http://www.w3.org/default.html#Introduction ftp://wuarchive.wustl.edu/mirrors/msdos/graphics/gifkit.zip mailto:[email protected] news.uni-mannheim.de telnet://dra.com • Access Protocol://server-name/path-name/filename#fragment identifier • Mailbox@location Internet Programming (601211) Domain Name System(DNS) • A general-purpose distributed, replicated, data query service used on Internet for translating hostnames into Internet addresses • Hostname is an ASCII string, e.g. “java.sun.com" which, consists of a local part (java) and a domain name (sun.com) • IP address is a 32-bit host address defined by the Internet Protocol (IP). It is usually represented in dotted decimal notation (e.g. 128.121.4.5). The address can be split into a network number (or network address) and a host number unique to each host on the network and sometimes also a subnet address Internet Programming (601211) Domain Name System(DNS) • The browser requests the IP address of a server from the local DNS • DNS contains resources records (server name, IP address, type) for each server registered with it • The domain name space hierarchy of the WWW Com Org UK co ac Edu Jo com Leeds umist Internet Programming (601211) edu just uop HTTP • Hypertext Transfer Protocol – A client-server, request/response protocol used on the WWW to exchange HTML documents – An application-level protocol for distributed, collaborative, hypermedia information systems – Communication usually takes place over TCP/IP connections – Client request (GET)+ file name+ protocol version+ Request Header Fields – Server respond (MIME header + data) Internet Programming (601211) MIME • Multipurpose Internet Mail Extensions (MIME) – A standard for multi-part, multimedia electronic mail messages and World-Wide Web hypertext documents on the Internet – MIME provides the ability to transfer non-textual data, such as graphics and audio – Contains description and type of the data transferred text/html image/jpeg video/mpeg Internet Programming (601211) Electronic Mail • Messages automatically passed from one computer user to another, often through computer networks and/or via modems over telephone lines • Message: – – – – – Envelope (destination address, priority, security) Header (From, Date, Subject) Body (message text) Signature Attachment (MIME) Internet Programming (601211) Electronic Mail • Functions of an email reader (GUI to interact with the email system) – – – – – Composition Transfer (forward, reply, reply to ALL) Display messages Report the delivery Manipulate messages (Mark, Folders, follow up) • Originally implemented as FTP • Uses number of protocols: SMTP, POP3, IMAP Internet Programming (601211) Email Protocols • SMTP: handles outgoing email between client and server. • POP3 (Post Office Protocol): handles incoming email. – Append new emails to mailbox (text file) – Retrieve emails from the mailbox to read on client • IMAP (Internet Mail Access Protocol) – Read, organize and handle emails on the server Internet Programming (601211) SMTP • Simple Mail Transfer Protocol – – – – – – Send: mailbox_name@server_name TCP connection to the sender server Server reply “ready message” Client sends “sender name & recipient name” If recipient exist => sever sends go ahead message Email daemon accept message & copy to mailbox •Email Daemon •Listen to port 25 Internet Programming (601211) File Transfer Protocol (FTP) • A client-server protocol which allows a user on one computer to transfer files to and from another computer over a TCP/IP network • User interface and command is based on Unix and not user friendly • You need FTP server, username and password • From the Start menu, Choose Run and Type: ftp rohan.sdsu.edu Internet Programming (601211) User (rohan.sdsu.edu:(none)): anonymous 331 Guest login ok, send your complete e-mail address as password. Password: 230- Welcome to the San Diego State University anonymous ftp archive. 230- Local time in San Diego, California is Fri Feb 9 11:40:57 2001. 230- You are user 2 on this system, out of a possible 100 230- This server can automatically tar a directory and it's contents. 230- Simply add the appropriate sufix to the requested directory (.tar) 230- The tar'd directory can also be gziped by adding .gz (.tar.gz) 230- Some ftp clients have problems with these messages. Shut off verbose 230- messages by entering a "-" at the beggining of your password. 230 Guest login ok, access restrictions apply. ftp> ls 200 PORT command successful. 150 Opening ASCII mode data connection for file list. FTP.faq ls-lR.Z 226 Transfer complete. •18 bytes received in 0.00 seconds (18000.00(601211) Kbytes/sec) Internet Programming