Advanced Topicson Network Socket Programming

Size: px
Start display at page:

Download "Advanced Topicson Network Socket Programming"

Transcription

1 Advanced Topics on Network Socket Programming Computer Science Department, University of Crete Manolis Surligas October 18, 2017 Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

2 Custom Packet headers Each layer has its own headers Application layer may have its own Indeed most applications introduce custom packet headers Possible application header fields: - Application version - Sequence number - CRC Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

3 Custom Packet headers Example of HTTP header structure Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

4 The problem is that the send(), sendto(), recv(), recvfrom() take as argument a single buffer A packet header may consist from integers, shorts, etc How we can efficiently create the header? Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

5 Assume that the header of each of our packets is: Seq Number: 32 bits Type: 16 bits Version: 8 bits Data: X bits Create a struct that describes properly the header attributes s t r u c t c u s t o m h e a d e r { u i n t 3 2 t seq number ; u i n t 1 6 t t y p e ; u i n t 8 t v e r s i o n ; } ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

6 Fill in the appropriate values / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = ; h e a d e r t y p e = TYPE DATA PACKET ; h e a d e r v e r s i o n = 1 ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

7 Fill in the appropriate values / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = ; h e a d e r t y p e = TYPE DATA PACKET ; h e a d e r v e r s i o n = 1 ; Is the assignment right? Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

8 Fill in the appropriate values / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = ; h e a d e r t y p e = TYPE DATA PACKET ; h e a d e r v e r s i o n = 1 ; Is the assignment right? NO!! Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

9 Fill in the appropriate values always taking care the endianess / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = h t o n l ( ) ; h e a d e r t y p e = h t o n s (TYPE DATA PACKET ) ; h e a d e r v e r s i o n = 1 ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

10 Fill in the appropriate values always taking care the endianess / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = h t o n l ( ) ; h e a d e r t y p e = h t o n s (TYPE DATA PACKET ) ; h e a d e r v e r s i o n = 1 ; Why the version field is not needed to be converted in Network Byte Order? Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

11 Copy the header in the buffer / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 u i n t 8 t b u f f e r [ ] ; s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = h t o n l ( ) ; h e a d e r t y p e = h t o n s (TYPE DATA PACKET ) ; h e a d e r v e r s i o n = 1 ; memcpy ( b u f f e r, &header, s i z e o f ( h e a d e r ) ) ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

12 After the header fill also the data / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 u i n t 8 t b u f f e r [ ] ; s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = h t o n l ( ) ; h e a d e r t y p e = h t o n s (TYPE DATA PACKET ) ; h e a d e r v e r s i o n = 1 ; memcpy ( b u f f e r, &header, s i z e o f ( h e a d e r ) ) ; memcpy ( b u f f e r + s i z e o f ( h e a d e r ), data, d a t a l e n ) ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

13 And send them through the network! / Packet t h a t c a r r i e s a p p l i c a t i o n data / #d e f i n e TYPE DATA PACKET 28 u i n t 8 t b u f f e r [ ] ; s t r u c t c u s t o m h e a d e r h e a d e r ; h e a d e r seq number = h t o n l ( ) ; h e a d e r t y p e = h t o n s (TYPE DATA PACKET ) ; h e a d e r v e r s i o n = 1 ; memcpy ( b u f f e r, &header, s i z e o f ( h e a d e r ) ) ; memcpy ( b u f f e r + s i z e o f ( h e a d e r ), data, d a t a l e n ) ; send ( sd, b u f f e r, d a t a l e n + s i z e o f ( h e a d e r ), 0 ) ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

14 Retrieve custom headers At the receiver side, recv(), recvfrom() place the data in plain buffers We want to retrieve easily the packet header fields This can be easily accomplished with pointers Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

15 Retrieve custom headers u i n t 8 t b u f f e r [ ] ; s t r u c t c u s t o m h e a d e r h e a d e r ; u i n t 8 t data ; / R e c e i v e data / r e c v ( sd, b u f f e r, 1024, 0 ) ; h e a d e r = ( s t r u c t c u s t o m h e a d e r ) b u f f e r ; data = b u f f e r + s i z e o f ( s t r u c t c u s t o m h e a d e r ) ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

16 Retrieve custom headers u i n t 8 t b u f f e r [ ] ; s t r u c t c u s t o m h e a d e r h e a d e r ; u i n t 8 t data ; / R e c e i v e data / r e c v ( sd, b u f f e r, 1024, 0 ) ; h e a d e r = ( s t r u c t c u s t o m h e a d e r ) b u f f e r ; data = b u f f e r + s i z e o f ( s t r u c t c u s t o m h e a d e r ) ; Are we done? NO!! Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

17 Retrieve custom headers Header is in network byte order We must convert it back u i n t 8 t b u f f e r [ ] ; s t r u c t c u s t o m h e a d e r h e a d e r ; s t r u c t c u s t o m h e a d e r h e a d e r h o s t ; u i n t 8 t data ; / R e c e i v e data / r e c v ( sd, b u f f e r, 1024, 0 ) ; h e a d e r = ( s t r u c t c u s t o m h e a d e r ) b u f f e r ; data = b u f f e r + s i z e o f ( s t r u c t c u s t o m h e a d e r ) ; h e a d e r h o s t seq number = n t o h l ( header >seq number ) ; h e a d e r h o s t t y p e = n t o h s ( header >t y p e ) ; h e a d e r h o s t v e r s i o n = header >v e r s i o n ; Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

18 Socket options Each network application is unique The default socket behavior may not fit the needs of an application The socket POSIX API allows the programmer to alter the default behavior of a socket Eg: - blocking/non-blocking data reception - timeout on transmit/receive - Custom transport layer parameters (TCP window size, Nagle s algorithm etc) Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

19 Socket options Prototype #i n c l u d e <s y s / s o c k e t h> i n t s e t s o c k o p t ( i n t s o c k e t, i n t l e v e l, i n t option name, c o n s t v o i d o p t i o n v a l u e, s o c k l e n t o p t i o n l e n ) ; level: Corresponds to the layer we want to set the option For TCP and UDP are IPPROTO TCP and IPPROTO UDP Others are defined in netinet/inh option name: The name of the option Available options for TCP and UDP can be found in the man pages (man tcp, man udp) option value: pointer to a variable holding the option value option len: The size of the variable holding the option value Manolis Surligas (CSD, UoC) Advanced Topicson Network Socket Programming October 18, / 15

Socket Programming. Daniel Zappala. CS 360 Internet Programming Brigham Young University

Socket Programming. Daniel Zappala. CS 360 Internet Programming Brigham Young University Socket Programming Daniel Zappala CS 360 Internet Programming Brigham Young University Sockets, Addresses, Ports Clients and Servers 3/33 clients request a service from a server using a protocol need an

More information

E8 TCP. Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione

E8 TCP. Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione E8 TP Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione Exercises o onsider the connection in the figure A =80 kbit/s τ =0 ms R =? τ =? B o o o Host A wants to know the capacity

More information

The Analysis of Microburst (Burstiness) on Virtual Switch

The Analysis of Microburst (Burstiness) on Virtual Switch The Analysis of Microburst (Burstiness) on Virtual Switch Chunghan Lee Fujitsu Laboratories 09.19.2016 Copyright 2016 FUJITSU LABORATORIES LIMITED Background What is Network Function Virtualization (NFV)?

More information

Computer Networks ( Classroom Practice Booklet Solutions)

Computer Networks ( Classroom Practice Booklet Solutions) Computer Networks ( Classroom Practice Booklet Solutions). Concept Of Layering 0. Ans: (b) Sol: Data Link Layer is responsible for decoding bit stream into frames. 0. Ans: (c) Sol: Network Layer has the

More information

Leopold Franzens University Innsbruck. Responding to Spurious Loss Events in TCP/IP. Master Thesis. Institute of Computer Science

Leopold Franzens University Innsbruck. Responding to Spurious Loss Events in TCP/IP. Master Thesis. Institute of Computer Science Leopold Franzens University Innsbruck Institute of Computer Science Distributed and Parallel Systems Group Responding to Spurious Loss Events in TCP/IP Master Thesis Supervisor: Dr. Michael Welzl Author:

More information

1. Write a program to calculate distance traveled by light

1. Write a program to calculate distance traveled by light G. H. R a i s o n i C o l l e g e O f E n g i n e e r i n g D i g d o h H i l l s, H i n g n a R o a d, N a g p u r D e p a r t m e n t O f C o m p u t e r S c i e n c e & E n g g P r a c t i c a l M a

More information

CS 3411 Systems Programming

CS 3411 Systems Programming CS 3411 Systems Programming Department of Computer Science Michigan Technological University Sockets Today's Topics New Way of Communicating Between Processes Sockets Standard" Unix Processes/IPC IPC stands

More information

Reliable Data Transport: Sliding Windows

Reliable Data Transport: Sliding Windows Reliable Data Transport: Sliding Windows 6.02 Fall 2013 Lecture 23 Exclusive! A Brief History of the Internet guest lecture by Prof. Hari Balakrishnan Wenesday December 4, 2013, usual 6.02 lecture time

More information

Boost UDP Transaction Performance

Boost UDP Transaction Performance Boost UDP Transaction Performance Toshiaki Makita NTT Open Source Software Center Today's topics Background Basic technologies for network performance How to improve UDP performance 2 Who is Toshiaki Makita?

More information

10:00 12:30. Do not open this problem booklet until the start of the examination is announced.

10:00 12:30. Do not open this problem booklet until the start of the examination is announced. 21 I 20 8 26 10:00 12:30 (1),. Do not open this problem booklet until the start of the examination is announced. (2) 4.. Answer the following 4 problems. Use the designated answer sheet for each problem.

More information

DNP V3.00 Level2. ProtocolAssignm entsusermanual

DNP V3.00 Level2. ProtocolAssignm entsusermanual DNP V3.00 Level2 ProtocolAssignm entsusermanual Electro Industries/GaugeTech assumes no responsibility for any inaccuracies and/or errors that may appear in this document. The information printed in this

More information

Concurrent HTTP Proxy Server. CS425 - Computer Networks Vaibhav Nagar(14785)

Concurrent HTTP Proxy Server. CS425 - Computer Networks Vaibhav Nagar(14785) Concurrent HTTP Proxy Server CS425 - Computer Networks Vaibhav Nagar(14785) Email: vaibhavn@iitk.ac.in August 31, 2016 Elementary features of Proxy Server Proxy server supports the GET method to serve

More information

First step: Construction of Extreme Rainfall timeseries

First step: Construction of Extreme Rainfall timeseries First step: Construction of Extreme Rainfall timeseries You may compile timeseries of extreme rainfalls from accumulated intervals within the environment of Hydrognomon or import your existing data e.g.

More information

cs/ee/ids 143 Communication Networks

cs/ee/ids 143 Communication Networks cs/ee/ids 143 Communication Networks Chapter 4 Transport Text: Walrand & Parakh, 2010 Steven Low CMS, EE, Caltech Agenda Internetworking n Routing across LANs, layer2-layer3 n DHCP n NAT Transport layer

More information

PIQI-RCP: Design and Analysis of Rate-Based Explicit Congestion Control

PIQI-RCP: Design and Analysis of Rate-Based Explicit Congestion Control PIQI-RCP: Design and Analysis of Rate-Based Explicit Congestion Control Saurabh Jain Joint work with Dr. Dmitri Loguinov June 21, 2007 1 Agenda Introduction Analysis of RCP QI-RCP PIQI-RCP Comparison Wrap

More information

Appendix 4 Weather. Weather Providers

Appendix 4 Weather. Weather Providers Appendix 4 Weather Using weather data in your automation solution can have many benefits. Without weather data, your home automation happens regardless of environmental conditions. Some things you can

More information

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power) EECS 150 - Components and esign Techniques for igital Systems Lec 26 CRCs, LFSRs (and a little power) avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler

More information

Protocols for Packet Quantum Network Intercommunication

Protocols for Packet Quantum Network Intercommunication Protocols for Packet Quantum Network Intercommunication arxiv:1903.10685v1 [quant-ph] 6 Mar 019 Nengkun Yu Centre for Quantum Software and Information, School of Software, Faculty of Engineering and Information

More information

FlowSpec. Frédéric Gabut-Deloraine. FRnOG - 2 décembre 2011 NEO TELECOMS

FlowSpec. Frédéric Gabut-Deloraine. FRnOG - 2 décembre 2011 NEO TELECOMS FlowSpec Frédéric Gabut-Deloraine NEO TELECOMS FRnOG - 2 décembre 2011 Introduction Dissemination of Flow Specification Rules D(D)oS filtering Regular use Easy to disseminate Agenda Background Forwarding

More information

Dynamic Silicon Firewall

Dynamic Silicon Firewall Dynamic Silicon Firewall A Thesis Submitted to the College of Graduate Studies and Research in Partial Fulfillment of the Requirements for the degree of Master of Science in the Department of Electrical

More information

Knocking down the HACIENDA with TCP Stealth

Knocking down the HACIENDA with TCP Stealth Knocking down the HACIENDA with TCP Stealth Christian Grothoff Actual work: Julian Kirsch Technische Universität München July 23, 2015 Knocking down the HACIENDA 1/29 Knocking down the HACIENDA 2/29 Knocking

More information

CS 798: Homework Assignment 3 (Queueing Theory)

CS 798: Homework Assignment 3 (Queueing Theory) 1.0 Little s law Assigned: October 6, 009 Patients arriving to the emergency room at the Grand River Hospital have a mean waiting time of three hours. It has been found that, averaged over the period of

More information

Approximate Fairness with Quantized Congestion Notification for Multi-tenanted Data Centers

Approximate Fairness with Quantized Congestion Notification for Multi-tenanted Data Centers Approximate Fairness with Quantized Congestion Notification for Multi-tenanted Data Centers Abdul Kabbani Stanford University Joint work with: Mohammad Alizadeh, Masato Yasuda, Rong Pan, and Balaji Prabhakar

More information

Antonio Falabella. 3 rd nternational Summer School on INtelligent Signal Processing for FrontIEr Research and Industry, September 2015, Hamburg

Antonio Falabella. 3 rd nternational Summer School on INtelligent Signal Processing for FrontIEr Research and Industry, September 2015, Hamburg INFN - CNAF (Bologna) 3 rd nternational Summer School on INtelligent Signal Processing for FrontIEr Research and Industry, 14-25 September 2015, Hamburg 1 / 44 Overview 1 2 3 4 5 2 / 44 to Computing The

More information

NICTA Short Course. Network Analysis. Vijay Sivaraman. Day 1 Queueing Systems and Markov Chains. Network Analysis, 2008s2 1-1

NICTA Short Course. Network Analysis. Vijay Sivaraman. Day 1 Queueing Systems and Markov Chains. Network Analysis, 2008s2 1-1 NICTA Short Course Network Analysis Vijay Sivaraman Day 1 Queueing Systems and Markov Chains Network Analysis, 2008s2 1-1 Outline Why a short course on mathematical analysis? Limited current course offering

More information

Midterm 1. Name: TA: U.C. Berkeley CS70 : Algorithms Midterm 1 Lecturers: Anant Sahai & Christos Papadimitriou October 15, 2008

Midterm 1. Name: TA: U.C. Berkeley CS70 : Algorithms Midterm 1 Lecturers: Anant Sahai & Christos Papadimitriou October 15, 2008 U.C. Berkeley CS70 : Algorithms Midterm 1 Lecturers: Anant Sahai & Christos Papadimitriou October 15, 2008 Name: Midterm 1 TA: Answer all questions. Read them carefully first. Be precise and concise. The

More information

AlphaVision-5.3. Integrated, Ethernetconnected. spectrometers. 32-bit software for Windows 2000 and XP Professional ORTEC

AlphaVision-5.3. Integrated, Ethernetconnected. spectrometers. 32-bit software for Windows 2000 and XP Professional ORTEC AlphaVision-5.3 Integrated, Ethernetconnected alpha spectrometers 32-bit software for Windows 2000 and XP Professional Alpha Vision 5.3 What makes us the best???? We are the cutting edge!!!! Introduction

More information

Capturing Network Traffic Dynamics Small Scales. Rolf Riedi

Capturing Network Traffic Dynamics Small Scales. Rolf Riedi Capturing Network Traffic Dynamics Small Scales Rolf Riedi Dept of Statistics Stochastic Systems and Modelling in Networking and Finance Part II Dependable Adaptive Systems and Mathematical Modeling Kaiserslautern,

More information

application API transport network data-link physical

application API transport network data-link physical !! " # $ % & ' % ( )* )+), -. / 0 ' & 1 % 2 3 )1 4 3 1 5 )* ), ). 4 5 1 0 6 % & / 1 4 &. 7 8 +1 3 & % )3 6 + 8 4 9 ) 4 1 1 % ) 4 9 6 4 : -. / 0 ' & 1 % 2 3 )1 4 3 1, ; 4 )* 1 %, )&

More information

Infrared Tire Temperature Sensor, IRTS-V2 - Datasheet

Infrared Tire Temperature Sensor, IRTS-V2 - Datasheet The Izze-Racing tire temperature sensor is specifically designed to measure the highly transient surface temperature of a tire with spatial fidelity, providing invaluable information for chassis tuning,

More information

CSE 123: Computer Networks

CSE 123: Computer Networks CSE 123: Computer Networks Total points: 40 Homework 1 - Solutions Out: 10/4, Due: 10/11 Solutions 1. Two-dimensional parity Given below is a series of 7 7-bit items of data, with an additional bit each

More information

Modeling Impact of Delay Spikes on TCP Performance on a Low Bandwidth Link

Modeling Impact of Delay Spikes on TCP Performance on a Low Bandwidth Link Modeling Impact of Delay Spikes on TCP Performance on a Low Bandwidth Link Pasi Lassila and Pirkko Kuusela Networking Laboratory Helsinki University of Technology (HUT) Espoo, Finland Email: {Pasi.Lassila,Pirkko.Kuusela

More information

Lan Performance LAB Ethernet : CSMA/CD TOKEN RING: TOKEN

Lan Performance LAB Ethernet : CSMA/CD TOKEN RING: TOKEN Lan Performance LAB Ethernet : CSMA/CD TOKEN RING: TOKEN Ethernet Frame Format 7 b y te s 1 b y te 2 o r 6 b y te s 2 o r 6 b y te s 2 b y te s 4-1 5 0 0 b y te s 4 b y te s P r e a m b le S ta r t F r

More information

MCS 260 Exam 2 13 November In order to get full credit, you need to show your work.

MCS 260 Exam 2 13 November In order to get full credit, you need to show your work. MCS 260 Exam 2 13 November 2015 Name: Do not start until instructed to do so. In order to get full credit, you need to show your work. You have 50 minutes to complete the exam. Good Luck! Problem 1 /15

More information

A Stochastic Model for TCP with Stationary Random Losses

A Stochastic Model for TCP with Stationary Random Losses A Stochastic Model for TCP with Stationary Random Losses Eitan Altman, Kostya Avrachenkov Chadi Barakat INRIA Sophia Antipolis - France ACM SIGCOMM August 31, 2000 Stockholm, Sweden Introduction Outline

More information

MODULE 9 NORMAL DISTRIBUTION

MODULE 9 NORMAL DISTRIBUTION MODULE 9 NORMAL DISTRIBUTION Contents 9.1 Characteristics of a Normal Distribution........................... 62 9.2 Simple Areas Under the Curve................................. 63 9.3 Forward Calculations......................................

More information

CS276 Homework 1: ns-2

CS276 Homework 1: ns-2 CS276 Homework 1: ns-2 Erik Peterson October 28, 2006 1 Part 1 - Fairness between TCP variants 1.1 Method After learning ns-2, I wrote a script (Listing 3) that runs a simulation of one or two tcp flows

More information

Number Theory: Representations of Integers

Number Theory: Representations of Integers Instructions: In-class exercises are meant to introduce you to a new topic and provide some practice with the new topic. Work in a team of up to 4 people to complete this exercise. You can work simultaneously

More information

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing Alexandre Dulaunoy Andras Iklody TLP:WHITE June 16, 2016 Why we want to go more modular... Ways to extend

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world. Outline EECS 150 - Components and esign Techniques for igital Systems Lec 18 Error Coding Errors and error models Parity and Hamming Codes (SECE) Errors in Communications LFSRs Cyclic Redundancy Check

More information

IEEE abc-01/22r1

IEEE abc-01/22r1 Project IEEE 802.16 Broadband Wireless Access Working Group Title An ARQ proposal for consideration by TG3/4 MAC group Date Submitted 2001-08 -31 Source(s) Yigal Leiba Itzik Kitroser

More information

Fractal Analysis of Intraflow Unidirectional Delay over W-LAN and W-WAN WAN Environments

Fractal Analysis of Intraflow Unidirectional Delay over W-LAN and W-WAN WAN Environments Fractal Analysis of Intraflow Unidirectional Delay over W-LAN and W-WAN WAN Environments Dimitrios Pezaros with Manolis Sifalakis and Laurent Mathy Computing Department Lancaster University [dp@comp.lancs.ac.uk]

More information

Modeling and Simulation NETW 707

Modeling and Simulation NETW 707 Modeling and Simulation NETW 707 Lecture 6 ARQ Modeling: Modeling Error/Flow Control Course Instructor: Dr.-Ing. Maggie Mashaly maggie.ezzat@guc.edu.eg C3.220 1 Data Link Layer Data Link Layer provides

More information

GIS: Definition, Software. IAI Summer Institute 19 July 2000

GIS: Definition, Software. IAI Summer Institute 19 July 2000 GIS: Definition, Software IAI Summer Institute 19 July 2000 What is a GIS? Geographic Information System Definitions DeMers (1997): Tools that allow for the processing of spatial data into information,

More information

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application Administrivia 1. markem/cs333/ 2. Staff 3. Prerequisites 4. Grading Course Objectives 1. Theory and application 2. Benefits 3. Labs TAs Overview 1. What is a computer system? CPU PC ALU System bus Memory

More information

New SPOT Program. Customer Tutorial. Tim Barry Fire Weather Program Leader National Weather Service Tallahassee

New SPOT Program. Customer Tutorial. Tim Barry Fire Weather Program Leader National Weather Service Tallahassee New SPOT Program Customer Tutorial Tim Barry Fire Weather Program Leader National Weather Service Tallahassee tim.barry@noaa.gov Live Demonstration http://www.weather.gov/spot/ Live Demonstration http://www.weather.gov/spot/

More information

How to Make or Plot a Graph or Chart in Excel

How to Make or Plot a Graph or Chart in Excel This is a complete video tutorial on How to Make or Plot a Graph or Chart in Excel. To make complex chart like Gantt Chart, you have know the basic principles of making a chart. Though I have used Excel

More information

Assignment 4: Object creation

Assignment 4: Object creation Assignment 4: Object creation ETH Zurich Hand-out: 13 November 2006 Due: 21 November 2006 Copyright FarWorks, Inc. Gary Larson 1 Summary Today you are going to create a stand-alone program. How to create

More information

Implementation of the IEEE 1588 Precision Time Protocol for Clock Synchronization in the Radio Detection of Ultra-High Energy Neutrinos

Implementation of the IEEE 1588 Precision Time Protocol for Clock Synchronization in the Radio Detection of Ultra-High Energy Neutrinos i Implementation of the IEEE 1588 Precision Time Protocol for Clock Synchronization in the Radio Detection of Ultra-High Energy Neutrinos Undergraduate Research Thesis Presented in partial fulfillment

More information

Performance Analysis of the IEEE e Block ACK Scheme in a Noisy Channel

Performance Analysis of the IEEE e Block ACK Scheme in a Noisy Channel Performance Analysis of the IEEE 802.11e Block ACK Scheme in a Noisy Channel Tianji Li, Qiang Ni, Hamilton Institute, NUIM, Ireland. Thierry Turletti, Planete Group, INRIA, France. Yang Xiao, University

More information

PROJECT 3 Math Tutorial HTML/CSS Website

PROJECT 3 Math Tutorial HTML/CSS Website Huntington Park High School Internet Publishing 1B PROJECT 3 Math Tutorial HTML/CSS Website Project 3 Due: 3/16 Storyboard Due: 3/9 You will work together with your group to create a website that follow

More information

Anatomy of SINGULAR talk at p. 1

Anatomy of SINGULAR talk at p. 1 Anatomy of SINGULAR talk at MaGiX@LIX 2011- p. 1 Anatomy of SINGULAR talk at MaGiX@LIX 2011 - Hans Schönemann hannes@mathematik.uni-kl.de Department of Mathematics University of Kaiserslautern Anatomy

More information

DATA SHEET. Thermocouple module with digital I²C-Interface - THMOD-I²C. Characteristic features. Areas of application. Features.

DATA SHEET. Thermocouple module with digital I²C-Interface - THMOD-I²C. Characteristic features. Areas of application. Features. Description Characteristic features Industrial temperature measuring method Wide measuring range, -270...+1360 C Digital I²C-interface Simple integration to micro-controller Scope of supply with thermocouple,

More information

C++ For Science and Engineering Lecture 17

C++ For Science and Engineering Lecture 17 C++ For Science and Engineering Lecture 17 John Chrispell Tulane University Monday October 4, 2010 Functions and C-Style Strings Three methods for representing the C-style string: An array of char A quoted

More information

BTstack Getting Started. Using MSP430 Examples. Dr. sc. Milanka Ringwald Dr. sc. Matthias Ringwald

BTstack Getting Started. Using MSP430 Examples. Dr. sc. Milanka Ringwald Dr. sc. Matthias Ringwald VERSION 1.1 August 30, 2013 BTstack Getting Started Using MSP430 Examples Dr. sc. Milanka Ringwald Dr. sc. Matthias Ringwald contact@bluekitchen-gmbh.com Contents 1. Get started with BTstack and MSP-EXP430F5438

More information

Ligand Scout Tutorials

Ligand Scout Tutorials Ligand Scout Tutorials Step : Creating a pharmacophore from a protein-ligand complex. Type ke6 in the upper right area of the screen and press the button Download *+. The protein will be downloaded and

More information

Informatics 1 - Computation & Logic: Tutorial 3

Informatics 1 - Computation & Logic: Tutorial 3 Informatics 1 - Computation & Logic: Tutorial 3 Counting Week 5: 16-20 October 2016 Please attempt the entire worksheet in advance of the tutorial, and bring all work with you. Tutorials cannot function

More information

Getting Connected. Chapter 2, Part 2. Networking CS 3470, Section 1 Sarah Diesburg

Getting Connected. Chapter 2, Part 2. Networking CS 3470, Section 1 Sarah Diesburg Getting Connected Chapter 2, Part 2 Networking CS 3470, Section 1 Sarah Diesburg 1 Five Problems Encoding/decoding Framing Error Detection Error Correction Media Access 2 Five Problems Encoding/decoding

More information

Concise Paper: Deconstructing MPTCP Performance

Concise Paper: Deconstructing MPTCP Performance 04 IEEE nd International Conference on Network Protocols Concise Paper: Deconstructing MPTCP Performance Behnaz Arzani, Alexander Gurney, Sitian Cheng, Roch Guerin and Boon Thau Loo University Of Pennsylvania

More information

Bit Error Period Determination and Optimal Frame Length Prediction for a Noisy Communication Channel

Bit Error Period Determination and Optimal Frame Length Prediction for a Noisy Communication Channel Bit Error Period Determination and Optimal Frame Length Prediction for a oisy Communication Channel Georgi Atanasov aydenov and Petko Stoyanov Stoyanov Faculty of Science and Technology, Technical University

More information

Solutions to COMP9334 Week 8 Sample Problems

Solutions to COMP9334 Week 8 Sample Problems Solutions to COMP9334 Week 8 Sample Problems Problem 1: Customers arrive at a grocery store s checkout counter according to a Poisson process with rate 1 per minute. Each customer carries a number of items

More information

Introduction to Information Security

Introduction to Information Security Introduction to Information Security Lecture 4: Hash Functions and MAC 2007. 6. Prof. Byoungcheon Lee sultan (at) joongbu. ac. kr Information and Communications University Contents 1. Introduction - Hash

More information

Structure Drawing. March Use the New Features. Keyboard Shortcuts and Paste from ChemDraw

Structure Drawing. March Use the New Features. Keyboard Shortcuts and Paste from ChemDraw Use the New Features March 2010 SciFinder offers many new structure drawing, reaction search and display, answer set manipulation, and results postprocessing features and enhancements. Improved performance

More information

Electrical Engineering Written PhD Qualifier Exam Spring 2014

Electrical Engineering Written PhD Qualifier Exam Spring 2014 Electrical Engineering Written PhD Qualifier Exam Spring 2014 Friday, February 7 th 2014 Please do not write your name on this page or any other page you submit with your work. Instead use the student

More information

Differential Pressure Sensor

Differential Pressure Sensor Differential Pressure Sensor MDP200 Series Features Pressure range up to ±500Pa with high accuracy of ±3.0% m.v. Pressure based on thermal micro-flow measurement Outstanding hysteresis and repeatability

More information

Modeling Approximations for an IEEE WLAN under Poisson MAC-Level Arrivals

Modeling Approximations for an IEEE WLAN under Poisson MAC-Level Arrivals Modeling Approximations for an IEEE 802.11 WLAN under Poisson MAC-Level Arrivals Ioannis Koukoutsidis 1 and Vasilios A. Siris 1,2 1 FORTH-ICS, P.O. Box 1385, 71110 Heraklion, Crete, Greece 2 Computer Science

More information

Exploring an IPv6 protocol for mobile sensor network communication. Weiqi Zhang. TR13-226, May 31, 2013

Exploring an IPv6 protocol for mobile sensor network communication. Weiqi Zhang. TR13-226, May 31, 2013 Exploring an IPv6 protocol for mobile sensor network communication by Weiqi Zhang TR13-226, May 31, 2013 This is an unaltered version of the author s MCS thesis Faculty of Computer Science University of

More information

Bro Covert Channel Detection (BroCCaDe) Framework: Design and Implementation

Bro Covert Channel Detection (BroCCaDe) Framework: Design and Implementation Bro Covert Channel Detection (BroCCaDe) Framework: Design and Implementation Hendra Gunadi (Hendra.Gunadi@murdoch.edu.au), Sebastian Zander (s.zander@murdoch.edu.au) 7 November 207 Abstract In this report

More information

How do computers represent numbers?

How do computers represent numbers? How do computers represent numbers? Tips & Tricks Week 1 Topics in Scientific Computing QMUL Semester A 2017/18 1/10 What does digital mean? The term DIGITAL refers to any device that operates on discrete

More information

Transition from GVAR to GOES-R GRB Service Continuity

Transition from GVAR to GOES-R GRB Service Continuity Transition from GVAR to GOES-R GRB Service Continuity Presented to CGMS-43 Plenary session, agenda item F.2.3 CGMS-43-NOAA-WP-02 GOES-R at Test Location First 12 Months CGMS-43-NOAA-WP-02 Slide: 2 Transitioning

More information

Today s Topics. Methods of proof Relationships to logical equivalences. Important definitions Relationships to sets, relations Special functions

Today s Topics. Methods of proof Relationships to logical equivalences. Important definitions Relationships to sets, relations Special functions Today s Topics Set identities Methods of proof Relationships to logical equivalences Functions Important definitions Relationships to sets, relations Special functions Set identities help us manipulate

More information

Discrete Mathematics and Probability Theory Spring 2016 Rao and Walrand Discussion 6A Solution

Discrete Mathematics and Probability Theory Spring 2016 Rao and Walrand Discussion 6A Solution CS 70 Discrete Mathematics and Probability Theory Spring 2016 Rao and Walrand Discussion 6A Solution 1. Polynomial intersections Find (and prove) an upper-bound on the number of times two distinct degree

More information

Lecture on Sensor Networks

Lecture on Sensor Networks Lecture on Sensor Networks Cyclic Historical Redundancy Development Copyright (c) 2008 Dr. Thomas Haenselmann (University of Mannheim, Germany). Permission is granted to copy, distribute and/or modify

More information

Basics HTTP. requests. Ryan E. Freckleton. PySprings. May 24, 2016

Basics HTTP. requests. Ryan E. Freckleton. PySprings. May 24, 2016 PySprings May 24, 2016 >>> import r e q u e s t s >>> r = r e q u e s t s. g e t ( h t t p s : / / a p i. g i t h u b. com/ u s e r, auth=( u s e r, p a s s ) ) >>> r. status_code 401 >>> r. h e a d e

More information

Analysis of Scalable TCP in the presence of Markovian Losses

Analysis of Scalable TCP in the presence of Markovian Losses Analysis of Scalable TCP in the presence of Markovian Losses E Altman K E Avrachenkov A A Kherani BJ Prabhu INRIA Sophia Antipolis 06902 Sophia Antipolis, France Email:altman,kavratchenkov,alam,bprabhu}@sophiainriafr

More information

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs April 16, 2009 John Wawrzynek Spring 2009 EECS150 - Lec24-blocks Page 1 Cross-coupled NOR gates remember, If both R=0 & S=0, then

More information

FLAME Flexible Lightweight Active Measurement Environment

FLAME Flexible Lightweight Active Measurement Environment FLAME Flexible Lightweight Active Measurement Environment Marcos L. Kirszenblatt Thiago B. Cardozo Artur Ziviani Antônio Tadeu A. Gomes National Laboratory for Scientific Computing (LNCC) {marcoslk,thiagoc,ziviani,atagomes}@lncc.br

More information

Auto-Tuning Complex Array Layouts for GPUs - Supplemental Material

Auto-Tuning Complex Array Layouts for GPUs - Supplemental Material BIN COUNT EGPGV,. This is the author version of the work. It is posted here by permission of Eurographics for your personal use. Not for redistribution. The definitive version is available at http://diglib.eg.org/.

More information

GR16. Technical Manual. 10 M SPS, 16-bit Analog Signal Digitizer up to 8MB FIFO

GR16. Technical Manual. 10 M SPS, 16-bit Analog Signal Digitizer up to 8MB FIFO GR M SPS, -bit Analog Signal Digitizer up to MB FIFO Technical Manual 90 th Street, Davis, CA 9, USA Tel: 0--00 Fax: 0--0 Email: sales@tern.com web site: www.tern.com COPYRIGHT GR, EL, Grabber, and A-Engine

More information

Knocking down the HACIENDA with TCP Stealth

Knocking down the HACIENDA with TCP Stealth Knocking down the HACIENDA with TCP Stealth Christian Grothoff Actual work: Julian Kirsch Technische Universität München May 8, 2015 Knocking down the HACIENDA 1/1 Knocking down the HACIENDA 2/1 Knocking

More information

Enrico Nardelli Logic Circuits and Computer Architecture

Enrico Nardelli Logic Circuits and Computer Architecture Enrico Nardelli Logic Circuits and Computer Architecture Appendix B The design of VS0: a very simple CPU Rev. 1.4 (2009-10) by Enrico Nardelli B - 1 Instruction set Just 4 instructions LOAD M - Copy into

More information

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing MISP Project @MISPProject TLP:WHITE MISP Training - @SWITCH - 20161206 Why we want to go more modular...

More information

Wireless Internet Exercises

Wireless Internet Exercises Wireless Internet Exercises Prof. Alessandro Redondi 2018-05-28 1 WLAN 1.1 Exercise 1 A Wi-Fi network has the following features: Physical layer transmission rate: 54 Mbps MAC layer header: 28 bytes MAC

More information

Package SpatialVS. R topics documented: November 10, Title Spatial Variable Selection Version 1.1

Package SpatialVS. R topics documented: November 10, Title Spatial Variable Selection Version 1.1 Title Spatial Variable Selection Version 1.1 Package SpatialVS November 10, 2018 Author Yili Hong, Li Xu, Yimeng Xie, and Zhongnan Jin Maintainer Yili Hong Perform variable selection

More information

H.264/MPEG4 Part INTRODUCTION Terminology

H.264/MPEG4 Part INTRODUCTION Terminology 6 H.264/MPEG4 Part 10 6.1 INTRODUCTION The Moving Picture Experts Group and the Video Coding Experts Group (MPEG and VCEG) have developed a new standard that promises to outperform the earlier MPEG-4 and

More information

Product Quality Disclaimer

Product Quality Disclaimer ENVI-GSOP-EOGD-QD-4-49 Affected Data Sets Various Disclaimer Title L1b disclaimers with an impact on the ATS_AR 2P product L2 spatially averaged data are affected by the following disclaimers against the

More information

The Blue Gene/P at Jülich Case Study & Optimization. W.Frings, Forschungszentrum Jülich,

The Blue Gene/P at Jülich Case Study & Optimization. W.Frings, Forschungszentrum Jülich, The Blue Gene/P at Jülich Case Study & Optimization W.Frings, Forschungszentrum Jülich, 26.08.2008 Jugene Case-Studies: Overview Case Study: PEPC Case Study: racoon Case Study: QCD CPU0CPU3 CPU1CPU2 2

More information

Table of Contents. Document Number: Rev 100

Table of Contents. Document Number: Rev 100 Document Number: 102-2012-100-01 Rev 100 Table of Contents Document...2 Revision History...2 Scope...2 Summary...3 Electrical Interface...3 Command and Control Interface (CCI)...3 Video Interface...3 Feature

More information

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P Khatri (Lab exercise created and tested by Ramu Endluri, He Zhou and Sunil P

More information

Congestion Control. Need to understand: What is congestion? How do we prevent or manage it?

Congestion Control. Need to understand: What is congestion? How do we prevent or manage it? Congestion Control Phenomenon: when too much traffic enters into system, performance degrades excessive traffic can cause congestion Problem: regulate traffic influx such that congestion does not occur

More information

Roberto Perdisci^+, Guofei Gu^, Wenke Lee^ presented by Roberto Perdisci. ^Georgia Institute of Technology, Atlanta, GA, USA

Roberto Perdisci^+, Guofei Gu^, Wenke Lee^ presented by Roberto Perdisci. ^Georgia Institute of Technology, Atlanta, GA, USA U s i n g a n E n s e m b l e o f O n e - C l a s s S V M C l a s s i f i e r s t o H a r d e n P a y l o a d - B a s e d A n o m a l y D e t e c t i o n S y s t e m s Roberto Perdisci^+, Guofei Gu^, Wenke

More information

Demonstrator 1: Ant-based monitoring on software IP routers

Demonstrator 1: Ant-based monitoring on software IP routers BISON Biology-Inspired techniques for Self Organization in dynamic Networks Demonstrator 1: Ant-based monitoring on software IP routers Deliverable Number: D14 Delivery Date: March 2006 Classification:

More information

PARASITIC COMPUTING: PROBLEMS AND ETHICAL

PARASITIC COMPUTING: PROBLEMS AND ETHICAL ISSN 2320-9194 8 International Journal of Advance Research, IJOAR.org Volume 1, Issue 11, November 2013, Online: ISSN 2320-9194 PARASITIC COMPUTING: PROBLEMS AND ETHICAL CONSIDERATION Abstract Parasitic

More information

Parallelization of the QC-lib Quantum Computer Simulator Library

Parallelization of the QC-lib Quantum Computer Simulator Library Parallelization of the QC-lib Quantum Computer Simulator Library Ian Glendinning and Bernhard Ömer VCPC European Centre for Parallel Computing at Vienna Liechtensteinstraße 22, A-19 Vienna, Austria http://www.vcpc.univie.ac.at/qc/

More information

Parallelization of the QC-lib Quantum Computer Simulator Library

Parallelization of the QC-lib Quantum Computer Simulator Library Parallelization of the QC-lib Quantum Computer Simulator Library Ian Glendinning and Bernhard Ömer September 9, 23 PPAM 23 1 Ian Glendinning / September 9, 23 Outline Introduction Quantum Bits, Registers

More information

Min Congestion Control for High- Speed Heterogeneous Networks. JetMax: Scalable Max-Min

Min Congestion Control for High- Speed Heterogeneous Networks. JetMax: Scalable Max-Min JetMax: Scalable Max-Min Min Congestion Control for High- Speed Heterogeneous Networks Yueping Zhang Joint work with Derek Leonard and Dmitri Loguinov Internet Research Lab Department of Computer Science

More information

Separating detection and catalog production,

Separating detection and catalog production, Separating detection and catalog production, a step towards Algorithms for Large Databases and Vice-versa. Mohammad Akhlaghi CRAL (Lyon Observatory), CNRS. Saint Genis Laval, France. October 19th, 2016.

More information

Sample Project: Simulation of Turing Machines by Machines with only Two Tape Symbols

Sample Project: Simulation of Turing Machines by Machines with only Two Tape Symbols Sample Project: Simulation of Turing Machines by Machines with only Two Tape Symbols The purpose of this document is to illustrate what a completed project should look like. I have chosen a problem that

More information

Stability Analysis in a Cognitive Radio System with Cooperative Beamforming

Stability Analysis in a Cognitive Radio System with Cooperative Beamforming Stability Analysis in a Cognitive Radio System with Cooperative Beamforming Mohammed Karmoose 1 Ahmed Sultan 1 Moustafa Youseff 2 1 Electrical Engineering Dept, Alexandria University 2 E-JUST Agenda 1

More information

This will mark the bills as Paid in QuickBooks and will show us with one balance number in the faux RJO Exchange Account how much we owe RJO.

This will mark the bills as Paid in QuickBooks and will show us with one balance number in the faux RJO Exchange Account how much we owe RJO. PAYING & ENTERING RJO BILLS QuickBooks will not allow you to pay two separate vendors (like Stuller & Rembrandt Charm Co) on one check and have the payee be "RJO". So we have to use a 2 prong approach.

More information