ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System...

52
Application Layer -1- Network Tools 2015, Lecture 08 Kaan Bür EITF25 – Internet: Technology and Applications

Transcript of ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System...

Page 1: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Application Layer-1-

NetworkTools

2015,Lecture 08Kaan Bür

EITF25– Internet:TechnologyandApplications

Page 2: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

PreviouslyonEITF25

• AddressingaboveIP– Ports, sockets

• Process-to-processdelivery• Transportlayerprotocols– TCP– UDP

• QualityofService2015-11-30 2EITF25– Internet:TechnologyandApplications

TransportLayer

Page 3: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Application layer

• Principlesofdigitalcommunications– Fromelectricalsignals tobitstopackets

• Usingthephysicalinfrastructure– Networkaccess

• Findingyourway– Addressing, routing

• Makinguseofitall– Applications

2015-11-16 EITF25– Internet:TechnologyandApplications 3

Page 4: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Today:ApplicationLayer (1)

• DomainNameSystem,DNS[S24.2][F26.6]

• HostConfiguration,DHCP[S21.5][F18.4.4]

• DebuggingTools,ICMP[S14.3][F19.2]

• World-WideWeb,HTTP[S24.3][F26.1]

*[Kihl&Andersson:7.5,7.7,7.9,12.4]2015-11-30 4EITF25– Internet:TechnologyandApplications

Page 5: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

MappinghostnametoIPaddress

• Applicationprotocolsusehostnames• TCP/IPprotocolsuiteusesIPaddresses• MappingfromhostnametoIPaddresses

• DomainNameSystem(DNS)– Domainnamespace– Domainnameresolution

• www.lth.se ≡130.235.209.2202015-11-30 EITF25– Internet:TechnologyandApplications 5

Page 6: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

DomainNameSystem(DNS)

• Internet’stelephonebook:Address↔name– Oneofthemost important systemson theInternet

2015-11-30 6EITF25– Internet:TechnologyandApplications

Page 7: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Domainnamespace

• Namesmustbeunique– Completecontrolneeded

2015-11-30 EITF25– Internet:TechnologyandApplications 7

Page 8: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Domainnamesandlabels

2015-11-30 8EITF25– Internet:TechnologyandApplications

Page 9: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Internetdomains

2015-11-30 9EITF25– Internet:TechnologyandApplications

Page 10: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Genericdomains

2015-11-30 10EITF25– Internet:TechnologyandApplications

Page 11: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

se

lth

eit

eit.lth.se

Countrydomains

2015-11-30 11EITF25– Internet:TechnologyandApplications

Page 12: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Hierarchyofdomainnameservers

• 13logicalrootnameservers– implemented by376physicalservers

2015-11-30 EITF25– Internet:TechnologyandApplications 12

Page 13: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Domains,subdomains,zones

Domain

• SubtreeofDNS

Zone

• Servers’controlarea

2015-11-30 EITF25– Internet:TechnologyandApplications 13

Page 14: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Domainnameresolution

• Actionofaddressmapping– Client=resolver– Server=DNS

• Oneservercannothavealltheanswers!– Howtoaskothers?–Whattodowiththeanswer?

• Caching– Rememberwhatyou’ve learned!

2015-11-30 14EITF25– Internet:TechnologyandApplications

Page 15: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Recursiveresolution

2015-11-30 15EITF25– Internet:TechnologyandApplications

Page 16: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Iterativeresolution

2015-11-30 16EITF25– Internet:TechnologyandApplications

Page 17: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

DomainnametoIPaddress (1)

17

magi.magicnet.setroll.trollnet.se

1. magi.magicnet.se ?

ns.trollnet.se2015-11-30 EITF25– Internet:TechnologyandApplications

Page 18: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

18

DomainnametoIPaddress (2)

troll.trollnet.semagi.magicnet.se

ns.trollnet.se x.ns.se

2. magicnet.se ?

3. Ask ns.magicnet.se

2015-11-30 EITF25– Internet:TechnologyandApplications

Page 19: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

19

DomainnametoIPaddress (3)

troll.trollnet.semagi.magicnet.se

ns.trollnet.se ns.magicnet.se

4. magi.magicnet.se ?

5. IP = 194.52.54.47

6. IP = 194.52.54.47

2015-11-30 EITF25– Internet:TechnologyandApplications

Page 20: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

20

DomainnametoIPaddress (4)

troll.trollnet.semagi.magicnet.se

7. IP = 194.52.54.47

2015-11-30 EITF25– Internet:TechnologyandApplications

Page 21: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Exercise: Breakthisviciouscycle!

2015-11-30 EITF25– Internet:TechnologyandApplications 21

IPaddr.

DNS

TCPUDP

IP

DHCP

Page 22: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

ObtaininganIPaddress

• DynamicHostConfigurationProtocol– Application layer

• DHCP– IPaddress• Allocationfrompoolorstatic

– Networkmask– Defaultgateway– DNSserver(s)

2015-11-30 22EITF25– Internet:TechnologyandApplications

Page 23: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

DHCPoperation

2015-11-30 23EITF25– Internet:TechnologyandApplications

Page 24: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

DHCPstates

2015-11-30 EITF25– Internet:TechnologyandApplications 24

75%

Page 25: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Seeyouin15’:)

• Afterthebreak– Networkdebugging– ICMP–World-wide web

2015-11-30 25EITF25– Internet:TechnologyandApplications

Page 26: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

DebuggingTools

• Applicationsusedfordebugging• Twoexamples– Ping– Traceroute

2015-11-30 EITF25– Internet:TechnologyandApplications 26

Page 27: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Ping

2015-11-30 EITF25– Internet:TechnologyandApplications 27

Page 28: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Traceroute

2015-11-30 EITF25– Internet:TechnologyandApplications 28

Page 29: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

InternetControlMessageProtocol

• ICMP• SupportprotocolforIP– Errorreporting– Query

2015-11-30 29EITF25– Internet:TechnologyandApplications

Page 30: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Encapsulation

• ICMPmessagesencapsulatedinIPpackets

2015-11-30 EITF25– Internet:TechnologyandApplications 30

Page 31: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

ICMPmessageformats

• Errorreporting

• Querymessages

2015-11-30 31EITF25– Internet:TechnologyandApplications

Page 32: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

ICMPv4messagetypes

2015-11-30 32EITF25– Internet:TechnologyandApplications

Page 33: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

• Routingupdateforhosts–Moreefficientwhen toomanyhosts

Redirection(errorreportingtype)

2015-11-30 33EITF25– Internet:TechnologyandApplications

DEFAULT ROUTER

Page 34: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Exercise: ICMPinaction

Q: Inwhatkindofnetworkcanahostneverreceivearedirectionmessage?

A: Inanetworkwithonlyonerouter

2015-11-30 EITF25– Internet:TechnologyandApplications 34

Page 35: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Echorequestandreply (querytype)

• Ismydestinationalive?

• Networkdiagnostics– IPlayer

• Debuggingtools– Ping– Traceroute

2015-11-30 35EITF25– Internet:TechnologyandApplications

Page 36: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Traceroute

• Usedtotraceapacket’sroutefromsourcetodestination

• UsesthreeICMPmessages– EchoRequest (query)

– TimeExceeded (error)

– DestinationUnreachable (error)

• ManipulatesTTLfieldinIPheader• Uses‘wrong’ portnumber

2015-11-30 EITF25– Internet:TechnologyandApplications 36

Page 37: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Traceroute

2015-11-30 EITF25– Internet:TechnologyandApplications 37

Echo request

Page 38: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Applicationlayerparadigms

• Client-serverparadigm–WWW,Onlinegames,WebTV,Facebook

• Peer-to-peerparadigm– BitTorrent, Voddler, Skype

• Someapplicationsusebothparadigms– Spotify

2015-11-30 EITF25– Internet:TechnologyandApplications 38

Page 39: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Client-serverparadigm

2015-11-30 EITF25– Internet:TechnologyandApplications 39

Page 40: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Peer-to-peerparadigm

402015-11-30 EITF25– Internet:TechnologyandApplications

Page 41: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Application:WWW

• TheideaoftheWorld-WideWeb(WWW)wasfirstproposedbyTimBerners-Lee in1989atCERN,theEuropeanOrganizationforNuclearResearch

• ThepurposewastoallowallCERNresearchersatdifferentlocationsthroughoutEuropetoaccesseachothers’ results

• ThecommercialWebstartedin1993.

2015-11-30 EITF25– Internet:TechnologyandApplications 41

Page 42: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

ComponentsofWWW

• Webdocuments(pages)– HyperTextMarkup Language (HTML) forstaticwebpages

– Script languages (PHP,ASP, JSP,CGIetc.)fordynamic

• UniversalResourceLocator(URL)– Standardwaytoidentify locationofwebdocuments

• HyperTextTransferProtocol(HTTP)– Protocol toaccessdocuments onawebserver

2015-11-30 EITF25– Internet:TechnologyandApplications 42

Page 43: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

UniversalResourceLocator(URL)

• Awebdocumenthasfouridentifiers– Protocol, Host,PortandPath.

• AURLisdefinedas– protocol://host:port/path

• StandardHTTPport80isisomitted– http://www.eit.lth.se/course/eitf25

2015-11-30 EITF25– Internet:TechnologyandApplications 43

Page 44: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

HypertextTransferProtocol(HTTP)

• Text-basedprotocol• Twobasictypesofmessages– RequestsandResponses

• SetsupandusesaTCPconnection

2015-11-30 EITF25– Internet:TechnologyandApplications 44

Page 45: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Documentretrieval

452015-11-30 EITF25– Internet:TechnologyandApplications

Page 46: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

OperationofHTTP1.1

• Persistentconnection– OnlyoneTCPsession forallrequestsfromthesameserver.

2015-11-30 EITF25– Internet:TechnologyandApplications 46

Page 47: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

HTTPrequestandresponseformat

2015-11-30 EITF25– Internet:TechnologyandApplications 47

Page 48: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

HTTPmethodsinrequests

• Usingthese’methods’,clientsmayrequestcorrespondingactionsfromserver.

2015-11-30 EITF25– Internet:TechnologyandApplications 48

Page 49: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Examplerequestandresponse

2015-11-30 EITF25– Internet:TechnologyandApplications 49

Page 50: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Cookies

• OriginalWWWwasstateless– Eachrequest/response treatedseparately– Nohistoryofpreviousmessages

• Cookies– storeinformation aboutclient– introduce conceptofauser session

• Implementation(creationandstorage)ofcookiescanbedifferent,butsameconcept

2015-11-30 EITF25– Internet:TechnologyandApplications 50

Page 51: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Cookies

512015-11-30 EITF25– Internet:TechnologyandApplications

Page 52: ApplicationLayer -1- Network Tools...Summary: Application Layer (1) • Domain Name System –Mapping host names to IP addresses • Host configuration –Obtaining an IP address •

Summary: ApplicationLayer (1)

• DomainNameSystem–Mapping hostnamestoIPaddresses

• Hostconfiguration– Obtaining anIPaddress

• Debuggingtools– Ping, traceroute,ICMP

• Client-servervs.P2Papplications– www,http, cookies

2015-11-30 EITF25– Internet:TechnologyandApplications 52