Hands&On(VI. All(prac5ce(within(this(hands&on(are( performed(within(our(latest(vm(image( (ubuntu(14.04) infon-vm.ova. Transport(Control(Protocol

Similar documents
Dropping Packets in Ubuntu Linux using tc and iptables

Experiments on TCP Re-Ordering March 27 th 2017

tcconfig Documentation

(12) Patent Application Publication (10) Pub. No.: US 2016/ A1. Guan et al. (43) Pub. Date: Nov. 3, 2016

COMPUTER NETWORKS. CPSC 441, Winter 2016 Prof. Mea Wang Department of Computer Science University of Calgary

Multimedia Communication. Project 6: Intelligent DiffServ

NDN iptables match extension

Information Network 1 TCP 1/2. Youki Kadobayashi NAIST

estadium Project Lab 2: Iperf Command

For Step 1, DO NOT USE IP ADDRESSES THAT WEREN'T ASSIGNED TO YOU OR SOMEONE

Exercises: Basics of Networking II Experiential Learning Workshop

Exercises: Basics of Network Layer Experiential Learning Workshop

UNIVERSITY OF CALIFORNIA

Module 2 OpenFlow Configuration Lab

MP 1: HTTP Client + Server Due: Friday, Feb 9th, 11:59pm

Firewall Evasion Lab: Bypassing Firewalls using VPN

OSiRIS. Project and participants overview Structural overview and site details Orchestration, monitoring and visualization Networking, NMAL, SDN

QBone Scavenger Service Implementation for Linux

GENI Tutorial with tmix Derek O'Neill UNC Chapel Hill

Instituto Superior Técnico, Universidade de Lisboa Network and Computer Security. Lab guide: Traffic analysis and TCP/IP Vulnerabilities

Science DMZ Architecture

Intel 10Gbe status and other thoughts. Linux IPsec Workshop Shannon Nelson Oracle Corp March 2018

Stacked Vlan - Performance Improvement and Challenges

Lab 8: Introduction to Pen Testing (HPING)

OpenFlow Configuration Lab

OPENSTACK CLOUD RUNNING IN A VIRTUAL MACHINE. In Preferences, add 3 Host-only Ethernet Adapters with the following IP Addresses:

Programming Hardware Tables John Fastabend (Intel) Netdev0.1

What is an L3 Master Device?

sottotitolo Network Administration Milano, XX mese 20XX A.A. 2016/17 Federico Reghenzani, Alessandro Barenghi

So What is WireShark?

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

Outline. What is TCP protocol? How the TCP Protocol Works SYN Flooding Attack TCP Reset Attack TCP Session Hijacking Attack

Start the Ubuntu Linux VM in VirtualBox. In the VM X Window session, logon as the default user osboxes.

ERSPAN in Linux. A short history and review. Presenters: William Tu and Greg Rose

November 11, Docker Networking with Linux. Guillaume Urvoy-Keller. Reference Scenario. Basic tools: bridges, VETH

January 27, Docker Networking with Linux. Guillaume Urvoy-Keller. Reference Scenario. Basic tools: bridges, VETH

QEMU Basic. Create the Hardware System

Lab #9: Basic Linux Networking

VPN-against-Firewall Lab: Bypassing Firewalls using VPN

CS155: Computer Security Spring Project #1

TELE3119 Trusted Networks Lab 1(a),(b) Sniffing wireless traffic

Agility2018-TCPdump Documentation

State of the Internet The Need for a New Network Software-Defined Networking (SDN) Network Data Plane SDN Data Plane Technology: OpenFlow

On the Cisco Nexus 5548 Switch, Fibre Channel ports and VSAN ports cannot be configured as ingress source ports in a SPAN session.

Use of Measurement Tools

A Comparative Study of Network Link Emulators

DNS CACHE POISONING LAB

SECURITY+ LAB SERIES. Lab 3: Protocols and Default Network Ports Connecting to a Remote System

Firewalls. IT443 Network Security Administration Slides courtesy of Bo Sheng

ADVANCED COMPUTER NETWORKS Assignment 9: Introduction to OpenFlow

EAN-Network Configuration


DPDK Tools User Guides. Release

Experimenting Internetworking using Linux Virtual Machines Part I

Configuring SPAN. Configuring SPAN. SPAN Sources. This chapter includes the following sections: Configuring SPAN, page 1

Evaluation of virtualization and traffic filtering methods for container networks

Distributed Simulation and Emulation of Mobile Nodes in Dynamic Networks

Virtio/vhost status update

Network Test and Monitoring Tools

HTTP/2 Stream Priority in ATS. ATS Spring 2016 Summit Masaori Koshiba

High-Performance TCP Tips and Tricks

502 / 504 GATEWAY_TIMEOUT errors when browsing to certain sites

Openstack Installation Guide

Using KVM On Ubuntu 7.10 (Gutsy Gibbon)

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

Performance and Scalability of WebRTC

Chapter 5 Network Layer

ebpf Offload Getting Started Guide

ntop Users Group Meeting

DNS Pharming Attack Lab

Packet Analysis - Wireshark

Use of Measurement Tools

LAB THREE STATIC ROUTING

Who fears the spectres?

Packet Capture & Wireshark. Fakrul Alam

Assignment 5: Software Defined Networking CS640 Spring 2015

KauNetEm: Deterministic Network Emulation in Linux

Once the VM is started, the VirtualBox OS Manager window can be closed. But our Ubuntu VM is still running.

Applying TCP Congestion Control Schemes on NDN and their Implications for NDN Congestion Control. Shuo Yang

An Introduction to Open vswitch

This material is based on work supported by the National Science Foundation under Grant No

Installation of the DigitalSystemsVM virtual machine

MeshCentral 2. Installer s Guide. Version July 31, 2018 Ylian Saint-Hilaire

System level traffic shaping in disk servers with heterogeneous protocols

Configuring Linux pppd for Skywire LTE NL-SW-LTE-S7xxx Modem Family

Measuring Application's network behaviour

Worksheet 8. Linux as a router, packet filtering, traffic shaping

HIDDEN SLIDE Summary These slides are meant to be used as is to give an upper level view of perfsonar for an audience that is not familiar with the

ADVANCED COMPUTER NETWORKS Assignment 9: Introduction to OpenFlow

Safari O Reilly CLASS PREPARATION

Use of Measurement Tools

Introduction to the shell Part II

Raw Packet Capture in the Cloud: PF_RING and Network Namespaces. Alfredo

Configuring Linux pppd for a Skywire Global LTE CAT-M1 NL-SW-LTE-QBG96

TEACUP v0.9 A System for Automated TCP Testbed Experiments

Network softwarization Lab session 2: OS Virtualization Networking

Chapter Summaries and Reading

Stateless Firewall Implementation

Automatic Creation of a Virtual Network with VBoxManage [1]

Seccomp, network and namespaces. Francesco Tornieri <francesco.tornieri AT kiratech.it>

Transcription:

Hands&On(VI Transport(Control(Protocol All(prac5ce(within(this(hands&on(are( performed(within(our(latest(vm(image( (ubuntu(14.04) 16.04 infon-vm.ova VM Host&only(interface( Eth0:(192.168.56.101 192.168.56.1 Host NAT&ed(interface( Eth1:(10.0.3.15

PART(I Connec5on(setup(and(release( Connec5on(reset( Using(wget( Observe(Connec5on( Setup(and(Release 1. Prepare(wireshark(and(start(capture(data(on( the(interface(that(connect(to(the(internet( (NAT&ed(interface)( 2. Run( wget (to(download(just(one(small( enough(file.(ex:( $ $ wget wget https://iplab.naist.jp/class/infon/2017/ http://iplab.naist.jp/class/infon/2015/ materials/2017-01-class-overview.pdf materials/2015-01-class-overview.pdf

SETUP RELEASE Simulate(Connec5on(Reset:( Termina5ng(Program 1. Prepare(wireshark(and(capture(data(on(the( Interface(that(connect(to(the(Internet((NAT&ed( interface)( 2. Run( wget (to(download(one(big(enough(file,(so( we(have(5me(to(cut(the(download(process(in( the(middle.(ex:( $ $ wget wget http://download.virtualbox.org/virtualbox/5.1.22/ VirtualBox-5.1.22-115126-OSX.dmg 4.3.26/VirtualBox-4.3.26-98988-OSX.dmg! 3. Don t(wait(un5l(it(finish,(in(the(middle(of( download(process,(press(ctrl+c

RESET-by-Termina6ng-Program Simulate(Connec5on(Reset:( Connec5ng(Nonexistent(Port 1. Prepare(wireshark(and(capture(data(on(the( Interface(that(connect(to(the(Internet((NAT& ed(interface)( 2. Telnet(a(remote(server(at(its(nonexistant( port.(ex:( $ telnet sh.naist.jp 80!

RESET-by-Termina6ng-Program

PART(II Observe(packet(loss( Observe(packet(corrup5on( Observe(packet(re&ordering( Observe(Nagle(Algorithm( Using(scp( Using(iperf( iperf Install(iperf3( ( ($ sudo apt-get install iperf3 iperf(is(a(client&server(applica5on.(for(this( prac5ce(we(have(set&up(5(server:( 163.221.52.226 163.221.52.177:50001&50005( *a(server(can(only(serve(one(connec5on(at(a(5me,(that(means(if( you(can t(connect(to(one(server(instance,(please(try(the(other( Please(also(capture(iperf s(data(using(wireshark( (start(capturing(on(your(nat&ed(interface(before( execute(iperf)(

iperf(parameters Parameters(we(use:( 9c(:(we(will(work(as(client( 9l-10-:(set(the(length(of(buffer.(To(beaer(see(how( Nagle(algorithm(work,(we(should(sending(small( packets((<(40(byte)( 9-N(:(switch(to(disable(TCP(delay((Nagle(algorithm)( 9p-[50001 50002 50003 50004 50005](:(port( number.(use(this(to(change(between(iperf s( server(instance iperf(with(nagle s

iperf(without(nagle s What(is(the(difference?( What(is(that(means?( How(is(that(happened?

Wireshark:(iperf(with(Nagle s Most-packet(however(s5ll(sent-in-small-size((packet(size(50),( even(though(we-are-using-tcp-delay(now,(why(is(that? Sta5s5c(in(Protocol(Hierarchy( with(nagle s Propor5on(of(data(within(one(frame

Wireshark:(iperf(without(Nagle s You(can(also(observe(that(iperf-data-without-Nagle(are(always( encapsulated(within(its(own(packet,(while(some(iperf-data-with- Nagle(are(concatenated(with(other(data( Sta5s5c(in(Protocol(Hierarchy( without(nagle s Propor5on(of(data(within(one(frame

Applying(Netem(for(Egress(Data netem Eth0 wireshark Applying(Netem(for(Ingress(Data wireshark Eth0 Ig0 netem

Applying(netem(for(ingress(data 1. Add(an(Intermediate(Func5onal(Block( pseudo&device((ig)( $ sudo modprobe ifb $ sudo ip link set dev ifb0 up 2. Redirect(incoming(to(eth0(through(ig0( $ sudo tc qdisc add dev eth0 ingress $ sudo tc tc filter add add dev dev eth0 eth0 parent parent ffff: ffff: protocol protocol ip u32 match ip u32 0 0 flowid 1:1 1:1 action mirred mirred egress egress redirect redirect dev ifb0 dev ifb0 List(all(queue(discipline(aker(adding(ig(interface

Packet(Loss 1. Emulate(packet(loss(on(your(ig(interface,(run( this(command:( $ sudo tc qdisc add dev ifb0 root netem loss 10% $ sudo apt-get install openssh-server 2. Prepare(wireshark(and(capture(data(on(your( host&only(interface((eth0)( 3. Run( scp (on(your(host(machine(to(send(a(file( to(your(vm.(ex:( $ scp capture1.pcap in1@192.168.56.101:~/ Change( capture1.pcap (with(any(file(you(would(like(to(use LOSS-PACKET- (CHARACTERIZE-BY-DUPLICATE-ACKNOWLEDGMENT)

Packet(Re&Ordering 1. Restore(default(qdisc(on(your(ig(interface:( $ sudo tc qdisc del dev ifb0 root 2. Emulate(packet(re&ordering(on(your(ig(interface,(run( this(command:( $ sudo tc qdisc add dev ifb0 root netem delay 10ms reorder 25% 50% 3. Prepare(wireshark(and(capture(data(on(your(host& only(interface((eth0)( 4. Run( scp (on(your(host(machine(to(send(a(file(to(your( VM.(Ex:( $ scp capture1.pcap in1@192.168.56.101:~/ Change( capture1.pcap (with(any(file(you(would(like(to(use OUT9OF9ORDER-PACKET

Packet(Corrup5on 1. Make(sure(to(enable(checksum(valida5on(for( TCP(in(your(wireshark( edit(>(preferences(>(protocols(>(tcp(&>(enable( Validate( the(tcp(checksum(if(possible ( 2. Disable(your(interface s(checksum(offloading( feature.(failed(to(do(this(and(your(wireshark( analysis(will(be(flooded(by( false (checksum( error.( $ sudo ethtool -K eth0 enp0s3 rx off tx off sg off gro off gso off Packet(Corrup5on 3. Restore(default(qdisc:( $ sudo tc qdisc del dev ifb0 root 4. Emulate(packet(corrup5on(on(your(network(interface,( run(this(command:( $ sudo tc qdisc add dev enp0s3 eth0 root netem corrupt 10% (Replace( eth0 (with(your(host&only(interface( enp0s3 5. Prepare(wireshark(and(capture(data(on(your(host& only(interface( 6. Run( scp (on(your(host(machine(to(send(a(file(to(your( VM.(Ex:( $ scp capture1.pcap in1@192.168.56.101:~/ Change( capture1.pcap (with(any(file(you(would(like(to(use

CORRUPT