Рождение, жизнь и смерть сокетов (на примере Python)
В докладе Нина рассмотрит, как создаются TCP и UDP сокеты на примере языка Python, начиная от самых простых блокирующих сокетов, и заканчивая асинхронными сокетами, обрабатывающими несколько клиентов.
Библиотека socket для Python предоставляет доступ к интерфейсу сокетов Беркли, который является стандартом для подключения к сети Интернет на низком уровне, и в той или иной реализации поддерживается всеми современными операционными системами.
Поэтому, главная задача доклада — показать, что разобравшись один раз в данной теме, можно легко создавать сокеты на любых языках программирования (конечно, с учетом специфики языка).
Сокеты до сих пор активно используются для осуществления обмена данными на низком уровне как между узлами, так и между процессами на одном сервере.
Несмотря на обилие материала на тему создания сокетов, не так часто объясняется что такое сокеты с точки зрения сетевого взаимодействия, например, как на уровне пакетов потоковый сокет отличается от дейтаграммного, почему для конфигурации используются те или иные константы, или как можно выбрать другой протокол в качестве сетевого уровня.
В ходе доклада мы также разберемся какой из сокетов, TCP или UDP, лучше (спойлер: нет лучшего или худшего сокета, всё зависит от прикладной задачи).
Целевая аудитория: те, кто работают с передачей данных по сети без привязки к языку программирования; те, кто программируют на Python; желающие разобраться с сетевым взаимодействием на низком уровне.
Закончила институт по специальности «Нанотехнологии в электронике». Сразу после института стала работать с АСУ ТП, в основном, программируя промышленные контроллеры.
Семь лет спустя перешла в область промышленной безопасности.
Является активным участником Московского Клуба Программистов и его организатором.
Нина Пакшина
Московский клуб программистов