Docstoc

PPT Slides - CARNet

Document Sample
PPT Slides - CARNet Powered By Docstoc
					RAČUNALNE MREŽE
              Uvod
 Arhitektura računalnih mreža
         Fizička razina
       Podatkovna razina
         Mrežna razina
      Prijenosna razina
    RAČUNALNE MREŽE
   Prijenosna razina
    •   Uvod
    •   UDP protokol interneta
    •   TCP protokol interneta
        Prijenosna razina
   Uvod
       osigurava prijenos poruke među krajnjim korisnicima
       na ovoj razini optimalno je organizirati
            kontrolu pogreški
            kontrolu toka
    Prijenosna razina
   Uvod
       kontrola pogreški
            podaci su spremljeni u memoriji krajnjeg uređaja do potvrde
             prijema
            ponovno se šalju (retransmisija) bez opterećenja čvorišta mreže
            retransmisija „samo‟ opterećuje kapacitet kanala




                     1    2   3



                          3
    Prijenosna razina
   Uvod
       kontrola toka
            podaci se kod zagušenja ne šalju na mrežu
            broj paketa na mreži ostaje optimalan
            potrebna snaga obrade u čvorištima je minimalna
        Prijenosna razina
   Uvod
       Prijenosna razina Interneta
            dominantna globalna mreža za prijenos podataka
            nudi korisnicima na prijenosnoj razini dva protokola
                  bespojni UDP (User Datagram Protocol)
                  spojevni TCP (Transmission Control Protocol).
        Prijenosna razina
   Adresiranje na prijenosnoj razini interneta
       Zaglavlje IP protokola mrežne razine
            nosi IP adresu odredišta i izvorišta
            identifikaciju protokola prijenosne razine
       Zaglavlje protokola prijenosne razine
            nosi brojeve priključnih točaka (port) izvorišta i odredišta
            IP adresa i broj priključne točke čine priključnicu (socket)
             izvorišta ili odredišta
            dvije priključnice identificiraju tok podataka, odnosno vezu
             (connection)
        Prijenosna razina
   Adresiranje na prijenosnoj razini interneta
       Uspostava veze
            s kraja na kraj mreže uspostava veze je moguća na principu
             unaprijed poznatih priključnih točaka
            u sustavu korisnik-poslužitelj
                 korisnik uvijek traži uslugu od poslužitelja
                 poslužiteljskim procesima se dodjeljuju unaprijed poznate
                  (standardne) priključne točke
   Prijenosna razina
                                                        Poslužitelj:
                     10.1.1.5 10.1.100.5        ?   ?   WEB
                                                        TELNET
    IBM Compatible
                                                        FTP            IBM Compatible


                                           IP
10.1.1.5                                                        10.1.100.20
   Prijenosna razina
                                                     Poslužitelj:
                     10.1.1.5 10.1.100.5 2345   80   WEB
                                                     TELNET
    IBM Compatible
                                                     FTP            IBM Compatible


                                       IP
10.1.1.5                                                     10.1.100.20

  10.1.100.5           10.1.1.5   80 2345
                       65535                                                    65535


                       2345


                       1023                                                     1023
                       255                                                      255
                                                     80
Prijenosna razina
/etc/services

tacacs      49/tcp     # Login Host Protocol (TACACS)
tacacs      49/udp     # Login Host Protocol (TACACS)
re-mail-ck   50/tcp     # Remote Mail Checking Protocol
re-mail-ck   50/udp     # Remote Mail Checking Protocol
domain       53/tcp     # name-domain server
domain       53/udp
whois++       63/tcp
whois++       63/udp
bootps      67/tcp     # BOOTP server
bootps      67/udp
bootpc       68/tcp    # BOOTP client
bootpc       68/udp
tftp       69/tcp
tftp       69/udp
gopher       70/tcp    # Internet Gopher
gopher       70/udp
         Prijenosna razina
   UDP protokol
        korisniku pruža uslugu prijenosa podataka bez
         uspostave logičkog kanala
        podaci se tretiraju kao kratke poruke, datagrami
        na korisniku je osiguranje konzistentnosti poruke
        koriste ga NFS i DNS mrežne usluge
        zaglavlje UDP protokola je
     0                7 8            15 16             23 24               31
              Izvorišna priključna            Odredišna priključna točka
                    Duljina                       Kontrolna suma
                                     Podaci
Prijenosna razina
   UDP protokol
      Izvorišna priključna točka (source port)

            označava proces ili uslugu koji šalju datagram
            kad se ne koristi, popuni se nulama




0                7 8              15 16              23 24               31
         Izvorišna priključna               Odredišna priključna točka
               Duljina                          Kontrolna suma
                                  Podaci
Prijenosna razina
   UDP protokol
      Odredišna priključna točka (destination port)

            označava proces ili uslugu kojoj se šalje datagram




0                7 8              15 16              23 24               31
         Izvorišna priključna               Odredišna priključna točka
               Duljina                          Kontrolna suma
                                  Podaci
    Prijenosna razina
       UDP protokol
          Duljina (length)

                označava ukupnu duljinu datagrama u oktetima
                      uključuje zaglavlje i podatke
                      minimalna duljina je 8 okteta.




0                 7 8                   15 16                23 24               31
          Izvorišna priključna                      Odredišna priključna točka
                Duljina                                 Kontrolna suma
                                        Podaci
        Prijenosna razina
   UDP protokol
       Kontrolna suma (Checksum)
               zaštitno polje je komplement sume komplementa 16 bitnih
                riječi svih podataka i UDP zaglavlja uključujući i dio IP zaglavlja
                (pseudo zaglavlje)
               ako se ne koristi popuni se nulama
               ako je 0, popuni se jedinicama
               pseudo zaglavlje
        0                7 8               15 16              23 24       31
                                      izvorišna IP adresa
                                      odredišna IP adresa
                  nule          protokol                    UDP duljina
      Prijenosna razina
   UDP protokol
        Prijenosna razina
   TCP protokol
       pruža uslugu sigurnog prijenosa podataka
        s uspostavom logičkog kanala
       prijenos je dvosmjeran
       podaci se tretiraju kao dijelovi dugačkog toka poruke,
        segmenti
       korisniku se (po dijelovima) isporučuje cjelovita poruka
       koriste ga
            korisnički procesi koji zahtijevaju siguran prijenos
            kao što su Telnet, FTP, WWW i SMTP
         Prijenosna razina
  Zaglavlje TCP protokola
 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
             Izvorišna priključna točka                  Odredišna priključna točka
                                          Redni broj
                                         Potvrdni broj
   Pomak          Reserved     UAP R S F                     Prozor prijemnika
  podataka                     R C S S Y I
                               GKH T N N
                  Kontrolna suma                         Pokazivač hitnih podataka
                                  Opcije                                     Nadopuna
                                            Podaci


        Izvorišna priključna točka (Source Port) -
         identificira proces koji šalje podatke.
         Prijenosna razina
  Zaglavlje TCP protokola
 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
             Izvorišna priključna točka                  Odredišna priključna točka
                                          Redni broj
                                         Potvrdni broj
   Pomak          Reserved     UAP R S F                     Prozor prijemnika
  podataka                     R C S S Y I
                               GKH T N N
                  Kontrolna suma                         Pokazivač hitnih podataka
                                  Opcije                                     Nadopuna
                                            Podaci


        Odredišna priključna točka (Destination Port) -
         identificira proces koji prima podatke.
           Prijenosna razina
     Zaglavlje TCP protokola
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
                Izvorišna priključna točka                  Odredišna priključna točka
                                             Redni broj
                                            Potvrdni broj
      Pomak          Reserved     UAP R S F                     Prozor prijemnika
     podataka                     R C S S Y I
                                  GKH T N N
                     Kontrolna suma                         Pokazivač hitnih podataka
                                     Opcije                                     Nadopuna
                                               Podaci


          Redni broj (Sequence Number) - je redni broj početnog
           okteta segmenta
           Prijenosna razina
     Zaglavlje TCP protokola
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
                Izvorišna priključna točka                  Odredišna priključna točka
                                             Redni broj
                                            Potvrdni broj
      Pomak          Reserved     UAP R S F                     Prozor prijemnika
     podataka                     R C S S Y I
                                  GKH T N N
                     Kontrolna suma                         Pokazivač hitnih podataka
                                     Opcije                                     Nadopuna
                                               Podaci

          Potvrdni broj (Acknowledgment Number) - broj
           slijedećeg okteta korisnikove poruke, ujedno i
           kumulativna potvrda
Redni – potvrdni broj


1000   2000   3000   4000   5000   6000

       ……..   4000   3000   ……..




1000   2000   3000   4000   5000
           Prijenosna razina
     Zaglavlje TCP protokola
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
                Izvorišna priključna točka                  Odredišna priključna točka
                                             Redni broj
                                            Potvrdni broj
      Pomak          Reserved     UAP R S F                     Prozor prijemnika
     podataka                     R C S S Y I
                                  GKH T N N
                     Kontrolna suma                         Pokazivač hitnih podataka
                                     Opcije                                     Nadopuna
                                               Podaci


          Pomak podataka (Data Offset) - predstavlja duljinu TCP
           zaglavlja u 32 bitnim riječima
      Prijenosna razina
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
            Izvorišna priključna točka                  Odredišna priključna točka
                                         Redni broj
                                        Potvrdni broj
  Pomak          Reserved     UAP R S F                     Prozor prijemnika
 podataka                     R C S S Y I
                              GKH T N N
                 Kontrolna suma                         Pokazivač hitnih podataka
                                 Opcije                                     Nadopuna
                                           Podaci
             URG segment sadrži hitne podatke
             ACK potvrdni broj je ispravan (mora biti postavljen uvijek, osim
              kod uspostave veze)
             PSH podatke odmah isporučiti korisniku
             RST reinicijalizacija veze, najčešće rezultira raskidom veze
             SYN zahtjev za uspostavom veze
             FIN zahtjev za raskidom veze
           Prijenosna razina
     Zaglavlje TCP protokola
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
                Izvorišna priključna točka                  Odredišna priključna točka
                                             Redni broj
                                            Potvrdni broj
      Pomak          Reserved     UAP R S F                     Prozor prijemnika
     podataka                     R C S S Y I
                                  GKH T N N
                     Kontrolna suma                         Pokazivač hitnih podataka
                                     Opcije                                     Nadopuna
                                               Podaci


          Prozor prijemnika (Window) - u oktetima, 0-65535
           Prijenosna razina
    Zaglavlje TCP protokola
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
                Izvorišna priključna točka                  Odredišna priključna točka
                                             Redni broj
                                            Potvrdni broj
      Pomak          Reserved     UAP R S F                     Prozor prijemnika
     podataka                     R C S S Y I
                                  GKH T N N
                     Kontrolna suma                         Pokazivač hitnih podataka
                                     Opcije                                     Nadopuna
                                               Podaci
          Kontrolna suma (Checksum) - komplement sume
           komplementa 16-bitnih riječi, obuhvaća
                        podatke i zaglavlje
                        dio zaglavlja IP protokola (pseudo zaglavlje)
           Prijenosna razina
    Zaglavlje TCP protokola
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
                Izvorišna priključna točka                  Odredišna priključna točka
                                             Redni broj
                                            Potvrdni broj
      Pomak          Reserved     UAP R S F                     Prozor prijemnika
     podataka                     R C S S Y I
                                  GKH T N N
                     Kontrolna suma                         Pokazivač hitnih podataka
                                     Opcije                                     Nadopuna
                                               Podaci


          Pokazivač hitnih podataka (Urgent Pointer) pokazuje
           gdje se nalaze hitni podaci unutar segmenta
           Prijenosna razina
    Zaglavlje TCP protokola
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
                Izvorišna priključna točka                  Odredišna priključna točka
                                             Redni broj
                                            Potvrdni broj
      Pomak          Reserved     UAP R S F                     Prozor prijemnika
     podataka                     R C S S Y I
                                  GKH T N N
                     Kontrolna suma                         Pokazivač hitnih podataka
                                     Opcije                                     Nadopuna
                                               Podaci


          Opcije (Options)
                 se ugovaraju kod uspostave veze
                 postoji čitav niz opcija, npr. MSS, SACK, ....
          Prijenosna razina
   Zaglavlje TCP protokola
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
               Izvorišna priključna točka                  Odredišna priključna točka
                                            Redni broj
                                           Potvrdni broj
     Pomak          Reserved     UAP R S F                     Prozor prijemnika
    podataka                     R C S S Y I
                                 GKH T N N
                    Kontrolna suma                         Pokazivač hitnih podataka
                                    Opcije                                     Nadopuna
                                              Podaci

         Nadopuna (Padding) - popunjava nulama zaglavlje do
          širine 32-bitne riječi
         Nadopuna (Padding) - popunjava nulama zaglavlje do
          širine 32-bitne riječi
         Podaci (Data) - korisnikovi podaci
        Prijenosna razina
   Zaglavlje TCP protokola
       Pseudo zaglavlje




    0            7 8               15 16             23 24       31
                             izvorišna IP adresa
                             odredišna IP adresa
          nule         protokol                    TCP duljina
               CLOSED                                 LISTEN

korisnik                                                           poslužitelj
              SYN_SENT     SYN k

                                                      SYN_RCVD

                                   SYN,ACK p,k+1

           ESTABLISHED

                            ACK k+1,p+1

                                                       ESTABLISHED

                                    IZMJENA
                                   PODATAKA

               FIN_WAIT1            FIN,ACK k+N,p+M

                                                      CLOSE_WAIT

                             ACK p+M, k+N+1

               FIN_WAIT2    FIN,ACK p+M, k+N+1        LAST_ACK

               TIME_WAIT

                               FIN,ACK k+N+1, p+M+1

                                                       CLOSED
Prijenosna razina
      Prijenosna razina
    Stanja TCP veze
        proces TCP protokola održava niz varijabli
        prolazi kroz niz stanja:
STANJE:        ZNAČENJE:
CLOSED         Veza je neaktivna (raskinuta)
LISTEN         Stanje čekanja zahtjeva za vezu
SYN-SENT       Poslan je zahtjev za vezu; čeka se da druga strana odgovori zahtjevom za vezu
SYN-RECEIVED   Primljen je zahtjev za vezu; čeka se potvrda zahtjeva za vezu
ESTABLISHED    Stanje normalnog prijenosa podataka
FIN-WAIT-1     Odaslan je zahtjev za raskidanje veze
FIN-WAIT-2     Čeka se zahtjev za raskidanje veze od udaljenog TCPa
CLOSE-WAIT     Čekanje na zahtjev za raskidanje veze od lokalnog korisnika
CLOSING        Čeka se potvrda na poslani zahtjev za prekid veze
LAST-ACK       Čeka se potvrda na zahtjev za raskid veze od udaljenog TCPa
TIME-WAIT      Čeka se dva maksimalna vremena života segmenta (MSL), kako bismo se
               uvjerili da su svi zaostali segmenti stigli do udaljenog TCPa. Za to vrijeme se
               ne može ponovo uspostaviti veza izmeĎu ove dvije priključnice.
                                                                                            aktivni OPEN
                                                                                       napravi TCB & šalj i SYN
                                                               CLOSED
                                                                                              CLOSE
                                                                                           izbriši TCB
                                              pasivni OPEN                 CLOSE
                                              napravi TCB                  izbriši
                                                                            TCB

                            prim lj en RST
                                                                LISTEN



                                           prim lj en SYN                            SEND
                                          šalj i SYN,ACK                           šalj i SYN
                   SYN-RCVD                                                                                 SYN-SENT
                                                                  prim lj en SYN
                                                                 šalj i SYN, ACK



                                                                                       prim lj en SYN+ACK
                                    prim lj ena potvrda                                     šalj i ACK
       CLOSE
                                           SYNa             ESTABLISHED
      šalj i FIN




                                CLOSE
                               šalj i FIN                                                prim lj en FIN
                                                                                          šalj i ACK


                                                    Active Close                                                           Passive Close

                           prim lj en FIN
                            šalj i ACK
   FIN-WAIT -1                                     CLOSING                                                CLOSE-WAIT

prim lj ena            prim lj en                           prim lj ena
                      FIN+ACK                                potvrda                                                   CLOSE
 potvrda
                      šalj i ACK                              FINa                                                    šalj i FIN
  FINa


   FIN-WAIT -2                                    TIME-WAIT                                                 LAST ACK
                           prim lj en FIN
                            šalj i ACK


                                          Tim eout = 2MSL
                                               izbriši TCB
                                                                                                prim lj ena potvrda
                                                                                                        FINa
                                                               CLOSED
     Prijenosna razina
   Stanja TCP veze
      Uspostava veze

          kod uspostave veze dva TCP procesa moraju sinkronizirati
           početne redne brojeve
          to obavljaju razmjenom segmenata za uspostavu veze
          ti segmenti nose slučajno odabran kontrolni bit SYN ISN (Initial
           Sequence Number)
          prilikom sinkronizacije
                obje strane moraju poslati svoj ISN
                primiti potvrdu za to od druge strane
        Prijenosna razina
   Stanja TCP veze
       Generator ISN
            najniži se bit uvećava svake 4 s, stoga ISN generator ima
             period od približno 4.55 sata
            pretpostavljamo da segmenti ne mogu ostati u mreži duže od
             MSL (Maximum Segment Life), to je obično oko dvije minute
            možemo smatrati da je ISN jedinstven za promatranu vezu (par
             priključnica)
         Prijenosna razina
   Uspostava     stanje   TCP A                                                 TCP B    stanje

    veze u tri    CLOSED                                                                 LISTEN

    koraka        SYN-SENT
                                                  (SEQ =X
                                                         )(CTL=
                                                               SYN )

                                                                                      SYN-
                                                                ,ACK)
                                                        TL =SY N                    RECEIVED
                                                 X+1)(C
                                          Y)(ACK=
                                    (SEQ =
                 ESTABLISHED
                                                (SEQ =X
                                                       +1)(AC
                                                             K =y+1)
                                                                    (CTL=A
                                                                           CK)
                                                                    TA)              ESTABLISHED
                                                             CK)(D A
                                                  =Y+1)(CTL=A
                                          +1)(ACK
                                   (SEQ =X
                 ESTABLISHED
        Prijenosna razina
   TCP reset veze
       ukoliko se posumnja da je stigao paket zaostao iz
        prethodne veze šalje se upravljačka poruka RESET
       općenito je pravilo da se RESET mora poslati uvijek kada
        stigne segment koji očito nije namijenjen tekućoj vezi
   TCP raskid veze
       Stanica šalje segment s bitom FIN kada korisnik izda
        naredbu CLOSE
       TCP koji pošalje FIN nastavlja primati sve dok ne stigne
        poruka da je i druga strana raskinula vezu
        Prijenosna razina
   TCP prijenos podataka
       u stanju uspostavljene veze prijenos podataka se obavlja
        razmjenom podatkovnih segmenata
       U slučaju gubitka segmenta TCP koristi mehanizam
        retransmisije
   TCP retransmisija - nastaje ako unutar (RTO,
    Retransmission Timeout) vremena ne dođe potvrda
   Na mrežnoj razini
       IP protokol prosljeđuje svaki paket zasebno
       može se dogoditi izmjena redoslijeda pristizanja
        Prijenosna razina
   Računanje vremena retransmisije
       vrijeme retransmisije se računa dinamički zbog
            izmjene redoslijeda isporuke
            raznolikosti mreža u sustavu
            širokog raspona uporabe TCP veza
       kvalitetan proračun tog vremena od ključnog je
        značenja za učinkovitost TCP veze
            kratki RTO izaziva nepotrebne retransmisije
            predugački usporava oporavak od pogreške i
             produljuje ukupno vrijeme prijenosa podataka
        Prijenosna razina
   Filtriranje vremena obilaska
       proračuni se zasnivaju na vremenu potrebnom da stigne
        potvrda za odaslani paket, tj. na vremenu obilaska RTT
        (Round Trip Time)
       RTT se stalno mijenja ovisno o opterećenosti mreže
       za svaku vezu
            TCP mjeri i filtrira vrijeme obilaska
            na osnovi stare vrijednosti RTT i nove vrijednosti M

                RTT = RTT + (1-)M
            to je filtar s eksponencijalnim usrednjavanjem
             je faktor pojačanja, standardne vrijednosti 7/8
        Prijenosna razina
   Računanje devijacije
       Da bi se spriječile
            neželjene retransmisije (kratak RTO)
            predugo čekanje na detekciju gubitka (dugačak RTO)
       računa se devijacija D:

                D = D + (1-) |RTT-M|
       gdje  može, ali i ne mora imati istu vrijednost kao i kod
        proračuna vremena obilaska (RTT)
        Prijenosna razina
   Računanje RTO
       vrijeme retransmisije RTO (čekanja na potvrdu)
       izračuna se prema formuli:

                 RTO = RTT + 4*D
   Iniciranje retransmisije
       načelno nakon isteka RTO vremenskog sklopa
       moguće ubrzanje nakon tri duplicirane potvrde
       ovi algoritmi uključeni su u algoritme kontrole toka
        Prijenosna razina
   Problemi pri računanju vremena RTT
       javljaju se kod ponovo odaslanog segmenta
       kada stigne signal potvrde nije jasno odnosi li se
        on na retransmitirani ili na izvorni segment
       mjerna se vrijednost ignorira
       vrijeme retransmisije se udvostručuje
       mjerenje vremena retransmisije može se
        poboljšati slanjem vremena odašiljanja
        (Timestamp Option)
        Prijenosna razina
   TCP kontrola toka
       TCP koristi gubitak segmenta kao indikaciju
        zagušenja
       održava mrežu u radnoj točki s prosječno punim
        redovima čekanja
       TCP raspolaže s nekoliko algoritama za postupke
        (često mijenjani i nadopunjavani)
            upravljanja prometom
            sprječavanje zagušenja
        Prijenosna razina
   Algoritmi segmentacije
       kod nekih aplikacija uočeno je vrlo neučinkovito
        iskorištenje kanala zbog slanja vrlo kratkih segmenata
       primjer za to je TELNET veza
            koja šalje znak po znak s tipkovnice
            dakle 1 oktet podataka i 40 okteta zaglavlja (20 B TCP zaglavlja
             + 20 B IP zaglavlja) – 2.4% efikasnosti
            često se dešava da u suprotnom smjeru posebno putuje potvrda
            a posebnim segmentom kopija znaka za ispis na ekranu
            te konačno potvrda kopije
        Prijenosna razina
   Algoritmi segmentacije
       1984 je usvojeno adaptivno rješenje (Nagle-ov
        algoritam), slanje novih korisnikovih podataka se
        zadržava
            dok se ne potvrde svi prethodno odaslani segmenti
            dok se ne skupi dovoljno podataka za slanje segmenta
             maksimalne veličine (MSS – Maximum Segment Size)
            nadolazeći korisnikovi podaci mogu se odmah
             proslijediti ili zadržati za kasniju isporuku korisniku
             Prijenosna razina
   Algoritmi segmentacije
       Problem zvan sindrom besmislenih prozora
        (Silly Window Syndrome)
            u početnom stanju spremnik prijemnika je pun i pošiljatelj to zna
             (ima oglašenu veličinu prozora 0)
            kada se iščita jedan oktet na prijamnoj strani odmah se oglašava
             prozor veličine jednog okteta pošiljatelj šalje jedan oktet podataka
            prijemnik nakon RTT
                  potvrđuje 1 oktet
                  dolazi do ponavljanja ciklusa
            ovo rezultira slanjem svih korisnikovih podataka u paketima koji
             sadrže samo po 1 oktet podataka
            rješenje je u sprječavanju prijemnika da oglasi prozor veličine jednog
             okteta
            Nagle-ov i algoritam izbjegavanja besmislenih prozora su integrirani
             Prijenosna razina
   Usporeni start (Slow Start)
       služi za otkrivanje raspoloživog kapaciteta mreže, a
        koristi se
            na početku prijenosa
            kod oporavka od gubitka
       jednostavno se implementira pomoću dvije varijable
            prag usporenog starta SSTHRESH
            prozor zagušenja CWND (Congestion Window)
        Prijenosna razina
   Usporeni start (Slow Start)
       CWND je zapravo radni prozor predajnika - ne može biti
        veći od prozora prijemnika (RWIN, Receiver Window)
       SSTHRESH (Slow Start Threshold) označava vrijednost
            na kojoj veza izlazi iz faze usporenog starta
            i ulazi u fazu izbjegavanja zagušenja
       nakon uspostave veze
            prozor zagušenja CWND se postavlja na jedan segment
             (zapravo na vrijednost MSS okteta)
            SSTHRESH se postavi na početnu vrijednost od 64 kB
             (maksimalna veličina prijemnog prozora udaljenog TCPa)
        Prijenosna razina
   Usporeni start (Slow Start)
       prijenos započinje odašiljanjem jednog segmenta
       kada stigne potvrda prozor zagušenja CWND se poveća za jedan MSS
        (s jednog na dva MSS)
       proces se nastavlja dalje - primitkom svake potvrde CWND se uvećava
        za jedan MSS
       kako je jedna potvrda upravo primljena, za jednu primljenu potvrdu
        šalju se dva nova segmenta
       CWND se udvostručuje primitkom svih potvrda iz prethodnog prozora
       ukoliko je vrijeme obilaska konstantno - prozor zagušenja raste
        eksponencijalno
        Prijenosna razina
   Usporeni start (Slow Start)
       rast CWND ograničen je s dva mehanizma:
            manjom od dvije vrijednosti RWIN i SSTHRESH, nakon čega se
             automatski prolazi u fazu izbjegavanja zagušenja
            gubitkom segmenta zbog eksponencijalnog rasta prometa
       ukoliko je u fazi usporenog starta došlo do gubitka
        ažuriraju se vrijednosti:

        SSTHRESH = max(2*MSS; CWND/2)
               CWND = 1*MSS
        Prijenosna razina
   Usporeni start (Slow Start)
       time nanovo započinje usporeni start
            sada do polovičnog prozora CWND/2
             u odnosu na prozor koji je uzrokovao zagušenje
       postupak se ponavlja
            sve dok faza usporenog starta ne prođe bez gubitaka
       postignuti CWND smatra se optimalnim u tom trenutku
            TCP prelazi u fazu izbjegavanja zagušenja
        Prijenosna razina
   Izbjegavanje zagušenja (Congestion avoidance)
       je faza u kojoj TCP ispituje mogućnost povećanja prozora kako bi
        iskoristio kapacitet mreže oslobođen eventualnim završetkom
        prijenosa drugih korisnika
       u ovoj se fazi CWND povećava za 1*MSS svakih RTT vremena
          CWND = CWND + MSS/CWND
       ova faza traje sve do ponovnog gubitka segmenta
       tada se ponavlja faza usporenog starta pri čemu se koristi
        kao gore:
                  SSTHRESH = max(2*MSS; CWND/2)
                         CWND = 1*MSS
       U obje faze (SS i CA) prijemnik mora slati potvrdu za svaki
        primljeni paket
        Prijenosna razina
   Brza retransmisija (Fast Retransmit)
       čekanje na istek vremena retransmisije RTO
            je dugotrajno i traje RTT+4D
            za to vrijeme će svi paketi napustiti mrežu i ona ostaje
             neiskorištena
       brza detekcija gubitka moguća je ako prijemnik
            za svaki prekoredno primljeni segment (nakon gubitka)
            ponavlja posljednju poslanu kumulativnu potvrdu
       Prijenosna razina
   Brza retransmisija (Fast Retransmit)
     predajnik nakon duge duplicirane potvrde još nije
      siguran da li se radi o gubitku ili samo
      poremećaju redoslijeda isporuke
     nakon što primi tri duplicirane potvrde predajnik
      zaključuje da je došlo do gubitka segmenta
     obavlja ponovno slanje daleko prije isteka RTO

     to je algoritam brze retransmisije

     uključen u TCP varijantu nazvanu “TAHOE TCP”
        Prijenosna razina
   Brzi oporavak (Fast recovery)
       uveden je kako bi se bolje iskoristile prednosti brze
        retransmisije
       nakon gubitka segmenta obični TCP
            normalno mora ići u fazu usporenog starta
       algoritam brzog oporavka
            izbjegava ovu fazu na način da se parametri postave na:


                   SSTHRESH = CWND/2
                   CWND = SSTHRESH+3
        Prijenosna razina
   Brzi oporavak (Fast recovery)
       time se uzimaju u obzir paketi koji su izašli iz mreže (tri
        duplicirane potvrde)
       primitkom potvrde novih podataka ulazi se u fazu
        izbjegavanja zagušenja s polovičnim prozorom:

                   CWND = SSTHRESH
       algoritam brzog oporavka efikasan je samo za jednostruke
        pogrješke
       TCP s ugrađenom brzom retransmisijom i brzim
        oporavkom poznat je od 1990. Kao” RENO TCP”
        Prijenosna razina
   Djelomične potvrde (Partial Acknowledgment):
       da bi se ubrzao izlazak iz faze brzog oporavka za slučaj
        višestrukog gubitka segmenta
       uvedeno je razlikovanje novih i djelomičnih (parcijalnih)
        potvrda
       djelomična potvrda se bazira na karakteristikama
        kumulativne potvrde:
            kod jednostrukog gubitka, prijemnik će
            nakon što primi brzom retransmisijom ponovljeni segment
            potvrditi sve segmente poslane do popune nedostajućih podataka
        Prijenosna razina
   Djelomične potvrde (Partial Acknowledgment):
       ukoliko prijemnik potvrdi smo dio podataka
       predajnik može zaključiti da se radi o višestrukom gubitku
        segmenata
       takva potvrda se zove djelomična potvrda
       ona istovremeno znači
            da je određeni broj segmenata izašao iz mreže
            te da je još neki od ranije poslanih segmenata izgubljen
       izgubljeni segment je moguće odmah ponovno poslati

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:24
posted:6/4/2011
language:Croatian
pages:64