Устройство Интернета
<<  Подключение к сети Интернет Прикладные протоколы сети Интернет  >>
Web, Urllib
Web, Urllib
Общие сведения
Общие сведения
Всемирная паутина
Всемирная паутина

Гипертекст
Гипертекст
Язык HTML
Язык HTML
Семантическая паутина
Семантическая паутина
URI
URI
Ключевые принципы
Ключевые принципы
Протокол IP
Протокол IP
Transmission control protocol
Transmission control protocol
Сетевой протокол
Сетевой протокол
Специальные маршрутизаторы
Специальные маршрутизаторы
Сетевая модель OSI
Сетевая модель OSI
Уровень OSI
Уровень OSI
Протокол прикладного уровня
Протокол прикладного уровня
Технология «клиент-сервер»
Технология «клиент-сервер»
Метод HTTP
Метод HTTP
GET
GET
Библиотека Urllib
Библиотека Urllib
Классы Httplib
Классы Httplib
Сеанс
Сеанс
Связь с сервером
Связь с сервером
Список
Список
Средства высокого уровня
Средства высокого уровня
Аутентификация
Аутентификация
Протоколы
Протоколы
Объект, реализующий чтение ресурса
Объект, реализующий чтение ресурса
Словарь
Словарь
Код страницы
Код страницы

Средства для разбиения Url на компоненты
Средства для разбиения Url на компоненты
Средства Urlparse
Средства Urlparse
Urlunparse(tuple) Восстанавливает по tuple url адрес
Urlunparse(tuple) Восстанавливает по tuple url адрес
Программное обеспечение
Программное обеспечение
Прокси-сервер
Прокси-сервер
Клиент
Клиент
Виды прокси-серверов
Виды прокси-серверов
Import
Import
Модуль CGI
Модуль CGI
Простой интерфейс
Простой интерфейс



Средства CGI
Средства CGI
Конструктор класса
Конструктор класса
Атрибуты класса
Атрибуты класса
Имя и адрес
Имя и адрес
Cookie
Cookie
Фрагменты данных
Фрагменты данных
Установка куки
Установка куки
Содержимое страницы
Содержимое страницы
Браузер
Браузер
Пример
Пример
I am just asking
I am just asking
Презентация «Протоколы сети Интернет». Размер 3067 КБ. Автор: Borg.

Загрузка...

Протоколы сети Интернет

содержание презентации «Протоколы сети Интернет.ppt»
СлайдТекст
1 Web, Urllib

Web, Urllib

Web, Urllib. Кратко о том, что и как в инете, и причем здесь Питон.

2 Общие сведения

Общие сведения

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

3 Всемирная паутина

Всемирная паутина

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

4

5 Гипертекст

Гипертекст

Большинство ресурсов всемирной паутины представляет собой гипертекст. Гипертекстовые документы, размещаемые во всемирной паутине, называются web-страницами. Для загрузки и просмотра web-страниц используются специальные программы — браузеры.

6 Язык HTML

Язык HTML

Для облегчения создания, хранения и отображения гипертекста во Всемирной паутине традиционно используется язык HTML (англ. HyperText Markup Language), язык разметки гипертекста. После того, как HTML-файл становится доступен веб-серверу, его начинают называть «веб-страницей». В целом, Всемирная паутина стоит на «трёх китах»: HTTP, HTML и URL.

7 Семантическая паутина

Семантическая паутина

Семантическая паутина — это направление развития Всемирной паутины, целью которого является представление информации в виде, пригодном для машинной обработки. Семантическая паутина работает параллельно с обычной Паутиной и на её основе, используя протокол HTTP и идентификаторы ресурсов URI.

8 URI

URI

URI (англ. Uniform Resource Identifier) — унифицированный (единообразный) идентификатор ресурса. URI — это последовательность символов, идентифицирующая абстрактный или физический ресурс. Структура URI очень гибка, синтаксис не сложен. В базовом виде URI представляется как: <схема>:<идентификатор-в-зависимости-от-схемы> Самый известный пример URI — это URL. http://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D0%BA%D1%80%D0%BE%D0%BA%D1%80%D0%.

9 Ключевые принципы

Ключевые принципы

Ключевые принципы. Интернет состоит из многих тысяч корпоративных, научных, правительственных и домашних компьютерных сетей. Объединение сетей разной архитектуры и топологии стало возможно благодаря протоколу IP (англ. Internet Protocol) и принципу маршрутизации пакетов данных.

10 Протокол IP

Протокол IP

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

11 Transmission control protocol

Transmission control protocol

Transmission Control Protocol (TCP) — один из основных сетевых протоколов Интернета, предназначенный для управления передачей данных в сетях и подсетях TCP/IP. TCP — это транспортный механизм, предоставляющий поток данных, с предварительной установкой соединения, за счёт этого дающий уверенность в достоверности получаемых данных, осуществляет повторный запрос данных в случае потери данных и устраняет дублирование при получении двух копий одного пакета.

12 Сетевой протокол

Сетевой протокол

Сетевой протокол — набор правил, позволяющий осуществлять соединение и обмен данными между двумя и более включёнными в сеть устройствами. Систему протоколов Интернет называют «стеком протоколов TCP/IP».

13 Специальные маршрутизаторы

Специальные маршрутизаторы

Протокол IP был специально создан агностическим в отношении физических каналов связи. На стыках сетей специальные маршрутизаторы (программные или аппаратные) занимаются автоматической сортировкой и перенаправлением пакетов данных, исходя из IP-адресов получателей этих пакетов.

14 Сетевая модель OSI

Сетевая модель OSI

Сетевая модель OSI (ЭМВОС) — абстрактная сетевая модель для коммуникаций и разработки сетевых протоколов. Предлагает взгляд на компьютерную сеть с точки зрения измерений. Каждое измерение обслуживает свою часть процесса взаимодействия. Модель OSI. Модель OSI. Модель OSI. Тип данных. Уровень. Функции. Данные. Данные. Данные. 7. Прикладной уровень. Доступ к сетевым службам. 6. Уровень представления. Представление и кодирование данных. 5. Сеансовый уровень. Управление сеансом связи. Сегменты. 4. Транспортный. Прямая связь между конечными пунктами и надежность. Пакеты. 3. Сетевой. Определение маршрута и логическая адресация. Кадры. 2. Канальный. Физическая адресация. Биты. 1. Физический уровень. Работа со средой передачи, сигналами и двоичными данными.

15 Уровень OSI

Уровень OSI

Уровень OSI. Протоколы, примерно соответствующие уровню OSI. Прикладной. BGP, DNS, FTP, HTTP, HTTPS, IMAP, LDAP, POP3, SNMP, SMTP, SSH, Telnet, XMPP (Jabber). Сеансовый/Представления. SSL, TLS. Транспортный. TCP, UDP. Сетевой. EIGRP, ICMP, IGMP, IP, IS-IS, OSPF, RIP. Канальный. Arcnet, ATM, Ethernet, Frame relay, HDLC, PPP, L2TP, SLIP, Token ring.

16 Протокол прикладного уровня

Протокол прикладного уровня

HTTP. HTTP ( hypertext transfer protocol ) — протокол прикладного уровня передачи данных (изначально — в виде гипертекстовых документов).

17 Технология «клиент-сервер»

Технология «клиент-сервер»

Основой HTTP является технология «клиент-сервер». Предполагается существование: Потребителей (клиентов), которые инициируют соединение и посылают запрос. Поставщиков (серверов), которые ожидают соединения для получения запроса, производят необходимые действия и возвращают обратно сообщение с результатом.

18 Метод HTTP

Метод HTTP

Метод HTTP — последовательность из любых символов, кроме управляющих и разделителей, указывающая на основную операцию над ресурсом. Список методов: GET, HEAD, POST, PUT, PATCH, DELETE, TRACE, LINK, UNLINK, CONNECT, OPTIONS.

19 GET

GET

GET - используется для запроса содержимого указанного ресурса. С помощью метода GET можно также начать какой-либо процесс. HEAD - Аналогичен методу GET, за исключением того, что в ответе сервера отсутствует тело. POST - Применяется для передачи пользовательских данных заданному ресурсу.

20 Библиотека Urllib

Библиотека Urllib

httplib. Этот модуль определяет классы, реализующие HTTP и HTTPS протоколы. Обычно он не используется непосредственно, его классы и методы использует библиотека urllib для обработки URL адресов, которые используют HTTP и HTTPS.

21 Классы Httplib

Классы Httplib

Классы httplib. class httplib.HTTPSConnection(…) class httplib.HTTPResponse(…) class httplib.HTTPMessage (Provides utility functions to deal with HTTP Headers.) Также в этом модуле много объектов класса Exception.

22 Сеанс

Сеанс

Class httplib.Httpconnection(host[, port[, strict[, timeout[, source_address]]]]) (предоставляет один сеанс с HTTP сервером.) H3 = httplib.Httpconnection('www.Google.Ru', 80) h3 = httplib.Httpconnection('www.Google.Ru’, 80, timeout=10).

23 Связь с сервером

Связь с сервером

HTTPConnection.request(method, url[, body[, headers]]) request(…) отправляет запрос серверу используя HTTP метод method и селектор url. HTTPConnection.getresponse() вызывается после request(…) для получения ответа от сервера. Возвращает объект класса HTTPResponse HTTPConnection.close() прекращает связь с сервером.

24 Список

Список

class httplib.HTTPResponse(sock[, debuglevel=0][, strict=0]) Объект - то, что возвращается после успешного соединения. Не инициализируется пользователем. HTTPResponse.getheaders() Возвращает список из пар (header, value). Этот список дает информацию о сайте и сервере. Пример программы с использованием httlib: import httplib conn = httplib.HTTPConnection("www.python.org") conn.request("GET", "/index.html") j = conn.getresponse() print j.getheaders().

25 Средства высокого уровня

Средства высокого уровня

Urllib. Этот модуль предоставляет средства высокого уровня для чтения сетевых ресурсов, используя различные протоколы.

26 Аутентификация

Аутентификация

Определенные в этом модуле средства позволяют обращаться к ресурсам через proxy- сервер, не требующий аутентификации. Аутентификация— проверка принадлежности субъекту доступа предъявленного им идентификатора; подтверждение подлинности. (Не путать с авторизацией и идентификацией).

27 Протоколы

Протоколы

Стоит отметить, что при работе с WWW используется в основном протокол HTTP, однако WWW охватывает не только HTTP, но и многие другие протоколы (FTP, gopher, HTTPS и т.п.).

28 Объект, реализующий чтение ресурса

Объект, реализующий чтение ресурса

Средства urllib. urlopen(url [, data]) Создает и возвращает объект, реализующий чтение ресурса url. Использует HTTP метод GET по умолчанию. Чтобы использовался метод POST необходимо указать строку data с данными в формате ‘application/x-www-form-urlencoded’.

29 Словарь

Словарь

urlencode(dict) dict – словарь. Возвращает строку с данными dict в формате ‘application/x-www-form-urlencoded’. Возвращаемая строка состоит из фрагментов ‘key=value’, разделенных ‘&’, где key и value преобразуются с помощью функции quote_plus(). quote_plus(string [, safe]) – заменяет спец. Символы в строке string на последовательности вида ‘%xx’ Преобразованию не подвергаются буквы, цифры и символы ‘_’ , ‘,’ , ‘.’ и ‘-’. Пробелы заменяются на ‘+’. Если + в строке safe, то заменяет на ‘%2b’.

30 Код страницы

Код страницы

read(), readline(), readlines(), fileno() и close() реализуют чтение ресурса. info() возвращает информацию о ресурсе. geturl() возвращает истинную информацию о ресурсе. Пример: import urllib params = urllib.urlencode({’spam’ : 1, ’eggs’ : 2, ’bacon’: 0}) f = urllib.urlopen("http://www.musi-cal.com/cgi-bin/query?" +params) print f.read() #выведет код страницы.

31

32 Средства для разбиения Url на компоненты

Средства для разбиения Url на компоненты

Модуль urlparse. Этот модуль определяет средства для разбиения Url на компоненты, конструирования URL из компонент и преобразования относительных URL в абсолютные (RFC 1808).

33 Средства Urlparse

Средства Urlparse

Средства urlparse. urlparse(urlstring [, default_scheme [, allow_fragments]]) Разбивает URL на части, и возвращает tuple из 6 элементов. Идентификатор протокола, положение в сети, путь, параметры, строка запроса и идентификатор фрагмента. ’scheme://netloc/path;parameters?query#fragment’ выдает ‘(scheme, netloc, path, parameters, query, fragment)’.

34 Urlunparse(tuple) Восстанавливает по tuple url адрес

Urlunparse(tuple) Восстанавливает по tuple url адрес

urlunparse(tuple) Восстанавливает по tuple url адрес. urljoin(base, rel_url [, allow_fragments]) Конструирует и возвращает полный url адрес.

35 Программное обеспечение

Программное обеспечение

Всё программное обеспечение для работы с протоколом HTTP разделяется на три больших категории: Серверы как основные поставщики услуг хранения и обработки информации (обработка запросов). Клиенты — конечные потребители услуг сервера (отправка запроса). Прокси для выполнения транспортных служб.

36 Прокси-сервер

Прокси-сервер

Прокси-сервер. Прокси-сервер — служба в компьютерных сетях, позволяющая клиентам выполнять косвенные запросы к другим сетевым службам.

37 Клиент

Клиент

Сначала клиент подключается к прокси-серверу и запрашивает какой-либо ресурс (например, e-mail), расположенный на другом сервере. Затем прокси-сервер либо подключается к указанному серверу и получает ресурс у него, либо возвращает ресурс из собственного кэша (в случаях, если прокси имеет свой кэш).

38 Виды прокси-серверов

Виды прокси-серверов

Виды прокси-серверов. Прозрачный прокси — схема связи, при которой трафик, или его часть, перенаправляется на прокси-сервер неявно (средствами маршрутизатора). Обратный прокси — прокси-сервер, который в отличие от прямого, ретранслирует запросы клиентов из внешней сети на один или несколько серверов, логически расположенных во внутренней сети.

39 Import

Import

import urllib2 uri = "http://www.python.org" http_proxy_server = "someproxyserver.com" http_proxy_port = "3128" http_proxy_realm = http_proxy_server # Worked in his (limited) testing environment. http_proxy_user = "username" http_proxy_passwd = "password" # Next line = "http://username:password@someproxyserver.com:3128" http_proxy_full_auth_string = "http://%s:%s@%s:%s" % (http_proxy_user, http_proxy_passwd, http_proxy_server, http_proxy_port) def open_url_no_proxy(): urllib2.urlopen(uri) print "Apparent success without proxy server!" def open_url_installed_opener(): proxy_handler = urllib2.ProxyHandler({"http":http_proxy_full_auth_string}) opener = urllib2.build_opener(proxy_handler) urllib2.install_opener(opener) urllib2.urlopen(uri) print "Apparent success through proxy server!“ if __name__ == "__main__": open_url_no_proxy() open_url_installed_opener() Example for using urllib2.urlopen() with a proxy server requiring authentication.

40 Модуль CGI

Модуль CGI

Модуль CGI. CGI- программа вызывается http-сервером, обычно для обработки данных, переданных пользователем через элементы ‘FORM’ и ‘ISINDEX’ языка HTML.

41 Простой интерфейс

Простой интерфейс

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

42

43

44

45 Средства CGI

Средства CGI

Средства cgi. FieldStorage([**keyword_args]) При инициализации его без аргументов происходит обработка данных со стандартного потока ввода и /или из переменных окружения в соответствии со стандартом CGI.().

46 Конструктор класса

Конструктор класса

Конструктор класса принимает след. Аргументы: fp – альтернативный файловый объект Headers – отобр- е ин. о HTTP заголовках и т.д. И для остальных сущ. значение по умолчанию.

47 Атрибуты класса

Атрибуты класса

Атрибуты класса FieldStorage name filename Value file type Headers и др.

48 Имя и адрес

Имя и адрес

import cgi print """\ Content-Type: text/html <html> <body>""" form = cgi.FieldStorage() if form.has_key("name") and form.has_key("addr"): print """\ <p>Имя: %s</p> <p>Адрес: %s</p>""" else: print """\ <h1>Ошибка</h1> <p>Введите пожалуйста имя и адрес</p>""" print """\ </body> </html>"""

49 Cookie

Cookie

Cookie. Куки — небольшой фрагмент данных, созданный веб-сервером или веб-страницей и хранимый на компьютере пользователя в виде файла, который веб-клиент (обычно веб-браузер) каждый раз пересылает веб-серверу в HTTP-запросе при попытке открыть страницу соответствующего сайта.

50 Фрагменты данных

Фрагменты данных

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

51 Установка куки

Установка куки

Установка куки Запрашивая страницу, браузер отправляет веб-серверу короткий текст с HTTP-запросом. Например, для доступа к странице http://www.example.org/index.html, браузер отправляет на сервер www.example.org следующий запрос: GET /index.html HTTP/1.1 Host: www.example.org. Браузер. ? Сервер.

52 Содержимое страницы

Содержимое страницы

Сервер отвечает. Http/1.1 200 OK content-type: text/html set-cookie: name=value (содержимое страницы). Браузер. ? Сервер.

53 Браузер

Браузер

GET /spec.html HTTP/1.1 Host: www.example.org Cookie: name=value Accept: */*. Браузер. ? Сервер.

54 Пример

Пример

Пример: import http.cookiejar, urllib.request cj = http.cookiejar.CookieJar() opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj)) r = opener.open("http://example.com/").

55 I am just asking

I am just asking

I am just asking…

«Протоколы сети Интернет»
Загрузка...
Сайт

5informatika.net

115 тем
5informatika.net > Устройство Интернета > Протоколы сети Интернет.ppt