NDIS_TASK_IPSEC
typedef struct _NDIS_TASK_IPSEC
{
struct
{
ULONG AH_ESP_COMBINED:1;
ULONG TRANSPORT_TUNNEL_COMBINED:1;
ULONG V4_OPTIONS:1;
ULONG RESERVED:1;
} Supported;
struct
{
ULONG MD5:1;
ULONG SHA_1:1;
ULONG Transport:1;
ULONG Tunnel:1;
ULONG Send:1;
ULONG Receive:1;
} V4AH;
struct
{
ULONG DES:1;
ULONG RESERVED:1;
ULONG TRIPLE_DES:1;
ULONG NULL_ESP:1;
ULONG Transport:1;
ULONG Tunnel:1;
ULONG Send:1;
ULONG Receive:1;
} V4ESP;
} NDIS_TASK_IPSEC, *PNDIS_TASK_IPSEC;
|
OID_TCP_TASK_OFFLOADÀÇ Äõ¸®¿¡ ´ëÇÑ ÀÀ´äÀ¸·Î ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ Á¦°øµÉ ¶§, NDIS_TASK_IPSEC ±¸Á¶Ã¼´Â ÆÐŶ¿¡ ´ëÇÑ IP Security ŽºÅ©µéÀ» ÇàÇÏ´Â ¹Ì´ÏÆ÷Æ®ÀÇ NICÀÇ ´É·ÂÀ» ÁöÁ¤ÇÑ´Ù. OID_TCP_TASK_OFFLOADÀÇ ¼··¿¡¼ ¹Ì´ÏÆ÷Æ®¿¡ Àü´ÞµÉ ¶§, ±¸Á¶Ã¼´Â TCP/IP Àü¼Û °èÃþÀÌ NICÀ» À§ÇØ °¡´ÉÇÏ°Ô ÇÏ´Â IP Security ´É·ÂµéÀ» ÁöÁ¤ÇÑ´Ù.
¸â¹ö
- AH_ESP_COMBINDED
- NICÀº º¸³»±â¿¡¼ IP Security¿¡¼ ÇàÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°°í ÀÎÁõÇì´õ(Authentication header(AH) º¸¾È payload¿Í ĸ½¶ÈÇÑ º¸¾È payload(ESP)µéÀ» Æ÷ÇÔÇÏ´Â ÆÐŶµéÀ» ¼ö½ÅÇÏ´Â °ÍÀ» °¡¸®Å°´Â ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- TRANSPORT_TUNNEL_COMBINDED
- NICÀº º¸³»±â ¹Þ±â ÆÐŶµéÀÇ Àü¼Û ¸ðµå ºÎºÐ°ú ÅͳΠ¸ðµå ºÎºÐÀ» À§ÇÑ security payload¸¦ ó¸®ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. (ÆÐŶÀÇ Àü¼Û ¸ðµå ºÎºÐÀº end-to-end ¿¬°á¿¡ ¼ÓÇÑ´Ù. ÆÐŶÀÇ ÅͳΠ¸ðµå ºÎºÐÀº ÅͳΠ¿¬°á¿¡ ¼ÓÇÑ´Ù.) ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- V4_OPTIONS
- NICÀÌ IP Çì´õ°¡ IP ¿É¼ÇµéÀ» Æ÷ÇÔÇÏ´Â IPv4 ¼Û½Å ±×¸®°í ¼ö½Å ÆÐŶµé¿¡ ´ëÇÑ IP º¸¾È ¿¬»êµéÀ» ÇàÇÒ ¼ö ÀÖ´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- RESERVED
- À̰ÍÀº ¿¹¾àµÇ¾ú´Ù.
- V4AH
- MD5
- NICÀÌ AH payload¿Í(ȤÀº) ESP payload¸¦ À§ÇÑ ¾ÏÈ£È Ã¼Å©¼¶À» °è»êÇϰí(°Å³ª) À¯È¿ÈÇϱâ À§ÇØ Å°ÈµÈ MD5 ¾Ë°í¸®ÁòÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- SHA_1
- NICÀÌ AH payload¿Í(ȤÀº) ESP payload¸¦ À§ÇÑ ¾ÏÈ£È Ã¼Å©¼¶À» °è»êÇϰí(°Å³ª) À¯È¿ÈÇϱâ À§ÇØ SHA 1 ¾Ë°í¸®ÁòÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- Transport
- end-to-end ¿¬°á¿¡ ¼ÓÇÑ ÆÐŶÀÇ ºÎºÐÀ» À§ÇØ NICÀº ¾ÏÈ£È Ã¼Å©¼¶À» °è»êÇÒ ¼ö ÀÖ°í À¯È¿È¸¦ °Ë»çÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ ¼³Á¤µÈ´Ù.
- Tunnel
- ÅͳΠ¿¬°á¿¡ ¼ÓÇÑ ÆÐŶÀÇ ºÎºÐÀ» À§ÇØ NICÀº ¾ÏÈ£È Ã¼Å©¼¶À» °è»êÇÒ ¼ö ÀÖ°í À¯È¿È¸¦ °Ë»çÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ ¼³Á¤µÈ´Ù.
- Send
- º¸³»±â ÆÐŶµéÀ» À§ÇØ NICÀÌ ¾ÏÈ£È Ã¼Å©¼¶À» °è»êÇÒ ¼ö ÀÖ°í À¯È¿È¸¦ °Ë»çÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- Receive
- ¼ö½Å ÆÐŶµéÀ» À§ÇØ NICÀÌ ¾ÏÈ£È Ã¼Å©¼¶À» °è»êÇÒ ¼ö ÀÖ°í À¯È¿È¸¦ °Ë»çÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- V4ESP
- DES
- ESP payloadµéÀ» ¾ÏÈ£ÈÇÏ°í ¾ÏÈ£È ÇØÁ¦Çϱâ À§ÇØ NICÀÌ DES ¾Ë°í¸®ÁòÀ» Áö¿øÇÑ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- RESERVED
- À̰ÍÀº ¿¹¾àµÇ¾ú´Ù.
- TRIPLE_DES
- ESP payload¸¦ ¾ÏÈ£ÈÇÏ°í ¾ÏÈ£È ÇØÁ¦Çϱâ À§ÇØ triple-DES ¾Ë°í¸®ÁòÀ» NICÀÌ Áö¿øÇÑ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- NULL_ESP
- NICÀº authentication Á¤º¸Áö¸¸ ¾ÏÈ£È ¾øÀÌ ESP payloadÀÎ null ¾Ïȣȸ¦ Áö¿øÇÏ´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- Transport
- NICÀÌ end-to-end ¿¬°á¿¡ ¼ÓÇÑ ÆÐŶÀÇ ºÎºÐÀ» À§ÇÑ ESP µ¥ÀÌÅ͸¦ ¾ÏÈ£ÈÇÒ ¼ö ÀÖ°í ¾ÏÈ£È ÇØÁ¦ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- Tunnel
- NICÀÌ ÅͳΠ¿¬°á¿¡ ¼ÓÇÑ ÆÐŶÀÇ ºÎºÐÀ» À§ÇÑ ESP µ¥ÀÌÅ͸¦ ¾ÏÈ£ÈÇÒ ¼ö ÀÖ°í ¾ÏÈ£È ÇØÁ¦ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- Send
- NICÀÌ º¸³»±â ÆÐŶµé¿¡¼ ESP payloadµéÀ» ¾ÏÈ£ÈÇÒ ¼ö ÀÖ°í ¾ÏÈ£È ÇØÁ¦ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
- Receive
- NICÀÌ ¼ö½Å ÆÐŶµé¿¡¼ ESP payloadµéÀ» ¾ÏÈ£ÈÇÒ ¼ö ÀÖ°í ¾ÏÈ£È ÇØÁ¦ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» °¡¸®Å°±â À§ÇØ ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇØ TCP/IP Àü¼Û °èÃþ¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù.
ÁÖ¼®
OID_TCP_TASK_OFFLOADÀÇ Äõ¸®¿¡ ´ëÇÑ ÀÀ´äÀ¸·Î, ¹Ì´ÏÆ÷Æ®´Â Çϳª ȤÀº ±× ÀÌ»óÀÇ NDIS_TASK_OFFLOAD ±¸Á¶Ã¼µé Àü¿¡ NDIS_TASK_OFFLOAD_HEADER ±¸Á¶Ã¼·Î InformationBuffer¿¡ ¸®ÅÏÇÑ´Ù. °¢ NDIS_TASK_OFFLOAD ±¸Á¶Ã¼´Â ¹Ì´ÏÆ÷Æ®ÀÇ NIC¿¡ ÀÇÇØ Áö¿øµÈ task-offload ´É·ÂÀ» ÁöÁ¤ÇÑ´Ù.
NDIS_TASK_OFFLOAD ±¸Á¶Ã¼ÀÇ Task ¸â¹ö°¡ IpSecNdisTask¸¦ ÁöÁ¤ÇÒ ¶§, NDIS_TASK_OFFLOAD ±¸Á¶Ã¼ÀÇ TaskBuffer´Â NDIS_TASK_IPSEC ±¸Á¶Ã¼¸¦ Æ÷ÇÔÇÑ´Ù. NDIS_TASK_IPSEC ±¸Á¶Ã¼°¡ OID_TCP_TASK_OFFLOADÀÇ TCP/IP Àü¼Û °èÃþÀÇ Äõ¸®¿¡ ´ëÇÑ ÀÀ´äÀ¸·Î ¹Ì´ÏÆ÷Æ®¿¡ ÀÇÇØ ä¿öÁú ¶§, ÆÐŶµé¿¡¼ IP Security ŽºÅ©µéÀ» ÇàÇϱâ À§ÇÑ ¹Ì´ÏÆ÷Æ®ÀÇ NICÀÇ ´É·ÂµéÀ» ÁöÁ¤ÇÑ´Ù. NDIS_TASK_IPSEC ±¸Á¶Ã¼°¡ OID_TCP_TASK_OFFLOADÀÇ TCP/IP Àü¼Û °èÃþÀÇ ¼³Á¤À» ÅëÇØ ¹Ì´ÏÆ÷Æ®¿¡ Àü´ÞµÉ ¶§, Àü¼Û °èÃþÀÌ °¡´ÉÇÏ°Ô ÇÏ´Â IP Security ´É·ÂµéÀ» ÁöÁ¤ÇÑ´Ù.
|