1 / 42

Web Technológiák

Web Technológiák. A Web és a HTTP protokoll. Baksáné Varga Erika. ME Általános Informatikai Tsz. Az Internet. Az Internet a világ legnagyobb számítógép hálózata (hálózatok hálózata = internetwork), amelyen az adatforgalmat a TCP/IP protokoll-együttes kezeli.

maude
Télécharger la présentation

Web Technológiák

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Technológiák A Web és a HTTP protokoll Baksáné Varga Erika ME Általános Informatikai Tsz.

  2. Az Internet Az Internet a világ legnagyobb számítógép hálózata (hálózatok hálózata = internetwork), amelyen az adatforgalmat a TCP/IP protokoll-együttes kezeli. TCP (Transmission Control Protocol) az Internet IP (Internet Protocol) szabványa A TCP/IP protokollcsoport lehetővé teszi az egymással összekapcsolt heterogén hálózatok közötti kommunikációt.

  3. Protokoll Azon kommunikációs szabályok és üzenetformátumok együttese, amelyeket a hálózatba kapcsolt számítógépeknek be kell tartaniuk, hogy (üzenetbe csomagolt) adatokat cserélhessenek egymással. A programok az Interneten folyó mindenféle kommunikációhoz protokollokat használnak.

  4. TCP/IP A felső TCP réteg az üzenetek csomagokra bontását, ill . azok összerakást végzi. Az IP réteg a csomagok (packet) cím részét kezeli (gateway ez alapján továbbítja a csomagot, akár különböző útvonalakon). 1960 vége 1970 eleje ARPA (Advanced Research Projects Agency), DOD (Department of Defence): • 7/8-ados szabály (hidegháború) • teljesen decentralizált • teljesen redundáns • rugalmas architektúra (fájl, hang továbbítás)

  5. Miért a TCP/IP? • Elfogadott ipari szabvány protokoll • Irányítható protokoll együttes (routable) • Különböző operációs rendszereken is rendelkezésre áll (Unix - Windows) • A protokollok nyilvánosak és szabadon felhasználhatóak (nincs jogdíj) • Ez egy jól megtervezett protokoll • Ez egy nyílt szabvány, egyetlen kereskedő sem uralhatja, bárki használhatja és ez alapján alkalmazásokat fejleszthet

  6. A TCP/IP nyílt szabvány • Internet Society (ISOC): bátorítja a fejlesztést és elősegíti az Internet hozzáférhetőségét. • Internet Architecture Board (IAB): az ISOC technikai bizottsága, az szabványok felállításáért és közzétételéért felel (RFC). • Az IAB 3 csoportot irányít:Internet Research Task Force (IRTF): a TCP/IP fejlesztéséért felel,Internet Engineering Task Force (IETF): az Internet problémák megoldására és az új szabványok elfogadtatásáért felel,Internet Assigned Numbers Authority (IANA): a protokollokhoz egyedi számot v. portot rendel.

  7. TCP/IP, RFC Request for Comment (RFC): a TCP/IP szabványokat konszenzussal alakítják ki. RFC formájában bárki javaslatot tehet, egy idő múlva vagy elfogadják, vagy elutasítják. Az Internet Network Information Center (InterNIC) feladatai: • az IP címek kiosztásának felügyelete, • a szervezetek domain nevei kiosztásának felügyelete.

  8. OSI - TCP/IP Forrás: SearchTechTarget.com.

  9. A TCP/IP rétegei A Network Interface réteg az OSI fizikai és adatkapcsolati rétegének felel meg, a host hálózati kapcsolódását határozza meg. A keretek számítógépek közötti cseréjéhez szükséges hardvert és szoftvert tartalmazza. LAN alapú (pl. Ethernet) vagy WAN-alapú (pl. ISDN) technológiát használhat.

  10. A TCP/IP rétegei Az Internet réteg több protokollt használ a csomagok kézbesítéséhez: IP (Internet Protocol): a csomagok címzéséért és a hálózatok közötti útvonal-irányításáért felel. Biztosítja a megfelelő célhálózat elérését. ARP (Address Resolution Protocol): a hardver címek biztosításért felel és megfelelteti azokat az IP címeiknek, amikor a cél számítógép ugyanazon a hálózaton van.

  11. A TCP/IP rétegei ICMP (Internet Control Management Protocol): hibajelzésre használatos és üzenetet küld a csomag kézbesítéséről. Példa üzenetek: Destination unreachable: a router nem találja a célt. Time exceeded: a csomag TTL-je (Time to Live) elérte a zérust (255-ről indul, routerenként eggyel csökken).

  12. A TCP/IP rétegei Transport Layer: a kiinduló és a cél számítógép közötti kommunikációt biztosítja és az alkalmazási réteg információit csomagokra tördeli. A adat kézbesítéséhez két módszert használ: kapcsolat-orientált kézbesítés a TCP használatával, kapcsolat-nélküli kézbesítés az UDP használatával.

  13. A TCP/IP rétegei Application Layer: itt futnak a TCP/IP szolgáltatások (magas-szintű protokollok), mint pl. FTP, HTTP és SMTP. A TCP/IP környezetben általában két alkalmazás programozási interfészt használnak (API): a socket-eket és a NetBIOS-t.

  14. A TCP/IP hálózati modell A TCP/IP szerint kialakított hálózatok az ISO/OSI referenciamodell hét szintje közül csak ötöt használnak.

  15. A Web A Web 1989 márciusában született meg. A Web megalkotója: Tim Berners-Lee (CERN, Genf) Célja: dokumentumok összekapcsolása (megosztása) hálózaton keresztül Javaslat:hipertext-rendszer (független dokumentumok összekapcsolása és a kapcsolatokon keresztüli megtekintése)

  16. A Web A Web első nyilvános használata: 1992 jan. • A dokumentumokat (helyi) Web kiszolgálókon tárolta. • Az adatokhoz Web böngészők segítségével fértek hozzá. Ma (World Wide Web): • A felhasználók rákapcsolódnak egy Web kiszolgálóra és lekérik a dokumentumokat. • A Web kiszolgálók a kérésre válaszolva szolgáltatják a dokumentumokat. • A felhasználók böngészők segítségével tekintik meg a dokumentumokat. • Egy kiszolgáló egyidejűleg több felhasználói kérést is teljesít.

  17. A Web és az Internet „A Web az Internet tetején foglal helyet.” Azaz a Web az Internetet használja a kommunikáció alapjául. Az Internet az a szállító mechanizmus, ami lehetővé teszi, hogy a böngésző adatokat küldjön és kapjon. A Web egymással összekapcsolt dokumentumokból áll. Segítségével haladhatunk végig az ”egymáshoz kapcsolódó” dokumentumokon.

  18. WWW definíciók Technikai meghatározás: Az Interneten található összes erőforrás és felhasználó, akik a Hypertext Transfer Protocol-t használják. A World Wide Web Corsortium (W3C, megalapítását Tim Berners-Lee támogatta) általánosabb meghatározása: A World Wide Web a hálózaton elérhető információk univerzuma, az emberi tudás megtestesülése.

  19. W3C Saját meghatározása: A World Wide Web Corsortium azért létezik, hogy a Web összes lehetőségeit valóra váltsa. A W3C egy ipari konzorcium, ami a Web fejlődéséhez szükséges szabványokat és a WWW termékek közötti együttműködést mozdítja elő, specifikációk és referencia szoftverek előállításával. Bár ipari szereplők alapították, cég semleges és termékei mindenki számára ingyenesek. A Konzorcium nemzetközi, az USA-ban a MIT Laboratory for Computer Science és Európában az INRIA ad neki közösen otthont.

  20. A HTTP protokoll A HTTP (Hypertext Transfer Protocol) kifejezetten a Web számára megtervezett hálózati protokoll. Vagyis a Webnek saját kommunikációs szabályai vannak, amelyeknek együtt kell működniük az Internet protokollokkal, hogy továbbíthatók legyenek a Web dokumentumok.

  21. A HTTP protokoll A Web HTTP protokollját úgy képzelhetjük el, mint ami az Internet TCP/IP protokollja fölött helyezkedik el. Ahhoz, hogy használhassuk a Web világhálót, előzőleg rá kell kapcsolódnunk az Internetre. Azaz a Webet Internet nélkül nem érhetjük el.

  22. A HTTP protokoll A HTTP vezérli a Web kiszolgáló és a böngésző közötti együttműködést. • Böngészővel Web-helyhez kapcsolódunk = a böngésző a Web-hely kiszolgálójától kéri a Web-oldal (ami egyszerű, HTML kódjeleket és ASCII szöveget tartalmazó fájl) megjelenítését. • Válaszul a Web kiszolgáló elküldi a kért fájl másolatát a böngészőnek. A böngésző a fájl megjelenítésekor a HTML kódjeleket olvasva formázza meg a szöveget. Amikor grafikának megfelelő kódjelet olvas, kéri a kiszolgálót hogy küldje el a grafikát tartalmazó fájl másolatát.

  23. Dokumentumformátumok a Weben A Web dokumentumok formátumát (és azt, hogy miképpen továbbíthatók multimédiás adatok – bináris fájlok, képfájlok, mozgóképfájlok, audiófájlok, alkalmazásfájlok stb. - az Internet levelezőszabványaival) a MIME (Multipurpose Internet Mail Extension) specifikáció írja elő. Elődje: RFC 822: a számítógépek között továbbítandó szöveges üzenetek (e-mail) szintaxisát írta le.

  24. A MIME használata A Web kiszolgáló az Interneten keresztül a böngészőnek elküldött fájl típusát leíró információt beilleszti egy MIME fejlécbe. A böngésző ez alapján határozza meg a törzs (a kiszolgáló által elküldött fájl) típusát. A törzs: • lehet üres, vagy • egy vagy több dokumentumot tartalmazhat.

  25. MIME típusok, altípusok A Web kiszolgáló a kliensnek elküldött minden egyes fájl fejlécébe felvesz egy MIME típust és altípust. • Ezek a Content-type fejlécmezőben találhatók, ami a böngészőnek elküldött üzenet elején helyezkedik el. • Ezeket a kiszolgáló általában a fájl kiterjesztése alapján állapítja meg.

  26. MIME típusok, altípusok MIME típus: általános fájlcsoport-típus MIME altípus: általános fájlcsoport-típuson belüli konkrét típus Például: Stb.

  27. MIME típusok, altípusok • Több, esetenként különböző adattípusú törzs összekombinálásakor: Content-type: multipart/mixed • Bináris adatok, alkalmazás fájlok továbbításakor: Content-type: application/postscript • Meglévő üzenet becsomagolásához (e-mailre válaszban az eredeti üzenet is szerepeljen): Content-type: message stb.

  28. A HTTP használata Kétféle lehet: • Állapot nélküli: a böngésző és a kiszolgáló között minden egyes HTTP művelet (tranzakció) idejére létrejön egy kapcsolat, ami azonnal meg is szakad a művelet végrehajtása után (a kiszolgáló hatékonysága nő) • A kiszolgálók fenntartják a kapcsolatukat: válaszadás után nem szakítják meg azonnal a kapcsolatot (teljesítmény javul)

  29. HTTP információk • A HTTP szöveg-alapú, olvasható protokoll. • Dokumentumformátumok dinamikus megállapítása: amikor a böngésző kapcsolatba lép egy kiszolgálóval, elküldi azon formátumok listáját, amiket képes felismerni. Így a kiszolgáló (amennyiben ismeri) a megfelelő formátumban tudja elküldeni az adatokat. • A HTTP fejlécben azokról az objektumokról található információ (metainformáció), amelyeket az alkalmazások a Weben keresztül elküldenek. Ha egy alkalmazás nem tudja értelmezni a HTTP fejléc információit, figyelmen kívül hagyja azokat.

  30. A HTTP általános protokoll A HTTP üzenetei a kliens által elküldött kérésekből és a kiszolgáló által a kliensnek visszaküldött válaszokból állnak. egyszerű teljes • nincs fejléc - ált. üzenetformátum • csak törzs (HTTP-től független) (a kliensnek kell - van fejléc azonosítania a törzs - van törzs formátum típusát) (a HTTP nem törődik a törzs tartalmával)

  31. A HTTP használatával végzett műveletek • Keresés: egy Web objektum kereséséhez az alkalmazások a HTTP segítségével adják meg a kiszolgáló számára az obj. URL-jét. -> Kérési üzenet tartalma: kérési eljárás, URI, protokollkonverzió, MIME-szerű üzenet (kérésmódosítás, ügyfél-információ, esetleg a törzs) • Elővétel: a kiszolgáló egy állapotsorral válaszol, ami a protokoll verzióját és a sikert vagy hibát jelentő kódot tartalmazza; ezt egy MIME-szerű üzenet követi (kiszolgálóval kapcs. inf., fejléc-inf., esetleg törzs) • Megjelölés: a böngésző állapotsorában üzeneteket olvashatunk az éppen folyó művelettel kapcsolatban (megkezdődött-e a kért obj. elővétele, mekkora a mérete stb.)

  32. A HTTP működése 4 lépésben • Kapcsolat létrehozása A HTTP protokoll portszáma: 80, 8080 • Az ügyfél kérésének elküldése 1. Kérési sor tartalma: Minden HTTP kérés egy metódussal (a kérés célját meghatározó parancs) kezdődik, amit egy obj. URL-je követ. Az ügyfél hozzáfűzi ezt az információt az általa használt HTTP protokoll verziójához. (szóközzel elválasztva) 2. Ezt egy soremelés (CRLF) karaktersorozat követi. 3. Opcionális kérésfejléc: a kérésre és a kezdeményező ügyfélre vonatkozó információk. 4. Soremelés karaktersorozat 5. Opcionális törzs: a továbbítandó adatok bájtokba csoportosítva.

  33. A HTTP működése 4 lépésben • A kiszolgáló válaszának elküldése Válaszüzenet tartalma: 1. HTTP protokoll verziója 2. Egy 3 számjegyből álló állapotkód és ennek a szöveges leírása 3. Soremelés karakter 4. Opcionális válaszfejléc (a kért erőforrásra vonatkozó inf., a válasz továbbításához szüks. MIME deklarációk) 5. Soremelés karakter 6. Opcionális törzs (a továbbítandó adat bájtokba csoportosítva) • Kapcsolat lezárása állapot-sor

  34. A HTTP válaszkódok osztályai

  35. A HTTP metódusai • GET: erőforrás kérés parancsa (az egyszerű kérések csak ezt a metódust ismerik; itt a kérési sorban nem kell megadni a HTTP verziót) • HEAD: erőforrás kérés parancsa, ahol a kiszolgáló a válaszban nem küld vissza törzset (csak inf. szerzés az erőforrásról) • POST: a kérésbe beillesztett obj-ot használja a Web kiszolgáló a kérési sor URI-je által megadott erőforrásként (ált. létrehozza vagy lecseréli a metódusban megadott URI-hez tartozó erőforrást) Érvényes Content-length (kérési üzenet tartalmának hossza) mezőt kell tartalmaznia. • Stb.

  36. Általános fejléc mezők • Date • MIME-version • Pragma Direktívák a kliens és a kiszolgáló közötti úton elhelyezkedő bármely fogadó állomás vagy átjáró számára, hogy hogyan engedjék át a kérést.

  37. A kérésfejléc mezői • Accept: ügyfél által támogatott MIME típusok és altípusok listája • Authorization • From • If-modified-since: feltételes GET metódus (ha a kért erőforrás a mezőben megadott dátum óta nem módosult, akkor a kiszolgáló nem küldi el az erőforrás másolatát) • Referer: annak az erőforrásnak a címe, ahonnan az aktuális URI-t megkapta az ügyfél • User-agent: a kérés küldéséért felelős kliens (statisztikai célokra használják, pl. látogatók száma)

  38. A törzsfejléc mezői • Allow: az ügyfél által az adott erőforráson elvégezhető HTTP metódusok listája • Content-encoding: a törzs médiatípusához használt tömörítés • Content-length: a GET metódus hatására a fogadó fél által kapott törzs mérete; HEAD metódus esetén annak a törzsnek a mérete, ami akkor került volna elküldésre, ha a kérés GET lett volna; POST metódus esetén a kiszolgálóra küldendő törzs mérete (a törzs méretét a bájtok decimális számaként kell megadni, 0 vagy pozitív) • Content-type: a GET metódusra válaszként kapott törzs médiatípusa; HEAD metódus esetén … (lásd fent) • Expires: dátum és idő, ami után az alkalmazások a törzset elavultnak feltételezik • Extension-header: további törzsfejléc definiálását lehetővé tevő mechanizmus (a HTTP protokoll megváltoztatása nélkül) • Last-modified

  39. A válaszfejléc mezői • Location: a kérési sorban az URI által megadott erőforrás pontos címe • Server: inf. a kiszolgáló által a kérés teljesítéséhez felhasznált szoftverről • www-authenticate: a kliensazonosításhoz szükséges információkat juttat a kiszolgálóhoz

  40. S-HTTP • Secure Hypertext Transfer Protocol • Tartalmazza a Web dokumentumok titkosítását, valamint digitális aláírásokat • Lehetővé teszi, hogy az ügyfél a MAC (Message Authentication Code) segítségével ellenőrizze a Web-üzenet épségét • Vö.: SSL (Secure Socket Layer)

  41. Webes alkalmazások hálózati architektúrája • Mainframe-ek • 2-tier architektúra • 3-tier architektúra • n-tier … • Middleware koncepció (lásd Osztott rendszerek)

  42. Web technológiák • HTML: a web „régi” nyelve • Szerver oldali API-k: • CGI (Common Gateway Interface) • ISAPI (Internet Server API, Microsoft) • ColdFusion • PHP (Hypertext Preprocessor) • Alkalmazás szerver • Kliens oldali API-k: • Java script • Java applet • XML: a web „új” nyelve

More Related