Yusuf. A. Khan Ulm, ***** Germany
*****.*****@*****.***- +491*********
Willing to relocate: Anywhere
WORK EXPERIENCE
Experience Summary: Currently working as eNB backhaul transport architect in Nokia Networks PVT LTD. I have around 9 years of experience in LTE transport, network processors, data/fast path, platform architecture, linux device drivers, layer 2/3 protocols and application development.
Expertise:
Network processors like Cavium, TI(keystone2),LSI(AXM55XX),IXP
data/fast path architecture
LTE/WCDMA transport Architecture
Boot loader (U-Boot), OS(Linux),Linux device drivers
Quality of service
Networking protocol like ipv4/ipv6, arp and dhcp
Layer 2 protocols like Vlan and Ethernet OAM
Linux kernel and networking stack
Designing Multi-Threaded System and Event based framework
Multicore debugging
Knowledge of IpSecurity (Ipsec, Iptables)
Algorithms and data structure (C and C++)
Synchronization techniques like Mutex and Semaphore
Interprocess communication (Shared Memory, FIFO, Pipes and Message Queues)
Sockets(Raw,Netlink)
Debugging tools like Lauterbach, kgdb, gdb, kprobes, kexec and kdump
Achievements:
Eight times Outstanding Performer Award in Nokia Siemens Networks
Open Source Contribution (Ongoing)
U-boot Ported on PXA255 board with Arm10 core
Linux 2.6.29 Ported on PXA255
Technical Writing (Ongoing)
http://yusufonlinux.blogspot.com/
Nokia Networks Gmbh & Co.KG - Ulm Germany (Dec/2014 – till date)
Next Generation –VTC(Virtual Transport Core)
This is the R&D project to analyze and prototype linux based fast path. Linux provides ideal environment to fast track the development of fast path on new H/W. As part of this project different facilities of linux is being analyzed to achieve the same performance as bare metal. I was involved in initial prototyping and architecture of next gen VTC. Prototyping involved the development of basic networking stack which could be executed on different SoC’s like TI K2, Cavium, LSI AXM and Intel X86.
Prototype code included ipv4 routing, arp and classifier, project is still on going and planned to be rolled out in 2015. Below are the different linux features which are being analyzed
ZOL(Zero overhead Linux)
Cpuisol- cpu isolation
Cpu cgroup partition
RTLinux
Linux facilities like tasklets, sk_buff
Responsibilities
Reading RFC’s for relevant protocols
Architecture and design of software based fast path
Fast path prototype development
Performance optimization
Role : Architect, Developer
Operating system: Linux
Languages: C
Team: 2
Nokia Siemens Networks PVT LTD (Feb/2011 – Nov/2014)
Flexi Zone Micro BTS - Small cell
Flexi Zone Micro BTS is NSN’s 2nd generation Small cell BTS optimized for outdoor micro-cell environment. The product design, hw and sw, is based on the Flexi Multiradio BTS platform which currently supports both LTE (FDD and TD) and WCDMA. Flexi zone micro is complete BTS on single SoC(system on chip) from TI known as keystone2. Which has 4 ARM cores and 8 DSP’s . I have worked as a Technology development architect for Flexi zone micro and provided innovative linux based fast path architecture which has the functionality equivalent to Macro BTS’s. Fast path was implemented as a kernel module which was much faster than linux networking stack but still portable and was the basis for research of software based fast path. Responsibility includes
Responsibilities
Reading RFC’s for relevant protocols
Architecture and design of linux based fast path
Prototyping the linux based networking features like QoS
Architecture definition for new product
Interaction and interface definition with other system components
Throughput requirement analysis
Memory requirement analysis
Performance optimization
Role : Architect, Developer
Operating system: Linux
Languages: C
Team: 20
Nokia Siemens Networks PVT LTD (Mar/2009 – Sep/2010)
Flexi BTS Release3
Flexi BTS release3 is a successor of Flexi BTS release2 hardware. It provides higher throughput at lower cost hardware. It uses next generation Cavium chip which provides better throughput and performance . Software architecture has also evolved along with the hardware to provide better scalability and flexibility. Slow path has been redesigned specially for multicore and high performance. Special features of Linux were used to enhance communication between slow path and fast path as well as to improve host based stack performance using zero copy networking. I have worked as architect in Flexi BTS release3, where I was responsible to integrate Transport architecture with system architecture as well as evolved transport architecture into Vitrual transport core(VTC). As architect I have provided innovative design solutions to improve performance and scalability.
Responsibilities
Proposed virtual transport core architecture
Integration of Transport architecture into system architecture
Ported linux on new hardware
Provided innovative design to improve slow path and fast path performance
Proposed Dual bridge, host based routing and Linux based data path configuration
Fixed critical customer BUG’s
Role : Architect, Developer
Operating system: Linux
Languages: C
Team: 25
Flexi BTS Release2
Flexi BTS release2 provides high speed connectivity to backhaul network over IPsec. It supports multiple interface cards to process different types of traffic and provides different throughput, so that customer can select different interface cards depending upon the functionality and throughput needs. Flexi BTS release2 implements the fast path over Intel Westport network processor which is first generation processor and optimal for throughput upto 300 mbps. Flexi BTS release2 also uses Cavium octeon to provide high throughput over ipsec. Linux is used on the slow path for cplane as well as for mplane traffic processing. Fast path implements ipsec, ipv4, QoS, switching and vlan. My involvement includes from application to fast path. Brief about the features which I have worked on below features which includes requirement, design and implementation.
Responsibilities
Performance optimization for protocol stacks
Build memory leak and memory corruption detection tools
Ipsec, Classifier, Ipv4/Ipv6
Autoconnection and Autoconfiguration
Synchronous Ethernet
Ethernet OAM
Interworking for LTE
Fixed some very critical BUG’s
Role : Architect, Developer
Operating system: Linux
Languages: C,C++
Team: 25
MULTITECH SOFTWARE SYSTEMS PVT LTD (Sep/2007 – Feb/2009)
Video IP Phone-Phase2
Video-IP Phone software can be used to deliver end-to-end audio and video. The main aim of this project is to port the Video IP Phone software on Texas Instruments’ DaVinci platform. Video-IP phone software uses Multimedia Device Application Framework (MDAF), a framework developed in-house for targeting any IP Multimedia Applications.
Responsibilities
Understanding the existing Design
Porting to TI Davinci Platform
Role : Developer
Operating system: Linux
Languages: C++, C
Team: 8
IPTV - ONSITE VERISMO NETWORKS
IPTV System developed by Verismo Networks is in the form of Set Top Box which allows consumers to download contents over their standard broadband connection. It also allows for stream videos from websites Google, You Tube and Yahoo.
Responsibilities
Understanding the Existing Design
Integrating Verimatrix Product Security Module
Role : Developer
Operating system: Linux
Languages: C++,C
Team: 8
SMS Display
SMS Display device is a device which can receive SMS and display them on a character LCD. This device can be used in automobiles, to give instructions to chauffeur via SMS. This project utilizes the HTS Demo kit’s I/O expansion header to the fullest. Interface was developed for HTS Demo kit to a 2X16 character LCD, a GSM Modem and two key switches. The aim of the project is to build the SMS Display Device which receives the SMS over UART through modem and displays it onto the LCD. Soft Switches are provided to navigate.
Responsibilities
Writing device driver for LCD
Writing device driver for Key-Pad(Soft Switches)
Writing the Main Application
Role : Developer
Operating system: HTS IDE
Languages: C
Team: 3
Internet Radio on MC68360 and porting
Internet Radio is a device which receives the audio stream over the Internet and plays it over the VS1002 DSP chip. It transcends geographical barrier, enabling users to listen to songs, from anywhere in the world. It was done on MC68360 development board and subsequently ported to TS-7400. The DSP VS1002 was interfaced with the MC68360 board over the SPI interface. The aim of the project is to build the Internet Device which receives the stream through Internet and plays it on VS1002 over an SPI interface.
The porting effort involved interfacing TS-7400 with 4 X 4 Matrix Key-Pad and LCD, using GPIO's. The aim of the project is to build the Internet Device which receives the stream through Wireless Internet and plays it using Soft Codec.
Responsibilities
Writing device driver for SPI interface
Writing device driver for Key-Pad, LCD and Soft Switch
Developing DB Manager : It uses the flat file database to keep track of system information
Porting of Boa embedded Web Server and writing the CGI interface in C
Role : Developer
Operating system: uCLinux
Languages: C, Assembly
Team: 3
OS(uCLinux) Porting on Motorola Processor MC68360
The MC68360 Quad Integrated Communication Controller (QUICC™) is a versatile one-chip integrated microprocessor and peripheral combination that can be used in a variety of controller applications. The term "quad" comes from the fact that there are four serial communications controllers (SCCs) on the device. However, there are actually seven serial channels: four SCCs, two serial management controllers (SMCs), and one serial peripheral interface (SPI).The aim of the project is to build the complete cross tool chain for MC68360 on Linux host and port the uCLinux on MC68360 platform. uCLinux comes in a small footprints and is specifically suitable for the MMU-less controllers which do have any kind of memory protection.
Responsibilities
Building Cross tool chain for MC68360
Porting uCLinux
Developing Firmware
Porting Serial Driver(SMC1 is used)
Porting Ethernet Driver(SCC1 is used)
Role : Developer
Operating system: uCLinux
Languages: C,Assembly
Team : 2
Porting U-Boot-1.1.6 Boot Loader on Motorola Processor MC68360
U-Boot is an open source boot loader which supports different kinds of architecture. U-Boot comes with basic tiny TCP-IP stack and the support for mostly all the needed drivers support at the early stages of porting. This considerably reduces the early development time.The aim of the project is to build complete cross tool chain for MC68360 on Linux host and port the U-Boot 1.1.6 boot loader to the MC68360 platform.
Responsibilities
Building the Cross tool chain for MC68360
Porting the Boot Loader (U-Boot-1.1.6)
Developing Firmware
Porting Serial Driver
Porting Ethernet Driver
Developing Flash Driver
Role : Developer
Languages: C, Assembly
Team: 2
NPC(Network Power Controller)
The Network Power Controller is a device that IP enables a serial device for remote Power monitoring and control. NPC has a serial interface (s0) connected to the serial device on one end and an Ethernet interface (eth0) on the other end connected to the LAN. NPC runs on an ARM940TDMI processor and is based on uCLinux . It has 8MB SDRAM and a 2MB Flash. The Aim of the project is to design and code the complete system, including telnet server for user commands, The Exec module that executes the command and act on to the connected device using GPIO(General Purpose Input/Output).
Responsibilities
Application Development using C
Implementing the Telnet Server
Implementing the Command Parser
Implementing the Low Level routines interacting with hardware
Role : Developer
Operating system: uCLinux(micro controller Linux)
Languages: C
Team: 1
TECH MAHINDRA R&D SERVICES LTD (Dec/2006 – Aug/2007)
1850-TSS320 Transport Service Switch
1850-TSS320 (Transport Service Switch) is an Alcatel-Lucent product, which supports all kinds of traffic (Ethernet, SONET, SDH, ATM, TDM, DWDM) and switches it into its native format. 1850-TSS has Universal-Matrix which switches the traffic to its native format.1850-TSS320 is a metro core product which has MTCP (Multiple Technology Control Platform). The project involved design and coding FLC (First Level Controller), which is responsible for controlling the overall system. It is also used to interact with the user, supports TL1-commands, SONET and SDH standards. Design and development of TDM (SONET) and DWDM feature of FLC was undertaken using C.
Responsibilities
Application Development using C and C++
DWDM interface(SCECIF) to SLC(secondary Level Controller)
TDM interface(SCECIF) to SLC(Secondary Level Controller)
Software Unit Testing
Actively involved in Redesigning of FLC
Design and coding of flat database
Role : Developer
Operating system: Montavista Linux
Languages: C,C++
Team: 25
1677 SONET CrossConnect
1677 is a single shelf system that cross-connects (80Gbit) traffic with support for DS3/STS1/STS3C/STS12C. It also serves as a ADD/DROP MUX and supports NGN (Next Generation Services). As part of the effort, one has to understand the behaviour of the system, particularly protection switching mechanism, UPSR and Fabric, and be able to troubleshoot bugs existing in a real time scenario. It also requires one to be proficient in inter group communication that involves follow up of the bugs and get it fixed on time and successfully deliver the software load/build to the customer.
Responsibilities
Application Development using C++
Software Unit Testing
Fixed Fabric Bugs
Worked on Tl1 subsystem of 1677.
Responsible for fixing UPSR Bugs.
Role : Developer
Operating system: vxWorks
Languages: C++
Team: 25
Mansoft Microsystems Pvt Ltd ( June/2005 – Dec/2006 )
Image Downloading Using TCP/IP
In an embedded system, generally SLC (Secondary Level Controller) will not have secondary storage devices and hence the binary image is stored in the FLC (First Level Controller). At the boot time the SLC has to get the binary Image from FLC. The best solution for this is to download the binary image from the FLC using Connectionless protocol. The SLC which runs on a RTOS (vxWorks) should be made to support the TFTP using UDP, Bootp protocol.
Responsibilities
Role: Developer
Operating system: vxWorks
Languages: C++
Team : 1
Low level IPC
This project involved development of low level IPC library, which the clients uses to achieve process synchronization. Functions for all the synchronization techniques like Mutex, Semaphore etc were exported as part of this project. This library also provides option to the processes to use either of the communication technologies like FIFO, Message Queues, Shared Memory.
Responsibilities
Role: Developer
Operating system: Linux
Languages: C++
Team: 1
Customize Library
The Customize Library is a general-purpose C library of Algorithms, Data structures and IPC originated by Mansoft Microsystems. The Customize Library, based on a concept known as generic programming is implemented by means of the C Modular programming. While some aspects of the library are very complex, it can often be applied in a very straightforward way, facilitating reuse of the sophisticated data structures and algorithms and IPC it contains.
Responsibilities
Role: Developer
Operating system: Linux
Languages: C
Team: 1
Education:
Bachelor of Engineering in Computer Science from East point college of engineering and Technology, Bangalore. Graduated in 2006.