
Linux 또는 OpenBSD TAP 어댑터가 패킷을 대기열에 추가합니까, 아니면 단일 스레드에서 들어오는 패킷을 처리하려고 하면 패킷을 삭제합니까? 들어오는 패킷을 모두 처리하지 못할까 걱정은 안 되지만, 하나의 패킷에 대한 처리가 시작될 때 여러 개의 패킷이 동시에 들어오는 경우 어댑터에 내부 대기열이 없으면 일부 패킷이 손실될 수 있습니다.
답변1
drivers/net/tun.c
Linux 와 OpenBSD 에 대해 읽은 후 sys/net/if_tun.c
둘 다 대기열을 사용하여 패킷을 처리한다는 결론에 도달했습니다.
특히 Linux는 tun/tap 드라이버의 대기열을 사용하는 반면 OpenBSD는 기존 네트워크 스택의 대기열을 사용합니다.
아직 대기열 기능을 수동으로 테스트하지 않았습니다.