
MPLAB® Harmony Help - TCP-IP Stack Libraries MPLAB Harmony Integrated Software Framework v1.11 © 2013-2017 Microchip Technology Inc. All rights reserved. TCP/IP Stack Libraries Help TCP/IP Stack Libraries Help This section provides information on the TCP/IP Stack Library and its modules that are available in MPLAB Harmony. © 2013-2017 Microchip Technology Inc. MPLAB Harmony v1.11 2 TCP/IP Stack Libraries Help TCP/IP Stack Library Overview Network Metrics TCP/IP Stack Library Overview This section provides an overview of the TCP/IP Stack libraries that are available in MPLAB Harmony. Introduction This topic provides an overview of the TCP/IP Stack in MPLAB Harmony. Description The MPLAB Harmony TCP/IP Stack provides a foundation for embedded network applications by handling most of the interaction required between the physical network port and your application. It includes modules for several commonly used application layers, including HTTP for serving web pages, SMTP for sending e-mails, SNMP for providing status and control, Telnet, TFTP, Serial-to-Ethernet, and much more. In addition, the stack includes light-weight and high-performance implementations of the TCP and UDP transport layers, as well as other supporting modules such as IP, ICMP, DHCP, ARP, and DNS. Network Metrics This topic provides TCP/IP network metrics information for PIC32MX and PIC32MZ devices. Description Network Metrics for the PIC32MX Test Setup: • PIC32 MZ Embedded Connectivity Starter Kit • PIC32 MX Ethernet Starter Kit II • Starter Kit I/O Expansion Board • Fast 100 Mbps Ethernet PICtail Plus • Windows 7 PC • TX buffer: 7350 bytes • RX buffer: 4400 bytes Iperf Bandwidth Measurements All bandwidth numbers are in kilobits per second. Table 1: Internal MAC Measurements for PIC32MX Devices Type -O0 -O1 -O2 -O3 -Os TCP Client 25,963 47,652 53,650 56,682 50,191 TCP Server 29,046 45,193 50,484 52,603 45,659 UDP Client 33,795 60,997 71,105 72,049 63,298 UDP Server 36,451 78,546 86,994 88,757 80,948 Table 2: Internal MAC Measurements for PIC32MZ Devices Type -O0 -O1 -O2 -O3 -Os TCP Client 31,722 56,929 61,361 64,479 59,742 TCP Server 28,924 41,570 44,168 44,721 42,437 UDP Client 45,534 80,116 87,043 89,377 84,044 UDP Server 53,155 90,766 95,943 95,899 94,411 Table 3: ENCx24J600 MAC Measurements for PIC32MX Devices Type -O0 -O1 -O2 -O3 -Os TCP Client 6,023 7,225 8,211 7,633 7,373 TCP Server 5,760 7,476 8,118 8,166 7,588 UDP Client 7,035 8,826 9,159 9,148 8,949 UDP Server 7,849 9,651 10,358 10,371 9,722 © 2013-2017 Microchip Technology Inc. MPLAB Harmony v1.11 3 TCP/IP Stack Libraries Help TCP/IP Stack Library Overview Flash and RAM Usage Table 4: Internal MAC Measurements for PIC32MX + MIPS16 Devices Type -O0 -O1 -O2 -O3 -Os TCP Client 19,748 29,707 32,488 33,920 30,206 TCP Server 17,369 23,294 25,945 28,018 23,421 UDP Client 23,901 34,285 38,598 51,959 36,252 UDP Server 27,720 37,914 39,186 60,143 37,401 Table 5: ENCx24J600 MAC Measurements for PIC32MX + MIPS16 Devices Type -O0 -O1 -O2 -O3 TCP Client 5,480 6,232 6,985 6,345 TCP Server 4,984 6,262 6,454 6,644 UDP Client 6,370 7,727 8,069 8,586 UDP Server 7,109 8,471 8,702 9,289 Commands The following commands were used to generate the network performance numbers as measured with Iperf: UDP/IP Client: PIC32 Board Personal Computer iperf -c <PC IP Address> -u -b 100M -i 5 -t 20 iperf -s -u -i 5 UDP/IP Server: PIC32 Board Personal Computer iperf -s -u -i 5 iperf -c mchpboard_e -u -b 100M -i 5 -t 20 TCP/IP Client: PIC32 Board Personal Computer iperf -c <PC IP Address> -t 10 -i 5 -l 1024 -x 100M -M 1460 iperf -s -i 5 -m -w 10K –N TCP/IP Server: PIC32 Board Personal Computer iperf -s -i 5 -x 100M iperf -c mchpboard_e -t 10 -i 5 -l 1024 Flash and RAM Usage Provides information on Flash and RAM usage by device family. Description Flash and RAM Usage Table 1 and Table 2 provide Flash and RAM usage for PIC32MX and PIC32MZ devices, respectively. Table 1: PIC32MX Device Flash and Ram Usage Optimization 0 0 1 1 2 2 3 3 s s Module Flash RAM Flash RAM Flash RAM Flash RAM Flash RAM ARP 12,836 136 6,992 136 7,332 136 7,548 136 6,640 136 Berkeley API 19,000 76 11,080 76 10,620 76 12,368 76 9,196 76 DDNS 7,332 630 4,688 618 4,092 618 4,636 568 3,644 618 DHCP Client 11,104 76 6,444 76 6,604 76 7,376 80 5,936 76 DHCP Server 17,816 100 9,128 100 9,124 100 10,216 100 8,552 100 DNS Client 16,724 148 9,020 148 8,960 148 11,320 148 7,844 148 © 2013-2017 Microchip Technology Inc. MPLAB Harmony v1.11 4 TCP/IP Stack Libraries Help TCP/IP Stack Library Overview Flash and RAM Usage DNS Server 13,192 280 7,156 280 6,528 280 7,348 284 5,948 280 FTP Server 20,548 2,009 11,376 1,989 11,360 1,989 11,628 1,993 10,728 1,989 HTTP Server 18,988 2,320 10,052 2,320 10,264 2,276 11,404 2,264 9,024 2,276 ICMP (IPv4) 2,416 28 1,260 28 1,248 28 1,272 28 1,180 28 ICMPv6 (IPv6) 12,464 28 7,320 28 7,292 28 8,012 28 6,724 28 IPv4 5,144 52 2,764 52 2,864 52 2,996 52 2,652 52 IPv6 46,756 544 28,768 544 29,304 544 41,432 544 25,712 528 NetBIOS Name Server 2,244 16 1,164 16 1,136 16 1,956 16 1,128 16 SMTP Client 7,996 262 4,976 266 4,808 266 5,964 268 4,168 266 SNTP Client 3,332 182 2,232 182 2,256 182 2,288 184 2,064 182 TCP 37,736 48 20,096 48 21,096 56 24,088 60 18,524 56 Announce Support 3,488 44 1,972 44 2,004 44 2,168 44 1,916 44 Reboot Server 756 26 412 26 436 26 436 26 420 26 UDP 22,984 48 11,748 48 12,556 48 14,588 56 10,780 48 Zeroconf Local Link 188 5 140 5 152 5 152 5 132 5 Zeroconf MDNS (Bonjour 4,764 24 2,600 24 2,628 24 2,688 24 2,428 24 Service) Stack Core Library 63,368 1,776 31,168 1,768 32,848 1,768 41,112 1,768 28,132 1,768 File System Wrappers 684 16 424 16 420 16 656 16 372 16 Ethernet MAC Driver 23,412 524 12,924 524 12,756 524 14,536 524 11,576 524 Ethernet PHY Driver 17,820 296 9,580 296 10,804 296 10,924 280 9,904 296 wolfSSL Library 237,940 25,596 130,040 25,300 129,024 28,868 178,844 28,828 110,772 28,868 Table 2: PIC32MZ Device Flash and Ram Usage Optimization 0 0 1 1 2 2 3 3 s s Module Flash RAM Flash RAM Flash RAM Flash RAM Flash RAM ARP 12,876 168 6,920 168 7,328 168 7,580 168 6,640 168 Berkeley API 19,016 76 11,028 76 10,600 76 12,372 76 9,196 76 DDNS 7,332 630 4,676 618 4,024 618 4,628 568 3,636 618 DHCP Client 11,164 120 6,448 120 6,528 120 7,512 124 6,020 120 DHCP Server 17,980 248 9,120 248 9,200 212 10,212 212 8,312 212 DNS Client 16,752 148 8,932 148 8,944 148 11,352 148 7,912 148 DNS Server 13,224 280 7,020 280 6,640 280 7,556 284 6,000 280 FTP Server 20,676 2,009 11,384 1,989 11,336 1,989 11,684 1,993 10,720 1,989 HTTP Server 19,164 2,516 10,144 2,516 10,340 2,472 11,472 2,460 9,112 2,472 ICMP (IPv4) 2,416 28 1,252 28 1,248 28 1,272 28 1,188 28 ICMPv6 (IPv6) 12,464 28 7,300 28 7,108 28 7,960 28 6,744 28 IPv4 5,176 100 2,772 100 2,892 100 3,024 100 2,720 100 IPv6 46,836 544 28,544 544 29,300 544 41,740 544 25,680 528 NetBIOS Name Server 2,252 16 1,168 16 1,128 16 1,956 16 1,128 16 SMTP Client 7,996 262 4,908 266 4,784 266 5,944 268 4,136 266 SNTP Client 3,332 182 2,208 182 2,256 182 2,284 184 2,072 182 TCP 37,928 116 19,904 116 21,016 124 24,096 128 18,652 124 Announce Support 3,488 44 1,964 44 2,004 44 2,144 44 1,892 44 Reboot Server 788 58 460 58 476 58 476 58 460 58 UDP 23,116 144 11,704 144 12,524 144 14,600 152 10,920 144 Zeroconf Local Link 4,836 120 2,664 120 2,704 120 152 5 128 5 © 2013-2017 Microchip Technology Inc.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages727 Page
-
File Size-