71
1 CS101 Introduction to Computing Lecture 30 Internet Services

CS101- Introduction to Computing- Lecture 30

Embed Size (px)

DESCRIPTION

Virtual University Course CS101- Introduction to Computing Lecture No 30 Internet Services

Citation preview

Page 1: CS101- Introduction to Computing- Lecture 30

1

CS101 Introduction to Computing

Lecture 30Internet Services

Page 2: CS101- Introduction to Computing- Lecture 30

2

During the last lecture …(Introduction to the Internet)

• We looked at the role Internet plays in today’s computing

• We reviewed some of the history and evolution of the Internet

Page 3: CS101- Introduction to Computing- Lecture 30

3

Internet: The Enabler

• Enables attractively-priced workers located in Pakistan to provide services to overseas clients

• Enables users to easily share information with others located all over the world

• Enables users to easily, inexpensively communicate with others remote users

• Enables the users to operate and run programs on computers located all over the world

Page 4: CS101- Introduction to Computing- Lecture 30

4

The Internet is unlike any previous human invention. It is a world-wide resource, accessible to all of the humankind.

Page 5: CS101- Introduction to Computing- Lecture 30

5

Key Characteristics (1)

Geographic Distribution

Global - reaches around the world

Robust Architecture

Adapts to damage and error

Speed

Data can travels at near ‘c’ on copper, fiber, airwaves

Page 6: CS101- Introduction to Computing- Lecture 30

6

Key Characteristics (2)

Universal AccessSame functionality to everyone

Growth RateThe fastest growing technology ever

Freedom of SpeechPromotes freedom of speech

The Digital AdvantageIs digital: can correct errors

Page 7: CS101- Introduction to Computing- Lecture 30

7

Internet: Network of Networks

• A large number of networks, interconnected physically

• Capable of communicating and sharing data with each other

• From the user’s point view, Internet – a collection of interconnected networks – looks like a single, unified network

Page 8: CS101- Introduction to Computing- Lecture 30

8

TCP/IP (2)Transmission Control Protocol/Internet Protocol

• TCP breaks down the message to be sent over the Internet into packets

• IP routes these packets through the Internet to get them to their destination

• When the packets reach the destination computer, TCP reassembles them into the original message

Page 9: CS101- Introduction to Computing- Lecture 30

9

1960's

1969 - DoD-ARPA creates an experimental network – ARPANET – as a test-bed for emerging networking technologies

ARPANET originally connected 4 universities & enabled scientists to share info & resources across long distances

Page 10: CS101- Introduction to Computing- Lecture 30

10

1980's

1983 - The TCP/IP protocols becomes the only set of protocols used on the ARPANET

This sets a standard for all networks, and generates the use of the term Internet as the net of nets

Page 11: CS101- Introduction to Computing- Lecture 30

11

1990's

1993 - CERN releases WWW, developed by Tim Berners-Lee

It uses HTTP and hypertext, revolutionizing the way info is presented & accessed on Internet

Page 12: CS101- Introduction to Computing- Lecture 30

12

1990's

1993-1994 - Web browsers Mosaic & Netscape Navigator are introduced

Their GUI makes WWW & Internet more appealing to the general public

Page 13: CS101- Introduction to Computing- Lecture 30

13

Today’s Goal: Internet Services

• To look at several services provided by the Internet– FTP– Telnet– Web– eMail– Instant messaging– VoIP

But first, we need to find out about the addressing scheme used on the Internet

Page 14: CS101- Introduction to Computing- Lecture 30

14

Internet Addressing

• Regular post cannot be delivered unless we write a destination address on the envelope

• Same is true for the Internet

• Regular post can be delivered at the intended address even if the given address is not precise. That is not the case for Internet addressing

Page 15: CS101- Introduction to Computing- Lecture 30

15

203.215.177.33

www.vu.edu.pk

IP addressDNS address

Page 16: CS101- Introduction to Computing- Lecture 30

16

IP Address (1)

• A unique identifier for a computer on a TCP/IP network

• Format: four 8-bit numbers separated by periods. Each 8-bit number can be 0 to 255

• Example:– 203.215.177.33 (IP address of the VU Web server)

Page 17: CS101- Introduction to Computing- Lecture 30

17

??clientclient

serverserver

Page 18: CS101- Introduction to Computing- Lecture 30

18

IP Address (2)

• Networks using TCP/IP route messages based on the IP address of the destination

• Any IP addresses (as long as they are unique) can be assigned within a PN

• However, connecting a PN to the Internet requires using unique, registered IP addresses

Page 19: CS101- Introduction to Computing- Lecture 30

19

Domain Names

• IP addresses are fine for computers, but difficult to recognize and remember for humans

• A domain name is a meaningful, easy-to-remember ‘label’ for an IP address

• Examples:

203.215.177.33 www.vu.edu.pk

216.239.33.101 www.google.com

Page 20: CS101- Introduction to Computing- Lecture 30

20

DNS: Domain Name System (1)

• DNS is the way that Internet domain names are located & translated into IP addresses

• Maintaining a single, central table of domain name/IP address relationships is impractical– Billions of DNS-IP translations take place every day– The DNS-IP tables get updated continuously

Page 21: CS101- Introduction to Computing- Lecture 30

21

DNS: Domain Name System (2)

• Tables of DNs & IP addresses are distributed throughout the Internet on numerous servers

• There is a DNS server at most ISPs. It converts the domain names in our Internet requests to actual IP addresses

• In case it does not have a particular domain name in its table, it makes a request to another DNS server on the Internet

Page 22: CS101- Introduction to Computing- Lecture 30

22

Internet Services

There are many, but we will look at only the following:

• FTP

• Telnet

• Web

• eMail

• Instant messaging

• VoIP

Page 23: CS101- Introduction to Computing- Lecture 30

23

FTP: File Transfer Protocol

• Used to transfer files between computers on a TCP/IP network (e.g Internet)

• Simple commands allow the user to:– List, change, create folders on a remote computer

– Upload and download files

• Typical use: Transferring Web content from the developer’s PC to the Web server

Page 24: CS101- Introduction to Computing- Lecture 30

24

Telnet Protocol

• Using Telnet, a user can remotely log on to a computer (connected to the user’s through a TCP/IP network, e.g. Internet) & have control over it like a local user, including control over running various programs

• In contrast, FTP allows file operations only

• Typical use: Configuring and testing of a remote Web server

Page 25: CS101- Introduction to Computing- Lecture 30

25

The Web

• The greatest, shared resource of information created by humankind

• A user may access any item on the Web through a URL, e.g.

http://www.vu.edu.pk/cs/index.html

• Before, going any further, let us dissect this URL

Page 26: CS101- Introduction to Computing- Lecture 30

26

http://www.vu.edu.pk/cs/index.html

ProtocolIdentifier

ServerAddress

Directory & File Name

Page 27: CS101- Introduction to Computing- Lecture 30

27

How does the Web work?

Page 28: CS101- Introduction to Computing- Lecture 30

28

User’sComputer

User launches the browser on his/her computer

Browser

Page 29: CS101- Introduction to Computing- Lecture 30

29

User’sComputer

User types in the URL into the browser

Page 30: CS101- Introduction to Computing- Lecture 30

30

User’sComputer

The browser breaks down the URL

http://www.vu.edu.pk/cs/index.html

httpProtocolIdentifier

www.vu.edu.pkServer’s Name

cs/index.htmlDirectory &File Name

Page 31: CS101- Introduction to Computing- Lecture 30

31

User’sComputer

DNSServer

Browser sends server’s name to the DNS server

Domain Name

IP Address

Page 32: CS101- Introduction to Computing- Lecture 30

32

User’sComputer

WebServer

Internet

Browser establishes a connection with the server

Page 33: CS101- Introduction to Computing- Lecture 30

33

User’sComputer

WebServer

Browser sends a ‘GET’ request for cs/index.html

Page 34: CS101- Introduction to Computing- Lecture 30

34

User’sComputer

WebServer

Server sends the requested file to the browser

Page 35: CS101- Introduction to Computing- Lecture 30

35

User’sComputer

Browser displays index.html

X

Page 36: CS101- Introduction to Computing- Lecture 30

36

eMail

• Computer-to-computer messaging

• Inexpensive, and quite quick, but not instant!

• The most popular service on the Internet, even more than surfing, but soon to be overtaken by instant messaging

• Billions are sent every day

Page 37: CS101- Introduction to Computing- Lecture 30

37

How does an eMail system work?

Page 38: CS101- Introduction to Computing- Lecture 30

38

But first, the components:

• eMail client

• SMTP server

• POP3 server

Page 39: CS101- Introduction to Computing- Lecture 30

39

eMail Clients

• Programs used for writing, sending, receiving, and displaying eMail messages

• Examples: Outlook, Communicator, Hotmail, YahooMail

Page 40: CS101- Introduction to Computing- Lecture 30

40

SMTP: Simple Mail Transfer Protocol

A protocol used to send and receive eMail messages over a TCP/IP network

Page 41: CS101- Introduction to Computing- Lecture 30

41

POP3: Post Office Protocol

• A protocol used for receiving eMail messages

• A POP3 server maintains text files (one file per user account) containing all messages received by a user

• eMail client interacts with the POP3 server for discovering and downloading new eMail messages

Page 42: CS101- Introduction to Computing- Lecture 30

42

Sender’sComputer

The message is prepared using the eMail client

eMail Client

Page 43: CS101- Introduction to Computing- Lecture 30

43

Sender’sComputer

SMTPServer

The eMail client sends it to the SMTP server

Page 44: CS101- Introduction to Computing- Lecture 30

44

Sender’sComputer

SMTPServer

POP3Server

If the receiver is local, it goes to the POP3 server

Page 45: CS101- Introduction to Computing- Lecture 30

45

Sender’sComputer

POP3Server

The receiver picks it at his/her convenience

Receiver'sComputer

SMTPServer

Page 46: CS101- Introduction to Computing- Lecture 30

46

Sender’sComputer

SMTPServer

SMTPServer

Internet

Otherwise, it is sent to receiver's SMTP server

Page 47: CS101- Introduction to Computing- Lecture 30

47

Sender’sComputer

SMTPServer

POP3Server

SMTPServer

Which forwards it to the local POP3 server

Page 48: CS101- Introduction to Computing- Lecture 30

48

Sender’sComputer

SMTPServer

POP3Server

SMTPServer

The receiver picks it at his/her convenience

Receiver'sComputer

Page 49: CS101- Introduction to Computing- Lecture 30

49

The Trouble with eMail

• Slow response times

• No way of knowing if the person we are sending eMail to is there to read it

• The process of having a conversation through eMail by exchanging several short messages is too cumbersome

Instant messaging (IM) solves these problems

Page 50: CS101- Introduction to Computing- Lecture 30

50

Instant Messaging

• The IM services available on the Internet (e.g. ICQ, AIM, MSN Messenger, Yahoo! Messenger) allow us to maintain a list of people (contacts) that we interact with regularly

• We can send an instant messages to any of the contacts in our list as long as that contact is online

Page 51: CS101- Introduction to Computing- Lecture 30

51

Using Instant Messaging (1)

• Whenever a contact in our list comes online, the IM client informs us through an alert message and by playing a sound

• To send an instant message to a contact, just click on the contact in the IM client, and start typing the message

Page 52: CS101- Introduction to Computing- Lecture 30

52

Using Instant Messaging (2)

• The selected contact will receive that message almost immediately after you press ‘Enter’

• When the contact’s IM client receives the message, it alerts the contact with a blinking message and by playing a sound

Page 53: CS101- Introduction to Computing- Lecture 30

53

Using Instant Messaging (3)

• That contact then can type a response to the received message, and send it instantly

• Several such conversations can be carried out simultaneously, each occupying a separate IM windows

Page 54: CS101- Introduction to Computing- Lecture 30

54

How instant messaging works?

Page 55: CS101- Introduction to Computing- Lecture 30

55

User launches the IM client

My Computer

IM Client

Internet

Page 56: CS101- Introduction to Computing- Lecture 30

56

IM client finds the IM server & logs in

My Computer IM Server

Page 57: CS101- Introduction to Computing- Lecture 30

57

It sends communication info (IP address, etc) to the IM server

My Computer IM Server

Temporary File

Page 58: CS101- Introduction to Computing- Lecture 30

58

IM server finds user’s contacts & sends him/her the communication info for the ones online

My Computer IM Server

Page 59: CS101- Introduction to Computing- Lecture 30

59

IM server also tells the contacts that the user is online; sends his/her communication info to them

My Computer IM Server

Contact’sComputer

Page 60: CS101- Introduction to Computing- Lecture 30

60

My Computer IM Server

Contact’sComputer

Now the user’s & the contact’s IM clients are ready to communicate directly (P2P)

The IM server doesn’t play any part in this P2P communication

Page 61: CS101- Introduction to Computing- Lecture 30

61

My Computer IM Server

ContactA’s Computer

As new contact’s come online, IM server informs them about the user being online & vice versa

ContactB’s Computer

Page 62: CS101- Introduction to Computing- Lecture 30

62

My Computer IM Server

ContactA’s Computer

Multiple, simultaneous conversations are possible

ContactB’s Computer

Page 63: CS101- Introduction to Computing- Lecture 30

63

My Computer IM Server

ContactA’s Computer

When the user logs-off, his/her IM client informs the IM server

ContactB’s Computer

Page 64: CS101- Introduction to Computing- Lecture 30

64

My Computer IM Server

ContactA’s Computer

IM server erases the temporary file and informs the user’s contact’s about his/her ‘offline’ status

ContactB’s Computer

Page 65: CS101- Introduction to Computing- Lecture 30

65

Key Point

• Once the IM server provides the communication info to the user and his/her contact’s IM client, the two are able to communicate with each other without the IM server’s assistance

• This server-less connection is termed as a P2P connection

Page 66: CS101- Introduction to Computing- Lecture 30

66

Question

• Why do we require the server in the first place?

• Why doesn’t my IM client look for the user’s contact’s IM client without the IM server’s help?

Page 67: CS101- Introduction to Computing- Lecture 30

67

Answer

• Many users (including almost all home users) do not have permanent IP addresses. They are assigned temporary IP addresses by their ISP each time they connect to the Internet

• The server-based IM scheme removes the need of having permanent IP numbers

• It also gives IM users true mobility, allowing them the use of IM from any Internet-connected computer

Page 68: CS101- Introduction to Computing- Lecture 30

68

VoIP: Voice over IP

• Voice delivered from one device to another using the Internet Protocol

• Voice is first converted into a digital form, is broken down into packets, and then transmitted over a TCP/IP network (e.g. Internet)

• Four modes:– C2C– C2T– T2C– T2T (with a TCP/IP net somewhere in between)

Page 69: CS101- Introduction to Computing- Lecture 30

69

Pro

Much cheaper than traditional phone service

Con

Noticeably poor quality of voice as compared with land-line phone service, but not much

worse than cell phone service

Page 70: CS101- Introduction to Computing- Lecture 30

70

Today’s Goal: Internet Services

• We looked at several services provided by the Internet– FTP– Telnet– Web– eMail– Instant messaging– VoIP

• We also found out about the addressing scheme used on the Internet

Page 71: CS101- Introduction to Computing- Lecture 30

71

Next Lecture:

• Next lecture (Lecture 31) - the third one in the four-lecture productivity SW sequence - will be on developing presentations

• However, during lecture 33, we will become familiar with the role that graphics and animations play in computing