INTERNET Model ISO-OSI
Model ISO/OSI
Referenční komunikační model
„International Standards Organization / Open System Interconnection“
„Mezinárodní organizace pro normalizaci / propojení otevřených systémů“
Doporučený model
Model ISO/OSI
Definovaný organizací ISO v roce 1983
Rozděluje vzájemnou komunikaci mezi počítači do sedmi souvisejících vrstev.
Vrstvy jsou též známé pod označením Sada vrstev protokolu.
Model ISO/OSI
Úkolem každé vrstvy je poskytovat služby vyšší vrstvě.
Nezatěžovat vyšší vrstvu detaily o tom jak je služba ve skutečnosti realizována.
Před přesunem dat z jedné vrstvy do druhé jsou data rozdělena se do paketů.
Model ISO/OSI
V každé vrstvě se k paketu přidávají doplňkové informace (formátování, adresa).
Nezbytné pro úspěšný přenos po síti.
Model obsahuje 7 na sebe navazujících vrstev.
ISO/OSI model Data
Aplikační vrstva
Komunikace s procesem
6
Data
Prezentační vrstva
Prezentace dat a šifrování
5
Data
Relační vrstva
Koordinace komunikace
4
Segment
Transportní vrstva
Spojení
3
Paket
Síťová vrstva
Určení cesty a logická adresace
2
Rámec
Linková vrstva
MAC a LLC – fyzická adresace
1
Bity
Fyzická vrstva
Média, signál, binární přenos
7
OSI vs. Dopisy (Poštovní služby) 7
Diktuje nebo píše zprávu Manažer
6
5
4
Čte zprávu
Manažer
Opravuje chyby, připravuje finální podobu Asistent
Upozorňuje manažera na příchozí zprávu, překládá ji Asistent
Poskytuje potřebné adresy a balí dopis
Otevírá dopis, dělá kopii
Sekretářka
Sekretářka
Veze dopis na poštu
Vyzvedává dopis ze schránky nebo na poště
Řidič
Aplikační
Zdroj: WikipediaŘidič
Prezentační
Relační
Transportní
OSI vs. Dopisy (poštovní služby) Přebírá dopis a dává ho do správné přihrádky
3
Příjem a řazení
Balí dopisy pro různé směry
2
Balení
Třídí zprávy pro různé oddělení
Síťová
Řazení a distribuce Rozbaluje dopisy z různých směrů
Linková
Rozbalování TRANSPORT
Fyzická
1
Nakládání
Zdroj: Wikipedia
Vykládání
7
Aplikační vrstva
V modelu vrstva nejvyšší. Definuje způsob, jakým komunikují se sítí aplikace:
databázové systémy elektronická pošta programy pro emulaci terminálů.
Používá služby nižších vrstev. Izolovaná od problémů síťových technických prostředků. Je softwarová. Manažer
Prezentační vrstva
6
Určuje způsob, jak jsou data formátována, prezentována, transformována a kódována.
Řeší:
Šifrování dat. CRC. Kompresi. Dekompresi. Háčky a čárky…
Je softwarová. Asistent
5
Relační vrstva
Koordinuje komunikaci.
Udržuje relaci, dokud je potřebná.
Zabezpečovací funkce.
Přihlašovací funkce.
Správní funkce.
Je softwarová.
Sekretářka
Transportní vrstva
4
Definuje protokoly pro strukturované zprávy.
Zabezpečuje bezchybnost přenosu.
Provádí některé chybové kontroly.
Řeší rozdělení souboru na pakety.
Zajišťuje potvrzování.
Je softwarová.
Řidič
3
Síťová vrstva
Protokoly pro směrování dat.
Jejich prostřednictvím je zajištěn přenos informací do požadovaného cíle (uzlu).
V lokální síti nemusí být (pokud se nepoužívá směrování).
Je obvykle hardwarová.
Je softwarová, pokud směrování řeší PC se dvěma síťovými kartami.
Příjem
2
Linková vrstva
Zajišťuje integritu toku dat z jednoho uzlu sítě na druhý.
Provádí synchronizaci bloků dat
Provádí řízení toku dat.
Je hardwarová.
Balení
1
Fyzická vrstva
Určuje prostředky pro komunikaci s přenosovým médiem.
Definuje technické prostředky rozhraní.
Definuje fyzické, elektrické, mechanické a funkční parametry fyzického propojení jednotlivých zařízení.
Je hardwarová.
Nakládání a transport
Technické normy internetu
Princip Klient–Server
TCP/IP
Komunikační protokol pro Internet
Komunikační protokol pro Intranet, Extranet
TCP – spojení mezi počítači
IP – určení příjemce
Aplikační protokoly
DNS
– systém doménových jmen
DHCP
– dynamické přidělování IP adres
FTP
– přenos souborů po síti
TFTP
– jednoduchý protokol pro přenos souborů
HTTP
– přenos hypertextových dokumentů (WWW)
HTTPS – přenos hypertextových dokumentů (WWW) zabezpečený
Aplikační protokoly
WebDAV – rozšíření HTTP o práci se soubory
IMAP
– (Internet Message Access Protocol) manipulace s jednotlivými e-mail. zprávami na poštovním serveru.
IRC
– (Internet Relay Chat) – jednoduchý chat po internetu.
NNTP
– (Network News Transfer Protocol) umožňuje číst a vkládat do sítě zprávy typu news.
NFS
– (Network File System) – sdílení vzdálených souborů jakoby byly lokální.
Aplikační protokoly
NLTM
– Autentizační protokol Windows
NTP
– synchronizace času (šíření přesného času)
POP3
– (Post Office Protocol) – protokol pro získání pošty z poštovního serveru.
SMB
– (Server Message Block) - sdílení souborů a tiskáren v sítích Windows
SMTP – zasílání elektronické pošty
Aplikační protokoly
SNMP – Simple Network Management. Protokol je určen pro správu síťových uzlů.
Telnet – protokol virtuálního terminálu.
SSH
– bezpečný shell.
X11
– zobrazování oken grafických programů v Unixových systémech.
XMPP – rozšiřitelný protokol pro zasílání zpráv a sledování přítomnosti (protokol Jabber).
Technické normy internetu
IP – zajištění přenosu pomocí paketů, neřeší spojení mezi počítači.
Vyžaduje IP adresu např. 192.141.25.12
IP adresa buď pevná nebo dynamicky přidělovaná.
Server má IP adresu pevnou, klient ji může mít pokaždé jinou.
Intranet
Internet pro interní použití. Slouží pro vnitřní potřebu. „Soukromý internet“ omezený na organizaci. Přístup k intranetu www prohlížečem (browser.) Nemusí být spojena s internetem. Např. vnitřní zkušební verze webových stránek.
Extranet
Rozšíření intranetu pro externí partnery.
Zákazníkům a dodavatelům umožňuje omezený přístup k podnikovým datům.
Extranet vyžaduje autentifikaci (jméno a heslo).
Přihlášenému zobrazuje pouze obsah předem povolených stránek.
Tvorba www stránek
Tvorba WWW stránek
Na počátku byl HTML (Hyper text markup language) (Značkovací jazyk pro hypertext)
Vytvořen L.P. 1990.
Stránky statické.
Zobrazení a vzhled stránky se nemění.
Struktura html souboru <meta http-equiv="ContentType" content="text/html; charset=windows-1250">
Jméno samotný text stránky
DHTML – dynamické HTML
Kombinace dynamické + interaktivní stránky.
Kombinace HTML, JavaScript, CSS, (DOM).
Obsah se mění – animace, změny textu (přebarvení), vyskakovací okna, vysouvací menu…
XHTML (eXtended HTML)
Novější norma jazyka HTML.
Měl být rozšířený, ve skutečnosti je spíš osekaný
XHTML nepřináší nic nového proti HTML.
Lze tvořit „validní“ stránky.
„Přísnější HTML“ – pravidla pro psaní.
Prohlížečům obvykle chyby nevadí.
XHTML (eXtended HTML)
Atributy (hodnoty do závorek).
Zákaz křížení tagů.
Tagy a atributy jsou malými písmeny.
Nepárové tagy končí lomítkem.
Párové tagy jsou párové povinně.
XHTML (eXtended HTML)
Všechny atributy musejí mít hodnotu.
Interní javascript a styly se zapisují jiným způsobem.
Dokument má mít XML prolog.
Dokument požaduje správný doctype.
CSS (cascading style sheets)
Způsob formátování obsahu HTML.
Úkol – oddělit vzhled od obsahu.
Formátování – buď tagy „natvrdo“.
Nebo CSS styl – u textu tag <style>, který popisuje formátování textu.
Lze vložit do stránky nebo do externího souboru.
CSS (cascading style sheets)
Výhoda jeden text může mít různé formátování, změna výměnou CSS stylu
Nevýhoda nekompatibilita
CSS (kdy použít)
Speciální způsob formátování.
Nechci každý text znovu formátovat.
Všechny stránky webu mají vypadat úplně stejně.
Na stránkách je Javascript.
Personal home page
Skriptovací programovací jazyk Vhodné pro DHTML Výhody – jednoduchost, počet funkcí Nevýhody – není kompletně definován
PHP
Hypertextový preprocesor.
Původně Personal Home Page.
Skriptovací programovací jazyk.
Programování dynamických internetových stránek a webových aplikací.
Např. ve formě HTML, XHTML či WML.
PHP
Lze použít i k tvorbě konzolových a desktopových aplikací.
Pro desktopové použití existuje kompilovaná forma jazyka.
Nejrozšířenější skriptovací jazyk pro web.
Jednoduché použití.
Obsahuje řadu funkcí.
PHP
Dynamické stránky.
Skripty prováděny na straně serveru.
Uživateli je přenášen až výsledek jejich činnosti.
Interpret PHP skriptu je možné volat
pomocí příkazového řádku,
dotazovacích metod HTTP,
pomocí webových služeb.
PHP
PHP je nezávislý na platformě.
Skripty lze většinou mezi operačními systémy přenášet bez jakýchkoli úprav.
Podpora řady knihoven
zpracování textu, grafiky práce se soubory přístup k většině databázových systémů
Některé vlastnosti jazyka PHP
Jazyk PHP je dynamicky typový
Datový typ proměnné se určí v okamžiku přiřazení hodnoty.
PHP má dva operátory porovnání:
== před porovnáním se provádí konverze
=== výraz je pravdivý, jen když jsou oba dva operandy stejného datového typu a jejich obsah má stejnou hodnotu.
Některé vlastnosti jazyka PHP
Pole jsou heterogenní (stejné pole může obsahovat prvky různých typů),
Počet dimenzí není omezen.
Výhody PHP
Specializace na webové stránky.
Podpora většiny databázových systémů.
Rozsáhlá základní knihovna funkcí (více než 5500).
Práce na různých platformách (MS Windows a Linux).
Dovoluje využití funkcí operačního systému.
problém bude při přenosu na jiný OS
Výhody PHP
PHP je fakticky standardem hostingových služeb (najdeme je všude).
Knihovna volně dostupných projektů a kódů (např. WordPress, phpBB …)
Rozsáhlá, stále doplňovaná dokumentace.
Prakticky volná licence.
Poměrně snadno se učí (prý).
Nevýhody PHP
Neexistuje kompletní definice.
Popis pouze jeho implementací.
Nekonzistentní vývoj v minulosti, (trvá dosud)
Nekonzistentní pojmenování některých funkcí.
Nejednotné pořadí parametrů.
Nevýhody PHP
Ve standardní distribuci chybí ladící (debugovací) nástroj.
Knihovna používá jen málokdy výjimky.
Špatná podpora Unicode.
V PHP 6 má být problém s Unicode vyřešen.
ASP − Active Server Pages
Programovací jazyk ASP velmi podobný jazyku PHP.
ASP je serverový jazyk.
Umožňuje pracovat
s databází,
ukládat data,
dynamicky generovat webové stránky.
Nutností je webový server (Microsoft IIS).
ASP – Active Server Pages
ASP je vyvíjeno Microsoftem.
PHP je opensource.
IIS – server podporující ASP rovněž není zadarmo
Apache pro PHP je zadarmo.
ASP – Active Server Pages
Problém: webhosting zdarma pro ASP stránky.
Nabízí se ASP web a ASP2,
Webhosting zdarma vyžaduje obvykle PHP
Webhosting pro ASP je těžší sehnat než pro PHP.
ASP.NET
Název je odvozen od starší technologie ASP.
Obě technologie jsou velmi odlišné.
ASP.NET je založen na CLR (Common Language Runtime).
Sdílen všemi aplikacemi postavenými na .NET Frameworku.
ASP.NET
Programovat lze v jakémkoliv jazyce podporujícím CLR Common Language Runtime.
Visual Basic.NET,
JScript.NET, C#, Managed C20++, mutace Perlu, Pythonu a další.
Aplikace ASP.NET jsou rychlejší, (jsou předkompilovány do DLL souborů).
ASP.NET
Kompilovaný kód = rychlejší aplikace
Při kompilaci se dají zachytit chyby
Šablony pro uživatelsky definované prvky
Kód jen jednou omezení duplicitního kódu
Řada ovládacích prvků a knihoven tříd zrychluje vývoj aplikací
ASP.NET
Cachování stránky (zvyšuje výkon serveru)
Provoz na různých serverech,
IIS (Windows),
Apache (Windows, Linux s open source implementací .NET Monem)
Od verzí 2 generuje ASP.NET
validní HTML 4.0 validní XHTML 1.0 validní XHTML 1.1 validní JavaScript
MySQL
Je databázový systém,
Vytvořený švédskou firmou MySQL AB,
koupil Sun Microsystems, nyní Oracle Corporation.
Dvojí licencování
bezplatná licence GPL komerční placená licence
MySQL
MySQL je multiplatformní databáze.
Komunikace pomocí jazyka SQL.
Jde o dialekt jazyka + některá rozšíření
Podobné jako u ostatních SQL databází
MySQL
Instalace na Linux, MS Windows i jiné OS
Snadná implementace
Výkonná
Volně šiřitelný software => časté použití
Velmi oblíbená kombinace: Linux + MySQL + PHP + Apache = základní software webového serveru
MySQL
MySQL obsahovalo řadu zjednodušení: jen jednoduché způsoby zálohování.
Nepodporovalo pohledy.
Nepodporovalo triggery.
Nepodporovalo uložené procedury.
V posledních letech jsou doplňovány.
Web 2.0
Web 2.0 Etapa vývoje webu od 2004 – ? Sdílení Společná tvorba obsahu Sociální sítě, You tube, blogy
Definice z Wikipedie
Termín Web 2.0 – další fáze vývoje webu, včetně jeho architektury a aplikací.
Definice z Wikipedie
Změnou hypertextových stránek z izolovaných úložišť informací na zdroje obsahující informace i funkcionalitu – stávají se tak platformou poskytující webové aplikace koncovému uživateli.
Definice z Wikipedie
Sociální fenomén – tvorba a distribuce webového obsahu je dostupná komukoliv, otevřená komunikace, decentralizace autorit, sdílení a znovuvyužití.
Více organizovaný a setříděný obsah s propracovanější hyperlinkovou strukturou.
WEB 2.0
Uživatel má možnost se sám podílet na tvorbě obsahu.
Za obsah zodpovídají příslušní autoři/uživatelé. (tzv. decentralizace autorit).
Sdílení informací, možnost jejich opětovného použití.
Otevřená komunikace.
WEB 2.0
Co má Web 2.0 společného s Yettim? Všichni o něm mluví, ale nikdo neví, jak vypadá a zda vůbec existuje. Nevíme, je-li nebezpečný nebo nám bude užitečný. Nevíme, co se stane s klasickými weby, jestli nebudou jen „otročit“. Zatím je to zajímavá značka „Web 2.0“. Důležité je, že vydělává. Ale co když je to zase jen bublina? http://www.lupa.cz/clanky/web-2-0-bublina-nebo-novy-smer-webu/
Zdroj: Klubový večer SPIR (24. dubna 2007). Připravili: Jan Makovička (Ringier ČR) a Tomáš Jindříšek (OgilvyInteractive)
/
Zdroj: Klubový večer SPIR (24. dubna 2007). Připravili: Jan Makovička (Ringier ČR) a Tomáš Jindříšek (OgilvyInteractive)
/
Zdroj: Klubový večer SPIR (24. dubna 2007). Připravili: Jan Makovička (Ringier ČR) a Tomáš Jindříšek (OgilvyInteractive)
/
WEB 2.0 Pokus o stručnou definici náplně Blogy RSS Sociální síť a tagy API + AJAX (rozhraní + nadstavby)
RSS
RSS je rodina XML formátů určených pro čtení novinek na webových stránkách. Možnost odběru novinek. Na zpravodajských stránkách.
AJAX
Asynchronous JavaScript and XML. Technologie interaktivních webových aplikací. Mění obsah bez nutnosti znovunačítání.
Web 3.0
Sdílení aplikací Mikroformáty Sémantický web Interakce SW 3D prostředí webu
Web 3.0 Web 2.0 Web
Web 3.0 v roce 20XX
Zatímco definice toho co je to web 2.0 je vágní, definice verze trojkové je nejasná a bezobsažná.
Informatika jako vědní obor tyto pojmy (zatím) nezná. Vyhýbá se jim jak jen může tvrdí, že se jedná o marketingovou značku.
Web 3.0 v roce 20XX
A tak možná přichází na řadu dojem, že se o žádnou změnu či technologii nejedená.
K web 2.0 si mnozí z nás přiřadili jako synonymum kulaté okraje či Wikipedii.
Co si přiřadí k trojkové verzi není jasné.
Web 3.0 Sémantický web
Sémantický, neboli významový web.
Poprvé vyslovil Tim Berners-Lee 2001.
Současný web = změť webových stránek.
Neustále roste.
Je stále složitější nalézt potřebné informace.
Sémantický web = rozšíření webu.
Informace mají definovaný význam.
Počítače a lidé lépe kooperují.
Schéma sémantického webu dle W3C
Sémantický web
Technologickým základem RDF (Resource Description Framework) Obecný rámec pro popis, výměnu a znovupoužití metadat. Jednoduchý model pro popis zdrojů. Nezávislý na implementaci. RDF specifikuje zdroj, vlastnost, hodnota vlastnosti. Přiřazení sémantiky webovým zdrojům.