TcAddFlow 함수(traffic.h)
TcAddFlow 함수는 지정된 인터페이스에 새 흐름을 추가합니다. 흐름을 성공적으로 추가한다고 해서 반드시 트래픽이 처리되는 방식의 변화를 의미하지는 않습니다. 트래픽 처리 변경 내용은 TcAddFilter 함수를 사용하여 추가된 흐름에 필터를 연결하여 적용됩니다.
AddFlowComplete 처리기를 등록한 트래픽 제어 클라이언트(완료된 흐름 추가를 클라이언트에 경고하기 위해 트래픽 제어가 ClAddFlowComplete 콜백 함수를 호출하도록 허용하는 메커니즘)는 ERROR_SIGNAL_PENDING 반환 값을 예상할 수 있습니다. 자세한 내용은 Traffic Control 개체를 참조하세요.
구문
ULONG TcAddFlow(
[in] HANDLE IfcHandle,
[in] HANDLE ClFlowCtx,
[in] ULONG Flags,
[in] PTC_GEN_FLOW pGenericFlow,
[out] PHANDLE pFlowHandle
);
매개 변수
[in] IfcHandle
흐름을 추가할 인터페이스와 연결된 핸들입니다. 이 핸들은 TcOpenInterface 함수에 대한 이전 호출을 통해 가져옵니다.
[in] ClFlowCtx
클라이언트 제공-흐름 컨텍스트 핸들입니다. 이후에 추가된 흐름을 참조할 때 트래픽 제어에서 사용됩니다.
[in] Flags
다음에 사용하도록 예약됩니다. 0으로 설정해야 합니다.
[in] pGenericFlow
설치되는 흐름에 대한 설명에 대한 포인터입니다.
[out] pFlowHandle
트래픽 제어가 흐름 핸들을 반환할 위치에 대한 포인터입니다. 이 흐름 핸들은 설치된 흐름을 참조하기 위해 트래픽 제어에 대한 후속 호출에 사용해야 합니다.
반환 값
흐름 추가 요청이 거부될 수 있는 여러 가지 이유가 있습니다. TcAddFlow 호출에서 트래픽 제어에서 반환된 오류 코드는 거부 이유를 결정하는 데 도움이 되도록 제공됩니다.
반환 코드 | 설명 |
---|---|
|
함수가 오류 없이 실행되었습니다. |
|
함수가 비동기적으로 실행되고 있습니다. 흐름이 추가되거나 프로세스가 완료되면 클라이언트가 클라이언트 노출 ClAddFlowComplete 함수를 통해 다시 호출됩니다. |
|
인터페이스 핸들이 잘못되었습니다. |
|
시스템이 메모리가 부족합니다. |
|
매개 변수가 잘못되었습니다. |
|
지정되지 않거나 잘못된 INTSERV 서비스 유형이 제공되었습니다. |
|
지정되지 않거나 잘못된 TOKENRATE 값이 제공되었습니다. |
|
PEAKBANDWIDTH 값이 잘못되었습니다. |
|
SHAPEDISCARDMODE가 잘못되었습니다. |
|
우선 순위 값이 잘못되었습니다. |
|
트래픽 클래스 값이 잘못되었습니다. |
|
요청된 흐름을 수용하기에 충분한 리소스가 없습니다. |
|
TC 개체에 대해 잘못된 길이가 지정되었습니다. |
|
Diffserv 흐름에 적용됩니다. QOS_DIFFSERV 개체가 잘못된 매개 변수와 함께 전달되었음을 나타냅니다. |
|
Diffserv 흐름에 적용됩니다. TC_GEN_FLOW 지정된 QOS_DIFFSERV_RULE 인터페이스의 기존 흐름에 이미 적용됨을 나타냅니다. |
|
QOS_SHAPING_RATE 개체가 잘못된 ShapingRate 멤버와 함께 전달되었습니다. |
|
QOS_DS_CLASS 잘못되었습니다. |
|
네트워크 케이블이 어댑터에 연결되어 있지 않습니다. |
설명
TcAddFlow 함수가 ERROR_SIGNAL_PENDING 반환하는 경우 ClAddFlowComplete 함수는 TcAddFlow 함수를 호출한 스레드와 다른 스레드에서 호출됩니다.
필터를 추가하면 트래픽 제어에만 영향을 미칩니다. 그러나 흐름이 추가되면 트래픽 제어 구성 요소 내에서 리소스가 커밋됩니다. 이렇게 하면 트래픽 제어가 추가된 흐름에서 트래픽 처리를 준비할 수 있습니다.
트래픽 제어는 대역폭 제한으로 인해 흐름을 수용할 수 없는 경우 및 조정된 정책 요구 사항을 포함하여 다양한 이유로 흐름을 삭제할 수 있습니다. 클라이언트는 TC_NOTIFY_FLOW_CLOSE 이벤트와 함께 ClNotifyHandler 콜백 함수를 통해 삭제된 흐름에 대한 알림을 받습니다.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | traffic.h |
라이브러리 | Traffic.lib |
DLL | Traffic.dll |