ь (TCP-модуль (процесс)) по получении распаковывает IP-конверты и видит TCP-конверты, распаковывает и их и помещает данные в последовательность частей в соответствующее место. Если чего-то не достает, он требует переслать этот кусочек снова. В конце концов информация собирается в нужном порядке и полностью восстанавливается. Вот теперь этот массив пересылается выше к пользователю (на диск, на экран, на печать).
В действительности, это слегка утрированный взгляд на TCP. В реальности пакеты не только теряются, но и могут искажаться при передаче из-за наличия помех на линиях связи. TCP решает и эту проблему. Для этого он пользуется системой кодов, исправляющих ошибки. Существует целая наука о таких кодировках. Простейшим примером такового служит код с добавлением к каждому пакету контрольной суммы (и к каждому байту бита проверки на четность). При помещении в TCP-конверт вычисляется контрольная сумма, которая записывается в TCP-заголовок. Если при приеме заново вычисленная сумма не совпадает с той, что указана на конверте, значит что-то тут не то, - где-то в пути имели место искажения, так что надо переслать этот пакет по новой, что и делается.
Для ясности и полноты картины, необходимо сделать здесь важное замечание: Модуль TCP разбивает поток байтов на пакеты, не сохраняя при этом границ между записями. Т.е., если один прикладной процесс делает 3 записи в -порт, то совсем не обязательно, что другой прикладной процесс на другом конце виртуального канала получит из своего -порта именно 3 записи, причем именно таких (по разбиению), что были переданы с другого конца. Вся информация будет получена исправно и с сохранением порядка передачи, но она может уже быть разбита по другому и на иное количество частей. Не существует зависимости между числом и размером записываемых сообщений с одной стороны и числом и размером считываемых сообщений с другой стороны. TCP требует, чтобы все отправленные данные были подтверждены принявшей их стороной. Он использует ожидания (таймауты) и повторные передачи для обеспечения надежной доставки. Отправителю разрешается передавать некоторое количество данных, не дожидаясь подтверждения приема ранее отправленных данных. Таким образом, между отправленными и подтвержденными данными существует окно уже отправленных, но еще не подтвержденных данных. Количество байт, которое можно передавать без подтверждения, называется размером окна. Как правило, размер окна устанавливается в стартовых файлах сетевого программного обеспечения. Так как TCP-канал является , т.е. данные могут одновременно передаваться в обоих направлениях, то подтверждения для данных, идущих в одном направлении, могут передаваться вместе с данными, идущими в противоположном направлении. Приемники на обеих сторонах виртуального канала выполняют управление потоком передаваемых данных для того, чтобы не допускать переполнения буферов.
Таким образом, протокол TCP обеспечивает гарантированную доставку с установлением логического соединения в виде байтовых потоков. Он освобождает прикладные процессы от необходимости использовать ожидания и повторные передачи для обеспечения надежности. Наиболее типичными прикладными процессами, использующими TCP, являются ftp и telnet. Кроме того, TCP использует система X-Windows (стандартный многооконный графический интерфейс с пользователем), ``r-команды.
Большие возможности TCP даются не бесплатно, реализация TCP требует большой производительности процессора и большой пропускной способности сети. Когда прикладной процесс начинает использовать TCP, то начинают общаться модуль TCP на машине пользователя и модуль на машине сервера. Эти два оконечных модуля TCP поддерживают информацию о состоянии соединения - виртуального канала. Этот виртуальный канал потребляет ресурсы обоих оконечных модулей TCP. Канал этот, как уже указывалось, является дуплексным. Один прикладной процесс пишет данные в TCP-порт, откуда они модулями соответствующих уровней по цепочке передаются по сети и выдаются в TCP-порт на другом конце канала, и другой прикладной процесс читает их отсюда - из своего TCP-порта. эмулирует (создает видимость) выделенную линию связи двух пользователей. Гарантирует неизменность передаваемой информации. Что входит на одном конце, выйдет с другого. Хотя в действительности никакая прямая линия отправителю и получателю в безраздельное владение не выделяется (другие пользователи могут пользовать те же узлы и каналы связи в сети в промежутках между пакетами этих), но извне это, практически, именно так и выглядит.
Как бы хорошо это не звучало, но это не панацея. Как уже отмечалось, установка TCP-виртуального канала связи требует больших расходов на инициирование и поддержание соединения и приводит к задержкам передачи. Если вся эта суета - излишество, лучше обойтись без нее. Если все данные, предназначенные для пересылки, умещаются в одном пакете, и если вас не особенно заботит надежность доставки (? - читайте дальше, - поймете), то можно обойтись без TCP.
Имеется другой стандартный протокол транспортного уровня, который не отягощен такими накладными расходами. Этот протокол называется UDP - User Datagram Protocol - протокол пользовательских дейтаграмм. Он используется вместо TCP. Здесь данные помещаются не в TCP, а в UDP-конверт, который также помещается в IP-конверт. Этот протокол реализует дейтаграммный способ передачи данных.
Дейтаграмма - это пакет, передаваемый через сеть независимо от других пакетов без установления логического соединения и подтверждения приема. Дейтаграмма - совершенно самостоятельный пакет, поскольку сама содержит всю необходимую для ее передачи информацию. Ее передача происходит безо всякого предварения и подготовки. Дейтаграммы, сами по себе, не содержат средств обнаружения и исправления ошибок передачи, поэтому при передаче данных с их помощью следует принимать меры по обеспечению надежности пересылки информации. Методы организации надежности могут быть самыми разными, обычно же используется метод подтверждения приема посылкой эхоотклика при получении каждого пакета с дейтаграммой.
UDP проще TCP, поскольку он не заботится о возможной пропаже данных, пакетов, о сохранении правильного порядка данных и т.д. UDP используется для клиентов, которые посылают только короткие сообщения и могут просто заново послать сообщение, если отклик подтверждения не придет достаточно быстро. Предположим, что вы пишите программу, которая просматривает базу данных с телефонными номерами где-нибудь в другом месте сети. Совершенно незачем устанавливать TCP связь, чтобы передать 33 или около того символов в каждом направлении. Вы можете просто уложить имя в UDP-пакет, запаковать это в IP-пакет и послать. На другом конце прикладная программа получит пакет, прочитает имя, посмотрит телефонный номер, положит его в другой UDP-пакет и отправит обратно. Что произойдет, если пакет по пути потеряется? Ваша программа тогда должна действовать так: если она ждет ответа слишком долго и становится ясно, что пакет затерялся, она просто повторяет запрос, т.е. посылает еще раз то же послание. Так обеспечивается надежность передачи при использовании протокола UDP.
В отличие от TCP, данные, отправляемые прикладным процессом через модуль UDP, достигают места назначения как единое целое. Например, если процесс-отправитель производит 3 записи в UDP-порт, то процесс-получатель должен будет сделать 3 чтения. Размер каждого записанного сообщения будет совпадать с размером соответствующего прочитанного. Протокол UDP сохраняет границы сообщений, определяемые прикладным процессом. Он никогда не объединяет несколько сообщений в одно целое и не делит одно сообщение на части.
Альтернатива TCP-UDP позволяет программисту гибко и рационально использовать предоставленные ресурсы, исходя из своих возможностей и потребностей. Если нужна надежная доставка, то лучше может быть TCP. Если нужна доставка дейтаграмм, то - UDP. Если нужна эффективная доставка по длинному и ненадежному каналу передачи данных, то лучше использовать TCP. Если нужна эффективность на быстрых сетях с короткими соединениями, лучше всего будет UDP. Если потребности не попадают ни в одну из этих категорий, то выбор транспортного протокола не ясен. Прикладные программы, конечно, могут устранять некоторые недостатки выбранного протокола. Например, если вы выбрали UDP, а вам необходима надежность, то прикладная программа должна обеспечить надежность сама, как описано выше: требовать подтверждения, пересылки утерянных или увечных пакетов и т.д. Если вы выбрали TCP, а вам нужно передавать записи, то прикладная программа должна вставлять метки в поток
Создание сети с человеческим лицом. Прикладное обеспечение
И вот мы имеем возможность передавать информацию между различными точками в сети. Вот теперь мы можем начать работать над созданием дружественного интерфейса Internet, позаботиться об удобстве для пользователя. Для этого мы напишем программное обеспечение, которое будет понимать язык команд, выдавать сообщения об ошибках, подсказки, использовать для адресации сетевых компьютеров при общении с пользователем имена, а не числа и т.д. В модели ISO OSI на это работают уровни выше транспортного, т.е. сеансовый, представления данных и прикладной. Вся эта деятельность направлена на повышение уровня удобства работы в сети, на создание систем, позволяющих пользоваться предоставляемыми возможностями обычному пользователю сети.
Ведь большинство пользователей совсем не волнует ни наличие надежного потока битов между машинами, ни пропускная способность этих линий или тонкости и особенности используемой технологии, ни даже экзотичность этой технологии. Они хотят использовать этот битовый поток для дела, как то: переслать файл, добраться до каких-то данных или просто поиграть в игру. Приложения - это части программного обеспечения. Их создают на основе сервиса TCP или UDP. Приложения позволяют пользователю достаточно просто справиться с возникшей задачей, не погружаясь в пучину технической информации о конкретной сети, о протоколах и т.д.
Прикладное обеспечение разнится очень сильно. Приложения могут быть от самодельной программы до патентованных продуктов, поставляемых различными фирмами (DEC, Microsoft и т.п.). Существует три стандартных Internet -приложения: удаленный доступ, передача файлов, электронная почта (e-mail); наряду с ними используются другие широко распространенные нестандартные приложения.
Предоставление услуг Internet построено по схеме ``клиент - сервер. Предоставление услуг осуществляется совместной работой двух процессов: на компьютере пользователя и на компьютере-сервере. Процесс на компьютере пользователя называется клиентом, а на компьютере-сервере - сервером. Клиент и сервер являются, по сути, частями одной программы, взаимодействующие по виртуальной связи в сети. Сервер по указаниям клиента выполняет соответствующие действия, например, пересылает клиенту файл. Для предоставления услуги совершенно необходимо наличие двух этих модулей - клиента и сервера, и их одновременная согласованная работа. Взаимодействие клиента и сервера описывается соответствующими стандартными протоколами, поэтому клиент и сервер могут быть выпущены совершенно разными производителями и работать на разнородных компьютерах. Поэтому же существует небольшая проблема нестандартности интерфейса клиента непосредственно уже с пользователем. Это взаимодействие может иметь совершенно различную форму: интерактивную, командную и т.д. Системы команд могут различаться. Но от этого сами возможности не изменяются, поскольку клиент и сервер всегда взаимодействуют одинаково - согласно протоколу.
Так как прикладным обеспечением снабжают по большей части через локальные сети, в разговоре о приложениях возникает вышеупомянутая проблема: команды, сообщения, справки, подсказки и т.п. в разных локальных сетях могут в той или иной степени отличаться. Об этом не следует забывать при чтении руководств пользователя: сообщения могут отличаться, но смысл их будет такой же, то же касается и команд. Даже если они слегка отличаются, не стоит волноваться, большинство приложений имеет разумную систему подсказок и описание набора команд, где вы детально и конкретно сможете разузнать все, что вам понадобится.
Системы сетевых адресов
Региональная Система Имен
Числовые адреса хороши для связи машин, люди же предпочитают имена. Очень непросто разговаривать, используя машинную адресацию (как бы это звучало: ``192.112.36.5 обещает вскоре...?), еще труднее запомнить эти адреса. Поэтому компьютерам в Internet для удобства пользователей были присвоены собственные имена. Тогда описанный разговор принимает вид: ``NIC обещает вскоре.... Все приложения Internet позволяют пользоваться системными именами вместо числовых адресов.
Как мы уже упоминали, для понимания полезно использовать почтовую аналогию. Сетевые численные адреса вполне аналогичны почтовой индексации. Машины, сортирующие корреспонденцию на почтовых узлах, ориентируются именно по индексам, и только если с индексами выходит какая-то несуразность, передают почту на рассмотрение людям, которые по адресу могут определить правильный индекс почтового отделения места назначения. Людям же приятнее и удобнее иметь дело с географическими названиями - это аналоги доменных имен.
Конечно, такое именование имеет свои собственные проблемы. Прежде всего, следует убедиться, что никакие два компьютера, включенные в сеть, не имеют одинаковых имен. Должно также обеспечить преобразование имен в числовые адреса, для того чтобы машины (и программы) могли понимать нас, пользующихся именами: техника по-прежнему общается на языке цифр.
В начале Internet размерами напоминала курилку, и иметь дело с именами было довольно просто. NIC создал регистратуру. Можно было послать запрос и в ответ высылали список имен и адресов. Этот файл, называется ``host file (файл рабочих ЭВМ), регулярно распространялся по всей сети - рассылался всем машинам. Имена были простыми словами, все были единственными. Если вы использовали имя, ваш компьютер просматривал этот файл и подставлял вместо имени реальный числовой адрес. Так же, как работает телефонный аппарат со встроенным списком абонентов. Все было легко, просто и замечательно. Всем хватало простых имен, в курилке был один Джон, один Пит, один Патермуфий.
Но по мере развития и расширения Internet возрастало количество пользователей, хостов, а потому увеличивался и упомянутый файл. Возникали значительные задержки при регистрации и получении имени новым компьютером, стало затруднительно изыскивать имена, которые еще никто не использовал, слишком много сетевого времени затрачивалось на рассылку этого огромного файла всем машинам, в нем упомянутым. Стало очевидно, - чтобы справиться с такими темпами изменений и роста сети, нужна распределенная оперативная система, опирающаяся на новый принцип. Таковая была создана, ее назвали ``доменной системой имен - DNS, а способ адресации - способом адресации по доменному принципу. DNS иногда еще называют региональной системой наименований.
Структура региональной системы имен
Доменная система имен - это метод назначения имен путем передачи сетевым группам ответственности за их подмножество имен. Каждый уровень этой системы называется доменом. Домены в именах отделяются друг от друга точками: inr.msk.su, nusun.jinr.dubna.su, arty.bashkiria.su, vxcern.cern.ch, nic.ddn.mil. В имени может быть различное количество доменов, но практически их не больше пяти. По мере движения по доменам слева направо в имени, количество имен, входящих в соответствующую группу возрастает.
Первым в имени стоит название рабочей машины - реального компьютера с IP адресом. Это имя создано и поддерживается группой (например, компьютер nusun (это SUN sparc) в группе jinr (ОИЯИ)), к которой он относится. Группа входит в более крупное подразделение (например, городское объединение - сеть города Дубны), которое в свою очередь, является частью национальной сети (например, сети стран бывшего СССР, домен su). Для США наименование страны по традиции опускается, там самыми крупными объединениями являются сети образовательных (edu), коммерческих (com), государственных (gov), военных (mil) учреждений, а также сети других организаций (org) и сетевых ресурсов (net).
Группа может создавать или изменять любые ей подлежащие имена. Если jinr решит поставить другой компьютер, например, VAX 11/780, и назвать его mainx, он ни у кого не должен спрашивать разрешения, все, что от него требуется, - это добавить новое имя в соответствующую часть соответствующей всемирной базы данных, и, рано или поздно, каждый, кому потребуется, узнает об этом имени. Аналогично, если в Дубне решат создать новую группу, например, schools, они (домен dubna) могут это сделать также, ни у кого на то не спрашивая никакого соизволения. И тогда, если каждая группа придерживается таких простых правил и всегда убеждается, что имена, которые она присваивает, единственны во множестве ее непосредственных подчиненных, то никакие две системы, где бы те ни были в сети Internet, не смогут заиметь одинаковых имен.
Эта ситуация совершенно аналогична ситуации с присвоением географических названий - организацией почтовых адресов. Названия всех стран различаются. Различаются названия всех областей, республик в Федерации, и эти названия утверждаются в государственном масштабе из центра (конечно, обычно сами регионы заботятся об уникальности своих названий, поэтому здесь царит полная демократия: как республика хочет, так она и называется)<Рисунок: gif>. В республиках - субъектах федерации - решают вопросы о названиях районов и округов, в пределах одной республики они различаются. Аналогично далее с городами и улицами городов. В разных городах могут быть улицы с одинаковыми названиями: почему бы не быть во всех городах Cоюза по улице Ленина или Мира? Это улицы разных городов, и их не перепутать (помня о городах! Не напоминайте ``С легким паром!). В пределах же одного населенного пункта улицы всенепременно имеют разные названия, причем именование этих улиц целиком и полностью под ответственностью и началом соответствующего центрального органа данного населенного пункта (мэрии, сельсовета, горсовета). Таким образом, почтовый адрес на основе географических и административных названий однозначно определяет точку назначения.
Поскольку Internet - сеть мировая, требовался также способ передачи ответственности за имена внутри стран им самим. Сейчас принята двухбуквенная кодировка государств. Это оговорено в RFC 822. Так, например, домен Канада называется ca, бывший СССР - su, США - us и т.д. США также включили в эту систему структурирования для всеобщности и порядка. Всего же кодов стран почти 300, из которых около 100 имеет компьютерную сеть того или иного рода. Единый каталог Internet находится у SRI International (Менло-Парк, Калифорния, США) - государственной организации.
Поиск адреса по доменному имени
Теперь вы знаете, как соотносятся домены и создаются имена. Возможно, вы теперь озадачены: а как использовать эту замечательную систему? Автоматически. Вам надо лишь употребить имя на компьютере, который понимает, как обращаться с DNS. Вам никогда не придется самим разыскивать адрес, соответствующий этому имени, или подавать специальную команду для его поиска (в UNIX - команда nslookup). Вы, конечно, можете это проделать - для собственного удовольствия, но зачем, ведь этого совсем не требуется. Все компьютеры Internet способны пользоваться доменной системой. И работающий в сети компьютер всегда знает свой собственный сетевой адрес.
Когда вы пользуетесь именем, например, mx.ihep.su, компьютер должен преобразовать его в адрес. Для этого он начинает запрашивать помощь у DNS-серверов. Это узлы, рабочие машины, обладающие соответствующей базой данных, в число обязанностей которых входит обслуживание такого рода запросов. DNS-сервер начинает обработку имени с правого его конца и двигается по нему влево, т.е. сначала производится поиск адреса в самой большой группе (домене), потґом постепенно сужает поиск. Но для начала опрашивается на предмет наличия у него нужной информации местный узел. Здесь возможны три случая:
Местный сервер знает адрес, потому, что этот адрес содержится в его части всемирной базы данных. Например, если вы подсоединены к сети Института Физики Высоких Энергий (IHEP), то ваш местный сервер должен обладать информацией о всех компьютерах локальной сети этого института (mx, desert, ixwin и т.д.);
Местный сервер знает адрес, потому, что кто-то недавно уже запрашивал тот же адрес. Когда запрашивается адрес, сервер DNS придерживает его у себя в памяти некоторое время, как раз на случай, если кто-нибудь еще захочет попозже того же адреса - это повышает эффективность системы;
Местный сервер адрес не знает, но знает как его выяснить.
Как местный сервер может разузнать запрошенный адрес? В его прикладном или системном программном обеспечении имеется информация о том, как связаться с корневым сервером. Это сервер, который знает адреса серверов имен высшего уровня (самых правых в имени), здесь это уровень государств (ранга домена su). У него запрашивается адрес компьютера, ответственного за зону su. Местный DNS-сервер связывается с этим более общим сервером и запрашивает у него адрес сервера, ответственного за домен ihep.su. Теперь уже запрашивается этот сервер и у него запрашивается адрес рабочей машины mx.
На самом деле, для повышения эффективности, поиск начинается не с самого верха, а с наименьшего домена, в который входите и вы, и компьютер, имя которого вы запросили. Например, если ваш компьютер имеет имя nonlin.mipt.su, то опрос начнется (если имя не выяснится сразу) не со всемирного сервера, чтобы узнать адрес сервера группы su, а сразу с группы su, что сразу сокращает поиск и по объему, и по времени.
Этот поиск адреса совершенно аналогичен поиску пути письма без надписанного почтового индекса. Как определяется этот индекс? Все регионы пронумерованы - это первые цифры индекса. Письмо пересылается на центральный почтамт этого региона, где имеется справочник с нумерацией районов этого региона - это следующие цифры индекса. Теперь письмо идет на центральный почтамт соответствующего района, где уже знают все почтовые отделения в подопечном районе. Таким образом по географическому адресу определяется почтовый индекс, ему соответствующий. Также определяется и адрес компьютера в Internet, но путешествует не послание, а запрос вашего компьютера об этом адресе. И в отличие от случая с почтой, информация об адресе доходит до вас, как если бы районный почтамт места назначения отправлял вам письмо, любезно уведомляя вас на будущее об индексе, которого вы не изволили знать.
Некоторые компьютеры (есть еще такие динозавры) все еще работают по старинке, т.е. используя host-файлы. Если вы вдруг очутитесь на одном из них, вам надо будет просить администратора, либо самому вручную разыскать нужный вам адрес, а администратор должен будет потом включить соответствующую запись в местный host-файл. Подскажите администратору, что уж давно пора бы установить программы для поддержки DNS, так чтобы более вам этим поиском заниматься не пришлось.
Система адресов X.400
X.400 - общий стандарт, разработанный ISO и CCITT, для управления сообщениями. Этот стандарт планируют принять многие сети. Некоторые уже используют его.
Дополнительно к обычному тексту, сообщения X.400 могут содержать и другие форматы (факсы, записи звуков речи, музыки, различные изображения и т.д.). Адресация в пользовании также очень проста, слегка напоминает своей идеей DNS. Только здесь используются не названия групп, сетей, но более привычные в обиходе понятия:
Код страны -тот же, что в RFC822;
ADMD - Administration Management = домен административного управления . Определяет общественный носитель X.400.Владельцем ADMD обычно является компания по предоставлению услуг дальней связи или государственное учреждение связи. Для соединения ADMD друг с другом их владельцы заключают двусторонние соглашения, и, естественно, не все ADMD соединены между собой. Самые крупные владельцы ADMD: AT&T, MCI, Sprint
PRMD -Private Management Domain = домен частного управления. Определяет используемый частный носитель X.400. Это может быть EUnet, BITN и т.д. или же частная организация;
Организация - Указывает организацию получателя. Ею может быть, например, компания или учебное заведение МФТИ Oxford, Cambridge, MIT и т.д.;
Орг.единица - Определяет подразделение. Их может быть несколько. Например не просто physics, но lab_1 или lab_2;
Фамилия - Плотников;
Имя - Олег. Требуется, если фамилия достаточно распространённая.
Можно преобразовать старый адрес в X.400 формат, но не всегда это будет просто. Тем не менее, вполне может статься, что вас осчастливят письмом в формате X.400 . Чтобы послать ответ отправителю, просто возьмите его адрес из поля ``From: полученного письма. Соответствующий шлюз с этим разберется.
К счастью имеется инструкция (RFC 987) по переводу адресов и текстовых сообщений X.400 в формат RFC 822, имеется соответствующее программное обеспечение. Но, увы, единой системы картографирования таких адресов не существует; разные почтовые станции работают с ними немножко по-разному, что может приводить к недоразумениям. Также не существует единого стандарта для записи X.400 адреса, поэтому пока невозможно единообразно и ясно надписать таковой, например, на бизнес -карте.
Замечания по региональной системе имен
Распространено несколько заблуждений, с которыми вы можете столкнуться, имея дело с именами. Приведем несколько верных утверждений в качестве опорных, чтобы вывести вас из заблуждений, или предостеречь от них:
Части доменного имени говорят о том, кто ответственен за поддержку этого имени, то есть в чьем подчинении-ведении оно находится. Они могут вообще ничего не сообщать о владельце компьютера, соответствующего этому IP-адресу, или даже (несмотря на коды стран), где же эта машина находится. Вполне можно иметь в Антарктиде машину с именем inr.msk.su (ИЯИ РАН, г.Троицк под Москвой). Это совершенно ненормально, но никаким законам не противоречит. Вот реально существующий пример: в Институте Химической Физики (пос. Черноголовка Московской области) стоит машина с именем lle.icp.chg.free.net, относящимся к домену net, расположенному, по идее, в США.
Части доменного имени даже не всегда указывают локальную сеть, в которой расположен компьютер. Часто доменные имена и сети перекрываются, и жестких связей между ними нет: две машины одного домена могут не принадлежать одной сети. Например, системы mx.decnet.ihep.su и ms.decnet.ihep.su могут находиться в совершенно разных сетях. И еще раз: доменные имена указывают на ответственного за домен.
У машины может быть много имен. В частности, это верно для машин, предоставляющих какие-либо услуги, которые в будущем могут быть перемещены под опеку другой машины. Когда эти службы будут перемещены, то имя, под которым эта машина выступала в качестве такого сервера, будет передано новой машине-серверу вместе с услугами, - для внешних пользователей ничего не изменится. Т.е. они будут продолжать пользоваться этой службой, запрашивая ее по тому же имени, независимо от того, какой компьютер на самом деле занимается обслуживанием. Имена, по смыслу относящиеся к службе, называются ``каноническими именами или ``кименами (cnames). В Internet они встречаются довольно часто.
Для связи имена необязательны. Как-нибудь вам придет сообщение: ``адресат неизвестен, что означает, что Internet не может преобразовать использованное вами имя в число, - имя более недееспособно в том виде, в котором его знает ваш компьютер. Однажды заполучив числовой эквивалент имени, ваша система перестает использовать для связи на машинном уровне доменную форму адреса.
Запоминать лучше имена, а не числовые адреса. Некоторым кажется, что система имен это ``еще одно звено в цепи, которое может выйти из строя. Но адреса привязаны к конкретным точкам сети. Если компьютер, предоставляющий некие услуги, переносится из одного здания в другое, его сетевое расположение, а значит и адрес, скорее всего изменятся. Имя же менять не надо и не следует. Когда администратор присваивает новый адрес, ему нужно только обновить запись имени в базе данных так, чтобы имя указывало на новый адрес. Так как имя работает по-прежнему, вас совершенно не должно заботить то, что компьютер расположен уже в другом месте.
Региональная система имен, возможно, и выглядит сложно, но это одна из тех составляющих, делающих общение с сетью более простым и удобным. Несомненное преимущество доменной системы состоит в том, что она разбивает громадье Internet на набор вполне обозримых и управляемых частей. Хотя сеть включает миллионы компьютеров, все они поименованы, и именование это организовано в удобной рациональной форме, что упрощает работу.
Дозволенное в Internet
Quod licet Jovi non licet bovi
Что дозволено в Internet - вопрос очень сложный. На это влияют законы, этика и политика. Как они соотносятся и что из них первостепенно, зависит от конкретного места.Internet - не просто сеть, она - сеть сетей, и каждая из этих сетей может иметь свои собственные правила поведения и обычаи. Правила эти довольно общи и все будет в порядке, если вы будете помнить некоторые общие положения. К счастью, эти указания не очень строги. Если вы держитесь в отведенном ими пространстве, вы можете делать все, что угодно. Когда же вы теряете уверенность в правоте своих поступков, чувствуете, что подходите близко к краю, свяжитесь с вашим поставщиком сети и выясните точно, дозволено это или нет. Может быть, вы хотите вполне законного, но доподлинное выяснение законности всегда остается под вашей ответственностью. Незнание закона, как известно, не освобождает от ответственности.
Легальное использование
На законы Internet влияют три основных положения:
Государство субсидирует большие части Internet . Эти субсидии исключают коммерческое использование;
Internet - не только национальная сеть, но самая настоящая глобальная сеть. При передаче чего бы то ни было через национальные границы начинают действовать экспортные законы; государственные законы в разных местах могут существенно различаться;
При пересылке программного обеспечения (или идеи для того) из одного места в другое, вы должны считаться с интеллектуальной собственностью и лицензионными ограничениями.
Государственные дотации
Многие сети Internet материально поддерживаются государством. По закону учреждение может тратить деньги из своего бюджета только по его прямому назначению. Если Академия Наук финансирует сеть, то ее можно использовать только в целях научных исследований. Вы как пользователь можете совсем не знать, по каким сетям пересылаются ваши файлы, а они попадают в сферы влияния ведомств, содержащих каждую из этих сетей. Поэтому, разумнее было бы существовать одному большому ведомству, которое распоряжалось бы государственными субсидиями и централизовано содержало все дотируемые сети, ведь содержание множества параллельных сетей,- это пустая трата денег. Лучше создать сеть - часть Internet - например, для исследования и образования (RE: Research and Education), которую, таким образом, можно было бы использовать в любых фундаментальных исследованиях и образовании, или для их поддержки, чем иметь множество аналогичных сетей помельче, но более специализированных, например, для поддержки агрохимических исследований, океанологии и т.д.
Значение статьи расходов «в поддержку исследований или образования» невозможно переоценить. Ее наличие узаконивает важные пути использования дотируемой сети, которые, казалось бы, не соответствуют ее назначению. Например, продавец программного обеспечения, использующегося в исследованиях или образовательном процессе, может распространять усовершенствования или отвечать на вопросы пользователей по e-mail. Такое использование считается ``в поддержку исследований или образования (RE). В то же время он не может использовать такую сеть в бизнесе для, например, работы с рынком, предъявления счетов, отчетности, а также учета. Для таких целей должно использовать коммерческую часть Internet.
Коммерческое использование
Организация при подготовке к включению в Internet должна сообщить поставщику сети цель соединения: будет ли оно использоваться в исследовательских или же коммерческих целях. Если вы решите, что ваше подключение будет типа ``RE, то ваш сетевой трафик будет преимущественно идти по маршрутам, субсидируемым в этих целях. Если же организация коммерческая, то данные будут идти по коммерческим маршрутам. Как и следовало ожидать, плата за сетевое пользование вашей общиной зависит от этого решения: коммерческое использование обычно намного дороже, чем ``RE, т.к. оно не дотируется. Только администрация вашей сети может сообщить точно, допустимо ли коммерческое использование на этом соединении. Проверьте это перед тем, как начать пользоваться сетью.
Многие корпорации, конечно же, предпочитают входить в Internet как ``RE-общины, что в общем-то соответствует действительности, так как целью присоединения часто является исследование. Например, компания по производству зерна хочет провести совместные с университетом им. Н.С. Хрущева исследования по кукурузе. Тем не менее многие корпорации объявляют свои соединения коммерческими. Это дает уверенность в том, что в будущем не возникнет правовых помех, если их служащий воспользуется связью в коммерческих целях. Многие деловые люди считают, что удобство и надежность вполне заслуживают дополнительной платы.
Экспортные законы
Любой экспорт подпадает под ответственность и контроль соответствующего отдела по экспортным ограничениям. Экспорт данных - тоже. В Internet , поскольку она целостна ( ну, как бы) и глобальна, довольно просто можно вывозить информационные продукты без ведома владельца или таможенников. Для конкретного и обстоятельного разговора свяжитесь с юристом. Упомянем лишь основные требования, выполнение которых необходимо, чтобы не иметь проблем с законом.
Экспортные законы основаны на двух пунктах:
1.Экспорт чего бы то ни было требует лицензии.
2.Экспорт услуг примерно эквивалентен экспорту компонентов, необходимых для предоставления таких услуг.
Первый пункт вполне очевиден: пересылка файла и вообще чего-либо электронной почтой и как угодно еще за пределы страны должно быть прикрыто экспортной лицензией. К счастью имеется лазейка, называемая ``общая лицензия, которая устраняет большинство преград. Общая лицензия разрешает вывозить все, что не запрещено явно и можно вычитать в публичных библиотеках. Так что все, что вы можете узнать на конференции или на занятиях в классе и на что не наложены ограничения из соображений безопасности, скорее всего, подпадает под общую лицензию.
Однако, список запрещенных пунктов таит множество сюрпризов и включает некоторые вещи, которые можно свободно узнать, обучаясь в университете. Например, во время войны в Персидском заливе, оказалось неожиданно трудно отгородить сети Иракского командования и управления: они использовали коммерческие IP-маршрутизаторы, которые очень быстро и хорошо находят обходные пути. И вот, экспорт любого сетевого узла, способного изыскивать альтернативные маршруты, теперь запрещен. Стоит внимательно ознакомиться с этим списком во избежание недоразумений и столкновений с законом.
Второй пункт еще проще. Если экспорт какого-либо оборудования, скажем суперкомпьютера, не разрешен, то запрещен и удаленный доступ к этому оборудованию извне этой страны. Так что будьте осторожны с раздариванием доступа к ``особым ресурсам (как суперкомпьютеры) коллегам из других стран. Природа этих ограничений зависит, несомненно, от иностранного государства и, как показали события последнего десятилетия, может очень быстро изменяться.
Предостережем вас и от заблуждений относительно правовой ответственности оператора узлового компьютера: объединение, ведающее Bitnet, после изучения возможных правовых помех, пришло к следующим заключениям:
оператор сети ответственен за незаконный экспорт, только если он знал о нарушении и все же не информировал об этом компетентные органы;
оператор сети не ответственен за постоянный контроль вашего использования и определение его законности.
Таким образом, персонал национальных сетей, скорее всего, не проглядывает ваши пакеты, высматривая, что же вы вывозите (хотя, за разного рода АНБ, КГБ, МБ, MI, трудно поручиться.). Однако, если сетевой оператор видит ваши пакеты, и в них содержится явное нарушение каких-либо инструкций, то он обязан поставить в известность руководство.
Права собственности
При передаче чего-либо кому-либо спор может разгореться вокруг прав собственности. Наличие национальных границ, пересекающих линию связи, вносит в ситуацию еще больше смуты. Авторские и патентные права сильно меняются от страны к стране. Вы можете найти в сети интересный том позабытой технической документации, авторские права на которое у вас в стране уже не действительны за давностью лет. Пересылка этих файлов в США может поставить вас вне их федерального закона. Разузнайте, кто имеет права на то, что вы вывозите по сетям, что бы то ни было. Если это не ваше, перед тем как высылать, убедитесь, что вы имеете на то разрешение.
Закон об электронных коммуникациях не поспевает за прогрессом технологии. Если у вас есть книга, журнал или частное письмо, почти любой юрист или библиотекарь скажут вам точно, можете ли вы это копировать, или же чье разрешение вам следует для этого получить. Но о заметке на сетевой доске объявлений, о сообщении электронной почты или о файле с докладом, доступном в сети, они мало что смогут сказать вразумительного. Даже если вы знаете, чьего разрешения вам добиваться и вы его добились по e-mail, совсем еще не ясно, а дает ли послание электронной почты какую-либо реальную защиту.
И имейте, пожалуйста, в виду, что права собственности могут стать проблемой даже при использовании общих (public, publicly available) файлов. Некоторые программы, доступные в Internet для использования, должны быть лицензированы продавцом. Например, поставщик рабочих станций может обновлять их операционную систему и программное обеспечение через анонимный ftp. Так что вы легко можете заполучить эти программы, но для того, чтобы использовать их законно, вы должны получить лицензию на использование, например, официально купить эти же программы у продавца.
Internet и политика
Политические процессы многим сетевым пользователям видятся одновременно и как благо, и как бедствие. Благо состоит в деньгах. Субсидии предоставляют многим людям возможности, которых они иначе были бы лишены. Бедствие же в том, что их действия находятся под неусыпным оком надзора. Кто-нибудь из больших политиков вдруг может решить, что кое-что из того, что вы натворили, может быть использовано в политической игре, и тогда вы лишитесь не только покоя, но, возможно, и честного имени. Это вполне может задеть не только ваших ближайших соратников, но и всю вашу общину.
Государственные мужи, а их очень много, поддерживающих дотации Internet , поддерживают развитие и содержание сети потому, что это на пользу стране, это дает возможность равноправно участвовать в международных исследованиях и торговле, развивать технологии и т.п. Ускорение передачи сообщений позволяет ускорить исследования и образовательный процесс. Благодаря Internet исследователи, студенты и их коллеги по всей стране и за рубежом могут находить лучшие технические решения.
Сеть своей открытостью и доступностью, а также устойчивостью к отключениям, способствует большей открытости, гласности и информированности в обществе, особенно оперативной информированности. Например, в августе 1991 и в октябре 1993 многие телекоммуникации стали ``барахлить по указанию сверху, невозможно было получить оперативно достоверную информацию по обычным сетям: телефонным, телеграфным, радио. Сети Internet (Relcom, Finnet, и др.) работали устойчиво и позволяли сообщаться с корреспондентами и редакциями как по всей стране, так и за рубежом.
Но есть и обратная сторона такого вмешательства политики: поддержка эта широка, но относительно хрупка и тонка. Любое действие сети, которое может вызвать политическое волнение, может и полностью изменить эту ситуацию, скорее всего, в худшую сторону.
Сетевая этика
У свежеиспеченного пользователя сети кажущееся отсутствие этики вызывает беспокойство. В действительности сеть есть общество очень этичное (см. по этике RFC 1087), просто этика его слегка отличается от обычной. Чтобы понять это, рассмотрим ``законы первопроходцев. Во времена великих переселений на неосвоенные земли (например, Дикий Запад) устав, принятый на исходных территориях, всегда изменялся и подстраивался к местным условиям полукочевого образа жизни и т.д., что приводило к тому, что он отличался и от исходного, и от соседних. Так и сеть, являясь передним краем внедрения новых информационных и коммуникационных технологий, пользуется правом изменения и нововведения.
Имеется две пересекающиеся посылки сетевой этики:
проявление индивидуальности уважается и поощряется;
сеть - вещь хорошая и ее следует защищать.
Наиболее распространенные возможности Internet
Рассмотрим самые популярные возможности Internet . Эти услуги поддерживаются стандартом. Для более конкретного описания команд следует смотреть документацию соответствующего программного обеспечения. Впрочем, большинству достаточно той информации и разъяснений, которые можно найти в интерактивных системах подсказок (help-aх) или файлах описания.
Приведенная здесь статистика взята из [10] и [11]. Статистический анализ был проведен по количеству пакетов, а не пересылаемых объемов. Размеры же пакетов могут отличаться на порядки: пакеты могут быть от 20 байт до примерно 15 KB (принципиальных ограничений не существует, имеющиеся ограничения связаны с эффективностью пересылки информации при наличии искажений и задержек на повторную пересылку.) Статистика по пакетам показывает не загруженность сети, но частоту использования данного протокола, в некотором роде, его популярность.
Удаленный доступ (telnet)
Remote Login - удаленный доступ - работа на удаленном компьютере в режиме, когда ваш компьютер эмулирует терминал удаленного компьютера, т.е. вы можете делать все то же (или почти все), что можно делать с обычного терминала той машины. Трафик, относящийся к этому виду работы в сети, в среднем составляет около 19% всего сетевого трафика. Начать сеанс удаленного доступа можно в UNIX, подав команду telnet и указав имя машины, с которой вы хотите работать. Если номер порта опустить, то ваш компьютер по умолчанию эмулирует терминал той машины и вы входите в систему как обычно. Указание номера порта позволяет связываться с нестандартными серверами, интерфейсами.
telnet - протокол эмуляции терминала, который обеспечивает поддержку удаленного доступа в Internet .
telnet - так же называется программа в UNIX, которая обслуживает эти сеансы работы; telnet имеет и свой собственный набор команд, которые управляют собственно этой программой, т.е. сеансом связи, его параметрами, открытием новых, закрытием и т.д.; эти команды подаются из командного режима telnet, в который можно перейти, нажав так называемую escape-последовательность клавиш, которая вам сообщается при достижении удаленной машины.
Сеанс обеспечивается совместной работой программного обеспечения удаленной ЭВМ и вашей. Они устанавливают TCP-связь и общаются через TCP и UDP пакеты. Взаимодействие это очень не простое, но результат замечателен. Сидя, например, в Швейцарии, можно работать на машине в США так, как если бы она стояла рядом.
Для пользования этой замечательной возможностью сети необходимо иметь доступ в Internet класса не ниже dial-up доступа.
Передача файлов (ftp)
ftp - File Transfer Protocol - протокол передачи файлов - протокол, определяющий правила передачи файлов с одного компьютера на другой.
ftp - также название программы из прикладного обеспечения. Использует протокол ftp для того, чтобы пересылать файлы.
В аспекте применения ftp во многом аналогична telnet. Т.е. для работы с ftp нужно иметь доступ на ту удаленную машину, с которой вы хотите перекачать себе файлы, т.е. иметь входное имя и знать соответствующий пароль. Доступ должен быть как минимум типа dial-up (по вызову). Для использования ftp, нужно подать команду ftp с указанием имени рабочей машины, на которой вы хотите провести сеанс. ftp также позволяет (у него свой набор команд) производить поиск файла на удаленной машине, то есть переходить из директории в директорию, просматривать содержимое этих директорий, файлов. Позволяет пересылать как файлы, так и их группы, а также целиком директории, можно вместе со всеми вложенными на любую глубину поддиректориями. Позволяет пересылать данные в файлах либо как двоичную информацию, либо как ASCII (т.е. текст). ASCII-пересылка дает возможность автоматического перекодирования данных при пересылке текста на компьютер с другой кодировкой алфавита и т.д., что сохраняет прежний читаемый вид текста. Имеется возможность сжимать данные при пересылке и после их разжимать в прежний вид.
Имеет место подвид ftp, так называемое анонимное ftp. Анонимность заключается в том, что если на ftp, вообще говоря, требуется для начала работы правильно идентифицировать себя, ввести входное имя и, возможно, пароль, то на машинах, поддерживающих этот вид ftp, для входа и начала работы этого не требуется.
ftp протоколы делятся на протоколы команд и самих перекачиваемых данных. Данные занимают в среднем около 40% всего сетевого трафика, в то время как команды - только 4%. (Здесь статистика по пересылаемым объемам!)
Имеется также возможность использования ftp в пакетном режиме по e-mail на некоторых серверах, но отсутствие прямого диалога очень неудобно и сильно замедляет работу, - за неимением лучшего это вполне сносно.
Введение
Сейчас все популярнее становится система электронной почты. Что это такое, каким образом ее можно использовать, как разобраться в адресах E -mail?
Что такое почта - мы знаем. Это традиционные средства связи, позволяющие обмениваться информацией, по крайней мере, двум абонентам. Для того, чтобы этот обмен состоялся, необходимо написать послание и, указав адрес, опустить в почтовый ящик, откуда письмо неминуемо попадет на почтовый узел. Если указанный адрес соответствует общепринятым стандартам, то через некоторое время почтальон положит его в почтовый ящик адресата. Далее абонент вскроет послание, и - обмен информацией состоялся. Чтобы ускорить процесс, вы поднимаете телефонную трубку, набираете телефонный номер и, если произойдет правильное соединение, то ваш абонент услышит то, что вы хотите ему передать. Если абонент не отвечает или его номер занят, придется повторить процедуру еще раз, сожалея о том, что вы тратите на это свое драгоценное время.
Эти два вида связи - почтовая и телефонная - стали для нас традиционными, и мы уже хорошо знаем их достоинства и недостатки. А что же такое электронная почта? Электронная почта - обмен почтовыми сообщениями с любым абонентом сети Internet. Существует возможность отправки как текстовых, так и двоичных файлов. На размер почтового со ...........
Страницы: 1 | [2] | 3 |
|