![TAP 어댑터가 패킷을 대기열에 추가합니까?](https://linux55.com/image/127863/TAP%20%EC%96%B4%EB%8C%91%ED%84%B0%EA%B0%80%20%ED%8C%A8%ED%82%B7%EC%9D%84%20%EB%8C%80%EA%B8%B0%EC%97%B4%EC%97%90%20%EC%B6%94%EA%B0%80%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
Linux 또는 OpenBSD TAP 어댑터가 패킷을 대기열에 추가합니까, 아니면 단일 스레드에서 들어오는 패킷을 처리하려고 하면 패킷을 삭제합니까? 들어오는 패킷을 모두 처리하지 못할까 걱정은 안 되지만, 하나의 패킷에 대한 처리가 시작될 때 여러 개의 패킷이 동시에 들어오는 경우 어댑터에 내부 대기열이 없으면 일부 패킷이 손실될 수 있습니다.
답변1
drivers/net/tun.c
Linux 와 OpenBSD 에 대해 읽은 후 sys/net/if_tun.c
둘 다 대기열을 사용하여 패킷을 처리한다는 결론에 도달했습니다.
특히 Linux는 tun/tap 드라이버의 대기열을 사용하는 반면 OpenBSD는 기존 네트워크 스택의 대기열을 사용합니다.
아직 대기열 기능을 수동으로 테스트하지 않았습니다.