yukovalski / web_serv

#42cursus

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

web_server

42 project, recoding our own web server in C++. A program capable of running an HTTP server, handling requests, and parsing configuration files.

Team : sgath, ctragula, msamual

Subject:

RU

EN

Checklist


Физический уровень.

Основные способы подключения к интернету и их стандарты(протоколы):

  • IEEE 802.3 - стандарт Ethernet
  • IEEE 802.11 - стандарт Wi-Fi
  • GSM - стандарт сотовой связи

Канальный уровень.

Основные протоколы:

  • ARP - протокол построение таблицы соответствия mac-адресов и ip-адресов. Необходим для привязки ip-адреса к компьютеру(к сетевой карте компьютера). Используется в многоточечных соединениях.
  • PPP - Используется в соединениях точка-точка. Определяет структуру кадра и способ контроля его целостности. Также определяет правила установки соединения и проверки состояния сети.

IP - internetworking protocol(межсетевой протокол)

октет - байт, состоящий из 8 битов.

network gateway - сетевой шлюз, компьютер который является пропускным пунктом в сети.

Сокет - это объект, созданный по рецепту, который по своей сути является шаблоном на основе которого формируются пакеты данных.

Сокеты - это де-факто стандарт интерфейсов для транспортной подсистемы

`Summary`

Интерфейс сокетов | Курс "Компьютерные сети". Созыкин

Web сокеты | Компьютерные сети. Продвинутые темы. Созыкин

Изучение С++. Часть 1. Уроки С++

Изучение С++. Часть 2. Уроки С++

C++ Web Server from Scratch | Part 1: Creating a Socket Object


SSL Programming Tutorial .................................59

HTTP учебник

select / poll / epoll: практическая разница

Mongoose - easy to use web server

Веб-сервер на C++ и сокетах

WebServer как тестовое задание

+ forum

HTTP Server: Everything you need to know to Build a simple HTTP server from scratch

Hypertext Transfer Protocol -- HTTP/1.1

RFC: 7230 7231 7232 7233 7234 7235


https://adrienblanc.com/projects/42/webserv

http://dwise1.net/pgm/sockets/blocking.html

`Todolist` [ ] Создать сокет

[ ] Привязать сокет к сетевому интерфейсу

[ ] Прослушивать сокет, привязанный к определенному сетевому интерфейсу

[ ] Принимать входящие соединения

[ ] Реагировать на события происходящие на сокетах

About

#42cursus


Languages

Language:C++ 95.8%Language:Makefile 4.2%