Birth, life and death of sockets (on example of Python)
In her talk Nina will consider how TCP and UDP sockets are created on the Python example, starting from the simple blocking sockets and ending with asynchronous sockets that process several clients.
Socket library for Python provides access to the Berkley socket interface that is standard for the Internet connection on the low level and is supposed in all implementations of all modern operating systems. So, the main purpose of the talk is to show that when you understand the topic, you can easily create sockets in any programming languages (of course, according to the specifics of the language).
Sockets are still actively used for exchanging data on low levels between nodes and processes at the same time.
Despite the plenty of materials about socket creating, it's not often explained what sockets are from the point of network interaction, for example, how at the packet level the streaming socket differs from datagram, why certain constants are used for the configuration, or how to choose another protocol as a network layer.
During the talk we will also figure out what socket, TCP or UDP is better (spoiler: there is no better or worst socket, it depends on the application).
Targeted audience: someone, who works with data transmission over the network without reference to the programming language; those, who program in Python; someone wishing to deal with network interaction at a low level.
Nina has graduated with a specialty "Nanotechnology in electronics". After that she has worked with Industrial Automation Systems, mainly programming PLCs.
7 years later she has switched her interests to Cybersecurity.
She is an active member and organizer in Moscow Programmers Club.
Nina Pakshina
Moscow Programmers Club