I experiment on the kernel of linux environment.
|
|
- Frederica Little
- 5 years ago
- Views:
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; int ip_build_xmit() # line 758: To have kernel stop the TCP checksum calculation for transmit packet, we have to modify the source code here. In linux/net/ipv4/tcp.c static inline int skb_add_data(struct sk_buff *skb, char *from, int copy) int err = 0; unsigned int csum; int off = skb->len; csum = csum_and_copy_from_user(from, skb_put(skb, copy),copy, 0, &err); csum = copy_from_user( skb_put(skb, copy),from,copy);
3 if (!err) kb->csum = csum_block_add(skb->csum, csum, off); kb->csum = csum_block_add(skb->csum, csum, off); return 0; skb_trim(skb, off); return -EFAULT; static inline int tcp_copy_to_page(struct sock *sk, char *from, struct sk_buff *skb, struct page *page, int off, int copy) int err = 0; unsigned int csum; csum = csum_and_copy_from_user(from, page_address(page)+off, copy, 0, &err); csum = copy_from_user(page_address(page)+off, from, copy); if (!err) skb->len); skb->len); if (skb->ip_summed == CHECKSUM_NONE) skb->csum = csum_block_add(skb->csum, csum, if (skb->ip_summed == CHECKSUM_NONE) skb->csum = csum_block_add(skb->csum, csum,
4 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)); 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
5 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; 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 int udp_sendmsg(struct sock *sk, struct msghdr *msg, int len) #line 566 err = ip_build_xmit(sk, (sk->no_check == UDP_CSUM_NOXMIT? udp_getfrag_nosum :udp_getfrag), &ufh, ulen, &ipc, rt, msg->msg_flags); Is: sk->no_check = UDP_CSUM_NOXMIT; err = ip_build_xmit(sk, (sk->no_check == UDP_CSUM_NOXMIT? udp_getfrag_nosum :udp_getfrag), &ufh, ulen, &ipc, rt, msg->msg_flags);
6 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 2.6.10 environment. RX checksum offload ==================================== The linux kernel can t calculate TCP and UDP checksum if skb->ip_summed is CHECKSUM_UNNECESSARY.
More informationLinux 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 information12.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 informationTutorial 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 informationUDP 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 informationThere 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 informationNetworking 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 informationXDP 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 informationjelly-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 informationHigh 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 informationOperating 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 informationBuilding 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 informationStacked 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 informationLecture 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 informationScripting Linux system calls with Lua. Lua Workshop 2018 Pedro Tammela CUJO AI
Scripting Linux system calls with Lua Pedro Tammela CUJO AI Scripting system calls Customizing system calls at the kernel level Why bother? Through scripts, users can adapt the operating system behavior
More informationOnce 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 informationLinux 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===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 informationdestination 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 informationFirewalling 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 informationDPDK+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 informationMaster 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 informationEx.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 informationOperating 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 informationA 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 informationFreeBSD 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 informationTolerating 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 information1. 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 informationKernel 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 informationUDP 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 informationRTLinux 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 informationBuilding 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 informationChapter 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 informationSockets 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 informationChapter 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 informationQEMU 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 informationrx 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 informationMultiPath 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 informationExecVus. Alexandru Totolici
ExecVus Alexandru Totolici a way to visualize control-flow in! software execution 2 planned for: code collapse code reordering improved selection of exec. path zoom in/out of control flow scented graph
More informationWriting 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 informationInterested 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 informationCSE 124 Discussion Section Sockets Programming 10/10/17
CSE 124 Discussion Section Sockets Programming 10/10/17 Topics What s a socket? Creating a socket Connecting a socket Sending data Receiving data Resolving URLs to IPs Advanced socket options Live code
More informationSocket 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 informationOral. Total. Dated Sign (2) (5) (3) (2)
R N Oral Total Dated Sign (2) (5) (3) (2) Assignment Group- A_07 Problem Definition Write a program using TCP socket for wired network for following Say Hello to Each other ( For all students) File transfer
More informationOur 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{ } 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*************************************************************************************
************************************************************************************* Title:- To Implement Packet sniffer. Name:-Pawar Gaurav Sudhir Roll_no:-322053 Div:-TE[B3] *************************************************************************************
More informationNetworks 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 informationLinux 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 informationPerforming 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 informationNetwork 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 informationOur 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 informationEthernet switch support in the Linux kernel
ELC 2018 Ethernet switch support in the Linux kernel Alexandre Belloni alexandre.belloni@bootlin.com Copyright 2004-2018, Bootlin. Creative Commons BY-SA 3.0 license. Corrections, suggestions, contributions
More informationDPDK 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 informationHacking 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 informationWriting 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 information416 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 informationIntroduction 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 informationXDP 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 informationBuilding Ethernet Drivers on RTLinux-GPL 1
Building Ethernet Drivers on RTLinux-GPL 1 Sergio Pérez, Joan Vila, Ismael Ripoll Department of Computer Engineering Universitat Politècnica de Valencia Camino de Vera, s/n. 46022 Valencia,SPAIN {serpeal,jvila,iripoll@disca.upv.es
More informationDSP/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 informationCombining 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 informationUniversity of Colorado at Colorado Springs CS4500/ Fall 2018 Operating Systems Project 1 - System Calls and Processes
University of Colorado at Colorado Springs CS4500/5500 - Fall 2018 Operating Systems Project 1 - System Calls and Processes Instructor: Yanyan Zhuang Total Points: 100 Out: 8/29/2018 Due: 11:59 pm, Friday,
More informationUC20 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 informationLinux Firewall Exploration Lab
SEED Labs Linux Firewall Exploration Lab 1 Linux Firewall Exploration Lab Copyright c 2006-2014 Wenliang Du, Syracuse University. The development of this document is/was funded by three grants from the
More informationADRIAN 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 informationProcesses communicating. Network Communication. Sockets. Addressing processes 4/15/2013
Processes communicating Network Communication Process: program running within a host. within same host, two processes communicate using inter-process communication (defined by OS). processes in different
More informationPacket 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 informationProgramming Internet with Socket API. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806
Programming Internet with Socket API Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 10/19/2015 CSCI 445 - Fall 2015 1 Acknowledgements Some pictures
More informationScalable Emulation of IP Networks through Virtualization
Scalable Emulation of IP Networks through Virtualization by Amit P Kucheria B.E. (Computer Science and Engineering), SSGMCE, India, 1998 Submitted to the Department of Electrical Engineering and Computer
More informationAPPLICATION. 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 informationHardware 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 informationCSCI-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 informationitmbench: 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 informationLINUX 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 informationSocket Programming for TCP and UDP
CSCI4430 Data Communication and Computer Networks Socket Programming for TCP and UDP ZHANG, Mi Jan. 19, 2017 Outline Socket Programming for TCP Introduction What is TCP What is socket TCP socket programming
More informationSocket (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 informationLinux Device Drivers Interrupt Requests
Overview 1 2 3 Installation of an interrupt handler Interface /proc 4 5 6 7 primitive devices can be managed only with I/O regions, most devices require a more complicated approach, devices cooperate with
More information416 Distributed Systems. Networks review; Day 2 of 2 And start of RPC Jan 13, 2016
416 Distributed Systems Networks review; Day 2 of 2 And start of RPC Jan 13, 2016 1 Last Time Modularity, Layering, and Decomposition Example: UDP layered on top of IP to provide application demux ( ports
More informationBuilding, 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 informationWhat is a Linux Device Driver? Kevin Dankwardt, Ph.D. VP Technology Open Source Careers
What is a Linux Device Driver? Kevin Dankwardt, Ph.D. VP Technology Open Source Careers kdankwardt@oscareers.com What does a driver do? Provides a more convenient interface to user-space for the hardware.
More informationMV 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 informationRunning 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 informationIPCoreL 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 informationFinal Step #7. Memory mapping For Sunday 15/05 23h59
Final Step #7 Memory mapping For Sunday 15/05 23h59 Remove the packet content print in the rx_handler rx_handler shall not print the first X bytes of the packet anymore nor any per-packet message This
More informationPROBLEMSAND 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 informationNetwork 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 informationLecture 20. Log into Linux. Copy directory /home/hwang/cs375/lecture20 Project 5 due today. Project 6 posted, due Tuesday, April 8. Questions?
Lecture 20 Log into Linux. Copy directory /home/hwang/cs375/lecture20 Project 5 due today. Project 6 posted, due Tuesday, April 8. Questions? Thursday, March 27 CS 375 UNIX System Programming - Lecture
More informationTerm Project Phase I: System Calls
cse331 fall 2011 Term Project Phase I: System Calls Goal: You will learn how to make a system call and about reading / writing user space from / to the kernel by adding a new function to the kernel. The
More informationCS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing
: Computer Networks Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing Recall our protocol layers... ... and our protocol graph IP gets the packet to the host Really
More informationThe Linux Network Subsystem
The Linux Network Subsystem Unable to handle kernel paging request at virtual address 4d1b65e8 Unable Covers to handle Linux kernel paging version request at virtual 2.6.25 address 4d1b65e8 pgd = c0280000
More informationUser 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 informationMV 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 informationRef: 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 informationHow Double-Fetch Situations turn into Double-Fetch Vulnerabilities:
How Double-Fetch Situations turn into Double-Fetch Vulnerabilities: A Study of Double Fetches in the Linux Kernel Pengfei Wang, Jens Krinke, Kai Lu, Gen Li, Steve Dodier-Lazaro College of Computer National
More informationCREATION 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 informationWhat 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 informationDan 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 informationPCIe 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 informationContext. Distributed Systems: Sockets Programming. Alberto Bosio, Associate Professor UM Microelectronic Departement
Distributed Systems: Sockets Programming Alberto Bosio, Associate Professor UM Microelectronic Departement bosio@lirmm.fr Context Computer Network hosts, routers, communication channels Hosts run applications
More information