Top Banner
Lecture # 35 Internet Organization
49

Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Jan 16, 2016

Download

Documents

Corey Wilkinson
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Lecture # 35

Internet Organization

Page 2: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Internet

Page 3: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Networking

• Communicating between two or more computers

• Bits -> voltage ->wire->voltage->Bits

Page 4: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Network

• More than two computers

Page 5: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Network switch

• More than two computers

Switch

Page 6: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Network• Who is talking to who?

Switch

Page 7: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Network

• Who is talking to who?• Give each computer an

address (integer)

Switch

0

1

2

75

4243

Page 8: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Network

• Who is talking to who?• Give each computer an

address (integer)• Add the address to the

message– Computer with that

address takes the message

– All others ignore the message

Switch

0

1

2

75

4243

messageaddress

Page 9: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Internet

messageaddress

net

net

net

net

Page 10: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Internet

messageaddress

net

net

net

net

net ID host ID

Page 11: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Internet and WWW

Page 12: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Internet

• A way to send an array of bytes from any machine to any other machine

Internet

Page 13: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

How to identify the machine to send to

• By address (IP Address - 4 bytes)

Internet

128.78.22.32233.21.1.45

117.211.23.22 233.12.32.111

Page 14: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

How to identify the machine to send to

• By name (domain name)

Internet

Croatian.cs.byu.eduIcie.cs.byu.edu

Myhome.isp.com Yahoo.com

Page 15: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Domain Name - a pathname in a tree

EDU COM GOV

BYU

CS

WWW ICIE

EE

MIT Utah Microsoft

research

Yahoo

whitehouse

LOC

Page 16: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Icie.cs.byu.edu

EDU COM GOV

BYU

CS

WWW ICIE

EE

MIT Utah Microsoft

research

Yahoo

whitehouse

LOC

Page 17: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Servers

• Computers that store information or services

Internet

Icie.cs.byu.edu

Yahoo.com

Page 18: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Clients

• Programs that help users get access to info

Internet

Netscape

Instant messenger

Page 19: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Protocol

• Language for computers to talk with each other

Internet

Netscape

Instant messenger

HTTP

IRC

Page 20: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Review

• Internet– Array of bytes between computers– By address 128.23.12.1– By name icie.cs.byu.edu

• Server - delivers info on request• Client - helps user access server info• Protocol - language for computers to talk with

each other

Page 21: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

URL (Uniform Resource Locator)

• http://www.yahoo.com/

• http://www.espn.com/nba

• http://icie.cs.byu.edu/cs100/schedule.html

Page 22: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

URL - Protocol

• http://icie.cs.byu.edu/cs100/schedule.html

• ftp://netscape.com/downloads/msng.exe

• mailto:[email protected]

Page 23: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

URL - Domain Namename of the server to access

• http://icie.cs.byu.edu/cs100/schedule.html

• ftp://netscape.com/downloads/msng.exe

Page 24: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

URL - page name

• http://icie.cs.byu.edu/cs100/schedule.html

• ftp://netscape.com/downloads/msng.exe

Page 25: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

URL - page name

• http://icie.cs.byu.edu/cs100/schedule.html• http://icie.cs.byu.edu/cs100/Lectures/server.gif• http://icie.cs.byu.edu/cs100/Lectures/L1.ppt• http://icie.cs.byu.edu/cs456/Homework/Program1• http://icie.cs.byu.edu/cs456/Homework/Program2

– -

Page 26: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

URL - page name

• http://icie.cs.byu.edu/cs100/schedule.html• http://icie.cs.byu.edu/cs100/Lectures/server.gif• http://icie.cs.byu.edu/cs100/Lectures/L1.ppt• http://icie.cs.byu.edu/cs456/Homework/Program1• http://icie.cs.byu.edu/cs456/Homework/Program2

– Page names are pathnames in a tree

Page 27: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

URL - page name

• cs100/schedule.html

• cs100/Lectures/ server.gif

• cs100/Lectures/L1.ppt

• cs456/Homework/Program1

• cs456/Homework/Program2

cs100

schedule.html

Lectures

server.gif L1.ppt

cs456

Homework

Program1

Program2

Page 28: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Hypertext

• How to link together many documents so that users can get whatever information they want.

Page 29: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

IP address

messageaddress

net ID host ID

128.187.172.236

BYU

Computer Science

a computer

Page 30: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Internet Protocol (IP)

• Computer sends an IP “packet”• Other computers (routers) send it on until it

reaches the destination computer – (IP address)

• Each packet might get lost, may arrive in any order, may get delayed

messageIP Address

32 bits - 4 bytes

Page 31: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

TCP/IP

• Uses IP to send packets

• Keeps track of which packets have been sent – Resends packets that get lost

• Keeps track of the correct order of packets– Reorders packets when they come in the wrong

order

Page 32: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Domain names vs. IP address

• students.cs.byu.edu

• www.byu.edu

• ee.utah.edu

• yahoo.com

• software.microsoft.com

• research.microsoft.com

Page 33: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Domain names

• students.cs.byu.edu

• www.byu.edu

• ee.utah.edu

• yahoo.com

• software.microsoft.com

• research.microsoft.com

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

Page 34: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Domain names

• If you have a domain name, how do you find the IP address of that computer?

• Maybe one computer has a list of all domain names and their IP addresses– If there are millions of computers– Who enters the data?– Who fixes the data?– Millions of requests will swamp that computer– If that computer goes down nothing works

• How do we get this to scale?

Page 35: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Domain names - scale

• Use a tree!

• Every node knows IP address of its parent

• Every node knows the IP/domain name of its direct children

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

Page 36: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If a node doesn’t know the IP address of some domain name:– If the domain name is

one of its own, ask the correct child

– If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

Page 37: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If the domain name is one of its own, ask the correct child

• If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

students.cs.byu.edu wants software.microsoft.com

Page 38: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If the domain name is one of its own, ask the correct child

• If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

students.cs.byu.edu wants software.microsoft.com

students asks cs

Page 39: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If the domain name is one of its own, ask the correct child

• If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

students.cs.byu.edu wants software.microsoft.com

cs asks byu

Page 40: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If the domain name is one of its own, ask the correct child

• If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

students.cs.byu.edu wants software.microsoft.com

BYU asks edu

Page 41: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If the domain name is one of its own, ask the correct child

• If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

students.cs.byu.edu wants software.microsoft.com

edu asks com

Page 42: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If the domain name is one of its own, ask the correct child

• If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

students.cs.byu.edu wants software.microsoft.com

com asks microsoft

Page 43: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - domain name service

• If the domain name is one of its own, ask the correct child

• If the name is not one of its own, ask the parent

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

students.cs.byu.edu wants software.microsoft.com

microsoft knows and gives the answer

Page 44: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - making it fast

• Each node remembers the most common requests for a day or two

• Doesn’t need to ask again

• Called “caching”

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

Page 45: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

DNS - managing the data

• Each node can manage and change its own children without consulting anyone else

• Within 2 days of the changes, everyone’s cache has been updated

edu com

byu utah yahoo

microsoftcs www

students

software research

ee

Page 46: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Other protocols

• Use TCP/IP– WWW– Email– Instant messenger– FTP

Page 47: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

WWW

• URL - “students.cs.byu.edu/index.html”

– Send a message to DNS - “what is students.cs.byu.edu?”

– Use IP address to send a message to “students.cs.byu.edu”• “GET index.html”

Page 48: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Email - uses TCP/IP

• send a message to “[email protected]”• find my mail server “mail.cs.byu.edu”• message to “mail.cs.byu.edu”

to: [email protected]

from: [email protected]

subject: Hi there

• mail server forwards the message to “microsoft.com”– if no answer it will keep trying for about a week

Page 49: Lecture # 35 Internet Organization. Internet Networking Communicating between two or more computers Bits -> voltage ->wire->voltage->Bits.

Networking Review

• Sending bytes between computers• IP - sends a packet to a particular IP address• TCP - guarantees that packets are in correct

order and not lost• DNS - uses a tree to convert domain names

into IP addresses• WWW - uses TCP/IP• Email - uses TCP/IP