Embedded software engineer, VxWorks, linux kernel
Project:Fix latency issue in PandaBoard ES.
Platform:Linux Kernel, RT Preempt, arm/omap4
Project:USB Driver For Freescale Board
Platform:Linux Kernel, GCC, IAR Embedded Workbench
Project:Cache-Forwarding - PPPoE
PPPoE is network protocol that allows data communication between two network entities or points. The objective is to enhance the router capability to process PPPoE packets which lead to an enhancement in the WAN throughput.
Project:Cache-Forwarding - Layer 2
Cache-Forwarding - Layer 2 is a service in a router that enhances performance and capacity of bridging. Bridging is a forwarding technique used in network that is based on information located in the packet header .
Among the tasks, I made C code optimization based on algorithm optimization and generated assembly code.
Project:Cache-Forwarding - Layer 3
Cache-Forwarding - Layer 3 is a service in a router that enhance performance and capacity in IP packet routing. With this service the throughput has been enhanced from 30 Mbps to 50 Mbps.
This is an embedded application in a router. It allows the router to upgrade the configuration and the operating system using a custom protocol that is based on tftp and ftp.
That consist of implementing the VRF to different embedded management applications. For server type application; it’s required to create a socket and listen on it for each configured VRF.
For client type application, it’s required that the application create a socket and bind it for the configured VRF.
Project:Porting IPV4 applications to IPV6
This consists in porting several embedded management applications from IPV4 to IPV6. The embedded system has two different stacks for IPV4 and IPV6. And therefore the applications must handle sockets separately on each stack.
The ported applications are telnet server, telnet client, ssh server, snmp server, http server, syslog server, tacacs client and radius client.
Project:Evolution in some SNMP MIB
I added some SNMP MIB modules, with read and write access for different management object of a router device.
Developed MIB modules are tacacs, radius, telnet, ssh, syslog, and few others.
Platform:VxWorks, Wind River mib compiler
Project:Evolution in network packet analyzer tool
The software is embedded packet analyzer tool that can capture and display network IP packets. The evolution was a re-write of the BPF (Berkeley Packet Filter) bytecode compiler to support multiple filters at the same time.
Project:CLI Security Engine
Development of a command line security engine that is used by an embedded http server of router equipment.
The project consists in developing a blacklist library to protect system from dictionary attack. Then the blacklist was implemented on the http-server, telnet and ssh.
Project:Maintenance of Embedded Management System
Mainly this consists in fixing bugs and develops new features for a router’s operating system. The OS is based on VxWorks. My task consists in developing things related to embedded management applications and protocols, ex:
HTTP Server, HTTP Proxy, Telnet Server, Telnet Client
Authentication and accounting via TACAS and RADIUS
Custom Protocol for auto configuration
TR069, Data model
Project:Evolution of command line interface engine.
The router command line interface (CLI) is based on the rapid control SDK of Wind River. The objective of the evolution is allowing a user to filter the output result of a command, allowing the user to filter lines with several options (include, exclude, begin …). For that a few sub-commands was introduced and they were made available to all routers commands after using the pipe character (Cisco like behavior).
Project:Router’s Web Configuration tool.
This project is done for a French telecommunication operator.
The project consists in developing a web interface to configure the router through an internet browser.
Platform:VxWorks and Web
This tool helps network operators to manage and edit router configurations and Operating Systems in a fast and error free manner.
Language:PHP, C, shell
Project:network equipments supervisor.
This tool is used to monitor network equipments that support SNMP.