Loading...

LINUX NETWORK DEVICE DRIVERS

Linux network device drivers
12
Mar
  • Soujanya
  • 9 (Registered)
  • (0 Review)

Description:

This training is targeted primarily at software professionals – tech leads, system programmers / developers, maintainers and testers – who would like to delve much deeper into the internal functioning of the Linux Network device driver. It ten looks at the Linux Network Stack followed by a flow of network packet. Overall an hands on demonstration and a code walk though of the driver.
Throughout, professional / industry best practices are taught and encouraged.

 Duration :
1 Day or 8 hours

 Prerequisites:

It is very important that the prerequisite(s) marked as Mandatory below be met by all participants intending to attend this training, either by having successfully attended a training program (mentioned below), or having the equivalent knowledge / skill sets.

Mandatory:

  • Good working knowledge of and experience programming using the ‘C’
  • Participants should have knowledge of Linux library and system calls usage, basic Linux kernel internals and preferably, essential Linux device drivers programming.

 Optional / Advantageous:

  • Extensive user-space development experience on a POSIX

Course Details:

  •  Linux Network Stack – Essential Details
  • Network Encapsulation
  • Quick Note on TCP/IP Protocols
  • Socket Buffers (SKBs)
  • Motivation
  • Data Structure
  • Usage
  • Linux Network Stack – The Flow of a Network Packet
  • Transmit Path Processing
  • Background Information – TCP Transmit Engine
  • L5 Session layer – Sockets
  • L4 Transport layer – TCP
  • L3 Network layer – IPv4
  • L2 Link layer – Ethernet
  • Receive Path Processing
  • Background Information – NIC Driver & Queues
  • L2 Link layer – Ethernet
  • L3 Network layer – ARP, IPv4
  • L4 Transport layer – TCP
  • L5 Session layer – Sockets.
  • Network (NIC) Device Drivers
  • Background Information
  • Network Encapsulation
  • Network Interface
  • Network device drivers
  • An interface between Linux kernel and device driver
  • Operation scenario
  • Linux Network Subsystem
  •  Socket Buffers (SKBs)
  • SIDEBAR :: Socket Buffer (De)Allocation
  • Driver Data Structures
  • Socket Buffers
  • The Net Device Interface
  • Probing
  • MII Interface
  • USB Interface
  • Data Transfer
  • Misc: Watchdog / Statistics / Configuration / Bus Specific
  • Talking with Protocol Layers
  • Receive Path
  • Transmit Path
  • Flow Control
  • Buffer Management and Concurrency Control
  • DMA
  • Mapping Types
  • Consistent DMA
  • Streaming DMA
  • Using Consistent DMA Mappings
  • Using Streaming DMA Mappings
  • Example Code.
  • Device Example: Ethernet NIC
  • An Ethernet NIC Driver
  • A simple “virtual ethernet” Network Device Driver
  • Code walk-through and demo
  • A look at why Time matters
  • Network ‘numbers’
  • Overview: Debugging tools, debugfs.

Enroll Now

Course Content

Total learning: / 1 quiz Time: 3 days

Instructor

0.0

0 rating

5 stars
0%
4 stars
0%
3 stars
0%
2 stars
0%
1 star
0%
Free

Money-Back Guarantee, Condition Applied...

Includes

  • Real time virtual classess
  • Pre course reading material
  • Suppliment resources
  • Language: English
  • Certificate of completion

Enroll Now

Your Dream Course Is Only A Step Away




<


Your Dream Course Is Only A Step Away




<


Your Dream Course Is Only A Step Away




<