Что
такое TCP/IP, какими преимуществами он обладает
Семейство протоколов TCP/IP (Transmission Control
Protocol/Internet Protocol) - это стандартный промышленный набор
протоколов, разработанный для глобальных вычислительных сетей
(Wide Area Networks, WAN).
Протокол TCP/IP был создан в результате исследований
сетей с коммутацией пакетов (packet-switching networks), проводимых
агентством DARPA (U.S. Department of Defence Advanced Research
Projects Agency) в конце 60-х - начале 70-х годов. В эволюции
TCP/IP можно отметить несколько важных этапов.
Год |
Событие |
1970 г. |
Узлы сети ARPANET начали использовать протокол NCP (Network
Control Protocol). |
1972 |
Первая спецификация Telnet оформлена как RFC
318. |
1973 |
Введен протокол File Transfet Protocol, RFC 454. |
1974 |
Представлена программа Transmission Control Program (TCP). |
1981 |
В RFC
791 опубликован стандарт IP. |
1982 |
Агентство DCA (Defence Communications Agency) и агентство
ARPA объединили протокол TCP (Transmission Control Protocol)
и IP (Internet Protocol) в набор TCP/IP. |
1983 |
Сеть ARPANET переключилась с протокола NCP на протокол
TCP/IP. |
1984 |
Введена доменная система имен (Domain Name System, DNS). |
|
Протокол TCP/IP в Windows NT и 2000 обеспечивает
сетевое взаимодействие компьютеров предприятия, работающих под
управлением Windows NT и 2000, и возможность подключения к ним
сетевых устройств и компьютеров под управлением других операционных
систем. Добавление протокола TCP/IP в конфигурацию Windows обеспечивает
ряд преимуществ. Основной плюс - TCP/IP оправданно считается наиболее
совершенным и распространенным протоколом из всех доступных на
сегодняшний день. Все современные операционные системы поддерживают
протокол TCP/IP, и почти все крупные сети используют его для обеспечения
большей части своего трафика. Кроме того протокол TCP/IP является
стандартным для Интернета.
Другое преимущество технологии TCP/IP - возможность
объединения неоднородных систем. Сегодня существует множество
утилит доступа и передачи данных, позволяющих взаимодействовать
самым различным системам. Некоторые из них, например FTP (File
Transfer Protocol) и Telnet, поставляются с Windows NT Server.
Протокол TCP/IP, кроме того, - масштабируемый каркас
для разработки приложений, использующих архитектуру клиент/сервер.
Применяя протокол TCP/IP, компания Microsoft обеспечивает интерфейс
Сокетов Windows (Windows Sockets) - стандартный сетевой интерфейс
прикладного программирования для приложений Windows. Приложения
Windows Sockets пользуются всеми преимуществами других сетевых
протоколов, например Microsoft NWLinks, используемого в сетях
Nowell NetWare.
Документы
RFC
Международная общественная организация, именуемая
Сообществом Интернета (Internet Society, ISOC), управляет развитием
семейства протоколов TCP/IP. Стандарты для TCP/IP публикуются
в сериях документов, называемых RFC (Request for Comments). Хотя
Интернет не является собственностью ни одной организации, некоторые
из них отвечают за управление им.
Сообщество Интернета образовано в 1992 году и отвечает
за технологии межсетевого взаимодействия и использование сети.
Поскольку основная цель сообщества - развитие и доступность Интернета,
оно регулирует выработку стандартов и протоколов, позволяющих
ему функционировать.
Архитектурная Группа Интернета (Internet Architecture
Board, IAB) входит в состав ISOC. Эта консалтинговая техническая
группа отвечает за установку стандартов Интернета, публикацию
RFC и наблюдение за процессом стандартизации сети.
Группа IAB руководит группами IETF (Internet Engineering
Task Force), IANA (Internet Essigned Numbers Authority) и IRTF
(Internet Research Task Force). Группа технической поддержки Интернета
(IETF) разрабатывает стандарты и протоколы Интернета и решает
технические проблемы по мере их возникновения в сети. IANA наблюдает
и координирует назначение каждого уникального идентификатора протокола,
применяемого в Интернете. Группа IRTF координирует все исследовательские
проекты в области TCP/IP.
Стандарты для протокола TCP/IP публикуются в виде
серии документов "Запрос комментариев" (Request for Comments,
RFC). Они описывают устройство Интернета. Стандарты TCP/IP всегда
публикуются в RFC, но не все RFC описывают стандарты.
Стандарты протоколов TCP/IP разрабатываются не специальной
группой, а, скорее, всем сообществом. Любой член ISOC может представить
на рассмотрение документ для его публикации в серии RFC. После
этого документы просматриваются техническим экспертом, группой
разработчиков или редактором RFC, а затем классифицируются. В
классификации указывают, обсуждается ли документ в настоящее время,
или он уже принят в качестве стандарта. Существует пять типов
RFC.
Классификация |
Описание |
Required (Требуется) |
Стандарт должен быть реализован на всех основанных на
TCP/IP узлах и шлюзах. |
Recommended
(Рекомендуется) |
Предлагается реализовать спецификации RFC на всех основанных
на TCP/IP узлах и шлюзах. Рекомендуемые RFC обычно реализуются. |
Elective (Избирательно) |
Реализация не обязательна. Применение согласовано, но
используется нешироко. |
Limited use (Ограниченное использование) |
Не рекомендуется для всеобщего применения |
Not recommended
(Не рекомендуется) |
Реализация не рекомендуется. |
|
Если документ рассматривается в качестве потенциального
стандарта, то он проходит все стадии разработки, тестирования
и утверждения. В процессе стандартизации Интернета эти стадии
формально именуются уровнями готовности (maturity levels). Существует
три вида готовности стандартов Интернета.
Уровень готовности |
Описание |
Proposed Standart
(Предлагаемый стандарт) |
Устоявшаяся спецификация, в которой разрешены спорные
моменты. Она уже оценена сообществом и считается достаточно
перспективной. |
Draft Standart
(Черновой стандарт) |
Должен быть хорошо понятен и устойчив в качестве основы
для последующей реализации. |
Internet Standart
(Стандарт Интернета,
или просто стандарт) |
Характеризуется высокой степенью технической завершенности.
Предполагается, что описанный протокол или сервис предоставляет
существенные преимущества всем в Интернете. |
|
При публикации документ получает номер RFC. Первоначальный
вариант RFC никогда не обновляется. Если RFC нуждается в изменениях,
то обновленная версияпубликуется под текущим номером. Поэтому
важно убедиться в том, что у вас находится самый "свежий" RFC
на интересующую вас тему. Группа IAB публикует официальный стандарт
протоколов IAB (IAB Protocol Standart) - ежеквартальную заметку
с перечнем самых последних RFC для каждого протокола на текущий
момент.
Утилиты
TCP/IP
Windows поддерживает ряд утилит, облегчающих использование
протоколов нижних уровней. Утилиты Microsoft TCP/IP работают с
протоколами TCP/IP, обеспечивая доступ к другим узлам и Интернету.
В Windows все утилиты реализованы только как клиентское программное
обеспечение, за исключением протокола FTP, реализованного в качестве
программного обеспечения и клиента и сервера. Протокол FTP обеспечивает
двухстороннюю передачу файлов между узлами TCP/IP, на одном из
которых исполняется программное обеспечение FTP-сервера.
Остальные утилиты, используемые для передачи данных,
реализуют протоколы Trivial File Transfer Protocol (TFTP) и Remote
Copy Protocol (RCP). Первый, подобно FTP, обеспечивает двухстороннюю
передачу файлов между узлами протокола TCP/IP, один из которых
работает под управлением программного обеспечения сервера TFTP.
Второй копирует файлы между компьютером, работающим под управлением
Windows и хостом UNIX.
Windows также имеет утилиты для соединения и удаленной
работы с другими узлами TCP/IP. Наиболее часто используемая утилита
удаленного выполнения - Telnet. Она обеспечивает эмуляцию терминала
узла TCP/IP, на котором выполняется программное обеспечение сервера
Telnet. Кроме того, применяется утилита RSH (Remote Shell), выполняющая
команды на хосте UNIX, и REXEC (Remote Execution), запускающая
процесс на удаленном компьютере.
Две утилиты TCP/IP отвечают за печать и получение
данных о состоянии принтера, поддерживающего TCP/IP. Утилита LPR
(Line Printer Remote) печатает файл, передавая его на узел, где
работает сервис LPD (Line Printing Daemon). Утилита LPQ (Line
Printer Queue) предоставляет сведения об очереди печати на узле,
где работает сервис LPD.
Эти утилиты требуют наличия специального рпограммного
обеспечения на компьютерах клиента и сервера. Microsoft предоставляет
программное обеспечение серверов FTP и LPD.
Windows предоставляет несколько утилит для диагностики
неисправностей, характерных для протокола TCP/IP.
Утилита |
Описание |
Ping (Packet Internet Grouper) |
Проверяет корректность конфигурации протокола TCP/IP и доступность
другого узла. |
Ipconfig (в поставке
Windows 95 Winipcfg) |
Проверяет конфигурацию протокола TCP/IP, включая адреса
серверов DHCP, DNS и WINS. |
Finger |
Получает системную информацию с удаленного компьютера, поддерживающего
сервис Finger. |
Nslookup |
Позволяет просматривать записи в базе данных сервера DNS,
относящиеся к тому или иному узлу или домену. |
Hostname |
Возвращает имя локального компьютера для аутентификации. |
Netstat |
Отображает статистику протокола и текущее состояние соединений
TCP/IP. |
Route |
Просматривает или изменяет локальную таблицу маршрутизации. |
Tracert |
Прослеживает маршрут от локального до удаленного узла. |
Arp (Address Resolution Protocol) |
Отображает локальный кэш соответствий IP-адресов адресам
сетевых адаптеров. |
|
Установка и
настройка TCP/IP
При установке TCP/IP создается несколько системных
файлов и файлов разрешения имен. TCP/IP использует следующие файлы
разрешения имени:
Файл конфигурации |
Описание |
HOSTS |
Обеспечивает разрешение имен узлов в IP-адреса. |
LMHOSTS |
Обеспечивает разрешение имен NetBIOS в IP-адреса. |
NETWORKS |
Обеспечивает резрешение имен сетей в идентификаторы сетей. |
PROTOCOL |
Преобразует имя протокола в идентификатор протокола, заданный
в RFC. Номер протокола - это поле в заголовке IP-пакета, идентифицирующее,
какому протоколу верхнего уровня (например, TCP или UDP) будут
переданы данные протокола IP. |
SERVICES |
Обеспечивает преобразование имени сервиса в номер порта
и имя протокола. Номер порта - это поле в заголовке TCP или
UDP-пакета, идентифицирующее процесс, использующий TCP или
UDP. |
|
Протокол TCP/IP использует IP-адрес, маску подсети
и шлюз по умолчанию для соединения с узлами. Узлы TCP/IP, работающие
в глобальной сети, требуют задания всех трех параметров в конфигурации.
Каждая плата сетевого адаптера в компьютере, использующем TCP/IP,
нуждается в этих параметрах.
IP-адрес - это логический 32-разрядный адрес, однозначно
определяющий узел TCP/IP. Каждый IP-адрес состоит из двух частей:
идентификатора сети и идентификатора узла. Первый служит для обозначения
всех узлов в одной физической сети. Второй обозначает конкретный
узел в сети. Каждому компьютеру, использующему TCP/IP, требуется
уникальный IP-адрес, например, 131.107.2.200.
Маска подсети выделяет часть IP-адреса и позволяет
TCP/IP отличить идентификатор сети от идентификатора узла. Пытаясь
связаться, узлы TCP/IP используют маску подсети (например, 255.255.255.0),
чтобы определить, находится узел-получатель в локальной или удаленной
сети.
Для того чтобы установить соединение с узлом из
другой сети, вы должны сконфигурировать IP-адрес шлюза по умолчанию.
TCP/IP посылает пакеты, предназначенные для удаленных сетей, на
шлюз по умолчанию, но только в том случае, если на локальном узле
не сконфигурирован другой маршрут к сети получателя. Если вы не
сконфигурируете шлюз по умолчанию, то связь может быть ограничена
локальной сетью.
Зайдите на Панель управления, а затем в раздел "Сеть".
Если TCP/IP не числится в списке установленных сетевых протоколов,
необходимо его установить. Затем выделите TCP/IP и нажмите на
кнопку "Свойства". Если ваш компьютер включен в большую сеть,
необходимо убедиться, что имя компьютера, домена и информация
об IP-адресе не конфликтуют с сетью. В отличие от IP-адреса и
маски подсети шлюз по умолчанию является необязательным параметром.
Если вы его опустите, то область работы вашего компьютера ограничится
локальной сетью.
Тестирование
TCP/IP
После установки протокола TCP/IP полезно проверить
и протестировать конфигурацию и все соединения с другими узлами
TCP/IP и сетями.
Вы можете использовать утилиту Ipconfig (Winipcfg
в Windows 95) для проверки параметров конфигурации узла, включая
IP-адрес, маску подсети и шлюз по умолчанию. Это полезно при выяснении,
успешно ли прошла инициализация TCP/IP и не дублируется ли IP-адрес,
указанный в конфигурации. Синтаксис команды:
Если протокол инициализировался успешно с заданной
конфигурацией, то на экране отобразятся IP-адрес, маска подсети
и шлюз по умолчанию. Если адрес, заданный в конфигурации, уже
используется другим узлом в сети на том же сегменте, то отобразится
заданный IP-адрес, но маска подсети будет равна 0.0.0.0.
После проверки конфигурации утилитой Ipconfig вы
можете запустить утилиту Ping (Packet Internet Grouper) для тестирования
соединений. Это диагностическое средство тестирует конфигурации
TCP/IP и позволяет определить неисправности соединения. Утилита
Ping использует пакеты эхо-запроса (echo request) и эхо-ответа
(echo reply) протокола ICMP (Internet Control Message Protocol)
для проверки доступности и работоспособности определенного узла
TCP/IP. Синтаксис команды:
Если проверка прошла успешно, то отобразится сообщение
типа:
Pinging IP-адрес with 32 bytes of data:
Reply from IP-адрес: bytes= x time<10ms TTL = x
Reply from IP-адрес: bytes= x time<10ms TTL = x
Reply from IP-адрес: bytes= x time<10ms TTL = x
Reply from IP-адрес: bytes= x time<10ms TTL = x
Четырехуровневая модель
TCP/IP
Протоколы семейства TCP/IP можно представить
в виде модели, которая состоит из четырех уровней: приложения
(Application layer), транспортного (Transport layer), межсетевого,
или уровня Интернета (Internet layer) и сетевого интерфейса
(Network Interface layer). Основные протоколы TCP/IP - это
набор стандартов для соединения компьютеров и межсетевого
взаимодействия.
|
Приложения Windows Sockets |
Приложения NetBIOS |
Уровень приложения |
TCP |
UDP |
Транспортный уровень |
IP |
Межсетевой уровень |
Технологии LAN |
Технологии WAN |
Сеть |
|
В основании этой модели лежит уровень сетевого
интерфейса. Соответствующие компоненты отвечают за отправку
в сеть и прием из сети кадров, содержащих пакеты информации.
Кадры передаются по сети как единое целое.
Протоколы Интернета инкапсулируют пакеты данных
в датаграммы Интернета и проводят необходимую маршрутизацию.
Четыре основных протокола Интернета предназначены:
- IP (Internet Protocol) - в основном для отправки и маршрутизации
пакетов между сетями и узлами.
- ARP (Address Resolution Protocol) - для получения адресов
сетевых адаптеров узлов в рамках одной физической сети.
- ICMP (Internet Control Message Protocol) - для отправки
извещений и сообщений об ошибках, связанных с доставкой
пакетов.
- IGMP (Internet Group Management Protocol) - используется
IP-узлами для сообщения поддерживающим групповую передачу
маршрутизаторам о своем участии в группах.
Транспортный уровень обеспечивает сеансы связи
между компьютерами. Существует два транспортных протокола:
TCP (Transmission Control Protocol) и UDP (User Datagram Protocol).
Использование одного из них зависит от выбранного метода доставки
данных.
TCP ориентирован на соединение и используется
приложениями, обычно передающими большие объемы данных за
одну операцию, так как обеспечивает надежное соединение, а
также приложениями, которым необходимо подтверждение приема
данных.
Протокол UDP обеспечивает не ориентированную
на соединение передачу данных и не гарантирует доставку пакетов.
Приложения, использующие протокол UDP, обычно передают небольшие
объемы данных за одну операцию. Ответственность за надежную
доставку данных несет само приложение.
Венчает модель TCP/IP уровень, на котором приложения
получают доступ к сетевым компонентам. Здесь работает множество
стандартных утилит и сервисов протокола TCP/IP, например FTP,
Telnet, SNMP и DNS.
Протокол Microsoft TCP/IP предоставляет сетевым
приложениям два различных интерфейса к сервисам TCP/IP. Первый
из них - Сокеты Windows (Windows Sockets) - обеспечивает стандартный
интерфейс прикладного программирования под Windows для работы
с такими транспортными протоколами, как TCP/IP и IPX. Второй
- NetBIOS - стандартный интерфейс к протоколам, поддерживающим
имена и сообщения NetBIOS, например TCP/IP и NetBEUI.
|