Size: a a a

Сообщество Python Программистов

2021 January 15

VA

Vadim Apenko in Сообщество Python Программистов
Бензофуран Гетероцикл
Ну так ты ж там хотел много передач одновременно вроде
Мой протокол это решает подписывая пакеты к некому подобию сессии.
источник

👑️

👑OGURCHIK🖤 ️ in Сообщество Python Программистов
Бензофуран Гетероцикл
Кастрированная версия
опять наделают что то что работает не так как ожидаешь
источник

VA

Vadim Apenko in Сообщество Python Программистов
Бензофуран Гетероцикл
А так - в пределах одного соединения передаётся один стрим
Как принимающая сторона отделит пакет одного соединения от другого?
источник

👑️

👑OGURCHIK🖤 ️ in Сообщество Python Программистов
Vitalii Shchudlo
Нужно чтобы выводило нажатия клавиш, но мне выводит 2 раза (down и up), возможно есть команда которая считывала бы только например down или наоборот?

import keyboard

while True:
   def print_pressed_keys(e):
       print(e.name)
   keyboard.hook(print_pressed_keys)
   keyboard.wait()

Результат:

(venv) vital@SERGII-DAA1 D:\key_project
$ python main.py
s
s
d
d
main.py
s
s
d
d
фильтруй
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Vadim Apenko
Как принимающая сторона отделит пакет одного соединения от другого?
Справедливо
источник

VS

Vitalii Shchudlo in Сообщество Python Программистов
👑OGURCHIK🖤 ️
фильтруй
kak ?
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Vadim Apenko
Как принимающая сторона отделит пакет одного соединения от другого?
Не разрешит новое соединение если есть уже активное!
источник

👑️

👑OGURCHIK🖤 ️ in Сообщество Python Программистов
полагаю там будет состояние
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Бензофуран Гетероцикл
Не разрешит новое соединение если есть уже активное!
G E N I U S
источник

VA

Vadim Apenko in Сообщество Python Программистов
Бензофуран Гетероцикл
Не разрешит новое соединение если есть уже активное!
Огонь) Мой разрешает)
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Vadim Apenko
Огонь) Мой разрешает)
Йуй, ща как нахуячу прикол
источник

VA

Vadim Apenko in Сообщество Python Программистов
Бензофуран Гетероцикл
Йуй, ща как нахуячу прикол
И сразу скажи чем он будет лучше моего)
источник

Д

Дима in Сообщество Python Программистов
Ибо, в обучалке сказали мол идёт вложенность ip> tsp>http. Но по osi получается, что пакет прикладного уровеня(http) вложен в тело канального уровня (tsp), который вложен в тело пакета сетевого уровня(ip), или я где-то туплю?
источник

@

@alexandr:~#_ in Сообщество Python Программистов
Бензофуран Гетероцикл
Еее, кастомим бинарные протоколы!
В python это protlib, верно, или что-то лучше есть ?
источник

@

@alexandr:~#_ in Сообщество Python Программистов
@alexandr:~#_
В python это protlib, верно, или что-то лучше есть ?
источник

VA

Vadim Apenko in Сообщество Python Программистов
@alexandr:~#_
В python это protlib, верно, или что-то лучше есть ?
В микропайтоне нет его, увы
источник

@

@alexandr:~#_ in Сообщество Python Программистов
Vadim Apenko
В микропайтоне нет его, увы
Ммм, ясно.
источник

А

Айван in Сообщество Python Программистов
Vitalii Shchudlo
Нужно чтобы выводило нажатия клавиш, но мне выводит 2 раза (down и up), возможно есть команда которая считывала бы только например down или наоборот?

import keyboard

while True:
   def print_pressed_keys(e):
       print(e.name)
   keyboard.hook(print_pressed_keys)
   keyboard.wait()

Результат:

(venv) vital@SERGII-DAA1 D:\key_project
$ python main.py
s
s
d
d
main.py
s
s
d
d
А может быть что это разные "события" нажатой кнопки? Например в первый раз срабатывает потому-что нажата второй потому-что отпущена?
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Бензофуран Гетероцикл
sender     | receiver

SYN     -> |
          | <- ACK
SYN/ACK -> |

sizeof  -> |
          | <- ACK

block   -> |
          | <- ACK
(сколько-то там ещё блоков)

FIN        |
          | <- FIN/ACK


block (5-25 0bytes):
   block_no 4 bytes
   block_len 1 byte
   block_data 1-245 bytes
sender     | receiver
-----------+----------
SYN     -> |
          | <- ACK
block   -> |
          | <- DACK
(сколько-то там ещё блоков)

FIN        |
          | <- ACK


SYN (8 bytes)
   SYN_flag (0b0) 1 byte
   datatype 3 bytes
   sizeof 4 bytes

ACK (3 bytes)
   ACK_flag (0b10) 1byte
   session_no 2 bytes

block (8-250 bytes):
   DATA_flag (0b1000) 1 byte
   block_no 4 bytes
   session_no 2 bytes
   block_len 1 byte
   block_data 1-245 bytes

DACK (7 bytes)
   DACK_flag (0b100) 1 byte
   session_no 2 byte
   block_no 4 byte

FIN (3 bytes)
   FIN_flag (0b1) 1 byte
   session_no 2 bytes
источник

VA

Vadim Apenko in Сообщество Python Программистов
А если броадкаст? А если технические пакеты типа знакомства?
источник