Transcript ppt

TCP/IP
Poglavlje-10
Mrežne tehnologije
 Mrežne tehnologije kakve su Ethernet, Token Ring i FDDI obezbedjuju funkcije
do nivoa-veze.
 Pomenute tehnologije obezbedjuju samo pouzdanu vezu izmedju jednog i
drugog čvora u istoj mreži, ali ne i funkcije koje se odnose na prenos podataka iz
jedne mreže ka drugoj ili jednog mrežnog segmenta ka drugom.
 Da bi se podaci prenosili kroz mreže potrebno je koristiti adresne šeme koje će
biti razumljive za bridge-ove, gateway-e, switcher-e i rutere.
 Medjusobno povezivanje mreža se naziva umrežavanje (internetworking ili
internet).
 Svaki deo internet-a naziva se sub-mreža (subnet).
An Internet According to TCP/IP
TCP/IP model
TCP/IP (Transmission Control Protocol and Internet Protocol) predstavlja par
protokola koji omogućava da jedan deo subnet-a komunicira sa drugim.
Odnos TCP/IP prema OSI standardu:
TCP
transportni-nivo
mrežni-nivo
nivo-veza
fizički
IP
Ethernet/
Token Ring/
FDDI/
ISDN
IP deo odgovara mrežnom-nivou OSI modela
TCP deo odgovara transportnom-nivou OSI modela.
TCP/IP and OSI model
TCP/IP
and the
OSI
modelheader
insertat
ion
IP model
Rad TCP/IP protokola transparentan je fizičkom-nivou i nivou-veze pa se zbog
toga par TCP/IP može koristiti za rad Ethernet-a, FDDI-a ili Token Ring-a.
Adresa na nivou-veze odgovara fizičkoj adresi čvora kakva je:
MAC adresa (kod Ethernet ili Token Ring) ili
telefonskog broja (kod modemske veze).
IP adresa dodeljuje se svakom čvoru internet-a i koristi se da identifikuje
lokaciju mreže i bilo koji od subnet-a.
Addresses in TCP/IP
Relationship
of layers and
addresses in
TCP/IP
Example of physical addresses
Example of real physical addresses
Example
Most local area networks use a 48-bit (6 bytes) physical address
written as 12 hexadecimal digits, with every 2 bytes separated by a
hyphen as shown below:
07-01-02-01-2C-4B
A 6-byte (12 hexadecimal digits) physical address
Identifikacija čvora na Internetu
 Svetska mreža Internet koristi TCP/IP kao standard za prenos podataka.
 Svakom čvoru na Internetu dodeljena je jedinstvena mrežna adresa koja se
naziva IP adresa.
 Svaka organizacija može da ima svoje internete, ali ako se ovi interneti spoje
na Internet tada je potrebno da se njihove adrese slože sa formatom kod Internet
adresiranja.
 ISO je usvojio TCP/IP kao bazu za standarde koji se odnose na mrežne i
transportne nivoe kod OSI modela.
 Ovaj standard je poznat kao ISO-IP.
 TCP/IP hostovi su čvorovi koji preko mreže medjusobno komuniciraju
koristeći TCP/IP komunikacije.
TCP/IP gateway i host
 TCP/IP gateway čvor povezuje jedan tip mreže sa drugim. On sadrži hardver
koje ostvaruje fizičku vezu izmedju različitih mreža, kao i hardver i softver za
konverziju okvira iz jednog formata u drugi. Obično on konvertuje Token Ring
MAC nivo u ekvivalentni Ethernet MAC nivo, i obratno.
 Ruter povezuje dve mreže istog tipa koristeći vezu tipa tačka-ka-tački.
 Glavna operativna razlika izmedju gateway, rutera i bridge-a je ta da:
kod Token Ring i Ethernet mreža, bridge koristi 48-bitnu MAC adresu za
rutiranje poruka, dok gateway i ruter koriste IP mrežnu adresu.
 Po analogiji sa javnom telefonskom mrežom, MAC adresa ekvivalentna je
slučajno dodeljenom telefonskom broju, dok IP adresa sadrži informaciju o
logičkoj lokaciji telefona kao što su zemlja, kôd oblasti, i dr.
Internet gateway nivoi
Gateway čita okvir sa računara povezan na mreži A.
Nakon toga čita IP adresu koja je sastavni deo okvira i donosi odluku da li okvir
da usmeri na izlazu mreže A prema mreži B.
Ako on to odluči tada prilagodi okvir formatu mreži B i predaje ga.
Mreža A
Mreža B
Transportni
nivo
TCP
Internet
gataway
TCP
Mrežni
nivo
IP
IP
IP
Ethernet,
Token Ring,
FDDI
Modem
Convertor
Ethernet,
Token Ring,
FDDI
Modem
Ethernet,
Token Ring,
FDDI
Modem
Nivo
veze
Fizički
nivo
Funkcije IP protokola
 Glavne funkcije IP protokola su:
 Rutiranje IP okvira podataka
 Fragmentacija podataka
 Raportiranje grešaka
Internet datagram
IP protokol predstavlja implementaciju OSI mrežnog nivoa.
IP protokol od transportnog-nivoa prima informaciji i dodaje zaglavlje
Rezultantni paket podataka naziva se internet datagram.
Zaglavlje sadrži informaciju o odredišnoj i izvorišnoj IP adresi, broj verzije IP
protokola, i dr.
Format i sadržaj internet datagrama
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Version
Header lenght
Header: 20-60 bajtova
Type of service
Total lenght
Identification
Data + header:
D M
Fragment offset
Time-to-live
Protocol
20 – 65536 bajtova
Header
Source IP address
Destination IP address
Options
Data  64 kB 
Format i sadržaj
IP Datagram
internet datagrama
Implementacija TCP/IP
Gateway MERCURY ostvaruje vezu izmedju token-ring mreže (NETWORK A) i Ethernet
mreže (ETHER C).
Drugi gateway PLUTO povezuje NETWORK B na ETHER C.
TCP/IP protokol je taj koji omogućava da host na NETWORK A komunicira sa VAX 01.
Izbor internet adresa
 Svaki čvor koji koristi TCP/IP način komuniciranja zahteva IP adresu koja se
uparuje sa Token Ring ili Ethernet MAC adresom.
 MAC adresa obezbedjuje da čvorovi na istom segmentu mogu medjusobno da
komuniciraju.
 Sa ciljem da čvorovi koji pripadaju različitim mrežama mogu da
komuniciraju, svakom čvoru je potrebno dodeliti IP adresu.
 Čvorovi na TCP/IP mrežu mogu biti host-ovi ili gateway-ovi.
 Bilo koji čvor koji izvršava aplikacioni softver, ili je terminal, je host.
 Bilo koji čvor koji rutira TCP/IP pakete izmedju mreža naziva se TCP/IP
gateway čvor.
 Gateway čvor mora da ima ugradjenu odgovarajuću karticu tipa mrežni
kontroler koja se koristi kao fizički interfejs sa drugim mrežama na kojima se
povezuje.
IP adresa
IP adresu čine dva polja:
broj mreže - identifikuje mrežu
broj hosta - identifikuje pojedini host u okviru mreže.
IP address and dotted-decimal notation
Note:
An IP address is a 32-bit address.
The IP addresses are unique
and universal.
Klase IP adrese
 Svaka IP (Internet) adresa se sastoji od četiri bajta koji definišu:
 tip klase
 identifikacija mreže
 identifikacija host-a
Tip
klase
Identifikacija
mreže
Netid
Identifikacija
host-a
Hostid
Example 1
Change the following IP addresses from binary notation to dotteddecimal notation.
a.
10000001 00001011 00001011 11101111
b.
11111001 10011011 11111011 00001111
Solution
We replace each group of 8 bits with its equivalent decimal
number (see Appendix B) and add dots for separation:
a.
129.11.11.239
b.
249.155.251.15
Example 2
Change the following IP addresses from dotted-decimal notation to
binary notation.
a.
111.56.45.78
b.
75.45.34.78
Solution
We replace each decimal number with its binary equivalent
(see Appendix B):
a.
b.
01101111 00111000 00101101 01001110
01001011 00101101 00100010 01001110
Five classes
Note:
In classful addressing, the address
space is divided into five classes: A, B,
C, D, and E.
Finding the address class
Example 3
Find the class of each address:
a.
00000001 00001011 00001011 11101111
b.
11110011 10011011 11111011 00001111
Solution
a.
b.
The first bit is 0; this is a class A address.
The first 4 bits are 1s; this is a class E address.
Finding the class in decimal notation
Example 4
Find the class of each address:
a.
227.12.14.87
b.
252.5.15.111
c.
134.11.78.56
Solution
a.
b.
c.
The first byte is 227 (between 224 and 239); the class is D.
The first byte is 252 (between 240 and 255); the class is E.
The first byte is 134 (between 128 and 191); the class is B.
Netid and hostid
Klasa A obezbedjuje adresiranje do 128 (27) različitih mreža i do 16 777 216 (224)
hostova po svakoj mreži.
 Klasa B omogućava adresiranje do 16 384 mreža i do 65 536 hostova po mreži.
 Klasa C dozvoljava adresiranje do 2 097 152 mreža pri čemu svaka može da
ima do 256 hostova.
Blocks in class A
Note:
Millions of class A addresses are wasted.
Blocks in class B
Note:
Many class B addresses are wasted.
Blocks in class C
Note:
The number of addresses in class C is smaller than the needs of
most organizations.
Klase A, B i C kod IP adresiranja
Class A
0
Node (Čvor) (24 bitova)
Network (7 bitova)
Class B
1 0
Network (14 bitova)
Node (Čvor) (16 bitova)
Class C
1 1 0
Network (21 bitova)
Node (Čvor) (8 bitova)
Klasa A je pogodna za aplikaciju kod onih situacija gde postoji mali broj mreža
sa velikim brojem hostova po mreži.
Klasa C je korisna gde postoji veliki broj mreža sa relativno malim brojem
hostova povezanih na svaku mrežu.
Klasa B, po svemu izgleda, predstavlja dobar kompromis izmedju krajnjih
rešenja koja nude klase A sa jedne, i klase C, sa druge strane.
Network address
Note:
In classful addressing, the network address is the one that
is assigned to the organization.
Example
Given the address 23.56.7.91, find the network address.
Solution
The class is A. Only the first byte defines the netid. We can find the network
address by replacing the hostid bytes (56.7.91) with 0s. Therefore, the
network address is 23.0.0.0.
Example
Given the address 132.6.17.85, find the network address.
Solution
The class is B. The first 2 bytes defines the netid. We can find the network
address by replacing the hostid bytes (17.85) with 0s. Therefore, the
network address is 132.6.0.0.
Example
Given the network address 17.0.0.0, find the class.
Solution
The class is A because the netid is only 1 byte.
Note:
A network address is different from a netid. A
network address has both netid and hostid,
with 0s for the hostid.
Class Ranges of Internet Addresses
Network and Host Addresses
A Network with Two Levels of
Hierarchy
A Network with Three Levels of
Hierarchy
A Network with Three Levels of
Hierarchy-cont.
Kreiranje IP adresa i subnet brojeva
Pored selektovanje IP adresa mreža i host brojeva moguće je uvesti još jedan
medjubroj koji se naziva subnet broj.
Uvodjenje subnet-a obezbedjuje se ostvarivanje hijerarhijske organizacije u
okviru mreže.
Addresses
with and
without
Subnetting
Tipovi subnet-a
 Za adresu W. X. Y. Z kod tipa A, adresa W specificira mrežu, a X subnet.
 Za tip B Y polje specificira subnet
Obično, Internet organizacija koristi mrežne adrese tipa B. Prva dva
polja adrese specificiraju organizaciju mreže, treće subnet u okviru
organizacije, a zadnje specificira host.
Maskiranje

Maskiranje je proces koji izdvaja adresu fizičke mreže od IP adrese

Maskiranje se izvodi nezavisno od toga da li subnetting postoji ili ne postoji

Ako nemamo subnetted mrežu maskiranjem se izdvaja mrežna adresa iz IP adrese

Ako postoji subnetting maskiranjem se izdvaja subnetwork adresa iz IP adrese
Mask for unsubnetted networks
Class
Mask
Address example
Network
Address
(Example)
A
255.0.0.0
15.32.56.7
15.0.0.0
B
255.255.0.0
135.67.13.9
135.67.0.0
C
255.255.255.0
201.34.12.72
201.34.12.0
D
N/A
N/A
N/A
E
N/A
N/A
N/A
Mask for subnetted networks
Class
Mask
Address example
Network
Address
(Example)
A
255.255.0.0
15.32.56.7
15.32.0.0
B
255.255.255.0
135.67.13.9
135.67.13.0
C
255.255.255.192
201.34.12.72
201.34.12.64
D
N/A
N/A
N/A
E
N/A
N/A
N/A
Example
A router outside the organization receives a packet with destination
address 190.240.7.91. Show how it finds the network address to route
the packet.
Solution
The router follows three steps:
1. The router looks at the first byte of the address to find the
class. It is class B.
2. The default mask for class B is 255.255.0.0. The router ANDs
this mask with the address to get 190.240.0.0.
3. The router looks in its routing table to find out how to route the
packet to this destination. Later, we will see what happens if
this destination does not exist.
Simbolička imena i stvarne adrese
Neki od Internet domen dodele za World Wide Web (WWW) servere su:
Dodele domena nisu fiksne
Domeni mogu menjati svoje odgovarajuće IP adrese
Preslikavanje izmedju simboličkog imena i njegove stvarne adrese se može promeniti u
bilo kom trenutku.
Struktura dodeljivanja imena kod Interneta
Način dodeljivanja imena kod Interneta zasniva se na korišćenju oznake koje se
izdvajaju tačkom.
Tako na primer:
eece.napier.ac.uk.
Kod ovog imena koristi se hijerarhijska struktura kod koje se organizacije
grupišu u primarni domen imena. To su:
com (komercijalne organizacije),
edu (edukativne organizacije),
gov (vladine organizacije),
mil (vojne organizacije),
net (centri koji pružaju podršku Internet mreži),
org (druge organizacije)
Primarni domen može takodje definisati zemlju u kojoj je host lociran, kao što
je
uk za United Kingdom,
fr (France),
yu (Yugoslavia) ...
Svi hostovi na Internetu moraju biti registrovani na jedno ime od primarnih
domena.
Primer: Dodela imena kod Interneta
Oznaka nakon primarnog polja opisuje subnet-e u okviru mreže.
Kod adrese eece.napier.ac.uk labela ac se odnosi na akademsku instituciju u
okviru uk, napier predstavlja ime institucije, dok eece je subnet u okviru te
organizacije.
Ime servera domena
Svaka institucija povezana na Internet ima svoji host koji izvršava proces koji se
naziva DNS (Domain Name Server).
Zadatak je DNS-a da održava bazu podataka nazvanu DIB (Directory
Information Base) koja sadrži datotečku (directory) informaciju za tu organizaciju.
Nakon dodavanja novog host-a, sistem menadžer (System Manager) dodaje novo
ime i odgovarajuću IP adresu.
Posle obavljanja ove aktivnosti moguć je pristup Internetu.
Primer realizacije jedne mreže
 Mreža Electrical Department
Computer
Studies
bridge
146.176.160.1
Global
Internet
146.176.160
Mechanical
Department
bridge
146.176.129.1
146.176.144
Janet
gateway
146.176.1.3
146.176.129
146.176.151
146.176.145
146.176.147
146.176.150
146.176.151
Electrical
Department
bridge
146.176.151.254
146.176
Mreža Electrical Department of Machester University
Naredna generacija TCP/IP: IPv6
 Mrežni nivo protokola kod TCP/IP je tekuća IPv4
 Nedostaci IPv4 su sledeći:
 IPv4 ima dvo-nivovsku adresnu strukturu (netid i hostid)
 Postoji pet klasa A, B, C, D i E.
 Iskorišćenje adresnog prostora je neefikasno
 Dalja proširenja mreže zbog relativno malog broja raspoloživih
adresa su ograničena
 Da bi se otklonili ovi nedostaci predložen je IPv6
IPv6 u odnosu na IPv4
 Veći adresni prostor: adresa kod IPv6 je 128-bitna, a kod IPv4 32- bitna
 Bolji format header-a: IPv6 koristi novi format header-a koji obezbedjuje bolje
rutiranje
 Nove opcije: IPv6 omogućava dodavanje novih funkcionalnosti
 Proširljivost: IPv6 je projektovan da omogući proširenje protokola ako je to
potrebno
 Podrška lokaciji resursa: obezbedjuje mehanizam koji se koristi za podršku
prenosa signala govora i video informacija u realnom vremenu
 Podrška većoj sigurnosti: opcija za šifrovanje i autorizovanost obezbedjuje da
IPv6 prenosi podatke sa većom poverljivošću
Format IPv6 header-a
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Version
Priority
Flow label
Flow label
Payload lenght
Next header
Hop limit
Source IP address
Destination IP address
Transportni nivo kod Interneta
 Transportni nivo kod TCP/IP-a se predstavlja pomoću dva protokola:
 TCP (Transmission Control Protocol)
 UDP (User Datagram Protocol)
 UDP je jednostavniji i obezbedjuje ne sekvenciranu transportnu
funkcionalnost, a koristi se kada su pouzdanost i sigurnost manje važni od obima i
brzine
 Najveći broj aplikacija zahteva pouzdan prenos tipa end-to-end, pa se u tom
slučaju koristi TCP
UDP i datagram format
 UDP obezbedjuje samo osnovne funkcije kod prenosa tipa end-to-end
 On ne poseduje funkcije sekvenciranja i preuredjenja
 Ne specificira oštećenje paketa kada raportira grešku
 Sadarži samo checksum
TCP protokol
 Sa tačke gledišta OSI modela, TCP pripada transportnom, a IP mrežnom
nivou.
 TCP se nalazi iznad IP.
 Glavni zadatak TCP-a da obezbedi korektan i pouzdan protokol na
transportnom nivou.
 TCP karakterišu sledeće osobine:
pouzdanost u radu,
orijentisan je da podržava vezu izmedju čvorova u mreži,
ponaša se kao nizovno-orijentisani server koji koristi princip potvrdjivanja
poruka.
TCP protokol – prod.
Uz pomoć TCP-a, veza se inicijalno uspostavlja a zatim održava dok
prenos traje.
 Informacija koju nosi TCP sadrži poruke o potvrdjivanju kao i skup
rednih brojeva poruka.
 TCP takodje podržava višestruke simultane veze koristeći pri tome
odredišne i izvorišne port-brojeve, i upravlja portovima u toku predaje i
prijema poruka.
 TCP podržava fragmentaciju podataka i reasembliranje, a takodje
multipleksiranje/demultipleksiranje podataka.
Format TCP zaglavlja
Portovi i socket-i
 Svakom hostu TCP pridružuje socket-broj i port-broj.
Port-broj identifikuje željeni servis,
socket-broj predestavlja jedinstveni broj za tu vezu.
 Čvor može da ima nekoliko TELNET veza koje imaju isti port-broj ali će svaka
veza imati različit socket-broj.
Standardni portovi
 Port-broj može da prima bilo koju vrednost ali postoji dogovor (konvencija) koji
se poštuje kod najvećeg broja sistema.
 Standardne aplikacije uobičajeno koriste port vrednosti od 0-255, dok
nespecificirane aplikacije mogu koristiti vrednosti iznad 255.
TCP/IP komande
Postoji nekoliko standardnih programa koji se koriste kada se uspostavi veza po
TCP/IP protokolu. Ove aplikacije su:
 FTP (File Transfer Protocol) - vrši prenos fajlova izmedju dva
računara
 HTTP (Hypertext Transfer Protocol) - protokol koji se koristi kod
WWW (World Wide Web) a može se koristiti kod client-server aplikacija za
prenos hipertekstova.
 MIME (Multipurpose Internet Mail Extension) - poboljšane mogućnosti
elektronske pošte uz pomoć TCP/IP
 SMTP (Simple Mail Management Protocol) - pruža jednostavne usluge
kod elektronske pošte
 TELNET - obezbedjuje remote login koristeći TCP/IP
 PING - odredjuje da li se čvor odaziva na TCP/IP komunikacije
Uspostavljanje veze izmedju dva
aplikaciona nivoa kod TCP/IP protokola
kada se prenos poruka vrši ATM
mrežom
1. priprema podataka- aplikacioni protokol priprema blok
podataka za prenos. Na primer e-mail poruka (SMTP), fajl
(FTP), ili blok korisničkih podataka (TELNET)
Peer-to-peer dijalog - pre nego što se
podaci predaju predajne iprijemne
aplikacije moraju se dogovoriti o formatu i
kodiranju podataka koji se razmenjuju
2. korišćenje zajedničke sintakse - ako je neophodno podaci
se konveruju u oblik kakav očekuje odredište. To se pre svega
odnosi na korišćenje različitih karakter kodova, šifrovanje, i/ili
kommpresija
3. segmentiranje podataka - TCP može da razbije blok
podataka na veći broj segmenata zadržavajući trag o
njihovom redosledu. Svaki TCP segment ima zaglavlje (T)
koje sadrži redosledni broj i polje za proveru grešaka u
prenosu
Peer-to-peer dijalog - oba TCP entiteta
saglasna su da se otvori konekcija
4. dupliciranje segmenata - za svaki TCP segment
pravi se kopija, u slučaju gubitaka ili oštećenja
segmenata, neophodna je retransmisija. Kada se primi
potvrda od strane drugog TCP entiteta, segment se briše
5. fragmentacija segmenata - IP može da podeli
TCP segment na veći broj datagram-a kako bi
ispunio zahteve koje se postavljaju od strane mreže
za prenos. Svaki datagram ima zaglavlje koje sadrži
odredišnu adresu, sekvencu za proveru okvira, i
druge upravljačke informacije
6. uokviravanje (framing) - svakom IP datagram-u
pridružuje se ATM zaglavlje kako bi se formirala ATM
ćelija. Zaglavlje sadrži konekcioni identifikator i polje
za kontrolu grešaka u prenosu
Peer-to-peer dijalog - svaki IP datagram se
prosledjuje ka mreži i ruterima ka odredišnom sistemu
Peer-to-peer dijalog - svaka ćelija se
prosledjuje kroz ATM mrežu
A I T
Data
7. prenos svaka ćelija se predaje
preko medijuma kao sekvenca bitova
10. Rutiranje paketa IP - ispituje IP zaglavlje i
donosi odluku o rutiranju. Odlučuje se koji će
izlazni link da se koristi, a zatim predaje
datagram nivou veze radi prenosa po tom linku
9. procesiranje ćelije - ATM nivo odstranjuje
zaglavlje ćelije i procesira ga. Za detekciju
greške koristi se oinformacija o kontroli greške.
Konekcioni broj identifikuje izvorište.
Peer-to-peer dijalog ruter predaje
ovaj datagram ka drugom ruteru ili
ka odredišnom sistemu
11. formiranje - LLC PDU svakom IP
datagramu dodalje se LLC zaglavlje i
formira LLC PDU. Zaglavlje sadrži
redosledni broj i adresnu informaciju
12. uokviravanje - svakom LLC
PDU-u dodaje se MAC zaglavlje i rep
da bi se formirao MAC okvir. Zaglavlje
sadrži adresnu informaciju, a rep
sekvencu za proveru ispravnosti
prenosa okvira
A I T
Data
8. pristizanje na ulaz rutera - prima se signal
koji dolati sa transmisionog medijuma i
interpretira se kao ćelija bitova
M L
I T
Data
M
13. prenos - svaki okvir se predaje
preko medijuma kao sekvenca bitova
20. isporuka podataka - aplikacija obavlja potrebne
transformacije uključujući dekompresiju i dešifrovanje,
i usmerava podatke ka odgovarajućem fajlu ili drugom
odredištu
19. objedinjavanje korisničkih podataka - ako
je TCP razbio korisničke podatke na veći broj
segmenata, njih treba objediniti, a integralni blok
predati aplikaciji
18. procesiranje TCP segmenta -TCP izdvaja zaglavlje.
On proverava redosledni broj i daje pozitivnu potvrdu ako
postoji uparivanje , a negativnu ako dodje do neslaganja.
Upravljanje tokom podataka se takodje obavlja
17. procesiranje IP datagrama - IP izdvaja
zaglavlje procesira se redosledni broj sekvence
i druga upravljačka informacija
16. procesiranje LLC PDU - LLC nivo izdvaja
zaglavlje i procesira ga redosledni broj okvira
koristi se za upravljanje tokom podataka i
upravljanje greškama u prenosu
15. procesiranje okvira - MAC nivo
izdvaja zaglavlje i rep i procesira ih polje
za proveru se koristi za detekciju grešaka
M L
I T
Data
M
14. pristizanje na odredište - signal koji dolazi
se prima od strane transmisionog medijuma i
interpretira ka okvir bitova
Sample internet