네트워크 어댑터 성능 조정
이 토픽의 정보를 통해 Windows Server 2016 이상 버전을 실행하는 컴퓨터의 성능 네트워크 어댑터를 튜닝합니다. 네트워크 어댑터에서 튜닝 옵션을 제공하는 경우 이러한 옵션을 사용하여 네트워크 처리량 및 리소스 사용을 최적화할 수 있습니다.
네트워크 어댑터에 대한 올바른 튜닝 설정은 다음 변수에 따라 결정됩니다.
- 네트워크 어댑터와 해당 기능 집합
- 서버에서 수행하는 워크로드의 유형
- 서버 하드웨어 및 소프트웨어 리소스
- 서버에 대한 성능 목표
다음 섹션에서는 성능 조정 옵션 중 일부에 대해 설명합니다.
오프로드 기능 활성화
일반적으로 네트워크 어댑터 오프로드 기능을 설정하는 것이 좋습니다. 하지만, 네트워크 어댑터가 높은 처리량을 가진 오프로드 기능을 처리할 수 있을 만큼 강력하지 않은 경우가 있습니다.
Important
오프로드 기능 IPsec 작업 오프로드 또는 TCP Chimney 오프로드를 사용하지 마세요. 이러한 기술은 Windows Server 2016에서 더 이상 사용되지 않으며 서버 및 네트워킹 성능에 부정적인 영향을 줄 수 있습니다. 또한 이러한 기술은 향후 Microsoft에서 지원하지 않을 수 있습니다.
예를 들어, 제한된 하드웨어 리소스를 가진 네트워크 어댑터를 고려하세요. 이 경우 분할 오프로드 기능 활성화를 설정하면 어댑터의 지속 가능한 최대 처리량을 줄일 수 있습니다. 그러나 감소된 처리량이 허용될 경우, 분할 오프로드 기능을 사용하도록 설정해야 합니다.
참고 항목
일부 네트워크 어댑터에서는 전송 경로와 수신 경로에 독립적인 오프로드 기능을 활성화해야 합니다.
웹 서버에 수신측 크기 조정 (RSS) 활성화
네트워크 어댑터 수가 서버의 논리 프로세서보다 적은 경우 RSS를 통해 웹 확장성과 성능을 개선할 수 있습니다. 모든 웹 트래픽이 RSS 지원 네트워크 어댑터를 통과하는 경우, 서버는 다양한 연결에서 들어오는 웹 요청을 여러 CPU를 걸쳐 동시에 처리할 수 있습니다.
Important
동일한 서버에서 RSS가 아닌 네트워크 어댑터와 RSS 지원 네트워크 어댑터를 모두 사용하지 않습니다. RSS 및 하이퍼텍스트 전송 프로토콜 (HTTP)의 부하 분산 논리로 인해 RSS 지원 네트워크 어댑터가 하나 이상의 RSS 지원 네트워크 어댑터가 있는 서버에서 웹 트래픽을 허용하는 경우 성능이 심각하게 저하될 수 있습니다. 이 경우 RSS 지원 네트워크 어댑터를 사용하거나 네트워크 어댑터 속성 고급 속성 탭에서 RSS를 사용하지 않도록 설정해야 합니다.
네트워크 어댑터가 RSS 지원인지 여부를 확인하려면 네트워크 어댑터 속성 고급 속성 탭에서 RSS 정보를 볼 수 있습니다.
RSS 프로필 및 RSS 큐
기본 RSS 미리 정의된 프로필은 이전 버전의 Windows에서 사용한 기본값과 다른 NUMAStatic입니다. RSS 프로필을 사용하기 전에, 사용 가능한 프로필을 검토하여 RSS 프로필이 유용한 경우 및 네트워크 환경과 하드웨어에 RSS 프로필을 적용하는 방법을 이해해야 합니다.
예를 들어 작업 관리자를 열고 서버에서 논리 프로세서를 검토한 결과, 수신 트래픽에 미달 사용되는 것처럼 보이는 경우 RSS 큐 개수를 기본값 2개에서 해당 네트워크 어댑터가 지원하는 최대값으로 늘릴 수 있습니다. 네트워크 어댑터에서 드라이버의 일부로 RSS 큐 수를 변경하는 옵션을 제공할 수 있습니다.
네트워크 어댑터 리소스 늘리기
수신 및 전송 버퍼 등의 리소스 직접 구성을 허용하는 네트워크 어댑터의 경우 할당된 리소스를 늘려야 합니다.
일부 네트워크 어댑터는 호스트에서 할당되는 메모리를 절약하기 위해 수신 버퍼를 낮게 설정합니다. 이러한 값이 낮으면 패킷이 손실되고 성능이 저하될 수 있습니다. 따라서 수신 작업이 많은 시나리오에서는 수신 버퍼 값을 최대값으로 늘리는 것이 좋습니다.
참고 항목
네트워크 어댑터에 수동 리소스 구성이 표시되지 않으면, 네트워크 어댑터가 동적으로 리소스를 구성하거나 리소스가 변경할 수 없는 고정 값으로 설정된 것입니다.
인터럽트 조절 활성화
일부 네트워크 어댑터는 인터럽트 조절을 제어할 수 있도록 여러 가지 인터럽트 조절 수준, 서로 다른 버퍼 통합 매개 변수(전송 버퍼와 수신 버퍼에 별도로 제공될 수도 있음) 또는 둘 다를 제공합니다.
CPU 바인딩된 워크로드에 대한 인터럽트 조정을 고려해야 합니다. 인터럽트 조정을 사용하는 경우 호스트 CPU 절약 및 대기 시간과 인터럽트 수가 많고 대기 시간이 짧기 때문에 호스트 CPU 절약이 증가하는 것 간의 균형을 고려하십시오. 네트워크 어댑터가 인터럽트 조절을 수행하지 않지만 버퍼 통합을 제공하는 경우, 통합된 버퍼 개수를 늘리면 전송 또는 수신당 버퍼 수가 증가하므로 성능이 향상됩니다.
짧은 대기 시간 패킷 처리를 위한 성능 튜닝
대부분의 네트워크 어댑터는 운영 체제에서 발생하는 대기 시간을 최적화할 수 있는 옵션을 제공합니다. 대기 시간은 네트워크 드라이버에서 들어오는 패킷을 처리하여 다시 보낼 때까지 소요되는 시간입니다. 이 시간은 일반적으로 마이크로초 단위로 측정됩니다. 비교를 위해 장거리 패킷 전송의 전송 시간은 일반적으로 밀리초(크기가 더 큰 순서)로 측정됩니다. 이러한 조정은 전송 중에 패킷에서 소요되는 시간을 단축하지 않습니다.
다음은 마이크로초가 중요한 네트워크에 대한 몇 가지 성능 조정 제안 사항입니다.
컴퓨터 BIOS를 고성능으로 설정하고 C 상태를 사용하지 않도록 설정합니다. 그러나 이는 시스템 및 BIOS에 종속되므로 일부 시스템은 운영 체제에서 전원 관리를 제어하는 경우 더 높은 성능을 제공합니다. 설정 에서 또는 powercfg 명령을 사용하여 전원 관리 설정을 확인하고 조정할 수 있습니다. 자세한 내용은 Powercfg 명령줄 옵션을 참조하세요.
운영 체제 전원 관리 프로필을 고성능 시스템으로 설정하세요.
참고 항목
이 설정은 시스템 BIOS가 운영 체제에서 전원 관리를 제어하지 못하도록 설정한 경우에는 제대로 작동하지 않습니다.
정적 오프로드 활성화. 예를 들어, UDP 체크섬, TCP 체크섬 및 Send Large Offload (LSO)를 활성화하세요.
트래픽이 대용량 멀티캐스트 수신과 같이 다중 스트리밍되는 경우 RSS를 활성화하세요.
가능한 대기 시간이 가장 낮은 네트워크 카드 드라이버에 대해 인터럽트 조정 설정을 비활성화하세요. 이 구성은 더 많은 CPU 시간을 사용할 수 있으므로 이는 상충 관계를 의미한다는 점을 유념하세요.
패킷을 처리하는 프로그램(사용자 스레드)에서 사용 중인 코어와 CPU 캐시를 공유하는 코어 프로세서에서 네트워크 어댑터 인터럽트 및 DPC를 처리합니다. CPU 선호도 조정을 사용하여 RSS 구성과 함께 프로세스를 특정 논리 프로세서로 전달하여 이를 실현할 수 있습니다. 인터럽트, DPC 및 사용자 모드 스레드에 동일한 코어를 사용하면 ISR, DPC 및 스레드가 코어 사용을 경합하기 때문에 로드가 증가하여 성능이 저하됩니다.
시스템 관리 인터럽트
많은 하드웨어 시스템에서는 오류 수정 코드 (ECC) 메모리 오류 보고, 레거시 USB 호환성 유지 관리, 팬 제어 및 BIOS 제어 전원 설정 관리와 같은 다양한 유지 관리 기능에 시스템 관리 인터럽트 (SMI)를 사용합니다.
SMI는 시스템에서 우선 순위가 가장 높은 인터럽트이며 CPU를 관리 모드에 배치합니다. 이 모드는 SMI가 일반적으로 BIOS에 포함된 인터럽트 서비스 루틴을 실행하는 동안 다른 모든 작업을 선점합니다.
하지만 이 동작은 최대 대기 시간이 100 마이크로 초 이상이 될 수 있습니다.
가장 짧은 대기 시간이 필요한 경우 하드웨어 공급자에게 SMI를 가능한 한 최저 수준으로 낮추는 BIOS 버전을 요청해야 합니다. 이러한 BIOS 버전은 종종 "짧은 대기 시간 BIOS" 또는 "SMI 무료 BIOS"라고 합니다. 경우에 따라 하드웨어 플랫폼이 필수 기능(예: 냉각 팬)을 제어하는 데 사용되기 때문에 SMI 활동을 완전히 제거할 수 없습니다.
참고 항목
논리 프로세서가 특수 유지 관리 모드로 실행되어 운영 체제 개입을 차단하므로 운영 체제는 SMI를 제어할 수 없습니다.
TCP 성능 튜닝
다음 항목을 사용하여 TCP 성능을 튜닝할 수 있습니다.
TCP 수신 창 자동 튜닝
Windows Vista, Windows Server 2008 이상 버전의 Windows에서 Windows 네트워크 스택은 TCP 수신 창 자동 튜닝 수준 이라는 기능을 사용하여 TCP 수신 창 크기를 협상합니다. 이 기능은 TCP 핸드셰이크 중에 모든 TCP 통신에 대해 정의된 수신 창 크기를 협상할 수 있습니다.
이전 버전의 Windows에서 Windows 네트워크 스택은 연결에 대한 전체 잠재적 처리량을 제한하는 고정 크기 수신 창(65,535바이트)을 사용했습니다. TCP 연결의 달성 가능한 총 처리량은 네트워크 사용 시나리오를 제한할 수 있습니다. TCP 수신 창 자동 튜닝을 사용하면 이러한 시나리오에서 네트워크를 완전히 사용할 수 있습니다.
특정 크기가 있는 TCP 수신 창의 경우 다음 수식을 사용하여 단일 연결의 총 처리량을 계산할 수 있습니다.
달성 가능한 총 바이트 처리량 = TCP 수신 창 바이트 크기 * (1 / 연결 대기 시간(초))
예를 들어 대기 시간이 10ms인 연결의 경우 달성 가능한 총 처리량은 51Mbps에 불과합니다. 이 값은 대규모 회사 네트워크 인프라에 적합합니다. 그러나 자동 튜닝을 사용하여 수신 창을 조정하면 연결이 1Gbps 연결의 전체 줄 속도를 달성할 수 있습니다.
일부 애플리케이션은 TCP 수신 창의 크기를 정의합니다. 애플리케이션이 수신 창 크기를 정의하지 않으면 링크 속도에 따라 크기가 다음과 같이 결정됩니다.
- 초당 1메가비트 미만(Mbps): 8KB(KB)
- 1Mbps~100Mbps: 17 KB
- 초당 100Mbps~10기가비트(Gbps): 64KB
- 10Gbps 이상: 128KB
예를 들어 1Gbps 네트워크 어댑터가 설치된 컴퓨터에서 창 크기는 64KB여야 합니다.
또한 이 기능은 네트워크 성능을 향상시키기 위해 다른 기능을 최대한 활용합니다. 이러한 기능에는 RFC 1323에 정의된 나머지 TCP 옵션이 포함됩니다. 이러한 기능을 사용하여 Windows 기반 컴퓨터는 구성에 따라 더 작지만 정의된 값으로 크기가 조정되는 TCP 수신 창 크기를 협상할 수 있습니다. 이 동작은 네트워킹 디바이스에 대해 더 쉽게 처리할 수 있는 크기입니다.
참고 항목
RFC 1323 에 정의된 대로 네트워크 디바이스가 TCP 창 크기 옵션을 준수하지 않아 배율 인수를 지원하지 않는 문제가 발생할 수 있습니다. 이러한 경우 이 KB 934430을 참조하세요. 방화벽 디바이스 뒤에서 Windows Vista를 사용하거나 네트워크 디바이스 공급업체의 지원 팀에 문의하려고 하면 네트워크 연결이 실패합니다.
TCP 수신 창 자동 튜닝 수준 검토 및 구성
netsh 명령 또는 Windows PowerShell cmdlet을 사용하여 TCP 수신 창 자동 조정 수준을 검토하거나 수정할 수 있습니다.
참고 항목
Windows 10 또는 Windows Server 2019 이전 버전의 Windows 버전과 달리 더 이상 레지스트리를 사용하여 TCP 수신 창 크기를 구성할 수 없습니다. 사용되지 않는 설정에 대한 자세한 내용은 사용되지 않는 TCP 매개 변수를 참조 하세요.
참고 항목
사용 가능한 자동 조정 수준에 대한 자세한 내용은 자동 튜닝 수준을 참조 하세요.
netsh를 사용하여 자동 튜닝 수준을 검토하거나 수정하려면
현재 설정을 검토하려면 명령 프롬프트 창을 열고 다음 명령을 실행합니다.
netsh interface tcp show global
이 명령의 출력은 다음과 유사해야 합니다.
Querying active state...
TCP Global Parameters
-----
Receive-Side Scaling State : enabled
Chimney Offload State : disabled
Receive Window Auto-Tuning Level : normal
Add-On Congestion Control Provider : default
ECN Capability : disabled
RFC 1323 Timestamps : disabled
Initial RTO : 3000
Receive Segment Coalescing State : enabled
Non Sack Rtt Resiliency : disabled
Max SYN Retransmissions : 2
Fast Open : enabled
Fast Open Fallback : enabled
Pacing Profile : off
설정을 수정하려면, 명령 프롬프트에서 다음 명령을 실행합니다.
netsh interface tcp set global autotuninglevel=<Value>
참고 항목
앞의 명령 에서, <값> 은 자동 튜닝 수준에 대한 새 값을 나타냅니다.
이 명령에 대한 자세한 내용은 인터페이스 전송 제어 프로토콜에 대한 Netsh 명령을 참조 하세요.
Powershell를 사용하여 자동 튜닝 수준을 검토하거나 수정하려면
현재 설정을 검토하려면 PowerShell 창을 열고 다음 cmdlet을 실행합니다.
Get-NetTCPSetting | Select SettingName,AutoTuningLevelLocal
이 cmdlet의 출력은 다음과 유사해야 합니다.
SettingName AutoTuningLevelLocal
----------- --------------------
Automatic
InternetCustom Normal
DatacenterCustom Normal
Compat Normal
Datacenter Normal
Internet Normal
설정을 수정하려면 PowerShell 명령 프롬프트에서 다음 cmdlet를 실행하세요.
Set-NetTCPSetting -AutoTuningLevelLocal <Value>
참고 항목
앞의 명령 에서, <값> 은 자동 튜닝 수준에 대한 새 값을 나타냅니다.
cmdlets에 대한 자세한 내용은 다음 문서를 참조하세요.
자동 튜닝 수준
수신 창 자동 조정을 5개 수준 중 한 수준으로 설정할 수 있습니다. 기본 수준은 Normal입니다. 다음 테이블은 수준에 대해 설명합니다.
수준 | 16 진수 값 | 설명 |
---|---|---|
Normal (기본값) | 0x8 (8 배율) | 거의 모든 시나리오를 수용하도록 TCP 수신 창을 확장하도록 설정합니다. |
사용 안 함 | 사용할 수 있는 배율 인수 없음 | TCP 수신 창을 기본값으로 설정합니다. |
Restricted | 0x4 (4 배율) | TCP 수신 창이 기본값을 초과하도록 설정하지만 일부 시나리오에서는 이러한 증가를 제한합니다. |
매우 제한적 | 0x2 (2 배율) | TCP 수신 창이 기본값을 초과하도록 설정하지만 매우 보수적입니다. |
Experimental | 0xE (14 배율) | 극단적인 시나리오를 수용하도록 TCP 수신 창을 확장하도록 설정합니다. |
애플리케이션을 사용하여 네트워크 패킷을 캡처하는 경우 애플리케이션은 다른 창 자동 튜닝 수준 설정에 대해 다음과 유사한 데이터를 보고해야 합니다.
자동 튜닝 수준: Normal (기본 상태)
Frame: Number = 492, Captured Frame Length = 66, MediaType = ETHERNET + Ethernet: Etype = Internet IP (IPv4),DestinationAddress:[D8-FE-E3-65-F3-FD],SourceAddress:[C8-5B-76-7D-FA-7F] + Ipv4: Src = 192.169.0.5, Dest = 192.169.0.4, Next Protocol = TCP, Packet ID = 2667, Total IP Length = 52 - Tcp: [Bad CheckSum]Flags=......S., SrcPort=60975, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=4075590425, Ack=0, Win=64240 ( Negotiating scale factor 0x8 ) = 64240 SrcPort: 60975 DstPort: Microsoft-DS(445) SequenceNumber: 4075590425 (0xF2EC9319) AcknowledgementNumber: 0 (0x0) + DataOffset: 128 (0x80) + Flags: ......S. ---------------------------------------------------------> SYN Flag set Window: 64240 ( Negotiating scale factor 0x8 ) = 64240 ---------> TCP Receive Window set as 64K as per NIC Link bitrate. Note it shows the 0x8 Scale Factor. Checksum: 0x8182, Bad UrgentPointer: 0 (0x0) - TCPOptions: + MaxSegmentSize: 1 + NoOption: + WindowsScaleFactor: ShiftCount: 8 -----------------------------> Scale factor, defined by AutoTuningLevel + NoOption: + NoOption: + SACKPermitted:
자동 튜닝 수준: 비활성화
Frame: Number = 353, Captured Frame Length = 62, MediaType = ETHERNET + Ethernet: Etype = Internet IP (IPv4),DestinationAddress:[D8-FE-E3-65-F3-FD],SourceAddress:[C8-5B-76-7D-FA-7F] + Ipv4: Src = 192.169.0.5, Dest = 192.169.0.4, Next Protocol = TCP, Packet ID = 2576, Total IP Length = 48 - Tcp: [Bad CheckSum]Flags=......S., SrcPort=60956, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=2315885330, Ack=0, Win=64240 ( ) = 64240 SrcPort: 60956 DstPort: Microsoft-DS(445) SequenceNumber: 2315885330 (0x8A099B12) AcknowledgementNumber: 0 (0x0) + DataOffset: 112 (0x70) + Flags: ......S. ---------------------------------------------------------> SYN Flag set Window: 64240 ( ) = 64240 ----------------------------------------> TCP Receive Window set as 64K as per NIC Link bitrate. Note there is no Scale Factor defined. In this case, Scale factor is not being sent as a TCP Option, so it will not be used by Windows. Checksum: 0x817E, Bad UrgentPointer: 0 (0x0) - TCPOptions: + MaxSegmentSize: 1 + NoOption: + NoOption: + SACKPermitted:
자동 튜닝 수준: 제한
Frame: Number = 3, Captured Frame Length = 66, MediaType = ETHERNET + Ethernet: Etype = Internet IP (IPv4),DestinationAddress:[D8-FE-E3-65-F3-FD],SourceAddress:[C8-5B-76-7D-FA-7F] + Ipv4: Src = 192.169.0.5, Dest = 192.169.0.4, Next Protocol = TCP, Packet ID = 2319, Total IP Length = 52 - Tcp: [Bad CheckSum]Flags=......S., SrcPort=60890, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=1966088568, Ack=0, Win=64240 ( Negotiating scale factor 0x4 ) = 64240 SrcPort: 60890 DstPort: Microsoft-DS(445) SequenceNumber: 1966088568 (0x75302178) AcknowledgementNumber: 0 (0x0) + DataOffset: 128 (0x80) + Flags: ......S. ---------------------------------------------------------> SYN Flag set Window: 64240 ( Negotiating scale factor 0x4 ) = 64240 ---------> TCP Receive Window set as 64K as per NIC Link bitrate. Note it shows the 0x4 Scale Factor. Checksum: 0x8182, Bad UrgentPointer: 0 (0x0) - TCPOptions: + MaxSegmentSize: 1 + NoOption: + WindowsScaleFactor: ShiftCount: 4 -------------------------------> Scale factor, defined by AutoTuningLevel. + NoOption: + NoOption: + SACKPermitted:
자동 튜닝 수준: 매우 제한
Frame: Number = 115, Captured Frame Length = 66, MediaType = ETHERNET + Ethernet: Etype = Internet IP (IPv4),DestinationAddress:[D8-FE-E3-65-F3-FD],SourceAddress:[C8-5B-76-7D-FA-7F] + Ipv4: Src = 192.169.0.5, Dest = 192.169.0.4, Next Protocol = TCP, Packet ID = 2388, Total IP Length = 52 - Tcp: [Bad CheckSum]Flags=......S., SrcPort=60903, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=1463725706, Ack=0, Win=64240 ( Negotiating scale factor 0x2 ) = 64240 SrcPort: 60903 DstPort: Microsoft-DS(445) SequenceNumber: 1463725706 (0x573EAE8A) AcknowledgementNumber: 0 (0x0) + DataOffset: 128 (0x80) + Flags: ......S. ---------------------------------------------------------> SYN Flag set Window: 64240 ( Negotiating scale factor 0x2 ) = 64240 ---------> TCP Receive Window set as 64K as per NIC Link bitrate. Note it shows the 0x2 Scale Factor. Checksum: 0x8182, Bad UrgentPointer: 0 (0x0) - TCPOptions: + MaxSegmentSize: 1 + NoOption: + WindowsScaleFactor: ShiftCount: 2 ------------------------------> Scale factor, defined by AutoTuningLevel + NoOption: + NoOption: + SACKPermitted:
자동 튜닝 수준: 실험적
Frame: Number = 238, Captured Frame Length = 66, MediaType = ETHERNET + Ethernet: Etype = Internet IP (IPv4),DestinationAddress:[D8-FE-E3-65-F3-FD],SourceAddress:[C8-5B-76-7D-FA-7F] + Ipv4: Src = 192.169.0.5, Dest = 192.169.0.4, Next Protocol = TCP, Packet ID = 2490, Total IP Length = 52 - Tcp: [Bad CheckSum]Flags=......S., SrcPort=60933, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=2095111365, Ack=0, Win=64240 ( Negotiating scale factor 0xe ) = 64240 SrcPort: 60933 DstPort: Microsoft-DS(445) SequenceNumber: 2095111365 (0x7CE0DCC5) AcknowledgementNumber: 0 (0x0) + DataOffset: 128 (0x80) + Flags: ......S. ---------------------------------------------------------> SYN Flag set Window: 64240 ( Negotiating scale factor 0xe ) = 64240 ---------> TCP Receive Window set as 64K as per NIC Link bitrate. Note it shows the 0xe Scale Factor. Checksum: 0x8182, Bad UrgentPointer: 0 (0x0) - TCPOptions: + MaxSegmentSize: 1 + NoOption: + WindowsScaleFactor: ShiftCount: 14 -----------------------------> Scale factor, defined by AutoTuningLevel + NoOption: + NoOption: + SACKPermitted:
사용되지 않는 TCP 매개 변수
Windows Server 2003의 다음 레지스트리 설정은 더 이상 지원되지 않으며 이후 버전에서는 무시됩니다.
- TcpWindowSize
- NumTcbTablePartitions
- MaxHashTableSize
이러한 모든 설정은 다음 레지스트리 하위 키에 있습니다.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters
Windows 필터링 플랫폼
Windows Vista 및 Windows Server 2008에는 Windows Filtering Platform (WFP)가 도입되었습니다. WFP는 패킷 처리 필터를 만들기 위해 타사 독립 소프트웨어 공급업체 (ISVs)에 API를 제공합니다. 예를 들어 방화벽 및 바이러스 백신 소프트웨어가 여기에 해당합니다.
참고 항목
WFP 필터를 잘못 작성하면 서버의 네트워킹 성능을 크게 저하시킬 수 있습니다. 자세한 내용은 Windows 개발자 센터의 패킷 처리 드라이버 및 앱을 WFP로 포팅 을 참조하세요.
본 가이드의 모든 항목에 대한 링크는, 네트워크 하위 시스템 성능 튜닝을 참조 하세요.