TDI_PROVIDER_INFO
struct _TDI_PROVIDER_INFO {
ULONG Version;
ULONG MaxSendSize;
ULONG MaxConnectionUserData;
ULONG MaxDatagramSize;
ULONG ServiceFlags;
ULONG MinimumLookaheadData;
ULONG MaximumLookaheadData;
ULONG NumberOfResources;
LARGE_INTEGER StartTime;
} TDI_PROVIDER_INFO, *PTDI_PROVIDER_INFO;
|
TDI_PROVIDER_INFO´Â IrpSp->Parameters.QueryTypeÀÌ TDI_QUERY_PROVIDER_INFO³ª TDI_QUERY_PROVIDER_INFORMATION·Î ¼³Á¤µÈ TDI_QUERY_INFORMATION ¸®Äù½ºÆ®¿¡ ´ëÇØ¼ ¸®ÅÏµÈ ±¸Á¶Ã¼ÀÇ Á¤º¸¸¦ Á¤ÀÇÇÑ´Ù.
¸â¹ö
- Version
- TDI ¹öÀü ³Ñ¹ö¸¦ ¼¼úÇÑ´Ù. ³·Àº ¼ø¼ ¹ÙÀÌÆ®´Â ¸¶ÀÌ³Ê ¹öÀü ³Ñ¹ö¸¦ ¼¼úÇÏ°í ³ôÀº ¼ø¼ ¹ÙÀÌÆ®´Â ¸Þ´ÏÀú ¹öÀü ³Ñ¹ö¸¦ ¼¼úÇÑ´Ù. TDIÀÇ ÇöÀç ¸±¸®Áî´Â ¹öÀü ³Ñ¹ö°¡ 0x0200ÀÌ´Ù.
- MaxSendSize
- Ŭ¶óÀÌ¾ðÆ®°¡ TDI_SEND ¸®Äù½ºÆ®´ç Á¦°øÇÒ ¼ö ÀÖ´Â ÃÖ´ë ¹ÙÀÌÆ® ¼ö¸¦ ¼¼úÇÑ´Ù.
- MaxConnectionUserData
- Ŭ¶óÀÌ¾ðÆ®°¡ TDI_CONNECT, TDI_LISTEN, ȤÀº TDI_ACCEPT ¸®Äù½ºÆ®¿¡ »ç¿ëÀÚ µ¥ÀÌŸ·Î Á¦°øÇÒ ¼ö ÀÖ´Â ÃÖ´ë ¹ÙÀÌÆ® ¼ö¸¦ ¼¼úÇÑ´Ù.
- MaxDatagramSize
- Ŭ¶óÀÌ¾ðÆ®°¡ º¸³»°Å³ª ¹ÞÀ» ¼ö ÀÖ´Â µ¥ÀÌŸ±×·¥ÀÇ ÃÖ´ë ¹ÙÀÌÆ® ¼ö¸¦ ¼¼úÇÑ´Ù.
- ServiceFlags
- Æ®·£½ºÆ÷Æ®°¡ ´ÙÀ½ÀÇ Ç÷¡±× °áÇÕ(OR ¿¬»ê)À¸·Î Á¦°øÇϴ Ư¡À» ¼¼úÇÑ´Ù:
- TDI_SERVICE_CONNECTION_MODE
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ¿¬°áÁöÇà Æ®·¡ÇÈ(¿£µåÆ÷ÀÎÆ® ´ë ¿£µåÆ÷ÀÎÆ® Àü¼Û)À» Áö¿øÇÑ´Ù.
- TDI_SERVICE_CONNECTIONLESS_MODE
- ÀÌ Æ®·¡½ºÆ÷Æ®´Â ºñ¿¬°áÁöÇâ Æ®·¡ÇÈ(µ¥ÀÌŸ±×·¥ ¼Û¼ö½Å)À» Áö¿øÇÑ´Ù.
- TDI_SERVICE_BROADCAST_SUPPORTED
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ºê·Îµåij½ºÆ® µ¥ÀÌŸ±×·¥À» Áö¿øÇÑ´Ù.
- TDI_SERVICE_MULTICAST_SUPPORTED
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ¸ÖƼij½ºÆ® µ¥ÀÌŸ±×·¥À» Áö¿øÇÑ´Ù.
- TDI_SERVICE_ROUTE_DIRECTED
- ÀÌ Æ®·£½ºÆ÷Æ®´Â µ¥ÀÌŸ±×·¥ÀÌ µµ´ÞÇÒ ¼ö ¾ø´Â ¿ø°ÝÁö¿¡ µµ´ÞÇÒ ¼ö ÀÖµµ·ÏÇÏ´Â Á÷Á¢ ÆÐŶÀ» Áö¿øÇÑ´Ù.
- TDI_SERVICE_ORDERLY_RELEASE
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ÅëÁ¦µÈ ¿¬°áÇØÃ¼¸¦ Áö¿øÇÑ´Ù.
- TDI_SERVICE_DELAYED_ACCEPTANCE
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ¿ø°ÝÁö¿¡¼ Á¦°øµÈ µé¾î¿À´Â ¿¬°áÀÇ Áö¿¬µÈ ¿¬°á ½ÂÀÎÀ» Áö¿øÇÑ´Ù.
- TDI_SERVICE_EXPEDITED_DATA
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ½Å¼ÓÇÑ ¼Û¼ö½ÅÀ» Áö¿øÇÑ´Ù.
- TDI_SERVICE_INTERNAL_BUFFERING
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ³»ºÎÀûÀ¸·Î TSDU¸¦ ¹öÆÛÈÇÑ´Ù.
- TDI_SERVICE_MESSAGE_MODE
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ¸Þ¼¼Áö ¸ðµå ¼Û¼ö½ÅÀ» Áö¿øÇÑ´Ù.
- TDI_SERVICE_NO_ZERO_LENGTH
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ±æÀ̰¡ 0ÀÎ ¼Û½ÅÀ» Áö¿øÇÏÁö ¾Ê´Â´Ù.
- TDI_SERVICE_ERROR_FREE_DELIVERY
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ¿¡·¯ÀÇ ÀÚÀ¯·Î¿î Àü´ÞÀ» Áö¿øÇÑ´Ù.
- TDI_SERVICE_POINT_TO_POINT
- ÀÌ Æ®·£½ºÆ÷Æ®´Â NdisMediumWan ŸÀÔÀÇ ÇϺΠÆ÷ÀÎÆ® ´ë Æ÷ÀÎÆ® WAN NIC µå¶óÀ̹ö¿Í ¹ÙÀεùµÇ¾ú´Ù.
- TDI_SERVICE_SECURITY_LEVEL
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ¾ÈÀü Çã°¡¸¦ Áö¿øÇÑ´Ù.
- TDI_SERVICE_HALF_DUPLEX
- ÀÌ Æ®·£½ºÆ÷Æ®´Â ¿ø°ÝÁö·ÎºÎÅÍ ¿¬°áÇØÃ¼ ¸®Äù½ºÆ®¸¦ ¹ÞÀº ÈÄ¿¡ Ŭ¶óÀÌ¾ðÆ®°¡ ±×°ÍÀ» ÀνÄÇÒ ¶§±îÁö ·ÎÄÃÀÇ Å¬¶óÀÌ¾ðÆ®·Î ¸®½Ãºê¸¦ ÀεðÄÉÀÌÆ®ÇÏ´Â °ÍÀ» °è¼ÓÇÏ´Â ÅëÁ¦µÈ ¿¬°áÇØÃ¼ ¿¬»êÀ» Áö¿øÇÑ´Ù.
- TDI_SERVICE_DGRAM_CONNECTION
- ÀÌ Æ®·£½ºÆ÷Æ®´Â QoS, GPC, µîµîÀ» ´Ù·ç´Â ÀÇ»ç µ¥ÀÌŸ±×·¥ ¿¬°áÀ» Áö¿øÇÑ´Ù.
- MinimumLookaheadData
- ÀÌ Æ®·£½ºÆ÷Æ®°¡ ¸®½Ãºê¿Í ¸®½Ãºê µ¥ÀÌŸ±×·¥ À̺¥Æ®¿¡ ´ëÇØ¼ lookahead µ¥ÀÌŸ·Î ÀεðÄÉÀÌÆ®ÇÏ´Â °ÍÀ» º¸ÀåÇÏ´Â ¹ÙÀÌÆ® ¼ö»ó¿¡¼ ´õ ³·Àº Á¦ÇÑÀ» ¼¼úÇÑ´Ù.
- MaximumLookaheadData
- ÀÌ Æ®·£½ºÆ÷Æ®°¡ ¸®½Ãºê¿Í ¸®½Ãºê µ¥ÀÌŸ±×·¥ À̺¥Æ®¿¡ ´ëÇØ¼ lookahead µ¥ÀÌŸ·Î ÀεðÄÉÀÌÆ®ÇÏ´Â °ÍÀ» º¸ÀåÇÏ´Â ¹ÙÀÌÆ® ¼ö»ó¿¡¼ ´õ ³ôÀº Á¦ÇÑÀ» ¼¼úÇÑ´Ù. ¸¸¾à ÇϺÎÀÇ NIC µå¶óÀ̹ö°¡ ¸ÖƼij½ºÆ® ¸®½Ãºê ÀεðÄÉÀ̼ÇÀ» ÀÚ¿øÇÑ´Ù¸é ÀÌ °ªÀº ³×Æ®¿÷¿¡ ÀÇÇØ¼ Áö¿øµÈ ÃÖ´ë ÆÐŶ »çÀÌÁî·Î µÉ ¼ö ÀÖ´Ù.
- NumberOfResources
- Ŭ¶óÀÌ¾ðÆ®°¡ TDI_QUERY_PROVIDER_STATISTICS ŸÀÔÀÇ Äõ¸® Á¤º¸ ¸®Äù½ºÆ®¸¦ Á¦ÃâÇÑ´Ù¸é Æ®·£½ºÆ÷Æ®°¡ ¸®ÅÏÇÏ´Â TDI_PROVIDER_RESOURCE_STATS ±¸Á¶Ã¼(¸®¼Ò½º)ÀÇ ¼ö¸¦ ¼¼úÇÑ´Ù.
- StartTime
- TDI µå¶óÀ̹ö°¡ Ȱ¼ºÈµÆÀ» ¶§ ÇöÀç ½Ã½ºÅÛ ½Ã°£À» ¼¼úÇÑ´Ù.
ÁÖ¼®
ÅëÁ¦ ä³ÎÀ» ¿¬ Ä¿³Î ¸ðµå Ŭ¶óÀÌ¾ðÆ®´ÂÁö¿øµÇ´Â Ư¡°ú ÇϺΠƮ·£½ºÆ÷Æ®ÀÇ Á¦ÇÑÀ» °áÁ¤Çϱâ À§Çؼ Äõ¸®ÇÒ ¼ö ÀÖ´Ù. ±×·¯ÇÑ Å¬¶óÀÌ¾ðÆ®´Â TdiBuildQueryInformation ÇÔ¼ö¸¦ °¡Áö°í IRP¸¦ ¼³Á¤Çϰí QType TDI_QUERY_PROVIDER_INFO¿¡ Àü´ÞÇØ¼ ÀÌ Á¤º¸¸¦ ¾ò°íÀÚÇÏ´Â ÇϺÎÀÇ Æ®·£½ºÆ÷Æ®¿¡°Ô IRP¸¦ Á¦ÃâÇÑ´Ù.
TDI_PROVIDER_INFO´Â ±×·¯ÇÑ Äõ¸®¸¦ À§Çؼ ¸®Äù½ºÆ®µÈ Á¤º¸¸¦ ¸®ÅÏÇÏ´Â Æ®·£½ºÆ÷Æ®ÀÇ Æ÷¸ËÀ» Á¤ÀÇÇÑ´Ù.
¿¹¸¦µé¾î Ŭ¶óÀÌ¾ðÆ®´Â Æ®·£½ºÆ÷Æ®·ÎÀÇ ¼øÂ÷ÀûÀΠŬ¶óÀÌ¾ðÆ® ¸®Äù½ºÆ®¸¦ À§Çؼ Ŭ¶óÀÌ¾ðÆ® ÇÒ´ç ¹öÆÛÀÇ »çÀÌÁ °áÁ¤Çϱâ À§Çؼ ȤÀº Ŭ¶óÀÌ¾ðÆ®°¡ ClientEvent(Chained)Receive³ª ClientEvent(Chained)ReceiveDatagram Çڵ鷯¸¦ µî·ÏÇϱâ Àü¿¡ ÀûÀýÇÑ »çÀÌÁîÀÇ ¹öÆÛ¸¦ ÇÒ´çÇϱâ À§Çؼ XxxLookaheadData¿Í NumberOfResources ¸â¹ö¿¡ ¸®ÅÏµÈ °ªÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
|