CS 3411 Systems Programming

Size: px
Start display at page:

Download "CS 3411 Systems Programming"

Transcription

1 CS 3411 Systems Programming Department of Computer Science Michigan Technological University Sockets

2 Today's Topics New Way of Communicating Between Processes Sockets

3 Standard" Unix Processes/IPC IPC stands for Inter-Process Communication in this context Until know, we did communication through: File system: File descriptors, read()/write() and pipes IPC construct is shared through normal process hierarchy inheritance rules, pipes created through pipe() are nameless Totally reliable byte stream between producer and consumer Ties in to conventional UNIX semantics of process creation and termination

4 New Ideas We want to create a generalization of the pipe construct for network-based I/O That means we still want le descriptors and read()/write() calls to work We need to take some extra features into consideration: Network Protocol Stacks Network Naming Conventions Requirements of Protocol-Specic Message Passing The BSD and UNIX solution is the socket() call. Most concisely, it can be described as a communication endpoint. The call returns a le descriptor. int socket(int domain, int type, int protocol);

5 Communication Domain This basically species a protocol stack. Some systems contain a richer set of communication domains than others AF_UNIX or AF_LOCAL: The UNIX IPC domain, local to a single machine AF_INET: The Internet domain, global in scope AF_INET6: The Internet domain, using IPv6 Once a domain is specied, we know how to associate a name with the socket As well as knowing the semantics of supported IPC mechanisms

6 Unix Domain Sockets (in brief) Let's start with the simpler (but less interesting) case of the AF_UNIX communication domain The header le <sys/un.h> denes addresses #d e f i n e UNIX_PATH_MAX 108 s t r u c t sockaddr_un { unsigned s h o r t sun_ family ; / AF_UNIX / char sun_path [UNIX_PATH_MAX ] ; / Pathname / } ; Some examples of Unix domain sockets can be found under the /dev directory

7 Types of Sockets in Unix Domain We'll be looking at two types of sockets available in Unix SOCK_DGRAM provides datagram communication semantics Only promises best-eort delivery Unix may discard datagrams in times of buer congestion Connectionless!

8 Types of Sockets in Unix Domain We'll be looking at two types of sockets available in Unix SOCK_STREAM implements virtual circuit communication semantics Reliable FIFO point-to-point communications Appears as a byte stream to applications This is actually how some later UNIX systems implement pipes! Socket type should be chosen according to the needs of the application, and should be programmed in accordance with well-specied delivery semantics of chosen type.

9 Operations on Sockets Binding a name to a socket: i n t b i n d ( i n t s o c k f d, s t r u c t s o c k a d d r my_addr, i n t a d d r l e n ) ; Sending datagram on a socket (asynchronous): i n t s e n d t o ( i n t s, const v o i d msg, i n t l e n, unsigned i n t f l a g s const s t r u c t s o c k a d d r to, i n t t o l e n ) ; Receiving datagram from a socket (synchronous, blocking): i n t r e c v f r o m ( i n t s, v o i d buf, i n t l e n, unsigned i n t f l a g s, s t r u c t s o c k a d d r from, i n t f r o m l e n ) ;

10 Server I #i n c l u d e <e r r n o. h> #i n c l u d e < s t r i n g s. h> #i n c l u d e <s t d i o. h> #i n c l u d e <u n i s t d. h> #i n c l u d e <s y s / s o c k e t. h> #i n c l u d e <s y s /un. h> main ( ) { s h o r t p_len ; i n t socket_fd, cc, h_len, f s i z e, namelen ; v o i d p r i n t s u n ( ) ; s t r u c t sockaddr_un s_un, from ; s i z e _ t a d d r l e n g t h ; s t r u c t { char head ; u_long body ; char t a i l ; } msg ; s o c k e t _ f d = s o c k e t (AF_UNIX, SOCK_DGRAM, 0 ) ; s_un. sun_ family = AF_UNIX ;

11 Server II } s t r c p y ( s_un. sun_path, " udgram " ) ; a d d r l e n g t h = s i z e o f ( s_un. s u n _ f a m i l y ) + s i z e o f ( s_un. sun_path ) ; u n l i n k ( " udgram " ) ; b i n d ( socket_fd, ( s t r u c t s o c k a d d r )&s_un, a d d r l e n g t h ) ; f o r ( ; ; ) { f s i z e = s i z e o f ( from ) ; cc = r e c v f r o m ( socket_fd, &msg, s i z e o f ( msg ), 0, ( s t r u c t s o c k a d d r )& from, & f s i z e ) ; p r i n t s u n (&from, " unix_rdgram : ", " Packet from " ) ; p r i n t f ( " Got d a t a ::% c%l d%c \n", msg. head, msg. body, msg. t a i l ) ; f f l u s h ( s t d o u t ) ; } v o i d p r i n t s u n ( Sun, s1, s2 ) s t r u c t sockaddr_un Sun ; char s1, s2 ; { p r i n t f ( "%s %s \n", s1, s2 ) ; p r i n t f ( " f a m i l y <%d> a d d r <%s >\n", Sun >sun_ family, Sun >sun_path ) ; }

12 Client I #i n c l u d e <e r r n o. h> #i n c l u d e < s t r i n g s. h> #i n c l u d e <s t d i o. h> #i n c l u d e <u n i s t d. h> #i n c l u d e <s y s / s o c k e t. h> #i n c l u d e <s y s /un. h> main ( ) { i n t socket_fd, cc ; // l o n g g e t p i d ( ) ; s t r u c t sockaddr_un d e s t ; s t r u c t { char head ; u_long body ; char t a i l ; } msgbuf ; s o c k e t _ f d = s o c k e t (AF_UNIX, SOCK_DGRAM, 0 ) ; d e s t. s u n _ f a m i l y = AF_UNIX ; s t r c p y ( d e s t. sun_path, " udgram " ) ; msgbuf. head = '< ' ;

13 Client II msgbuf. body = ( u_long ) g e t p i d ( ) ; msgbuf. t a i l = '> ' ; } cc = s e n d t o ( socket_fd, &msgbuf, s i z e o f ( msgbuf ), 0, ( s t r u c t s o c k a d d r )& d e s t, s i z e o f ( d e s t ) ) ;

14 Sockets and the Internet (IPv4) AF_INET communication domain SOCK_DGRAM - Same as before! UDP/IP SOCK_STREAM - Same as before! TCP/IP We need a way to associate names with sockets to be able to do network I/O through a socket le descriptor

15 Sockets and the Internet (IPv4) The header le <netinet/in.h> denes a 32-bit for an Internet host. This actually identies a specic network interface on a specic system on the Internet. It's represented by a 32 bit unsigned number s t r u c t in_addr { u32 s_addr ; }

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

CS 3411 Systems Programming

CS 3411 Systems Programming CS 3411 Systems Programming Department of Computer Science Michigan Technological University Pipe Inter-Process Communication in Unix Today's Topics How to communicate between processes without using signals

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

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

Part I. System call overview. Secure Operating System Design and Implementation System Calls. Overview. Abstraction. Jon A. Solworth.

Part I. System call overview. Secure Operating System Design and Implementation System Calls. Overview. Abstraction. Jon A. Solworth. Secure Operating System Design and Implementation System Calls Jon A. Solworth Part I System call overview Dept. of Computer Science University of Illinois at Chicago February 1, 2011 Overview Abstraction

More information

I/O Devices. Device. Lecture Notes Week 8

I/O Devices. Device. Lecture Notes Week 8 I/O Devices CPU PC ALU System bus Memory bus Bus interface I/O bridge Main memory USB Graphics adapter I/O bus Disk other devices such as network adapters Mouse Keyboard Disk hello executable stored on

More information

An introduction to flash memory in Linux

An introduction to flash memory in Linux An introduction to flash memory in Linux Ezequiel Garcia Linux Developer Conference Brazil 2018 1/34 Agenda Flash memory: NAND and NOR Linux MTD subsystem Linux UBI/UBIFS systems

More information

Data byte 0 Data byte 1 Data byte 2 Data byte 3 Data byte 4. 0xA Register Address MSB data byte Data byte Data byte LSB data byte

Data byte 0 Data byte 1 Data byte 2 Data byte 3 Data byte 4. 0xA Register Address MSB data byte Data byte Data byte LSB data byte SFP200 CAN 2.0B Protocol Implementation Communications Features CAN 2.0b extended frame format 500 kbit/s Polling mechanism allows host to determine the rate of incoming data Registers The SFP200 provides

More information

Do we have a quorum?

Do we have a quorum? Do we have a quorum? Quorum Systems Given a set U of servers, U = n: A quorum system is a set Q 2 U such that Q 1, Q 2 Q : Q 1 Q 2 Each Q in Q is a quorum How quorum systems work: A read/write shared register

More information

High Performance Computing

High Performance Computing Master Degree Program in Computer Science and Networking, 2014-15 High Performance Computing 2 nd appello February 11, 2015 Write your name, surname, student identification number (numero di matricola),

More information

Agreement. Today. l Coordination and agreement in group communication. l Consensus

Agreement. Today. l Coordination and agreement in group communication. l Consensus Agreement Today l Coordination and agreement in group communication l Consensus Events and process states " A distributed system a collection P of N singlethreaded processes w/o shared memory Each process

More information

Advanced Topicson Network Socket Programming

Advanced Topicson Network Socket Programming Advanced Topics on Network Socket Programming Computer Science Department, University of Crete Manolis Surligas surligas@csduocgr October 18, 2017 Manolis Surligas (CSD, UoC) Advanced Topicson Network

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

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

Solutions to the second midterm. COSC 4330/6310 Summer 2013

Solutions to the second midterm. COSC 4330/6310 Summer 2013 Solutions to the second midterm COSC 4330/6310 Summer 2013 First question Consider the following set of parameters for a System V Release 4 scheduler: #ts_quantum ts_tqexp ts_slpret ts_maxwait ts_lwait

More information

CS505: Distributed Systems

CS505: Distributed Systems Department of Computer Science CS505: Distributed Systems Lecture 5: Time in Distributed Systems Overview Time and Synchronization Logical Clocks Vector Clocks Distributed Systems Asynchronous systems:

More information

CS 3411 Systems Programming

CS 3411 Systems Programming CS 3411 Systems Programming Department of Computer Science Michigan Technological University Unix Processes Today s Topics Unix Processes Creating New Processes Unix Processes Process is the image of a

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

Distributed systems Lecture 4: Clock synchronisation; logical clocks. Dr Robert N. M. Watson

Distributed systems Lecture 4: Clock synchronisation; logical clocks. Dr Robert N. M. Watson Distributed systems Lecture 4: Clock synchronisation; logical clocks Dr Robert N. M. Watson 1 Last time Started to look at time in distributed systems Coordinating actions between processes Physical clocks

More information

Distributed Systems 8L for Part IB

Distributed Systems 8L for Part IB Distributed Systems 8L for Part IB Handout 2 Dr. Steven Hand 1 Clocks Distributed systems need to be able to: order events produced by concurrent processes; synchronize senders and receivers of messages;

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

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

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

Networked Control Systems

Networked Control Systems Networked Control Systems Simulation & Analysis J.J.C. van Schendel DCT 2008.119 Traineeship report March till June 2008 Coaches: Supervisor TU/e: Prof. Dr. D. Nesic, University of Melbourne Dr. M. Tabbara,

More information

Recursive InterNetworking Architecture (RINA) Boston University Prototype Programming Manual (version 1.0)

Recursive InterNetworking Architecture (RINA) Boston University Prototype Programming Manual (version 1.0) Recursive InterNetworking Architecture (RINA) Boston University Prototype Programming Manual (version 1.0) Yuefeng Wang Flavio Esposito Ibrahim Matta John Day {wyf, flavio, matta, day}@bu.edu Recursive

More information

System-on-Chip Communication Modeling Style Guide

System-on-Chip Communication Modeling Style Guide Center for Embedded Computer Systems University of California, Irvine System-on-Chip Communication Modeling Style Guide Dongwan Shin Andreas Gerstlauer Rainer Dömer Daniel D. Gajski Technical Report CECS-TR-04-25

More information

Trivadis Integration Blueprint V0.1

Trivadis Integration Blueprint V0.1 Spring Integration Peter Welkenbach Principal Consultant peter.welkenbach@trivadis.com Agenda Integration Blueprint Enterprise Integration Patterns Spring Integration Goals Main Components Architectures

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

Overlay Transport Virtualization (OTV) Unicast-Mode Transport Infrastructure Deployment

Overlay Transport Virtualization (OTV) Unicast-Mode Transport Infrastructure Deployment Overlay Transport Virtualization (OTV) Unicast-Mode Transport Infrastructure Deployment July 24, 2012 ALL DESIGNS, SPECIFICATIONS, STATEMENTS, INFORMATION, AND RECOMMENDATIONS (COLLECTIVELY, "DESIGNS")

More information

Distributed Systems Fundamentals

Distributed Systems Fundamentals February 17, 2000 ECS 251 Winter 2000 Page 1 Distributed Systems Fundamentals 1. Distributed system? a. What is it? b. Why use it? 2. System Architectures a. minicomputer mode b. workstation model c. processor

More information

Distributed Systems Principles and Paradigms. Chapter 06: Synchronization

Distributed Systems Principles and Paradigms. Chapter 06: Synchronization Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 06: Synchronization Version: November 16, 2009 2 / 39 Contents Chapter

More information

Android Security Mechanisms (2)

Android Security Mechanisms (2) Android Security Mechanisms (2) Lecture 9 Operating Systems Practical 14 December 2016 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license,

More information

Error Detection & Correction

Error Detection & Correction Error Detection & Correction Error detection & correction noisy channels techniques in networking error detection error detection capability retransmition error correction reconstruction checksums redundancy

More information

II/IV B.Tech. DEGREE EXAMINATIONS, NOV/DEC-2017

II/IV B.Tech. DEGREE EXAMINATIONS, NOV/DEC-2017 CSE/IT 213 (CR) Total No. of Questions :09] [Total No. of Pages : 03 II/IV B.Tech. DEGREE EXAMINATIONS, NOV/DEC-2017 First Semester CSE/IT BASIC ELECTRICAL AND ELECTRONICS ENGINEERING Time: Three Hours

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

System-on-Chip Communication Modeling Style Guide

System-on-Chip Communication Modeling Style Guide Center for Embedded Computer Systems University of California, Irvine System-on-Chip Communication Modeling Style Guide Dongwan Shin Andreas Gerstlauer Rainer Dömer Daniel D. Gajski Technical Report CECS-TR-04-25

More information

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distributed Systems Principles and Paradigms Chapter 6 (version April 7, 28) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.2. Tel: (2)

More information

FPGA Resource Utilization Estimates for NI PXI-7854R. LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008

FPGA Resource Utilization Estimates for NI PXI-7854R. LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008 FPGA Resource Utilization Estimates for NI PXI-7854R LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008 Note: The numbers presented in this document are estimates. Actual resource usage for your

More information

Agreement Protocols. CS60002: Distributed Systems. Pallab Dasgupta Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur

Agreement Protocols. CS60002: Distributed Systems. Pallab Dasgupta Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Agreement Protocols CS60002: Distributed Systems Pallab Dasgupta Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Classification of Faults Based on components that failed Program

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

Multiplicative Multifractal Modeling of. Long-Range-Dependent (LRD) Trac in. Computer Communications Networks. Jianbo Gao and Izhak Rubin

Multiplicative Multifractal Modeling of. Long-Range-Dependent (LRD) Trac in. Computer Communications Networks. Jianbo Gao and Izhak Rubin Multiplicative Multifractal Modeling of Long-Range-Dependent (LRD) Trac in Computer Communications Networks Jianbo Gao and Izhak Rubin Electrical Engineering Department, University of California, Los Angeles

More information

University of Southern Queensland Faculty of Engineering & Surveying. Design and Implementation of a Network Adrress Translator

University of Southern Queensland Faculty of Engineering & Surveying. Design and Implementation of a Network Adrress Translator University of Southern Queensland Faculty of Engineering & Surveying Design and Implementation of a Network Adrress Translator A dissertation submitted by K-J. Beasley in fulfilment of the requirements

More information

Time. Today. l Physical clocks l Logical clocks

Time. Today. l Physical clocks l Logical clocks Time Today l Physical clocks l Logical clocks Events, process states and clocks " A distributed system a collection P of N singlethreaded processes without shared memory Each process p i has a state s

More information

CS418 Operating Systems

CS418 Operating Systems CS418 Operating Systems Lecture 14 Queuing Analysis Textbook: Operating Systems by William Stallings 1 1. Why Queuing Analysis? If the system environment changes (like the number of users is doubled),

More information

Networking = Plumbing. Queueing Analysis: I. Last Lecture. Lecture Outline. Jeremiah Deng. 29 July 2013

Networking = Plumbing. Queueing Analysis: I. Last Lecture. Lecture Outline. Jeremiah Deng. 29 July 2013 Networking = Plumbing TELE302 Lecture 7 Queueing Analysis: I Jeremiah Deng University of Otago 29 July 2013 Jeremiah Deng (University of Otago) TELE302 Lecture 7 29 July 2013 1 / 33 Lecture Outline Jeremiah

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

Actors for Reactive Programming. Actors Origins

Actors for Reactive Programming. Actors Origins Actors Origins Hewitt, early 1970s (1973 paper) Around the same time as Smalltalk Concurrency plus Scheme Agha, early 1980s (1986 book) Erlang (Ericsson), 1990s Akka, 2010s Munindar P. Singh (NCSU) Service-Oriented

More information

FPGA Resource Utilization Estimates for NI crio LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008

FPGA Resource Utilization Estimates for NI crio LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008 FPGA Resource Utilization Estimates for NI crio-9104 LabVIEW FPGA Version: 8.6 NI-RIO Version: 3.0 Date: 8/5/2008 Note: The numbers presented in this document are estimates. Actual resource usage for your

More information

INF Models of concurrency

INF Models of concurrency INF4140 - Models of concurrency RPC and Rendezvous INF4140 Lecture 15. Nov. 2017 RPC and Rendezvous Outline More on asynchronous message passing interacting processes with different patterns of communication

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

An Optimal Index Policy for the Multi-Armed Bandit Problem with Re-Initializing Bandits

An Optimal Index Policy for the Multi-Armed Bandit Problem with Re-Initializing Bandits An Optimal Index Policy for the Multi-Armed Bandit Problem with Re-Initializing Bandits Peter Jacko YEQT III November 20, 2009 Basque Center for Applied Mathematics (BCAM), Bilbao, Spain Example: Congestion

More information

A Brief Introduction to Model Checking

A Brief Introduction to Model Checking A Brief Introduction to Model Checking Jan. 18, LIX Page 1 Model Checking A technique for verifying finite state concurrent systems; a benefit on this restriction: largely automatic; a problem to fight:

More information

Seeking Fastness in Multi-Writer Multiple- Reader Atomic Register Implementations

Seeking Fastness in Multi-Writer Multiple- Reader Atomic Register Implementations ΚΥΠΡΙΑΚΗ ΔΗΜΟΚΡΑΤΙΑ ΕΥΡΩΠΑΪΚΗ ΕΝΩΣΗ Η ΔΕΣΜΗ 29- ΣΥΓΧΡΗΜΑΤΟΔΟΤΕΙΤΑΙ ΑΠΟ ΤΗΝ ΚΥΠΡΙΑΚΗ ΔΗΜΟΚΡΑΤΙΑ ΚΑΙ ΤΟ ΕΥΡΩΠΑΪΚΟ ΤΑΜΕΙΟ ΠΕΡΙΦΕΡΕΙΑΚΗΣ ΑΝΑΠΤΥΞΗΣ ΤΗΣ ΕΕ Seeking Fastness in Multi-Writer Multiple- Reader Atomic

More information

S1 S2. checkpoint. m m2 m3 m4. checkpoint P checkpoint. P m5 P

S1 S2. checkpoint. m m2 m3 m4. checkpoint P checkpoint. P m5 P On Consistent Checkpointing in Distributed Systems Guohong Cao, Mukesh Singhal Department of Computer and Information Science The Ohio State University Columbus, OH 43201 E-mail: fgcao, singhalg@cis.ohio-state.edu

More information

Byzantine Agreement. Gábor Mészáros. CEU Budapest, Hungary

Byzantine Agreement. Gábor Mészáros. CEU Budapest, Hungary CEU Budapest, Hungary 1453 AD, Byzantium Distibuted Systems Communication System Model Distibuted Systems Communication System Model G = (V, E) simple graph Distibuted Systems Communication System Model

More information

Asynchronous Models For Consensus

Asynchronous Models For Consensus Distributed Systems 600.437 Asynchronous Models for Consensus Department of Computer Science The Johns Hopkins University 1 Asynchronous Models For Consensus Lecture 5 Further reading: Distributed Algorithms

More information

Lecture 4 Event Systems

Lecture 4 Event Systems Lecture 4 Event Systems This lecture is based on work done with Mark Bickford. Marktoberdorf Summer School, 2003 Formal Methods One of the major research challenges faced by computer science is providing

More information

IEEE C /058r3

IEEE C /058r3 Project Title IEEE 802.16 Broadband Wireless Access Working Group MAC support and the general structure of the Coexistence Protocol messages Date Submitted 2006-07-13 Source(s)

More information

Time in Distributed Systems: Clocks and Ordering of Events

Time in Distributed Systems: Clocks and Ordering of Events Time in Distributed Systems: Clocks and Ordering of Events Clocks in Distributed Systems Needed to Order two or more events happening at same or different nodes (Ex: Consistent ordering of updates at different

More information

CS 7B - Spring Assignment: Adapting the calculator for bitwise expressions. due 2/21/18

CS 7B - Spring Assignment: Adapting the calculator for bitwise expressions. due 2/21/18 CS 7B - Spring 2018 - Assignment: Adapting the calculator for bitwise expressions. due 2/21/18 Background Theory A bitwise number is a number in base 2. In base 2, place values are either a 1 or 0, depending

More information

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value EGC22 Digital Logic Fundamental Additional Practice Problems. Complete the following table of equivalent values. Binary. Octal 35.77 33.23.875 29.99 27 9 64 Hexadecimal B.3 D.FD B.4C 2. Calculate the following

More information

TUM INSTITUT FÜR INFORMATIK. Stream Based Specification of Cryptographic Protocols and Their Composition Properties. Maria Spichkova, Jan Jürjens

TUM INSTITUT FÜR INFORMATIK. Stream Based Specification of Cryptographic Protocols and Their Composition Properties. Maria Spichkova, Jan Jürjens TUM INSTITUT FÜR INFORMATIK Stream Based Specification of Cryptographic Protocols and Their Composition Properties Maria Spichkova, Jan Jürjens ABCDE FGHIJ KLMNO TUM-I0823 Juli 08 TECHNISCHE UNIVERSITÄT

More information

Chapter 1 :: From Zero to One

Chapter 1 :: From Zero to One Chapter 1 :: From Zero to One Digital Design and Computer Architecture David Money Harris and Sarah L. Harris Copyright 2007 Elsevier 1- Chapter 1 :: Topics Background The Game Plan The Art of Managing

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

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

md5bloom: Forensic Filesystem Hashing Revisited

md5bloom: Forensic Filesystem Hashing Revisited DIGITAL FORENSIC RESEARCH CONFERENCE md5bloom: Forensic Filesystem Hashing Revisited By Vassil Roussev, Timothy Bourg, Yixin Chen, Golden Richard Presented At The Digital Forensic Research Conference DFRWS

More information

Our Problem. Model. Clock Synchronization. Global Predicate Detection and Event Ordering

Our Problem. Model. Clock Synchronization. Global Predicate Detection and Event Ordering Our Problem Global Predicate Detection and Event Ordering To compute predicates over the state of a distributed application Model Clock Synchronization Message passing No failures Two possible timing assumptions:

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

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

Synchrony Weakened by Message Adversaries vs Asynchrony Restricted by Failure Detectors

Synchrony Weakened by Message Adversaries vs Asynchrony Restricted by Failure Detectors Synchrony Weakened by Message Adversaries vs Asynchrony Restricted by Failure Detectors Michel RAYNAL, Julien STAINER Institut Universitaire de France IRISA, Université de Rennes, France Message adversaries

More information

CS 347 Parallel and Distributed Data Processing

CS 347 Parallel and Distributed Data Processing CS 347 Parallel and Distributed Data Processing Spring 2016 & Clocks, Clocks, and the Ordering of Events in a Distributed System. L. Lamport, Communications of the ACM, 1978 Notes 15: & Clocks CS 347 Notes

More information

ww.padasalai.net

ww.padasalai.net t w w ADHITHYA TRB- TET COACHING CENTRE KANCHIPURAM SUNDER MATRIC SCHOOL - 9786851468 TEST - 2 COMPUTER SCIENC PG - TRB DATE : 17. 03. 2019 t et t et t t t t UNIT 1 COMPUTER SYSTEM ARCHITECTURE t t t t

More information

Time. To do. q Physical clocks q Logical clocks

Time. To do. q Physical clocks q Logical clocks Time To do q Physical clocks q Logical clocks Events, process states and clocks A distributed system A collection P of N single-threaded processes (p i, i = 1,, N) without shared memory The processes in

More information

The Bell-LaPadula Model

The Bell-LaPadula Model The Bell-LaPadula Model CSM27 Computer Security Dr Hans Georg Schaathun University of Surrey Autumn 2007 Dr Hans Georg Schaathun The Bell-LaPadula Model Autumn 2007 1 / 25 The session Session objectives

More information

cs/ee/ids 143 Communication Networks

cs/ee/ids 143 Communication Networks cs/ee/ids 143 Communication Networks Chapter 5 Routing Text: Walrand & Parakh, 2010 Steven Low CMS, EE, Caltech Warning These notes are not self-contained, probably not understandable, unless you also

More information

Causal Broadcast Seif Haridi

Causal Broadcast Seif Haridi Causal Broadcast Seif Haridi haridi@kth.se Motivation Assume we have a chat application Whatever written is reliably broadcast to group If you get the following output, is it ok? [Paris] Are you sure,

More information

INF2270 Spring Philipp Häfliger. Lecture 8: Superscalar CPUs, Course Summary/Repetition (1/2)

INF2270 Spring Philipp Häfliger. Lecture 8: Superscalar CPUs, Course Summary/Repetition (1/2) INF2270 Spring 2010 Philipp Häfliger Summary/Repetition (1/2) content From Scalar to Superscalar Lecture Summary and Brief Repetition Binary numbers Boolean Algebra Combinational Logic Circuits Encoder/Decoder

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

Introduction to CCN-lite

Introduction to CCN-lite Introduction to CCN-lite Christopher Scherb, Claudio Marxer, Christian Tschudin University of Basel Department for Mathematics and Computer Science Computer Networking Group ACM ICN 2017 Introduction CCN-lite

More information

These are special traffic patterns that create more stress on a switch

These are special traffic patterns that create more stress on a switch Myths about Microbursts What are Microbursts? Microbursts are traffic patterns where traffic arrives in small bursts. While almost all network traffic is bursty to some extent, storage traffic usually

More information

Distributed Systems. Time, Clocks, and Ordering of Events

Distributed Systems. Time, Clocks, and Ordering of Events Distributed Systems Time, Clocks, and Ordering of Events Björn Franke University of Edinburgh 2016/2017 Today Last lecture: Basic Algorithms Today: Time, clocks, NTP Ref: CDK Causality, ordering, logical

More information

Chapter 7. Sequential Circuits Registers, Counters, RAM

Chapter 7. Sequential Circuits Registers, Counters, RAM Chapter 7. Sequential Circuits Registers, Counters, RAM Register - a group of binary storage elements suitable for holding binary info A group of FFs constitutes a register Commonly used as temporary storage

More information

CS505: Distributed Systems

CS505: Distributed Systems Cristina Nita-Rotaru CS505: Distributed Systems Ordering events. Lamport and vector clocks. Global states. Detecting failures. Required reading for this topic } Leslie Lamport,"Time, Clocks, and the Ordering

More information

ENGIN 112 Intro to Electrical and Computer Engineering

ENGIN 112 Intro to Electrical and Computer Engineering ENGIN 112 Intro to Electrical and Computer Engineering Lecture 3 More Number Systems Overview Hexadecimal numbers Related to binary and octal numbers Conversion between hexadecimal, octal and binary Value

More information

Automatic Synthesis of Distributed Protocols

Automatic Synthesis of Distributed Protocols Automatic Synthesis of Distributed Protocols Rajeev Alur Stavros Tripakis 1 Introduction Protocols for coordination among concurrent processes are an essential component of modern multiprocessor and distributed

More information

Outline F eria AADL behavior 1/ 78

Outline F eria AADL behavior 1/ 78 Outline AADL behavior Annex Jean-Paul Bodeveix 2 Pierre Dissaux 3 Mamoun Filali 2 Pierre Gaufillet 1 François Vernadat 2 1 AIRBUS-FRANCE 2 FéRIA 3 ELLIDIS SAE AS2C Detroit Michigan April 2006 FéRIA AADL

More information

Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems

Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems Seamless Model Driven Development and Tool Support for Embedded Software-Intensive Systems Computer Journal Lecture - 22nd June 2009 Manfred Broy Technische Universität München Institut für Informatik

More information

n CS 160 or CS122 n Sets and Functions n Propositions and Predicates n Inference Rules n Proof Techniques n Program Verification n CS 161

n CS 160 or CS122 n Sets and Functions n Propositions and Predicates n Inference Rules n Proof Techniques n Program Verification n CS 161 Discrete Math at CSU (Rosen book) Sets and Functions (Rosen, Sections 2.1,2.2, 2.3) TOPICS Discrete math Set Definition Set Operations Tuples 1 n CS 160 or CS122 n Sets and Functions n Propositions and

More information

DC motors. 1. Parallel (shunt) excited DC motor

DC motors. 1. Parallel (shunt) excited DC motor DC motors 1. Parallel (shunt) excited DC motor A shunt excited DC motor s terminal voltage is 500 V. The armature resistance is 0,5 Ω, field resistance is 250 Ω. On a certain load it takes 20 A current

More information

Chapter 11 Time and Global States

Chapter 11 Time and Global States CSD511 Distributed Systems 分散式系統 Chapter 11 Time and Global States 吳俊興 國立高雄大學資訊工程學系 Chapter 11 Time and Global States 11.1 Introduction 11.2 Clocks, events and process states 11.3 Synchronizing physical

More information

Distributed Systems. Time, clocks, and Ordering of events. Rik Sarkar. University of Edinburgh Spring 2018

Distributed Systems. Time, clocks, and Ordering of events. Rik Sarkar. University of Edinburgh Spring 2018 Distributed Systems Time, clocks, and Ordering of events Rik Sarkar University of Edinburgh Spring 2018 Notes Today: Time, clocks, NTP Ref: CDK Causality, ordering, logical clocks: Ref: VG, CDK Time Ordering

More information

SDS developer guide. Develop distributed and parallel applications in Java. Nathanaël Cottin. version

SDS developer guide. Develop distributed and parallel applications in Java. Nathanaël Cottin. version SDS developer guide Develop distributed and parallel applications in Java Nathanaël Cottin sds@ncottin.net http://sds.ncottin.net version 0.0.3 Copyright 2007 - Nathanaël Cottin Permission is granted to

More information

Panorama des modèles et outils de programmation parallèle

Panorama des modèles et outils de programmation parallèle Panorama des modèles et outils de programmation parallèle Sylvain HENRY sylvain.henry@inria.fr University of Bordeaux - LaBRI - Inria - ENSEIRB April 19th, 2013 1/45 Outline Introduction Accelerators &

More information

Analysis of the Increase and Decrease. Congestion Avoidance in Computer Networks

Analysis of the Increase and Decrease. Congestion Avoidance in Computer Networks Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks Dah-Ming Chiu, Raj Jain Presented by: Ashish Vulimiri Congestion Control Congestion Avoidance Congestion Avoidance

More information

Information System Decomposition Quality

Information System Decomposition Quality Information System Decomposition Quality Dr. Nejmeddine Tagoug Computer Science Department Al Imam University, SA najmtagoug@yahoo.com ABSTRACT: Object-oriented design is becoming very popular in today

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.2014.2.1 COMPUTER SCIENCE TRIPOS Part IA Tuesday 3 June 2014 1.30 to 4.30 pm COMPUTER SCIENCE Paper 2 Answer one question from each of Sections A, B and C, and two questions from Section D. Submit

More information

Coordination. Failures and Consensus. Consensus. Consensus. Overview. Properties for Correct Consensus. Variant I: Consensus (C) P 1. v 1.

Coordination. Failures and Consensus. Consensus. Consensus. Overview. Properties for Correct Consensus. Variant I: Consensus (C) P 1. v 1. Coordination Failures and Consensus If the solution to availability and scalability is to decentralize and replicate functions and data, how do we coordinate the nodes? data consistency update propagation

More information

Slides for Chapter 14: Time and Global States

Slides for Chapter 14: Time and Global States Slides for Chapter 14: Time and Global States From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, Addison-Wesley 2012 Overview of Chapter Introduction Clocks,

More information

EECS150 - Digital Design Lecture 23 - FSMs & Counters

EECS150 - Digital Design Lecture 23 - FSMs & Counters EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?

More information

Information and Entropy. Professor Kevin Gold

Information and Entropy. Professor Kevin Gold Information and Entropy Professor Kevin Gold What s Information? Informally, when I communicate a message to you, that s information. Your grade is 100/100 Information can be encoded as a signal. Words

More information