OpenWorm Extended Research Timothy Busbice, 12/31/2012 History For the past 20+ years, I have tried to create a connectome using individual programs to.

Slides:



Advertisements
Similar presentations
Protocol layers and Wireshark Rahul Hiran TDTS11:Computer Networks and Internet Protocols 1 Note: T he slides are adapted and modified based on slides.
Advertisements

Introduction 1-1 Chapter 3 Transport Layer Intro and Multiplexing Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.
1 Ports and IPv6. 2 Ports Transmission Control Protocol (TCP) or the User Datagram Protocol (UDP), used for communication Generally speaking, a computer.
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Firewall Simulation Teaching Information Security Using: Visualization Tools, Case Studies, and Hands-on Exercises May 23, 2012.
HTTP Cookies. CPSC Application Layer 2 User-server state: cookies Many major Web sites use cookies Four components: 1) cookie header line of HTTP.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
1 Java Networking – Part I CS , Spring 2008/9.
Introduction to Transport Layer. Transport Layer: Motivation A B R1 R2 r Recall that NL is responsible for forwarding a packet from one HOST to another.
Networking Support In Java Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Client Server Model The client machine (or the client process) makes the request for some resource or service, and the server machine (the server process)
Networks 1 CS502 Spring 2006 Network Input & Output CS-502 Operating Systems Spring 2006.
1 School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture and Protocols Socket Programming Instructor: Dr. Mohamed Hefeeda.
CS-3013 & CS-502, Summer 2006 Network Input & Output1 CS-3013 & CS-502, Summer 2006.
1 Computer Networks Transport Layer Protocols. 2 Application-layer Protocols Application-layer protocols –one “piece” of an app –define messages exchanged.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #12 LSNAT - Load Sharing NAT (RFC 2391)
I NTRODUCTION OF S OCKET P ROGRAMMING L.Aseel AlTurki King Saud University.
Gursharan Singh Tatla Transport Layer 16-May
Chapter 26 Client Server Interaction Communication across a computer network requires a pair of application programs to cooperate. One application on one.
MODULE IV SWITCHED WAN.
Process-to-Process Delivery:
TCP/IP protocols Communication over Internet is mostly TCP/IP (Transmission Control Protocol over Internet Protocol) TCP/IP "stack" is software which allows.
1 Chapter Client-Server Interaction. 2 Functionality  Transport layer and layers below  Basic communication  Reliability  Application layer.
13/09/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Transport layer and Application Layer Slide 1.
1 Computer Communication & Networks Lecture 28 Application Layer: HTTP & WWW p Waleed Ejaz
University of the Western Cape Chapter 12: The Transport Layer.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.

Chapter 8 Switching Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Introduction to Sockets “A socket is one endpoint of a two-way communication link between two programs running on the network. A socket is bound to a port.
Marwan Al-Namari Week 5. Responsible for delivering packets between endpoints over multiple links Physical Link Network Transport Application.
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
Lectu re 1 Recap: “Operational” view of Internet r Internet: “network of networks” m Requires sending, receiving of messages r protocols control sending,
Prepared by: Azara Prakash L.. Contents:-  Data Transmission  Introduction  Socket Description  Data Flow Diagram  Module Design Specification.
Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
Presented by Rebecca Meinhold But How Does the Internet Work?
1 Client-Server Interaction. 2 Functionality Transport layer and layers below –Basic communication –Reliability Application layer –Abstractions Files.
Socket Programming Introduction. Socket Definition A network socket is one endpoint in a two-way communication flow between two programs running over.
1 Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Computer Science and Engineering Copyright by Hesham El-Rewini Advanced Computer Architecture CSE 8383 April 11, 2006 Session 23.
Distributed systems (NET 422) Prepared by Dr. Naglaa Fathi Soliman Princess Nora Bint Abdulrahman University College of computer.
Computer Communication: An example What happens when I click on
TCP/IP Protocol Suite ©Richard L. Goldman September 25, 2002.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
1 Network Communications A Brief Introduction. 2 Network Communications.
Client-server communication Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Connectome Research Timothy Busbice, Updated: 03/10/2014 History For the past 20+ years, I have tried to create a connectome using individual programs.
UDP: User Datagram Protocol. What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host – treats a computer as an.
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Client-Server Model and Sockets
Scaling the Network: The Internet Protocol
Networking COMP
MCA – 405 Elective –I (A) Java Programming & Technology
Beyond HTTP Up to this point we have been dealing with software tools that run on browsers and communicate to a server that generates files that can be.
Net431:advanced net services
Client-Server Interaction
ECET 465 Innovative Education--snaptutorial.com
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Network Core and QoS.
Transport Protocols An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Network Models CCNA Instructor Training Course October 12-17, 2009
Scaling the Network: The Internet Protocol
Computer Networks Topic :User datagram protocol Transmission Control Protocol -Hemashree S( )
Computer Networks Protocols
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Exceptions and networking
Network programming Lecture 1 Prepared by: Dr. Osama Mokhtar.
Network Core and QoS.
Presentation transcript:

OpenWorm Extended Research Timothy Busbice, 12/31/2012 History For the past 20+ years, I have tried to create a connectome using individual programs to represent neurons whereby each program exhibits the common but unique characteristics of the individual neurons. In each iteration of this research, I have discovered the machine limitations of the type of systems that I was using, mainly the restriction of the number of processes that are allowed to run simultaneously on a given processor. In addition, until I worked on the OpenWorm project, I did not have a true connectome to work with and my previous attempts were basically made up neural networks that did not yield any meaningful results. Talking to a colleague a couple of weeks ago, made me realize that using 64 bit technology may have changed the limitation of the desktop PC. After doing a quick test, I found that indeed it has and that I could create a system of 302 neurons running on my Personal Computer.

OpenWorm Extended Research The Process In the simplest terms, there are three components: Sensory Input, the Neurons that make up the connectome, and the Output which is muscle activation/movement.

OpenWorm Extended Research InterProcess Communication UDP = User Datagram Protocol To talk between the apps, I use UDP (a cousin to TCP). With UDP, computer applications can send messages, in this case referred to as datagrams, to other hosts on an Internet Protocol (IP) network without prior communications to set up special transmission channels or data paths.datagramsInternet Protocol In other words, UDP is Asynchronous! *

OpenWorm Extended Research Sensory Input Special App that allows stimulation by weight

OpenWorm Extended Research Individual Neurons Each Neuron is spawned by reading an MS SQL Data Base table that defines which Neuron it is and what Neurons it links to by weight. App Elements: Socket (Port) Number is unique for each Neuron Neuron Name Receive IP Address Weight Received Linking Neurons : Port # : Weight

OpenWorm Extended Research Muscle Output Neurons have defined links to specific Muscles which in the prototype system terminate at a motor out app. The Motor app is designated as UDP Port 9999 Each of the muscles is defined in a matrix and incoming weights are accumulated and displayed Worm Representation

OpenWorm Extended Research Insights The basic Neuron App does work and once initialized, the network is self perpetuating. I let the network run for approx 16.5 hours and neural activity was continuous during that time after just a few neurons being stimulated (a true thinking machine?). Challenges Running the entire system on my 64 bit, T420 Lenovo Laptop, takes over the laptop all together to the point even the clock does not update. The data/networking is setup to use multiple IPs so the next step would be to distribute the neurons to many different machines.

OpenWorm Extended Research Next Steps? Distribution of processes as indicated on the previous slide to reduce the workload of any given processor and achieve true parallelism. The best case scenario would be 302 machines, each with one neuron (perhaps a Seti approach? Or the cloud?) It would be interesting to either plug into a virtual worm as we are working to create, or an actual robot using the OpenWorm connectome. Refine the Neuron app to match closer to timing and internal processes (e.g. Neuropeptides) of actual C Elegan neurons.

OpenWorm Extended Research Thank You Questions?