다음을 통해 공유


NDIS_SWITCH_REFERENCE_SWITCH_NIC 콜백 함수(ndis.h)

ReferenceSwitchNic 함수는 확장 가능한 스위치 포트에 연결된 네트워크 어댑터에 대한 Hyper-V 확장 가능한 스위치 참조 카운터를 증가합니다.

통사론

NDIS_SWITCH_REFERENCE_SWITCH_NIC NdisSwitchReferenceSwitchNic;

NDIS_STATUS NdisSwitchReferenceSwitchNic(
  [in] NDIS_SWITCH_CONTEXT NdisSwitchContext,
  [in] NDIS_SWITCH_PORT_ID SwitchPortId,
  [in] NDIS_SWITCH_NIC_INDEX SwitchNicIndex
)
{...}

매개 변수

[in] NdisSwitchContext

Hyper-V 확장 가능한 스위치 확장이 연결된 확장 가능한 스위치 모듈의 핸들을 포함하는 NDIS_SWITCH_CONTEXT 값입니다. 확장에서 NdisFGetOptionalSwitchHandlers호출하면 이 핸들은 NdisSwitchContext 매개 변수를 통해 반환됩니다.

[in] SwitchPortId

가상 네트워크 어댑터가 연결된 확장 가능한 스위치 포트의 고유 식별자를 포함하는 NDIS_SWITCH_PORT_ID 값입니다.

[in] SwitchNicIndex

확장 가능한 스위치 참조 카운터를 증분할 가상 네트워크 어댑터의 인덱스를 지정하는 NDIS_SWITCH_NIC_INDEX 값입니다.

NDIS_SWITCH_NIC_INDEX 값에 대한 자세한 내용은 네트워크 어댑터 인덱스 값참조하세요.

참고 이 매개 변수는 연결된 상태에 있는 네트워크 어댑터의 인덱스 값을 지정해야 합니다. 생성되거나 연결이 끊긴 상태인 네트워크 어댑터의 인덱스 값을 지정할 수 없습니다. 네트워크 연결 상태에 대한 자세한 내용은 Hyper-V 확장 가능한 스위치 포트 및 네트워크 어댑터 상태참조하세요.
 

반환 값

호출이 성공하면 함수는 NDIS_STATUS_SUCCESS 반환합니다. 그렇지 않으면 Ndis.h에 정의된 NDIS_STATUS_Xxx 오류 코드를 반환합니다.

발언

확장 가능한 스위치 확장은 ReferenceSwitchNic 호출하여 확장 가능한 스위치 포트에 연결된 네트워크 어댑터에 대한 참조 카운터를 증가합니다. 참조 카운터에는 0이 아닌 값이 있지만 확장 가능한 스위치의 프로토콜 가장자리는 어댑터에 대한 연결을 삭제하기 위해 OID_SWITCH_NIC_DELETE OID(개체 식별자) 집합 요청을 실행하지 않습니다.

확장이 ReferenceSwitchNic호출한 후 DereferenceSwitchNic 호출하여 확장 가능한 스위치 참조 카운터를 감소시켜야 합니다.

확장은 다음 작업을 수행하기 전에 ReferenceSwitchNic 호출해야 합니다.

참고 확장은 확장 가능한 스위치 데이터 경로를 통해 패킷을 전달할 때 ReferenceSwitchNic 호출해서는 안 됩니다. 확장 가능한 스위치 인터페이스는 데이터 경로를 통해 포트 및 네트워크 어댑터 연결로 전달되는 패킷에 대한 자체 참조 카운터를 관리합니다.
 
네트워크 어댑터 연결이 상태에서 만든 네트워크 어댑터 연결에 도달한 후 ReferenceSwitchNic 호출합니다. 연결이 네트워크 어댑터 연결이 끊긴 또는 네트워크 어댑터가 상태를 삭제한 후에는 ReferenceSwitchNic 호출해서는 안 됩니다. 이러한 상태에 대한 자세한 내용은 확장 가능한 스위치 포트 및 네트워크 어댑터 상태 Hyper-V 참조하세요.
참고 확장이 referenceSwitchNic 호출할 때 OID 요청을 처리하는 코드와 호출을 동기화할 필요가 없습니다. 따라서 확장 가능한 스위치의 프로토콜 에지가 OID_SWITCH_NIC_DISCONNECTOID 요청을 발급하는 동안 확장에서 ReferenceSwitchNic 호출할 수 있습니다. 그러나 ReferenceSwitchNic 호출이 NDIS_STATUS_SUCCESS 완료되면 확장은 OID_SWITCH_NIC_DISCONNECT OID 요청을 처리한 후에도 OID_SWITCH_NIC_REQUEST OID 요청 또는 NDIS_STATUS_SWITCH_NIC_STATUS 상태 표시를 전달할 수 있습니다.
 

요구 사항

요구
지원되는 최소 클라이언트 NDIS 6.30 이상에서 지원됩니다.
대상 플랫폼 바탕 화면
헤더 ndis.h(Ndis.h 포함)
IRQL <= DISPATCH_LEVEL

참고 항목

DereferenceSwitchNic

NDIS_STATUS_SWITCH_NIC_STATUS

NdisFGetOptionalSwitchHandlers

OID_SWITCH_NIC_DELETE

OID_SWITCH_NIC_DISCONNECT

OID_SWITCH_NIC_REQUEST