I experiment on the kernel of linux environment.

Size: px
Start display at page:

Download "I experiment on the kernel of linux environment."

Transcription

1 I experiment on the kernel of linux environment. RX checksum offload ==================================== The linux kernel can t calculate TCP and UDP checksum if skb->ip_summed is CHECKSUM_UNNECESSARY. But the kernel always calculates the IP layer checksum whenever skb->ip_summed is any value. If you want that kernel doesn t calculate IP layer checksum, you have to modify the linux-<version>/net/ipv4/ip_input.c file. In linux/net/ipv4/ip_input.c int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt) #line 415 if (ip_fast_csum((u8 *)iph, iph->ihl)!= 0) goto inhdr_error; if (ip_fast_csum((u8 *)iph, iph->ihl)!= 0) goto inhdr_error; TX checksum offload ======================================== In the linux/include/linux/netdevice.h, the flag, (struct net_device *)dev->features, supports checksum offload capability. /* Net device features */ int features; #define NETIF_F_IP_CSUM 2 /* Can checksum only TCP/UDP over IPv4. */ #define NETIF_F_NO_CSUM 4 /* Does not require checksum. F.e. loopack. */ #define NETIF_F_HW_CSUM 8 /* Can checksum all the packets. */ When (struct net_device *)dev->features = NETIF_F_HW_CSUM, the TCP/UDP/IP checksum of packets were calculated by kernel. To eliminate the TCP/UDP/IP checksum overhand, we have to modify the kernel source. To have kernel stop the IP layer checksum calculation for transmit packet, we have to modify the source code here.

2 In linux/net/ipv4/ip_output.c inline void ip_send_check(struct iphdr *iph) iph->check = 0; was: int ip_build_xmit() # line 758: was: To have kernel stop the TCP checksum calculation for transmit packet, we have to modify the source code here In linux/net/ipv4/tcp_ipv4.c /* This routine computes an IPv4 TCP checksum. */ void tcp_v4_send_check(struct sock *sk, struct tcphdr *th, int len, struct sk_buff *skb) if (skb->ip_summed == CHECKSUM_HW) th->check = ~tcp_v4_check(th, len, sk->saddr, sk->daddr, 0); skb->csum = offsetof(struct tcphdr, check); else th->check = tcp_v4_check(th, len, sk->saddr, sk->daddr, csum_partial((char *)th, th->doff<<2, skb->csum));

3 Is : if (skb->ip_summed == CHECKSUM_HW) static void tcp_v4_send_reset(struct sk_buff *skb) #line 1269 arg.csum = csum_tcpudp_nofold(skb->nh.iph->daddr, skb->nh.iph->saddr, /*XXX*/ sizeof(struct tcphdr), IPPROTO_TCP, 0); rg.csumoffset = offsetof(struct tcphdr, check) / 2; Is : arg.csum = 0; static void tcp_v4_send_ack(struct sk_buff *skb, u32 seq, u32 ack, u32 win, u32 ts) #line 1326 arg.csum = csum_tcpudp_nofold(skb->nh.iph->daddr, skb->nh.iph->saddr, arg.iov[0].iov_len, IPPROTO_TCP, 0); arg.csumoffset = offsetof(struct tcphdr, check) / 2; Is: arg.csum = 0;

4 static int tcp_v4_send_synack(struct sock *sk, struct open_request *req, struct dst_entry *dst) #line 1430 th->check = tcp_v4_check(th, skb->len, req->af.v4_req.loc_addr, req->af.v4_req.rmt_addr, csum_partial((char *)th, skb->len, skb->csum)); th->check=0; To have kernel stop the UDP checksum calculation for transmit packet, we have to modify the source code here. In linux/net/ipv4/udp.c static int udp_push_pending_frames(struct sock *sk, struct udp_sock *up) if (sk->sk_no_check == UDP_CSUM_NOXMIT) skb->ip_summed = CHECKSUM_NONE; goto send; Is : sk->sk_no_check = UDP_CSUM_NOXMIT; if (sk->sk_no_check == UDP_CSUM_NOXMIT) skb->ip_summed = CHECKSUM_NONE; goto send;

5 How to build linux kernel : =============================================== You can reference README in kernel tarball. -- If you install the full sources, put the kernel tarball in a directory where you have permissions (eg. your home directory) and unpack it: tar zxvf linux-<version>.tar.gz -- Make sure you have no stale.o files and dependencies lying around: cd linux-<version> make mrproper -- Do a "make menuconfig" to configure the basic kernel. Alternate configuration commands are: "make menuconfig" Text based color menus, radiolists & dialogs. "make xconfig" X windows based configuration tool. "make oldconfig" Default all questions based on the contents of your existing./.config file. -- Do a "make dep" to set up all the dependencies correctly. -- Do a "make bzimage" to create a compressed kernel image. -- If you configured any of the parts of the kernel as `modules', you will have to do "make modules" followed by "make modules_install". -- Copy the kernel image bzimage and System.map to /boot area. -- Modify boot management program (ex. LILO, GRUB, etc.) -- Reboot

I experiment on the kernel of linux environment.

I experiment on the kernel of linux environment. I experiment on the kernel of linux 2.4.29 environment. RX checksum offload ==================================== The linux kernel can t calculate TCP and UDP checksum if skb->ip_summed is CHECKSUM_UNNECESSARY.

More information

Linux Kernel Compilation

Linux Kernel Compilation Linux Kernel Compilation from source to running Muli Ben-Yehuda mulix@mulix.org IBM Haifa Research Labs Linux Kernel Development, TAU Linux Workshop, July 2003 p.1/9 introduction In this talk, I will talk

More information

Tutorial 2. Linux networking, sk_buff and stateless packet filtering. Roei Ben-Harush Check Point Software Technologies Ltd.

Tutorial 2. Linux networking, sk_buff and stateless packet filtering. Roei Ben-Harush Check Point Software Technologies Ltd. Tutorial 2 Linux networking, sk_buff and stateless packet filtering Agenda 1 Linux file system - networking 2 3 4 sk_buff Stateless packet filtering About next assignment 2 Agenda 1 Linux file system -

More information

12.0 Appendix tcpip.c. /* File name: tcpip.c This file just provides big buffer memory location For other modules to print */

12.0 Appendix tcpip.c. /* File name: tcpip.c This file just provides big buffer memory location For other modules to print */ 12.0 Appendix 12.1 tcpip.c /* File name: tcpip.c This file just provides big buffer memory location For other modules to print */ #include "module_header.h" char big_buffer[bufsize]="\0"; int init_module(){return

More information

There are three separate utilities for configuring Linux kernel and they are listed below: Command-line interface # make config. Figure 1.

There are three separate utilities for configuring Linux kernel and they are listed below: Command-line interface # make config. Figure 1. There are three separate utilities for configuring Linux kernel and they are listed below: Command-line interface # make config Character-based menu interface # make menuconfig Figure 1 Figure 2 X-window

More information

Building Customized Linux Kernels A live demonstration. Mark Post August 17, 2004 Session # 9280

Building Customized Linux Kernels A live demonstration. Mark Post August 17, 2004 Session # 9280 Building Customized Linux Kernels A live demonstration Mark Post August 17, 2004 Session # 9280 Documentation The Linux Documentation Project http://www.tldp.org/ Look for the Kernel HOWTO http://www.tldp.org/howto/kernel-howto/

More information

XDP in Practice DDoS Gilberto Bertin

XDP in Practice DDoS Gilberto Bertin XDP in Practice DDoS Mitigation @Cloudflare Gilberto Bertin About me Systems Engineer at Cloudflare London DDoS Mitigation Team Enjoy messing with networking and Linux kernel Agenda Cloudflare DDoS mitigation

More information

Stacked Vlan - Performance Improvement and Challenges

Stacked Vlan - Performance Improvement and Challenges Stacked Vlan - Performance Improvement and Challenges Toshiaki Makita NTT Open Source Software Center Today's topics Stacked vlan Performance Improvement and Challenges Interoperability Problem 2 Who is

More information

Networking Subsystem in Linux. Manoj Naik IBM Almaden Research Center

Networking Subsystem in Linux. Manoj Naik IBM Almaden Research Center Networking Subsystem in Linux Manoj Naik IBM Almaden Research Center Scope of the talk Linux TCP/IP networking layers Socket interfaces and structures Creating and using INET sockets Linux IP layer Socket

More information

High Speed Packet Filtering on Linux

High Speed Packet Filtering on Linux past, present & future of High Speed Packet Filtering on Linux Gilberto Bertin $ whoami System engineer at Cloudflare DDoS mitigation team Enjoy messing with networking and low level things Cloudflare

More information

Lecture 1. Virtualization, Linux kernel (modules and networking) and Netfilter Winter 15/16. Roei Ben-Harush 2015

Lecture 1. Virtualization, Linux kernel (modules and networking) and Netfilter Winter 15/16. Roei Ben-Harush 2015 Lecture 1 Virtualization, Linux kernel (modules and networking) and Netfilter Winter 15/16 Agenda 1 2 3 4 Virtualization Linux kernel modules and networking Netfilter About first Assignment 2 Agenda 1

More information

Operating System. Hanyang University. Hyunmin Yoon Operating System Hanyang University

Operating System. Hanyang University. Hyunmin Yoon Operating System Hanyang University Hyunmin Yoon (fulcanelli86@gmail.com) 2 Linux development ENVIRONMENT 2 3 References ubuntu documentation Kernel/Compile https://help.ubuntu.com/community/kernel/compile 3 4 Tools $ software-properties-gtk

More information

destination a (eth1)

destination a (eth1) ECE 4110 Lab 9: Configuring a Linux Machine as a Router and Modifying the Operating System Date Assigned: November 8, 2010 Due Date: November 15, 2010 Please note this is a much longer lab than the others

More information

Firewalling for Free: An Enterprise Firewall Without the Enterprise Price. Name: Shawn Grimes Date: November 25, 2001 Course: CT-401

Firewalling for Free: An Enterprise Firewall Without the Enterprise Price. Name: Shawn Grimes Date: November 25, 2001 Course: CT-401 Firewalling for Free: An Enterprise Firewall Without the Enterprise Price Name: Shawn Grimes Date: November 25, 2001 Course: CT-401 Table of Contents Introduction..1 Nature of Bridging Firewalls 1 Physical

More information

Ex.no:2 Date: Kernel Configuration, Compilation and Installation

Ex.no:2 Date: Kernel Configuration, Compilation and Installation Ex.no:2 Date: Kernel Configuration, Compilation and Installation AIM: To download latest Linux kernel from the web configure the source, compile the kernel and install the kernel in client machine. Procedure:

More information

Once Only Drop Capability in the Linux Routing Software

Once Only Drop Capability in the Linux Routing Software Once Only Drop Capability in the Linux Routing Software Submitted to the Department of Computer Science College of Computing Sciences New Jersey Institute of Technology in Partial Fulfillment of the Requirements

More information

Operating Systems. 17. Sockets. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

Operating Systems. 17. Sockets. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski Operating Systems 17. Sockets Paul Krzyzanowski Rutgers University Spring 2015 1 Sockets Dominant API for transport layer connectivity Created at UC Berkeley for 4.2BSD Unix (1983) Design goals Communication

More information

Linux Networking Dietary Restrictions. David S. Miller (Red Hat Inc.)

Linux Networking Dietary Restrictions. David S. Miller (Red Hat Inc.) Linux Networking Dietary Restrictions David S. Miller (Red Hat Inc.) Small is Beautiful Critical Linux Networking Structures struct sk_buff struct dst_entry struct rtable 216 bytes 160 bytes 216 bytes

More information

jelly-near jelly-far

jelly-near jelly-far sudo./run Two interfaces created: os0, os1 Two networks created: (add to /etc/networks) peanut where os0 will connect 192.168.0.0 grape where os1 will connect 192.168.1.0 Two IP addresses in peanut: (add

More information

FreeBSD Network Stack Optimizations for Modern Hardware

FreeBSD Network Stack Optimizations for Modern Hardware FreeBSD Network Stack Optimizations for Modern Hardware Robert N. M. Watson FreeBSD Foundation EuroBSDCon 2008 Introduction Hardware and operating system changes TCP input and output paths Hardware offload

More information

DPDK+eBPF KONSTANTIN ANANYEV INTEL

DPDK+eBPF KONSTANTIN ANANYEV INTEL x DPDK+eBPF KONSTANTIN ANANYEV INTEL BPF overview BPF (Berkeley Packet Filter) is a VM in the kernel (linux/freebsd/etc.) allowing to execute bytecode at various hook points in a safe manner. It is used

More information

Kernel configuration The kernel configuration and build system is based on multiple Make files. All Makefiles inside the sub directories in kernel source interacts with the main Makefile which is present

More information

RTLinux Installation Instructions

RTLinux Installation Instructions RTLinux Installation Instructions FSM Labs, Inc. http://www.fsmlabs.com April 20, 2001 Abstract This document is intended to guide the user through the installation steps needed to compile and install

More information

UDP Encapsulation in Linux netdev0.1 Conference February 16, Tom Herbert

UDP Encapsulation in Linux netdev0.1 Conference February 16, Tom Herbert UDP Encapsulation in Linux netdev0.1 Conference February 16, 2015 Tom Herbert Topics UDP encapsulation Common offloads Foo over UDP (FOU) Generic UDP Encapsulation (GUE) Basic idea

More information

Master thesis: A Linux implementation of MulTFRC

Master thesis: A Linux implementation of MulTFRC Master thesis: A Linux implementation of MulTFRC Adrian Jørgensen Master s Thesis Spring 2014 Master thesis: A Linux implementation of MulTFRC Adrian Jørgensen 19th May 2014 ii Abstract The use of multimedia

More information

Building socket-aware BPF programs

Building socket-aware BPF programs Building socket-aware BPF programs Joe Stringer Cilium.io Linux Plumbers 2018, Vancouver, BC Joe Stringer BPF Socket Lookup Nov 13, 2018 1 / 32 Joe Stringer BPF Socket Lookup Nov 13, 2018 2 / 32 Background

More information

Chapter 10: I/O Subsystems (2)

Chapter 10: I/O Subsystems (2) ADRIAN PERRIG & TORSTEN HOEFLER ( 252-0062-00 ) Networks and Operating Systems Chapter 10: I/O Subsystems (2) BE CAREFUL WITH I/O DEVICES! Our Small Quiz True or false (raise hand) Open files are part

More information

===Socket API User/ OS interface === COP

===Socket API User/ OS interface === COP The COP (connection oriented reliable packet stream) protocol COP is a packet oriented transport protocol whose objective is to tame some aspects of the bad behavior of UDP. Application ===Socket API User/

More information

Chapter 10: I/O Subsystems (2)

Chapter 10: I/O Subsystems (2) ADRIAN PERRIG & TORSTEN HOEFLER ( 252-0062-00 ) Networks and Operating Systems Chapter 10: I/O Subsystems (2) BE CAREFUL WITH I/O DEVICES! Our Small Quiz True or false (raise hand) Open files are part

More information

A practical introduction to XDP

A practical introduction to XDP A practical introduction to XDP Jesper Dangaard Brouer (Red Hat) Andy Gospodarek (Broadcom) Linux Plumbers Conference (LPC) Vancouver, Nov 2018 1 What will you learn? Introduction to XDP and relationship

More information

1. Introduction. 1.1 What is TCP and how does it work?

1. Introduction. 1.1 What is TCP and how does it work? Abstract Nowadays, there are more and more data intensive applications requiring high file transfer over high bandwidth-delay networks. In order to take advantage of the new backbone capacities, which

More information

Our Small Quiz. Chapter 9: I/O Subsystems (2) Generic I/O functionality. The I/O subsystem. The I/O Subsystem.

Our Small Quiz. Chapter 9: I/O Subsystems (2) Generic I/O functionality. The I/O subsystem. The I/O Subsystem. ADRIAN PERRIG & TORSTEN HOEFLER ( 252-0062-00 ) s and Operating Systems Chapter 9: I/O Subsystems (2) Our Small Quiz True or false (raise hand) Open files are part of the process address-space Unified

More information

Performing Maintenance Operations

Performing Maintenance Operations This chapter describes how to back up and restore Cisco Mobility Services Engine (MSE) data and how to update the MSE software. It also describes other maintenance operations. Guidelines and Limitations,

More information

QEMU and the Linux Kernel

QEMU and the Linux Kernel CSC 256/456: Operating Systems QEMU and the Linux Kernel John Criswell! University of Rochester 1 Outline Useful tools! Compiling the Linux Kernel! QEMU! Linux Kernel Details 2 Useful Tools 3 screen Virtual

More information

Tolerating Malicious Drivers in Linux. Silas Boyd-Wickizer and Nickolai Zeldovich

Tolerating Malicious Drivers in Linux. Silas Boyd-Wickizer and Nickolai Zeldovich XXX Tolerating Malicious Drivers in Linux Silas Boyd-Wickizer and Nickolai Zeldovich How could a device driver be malicious? Today's device drivers are highly privileged Write kernel memory, allocate memory,...

More information

Networks and Operating Systems ( ) Chapter 10: I/O Subsystems (2)

Networks and Operating Systems ( ) Chapter 10: I/O Subsystems (2) ADRIAN PERRIG & TORSTEN HOEFLER Networks and Operating Systems (252-0062-00) Chapter 10: I/O Subsystems (2) BE CAREFUL WITH I/O DEVICES! Administrivia If you re an exchange student and very far away from

More information

Sockets 15H2. Inshik Song

Sockets 15H2. Inshik Song Sockets 15H2 Inshik Song Internet CAU www server (www.cau.ac.kr) Your web browser (Internet Explorer/Safari) Sockets 2 How do we find the server? Every computer on the Internet has an Internet address.

More information

Our Small Quiz. Chapter 10: I/O Subsystems (2) Generic I/O functionality. The I/O subsystem. The I/O Subsystem. The I/O Subsystem

Our Small Quiz. Chapter 10: I/O Subsystems (2) Generic I/O functionality. The I/O subsystem. The I/O Subsystem. The I/O Subsystem ADRIAN PERRIG & TORSTEN HOEFLER ( 252-0062-00 ) s and Operating Systems Chapter 10: I/O Subsystems (2) BE CAREFUL WITH I/O DEVICES! Our Small Quiz True or false (raise hand) Open files are part of the

More information

rx hardening & udp gso willem de bruijn

rx hardening & udp gso willem de bruijn rx hardening & udp gso willem de bruijn Network rx stack hardening PoD [redacted (3x)] Local Priv CVE-2017-1000112: ufo overwrite skb_shared_info CVE-2017-1000111: packet_reserve use-after-free user namespaces

More information

XDP in practice: integrating XDP into our DDoS mitigation pipeline

XDP in practice: integrating XDP into our DDoS mitigation pipeline XDP in practice: integrating XDP into our DDoS mitigation pipeline Gilberto Bertin Cloudflare Ltd. London, UK gilberto@cloudflare.com Abstract To absorb large DDoS (distributed denial of service) attacks,

More information

Introduction to Oracle VM (Xen) Networking

Introduction to Oracle VM (Xen) Networking Introduction to Oracle VM (Xen) Networking Dongli Zhang Oracle Asia Research and Development Centers (Beijing) dongli.zhang@oracle.com May 30, 2017 Dongli Zhang (Oracle) Introduction to Oracle VM (Xen)

More information

DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX

DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX x DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX Rony Efraim Introduction to DC w/ overlay network Modern data center (DC) use overly network like Virtual Extensible LAN (VXLAN) and GENEVE

More information

UC20 Linux USB Driver User Guide

UC20 Linux USB Driver User Guide UC20 Linux USB Driver User Guide UMTS/HSPA Module Series Rev. UC20_Linux_USB_Driver_User_Guide_V1.0 Date: 2013-06-09 www.quectel.com Our aim is to provide customers with timely and comprehensive service.

More information

ADRIAN PERRIG & TORSTEN HOEFLER ( ) 10: I/O

ADRIAN PERRIG & TORSTEN HOEFLER ( ) 10: I/O ADRIAN PERRIG & TORSTEN HOEFLER s and Operating Systems (252-0062-00) Chapter 10: I/O Subsystems (2) Administrivia If you re an exchange student and very far away from Zurich during the exam period and

More information

APPLICATION. NOTE Date:

APPLICATION. NOTE Date: Product: Hurricane LX800 Title: Installing the Micrel KS884X Ethernet Driver using Linux Concerned Versions All General Information This paper discusses the implementation of the Micrel KS8842 ethernet

More information

Packet Header Formats

Packet Header Formats A P P E N D I X C Packet Header Formats S nort rules use the protocol type field to distinguish among different protocols. Different header parts in packets are used to determine the type of protocol used

More information

CSCI-GA Operating Systems. Networking. Hubertus Franke

CSCI-GA Operating Systems. Networking. Hubertus Franke CSCI-GA.2250-001 Operating Systems Networking Hubertus Franke frankeh@cs.nyu.edu Source: Ganesh Sittampalam NYU TCP/IP protocol family IP : Internet Protocol UDP : User Datagram Protocol RTP, traceroute

More information

Socket (Session) Aware Change of IP SACIP network functionality. Samo Pogačnik

Socket (Session) Aware Change of IP SACIP network functionality. Samo Pogačnik Socket (Session) Aware Change of IP SACIP network functionality Samo Pogačnik Key notes about SACIP On the fly changes of network access point of a (mobile) user / endpoint device Possibility for preserving

More information

Network device drivers in Linux

Network device drivers in Linux Network device drivers in Linux Aapo Kalliola Aalto University School of Science Otakaari 1 Espoo, Finland aapo.kalliola@aalto.fi ABSTRACT In this paper we analyze the interfaces, functionality and implementation

More information

Linux Kernel Update - from scratch (almost) Platform: Archlinux, UEFI, GRUB2, and initramfs. Prof. Rossano Pablo Pinto

Linux Kernel Update - from scratch (almost) Platform: Archlinux, UEFI, GRUB2, and initramfs. Prof. Rossano Pablo Pinto Linux Kernel Update - from scratch (almost) Platform: Archlinux, UEFI, GRUB2, and initramfs FATEC Americana May/2017 - v0.9 Agenda Install development software Overview of the steps Archlinux 64 bits with

More information

Hardware Checksumming

Hardware Checksumming Hardware Checksumming David S. Miller Red Hat Inc. Overview Internet checksumming basics Hardware History Tunneling and Encapsulation Arguments for a ubiquitous 1 s complement checksum Internet Checksumming

More information

Running Network Services under User-Mode

Running Network Services under User-Mode Running Network Services under User-Mode Linux, Part I Mick Bauer Abstract Leverage the Linux kernel's virtualization features to isolate network dæmons. In my May 2006 Paranoid Penguin column, I expounded

More information

Network Adapter Flow Steering

Network Adapter Flow Steering Network Adapter Flow Steering OFA 2012 Author: Tzahi Oved Date: March 2012 Receive Steering Evolution The traditional Single Ring All ingress traffic to land on a single receive ring Kernel threads / DPC

More information

IPCoreL An Intuitive Packet Injection Programming Language

IPCoreL An Intuitive Packet Injection Programming Language IPCoreL An Intuitive Packet Injection Programming Language Programming Language Proprosal By Phillip Duane Douglas, Jr. Introduction IPCoreL is a programming language that will be geared towards newcomers

More information

PROBLEMSAND EXERCISES

PROBLEMSAND EXERCISES Departamento de Tecnología Electrónica Computer Networking Unit 3: Transport layer PROBLEMSAND EXERCISES Transport Layer 95 Pr1: port numbers Suppose that the client A initiates a TCP connection to a Web

More information

MultiPath TCP : Linux Kernel implementation

MultiPath TCP : Linux Kernel implementation MultiPath TCP : Linux Kernel implementation Presenter: Christoph Paasch IP Networking Lab UCLouvain, Belgium August 28, 2012 http://multipath-tcp.org IP Networking Lab http://multipath-tcp.org 1/ 29 Networks

More information

User Manual. SysKonnect SK-98xx V2.0 Gigabit Ethernet Adapter

User Manual. SysKonnect SK-98xx V2.0 Gigabit Ethernet Adapter User Manual SysKonnect SK-98xx V2.0 Gigabit Ethernet Adapter SysKonnect SK-98xx V2.0 Gigabit Ethernet Adapter User Manual (v2.10 17 February, 2003) Visit our web site: http://www.syskonnect.com SysKonnect

More information

DSP/BIOS Link. Installation Guide Published on 20 th OCT Copyright 2009 Texas Instruments Incorporated.

DSP/BIOS Link. Installation Guide Published on 20 th OCT Copyright 2009 Texas Instruments Incorporated. DSP/BIOS Link Installation Guide 1.64.00.03 Published on 20 th OCT 2009 Copyright 2009 Texas Instruments Incorporated. 2 Platform Support Products Version 1.64.00.03 IMPORTANT NOTICE Texas Instruments

More information

CREATION OF A MINIMAL STAND ALONE RTAI SYSTEM ================================================

CREATION OF A MINIMAL STAND ALONE RTAI SYSTEM ================================================ Requirements :: --------------- CREATION OF A MINIMAL STAND ALONE RTAI SYSTEM ================================================ * I prepared my stand alone RTAI for the following hardware configurations.

More information

Ref: A. Leon Garcia and I. Widjaja, Communication Networks, 2 nd Ed. McGraw Hill, 2006 Latest update of this lecture was on

Ref: A. Leon Garcia and I. Widjaja, Communication Networks, 2 nd Ed. McGraw Hill, 2006 Latest update of this lecture was on IP Version 4 (IPv4) Header (Continued) Identification (16 bits): One of the parameters of any network is the maximum transmission unit (MTU) parameter. This parameter specifies the maximum size of the

More information

{ } Embedded Montreal Meetup. Char *lecture = Lecture 2 Deep Packet Inspection in Userspace ;

{ } Embedded Montreal Meetup. Char *lecture = Lecture 2 Deep Packet Inspection in Userspace ; { } Embedded Montreal Meetup October 17 th, 2014 Ron Brash Embedded Developer Ron.brash@gmail.com Char *lecture = Lecture 2 Deep Packet Inspection in Userspace ; Objectives Quick introduction Refresher

More information

What is an L3 Master Device?

What is an L3 Master Device? What is an L3 Master Device? David Ahern Cumulus Networks Mountain View, CA, USA dsa@cumulusnetworks.com Abstract The L3 Master Device (l3mdev) concept was introduced to the Linux networking stack in v4.4.

More information

*************************************************************************************

************************************************************************************* ************************************************************************************* Title:- To Implement Packet sniffer. Name:-Pawar Gaurav Sudhir Roll_no:-322053 Div:-TE[B3] *************************************************************************************

More information

Dan Boneh, John Mitchell, Dawn Song. Denial of Service

Dan Boneh, John Mitchell, Dawn Song. Denial of Service Dan Boneh, John Mitchell, Dawn Song Denial of Service What is network DoS? Goal: take out a large site with little computing work How: Amplification Small number of packets big effect Two types of amplification

More information

PCIe 10G SFP+ Network Card

PCIe 10G SFP+ Network Card PCIe 10G SFP+ Network Card User Manual Ver. 1.00 All brand names and trademarks are properties of their respective owners. Contents: Chapter 1: Introduction... 3 1.1 Product Introduction... 3 1.2 Features...

More information

Interested in learning more? Global Information Assurance Certification Paper. Copyright SANS Institute Author Retains Full Rights

Interested in learning more? Global Information Assurance Certification Paper. Copyright SANS Institute Author Retains Full Rights Global Information Assurance Certification Paper Copyright SANS Institute Author Retains Full Rights This paper is taken from the GIAC directory of certified professionals. Reposting is not permited without

More information

Writing drivers for the Linux Crypto subsystem

Writing drivers for the Linux Crypto subsystem May 18, 2014 Marek Vasut Software engineer at DENX S.E. since 2011 Embedded and Real-Time Systems Services, Linux kernel and driver development, U-Boot development, consulting, training. Versatile Linux

More information

PCIe 10G 5-Speed. Multi-Gigabit Network Card

PCIe 10G 5-Speed. Multi-Gigabit Network Card PCIe 10G 5-Speed Multi-Gigabit Network Card User Manual Ver. 2.00 All brand names and trademarks are properties of their respective owners. Contents: Chapter 1: Introduction... 3 1.1 Product Introduction...

More information

Socket Programming. Dr. -Ing. Abdalkarim Awad. Informatik 7 Rechnernetze und Kommunikationssysteme

Socket Programming. Dr. -Ing. Abdalkarim Awad. Informatik 7 Rechnernetze und Kommunikationssysteme Socket Programming Dr. -Ing. Abdalkarim Awad Informatik 7 Rechnernetze und Kommunikationssysteme Before we start Can you find the ip address of an interface? Can you find the mac address of an interface?

More information

System Administration for Beginners

System Administration for Beginners System Administration for Beginners Week 5 Notes March 16, 2009 1 Introduction In the previous weeks, we have covered much of the basic groundwork needed in a UNIX environment. In the upcoming weeks, we

More information

itmbench: Generalized API for Internet Traffic Managers

itmbench: Generalized API for Internet Traffic Managers itmbench: Generalized API for Internet Traffic Managers Gali Diamant Leonid Veytser Ibrahim Matta Azer Bestavros Mina Guirguis Liang Guo Yuting Zhang Sean Chen Computer Science Department Boston University

More information

LINUX KERNEL PRABHAT RANJAN. (

LINUX KERNEL PRABHAT RANJAN. ( LINUX KERNEL PRABHAT RANJAN (email : prabhat_ranjan@daiict.ac.in) OUTLINE Different states of kernel Directory structure of kernel source Description of various directory proc file system Kernel Compilation

More information

This release of the product includes these new features that have been added since NGFW 5.5.

This release of the product includes these new features that have been added since NGFW 5.5. Release Notes Revision A McAfee Next Generation Firewall 5.7.8 Contents About this release New features Enhancements Known limitations Resolved issues System requirements Installation instructions Upgrade

More information

Accelerating Load Balancing programs using HW- Based Hints in XDP

Accelerating Load Balancing programs using HW- Based Hints in XDP Accelerating Load Balancing programs using HW- Based Hints in XDP PJ Waskiewicz, Network Software Engineer Neerav Parikh, Software Architect Intel Corp. Agenda Overview express Data path (XDP) Software

More information

Linux Boot Process. Nassim Eddequiouaq LSE Summer Week 2015

Linux Boot Process. Nassim Eddequiouaq LSE Summer Week 2015 Linux Boot Process Nassim Eddequiouaq LSE Summer Week 2015 Why does boot matter? No boot No boot! OS uses evolving hardware features Faster and more secure please What does Linux need? Hardware initialization

More information

Chapter 4 End-to-End Protocol Layer

Chapter 4 End-to-End Protocol Layer Chapter 4 End-to-End Protocol Layer Problem Statement The end-to-end protocol layer, also known as the transport layer, is like the skin of the whole protocol hierarchy that can provide valuable services

More information

Project 1: Syscalls for synchronization 1

Project 1: Syscalls for synchronization 1 Project 1: Syscalls for synchronization 1 Submit a gzipped tarball of your code to CourseWeb. Due: Monday, February 4, 2019 @11:59pm Late: Wednesday, February 6, 2019 @11:59pm with 10% reduction per late

More information

Combining ktls and BPF for Introspection and Policy Enforcement

Combining ktls and BPF for Introspection and Policy Enforcement Combining ktls and BPF for Introspection and Policy Enforcement Daniel Borkmann, John Fastabend Cilium.io Linux Plumbers 2018, Vancouver, Nov 14, 2018 Daniel Borkmann, John Fastabend ktls and BPF Nov 14,

More information

Layered Networking and Port Scanning

Layered Networking and Port Scanning Layered Networking and Port Scanning David Malone 22nd June 2004 1 IP Header IP a way to phrase information so it gets from one computer to another. IPv4 Header: Version Head Len ToS Total Length 4 bit

More information

2 Setting up the RDMA Framework for Development

2 Setting up the RDMA Framework for Development Spring Term 2015 ADVANCED COMPUTER NETWORKS Project P1: Introduction to RDMA Programming Assigned on: 16 April 2015 Due by: 29 April 2015, 23:59 1 Introduction The goal of this project is to give an introduction

More information

Writing your own netfilter match

Writing your own netfilter match LinuxFocus article number 367 http://linuxfocus.org Writing your own netfilter match Abstract: by Nicolas Bouliane About the author: Nicolas is a young warrior in the free software

More information

Hacking Linux Applications by implementing a new Syscall

Hacking Linux Applications by implementing a new Syscall Report System Software Wintersemester 2009 CA644 Brian Stone Hacking Linux Applications by implementing a new Syscall cand. Dipl. Inf. Tobias Müller , 59212333 BSc. Hugh Nowlan ,

More information

Building, Running and Monitoring the Linux kernel

Building, Running and Monitoring the Linux kernel Building, Running and Monitoring the Linux kernel Prak6kum Kernel Programming University of Hamburg Scien6fic Compu6ng Winter semester 2015/2016 Konstan6nos Chasapis Konstan6nos.chasapis@informa6k.uni-hamburg.de

More information

Project 0: Linux & Virtual Machine Dabbling

Project 0: Linux & Virtual Machine Dabbling Project 0: Linux & Virtual Machine Dabbling CS-3013 Operating Systems Hugh C. Lauer (Slides include materials from Slides include materials from Modern Operating Systems, 3 rd ed., by Andrew Tanenbaum

More information

What s happened to the world of networking hardware offloads? Jesse Brandeburg Anjali Singhai Jain

What s happened to the world of networking hardware offloads? Jesse Brandeburg Anjali Singhai Jain What s happened to the world of networking hardware offloads? Jesse Brandeburg Anjali Singhai Jain 1 Agenda Introductions A Brief History of Offloads Hardware Offloads Future Look Proposals 2 Photo by

More information

Linux kernel. Josep Jorba Esteve PID_

Linux kernel. Josep Jorba Esteve PID_ Josep Jorba Esteve PID_00148468 GNUFDL PID_00148468 Copyright 2009, FUOC. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version

More information

! ' ,-. +) +))+, /+*, 2 01/)*,, 01/)*, + 01/+*, ) 054 +) +++++))+, ) 05,-. /,*+), 01/-*+) + 01/.*+)

! ' ,-. +) +))+, /+*, 2 01/)*,, 01/)*, + 01/+*, ) 054 +) +++++))+, ) 05,-. /,*+), 01/-*+) + 01/.*+) ! "#! # $ %& #! '!!!( &!)'*+' '(,-. +) /,*+), 01/-*+) + 01/.*+) ) 05,-. +))+, /+*, 2 01/)*,, 01/)*, + 01/+*, ) 054 +) +++++))+,3 4 +. 6*! ) ) ) ) 5 ) ) ) ) + 5 + + ) ) ) 5 9 + ) ) + 5 4 ) ) + ) 5, ) )

More information

Advantech General FAQ. How to change ubuntu specific kernel for quick cross test

Advantech General FAQ. How to change ubuntu specific kernel for quick cross test Advantech General FAQ How to change ubuntu specific kernel for quick cross test Applicable model list Model name version BIOS Version Description: All N/A N/A Products sometimes behave different with different

More information

MV V310 Android 4.0 Compilation

MV V310 Android 4.0 Compilation MV V310 Android 4.0 Compilation Microvision Co., Ltd. Document Information Version 1.0 File Name MVV310 Android Compilation.doc Date 2012. 4. 17 Satus Working Revision History Date Version Update Descriptions

More information

Kernel Korner IBM's Journaled Filesystem

Kernel Korner IBM's Journaled Filesystem Kernel Korner IBM's Journaled Filesystem To restart a telecom server quickly, you need a journaling filesystem. Here's how you can move to IBM's AIX-derived JFS. by Steve Best, David Gordon and Ibrahim

More information

UDP and the sendto Socket API

UDP and the sendto Socket API UDP and the sendto Socket API There are several mechanisms through which an application may use the socket API to initiate the transmission of a UDP datagram. We begin with a study of sendto() because

More information

A 10 years journey in Linux firewalling Pass the Salt, summer 2018 Lille, France Pablo Neira Ayuso

A 10 years journey in Linux firewalling Pass the Salt, summer 2018 Lille, France Pablo Neira Ayuso A 10 years journey in Linux firewalling Pass the Salt, summer 2018 Lille, France Pablo Neira Ayuso What is Netfilter? Not just iptables Image from Wikipedia (J. Engelhardt, 2018)

More information

GigaRAID (IT8212) ATA RAID Controller USER S MANUAL

GigaRAID (IT8212) ATA RAID Controller USER S MANUAL GigaRAID (IT8212) ATA RAID Controller USER S MANUAL 12ME-IT8212-005 Copyright Copyright by GIGA-BYTE TECHNOLOGY CO., LTD. ( GBT ) No part of this manual may be reproduced or transmitted in any from without

More information

Linux U-Boot and Kernel Users Guide

Linux U-Boot and Kernel Users Guide Linux U-Boot and Kernel Users Guide 1 Table of Contents Overview... 4 General Information... 4 Getting the U-Boot and Kernel Source Code (SDK)... 4 Preparing to Build... 4 Compiler... 5 Device Trees...

More information

MV 4412 Android 4.0 Compilation

MV 4412 Android 4.0 Compilation MV 4412 Android 4.0 Compilation Microvision Co., Ltd. Document Information Version 1.0 File Name MV4412 Android Compilation.doc Date 2012. 7. 12 Satus Working Revision History Date Version Update Descriptions

More information

Manual: How to Use GAA-API & IPSEC Integration

Manual: How to Use GAA-API & IPSEC Integration Manual: How to Use GAA-API & IPSEC Integration Li Zhou - 06/26/2002 PART ONE - INSTALLATION We should have two gateway machines installed. We could call them left node and right node. For our demo, left

More information

416 Distributed Systems. Networks review; Day 2 of 2 Fate sharing, e2e principle And start of RPC Jan 10, 2018

416 Distributed Systems. Networks review; Day 2 of 2 Fate sharing, e2e principle And start of RPC Jan 10, 2018 416 Distributed Systems Networks review; Day 2 of 2 Fate sharing, e2e principle And start of RPC Jan 10, 2018 1 Last Time Modularity, Layering, and Decomposition Example: UDP layered on top of IP to provide

More information

Introduction to TCP/IP networking

Introduction to TCP/IP networking Introduction to TCP/IP networking TCP/IP protocol family IP : Internet Protocol UDP : User Datagram Protocol RTP, traceroute TCP : Transmission Control Protocol HTTP, FTP, ssh What is an internet? A set

More information

Zero-Copy Socket Splicing

Zero-Copy Socket Splicing Zero-Copy Socket Splicing Alexander Bluhm bluhm@openbsd.org Sunday, 29. September 2013 Agenda 1 Motivation 2 Kernel MBuf 3 Packet Processing 4 Socket Splicing 5 Interface 6 Implementation 7 Applications

More information

CNIT 50: Network Security Monitoring. 6 Command Line Packet Analysis Tools

CNIT 50: Network Security Monitoring. 6 Command Line Packet Analysis Tools CNIT 50: Network Security Monitoring 6 Command Line Packet Analysis Tools Topics SO Tool Categories Running Tcpdump Using Dumpcap and Tshark Running Argus and the Ra Client SO Tool Categories Three Types

More information