Socketcan

Socketcan

SocketCAN is a set of open source CAN drivers and a networking stack contributed by Volkswagen Research to the Linux kernel. Formerly known as "Low Level CAN Framework" (LLCF).

Established CAN drivers are based on the model of character devices. Typically they only allow sending to and receiving from the CAN controller. Most of the implementations for this device class only allow a single process on the device which means that all other processes are blocked in the meantime as known from accessing a device via the serial interface. The SocketCAN concept on the other hand uses the model of network devices, which allows multiple applications to access to one CAN device simultanously. Equally single application are able to access multiple CAN networks in parallel.

The SocketCAN concept introduces a new protocol family PF_CAN that coexists with other protocol families like PF_INET for the Internet Protocol. The communication with the CAN bus is done analogue to the use of the Internet Protocol via Sockets. Fundamental components of SocketCAN are the network device drivers for different CAN controllers and the implementation of the CAN protocol family. The protocol family PF_CAN provide the structures to enable different protocols on the bus: Raw sockets for direct CAN communication and transport protocols for point-to-point connections. Moreover the broadcast manager which is part of the CAN protocol family provides functions e.g. for sending CAN messages periodically or realize complex message filters.

Patches about CAN were added in the 2.6.25 Linux Kernel but there are still some missing parts like controller drivers.

External links

* [http://developer.berlios.de/projects/socketcan/ SocketCAN project site]
* [http://llcf.de/llcf-api-2006-02-20.pdf SocketCAN documentation (german)]
* [http://openfacts.berlios.de/index-en.phtml?title=Socket-CAN SocketCAN overview (english)]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Controller-area network — (CAN or CAN bus) is a computer network protocol and bus standard designed to allow microcontrollers and devices to communicate with each other without a host computer.It was designed specifically for automotive applications but is now also used… …   Wikipedia

  • Controller area network — Controller–area network (CAN or CAN bus) is a vehicle bus standard designed to allow microcontrollers and devices to communicate with each other within a vehicle without a host computer. CAN is a message based protocol, designed specifically for… …   Wikipedia

  • Cubesat Space Protocol — Original author(s) AAUSAT3 Developer(s) GomSpace Initial release 26 April 2010 Stable release 1.0 / October 24, 2011; 0 days ago ( …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”