Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
acuradiMatteoBusi
Introduzione Cos'IP?
L'IP(InternetProtocol)ilprotocollodellivellodirete(livello3,ostratointernet)dellostack TCP/IP(lavoraquindisuretiacommutazionedipacchetto). IPunprotocolloinstradabile,nonconnessoenonaffidabilechesioccupaditrasmettereblocchidi datidatagrampacketsdalmittenteadestinatario,entrambiidentificatidaindirizziunivocialivello mondiale. Ilprotocollofornisceanchefunzionalitperlaframmentazione(edilconseguenteriassemblaggio)di pacchettigrandi.
IPv6
IPv6l'evoluzionenonretrocompatibiledelprotocolloIPv4efornisce,oltreadunpigrandepool diindirizzi,ancheunmaggiornumerodifunzionalitavanzateemiglioreefficienza.
MotivazionidiIPv6
IPv6unaggiornamentoadIPv4introdottopersopperireadalcunelimitazioniintrinsechenel vecchiostandard: Modificheagliindirizziinterminididimensione,funzionalitenotazione; Aumentodeipossibilidifferentiindirizzirispettoallaversioneprecedente,sipassada 32bit(~4mlddiindirizzi=2bit)a128bit(2128indirizzi).All'epocadellastesuradel protocolloIP(secondolaRFC791nelsettembredel1981),infatti,nonsivedevala necessitdiutilizzareungrandenumerodibitperl'identificazionedellestazioni,in quantononsiprevedevaunadiffusionedelprotocolloIPall'esternodiambitiaccademici
Modifichealformatodell'header,snellitoedottimizzatoperoccuparemenospazioerendere piveloceilrouting;
IndirizziIPv6
GliindirizziIPv6,comegiaccennato,sonounadellepigrandiinnovazioniintrodottedaIPv6. Ilnuovoformatodell'indirizzoidentificativoIPv6prevedeunalunghezzadi128bit(16byte)conuna numerositdell'insiemedegliindirizzidell'ordinedi1038. Tipologie EsistonodifferentitipologiediindirizziinIPv6: Indirizziditipounicast,cioindirizzisingolichepossonoessereperusolocale(i pacchettinonpassanodalrouter)oppureglobale; Indirizziditipomulticast,cioidentificantiungruppodistazioni; Indirizziditipoanycast,introdottipropriodaIPv6chevengonoassegnatiapistazioni nellostessomomento; Notazione IPv6introduceunanuovanotazionedegliindirizzi,infatti,ogniindirizzo,comegiaccennato, rappresentatocome8gruppidi4cifreesadecimaliseparatedaduepunti(:). PoichinIPv6esistonomoltiindirizzichecontengonoungrandenumerodizeri,esistono abbreviazioniperscriverepiagevolmentegliindirizzi: Intuttieottoicampisipossonoometteregli0iniziali,apattochenelcamposiacontenuta almenounacifraesadecimale; Picampia16bitdizeripossonoesseresostituitidalsimbolo::apattochesianoconsecutivied unasolavoltaperogniindirizzo;
SeunindirizzoIPv6haiprimi96bita0sidicechecompatibileconIPv4e,quindi,gliultimi 32bitpossonoesserescritticonlanotazionedecimalepuntatatradizionalediIPv4;
IlpacchettodiIPv6
Unpacchetto,inIPv6l'unitminimatrasmissibileattraversoIPeconsisteinunheader(di40byte+) edinuncorpo(opayload,almassimolungo65536byte). HeaderdiIPv6 L'headerdiIPv6coscostituito:
Version4bit:riportailvalorecostante6epermetteairouterdiriconoscerelaversionedel protocollo(utilesoprattuttoduranteloswitchoffdiIPv4); Trafficclass(oPriority)4bit:Sitrattadellaprioritdelpacchetto,valoribassi(tra0ed7) indicanocheilpacchettopuessererallentatoincasodicongestione;Valoripigrandi indicanotrafficointemporealeadaltapriorit(comeaudioevideoinstreaming); Flowlabel3byte:E'unidentificatoredellapseudoconnessione,unadellefunzionalit introdottedaIPv6(trattatainmodopispecificonell'appositasezione); PayloadLenght2byte:E'lalunghezzadelcaricodelpacchettoIPv6,esclusa l'intestazione; Nextheader1byte:Indicailtipodellasuccessivaopzioneall'internodell'header,nelcaso noncisianoopzioniassumeilvaloreidentificativodelprotocollocheIPstatrasportando(TCP, UDP,ecc...); Hoplimit1byte:IlsuccessoredelTTL(Timetolive),indicaperquantotempopotr sopravvivereilpacchettoprimadiesserescartato; Source&Destinationaddress16byte:IndirizziIPdellestazioniincomunicazione;
Ilcompitodelnodocheanalizzerilpacchettosardiinterpretareicontenutidellevarieoptions. UnnodofullIPv6deveessereingradodiinterpretareleseguentioptions: HopbyHopOptions(0):Opzionichedevonoessereletteatuttiirouterduranteilpercorso delpacchetto,attualmenteutilizzatasoloinpacchetticonpayloadmoltograndi(>64KB)detti Jumbograms; Routing(43):Rappresentailpercorsocheilpacchettodeveseguire(Strictrouting)oppureuna listadirouterdaattraversare(Looserouting); Fragment(44):Contienetuttiicampinecessariallaframmentazionecontenutinell'headerIPv4 (MF,FragmentOffset,Identification)InIPv6sologliHostpossonoframmentareipacchetti inmododavelocizzareilrouting; DestinationOptions(60):Contieneleopzionichedevonoessereanalizzatesolodal destinatariodelpacchettoedevonoessereignoratedairouter;
Esistonoancheleopzioniperl'autenticazioneelasegretezza,trattatenellasezioneFunzionalit avanzate. Funzionalitavanzate IlprotocolloIPv6forniscealcunefunzionalitavanzatenonpresentiinIPv4,chepermettonouna miglioregestionedeidatisiadalpuntodivistadell'efficienzasiadalpuntodivistadellasicurezza. FlowLabels Leflowlabelssonocampiall'internodell'headerdiIPv6createpergestiredellepseudoconnessioni traduedifferentistazioni. LaRFC(datata1998)esprimeilconcettodiFlowLabelcomeun'ideasperimentalecheverr promossaastandardasecondadelleevoluzioniperlagestionedeiflowininternet:
[...] This aspect of IPv6 is, at the time of writing, still experimental and subject to change as the requirements for flow support in the Internet become clearer. Hosts or routers that do not support the functions of the Flow Label field are required to set the field to zero when originating a packet, pass the field on unchanged when forwarding a packet, and ignore the field when receiving a packet. - RFC 2460 Section 6.