Renesas Electronics America Inc. © 2012 Renesas Electronics America Inc. All rights reserved. Embedding TCP/IP Working Through Implementation Challenges Micriµm © 2012 Renesas Electronics America Inc. All rights reserved.2 Micriµm Renesas Technology & Solution Portfolio © 2012 Renesas Electronics America Inc. All rights reserved.3 Micriµm Introduction : Objectives Block 1 : What is a TCP/IP stack? Block 2 : Embedded system requirements Block 3 : LAN = Ethernet Block 4 : ARP Operation Block 5 : Hardware/Software setup Block 6 : IPv4 Addressing Block 7 : IPv6 Addressing Block 8 : Troubleshooting connection Block 9 : Transport protocols Block 10 : Network services and application Agenda © 2012 Renesas Electronics America Inc. All rights reserved.4 Micriµm Objectives Learn to use TCP/IP properly from the start. Understand the requirements difference to perform IP connectivity versus IP performance. Perform TCP/IP networking activities. Record network traffic and analyze results. © 2012 Renesas Electronics America Inc. All rights reserved.5 MicriµmMicriµm Block 1 What is a TCP/IP stack? © 2012 Renesas Electronics America Inc. All rights reserved.6 Micriµm What is a TCP/IP stack? The Internet Protocol suite—like many protocol suites—can be viewed as a set of layers. Each layer solves a set of problems involving the transmission of data, and provides a well-defined service to the upper layer protocols based on using services from some lower layers. Upper layers are logically closer to the user and deal with more abstract data, relying on lower layer protocols to translate data into forms that can eventually be physically transmitted. It has also been referred to as the TCP/IP protocol suite, which is named after two of the most important protocols in it: the Transmission Control Protocol (TCP) and the Internet Protocol (IP), which were also the first two IP networking protocols defined. © 2012 Renesas Electronics America Inc. All rights reserved.7 Micriµm 1. Device Drivers Physical (hardware) 2. Network Access 3. Internet 5-6-7. Application 4. Transport Telnet, FTP, TFTP, HTTP, BOOTP, DHCP, SNMP Socket API TCP, UDP IP, ARP, ICMP PPP,SLIP, Ethernet User data Physical Devices App Header TCP Segment Application dataTCP Header Application dataTCP Header IP Header IP Datagram 14 Application data 4 2020 46 to 1500 bytes Ethernet Frame Transport Protocol Messages Network-Specific Frames User Data (Messages or Streams) Ethernet Trailer TCP Header IP Header IP Datagrams Layers in the Internet Protocol suite Ethernet Header User data What is a TCP/IP stack? The TCP/IP reference model consists of four layers plus the physical layer. © 2012 Renesas Electronics America Inc. All rights reserved.8 Micriµm Layered communication © 2012 Renesas Electronics America Inc. All rights reserved.9 Micriµm TCP/IP Protocol Architecture Protocol Family © 2012 Renesas Electronics America Inc. All rights reserved.10 Micriµm The starting point 1. Device Drivers Physical (hardware) 2. Network Access 3. Internet 5-6-7. Application 4. Transport Telnet, FTP, TFTP, HTTP, BOOTP, DHCP, SNMP Socket API TCP, UDP IP, ARP, ICMP PPP,SLIP, Ethernet Physical Devices Ethernet Applications and services Implementing TCP/IP Understanding TCP/IP [...]...Block 2 Requirements Performance Connectivity only Or Throughput? 11 © 2012 Renesas Electronics America Inc All rights reserved Micriµm Performance CPU Most embedded targets are slower consumers when compared to laptop and desktop computers Packets generated... few RAM (approximately 32K) For a few Megabits per second, a more complete TCP/IP stack is required In this case, embedded system requirements dictate in the range of 96K of RAM for a minimal sustained throughput Resources need to be allocated to the protocol stack so that it can perform its duties 13 © 2012 Renesas Electronics America Inc All rights reserved Micriµm Memory Usage Summary of our setup... controller types – Has dedicated memory – Uses main memory TCP/IP uses main memory for ‘network buffer’ – Ethernet packets need to be transferred to these network buffers – Either copied by the CPU or through a DMA controller 25 © 2012 Renesas Electronics America Inc All rights reserved Micriµm Ethernet Controller Interface CPU with an internal Media Access Controller (MAC) When a packet is received... be obtained, the existing pointer remains in place and the frame is dropped Micriµm Zero Copy A true zero copy architecture - negating the need for performance reducing memory buffer moves Zero copy networking enables the network adapter to transfer data directly to or from application memory, eliminating the need to copy data between application memory and the data buffers in the operating system 31 . DHCP, SNMP Socket API TCP, UDP IP, ARP, ICMP PPP,SLIP, Ethernet User data Physical Devices App Header TCP Segment Application dataTCP Header Application dataTCP Header IP Header IP Datagram 14 Application. reserved.4 Micriµm Objectives Learn to use TCP/ IP properly from the start. Understand the requirements difference to perform IP connectivity versus IP performance. Perform TCP/ IP networking activities. Record. America Inc. © 2012 Renesas Electronics America Inc. All rights reserved. Embedding TCP/ IP Working Through Implementation Challenges Micriµm © 2012 Renesas Electronics America Inc. All rights reserved.2 Micriµm Renesas