29
WEB-ПРОГРАММИРОВАНИЕ Лекция #1. Основы Web-технологий Яковенко К. С Омский государственный университет им. Ф. М. Достоевского Факультет компьютерных наук

Лекция #1. Основы Web-технологий

  • Upload
    -

  • View
    1.387

  • Download
    2

Embed Size (px)

DESCRIPTION

Web-программирование Лекция #1. Основы Web-технологий. Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук. Лектор: Яковенко Кирилл Сергеевич.

Citation preview

Page 1: Лекция #1. Основы Web-технологий

WEB-ПРОГРАММИРОВАНИЕЛекция #1. Основы Web-технологий

Яковенко К. С

Омский государственный университет им. Ф. М. ДостоевскогоФакультет компьютерных наук

Page 2: Лекция #1. Основы Web-технологий

2

Internet сегодня

Интернет (Internet) — глобальная компьютерная сеть, система объединяющая сотни миллионов компьютеров в общее информационное пространство. Часто упоминается как Всемирная сеть или Глобальная сеть, а также просто Сеть. Построена на базе стека протоколов TCP/IP.

Интернет представляет свою инфраструктуру для прикладных сервисов различного назначения, самым популярным из которых является Всемирная Паутина – World Wide Web (WWW).

Page 3: Лекция #1. Основы Web-технологий

3

Internet сегодня

Традиционно, у Internet есть 4 основные сферы применения:

Электронная почта и списки рассылки.

World Wide Web («Всемирная паутина»).

Удаленный доступ.

Файлообменные сети.

Page 4: Лекция #1. Основы Web-технологий

4

Internet сегодня

Все сервисы и услуги Internet можно разделить на стандартные и нестандартные.

Page 5: Лекция #1. Основы Web-технологий

5

Internet сегодня

Стандартные

Сервисы, для которых принципы построения клиентского и серверного программного обеспечения, а также протоколы взаимодействия сформулированы в виде международных стандартов.

Следовательно, разработчики программного обеспечения при практической реализации обязаны выдерживать общие технические требования.

Page 6: Лекция #1. Основы Web-технологий

6

Internet сегодня

Нестандартные

Представляют собой оригинальную разработку той или иной компании. В качестве примера можно привести различные системы типа системы интернет-телефонии, трансляции радио и видео и т.д.

Важной особенностью таких систем является отсутствие международных стандартов, что может привести к возникновению технических конфликтов с другими подобными сервисами.

Page 7: Лекция #1. Основы Web-технологий

7

World Wide Web

WWW — сетевая технология прикладного уровня стека TCP/IP, построенная на клиент-серверной архитектуре и использующая инфраструктуру Интернет для взаимодействия между сервером и клиентом.

Page 8: Лекция #1. Основы Web-технологий

8

Особенности Web 1.0Статичные страницы вместо генерируемого пользователями динамического контента;Фреймовая и/или табличная верстка;Использование фреймов;Широкое использование нестандартных тегов, поддерживаемых только конкретным браузером;Использование физических или внедренных стилей, редко – встраиваемых;Указание информации о рекомендованной версии браузера и разрешении монитора, при которых дизайн сайта отображается корректно;Гостевые книги, форумы или чаты;Использование графических и текстовых информеров для агрегирования информации.

Page 9: Лекция #1. Основы Web-технологий

9

Особенности Web 2.0Привлечение «коллективного разума» для наполнения сайта;

Взаимодействие между сайтами с использованием веб-сервисов;

Обновление веб-страниц без перезагрузки;

Агрегирование и синдикация информации;

Объединение различных сервисов для получения нового функционала;

Дизайн с применением стилевой разметки и акцентом на юзабилити.

Page 10: Лекция #1. Основы Web-технологий

10

Особенности Web 3.0Семантическая паутина (англ. Semantic Web) — часть глобальной концепции развития сети Интернет, целью которой является реализация возможности машинной обработки информации, доступной во Всемирной паутине. Основной акцент концепции делается на работе с метаданными, однозначно характеризующими свойства и содержание ресурсов Всемирной паутины, вместо используемого в настоящее время текстового анализа документов. В семантической паутине предполагается повсеместное использование, во-первых, унифицированных идентификаторов ресурсов (URI), а во-вторых — онтологий и языков описания метаданных.

Page 11: Лекция #1. Основы Web-технологий

11

World Wide Webвчера, сегодня, завтра

WEB 0.0 — юзер мечтает законнектиться с кем или чем либо

WEB 1.0 — юзер получает контент

WEB 2.0 — юзер создаёт контент

WEB 3.0 — коллективное создание контента

WEB 4.0 — контент думает за юзера

WEB 5.0 — контент общается с контентом

WEB 6.66 — контент удаляет юзеров, поняв что они бессмысленны

WEB 7.0 — весь контент самоудаляется, поняв что он бессмысленен...

Page 12: Лекция #1. Основы Web-технологий

12

RFC и вопрос стандартизации

RFC (Request for Comments) — документ из серии пронумерованных информационных документов Интернета, содержащих технические спецификации и стандарты, широко применяемые во всемирной сети. Практически все стандарты Глобальной сети существуют в виде опубликованных заявок RFC. Но в виде документов RFC выходят не только стандарты, а также концепции, введения в новые направления в исследованиях, исторические справки, результаты экспериментов, руководства по внедрению технологий, предложения и рекомендации по развитию существующих Стандартов и другие новые идеи в информационных технологиях.

Page 13: Лекция #1. Основы Web-технологий

13

RFC и вопрос стандартизацииПроект стандарта (Draft Standard) — означает, что предложенный стандарт принят сообществом, в частности, существуют две независимые по коду совместимые реализации разных команд разработчиков. В проекты стандартов ещё могут вноситься мелкие правки, но они считаются достаточно стабильными и рекомендуются для реализации.Высший уровень — стандарт Интернета. Это спецификации с большим успешным опытом применения и зрелой формулировкой. Параллельно с нумерацией RFC они имеют свою собственную нумерацию STD.Многие старые RFC замещены более новыми версиями под новыми номерами или вышли из употребления. Такие документы получают статус исторических (Historic)

Page 14: Лекция #1. Основы Web-технологий

14

RFC и вопрос стандартизации

Жизненный цикл стандарта Согласно RFC 2026:

Выносится на всеобщее рассмотрение интернет-проект (Internet Draft). Проекты не имеют официального статуса и удаляются из базы через шесть месяцев после последнего изменения.

Если проект стандарта оказывается достаточно удачным и непротиворечивым, он получает статус предложенного стандарта (Proposed Standard), и свой номер RFC. Наличие программной реализации стандарта желательно, но не обязательно.

Page 15: Лекция #1. Основы Web-технологий

15

Стек протоколов TCP/IP.

Стек протоколов TCP/IP — набор сетевых протоколов передачи данных, ориентированных на совместную работу. Название TCP/IP происходит из двух наиважнейших протоколов семейства — Transmission Control Protocol (TCP) и Internet Protocol (IP), которые были разработаны и описаны первыми в данном стандарте.

Page 16: Лекция #1. Основы Web-технологий

16

Стек протоколов TCP/IP.Компоненты семейства протоколов TCP/IP:

IP (Internet Protocol – межсетевой протокол)

ICMP (Internet Control Message Protocol – протокол управляющих сообщений в сети Internet)

ARP (Address Resolution Protocol – протокол преобразования адресов)

UDP (User Datagram Protocol – протокол преобразования адресов) и TCP (Transmission Control Protocol – протокол управления передачей)

Page 17: Лекция #1. Основы Web-технологий

17

Семейство протоколов TCP/IP.

Прикладнойуровень

Транспортныйуровень

Сетевой уровень

Канальный уровень

Физическийуровень

arp rlogin, talk, ftp NFS, DNS, ntp traceroute

TCP UDP

IP ICMP

ARP, драйверы устройств

Витая пара, оптоволокно, радиоволны

Уровень сетевых интерфейсов

Page 18: Лекция #1. Основы Web-технологий

18

Название протокольных единиц данных в TCP/IP.

Прикладные протоколы

UDP TCP

IP

Сетевые интерфейсы

Поток

Дейтаграмма Сегмент

Дейтаграмма (пакет)

Кадр (фрейм)

Потоком данных называют данные, поступающие от приложения на вход протоколов транспортного уровня – TCP и UDP.

Протокол TCP “нарезает” из потока данных сегменты.

Дейтаграмма – это общее название для единиц данных, которыми оперируют протоколы без установления соединения.

В стеке TCP/IP единицы данных любых технологий, в которые упаковываются IP-пакеты для их последующей передачи через сети составной сети, принято называть также кадрами или фреймами.

Page 19: Лекция #1. Основы Web-технологий

19

Адресация в стеке TCP/IP

Важную часть технологии TCP/IP составляют задачи адресации:

Согласованное использование адресов различного типа;

Обеспечение уникальности адресов;

Конфигурирование сетевых интерфейсов и сетевых приложений.

Page 20: Лекция #1. Основы Web-технологий

20

Адресация в стеке TCP/IP

Для идентификации сетевых интерфейсов используются три типа адресов:

аппаратный адрес (MAC адрес сетевого оборудования);

IP-адрес программного обеспечения;

текстовые имена компьютеров.

Page 21: Лекция #1. Основы Web-технологий

21

Адресация в стеке TCP/IP

Все хосты и маршрутизаторы в Интернете имеют собственный уникальный IP-адрес.

IP-адрес всегда состоит из двух логических частей – номер сети и номер узла в сети.

Page 22: Лекция #1. Основы Web-технологий

22

Адресация в стеке TCP/IP

IP-адрес версии 4 (IPv4) имеет фиксированную длину 4 байта (32 бита) и обычно записывается ввиде 4 чисел, внезависимости от формата записи:

128.10.2.30 (самый распространенный)

10000000 00001010 00000010 00011110

80.0A.02.1D

Page 23: Лекция #1. Основы Web-технологий

23

Адресация в стеке TCP/IP

IP-адрес версии 6 (IPv6) имеет фиксированную длину 16 байтов (128 бита) и обычно записывается как восемь групп по четыре шестнадцатеричных символа, разделённых двоеточием:

fe80:0:0:0:200:f8ff:fe21:67cf).

Большое количество нулевых групп может быть пропущено с помощью двойного двоеточия (fe80::200:f8ff:fe21:67cf). Такой пропуск должен быть единственным в адресе.

Page 24: Лекция #1. Основы Web-технологий

24

Адресация в сетях и подсетях TCP/IP

Разбиение IP-адреса на номер узла и номер сети может происходить с помощью нескольких вариантов:

Фиксация границы (сейчас не используется);

Использование маски подсети или маски сети;

Использование классов адресов.

Page 25: Лекция #1. Основы Web-технологий

25

Пример наложения маски подсети

Пример записи IP-адреса (IPv4) в бесклассовой нотации: 192.0.2.32/27.

В данном примере видно, что в маске подсети 27 бит слева выставлены в единицу. В таком случае говорят о длине префикса подсети в 27 бит и указывают через косую черту (знак /) после базового адреса.

Октеты IP-адреса 192 0 2 32Биты IP-адреса 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0Биты маски подсети 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0Октеты маски подсети 255 255 255 224

Page 26: Лекция #1. Основы Web-технологий

26

Классы IP-адресов

Класс А позволяет задавать адреса для 126 сетей с 16 млн хостов каждой, класс B – до 16382 сетей с 64x1024 хостов, класс С – 2 млн сетей с 254 хостами в каждой. Сети класса D используются для многоадресной рассылки, а сети относящиеся к классу E зарезервированны для будущего применения.

Класс A 0 адрес сети (7 бит) адрес хоста (24 бита)Класс B 1 0 адрес сети (14 бит) адрес хоста (16 бит)Класс С 1 1 0 адрес сети (21 бит) адрес хоста (8 бит)Класс D 1 1 1 0 Адрес многоадресной рассылкиКласс E 1 1 1 1 Зарезервировано

Page 27: Лекция #1. Основы Web-технологий

27

Особые IP-адресаНеопределенный адрес - 0.0.0.0

Если в поле номера сети стоят только нули, то по умолчанию считается, что узел назначения принадлежит той же самой сети, что и узел, который отправил пакет.

Ограниченный широковещательный адрес (limited broadcast), если все двоичные разряды IP-адреса равны 1, пакет с таким адресом назначения должен рассылаться всем узлам

Широковещательный (broadcast), если номер узла состоит только из единиц, пакеты с таким адресом назначения рассылается всем узлам сети.

Адрес обратной петли – 127.х.х.х Данные не передаются в сеть, а возвращаются модулям верхнего уровня того же компьютера как только что принятые.

Page 28: Лекция #1. Основы Web-технологий

28

Domain Name System — система доменных имён

DNS — компьютерная распределённая система для получения информации о доменах.

Ключевые характеристики DNS:

Распределённость администрирования.

Распределённость хранения информации.

Кеширование информации.

Иерархическая структура.

Резервирование.

Page 29: Лекция #1. Основы Web-технологий

29

Яковенко Кирилл Сергеевич[email protected]

Омский государственный университет им. Ф. М. ДостоевскогоФакультет компьютерных наук