
- •3. Возникают некоторые проблемы
- •2. Ввод-вывод сетевых данных и данных в файловой системе
- •3. Возникают некоторые проблемы
- •4. Абстракция сокетов
- •5. Отличие дескриптора сокета от дескриптора файла
- •6. Создание сокета
- •7. Параметры сокета
- •8. Семейства протоколов и адресов
- •9. Тип соединения
- •10. Выбор протокола
- •11. Процесс
- •12. Что такое дескриптор сокета?
- •14. Использование сокета в программе
- •15. Настройка сокета
- •15. Соединение сокета
- •16. Указание локального адреса (порта протокола)
- •17. Передача данных через сокет
- •18. Передача данных через соединенный сокет
- •19. Передача данных через не соединенный сокет
- •20. Прием данных через сокет
- •22. Сокеты и серверы
- •23. Функция listen
- •24. Функция accept
- •25. Процесс-сервер
- •26. Принципы проектирования параллельного сервера
- •28. Подводя итоги
28. Подводя итоги
В этой лекции Вы узнали, откуда появился и как развивался интерфейс сокетов, созданный, чтобы перенести семейство протоколов TCP/IP на операционную систему UNIX. В главе рассматривалось, каким образом сетевая абстракция — конечные точки соединения — служит для описания сокетов. Вы узнали, как создавать и настраивать сокеты, а также как передавать и принимать данные через них.
Необходимо усвоить следующие ключевые моменты:
1. Сокет — это абстрактное представление конечной точки сетевого соединения. Разработчики интерфейса сокетов приспособили его для работы не только с сетями на базе TCP/IP.
Интерфейс сокетов пользуется понятиями группы (семейства) протоколов и сетевых адресов для того, чтобы иметь возможность работать с различными сетями.
С интерфейсом сокетов могут работать как ориентированные, так и не ориентировантированные на соединение протоколы. Однако каждый тип протокола обслуживаетей различными наборами функций.
При помощи интерфейса сокетов можно разрабатывать как программы-серверы, так и программы-клиенты, однако каждый тип приложения обслуживается различными функциями.
До того как настроить сокет на сетевое соединение, программа должна создать его, вызвав функцию socket.
Для соединения сокета с партнером на другом конце недостаточно только создать его. Кроме функции socket должна вызываться функция connect.
То, какие функции вызываются для настройки сокета, зависит от того, серверу или клиенту предназначен этот сокет, а также от того, ориентирован или не ориентирован на соединение выбранный протокол.
Для передачи данных в интерфейсе сокетов предназначены пять различных функций.
На каждую функцию по передаче данных в интерфейсе сокетов приходится соответствующая функция для приема данных.
При помощи интерфейса сокетов можно разрабатывать серверы как с последовательной, так и с параллельной обработкой данных.