Содержание
Протокол TCP/IP. Привести примеры
Распределение протоколов по уровням модели TCP/IP
Канальный уровень
Транспортный уровень
Скорость загрузки Web-страницы. Как можно ускорить загрузку Web-страницы?
Факторы, влияющие на скорость загрузки Web-страницы
Ускорение загрузки Web-страниц
Протокол TCP/IP. Привести примеры
Протоколы TCP/IP (Transmission Control Protocol/Internet Protocol) являются базовыми транспортным и сетевым протоколами в OS UNIX. В заголовке TCP/IP пакета указывается:
- IP-адрес отправителя,
- IP-адрес получателя,
- Номер порта (фактически - номер прикладной программы, которой этот пакет предназначен).
Пакеты TCP/IP имеют уникальную особенность добраться до адресата, пройдя сквозь разнородные в том числе и локальные сети, используя разнообразные физические носители. Маршрутизацию IP-пакета (переброску его в требуемую сеть) осуществляют на добровольных началах компьютеры, входящие в TCP/IP сеть.
Протокол IP - это протокол, описывающий формат пакета данных, передаваемого по сети.
Когда Вы получаете телеграмму, весь текст в ней (и адрес, и сообщение) написан на ленте подряд, но есть правила, позволяющие понять, где тут адрес, а где сообщение. Аналогично, пакет в компьютерной сети представляет собой поток битов, а протокол IP определяет, где адрес и прочая служебная информация, а где сами передаваемые данные. Таким образом, протокол IP в эталонной модели ISO/OSI является протоколом сетевого уровня.
Протокол TCP - это протокол следующего уровня, предназначеный для контроля передачи и целостности передаваемой информации.
Стек протоколов TCP/IP (англ. Transmission Control Protocol/Internet Protocol) - набор сетевых протоколов разных уровней модели сетевого взаимодействия DOD, используемых в сетях. Протоколы работают друг с другом в стеке (англ. stack, стопка) - это означает, что протокол, располагающийся на уровне выше, работает «поверх» нижнего, используя механизмы инкапсуляции. Например, протокол TCP работает поверх протокола IP.
Стек протоколов TCP/IP основан на модели сетевого взаимодействия DOD и включает в себя протоколы четырёх уровней:
- прикладного (application),
- транспортного (transport),
- сетевого (internet),
- уровня доступа к среде (network access).
Протоколы этих уровней полностью реализуют функциональные модели OSI. На стеке протоколов TCP/IP построено всё взаимодействие пользователей в IP-сетях. Стек является независимым от физической среды передачи данных.
Существуют разногласия в том, как вписать модель TCP/IP в модель OSI, поскольку уровни в этих моделях не совпадают.
К тому же, модель OSI не использует дополнительный уровень - «Internetworking» - между транспортным и сетевым уровнями. Примером спорного протокола может быть ARP или STP.
Вот как традиционно протоколы TCP/IP вписываются в модель OSI:
7. Прикладной,например, HTTP, SMTP, SNMP, FTP, Telnet, SCP, SMB,NFS, RTSP, BGP
6. Представительский,например, XDR, ASN.1, AFP
5. Сеансовый,например, TLS, SSL, SSH, ISO 8327 / CCITTX.225, RPC, NetBIOS, ASP
4. Транспортный, например, TCP, UDP, RTP, SCTP, SPX, ATP, DCCP, GRE
3. Сетевой,например, IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP
2. Канальный,например, Ethernet, Token ring, PPP, HDLC, X.25, Frame relay, ISDN, ATM, MPLS, Wi-Fi, ARP, RARP
1. Физический,например, электрические провода, радиосвязь, волоконно-оптические провода
Обычно в стеке TCP/IP верхние 3 уровня (прикладной, представительный и сеансовый) модели OSI объединяют в один - прикладной. Поскольку в таком стеке не предусматривается унифицированный протокол передачи данных, функции по определению типа данных передаются приложению. Упрощенно интерпретацию стека TCP/IP можно представить так:
5. Прикладной («7 уровень»), например, HTTP, FTP, DNS,(RIP, работающий поверх UDP, и BGP, работающий поверх TCP, являются частью сетевого уровня)
4. Транспортныйнапример, TCP, UDP, RTP, SCTP, DCCP (протоколы маршрутизации, подобные OSPF, что работают поверх IP, являются частью сетевого уровня).
3. СетевойДля TCP/IP это IP (вспомогательные протоколы, вроде ICMP и IGMP, работают поверх IP, но тоже относятся к сетевому уровню; протокол ARP является самостоятельным вспомогательным протоколом, работающим поверх физического уровня).
2. КанальныйEthernet, IEEE 802.11 Wireless Ethernet, SLIP, Token Ring, ATM и MPLS
1. Физическийнапример, физическая среда и принципы кодирования информации, T1, E1
Физический уровень описывает среду передачи данных (будь то коаксиальный кабель, витая пара, Оптическое волокно или радиоканал), физические характеристики такой среды и принцип передачи данных (разделение каналов, модуляцию, амплитуду сигналов, частоту сигналов, способ синхронизации передачи, время ожидания ответа и максимальное расстояние).
Канальный уровень описывает, каким образом передаются пакеты данных через физический уровень, включая кодирование (то есть специальные последовательности бит, определяющих начало и конец пакета данных). Ethernet, например, в полях заголовка пакета содержит указание того, какой машине или машинам в сети предназначен этот пакет.
Примеры протоколов канального уровня - Ethernet, IEEE 802.11 Wireless Ethernet, SLIP, Token Ring, ATM и MPLS.
PPP не совсем вписывается в такое определение, поэтому обычно описывается в виде пары протоколов HDLC/SDLC.
MPLS занимает промежуточное положение между канальным и сетевым уровнем и, строго говоря, его нельзя отнести ни к одному из них.
Канальный уровень иногда разделяют на 2 подуровня - LLC и MAC.
Сетевой уровень изначально разработан для передачи данных из одной (под)сети в другую. Примерами такого протокола является X.25 и IPC в сети ARPANET.
С развитием концепции глобальной сети в уровень были внесены дополнительные возможности по передаче из любой сети в любую сеть, независимо от протоколов нижнего уровня, а также возможность запрашивать данные от удалённой стороны, например в протоколе ICMP (используется для передачи диагностической информации IP-соединения) и IGMP (используется для управления multicast-потоками).
ICMP и IGMP расположены над IP и должны попасть на следующий - транспортный - уровень, но функционально являются протоколами сетевого уровня, и поэтому их невозможно вписать в модель OSI.
Пакеты сетевого протокола IP могут содержать код, указывающий, какой именно протокол следующего уровня нужно использовать, чтобы извлечь данные из пакета. Это число - уникальный IP-номер протокола. ICMP и IGMP имеют номера, соответственно, 1 и 2.
Протоколы транспортного уровня могут решать проблему негарантированной доставки сообщений («дошло ли сообщение до адресата?»), а также гарантировать правильную последовательность прихода данных. В стеке TCP/IP транспортные протоколы определяют, для какого именно приложения предназначены эти данные.
Протоколы автоматической маршрутизации, логически представленные на этом уровне (поскольку работают поверх IP), на самом деле являются частью протоколов сетевого уровня; например OSPF (IP идентификатор 89).
TCP (IP идентификатор 6) - «гарантированный» транспортный механизм с предварительным установлением соединения, предоставляющий приложению надёжный поток данных, дающий уверенность в безошибочности получаемых данных, перезапрашивающий данные в случае потери и устраняющий дублирование данных. TCP позволяет регулировать нагрузку на сеть, а также уменьшать время ожидания данных при передаче на большие расстояния. Более того, TCP гарантирует, что полученные данные были отправлены точно в такой же последовательности. В этом его главное отличие от UDP.
UDP (IP идентификатор 17) протокол передачи датаграмм без установления соединения. Также его называют протоколом «ненадёжной» передачи, в смысле невозможности удостовериться в доставке сообщения адресату, а также возможного перемешивания пакетов. В приложениях, требующих гарантированной передачи данных, используется протокол TCP.
UDP обычно используется в таких приложениях, как потоковое видео и компьютерные игры, где допускается потеря пакетов, а повторный запрос затруднён или не оправдан, либо в приложениях вида запрос-ответ (например, запросы к DNS), где создание соединения занимает больше ресурсов, чем повторная отправка.
И TCP, и UDP используют для определения протокола верхнего уровня число, называемое портом.
На прикладном уровне работает большинство сетевых приложений.
Эти программы имеют свои собственные протоколы обмена информацией, например, HTTP для WWW, FTP (передача файлов), SMTP (электронная почта), SSH (безопасное соединение с удалённой машиной), DNS (преобразование символьных имён в IP-адреса) и многие другие.
В массе своей эти протоколы работают поверх TCP или UDP и привязаны к определённому порту, например:
- HTTP на TCP-порт 80 или 8080,
- FTP на TCP-порт 20 (для передачи данных) и 21 (для управляющих команд),
- SSH на TCP-порт 22,
- запросы DNS на порт UDP (реже TCP) 53,
- обновление маршрутов по протоколу RIP на UDP-порт 520.
Эти порты определены Агентством по выделению имен и уникальных параметров протоколов (IANA).
Бесспорно, к этому уровню относятся: DHCP, Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.
протокол стек web загрузка
Web-страница (англ. Web page) — документ или информационный ресурс Всемирной паутины доступ к которому осуществляется с помощью Web-браузера.
Web-страницы обычно создаются на языках разметки HTML или XHTML и могут содержать гиперссылки для быстрого перехода на другие страницы.
Информация на Web-странице может быть представлена в различных формах:
- текст,
- статические и анимированные графические изображения,
- аудио,
- видео,
- апплеты.
Информационно значимое содержимое Web-страницы обычно называется контентом.