Predavanje 2 - Mrezni informacijski servisi I



1. Intenet i WWW


Zadnji puta smo se upoznali sa pojmom operacijskog sustava i posebno sa UNIX operacijskim sustavima.
Vise detalja oko koristenja UNIX-a smo vidjeli u vjezbama.
Danas cemo objasniti kako racunala medjusobno komuniciraju, sto je internet i WWW.


Internet se sastoji od miliona racunala koji medjusobno komuniciraju i prenose informacije preko raznih operacijskih sustava i hardverskih platformi.
Ukratko Internet je globalna racunalna mreza (eng. network).

WWW (eng. World Wide Web) je opisan kao globalni, interaktivni, dinamicni, raspodijeljeni informacijski sustav koji koristi Internet. Razvijen je oko 1990 u CERN-u (Europski institut za fiziku cestica). Za njegovo koristenje potrebno je imati:




Zakljucak gornje diskusije je da nam treba u principu dva tipa programa:



2. IP adrese i domene



Dva pitanja koja moramo ovdje razrijesiti jesu kako racunalo nadje druga racunala s kojim zeli komunicirati (IP adrese) i kako medjusobno komuniciraju (protokol komunikacije).

Kako racunala znaju gdje je racunalo sa kojim zele komunicirati? Postoje dva ekvivalentna nacina:



-da objasnimo detaljnije kako sustav radi pogledajmo iduci primjer:

-ovo su bili primjeri stalnih adresa -postoje i dinamicke koje se dodjeluju kada npr. se spojite na interent koristeci modem
-npr. na mojoj Windows radnoj stanici spojenoj na internet modemom izvrsavajuci ipconfig /all dobijemo ovakav ispis:
...
PPP adapter CARNet:
	Connection-specific DNS Suffix  . :
	Description . . . . . . . . . . . : WAN (PPP/SLIP) Interface
	Physical Address. . . . . . . . . : 00-53-45-00-00-00
	DHCP Enabled. . . . . . . . . . . : No
	IP Address. . . . . . . . . . . . : 193.198.140.53
	Subnet Mask . . . . . . . . . . . : 255.255.255.255
	Default Gateway . . . . . . . . . : 193.198.140.53
	DNS Servers . . . . . . . . . . . : 161.53.114.3
	                                    161.53.2.70
	...

-ako izvrsim npr. telnet student.math.hr moje racunalo najprije konzultira jedan od svoja dva DNS(domain name service) posluzivaca (vidi gore) da translatira to ime u adresu 192.84.105.99 (ili neku ekvivalentnu kao 161.53.8.7) pa onda nastavim kao da sam krenuo sa telnet 192.84.105.99 ili telnet 161.53.8.7
-slicno se desava kada u web pretrazivacu napisemo http://www.math.hr -najprije se konzultira neki od DNS posluzivaca koji vrati 161.53.8.10 i nastavim kao da sam napisao http://161.53.8.10
-domene i hostovi su smisljeni da ne moramo raditi direktno s brojevima koje je tesko pamtiti
-jos nekoliko rijeci o domenama: -organizirane u hijerarhiju: npr. math.hr je domena se nalazi na domeni viseg prioriteta .hr koja oznacava nasu zemlju -to je primjer top-level domene
-najcesce u upotrebi u SAD:
com =commercial --java.sun.com
edu=education    --math.harvard.edu
gov=government   --americka federalna vlada
net=network providers 
org=neprofitne organizacije --ams.org
fr=Francuska
de=Njemacka
...


-kao sto smo rekli gore IP adrese se sastoje od cetiri osam bitna broja -dakle svaki broj moze biti najvise 2^8-1=255
IP adresa se sastoji od dva dijela: mrezna adresa (eng. network address) i ostatka koji se naziva host adresa (eng. host address)
-brojevi 0, 127, 255 imaju posebno znacenje i ne koriste se direktno, necemo detalje -npr. -127 stroj referira na svoju vlastitu adresu -localhost je 127.0.0.1
-podjela IP adresa izgleda ovako
  1. klasa A: jako velike mreze = prvi broj je izmedju 1-126 i predstavlja mreznu adresu, ostali predstavljaju host- priblizno 16,194,277 racunala moze biti na toj mrezi
  2. klasa B: velike mreze npr. sveucilista u USA -prvi broj 128-191. Mrezna adresa su prva dva broja (16,382 takvih mreza), a ostatak je host (dakle 64,009 racunala na svakoj mrezi klase B)
  3. klasa C: mala mreza -prvi broj izmedju 192-223, koriste se prva tri broja za mreznu adresu dakle 1,984,279 mreza klase C, svaka moze imati najvise 256-3=253 racunala na svakoj mrezi klase C
  4. ostale adrese -rezervirane za buducu upotrebu


-ostaje jos rijesiti mali problem. npr. moze se desiti da ne dobijete sve adrese na npr. mrezi klase B 135.84, vec samo one koji pocinju sa 135.84.111. Kako ce se sa interneta znati da svako racunalo cija adresa pocinje sa 135.84.111 je na nasoj mrezi, dok ostale 135.84.(nesto drugo) nije? Koriste se tvz. netmaske.
Netmaske (eng. netmask) odredjuju mreznu adresu unutar IP adrese:
  1. klasa A ima netmasku 255.0.0.0
  2. klasa B ima netmasku 255.255.0.0
  3. klasa C ima netmasku 255.255.255.0 -default -npr. kada odredjujete mrezne postavke vaseg PC-a. U gornjem primjeru bi netmaska bila 255.255.255.0


3. Protokoli



Umrezena racunala komuniciraju na principu posluzivac/korisnik (eng. client/server).
Racunala koriste strogo propisane protokole komunikacije koji su bazirani na iducem stogu protokola:


Programerski sloj (application layer)-telnet, ftp, http, sftp, https, ssh, mailto, smtp, ...

Transportni sloj (transport layer): TCP (trasnmission-control protocol), UDP (user datagram protocol)

Mreza (network layer): IP (internet protocol)

Fizicki sloj (physical layer): mrezna kartica



-kada racunalo salje podatke infomacije se prenose slojevima napisanim prema dolje, kada ih prima slojevima napisanim prema gore
-programeri najcesce rade samo u najvisem aplikacijskom sloju -vidimo nama poznate protokole kao telnet, ftp= file transfer protocol, http, ...
protokoli specificirani u najvisem sloju sluze da se specificira nacin komunikacije: -trebaju nam:

Internet adresa sastoji se od IP adrese i 16 bitnog broja (0-65535) koji specificira port npr. http protokol koristi port 80, ftp koristi port 21, telnet 23.

Port specificira samog posluzivaca izmedju mnostva programa koji se izvrsavaju na danom stroju (odredjenom IP adresom).


4. Internet kao programerska platforma



Kao sto vidimo Internet je daljnja apstrakcija koja udaljava korisnika/programera od hardvera. Ova je neovisna od operacijskog sustava i hardverske platforme na kojoj se izvrsava.

U tu svrhu nam trebaju jezici za programiranje na Internetu: HTML, Java Script (Microsoftov klon JScript), Java, Perl, PHP .... Ove godine cemo upoznati HTML i Java Script, a iduce godine u Racunarskom praktikumu II Javu i Perl.