Имя Пароль
Зарегистрироваться


* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Использование сокетов в Delphi
23 февраля 2009

Многочисленные вопросы на Круглом столе, посвящённые передаче данных по сети с помощью сокетов, показывают, что эта тема достаточно актуальна, но вызывает некоторые сложности у начинающих программистов. Данная статья является первой в цикле из трёх статей, призванных дать ответы на подобные вопросы. Она посвящена стандартным сокетам. Вторая статья будет посвящена сокетам Windows, а третья - внутреннему устройству классов VCL, предназначенных для передачи данных с помощью сокетов. Статьи не претендуют на исчерпывающее освещение проблемы (в частности, будут обсуждаться только протоколы TCP и UDP), однако они должны дать сведения, достаточные для понимания основных механизмов работы сокетов и дальнейшего самостоятельного их изучения. В статьях много дополнительной информации, которая не является необходимой непосредственно для написания программы, но расширяет кругозор в данной области знаний. Строго говоря, если писать только то, что необходимо для простейшей организации связи, каждая из трёх статей цикла уместилась бы на странице. Но в таком виде это было бы полезно только ламерам, которым лишь бы содрать откуда-нибудь готовое решение и абы как вставить его в свою "программу". А моя цель - написать что-то полезное для тех, кто пока ещё не знаком близко с сокетами, но хочет в первую очередь понять, как они устроены, а не получить что-то готовенькое. Таким людям, на мой взгляд, будет полезно знать то, что находится вокруг, потому что это знание помогает искать решения в нестандартных ситуациях.
Термин "стандартные сокеты", который будет встречаться на протяжении всей статьи, достаточно условен и нуждается в дополнительном пояснении. Строго говоря, стандартными сокетами называются сокеты Беркли (Berkley sockets), разработанные в университете Беркли для системы Unix. Как это ни парадоксально звучит, но сокеты Беркли появились до появления компьютерных сетей. Изначально они предназначались для взаимодействия между процессами в системе и только позже были приспособлены для TCP/IP. Работа с сокетами Беркли сделана максимально похожей на работу с файлами в Unix. В частности, для отправки и получения данных используются те же функции, что и для файлового ввода/вывода.
Сокеты в Windows не полностью совместимы с сокетами Беркли (например, для них предусмотрены специальные функции отправки и получения данных, переопределены некоторые типы данных и т.п.). Но возможности работы с сокетами в Windows можно разделить на две части: то, что укладывается в идеологию сокетов Беркли, хотя и реализовано несколько иначе, и то, что является специфичным для Windows. Ту часть реализации сокетов Windows, которая по функциональности соответствует сокетам Беркли, мы будем называть стандартными сокетами, а сокетами Windows (Windows sockets) - специфичные для Windows расширения.


Теги: Windows, Delphi, TCP, UDP, Berkley, sockets, Unix Borland Delphi

Статьи по теме:

Свойство WordWrap
Свойство Enabled
Локальная сеть Token Ring
Свойство AlignToBottom
CodePage
Компонент TQRShape
Асинхронный режим, основанный на сообщениях
Проектирование технологических процессов обработки данных
Панель HTML Format
UpdateIndexDefs
Модель СОМ
Исполнительные информационные системы (Executive Support System)
Информационные технологии в менеджменте
Общая тенденция развития систем делопроизводства и документооборота
Метод ApplySettings
| Borland Delphi | Alex |
 


Пн Вт Ср Чт Пт Сб Вс
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31


     



Rambler's Top100

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | Borland Delphi | Использование сокетов в Delphi. Регион сайта: Москва и Санкт-Петербург