NET_BUFFER_LIST 구조체

NET_BUFFER_LIST 구조체는 연결된 NET_BUFFER 구조체 목록을 패키지합니다.

다음 그림은 NET_BUFFER_LIST 구조체의 필드를 보여줍니다.

NET_BUFFER_LIST 구조체의 필드를 보여 주는 다이어그램

NET_BUFFER_LIST 구조체에는 NetBufferListHeader 멤버의 NET_BUFFER_LIST_HEADER 구조체가 포함됩니다. NET_BUFFER_LIST_HEADER 구조체에는 NetBufferListData 멤버의 NET_BUFFER_LIST_DATA 구조체가 포함됩니다. NDIS 매크로를 사용하여 NET_BUFFER_LIST 구조체 멤버에 액세스해야 합니다. 이러한 매크로에 대한 자세한 내용은 NET_BUFFER_LIST 구조 참조 페이지를 참조하세요.

일부 멤버는 NDIS에서만 사용됩니다. 드라이버에서 사용할 가능성이 가장 높은 멤버는 다음 목록에 정의되어 있습니다.

ParentNetBufferList
NET_BUFFER_LIST 구조체가 부모(복제, 조각화 또는 재조립)에서 파생된 자식인 경우 ParentNetBufferList 는 부모 NET_BUFFER_LIST 구조체에 대한 포인터를 지정합니다. 그렇지 않으면 이 매개 변수는 NULL입니다.

NdisPoolHandle
NET_BUFFER_LIST 구조가 할당된 NET_BUFFER_LIST 풀을 식별하는 풀 핸들을 지정합니다.

ProtocolReserved
프로토콜 드라이버에서 사용하도록 예약되었습니다.

MiniportReserved
미니포트 드라이버에서 사용하도록 예약되어 있습니다.

SourceHandle
다음 드라이버 제공 루틴 중 하나를 사용하여 바인딩 또는 연결 작업에서 NDIS가 드라이버에 제공한 핸들입니다.

미니포트 드라이버
MiniportInitializeEx

프로토콜 드라이버
ProtocolBindAdapterEx

필터 드라이버
FilterAttach

NDIS는 SourceHandle 을 사용하여 NET_BUFFER_LIST 구조를 보낸 드라이버에 NET_BUFFER_LIST 구조를 반환합니다. NDIS 드라이버는 이 핸들을 읽지 않아야 합니다.

ChildRefCount
NET_BUFFER_LIST 구조체가 부모인 경우(복제, 조각 또는 재조립 작업에서 파생된 자식이 있음) ChildRefCount는 기존 자식 수를 지정합니다. 그렇지 않으면 이 매개 변수는 0입니다.

플래그
NET_BUFFER_LIST 구조체에 대한 특성의 향후 사양을 위해 예약됩니다. 현재 드라이버에 사용할 수 있는 플래그가 없습니다.

상태
이 NET_BUFFER_LIST 구조에 대한 네트워크 데이터 작업의 최종 완료 상태 지정합니다. 미니포트 드라이버는 보내기 작업을 완료하기 전에 이 값을 작성합니다.

NetBufferListInfo
목록 의 모든 NET_BUFFER 구조체에 공통적인 NET_BUFFER_LIST 구조체 정보를 지정합니다. 이 정보를 "대역 외(OOB) 데이터"라고도 합니다.

다음
NET_BUFFER_LIST 구조체의 연결된 목록에서 다음 NET_BUFFER_LIST 구조체에 대한 포인터를 지정합니다. NET_BUFFER_LIST 구조체가 목록의 마지막 구조체인 경우 이 멤버는 NULL입니다.

FirstNetBuffer
이 NET_BUFFER_LIST 구조체와 연결된 NET_BUFFER 구조체의 연결된 목록에서 첫 번째 NET_BUFFER 구조체에 대한 포인터를 지정합니다.

참고컨텍스트NET_BUFFER_LIST_CONTEXT 구조체에 대한 포인터입니다. NDIS는 컨텍스트 에서 데이터를 조작하는 매크로 및 함수를 제공합니다. NET_BUFFER_LIST_CONTEXT 구조체에 대한 자세한 내용은 NET_BUFFER_LIST_CONTEXT 구조를 참조하세요.