가상 포트에서 수신 필터 열거
네트워크 어댑터의 NIC 스위치에서 VPort(가상 포트)를 만든 후 드라이버와 사용자 애플리케이션이 오버리딩하면 다음을 수행할 수 있습니다.
VPort에서 수신 필터에 대한 매개 변수를 열거합니다.
자세한 내용은 수신 필터 열거를 참조하세요.
특정 수신 필터에 대한 매개 변수를 쿼리합니다.
자세한 내용은 특정 수신 필터 쿼리를 참조하세요.
VPort를 만드는 방법에 대한 자세한 내용은 가상 포트 만들기를 참조하세요.
수신 필터 열거
NIC 스위치의 VPort(가상 포트)에 설정된 모든 수신 필터 목록을 가져오려면 드라이버와 애플리케이션이 OID_RECEIVE_FILTER_ENUM_FILTERS OID(개체 식별자) 메서드 요청을 실행할 수 있습니다.
NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버는 처음에 NDIS_RECEIVE_FILTER_INFO_ARRAY 구조체에 대한 포인터를 포함합니다.
지나치게 많은 드라이버 또는 사용자 애플리케이션이 이 OID 메서드 요청을 실행하기 전에 NDIS_RECEIVE_FILTER_INFO_ARRAY 구조를 초기화하고 다음과 같은 방식으로 이 구조체의 멤버를 설정해야 합니다.
QueueId 멤버는 NDIS_DEFAULT_RECEIVE_QUEUE_ID 설정해야 합니다.
VPortId 멤버는 VPort와 연결된 식별자로 설정해야 합니다. 오버리싱 드라이버는 다음 방법 중 하나를 통해 VPort 식별자를 가져옵니다.
이전 OID 메서드 요청에서 OID_NIC_SWITCH_CREATE_VPORT.
이전 OID 메서드 요청에서 OID_NIC_SWITCH_ENUM_VPORTS.
참고 이 멤버는 드라이버 또는 애플리케이션이 Flags 멤버에서 NDIS_RECEIVE_FILTER_INFO_ARRAY_VPORT_ID_SPECIFIED 플래그를 설정하는 경우에만 유효합니다. 이 플래그가 설정되지 않은 경우 NIC 스위치의 모든 VPort에서 설정된 수신 필터가 반환됩니다.
OID_RECEIVE_FILTER_ENUM_FILTERS OID 메서드 요청에서 성공적으로 반환된 후 NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버에는 업데이트된 NDIS_RECEIVE_FILTER_INFO_ARRAY 구조체에 대한 포인터가 포함되고 그 뒤에 하나 이상의 NDIS_RECEIVE_FILTER_INFO 구조체가 포함됩니다. 각 NDIS_RECEIVE_FILTER_INFO 구조체는 지정된 VPort에 설정된 수신 필터의 고유 식별자를 지정합니다.
특정 수신 필터 쿼리
지나치게 드라이버 또는 애플리케이션은 VPort 에서 특정 필터의 매개 변수를 얻기 위해 OID_RECEIVE_FILTER_PARAMETERS OID 메서드 요청을 실행할 수 있습니다.
NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버는 처음에 NDIS_RECEIVE_FILTER_PARAMETERS 구조체에 대한 포인터를 포함합니다.
지나치게 많은 드라이버 또는 사용자 애플리케이션이 이 OID 메서드 요청을 실행하기 전에 NDIS_RECEIVE_FILTER_PARAMETERS 구조를 초기화하고 다음과 같은 방식으로 이 구조체의 멤버를 설정해야 합니다.
FilterId 멤버는 매개 변수를 반환할 필터의 0이 아닌 식별자 값으로 설정해야 합니다.
참고 오버리싱 드라이버는 OID_RECEIVE_FILTER_SET_FILTER 또는OID_RECEIVE_FILTER_ENUM_FILTERS 이전 OID 메서드 요청에서 필터 식별자를 얻었습니다. 애플리케이션은 OID_RECEIVE_FILTER_ENUM_FILTERS 이전 OID 메서드 요청에서만 필터 식별자를 가져올 수 있습니다.
QueueId 멤버는 NDIS_DEFAULT_RECEIVE_QUEUE_ID 설정해야 합니다.
VPortId 멤버는 VPort와 연결된 식별자로 설정해야 합니다. 오버리싱 드라이버는 다음 방법 중 하나를 통해 VPort 식별자를 가져옵니다.
이전 OID 메서드 요청에서 OID_NIC_SWITCH_CREATE_VPORT.
이전 OID 메서드 요청에서 OID_NIC_SWITCH_ENUM_VPORTS.
NDIS는 미니포트 드라이버에 대한 OID_RECEIVE_FILTER_ENUM_FILTERS 및 OID_RECEIVE_FILTER_PARAMETERS 메서드 OID 요청을 처리합니다. NDIS는 OID_RECEIVE_FILTER_SET_FILTER OID 요청에서 받은 데이터의 내부 캐시에서 정보를 얻었습니다.