ABOUT ME

Today
-
Yesterday
-
Total
-
  • NDIS filter driver
    etc/Log 2021. 3. 16. 04:26

    출처 : msdn (docs.microsoft.com/en-us/windows-hardware/drivers/network/ndis-drivers)

    ※생략, 오역, 틀린 내용 있을 가능성 농후


    NDIS

    Network Driver Interface Specification

    • NDIS 라이브러리는 네트워크 드라이버에서 네트워크 하드웨어를 추상화
    • NDIS는 계층화된 네트워크 드라이버 간의 표준 인터페이스를 지정하여 네트워크 전송과 같은 상위 레벨 드라이버에서 하드웨어를 관리하는 하위 레벨을 가능성 농후

     

    NDIS 드라이버 유형

    Miniport driver

    NDIS 라이브러리를 통해 NIC 및 상위 수준 드라이버와 통신, NDIS 계층에서 최하위에 위치

     

    기능

    • NIC를 통한 데이터 송수신 등 NIC 관리
    • 필터 드라이버, 인터미디엇 드라이버, 프로토콜 드라이버와 같은 상위 계층 드라이버와 인터페이싱

     

    Protocol driver

    NDIS 드라이버 계층 구조에서 최상위에 위치

    네트워크 프로토콜(TCP/IP)과 같은 프로토콜 스택을 실행하는 전송 계층 내 가장 낮은 계층의 드라이버 

     

    기능

    • 어플리케이션에서 전송되는 데이터를 패킷에 복사하고, NDIS 함수를 호출하여 하위 레벨의 드라이버로 전송
    • 하위 레벨에서 수신된 패킷을 받기 위해 프로토콜 인터페이스를 제공
    • 수신된 데이터를 적당한 클라이언트 어플리케이션에 제공

     

    Intermediate driver

    프로토콜 드라이버와 미니포트 드라이버 사이에서 계층화됨.

    필수적인 계층이 아니기에 개발자에 의해 추가될 수 있음

     

     

    Filter driver

    NDIS 6.0부터 도입됨

     

    기능

    • 프로토콜 드라이버와 미니포트 드라이버 간의 상호작용을 모니터링하고 수정할 수 있음
    • NDIS Intermediate Driver보다 처리 오버헤드가 적음

    Filter module은 필터 드라이버의 인스턴스, 필터 모듈은 일반적으로 미니포트 어댑터와 프로토콜 바인딩 사이에 계층화됨

     

     


    NDIS 필터 드라이버 서비스

    • 전송 요청을 시작하고 표시를 받음
    • 송수신 데이터 경로에서 데이터 버퍼 순서를 수정하거나 타이밍을 수정
    • 드라이버 스택의 전송 및 수신 데이터 경로 모두에서 네트워크 데이터 버퍼를 추가, 수정, 삭제함
    • 쿼리를 시작하고 기본 드라이버에 OID 요청을 설정
    • 쿼리를 필터링하고 기본 드라이버에 대한 OID 요청을 설정
    • 기본 드라이버의 OID 요청 응답을 필터링
    • 상위 드라이버에게 상태 표시를 발생시킴
    • 하위 드라이버에서의 상태 표시를 필터링
    • 접속하는 각 미니포트 어댑터의 레지스트리에서 구성 매개변수를 관리함

     

    'etc > Log' 카테고리의 다른 글

    마이크로소프트 오픈소스에 기여하다?  (0) 2023.02.10
    Filter driver에서 데이터 송신  (0) 2021.03.16
    Network Data Structure  (0) 2021.02.16
    인턴일지 - NDIS filter driver  (0) 2021.02.16

    댓글

Designed by nanometre380.