ARCNET Host 1Host 2Host n Token-bus net..... Hastighed : max 10 Mbit/s Antal hosts pr. segment: 255 dvs ID: 1-255.

Slides:



Advertisements
Lignende præsentationer
Throw a die Read the current value of index Add 1 Return the new value to index IndexIndex Create an empty array to count the number of dice throws Initialize.
Advertisements

Informationer om trådløs netværk På trådløs netværk bruges CSMA/CA sammen med ”Request to Send (RTS)” og “Clear to Send (CTS)” for at undgå kollisioner.
C# introduktion. using System; Namespace MyFirst { class eks1 { public static void Main() { Console.WriteLine("Hej!"); Console.Write("Skriv dit navn her:
Avancerede DatanetUdviklingen i Netværksarkitekturer1 Department of Control Engineering Distributed Real-time Systems Avancerede Datanet Ole Brun Madsen.
Dagens program  Emne: Tim Berners-Lees WWW koncept og deraf følgende innovationer Forbered hver for sig Præsenter og diskutér i grupper Fremlæggelse med.
Når en applikation går i fejl… … er det interessant, at vide noget om: Hvornår gik applikationen i fejl Hvilken applikation gik i fejl Hvad er fejlen.
Per P. MadsenStyresystemer og tjenester1 Indhold: 1.Introduktion til styresystemer. 2.Processer og tråde. 3.Synkroniseringsmetoder og InterProcesCommunikation.
FNI marts Dupline introduction. FNI marts Sensors, Switches, Relays, Valves, Motors Counters, Timers, Drives Dupline PLC's PC's, SCADA Prod.
Claus Tøndering Arkitektur MCU CIOC DIOC SIOC Memory MCU: Main Computing Unit med Motorola (senere og 68030) DIOC: Disk.
RT Speciale Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende ”Java Optimized Processor” (JOP) Speciale – efterår.
T1 – OPGAVE 14.2 LINETT & SABRINA Klasse Varer namespace Opgave_14._2 { class Varer { private string vare; private string farve; private double.
Efteruddannelse Embedded C Modul 4 (Torsdag den 22/4-2010)
Array og ArrayList Et slideshow. Som er sødt.. Hvordan virker ArrayList?  ArrayList NAVN = new ArrayList ();  NAVN.add(”Værdi”);  NAVN.add(index, ”værdi”)
13 – Database med JDBC. 2 NOEA2009Java-kursus – JDBC JDBC JDBC er et standard bibliotek til at tilgå relational databaser API’et er en standardiseret.
Arkitektur Embedded SQL Tema Persistens
1 Pentium IA-32 Maskinarkitekturen Kort resume – uge 5.
1 JavaServer Faces Copyright © Lund & Bendsen Dynamikken i JSF.
Symbolsk maskinsprog.
C#: Udtryk og metoder. Indhold “With regards to programming statements and methods, C# offers what you would come to expect from a modern OOPL…” Udtryk.
Datastrukturer og Collections Oversigt og forskel imellem Jave og.net Collections library Collection interfaces ArrayList IList interface Hashtable Hashtable.
06 – Java Packages Packages og ClassPath. 2 NOEA2009Java-kursus – Packages og class path Hvad er Packages? En package er en gruppering af relaterede typer.
Item gennemgang  Item: 01 – Static factory methods  Item: 09 – Override hashCode  Item: 17 – Design & document inheritence  Item: 25 – Lists over arrays.
Distribueret programmering, specielt.NET Remoting Rasmus D. Lehrmann DM
DS-kursusgang nr. 6: distribuerede objekter 1. Intro (oversigt over grundl₣ggende begreber og komponenter) 2. De basale designspørgsm ₢ l ved konstruktion.
Collectionklasser Klassifikation og anvendelse. Collections Motivation –hvorfor bruge collections? Realisering af en-til-mange relationer –Importer, erklær,
Computer netværk og TCP/IP protokoller Kort resume – uge 6
Per P Madsen AAU1 Del 3 : Transportlaget - Protokoller. UDP. TCP - Pålidelig kommunikation og PAR-princippet - Wireless TCP - Socket-API’en.
View Procedures Trigger og Function Jesper Tørresø DAB1 E07 1. november 2007.
Objekter og klasser Applikationsdesign Code Namespace Value og reference typer Reference type Rasmus D. Lehrmann1.
12 – GUI med Swing. 2 NOEA2009Java-kursus – GUI med Swing Designer view Komponenter Frame Properties Inspector.
01 – Java platform for starters. 2 NOEA2009Java-kursus – Java Platform Introduktion til Java Baggrund Hvad er Java? Faciliteter i Java.
Distribution af funktionalitet Webservice med WCF x.
Distribution af funktionalitet Webservice med WCF x.
COMPONENT ARCHITECTURE FOR THE ENTERPRISE Bjarne Schytte Country Manager BEA Systems The Enterprise Middleware Solution “Open Networks 99”
VPG/Otto Knudsen1 VPR - Repetition Trådning Distribueret Programmering Sprogteori Grafer.
Abstrakte klasser og interfaces i Java
FEN IntroJava AAU1 Opsamling: afvikling af Java-programmer Input fra keyboard og fil Fra en prompt Fra BlueJ Fra NetBeans.
Begreber og Redskaber 9. Plan for idag I dag: Datastrukturer Tabeller Lister, mængder, maps, grafer Hægtede lister.
Session Når man hoster en WCF Service på ASP.NET website, kan man bruge ASP.NET’s Session.
Begreber og Redskaber 5. Collections i Java 1.2 Framework: samling af datastrukturer og algoritmer som generelt værktøj. En ramme til at arbejde med søgning.
Datanet. Per P. Madsen Afd. for Proceskontrol
Begreber og Redskaber 5. Plan for idag Overblik over klasser,objekter,nedarvning –Repetition fra Dat A/Indledende programmering –Centrale begreber om.
Tekstslide i punktform Rubrik, helst 1 linje Brug ”Forøg/Formindsk indryk” for at få de forskellige niveauer frem Danish Standards  Signe Annette Boegh.
1 Tråde 2 Plan Trådbegrebet Synkronisering Koordinering Eksempel: et flertrådet spil.
Interfaces – brug. Overblik Tidligere: –Interfaces Comparable gør det muligt at bruge Collections metoderne –min, max, sort, … –Algoritmemønstre Find.
To måder at overføre objekt- referencer mellem processer (1) Via naming service - interface RMISolver (2) Som parametre til fjernprocedurekald - interface.
Fundamentale datastrukturer
1 Fundamentale datastrukturer. 2 Definitioner: abstrakt datatype, datastruktur Elementære datastrukturer og abstrakte datatyper : arrays, stakke, køer,
Procestræ under afvikling af cp init login shell cp cp src dest.
11 - Exceptions. 2 NOEA2009Java-kursus – Exceptions Hvad er en exception? En undtagelse. Typisk en fejl der opstår runtime Afbryder det normale programflow.
Uge 14: distribuerede objekter, fjernprocedurekald, RMI Tirsdag: Introduktion Mulige fordele ved distribuerede objekter Introduktion til RMI: - Interfacets.
Netværk og datakommunikation.
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
Hvad består en distribueret applikation af ? Processer der kører på hver deres maskine Tråde - 1 eller flere "letvægtsprocesser" per proces Objekter i.
Netwærk og datakommunikation. Per P. Madsen AAU1 Per P. Madsen Afd. for Proceskontrol Institut for elektroniske systemer Aalborg Universitet.
Per P Madsen AAU1 Del 4 : Sessions-, presentations- og applikationslaget - Applikationsprotokoller. - RPC og RMI. - Digital audio og Voice over IP. - RTP.
Distridueret system Et distridueret system er en samling af uafhængige computere som fremstår overfor brugeren som et enkelt samordnet system Dvs: Et antal.
Længste plateau En klassisk problemstilling (Gries, 1981) - og her i Java!!! Denne opgave drejer sig om at bestemme længden af det længste plateau i en.
 Kommunikation mellem computere  NAT – Network Adress Translation  IP Routing af pakker  Transport af beskeder ◦ TCP ◦ UDP.
Per Printz Madsen 1 Linux kernen Monolithic kernel Support for dynamiske moduler Få kerne tråde Preemptive.
Per P. Madsen AAU1 Grundlæggende Datanet Datanet. Per P. Madsen Afd. for Proceskontrol Institut for elektroniske systemer Aalborg Universitet.
Begreber og Redskaber 11. Plan for idag Lidt afrunding: Collections Framework i Java Noget om oversættere og sprog Evaluering Sidste gang øvelser før.
Datalink laget Datalink Datalink Fysisk lag Fysisk lag Fysisk net
Netwærk og datakommunikation. Per P. Madsen AAU1 Per P. Madsen Sektion for automation og kontrol Institut for elektroniske systemer Aalborg Universitet.
Paradigmer i Programmering 3. Højere ordens funktioner Idag: Højere ordens funktioner Algebraiske datatyper Næste gang: I/O, Filer, interaktive programmer.
Real-Time trafik på Ethernet MM4 Distribuerede systemer.
Begreber og Redskaber 4. Plan for idag Om metoder, parametre, returværdier Et par ord om objekt-orientering Håndkøring af programmer.
Begreber og Redskaber 3. Plan for idag Om metoder, parametre, returværdier Overblik over klasser,objekter,nedarvning Et par ord om objekt-orientering.
P-net, bluetooth, ZigBee, ARCnet og TTP
P-net, bluetooth, ZigBee, ARCnet og TTP. P-net P-NET Data Link Layer Create and recognize frame boundaries Node address fieldControl/StatusInfo lengthInfo.
Præsentationens transcript:

ARCNET Host 1Host 2Host n Token-bus net..... Hastighed : max 10 Mbit/s Antal hosts pr. segment: 255 dvs ID: 1-255

Opstart af token Hvis en maskine ikke er med dvs ingen INVITATION TO TRANSMIT i 420  S. Så råber den ''ALLE SKAL DØ'' RECONFIGURATION BURST gange Her efter: Når bus bliver IDLE vent 41  S + 73  S * (255-ID) Hvis stabig IDLE så: Send INVITATION TO TRANSMIT til mig selv samt find næste hoat men mindre ID Ellers: Vent til en sender INVITATION TO TRANSMIT til mig

Find NID NID er ID'en for den host med nærmeste lavere ID. NID = ID NID--; Send ITT to NID hvis ingen aktivitet i 37,4  S så hop: ellers stop ca 3 km frem samt tilbage= 15  S + 15  S plus opstartstid ca 6.4  S.

Pakkeformat Der sendes byte enheder: xxxx-xxxx bit Invitation To Transmit: ITT EOTDID End Of Transmission: 04Hex To gange Distination ID

Pakkeformat Free Buffer Enquiries ENQDID Enquiry: 85Hex To gange Distination ID Acknowledgement ACK 86Hex Negative Acknowledgement NAK 15Hex

Pakkeformat DataPakke SOHDID Start Of Header: 01Hex To gange Distination ID SID Source ID... DATACRCSCCRCCOUNT 256-N for short packet 512-N for long packet 0 for long packet byte X + X + X + X

Data transmision Sender: ID Modtage: DID ITT til ID send FBE send ACK send DataPacket send ACK ITT til NID

TDMA

TTP MEDL-tabel for note Time Buf add. D L I T

Pakkeformat StartOf Frame Header Data CRC Header: 1 Bit I/N-frame og 3bit Mode change CRC Normal Init Global time, current MEDL index, Membership vector

Tradmark (Name)Application areaTechnologyCapacitySupport Controller Area Network (CAN) automotive industry, cars, forklifters, tractors CSMA/CA 40m: 1 mbps 500m: 125kbps Intel embedded controllers (80517). Keil RT-51. DeviceNet from Allen Bradley ProfibusProces control Higher level token rotation. Lower level master slave. 2 mbps on rs-485 Siemens Simatic EN50170 P-net Proces control Virtual higher level token rotation. Lower level master slave kbps on rs-485 P-net from Proces Data EN50170 Attached Ressource Computer Network ARC-net Robot control, Marine automation Token bus.2-5 mbps on rs-485 Mitsubitsi ATOMOS EN50170 Time Triggered ProtocolCar automation, x-by wireTDMA2 mbps Tttech, Tech Univ. of Vienna. Herman Kopetz LONproces controlCSMA/CD mbps EcheLon LonWorks Motorola Highway Adressable Remote Transducer (HART) Transducer communication FSK on 4-20 mA Master Slave 3-4 req. / sec. InterBusProcescontrol Master Slave. Summation Frame Protocol 500 kpbs on rs-485 Bitbus radio broadcast and telecommunication systems building automation Master Slave300 kbps on rs-485 FireWire Connecting video and audio equiptment in PC-env. Combined Daisy Chain and TDMA mbps on tw. pair. (4.5 m.) IEEE 1394 Fiber Distributed Data Interface (FDDI) all purpose LAN space applications Token ring 100 mbps on fiber optics or tw. pair. (100km, max 2 km betw. stations.) IEEE Industrial Ethernet

Transmission Error Control Tilføje ekstra bit til pakker således at der bliver en given mindste afstand (Hamming afstand) mellem lovlige pakker. Fx. Even paritet som giver Hamming afstand på 2.

Transmission Error Control Hamming afstand: d min = 5. Max antal fejl der kan detekteres: d min - 1. Max antal fejl der kan rettes: ( d min - 1) / 2.

CRC - Cyclic Redundancy Check IEEE CRC-32: x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x1+1 Dvs ARCnet: CRC-16 x^16 + x15 + x ^ Dvs CAN bus: CRC-CCITT X^16+X^12+X^5+1 Dvs

CRC - Cyclic Redundancy Check List af de mest brugte CRC polynomier CRC-12: X^12+X^11+X^3+X^2+X+1 CRC-16: X^16+X^15+X^2+1 CRC-CCITT: X^16+X^12+X^5+1 CRC-32: X^32+X^26+X^23+X^22+X^16+X^12+ X^11+X^10+X^8+X^7+X^5+X^4+X^2+X+1 The CRC-12 bruges til 6-bits streams. Både CRC-16 og CCRC-CCITT er for 8 bits streams. CRC-32 giver ekstra sikkerhed da der generes en 32 bit Checksum. CRC-32 bruges i fx. (IEEE-802).

CRC - Cyclic Redundancy Check Polynomie: Data: : Remainder Checksum

CRC - Cyclic Redundancy Check Message M= Pattern P= FCS F=1110 (to be calculated)

QoS – Quality of Service Network layer: ● Reliability ● Delay ● Jitter ● Bandwidth

QoS – Quality of Service Løsning: ● Kapacitet nok. Fx. Telefonsystemet. ● Reciver buffer. Øger delay og mininere jitter. ● Begrænsning af senderes bithastighed. Minder delay, mindre jitter og mindre Bandwidth.

Bucket algoritmen ● En sender buffer. ● En cyklisk task der er aktiv hvis der er data i bufferen og sender disse data med en passende lav bidhastighed.

Token Bucket algoritmen ● En sender buffer der fyldes med token token/sek. ● Senderen sender sine data vha tokens dvs. Nbit pr token fra bufferen.

Netværkslaget Fysisk Data Link Network Transport Session Presentation Application Simpel routing Statisk routes med garanti egenskaber QoS

Transportlaget Fysisk Data Link Network Transport Session Presentation Application Muligøre data overførsel. Tilpasning af QoS faktorerne.

Tilpasning af QoS TCP: Pålidelig, stort jitter og delay. UDP: Upålidelig, mindre jitter og delay. RTP: Upålidelig, ingen jitter og mindre delay.

API Fysisk Data Link Network Transport Session Presentation Application Socket RPC, RMI og CORBA

Socket int sock; sock=socket(,, ); bind(sock,, ); listen(sock, ); newsock=accept(sock,, ) sock=socket(,, ); bind(sock,, ); connect(sock,, )

RPC

program TSTPROG { version TSTVERS { int TSTSTRING(string) = 1; } =1; } = 0x ; int * tststring_1(argp, clnt) char **argp; CLIENT *clnt; { static int clnt_res; memset((char *)&clnt_res, 0, sizeof (clnt_res)); if (clnt_call(clnt, TSTSTRING, (xdrproc_t) xdr_wrapstring, (caddr_t) argp, (xdrproc_t) xdr_int, (caddr_t) &clnt_res, TIMEOUT) != RPC_SUCCESS) { return (NULL); } return (&clnt_res); }

RPC program TSTPROG { version TSTVERS { int TSTSTRING(string) = 1; } =1; } = 0x ; #include #include "rpcprog.h" int * tststring_1(msg) char **msg; { static int result; fprintf(stderr,"strang: %s\n", *msg); result =4; return (&result); }

RPC program TSTPROG { version TSTVERS { int TSTSTRING(string) = 1; } =1; } = 0x ; #include #include "rpcprog.h" main(argc, argv) int argc; char *argv[]; { CLIENT *cl; int *resultat; char *server; char *message; server= argv[1]; message= argv[2]; cl= clnt_create(server,TSTPROG, TSTVERS,"tcp"); resultat= tststring_1(&message,cl); printf("resultat; %d\n",*resultat); }

1.Write and compile Java code for interfaces 2.Write and compile Java code for implementation classes 3.Generate Stub and Skeleton class files from the implementation classes 4.Write Java code for a remote service host program 5.Develop Java code for RMI client program 6.Install and run RMI system

Interface public interface Calculator extends java.rmi.Remote { public long add(long a, long b) throws java.rmi.RemoteException; public long sub(long a, long b) throws java.rmi.RemoteException; public long mul(long a, long b) throws java.rmi.RemoteException; public long div(long a, long b) throws java.rmi.RemoteException; }

Implementation public class CalculatorImpl extends java.rmi.server.UnicastRemoteObject implements Calculator { public CalculatorImpl() throws java.rmi.RemoteException { super(); } public long add(long a, long b) throws java.rmi.RemoteException { return a + b; } public long sub(long a, long b) throws java.rmi.RemoteException { return a - b; } public long mul(long a, long b) throws java.rmi.RemoteException { return a * b; } public long div(long a, long b) throws java.rmi.RemoteException { return a / b; }

Client import java.rmi.Naming; import java.rmi.RemoteException; import java.net.MalformedURLException; import java.rmi.NotBoundException; public class CalculatorClient { public static void main(String[] args) { try { Calculator c = (Calculator) Naming.lookup( "rmi://localhost /CalculatorService"); System.out.println( c.sub(4, 3) ); System.out.println( c.add(4, 5) ); } catch (MalformedURLException murle) { System.out.println(murle); } catch (RemoteException re) { System.out.println(re); } catch (NotBoundException nbe) { System.out.println(nbe); } catch (java.lang.ArithmeticException ae) { System.out.println(ae); }

Server import java.rmi.Naming; public class CalculatorServer { public CalculatorServer() { try { Calculator c = new CalculatorImpl(); Naming.rebind("rmi://localhost:1099/CalculatorService", c); } catch (Exception e) { System.out.println("Trouble: " + e); } public static void main(String args[]) { new CalculatorServer(); }

CORBA