다음을 통해 공유


향상된 송신 및 수신 경로

NDIS 6.0 송신 및 수신 경로는 다음과 같이 개선되어 성능을 향상시켰습니다.

  • 모든 NDIS 6.0 이상 드라이버 송신 및 수신 함수는 단일 함수 호출을 사용하여 연결된 NET_BUFFER_LIST 구조 목록과 연결된 NET_BUFFER 구조를 전송할 수 있습니다. 진정한 멀티패켓 송신 및 수신 작업에 대한 이러한 지원은 드라이버가 수행해야 하는 함수 호출 수를 크게 줄입니다.

  • 송신 또는 수신 함수를 호출할 때 DISPATCH_LEVEL 실행되는 드라이버는 IRQL을 NDIS로 나타낼 수 있습니다. 이후에 NDIS가 스택의 다른 드라이버를 호출하는 경우 이러한 드라이버가 IRQL을 테스트하거나 DISPATCH_LEVEL 설정할 필요는 없습니다. 이렇게 하면 중요한 코드 섹션에서 IRQL 테스트 및 설정과 관련된 오버헤드가 줄어듭니다.

  • 드라이버가 드라이버 스택을 위아래로 패킷을 전달할 때 헤더 정보를 수용하도록 NET_BUFFER 데이터 오프셋을 조정하도록 NDIS에 요청할 수 있습니다. 패킷을 보낼 때 드라이버는 드라이버의 헤더 정보를 수용하기 위해 사용된 데이터 공간을 확장할 수 있습니다. 수신 패킷을 나타낼 때 드라이버는 헤더 정보에 액세스한 후 사용된 데이터 공간을 줄일 수 있습니다. 메모리를 할당 및 해제하거나 데이터를 복사하지 않고 NET_BUFFER 구조에서 사용된 데이터 공간을 동적으로 조정하는 이 기능은 네트워크 데이터를 처리하는 데 필요한 오버헤드를 줄입니다.

NDIS 6.0에서 데이터 전송 및 수신 처리에 대한 자세한 내용은 NET_BUFFER 아키텍처를 참조하세요.