1 vtl: a transparent network service framework john r. lange and peter a. dinda prescience lab...
TRANSCRIPT
![Page 1: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/1.jpg)
1
VTL: A Transparent Network Service Framework
John R. Lange
and
Peter A. DindaPrescience Lab
Department of Electrical Engineering and Computer Science
Northwestern University
http://plab.cs.northwestern.edu
![Page 2: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/2.jpg)
Transparent Network Services
• Manipulate data and signaling of flows/connections to add services to existing unmodified applications and OSes– High Level transformations of Low Level traffic– Transparency: Manipulations invisible to guest
environment
• VTL (Virtual Traffic Layer)– A framework for creating Transparent Network
Services
• Wide range of possible services– Many useful for HPDC
![Page 3: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/3.jpg)
Outline
• Defining Transparent Network Services• Motivation• VTL Framework
– Architecture– Performance
• Example Transparent Network Services– Protocol Transformations– Anonymous Networking– …
• Conclusion and Future Work
![Page 4: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/4.jpg)
Transparency
• Improving Existing Unmodified Applications– Invisible to connection end points– No changes to guest environment– Seamless integration of networking techniques
• Transparency readily available with VMS– Provide transparent bridge– Service integration below virtual hardware
![Page 5: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/5.jpg)
Network Services
• Implement high level functions• Operate on low level network traffic
– Monitor– Control – Manipulate
• Traffic Data• Signaling
• Unique challenges in Virtual Environments– E.g. Migration
![Page 6: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/6.jpg)
Motivation
• HPDC 2005 -- VRESERVE– Automatic Optical Network Reservations for
unmodified applications– Demonstrated performance gains over
standard internet routes
• Performance Issues– TCP applications ill suited for optical networks
J. Lange, A. Sundararaj, and P. Dinda, Automatic Dynamic Run-time Optical Network Reservations, Proceedings of the 14th IEEE International Symposium on High Performance Distributed Computing, (HPDC 2005)
![Page 7: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/7.jpg)
TCP over Optical Networks
• Optical Networks have high BDPs– Bandwidth Delay
Products– Very High bandwidth– Long distance
• High relative latency
– TCP breaks downCopyright 2004 National LambdaRail, Inc
D. Petravick, Fermilab
![Page 8: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/8.jpg)
Typical BDP values
• Assume endpoints are on opposite ends of the earth– Real world example: CERN and StarLight– Latency lower bound is ~60ms
• Half circumference of earth / Speed of light• CERN <–> FNAL has a measured ~60 ms delay
– D. Petravick, Fermilab
– Optical Networks currently operate at 10 Gbps• But 1 GigE NICs are most common
– TCP Window Size (BDP):• 10 Gbps ~= 70 MB• 1 Gbps ~= 7MB
• SACK lookups cause TCP timeouts– Window size 1
![Page 9: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/9.jpg)
Transparently Optimize high BDP flows
• High performance protocols exist– UDT/SABUL, RBUDP, etc…– But applications must be configured for them
• Need method of transforming TCP to UDT– Opens UDT connections based on SYNs– Transmits data segments over UDT
![Page 10: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/10.jpg)
VTL
• Transparent Network Service Framework– Network device interface– Packet modification and creation– Rapid prototyping and evaluation
• Capabilities– Virtual TCP endpoint– Transparent packet generator
• Acks, keep-alive– Packet header and content modifications– Not confined to virtual machines
![Page 11: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/11.jpg)
VTL Components
• Network Interface API– Reads/Writes packets to/from network
interfaces
• Packet Access API– Reading and writing packet data
• State Models– Maintain state of connection endpoints
![Page 12: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/12.jpg)
Network Interface API
• Common interface for packet capture and injection– Virtual or Real devices– Unix or Windows
• Built on PCAP and libnet
• Operations– Connect/Disconnect– Read/Write– Packet notifications
![Page 13: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/13.jpg)
Packet Access API
• Packet inspection and modification– Primitives to access standard fields
• Higher level functions built on primitives– Packet class queries– Field swapping– Header calculations– Derivative packet creation
![Page 14: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/14.jpg)
Connection State Models
• Maintain and manipulate protocol state– Layered architecture
• Create packets belonging to a connection• State kept for both connection endpoints
– Generate packets from either endpoint
• API operation– Manual or packet based
• Model Initialization• State Updates• Packet Creation
![Page 15: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/15.jpg)
Module
VM
Hosting Server
VMM (VMWare, Xen, etc)
VNET
Host-onlyinterface
VNET Overlay
VTLUDT Flow Over Optical
Network
VTL Configuration
Physicalinterface
Sundararaj, A., Gupta, A., , and Dinda, P. Increasing application performance in virtual environments through run-time inference and adaptation. In Proc. of the 14th IEEE International Symposium on High Performance Distributed Computing (HPDC) (July 2005)
(Windows or Unix)
![Page 16: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/16.jpg)
Baseline Performance
• Limited by Network Interface API– Implemented in user space
• PCAP + libnet
• Experimental setup– Simple interface bridge (virtual->real)
• Xen bridge• Single process (half duplex)• Two processes (full duplex)
![Page 17: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/17.jpg)
Baseline PerformanceB
and
wid
th (
MB
/s)
Xen Bridge One VTLProcess
Two VTLProcesses
Overhead Measurements
![Page 18: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/18.jpg)
Protocol Transformation for High BDP networks
• Addresses performance of TCP over optical
• VTL allows transformation of TCP flows to other transport protocols
• VTL module acts as virtual TCP endpoint– Implements TCP states
• SYN sequence (open)• FIN sequence (close)• Data Transfer over new protocol (established)
![Page 19: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/19.jpg)
Code Example – Creating Packets
int create_data_pkt(vtl_model_t * model,char * data, int data_len) {
RawEthernetPacket data_pkt;create_empty_pkt(model, &data_pkt, INBOUND_PKT);
memcpy(TCP_DATA(data_pkt), data, data_len);
compute_ip_len(&data_pkt, data_len);compute_ip_checksum(&data_pkt);compute_tcp_checksum(&data_pkt);
sync_model(model, &data_pkt);
queue_pkt(&data_pkt);}
![Page 20: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/20.jpg)
Performance Evaluation Setup
• Comparing TCP vs. VTL + UDT• Added artificial latency to gigabit switch
– Linux iproute2 + tc netem
• TTCP benchmark– Standard TCP (Host to host)– TCP with intelligent socket buffers (Host to host)– VTL + UDT (Xen VM to Xen VM)
• Note: No virtualization present for TCP tests– Same hardware
![Page 21: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/21.jpg)
PerformanceB
and
wid
th (
MB
/s)
Latency (ms)
![Page 22: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/22.jpg)
More Transparent Network Services
• Socks (TOR)
• Subnet Tunneling
• VM Migration Support (TCP keep alive)
• Stateful Firewall
• Performance Enhancing Proxies– RFC 3135– Local acknowledgements
![Page 23: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/23.jpg)
TOR NETWORK
Tor Server
VM
Hosting Service
VMM (VMWare, Xen, etc)
VTL Host-onlyinterface
VTL Interface
SOCKS Connection
TCP Connections + DNS lookups
Anonymous Networking for Any Application
• Tor Anonymous Network (http://tor.eff.org)– Anonymizes source of any TCP connection– Functions as a SOCKS proxy– Requires SOCKS application support
![Page 24: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/24.jpg)
Tor + VTL
• VTL implements transparent SOCKS interface– VTL simulates a TCP endpoint– Extracts data segment from TCP packet and transmits it over
SOCKS tunnel– Data from SOCKS is encapsulated into TCP packets and
delivered to VM• Gotchas
– DNS is UDP based• VTL handles DNS case for UDP
– ARPs• VTL answers ARPs with a fake MAC address
• All tcp connections from a VM are anonymized– No modification to OS or applications– User not restricted to applications implementing socks
![Page 25: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/25.jpg)
Transparent Security
• Iptables and Windows Firewall are now ubiquitous– Not perfect
• Successful attacker can alter rules• Only as strong as the weakest link
• VTL rules are not accessible by VM– Even if VM is compromised firewall rules are
safe
![Page 26: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/26.jpg)
VNET Overlay(Internet)
VNET Proxy(PROXY2)
VNET Proxy(PROXY1)
Gateway(GW2)
Gateway(GW1)
InternetLAN connection
234.234.1.0/24
123.123.1.0/24
VM1
VM2
123.123.1.50
234.234.1.50
234.234.1.1
123.123.1.110.10.0.0/16
GatewayRouter
Subnet Tunneling
MAC Address Mismatch!
![Page 27: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/27.jpg)
Subnet Tunneling
• Two VMs on different subnets communicating– Fast Path link is available between them
• Bypasses routers
• VMs use subnet gateway– Set gateway MAC as destination
• VTL rewrites destination MAC addresses– Route packets on fast path link
![Page 28: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/28.jpg)
Network Suspension during VM Migrations
• A VM is suspended for a long duration– i.e. VM is migrating over WAN– Open TCP connections begin to timeout
• In order to maintain connections VTL generates keep-alive packets
• Secondary service must handle routing– i.e. VNET
![Page 29: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/29.jpg)
Cooperative Selective Wormholing
• Distributed traffic aggregation for Network Intrusion Detection Systems
• Wormhole– Tunnel traffic from a remote sensor to backend NIDS– VTL mechanisms for packet capture and injection
• Cooperative– Volunteer machines aggregate traffic– VTL implementation cross platform
• Selective– Aggregates traffic that Volunteer client is not interested in– VTL mechanisms for packet inspection
• J. Lange, P. Dinda, and F. Bustamante, Vortex: Enabling Cooperative Selective Wormholing for Network Security Systems, Proceedings of the 10th International Symposium on Recent Advances in Intrusion Detection (To Appear)
![Page 30: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/30.jpg)
Future Work
• Generalizable to complete IO framework
• Performance– VMM based implementation
• Automatic Service Adaptation
![Page 31: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/31.jpg)
Conclusion
• Transparent Network Services allow high level transformations of low level network traffic
• VTL– A framework for creating Transparent Network
Services
• Wide range of potential services– Many useful for HPDC
![Page 32: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/32.jpg)
• Prescience Lab– http://plab.cs.northwestern.edu
• Virtuoso– http://virtuoso.cs.northwestern.edu
• John Lange– http://www.artifex.org/~jarusl
![Page 33: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/33.jpg)
Vortex
• Cooperative Selective Wormhole implementation
• VTL – Traffic capture and injection – Packet modifications
• Rewrite addresses• Anonymize packets
– Cross platform functionality
![Page 34: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/34.jpg)
Vortex
VTL
PCAP libnetFirewall
NIC
VNETProxy
Apps
IDSAnalysisBackend
VNETOverlay
Windows/UNIX
Commodity PC
OperatingSystem
PhysicalHoneypot
VM BasedHoneypot
VM
Backend Network
Vortex Architecture
![Page 35: 1 VTL: A Transparent Network Service Framework John R. Lange and Peter A. Dinda Prescience Lab Department of Electrical Engineering and Computer Science](https://reader035.vdocument.in/reader035/viewer/2022062621/551c3c835503467b488b48d8/html5/thumbnails/35.jpg)
VNET Overlay
VNET Proxy(PROXY2)
VNET Proxy(PROXY1)
Gateway(GW2)
Gateway(GW1)
InternetLAN connection
234.234.1.0/24
123.123.1.0/24
VM1
VM2
123.123.1.50
234.234.1.50
234.234.1.1
123.123.1.110.10.0.0/16
GatewayRouter
Subnet Tunneling