.RU

1.Глава 1 Стек протоколов TCP/IP - Учебное пособие Часть первая


^ 1.Глава 1 Стек протоколов TCP/IP
Для успешного программирования сетевых приложений необходимо знание самого популярного в настоящее время стека протоколов – TCP/IP. Слово "стек" в данном контексте надо понимать как набор сетевых протоколов, расположенных и взаимодействующих в определенной иерархической последовательности.

Стандарты TCP/IP опубликованы в серии документов, известных в среде разработчиков как Request for Comment (RFC) [33], [34], [35]. Некоторые RFC описывают сетевые сервисы или протоколы и их реализацию, в то время как другие обобщают условия применения. Стандарты TCP/IP всегда публикуются в виде документов RFC, но не все RFC определяют стандарты.

^ Transmission Control Protocol/Internet Protocol (TCP/IP) – это промышленный стандарт стека протоколов, разработанный для глобальных сетей. Он был разработан по инициативе Министерства обороны США (Department of Defense, DoD) более 25 лет назад для связи экспериментальной сети Arpanet с другими спутниковыми сетями как набор общих протоколов, обеспечивающих компьютерное взаимодействие в разнородной вычислительной среде. Общепризнанными изобретателями стека протоколов TCP/IP являются Витон Серф (Vinton Cerf) и Роберт Кан (Robert Kahn). Сеть ARPA была предназначена для поддержки разработок и исследований в военных областях. Связь между двумя компьютерами в сети ARPA осуществлялась с использованием протокола Internet Protocol (IP), который и по сей день является одним из основных в стеке TCP/IP и фигурирует в названии стека.

Де-факто стандарт для реализаций TCP/IP появился в группе компьютерных исследований Калифорнийского университета в Berkeley. Исторически он распространялся с 4.x BSD System (Berkeley Software Distribution), и с BSD Networking Releases. Исходные тексты этой реализации явились отправной точкой для множества последующих модификаций.

Широкое распространение ОС UNIX привело и к широкому распространению протокола IP и других протоколов стека. На этом стеке работает всемирная информационная сеть, известная под именем Интернет.

В настоящее время стек TCP/IP широко распространен в сетях с ОС UNIX, BSD, LINUX и в большинстве версий таких современных сетевых ОС (Windows NT, 9х, 2000 и ХР) как для IBM PC персональных компьютеров, так и операционных платформах вычислительных систем других архитектур вплоть до суперкомпьютеров.

Преимущественное использование стека TCP/IP объясняется следующими его свойствами:
^ 2.Структура стека TCP/IP
  1. Краткая характеристика протоколов

Изложение этого раздела предполагает, что читатель знаком с основными положениями построения модели взаимодействия открытых систем ISO/OSI (International Standard Organization/Open System Interconnection), содержание которой изложено во многих литературных источниках по сетевой тематике.

Стек TCP/IP [3], [9], [37], [31], [15], [22], [21], [13] был разработан до появления этой модели, и хотя он также имеет многоуровневую иерархическую структуру, соответствие уровней стека TCP/IP уровням модели OSI в общем то условно. Протоколы стека TCP/IP принято делить на 4 уровня - рис. 1.1.




Рис. 1.1. Стек TCP/IP

Самый нижний (уровень IV) соответствует физическому и канальному уровням модели OSI. Этот уровень в протоколах TCP/IP не регламентируется, но поддерживает все популярные стандарты физического и канального уровня: для локальных сетей это все вариации технологии Ethernet, Token Ring, FDDI, 100VG-AnyLAN, для глобальных сетей – протоколы соединений "точка-точка" SLIP и PPP, протоколы глобальных сетей с коммутацией пакетов X.25, frame relay. Существует также специальная спецификация, определяющая использование технологии ATM в качестве транспорта канального уровня. Обычно при появлении новой технологии локальных или глобальных сетей она может быть быстро встроена в стек TCP/IP за счет разработки соответствующего документа RFC, определяющего метод инкапсуляции пакетов IP в ее кадры.

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

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

К уровню межсетевого взаимодействия относятся и протоколы, связанные с составлением и поддержкой таблиц маршрутизации – протокол сбора маршрутной информации RIP (Routing Internet Protocol), протоколы ARP и RARP для прямого и обратного преобразований адресов, протокол межсетевых управляющих сообщений ICMP (Internet Control Message Protocol) и протокол групповых сообщений IGMP (Internet Group Management Protocol).

Следующий уровень (уровень II) является основным. На этом уровне функционируют протокол управления передачей^ TCP (Transmission Control Protocol) и протокол пользовательских датаграмм UDP (User Datagram Protocol). Протокол TCP обеспечивает надежную передачу сообщений между удаленными прикладными процессами за счет образования виртуальных соединений. Протокол UDP обеспечивает передачу прикладных пакетов датаграммным способом, как и IP, и выполняет только функции связующего звена между сетевым протоколом и многочисленными прикладными процессами.

Как видно, этот уровень выполняет главные функции сразу двух уровней OSI – сеансового и транспортного.

Верхний уровень (уровень I) называется прикладным или уровнем приложений. За долгие годы использования в сетях различных стран и организаций стек TCP/IP накопил большое количество протоколов и сервисов прикладного уровня. К ним относятся такие широко используемые протоколы, как протокол копирования файлов FTP, протокол эмуляции терминала Telnet, почтовые протоколы SMTP и POP3, используемые в электронной почте сети Интернет, гипертекстовые сервисы доступа к удаленной информации по протоколу HTTP, такие как WWW, SOAP, протокол удаленного вызова процедур RPC и многие другие.

Протокол пересылки файлов FTP (File Transfer Protocol) реализует удаленный доступ к файлу. Для обеспечения надежной передачи FTP использует в качестве транспорта протокол TCP. Кроме пересылки файлов протокол FTP предлагает и другие услуги. Так, пользователю предоставляется возможность интерактивной работы с удаленной машиной, например, он может распечатать содержимое ее каталогов. Наконец, FTP выполняет аутентификацию пользователей. Прежде, чем получить доступ к файлу, в соответствии с протоколом пользователи должны сообщить свое имя и пароль. Для доступа к публичным каталогам FTP-архивов Интернета парольная аутентификация не требуется, и ее обходят за счет использования для такого доступа предопределенного имени пользователя Anonymous. Сессия протокола FTP открывает сразу два параллельных канала по портам 20 и 21 (первый порт для передачи данных, второй для передачи команд взаимодействия). Управляющее соединение существует в течение всего времени существования сессии клиент-сервер, а соединение данных создается и удаляется по необходимости.

В стеке TCP/IP протокол FTP предлагает наиболее широкий набор услуг для работы с файлами, однако он является и самым сложным для программирования. Приложения, которым не требуются все возможности FTP, могут использовать другой, более экономичный протокол – простейший протокол пересылки файлов TFTP (Trivial File Transfer Protocol). Этот протокол реализует только передачу файлов, причем в качестве транспорта используется более простой протокол без установления соединения – UDP.

Протокол ^ HTTP является одним из наиболее эксплуатируемых в настоящее время протоколом, обеспечивающим весь спектр услуг и сервиса World Wide Веб (WWW), а SOAP (Simple Object Access Protocol) становится все более популярным для распределенных сетевых взаимодействий.

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

Протокол SNMP (Simple Network Management Protocol) используется для организации сетевого управления. Изначально он был разработан для удаленного контроля и управления маршрутизаторами Интернета. Позже его стали применять и для управления коммуникационным оборудованием – концентраторами, коммутаторами, сетевыми адаптерами и т.д. SNMP позволяет непосредственно через сеть обрабатывать информацию от любых устройств, в ней находящихся. Это мощный и в тоже время гибкий инструмент, поддерживающий различные типы структур данных и запросов, совместимых с любыми устройствами в сети. В модели протокола SNMP есть такое понятие, как программный агент, который постоянно связан с сетевым устройством и в задачи которого входит сбор информации, связанной с данным устройством и обработка пришедшего из сети запроса.

Протокол RPC (Remote Procedure Call) является основным протоколом, с помощью которого можно выполнить вызов некоторой процедуры, физически расположенной на другом сетевом компьютере. Этот протокол широко применяется различными операционными платформами, в том числе и в Windows как основной протокол передачи данных в технологиях DCOM, СOM++.

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

  1. 35-plan-vospitatelnoj-raboti-shkoli-plan-raboti-mou-sosh-im-a-n-arapova-na-2010-2011-uchebnij-god-vvedeno-v-dejstvie.html
    35-poryadok-predstavleniya-k-zashite-i-zashita-diplomnoj-raboti-uchebno-metodicheskij-kompleks-dlya-studentov-obuchayushihsya.html
    35-preduprezhdeniya-prihvatov-kolonn-obvalivshimisya-neustojchivimi-porodami-v-g-abaturov-burenie-v-slozhnih-geologicheskih-usloviyah.html
    35-prinyatie-reshenij-a-s-bolshakov-menedzhment.html
    35-problemi-razvitiya-novosibirskogo-rajona-obshestvo-s-ogranichennoj-otvetstvennostyu-inzhiniring-konstruirovanie.html
    35-profili-kvalifikacionnie-ramki-evropejskogo-prostranstva-visshego-obrazovaniya-bolonskaya-rabochaya-gruppa-po.html
  2. lecture.bystrickaya.ru/73-koefficient-estestvennogo-prirosta-naseleniya-1950-2004-uchebno-metodicheskij-kompleks-dlya-studentov-ochnogo.html
  3. holiday.bystrickaya.ru/novoe-psi-oruzhie-zagadochnie-sverhvozmozhnosti-cheloveka.html
  4. nauka.bystrickaya.ru/voprosi-i-otveti-na-temu-polucheniya-subsidij-ot-gosudarstvo-na-pokupku-zhilya-dlya-molodih-semej.html
  5. lecture.bystrickaya.ru/7-povest-o-gorezlochastii-drevnerusskaya-literatura-literatura-xviii-veka-istoriya-russkoj-literaturi-v-4-h-tomah.html
  6. obrazovanie.bystrickaya.ru/programma-po-discipline-grazhdanskoe-pravo-rk-osobennaya-chast-dlya-specialnosti-050301-yurisprudenciya-forma-obucheniya-zaochnaya.html
  7. exchangerate.bystrickaya.ru/glava-3-genezis-rossijskogo-zakonodatelstva-o-nedvizhimosti-a-a-lazarevskij-avtor-ekspert-partii-yabloko.html
  8. essay.bystrickaya.ru/chislennost-detej-invalidov-v-vozraste-do-18-letpoluchayushih-socialnie-pensii-ob-osnovnih-garantiyah-prav-rebenka-v-rossijskoj-federacii.html
  9. doklad.bystrickaya.ru/uchebnik-ritoriki-trenirovka-rechi-s-uprazhneniyami-perevod-s-nemeckogo-s-t-buglo.html
  10. writing.bystrickaya.ru/19949-te-lim-2008-annotacii-statej.html
  11. uchenik.bystrickaya.ru/analiticheskaya-klassifikaciya-kationov.html
  12. credit.bystrickaya.ru/osnovnie-polozheniya-metodiki-zakalivaniya.html
  13. esse.bystrickaya.ru/razdel-1-vozdejstvuyushaya-sila-iskusstva-9-chasov-rabochaya-programma-po-predmetu-izobrazitelnoe-iskusstvo-i.html
  14. write.bystrickaya.ru/god-god-informaciya-soderzhashayasya-v-nastoyashem-ezhekvartalnom-otchete-podlezhit-raskritiyu-v-sootvetstvii-s-zakonodatelstvom.html
  15. learn.bystrickaya.ru/generalskij-effekt-centralnom-dome-literatorov-prohodyat-odin-raz-v-mesyac-kazhduyu-tretyu-subbotu-sajt-klf.html
  16. znanie.bystrickaya.ru/atmosfernij-vozduh.html
  17. textbook.bystrickaya.ru/imenno-etot-ideal-i-predyavlyal-aristokratii-te-samie-visokie-trebovaniya-blagodarya-kotorim-i-proishodit-ee-elitizaciya-i-obosoblenie-ot-massi-uzhe-apulej-v-svoej-knige.html
  18. holiday.bystrickaya.ru/o-e-timofeeva-aktualnie-problemi-sovremennosti.html
  19. exchangerate.bystrickaya.ru/analiz-finansovogo-sostoyaniya-kommercheskogo-banka-chast-2.html
  20. lesson.bystrickaya.ru/sovremennie-filosofskie-refleksii-otnositelno-prava-pravovih-otnoshenij-i-yuridicheskoj-nauki-ih-oformlyayushej.html
  21. studies.bystrickaya.ru/deutsche-bahn-mozhet-stat-akcionerom-urala-promishlennogo-kommersant-ural-16072011.html
  22. universitet.bystrickaya.ru/uchebnij-plan-programmi-professionalnoj-perepodgotovki-specialnost-prikladnaya-informatika-v-ekonomike.html
  23. letter.bystrickaya.ru/obespechenie-obespechenie-obrazovatelnogo-processa-uchebnoj-i-uchebno-metodicheskoj-literaturoj-po-napravleniyu-080100-ekonomika-profilyu-ekonomika-predpriyatij-i-organizacij-pp-stranica-2.html
  24. teacher.bystrickaya.ru/faktori-migracii-naseleniya-i-ekonomicheskie-posledstviya-vnutrennyaya-migraciya-naseleniya-respubliki-kazahstan-po-itogam.html
  25. letter.bystrickaya.ru/obrazovatelnaya-programma-utverzhdeno-soglasovano-na-pedsovete-.html
  26. shpargalka.bystrickaya.ru/v-organizacionno-partijnoj-modeli-uchebnoe-posobie-mogut-ispolzovat-v-samostoyatelnoj-rabote-nad-soboj-vse-te.html
  27. abstract.bystrickaya.ru/33-parametri-harakterizuyushie-soderzhanie-puti-i-iznos-relsov-poyasnitelnaya-zapiska-k-novoj-redakcii-tu-po-ispolzovaniyu.html
  28. znanie.bystrickaya.ru/48-raschet-posevnoj-ploshadi-neobhodimoj-dlya-obespecheniya-vnutrihozyajstvennih-nuzhd-i-vipolneniya-dogovorov-po-rastenievodcheskoj-produkcii.html
  29. abstract.bystrickaya.ru/25-inzhenernaya-podgotovka-territorii-krasnoyarsklesproektstroj-dokument-territorialnogo-planirovaniya.html
  30. turn.bystrickaya.ru/pochti-polveka-nazad-yarkoe-perezhivanie-prodolzhavsheesya-vsego-neskolko-chasov-izmenilo-vsyu-moyu-lichnuyu-zhizn-i-nauchnuyu-kareru-ya-togda-molodoj-vrach-psihiatr-ne-stranica-14.html
  31. predmet.bystrickaya.ru/sekcionnij-15-minut-vklyuchaya-vremya-dlya-otvetov-na-voprosi-tehnicheskie-sredstva.html
  32. uchenik.bystrickaya.ru/lekarstvennie-rasteniya-v-kosmetike.html
  33. shkola.bystrickaya.ru/strategiya-upravleniya-dolgom-goroda-moskvi.html
  34. kontrolnaya.bystrickaya.ru/razdel-o-uslugi-kommunalnie-socialnie-komitet-rossijskoj-federacii-po-standartizacii.html
  35. prepodavatel.bystrickaya.ru/tezis-cherchatyuringa-mozhet-li-kompyuter-obladat-razumom.html
  36. kolledzh.bystrickaya.ru/6-obsledovanie-sostoyaniya-gruntov-osnovaniya-zdanij-i-sooruzhenij-bajkalskoe-regionalnoe-obedinenie-iziskatelej.html
© bystrickaya.ru
Мобильный рефератник - для мобильных людей.