Embedded Ethernet and TCP/IPv4 application Development using the Micrium TCP/IP Protocol Stack — A 5 day course
Synopsis
This is a 5 days hands on course that will cover network configuration and troubleshooting (using e.g. the Wireshark protocol analyser), TCP/IP protocol stack installation as well as sockets programming and TCP/UDP application level programming.
This is an instructor led course with labs, with a split of about 60% teaching and 40% labs.
Objectives
On completion of the course attendees will understand how to integrate the Micrium TCP/IP protocol stack library into their applications.
Delegates will also understand the main techniques for configuring and troubleshooting TCP/IP networks in general and networks containing embedded systems in particular.
Delegates will also be able to develop sockets based client - server applications (both TCP and UDP) and be able to develop applications that make use of protocols such as HTTP, FTP, SMTP and SNMP.
Suitable For
This course is aimed at experienced C programmers who are relatively new to networking and network programming.
Prerequisites
Basic understanding of computer networking and the internet.
Publicly scheduled dates, locations, and prices
A schedule of dates for this subject is not currently available. Please call 0333 210 0140 or use our contact form to enquire about places and availability.
Contents
Introduction to Networking Concepts
- ISO/OSI 7 layer model
- a brief history of TCP/IP
- principles of client-server applications
- where the internet fits it
- service oriented computing
Ethernet - Physical and Link Layer aspects
- Ethernet II
- Ethernet 802.3
- Ethernet media - a survey
- repeaters, hubs and switches
- advanced switches - VLANs,full duplex working, spanning tree protocol
- adapting ethernet for industrial applications ( an overview of industrial ethernet )
Understanding the IPv4 layer
- the ARP protocol
- static IP address assignment vs. DHCP
- IPv4 as a classful addressing scheme
- subnets and subnet masking
- private IP addresses
- routers and IPv4 routing - an overview
- interfacing private IP networks to the Web - Network Address Translation (NAT)
- configuring simple routers
- the ICMP network management layer
- troubleshooting networks with PING
The IP Transport Layer - TCP and UDP
- connection oriented vs. connectionless transport
- client-server applications
- analysis of the TCP layer
- three way handshake - connection setup
- connection takedown
- role of sequence numbers and acknowledgement numbers
- positive acknolwedgement - timeout and retransmit
- keep alive messages
- quality of service issues
- TCP port numbers
- performance overheads of TCP
- The UDP layer
- overview
- UDP port numbers
- building more reliable protocols on top of UDP
Understanding application layer protocols and services
- DNS
- SMTP
- FTP
- HTTP
- SNMP
- TFTP
- Telnet
- SSL
Sockets API programming
- implementing a simple TCP client-server application
- implementing a simple UDP client-server application
Uses of HTTP servers in embedded applications
- basic HTTP applications
- advanced applications using Java applets
- advanced applications using Ajax
Overview of using SMTP, SNMP, FTP and TFTP in Embedded Applications
- Sending email from an embedded system
- Implementing an SNMP agent for an embedded system
- Transferring files to and from an embedded system