The Wind River® Embedded Networking Essentials workshop provides engineers with a fast, cost-effective way to acquire the skills necessary to deal with the challenges that are unique to networking in an embedded environment.
Day 1
What Is Embedded Networking?
- Introduction
- Overview of transport media for IP networking
A Walk up and down the Embedded Network Stack
- OSI seven layer model and how it maps to implementation
- Resource constraints in an embedded environment
- Physical hardware MAC/PHY and Ethernet framing
- IP framing and identification
- Role of a network task in the IP stack
- Point-to-point addressing vs. multi-cast addressing
- Subnetting and classless networks
- Virtual local area network (VLAN)
- LAB: Network utilities and address resolution
- Packet tracing, routing tables, ARP resolution, ARP poisoning (man-in-the-middle attack)
Routing
- What is a route?
- Static vs. dynamic routing, routing vs. forwarding
- Organization of routing tables
- Route renewal mechanisms
- Overview of routing protocols: ARP, RIP, OSPF, NDP, BGP, MPLS
- Routing sockets
- LAB: Routing
- Setting up a network with static routes and dynamic routing protocols
Performance – Purpose-Built Networking
- Buffer resources in an embedded network stack
- Fragmentation
- Path MTU discovery (PMTUD)
- Zero-copy buffers
- SCTP
- Multi-core challenges
- Multi-core offload
- LAB: Policy-based routing
- Routing decisions based on administrative policies
Tunneling
- Introduction to bridging and tunneling
- Introduction to tunnel types: IP in IP, PPP over serial, PPPoE, IPsec, TIPC over TCP, IPv6 in IPv4
- Use cases and resource considerations in embedded devices
- LAB: IPv6 in IPv4 and GRE tunnels
- Configuring tunnels and observing with a traffic sniffer
Day 2
Real-Time Networking – Link Layer vs. Application Layer Protocols
- What is real-time networking?
- Use cases and latency considerations
- overview of industrial networking protocols
- Link layer vs. application layer protocols
- Using appropriate TCP/UDP socket options
- LAB: TIPC failover
- Comparing TCP and TIPC socket connections in a simple failover scenario
Network Booting
- Headless booting use case
- BOOTP and DHCP
- Network file systems overview: FTP, TFTP, NFS, HTTP, SFTP
- Memory overhead for file caches and network buffers
- Bootloader considerations
- LAB: DHCP client and relay
- Configuring a DHCP client and relay, multi-homed DHCP, and observing with a packet sniffer
Network Device Management and Debug
- The remote management challenge
- Options for remote management: SNMP, HTTP, SOAP, SSH
- Designing for serviceability: logging, debug agents, instrumentation, sensorpoints, network debug utilities
- Ownership and security considerations
- LAB: A deep dive into network debugging
- Solving typical network issues in a simulated network
Optional Module A: Introduction to Routing
For those new to networking, an introductory overview of routing can be added before the routing lesson.
Optional Module B: Introduction to IPv6
For those starting a design with IPv6 requirements, an introduction to IPv6 can be added.