Beautiful Soup - это парсер для синтаксического разбора файлов HTML/XML, написанный на языке программирования Python, который может преобразовать даже неправильную разметку в дерево синтаксического разбора
@jcmvbkbc спасибо, TCP соединение поднял, теперь буду изучать, как данные отправлять))
Не знаете, в ответ на FIN-ACK нужно что-то отправить? А то клиент отправил мне PUS-ACK с данными, затем FIN-ACK, а затем много много FIN-PUS-ACKс данными) Ждет, видать, моей реакции
Понял. получается так:
SYN: SN: 123456; AN: 0
SYN-ACK: SN: 654321; AN: 123457
ACK: SN: ???; AN: 654322
а что же тогда будет в поле Sequence Number, когда SYN = 0 ?
То есть, в SYN-ACK пакете поле Sequence Number будет равно ISN из SYN-пакета, а поле Acknowledgment Number - ISN + 1?
Извините, если туплю, доходит туговато
Насколько я читал, Sequence Number в ответе должен быть увеличен на единицу, а SYN и SYN-ACK и потом ACK - это флаги, которые лежат в 14-м байте TCP заголовка. Про Acknowledgement не знаю.
Можете дать какую-то ссылку на источник информации об этом?
Я получаю от клиента запрос HTTP GET, а он идет поверх TCP. А жесть потому, что умаялся с суммами и с преобразованием данных в питоне)
Насчет отправки ACK: сессию инициирует клиент, я со стороны сервера только получаю SYN, отправляю SYN-ACK и жду ACK, а затем и данных, если я правильно понимаю. Клиент работает через обычные сокеты (не на низком уровне)
Жесть. Вот тут читал: habrahabr.ru/company/smart_soft/blog/184430/, что ядро таки что-то само делает, но ввиду необходимости менять флаги, судя по всему, придется все самому делать. Сумму IP посчитал, с TCP посложнее будет.
Верно ли, что клиенту TCP для поднятия сессии будет достаточно получить пакет SYN-ACK с правильными адресами, суммами и номером последовательности в TCP + 1?
Просто не вижу смысла изобретать велосипед, когда все что можно уже придумали и оптимизировали