TAP 어댑터가 패킷을 대기열에 추가합니까?

TAP 어댑터가 패킷을 대기열에 추가합니까?

Linux 또는 OpenBSD TAP 어댑터가 패킷을 대기열에 추가합니까, 아니면 단일 스레드에서 들어오는 패킷을 처리하려고 하면 패킷을 삭제합니까? 들어오는 패킷을 모두 처리하지 못할까 걱정은 안 되지만, 하나의 패킷에 대한 처리가 시작될 때 여러 개의 패킷이 동시에 들어오는 경우 어댑터에 내부 대기열이 없으면 일부 패킷이 손실될 수 있습니다.

답변1

drivers/net/tun.cLinux 와 OpenBSD 에 대해 읽은 후 sys/net/if_tun.c둘 다 대기열을 사용하여 패킷을 처리한다는 결론에 도달했습니다.

특히 Linux는 tun/tap 드라이버의 대기열을 사용하는 반면 OpenBSD는 기존 네트워크 스택의 대기열을 사용합니다.

아직 대기열 기능을 수동으로 테스트하지 않았습니다.

관련 정보