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

Datakommunikasjon Høsten 2001

  • Upload
    karis

  • View
    35

  • Download
    1

Embed Size (px)

DESCRIPTION

Datakommunikasjon Høsten 2001. Forelesning nr 10, 29. oktober 2001 Chapter 17 Transport Protocols + DNS og SNMP. Øvingsoppgaver. Ingen Obligatorisk oppgave nr 2 deles ut onsdag 31. oktober. Innleveringsfrist onsdag 14. oktober Prøveekasamen deles ut mandag 19. november - PowerPoint PPT Presentation

Citation preview

Page 1: Datakommunikasjon  Høsten 2001

Datakommunikasjon Høsten 2001

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

Page 2: Datakommunikasjon  Høsten 2001

ØvingsoppgaverIngenObligatorisk oppgave nr 2 deles ut onsdag

31. oktober. Innleveringsfrist onsdag 14. oktoberPrøveekasamen deles ut mandag 19.

novemberGjennomgang onsdag 28. november

Eksamen tirsdag 4. desember

Page 3: Datakommunikasjon  Høsten 2001

Pensum Chapter 19 Distributed Applications

Følgende er IKKE pensum:Kapittel 19.1 ASN.1

Forelesning 12. november: Network Security (selvkomponert)

Forelesning 19. november: Repitisjon

Page 4: Datakommunikasjon  Høsten 2001

Dagens tekst:TransportlagetTCP – Transmission Control ProtocolUDP – User Datagram ProtocolDNS – Domain Name SystemSNMP – Simple Network Management

Protocol (?)

Page 5: Datakommunikasjon  Høsten 2001

TCP – Transmission Control Protocol

Page 6: Datakommunikasjon  Høsten 2001

Kommunikasjonslagene (referert til OSI)

Application

Presentation

Session

Ethernet

IPARP

ICMP

TCP UDP

Network

Transport

Data Link

Physical

Application

Transport

Network

Data LinkPPP

FTP HTTP

DNS

OSIInternet-TCP/IP

SMTP

Page 7: Datakommunikasjon  Høsten 2001

TCP & UDPTransmission Control Protocol

Forbindelsesorientert RFC 793

User Datagram Protocol (UDP) Forbindelsesløs (datagram tjeneste) RFC 768

Page 8: Datakommunikasjon  Høsten 2001

Eks. på brukere av TCPTelnet

port 23FTP (File Transfer Program)

port 20 og 21SMTP (Simple Mail Transfer Program)

port 25DNS (Domain Name System)

port 53HTTP (WEB-trafikk)

port 80

Page 9: Datakommunikasjon  Høsten 2001

Eks. på brukere av UDPTFTP (Trivial File Transfer Protocol)

port 69DHCP (Dynamic Host Configuration

Protocol) port 67 og 68

NTP (Network Time Protocol) port 123

DNS (Domain Name Sytem) port 53

Page 10: Datakommunikasjon  Høsten 2001

Sockets begrepetSending socket

Avsender IP-adresse + port nummer

Receiving socket Mottaker IP-adresse + port nummer

Benyttes ifm API-er API-Application Program Interface

Page 11: Datakommunikasjon  Høsten 2001

TCP TCP overfører data mellom en klient og en tjener

(client/server) Data overføres i segmenter Brukerene av TCP leverer data som en strøm av

data (stream oriented) TCP sørger for feilretting og at data leveres

videre til brukeren av TCP i korrekt rekkefølge Forbindelsesorientert

Oppkoblingsfase Dataoverføringsfase Nedkoblingsfase

Page 12: Datakommunikasjon  Høsten 2001

TCP streams og segmenter

TCP TCP

A B

Segmenter

Stream Stream

Page 13: Datakommunikasjon  Høsten 2001

TCP pakke

Page 14: Datakommunikasjon  Høsten 2001

Oppgaver til TCPAdresseringMultipleksing, en TCP prosess må kunne

håndtere flere applikasjonerFlytkontrollFeilkontrollOpp og nedkobling

Page 15: Datakommunikasjon  Høsten 2001

AdresseringApplikasjon adresseres med:

host, port• Kalles en socket i TCP

Port representerer en bruker av TCP, dvs en applikasjon

Transport entity identifikasjon• TCP og UDP

Host og nettverksadresse, dvs IP-adresse

Page 16: Datakommunikasjon  Høsten 2001

MultipleksingFlere applikasjoner kan benytte samme

transport protokollApplikasjon identifiseres med port

nummer eller service access point (SAP)

Page 17: Datakommunikasjon  Høsten 2001

FlytkontrollVariabel transmissjonsforsinkelse

Vanskeligjør bruk av timere

Må ha flytkontroll pga at: Mottaker ikke kan motta data så raskt som

avsender sender

Resulterer i buffere som fylles

Page 18: Datakommunikasjon  Høsten 2001

Håndtering av krav til flytkontroll (1)Gjør ingenting

Segmenter kastes Avsender vil ikke motta ACK og vil

retransmittereResulterer i mer inndata

Avise segmenter når buffer er fullt Trigger flytkontroll på lavere lag. Hvis flere transportforbindelser er multiplekset

over en enkelt nettverksforbindelse foregår flytkontrollen “summen” av alle transportforbindelsene

Page 19: Datakommunikasjon  Høsten 2001

Håndtering av krav til flytkontroll (2)Bruke av fast sliding window protokoll

Fungerer bra i pålitelige nettManglende mottak av ACK håndteres som flytkontroll

Fungerer dårlig i upålitelige nettKan ikke skille mellom tapte pakker og flytkontroll

Bruk av “credit scheme”

Page 20: Datakommunikasjon  Høsten 2001

Credit SchemeVindusstørrelse og ACK er ikke lenger

koblet sammen Kan gi ACK uten å gi kreditt og vice versa

Hver oktett har et sekvensnummerHvert transport segment har sekvens

nummer, ack nummer og vindusstørrelse i header

Page 21: Datakommunikasjon  Høsten 2001

TCP oppkoblingMaskin A Maskin B

TID

SYN (SYNchronize sequence numbers)

SYN, ACK

ACK

Kalles for: Three-way handshake

Page 22: Datakommunikasjon  Høsten 2001

TCP sekvens nummerMaskin A Maskin B

TID

SYN=1, Sequence=X

SYN=1, ACK=1, Sequence=Y, Ack no=X+1

ACK=1, Ack no=Y+1

Page 23: Datakommunikasjon  Høsten 2001

Credit Allocation

Page 24: Datakommunikasjon  Høsten 2001

Sending and Receiving Perspectives

Page 25: Datakommunikasjon  Høsten 2001

Three WayHandshake:Examples

Page 26: Datakommunikasjon  Høsten 2001

Three Way Handshake:State Diagram

Page 27: Datakommunikasjon  Høsten 2001

Netstat –s (gir protokollstatistikk)

TCP Statistics

Active Opens = 696

Passive Opens = 39

Failed Connection Attempts = 46

Reset Connections = 363

Current Connections = 3

Segments Received = 265696

Segments Sent = 275847

Segments Retransmitted = 285

Page 28: Datakommunikasjon  Høsten 2001

TCP - Transmission Control Protocol

Source Port

TCP Header

Destination Port

Sequence Number

Acknowledge Number

Header Length Reserved

URG

ACK

PSH

RST

SYN

FIN

Window Size

TCP Checksum Urgent Pointer

Options

RFC793

Page 29: Datakommunikasjon  Høsten 2001

URG (Urgent mode) flaggUrgent mode

Gir mulighet for den ene part å fortelle at ”urgent data” er sent innimellom den normale datastrømmen

Urgent mode aktiveres ved å URG bit settes = 1 16 bir urgent pointer settes til et positivt offset Urgent data befinner er da i de oktettene som

angis av sequence number + urgent pointer offset

Benyttes av telnet, rlogin og FTP.

Page 30: Datakommunikasjon  Høsten 2001

ACK – Acknowledge numberBenyttes til å si at dette er kvittering for

mottatte data

Page 31: Datakommunikasjon  Høsten 2001

PSH (PUSH) flaggAvsender side:

Brukeren 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.

Mottaker side: TCP skal sende de mottatte data umiddelbart

til brukeren av TCP

Eksempel på bruk er telnet

Page 32: Datakommunikasjon  Høsten 2001

RST (RESET) flaggRESET flagg benyttes til å

resette en forbindelse avbryte en forbindelse

Oppsett til en ikke eksisterende port TCP sender RESET UDP sender ICMP port unreachable

Eksempel telnet til en ikke eksisterende port

Page 33: Datakommunikasjon  Høsten 2001

SYN (SYNCHRONIZE) flaggSynkronisering av sekvens nummer ifm

initiering av en forbindelseAvsender sender et SYN segment som

inneholder ”initial sequence number”Mottaker returnerer et syn segment som

også inneholder ”initial sequence number”

Page 34: Datakommunikasjon  Høsten 2001

FIN flaggIndikerer at forbindelsen skal kobles ned,

dvs det skal ikke overføres flere dataTCP avslutter forbindelsenTCP foretar en såkalt ”half close” når en

forbindelse kobles nedDette betyr at selv om den ene siden har

sendt FIN kan fortsatt den andre siden sende data

Page 35: Datakommunikasjon  Høsten 2001

TCP - Sekvens opp- /nedkobling

RFC793

SYN

SYN, ACK

ACK

FIN

ACK

ACK

SYN, detaljer

FIN ACK detaljer

Sekvens detaljer

- Data -

FIN

Page 36: Datakommunikasjon  Høsten 2001

TCP half close

FIN

ACK

ACK

FIN

DATA

Applikasjon avslutter

Applikasjon senderdataApplikasjon leser

data

Page 37: Datakommunikasjon  Høsten 2001

TCP Mekanismer (1)Oppsett

Three way handshake Mellom to porter (source og destination port)

Data transfer Logisk strøm av oktetter Oktettene er nummerert modulo 223

Flyt kontroll basert på kreditt av nummer av oktetter

Data buffres hos avsender og mottaker

Page 38: Datakommunikasjon  Høsten 2001

TCP Mekanismer (2)Nedkobling

Graceful close TCP bruker sender CLOSE primitive Transport entity setter FIN flagg på siste

segment som sendes ABORT primitive

All sending og mottak av data opphørerRST sendes

Page 39: Datakommunikasjon  Høsten 2001

ImplementeringsopsjonerSendDeliverAcceptRetransmitAcknowledge

Page 40: Datakommunikasjon  Høsten 2001

Sending av dataHvis ikke PUSH flagget er satt kan TCP

sende data når den synes det “passer”Data buffres i et sende bufferKan vente med å sende til den har fått en

viss mengde data

Page 41: Datakommunikasjon  Høsten 2001

Levering av dataHvis ikke PUSH flagg, levere når det

passerKAn levere data etter hvert som den

mottar segmenterKan lagre data i et buffer før det sendes

videre

Page 42: Datakommunikasjon  Høsten 2001

Aksept av mottatte dataSegments kan ankomme ute av sekvensSegmenter

Akseptere kun segmenter i riktig rekkefølge Forkaste segmenter som ikke kommer i riktig

rekkefølge

Innenfor vindusstørrelsen Akseptere alle segmenter innenfor

mottakervindu

Page 43: Datakommunikasjon  Høsten 2001

RetransmisjonTCP vedlikeholder en kø av de segmenter

som er sendt og som ikke det er mottatt ack på

TCP vil retransmittere hvis det ikke er mottatt ACK innen en viss tid

Page 44: Datakommunikasjon  Høsten 2001

AcknowledgementØyeblikkeligKumulative, dvs mottar flere segmenter

før ACK sendes

Page 45: Datakommunikasjon  Høsten 2001

TCP Slow StartAlgoritme som skal sørge for at TCP

tilpasser seg overføringskapasiteten i nettet

Kalles ”Congestion window” eller cwndEr initielt satt til et segment hvor

størrelsen av segmentet er den segmentstørrelsen som er annonsert av mottakeren

Hver gang en ACK mottas økes cwnd med 1

Page 46: Datakommunikasjon  Høsten 2001

UDPUser datagram protocolRFC 768Forbindelsesløs tjeneste

Det settes ikke opp noen forbindelse mellom avsender og mottaker som med TCP

Upålitelig Garanterer ikke at data kommer frem

Lite overhead

Page 47: Datakommunikasjon  Høsten 2001

UDP og fragmenteringEt UDP datagram resulterer hos avsender i

et IP datagramEt IP datagram kan imidlertid bli fragmentert

dersom MTU (Maximum Transfer Unit) er mindre enn størrelsen på IP datagrammet

Dette settes i sammen hos mottakeren, men hvis det er feil forkastes alle fragmenter

IP ber ikke om retransmisjon, og heller ikke UDP

Tjenesten som benytter UDP må derfor ta ansvar for all retransmisjon

Page 48: Datakommunikasjon  Høsten 2001

UDP - User Datagram Protocol

UDP Header

Source Port Destination Port

RFC768

Eksempel

UDP length

UDP length = lengden av hele datagrammet

UDP checksum

UDP checksum = sjekksum av hele datagrammet

Page 49: Datakommunikasjon  Høsten 2001

DNS - Domain Name System

Mapper mellom hostnavn og IP-adresse(og omvendt)

Benyttes av TCP/IP applikasjoner Distribuert, hierarkiskBenytter både TCP og UDP som

transport, port nummer 53 Eksempler

DNS Query DNS Reply

RFC1034, RFC1035

Page 50: Datakommunikasjon  Høsten 2001

DNS - Domain Name System RFC1034, RFC1035

Distribuert Ingen navneserver har lagret all informasjon Et nett (firma, organisasjon o.l) har en eller flere

navneservere Inneholder hele eller deler av egne definisjoner Håndterer også forespørsler utenfra

Hierarkisk Hvis egen server ikke har nødvendig informasjon,

sendes forespørselen til nivået over Et overliggende nivå vil gjenkjenne nok til å kunne

velge underliggende nivå for forespørsel.

Page 51: Datakommunikasjon  Høsten 2001

DNS - Domain Name System RFC1034, RFC1035

Top Level Domains

Second Level Domains

Unnamed root

IN-ADDR

36

136

69

196

YAHOO

PEOPLE

NO

SCANDPOWER

WWW

Generic Domains Country Domains

ARPA - Special Domain for address-to-name mappings

COM EDU GOV MIL NET ORGARPA AE NO ZW

Page 52: Datakommunikasjon  Høsten 2001

DNS - Domain Name SystemRFC1034, RFC1035

Resultat fra en ekstern forespørsel kan lagres i lokal navneserver til senere bruk

En DNS respons vil inneholde informasjon om kilden er autoritativ eller ikke.

Page 53: Datakommunikasjon  Høsten 2001

ARP – Address Resolution ProttocolN:\>arp -a

Interface: 193.69.136.8 on Interface 0x2

Internet Address Physical Address Type 193.69.136.60 00-50-da-4f-31-8c dynamic 193.69.136.115 08-00-09-70-2c-8e dynamic 193.69.136.133 08-00-09-87-fe-29 dynamic

N:\>arp -a

Internet Address Physical Address Type

193.69.136.34 00-60-b0-3d-82-74 dynamic 193.69.136.54 00-10-5a-66-21-78 dynamic 193.69.136.56 00-00-0c-76-55-ce dynamic 193.69.136.60 00-50-da-4f-31-8c dynamic 193.69.136.115 08-00-09-70-2c-8e dynamic 193.69.136.133 08-00-09-87-fe-29 dynamic

Page 54: Datakommunikasjon  Høsten 2001

SNMPSimple Network Management Protocol

Page 55: Datakommunikasjon  Høsten 2001

55

Network Management Model

Request

Response

Unsolicited trap

Manager Agent

Network ManagementStation

Network Management Protocol Managed Node

(Management Information)

Page 56: Datakommunikasjon  Høsten 2001

56

Managed Nodes

Hosts WS, PC, Terminal Server, Printer

RoutersMedia Devices

Bridge, HUB, Repeater, SDH equipment

Page 57: Datakommunikasjon  Høsten 2001

57

Managed Node Komponenter

Management Protocol

“Useful”Protocols

“Hooks”(ManagementInstrumentation)

Network

Page 58: Datakommunikasjon  Høsten 2001

58

Network Management Agent

Protokoll maskin implementerer Network Management protokollen “peer”-prosess med Manager applikasjonen

Management profil autentisering og aksesskontroll MIB View

Page 59: Datakommunikasjon  Høsten 2001

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

Page 60: Datakommunikasjon  Høsten 2001

60

Network Management Station

Overvåking og kontroll protokollmaskin tilsvarende agentene

Network Operations CentreNetwork Management Functions

FCAPS (Fault-, Configuration-, Accounting-, Performance-, og Security Management)

Page 61: Datakommunikasjon  Høsten 2001

61

Structure of Management Information (SMI)Spesifiserer hvordan Management

Informasjonen er strukturert - ASN.1Spesifiserer internet sub-treet i det globale treetDefinerer datatyper som kan benyttesDefinerer regler for MIB dokumenterDefinerer format for definisjon av Managed

Objects

Page 62: Datakommunikasjon  Høsten 2001

62

SNMPv1 RFCs

rfc1155 - Structure and Identification of Management Information for TCP/IP based Internets

rfc1156/1213 - Management Information Base for Network Management of TCP/IP based Internets

rfc1157 - Simple Network Management Protocol

Page 63: Datakommunikasjon  Høsten 2001

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

Page 64: Datakommunikasjon  Høsten 2001

64

SNMP Operasjoner

SNMPv1 omfatter få operasjoner: Get GetNext Set Trap

SNMPv1 omfatter kun en svarmelding: GetResponse

Page 65: Datakommunikasjon  Høsten 2001

65

SNMP protokollen

Manager Agent

GetRequest,GetNextRequest,SetRequest

GetResponse

Trap

Port 161

Port 162

Page 66: Datakommunikasjon  Høsten 2001

66

SNMP innkapsling

LLC/MACheader

IPheader

UDPheader

SNMPmelding

LLC/MACtrailer

Data Link nivå Nettverks-nivå

Transport-nivå

Applikasjons-nivå

SNMP innkapsling:

Page 67: Datakommunikasjon  Høsten 2001

67

SNMPv1 melding

En SNMPv1 melding består av 3 deler:

Versjonsnummer

Communitystring

En av de 5SNMP PDUene

Page 68: Datakommunikasjon  Høsten 2001

68

SNMPv1 PDU

PDUtype

RequestId

Errorstatus

Error index

VariableBindings

name1:value1 name2:value2 .........

Page 69: Datakommunikasjon  Høsten 2001

69

SNMPv1 Trap PDU

PDUtype

enterprise agentaddress

generictrap type

specifictrap type

timestamp variablebindings

name1 : value1 name2 : value2 .........

Page 70: Datakommunikasjon  Høsten 2001

Distribuert Network Management kongigurasjon