¾ÆÅ°ÅØÃÄ¿¡ ÀÇÁ¸ÀûÀÎ ¸ðµâÀÇ ÇÔ¼öµéÀº IP üũ¼¶À» Çϰí 32-bit¸¦ Ãß°¡ÇÑ´Ù.
The IP checksum calculation is the most computationally expensive operation in the TCP/IP stack and it therefore pays off to implement this in efficient assembler. The purpose of the uip-arch module is to let the checksum functions to be implemented in architecture specific assembler.
IP üũ¼¶ °è»êÀº TCP/IP¿¡¼ ´ëºÎºÐ ºñ¿ëÀÌ ¸¹ÀÌ µå´Â ¿¬»êÀÌ´Ù. ±×·¡¼ ¾î¼Àºí·¯·Î ±¸ÇöÇÑ´Ù. uip-arch ¸ðµâÀÇ ¸ñÀûÀº üũ¼¶À» ¾ÆÅ°ÅØÃÄ ÀÇÁ¸ÀûÀÎ ¾î¼Àºí·¯·Î ±¸ÇöÇÏ´Â °ÍÀÌ´Ù.
Files | |
file | uip_arch.h |
Declarations of architecture specific functions. ¾ÆÅ°ÅØÃ³ ÀÇÁ¸ÀûÀÎ ÇÔ¼ö ¼±¾ð. | |
Functions | |
void | uip_add32 (u8_t *op32, u16_t op16) |
Carry out a 32-bit addition. 32-bit Ãß°¡. | |
u16_t | uip_chksum (u16_t *buf, u16_t len) |
Calculate the Internet checksum over a buffer. ÀÎÅÍ³Ý Ã¼Å©¼¶ °è»ê. | |
u16_t | uip_ipchksum (void) |
Calculate the IP header checksum of the packet header in uip_buf. uip_buf¿¡ ÀÖ´Â ÆÐŶ Çì´õÀÇ IPÇì´õ üũ¼¶ °è»ê. | |
u16_t | uip_tcpchksum (void) |
Calculate the TCP checksum of the packet in uip_buf and uip_appdata. uip_buf¿Í uip_apdata¿¡ ÀÖ´Â ÆÐŶÀÇ TCP üũ¼¶ °è»ê. | |
Variables | |
volatile u8_t | uip_acc32 [4] |
4-byte array used for the 32-bit sequence number calculations. 32-ºñÆ® ½ÃÄö½º ¹øÈ£ °è»êÀ» À§ÇØ »ç¿ëµÇ´Â 4-¹ÙÀÌÆ® ¹è¿. |
|
Carry out a 32-bit addition. 32-ºñÆ® Ãß°¡.
uIPÀÇ ¸ðµç ¾ÆÅ°ÅØÃ³°¡ 32-ºñÆ®°¡ ¾Æ´Ï±â ¶§¹®¿¡, uIP´Â TCP ÇÁ·ÎÅäÄÝ Ã³¸®¿¡¼ ÇÊ¿äÇÑ 32-ºñÆ® Ãß°¡¸¦ Çϱâ À§ÇØ È®Àå CÇÔ¼ö¸¦ »ç¿ëÇÑ´Ù. ÀÌ ÇÔ¼ö´Â µÎ°³ÀÇ ÀÎÀÚ¸¦ Ãß°¡Çϰí Àü¿ª º¯¼öÀÎ uip_acc32¿¡ °á°ú¸¦ ÀúÀåÇÑ´Ù.
|
|
Calculate the Internet checksum over a buffer. ÀÎÅÍ³Ý Ã¼Å©¼¶ °è»ê.
See RFC1071. RFC1071 Âü°í.
|
|
Calculate the IP header checksum of the packet header in uip_buf. uip_buf¿¡ ÀÖ´Â ÆÐŶ Çì´õÀÇ IPÇì´õ üũ¼¶ °è»ê.
IP Çì´õ üũ¼¶Àº IPÇì´õÀÇ 20¹ÙÀÌÆ® ÀÎÅÍ³Ý Ã¼Å©¼¶ÀÌ´Ù.
|
|
Calculate the TCP checksum of the packet in uip_buf and uip_appdata. uip_buf¿Í uip_apdata¿¡ ÀÖ´Â ÆÐŶÀÇ TCP üũ¼¶ °è»ê
TCP üũ¼¶Àº TCP¼¼±×¸ÕÆ®ÀÇ »ó¼ö µ¥ÀÌÅÍÀÇ ÀÎÅÍ³Ý Ã¼Å©¼¶ÀÌ´Ù.
|