다음을 통해 공유


팀 공급자 확장

확장 가능한 스위치 외부 네트워크 어댑터는 NDIS MUX(멀티플렉서) 중간 드라이버의 가상 미니포트 에지에 바인딩할 수 있습니다. MUX 중간 드라이버 자체는 호스트에 있는 하나 이상의 물리적 네트워크 팀에 바인딩될 수 있습니다. 이 구성을 확장 가능한 스위치 팀이라고 합니다. 확장 가능한 스위치 팀에 대한 자세한 내용은 물리적 네트워크 어댑터 구성 유형을 참조하세요.

이 구성에서는 확장 가능한 스위치 확장이 확장 가능한 스위치 팀의 모든 네트워크 어댑터에 노출됩니다. 이렇게 하면 확장 가능한 스위치 드라이버 스택의 전달 확장이 팀의 개별 네트워크 어댑터 구성 및 사용을 관리할 수 있습니다. 예를 들어 확장은 개별 어댑터에 나가는 패킷을 전달하여 팀을 통해 LBFO(부하 분산 장애 조치(failover) 솔루션을 지원할 수 있습니다. 이러한 확장을 팀 공급자라고 합니다.

다음 그림에서는 NDIS 6.40(Windows Server 2012 R2) 이상용 외부 네트워크 어댑터에 바인딩된 기본 확장 가능한 스위치 팀 간 패킷 트래픽에 대한 데이터 경로를 보여 줍니다.

ndis 6.40의 외부 네트워크 어댑터에 바인딩된 vswitch 팀 간 패킷 트래픽에 대한 데이터 경로입니다.

다음 그림에서는 NDIS 6.30(Windows Server 2012)의 외부 네트워크 어댑터에 바인딩된 기본 확장 가능한 스위치 팀 간 패킷 트래픽에 대한 데이터 경로를 보여 줍니다.

ndis 6.30의 외부 네트워크 어댑터에 바인딩된 vswitch 팀 간 패킷 트래픽에 대한 데이터 경로입니다.

팀 공급자는 전달 확장에서 수행할 수 있는 모든 작업을 수행할 수 있습니다. 또한 팀 공급자는 다음을 수행할 수 있습니다.

  • 확장 가능한 스위치 팀의 개별 물리적 어댑터에 나가는 패킷을 전달합니다. 이 기능은 LBFO 기능에 특히 유용합니다.

  • 확장 가능한 스위치 팀의 개별 물리적 어댑터에 표준 NDIS OID(개체 식별자) 요청을 전달합니다. 이 기능은 하드웨어 오프로드에 대한 팀의 어댑터를 구성하는 데 특히 유용합니다.

    예를 들어 MUX 드라이버는 전체 확장 가능한 스위치 팀의 공통 기능을 보급합니다. 그러나 팀 공급자는 OID 요청을 실행하여 팀 내 어댑터의 개별 기능을 쿼리할 수 있습니다. 그런 다음 팀 공급자는 확장 가능한 스위치 외부 네트워크 어댑터에 OID 요청을 실행하여 전체 팀에 적용되는 기능을 설정할 수 있습니다.

  • 확장 가능한 스위치 팀의 개별 물리적 어댑터에 프라이빗 OID 요청을 전달합니다. 이러한 프라이빗 OID 요청은 물리적 네트워크 어댑터에 대한 IHV(독립 하드웨어 공급업체)에 의해 정의됩니다. 이렇게 하면 IHV에서 개발한 팀 공급자가 팀의 개별 물리적 어댑터에서 독점 특성을 사용하거나 사용하지 않도록 설정할 수 있습니다.

  • 확장 가능한 스위치 팀의 NDIS 상태 표시를 수정합니다. 이 기능은 하드웨어 오프로드에 대한 확장 가능한 스위치 팀을 관리하는 데 특히 유용합니다.

    예를 들어 MUX 드라이버는 전체 확장 가능한 스위치 팀에 공통적인 설정으로 NDIS 상태 표시를 발급합니다. 확장 가능한 스위치 팀의 네트워크 어댑터에 대해 팀 공급자가 사용하도록 설정한 하드웨어 오프로드에 대한 상태 표시인 경우 팀 공급자는 먼저 OID 요청을 실행하여 해당 어댑터의 현재 기능을 쿼리할 수 있습니다. 그런 다음 팀 공급자는 표시 데이터를 수정하여 어댑터에서 변경되었을 수 있는 특성을 설정할 수 있습니다.

팀 공급자는 확장 가능한 스위치 팀을 관리할 때 다음 지침을 따라야 합니다.

  • 팀 공급자는 확장 가능한 스위치 네트워크 연결이 설정된 모든 물리적 네트워크 어댑터의 상태를 유지해야 합니다.

    외부 네트워크 어댑터에 바인딩된 모든 실제 네트워크 어댑터에 대해 확장 가능한 스위치의 프로토콜 에지가 별도의 OID_SWITCH_NIC_CREATE OID 집합 요청을 실행합니다. 이 OID 요청은 기본 실제 어댑터에 대한 네트워크 연결을 만드는 방법에 대해 확장에 알림합니다.

  • 실제 네트워크 어댑터에 대한 네트워크 연결을 만들면 외부 네트워크 어댑터가 연결된 포트에 고유한 0이 아닌 인덱스 값이 할당됩니다.

    팀 공급자는 패킷 또는 OID 요청을 기본 실제 네트워크 어댑터에 발급하거나 전달할 때 네트워크 어댑터 인덱스 값을 지정해야 합니다.

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

  • 팀 공급자가 패킷을 실제 어댑터에 발급하거나 전달하는 경우 실제 어댑터 연결의 0이 아닌 네트워크 어댑터 인덱스 값을 지정해야 합니다.

    공급자가 패킷을 받으면 NET_BUFFER_LIST 구조의 패킷 대역 외 전달 컨텍스트에서 원본 네트워크 어댑터 인덱스 값을 확인할 수 있습니다. 전달 컨텍스트에 대한 자세한 내용은 Hyper-V 확장 가능한 전환 전달 컨텍스트를 참조하세요.

    자세한 내용은 Hyper-V 확장 가능 스위치 데이터 경로를 참조하세요.

  • 물리적 어댑터에 OID 요청을 전달하려면 팀 공급자가 NDIS_SWITCH_NIC_OID_REQUEST 구조 내에서 OID 요청을 캡슐화해야 합니다. 공급자는 DestinationNicIndex 멤버를 실제 어댑터 연결의 0이 아닌 네트워크 어댑터 인덱스 값으로 설정해야 합니다. 그런 다음 공급자는 캡슐화된 OID 요청을 대상 실제 어댑터에 전달하기 위해 OID_SWITCH_NIC_REQUEST OID 집합 요청을 실행합니다.

    자세한 내용은 물리적 네트워크 어댑터에 대한 OID 요청 관리를 참조하세요.

  • 팀 공급자는 기본 물리적 어댑터를 대신하여 NDIS 상태 표시를 실행할 수 있습니다. 이렇게 하려면 공급자는 NDIS_SWITCH_NIC_STATUS_INDICATION 구조 내에서 표시를 캡슐화해야 합니다. 공급자는 SourceNicIndex 멤버를 실제 어댑터 연결의 0이 아닌 네트워크 어댑터 인덱스 값으로 설정해야 합니다. 그런 다음 공급자는 확장 가능한 스위치 드라이버 스택의 오버리딩 드라이버에 캡슐화된 상태 표시를 제공하기 위해 NDIS 상태 NDIS_STATUS_SWITCH_NIC_STATUS 표시합니다.

    자세한 내용은 물리적 네트워크 어댑터에서 NDIS 상태 표시 관리를 참조하세요.

확장 전달에 대한 자세한 내용은 확장 전달을 참조하세요.

MUX 드라이버에 대한 자세한 내용은 NDIS MUX 중간 드라이버를 참조하세요.