Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Datakommunikasjon Høsten 2001 Forelesning nr 10, 29. oktober 2001 Chapter 17 Transport Protocols + DNS og SNMP.

Liknende presentasjoner


Presentasjon om: "Datakommunikasjon Høsten 2001 Forelesning nr 10, 29. oktober 2001 Chapter 17 Transport Protocols + DNS og SNMP."— Utskrift av presentasjonen:

1 Datakommunikasjon Høsten 2001 Forelesning nr 10, 29. oktober 2001 Chapter 17 Transport Protocols + DNS og SNMP

2 Øvingsoppgaver zIngen zObligatorisk oppgave nr 2 deles ut onsdag 31. oktober. zInnleveringsfrist onsdag 14. oktober zPrøveekasamen deles ut mandag 19. november zGjennomgang onsdag 28. november zEksamen tirsdag 4. desember

3 Pensum Chapter 19 Distributed Applications zFølgende er IKKE pensum: zKapittel 19.1 ASN.1 zForelesning 12. november: Network Security (selvkomponert) zForelesning 19. november: Repitisjon

4 Dagens tekst: zTransportlaget zTCP – Transmission Control Protocol zUDP – User Datagram Protocol zDNS – Domain Name System zSNMP – Simple Network Management Protocol (?)

5 TCP – Transmission Control Protocol

6 Kommunikasjonslagene (referert til OSI) ApplicationPresentationSession Ethernet IP ARP ICMP TCPUDP NetworkTransportData LinkPhysicalApplicationTransportNetworkData Link PPP FTPHTTP DNS OSI Internet-TCP/IP SMTP

7 TCP & UDP zTransmission Control Protocol yForbindelsesorientert yRFC 793 zUser Datagram Protocol (UDP) yForbindelsesløs (datagram tjeneste) yRFC 768

8 Eks. på brukere av TCP zTelnet yport 23 zFTP (File Transfer Program) yport 20 og 21 zSMTP (Simple Mail Transfer Program) yport 25 zDNS (Domain Name System) yport 53 zHTTP (WEB-trafikk) yport 80

9 Eks. på brukere av UDP zTFTP (Trivial File Transfer Protocol) yport 69 zDHCP (Dynamic Host Configuration Protocol) yport 67 og 68 zNTP (Network Time Protocol) yport 123 zDNS (Domain Name Sytem) yport 53

10 Sockets begrepet zSending socket yAvsender IP-adresse + port nummer zReceiving socket yMottaker IP-adresse + port nummer zBenyttes ifm API-er yAPI-Application Program Interface

11 TCP zTCP overfører data mellom en klient og en tjener (client/server) zData overføres i segmenter zBrukerene av TCP leverer data som en strøm av data (stream oriented) zTCP sørger for feilretting og at data leveres videre til brukeren av TCP i korrekt rekkefølge zForbindelsesorientert yOppkoblingsfase yDataoverføringsfase yNedkoblingsfase

12 TCP streams og segmenter TCP A B Segmenter Stream

13 TCP pakke

14 Oppgaver til TCP zAdressering zMultipleksing, en TCP prosess må kunne håndtere flere applikasjoner zFlytkontroll zFeilkontroll zOpp og nedkobling

15 Adressering zApplikasjon adresseres med: xhost, port Kalles en socket i TCP xPort representerer en bruker av TCP, dvs en applikasjon yTransport entity identifikasjon TCP og UDP yHost og nettverksadresse, dvs IP-adresse

16 Multipleksing zFlere applikasjoner kan benytte samme transport protokoll zApplikasjon identifiseres med port nummer eller service access point (SAP)

17 Flytkontroll zVariabel transmissjonsforsinkelse yVanskeligjør bruk av timere zMå ha flytkontroll pga at: yMottaker ikke kan motta data så raskt som avsender sender zResulterer i buffere som fylles

18 Håndtering av krav til flytkontroll (1) zGjør ingenting ySegmenter kastes yAvsender vil ikke motta ACK og vil retransmittere xResulterer i mer inndata zAvise segmenter når buffer er fullt yTrigger flytkontroll på lavere lag. yHvis flere transportforbindelser er multiplekset over en enkelt nettverksforbindelse foregår flytkontrollen “summen” av alle transportforbindelsene

19 Håndtering av krav til flytkontroll (2) zBruke av fast sliding window protokoll yFungerer bra i pålitelige nett xManglende mottak av ACK håndteres som flytkontroll yFungerer dårlig i upålitelige nett xKan ikke skille mellom tapte pakker og flytkontroll zBruk av “credit scheme”

20 Credit Scheme zVindusstørrelse og ACK er ikke lenger koblet sammen yKan gi ACK uten å gi kreditt og vice versa zHver oktett har et sekvensnummer zHvert transport segment har sekvens nummer, ack nummer og vindusstørrelse i header

21 TCP oppkobling Maskin A Maskin B TID SYN (SYNchronize sequence numbers) SYN, ACK ACK Kalles for: Three-way handshake

22 TCP sekvens nummer Maskin A Maskin B TID SYN=1, Sequence=X SYN=1, ACK=1, Sequence=Y, Ack no=X+1 ACK=1, Ack no=Y+1

23 Credit Allocation

24 Sending and Receiving Perspectives

25 Three Way Handshake: Examples

26 Three Way Handshake: State Diagram

27 Netstat –s (gir protokollstatistikk) TCP Statistics Active Opens = 696 Passive Opens = 39 Failed Connection Attempts = 46 Reset Connections = 363 Current Connections = 3 Segments Received = Segments Sent = Segments Retransmitted = 285

28 TCP - Transmission Control Protocol Source Port TCP Header Destination Port Sequence Number Acknowledge Number Header Length Reserved URGURG ACKACK PSHPSH RSTRST SYNSYN FINFIN Window Size TCP ChecksumUrgent Pointer Options RFC793

29 URG (Urgent mode) flagg zUrgent mode yGir mulighet for den ene part å fortelle at ”urgent data” er sent innimellom den normale datastrømmen zUrgent mode aktiveres ved å yURG bit settes = 1 y16 bir urgent pointer settes til et positivt offset yUrgent data befinner er da i de oktettene som angis av sequence number + urgent pointer offset zBenyttes av telnet, rlogin og FTP.

30 ACK – Acknowledge number zBenyttes til å si at dette er kvittering for mottatte data

31 PSH (PUSH) flagg zAvsender side: yBrukeren av TCP setter PUSH flagget for at TCP skal sende data som er mottatt med en gang, dvs ikke vente til at bufferet f.eks. er fullt. zMottaker side: yTCP skal sende de mottatte data umiddelbart til brukeren av TCP zEksempel på bruk er telnet

32 RST (RESET) flagg zRESET flagg benyttes til å yresette en forbindelse yavbryte en forbindelse zOppsett til en ikke eksisterende port yTCP sender RESET yUDP sender ICMP port unreachable zEksempel telnet til en ikke eksisterende port

33 SYN (SYNCHRONIZE) flagg zSynkronisering av sekvens nummer ifm initiering av en forbindelse zAvsender sender et SYN segment som inneholder ”initial sequence number” zMottaker returnerer et syn segment som også inneholder ”initial sequence number”

34 FIN flagg zIndikerer at forbindelsen skal kobles ned, dvs det skal ikke overføres flere data zTCP avslutter forbindelsen zTCP foretar en såkalt ”half close” når en forbindelse kobles ned zDette betyr at selv om den ene siden har sendt FIN kan fortsatt den andre siden sende data

35 TCP - Sekvens opp- /nedkobling RFC793 SYN SYN, ACK ACK FIN ACK SYN, detaljer FIN ACK detaljer Sekvens detaljer - Data - FIN

36 TCP half close FIN ACK FIN DATA Applikasjon avslutter Applikasjon sender data Applikasjon leser data

37 TCP Mekanismer (1) zOppsett yThree way handshake yMellom to porter (source og destination port) zData transfer yLogisk strøm av oktetter yOktettene er nummerert modulo 2 23 yFlyt kontroll basert på kreditt av nummer av oktetter yData buffres hos avsender og mottaker

38 TCP Mekanismer (2) zNedkobling yGraceful close yTCP bruker sender CLOSE primitive yTransport entity setter FIN flagg på siste segment som sendes yABORT primitive xAll sending og mottak av data opphører xRST sendes

39 Implementeringsopsjoner zSend zDeliver zAccept zRetransmit zAcknowledge

40 Sending av data zHvis ikke PUSH flagget er satt kan TCP sende data når den synes det “passer” zData buffres i et sende buffer zKan vente med å sende til den har fått en viss mengde data

41 Levering av data zHvis ikke PUSH flagg, levere når det passer zKAn levere data etter hvert som den mottar segmenter zKan lagre data i et buffer før det sendes videre

42 Aksept av mottatte data zSegments kan ankomme ute av sekvens zSegmenter yAkseptere kun segmenter i riktig rekkefølge yForkaste segmenter som ikke kommer i riktig rekkefølge zInnenfor vindusstørrelsen yAkseptere alle segmenter innenfor mottakervindu

43 Retransmisjon zTCP vedlikeholder en kø av de segmenter som er sendt og som ikke det er mottatt ack på zTCP vil retransmittere hvis det ikke er mottatt ACK innen en viss tid

44 Acknowledgement zØyeblikkelig zKumulative, dvs mottar flere segmenter før ACK sendes

45 TCP Slow Start zAlgoritme som skal sørge for at TCP tilpasser seg overføringskapasiteten i nettet zKalles ”Congestion window” eller cwnd zEr initielt satt til et segment hvor størrelsen av segmentet er den segmentstørrelsen som er annonsert av mottakeren zHver gang en ACK mottas økes cwnd med 1

46 UDP zUser datagram protocol zRFC 768 zForbindelsesløs tjeneste yDet settes ikke opp noen forbindelse mellom avsender og mottaker som med TCP yUpålitelig yGaranterer ikke at data kommer frem zLite overhead

47 UDP og fragmentering zEt UDP datagram resulterer hos avsender i et IP datagram zEt IP datagram kan imidlertid bli fragmentert dersom MTU (Maximum Transfer Unit) er mindre enn størrelsen på IP datagrammet zDette settes i sammen hos mottakeren, men hvis det er feil forkastes alle fragmenter zIP ber ikke om retransmisjon, og heller ikke UDP zTjenesten som benytter UDP må derfor ta ansvar for all retransmisjon

48 UDP - User Datagram Protocol UDP Header Source PortDestination Port RFC768 Eksempel UDP length UDP length = lengden av hele datagrammet UDP checksum UDP checksum = sjekksum av hele datagrammet

49 DNS - Domain Name System zMapper mellom hostnavn og IP-adresse (og omvendt) zBenyttes av TCP/IP applikasjoner zDistribuert, hierarkisk zBenytter både TCP og UDP som transport, port nummer 53 zEksempler yDNS QueryDNS Query yDNS ReplyDNS Reply RFC1034RFC1034, RFC1035RFC1035

50 DNS - Domain Name System RFC1034RFC1034, RFC1035RFC1035 zDistribuert yIngen navneserver har lagret all informasjon yEt nett (firma, organisasjon o.l) har en eller flere navneservere xInneholder hele eller deler av egne definisjoner xHåndterer også forespørsler utenfra zHierarkisk yHvis egen server ikke har nødvendig informasjon, sendes forespørselen til nivået over yEt overliggende nivå vil gjenkjenne nok til å kunne velge underliggende nivå for forespørsel.

51 DNS - Domain Name System RFC1034RFC1034, RFC1035RFC1035 Top Level Domains Second Level Domains Unnamed root IN- ADDR YAHOO PEOPLE NO SCANDPOWER WWW Generic DomainsCountry Domains ARPA - Special Domain for address-to-name mappings COMEDUGOVMILNETORGARPAAENOZW

52 DNS - Domain Name System RFC1034RFC1034, RFC1035RFC1035 zResultat fra en ekstern forespørsel kan lagres i lokal navneserver til senere bruk zEn DNS respons vil inneholde informasjon om kilden er autoritativ eller ikke.

53 ARP – Address Resolution Prottocol N:\>arp -a Interface: on Interface 0x2 Internet Address Physical Address Type da-4f-31-8c dynamic c-8e dynamic fe-29 dynamic N:\>arp -a Internet Address Physical Address Type b0-3d dynamic a dynamic c ce dynamic da-4f-31-8c dynamic c-8e dynamic fe-29 dynamic

54 SNMP zSimple Network Management Protocol

55 55 Network Management Model Request Response Unsolicited trap ManagerAgent Network Management Station Network Management ProtocolManaged Node (Management Information)

56 56 Managed Nodes  Hosts  WS, PC, Terminal Server, Printer  Routers  Media Devices  Bridge, HUB, Repeater, SDH equipment

57 57 Managed Node Komponenter Management Protocol “Useful” Protocols “Hooks” (Management Instrumentation) Network

58 58 Network Management Agent  Protokoll maskin  implementerer Network Management protokollen  “peer”-prosess med Manager applikasjonen  Management profil  autentisering og aksesskontroll  MIB View

59 59 Administrativt Rammeverk  SNMPv1 definerer en community som en relasjon mellom en Manager og en Agent  Implementert som en string som overføres (i klartekst) i hver SNMP melding  Autorisasjon skjer via comunity string og transport adresse til Manager  Aksesskontroll til Managed Objects håndteres via MIB views

60 60 Network Management Station  Overvåking og kontroll  protokollmaskin tilsvarende agentene  Network Operations Centre  Network Management Functions  FCAPS (Fault-, Configuration-, Accounting-, Performance-, og Security Management)

61 61 Structure of Management Information (SMI)  Spesifiserer hvordan Management Informasjonen er strukturert - ASN.1  Spesifiserer internet sub-treet i det globale treet  Definerer datatyper som kan benyttes  Definerer regler for MIB dokumenter  Definerer format for definisjon av Managed Objects

62 62 SNMPv1 RFCs  rfc Structure and Identification of Management Information for TCP/IP based Internets  rfc1156/ Management Information Base for Network Management of TCP/IP based Internets  rfc Simple Network Management Protocol

63 63 SNMP protokollen  Baserte seg på Simple Gateway Monitor Protocol (SGMP)  SNMP ble Internet standard i 1990  Hovedhensikten var å lage en enkel management protokoll som krever få ressurser av utstyret den implementeres i  Benytter UDP som transportprotokoll

64 64 SNMP Operasjoner  SNMPv1 omfatter få operasjoner:  Get  GetNext  Set  Trap  SNMPv1 omfatter kun en svarmelding:  GetResponse

65 65 SNMP protokollen ManagerAgent GetRequest, GetNextRequest, SetRequest GetResponse Trap Port 161 Port 162

66 66 SNMP innkapsling LLC/MAC header IP header UDP header SNMP melding LLC/MAC trailer Data Link nivåNettverks- nivå Transport- nivå Applikasjons- nivå SNMP innkapsling:

67 67 SNMPv1 melding En SNMPv1 melding består av 3 deler: Versjons nummer Community string En av de 5 SNMP PDUene

68 68 SNMPv1 PDU PDU type Request Id Error status Error index Variable Bindings name1:value1name2:value

69 69 SNMPv1 Trap PDU PDU type enterpriseagent address generic trap type specific trap type timestampvariable bindings name1 : value1name2 : value

70 Distribuert Network Management kongigurasjon


Laste ned ppt "Datakommunikasjon Høsten 2001 Forelesning nr 10, 29. oktober 2001 Chapter 17 Transport Protocols + DNS og SNMP."

Liknende presentasjoner


Annonser fra Google