INTERNET
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.
ISI/OSI model 7 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 ligická adresace 2 Rámec Linková vrstva MAC a LLC fyzická adresace 1 Bity Fyzická vrstva Média, signál, binární přenos
OSI vs. Dopisy (Poštovní služby) 7 Diktuje nebo píše zprávu Čte zprávu Aplikační Manažer Manažer 6 Opravuje chyby, připravuje finální podobu Upozorňuje manažera na příchozí zprávu, překládá ji Prezentační Asistent Asistent 5 Poskytuje potřebné adresy a balí dopis Otevírá dopis, dělá kopii Relační Sekretářka Sekretářka 4 Veze dopis na poštu Vyzvedává dopis ze schránky nebo na poště Transportní Řidič Zdroj: Wikipedia Řidič
OSI vs. Dopisy (poštovní služby) 3 Přebírá dopis a dává ho do správné přihrádky Třídí zprávy pro různé oddělení Síťová Příjem a řazení Řazení a distribuce 2 Balí dopisy pro různé směry Rozbaluje dopisy z různých směrů Linková Balení Rozbalování 1 TRANSPORT Fyzická Nakládání Zdroj: Wikipedia Vykládání
Aplikační vrstva 7 V modelu vrstva nejvyšší. Definuje způsob, jakým komunikují se sítí aplikace například databázové systémy, elektronická pošta nebo 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
Relační vrstva 5 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č
Síťová vrstva 3 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
Linková vrstva 2 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í
Fyzická vrstva 1 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
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í s ouborů 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 <!DOCTYPE HTML> <html> <head> <meta http-equiv="content- Type" content="text/html; charset=windows-1250"> <title>jméno</title> </head> <body> samotný text stránky </body> </html>
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 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 nebo 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áci 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. 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 je svými možnostmi 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. Problém je webhosting zdarma pro ASP stránky. Nabízí se ASP web a ASP2, jinak webhosting zdarma a webhosting vůbec je těžší sehnat pro ASP 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 projekty v jakémkoliv jazyce podporujícím CLR Common Language Runtime např. Visual Basic.NET, JScript.NET, C#, Managed C++, ale i 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 Programátoři mají na výběr velké množství programovacích jazyků Cachování stránky (nebo její části) zvyšuje výkon serveru Provoz na různých systémech i webových serverech, např. IIS (Windows), Apache (Windows, Linux s open source implementací.net Monem) Počínaje verzí 2 generuje ASP.NET validní HTML 4.0 / XHTML 1.0 / XHTML 1.1 kód a JavaScript
MySQL Je databázový systém, Vytvořený švédskou firmou MySQL AB, Nyní Sun Microsystems, (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 Lze instalovat 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 označuje to, co někteří lidé považují za další fázi vývoje webu, včetně jeho architektury a aplikací. Vyznačuje se:
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í
Sdílení aplikací Mikroformáty Sémantický web Interakce SW Web 3.0 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