What you'll learn:
- sockets
- what is socket programming
- high level vs low level programming languages
- system calls
- ip protocol and header
- creating sockets in c
- structs in c
- #include in c
- typedef in c
- how to include headers in c
- searching through c files in c
- sockaddr and sockaddr_in in c
- how to create an address struct in c
- how to connect to a socket in c
- binding sockets in c
- listen in sockets in c
- accept in socket programming in c
- how to create a client side socket in c
- how to create a server side socket in c
in this course first we talk about some basic concepts in computer science, we talk about what programming languages are, what c programming language is, what are headers in c, and how we could include them using #include keyword,
what are system calls would be the next sections, after that we talk about tcp/ip stack ,and how different data and headers are added to the data in each layer , and we talk about ip protocol in specific, after that we talk about sockets, that what sockets are and what is their application.
we explain about how we could create sockets in c and after that we talk about structures in c, structs are some important concepts in c, therefore we would assign a separate lecture to it, also since we know linux is open source , so for everything we expect a source code, therefore we talk how we could browse all the c files in the linux , which the kernel is actually build based upon, so we will talk about how we could search through all of these files, after this lecture we get to the next section which is the main part of this course.
in this section first we talk about address structures , and sockaddr and also sockaddr_in, after that we explain about what endianness is , after that we talk about all the methods and functions which invoke system calls causing the creation of sockets, connection sockets to a server at the client side, binding sockets to address structures at the server side, sending data from server and receiving it at the client side.